XControlPanel
A restart button that lives inside your ComfyUI workflow
Most ComfyUI nodes move data. XControlPanel moves nothing - it's a panel-only node with zero inputs and zero outputs whose entire job is to give you an action button. Right now that's one action: restart ComfyUI, right from the node's own frontend, without touching the terminal or the browser URL. It sounds almost too trivial to be a node, but if you've ever been mid-workflow, changed something that needs a backend reload, and hated the song and dance of killing and restarting the server, you get the appeal. It's a tiny quality-of-life thing that the pack's author clearly built because they were tired of the manual dance.
How it works
The node itself is deliberately inert. Look at its schema: required: {}, optional: {}, outputs: []. When the workflow executes, the node does nothing - the panel operations are triggered from the frontend by a button, not by graph execution. The real machinery lives in the pack's API layer (api/xcontrolpanel_api.py), which registers a server route that the frontend button calls when you click it. The restart is scheduled rather than instant, and the API defends against cross-site form submissions by rejecting plain form content types - a small but real security gesture. It's not_idempotent, meaning ComfyUI knows this node's output isn't cacheable, which makes sense for something that restarts the server.
Using it
There's nothing to configure: drop it on the canvas, click the button when you want a restart. Because it has no I/O, it can't be part of a data chain - it's a utility you park on the graph like a note. The author's roadmap says "currently provides a manual restart button," which is honest: treat this as v1 of a control surface rather than a finished dashboard.
Installing it
XControlPanel ships in ComfyUI-Xz3r0-Nodes, so one install gets the whole pack. ComfyUI Manager: search ComfyUI-Xz3r0-Nodes. Or manually:
cd ComfyUI/custom_nodes
git clone https://github.com/Xz3r0-M/ComfyUI-Xz3r0-Nodes.git
cd ComfyUI-Xz3r0-Nodes
pip install -r requirements.txt
Then restart ComfyUI - yes, you'll use the terminal once for the install so you don't have to for every tweak after. This node has no Python dependencies of its own beyond the pack's ffmpeg-python, so if you only install the pack for the panel, you can ignore the FFmpeg requirement for now.
Gotchas
The honest caveats: this restarts the whole ComfyUI server, so anything queued or unsaved is gone - click it when you mean it. It's also a frontend feature, which means it depends on the pack's web extension loading properly; if you've disabled the pack's web directory or run a frontend that strips extensions, the button won't appear even though the node does. And if you're running ComfyUI in a Docker container or behind a proxy, the restart route needs the server route to be reachable from the browser. It's a nice convenience, not a substitute for knowing how to restart ComfyUI the old-fashioned way - at least until the day something breaks and the button can't help you.
Inputs (0)
No inputs
Outputs (0)
No outputs