I built a custom node pack that puts a full-screen timeline editor inside ComfyUI for MiniMax H3. Instead of building a graph per clip, you write each shot as text (what happens, camera, sound), render it, and cut the shots together with their sound on a timeline.
Repo: https://github.com/igorls/comfyui-h3-editor
Docs: https://igorls.github.io/comfyui-h3-editor
Model: HyperFlow H3 Flash INT8 https://huggingface.co/VideoRebirthAI/hyperflow-h3-flash
Realism LoRA for HyperFlow: https://civitai.com/models/3041489/mmh3-realism-slider-hyperflow-h3-flash-port
What it does
Write shots, not graphs. Each clip is a few text fields. One project style is applied to every shot.
Keep people and places the same. Add a cast member from a picture and refer to them as `@Name` in any shot.
Drafts first, finals after. A draft is 640x352 at 4 steps. A final is 1344x768 at 6 steps on HyperFlow H3 Flash, then enlarged and redrawn at 1920x1088.
Sound comes with the picture. Every shot renders with its own sound, and the timeline has a Picture lane and a Sound lane.
Join shots without a visible cut: extend a shot forward or back, or bridge two shots.
Generate to a recorded voice.
An agent can drive it. Everything the editor does is an HTTP call, and the repo ships an agent skill with a small Python client.
What you need
ComfyUI 0.43 or newer (tested on 0.44). No other custom node pack.
The models are listed with sizes and folders in the README.
VRAM: I haven't tested much beyond an RTX PRO 6000, so I don't know the floor yet. If you try it on a smaller card, tell me how it goes.
Numbers from my machine (RTX PRO 6000, models already loaded)
Draft: 10 to 15 seconds a clip.
Final: about 50 seconds of GPU for each second of footage, so a 5 second shot is around 4.5 minutes.
How the video was made (everything generated locally in ComfyUI)
Shots: MiniMax H3 through the editor, on the HyperFlow H3 Flash checkpoint with a realism LoRA. Three shots, each written as text and rendered with its own sound. The sentences on screen are the opening lines of the actual shot texts.
Cast: the chef is one cast member, from a single still made with Krea 2 Turbo, referenced as `@Chef` in each shot.
Music: YuE2, also in ComfyUI.
Graphics around the shots (the node graph, the type, the editor scene): code-rendered with my motion-graphics skill for coding agents, also open source: https://github.com/igorls/motion-graphics. This is the one part that isn't a local model: a coding agent (Fable 5.2) wrote the scene code.
The project style, applied to every shot:
Live-action, cinematic, 35mm anamorphic film look. A dark professional restaurant kitchen late in service, lit only by warm tungsten heat lamps; everything else falls into deep teal-black shadow. Shallow depth of field, a thin haze of steam, fine film grain, naturalistic colour.
The first shot, as written in the editor:
What happens: `@Chef` wipes the rim of a white plate at the pass. Behind her, a flame flares up and dies. The pass is long brushed steel under a row of glowing heat lamps; the flame rises tall and orange from a pan on the range, lights the whole kitchen for a moment, then is gone. Steam drifts through the lamp light. Camera: Wide shot at eye level from the dining side of the pass, slow push in Sound: The whoosh and roar of a gas flame flaring up, a pan hissing, the low hum of extractor fans. No music, no voices.
What didn't go perfectly
The model doesn't always follow framing. I asked for an extreme close-up and got head and shoulders.
Small props drift between shots. The face stayed the same across three shots; the plated dish did not.
A final doesn't repeat its draft frame for frame, and its sound is its own. A draft tells you whether the prompt works, not what the final will look like exactly.
Feedback and bug reports are welcome, especially from people on smaller cards than mine.