vhs
Record terminal sessions as GIFs
TLDR
Record terminal
SYNOPSIS
vhs [command] [options] [file.tape]
DESCRIPTION
vhs creates terminal recordings as GIFs, WebM, or MP4 files from declarative script files called tapes. Tape files define a sequence of actions such as typing text, pressing keys, and waiting, producing reproducible recordings that can be regenerated consistently.
The tool renders a virtual terminal and captures frames, so recordings look clean regardless of the actual terminal environment. Themes, font sizes, and window dimensions are configurable within the tape file. This makes VHS ideal for creating documentation demos, README GIFs, and tutorial content.
PARAMETERS
new FILE
Create tape file.validate FILE
Check tape syntax.--output FILE
Output file.--theme NAME
Terminal theme.--shell SHELL
Shell to use.
TAPE COMMANDS
Type TEXT - Type text
Enter - Press enter
Sleep DURATION - Wait
Set OPTION VALUE - Configure
Output FILE - Set output
Hide / Show - Control visibility
EXAMPLE TAPE
Set FontSize 20
Type "echo Hello"
Enter
Sleep 2s
CAVEATS
Requires ffmpeg for encoding. Large recordings take time. Complex interactions need scripting.
HISTORY
VHS was created by Charm for terminal recording. It provides reproducible, high-quality terminal GIFs.
SEE ALSO
asciinema(1), ttyrec(1), terminalizer(1)
