Convert Warp agent conversations from the local SQLite database into browsable, self-contained HTML transcripts.
Works on macOS, Linux, and Windows.
The Warp equivalent of claude-code-transcripts.
Warp stores all agent conversations locally in a SQLite database as Protocol Buffers binary blobs. This tool reads the database directly, parses the protobuf wire format, and generates clean HTML pages you can browse, search, and share.
Each transcript shows the full conversation flow:
- User prompts with working directory context
- AI responses with basic markdown rendering
- 💭 Thinking blocks (collapsible) — the model's internal reasoning
- Tool calls — shell commands, file reads, and other tool invocations
- Tool results — command output and file contents (collapsible)
- Model badges — shows when the model switches mid-conversation
All output is self-contained HTML with inline CSS, no external dependencies. Supports dark/light themes via prefers-color-scheme.
# Interactive picker — select a conversation and open in browser
python3 warp_transcripts.py
# Export a specific conversation
python3 warp_transcripts.py conv <conversation_id> -o ./output
# Export all conversations to a browsable archive
python3 warp_transcripts.py all -o ./archive
# List recent conversations with IDs
python3 warp_transcripts.py listAfter viewing a transcript in the interactive picker, you're prompted to save it to a permanent location:
Suggested filename: Fix-auth-timeout-in-login-handler.html
Enter a path, filename, or directory to save the transcript.
› Save as (Enter to skip): ~/Documents/transcripts/
Saved: /Users/you/Documents/transcripts/Fix-auth-timeout-in-login-handler.html
Examples:
# Save to an existing directory (uses the suggested filename)
~/Documents/transcripts/
# Save to a new directory (created automatically)
~/project-logs/sprint-12
# Save with a custom filename
~/Desktop/auth-fix-session.html
# Save to the current directory with a custom name
my-transcript.htmlPress Enter to skip and leave the file in the temp directory.
- Python 3.7+
- No third-party packages — standard library only
- Warp terminal installed (the database is created automatically by Warp)
Interactive picker showing your 30 most recent conversations. Select one by number to export and open in your browser.
Print a table of recent conversations with IDs, timestamps, task counts, and credit usage.
Export a single conversation to HTML.
Export all conversations to a browsable archive with an index page linking to each conversation.
All subcommands accept these options:
| Option | Description |
|---|---|
--db PATH |
Path to warp.sqlite (auto-detected if omitted) |
-o, --output DIR |
Output directory (default: temp dir for single, ./warp-archive for all) |
--no-open |
Don't open in browser after generating |
--json |
Include raw JSON alongside HTML |
| Option | Description |
|---|---|
--limit N |
Max conversations to export (default: 500) |
The tool auto-detects the Warp database:
| Platform | Default path |
|---|---|
| macOS | ~/Library/Group Containers/2BBY89MBSN.dev.warp/Library/Application Support/dev.warp.Warp-Stable/warp.sqlite |
| Linux | ~/.local/state/warp-terminal/warp.sqlite |
| Windows | %LOCALAPPDATA%\warp\Warp\data\warp.sqlite |
Warp stores agent task data as Protocol Buffers binary blobs in the agent_tasks table. The tool parses the wire format without a .proto schema, extracting:
| Protobuf field | Content |
|---|---|
| Step field 2 | User prompt text + context (pwd, OS, shell) |
| Step field 3 | AI response text |
| Step field 4 | Tool call (shell command, file read paths) |
| Step field 5 | Tool result (command output, file contents) |
| Step field 15 | Thinking/reasoning text |
| Step field 25 | Model selection (id + display name) |
Conversation metadata (credits, models, token usage) comes from the agent_conversations table (JSON), and user prompt text is cross-referenced from ai_queries.
- warp-thinking-browser — Interactive terminal browser for Warp agent thinking text (the predecessor that discovered the protobuf structure)
- agent-desktop-thinking — Fork of Agent Desktop that captures and exports Claude's extended thinking
MIT