claude-code - 💡(How to fix) Fix Light-mode UX: past user messages are hard to distinguish from assistant output when scrolling back [2 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#56316Fetched 2026-05-06 06:31:22
View on GitHub
Comments
2
Participants
2
Timeline
4
Reactions
0
Author
Timeline (top)
commented ×2labeled ×2

Root Cause

  • iTerm2 triggers with regex ^> .* and a Highlight Line action: unreliable inside a TUI because Claude Code redraws regions and can overwrite the highlight.
  • iTerm ⌘F search for > : works, but requires a manual search every time.
  • Switching terminals (Ghostty, WezTerm, Kitty): doesn't help — the limitation isn't terminal-side, it's that Claude Code's TUI renders user and assistant lines with the same styling.

Fix Action

Fix / Workaround

Workarounds I've tried

RAW_BUFFERClick to expand / collapse

Problem

When using Claude Code in a light-mode terminal, scrolling back through a long session to find what I sent (versus what Claude responded) is difficult. Past user messages are visually almost identical to surrounding assistant output — both are plain text on the same background. The only marker is the > prefix, which is easy to miss when skimming.

The active input box has nice highlighting (light blue background on the line being typed), but that styling disappears the moment a message is submitted, so it doesn't help with scroll-back navigation.

Use case

Long sessions where I want to:

  • Re-read what I asked Claude two messages ago
  • Find the exact phrasing of a past prompt to copy/edit
  • Remind myself of the thread of a multi-turn conversation

Right now this means slowly scanning for > characters, which is tedious in a terminal full of mixed output.

Workarounds I've tried

  • iTerm2 triggers with regex ^> .* and a Highlight Line action: unreliable inside a TUI because Claude Code redraws regions and can overwrite the highlight.
  • iTerm ⌘F search for > : works, but requires a manual search every time.
  • Switching terminals (Ghostty, WezTerm, Kitty): doesn't help — the limitation isn't terminal-side, it's that Claude Code's TUI renders user and assistant lines with the same styling.

Proposed solutions (either would work)

  1. Theme option for past user messages: a setting (e.g. in settings.json) that gives committed user messages a subtle background tint, similar to how Cursor, Warp, and the ChatGPT desktop app distinguish user vs assistant turns. Light-mode and dark-mode variants both helpful.
  2. Emit a custom ANSI/OSC marker on user message boundaries: lets terminals (iTerm, WezTerm) hook into a clean, stable signal to style messages themselves.

Option 1 is more universal since not every user has a triggers-capable terminal.

Environment

  • Claude Code v2.1.128
  • iTerm2, light mode, macOS
  • Affects any light-mode terminal user

extent analysis

TL;DR

Implement a theme option for past user messages to distinguish them from assistant output with a subtle background tint.

Guidance

  • Consider adding a userMessageBackground setting in settings.json to allow users to customize the background color of their past messages.
  • To verify the effectiveness of this solution, test it with different light-mode terminals and ensure that the background tint is subtle enough not to be distracting.
  • If implementing the custom ANSI/OSC marker solution, ensure that it is compatible with various terminals, including iTerm2, WezTerm, and Kitty.
  • Evaluate the trade-offs between the two proposed solutions, considering factors such as universality, customizability, and terminal compatibility.

Example

// settings.json
{
  "userMessageBackground": "#f0f0f0" // light gray background for user messages
}

Notes

The solution should be tested with different terminal emulators and operating systems to ensure compatibility and consistency.

Recommendation

Apply the theme option for past user messages, as it is a more universal solution that does not rely on terminal-specific features.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

claude-code - 💡(How to fix) Fix Light-mode UX: past user messages are hard to distinguish from assistant output when scrolling back [2 comments, 2 participants]