Skip to main content
Live Chat Handoff

Your bot answers the routine questions. Your team takes over when a visitor asks.

AI handles routine questions at scale. When a website visitor wants a person, they tap Talk to a human and the conversation flows from bot to your team inside the same thread, with the full transcript already loaded, no “let me get up to speed” from your agent. Live chat handoff is off by default; switch it on for each bot that should offer it. The handoff is the product.

Bot → Waiting → Assigned → Resolved · All in one thread

Inbox

Live conversations

3 waiting2 mine
Waiting3
Mine2
Resolved
WIDGET
ASKED FOR HUMAN47s

Visitor (Widget)

Visitor requested to speak with a team member

WIDGET
ASKED FOR HUMAN2m 13s

Visitor (Widget)

"What about for orders over £200 that ship to Spain?"

WIDGET
ASKED FOR HUMAN4m 28s

Visitor (Widget)

"is anyone there?"

Live · auto-refresh🔔 Desktop notifications on
Jump to section

01

The questions AI shouldn’t answer on its own

The bot has been answering well. A new question comes in — one where the right answer depends on judgment, on context the bot doesn’t have, or where the customer just wants to talk to a real person. On most AI-only chat tools, that’s the moment the experience falls apart: there is no way to reach a person, the bot keeps offering canned suggestions, and the customer closes the tab.

NebulaHex is built differently. Some questions belong to AI. Some belong to your team, and the visitor decides which: once you switch on live chat handoff (it is off by default), one tap on Talk to a human in your website widget brings your team in — quickly, with full context, inside one continuous conversation. The headline number most deflection tools brag about — “we deflected X% of tickets” — only tells half the story. What matters at least as much is what happens to the rest. If they reach your team smoothly, you have a real support system. If they fall through the cracks, you have a leaky funnel dressed up as a feature.

02

The handoff is the product

The escalation flow on NebulaHex has one job: get a human onto the conversation, with full context, before the customer disengages. Everything else — the inbox UI, the notifications, the routing to Slack or your helpdesk — is in service of that one job.

When a conversation gets escalated, three things happen in parallel. The conversation is marked as waiting for human attention and surfaces in your team’s live inbox. Notifications fire to whichever destinations you’ve connected — Slack channels, helpdesk tickets, custom webhooks. And the bot stops responding on that thread, so the next message the customer sees is from your team, not another AI attempt that misses the point.

AI handles the volume. Your team handles the questions visitors bring to them. The bot resumes automatically the second the human work is done. That’s the whole loop — and most tools in this space have never been designed to do it cleanly.

03

How an escalation starts

There is exactly one path into the inbox queue, and one moment that looks like a path but isn’t. Knowing both is useful because they shape how you tune your bot.

ASKED FOR HUMAN

The customer requests a human

The visitor taps Talk to a human in your website widget. The button shows only on a bot with live chat handoff switched on, and it is off by default. Typing “I want to talk to a person” doesn’t start an escalation; the tap does.

Honor it immediately. Nothing damages trust faster than a bot that refuses to step aside when asked. One tap moves the conversation to your inbox, with nothing to type, and the visitor can cancel the request while they wait.
NO ANSWER

When the bot can’t answer

When your knowledge doesn’t cover a question, the bot says so rather than guess. It never escalates on its own: no confidence score, topic or tone moves a conversation into your inbox. The miss is recorded as a fallback event instead, which Zendesk can turn into a ticket tagged knowledge-gap when you switch on tickets for unanswered questions, and which Slack can post to a channel.

This is a knowledge-base signal. The questions the bot can’t answer are exactly the questions your knowledge base doesn’t cover yet — a new product feature, a policy edge case, a question your help center never anticipated. Each one is a candidate article.

Only the first lands in your inbox. The second keeps the conversation with the bot and can leave you a record of what your knowledge base is missing.

04

The unified inbox

The inbox is where your team lives during support hours. It’s a single page in the NebulaHex dashboard, designed to look and behave like a chat client your agents already know how to use, not like a configuration screen they have to learn.

