Load Lora Model Only from URL
The LoRA loader that skips your downloads folder — feed it a URL
- model
- MODEL
You know the drill when a shared workflow references a LoRA you don't have: hunt down the model page, download the file, drop it into models/loras, and hope the dropdown refreshes. Load Lora Model Only from URL skips all of that. You paste a link into the node and it fetches the LoRA itself on first run, caches it, and applies it. That's the whole pitch, and honestly it's a good one for one specific moment: "someone handed me a URL, I just want to try it."
First, the name. The "official" in sourceful-official is doing a lot of heavy lifting. The entire repo is a single commit authored by Your Name <[email protected]> - the git identity was never even configured - and the README is literally the project name. This is a one-off experiment someone pushed for their own workflows, not a product from a company. There's no support channel, no issues traffic, no docs. Treat it as "works if it works" and you'll be fine; treat it as a supported tool and you'll be annoyed.
Why "Model Only" matters
This is the half that makes it worth reaching for. The node applies the LoRA to the diffusion model and never touches the CLIP/text encoder - same behavior as ComfyUI's built-in LoraLoaderModelOnly. That's the right default for the modern stack. FLUX and SDXL LoRAs are almost all model-only anyway, and with the newer architectures you don't train or load the text encoder at all - embeddings get cached instead. So a model-only loader isn't a limitation here, it's the current best practice. The one thing to know: the CLIP half of an SD 1.5 LoRA gets silently dropped, because the node runs the clip side at strength 0.
The three inputs
Just three, and you'll only fiddle with one of them:
url- where the LoRA lives. This is the star of the show.model- the diffusion model you're applying it to (wire in whatever your checkpoint or UNET loader outputs).strength_model- LoRA strength, default 1.0, range −20 to 20.
What URLs it accepts
The node recognizes three kinds of links:
- HuggingFace -
https://huggingface.co/<owner>/<repo>/resolve/main/<file>.safetensors. It also fixes the two ways people usually paste these wrong: it swaps/blob/for/resolve/and strips a trailing?download=true. Useshf_hub_download, so downloads are resumable and properly cached. - Civitai -
https://civitai.com/api/download/models/<id>?type=Model&format=SafeTensor. It can even convert amodelVersionIdpage URL into the right API form. Here's the gotcha the code itself warns about: "will fail for most if api key not set." Civitai now requires an API token for downloads, so you'll want theCIVITAI_API_KEYenvironment variable set, or most Civitai links just error out. - Anything else - a direct link to a
.safetensorsfile anywhere else works too.
Everywhere, only .safetensors is accepted. The node hard-rejects anything else "for security reasons" - reasonable, since auto-downloading and auto-loading arbitrary files is one of the sketchier things a workflow can do. It's at least refusing the worst of it.
How it caches
Files land in ComfyUI/models/huggingface_cache/ (under civitai/ or general/, named by an MD5 hash of the URL). The loaded weights stay in memory and get reused as long as the URL doesn't change; set strength to 0 and it returns the model untouched without downloading at all. One thing to expect: the first run blocks while the file downloads. Small LoRAs are instant, but a multi-gigabyte FLUX LoRA will make the queue sit there for a while.
Install
ComfyUI Manager - search for LoadLoraModelOnlyWithUrl - or the manual route:
cd ComfyUI/custom_nodes
git clone https://github.com/sourceful-official/LoadLoraModelOnlyWithUrl
Then restart ComfyUI. The pack declares a single dependency in requirements.txt: diffusers==0.24.0. That's a red flag - the node never actually imports diffusers; it only needs requests and huggingface_hub, which ComfyUI already ships. It's a stale, heavyweight pin from a repo that was thrown together in one commit. If Manager installs that old diffusers and another custom node starts complaining, you now know why.
When you'd actually use it
Honestly? Only for the "someone gave me a link" moment - a downloaded workflow that references a LoRA by URL, or testing a file hosted on HuggingFace without polluting your loras folder. For daily use, your normal LoraLoader (or the rgthree Power Lora Loader, which reads your local folder and shows trigger words) is what you want. This node is the niche tool for the specific case where the LoRA isn't on your disk yet. For that one case, it's genuinely handy.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| url | STRING | — | |
| model | MODEL | — | |
| strength_model | FLOAT | 1.00-20–20 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| MODEL | MODEL | — |