# vibe-replay

> vibe-replay turns your AI coding sessions — Claude Code, Claude Desktop, Claude Cowork, Cursor, Codex, OpenCode, Hermes, Pi, and Grok Bot — into local-first interactive, shareable web replays. Then use Insights, embedded AI Studio, and Ask Replay to understand what happened. One command for local use, no account required, free and open source.

vibe-replay is a CLI (npm package: `vibe-replay`) that reads your local AI agent session data (Claude Code `~/.claude/`, Cursor `~/.cursor/` + SQLite stores, Codex, OpenCode `~/.local/share/opencode/opencode.db`, Hermes `~/.hermes/state.db`, Pi `~/.pi/agent/sessions/`, Grok Bot `/home/box/agent-data/agent-transcripts` or `~/.grok-bot/agent-transcripts`), then renders recorded prompts, AI responses, tool calls, file diffs, and available thinking blocks as a scrubbable timeline. Try Grok Bot with `npx vibe-replay@latest -p grok-bot` (vibe-replay 0.2.10+). Watch demo: https://vibe-replay.com/view/?gist=de4b16545915ce7ae9a50ca53f58df92. The local dashboard adds searchable session discovery, usage facets, project analytics, and personal Insights. Output is a single HTML file with all assets inlined — no server, no external requests.

Install: `npx vibe-replay`
Source: https://github.com/tuo-lei/vibe-replay
License: MIT

## Core pages

