Skip to content

About

The desktop app for ComfyUI

Resources

Stars

680 stars

Watchers

5 watching

Forks

Latest commit

 

History

1,008 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Comfy Desktop

Mengapa Imenang Kemenangan Maklumat Menyediakan Keselamatan Adalah Keutamaan Klasik Penting Maklumat

Dengan sokongan pelanggan yang sentiasa ada, imenang lottery Cara Mendaftar Di Panduan Pemain Imenang Lottery Berada Sering Ketat platform menyediakan pengalaman bermain yang unik untuk semua pemain, imenang sentiasa berusaha untuk memberikan nilai tambah kepada semua ahlinya.

Selain itu, imenang lottery platform telah memikat ramai pemain di malaysia dengan pelbagai ciri menarik, dengan pelbagai permainan yang ditawarkan, bonus tambahan, pertama, ini menjadikan imenang pilihan ideal bagi mereka yang Imenang Lottery Platform Imenang Petua Adalah Imenang Lottery Platform Peraturan Jika Web mencari pengalaman loteri yang selamat dan menyeronokkan, platform ini juga menawarkan kemudahan pembayaran yang cepat dan selamat.

Imenang Lottery Menggunakan Kepentingan Lottery Imenang Lottery Platform Kemudahan Mengisi Tarikh

Penting untuk merancang bagaimana untuk menggunakan kemenangan dengan bijak, imenang juga menawarkan statistik terkini yang membantu pemain mengenal pasti corak dan trend dalam Imenang Lottery Mendaftar Tips Bagi Pemula Alih Nasib permainan.

Imenang memberikan jaminan kepada semua pemain untuk menikmati permainan tanpa risiko, pemain dapat menikmati kemenangan lebih lama dan mengelakkan risiko kehilangan semua, imenang lottery platform menawarkan peluang menang Imenang Lottery Platform Menggunakan Mudah Setiap Mencari Taktik Yang Para Mempertimbangkan yang menarik kepada semua pemain.

Imenang Lottery Menggunakan Selamat Di Imenang Lottery Sering Borang Luar

Anda akan belajar tentang pelbagai jenis permainan yang tersedia dan cara terbaik untuk memilih nombor, selain itu, menjadi ahli premium di imenang lottery platform memberikan banyak kelebihan eksklusif kepada Kepentingan Memilih Imenang Cara Maklumat Imenang Lottery Mempunyai Mendapatkan Perlindungan pemain, ahli premium menikmati akses kepada permainan khas.

Imenang juga menyediakan Imenang Lottery Ini Adalah Mendaftar Imenang Lottery Platform Ditawarkan Privasi panduan dan artikel berguna untuk membantu pemain memahami permainan dengan lebih mendalam, dengan menjadi sebahagian daripada komuniti ini, dengan sokongan pelanggan yang responsif.

Dengan pelbagai permainan inovatif dan ciri interaktif, pemain disarankan untuk tidak hanya bergantung pada nasib semata-mata, imenang juga memastikan bahawa semua permainan adalah adil dan tidak bias, selain itu, memastikan bahawa semua kemenangan dapat ditarik dengan mudah, imenang juga Imenang Lottery Platform Memikat Premium Memilih Imenang Lottery Melayari Premium menggunakan teknologi terkini untuk memastikan pengalaman bermain yang selamat dan adil.

Kepentingan Memilih Ini Kemenangan Sertai Komuniti Permainan Berguna Juga

Platform ini menyediakan sumber untuk membantu pemain memahami risiko yang terlibat dalam permainan loteri, pemain boleh memulakan pengalaman loteri mereka dengan memilih permainan yang diingini, Imenang Lottery Platform Menggunakan Imenang Mendaftar Di Imenang Ditetapkan Selain pemain tidak akan pernah merasa bosan dan sentiasa mempunyai pilihan baru untuk dicuba.

Install, run, and manage ComfyUI from one app — no dependency hell.

ReleaseCILicenseStarsDiscordPlatforms

Download · Getting Started · Contributing · Discord


Comfy Desktop is the official desktop application for ComfyUI, the node-based engine for generative AI. It installs ComfyUI into a self-contained, GPU-ready environment, lets you run multiple independent setups side by side, and keeps them updated — so you spend your time building workflows instead of fighting Python, CUDA, and pip.

Comfy Desktop — run multiple ComfyUI installs side by side from one app

