Harness — это слой, который интерпретирует действия агента и предоставляет ему инструменты и окружение. В описанной архитектуре Anthill тысячи недорогих простаивающих агентов могут существовать как состояния внутри одного Go-процесса, а не в отдельных контейнерах или виртуальных машинах.
Anthill использует собственный harness. Каждый агент представлен состоянием внутри общего Go-процесса, поэтому в одном процессе могут находиться тысячи агентов.
Инструменты read, write, edit, ls, grep и glob реализованы как Go-функции, а не как вызовы утилит операционной системы. Для агента доступна виртуальная файловая система по пути /workspace:
- метаданные хранятся в PostgreSQL;
- файлы хранятся в MinIO;
- контейнер используется только для выполнения bash-команд.
Ответы инструментов подставляются обратно в harness, поэтому агенту создаётся впечатление прямой работы с диском или Bash.
Нет. В этой архитектуре агент не имеет прямого доступа к Bash в общем контейнере: действия, заданные через harness, интерпретируются и обрабатываются оболочкой Anthill.
Без специальной доработки на это рассчитывать не следует. Агент не сможет подключиться к другой машине через терминал и, например, развернуть там VPN.
Важно: система описывается как рассчитанная примерно на 99% офисных задач, но не на ремонт VPN на роутере, доработку или обновление прошивки принтера.
По объяснению представителей сервиса, для агента не запускают полноценную виртуальную машину или контейнер. Вместо этого программно симулируются окружение, команды и файлы, а реальные операции выполняются контролируемым сервисом. Состояние агента может храниться как сессия с историей чата, а ресурсы расходуются главным образом на обработку команд.
В обсуждении этот подход характеризовали скорее как легковесную песочницу или виртуальную файловую систему, а не полноценную виртуальную машину. При этом техническая реализация и безопасность подхода вызывали сомнения.
Оригинальный англоязычный материал Microsoft: https://learn.microsoft.com/agent-framework/agents/harness
Материал значительно подробнее краткого описания и, в частности, ориентирован на разработчиков C#.
Статья собрана по сообщениям за октябрь 2026 года.