Chat Behavior¶
When a flow includes a Context Input component, Karli Studio renders a selector alongside the chat message input. The labels you configured in the Sources table appear as the selectable options.

User Interaction¶
The user picks an option from the selector before sending their message. The chosen source is sent together with the message; the Context Input component matches it and emits the corresponding Data to downstream components.
Required vs. Optional¶
The component's Required field controls what happens when no selection is made (or the selection doesn't match a configured row):
- Required = on — the flow run fails with a validation error listing the configured sources. Use this when downstream behavior is undefined without an explicit choice.
- Required = off — the component emits an empty
Data({"value": "", "label": ""}). Downstream components must be prepared to handle the empty case.