[BUG] Cursor jumps and overwrites text in VS Code integrated terminal after a few minutes (arrow keys trigger it) — continuation of #3116

Status Open
Maintainer reply None cached
Activity 0 comments · opened Aug 20, 2026

Environment

  • Claude Code CLI
  • VS Code integrated terminal
  • macOS
  • Data recently migrated from an old Mac to a new Mac with Migration Assistant

Steps to Reproduce

  1. Open the VS Code integrated terminal.
  2. Start Claude Code.
  3. Use Claude Code as normal for a few minutes.
  4. Trigger an interactive prompt, for example the AskUserQuestion multi-choice picker.
  5. Use the arrow keys to move through the options, or through input history.

Expected Behavior
The cursor stays in the correct position. New text does not overwrite or replace text that already appeared on screen.

Actual Behavior
The cursor jumps backward and overwrites text that already rendered. The screen appears to swap back and forth between the new input and old, stale input. A fresh restart of Claude Code clears the problem for a few minutes, then it returns. Arrow key navigation reliably triggers it.

The problem does not happen in plain Terminal.app. It does not happen with normal typing outside Claude Code. It is specific to Claude Code's own interactive terminal UI running inside VS Code's integrated terminal.

Workarounds Tried (did not fix it)

  • Turned off terminal.integrated.gpuAcceleration in VS Code.
  • Ran /tui default to switch from fullscreen rendering to the classic renderer.
  • Toggled the Accessibility permission for VS Code off and on.
  • Toggled the Input Monitoring permission for VS Code off and on.

Additional Context
Issue #3116 (https://github.com/anthropics/claude-code/issues/3116) has several independent reports of similar jumping and flicker behavior in the VS Code integrated terminal, on both macOS and Windows/WSL. That issue never received a fix from the Anthropic team. A stale-issue bot closed it after 60 days of inactivity, not because the problem was resolved.

View original on GitHub ↗