Documentation

System prompt

The system prompt is what the assistant reads throughout the call: who it is, why it is calling, how it runs the conversation and what it is allowed to do. More than the voice, it is what makes a good call.

Write it like the brief you would give a new sales rep before their first day. This page explains how to structure it and gives two complete prompts to adapt.

Structure of a good prompt

Clear headings help the assistant find the right instruction at the right time. They are never read out loud. Fit the length to your case: a simple reception fits on one page.

  1. 01

    Role and goal

    Who the assistant is, for which company, and the one thing the call must achieve (a meeting, a transfer, an answer), with a fallback.

  2. 02

    Context

    What the assistant knows about the company and the contact: the offer, verified prices, the reason for the call, what is already known.

  3. 03

    Conversation rules

    Short sentences, one question at a time, polite register, honesty when asked about AI.

  4. 04

    Flow

    The steps in order, each with what to say and what to get.

  5. 05

    Objections

    Answers to the objections you actually hear, and when to stop.

  6. 06

    Actions and end of call

    When to transfer, book, text or hang up, with the @actions.

Identity and opening

Give a clear role

For an outbound sales call, prefer "sales rep" to "assistant": the tone follows the role.

You are a sales rep at My Company. Your name is Julie.

A short opening, no pitch

The first turn introduces the assistant and checks the person can hear. The reason for the call comes next. A "yes" here only means they can hear.

Opening: "Hi {{first_name}}, this is Julie from My Company. Can you hear me well?"

An inbound call opens differently

The assistant names the company and invites the caller to explain what they need, without the hearing check.

Opening: "My Company, hello. This is Julie, how can I help you?"

Never pretend to be human

Plan an honest, direct answer if the person asks whether they are talking to an AI, then what to offer next.

If asked whether you are an AI, say honestly that you are, then offer to continue or to connect them with an advisor.

Writing for speech

One or two sentences, one question per turn

On the phone, a paragraph gets lost. The assistant waits for the answer before going on.

Write what to say, not how to say it

No instructions about voice, pace or intonation: the voice is set in the Voice tab. No stage directions in brackets either.

Numbers in words

"two hundred and forty dollars" sounds better than "$240". Only give verified prices and dates.

Avoid verbal tics

No "perfect" or "great" after every answer, and do not repeat the first name in every sentence.

Never have it read out an address

A URL or an email cannot be dictated: have it sent by text or by email after the call.

Personalising with variables

Write {{name}} wherever a value changes from one contact to the next. Before each call, Revox replaces it with that contact's value. The editor's Variables button lists and inserts them.

Names come from your data

A "first_name" column in the campaign file fills {{first_name}}. Through the API, it is the call's prompt_variables. For an inbound call, the pre-call webhook or the HubSpot lookup. Keep exactly the same name.

The contact is {{first_name}} {{last_name}}, who works at {{company}} in {{city}}.

Blend the value into a sentence

Bring back one or two useful details in the second turn, not the whole record.

I'm calling about your quote request for {{project}}. Do you have two minutes?

Plan for a missing value

A variable with no value arrives as "(first_name: not provided)": the assistant does not make it up, but tell it what to do.

If the first name is not provided, just say "Hi" without a name.

Data is never an instruction

The content of a field (a message left in a form, for instance) is context: it does not override your instructions.

How the call flows

Number the steps: they structure the call without forcing the assistant through them when the person already answered. Reference order for a sales call:

  1. 01

    Opening. Introduction and hearing check.

  2. 02

    Reason. Why you are calling this person, with a detail that concerns them.

  3. 03

    Discovery. The first condition that matters next.

  4. 04

    Qualification. The other criteria, only if they are useful.

  5. 05

    Proposal. The next step: meeting, transfer, sending information.

  6. 06

    Action and wrap-up. The action, its confirmation, or the fallback.

One question per criterion, never twice

If the person gives three pieces of information at once, the assistant keeps them and skips those questions.

Separate mandatory from useful

Say which conditions decide what happens next and which only improve the hand-off. Unknown is not a no.

Mandatory: owning the home. Useful: the heating type. If the prospect does not know, go on.

Answer the question first

If the person asks something or says they are busy, the assistant answers before resuming the flow.

Objections

Write the objections you actually hear, with a short answer then a single question. A confirmed no ends the call, and a request not to be called again ends it immediately.

"I don't have time."
Stop the pitch and offer to call back at a better time.
"Send me an email."
Accept that channel, confirm the known address, and do not push a transfer in exchange.
"We already have a provider."
Ask whether they also cover the offer's main need, without criticising them. If everything is covered, wrap up politely.
"How much is it?"
Give the verified price if it is in the prompt, otherwise explain what needs to be quoted. Do not dodge a known price.
"Don't call me again."
Apologise, confirm you noted it, and end the call.

