Nodes/LoRA Txt Loader/LoRA Txt Loader (Dropdown)
ComfyUI Node

LoRA Txt Loader (Dropdown)

The same trigger-word loader, but with a normal dropdown

By kwokkakiu233·Created 2 months ago·Updated about a month ago· 2
LoRA Txt Loader (Dropdown)
  • model
  • clip
  • model
  • clip
  • positive_prompt
  • lora_path
lora_name
strength_model1.00
strength_clip1.00
positive_prompt

LoRA Txt Loader (Dropdown) is the same node as the pack's main loader, with exactly one difference: instead of a tree-style folder browser, lora_name is a plain ComfyUI dropdown. Same trigger-word auto-fill, same editable text box, same outputs, same everything else.

Why would you pick this over the tree browser version? A couple of honest reasons. The tree browser is frontend JavaScript bolted onto the node - great when it works, and the first thing that can get weird in thin clients or after ComfyUI frontend updates. The dropdown variant behaves like stock ComfyUI, which makes it the more boring, dependable choice, and it's the closer drop-in replacement for the native Load LoRA node if you're swapping one in a saved workflow. If you have a manageable LoRA library that doesn't need a searchable file tree, the dropdown is genuinely the simpler tool.

How it works

Mechanically it's the same story as the main node. The Python side is a standard LoRA application: it loads the .safetensors, calls comfy.sd.load_lora_for_models, and returns patched model and clip. When you select a LoRA, the frontend fetches the sidecar .txt that shares the model's base name (my_lora.safetensorsmy_lora.txt) and fills the positive_prompt box. There's a "↺ Reset from .txt" button to restore the file's original contents, and the box text is passed straight through to the output - nothing is injected into your prompt behind your back.

That last point matters because it's the main gotcha. The trigger words come out of the positive_prompt STRING output, not the model wires. Patch model and clip into your sampler chain and the LoRA applies, but the words stay out of the prompt entirely. Run positive_prompt into a CLIP Text Encode (or a Text Concatenate + base prompt for the recommended setup) and they finally do their job.

Inputs and outputs

Same as the main node:

  • model / clip - from your checkpoint loader.
  • lora_name - the dropdown; lists everything under models/loras/.
  • strength_model / strength_clip - default 1.0 each; drop strength_model if a LoRA's hitting too hard.
  • positive_prompt - auto-filled, editable, reset-able.

Outputs: model, clip, positive_prompt (STRING), and lora_path (absolute path of the loaded file).

Installing and using it

Shared with the whole pack - ComfyUI Manager search "LoRA Txt Loader", or:

cd ComfyUI/custom_nodes
git clone https://github.com/kwokkakiu233/comfyui-lora-txt-loader

then restart. No Python dependencies to fight with; the repo ships no requirements.txt.

A couple of practical notes. The dropdown's options are baked in when the node instance is created, so a freshly downloaded LoRA won't show up in an existing node - re-add the node or restart ComfyUI. (The main tree-browser node re-queries on every open, but the dropdown has no such live refresh.) And remember the sidecar rule: the .txt must live next to the LoRA with the same base name, or the box stays empty. If you've already got the main tree-browser node and like it, you don't need this one - it's for people who want the stock ComfyUI feel without sacrificing the trigger-word auto-fill.

Categoryloaders

Inputs (6)

NameTypeDefaultDescription
modelMODEL
clipCLIP
lora_nameCOMBO0 options:
strength_modelFLOAT1.00-10–10
strength_clipFLOAT1.00-10–10
positive_promptSTRING

Outputs (4)

NameTypeDescription
modelMODEL
clipCLIP
positive_promptSTRING
lora_pathSTRING