Nodes/ComfyUI Easy Use/EasyKSampler (Inpainting)
ComfyUI Node Runs on cloud

EasyKSampler (Inpainting)

Pick your inpaint method from a dropdown

By yolain·Created 3 years ago·Updated 12 days ago· 2,647
EasyKSampler (Inpainting)
  • pipe
  • model
  • mask
  • pipe
  • image
  • vae
grow_mask_by6
image_outputPreview
link_id0
save_prefixComfyUI
additionalNone

Inpainting in ComfyUI has always had too many competing "right ways" - plain InpaintModelConditioning, Differential Diffusion, Fooocus Inpaint, BrushNet - each with its own node chain. This sampler puts them behind a single dropdown. You feed it your pipe and a mask, pick a method from the additional menu, and it wires up that inpainting approach for you.

It's the inpainting member of ComfyUI-Easy-Use's sampler family, and it earns its place by hiding real complexity. Under the hood these are genuinely different techniques with different model requirements; on the face of the node they're just options in a list.

Why you'd reach for it

Because setting up Fooocus Inpaint or BrushNet by hand is fiddly, and this collapses it. If you want to erase-and-replace part of an image, or extend a canvas (outpaint), you drop this in place of your normal sampler, hand it the mask, and choose the method that suits the job. It slots into the same loader → presampling → sampler pipe flow as the rest of the pack, so your inpainting graph looks like your text-to-image graph with one node swapped.

How it works

It's easy kSampler with a mask input and an inpaint-method selector. The additional dropdown is the interesting part - it picks how the masked region gets handled:

  • None / InpaintModelCond - standard conditioning-based inpainting.
  • Differential Diffusion - softer, gradient-aware mask blending; great for seamless edits.
  • Fooocus Inpaint - the excellent Fooocus inpaint patch (its inpainting was good enough that it got ported into ComfyUI as a node pack in the first place), and it's SDXL-only.
  • Brushnet Random / Segmentation (with optional + DD) - the BrushNet inpainting models.

grow_mask_by (default 6) expands the mask outward a few pixels so the edit blends instead of leaving a hard seam - a small but important knob. The node then samples only the masked area (settings, as always, coming in on the pipe) and composites the result back.

The inputs and outputs that matter

  • pipe - model, conditioning, latent and settings from upstream.
  • mask (optional input) - the region to repaint.
  • grow_mask_by - mask feather/expansion; bump it if you see seams.
  • additional - the inpaint method. This is the decision that changes your result the most.
  • image_output / save_prefix - preview, save, or send.

Outputs: pipe, image, vae.

Installing it

ComfyUI Manager: search ComfyUI Easy Use, install, restart. Or clone: cd ComfyUI/custom_nodes && git clone https://github.com/yolain/ComfyUI-Easy-Use, install requirements, restart. The catch: the fancier methods need their models. Fooocus Inpaint and BrushNet each require downloading the relevant inpaint model files (BrushNet also wants the ComfyUI-BrushNet nodes present) - the dropdown option exists whether or not the model is on disk, so grab them before selecting.

Where people trip

The classic: choosing Fooocus Inpaint or a Brushnet option without the model downloaded, then getting a load error. Each method has its own file to fetch; the menu doesn't check for you. Second, Fooocus Inpaint is SDXL-only - don't select it on an SD1.5 or Flux pipe. Third, if your edits show a visible halo or hard edge, raise grow_mask_by and try Differential Diffusion, which blends the boundary far more gently than plain conditioning.

CategoryEasyUse/Sampler

Inputs (8)

NameTypeDefaultDescription
pipePIPE_LINE
grow_mask_byINT60–64
image_outputCOMBOPreview6 options: Hide, Preview, Save, Hide&Save, Sender, Sender&Save
link_idINT00–9223372036854776000
save_prefixSTRINGComfyUI
additionalCOMBONone9 options: None, InpaintModelCond, Differential Diffusion, Fooocus Inpaint, Fooocus Inpaint + DD, Brushnet Random, +3
modeloptMODEL
maskoptMASK

Outputs (3)

NameTypeDescription
pipePIPE_LINE
imageIMAGE
vaeVAE