Nodes/Shima/ReBNDLer (Latent Maker)
ComfyUI Node

ReBNDLer (Latent Maker)

Pack your starting latent with its seed and size

By KDB-USJP·Created 6 months ago·Updated 6 months ago· 2
ReBNDLer (Latent Maker)
  • latent
  • latentmaker.bndl
allow_external_linkingfalse
s33d
width
height

The ReBNDLer (Latent Maker) packages everything a sampler needs to start - the empty latent, the seed, and the target width/height - into a single latentmaker.bndl wire. It's the bundle equivalent of the pack's Latent Maker node, but standalone: you build the latent with your own Empty Latent (or a Shima Latent Maker), then pack it up for the one-wire sampler input.

The interesting part is what gets bundled alongside the latent. s33d (the seed, spelled that way because the pack avoids ComfyUI's automatic control_after_generate widget), width, and height all ride along in the bundle. So a sampler that consumes latentmaker.bndl can know not just what latent to start from but which seed and dimensions produced it - which is exactly the kind of context you want if you're logging runs or reproducing images.

How it works

All four inputs are optional, and the node returns a dict:

{"bndl_type": "latentmaker",
 "latent": latent, "s33d": s33d,
 "width": width, "height": height}

The latent input is the actual LATENT tensor. s33d, width, and height are INT inputs marked forceInput, meaning they arrive as wires rather than widgets - you connect a seed source and dimension nodes, or convert widget values to inputs, rather than typing them inline. Leave any of them unwired and the bundle carries None; the DeBNDLer hands back whatever was in there.

The inputs that matter

  • latent - the one that actually matters for sampling.
  • s33d - the seed, if you want the sampler to use and report the same seed that generated the latent.
  • width / height - the dimensions, mostly metadata but useful for validation and logging.

Where it fits

latentmaker.bndl feeds a Shima Sampler's latentmaker.bndl input, overriding the sampler's individual latent wire, or a DeBNDLer (Latent Maker) to unpack back to latent / s33d / width / height for standard nodes. It's also the output style used by the pack's Panel Latent Maker, so if you've seen panels collapse a whole latent setup into one socket, this is the node that does the packing when you're not using panels.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/KDB-USJP/shima_wf.git Shima
pip install -r requirements.txt

Restart, then Shima/Routing → ReBNDLer (Latent Maker). ComfyUI Manager: search "Shima". First boot auto-installs ComfyUI-Impact-Pack and cg-use-everywhere if missing - the Use Everywhere dependency, expected.

Common issues

Because s33d, width, and height are forceInput wires, a brand-new node sits there with three empty sockets and no obvious way to type values - you have to connect a seed source and dimension nodes (or convert widgets to input). If the sampler downstream reports a missing seed, that's the wiring, not the node. And remember the snapshot rule that applies to every bundle: whatever seed/size you pack is what the sampler sees, even if you change dimensions elsewhere afterward.

CategoryShima/Routing

Inputs (5)

NameTypeDefaultDescription
allow_external_linkingBOOLEANfalse
latentoptLATENT
s33doptINT
widthoptINT
heightoptINT

Outputs (1)

NameTypeDescription
latentmaker.bndlBNDL