Fruxon logoFruxon
Someone's waiting

It answers the easy ones. It asks about the rest.

A support agent that works your queue in the helpdesk you already run, acts in the systems behind it, and — when a ticket lands outside what it knows — asks the person on your team whose call it is before it replies.

Why this queue is different

One made-up refund policy and it's back in the sandbox for a quarter.

Most of your queue is repetitive and safe to hand over. The rest is why nobody hands it over. A customer asks about a policy exception nobody ever wrote down, and an agent working alone has exactly one move: answer confidently and hope. You find out from the review, or from the chargeback.

A ticket, end to end

What actually happens when it picks one up.

It reads the whole thread, not a pasted FAQ

The customer's history, their past tickets, and the passages of your policy docs that bear on this question are retrieved at the step — so the answer is grounded in what you actually wrote, and the context window doesn't carry your entire help centre on every reply.

It does the work in the systems you run on

Issues the refund in Stripe, opens the replacement order in Shopify, writes the note to Salesforce, sets the ticket status in Zendesk, queries your Postgres for the shipment. Not “sends a notification for someone else to action.”

It stops when it isn't sure

A policy exception, an account flagged VIP, a refund over the ceiling you set. It works out who'd actually know and asks them, and the customer sees nothing but a slightly longer wait.

One line back on Slack, and the reply goes out

Your ops lead answers in the channel she's already in. The agent finishes the reply on the channel the customer used, and the whole exchange — question, answer, who approved it — stays on the ticket.

What that needs underneath

Three things that make it survivable in production.

Wherever the customer already is

Email, chat embedded in your product, Slack, Teams, WhatsApp or Telegram — the same agent with the same history, whichever door they came through. Drop it into a busy shared channel and it follows along without joining in, until a message is actually for it.

Handover mid-sentence, with the thread intact

When it's over its head, a person takes the conversation with the full history and hands it back when it's resolved. The customer isn't asked to repeat themselves and isn't told to open a new ticket. An unknown sender becomes an access request you approve, not a silent new user.

Every reply on the record, including what it cost

What it read, which tools it called, who it asked, what it decided, how long it took, what it spent. Set a monthly ceiling per agent and a runaway loop becomes a line item instead of an incident.

When it isn't sure

Pricing exceptions to the person who owns pricing.

You introduce the agent to the team once — who's on it, what each of them owns, and where to reach them. From then on a question it can't answer goes to the person whose call it is, not into a queue nobody watches. Anything touching billing infrastructure goes to whoever owns billing infrastructure, at 2am as well as at 2pm.

Routed by expertise, not by ticket queue — set once on the person, not re-tagged on every agent that might need them

A fallback ladder and a timeout on every consult, so a reply never waits on one person being at their desk

The consult, the answer and the approver stay attached to the ticket, so the audit is the ticket history

Systems

Your helpdesk, your payments, your database.

Connect a system once for the whole organization and every agent can use it from then on — with credentials held at the org and referenced by name, never pasted into a prompt.

Slack

GitHub

Jira

Google Drive

Salesforce

MongoDB

Notion

Linear

Grafana

Discord

Google Chat

Confluence

PostgreSQL

HubSpot

Airtable

Shopify

Stripe

Datadog

Sentry

GCP

BigQuery

Slack

GitHub

Jira

Google Drive

Salesforce

MongoDB

Notion

Linear

Grafana

Discord

Google Chat

Confluence

PostgreSQL

HubSpot

Airtable

Shopify

Stripe

Datadog

Sentry

GCP

BigQuery

Google Calendar

Gmail

Mixpanel

Monday

MySQL

SAP

Zendesk

Zoho CRM

Google Maps

Google Ads

Coralogix

Telegram

Apollo

Mailchimp

Calendly

Redis

Supabase

GCP Logging

gVisor

Loops

Typeform

Google Calendar

Gmail

Mixpanel

Monday

MySQL

SAP

Zendesk

Zoho CRM

Google Maps

Google Ads

Coralogix

Telegram

Apollo

Mailchimp

Calendly

Redis

Supabase

GCP Logging

gVisor

Loops

Typeform

Support questions, answered plainly

What comes up once a security review or a pilot plan gets real.

Only up to a ceiling you set, and only if you turn that on. Per action you choose one of three behaviours: handle it, ask first, or do it and tell someone afterwards. Most teams start with every write gated and relax the small, reversible ones first.

Answers are grounded in the passages retrieved from your own documents, and a retrieval that comes back without a covering passage is treated as not knowing rather than as an invitation to improvise. That state is what triggers the consult.

Sentiment and account flags are ordinary escalation conditions — you can route a VIP account or a hostile thread straight to a person before the agent replies at all. The handover carries the whole history, so nobody asks the customer to explain it again.

A consult arrives on the channel they already work in — usually a Slack DM — with the customer's question, what the agent found, and what it needs decided. They answer in one line. Everything else lives in the trace and on the ticket.

Build the agent. We'll run the rest.

Book a Demo