I’ve been thinking about how LLM chat interfaces expose conversation structure.
When working through:
-
Iterative prompt refinement
-
Topic divergence
-
Multiple response branches
-
Deep planning / research sessions
The underlying interaction becomes tree-like.
Every edit creates a branch and every refinement shifts the downstream context. But the frontend presents everything as a linear scroll.
There’s no persistent structural map of user turns. Revisiting earlier prompts requires manual scrolling and visual scanning.
For light use this is fine, for heavy iterative workflows, it becomes tedious.
Idea
If users had explicit visibility into session structure: prompts, divergence points, branch counts, would iteration quality improve?
Specifically:
-
Faster non-linear navigation
-
Clearer awareness of prior context
-
More deliberate branching decisions
-
Reduced “context drift”
Experiment
I built a lightweight Chrome extension to test this hypothesis.
My approach was:
Create a minimal structural index of user prompts and expose it as a persistent sidebar for navigation.
No API integration.
No content storage.
Runs entirely locally.
Technical Approach
DOM Observation
-
Mutation observers detect new message nodes
-
Identifies user turns and branch controls
-
Extracts minimal metadata (prompt text + branch indicators)
Structural Index
-
Maintains in-memory mapping of:
-
User prompts
-
DOM references
-
Branch position markers (< 1 / n >)
-
Effectively builds a session map from the rendered UI.
Shadow DOM Injection
-
Sidebar injected via shadow DOM
-
Avoids CSS collision
-
Does not mutate host layout
-
Maintains isolation from upstream changes
Navigation
-
Clicking an indexed prompt scrolls directly to its DOM node
-
No rewriting of the conversation tree
-
Pure augmentation layer
Observation
Even this minimal indexing layer changes how long sessions feel and improves context-awareness.
Making divergence points visible (instead of hover-dependent) and instantly navigable helps to organise and review topics within conversations.
It changes user understanding and prepares them better for their next prompt.
Open Question
If users treat ChatGPT or other LLMs as:
-
A reasoning surface
-
A planning environment
-
A drafting workspace
Then tree-aware features may be necessary to reduce cognitive load.
Curious how others here are thinking about:
-
Branch visualization
-
Session mapping
-
Non-linear navigation in LLM tools
-
Whether chat UIs are the right abstraction long-term
This experiment currently exists as a Chrome Extension - NavGPT to validate structural indexing before exploring API-level implementations.
Would appreciate feedback from anyone experimenting with interface-level LLM augmentation.