ZMongo Content Pack Static Outputs V3
The 64-output workhorse at the end of an exported static workflow
- out_00
- out_01
- out_02
- out_03
- out_04
- out_05
- out_06
- out_07
- out_08
- out_09
- out_10
- out_11
- out_12
- out_13
- out_14
- out_15
- out_16
- out_17
- out_18
- out_19
- out_20
- out_21
- out_22
- out_23
- out_24
- out_25
- out_26
- out_27
- out_28
- out_29
- out_30
- out_31
- out_32
- out_33
- out_34
- out_35
- out_36
- out_37
- out_38
- out_39
- out_40
- out_41
- out_42
- out_43
- out_44
- out_45
- out_46
- out_47
- out_48
- out_49
- out_50
- out_51
- out_52
- out_53
- out_54
- out_55
- out_56
- out_57
- out_58
- out_59
- out_60
- out_61
- out_62
- out_63
You'll rarely add this node by hand - it's the terminal node that Export Static Workflow V3 bakes into its .workflow.json files. But if you ever open one of those exported workflows and wonder what this thing with sixty-four output sockets is, here's the answer: it's the values-delivery node. You feed it a values_json string and it unpacks the values onto out_00 through out_63, typed per field, ready to wire into the rest of your graph.
Why it looks like it does
ComfyUI registers a node's output sockets at load time, so this node declares a fixed set of 64 wildcard (*) outputs and names them out_00 … out_63. The frontend JS then does the cosmetic work: when a workflow opens, it reads the embedded values_json, renames each socket to the field's alias, and re-types it to the correct type (STRING, INT, FLOAT, BOOLEAN, IMAGE, JSON, ANY). So on canvas you see friendly names like positive_prompt [STRING], even though the backend schema is just 64 generic pins. If the JS isn't loaded, the sockets stay generic - the values still come out, they're just labeled out_XX.
How the values decode
The values_json input is a small object: {"values": [{"name": ..., "type": ..., "value": ...}, ...]}. Each entry is coerced to its declared type - strings stay strings, numbers parse to INT/FLOAT, true/yes/1 become booleans, base64/JSON values decode, and image entries get rehydrated into actual IMAGE tensors. Fields beyond the 64 provided come out as empty strings. On any parsing failure the node returns 64 empty strings rather than raising, which keeps the workflow alive but means you should check the source data.
What to know before you use it
Two things. First, it's the "static" counterpart to the dynamic Get/aliases system: no aliases lists, no found flags, no database lookups - just flat values in a fixed order. The order is whatever the pack's field order was at export time, so if you edit the pack and re-export, keep the field order stable or your socket-to-value mapping shifts. Second, images only rehydrate if they were embedded as data in the export - an asset-reference-only pack yields empty image sockets. If you're crafting these by hand rather than letting the exporter do it, keep the values array format exact or you'll be debugging silent empty outputs.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| values_json | STRING | {} | — |
Outputs (64)
| Name | Type | Description |
|---|---|---|
| out_00 | * | — |
| out_01 | * | — |
| out_02 | * | — |
| out_03 | * | — |
| out_04 | * | — |
| out_05 | * | — |
| out_06 | * | — |
| out_07 | * | — |
| out_08 | * | — |
| out_09 | * | — |
| out_10 | * | — |
| out_11 | * | — |
| out_12 | * | — |
| out_13 | * | — |
| out_14 | * | — |
| out_15 | * | — |
| out_16 | * | — |
| out_17 | * | — |
| out_18 | * | — |
| out_19 | * | — |
| out_20 | * | — |
| out_21 | * | — |
| out_22 | * | — |
| out_23 | * | — |
| out_24 | * | — |
| out_25 | * | — |
| out_26 | * | — |
| out_27 | * | — |
| out_28 | * | — |
| out_29 | * | — |
| out_30 | * | — |
| out_31 | * | — |
| out_32 | * | — |
| out_33 | * | — |
| out_34 | * | — |
| out_35 | * | — |
| out_36 | * | — |
| out_37 | * | — |
| out_38 | * | — |
| out_39 | * | — |
| out_40 | * | — |
| out_41 | * | — |
| out_42 | * | — |
| out_43 | * | — |
| out_44 | * | — |
| out_45 | * | — |
| out_46 | * | — |
| out_47 | * | — |
| out_48 | * | — |
| out_49 | * | — |
| out_50 | * | — |
| out_51 | * | — |
| out_52 | * | — |
| out_53 | * | — |
| out_54 | * | — |
| out_55 | * | — |
| out_56 | * | — |
| out_57 | * | — |
| out_58 | * | — |
| out_59 | * | — |
| out_60 | * | — |
| out_61 | * | — |
| out_62 | * | — |
| out_63 | * | — |