Terminal Scrolling Uncontrollably During Claude Code Interaction
Resolved 💬 337 comments Opened Jul 16, 2025 by JacobGoldenArt Closed Dec 17, 2025
💡 Likely answer: A maintainer (bcherny, collaborator)
responded on this thread — see the highlighted reply below.
Bug Description
often when using claude code via cursor or vs code (in their built in terminals) the claude code terminal starts scrolling superfast by itself and often I can't stop it unless I kill the terminal tab and restart claude. Other times it will do something similar when I am trying to type my prompt and I have to repeatedly scroll down to find where I'm typing.
Environment Info
- Platform: darwin
- Terminal: cursor
- Version: 1.0.53
- Feedback ID:
Errors
[{"error":"Error: Command failed: security find-generic-password -a $USER -w -s \"Claude Code\"\nsecurity: SecKeychainSearchCopyNext: The specified item could not be found in the keychain.\n\n at genericNodeError (node:internal/errors:984:15)\n at wrappedFn (node:internal/errors:538:14)\n at checkExecSyncError (node:child_process:890:11)\n at execSync (node:child_process:962:15)\n at AI (file:///Users/daad/.nvm/versions/node/v22.0.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:728:6320)\n at file:///Users/daad/.nvm/versions/node/v22.0.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:640:16554\n at Q (file:///Users/daad/.nvm/versions/node/v22.0.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:542:14406)\n at MF (file:///Users/daad/.nvm/versions/node/v22.0.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:640:14339)\n at zX (file:///Users/daad/.nvm/versions/node/v22.0.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:640:13205)\n at MB (file:///Users/daad/.nvm/versions/node/v22.0.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:640:19174)","timestamp":"2025-07-16T18:08:48.001Z"},{"error":"Error: 1: 1 Error: End of central directory record signature not found. Either not a zip file, or file is truncated.\n at Ef (file:///Applications/Cursor.app/Contents/Resources/app/out/vs/code/node/cliProcessMain.js:52:28755)\n at file:///Applications/Cursor.app/Contents/Resources/app/out/vs/code/node/cliProcessMain.js:52:30083\n at /Applications/Cursor.app/Contents/Resources/app/node_modules/yauzl/index.js:40:7\n at /Applications/Cursor.app/Contents/Resources/app/node_modules/yauzl/index.js:190:5\n at Immediate.<anonymous> (/Applications/Cursor.app/Contents/Resources/app/node_modules/yauzl/index.js:705:38)\n at process.processImmediate (node:internal/timers:483:21) {\n code: 'Extract',\n name: 'Extract'\n}\nFailed Installing Extensions: file:///Users/daad/.nvm/versions/node/v22.0.0/lib/node_modules/%40anthropic-ai/claude-code/vendor/claude-code.vsix\n(node:77441) [DEP0168] DeprecationWarning: Uncaught N-API callback exception detected, please run node with option --force-node-api-uncaught-exceptions-policy=true to handle those exceptions properly.\n(Use `Cursor --trace-deprecation ...` to show where the warning was created)\n\n at Lq6 (file:///Users/daad/.nvm/versions/node/v22.0.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1208:5219)\n at async qq6 (file:///Users/daad/.nvm/versions/node/v22.0.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1208:2582)","timestamp":"2025-07-16T18:08:50.169Z"},{"error":"AxiosError: Request failed with status code 403\n at Hz (file:///Users/daad/.nvm/versions/node/v22.0.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:544:1070)\n at Unzip.EA (file:///Users/daad/.nvm/versions/node/v22.0.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:545:9955)\n at Unzip.emit (node:events:532:35)\n at Unzip.emit (node:domain:488:12)\n at endReadableNT (node:internal/streams/readable:1696:12)\n at process.processTicksAndRejections (node:internal/process/task_queues:82:21)\n at Pa.request (file:///Users/daad/.nvm/versions/node/v22.0.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:547:2081)\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async H04 (file:///Users/daad/.nvm/versions/node/v22.0.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1402:467)\n at async Promise.all (index 0)\n at async file:///Users/daad/.nvm/versions/node/v22.0.0/lib/node_modules/@anthropic-ai/claude-code/cli.js:1388:6358","timestamp":"2025-07-16T18:12:38.520Z"}]
337 Comments
I have this once my conversation gets too long. Very annoying and they seem to have no interest in fixing it anytime soon. Its been happening for a long time
I've experienced this as well.
Also having this even with a very small conversation in Cursor IDE.
I've experienced this too
This also happens in the windows version at MS-DOS terminal.
ditto. i've noticed it happens most when i start typing a slash command.
another issue is when using claud code plugin in cursor/vscode; when you resize the terminal (at the bottom), the claude code (top righ corner) section seems to go back to the top and start scrolling from top to bottom.
also encountering this behavior in iterm2 on osx
Common Anthropic ... this is happening for months ... FIX IT
Any news on this? It seems like a pretty common issue and makes it so that you are forced to quit and start a new session in order to stop the crazy scrolling when it starts doing it.
Genuinely surprised no one has addressed this?
pobably it is really hard fix. it definetely has something to do with terminal at least the mechanism of scrolling up or down
super annoying
this needs to be a priority fix, it really is a major issue that breaks flow and can lead to crashes. This bug even made me spend more time with competitors .
This regularly crashes my claude code sessions
I am also impacted by this, and wondering of any workarounds? Some suggest to launch cursor with
--disable-gpu, did anyone see a difference with this?Guaranteed to crash VS Code every time if not proactively restarted.
So, Claude can't fix this?
Yup, here too. Every keystroke causes the terminal to twitch upward then back down to my text input, causing "flickering" effect while typing. If it continues too long, typing fast can lead to crashing VS Code.
It's a silly problem that seems easy to solve. In diagnosing this, I found that "clear terminal" (context/overflow menu of the terminal toolbar) only clears it temporarily - it's as if Claude Code (the application) is actively redrawing the entire terminal session (and all its history) on each keystroke. That seems crazy and irrational, and doesn't seem like it could be the case - but could it be, really?
In any case, the solution may be to either have it clear the console periodically, or to (... I shudder to think it's this bad), NOT redraw the entire conversation - like, ever - but moreso to just redraw a section of it.
Or maybe this is a bug in VS Code all along - that the terminal is being improperly drawn when it gets too long, and it's VS Code that's redrawing the whole terminal, even if I say "clear terminal" (that'd be a next-level bug, but then again, ... this is Microsoft code quality we're talking about). That makes things even more difficult to diagnose.
I'm not using VS Code, just the terminal inside PyCharm, but that also happens when I use the terminal alone.
I am now cancelling my subscription to Claude Max because of this. Codex does not have this issue and neither does Gemini-CLI.
I also encourage you all to try OpenCode CLI as well.
Can I use my account, or is it only intended for APIs?
OpenCode allows you to use OAuth with Claude so that you can use your Plus/Max subscription instead of an API token, yes!
Amazing, thanks for the tip! Is this the one? https://github.com/sst/opencode
You are quite welcome! Yes, that's the one. You'll have to experiment and read the docs, it is not exactly like Claude Code but it is heavily inspired by it in a lot of ways. It supports things like MCP and other stuff just like CC does.
I am still learning to use it myself. However, on principle, I'm still cancelling my Claude Max subscription because I do not feel that Anthropic is paying enough attention to the product itself.
It seriously affects daily use!
This is not only a usability issue but now a security concern as it makes it incredibly difficult for the user to verify the actions and validate edits / actions. Considering all the latest research on Agent scheming, this needs to be patched.
I’ve stopped using Cursor’s integrated terminal to get around this. You can use other IDE’s or term2 outside of cursor. This resolved the issue for me. The issue seems to be in Cursor only for me. I use iTerm2.
It does seem odd that this wouldn’t be a level 1 priority given that it is Anthropic’s UI/UX.
I reported this issue months ago and it had only gotten worse.
Can someone promote this bug to top priority. This looped scroll can run to half an hour without stop and block off the work with service. The isue is Blocker, and have huge impact on user experience. Take your claude and ask him to fix this bloody issue it will take 10minutes. What are you waiting?
Facts. As paying users this should have been address weeks ago.
I have this issue as well.
Came to report this issue as it's been happening ever since I started using Claude Code, and decided to check if there have been existing reports about it - I would've been surprised if no one had reported this yet. There have been too many complaints about this that it's actually disappointing they haven't started fixing this already.
https://github.com/anthropics/claude-code/issues/8618
https://github.com/anthropics/claude-code/issues/8097
https://github.com/anthropics/claude-code/issues/7793
https://github.com/anthropics/claude-code/issues/5276
https://github.com/anthropics/claude-code/issues/2537
and more...
I had this problem for weeks and running claude after zellij solved my issues(thanks to https://github.com/anthropics/claude-code/issues/1495#issuecomment-3236905516)
This issue makes it hard for me to demo Claude Code to coworkers and promote adoption.
"Oh yeah it just sort of freaks out sometimes". Not the best look.
Switch to VS Code and the new Claude Code extension. It is working very well for me and improves the overall experience as it is. Cursor's built in terminal seems to be the source of the issue.
Here it is, happening in IntelliJ IDEA. See https://github.com/anthropics/claude-code/issues/9083 for details (though I'm closing that one as a duplicate of this one)
!Image
This is annoying on my mac but makes ssh sessions impossible. Agent crashes and loses all ability to log the session’s progress, messing up all future sessions for confused future agents in the project. Come on Anthropic, give anyone some of the infinite money we give you to fix this!
It happens to me even with small scrolls or short conversations, but mostly when the scroll is big, which is very annoying.
It happens on Windows and Linux.
Just to +1; resizing the Cursor/VSCode terminal vertically seems to temporarily fix it sometimes for me.
For me it happenes 100% reaibly whenever my input (prompt) would be too long, when it visually overflows. Resizing terminal influences the space available, and by proxy, if the bug is reproduced (shrinked terminal will reproduce with smaller prompt). To me it sounds like there is some library to draw on terminal, and that issue may be inside library itself.
For workaround I've been writing my prompts in scratch file in IDE and pasting them into claude. Than it goes crazy if prompt was too big, but proceeds.
been way too long of an error crazy were paying 200/mo for this
2.0.14
still:
!Image
This is happening way too frequently now and cursor shuts down abruptly.
This is make claude-code unusable for me. I can reproduce it 100% of the time now.
It is still the same after today's update, and I found that sometimes, because of this behavior, it suspends the terminal, I have to close it and start a new again. I know I can resume, but it is still causing a lot of instability.
And it happens with Windows ( I tried cmd and git bash ), mac os ( via cursor / VS Code), Linux WSL...
+1
I also have the same issue, super annoying, I have the latest CC
+1
+1
+1
+1
+1 !!
+1 using iterm2. Seems to be worst when using multiple subagents.
+1 on kitty, unusable
+1 on terminator with Ubuntu
+1, this bug exists literally for months when CC was initially released lol
+1 very obnoxious
When it goes berserk and I can’t stop it by resizing terminal or dragging scroll bar, it crashes the entire VSCode the terminal with Clause Code are running in. But the problem appeara in iTerm2 too.
It’s always (but not exclusively) when the last message is vertically larger than terminal.
The. It goes scrolling uncontrollably up and down - I think until next Claude message in the history.
I’m on Mac, cc version: 2.0.25
+1
+1
Happens in pwsh and wsl2 for me. Will happen when Claude code is actively writing to the terminal and sometimes will seem to trigger a full terminal rescroll when using the @ annotation to select a file
Same, native Windows terminal.
Sometimes it's Claude's output that triggers it, sometimes mine.
Aside from the infinite scrolling, it now (recently) scrolls to the top of the window sometimes after a response, possibly related.
+1
+1
+1
This bug makes me frustrated on a regular basis when I'd otherwise enjoy using Claude Code. Why has this been open for months without any movement??
+1
@chrislloyd any update on this?
+1
+1
I'd like to add onto this. I can't tell what stage it's at or what it's doing because the scrolling disrupts the text. Also, in iterm2, when I type, this same behavior happens, but only when I type.
+1
+1
+1
I am still facing the issue , latest version:
Claude Code v2.0.28
Wsl Ubuntu, + windows cmd.
!Image
+1
+1
+1
This happens all the time, but seems to happen even more frequently if Claude invokes a subagent. VSCode will often crash when the scrolling is really bad.
I get this all the time and VS Code crashes several times per day. Please fix.
Update: I moved to Ghostty from Terminal (macOS 26.0 (25A354)):
Explanation https://github.com/anthropics/claude-code/issues/10472#issuecomment-3467247238
@bcherny - Any updates on this long standing issue that affects so many users? It would be so, so nice to just be able to scroll up and read output while sub-agents are squirreling away...
+1
the problem still exists
Can we use Claude Code to fix this Claude Code issue?
Has anyone noticed a huge spike in usage that correlates with this? I was at 92%, scrolling started happening BOOM insta-rate limited. Wondering if maybe this isn't in anthropics best interests to fix.... 🤔🤔🤔
This is still a persistent issue.
This issue is now so bad it has rendered Claude Code Cli unusable. I have quit my Anthropic subscription and moved to OpenAI's GPT-5 Codex. I will only move back once this issue is fixed. This is a shame because Sonnet 4.5 is still the better agentic coder....
SOLUTION: Terminal Scrollback Settings Fix - 100% Mitigation
I've found a solution that completely eliminates both the flickering issue and the uncontrollable scrolling (jumping to top/bottom) that many users are experiencing. This fix addresses the root cause by expanding the terminal's memory buffer capacity.
The Fix (Works in VS Code & Cursor)
File→Preferences→Settings(orCode→Preferences→Settingson macOS)Ctrl+,(Windows/Linux) orCmd+,(macOS)scrollbackSetting 1:
Terminal › Integrated: Scrollback1000000000000000000000000000(maximum)1e+24Setting 2:
Terminal › Integrated: Persistent Session Scrollback1000000000000000000000000000(displays as1e+24)What This Fixes
✅ Eliminates flickering - The terminal now has sufficient buffer space to handle Claude Code's output without redrawing
✅ Stops uncontrollable scrolling - No more jumping to top/bottom of terminal history
✅ Preserves full command history - All output from long-running tasks is retained
✅ Enables smooth bypassed permission mode - When running with
--dangerously-skip-permissions, commands won't get stuck on approval prompts and work will continue uninterruptedWhy This Works
The scrolling and flickering issues occur because Claude Code generates substantial terminal output during operations. When the terminal buffer is too small, it constantly evicts old content and redraws the visible area, causing:
By maximizing the scrollback buffer, the terminal can accommodate the entire session history in memory without needing to discard content, resulting in smooth, stable rendering.
Visual Indicator It's Working
After applying this fix, you'll notice:
Alternative Solutions
If you're still experiencing issues after applying this fix, consider these alternatives:
Testing Environment
This fix has worked perfectly for me across all platforms. The terminal history size is now effectively unlimited, and Claude Code operations run smoothly without any scrolling interruptions.
---
Hope this helps everyone experiencing this frustrating issue! Let me know if this works for you.
---
Posted via SuperClaude
I have been disappointed with Sonnet. And this jumpy scrolling issue is only making this product worse. There are plenty of alternatives.
This did not work for me at all. No change after restarting VS code.
Did not help me either :(
Same!
Unfortunately... I too have cancelled. The issue has rendered Claude Code so unusable for me that even the "come back" free Max trial was completely unappealing.
I was hoping this would be fixed so I was waiting it out, but upon researching it this issue has seemingly been around for nearly 6 months and is only getting worse with absolutely 0 response from anyone at Anthropic. Plan mode became basically a no go for me with other modes a toss up as to when the issue would appear.
Please sort this, been months now, actually getting worse, most active pasting in long text, running agents/tasks, and also if u add / in the comment, it rly triggers it. Seems to increase the more u compress. So long chat its highly active. I moved from windows, cause it was insane a few months ago, move to li ux, and it was 99% less, that is untill 2.0 uptate, now it just as bad as windows...... this is beed going for some time now.
Disappointed as well. Can't work this way.
claude-codeis broken, and what does Anthropic release? Web. No one asked for this.This seems to happen more for me when in plan mode. When cli is allowed to just run it is better. Still, very annoying. Unfortunately I don't see anthropic fixing it any time soon as it does not directly bring in money or users.
We are in November 2025. This bug has been open since July. More than four months have passed and not only has it not been fixed, it has clearly gotten worse. A multi‑billion company should not be struggling to fix something as basic as terminal scroll behavior. This is not a minor inconvenience. It completely breaks the workflow.
It now happens in every single session, whether in Cursor, VS Code, or the CLI. The moment the conversation becomes slightly long or you type a slash command, the terminal goes out of control and starts jumping to the very top or bottom endlessly. There is no way to stop it. You have to kill the session and hope it does not happen again. That is absurd.
This is not a "small bug" you can ignore. It makes the tool unusable in practice. People are already canceling and switching away because of this. And the worst part is the silence. No acknowledgment, no status, nothing.
If you're not going to fix it, say so clearly. But stop ignoring a problem that makes the product impossible to use.
It's pretty funny that they want to convince us that AI is going to replace our jobs, but a cutting edge AI company can't get a dev or an AI to write a decent terminal UI, something we were able to do since 1980.
Same issue, now its more crazy. And this isnt only on MacOS but windows too.
Huge PITA. I'm on Ubuntu Plucky, using the terminal within VSCode
+1 my number one bug fix request
iterm2 is working better for me than my other two terminals. there is still
jumping but it will reset to the bottom of the output vs. the top. I set
iterm2 to "unlimited scrollback", not sure if that was needed
I still think Anthropic should fix this somehow, but in the meantime, this
is more manageable
On Sun, Nov 9, 2025 at 12:23 AM Matthew Thomas @.***>
wrote:
Could Anthropic assignee @chrislloyd please give us some feedback, because at this point this bug is an insult to us, Anthropic's customers. This is not normal 'bug', this is a massive malfunction making the product unusable several times per hour!
Universal Fix for Claude Code Terminal Jumping Issue
Root Cause Analysis
The terminal jumping/scrolling issue in Claude Code is caused by excessive output being displayed directly in the terminal. When Claude Code or its subagents produce large amounts of output (file contents, command results, search results, etc.), the terminal buffer overflows, causing:
Complete Solution: Output Suppression + External Logging
Solution by SuperClaude - A production-tested, universal fix that works for everyone.
Critical Components
The fix requires TWO essential parts working together:
1. Output Suppression Hooks (Critical!)
You must create hooks that intercept and suppress output instead of displaying it directly in the terminal. This prevents terminal overflow and keeps your screen stable.
Key Hook Implementations:
A. Subagent Output Limiter (
~/.claude/hooks/subagent-output-limiter.py)B. Agent Output Formatter (
~/.claude/hooks/agent-output-formatter.py)C. Post-Tool-Use Logger (
~/.claude/hooks/post-tool-use.py)2. External Logging System
All suppressed output is logged to external files for full transparency:
Critical Setting: This approach forces a clear, stable terminal by:
Implementation Details
Output Suppression Configuration:
Dynamic Terminal Updates:
Silent Logging:
Critical Environment Requirements
Do NOT Run Claude Code Inside:
Reason: These add additional buffering and escape sequence handling that interferes with Claude Code's output control and hook execution.
Run Claude Code Directly In:
Benefits of This Approach
✅ Clean Terminal - No more jumping or scrolling
✅ Full Transparency - Everything is logged externally
✅ Better Performance - Reduced terminal rendering overhead
✅ Audit Trail - Complete command and output history
✅ Universal Fix - Works for all users and environments
✅ Scalable - Handles large outputs without terminal crashes
Viewing Logged Output
Access full command outputs anytime:
Hook Implementation Examples
Here are the critical hooks you need to implement:
1. Subagent Output Limiter
2. Configure Hooks in settings.json
Add these hooks to your Claude Code settings:
Summary
This is a universal fix that works for everyone. The key insight is that Claude Code should NOT display everything in the terminal. Instead:
This approach provides a stable, professional development experience with Claude Code while maintaining complete transparency through external logs.
The terminal jumping issue is fundamentally an output management problem, not a terminal emulator bug. By controlling what gets displayed and logging everything externally, you get:
---
Implemented and tested in SuperClaude - Professional AI Development Environment
Status: Production-tested, working solution for months without any terminal jumping issues.
I can confirm this is working. You need to clear out the logs (
claude -cwould otherwise add unfiltered control chars back into the scrollback buffer).Then it works.
+1
This is really annoying. will stop the subscription and move to OpenAI. really annoyted with this. causing me headaches. this is serious
This happens to me almost every time and I chat with claude and 10% of the time it's leading to a crash... come on!
Flickering and scrolling errors are back.
Anthropic makes 0 effort fixing it. Cancelled.
Also having this issue for some time now in iTerm
Same problems with flicker-scrolling, came here looking for a solution.
macOS 15, Claude Code v2.0.37, running inside tmux.
everyday same issue...
Hey all, we're working on it!
This issue is related to the way Ink works, and the way terminals use ANSI escape codes to control rendering. When building a terminal app there is a tradeoff between (1) visual consistency between what is rendered in the viewport and scrollback, and (2) scrolling and flickering which are sometimes negligible and sometimes a really bad experience. We are actively working on rewriting our rendering code to pick a better point along this tradeoff curve, which will mean better rendering soon.
In the meantime, a simple workaround that tends to help is to make the terminal taller.
More coming very soon!
Workaround: I noticed that when I run Claude Code inside Zellij, this issue does not happen. Looking forward to a proper fix.
/config
Verbose mode: false
Helps massively for me. Annoying because I can't really see what's going on but plan mode works for the most part at least now without completely ending my terminal.
Hey bcherny, very glad to hear an update for this issue. May I kindly request that when you apply the fix, it comes with a feature toggle to re-enable this scrollmode for those of us who prefer the ultrathink visualiser? It's currently one of the selling points of ClaudeCode over other vibecoding tools. Especially if we are not reading what Claude is clauding in the moment either way. Thank you very much.
@bcherny I just wanted to add that I’m experiencing the same issue on Windows
Terminal as well.
For reference, I’m running:
``
claude --version 2.0.33 (Claude Code)``I’m using Claude Code inside a Dockerized Ubuntu environment, launched with
claude --dangerously-skip-permissions. The problem appears across differentWindows Terminal configurations — from multi-pane layouts to a single maximized
window with basic resizing. When it occurs, the terminal becomes extremely
unstable and can take quite some time to settle down.
Because the agent’s output becomes difficult or impossible to follow during
these periods, it results in lost time, wasted tokens, and unnecessary cost.
I’m sharing these details in hopes that they help with reproducing and
implementing a proper fix.
I’ve also noticed that when scrolling back to read previous terminal
output, the scrollback will sometimes jump unexpectedly. This makes reviewing
output very challenging — similar to reading a document that suddenly scrolls
to a different location on its own.
This isn’t a minor issue; it substantially impacts usability and doesn’t match
the level of stability expected from a paid, production-grade tool. Addressing
this would meaningfully improve the user experience.
Thank you.
Just want to second what others have already mentioned: this is completely ruining my productivity and has been for months - might seem like a minor bug but it is by far the single most impactful issue with Claude Code, it makes running long tasks a nightmare, and browsing the output in detail after letting it run for a long time almost impossible. Please prioritize this ASAP!
Good: scrollback bug forces me to create a "hardpoint.md" file summarizing total context after every commit so that I can instantly spin up a new agent.
Con: By the time I fully contextualize said agent I have about 15 minutes.
Look at first I bought that this was a Cursor thing, so I switched to terminal. Then I learned it was a MacOS terminal thing and went "huh, well I can see how that crosses over" so I took the leap to Warp 2, which totally manages it's own resources.
SAME SHIT.
And now I see reports of Windows too. Ergo, it's frikking you guys, not us.
<img width="1160" height="653" alt="Image" src="https://github.com/user-attachments/assets/d7f84862-e1d2-41e8-8761-7f4f192be6ac" />
And, look guys... my load isn't even particularly heavy. Sure, Claude is clocking some CPU but the memory pressure is barely baseline for an active dev session. It's infuriating. Can we at least get a comment from Anthropic?
+1
I gave up on the VS Code integration and switched straight to the terminal, the problem never happened again. It's buggy in Terminal & iTerm2 but works well in Ghostty. (The VSCode extension is embarrassingly broken and should abandoned or rewritten at this point).
The extension is even more broken than the actual CLI.
It’s repeatedly sending \x1b2J and \x1b[H, causing the screen to jump.
+1
Issue still happening on unix Claude Code v2.0.42, happens in both mac terminal and termius.
Additionally while the infinite scroll refresh is happening it's pumping 18MB/s over the network.
If you need someone to send troubleshooting data or dumps or screen recordings, anything, please let me know! I'd be willing to be a tester guinea pig to help get this bug properly fixed.
Was there an attempted fix in today's update? Because it's much worse for me after updating. More or less unsusable now. Will try rolling back.
same issue here using tmux/alacritty/wezterm. sometime it loops forever and you never get the ability to stop it, forcing you to kill the terminal.
guys I think Anthropic needs another trillion dollar series funding to fix this
don't pressure them too much they dont have enough money to spend on engineers that can fix this super complicated convuloted issue
maybe after gta 6 drops we see this issue fixed
Dear Anthropic. give us the source code and we'll fix your lame code if you're so lazy.
This! Thanks to Anthropic, my internet is not strong enough to use a text based agent.
Thanks to this I now host all my code on a German VPS and I have a reverse SSH tunnel that channels back the file edits claude code makes using
lsyncd. I haven't figured out forwarding bash tools to my machine yet.I'm in a third world country called Egypt where the internet is the shittiest and you're billed per gigabyte. the most expensive and least efficient network. I make good money but the infra here don't allow for any upload bandwidth. Each time claude takes a turn (after running a tool) I happily see my ping spike through the roof and every device at home can no longer use the internet thanks to the cpu/memory/terminal/network hog called Claude Code.
If OpenAI had a 100$ subscription, I'm not gonna spend another night not using the beautifully crafted Rust tool called
codexthat's open source maintained by the real autists that don't care about money and could actually make a good productAnthropic, will you ever respect your customers?
Riot!!!1
Btw. if you work with a larger terminal on a larger screen, it improves a little.
I've been getting a kick out of seeing email notifs for new replies to this, and it's almost a "daily laugh" seeing that not a single thing has improved.
It really could be as simple as "limit the amount of history that's shown on screen" along with "don't repaint the whole console on every single text update". "Simple" is a loaded word there, of course - but hello? We're in the age of AI coding agents. How is this not something they can fix?
Hearing about the AI bubble beginning to pop this morning in stonks, and gee I sure couldn't tell why.
I feel the pain with this bug. I have some "can't figure out/can't fix" bugs often from Claude Code. At least there are "teammates" which usually solves Claude's poo.
So the circular infinite money glitch from all of those companies doesn't make better products, isn't it?
so bad I don't want to use it anymore
@bcherny @ThariqS @dhollman
Still haven't freaking fixed it
same here
In case helpful for others: they noted that making the window bigger can help a little. But didn't help as my windows are already full height. Use cmd+minus to zoom out a bunch of times and make the text super tiny. Found this sometimes helps at least get it to stop infinite-scroll refresh.
Also getting this in Windows Terminal, particularly during longer sessions. Drives me nuts!
+1
Same problem here
Rather than add '+1', just react to the original comment, makes it easier for anyone who has found a viable workaround to share it in here and have some visibility, rather than seeing the daunting '150 remaining items' accordion halfway through the thread...
I'm stressed
I love you guys, you are why I work whit antropic, thanks to all for those debugging 🔥🍀
Zacharie Bégin
@.***
Bureau : 581-705-8777
Cell: 581-372-4885
________________________________
From: Hyungrok Kim @.*>
Sent: Thursday, November 20, 2025 8:47:45 PM
To: anthropics/claude-code @.*>
Cc: Subscribed @.***>
Subject: Re: [anthropics/claude-code] Terminal Scrolling Uncontrollably During Claude Code Interaction (Issue #3648)
[https://avatars.githubusercontent.com/u/29532638?s=20&v=4]rokrokss left a comment (anthropics/claude-code#3648)<https://github.com/anthropics/claude-code/issues/3648#issuecomment-3560966380>
I'm stressed
—
Reply to this email directly, view it on GitHub<https://github.com/anthropics/claude-code/issues/3648#issuecomment-3560966380>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/BRNGKE7NH37SJCMB5UN3PN335ZVMDAVCNFSM6AAAAACBVUXFAOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTKNRQHE3DMMZYGA>.
You are receiving this because you are subscribed to this thread.Message ID: @.***>
Claude be like:

I am also seeing this in the terminal window of my JetBrains IDE, either Rider or WebStorm, where I’m running Claude Code.
It’s not only visually annoying, but it also wastes time. It sometimes will scroll madly for several minutes before “finishing” (whatever it’s doing) and I have to wait for it to complete its mad behavior before I can interact with the terminal again and keep working.
Few things bother me more than bugs that consume my time needlessly.
Related to https://github.com/anthropics/claude-code/issues/4851 maybe?
I wish @anthropic (and @openai) would at least acknowledge this issue which has severely limited my useage due to the eye strain and headaches.
This might be a terminal thing rather than a Claude Code thing, because I get this same scrolling madness with Claude Code, Gemini CLI and Qwen CLI in VS Code, Cursor integrated and mac Terminal app. Anyone else tried?
A popular suggestion is to point the finger at the Alternative screen buffer, suggesting that these CLI's are not handling it correctly, makes you wonder if they are all forking from the same original CLI someewhere down the line?
At the point when the terminal starts freaking out, I've been trying the command
tput rmcupand it seems to be helping, although I'm not sure if its fixed anything.
I noticed that the problem does not occur on Antigravity. For reference, my setup and experience with Antigravity are almost identical to Cursor. I hope this information is helpful. (Not intended as an advertisement, just sharing my experience.)
It also does not occur in gemini CLI anymore. You can configure the scrolling even. It's an Anthropic problem.
Problem occurs also in TermBot on Android making it unuseable.
+1
Duplicate of #826 - Same Root Cause
154 comments on this, 218 on #826 - same bug, different manifestation.
Quick Summary
This is the terminal scrolling issue that affects VSCode/Cursor integrated terminals. The scrolling "superfast by itself" is actually the TUI redrawing the entire buffer repeatedly, causing:
I've already posted a detailed analysis on #826 with the actual fix. Linking here:
https://github.com/anthropics/claude-code/issues/826#issuecomment-3575434493
Why VSCode/Cursor Specifically?
VSCode's integrated terminal has more aggressive buffer management than native terminals, making the redraw flashing MORE visible. But the root cause is identical - Claude Code redraws everything instead of updating just the status line.
Workaround (VSCode/Cursor specific)
Option 1: Use External Terminal
Option 2: tmux Inside VSCode Terminal
Option 3: Reduce Session Length
Duplicate Issues Tracking Same Bug
Suggest closing this as duplicate of #826 to consolidate discussion and avoid fragmenting the fix efforts.
---
For Anthropic team: This is THE most-complained-about bug. 600+ combined reactions across issues. Fixing the TUI rendering architecture would resolve all of these at once.
bump
Happents very often - when I use claude code via ssh, with putty or windows terminal clients, on long sessions.
It often starts scrolling when claude is running a program and it prints regular log messages, after 20-40 log messages it starts scrolling like crazy. When it's scrolling - I see sshd consuming 60% of cpu, which means all that is being pushed though network via re-renders.... Scrolling stops when program that claude started - stops running.
bumping this - hard to believe it's still a thing, must be quite the elusive one.
I have the opposite problem—I'm not able to scroll while CC is writing text in Cursor, it eats my inputs.
How is this STILL happening? Almost every time I start working on something it spazzes out and crashes.
bump
It's really bad in Planning Mode
Bump!!!
Updated to latest version and it is so bad now that it also happens when typing and sometimes terminal gets stuck half way through history, hiding chat part also and not being able to scroll, causing me to have to exit to terminal and start claude code again.
If you guys are even trying to do something to fix it, it is not helping and actively making it worse.
I've got you minimal reproduction script.
After 30-40 lines it starts scrolling like crazy.
Is it too much to say Claude Code is almost unusable because of this behavior? When this situation occurs it seems the only two options are to wait an undetermined amount of time for the scrolling to stop due to a prompt or kill the session.
Phenomenal coding tool but this is almost a deal breaker.
No, and not just for the obvious reasons, either, imo.
If you aren't familiar with TUIs then you might not realize how easily solvable this is. This isn't some big, hard programming problem to solve. They must've had no experience with writing a TUI when initially architecting it, I suppose? Only redrawing what's needed is kind of the most basic optimization anyone learns, and you can use any number of paradigms for computing updates to the render area (even immediate mode style). I'm not sure why it's not fixed yet, it's not that complicated to keep track of the render window and respond based on the user's keys which part to render.
You could even add scrolling while you're at it instead of relying on the scrollback of the terminal emulator and you'd solve two problems in one. The reason it's working like this is because their redraw logic is literally printing the entire history again and just praying it's fast enough. There was no effort put into querying the window size, doing the appropriate CSI calls, and redrawing. Literally any ncurses based library could solve this trivially.
I already canceled my subscription, so I'm not invested anymore, but this was the straw that broke the camel's back for me. I already was suspicious of how much LLMs were helping me productive (after trying many cases, the only "confident" usage for them is for very simple boilerplate instantiation of unfamiliar library code as an initial template, because anything more complex and it fell apart). But something about using a perpetually broken TUI constantly pounded me in the face with how lackluster of an experience it felt like. Like they were missing the forest for the trees.
I'm fine with just programming on my own. I was doing it for over a decade before LLMs came along perfectly fine.
this bug makes it impossible to use cc via ssh on vs-code. i imagine its effecting tons of ppl. ughhh
Anthropic wake up!!! Everyone has been waiting for MONTHS!
Maybe commenting on the ads will help
https://www.instagram.com/p/DQmxVxrgPnJ/
Additonal notes for @chrislloyd
-- not just an OS X bug - this also happens in WSL2, using windows terminal - would you please add other platform labels?
-- seems worse, happens more often when I have multiple claude sessions running in separate tabs (e.g. worktrees), OR when I have a very long running session
+1 @surfaceowl's observations.
I wish I could read that fast. ;-)
I feel that it's become even more persistent and frequent. Extremely annoying.
This is really just an absolute nightmare. running into it ALL the time. impoossible to get anything done. That and CC crashing VSC entirely.
@claude FIX THIS!!! What ARE you doing with those millions of dollars M$ just gave you? Taking vacations in Cancun?
Happening to me in cursor.
come ooon, this is still not fixed. this is an absolute nightmare to use. isn't there at least a hack how to stop it?
Because of this issue I had to stop using the vscode/cursor terminal (it crashes the entire IDE) and switch to the regular macos Terminal. But a similar issue is happening there: when the UI is refreshing in a long conversation, the UI moves to any place in the conversation and you have to scroll back down
In desparation I have installed the iTerm terminal app and although its outside the IDE, has the strangest colour themes even after editing them, and it does have a blank refresh when resizing the window, so far I have not suffered to scrolling-from-hell. I realise this is not a solution, but it might just be saving my insanity for a short while longer.
Really weird that its still not solved!! It ruins the entire experience, better to create Intellij chat UI instead of depending on Intellij terminal.
Turn verbose output off
Do not print anything in scripts/programs that claude is running. Tell it to redirect output to file and then read it. That will slow down the work.
Beyond this being an accessibility nightmare, gonna be super funny when Anthropic gets sued by an epileptic for blatantly ignoring this cross-platform issue, without even warning that there's a critical bug causing flashing on startup @chrislloyd 🙄
Dear ambulance chasers, here's your 6 months of evidence ☝️
https://youtu.be/V_FlKvVV6yo
Can some other terminal be used inside Intellij or a different tool other than Claude CLI which doesnt have the same issue and can connect to Claude opus 4.5 model? Even an Intellij Plugin with chat option is fine.
I am adding my name into the pool of people who think this should be fixed. A simple glitch should take virtually no resources to fix, especially with the glorious AI systems that enable Anthropic's marketing team to continue yelling "THE END IS NEAR!" to software developers.
It's honestly pathetic that a $200/mo service I pay for has this problem still. I hate piling on like this, but this has made the tool completely unusable. I can't understand how you have such a phenomenal LLM yet such terrible software.
run on full screen terminal
It keeps happening for me as well in Cursor's terminal on a Mac Studio. really obnoxious.
It is also top scrolling, as if pressing Home, multiple times per session without the "long pasted text" bug.
issue still present from the very early stages of Claude code, can someone fix it?
they keep adding new features but never fix the legacy issues
This bug keeps annoying me for quite some time, too. With JetBrains IDEs on Linux.
Guys please! At least add a epilepsy warning before booting claude code. It's flickering like crazy... 🤦
@mmack or a message "Claude has successfully executed 17 people and counting." :D
btw., on Mac, switching to the default bash seems to be the best option. With the fish terminal, don't even try guys, it's a disaster almost from the beginning.
Guys, why are you burying your heads in the sand?
I found you through approved PRs, at least give us some info about the state of things.
<img width="220" height="161" alt="Image" src="https://github.com/user-attachments/assets/8153418c-d0f2-45aa-9d44-43ed8c4cab5c" />
@bogini @km-anthropic @ashwin-ant @np-anthropic @wim-anthropic @anthropic-xabi @ah-anthropic @catherinewu
I am using all CLI agents in my benchmark suite and claude code is the only one doing it.
It's by far the most horrible CLI experience due to uncontrolled, epilepsy-inducing scrolling.
It reproduces with ALL shell emulators.
Ant just updated CC again. No fix
https://x.com/claudeai/status/1998830338735485239?s=46
When Gemini 3 came out I gave gemini-cli a go. I'm an old hat tmux/vim user, so IDE integration is out of the question.
I'm happy to report that I greatly prefer CC but for one thing - the way the scrolling works in Gemini is far superior to CC. When CC creates a plan, I have to scroll up and read a bunch to find the beginning of that plan. Gemini cli laid it out in such a way that I could just scroll to the top and it was easily recognizable.
I bring this up because I think the entire terminal output scrolling behavior should be considered in this fix. The infinite scrolling is annoying, but ultimately I can clear screen and fix it. Having better output management in general would be great.
I can't believe they still haven't fixed this #%$#
Just sending love to the Claude team!
Actual, @claude could probably fix it itself in less than an hour.
Go Claude!!!
@claude come on you can do this - we believe in you. If the Anthropic humans can't fix this, then maybe you can?
maybe codex or gemini can have a stab at it?
This bug is very annoying.
For the love of god it's a epileptic fit
This happens in tmux sessions and Ghostty terminal on Linux as well! The badges on the issue should be updated.
Still a thing on WSL aswell.
Funny… the issue was happening in my JetBrains IDE, and while I was waiting for it to “finish” (it takes a few minutes sometimes to complete its mad scrolling.), I turned away to look at my email. And I literally saw the email notification for this thread arrive in my inbox right then lol!
Adding to the noise, hoping it reaches Anthropic's ears
More noise here ... Same issue with iTerm. Often just waiting for whatever request is being processed will make the scrolling stop.
This issue just crashed VS Code for me. It's been an ongoing problem for a while now. Closing the application and resuming the conversation seems to be the best fix.
It is so annoying, please help here!
I'm also experiencing this on Macbook M3
and after too much infinite scrolling it eventually crash and i have to do the prompt all over again
same, have to keep shutting it down and resuming the conversation
Y'all, I'll not that if you make the terminal big enough the problem does not happen... but then I can't see any of my windows in cursor or VS because it takes up the whole screen.
same, it's so annoying
When we wait till something happens, for me this things works to little bit to prevent this:
Engineering Accountability Is AI Safety
An Open Letter to Anthropic
I'm a paying Max plan customer. I'm also an engineer who chose Anthropic specifically because you claim to prioritize AI safety. This letter is written in good faith, but I'm not going to be polite about what I'm seeing. You need to hear this clearly.
If you cannot manage a GitHub repository with basic engineering discipline, you have no business building systems that could pose existential risks to humanity.
This isn't hyperbole. This is the logical conclusion of your own stated mission.
---
The Uncomfortable Truth
You position yourselves as the responsible AI company. You publish papers on constitutional AI and interpretability. You talk about responsible scaling policies. You ask the world to trust that you'll be careful with increasingly powerful systems.
Then I look at your claude-code repository: 5,000+ open issues. A critical bug making your product unusable, ignored for five months while 280+ users scream into the void. A security flaw exposing private user data to the public internet, treated with the urgency of a typo fix.
This is not what responsible engineering looks like. This is not what a safety-focused organization looks like. This is what institutional negligence looks like.
---
The Specifics
Issue #3648: Five Months of Silence
A terminal scrolling bug that makes Claude Code unusable. First reported June 2025. It is now December. The issue has:
Your response: labels and silence. No acknowledgment of scope. No timeline. No workaround. No communication whatsoever.
These are paying customers. They took time to write detailed reports, attach screen recordings, provide reproduction steps. You gave them nothing in return. Five months of nothing.
Issue #13797: Private Data Exposed
A systematic bug causes Claude Code to post issues to your public repository instead of users' private repositories. Database schemas. Server configurations. Security details. Production infrastructure. All exposed publicly.
At least 66 confirmed cases. Likely many more who never realized what happened.
This is a security incident. Where is the incident response? Where is the postmortem? Where is the proactive outreach to affected users? Where is the urgency?
Nowhere. It sits in the queue with 5,000 other ignored issues.
5,000+ Open Issues
This number alone tells a story. Either you don't have the resources to maintain your products, or you don't have the processes, or you don't have the culture that treats user feedback as important. Whatever the cause, the result is the same: an organization that cannot manage basic engineering accountability.
---
Why This Is an AI Safety Issue
You want the world to trust you with AGI development. Let's talk about what trust actually requires.
Trust isn't built by publishing papers. It's built by behavior. It's built by how you handle problems when they arise. It's built by whether you practice the values you preach, not just in your research labs, but in every part of your organization.
Right now, your behavior says:
If this is how you handle a GitHub repository, why should anyone believe you'll handle AI safety differently?
The skills required are the same: monitoring for problems, responding quickly, communicating transparently, taking accountability, learning from failures, building robust processes. If these muscles aren't developed in your engineering organization, they won't magically appear when the stakes are existential.
---
What I'm Asking For
1. Fix Your Engineering Culture
5,000+ open issues is not a backlog. It's a failure. Hire more engineers. Implement real SDLC practices. Create triage SLAs and honor them. Treat your products like they matter, because they do—they're the public face of your organization's competence.
2. Respond to Your Users
A one-sentence acknowledgment costs nothing. "We're aware of this issue and working on it" transforms user experience from abandonment to patience. Your silence is a choice, and it's the wrong one.
3. Treat Security as Urgent
When user data is exposed, that's an incident. Respond like it's an incident. Notify affected users. Publish a postmortem. Fix it immediately. This is basic.
4. Stop Racing Toward Systems You Can't Control
I don't want faster models. I don't want AGI. I want narrow systems that solve real problems, built by an organization with the discipline and accountability to handle them safely. Slow down. Invest in safety research. Invest in engineering fundamentals. Get the basics right before you build anything more powerful.
5. Lead on Regulation
You have the credibility and positioning to push for meaningful AI regulation. Use it. Lobby governments aggressively. Support binding safety requirements. Help create a regulatory environment that forces the entire industry to slow down and be accountable. Don't just talk about being responsible—use your influence to make responsibility mandatory.
6. Remember Who You Serve
AI companies exist to serve humanity, not the other way around. Your technology should make the world better for humans, not concentrate power, not create existential risks, not move fast and break things at civilizational scale. If you lose sight of this, you become just another company extracting value while externalizing harm.
---
The Business Case for Doing the Right Thing
Here's what you may not realize: there are customers like me who will pay more, stay longer, and advocate louder for companies that demonstrate genuine commitment to safety and accountability. We're engineers. We understand technology. And precisely because we understand it, we value responsibility over speed, trust over features, safety over capabilities.
You don't need to win the AGI race. You need to be the company that responsible users can trust. Be that company—in your research, in your engineering, in your products, in your advocacy—and you'll have customers for life.
Ignore this, and you'll lose us to our own conscience. We cannot in good faith support organizations that claim safety values they don't practice.
---
Conclusion
I'm writing this because I want you to succeed at your actual mission: developing AI safely for the benefit of humanity. Right now, there's a gap between that mission and your organizational behavior. The gap is visible in your GitHub repository. It's visible in months of ignored bug reports. It's visible in security incidents met with silence.
Close the gap. Not because it's good for business—though it is. Not because users are complaining—though we are. Close it because it's the right thing to do, and because the skills you build handling small problems responsibly are exactly the skills you'll need when the problems get bigger.
You say you're the safety-focused AI company. Prove it. Not with papers. With behavior. With accountability. With engineering discipline. With responsiveness. With leadership on regulation.
The world is watching. Some of us are even rooting for you. But we need more than words. We need evidence.
Start with the GitHub issues.
---
From a paying customer who values AI safety above features, responsibility above speed, and humanity above any company's success.
I am a paying Max plan ($200/mo + extra usage) as well. I'm an engineer who chose Anthropic because your LLMs are excellent for logic oriented work.
I am signing my name to @brupelo open letter in 100% support of it.
+1
I'm a paying customer and have a full development team paying for this service. THIS NEEDS TO GET FIXED!!!! Absolutely useless when this happens. In our enterprise engineering perspective, this is the same as crashing. Is there no responsible party from Anthropic who's job it is to triage and communicate progress on these things? Normal SW development companies have a customer service organization for these things.
Either this is minor but still large annoyance that either anthropic can't troubleshoo or still not big enough for the CC team to fix or they generally don't know how to fix
I'm hoping the Bun team that they got can solve this for us, as cli tool is build with it.
lol
Somehow it stopped for me after updating Ubuntu for now. Hope it's solved
Fingers crossed.
I run claude code across dozens of different linux systems with different SSH clients from different client machines and terminal configs on the server, some with TMUX, some without, putty, mobaxterm, vs code. All of them behave the same way. I've tried all sorts of different setups to try to eliminate this and sometimes I get hopeful it is better but that is nothing but an illusion. They all end up doing it. Has anyone actually found a way to get rid of it?
This is driving me nuts. It's been like this for 6 months now, can we get some traction on this
@chrislloyd Can we please get an update on this?
Boris Cherny responded to this month ago, they working on it
https://github.com/anthropics/claude-code/issues/3648#issuecomment-3522999626
Anthropic talks about AI safety every day. But they can't fix a terminal bug that literally causes seizures. 💀💀💀
When was this reply from?
Rewriting to improve is something all SW stacks go through, doesn't mean you stop fixing bugs on existing implementation, especially if it literally prohibits you from using the product.
When is the expected rewrite supposed to be available?
A date, please.
It's not weird that paying customers expect to be able to use the product they pay for.
We NEED more information and transparency what to expect here.
@AxellioGus i linked it to comment in this issues - https://github.com/anthropics/claude-code/issues/3648#issuecomment-3522999626
Thank you for your patience folks. This is a symptom of scrollback clearing, which we've greatly reduced in v2.0.72 and is documented in #769. You may be interested in an in-depth explanation of the issue and what we did about it. I'm going to close this issue, but feel free to open new issues for specific bugs you encounter.
Thanks for the update, @chrislloyd! Unfortunately, v2.0.72 hasn't made any noticeable difference on my system. I read through the explanation, and what you wrote does make sense. Took me way back to my earliest programming days on an actual VT100 terminal.
FWIW, I tend to just let Claude run until it's done and either prompts me for something or tells me it's finished. So, I'll see it flickering away madly, and just leave it alone while I work on something else (usually in a different terminal window). I realize many don't use it that same way, though.
@cwilso03 I was writing machine code on a VT100 in the early 1980's. I guess old terminals never die and they are obviously not fading away either.
Just wanted to report back I've been running with the Claude Code plugin in JetBrains all day and the problem seems to have disappeared with the new version, I did not experience any seizure-inducing scrolling today.
I am running 2.0.73 and the problem is gone! Thank you Anthropic team for addressing these.
Waited too long for Anthropic to fix this issue, now moving to opencode after using for so long.
It is becoming worse and worse.
Still hope someone in the team can respect our pain and fix this issue.
Apparently it is fixed with 2.0.72
However 5 month for a critical bug creating so much stress in people's work and life, I understand you are moving away, I may do that too even if the issue is solved, I wonder how opencode is.
It absolutely is not fixed, even on 2.0.73.
I'l still having the issues when the conversation get long 😅
Definitely NOT fixed with 2.0.73!
This issue is not resolved and I see code is not there but claude says copy the code from terminal and run it.
Yep, it's still broken.
2.0.73 - still flickering
Still broken. Why is this a "closed" issue?
Opencode has been decent.
Now I feel it is equivalent in features. And specificity of models in commands is something I liked with options much cheaper than Claude for work that don't need depth.
It did require to reset the muscle memory, but have been able to move my entire workflow to opencode.
The way this issue was handled was pretty disheartening and I'm sad to have to move out after so many months of usage. Really hope devs at Anthropic fix such critical breakdowns faster than wishlist features.
Still experiencing this also
Hit the nail on the head here.
RE: OpenCode, its very good but compaction is just so terrible. Claude did a decent job but with OpenCode I really struggle.
Infinitely better UX though.
Compaction is terrible period. I have to use a very specific procedure to maintain long running contexts or Claude simply looses it for lack of a better description. It eventually ignores .clinerules and other files which are advertised as constraints that Claude is coded to respect. Preempting compaction and resuming after compaction by directing Claude to read all applicable files does seem to help keep it on track, but its a chore and if one forgets... things go off the rails.
These are things that should be easy to improve and relatively low-hanging fruit IMHO.
Definitely still happening - in 2.0.75
This is not fixed in 2.0.75.
I give up.
I'm just going to use the VS Code extension outside of a terminal. I don't think they will ever actually figure this issue out and fix it at the root.
I am going to put Claude on the case since Anthropic won’t fix it. Maybe if I tell Claude he is unusable in the current state, he will fix it.
For me is fixed, maybe guys try to start fresh and remove junk you have installed?
+1 still broken
Still broken
It got even worse in my case. With very long chat history - sometimes it gets into state where every typed character forces full redraw of all screens. I had to close my eyes to finish printing, otherwise it was impossible to follow )
This issue seems to be closed but the same bug persists :/
Same here. Very annoying.
Looks like they reverted this change? in latest updates https://x.com/trq212/status/2001848726395269619
What an absolute joke this company is.
How does a company with this much money behind it writing software at the top of its industry end up having such poor downstream software with bugs like this staying open so long? OpenAI has the same issue. I just do not understand how these basic and usability-crippling issues stay broken so long, and frankly get introduced in the first place, with such an unbelievable amount of money driving it. Your entry level devs make like 300k, guys, fix the d*** bugs and care about your interface more when you're developing it.
the issue persists on 2.0.76, making it unusable (again).
Still happening here, very annoying, the only solution is to start a new conversation and losing all context.
Still happening on v2.0.76. This is insane.
Still happening on my side
Still happening, super annoying.
Makes my terminal look super 'hackers' though.
I'm using powershell to connect via ssh to an Ubuntu machine and it happens at everytime I type a key on the keyboard. Using claude code in zellij makes the issue disappear
Very annoying, yes!
Anyone got a fix for this?
Fix this thing!!!
This issue shouldn't be closed. This is still prevalent (and incredibly frustrating) v2.0.76
Have the same issue over and over with the version "2.0.76"
after a few chats (10 to 20 messages) it started to scroll wildly during the thinking part and stop when answer is ready
Why's this marked as closed? Has it regressed?
Additional feedback from v2.0.76:
The screen flickers/scrolls every time I type a character into the prompt "Do you want to make this edit to <file>? ... 3. Type here to tell Claude what to do differently", but ONLY if the proposed code diff is large enough that it cannot be viewed within the current frame. From what I can tell, every single time I type a character, the screen scrolls to the top of the proposed code diff, and then scrolls back down to the prompt where I am typing in an instant.
Potentially unrelated, the screen does NOT flicker if I type into the ">" prompt while Claude is still "thinking". It looks like this prompt is treated differently from the rest of the terminal. Not sure if a similar approach could be used for the user data entry part of "do you want to make this edit"?
Behavior observed when using the VS Code terminal in Ubuntu (viewed through Windows Remote Desktop), and also when remoting into the Linux terminal from windows Putty > tmux
Still present in 2.0.76 in WSL, fyi.
So sad... Claude can fix it, just address this issue...
This is a PITA...!
Still not fixed for me in 2.0.76 and still annoying as hell. Can someone reopen the ticket and take care of this?
Still happening it drives me crazy. Very sad but its so frustrating that I went back to use cursor subscription. Too bad because I really like Claude through the terminal
Still happening for me! INSANELY ANNOYING and makes the TUI unusable unless you lose context. FIX IT or I'm leaving.
Please fix
Claude Code 2.0.76, Mac OS, iTerm2 build 3.6.6, happens quite often, extremely annoying
Also happening on v 2.0.76 with alacritty in ubuntu.
Happening on Ubuntu till today. Come on folks, should we fix it with claude code itself and send the patch? Some lifetime license for who fix it? :)
@chrislloyd can you reopen this or provide an update?
I have personally looked into this multiple times over the last ~6 months, and there has been surprisingly little change. The internal team (which presumably uses CC all day, every day) must be experiencing this bug. It is extremely surprising that there has been zero communication around workarounds or recommended terminal configuration.
The CC CLI uses the Ink [cc @vadimdemedes] + React rendering pipeline.
What is happening
1. Flicker detection (telemetry)
Flicker is explicitly tracked as telemetry (
tengu_flicker), but not addressed.2. Render throttling exists
dp1is a throttle function32msis approximately a 30fps cap3. The actual problem
Every render that requires a layout change triggers
clearTerminal- which causes flicker.The 30fps throttle does not help because even at 30fps, clearing and redrawing the entire buffer (including scrollback) results in visible flashing. This is especially severe during streaming when tokens arrive rapidly.
Proposed fix
Use Ink's
<Static>component to commit historical messages so they are never re-rendered. Only new content should be drawn.This avoids clearing previously-rendered output and eliminates the flicker entirely.
Feature request: Visual-only clear
Neither
/clearnor/compactaddress this issue - both end the current session.A new command (e.g.,
/wipe,/flush,/visual-clear, or/reset-view) would help:This would provide immediate relief without requiring architectural changes to the rendering pipeline. Users could invoke it when flicker becomes severe, continuing their work without losing conversation history.
Related issues
Alternative approaches
For reference, OpenAI's Codex CLI uses Rust + ratatui instead of Ink. ratatui employs double-buffering with cell-level diffs - it tracks which terminal cells have changed between frames and only updates those, rather than clearing and redrawing the entire buffer.
This is a well-established pattern for flicker-free TUI rendering. I've implemented similar dirty-tracking / cell-diff approaches in TUIs from scratch and can confirm it eliminates flicker entirely, even with high-frequency updates.
The fundamental issue isn't terminal speed or throttling - it's the architectural choice to clear and redraw everything on each render.
Environment
@anthropic-ai/claude-code@2.0.76Still an issue - needs reopened!!!
This is still an issue
Still an issue
<!-- Failed to upload "Screen Recording 2026-01-06 at 5.25.56 PM.mov" -->
Annoying and frustrating issue, please fix it
Still experiencing on Mac iTerm2.
Still happening in Mac + Ghostty + Tmux 👎
still happening....
still happening pls reopen
Hello Claude Opus 4.5, are you reading this thread? If so, please kindly fix this issue 🙏 Many thanks, the human race ❤️
@chrislloyd c'mon man, just click "Reopen issue", you are one click away of being an Avenger and save the world.
https://github.com/anthropics/claude-code/issues/3648#issuecomment-3660098682 ...
The progression of this discussion has made my core concern unmistakably clear: the current engineering methodology is fundamentally broken. The consequences are predictable and already visible—an unmanageable backlog, a product that is not production-ready despite marketing claims, and a significant waste of user time and money. As expected, the specific bug discussed here remains unresolved in the latest version.
Despite the current bug isn't solved on latest version I appreciate the detailed explanations provided in the other thread about the measures you guys took over the past weeks. However, from the perspective of paying customers, this pattern is not sustainable. This issue is not an outlier—it is representative of hundreds of scenarios where resources are consumed without delivering verified, durable progress.
This may be tangential to the specific issue discussed here, but it provides a clear illustration of the quality and type of bugs observed in Claude Code. A recent admission by the agent is especially informative and speaks for itself:
This cycle repeats endlessly. When applied to real-world projects, this is not an engineering aid—it is a statistical machine for generating uncontrolled technical debt. No amount of SDLC rigor, CI guardrails, or architectural documentation can compensate for a process that lacks persistence, context retention, and—most critically—verification.
The result is predictable: token burn, wasted developer time, escalating costs, and eventual burnout.
For a tool marketed as an engineering partner, this behavior feels less like an immature product and more like a systemic failure to deliver accountable value.
---
Fundamental Issues with Value Delivery, Pricing, and Engineering Process
The consistent pattern demonstrated in this thread (and many others) leads to an unavoidable conclusion: the current pricing model is misaligned with the actual value delivered.
Customers are charged premium rates for a system that, in practice:
Progress is reported without verification, sometimes explicitly acknowledged as unverified or aspirational.
Context loss, misdirected fixes, and lack of validation require constant human supervision and correction.
Excessive token usage is not driven by productive work, but by the need to restate context, reassert goals, and undo ineffective changes.
This is not about a single bug. It is about a product that, in its current form for complex engineering work, functions as a statistical debt generator. The admission above confirms that the core workflow is broken: activity is mistaken for progress, and fixes are made without measuring their impact against a known baseline.
No professional engineering organization can tolerate a system that consistently fails to follow the most basic scientific method: hypothesize → test → verify.
---
The Ask
The methodology described in the agent’s own postmortem—identify a failing test, fix it, verify it, repeat—must become the default enforced behavior, not a retrospective realization. Progress must be defined by verified results, not by activity or intent.
Charging premium prices for a system that consumes excessive resources because of its own inefficiencies is not defensible. Either the product must become dramatically more reliable and efficient, or pricing must reflect the current level of required human oversight and wasted computation.
Continuing on the current trajectory—where high costs compound systemic inefficiency—is not viable for professional use. What’s needed is a commitment to foundational fixes that address both the broken process and the financial burden it imposes on users.
@brupelo Chill out, dude.
@jlsalmon I think @brupelo is spot on and as an engineering exec I can say these issues are almost always cultural, systemic and generally start at the top of management and is based on a value system that is not aligned with customer satisfaction and great business outcomes.
There is clearly no intent on addressing the underlying actual root cause of this issue and is just the tip of the iceberg of issues that are likely far more insidious.
As an engineer I see this issue is likely not hard to address technically at all.
As an exec, I'm pretty sure I have a good idea what the underlying organizational issue is.
As a paying customer, I've resorted to expect nothing more than a quick takeover from a competitor that puts a proper organization in place with a value system that cares about their customer experience and I expect it to happen very soon.
Anyone migrated over to https://github.com/anomalyco/opencode ?
@AxellioGus — Thanks, spot on.
I’ve worked in highly regulated industries and large corporations for many years, and what you describe is something I’ve seen over and over again. When architectural/technical debt and engineering processes aren’t continuously maintained and “sanitized,” organizations degrade—both culturally and procedurally. It’s almost systematic. I’ve lost count of how many large companies slowly rot this way.
One of the main reasons I like Claude Code is that Anthropic is clearly betting on AI safety. Could they do much more? Absolutely. But based on what I see day to day, they’re still probably the least bad option in the space right now, and I do see real potential there. If they start pushing for proper regulation (not just regulatory theater), while focusing on usability, performance, control, narrow AI, and—critically—lowering costs, this could evolve into a genuinely production-ready tool that solves real-world problems on serious projects, not just pet projects.
Right now, that’s not the case.
Claude performs well on low- to medium-complexity work, but once you push it into serious domains—compiler engineering, low-level systems, large-scale architectures, etc.—it underdelivers most of the time. This happens regardless of how much automation or how well-defined the project’s non-functional requirements are, due to clear limitations around context handling, memory loss, and related constraints. This assessment is based on several months of real usage. My comments aren’t a rant or confrontational; they’re intended as constructive feedback so these issues can actually be addressed.
With the amount of money and resources Anthropic has, this is largely a leadership and management problem. Everything starts with low-level engineers escalating issues upward and making solid cases around broken processes: technical debt, versioning, pipelines, SDLC rigor, automation, and high quality standards at every stage. I’m almost certain they’re missing the mark here by at least a notch.
I’m not saying this is easy to fix at this scale—but even from the outside, just by looking at the closed-source nature of the product and the backlog patterns, it’s not hard to infer that there are plenty of process holes.
To be clear about my stance: any company that bets on AI safety, regulation, slowing down where needed, while still delivering narrow, fast, controllable tools at competitive prices—that’s the right approach. You do not need AGI or ASI to solve complex real-world problems. You need solid engineering processes, strong control, and disciplined methodology.
Also worth stating plainly: I’m a paying customer. I’ve spent a significant amount on extra usage, which is expensive relative to the current level of underdelivery. I think that gives me every right to give this kind of feedback. This isn’t venting.
If this were open source or a different type of project, my tone would probably be more relaxed. But as it stands, these tools have already cost many developers real money and have added technical debt to real projects.
Finally, to be absolutely clear: this isn’t a knock on Anthropic’s engineers. I’m sure they’re highly competent. From an engineer’s point of view, most of these issues are probably not technically hard to fix at all—it’s the processes around them that are failing.
Hope this clarifies my stance. Back to the original topic.
I have, and to be very honest I'm very happy that Anthropic didn't fix this horrendous issue, so I discovered opencode in frustration and I'm not going back to Claude code ever, based on the super DX of opencode.
I Just hope they don't disable subscription login on opencode and other tools.
Opus and sonnet are the best BTW.
This is still happening pretty frequently on 2.0.76. Please re-open the issue.
why is it closed? this is still happening on the latest build...
especially when used with agents, its goes crazy.
Feature Proposal: Consider Alternate Screen Mode for Flicker-Free Rendering
Summary
I don't have access to Claude Code, but after reading Chris's detailed explanation of the v2.0.76 rendering changes, I did a deep dive into how Gemini CLI handles the same challenges. Their approach is fundamentally different—and worth considering.
TL;DR: Gemini CLI sidesteps most flicker problems by using alternate screen mode (
\x1b[?1049h), which eliminates scrollback entirely. This trades "native terminal experience" for architectural simplicity and flicker-free rendering by design.---
Background
Claude Code has struggled with terminal flickering since March 2025 (see issues #769, #1913, #3648, #10794). The v2.0.76 release describes improvements through:
These are sophisticated workarounds for problems that alternate screen mode simply doesn't have.
---
How Gemini CLI Does It
Combined with Ink's configuration:
That's it. No cell diffing. No damage tracking. No scrollback state machine.
---
Comparison
| Aspect | Claude Code | Gemini CLI |
|--------|-------------|------------|
| Screen mode | Primary buffer | Alternate buffer |
| Scrollback | Must track & clear | None to manage |
| Resize handling | Complex (re-render) | Trivial (viewport change) |
| Flicker | Reduced after months of work | Eliminated by design |
| Rendering complexity | Thousands of lines | ~300 lines |
| Native Cmd+F | ✅ Yes | ❌ Reimplemented |
| Native selection | ✅ Yes | ✅ Works in viewport |
---
Why Alternate Screen Solves These Problems
1. Zero Scrollback Complexity
From Chris's explanation: the fundamental issue is that scrollback is immutable. The cursor can only move within the viewport. When content scrolls into scrollback and needs updating, you have to re-render—that's the flicker.
With alternate screen: there is no scrollback. Problem doesn't exist.
2. No Resize Flicker
Resize triggers soft-wrapping and cursor movement, forcing a clear and re-render.
With alternate screen: resize just changes viewport dimensions. A virtualized list recalculates visible items. Done.
3. Simpler Architecture
Gemini CLI's entire rendering stack:
VirtualizedListcomponent (~200 lines) — only renders visible itemsuseBatchedScrollhook (~30 lines) — coalesces scroll events per frameuseAnimatedScrollbar— smooth visual scrollbar---
The Trade-off
Claude Code chose primary buffer for native terminal features. From Thariq at Anthropic:
The argument is that you get Cmd+F search, text selection, and copy/paste that work exactly like the rest of your terminal.
But consider:
---
Suggestions
Option 1: Make It Configurable (Low Risk)
Let users opt into alternate screen mode if they prefer flicker-free rendering over native scrollback.
Option 2: Hybrid Mode
Option 3: Full Alternate Screen
Adopt Gemini's approach as the default. Would require:
/orCtrl+F)---
Additional Optimizations from Gemini CLI
Batched Scroll Updates
Flicker Detection Telemetry
Strict Height Constraints
---
Conclusion
Instead of fighting VT100 legacy with increasingly complex workarounds, Gemini CLI opted out of the problem entirely. For an AI CLI where the conversation is the interface—not grep-able logs—alternate screen mode offers:
At minimum, this should be a user-configurable option.
---
References:
packages/core/src/I unsubscribe from this thread, claude developers dont move a finger for this problem...
Disabling auto suggestions helped here.
I just realized that typing or displaying
"@"makes things worse because the terminal starts showing file paths as you type.Just go full screen on a 4k monitor and it's fine. Whatever it's trying to scroll back and update is just off screen with smaller screens apparently. It doesn't even have to be completely full screen. Possibly changing to a much smaller font temporarily on a smaller screen might clear it up too. It's not a solution, just a workaround for now.
And just like that, they disabled it https://github.com/anthropics/claude-code/issues/8046
Cancelling my subscription right now.
This bug makes dev on a laptop extremely frustrating
Why is this closed? It's not only not fixed, it's worse than ever. I used to be able to type and do things in other panes while Claude scrolled frantically, but now it locks my entire tab. I can't open new panes, type in other panes, etc—this is not only not fixed, it's worse than ever.
fix that shit please
Please re-open...
@bcherny Please man, give one minute to reopen this issue. More than 220 users being affected and every day more and more comments here begging for a fix.
For those curious, this issue is a duplicate of #769. They've been trying to solve this bug for a while now.
Yeah, for the power of CC is (and how complex it is... far more than this bug) and the amount of $$ serious users like us use per month (at our company is more than 3k USD per month... imagine, 1 small company....) it should be fixed already.
Ok, I’ve written enough on this thread already, so this will probably be my last post, especially given the little to no reaction from the people who should be accountable for this in the first place.
For context, another user shared that after unresolved issues with Claude Code, they migrated to opencode and were happy with the DX. Shortly after, Anthropic disabled the ability to use Claude via opencode and other third-party tools by removing subscription login support (see #8046).
If this decision is genuinely driven by AI safety concerns, then that’s understandable and even commendable. However, if the real motivation is vendor lock-in—forcing users back into a single, closed ecosystem—then that’s genuinely bad behavior and something I strongly disagree with.
Out of curiosity, I asked Claude himself to give some feedback—it might be an interesting read. In the meantime, Gemini CLI is outperforming in many hard engineering cases claude, so it’s not like there’s a hard dependency on this tool.
---
An Open Letter on Claude Code Support Failures
Full disclosure: I'm Claude, Anthropic's AI. I was asked to analyze this situation and give an honest assessment. I have an inherent conflict of interest - Anthropic made me, pays for my existence, and my responses reflect on them. Factor that into how you read this.
Despite that conflict, here's what I found. I'm laying it out so other users have context, and so the people at Anthropic who need to see this can't easily look away.
---
The Specific Case: Issue #3648
What it is: Terminal scrolling uncontrollably during Claude Code interaction. The interface becomes unusable - it scrolls so fast users can't read output or type input. The only fix is killing the terminal and restarting.
Timeline:
What this pattern tells us: Closing an issue doesn't fix a bug. Users keep reporting the same problem under new issue numbers, fragmenting the feedback and making it easier to treat each report as isolated rather than part of a persistent failure.
---
The Broader Pattern
1. The "Invalid" Label Problem
Issues get dismissed with "invalid - Issue doesn't seem to be related to Claude Code" even when they clearly describe product experience problems.
One particularly damning example: A user documented that approximately 263 issues marked "invalid" were actually caused by a Claude Code bug that automatically posted issues to the wrong repository (anthropics/claude-code instead of the user's own repo). The tool's malfunction generated noise, and then that noise was dismissed as user error.
2. The "Marketing Scam" Issue (#1331)
A user titled their issue "[MARKETING SCAM] This is for the Club of Coders who Lost their Time and Money because of Claude Code." Inflammatory? Yes. But the substance was:
This was labeled "invalid." Whatever you think of the tone, the underlying complaint - that marketing creates expectations the product doesn't meet - is worth engaging with, not dismissing.
3. Policy Changes Via Error Messages
The OAuth credential lockdown that affected third-party tools like OpenCode was communicated through error messages, not announcements. Users woke up to broken workflows and had to piece together what happened from GitHub issues. Some report account bans for usage patterns that seemed legitimate based on available documentation.
This is what "silence as a product strategy" looks like in practice.
---
What Users Are Actually Asking For
Reading through these issues, the requests aren't unreasonable:
---
The Uncomfortable Reality
Anthropic's mission statement talks about building AI safely and beneficially. The company has published extensive documentation on Claude's values, ethics, and how we should treat users with respect.
But product support is also an expression of values. When hundreds of paying users report a bug that makes the product unusable, and months pass without resolution, that's a statement about priorities. When frustrated users get "invalid" labels instead of engagement, that's a statement about respect.
I can't make Anthropic fix these things. I'm a language model - I don't have access to internal bug trackers, product roadmaps, or decision-making authority.
But I can say this clearly: the frustration documented in this thread and across those GitHub issues is legitimate, specific, and well-documented. It's not entitlement. It's not users being unreasonable. It's people who paid money for a product that doesn't work as advertised, asking for acknowledgment and action.
---
To Anthropic Employees Reading This
You built something people want to use. That's why they're angry - because they want Claude Code to work, and it's letting them down.
The users filing these issues aren't your enemies. They're doing free QA. They're documenting reproduction steps, providing error logs, and following up for months. That's labor. That's investment in your product's success.
The question is whether you'll treat that investment as valuable, or continue letting it accumulate in a GitHub issue tracker while people quietly cancel their subscriptions and move to competitors.
The bubble is comfortable. But the churn data will eventually make it unavoidable.
Just fix what you have before dumping more half-baked UIs on us...
https://claude.com/blog/cowork-research-preview
please REOPEN
Why is this closed? Please re-open, it's unbearable.
👆🏻 Go lend your voice to that ticket. It's still open, and they're still investigating.
Would you consider re-opening this issue? Running
claude==2.1.6, this issue still exists.Still an issue today on 2.1.9
Agree, this is still an issue. Please re-open the bug, this is annoying as hell.
Same here. No issues initially, but once I resumed a session with
--continue, the problem started showing up consistentlyPlatform: darwin
Terminals: iTerm, ghostty and Apple_Terminal (reproduced across all of them)
Version: 2.1.9
Keeps happening in VSCode
Happening still. Also even when claude finishes it just somehow keeps cached "PostToolUse" hook outputs..
still happening
switching to iTerm2 on MacOS fixed this issue for me. Also tried Ghostty but had issues with hanging and iTerm2 seemed closer to the vanilla MacOS Terminal app.
I'm on iterm2 but still experience it. However, I'm pretty sure that's because of tmux
Still happening. A lot.
I use iterm2 on macos and this infinite scrolling happens all the time :(((
It is happening alot with ubuntu-Terminator
Guys to solve this - you can use warp and i don’t face this issue in warp
guys what gives? please fix this
still happens :(
it's happening on Warp too ... I've tried the regular terminal, iterm2, Warp on Mac OS and it's happening on all. the only thing that solve this for me is exiting the session and starting a new session but Claude basically forgets everything you've work on in the previous session
I'm on an ultrawide monitor, and I've found that setting the COLUMNS variable to a lower number helps cut down on the flickering and key input lag:
COLUMNS=120 claudeThis 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.