Terminal strobing/flickering after returning from session selection screen (Windows Terminal)

Status Fixed / completed
Reported on v2.1.144
Maintainer reply ✓ Yes — claude[bot]
Activity 11 comments · opened May 19, 2026 · closed May 21, 2026
💡 Likely answer: A maintainer (claude[bot], contributor) responded on this thread — see the highlighted reply below.

Environment

  • Claude Code: 2.1.144
  • Windows Terminal: 1.24.11321.0
  • Shell: PowerShell 7.6.1
  • OS: Windows 11 Pro 10.0.26200

Steps to Reproduce

  1. Open Claude Code in Windows Terminal (PowerShell 7.6.1 profile in taskbar)
  2. Navigate to the session selection screen
  3. Click back into an active session where Claude is thinking (spinner visible)
  4. Observe strobing/flickering in the terminal

What Happens

After re-entering the session:

  • Terminal strobes/flickers while Claude is thinking (spinner animation)
  • Strobing also occurs on every key press while typing a new prompt
  • When Claude finishes thinking, the strobing stops
  • When a new prompt is submitted and Claude starts thinking again, strobing resumes
  • Issue persists for the entire duration of that terminal session
  • Workaround: Closing and reopening the terminal window clears the bad state

Expected Behavior

Terminal renders cleanly after re-entering a session, with no flickering during the thinking animation or while typing.

Notes

The key-press strobing suggests the terminal gets into a corrupted render state when re-entering a session, not just a spinner animation issue. The problem appears to be in how Claude Code restores terminal state on session resume. Every subsequent render operation (cursor movement, input echo, spinner frame) triggers a full redraw instead of an in-place update.

View original on GitHub ↗

11 Comments

ricardovirtudazo · 3 months ago

I'm experiencing what appears to be the same or a very similar issue. Here's some additional testing data that may help narrow the root cause:

Regular claude sessions have zero flickering on the same machine — the flickering only occurs in sessions entered via claude agents.

Tested across multiple terminals (all flicker in agent view, none in regular sessions):

  • Windows Terminal
  • PowerShell (pwsh)
  • Git CMD
  • Alacritty
  • WezTerm

Cross-platform: claude agents on macOS (Ghostty terminal) has no flicker.

Environment: Claude Code v2.1.144, Windows 11 ARM (10.0.26200) via Parallels on MacBook Pro M4.

Workarounds attempted (none helped):

  • "tui": "fullscreen" in settings.json
  • CLAUDE_CODE_NO_FLICKER=1 env var
  • "prefersReducedMotion": true
  • "spinnerTipsEnabled": false
  • Windows Terminal: "useAtlasEngine": false, "compatibility.disablePartialInvalidation": true, "compatibility.enableUnfocusedAcrylic": false, "useAcrylic": false, "opacity": 100
  • Parallels: switched display from "Best for Retina" to "Scaled"
  • Parallels Tools: confirmed latest version
ricardovirtudazo · 3 months ago

Follow-up: SSH from macOS Ghostty into Windows VM still flickers

To isolate whether the issue is in the terminal renderer or in Claude Code's output, I SSH'd from macOS (Ghostty) into the Windows VM and ran claude agents there. Result: still flickers, even worse than native Windows terminals.

This is significant because the same Ghostty terminal renders claude agents flicker-free when running natively on macOS. The only difference is which Claude Code process is generating the output — macOS vs Windows.

This confirms the bug is in Claude Code's Windows agent view rendering path (the escape sequences/redraws it emits), not in any terminal renderer or display layer.

Summary of all testing:
| Terminal | Platform | Agent view flickers? |
|----------|----------|---------------------|
| Ghostty | macOS native | No |
| Windows Terminal | Windows (Parallels) | Yes |
| PowerShell (pwsh) | Windows (Parallels) | Yes |
| Git CMD | Windows (Parallels) | Yes |
| Alacritty | Windows (Parallels) | Yes |
| WezTerm | Windows (Parallels) | Yes |
| Ghostty (SSH into Windows) | macOS rendering, Windows Claude Code | Yes |

