feat(vscode): add prompt navigator rail to chat transcript - #12632
Conversation
Code Review SummaryStatus: No Issues Found | Recommendation: Merge Files Reviewed (28 files)
Core logic ( Reviewed by claude-sonnet-5 · Input: 40 · Output: 7.5K · Cached: 1.4M Review guidance: REVIEW.md from base branch |
…12632) * feat(vscode): add prompt navigator rail to chat transcript * chore: update kilo-vscode visual regression baselines --------- Co-authored-by: kilo-maintainer[bot] <kilo-maintainer[bot]@users.noreply.github.com>
The problem
Returning to a session — from history, the tab strip, or an Agent Manager card — means re-reading the transcript to reconstruct what was actually asked. The session title alone isn't enough to resume, so switching between sessions costs a scroll-back through the whole conversation before you can follow up.
What this adds
A prompt navigator rail on the left edge of the chat transcript: one tick per prompt you sent. Hovering or focusing it expands a floating card that lists those prompts with a short preview of the answer next to each, and clicking a tick or row jumps the transcript straight to that turn. The goal is to answer "what did I ask here?" without reading the transcript.
The rail and its card always render the same set of prompts, so tick count and row count stay 1:1. Only as many prompts are shown as fit the transcript height — the newest are kept and older ones simply aren't drawn, so long sessions degrade to a shorter list instead of overflowing or scrolling the card.
Layout-wise the rail is absolutely positioned into the transcript's existing left inset, so it never shrinks or shifts the readable lane at any width. When the panel is wide it sits 8px left of the centered lane; when narrow it clamps to the container edge, and in both regimes the transcript content stays clear of it. The card is centered on the tick group and kept inside the transcript, so it can't ride up over the task header or down over the composer.
Because
ChatView→MessageListis shared, the rail appears in the sidebar, Kilo editor tabs, the sub-agent viewer, and Agent Manager (including when its diff or terminal panel narrows the chat pane) from one implementation, with no Agent Manager-specific code.Screenshots
Sidebar (narrow):

Agent Manager:

Card detail:

Wide editor tab:
