ComfyUI-PresetDownloadManager
A ComfyUI extension with 1 custom node.
ComfyUI Preset Download Manager

A custom ComfyUI node that allows you to manage and download models from HuggingFace with a convenient preset system.
Features
- 🎯 Preset Management: Create and manage presets containing multiple models
- 🔗 Direct URL Download: Download models directly by URL (default option)
- 🤗 HuggingFace Integration: Support for HuggingFace Model ID with optional Model Path
- ⚡ Smart Download: Automatically skips already downloaded files
- 🎨 Modern UI: Beautiful dark-themed interface with modal windows
- 💾 JSON Storage: Presets are saved in JSON format for easy backup and sharing
- 🔑 Private Models: Support for HuggingFace API tokens for private/gated models
- 📁 Custom Folders: Save models to custom folders or standard ComfyUI directories
- 🌐 Multi-language: Help available in English and Russian
Installation
-
Copy this folder to your ComfyUI
custom_nodesdirectory:ComfyUI/custom_nodes/ComfyUI-PresetDownloadManager/ -
Install dependencies:
pip install -r requirements.txt -
Restart ComfyUI
Usage
Opening the Manager
- Add the "HF Preset Download Manager" node to your workflow (category:
utils) - Click the "⚙ Open Manager" button on the node to open the preset manager interface
Creating a Preset
- Click "➕ Add Preset" in the manager
- Enter a Preset Name (required)
- Optionally add a Category for organization
- Add one or more models to the preset:
- Direct URL (default, required): Direct download link to the model file
- Example:
https://huggingface.co/user/model/resolve/main/file.safetensors - This is the default option - just paste the direct URL
- Example:
- ☐ Use HuggingFace Repository (checkbox): Enable to use HuggingFace Model ID instead
- When checked, you'll see:
- HuggingFace Model ID (required): Format
username/model-name- Example:
runwayml/stable-diffusion-v1-5
- Example:
- Model Path (optional): Specific file path within the repository
- Example:
model.safetensorsorvae/vae.safetensors - Leave empty to download the entire repository
- Example:
- HuggingFace Model ID (required): Format
- When checked, you'll see:
- Save to Folder (required): Choose where to save the model
- Standard folders:
checkpoints,loras,vae,upscale_models, etc. - Or select "Custom folder..." to specify a custom path
- Standard folders:
- HuggingFace API Token (optional): Required for private/gated models
- Get your token from HuggingFace Settings → Access Tokens
- Direct URL (default, required): Direct download link to the model file
- Click "Save Preset"
Downloading Models
- Single Preset: Click "⬇️ Download" on any preset card
- Multiple Presets:
- Select presets using checkboxes
- Click "⬇️ Download Selected" in the footer
Editing Presets
- Click the ✏️ Edit button on any preset card
- Modify the preset details and models
- Click "Update Preset" to save changes
Other Features
- 📋 Edit JSON: Direct JSON editing of all presets
- 📥 Import/Export: Import or export presets as JSON files
- 🗑️ Delete: Remove individual presets or multiple selected presets
- ❓ Help: Click the "?" button in the header for detailed instructions
Example Presets File
You can import presets from a JSON file. See custom-presets.json in the repository for an example format:
{
"categories": [],
"presets": [
{
"id": "preset-1",
"name": "My Preset",
"category": "Custom",
"models": [
{
"direct_url": "https://huggingface.co/user/model/resolve/main/file.safetensors",
"save_path": "checkpoints",
"hf_token": ""
}
]
},
{
"id": "preset-2",
"name": "HuggingFace Preset",
"category": "Custom",
"models": [
{
"model_id": "username/model-name",
"model_path": "model.safetensors",
"save_path": "checkpoints",
"hf_token": ""
}
]
}
]
}
To import:
- Click "📥 Import" in the manager
- Select your JSON file
- Your presets will be merged with existing ones
Field Descriptions
Direct URL (Default)
The direct download link to the model file. This is the default and recommended method for downloading models.
How to get a Direct URL:
- Go to the model page on huggingface.co
- Navigate to the file you want to download
- Click on the file name
- Click the "Download" button or right-click and "Copy link address"
- The URL should look like:
https://huggingface.co/user/model/resolve/main/file.safetensors
Examples:
https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned.safetensorshttps://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors
Use HuggingFace Repository (Checkbox)
Enable this checkbox to use HuggingFace Model ID instead of Direct URL. When enabled, you'll see additional fields for HuggingFace Model ID and Model Path.
HuggingFace Model ID
The model identifier on HuggingFace in the format username/model-name. You can find this on the model's page at huggingface.co - it's the path in the URL after the domain.
Examples:
runwayml/stable-diffusion-v1-5stabilityai/stable-diffusion-xl-base-1.0lightx2v/Qwen-Image-Lightning
Model Path (Optional)
Path to a specific file within the model repository. Leave empty if you want to download the entire model.
Examples:
model.safetensors- to download a single filevae/vae.safetensors- for a file in a subfolder- Empty - download the entire model (all files from the repository)
Save to Folder
The folder in ComfyUI where the model will be saved. Select the model type from the list or choose "Custom folder..." to specify a custom path.
Available standard folders:
checkpoints- for main models (Stable Diffusion, etc.)loras- for LoRA modelsvae- for VAE modelsupscale_models- for upscale models- And other model types...
HuggingFace API Token (Optional)
Some models on HuggingFace require authorization (private/gated models). For such models, you need to specify an API key.
How to get an API key:
- Register on huggingface.co
- Go to Settings → Access Tokens
- Create a new token (read access is sufficient)
- Copy the token (starts with
hf_)
For public models, an API key is not required - leave the field empty.
Presets
A preset is a group of models that can be downloaded together with one click. You can add multiple models to one preset, use categories to organize presets, and edit presets using the ✏️ button.
Tips & Tricks
- Direct URL is the default - just paste the download link, no need to enable HuggingFace Repository unless you need it
- Files are automatically checked before download - existing files are skipped to save time and bandwidth
- When using Model Path, files are saved directly to the selected folder without creating subdirectories
- You can add multiple models to one preset
- Use categories to organize presets
- Edit presets using the ✏️ button
- Select multiple presets and download them all at once
- On timeout, the download will automatically resume on the next attempt
- Use proxy or mirrors if access to HuggingFace is restricted
- For private models, specify the HuggingFace API Token
- Presets are saved automatically in
presets.jsonand persist after ComfyUI restart
Troubleshooting
Download Timeouts
If you experience timeouts during download, the system will automatically retry up to 5 times. If problems persist:
-
Use a proxy (if HuggingFace access is restricted):
export HTTPS_PROXY=http://your-proxy:port -
Use a HuggingFace mirror:
export HF_ENDPOINT=https://hf-mirror.com -
Try downloading again - downloads automatically resume from where they stopped
Button Not Appearing
If the "Open Manager" button doesn't appear after adding the node:
- Refresh the page (F5)
- Check the browser console (F12) for any errors
ComfyUI Preset Download Manager (Русский)
Кастомная нода для ComfyUI, позволяющая управлять и загружать модели из HuggingFace с удобной системой пресетов.
Возможности
- 🎯 Управление пресетами: Создавайте и управляйте пресетами, содержащими несколько моделей
- 🔗 Прямая ссылка: Загрузка моделей по прямой ссылке (по умолчанию)
- 🤗 Интеграция с HuggingFace: Поддержка HuggingFace Model ID с опциональным Model Path
- ⚡ Умная загрузка: Автоматически пропускает уже загруженные файлы
- 🎨 Современный UI: Красивый интерфейс с темной темой и модальными окнами
- 💾 Хранение в JSON: Пресеты сохраняются в формате JSON для удобного резервного копирования и обмена
- 🔑 Приватные модели: Поддержка API токенов HuggingFace для приватных/ограниченных моделей
- 📁 Кастомные папки: Сохранение моделей в кастомные папки или стандартные директории ComfyUI
- 🌐 Многоязычность: Справка доступна на английском и русском языках
Установка
-
Скопируйте эту папку в директорию
custom_nodesвашей установки ComfyUI:ComfyUI/custom_nodes/ComfyUI-PresetDownloadManager/ -
Установите зависимости:
pip install -r requirements.txt -
Перезапустите ComfyUI
Использование
Открытие менеджера
- Добавьте ноду "HF Preset Download Manager" в ваш workflow (категория:
utils) - Нажмите кнопку "⚙ Open Manager" на ноде, чтобы открыть интерфейс менеджера пресетов
Создание пресета
- Нажмите "➕ Add Preset" в менеджере
- Введите Preset Name (обязательно)
- Опционально добавьте Category для организации
- Добавьте одну или несколько моделей в пресет:
- Direct URL (по умолчанию, обязательно): Прямая ссылка для скачивания файла модели
- Пример:
https://huggingface.co/user/model/resolve/main/file.safetensors - Это опция по умолчанию - просто вставьте прямую ссылку
- Пример:
- ☐ Use HuggingFace Repository (чекбокс): Включите для использования HuggingFace Model ID
- При включении появятся поля:
- HuggingFace Model ID (обязательно): Формат
username/model-name- Пример:
runwayml/stable-diffusion-v1-5
- Пример:
- Model Path (опционально): Путь к конкретному файлу в репозитории
- Пример:
model.safetensorsилиvae/vae.safetensors - Оставьте пустым, чтобы загрузить весь репозиторий
- Пример:
- HuggingFace Model ID (обязательно): Формат
- При включении появятся поля:
- Save to Folder (обязательно): Выберите, куда сохранить модель
- Стандартные папки:
checkpoints,loras,vae,upscale_modelsи т.д. - Или выберите "Custom folder..." для указания кастомного пути
- Стандартные папки:
- HuggingFace API Token (опционально): Требуется для приватных/ограниченных моделей
- Получите токен в HuggingFace Settings → Access Tokens
- Direct URL (по умолчанию, обязательно): Прямая ссылка для скачивания файла модели
- Нажмите "Save Preset"
Загрузка моделей
- Один пресет: Нажмите "⬇️ Download" на карточке пресета
- Несколько пресетов:
- Выберите пресеты с помощью чекбоксов
- Нажмите "⬇️ Download Selected" в футере
Редактирование пресетов
- Нажмите кнопку ✏️ Edit на карточке пресета
- Измените детали пресета и модели
- Нажмите "Update Preset" для сохранения изменений
Другие возможности
- 📋 Edit JSON: Прямое редактирование JSON всех пресетов
- 📥 Import/Export: Импорт или экспорт пресетов как JSON файлы
- 🗑️ Delete: Удаление отдельных пресетов или нескольких выбранных пресетов
- ❓ Help: Нажмите кнопку "?" в заголовке для подробных инструкций
Пример файла пресетов
Вы можете импортировать пресеты из JSON файла. Смотрите custom-presets.json в репозитории для примера формата:
{
"categories": [],
"presets": [
{
"id": "preset-1",
"name": "Мой пресет",
"category": "Кастомный",
"models": [
{
"direct_url": "https://huggingface.co/user/model/resolve/main/file.safetensors",
"save_path": "checkpoints",
"hf_token": ""
}
]
},
{
"id": "preset-2",
"name": "HuggingFace пресет",
"category": "Кастомный",
"models": [
{
"model_id": "username/model-name",
"model_path": "model.safetensors",
"save_path": "checkpoints",
"hf_token": ""
}
]
}
]
}
Для импорта:
- Нажмите "📥 Import" в менеджере
- Выберите ваш JSON файл
- Ваши пресеты будут объединены с существующими
Описание полей
Direct URL (По умолчанию)
Прямая ссылка для скачивания файла модели. Это опция по умолчанию и рекомендуемый способ загрузки моделей.
Как получить прямую ссылку:
- Перейдите на страницу модели на huggingface.co
- Перейдите к файлу, который хотите скачать
- Нажмите на имя файла
- Нажмите кнопку "Download" или правой кнопкой мыши "Копировать адрес ссылки"
- URL должен выглядеть так:
https://huggingface.co/user/model/resolve/main/file.safetensors
Примеры:
https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned.safetensorshttps://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors
Use HuggingFace Repository (Чекбокс)
Включите этот чекбокс для использования HuggingFace Model ID вместо прямой ссылки. При включении появятся дополнительные поля для HuggingFace Model ID и Model Path.
HuggingFace Model ID
Идентификатор модели на HuggingFace в формате username/model-name. Вы можете найти его на странице модели на huggingface.co - это путь в URL после домена.
Примеры:
runwayml/stable-diffusion-v1-5stabilityai/stable-diffusion-xl-base-1.0lightx2v/Qwen-Image-Lightning
Model Path (Опционально)
Путь к конкретному файлу внутри репозитория модели. Оставьте пустым, если хотите загрузить всю модель.
Примеры:
model.safetensors- для загрузки одного файлаvae/vae.safetensors- для файла в подпапке- Пусто - загрузить всю модель (все файлы из репозитория)
Save to Folder
Папка в ComfyUI, куда будет сохранена модель. Выберите тип модели из списка или выберите "Custom folder..." для указания кастомного пути.
Доступные стандартные папки:
checkpoints- для основных моделей (Stable Diffusion и т.д.)loras- для LoRA моделейvae- для VAE моделейupscale_models- для моделей апскейла- И другие типы моделей...
HuggingFace API Token (Опционально)
Некоторые модели на HuggingFace требуют авторизации (private/gated models). Для таких моделей необходимо указать API ключ.
Как получить API ключ:
- Зарегистрируйтесь на huggingface.co
- Перейдите в Settings → Access Tokens
- Создайте новый токен (read access достаточно)
- Скопируйте токен (начинается с
hf_)
Для публичных моделей API ключ не требуется - оставьте поле пустым.
Presets
Пресет - это группа моделей, которые можно загрузить вместе одним кликом. Вы можете добавить несколько моделей в один пресет, использовать категории для организации пресетов и редактировать пресеты с помощью кнопки ✏️.
Советы и хитрости
- Прямая ссылка по умолчанию - просто вставьте ссылку для скачивания, не нужно включать HuggingFace Repository, если это не требуется
- Файлы автоматически проверяются перед загрузкой - существующие файлы пропускаются для экономии времени и трафика
- При использовании Model Path файлы сохраняются напрямую в выбранную папку без создания подпапок
- Вы можете добавить несколько моделей в один пресет
- Используйте категории для организации пресетов
- Редактируйте пресеты с помощью кнопки ✏️
- Выберите несколько пресетов и загрузите их все сразу
- При таймауте загрузка автоматически возобновится при следующей попытке
- Используйте прокси или зеркала, если доступ к HuggingFace ограничен
- Для приватных моделей укажите HuggingFace API Token
- Пресеты сохраняются автоматически в
presets.jsonи сохраняются после перезапуска ComfyUI
Решение проблем
Таймауты при загрузке
Если вы испытываете таймауты во время загрузки, система автоматически повторит попытку до 5 раз. Если проблемы сохраняются:
-
Используйте прокси (если доступ к HuggingFace ограничен):
export HTTPS_PROXY=http://your-proxy:port -
Используйте зеркало HuggingFace:
export HF_ENDPOINT=https://hf-mirror.com -
Попробуйте загрузить снова - загрузка автоматически возобновится с места остановки
Кнопка не появляется
Если кнопка "Open Manager" не появляется после добавления ноды:
- Обновите страницу (F5)
- Проверьте консоль браузера (F12) на наличие ошибок
License
MIT