Files
gh-rafaelcalleja-claude-mar…/settings.json
2025-11-30 08:49:04 +08:00

195 lines
4.8 KiB
JSON

{
"hooks": {
"SessionStart": [
{
"matcher": "startup",
"hooks": [
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/session_start.py",
"timeout": 30
}
]
},
{
"matcher": "resume",
"hooks": [
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/context_recovery_helper.py",
"timeout": 30
}
]
},
{
"matcher": "clear",
"hooks": [
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/pre_session_hook.py",
"timeout": 30
}
]
},
{
"matcher": "compact",
"hooks": [
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/session_start.py",
"timeout": 30
}
]
}
],
"SessionEnd": [
{
"hooks": [
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/post_session_hook.py",
"timeout": 30
}
]
}
],
"UserPromptSubmit": [
{
"hooks": [
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/detect_session_finish.py",
"timeout": 10
}
]
}
],
"PreCompact": [
{
"matcher": "auto",
"hooks": [
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/auto_compact.py",
"timeout": 360
}
]
},
{
"matcher": "manual",
"hooks": [
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/auto_compact.py",
"timeout": 360
}
]
}
],
"PreToolUse": [
{
"matcher": ".*",
"hooks": [
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/token_manager.py check",
"timeout": 10
}
]
},
{
"matcher": "Write|Edit",
"hooks": [
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/command_restrictor.py",
"timeout": 10
},
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/pattern_enforcer.py",
"timeout": 10
},
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/no_mock_code.py",
"timeout": 10
},
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/secret_scanner.py",
"timeout": 10
},
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/timestamp_validator.py",
"timeout": 10
}
]
},
{
"matcher": "Update",
"hooks": [
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/no_mock_code.py",
"timeout": 10
},
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/secret_scanner.py",
"timeout": 10
}
]
},
{
"matcher": "Bash",
"hooks": [
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/command_restrictor.py",
"timeout": 10
},
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/validate_git_commit.py",
"timeout": 10
}
]
},
{
"matcher": "WebFetch|WebSearch",
"hooks": [
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/command_restrictor.py",
"timeout": 10
}
]
}
],
"PostToolUse": [
{
"matcher": "Bash|Read|Write|Edit|Grep|Glob|Task|TodoWrite|AskUserQuestion|mcp__.*",
"hooks": [
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/token_manager.py extract",
"timeout": 180
}
]
},
{
"matcher": ".*",
"hooks": [
{
"type": "command",
"command": "python3 ${CLAUDE_PLUGIN_ROOT}/hook_scripts/post_tool_use_compact_progress.py",
"timeout": 5
}
]
}
]
}
}