В течение нескольких месяцев я работаю с Codex в собственных проектах. В процессе этой работы сформировался набор наблюдений, который я описываю под тегом ADSM, используя его как рамку анализа практики и способ её осмысления.
В качестве наглядного примера можно посмотреть корневой файл AGENTS.md из моего текущего пет-проекта "Svyzaist". Этот файл используется в реальной работе и отражает текущее состояние подхода. Ниже, очень кратко - мои собственные, субъективные, выводы из практического опыта.
Контекст как основа работы с Codex
Практика постепенно сместила фокус внимания с формулировки инструкций на организацию контекста. Именно контекст определяет, с какими материалами агент работает при решении задачи и как он их интерпретирует.
AGENTS.md как часть контекстной среды
Файлы AGENTS.md в этой практике выступают как элемент среды, в которой работает агент. Они участвуют в формировании исходного контекста и учитываются Codex при выполнении задач. Их влияние проявляется опосредованно и связано со структурой и связностью документов и исходного кода проекта, с которыми агент работает.
Два уровня контекста в работе агента
В процессе работы полезно различать два уровня:
Контекст проекта: включает все документы и файлы репозитория, доступные агенту.
Контекст задачи: формируется агентом при выполнении конкретного запроса и представляет собой часть контекста проекта. Состав этого контекста определяется самим агентом и заранее не известен.
Роль AGENTS.md в формировании контекста задачи
Файлы AGENTS.md задают скелет структуры контекста проекта, в рамках которой агент формирует рабочий контекст задачи. За счёт этого снижается количество произвольных интерпретаций и упрощается согласование документов и кода при решении задачи.
Иерархия AGENTS.md
В моих проектах файлы AGENTS.md выстроены в иерархию. В корне репозитория расположен один корневой файл, задающий общую модель проекта, роли и базовые правила. Ниже по структуре размещаются локальные AGENTS.md, связанные с конкретными участками контекста или кода и действующие в пределах своего уровня.
Корневой AGENTS.md как точка ориентации
Корневой файл используется для первичной ориентации агента в проекте. Он задаёт общие направления и рамки работы, позволяя агенту соотнести задачу с устройством проекта и его базовыми принципами. Детализация переносится на более локальные уровни структуры.
Компактные документы и связность смыслов
Практика показала, что структура документов напрямую влияет на согласованность рабочего контекста задачи. Более устойчивый результат достигается при использовании нескольких компактных и связанных документов, каждый из которых описывает отдельный уровень или область проекта и сохраняет внутреннюю целостность.
Практическая польза AGENTS.md
В рамках ADSM файлы AGENTS.md позволяют зафиксировать границы и правила работы с проектом в явном виде. Это снижает разброс интерпретаций при формировании контекста задачи и делает поведение Codex более предсказуемым в повторяющихся сценариях.
Этот текст представляет собой сжатое изложение моего опыта, подготовленное специально для Хабра. Более подробная версия опубликована на моём сайте.
Если по теме есть вопросы - задавайте их прямо тут, в комментариях, я отвечу.
Спасибо за ваше внимание.