@milenyumai/film-kit 2.3.4 → 2.3.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. package/README.md +6 -2
  2. package/build/index.d.ts +1 -1
  3. package/build/lib/cli.js +1 -1
  4. package/build/lib/configure.js +14 -9
  5. package/build/lib/storyboard-reference/adapters/seedance20.d.ts +1 -0
  6. package/build/lib/storyboard-reference/adapters/seedance20.js +27 -11
  7. package/build/lib/storyboard-reference/index.d.ts +1 -1
  8. package/build/lib/storyboard-reference/output-writer.js +6 -0
  9. package/build/lib/storyboard-reference/prompt-bundle-builder.js +89 -21
  10. package/build/lib/storyboard-reference/types.d.ts +35 -1
  11. package/build/lib/storyboard-reference/validators.js +9 -0
  12. package/build/lib/templates.js +1 -1
  13. package/content/skills/storyboard-reference/SKILL.md +13 -8
  14. package/content/workflows/generate-storyboard.md +8 -6
  15. package/package.json +1 -1
  16. package/packages/gpt-image-smart/content/skills/storyboard-reference/SKILL.md +13 -8
  17. package/packages/gpt-image-smart/content/workflows/generate-storyboard.md +24 -6
  18. package/packages/hybrid/content/skills/storyboard-reference/SKILL.md +13 -8
  19. package/packages/hybrid/content/workflows/generate-storyboard.md +24 -6
  20. package/packages/hybrid-smart/content/skills/storyboard-reference/SKILL.md +13 -8
  21. package/packages/hybrid-smart/content/workflows/generate-storyboard.md +24 -6
  22. package/packages/multi/build/lib/configure.js +4 -4
  23. package/packages/multi/build/lib/templates.js +9 -9
  24. package/packages/multi/content/skills/storyboard-reference/SKILL.md +13 -8
  25. package/packages/multi/content/workflows/generate-storyboard.md +24 -6
  26. package/packages/studio/content/skills/storyboard-reference/SKILL.md +13 -8
  27. package/packages/studio/content/workflows/generate-storyboard.md +24 -6
@@ -33,11 +33,12 @@ description: Generate character sheet prompts, per-shot GPT Image 2 storyboard p
33
33
  - exact identity, wardrobe, accessories, and visible props
34
34
  - no labels, text, logos, watermarks, alternate designs, or extra characters
35
35
  3. Confirm target models: `veo31`, `seedance-2.0`, `kling-3.0`, or a user-provided subset.
36
- 4. Select shot storyboard panel budget:
37
- - 4-6 seconds: 1-2 panels/phases
38
- - 7-10 seconds: 2-3 panels/phases
39
- - 11-15 seconds: 3-4 panels/phases
40
- - 5+ distinct phases: split into multiple `SHOTNN.md` files
36
+ 4. Select video phase budget and storyboard sheet panel count:
37
+ - 4-6 seconds: 1-2 video phases
38
+ - 7-10 seconds: 2-3 video phases
39
+ - 11-15 seconds: 3-4 video phases
40
+ - GPT Image 2 storyboard sheet defaults to 12 panels; explicit panel hints may request 1-12 panels
41
+ - 5+ distinct real video phases, scene changes, or location/action blocks: split into multiple `SHOTNN.md` files
41
42
  5. Build `visual_world`:
42
43
  - environment
43
44
  - lighting
@@ -47,6 +48,7 @@ description: Generate character sheet prompts, per-shot GPT Image 2 storyboard p
47
48
  6. Generate one GPT Image 2 storyboard prompt per shot:
48
49
  - use character sheets as the only identity source
49
50
  - use optional storyboard guide only for composition, blocking, camera, timing, and rhythm
51
+ - enforce white-paper, black-and-white rough pencil production storyboard artwork; only annotation arrows/marks may use color
50
52
  - include previous shot handoff and next shot handoff
51
53
  - preserve shared location, lighting, screen direction, action rhythm, and scene continuity
52
54
  7. Build model prompt bundle:
@@ -89,7 +91,7 @@ npx @milenyumai/film-kit generate-storyboard \
89
91
  - Missing character reference: stop and request a valid reference.
90
92
  - Empty brief: stop and request a brief.
91
93
  - Public figure / real-person likeness / trademark risk: stop or safely anonymize before prompt generation.
92
- - 5+ storyboard phases: do not compress into one prompt; split shots.
94
+ - 5+ real video phases: do not compress into one prompt; split shots. 5-12 storyboard sheet panels alone do not force a split.
93
95
  - Missing GPT Image 2 character sheet prompt: output is invalid.
94
96
  - Missing GPT Image 2 per-shot storyboard prompt: output is invalid.
95
97
  - Missing `Avoid` / negative prompt: output is invalid.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@milenyumai/film-kit",
3
- "version": "2.3.4",
3
+ "version": "2.3.6",
4
4
  "description": "Single-package Film-Kit distribution with preset-driven cinematic runtime setup for OpenAI Codex App, Claude Code, Cursor, Copilot, and Antigravity.",
5
5
  "type": "module",
6
6
  "main": "./build/index.js",
@@ -13,7 +13,7 @@ Use this skill when the user provides:
13
13
  - a video brief or scenario text
14
14
  - optional external storyboard guide images
15
15
 
16
- The output is a production workflow, not only a video prompt. First create one reusable GPT Image 2 character sheet prompt per reference character. Then create one GPT Image 2 storyboard prompt per `SHOTNN.md`. The generated shot storyboard is the staging reference for the final video model prompt.
16
+ The output is a production workflow, not only a video prompt. First create one reusable GPT Image 2 character sheet prompt per reference character. Then create one GPT Image 2 storyboard prompt per `SHOTNN.md`. If no external storyboard image is supplied, this generated prompt is the mandatory storyboard bootstrap step. The generated shot storyboard is the staging reference for the final video model prompt.
17
17
 
18
18
  ## Reference Prep
19
19
 
@@ -36,11 +36,13 @@ For each shot, generate a professional GPT Image 2 storyboard prompt:
36
36
 
37
37
  - provider: `gpt-image-2`
38
38
  - aspect ratio: `16:9`
39
- - panel budget: 4-6s = 1-2 panels, 7-10s = 2-3 panels, 11-15s = 3-4 panels
40
- - hard cap: max 4 panels/phases per shot unless the configured project cap is lower
41
- - split policy: 5+ distinct phases must become separate chained `SHOTNN.md` files
39
+ - storyboard sheet panel budget: default is 12 cinematic panels in one GPT Image 2 storyboard sheet; an explicit storyboard panel hint may request 1-12 panels
40
+ - video phase budget: 4-6s = 1-2 phases, 7-10s = 2-3 phases, 11-15s = 3-4 phases
41
+ - hard cap: max 4 video phases per shot unless the configured project cap is lower
42
+ - split policy: 5+ distinct real video phases, scene changes, or location/action blocks must become separate chained `SHOTNN.md` files; 5-12 storyboard sheet panels alone do not force a split
42
43
  - target detail: dense professional storyboard direction, concrete blocking and camera language, no decorative prose
