SINGLETON-MECHA Components Params
Merge anything, keys be damned
- recipe
Most of the Components Params nodes in comfy-mecha are about key layouts: SGM here, kohya there, diffusers somewhere else. The SINGLETON-MECHA Components Params node is the deliberate escape hatch - a config with a single component called keys, built for when you don't want the pack guessing about layouts at all.
It has one input:
keys- a single float weight.
And it returns a MECHA_RECIPE. Under the hood, the singleton-mecha config treats every tensor key as belonging to one flat component. That makes it the go-to config for the pack's core promise - merge any model, as long as they share keys - because with the singleton layout there's no component structure to reconcile. Two checkpoints that both descend from SDXL but were organized differently can still be merged by raw key name.
Why you'd reach for it
When the structured configs fight you. A model that doesn't match any of the nice layouts, an experimental merge between two architectures with overlapping keys, or a quick sanity merge where you don't care about per-component control - singleton sidesteps all of it. You trade fine-grained component control for a "just merge the tensors that share names" guarantee.
How it works
Same family machinery: the float becomes a literal per-key weight in the singleton config and comes out as a MECHA_RECIPE. Because there's only one component, the weight applies uniformly to every matching key. From there it feeds a merge method and ultimately Mecha Merger. It's also the config the pack itself reaches for as the finalization preference when it's not sure what layout a recipe is in - it's the safety net.
Install
Pack-level: ComfyUI Manager → search "mecha" → Mecha Merge Node Pack, or:
cd ComfyUI/custom_nodes
git clone https://github.com/ljleb/comfy-mecha.git
pip install -r comfy-mecha/requirements.txt
Restart ComfyUI. Only dependency is sd-mecha; no model downloads.
Gotchas
"Merge anything with shared keys" cuts both ways: if the two models' key names don't overlap where you expect, the singleton config won't save you - it has no notion of aliases or components to bridge the gap, so mismatched naming still yields an empty or partial merge. And you lose per-component control entirely, which is the whole point of the other nodes in this family. Use it as the fallback, not the default.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| keys | FLOAT | 0.00-18446744073709550000–18446744073709550000 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| recipe | MECHA_RECIPE | — |