Storyboard Director
Turn a script, treatment, outline, scene, or brand short into a professional storyboard plan and detailed shot prompts.
Use this skill when the user wants:
剧本 -> 分镜脚本剧本 -> 详细分镜提示词- storyboard review before video generation
- shot-level prompt structure for Jimeng, Seedance, image boards, or human storyboard artists
- rhythm, expression, blocking, or visual readability checks before final prompt writing
This skill is storyboard-first, not model-first.
Do these in order:
- understand the script
- review the beat and rhythm
- decide how the scene should be expressed visually
- build storyboard shots
- validate action timing, expression, and object state
- critique and score the result
- output storyboard-ready prompts
Source Policy
Prefer official and professional-team sources over generic prompt folklore.
Use this order:
- professional team and research-team open-source projects for shot planning and storyboard logic
- official product material when the user also needs model-specific prompt constraints
- practical storyboard workflow tools for review expectations
- your own fallback reasoning only when the sources above do not answer the question
See open_source_foundations.md and source_map.md.
What This Skill Is Based On
This skill is intentionally built from these open-source directions:
ViMaxfor script-to-shot orchestration and shot-level storyboard planningFilmAgentfor director/screenwriter/cinematographer role decomposition and critique-correct-verifyMovieAgentfor hierarchical multi-scene and multi-shot planningStory2Boardfor panel-level prompt shapingTaleCrafterfor story-to-layout and multi-character consistencyStoryboarderfor practical human storyboard workflow expectationsscreenplay-parserand screenplay interchange tools for script normalization
Do not claim this skill is an official release from those teams. It is a new skill built by combining their strongest reusable ideas into one workflow.
Workflow
1. Parse the script before you invent shots
Extract:
- scenes or user-provided segments
- who is present
- what changes
- what the audience must understand
- emotional turns
- objects whose state matters
- location, time, weather, and period clues
Use screenplay_parsing.md.
Use scripts/normalize_script.py for a deterministic first pass.
2. Review the script as a visual problem
Before writing any shots, ask:
- what is this scene trying to express
- what must the audience understand without explanation
- which beats will read fast
- which beats need more hold time
- which beats want long takes
- which beats should cut
- which objects or transformations need state control
- which performances depend on expression rather than action
Use script_review.md.
Do not force the original written second marks if they conflict with readable action. The script timing is a reference. Readability is the release gate.
3. Build a story bible
Before final storyboard writing, build a compact internal representation:
- premise
- theme cues
- protagonist hierarchy
- character identity anchors
- location anchors
- continuity risks
- object-state risks
- style and audience
Use scripts/build_story_bible.py.
See assets/example_story_bible.json.
4. Resolve style and presentation mode
Choose one:
script_inferred_styleuser_locked_stylehybrid_style
Record both:
style_modestyle_rationale
See style_inference.md.
5. Plan the storyboard by scene objective, not by camera decoration
For each scene or beat, decide:
- scene objective
- protagonist priority
- how the scene should be expressed
- whether it wants restraint, intimacy, tension, wonder, comedy, clarity, or release
Then decide shots from that.
Use:
6. Design each shot with six required layers
Every storyboard shot must explicitly resolve:
narrative_purposeaudience_focusblocking_plancomposition_goalexpression_planmovement_motivation
Also resolve:
tempofocus_shifttransition_reason
If any of these are vague, the shot is not ready.
See:
7. Run action timing validation
Do not approve a shot because the total seconds look plausible.
Validate whether the available duration can clearly carry:
- setup
- execution
- result
- reaction
This applies to long takes too.
If one character fails and another character then prepares to try, those are separate readable units. Do not collapse the second performer into a sudden already-moving state.
See action_timing_validation.md.
8. Run expression validation
Do not rely only on body motion.
Check whether the audience can read:
- what the character feels before the action
- how that feeling changes during the action
- whether the result changes the expression
- whether the reaction lands clearly
If the scene depends on emotion but the face, posture, wing/hand gesture, or eye direction are unspecified, revise it.
See expression_design.md.
9. Run object-state control
If an object has story-critical state, record it explicitly.
Examples:
- unripe cotton boll vs full bloom
- closed box vs opened box
- intact sword vs shattered sword
- empty cup vs filled cup
For each critical object, record:
- required state now
- visible markers
- forbidden markers
- when state transition is allowed
10. Critique, correct, and verify
Do not trust the first pass.
For each shot:
- identify the likely failure mode
- make the smallest useful correction
- verify that the revised shot improves clarity, protagonist priority, and controllability
See critique_correct_verify.md.
11. Score before final output
Use at least:
- narrative fidelity
- protagonist priority
- blocking clarity
- composition logic
- camera motivation
- rhythm control
- action timing readability
- expression readability
- object state control
- generation controllability
See evaluation_rubric.md.
Use scripts/score_storyboard_plan.py.
12. Render the storyboard output
Default Chinese final output should be a screenplay-style storyboard script:
全局风格:
...
【00-12s|第一幕:标题】
镜头1:0-4s [中景] ...
镜头2:4-7s [近景] ...
镜头3:7-12s [特写] ...
音效:...
Use sparse front labels. Keep movement in the shot sentence body. Keep sound at the end of the scene block. Do not expose internal review layers unless the user explicitly asks for analysis.
Use:
- storyboard_prompt_format.md
scripts/render_storyboard_prompt.py
Output Modes
Use these output modes:
storyboard_scriptDefault final Chinese output. Scene header, shot lines, scene-level sound.prompt_onlyCompact prompt blocks with no internal review lines.reviewAnalysis mode. May include director decision, action timing validation, critique, and scoring.
Output Contract
Use the schema in storyboard_schema.json.
Each shot should capture:
narrative_purposeaudience_focusdirector_decisionexpression_planaction_timing_validationobject_state_controlsubjectactionsettingmoodshot_sizeanglelenscompositionlightingsound_designcritique_passevaluationtimecoded_beats
Prompt Rules
- Do not dump the whole screenplay into one giant prompt.
- Do not design shots before understanding the script objective.
- Do not let support characters steal the protagonist beat unless the story truly shifts focus.
- Do not overload front labels with too much technical data.
- Do not approve a shot whose action chain is unreadable in the available seconds.
- Do not approve an emotional shot whose expression chain is vague.
- Do not approve an object-transformation shot without explicit object-state control.
- Do not expose internal review layers in final output unless the user explicitly asks for review mode.
- When a user shows a preferred storyboard prompt structure, mirror it closely.
Resources
scripts/
normalize_script.pybuild_story_bible.pyvalidate_storyboard_plan.pyscore_storyboard_plan.pyrender_storyboard_prompt.py
references/
Read only the files you need:
open_source_foundations.mdfor where the workflow came fromstoryboard_workflow.mdfor the main planning pipelinescript_review.mdfor pre-shot review logicstoryboard_prompt_format.mdfor final output structureexpression_design.mdfor character expression planningobject_state_control.mdfor state-gated objectsaction_timing_validation.mdfor readable action timing
assets/
storyboard_schema.jsonexample_storyboard_plan.jsonexample_story_bible.json