Nodes/Frog Node Pack/🐸 Load Library by Name
ComfyUI Node

🐸 Load Library by Name

Auto-load the right quality prompt for whatever checkpoint you pick

By RabbitThatIsPinkΒ·Created 3 months agoΒ·Updated 24 days agoΒ· 1
🐸 Load Library by Name
  • model
  • clip
  • MODEL
  • CLIP
  • positive
  • negative
  • matched_name
β—„model_nameβ€”β–Ί
β—„positive_passthroughβ€”β–Ί
β—„negative_passthroughβ€”β–Ί

Frog Load Library by Name is the node that makes your prompt library follow the model instead of the other way around. You tell it which checkpoint is loaded, it looks up the Library entry whose name matches, applies that entry's LoRAs to your MODEL and CLIP, and outputs the entry's positive and negative text. Switch checkpoints, queue again, and a different quality prompt lands in your conditioning without you touching a single text box. That's the whole promise of the Frog library system: quality prompts are per-model data, so stop hard-coding them into every workflow.

The matching is deliberately forgiving. It tries an exact name match first, then falls back to substring. If nothing matches, the node doesn't explode - it returns your passthrough inputs unchanged and prints a warning to the console. That silent-fallback behavior is worth knowing about, because it means a typo'd model name looks like "nothing happened" rather than an error, and you'll go hunting through the console for the reason.

The inputs

  • model and clip - your loaded MODEL and CLIP, straight from 🐸 Load or any loader. Required, because this is where the entry's LoRA stack gets applied.
  • model_name - the string to match against Library entry names. Wire this from the model_name output of 🐸 Load: Model + CLIP + VAE + Name, which conveniently outputs the checkpoint's filename stem.
  • positive_passthrough / negative_passthrough - text prepended before the library entry's text. The intended wiring, per the author: send the character prompt in here so it stacks on top of the quality base. The README spells it out - wire positive β†’ 🐸 Library positive_passthrough and negative β†’ 🐸 Library negative_passthrough.

What comes out

MODEL and CLIP (with library LoRAs applied), positive and negative (entry text with passthrough prepended), and matched_name - the name of the Library entry that matched, or empty if none did. That matched_name output is your signal: wire it into a display or check node if you want confirmation that an automatic lookup actually connected.

Installing it

Pack install, no special steps:

cd ComfyUI/custom_nodes
git clone https://github.com/RabbitThatIsPink/FrogNodePack

or ComfyUI Manager β†’ "Frog Node Pack". Restart and hard-refresh. No extra dependencies.

Where people trip

Two setup gotchas. First, this node does nothing useful until you've actually named your Library entries to match your checkpoints - a Library entry named "Anima quality" won't match a model stem ANIMA_beta57_v3 unless "Anima" appears in it, thanks to the substring fallback, but "quality" alone won't. Name entries deliberately. Second, the passthrough ordering: passthrough text goes before the entry text, so keep the grammar in mind - put the leading conjunction, if any, in the passthrough. And if you're expecting this to work without the 🐸 Loader-with-Name upstream, you can also feed model_name from any node that outputs a checkpoint filename string; the wire is just a string.

Category🐸 Node Pack

Inputs (5)

NameTypeDefaultDescription
modelMODELβ€”
clipCLIPβ€”
model_nameSTRINGWire from 🐸 Load: Model + CLIP + VAE + Name model_name output. Must match the name of a Library entry exactly (or as a substring).
positive_passthroughoptSTRINGPrepended before the library entry's positive text.
negative_passthroughoptSTRINGPrepended before the library entry's negative text.

Outputs (5)

NameTypeDescription
MODELMODELMODEL with library LoRAs applied.
CLIPCLIPCLIP with library LoRAs applied.
positiveSTRINGLibrary positive text combined with positive_passthrough.
negativeSTRINGLibrary negative text combined with negative_passthrough.
matched_nameSTRINGThe name of the Library entry that was matched. Empty if none found.