Nodes/ComfyUI-Flux-Inpainting/Flux Simple Inpainting
ComfyUI Node

Flux Simple Inpainting

FluxSimpleInpainting — Flux Fill inpainting with your own CLIP conditioning

By rubi-du·Created 2 years ago·Updated about a year ago· 45
Flux Simple Inpainting
  • conditioning
  • image
  • mask
  • image
num_inference_steps50
cachedfalse
guidance_scale30.0

FluxSimpleInpainting sits between two other nodes in this pack, and understanding that spot is basically the whole story. FluxInpainting takes a raw prompt and does everything itself. FluxTransformerInpainting makes you supply your own conditioning and your own VAE. FluxSimpleInpainting is the middle ground: bring your own conditioning, let the node keep handling the VAE and transformer internally.

Why you'd want that split

The all-in-one FluxInpainting node is convenient but locks you into whatever conditioning it builds from a plain string. The moment you want anything ComfyUI's native CLIPTextEncode gives you for free - separate CLIP-L and T5 prompts, prompt weighting nodes, conditioning combine/concat, whatever else lives upstream in your graph - the monolithic node can't take it. FluxSimpleInpainting was added (per the pack's own changelog, alongside FluxTransformerInpainting and FluxVAELoader) specifically to let people "split the pipeline" and reuse ComfyUI's own CLIP tooling instead.

It's still built on FLUX.1 Fill dev, Black Forest Labs' purpose-trained inpainting model - the one that regenerates only what's under your mask rather than re-rendering the whole frame the way instruction-editing models (Qwen-Image-Edit, Flux 2 Klein) do. If keeping everything outside the mask bit-identical matters to you, that's the reason to be here at all rather than reaching for a newer editing model.

Inputs and output

  • conditioning - a CONDITIONING input, exactly what a CLIPTextEncode node (fed from a Flux DualCLIPLoader) produces. This is the one input that's different from FluxInpainting's plain prompt string - everything else lines up.
  • image / mask - source image and the region to regenerate.
  • num_inference_steps - default 50, range 10–60.
  • guidance_scale - default 30, range 0.1–30. This is not a mistake: Flux Fill's own documented guidance setting really does sit around 30, far above the 3.5 you'd use for a normal Flux Dev txt2img. Dropping it toward the low end will make the fill stop following your prompt.
  • cached - off by default; flip it on to keep the loaded pipeline resident between runs instead of reloading the transformer and text encoders from disk on every queue.

Notably, there's no vae input here - unlike FluxTransformerInpainting and FluxGuffInpainting, this node still loads its VAE internally. You're only replacing the conditioning step, not the whole model stack. Output is a single image.

Installing it

Search "ComfyUI-Flux-Inpainting" in ComfyUI Manager, or manually:

cd ComfyUI/custom_nodes
git clone https://github.com/rubi-du/ComfyUI-Flux-Inpainting.git
cd ComfyUI-Flux-Inpainting
pip install -r requirements.txt

Restart after. The pip install step matters - it pulls in diffusers and bitsandbytes, which the node needs to actually load the quantized weights, and skipping it is the most common reason people get import errors right after cloning.

For models, you need the same two directories as the rest of the pack: ComfyUI/models/FLUX.1-Fill-dev (vae, scheduler, text encoder from BFL's repo) and ComfyUI/models/FLUX.1-Fill-dev-nf4 (the 4-bit NF4 transformer from sayakpaul's build). Both need to match the README's diffusers-style folder layout - subdirectories, not a single .safetensors file. Since this node still loads VAE internally, you need the full FLUX.1-Fill-dev folder present even though you're bringing your own conditioning.

Where this trips people up

  • Wiring in a standard prompt node instead of building conditioning. You need a CLIPTextEncode (fed by a Flux-compatible DualCLIPLoader) upstream - plugging a STRING node straight into conditioning won't work, that input wants an actual CONDITIONING object.
  • Assuming this node takes an external VAE. It doesn't, despite FluxTransformerInpainting right next to it in the node list looking almost identical. If you want to swap the VAE too, that's what FluxTransformerInpainting or FluxGuffInpainting are for.
  • Missing pip install -r requirements.txt - same as every node in this pack, this is the number one cause of the node just not showing up or erroring on import.
  • No LoRA slot. Nothing in this node accepts one, so if your workflow needs a character or style LoRA layered on top of Flux Fill, you'll need to build the native ComfyUI Flux Fill graph by hand instead - and even there, LoRA compatibility with Flux Fill has a reputation in the community for being hit-or-miss.
  • This pack hasn't shipped an update since December 2024. Treat it as a frozen, stable snapshot rather than something actively maintained against newer ComfyUI or diffusers releases.
CategoryInpainting

Inputs (6)

NameTypeDefaultDescription
conditioningCONDITIONING
imageIMAGE
maskMASK
num_inference_stepsINT5010–60
cachedBOOLEANfalse
guidance_scaleFLOAT30.00.1–30

Outputs (1)

NameTypeDescription
imageIMAGE