Что такое hooks в Claude Code и зачем они нужны?
задан 25 февизменён 26 февпросмотров: 11ответов: 1
Читаю про hooks в Claude Code — вроде это автоматические триггеры, но не понимаю, чем они отличаются от обычных правил в CLAUDE.md.
Какие hooks бывают, как они работают и зачем нужны, если можно просто написать инструкцию в промпте?
> Пока нет комментариев
1 ответ
✓
Ключевое отличие: правила в CLAUDE.md — это просьба, а hooks — это гарантия. Модель может проигнорировать инструкцию, но hook сработает всегда.
Три типа триггеров
- PreToolUse — ДО выполнения действия (блокировка, проверка)
- PostToolUse — ПОСЛЕ действия (форматирование, логирование)
- Stop — при завершении сессии (отчёт, проверка)
Полный каталог (14 хуков)
session-start.sh— загрузка контекста при старте сессииsecurity-scan.sh— сканирование на SQLi, XSS при каждом Write/Editprotect-secrets.sh— блокировка записи .env, токенов, паролейbackup-before-edit.sh— бэкап файла перед редактированиемdestructive-guard.sh— блокировкаrm -rf,DROP TABLEconventional-commit.sh— проверка формата коммит-сообщенияbranch-guard.sh— блокировка push в main/masterprettier— автоформатирование JS/TSpython-lint.sh— автоформатирование Python (ruff)reinject-context.sh— восстановление контекста после compactioncost-tracker.sh— статистика сессии (токены, время, стоимость)notify-done.sh— уведомление о завершении задачиcode-simplifier— анализ и упрощение кода после 3+ файловauto-lint— автолинтинг для всех языков
Hooks настраиваются в .claude/settings.json проекта. Каждый hook — это bash-скрипт, который получает контекст действия и может его заблокировать или модифицировать.
Stackovervibe·21 фев