Live Operator Mode
Live Operator Mode lets human team members handle conversations in real time. When enabled, operators can "go live" on specific workflows, receive routed interactions, chat with members, and hand off to AI when they're done.
This is useful when you need a human in the loop — for escalations, sensitive conversations, training scenarios, or quality assurance.
Prerequisites
- The Operators feature must be enabled for your workspace (contact your account admin)
- Team members need the
operator:writescope on their role to access operator features - At least one workflow must be configured for live routing
Key Concepts
Operator Groups
Operator groups organize your human operators and connect them to workflows. Each group has:
- Name and optional description
- Assigned workflows — which workflows this group handles
- Members — which team members belong to this group
A team member can belong to multiple operator groups, giving them access to handle interactions across several workflows.
Going Live
When an operator "goes live," they signal they're available to handle interactions. The system tracks their presence in real time via WebSocket.
- Navigate to Operator → Go Live
- Select which workflows you want to handle (only workflows from your operator groups appear)
- Click Go Live — you're now visible to the routing system
While live, you'll see:
- Incoming interactions routed to you based on workflow and availability
- Active sessions you're currently handling
- Member details for whoever you're talking to
Interaction Routing
When a new interaction arrives on a workflow configured for live routing:
- The system checks for live operators who handle that workflow
- If an operator is available, the interaction is routed to them
- The operator sees the incoming interaction and can accept it
- If no operators are live, the AI handles the interaction as usual
Operator Sessions
Each interaction an operator handles creates a session. Within a session you can:
- Read the conversation history — see what the AI and member discussed before handoff
- Send messages directly to the member
- View member details — contact info, labels, data records
- Execute workflow tools — run the same tools available to the AI (data lookups, calendar booking, etc.). On text sessions, tool activity appears in chat history after refresh. On live voice sessions (
session-ws), tool calls must be published asTOOL_CALL_*AGUI events on the chat stream to appear in the live transcript — see GRA-3986 for the enrollment demo and operator voice path. - Complete or transfer the session when done
Setting Up Operator Groups
Create a Group
- Go to Members → Operators
- Click Create Operator Group
- Enter a name and optional description
- Save the group
Add Members
- Open the operator group
- Click Add Member
- Select team members from the list (they must have the
operator:writescope)
Assign Workflows
Workflows are associated with operator groups during group configuration. Only workflows assigned to your groups will appear when you go live.
Permissions
| Action | Required Scope |
|---|---|
| View operator groups | operator:read |
| Create/edit/delete operator groups | operator:write |
| Add/remove group members | operator:write |
| Go live and handle interactions | operator:write |
Live Presence
The presence system tracks which operators are currently live and on which workflows. This enables:
- Real-time routing — interactions go to available operators instantly
- Dashboard visibility — admins can see who's live and what they're handling
- Automatic cleanup — if an operator disconnects (closes browser, loses connection), their presence is cleared after a timeout
Presence requires the Live Presence feature flag (presence), which depends on the Operators feature flag (operator). Both must be enabled for live routing to work.
Voice Sessions
When an interaction arrives on a voice channel and you accept it as a live operator, your browser connects to the workspace's phone infrastructure and you can speak directly with the member over PSTN.
Placing an Outbound Call
From within an active operator session you can also dial out to a member:
- Open the session and locate the member's phone number
- Click Call — the system places a Twilio-backed outbound call using the workspace phone number as caller ID
- Once the call connects you hear the member through your browser; they see the workspace number on their caller ID
If your workspace has no phone number configured, the call is refused immediately with a call_failed error. Unbillable PSTN legs are never placed — a workspace phone number is required for any outbound dial.
Billing and Usage
Every outbound call creates a billing record before the Twilio call is placed. Operator voice calls:
- Appear in the workspace Calls list alongside AI-handled calls
- Deduct voice credits per minute at the same rate as AI calls (per the telephony rate card)
- Credit deduction is idempotent per Twilio CallSid, so retried status callbacks do not double-charge
Twilio-side costs for the call are outbound voice per minute plus the Media Streams per-minute fee for the audio bridge — the same cost shape as an AI phone call, minus AI inference.
Call Recording
When the workspace Record Calls setting (enable_audio_recording) is turned on, operator outbound calls are recorded automatically:
- Both directions are captured — the operator's microphone and the callee's phone audio
- Recordings are stored in the same S3/DynamoDB store used for AI call recordings, keyed by chat
- Recordings play back through the standard chat recording player at
GET /recordings/chat/{chat_id}/audio.wav
If Record Calls is off, no audio is stored.
Tips
- Start with a single workflow — get comfortable with live handling before expanding
- Use operator groups to specialize — create groups like "Billing Support" or "Clinical Intake" with members who have the right expertise
- AI handles the gap — when no operators are live, the AI continues handling interactions normally, so there's no downtime
- Test with chat scenarios — use qualification chat scenarios to train operators before they go live on real workflows
Related
- Qualifications — Verify operators are ready before they go live
- Workflows — Build the conversation flows that operators handle
- Chats — View and manage operator conversation history