openai / dall-e-2 / editImage
The pack's only node with a real mask input
- image
- mask
- api_config
- images
- errors
- workflow_id
- raw_json
Before you write this one off as another legacy DALL-E 2 node, know its one party trick: mask. CivitaiImageGenOpenaiDallE2EditImage is the only node in the entire Civitai image lineup with a dedicated mask input - the classical inpainting workflow where you say "edit only this region." DALL-E 2 is old and its generation quality is long superseded, but the masked-edit shape it exposes is something the flashier GPT Image and Nano Banana nodes in this pack simply don't offer.
What it is. Engine openai, model dall-e-2, operation editImage, from the official civitai/civitai-comfy-nodes pack (the ~160 generated nodes wrapping Civitai's Orchestration API). Required inputs: prompt, size (256x256 / 512x512 / 1024x1024), and image - the source you want to edit. That image socket is typed as an IMAGE, so wire it from a Load Image node or anywhere in your graph; the tooltip's mention of URLs/data URLs/base64 reflects the underlying API's flexibility, but in Comfy you'll almost always just feed it a tensor.
The mask input. mask (optional, also IMAGE-typed) is the interesting one. Feed it a black-and-white mask - white where the edit should happen, black where the image stays untouched - and the node tells the API to regenerate only the masked region. If you've used local inpainting at all, this is the same mental model, just executed on OpenAI's servers. The natural pipeline in Comfy: take your source image, generate a mask with the mask-editing tools (or a segment-anything node), and wire both in. This is the closest thing the pack has to a hosted inpainting node, and if you're coming from an SDXL inpainting workflow, it'll click instantly.
Inputs that matter. prompt describes what should appear in the masked area - "a red racing bike" rather than "change the bike." size must match your source reasonably or the edit gets cropped/letterboxed. quantity (1-10) lets you generate a handful of takes of the same edit, which is genuinely useful here because DALL-E 2's edits are… variable. output_format and image_metadata (external metadata stored with the image) round out the rest.
Install and auth. With the pack, once:
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 → search Civitai Comfy Nodes → Install. Credentials from a Civitai Auth node, CIVITAI_API_TOKEN, or stored OAuth. Error hints: 402 = Buzz shortfall, 401 = token expired, 429 = rate limit. Early-preview pack, 30-minute job cap.
The honest take. DALL-E 2's edits are soft, limited to 1024px, and a generation behind - for serious masked work on a modern engine you'd go elsewhere (or local, where inpainting is a solved problem on far better models). But as the pack's one and only masked-edit node, it's the quick way to prototype a "change this region, leave the rest alone" flow inside a cloud graph, and the mask wiring teaches you the pattern the pack will presumably apply to better engines later. Worth knowing, worth keeping in the back pocket, not worth building a whole workflow around.
Inputs (8)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | — | |
| size | COMBO | 3 options: 256x256, 512x512, 1024x1024 | |
| image | IMAGE | Either A URL, A DataURL or a Base64 string | |
| output_formatopt | COMBO | 4 options: , jpeg, png, webP | |
| image_metadataopt | STRING | External metadata that will be stored with the image | |
| quantityopt | INT | 11–10 | — |
| maskopt | IMAGE | Either A URL, A DataURL or a Base64 string | |
| 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 | — |