Запуск DSH локально

Единственное требование - Node версии 18 или новее. Самый быстрый путь не требует глобальной установки.

Запуск веб UI

Одна команда загружает пакет, запускает ядро и открывает интерфейс на вашей машине.

terminal
npx @deepseek-ai/dsh web
UI доступен по адресу 127.0.0.1, поэтому по умолчанию ничего не открывается для вашей сети.

Или сборка из исходного кода

Клонирование репозитория предоставляет рабочую область плагинов, директорию с документацией и пресеты для ознакомления.

terminal
git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness
pnpm install
pnpm build

Добавление плагина

Плагин представляет собой npm пакет. Добавление плагина записывает его в вашу конфигурацию и дает запрос ядру на разрешение зависимостей.

terminal
npx @deepseek-ai/dsh plugin add <package-name>
npx @deepseek-ai/dsh plugin list

Написание вашего первого плагина

Наименьший полезный плагин это функция, которая указывает свои потребности и регистрирует один элемент. Этот пример добавляет инструмент в таблицу.

greet-tool.ts
import type { Context } from 'cordis'

export const name = 'greet-tool'
export const inject = ['tools']

export function apply(ctx: Context) {
  return ctx.tools.register('greet', async ({ name }) => {
    return `Hello, ${name}.`
  })
}
Возвращаемый disposer позволяет корректно удалить инструмент при выгрузке плагина.

Выбор пресета

Пресеты меняют область доступности агента. Начните с Standard и переходите к более простым вариантам, если вам нужны более точные измерения.

  • Standard

    Полноценный агент для написания кода: редактирование файлов, доступ к shell, поиск, весь набор инструментов.

  • PTC

    Инструменты, написанные на TypeScript, а не выбираемые по одному, что позволяет выразить целую программу за один шаг.

  • Minimal

    Bash и редактор. Больше ничего. Честная база для тестирования моделей.

  • Creative

    Создайте свой собственный пресет и наблюдайте за средой выполнения во время работы, сервис за сервисом.

Если запуск не удался

Ошибки версии Node

Проверьте node -v. Любая версия ниже 18 приведет к ошибкам синтаксиса, используемого в среде выполнения.

Порт 3080 уже используется

Укажите другой порт в командной строке или остановите процесс, который его занимает.

Плагин не загружается

Почти всегда это связано с неудовлетворенным inject. Плагин остается в состоянии pending до тех пор, пока не появится каждый сервис, который он запрашивает, поэтому проверьте, загрузился ли сначала зависимый плагин.

Полное руководство, заметки по архитектуре и AGENTS.md находятся в директории docs репозитория. Документация

Cordis - это фреймворк плагинов на TypeScript от сообщества Koishi. DSH не реализует собственную систему плагинов. Он использует эту систему, поэтому плагин DSH является плагином Cordis.

Изучить ядро