hermes - ✅(Solved) Fix [Bug]: The CLI window always automatically rotate to the bottom [1 pull requests, 1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
NousResearch/hermes-agent#12884Fetched 2026-04-20 12:16:22
View on GitHub
Comments
0
Participants
1
Timeline
3
Reactions
0
Participants
Timeline (top)
cross-referenced ×1labeled ×1referenced ×1

Error Message

  1. error appears

Additional Logs / Traceback (optional)

Root Cause

When I run 'hermes' to start a new conversation in CLI and try to use my mouse to scroll to the top and have a look at the message history, the window always automatically rotate to the bottom. That could be a bug because user cannot read through the whole content it produced and even when you click your mouse to hold the scroll bar, it will still rotate to the bottom. The problem won't show up in other command options such as 'hermes model' and so on.

Fix Action

Fixed

PR fix notes

PR #12982: fix(ui-tui): prevent stickyScroll re-activation after manual scroll-up

Description (problem / solution / changelog)

Summary

Fixes #12884 - Prevents aggressive stickyScroll re-activation when user manually scrolls up to view previous content.

Problem

The follow-on-scroll mechanism in render-node-to-output.ts restores stickyScroll=true when:

  • User is positionally at bottom (scrollTopBeforeFollow >= prevMaxScroll)
  • stickyScroll === false (explicitly broken by scrollTo/scrollBy)

However, this was too aggressive - streaming content would re-activate sticky mode immediately after user scrolls up, fighting user intent.

Solution

Add recentScrollUpTime tracking to prevent re-activation:

  1. DOMElement type (dom.ts): Add recentScrollUpTime?: number property
  2. scrollBy() (ScrollBox.tsx): Set timestamp when dy < 0 (scroll-up)
  3. scrollToBottom() (ScrollBox.tsx): Clear timestamp (explicit go-to-bottom)
  4. follow-on-scroll (render-node-to-output.ts): Check recentScrollUpTime before restoring sticky (500ms cooldown)

Testing

  • All 92 existing tests pass
  • TypeScript compiles cleanly
  • Build succeeds

Files Changed

  • ui-tui/packages/hermes-ink/src/ink/dom.ts - Add recentScrollUpTime property
  • ui-tui/packages/hermes-ink/src/ink/components/ScrollBox.tsx - Track scroll-up timestamp
  • ui-tui/packages/hermes-ink/src/ink/render-node-to-output.ts - Check timestamp before restoring sticky

Changed files

  • ui-tui/packages/hermes-ink/src/ink/components/ScrollBox.tsx (modified, +26/-20)
  • ui-tui/packages/hermes-ink/src/ink/dom.ts (modified, +4/-0)
  • ui-tui/packages/hermes-ink/src/ink/render-node-to-output.ts (modified, +12/-8)

Code Example

Report     https://paste.rs/Htx30
agent.log  https://paste.rs/gSsMV

---
RAW_BUFFERClick to expand / collapse

Bug Description

When I run 'hermes' to start a new conversation in CLI and try to use my mouse to scroll to the top and have a look at the message history, the window always automatically rotate to the bottom. That could be a bug because user cannot read through the whole content it produced and even when you click your mouse to hold the scroll bar, it will still rotate to the bottom. The problem won't show up in other command options such as 'hermes model' and so on.

Steps to Reproduce

  1. run 'hermes'
  2. send a message to initailize your conversation such as 'Hello'
  3. use your mouse to scroll the cli window
  4. error appears

Expected Behavior

The CLI window should be casually scrolled using the mouse so that the user can check the history content.

Actual Behavior

The CLI window always automatically rotate to the bottom and the user cannot check to former output.

Affected Component

CLI (interactive chat)

Messaging Platform (if gateway-related)

N/A (CLI only)

Debug Report

Report     https://paste.rs/Htx30
agent.log  https://paste.rs/gSsMV

Operating System

Linux 4.19.0-amd64-desktop x86_64

Python Version

3.11.15

Hermes Version

0.10.0

Additional Logs / Traceback (optional)

Root Cause Analysis (optional)

No response

Proposed Fix (optional)

No response

Are you willing to submit a PR for this?

  • I'd like to fix this myself and submit a PR

extent analysis

TL;DR

The issue can likely be fixed by modifying the CLI implementation to prevent automatic scrolling to the bottom when the user attempts to scroll up using the mouse.

Guidance

  • Review the hermes command's implementation to identify the code responsible for handling user input and scrolling behavior.
  • Investigate potential conflicts between the CLI library or framework used by hermes and the Linux operating system's scrolling behavior.
  • Check the agent.log file (https://paste.rs/gSsMV) for any relevant error messages or clues that might indicate the cause of the issue.
  • Consider adding a feature or option to hermes that allows users to toggle automatic scrolling on or off.

Example

No code snippet can be provided without more information about the hermes implementation.

Notes

The issue seems to be specific to the hermes command and the Linux operating system, so any fixes or workarounds may need to be tailored to these environments.

Recommendation

Apply a workaround, such as modifying the hermes command to use a different scrolling behavior or adding a feature to toggle automatic scrolling, as the root cause of the issue is not immediately clear and may require further investigation.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

hermes - ✅(Solved) Fix [Bug]: The CLI window always automatically rotate to the bottom [1 pull requests, 1 participants]