[BUG] Desktop app: chat window auto-scrolls to bottom during streaming even when user has scrolled up

Resolved 💬 4 comments Opened Apr 25, 2026 by mvgx Closed Jun 3, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

This affects the Claude Code Desktop app on Windows (not the CLI / terminal version).

While Claude is streaming a response (token-by-token / phrase-by-phrase), the
chat window force-scrolls to the bottom on every update. This happens even when
I have explicitly scrolled up to read earlier content — including scrolling all
the way to the top of the conversation. The viewport is yanked back down on
every new chunk, making it impossible to read previous messages while a
response is being generated.

This started in recent versions; older builds of the desktop app did not behave
this way.

What Should Happen?

Standard "sticky bottom" behavior used in terminals, chat apps and IDE chat
panels:

  • If the user is at the bottom of the scroll

container, auto-scroll to follow new streaming content.

  • If the user has scrolled up beyond that threshold, do NOT auto-scroll. Leave

the viewport exactly where the user put it.

  • Optional: show a "jump to bottom" button / new-message indicator so the user

can opt back in with a single click.

This is the same UX that was already shipped for the VSCode extension via
issue #11092 ("Auto-scroll should pause when user scrolls up in chat",
closed completed on 2025-11-12). The desktop app appears to be missing that
fix (or has regressed it).

Error Messages/Logs

Steps to Reproduce

  1. Open Claude Code Desktop app on Windows.
  2. Send a prompt that produces a long streamed response (e.g. ask for a

detailed explanation, or run an agent task that emits a lot of streaming
output).

  1. While the response is still streaming, scroll up to read an earlier part

of the conversation — even all the way to the top.

  1. Observe: the viewport jumps back toward the bottom on every new chunk the

model emits. There is no way to keep the viewport stationary until
streaming finishes.

Expected: viewport stays where the user put it.
Actual: viewport is yanked down on every streaming update.

Claude Model

None

Is this a regression?

Yes, this worked in a previous version

Last Working Version

app-1.3561.0

Claude Code Version

app-1.4758.0

Platform

Anthropic API

Operating System

Windows

Terminal/Shell

Windows Terminal

Additional Information

_No response_

View original on GitHub ↗

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