[BUG] Terminal display becomes garbled and unreadable after using Claude Code
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?
After using Claude Code for a session, the terminal output becomes visually corrupted - characters render as fragmented/garbled glyphs (see attached screenshot). Text is partially missing, characters appear cut off vertically, and the output is effectively unreadable. The terminal state remains dirty even after Claude Code exits, requiring a terminal restart or reset to recover.
Claude Terminal Windows
<img width="967" height="253" alt="Image" src="https://github.com/user-attachments/assets/940d135e-97d0-4af2-927d-9fc279b8b465" />
<img width="880" height="385" alt="Image" src="https://github.com/user-attachments/assets/f8544db0-a507-4217-a402-db33dff95b0d" />
Other Terminal Windows
<img width="848" height="417" alt="Image" src="https://github.com/user-attachments/assets/b2d182dd-5f19-4b85-9a24-f4b0727d3e9f" />
What Should Happen?
Terminal output should remain cleanly rendered during and after Claude Code sessions. Exiting Claude Code should leave the terminal in a clean, usable state with no residual rendering artifacts.
Error Messages/Logs
Steps to Reproduce
- Open a terminal session (zsh on macOS).
- Start claude and use it for a typical session (tool calls, streaming output, etc.).
- Observe the terminal output gradually becoming garbled — characters appear truncated/fragmented.
- Exit Claude Code; terminal remains in the corrupted state until manually reset.
Claude Model
Opus
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
2.1.141
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Terminal.app (macOS)
Additional Information
- OS: macOS (Darwin 25.4.0)
- Shell: zsh
- Working in a project directory with an active git repo
This issue has 8 comments on GitHub. Read the full discussion on GitHub ↗