The problem
I use ChatGPT a lot and quite often the chat gets very long, which makes it harder to navigate to an earlier prompt or response that may contain relevant information.
The native navigation panel only becomes available after the conversation has been loaded all the way back to the beginning of the chat, as older messages are progressively loaded as you scroll upward.
So if I am somewhere deep inside a huge conversation and want to retrieve something much earlier, I may first have to load my way backwards through the conversation.
I wanted navigation to be available immediately, which is why I built ScrollStop.
What ScrollStop does
ScrollStop adds a navigation panel to the right side of ChatGPT.
Instead of depending only on the messages that are currently visible on the page, it indexes the conversation so that I can navigate through the full chat without first manually scrolling all the way back to the beginning.
The panel has separate Prompts and Responses views. From there I can:
- jump directly to any earlier prompt or response;
- search across the full conversation;
- filter for messages associated with attachments;
- see where I currently am in the conversation.
The main idea is pretty simple: once a ChatGPT conversation becomes something I keep returning to for days or weeks, I want navigating it to feel closer to navigating a document rather than endlessly scrolling through a chat.
The implementation turned out to be more complicated than the UI suggests
My first instinct was that this should be fairly straightforward: find the messages in the page, build a table of contents from them, and scroll to whichever message the user selects.
That works reasonably well on a short conversation.
It becomes a problem on a very long one because ChatGPT does not necessarily keep the entire conversation mounted in the page at once. Older parts of the conversation are progressively loaded.
So an extension that simply reads what is currently present in the DOM can end up building an incomplete index.
That meant ScrollStop needed to maintain its own representation of the conversation rather than treating the currently rendered page as the entire source of truth.
One of the larger conversations I tested had 1,148 indexed prompt/response nodes, representing 574 prompts, while only a relatively small portion of the conversation was mounted in the page at that moment.
That difference between what exists in the conversation and what happens to be rendered right now became one of the central technical problems.
Where ScrollStop is now
ScrollStop is now available on the Chrome Web Store, and I am at the stage where I am trying to answer a more important question than whether I can technically build it:
Is this useful enough for people who genuinely maintain very long ChatGPT conversations that they will keep using it?
ChatGPT already has native navigation, so I am particularly interested in whether ScrollStop's additional capabilities — immediate full-conversation navigation, search, separate prompt/response navigation, and attachment filtering — make a meaningful difference in practice.
I don't just want to know whether the idea sounds useful.
I want to know what happens when someone opens one of their actual long conversations and tries to retrieve something from much earlier.
I’d really value your feedback
If you regularly use long ChatGPT conversations for coding, research, writing, learning, planning, or other work, I would really value your feedback.
Things I am especially interested in are:
- Does ScrollStop make it noticeably easier to recover earlier material?
- Is full-conversation search useful?
- Does navigating responses separately from prompts matter?
- Is anything confusing or unnecessary?
- What still feels missing?
Negative feedback is just as useful to me as positive feedback.
Full disclosure: I am the developer of ScrollStop. It has a 14-day free trial and is paid afterward.
Top comments (0)