Bool (Improved)
Bool (Improved) — the little on/off that sequences your branches
- trigger
- value
- json
- trigger
AugmentWaitBool - "Bool (Improved)" in the menu - is the trigger-aware version of a true/false value in Augment's Flow Control family. It's the decision-maker's node: a boolean that can be flipped by hand, overridden by an upstream value, and threaded through your graph with a trigger so the branch it feeds actually fires in order.
The stock boolean primitive in ComfyUI is static and compile-time. Change it and half the time the downstream nodes shrug because their cache says nothing meaningful changed. This node exists so that "did the user toggle this" actually propagates - and it's the natural partner for Augment's Switch (Improved) node, which takes a boolean and fires down the true or false path. You flip the Bool, it sequences, the switch decides. That's the whole conditional-branching story this pack sells.
How it works
Honest mechanic first: it doesn't wait. Read the source and execute passes the value straight through and emits a trigger token - the "Wait" branding is about execution order, not literal gating. What makes it behave differently from a stock primitive is the pack's executor patch: on import, Augment rewrites ComfyUI's execution internals so any node with a TRIGGER input or output always re-runs and is never skipped by the output cache. So toggling this bool re-executes everything you've chained after it, in the order you wired it. That's the actual superpower, and it's why it's "Improved" rather than a clone.
The inputs and outputs
One nice thing about the Bool flavor: it's one of only four Wait nodes (with Int, Float, String) that has a widget and an override input.
value(BOOLEAN, required, default false) - the toggle on the node itself. Just flip it.input(BOOLEAN, optional) - connect this and it overrides the widget. This is how another node's result (a comparison, a JSON-extracted flag, an image-analysis outcome) decides the branch for you instead of a human hand.trigger(optional) - the sequencing input, wired from an earlier stage's trigger output.- Outputs
value(BOOLEAN),json(AUGMENT_JSON),trigger(TRIGGER) - the bool passes through, the trigger passes on, andjsondumps the node type and value as a string for Augment's JSON Extract / JSON Viewer.
So the common pattern: something upstream computes a condition, feeds it into input, and the trigger output keeps the whole conditional section of your graph honest about running.
How to install
Augment isn't on the ComfyUI registry yet, so it's a manual clone. The folder name matters - this is the trap:
cd ComfyUI/custom_nodes
git clone https://github.com/augment-lib/augment-ComfyUI augment
cd augment
pip install -r requirements.txt
The clone target must be augment, because every internal import is custom_nodes.augment.py.*. Clone it as augment-ComfyUI and none of the nodes load. Then restart ComfyUI and find it under Augment.
Dependencies are just opencv-python, numpy, torch, Pillow and requests - you already have all of them from ComfyUI itself. No model files, no API key. The paid API only applies to the pack's vector nodes.
Common issues
- Toggle does nothing, branches don't change - if you haven't wired this into a Switch and a trigger chain, you're just using a stock bool with extra steps. The ordering benefit only shows up when the trigger output feeds the next stage.
- Node missing after install - folder name. Rename to
augment, restart. - "Everything downstream re-runs now" - that's the point, not a bug. Trigger nodes always re-execute, so keep Wait nodes on the paths where you actually want deterministic re-runs.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| value | BOOLEAN | false | — |
| triggeropt | TRIGGER | — | |
| inputopt | BOOLEAN | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| value | BOOLEAN | — |
| json | AUGMENT_JSON | — |
| trigger | TRIGGER | — |