Session-summary text renders garbled (box-drawing/Cyrillic glyphs) in Cursor terminal — Claude Code 2.1.142/2.1.143
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Random letters in the session-summary block (the "Worked for Ns / Pushed N commits" status text shown after a turn) render as box-drawing and Cyrillic-looking glyphs instead of the intended ASCII characters. Same word renders differently in different positions, so it isn't a simple 1-to-1 font fallback — looks like corruption in the emitted byte stream or in the styled-text rendering path.
First seen: Week of 11–16 May 2026. Same machine + terminal setup has run cleanly for months. Correlates with the rapid release cadence this week (2.1.139 → 2.1.143 in five days).
Affects multiple users: Confirmed on at least two independent machines (myself plus another member of my group), so it isn't local config.
I also submitted this via the in-app /bug channel earlier in the week. Still seeing it on latest, so filing publicly so it's tracked.
See screenshot attached for the visible corruption.
<img width="350" height="314" alt="Image" src="https://github.com/user-attachments/assets/f5428b9c-a723-47a9-8d84-c99316406e01" />
What Should Happen?
Plain ASCII text in the session-summary block, like this:
Published. Pushed 4 commits (821914e19..d7329554c) + isbox hint (655215f08) to origin/main. Pushed 2 handoffs (#1r1, #1r — both Phase b local-LLM migrations; Y only). Total P: 16 files. Updating files left for now: .
Instead, letters u, s, e, o (inconsistently) are replaced with г, └, ┘, ┐, etc. The same letter in the same word renders differently between occurrences, which rules out a clean font-substitution.
Error Messages/Logs
Steps to Reproduce
- Launch
claudeinside Cursor's integrated terminal (TERM_PROGRAM=vscode). - Run any task that produces the end-of-turn summary block — e.g. a
/shipor/h2cstyle command, anything that triggers the "Pushed N commits / Worked for Ns" output. - Observe garbled letters in the summary text.
The corruption is in the rendered summary text only. Other output (tool results, regular agent prose) renders cleanly.
Claude Model
Opus
Is this a regression?
Yes, this worked in a previous version
Last Working Version
2.1.138
Claude Code Version
2.1.143
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Cursor
Additional Information
- Claude Code: 2.1.143 (also reproduced on 2.1.142)
- Terminal: Cursor integrated terminal —
TERM_PROGRAM=vscode,TERM_PROGRAM_VERSION=3.4.17 - TERM:
xterm-256color - COLORTERM:
truecolor - Locale:
en_US.UTF-8across allLC_* - OS: macOS 15.7.7 (Darwin 24.6.0)
- Hardware: Apple Silicon — M3 Ultra (Mac Studio)
- Node: installed via npm-global
Hypothesis / extra context:
Reproduces in Cursor's xterm.js terminal renderer. I haven't yet confirmed whether iTerm2 / Apple Terminal show the same corruption — if they don't, that suggests Claude Code is emitting Unicode codepoints (e.g. styled / mathematical-italic variants) that xterm.js doesn't fall back gracefully on. If iTerm2 also shows it, the cause is in the byte stream itself.
Workaround: Pinning back to @anthropic-ai/claude-code@2.1.138 appears to avoid it (needs confirmation).
This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