Context & memory

The customer never repeats themselves.

Every FormantAI agent opens a call knowing what was said, promised and asked for last time — on the phone, on WhatsApp, at the branch — and can show you where each remembered fact came from.

A voice agent with no memory is a stranger on every call. A voice agent with ungoverned memory is a liability on every call. We built the forgetting before we built the remembering.

Four tiers

Turn. Call. Customer. Portfolio.

Each tier remembers a different thing for a different length of time, and each has its own rule for what gets written, how long it stays, and how it is erased.

Turn

Inside one call

Holds
What was said thirty seconds ago: the amount already read out, the objection just raised, the language the customer switched to.
Retention
Cleared when the call ends. Never written to a store.
Forget
Nothing to forget.
Call

What was said and promised

Holds
Redacted transcript, disposition, promise-to-pay date and channel, the turn-level checks, the grade.
Retention
Per journey window, set by your compliance owner — collections and renewals each keep their own clock. e.g. collections 180 days
Forget
Deleted on request; the grade survives with no identifiers.
Customer

Across calls and channels

Holds
Name pronunciation, preferred time and channel, the WhatsApp thread, the branch visit, the callback they asked for — each fact with its source and date.
Retention
While the relationship is active, then the journey window. Facts expire individually.
Forget
One request erases the record and its provenance trail, under DPDP. e.g. within 72 hours
Portfolio

What the cycle extracts

Holds
Patterns, never people: salary-delay phrasings, which bucket answers after 6 pm, which Tamil objection needs a shorter reply.
Retention
Lives in the model and the release notes of the weekly cycle.
Forget
Contains no individual, so a forget request leaves it untouched — by construction, not by promise.
The first second of a call

Recalled, with receipts.

Before the greeting is spoken, the agent has the promise the customer made on the last call, the channel they asked for on WhatsApp, the callback they requested at the branch, and today's due amount from your LMS. Every fact carries its source and timestamp, so your QA team can audit what the agent "knew" the way they audit what it said.

And it opens the call like a colleague, not a database: it does not say "as you told us on the twelfth." It simply does not ask again.

Memory trace · call start · collections-hi
00:00.2recall · identitySunil ji · pronounced su-NEEL · said on 12 Sep call · 00:41
00:00.2recall · promisePTP Fri 18 Sep · missed · said on 12 Sep call · 02:10
00:00.3recall · channelprefers WhatsApp, not SMS · WhatsApp · 14 Sep
00:00.3recall · callbackasked for after 6 pm · branch visit · CRM · 15 Sep
00:00.4recall · amount₹4,850 · LMS · due_amount · synced 08:00 today
00:00.4recall · bucketDPD 1–30 · first-time late · LMS · dpd_bucket
00:00.5not recalledaadhaar · pan · card → redacted before storage
00:00.5retentioncall memory · collections · 180 d · expires 11 Mar
00:00.6openingskip re-verify of preference · never say "as I told you"

Illustrative recall trace for one outbound call. replace with a live call's memory trace

On a time axis

Short memory inside long memory.

Turns live inside a call. Calls, messages and visits live inside a customer. Customers dissolve into a portfolio that keeps the lesson and drops the person.

Memory tiers · one customer · 12 → 19 Sep
PORTFOLIOCUSTOMERCALLTURN de-identified patterns only · no names, no numbers one customer · calls + WhatsApp + branch · provenance on every fact 12 Sep call 19 Sep call cleared when the call ends WhatsApp14 Sep branch15 Sep 12 SEPTODAY · 19 SEPTIME →
Redact first

Aadhaar, PAN, card, OTP and account numbers are masked in audio and text before anything is written. The memory store never holds them, so it can never leak them.

Retain per journey

Retention windows are set per journey by your compliance owner, not by us. Collections, renewals and KYC each keep their own clock; facts expire individually.

Forget on request

A DPDP erasure request removes the customer record, its call records and the provenance trail, and returns a signed receipt to your audit store.

Provenance always

No fact without a source. "Said on 12 Sep call, 00:41." "WhatsApp, 14 Sep." "LMS, due_amount." A remembered fact the agent cannot cite is a fact it is not allowed to use.

Memory policy · explain and forget
$ formant memory --explain --customer ████ --journey collections-hi
6 facts recalled · 6 with provenance · 0 without
redaction: aadhaar · pan · card · otp masked before write · audio and text
retention: call 180 d · customer active + 180 d · portfolio de-identified
access: this agent reads due_amount, dpd_bucket · never credit_score (policy coll-b1)
$ formant memory --forget --customer ████ --reason dpdp_request
customer memory erased · 2 call records erased · grades kept, de-identified
receipt signed · logged to your audit store · nothing to erase in portfolio

Illustrative. replace with a live memory trace

Governed memory

Memory is a permission, not a feature.

What the agent may remember is a governance decision, made once by your risk team and enforced on every write. The same policy that says this agent reads due_amount and never the credit score also says what it may carry from one call to the next — and the learner may never widen it.

Memory lives in your tenant, in your region, alongside the recordings. Nothing crosses to another customer, another journey, or a shared model.

What it changes on the call

Four things the customer stops hearing.

Promise

"When can you pay?"

The agent already knows the customer promised Friday and missed it. The call starts from the promise, not from zero — in the tone the DPD bucket allows.

Channel

"Link ya branch?"

They said WhatsApp on 14 September. The link goes to WhatsApp. The question is never asked twice — across calls, not just within one.

Time

"Kab call karein?"

They asked for after 6 pm at the branch. The dialler honours it inside RBI Fair Practices calling hours, and the agent does not ask again.

Name

"Sunil ya Suneel?"

Pronunciation learned once, on the first call, and kept — in Hindi, Hinglish or Tamil. Graded for it by the evaluation model.

FAQ

What your risk team will ask.

What exactly is stored, and where?
Redacted transcripts, dispositions, promises and a small set of governed customer facts, each with source and timestamp — in your tenant, in the region you choose, next to the recordings. Aadhaar, PAN, card and OTP values are masked before the write, in audio and in text.
How do we handle a DPDP erasure request?
One request erases the customer record, the linked call records and the provenance trail, and returns a signed receipt to your audit store. Call grades survive with no identifiers; portfolio memory contains no individual to erase.
Can the agent remember something it should not?
It can only write what the memory policy allows, and it can only use a fact it can cite. A recalled fact without provenance is blocked at the turn check, like an invented amount would be. The learner cannot widen the memory policy — that is a governance change, signed by a named owner.
Who sets the retention windows?
Your compliance owner, per journey. We ship defaults for collections, renewals and KYC as a starting point; the windows you set are enforced on every write and reported in the daily audit.
Under NDA

See one call's memory trace.

See a memory trace
Readiness

Know what your calls already remember

Get a Call Readiness report