From scribe
Converts Claude Code or Codex session JSONL files into animated conversation replays in GIF, MP4, or WebM formats with terminal themes and speed controls.
npx claudepluginhub athola/claude-night-market --plugin scribe# Session Replay Convert a Claude Code or Codex session JSONL file into an animated replay of the conversation. Supports GIF, MP4, and WebM output formats. Auto-detects the session format (Claude Code or Codex) from file content. ## Usage ## Arguments | Argument | Description | |----------|-------------| | `session-path` | Path to session JSONL file (default: most recent) | ## Options | Option | Description | |--------|-------------| | `--session-format` | Input session format: `claude`, `codex`, or auto-detect (default: auto) | | `--show` | Layers to include: `user`, `assistant`, `...
Convert a Claude Code or Codex session JSONL file into an animated replay of the conversation. Supports GIF, MP4, and WebM output formats. Auto-detects the session format (Claude Code or Codex) from file content.
/session-replay [session-path] [options]
| Argument | Description |
|---|---|
session-path | Path to session JSONL file (default: most recent) |
| Option | Description |
|---|---|
--session-format | Input session format: claude, codex, or auto-detect (default: auto) |
--show | Layers to include: user, assistant, tools, thinking (default: user,assistant,tools) |
--turns | Turn range: 1-5 or 3 (default: all) |
--output | Output file path (default: session-replay.gif) |
--format | Output format: gif, mp4, webm (default: from --output extension) |
--theme | VHS terminal theme (default: Dracula) |
--speed | Timing multiplier (default: 1.0) |
--max-duration | Max GIF duration in seconds (default: none) |
--cols | Text wrapping width in chars (default: 80) |
--rows | Text truncation height in lines (default: 24) |
Skill(scribe:session-replay) to run the full
pipeline: parse session, generate tape, render GIF~/.claude/projects/ for the user to pickSkill(scry:vhs-recording)# Replay most recent session
/session-replay
# Replay specific session file
/session-replay ~/.claude/projects/.../session.jsonl
# Show only user and assistant turns, first 5 turns
/session-replay --show user,assistant --turns 1-5
# Include Claude's thinking in the replay
/session-replay --show user,assistant,tools,thinking
# Custom theme and faster playback
/session-replay --theme "Solarized Dark" --speed 1.5
# Cap GIF duration at 30 seconds
/session-replay --output demo.gif --max-duration 30
# Output as MP4 video
/session-replay --output demo.mp4
# Output as WebM video
/session-replay --format webm
# Override extension with explicit format
/session-replay --output replay.gif --format mp4
# Replay a Codex session (auto-detected)
/session-replay ~/.codex/sessions/latest.jsonl
# Force Codex format parsing
/session-replay session.jsonl --session-format codex
VHS supports three output formats, selected by the file
extension in --output or explicitly via --format:
SVG output is not supported by VHS and is not available.
Parsed 42 turns from session (12 user, 15 assistant, 15 tools)
Generated tape: /tmp/session-replay-1711234567.tape
Rendering via scry...
Done: session-replay.mp4 (18s, 960x540)
Skill(scribe:session-replay) -- full skill referenceSkill(scry:vhs-recording) -- terminal recording/session-to-post -- convert sessions to blog posts