Thinking indicator uses hardcoded RGB color, bypasses terminal palette — no config option (accessibility)
Summary
The \"thinking\" indicator (e.g. ✺ Thinking… (6s · thinking)) uses hardcoded true-color RGB escape sequences (\e[38;2;R;G;Bm) rather than ANSI palette colors. This means it completely bypasses the user's terminal color palette and cannot be customized.
Why this matters
The standard mechanism for users to control terminal colors is the 16-color ANSI palette (configurable in every terminal emulator). Hardcoding RGB values breaks this contract:
- Users who have remapped ANSI red (Color 1 / Color 9) to something more readable get no benefit — the indicator ignores their settings
- Users with color vision differences, low contrast sensitivity, or other accessibility needs cannot adjust the indicator color
- There is no configuration option in
settings.jsonor anywhere else to override it
Steps to reproduce
- In GNOME Terminal (or any terminal emulator), remap ANSI Color 1 to a non-red color via
gsettingsor profile settings - Run Claude Code and observe the thinking indicator
- The indicator still renders in the hardcoded dark red RGB value, ignoring the palette remap
Expected behavior
The thinking indicator should either:
- Use ANSI palette color codes (
\e[31m/\e[91m) so users can remap them via their terminal palette, or - Expose a configuration option in
settings.jsonto set the indicator color
Environment
- Claude Code CLI
- GNOME Terminal 3.44.0 / GNOME 42
- Linux
Accessibility note
This was discovered by a user with visibility/accessibility requirements who was trying to remap the indicator color to a higher-contrast golden yellow. The hardcoded RGB completely blocks that customization path.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