Image List Collector
The boring adapter that makes the 1–3 image limit work
- image_1
- image_2
- image_3
- image_list
Every API wrapper has a job nobody wants to admit needs doing: adapting your graph's data into exactly the shape the remote service expects. For the ComfyUI-frankAI-banana pack, that job belongs to the Image List Collector. The BananaMainNode's images input is an IMAGE_LIST - a custom type this pack defines - with a hard rule of at least one and at most three images. The collector exists to build that list from ordinary IMAGE outputs, which is why every example workflow in this pack starts here, straight after LoadImage.
The inputs are exactly as advertised: image_1 (required) plus image_2 and image_3 (both optional), all plain IMAGE tensors. The output is image_list (IMAGE_LIST), which you wire straight into BananaMainNode's images slot. Only have one image? Connect it to image_1 and leave the other two slots empty - they're the only optional inputs in the whole pack, and the one required slot is all the API needs.
How it works under the hood is a nicer touch than it sounds. It doesn't blindly concatenate inputs - it splits each connected image, including each frame inside a batched tensor, into its own single-image tensor and appends each to the list. Load a batch of two images into image_1 and they still land as two separate entries. That's also the collector's quiet enforcement role: it's what keeps you from sneaking a fourth image past the API's limit, because BananaMainNode checks the count and returns an error if it's ever over three.
Install is the same one-liner as the rest of the pack:
cd ComfyUI/custom_nodes
git clone https://github.com/fr0nky0ng/ComfyUI-frankAI-banana
No dependencies, no models - this node is pure tensor bookkeeping.
The gotcha to keep in your back pocket: IMAGE_LIST is a custom type registered as a wildcard, which ComfyUI handles happily as long as the pack is installed. If you strip the pack out of a saved workflow, that slot stops resolving, and the collector is the first node that'll go red. And if BananaMainNode ever tells you it received more than three images when you only see two inputs wired, the batch-splitting above is usually the culprit - a batch of 2 counts as 2.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| image_1 | IMAGE | — | |
| image_2opt | IMAGE | — | |
| image_3opt | IMAGE | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image_list | IMAGE_LIST | — |