Turn 8-second MiniMax H3 clips into 1-minute+ films — same face, same voice, synced dialogue, one-shot retakes, one continuous take with no joins, and 2 MP 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
🆕 New in 3.4.0: One Continuous Take (sand_tie)
A whole run of hops renders as ONE video. No joins to see; a take only cuts where you write
anchor: restart.🎬 2:03 one-take music video · 52 s two-person take, street → boardwalk → bench · 65 s walking selfie (upsampled)
Retake one hop and only that hop is redrawn; the rest of the take is kept.
tone_lockkeeps a long take from drifting brighter (0.5 / 0.75 / full).Song-locked takes (
master_audio_file) keep lip sync for the whole song.
🎬 What You Can Do
Simple Mode (Standard MMH3 ref2va / t2va + Realism Boost): Paste standard 6-field MiniMax H3 prompts (passed through verbatim!) or plain prose for single clips (
chains = 1) with the visual REFS rail,realism_boost: on(steps = 6→ 2 base + 10 realism LoRA steps) +audio_refine: on(5 steps), and 2 MP upsampling.Shots Mode (Multi-Hop Chains): One short beat per card (5 s – 15 s each) with camera, framing, pace and join controls.
Visual & Voice Reference Rail (REFS): Up to 9 character/location stills and voice clips right on the node, with @tags and per-hop schedules (no Load Image spaghetti).
Lossless Retake Board (TIMELINE): Every hop is cached. Lock the shots you like, or click ⏵ on Shot 4 to re-roll only Shot 4 while Shots 1–3 load in a second.
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 Upsampler: Enlarges the finished film with the H3 latent upscaler and a light 3-step Open-H3-Regenerate-2K redraw. Small, distant faces are redrawn as close-ups so they keep their person.
WRITE (Local AI Writer): Connect LM Studio / llama.cpp to draft shot cards, one-take timelines or music video layouts from a one-sentence brief. STANDARD writes a single checked H3 prompt.
🔗 Three Ways to Join Shots (pin_mech)
motion_context(Default — Built-In): Native latent-slice + audio relay (credit to NikoDemon80). Honest runway withhop_refine: full: ~5–6 clips on Turbo, ~7–8 on non-Turbo before texture changes show. Plan a cut (anchor: "restart") every 4–5 clips.sand_tie(New — One Continuous Take): Each take renders as one video, its hops overlapping windows. Best for long walks, songs and scenes that move through places. Needs a recent ComfyUI (MiniMax H3 context windows) andoverlap0.9 s.hand_tie(Experimental): Renders a low-res preview of the take first and ties every hop to it. Pair withqwen3vl_4b_fp8_scaled.safetensorsinmodels/text_encoders/.
⚡ 60-Second Install
Zero pip dependencies. Needs ComfyUI v0.38.0 or newer. In ComfyUI/custom_nodes/:
git clone https://github.com/sandpies/ComfyUI-Hand-Tie-Clips.git
Restart 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_ditUpsampler:
minimax_h3_latent_upscaler_3d_bf16.safetensors(models/latent_upscale_models/) +open_h3_regenerate_2k_r256pp_bf16.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 carry her look.
Only words inside the quotes: A laugh or sigh written inside a line is said out loud as a word. Write it outside: she laughs, then says, '…'
Set the final shot's tail to
settleorhold: So the film lands cleanly instead of starting a new gesture on the last frame.
🎞️ One-take tip: in a sand_tie take, every hop opens with the same camera sentence and the action goes on an At mm:ss-mm:ss, timeline. PROMPTING.md has the full rules; WRITE does it for you.
Description
3.4.0: one continuous take
- New pin_mech: sand_tie: a whole run of hops renders as one video, so there are no joins to see; a take only cuts at anchor: restart. Tested on a 2-minute song-locked MV, a two-person scene that changes place, and walking selfies. It needs a recent ComfyUI.
- Retake one hop: only that hop is redrawn, and the rest of the take is kept.
- tone_lock: stops long takes drifting brighter (0.5 / 0.75 / full).
- Upsampler: small, distant faces are redrawn as close-ups so they keep their person, and long clips no longer run out of RAM.
- Writer: new rules and notes for lines said together, sounds written inside a line, talking while eating, and camera arcs.
- Tooltips: every input now has a short, plain one.
Saved graphs still load. The full list is in CHANGELOG.md.