Prepare Voice AI agent for launch
EARLY ACCESS
Voice AI agents extend AI agents with voice-specific capabilities, enabling natural, two-way conversations on voice calls using speech recognition, Generative AI, and natural-sounding speech synthesis.
Before a Voice AI agent can handle live calls, configure the system prompt for natural spoken output, verify the IVR setup, and test the agent across key scenarios. Make sure you have already created and published your AI agent and configured the Transfer call to AI agent element in your IVR flow.
Write voice formatting rules into the system prompt
Voice formatting rules are explicit instructions added to the system prompt that force the language model to produce output suitable for spoken delivery. Voice AI agents require these rules because, without them, the model defaults to text-optimized responses such as bullet points, numbered lists, markdown, and long paragraphs, none of which translate well to spoken audio.
| Rule | Why it matters | Example instruction |
|---|---|---|
| Short responses only | Callers cannot re-read or scroll back. Long responses overwhelm. | Keep every response to a maximum of two or three short sentences. One idea per sentence. |
| No bullet points or lists | TTS reads bullet characters aloud or pauses awkwardly. | Never use bullet points, numbered lists, or any other visual structure. |
| No markdown | Asterisks, hashes, and underscores are spoken or cause odd pauses. | Never use markdown formatting of any kind. |
| No URLs or links | Callers cannot click spoken content. | Never mention a URL or link. Provide the information directly. |
| Spell out numbers | TTS may misread digits, especially in sequences. | Write numbers in words: twenty-three kilograms, not 23 kg. |
| Spell out dates and times | Numeric dates and 24-hour times are misread. | Say April seventh twenty twenty-six, not 04/07/2026. Say two thirty PM, not 14:30. |
| Expand abbreviations | TTS may spell abbreviations letter-by-letter. | Write kilograms not kg, European Union not EU. |
| Minimal punctuation | TTS pauses at colons, semicolons, and comma chains. | Avoid colons, semicolons, and long comma chains. Use simple sentence endings only. |
| Phone numbers in pairs | Digit-by-digit reading has uneven pauses and TTS may cut off. | Read phone numbers in groups of two digits: 38 51 23, not 3 8 5 1 2 3. |
| No backward references | Callers cannot scroll up to see earlier content. | Never say "see above", "as mentioned earlier", or refer to a previous turn by position. |
| Explicit voice mode declaration | The model defaults to text-optimized output without explicit instruction. | Include "You are operating as a voice bot. Every response will be read aloud by a text-to-speech engine." in the system prompt. |
Define tool execution conditions
Define the conditions for tool execution explicitly in the system prompt. Without explicit conditions, the language model reads the tool description and decides autonomously when to invoke it. This produces unpredictable behavior that is difficult to debug.
Specify the exact trigger for each tool so the agent invokes it only when the defined criteria are met.
| Tool | Example condition |
|---|---|
| Transfer to human agent | Transfer ONLY when the caller explicitly uses words like "agent", "human", or "representative". Do not transfer because the caller is frustrated or because a tool has failed. |
| End call | End the call only after repeating the summary back to the caller and receiving their confirmation that the matter is resolved. |
| Send SMS confirmation | Send an SMS only after confirming the full phone number with the caller, including the country code. |
The platform automatically plays an announcement to the caller when a transfer or end-call tool is invoked. Do not include these announcements in the system prompt. Only specify when the tool should be called.
Hallucinations are more dangerous in voice than in text. When a caller hears incorrect information spoken, it sounds authoritative and is harder to question. Instruct the agent to restrict its answers to approved sources only, never guess or estimate, and provide a clear fallback when information is unavailable.
Set language and tone
Language lock: Write the system prompt in the same language the agent speaks. Writing the prompt in one language and relying on the model to translate internally adds processing overhead on every turn. Include an explicit instruction never to switch languages mid-conversation.
Tone: Instruct the agent to use a warm, professional tone with simple vocabulary. Instruct the agent to open proactively by presenting what it can help with rather than waiting for the caller to state an intent. Instruct the agent to recognize negation (words like "no", "cancel", "that is wrong") and stop the current flow when the caller rejects it.
Verify the configuration before launch
Confirm that all configuration items are in place before you start testing calls:
- AI agent created, configured with voice-optimized instructions, and published.
- All tools added, tested, and error handling defined.
- Phone number provisioned and connected to the correct IVR flow.
- Transfer call to AI agent element configured with the correct agent, agent type, language, and voice.
- Agent greeting message written and tested (speech to text to speech mode only).
- IVR flow activated.
Test the agent
| Test area | What to verify |
|---|---|
| Basic call connection | Call connects. Agent plays the greeting. Voice is clear and natural. |
| Speech recognition | Agent correctly transcribes caller speech for your target language and accent. |
| Intent handling | Agent correctly identifies intent for all use cases you have defined. |
| Tool calls | All backend integrations return correct results. Agent speaks them naturally using the voice formatting rules. |
| Latency | Time from end of caller utterance to start of agent response feels natural and conversational. |
| Interruption handling | Caller can speak while agent is responding. Agent recovers gracefully. |
| Human transfer | Agent transfers only under the conditions defined in the system prompt. |
| Call ending | Agent ends the call gracefully under the conditions defined in the prompt. |
| Edge cases | Silence, background noise, accented speech, and out-of-scope requests are all handled. |
| Multi-language (if applicable) | Each language tested independently with representative callers. |
| Outbound flow (if applicable) | Outbound call initiated. Context variables passed correctly to agent. |