shanraisshan/claude-code-hooks
claude code hooks - adding voice on each hook
ARCHETYPE
Automator
Hooks on every lifecycle event: format, lint, notify, log.
Copy this rig
# review before running: this installs third-party code $ claude mcp add elicit -- npx -y @blizzy/mcp-elicit $ npx degit shanraisshan/claude-code-hooks/.claude ./rig-claude-code-hooks # inspect, then merge into .claude/
MCP servers are added to Claude Code at local scope; env vars are shown as YOUR_… placeholders — we never store values. Files are fetched with degit into a separate folder so you can review before merging.
$ claude mcp add elicit -- npx -y @blizzy/mcp-elicit $ curl -fsSL --create-dirs -o .claude/agents/claude-code-hook-agent.md https://raw.githubusercontent.com/shanraisshan/claude-code-hooks/main/.claude/agents/claude-code-hook-agent.md $ curl -fsSL --create-dirs -o .claude/agents/claude-code-test-agent.md https://raw.githubusercontent.com/shanraisshan/claude-code-hooks/main/.claude/agents/claude-code-test-agent.md $ curl -fsSL --create-dirs -o .claude/agents/workflow-changelog-agent.md https://raw.githubusercontent.com/shanraisshan/claude-code-hooks/main/.claude/agents/workflows/workflow-changelog-agent.md
Merge into .claude/settings.json (project) or ~/.claude/settings.json (user). Hook commands reference scripts in the source repo — copy those too.
{
"hooks": {
"PreToolUse": [
{
"matcher": "*",
"hooks": [
{
"type": "command",
"command": "python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py"
},
{
"type": "command",
"command": "python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/demo-hooks.py"
}
]
}
]
}
} MCP servers (1)
| server | source | est. tokens |
|---|---|---|
| @blizzy/mcp-elicit · "elicit" | npm | 2.5k |
Subagents (3)
| claude-code-hook-agent model: opus | Plays agent-specific sounds for the 6 hooks that actually fire in agent sessions |
| claude-code-test-agent | — |
| workflow-changelog-agent model: opus | Research agent that fetches Claude Code docs, reads local repo files, and analyzes changelog drift for the hooks project |
Hooks (60)
| event | matcher | runs |
|---|---|---|
| PreToolUse | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| PermissionRequest | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| PostToolUse | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| PostToolUseFailure | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| PostToolBatch | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| UserPromptSubmit | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| UserPromptExpansion | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| Notification | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| MessageDisplay | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| Stop | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| SubagentStart | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| SubagentStop | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| PreCompact | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| PostCompact | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| SessionStart | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| SessionEnd | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| Setup | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| TeammateIdle | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| TaskCreated | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| TaskCompleted | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| ConfigChange | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| WorktreeCreate | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| InstructionsLoaded | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| WorktreeRemove | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| Elicitation | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| ElicitationResult | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| StopFailure | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| CwdChanged | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| FileChanged | .envrc|.env|.env.local | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
| PermissionDenied | * | python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py |
Slash commands (3)
/commit/workflows/workflow-add-hook/workflows/workflow-changelog
Similar rigs
cocoindex-io/cocoindex
Incremental engine for long horizon agents 🌟 Star if you like it!
Automator 7.3k tok ·
FailproofAI/failproofai
Observability and enforcement for AI agent harnesses. Capture every run and runtime reliability with policy enforcement.
Automator 22.9k tok ·
caliber-ai-org/ai-setup
Continuously sync your AI setups with one command. Codebase tailor suited agent skills, MCPs and config files for Claude Code, Cursor, and Codex.
Automator 3.2k tok ·
asklokesh/loki-mode
Autonomous software factory. Give it a GitHub issue, a spec or a one-line task; get back a pull request with a signed receipt anyone can re-check offline. Runs on your machine with your own keys: Claude, Codex, OpenCode.
Automator 8.2k tok ·