Building Your Agents
For business owners and team members who want their AI to make and answer calls (and chats) the way they would.
An agent is your AI caller. It has a voice, a personality, a goal for every conversation, and rules it always follows. You build one on the Agents page, give it a job (like "follow up with trade-show leads" or "answer our main line"), and then point it at a phone number or a campaign. You can have several agents — one for sales, one for reception, one for reminders — each tuned differently.
You don't write any code. You start from a ready-made template, adjust a few things in plain language, test it in a sandbox, and save. This guide walks through every part of the builder.
One note on naming: this product is white-labeled, so the company you signed up through may call it something other than "CallOps." The screens and steps below are the same regardless of the name on your dashboard.
Create an agent in three steps
- Go to Agents and click New agent.
- Pick a template from the Start from template menu (see the list below). This fills in the whole agent — its opening line, personality, and analysis — so you're editing, not starting from a blank page.
- Give it a name, pick a voice, and click Create agent. That's it — you can refine everything else afterward.
Every new agent starts with AI disclosure on, which is exactly where it should be. More on that below.
Choosing a template
The template you pick decides what the agent is good at. You can always edit the wording afterward, but starting from the closest match saves the most time. Templates are grouped into Sales, Service, and Operations.
| Template | Best for |
|---|---|
| B2B trade-show follow-up | The flagship. Calling warm booth leads after an event to qualify them and book a meeting. |
| Speed-to-lead instant callback | Calling a web-form lead within seconds of them submitting, while their interest is hot. |
| Real-estate ISA (buyer/seller lead) | Realtors qualifying a property lead and booking a showing or listing appointment. |
| Solar / home-services qualifier | Confirming a homeowner qualifies for solar, roofing, or HVAC and booking an estimate. |
| Insurance quote qualifier | Gathering a few details on an insurance lead and routing them to a licensed agent. |
| Inbound receptionist | Answering your main line: greeting callers, figuring out what they need, and taking messages. |
| Appointment reminder / confirmation | Calling to confirm an existing appointment and offering to reschedule. |
| Order-status / support callback | Returning a customer's support message, giving an order update, and escalating if needed. |
| Post-service survey / NPS | Running a quick satisfaction survey after a job and capturing feedback in the customer's own words. |
| Customer reactivation / win-back | Re-engaging customers who've gone quiet with a reason to come back. |
| Friendly payment reminder | A respectful, low-pressure reminder that a payment is due, with anything sensitive handed to a human. |
Some templates come with a matching conversation flow (a step-by-step script) that you can attach — the builder tells you when one is available.
The builder tabs
Once you're in an agent, the settings are organized into tabs: Prompt, Voice & behavior, Analysis, Tools, and Flow. Here's what each one does.
Prompt
This is where you set who the agent is and what it says. It holds a few things worth understanding.
Agent name and Voice. The name is for you (and shows up in your reports). The voice is what your callers actually hear — pick from the list of ready-made voices, each described by gender, accent, and tone.
Language. Defaults to US English. Change it if your callers speak another language.
Channels. Choose how this agent talks to people:
- Voice (phone calls) — makes and answers phone calls.
- Chat (web & SMS) — answers text conversations only.
- Both voice and chat — does both.
If you pick Chat or Both, the agent gets a shareable Web-chat widget you can drop on your website (covered further down).
Knowledge base. Attach a bundle of facts the agent can pull answers from — your hours, policies, product details. Optional but powerful; see the Knowledge base section below.
Opening line. The very first thing the agent says on every call. You can personalize it with the caller's details using double-brace placeholders — for example, writing {{contact_first_name}} makes the agent say the caller's actual first name. Think of these as fill-in-the-blanks that get filled automatically for each person. There's a full list of available placeholders at the bottom of the builder under Dynamic variables (things like the caller's name, your company name, today's date). You use them the same way in the opening line, the system prompt, and any flow.
System prompt. This is the agent's full playbook — its goal, how it handles objections, how it ends the call, and its non-negotiable rules (like always honoring an opt-out). When you start from a template, this comes pre-written and battle-tested; you mostly just fill in the blanks. Some blanks use single braces, like {offer} or {calendar_link} — those stay visible on purpose so you can spot anything you still need to fill in before you launch. You can rewrite any of it in plain English.
AI disclosure enabled. Keep this on. When it's on, the agent identifies itself as an AI assistant at the start of every call. This is required by law in most U.S. states and protects you from serious liability. If you turn it off, the dashboard shows a bold warning, and the change is logged with your name and the time — because you're taking on that responsibility. There is almost never a good reason to turn it off.
Voice & behavior
This tab fine-tunes how the agent sounds and how it paces a conversation. Every setting is a slider or a simple toggle — nudge them and test until it feels right.
Sliders:
| Setting | What it does |
|---|---|
| Speaking speed | How fast the agent talks. Lower is slower and calmer; higher is brisker. |
| Expressiveness | How lively vs. flat the voice sounds. Higher is more animated. |
| Responsiveness | How eagerly the agent jumps in to reply. Lower is patient; higher is snappy. |
| Interruption sensitivity | How easily a caller can cut the agent off. Higher means the agent yields the moment someone starts talking. |
Toggles and extras:
- Backchanneling — the natural "mm-hm" and "right" sounds people make while listening. When on, you get a Backchannel frequency slider to control how often.
- Ambient sound — an optional background hum (quiet office, call center, coffee shop, convention hall) so the call doesn't sound sterile. Or leave it clean.
- Boosted keywords — a comma-separated list of product names or industry terms you want the agent to hear accurately. Add anything unusual it might otherwise mishear.
- Voicemail detection — when on, the agent recognizes an answering machine and leaves the Voicemail message you write, instead of talking to a beep.
Timing settings (entered as numbers):
- Max call length — a hard cap so calls can't run away.
- End after silence — how much dead air before the agent politely hangs up.
- Opening delay — a brief pause before the opening line so it doesn't get clipped at the start.
Analysis
After every call, the AI reads the transcript and fills in a set of analysis fields you define — structured answers you can see on the call, get sent to your other tools, and pull into reports. This is how you turn conversations into data without listening to every recording.
Each field has a key (a short name), a type, and a description telling the AI what to extract. The four types:
| Type | Use it for |
|---|---|
| boolean | Yes/no questions — "Did they book?" "Are they the decision maker?" |
| selector | A pick-one from a list you define — e.g. sentiment: positive / neutral / negative. When you choose this type, a Choices box appears for your options. |
| text | A short written answer — "What's the next step they agreed to?" |
| number | A numeric value — an NPS score, a headcount, a budget figure. |
Click Add analysis field to create your own, and the trash icon to remove one. Templates come with sensible fields already set up.
Below the fields is Success criteria — a plain-English sentence describing what a successful call looks like (for example, "The contact booked a meeting or a callback time was captured"). The AI uses this to mark each call as a win or not, which drives your success rate in reporting.
Tools
Tools are real actions the agent can take during a call — not just talk. Flip on the ones this agent needs; leave the rest off. Some tools ask for a detail or two (a phone number, a calendar, a link) when you enable them.
| Tool | Turn it on when… |
|---|---|
| End call | Almost always. Lets the agent hang up cleanly when the conversation is done or someone opts out. |
| Transfer to a human | You want the agent to hand a live call to a real person (sales, support, on-call rep). Needs the destination phone number. |
| Book appointment | The agent should book a slot on a connected calendar and confirm the time back. Needs the calendar and meeting length. |
| Check availability | The agent should read your open calendar times so it offers real slots instead of guessing. Needs the calendar. |
| Send SMS mid-call | The agent should text a link or confirmation while still on the phone. Set a default message. |
| Press digit (IVR) | The agent needs to navigate a phone menu ("press 1 for…"). Useful for dialing into gated lines. |
| Extract variable | You want the agent to pull a specific value out of the conversation (budget, timeline, headcount) and save it. |
| Custom webhook / API | You have your own system the agent should check mid-call (a CRM lookup, order status, inventory). Needs your endpoint address — usually set up with help from whoever manages your tech. |
Flow
A conversation flow is an optional, step-by-step decision tree for the agent — a structured script that branches based on what the caller says. A free-form system prompt gives the agent goals and lets it improvise; a flow gives it rails, so every call follows a predictable, testable path ("greet → qualify → check availability → book → text confirmation," with side branches for callbacks and opt-outs). Reach for a flow when you want consistency and easy testing; stick with the prompt alone when you want the agent to be more conversational and flexible.
To add one:
- Save the agent first (you attach a flow from an already-created agent, not while creating a brand-new one).
- Open the Flow tab and pick a prebuilt flow from the menu — a short description shows what each one does.
- Click Attach flow. The steps then display right in the tab.
If your template ships a matching flow, the builder points it out with a note so you can attach the right one in one click. To remove a flow later, open the tab and click Detach flow.
Channels: voice, chat, or both
You set this on the Prompt tab under Channels. Most outbound-calling agents are Voice. If you want the same agent to handle website or text conversations, choose Chat or Both — and you'll get a web-chat widget to share.
The web-chat widget
Any agent that does chat gets a Web-chat widget card with two things you can copy:
- A shareable link you can send to anyone, and an Open button to preview it yourself.
- An embed snippet you (or your webmaster) can paste into your website so the chat window appears right on your page.
Knowledge base
A knowledge base is a named bundle of facts your agent can answer from — hours, policies, product details, FAQs, or links. Attaching one means the agent stops guessing and answers from what you gave it.
To set one up:
- Go to Settings → Knowledge base.
- Click into New knowledge base, give it a name and an optional description, and Create.
- Add sources to it — either typed-in text or a web link.
Then, back in the agent's Prompt tab, pick your base from the Knowledge base menu. There's a Manage knowledge bases link right there to jump over and edit sources anytime.
Testing before you go live
You never have to guess whether an agent works — you can test it two ways, and neither costs anything or dials a real number.
The Playground
At the top of every agent's page is the Playground — a chat box where you talk to your agent as if you were the caller. Type what a real person might say and watch how it responds. It's the fastest way to feel out the personality and catch anything awkward before real calls go out.
Next to it is a Run quick test button. It fires a few canned scenarios at the agent — can it book a meeting, does it honor an opt-out, does it handle a pricing question — and shows a green check or red X for each. A quick sanity check that the essentials work.
Test call
For a fuller dry run, click Test call at the top of the agent page. This runs a complete mock call from start to finish — ring, conversation, and post-call analysis — with no real phone call and no charge. It appears in the Recent calls list at the bottom of the page (tagged test) as it plays out, so you can click in and see exactly what a real call would produce, including the analysis fields you set up.
Cloning and archiving
- Clone (top of the agent page) makes an identical copy — the fastest way to spin up a second agent that's almost like one you already tuned. Copy it, tweak the differences, done.
- Archive retires an agent you're no longer using without deleting its history. Archived agents stop counting against your plan's agent limit and show up marked as archived in your list. (You'll only see the Archive button on an active agent.)
Your plan sets how many active agents you can run at once; the Agents page header shows how many slots you've used.
Related: Getting started · Running a campaign · Contacts & staying legal · Web chat & conversations · Reading your results