Nodes/ComfyUI Ino Nodes/Ino Save Images
ComfyUI Node

Ino Save Images

Save images where you want, and get a wire back

By nobandegani·Created about a year ago·Updated 2 months ago· 6
Ino Save Images
  • images
  • success
  • message
  • rel_path
  • abs_path
  • number_of_images
  • datetime_iso
parent_folder
folder
filename_prefixComfyUI

The stock SaveImage node does two things: drops a PNG in ComfyUI's output folder and then forgets about it. No way to learn the path at runtime, no way to confirm anything saved, nothing to wire onward. Ino Save Images is the same idea with the wires exposed - you pick the folder, and it hands back a machine-readable receipt you can chain into the rest of your workflow.

It comes from the ComfyUI Ino Nodes pack (nobandegani/ComfyUI-InoNodes), and it follows that pack's unified file pattern: parent_folder + folder + a filename input on the way in, success / message / rel_path / abs_path on the way out. If you're building automated pipelines - batch generations, S3 uploads, anything that treats ComfyUI as a job runner rather than a paint-by-hand tool - this is the save node you reach for. It's the difference between "the images are somewhere in output" and "the graph knows exactly where they went."

What you actually set

Only three inputs matter for a beginner:

  • parent_folder - a dropdown with input, output, or temp. This picks which of ComfyUI's three root directories the file lands under. output is the default you probably want for finished work.
  • folder - an optional subfolder inside that root. Want each run in its own dated directory? Point a datetime node at this. Leave it empty to save straight into the root.
  • filename_prefix - the start of the filename, default ComfyUI. Like the core node, the actual filename gets ComfyUI's auto-increment counter and batch suffix, so my_batch becomes my_batch_00001_.png, my_batch_00002_.png, and so on.

What comes out

The node is marked as an output node, so it sits at the end of a branch, but it doesn't end there dead - it emits six values:

  • success (boolean) and message (string) tell you the save worked; message even lists the filenames.
  • rel_path and abs_path are the real gift. Wire abs_path into an upload node, a zip node, or a file-count node and your downstream steps operate on exactly what was just written.
  • number_of_images (int) lets you sanity-check "did this batch actually save 50 frames?"
  • datetime_iso is the save time in UTC, handy for naming or logging.

Under the hood it reuses ComfyUI's own get_save_image_path machinery, so PNGs get the usual workflow metadata embedded (unless you launch ComfyUI with --disable-metadata), saved at a reasonable compression level, with the heavy lifting run off the main thread so big batches don't stall the UI.

Install

This is one node in a larger pack, so you install the pack, not the node:

# ComfyUI Manager: search "ComfyUI Ino Nodes", install, restart
# or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/nobandegani/ComfyUI-InoNodes.git
cd ComfyUI-InoNodes
pip install -r requirements.txt

Restart ComfyUI after installing. The only real dependency is inopyutils, which requirements.txt pulls in for you - no model files to download for this one. Heads up: the pack is built on ComfyUI's newer V3 node schema and wants a reasonably current ComfyUI (v0.18.1+). If the node won't register at all, update ComfyUI before blaming the pack. (One trap in the README: its manual-install snippet says cd comfyui_ino_nodes, but the cloned folder is actually named ComfyUI-InoNodes.)

Gotchas

There's no enabled toggle on this node, unlike several siblings in the pack - it always saves. And it overwrites nothing: the counter guarantees fresh filenames, which is what you want for a save step. If you find yourself grepping output for a needle, this is the node that makes that search unnecessary.

CategoryInoImageHelper

Inputs (4)

NameTypeDefaultDescription
imagesIMAGEThe images to save.
parent_folderCOMBO3 options: input, output, temp
folderSTRING
filename_prefixSTRINGComfyUIThe prefix for the file to save.

Outputs (6)

NameTypeDescription
successBOOLEAN
messageSTRING
rel_pathSTRING
abs_pathSTRING
number_of_imagesINT
datetime_isoSTRING