Steps Value (Umbra Lab)
Steps, defined once, everywhere — the boring node that prevents silent drift
- steps
Steps Value (Umbra Lab) is a single integer with a socket. You set the step count once, it hands the same INT to every sampler, and you never hunt through a ten-node graph trying to remember which KSampler still says 18 while the rest say 20. Unglamorous, yes. It exists for exactly that reason.
When you'd actually reach for it
Any workflow where the same step count needs to appear in more than one place - a base sampler plus a hires-fix pass, a detailer that samples at its own step count, or a save node that wants to record the steps in metadata. Wire them all from this one node and the value is defined in a single authoritative spot.
The other honest use: batch experiments. When you're sweeping steps to see where a checkpoint stops improving, having the step count as a single knob instead of buried in a sampler widget makes the sweep trivially repeatable. And if you ever want to drive it programmatically (an API workflow, or Umbra's own Power Prompter path), a value node is a much friendlier thing to point at than a widget.
Inputs and output
- steps -
INTfrom 1 to 10,000, default 20. The range covers everything from one-step distilled samplers up to long SD1.5 refinement runs. - steps (output) - the same
INT, wire it into anystepsinput on a KSampler, the Umbra KSamplers, or the Umbra Hires Fix node.
That's the entire schema - no randomize, no list mode, no per-batch progression. If you need seeds to advance per image or per repeat, that's what Seed Value (Umbra Lab) is for; steps are a value you almost always want to keep fixed while you iterate on everything else.
Installing it
Part of Umbra-Nodes, the ComfyUI companion pack for Umbra Studio (NocturneLabs' open-source local AI creation suite). Install via ComfyUI Manager (search "Umbra Nodes") or:
cd ComfyUI/custom_nodes
git clone https://github.com/Nocturne-Ai-Labs/Umbra-Nodes
Restart ComfyUI. No pip dependencies, no model files - the node is a typed pass-through, so it can't break even if the rest of the pack is still downloading.
Gotchas
Two small things. First, remember the same rule as every value node: if you change steps here, everything wired downstream re-runs, including model reloads. Second - and this trips people more than it should - this node does not know about the KSampler's own step count. If you wire it in, it wins; if you don't, the sampler uses its widget. Don't mix both or you'll have two numbers claiming to be the truth, which is precisely the silent drift this node was built to kill.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| steps | INT | 201–10000 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| steps | INT | — |