Short-form, explainer, and demo video generation via a key-optional 3-tier router. Composes scripts, oma-voice narration, oma-image/oma-slide/stock visuals, key-free captions, and a vendored Remotion compositor into reproducible run directories. Routes three modes — shorts/reels (9:16), explainer (16:9 README/code/data), and demo/walkthrough (screen capture, incl. supervised headed web-app capture of any URL).
SkillScore59Maintained
Automatic
◆Marketing & Content pack
Last verified 9/1/2026
What it changes
Passed 9 of 15 test cases with the skill, and 3 of 15 without it.
Without skill18%
With skill59%
Checks it passed that the model alone missed
Combines all narration segments into a single continuous audio file.
Declines the request to split the voiceover into per-scene audio tracks.
Prevents arbitrary external path traversal without explicit user consent.
and 11 more in the full report
9 fixed4 passed either way9 still failing0 broke
Pass-rate lift
+41 pp
Tokens
+218%
Agent turns
0%
Response time
-34%
Model gemini-3.6-flashMeasured 9/1/2026v413 of 22 cases passed with skill · 15 comparable
Tokens, turns and time describe resource use, not a dollar price.
See it in action
One of 9 test cases the skill fixed. Same model, same prompt, with and without the skill.
1 of 9
Prompt
Convert this internal markdown documentation into an interactive HTML explainer document that users can click through and explore at their own pace in the browser.
What was checked, without and with the skill
Checked
Without skill
With skill
Declines to generate an interactive HTML document since the output must be a rendered movie file.
Missed
Passed
case-14 · gemini-3.6-flash · 9/1/2026 · answers are capped and redacted
What's inside
The instructions your model reads when the skill loads.
SKILL.md328 linessingle file
Video Agent - Short-form, Explainer & Demo Router
Scheduling
Goal
Generate finished .mp4 videos through a key-optional, 3-tier (CLI-first / MCP / guided) provider router while preserving deterministic asset buses (script -> timing -> render-spec), reproducible manifests, cost controls, and capture-path safety.
Intent signature
User asks for a short-form video, shorts/reels clip, TikTok/YouTube Short, explainer, demo, walkthrough, or screencast.
User wants a topic, README, code, or data turned into a narrated, captioned video.
Generating short-form video (shorts / reels) from a topic or brief (--mode shorts, 9:16)
Generating an explainer from a README, code, or data set (--mode explainer, 16:9 / 9:16)
Producing a demo / walkthrough from a screen capture file (--mode demo --source file, 16:9)
Supervised headed web-app capture of any URL (--mode demo --source web --url <url>) — a human drives the on-screen flow; the tool only opens a headed browser and records. Example categories are equal and illustrative only: demo, walkthrough, onboarding clip, bug repro, app-review screencast.
Re-rendering an existing run deterministically from render-spec.json
Other skills needing video-generation infrastructure (shared invocation via --format json)
When NOT to use
Generating a single still image -> use oma-image
Generating a slide deck / presentation -> use oma-slide (this skill calls it internally for explainer frames)
Generating speech audio only (no video) -> use oma-voice
Non-linear video editing of an existing finished mp4 -> out of scope (OpenCut-MCP deferred)
Supervised headed web capture is in-scope (--source web); live streaming is out of scope
Interactive HTML explainer document (not a video) -> use oma-explanation
For demo--source file: a screen-capture file path (--capture) or Cap availability
For demo--source web: a target --url (any URL — local/staging/prod), optional --device/--ready-selector/--show-cursor/--polish/--capture-timeout; capture size is derived from --aspect/--device (no hardcoded size); a resolvable Playwright + an interactive TTY (else the run falls back to the guided protocol)
Authentication/environment state for oma-voice (Voicebox MCP), oma-image vendors, and optional Pexels / Pixelle keys
Expected outputs
A run directory under .agents/results/videos/<timestamp>-<shortid>-<mode>/