[Feature]: Conversation outline — a jump-to table of contents for my own prompts in a session
- Dominant language
- TypeScript
- Stars
- 69.7k
- Forks
- 4.5k
- Avg merge
- 16h 8m
- Merged PRs (30d)
- 451
Description
### Problem or use case
In a long agent session there is no way to see the list of prompts I sent, or to jump back to one. Once a session runs for a few hours the transcript is thousands of lines of tool output, and my own messages — the only anchors I actually remember ("the one where I asked about the fetch fallback") — are buried in it.
Today the only options are:
- scroll the transcript / terminal by hand,
- `TerminalSearch` (`src/renderer/src/components/TerminalSearch.tsx`), which needs me to already remember the exact wording, and only searches the scrollback that is still in the buffer,
- the AI Vault session row, which previews only the **last 3 turns** (`sessionDetailConversationTurns(session, 3)` in `src/renderer/src/components/right-sidebar/AiVaultSessionDetails.tsx`) and otherwise sends me to the raw JSONL log.
Orca already ships exactly this affordance for one content type: the markdown editor has a real table of contents panel (`MarkdownTableOfContentsPanel.tsx`, `markdown-table-of-contents.ts`) with collapse-by-level and click-to-jump. A conversation is just as navigable a document, and gets nothing.
### Proposed solution
A conversation outline for the native chat transcript: a togglable panel (same role as the markdown TOC) listing every **user** message in the session, in order, each as a one-line truncated preview + relative timestamp. Clicking an entry scrolls the transcript to that message.
Minimum useful version:
- user turns only — assistant turns and tool runs are the noise this is meant to skip
- built from the transcript the native chat already assembles (`native-chat-incremental-assembler.ts` / `native-chat-message-grouping.ts`), so no new data source
- filter box over the outline entries, so it doubles as "search my own messages"
- reuse the existing TOC panel visual language rather than inventing a second outline style
Nice-to-have, not required for a first cut:
- slash commands / `/compact` boundaries shown as separators, so context resets are visible in the outline
- keyboard shortcuts to jump to previous/next user message
- the same outline in the AI Vault session details for finished sessions, replacing the "latest 3 turns" preview with a full jump list
- terminal-mode sessions (harder: needs xterm markers on prompt submit rather than a structured transcript)
### Alternatives or additional context
- Searched open and closed issues for `table of contents`, `outline`, `session transcript`, `conversation index`, `jump to message`, `prompt history` — the TOC hits (#4819–#4822, #6345) are all the markdown editor, and the transcript hits (#11396, #10326) are AI Vault/chat bugs. No existing request for this.
- Related: #11370 (Agent Session History coverage) is about *which* sessions are listed; this is about navigating *inside* one.
- Prior art: the markdown TOC panel in Orca itself; the ChatGPT/Claude web "jump to message" behavior; editor breadcrumb outlines.
Contributor guide
Assessment
This issue has not been assessed yet.