BOOL Constant
One true/false switch to drive a whole workflow
- value
This is about as simple as a node gets, and that's exactly why it's useful. BOOLConstant emits a single true/false value. That's it. The reason you'd bother instead of just setting a checkbox on the node that needs it: one switch can feed many boolean inputs at once. Flip this one node and you toggle every branch wired to it - turn a whole upscale pass on or off, enable/disable a detailer, gate an optional step - from a single, obvious control instead of hunting through a giant graph for six checkboxes.
It's one of KJNodes' constants nodes, alongside INTConstant, FloatConstant and friends. The philosophy is the same as the rest of Kijai's quality-of-life stuff: make a workflow too big to read into one you can still drive. Pair it with the pack's Set/Get nodes and you've got a clean little control panel at the top of your graph.
How it works
There's no logic here - it's a source, not a gate. You set the value, it outputs the value, downstream nodes read it. It doesn't AND, OR, or compare anything; it just broadcasts one boolean to however many inputs you connect.
The inputs and outputs that matter
value(BOOLEAN, default true) - the toggle. Set it, and that's what comes out.
The single output is value (BOOLEAN). Wire it into any boolean input: a node's enable flag, a switch/router's selector, a pass-through gate. The one-to-many wiring is the whole trick - connect it to five different toggles and one flip moves all five.
How to install it
ComfyUI Manager: search KJNodes for ComfyUI, install, restart. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/kijai/ComfyUI-KJNodes
pip install -r ComfyUI-KJNodes/requirements.txt
then restart (portable: run pip through python_embeded\python.exe). Zero dependencies for this one - it's a single boolean.
Common issues & troubleshooting
It doesn't actually skip anything by itself. BOOLConstant is a value, not a control-flow node. To conditionally mute a branch you wire it into something that consumes a boolean - a switch node, a node with an enable input, a conditional router. If you expected connecting it alone to bypass part of your graph, that's not how it works; it needs a consumer that respects the flag.
Nothing changed when I flipped it. Check that the downstream node's behavior is genuinely gated on that boolean and not on some other setting. Plenty of nodes have a bool input that only matters in combination with other inputs. If the target ignores false, the problem's on that node, not here.
Why not just use the checkbox on the target node? No reason, if it's one target. This earns its keep when the same true/false needs to reach several places at once, or when you're exposing a workflow through the API and want a single named boolean to parameterize a run. For a one-off toggle, the built-in widget is fine.
Honestly there's not much that can go wrong with a node that outputs one boolean - which is sort of the appeal.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| value | BOOLEAN | true | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| value | BOOLEAN | — |