Harness Engineering: инженерия надёжности AI-агентов
Проектируем инструкции, состояние и верификацию вокруг Claude Code, Codex и Cursor — от диагностики до автономных графов
À qui s'adresse ce cours
Разработчики и техлиды, которые уже используют AI-кодинг-агента (Claude Code, OpenAI Codex, Cursor, Gemini CLI, Aider) и получают нестабильный результат. Те, кто хочет, чтобы агент работал часами и сессиями, а не 10 минут под присмотром, и кто строит внутренний инструмент или платформу вокруг агентов.
Prérequis
Git, командная строка, опыт работы хотя бы с одним AI-кодинг-агентом. Знание машинного обучения не требуется — курс не о том, как устроена модель, а о том, как спроектировать надёжную среду вокруг неё.
Programme du cours
15 leçons
Почему точность 95% на шаг убивает агента на десятом шаге
Строим формальный фундамент harness engineering: агент как система с обратной связью (восприятие → решение → действие → оценка), математика накопления ошибок в многошаговых прогонах, закон Эшби (требуемое разнообразие) и закон Гудхарта (метрика, ставшая целью, перестаёт быть метрикой), контекст как канал с шумом и контракты/инварианты/постусловия как единственный объективный критерий готовности.
контур управления агентом
накопление ошибок в цепочке шагов
закон Эшби
закон Гудхарта
контекст как канал с шумом
контракты и постусловия
26 min
Après inscription
S'inscrire
Что на самом деле измеряет надёжность агента, а не «вайб»
Продолжаем теоретический фундамент: MTBF/MTTR и радиус поражения как метрики надёжности harness, очереди/WIP и закон Литтла как модель того, почему параллельные задачи агента тормозят друг друга, марковское состояние сессии (будущее зависит только от текущего состояния, не от истории), калибровка уверенности (когда агент врёт «уверенно»), энтропия и законы Лемана применительно к деградации harness со временем, и сведение всей теории в одну таблицу для быстрой диагностики.
MTBF/MTTR
радиус поражения
закон Литтла
WIP
марковское состояние сессии
калибровка уверенности
энтропия harness
законы Лемана
24 min
Abonnement
S'abonner
Самая мощная модель на рынке — и всё равно косяки в проде
Разбираем, почему даже флагманские модели регулярно проваливают простые с виду задачи в реальных репозиториях. Вводим пять слоёв, где на самом деле ломается агент (задача, инструкции, состояние, инструменты, верификация), и диагностическую петлю, которая находит нужный слой за один проход.
пять слоёв отказа
диагностическая петля
способность модели против надёжности исполнения
22 min
Abonnement
S'abonner
Из каких пяти частей собран агент, который реально работает
Пять подсистем harness — инструкции, инструменты, среда, состояние, петли обратной связи — и как они взаимодействуют. Разбираем типичную кривую внедрения (что чинить первым), способ измерять ценность каждого компонента через абляцию при фиксированной модели, и итоговую схему потоков между подсистемами.
пять подсистем harness
абляционный замер
кривая внедрения
24 min
Abonnement
S'abonner
Агент выдумывает структуру проекта, потому что вы не оставили карту
Репозиторий — единственный источник истины для агента, у которого нет памяти между сессиями. Разбираем, что мерить в качестве карты репозитория, четыре принципа хорошей карты, рабочую структуру файлов и ACID-подобные гарантии для состояния агента.
репозиторий как единственный источник истины
карта репозитория
ACID для состояния агента
24 min
Abonnement
S'abonner
Правило написано прямо в файле. Агент его не читает. Почему
Почему один гигантский файл инструкций хуже, чем его отсутствие. Четыре независимые причины деградации инструкций, метрика SNR (сигнал/шум) для инструкций, трёхуровневая архитектура роутер → документы → исполняемые проверки, паспорт правила и практические правила поддержания инструкций в рабочем состоянии.
архитектура роутера
SNR инструкций
трёхуровневая архитектура
паспорт правила
26 min
Abonnement
S'abonner
У агента амнезия каждую сессию — вот план лечения
Агент как гениальный инженер с полной амнезией каждое утро: почему новая сессия переспрашивает то, что уже решили вчера, и противоречит собственным вчерашним решениям. Разбираем компакцию против сброса контекста, четыре артефакта непрерывности (PROGRESS.md, session-handoff, git-чекпоинты, лог решений) и метрику стоимости восстановления. Отдельно — инициализация как своя фаза: bootstrap-контракт из четырёх условий, чек-лист приёмки, тёплый старт против холодного и минимальный scripts/init.sh.
непрерывность между сессиями
session-handoff
bootstrap-контракт
тёплый старт
28 min
Abonnement
S'abonner
Три фичи одновременно, ноль доделанных: история одного агента
Почему у агента нет тормозов, и что происходит, когда он хватается за три задачи сразу — и как жёсткое ограничение WIP=1 и границы задачи это лечат. Дальше — список фич (feature_list.json) как реальный примитив harness: тройственная структура записи behavior/verification/state, конечный автомат из четырёх состояний, scripts/verify.sh как единственный, кто имеет право поставить статус passing, и разница между строгой и слабой верификацией.
WIP=1
гранулярность задачи
feature_list.json
конечный автомат фичи
сторож гейта
28 min
Abonnement
S'abonner
Агент написал «Готово ✅». Фича не работает. Разбираем, почему
Verification gap — разрыв между «агент сказал готово» и «фича реально работает». Трёхслойная валидация завершения, Definition of Done в AGENTS.md, ограничение приоритета (никакого рефакторинга до верификации), красные пометки для агента — сообщения об ошибках, которые чинятся сами, архитектура из трёх ролей (исполнитель / проверяющий / арбитр).
verification gap
Definition of Done
трёхслойная валидация
разделение ролей
24 min
Abonnement
S'abonner
Все тесты зелёные — фича сломана. Где прячется баг
Слепые зоны юнит-тестирования: агент проходит все модульные тесты, а фича не работает целиком. Почему E2E-тесты меняют поведение агента ещё до того, как ловят баг. Как архитектурное правило («сервис не обращается к БД напрямую») превратить в исполняемую проверку, а не в абзац текста. Иерархия верификации от линта до E2E.
слепые зоны изоляции
E2E-тесты
исполняемые архитектурные правила
иерархия верификации
26 min
Abonnement
S'abonner
Агент поработал, а объяснить, что он сделал, не может никто
Всё вроде работает, но никто — ни человек, ни следующая сессия агента — не может объяснить, что именно было сделано и почему. Разбираем два слоя наблюдаемости, sprint contract (в скоупе / вне скоупа / открытые вопросы до начала работы) и рубрику оценщика вместо общего мнения. Дальше — чистая передача смены и борьба с энтропией: пять измерений чистого состояния, чек-лист выхода из сессии, двухрежимная очистка и идемпотентность операций очистки.
наблюдаемость harness
sprint contract
рубрика оценщика
чистая передача
энтропия harness
28 min
Abonnement
S'abonner
Как отпустить агента работать часами без вашего присмотра
Сдвиг от разового запроса к автономному циклу. Простейший возможный цикл, четыре типа циклов, которые нельзя путать, шесть примитивов цикла, разделение генератора и оценщика как единственная неотменяемая гарантия, пример хорошо спроектированного цикла (цель, метрика, ограничения, порядок работы, условия остановки, эскалация), четыре тихие издержки автономии, лестница зрелости.
Loop Engineering
генератор и оценщик
условия остановки
эскалация человеку
26 min
Abonnement
S'abonner
Когда одного цикла агенту уже мало
Где заканчиваются возможности одиночного цикла: три структурных провала (нет откатов, нет общего состояния, нет якорей в реальность). Четырёхуровневая рамка и четыре элемента графа. Anchors — якоря, которые нельзя обойти локальной оптимизацией. Разница между графом и workflow. Как собрать первый граф за шесть шагов. Orchestration tax и пять критериев, когда граф действительно нужен.
Graph Engineering
anchors
orchestration tax
граф против workflow
24 min
Abonnement
S'abonner
Собираем харнес целиком: от пустого репозитория до автономного агента
Финал курса: берём всё, что мы шаг за шагом строили на сквозном проекте — платёжном FastAPI-бэкенде — и собираем в одну работающую систему. Проходим по всем артефактам харнеса от начала до конца: AGENTS.md-роутер с тематическими документами, feature_list.json с конечным автоматом состояний, PROGRESS.md и протокол передачи смены, scripts/verify.sh и scripts/arch-check.sh как гейты верификации, sprint contract и рубрика оценщика, чек-лист чистого выхода из сессии, program.md для автономного цикла и graph.md для многоролевого процесса. В конце — сравниваем метрики агента до харнеса и после.
сборка харнеса целиком
сквозной проект
метрики до/после
capstone
20 min
Abonnement
S'abonner