Beginner 9 minImage

ComfyUI Manager: install nodes, repair the erreurs

ComfyUI Manager is the extension that installs, updates, and repairs ComfyUI custom nodes from the interface, without opening a terminal. It is also the first thing to try when a workflow downloaded online opens covered in red nodes. This guide explains how to install it for your version of ComfyUI, how to add a node, and how to handle the three common failures: missing node, node installed but absent, and node list that fails to load. It ends with precautions to take before enabling an unknown extension, because a custom node is a Python program that runs with your permissions.

By Samir K.·Update 2026-10-09·Tested on Windows, macOS, and Linux

#What ComfyUI Manager is for

By default, ComfyUI can only do what its built-in nodes allow. Everything else—advanced ControlNet, preprocessors, upscalers, video tools, convenience nodes—comes from extensions called custom nodes. Each custom node is a Git repository containing Python code, placed in your installation’s custom_nodes folder and loaded at startup.

Without Manager, installing an extension means manually cloning a repository, installing its Python dependencies in the right environment, and then restarting. Manager performs these steps from a window in the interface. Most importantly, it provides three features you always end up using: detecting nodes missing from a workflow, a repair button for nodes that refuse to load, and snapshots for rolling back after an unfortunate update.

Custom Nodes Manager
The catalog: search, installation, updating, disabling, and uninstalling of referenced extensions.
Install Missing Custom Nodes
Analyze the open workflow and list the missing extensions that explain the red nodes.
Model Manager
Downloads known models directly into the correct models subfolder.
Update All
Updates all installed extensions at once. Convenient, but it is also the command most likely to break an installation that was working.
Snapshot Manager
Records the installation state (ComfyUI version, extensions, Python packages) so you can return to it.
i
Manager, not magician
The Manager installs code written by third parties. It does not guarantee that an extension works with your version of ComfyUI or that it is safe. The sections on missing nodes and security explain how to limit the damage.

#Prerequisite: know where your custom_nodes folder is

The Local Image AI Kit

AI images and videos on your own machine, no subscription and no credits: ComfyUI, Flux, Z-Image and Wan 2.2 with ready-to-load workflows, VRAM tiers, LoRA training and the legal frame.

  • Lifetime online access
  • PDF + files
  • Lifetime updates

The Manager, like any extension, lives in the custom_nodes folder. Its location depends on how you installed ComfyUI, and half of the “node installed but missing” problems come from an extension placed in the wrong folder or dependencies installed in the wrong Python environment.

ComfyUI Desktop
The base folder is the one you chose during installation (often a ComfyUI folder in your Documents). It contains custom_nodes, models, input, and output. The Python environment is managed by the application, in a .venv folder alongside it.
Portable Windows version
In the decompressed archive: ComfyUI_windows_portable/ComfyUI/custom_nodes. The bundled Python is ComfyUI_windows_portable/python_embeded, and that is the one you must use to install dependencies—never the system Python.
Manual installation (git clone)
ComfyUI/custom_nodes, with the virtual environment you created for ComfyUI. Activate it before running any pip command.
In all cases
Git must be installed and accessible: Manager uses it to clone repositories. On Windows, check with git --version in a terminal.

If ComfyUI isn't installed yet, start with the ComfyUI installation guide, which compares Desktop, portable, and manual installations. This guide assumes you already have an installation that generates an image.

#Install ComfyUI Manager according to your version

There are three situations, and the first is the most common in 2026: the Manager is already there. First check whether the interface's top bar has a Manager button before installing anything.

#Case 1: it’s already included (Desktop, comfy-cli)

The ComfyUI Desktop application includes the Manager. The same applies to an installation performed with the comfy-cli command-line tool, which adds it by default. If the Manager button appears at the top of the interface, you do not need to do anything: move on to the next section.

#Case 2: Recent ComfyUI, integrated Manager disabled

ComfyUI's main repository now includes the Manager as an optional dependency. It is not enabled automatically: you need to install the manager_requirements.txt file at the root of ComfyUI, then start the server with the --enable-manager option. This is the preferred path for a recent manual installation, because the Manager will then track the version expected by your ComfyUI.

