Бывает, даешь агенту задачу, а он начинает залипает на одной ошибке - вызывает инструмент, получает ошибку, вызывает снова с теми же параметрами, опять ошибка - и так раз за разом, пока ты не заметишь, а токены сгорают прилично.
В OpenClaw есть встроенная фишка для защиты от подобных историй -
tool-loop detection. Если агент вызывает один и тот же инструмент больше N раз подряд с одинаковыми параметрами, система сама останавливает цикл и возвращает ошибку вместо того, чтобы дать ему продолжать бесконечно ее крутить.Включается в конфиге:
{
"agents": {
"defaults": {
"toolLoopDetection": {
"maxIterations": 5,
"windowMs": 60000
}
}
}
}maxIterations - сколько одинаковых вызовов подряд система пропустит, прежде чем вмешаться. windowMs - окно, в котором эти вызовы считаются. Я поставил 5 итераций за минуту - этого вполне хватает, чтобы не мешать нормальной работе, но ловить реальные зацикливания.
⚡️Штука реально полезная, особенно если агент работает “на фоне” и вы не смотрите на него каждую секунду. Лучше пусть система остановит цикл на пятой итерации
