Skip to content

Terminal rendering enters infinite refresh loop when conversation history is long #1874

Closed

Description

@neonid0

Describe the bug

When a session accumulates a large number of messages, the CLI's TUI enters an infinite re-render loop, causing the terminal to flicker/refresh continuously and become unusable. The only recovery is to kill the process.

Affected version

GitHub Copilot CLI 0.0.423.

Steps to reproduce the behavior

  1. Start copilot in any directory
  2. Send many messages back and forth until the conversation history is long
  3. Observe the terminal begins rapidly refreshing/flickering and never stops

Expected behavior

The CLI renders normally regardless of conversation length.

Additional context

Environment:

  • Reproducible on: kitty + zsh (Linux), Alacritty + zsh (macOS)
  • Trigger: Long conversation with many back-and-forth messages
  • Can check configuration on https://github.com/neonid0/.dotfiles

Actual behavior: Terminal enters an infinite refresh/redraw loop and becomes unresponsive.

Workaround: /compact to reduce message history before the loop starts, or Ctrl+C to kill the process.

Activity

  1. added theissue type on Mar 6, 2026
  2. ViktorBergman commented on Mar 6, 2026

    @ViktorBergman

    Same issue occurs on Windows Terminal too.

  3. ori-nonni commented on Mar 6, 2026

    @ori-nonni

    This is particularly bad with gemini or gpt codex, which have a lot of thinking output, triggering the bug sooner

  4. devm33 commented on Mar 27, 2026

    @devm33
    Member

    Hello, we have now shipped a new rendering approach that fixes flickering and flashing. Please update to the latest version and try it out!

  5. ori-nonni commented on Mar 27, 2026

    @ori-nonni

    Hello, we have now shipped a new rendering approach that fixes flickering and flashing. Please update to the latest version and try it out!

    Here is the release referenced, which sets the alt screen as default: https://github.com/github/copilot-cli/releases/tag/v1.0.12
    Also to add to this! I'm currently running 1.0.2. The --alt-screen flag fixes the issue (you can also set this setting in config). It would
    have been helpful to know this sooner.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions