The unsung complication of building an AI agent that listens on six channels is identity. The user sending an SMS at 11pm and the user asking Alexa a question at 7am have to be recognized as the same person. The conversation needs to flow continuously. The memory has to be shared. The skills the agent learned from one channel have to apply on another. Done badly, the agent feels like six different products. Done well, it feels like one assistant that happens to be reachable everywhere.
This post is how identity continuity works in Ajeris, what it enables in daily use, and what is genuinely hard about it (because it is not trivial).
What "identity" means here
Three distinct concepts that have to be tied together.
Channel identity. Who you are on a specific channel. Your phone number on SMS and WhatsApp. Your Telegram chat ID. Your Alexa user ID. Your Gmail account.
Account identity. The Ajeris user that owns those channel identities. One account; many channels.
Per-conversation context. The current conversation, regardless of channel. The most recent turns, who you are talking to (you alone, you + a colleague in a 3-way thread, the agent only).
The work of continuity is keeping these three layers consistent. When you send a message on WhatsApp, the agent has to map your WhatsApp number to your Ajeris account, load the right memory, load the right skills, and respond with the right voice. The mapping is invisible to you; it is a few hundred lines of code and a database lookup.

What this enables in daily use
Three concrete scenarios.
Scenario 1: The morning Alexa, the afternoon SMS, the evening laptop.
7:14 AM (Alexa, in your kitchen)
You: what's on today
Alexa: [agent reads back the morning brief, voice]
10:42 AM (SMS, on your phone)
You: send sara the deck we talked about
Agent: which deck - the H2 OKR draft or the launch
narrative? You and Sara discussed both yesterday.
You: launch narrative
Agent: Sent. CC'd you.
3:18 PM (browser, on your laptop)
You: how did sara respond to the launch narrative
Agent: She replied at 11:34am. Three notes:
1. The metrics page needs the Q4 numbers.
2. The CTA on slide 8 is too soft.
3. She'd like to walk through it Friday.
Want me to draft a reply?The same conversation across three surfaces. The agent's memory of "the launch narrative" was loaded on each surface, regardless of where the user was. The user did not have to re-introduce the topic at any point.
Scenario 2: The phone call mid-day.
1:45 PM (a phone call to your business number)
[caller]: yes, my name is Mrs. Henderson, you serviced
my AC last spring
[Maya, in your voice]: Hi Mrs. Henderson! How can I help?
[Maya pulls Mrs. Henderson's customer record from
the call. Records the call as a continuation of the
existing customer thread.]
3:50 PM (SMS, to you)
Agent: Mrs. Henderson called at 1:45pm. She has a
capacitor concern, second time in 18 months.
I booked Tom for Thursday at 11. Want me to
email her the warranty details?The voice receptionist's identity work is even harder than the personal-channel version. The customer is not an Ajeris user; they are a customer of the user. The agent has to recognize the customer by phone number, load the customer record, and continue the customer thread. This is the customer-memory layer doing its job through identity.
Scenario 3: The friend's phone.
8:14 PM (SMS from someone else's phone)
[Friend]: hey, this is Karim, K let me borrow her phone
for a sec to ask if you have a recipe for that
red beans dish you make
You: [via the agent]: hi Karim! sure, K's notes app
should have the family version, but here's mine
...
[The agent recognizes that the message is not from K
based on phrasing + content. It does not load K's
private memories for the response. The agent's reply
is general (the recipe), not personal (skipping any
context K would have but Karim should not.)]This is the failure case the agent is designed to handle. A misidentified user (someone holding K's phone) should not get K's full memory dump. The agent's safety here is a "is this the user we expect" check; on ambiguous cases the agent is conservative.
How the mapping actually works
Three layers, in order of authority.
- 1Phone-number-as-anchorYour E.164 phone number is the primary key for SMS, WhatsApp, voice. Same number = same Ajeris account.
- 2OAuth account linksTelegram, Alexa, email link to Ajeris during their respective OAuth flows. Mapped per-user.
- 3Behaviour signalsEdge cases (someone borrows your phone, voice clones, identity ambiguity) flagged and handled conservatively.
The phone number is the most durable anchor in 2026 consumer technology. Most people keep their phone number for years, even decades. Most multi-channel identity products use it as the primary key for the same reason. The OAuth-linked channels (Telegram, Alexa, email) are bound at first link.
What is hard about this
Three honest sources of difficulty.
Channel-specific quirks. Each channel has its own identifier shape, its own auth flow, its own rate limits. WhatsApp's E.164 is consistent; Telegram's chat_id is per-bot; Alexa's user ID is per-skill; email is per-address. Mapping all of them to one Ajeris account is per-channel engineering, ongoing as new channels ship.
Multiple channels per user. Some users have three different email addresses they use with the agent. Some have two phones (work + personal). The mapping is many-to-one, not one-to-one. The agent has to know which work-email vs personal-email to use depending on context.
Identity drift. Phone numbers change (rare but real). New email addresses get added. People migrate Alexa accounts when they move. The agent has to handle these transitions cleanly without dropping memory.
Adversarial cases. Someone gets your phone. Someone clones your voice. Someone signs into your Alexa account. The agent's identity-continuity assumes it is talking to you; the safety layer is what catches when it is not. We are continuously tuning the conservatism dial.
- Six different agents, six different memories.
- Re-introduce every topic on every surface.
- Skills learned on one channel do not transfer.
- Voice receptionist is a separate product from your personal agent.
- One agent. One memory. One voice.
- Topics carry across surfaces seamlessly.
- Skills apply on every channel.
- Personal + business + family agents share the right context.
What you do not have to think about
Three things continuity makes invisible.
You do not pick which channel to use for a given question; you use whichever is most convenient and the agent picks up. You do not re-explain context when switching channels. You do not maintain six different settings for six different surfaces.
The result is that the channel choice fades from the user's mental load. You are not picking "should I use Alexa for this or my phone"; you are just talking, and the agent finds you wherever you are.
Frequently asked
What if I change my phone number?
Can two people share an Ajeris account?
What if a family member uses my phone briefly?
Can I have separate work and personal agents?
Does the same identity work for the voice receptionist (business) too?
Try it
Send a message on SMS. Continue it on Alexa. Reference it on WhatsApp. The continuity is the test.


