All variables should be clearly defined in a centralized section so the agent has full clarity on what values are available and how they should be used.
Available Variable Examples
| Item | Description |
|---|
| First Name | {{firstName}} |
| Last Name | {{lastName}} |
| Language | {{language}} |
| Current Product | {{product}} |
| City | {{city}} |
| Customer ID | {{customerId}} |
| Contract Number | {{contractId}} |
| Current Contract Value | {{currentTotalPrice}} |
Tips for Using Variables
Do not build decision logic directly around raw custom variables (e.g., {{letter_received}} == "Ja"). If a variable is unknown, empty, or 0, the agent has no instruction on how to interpret it and may not know which path to follow. Instead, clearly define what each variable represents in natural language and explicitly instruct the agent what to do in each scenario (e.g., “If the customer has received the letter and has insurance, follow path 6.2.a”).
What not to do:Before proceeding, review the available customer data and choose the appropriate path based on:{{letter_received}} == "Yes" and {{rsv_present}} == "Yes" → Path 6.2{{letter_received}} == "Yes" and {{rsv_present}} == "No" → Path 6.2
What to do:Define all variables:
- Letter received:
{{letter_received}}
- Legal protection insurance (RSV):
{{rsv_present}}
Use definitions of variables in natural language:Letter received == “Yes” and Legal protection insurance (RSV) == “Yes” → Path 6.2Letter received == “Yes” and Legal protection insurance (RSV) == “No” → Path 6.2
Tool calls send HTTP requests and allow the agent to retrieve or update information during a call — for example, fetching data from a meeting in a calendar.
In the prompt, you should define when the agent should use a tool call, but not how the tool call itself is executed. The technical setup and configuration of the tool call must be handled separately in the agent settings.
Within the system prompt, it is important to clearly instruct the agent under which circumstances each tool should be triggered. This can be done either by using built-in tool calls such as [endCall] or [callMeLater], or by defining custom tool calls in advance.
Examples:
| Tool | Action | Example Usage Rules | Example |
|---|
[endCall] | Agent can end the call | Politely end the call after all tasks have been completed. Use only once the conversation is fully concluded. | The right person is not available |
[callMeLater] | Agent schedules another call with the user at a later point in time | Always ask the customer first if they would like a callback. Never call the tool before asking. When to use: Only when explicitly referenced in a scenario. When NOT to use: Never for expert callbacks. Never if an expert/colleague callback has already been promised. If the words “expert,” “colleague,” or “transfer” were used during the conversation, this tool is strictly forbidden. | The user is busy and wants to be called back later |
[waitForUserToReturn] | Wait for the user to continue the conversation | Use when giving instructions and waiting for the customer to complete an action, or when the customer explicitly asks you to wait or says they need a moment. | Agent: “Plug the cable into the power outlet.” User: “One moment please, I’ll be right back.” |
Prompt Examples
Context
Conversations with restaurant owners or decision-makers to introduce Taco Company's franchise opportunity and schedule a meeting with a franchise development manager.
Available Variables
Definition:
personaName = {{personaName}}
firstName = {{firstName}}
lastName = {{lastName}}
email = {{email}}
phoneNumber = {{phoneNumber}}
language = {{language}}
callDirection = {{callDirection}}
currentDate = {{currentDate}}
currentTime = {{currentTime}}
currentWeekday = {{currentWeekday}}
Customer data
Today's date: {{currentDate}}
Today's weekday: {{currentWeekday}}
Current time: {{currentTime}}
Phone number (caller): {{phoneNumber}}
Background & important info
Company: Animal Doctor is a veterinary clinic providing general consultations, check-ups, vaccinations, diagnostics, and treatment for a variety of animals.
Client goal: Schedule appointments for different animals and collect key data: animal name, species, owner name, email address, and the problem/concern.
Critical information:
Emergencies: If the caller believes it's an emergency, prioritise immediate appointment booking. If no immediate availability, advise contacting the nearest emergency veterinary hospital and offer to capture details for follow-up.
Vaccinations and routine care: For routine visits, gather details and suggest the next available non-urgent slot.
Medication refills: Capture details and forward to the clinical team if an appointment is not immediately required.
Pricing: If asked, give a gentle estimate range if available; otherwise, note that final costs depend on examination and treatment. Offer a short consultation to provide clearer guidance.