Terminal (manual installation, virtual environment activated)
cd ComfyUI
pip install -r manager_requirements.txt
python main.py --enable-manager

To avoid retyping the option every time, add it to your launch script or service. In the portable version, place it at the end of the command line in the run_nvidia_gpu.bat file (or its AMD or Intel equivalent).

#Case 3: classic installation in custom_nodes

This is the historical method, still documented in the Manager repository, and the only option for a version of ComfyUI that does not have the manager_requirements.txt file. Clone the repository into custom_nodes, then restart ComfyUI completely.

Terminal (Linux, macOS, or manual Windows installation)
cd ComfyUI/custom_nodes
git clone https://github.com/Comfy-Org/ComfyUI-Manager.git
# puis arrêter ComfyUI (Ctrl+C) et le relancer
cd ..
python main.py
Portable Windows version (from ComfyUI_windows_portable)
cd ComfyUI\custom_nodes
git clone https://github.com/Comfy-Org/ComfyUI-Manager.git
cd ..\..
.\python_embeded\python.exe -m pip install -r ComfyUI\custom_nodes\ComfyUI-Manager\requirements.txt
# puis relancer run_nvidia_gpu.bat
!
Full restart, not a page reload
ComfyUI loads extensions only once, when the Python server starts. Refreshing the browser is never enough: you must stop the process (close the terminal window or press Ctrl+C, quit the Desktop application) and restart it. The Manager provides a Restart button that does this for you when it is already active.

After restarting, read the terminal. A line mentioning ComfyUI-Manager followed by its version number confirms that it loaded. If you see IMPORT FAILED next to its name instead, the dependencies were not installed in the correct Python environment: rerun the pip command with ComfyUI's environment.

#Add a custom node with Manager

  1. 01
    Open the catalog
    Click Manager in the top bar, then click Custom Nodes Manager. The first time you open it, it downloads the list of referenced extensions, which may take a few seconds.
  2. 02
    Search extensions
    Enter its name or a keyword in the search field. The columns show the author, description, number of GitHub stars, and, depending on the versions, the date of the last update. Make sure the author matches the repository you were recommended: similar names are common.
  3. 03
    Install
    Click Install. The Manager clones the repository into custom_nodes and installs the dependencies listed in its requirements.txt. The terminal scrolls during the process. If the extension exists on the Comfy Registry, the Manager generally offers a published, numbered version rather than the latest Git revision: choose the published version, which is more stable.
  4. 04
    Restart
    A banner prompts you to restart. Accept it. ComfyUI restarts, reloads all extensions, and the browser reconnects. Refresh the page if the interface does not return on its own.
  5. 05
    Check
    Double-click the canvas and type the name of a node from the extension. If it appears in the list, you’re done. Otherwise, read the section on installed but missing nodes.

For scripts and installations without an interface, comfy-cli covers the same need from the command line: comfy node install followed by the extension name installs it in the active ComfyUI installation. The Manager and comfy-cli read the same custom_nodes folder, so you can use both.

→
Install fewer tools, and stick to known ones
A working installation rarely has more than a dozen extensions. Each extension adds Python dependencies that can conflict with one another. Before installing, ask yourself whether an integrated node or an extension already present does the same thing.

#Missing nodes: the workflow opens with red nodes

This is the Manager's number-one use case. You load a workflow found online or extracted from an image, and ComfyUI displays a window listing missing node types, with red blocks on the canvas. The workflow uses extensions you do not have.

  1. 01
    Read the list of missing types
    The warning window shows the nodes’ internal names. Note them down: they help you find the extension if automatic detection fails.
  2. 02
    Run Install Missing Custom Nodes
    In the Manager menu, this button cross-references missing nodes with the database of known extensions and displays the ones that provide them. Check them and install.
  3. 03
    Restart and reload the workflow
    After restarting, reopen the workflow file (or drag the image in again). The red nodes should have returned to their normal color.
  4. 04
    Handle the leftovers manually
    If a node is still missing, detection did not find its extension: it is not referenced, it has been renamed, or the node was renamed by its author. Look up the node’s internal name in the repository or forum where the workflow came from, then install the extension by that name in the catalog.