43
- - storyboard art grammar: black-and-white rough pencil drawings, minimal detail, rapid gesture energy, simple anatomy construction, strong silhouette readability, unfinished previsualization feel
44
+ - storyboard art grammar: white paper 16:9 production storyboard sheet, actual drawings black and white only, rough pencil lines, minimal detail, fast gesture drawing energy, simple anatomy construction, strong silhouette readability, unfinished previsualization feel
45
+ - hard negative style lock: do not create photorealistic cinematic stills, full-color rendered panels, concept art, movie frames, underwater/color-grade panels, 3D render, anime, CGI, or polished illustration
44
46
  - annotation grammar: red arrows = body movement, blue arrows = camera movement, green marks = framing/composition, orange marks = lighting direction, purple marks = vocal/emotional emphasis, black text = very short lens notes and panel labels
45
47
  - continuity: include previous shot handoff, next shot handoff, shared `visual_world`, screen direction, lighting, and action rhythm
46
48
 
@@ -75,9 +77,10 @@ Seedance 2.0:
75
77
  - Map character sheet images to `@Image1`, `@Image2`, ... with legacy aliases `@image1`, `@image2`, ...
76
78
  - Map the generated shot storyboard to the next image token, for example one character means `@Image2`, two characters means `@Image3`.
77
79
  - Character image tokens control identity, face, body proportions, wardrobe, accessories, and visible props.
78
- - The storyboard token controls composition, blocking, camera direction, timing, action rhythm, and phase order only.
79
- - Follow generated storyboard panels left-to-right, top-to-bottom. Do not reinterpret the action, pose logic, camera angle, emotional progression, frame variety, or final pose.
80
- - Treat storyboard arrows, labels, lens notes, and colored marks as planning annotations only; never render them into the video.
80
+ - The storyboard token is the complete visual/action/camera/choreography source and controls composition, blocking, camera direction, timing, action rhythm, framing variety, final pose, and phase order only.
81
+ - Follow all storyboard beats left-to-right, top-to-bottom. Do not reinterpret pose, action, camera angle, emotional progression, framing variety, movement logic, shot order, or final pose.
82
+ - Compress the full 12-beat default storyboard sheet into the requested duration as readable motion snapshots while preserving the duration-aware video phase budget.
83
+ - Treat storyboard arrows, labels, notes, lens notes, page headers, panel borders, and colored marks as planning annotations only; never render them into the video.
81
84
  - Use explicit timeline phases when the storyboard has multiple beats.
82
85
  - Use `No scene cuts throughout, one continuous shot` only for a true single uninterrupted camera move.
83
86
  - For multi-phase storyboard prompts, use only the planned phase transitions and do not add unplanned cuts.
@@ -108,6 +111,7 @@ Each shot file contains:
108
111
  - provider reference tokens
109
112
  - GPT Image 2 storyboard prompt
110
113
  - storyboard interpretation
114
+ - storyboard_creation metadata in `SHOTNN.bundle.json`
111
115
  - audio plan
112
116
  - prompt bundle for requested models
113
117
  - QA verdict
@@ -116,6 +120,7 @@ Generated files:
116
120
 
117
121
  ```text
118
122
  $OUTPUT_DIR/storyboard-reference-plan.json
123
+ $OUTPUT_DIR/storyboard-prompt.md
119
124
  $OUTPUT_DIR/reference-prep/CHARACTER-SHEET-*.md
120
125
  $OUTPUT_DIR/storyboard-prompts/SHOTNN-GPT-IMAGE-2-STORYBOARD.md
121
126
  $OUTPUT_DIR/prompt-bundles/SHOTNN.bundle.json
@@ -33,11 +33,12 @@ description: Generate character sheet prompts, per-shot GPT Image 2 storyboard p
33
33
  - exact identity, wardrobe, accessories, and visible props
34
34
  - no labels, text, logos, watermarks, alternate designs, or extra characters
35
35
  3. Confirm target models: `veo31`, `seedance-2.0`, `kling-3.0`, or a user-provided subset.
36
- 4. Select shot storyboard panel budget:
37
- - 4-6 seconds: 1-2 panels/phases
38
- - 7-10 seconds: 2-3 panels/phases
39
- - 11-15 seconds: 3-4 panels/phases
40
- - 5+ distinct phases: split into multiple `SHOTNN.md` files
36
+ 4. Select video phase budget and storyboard sheet panel count:
37
+ - 4-6 seconds: 1-2 video phases
38
+ - 7-10 seconds: 2-3 video phases
39
+ - 11-15 seconds: 3-4 video phases
40
+ - GPT Image 2 storyboard sheet defaults to 12 panels; explicit panel hints may request 1-12 panels
41
+ - 5+ distinct real video phases, scene changes, or location/action blocks: split into multiple `SHOTNN.md` files
41
42
  5. Build `visual_world`:
42
43
  - environment
43
44
  - lighting
@@ -47,6 +48,7 @@ description: Generate character sheet prompts, per-shot GPT Image 2 storyboard p
47
48
  6. Generate one GPT Image 2 storyboard prompt per shot:
48
49
  - use character sheets as the only identity source
49
50
  - use optional storyboard guide only for composition, blocking, camera, timing, and rhythm
51
+ - enforce white-paper, black-and-white rough pencil production storyboard artwork; only annotation arrows/marks may use color
50
52
  - include previous shot handoff and next shot handoff
51
53
  - preserve shared location, lighting, screen direction, action rhythm, and scene continuity
52
54
  7. Build model prompt bundle:
@@ -89,8 +91,24 @@ npx @milenyumai/film-kit generate-storyboard \
89
91
  - Missing character reference: stop and request a valid reference.
90
92
  - Empty brief: stop and request a brief.
91
93
  - Public figure / real-person likeness / trademark risk: stop or safely anonymize before prompt generation.
92
- - 5+ storyboard phases: do not compress into one prompt; split shots.
94
+ - 5+ real video phases: do not compress into one prompt; split shots. 5-12 storyboard sheet panels alone do not force a split.
93
95
  - Missing GPT Image 2 character sheet prompt: output is invalid.
94
96
  - Missing GPT Image 2 per-shot storyboard prompt: output is invalid.
95
97
  - Missing `Avoid` / negative prompt: output is invalid.
96
98
  - Kling prompt missing required block structure: output is invalid.
99
+ - Main-shot `ILK FRAME`, `İLK FRAME`, `SON FRAME`, `SHOTNN_START`, `SHOTNN_END`, exact first-frame reuse instructions, or mandatory Start+End transition fields: output is invalid in storyboard-reference mode.
100
+
101
+ ## Required SHOTNN.md Sections
102
+
103
+ Every storyboard-reference shot file must include:
104
+
105
+ - `Model Control`
106
+ - `Input Asset Roles`
107
+ - `Reference Asset Requirements`
108
+ - `GPT Image 2 Character Sheet Prompt` or a link to the generated character sheet prompt
109
+ - `GPT Image 2 SHOTNN Storyboard Prompt`
110
+ - `Storyboard Plan`
111
+ - `Audio Plan`
112
+ - `Seedance 2.0 Ready Video Prompt` or model-ready equivalent
113
+ - `Coverage Shots`
114
+ - `QA Verdict`
@@ -13,7 +13,7 @@ Use this skill when the user provides:
13
13
  - a video brief or scenario text
14
14
  - optional external storyboard guide images
15
15
 
16
- The output is a production workflow, not only a video prompt. First create one reusable GPT Image 2 character sheet prompt per reference character. Then create one GPT Image 2 storyboard prompt per `SHOTNN.md`. The generated shot storyboard is the staging reference for the final video model prompt.
16
+ The output is a production workflow, not only a video prompt. First create one reusable GPT Image 2 character sheet prompt per reference character. Then create one GPT Image 2 storyboard prompt per `SHOTNN.md`. If no external storyboard image is supplied, this generated prompt is the mandatory storyboard bootstrap step. The generated shot storyboard is the staging reference for the final video model prompt.
17
17
 
18
18
  ## Reference Prep
19
19
 
@@ -36,11 +36,13 @@ For each shot, generate a professional GPT Image 2 storyboard prompt:
36
36
 
37
37
  - provider: `gpt-image-2`
38
38
  - aspect ratio: `16:9`
39
- - panel budget: 4-6s = 1-2 panels, 7-10s = 2-3 panels, 11-15s = 3-4 panels
40
- - hard cap: max 4 panels/phases per shot unless the configured project cap is lower
41
- - split policy: 5+ distinct phases must become separate chained `SHOTNN.md` files
39
+ - storyboard sheet panel budget: default is 12 cinematic panels in one GPT Image 2 storyboard sheet; an explicit storyboard panel hint may request 1-12 panels
40
+ - video phase budget: 4-6s = 1-2 phases, 7-10s = 2-3 phases, 11-15s = 3-4 phases
41
+ - hard cap: max 4 video phases per shot unless the configured project cap is lower
42
+ - split policy: 5+ distinct real video phases, scene changes, or location/action blocks must become separate chained `SHOTNN.md` files; 5-12 storyboard sheet panels alone do not force a split
42
43
  - target detail: dense professional storyboard direction, concrete blocking and camera language, no decorative prose
43
- - storyboard art grammar: black-and-white rough pencil drawings, minimal detail, rapid gesture energy, simple anatomy construction, strong silhouette readability, unfinished previsualization feel
44
+ - storyboard art grammar: white paper 16:9 production storyboard sheet, actual drawings black and white only, rough pencil lines, minimal detail, fast gesture drawing energy, simple anatomy construction, strong silhouette readability, unfinished previsualization feel
45
+ - hard negative style lock: do not create photorealistic cinematic stills, full-color rendered panels, concept art, movie frames, underwater/color-grade panels, 3D render, anime, CGI, or polished illustration
44
46
  - annotation grammar: red arrows = body movement, blue arrows = camera movement, green marks = framing/composition, orange marks = lighting direction, purple marks = vocal/emotional emphasis, black text = very short lens notes and panel labels
45
47
  - continuity: include previous shot handoff, next shot handoff, shared `visual_world`, screen direction, lighting, and action rhythm
46
48
 
@@ -75,9 +77,10 @@ Seedance 2.0:
75
77
  - Map character sheet images to `@Image1`, `@Image2`, ... with legacy aliases `@image1`, `@image2`, ...
76
78
  - Map the generated shot storyboard to the next image token, for example one character means `@Image2`, two characters means `@Image3`.
77
79
  - Character image tokens control identity, face, body proportions, wardrobe, accessories, and visible props.
78
- - The storyboard token controls composition, blocking, camera direction, timing, action rhythm, and phase order only.
79
- - Follow generated storyboard panels left-to-right, top-to-bottom. Do not reinterpret the action, pose logic, camera angle, emotional progression, frame variety, or final pose.
80
- - Treat storyboard arrows, labels, lens notes, and colored marks as planning annotations only; never render them into the video.
80
+ - The storyboard token is the complete visual/action/camera/choreography source and controls composition, blocking, camera direction, timing, action rhythm, framing variety, final pose, and phase order only.
81
+ - Follow all storyboard beats left-to-right, top-to-bottom. Do not reinterpret pose, action, camera angle, emotional progression, framing variety, movement logic, shot order, or final pose.
82
+ - Compress the full 12-beat default storyboard sheet into the requested duration as readable motion snapshots while preserving the duration-aware video phase budget.
83
+ - Treat storyboard arrows, labels, notes, lens notes, page headers, panel borders, and colored marks as planning annotations only; never render them into the video.
81
84
  - Use explicit timeline phases when the storyboard has multiple beats.
82
85
  - Use `No scene cuts throughout, one continuous shot` only for a true single uninterrupted camera move.
83
86
  - For multi-phase storyboard prompts, use only the planned phase transitions and do not add unplanned cuts.
@@ -108,6 +111,7 @@ Each shot file contains:
108
111
  - provider reference tokens
109
112
  - GPT Image 2 storyboard prompt
110
113
  - storyboard interpretation
114
+ - storyboard_creation metadata in `SHOTNN.bundle.json`
111
115
  - audio plan
112
116
  - prompt bundle for requested models
113
117
  - QA verdict
@@ -116,6 +120,7 @@ Generated files:
116
120
 
117
121
  ```text
118
122
  $OUTPUT_DIR/storyboard-reference-plan.json
123
+ $OUTPUT_DIR/storyboard-prompt.md
119
124
  $OUTPUT_DIR/reference-prep/CHARACTER-SHEET-*.md
120
125
  $OUTPUT_DIR/storyboard-prompts/SHOTNN-GPT-IMAGE-2-STORYBOARD.md
121
126
  $OUTPUT_DIR/prompt-bundles/SHOTNN.bundle.json
@@ -33,11 +33,12 @@ description: Generate character sheet prompts, per-shot GPT Image 2 storyboard p
33
33
  - exact identity, wardrobe, accessories, and visible props
34
34
  - no labels, text, logos, watermarks, alternate designs, or extra characters
35
35
  3. Confirm target models: `veo31`, `seedance-2.0`, `kling-3.0`, or a user-provided subset.
36
- 4. Select shot storyboard panel budget:
37
- - 4-6 seconds: 1-2 panels/phases
38
- - 7-10 seconds: 2-3 panels/phases
39
- - 11-15 seconds: 3-4 panels/phases
40
- - 5+ distinct phases: split into multiple `SHOTNN.md` files
36
+ 4. Select video phase budget and storyboard sheet panel count:
37
+ - 4-6 seconds: 1-2 video phases
38
+ - 7-10 seconds: 2-3 video phases
39
+ - 11-15 seconds: 3-4 video phases
40
+ - GPT Image 2 storyboard sheet defaults to 12 panels; explicit panel hints may request 1-12 panels
41
+ - 5+ distinct real video phases, scene changes, or location/action blocks: split into multiple `SHOTNN.md` files
41
42
  5. Build `visual_world`:
42
43
  - environment
43
44
  - lighting
@@ -47,6 +48,7 @@ description: Generate character sheet prompts, per-shot GPT Image 2 storyboard p
47
48
  6. Generate one GPT Image 2 storyboard prompt per shot:
48
49
  - use character sheets as the only identity source
49
50
  - use optional storyboard guide only for composition, blocking, camera, timing, and rhythm
51
+ - enforce white-paper, black-and-white rough pencil production storyboard artwork; only annotation arrows/marks may use color
50
52
  - include previous shot handoff and next shot handoff
51
53
  - preserve shared location, lighting, screen direction, action rhythm, and scene continuity
52
54
  7. Build model prompt bundle:
@@ -89,8 +91,24 @@ npx @milenyumai/film-kit generate-storyboard \
89
91
  - Missing character reference: stop and request a valid reference.
90
92
  - Empty brief: stop and request a brief.
91
93
  - Public figure / real-person likeness / trademark risk: stop or safely anonymize before prompt generation.
92
- - 5+ storyboard phases: do not compress into one prompt; split shots.
94
+ - 5+ real video phases: do not compress into one prompt; split shots. 5-12 storyboard sheet panels alone do not force a split.
93
95
  - Missing GPT Image 2 character sheet prompt: output is invalid.
94
96
  - Missing GPT Image 2 per-shot storyboard prompt: output is invalid.
95
97
  - Missing `Avoid` / negative prompt: output is invalid.
96
98
  - Kling prompt missing required block structure: output is invalid.
99
+ - Main-shot `ILK FRAME`, `İLK FRAME`, `SON FRAME`, `SHOTNN_START`, `SHOTNN_END`, exact first-frame reuse instructions, or mandatory Start+End transition fields: output is invalid in storyboard-reference mode.
100
+
101
+ ## Required SHOTNN.md Sections
102
+
103
+ Every storyboard-reference shot file must include:
104
+
105
+ - `Model Control`
106
+ - `Input Asset Roles`
107
+ - `Reference Asset Requirements`
108
+ - `GPT Image 2 Character Sheet Prompt` or a link to the generated character sheet prompt
109
+ - `GPT Image 2 SHOTNN Storyboard Prompt`
110
+ - `Storyboard Plan`
111
+ - `Audio Plan`
112
+ - `Seedance 2.0 Ready Video Prompt` or model-ready equivalent
113
+ - `Coverage Shots`
114
+ - `QA Verdict`
@@ -13,7 +13,7 @@ Use this skill when the user provides:
13
13
  - a video brief or scenario text
14
14
  - optional external storyboard guide images
15
15
 
16
- The output is a production workflow, not only a video prompt. First create one reusable GPT Image 2 character sheet prompt per reference character. Then create one GPT Image 2 storyboard prompt per `SHOTNN.md`. The generated shot storyboard is the staging reference for the final video model prompt.
16
+ The output is a production workflow, not only a video prompt. First create one reusable GPT Image 2 character sheet prompt per reference character. Then create one GPT Image 2 storyboard prompt per `SHOTNN.md`. If no external storyboard image is supplied, this generated prompt is the mandatory storyboard bootstrap step. The generated shot storyboard is the staging reference for the final video model prompt.
17
17
 
18
18
  ## Reference Prep
19
19
 
@@ -36,11 +36,13 @@ For each shot, generate a professional GPT Image 2 storyboard prompt:
36
36
 
37
37
  - provider: `gpt-image-2`
38
38
  - aspect ratio: `16:9`
39
- - panel budget: 4-6s = 1-2 panels, 7-10s = 2-3 panels, 11-15s = 3-4 panels
40
- - hard cap: max 4 panels/phases per shot unless the configured project cap is lower
41
- - split policy: 5+ distinct phases must become separate chained `SHOTNN.md` files
39
+ - storyboard sheet panel budget: default is 12 cinematic panels in one GPT Image 2 storyboard sheet; an explicit storyboard panel hint may request 1-12 panels
40
+ - video phase budget: 4-6s = 1-2 phases, 7-10s = 2-3 phases, 11-15s = 3-4 phases
41
+ - hard cap: max 4 video phases per shot unless the configured project cap is lower
42
+ - split policy: 5+ distinct real video phases, scene changes, or location/action blocks must become separate chained `SHOTNN.md` files; 5-12 storyboard sheet panels alone do not force a split
42
43
  - target detail: dense professional storyboard direction, concrete blocking and camera language, no decorative prose
43
- - storyboard art grammar: black-and-white rough pencil drawings, minimal detail, rapid gesture energy, simple anatomy construction, strong silhouette readability, unfinished previsualization feel
44
+ - storyboard art grammar: white paper 16:9 production storyboard sheet, actual drawings black and white only, rough pencil lines, minimal detail, fast gesture drawing energy, simple anatomy construction, strong silhouette readability, unfinished previsualization feel
45
+ - hard negative style lock: do not create photorealistic cinematic stills, full-color rendered panels, concept art, movie frames, underwater/color-grade panels, 3D render, anime, CGI, or polished illustration
44
46
  - annotation grammar: red arrows = body movement, blue arrows = camera movement, green marks = framing/composition, orange marks = lighting direction, purple marks = vocal/emotional emphasis, black text = very short lens notes and panel labels
45
47
  - continuity: include previous shot handoff, next shot handoff, shared `visual_world`, screen direction, lighting, and action rhythm
46
48
 
@@ -75,9 +77,10 @@ Seedance 2.0:
75
77
  - Map character sheet images to `@Image1`, `@Image2`, ... with legacy aliases `@image1`, `@image2`, ...
76
78
  - Map the generated shot storyboard to the next image token, for example one character means `@Image2`, two characters means `@Image3`.
77
79
  - Character image tokens control identity, face, body proportions, wardrobe, accessories, and visible props.
78
- - The storyboard token controls composition, blocking, camera direction, timing, action rhythm, and phase order only.
79
- - Follow generated storyboard panels left-to-right, top-to-bottom. Do not reinterpret the action, pose logic, camera angle, emotional progression, frame variety, or final pose.
80
- - Treat storyboard arrows, labels, lens notes, and colored marks as planning annotations only; never render them into the video.
80
+ - The storyboard token is the complete visual/action/camera/choreography source and controls composition, blocking, camera direction, timing, action rhythm, framing variety, final pose, and phase order only.
81
+ - Follow all storyboard beats left-to-right, top-to-bottom. Do not reinterpret pose, action, camera angle, emotional progression, framing variety, movement logic, shot order, or final pose.
82
+ - Compress the full 12-beat default storyboard sheet into the requested duration as readable motion snapshots while preserving the duration-aware video phase budget.
83
+ - Treat storyboard arrows, labels, notes, lens notes, page headers, panel borders, and colored marks as planning annotations only; never render them into the video.
81
84
  - Use explicit timeline phases when the storyboard has multiple beats.
82
85
  - Use `No scene cuts throughout, one continuous shot` only for a true single uninterrupted camera move.
83
86
  - For multi-phase storyboard prompts, use only the planned phase transitions and do not add unplanned cuts.
@@ -108,6 +111,7 @@ Each shot file contains:
108
111
  - provider reference tokens
109
112
  - GPT Image 2 storyboard prompt
110
113
  - storyboard interpretation
114
+ - storyboard_creation metadata in `SHOTNN.bundle.json`
111
115
  - audio plan
112
116
  - prompt bundle for requested models
113
117
  - QA verdict
@@ -116,6 +120,7 @@ Generated files:
116
120
 
