Config Pipe
Bundle your sampler settings down one wire, and kill the cable spaghetti
- config_pipe
- model
- clip
- vae
- positive
- negative
- latent
- image
- CONFIG_PIPE
- MODEL
- CLIP
- VAE
- POSITIVE
- NEGATIVE
- LATENT
- IMAGE
- STEPS
- CFG
- SAMPLER
- SCHEDULER
ConfigPipe is the other half of the Checkpoint Automatic Config pack, and to be clear about what it is: it doesn't load anything and it doesn't sample anything. It's a wiring node. It gathers your checkpoint config - and optionally the model, CLIP, VAE, conditioning, latent, and image - into a single CONFIG_PIPE, then lets you read any of those values back out anywhere else in the graph. It's the same bus pattern you'll know from packs like rgthree's Context nodes or the "power pipe" crowd, but scoped to this pack's checkpoint-config idea: the sampler recipe rides down one wire instead of trailing across the canvas.
How it works
Every input is optional, and every one is set to accept wires only - no typing values in. You feed it an existing CONFIG_PIPE and/or individual values, and for each slot it does the obvious thing: your supplied value wins, otherwise it falls back to whatever the incoming pipe carries, otherwise None. It then outputs the merged pipe plus each value on its own port, so you can tap off SAMPLER or CFG anywhere downstream without dragging a second wire.
The inputs, from the node's schema: config_pipe, model, clip, vae, positive, negative, latent, image, steps, cfg, sampler, scheduler. The outputs mirror that list - CONFIG_PIPE plus each of the eleven values individually.
The pattern it's built for
The natural setup is its sibling node doing the loading, then everything worth carrying joins the pipe:
CheckpointAutomaticConfig→STEPS,CFG,SAMPLER,SCHEDULER→ConfigPipe.- The
CONFIG_PIPEoutput travels around your workflow as one unit. - Where a
KSamplerneeds the sampler, tap the pipe'sSAMPLERoutput instead of running another wire across the graph.
That's the whole trick: the recipe stays in one place, and any branch of the graph can reach it.
Gotchas
Outputs can be None. If a slot isn't fed and the incoming pipe doesn't have it either, that output is None - connect it to a required input like a KSampler's steps and you'll get an error. Feed everything you actually use. Related: because all inputs are wire-only, there are no dropdowns on this node - you can't type a sampler name, it has to come from a wire (which is exactly why the pack pairs it with the loader's SAMPLER output). And on its own it does absolutely nothing: no CONFIG_PIPE, no outputs worth wiring, no image. It's the organizing layer, not a feature.
Installing it
Same pack as CheckpointAutomaticConfig. ComfyUI Manager → search "Checkpoint Automatic Config", or:
cd ComfyUI/custom_nodes
git clone https://github.com/mech-tools/comfyui-checkpoint-automatic-config
Then restart. No extra dependencies, no model downloads.
Who this is for
If you build tidy graphs and want the sampler recipe to travel as one unit, this is a nice little organizer. If wire spaghetti never bothered you, skip it - the stock loader plus a KSampler does the same job with two extra wires. It's a utility, not an upgrade.
Inputs (12)
| Name | Type | Default | Description |
|---|---|---|---|
| config_pipeopt | CONFIG_PIPE | — | |
| modelopt | MODEL | — | |
| clipopt | CLIP | — | |
| vaeopt | VAE | — | |
| positiveopt | CONDITIONING | — | |
| negativeopt | CONDITIONING | — | |
| latentopt | LATENT | — | |
| imageopt | IMAGE | — | |
| stepsopt | INT | — | |
| cfgopt | FLOAT | — | |
| sampleropt | COMBO | 34 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +28 | |
| scheduleropt | COMBO | 9 options: normal, karras, exponential, sgm_uniform, simple, ddim_uniform, +3 |
Outputs (12)
| Name | Type | Description |
|---|---|---|
| CONFIG_PIPE | CONFIG_PIPE | — |
| MODEL | MODEL | — |
| CLIP | CLIP | — |
| VAE | VAE | — |
| POSITIVE | CONDITIONING | — |
| NEGATIVE | CONDITIONING | — |
| LATENT | LATENT | — |
| IMAGE | IMAGE | — |
| STEPS | INT | — |
| CFG | FLOAT | — |
| SAMPLER | euler,euler_cfg_pp,euler_ancestral,euler_ancestral_cfg_pp,heun,heunpp2,dpm_2,dpm_2_ancestral,lms,dpm_fast,dpm_adaptive,dpmpp_2s_ancestral,dpmpp_2s_ancestral_cfg_pp,dpmpp_sde,dpmpp_sde_gpu,dpmpp_2m,dpmpp_2m_cfg_pp,dpmpp_2m_sde,dpmpp_2m_sde_gpu,dpmpp_3m_sde,dpmpp_3m_sde_gpu,ddpm,lcm,ipndm,ipndm_v,deis,res_multistep,res_multistep_cfg_pp,res_multistep_ancestral,res_multistep_ancestral_cfg_pp,gradient_estimation,ddim,uni_pc,uni_pc_bh2 | — |
| SCHEDULER | normal,karras,exponential,sgm_uniform,simple,ddim_uniform,beta,linear_quadratic,kl_optimal | — |