AI Video Director Skills — Router
This is the entry-point skill of the seedance-minimax-prompts repository:
a neutral, open-source director layer for AI video generation prompts. It is not
an official ByteDance or MiniMax product, not an SDK, and not a model hosting
service.
When to use
Use this skill when the user asks for video generation prompts, prompt writing, or
generation requests targeting one of these models:
- Seedance 2.5 (ByteDance) — modes:
text-to-video,image-to-video,
video-extension,video-edit. - MiniMax H3 (Hailuo) — modes:
text-to-video,first-frame,last-frame,
first-last-frame,ref2va.
Do not use it for other models, for pure image generation, or for content with
unlicensed/movie/TV/brand assets.
Routing
- Determine the target model from the user's request or from
spec["model"]("seedance-2.5"or"minimax-h3"). - Load the matching sub-skill and follow it:
skills/seedance-2.5/SKILL.md(skill name:seedance-2.5)skills/minimax-h3/SKILL.md(skill name:minimax-h3)
- Read the model's grammar before writing a prompt:
models/seedance-2.5/prompt-grammar.mdmodels/minimax-h3/prompt-grammar.md
How to use the compiler
Do not hand-roll prompts. Build a VideoProjectSpec dict conforming to
schemas/video-project.schema.json, then route it:
from ai_video_director.router import route
request = route(spec) # validates spec + per-model constraints
prompt = request["prompt"] # model-specific, grammar-compliant prompt
Flow: validate_spec() (schema + hard constraints) -> route() (pick compiler by
spec["model"]) -> model-specific compile() -> validate_generation_request().
Compilers live in src/ai_video_director/compilers/seedance_25.py and
src/ai_video_director/compilers/minimax_h3.py. Violations raise
ai_video_director.validators.ValidationError; nothing is silently clamped.
Hard rules
- Duration caps are hard. MiniMax H3: 4-15 s only (open weights and API).
Seedance 2.5: up to 30 s per single generation; longer timelines use the
officialvideo-extensionflow with at most two extensions, each extension its
own generation within the cap. Never clamp, round, or silently adjust a duration. - Never present third-party claims as official. Claims that appear only in
third-party wrappers — native 4K Seedance, 72 API routes, relaxed moderation,
specific pricing or endpoints — must be attributed to that provider or omitted. - Never claim: an official SDK (official surfaces are product pages, the API
and the open-source repo), a complete local open-source H3 2K pipeline
(H3-Context-IR and H3-Regenerate-2K are not open-sourced; local H3-Base outputs
768p, 2K requires the official API), or native 4K Seedance output. - Ref2VA limits are hard: up to 9 images, 3 videos, 3 audio, 12 files total;
each reference video/audio clip 2-15 s, total reference duration <= 15 s. - No model capability inheritance. A mode or limit from one model is never
assumed valid for the other. Model modes are per-model: Seedance 2.5
text-to-video/image-to-video/video-extension/video-edit; MiniMax H3
text-to-video/first-frame/last-frame/first-last-frame/ref2va. - Audio intent is always written into the prompt: both models are audio-video
joint generation (Seedance 2.5 official; H3 native 32 kHz stereo).
Where evidence lives
- Capability facts:
models/<model-id>/capability.yamlandconstraints.yaml
(every entry carriesevidence_level,checked_at,source_url,surface). - Source registry:
sources/official-sources.yaml(official only) and
sources/third-party-providers.yaml(third-party, kept separate). - Human-readable registry and licensing verdict:
THIRD_PARTY_SOURCES.mdand
docs/license-audit.md. - Facts checked on 2026-08-19; when re-verifying, update
checked_atand
source_urltogether.