🪠️ WWAA Metadata Saver
A metadata sidecar writer that just works
- filename_prefix
ComfyUI already embeds your prompt and seed in PNG metadata - but not everything you generate is a PNG, and not every workflow hands you that metadata back in a form you can grep. WWAA Metadata Saver does the old-school thing instead: it writes a Prompt: / Seed: pair to a plain text file, one per generation, with automatic numbering. If you're batch-testing LoRAs, tracking which seed produced which look, or logging generations for training captions, that's a genuinely handy thing to have.
How it works
Three inputs: prompt (multiline), seed, and filename_prefix. It writes to ComfyUI's output directory and picks the next free number - metadata_2026-08-16_01.txt, then _02, and so on, with no upper limit. The filename prefix has a couple of genuinely clever touches worth using:
%date:format%- put%date:yyyy-MM-dd%in the prefix and it becomes the current date (there's a full mapping:yyyy,MM,dd,HH,mm,ss). The default prefix ismetadata_%date:yyyy-MM-dd%, so by default you get a dated, numbered run.- Path separators create subfolders - a prefix like
%date:yyyy-MM-dd%/Ernest_ETv8_makes a dated folder and saves the file inside it. That's a clean way to organize multi-day training or test sessions without touching anything else.
The single output, filename_prefix, returns the formatted prefix (after date substitution, before numbering) - useful if you want a downstream node to know what folder/prefix you're writing into. Note it's the prefix, not the final filename; the counter is added internally and isn't exposed.
Install
It ships in WWAA-CustomNodes. Manager route: search "WWAA Custom Nodes", install, restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/hgabha/WWAA-CustomNodes
# restart ComfyUI
No extra requirements - the pack explicitly needs nothing beyond what ComfyUI already has. It lives under the 🪠️ WWAA menu.
Where it fits and where it doesn't
This node shines in batch and training workflows. Hook it after a KSampler with your positive prompt and seed wired in, and every run leaves an auditable text trail. It's also a natural companion for the pack's own prompt/file utilities - write captions, log seeds, and you've got a searchable run history instead of relying on embedded PNG metadata.
The honest limits: it saves exactly two fields - prompt and seed. No sampler settings, no model name, no timestamp beyond what you put in the filename. If you need a full workflow dump, that's what embedded PNG metadata and save-nodes are for; this is the lightweight sidecar. Also, because it numbers by scanning for the next free filename, deleting file _02 means the next write reuses _02 - a re-run overwrites the gap, which is fine for logs but a footgun if you were treating the files as immutable history. Keep the date in the prefix (default) and you'll rarely hit it.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| seed | INT | 00–18446744073709550000 | — |
| filename_prefix | STRING | metadata_%date:yyyy-MM-dd% | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| filename_prefix | STRING | — |