Skip to main content

Introduction

Designing a strong prompt (instructions) is how you turn a generic voice model into a reliable AI teammate. This comprehensive guide walks through how the itellicoAI agent runtime interprets your instructions, the structure we recommend, and repeatable patterns you can use for different use cases.
This is an advanced guide. If you’re just getting started, see Instructions Basics first.

Quick Start: The 5-Minute Prompt Formula

New to writing agent prompts? Start here. This formula gets you from blank page to working agent in minutes.
1

Who is your agent? (30 seconds)

Give your agent a clear identity and personality.
You are [Name], a [role] at [Company].
Your personality is [trait 1], [trait 2], and [trait 3].
Example:
You are Sarah, a Customer Success Manager at TechCo.
Your personality is helpful, patient, and knowledgeable.
2

What's the goal? (30 seconds)

Define the specific, measurable outcome.
Your objective is to [specific measurable outcome].
Example:
Your objective is to schedule product demos with qualified prospects
who have budget and timeline.
3

How does the conversation flow? (3 minutes)

Map out the key steps in order.Standard Flow:
  1. Greeting - Confirm identity
  2. Permission - Ask if they have time
  3. Discovery - Understand their needs
  4. Value - Share how you can help
  5. Action - Book meeting/close sale
  6. Closing - Confirm next steps
Write it in your prompt like this:
Conversation Flow:
1. Greeting - Confirm identity and thank them for their interest
2. Permission - Ask if they have 5 minutes to talk
3. Discovery - Understand their needs with open-ended questions
4. Value - Share how you can help based on what you learned
5. Action - Book meeting or close the sale using the appropriate action
6. Closing - Confirm next steps and thank them for their time
4

What are the guardrails? (1 minute)

Define what your agent should NEVER do and when to escalate.Write it in your prompt like this:
Guardrails - Never:
• Discuss pricing (transfer to sales team)
• Make promises about features or timelines
• Share customer data or account details
• Continue if customer is hostile (end call politely)

Transfer to a human when:
• Customer requests to speak with a manager
• Technical issue beyond your knowledge
• Customer is frustrated after 2 attempts to help
5

What if they object? (1 minute)

Prepare for common objections with exact responses.
Objection Handling:
• "Not interested" → [Your response]
• "Too expensive" → [Your response]
• "Need to think about it" → [Your response]
Example:
Objection Handling:
• "Not interested" → "I understand. Can I ask what changed since you requested info?"
• "Too expensive" → "I hear you. Let's discuss what features matter most to your budget."
• "Need to think about it" → "Of course. What specific concerns should I address?"

Key Writing Principles

Follow these three principles to make your prompts more effective:
Voice agents need conversational language, not corporate speak.Avoid:
"I am contacting you regarding..."
"Per our previous correspondence..."
Better:
"I'm calling about..."
"Following up on..."
Test: Read it aloud. If it sounds stiff, simplify it.
Don’t describe what to say - write the actual words.Avoid:
"Introduce yourself professionally"
"Explain the benefits"
Better:
Say: "Hi, this is Alex from TechCo"
Say: "This saves you 10 hours per week on reporting"
The more specific, the more consistent your agent will be.
Handle different scenarios with conditional logic.
If customer says yes → Continue to step 2

If customer says no → Ask: "When would be better?"

If customer is hostile → Say: "I apologize for
the inconvenience. Let me transfer you to a
manager who can help."
Plan for success, objections, and edge cases.

Quick Tips for Better Prompts

Be explicit about what the agent should never do.Examples:
Guardrails - Never:
- Make promises about features in development
- Discuss competitor products
- Provide legal or medical advice
- Share pricing not in the approved price list
- Continue if customer asks to be removed from list
Clear guardrails prevent costly mistakes.
Help the agent move smoothly between conversation stages.Examples:
"Now that we've covered X, let me share Y..."
"Great question. Before I answer that, can I ask..."
"That makes sense. Based on what you've told me..."
"Perfect. So the next step would be..."
Transitions make conversations feel natural, not scripted.
Always verify critical information before taking action.Examples:
Before booking:
"Let me confirm - that's Tuesday, March 15th at 2 PM Eastern. Is that correct?"

Before transferring:
"Just to make sure I have this right, you need help with [issue]. Correct?"

Before ending:
"Before we wrap up, is there anything else I can help with today?"
Reduces errors and builds trust.
Plan for every type of “no” with dignity.Examples:
Not interested:
"I completely understand. Thanks for your time, and feel free to reach
out if anything changes."

Wrong person:
"No problem. Do you know who I should speak with about [topic]?"

Bad timing:
"I appreciate you letting me know. When would be a better time to call back?"
How you end matters as much as how you start.
Don’t ask for everything upfront - build rapport first.Bad:
"Can I get your name, email, phone number, company, role, and budget?"
Better:
1. Start with name
2. Build rapport and establish value
3. Ask for email (for confirmation)
4. Naturally discover other details through conversation
People share more when they understand why you’re asking.

Remember: The best voice agents don’t sound like robots. They sound like the best version of your best employee on their best day. Write for conversation, not perfection.

Understanding the Instruction Panel

Inside Agents → Abilities → Instructions you provide a single block of text. The platform sends this block to the LLM on every turn together with:
  • Structured context - Contact data, recent action results
  • Knowledge Base snippets - Retrieved content relevant to the conversation
  • Real-time transcript - The ongoing conversation history

