How a voice turn works
- Speech recognition turns the caller’s audio into text and decides when they have finished speaking.
- Mantle runs the turn exactly as it does for chat: it picks the skill, runs tools, enforces your constraints, and writes memory.
- Speech synthesis turns the agent’s reply into audio. Providers that support streaming text input can start speaking before the whole response is written. Custom engines must implement the streaming input interface to do this.
integrations.yml. Recognition and synthesis are chosen separately, so you can mix
providers, for example Deepgram for recognition and Rime for synthesis. Your
skills do not change when you switch provider. See
Speech providers.
What Mantle handles for you
None of this needs changes to your skills. The same skill keeps its text
behavior on chat channels.
What you control
These are the decisions worth making for a voice agent. Each links to how.- Who speaks first. Replace the silent
default_session_startwith a greeting, and add any recording notice there. See Designing for voice. - How much the agent says at once. Lists and long explanations need breaking up for a listener. See Read lists in small pieces.
- Exact wording for numbers. Order numbers and references belong in responses, not in model-generated text.
- Confirmation before side effects. Use
requires_confirmationso the caller agrees out loud before anything irreversible. - Keypad input. A collect step can accept digits from the phone keypad. See DTMF collect steps.
- Ending the call. An ordered-block
action: hangupends the call after an authored goodbye. See Step kinds. - Voice and recognition. Choose the speech providers, models, and voice per language. See Speech providers.
Try it
The Inspector has a voice mode built in. With an ASR and TTS model enabled, runrasa inspect and select Start voice conversation. See
Getting Started.
Learn from a complete community project
The Rasa Community voice tutorial builds a travel agent with references, tools, confirmations, and ordered steps. Use it when you want to see several skills working together after completing the card replacement tutorial. Check the tutorial’s tested Rasa version and compatibility notes before adapting its examples; the configuration reference in these docs describes this Mantle version.Rasa Community voice tutorial
Follow the travel-agent walkthrough on rasa.community.
Runnable community agent
Open the companion project’s setup instructions, skills, and dependency pins.
Next steps
Build a voice agent
A step-by-step tutorial, from first draft to phone-ready.
Designing for voice
Patterns for skills and responses that work well out loud.
Connect a phone line
Put the agent behind a real phone number.
Test and monitor voice
Listen in the Inspector, then watch latency and interruptions in production.