TUI freezes in Zed integrated terminal (Windows/git-bash) — 100% full-screen redraws

Resolved 💬 3 comments Opened Mar 14, 2026 by JSorenSwanson Closed Mar 18, 2026

Environment

  • Claude Code: 2.1.76
  • OS: Windows 10 (MINGW64_NT-10.0-26200)
  • Shell: git-bash (bash)
  • Editor: Zed (integrated terminal)
  • Terminal size: ~1030×161

Description

Claude Code's TUI repeatedly freezes/halts when running inside Zed's integrated terminal on Windows with git-bash. The CLI becomes unresponsive for several seconds at a time, particularly during streaming output and tool execution with large results.

Debug log evidence

After enabling --debug, the log shows the renderer is doing 100% full-screen redraws with zero incremental blitting on every render cycle:

High write ratio: blit=0, write=63946 (100.0% writes), screen=1040x161
Full reset (scrollback changes): scrollbackRows=1011, firstChangeY=3

This pattern repeats on every frame. With ~1000 scrollback rows and a 1030+ column terminal, each redraw writes ~63KB. The blit=0 indicates no incremental updates are happening — the entire screen + scrollback is rewritten from scratch every time.

The Full reset (scrollback changes) entries suggest Zed's terminal emulator is triggering a scrollback reset on each render, which forces Claude Code to abandon incremental rendering and do a full redraw.

Reproduction

  1. Open Zed on Windows
  2. Open the integrated terminal (git-bash)
  3. Run claude
  4. Interact normally — ask it to run a bash command or read a file
  5. The TUI will periodically freeze/halt for seconds at a time, especially during streaming responses or large tool outputs

Workaround

Running Claude Code in Windows Terminal (outside Zed) does not exhibit the freeze — the issue appears specific to Zed's terminal emulator.

Expected behavior

Incremental rendering (blitting changed regions) instead of full-screen redraws, avoiding the ~63KB/frame write overhead that overwhelms the terminal.

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