πΈ Save: A1111
Save images with A1111-style metadata β the node that makes your PNGs portable
- images
- seed
- debug
ComfyUI's default Save Image node writes the workflow into the PNG as JSON. That's great for drag-back-onto-canvas, but it's a dialect a lot of other software can't read. πΈ Save: A1111 is the Frog Pack's alternative: it saves your image with an A1111-style parameters text chunk - the flat, human-readable block that AUTOMATIC1111, Forge, and downstream tools like Civitai's uploader actually parse. Same pixels, much more portable metadata.
Here's the mechanism, and it's the reason this node is more than a file writer. Instead of you hand-typing the prompt and settings, the node reads your workflow automatically - from the prompt object ComfyUI hands every output node - and extracts the prompt, seed, steps, CFG, sampler, scheduler, model name, and any LoRAs. The KB's metadata doc frames the A1111 dialect precisely: a single text chunk keyed parameters, containing the positive prompt, a Negative prompt: line, and a settings line with Steps:, Sampler:, CFG scale:, Seed:, Model hash:, Model:. That's exactly what this node writes, and it's what makes the file readable by A1111's PNG Info tab and by Civitai's auto-detection.
The extraction has a sensible priority order baked in (visible in the source): your explicitly-wired positive_text/negative_text win, then the runtime text cached by πΈ CLIP Text Encode (which passes raw strings out of its socket), then a static trace through the workflow graph as a fallback. Wiring the text outputs from πΈ CLIP Text Encode is the reliable path - the README recommends it so "your metadata always reflects exactly what was encoded."
Inputs that matter:
images- the image(s) to save.filename_prefix- defaults toRibbityPack; supports%date:yyyy-MM-dd%tokens for date-stamped names.image_format- PNG, JPG, JPEG, or WEBP.output_path- leave blank for ComfyUI's output folder, or set an absolute/relative path.show_preview- in-UI preview toggle.positive_text/negative_text- optional wires for exact prompt capture.
Outputs: seed (INT) and debug (STRING). Note it's an output node - it terminates your chain.
The honest trade-off, which the pack itself documents: this is the no-hash version. It writes A1111 metadata without SHA256 model hashes, so saves are fast with minimal CPU overhead. If you post to Civitai and want reliable model auto-linking, the README is blunt - use πΈ Save: Hash Embed instead, which computes and embeds the hashes Civitai keys on. Save: A1111 is for when you want portable, human-readable metadata without the hashing cost.
Installing it
Part of Frog Node Pack:
- ComfyUI Manager: search Frog Node Pack, install, restart.
- Manual:
cd ComfyUI/custom_nodes && git clone https://github.com/RabbitThatIsPink/FrogNodePack, restart, hard-refresh (Ctrl+Shift+R).
No pip dependencies - requirements.txt is empty; Pillow ships with ComfyUI. Find πΈ Save: A1111 under πΈ Node Pack.
Common issues
The usual complaint is "my metadata looks wrong/empty" - that's almost always an extraction fallback firing because no text wire was connected and the workflow trace couldn't resolve a value. Wire positive_text/negative_text from πΈ CLIP Text Encode and it stops guessing. Second: format matters for metadata - PNG keeps text chunks reliably; if you save JPG, you're trading metadata portability for smaller files. And if your model or LoRAs aren't being recognized on Civitai, that's the missing-hash limitation of this node by design - reach for πΈ Save: Hash Embed rather than expecting A1111-mode to auto-link.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | β | |
| filename_prefix | STRING | RibbityPack | Prefix for saved files. Supports %date:yyyy-MM-dd% tokens. |
| image_format | COMBO | PNG | 4 options: PNG, JPG, JPEG, WEBP |
| output_pathopt | STRING | β | |
| show_previewopt | BOOLEAN | true | β |
| positive_textopt | STRING | β | |
| negative_textopt | STRING | β |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| seed | INT | β |
| debug | STRING | β |