𧬠Gimbal Likeness Isolator
A LoRA loader that turns likeness up without torching the scene
- model
- clip
- MODEL
- CLIP
Character LoRAs have a chronic problem: crank the strength to nail the face, and the background styling, clothes, even the pose get dragged along with it. Gimbal Likeness Isolator is the pack's answer - a LoRA loader that splits the knob in two, so you can push the identity without pushing everything else. It's the node in the Gimbal-comfy suite (by Form & Noise) that reads "if you already use LoRAs, this is the one that needs no latent math."
Let's be honest about what it is, because the marketing oversells: this is not a model that has learned to separate identity from style. It's a wrapper around ComfyUI's standard load_lora_for_models that gives you three knobs instead of one, and the trick is where each knob lands.
How it works
The mechanism, from the source: it loads the LoRA file from your loras folder and patches both the model (UNet) and clip with it. The three inputs map to two actual patch strengths:
strength- the model patch strength. This drives the visual/UNet side, the part that changes pose, materials, lighting structure.alpha- the base CLIP strength.likeness_mask- a multiplier on the CLIP side. The effective CLIP strength becomesalpha Γ likeness_mask.
So "likeness" here means the text-encoder contribution of the LoRA - the tokens that carry the identity description. Push likeness_mask up to 3 and you're weighting those identity tokens heavily in the text encoder while leaving the UNet patch at whatever strength says. Drop it toward 0 and you keep the LoRA's stylistic influence while gutting its identity. Negative strengths invert the LoRA's direction - useful for pushing away from a character, which is a legitimate "vector" move even if it's rarely what you want on a first try.
The honest catch: whether this actually separates identity from scene depends entirely on how the LoRA was trained. A well-captioned character LoRA (identity in the captions, style left implicit - see the KB's lora-training notes on this) responds beautifully to CLIP-side weighting. A LoRA with style baked into the training data won't be separable, because the two are entangled in the weights themselves. No loader can un-entangle that.
The inputs that matter
lora_name is a dropdown populated from ComfyUI/models/loras/ at runtime - it shows "<no loras found>" until you have files there. Then it's just strength and likeness_mask; leave alpha at 1 until you want to scale the whole CLIP side. If strength, alpha, and likeness_mask are all at neutral (0, 0, 1.0), the node short-circuits and passes the model and clip through untouched - a no-op, so you can leave it in the graph without side effects.
Outputs are the patched MODEL and CLIP, wired exactly like any LoRA loader: MODEL into the KSampler, CLIP into your CLIP Text Encode.
Install
# ComfyUI Manager β search "Gimbal"
# or:
cd ComfyUI/custom_nodes
git clone https://github.com/FormAndNoise/Gimbal-comfy
pip install -r Gimbal-comfy/requirements.txt
Restart ComfyUI; it's under Add Node β Gimbal/Flight Instruments as "𧬠Gimbal Likeness Isolator". Dependencies are just torch/numpy/pillow - no downloads beyond whatever LoRAs you already have.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| model | MODEL | β | |
| clip | CLIP | β | |
| lora_name | COMBO | 0 options: | |
| strength | FLOAT | 1.00-10β10 | Overall model patch strength. |
| alpha | FLOAT | 1.00-10β10 | Mapped to CLIP strength or individual alpha isolation if supported. |
| likeness_mask | FLOAT | 1.000β3 | Weights the identity tokens in CLIP text-encoder. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | β |
| CLIP | CLIP | β |