Урок 17 из 19•10 мин
Ещё один полезный хук
Цели урока
После прохождения этого урока вы сможете:
- 1Понять различия входных данных разных хуков
- 2Создать отладочный хук
- 3Изучить структуру данных инструментов
Типы хуков и их входные данные
Помимо PreToolUse и PostToolUse существуют и другие хуки, каждый со своей структурой входных данных.
Доступные хуки
- Notification — срабатывает при отправке уведомления
- Stop — срабатывает при завершении ответа
- SubagentStop — срабатывает при завершении подагента
- PreCompact — срабатывает перед сжатием контекста
- UserPromptSubmit — срабатывает при отправке запроса
- SessionStart — срабатывает при старте сессии
- SessionEnd — срабатывает при завершении сессии
Важный момент
Структура входных данных (stdin) различается в зависимости от типа хука и вызванного инструмента. Это может вызвать путаницу при разработке хуков.
Отладочный хук
json
{
"PostToolUse": [
{
"matcher": "*",
"hooks": [
{
"type": "command",
"command": "jq . > post-log.json"
}
]
}
]
}Этот хук сохраняет входные данные в файл, что позволяет изучить структуру и разработать правильную логику обработки.
