Extensions/civitai-comfy-nodes
ComfyUI Extension

civitai-comfy-nodes

ComfyUI custom node pack exposing Civitai Orchestration recipe endpoints as generated nodes

By civitai·Created 2 months ago·Updated about a month ago· 42
civitai/civitai-comfy-nodes
Nodes170
On cloudLocal install
CategoryCivitai/Audio, Civitai
Stars42
Updatedabout a month ago

Nodes (170)

Civitai Ace Step Audio

Full songs from a prompt — ACE-Step music generation, no GPU needed

Civitai/Audio
Civitai Audio Captioning

Turn audio into text for training sets, without captioning it by hand

Civitai/Audio
Civitai Auth

The one node this whole pack runs on — your Civitai key, minus the pain

Civitai
Civitai Chat Completion

OpenAI-style chat completions with JSON, tools, and even image output — wired into your graph

Civitai/Text
Civitai Chat (Simple)

A chat LLM inside your graph without writing a line of JSON

Civitai/Text
Civitai ControlNet

Pick a preprocessor, wire an image, chain your way to structure

Civitai/Loaders
Civitai Embedding Selector

Textual-inversion embeddings for the cloud — no trigger word required

Civitai/Loaders
Civitai Image Background Removal

One image in, transparent PNG out

Civitai/Image
anima / comfy / createImage

Anima in the cloud — the anime model with actual prompt comprehension

Civitai/Image/anima/comfy
anima / comfy / createVariant

Anima variants from an existing image — same character, new pose, cloud-rendered

Civitai/Image/anima/comfy
boogu / base / createImage

Boogu-Image on the cloud — the surprise 2026 base that went head-to-head with Klein

Civitai/Image/boogu
boogu / edit / editImage

Boogu-Image as an editor — a sentence to change what's in the frame

Civitai/Image/boogu
boogu / turbo / createImage

Boogu Turbo — the 4-step draft machine, cloud-served

Civitai/Image/boogu
ernie / ernie / createImage

ERNIE-Image on the cloud — the layout-and-text specialist, minus the hype cycle

Civitai/Image/ernie
ernie / turbo / createImage

ERNIE Turbo — the fast 8-step variant, as a cloud node

Civitai/Image/ernie
flux1 / comfy / createImage

Pick a checkpoint, type a prompt, get an image

Civitai/Image/flux1/comfy
flux1 / comfy / createVariant

FLUX.1 variants from an existing image — img2img without the local model

Civitai/Image/flux1/comfy
flux2Dev / comfy / createImage

Flux 2 Dev — the model nobody could run locally, now just a node

Civitai/Image/flux2Dev/comfy
flux2Dev / comfy / editImage

Flux 2 Dev as an editor — change what's in a photo with a sentence

Civitai/Image/flux2Dev/comfy
hidream-o1 / HiDream-O1-Image / createImage

HiDream-O1 — the no-VAE, 8B pixel-space model, rendered on someone else's GPU

Civitai/Image/hidream-o1
hidream-o1 / HiDream-O1-Image-dev / createImage

HiDream-O1 without the 20GB download — and the 2048 default that tells you what you're in for

Civitai/Image/hidream-o1
hidream-o1 / HiDream-O1-Image-dev / editImage

Instruction editing, no mask required

Civitai/Image/hidream-o1
hidream-o1 / HiDream-O1-Image / editImage

The full 8B editor, 40 steps and all — for when dev isn't enough

Civitai/Image/hidream-o1
krea2 / comfy / base / createImage

Civitai's comfy/base node runs the API checkpoint, not the aligned open weights

Civitai/Image/krea2/comfy
krea2 / comfy / turbo / createImage

Eight steps and done — the cheap draft door into the 12B model

Civitai/Image/krea2/comfy
lens / normal / createImage

Civitai's mystery image model, 20 steps at cfg 4

Civitai/Image/lens
lens / turbo / createImage

Four steps at cfg 1 — the fastest draft this pack sells

