Nodes/Civitai Visual Browser & Loader by LX/🌐 Civitai Visual LoRA Loader by LX
ComfyUI Node

🌐 Civitai Visual LoRA Loader by LX

Finally, a LoRA picker you can actually recognize

By LX-ComfyUIΒ·Created 5 months agoΒ·Updated 30 days agoΒ· 5
🌐 Civitai Visual LoRA Loader by LX
  • model
  • clip
  • model
  • clip
β—„selected_loraβ–Ί
β—„enabledtrueβ–Ί
β—„strength_model1.00β–Ί
β—„strength_clip1.00β–Ί

This is the flagship of the VisualBrowserNodes-by-LX pack, and the one the whole thing is named after. The problem it solves is the one every LoRA hoarder eventually hits: the stock LoRA Loader gives you a dropdown of filenames, and after a few dozen downloads you're picking style_mix_v7_rebalanced by vibes alone. This node replaces that with a thumbnail grid - you see the LoRA's actual preview image before you commit, you can search and filter by base model, and it fetches trigger words straight from Civitai so you're not guessing what token summons the effect.

What it actually is

Take a stock LoRA loader and give it eyes. The backend does exactly what the core node does: it calls comfy.sd.load_lora_for_models on the selected file from your loras folder, applying strength_model and strength_clip. The browser itself is frontend - the pack injects an "Open Visual LoRA Browser" button onto the node, which opens an overlay listing your LoRAs as preview thumbnails. Click one, hit Load Data from Civitai, and the frontend hashes the file (SHA-256) and asks Civitai's public by-hash API endpoint for the matching model page: preview image, base model, trigger words, even generation data embedded in previews you can copy.

And no, the "Civitai" in the name doesn't mean an API key. There's no key, no token, nothing. The model-versions/by-hash endpoint is public; the pack just queries it and caches results in lora_cache.json. If a LoRA isn't on Civitai (renamed, private, self-trained), the lookup returns nothing and you keep your local preview.

The inputs that matter

This is where it differs from the pack's other loaders - it's a processor, not just a picker, so it has real knobs:

  • model / clip - required inputs from your checkpoint. Wire these in or the node has nothing to apply to.
  • selected_lora - the filename, set by clicking a card in the browser.
  • enabled - a bypass toggle. Flip it off and model and clip pass through untouched. Genuinely handy for A/B-ing a LoRA in and out of a workflow without deleting the node.
  • strength_model / strength_clip - both default to 1.0, range βˆ’10 to 10. Same semantics as the core LoraLoader: strength_model is how hard the LoRA pushes the denoiser, strength_clip how hard it pushes the text encoder. For character LoRAs keep both at 1; for style LoRAs a lot of people drop strength_clip toward 0.8 so the style doesn't overwhelm the prompt.

Outputs are model and clip, same types you fed in - they chain straight into the sampler and text encoders.

Installing it

No Python dependencies (pyproject.toml says dependencies = []), so this is a smooth install either way:

# Method 1: ComfyUI Manager
# Open Manager β†’ Custom Nodes Manager β†’ search "Civitai Visual Browser & Loader by LX" β†’ Install β†’ restart

# Method 2: manual
cd ComfyUI/custom_nodes
git clone https://github.com/LX-ComfyUI/VisualBrowserNodes-by-LX

Restart, then find "🌐 Civitai Visual LoRA Loader by LX" on the canvas.

Where people get burned

  • "Nothing happens" usually means nothing is selected. Unlike the checkpoint sibling, an empty selected_lora silently passes model and clip through unchanged - no error. If your generation looks identical with and without the node, check that a LoRA is actually selected.
  • Trigger words are the hidden superpower. The browser shows the LoRA's trigger token from Civitai. This matters more than people think - a character or style LoRA without its trigger word is often invisible, because that token is what training tied the effect to. Click to copy, paste into your prompt.
  • First load is per-model and manual - click Load Data from Civitai once per file, and it's cached afterward. Hash lookup only matches files that exist on Civitai.
  • Small pack, single author. It's a personal project from the LX-ComfyUI account with essentially no community lore around it - read it before trusting it, as you should with any custom node. Its network behavior is the boring kind: public Civitai metadata and previews, state kept in your browser's localStorage (which is also why the NSFW filter survives restarts, by design).

If your LoRA folder is small enough to remember, the default loader is fine. If it's not - and be honest, it's not - this is the nicest visual picker in the pack, and the trigger-word integration alone pays for the install.

CategorySmart Nodes

Inputs (6)

NameTypeDefaultDescription
modelMODELβ€”
clipCLIPβ€”
selected_loraSTRINGβ€”
enabledBOOLEANtrueβ€”
strength_modelFLOAT1.00-10–10β€”
strength_clipFLOAT1.00-10–10β€”

Outputs (2)

NameTypeDescription
modelMODELβ€”
clipCLIPβ€”