Turn 8-second MiniMax H3 clips into 1-minute+ multi-shot films — same face, same voice, synced dialogue, solo shot retakes, and 2 MP guided upscaling — all from one ComfyUI node.
🕹️ Try the Interactive Node UI in Your Browser (click through Script, Refs, Timeline, Swap & ⚙ RUN before installing)
📦 GitHub Repository · Hugging Face Mirror
🎬 What You Can Do
SimpleMode (Standard MMH3ref2va/t2va+ Realism Boost): Paste standard 6-field MiniMax H3ref2va/t2vaprompts (passed through verbatim!) or plain prose for single-clip generations (chains = 1) with the visualREFSrail,realism_boost: on(steps = 6→ 2 base + 10 realism LoRA steps) +audio_refine: on(5 steps), and 2 MP Guided Upsampling!ShotsMode (Multi-Hop Chains): Write one short beat per card (5 s – 15 s each) with camera, framing, pace, and join controls.Visual & Voice Reference Rail (
REFS): Drop up to 9 character/location stills and voice timbre clips straight onto the node with@tagsand per-hop schedules (noLoad Imagespaghetti).Lossless Retake Board (
TIMELINE): Every hop caches losslessly. Lock the shots you like, or click⏵on Shot 4 to re-roll only Shot 4 while Shots 1–3 load in 1 second.Standalone Guided
SWAP: One-hop character or head swap driven by a reference video's motion & audio (replace_person,head_swap,face_only,keep_person) with a wardrobe override box and auto-loaded Swap LoRAs.Built-In 2 MP Guided Upsampler: Enlarges the finished film in 3D latent chunks and runs a 2-step tiled redraw with the
h3upscale_v2_x2guide LoRA.Local AI Draft Assistant (
WRITE— WIP): Connect LM Studio / nInfer / llama.cpp to draft shot cards or bar-synced music video layouts from a 1-sentence brief.
🔗 Two Ways to Join Shots (pin_mech) & Honest Limits
motion_context(Default — Built-In): Native latent-slice + audio relay (no external custom node needed; credit to NikoDemon80).
Honest runway withhop_refine: full: Holds clean for ~5–6 continuous clips on Turbo and ~7–8 clips on non-Turbo before texture changes become visible. Plan a transition to a cut (anchor: "restart") every 4–5 clips to keep textures fresh across long multi-scene films.hand_tie(Single-Take Previs — Public Experimental): Renders one low-res single-take bridge previs first and ties each full-res hop's opening and closing 0.9 s to those clean windows so hops never copy texture from each other (10+ hops in one continuous take). Best for continuous walking/talking vlogs in one setting; pair withqwen3vl_4b_fp8_scaled.safetensorsinmodels/text_encoders/.
⚡ 60-Second Install
Zero Python/pip dependencies. In ComfyUI/custom_nodes/:
git clone https://github.com/dntpi/ComfyUI-Hand-Tie-Clips.gitRestart ComfyUI and hard-refresh your browser (
Ctrl+Shift+R).Drag
workflows/HandTieClips_Starter.jsononto ComfyUI.Drop your character photo onto Row 1 in REFS (e.g.
@maya), write your beats in SCRIPT, and press Queue.
Recommended Models & Companion Nodes:
Turbo DiT: Wuli MiniMax H3 8-Step Turbo + plain
minimax_h3_ref2vaonrefine_model/upsample_ditGuided Upscaler:
minimax_h3_latent_upscaler_3d_bf16.safetensors(models/latent_upscale_models/) +h3upscale_v2_x2.safetensors(models/loras/)Speed / Attention Nodes: ComfyUI-PlagueKind-Nodes & ComfyUI-KJNodes
💡 The 5 Golden Prompting Rules (H3 runs at CFG 1.0 — every word is additive)
Never name what you want to stop: Don't write "She stops talking" — write "She smiles with her lips closed. Gentle pool water lapping."
Silence must be written as a room tone: An empty soundtrack invents speech. Always name a narrowband sound ("low hum of the refrigerator", "soft breeze").
Don't re-describe the face on Shots 2+: Describe only the new action; the reference rail and join pin carry her look.
No ellipses (
...) inside dialogue: Connect clauses inside speech with a simple comma (,) so the audio branch never fills pause gaps with gibberish.Set the final shot's
tailtosettleorhold: So the film lands cleanly instead of starting a new gesture on the last frame.
Description
V1.1
Hand Tie Clips 1.1.0
The fix worth updating for: a reference pinned to a later hop tended to be rendered as the shot. The line that tells the encoder what a picture is for was only emitted on hop 1, so a still scheduled onto hop 3 arrived uncited — and a wardrobe plate could be announced as the character's face. Fixed.
- The panel is four tabs now — Script / Refs / Media / Write — with RUN pinned below, instead of one long scrolling column. The Write draft is readable; it used to clip every beat at 110 characters.
- lock and a render range on each shot card. Freeze a take you like and re-render only the hops around it.
- Correct resolutions. H3 is a 768-short-edge model, so the top rung at 16:9 is 1344×768 — the size MiniMax states as native. Eleven aspect ratios across five tiers.
- Reference clips take a description, plus a video input size so a 4K plate isn't decoded at full resolution just to be scaled down.
- Changing one reference re-renders only the hops it rides, not the chain.
V1.01
SMALL BUGFIXES, UPDATE TO 1.01 IF YOU HAVEN'T. (mostly to do with the LM integration and some reference file duplication in the input folder)
Hand Tie Clips v1.0 — talking video that keeps going past one clip.
MiniMax H3 gives you one short clip with sound. This node chains several into one continuous take — same face, same room, dialogue carrying across the joins — from a single queue.
▎ New in 1.0
LM Studio integration
You don't have to write the plan. Describe your scene in a sentence, press Write plan, and it fills in the script and your reference settings, reading the photos you've dropped in rather than guessing from filenames. Treat it as a good first draft — worth a read before you queue, and much faster than starting cold.
Soundtrack input
A music bed. Drop in a track and it sits under the whole chain, ducking automatically under the dialogue. Loop or play once, with fades.
Trim bars on every audio and video input. Drag to choose the section you want. This one matters: H3 encodes your whole voice file no matter how long it is, so a three-minute take is a tax on every second of every clip.
The writer model stays warm between plans and is evicted the moment you queue a render, so it doesn't compete with the sampler for VRAM.
Also fixed: no more invented dialogue over the opening seconds of a clip, non-English lines timed correctly, and reference images keeping the size you set.
Search Hand Tie Clips in ComfyUI Manager.