Civitai/Image/lens
sd1 / comfy / createImage

The SD1.5 cloud node nobody needs — and the three reasons you might want it anyway

Civitai/Image/sd1/comfy
sd1 / comfy / createVariant

A variant node with a denoise knob and a required image

Civitai/Image/sd1/comfy
sdxl / comfy / createImage

The 1024px node that makes the 'no GPU' case for the pack

Civitai/Image/sdxl/comfy
sdxl / comfy / createVariant

CreateVariant at 1024px, image in and variant out

Civitai/Image/sdxl/comfy
krea2 / fal / createImage

Fal's API shape, with style references and a creativity slider

Civitai/Image/krea2/fal
maiImage / createImage

The thinnest node in the pack, and honestly that's fine

Civitai/Image/maiImage
maiImage / editImage

The whole API in two inputs — image in, sentence, image out

Civitai/Image/maiImage
qwen2 / createImage

Qwen2 / createImage, prompt expansion on by default

Civitai/Image/qwen2
qwen2 / editImage

The node where the mask died, billed by the edit

Civitai/Image/qwen2
flux1-kontext

The watermark-killer and character-consistency tool, minus the license scare

Civitai/Image/flux1-kontext
flux2 / createImage

The strongest image model you'll never have to fit in VRAM

Civitai/Image/flux2
flux2 / dev / createImage

The node with all the knobs, for when you want Flux 2 without the 24GB install

Civitai/Image/flux2
flux2 / dev / editImage

The one checkpoint that generates and edits, now with an image input

Civitai/Image/flux2
flux2 / editImage

The Civitai editImage node

Civitai/Image/flux2
flux2 / flex / createImage

Flux 2 flex text-to-image with no local GPU (and the dials to prove it)

Civitai/Image/flux2
flux2 / flex / editImage

Image-to-image editing without a local checkpoint

Civitai/Image/flux2
flux2 / klein / createImage

The cloud node that feels local

Civitai/Image/flux2
flux2 / klein / editImage

Hosted Flux 2 Klein editing with LoRAs and a negative prompt

Civitai/Image/flux2
gemini / 2.5-flash / createImage

Gemini 2.5 Flash text-to-image, a.k.a. the base Nano Banana, as a Comfy node

Civitai/Image/gemini
gemini / 2.5-flash / editImage

Give it a photo, get back a rewrite

Civitai/Image/gemini
google / imagen4

The create-only option with a negative prompt

Civitai/Image/google
google / nano-banana-2

The Google node that checks facts before drawing

Civitai/Image/google
google / nano-banana-pro

4K Gemini image generation, hosted

Civitai/Image/google
grok / createImage

The pack's least-restrictive create node

Civitai/Image/grok
grok / editImage

Hosted image editing from xAI's autoregressive model

Civitai/Image/grok
openai / dall-e-2 / createImage

The museum piece of the Civitai pack

Civitai/Image/openai
openai / dall-e-2 / editImage

The pack's only node with a real mask input

Civitai/Image/openai
openai / dall-e-3 / createImage

The last-gen classic with style and quality knobs

Civitai/Image/openai
openai / gpt-image-1.5 / createImage

OpenAI's current text-to-image, minus the key hassle

Civitai/Image/openai
openai / gpt-image-1.5 / editImage

The input_fidelity dial nobody else has

Civitai/Image/openai
openai / gpt-image-1 / createImage

The model that went viral, hosted

Civitai/Image/openai
openai / gpt-image-1 / editImage

The hidden mask input on OpenAI's first-gen image editor

Civitai/Image/openai
openai / gpt-image-2 / createImage

OpenAI's newest, and the one with real pixel controls

Civitai/Image/openai
openai / gpt-image-2 / editImage

Edit with gpt-image-2 from your ComfyUI graph — the model you'll never download

Civitai/Image/openai
anima / sdcpp / createImage

The natural-language anime model, no 2B download