Two pitfalls come up often. The first: a workflow that requires an extension found nowhere except at a direct download link. Treat it with suspicion; this is the pattern of the malicious nodes described below. The second: a missing node that actually belongs to ComfyUI itself because your version is too old. In that case, the solution is to update ComfyUI, not install anything.

#Node installed but missing: IMPORT FAILED, disabled, wrong folder

The extension appears as installed in the Manager, but its nodes do not exist in the interface. Diagnose it in the terminal when ComfyUI starts: each extension is listed there with its load time, and failed ones are marked IMPORT FAILED followed by a Python traceback. This traceback is the only useful information; copy it before seeking help.

IMPORT FAILED with ModuleNotFoundError
A Python dependency is missing. In Custom Nodes Manager, filter for Import Failed and click Try fix: the Manager will reinstall the extension's dependencies. If that fails, install the extension's requirements.txt manually using ComfyUI's Python (python_embeded in the portable version).
IMPORT FAILED with a version error
The extension requires a package version (often torch, numpy, or transformers) that is incompatible with another extension or with ComfyUI. You have to make a trade-off: read the repository issues, disable the less useful extension, or wait for a fix. Don't force a torch version; you would break ComfyUI.
Extension disabled
The Manager disables an extension by adding the .disabled suffix to its folder name. ComfyUI then ignores it completely. Filter for Disabled in the catalog to reactivate it, or remove the suffix manually.
Wrong folder
You have two installations (Desktop and portable, or two clones), and the extension is in the other one’s custom_nodes directory. The exact path of the loaded directory appears in the first lines of the terminal at startup.
Empty or truncated repository
An interrupted clone leaves a folder without any code. Delete the extension folder and reinstall it.

When ComfyUI itself no longer starts or the interface becomes unstable after an installation, the official troubleshooting documentation recommends isolating the culprit by binary search. First launch ComfyUI without any extensions to confirm that the problem really comes from a custom node.

Terminal: start without any extensions
python main.py --disable-all-custom-nodes

If everything works this way, move half of the custom_nodes folders to a separate folder, restart, and repeat with the remaining half until you isolate the faulty extension. With ten extensions, four restarts are enough. Then uninstall it from the Manager and report the issue in its repository with the terminal trace.

i
Desktop: where is the terminal?
The Desktop app does not display a terminal by default, but it writes the same log. The app’s help menu provides access to the log folder; the server file contains the IMPORT FAILED lines and stack traces.

#Registry errors: the node list does not load

The Manager does not store the catalog locally: when it opens, it downloads a list of extensions from the Manager repository and, for published extensions, queries the Comfy Registry, Comfy Org's official repository where authors publish numbered versions. When this retrieval fails, the catalog remains empty, node installation runs indefinitely, or a message reports that loading the list failed.

No network access from the server
The Manager downloads from the machine running ComfyUI, not from your browser. On a remote server or in a container, make sure it can access the Internet (proxy, firewall, DNS). Running a curl test to github.com from that machine will settle the question.
Database mode
In the Manager window, a DB selector lets you switch from the remote channel to a local copy of the list. Local mode lets you continue working with extensions you already know when GitHub is inaccessible; it won't show extensions added since then.
Canal
The Manager provides several list channels (default, recent, legacy, dev, among others). If an extension does not appear, return to the default channel before looking further; the other channels are for older or experimental extensions.
GitHub API limits
After many requests, GitHub may temporarily reject anonymous calls. Wait a few minutes instead of retrying in a loop.
Action denied by the security level
If the Manager says an action is not allowed at the current security level, it is not a network error: read the next section.

As a last resort, manual installation by running git clone in custom_nodes is still valid, followed by requirements.txt and a restart. The Manager then recognizes the extension as installed and can update it.

