mirror of
https://github.com/anthropics/claude-code.git
synced 2026-04-30 01:12:45 +00:00
Stop hooks (and other hook types) were not firing because they were missing the required "matcher" field. According to the hook development documentation, all hooks must have a matcher field - "*" for wildcard matching. Changes: - Add matcher: "*" to all hooks in hookify, ralph-wiggum, explanatory-output-style, and learning-output-style plugins - Update validate-hook-schema.sh to properly handle plugin format (with 'hooks' wrapper) vs settings format (events at root) - Add validate-all-hooks.sh script to validate all hooks.json files Fixes: https://anthropic.slack.com/archives/C08EHE6JF3L/p1765822035850959
54 lines
1.1 KiB
JSON
54 lines
1.1 KiB
JSON
{
|
|
"description": "Hookify plugin - User-configurable hooks from .local.md files",
|
|
"hooks": {
|
|
"PreToolUse": [
|
|
{
|
|
"matcher": "*",
|
|
"hooks": [
|
|
{
|
|
"type": "command",
|
|
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hooks/pretooluse.py",
|
|
"timeout": 10
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"PostToolUse": [
|
|
{
|
|
"matcher": "*",
|
|
"hooks": [
|
|
{
|
|
"type": "command",
|
|
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hooks/posttooluse.py",
|
|
"timeout": 10
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"Stop": [
|
|
{
|
|
"matcher": "*",
|
|
"hooks": [
|
|
{
|
|
"type": "command",
|
|
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hooks/stop.py",
|
|
"timeout": 10
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"UserPromptSubmit": [
|
|
{
|
|
"matcher": "*",
|
|
"hooks": [
|
|
{
|
|
"type": "command",
|
|
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hooks/userpromptsubmit.py",
|
|
"timeout": 10
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|