Overview
PatchPilot is pivoting from an MCP server to a Claude Code pre-execution hook.
Why
- MCP requires manual invocation (user must ask)
- Hook is automatic (intercepts before execution)
- Simpler installation (single settings.json entry)
- Global protection across all chats
Acceptance Criteria
Hook Input Format
{
"hook_event_name": "PreToolUse",
"tool_name": "Bash",
"tool_input": {
"command": "npm install lodash@4.17.0"
}
}
Hook Output Format
{
"hookSpecificOutput": {
"hookEventName": "PreToolUse",
"permissionDecision": "allow" | "deny" | "ask",
"permissionDecisionReason": "..."
}
}
Priority: P0 (blocks all other work)
Overview
PatchPilot is pivoting from an MCP server to a Claude Code pre-execution hook.
Why
Acceptance Criteria
Hook Input Format
{ "hook_event_name": "PreToolUse", "tool_name": "Bash", "tool_input": { "command": "npm install lodash@4.17.0" } }Hook Output Format
{ "hookSpecificOutput": { "hookEventName": "PreToolUse", "permissionDecision": "allow" | "deny" | "ask", "permissionDecisionReason": "..." } }Priority: P0 (blocks all other work)