ConfigChange
25shanraisshan/claude-code-best-practice
Hook Claude Code
One of 50 in settings.json
ConfigChange hook: python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py
1,431 tagged ai, measured the same way as everything else here.
Browse within: agentic-workflow 151agentic-coding 108agentic-engineering 103ai-memory 50ai-coding 48plugin 48chatgpt 45context-engineering 43agent-memory 41bun 37agentic-development 34hooks 34artificial-intelligence 28claude-ai 26
shanraisshan/claude-code-best-practice
Hook Claude Code
One of 50 in settings.json
ConfigChange hook: python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py
shanraisshan/claude-code-best-practice
Hook Claude Code
One of 50 in settings.json
WorktreeCreate hook: python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py
shanraisshan/claude-code-best-practice
Hook Claude Code
One of 50 in settings.json
WorktreeRemove hook: python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py
shanraisshan/claude-code-best-practice
Hook Claude Code
One of 50 in settings.json
InstructionsLoaded hook: python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py
shanraisshan/claude-code-best-practice
Hook Claude Code
One of 50 in settings.json
ElicitationResult hook: python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py
shanraisshan/claude-code-best-practice
Hook Claude Code
One of 50 in settings.json
StopFailure hook: python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py
shanraisshan/claude-code-best-practice
Hook Claude Code
One of 50 in settings.json
CwdChanged hook: python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py
shanraisshan/claude-code-best-practice
Hook Claude Code
One of 50 in settings.json
FileChanged hook matching .envrc|.env|.env.local: python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py
shanraisshan/claude-code-best-practice
Hook Claude Code
One of 50 in settings.json
PermissionDenied hook: python3 ${CLAUDE_PROJECT_DIR}/.claude/hooks/scripts/hooks.py
shanraisshan/claude-code-best-practice
Hook Claude Code
One of 50 in settings.json
Runs on the FileChanged event for .envrc, .env and .env.local tool calls, executing hooks.py via python3. From shanraisshan/claude-code-best-practice.
Hook
Part of mem0
Runs when a session starts on startup, resume, clear and compact, executing hook.py via python3 with --plugin-data-dir. From mem0ai/mem0.
Hook
Part of mem0
Runs before the context is compacted, executing hook.py via python3 with --reason and --plugin-data-dir. From mem0ai/mem0.
Hook
Part of mem0
Runs when a tool call fails, executing hook.py via python3 with --plugin-data-dir. From mem0ai/mem0.
Hook Claude Code
Part of mempalace
Runs when the agent finishes a response, executing mempal-stop-hook.sh via bash. From MemPalace/mempalace.
Hook Claude Code
Part of mempalace
Runs when a session ends, executing mempal-session-end-hook.sh via bash. From MemPalace/mempalace.
Hook Claude Code
Part of mempalace
Runs before the context is compacted, executing mempal-precompact-hook.sh via bash. From MemPalace/mempalace.
Hook
One of 4 in hooks.json
Runs when a session starts, executing announce.sh. From aaif-goose/goose.
Hook
One of 4 in hooks.json
Runs when you submit a prompt, before the agent sees it, executing announce.sh. From aaif-goose/goose.
Hook
One of 4 in hooks.json
Runs after a tool call finishes for developer__shell and developer__text_editor tool calls, executing announce.sh. From aaif-goose/goose.
Hook Claude Code
Part of hyperframes
Runs before the agent uses a tool for Bash tool calls, running node -e ". From heygen-com/hyperframes.
Hook
Part of agentmemory
Runs when a session starts, executing session-start.mjs via node. From rohitg00/agentmemory.
Hook
Part of agentmemory
Runs when you submit a prompt, before the agent sees it, executing prompt-submit.mjs via node. From rohitg00/agentmemory.
Hook
Part of agentmemory
Runs before the agent uses a tool for Edit, Write, Read, Glob and Grep tool calls, executing pre-tool-use.mjs via node. From rohitg00/agentmemory.
Hook Claude Code
One of 2 in settings.json
Runs before the agent uses a tool for Bash tool calls, executing enforce-uv.sh and validate_pr_body.py with --directory and --no-project (2 commands). From mlflow/mlflow.
At most 3 mods per repository are shown here, and a mod shipped inside a plugin is left to that plugin's page — the rest are on their repository pages: