This is the area the rest of the lab points at. A business should not need separate AI systems for phone, website, chat and messaging - but the reason that is hard is not the channel adapters. It is everything the adapters would have to share. The architecture below is the one implemented by bitpull.ai, which is what keeps this from being a whiteboard exercise.
One agent definition - instructions, tools, guardrails
The adapter boundary
An adapter owns exactly four things: transport, the timing model of its channel, the output affordances it can express, and the identity evidence it can report. That list is complete, and the discipline is in keeping it complete. The moment a business rule appears inside an adapter, the channels begin to diverge - quietly, because nobody tests the phone answer against the chat answer.
The agent produces one reply; adapters render it. A phone adapter speaks it and discards the attachment; a chat adapter shows the attachment as a card. What an adapter must never do is ask for a different answer.
Identity is the actual research problem
Sharing knowledge, tools and guardrails across channels is straightforward. Sharing *memory* requires deciding that two conversations belong to the same person, and the evidence for that is much weaker than product discussions assume. A caller ID is a hint, not a login: numbers are spoofed, phones are shared, businesses call from a switchboard.
| Channel | Evidence | Strength |
|---|---|---|
| Authenticated web session | Login | Strong |
| Verified callback | We dialled a stored number | Good |
| Messaging | Account handle | Moderate |
| Inbound call | Caller ID | Weak |
| Web widget | Cookie / device | Weak |
Below a confidence threshold the agent may ask whether this is about Monday's enquiry once given a reason to - but it may never open by reciting what it remembers. Confident recall from an unauthenticated channel reads as surveillance even when it is correct, and callers are measurably more forgiving of a verifying question than of an agent that knows too much.
Memory tiers and where they live
- Turn state - never crosses a channel boundary; dies with the session.
- Episode summary - shared, but only above the identity-confidence threshold.
- Durable facts - held in the system of record and read through a tool, never in an agent-private store.
The third rule is the one that pays off later: when a customer exercises a deletion right there is exactly one place to delete from. It is close to impossible to retrofit.
Consistency testing
The characteristic failure of a multi-channel system is silent divergence: the phone agent and the chat agent start giving different answers, and nobody notices until a customer says so. The defence is mechanical - run a fixed question set through every adapter on a schedule and diff the answers. Differences in phrasing are fine; differences in fact are a build failure, and encoding that distinction in an automated check is the real engineering.
Open questions
- How should identity confidence be calibrated rather than hand-set - and should the thresholds differ by industry, as they almost certainly should?
- What does consent for cross-channel recall look like as a first-class piece of evidence, not a checkbox?
- How do you keep an asynchronous channel's stale context from being applied confidently when a thread resumes?