Skip to content

When "Thinking" output is streaming, point constantly jumps up to top of section #454

@zackattackz

Description

@zackattackz

Checklist

  • I agree to communicate with the author myself (not AI-generated).
  • I've read the README's Filing issues section.
  • I'm running the latest versions (fill in below).
    • agent-shell version: 82a7fff
    • acp.el version: 863f2d62c4b4da8b229581be42d490a7403b2eb1
    • ACP package (e.g. claude-agent-acp) version: 0.22.2
    • Agent CLI (e.g. claude, gemini) version: 2.1.81
  • For requesting new agent support, I'm including a link to the ACP-capable agent or related ACP package.
  • For issues, I'm including ACP traffic (as per README). (I don't think it's relevant for this issue, but I can provide if needed)

If you attempt to follow the output as it streams in the "Thinking" section, your point will constantly jump back up to the top of the section (where the collapsable "Thinking" label is).

See this video for an example of what I mean (apologies for low quality but it gets the point across):

jumping-example.mp4

You can see I'm scrolling down but the point is jumping back up.

If I go to the end of the buffer (M->) it properly streams without jumping back up, but if I scroll up a little bit it will have the same issue.

It is kind of a pain to reproduce the issue, but usually if I just ask sonnet to think about something for a while because I am testing the thinking output it will work well (Huge waste of energy and tokens, I know 😬)

I had claude try solving the issue, but it did not end up really producing much meaningful information. (Following is from claude so take with huge grains of salt) It was saying that it seems like the issue may be caused by shell-maker-with-auto-scroll-edit. And also how if the point is inside the fragment (the thinking block) while it is being updated, since the fragment is deleted and recreated the point gets clamped to the start of the fragment (the thinking header).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions