Nodes/mememage-comfy/Mememage Encode
ComfyUI Node

Mememage Encode

Stamp a Mememage bar into the image. Outputs the barred image, the identifier, and the record JSON (store it anywhere).

By sememtac·Created 2 months ago·Updated about a month ago· 1
Mememage Encode
  • image
  • image
  • identifier
  • record
fields
fields_json{}
prefixmememage
embed_workflowtrue
encrypt_workflowfalse
password_file
private
use_identifierfalse
identifier
CategoryMememage

Inputs (10)

NameTypeDefaultDescription
imageIMAGE
fieldsoptSTRINGWire a Mememage Fields / Field node here. Overrides matching keys typed in fields_json.
fields_jsonoptSTRING{}
prefixoptSTRINGmememage
embed_workflowoptBOOLEANtrueEmbed the generating graph in the record as comfy_prompt. When you also encrypt fields, the graph is sealed with them — its widget values ARE those fields' plaintext.
encrypt_workflowoptBOOLEANfalseSeal the embedded workflow (comfy_prompt) too. Encrypting ANY field now does this automatically — the graph carries that field's plaintext — so this is belt-and-braces there. On its own it's a no-op: with no `private` list, a password already encrypts every field including the workflow. To seal ONLY the recipe and keep your other fields public, put `comfy_prompt` in `private` instead.
password_fileoptSTRINGTo encrypt, put your passphrase in a file and give its PATH here (or set the MEMEMAGE_PASSWORD env var). The path rides the graph — the password never does, so it can't leak into the PNG metadata. Empty = public record. Needs mememage[encrypt].
privateoptSTRINGComma-separated top-level field names to encrypt. Empty + a password = encrypt EVERY field. Encrypting anything also seals the embedded workflow, which would otherwise carry those fields' plaintext.
use_identifieroptBOOLEANfalseOFF (default): content-address — a fresh identity per change, ignoring the identifier below EVEN IF a Reserve ID wire is connected. ON: honor the wired/typed identifier to iterate ONE piece (each conceive overwrites the same record). Lets you leave a pin connected but opt in to it deliberately, instead of disconnecting the wire.
identifieroptSTRINGPin a reserved identifier (wire a Mememage Reserve ID node, or paste a <prefix>-<16 hex>) to keep iterating ONE piece — each conceive overwrites the SAME record. Honored only when the 'use_identifier' toggle above is ON. Empty = content-addressed (a fresh identity per change).

Outputs (3)

NameTypeDescription
imageIMAGE
identifierSTRING
recordSTRING