🍩 Donut Workflow V5
Krea2 • DonutNodes 3.0.23+
Generate, edit, inpaint and outpaint in one workflow—with organized panels, flexible references and previews for every finishing stage.
💬 Discord — help, artwork & updates · ☕ Support on Ko-fi · 🛠️ DonutNodes on GitHub
✨ V5 highlights
Cleaner layout — separate panels for setup, generation, upscaling and face detail.
Inpainting & outpainting — paint or draw a selection, invert it, adjust the seam, or expand with directional canvas presets. Outpainting stays within your megapixel budget.
Smart masks — describe what to select with SAM3.1, or use BiRefNet for foreground/background separation. Refine masks manually.
Independent A/B crops — frame each reference separately, with clipboard paste and optional reference guidance.
Flexible finishing — first and second upscales, Face Detailer and SeedVR2, with individual result previews.
Prompt variants — add, duplicate and reorder prompts; keep one active or cycle automatically. Includes autosizing editors and shared wildcard controls.
Searchable LoRAs — find models by typing, then adjust strengths and block weights.
🚀 Quick start
Install/update DonutNodes 3.0.23+. Restart ComfyUI and refresh your browser.
Open DonutWF_v5.json.
Use Manager → Install Missing Nodes, then restart.
Install the models using one of the options below.
Review your models, LoRAs, prompt and resolution. Leave Editing off for your first text-to-image run, then hit Run.
📦 GitHub installation: use Download missing for the supported model catalog.
📦 Registry/Manager installation: download the optional DonutNodes-model-installer.zip from this version’s files. Extract it, follow the included README and run the Windows or Linux/macOS launcher. It downloads catalog models into the appropriate ComfyUI folders and reuses matching existing files. Some downloads may require an access token.
The Registry package provides model links and the separate installer link instead of the built-in downloader.
🎨 Editing, masks & outpainting
Enable Editing, add your base image to A, and optionally place a second reference in B. Describe the change in the prompt.
Open Paint / outpaint… to edit a selected area or extend the canvas. Use Overlap to let generation reach into the original image and Seam width to soften the transition.
For B, choose Prompt selection to mask a named object, or Auto subject for the foreground. Use full-resolution references for better results.
Reference guidance is a separate option for borrowing visual elements during generation; it pauses while Editing is enabled.
💾 Saving & moving workflows
The supplied preset saves to output/Final with seed-based filenames. Saving supports PNG/WebP workflow metadata.
Keep your old workflow when upgrading, then copy your personal settings into V5. Reference images and wildcard files are stored separately—copy those too when moving installations.
🐛 Feedback
Found a bug? Share your workflow with private content removed, ComfyUI/DonutNodes versions, GPU/VRAM and the full error on Discord.
High-resolution editing with multiple references and NAG can be VRAM-heavy. Seam quality depends on the image, prompt and overlap settings.
Description
2.0 had some bugs and missing links and the donutnode had a bug that broke editing when i uploaded it. and i made this so it edits be default for those who want to try that out with proper upscaling and face detailer. grounding_px controls likeness vs frexibility ("grounding resolution (default 768; trained range 512–1536). This is a quality dial: lower = stronger edit adherence, higher = stronger identity/likeness. Try 1024+ for people, 512 for stubborn scene changes.")
FAQ
Comments (9)
.... please help me... im stuck cause i cant find the loras
umm question... i cant find some of the loras and the donut stuff doesnt work for me.... probably the wrong vesion... can you include more details/update your site for more information
thx
loras will dn automatically if the nodes work haha
@DonutsDelivery idk they dont :/ and i only get like colorful static (denoise) at the end
QUESTION: where do we link the "reference" node ? I see it near the "Edit" node, but while the Edit one is connected, the reference is not. Also how does it work? And then I see on top a node called: "1 = off, 2 = on, what is it related to?
the reference is the original krea2 edit stuff. it dosent make use of the new edit lora, and its not really an "edit" at all but something that will try to force through concepts from a reference image. its got each their toggles underneath the input image. not sure if they work together tbh as edit mode uses its own conditioning path. what you prob want is to have the workflow support multiple images for the edit lora. that is coming. was a bit pressed on time and wanted to get this out so people could try it. ive got some other stuff to fix for the noise scheduling aswell.
got prompt
[ERROR] Failed to validate prompt for output 63:
[ERROR] CLIPLoader 430:
[ERROR] - Value not in list: type: 'krea2' not in ['stable_diffusion', 'stable_cascade', 'sd3', 'stable_audio', 'm
ochi', 'ltxv', 'pixart', 'cosmos', 'lumina2', 'wan', 'hidream', 'chroma', 'ace', 'omnigen2', 'qwen_image', 'hunyuan_
image', 'flux2', 'ovis', 'longcat_image', 'cogvideox']
[ERROR] SeedGenerator 195:
[ERROR] - Failed to convert an input value to a INT value: fixed_seed, randomize, invalid literal for int() with b
ase 10: 'randomize'
[ERROR] - Value not in list: mode: 214897638556888 not in ['Random', 'Fixed']
[ERROR] Output will be ignored
[ERROR] Failed to validate prompt for output 43:
[ERROR] DonutTiledUpscale 664:171:
[ERROR] - Return type mismatch between linked nodes: seed, received_type(STRING) mismatch input_type(INT)
[ERROR] DonutFaceDetailer 664:255:
[ERROR] - Return type mismatch between linked nodes: seed, received_type(STRING) mismatch input_type(INT)
[ERROR] Output will be ignored
[ERROR] Failed to validate prompt for output 71:
[ERROR] Output will be ignored
[ERROR] Failed to validate prompt for output 124:
[ERROR] Output will be ignored
[ERROR] Failed to validate prompt for output 64:
[ERROR] Output will be ignored
"IndexError: tuple index out of range" on VAE decode. I use the correct VAE so i don't know what's wrong
