Skip to main content

Cross-platform automated installer for ComfyUI

Project description

๐Ÿš€ UmeAiRT's ComfyUI Auto-Installer

Version Python Platform License

Cross-platform Python CLI to fully automate the installation, update, and configuration of ComfyUI. One-click setup with GPU optimizations, curated custom nodes, and VRAM-aware model downloads.

โœจ Features

  • One-Click Install โ€” Double-click Install.bat (Windows) or run Install.sh (Linux/macOS)
  • Isolated Core โ€” The installer runs in its own dedicated, safe virtual environment (.installer_venv).
  • Cross-Platform Compatibility:
    • Windows: Full support for NVIDIA (CUDA), AMD (DirectML), and CPU-only fallbacks.
    • Linux: Full support for NVIDIA (CUDA), AMD (ROCm), and CPU-only fallbacks.
    • macOS: Full support leveraging Apple Silicon (MPS).
  • Flexible Installations: Supports both uv Virtual Environments (venv) and Git-tracked conda/venv integration.
  • GPU Optimizations โ€” Installs Triton, SageAttention (v2 + v3 on Blackwell), and xformers with version compatibility
  • 34 Curated Custom Nodes โ€” Additive manifest system โ€” never removes user-installed nodes
  • Model Catalog v3 โ€” 7 model families (FLUX, Z-IMAGE, WAN 2.1, WAN 2.2, HiDream, QWEN, LTX-2) with VRAM-based recommendations and SHA-256 integrity
  • Multi-Source Downloads โ€” aria2c accelerated, with HuggingFace + ModelScope fallback
  • Junction Architecture โ€” User data (models, outputs) persists independently from ComfyUI updates
  • Smart Update โ€” One command to update ComfyUI core, all bundled nodes, and Python dependencies
  • Model Security Scanner โ€” Detects malicious pickle code in .ckpt/.pt model files using picklescan
  • Cross-Platform Launchers โ€” Generated .bat/.sh scripts (Performance, LowVRAM, Manager TUI)
  • Verbose Mode โ€” Clean output by default, detailed logging with -v flag

๐Ÿ“‹ Prerequisites

  • Git
  • GPU: NVIDIA (CUDA 12.x+), AMD (Radeon RX 6000+), or Apple Silicon (M1+)
  • Internet connection
  • [Optional] C++ Compiler: Windows users might need Visual Studio Build Tools (C++ workload) if installing custom nodes that require source compilation (e.g., insightface). Linux/macOS users usually have gcc/clang installed by default.

Note: Python 3.13 is auto-installed via uv if not present. No manual Python setup required.

๐Ÿ Quick Start

Option A: One-Liner (Recommended)

Windows (PowerShell):

irm https://get.umeai.art/comfyui.ps1 | iex

Linux / macOS:

curl -fsSL https://get.umeai.art/comfyui.sh | sh

Only requires Git โ€” everything else (Python, uv, dependencies) is handled automatically.

Option B: Manual Download

  1. Download or clone this repository
  2. Double-click Install.bat (Windows) or run ./Install.sh (Linux/macOS)
  3. Follow the on-screen prompts (install type, model packs)
  4. When done, double-click UmeAiRT-Start-ComfyUI.bat to launch!

Option C: CLI (Advanced)

# Install the CLI tool
pip install -e .

# Run the installer
umeairt-comfyui-installer install --path /path/to/install --type venv

# With verbose output
umeairt-comfyui-installer install --path /path/to/install -v

Option D: Docker Container

Requires Docker and an NVIDIA GPU.

docker run --gpus all -p 8188:8188 -v comfyui-data:/data -e NODE_TIER=full ghcr.io/umeairt/comfyui:latest

Open http://localhost:8188 โ€” done! โœ…

All your data (models, nodes, outputs) is stored in the comfyui-data volume and persists between restarts. To use a local folder instead: replace comfyui-data:/data with ./comfyui_data:/data.

Available image variants:

Tag Size Description
latest ~4 GB ComfyUI with pre-installed PyTorch (ready to go)
latest-cloud ~4.5 GB + JupyterLab for RunPod / cloud
latest-lite ~2 GB Minimal โ€” installs PyTorch on first run (~5 min)
latest-lite-cloud ~2 GB Lite + JupyterLab

