| 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. |
| alwaysApply | false |
| category | media-generation |
| tags | ["vhs","terminal","recording","gif","demo","tutorial"] |
| tools | [] |
| complexity | medium |
| model_hint | standard |
| estimated_tokens | 600 |
| progressive_loading | true |
| modules | ["modules/tape-syntax.md","modules/execution.md"] |
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
- Confirm tape file exists at specified path
- Read tape file contents
- Verify required directives:
Output directive specifies GIF destination
- At least one action command (Type, Enter, etc.)
Phase 2: Check VHS Installation
which vhs && vhs --version
If not installed:
go install github.com/charmbracelet/vhs@latest
brew install charmbracelet/tap/vhs
Phase 3: Execute Recording
vhs <tape-file.tape>
VHS will:
- Parse tape file directives
- Launch virtual terminal (ttyd)
- Execute commands with timing
- Capture frames
- Encode to GIF using ffmpeg
Phase 4: Verify Output
- Check GIF file exists at Output path
- Verify file size is non-zero
- 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