video-router — Claude Code skill for choosing a video workflow
This skill picks a primary path for a video brief: generated footage, HTML composition, editing supplied video, or AUTO for a combined production.
npx skills add Orkas-AI/Orkas-VideoStudio --skill video-router -a claude-codeWhat video-router does
video-router classifies the brief and locks a primary workflow: Generate for AI-made footage, Compose for HTML-based motion graphics, or Edit for supplied video. When the finished timeline needs more than one of these paths, it selects AUTO. Explainer and animation requests usually lead with Compose.
The chosen path goes into the proposal. If the work later calls for a different primary workflow, the change must be confirmed with the user. This skill routes production; it does not create or render the video. For a fully specified edit, it hands off to stage-edit; when the footage or timing still needs to be located, stage-decide comes first.
What it helps with
- choose between generated footage, composition, and editing
- route a timeline that combines multiple production paths
- lock the primary workflow before production begins
- decide whether footage needs to be searched for a specific moment
Example prompts for the agent
- Choose a workflow for an explainer with animated typography and state the primary path.
- Use my footage, add a motion-graphics opener and generated b-roll, then decide whether this needs AUTO.
- Trim the supplied video to the requested section and select the editing path.
How to install video-router
1Skills CLI (Vercel)
npx skills add Orkas-AI/Orkas-VideoStudio --skill video-router -a claude-code2Manually: put the files in place
~/.claude/skills/video-router/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/video-router/
1Skills CLI (Vercel)
npx skills add Orkas-AI/Orkas-VideoStudio --skill video-router -a codex2Manually: put the files in place
.agents/skills/video-router/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add Orkas-AI/Orkas-VideoStudio --skill video-router -a cursor2Manually: put the files in place
.cursor/skills/video-router/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install Orkas-AI/Orkas-VideoStudio video-router2Manually: put the files in place
.github/skills/video-router/SKILL.md1Skills CLI (Vercel)
npx skills add Orkas-AI/Orkas-VideoStudio --skill video-router -a gemini-cli2Platform CLI
gemini skills install https://github.com/Orkas-AI/Orkas-VideoStudio --path packages/skills/video-routerManually: put the files in place
.devin/skills/video-router/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add Orkas-AI/Orkas-VideoStudio --skill video-router -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about video-router
How do I install video-router in Claude Code?
Run npx skills add Orkas-AI/Orkas-VideoStudio --skill video-router -a claude-code. The skill file is at ~/.claude/skills/video-router/SKILL.md.
What does video-router do?
It classifies a video brief and commits to Generate, Compose, Edit, or AUTO when the timeline combines paths. It routes the work rather than producing or rendering video.
When does video-router choose AUTO?
It selects AUTO when the deliverable needs multiple production paths woven into one timeline, such as supplied footage combined with graphics or generated shots.
Source text
SKILL.md · MIT
--- name: video-router description: Read this FIRST on any video-production request to pick and lock the line — generate (AI footage), compose (designed HTML), edit (cut real footage), or AUTO end-to-end. Trigger when classifying a brief and committing to a primary path; do NOT trigger for authoring compositions, generating assets, or rendering output (those have their own stage skills). --- # video-router Knowledge for picking a video production line and locking it before work begins. This skill is read for guidance; it describes **what to decide**, not any tool mechanics. Read [production method and current-video checks](references/production-method.md) before deep reference analysis or delivery review. It distinguishes direct provider output from locally assembled output using the current executable plan, not the route label. ## Unavailable Production Runtime If production, rendering, or paid tools are explicitly unavailable, still select the line and return a complete **unexecuted production package** for a clear brief: assumptions, script/narration, timed storyboard/shotlist, exact visible copy and captions, visual/audio direction, rights-safe asset provenance/fallbacks, export target, preview checklist, and final encoding/playback QA. Clearly distinguish planned from produced media and do not withhold the package behind a direction form. ## The three capability axes A finished video is built from one or more of three orthogonal axes. Decide which dominate, then lock them. - **Generate (A)** — AI-generated footage/imagery: photoreal shots, b-roll, motion, talking-head. Use when the brief needs real-looking or cinematic visuals. - **Compose (B)** — deterministic HTML composition: explainers, kinetic typography, motion graphics, captions / lower-thirds / overlays, data viz, title cards, transitions. Use when the visuals are designed rather than filmed. This is the default for explainer/animation work. - **Edit (C)** — intelligent editing of supplied footage: evidence-based selection/cleanup, deterministic cut/join/reframe/captions/audio work, and semantic AI video editing for bounded pixel-level changes. ## Decision rules 1. First distinguish an edit target from a production input. Keeping supplied video or its timeline as the spine remains EDIT, including captions, overlays, localization and supplied narration. Video used only as a reference, or supplied images/audio/scripts, do not select EDIT. Ask only if the requested output is ambiguous. 2. Read the brief (topic, aspect ratio, language, duration) and classify the **dominant work object**: - "explain / teach / animate / motion-graphics / kinetic text" → **Compose (B)** primary, optionally Generate (A) for b-roll. - "make footage of / cinematic / a scene of / a character doing" → **Generate (A)** primary, Compose (B) to overlay captions. - "cut / clip / trim / repurpose / make highlights / remove or change something in my video" → **Edit (C)** primary. Keep EDIT as the route even when a billable `operation:"edit"` segment is required. 3. Most explainer/animation requests are **Compose-primary**: typographic and motion-graphic scenes assembled as an HTML composition, with AI imagery only where a shot genuinely needs it. 4. For supplied reference media, classify the requested relationship as `reproduce`, `edit`, or `guide` before choosing execution. Apply the same classification regardless of origin. Images can control content/identity/composition/structure/style; videos can additionally control motion/timing/audio through temporal anchors. 5. Aspect ratio drives the canvas: 16:9 → 1920×1080, 9:16 → 1080×1920, 1:1 → 1080×1080. ## End-to-end (AUTO) — when the job spans lines Pick a **single line** when one axis cleanly dominates (just trim a clip; just an explainer; just generate a scene). Route to **AUTO end-to-end** when the deliverable genuinely needs MORE THAN ONE axis woven into the primary timeline — most often the user supplies their own material AND wants finished framing/voice/motion around it: - "use my clip in the middle, author a motion-graphics opener, and add generated b-roll" (edit + compose + generate) - "my footage in the middle, generate an opener, compose the stats" (edit + generate + compose) - "make a finished video from these assets" where the assets alone are not the deliverable. AUTO does not abandon the axes — it sequences them through one cross-modal plan (`stage-plan` builds the EDL, `stage-assemble` walks it), delegating each segment back to the generate / compose / edit lines. Choosing AUTO is itself the lock: the *primary* still gets named via the plan's `delivery_promise` (source_led / motion_led / compose_led / hybrid). ## Lock the runtime - Decide the primary axis at the brief/proposal stage and **state it in the proposal**. - Once locked, do not silently switch the primary axis mid-run. If a later step reveals the wrong choice, surface it to the user and re-confirm rather than quietly changing course. - Layering is fine and expected (e.g. Compose captions over Generated footage); "locking" governs the **primary** path, not the allowed overlays. ## Boundary / non-goals This skill only routes and locks. Semantic editing is not a silent switch to GENERATE: it remains an EDIT/AUTO job with a signed billable video edit segment and explicit original/preservation boundary. ## Runtime handoff For a fully specified one-shot deterministic edit, state EDIT, probe and execute through `stage-edit` without a direction artifact or plan. Load `stage-decide` first only when the content or timing must be located. For other production work, show two or three direction concepts and the facts already settled by the brief. Do not write a manifest, narration or art direction before that choice. Follow `gate-control` for the decision and its localized title. The public runtime uses OVS and HyperFrames; do not invent desktop-host operations.
© Orkas-AI · MIT · Orkas-AI/Orkas-VideoStudio