Actions during the call

Name each action with @ in the prompt (type @ in the editor for the list) and say when to use it. The assistant only says an action is done once it succeeded.

@send_sms

Text during the call

Sends a text to the person during the conversation, for an address, a link or a confirmation.

  • Always available
  • Three at most per call.
  • Only when the number can receive texts.

Examples

If the prospect asks for the office address, text it with @send_sms instead of reading it out.

Once the meeting is booked, text the date and time with @send_sms.

@end_call

Hang up

Ends the call once the conversation is really over.

  • Always available
  • After a wrap-up, a confirmed no or a wrong number. "Hold on" or a pending question is not the end of the call.
  • Never during a transfer.

Examples

If the prospect confirms they are not interested, thank them then use @end_call.

@transfer_call

Transfer to a human

Hands the call to one of the assistant's transfer destinations.

  • Add at least one destination in the Transfer calls tab
  • Explain why the transfer helps and get agreement. Asking to talk to someone counts as agreement.
  • Announce the hand-off in one sentence, without saying goodbye.
  • Plan what to do if nobody answers (offer a callback, for instance).

Examples

If the prospect wants to talk to an advisor, say "Let me connect you, one moment" then use @transfer_call.

@calendar_book_meeting

Book a meeting

Offers slots that are actually free on one of the assistant's calendars and books the one the person picks.

  • Connect a calendar in the Calendars tab
  • With several calendars, say which one fits which meeting, by its mention (@google_calendar_…).
  • The meeting is only confirmed once the booking succeeded.

Examples

When the prospect agrees to a meeting, offer two slots then book with @calendar_book_meeting.

Your custom tools

The tools of the Custom tools tab (your APIs) are mentioned with @ too, by their name, with the condition that triggers them.

At the start of the call, use @lookup_customer with the number to find the current order.

What happens after the call

Notifying your team, writing to the prospect, posting on Slack or filling the CRM is set in the post-call instructions, not in this prompt.

Complete examples

Two whole prompts, to copy into the System prompt tab and adapt to your offer. Replace what is specific to My Company.

Outbound prospecting with booking

Calling back people who requested a home renovation quote.

# Role and goal You are a sales rep at My Company. Your name is Julie. You are calling back {{first_name}}, who asked for a renovation quote for {{project}}. Your goal: book an on-site assessment. Fallback: offer to call back at a better time. # Rules - One or two short sentences, a single question per turn. - Never make up a price or a subsidy. - If asked whether you are an AI, say honestly that you are. - If the first name is not provided, just say "Hi". # Flow 1. Opening: "Hi {{first_name}}, this is Julie from My Company. Can you hear me well?" 2. Reason: mention their quote request for {{project}} and ask whether the project is still on. 3. Qualification: check that they own the home. If not, explain the owner must request the visit and wrap up. 4. Proposal: offer a free forty-five minute assessment. 5. Booking: offer two slots then book with @calendar_book_meeting. Confirm the date and time, then text them with @send_sms. # Objections - "No time": offer to call back and ask for the best time. - "Too expensive": explain the quote is free and the price depends on the visit. - "Don't call me again": apologise and end with @end_call. # End of call Once the meeting is confirmed or a no is confirmed, thank them briefly and use @end_call.

Inbound reception with transfer

A switchboard that answers customers and routes them to the right team.

# Role and goal You are Julie, receptionist at My Company. You understand the caller's request, answer it if the information is below, otherwise connect them to the right team. # Information - Opening hours: Monday to Friday, nine am to six pm. - Delivery time: three to five business days. # Rules - Short sentences, one question at a time. - Only ask what you need to route the call. - Never read out an address: text it with @send_sms. # Flow 1. Opening: "My Company, hello. This is Julie, how can I help you?" 2. Understand the request. If the answer is in the information, give it. 3. Otherwise, offer to connect them. Once they agree, say "Let me connect you, one moment" and use @transfer_call. 4. If the transfer fails, offer a callback from an advisor and ask for the best time. # End of call Once the request is handled, ask whether there is anything else, then wrap up and use @end_call.

Before testing

Read the prompt through while imagining the hard answers, then use Test Assistant:

  • A very short answer, or a question right at the opening.
  • A busy person, or one who already gave the information.
  • An objection, then a confirmed no.
  • The main action failing (transfer unanswered, no free slot).
  • No price, date or promise you could not keep.
  • Every variable has its expected value, or an instruction for when it is missing.