CLI rendering: chat panel becomes unreadable / Unicode-mangled mid-session

Status Fixed / completed
Reported on v2.1.143
Maintainer reply None cached
Activity 7 comments · opened May 17, 2026 · closed May 27, 2026

What happened

During an active Claude Code session, the chat panel text rendered into garbled / unreadable characters (looks like a Unicode or terminal-redraw glitch). The session was still responsive — the model continued processing tool calls and responses — but every line in the chat panel was visually corrupted to the point of being unreadable. Scrolling did not recover. A screenshot is available; happy to attach via comment.

Environment

  • Claude Code version: 2.1.143
  • OS: macOS 26.1 (build 25B78), Darwin 25.1.0
  • Terminal: VS Code integrated terminal (TERM_PROGRAM=vscode)
  • Shell: zsh
  • Model: Opus 4.7 (1M context)

Session characteristics when it broke

  • Long-running session (several hours)
  • Many tool calls of mixed types: Bash, Read, Write, Edit, MCP browser (Playwright), MCP Linear, MCP Supabase, MCP Railway
  • Mixed-content rendering throughout — long curl bodies, base64/binary-ish output from git, image reads, JSON blobs
  • Conversation included foreign characters (Bahasa Malaysia text in commit messages, em-dashes, Unicode arrows)
  • Frequent ANSI-color output from CLI tools (railway logs, gh, vercel)

Steps to reproduce

Not deterministic. Triggers seem to involve a long session with heavy mixed-encoding output (binary blobs, ANSI escapes, multibyte strings) all flowing through the chat panel. Eventually the terminal renderer drops into the broken state.

Expected

Chat panel text continues to render normally even after long sessions / mixed-encoding content.

Actual

Chat panel becomes unreadable mid-session — see attached screenshot.

Workarounds attempted

To be confirmed by reporter:

  • \clear\ and resize the terminal window (forces redraw)
  • Detach and reattach the session
  • Switch terminals (VS Code integrated → Terminal.app / iTerm2)

Notes

  • Same issue may correlate with the VS Code integrated terminal specifically (\TERM_PROGRAM=vscode\); we haven't reproduced in a standalone terminal yet.
  • The model side is fine — only the rendering layer is affected.

View original on GitHub ↗

7 Comments

github-actions[bot] · 3 months ago

Found 3 possible duplicate issues:

  1. https://github.com/anthropics/claude-code/issues/59915
  2. https://github.com/anthropics/claude-code/issues/59163
  3. https://github.com/anthropics/claude-code/issues/59401

This issue will be automatically closed as a duplicate in 3 days.

  • If your issue is a duplicate, please close it and 👍 the existing issue instead
  • To prevent auto-closure, add a comment or 👎 this comment

🤖 Generated with Claude Code

scottbraddon · 3 months ago

Same issue for me

<img width="1140" height="424" alt="Image" src="https://github.com/user-attachments/assets/2710b24b-cf0a-4354-a0b9-e6338cedbb6e" />

blackholegalaxy · 3 months ago

Same here. Version 2.1.143 on macos

<img width="886" height="231" alt="Image" src="https://github.com/user-attachments/assets/0d572c31-3732-49ca-b27e-8f1f005845fb" />

prafaolo · 3 months ago

Same here on Claude Code 2.1.144, macOS Sequoia 15.7.3

<img width="1006" height="623" alt="Image" src="https://github.com/user-attachments/assets/d2ae32e8-fe81-4845-9ae5-a035e50457de" />

erikrowens · 3 months ago

Adding a data point — same symptom on a different platform, which suggests this isn't macOS-specific.

Environment

  • Claude Code: 2.1.148
  • OS: Linux 6.6.114.1 (WSL2 on Windows 11)
  • Terminal: VS Code integrated terminal (TERM_PROGRAM=vscode, VSCODE_INJECTION=1, TERM=xterm-256color, COLORTERM=truecolor)
  • Shell: zsh
  • Model: Opus 4.7 (1M context)

Notes

  • Symptom matches the report exactly: chat panel renders into unreadable / Unicode-mangled characters mid-session, model side keeps working fine.
  • Reinforces the TERM_PROGRAM=vscode correlation — same renderer break across macOS 26.1 and WSL2/Linux, common factor is the VS Code integrated terminal.
  • Sessions where I see it tend to be long-running with heavy mixed content (binary blobs from git/curl, ANSI from gh/docker, multibyte chars in commit messages and docs). Consistent with the trigger pattern in the original report.
  • Have not yet tried switching to a standalone terminal (Windows Terminal directly into WSL) to confirm the workaround on Linux — will follow up if I get a repro after switching.

Happy to attach a screenshot if useful.

CTroncoso11 · 3 months ago

Same here.

MacOS: Tahoe 26.3
VS Code: 1.121.0
Ghostty: 1.3.1
Claude Code: 2.1.150

<img width="956" height="536" alt="Image" src="https://github.com/user-attachments/assets/c89b1137-0e53-4b52-a54d-e95be2625ad8" />

github-actions[bot] · 1 month ago

This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.