Skip to main content
This page is for the technically curious. It describes the shape of the system without naming the vendors underneath it, which change.

One brain, many doors

Every channel is a transport. None of them contains the agent.
An adapter does three things: verify the message is genuinely from the channel, resolve which workspace and which customer it belongs to, and hand a normalised message to the agent. Everything after that is identical no matter how the customer reached you. This is why a caller who later sends a WhatsApp message continues one conversation. Identity is keyed on the person, not the channel.

State comes before the turn

Before the agent handles the first message, it assembles that customer’s state: who they are, what happened in previous conversations, their open bookings and cases, and what your CRM knows about them. This runs once when the conversation opens, is cached, and reaches every turn including the first one. The agent is stateful by construction rather than by prompt engineering. It is not re-reading a transcript each turn and hoping the relevant part survived the context window. Past conversations are distilled into summaries and atomic facts, each carrying provenance and a supersession history, and anything deeper is fetched by semantic recall only when the conversation actually needs it.

Memory and state

The identity spine, the four layers of assembled state, memory facts and provenance, and the recall tools.

Inside a turn

1

Route

The agent classifies what the customer wants. Common, unambiguous intents resolve without a model call at all, which is most of the latency saving on the voice path.
2

Pick a sub-agent

Qualification, knowledge lookup, booking, or handoff. Each one has a narrower prompt and a smaller tool set than a single general agent would, which makes behaviour easier to constrain.
3

Call tools

Tools are the only way the agent touches anything real: your knowledge base, your calendar, your CRM, your team. The agent cannot invent a booking; it has to call the tool, and the tool checks availability.
4

Grade the reply

Before the customer hears or reads it, the reply is checked against what the tools actually returned. A claim about a price, an opening time or a contact detail that no tool supports is caught here. See Guardrails.
5

Persist and fan out

The turn is written to the transcript, the lead or booking is mirrored to your CRM, and any webhooks or trigger rules watching that event fire.

Voice is different in one respect

Text channels can wait a beat. A phone call cannot, so the voice path is built around not making the caller wait:
  • Speech is transcribed continuously, and the agent starts working before the caller has finished a sentence where it can safely do so.
  • Frequently needed context (your catalog, hours, the caller’s history) is warmed at call start rather than fetched mid-turn.
  • Turns that need a tool acknowledge naturally while the tool runs, instead of going silent.
Current shape on a healthy call: under a second on a normal turn, under two seconds on a turn that has to call a tool, measured from the end of the caller’s speech to the start of the substantive answer.
Latency numbers depend on what you measure. The figures above are turn start to substantive answer audio. A stopwatch held against mouth-to-ear will also include the endpointing window that decides the caller has stopped talking.

What runs where

Background work is queued rather than done inside the customer’s turn. A CRM outage slows the mirror, it does not stall the conversation.

Tenancy and isolation

Every workspace is isolated at the database level, not by a filter in application code. Queries run under a role that can only see rows belonging to the current workspace. Operator-side views that deliberately cross workspaces run as a different, audited role. See Security overview.

Where the data ends up

Your CRM is the destination, not Vorel. Conversations, leads, bookings and customer records mirror into your CRM, and the Vorel-side copies are retained on a fixed schedule and then purged. See Data retention for the per-class windows.

Channels

What each channel supports and where they differ.

The agent

Routing, sub-agents and the tool surface.

Automation

Acting on events without a human in the loop.

Security

Isolation, encryption and audit.