Code as Agent Harness: обзор на 100+ страниц про код как основу агентных систем
18 мая 2026 года на arXiv вышел масштабный обзор «Code as Agent Harness» — больше 100 страниц систематизации методов и применений кода как обвязки для AI-агентов. Работу написала команда из 40+ авторов под руководством Jingrui He.
Главный тезис: код перестал быть только выводом
Традиционно языковые модели воспринимались как генераторы кода — вы просите написать функцию, модель пишет. Авторы обзора фиксируют сдвиг: в агентных системах код всё чаще служит не целью, а операционной основой.
Код становится субстратом для: - рассуждений агента - моделирования среды - выполнения действий - верификации результатов на основе исполнения
Это не просто терминологический сдвиг. Когда агент использует код как обвязку, он получает принципиально другие свойства по сравнению с агентом который работает через текст или вызовы API.
Три слоя обвязки
Авторы организуют анализ вокруг трёх связанных уровней.
Интерфейс обвязки
Первый слой — как код соединяет агента с reasoning, действиями и моделированием среды.
Код как интерфейс рассуждений: вместо того чтобы агент рассуждал в свободном тексте, он пишет и исполняет код — это делает рассуждение верифицируемым и детерминированным. Chain-of-thought превращается в исполняемую программу.
Код как интерфейс действий: агент описывает действие как функцию, а не как текстовую инструкцию. Это даёт точность, повторяемость и возможность unit-тестирования.
Код как модель среды: агент строит явные представления о состоянии среды в виде структур данных, а не хранит их имплицитно в контексте.
Механизмы обвязки
Второй слой — как сделать обвязку надёжной и адаптивной для долгосрочного выполнения.
Планирование. Код позволяет агенту строить явные планы как программы — с ветвлением, циклами и иерархической декомпозицией задач. Планы становятся инспектируемыми и редактируемыми.
Память. Код как обвязка даёт агенту структурированное состояние. Вместо опоры на контекстное окно агент поддерживает явные структуры данных, базы знаний и персистентные артефакты между вызовами.
Инструменты. Тулколы через код дают верифицируемое выполнение — можно точно проследить что агент делал, с какими параметрами и что получил в ответ.
Обратная связь и оптимизация. Исполнение кода даёт точную обратную связь: синтаксические ошибки, ошибки выполнения, провалы тестов. Это позволяет строить надёжные петли коррекции без галлюцинаций о результате.
Масштабирование до мультиагентных систем
Третий слой — как код поддерживает координацию нескольких агентов.
Когда несколько агентов работают над общей задачей, код как разделяемый артефакт решает проблему согласованности состояния. Агенты могут ревьюить код друг друга, верифицировать результаты через тесты, и координировать работу через явные контракты интерфейсов.
Авторы рассматривают паттерны: агент-оркестратор + субагенты-исполнители, агенты-ревьюеры, агенты-верификаторы. Во всех случаях код служит общим языком координации.
Где это применяется
Обзор систематизирует практические применения в семи областях:
Coding assistants — наиболее очевидное применение. Агент пишет код, исполняет его, получает обратную связь и итерирует.
GUI/OS автоматизация — агент управляет интерфейсами через код, что даёт воспроизводимость и возможность аудита действий.
Embodied agents — физические агенты используют код для моделирования физической среды и планирования действий.
Scientific discovery — агенты в науке используют код для постановки экспериментов, анализа данных и верификации гипотез.
DevOps и enterprise workflows — автоматизация через код с явным состоянием и аудит-треилом.
Четыре свойства будущих систем
Центральный нормативный аргумент обзора: будущие агентные системы должны обладать четырьмя свойствами.
Исполняемость (Executability). Действия и рассуждения агента должны быть верифицируемы через исполнение. Текстовый вывод нельзя запустить — код можно.
Верифицируемость (Verifiability). Результаты должны поддаваться автоматической проверке. Тесты, assertions, формальная верификация — всё это становится частью агентного пайплайна.
Состояние (Statefulness). Агент должен поддерживать явное согласованное состояние между вызовами и между несколькими агентами. Это одна из ключевых нерешённых проблем которую авторы выделяют как открытый вызов.
Управляемость (Controllability). Люди должны иметь возможность инспектировать и вмешиваться в работу агента. Код как обвязка делает это возможным — действия агента оставляют явный след.
Открытые проблемы которые выделяют авторы
Авторы честно фиксируют что не решено:
- Оценка агентов за пределами финального результата задачи — как измерить качество процесса
- Верификация при неполной обратной связи — когда у агента нет полной информации о результате
- Улучшение обвязки без регрессий — как апгрейдить систему не сломав то что работало
- Согласованное разделяемое состояние между несколькими агентами — техническая нерешённая проблема
- Надзор человека для safety-critical действий — как встроить человека в петлю не разрушив автономность
- Расширение на мультимодальные среды — когда среда включает не только код и текст
Авторизуйтесь, чтобы оставить комментарий.
Нет комментариев.
Тут может быть ваша реклама
Пишите info@aisferaic.ru