Scrollback duplication in VS Code integrated terminal (assistant messages and prompt line repeat 2-3×)
Resolved 💬 5 comments Opened Apr 23, 2026 by julish13 Closed May 30, 2026
Summary
In long-running sessions inside the VS Code integrated terminal, assistant messages plus the input prompt line (>) get re-rendered 2–3 times in the scrollback. The underlying conversation is unaffected — the session JSONL contains the turn only once, so it's a pure rendering artifact.
This looks like a regression (or partial coverage) of the 2.1.116 fix:
Fixed scrollback duplication in inline mode where resizing the terminal or large output bursts would repeat earlier conversation history
Environment
- Claude Code: 2.1.118
- macOS: 26.2 (Darwin 25.2.0)
- VS Code: integrated terminal (latest stable)
- Shell: zsh
- Session: ~3h long, ~68k tokens, Opus 4.7 (1M context), \"bypass permissions\" mode
- Mode indicator showed
[Timeout]in the status line at the time
Repro
- Open VS Code integrated terminal, start
claude - Run a long session with a few large outputs (Bash with sizable JSON, multi-paragraph assistant replies)
- Let the session idle past the timeout indicator (
[Timeout]appears under the model name) - Continue the conversation
- Earlier assistant messages and the prompt line
>re-appear 2–3 times in scrollback above the current turn
Cmd+K (clear terminal scrollback) makes them disappear, confirming the conversation state is correct and only the rendering is duplicated.
Expected
Each turn renders once.
Actual
Same assistant message + prompt line render 2–3× in a row.
Notes
- Not reproducible in non-VS-Code terminals (have not yet verified — will update if I test iTerm/Ghostty)
- Appears to be triggered after
[Timeout]re-entry into the session, possibly combined with large output bursts - Session journal (
~/.claude/projects/.../*.jsonl) shows the turn exactly once
This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