Nodes/ComfyUI-TJ_NODE/Multi Router(TJ)
ComfyUI Node

Multi Router(TJ)

Multi Router (TJ)

By designloves2·Created 4 months ago·Updated 3 days ago· 13
Multi Router(TJ)
    • output_1
    • output_2
    • output_3
    • output_4
    • output_5
    • output_6
    • output_7
    • output_8
    • output_9
    • output_10
    • output_11
    • output_12
    • output_13
    • output_14
    • output_15
    • output_16
    • output_17
    • output_18
    • output_19
    • output_20
    mode
    auto_settrue
    num_ports1

    Every serious ComfyUI user eventually hits the wall where a generation feeds a preview, an upscale, a compare sheet, and a save - and the canvas looks like someone dropped a plate of wires. Multi Router (TJ) is the TJ_NODE answer: a single node that takes one input and fans it out to up to 20 outputs, each of which can quietly become a wireless provider. It's less a data transformation than a sectioning tool - the node the pack's whole "section architecture" philosophy revolves around.

    What it actually does

    Under the hood it's almost embarrassingly simple: it receives whatever comes into input_1, and its execute function just forwards it to each of the 20 output slots (output_1 through output_20) it finds a value for. The magic isn't in the code, it's in how the node is wired into the pack's wireless system:

    • Dynamic (Auto) mode is the default. Combined with auto_set (also on by default), each output becomes a named wireless provider automatically. A downstream TJ node can then "receive" that output by name, no visible wire needed.
    • num_ports lets you trim how many outputs are actually active - no need to stare at 19 unused sockets.

    In the recommended TJ layout, you put it right after generation:

    Generation
       ↓
    Multi Router
     ├─ Preview
     ├─ Upscale
     ├─ Compare
     └─ Save
    

    Each branch then pulls its value from the router by name. Re-run the generator, and every section downstream re-receives without you redrawing a single line.

    The inputs and outputs that matter

    The schema is minimal on purpose:

    • mode - Dynamic (Auto) or Manual. Auto is the wireless-on-every-output mode; Manual gives you more deliberate control over what gets published.
    • auto_set - master switch for wireless provider registration.
    • num_ports - 1 to 20, how many outputs you want active.
    • Inputs are the optional input_1input_20 any-type sockets (the * type means it routes images, latents, strings, whatever without complaining).
    • Outputs: output_1output_20, all *.

    It's marked is_output_node, so the router itself is treated as an end point - pair it with the pack's wireless Get / Multi Get nodes to actually pull those values elsewhere.

    Installing it

    Nothing special here, it's core to the pack:

    cd ComfyUI/custom_nodes
    git clone https://github.com/designloves2/ComfyUI-TJ_NODE
    

    or ComfyUI Manager → ComfyUI-TJ_NODE → Install → restart. No dependencies beyond the pack.

    The honest take

    Multi Router is a workflow organization tool, not a compute tool - it doesn't resize or transform anything. If you build small one-off graphs, it's a solution in search of a problem. The moment your workflow has a generation feeding four destinations and you're tired of untangling wires, it earns its place. Two tips from the README's own anti-pattern list: give your wireless providers stable, unique names (duplicate provider names cause reconnect headaches), and keep the router's naming consistent so your routing map stays readable after a reload.

    Category ✨ TJ_Node/Wireless

    Inputs (3)

    NameTypeDefaultDescription
    modeCOMBO2 options: Dynamic (Auto), Manual
    auto_setBOOLEANtrue
    num_portsINT11–20

    Outputs (20)

    NameTypeDescription
    output_1*
    output_2*
    output_3*
    output_4*
    output_5*
    output_6*
    output_7*
    output_8*
    output_9*
    output_10*
    output_11*
    output_12*
    output_13*
    output_14*
    output_15*
    output_16*
    output_17*
    output_18*
    output_19*
    output_20*