Nodes/CMK Flow/CMK Pipe Create Detailer
ComfyUI Node

CMK Pipe Create Detailer

CMK Pipe Create Detailer

By CMKFlow·Created 3 months ago·Updated a day ago· 6
CMK Pipe Create Detailer
  • model
  • clip
  • vae
  • conditioning_pos
  • conditioning_neg
  • image
  • sam_model
  • detailer_pipe
◄seed0►
◄detailer_enabletrue►
◄steps20►
◄cfg7.0►
◄sampler▾►
◄scheduler▾►

There are two ways to get a detail pass in ComfyUI. One is Impact Pack's FaceDetailer, where you wire a detector and hope. The other is to assemble a detailer_pipe yourself, with a model, prompts and an image, and let a separate Execute node do the loop. CMK takes the second path, and this is the assembly node.

CMK Pipe Create Detailer takes raw ComfyUI types - MODEL, CLIP, VAE, CONDITIONING, IMAGE - and packs them into a single CMK_DETAILER_PIPE. Nothing is sampled. Nothing is detected. You're just bundling.

What goes in

Eleven required inputs. The first six are the substance: model, clip, vae, conditioning_pos, conditioning_neg, image. Then the sampling settings the detailer will use - seed, steps (default 20), cfg (default 7.0), sampler, scheduler - plus detailer_enable (default true).

Optional: sam_model, a SAM_MODEL. It's marked forceInput, so it's a wire you either connect or don't; there's no dropdown pretending a SAM model might exist. If you have one, it sharpens the segment boundaries inside the detail loop. If you don't, the pack's native detector path still works - the README is clear that CMK's core detection/SEGS/detailer/pasteback nodes need no foreign custom-node packages.

That last point is worth sitting with, because it's where most people's expectations are wrong. SEGS is Impact Pack's container type, and CMK speaks it - but CMK ships its own SEGSDetailer/SEGSPaste implementations under engine/native_detailer.py. Installing this pack does not pull Impact Pack, and having Impact Pack installed changes nothing about how these nodes behave.

What comes out

One output: detailer_pipe, type CMK_DETAILER_PIPE.

Internally it's a dict with prefixed keys - detailer_model, detailer_clip, detailer_vae, detailer_conditioning_pos, detailer_conditioning_neg, detailer_image, detailer_seed, boolean_detailer_enable, detailer_steps, detailer_cfg, detailer_sampler, detailer_scheduler, detailer_sam_model. The prefixes exist so several pipe families can be merged without key collisions, which is the same reason the Refiner and FaceProcess pipes do it.

Note the boolean is named boolean_detailer_enable in the pipe while the widget above it is detailer_enable. That naming asymmetry is deliberate in this pack - visible titles and technical identities are allowed to differ.

Where this fits

Two consumers:

  1. CMK's own detailer module, inside a Flow. The pipe is the handoff.
  2. CMK Pipe Peek Detailer, when you want the values back out - it unpacks this into a BASIC_PIPE tuple plus the scalars, which is how you'd hand it to an Impact Pack DetailerForEach or any node expecting BASIC_PIPE.

The architectural intent is anti-mis-wiring: one socket that carries a coherent job beats eight loose wires you can shuffle in the wrong combinations. Whether that's a kindness or a straightjacket depends on how much you enjoy rewiring, and the pack's README openly picks a side - a solution that "creates unnecessary user decisions" or makes mis-wiring easy is not a CMK solution, whatever it does for your image.

Standalone use

You don't need a Flow workflow. The architecture doc explicitly keeps standalone construction open: CMK Checkpoint VAE Loader -Pipe- gives you MODEL, CMK Load Image -Pipe- gives you PROCESS + IMAGE + LOG, and from there the detailer can be built directly. The proprietary pipes guard the Execute interfaces without blocking that path.

That matters because the most useful thing you can do with this node is graft a CMK detailer onto somebody else's workflow.

Install

Part of CMKFlow/cmk_nodes: ComfyUI Manager → search CMK Flow → install the CMKFlow entry → restart. Manual route, with ComfyUI shut down:

git clone https://github.com/CMKFlow/cmk_nodes.git custom_nodes/cmk_nodes
python3 custom_nodes/cmk_nodes/scripts/install_cmk_requirements.py

CMK dependency check: OK is what you're looking for. For a SAM-assisted detail pass you'll also want a SAM checkpoint available - the resource checker (scripts/check_cmk_resources.py --models-root ...) audits and can fetch what the shipped workflows expect.

Traps

sam_model is optional but silently changes route. Left empty, you get the plain detection path. Nothing errors.

steps caps at 200 on this node even though other CMK sample nodes allow 10000. And cfg caps at 30, not 100. If you're copy-pasting values between CMK nodes, the clamp will quietly reshape them.

CategoryCMK/Developer/Legacy Pipe

Inputs (13)

NameTypeDefaultDescription
modelMODEL—
clipCLIP—
vaeVAE—
conditioning_posCONDITIONING—
conditioning_negCONDITIONING—
imageIMAGE—
seedINT00–18446744073709550000—
detailer_enableBOOLEANtrue—
stepsINT201–200—
cfgFLOAT7.00–30—
samplerCOMBO44 options: euler, euler_cfg_pp, euler_ancestral, euler_ancestral_cfg_pp, heun, heunpp2, +38
schedulerCOMBO9 options: simple, sgm_uniform, karras, exponential, ddim_uniform, beta, +3
sam_modeloptSAM_MODEL—

Outputs (1)

NameTypeDescription
detailer_pipeCMK_DETAILER_PIPE—