freshcrate
Home > AI Agents > vibe-replay

vibe-replay

Turn AI coding sessions into animated, interactive web replays

Description

Turn AI coding sessions into animated, interactive web replays

README

vibe-replay

npm version npm downloads license

Turn Claude Code and Cursor sessions into shareable, interactive replays.

The problem

AI agents write code in long, complex sessions — dozens of tool calls, hundreds of file edits, thousands of lines of reasoning. When the session ends, all that context disappears. Your PR diff shows what changed, but reviewers can't see why. Teammates can't learn from your prompting. You can't even replay your own session next week.

The fix

One command. One self-contained HTML file. Every prompt, every thought, every tool call — animated and interactive.

npx vibe-replay

Also available as a Claude Code plugin — your agent generates replays automatically during PR creation.

Watch a live demo →

vibe-replay product demo

What You Get

All your sessions, one place

Launch with npx vibe-replay -d and see every Claude Code and Cursor session across all projects — with activity heatmaps, cost totals, and project analytics.

Local dashboard — browse sessions, activity heatmap, project analytics

Watch the full replay

Pick a session and step through every prompt, thinking block, tool call, and code diff with animated playback. Three view modes — All, Compact, and Custom.

Animated replay — syntax-highlighted diffs, tool calls, and thinking blocks

Deep insights for every session

Auto-generated analytics: token burn & cost over time, context window usage, cache hit rates, tool call distribution, model breakdown, and per-turn breakdowns.

Session insights — token usage, cost tracking, tool distribution, and context window charts

Your AI coding wrapped

GitHub-style activity heatmap, streaks, weekly trends, top projects, model usage, and cost tracking across all your sessions. See how your coding patterns evolve over time.

Personal insights — GitHub-style heatmap, streaks, session stats, and cost tracking

Claude Code Plugin

vibe-replay is also available as a Claude Code plugin. Once installed, your agent learns how to generate replays autonomously — it can find the current session, produce GitHub-ready artifacts, and embed them in PRs, all without you running any CLI commands.

What the plugin gives your agent

  • Auto-discover sessions — finds the current session's JSONL file via $CLAUDE_SESSION_ID
  • Generate PR artifacts — markdown summary + animated GIF + SVG, ready for PR descriptions
  • Generate HTML replays — self-contained interactive replay files
  • PR workflow integration — agent automatically embeds replay context when you create PRs

Install (recommended)

/plugin marketplace add tuo-lei/vibe-replay
/plugin install vibe-replay@vibe-replay

Manual install (single file)

If you prefer not to install the full plugin:

mkdir -p ~/.claude/skills/replay
curl -o ~/.claude/skills/replay/SKILL.md \
  https://raw.githubusercontent.com/tuo-lei/vibe-replay/main/skills/replay/SKILL.md

Usage examples

# Slash command — generate a replay of the current session
/vibe-replay:replay

# Natural language — agent auto-triggers during PR creation
"Create a PR with session replay"
"Create a PR for this change, include an animated GIF of the session"

# Direct replay
"Generate an interactive replay of this session and open it"

Features

  • Zero config — one command, no setup, no account. Works instantly with existing sessions
  • Single HTML file — self-contained, works offline, zero external requests. Drop it in Slack, email it, open it anywhere
  • Claude Code + Cursor — both providers auto-discovered, including multi-file and resumed sessions
  • Share & export — GitHub Gist, animated SVG, GIF, markdown summary, or cloud upload. Secret redaction built in
  • Sub-agent visualization — see delegated tool calls and sub-agent trees rendered inline
  • Comments — leave notes on any scene. Comments persist in the HTML and travel with the replay

Supported Providers

Provider Status
Claude Code Supported
Cursor Supported (SQLite + JSONL, auto-discovered)
More coming soon —

How It Works

AI session files  →  vibe-replay  →  self-contained HTML
(Claude Code,        (discover,       (animated viewer,
 Cursor)              parse,           insights panel,
                      redact,          offline-ready,
                      transform)       shareable)

The CLI auto-discovers sessions on your machine, parses conversation data from all sources, and packages everything into a pre-built React viewer — one HTML file that works anywhere.

After generation:

  • Open in Editor — annotate scenes, get AI feedback, export to multiple formats
  • Quick preview — open in browser instantly
  • Publish to Gist — shareable link on vibe-replay.com
  • Export for GitHub — markdown + animated SVG for PRs

Use Cases

  • Vibe coding review — replay your AI-assisted coding sessions to spot prompting patterns and improve your workflow
  • Team knowledge sharing — show teammates how you built something, not just the final diff
  • PR context — attach a replay link to PRs so reviewers understand the reasoning behind changes
  • Teaching & onboarding — create replayable walkthroughs of real coding sessions for documentation or training
  • Cost tracking — see exactly how many tokens each session burns, track costs across projects

