Spaces:
Running
on
L40S
Running
on
L40S
# `cm-cli`: ComfyUI-Manager CLI | |
`cm-cli` ๋ ComfyUI๋ฅผ ์คํ์ํค์ง ์๊ณ command line์์ ComfyUI-Manager์ ์ฌ๋ฌ๊ฐ์ง ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์๋๋ก ๋์์ฃผ๋ ๋๊ตฌ์ ๋๋ค. | |
``` | |
-= ComfyUI-Manager CLI (V2.24) =- | |
python cm-cli.py [OPTIONS] | |
OPTIONS: | |
[install|reinstall|uninstall|update|disable|enable|fix] node_name ... ?[--channel <channel name>] ?[--mode [remote|local|cache]] | |
[update|disable|enable|fix] all ?[--channel <channel name>] ?[--mode [remote|local|cache]] | |
[simple-show|show] [installed|enabled|not-installed|disabled|all|snapshot|snapshot-list] ?[--channel <channel name>] ?[--mode [remote|local|cache]] | |
save-snapshot ?[--output <snapshot .json/.yaml>] | |
restore-snapshot <snapshot .json/.yaml> ?[--pip-non-url] ?[--pip-non-local-url] ?[--pip-local-url] | |
cli-only-mode [enable|disable] | |
restore-dependencies | |
clear | |
``` | |
## How To Use? | |
* `python cm-cli.py` ๋ฅผ ํตํด์ ์คํ ์ํฌ ์ ์์ต๋๋ค. | |
* ์๋ฅผ ๋ค์ด custom node๋ฅผ ๋ชจ๋ ์ ๋ฐ์ดํธ ํ๊ณ ์ถ๋ค๋ฉด | |
* ComfyUI-Manager๊ฒฝ๋ก ์์ `python cm-cli.py update all` ๋ฅผ command๋ฅผ ์คํํ ์ ์์ต๋๋ค. | |
* ComfyUI ๊ฒฝ๋ก์์ ์คํํ๋ค๋ฉด, `python custom_nodes/ComfyUI-Manager/cm-cli.py update all` ์ ๊ฐ์ด cm-cli.py ์ ๊ฒฝ๋ก๋ฅผ ์ง์ ํ ์๋ ์์ต๋๋ค. | |
## Prerequisite | |
* ComfyUI ๋ฅผ ์คํํ๋ python๊ณผ ๋์ผํ python ํ๊ฒฝ์์ ์คํํด์ผ ํฉ๋๋ค. | |
* venv๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ ํด๋น venv๋ฅผ activate ํ ์ํ์์ ์คํํด์ผ ํฉ๋๋ค. | |
* portable ๋ฒ์ ์ ์ฌ์ฉํ ๊ฒฝ์ฐ run_nvidia_gpu.bat ํ์ผ์ด ์๋ ๊ฒฝ๋ก์ธ ๊ฒฝ์ฐ, ๋ค์๊ณผ ๊ฐ์ ๋ฐฉ์์ผ๋ก ์ฝ๋งจ๋๋ฅผ ์คํํด์ผ ํฉ๋๋ค. | |
`.\python_embeded\python.exe ComfyUI\custom_nodes\ComfyUI-Manager\cm-cli.py update all` | |
* ComfyUI ์ ๊ฒฝ๋ก๋ COMFYUI_PATH ํ๊ฒฝ ๋ณ์๋ก ์ค์ ํ ์ ์์ต๋๋ค. ๋ง์ฝ ์๋ตํ ๊ฒฝ์ฐ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ๊ณ ๋ฉ์์ง๊ฐ ๋ํ๋๋ฉฐ, ComfyUI-Manager๊ฐ ์ค์น๋ ๊ฒฝ๋ก๋ฅผ ๊ธฐ์ค์ผ๋ก ์๋ ๊ฒฝ๋ก๋ก ์ค์ ๋ฉ๋๋ค. | |
``` | |
WARN: The `COMFYUI_PATH` environment variable is not set. Assuming `custom_nodes/ComfyUI-Manager/../../` as the ComfyUI path. | |
``` | |
## Features | |
### 1. --channel, --mode | |
* ์ ๋ณด ๋ณด๊ธฐ ๊ธฐ๋ฅ๊ณผ ์ปค์คํ ๋ ธ๋ ๊ด๋ฆฌ ๊ธฐ๋ฅ์ ๊ฒฝ์ฐ๋ --channel๊ณผ --mode๋ฅผ ํตํด ์ ๋ณด DB๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค. | |
* ์๋ค ๋ค์ด `python cm-cli.py update all --channel recent --mode remote`์ ๊ฐ์ command๋ฅผ ์คํํ ๊ฒฝ์ฐ, ํ์ฌ ComfyUI-Manager repo์ ๋ด์ฅ๋ ๋ก์ปฌ์ ์ ๋ณด๊ฐ ์๋ remote์ ์ต์ ์ ๋ณด๋ฅผ ๊ธฐ์ค์ผ๋ก ๋์ํ๋ฉฐ, recent channel์ ์๋ ๋ชฉ๋ก์ ๋์์ผ๋ก๋ง ๋์ํฉ๋๋ค. | |
* --channel, --mode ๋ `simple-show, show, install, uninstall, update, disable, enable, fix` command์์๋ง ์ฌ์ฉ ๊ฐ๋ฅํฉ๋๋ค. | |
### 2. ๊ด๋ฆฌ ์ ๋ณด ๋ณด๊ธฐ | |
`[simple-show|show] [installed|enabled|not-installed|disabled|all|snapshot|snapshot-list] ?[--channel <channel name>] ?[--mode [remote|local|cache]]` | |
* `[show|simple-show]` - `show`๋ ์์ธํ๊ฒ ์ ๋ณด๋ฅผ ๋ณด์ฌ์ฃผ๋ฉฐ, `simple-show`๋ ๊ฐ๋จํ๊ฒ ์ ๋ณด๋ฅผ ๋ณด์ฌ์ค๋๋ค. | |
`python cm-cli.py show installed` ์ ๊ฐ์ ์ฝ๋งจ๋๋ฅผ ์คํํ๋ฉด ์ค์น๋ ์ปค์คํ ๋ ธ๋์ ์ ๋ณด๋ฅผ ์์ธํ๊ฒ ๋ณด์ฌ์ค๋๋ค. | |
``` | |
-= ComfyUI-Manager CLI (V2.24) =- | |
FETCH DATA from: https://raw.githubusercontent.com/ltdrdata/ComfyUI-Manager/main/custom-node-list.json | |
[ ENABLED ] ComfyUI-Manager (author: Dr.Lt.Data) | |
[ ENABLED ] ComfyUI-Impact-Pack (author: Dr.Lt.Data) | |
[ ENABLED ] ComfyUI-Inspire-Pack (author: Dr.Lt.Data) | |
[ ENABLED ] ComfyUI_experiments (author: comfyanonymous) | |
[ ENABLED ] ComfyUI-SAI_API (author: Stability-AI) | |
[ ENABLED ] stability-ComfyUI-nodes (author: Stability-AI) | |
[ ENABLED ] comfyui_controlnet_aux (author: Fannovel16) | |
[ ENABLED ] ComfyUI-Frame-Interpolation (author: Fannovel16) | |
[ DISABLED ] ComfyUI-Loopchain (author: Fannovel16) | |
``` | |
`python cm-cli.py simple-show installed` ์ ๊ฐ์ ์ฝ๋งจ๋๋ฅผ ์ด์ฉํด์ ์ค์น๋ ์ปค์คํ ๋ ธ๋์ ์ ๋ณด๋ฅผ ๊ฐ๋จํ๊ฒ ๋ณด์ฌ์ค๋๋ค. | |
``` | |
-= ComfyUI-Manager CLI (V2.24) =- | |
FETCH DATA from: https://raw.githubusercontent.com/ltdrdata/ComfyUI-Manager/main/custom-node-list.json | |
ComfyUI-Manager | |
ComfyUI-Impact-Pack | |
ComfyUI-Inspire-Pack | |
ComfyUI_experiments | |
ComfyUI-SAI_API | |
stability-ComfyUI-nodes | |
comfyui_controlnet_aux | |
ComfyUI-Frame-Interpolation | |
ComfyUI-Loopchain | |
``` | |
* `[installed|enabled|not-installed|disabled|all|snapshot|snapshot-list]` | |
* `enabled`, `disabled`: ์ค์น๋ ์ปค์คํ ๋ ธ๋๋ค ์ค enable ๋์๊ฑฐ๋, disable๋ ๋ ธ๋๋ค์ ๋ณด์ฌ์ค๋๋ค. | |
* `installed`: enable, disable ์ฌ๋ถ์ ์๊ด์์ด ์ค์น๋ ๋ชจ๋ ๋ ธ๋๋ฅผ ๋ณด์ฌ์ค๋๋ค | |
* `not-installed`: ์ค์น๋์ง ์์ ์ปค์คํ ๋ ธ๋์ ๋ชฉ๋ก์ ๋ณด์ฌ์ค๋๋ค. | |
* `all`: ๋ชจ๋ ์ปค์คํ ๋ ธ๋์ ๋ชฉ๋ก์ ๋ณด์ฌ์ค๋๋ค. | |
* `snapshot`: ํ์ฌ ์ค์น๋ ์ปค์คํ ๋ ธ๋์ snapshot ์ ๋ณด๋ฅผ ๋ณด์ฌ์ค๋๋ค. `show`๋กค ํตํด์ ๋ณผ ๊ฒฝ์ฐ๋ json ์ถ๋ ฅ ํํ๋ก ๋ณด์ฌ์ฃผ๋ฉฐ, `simple-show`๋ฅผ ํตํด์ ๋ณผ ๊ฒฝ์ฐ๋ ๊ฐ๋จํ๊ฒ, ์ปค๋ฐ ํด์์ ํจ๊ป ๋ณด์ฌ์ค๋๋ค. | |
* `snapshot-list`: ComfyUI-Manager/snapshots ์ ์ ์ฅ๋ snapshot ํ์ผ์ ๋ชฉ๋ก์ ๋ณด์ฌ์ค๋๋ค. | |
### 3. ์ปค์คํ ๋ ธ๋ ๊ด๋ฆฌ ํ๊ธฐ | |
`[install|reinstall|uninstall|update|disable|enable|fix] node_name ... ?[--channel <channel name>] ?[--mode [remote|local|cache]]` | |
* `python cm-cli.py install ComfyUI-Impact-Pack ComfyUI-Inspire-Pack ComfyUI_experiments` ์ ๊ฐ์ด ์ปค์คํ ๋ ธ๋์ ์ด๋ฆ์ ๋์ดํด์ ๊ด๋ฆฌ ๊ธฐ๋ฅ์ ์ ์ฉํ ์ ์์ต๋๋ค. | |
* ์ปค์คํ ๋ ธ๋์ ์ด๋ฆ์ `show`๋ฅผ ํ์ ๋ ๋ณด์ฌ์ฃผ๋ ์ด๋ฆ์ด๋ฉฐ, git repository์ ์ด๋ฆ์ ๋๋ค. | |
(์ถํ nickname ์ ์ฌ์ฉ๊ฐ๋ฅํ๋๊ณ ์ ๋ฐ์ดํธ ํ ์์ ์ ๋๋ค.) | |
`[update|disable|enable|fix] all ?[--channel <channel name>] ?[--mode [remote|local|cache]]` | |
* `update, disable, enable, fix` ๊ธฐ๋ฅ์ all ๋ก ์ง์ ๊ฐ๋ฅํฉ๋๋ค. | |
* ์ธ๋ถ ๋์ | |
* `install`: ์ง์ ๋ ์ปค์คํ ๋ ธ๋๋ค์ ์ค์นํฉ๋๋ค | |
* `reinstall`: ์ง์ ๋ ์ปค์คํ ๋ ธ๋๋ฅผ ์ญ์ ํ๊ณ ์ฌ์ค์น ํฉ๋๋ค. | |
* `uninstall`: ์ง์ ๋ ์ปค์คํ ๋ ธ๋๋ค์ ์ญ์ ํฉ๋๋ค. | |
* `update`: ์ง์ ๋ ์ปค์คํ ๋ ธ๋๋ค์ ์ ๋ฐ์ดํธํฉ๋๋ค. | |
* `disable`: ์ง์ ๋ ์ปค์คํ ๋ ธ๋๋ค์ ๋นํ์ฑํํฉ๋๋ค. | |
* `enable`: ์ง์ ๋ ์ปค์คํ ๋ ธ๋๋ค์ ํ์ฑํํฉ๋๋ค. | |
* `fix`: ์ง์ ๋ ์ปค์คํ ๋ ธ๋์ ์์กด์ฑ์ ๊ณ ์น๊ธฐ ์ํ ์๋๋ฅผ ํฉ๋๋ค. | |
### 4. ์ค๋ ์ท ๊ด๋ฆฌ ๊ธฐ๋ฅ | |
* `python cm-cli.py save-snapshot ?[--output <snapshot .json/.yaml>]`: ํ์ฌ์ snapshot์ ์ ์ฅํฉ๋๋ค. | |
* --output ์ผ๋ก ์์์ ๊ฒฝ๋ก์ .yaml ํ์ผ๊ณผ format์ผ๋ก ์ ์ฅํ ์ ์์ต๋๋ค. | |
* `python cm-cli.py restore-snapshot <snapshot .json/.yaml>`: ์ง์ ๋ snapshot์ผ๋ก ๋ณต๊ตฌํฉ๋๋ค. | |
* snapshot ๊ฒฝ๋ก์ ํ์ผ์ด ์กด์ฌํ๋ ๊ฒฝ์ฐ ํด๋น snapshot์ ๋ก๋ํฉ๋๋ค. | |
* snapshot ๊ฒฝ๋ก์ ํ์ผ์ด ์กด์ฌํ์ง ์๋ ๊ฒฝ์ฐ ๋ฌต์์ ์ผ๋ก, ComfyUI-Manager/snapshots ์ ์๋ค๊ณ ๊ฐ์ ํฉ๋๋ค. | |
* `--pip-non-url`: PyPI ์ ๋ฑ๋ก๋ pip ํจํค์ง๋ค์ ๋ํด์ ๋ณต๊ตฌ๋ฅผ ์ํ | |
* `--pip-non-local-url`: web URL์ ๋ฑ๋ก๋ pip ํจํค์ง๋ค์ ๋ํด์ ๋ณต๊ตฌ๋ฅผ ์ํ | |
* `--pip-local-url`: local ๊ฒฝ๋ก๋ฅผ ์ง์ ํ๊ณ ์๋ pip ํจํค์ง๋ค์ ๋ํด์ ๋ณต๊ตฌ๋ฅผ ์ํ | |
### 5. CLI only mode | |
ComfyUI-Manager๋ฅผ CLI๋ก๋ง ์ฌ์ฉํ ๊ฒ์ธ์ง๋ฅผ ์ค์ ํ ์ ์์ต๋๋ค. | |
`cli-only-mode [enable|disable]` | |
* security ํน์ policy ์ ์ด์ ๋ก GUI ๋ฅผ ํตํ ComfyUI-Manager ์ฌ์ฉ์ ์ ํํ๊ณ ์ถ์ ๊ฒฝ์ฐ ์ด ๋ชจ๋๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. | |
* CLI only mode๋ฅผ ์ ์ฉํ ๊ฒฝ์ฐ ComfyUI-Manager ๊ฐ ๋งค์ฐ ์ ํ๋ ์ํ๋ก ๋ก๋๋์ด, ๋ด๋ถ์ ์ผ๋ก ์ ๊ณตํ๋ web API๊ฐ ๋นํ์ฑํ ๋๋ฉฐ, ๋ฉ์ธ ๋ฉ๋ด์์๋ Manager ๋ฒํผ์ด ํ์๋์ง ์์ต๋๋ค. | |
### 6. ์์กด์ฑ ์ค์น | |
`restore-dependencies` | |
* `ComfyUI/custom_nodes` ํ์ ๊ฒฝ๋ก์ ์ปค์คํ ๋ ธ๋๋ค์ด ์ค์น๋์ด ์๊ธด ํ์ง๋ง, ์์กด์ฑ์ด ์ค์น๋์ง ์์ ๊ฒฝ์ฐ ์ฌ์ฉํ ์ ์์ต๋๋ค. | |
* colab ๊ณผ ๊ฐ์ด cloud instance๋ฅผ ์๋ก ์์ํ๋ ๊ฒฝ์ฐ ์์กด์ฑ ์ฌ์ค์น ๋ฐ ์ค์น ์คํฌ๋ฆฝํธ๊ฐ ์ฌ์คํ ๋์ด์ผ ํ๋ ๊ฒฝ์ฐ ์ฌ์ฉํฉ๋๋ค. | |
* ComfyUI์ ์ฌ์ค์นํ ๊ฒฝ์ฐ, custom_nodes ๊ฒฝ๋ก๋ง ๋ฐฑ์ ํ๋ค๊ฐ ์ฌ์ค์น ํ ๊ฒฝ์ฐ ํ์ฉ ๊ฐ๋ฅํฉ๋๋ค. | |
### 7. clear | |
GUI์์ install, update๋ฅผ ํ๊ฑฐ๋ snapshot ์ restoreํ๋ ๊ฒฝ์ฐ ์์ฝ์ ํตํด์ ๋ค์๋ฒ ComfyUI๋ฅผ ์คํํ ๊ฒฝ์ฐ ์คํ๋๋ ๊ตฌ์กฐ์ ๋๋ค. `clear` ๋ ์ด๋ฐ ์์ฝ ์ํ๋ฅผ clearํด์, ์๋ฌด๋ฐ ์ฌ์ ์คํ์ด ์ ์ฉ๋์ง ์๋๋ก ํฉ๋๋ค. |