CLI for scripting terminal recordings into GIF, video, screenshot, or text snapshot outputs with `.tape` files.
$brew install vhs
AI Analysis
VHS is a terminal recording CLI built around .tape scripts that replay typed input and waits into rendered artifacts. It covers demo capture, terminal screenshots and videos, and text snapshot generation for testing.
What It Enables
- Render scripted terminal demos into GIF, WebM, MP4, PNG frame, or screenshot outputs from a repeatable
.tapefile. - Record a live shell session into a starter tape, then edit or validate it before rerendering for docs, release notes, or tutorials.
- Capture
.txtor.asciiterminal snapshots for golden-file testing, or render remotely over SSH on a host that already has the needed commands installed.
Agent Fit
- Tape files, stdin input, and
validatemake render runs deterministic enough for CI, doc-generation pipelines, and retryable agent workflows. - The automation surface is file-oriented rather than machine-readable: VHS emits media or text artifacts plus logs, with no JSON mode for downstream parsing.
- Best fit when an agent needs to package or verify terminal behavior visually; it is much less useful as a live control layer for inspecting or mutating external systems.
Caveats
- Rendering requires
ttydandffmpegon PATH, and the render host also needs the commands being demonstrated. - Tapes effectively script shell input, and
publishuploads GIFs tovhs.charm.sh, so untrusted cassettes or automatic sharing need care.