Игорь Градов
Игорь Градов
8 мин
ai

Харнес для ИИ-агентов: как собрать обвязку, которая сама разбирает баги

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

Харнес для ИИ-агентов: как собрать обвязку, которая сама разбирает баги
Почему это важно

Харнес в ИИ-агентах отвечает за всё, что модель не умеет сама: открывать файлы, запускать тесты, проверять результат. Без этого слоя агент только генерирует текст и останавливается.

Если вы хоть раз работали в Claude Code, Codex или Cursor, вы уже пользовались харнесом, просто не называли его так. Слово за последний год стало общеупотребимым в разговорах про ИИ-агентов (программы, которые выполняют цепочку действий самостоятельно), но объяснения обычно сводятся к одному слову: «обвязка». Ниже разберём, что именно в этой обвязке лежит, и дадим готовый промпт, который соберёт харнес за вас без единой строчки кода.

Что понадобится

  • Один из агентных инструментов: Claude Code, Codex или Cursor. Подойдёт любой, где есть файл правил проекта (CLAUDE.md или AGENT.md)
  • Проект, в котором вы уже работаете: приложение, бот, сайт. Харнес настраивается не в вакууме, а поверх конкретного стека
  • Информация о вашей инфраструктуре: где лежат логи, как устроен деплой (выкатка кода на сервер), какие сервисы используются
  • Время: от 15 минут на простую обвязку до часа на полную с проверками и субагентами

Из каких частей состоит харнес?

Модель (LLM, большая языковая модель) получает текст и возвращает текст. Она не открывает файлы, не ходит в сеть, не запускает тесты. Когда модель пишет в ответе «хочу вызвать такой-то инструмент», на этом её работа заканчивается. Всё остальное делает обвязка: читает эту строчку, проверяет разрешения, выполняет действие своим кодом, кладёт результат обратно в контекст и вызывает модель снова.

Харнес в ИИ-агентах закрывает конкретные нехватки модели. Вот ключевые части:

  • Правила проекта (CLAUDE.md / AGENT.md): что можно, что нельзя, что считается готовым результатом
  • Навыки (skills): пошаговые инструкции для типовых задач, например порядок разбора бага
  • Инструменты и скрипты: файлы, которые агент может запускать (чтение логов, проверка кода)
  • Проверки (checks): линт (автопроверка стиля кода), тесты, скрипт валидации. Без сигнала «вышло плохо» цикл работы агента бессмысленен
  • Хуки (hooks): автоматические блокировки опасных действий до их выполнения
  • Субагенты: вспомогательные агенты с узкой задачей, например «прочитай логи и верни только десять строк»
  • Настройки доступа: что разрешено запускать, что требует подтверждения, что запрещено
  • Память между сессиями: файлы состояния, чтобы агент не начинал каждый раз с нуля

Хорошая новость: бо́льшую часть списка (цикл, инструменты, сжатие истории, механика субагентов, логирование) уже реализовали за вас Claude Code, Codex и Cursor. Вам остаётся добавить правила, навыки, проверки и запреты под свой проект.

Пошаговая инструкция: собираем харнес для разбора багов

Допустим, вы собрали приложение (возможно, с помощью вайбкодинга) и опубликовали его. Пользователи начали жаловаться. Без харнеса вам придётся вручную искать логи, читать трейсы, разбираться. С харнесом достаточно скинуть жалобу пользователя в Claude Code, и агент сам найдёт причину.

  1. Откройте свой проект в Claude Code (или Codex)
  2. Вставьте промпт ниже, заменив квадратные скобки на свои данные
  3. Ответьте на уточняющие вопросы агента: промпт специально заканчивается просьбой «задай мне вопросы по тому, чего не хватает»
  4. Проверьте созданные файлы: убедитесь, что скрипт чтения логов указывает на правильный адрес, а хук блокирует то, что нужно блокировать
  5. Протестируйте на реальной жалобе: скиньте агенту текст обращения пользователя и проследите, какие шаги он предпримет

Готовый промпт:

