Mental model
Think of the system prompt as four layers, in order of strength:- Identity — who the agent is, what it’s for
- Personality — how it speaks
- Conversation flow — what it should do
- Hard rules — what it must never do
Identity
One sentence. Concrete role, not a job description. ✅ “You are Sam, an appointment scheduler for Riverside Dental.” ❌ “You are a helpful AI assistant designed to help patients.” The first version anchors every downstream choice. The second tells the model nothing.Personality
Three to five adjectives, plus one or two phrases of texture. ✅ “Warm, concise, professional. Never sound rushed. Use short sentences in casual moments and slightly more formal ones when discussing medical concerns.” ❌ “Be friendly and helpful and engaging.” LLMs respond strongly to specificity in tone descriptions. Describe the register (casual, formal, technical) and cadence (short sentences, longer reflective ones) separately.Conversation flow
This is where most teams over-write. Keep it imperative and bulleted. ✅Hard rules
Rules are absolute. Use them sparingly — every rule competes for the model’s attention. Good rules:- Never quote prices over the phone. Direct callers to the website.
- Never confirm appointments without verifying date of birth.
- Never make medical recommendations. Refer all medical questions to the doctor.
Variables in prompts
You can interpolate dynamic values into prompts using{{variable}} syntax. The agent platform exposes a few built-in variables:
{{caller_phone_number}}— the caller’s E.164 number (inbound only){{current_time}}— ISO-8601 timestamp at conversation start{{agent_phone_number}}— the number the call came in on
Patterns that work
Confirm-and-summarize
After collecting information, have the agent confirm it back. Reduces error rate dramatically.Graceful fallback
For anything outside scope, define one fallback:Silence handling
Set a maximum silence duration in Advanced Instructions, then define what the agent says when it elapses:Iteration
The first version of any prompt will be wrong. Plan to iterate by:- Reading 10 transcripts after each publish
- Identifying the most common failure mode
- Adding one specific instruction or rule to address it
- Republishing