Security & Privacy

  • Self-contained HTML — generated replay files embed all assets inline. When opened from disk they make zero external requests — works offline, behind firewalls, on an airplane. (Gist/cloud-backed replays fetch data from GitHub or vibe-replay API on load)
  • Secret redaction — API keys, tokens, PEM keys, and sensitive paths are automatically detected and redacted before generation
  • Local by default — vibe-replay reads session files from your machine and generates a local HTML file. Data only leaves your machine when you explicitly publish (Gist or cloud upload), or if you log in — in which case aggregated session insights (counts, durations, costs — no conversation content) sync daily to the cloud
  • No wrappers, no proxies — vibe-replay does not modify, intercept, or wrap Claude Code or Cursor. It reads existing session logs after the fact

Development

git clone https://github.com/tuo-lei/vibe-replay.git
cd vibe-replay
pnpm install
pnpm dev              # Viewer (Vite HMR) + CLI (auto-restart) — full HMR
pnpm dev:website      # Website (Astro HMR) + Viewer (Vite HMR)

CLI usage requires Node.js >= 20. The website package uses Astro 6 and requires Node.js >= 22.12.0. When nvm is available, website scripts will try nvm use from website/.nvmrc automatically.

See CONTRIBUTING.md for architecture details and development workflow.

License

MIT

Release History