- [Homepage](https://vibe-replay.com/): Product overview, install instructions, feature list.
- [Explore replays](https://vibe-replay.com/explore/): Public AI coding sessions shared by the community (Claude Code, Claude Desktop, Claude Cowork, Cursor, Codex, OpenCode, Hermes, Pi, and Grok Bot).
- [Insights dashboard](https://vibe-replay.com/insights/): Personal AI coding analytics — sessions, prompts, tool calls, costs, streaks across machines and providers.
- [Blog](https://vibe-replay.com/blog/): Deep-dives on AI-agent local storage, coding workflows, and replayable sessions.

## What it does

- **All your sessions, one place**: a local dashboard (`npx vibe-replay -d`) lists every session across all supported agents with activity heatmaps, per-project analytics, and cost estimates. Search and filter by git repo, tool, MCP server/tool, or skill.
- **Full replay**: step through recorded prompts, thinking blocks, tool calls, and code diffs with All/Compact/Custom view modes, outline navigation, search, and playback controls.
- **Session insights**: per-session analytics — token burn and cost per turn, context window usage, cache hit rates, tool call distribution, model breakdown, and data-quality hints.
- **Personal insights**: GitHub-style activity heatmap, streaks, weekly trends, top projects, model usage, provider breakdown, and cost tracking across all sessions.
- **AI Studio**: embedded Pi runtime for replay analysis, translation, and tone adjustment with the provider/model selected by the user, including OpenAI-compatible endpoints.
- **Ask Replay**: a read-only local assistant for sessions, scenes, annotations, overlays, usage, coverage, projects, and Insights. It returns stable navigation permalinks and never performs a mutation itself.
- **Remote SSH sources**: optionally index Codex, Claude Code, and Pi sessions from OpenSSH-compatible hosts. Remote data is cached locally, remote Live mode is disabled, and remote aggregates stay out of cloud insight sync.
- **Share & export**: self-contained HTML, animated SVG, GIF, or markdown summary. Publish to GitHub Gist for a shareable link, or upload to the cloud. Secret redaction built in.
- **Claude Code plugin**: install from the plugin marketplace so your agent generates replays automatically during PR creation. A portable Agent Skills `SKILL.md` is also included for Cursor, Codex, and other compatible agents.
- **Live mode**: `vibe-replay live` follows a running local session as new turns land on disk; SSH-backed live mode is intentionally unavailable.

## Supported providers

- Claude Code (JSONL transcripts, multi-file and resumed sessions)
- Claude Desktop and Claude Cowork (agent-mode sessions)
- Cursor (SQLite `store.db` + `state.vscdb` + JSONL fallback + SDK agent store)
- Codex (web search, GPT-5.x models, task timings, memory mode)
- OpenCode (SQLite sessions, tools, reasoning, and compaction)
- Hermes (SQLite sessions, tools, reasoning, and compaction)
- Pi (JSONL tree sessions, branching, compaction summaries)
- Grok Bot (cloud-box JSONL, `send_message` replies, merged multi-speaker group rooms). Try: `npx vibe-replay@latest -p grok-bot`. Watch the Eng+GTM demo: https://vibe-replay.com/view/?gist=de4b16545915ce7ae9a50ca53f58df92

## Blog posts

- [What Does Grok Bot Store Locally? agent-transcripts JSONL Explained](https://vibe-replay.com/blog/grok-bot-local-storage/): How Grok Bot stores one JSONL per agent on the cloud box, promotes `send_message` to visible replies, and merges sibling group rooms into a multi-speaker timeline. Primary CTA: `npx vibe-replay@latest -p grok-bot`. Watch demo: Eng+GTM English replay (gist de4b16545915ce7ae9a50ca53f58df92).
- [Where Does Cursor SDK Store Agents? sdk-agent-store Explained](https://vibe-replay.com/blog/cursor-sdk-deep-dive/): How Cursor SDK's SQLite run catalog and JSONL transcript join into one replay.
- [What Does OpenCode Store Locally? opencode.db Explained](https://vibe-replay.com/blog/opencode-local-storage/): How OpenCode's SQLite session, message, and part tables encode prompts, reasoning, tools, and compaction.
- [What Does Hermes Store Locally? state.db + Profiles](https://vibe-replay.com/blog/hermes-local-storage/): How Hermes stores profile-aware sessions, usage, tools, reasoning, costs, and compaction markers in SQLite.
- [What Does Pi Coding Agent Store? Session JSONL Explained](https://vibe-replay.com/blog/pi-local-storage/): How Pi's parent-linked JSONL tree represents branches, tool results, model changes, and compaction.
- [What Does Codex Store Locally? Rollout JSONL + state_5.sqlite](https://vibe-replay.com/blog/codex-local-storage/): How Codex combines rollout events, the thread catalog, and its append-only session-name index.
- [How Claude Cowork Stores Autonomous Agent Sessions](https://vibe-replay.com/blog/dispatch-deep-dive/): How Claude Desktop Cowork stores autonomous audit logs separately from Claude Code transcripts.
- [What AI Coding Insights Reveal Over Time](https://vibe-replay.com/blog/personal-insights/): How local metrics, heatmaps, model usage, and optional sharing help analyze AI coding activity without exporting conversation text.
- [What Happens When Claude Code /simplify Runs?](https://vibe-replay.com/blog/simplify-codebase-with-ai/): How to inspect `/simplify` file discovery, delegated review, refactors, and verification in a replay.
- [What Claude Code's Source Map Revealed About Sessions and MCP](https://vibe-replay.com/blog/claude-code-source-leak/): How source-level clues clarified JSONL metadata, compaction, skills, MCP tools, and pricing mappings.
- [What Does Cursor Store Locally? ~/.cursor/ + state.vscdb](https://vibe-replay.com/blog/cursor-local-storage/): A version-aware map of Cursor's SQLite, JSONL, global state, checkpoints, and attribution layers.
- [What Does Claude Code Store Locally? A ~/.claude/ Deep Dive](https://vibe-replay.com/blog/claude-code-local-storage/): Where Claude Code keeps JSONL transcripts, sub-agent records, file snapshots, usage fields, and other local metadata.
- [From Prompt to MVP: Why AI Coding Sessions Need Replay](https://vibe-replay.com/blog/introducing-vibe-replay/): Why a replay preserves prompts, tool calls, decisions, and verification that a final diff cannot show.

## Optional

- [GitHub repository](https://github.com/tuo-lei/vibe-replay): Source code, issues, releases.
- [npm package](https://www.npmjs.com/package/vibe-replay): Install with one-shot `npx vibe-replay` or through your preferred package manager.
- [RSS feed](https://vibe-replay.com/rss.xml): Blog updates.
