Nodes/comfy-ovum/Ground Ovum (GND)
ComfyUI Node

Ground Ovum (GND)

The sink node that forces your branches to actually run

By sfinktah·Created about a year ago·Updated 10 months ago· 7
Ground Ovum (GND)
  • arg0

    Ground Ovum is an output node with no outputs. It's the graph equivalent of touching a wire to ground: you connect things to it, and that connection is what makes them run. In ComfyUI terms, it sets OUTPUT_NODE = True and just consumes whatever you plug into it - which forces those upstream branches to actually execute even though nothing downstream needs their result.

    Why does that matter? ComfyUI is lazy about execution. If a node's output leads nowhere that produces a result, ComfyUI may skip it entirely. That's fine when a branch is genuinely dead weight, and infuriating when the branch has side effects you wanted - a file write, a preview, a console log, an environment-variable set - but produces no visible output. Ground is the hack you use to say "no, really, run this branch and don't bother giving me anything back."

    How it works

    • It declares itself an output node (OUTPUT_NODE = True), the same mechanism core preview/save nodes use to mark the end of a chain.
    • It has no return types and no outputs - nothing to wire onward.
    • Inputs are dynamic (gnd_1, gnd_2, ...), created on the UI side, so you can ground as many branches as you like from one node.
    • IS_CHANGED returns NaN, which forces Comfy to execute the path each run instead of caching it away.

    The backend method is literally named sink. It takes anything you give it and returns nothing but a UI message.

    Inputs and outputs

    • arg0 (*) - the first dynamic input (the UI renames these gnd_1, gnd_2, ... as you add more). Accepts any type.
    • Outputs: none. That's the point.

    When to reach for it

    • Side-effect branches. A node that writes a file or sets an environment variable but has no output socket that matters - ground it so it reliably executes.
    • Dead-end debugging. You want a branch to run so its intermediate work happens, but you don't want to attach a preview to it.
    • Parallel work. Multiple independent branches that should all execute before the workflow wraps - grounding each forces them to realize.

    Installing it

    It ships in sfinktah/comfy-ovum:

    cd ComfyUI/custom_nodes
    git clone https://github.com/sfinktah/comfy-ovum
    

    or search comfy-ovum in ComfyUI Manager, then restart. No models.

    Gotchas

    The main trap is using Ground when you actually want the value. Ground consumes and discards - it's not a passthrough. If you need the data later, use a normal output node or a Passthru variant instead, and reserve Ground for "execute this branch, throw away the result." Also, since it's an output node, expect it to show up in the output-node queue - that's by design, it's how it forces execution. It's a small, specific tool, but when you need exactly this, nothing else in the pack does it better.

    Categoryovum/util

    Inputs (1)

    NameTypeDefaultDescription
    arg0*

    Outputs (0)

    No outputs