AI agent assist Planned
Agent assist sits inside the dashboard, drafting replies, classifying intent, summarising long threads, and surfacing the KB chunk that answers the question. The agent stays in control; AI suggests, the human ships.
This is the surface most teams adopt first. The blast radius is small (AI never sends a message without the agent clicking Send) and the time savings show up in week one.
What lives inside the dashboard
Four primary surfaces, each accessible by keyboard shortcut and by button. Every output is grounded in the conversation context, the visitor record, and the knowledge base.
Reply drafts
Press Cmd D to generate a draft reply. The model reads the conversation, retrieves relevant KB chunks, and produces a reply in your configured tone. The agent edits and sends, or rejects.
Conversation summary
On long threads, a one-paragraph summary appears at the top: who, what, where in the workflow. Updated automatically as the conversation grows. Used at handoff (when a conversation is transferred), agents read the summary instead of scrolling.
Intent classification
Every inbound message is auto-classified into your intent taxonomy: billing, technical issue, feature request, complaint, sales, etc. The classification drives routing (we can route by intent), reporting (we surface trends), and proactive suggestions (the agent sees relevant macros).
KB suggestions
The right rail shows the top three KB chunks relevant to the current message. One click inserts the snippet into the draft. Citations stay attached so the agent (and the auditor) can verify where an answer came from.
Programmatic access
Everything in the dashboard is also exposed via REST. Useful for embedding agent assist into your own custom inbox UI or a third-party CRM.
// The dashboard requests a draft via the API; you can also call this server-side.
POST /api/v1/ai/draft-reply
{
"conversationId": "uuid",
"tone": "concise" // concise | friendly | formal
}
// Response
{
"draft": "Hi Alice, thanks for reaching out...",
"citations": [
{ "url": "https://acme.com/help/cancel", "title": "Cancelling your subscription" }
],
"engagementId": "uuid"
}Tone calibration
The model writes in one of three tones by default: concise, friendly, formal. For brand-sensitive customers we offer a per-workspace style guide: paste a hundred of your existing replies, we calibrate the tone with few-shot examples in the system prompt. No fine-tuning needed; the open-weights base model is strong enough.
Where agent assist stops
Agent assist never sends a message without the agent clicking Send. It also never:
- Calls write-scoped tools without the agent confirming.
- Decides on refunds, cancellations, or any policy questions on its own.
- Marks conversations as solved on the agent's behalf.
For autonomous handling, see AI receptionist (phones) or the autonomous chat mode (off by default).
Audit trail
Every AI suggestion is recorded in the conversation timeline as an internal_note message, attributed to the AI engagement. Audit logs capture which suggestions were used, edited, or rejected, so you can measure helpfulness over time.
Billing
A draft the agent accepts counts as one AI engagement. Drafts the agent rejects do not count. Same for summaries (only counted when consumed), classifications (counted on first generation per message), and KB suggestions (counted when an insertion happens). See AI engagements.
Common pitfalls
- Skipping calibration. The default tone is fine; the calibrated tone is better. Spend an hour on the style guide.
- Auto-classifying without remapping. Our taxonomy is a starting point. Add your intent labels in Settings → AI → Intents.
- Hiding citations from agents. Always show where a draft sourced its claim. Agents trust AI more when they can verify in two clicks.