comfyui-workspace-manager
comfyui-workspace-manager copied to clipboard
A ComfyUI workflows and models management extension to organize and manage all your workflows, models in one place. Seamlessly switch between workflows, as well as import, export workflows, reuse subw...
☕️ ComfyUI Workspace Manager - Comfyspace
A ComfyUI workflow and model manager extension to organize and manage all your workflows, models and generated images in one place. Seamlessly switch between workflows, track version history and image generation history, 1 click install models from Civit ai, browse/update your installed models
If you have questions or suggestions, please join our Discord!
[New!] we're building a comfyui custom nodes library wiki like Pypi: https://www.nodecafe.org/ welcome any feedbacks!
‼️ [3-23-2024]search and install models from civitai is not working in previous versions, because civitai changed something in their api. Please update to the latest version if you are seeing blank screen in Install Models dialog
[5-7-2024] Author (me) is job hunting in Beijing 🥲 so recently maybe too busy to update this plugin. I will come back to updating this plugin as soon as I finish job hunting 🥲🫠
Installation
[Option 1] via ComfyUI Manager (Preferred)
Simply search for “ComfyUI Workspace Manager”, install, and restart ComfyUI.
[Option 2] via git
Like any other custom node installation, in your ComfyUI root folder run command and restart your ComfyUI.
cd custom_nodes && git clone https://github.com/11cafe/comfyui-workspace-manager.git
‼️ Please choose Auto Save or not first. Auto save will be DISABLED by default from next version. Be careful with Auto Save mode as it is constantly overwriting/saving your workflow, which can lead to unwanted overwriting of your precious work if not using carefully. If you disabled Auto Save, make sure you don't forget to Shift+S to save your workflows.
Features
Workflows manager
- 🔁Switch between different workflows easily. 1click open workflow in multiple browser tabs.
- 🤏Drag and drop to insert subworkflows into current flow.
- 🗂️Organize workflows with folders, tags.
- 📂Save and sync all your workflows in a local folder (by default under
/ComfyUI/my_workflows
customize in Settings)- Save workflow by pressing the 💾 button, or ⌨Shift+S shortcut (customize in Settings).
- Every time you save, it will create a new record in Version History. You can easily revert to any version.
- Enable/disable autosave workflow (please disable autosave if you are experiencing UI slowing)
- You can move files using OS File Explorer and it will be two-way synced with workspace.
- 🕛Version control of workflow, create/switch versions
- Bulk import workflows into your workspace
- 1click download all your workflows into a .zip
🔮Models manager:
- 1click install models from civitai to
models/
subfolder of the matching model type - Browse installed models with thumbnail image
- drag and drop to insert "load model_type" node into workflow
🖼️Image Gallery: Every image/video you generate will be saved in the gallery of the current workflow. You can set any image in the gallery as the cover photo of the workflow
- Dark/light mode
- cloud sync & backup workspace so you will never lose your data (Upcoming!)
- [beta!]One-click share workflow
Recommend using Chrome browser for the best experience. Safari doesn't work well. Edge or firefox should be fine too.
Updates
🦩v2.1 New gallery! Inspect image metadata, search image by prompt, model/lora used
Control+P quick spotlight search (like VSCode)
🦄v2.0 Two-way sync with local folder, models manager support external models path like Automatic1111, cloud sync workflows
v2.0 demo: https://youtu.be/7Hht_BMe844
v1.7 ComfyUI model manager, view your installed models, install models from civit ai, open workflow in multiple browser tabs
Usage
switch between flows:
🤏drag and drop to insert sub-workflow:
Bulk import flows:
Workflow operations: Manual Save, Download, Discard unsaved changes:
How do I save my workflow?
Save your workflow by either clicking the 💾 floppy disk icon button or ⌨Shift+S shortcut (customize this shortcut in Settings) Every time you save, it will create a new record in Version History. You can go back and switch versions in version history like git.
By default, We also enabled auto-saving your current workflow as a cache in case you forgot to save it manually. It may affect UI performance, if you experience UI lagging, ‼️‼️you can disable auto-saving in Settings:
Where are my workflow and workspace data stored?
🗂️All your workflows are saved in a folder in /ComfyUI/my_workflows
, you can change this path in settings.
Other metadata (versions, gallery images) is primarily stored in your browser cache (IndexDB) and backedup in your disk under /ComfyUI/custom_nodes/comfyui-workspace-manager/db/
. Press F12 or Inspect in right click browser menu, go to Application -> IndexedDB -> comfyui_workspace_db to see your data (workflows, version history, gallery, etc.)
If you switch browser, your will not see your previous metadata (version history, gallery images) in your new browser
Looking for colaborators and coworkers to develop this ComfyUI project management tool. If you know React, Python or ML model deployment, please reach out to [email protected] We want to make it easy to manage, share and deploy ComfyUI project.
Upcoming Features
-
1-Click Install Models Often when you import a json workflow from online, it will show lots of missing nodes or models errors, we will provide easy one-click install for missing models from Hugging face and Civiti
-
Modular Modern software development project are all modularized, the whole system is broken down into different modules. In ComfyUI each custom node is a module and should be self contained and easy to install and depend on from other modules. So that the modules (custom nodes) can be easily reused across projects. ➡️ We need something like web bundler, e.g. webpack, vite. This will make each custom node self contained and has a clear definition of its dependency.
-
Multi workflow project Now you can only work on one workflow at a time, this limits the potential to build large scale workflows that consists multiple sub-workflows parts. Each workflow can be seen as a custom node. You should be able to easily convert one workflow into one custom node. You can reuse workflow/custom node across your project. ➡️ We need a cross workflow, project management tool, like VSCode editor
-
Cloud running / easy deployment Right now you need to have python and GPU server up to run ComfyUI or Automatic111, that’s really painful for people who do not own a GPU. You should be able to run UI independently without paying for GPU💰. ➡️ Share and deploy your workflow to cloud in 1click and other people can easily run in browser using cloud GPU with no setup. It should be as easy as running Google Docs or Figma.
Beta Preview
We're constantly pushing new features in beta branch. Here is how to switch to beta branch to receive latest feature updates pre-launch! It requires you have some basic knowledge about command line and git.
- Make sure you have git installed
- Open your terminal, go to the ComfyUI folder (where you do
python main.py
) - in ComfyUI root directory,
cd custom_nodes && cd comfyui-workspace-manager
- inside custom_nodes/comfyui-workspace-manager, do
git fetch origin beta && git checkout beta
, you should see something like:
From https://github.com/11cafe/comfyui-workspace-manager
* branch beta -> FETCH_HEAD
Switched to branch 'beta'
Your branch is up to date with 'origin/beta'.
- Restart ComfyUI python server by
python main.py
‼️ Be careful that beta branch can be unstable, so please please make sure you have backups for all your workflows! Before switching to beta, please make a copy of these folders somewhere:
ComfyUI/custom_nodes/comfyui-workspace-manager/db
or the entire ComfyUI/custom_nodes/comfyui-workspace-manager/
folder
if anything goes wrong, you can always paste back these folders. Also, you should have your /my_workflows folder (workspace save directory) in safe place always
To revert back to main:
- inside custom_nodes/comfyui-workspace-manager, do
git checkout main
, then restart your python server and you are back into main branch!
Credits
ComfyUI: https://github.com/comfyanonymous/ComfyUI
ComfyUI Browser: https://github.com/talesofai/comfyui-browser (Media display code for reference) And thanks to all custom node creators building the community!
Dev
- Clone ComfyUI
git clone https://github.com/comfyanonymous/ComfyUI
follow the install and setup instructions of ComfyUI README - Clone Workspace Manager in /ComfyUI folder
cd custom_nodes && git clone https://github.com/11cafe/comfyui-workspace-manager.git
- npm install
inside
/ComfyUI/custom_nodes/comfyui-workspace-manager
docd ui && npm install
this will install all node dependencies - build and run
inside
/ComfyUI/custom_nodes/comfyui-workspace-manager/ui
npm run build --watch
this command will watch for your file changes and automatically rebuild, you just need to refresh to see your changes in browser everyting you change some code - run ComfyUI server
inside
/ComfyUI
dopython main.py
orpython3 main.py
depending on your version
IndexDB trouble shooting
If you see indexdb version mismatch error in console that looks like:
VersionError: The requested version (10) is less than the existing version (30)."
name
:
"DatabaseClosedError"
please delete indexdb manually F12 Dev tools -> Application -> IndexDB -> WorkspaceManagerDB
and delete localstorage.WORKSPACE_INDEXDB_BACKFILL
only do this if you are a developer