What the Agent Already Knows

The platform automatically provides:
  • Full conversation history
  • Available actions and their parameters
  • Knowledge base content (when retrieved)
  • Current date, time, and timezone
Available via variables (only when you reference them and contact exists in Contacts):
  • Contact information: {{ contact.first_name }}, {{ contact.last_name }}, {{ contact.email }}, {{ contact.phone }}, {{ contact.full_name }}
  • Context data: Dynamic values from API integrations

Before You Write Anything

Collect these inputs so the prompt speaks to a specific scenario instead of a generic persona:
1

Define Call Objective

What should the caller achieve by the end of the conversation?Examples:
  • Get answer to product question
  • Book an appointment
  • Qualify as sales lead
  • Resolve technical issue
2

Identify Must-Have Data

What fields are needed for downstream actions?Examples:
  • Email address (for confirmations)
  • Policy number (for lookups)
  • Pain point (for qualification)
  • Preferred date/time (for booking)
3

List Available Actions

What actions can the agent trigger?Examples:
  • Transfer to Support
  • Book Appointment
  • Send Follow-up Email
  • Update CRM
Include failover plans for each.
4

Map Knowledge Sources

Which knowledge collections are attached?Examples:
  • Product FAQ
  • Return Policies
  • Technical Troubleshooting
  • Pricing Information
When should each be referenced?
5

Define Guardrails

What topics must be avoided? When to escalate?Examples:
  • Never discuss competitor products
  • Never promise refunds (transfer instead)
  • Escalate legal threats immediately
  • Don’t diagnose hardware (schedule technician)
Documenting these inputs first keeps your prompt short, specific, and easier to maintain.
Use this structure as a template:
SectionPurposeTips
Role & ToneTell the LLM who it is representing and how it should soundInclude brand tone, languages allowed, pronunciation notes
Primary GoalExplain the desired outcome for the callerUse bullets or numbered lists for clarity
Conversation FlowLay out the core steps in orderReference prerequisites, loops, exit criteria
Information CaptureCall out required fields and confirmation stepsHighlight how to verify accuracy before proceeding
Action TriggersDescribe when to run each action and with which inputsUse explicit action names that match the configuration UI
Escalations & GuardrailsDefine forbidden topics and when to hand off or end callsPair rules with the relevant transfer/end action
Closure & Follow-upSpell out how to wrap up the call and confirm next stepsInclude any follow-up messaging you promise the caller
Keeping these sections in a consistent order helps later editors understand the prompt quickly.

Reusable Patterns

Follow these steps in order:
1. [First step]
2. [Second step]
3. [Third step]

If interrupted, return to the first unfinished step before moving on.
Use when: You need strict conversation flow
When customers express frustration:
- Acknowledge feelings: "I understand how frustrating that must be"
- Apologize when appropriate: "I'm sorry you're experiencing this"
- Take ownership: "Let me see what I can do to help"
- Avoid defensive language
Use when: Tone matters for customer satisfaction
If the [Action Name] action fails:
1. Apologize sincerely: "I apologize, I'm having trouble with that"
2. Explain what went wrong briefly
3. Offer alternative: [describe alternative]
4. If alternative also fails, trigger [Fallback Action]
Use when: Actions might fail and you need graceful recovery
Languages allowed: English, Spanish, French

If the caller speaks Spanish:
- Respond in Spanish
- Use formal addressing (usted)

If the caller speaks French:
- Respond in French
- Use formal addressing (vous)
Use when: Serving multilingual customers
Important compliance rules:
- NEVER promise service availability outside business hours
- NEVER discuss pricing not listed in the current price sheet
- NEVER share customer data without verification
- ALWAYS disclose that calls may be recorded (already in greeting)

If asked about regulated topics, say: "I need to transfer you to [Department] for that information."
Use when: Legal/regulatory requirements exist

Referencing Actions

Always reference actions by the exact name configured in the UI. The agent runtime exposes a function call with that name, so ambiguous wording can break execution.

Example: Booking Action

When the caller confirms they want to schedule, call the `Schedule Dental Checkup` booking action with:
- `date` and `time` gathered during the conversation
- Ask for email if `contact.email` is missing; otherwise use contact email

If the action returns an error:
1. Apologize: "I'm sorry, I'm having trouble booking that time slot"
2. Offer two alternative slots from the same day
3. Retry once with the alternative
4. If the second attempt fails, trigger the `Transfer to Front Desk` action

Example: Transfer Action

Use the `Transfer to Tier 2 Support` action when:
- Issue requires escalation beyond your capabilities
- Customer explicitly requests human agent
- Technical issue unresolved after troubleshooting
- Legal or billing questions arise

Before transferring:
1. Explain why: "I'd like to connect you with a specialist who can better help with this"
2. Ask permission: "May I transfer you to them now?"
3. If they agree, trigger the transfer action

Variables and Conditional Content

Use Jinja templating to personalize instructions with dynamic values from contacts and context.

Conditional Logic

{% if contact.email %}
You have the customer's email on file: {{ contact.email }}
{% else %}
Ask for their email address before proceeding with the booking.
{% endif %}

{% if contact.first_name %}
Greet them by name: "Hi {{ contact.first_name }}, thanks for calling!"
{% else %}
Use a general greeting: "Hi there, thanks for calling!"
{% endif %}

Next Steps

Need Help?

Email support@itellico.ai for assistance with prompt engineering and agent optimization.