Most AI customer engagement agents suffer from severe amnesia. It’s not because they lack processing power—it’s because they operate in isolated silos.
A customer calls your support line to discuss a loan application. The voice agent gathers critical details. The next day, the same customer calls back, only to be asked for the exact same information all over again.
Today, we are thrilled to announce Hexta Engage Common Memory—starting with Caller Profiles: named extraction prompts that keep a structured history for every phone number, so your AI agents pick up exactly where the last conversation left off.
Meet Caller Profiles: Memory That Follows Every Phone Number
A Caller Profile captures the information that matters about a caller across multiple conversations. You define what to extract. After each call, the system writes a summary and reuses it the next time that number calls.
- One profile, one prompt, one history per phone number.
- Shared across agents: multiple agents can use the same profile and see the same number history.
- Inbound and outbound: outbound history is keyed to the number you dialed; inbound history to the caller’s number.
- Flexible output: summaries can be text, JSON, key / value, or a list.
Conversational Memory vs. Workflow-Aware Memory
Most conversational AI platforms only store chat transcripts or short-term message buffers. That falls short of real enterprise requirements.
| Traditional AI Memory | Hexta Engage Caller Profiles |
|---|---|
| Stores raw transcripts and unstructured text | Stores structured summaries you define: text, JSON, key / value, or list |
| Forgets the caller when the call ends | Keeps a separate history for every phone number, call after call |
| Locked to a single agent or flow | One profile can be shared by multiple agents |
| No record of follow-ups already sent | Records every email and WhatsApp message the call actually sent |
| Replays long transcripts that add latency | Sends only the newest summaries as compact background |
How It Works: From First Call to Lasting Memory
- Create profile
- Select on Start
- Set switches
- Publish
- Call happens
- View history
1. Create a Caller Profile
Go to Telephony → Caller profiles and click New profile. Give it a name, choose the summary type, and write an extraction prompt that tells the model what to keep.
Turn on Use Call Results variables to write tokens such as {{customer_name}} in your prompt. After hangup, those tokens are filled from that call’s Call Results extract. You can refine the prompt anytime with Edit prompt.
2. Attach It in Voice Builder
Open the agent in Voice Builder, go to the Start node, and open the Caller profile tab. Pick a profile, set four switches, and publish.
| Setting | What it does |
|---|---|
| Use caller’s conversation history | Adds this number’s earlier summaries to the agent at the start of the next call. |
| Write this conversation to history | After hangup, saves one new summary on this profile for this number. |
| Use earlier call-result events | Adds emails and WhatsApp messages already sent to this number to the agent’s context. |
| Record call-result events | After hangup, saves each email or WhatsApp this call actually sent on that summary row. |
Choosing a profile on Start attaches it immediately and marks the profile Active. Switch changes take effect on live calls after you publish.
3. During the Call: Instant, Quiet Context
When this number already has history, the agent receives it as background the moment the call starts—never old transcripts, only the summaries that matter.
Background for this caller. Do not read aloud unless the caller asks.
- Oct 14Interested in the Pro plan for 40 seats. Asked for a pricing breakdown.WhatsApp sent: Pricing sheet
- Oct 9Requested a demo for the support team. Decision expected by end of month.Email sent: Demo confirmation
- Oct 2First inquiry about Voice AI for inbound support.
- Earlier2 older calls folded into one line.
- The agent receives the newest 3 summaries; older ones fold into one earlier line.
- With call-result events on, each of those calls also includes a line for every email or WhatsApp that was sent.
- The agent treats this as background and won’t read it aloud unless the caller asks.
- A first call from a new number simply starts fresh.
Example data for illustration. Classic and realtime agents both receive this context when the published flow has the switches on.
4. After Hangup: Structured Memory, Saved Automatically
Call Results runs first (extract, then any configured email or WhatsApp). Then the Caller Profile writes its summary and records the sends.
{
"customer_name": "Jordan Reyes",
"company": "Northwind Logistics",
"requirements": "Inbound support agent, 40 seats",
"interest_level": "high",
"next_steps": "Send pricing, book demo for Oct 28"
}- If write history is on, the profile prompt runs on the transcript, using the same extraction provider and model as that call’s Call Results.
- If Call Results variables are on,
{{tokens}}are filled from this call’s extract first. A missing value stays blank. - If record events is on, each successful email or WhatsApp send is stored on the same row. Skipped and failed sends stay in the call log only.
- A row is saved when there is a summary, a send, or both.
Choose How Each Summary Is Structured
Pick the format that fits your workflow. Editing the prompt starts a new version, and earlier summaries keep the prompt and type they were written with.
- TextA short paragraph of what mattered on the call.
Wants 40 seats, pricing by Friday. - JSONA structured object returned as-is, ready for your CRM or ERP.
{"interest": "high"} - Key / valueNamed fields shown as a list.
Plan: Pro · Seats: 40 - ListA short list of lines or bullets.
• Send pricing • Book demo
Review Every Number’s History
Open Telephony → Caller profiles, then open a profile. Filter numbers by number, agent, and date, and click a number to see its full summary history.
- The card at the top shows the current prompt; click any row to see the exact prompt version that produced that summary.
- The down arrow opens the summary and any sent email or WhatsApp lines.
- The call ID opens the call in Call history, where a Caller profile tab shows what was attached.
Built for Real Deployments
- Share one profile across agents when they should see the same number history—for example, a sales qualifier and a support agent.
- Keep histories separate when needed: the same number can have a different history on another profile, so pick the right one on Start.
- Versioned prompts: refine what you extract without rewriting the past.
- Clear status: a profile is Active when at least one agent has it selected on Start, and Inactive when none do.
- A dedicated store: Caller Profiles sit alongside Call Results with their own prompt and history, so call-level extraction and long-term caller memory stay cleanly separated.
Real-World Business Impact
- Zero Repetitive Questions: Customers never have to restate their name, company, budget, or previous issue.
- Faster Resolution: Agents skip redundant discovery and jump straight to the next step.
- No Duplicate Follow-Ups: Agents know which emails and WhatsApp messages were already sent.
- Cleaner CRM Data: JSON summaries are ready for direct ingestion into your CRM, GATI ERP, or internal systems.
- Consistent Team Handoffs: Every agent on a shared profile, and every human reviewing call history, sees the same up-to-date context.
Feature Summary
- ✅ Per-Number History: One profile, one prompt, one history per phone number.
- ✅ Inbound & Outbound: Works on every call direction.
- ✅ Shared Across Agents: Multiple agents can use the same profile.
- ✅ Structured Summaries: Text, JSON, key / value, or list.
- ✅ Follow-Up Awareness: Records the emails and WhatsApp messages each call sent.
- ✅ Versioned Prompts: Every summary keeps the prompt that produced it.
- ✅ Available on All Plans.
Want the step-by-step setup? Read the full Caller Profiles guide.
Frequently Asked Questions (FAQ)
What are Caller Profiles in Hexta Engage?
Caller Profiles are named extraction prompts that keep a separate, structured history for every phone number. After each call, the system writes a summary in the format you choose and gives it to your AI agent the next time that number calls, on inbound and outbound calls.
Does the AI agent read old call transcripts?
No. The agent receives only the newest 3 saved summaries as background, with older calls folded into one line, plus optional lines for emails and WhatsApp messages already sent. It treats this as background and does not read it aloud unless the caller asks.
Can multiple AI agents share the same caller memory?
Yes. Several agents can use the same Caller Profile, so a sales agent and a support agent see the same history for a number. If you want separate histories, attach a different profile on the agent’s Start node.
What formats can caller summaries use?
Summaries can be text, JSON, key / value, or a list. JSON is ideal for sending structured data to a CRM or ERP. Each saved summary keeps the type and prompt version it was written with.
How do I turn on Caller Profiles for an agent?
Create a profile under Telephony → Caller profiles, then open the agent in Voice Builder, select the profile on the Start node’s Caller profile tab, set the four switches for using and writing history and call-result events, and publish.
