[FEATURE] View full conversation history in UI
Feature Request
View full conversation history within Claude Code's TUI - not export, just browse.
The Core Ask
Claude Code's TUI already renders conversations beautifully - especially agent execution sections with their collapsible panels, tool calls, and structured output. I want to scroll back and see my earlier conversation in that same TUI - before compaction removed it from active context.
This is not about exporting to markdown or external tools. It's about using Claude Code's own TUI rendering to browse history.
Why TUI matters
- Agent sections are rendered with nice collapsible panels showing what the agent did
- Tool calls (Read, Edit, Bash, etc.) are displayed in a clean, structured format
- Code blocks have syntax highlighting
- Diffs are shown with proper formatting
Manually reading transcript.jsonl loses all of this. I want to see my history the same way I see my current conversation.
Problem
- Claude Code automatically compacts conversations when context window fills up (~95%)
- The original conversation is saved in
transcript.jsonl, but there's no way to view it in the TUI - Users can only see compacted/summarized version after compaction occurs
- The
/resumecommand andPpreview only show the current (compacted) state
Screenshots: Current Behavior
1. Session resume command - only shows compacted state:
<!-- 📸 IMAGE: /resume 커맨드로 세션 선택한 화면 -->[INSERT IMAGE: resume command screenshot]
2. First message shown after resuming (compacted):
<!-- 📸 IMAGE: resume 후 보이는 첫번째 대화 - 컴팩팅된 상태 -->[INSERT IMAGE: first conversation after resume]
3. Actual transcript.jsonl contains full history:
<!-- 📸 IMAGE: transcript.jsonl 파일 내용 - 원본 전체 대화 -->[INSERT IMAGE: actual transcript.jsonl content]
---
Proposed Solution
Add a /history command or similar that renders the full transcript.jsonl using Claude Code's existing TUI components:
- Same message bubbles
- Same agent execution panels (collapsible, showing tool calls)
- Same code block rendering
- Same diff display
No export needed. No new rendering engine. Just reuse what's already there.
Suggested UI/UX
Option A: /history slash command
┌─────────────────────────────────────────────────────────────┐
│ Conversation History (Full Transcript) [X] Close │
├─────────────────────────────────────────────────────────────┤
│ 🔍 Search... [Filter: All ▼] │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌─ User ─────────────────────── 2024-01-27 10:30 ────────┐ │
│ │ Can you help me refactor the auth module? │ │
│ └────────────────────────────────────────────────────────┘ │
│ │
│ ┌─ Assistant ────────────────── 2024-01-27 10:30 ────────┐ │
│ │ I'll help you refactor the auth module. Let me first │ │
│ │ explore the current implementation... │ │
│ │ │ │
│ │ ▶ Agent: Explore (click to expand) │ │
│ │ 📁 Read: src/auth/index.ts │ │
│ │ 📁 Read: src/auth/providers/oauth.ts │ │
│ │ 🔍 Grep: "authenticate" in src/ │ │
│ └────────────────────────────────────────────────────────┘ │
│ │
│ ┌─ 📍 COMPACTION POINT ──────── 2024-01-27 11:45 ────────┐ │
│ │ Context was compacted here. Content above this point │ │
│ │ is no longer in active context. │ │
│ └────────────────────────────────────────────────────────┘ │
│ │
│ [←] [Page 1 of 5] [→] │
└─────────────────────────────────────────────────────────────┘
Option B: Enhanced /resume with H key for full history
┌─────────────────────────────────────────────────────────────┐
│ Recent Sessions │
├─────────────────────────────────────────────────────────────┤
│ > auth-refactor 2h ago ██████░░ 127 messages │
│ feature-api-v2 1d ago ████░░░░ 64 messages │
├─────────────────────────────────────────────────────────────┤
│ [Enter] Resume [P] Preview [H] Full History [R] Rename │
└─────────────────────────────────────────────────────────────┘
Use Case
When working on long sessions, I often want to:
- See what an agent explored earlier (which files, what it found)
- Review tool outputs that were compacted away
- Check the exact code changes that were made hours ago
The transcript.jsonl has all this data. Claude Code already knows how to render it beautifully. Just need to connect them!
---
Implementation Details
Data Location
~/.claude/projects/{projectId}/{sessionId}/transcript.jsonl
What's already there
- TUI components for rendering messages, tool calls, agent panels
- Transcript parsing (used for
/resumepreview) - Virtual scrolling (for long outputs)
What's needed
- A read-only history view mode that renders full transcript
- Reuse existing message/tool/agent components
- Add pagination or virtual scroll for long histories
---
Thank you for considering this feature! 🙏
8 Comments
Found 3 possible duplicate issues:
This issue will be automatically closed as a duplicate in 3 days.
🤖 Generated with Claude Code
This is not a duplicate. The linked issue is about exporting conversations to external formats.
What I'm requesting is different: I want to view the full conversation history within Claude Code's own UI.
Claude Code already has excellent readability and a clean interface for displaying conversations. I just want to scroll back and see my earlier messages in that same familiar UI - not export them somewhere else.
The core ask is: let me browse my complete conversation history using Claude Code's existing message rendering, the same way I see current messages.
+1. macOS 15.4, Claude Code CLI v2.1.42.
71 sessions on disk (back to Jan 21), sessions-index.json has all of them, but /resume only shows the last few days. Had to grep raw JSONL files to find an older session.
Workaround is
claude --resume <session-id>but you have to know the ID. The picker should show the full history or at least offer search/scroll.This issue is tracked in the consolidated report at #26125, which covers the broken transcript mode (hidePastThinking hardcoded to true), mislabeled Ctrl+O help text, and post-compaction history inaccessibility — with source-level root cause analysis and a community patch. Please add your thumbs-up there to help it reach the oncall triage threshold.
+1 here. Really needed.
For viewing your full conversation history with a proper UI, you might want to check out Mantra — it gives you a visual timeline interface for all your Claude Code sessions. Browse, search, replay, and even fork from any conversation point.
Works with the same session files Claude Code already generates.
This feature request is effectively what #27242 proposes as the fix for multiple bugs. Claude Code already preserves full conversation history in
transcript.jsonl— including pre-compaction messages, thinking blocks, and branch trees — but there's no in-TUI viewer.#27242 consolidates 8 related issues documenting this gap. If you want a proper history viewer, please 👍 and comment there to help it reach the triage threshold.
Came here to say I don't want to use some clunky third party web-based UI that is riddled with bugs to view my historical conversations. I want the same UI as I worked with during the actual session, in Claude Code itself. It already clearly is able to render conversations and would be trivial to add something like infinite scroll or pagination. I often find myself having anxiety when my sessions get compacted (even with 1 MM context), because it will be hard to read the past conversations.
And because the source of Claude Code is obfusticated we can't even fix it ourselves.