DeepSeek Harness: агент, который целиком собран из плагинов
Открытая платформа, где модель, песочница и даже хранение сеансов — заменяемые модули. Разбираем, как собрать агента под задачу и не потерять контроль.

DeepSeek Harness (dsh) — открытый агентский харнесс от DeepSeek AI. Выглядит как обычная команда для запуска моделей, но внутри устроен иначе: это конструктор, где плагинами являются вообще всё — хранение сеансов, песочница, сжатие контекста и даже сама модель.
Всё есть плагин
Харнесс работает на базе Cordis, а его устройство описано в статье о пространственно-временной композируемости. Суть простая: приложение собирается из слоёв-патчей, а не пишется обычным кодом. Профиль — это список бандлов плюс ваш cordis.patch.yml, и каждый следующий слой может отменить или дополнить предыдущий. Поэтому команда dsh —dump-config выводит собранное дерево целиком: сразу видно, какой бандл что привнёс.
Профили вместо режимов
Скачать PDF-инструкцию «Где и как публиковать широкоохватные статьи бесплатно»Одна и та же команда умеет разное — поведение задаёт профиль, а не отдельный флаг:
- dsh web — локальный веб-интерфейс на http://127.0.0.1:3080;
- dsh —profile headless «задача» — создаётся один новый сеанс, ответ приходит в вывод, затем процесс завершается: подходит для CI;
- dsh —profile sdk — JSON-RPC для внешних клиентов;
- dsh —profile acp — тот же агент внутри редактора.
Профиль размещается в отдельной папке, а патчи обновляются на лету: поменяли плагин — изменения тут же подхватились, перезапуск не нужен. Свой набор ставится через dsh plugin —profile web add.
Агенты внутри агента
Харнесс умеет запускать других агентов, и это не один универсальный механизм, а четыре разных:

- субагенты крутятся в фоне, у каждого собственный контекст: родитель продолжает работу и забирает результат, когда тот готов;
- наследник контекста — субагент, который получает уже состоявшийся разговор, чтобы решать задачи вида «продолжи и проверь»;
- workflow — сценарий на JavaScript, который сам распределяет десятки субагентов по фазам, конвейером или с барьером: оркестрация описывается кодом, а не диалогом;
- ralph — цикл свежих агентов по одному неизменному заданию, где рабочая папка выступает долговременной памятью.
Инструменты под задачу
Базовый набор тоже собран из плагинов, и каждый при необходимости отключается: чтение и правка файлов, поиск по репозиторию, фоновые задания, веб-поиск и загрузка страниц, подключение внешних серверов по MCP, «скиллы» — папки с инструкциями, которые агент подгружает, когда они нужны.
Песочница и сеансы
Файловые операции ограничены песочницей: workspace-write пускает только в рабочую папку. Отказ не приводит к падению — агент честно сообщает «доступ запрещён», и эту пометку можно показать человеку, чтобы запросить больше прав. При этом границу обозначают заранее: в одних местах агент спрашивает перед каждым опасным действием, в других — действует сам.
История сеанса сохраняется в файл и переживает перезапуск: сеанс можно возобновить, сжать, посмотреть расход токенов. Долгосрочная цель хранится в состоянии сеанса, а не в памяти модели.
Что это меняет для команд
Для небольшой команды DSH снимает выбор между «свой агент» и «готовый сервис». Готовые сервисы дают фиксированный набор функций, а харнесс — это конструктор. Можно начать с одного профиля и по мере появления задач наращивать плагины: сегодня публикация статей, завтра разбор конкурентов, послезавтра автоматическая выгрузка метрик.
Отдельно стоит сказать о прозрачности. Каждый вызов инструмента, каждое изменение файла и каждый переход состояния попадают в журнал. Это рабочий инструмент, а не просто «логи для отладки»: когда агент ошибается, видно, на каком шаге и почему. Прозрачность делает возможной и честную цену: если шаг не понадобился, он не появится в счёте — всё видно в журнале.
Наконец, DSH не требует переезжать целиком. Профиль собирается под одну задачу и живёт рядом с привычными инструментами: агент по ключу обращается в ваш сервис, забирает результат и возвращает его туда, где вы работаете.
Как это выглядит на практике
Мы собрали цепочку из четырёх плагинов:
- FrameFactory формирует бриф: темы, заголовки, план статьи и чек-лист.
- Prompt-Polish переписывает черновой запрос: убирает повторы, делает формулировки короче.
- Improve-Prompt показывает diff до отправки — важные термины и ссылки остаются нетронутыми.
- Detector-Remover добавляет разговорные обороты и лёгкую стилистическую неровность, чтобы текст реже срабатывал на AI-детекторах.
С чего начать
Если хотите попробовать DSH на одной задаче, двигайтесь так. Сначала поставьте сам харнесс и запустите dsh web — этого хватит, чтобы увидеть базовый набор плагинов. Затем добавьте один-два плагина под свою задачу: для работы с текстом пригодятся генерация брифа и полировка запроса. И только после этого есть смысл смотреть в сторону субагентов и workflow: они раскрываются там, где задач много и они повторяются.
Не пытайтесь заранее собрать «идеальный профиль». Профиль — не конфигурация на годы, а рабочий набор: сегодня он один, завтра вы добавили плагин, послезавтра убрали лишнее. Патчи перезагружаются на лету, поэтому цена ошибки низкая: неудачный слой откатывается, а не заставляет переписывать всё заново.
И ещё: DSH не прячет модель. Если нужен конкретный провайдер или конкретная модель, это тоже плагин. Можно сравнить два варианта на одной задаче, не переписывая агента.
Зачем это нужно
DSH — не «CLI для LLM», а среда, где агент собирается под задачу: свои инструменты, свои политики, свои профили. Главная ценность не в наборе готовых функций, а в том, что любую из них можно заменить своей: харнесс не диктует, как устроен агент, а даёт его собрать. Проект открыт под MIT и находится в developer preview — ломающие изменения прямо обещаны в README.
Код и документация: github.com/deepseek-ai/DeepSeek-Harness.







Комментарии