DeBNDLer (Model Citizen)
One wire carrying your whole model stack — here's how to get it back
- bndl
- Model
- Clip
- VAE
- name_string
A "Model Citizen" is Shima's take on the checkpoint loader: it loads your checkpoint, CLIP, and VAE in one place and - in its Panel form - hands them out on a single modelcitizen.bndl wire instead of three or four separate ones. This DeBNDLer is what you use on the far side when you need those plain MODEL, CLIP, and VAE sockets for a standard KSampler, an upscaler, or any other node that wasn't built for Shima's bundling.
Mechanically it's the simplest member of the family: read a dict, pop three values, return them. The BNDL registry defines the modelcitizen bundle as model, clip, and vae, and the unpacker hands each to its own output along with the model's name string. If you've read the KB's plumbing doc on context objects, you already know the game - one wire in, typed sockets out, and the entire point is keeping big graphs readable without giving up compatibility.
The two inputs are the usual Shima pair: bndl (the Model Citizen bundle) and allow_external_linking (the island-scope override for Use Everywhere broadcasting; leave it off unless you mean it).
Outputs:
- Model (MODEL), Clip (CLIP), VAE (VAE) - exactly the three sockets a KSampler or AdvancedSampler needs.
- name_string (STRING) - the checkpoint name as a string. Genuinely useful: wire it into a filename or metadata node so your saved PNGs say which model made them, rather than only carrying it as invisible metadata.
Where people get confused: a Model Citizen DeBNDLer doesn't have a checkpoint dropdown. All the model-selection lives in the loader/Panel node upstream - this node is purely the unpacker, and if Model comes back None it means the bundle it was handed was empty, not that you picked a wrong model. Check the Model Citizen / ReBNDLer that built the bundle.
One more thing worth knowing, because it applies to the whole DeBNDL family and tripped people up for a while: Shima used to ship a single dynamic DeBNDLer with a type dropdown, and abandoned it because dynamic ports would silently drop their connections when you reloaded a workflow. These fixed per-bundle nodes are the stable design. Load an old workflow with the dynamic version and you'll likely be re-wiring it.
Installing the pack: ComfyUI Manager (search "Shima"), or
cd ComfyUI/custom_nodes
git clone https://github.com/KDB-USJP/shima_wf
then restart ComfyUI. This node needs no model files itself - the pack's first-run install.py may auto-clone ComfyUI-Impact-Pack and cg-use-everywhere for the Island system at large, but a lone Model Citizen DeBNDLer works fine on its own.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| bndl | BNDL | Model Citizen BNDL | |
| allow_external_linking | BOOLEAN | false | — |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| Model | MODEL | — |
| Clip | CLIP | — |
| VAE | VAE | — |
| name_string | STRING | — |