Install
1
Run in your terminal$
npx claudepluginhub melodic-software/claude-code-plugins --plugin claude-code-observabilityRisk Indicators
Matches all tools
Source
Defined in hooks/hooks.json
Configuration
{
"Stop": [
{
"hooks": [
{
"type": "command",
"async": true,
"command": "python -u \"${CLAUDE_PLUGIN_ROOT}/hooks/hook_dispatcher.py\" stop",
"timeout": 5
}
],
"matcher": "*"
}
],
"PreCompact": [
{
"hooks": [
{
"type": "command",
"async": true,
"command": "python -u \"${CLAUDE_PLUGIN_ROOT}/hooks/hook_dispatcher.py\" precompact",
"timeout": 5
}
],
"matcher": "*"
}
],
"PreToolUse": [
{
"hooks": [
{
"type": "command",
"async": true,
"command": "python -u \"${CLAUDE_PLUGIN_ROOT}/hooks/hook_dispatcher.py\" pretooluse",
"timeout": 5
}
],
"matcher": "*"
}
],
"SessionEnd": [
{
"hooks": [
{
"type": "command",
"async": true,
"command": "python -u \"${CLAUDE_PLUGIN_ROOT}/hooks/hook_dispatcher.py\" sessionend",
"timeout": 5
}
],
"matcher": "*"
}
],
"PostToolUse": [
{
"hooks": [
{
"type": "command",
"async": true,
"command": "python -u \"${CLAUDE_PLUGIN_ROOT}/hooks/hook_dispatcher.py\" posttooluse",
"timeout": 5
}
],
"matcher": "*"
}
],
"Notification": [
{
"hooks": [
{
"type": "command",
"async": true,
"command": "python -u \"${CLAUDE_PLUGIN_ROOT}/hooks/hook_dispatcher.py\" notification",
"timeout": 5
}
],
"matcher": "*"
}
],
"SessionStart": [
{
"hooks": [
{
"type": "command",
"async": true,
"command": "python -u \"${CLAUDE_PLUGIN_ROOT}/hooks/hook_dispatcher.py\" sessionstart",
"timeout": 5
}
],
"matcher": "*"
}
],
"SubagentStop": [
{
"hooks": [
{
"type": "command",
"async": true,
"command": "python -u \"${CLAUDE_PLUGIN_ROOT}/hooks/hook_dispatcher.py\" subagentstop",
"timeout": 5
}
],
"matcher": "*"
}
],
"TeammateIdle": [
{
"hooks": [
{
"type": "command",
"async": true,
"command": "python -u \"${CLAUDE_PLUGIN_ROOT}/hooks/hook_dispatcher.py\" teammateidle",
"timeout": 5
}
],
"matcher": "*"
}
],
"SubagentStart": [
{
"hooks": [
{
"type": "command",
"async": true,
"command": "python -u \"${CLAUDE_PLUGIN_ROOT}/hooks/hook_dispatcher.py\" subagentstart",
"timeout": 5
}
],
"matcher": "*"
}
],
"TaskCompleted": [
{
"hooks": [
{
"type": "command",
"async": true,
"command": "python -u \"${CLAUDE_PLUGIN_ROOT}/hooks/hook_dispatcher.py\" taskcompleted",
"timeout": 5
}
],
"matcher": "*"
}
],
"UserPromptSubmit": [
{
"hooks": [
{
"type": "command",
"async": true,
"command": "python -u \"${CLAUDE_PLUGIN_ROOT}/hooks/hook_dispatcher.py\" userpromptsubmit",
"timeout": 5
}
],
"matcher": "*"
}
],
"PermissionRequest": [
{
"hooks": [
{
"type": "command",
"async": true,
"command": "python -u \"${CLAUDE_PLUGIN_ROOT}/hooks/hook_dispatcher.py\" permissionrequest",
"timeout": 5
}
],
"matcher": "*"
}
],
"PostToolUseFailure": [
{
"hooks": [
{
"type": "command",
"async": true,
"command": "python -u \"${CLAUDE_PLUGIN_ROOT}/hooks/hook_dispatcher.py\" posttoolusefailure",
"timeout": 5
}
],
"matcher": "*"
}
]
}Summary
{
"riskFlags": {
"touchesBash": false,
"matchAllTools": true,
"touchesFileWrites": false
},
"typeStats": {
"command": 14
},
"eventStats": {
"Stop": 1,
"PreCompact": 1,
"PreToolUse": 1,
"SessionEnd": 1,
"PostToolUse": 1,
"Notification": 1,
"SessionStart": 1,
"SubagentStop": 1,
"TeammateIdle": 1,
"SubagentStart": 1,
"TaskCompleted": 1,
"UserPromptSubmit": 1,
"PermissionRequest": 1,
"PostToolUseFailure": 1
},
"originCounts": {
"absolutePaths": 0,
"pluginScripts": 14,
"projectScripts": 0
},
"timeoutStats": {
"commandsWithoutTimeout": 0
}
}Stats
Parent Repo Stars40
Parent Repo Forks6
Last CommitFeb 15, 2026