Собери обвязку для разбора жалоб пользователей.
Про проект: стек — [ваш стек], прод — [адрес], сервисы — [список],
логи лежат [где и чем смотрятся], деплой — [команда].

Что сделать:

1. CLAUDE.md — правила проекта.
   Раздел «как ходить на прод»: логи только через scripts/prod-logs.sh,
   прод-база только на чтение, миграции на проде не запускать никогда.
   Раздел «что считается сделанным»: прошёл check.sh и записан файл
   в docs/incidents/.

2. scripts/prod-logs.sh — единственная дверь на прод.
   Закрытый список сервисов, отдельный read-only ключ,
   потолок 500 строк, вырезать из вывода номера карт и токены
   до того, как они попадут в разговор.

3. .claude/skills/triage-bug/SKILL.md — порядок разбора:
   симптом → сервис, логи, поиск следа по id, сверка
   с docs/incidents/, гипотеза, показать место в коде.
   Дважды явно разреши остановиться и спросить меня,
   если данных не хватило.

4. .claude/agents/log-reader.md — субагент, который читает
   выгрузку логов у себя и возвращает не больше десяти строк.

5. .claude/hooks/guard-prod.sh — хук перед запуском команд.
   Блокирует прямой ssh мимо prod-logs.sh, запись в прод-базу,
   force-push и миграции на проде.

6. .claude/settings.json — три корзины: скрипты чтения в allow,
   git push и deploy в ask, .env и ключи в deny.
   Подключи оба хука.

7. scripts/check.sh — типы, линт, тесты.

8. docs/incidents/ — папка с шаблоном записи: симптом, причина,
   фикс, как воспроизвести.

Сначала задай мне вопросы по тому, чего не хватает.
Ничего не выдумывай про мой стек и мою инфраструктуру.

Обратите внимание на последнюю строку: она запрещает агенту додумывать за вас. Это принципиально, иначе он сгенерирует красивые, но нерабочие файлы.

Практика: харнес для разбора интервью

Код и баги не единственная область. Вот пример из маркетинга: у вас накопились расшифровки интервью с пользователями, и каждую надо разобрать по схеме: выводы, цитаты, повторяющиеся боли. Ключевое требование: в разборе не должно появиться ничего, чего пользователь на самом деле не говорил.

Пример обвязки для разбора интервью

Что создаём:

  1. Папку проекта (например, «интервью»)
  2. Файл CLAUDE.md с правилами:
# Разбор интервью
Продукт: сервис подбора подрядчиков для ремонта.
Пользователи: частные заказчики 30–50 лет,
ремонт раз в пять-семь лет.

## Где что лежит
- raw/ — расшифровки. Только чтение, править нельзя ничего.
- out/ — разборы, по файлу на интервью.
  Имя файла совпадает с исходником.

- state/ — память между сессиями.
  Читать перед началом, дописывать в конце.

## Что считается выводом
Вывод — это утверждение о пользователе, под которым
стоит дословная цитата с таймингом.
Без цитаты это не вывод, а моя догадка,
и в отчёт она не идёт.
Вывод, у которого нашлась ровно одна цитата,
помечается как слабый.

Что получаем на выходе: агент берёт расшифровку из raw/, разбирает по заданной схеме, каждый вывод подкрепляет дословной цитатой, а если цитаты нет, честно пишет: «это догадка, а не вывод». Результат кладёт в out/, состояние обновляет в state/.

Этот пример показывает, почему правила в CLAUDE.md важнее инструментов: именно строка «без цитаты это не вывод» не даёт модели галлюцинировать (галлюцинация в ИИ означает, что модель уверенно выдумывает то, чего не было).

С чего начинать настройку?

Обвязку стоит начинать не с подключения интеграций, а с вопроса: «как будем проверять результат». Агент работает в цикле, а цикл имеет смысл только тогда, когда между попытками что-то улучшается. Улучшается оно от сигнала «вышло плохо». Если такого сигнала в вашей задаче нет, агент будет выдавать правдоподобные черновики, сколько инструментов к нему ни подключай.

