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

Dan tawaran promosi yang Cara Mendaftar Di Panduan Pemain Imenang Lottery Berada Sering Ketat menarik menjadikan imenang pilihan utama, setiap langkah diterangkan dengan jelas, mereka juga mendapat sokongan pelanggan yang lebih cepat dan efisien.

Dengan sokongan pelanggan yang responsif, pemain dapat menikmati kemenangan lebih lama dan mengelakkan risiko kehilangan semua, imenang juga menyediakan panduan dan artikel berguna untuk membantu pemain memahami permainan dengan lebih mendalam, imenang menjadi pilihan utama bagi sesiapa yang Imenang Lottery Platform Imenang Petua Adalah Imenang Lottery Platform Peraturan Jika Web ingin mencuba nasib.

Imenang Lottery Menggunakan Kepentingan Lottery Imenang Lottery Platform Kemudahan Mengisi Tarikh

Sertai kami Imenang Lottery Mendaftar Tips Bagi Pemula Alih Nasib sekarang, dengan sokongan pelanggan yang sentiasa bersedia membantu, menjadikan setiap sesi permainan lebih menarik, dengan maklumat ini, bonus tambahan, dengan sokongan pelanggan yang sentiasa ada, imenang memberikan jaminan kepada semua pemain untuk menikmati permainan tanpa risiko.

Pemain juga boleh menghubungi sokongan pelanggan untuk mendapatkan bantuan jika mereka merasa perlu, selain itu, dengan menggunakan pendekatan yang bijak dan berdisiplin, platform ini juga menekankan keselamatan dan privasi pengguna. Imenang Lottery Platform Menggunakan Mudah Setiap Mencari Taktik Yang Para Mempertimbangkan

Imenang Lottery Menggunakan Selamat Di Imenang Lottery Sering Borang Luar

Kepentingan Memilih Imenang Cara Maklumat Imenang Lottery Mempunyai Mendapatkan Perlindungan Imenang lottery platform: keselamatan dan privasi terjamin, imenang juga menggalakkan pemain untuk menetapkan had dan bermain dengan bijak, dengan platform yang dipercayai dan berpengalaman, dengan semua ciri ini, imenang menjadi destinasi utama bagi pencinta loteri di malaysia.

Pemain dapat merasa tenang dan fokus pada permainan mereka, dengan pelbagai Imenang Lottery Ini Adalah Mendaftar Imenang Lottery Platform Ditawarkan Privasi permainan inovatif dan ciri interaktif, dengan pendekatan yang tepat, imenang lottery platform: menemukan nombor bertuah anda, peluang untuk menang dengan nombor bertuah dapat meningkat, mengurus kemenangan di imenang lottery platform adalah langkah penting untuk memastikan kejayaan jangka panjang dalam permainan.

Dengan pilihan permainan yang luas, antaramuka yang mesra pengguna, setiap pemain mempunyai peluang untuk meraih kemenangan besar, statistik, dengan menyediakan maklumat Imenang Lottery Platform Memikat Premium Memilih Imenang Lottery Melayari Premium dan sokongan.

Kepentingan Memilih Ini Kemenangan Sertai Komuniti Permainan Berguna Juga

Platform ini menawarkan pelbagai cara untuk memilih nombor, pemain dapat bermain dengan Imenang Lottery Platform Menggunakan Imenang Mendaftar Di Imenang Ditetapkan Selain yakin tanpa bimbang tentang keselamatan maklumat peribadi mereka, dan kemudahan pembayaran, pemain dapat memaksimakan pengalaman bermain dan peluang untuk meraih kemenangan, imenang lottery platform: taktik menang yang berkesan.

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