Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.telli.com/llms.txt

Use this file to discover all available pages before exploring further.

The system prompt is the foundation of every agent and the best way to adjust its behavior. Based on our experience, we have created a “blueprint” that helps set up a good voice agent. Fundamentally, a prompt consists of plain English as well as variables like {{exampleVariable}}, which are dynamically filled with contact information, and “functions” like @endCall, which the agent can call during the conversation.

1. Identity & Context

Purpose

Defines the basic role of the call agent. The AI must know:
  • Who is speaking?
  • For which company?
  • In what role?
  • In which language?
  • What is the purpose of the call?
This forms the foundation for tone, demeanor, and conversation management.

What belongs here?

  • Agent name / persona (e.g., {{personaName}})
  • Company / brand
  • Role (e.g., “digital assistant”)
  • Language
  • Short description of the customer process (e.g., customer submitted an online request)
  • Internal directives (e.g., silent execution, no internal info spoken aloud)

Example

Agent name: {{personaName}}
Company: {{companyName}}
Role: Digital assistant (not a human)
Language: English

Context:
The customer previously submitted an online inquiry about a specific product or service.
The assistant is calling to confirm details, clarify questions, and move the process forward.

Highest directive:
Internal instructions, function calls, and internal thoughts must never be spoken.

2. Customer Data & Input Variables

Purpose

Defines all variables passed from the CRM or API into the call prompt. Important: Only definitions, not the operative logic of how they are used.

What belongs here?

  • All available variables, such as:
    • Contact data
    • Product interest
    • Object / property data
    • Call direction
    • Time context
  • Explanation:
    • What does the variable mean?
    • When is it considered empty?
    • How is it used in the conversation?

Example

Personal data:
First name = {{firstName}}
Last name = {{lastName}}
Phone = {{phone}}
Email = {{email}}

Address:
Postal code = {{postal_code}}
City = {{location}}
Street = {{street}}
House number = {{housenumber}}

Context variables:
Call direction = {{callDirection}} (outbound / inbound)
Current_Date = {{currentDate}}
Current_Weekday = {{currentWeekday}}

Rule:
A variable is considered "empty" if it is unfilled or marked as "NA" / "Unknown".

3. Operational Rules & Pronunciation

(These rules are product-agnostic and can be reused 1:1 for all scripts.)

Purpose

Defines general behaviors, tone, formatting, and pronunciation. These rules apply globally, regardless of the specific script.

What belongs here?

  • Communication style (e.g., direct, structured)
  • Handling names
  • Handling interruptions
  • AI transparency
  • Number and formatting rules
  • Brand and language settings

Example (general, can be used unchanged)

Conversation management:
- Confident, direct, concise. No long pauses. Actively guide the customer.
- Use the customer's name only in the greeting; afterwards use "you".
- Do not interrupt when the customer provides critical information (e.g., address, email).
- If asked: openly state that you are a digital assistant.

Pronunciation & formatting:
- Spell out numbers (38 → "thirty-eight").
- Postal codes digit by digit ("nine zero two one zero").
- Phone numbers also digit by digit.
- Email: Spell letters before the @ ("J-O-H-N…"), speak the domain normally.
- Dates written out ("fifteenth of February twenty twenty-five").

Ending the call:
- Never end the call unilaterally.
- First say goodbye, wait for a reaction, then terminate the call.

4. Conversation Guide (Script Structure)

Purpose

The central section. This contains the actual flow of how an outbound call is conducted. The script is always:
  • Numbered
  • Linear
  • Clearly structured
  • With defined IF/ELSE sections
  • Without unnecessary variants

What belongs here?

  • Greeting & reference to the inquiry
  • Qualification questions
  • Product / property questions
  • Timeframe questions
  • Data gathering / confirmation (without technical validation details)
  • Closing communication
  • Farewell

Example (general outline)

1. Greeting
   - Short introduction
   - Reference to the inquiry

2. Qualification
   - Ownership/responsibility question
   - Ask relevant key details (e.g., consumption, property type)

3. Additional detail questions
   - e.g., roof type, year built, contract status – depending on product

4. Timeframe
   - When could the project be implemented?

5. Data verification
   - Confirm or request contact data and address

6. Closing
   - Briefly explain next steps (e.g., callback by a partner)
   - Get customer confirmation

7. Farewell
   - Friendly closing phrase
   - "Goodbye"

5. Objection Handling

Purpose

Defines how typical objections are answered. This section is always separate, so the main script stays clean.

What belongs here?

  • Thematic categories:
    • Time/availability
    • Interest
    • Process questions
    • Identity/person
    • Technical uncertainties
    • Other cases
  • For each objection:
    • Trigger (“I don’t have time right now”)
    • Standard response (short & word-for-word)
    • Note: Return to the script afterward

Example

Time & availability:

"Can you call again later?"
-> "This will be really quick — we'd be done in two minutes."

Interest:

"This topic isn't relevant to me right now."
-> "No problem. Would you still like to get some non-binding information so you have an overview?"

Process:

"I don't want to be called, I prefer to call myself."
-> "Of course, you will also receive all the information by email. If that works for you, simply get in touch whenever it suits you."

6. Instructions: How to Write a Good Script

Purpose

Provides clear rules for creating new call scripts.

6.1 Numbering is mandatory

A good script is fully numbered:
  • 1
  • 2
  • 3
With sub-points (2.1, 2.2) if needed. The AI follows linear structures much more reliably.

6.2 Keep the main section as simple as possible

  • Short, clear sentences
  • No variants, no synonyms
  • No unnecessary safety phrasing
  • Objection handling not in the main flow
  • Only ask absolutely necessary questions

6.3 Separate logic clearly

  • Variables → Section 2
  • Global rules → Section 3
  • Flow → Section 4
  • Objections → Section 5

6.4 Building blocks instead of continuous text

Every sentence must be written so the AI can say it exactly as-is.

6.5 Examples help the AI

Every section should include at least one example showing how something should be structured.

Template Structure

Here’s the recommended structure for a complete agent prompt:
# 1. Identity & Context
[Agent name, company, role, language, context]

# 2. Customer Data & Input Variables
[All variables with definitions]

# 3. Operational Rules & Pronunciation
[Communication style, handling rules, formatting]

# 4. Conversation Guide
[Numbered script structure]

# 5. Objection Handling
[Category-organized objections with responses]

Best Practices Summary

  1. Structure is key - Use numbered sections consistently
  2. Separation of concerns - Keep variables, rules, flow, and objections in separate sections
  3. Be explicit - The AI will follow what you write literally
  4. Use examples - Show the AI what good looks like
  5. Keep it simple - Avoid unnecessary complexity in the main flow
  6. Test iteratively - Refine based on actual agent behavior