Effective prompts make the difference between a voice experience that feels natural and one that confuses users. This guide covers patterns that work well with Scenaro’s feature + tool architecture.

Core principles

  1. One job per turn — ask one question or request one action at a time
  2. Tool-aware instructions — tell the agent when to call each tool and what to say while waiting
  3. Speakable output — write responses meant to be heard, not read
  4. Feature context — reference what the user sees on screen when features are active

Structure your system prompt

Tool call narration

Users hear silence during tool execution unless the agent speaks. Instruct the agent to:
  • Announce what it’s doing: “I’m searching for red wines under 30 euros”
  • Summarize results concisely: “I found 5 options, the first is…”
  • Handle empty results gracefully: “I didn’t find an exact match — want me to broaden the search?”

Feature-aware prompts

When features render UI panels, tell the agent to reference them:

Language and locale

Set the scenario language in Cockpit and pass the same BCP-47 tag from the frontend:
Keep prompt language consistent with the session language.

State restoration

If your experience uses state:update checkpoints, include restoration instructions:

Testing prompts

  1. Test in Cockpit live page with real feature registry
  2. Verify tool calls trigger the correct frontend RPC
  3. Check behavior on timeout (slow network, empty results)
  4. Test interruption — user speaks while agent is talking

Anti-patterns

AvoidWhy
Long lists read aloudUsers can’t scan audio — use UI features
Calling tools without narrationCreates awkward silence
Assuming tool successAlways handle ERROR and empty results
Mixing languagesMismatched STT/TTS/prompt languages degrade quality