Extensions/ARCPaint
ComfyUI Extension

ARCPaint

Context-preserving single-pass inpaint sampler for ComfyUI.

By DHan315·Created a day ago·Updated about 2 hours ago· 0
DHan315/ARCPaint
Nodes
On cloudLocal install
Stars0
Updatedabout 2 hours ago
Readme

ARCPaint v0.1.1

ARC-owned context-preserving inpaint sampler for ComfyUI / ARC CTRL.

ARCPaint is an independent implementation built from ComfyUI and PyTorch primitives. It does not import, wrap, or redistribute LanPaint code.

What changed in v0.1.1

ARCPaint now uses a single Klein sampling pass by default and at runtime.

That means:

  • the old secondary paint_steps refinement sampler pass is removed
  • the extra 2/2 generation stage disappears
  • Flux should only run the main edit sampling pass, followed by normal VAE decode
  • untouched context is still restored outside the authored mask with latent feather blending

paint_steps and refine_denoise are still exposed in the node only for workflow compatibility, so existing graphs load without rewiring. They are now legacy no-op controls.

Current quality baseline

ARCPaint v0.1.1 is focused on ARC's Klein Edit path:

  • binary authored mask
  • context expansion around the edit boundary
  • single-pass sampling through the expanded mask
  • latent-space feathering while restoring untouched context
  • model-agnostic MODEL input so Klein 4B and Klein 9B can share the same paint stage
  • no third-party Python dependencies beyond ComfyUI / PyTorch

This remains the ARC baseline, not a claim of LanPaint algorithm parity. The prior user-tested LanPaint workflow remains the visual benchmark while ARCPaint is tuned.

Nodes

ARCPaint KSampler

Inputs:

  • model
  • positive / negative conditioning
  • latent_image (uses its noise_mask)
  • seed
  • steps
  • cfg
  • sampler_name
  • scheduler
  • denoise
  • paint_steps (legacy no-op)
  • context_expand
  • edge_feather
  • refine_denoise (legacy no-op)

Output:

  • latent

ARCPaint Version

Returns the installed ARCPaint version string.

ARC Klein baseline settings

  • steps: 4
  • cfg: 1.1
  • sampler: euler_ancestral
  • scheduler: normal
  • denoise: 0.91
  • paint_steps: 0
  • context_expand: 2
  • edge_feather: 2
  • refine_denoise: 0.0

context_expand and edge_feather operate at latent resolution. With an 8x image-to-latent scale, a value of 2 is roughly a 16-pixel image-space radius.

Install

Copy the ARCPaint folder into:

ComfyUI/custom_nodes/ARCPaint

Then restart ComfyUI. The nodes appear under ARC/Paint.

ARC CTRL manages/syncs this folder automatically in its private ComfyUI environment when ARCPaint is bundled with ARC.