Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
99 commits
Select commit Hold shift + click to select a range
891a5a8
add ModelQuantizer node to custom node list (#1806)
lum3on May 20, 2025
117715a
Add ComfyUI-MoviiGen node (#1846)
Yuan-ManX May 20, 2025
a19ba22
update DB
ltdrdata May 20, 2025
58b9946
Add Comfyui-BBoxLowerMask2 to custom-node-list (#1842)
jqy-yo May 20, 2025
839790b
Update custom-node-list.json (#1848)
IcelandicCenterArtificialIntelligence May 20, 2025
e2a6446
update DB
ltdrdata May 20, 2025
ca2c417
Add AQnodes (#1849)
2frames May 20, 2025
d3c625e
update DB
ltdrdata May 20, 2025
416122d
update DB
ltdrdata May 20, 2025
53244b7
[docs] Add README for glob directory (#1852)
christian-byrne May 21, 2025
0f2c0ab
[docs] Add README for js directory (#1853)
christian-byrne May 21, 2025
0031743
[docs] Add README for node_db directory (#1854)
christian-byrne May 21, 2025
dbf988f
[docs] Add README for docs directory (#1855)
christian-byrne May 21, 2025
470b8c1
Update custom-node-list.json (#1858)
TrophiHunter May 21, 2025
3d920ca
Add ComfyUI-AniSora node (#1860)
Yuan-ManX May 21, 2025
731c89d
[api] Add OpenAPI specification file (#1856)
christian-byrne May 21, 2025
89e3828
update DB
ltdrdata May 21, 2025
9cd088f
update DB
ltdrdata May 23, 2025
9f258f5
Add ComfyUI-Bagel node (#1863)
Yuan-ManX May 25, 2025
21fe577
update DB
ltdrdata May 25, 2025
a097045
Update custom-node-list.json for Level Pixel Advanced nodes (#1870)
LevelPixel May 25, 2025
db7ef4f
Add ComfyUI-TaskMonitor node (#1871)
hmwl May 25, 2025
3cd5533
update DB
ltdrdata May 25, 2025
669cdff
fix(manager_util): used non normalized package name (#1867)
bigcat88 May 25, 2025
5c0bd0f
bump version
ltdrdata May 25, 2025
0048754
fixed: An issue occurs when attempting to update a node pack installe…
ltdrdata May 25, 2025
ec5e4af
feat: Add ComfyUI-BAGEL custom node (#1875)
neverbiasu May 26, 2025
7dea424
Update custom-node-list.json with Deadline Rneder manager plugin (#1874)
doubletwisted May 26, 2025
85a6fb7
Add workaround for delay in link connection (#1873)
webfiltered May 26, 2025
596571b
add openvino custom node (#1864)
openvino-dev-samples May 26, 2025
cecb952
update DB
ltdrdata May 26, 2025
93f5486
update DB
ltdrdata May 27, 2025
3593c9e
update DB
ltdrdata May 27, 2025
ee053f5
fix: replace link to registry (#1883)
seungwoo-ji-03 May 28, 2025
24d35ee
Add ComfyUI-HunyuanPortrait node (#1882)
Yuan-ManX May 28, 2025
e55d941
update DB
ltdrdata May 28, 2025
2645d62
fixed: scanner.py - better limitation check
ltdrdata May 29, 2025
754236e
update DB
ltdrdata May 30, 2025
18e78ee
Add ComfyUI-HunyuanVideo-Avatar node (#1886)
Yuan-ManX May 30, 2025
a7bc167
update DB
ltdrdata May 30, 2025
ea80473
feat: ComfyUl-FramePackWrapper_PlusOne (#1891)
xhiroga May 31, 2025
213152a
Add ComfyUI-ChatterboxTTS node (#1888)
Yuan-ManX May 31, 2025
6062b87
update DB
ltdrdata May 31, 2025
47b9fa3
Add comfyui-merge plugin info (#1866)
LingSss9 May 31, 2025
5bc1cea
update DB
ltdrdata May 31, 2025
3671ddb
update DB
ltdrdata May 31, 2025
8605345
update DB
ltdrdata May 31, 2025
8dbd996
Add ComfyUI Fix Node Translate custom node (#1892)
vivi-gomez Jun 3, 2025
bbb6005
fixed: scanner
ltdrdata Jun 3, 2025
27cf40d
Add: ComfyUI-LikeSpiderAI-SaveMP3 (save AUDIO to .mp3) (#1894)
Pigidiy Jun 3, 2025
50ceb97
update DB
ltdrdata Jun 3, 2025
586c465
Add custom node: Hugging Face LoRA Uploader (#1897)
vioaki Jun 3, 2025
1a9f1dd
update DB
ltdrdata Jun 3, 2025
bb60d39
update DB
ltdrdata Jun 3, 2025
19cf83c
update DB
ltdrdata Jun 3, 2025
4cceb46
update DB
ltdrdata Jun 3, 2025
9b9665d
Update custom-node-list.json (Add ComfyUI-E-Tier-TextSaver to node li…
e-tier-newbie Jun 5, 2025
1b941c6
Fix: correct author & ID for ComfyUI-LikeSpiderAI-SaveMP3 (#1899)
Pigidiy Jun 5, 2025
5b51558
update DB
ltdrdata Jun 5, 2025
9a9491b
Add Comfy-Topaz-Photo (#1901)
leoleelxh Jun 5, 2025
ec4a4c2
update DB
ltdrdata Jun 5, 2025
c79e0d2
Update custom-node-list.json (#1904)
MDMAchine Jun 5, 2025
13b2720
update DB
ltdrdata Jun 5, 2025
d9641cb
update DB
ltdrdata Jun 5, 2025
206004f
update DB
ltdrdata Jun 5, 2025
f084c30
Add LoRA-Safe TorchCompile node (#1905)
xmarre Jun 6, 2025
3c6b530
update DB
ltdrdata Jun 6, 2025
9d24038
support installation of system added nodepack
ltdrdata Mar 18, 2025
34efbe9
Modify the structure to be installable via pip.
ltdrdata Mar 19, 2025
5ea7bf3
feat: support task batch
ltdrdata Mar 24, 2025
5c300f7
fixed: failed[..].ui_id -> failed
ltdrdata Mar 24, 2025
422af67
fixed: ruff check
ltdrdata Mar 25, 2025
8a5226b
added: should_be_disabled function
ltdrdata Apr 12, 2025
e8ff505
Modify the structure to be installable via pip.
ltdrdata Mar 19, 2025
b439229
add workflow to publish to pypi
christian-byrne Apr 9, 2025
ad14e1e
don't show menu buttons if past comfyui front 1.16
christian-byrne Apr 9, 2025
163782e
don't handle queue in legacy front if element is not visible
christian-byrne Apr 9, 2025
d9918cf
add missing v2 prefix to customnode/installed route
christian-byrne Apr 9, 2025
8b94207
enable legacy manager frontend during beta phase
christian-byrne Apr 9, 2025
cd8e87a
don't load legacy web dir when --disable-manager arg set
christian-byrne Apr 10, 2025
6e1c906
if pip package, force offline mode
christian-byrne Apr 10, 2025
1ce3567
fix is_legacy_front should be a function still
christian-byrne Apr 11, 2025
985c987
fix: installed nodes should still be initialized in offline mode
christian-byrne Apr 11, 2025
dfd9a3e
use parsed version and id even when no cnr map exists
christian-byrne Apr 11, 2025
89bb61f
fixed: don't disable legacy ComfyUI-Manager unless --disable-comfyui …
ltdrdata Apr 12, 2025
0146655
add development guide (#1739)
christian-byrne Apr 12, 2025
86c7482
restructuring
ltdrdata Apr 13, 2025
7896949
use --enable-manager-legacy-ui cli arg instead of env variable
ltdrdata Apr 14, 2025
3ae4aec
Only load legacy FE extension if `--enable-manager-legacy-ui` is set …
christian-byrne Apr 14, 2025
31de92a
Add `is_legacy_manager_ui` route from the `legacy` package as well (#…
christian-byrne Apr 15, 2025
276ccca
fixed: avoid `except:`
ltdrdata Apr 21, 2025
403947a
modified: prevent displaying ComfyUI-Manager on list
ltdrdata Apr 21, 2025
3799af0
fixed: perform reload when starting task worker
ltdrdata Apr 22, 2025
48ba2f4
fixed: missing channels.list.template
ltdrdata Apr 22, 2025
6233fab
modified: glob.core - make default network mode as public.
ltdrdata Apr 23, 2025
9d2034b
fixed: crash related to deleted CNR node after installed
ltdrdata Apr 27, 2025
798b203
fixed: `cm_global` importing error
ltdrdata May 18, 2025
35eddc2
[feat] Add client_id support to task queue system
christian-byrne Jun 6, 2025
49549dd
[feat] Implement comprehensive batch tracking and OpenAPI-driven data…
christian-byrne Jun 8, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
PYPI_TOKEN=your-pypi-token
58 changes: 58 additions & 0 deletions .github/workflows/publish-to-pypi.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: Publish to PyPI

on:
workflow_dispatch:
push:
branches:
- main
paths:
- "pyproject.toml"

jobs:
build-and-publish:
runs-on: ubuntu-latest
if: ${{ github.repository_owner == 'ltdrdata' || github.repository_owner == 'Comfy-Org' }}
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.9'

- name: Install build dependencies
run: |
python -m pip install --upgrade pip
python -m pip install build twine

- name: Get current version
id: current_version
run: |
CURRENT_VERSION=$(grep -oP 'version = "\K[^"]+' pyproject.toml)
echo "version=$CURRENT_VERSION" >> $GITHUB_OUTPUT
echo "Current version: $CURRENT_VERSION"

- name: Build package
run: python -m build

- name: Create GitHub Release
id: create_release
uses: softprops/action-gh-release@v2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
files: dist/*
tag_name: v${{ steps.current_version.outputs.version }}
draft: false
prerelease: false
generate_release_notes: true

- name: Publish to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
password: ${{ secrets.PYPI_TOKEN }}
skip-existing: true
verbose: true
2 changes: 1 addition & 1 deletion .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:
publish-node:
name: Publish Custom Node to registry
runs-on: ubuntu-latest
if: ${{ github.repository_owner == 'ltdrdata' }}
if: ${{ github.repository_owner == 'ltdrdata' || github.repository_owner == 'Comfy-Org' }}
steps:
- name: Check out code
uses: actions/checkout@v4
Expand Down
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,7 @@ github-stats-cache.json
pip_overrides.json
*.json
check2.sh
/venv/
/venv/
build
*.egg-info
.env
47 changes: 47 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
## Testing Changes

1. Activate the ComfyUI environment.

2. Build package locally after making changes.

```bash
# from inside the ComfyUI-Manager directory, with the ComfyUI environment activated
python -m build
```

3. Install the package locally in the ComfyUI environment.

```bash
# Uninstall existing package
pip uninstall comfyui-manager

# Install the locale package
pip install dist/comfyui-manager-*.whl
```

4. Start ComfyUI.

```bash
# after navigating to the ComfyUI directory
python main.py
```

## Manually Publish Test Version to PyPi

1. Set the `PYPI_TOKEN` environment variable in env file.

2. If manually publishing, you likely want to use a release candidate version, so set the version in [pyproject.toml](pyproject.toml) to something like `0.0.1rc1`.

3. Build the package.

```bash
python -m build
```

4. Upload the package to PyPi.

```bash
python -m twine upload dist/* --username __token__ --password $PYPI_TOKEN
```

5. View at https://pypi.org/project/comfyui-manager/
14 changes: 14 additions & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
include comfyui_manager/js/*
include comfyui_manager/*.json
include comfyui_manager/glob/*
include LICENSE.txt
include README.md
include requirements.txt
include pyproject.toml
include custom-node-list.json
include extension-node-list.json
include extras.json
include github-stats.json
include model-list.json
include alter-list.json
include comfyui_manager/channels.list.template
83 changes: 16 additions & 67 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,86 +5,35 @@
![menu](https://raw.githubusercontent.com/ltdrdata/ComfyUI-extension-tutorials/refs/heads/Main/ComfyUI-Manager/images/dialog.jpg)

## NOTICE
* V4.0: Modify the structure to be installable via pip instead of using git clone.
* V3.16: Support for `uv` has been added. Set `use_uv` in `config.ini`.
* V3.10: `double-click feature` is removed
* This feature has been moved to https://github.com/ltdrdata/comfyui-connection-helper
* V3.3.2: Overhauled. Officially supports [https://comfyregistry.org/](https://comfyregistry.org/).
* V3.3.2: Overhauled. Officially supports [https://registry.comfy.org/](https://registry.comfy.org/).
* You can see whole nodes info on [ComfyUI Nodes Info](https://ltdrdata.github.io/) page.

## Installation

### Installation[method1] (General installation method: ComfyUI-Manager only)
* When installing the latest ComfyUI, it will be automatically installed as a dependency, so manual installation is no longer necessary.

To install ComfyUI-Manager in addition to an existing installation of ComfyUI, you can follow the following steps:
* Manual installation of the nightly version:
* Clone to a temporary directory (**Note:** Do **not** clone into `ComfyUI/custom_nodes`.)
```
git clone https://github.com/Comfy-Org/ComfyUI-Manager
```
* Install via pip
```
cd ComfyUI-Manager
pip install .
```

1. goto `ComfyUI/custom_nodes` dir in terminal(cmd)
2. `git clone https://github.com/ltdrdata/ComfyUI-Manager comfyui-manager`
3. Restart ComfyUI


### Installation[method2] (Installation for portable ComfyUI version: ComfyUI-Manager only)
1. install git
- https://git-scm.com/download/win
- standalone version
- select option: use windows default console window
2. Download [scripts/install-manager-for-portable-version.bat](https://github.com/ltdrdata/ComfyUI-Manager/raw/main/scripts/install-manager-for-portable-version.bat) into installed `"ComfyUI_windows_portable"` directory
- Don't click. Right click the link and use save as...
3. double click `install-manager-for-portable-version.bat` batch file

![portable-install](https://raw.githubusercontent.com/ltdrdata/ComfyUI-extension-tutorials/Main/ComfyUI-Manager/images/portable-install.jpg)


### Installation[method3] (Installation through comfy-cli: install ComfyUI and ComfyUI-Manager at once.)
> RECOMMENDED: comfy-cli provides various features to manage ComfyUI from the CLI.

* **prerequisite: python 3, git**

Windows:
```commandline
python -m venv venv
venv\Scripts\activate
pip install comfy-cli
comfy install
```

Linux/OSX:
```commandline
python -m venv venv
. venv/bin/activate
pip install comfy-cli
comfy install
```
* See also: https://github.com/Comfy-Org/comfy-cli


### Installation[method4] (Installation for linux+venv: ComfyUI + ComfyUI-Manager)

To install ComfyUI with ComfyUI-Manager on Linux using a venv environment, you can follow these steps:
* **prerequisite: python-is-python3, python3-venv, git**

1. Download [scripts/install-comfyui-venv-linux.sh](https://github.com/ltdrdata/ComfyUI-Manager/raw/main/scripts/install-comfyui-venv-linux.sh) into empty install directory
- Don't click. Right click the link and use save as...
- ComfyUI will be installed in the subdirectory of the specified directory, and the directory will contain the generated executable script.
2. `chmod +x install-comfyui-venv-linux.sh`
3. `./install-comfyui-venv-linux.sh`

### Installation Precautions
* **DO**: `ComfyUI-Manager` files must be accurately located in the path `ComfyUI/custom_nodes/comfyui-manager`
* Installing in a compressed file format is not recommended.
* **DON'T**: Decompress directly into the `ComfyUI/custom_nodes` location, resulting in the Manager contents like `__init__.py` being placed directly in that directory.
* You have to remove all ComfyUI-Manager files from `ComfyUI/custom_nodes`
* **DON'T**: In a form where decompression occurs in a path such as `ComfyUI/custom_nodes/ComfyUI-Manager/ComfyUI-Manager`.
* **DON'T**: In a form where decompression occurs in a path such as `ComfyUI/custom_nodes/ComfyUI-Manager-main`.
* In such cases, `ComfyUI-Manager` may operate, but it won't be recognized within `ComfyUI-Manager`, and updates cannot be performed. It also poses the risk of duplicate installations. Remove it and install properly via `git clone` method.


You can execute ComfyUI by running either `./run_gpu.sh` or `./run_cpu.sh` depending on your system configuration.
## Front-end

## Colab Notebook
This repository provides Colab notebooks that allow you to install and use ComfyUI, including ComfyUI-Manager. To use ComfyUI, [click on this link](https://colab.research.google.com/github/ltdrdata/ComfyUI-Manager/blob/main/notebooks/comfyui_colab_with_manager.ipynb).
* Support for installing ComfyUI
* Support for basic installation of ComfyUI-Manager
* Support for automatically installing dependencies of custom nodes upon restarting Colab notebooks.
* The built-in front-end of ComfyUI-Manager is the legacy front-end. The front-end for ComfyUI-Manager is now provided via [ComfyUI Frontend](https://github.com/Comfy-Org/ComfyUI_frontend).
* To enable the legacy front-end, set the environment variable `ENABLE_LEGACY_COMFYUI_MANAGER_FRONT` to `true` before running.


## How To Use
Expand Down
25 changes: 0 additions & 25 deletions __init__.py

This file was deleted.

6 changes: 0 additions & 6 deletions channels.list.template

This file was deleted.

2 changes: 0 additions & 2 deletions cm-cli.sh

This file was deleted.

45 changes: 45 additions & 0 deletions comfyui_manager/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
import os
import logging

def prestartup():
from . import prestartup_script # noqa: F401
logging.info('[PRE] ComfyUI-Manager')


def start():
from comfy.cli_args import args

logging.info('[START] ComfyUI-Manager')
from .common import cm_global # noqa: F401

if not args.disable_manager:
if args.enable_manager_legacy_ui:
try:
from .legacy import manager_server # noqa: F401
from .legacy import share_3rdparty # noqa: F401
import nodes

logging.info("[ComfyUI-Manager] Legacy UI is enabled.")
nodes.EXTENSION_WEB_DIRS['comfyui-manager-legacy'] = os.path.join(os.path.dirname(__file__), 'js')
except Exception as e:
print("Error enabling legacy ComfyUI Manager frontend:", e)
else:
from .glob import manager_server # noqa: F401
from .glob import share_3rdparty # noqa: F401


def should_be_disabled(fullpath:str) -> bool:
"""
1. Disables the legacy ComfyUI-Manager.
2. The blocklist can be expanded later based on policies.
"""
from comfy.cli_args import args

if not args.disable_manager:
# In cases where installation is done via a zip archive, the directory name may not be comfyui-manager, and it may not contain a git repository.
# It is assumed that any installed legacy ComfyUI-Manager will have at least 'comfyui-manager' in its directory name.
dir_name = os.path.basename(fullpath).lower()
if 'comfyui-manager' in dir_name:
return True

return False
6 changes: 6 additions & 0 deletions comfyui_manager/channels.list.template
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
default::https://raw.githubusercontent.com/Comfy-Org/ComfyUI-Manager/main
recent::https://raw.githubusercontent.com/Comfy-Org/ComfyUI-Manager/main/node_db/new
legacy::https://raw.githubusercontent.com/Comfy-Org/ComfyUI-Manager/main/node_db/legacy
forked::https://raw.githubusercontent.com/Comfy-Org/ComfyUI-Manager/main/node_db/forked
dev::https://raw.githubusercontent.com/Comfy-Org/ComfyUI-Manager/main/node_db/dev
tutorial::https://raw.githubusercontent.com/Comfy-Org/ComfyUI-Manager/main/node_db/tutorial
Loading
Loading