Civitai/Image/anima/sdcpp
anima / sdcpp / createVariant

Re-render an image on Anima — plain-language restyle on the cloud

Civitai/Image/anima/sdcpp
flux1 / sdcpp / createImage

Flux.1 without the 24GB download — bring your own AIR stack

Civitai/Image/flux1/sdcpp
flux1 / sdcpp / createVariant

Re-render with the four-piece stack

Civitai/Image/flux1/sdcpp
flux1 / sdcpp / editImage

Edit a photo with Flux.1's full stack, without a GPU that can hold it

Civitai/Image/flux1/sdcpp
flux2Dev / sdcpp / createImage

Flux 2 Dev, the 50GB model you can finally run — because it runs on their machine

Civitai/Image/flux2Dev/sdcpp
flux2Dev / sdcpp / createVariant

Flux 2 Dev img2img without the 50GB download

Civitai/Image/flux2Dev/sdcpp
flux2Dev / sdcpp / editImage

Instruction-edit a photo with Flux 2 Dev, on Civitai's fleet

Civitai/Image/flux2Dev/sdcpp
flux2Klein / createImage

Pick your 4B or 9B, skip the download

Civitai/Image/flux2Klein
flux2Klein / createVariant

Restyle a picture with a 4B or 9B Flux 2

Civitai/Image/flux2Klein
flux2Klein / editImage

The cheap way to edit with Flux 2

Civitai/Image/flux2Klein
qwen / 20b / createImage

Qwen-Image, the 20B text-rendering champ, on Civitai's fleet

Civitai/Image/qwen
qwen / 20b / createVariant

Variant of a Qwen render, text included, on the cloud

Civitai/Image/qwen
qwen / 20b / editImage

Edit a picture with Qwen-Image's instruction following — and keep the text legible

Civitai/Image/qwen
sd1 / sdcpp / createImage

10,000 checkpoints, none of them on your disk

Civitai/Image/sd1/sdcpp
sd1 / sdcpp / createVariant

Restyle a picture on any SD 1.5 checkpoint — no downloads, no VRAM

Civitai/Image/sd1/sdcpp
sdxl / sdcpp / createImage

Your favorite checkpoint, rendered on Civitai's fleet

Civitai/Image/sdxl/sdcpp
sdxl / sdcpp / createVariant

Re-render any image on an SDXL checkpoint you don't even have locally

Civitai/Image/sdxl/sdcpp
zImage / base / createImage

Z-Image Base on the cloud — the 'SDXL 2.0' model, no 6B download

Civitai/Image/zImage
zImage / turbo / createImage

Paying Buzz to run the free model — Z-Image Turbo on Civitai's farm

Civitai/Image/zImage
seedream

Seedream, the closed model you can't run locally — as a Comfy node

Civitai/Image/seedream
wan / v2.2-5b / fal

Wan 2.2's small model — the one that fits on 8GB, in the cloud

Civitai/Image/wan
wan / v2.2 / fal

Wan 2.2 — the last open Wan, on someone else's GPU

Civitai/Image/wan
wan / v2.5 / fal / image-to-image

Wan 2.5 image-to-image — closed weights, open-ended editing

Civitai/Image/wan
wan / v2.5 / fal / text-to-image

Wan 2.5 — the first Wan you literally cannot run locally

Civitai/Image/wan
wan / v2.7 / fal / createImage

Wan 2.7 — the closed flagship, and the Buzz meter for the 'pro' tier

Civitai/Image/wan
wan / v2.7 / fal / editImage

Wan 2.7 edit — where the closed flagship actually earns its keep

Civitai/Image/wan
flux2-dev

Train a Flux 2 Dev LoRA without owning an RTX 6000

Civitai/Training/flux2-dev
flux2-dev-edit

Training a LoRA that edits — Flux 2 Dev edit, minus the 48GB card

Civitai/Training/flux2-dev-edit
flux-dev-fast

Flux dev fast — the trainer with the training wheels left on