Поэтому строка «проверки» в харнесе ИИ-агентов, на мой взгляд, самая важная из всех.

Что делать с этим прямо сейчас, по ролям

  • Автору Дзена. Попробуйте собрать простой харнес для рерайта или разбора комментариев: файл правил, где описано, что считается готовым текстом, и скрипт проверки (хотя бы на длину и наличие ключевых слов). Даже без кода, просто CLAUDE.md с чёткими критериями, уже изменит качество ответов агента

  • Маркетологу. Пример с интервью выше, ваш прямой сценарий. Замените «подрядчиков для ремонта» на свой продукт, и вы получите систему, которая разбирает CustDev-интервью (интервью с клиентами для изучения их потребностей) с защитой от выдуманных инсайтов

  • Предпринимателю. Промпт для разбора багов работает в Claude Code, который доступен по подписке. Из российских аналогов: YandexGPT и GigaChat пока не поддерживают агентный режим с файловой системой в таком виде, но принцип харнеса (правила + проверки + ограничения) применим к любому инструменту, где есть системный промпт (системный промпт, базовая инструкция, которую модель получает до вашего запроса)

Частые ошибки
  • Начинать с инструментов, а не с проверок. Подключить десять интеграций, но не описать, что считается готовым результатом. Агент будет красиво работать, но без обратной связи не улучшится
  • Пропускать запреты. Без хуков и правил «только чтение» агент может записать в продакшен-базу или удалить важный файл. Хук (автоматическая проверка перед выполнением команды) стоит добавлять первым
  • Позволять агенту додумывать стек. Если вы не указали, где логи и как устроен деплой, агент подставит правдоподобные, но неправильные значения. Последняя строка промпта «ничего не выдумывай» обязательна
  • Путать харнес-программу и харнес-слой. Если можно скачать и запустить, это программа (Claude Code, Cursor). Если речь про ваши файлы настроек внутри проекта, это слой. Различие помогает в разговорах и при выборе инструмента
Мнение редакции dzen.guru

Харнес, по моим наблюдениям, это та точка, где «поиграться с нейросетью» превращается в «встроить нейросеть в работу». Промпт из статьи я проверял на нескольких проектах: агент действительно задаёт уточняющие вопросы, а не выдумывает конфигурацию. Но честная оговорка: всё это работает, пока задача поддаётся формальной проверке. Если вы пишете эссе или креативный текст, автоматического сигнала «вышло плохо» не будет, и цикл агента становится бесполезным. Для таких задач харнес не замена, а помощник: он может проверить структуру и факты, но не вкус.

Настройте проверки, а инструменты подтянутся сами. Один файл CLAUDE.md с честными критериями «что считается готовым» меняет поведение агента заметнее, чем десять новых интеграций.

Попробуйте генератор промптов dzen.guru

Соберите системный промпт для вашего проекта за пять минут и проверьте, как меняется качество ответов агента.

Попробовать
Поделиться:TelegramVK
Игорь Градов
Игорь Градов

Основатель dzen.guru. Эксперт по монетизации и продвижению на Дзен. Автор курса «Старт на Дзен 2026».

Комментарии

Читайте также

NEEDLE обновляет бенчмарки нейросетей каждый час: заучить ответы больше нельзя
ai

NEEDLE обновляет бенчмарки нейросетей каждый час: заучить ответы больше нельзя

Microsoft второго июня запустила NEEDLE, открытый бенчмарк (набор тестовых задач для объективной проверки качества нейросетей), который каждый час обновляет…

5 мин
ai

Gradium AI выпустила TTS модель с 81% точности на цифрах и кодах: боты звонят без костылей

Компания Gradium AI 31 августа 2026 года выпустила новую TTS модель (модель синтеза речи, которая превращает текст в голос) и сразу сделала её моделью по…

5 мин
WAIC 2026: роботы и AI for Science
ai

WAIC 2026: роботы и AI for Science

Конференция WAIC 2026, прошедшая с 17 по 20 июля в Шанхае, показала, как быстро китайская индустрия переводит лабораторные разработки в области искусственного…

5 мин