Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Hook Development Rules
How to use
Przejdź do katalogu
.claude/hooks/w swoim projekcie Claude. Jeśli folder nie istnieje, utwórz go.Utwórz shell wrapper (plik .sh) — na przykład
my-hook.sh. Skopiuj szablon z dokumentacji: zacznij od#!/bin/bash, ustawset -e, przejdź do.claude/hooks/i przekaż stdin do handlera TypeScript za pośrednictwemnpx tsx.Utwórz handler TypeScript (plik .ts) — na przykład
my-handler.ts. Zdefiniuj interfejsHookInputdla pól specyficznych dla zdarzenia, odczytaj JSON ze stdin, przetwórz dane i zwróć obiekt z polamiresult("continue" lub "block") oraz opcjonalnymmessage.Wybierz zdarzenie, na które chcesz reagować: PreToolUse (przed wykonaniem narzędzia, może blokować), PostToolUse (po wykonaniu), UserPromptSubmit (przed przetworzeniem promptu), PreCompact (przed kompakcją kontekstu), SessionStart (przy starcie/wznowieniu sesji) lub Stop (gdy agent się zatrzyma).
Przetestuj hook ręcznie z linii poleceń — na przykład
echo '{"type": "resume"}' | .claude/hooks/session-start-continuity.sh— aby upewnić się, że handler poprawnie parsuje input i zwraca JSON.Zarejestruj hook w pliku
.claude/settings.jsonpod kluczemhooks, podając nazwę zdarzenia, opcjonalny matcher (wzorzec filtrujący) i ścieżkę do shell wrappera. Po zapisaniu ustawień hook będzie automatycznie wywoływany w odpowiednim momencie lifecycle'u agenta.