Double ESC rollback: conversation history not fully visible in Ghostty until window is resized/fullscreened

Resolved 💬 2 comments Opened Apr 15, 2026 by jinminp-pl Closed May 24, 2026

Bug Description

When using Claude Code in Ghostty terminal on macOS, double-pressing ESC to roll back a conversation turn causes the conversation history to not be fully visible. The content appears truncated/cut off. Resizing or fullscreening the Ghostty window forces a re-render and makes all conversation history visible.

Environment

  • Terminal: Ghostty (macOS)
  • OS: macOS (Darwin 25.4.0)
  • Claude Code mode: flclick / interactive mode

Steps to Reproduce

  1. Open Claude Code in Ghostty terminal
  2. Have a multi-turn conversation (several exchanges)
  3. Double-press ESC to trigger conversation rollback
  4. Observe that conversation history is not fully visible — content appears cut off
  5. Resize or fullscreen the Ghostty window → conversation history becomes fully visible

Expected Behavior

After double-ESC rollback, the full conversation history should be visible without needing to resize the window.

Actual Behavior

Conversation history is truncated/not fully rendered until a window resize event is triggered (e.g., by fullscreening the window).

Hypothesis

Claude Code's rollback rendering does not trigger a proper terminal viewport refresh / scroll-to-bottom after re-rendering conversation history. The content is rendered but outside the current viewport, and only a terminal resize event (SIGWINCH) causes the display to correct itself.

Workaround

Fullscreen or manually resize the Ghostty window after double-ESC rollback to force terminal re-render.

Related Issues

  • #682 (Double ESC crash / unreliable rollback)

View original on GitHub ↗

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