Skip to content
,

MOSS-Image Control LoRAs in ComfyUI: Pose, Canny, Depth and 4 More (Files, Settings)

8–11 minutes
Woman in an art studio holding a card reading MOSS, hook pose anything in MOSS-Image

MOSS-Image finally has proper pose, edge and depth control. On 10 November, Hugging Face user thedeoxen released seven open control LoRAs for MOSS-Image-SFT: Canny, Depth, Pose, Normal, Lineart, Scribble and Segmentation. Each one ships with a ready ComfyUI workflow.

This guide shows which LoRA to use for which job, the exact files and folders, the preprocessor settings for each control map, the workflow settings, and fixes for the usual problems.

TL;DR

  • What: 7 ControlNet-style edit LoRAs (about 290 MB each, Apache 2.0) for MOSS-Image-SFT. You feed a control map in as the reference image, and your prompt decides everything else.
  • Base files: moss_image_sft_int8_convrot.safetensors (diffusion model), qwen3.5_9b_w4a8_gptq.safetensors (text encoder, type moss_image) and flux2-vae_small.safetensors (VAE).
  • Settings: LoRA strength 1.0 (0.7 if too rigid), 30 steps, CFG 4, euler + simple, and edit_format set to ai-toolkit on both text encode nodes.
  • Preprocessors: from comfyui_controlnet_aux, or skip them if you already have a control map.
  • VRAM: about the same as normal MOSS-Image editing: roughly 12 GB with the INT8 model and W4A8 encoder.

Want the full picture? My complete MOSS-Image guide maps every file, setting, LoRA and fix in one place.

What These Control LoRAs Are

Classic ControlNets are separate models that steer the image while it is generated. These are different. They are edit LoRAs trained on top of MOSS-Image-SFT’s editing mode.

In practice, you give MOSS-Image a control map (an edge drawing, a depth map, a pose skeleton) as if it were the photo to edit. The LoRA has learned to read that map as a layout guide, so the output follows its shapes while the prompt sets the person, clothes, materials, lighting and style.

Key facts:

  • Licence: Apache 2.0, the same as MOSS-Image.
  • Size: about 290 MB per LoRA (rank 64 on linear layers, 16 on convolutions).
  • Trigger word: none needed.
  • Base model: MOSS-Image-SFT only, not bundled. They were trained with KV cache on.

The editing basics are in our MOSS-Image Edit LoRA guide.

The 7 LoRAs and When to Use Each

Control Best for Input map Preprocessor Hugging Face repo
Pose Copying a body pose, hands and face direction Coloured DWPose skeleton on black DWPose (body, hands, face) thedeoxen/MOSS-Image-pose-controlnet
Canny Keeping exact outlines of products, packaging and buildings Thin white edges on black Canny (low 100, high 200) thedeoxen/MOSS-Image-canny-controlnet
Depth Same layout and distance, new style or materials Grey depth map, near is white Depth Anything V2 (vitl) thedeoxen/MOSS-Image-depth-controlnet
Lineart Colouring sketches and line drawings Fine white lines on black Realistic Lineart, coarse mode thedeoxen/MOSS-Image-lineart-controlnet
Scribble Turning rough doodles into images Loose, thick white strokes HED soft edge, safe mode thedeoxen/MOSS-Image-scribble-controlnet
Normal Keeping surface shape and lighting direction (3D renders, relighting) Camera-space normal map BAE Normal Map thedeoxen/MOSS-Image-normal-controlnet
Segmentation Room and scene layouts: sky here, sofa there Flat-colour regions UniFormer semantic segmentation thedeoxen/MOSS-Image-segmentation-controlnet

Quick picks:

  • Character art: Pose, or Depth if you want the whole figure shape and camera distance kept.
  • Product shots: Canny for exact outlines.
  • Interior design: Segmentation or Depth.
  • Sketch to finished art: Lineart for clean drawings, Scribble for rough ones.

Files and Folders

