Nodes/ComfyUI-CloudAPI-worker/Cloud Checkpoint Loader
ComfyUI Node

Cloud Checkpoint Loader

The loader that loads nothing — and that's the whole point

By Dobidop·Created 5 months ago·Updated 5 months ago· 0
Cloud Checkpoint Loader
    • model
    • clip
    • vae
    ckpt_name

    Cloud Checkpoint Loader is the first node you'll drop into most cloud workflows, and the name is a white lie: it loads nothing. No checkpoint downloads to your machine, no VRAM gets touched, no tensors exist. Pick a checkpoint name and you get three lightweight handles back - CLOUD_MODEL, CLOUD_CLIP, CLOUD_VAE - that point at a slot in a workflow JSON that hasn't even been submitted yet. The actual model file sits on Comfy Cloud's servers, where the real load happens when the job runs.

    That's the core trick of this whole pack. Every node is assembling a partial workflow dictionary, and each output is a reference into it (["n_3f9a2b1c0d", 0] style pointers plus the dict itself). Cloud Checkpoint Loader writes a CheckpointLoaderSimple node into that dict and returns three handles for its three outputs. Only when you reach a terminal node - Cloud Fetch Images, Cloud VAE Decode, Cloud Save Video - does the whole thing get POSTed to /api/prompt and polled to completion (queued_waiting → allocated → preparing → executing → success). Your GPU does zero work the entire time.

    Why you'd reach for it

    You want a model that won't fit - or you just can't be bothered - to run locally. A 14B video model, a workflow on a machine with 6GB of VRAM, or a checkpoint you only need once. This node is the entry point for any graph-style cloud chain: a checkpoint loader upstream, prompt encoding and sampling in the middle, a terminal downstream.

    The input and outputs that matter

    • ckpt_name - a dropdown of cloud-side checkpoints. It's not hardcoded; the list is fetched from the cloud API and cached in config.json, prefetched on startup for checkpoints, loras, vae, diffusion_models, text_encoders, and clip_vision.
    • Outputs: model (CLOUD_MODEL) → Cloud KSampler / Cloud KSampler Advanced; clip (CLOUD_CLIP) → Cloud CLIP Text Encode (or feed it to a Dual loader's sibling path for SDXL-style workflows); vae (CLOUD_VAE) → Cloud VAE Decode when you're ready to go back to pixels.

    If you'd rather not assemble the graph at all, the "Quick" Cloud KSampler wraps the whole checkpoint→encode→sample→decode chain in a single node - this loader exists for when you want the pieces.

    How to install

    cd ComfyUI/custom_nodes
    git clone https://github.com/Dobidop/ComfyUI-CloudAPI-worker
    

    Copy config.json.example to config.json in the pack folder, paste an API key from https://platform.comfy.org/profile/api-keys, restart ComfyUI. Or install via ComfyUI Manager (search the pack title). Dependencies are only requests, Pillow, and safetensors - there's no model to download, ever.

    Common issues

    • Empty dropdown. If ckpt_name shows only <run Cloud List Models (checkpoints) to populate>, the cache hasn't been filled. Run a Cloud List Models node with folder=checkpoints, then restart ComfyUI. The startup prefetch runs in a daemon thread and only refreshes caches older than 24 hours, so a fresh install may start empty.
    • "Cloud API key not set." You skipped step two, or the key still starts with PASTE_. Edit config.json.
    • It's a proof of concept. The author is upfront that this is an experiment ("very hacked together"), so treat it as such - great for image and video diffusion chains, but the README's own missing-pieces list (ControlNet, CLIP Vision, cloud-side video encoding) is where you'll hit walls.

    One final reminder: this is an API-wrapper node holding your API key, the exact shape of thing that makes a credential-stealing node hard to spot. Clone from the official GitHub and glance at the code before you run it.

    Categorycloud

    Inputs (1)

    NameTypeDefaultDescription
    ckpt_nameCOMBO1 options: <run Cloud List Models (checkpoints) to populate>

    Outputs (3)

    NameTypeDescription
    modelCLOUD_MODEL
    clipCLOUD_CLIP
    vaeCLOUD_VAE