Image Info Context
The node that rebuilds your whole generation recipe
- image_info
- model
- refiner
- detailer
- lora_stack
- clip
- size
- extras
- base_sampler_params
- image_info
- model
- refiner
- detailer
- lora_stack
- clip
- vae
- positive
- negative
- steps
- sampler
- scheduler
- cfg
- seed
- width x height
- extras
- base_sampler_params
Image Info Context is the hub of this pack - the node everything else orbits. It takes the pack's image_info bundle and rebuilds it from whatever is actually connected, then hands back a fully-updated image_info plus every major field on its own output socket. Wire in a model, a prompt, a sampler setting, or a whole existing bundle, and out comes the complete recipe, consistent and ready to save, sample, or pass on.
The core idea: reflect only what's connected
Unlike a normal node with fixed inputs, Image Info Context is a big optional-input menu - image_info, model, refiner, detailer, lora_stack, clip, vae, positive, negative, steps, sampler, scheduler, cfg, seed, size, extras, and base_sampler_params. Whatever you connect updates the corresponding field of the output image_info; whatever you leave unconnected simply isn't touched. It's the "carry a bundle, patch the pieces you care about" pattern that makes reusable workflows possible - you start from a loaded or defaulted image_info and override a couple of settings without rebuilding everything.
The three behaviors worth knowing
- LoRA extraction from the prompt. When
positiveis connected, the node parses<lora:name:weight>tags out of the prompt text, removes them from the positive, and feeds the extracted stack intolora_stack. So you can write your LoRAs inline in the prompt, A1111-style, and have them come out the other side as a real LoRA stack - matching how metadata and prompts traditionally coexist. - Extras merging. The
extrasinput merges into the existingimage_info.extras, and on duplicate keys the input-side value wins. Your custom values layer onto whatever the recipe already carried. base_sampler_params. The node outputs a sampler-params bundle with a fixeddenoise=1.0, designed to connect straight to downstream sampling nodes. It's the "standard fresh pass" recipe, pre-bundled.
Outputs
The output side mirrors the inputs: image_info plus model, refiner, detailer, lora_stack, clip, vae, positive, negative, steps, sampler, scheduler, cfg, seed, width x height, extras, and base_sampler_params. So this one node is also a splitter - it can be the single place a workflow pulls "the positive prompt," "the seed," and "the size" from a bundle, instead of dragging individual wires from five different sources.
Where it sits in a workflow
Typical spine: Image Reader (or Image Info Defaults) → Image Info Context → sampling. Load a reference image's recipe, override the model and positive via the Context node, and sample with the pack's Sampler Custom or Load New Model nodes. Because the updated image_info is what Image Saver writes to disk, everything you patched is what gets saved - the metadata always reflects the run you actually made, not the one you planned.
Installing it
Ships in the ComfyUI-Info-Prompt-Toolkit pack. Via ComfyUI Manager - search "Info Prompt Toolkit" - or:
cd ComfyUI/custom_nodes
git clone https://github.com/kinorax/comfyui-info-prompt-toolkit.git
cd comfyui-info-prompt-toolkit
pip install -r requirements.txt
Restart ComfyUI. No model downloads. Small single-author pack (GPL-3.0), modest footprint - but if you adopt the pack at all, this is the node you'll build around.
Inputs (17)
| Name | Type | Default | Description |
|---|---|---|---|
| image_infoopt | IPT-IMAGEINFO | — | |
| modelopt | IPT-Model | — | |
| refineropt | IPT-Model | — | |
| detaileropt | IPT-Model | — | |
| lora_stackopt | IPT-LoraStack | — | |
| clipopt | IPT-Clip | — | |
| vaeopt | STRING | — | |
| positiveopt | STRING | — | |
| negativeopt | STRING | — | |
| stepsopt | INT | — | |
| sampleropt | STRING | — | |
| scheduleropt | STRING | — | |
| cfgopt | FLOAT | — | |
| seedopt | INT | — | |
| sizeopt | IPT-Size | — | |
| extrasopt | IPT-ImageInfoExtras | — | |
| base_sampler_paramsopt | IPT-SamplerParams | — |
Outputs (17)
| Name | Type | Description |
|---|---|---|
| image_info | IPT-IMAGEINFO | — |
| model | IPT-Model | — |
| refiner | IPT-Model | — |
| detailer | IPT-Model | — |
| lora_stack | IPT-LoraStack | — |
| clip | IPT-Clip | — |
| vae | * | — |
| positive | STRING | — |
| negative | STRING | — |
| steps | INT | — |
| sampler | * | — |
| scheduler | * | — |
| cfg | FLOAT | — |
| seed | INT | — |
| width x height | IPT-Size | — |
| extras | IPT-ImageInfoExtras | — |
| base_sampler_params | IPT-SamplerParams | — |