Panel面板
See any prompt on the canvas — and make the graph run to it
- STRING
ComfyUI is great at hiding its intermediate text from you. Prompts are generated by nodes you can't see the output of, and unless you hook up a display node, the only way to know what string a prompt library actually produced is to wire it into a sampler and hope. Panel面板 is the ComfyUI-AC_FUNV2.0 pack's answer: a text display node that shows whatever string arrives on its input, right on the node's face.
Mechanically it's a pass-through with a display. A STRING comes in on the text input, the node renders it in its own widget (there's a small JS extension in the pack, showText.js, that handles the rendering), and it hands the same text back out its STRING output. Critically, it's an output node - the engine treats it like Preview Image or Save Image, meaning it always runs and it forces everything upstream of it to run too. It also declares INPUT_IS_LIST and OUTPUT_IS_LIST, so it handles batches of strings.
The input you care about: text, a STRING socket marked forceInput. That's the key gotcha - you can't type into this node. You have to wire a string into it. People see a text box and start typing, nothing sticks, and they assume the node is broken. It's not: the box is a display, fed by the wire. Drag a season prompt's output, or any string socket, into it and the text appears.
Where this shines:
- Seeing what a prompt library produces. All the AC_FUN season nodes read
.txtfiles and emit a string you'd otherwise have to trust. Drop a Panel after one and you finally see the prompt before it hits the sampler. - Forcing a branch to execute. Because it's an output node, dangling one at the end of a graph path makes sure that path actually runs each queue - handy for debug builds where you want to know a value every time.
The flip side of being an output node is worth respecting: if you wire it into the middle of a heavy graph (say, after a model loader you're just inspecting), it will force that whole upstream branch to re-run on every queue, which can quietly slow things down. The plumbing KB's warning about output-node caching applies - a display node defeats the cache for everything behind it. Keep it at the ends of light string paths, not on heavy model branches.
Install is the pack standard:
cd ComfyUI/custom_nodes
git clone https://github.com/A719689614/ComfyUI-AC_FUNV2.0
restart, and it's under ♑AC_FUNV2.0. No models, no dependencies beyond stock ComfyUI.
Is it a must-have? Not exactly - core ComfyUI has Preview Text and rgthree ships a Show Text that does similar work, and those are arguably more polished. But Panel is what the pack author uses in his tutorials, which means every workflow you download from him assumes it's installed. If you run this pack at all, you'll want it present anyway for that reason alone - and once you're used to watching prompts materialize on the canvas, you'll miss it when it's gone.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| STRING | STRING | — |