Browse, search, and resume your Claude Code conversations -- from the browser or the terminal.
Project description
Claude Chats & Analytics Viewer
Browse, search, and resume your Claude Code conversations — from the browser or terminal.
What is this?
Claude Code stores all your conversations as local files. This tool gives you a beautiful web UI and terminal CLI to:
- Browse every conversation you've ever had with Claude Code
- Search across titles or deep-search inside every message
- See cost estimates, token usage, and model breakdowns
- Bookmark important conversations
- Export chats as Markdown or JSON
- Resume any past conversation directly in Claude Code
100% local — no data leaves your machine.
Install & Run
macOS / Linux
curl -fsSL https://raw.githubusercontent.com/AnshRajput/claude-chats-and-analytics-viewer/main/install.sh | sh
Windows (PowerShell)
iwr https://raw.githubusercontent.com/AnshRajput/claude-chats-and-analytics-viewer/main/install.ps1 | iex
The installer handles everything — installs pipx if needed, installs the package, and opens the viewer automatically.
Manual install
pipx install claude-chats-and-analytics-viewer # recommended
uvx claude-chats-and-analytics-viewer # uv, no install needed
pip3 install --user claude-chats-and-analytics-viewer
Don't have
pipx?
- macOS:
brew install pipx && pipx ensurepath- Linux:
python3 -m pip install --user pipx && python3 -m pipx ensurepath- Windows:
pip install pipx && pipx ensurepathAfter running
ensurepath, open a new terminal and runccv.
Features
Web UI
| Feature | Description |
|---|---|
| Conversation browser | Search, filter by project, sort by date / tokens / cost |
| Cost estimation | Per-conversation and per-message USD cost based on model pricing |
| Deep search | Toggle DEEP to search inside every message, not just titles |
| Bookmarks | Star any conversation — persisted across sessions |
| Activity heatmap | GitHub-style 52-week calendar showing your Claude usage |
| Copy buttons | One-click copy on every code block |
| Auto-refresh | Detects new conversations while the viewer is open |
| Export | Download as .md, .json, or export everything as a .zip |
| Smart caching | Near-instant startup after first run |
| Usage stats | Token counts, model breakdown, top projects, total cost |
Terminal CLI
| Feature | Description |
|---|---|
| Interactive browser | Paginated list with colored output and keyboard navigation |
| Search | Filter conversations by keyword or project |
| View | Read full conversation messages in the terminal |
| Resume | Jump directly back into any past conversation in Claude Code |
| Bookmarks | Toggle bookmarks from the terminal |
Commands
Web UI (ccv)
ccv # start the viewer (opens browser automatically)
ccv --port 8080 # use a different port
ccv --no-open # start server without opening browser
ccv --update # update to the latest version
ccv --install # auto-start on login (macOS LaunchAgent)
ccv --install-systemd # auto-start on login (Linux systemd)
ccv --uninstall # remove the auto-start service
Terminal CLI (claude-conversations-cli)
claude-conversations-cli # interactive browser
claude-conversations-cli --search "auth bug" # search by keyword
claude-conversations-cli --project "myapp" # filter by project
claude-conversations-cli --view <session-id> # view a conversation
claude-conversations-cli --resume <session-id> # resume in Claude Code
claude-conversations-cli --list # non-interactive list (pipe-friendly)
claude-conversations-cli --list --limit 10 # limit results
Interactive CLI keyboard commands
| Key | Action |
|---|---|
3 |
Show details for conversation #3 |
v 3 |
Read full messages of conversation #3 |
r 3 |
Resume conversation #3 in Claude Code |
b 3 |
Toggle bookmark on conversation #3 |
s <query> |
Search conversations |
a |
Clear search, show all |
n / p |
Next / previous page |
h |
Show help |
q |
Quit |
Update
ccv --update
# or
pipx upgrade claude-chats-and-analytics-viewer
When an update is available, a banner appears in the Web UI and a notice prints in the CLI automatically.
How it works
Claude Code saves conversations as JSONL files at:
~/.claude/projects/<project-name>/<session-id>.jsonl # macOS / Linux
%USERPROFILE%\.claude\projects\<project-name>\<session-id>.jsonl # Windows
This tool scans those files, caches the metadata for fast startup, and serves a local web UI at http://127.0.0.1:5005. Nothing is uploaded or shared anywhere.
Troubleshooting
ccv not found after install
Run pipx ensurepath, then open a new terminal.
Port already in use
ccv automatically switches to the next available port and tells you which one it picked.
Or specify one manually: ccv --port 8080
No conversations found
Make sure you've used Claude Code at least once. Check that ~/.claude/projects/ exists and contains .jsonl files:
ls ~/.claude/projects/
License
MIT — github.com/AnshRajput/claude-chats-and-analytics-viewer
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file claude_chats_and_analytics_viewer-2.0.4.tar.gz.
File metadata
- Download URL: claude_chats_and_analytics_viewer-2.0.4.tar.gz
- Upload date:
- Size: 36.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ffb2a8fa53298a3d4c176ffd9997fff9a6e272853866e6f34053728a71bf6439
|
|
| MD5 |
195bc123928f66d6189b00c3435021d2
|
|
| BLAKE2b-256 |
c8b2bf543d5c9d3755cca415b93e5c06a25827371ea864a3ff0f657184aeedd4
|
File details
Details for the file claude_chats_and_analytics_viewer-2.0.4-py3-none-any.whl.
File metadata
- Download URL: claude_chats_and_analytics_viewer-2.0.4-py3-none-any.whl
- Upload date:
- Size: 37.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2077c4ca1292268dddbe33303b275235c00dd720ac9890744eb930ef84a0e22f
|
|
| MD5 |
157972627c1ee1927259775f83280501
|
|
| BLAKE2b-256 |
1b9bbeb4afb9757b443f62a01ab3ca476a30bf1602900b95d100f96ed9b02f5b
|