grok / v1.0 / createImage
The least-censored closed model, now a ComfyUI node
- api_config
- images
- errors
- workflow_id
- raw_json
xAI's Grok image model is the one closed service the community grudgingly respects, because it's the least restrictive mainstream generator in existence - "Spicy Mode" is a real thing, and it doesn't refuse half of what Google, OpenAI and fal's models will. It's also architecturally weird: an autoregressive mixture-of-experts that predicts image tokens, not a diffusion model at all. This node wraps the Grok v1.0 text-to-image path on Civitai's orchestration layer, so you get that distinctive, comparatively loose closed model inside your Comfy graph.
The catch is the same one as every node in this pack: it's metered, billed in Buzz, and your prompt leaves the machine. But if you specifically want a closed model that doesn't flinch at content the others won't touch, Grok is the one, and this is the node.
How it works
Standard civitai-comfy-nodes recipe flow: the node submits a grok / v1.0 / createImage job to the Civitai Orchestration API, long-polls until it succeeds, and converts the returned image to a native IMAGE tensor. The model runs on xAI's side via Civitai's orchestration - nothing runs locally, and there are no sampler knobs because Grok isn't a diffusion model you can steer that way.
The inputs that matter
- prompt - required. This is the whole game; the model does the rest.
- aspect_ratio - a menu of thirteen presets from
2:1/20:9/19.5:9down through1:1(default) to9:20and1:2. No freeform resolution. - quantity - 1 to 4 images per job.
- output_format / image_metadata - format choice and optional metadata.
That's the complete input surface. No seed, no negative_prompt, no width/height - v1.0's API is a black box, and the node faithfully exposes that.
Outputs
images → Preview/Save Image. errors, workflow_id, raw_json are diagnostics.
Installing and authenticating
Pack-wide install:
cd ComfyUI/custom_nodes
git clone https://github.com/civitai/civitai-comfy-nodes.git
pip install -r civitai-comfy-nodes/requirements.txt
or ComfyUI Manager → "Civitai Comfy Nodes" → Install → restart. Dependencies: requests + python-socketio[client].
Auth: Civitai Auth node → CIVITAI_API_TOKEN → stored key/OAuth → browser login. Headless:
export CIVITAI_API_TOKEN=your_token
Where people get burned
- "Least restrictive" is relative. Grok is loose for a closed service, not unrestricted - there are still filters, and xAI's moderation has real brand-risk pressure behind it. Don't assume anything goes.
- No seed, no reproducibility. If you land a result you love, save it immediately; you can't recreate it exactly.
- Billed per job in Buzz, and quantity multiplies it.
- Your prompt goes to xAI. The "least restrictive" trade is a different moderation regime, not no moderation, and your text leaves your machine either way.
- v1.0 vs v2.0: if you want resolution/quality controls, the Grok v2.0 nodes add
resolution(1k/2k) andquality(low/medium). v1.0 is the simpler, older path.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| output_formatopt | COMBO | 4 options: , jpeg, png, webP | |
| image_metadataopt | STRING | External metadata that will be stored with the image | |
| quantityopt | INT | 11–4 | — |
| aspect_ratioopt | COMBO | 1:1 | Aspect ratio: 2:1, 20:9, 19.5:9, 16:9, 4:3, 3:2, 1:1, 2:3, 3:4, 9:16, 9:19.5, 9:20, 1:2 |
| api_configopt | CIVITAI_CONFIG | Optional Civitai Auth connection; defaults to CIVITAI_API_TOKEN or stored OAuth login. |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |
| errors | STRING | — |
| workflow_id | STRING | — |
| raw_json | STRING | — |