claude-chatview
v2.0.0
Published
CLI tool to visualize Claude Agent conversations as a chat UI
Readme



Find and reopen past Claude Code sessions — searchable, rendered as a chat.
Install & run
npx claude-chatviewYour browser opens automatically at http://localhost:3001.
Global install:
npm i -g claude-chatview
cviewFeatures
- Per-session chat view with grouped consecutive messages, code-aware Markdown, and per-tool cards.
- Inline subagent expansion —
Agenttool calls expand the subagent transcript at the call site. - Conversation timeline — a draggable slider across the top of the chat for seeking in long sessions. Arrow / Home / End / PageUp / PageDown also work.
- Open in terminal — every session row produces a
cd "<cwd>" && claude --resume <session-id>snippet you can copy. - Search across session title, last reply, project name, cwd path,
git branch, and
sessionIdprefix. - Light and dark themes (respects
prefers-color-scheme). - Export — copy or save a selected range as Markdown, standalone HTML, PNG, or JPG. A standalone HTML export opens without cview or a network connection and includes its own range selection, theme toggle, HTML re-export, and PNG / JPG capture controls.
- Read-only. cview never writes to your session files.
Keyboard
The timeline slider is focusable:
| Key | Action |
|-----|--------|
| ← / → | Step one message |
| PageUp / PageDown | Step 10 messages |
| Home / End | Jump to start / end |
Configuration
| Variable | Default | Description |
|---|---|---|
| PORT | 3001 | Server port |
| CVIEW_CLAUDE_DIR | ~/.claude | Claude data root |
PORT=4000 cviewSecurity
- Local-only mode on
127.0.0.1. /apirejects non-loopback IPs and non-localhostOriginheaders.- Path traversal in
:project/:sessionId/:agentIdis validated.
Development
Use the Node version in .node-version.
npm run bootstrap # npm ci + Playwright Chromium and system dependencies
npm run dev # Express :3001 + Vite :5173
npm run check # Strict types + lint + unit/integration tests + build
npm run test:e2e # Chromium verification, including offline exports
npm run check:all # All quality gates
npm run build # Node output in build/ + frontend output in dist/
npm run lint:design # Validate DESIGN.md against the official specLicense
MIT
