You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
1.5 KiB
Markdown
42 lines
1.5 KiB
Markdown
---
|
|
# claudbg-i6l2
|
|
title: 'TUI: interactive session browser'
|
|
status: todo
|
|
type: epic
|
|
created_at: 2026-03-30T04:44:52Z
|
|
updated_at: 2026-03-30T04:44:52Z
|
|
---
|
|
|
|
Implement a full terminal UI using Ratatui for browsing Claude Code sessions.
|
|
|
|
## Design
|
|
|
|
**Navigation model:** drill-down (not split-pane)
|
|
- Screen 1: full-screen session list → Enter opens transcript
|
|
- Screen 2: full-screen transcript with embedded sub-agents panel → Tab cycles panes, Escape returns to list
|
|
- Screen 3: sub-agent transcript (same layout as Screen 2, Escape returns to parent transcript)
|
|
|
|
**Session list screen**
|
|
Columns: short ID, datetime, project (truncated tail), model, message count, sub-agent count.
|
|
Sorted most-recent-first.
|
|
|
|
**Transcript screen**
|
|
- Header: session ID, model, tokens (in/out/cache), tool call summary, duration
|
|
- Scrollable chat log: user messages, assistant text, tool use blocks (truncated), tool results (truncated)
|
|
- Long lines truncated with horizontal scroll
|
|
- Sub-agents panel (Tab to focus): list of sub-agent runs for this session; Enter navigates to sub-agent transcript
|
|
- Thinking blocks hidden by default
|
|
|
|
**Keyboard bindings**
|
|
- `Up`/`Down`/`k`/`j` — navigate within pane
|
|
- `Left`/`Right`/`h`/`l` — horizontal scroll in transcript
|
|
- `Tab` — cycle focus between panes
|
|
- `Enter` — drill into selection
|
|
- `Escape` — go back
|
|
- `q`/`Q` — quit confirmation dialog (q=confirm, Esc=cancel)
|
|
- `?` — help modal listing all shortcuts (Esc to close)
|
|
|
|
**Non-goals for this milestone**
|
|
- Live refresh / follow mode (future feature)
|
|
- Color themes / configuration
|