Open-source проект DeepSeek Harness стартовал с рекордным вниманием: десятки тысяч звёзд за сутки и упор на гибкую архитектуру. Разбираемся, почему разработчикам интересен «агент-конструктор», который можно запускать локально и собирать под свои процессы.
В экосистеме инструментов для разработки на базе ИИ появился новый заметный игрок: DeepSeek открыла исходники DeepSeek Harness — среды для создания и запуска кодинг-агентов. Проект опубликован как developer preview под лицензией MIT и уже в первые сутки собрал около 37,5 тыс. звёзд и 2,9 тыс. форков.
Что это за инструмент и чем он отличается от «ещё одного агента»
Harness — это не просто чат с моделью и набором команд. Авторы сделали акцент на том, чтобы агентная система была разборной: ключевые части вынесены в плагины, которые можно подключать, заменять и комбинировать без форка ядра.
В базовом сценарии инструмент запускается одной командой: он поднимает локальный веб-интерфейс, где агент может работать с проектом — читать и править файлы, выполнять команды, искать информацию, строить план действий и при необходимости делегировать задачи «субагентам».
Архитектура «всё — плагин»: почему это важно
В основе Harness лежит ядро Cordis — компактный слой, отвечающий за подключение/отключение плагинов, их зависимости, сервисы и события. При этом в Cordis нет «привилегированного» агента: даже базовые элементы агентного цикла подключаются извне.
Практический эффект такой конструкции — возможность менять поведение системы на уровне конфигурации. Например:
- заменить работу с локальной файловой системой на удалённую песочницу;
- подключить другого провайдера моделей;
- переопределить инструменты (tooling) или добавить свои;
- перехватывать вызовы инструментов и вводить собственные ограничения/политику исполнения.
Для команд разработки это выглядит привлекательно: вместо «чёрного ящика» появляется система, которую можно подстроить под требования проекта (безопасность, доступы, наблюдаемость, стандарты выполнения задач).
Профили и четыре режима работы
Готовая сборка конфигурации называется профилем. В поставке есть варианты для веб-интерфейса и для запуска без сервера. Поверх профиля можно накладывать патчи: отключать штатные компоненты, менять параметры и подключать дополнительные плагины отдельными пакетами.
Сейчас заявлены четыре режима:
- Standard — «полноценный» кодинг-агент: редактирование файлов, shell, поиск по проекту и интернету, навыки (skills), планы/цели, субагенты и workflow;
- PTC — похожий набор возможностей, но инструменты передаются модели через Code Mode SDK: модель пишет TypeScript-программу, которая объединяет несколько действий в один вызов;
- Minimal — минимальная среда: постоянная bash-сессия и редактор замены строк; режим позиционируется в том числе как удобный способ сравнивать модели в «строгом» окружении;
- Create — режим для разработки собственных пресетов: агент исследует текущую конфигурацию Cordis, экспериментирует с плагинами и помогает собрать новый режим.
PTC: попытка уменьшить «болтовню» и ускорить результат
PTC расшифровывается как Programmatic Tool Calling. Идея в том, что вместо длинной цепочки отдельных вызовов инструментов модель может написать небольшой сценарий: параллельно запросить несколько источников, обработать результаты в коде и выдать более собранный итог. Это снижает число промежуточных шагов, хотя реальная эффективность, как подчёркивается, всё равно зависит от выбранной модели и качества её «кодового» мышления.
Не привязан к API DeepSeek
Несмотря на название, Harness не «заперт» на одном провайдере. В конфигурации можно добавить других поставщиков, а также подключить свой сервер с OpenAI-совместимым API. Для разработчиков это означает более спокойную стратегию: можно начать с одного варианта, а затем менять модель или инфраструктуру без переписывания всей обвязки.
Кому это может быть полезно на практике
Проект интересен тем, кто уже использует ИИ в разработке, но упирается в ограничения монолитных решений. Harness выглядит как попытка сделать агентную среду ближе к инженерной реальности: со сменяемыми компонентами, профилями под разные сценарии и возможностью аккуратно «встроить» агента в существующие процессы команды.