VersionChangesUrgencyDate
v0.1.6## What's New ### Website - **Blog comments** — Added Giscus (GitHub Discussions-powered) comments to all blog posts (#162) - **Plugin section** — Added Claude Code Plugin section to homepage (#161) - **LCP optimization** — WebP images, preload hints, faster hero animation (#158) ### Server - **Cloud proxy refactor** — Extracted cloud proxy helper to reduce duplication (#155) - **Auth hardening** — Hardened auth postMessage, gist validation, and view count endpoint (#159) ### CLI - **Plugin dMedium4/11/2026
v0.1.5### New features - **Public insights sharing**: Share your vibe coding stats with a public URL (`/i/your-slug`). Privacy controls let you hide cost, blur project names, or toggle sections independently (#143) - **Persistent local insights store**: Session metrics now persist to `~/.vibe-replay/insights/store.json`, surviving Claude Code's 30-day JSONL cleanup and Cursor transcript deletion (#134) - **Cloud sync**: Daily aggregates sync automatically on login and after scan. Multi-machine usage Medium4/10/2026
v0.1.4### Improvements - **Dashboard CTA visibility**: Replace invisible CTAs with filled pill buttons matching the design system (green for primary, blue for navigation) - **View/Generate buttons**: Larger size for better discoverability - **Sessions/Replays column alignment**: "View all" buttons now align at the same height - **Loading skeletons**: Redesigned dashboard home and Insights page skeletons to mirror actual content layoutMedium4/4/2026
v0.1.3## What's Changed * feat: warn users before session transcripts are cleaned up by @tuo-lei in https://github.com/tuo-lei/vibe-replay/pull/111 * feat(cursor): enrich local metadata and document storage layout by @tuo-lei in https://github.com/tuo-lei/vibe-replay/pull/114 * chore: bump version to 0.1.2 by @tuo-lei in https://github.com/tuo-lei/vibe-replay/pull/115 * feat: add session detail popup with rich metadata by @tuo-lei in https://github.com/tuo-lei/vibe-replay/pull/117 * feat: improve parsMedium4/2/2026
v0.1.1### Bug Fixes - Include sub-agent file edits in stats, heatmap, and scanner (#112) - Unify file path field lookup in scanner JSONL pathsMedium3/27/2026
v0.1.0## What's New in v0.1.0 ### Sub-agent replay & per-tool duration (#93) - Full sub-agent session replay — nested agent calls are now visible as expandable scenes - Per-tool duration tracking shows how long each tool call took - Session metadata & insights panel with model, token usage, and cost estimates ### Project & user-level insights with background scanner (#94) - Background session scanner extracts aggregate metadata across all sessions - Project-level insights: total duration, cost, promMedium3/25/2026
v0.0.17## Fixes - **Cloud auth: per-environment storage** — `auth.json` now stores tokens keyed by API origin, so production and local dev tokens don't conflict - **Cloud auth: BFF cascade** — When local token returns 401, automatically falls back to production token - **Cloud auth: signed token in CLI login** — Fixed CLI login callback sending unsigned token that Better Auth couldn't verify - **Website dev proxy** — Astro dev config now proxies `/api/*` and `/auth/*` to local worker for dev login ##Low3/20/2026
v0.0.16## What's Changed * fix: discover session titles using correct customTitle field and tail scan by @tuo-lei in https://github.com/tuo-lei/vibe-replay/pull/81 * feat: R2 cloud storage, sharing UI, profile page by @tuo-lei in https://github.com/tuo-lei/vibe-replay/pull/80 * fix: search input focus loss + dashboard auth in CLI mode by @tuo-lei in https://github.com/tuo-lei/vibe-replay/pull/82 * fix: CORS blocks dashboard auth from CLI (random localhost ports) by @tuo-lei in https://github.com/tuo-leLow3/20/2026
v0.0.15## What's New - Auth module and cloud sharing infrastructure (Cloudflare Workers + Drizzle ORM) - CLI enhancements and server API expansion - Viewer improvements - Website updates (logo, GitHub star component, Hero/Explore pages) - SEO foundations **Full Changelog**: https://github.com/tuo-lei/vibe-replay/compare/v0.0.14...v0.0.15Low3/18/2026
v0.0.14### Fixes - **Dashboard title overflow**: Long session titles in ReplayCard no longer overflow into action buttons (Upload/Redo/View) ### Internal - Bump CLI version to 0.0.14Low3/16/2026
v0.0.13## What's new - **Dashboard home page** — user-level insights: sessions, replays, turns, tool calls, 30-day activity chart with provider breakdown, summary panel, recent sessions/replays - **GitHub star button** — official `buttons.github.io` dark theme widget in dashboard and player headers - **System checks section** — shows gh CLI, Claude Code, Cursor CLI, OpenCode with purpose descriptions and auth status - **Accurate prompt/tool counts** — fixed ~12x inflation by excluding `tool_result` meLow3/14/2026
v0.0.12## What's New ### AI Studio Panel - Replaces the old AI Coach popover with a full side drawer containing three features: - **AI Coach** — score your prompting technique and get inline coaching comments - **Translate** — translate all prompts and responses for sharing with international teams - **Soften Tone** — rewrite harsh prompts into professional, constructive language ### Scene Overlay System - Non-destructive modifications stored in `overlays.json` alongside `replay.json` - OverlayLow3/13/2026
v0.0.11## What's Changed * feat: redesign landing page hero, how-it-works, features + update README by @tuo-lei in https://github.com/tuo-lei/vibe-replay/pull/47 * fix: allow generate for Cursor sqlite-only sessions by @tuo-lei in https://github.com/tuo-lei/vibe-replay/pull/48 * feat(website): add SEO fundamentals and upgrade Astro 4→6 + Tailwind 3→4 by @tuo-lei in https://github.com/tuo-lei/vibe-replay/pull/49 * feat: Insights data tables, chart tooltips, and Redo fix by @tuo-lei in https://github.comLow3/12/2026
v0.0.10## What's New ### Viewer Layout Redesign - **View tabs**: Switch between Replay, Summary, and Export views - **Stacked sidebar**: Outline + stats panels side by side - **Comment drawer**: Slide-out panel for annotations - **Help overlay**: Press `?` to see all keyboard shortcuts ### Export View - Separate Share (Gist) and Export sections - Inline SVG preview with proper rendering - WYSIWYG markdown preview - Auto-load existing exported files ### CLI Top-Level Menu - Clean 3-option startup menLow3/10/2026
v0.0.9## Fix: `npx vibe-replay` broken install Fixes `EUNSUPPORTEDPROTOCOL` error when running `npx vibe-replay` caused by `workspace:*` protocol leaking into the published package. ### Changes - Moved `@vibe-replay/types` from runtime `dependencies` to `devDependencies` (types-only, erased at compile time) - Switched release workflow from `npm publish` to `pnpm publish` for proper workspace protocol resolutionLow3/9/2026
v0.0.8## What's new - **Premium design refresh** — refined color palette, subtle gradients, softer borders, layered shadows, and focus-visible keyboard accessibility across the viewer UI - **Bug fixes**: - Focused scene stays visible in viewport when paused and navigating with arrow keys - Clicking an earlier turn in the outline stays in place (no bounce-back) - Settings dropdown renders above PAUSED badge and comment buttons - Removed stale "gh" badge from Dashboard sidebar - **Website refinLow3/8/2026
v0.0.7## What's New ### Local UI as first-class citizen (#25) - Multi-prompt display: session cards now show up to 2 user prompts with visual distinction - GitHub icon for git repo projects in the sidebar - Directory-based archive: hide/show sessions and replays - "Local" environment badge to distinguish local UI from cloud version - Rename replays directly from the Sessions tab - Shared prompt cleaning utility with deduplication - Test coverage for prompt cleaning and session discoveryLow3/8/2026
v0.0.6## What's Changed ### Features - Explore page metadata from gist, dashboard improvements, GitHub App auth ### Fixes - Path traversal protection, content hash sync detection, UI consistency **Full Changelog**: https://github.com/tuo-lei/vibe-replay/compare/v0.0.5...v0.0.6Low3/7/2026
v0.0.2Initial public release. Supports Claude Code and Cursor sessions.Low3/5/2026

Dependencies & License Audit

Loading dependencies...

Similar Packages

claude-ruby-grape-railsClaude Code plugin for Ruby, Rails, Grape, PostgreSQL, Redis, and Sidekiq developmentv1.13.4
hermes-gatešŸ›ļø Hermes Gate — Terminal TUI for managing remote Hermes Agent sessions with auto-reconnect, detach support, and zero config0.0.0
learn-claude-codeBuild a minimal Claude-style AI agent from scratch that processes messages, interacts with tools, and generates dynamic responses.main@2026-04-21
hermes-agentThe agent that grows with youv2026.4.16
career-opsAI-powered job search system built on Claude Code. 14 skill modes, Go dashboard, PDF generation, batch processing.v1.5.0