vhs-recorder

Verified·Scanned 2/18/2026

Create professional terminal recordings with VHS tape files - guides through syntax, timing, settings, and best practices

from clawhub.ai·v59dea30·10.8 KB·0 installs
Scanned from 1.0.0 at 59dea30 · Transparency log ↗
$ vett add clawhub.ai/killerapp/vhs-recorder

VHS Recorder

Create terminal recordings with Charm's VHS. Use when creating CLI demos, README animations, documentation videos.

Prerequisites

  • vhs installed (brew install vhs / go install github.com/charmbracelet/vhs@latest)
  • ttyd and ffmpeg on PATH

Tape File Structure

Output demo.gif         # Outputs first
Set Width 1200          # Settings second
Set Theme "Catppuccin Mocha"
Require git             # Requirements third
Hide                    # Hidden setup
Type "cd /tmp && clear"
Enter
Show
Type "your command"     # Main recording
Enter
Wait
Sleep 2s

Core Commands

CommandPurpose
Type "text"Type text (uses TypingSpeed setting)
Enter / Tab / SpaceKey presses
Up / Down / Left / RightArrow navigation
PageUp / PageDownPage navigation
Ctrl+C / Ctrl+D / Ctrl+LSignal/EOF/clear combos
Wait / Wait /pattern/Wait for prompt or regex match
Sleep 2sFixed pause (supports ms/s/m)
Hide/ShowHide setup/cleanup from output
Type@50ms "text"Override typing speed inline
Backspace N / Delete NDelete N chars back/forward
Copy / PasteClipboard operations
Screenshot path.pngCapture single frame
Env VAR "value"Set environment variable

Essential Settings

SettingDefaultNotes
Width/Height1200/600Terminal dimensions in pixels
FontSize32Text size; FontFamily for custom fonts
TypingSpeed50msPer-char delay (override with Type@Xms)
Theme-Use vhs themes to list all available
Padding40Border space; LetterSpacing/LineHeight also available

Timing & Patterns

3-2-1 Rule: 3s after important commands, 2s between actions, 1s for transitions

  • Clean start: HideType "clear"EnterShow
  • Command-wait: TypeEnterWaitSleep 2s
  • Fast hidden: Type@10ms "setup command"
  • ASCII preview: Output demo.ascii for instant test

Output Formats

FormatUse Case
.gifWeb/README (universal)
.mp4/.webmSocial media / modern browsers
.asciiPreview/test (instant, no ffmpeg)
frames/PNG sequence for post-processing

Quick Fixes

IssueSolution
Commands too fastAdd Wait + Sleep 2s after Enter
Messy terminalHideclearShow at start
Inconsistent pacingFollow 3-2-1 timing rule

CLI Commands

vhs demo.tape       # Run tape file
vhs themes          # List all available themes
vhs manual          # Show full command reference

References

  • vhs-syntax.md - Full command reference
  • timing-control.md - Pacing strategies
  • settings.md - All configuration options
  • examples.md - Real-world tape files