Стоимость и разнос циклов
Автономный агент работает циклом: попробовать, проверить, попробовать снова. Этот цикл — весь смысл — и он же то, что может тихо раздуть счёт или крутиться вечно.
Это напрямую связано с идеей безопасности по стоимости из прошлого: инструмент с фиксированной подпиской отказывает остановкой; агент на платном API с поминутной тарификацией отказывает списанием денег. Когда подписочный помощник для кода упирается в лимит, он просто не делает больше, пока окно не сбросится. Когда написанный вами скрипт против платного API застревает в цикле повторов, он продолжает вызывать — и каждый вызов стоит денег — пока вы не заметите или карта не упрётся в потолок.
Поэтому правила прямые:
- Никогда не запускайте недроссельный цикл агента против платного API. Если вы написали собственный цикл, вызывающий API LLM, у него обязан быть жёсткий потолок — максимум итераций, лимит трат, тайм-аут. Без исключений, без «я пригляжу». Не приглядите.
- Дайте каждому циклу выход. «Остановись после N попыток», «остановись, если тесты падают ещё дважды», «остановись, если крутишься десять минут». Агент без условия остановки — это баг, а не фича.
- Следите за первыми прогонами. Прежде чем доверить агенту работать в фоне, проследите несколько прогонов в активном режиме от начала до конца. Вы проверяете, что он сходится — приближается к завершению, а не застрял, кружа вокруг одной и той же правки.
- Предпочитайте инструмент с ограждениями. Управляемый помощник со встроенными лимитами безопаснее оставлять работать, чем сырой цикл к API, написанный вами в полночь. Подписка, отказывающая «в закрытую», — это фича; API, отказывающий «нараспашку», — это угроза.