Статьи

Что такое AI coding harness и зачем он нужен

Почему агенту для программирования нужен не ещё один промпт, а сохраняемый процесс: источники истины, проверяемые переходы, независимое ревью и память проекта.

Короткое определение

В контексте AI Development Harness AI coding harness — это слой управления вокруг агента для программирования, который превращает отдельные запросы к модели в воспроизводимый процесс разработки. Он задаёт источники истины, границы задач, допустимые переходы, обязательные проверки, правила ревью и способ восстановления работы после смены или обрыва сессии.

Сам агент для программирования по-прежнему пишет и анализирует код. Harness не пытается заменить Codex или Claude Code другой моделью. Его задача — сделать так, чтобы модель работала внутри понятного проекта, а не каждый раз заново реконструировала его по истории чата.

Почему одного хорошего промпта недостаточно

Промпт хорошо передаёт намерение на текущем шаге, но плохо заменяет долговременное состояние проекта. В длинной разработке появляются требования, принятые архитектурные решения, открытые вопросы, зависимости, критерии приёмки, готовые планы и результаты проверок. Если всё это существует только внутри одной conversation history, следующая сессия должна заново угадывать контекст.

В Harness эти сущности становятся артефактами репозитория: REQ описывает обязательный результат, ADR фиксирует устойчивое решение, PRN — долгоживущий инженерный инвариант, STEP — ограниченную единицу работы. Код, доказательства и отчёт ревью дополняют эту базу фактическим состоянием.

Как репозиторий становится долговременной памятью →

Из чего состоит coding harness

Протокол

AGENTS.md, канонические команды и machine-readable transitions определяют, как начинается, продолжается и завершается работа.

База знаний

REQ, ADR, PRN, OQ и STEP хранят, что строится, почему выбрано решение и какие ограничения действуют.

Детерминированный слой

Python-инструменты проверяют структуру, переходы, актуальность планов, verification, completion, Git preconditions и состояние выполнения там, где ответ можно вычислить однозначно.

Смысловые роли

Планировщик, реализатор и проверяющий получают Context Contract конкретной задачи и используют модель только там, где требуется интерпретация.

Чем это отличается от фреймворка агентов

Фреймворк агентов обычно является частью самого AI-приложения: он соединяет агентов, инструменты, сообщения, память и внешние сервисы во время работы приложения. AI Development Harness расположен на другом уровне — вокруг процесса разработки репозитория.

ВопросAI coding harnessФреймворк агентов
Кто пользовательРазработчик и агент для программированияРабочее AI-приложение
Что организуетТребования → план → код → ревью → Gitагенты → инструменты → сообщения → действия
Где хранит проектную истинуВ Git-репозиторииВ среде исполнения или хранилище приложения
Заменяет Codex/Claude CodeНетНе относится к задаче

Поэтому проект вполне может одновременно использовать Harness для собственной разработки и какой-либо фреймворк агентов внутри продукта.

Почему это больше, чем AGENTS.md

AGENTS.md важен: он даёт модели правила проекта. Но инструкции сами по себе не хранят состояние конкретного STEP, не доказывают прохождение verification, не определяют актуальность плана после изменения REQ и не отвечают на вопрос, можно ли безопасно повторить Git side effect после сбоя.

Harness добавляет к инструкциям сохраняемое состояние и исполнимые контракты. Например, STEP RUN не означает «модель, сделай всё»: dispatcher вычисляет допустимую следующую фазу, verification запускается отдельно, ревью создаёт неизменяемый отчёт, а completion gate решает, выполнены ли обязательства задачи.

Когда такой слой оправдан

Harness особенно полезен, когда проект живёт дольше одной сессии, требования и архитектура меняются, задачи затрагивают несколько подсистем, а результат должен быть проверяемым. Он также полезен, когда один репозиторий открывают в разных поддерживаемых средах исполнения и нельзя полагаться на скрытую память конкретного клиента.

Для одноразового скрипта или очевидной мелкой правки полный STEP действительно может быть избыточен. Поэтому Harness отдельно оставляет короткий путь PROJECT QUICK FIX и не превращает каждую опечатку в церемонию.

Как попробовать

Практический путь короткий: создать репозиторий из шаблона, описать проект в PROJECT_BRIEF.local.md, открыть его в Codex или Claude Code и выполнить PROJECT INIT. После инициализации новая задача начинается с STEP ADD, а полный цикл можно пройти через STEP RUN.

Перейти к началу работы → · Посмотреть полный процесс →