Civitai/Training/flux-dev-fast
kohya

The entire kohya training UI, moved to the cloud

Civitai/Training/kohya
musubi

Musubi, the Wan trainer, without the Dockerfile

Civitai/Training/musubi
Civitai Image Upscaler

The cloud upscaler for people with no GPU to upscale on

Civitai/Image
Civitai LoRA Selector

Apply one LoRA straight from a Civitai URL

Civitai/Loaders
Civitai Media Captioning

Auto-captions without installing a VLM — Civitai's captioner node

Civitai/Text
Civitai Media Rating

Civitai's own moderation brain, exposed as a node

Civitai/Analysis
Civitai Model Selector

The one node that makes the rest of the Civitai pack make sense

Civitai/Loaders
meshy / imageTo3D

An image becomes a 3D mesh — Meshy, without installing anything 3D

Civitai/Misc/meshy
meshy / textTo3D

Prompt to a 3D mesh, the way the demos make it look

Civitai/Misc/meshy
Civitai Prompt Enhancement

An LLM that writes prompts the way each model actually wants them

Civitai/Text
Civitai Qwen Image Bench

Score your generated images against their prompts

Civitai/Analysis
omnivoice

One text box to speech — with optional voice cloning, no local model

Civitai/Audio/omnivoice
qwen3 / base

Your reference audio becomes the voice

Civitai/Audio/qwen3
qwen3 / customVoice

Qwen3 TTS with zero setup

Civitai/Audio/qwen3
qwen3 / voiceDesign

Describe a voice in words, get it speaking — no samples, no speaker list

Civitai/Audio/qwen3
ace_step_15

Train an ACE-Step music LoRA on Civitai's cloud — no local GPU required

Civitai/Training/ace_step_15
ace_step_15_xl

Pick base or SFT, let the cloud sweat

Civitai/Training/ace_step_15_xl
anima

Train an Anima LoRA on the cloud — the anime model that made people switch

Civitai/Training/anima
ai-toolkit / chroma

Cloud LoRA training for Chroma and friends

Civitai/Training/ai-toolkit
flux1

Flux.1 LoRA training on the cloud — dev or schnell, you pick

Civitai/Training/flux1
flux2klein

4B or 9B, plus an edit-LoRA toggle

Civitai/Training/flux2klein
qwen

Qwen-Image LoRA training on the cloud, with a version picker

Civitai/Training/qwen
ai-toolkit / sdxl

SDXL and SD 1.5 LoRA training on the cloud — the familiar dials, no GPU

Civitai/Training/ai-toolkit
Civitai Transcription

Turn any audio into text (and word-level timestamps) without a local model

Civitai/Audio
Civitai Video Enhancement

Upscale and interpolate a video in one cloud call — no GPU babysitting

Civitai/Video
grok / edit-video

Edit an existing clip with xAI Grok — prompt-driven video editing in the cloud

Civitai/Video/grok
grok / image-to-video

Make a still image move with xAI Grok — image-to-video on the cloud

Civitai/Video/grok
grok / text-to-video

Prompt to video with xAI's Grok — no local video model needed

Civitai/Video/grok
haiper

Haiper with every dial exposed

Civitai/Video/haiper
Happy Horse / v1.0 / imageToVideo

Turn an image into motion with a dancing name

Civitai/Video/Happy Horse
Happy Horse / v1.0 / referenceToVideo

Point at a look, get a clip — no GPU required

Civitai/Video/Happy Horse
Happy Horse / v1.0 / textToVideo

Prompt in, clip out, your GPU stays asleep

Civitai/Video/Happy Horse
Happy Horse / v1.0 / videoEdit

Reimagine a clip with a prompt and reference images

Civitai/Video/Happy Horse
Happy Horse / v1.1 / imageToVideo

Animate a single frame on Civitai's cloud

Civitai/Video/Happy Horse
Happy Horse / v1.1 / referenceToVideo

The extra aspect ratios are the story

