ErrorNode
Fail a ComfyUI run on purpose, with a message you actually wrote
- STRING
Sometimes the most useful thing a node can do is stop the workflow, loudly, in plain English. That's the whole job here. You wire in an error_msg, and when this node fires it kills the run with your message front and center instead of leaving you to decode a three-screen Python traceback from whatever node happened to choke five steps later.
It's an assert, basically. You've felt the alternative: a workflow silently produces a black image, or a garbled string, or a size-mismatch crash buried in a downsampling node that has nothing to do with your actual mistake. If you're building anything with real logic in it - and this whole pack is logic and gate nodes - you eventually want a way to say "if this condition's wrong, stop here and tell me why" instead of "if this condition's wrong, let it cascade into nonsense." Route a failing branch (from one of LogicUtils' comparison or boolean nodes) into this instead of into your sampler, and a bad input becomes a clear failure instead of a wasted GPU run.
How it works
The whole surface area is one field: error_msg, a string, defaulting to "Error". Feed it whatever text explains the problem - "resolution must be a multiple of 8," "empty prompt," whatever your graph needs to guard against - and when the node executes, it's built to raise with exactly that message, so the failed prompt in the UI (or in an API response, if you're driving the workflow that way) shows your words instead of an internals stack trace. The node also declares a STRING output, presumably for the case where you're routing it through a switch and it isn't the branch that fires - worth knowing the README documents none of this, so the fine print of exactly when it error's versus passes through isn't spelled out anywhere; go by the name and the single-purpose input and you'll be right often enough.
Inputs and outputs
- error_msg (default
"Error") - the text to fail with. That's it.
Output is a STRING - mostly there for graph plumbing rather than something you'll actually consume downstream.
Installing ComfyUI-LogicUtils
Through ComfyUI Manager: Install Custom Nodes → search "ComfyUI-LogicUtils" → install → restart. Or by hand:
cd ComfyUI/custom_nodes
git clone https://github.com/aria1th/ComfyUI-LogicUtils
Restart ComfyUI and it'll show up. No models, no heavy dependencies for this one - it's pure Python.
Worth knowing
This pack is aria1th's grab-bag of utility nodes - same person who trains Illustrious XL under the handle AngelBottomless, though LogicUtils itself is a side project, not part of that work. It got recommended on r/StableDiffusion in January 2026 as the featherweight pick specifically because it has no dependencies, when someone didn't want to install a whole heavyweight node pack just to get a small logic operation. That's the right way to think about ErrorNode too: it's a one-line safety net, not a framework. The repo's own README admits it barely has documentation ("there are too many nodes"), and public pushes to it stopped in January 2026, so don't expect active support if something's off - but there's not much surface area here to break in the first place.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| error_msg | STRING | Error | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | — |