-
Notifications
You must be signed in to change notification settings - Fork 46.7k
perf(tui): stabilize long-session scrolling #15926
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 18 commits
Commits
Show all changes
90 commits
Select commit
Hold shift + click to select a range
db4e4ac
perf(tui): stabilize long-session scrolling
OutThisLife 14fcff6
style(tui): apply formatter
OutThisLife 458ce79
fix(tui): persist model switches by default
OutThisLife 19d75d1
perf(tui): coalesce composer echo updates
OutThisLife 9bb3bc4
perf(tui): optimistically echo simple input
OutThisLife 5cd41d2
perf(tui): widen native input echo
OutThisLife ee7ef33
fix(tui): queue busy submissions gracefully
OutThisLife cd7c5e5
perf(tui): defer local input render during echo
OutThisLife 1c964ed
fix(tui): rely on native cursor for input
OutThisLife 355e0ae
fix(tui): keep streaming progress stable during interaction
OutThisLife 3811210
fix(tui): address review feedback
OutThisLife bbd950e
fix(tui): keep stream cadence responsive while typing
OutThisLife 8f0fa08
fix(tui): preserve composer width on narrow panes
OutThisLife bc17310
fix(tui): smooth selection drag behavior
OutThisLife 7d68ea9
fix(tui): stream legacy thinking deltas visibly
OutThisLife e16e196
fix(tui): keep selection drag responsive
OutThisLife 5ac4088
fix(tui): keep live progress visible while scrolling
OutThisLife 7143d22
fix(tui): keep queued sends in queue UI
OutThisLife a0aebad
fix(tui): anchor details to stream timeline
OutThisLife 2e6c3c7
fix(tui): address follow-up review nits
OutThisLife 05dc2ee
fix(tui): tighten timeline detail spacing
OutThisLife d91e245
fix(tui): attach inline diffs to tool timeline
OutThisLife 6814646
fix(tui): avoid duplicating flushed stream text
OutThisLife a8fcd1c
fix(tui): apply details mode live
OutThisLife cc16d0e
Merge remote-tracking branch 'origin/main' into bb/tui-long-session-perf
OutThisLife 4a21920
fix(tui): address copilot review nits
OutThisLife bb59d3b
fix(tui): preserve completed thinking panel
OutThisLife 015f6c8
fix(tui): support modified enter for multiline input
OutThisLife 2be5e18
fix(tui): keep thinking color theme-neutral
OutThisLife a8bfe72
fix(tui): address latest review feedback
OutThisLife c9f7b70
fix(tui): filter thinking status noise
OutThisLife a30ffbe
fix(tui): show queued prompts when drained
OutThisLife 7b5b524
refactor(tui): clean thinking and viewport helpers
OutThisLife 3d21f97
fix(tui): keep live tool state before stream segments
OutThisLife 350ee1b
refactor(tui): render progress in ordered stream timeline
OutThisLife d4dde6b
fix(tui): restore resumed transcript lineage
OutThisLife a7831b6
fix(tui): stabilize live progress rendering
OutThisLife 3271ffb
fix(tui): pin todo panel above live output
OutThisLife cf84392
fix(tui): keep todo pinned outside transcript
OutThisLife cee4036
fix(tui): merge tool shelves in transcript
OutThisLife 64de685
test(tui): remove stale turn freeze experiment
OutThisLife 6a38739
fix(tui): format thinking paragraphs
OutThisLife f684620
fix(tui): isolate turn state from app render
OutThisLife a30db69
chore(tui): clean live progress lint
OutThisLife 1566f1e
fix(tui): report actual session on exit
OutThisLife f5552f9
fix(tui): stabilize live todo progress
OutThisLife a5319fb
test(tui): cover live todo completion flow
OutThisLife 4d3e3a7
chore(tui): sort imports
OutThisLife 4943ea2
fix(tui): merge tools into contextual shelves
OutThisLife 319c1c1
fix(tui): inline todo in transcript, group across thinking
OutThisLife c78b528
feat(tui): archive todos at turn end with incomplete hint
OutThisLife b36007b
feat(tui): allow collapsing archived todo panels
OutThisLife bde89c1
fix(cli): -c picks the most recently used session
OutThisLife debae25
perf(tui): incremental markdown during streaming
OutThisLife cb7cfba
fix(cli): surface last_active in search_sessions so -c works
OutThisLife 2259eac
feat(tui): collapse completed todo panel on turn end
OutThisLife 69ff201
feat(tui): anchor todo panel above streaming output
OutThisLife 71eee26
perf(tui): full-pipeline instrumentation + profiling harness
OutThisLife cd7a200
perf(tui): instrument scroll fast-path decline reasons
OutThisLife 7242361
fix(tui): wrap streaming markdown split in column Box
OutThisLife 4a9070c
perf(tui): defer Md upgrade for fresh-mounted assistant rows
OutThisLife 7ca16ee
perf(tui): scroll one row at a time per wheel event, half-viewport pe…
OutThisLife d3dedf1
revert(tui): drop DeferredMd, profiling showed it was neutral
OutThisLife f823535
perf(tui): instrument stdout drain — rule out terminal parse bottleneck
OutThisLife 82f8422
perf(tui): profile harness gains --loop, --save, --compare
OutThisLife 8d2b083
Add node-inspect-debugger and python-debugpy skills
OutThisLife 9a46feb
experiment(tui): HERMES_TUI_INLINE flag to skip AlternateScreen
OutThisLife 4cdb696
Add hermes-agent-skill-authoring skill
OutThisLife 0cd9849
Promote debugging-hermes-tui-commands to in-repo skill
OutThisLife 4395c2b
feat(tui): port claude-code's wheel accel state machine
OutThisLife 85e9a23
feat(tui): HERMES_TUI_FPS=1 shows live fps counter
OutThisLife c370e2e
perf(tui): cache stringWidth/wrapText/sliceAnsi + skip-slice when lin…
OutThisLife 2576751
perf(tui): unified Ink cache eviction on memory pressure + session reset
OutThisLife b115ea6
feat(tui): anchor LiveTodoPanel to latest user message row
OutThisLife 527ac35
fix(tui): address Copilot review comments
OutThisLife b1c49d5
chore(tui): /clean recent perf work — KISS/DRY pass
OutThisLife 7da2f07
Merge remote-tracking branch 'origin/main' into bb/tui-long-session-perf
OutThisLife 2e4b65b
chore(tui): clean remaining Ink perf scaffolding
OutThisLife dda1277
fix(tui): address Copilot review follow-ups
OutThisLife 625c31f
fix(tui): run built TUI with production React by default
OutThisLife b51c528
fix(tui): address virtual row and perf log review notes
OutThisLife c2ca02f
fix(tui): stabilize live todo panel count and anchor position
OutThisLife 635948d
chore(tui): tighten todo-fix comments, drop dead archive call
OutThisLife ffa33e5
chore(tui): remove dead branch cleanup code
OutThisLife 7945fce
Merge branch 'main' of github.com:NousResearch/hermes-agent into bb/t…
OutThisLife d81b1cd
chore: uptick
OutThisLife de790ea
test(tui): align viewport snapshot key test with quantization
OutThisLife c23463f
chore(tui): keep MRU resume split out of perf PR
OutThisLife 3e16649
Revert "fix(tui): report actual session on exit"
OutThisLife d308ae2
fix(nix): refresh tui npm deps hash
OutThisLife File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.