Nodes/EBU Workflow/EBU Model Wait For Image
ComfyUI Node

EBU Model Wait For Image

Hold your model until an image shows up

By burnsbert·Created about a year ago·Updated 12 months ago· 0
EBU Model Wait For Image
  • input_model
  • wait_for_image
  • output_model

EbuModelWaitForImage is the model-flavored gate in the EBU Workflow pack's wait-for-image trio. A MODEL goes in, the same MODEL comes out, and the node only completes once a separate image input is confirmed present. It does no computation on either input - it's a dependency edge wearing a utility node's clothes.

The pack (burnsbert/ComfyUI-EBU-Workflow) ships three of these - string, image, model - and this one is the heaviest because model inputs tend to sit at the head of expensive branches. Gating one of those behind an image is a way of saying "don't let anything downstream of this model run until this image actually exists."

How it works

Straight passthrough with a guard. input_model is returned unchanged as output_model. Before that, it checks wait_for_image: if the batch is None or empty, it raises ValueError("Image not loaded. Cannot proceed."). That's the entire mechanism.

The value here is scheduling and fail-fast behavior. In ComfyUI, a node executes once its inputs are ready - so by feeding an image into this node, you force that image's producer to run before anything connected to output_model. That's useful in workflows where two independent branches feed a shared downstream step and you need to be certain of the order. And if the wait image turns out to be missing (an unloaded Load Image, a failed upstream node), you get a clear, loud failure instead of a silent downstream error that's hard to trace back.

Inputs and outputs

  • input_model (MODEL) - the model that passes through.
  • wait_for_image (IMAGE) - the gating dependency.
  • output_model (MODEL) - the same model, unchanged.

Where it fits

Multi-stage pipelines where a model-using branch must not proceed until an image-producing branch has landed - for example, an img2img or ControlNet-enabled pass that depends on a base image, where you want the failure to be obvious if the image never arrives. The same honest caveat applies here as to its siblings: in a straightforward single-execution workflow, ComfyUI already orders everything via normal wiring, and this node is extra. It earns its keep when you're explicitly structuring execution order across independent branches, or when you want hard guarantees that a missing image stops the run.

Installing

Standard EBU Workflow install - no dependencies beyond Python's standard library, no model files. ComfyUI Manager (search "EBU Workflow"), or:

cd ComfyUI/custom_nodes
git clone https://github.com/burnsbert/ComfyUI-EBU-Workflow

then restart ComfyUI.

Gotchas

  • Both inputs are REQUIRED, so the node won't run until both are wired. That's the design, but it means you can't use it as an optional guard.
  • The check is "is the image batch non-empty," not "is the image visually valid." A black or garbage image passes.
  • It passes the model reference through - no cloning, no copy. Whatever memory the model occupies stays where it is; this node is effectively free.
CategoryUtility

Inputs (2)

NameTypeDefaultDescription
input_modelMODEL
wait_for_imageIMAGE

Outputs (1)

NameTypeDescription
output_modelMODEL