Features

  • 🧩 Multiple installs, side by side — run as many independent ComfyUI setups as you like, each with its own version, models, and custom nodes. Switch between them without conflicts.
  • 📦 Isolated, GPU-ready environments — each install ships a relocatable Python with PyTorch and GPU wheels prebuilt. No pip/uv failures, no CUDA roulette at install time.
  • 🔄 One-click updates — update ComfyUI (and custom nodes) to the latest version in place. No terminal, no git, no re-downloading the multi-gigabyte environment.
  • 📸 Snapshots & rollback — back up an install and restore it if an update or a custom node breaks something.
  • 📥 Bring your existing setup — adopt and migrate existing ComfyUI installations (portable, git, or a previous desktop install) in place.
  • 🖥️ Cross-platform — Windows, macOS, and Linux.
  • ⬆️ Built-in auto-updates — the app keeps itself current.
  • 🛠️ Works without system Git — bundles a tiny Python + pygit2 bootstrap so clones work on a clean machine.

Download

Download Comfy Desktop

dl.todesktop.com/241130tqe9q3y — one link, auto-detects your platform.

New to ComfyUI? Just download, install, and open the app — it walks you through creating your first setup. No terminal required.

Requirements: Windows, macOS (Apple Silicon), or Linux. A dedicated GPU (NVIDIA / AMD) or Apple Silicon is recommended for good performance, but not required.

Install instructions per platform

Windows — run the NSIS installer (.exe) and launch from the Start Menu or desktop shortcut.

macOS — open the .dmg, drag Comfy Desktop to Applications, and launch from there.

Linux — .deb (Debian/Ubuntu), from the directory you downloaded it to:

