reymer.ai
Урок 17 из 1910 мин

Ещё один полезный хук

Цели урока

После прохождения этого урока вы сможете:

  • 1Понять различия входных данных разных хуков
  • 2Создать отладочный хук
  • 3Изучить структуру данных инструментов

Типы хуков и их входные данные

Помимо PreToolUse и PostToolUse существуют и другие хуки, каждый со своей структурой входных данных.

Доступные хуки

  • Notification — срабатывает при отправке уведомления
  • Stop — срабатывает при завершении ответа
  • SubagentStop — срабатывает при завершении подагента
  • PreCompact — срабатывает перед сжатием контекста
  • UserPromptSubmit — срабатывает при отправке запроса
  • SessionStart — срабатывает при старте сессии
  • SessionEnd — срабатывает при завершении сессии

Важный момент

Структура входных данных (stdin) различается в зависимости от типа хука и вызванного инструмента. Это может вызвать путаницу при разработке хуков.

Отладочный хук

json
{
  "PostToolUse": [
    {
      "matcher": "*",
      "hooks": [
        {
          "type": "command",
          "command": "jq . > post-log.json"
        }
      ]
    }
  ]
}

Этот хук сохраняет входные данные в файл, что позволяет изучить структуру и разработать правильную логику обработки.

Курс адаптирован на русский язык на основе материалов Anthropic Academy. © Anthropic