Nodes/Cyberdelia Image Metadata/Create Extra Metadata (Cyberdelia)
ComfyUI Node

Create Extra Metadata (Cyberdelia)

Stamp your own tags on every render — Create Extra Metadata (Cyberdelia)

By cyberdeliaAI·Created 4 months ago·Updated 11 days ago· 7
Create Extra Metadata (Cyberdelia)
  • extra_metadata
  • EXTRA_METADATA
key1
value1
key2
value2
key3
value3
key4
value4

Create Extra Metadata (Cyberdelia) is the supporting actor in the comfyui-cyberdelia-metadata pack. It doesn't save anything, sample anything, or generate anything. What it does is let you attach your own key-value pairs to an image before the save node writes it - a project name, a revision counter, your handle, the LoRA the graph walker couldn't see, anything you want burned into the file.

It exists because the pack's Save Image With Metadata (Cyberdelia) node accepts an EXTRA_METADATA socket, and something has to produce that object. Never touch this node and the save node still auto-captures seed, prompts, sampler, checkpoint hashes, and LoRAs by walking your graph. This little node is for the stuff a graph walker will never guess: editorial tags and provenance that you want to travel with the file. The first time you sort a month of outputs and wonder which project a render belonged to, you'll be glad you bothered.

How it works

It's a tiny key-value builder. Four key/value pairs, each a plain string field, bundled into a single EXTRA_METADATA object on the output. Wire that into the save node's extra_metadata input, and in full metadata scope (the save node's default) the pairs are written into the PNG as their own text chunks alongside the auto-detected fields. Two rules govern the fields, and they're worth knowing before they bite you:

  • Empty values are allowed - a key with no value is fine.
  • Unpaired values are not. Fill value1 and leave key1 blank and the node raises an error at execution. It's the author's polite way of saying you probably pasted into the wrong box.

You can also chain nodes: the extra_metadata input accepts another EXTRA_METADATA object, so stack two or three of these and their pairs merge. That's how the pack scales past four fields without cramming everything into one node.

Inputs and output

Everything is optional and defaults to empty, so the node only does work when you type:

  • key1key4 / value1value4 - the pairs. Short strings; values may be empty.
  • extra_metadata (input) - chain another Create Extra Metadata node here to merge its pairs.
  • Output: one EXTRA_METADATA object → into Save Image With Metadata (Cyberdelia)'s extra_metadata socket.

Install

Same pack as the save node, so you get both in one shot. ComfyUI Manager, search comfyui-cyberdelia-metadata or Cyberdelia, or:

cd ComfyUI/custom_nodes
git clone https://github.com/cyberdeliaAI/comfyui-cyberdelia-metadata.git

Restart ComfyUI. No model files, no weights, and the only extra Python dependency in the whole pack is piexif (EXIF for the JPG/WebP paths).

The two gotchas that actually matter

  • Scope gating. The custom pairs only land in the file when the save node's metadata_scope is full - the default. Flip it to default or parameters_only and your tags quietly vanish. The source comments on exactly this, and it's easy to miss when you're just messing with the dropdown.
  • PNG-only travel. The pairs are added as PNG text chunks, which is also why they don't survive a format hop. JPG and WebP output keeps the A1111 parameters line in EXIF but drops your custom chunks - and any re-encode (JPEG export, Reddit upload, screenshot) strips them regardless. If you're stamping provenance onto a master, keep the original PNG; the tags survive byte-for-byte copies and nothing else.

That's the whole node. Two minutes to set up, and it quietly rides along forever after.

CategoryCyberdelia/Metadata

Inputs (9)

NameTypeDefaultDescription
extra_metadataoptEXTRA_METADATA
key1optSTRING
value1optSTRING
key2optSTRING
value2optSTRING
key3optSTRING
value3optSTRING
key4optSTRING
value4optSTRING

Outputs (1)

NameTypeDescription
EXTRA_METADATAEXTRA_METADATA