cc-chats
v0.2.10
Published
Browse and search your Claude Code chat history
Downloads
1,081
Maintainers
Readme
Claude Code Chats
A web app for browsing and searching your local Claude Code chat history.
Features
- Project Browser — View all your Claude Code projects with search, filter, and sorting (recent, name, messages, sessions)
- Session History — Browse chat sessions for each project with timestamps and message counts
- Message Viewer — Expand full conversation threads including tool use and results
- Full-Text Search — Search across all messages with optional project-scoped filtering, powered by SQLite FTS5
- Session Management — Resume, duplicate, or delete sessions
- AI Summaries — Generate summaries for sessions and projects via the Claude CLI
- Project Memory — View project memory files when available
- Database Sync — One-click sync to index your chat history into a local SQLite database
Quick Start
npx cc-chatsThis downloads, builds, and starts the app on http://localhost:3000.
To use a different port:
npx cc-chats --port 4000Prerequisites
- Node.js 18+
- Claude Code installed locally (reads from
~/.claude/projects)
Install Globally
npm install -g cc-chats
cc-chatsDevelopment
git clone https://github.com/psousa50/claude-code-chats.git
cd claude-code-chats
npm install
npm run devHow It Works
The app reads Claude Code's local JSONL files at ~/.claude/projects to display your chat history. Clicking Sync indexes all conversations into a SQLite database at ~/.claude/chat-search.db for fast full-text search.
AI Summaries
Summaries are generated by invoking claude -p under the hood. This requires Claude Code to be installed and authenticated on your machine.
If running the app as a background service (e.g. via launchctl on macOS or systemd on Linux), the claude binary may not be on the service's PATH. Set the CLAUDE_PATH environment variable to the absolute path of the binary.
macOS .plist:
<key>EnvironmentVariables</key>
<dict>
<key>CLAUDE_PATH</key>
<string>/Users/yourname/.local/bin/claude</string>
</dict>Linux systemd unit:
[Service]
Environment=CLAUDE_PATH=/home/yourname/.local/bin/claudeAlternatively, adding the directory containing claude to the service's PATH also works — though CLAUDE_PATH is preferred as it grants access to only the one binary needed.
Tech Stack
- Next.js 15 — React framework
- React 19 — UI library
- Tailwind CSS — Styling
- better-sqlite3 — Local SQLite database
- TypeScript — Type safety
Disclaimer
This project was created in vibe coding mode, using Claude Code.
Licence
MIT
