Magnific Skin Enhancer
Three versions, four sliders, and what each one is for
- image
- folder
- image
- creation_identifier
- metadata
Portrait retouching, as a cloud call. Image in, image out, with a small pile of controls that behave differently depending on which version you picked.
The version dropdown is the part to understand first, because two of the four sliders change meaning depending on it.
The three versions
faithful is the one that keeps the person. It has a skin_detail slider (0β100) that only applies here, and it's the version to reach for when the face has to stay recognisably the same face - the retouch is texture, not identity.
creative loosens that. Fine for a generic beauty pass, wrong for anyone who needs to be recognisable afterwards. There's a well-worn reason this distinction exists: every model that "enhances" a face is making decisions about what a face should look like, and the more room you give it, the more it drifts. Our KB's take on upscaling the same problem is blunt - models that restore toward a caption invent a plausible face rather than preserving yours.
flexible swaps skin_detail for optimized_for, and that dropdown is where the version earns its name: default, enhance_skin, enhance_everything, improve_lighting, transform_to_real, no_make_up. transform_to_real is the interesting one and it does exactly what it says - it aims for the un-retouched, un-made-up look, which is an aesthetic a lot of people actually want and almost nothing else offers as a checkbox. no_make_up is the same idea, scoped to cosmetics.
sharpen and smart_grain are always present, both 0β100. Sharpening is sharpening - it'll also sharpen the noise. smart_grain adds texture back, which matters more than it sounds: aggressive cleanup removes the grain that made the image look photographic in the first place, and a face with perfectly smooth skin reads as synthetic to most viewers at a glance.
Outputs and wiring
image (the retouched result), creation_identifier and metadata - JSON with the model, prompt, size, date and the link to the creation on magnific.com. Feed that to Magnific Metadata (unpack) if you want the fields as sockets. The optional folder comes from Magnific Save To and files the result in that project folder; leave it off and it goes to your Personal project.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/Code2Collapse/ComfyUI-CustomNodePacks.git
Or "CustomNodePacks" in ComfyUI Manager, then restart ComfyUI. The Magnific nodes ship inside this pack - ported from Magnific's vendor pack magnific-comfyui 0.7.0 - so one install is all you need. Installing the vendor zip as well will give you duplicate node names. Sign in through the Magnific menu or the Magnific Save To node's sign-in button; the session file lives at ~/.magnific/comfyui_auth.json.
Where it fits, and where it doesn't
The use case is a hero portrait: you've generated or shot something good, and the skin is the weak point. It's a per-call cost and the image goes to Magnific's servers, which for a client portrait may be a conversation you want to have first.
Locally, the equivalent job is a face detail pass - crop the face, re-render it at proper resolution with a low denoise, paste it back - which is what FaceDetailer-style nodes in the ecosystem exist for, and this pack has its own Face Fixer. That approach is free and keeps everything local, but it's also capable of producing the classic "room of clones" if you run it over a crowd with the same seed. The cloud call is simpler and more expensive; the local pass is fiddlier and free. Both are fine answers, and the honest advice is to try the free one first and see whether the face actually needs the other.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | β | |
| version | COMBO | faithful | 3 options: faithful, creative, flexible |
| sharpen | INT | 00β100 | β |
| smart_grain | INT | 00β100 | β |
| skin_detail | INT | 00β100 | Faithful version only. |
| optimized_for | COMBO | default | Flexible version only. |
| folderopt | MAGNIFIC_FOLDER | Optional β from a Magnific Save To node. Not connected β your Personal project. |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | β |
| creation_identifier | STRING | β |
| metadata | STRING | β |