Incrementor Plus (Allergic)
A counter that steps, resets, and tells you the truth about next
- value
- step_size
Every batch workflow eventually needs the same thing: a number that goes up by one each run, and a way to drag it back to zero when you're done. Core ComfyUI gives you the "goes up by one" part on any INT widget via the control_after_generate dropdown - but no reset button, and the step is always exactly one. Incrementor Plus is the Allergic Pack's answer: an integer counter with an adjustable step size and a one-click reset. The author built it because he "runs a lot of batch jobs" and wanted exactly that, then published the pack on r/comfyui as AllergicToTeeth.
It's a value node in the plumbing sense - no pixels, just a number other nodes consume. Wire the value output into a seed, a filename prefix, a batch index, anything that needs to advance on its own.
How it works
The Python side is almost comically simple: it returns value and step_size and does nothing else. All the actual behavior lives in the JavaScript frontend:
control_after_generatedefaults to increment. New nodes get their control dropdown set to "increment" automatically (loaded workflows keep whatever they were saved with).- The step size is respected. Instead of the stock +1 behavior, the increment adds whatever you set in
step_size. Decrement subtracts it. That's the "Plus." - Reset Value button. One click snaps
valueback toreset_value_to. This is the part you'll actually miss once you've used it.
The gotcha the README warns you about
Here's the thing that will confuse you for exactly one workflow, guaranteed: the number shown on the node is the NEXT value, not the one that just ran. Because control_after_generate fires after the queue finishes, the box you're looking at is what the following run will use. The README states it outright: "The value on the node itself shows the NEXT value. This is normal."
This is the same trap that bites everyone on the KSampler seed - the "after" in "control after generate" is doing all the work. If you'd rather see the value that just produced your result, switch the global widget control mode setting from After to Before in ComfyUI's settings. Then the number in the box is the one actually used, and the node behaves the way your gut expects.
Inputs and outputs
Three inputs, and two of them are boring:
value(INT) - the counter itself. Default 0.step_size(INT, 1–100) - how muchvaluemoves per run. Default 1.reset_value_to(INT) - the number the Reset button snaps to. Default 0.
Outputs: value (INT) - wire this wherever the advancing number goes - and step_size (INT), which is mainly there so downstream nodes can read what you set.
Installing it
Incrementor Plus ships in the Allergic Pack with three other nodes, so one install covers all of them. ComfyUI Manager → search "Allergic Pack" → install the latest release (skip the nightly unless you enjoy security-level roulette), or:
cd ComfyUI/custom_nodes
git clone https://github.com/usrname0/ComfyUI-AllergicPack.git
cd ComfyUI-AllergicPack
pip install . # Windows portable: ..\..\..\python_embeded\python.exe -m pip install .
Restart, and it's under "Allergic Pack" in the node menu. No dependencies to babysit - the pack's requirements file is empty, so there's nothing beyond stock ComfyUI.
When to reach for it
If you just need a seed that randomizes each run, the KSampler's built-in dropdown is fine and this node is overkill. Reach for Incrementor Plus when you need a counter that steps by more than one, or when the reset dance of typing 0 back in has gotten old. For the batch jobs it was built for - incrementing through runs and snapping back between sets - it's exactly right.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| value | INT | 0 | — |
| step_size | INT | 11–100 | — |
| reset_value_to | INT | 0 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| value | INT | — |
| step_size | INT | — |