Mpi Conditioning Reroute
Keep positive and negative wires from becoming spaghetti
- positive
- negative
- positive
- negative
Reroute nodes are the duct tape of ComfyUI - they pass a value through unchanged so you can bend a wire, shorten a connection, or label a path. MpiConditioningReroute is that same idea, but purpose-built for the one connection every workflow has: the positive/negative conditioning pair. Instead of two loose reroutes per conditioning, you get one node with both, side by side, labelled.
How it works
The mechanism is genuinely nothing: positive conditioning goes in, comes out; negative goes in, comes out. That's the entire function, and it's the point. A plain reroute has no type, so ComfyUI sometimes treats it as a generic socket and you fight the dropdown. A typed conditioning reroute always matches a CONDITIONING socket, so the wires snap where you expect them.
What you actually get out of it:
positiveandnegativeCONDITIONING inputs, both required.positiveandnegativeCONDITIONING outputs, passed through byte-for-byte.
Rename the node (right-click → Title) to something like "character cond" and you've turned an unreadable tangle of conditioning wires into a labelled junction you can follow at a glance.
Why you'd bother
Two classic situations. First, a conditioning that feeds two different samplers - a pass/fail workflow where the same positive and negative both go to a main sampler and a face-detail sampler. One MpiConditioningReroute fanners out both wires without two untyped reroutes floating around. Second, and more commonly: tidiness. When your graph gets big enough that the conditioning line from the CLIP encoder has to snake across half the canvas, a labelled reroute at the source and a second at the destination keeps it readable. This is the same role the pack's plain MpiReroute plays for arbitrary values, just locked to conditioning.
Where people get burned
The only real gotcha is a logic trap, not a bug: a reroute never changes the conditioning. If you wire it in and expect the prompt to come out differently, you're looking at the wrong node - you want a text encode or a conditioning combine/offset upstream. Also worth knowing: because it passes the exact same object through, there's zero performance cost. Wire it freely.
Install
From the MadPonyInteractive/ComfyUi-MpiNodes pack. ComfyUI Manager → search ComfyUi-MpiNodes (publisher mad-pony-interactive), install, restart. Or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/MadPonyInteractive/ComfyUi-MpiNodes
then restart. Pure Python, no dependencies, no model files. The pack is AGPL-3.0 (≤ 1.2.6 MIT) and is the node library that powers the author's Cubric Vision desktop app.
The verdict
You don't need it for a toy graph with three nodes. The moment you're maintaining a workflow with a real CLIP encoding chain, a face-detail branch, or any second sampler, this pays for itself in not-having-to-trace-wires. It's the most forgettable node you'll install, and that's the compliment.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| positive | CONDITIONING | — | |
| negative | CONDITIONING | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| positive | CONDITIONING | — |
| negative | CONDITIONING | — |