Nodes/ViewComfy Utils/ViewComfy - Show Anything
ComfyUI Node

ViewComfy - Show Anything

The Debug Node That Shows You Whatever's On the Wire

By ViewComfy·Created 11 months ago·Updated 8 months ago· 8
ViewComfy - Show Anything
  • anything
  • output

You know that moment where a workflow fails and you have no idea what's actually in that pipe - is the conditioning malformed, is the string empty, is that "list" a dict? Show Anything is the node you drop on a wire to find out. It accepts literally any data type, converts it to readable text, and displays it right on the node, all while still passing the original value through. It's a debugger dressed up as a display node.

The interface is almost insultingly minimal: one optional anything input typed as a * wildcard, and one output that mirrors the input straight through. No widgets, no settings. If you can get a value onto that input socket, the node will show it to you. Strings display as-is; everything else gets JSON-serialized so you can actually read it - which is the important part, because ComfyUI's canvas is terrible at showing you what a nested data structure looks like. The value also passes through untouched on output, so you can slip this node mid-stream without breaking the flow.

How the display works: the magic is a tiny frontend extension. When the node runs, it writes the text into a read-only widget on the canvas, so the result is visible right where you're looking, not buried in a console log. Under the hood it's an output node that also returns the value, which is how it can both show and pass through. If you've used a Show Text style node from other packs, this is the any-type version of the same idea, and it's the one the ViewComfy team chose to expose arbitrary data in their app platform's workflows.

Where it earns its keep: debugging, plain and simple - the KB's node-plumbing essay calls this the "monitor data flow" job, and it's the cheapest inspection tool in the box. Check what an LLM node actually returned, verify a metadata dict survived a transform, confirm a conditioning object isn't empty before it reaches the sampler. In a ViewComfy app context, it's how you surface text output to the interface.

One honest note: because the node is an output node that always runs, dropping several of them into a workflow has a small performance cost - each one re-executes and redraws. Keep them in the workflow while you debug, then delete them before you call the thing "done." And the display only refreshes on execution, so a wire that never re-runs will show stale text; if you suspect staleness, touch an upstream node to force a re-run.

Installation is shared across the pack: ComfyUI Manager → search "ViewComfy-Utils" → install, or clone by hand:

cd ComfyUI/custom_nodes
git clone https://github.com/ViewComfy/ViewComfy-Utils

Restart ComfyUI after. No extra dependencies beyond stock ComfyUI, no model downloads, MIT licensed. If you've ever spent ten minutes staring at a workflow wondering what's in a pipe, this node is those ten minutes, deleted.

Categoryutils

Inputs (1)

NameTypeDefaultDescription
anythingopt*

Outputs (1)

NameTypeDescription
output*