The page is split into two panels: a queue of conversations on the left, the active conversation on the right. Six things are worth knowing about it.

🗂️

Three tabs, one queue

Waiting (needs an agent now), Mine (conversations you’ve taken over), Resolved (recent history). Switch between them in one click.

🏷️

Channel badges on every row

Widget or Preview, so you can tell a website visitor from a teammate testing your bot in the dashboard preview. Live chat handoff is a website-widget feature: WhatsApp, Instagram, Messenger, and Telegram conversations stay with the bot and never reach this queue.

⏱️

A timeout that hands back

If nobody takes over a waiting conversation within the bot’s escalation timeout (10 minutes by default), the bot takes it back and sends your fallback message. The visitor can also cancel the request from the widget.

🔄

Live polling, no refresh needed

New waiting conversations appear within seconds. Soft notification sound. Desktop notification (with browser permission). Sidebar badge count updates everywhere in the dashboard.

👋

Take Over in one click

Claim the thread. Bot stops responding on that thread immediately. No race conditions where the customer’s next message gets answered by both the bot and the agent.

📱

Mobile and tablet friendly

Two-panel collapses into a single scrollable view that swaps between queue and active conversation. Your team isn’t stuck at a desk to staff the inbox.

Every team member appears in the inbox under a display name your team controls, so what the customer sees matches your brand voice rather than internal handles. The default agent name and per-bot escalation copy are configurable from each bot’s escalation settings.

05

Taking over a conversation

Taking over a conversation is one click. The Take Over button on a Waiting row claims the thread for the signed-in agent. The conversation moves out of Waiting and into Mine. The bot stops responding on that thread immediately — there is no race condition where the customer’s next message gets answered by both the bot and the agent.

1

Click Take Over

On any row in the Waiting tab, click the Take Over button. The conversation moves out of Waiting and into your Mine tab. The bot stops responding on that thread immediately.

2

Read the full transcript

Above the message input, you see every message the customer sent, every message the bot replied with, and the confidence signals on each one. Nothing has been summarized. You read exactly what the customer wrote.

3

Type and send as your team

The message input becomes active. You type. The message lands in the website widget the visitor is chatting in, labeled as coming from your team. The customer sees an answer arrive from a person.

The transcript above the input is your context. Every previous turn is visible: what the customer asked, what the bot tried, where the bot got stuck or what the customer pushed back on. Nothing has been summarized or paraphrased. You read the same words the customer wrote and decide what to say next based on the actual conversation, not a synopsis of it.

06

Handing back to the bot

Most live conversations end with the agent solving the customer’s problem and saying goodbye. One click marks the conversation resolved. Three things happen.

The conversation moves to the Resolved tab and stops appearing in the active queue. The bot resumes — meaning that if the customer comes back to the same session and asks another question, the bot answers. And the conversation stays in the Resolved tab for a day, so your team can look back at what it handled.

Why this matters. AI-first support only works if your agents aren’t permanently tied up. A team of three agents who each have ten “active” threads from last Tuesday doesn’t have capacity for today’s escalations. Resolving conversations is what keeps the queue moving. The bot is the front door; your team is the room behind the door. If nobody ever leaves the room, you’ve recreated the problem the bot was supposed to solve.

07

Where escalations land beyond the inbox

The NebulaHex inbox is the primary surface for handling live conversations, but it’s not the only place an escalation shows up. Many teams already have a support workflow that lives in another tool. NebulaHex meets that workflow where it is.

Slack

When a conversation escalates, a message lands in your chosen Slack channel with the customer’s question, a link to the conversation in your inbox, and a one-click button to claim it. Teams that triage in Slack first — “who’s free to grab this one?” — like the model.

See Slack integration →

Zendesk

Escalations create Zendesk tickets automatically. The first comment is an internal note with the customer’s last message and a link to the conversation; no requester is named, the priority is a default you set, and your custom tags are added. Your agents handle escalations inside Zendesk the same way they handle every other ticket.

