Dummy Out
Forcing a branch to run without saving anything
- any_input
- *
Here's a ComfyUI quirk that trips people up constantly: if a node's output isn't wired toward something ComfyUI recognizes as an output node, that branch of your graph just... doesn't run. ComfyUI builds its execution plan by walking backward from output nodes, so a dead-end branch - one you're just poking at to inspect an intermediate value - gets silently skipped. Dummy Out exists to fix exactly that, for anything.
Why you'd want this
Wire any output into Dummy Out, and ComfyUI now treats that branch as something it needs to execute and show in the UI - without saving a single file to disk. It's marked as an output node itself, so it does the one thing that matters: it forces execution. Beyond that, it does nothing at all to the data - no transformation, no save.
That makes it genuinely handy in a few recurring situations: debugging a mid-graph value (a string, a latent, whatever) that has nowhere else to go; branching workflows where you want to preview a side-path without cluttering your output folder with test saves; or just quickly checking "did this node actually run and produce something" without building a whole Preview/Save chain for a throwaway check. If you're iterating fast and don't want fifty stray files in your output directory from every intermediate check, this is the node that gets you a preview without the disk write.
How it works
It accepts anything (* type) into any_input, marks itself as an output node so ComfyUI includes it when building the execution graph, and passes the value through as its own * output too - so you can even keep chaining after it if you need to.
The inputs and outputs that matter
Just one input - any_input, wildcard type, accepts literally anything: an image, a mask, a string, a model, a latent. And one output - again wildcard * - mirroring whatever came in, in case you want to continue the chain rather than dead-end it here.
There are no other settings. This is as close to a zero-configuration node as the pack has.
How to install it
- ComfyUI Manager - search KJNodes for ComfyUI, install, restart.
- Manual -
cd ComfyUI/custom_nodes && git clone https://github.com/kijai/ComfyUI-KJNodes, thenpip install -r ComfyUI-KJNodes/requirements.txt(portable:python_embeded\python.exe -m pip install -r ComfyUI\custom_nodes\ComfyUI-KJNodes\requirements.txt), then restart.
Nothing to download - it's a no-op node, no dependencies of its own.
Common issues & troubleshooting
Nothing shows up in the UI after connecting it. Because it doesn't render a preview the way Preview Image does for images, don't expect a thumbnail - its job is purely to make sure the branch executes, not to display anything meaningful for non-image types. For string/latent/model outputs, you won't see a visual result here; you'd still want a proper display node if you need to actually read the value.
Confusing it with Preview Image or Save Image. Those nodes are type-specific and do render/write something. Dummy Out is type-agnostic and writes nothing - reach for it when you specifically want execution without disk output, not as a general substitute for previewing images.
A branch still doesn't run even with Dummy Out attached. Double-check the wiring is actually complete end to end - if there's a broken or missing connection somewhere upstream of Dummy Out, forcing the downstream node to be treated as an output won't make an incomplete graph execute.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| any_input | * | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| * | * | — |