117
121
  ```text
118
122
  $OUTPUT_DIR/storyboard-reference-plan.json
123
+ $OUTPUT_DIR/storyboard-prompt.md
119
124
  $OUTPUT_DIR/reference-prep/CHARACTER-SHEET-*.md
120
125
  $OUTPUT_DIR/storyboard-prompts/SHOTNN-GPT-IMAGE-2-STORYBOARD.md
121
126
  $OUTPUT_DIR/prompt-bundles/SHOTNN.bundle.json
@@ -33,11 +33,12 @@ description: Generate character sheet prompts, per-shot GPT Image 2 storyboard p
33
33
  - exact identity, wardrobe, accessories, and visible props
34
34
  - no labels, text, logos, watermarks, alternate designs, or extra characters
35
35
  3. Confirm target models: `veo31`, `seedance-2.0`, `kling-3.0`, or a user-provided subset.
36
- 4. Select shot storyboard panel budget:
37
- - 4-6 seconds: 1-2 panels/phases
38
- - 7-10 seconds: 2-3 panels/phases
39
- - 11-15 seconds: 3-4 panels/phases
40
- - 5+ distinct phases: split into multiple `SHOTNN.md` files
36
+ 4. Select video phase budget and storyboard sheet panel count:
37
+ - 4-6 seconds: 1-2 video phases
38
+ - 7-10 seconds: 2-3 video phases
39
+ - 11-15 seconds: 3-4 video phases
40
+ - GPT Image 2 storyboard sheet defaults to 12 panels; explicit panel hints may request 1-12 panels
41
+ - 5+ distinct real video phases, scene changes, or location/action blocks: split into multiple `SHOTNN.md` files
41
42
  5. Build `visual_world`:
42
43
  - environment
43
44
  - lighting
@@ -47,6 +48,7 @@ description: Generate character sheet prompts, per-shot GPT Image 2 storyboard p
47
48
  6. Generate one GPT Image 2 storyboard prompt per shot:
48
49
  - use character sheets as the only identity source
49
50
  - use optional storyboard guide only for composition, blocking, camera, timing, and rhythm
51
+ - enforce white-paper, black-and-white rough pencil production storyboard artwork; only annotation arrows/marks may use color
50
52
  - include previous shot handoff and next shot handoff
51
53
  - preserve shared location, lighting, screen direction, action rhythm, and scene continuity
52
54
  7. Build model prompt bundle:
@@ -89,8 +91,24 @@ npx @milenyumai/film-kit generate-storyboard \
89
91
  - Missing character reference: stop and request a valid reference.
90
92
  - Empty brief: stop and request a brief.
91
93
  - Public figure / real-person likeness / trademark risk: stop or safely anonymize before prompt generation.
92
- - 5+ storyboard phases: do not compress into one prompt; split shots.
94
+ - 5+ real video phases: do not compress into one prompt; split shots. 5-12 storyboard sheet panels alone do not force a split.
93
95
  - Missing GPT Image 2 character sheet prompt: output is invalid.
94
96
  - Missing GPT Image 2 per-shot storyboard prompt: output is invalid.
95
97
  - Missing `Avoid` / negative prompt: output is invalid.
96
98
  - Kling prompt missing required block structure: output is invalid.
99
+ - Main-shot `ILK FRAME`, `İLK FRAME`, `SON FRAME`, `SHOTNN_START`, `SHOTNN_END`, exact first-frame reuse instructions, or mandatory Start+End transition fields: output is invalid in storyboard-reference mode.
100
+
101
+ ## Required SHOTNN.md Sections
102
+
103
+ Every storyboard-reference shot file must include:
104
+
105
+ - `Model Control`
106
+ - `Input Asset Roles`
107
+ - `Reference Asset Requirements`
108
+ - `GPT Image 2 Character Sheet Prompt` or a link to the generated character sheet prompt
109
+ - `GPT Image 2 SHOTNN Storyboard Prompt`
110
+ - `Storyboard Plan`
111
+ - `Audio Plan`
112
+ - `Seedance 2.0 Ready Video Prompt` or model-ready equivalent
113
+ - `Coverage Shots`
114
+ - `QA Verdict`
@@ -205,7 +205,7 @@ function buildStoryboardReferencePolicyJson(config) {
205
205
  aspect_ratio: "16:9",
206
206
  panel_budget: "4-6s: 1-2, 7-10s: 2-3, 11-15s: 3-4",
207
207
  max_panels_per_shot: config.storyboardReferenceMode.maxStoryboardPhases,
208
- target_words: "160-240 words per shot storyboard prompt"
208
+ target_words: "240-420 words per shot storyboard prompt"
209
209
  },
210
210
  material_roles: {
211
211
  "character_sheet_tokens": "identity, face, body proportions, wardrobe, accessories, and visible props",
@@ -253,7 +253,7 @@ function buildShotFileOutputContract(config) {
253
253
  return `1. main shot blocks: \`MODEL CONTROL\`, \`INPUT ASSET ROLES\`, \`REFERENCE ASSET REQUIREMENTS\`, \`GPT IMAGE 2 STORYBOARD PROMPT\`, \`STORYBOARD PLAN\`, \`AUDIO PLAN\`, \`SEEDANCE VIDEO PROMPT\`, and coverage
254
254
  2. \`INPUT ASSET ROLES\` must declare generated character sheet tokens (\`@Image1...\`, legacy \`@image1...\`) as identity/wardrobe/props only
255
255
  3. \`INPUT ASSET ROLES\` must declare the generated shot storyboard token (next \`@Image\` after character sheets, legacy lowercase alias such as \`@image2\` for one character) as composition/blocking/camera/timing only
256
- 4. \`GPT IMAGE 2 STORYBOARD PROMPT\` must be 16:9, professional production storyboard style, 160-240 words, and use character sheets as the only identity source
256
+ 4. \`GPT IMAGE 2 STORYBOARD PROMPT\` must be 16:9, professional production storyboard style, 240-420 words, use character sheets as the only identity source, and may use 1-12 storyboard sheet panels without forcing SHOT split
257
257
  5. \`STORYBOARD PLAN\` must include timeline phases for this shot, capped at ${config.storyboardReferenceMode.maxStoryboardPhases} phases
258
258
  6. every phase must derive from the shared \`team-plan.json -> visual_world\` and include its handoff from the previous shot and handoff to the next shot
259
259
  7. 2-3 coverage sub-shots stay in the same file
@@ -285,9 +285,9 @@ function buildSeedanceStoryboardContract(config) {
285
285
  - declare character sheet tokens (\`@Image1...\`, legacy \`@image1...\`) as identity, face, body proportions, wardrobe, accessories, and visible props
286
286
  - declare the generated shot storyboard token (next \`@Image\` after character sheets, legacy lowercase alias such as \`@image2\` for one character) as composition, blocking, camera direction, timing, and action progression only
287
287
  - never let storyboard text, panel borders, watermark, logo, alternate character design, or storyboard character design override the identity reference
288
- - write one \`GPT IMAGE 2 STORYBOARD PROMPT\` per shot before the Seedance prompt; it must be 16:9, professional, 160-240 words, and continuity-aware
288
+ - write one \`GPT IMAGE 2 STORYBOARD PROMPT\` per shot before the Seedance prompt; it must be 16:9, professional, 240-420 words, continuity-aware, and written as the storyboard bootstrap prompt when no external storyboard image exists
289
289
  - write per-shot timeline phases under \`STORYBOARD PLAN\`, capped at ${config.storyboardReferenceMode.maxStoryboardPhases} phases
290
- - follow duration budget: 4-6s = 1-2 phases, 7-10s = 2-3 phases, 11-15s = 3-4 phases; split 5+ phases into separate \`SHOTNN.md\` files
290
+ - follow video phase budget: 4-6s = 1-2 phases, 7-10s = 2-3 phases, 11-15s = 3-4 phases; split 5+ real video phases, scene changes, or location/action blocks into separate \`SHOTNN.md\` files; 5-12 storyboard sheet panels alone do not force a split
291
291
  - use \`No scene cuts throughout, one continuous shot.\` only when that shot's storyboard plan is a single uninterrupted camera move
292
292
  - for multi-phase storyboard shots, describe the planned phase changes directly instead of forcing continuous-shot wording
293
293
  - when continuing a source clip, use \`Extend @video1 by [N]s\` and still preserve storyboard handoff continuity`;