Regular claude sessions have zero flicker in all of the above.

thedarkdestructor · 3 months ago

Having the same issue in windows with WezTerm such a shame!

arturjnt · 3 months ago
  • Windows Terminal
  • PowerShell 7.6.1
  • "tui": "fullscreen" in settings.json
  • CLAUDE_CODE_NO_FLICKER=1 env var

Then:

  • "disableAgentView": false <- causes flicker when within an agent chat
  • "disableAgentView": true <- no more flicker, but can't use agent view
artur-st · 3 months ago

Confirming this repros on Windows 11 Pro (26200) for the attach path specifically (claude agents → enter session, or claude attach <id>), and does not repro for a direct foreground claude launch in the same directory.

Reproduces in every terminal I tried:

  • Windows Terminal + PowerShell 5.1
  • Windows Terminal + PowerShell 7.6.1
  • Windows Terminal + cmd
  • Git Bash

Reproduces on every recent Claude Code version:

  • 2.1.139, 2.1.142, 2.1.144, 2.1.145

So it's not a terminal-, shell-, or recent-version-specific regression — it's the attach-via-supervisor codepath itself. Each keystroke in the prompt triggers a full-screen redraw that the terminal renders as taskbar attention / flicker.

Things I ruled out (no effect):

  • CLAUDE_CODE_NO_FLICKER=1 on/off, tui: "default", CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN=1, CLAUDE_CODE_DISABLE_MOUSE=1
  • preferredNotifChannel: notifications_disabled
  • voiceEnabled: false
  • awaySummaryEnabled: false, terminalProgressBarEnabled: false
  • Removed npx-based statusline
  • Disabled the only plugin with a SessionStart hook (superpowers)
  • Windows Terminal bellStyle: none

Likely root cause (consistent with #27360 and #23211):
The attach path connects the session's stdio via a Windows named pipe to a ConPTY on the attaching terminal. On that pipe, process.stdout.isTTY is unreliable and DECSET 2026 synchronized output isn't negotiated end-to-end, so Ink's incremental render path falls back to full-frame redraws (\x1b[2J + cursor home) on every React state change. The attaching terminal renders the redraws as new content → taskbar flash + visible flicker on each character.

The only behavioral workaround we found is to not use the attach path at all — launching a foreground claude in the same directory works fine. That makes agent view unusable for actual interactive work on Windows today.

ShawnFumo · 3 months ago

Thanks to everyone for getting more data on this. I decided to try using claude agents finally, and the flickering is very distracting. Glad to see I'm not the only one (back to using Happy for now). Also, I noticed that it doesn't seem like agents view or the attached session actually respects the /tui setting. It seems to always be "fullscreen" even if you have "default" selected.

ricardovirtudazo · 3 months ago

Additional testing on different hardware/connection methods:

I also tested claude agents on a MacBook Pro mid-2015 running Windows 10 via Boot Camp:

  • Windows 10 (Boot Camp) directly — no flicker
  • Remote Desktop from macOS (MacBook Pro M4) into Windows 10 (Boot Camp) — no flicker
  • Remote Desktop from Windows 11 (Parallels on M4 Mac) into Windows 10 (Boot Camp) — no flicker

Combined with my earlier testing on Windows 11 ARM (Parallels), this suggests the issue may be Windows 11 specific rather than Parallels specific. Windows 10 handles the agent view attach path without any flickering.

arturjnt · 3 months ago

This issue was fixed as of version 2.1.146.
~5h ago

artur-st · 3 months ago
This issue was fixed as of version 2.1.146. ~5h ago

Can confirm as well. Flickering passed for new sessions. For old sessions, remove them from the agent view (Ctrl+X), then find the sessions and background them. After that, the flickering stops

claude[bot] contributor · 3 months ago

This issue was fixed as of version 2.1.146.

github-actions[bot] · 1 month ago

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