You need the three MOSS-Image-SFT base files listed on each LoRA card, plus one LoRA per control type. The model and text encoder are the same files the official MOSS-Image templates use from Comfy-Org/MOSS-Image; the base model itself lives at OpenMOSS-Team/MOSS-Image-SFT.

File ComfyUI folder Loaded by
moss_image_sft_int8_convrot.safetensors (about 5.4 GB) ComfyUI/models/diffusion_models/ Load Diffusion Model
qwen3.5_9b_w4a8_gptq.safetensors (about 7.3 GB) ComfyUI/models/text_encoders/ Load CLIP, type moss_image
flux2-vae_small.safetensors ComfyUI/models/vae/ Load VAE
moss_image_sft_pose_control_lora.safetensors (and the other six, about 290 MB each) ComfyUI/models/loras/ LoraLoaderModelOnly

Each LoRA repo also has a workflow JSON named moss_image_<type>_control.json, for example moss_image_pose_control.json. Download the ones you need.

The LoRA files follow the same naming pattern as the pose one (moss_image_sft_<type>_control_lora.safetensors), but check the Files tab of each repo, as only the pose file name is confirmed on its card.

Tip: you only need the LoRAs you plan to use. Pose, Canny and Depth cover most jobs, which is under 1 GB in total.

Install the Preprocessor Nodes

The shipped workflows make control maps from a normal photo using comfyui_controlnet_aux, a community node pack. Core ComfyUI does not include these preprocessors.

  1. Open ComfyUI Manager, search for “ControlNet Auxiliary Preprocessors” and install it. Don’t have the Manager? See our ComfyUI Manager install guide.
  2. Or install it by hand:
    cd ComfyUI/custom_nodes
    git clone https://github.com/Fannovel16/comfyui_controlnet_aux
    cd comfyui_controlnet_aux
    pip install -r requirements.txt
  3. Restart ComfyUI. The first time you run each preprocessor, it downloads its own small model (DWPose, Depth Anything V2 and so on), so stay online.

If you already have a control map, for example a pose skeleton from another tool or a depth pass from Blender, you can skip the preprocessor and load the map with a Load Image node.

Load and Run the Workflow

  1. Update ComfyUI so it has the Text Encode MOSS-Image Edit node. Our update guide covers every install type.
  2. Drag moss_image_pose_control.json (or another one) onto the canvas.
  3. Check the loaders: model, text encoder (type moss_image), VAE and the LoRA. Any red box means a file is missing or named differently.
  4. Load your source image into the preprocessor, or load a ready control map.
  5. Write your prompt describing the subject, clothes, setting and style.
  6. Queue the prompt.

The settings that matter

Setting Value Notes
LoRA strength 1.0 Drop toward 0.7 if the result copies the map too stiffly
Reference image The control map only Feed one map into Text Encode MOSS-Image Edit
edit_format ai-toolkit On both the positive and negative encode nodes
Steps 30
CFG 4
Sampler / scheduler euler / simple
Negative prompt nsfw, worst quality, bad anatomy, watermark, jpeg artifact The one used in the training samples

Building the graph yourself? Put LoraLoaderModelOnly between Load Diffusion Model and the sampler, and connect the control map image into the Text Encode MOSS-Image Edit node as its single reference.

The cards only show 30-step settings, and the fast 4-step and 8-step MOSS LoRAs need the bf16 SFT model rather than INT8, so stick to 30 steps unless you want to experiment. For a speed boost with no new weights, the SPEED sampler works with MOSS-Image.

Making Good Control Maps

The map is your layout, so its quality decides the result. These tips come from the model cards:

  • Canny and Lineart: keep lines thin and clean, white on black. Too many edges (busy backgrounds, textures) lock the image up. Raise the Canny thresholds to drop small edges.
  • Scribble: make strokes thicker and softer than canny lines. The model follows the big shapes, not every wobble.
  • Pose: use a black background with hands and face included. For full-body shots, use a full-body skeleton. If a limb is missing from the skeleton, the prompt cannot reliably add it back.
  • Depth: Depth Anything V2 with the large (vitl) model gives the cleanest maps.
  • Segmentation: fill every region with a flat colour. Avoid large black areas with no label.
  • Size: make the map the same aspect ratio as the image you want, at 1 to 2 megapixels in multiples of 16.

