[FEATURE] View full conversation history in UI

Status Open
Maintainer reply None cached
Activity 8 comments · opened Jan 27, 2026

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 /resume command and P preview 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 /resume preview)
  • 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! 🙏

View original on GitHub ↗

8 Comments

github-actions[bot] · 7 months ago

Found 3 possible duplicate issues:

  1. https://github.com/anthropics/claude-code/issues/4483
  2. https://github.com/anthropics/claude-code/issues/16300
  3. https://github.com/anthropics/claude-code/issues/13015

This issue will be automatically closed as a duplicate in 3 days.

  • If your issue is a duplicate, please close it and 👍 the existing issue instead
  • To prevent auto-closure, add a comment or 👎 this comment

🤖 Generated with Claude Code

taejs · 7 months ago

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.

robertbpugh · 6 months ago

+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.

scapeshift-ojones · 6 months ago

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.

AyushRajgor · 6 months ago

+1 here. Really needed.

gonewx · 6 months ago

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.

scapeshift-ojones · 6 months ago

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.

jleppert · 1 month ago

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.