RedNode Control Panel
Every dropdown on your graph, on one node, with not a wire in sight
Here's the workflow problem this pack is built around: your graph gets big enough to be useful, and suddenly the things you actually touch - the sampler on the main pass, the denoise on the detailer, the CFG on the upscale branch - are scattered across three subgraphs and a canvas you have to scroll to read. RedNode Control Panel collects all of those controls onto one node. It's the multi-row, production version of the pack's Combo Control prototype.
The mechanism is the whole pitch: each row on the panel drives one other node's dropdown, toggle, or number, live, with no wires. The pack's frontend extension builds the panel from a JSON config, reads the widget definitions of the target nodes to fill each row's choices, and writes values straight into the widgets when you touch them. Because the targets include nodes inside subgraphs, you can sit on one panel and run a whole pipeline's worth of dials.
Two widgets matter. The scene dropdown applies a saved set of values to every control named in it - "fast preview", "final render", whatever you define - with "custom (live)" leaving everything as it is. The config text box holds the control rows themselves (target, value, bar range, colors, order) as JSON. The panel above edits that JSON for you, but the fact that it's plain JSON you can open and hand-edit is the pack's answer to "what if the UI breaks or I want to copy a row between workflows?" - the same pattern as every other panel node in this pack.
The wire-free approach has a real cost to keep in mind, and it's the same trade every "control without wires" pack makes (rgthree's Fast Groups Muter, for instance, leans the same way for groups). A widget value set from a panel is not data flowing through the graph - it's the browser writing to another node's state. That's fine for interactive tweaking, which is exactly what a control panel is for. It's not how you'd parametrize a workflow you're going to share as an API workflow or script, where real wires and converted-to-input values are the honest answer. Use the panel for the living, fiddling-with-it workflow; keep wires for the parts that must be explicit.
Installation is just the pack:
cd ComfyUI/custom_nodes
git clone https://github.com/RedNodeAI/ComfyUI-RedNodeStudio.git
or search RedNode Studio in ComfyUI Manager, restart, done. No pip dependencies, works with any model. One tip: because these panels are frontend-driven, if a panel ever looks wrong after a ComfyUI update, the config JSON is your escape hatch - it's the same panel, restyled by hand.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| scene | COMBO | apply a saved set of values to every control named in it. 'custom (live)' leaves the controls as they are. | |
| config | STRING | {} | the control rows (target, value, bar range, colours, order). The panel above edits this; editable by hand if the UI is unavailable. |
Outputs (0)
No outputs