Cloud variant (with JupyterLab for RunPod / remote):

docker run --gpus all --name comfyui -p 8188:8188 -p 8888:8888 -v comfyui-data:/data -e JUPYTER_ENABLE=true -e NODE_TIER=umeairt ghcr.io/umeairt/comfyui:latest-cloud

Tip: Use -e NODE_TIER=minimal, umeairt, or full (default) to control which custom nodes are installed on boot. The lite variants are ideal for RunPod where fast image pulls matter โ€” PyTorch installs once on first boot and is cached in the persistent volume.

๐Ÿ”„ Migrating from the PowerShell Version

If you're currently using the PowerShell version (ComfyUI-Auto_installer-PS), you can migrate to this Python version with a single command. All your data (models, outputs, custom nodes) will be preserved.

irm https://get.umeai.art/migrate.ps1 | iex

The script will:

  • Auto-detect your PowerShell installation
  • Clean up PS-specific files (scripts, old venv, old launchers)
  • Bootstrap the new Python environment (uv + venv)
  • Reinstall all Python dependencies for every custom node (including user-installed)
  • Generate new launcher scripts

โš ๏ธ This operation is irreversible. It is strongly recommended to back up your installation folder before proceeding. The script will suggest a backup command before asking for confirmation.

๐Ÿ“‚ Post-Installation

Four launcher scripts are generated in your install directory:

Script Description
UmeAiRT-Start-ComfyUI.bat/.sh Launch ComfyUI (Performance mode with SageAttention)
UmeAiRT-Start-ComfyUI_LowVRAM.bat/.sh Launch with --lowvram --fp8 for โ‰ค8 GB VRAM GPUs
UmeAiRT-Manager.bat/.sh Open the TUI manager (update, download models, reinstall, settings)

๐Ÿ› ๏ธ CLI Commands

umeairt-comfyui-installer                    # TUI manager (launch, update, download, settings)
umeairt-comfyui-installer install            # Full installation
umeairt-comfyui-installer install --reinstall # Clean reinstall (preserves models/output)
umeairt-comfyui-installer update             # Update ComfyUI + nodes + deps
umeairt-comfyui-installer download-models    # Interactive model downloads
umeairt-comfyui-installer scan-models        # Scan models for malicious pickle code
umeairt-comfyui-installer info               # Display system info (GPU, Python, tools)
umeairt-comfyui-installer version            # Show version

All commands support --path (install directory) and --verbose flags.

๐Ÿ“ Architecture

Project Structure

ComfyUI-Auto_installer/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ cli.py                # Typer CLI entry point
โ”‚   โ”œโ”€โ”€ config.py             # Pydantic config models
โ”‚   โ”œโ”€โ”€ installer/            # Install, update, nodes, finalize
โ”‚   โ”‚   โ”œโ”€โ”€ templates/        # .bat/.sh launcher templates
โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ”œโ”€โ”€ downloader/           # Model download engine (manifest v3)
โ”‚   โ”œโ”€โ”€ platform/             # OS abstraction (Windows/Linux/macOS)
โ”‚   โ””โ”€โ”€ utils/                # Logging, commands, packaging, GPU detection
โ”œโ”€โ”€ scripts/                  # Config files (dependencies.json, custom_nodes.json)
โ”œโ”€โ”€ tests/                    # 430 tests (unit + integration)
โ”œโ”€โ”€ Install.bat / Install.sh  # Bootstrap entry points
โ””โ”€โ”€ pyproject.toml            # Project metadata (hatchling)

Install Directory Layout

The installer uses a junction-based architecture to separate user data from ComfyUI core:

install_path/
โ”œโ”€โ”€ scripts/venv/            # Python virtual environment (venv or conda)
โ”œโ”€โ”€ ComfyUI/                 # Git repo (can be wiped for updates)
โ”‚   โ”œโ”€โ”€ models/ โ†’ ../models  # โ† junction (symlink)
โ”‚   โ”œโ”€โ”€ output/ โ†’ ../output  # โ† junction
โ”‚   โ””โ”€โ”€ main.py
โ”œโ”€โ”€ models/                  # โ† User data (persists)
โ”œโ”€โ”€ output/                  # โ† User data (persists)
โ”œโ”€โ”€ logs/                    # Install and update logs
โ”œโ”€โ”€ scripts/                 # Venv, config files, install metadata
โ”œโ”€โ”€ UmeAiRT-Start-ComfyUI.bat
โ”œโ”€โ”€ UmeAiRT-Start-ComfyUI_LowVRAM.bat
โ””โ”€โ”€ UmeAiRT-Manager.bat

