Nodes/ComfyUI-ZML-Image/ZML_缓冲节点
ComfyUI Node

ZML_缓冲节点

The 'wait, let me look first' pause button

By zml-w·Created about a year ago·Updated 2 months ago· 218
ZML_缓冲节点
  • 任意输入
  • 任意输出
缓冲时间60

Somewhere between the sampler and the save button, you'd sometimes like a few seconds to actually look at what just got generated before the next step runs. ZML_BufferNode (ZML_缓冲节点) is that pause: it sits in your graph, waits up to a set number of seconds, and hands its input through untouched when the time is up - or immediately if you click its skip button, or when you hit ComfyUI's global cancel. It's a deliberate speed-bump in a pipeline that's usually trying to go as fast as possible.

What it is

A timed gate from ComfyUI-ZML-Image's tools section. The inputs:

  • 缓冲时间 (FLOAT, seconds, default 60, max 3600) - how long to hold the pipeline.
  • 任意输入 (any type, optional) - the payload it carries (an image from a preview, whatever).

Output is 任意输出 - the exact same value, passed through after the wait. Put it between a VAE decode/preview and the rest of your graph, and the downstream work doesn't start until you've had your look.

How it works

The mechanism is refreshingly concrete. The node writes a signal file to ComfyUI's temp directory and then polls every 0.1 seconds until one of three things happens: the timer runs out, a skip signal file appears (the frontend adds a Skip button while the node is waiting), or ComfyUI's global interrupt fires - in which case it raises the proper interrupt exception so the whole workflow stops cleanly instead of hanging. The per-node-id signal file is how the browser tells this specific node "keep going now."

The practical use is batch review: run a batch, and between groups, the buffer gives you a window to look at what came out and change your mind. It's the same "image pause" philosophy the pack uses elsewhere (there's a whole family of pause-and-choose nodes), just with a timer instead of a manual pick.

Install and gotchas

Standard pack install:

cd ComfyUI/custom_nodes
git clone https://github.com/zml-w/ComfyUI-ZML-Image

or ComfyUI Manager → ComfyUI-ZML-Image, restart.

The gotchas are about where you put it and what "waiting" means. First, a 60-second default is an eternity in a fast workflow - if you just want a glance, set it to 5–10. Second, the node blocks its own branch; anything wired in parallel that doesn't pass through the buffer keeps running, so put it on the critical path you actually want to pause. Third, if you run ComfyUI from the command line with no browser attached (headless API calls), the Skip button doesn't exist and you'll be waiting out the full timer every run - that's a good reason to keep the buffer out of automated pipelines. Chinese-first UI, English patch at github.com/zml-w/ZZZ_ZML_English_Patch, one-person pack, no English community - but the node is simple enough that the only real risk is forgetting you left a 60-second buffer in a workflow you later run unattended.

Categoryimage/ZML_图像/工具

Inputs (2)

NameTypeDefaultDescription
缓冲时间FLOAT600–3600
任意输入opt*

Outputs (1)

NameTypeDescription
任意输出*