See Zendesk integration →

Freshdesk

Freshdesk does not open escalation tickets today: its connection subscribes to no events, so escalations stay in your NebulaHex inbox and any other destination you connect. What runs is the bot’s Freshdesk lookups during a chat — a ticket, its thread, a contact and your help articles.

See Freshdesk integration →

Custom webhooks

If your team uses a tool we haven’t built a native integration for — an internal CRM, a different ticketing system, a workflow engine — subscribe a webhook endpoint to escalation events and receive every escalation as a JSON payload. The signature is HMAC-signed so you can verify the request came from NebulaHex.

You don’t have to choose one. A common configuration is “Slack ping for visibility, Zendesk ticket for the queue of record, NebulaHex inbox for the live reply.” All three fire on the same escalation. The customer’s experience doesn’t change — they’re still chatting in the same widget — but every team that needs to know is notified, and the official record of the ticket lives where your agents already track work.

08

Use cases your team will recognize

🛒

An e-commerce store running AI-first support

The bot is connected to your Shopify store and can answer “where is my order,” “do you ship to Canada,” “what’s your return window” without help. With live chat handoff switched on (it is off by default), your two support agents only see the conversations where a customer tapped Talk to a human: an angry customer whose order arrived broken, a chargeback question, a B2B account asking about a custom invoice. Each one lands in the inbox with a Slack ping and a Zendesk ticket. Effective capacity grows without hiring.

🌍

A SaaS company with a global customer base

The bot answers product and billing questions from your knowledge content, around the clock. With live chat handoff switched on (it is off by default), a customer who taps Talk to a human at 3 a.m. local time sees the waiting message you wrote, which can say when your team is next online. If nobody picks the conversation up within the escalation timeout (10 minutes by default, 60 at most), the bot takes it back and sends your fallback message.

📋

A support team running a knowledge audit

For one week, treat every question the bot could not answer as a knowledge-base bug. These never escalate on their own, so catch them where the fallback event lands: switch on tickets for unanswered questions in Zendesk, or let Slack post each one to a channel. At the end of the week, read the list. Most teams discover that the same handful of topics account for the majority of misses. Three afternoons of writing later, those topics are in the knowledge base. The next week, the bot answers them directly.

👤

A solo founder doing support themselves

You built a bot for your indie SaaS, configured the widget, pointed it at your docs, and switched on live chat handoff, which is off by default. The bot handles product questions. Keep the inbox open in a browser tab, and when a customer taps Talk to a human, a desktop notification fires and you jump in. You reply from the inbox, resolve the conversation, and go back to building. The line between “support is a full-time job” and “support is a notification I respond to a few times a day” is exactly this kind of escalation flow.

09

Trust & privacy

Connections to Slack, Zendesk, and other helpdesks use OAuth, and Freshdesk connects with an API key you paste, so NebulaHex never sees your password for any of those tools. Stored credentials are encrypted at rest and in transit. You can disconnect any integration at any time from the same card you connected it on; once disconnected, the bot stops calling that tool immediately and the credentials are removed from our side.

Inside NebulaHex, role-based access controls who can see and use the inbox. Owners and admins configure which destinations escalations route to. Members can take over and reply to conversations. Viewers see the queue but cannot open a thread, so managers spot-checking conversations and new agents shadowing before they’re given reply rights both need Member.

Conversation transcripts are stored so your team can review them and so the bot has context for follow-up questions. They are not used to train AI models. See our privacy policy and terms for the full posture.

10

Get the safety net under your AI in minutes

You don’t have to choose between AI deflection and human support. NebulaHex gives you both, and the handoff between them is built so cleanly that your customers won’t see the seam.

AI does the easy work. Your team does the work that matters.

Switch on live chat handoff for your bot; it is off by default. The first time a customer taps Talk to a human, your team sees it waiting in the inbox, takes over the conversation in one click, and resolves it without the customer ever feeling like they hit a wall. That’s the whole point.