ComfyUI Node

AIHub Expose Seed

The AIHub seed node isn't random — your client is the RNG

By otavanopisto·Created about a year ago·Updated 22 days ago· 7
AIHub Expose Seed
    • INT
    idseed
    labelSeed
    tooltip
    value0
    advancedfalse
    index0

    The most useful way to think about AIHubExposeSeed is that it's a lie. It's called "Expose Seed," it has a value field you can type into, and when you run it in the ComfyUI web UI it just passes that integer straight through to whatever you wired it to. The interesting part is who sets that value. In the ComfyUI graph it's a boring pass-through node. But when a client app connects to this pack's websocket server and injects a seed, that is the node doing its job.

    The pack behind it - otavanopisto's ComfyUI-aihub-workflow-exposer - turns ComfyUI workflows into "AI workflows" that external apps (image, video, audio editors) can drive like plugins. Clients send values in over the websocket; expose nodes convert those into typed ports. The author's README is blunt about seeds: "You must have seeds exposed to the client as outside of ComfyUI WebUI the random numbers are not generated, ensure randomness of numbers by using this seed generator, it is the client responsibility to provide a seed." Translation: when an external app runs your workflow, nobody is rolling dice for you. If the workflow needs variety, you expose the seed and the client randomizes it. That's the entire reason this node exists instead of a plain integer expose - it signals "this value is the seed, handle it accordingly."

    The inputs that matter

    • value - the actual seed (an INT, 0 to 2⁶⁴−1). Default 0. The client overwrites it.
    • id - a unique string for this workflow (default "seed"). This is the key: the client sends values keyed by this id, so it has to be unique within the workflow and match what the client expects.
    • label - what shows in the client's field. tooltip - the helper text. advanced - tuck it under the "advanced" section of the client UI. index - sort order; lower numbers first.

    The one output is INT, and 99% of the time you wire it into a KSampler's seed input. Because KSampler seeds are also INT, it drops in with no conversion node needed.

    Installing and the honest caveat

    No requirements, no model downloads. The pack has no requirements.txt - it runs on ComfyUI's own internals - so install is either ComfyUI Manager (search "aihub-workflow-exposer") or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/otavanopisto/ComfyUI-aihub-workflow-exposer
    

    then restart ComfyUI. Watch the console: the pack boots its own websocket server on load, which is how clients talk to it.

    The thing nobody tells you before you find it the hard way: this entire pack is infrastructure for an app integration, and the author says as much - the README name-checks a Gimp AIHub, and flatly warns the underlying server is "highly advanced." If you're just generating images in the browser, this node is a pass-through. It earns its keep the moment a real client connects and starts sending you seeds. Don't let the 0 impressions scare you; it's a niche pack, but the mechanism is sound.

    Categoryaihub/expose

    Inputs (6)

    NameTypeDefaultDescription
    idSTRINGseedA unique custom id for this workflow.
    labelSTRINGSeedThis is the label that will appear in the field.
    tooltipSTRINGAn optional tooltip
    valueINT00–18446744073709550000
    advancedBOOLEANfalseIf set to true, this option will be hidden under advanced options for this workflow.
    indexINT0This value is used for sorting the input fields when displaying; lower values will appear first.

    Outputs (1)

    NameTypeDescription
    INTINT