Model Catalog (v3)

Models are defined in model_manifest.json, fetched from the Assets repository at install/update time:

Family Bundles Type
FLUX Dev, Fill Image
Z-IMAGE Turbo Image
WAN 2.1 T2V, I2V 480p Video
WAN 2.2 I2V, Fun Inpaint, Fun Camera Video
HiDream Dev Image
QWEN Image Edit Image
LTX-2 Dev Video + Audio

Each bundle offers multiple quantization variants (fp16, fp8, GGUF Q3โ†’Q8) with VRAM recommendations (โ˜… markers) and SHA-256 integrity checks. Downloads are accelerated via aria2c with HuggingFace + ModelScope fallback.

๐Ÿง‘โ€๐Ÿ’ป Contributing

Contributions are welcome! See AGENTS.md for development guidelines and docs/codemaps/ for architecture diagrams.

# Setup development environment
uv sync --dev

# Run tests
uv run pytest tests/ -q

# Lint
uv run ruff check src/ tests/

๐Ÿ“œ Third-Party Code & Attribution

Component Source License
Triton/SageAttention install logic DazzleML/comfyui-triton-and-sageattention-installer MIT
ComfyUI comfyanonymous/ComfyUI GPL-3.0

๐Ÿ”’ Security

  • No external script execution โ€” all installation logic is internalized
  • Secure subprocess calls โ€” no shell=True, explicit argument lists
  • HTTPS only โ€” all download URLs validated
  • Automated audits โ€” CI runs Bandit + pip-audit on every push
  • Pickle model scanner โ€” Detects malicious code in .ckpt/.pt files via picklescan (auto-runs during updates)
  • Zip slip prevention โ€” Archive extraction validates all paths stay within the target directory
  • SHA-256 integrity โ€” Post-download checksum verification for all model files

For details, see SECURITY.md.

๐Ÿ“ License

MIT License โ€” see LICENSE file.

โค๏ธ Credits

Developed by UmeAiRT. Thanks to Comfyanonymous for creating ComfyUI and to all custom node authors.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

umeairt_comfyui_installer-5.1.7.tar.gz (222.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

umeairt_comfyui_installer-5.1.7-py3-none-any.whl (111.2 kB view details)

Uploaded Python 3

File details

Details for the file umeairt_comfyui_installer-5.1.7.tar.gz.

File metadata

File hashes

Hashes for umeairt_comfyui_installer-5.1.7.tar.gz
Algorithm Hash digest
SHA256 b4fc091057c8c401f9f8dec5937655386ba7525d53fe3e2633a33f0953740cc8
MD5 05138d2b31f9d1858da3b2d84a0a1e00
BLAKE2b-256 88e359e11ce4042b28562a249ffb6e5a8f5902fb427bb102ca2681f416b364cf

See more details on using hashes here.

Provenance

The following attestation bundles were made for umeairt_comfyui_installer-5.1.7.tar.gz:

Publisher: release.yml on UmeAiRT/ComfyUI-Auto_installer-Python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file umeairt_comfyui_installer-5.1.7-py3-none-any.whl.

File metadata

File hashes

Hashes for umeairt_comfyui_installer-5.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 fc03d9401123e87a44da0ae13e506a51038327a3570e5a14b4063c24027072e8
MD5 6c64716cd9aa2f19a3906cd2bebb05b5
BLAKE2b-256 bed06bdd89a0beaf10804702567861c2791ddcea538ba84dd5d34c19d7453c52

See more details on using hashes here.

Provenance

The following attestation bundles were made for umeairt_comfyui_installer-5.1.7-py3-none-any.whl:

Publisher: release.yml on UmeAiRT/ComfyUI-Auto_installer-Python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page