AIHub Meta Export Lora
Publishing a LoRA to the AIHub catalog — this node writes the JSON and the thumbnail
- optional_image
If the expose nodes are the front door of the otavanopisto ComfyUI-aihub-workflow-exposer pack, AIHubMetaExportLora is the publishing desk. It's an output node that takes one of your LoRA files and writes a small JSON catalog entry plus an optional thumbnail into ComfyUI/aihub/loras - which is exactly what a connected client app reads to know which LoRAs exist, what they're for, and which models they fit.
The mental model: this pack doesn't let a client scroll your entire models/loras folder. It serves a catalog, and this node is how a LoRA gets into that catalog. Run it once and you've registered the LoRA; from then on, clients can offer it in their UI.
The inputs that matter
- lora - the LoRA file, picked from a dropdown populated by your
models/lorasfolder. The node derives the catalogidfrom the filename (no extension). Leave it empty and it errors with "No lora specified." - name / description - the human-readable bits.
namefalls back to the filename if empty;descriptionis what shows in the client UI. - context -
image,video,audio,3d, ortext(defaultimage). Tells clients which workflows this LoRA applies to. - limit_to_family - the model family (default
sdxl), likeflux,qwen,sdxl. limit_to_group - a version-less model tag. limit_to_model - a specific model file. These filters are how the client decides whether this LoRA can be applied to the selected model, so getting them right is the difference between "the LoRA shows up everywhere" and "the LoRA only appears where it works." - default_strength - the strength the client applies first (default 1, 0–10).
- use_loader_model_only - if
true, the LoRA patches only the model, not the CLIP (the README'sLoraLoaderModelOnlypath). Some LoRAs, particularly certain styles, break conditioning if applied to the clip too. - optional_image - an
IMAGEinput for the thumbnail. Provide one and the node saves{id}.pngbeside the JSON.
There are no outputs - it's a fire-and-forget output node.
What it actually writes
A {id}.json with those fields, a {id}.png if you fed it an image, and a default locale entry under aihub/locale/loras/default/ (that's the localization mechanism the pack uses for clients that send a locale header). Deleting or editing entries is done by hand on the filesystem - the README is explicit that these nodes only add, to prevent mistakes; they're not a full management UI.
Gotchas
The filter fields are the trap. Set limit_to_group without a limit_to_family and the node raises an error (family is mandatory if group is set). Set limit_to_family wrong and your LoRA silently won't appear for the models you actually use. And note the author's own advice: exporting a LoRA is only necessary when a workflow should accept any LoRA in a family. If your workflow is hardcoded to one model, you can load LoRAs directly with AIHubUtilsLoadLora and skip the catalog entirely.
Install - the pack has no requirements:
cd ComfyUI/custom_nodes
git clone https://github.com/otavanopisto/ComfyUI-aihub-workflow-exposer
Restart, and the aihub/loras folder is created for you (or make it manually per the README). This is the most "management-y" node in the pack, and for a workflow author it's genuinely handy - one run and a LoRA is client-selectable with a thumbnail and a description.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| lora | COMBO | The lora to export | |
| name | STRING | The name to use for the lora in a human readable format, if not given the lora filename will be used | |
| description | STRING | The description to use for the lora, this is shown in the UI | |
| context | COMBO | image | The context to use for the lora |
| limit_to_family | STRING | sdxl | The lora can only apply to models tagged with this family |
| limit_to_group | STRING | The lora can only apply to models tagged with this group | |
| limit_to_model | COMBO | The lora can only apply to this specific model | |
| default_strength | FLOAT | 1.000–10 | The default strength to use for the lora |
| use_loader_model_only | BOOLEAN | false | If set to true, it will only apply the lora to the model and not to the clip |
| optional_imageopt | IMAGE | An optional image to use for the lora |
Outputs (0)
No outputs