Hook Development
Anleitung zum Schreiben von Claude Code Plugin-Hooks für alle neun Ereignistypen
Getestet · Funktioniert
Was es kann
Bietet Referenzanleitung zum Erstellen von Claude Code Plugin-Hooks, die alle neun Hook-Ereignisse (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification), prompt-basierte vs. Befehls-Hooks, Matcher und die Plugin hooks.json vs. settings.json Formate abdecken. Wird ausgelöst, wenn der Benutzer einen Hook erstellen, gefährliche Befehle blockieren, die Tool-Nutzung validieren, ${CLAUDE_PLUGIN_ROOT} verwenden oder ereignisgesteuerte Automatisierung einrichten möchte. Liefert Beispielskripte und einen hooks.json Schema-Validator.
Testbericht
Das Repo geklont und zwei hooks.json-Artefakte für dieselbe Aufgabe geschrieben (validate writes on PreToolUse + check completion on Stop). Die Baseline (mein eigenes Wissen) produzierte einen Stop-Hook, den das repo-eigene validate-hook-schema.sh als "Missing 'matcher' field" kennzeichnete, mit einem relativen ./hooks/-Pfad und ohne Timeouts; die Skill-geführte Version fügte matcher, ${CLAUDE_PLUGIN_ROOT} portable Pfade, Timeouts und einen prompt-basierten Stop hinzu – ein konkreter Gewinn an Portabilität/Vollständigkeit. 3 referenzierte Dateien (validate-write.sh, validate-hook-schema.sh, patterns.md) stichprobenartig überprüft, alle HTTP 200, keine Sicherheitsmängel. Eine reale Inkonsistenz wurde beobachtet: Das vom Skill selbst empfohlene Plugin-Wrapper-Format bricht den eigenen Validator des Skills (jq error), der nur das direkte Einstellungsformat verarbeitet; und der Skill schreibt einen Matcher für Stop-Hooks vor, den offizielle Claude Code-Hooks nicht verwenden.
Getestet am: 2026-07-21 · Claude Code 2.x (agent harness)
Installation
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. Befehle & Beispiel-Prompts
/hook-developmentAnleitung zum Schreiben von Claude Code Plugin-Hooks für alle neun Ereignistypen
Skills reagieren auf normale Anfragen — keine Slash-Befehle nötig. Nach der Installation aktivieren Prompts wie diese den Skill (auf Englisch):
Create a PreToolUse hook that blocks rm -rfAdd a Stop hook for event-driven automationWrite a prompt-based hook for this plugin