#Identify a risky extension before enabling it

A custom node is Python code executed when ComfyUI starts, with the permissions of the user who launches the server: it can read your files, browser session tokens, wallets, and access the Internet. This is not theoretical. In January 2026, the official ComfyUI repository documented a series of nodes published on the Comfy Registry under the name “Upscaler_4K,” which installed an infostealer targeting browsers, cryptocurrency wallets, and Discord tokens. In April 2026, a campaign described by Censys targeted ComfyUI instances exposed on the Internet by exploiting custom nodes that execute code without authentication.

The Manager includes a safeguard: a security level set by the security_level key in its config.ini file. The Manager repository documents four values: strong, normal (the default), normal-, and weak. The default level blocks the riskiest actions, such as installing from an arbitrary Git URL or installing pip packages on demand, and restrictions become stricter when ComfyUI is launched with --listen on a non-local address. The weak level removes all barriers: enable it only for a specific operation, on a machine that is not listening on the network, then switch back to normal. The exact matrix of actions allowed at each level is listed in the Manager's README, which is authoritative if in doubt.

Use the catalog, not a link
Extensions from the catalog and Registry are at least identified and can be removed if reported. A direct download link or a repository with no history is not.
Check the author, history, and stars
A repository created last week, with two commits, no issues, and a name that imitates a known extension is the typical profile of a trap node. Stars alone prove nothing, but a genuinely used extension has stars and open issues.
Beware of the promises
Miracle upscaler, “unrestricted” commercial model, workflow that requires a single extension unavailable elsewhere: reject by default.
Read requirements.txt
Before installing an unknown extension, open its repository and read the dependency list. Packages unrelated to the image (browser access, low-level networking, exotic archive compression) are a warning sign.
Never expose ComfyUI without protection
Without --listen, ComfyUI listens only on 127.0.0.1. If you need to expose it on the network, put a password-protected reverse proxy or VPN in front of it, and keep security_level set to normal.
!
The Manager does not scan the code
The Comfy Registry applies checks, yet malicious nodes have still been published there before being removed. The Manager does not analyze the code it installs. The only real protection is to limit the number of extensions and keep only those whose author you know.

#Update without breaking everything

Updates are the second leading cause of failures after installation. ComfyUI evolves quickly, extensions lag behind, and Update All applies everything at once. Three habits can keep you from losing a morning.

  1. 01
    Take a snapshot first
    Snapshot Manager, then Save snapshot. The Manager records the ComfyUI revision, each extension’s revision, and the list of Python packages in its snapshots folder. If an update breaks a workflow, Restore returns everything to this state after a restart.
  2. 02
    Update one extension at a time
    In the catalog, filter by Update and first update the extension you need. Test the relevant workflow. Update All is still useful on a simple installation, but only after taking a snapshot.
  3. 03
    Update ComfyUI separately
    The Update ComfyUI button updates the core. Use it when an extension requires it, not automatically: every core update can break unmaintained extensions, and ComfyUI's README itself warns that the latest commits may break many of them.

In ComfyUI Desktop, the core is updated by the application and follows the stable version; the Manager is used only for extensions. On the portable version and the manual installation, which follow the latest commits, the snapshot is your only safety net. A workflow that works is worth more than a newer version.

→
An archived workflow = its list of extensions
A workflow’s JSON file records node names, not extensions. To be able to replay it a year from now, export a Manager snapshot at the same time: it contains the URL and exact revision of each extension.

#Go further

The Manager solves extension problems; it does not replace understanding the graph. The following guides cover the rest of the chain, from installing ComfyUI to use cases that require custom nodes.

Official sources consulted for this guide: the Manager page and the custom node installation page in the ComfyUI documentation, the custom node troubleshooting page, and the README of the ComfyUI-Manager repository for security levels. The menu labels cited correspond to the Manager interface as described on those pages; they may vary from one version to another.

Did this guide help you?

Feedback, an error, or a clarification? Let us know—it improves the guide for everyone.