Skip to content

Light theme: Claude Code plan/question text unreadable (white-on-white) until /theme is run inside the CLI #83

Description

@adamatan

Bug

In termic's light theme, body text from Claude Code's own plan-mode / question UI (e.g. "Ask user a question" panels) renders in white/near-white, nearly invisible against the light terminal background. The panel title (highlighted) and the numbered options' bold/gray text stay legible; only the plain description paragraph is affected.

Screenshots

Claude response - barely visible

Image

Highlighted response reveals the white text (Which repo...)

Image

Root cause

This text isn't drawn by termic - it's Claude Code's own Ink UI, streamed into the PTY. Claude Code (like other modern CLIs) styles some text with 24-bit truecolor ANSI (\x1b[38;2;r;g;bm), which xterm.js paints as literal RGB. termic's TERMINAL_THEMES.light palette (src/store/prefs.ts) only remaps the 16 indexed ANSI colors, so truecolor sequences bypass it entirely.

termic sets COLORFGBG on PTY spawn as a light/dark hint, but Claude Code doesn't honor that convention - it keeps its own theme in ~/.claude, switched via its /theme command. There's already a one-time tooltip about this in the theme picker (src/components/UnifiedBar.tsx:557), but it's easy to miss and nothing re-surfaces it when a mismatch is actually happening.

Repro

  1. Set termic to light theme.
  2. Have Claude Code trigger a plan-mode/question prompt (e.g. AskUserQuestion) whose CLI-internal theme is still dark.
  3. Body paragraph text is unreadable (white on cream).

Possible directions

Not sure, actually. We don't control Claude's own theme. I will investigate - ideas welcome.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions