ComfyUI Node

Int

An integer input that actually knows it's an integer

By adrianschubek·Created about a year ago·Updated about a year ago· 1
Int
    • int
    value0

    ComfyUI already ships a Primitive node that can hand out integers, so the honest first question is: why install a whole pack for a box that outputs a number? Because the core Primitive node is a shapeshifter - one widget that can carry an int, a float, a string, or a boolean, and the type on the wire is whatever you happened to type in. ZeugInt is the opposite bet: one input, one type, zero ambiguity.

    What it is

    ZeugInt lives in the zeug → Values menu and does exactly one thing. It exposes a single integer widget and passes the value straight through to its output. Input value is an INT clamped to a sane range (‑999,999,999 to 999,999,999, default 0), and the output is a typed int. Nothing gets computed, nothing gets transformed - it's a value source, the ComfyUI equivalent of a constant in code.

    That sounds trivial until you've fought a Primitive node that sent a string where a sampler wanted an integer and the whole graph silently misbehaved. A typed value node removes the guessing: if the wire says INT, it is an int, and any node that accepts an INT input will take it cleanly.

    When you'd reach for it

    • You're driving several nodes from one number - steps, batch size, seed count - and want a single visible widget that feeds them all.
    • You're building a workflow for someone else and want the numbers to be obvious, not buried in a Primitive's dropdown.
    • You need a value that survives being wired around a graph without the type changing under you.

    The wider point: ComfyUI is a graph where every wire has a type, and half the "missing features" people install utility packs for are really just the discipline of typed values. This pack's values trio - ZeugInt, ZeugFloat, ZeugStr, ZeugBool - is the type-safe foundation, and ZeugInt is the one you'll touch most.

    How it works

    There's no mechanism to speak of. The node's int_value function takes the widget value and returns it as a one-element tuple, which ComfyUI unwraps into the int output. The only real behavior is the input clamp: you can't type a billion into it, which is a feature for step counts and batch sizes, not a bug.

    How to install it

    It's part of the comfyui-zeug pack (German for "gear" or "stuff"), a small GPL-3.0 collection by Adrian Schubek. Two ways in:

    • ComfyUI Manager: open the Custom Nodes Manager, search zeug, and install ComfyUI-Zeug.
    • Manual:
    cd ComfyUI/custom_nodes
    git clone https://github.com/adrianschubek/comfyui-zeug
    

    Then restart ComfyUI (or hit Refresh in the UI). No pip install needed and no models to download - the pack declares zero dependencies and only uses torch plus ComfyUI's own comfy.model_management, both already present. It's about as safe and light an install as this ecosystem offers.

    Common issues

    Honestly, there's not much to break on a pass-through value node. The one trap is expecting it to behave like a converter: wire int into a node that demands a FLOAT or STRING input and ComfyUI may just refuse the connection or fudge it. If you need a float, grab ZeugFloat; if you need the number as text for a filename or prompt, chain it into ZeugIntToStr instead of fighting the type system.

    It won't change your life, but when a workflow keeps complaining about types, this is the node that ends the argument.

    Categoryzeug/values

    Inputs (1)

    NameTypeDefaultDescription
    valueINT0-999999999–999999999

    Outputs (1)

    NameTypeDescription
    intINT