Get started with ComfyUI Limited, a stripped-down alternative to run your ComfyUI that meets the minimum requirements for a quick and lightweight graph interface experience. Just like a workflow viewer.
Using ComfyUI as a workflow viewer can indeed be valuable for various users and developers if it has support for custom nodes. This demo showcase Limited, a lightweight method to run ComfyUI. It's ideal for situations where you need to quickly access the graph interface without the overhead of the full ComfyUI. That said, this demo is capable of loading workflows with custom nodes and without the installation of requirements as fast as possible to restart, same as a workflow viewer. You can modify the script to suit your needs, like letting certain modules to load for dev purposes.
- Lightweight: ComfyUI Limited requires minimal resources, making it suitable for testing and development environments.
- Fast: Load the graph interface quickly, without the overhead of the full ComfyUI.
- Utilizes common practices: ComfyUI Limited uses test-driven development practices to ensure compatibility with your existing ComfyUI setup.
- Compatibility: ComfyUI Limited do not modify your current ComfyUI setup and updates, including custom nodes updates.
- No image generation: ComfyUI Limited does not support generating images.
- Limited custom node support: I'm testing a limited list of custom nodes. If you have more installed, they may load, but may not function as expected.
- Limited error handling: ComfyUI Limited may ignore some error messages, so be aware of this limitation.
- Python 3.x
- aiohttp
- git for windows
Copy limited.py to the root directory of your current ComfyUI installation, next to main.py
-
Lightweight Clone ComfyUI repository and ComfyUI-Manager (recommended):
git clone --depth 1 --filter=blob:none https://github.com/comfyanonymous/ComfyUI cd ComfyUI\custom_nodes git clone --depth 1 --filter=blob:none https://github.com/ltdrdata/ComfyUI-Manager
-
Install the minimum required dependency package in a virtual environment:
python -s -m pip install aiohttp
-
Copy limited.py to the root directory of your ComfyUI installation, next to main.py
Run ComfyUI Limited like this, change port if you want (or make a bat file):
python -s limited.py --cpu --windows-standalone-build --port 8189-s: Run python with disable the import of the site module.--cpu: use cpu, not gpu--port: custom port, allow to free standard ComfyUI port 8188.--windows-standalone-build: open the web browser when ready.
- Delete limited.py file.
- Delete limited_modules.log file
Contains the modules this script should not prevent its load.
Contains the blacklist of modules to prevent its load by using a dummy module.
Show on console whenever installation of modules gets ignored.
Extra code to prevent installations from custom nodes by alternative methods.
- ComfyUI Limited is intended for graphical user interface use only, so you won't be able to generate images.
- ComfyUI Limited now supports dynamically loading custom nodes, provided they aren’t too complex.
- Keep in mind that ComfyUI Limited is a stripped-down instance of ComfyUI, and all features not related to graph nodes will not be available.
-
ltdrdata ComfyUI-Manager
-
rgthree rgthree-comfy
-
yolain ComfyUI-Easy-Use *
-
Suzie1 ComfyUI_Comfyroll_CustomNodes *
-
shiimizu ComfyUI_smZNodes *
-
pythongosssss ComfyUI-Custom-Scripts
-
giriss comfy-image-saver (deprecated repo, switch to alexoplus' fork instead)
-
alexoplus ComfyUI-Image-Saver
-
54rt1n ComfyUI-DareMerge
-
jags111 efficiency-nodes-comfyui *
-
WASasquatch was-node-suite-comfyui
-
ZHO-ZHO-ZHO ComfyUI-BRIA_AI-RMBG
-
TinyTerra ComfyUI_tinyterraNodes
-
Nourepide ComfyUI-Allor *
-
ltdrdata ComfyUI-Impact-Pack
-
crystian ComfyUI-Crystools *
-
Fannovel16 comfyui_controlnet_aux *
-
cubiq ComfyUI_IPAdapter_plus
-
spacepxl ComfyUI-Florence-2
-
EllangoK ComfyUI-post-processing-nodes
-
cubiq ComfyUI_essentials
-
chflame163 ComfyUI_LayerStyle *
-
chflame163 ComfyUI_LayerStyle_Advance *
-
BadCafeCode masquerade-nodes-comfyui
-
receyuki comfyui-prompt-reader-node
-
M1kep ComfyLiterals
-
WASasquatch ComfyUI_Preset_Merger
-
filliptm ComfyUI_Fill-Nodes
-
huchenlei ComfyUI-layerdiffuse *
-
BlenderNeko ComfyUI_ADV_CLIP_emb
-
comfyanonymous ComfyUI_experiments
-
bvhari ComfyUI_ImageProcessing
-
Jcd1230 rembg-comfyui-node
-
Loewen-Hob rembg-comfyui-node-better
-
Mamaaaamooooo batchImg-rembg-ComfyUI-nodes
-
Derfuu Derfuu_ComfyUI_ModdedNodes
-
fssorc ComfyUI_FaceShaper
-
asagi4 comfyui-prompt-control *
(* the complexity of this custom nodes required extra effort)
tested 2025-01-09
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\gaussian_blur_ally.py
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\rembg-comfyui-node-better
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\rembg-comfyui-node
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\websocket_image_save.py
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\modelMergeByKey.py
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_Preset_Merger
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUi_NNLatentUpscale
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-Florence-2
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\clipseg.py
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\batchImg-rembg-ComfyUI-nodes
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_ADV_CLIP_emb
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfy-image-saver
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_ImageProcessing
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-BRIA_AI-RMBG
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyLiterals
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\masquerade-nodes-comfyui
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-Image-Saver
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_experiments
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-post-processing-nodes
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-Impact-Subpack
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui-inpaint-nodes
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_IPAdapter_plus
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-layerdiffuse
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-Custom-Scripts
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_FaceShaper
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_UltimateSDUpscale
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui-tooling-nodes
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui-prompt-control
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_essentials
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-DareMerge
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\efficiency-nodes-comfyui
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\Derfuu_ComfyUI_ModdedNodes
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-Manager
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\rgthree-comfy
'
' 0.0 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui-prompt-reader-node
'
' 0.1 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-Crystools
'
' 0.1 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-Allor
'
' 0.1 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\was-node-suite-comfyui
'
' 0.1 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_smZNodes
'
' 0.1 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_Fill-Nodes
'
' 0.1 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-Impact-Pack
'
' 0.2 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_LayerStyle_Advance
'
' 0.2 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI-Easy-Use
'
' 0.2 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_LayerStyle
'
' 0.2 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_Comfyroll_CustomNodes
'
' 0.2 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\comfyui_controlnet_aux
'
' 0.3 seconds: D:\ComfyUI_windows_portable\ComfyUI\custom_nodes\ComfyUI_tinyterraNodes
I would like to thank the original authors of ComfyUI for their work and the contributors to the custom nodes for their contributions to the ComfyUI ecosystem.
This project is licensed under the MIT License - see the LICENSE file for details.