Nodes/ComfyUI-ImagePreviewPause/Preview Image with Pause
ComfyUI Node

Preview Image with Pause

A pause button between generation and the expensive step

By Cordux·Created 7 months ago·Updated 7 months ago· 2
Preview Image with Pause
  • images
  • images

The name is the whole pitch: Preview Image with Pause. It's ComfyUI's built-in Preview Image, plus a stop sign bolted on. Wire it between VAE Decode and Save Image, queue the prompt, and the generation runs normally - then the node shows you the result and just... waits. Click ✔️ Continue and the image sails through to whatever's downstream. Click ⛔ Cancel and the run stops dead.

Why would you want a gate in the middle of your graph? The standard use is anything where the next step costs more than thinking. A heavy upscaler, a second pass, a batch of images you'd rather not commit to a slow pipeline - you can burn ten minutes on an 4x upscale of an image you'd have thrown away on sight. This node is the eyeball checkpoint: cheap to stare at, and you only spend on the ones that clear it.

How it works

Under the hood it's a small, honest bit of plumbing. The node dumps your image to ComfyUI's temp folder, pushes it to the frontend over the same executed channel the built-in Preview Image uses, then sits in a blocking loop, polling its own state every tenth of a second. The two buttons on the node are plain widgets added by the pack's JavaScript - Continue POSTs back to the server and flips the state, the loop exits, and the original image passes through the output untouched. Cancel calls ComfyUI's interrupt_current_processing and raises an interrupt exception, which is why it kills the run rather than just skipping the node.

Nice touch in the JS: it patches ComfyUI's own interrupt button, so pressing the standard cancel in the queue also cancels the pause. The author clearly hit "cancel and nothing happened" before shipping this.

The inputs that matter

Only one. That's the whole thing.

  • images (IMAGE, required) - the decoded output from VAE Decode. Nothing else takes a value, and there are no optional inputs; the id and prompt hidden inputs are internal wiring you never touch.
  • images (IMAGE, output) - the same tensor you fed in, passed through untouched if you Continue. That passthrough is the reason it slots cleanly between VAE Decode and Save Image (or an upscaler): it behaves like a wire that happens to have opinions.

Installing it

Easiest route is ComfyUI Manager - search ComfyUI-ImagePreviewPause and hit install. Or, from your terminal:

cd ComfyUI/custom_nodes
git clone https://github.com/Cordux/ComfyUI-ImagePreviewPause

Restart ComfyUI either way. There's no requirements.txt and no model to download - it's pure Python against ComfyUI's own API, so install is genuinely painless. One heads-up: the README's copy-paste URLs are a mess and point at a differently-named repo (ComfyUI-PreviewPause.git) in spots. The real, working URL is the one above - or just use the Manager and skip the archaeology.

Where people get caught

  • It gates the whole batch, not individual images. If you feed it a batch of 4, all four previews show, but Continue/Cancel approve or kill all of them together. The README says it plainly: review works best with batch_size = 1.
  • The pause blocks the queue. The node holds the execution thread while it waits, so anything you've queued behind it just sits there, and your GPU is held. That's the price of a manual checkpoint - don't leave a paused run unattended.
  • There's a fixed 0.3s delay before the preview, hardcoded, so the frontend has time to catch the image. If your preview ever feels missing or laggy, that's not you doing something wrong; it's a constant in the code, and the author's README invites you to adjust it.

Is it life-changing? No. It's a tiny utility from a tiny pack (one node, MIT license, a single commit in the clone I read) that plugs a specific, real gap: "don't spend the expensive step until I've looked." If you run manual review loops or multi-stage pipelines, it's the sort of node that quietly becomes part of your standard graph. For everyone else, it's a nice-to-have that costs nothing to try - and the name is not a lie.

Categoryimage

Inputs (1)

NameTypeDefaultDescription
imagesIMAGE

Outputs (1)

NameTypeDescription
imagesIMAGE