Install
1
Install the plugin$
npx claudepluginhub leejaedus/pepcode --plugin pepcodeWant just this hook?
Add to a custom plugin, then install with one command.
Risk Indicators
Executes bash commandsMatches all tools
Source
Defined in hooks/hooks.json
Configuration
{
"Stop": [
{
"hooks": [
{
"type": "command",
"command": "node \"$HOME/.claude/hooks/pepcode/hook-boot.cjs\" persistent-mode.cjs",
"timeout": 5
}
],
"matcher": "*"
}
],
"PreCompact": [
{
"hooks": [
{
"type": "command",
"command": "node \"$HOME/.claude/hooks/pepcode/hook-boot.cjs\" pre-compact.mjs",
"timeout": 10
},
{
"type": "command",
"command": "node \"$HOME/.claude/hooks/pepcode/hook-boot.cjs\" project-memory-precompact.mjs",
"timeout": 5
}
],
"matcher": "*"
}
],
"PreToolUse": [
{
"hooks": [
{
"type": "command",
"command": "node \"$HOME/.claude/hooks/pepcode/hook-boot.cjs\" pre-tool-enforcer.mjs",
"timeout": 3
}
],
"matcher": "*"
}
],
"SessionEnd": [
{
"hooks": [
{
"type": "command",
"command": "node \"$HOME/.claude/hooks/pepcode/hook-boot.cjs\" session-end.mjs",
"timeout": 10
}
],
"matcher": "*"
}
],
"PostToolUse": [
{
"hooks": [
{
"type": "command",
"command": "node \"$HOME/.claude/hooks/pepcode/hook-boot.cjs\" post-tool-verifier.mjs",
"timeout": 3
},
{
"type": "command",
"command": "node \"$HOME/.claude/hooks/pepcode/hook-boot.cjs\" project-memory-posttool.mjs",
"timeout": 3
}
],
"matcher": "*"
}
],
"SessionStart": [
{
"hooks": [
{
"type": "command",
"command": "node \"${CLAUDE_PLUGIN_ROOT}/scripts/session-start.mjs\"",
"timeout": 5
},
{
"type": "command",
"command": "node \"${CLAUDE_PLUGIN_ROOT}/scripts/project-memory-session.mjs\"",
"timeout": 5
}
],
"matcher": "*"
},
{
"hooks": [
{
"type": "command",
"command": "node \"${CLAUDE_PLUGIN_ROOT}/scripts/setup-init.mjs\"",
"timeout": 30
}
],
"matcher": "init"
},
{
"hooks": [
{
"type": "command",
"command": "node \"${CLAUDE_PLUGIN_ROOT}/scripts/setup-maintenance.mjs\"",
"timeout": 60
}
],
"matcher": "maintenance"
}
],
"SubagentStop": [
{
"hooks": [
{
"type": "command",
"command": "node \"$HOME/.claude/hooks/pepcode/hook-boot.cjs\" subagent-tracker.mjs stop",
"timeout": 5
}
],
"matcher": "*"
}
],
"SubagentStart": [
{
"hooks": [
{
"type": "command",
"command": "node \"$HOME/.claude/hooks/pepcode/hook-boot.cjs\" subagent-tracker.mjs start",
"timeout": 3
}
],
"matcher": "*"
}
],
"UserPromptSubmit": [
{
"hooks": [
{
"type": "command",
"command": "node \"$HOME/.claude/hooks/pepcode/hook-boot.cjs\" keyword-detector.mjs",
"timeout": 5
},
{
"type": "command",
"command": "node \"$HOME/.claude/hooks/pepcode/hook-boot.cjs\" skill-injector.mjs",
"timeout": 3
}
],
"matcher": "*"
}
],
"PermissionRequest": [
{
"hooks": [
{
"type": "command",
"command": "node \"$HOME/.claude/hooks/pepcode/hook-boot.cjs\" permission-handler.mjs",
"timeout": 5
}
],
"matcher": "Bash"
}
]
}Summary
{
"riskFlags": {
"touchesBash": true,
"matchAllTools": true,
"touchesFileWrites": false
},
"typeStats": {
"command": 16
},
"eventStats": {
"Stop": 1,
"PreCompact": 2,
"PreToolUse": 1,
"SessionEnd": 1,
"PostToolUse": 2,
"SessionStart": 4,
"SubagentStop": 1,
"SubagentStart": 1,
"UserPromptSubmit": 2,
"PermissionRequest": 1
},
"originCounts": {
"absolutePaths": 0,
"pluginScripts": 4,
"projectScripts": 0
},
"timeoutStats": {
"commandsWithoutTimeout": 0
}
}Stats
Stars0
Forks0
Last CommitFeb 19, 2026
Actions