Civitai/Video/Happy Horse
Happy Horse / v1.1 / textToVideo

The newer engine, all nine aspect ratios

Civitai/Video/Happy Horse
hunyuan

Run Tencent's model on the fleet, pick your own checkpoint

Civitai/Video/hunyuan
kling

The closed model you can't download, called from a node

Civitai/Video/kling
Kling V3

Five video operations in one node, plus audio

Civitai/Video/Kling V3
lightricks

LTX's company, hosted, no 22GB encoder download

Civitai/Video/lightricks
LTX 2.3 / audioToVideo

Make the sound drive the picture, on Civitai's cloud

Civitai/Video/LTX 2.3
LTX 2.3 / createVideo

The 22B model without the VRAM grind

Civitai/Video/LTX 2.3
LTX 2.3 / editVideo

Canny-guided video editing on Civitai's fleet

Civitai/Video/LTX 2.3
LTX 2.3 / extendVideo

Keep the story going past the clip, on Civitai's cloud

Civitai/Video/LTX 2.3
LTX 2.3 / firstLastFrameToVideo

Pin the beginning and end, let the cloud animate between

Civitai/Video/LTX 2.3
LTX 2.3 / videoToVideo

Gentle restyle of footage, structure intact, on Civitai

Civitai/Video/LTX 2.3
LTX 2 / createVideo

The 19B synced-audio model, without the Gemma headache

Civitai/Video/LTX 2
LTX 2 / editVideo

Canny-guided edits on the 19B, hosted by Civitai

Civitai/Video/LTX 2
LTX 2 / extendVideo

Continue a clip with the 19B, hosted by Civitai

Civitai/Video/LTX 2
LTX 2 / firstLastFrameToVideo

Script a scene by pinning its two bookend frames

Civitai/Video/LTX 2
minimax

Civitai's cloud recipe node

Civitai/Video/minimax
mochi

Prompt in, clip out

Civitai/Video/mochi
seedance

ByteDance's video engine on Civitai's fleet

Civitai/Video/seedance
sora / image-to-video

Sora image-to-video from your ComfyUI canvas — via Civitai's cloud

Civitai/Video/sora
sora / text-to-video

Prompt in, cloud-rendered clip out

Civitai/Video/sora
veo3

Veo 3 inside ComfyUI — native audio and all, on Civitai's cloud

Civitai/Video/veo3
vidu

Start-frame to end-frame video on Civitai's cloud

Civitai/Video/vidu
Vidu Q3

Resolution and speed dials on Civitai's cloud

Civitai/Video/Vidu Q3
wan / v2.1 / civitai

Wan 2.1 on Civitai's own fleet — width, height, LoRAs and all

Civitai/Video/wan
wan / v2.1 / fal

Aspect ratio, steps, and prompt expansion

Civitai/Video/wan
wan / v2.2-5b / fal / image-to-video

The 8GB-friendly model, cloud-hosted

Civitai/Video/wan
wan / v2.2-5b / fal / text-to-video

720p motion without a local GPU

Civitai/Video/wan
wan / v2.2 / comfy

Full sampler control on Civitai's cloud

Civitai/Video/wan
wan / v2.2 / fal / image-to-video

The quality-first open model, cloud-hosted

Civitai/Video/wan
wan / v2.2 / fal / text-to-video

Open-model quality without the hardware

Civitai/Video/wan
wan / v2.5 / fal / image-to-video

The first closed Wan, via fal on Civitai's cloud

Civitai/Video/wan
wan / v2.5 / fal / text-to-video

1080p without the open weights

Civitai/Video/wan
wan / v2.6 / fal / image-to-video

Multi-shot and background music

Civitai/Video/wan
wan / v2.6 / fal / reference-to-video

Keep a subject consistent across clips

Civitai/Video/wan
wan / v2.6 / fal / text-to-video

The closed release with multi-shot

Civitai/Video/wan
wan / v2.7 / fal / edit-video

