AUN Save Image V2
The AUN image saver that actually wants to be your default
- images
- filename
- sidecar_text
If you use the AUN pack at all, this is the image saver you'll actually reach for. The whole V2 family of AUN nodes standardized on one idea - a single combined path_filename string instead of separate path and filename sockets - and this node is where that pays off. You type something like %date%_%basemodelname%_%seed% into one box, run, and get a file whose name tells you exactly what it is without digging through metadata.
What it does
AUNSaveImageV2 takes your rendered images, resolves a filename template full of %token% placeholders, saves the file, and returns both the final filename and a sidecar_text string describing what went into it. It's an output node - it's the end of the line, the last thing a prompt-to-image workflow runs.
It's the recommended successor to the old AUNSaveImage, which needed separate path and filename inputs. The V2 contract is one path_filename box that may include a subfolder with /, like gallery/2026/%date%_%basemodelname%_%seed%. Under the hood it just splits that string and hands it to the same battle-tested save machinery as the legacy node, so nothing you learned there is wasted.
The tokens that matter
The filename template supports both canonical %token% placeholders and the legacy %token form, plus %date:<format>% / %time:<format>% overrides. The ones beginners actually use:
%date%- timestamp, formatted by thedate_formatfield (default%Y%m%d-%H%M%S)%basemodelname%/%model_short%- model name, trimmed for filenames%seed%,%steps%,%cfg%,%sampler_name%,%scheduler%- the usual suspects, fed by the matching optional inputs%loras%- handled a little differently in V2; see below
If you'd rather not hand-type all that, the pack's AUNPathFilenameV2 node builds path_filename strings from individual components and even emits a sidecar of its own - the two are designed to be wired together.
Inputs and outputs
Required: images, path_filename, and extension (png / jpg / webp). Everything else is optional: steps, cfg, modelname, sampler_name, scheduler, seed_value, positive_prompt, negative_prompt, selected_lora (the LoRA name from an AUN Random LoRA loader, for metadata), date_format, save_image (set to false to only render previews into the temp dir - handy for test runs), preview, and sidecar_format.
Outputs: filename (the resolved path, useful for logging or chaining) and sidecar_text (a text or JSON blob of the parameters, depending on sidecar_format).
One trap worth knowing: V2 strips %loras% tokens out of the filename rather than rendering them. The LoRA info still lands in the sidecar and metadata - the pack just decided you don't want a ten-LoRA stack turned into a 300-character filename.
Installing it
It ships in the AUN ComfyUI Nodes pack, so install the pack once and every node here comes along:
cd ComfyUI/custom_nodes
git clone https://github.com/loz2754/AUN-ComfyUI-Nodes
Then restart ComfyUI. Or use ComfyUI Manager - search "AUN" and install the repo. Dependencies (piexif, opencv-python-headless, requests) get pulled in automatically; if you cloned manually and hit ModuleNotFoundError: piexif, run pip install -r custom_nodes/AUN-ComfyUI-Nodes/requirements.txt.
Troubleshooting
- Filename contains ugly full paths? Check
path_filenamefor a stray/- everything before the last slash becomes a subfolder under the output directory. - Metadata missing? Wire
seed_value,modelname, and the prompt inputs in; the node only embeds what it's told.selected_loracomes from a LoRA loader node's output, not from thin air. - Nothing saved but no error?
save_imagegot flipped to false at some point - that's preview-only mode. Flip it back.
There are flashier savers in the ecosystem, but this one is the pack's own recommended default, and it earns that. One box, sane defaults, metadata in the file. That's about all you want from a saver.
Inputs (16)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | Input images to save. Can be single image or batch. | |
| path_filename | STRING | %date%_%basemodelname%_%seed% | Combined subfolder path and filename pattern. Supports canonical %token% placeholders, legacy %token placeholders, and %date:<format>% / %time:<format>% forms. |
| extension | COMBO | png | Image format to save in. |
| stepsopt | INT | 201–10000 | Number of sampling steps. |
| cfgopt | FLOAT | 8.000–100 | CFG scale. |
| modelnameopt | STRING | Model name for %model, %modelname, %basemodelname, %model_short, %modelname_short, %basemodelshort, %basemodelname_short placeholders. | |
| sampler_nameopt | STRING | Sampler name for metadata and %sampler_name placeholder. | |
| scheduleropt | STRING | Scheduler name for metadata and %scheduler placeholder. | |
| seed_valueopt | INT | 00–18446744073709550000 | Seed value for %seed placeholder and metadata. |
| previewopt | COMBO | enabled | Enable/disable image preview on the node. |
| save_imageopt | BOOLEAN | true | True: save images to output path. False: only generate previews (saved into temp directory). |
| positive_promptopt | STRING | Positive prompt text to embed in metadata. | |
| negative_promptopt | STRING | Negative prompt text to embed in metadata. | |
| selected_loraopt | STRING | Selected LoRA name from AUNRandomLoraModelOnly or similar nodes to include in sidecar metadata. | |
| date_formatopt | STRING | %Y%m%d-%H%M%S | Date format for %date and %time placeholders. Explicit %date:<format>% / %time:<format>% placeholders override this per token. |
| sidecar_formatopt | COMBO | Output text | Sidecar output format and file saving: choose Output (text/json) or also Save to file (text/json). |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| filename | STRING | — |
| sidecar_text | STRING | — |