charm-vhs

Automate terminal session recordings into GIF, MP4, or WebM demos.

3|Updated Mar 6, 2026
One-click install
npx skills add https://github.com/benjaminwestern/google-engineer-skills --skill charm-vhs
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: charm-vhs
Source: https://github.com/benjaminwestern/google-engineer-skills/tree/main/skills/charm-vhs
Command: npx skills add https://github.com/benjaminwestern/google-engineer-skills --skill charm-vhs

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill simplifies the creation of professional-looking terminal recordings for demos, tutorials, and documentation by providing precise control over the recording process.

Core Features & Use Cases

  • Scripted Terminal Recording: Define terminal interactions using .tape files.
  • Precise Timing & Typing: Control typing speed, pauses, and command execution.
  • Output Formats: Generate demos as GIF, MP4, or WebM.
  • Use Case: Create a clear, step-by-step demonstration of a new CLI tool's functionality for a project README.

Quick Start

Use the charm-vhs skill to record a demo of the 'my-cli-app --help' command into 'app-help.gif'.

Frequently Asked Questions about charm-vhs

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create terminal GIF demos for a CLI tool?

You create terminal GIF demos by scripting terminal session playback with `.tape` files, managing typing effects and timing, then rendering the output as a GIF, MP4, or WebM file.

What's the best way to control typing speed in terminal recordings?

Control typing speed in terminal recordings by applying per-command speed overrides within your `.tape` script, allowing precise adjustments for typing effects and execution pacing.

Can I output terminal recordings as MP4 or WebM instead of GIF?

Yes, terminal recordings can be output as MP4 or WebM files, providing alternatives to GIF for scenarios requiring optimized video formats for demos and tutorials.

How do I build multi-line commands in a VHS tape file?

Build multi-line commands in a VHS tape file by using specific directive syntax rules for `Type`, `Sleep`, and `Enter`, ensuring correct command construction and execution timing.

Why does my terminal recording fail on Type or Enter directives?

Terminal recordings fail on `Type` or `Enter` directives due to syntax rule violations, requiring strict adherence to formatting standards for these commands to ensure proper playback.