Не улучшайте промпт бесконечно.
Дайте агенту рамку
Если агент ошибается, не всегда нужен новый промпт. Часто не хватает рамки задачи.
Контекст тот же: городские очистные и аварийный сброс. Здесь лишняя правка может пахнуть не метафорически.
Перед запуском укажите: что нельзя менять, какие файлы разрешены, какой пример считать правильным, какие проверки обязательны, где нужен человек.
Так агент работает внутри процесса, а не строит процесс за команду.
Практический CTA: Рамку пишите не для «всего агента», а для выбранной опасной точки. Сначала подтвердите у человека, что аварийный сброс действительно важнее соседних кнопок. Потом задайте агенту границы работы.
Вспомогательный запрос: Для сценария «аварийный сброс» предложи рамку задачи: какие файлы можно менять, какие запрещены, какой существующий экран взять за образец, какие проверки обязательны, где решение принимает человек. Не предлагай менять датчики, обходы и соседние задвижки без отдельного разрешения инженера.
Решение: после кнопки «Аварийный сброс» агент два раза «улучшал» экран и каждый раз трогал лишнее: датчик уровня, аварийный обход и соседнюю задвижку. Это уже не косметика: один лишний обход — и утренний центр города встречает фонтан нечистот. На третий запуск рамка такая: менять только экран кнопки и тест отказа; датчики, обход и соседние задвижки не трогать; образец — существующая кнопка «Промывка фильтра»; проверка — человек видит в диффе одно условие tank_overflow == true и два состояния на мнемосхеме: без переполнения кнопка серая, при переполнении — доступна.
