В переводе с английского это "упряжка". В ИИ среде харнесс - это "упряжка" ИИ-агентов, которыми управляет возничий - человек оператор ИИ или агент-оркестратор (которым управляет человек-оператор).
При работе над несложными задачами "в одного" обычно хватает одного агента, который последовательно, шаг за шагом выполняет работу. Кто-то запускает суб-агентов. Тогда основной агент поручает часть работы им и получает результаты. Обычно это что-то несложное, типа поиска по кодовой базе. На моей практике использование именно субагентов нередко работало даже медленнее, чем одним основным агентом. Основной агент мог сообщить что-то типа:
- Субагент всё ещё ищет, но я уже сам посмотрел и мне всё понятно. Но всё равно подожду его результатов....
<...>
- Да, его результаты подтвердили то, что я сам нашёл.
Потом в справке Антропик по Claude Code (хотя я им не пользуюсь, а пользуюсь Codex), я увидел, что работа с субагентами более затратна по токенам. В справке по Codex вроде бы такого не было, но по ощущениям затрат токенов было больше. Насколько я понимаю принципы работы - со своими запросами мы сначала попадаем в кэш результатов модели. И если там уже есть готовый ответ или почти готовый, то происходит существенная экономия и собственно размышлений не производится. Агенту отдаётся уже готовый результат. Если не попали - значит модель размышляет и тратит токены. У субагентов какие-то свои, особенные правила кэширования и на длительных задачах они реже попадают в кэш ответов LLM. Соответственно по ним расход токенов больше.
Для экономии токенов лучше запускать отдельные, но полноценные сессии агентов-воркеров. И тут на помощь приходят харнессы - программное обеспечение для организации работы ИИ агентов и человека. Агентам важно фиксировать свою работу где-нибудь (файлы (артефакты), базы, всякие логи) так, чтобы другой агент мог прочесть переданные ему результаты работы (handoff) и дальше что-то с ними делать. Вследствие этого возникают полноценные сложные системы по управлению и оркестрации, фиксации этапов работы, критериев приёмки, инструкций для агентов-проверяющих и т.д.
Их сейчас очень много, все они примерно об одном и том же, только с акцентами на разных особенностях процессов работы. Вот совсем неполный список:
- Process Forge. Формализованные ИИ-процессы, знания, исполнение - от вашего покорного слуги
- AI Factory. Среда разработки, навыки и процессы
- GSD Core. Процессы разработки, контекст, субагенты
- Omnigraph. Типизированный граф знаний и память агентов
- Hermes Agent. Автономный агент с памятью и навыками
- OpenClaw. Персональный агент, шлюз, интеграции
- Goose. Агентский харнес, инструменты, субагенты
- OpenHands. Исполнение программных задач агентами
- OpenCode. Агентская среда программирования
- Letta. Долговременная память и состояние агентов
- LangGraph. Графы исполнения и управление состоянием агентов
- AutoGen. Фреймворк многоагентных приложений
- LibreChat. Многопользовательская ИИ-платформа, агенты
- Open WebUI. Веб-интерфейс моделей, знания, расширения
- Temporal. Надёжное исполнение длительных процессов
- Kestra. Декларативные процессы, автоматизация, UI
- Windmill. Скрипты, процессы, расписания, автоматизация
- n8n. Визуальный конструктор автоматизации
- Hatchet. Долговечные задачи, очереди, исполнение
- Paperclip. Управление организациями ИИ-агентов
- Biro. ИИ-компании, роли, задачи, бюджеты
- Evermore. Автономные ИИ-отделы и команды
Самое интересное, что далеко не везде и не всегда эта упряжка нужна. Если нет работы на потоке, сложного релизного цикла, сложных проверок, автоматических тестов, поиска по истории принятия решений - харнесс вам не нужен. Достаточно описать нужные действия в одном или нескольких SKILL.md, а проектные особенности хранить в проектном файле AGENTS.md.