Nodes/WanVideo Wakawave - Advanced LoRA & Prompt Tools/🌊 WanVideo Wakawave Prompt Builder
ComfyUI Node

🌊 WanVideo Wakawave Prompt Builder

Your Wan prompts, editable like an actual script

By WakapediaΒ·Created 9 months agoΒ·Updated 9 months agoΒ· 1
🌊 WanVideo Wakawave Prompt Builder
    • positive
    • negative
    β—„prev_positiveβ€”β–Ί
    β—„prev_negativeβ€”β–Ί
    β—„separatornoneβ–Ί
    β—„use_weightstrueβ–Ί
    β—„segment_modefalseβ–Ί
    β—„segment_number0β–Ί

    Wan prompting is a pain in a specific way: the model wants natural-language motion narration, and the moment you're working on anything longer than a single clip you're juggling which prompt belongs to which chunk. The Wakawave Prompt Builder attacks that by treating your prompt as editable lines instead of one big text box. One prompt per line, a per-line weight if you want it, save/load presets, and a segment mode that swaps prompts automatically as a long video progresses. It's the second node in the Wakawave pack, complementing the LoRA Loader with the same preset philosophy.

    How it works

    You type positive prompts in the top box, negative prompts in the bottom one, one per line. The πŸ“‚ preset browser handles search, live-preview, import/export as JSON, and usage stats on your saved sets. When you queue, the node joins the lines using your chosen separator - the enum gives you comma, newline, space, pipe, double_slash, or none. Here's the gotcha baked into the default: it ships with separator set to none, which pastes lines together with nothing between them. Set it to comma (or newline) before you wonder why your "nebula in deep space" and "stars twinkling" got mashed into one word.

    With use_weights on (the default), each line gets wrapped in attention syntax - nebula in deep space becomes (nebula in deep space:1.2) using the weight you give the line. The node then emits two outputs: positive and negative, both plain STRING.

    The input/outputs that matter

    • positive / negative (STRING outputs) - wire these into a WanVideo TextEncode Cached node (from Kijai's WanVideoWrapper) before the sampler. This is the classic footgun: the builder outputs text, not embeddings. If you feed a STRING straight into the sampler, you'll get a type error at best and confusion at worst. TextEncode Cached exists exactly so you can re-encode per segment without recomputing.
    • separator - how lines join (see above).
    • use_weights - enables the (prompt:1.2) wrapper.
    • segment_mode + segment_number (0–100) - the headline feature. Flip segment_mode on, prefix lines with segment numbers (0: forest at dawn, 1: sunlight breaking through), and feed segment_number from a counter node so each chunk gets its own prompt. Useful for 500+ frame renders, where a single prompt drifts badly. Match each segment to Wan's ~81-frame context window.
    • prev_positive / prev_negative - chain a second builder to prepend its output.

    A dose of honesty about the weights

    The (prompt:1.2) syntax is SDXL-era attention weighting, and Wan's encoder is a T5-style language model, not CLIP. The community consensus - and our knowledge base is explicit about it - is that paren/colon weighting is at best weakly honored on that kind of encoder; word order and sentence structure do the real work. Treat use_weights as a formatting convenience, not a magic emphasis knob, and don't spend a Saturday dialing in 1.7 vs 1.8.

    Same story for the negative box, but sharper: at CFG 1, a negative prompt does literally nothing - the unconditional pass is skipped entirely. And CFG 1 is exactly where speed-LoRA Wan pipelines (lightx2v/CausVid) live. If you're on a distilled setup, keep the negative field light and restate constraints positively in the positive box instead. At CFG 3.5+, the negative output earns its keep.

    The actual Wan prompting skill is separate from this node: for image-to-video, describe the motion, not the pixels already sitting in your reference frame. Think "an athletic man in a white t-shirt enters the frame from the left" - the community's phrase: "for the image you are a robot, for I2V you are George R. R. Martin."

    Installing it

    Same pack, same install. ComfyUI Manager (search "WanVideo Wakawave") or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/Wakapedia/ComfyUI-WanVideoWakawave.git
    # restart ComfyUI
    

    No model files, no API keys - it's a text-management utility. Find it under Right-click β†’ WanVideo β†’ Prompts.

    Where people get burned

    • STRING vs embeddings. Always route both outputs through WanVideo TextEncode Cached.
    • Separator default is none - set it to comma or newline first thing.
    • Weights won't do what you expect on Wan's T5-style encoder.
    • Negative box is dead at CFG 1 - true for any distilled Wan pipeline.
    • segment_number has to actually change. If nothing feeds it, every chunk gets segment 0's prompt. Drive it from a frame counter and you get the story you scripted.

    It's a genuinely nice quality-of-life tool once you know its two quirks - both sit in the defaults, not hidden in the docs.

    CategoryWanVideo/Prompts

    Inputs (6)

    NameTypeDefaultDescription
    prev_positiveoptSTRINGβ€”
    prev_negativeoptSTRINGβ€”
    separatoroptCOMBOnone6 options: none, comma, newline, space, pipe, double_slash
    use_weightsoptBOOLEANtrueβ€”
    segment_modeoptBOOLEANfalseEnable segment-based prompting for different video segments
    segment_numberoptINT00–100Current segment number (0-based)

    Outputs (2)

    NameTypeDescription
    positiveSTRINGβ€”
    negativeSTRINGβ€”