Hook status messages create noisy output with repeated 'running stop hook' announcements
Resolved 💬 3 comments Opened Jan 16, 2026 by chriswhsu Closed Jan 16, 2026
Problem
When using hooks (e.g., stop hooks for iTerm2 profile switching), Claude Code prints "running stop hook" for every hook invocation. When multiple tool calls complete in quick succession, this creates noisy repeated output:
✢ Kneading… (ctrl+c to interrupt · running stop hook)
✢ Kneading… (ctrl+c to interrupt · running stop hook)
· Kneading… (ctrl+c to interrupt · running stop hook)
· Kneading… (ctrl+c to interrupt · running stop hook)
The hook script itself can be debounced, but Claude Code still announces each invocation.
Suggested solutions
Any of these would help:
- Quiet/silent mode for hooks - config option to suppress status messages
- Built-in debouncing - don't announce repeated hook runs within a short window
- Config option -
"announce": falsein hook configuration
Use case
Using hooks for visual feedback (e.g., changing iTerm2 profile when Claude is waiting for input) works great functionally, but the repeated announcements add clutter to the output.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