Hook Development
Průvodce psaním plugin hooků Claude Code napříč všemi devíti typy událostí
Otestováno · Funguje
Co umí
Poskytuje referenční pokyny pro tvorbu plugin hooků Claude Code, pokrývající všech devět událostí hooků (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification), prompt-based vs. command hooky, matchery a formáty plugin hooks.json vs. settings.json. Spouští se, když uživatel požádá o vytvoření hooku, blokování nebezpečných příkazů, ověření použití nástroje, použití ${CLAUDE_PLUGIN_ROOT} nebo nastavení automatizace řízené událostmi. Obsahuje příkladové skripty a validátor schématu hooks.json.
Testovací report
Klonován repozitář a napsány dva artefakty hooks.json pro stejnou úlohu (ověření zápisů na PreToolUse + kontrola dokončení na Stop). Baseline (mé vlastní znalosti) vyprodukoval Stop hook, který vlastní validate-hook-schema.sh repozitáře označil jako "Missing 'matcher' field", s relativní cestou ./hooks/ a bez timeoutů; verze řízená dovedností přidala matcher, přenosné cesty ${CLAUDE_PLUGIN_ROOT}, timeouty a prompt-based Stop — konkrétní zisk přenositelnosti/kompletnosti. Namátkově zkontrolovány 3 odkazované soubory (validate-write.sh, validate-hook-schema.sh, patterns.md) všechny HTTP 200, žádné bezpečnostní problémy. Zjištěna skutečná nekonzistence: formát obálky pluginu, který dovednost sama doporučuje, porušuje vlastní validátor dovednosti (jq error), který zpracovává pouze přímý formát nastavení; a dovednost vyžaduje matcher na Stop hookech, které oficiální Claude Code hooky nepoužívají.
Testováno: 2026-07-21 · Claude Code 2.x (agent harness)
Instalace
git clone --depth 1 https://github.com/tzachbon/smart-ralph.git /tmp/hook-development-src
mkdir -p ~/.claude/skills
cp -R "/tmp/hook-development-src/.agents/skills/Hook Development" ~/.claude/skills/hook-development
# SKILL.md lands at ~/.claude/skills/hook-development/SKILL.md
# Utility scripts (scripts/validate-hook-schema.sh, test-hook.sh, hook-linter.sh) require `jq` on PATH.
# Note: the validator parses the DIRECT settings-format hooks.json, not the {"hooks":{...}} plugin
# wrapper the SKILL recommends — feed it the inner events object, or it errors with a jq index error. Příkazy a ukázkové prompty
/hook-developmentPrůvodce psaním plugin hooků Claude Code napříč všemi devíti typy událostí
Skilly se spouštějí běžnými požadavky — žádné příkazy k zapamatování. Po instalaci ho aktivují prompty jako tyto (anglicky):
Create a PreToolUse hook that blocks rm -rfAdd a Stop hook for event-driven automationWrite a prompt-based hook for this plugin