Wan 2.7 video editing without a GPU (you just pay for it)

Civitai/Video/wan
wan / v2.7 / fal / image-to-video

Turn a still into motion with Wan 2.7, GPU not included

Civitai/Video/wan
wan / v2.7 / fal / reference-to-video

Wan 2.7 reference-to-video, cloud-hosted

Civitai/Video/wan
wan / v2.7 / fal / text-to-video

The API-only Wan 2.7, wrapped as a ComfyUI node

Civitai/Video/wan
Civitai Video Interpolation

Frame interpolation on Civitai's fleet — the smooth-video button

Civitai/Video
Civitai Video Upscaler

The Civitai fleet upscaler

Civitai/Video
Civitai Wd Tagging

Auto-tag your images the lazy way — WD tagging, hosted by Civitai

Civitai/Analysis
prompt

Ask Civitai's moderation bot to grade your prompt before you hit generate

Civitai/Analysis/prompt
text

'blocked or not?'

Civitai/Analysis/text
Readme

civitai-comfy-nodes

🔹 Now in early preview — installable from the Comfy Registry. Still under active development: nodes, APIs, and behavior may change without notice. Use at your own risk.

ComfyUI custom nodes for the Civitai Orchestration API. Run Civitai's cloud recipes — image/video/audio generation, upscaling, training, captioning, moderation — as nodes inside any local ComfyUI graph. No local GPU or model downloads needed; jobs run on Civitai's fleet and are billed in Buzz.

Install

From the Comfy Registry (recommended)

The pack is published to the Comfy Registry, so ComfyUI Manager can install and update it for you:

  • In ComfyUI Manager: open Manager → Custom Nodes Manager, search for Civitai Comfy Nodes (publisher civitai), and click Install, then restart ComfyUI.

  • With comfy-cli:

    comfy node registry-install civitai-comfy-nodes
    

See the Comfy Registry docs for details.

From source

Clone (or unzip) into your ComfyUI custom_nodes directory:

cd ComfyUI/custom_nodes
git clone https://github.com/civitai/civitai-comfy-nodes.git
pip install -r civitai-comfy-nodes/requirements.txt   # just `requests`

Authentication

Nodes resolve credentials in this order:

  1. A connected Civitai Auth node (explicit token / base URL / mature-content / timeout overrides)
  2. The CIVITAI_API_TOKEN environment variable (create an API key)
  3. A stored API key (~/.civitai/comfy-api-key) or OAuth login (~/.civitai/comfy-oauth.json, auto-refreshed) — both can be set from the Civitai sidebar's connect panel (no env var needed)
  4. An interactive browser login (OAuth + PKCE) — requires CIVITAI_OAUTH_CLIENT_ID to be configured

Headless/remote ComfyUI installs should use the env var.

Nodes

~160 nodes under the Civitai category, generated from the orchestration OpenAPI spec. The menu is organized ecosystem-firstCivitai/<media>/<ecosystem>[/<engine>]/… — with the engine (sdcpp/comfy) shown as a sub-level only when an ecosystem is reachable through more than one engine (e.g. Civitai/Image/zImage › zImage / turbo / createImage, Civitai/Image/anima/sdcpp). Each discriminator variant is its own node so it shows only the inputs that variant actually uses:

  • Civitai/Image — Image Gen (one node per engine: Flux2, OpenAI, Google, Seedream, …), Upscaler, Background Removal
  • Civitai/Video — Video Gen (one node per engine: Wan, Kling, Vidu, Veo3, LTX, Sora, …), Upscaler, Interpolation, Enhancement
  • Civitai/Audio — Text To Speech, Transcription, Audio Captioning, ACE Step Audio
  • Civitai/Text — Chat Completion (plus a simple single-turn wrapper), Prompt Enhancement, Media Captioning
  • Civitai/Analysis — Media Rating, WD Tagging, XGuard Moderation
  • Civitai/Training — Training, Image Resource Training
  • Civitai/Misc — Poly Gen (3D mesh generation)
  • Civitai/Loaders — Model Selector, LoRA Selector, Embedding Selector, ControlNet (see below)

