Use an Items List as the source of wizard choices: map each row to a stable option with a label, optional thumbnail, prompt/value, and additional typed outputs, then expose a manual Route selection on the Group.
Where: Flowgen canvas → create an Items List and manual Route → connect them → expose Route select_in through a Group wizard.
Before you start
- A Flowgen canvas with an Items List whose rows contain the choices you want to show.
- A Group that contains the Route and downstream nodes consuming its selected row.
Key ideas
- The List is the editable source of truth: Connect the Items List Whole list output (rows_out) to the manual Route Options list input (options_in). Every row becomes a live option; edit and reorder choices in the Items List rather than maintaining duplicate static choices.
- Route maps typed columns to choice UI: Map a text column to Option label, another text column to Prompt / value, and an image column to Dropdown thumbnail. If columns use conventional names, compatible values may be detected automatically; inspect mappings rather than relying on that when the table is ambiguous.
- The row ID is the option value: A List row’s stable ID identifies the selected choice even if the label changes or the row moves. The selected row can return its prompt/value and image, plus additional typed columns through configured outputs.
- The Group exposes selection, not the whole table: Expose the Route’s select_in as a shared text input on the Group and enable the wizard surface. The form presents the List-backed options; the Route resolves the chosen row for nodes inside the Group.
Steps
- Create an Items List with one row per choice. Add clear text columns such as Label and Prompt, and an image column such as Thumbnail if the menu should show artwork. Add more typed columns only when the downstream flow needs them.
- Create a Route node and set its mode to manual. Keep the Items List and Route inside the same Group if the wizard is meant to own and package the whole experience.
- Connect Items List → Whole list (rows_out) to Route → Options list (options_in).
- Select the Route and open its Properties sidebar → Options and images. Choose the exact Label, Prompt / value, and Dropdown thumbnail columns. Keep defaults only when the automatically detected columns are unambiguous.
- If choice images live in a separate Items List, connect that list to Route → Option images (images_in). Map the text option-ID and image columns; the Route matches by stable ID, not row order.
- In the Route, add mapped outputs for any other fields the selected row must provide, such as a reference image, product URL, or style value. Give each output a clear label and choose its exact typed List column.
- Expose Route select_in as a shared Group input. If you create the Group with MCP, include the internal node IDs in create_group and expose select_in; after the Group exists, set its cardWizard to {enabled:true,surface:"wizard"}. Creating a Group alone does not turn on the wizard.
- Place the exposed input in the desired wizard step or card prompt layout. Give it a helpful question label and test the Group: each option should show the expected label and optional image.
- Connect Route result_out to the selected prompt/value consumer and image_out to an image consumer. Expose and connect any field_out_<id> outputs the flow needs, then choose two different options and verify each downstream value changes with the selected row.
- Add, rename, or reorder List rows and test again. The menu updates from that List; the row ID remains the option value, so do not substitute the visible label as a key.
Recommended List columns
- Label (text): concise name shown in the dropdown or visual choice.
- Prompt or Value (text): the full task-specific string returned on result_out for the selected row.
- Thumbnail (image, optional): image shown beside the choice and returned through image_out by default.
- Extra typed columns (optional): data such as a second reference image, numeric setting, URL, or structured text. Add them as Route option outputs when the inner flow needs them.
- Use one row per selectable choice. Keep labels readable and values distinct in meaning even though the stable row ID is what selection stores.
Separate option artwork
- A second Items List can hold image assets independently from the main choices.
- Connect it to Option images (images_in), then map the option ID and image columns in the Route sidebar.
- Each artwork row must reference the matching choice row ID. Reordering artwork rows does not change which choice they belong to.
- When no separate artwork List is connected, the Route can use the mapped image column from the main options List.
Selected-row outputs
- result_out returns the mapped prompt/value for the selected option; the legacy case output carries the same selected text where applicable.
- image_out returns the selected image from the configured output-image column or its default thumbnail image.
- Additional optionOutputs each expose one selected List column through a typed field_out_<id> handle. Use the output picker on the destination node to connect these values.
- Changing the List schema can leave a mapped column unresolved. Reopen Route Properties and choose the intended live column again.
MCP creation guardrails
- Use create_items for Items Lists, create_router with mode:"manual" for the Route, connect_nodes for rows_out → options_in, and create_group for the shared selection boundary.
- The Route row label/value/image mappings are node properties: preserve the full optionColumns and optionOutputs values when editing nested node data.
- create_group does not enable the wizard surface. Set cardWizard explicitly and verify the saved group with get_node.
- Ask the user for the choices, labels, values, images, and intended Group/wizard presentation when these are not specified. Never invent assets, option content, or publish/paid execution.
Tips
- Use the main List for choice identity and text; add a separate art List only when artwork has an independent lifecycle.
- Give every List column a clear type and label, then use exact column IDs in MCP-authored mappings.
- Test a label edit and a row reorder to confirm the wizard is driven by List data and not a stale static copy.
Limitations and important notes
- Each choice’s visible label and selected value are different: the label is presentation; the stable row ID is the selection key.
- A connected option List is a dataset input and does not become a list of free-form static Router cases.
- The Group wizard is a UI for the exposed input; it does not run generation until the user starts the Group flow.
- A thumbnail is optional; a missing/invalid image does not make the option disappear.
Troubleshooting
The Route still shows manually authored cases instead of List choices.
Confirm rows_out from the Items List is connected to this Route’s options_in, then inspect the selected Route and its live List source.
Options appear but their names or prompt values are wrong.
Open Route Properties → Options and images and map the exact text columns for Option label and Prompt / value. The first compatible column is only an automatic fallback.
Thumbnails appear on the wrong choices.
If using a separate image List, map its stable option-ID and image columns. Do not rely on corresponding row positions.
The dropdown is missing from the Group wizard.
Verify select_in is exposed as a shared Group input, the wizard is enabled in cardWizard, and its step/prompt layout includes that exposed input.
A selected option reaches the Route but not the downstream node.
Wire result_out or image_out as appropriate. For extra fields, add an option output, expose the resulting field_out_<id> handle, and connect it to a compatible destination input.