You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[BUG] Cannot scroll to beginning of long conversations (message limit hardcoded to 100) (#6138) #6137
In long conversations, users cannot scroll back to the first message. The TUI only loads the most recent 100 messages, with no way to access earlier history.
Root Cause
The message fetch limit is hardcoded to 100 in sync.tsx:348:
changed the title [-]Cannot scroll to beginning of long conversations (message limit hardcoded to 100)[/-][+]Cannot scroll to beginning of long conversations (message limit hardcoded to 100) (#6138)[/+]on Dec 26, 2025
@rekram1-node I’m mostly Java/backend and not TypeScript/UI, so I needed to look up what you meant lol.
but yeah makes sense to me now that pagination + virtualized scrolling is the real fix. though I have to admit that I'd need to lean hard on Claude 4.5 Opus to tackle that. I opened a follow‑up issue, if you want to review.
Keep running into this issue in complex codebases/when using big models. +1 on needing a solution. I'd recommend not baking in a hard limit on the history; that's just another time bomb waiting to happen on the next change needed.
Also, is it possible this is causing miscalculation of context usage/remaining context? I keep running into context exceeded errors with ChatGPT-5.2-Codex xhigh even as it shows substantial amount of context remaining.
Furthermore, it seems like even the /export function can't recover the full history and starts mid-way through the full thread.
I had to write an ad-hoc script to reassemble content from /store as even export can't provide the full history. Highly recommend this issue is prioritized - sessions literally lose data if they get long enough.
@ozataman There's another issue opened at #6548 to implement the pagination feature that Aiden recommended that would also remove the limit while having better performance than this feature because it doesn't have to load every message in the session at once, but still wip I think
With cursor-based pagination (#8535), the message_limit feature is redundant — users can scroll infinitely through session history with a 500-message sliding window.
I've revised PR #6138 to include only session_list_limit, which limits the session picker UI (default: 150). This is orthogonal to pagination and still useful for users with 1000+ sessions who want a faster picker.
This PR's conflicts with #8355 are now eliminated since message loading is handled entirely by pagination.
Gotcha. Totally agree with session search/pagination as well. I already have 100s of session on OpenCode and I've been using it for less than a week. I desperately want to see all my previous sessions as an archive of interactions I can always go back on to find whatever I need. Ideally want them full-text discoverable, so I can load, fork, etc.
changed the title [-]Cannot scroll to beginning of long conversations (message limit hardcoded to 100) (#6138)[/-][+][BUG] Cannot scroll to beginning of long conversations (message limit hardcoded to 100) (#6138)[/+]on Jan 25, 2026
Activity
[-]Cannot scroll to beginning of long conversations (message limit hardcoded to 100)[/-][+]Cannot scroll to beginning of long conversations (message limit hardcoded to 100) (#6138)[/+]CasualDeveloper commentedon Dec 30, 2025
Will continue rebasing on top of release tags as they're set.
rekram1-node commentedon Dec 31, 2025
i think the better solution we want is to paginate the messages with virtualized scrolling
CasualDeveloper commentedon Dec 31, 2025
@rekram1-node I’m mostly Java/backend and not TypeScript/UI, so I needed to look up what you meant lol.
but yeah makes sense to me now that pagination + virtualized scrolling is the real fix. though I have to admit that I'd need to lean hard on Claude 4.5 Opus to tackle that. I opened a follow‑up issue, if you want to review.
This PR is just a quick band‑aid for now.
ozataman commentedon Jan 12, 2026
Keep running into this issue in complex codebases/when using big models. +1 on needing a solution. I'd recommend not baking in a hard limit on the history; that's just another time bomb waiting to happen on the next change needed.
ozataman commentedon Jan 12, 2026
Also, is it possible this is causing miscalculation of context usage/remaining context? I keep running into context exceeded errors with ChatGPT-5.2-Codex xhigh even as it shows substantial amount of context remaining.
Furthermore, it seems like even the /export function can't recover the full history and starts mid-way through the full thread.
I had to write an ad-hoc script to reassemble content from /store as even export can't provide the full history. Highly recommend this issue is prioritized - sessions literally lose data if they get long enough.
CasualDeveloper commentedon Jan 13, 2026
@ozataman There's another issue opened at #6548 to implement the pagination feature that Aiden recommended that would also remove the limit while having better performance than this feature because it doesn't have to load every message in the session at once, but still wip I think
CasualDeveloper commentedon Jan 15, 2026
Update: Revised scope
With cursor-based pagination (#8535), the
message_limitfeature is redundant — users can scroll infinitely through session history with a 500-message sliding window.I've revised PR #6138 to include only
session_list_limit, which limits the session picker UI (default: 150). This is orthogonal to pagination and still useful for users with 1000+ sessions who want a faster picker.This PR's conflicts with #8355 are now eliminated since message loading is handled entirely by pagination.
ozataman commentedon Jan 15, 2026
Is it really merged? The issue you linked looks open.
CasualDeveloper commentedon Jan 15, 2026
Sorry, was talking about my personal local fork branch. removed phrase to avoid confusion. (it's not yet merged to dev)
ozataman commentedon Jan 15, 2026
Gotcha. Totally agree with session search/pagination as well. I already have 100s of session on OpenCode and I've been using it for less than a week. I desperately want to see all my previous sessions as an archive of interactions I can always go back on to find whatever I need. Ideally want them full-text discoverable, so I can load, fork, etc.
[-]Cannot scroll to beginning of long conversations (message limit hardcoded to 100) (#6138)[/-][+][BUG] Cannot scroll to beginning of long conversations (message limit hardcoded to 100) (#6138)[/+]github-actions commentedon Mar 27, 2026
To stay organized issues are automatically closed after 90 days of no activity. If the issue is still relevant please open a new one.
vanyauhalin commentedon Mar 27, 2026
https://nostalebots.xyz
CasualDeveloper commentedon Apr 2, 2026
Reopened as #20754
syo093c commentedon Apr 22, 2026
To temporary solve the problem,
I use
opencode webinterface, which will give me the full trajectory.