A streamlined and feature-rich RunPod template for ComfyUI with an enhanced user interface, model management, and custom nodes.
- Modern, Clean UI - Intuitive interface with tabbed sections and responsive design
- Real-time Log Viewer - Docker-style formatted logs with auto-scroll functionality
- Model Management - Download models from Civitai, Hugging Face, and Google Drive
- Pre-installed Custom Nodes - Extensive collection of the most popular custom nodes
- One-click Access - Direct links to ComfyUI and JupyterLab interfaces
- Output Download - Quickly download all your generated images in one click
- Select this template from the RunPod template library
- Choose your desired GPU type (recommended at least 24GB VRAM for optimal performance)
- Start your pod
- Access the Dashboard at port 8189 from your pod's Connect tab
The interface consists of several key sections:
- Top Controls - Access links to ComfyUI, JupyterLab, and output downloads
- Pre-installed Section - View all custom nodes and models included in the template
- Logs Section - Monitor the ComfyUI logs in real-time with auto-scroll
- Model Downloaders - Download additional models from popular repositories
- Checkpoints
- VAE
- LoRA
- UNet
- Diffusion Models
- Text Encoders
- Upscale Models
- CLIP
- ControlNet
- CLIP Vision
- IPAdapter
- Style Models
- Navigate to the Civitai downloader tab
- Enter the model URL from Civitai
- Add your Civitai API key (optional)
- Select the appropriate model type
- Click "Download Model"
- Navigate to the Hugging Face downloader tab
- Enter the direct file URL from Hugging Face
- Add an access token (optional - only needed for gated or private repos)
- Select the appropriate model type
- Click "Download Model"
Set the HF_TOKEN environment variable on your pod to download gated or
private models. It is picked up by both the boot-time downloads driven by
models_config.json and the Hugging Face downloader tab, so you only need to
set it once. A token pasted into the downloader tab takes priority over the
environment variable for that one download.
Create a token at https://huggingface.co/settings/tokens with read access,
and accept the model's license on its Hugging Face page first - a token alone
does not grant access to a gated repo you have not been approved for.
The token is only ever sent to huggingface.co URLs, never to Civitai, Google
Drive, or any other host in your config, and it is stripped out of logs and the
dashboard's error messages.
Note that a token controls access, not bandwidth - it will not make public models download any faster.
- Navigate to the Google Drive downloader tab
- Enter the Google Drive URL or file ID
- Select the appropriate model type
- Optionally specify a custom filename
- Click "Download Model"
Boot-time downloads pick a backend per URL:
| URL | Backend | Why |
|---|---|---|
huggingface.co/<repo>/resolve/... |
huggingface_hub |
Uses Xet where the repo has it |
| everything else | aria2c |
Unchanged |
Xet transfers content-defined chunks and reuses any it already holds. Two models
that mostly overlap - different variants of the same base, say - cost the second
one only its differing chunks instead of a second full download. aria2c talks to
the plain LFS CDN and gets none of that. The client also opens far fewer
connections per file, which matters because the aria2c path is held at -x 4
to stay under Hugging Face's rate limiting.
If the client fails for any reason the download falls back to aria2c, so an unavailable or non-Xet repo behaves exactly as before.
| Variable | Default | Purpose |
|---|---|---|
USE_HF_XET |
true |
Set false to send everything through aria2c |
HF_HOME |
/workspace/.cache/huggingface |
Keeps the chunk cache on the volume so it survives restarts |
HF_XET_CHUNK_CACHE_SIZE_BYTES |
34359738368 (32 GiB) |
The setting that decides whether dedup fires. Chunks shared between two models are only reused while they are still cached, so this has to exceed the size they share. Lower it if disk is tight - dedup just stops helping |
HF_XET_HIGH_PERFORMANCE |
1 |
Higher concurrency inside the client |
HF_TOKEN applies here too, and gated repos need it just as they do on the
aria2c path.
On RunPod the dashboard builds its Open ComfyUI and Open JupyterLab
links from RUNPOD_POD_ID, and nothing needs configuring.
Elsewhere it falls back to the hostname you reached the dashboard on plus the
container ports, 8188 and 8888. That is correct for local Docker and for an
SSH tunnel, but wrong on hosts that publish containers on randomly assigned
ports, such as Vast.ai - the dashboard has no way to learn which external port
maps to 8188.
Set these when that is the case:
| Variable | Example |
|---|---|
COMFYUI_PUBLIC_URL |
http://63.12.4.9:40001 |
JUPYTER_PUBLIC_URL |
http://63.12.4.9:40002 |
Either one may be set on its own; whichever is left unset keeps the default
behaviour. A bare host:port is accepted and assumed to be http://.
This template comes with the following custom nodes pre-installed:
- ComfyUI-Manager
- ComfyUI-Impact-Pack
- ComfyUI_essentials
- ComfyUI-Inspire-Pack
- comfyui_controlnet_aux
- DZ-FaceDetailer
- ComfyUI_IPAdapter_plus
- ComfyUI_UltimateSDUpscale
- ComfyUI-VideoHelperSuite
- comfyui-inpaint-nodes
- ComfyUI-KJNodes
- ComfyUI-GGUF
- rgthree-comfy
- ComfyUI_Custom_Nodes_AlekPet
- ComfyUI-Gemini-API
- ComfyUI-RED-UNO
- Bjornulf_custom_nodes
- ComfyUI-Custom-Scripts
To back up your work:
- Use the "Download Outputs" button to get generated images
- For workflows, save them through the ComfyUI interface
skills/comfy-agent/ is an agent skill plus a dependency-free Python CLI that lets Claude Code,
Codex, Cursor and similar agents run ComfyUI workflows on this pod or on a local ComfyUI.
cp -r skills/comfy-agent ~/.claude/skills/comfy-agent # or ~/.agents/skills/ for other runtimes
export COMFY_URL=https://<pod-id>-8188.proxy.runpod.net
python3 ~/.claude/skills/comfy-agent/scripts/comfy_agent.py doctorWorkflows must be exported from ComfyUI with Workflow > Export (API). See skills/comfy-agent/SKILL.md.
- ComfyUI by comfyanonymous
- All custom node developers for their valuable contributions
- RunPod.io for the GPU cloud infrastructure
For more information, visit PromptAlchemist on Facebook.