What is ComfyUI Manager
ComfyUI Manager is an extension designed to facilitate the installation and management of custom nodes within the ComfyUI interface.
ComfyUI Manager Project official server website:https://github.com/ltdrdata/ComfyUI-Manager
Guide to Installing ComfyUI Manager in Different Environments
General Installation Method: ComfyUI-Manager Only
- Navigate to your
custom_nodes
directory:bashcd custom_nodes
- Clone the ComfyUI-Manager repository:bash
git clone https://github.com/ltdrdata/ComfyUI-Manager.git
- Restart ComfyUI for the changes to take effect.
Installation for Portable ComfyUI Version: ComfyUI-Manager Only
- Install Git:
- Visit the official Git website to download the installer.
- Opt for the standalone version during installation.
- Ensure you select the option “use windows default console window”.
- Download
install-manager-for-portable-version.bat
script into the directory where “ComfyUI_windows_portable” has been installed. - Double-click on
install-manager-for-portable-version.bat
batch file to initiate the portable installation.
Installation for Linux + Venv: ComfyUI + ComfyUI-Manager
- Download
install-comfyui-venv-linux.sh
into an empty installation directory. - Make the script executable:bash
chmod +x install-comfyui-venv-linux.sh
- Execute the script:bash
./install-comfyui-venv-linux.sh
- Post installation, ComfyUI can be executed with:
- For GPU support:bash
./run_gpu.sh
- For CPU only:bash
./run_cpu.sh
- For GPU support:bash
Colab Notebook Installation
The ComfyUI repository provides Colab notebooks that offer a seamless installation and usage experience for ComfyUI, inclusive of the ComfyUI-Manager.
- Features:
- Directly access and use ComfyUI through the provided link.
- Enables basic installation support for ComfyUI-Manager.
- Facilitates automatic installation of custom node dependencies upon Colab notebook restarts.
To begin with ComfyUI on Colab, click here (Link not provided, please ensure you add the correct URL).
How to Use ComfyUI Manager
1. Accessing the Manager
From the main menu of ComfyUI, click the “Manager” button.
2. Using the Manager Menu
Upon accessing the manager, you will see various options:
- Install Custom Nodes: Lets you view and manage custom nodes.
- Install Models: Provides a list of models you can install.
- Use local DB: When toggled on, this feature ensures that the application uses data stored on your device instead of fetching data from the internet.
- Fetch Updates: This option fetches any update data for the custom nodes you have locally. It is important to note that fetching update data and actually updating the nodes are separate processes.
3. Installing Nodes or Models
When you click on either ‘Install Custom Nodes’ or ‘Install Models’, an installer dialog box will appear.
For nodes:
For models:
In this dialog:
- Installed: Indicates that the item is already installed on your system.
- Install: Click this button to install the respective node or model.
- Try Install: For nodes whose installation details might be ambiguous or unverified, this button allows you to attempt the installation. Use with caution.
4. Customizing Node Display
In the manager menu, you’ll find a Badge option. This allows you to customize how the nodes are displayed:
- Badge: Nickname: This displays the nickname or a short name for the custom nodes.
- Badge: ID Nickname: Along with the nickname, this option will also show the internal ID of the node, providing more detailed information.
How to register your custom node into ComfyUI-Manager
- Add an entry to
custom-node-list.json
located in the root of ComfyUI-Manager and submit a Pull Request. - NOTE: Before submitting the PR after making changes, please check
Use local DB
and ensure that the extension list loads without any issues in theInstall custom nodes
dialog. Occasionally, missing or extra commas can lead to JSON syntax errors. - The remaining JSON will be updated through scripts in the future, so you don’t need to worry about it.
Custom node support guide
- Currently, the system operates by cloning the git repository and sequentially installing the dependencies listed in requirements.txt using pip, followed by invoking the install.py script. In the future, we plan to discuss and determine the specifications for supporting custom nodes.
- Please submit a pull request to update either the custom-node-list.json or model-list.json file.
- The scanner currently provides a detection function for missing nodes, which is capable of detecting nodes described by the following two patterns.
- Or you can provide manually
node_list.json
file.
- Or you can provide manually
NODE_CLASS_MAPPINGS = {
"ExecutionSwitch": ExecutionSwitch,
"ExecutionBlocker": ExecutionBlocker,
...
}
NODE_CLASS_MAPPINGS.update({
"UniFormer-SemSegPreprocessor": Uniformer_SemSegPreprocessor,
"SemSegPreprocessor": Uniformer_SemSegPreprocessor,
})
- When you write a docstring in the header of the .py file for the Node as follows, it will be used for managing the database in the Manager.
- Currently, only the
nickname
is being used, but other parts will also be utilized in the future. - The
nickname
will be the name displayed on the badge of the node. - If there is no
nickname
, it will be truncated to 20 characters from the arbitrarily written title and used.
- Currently, only the
"""
@author: Dr.Lt.Data
@title: Impact Pack
@nickname: Impact Pack
@description: This extension offers various detector nodes and detailer nodes that allow you to configure a workflow that automatically enhances facial details. And provide iterative upscaler.
"""
- Special purpose files (optional)
node_list.json
– When your custom nodes pattern of NODE_CLASS_MAPPINGS is not conventional, it is used to manually provide a list of nodes for reference. (example)requirements.txt
– When installing, this pip requirements will be installed automaticallyinstall.py
– When installing, it is automatically calleduninstall.py
– When uninstalling, it is automatically calleddisable.py
– When disabled, it is automatically called- When installing a custom node setup
.js
file, it is recommended to write this script for disabling.
- When installing a custom node setup
enable.py
– When enabled, it is automatically called- All scripts are executed from the root path of the corresponding custom node.
Support of missing nodes installation
- When you click on the
Install Missing Custom Nodes
button in the menu, it displays a list of extension nodes that contain nodes not currently present in the workflow.
- Currently, support is not available for custom nodes that can only be downloaded through civitai.
- ComfyUI_Custom_Nodes_AlekPet
ComfyUI-Manager Troubleshooting
- If your
git.exe
is installed in a specific location other than system git, please install ComfyUI-Manager and run ComfyUI. Then, specify the path including the file name ingit_exe =
in the ComfyUI-Manager/config.ini file that is generated. - If updating ComfyUI-Manager itself fails, please go to the ComfyUI-Manager directory and execute the command
git update-ref refs/remotes/origin/main a361cc1 && git fetch --all && git pull
. - Alternatively, download the update-fix.py script from update-fix.py and place it in the ComfyUI-Manager directory. Then, run it using your Python command. For the portable version, use
..\..\..\python_embeded\python.exe update-fix.py
. - For cases where nodes like
PreviewTextNode
fromComfyUI_Custom_Nodes_AlekPet
are only supported as front-end nodes, we currently do not provide missing nodes for them. - Currently,
vid2vid
is not being updated, causing compatibility issues.