Skip to main content
The empty-state greeting, composer placeholder, and suggestion cards are loaded from the backend’s sdk_ui.text. You can override any of these via initSidenet({ sdkUi }) or at runtime via updateSidenetStyledConfig({ text }). Suggestion cards can also bind a specific agent for one-shot routing on click.

Per-suggestion bindings

A suggestion can attach two pieces of intent to the next user send:
  • agentId — adds an X-Agent-Id header pointing at the bound agent. The id is matched against the loaded agent list at click time; if it doesn’t match any agent, the binding is dropped silently (a console.warn appears when debug: true).
  • prompt — prepends a system message to the messages array sent for that single send (standard AI SDK pattern). Use it to bias the assistant for the suggestion’s intent — persona, output format, language, etc. The backend sees a turn that starts with the system message and ends with the user’s message.
Both are gated by edit tolerance: if the user edits the prefilled prompt before sending, the SDK computes the Levenshtein distance against the original suggestion text. If distance > editTolerance × originalLength (default editTolerance: 0.25, with an absolute floor of 6 characters), both bindings are dropped and the request goes through with the dropdown’s defaults. agentId and prompt are independent — a suggestion can have either, both, or neither.