npx claudepluginhub rand/disciplined-process-plugin --plugin disciplined-processDefined in hooks/hooks.json
{
"Stop": [
{
"hooks": [
{
"type": "command",
"command": "\"${CLAUDE_PLUGIN_ROOT}/scripts/hook-dispatch.sh\" session-end-check",
"timeout": 10000,
"blocking": false
}
],
"description": "Check for uncommitted changes and open tasks before session end"
}
],
"PreToolUse": [
{
"hooks": [
{
"type": "prompt",
"prompt": "BLOCKING: Before committing, verify that all relevant tests pass. If you haven't run tests for the changes being committed, run them now. Do not proceed with the commit until tests pass. If there are no tests for the changed code, note this as a gap.",
"blocking": true
}
],
"matcher": "Bash(git commit*)",
"description": "Enforce tests pass before commit"
},
{
"hooks": [
{
"type": "command",
"command": "\"${CLAUDE_PLUGIN_ROOT}/scripts/hook-dispatch.sh\" spec-info",
"timeout": 3000,
"blocking": true
}
],
"matcher": "Edit(*)|Write(*)",
"description": "Phase-aware spec reference gate for implementation files"
},
{
"hooks": [
{
"type": "command",
"command": "bd sync --flush-only 2>/dev/null || true",
"timeout": 15000,
"blocking": false
}
],
"matcher": "Bash(git push*)",
"description": "Sync task tracker before push"
}
],
"PostToolUse": [
{
"hooks": [
{
"type": "command",
"command": "\"${CLAUDE_PLUGIN_ROOT}/scripts/hook-dispatch.sh\" trace-validator",
"timeout": 5000,
"blocking": false
}
],
"matcher": "Edit(*.py)|Edit(*.ts)|Edit(*.tsx)|Edit(*.js)|Edit(*.jsx)|Edit(*.go)|Edit(*.rs)|Edit(*.zig)",
"description": "Validate spec trace markers after implementation edits"
},
{
"hooks": [
{
"type": "command",
"command": "\"${CLAUDE_PLUGIN_ROOT}/scripts/hook-dispatch.sh\" trace-validator",
"timeout": 5000,
"blocking": false
}
],
"matcher": "Write(*.py)|Write(*.ts)|Write(*.tsx)|Write(*.js)|Write(*.jsx)|Write(*.go)|Write(*.rs)|Write(*.zig)",
"description": "Validate spec trace markers after file writes"
}
],
"SessionStart": [
{
"hooks": [
{
"type": "command",
"command": "\"${CLAUDE_PLUGIN_ROOT}/scripts/session-start.sh\"",
"timeout": 10000,
"blocking": false
}
],
"description": "Initialize disciplined process, detect tracker, check MCP health"
}
],
"UserPromptSubmit": [
{
"hooks": [
{
"type": "command",
"command": "\"${CLAUDE_PLUGIN_ROOT}/scripts/hook-dispatch.sh\" phase-emitter",
"timeout": 2000,
"blocking": false
}
],
"description": "Inject DP phase context and workflow guidance"
}
]
}"Executes Node.js scripts for batch linting/extraction/aggregation on Stop, config protection pre-Edit/Write, post-edit accumulation/PR polling after tools, correction detection on prompts, bash session init. Touches bash/files."