Preview Text
See the text actually flowing through your workflow
ComfyUI is famously bad at one thing: showing you what's inside the wires. Prompts, filenames, LoRA trigger words, the output of some node that's mangling your text - you have to guess, or wire a string into a save node and go read a file. Preview Text fixes that. Drop it on any STRING connection and it shows you the value right on the canvas, no file writes, no clicking around.
It's part of ComfyUI Extended, a dependency-free utility pack, and it's the node that gives the pack its personality. You'll wire it everywhere while debugging, then realize you've left six of them in your final workflow like sticky notes.
How it works
Preview Text is an output node with no outputs of its own - it's a dead end that exists to display. When the queue runs, it pushes the incoming string over a websocket to the browser, and the pack's frontend (web/preview.js) drops it into a read-only text widget on the node. That's why the value only appears after a run, not as you type.
The single input is text (STRING), marked forceInput in the source. Practically that means you can't just type a value in and see it - the node expects to be wired up, which is fine, because its whole job is watching a live value. Wire the STRING output of anything into it: a CLIP text encode, a text-concat node, whatever you're curious about.
Install
Same story as the rest of this pack, which has zero dependencies - no models, no pip packages, nothing to download:
cd /path/to/your/ComfyUI/custom_nodes
git clone https://github.com/rookiepsi/comfyui-extended.git
Restart ComfyUI. Or, the easy way: install ComfyUI Manager, search "ComfyUI Extended", hit install, restart. If you use the Manager path, make sure to restart the server rather than just refreshing the page.
Common issues
- Blank until you run. The preview populates after execution. If it's empty, run the queue first.
- Widget shows but never updates. That's usually stale frontend code. Hard-refresh the browser (Ctrl+Shift+R) so the pack's
web/assets reload, then run again. - It's a terminal node. There's no output socket to continue a chain from. If you need the value and want to keep the chain alive, grab it with a primitive or a reroute before the preview.
Where people actually get burned: they expect a live, type-as-you-go viewer. It's not that. It's a post-run inspector, and it's excellent at that one job.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | — |
Outputs (0)
No outputs