Use When
- The desired final asset is a generated video or video render plan.
- The request may be a simple clip, storyboard, UGC, podcast clip, reference video, talking-head, image-to-video, text-to-video, or research handoff.
- The next decision is task class, request architecture, and execution handoff.
Do Not Use When
- The user only needs transcription, subtitles, semantic analysis, or edit
decisioning. Use
media-router. - The request architecture is already approved and provider-ready. Use
seedance-submitterorvideo-batch-runner. - The task is image-only or audio-only.
Core Boundary
This is the video generation controller. It does not submit jobs.
It must:
- classify the video task,
- choose whether references or storyboard must be resolved,
- hand approved structure to
video-request-architect, - hand submit-ready plans to
seedance-submitterorvideo-batch-runner.
Task Classes
| Task class | Use when | Required handoff |
|---|---|---|
simple_clip |
one short text/image-to-video clip | video-request-architect |
storyboard |
panel sequence or contact sheet drives the clip | storyboard-grid-writer, then video-request-architect |
ugc |
creator-style product or app video | ugc-flow unless it is one isolated clip |
podcast |
voice-led clip, audiogram, or speaker segment | audio-generation, then video architecture |
reference_video |
benchmark video controls rhythm or motion | reference-decode and reference-contract-builder |
research_handoff |
research/benchmark becomes a generation request | benchmark-to-brief, then video-request-architect |
Routing Table
| If not video-generation | Send to |
|---|---|
| Understanding or subtitles first | media-router |
| Image asset must be created first | image-generation |
| Voice or dub must be created first | audio-generation |
| Product-to-UGC pipeline | ugc-flow |
| Provider-ready request exists | seedance-submitter or video-batch-runner |
Three-Layer Boundary
- Controller: classify task and produce the handoff. It must not submit.
- Architect:
video-request-architectbuilds provider-agnostic structure. It must not call providers. - Runner:
seedance-submitterorvideo-batch-runnervalidates and executes normalized requests. It must not make creative strategy decisions.
Output Shape
Return:
taskClassrequiredUpstreamSkillsarchitectureHandoffrunnerHandoffreferencePolicymustNotDo
Stop Conditions
- Stop when required user intent, source evidence, or owned input artifacts are missing and guessing would change the result.
- Do not ask a runner to infer hook, persona, or reference meaning.
- If an owned CLI or script command fails, report the exact error and stop. Do not bypass the failure with metadata-only answers, readiness probing, local payload rewrites, fallback providers, or unpublished tools.
Public Command Boundary
- Choose the smallest matching command or workflow from the user input and run it directly.
- If an owned CLI or script command fails, report the exact error and stop. Do not bypass the failure with metadata-only answers, readiness probing, local payload rewrites, fallback providers, or unpublished tools.
- This public skill is instruction-driven. Produce the controller handoff artifact directly from the available evidence.
- Do not call private provider/runtime paths or unpublished local tools.
- If the CLI returns a quote-confirmation challenge, run
postplus quote confirm --json --challenge-file <challenge.json>and retry with the returned token.