раздел 08
Хуки: автоматизация, не контекст
Хук - это твой скрипт, который система запускает сама на определённое событие в работе агента. Не агент решает его выполнить - система выполняет его всегда, автоматически, одинаково. Задаются хуки в настройках (в том же settings.json), привязкой скрипта к событию.
Главное отличие: это не контекст
Вернёмся к разграничению из первой главы. Всё остальное в мануале - инструкции, навыки, правила, память - это контекст: текст, который агент читает и учитывает. Он может ему следовать, а может отступить, если задача требует.
Хук устроен принципиально иначе.
Хук - это не текст для чтения, а действие по триггеру. Он выполняется системой всегда и одинаково, независимо от того, что решил агент. Поэтому хуки надёжны там, где текст-инструкция ненадёжен.
Если тебе нужно, чтобы что-то происходило гарантированно и каждый раз, - это работа для хука. Строчка «всегда прогоняй форматтер» в инструкции ненадёжна: агент может её забыть или посчитать, что сейчас не нужно. Хук на событие «после правки файла» сработает всегда.
На какие события бывают хуки
- Перед инструментом. До того как агент выполнит команду или правку. Можно проверить и заблокировать опасное.
- После инструмента. Сразу после действия. Классика - прогнать форматтер после правки файла.
- На остановке (Stop). Когда агент закончил и собирается отдать управление. Удобно для финальной проверки или напоминания.
Примеры
Форматтер после каждой правки - скрипт привязан к событию «после Edit»:
#!/bin/bash
# hooks/format.sh - запускается после правки файла
npx prettier --write "$CLAUDE_FILE_PATH"
Напоминание-проверка на остановке - если в сессии правили веб-файлы, напомнить проверить в браузере:
#!/bin/bash
# hooks/remind-check.sh - запускается на Stop
if git diff --name-only | grep -qE '\.(html|css|js|tsx)$'; then
echo "Правились фронт-файлы: проверь рендеринг в браузере перед готово."
fi
Хорошо и плохо
Когда хук, а когда инструкция
Простое правило: нужно гарантированно и каждый раз - хук. Нужно объяснить или задать контекст - инструкция, навык или правило. Форматирование после правки - хук. Стиль кода - инструкция. Проверка на секреты перед коммитом - хук. Договорённость о том, как оформлять коммиты, - инструкция.
Куда дальше
- Разрешения AI-агентов - хуки живут в тех же настройках, что и права; вместе они задают, что агенту можно и что происходит автоматически.