SAM3 Complex Collector
Bbox and click prompts, one tabbed node
- sam3_model_config
- image
- masks
- visualization
SAM3 (the "promptable" member of the Segment Anything family) has two ways to tell it what to cut: bbox prompts - draw a box around the thing - and interactive prompts - click positive points on what you want and negative points on what you don't. Most workflows split those across two different collector nodes, which means two panels, two wire sets, and a constant fight about which one is "current." SAM3 Complex Collector puts both collectors in one tabbed node, runs the segmentation, and hands you a mask plus a visualization of what got selected.
This is the DAELab pack's flagship node, and it's the one with real dependencies and real behavior, so let's get the honest picture first. It rides on comfyui-sam3, the community SAM3 node pack (which has genuinely taken off - it's been climbing in mentions since late 2025) plus a SAM3 model. The collector doesn't ship its own model loader; you feed it a sam3_model_config straight out of LoadSAM3Model.
How it works
The node reads your prompts depending on the active tab (collector_mode: bbox or interactive), runs them through a shared SAM3 session, and returns the combined masks (MASK) and a visualization (IMAGE) with the segment overlays drawn on the source - the overlay image is also pushed to the node's UI panel as a base64 preview.
The workflow-smoothing part is the session cache. SAM3 segmenting is the expensive bit, and re-running it every time you tweak one click is miserable. So the collector caches per-prompt results in a session: your first Run executes the necessary upstream dependencies and the collector to build the cache, and after that you can update the active interactive prompt or the bbox prompt previews without executing the downstream nodes - you see your new mask instantly, and only when you actually run the graph does everything downstream re-evaluate. If you've ever clicked a point and then sat through a full queue re-run, you know exactly why this exists.
The inputs that matter
sam3_model_config- the SAM3 model config fromLoadSAM3Model. Required.image- the image to annotate.collector_mode-bboxorinteractive; just switches which tab's prompts get used.bboxes/neg_bboxes/multi_prompts_store- internal collector state. The editor manages these; you won't hand-edit them. (This is also why the pack ships a separate BBox Prompt Reroute - so you can reroute bbox prompts without touching this store.)
How to install it
First install the pack - ComfyUI Manager, search "ComfyUI-DAELab-Custom-Nodes-Library", or:
cd ComfyUI/custom_nodes
git clone https://github.com/TeutonicMepheles/ComfyUI-DAELab-Custom-Nodes-Library
Then install the optional dependency it actually needs, comfyui-sam3 (ComfyUI Manager or its own git clone into custom_nodes/), and grab a SAM3 model. The pack auto-discovers comfyui-sam3 at runtime from custom_nodes/comfyui-sam3/nodes - if it can't find it, the collector raises "comfyui-sam3 is required". Restart ComfyUI after all three. This collector is a legacy-style node, but the pack as a whole ships schema-based nodes that need a current ComfyUI with the comfy_api API - No module named 'comfy_api' in the log means update Core, not pip.
Common issues & troubleshooting
"comfyui-sam3 is required" on startup / first run. The collector's soft dependency isn't installed or isn't discoverable. It must live at custom_nodes/comfyui-sam3 with a nodes/ directory - wrong folder name or a nested clone and the pack can't find it. Note this only breaks the SAM3 nodes; the pack's other nodes run fine without it.
"My preview updates but downstream didn't." That's the cache working as intended. The collector only re-runs upstream and itself on the first run; downstream executes when you run the graph normally.
"No mask came out." An empty prompt store yields an empty result by design - check the active tab actually has boxes/points, and that the positive boxes aren't all empty. Negative-only prompts produce nothing to cut.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| sam3_model_config | SAM3_MODEL_CONFIG | SAM3 model config from LoadSAM3Model. | |
| image | IMAGE | Image to annotate with the active SAM3 collector. | |
| collector_mode | COMBO | bbox | Internal UI state: active collector tab. |
| bboxes | STRING | [] | Internal BBox Collector positive boxes. |
| neg_bboxes | STRING | [] | Internal BBox Collector negative boxes. |
| multi_prompts_store | STRING | [] | Internal Interactive Collector prompt data. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| masks | MASK | — |
| visualization | IMAGE | — |