Cloud Checkpoint Loader
The loader that loads nothing — and that's the whole point
- model
- clip
- vae
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 forcheckpoints,loras,vae,diffusion_models,text_encoders, andclip_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_nameshows 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_. Editconfig.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.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| ckpt_name | COMBO | 1 options: <run Cloud List Models (checkpoints) to populate> |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| model | CLOUD_MODEL | — |
| clip | CLOUD_CLIP | — |
| vae | CLOUD_VAE | — |