[BUG] Chat auto-scroll can't be paused during long Auto-mode sessions, making it impossible to read earlier output until Claude stops

Resolved 💬 3 comments Opened Apr 26, 2026 by endofcake Closed Apr 29, 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?

Summary

In a long-running Auto-mode session, Claude streams new text continuously (multi-paragraph progress updates, "Insight" blocks, tool-result narration, etc.). The chat view auto-scrolls down one line for every new line that arrives. There is no way I could find to pause that auto-scroll, so once Claude is more than ~one screen ahead of where I'm reading, I lose my place every couple of seconds.

In practice this means I can't read anything Claude has already written until Claude stops working. For Auto mode specifically, that can be many minutes.

Actual behaviour

Auto-scroll fires for every line of new output regardless of where the viewport currently is. Scrolling up briefly succeeds but is undone within ~1 second by the next streamed line. Clicking and holding on the scroll bar does not interrupt the behaviour.

Workarounds tried

  • Scrolling up with the mouse wheel: undone by the next streamed line.
  • Clicking on the scroll bar (track and thumb): doesn't pin the view.
  • Selecting text in an earlier message: selection is preserved but the view still jumps.
  • Putting the window in the background: doesn't help; the view is still scrolled when I return.

The only working workaround is to wait for the session to finish or interrupt Claude, neither of which is reasonable in Auto mode where the whole point is letting Claude run.

Impact

Auto mode is the mode where this hurts most because:

  • Sessions are long (minutes to tens of minutes of continuous output).
  • The output volume is high and my role is to skim/review, not to dictate the next step.
  • A lot of the value (e.g. inline ★ Insight ─ explanatory blocks, design-decision rationale) lives in earlier output that I want to revisit while Claude continues.

Suggested fix (UX-level, not a prescription)

  • Detect when the viewport is not at the bottom and suspend auto-scroll until the user returns to the bottom.
  • Show a small floating "↓ Jump to latest" button while auto-scroll is suspended (Slack/Discord-style).
  • Optionally, keep a setting under Preferences for users who'd prefer auto-scroll to always follow.

Environment

  • Claude Code desktop app (macOS), Code mode, Auto mode active.
  • macOS 15.x (Darwin 25.x).
  • Claude 1.4758.0 (fb266c) 2026-04-24T20:22:30.000Z

What Should Happen?

Standard "follow tail" pattern, as used by GitHub Actions live logs, Slack, Discord, terminal pagers (less +F), most live log viewers:

  • If the view is at the bottom, new output auto-scrolls into view.
  • If I have scrolled up (by mouse wheel, scroll bar drag, page-up, etc.), auto-scrolling stops until I either return to the bottom or click a "Jump to latest" affordance.

Error Messages/Logs

Steps to Reproduce

  1. Start a long task in Auto mode (e.g. "scaffold a multi-service project end-to-end").
  2. While Claude is mid-task, scroll up to read an earlier message — say, an explanation block from a few tool calls ago.
  3. Observe that as soon as Claude streams the next line of output, the view jumps down by one line. Trying to read the earlier message becomes impossible — the lines I'm reading slide off the top while I'm reading them.

Claude Model

Opus

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

Claude 1.4758.0 (fb266c) 2026-04-24T20:22:30.000Z

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

_No response_

View original on GitHub ↗

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