Допустим, нужно следить за статусом CI, появлением файла или изменением какой-нибудь записи и самый очевидный вариант тут - это запускать проверку каждые несколько минут. Само по себе это нормально, но если вместе с каждой проверкой просыпается агент, довольно быстро начинаешь впустую тратить токены и время.
В OpenClaw можно сделать это по-другому - cron запускает небольшой проверочный скрипт, тот получает текущее состояние и сравнивает его с предыдущим. Если ничего не поменялось - то и запуска не будет. Если поменялось - только тогда запускается агент.
Например, CI был зеленым, а потом сборка упала. В этот момент можно поднять отдельную сессию, передать агенту логи и попросить разобраться, что сломалось. Пока статус не меняется, модель вообще не вызывается.
Для таких задач в cron есть
event trigger. В конфиге задаете расписание проверки и скрипт, который возвращает состояние. Результат сохраняется между запусками и событие передается агенту только когда значение меняется. В документации есть готовый пример именно с мониторингом CI, его проще всего взять за основу и заменить проверку на свою.
Мне такой вариант нравится для любых фоновых проверок, где важен именно переход состояния: CI упал, появился файл, задача завершилась, поменялся статус. Агент подключается только тогда, когда он реально нужен.
⚠️ Только аккуратнее с правами, скрипт триггера работает с политикой инструментов агента, в том числе с exec. Поэтому код, который запускается таким способом, лучше контролировать самому.
#полезныеинструменты
