Variables Logic
A labeled, color-coded boolean switch for workflows people actually read
- condition
Variables Logic is a boolean pass-through wearing a nicer face. It does nothing clever - the Python side is literally return (condition,). What it gives you is a toggle switch that changes color and displays your own text: purple with one label when off, green with another when on. The whole point is legibility. In a workflow full of tiny widgets, a labeled switch you can read from across the room beats a bare checkbox, and it makes a graph readable for anyone you share it with.
How it works
The labels input takes a string in off_label | on_label format. Connect a String node containing something like two-pass upscale | skip and the toggle's on/off labels update to match. A toggle widget named condition drives the optional condition BOOLEAN input (default false), and that value passes straight through to the condition output. The color shift - purple off, green on - is pure front-end cosmetics living in web/js/variables_logic.js. So the chain is: you flip the switch → the node emits a boolean → whatever is wired to the output reacts.
The inputs that matter
Only a couple of fields matter:
labels(STRING, required) - theoff | ontext for the toggle. It's a forced input, so you must connect a string source; you can't type into the node.condition(BOOLEAN, optional) - the pass-through value, driven by the toggle.- Output:
condition(BOOLEAN) - wire it anywhere a workflow takes a boolean: per-group toggle inputs on rgthree's group muter/bypasser, or a switch node that picks between two branches.
The gotchas
That last point is where people get disappointed. This node does not mute or bypass anything itself. It only emits a boolean; you still need a consumer downstream that acts on it. Think of it as an indicator with a real output, not a self-contained workflow switch.
The other gotchas:
labelsis read from the first widget of the connected string node, at connect time and when you toggle. Keep the source string simple - a node with several widgets may not update the labels.- All the color/label behavior lives in the JS extension. If the extension doesn't load, you get a plain pass-through node and no visual feedback.
- It starts OFF (purple,
false).
When to reach for it
If you just need a raw boolean, the stock Primitive node does that with less ceremony. Variables Logic earns its place when the toggle's label and color carry information - which branch is active, which mode you're in - in a graph you return to weeks later or hand to a non-technical user.
Install
One navigation quirk: the rest of the Finetuners suite lands under the "finetuners" category, but this node is categorized "variables/logic" - search both if you can't find it. Install is the same as the rest of the pack:
cd ComfyUI/custom_nodes
git clone https://github.com/FinetunersAI/ComfyUI_Finetuners_Suite
Restart ComfyUI. No pip dependencies, no models to download; it only needs what ComfyUI ships. And ignore the README's install URL - it references a stale finetunersTest repo. Clone the Suite repo above, which is what ComfyUI Manager installs when you search "ComfyUI_Finetuners_Suite".
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| labels | STRING | — | |
| conditionopt | BOOLEAN | false | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| condition | BOOLEAN | — |