replay
Generate interactive HTML replays and GitHub PR artifacts (markdown summary + animated GIF) from AI coding sessions. Use when creating PRs with session context, documenting development workflow, sharing coding sessions, or when the user mentions replay/session recording.
git clone https://github.com/tuo-lei/vibe-replay
T=$(mktemp -d) && git clone --depth=1 https://github.com/tuo-lei/vibe-replay "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/replay" ~/.claude/skills/tuo-lei-vibe-replay-replay && rm -rf "$T"
skills/replay/SKILL.mdSession Replay Generator
Generate replay artifacts from AI coding sessions using vibe-replay.
Current Session
- Session ID:
${CLAUDE_SESSION_ID}
Capabilities
1. GitHub PR Artifacts (markdown + animated GIF)
Best for: embedding in PR descriptions, issue comments, documentation.
npx vibe-replay --session <PATH> --github
This generates three files in
~/.vibe-replay/<slug>/:
— markdown with stats, tool breakdown, and session detailsgithub-summary.md
— animated GIF showing the session flowsession-preview.gif
— animated SVG (CSS keyframes)session-preview.svg
The markdown is also printed to stdout.
To use in a PR: read
github-summary.md and include its content in the PR body. By default, skip the first line (image reference ), since committing a binary GIF to the repo bloats repository size. The text summary alone provides full value for reviewers.
If the user explicitly asks for the GIF in the PR, include it by:
- Copying the GIF into the repo (e.g.,
).github/session-preview.gif - Updating the image path in the markdown to match
- Committing both the GIF and the markdown
Let the user know the GIF is typically 30-300 KB and will be part of git history permanently.
2. Interactive HTML Replay
Best for: sharing a full interactive replay via file, Slack, or email.
npx vibe-replay --session <PATH> --open
Generates a self-contained HTML file (
~/.vibe-replay/<slug>/index.html) and opens it in the browser. The HTML makes zero external requests — it can be shared directly.
3. Interactive Mode (all features)
For full control (editor, gist publishing, dashboard):
npx vibe-replay
How to Find the Session File
Find the JSONL file for the current session ID
${CLAUDE_SESSION_ID}:
grep -l '"sessionId":"${CLAUDE_SESSION_ID}"' ~/.claude/projects/*/*.jsonl 2>/dev/null
If no results, try with a space after the colon:
grep -l '"sessionId": "${CLAUDE_SESSION_ID}"' ~/.claude/projects/*/*.jsonl 2>/dev/null
If multiple files are found (normal with
/resume), use the first (oldest) path — vibe-replay auto-discovers related files.
PR Workflow Integration
When creating a PR and the user wants session replay context:
- Find the session file (see above)
- Run
to generate artifactsnpx vibe-replay --session <PATH> --github - Read the generated
github-summary.md - By default, strip the first line (image reference) and include the text in the PR description under a
heading## Session Replay - If the user asked for the GIF, copy
into the repo and keep the image reference in the markdownsession-preview.gif
Optional Flags
— override auto-detected title--title "..."
— generate HTML and open in browser--open
— generate GitHub artifacts (markdown + GIF + SVG)--github