Nodes/ComfyUI-Qais-Helper/QH: Item Debugger
ComfyUI Node

QH: Item Debugger

The printf() your ComfyUI graph never had

By QaisMalkawi·Created 3 years ago·Updated 6 months ago· 2
QH: Item Debugger
  • debug_value
    debug_titleOutput:

    Every ComfyUI workflow eventually hits the moment where you look at a wire and think "what is actually in there right now?" That's what "QH: Item Debugger" is for. It takes any value you throw at it, prints it to the terminal with a label you choose, and stops there. No outputs, no processing - just a print() with legs, sitting in the middle of your graph.

    It sounds almost too dumb to be useful, and then you'll spend twenty minutes tracing a misbehaving workflow and wish you'd dropped one in earlier. ComfyUI is bad at telling you what's flowing through its wires at a glance. A debug node that accepts anything and dumps it to the console is the standard answer, and this is a clean little version of that.

    How it works

    Two inputs:

    • debug_title - a string label, defaulting to "Output:". This is the name you give the print so you can find it in the console when there are a dozen lines of noise.
    • debug_value - anything. The input type is the wildcard *, so you can feed it an image, a latent, a conditioning, an int, a string, whatever's on the wire you're suspicious about.

    It's marked as an output node, which means ComfyUI knows it's a dead end and won't complain about the missing output. Every execution it prints f"{debug_title} {debug_value}" to stdout - the terminal window where you launched ComfyUI - and returns nothing.

    The one gotcha that will trip you up

    The value appears in the console, not in the ComfyUI interface. New users expect a little panel on the canvas with the value in it, and instead it goes to the terminal behind everything. If you launched ComfyUI from a desktop shortcut, you may not even see it. Run ComfyUI from a terminal (or check the log file if you use a launcher) and the prints show up there. That's where to look.

    Also worth knowing: because debug_value is the wildcard type, the node will happily accept a huge tensor and dump a wall of text. Printing a full image tensor to the console is technically possible and practically useless - for big structures, label it clearly and look at the first few lines.

    Where it fits in a workflow

    The classic pattern is to wire it off a branch you're debugging, run the workflow, read the console, then delete the node. Because it's a true dead end, it won't affect the rest of the graph - your other outputs keep flowing. You can also leave a few of them in permanently with clear labels ("seed check", "mask area", "batch count") as poor-man's logging for a workflow you share or re-run often.

    Installing it

    Same trivial install as the rest of the pack - the whole thing is numpy-only with zero model downloads:

    • ComfyUI Manager - search "ComfyUI-QaisHelper" and Install.
    • Manual - cd ComfyUI/custom_nodes && git clone https://github.com/QaisMalkawi/ComfyUI-QaisHelper, then restart.

    You'll find it under "Qais Helper" as "QH: Item Debugger."

    The honest take

    This is genuinely one of the more useful nodes in the pack, and it's also the kind of thing dozens of other packs ship under names like "Print," "Show Text," or "Debug." If you already have a debug node you like, you don't need this one. If you're new and your workflow is a mystery, this is a cheap way to start seeing what's actually on the wires - just remember to look at the terminal.

    CategoryQais Helper

    Inputs (2)

    NameTypeDefaultDescription
    debug_titleSTRINGOutput:
    debug_value*

    Outputs (0)

    No outputs