name: vhs
description: Create terminal screenshots and GIFs with VHS tape files. Use when automating terminal recordings, capturing TUI screenshots, or generating demo GIFs.
VHS
Terminal recorder from Charm. Makes GIFs, PNGs, MP4s, or WebMs from scripted terminal actions.
Run
nix run nixpkgs#vhs -- <file>.tape
Tape File Syntax
Output output.gif # or .png, .mp4, .webm
Set Shell "bash"
Set FontSize 14
Set Width 1200
Set Height 600
Set Theme "Catppuccin Mocha"
Hide # Hide commands from output
Type "echo hello"
Enter
Sleep 1s
Show # Show commands again
Screenshot output.png # Capture current frame
Commands
| Command |
Description |
Type "text" |
Type text |
Enter, Tab, Escape, Space |
Press key |
Ctrl+x, Alt+x |
Key combo |
Up, Down, Left, Right |
Arrow keys |
Sleep 1s |
Wait (ms, s) |
Screenshot file.png |
Capture frame |
Hide / Show |
Toggle visibility |
Settings
| Setting |
Description |
Set Shell "bash" |
Shell to use |
Set FontSize 14 |
Font size |
Set Width 1200 |
Terminal width |
Set Height 600 |
Terminal height |
Set Theme "Catppuccin Mocha" |
Color theme |
Set Padding 20 |
Window padding |
Set WindowBar Colorful |
Window decorations |
Example: TUI Screenshot
Output screenshots/demo.png
Set Shell "bash"
Set FontSize 14
Set Width 1400
Set Height 800
Set Theme "Catppuccin Mocha"
Hide
Type "cd /path/to/project && my-tui-app"
Enter
Sleep 2s
Show
Ctrl+p
Sleep 1s
Screenshot screenshots/demo.png
Escape
Type "q"
Enter
Tips
- Use tape files for repeatable terminal demos
- Use
Hide when command text should stay out of output
- Use
Sleep to give TUIs time to render
- Use
Screenshot for still images
- Use GIF or video output for motion demos
List Themes
nix run nixpkgs#vhs -- themes