vhs-demo

Installation
SKILL.md

vhs-demo

Generate a terminal-demo GIF from a Charm VHS tape, rendered headless in Docker. The tape is committed; the GIF is a build artifact regenerated from it.

[!IMPORTANT] The tape is the source of truth. Always edit the .tape and re-render. Never hand-edit, re-time, or recompress the GIF — it cannot be reproduced and the next render will overwrite it.

Why Docker

VHS normally wants a real TTY (and on macOS, Homebrew + sometimes a screen recorder). The official ghcr.io/charmbracelet/vhs image renders fully headless, so it works in WSL/root environments with no Homebrew, no TTY, no OBS. Everything below assumes Docker is the only host dependency.

Naming convention (enforce exactly)

  • Single demo in the repo → files are demo.tape and demo.gif in .github/assets/. The README references exactly that one .github/assets/demo.gif.
  • Multiple demos → one descriptive name per demo, and the tape + its GIF always share the base name: quickstart.tape/quickstart.gif, ci.tape/ci.gif, etc.
  • The Dockerfile stays generic: always .github/assets/vhs.Dockerfile — never name it after a demo.

Quick start

Installs
1
GitHub Stars
1
First Seen
Jun 21, 2026
vhs-demo — tituskirch/skills