
vhs
VHS terminal recording best practices from Charmbracelet (formerly charmbracelet-vhs). This skill should be used when writing, reviewing, or editing VHS tape files to create professional terminal GIFs and videos. Triggers on tasks involving .tape files, VHS configuration, terminal recording, demo creation, or CLI documentation.
VHS terminal recording best practices from Charmbracelet (formerly charmbracelet-vhs). This skill should be used when writing, reviewing, or editing VHS tape files to create professional terminal GIFs and videos. Triggers on tasks involving .tape files, VHS configuration, terminal recording, demo creation, or CLI documentation.
Charmbracelet VHS Best Practices
Comprehensive best practices guide for VHS terminal recordings, maintained by Charmbracelet. Contains 47 rules across 8 categories, prioritized by impact to guide creation of professional, portable, and optimized terminal demos.
When to Apply
Reference these guidelines when:
- Writing new VHS tape files
- Creating terminal demos for documentation
- Setting up CI/CD for automated GIF generation
- Optimizing recording file size and quality
- Troubleshooting tape file issues
- Reviewing tape files for best practices
Rule Categories by Priority
| Priority | Category | Impact | Prefix |
|---|---|---|---|
| 1 | Configuration Structure | CRITICAL | config- |
| 2 | Dependency Management | CRITICAL | deps- |
| 3 | Command Syntax | HIGH | cmd- |
| 4 | Timing & Synchronization | HIGH | timing- |
| 5 | Output Optimization | MEDIUM-HIGH | output- |
| 6 | Visual Quality | MEDIUM | visual- |
| 7 | CI/Automation | MEDIUM | ci- |
| 8 | Advanced Patterns | LOW | advanced- |
Quick Reference
1. Configuration Structure (CRITICAL)
config-settings-order- Place all settings before commandsconfig-output-first- Declare output at file startconfig-shell-explicit- Explicitly set shell typeconfig-typing-speed-global- Set global TypingSpeed earlyconfig-dimensions-explicit- Set explicit terminal dimensionsconfig-comments-document- Use comments to document tape structure
2. Dependency Management (CRITICAL)
deps-require-early- Use Require for dependency validationdeps-require-order- Place Require before settingsdeps-require-all- Require all external commandsdeps-system-requirements- Verify system dependencies
3. Command Syntax (HIGH)
cmd-type-syntax- Use correct Type command syntaxcmd-enter-explicit- Always follow Type with Entercmd-key-repeat- Use key repeat countscmd-ctrl-combinations- Use Ctrl combinations for terminal controlcmd-hide-show- Use Hide/Show for sensitive operationscmd-env-variables- Use Env for environment variablescmd-screenshot- Use Screenshot for static capturescmd-multiline-type- Handle multiline commands properly
4. Timing & Synchronization (HIGH)
timing-sleep-after-enter- Add Sleep after commands for outputtiming-wait-pattern- Use Wait for dynamic command completiontiming-type-speed-override- Override TypingSpeed for emphasistiming-sleep-units- Use explicit time unitstiming-final-sleep- End recordings with final Sleeptiming-natural-pauses- Add natural pauses between actionstiming-wait-timeout- Set appropriate Wait timeoutstiming-playback-speed- Use PlaybackSpeed for final adjustments
5. Output Optimization (MEDIUM-HIGH)
output-format-selection- Choose output format based on use caseoutput-framerate- Optimize framerate for file sizeoutput-dimensions-optimize- Right-size terminal dimensionsoutput-loop-offset- Use LoopOffset for seamless loopsoutput-multiple-formats- Generate multiple output formatsoutput-relative-paths- Use relative paths for portability
6. Visual Quality (MEDIUM)
visual-font-readable- Choose readable font settingsvisual-theme-selection- Select appropriate themevisual-window-decoration- Add window decorations for polishvisual-spacing- Adjust letter and line spacingvisual-padding-margin- Use padding and margins effectivelyvisual-cursor-visibility- Ensure cursor visibility
7. CI/Automation (MEDIUM)
ci-github-action- Use official VHS GitHub Actionci-auto-commit- Auto-commit generated assetsci-golden-files- Use golden files for integration testingci-matrix-builds- Generate platform-specific demosci-caching- Cache VHS dependencies in CI
8. Advanced Patterns (LOW)
advanced-source-include- Use Source for reusable tape componentsadvanced-clipboard- Use Copy and Paste for complex inputadvanced-recording-live- Record live sessions then editadvanced-server-mode- Use server mode for remote access
How to Use
Read individual reference files for detailed explanations and code examples:
- Section definitions - Category structure and impact levels
- Rule template - Template for adding new rules
Reference Files
| File | Description |
|---|---|
| AGENTS.md | Complete compiled guide with all rules |
| references/_sections.md | Category definitions and ordering |
| assets/templates/_template.md | Template for new rules |
| metadata.json | Version and reference information |
You Might Also Like
Related Skills

apple-notes
Manage Apple Notes via the `memo` CLI on macOS (create, view, edit, delete, search, move, and export notes). Use when a user asks OpenClaw to add a note, list notes, search notes, or manage note folders.
openclaw
apple-reminders
Manage Apple Reminders via the `remindctl` CLI on macOS (list, add, edit, complete, delete). Supports lists, date filters, and JSON/plain output.
openclaw
spotify-player
Terminal Spotify playback/search via spogo (preferred) or spotify_player.
moltbot