Nodes/ComfyUI-MDSNodes/Load Checkpoint Hub Pro
ComfyUI Node

Load Checkpoint Hub Pro

The One Node That Loads a Checkpoint and Hands You the Whole Plan

By MarwanDSAI·Created about a month ago·Updated a day ago· 1
Load Checkpoint Hub Pro
    • MODEL
    • CLIP
    • VAE
    • steps
    • step_refiner
    • cfg
    • ckpt_name
    • sampler_name
    • scheduler
    • denoise
    • positive_prompt
    • negative_prompt
    • metadata
    ckpt_name
    steps20
    step_refiner10
    cfg7.0
    sampler_name
    scheduler
    denoise1.00
    positive_prompt
    negative_prompt
    metadata

    Load Checkpoint Hub Pro is the flagship of this pack and the one node you'd build the whole workflow around. It does what a Load Checkpoint does - loads a checkpoint and hands you MODEL, CLIP, and VAE - and then keeps going: it also carries the sampling recipe (steps, refiner steps, CFG, sampler, scheduler, denoise), your positive and negative prompts, and a metadata string, all out of the same node.

    One node, thirteen outputs, the entire generation plan. You wire it to a KSampler and a couple of CLIP Text Encode nodes, and you're done - the checkpoint, the settings, and the prompts all trace back to a single place you edit in one go.

    How it works

    The load itself is comfy.sd.load_checkpoint_guess_config() on the selected file, with the VAE and CLIP extracted and your embeddings directory pointed at so your trained embeddings resolve. "Guess config" is the important bit: it sniffs the checkpoint and loads the right architecture, so SD 1.5, SDXL, and the rest all work through the same node without you picking a config. The sampler and scheduler dropdowns are pulled live from comfy.samplers, and the prompt fields are multiline with dynamic prompts enabled.

    The load also happens on every queue, so if you swap the checkpoint in the dropdown and hit run, you get the new one - no bypass-and-reload dance.

    The outputs that matter

    • MODEL, CLIP, VAE - the three loaded components. MODEL goes to the sampler, CLIP to your text encoders, VAE to encode/decode.
    • steps, step_refiner, cfg, sampler_name, scheduler, denoise - the recipe, combo-typed where a combo socket is expected so they click straight into a KSampler or SamplerSelect.
    • ckpt_name - the filename as a combo slot, if a downstream loader needs to know which checkpoint ran.
    • positive_prompt, negative_prompt - plain STRING outputs. Note they're strings, not conditioning: you still run them through CLIP Text Encode before they reach the sampler. The hub carries your text; it doesn't encode it.
    • metadata - a single-line string for workflow tags, passed through to wherever you keep records.

    That last trio is the quiet killer feature for a model-testing workflow: your checkpoint name, prompts, and metadata all travel as data, so you can log exactly what produced each render without parsing it out of the image afterwards.

    How this compares to a context bundle

    If you've used rgthree's Context, you know the appeal of one wire carrying everything. This node is the explicit-wire version of that idea - every value gets its own socket instead of riding inside a bundle. More cables on screen, but nothing hidden inside a payload, which means no "which version of the value is in there" debugging. The KB's own guidance: explicit wires while you're actively iterating, context bundles when wire count becomes the actual problem. This node sits firmly on the explicit side, and for a workflow you're building and tuning, that's usually where you want to be.

    Installing it

    Part of MarwanDSAI/comfyui-mdsnodes. ComfyUI Manager: search "ComfyUI-MDSNodes", install, restart. Manual:

    cd ComfyUI/custom_nodes
    git clone https://github.com/MarwanDSAI/comfyui-mdsnodes
    

    Restart, and no pip install - the pack's requirements.txt is empty and it declares zero dependencies.

    Gotchas

    Two things to keep straight. First, this node expects a checkpoint - the dropdown lists models/checkpoints, so a separate UNET/diffusion file won't appear (that's Load Diffusion Model Hub Pro's job, and note it does not output CLIP or VAE, so the two hubs are not drop-in swaps). Second, the version numbers tell a story: the README still says v1.0.13 while the package is at 2.0.0 and ships extra nodes the README doesn't mention - if the docs seem behind the menu, the code is ahead of the README, and the menu is what you should trust.

    CategoryMDSNodes/sampling

    Inputs (10)

    NameTypeDefaultDescription
    ckpt_nameCOMBOSelect the base checkpoint diffusion model file from your models/checkpoints folder.
    stepsINT201–10000The total number of sampling/denoising steps for base generation.
    step_refinerINT100–10000Target step count for refiner passes or the step transition threshold for multi-pass pipelines.
    cfgFLOAT7.00–100Classifier-Free Guidance (CFG) scale. Controls how strictly the model adheres to your prompt.
    sampler_nameCOMBOThe mathematical sampling algorithm used to generate or denoise the image (e.g., euler, dpmpp_2m).
    schedulerCOMBOThe noise scheduling rate/curve across the steps (e.g., normal, karras, sgm_uniform, simple).
    denoiseFLOAT1.000–1Denoise strength. Set to 1.0 for initial txt2img generation, or 0.20-0.60 for img2img / upscaling.
    positive_promptSTRINGEnter positive prompt text. Expanding the node will enlarge this text box.
    negative_promptSTRINGEnter negative prompt text. Expanding the node will enlarge this text box.
    metadataSTRINGSingle-line metadata text or workflow tags to pass downstream.

    Outputs (13)

    NameTypeDescription
    MODELMODELThe loaded diffusion model.
    CLIPCLIPThe loaded CLIP model for text encoding.
    VAEVAEThe loaded VAE model for image encoding/decoding.
    stepsINTBase generation step count (INT).
    step_refinerINTRefiner step count or threshold (INT).
    cfgFLOATClassifier-Free Guidance scale (FLOAT).
    ckpt_nameThe selected checkpoint filename (COMBO slot for external Checkpoint Loaders).
    sampler_nameeuler,euler_cfg_pp,euler_ancestral,euler_ancestral_cfg_pp,heun,heunpp2,exp_heun_2_x0,exp_heun_2_x0_sde,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_2m_sde_heun,dpmpp_2m_sde_heun_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,gradient_estimation_cfg_pp,er_sde,seeds_2,seeds_3,sa_solver,sa_solver_pece,ddim,uni_pc,uni_pc_bh2Sampler algorithm name (COMBO slot for KSampler / SamplerSelect).
    schedulersimple,sgm_uniform,karras,exponential,ddim_uniform,beta,normal,linear_quadratic,kl_optimalScheduler curve type (COMBO slot for KSampler / BasicScheduler).
    denoiseFLOATDenoise strength multiplier (FLOAT).
    positive_promptSTRINGPositive prompt string (connect to CLIP Text Encode).
    negative_promptSTRINGNegative prompt string (connect to CLIP Text Encode).
    metadataSTRINGPassthrough metadata string.