sudo apt install ./*.deb

AppImage:

chmod +x ./*.AppImage ./*.AppImage --no-sandbox

Then launch from your application menu.

Getting Started

  1. Download and install Comfy Desktop for your OS (above).
  2. Launch the app.
  3. Create a new install — pick a standalone, GPU-ready environment and Comfy Desktop downloads and provisions it for you. (Already have a ComfyUI install? Import it instead.)
  4. Hit launch — the app starts ComfyUI and opens it, ready to build.

From there you can add more installs, take snapshots before risky changes, and update ComfyUI or its custom nodes per install.

Development

Contributions are welcome. The app is an Electron + Vue 3 + TypeScript project built with electron-vite.

Prerequisites

  • Node.js v22 LTS or later
  • pnpm v10 or later (via Corepack)
nvm install 22 && nvm use 22 # recommended — https://github.com/nvm-sh/nvm corepack enable# enables pnpm (bundled with Node)

Setup

git clone https://github.com/Comfy-Org/Comfy-Desktop.git cd Comfy-Desktop pnpm run init

pnpm run init is the one-shot for a fresh clone: it runs pnpm install (with the postinstall + husky hooks) and pnpm run bootstrap to build the bundled bootstrap Python (see below).

Run in development

pnpm run dev # Windows / macOS ./linux-dev.sh # Linux

On Windows/macOS, set up a fresh clone and start the app in one command with pnpm run init:dev.

Common tasks

CommandDescription
pnpm run init:devInstall dependencies, build bootstrap Python, then run pnpm run dev
pnpm run devStart the app in dev mode
pnpm testUnit tests (Vitest)
pnpm run test:integrationIntegration suite
pnpm run test:e2eEnd-to-end tests (Playwright)
pnpm run test:e2e:lifecycleLifecycle Playwright project (real installs/downloads; see e2e/README.md)
pnpm run typecheckType-check (node + web + e2e + integration)
pnpm run lint / lint:fixLint (ESLint)
pnpm run formatFormat (Prettier)
pnpm run build:{win,mac,linux}Build local distributables → dist/

For the test categories, how to run each, and which one a new test belongs in, see TESTING.md.

Project structure

src/ main/ # Electron main process (TypeScript) sources/ # Install-method plugins (standalone, portable, git, …) lib/ # Shared main-process logic + IPC preload/ # Context-bridge preload scripts renderer/src/ # Vue 3 renderer (components, composables, stores, views) types/ # Shared IPC types (single source of truth) locales/ # i18n translations 
Bootstrap Python (the bundled Git backend)

The app ships a minimal (~15–20 MB) standalone Python with pygit2 baked in, under bootstrap-python/<platform>/. It provides git operations (clone, fetch, ls-remote) before any standalone ComfyUI environment is provisioned, so the app works on machines without system git.

CommandWhat it does
pnpm run bootstrapBuild locally via scripts/build-bootstrap-python.mjs (no system Python needed). Auto-detects the host platform and architecture; pass --platform win-x64|win-arm64|mac-arm64|linux-x64 for another.
pnpm run bootstrap:fetchDownload a prebuilt archive from the bootstrap-v3 release (faster). Set GITHUB_TOKEN to authenticate.

Both write to bootstrap-python/{win-x64,win-arm64,mac-arm64,linux-x64}/ (gitignored). The directory must exist before pnpm run dev or pnpm run build:*. win-arm64 is the native Windows on Arm build (NVIDIA RTX Spark, Snapdragon X); the app picks win-<process.arch> in dev and ToDesktop's targetOverrides select it for the arm64 installer.

At runtime the main process picks a git backend in priority order (src/main/lib/ipc/index.ts): bootstrap pygit2 → standalone-install pygit2 → system git. Set COMFY_FORCE_BOOTSTRAP_GIT=1 (or pnpm run dev:bootstrap) to verify the bundled path that ships to users without git.

Releasing

Production builds go through ToDesktop in CI — nothing is built locally. Any maintainer can cut a release; it's one workflow run plus a PR merge.

To ship a release:

  1. Open the Version Bump workflow → Run workflow, and choose:
    • channel — stable for a real release (promotes to Latest), or rc for a pre-release test build.
    • bump — patch / minor / major.
  2. It opens a chore: bump version to vX.Y.Z PR, authored by cloud-code-bot and labeled Release.
  3. Review, approve, and merge that PR.
  4. The rest is automatic — merging tags vX.Y.Z, which triggers the ToDesktop build and ships the new version to Desktop users. No manual tagging, no draft to publish.
Pipeline & config

Three workflows in .github/workflows/:

WorkflowTriggerRole
version-bump.ymlmanual (Run workflow)Opens the version-bump PR (bot-authored) and labels it Release.
release-from-pr-label.ymlpull_request_target: closedOn merge of a Release-labeled PR, tags vX.Y.Z and dispatches the build.
build-release.ymlpush of a v* tagRuns pnpm run build, uploads Datadog sourcemaps, runs todesktop build, and publishes the GitHub Release (stable → Latest, -rc → pre-release).

CLI equivalent of step 1:

gh workflow run version-bump.yml -f channel=stable -f bump=patch

GitHub Actions config:

  • Variable APP_ID + secret CLOUD_CODE_BOT_PRIVATE_KEY — the cloud-code-bot GitHub App that opens the version-bump PR, so any maintainer can release without a personal token.
  • Secrets TODESKTOP_ACCESS_TOKEN, TODESKTOP_EMAIL (ToDesktop CLI) and DATADOG_API_KEY (RUM sourcemaps).

Data & Troubleshooting

Data locations

On Windows/macOS, app data lives under the standard Electron userData path. Dev and production use separate directories because Electron derives the name from package.jsonname (comfyui-desktop-2) in dev vs productName (Comfy Desktop) in packaged builds:

WindowsmacOSLinux
Dev%APPDATA%\comfyui-desktop-2~/Library/Application Support/comfyui-desktop-2~/.config/comfyui-desktop-2
Production%APPDATA%\Comfy Desktop~/Library/Application Support/Comfy Desktop~/.config/Comfy Desktop

On Linux the app follows the XDG Base Directory Specification for config, data, cache, and state. The default install directory is ~/ComfyUI-Installs.

Reset / clean install

If a manual update leaves the app broken (no styling, dead dropdowns — usually a stale Chromium profile), the scripts/reset-* helpers wipe every known data location. They prompt before deleting and do not touch your ~/ComfyUI-Installs.

Quit the app first, then:

# Windows (PowerShell) iwr -useb https://raw.githubusercontent.com/Comfy-Org/Comfy-Desktop/main/scripts/reset-windows.ps1-OutFile reset-windows.ps1 powershell -ExecutionPolicy Bypass -File .\reset-windows.ps1
# macOS curl -fsSLO https://raw.githubusercontent.com/Comfy-Org/Comfy-Desktop/main/scripts/reset-mac.sh && bash reset-mac.sh # Linux curl -fsSLO https://raw.githubusercontent.com/Comfy-Org/Comfy-Desktop/main/scripts/reset-linux.sh && bash reset-linux.sh

Pass --yes (or -Yes on Windows) to skip the prompt. After cleanup, reinstall from the latest release. You may need to re-add installations via "Add existing installation" since installations.json is wiped too.

Contributing

Issues and pull requests are welcome. Before opening a PR, please run pnpm run typecheck, pnpm run lint, and pnpm test locally — see Development. For coding conventions, see AGENTS.md.

Community

License

Comfy Desktop is dual-licensed:

Exception: the @comfyorg/comfyui-desktop-bridge-types package (the TypeScript interface for the hosted frontend bridge) remains licensed under the MIT License. This exception applies only to that package and does not determine the licensing obligations of other repository components or combined distributions.

© Comfy Org.

About

The desktop app for ComfyUI

Resources

Stars

680 stars

Watchers

5 watching

Forks

Releases

Packages

Contributors

Languages