comfyanonymous/ComfyUI
Manager and ecosystem
The repositories surrounding comfyanonymous/ComfyUI and how they relate.
Sibling repos
graph TB
Core[comfyanonymous/ComfyUI<br/>this repo<br/>Python core]
Frontend[Comfy-Org/ComfyUI_frontend<br/>Vue/TS UI bundle]
LegacyFE[Comfy-Org/ComfyUI_legacy_frontend<br/>pre-Aug-2024 UI]
Templates[Comfy-Org/workflow_templates<br/>stock workflow JSON]
Desktop[Comfy-Org/desktop<br/>Electron app]
Manager[Comfy-Org/ComfyUI-Manager<br/>custom-node manager]
Cloud[comfy.org/cloud<br/>hosted offering]
Core -.pinned via requirements.txt.-> Frontend
Core -.pinned via requirements.txt.-> Templates
Core -.optional --enable-manager.-> Manager
Desktop --bundles--> Core
Desktop --bundles--> Frontend
Cloud --runs--> CoreComfyUI-Manager
When --enable-manager is set, ComfyUI integrates with Comfy-Org/ComfyUI-Manager. The Manager handles:
- Browsing a curated index of custom nodes (the "ComfyUI Registry")
- Installing, updating, and uninstalling custom nodes
- Security scans on installed nodes
- Scheduled installation completion (e.g., a node that requires a restart)
Setup
pip install -r manager_requirements.txt
python main.py --enable-managermanager_requirements.txt is a one-liner: comfyui-manager.
Flags
| Flag | Effect |
|---|---|
--enable-manager |
Required to enable the Manager at all |
--enable-manager-legacy-ui |
Use the legacy Manager UI (mutually exclusive with --disable-manager-ui) |
--disable-manager-ui |
Hide the Manager UI but keep background features (security checks, scheduled installs) |
Hooks into the runtime
The Manager hooks the prestartup and startup phases via main.py:
comfyui_manager.prestartup()— runs before custom-node prestartup scripts.comfyui_manager.start()— runs after the server is built but before it's serving.comfyui_manager.should_be_disabled(module_path)— consulted to skip blocked custom nodes.
The runtime tries to handle the absence of the package gracefully — see handle_comfyui_manager_unavailable in main.py: if --enable-manager is set but comfyui-manager isn't installed, the runtime logs a clear "install with this command" hint and falls back to running without the Manager.
Comfy Desktop
Comfy-Org/desktop is the Electron-based desktop app for Windows and macOS. It bundles:
- A pinned ComfyUI core release
- A pinned frontend release
- Python distribution + dependencies
- An installer experience that handles model downloads and folder layout
Releases are cut from stable tags of this repo. The desktop pipeline is downstream — there is no desktop-specific code in this repository.
Comfy Cloud
comfy.org/cloud is the official hosted offering. It runs the same core code with a managed model library and pre-warmed GPUs. The tag-dispatch-cloud.yml workflow in .github/workflows/ triggers cloud builds on new tags.
comfy-cli
Comfy-Org/comfy-cli is a separate command-line tool (pip install comfy-cli) that wraps installation, updating, and running ComfyUI. The README points users at it as an easier on-ramp than git-clone-and-pip-install.
Comfy API
The --comfy-api-base flag (default https://api.comfy.org) points at the Comfy Org-hosted API service used by API nodes for billing, request signing, and provider proxying. Users authenticate with an API key threaded through prompts as api_key_comfy_org.
Release coordination
The README's "Release Process" section formalizes the cadence:
- Core — weekly stable tags (
v0.20.1,v0.20.0, …). Patch versions for backports onto the current stable. Master between tags can break custom nodes. - Desktop — builds against the latest stable core.
- Frontend — daily releases in its own repo; merges into core every 2+ weeks. Features are frozen for the next core release.
This means: the frontend pinned in requirements.txt here is always 1-2 weeks behind the latest daily frontend; users who want the latest can opt in via --front-end-version Comfy-Org/ComfyUI_frontend@latest.
Where to start a change
- Add Manager-aware behavior to a custom node: detect
--enable-managerviaargs.enable_managerand consultcomfyui_manager.should_be_disabled(module_path)in your prestartup script. - Add a new sibling integration: open a PR that hooks at the same lifecycle points the Manager uses (
comfy_api.latest,nodes.init_extra_nodes). - Bump the cloud or desktop dependency: tag-dispatched workflows in
.github/workflows/drive downstream rebuilds; update those if the contract changes.
Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.