Read in:
Русский

Harness (обвязка)

Harness (обвязка)

Harness — это автоматическая обвязка вокруг AI-агента, которая делает его
поведение проверяемым и воспроизводимым.
Его делают, чтобы перейти от «агент
обычно справляется» к «агент доказуемо справляется, и я вижу момент, когда он
перестал». Промпт говорит агенту, что делать; harness доказывает, сделал ли он.

Какую задачу он закрывает

В терминах Job-to-be-Done: когда я полагаюсь на агента в сложной повторяемой
задаче, я хочу знать — не перечитывая каждый вывод — действительно ли он сделал
работу, чтобы доверять результату и ловить регрессии в тот же момент, когда они
появились.

Harness не нужен сам по себе — нужна уверенность, которую он даёт. Его заводят,
когда «на глаз нормально» перестаёт быть достаточным.

Что это на практике

Скрипт, который:

  1. запускает агента на фиксированной задаче,
  2. смотрит на артефакты (файлы, frontmatter, отчёты — не на чат),
  3. гоняет набор формальных проверок и
  4. выдаёт счёт вроде N/10 PASS.

Этот счёт — и есть суть. Он превращает смутное ощущение в число, которое меняется
вместе с поведением: регрессию видно в тот же запуск, и видно, какая именно
проверка упала.

Когда его строить

  • Скил или задача, которую хочется считать «готовой» и на которую опираешься.
    Без harness любой скил — гипотеза.
  • Всё, что агент делает повторно, — каждый запуск может тихо «сползти».
  • Многошаговая работа, где агент может незаметно пропустить шаг, а результат
    всё равно выглядит правдоподобно.
  • Перед тем как отдать скил другим агентам или коллегам.

Примеры

  • landing-iterate.sh — чистит vault, шлёт промпт, ждёт, читает артефакты из
    контейнера, гоняет десяток проверок (есть файл? валидный frontmatter? создан
    отчёт? отмечены обе секции?). За три итерации скил лендинга прошёл путь от 4
    фейлов до 0.
  • Harness-first инженерия (Datadog, Code with Claude 2026) — вкладывайся в
    автоматические проверки, а не в чтение каждой строки; сдвиг от ручного ревью к
    машинной обвязке.
  • Офлайн-бенчмарк как стоп-кран + онлайн-оценки на прод-трейсах — бенчмарк это
    ручник: нет зелёного — нет релиза.
  • «Мечтание» (Anthropic) — async-процесс читает транскрипты агентов, ищет
    повторяющиеся ошибки, обновляет общую память. Harness, который работает, пока вы
    спите.

Антипримеры

  • Переписать промпт пожирнее. Добавить «ОБЯЗАТЕЛЬНО», «НИКОГДА не пропускай» и
    посмотреть глазами — это косметика. Если агент может пропустить шаг, словами его
    не остановить — только убрав саму возможность (например, создать файл и его отчёт
    в одном tool call).
  • Разовая ручная проверка. Посмотрел один раз и объявил победу; не заметишь,
    когда сломается на следующей неделе.
  • Проверки только счастливого пути. Harness, который проверяет лишь известный
    рабочий случай, проходит всегда и не защищает ни от чего.
  • Вообще без harness. Считать скил готовым, потому что демо выглядело правильно.
    Сбой обычно — стабильная структурная дыра, невидимая на глаз.

Какому правилу он учит

Когда harness показал стабильный сбой, чини структуру, а не текст. Не
«добавь восклицательный знак», а «перенеси этот шаг в начало», «объедини с
соседним», «сделай так, чтобы пропустить было нельзя». Текстом агента не заставить;
структурой можно убрать сам выбор.

Связанное