KfDebug_Segs
The odd one out that actually dumps structure
- item
- SEGS
KfDebug_Segs is the odd one out in the debug family, because unlike KfDebug_Model or KfDebug_Vae, there's actually something to inspect here. SEGS is the segmentation-structure type from the Impact Pack - a tuple of bounding boxes, an image size, and a list of per-segment records. The shared inspector sees a tuple, logs its length, and then recurses into each entry, so you get a real dump of the structure rather than a shrug. If you're building an Impact-Pack-style pipeline and the segments coming out aren't what you expect, this is the node that shows you.
Everything else about it is standard-issue debug: it logs to your console (not the canvas - the family trait that catches everyone), takes a label so you can find the right block of output, and passes the SEGS through untouched.
Why you'd reach for it
Segmentation pipelines are opaque. You run a SEGS-producing node, feed it into a detailer or a crop-and-paste chain, and if the output is wrong there are a dozen places it could have gone sideways. A KfDebug_Segs right after the detector tells you how many segments were found, what the image dimensions are, and what's inside each one - which is usually enough to spot "it thinks there are 40 faces" or "it found nothing" before the rest of the pipeline compounds the error.
It's also the debug node that shows off what the shared inspector actually does when it has a structure to chew on, so it's worth having around just for that.
The inputs that matter
item- theSEGSto inspect, force-input off a wire.label- multiline string, default"debugging passthrough". Label it"detected segments"and that's what you grep for in the console.
Output: a single SEGS, identical to the input, passed through so you can keep it in the live path.
How it works
KfDebug_Segs is KfDebug_Passthrough with RETURN_TYPES = ("SEGS",). The inspector logs the type, and because the object is a tuple, it prints len(item) and recurses into every element - the bboxes tensor, the image-size pair, and each segment record. Depth is tracked, so nested structures come out indented and readable. You'll see the count of segments, their boxes, and whatever fields each record carries.
Installing it
Part of ComfyUI-Keyframed. ComfyUI Manager: search "Keyframed". Or:
cd ComfyUI/custom_nodes
git clone https://github.com/dmarx/ComfyUI-Keyframed
Restart ComfyUI. The pack pip-installs keyframed and toolz on first load. One caveat: SEGS itself is a type from Impact Pack, so to produce or consume SEGS you need Impact Pack installed too - this debug node just sits between those nodes and watches.
Troubleshooting
If your console shows a wall of nested segment records, that's working as intended - it's a verbose node by nature. If you don't have Impact Pack, you'll never see this node in a useful context, since nothing else in ComfyUI-Keyframed produces SEGS. And if the segment count looks wrong, trust the dump over your assumption: the debug node is a faithful passthrough, so whatever it printed is what your pipeline is actually working with.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| item | SEGS | — | |
| label | STRING | debugging passthrough | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| SEGS | SEGS | — |