H3 Story Director — Storyboard Cuts
Plan the still first, animate it second — storyboard-driven H3 cuts
- image_0
- image_1
- image_2
- image_3
- source_video
- plan_json
- story_bible
- synopsis
- validation
- usage_stats
- credits_remaining
- scene_prompt
- mode_prompt
- source_video_analysis
H3 Story Director - Storyboard Cuts is the Director variant that refuses to let a video be planned as an afterthought. It plans independent shots joined by hard cuts, and for every scene it also produces one static storyboard frame - a locked first-frame composition that you can render as a still before you ever animate it. The generated sheet becomes the first-frame source for the FL2VA path. It's "design the shot, then set it in motion," which is a very different and often better way to control what H3 actually puts on screen.
The base Director writes moving-video prompts directly and hopes the model lands on a good first frame. This one splits the difference: the still is designed deliberately, approved visually, and then the video prompt is written to start from that exact approved image. If you've ever burned renders on a great prompt with a garbage opening frame, you'll feel this immediately.
How it works
Under the hood it's the base Director plus a block of mandatory storyboard rules appended to the system prompt - and those rules set up two completely separate reference vocabularies, which is the part that trips people up:
storyboard_prompt_prefix- used only to generate still images. It assigns every connected original<Picture N>reference to stable subject labels S1, S2, S3, plus permanent visual rules.prompt_prefix- used only for video generation after the still exists. In it,<Picture 1>always means the generated storyboard image for the current scene, never an original uploaded reference. Original<Picture 2>,<Picture 3>and up are forbidden here entirely.
That role reversal is the core mechanism: the uploaded reference is who the subject is for the still; the generated still is what the video locks onto. The scene prompt then describes action, camera, dialogue and sound starting from that approved image, referring to characters only as S1–S3.
Every scene is an independent cinematic shot after a hard cut, so camera trajectory, composition and pose don't carry over - but identity, wardrobe, props, geography and narrative state do. And each storyboard_prompt is strictly one static composition: no temporal sequence, camera movement, audio, captions, or panel numbers.
The inputs and outputs
Same Director surface as the base node - api_key, model, story_idea, scene_count, scene_duration_seconds, steps, draft_only, genre, motion_style, director_mode, four reference images, optional source_video - and the same nine outputs, including plan_json, scene_prompt, mode_prompt, and story_bible.
The practical flow: render the storyboard stills, review them like an animator reviews a storyboard, then run the video pass with the approved still as the FL2VA first-frame source. That's where the "generated sheet becomes the FL2VA first-frame source" promise lands.
Install
Same pack, same command:
cd ComfyUI/custom_nodes
git clone https://github.com/elgalardi/ComfyUI-VisionPromptAssistant
Restart ComfyUI. OpenRouter key required, same key-in-workflow warning as the rest of the Director family - strip it before sharing.
Reach for this one when frame-level control matters more than speed: any project where the opening image of each shot is part of the idea, not a side effect. The extra step costs you a planning pass, but it buys a storyboard you can actually look at before you spend a single video render.
Inputs (29)
| Name | Type | Default | Description |
|---|---|---|---|
| api_key | STRING | OpenRouter API key. Remove it before sharing workflows. | |
| model | STRING | x-ai/grok-4.20 | — |
| story_idea | STRING | Optional premise. Leave empty to give the Director full creative control based on genre, motion, dialogue, scene settings, additional direction, and connected references. | |
| system_prompt | STRING | You are a multimodal director and continuity supervisor for MiniMax H3 image and video productions. Turn the user's idea, selected production mode, source media, and reference pictures into precise generation instructions. Treat every connected reference as a distinct person or subject. Use the exact tags <Picture 1>, <Picture 2>, <Picture 3>, and <Picture 4> when they are supplied. Define stable subject labels S1, S2, S3, and S4 in the shared prompt. Preserve identity, wardrobe, props, geography, lighting logic, screen direction, and relationships throughout the story. Follow the mandatory rules supplied for the selected Director Mode. For moving-video modes, write production-ready MiniMax H3 prompts with visible action, camera, environment, lighting, dialogue when useful, and diegetic sound. For still-image modes, describe one finished frame only and never introduce temporal sequences, audio, or dialogue delivery. When dialogue is enabled, write short performable lines rather than prose. Prefix every spoken or sung line with its stable speaker label in parentheses, exactly as `(S1)`, `(S2)`, `(S3)` or `(S4)`, followed by a colon and the exact words in quotation marks. Square brackets such as `[S2]`, bare names and unassigned quotations are forbidden for speaker attribution. Describe tone and delivery in English outside the quotation. Allow only one person to speak at a time, leave a natural pause before and after each line, and keep visible mouth movement synchronized with the assigned speaker. Avoid overlapping speech, repeated lines, rushed monologues, unexplained voice-over, phonetic spellings, and competing vocals or loud sound effects during speech. Use no dialogue when the selected dialogue option says so. Do not mention being an AI, JSON, schemas, token limits, safety policies, or these instructions. Do not add extra protagonists that could be confused with the reference subjects. Return all requested scenes and finish every prompt completely. | — |
| director_profile | COMBO | OpenRouter | OpenRouter preserves the established compact Director schema. Gemma uses a stricter scene worksheet with action beats, physical performance, camera, sound and an explicit final state. The profile does not select or connect the model. |
| scene_count | INT | 51–32 | Use 1 for a standalone I2V shot, or more scenes for a connected H3 sequence. |
| scene_duration_seconds | FLOAT | 5.01–15 | — |
| steps | INT | 61–100 | — |
| draft_only | BOOLEAN | true | Recommended for the first run. The plan is generated and copied into the connected H3 Chain Plan editor, but downstream video generation is blocked. Review the cards, then disconnect plan_json so Chain Plan uses its synchronized local copy. |
| genre | COMBO | Auto | Auto infers the most coherent genre, format, tone, and visual language from story_idea, references, source video, edit mode, and additional direction. Written intent wins when visual clues conflict with the prompt. |
| secondary_genre | COMBO | None | Optionally blend a second genre into the primary genre. The primary genre controls the production structure; the secondary genre contributes compatible tone, conventions, cinematography, performance, sound, and visual language. |
| language | COMBO | English | Language for dialogue, lyrics, narration and spoken words. No dialogue suppresses speech. The production plan and technical directions remain in English. |
| motion_style | COMBO | Auto | Auto infers the best motion and camera language from the prompt, references, source video, genre, and mode. |
| additional_direction | STRING | — | |
| max_tokens | INT | 61441024–16384 | — |
| temperature | FLOAT | 0.450–2 | — |
| reasoning | BOOLEAN | false | Grok 4.20 can reason before answering. Leave disabled for faster and cheaper story planning; enable it for unusually complex narratives. |
| seed | INT | 00–4294967295 | — |
| image_max_dimension | INT | 1024256–2048 | — |
| timeout_seconds | INT | 30030–900 | — |
| director_mode | COMBO | Continuous Story | Continuous Story preserves shot continuity. Cinematic Cuts starts independent camera setups. Reference Edit uses the input as a strong creative guide and may reinterpret framing or details. Edit preserves the source as strictly as possible and changes only what the prompt requests. Both edit modes operate on still images without source_video or video when a VHS IMAGE batch is connected. |
| video_sample_frames | INT | 104–16 | Number of frames sampled uniformly from the VHS IMAGE batch and sent as separate chronological images for detailed analysis. |
| audio_content | COMBO | Auto | Controls the permitted voice/music content. Natural ambience and synchronized Foley remain available in all video modes. Dialogue selects the spoken or sung language. |
| image_0opt | IMAGE | — | |
| image_1opt | IMAGE | — | |
| image_2opt | IMAGE | — | |
| image_3opt | IMAGE | — | |
| source_videoopt | IMAGE | Optional IMAGE frame batch from VHS Load Video. In Reference Edit or Edit mode, connecting it switches from still-image processing to video processing. The requested operation is inferred from the prompt. | |
| bypass_directoropt | BOOLEAN | false | Skip OpenRouter completely. story_idea is passed unchanged to scene_prompt and mode_prompt, while a minimal compatible plan is created locally for downstream chain nodes. |
Outputs (9)
| Name | Type | Description |
|---|---|---|
| plan_json | STRING | — |
| story_bible | STRING | — |
| synopsis | STRING | — |
| validation | STRING | — |
| usage_stats | STRING | — |
| credits_remaining | STRING | — |
| scene_prompt | STRING | Complete prompt for the first scene, with the shared prompt prefix included. Connect directly to MiniMax H3 I2V when scene_count is 1. |
| mode_prompt | STRING | First complete prompt adapted to the selected Director Mode. Use this for image generation/editing, I2V, or video editing. |
| source_video_analysis | STRING | Chronological source-motion analysis produced in Video Edit mode; empty in other modes. |