[FEATURE] Distinct default styling for hook output (separate from conversation transcript)
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
Hook stderr output renders identically to Claude's conversation responses. There's no visual distinction between automated hook messages and Claude's actual reasoning, making the terminal hard to scan when hooks are active.
With multiple hooks (code quality, architecture enforcement, bash guards, stop validation), the terminal mixes hook output with Claude's responses. Users can't quickly tell "this came from an automated check" vs "Claude is saying this."
Proposed Solution
The CLI renders hook stderr with distinct styling automatically. Possible approaches:
- Dimmed/gray text — similar to how tool metadata is rendered
- A
stylefield in hook config — e.g."style": "dimmed"or"style": "info" - Automatic
[hook]badge in a distinct color before hook output
This is complementary to #30635 — ANSI support lets hooks opt into custom colors, while this request provides sensible defaults without any hook-side changes.
Alternative Solutions
Manually prefixing all hook stderr messages with [hook] — helps scanning but doesn't change visual weight.
Priority
Low - Nice to have
Feature Category
Other
Use Case Example
_No response_
Additional Context
_No response_
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