CivArchive
    Hand Tie Clips — multi-hop MiniMax H3 video + audio, one queue - V2.0
    NSFW

    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)

    🎬 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 with hop_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) and overlap 0.9 s.

    • hand_tie (Experimental): Renders a low-res preview of the take first and ties every hop to it. Pair with qwen3vl_4b_fp8_scaled.safetensors in models/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

    1. Restart ComfyUI and hard-refresh your browser (Ctrl+Shift+R).

    2. Drag workflows/HandTieClips_Starter.json onto ComfyUI.

    3. Drop your character photo onto Row 1 in REFS (e.g. @maya), write your beats in SCRIPT, and press Queue.

    • Turbo DiT: Wuli MiniMax H3 8-Step Turbo + plain minimax_h3_ref2va on refine_model / upsample_dit

    • Upsampler: 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)

    1. Never name what you want to stop: Don't write "She stops talking" — write "She smiles with her lips closed. Gentle pool water lapping."

    2. 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").

    3. Don't re-describe the face on Shots 2+: Describe only the new action; the reference rail and join carry her look.

    4. 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, '…'

    5. Set the final shot's tail to settle or hold: 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

    v2.0.0 Update — Continuous Lip-Sync, SWAP & Drift Control

    Continuous Audio Slicing & Lip-Sync

    • Fixed the 6-second audio reset on chained MiniMax H3 clips.

    • 2.0 takes a single continuous audio track and automatically slices it across hops, keeping lip-sync locked throughout the entire sequence.

    • Demo: 27-second continuous voiceover across 3 hops with zero audio-visual drift.

    SWAP (Identity Transfer)

    • Map character identities from a still reference image onto source motion footage in a single hop.

    • Includes 4 modes, scaling from full character replace down to face-only.

    Drift Mitigation & Granular Control

    • Restart Anchors: Re-enter from reference stills using guided match cuts when drift accumulates.

    • Lab-Space Tone Anchors: Prevents color degradation and shifting across long chains.

    • Per-Shot Reference Routing: Direct control over which stills ride which specific hops.

    Honest Limitations & Degradation Study

    • Real-world working limit remains 3 to 5 hops before texture ratcheting sets in.

    • Includes a 10-run, 9-hop degradation study in the README detailing exact failure modes and settings that didn't move the needle.

    ⚠️ Installation Note: Install directly from the GitHub repository. The registry listing is currently serving v0.4.5 while v2.0.0 clears the review queue.

    FAQ

    Comments (4)

    sdktertiaire2Sep 8, 2026
    CivitAI

    incredible nodes and workflow. Great works. works perfectly with comfyui kitchen 0.34. thanks

    sdktertiaire2Sep 8, 2026

    Very fast and really good quality. I add rtx upscaler and frame interpolation. That is great.

    But ... I only can have the voice consistancy for the first shot. Even if i write in the prompt or in the global contex for the second shot " subject 1 has the same voice as voice 1 ", it failed and the subject speaks with another voice. Would you have an idea please to make lip2sync with voice 1 in all the shots ? Thanks

    sandpies
    Author
    Sep 9, 2026· 1 reaction

    @sdktertiaire2 thanks for that catch, i must have missed it during the update - new zip is on civit, or can update from github as well : set voice_every_hop to speaking, keep their voice clip in MEDIA slot 1.

    sdktertiaire2Sep 9, 2026

    @sandpies thanks.

    Workflows
    MiniMax H3

    Details

    Downloads
    263
    Platform
    CivitAI
    Platform Status
    Available
    Created
    9/6/2026
    Updated
    11/5/2026
    Deleted
    -

    Files

    handTieClipsMultiHopMinimax_v20.zip

    Mirrors

    handTieClipsMultiHopMinimax_v20.zip

    Mirrors

    handTieClipsMultiHopMinimax_v20.json

    Mirrors