@@ -21,7 +21,7 @@ function buildReferenceModeSummary(config) {
21
21
  return `- Reference mode: \`storyboard-reference\`
22
22
  - Storyboard reference mode: enabled
23
23
  - Max storyboard phases per shot: ${config.storyboardReferenceMode.maxStoryboardPhases}
24
- - Recommended phase budget: 4-6s = 1-2, 7-10s = 2-3, 11-15s = 3-4; split 5+ phases
24
+ - Recommended video phase budget: 4-6s = 1-2, 7-10s = 2-3, 11-15s = 3-4; split 5+ real video phases, not 5-12 storyboard sheet panels
25
25
  - Provider reference tokens: generated character sheet tokens first, generated shot storyboard token next
26
26
  - Start/end frame chaining contract: disabled for Seedance storyboard-reference`;
27
27
  }
@@ -58,7 +58,7 @@ Seedance 2.0 responds best when you assign **explicit multimodal control roles**
58
58
  ${storyboardReferenceActive
59
59
  ? `- Storyboard-reference mode is active: generate one 16:9 GPT Image 2 character sheet prompt per character first; those sheet images lock identity/wardrobe/props
60
60
  - Each SHOTNN.md includes a GPT IMAGE 2 STORYBOARD PROMPT plus a per-shot STORYBOARD PLAN; the generated storyboard token controls only composition, blocking, camera direction, timing, and action progression
61
- - Duration budget: 4-6s = 1-2 phases, 7-10s = 2-3 phases, 11-15s = 3-4 phases; split 5+ phases into separate SHOTNN.md files
61
+ - Duration budget: 4-6s = 1-2 phases, 7-10s = 2-3 phases, 11-15s = 3-4 phases; split 5+ real video phases into separate SHOTNN.md files, while 5-12 storyboard sheet panels may remain one shot
62
62
  - Storyboard text, panel borders, watermark, logo, and alternate character design are never identity sources
63
63
  - Do not require ILK FRAME / SON FRAME sections or exact first-frame reuse text in Seedance storyboard-reference mode
64
64
  - Use "No scene cuts throughout, one continuous shot." only when the shot's storyboard plan is actually one uninterrupted camera move`
@@ -313,8 +313,8 @@ export function buildMultiProjectFiles(config) {
313
313
  - \`storyboard_reference.enabled\`: ${storyboardReferenceActive ? "true" : "false"}
314
314
  - \`storyboard_reference.max_storyboard_phases\`: ${config.storyboardReferenceMode.maxStoryboardPhases}
315
315
  - \`storyboard_reference.character_reference_sheets\`: ${storyboardReferenceActive ? "GPT Image 2, 16:9, generated once per character" : "n/a"}
316
- - \`storyboard_reference.storyboard_prompt_policy\`: ${storyboardReferenceActive ? "GPT Image 2, 16:9, generated per shot, 160-240 words" : "n/a"}
317
- - \`storyboard_reference.recommended_phase_budget\`: ${storyboardReferenceActive ? "`4-6s: 1-2`, `7-10s: 2-3`, `11-15s: 3-4`, split 5+ phases" : "n/a"}
316
+ - \`storyboard_reference.storyboard_prompt_policy\`: ${storyboardReferenceActive ? "GPT Image 2, 16:9, generated per shot, 240-420 words, 1-12 sheet panels" : "n/a"}
317
+ - \`storyboard_reference.recommended_phase_budget\`: ${storyboardReferenceActive ? "`4-6s: 1-2`, `7-10s: 2-3`, `11-15s: 3-4`, split 5+ real video phases" : "n/a"}
318
318
  - \`storyboard_reference.provider_reference_tokens\`: ${storyboardReferenceActive ? "generated character sheet tokens first; generated shot storyboard token next" : "n/a"}
319
319
  - \`storyboard_reference.continuity_mode\`: ${storyboardReferenceActive ? "`continuous-shot` or `multi-shot-storyboard`" : "n/a"}
320
320
  - \`storyboard_reference.provider_file_limits\`: ${storyboardReferenceActive ? "9 images, 3 videos, 3 audio, 12 total files, 4-15s duration" : "n/a"}
@@ -353,7 +353,7 @@ SPATIAL PRIORITY: [who looks at what, which plane dominates, shared light source
353
353
  SEMANTIC WORLD: [camera height, lens family, horizon/vanishing logic, camera movement strategy, light source, shadow direction, scale map, reflection risk, physics constraints]
354
354
  RESPECT LOCKED SHOT COUNT: Do not create any shot outside SHOT[X]-SHOT[Y]
355
355
  KLING DEFAULT: single-transition first; custom storyboard only for 2-4 meaningful phases, max 4
356
- ${storyboardReferenceActive ? `SEEDANCE STORYBOARD-REFERENCE: Each SHOTNN.md includes INPUT ASSET ROLES, REFERENCE ASSET REQUIREMENTS, GPT IMAGE 2 STORYBOARD PROMPT, STORYBOARD PLAN, AUDIO PLAN, SEEDANCE VIDEO PROMPT, and coverage. Do not require ILK FRAME / SON FRAME. Max storyboard phases per shot: ${config.storyboardReferenceMode.maxStoryboardPhases}. Character sheet tokens lock identity; generated shot storyboard token controls staging only.` : ""}
356
+ ${storyboardReferenceActive ? `SEEDANCE STORYBOARD-REFERENCE: Each SHOTNN.md includes INPUT ASSET ROLES, REFERENCE ASSET REQUIREMENTS, GPT IMAGE 2 STORYBOARD PROMPT, STORYBOARD PLAN, AUDIO PLAN, SEEDANCE VIDEO PROMPT, and coverage. Do not require ILK FRAME / SON FRAME. Max video phases per shot: ${config.storyboardReferenceMode.maxStoryboardPhases}. Character sheet tokens lock identity; generated shot storyboard token controls staging only and may contain up to 12 sheet panels.` : ""}
357
357
  ONE FILE PER SHOT: Each SHOTNN.md contains main shot + all coverage.
358
358
  FILE OWNERSHIP: Write only your assigned SHOT files and your own batch report.
359
359
  VOICE CONTRACT: Reuse ${config.outputDir}/team-plan.json -> \`voiceCast\` and keep one active speaker per shot.
@@ -421,7 +421,7 @@ ${storyboardReferenceActive
421
421
  ? `- Main shot contains: \`MODEL CONTROL\`, \`INPUT ASSET ROLES\`, \`REFERENCE ASSET REQUIREMENTS\`, \`GPT IMAGE 2 STORYBOARD PROMPT\`, \`STORYBOARD PLAN\`, \`AUDIO PLAN\`, \`SEEDANCE VIDEO PROMPT\`, and coverage
422
422
  - \`INPUT ASSET ROLES\` declares generated character sheet tokens (\`@Image1...\`, legacy \`@image1...\`) as identity/wardrobe/props
423
423
  - \`INPUT ASSET ROLES\` declares generated shot storyboard token (next \`@Image\`, legacy lowercase alias such as \`@image2\` for one character) as composition/blocking/camera/timing only
424
- - \`GPT IMAGE 2 STORYBOARD PROMPT\` is 16:9, 160-240 words, professional storyboard style, and uses character sheets as the only identity source
424
+ - \`GPT IMAGE 2 STORYBOARD PROMPT\` is 16:9, 240-420 words, professional storyboard style, supports 1-12 sheet panels, and uses character sheets as the only identity source
425
425
  - \`STORYBOARD PLAN\` includes per-shot timeline phases capped at ${config.storyboardReferenceMode.maxStoryboardPhases}
426
426
  - Shot storyboard plans must derive from one shared \`${config.outputDir}/team-plan.json -> visual_world\`
427
427
  - Do not require \`ILK FRAME\` / \`SON FRAME\` assets or exact first-frame reuse text in this mode`
@@ -1004,8 +1004,8 @@ Run the Film-Kit Multi pipeline with maximum throughput while preserving ${isSee
1004
1004
  - set \`storyboard_reference.enabled\` to ${isSeedanceStoryboardReference(config) ? "true" : "false"}
1005
1005
  ${isSeedanceStoryboardReference(config) ? ` - set \`storyboard_reference.max_storyboard_phases\` to ${config.storyboardReferenceMode.maxStoryboardPhases}
1006
1006
  - set \`storyboard_reference.character_reference_sheets\` to GPT Image 2, 16:9, generated once per character
1007
- - set \`storyboard_reference.storyboard_prompt_policy\` to GPT Image 2, 16:9, generated per shot, 160-240 words
1008
- - set \`storyboard_reference.recommended_phase_budget\` to 4-6s=1-2, 7-10s=2-3, 11-15s=3-4, split 5+
1007
+ - set \`storyboard_reference.storyboard_prompt_policy\` to GPT Image 2, 16:9, generated per shot, 240-420 words, 1-12 sheet panels
1008
+ - set \`storyboard_reference.recommended_phase_budget\` to 4-6s=1-2, 7-10s=2-3, 11-15s=3-4, split 5+ real video phases
1009
1009
  - set \`storyboard_reference.provider_reference_tokens\` to generated character sheet tokens first and generated shot storyboard token next
1010
1010
  - set \`storyboard_reference.continuity_mode\` per shot as continuous-shot or multi-shot-storyboard
1011
1011
  - set \`storyboard_reference.provider_file_limits\` to 9 images, 3 videos, 3 audio, 12 total files, 4-15s duration
@@ -1062,7 +1062,7 @@ OUTPUT DIR: ${config.outputDir}/shots/
1062
1062
  REPORT FILE: ${config.outputDir}/reports/BATCH-REPORT-B[NN].md
1063
1063
  SPATIAL PRIORITY: [who looks at what, which plane dominates, shared light source]
1064
1064
  SEMANTIC WORLD: [camera height, lens family, horizon/vanishing logic, camera movement strategy, light source, shadow direction, scale map, reflection risk, physics constraints]
1065
- ${isSeedanceStoryboardReference(config) ? `SEEDANCE STORYBOARD-REFERENCE: Declare generated character sheet tokens (@Image1..., legacy @image1...) for identity and the generated shot storyboard token (next @Image, legacy lowercase alias such as @image2 for one character) for staging only. Include GPT IMAGE 2 STORYBOARD PROMPT and per-shot STORYBOARD PLAN phases, max ${config.storyboardReferenceMode.maxStoryboardPhases}. Do not require ILK FRAME / SON FRAME.` : ""}
1065
+ ${isSeedanceStoryboardReference(config) ? `SEEDANCE STORYBOARD-REFERENCE: Declare generated character sheet tokens (@Image1..., legacy @image1...) for identity and the generated shot storyboard token (next @Image, legacy lowercase alias such as @image2 for one character) for staging only. Include GPT IMAGE 2 STORYBOARD PROMPT with 1-12 sheet panels and per-shot STORYBOARD PLAN phases, max ${config.storyboardReferenceMode.maxStoryboardPhases}. Do not require ILK FRAME / SON FRAME.` : ""}
1066
1066
  RESPECT LOCKED SHOT COUNT: do not create extra shots outside the assigned range
1067
1067
 
1068
1068
  Generate only assigned SHOT files.
@@ -13,7 +13,7 @@ Use this skill when the user provides:
13
13
  - a video brief or scenario text
14
14
  - optional external storyboard guide images
15
15
 
16
- The output is a production workflow, not only a video prompt. First create one reusable GPT Image 2 character sheet prompt per reference character. Then create one GPT Image 2 storyboard prompt per `SHOTNN.md`. The generated shot storyboard is the staging reference for the final video model prompt.
16
+ The output is a production workflow, not only a video prompt. First create one reusable GPT Image 2 character sheet prompt per reference character. Then create one GPT Image 2 storyboard prompt per `SHOTNN.md`. If no external storyboard image is supplied, this generated prompt is the mandatory storyboard bootstrap step. The generated shot storyboard is the staging reference for the final video model prompt.
17
17
 
18
18
  ## Reference Prep
19
19
 
@@ -36,11 +36,13 @@ For each shot, generate a professional GPT Image 2 storyboard prompt:
36
36
 
37
37
  - provider: `gpt-image-2`
38
38
  - aspect ratio: `16:9`
39
- - panel budget: 4-6s = 1-2 panels, 7-10s = 2-3 panels, 11-15s = 3-4 panels
40
- - hard cap: max 4 panels/phases per shot unless the configured project cap is lower
41
- - split policy: 5+ distinct phases must become separate chained `SHOTNN.md` files
39
+ - storyboard sheet panel budget: default is 12 cinematic panels in one GPT Image 2 storyboard sheet; an explicit storyboard panel hint may request 1-12 panels
40
+ - video phase budget: 4-6s = 1-2 phases, 7-10s = 2-3 phases, 11-15s = 3-4 phases
41
+ - hard cap: max 4 video phases per shot unless the configured project cap is lower
42
+ - split policy: 5+ distinct real video phases, scene changes, or location/action blocks must become separate chained `SHOTNN.md` files; 5-12 storyboard sheet panels alone do not force a split
42
43
  - target detail: dense professional storyboard direction, concrete blocking and camera language, no decorative prose
43
- - storyboard art grammar: black-and-white rough pencil drawings, minimal detail, rapid gesture energy, simple anatomy construction, strong silhouette readability, unfinished previsualization feel
44
+ - storyboard art grammar: white paper 16:9 production storyboard sheet, actual drawings black and white only, rough pencil lines, minimal detail, fast gesture drawing energy, simple anatomy construction, strong silhouette readability, unfinished previsualization feel
45
+ - hard negative style lock: do not create photorealistic cinematic stills, full-color rendered panels, concept art, movie frames, underwater/color-grade panels, 3D render, anime, CGI, or polished illustration
44
46
  - annotation grammar: red arrows = body movement, blue arrows = camera movement, green marks = framing/composition, orange marks = lighting direction, purple marks = vocal/emotional emphasis, black text = very short lens notes and panel labels
45
47
  - continuity: include previous shot handoff, next shot handoff, shared `visual_world`, screen direction, lighting, and action rhythm
46
48
 
@@ -75,9 +77,10 @@ Seedance 2.0:
75
77
  - Map character sheet images to `@Image1`, `@Image2`, ... with legacy aliases `@image1`, `@image2`, ...
76
78
  - Map the generated shot storyboard to the next image token, for example one character means `@Image2`, two characters means `@Image3`.
77
79
  - Character image tokens control identity, face, body proportions, wardrobe, accessories, and visible props.
78
- - The storyboard token controls composition, blocking, camera direction, timing, action rhythm, and phase order only.
79
- - Follow generated storyboard panels left-to-right, top-to-bottom. Do not reinterpret the action, pose logic, camera angle, emotional progression, frame variety, or final pose.
80
- - Treat storyboard arrows, labels, lens notes, and colored marks as planning annotations only; never render them into the video.
80
+ - The storyboard token is the complete visual/action/camera/choreography source and controls composition, blocking, camera direction, timing, action rhythm, framing variety, final pose, and phase order only.
81
+ - Follow all storyboard beats left-to-right, top-to-bottom. Do not reinterpret pose, action, camera angle, emotional progression, framing variety, movement logic, shot order, or final pose.
82
+ - Compress the full 12-beat default storyboard sheet into the requested duration as readable motion snapshots while preserving the duration-aware video phase budget.
83
+ - Treat storyboard arrows, labels, notes, lens notes, page headers, panel borders, and colored marks as planning annotations only; never render them into the video.
81
84
  - Use explicit timeline phases when the storyboard has multiple beats.
82
85
  - Use `No scene cuts throughout, one continuous shot` only for a true single uninterrupted camera move.
83
86
  - For multi-phase storyboard prompts, use only the planned phase transitions and do not add unplanned cuts.
@@ -108,6 +111,7 @@ Each shot file contains:
108
111
  - provider reference tokens
109
112
  - GPT Image 2 storyboard prompt
110
113
  - storyboard interpretation
114
+ - storyboard_creation metadata in `SHOTNN.bundle.json`
111
115
  - audio plan
112
116
  - prompt bundle for requested models
113
117
  - QA verdict
@@ -116,6 +120,7 @@ Generated files:
116
120
 
117
121
  ```text
118
122
  $OUTPUT_DIR/storyboard-reference-plan.json
123
+ $OUTPUT_DIR/storyboard-prompt.md
119
124
  $OUTPUT_DIR/reference-prep/CHARACTER-SHEET-*.md
120
125
  $OUTPUT_DIR/storyboard-prompts/SHOTNN-GPT-IMAGE-2-STORYBOARD.md
121
126
  $OUTPUT_DIR/prompt-bundles/SHOTNN.bundle.json
@@ -33,11 +33,12 @@ description: Generate character sheet prompts, per-shot GPT Image 2 storyboard p
33
33
  - exact identity, wardrobe, accessories, and visible props
34
34
  - no labels, text, logos, watermarks, alternate designs, or extra characters
35
35
  3. Confirm target models: `veo31`, `seedance-2.0`, `kling-3.0`, or a user-provided subset.
36
- 4. Select shot storyboard panel budget:
37
- - 4-6 seconds: 1-2 panels/phases
38
- - 7-10 seconds: 2-3 panels/phases
39
- - 11-15 seconds: 3-4 panels/phases
40
- - 5+ distinct phases: split into multiple `SHOTNN.md` files
36
+ 4. Select video phase budget and storyboard sheet panel count:
37
+ - 4-6 seconds: 1-2 video phases
38
+ - 7-10 seconds: 2-3 video phases
39
+ - 11-15 seconds: 3-4 video phases
40
+ - GPT Image 2 storyboard sheet defaults to 12 panels; explicit panel hints may request 1-12 panels
41
+ - 5+ distinct real video phases, scene changes, or location/action blocks: split into multiple `SHOTNN.md` files
41
42
  5. Build `visual_world`:
42
43
  - environment
43
44
  - lighting
@@ -47,6 +48,7 @@ description: Generate character sheet prompts, per-shot GPT Image 2 storyboard p
47
48
  6. Generate one GPT Image 2 storyboard prompt per shot:
48
49
  - use character sheets as the only identity source
49
50
  - use optional storyboard guide only for composition, blocking, camera, timing, and rhythm
51
+ - enforce white-paper, black-and-white rough pencil production storyboard artwork; only annotation arrows/marks may use color
50
52
  - include previous shot handoff and next shot handoff
51
53
  - preserve shared location, lighting, screen direction, action rhythm, and scene continuity
52
54
  7. Build model prompt bundle:
@@ -89,8 +91,24 @@ npx @milenyumai/film-kit generate-storyboard \
89
91
  - Missing character reference: stop and request a valid reference.
90
92
  - Empty brief: stop and request a brief.
91
93
  - Public figure / real-person likeness / trademark risk: stop or safely anonymize before prompt generation.
92
- - 5+ storyboard phases: do not compress into one prompt; split shots.
94
+ - 5+ real video phases: do not compress into one prompt; split shots. 5-12 storyboard sheet panels alone do not force a split.
93
95
  - Missing GPT Image 2 character sheet prompt: output is invalid.
94
96
  - Missing GPT Image 2 per-shot storyboard prompt: output is invalid.
95
97
  - Missing `Avoid` / negative prompt: output is invalid.
96
98
  - Kling prompt missing required block structure: output is invalid.
99
+ - Main-shot `ILK FRAME`, `İLK FRAME`, `SON FRAME`, `SHOTNN_START`, `SHOTNN_END`, exact first-frame reuse instructions, or mandatory Start+End transition fields: output is invalid in storyboard-reference mode.
100
+
101
+ ## Required SHOTNN.md Sections
102
+
103
+ Every storyboard-reference shot file must include:
104
+
105
+ - `Model Control`
106
+ - `Input Asset Roles`
107
+ - `Reference Asset Requirements`
108
+ - `GPT Image 2 Character Sheet Prompt` or a link to the generated character sheet prompt
109
+ - `GPT Image 2 SHOTNN Storyboard Prompt`
110
+ - `Storyboard Plan`
111
+ - `Audio Plan`
112
+ - `Seedance 2.0 Ready Video Prompt` or model-ready equivalent
113
+ - `Coverage Shots`
114
+ - `QA Verdict`