Every node returns its media outputs as native Comfy types (IMAGE/VIDEO/AUDIO) plus workflow_id and raw_json for debugging and cost inspection. Models and LoRAs are referenced by AIR URNs (e.g. urn:air:sdxl:checkpoint:civitai:101055@128078).

Models, LoRAs, ControlNets & embeddings

Recipe nodes expose their model references as typed sockets, not text widgets — model/vae are CIVITAI_AIR, loras is CIVITAI_LORAS, embeddings is CIVITAI_EMBEDDINGS. You fill them by wiring a Civitai/Loaders selector node; each selector has a 🔍 Browse Civitai button (a searchable card grid of generation-capable models via a same-origin proxy to civitai.com/api/v1/models) and shows an on-node preview (thumbnail + name) of its current resource. Recipe nodes themselves have no Browse button — change a model by wiring a selector.

  • Civitai Model Selector — pick a model once; it serves two purposes through its two outputs:

    1. Choose the model a Civitai recipe node runs on. Wire its air output into a recipe node's model / vae socket. The job runs on Civitai's fleet, so nothing is downloaded locally.
    2. Auto-download a model for a local loader. Wire its path output into any standard loader's file widget — e.g. drop it in front of a Load LoRA (lora_name) or Load Checkpoint (ckpt_name) node and it downloads the model into the matching ComfyUI folder for you, no manual file management. No need to replace the loader — just feed it.

    The download happens only when path is connected, so use (1) stays cloud-only and never pulls files down.

  • Civitai LoRA Selector — holds multiple LoRAs in one node: each row has an enable toggle, the model (pick/replace via Browse Civitai), a strength, and a keywords field; + Add LoRA appends another. Wire its loras output into a recipe node's loras / additional_networks input (chain another selector via the loras input to combine stacks). Wire MODEL + CLIP to also download & apply the enabled LoRAs locally. The keywords field is auto-filled from the LoRA's trained words purely as a reminder — a LoRA applies by its AIR + strength, so the generator ignores these words; to actually invoke the trained concept, paste them into your recipe node's prompt.

  • Civitai Embedding Selector — pick textual-inversion embeddings; chain (embeddingsembeddings) and wire into a recipe node's embeddings input. Embeddings apply automatically (the sdcpp pipeline prepends each one to the positive prompt), so no trigger word is needed. To use a negative embedding, reference it by its model name in the recipe node's negative prompt — that places it on the negative side instead. (Only sdcpp ecosystems — sd1/sdxl — expose an embeddings input.)

  • Civitai ControlNet — pick a preprocessor, weight, step range, optional control image; chain and wire into a recipe node's control_nets input.

chat messages and other freeform structures remain JSON text inputs.

Browse your generations

The Civitai sidebar tab (the logo icon in the left rail) lists your Civitai generation history — every workflow you've run, across all media types and sources (web / API / ComfyUI) — pulled from the orchestrator and scoped to your account. Filter by media kind, scroll to paginate, and click any result for a lightbox. Pull a result back into the graph three ways: add to canvas (creates the matching loader node — image→LoadImage, video/audio/3D→their loaders — wired to the imported file), fill a selected loader node, or drag a thumbnail onto the canvas. If no credentials are configured, the tab shows a connect panel (OAuth sign-in or paste an API key).

Development

Nodes are generated — never edit civitai_comfy_nodes/generated/ by hand. To change node shapes, edit codegen/overrides.json (or the codegen itself) and regenerate:

python -m codegen.generate        # regenerate from spec/v2-consumers.json
pytest tests -q                   # unit tests (no ComfyUI or network needed)
CIVITAI_API_TOKEN=... pytest -m e2e -o addopts="" tests/test_e2e.py   # prod smoke test

To pick up orchestration API changes, see scripts/sync-spec.sh.