PixlStash CLIP Loader
One CLIP loader to replace both of ComfyUI's
- clip
Text encoders are the boring, load-bearing part of a workflow - no one shares screenshots of them, but without the right one your prompt encodes to nothing usable. If you run PixlStash, the self-hosted image manager from Pikselkroken, this node is how you load text encoders off its model shelf: one node that quietly replaces both of ComfyUI's built-ins.
Why ComfyUI needs two nodes and this doesn't
ComfyUI ships two separate loaders - CLIPLoader for a single encoder, DualCLIPLoader for the two that Flux, SD3 and HiDream need (clip-l beside a T5 or a Llama). It splits them because each takes its filenames off a dropdown widget, and a node can't grow widgets at will. The PixlStash CLIP Loader gets both files off the same Browse grid, so the second slot is simply optional. One node, one comfy.sd.load_clip call, one or two files.
The Browse text encoders… button opens the shelf grid. What gets written into the node is clip_sha256 - and, if you pick a second encoder, clip_sha256_2. The only input you actually choose yourself is type, the model family you're building for: stable_diffusion (one file), sdxl (one), flux / sd3 (two), hidream (two), and a couple dozen more. The list is read straight off ComfyUI's own CLIPType at load time rather than copied into the node, so it never lags a release - whatever your ComfyUI understands, this dropdown offers.
Two files get cached under <your first text_encoders directory>/pixlstash/<sha256>.safetensors, verified against their SHA-256 before anything is written, and reused from there on subsequent queues. On a machine that shares PixlStash's filesystem, the files are used where they lie instead.
Install and setup
cd ComfyUI/custom_nodes
git clone https://github.com/Pikselkroken/ComfyUI-PixlStash.git
Or search ComfyUI-PixlStash in ComfyUI Manager. Dependencies are requests and Pillow, both already present - nothing heavy, no model downloads. Restart, then put your PixlStash URL and token under Settings > PixlStash. The shelf routes are OWNER_ONLY, so an owner token is required here; the resource-scoped share token that works for the Picture Loader will 403. Multi-user ComfyUI isn't supported.
Where people get burned
- The wrong
typeis a silent trap. Get the model family wrong and the load either fails or behaves oddly. Set it to the family you're building for, and remember the second slot for anything that takes a pair. - An unknown
typefalls back tostable_diffusion. That's deliberate - a workflow saved against a newer ComfyUI still opens instead of failing validation - but it means a stale workflow can quietly load the wrong encoder. If output looks off after upgrading, checktype. - Fetching needs the model-shelf server (PixlStash v1.10+ for the routes that serve file bytes). On an older server it only works when both machines share a filesystem.
If you don't run PixlStash, ignore this node entirely - ComfyUI's own CLIPLoader / DualCLIPLoader do the same job with a dropdown. This one only pays off when your text encoders live on the shelf.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| clip_sha256 | STRING | Written by the Browse button — the SHA-256 of the text encoder on the shelf. | |
| type | COMBO | stable_diffusion | The model family the encoder is being loaded for. sd: clip-l · sdxl: clip-l + clip-g · flux/sd3: clip-l + t5 · hidream: clip-l + llama. |
| clip_sha256_2opt | STRING | Optional second encoder, for the models that take a pair. Leave empty for SD and SDXL. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| clip | CLIP | The CLIP, for a text encode. |