github / github/copilot-cli

[BUG]: Terminal output overwrites lines in place instead of appending to scrollback

Abierto
#3,110 1 comentario 0 reacciones 0 asignados Ver en GitHub
area:terminal-rendering
Lenguaje dominante
Shell
Estrellas
11.2k
Forks
1.9k
Merge medio
14 h 16 min
PR fusionados (30 d)
6

Descripción

## Description

The CLI renders output using cursor-movement/overwrite sequences that rewrite lines in place on the normal screen buffer, rather than printing linearly. As a result, **no output from the current session ever enters the terminal scrollback buffer** — it is simply overwritten and lost.

This affects all output: responses, tables, code blocks, and reasoning/thinking text. The only content visible when scrolling up is content from *before* the current CLI session started.

## Steps to Reproduce

1. Open a terminal with unlimited scrollback (e.g. iTerm2 with "Save lines to scrollback in alternate screen mode" enabled)
2. Start a Copilot CLI session
3. Ask Copilot to output something long — e.g. a 40-row table
4. Only the portion visible on screen at render time is visible; nothing appears in scrollback
5. Run `/clear` and scroll up — only pre-session content is visible; the entire current session is gone

## Expected Behavior

Output should be printed linearly so that it accumulates in the terminal scrollback buffer like any standard CLI tool (e.g. `git log`, `curl`, etc.).

## Actual Behavior

Output is rendered using in-place cursor movement sequences. Nothing from the current session appears in the scrollback buffer, regardless of scrollback size or terminal settings.

## Impact

- Long responses or tables are truncated to whatever fits on screen — the rest is permanently lost
- There is no way to review earlier turns in the current session by scrolling up
- `/clear` provides no benefit since the current session was never in scrollback to begin with
- Workarounds like iTerm2's alternate screen scrollback setting have no effect

## Environment

- CLI version: 1.0.40
- OS: macOS (Darwin)
- Terminal: iTerm2 with unlimited scrollback and alternate screen scrollback enabled
- Shell: zsh

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.