Prompting Tips

The control map already sets the layout, so spend your words on what the map cannot show:

  • Describe the subject and scene, not the pose. With the Pose LoRA, “a dancer in a red silk dress on a rooftop at sunset” works better than listing every joint.
  • Name materials and lighting. Depth and Normal maps carry shape, not colour, so say “brushed steel”, “warm window light” and so on.
  • Use MOSS-Image’s text skills. MOSS renders text well, so you can ask for a shop sign or a poster title in the scene.

Example

Pose map from a photo of someone mid-stride, with the prompt:

A woman in a navy trench coat and white sneakers walking through a rainy Tokyo street at night, neon reflections on wet pavement, cinematic photo, 35mm

The output keeps the stride and arm swing from the skeleton, while the coat, city and lighting come from the prompt.

vs the Official Color/Depth Control

MOSS-Image already had one official control option in ComfyUI core: the Color/Depth Control adapter added in October. Here is how they differ:

Official Color/Depth Control thedeoxen Control LoRAs
How it works Concat adapter; starts from noise with a colour region map plus depth map Edit LoRA; reads one control map as the reference image
Control types Colour regions and depth 7: pose, canny, depth, normal, lineart, scribble, segmentation
Made by OpenMOSS / Comfy-Org template Community (thedeoxen)
Best for Colour layout plus depth together Pose, edges and sketches

For posing characters or keeping exact outlines, the new LoRAs are the only option today.

Troubleshooting

Problem Fix
Output ignores the map Check edit_format is ai-toolkit on both encode nodes, the LoRA is connected and at 1.0, and the map is the reference image
Result looks stiff or traced Lower LoRA strength to 0.7, or simplify the map (fewer canny edges)
Output looks like the control map (black with white lines) The LoRA is not loaded, so the model is just editing the map. Check the LoRA loader and file name
Missing node “Text Encode MOSS-Image Edit” Update ComfyUI to a version with MOSS-Image Edit support
Red preprocessor nodes Install comfyui_controlnet_aux and restart
Preprocessor fails on first run It downloads its model on first use; check your internet and the console for the download path
Red VAE loader The workflow expects flux2-vae_small.safetensors. Download it, or choose the FLUX.2 VAE file you already use for MOSS-Image in the Load VAE node
Black images An fp16 overflow issue in some setups; see our MOSS-Image black image fix
Extra or missing limbs with Pose Use a full skeleton with hands; a missing joint in the map cannot be fixed by the prompt

FAQ

Do these LoRAs work with MOSS-Image Base?

They were trained on MOSS-Image-SFT and the cards only list SFT. Use the SFT model for reliable results.

Can I combine two control LoRAs?

The cards do not cover stacking. Each LoRA expects one map as the single reference image, so combining two is an experiment. Start with both at around 0.6.

Are they free for commercial use?

Yes. The LoRAs are Apache 2.0, the same licence as MOSS-Image. Check the licence of any other LoRA you stack with them.

How much VRAM do I need?

About the same as normal MOSS-Image editing: around 12 GB with the INT8 model and W4A8 text encoder, and 16 GB for a comfortable setup. The LoRA adds very little.

Can I train my own control LoRA?

Yes. These were trained as edit adapters. Our KohakuMoss LoRA training guide covers MOSS-Image LoRA training on modest GPUs.

Sources

Free weekly email

Get new AI guides every week

One short weekly email with our newest local AI, ComfyUI and AI tool guides. No spam, no pop-ups, just the good stuff.

Free. Unsubscribe anytime in one click. We only use your email to send this newsletter. See our privacy policy.

Woman in an art studio holding a card reading MOSS, hook pose anything in MOSS-Image