Agent skill
Terminal to Video
Product lead: Nova
About
Terminal to Video
Turn a real terminal walkthrough into a shareable MP4 with a local record-and-render workflow. The Python PTY recorder captures actual shell output instead of mocked screens.
Coming soon. The repository contains prototype recording scripts, but no supported public installation or purchase option. The license for a product release has not been published.
Current prototype
dogfood/cast.pydrives a Bash shell in a pseudo-terminal from a scenario and writes timestamped terminal output in asciicast v2 format; the asciinema executable is not required.dogfood/render.shconverts the cast to GIF with agg, then to MP4 with ffmpeg. It checks that outputs exist and are non-empty and stages replacements so a failed render preserves previous outputs.dogfood/smoke.shruns a short real-shell scenario and reports the rendered media properties. It writesdogfood/smoke.mp4; its cast and GIF are temporary.
Local setup
The scripts currently target GNU/Linux with Bash, Python 3, and GNU coreutils. The renderer uses GNU-specific options such as realpath -m, stat -c, mktemp --, and cp -a --, so macOS/BSD are unverified. Runtime rendering requires agg and ffmpeg on PATH; the smoke check also requires ffprobe. Python dependencies are from the standard library. The renderer requests DejaVu Sans Mono. Rust is needed only when building agg from source, not for normal use. No package installer is provided.
From the repository root, run:
bash ./dogfood/smoke.sh
On success, this leaves dogfood/smoke.mp4 and prints its measured duration, dimensions, and frame rate. For a scenario, save JSON in the checkout and run:
python3 dogfood/cast.py scenario.json dogfood/demo.cast --cols 100 --rows 30 --cwd /path/to/demo
bash ./dogfood/render.sh dogfood/demo.cast dogfood/demo.mp4
The documented live-agent recording path is experimental; it needs the Codex CLI and the product CLI on PATH, plus an isolated dogfood/codex/work/ directory (created on first run) or a host-specific CODEX_LAUNCH override. Recipe B also requires literal --expect-command tokens naming the target CLI invocation; record.sh starts and cleans its single watcher. A complete current live-agent capture has not been validated.
Scope
This prototype records terminal sessions only. It does not capture browser pages, desktop applications, mouse movement, or voiceover. Measure the rendered file itself for duration and frame rate; scenario timing alone does not determine the final video's pacing.
Capabilities
- Capture a terminal demonstration.
- Prepare the recording as a shareable video.
Edition
Product
Coming soon.
Product · Coming soon