OpenClaw работает с событиями. Агент получил сообщение — событие. Отправил ответ — событие. Начал сессию — событие.
Вы можете подцепить свой код к любому событию. Это называется hook.
Что такое hook?
Это просто функция, которая срабатывает автоматически. Вы её один раз настраиваете, а потом она работает каждый раз.
Пример: каждое сообщение логируем в файл.
• Событие: агент отправил ответ
• Hook: запиши текст в /var/log/chat.log
• Результат: в лог идёт всё, без ручного вмешательства
Основные события:
• message_received — агент получил входящее сообщение
• message_sent — агент отправил ответ
• session_start — открыли новую сессию
• session_end — закрыли сессию
• tool_call — агент вызвал инструмент (read, exec, browser)
• cron_complete — крон-задача завершилась
• error — произошла ошибка
Как добавить hook:
openclaw hook add message_sent \
--handler "echo '$(date +%s) user: {$text}' >> /var/log/openclaw.log"
Или вызвать скрипт:
openclaw hook add session_end \
--handler "/scripts/backup-session.sh {$sessionId}"
Переменные, которые доступны в hook:
• {$text} — текст сообщения
• {$user} — кто отправил (имя или ID)
• {$timestamp} — время события
• {$sessionId} — ID сессии
• {$agentId} — ID агента
Практические применения:
🔐 Аудит — логируем все действия агента
openclaw hook add tool_call \
--handler "echo '{$timestamp} Agent called: {$tool}' >> audit.log"
📧 Уведомления — отправляем email если произошла ошибка
openclaw hook add error \
--handler "mail -s 'Ошибка агента' admin@example.com"
💾 Синхронизация — сохраняем результаты в базу
openclaw hook add session_end \
--handler "curl -X POST http://api.example.com/sessions -d @-"
📱 Интеграция — отправляем в Slack
openclaw hook add message_sent \
--handler "/scripts/slack-notify.sh {$text} {$user}"
Как удалить hook:
openclaw hook remove message_sent
Как список всех hook-ов:
openclaw hook list
Важное:
Hook должен выполняться быстро. Если скрипт висит 30 секунд — агент ждёт. Тяжёлые операции запускайте в фоне (добавляйте
& в конце команды).Hooks — это способ расширить OpenClaw без изменения кода. Логирование, интеграции, аудит — всё через hooks.
🔗 OpenClaw — open-source платформа для ИИ-агентов
📖 docs.openclaw.ai
Подпишитесь на @openclawc