ComfyUI-RigShare
Node to enable seamless multiuser workflow collaboration
ComfyUI RigShare
One ComfyUI rig, a whole team: accounts, shared folders, live co-editing, chat and a GPU monitor
A custom node that turns a single ComfyUI server into a shared workspace. Everyone signs in, keeps their own workflows in a private folder, and edits the shared ones together in real time while seeing each other's cursors. Fork of daxcay/ComfyUI-Nexus, rewritten for the current ComfyUI frontend.
</div>What it does
- asks everyone to sign in before ComfyUI loads, and creates the admin account on first run
- organises workflows like a shared drive: a private My files folder per account, Shared folders, and an All view for admins, in a Files tab of its own
- asks where to save, with the same folders, and opens workflows from them (Ctrl+Alt+O)
- makes every workflow outside a private folder live while it is open: people who open the same file edit it together, with nothing to share by hand
- lets folder owners restrict a shared folder to chosen people, each able to view or edit
- lets you switch tabs freely, because only the tab on screen syncs, and keeps open tabs pointed at a workflow when someone renames or moves it
- shows who is online and which workflow they are on, plus live cursors and selections
- lets you follow someone, jumping to their tab and view
- keeps the whole chat history, loading older messages as you scroll up, with an unread badge, a blinking icon and a sound
- keeps per-workflow history: snapshots every few minutes, named snapshots, one-click restore
- gives each account permissions to edit, queue, use ComfyUI Manager or administer, enforced by the server and not just hidden in the UI
- keeps simultaneous edits apart: two people adding or connecting nodes at the same moment both keep their work
- issues personal API keys, so scripts and other apps can call ComfyUI with their owner's permissions
- shows CPU, RAM, and for each GPU the load, VRAM, temperature and power, plus the queue, in a panel tab or a floating widget
- sends execution progress and previews to everyone, not only whoever queued
What this fork adds over Nexus:
- Built for the new frontend. It lives in a sidebar tab and works with workflow tabs and subgraphs. It needs no legacy menu and no litegraph patching.
- Real accounts. A login page, hashed passwords, JWT sessions and API keys replace the shared
/login account passwordchat command and the plaintextadmins.json. - The server is in charge. It checks permissions and identity on every message, so a browser cannot impersonate someone or edit without the right to.
- Folders, not one canvas. Everyone has their own space, shared work lives in shared folders, and nobody fights over a single canvas.
Screenshots
<table> <tr> <td align="center"><img src="docs/images/history.png" width="260" alt="Live tab: the workflow on screen, its history and the live workflows"><br><sub>Live workflows and history</sub></td> <td align="center"><img src="docs/images/files.png" width="260" alt="Files tab: My files, Shared and All"><br><sub>Files: My files, Shared, All</sub></td> <td align="center"><img src="docs/images/files-shared.png" width="260" alt="Shared folders in the Files tab"><br><sub>Shared folders, live files marked</sub></td> </tr> <tr> <td align="center"><img src="docs/images/people.png" width="260" alt="People tab"><br><sub>Who is online, and on which workflow</sub></td> <td align="center"><img src="docs/images/chat.png" width="260" alt="Chat tab"><br><sub>Chat, with the whole history</sub></td> <td align="center"><img src="docs/images/access.png" width="260" alt="Access list of a shared folder"><br><sub>Who can open a folder</sub></td> </tr> <tr> <td align="center"><img src="docs/images/server.png" width="260" alt="Server tab"><br><sub>Server monitor</sub></td> <td align="center"><img src="docs/images/account.png" width="260" alt="Account and API keys"><br><sub>Account and API keys</sub></td> <td align="center"><img src="docs/images/admin.png" width="260" alt="Admin tab"><br><sub>Accounts and server settings</sub></td> </tr> </table> <p align="center"> <img src="docs/images/save.png" width="820" alt="Save dialog: name and location"><br><sub>Save asks where</sub> </p> <p align="center"> <img src="docs/images/floating.png" width="820" alt="Floating server monitor over the canvas"><br><sub>Floating server monitor</sub> </p> <p align="center"> <img src="docs/images/login.png" width="560" alt="Login page"><br><sub>Login page</sub> </p>Getting started
Clone into ComfyUI/custom_nodes and restart ComfyUI:
cd ComfyUI/custom_nodes
git clone https://github.com/xiaodoudou/ComfyUI-RigShare.git
Open ComfyUI in a browser. There are no accounts yet, so the login page asks you to create the administrator. Sign in, open the RigShare tab in the sidebar and add your team under Admin → Accounts. That is the whole setup.
Each person gets a private My files folder. Put what you work on together in Shared, in the Files tab: it goes live for everyone who opens it.
Everyone then signs in at the same address. To use the API from a script, create a key under your avatar → API keys:
curl -H "Authorization: Bearer rs_yourkey" http://your-server:8188/api/queue
Behind a reverse proxy, turn on WebSocket support, or nothing will be live. See Reverse proxy.
Documentation
| | |
|---|---|
| Installing | Custom node, Docker/compose, first-run setup, upgrading from 1.0 or Nexus |
| Files and folders | My files, Shared, All, saving, opening, who can do what |
| Sharing workflows | Live workflows by folder, folder access, snapshots, follow |
| Accounts and permissions | Edit, Queue, Admin, renaming, what viewers can do |
| API access | API keys, websockets, trusted IPs, other apps such as Open WebUI |
| Settings | Panel settings, ComfyUI settings, every key in config.json |
| Reverse proxy | Nginx Proxy Manager, plain nginx, HTTPS |
| Security | How passwords, sessions and keys are protected |
| Development | Running the tests, code layout |
| Changelog | What changed, and when |
Why this exists
I run one ComfyUI box for several people. ComfyUI-Nexus had the right idea, but it was written for the old UI:
- it hid menus with CSS and monkeypatched litegraph internals that no longer exist
- anyone could become admin with a shared password typed into chat
- everybody worked on one canvas, and opening ComfyUI wiped your own workflow