debug-hooks
Systematic hook debugging workflow. Use when hooks aren't firing, producing wrong output, or behaving unexpectedly.
Installation
Pick a client and clone the repository into its skills directory.
Installation
About this skill
Systematic hook debugging workflow. Use when hooks aren't firing, producing wrong output, or behaving unexpectedly.
How to use
Zainstaluj umiejętność w swoim projekcie Claude, umieszczając folder debug-hooks w katalogu .claude/skills/.
Zacznij od obserwacji – sprawdź cache projektu poleceniem ls -la $CLAUDE_PROJECT_DIR/.claude/cache/ oraz pliki logów za pomocą tail, aby zobaczyć, co się dzieje w tle.
Zweryfikuj rejestrację hooków w pliku $CLAUDE_PROJECT_DIR/.claude/settings.json – poszukaj wpisów SessionEnd, PostToolUse lub UserPromptSubmit, aby upewnić się, że hook jest zarejestrowany. Sprawdź też globalny plik ~/.claude/settings.json, ponieważ hooki łączą się z obu lokalizacji.
Potwierdź, że pliki hooków istnieją w katalogu .claude/hooks/ – szukaj plików .sh lub skompilowanych bundli .mjs, jeśli używasz TypeScript.
Przetestuj hook ręcznie, przekazując do niego JSON z danymi testowymi – na przykład dla SessionEnd hook wyślij JSON z session_id i reason, a dla PostToolUse hook podaj tool_name i tool_input.
Jeśli hook wciąż nie działa, sprawdź, czy nie używa detached spawn z stdio: 'ignore' – ten wzorzec ukrywa błędy. Dodaj tymczasowe logowanie do pliku, aby zobaczyć rzeczywisty błąd.