Nodes/ComfyUI_AutoDownloadModels/Auto Download Models
ComfyUI Node

Auto Download Models

Stop hunting HF download links, just type the repo and file

By AIExplorer25·Created about a year ago·Updated about a year ago· 21
Auto Download Models
    • path
    repo_id
    model_name
    path_to_download

    Every ComfyUI workflow has that moment: you load someone's graph, half the models are missing, and you spend twenty minutes on HuggingFace digging through a repo tree to find the exact .safetensors filename the loader is asking for. Auto Download Models is the pack's plainest node and the one you can trust to just do that for you - you type three strings, run it, and the file lands on disk. No API key, no auth, no graph magic. It's a thin wrapper around hf_hub_download, and being thin is exactly why it works.

    It sits inside AIExplorer25/ComfyUI_AutoDownloadModels, a small pack the author (SearchTricky7875 on Reddit) first shared in r/comfyui back in March 2025 as a "download all the WAN models" tool. The pack has grown a handful of fancier nodes since, but this one is the useful core: grab any single file from any public HuggingFace repo and put it where you say.

    How it works

    The mechanism is one line of Python: hf_hub_download(repo_id=..., filename=..., local_dir=...). That means it uses the same downloader the HuggingFace CLI uses, so you get resumable transfers, hash checking, and - because the pack installs the hf_transfer extra - genuinely fast multi-stream downloads for the big files. It does not call any API that needs a key, and it doesn't invent filenames; you have to know the exact filename, which is the one real skill you need.

    The inputs that matter

    Only three, all plain strings:

    • repo_id - the HuggingFace repo, e.g. Comfy-Org/Wan_2.1_ComfyUI_repackaged. That's the "owner/name" part of the URL.
    • model_name - the exact filename inside the repo, including any subfolder, e.g. split_files/vae/wan_2.1_vae.safetensors. This one is case-sensitive; a typo fails.
    • path_to_download - the destination folder. This is the node's saving grace: unlike the WAN bulk nodes in this same pack, the destination isn't hardcoded, so you can point it at your real ComfyUI/models/loras/ and it just works on a normal local install.

    The output is a single path (STRING) holding the full path of the downloaded file. Wire it anywhere a filename/path string is accepted, or just ignore it - the download already happened.

    Install

    Via ComfyUI Manager, search for ComfyUI_AutoDownloadModels (or "AutoDownloadModels") and hit install. Or the manual route:

    cd ComfyUI/custom_nodes
    git clone https://github.com/AIExplorer25/ComfyUI_AutoDownloadModels
    cd ComfyUI_AutoDownloadModels
    pip install -r requirements.txt
    

    Then restart ComfyUI. The requirements are huggingface_hub[hf_transfer], hf_transfer, and rapidfuzz - small, no torch/GPU dependencies. The pack's README is nearly empty, so treat the source as the docs.

    Where people get burned

    • Missing filenames. Get the exact filename from the repo page ("Files" tab) - the copy-filename button helps. The node won't search or fuzzy-match; wrong name, failed download.
    • It blocks the queue while downloading. The node downloads synchronously, so ComfyUI sits there until the file is done. For a 20 GB WAN weight that's a while - that's normal, not a freeze.
    • It re-downloads nothing twice. hf_hub_download checks the cache, so re-running after a failed download resumes where it left off instead of starting over.

    If you only need one file out of a big repo, this is the node from this pack to reach for - no checkboxes, no hidden /workspace path, no surprises. The flashy bulk nodes below it are for when "one file" turns into "every file."

    CategoryDownloadModel

    Inputs (3)

    NameTypeDefaultDescription
    repo_idSTRINGEnter hugging face repo id
    model_nameSTRINGEnter hugging face model name to download
    path_to_downloadSTRINGEnter to download the model to

    Outputs (1)

    NameTypeDescription
    pathSTRING