Hook Management System
Manage Claude Code hooks for the current session.
When to use
-
When you need to check the status of Claude Code hooks
-
When you want to temporarily disable a noisy or problematic hook
-
When debugging hook behavior or performance issues
-
When monitoring hook execution metrics
Usage
/hook status # Show all hooks and their status /hook list # List available hooks with descriptions /hook disable [hook-name] # Temporarily disable a hook /hook enable [hook-name] # Re-enable a disabled hook /hook profile # Show hook performance metrics /hook logs [hook-name] # View recent logs for a hook
Instructions
When this command is invoked:
/hook status
-
Read ~/.claude/settings.json
-
Parse the hooks configuration
-
Check ~/.claude/hooks/.disabled for disabled hooks
-
Display in a formatted table:
-
Hook type (SessionStart, PreToolUse, PostToolUse, and others)
-
Matcher pattern
-
Command/Prompt
-
Status (enabled/disabled)
/hook list
-
Scan ~/.claude/hooks/ directory
-
List each hook file with:
-
Filename
-
Description (from docstring)
-
Trigger type
-
Last modified
/hook disable [hook-name]
-
Create/update ~/.claude/hooks/.disabled file
-
Add the hook name to the disabled list
-
Hooks check this file before running
-
Note: Changes persist until re-enabled
/hook enable [hook-name]
-
Read ~/.claude/hooks/.disabled file
-
Remove the hook name from the disabled list
-
Confirm the hook is re-enabled
/hook profile
-
Read ~/.claude/logs/hook_metrics.jsonl
-
Calculate average execution time per hook
-
Show:
-
Hook name
-
Avg execution time (ms)
-
Total calls
-
Success rate
-
Token impact estimate
/hook logs [hook-name]
-
Find log files in ~/.claude/logs/
-
Filter by hook name
-
Show last 20 entries
-
Include timestamp, result, and any errors
Examples
Check current hook status
/hook status
Disable noisy notifications temporarily
/hook disable notification
Re-enable when ready
/hook enable notification
Check performance impact
/hook profile
Debug a specific hook
/hook logs post_tool_use
Notes
-
Disabled state uses ~/.claude/hooks/.disabled file
-
Performance data from ~/.claude/logs/hook_metrics.jsonl
-
Hooks check disabled state before executing
-
Session-based disabling (resets on restart)