Icy DiffControlNetLoader
The ControlNet loader for folder-based files
- model
- CONTROL_NET
Yes, that's another auto-generated wrapper - IcyDiffControlNetLoader is ComfyUI-IcyHider's Icy subclass of the core DiffControlNetLoader, same behavior, renamed class so the privacy extension can hide it. If you've read the IcyControlNetLoader article, you know the drill.
The difference between the two loaders is the format they accept. Plain ControlNetLoader takes a single-file .safetensors ControlNet. DiffControlNetLoader loads diffusers-format ControlNets - model folders with subdirectories instead of one big file. It exists for people whose ControlNet came as a directory (common on HuggingFace for newer or experimental models), and it has an extra input for that reason:
- model (MODEL) - the base diffusion model the ControlNet will plug into. The loader uses it to figure out the ControlNet's architecture, since diffusers-format files don't always self-describe cleanly.
- control_net_name (enum) - the folder or file, picked from
ComfyUI/models/controlnet/.
Output: a single CONTROL_NET, fed into ControlNetApply like any other.
When to actually use it
Honestly? Rarely, unless your ControlNet is a folder. The single-file .safetensors format is the default for the overwhelming majority of ControlNets people download for ComfyUI - union models, classic SD 1.5 sets, Flux unions, all ship as one file and load fine through the plain loader. You reach for DiffControlNetLoader when a HuggingFace repo you grabbed is structured as a diffusers directory tree (typically config.json plus weight files in subfolders) rather than a single pytorch_model.safetensors.
One real quirk to remember: because it takes a model input, this loader is a per-architecture tool. The ControlNet you load through it must be compatible with the base model you pass in. Pair an SDXL ControlNet with an SD 1.5 checkpoint and you'll get a confusing load error or silent nonsense - the loader is doing architecture detection, not validation.
Installing it
cd ComfyUI/custom_nodes
git clone https://github.com/icekiub-ai/ComfyUI-IcyHider
Restart, or use ComfyUI Manager (search "IcyHider"). No pip dependencies, no models bundled.
Common issues
- Missing node in shared workflows - install the pack or swap in core
DiffControlNetLoader. - "Wrong architecture" errors. You passed a ControlNet and a base model that don't match. Match them up and the loader stops complaining.
- Name missing from the dropdown. Folder-based ControlNets need to sit in
models/controlnettoo, and ComfyUI must have been restarted after you placed them.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | — | |
| control_net_name | COMBO | 0 options: |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| CONTROL_NET | CONTROL_NET | — |