[BUG] CLI output becomes corrupted with unreadable/garbled tokens until restart
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?
While using Claude Code in the terminal, the assistant output becomes visually corrupted: random unreadable/garbled tokens and stray characters start appearing inside otherwise normal text. This makes the response difficult to read. The issue persists for subsequent output and is only resolved by restarting the Claude Code CLI.
From the screenshot, the corruption appears inline within regular prose rather than as a normal encoding failure for the entire line. It looks like rendering/output corruption in the terminal stream.
What Should Happen?
Claude Code should render responses cleanly in the terminal, without inserting random unreadable symbols or broken tokens into the text. Output should remain stable across the session and should not require restarting the CLI.
Error Messages/Logs
Steps to Reproduce
- Open Claude Code in a terminal.
- Start a normal conversation and let Claude generate a longer multi-line response.
- In my case, this appeared while Claude was outputting Russian/Cyrillic text, but the root cause may be general terminal rendering/output corruption.
- After some output, random unreadable/garbled characters began appearing inline in the response.
- Continue interacting in the same session: the corruption persists.
- Restart the Claude Code CLI.
- After restart, the output returns to normal.
Claude Model
Opus
Is this a regression?
No, this never worked
Last Working Version
_No response_
Claude Code Version
2.1.101
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Terminal.app (macOS)
Additional Information
Restarting the CLI immediately fixes the problem, but only temporarily.
No clear runtime error was displayed.
The issue affects readability of normal assistant responses.
It may be related to terminal rendering, unicode/Cyrillic handling, ANSI styling, or stream corruption during long responses.
I have attached a screenshot showing the corrupted output.
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