LinuxCommandLibrary

vhs

Record terminal sessions as GIFs

TLDR

Record terminal

$ vhs [script.tape]
copy
Create new tape
$ vhs new [script.tape]
copy
Validate tape
$ vhs validate [script.tape]
copy
Output to specific format
$ vhs [script.tape] --output [demo.gif]
copy
Record with theme
$ vhs [script.tape] --theme [Dracula]
copy

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

$ Output demo.gif
Set FontSize 20
Type "echo Hello"
Enter
Sleep 2s
copy

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

> TERMINAL_GEAR

Curated for the Linux community

Copied to clipboard

> TERMINAL_GEAR

Curated for the Linux community