ComfyUI Node

Clip (Improved)

The 'Wait' node that doesn't wait — sequencing your CLIP

By augment-lib·Created 6 months ago·Updated 6 months ago· 2
Clip (Improved)
  • value
  • trigger
  • value
  • json
  • trigger

Augment's "Clip (Improved)" - real class name AugmentWaitClip - is the pack's trigger-aware passthrough for the CLIP type. If you've ever had a multi-stage workflow where the CLIP you want feeding a stage keeps getting evaluated out of order, or a branch of the graph that just won't re-run after you change a setting, this is the node that tries to fix it. It's one of the eleven "Improved Type Nodes" in Augment's Flow Control family, and Clip is the flavor you'll reach for when ordering matters around your conditioning and sampler steps.

Let's be honest about the name up front, because it saves you an hour of head-scratching: this node does not actually wait. It doesn't hold your CLIP hostage until a trigger pulse arrives. Looking at the source, execute just returns the value you fed it, immediately, and emits a trigger token out the other side. The "wait" is really about execution order - more on that below.

How it works

ComfyUI's normal behavior is to evaluate the whole graph and, crucially, cache node outputs. Change one widget and only the nodes downstream of it re-run; everything else gets skipped as "unchanged." That's great for speed and miserable when you're trying to build a pipeline where stages must fire in a specific order.

Augment's fix is a monkeypatch. On import, the pack overwrites parts of ComfyUI's execution module (execution.execute and the IsChangedCache) so that any node that takes or emits a TRIGGER type - that's every Wait node - always re-runs and is never cache-skipped. Wire a chain of Wait nodes together with their trigger outputs and inputs and you get a graph that actually sequences: each stage's trigger output forces the next stage to run after it, in the order you drew the wires, every single run.

So the honest mental model: the trigger is a sequencing token, not a gate. You're not blocking; you're pinning execution order and killing the cache short-circuit that silently prunes stages.

The inputs and outputs

Three things matter here:

  • value (CLIP, required) - the CLIP you want to carry through. Feed it from your checkpoint loader or whatever produced it.
  • trigger (optional) - connect the trigger output of an earlier stage here to make this one run after it.
  • Outputs value (CLIP), json (AUGMENT_JSON), trigger (TRIGGER) - the CLIP passes straight through unchanged, the trigger passes on to the next stage, and the json output holds a small dump of the node type and value as a string. That last one feeds Augment's JSON Extract / JSON Viewer if you ever want to inspect or pull values out mid-graph.

The json output is worth a sentence, because it's the genuinely novel bit for a node that does nothing else: every Augment node that does meaningful work reports structured JSON, and even a passthrough like this one participates. It's how the pack is heading toward letting an LLM make decisions mid-workflow.

How to install

Augment isn't on the ComfyUI registry yet, so Manager won't find it by search (as of writing). Install manually:

cd ComfyUI/custom_nodes
git clone https://github.com/augment-lib/augment-ComfyUI augment
cd augment
pip install -r requirements.txt

Then restart ComfyUI and the nodes show up under the Augment category.

The one gotcha to not skip: the folder must be named augment. The pack's internal imports are all custom_nodes.augment.py.*, so if you clone with the default name augment-ComfyUI (or let a tool pick it), the nodes silently fail to load with module errors. The README's clone command already includes the trailing augment - don't drop it.

Dependencies are light: opencv-python, numpy, torch, Pillow, requests. You already have torch and numpy from ComfyUI itself, so this is effectively a no-op install. No model files, no API key - unlike the pack's PNG-to-SVG nodes, every Wait node works fully offline.

Common issues

  • Nodes not appearing after install - almost always the folder-name problem above. Rename the directory to augment and restart.
  • The executor patch breaking after a ComfyUI update - the pack rewrites internal execution APIs, which can change between ComfyUI versions. If you update ComfyUI and start seeing weird execution errors, check whether the [augment] executor override installed cleanly in your console log.
  • "Why does my whole graph re-run every time?" - that's by design here. Trigger nodes always re-execute. It's the price of deterministic sequencing, and it's why you only put Wait nodes where ordering actually matters.
CategoryAugment/Utils

Inputs (2)

NameTypeDefaultDescription
valueCLIP
triggeroptTRIGGER

Outputs (3)

NameTypeDescription
valueCLIP
jsonAUGMENT_JSON
triggerTRIGGER