Sign In

Live Handoff & Inbox

Live Handoff lets a chat agent pass a conversation to a real person on your team when the visitor needs one. The agent keeps handling the easy questions; when it can't help — or the visitor asks for a human — it raises a request that lands in your Inbox, where a teammate takes over the live conversation.

Conversation inbox

See every conversation and handoff in context

Open Conversations and filter the queue

Each agent keeps its traffic in Conversations. Filter between all conversations, waiting visitors, and active handoffs.

Open the conversation you need

Choose a thread from the inbox to read the visitor’s messages and the agent’s response in context.

Overview

When human handoff is enabled, the agent gets a built-in request_human_handoff tool. The AI calls it when a visitor asks to speak to a person or when it can't resolve the request. That flips the conversation into a waiting state, notifies your team, and lets a member join the chat and reply directly to the visitor — in real time, in the same widget the visitor is already using.

The whole human side lives in the agent's Inbox tab. Handoff works for both text and voice conversations.

Why use it

  • Never strand a visitor — when the AI hits its limit, a human steps in seamlessly instead of the conversation dead-ending.
  • Context comes with it — whoever picks up sees the conversation so far, so the visitor doesn't repeat themselves.
  • Real-time — messages flow live between the visitor and your teammate; no page reloads.
  • You stay in control — handoff only happens when you've enabled it, and a teammate chooses when to join.

Enabling handoff

  1. Open the agent's Settings tab.
  2. In the Human handoff card, turn on Allow this agent to hand off to a human.
  3. Save.

With handoff enabled, the agent can transfer a conversation to your team's Inbox using the request_human_handoff tool. There's no separate "talk to a human" button in the widget — the AI raises the request itself when a visitor asks for a person or it can't help.

The conversation lifecycle

A conversation moves through these states:

StatusMeaning
AIThe AI is handling the conversation normally.
Awaiting agentThe AI has requested a human; the conversation is waiting in the Inbox.
HumanA teammate has joined and is replying to the visitor directly.
ClosedThe conversation has been ended.

The Inbox

Open an agent's Inbox tab to work handoffs. It has two lists:

  • Waiting for an agent — conversations the AI has handed off that nobody has picked up yet. Each shows the request summary, the page the visitor is on, and how long they've been waiting.
  • Active handoffs — conversations a teammate is currently handling, with the assignee's name.

When a new request arrives for an agent you're viewing, the Inbox surfaces it with a count badge, a browser notification, and a soft chime so you don't miss it.

Taking a conversation

  1. Click a conversation in Waiting for an agent.
  2. The chat opens with the prior transcript loaded above a "handoff started" divider, so you have full context.
  3. Join to take over — the conversation moves to Human and the visitor sees that a human agent has joined.
  4. Reply directly. Your messages appear live in the visitor's widget.
  5. When you're done you can hand back to the AI (returns to AI handling) or close the conversation.

Only the teammate who joined can send messages while a conversation is in the Human state.

The visitor experience

  • While the AI is handling things, the visitor chats normally.
  • When the AI requests a human, the widget reflects the change in its status (e.g. "Connecting to agent…").
  • Once a teammate joins, the visitor sees a confirmation that a human has joined and any AI replies stop — their messages now go to the person.
  • During a human handoff, the voice microphone is hidden; the visitor continues in text.
  • On a phone call, a handoff behaves differently: if the number has a transfer number set, the caller is transferred to it. If not, the agent raises the handoff here for your team to follow up — it cannot put a caller through to the Inbox.
  • When the conversation is closed, the visitor sees a closing notice.

Requirements & notes

  • Handoff is off by default; enable it per agent in Settings.
  • Picking up handoffs requires being signed in to the dashboard as a member of the organization that owns the agent.
  • Handoff works for conversations started in either text or voice.
  • The pre-handoff transcript shown to your team is the conversation history captured for that conversation.

Best Practices

  • Tell the agent when to escalate. In the system prompt, describe the situations where it should hand off (billing disputes, anything it's unsure about, explicit requests for a person).
  • Keep the Inbox open when on duty. Notifications and the chime only help if someone is watching.
  • Hand back when resolved. Returning a conversation to the AI frees your team and lets the agent handle follow-ups.

Troubleshooting

IssueWhat to check
Agent never hands offConfirm Human handoff is enabled, and that the system prompt tells the agent when to escalate.
Inbox won't loadYou must be signed in as a member of the agent's organization.
Visitor's messages aren't reaching meMake sure you've Joined the conversation (status Human); only the assignee can reply.
No notification on new requestsAllow browser notifications for the dashboard; the in-tab chime and count badge still work.

Next Steps

  • Chat Agents — build the agent and enable handoff.
  • Voice Assistant — handoff works for voice too.
  • Phone Calls — on a phone call, a handoff can transfer the caller to a real number instead.