hook

SKILL.md

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

  1. Read ~/.claude/settings.json
  2. Parse the hooks configuration
  3. Check ~/.claude/hooks/.disabled for disabled hooks
  4. Display in a formatted table:
    • Hook type (SessionStart, PreToolUse, PostToolUse, and others)
    • Matcher pattern
    • Command/Prompt
    • Status (enabled/disabled)

/hook list

  1. Scan ~/.claude/hooks/ directory
  2. List each hook file with:
    • Filename
    • Description (from docstring)
    • Trigger type
    • Last modified

/hook disable [hook-name]

  1. Create/update ~/.claude/hooks/.disabled file
  2. Add the hook name to the disabled list
  3. Hooks check this file before running
  4. Note: Changes persist until re-enabled

/hook enable [hook-name]

  1. Read ~/.claude/hooks/.disabled file
  2. Remove the hook name from the disabled list
  3. Confirm the hook is re-enabled

/hook profile

  1. Read ~/.claude/logs/hook_metrics.jsonl
  2. Calculate average execution time per hook
  3. Show:
    • Hook name
    • Avg execution time (ms)
    • Total calls
    • Success rate
    • Token impact estimate

/hook logs [hook-name]

  1. Find log files in ~/.claude/logs/
  2. Filter by hook name
  3. Show last 20 entries
  4. 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)
Weekly Installs
24
GitHub Stars
75
First Seen
Jan 25, 2026
Installed on
opencode23
codex23
gemini-cli23
claude-code22
cursor22
continue21