Custom combo box [darkilNodes]
A combo box you actually get to populate yourself
- str_selected
- ❓help
ComfyUI is full of dropdowns you can't edit - model lists, scheduler lists, hardcoded option sets. This node is the opposite: a dropdown whose options you define yourself, right in the node's properties. It's the kind of tiny utility that earns its place the first time you build a workflow with a fixed set of presets - "Cinematic", "Portrait", "Macro" - and want them as one tidy selector instead of a pile of booleans or a string you hand-type.
How it works
The node has a single visible input, list_selector, typed as a COMBO with a placeholder default of "nope". The actual options come from the node property text_for_combo: a semicolon- or pipe-separated list. So golden hour; blue hour; harsh noon becomes a three-option dropdown, and the selected value is passed straight through.
Under the hood it's deliberately trivial - the node's function reads list_selector and returns it, plus a help string. There's no parsing magic, no transformation. That's the point: a custom combo is a selection, and the selection is the output.
Inputs and outputs
list_selector(COMBO) - the dropdown, populated fromtext_for_combo.- Output
str_selected(STRING) - the chosen value, ready to feed a prompt, a filename, a text-concat node, whatever. - Output
❓help(STRING) - the node's own help text, which is a pattern the whole darkilNodes pack uses: every utility carries its documentation on a live output socket.
Where people get burned
The classic miss is editing the wrong place: text_for_combo is a property, not a widget, so it lives in the node's property panel, not on the canvas. And remember the output is a plain string - it won't magically switch models or flip nodes. If you want the selection to do something, you wire str_selected into a string-to-whatever router. One more: the placeholder default "nope" means if you forget to set the property, your dropdown contains exactly one useless option - so set the property first, then connect.
Installing
It ships in pytraveler/comfyui-darkil-nodes. ComfyUI Manager search ComfyUI-darkil-nodes, or:
cd ComfyUI/custom_nodes
git clone https://github.com/pytraveler/comfyui-darkil-nodes
Restart ComfyUI. No Python deps, no models - it's a pure logic/UI node.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| list_selector | COMBO | nope | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| str_selected | STRING | — |
| ❓help | STRING | — |