vhs-recording
Generates terminal recordings using VHS tape scripts and produces GIF outputs. Use when creating demo GIFs or documenting CLI workflows for tutorials.
Works with
Agent Skills format with YAML frontmatter. Claude Code reads it as-is.
--- name: "vhs-recording" description: "Generates terminal recordings using VHS tape scripts and produces GIF outputs. Use when creating demo GIFs or documenting CLI workflows for tutorials." license: "MIT" --- # VHS Recording Skill Generate professional terminal recordings from VHS tape files. ## When To Use - Recording terminal sessions with VHS tape scripts - Creating terminal demo recordings for documentation ## When NOT To Use - Browser-based workflows - use scry:browser-recording instead - Non-terminal demos or GUI applications ## Overview VHS converts declarative tape files into animated GIFs of terminal sessions. Tape files define commands, timing, and terminal appearance. ## Required TodoWrite Items ``` - Locate and validate tape file - Check VHS installation status - Execute VHS recording - Verify output GIF creation ``` ## Module Reference - See `modules/tape-syntax.md` for VHS tape file directives - See `modules/execution.md` for recording workflow details ## Workflow ### Phase 1: Validate Tape File 1. Confirm tape file exists at specified path 2. Read tape file contents 3. Verify required directives: - `Output` directive specifies GIF destination - At least one action command (Type, Enter, etc.) ### Phase 2: Check VHS Installation ```bash which vhs && vhs --version ``` If not installed: ```bash # Linux/WSL go install github.com/charmbracelet/vhs@latest # macOS brew install charmbracelet/tap/vhs # Also requires ttyd and ffmpeg ``` ### Phase 3: Execute Recording ```bash vhs <tape-file.tape> ``` VHS will: 1. Parse tape file directives 2. Launch virtual terminal (ttyd) 3. Execute commands with timing 4. Capture frames 5. Encode to GIF using ffmpeg ### Phase 4: Verify Output 1. Check GIF file exists at Output path 2. Verify file size is non-zero 3. Report success with output location ## Exit Criteria - GIF file created at specified Output path - File size indicates successful recording (typically >50KB) - No error messages from VHS execution ## Troubleshooting ### Common Issues If `vhs` is not found, verify that your Go bin directory is in your `PATH` (typically `~/go/bin`). If the recording fails to start, ensure `ttyd` and `ffmpeg` are installed, as VHS depends on them for terminal emulation and video encoding. For "permission denied" errors when writing the GIF, check that the output directory exists and is writable.
More General & Other skills
find-skills
vercel-labs/skills
Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.
grill-me
mattpocock/skills
A relentless interview to sharpen a plan or design.
grill-with-docs
mattpocock/skills
A relentless interview to sharpen a plan or design, which also creates docs (ADR's and glossary) as we go.

