ComfyUI Node

Sonder Selector

A dropdown that hands your graph the label and the number

By SonderSaid·Created about a month ago·Updated 12 days ago· 30
Sonder Selector
    • selection
    • index
    choiceOption 1
    choice_listOption 1 Option 2

    Sonder Selector is the smallest node in the Sonder pack and the one you'll reuse constantly once you notice it. You give it a newline-delimited list of labels, it renders as a dropdown, and it outputs the label you picked plus its zero-based index. Two wires out of a menu - that's the whole job, and it's a genuinely useful one because ComfyUI has no built-in "list of choices" primitive.

    Think about where that pattern actually helps. You're building a workflow with three character prompts, or four camera-movement LoRAs, or a choice between "soft", "medium", "hard" light settings. Instead of leaving a free-text widget where you retype the value every run (and typo yourself into a different seed), you enumerate the options once in choice_list and flip between them. The selected text feeds your prompt or filename; the index can feed a Sonder Switch or Cluster to route the matching branch - the Selector is the human-facing half of that combo, the Switch is the mechanical half.

    How it works

    choice_list is a multiline string, one label per line, and blank lines are ignored. choice is the currently selected label. Because the node ships with VALIDATE_INPUTS, it checks that choice actually exists in the list and gives you a clean error instead of silently passing a stale value - a nice touch for a node this small.

    Outputs:

    • selection - the label text you picked.
    • index - its zero-based position in the list ("Option 1" is 0, not 1 - worth remembering when you wire it into a switch).

    There's no index input and no way to drive the selection from an upstream node; it's a manual control. If you need programmatic selection, this isn't it.

    Install and quirks

    It ships with the Sonder pack, so install once: ComfyUI Manager search Sonder Editor, or git clone https://github.com/SonderSaid/ComfyUI-Sonder-Editor.git into custom_nodes, pip install -r requirements.txt, restart.

    The one gotcha that trips people: the dropdown only shows the labels you typed, but the default choice value is baked in as "Option 1" - if you delete that from the list the node yells at you until you pick something valid. That's the validation working as intended. And since index is zero-based, don't wire it straight into a 1-based consumer expecting "first option = 1" without accounting for it.

    It's not flashy, and it's not the node you search for - but every Sonder workflow I've seen ends up with a couple of these defining the variants you iterate between.

    CategorySonder/Logic

    Inputs (2)

    NameTypeDefaultDescription
    choiceCOMBOOption 1Selected label from choice_list.
    choice_listSTRINGOption 1 Option 2One selectable label per line. Blank lines are ignored.

    Outputs (2)

    NameTypeDescription
    selectionSTRINGSelected label from the newline-delimited choice list.
    indexINTZero-based index of the selected label.