Build your customer support agents

Build three agents that work together to triage, draft, and escalate customer support — so tickets get answered fast and the hard ones land on the right person.

Plus: three prompts that turn a single overwhelmed support inbox into three agents that handle the easy stuff and surface the rest.

Audience Everyone · Admins
Time ~20 min
Prerequisites An Auxot account on any tier. [Create an agent from scratch](/tutorials/create-an-agent-from-scratch) finished — building agents from chat feels familiar. Helpful: [Add your first context file](/tutorials/add-your-first-context-file) (context files) so you can give your agents your FAQs and brand voice, [Connect Slack to your agents](/tutorials/connect-slack-to-your-agents) if you want this wired to Slack.
You'll end up with Three agents — Triage, Reply Draft, Escalation — wired together, tested on a real ticket, and ready to take pressure off your inbox.

When a tutorial shows italic text in quotation marks, it usually mirrors a label or helper string inside Auxot. Product copy changes between releases — if something reads differently in your workspace, trust what you see on screen.

Callouts with a Worth knowing gold accent are meant as must-read context before you move on. Blockquotes that open with Tip are lighter, optional depth.

Why this matters

Customer support is where most businesses feel the pain first. The inbox gets ahead of you. The same five questions get answered fifteen times. Tickets that need a human sit too long because they’re buried under tickets that didn’t.

The fix isn’t one AI assistant. It’s three agents with different jobs, each doing the part that suits them. Triage reads every incoming ticket and ranks by urgency. Reply Draft writes a reply for the easy stuff in your brand voice. Escalation catches the tricky ones and routes them to whoever should see it. By the end of this tutorial you have all three built, talking to each other, and tested on a real ticket.


Quick start

  1. Sign in: open Auxot in your browser and log in.

  2. Open chat with the Admin Agent: click Chat in the left menu, make sure the agent picker reads “Admin Agent.”

  3. Build the three agents in one shot: paste this:

    I want to build three customer support agents that work together. The first ("Triage") reads incoming tickets, classifies them by urgency and topic, and decides whether to draft a reply or escalate. The second ("Reply Draft") writes the actual reply in our brand voice for anything routine. The third ("Escalation") flags anything that needs a human and routes it to the right person. Build all three. Make them ready to use.
    
  4. Answer the Admin Agent’s questions: it may ask about your brand voice, what counts as “urgent,” and who handles escalations. Two or three exchanges.

  5. Test on a real ticket: paste a recent support email into chat with Triage. Watch what it does.

Done? All three agents are in Settings → Agents and selectable from the agent picker. Optional next step: wire Triage to your Slack support channel (Connect Slack to your agents) so it picks up new tickets automatically.


The agent can do that?

Three agents only deliver value when each one does its specialty well and the handoffs between them are clean. These three prompts make your three agents sharper.

1. Have Triage rank tickets by urgency, not just topic

Open chat with Triage and ask:

When you classify a new ticket, don't just label it by topic. Score it on a 1–5 urgency scale: 1 = informational, 5 = customer is leaving today. Surface anything 4 or 5 to me directly before doing anything else. Show your reasoning in one line so I can audit the score.

Why it’s non-obvious: Most triage agents over-classify by topic (“billing question,” “feature request”) and miss what actually matters: how angry is this person, and how soon do I need to be involved? Forcing an explicit urgency score turns Triage from a sorter into an early-warning system. The one-line reasoning lets you spot when it’s miscalibrated and tighten its instructions.

2. Have the reply-draft agent learn from your edits over time

Once the reply-draft agent has been running for a week or two, head back to chat with the Admin Agent:

Look at the replies my "Reply Draft" agent has written that I edited before sending. What patterns are in my edits — what kinds of changes do I keep making? Update Reply Draft's description and context files so it makes those changes itself next time.

Why it’s non-obvious: Most people edit AI drafts forever and never feed those edits back. The Admin Agent reads your edit history and surfaces the recurring fixes: “you keep removing ‘I understand your frustration,’ you keep adding the order number, you keep softening the closing line”, then turns those into instructions the reply-draft agent follows automatically. Three weeks of editing turns into one prompt and the reply-draft agent stops needing the same fixes.

3. Have the escalation agent decide who to escalate to, not just that to escalate

Open chat with Escalation and ask:

When you flag a ticket for escalation, name the specific person or team it should go to and why. Use this routing logic: billing disputes → finance, product bugs → engineering, anything threatening to leave or cancel → me directly, and legal/compliance language → ops lead. If it doesn't fit any of these, route to me with a note explaining why.

Why it’s non-obvious: A flagged-but-unrouted ticket still sits. Most escalation agents stop at “this needs a human”: that’s only half the work. Naming the specific person and the routing rule makes the escalation actionable. Pairs well with Connect Slack to your agents if those people are in different Slack channels.


Go deeper

Why three agents beat a single overloaded one

You could ask one agent to do all three jobs. It’d kind of work. But the constraints fight each other: “be fast” (triage) and “match our brand voice exactly” (drafting) and “never reply to anyone threatening to leave” (escalation) all want different things. Splitting the work into three agents lets each one’s description be tight and specific. The handoff between them is what makes your three agents work, not the size of any one agent.

The handoff problem

The trickiest part isn’t building the agents: it’s how they talk to each other. Two patterns work in Auxot:

  • Workflow-driven (Run a workflow): a workflow runs Triage → conditional → either Reply Draft or Escalation → output. Best when your tickets come from a structured source (a queue, a Slack channel, or an email inbox).
  • Chat-driven: you’re the dispatcher. You paste a ticket into chat with Triage; based on its output, you switch to Reply Draft or Escalation manually. Slower but lets you stay in the loop while your three agents are new and you don’t fully trust them yet.

Start chat-driven for the first week. Move to workflow-driven once you trust the handoffs.

Brand voice belongs to Reply Draft, not Triage

Don’t put your brand voice context file on Triage: Triage shouldn’t be writing customer-facing prose. Its output is for you (or the next agent in the chain). Mixing brand-voice instructions into Triage’s description bloats it without sharpening its core job. Brand voice goes on Reply Draft.

Troubleshooting

  • Triage classifies everything as “high urgency.” Its description doesn’t define what low urgency looks like. Edit it to include explicit examples: “a thank-you email is 1, a question about pricing is 2, a question about a current order is 3, a complaint is 4, and threatening to cancel is 5.”
  • Reply Draft sounds like every other AI customer support reply. Its context file doesn’t have enough of your actual past replies. Attach a context file with 10–20 examples of replies you’ve sent that you were happy with (Add your first context file covers this).
  • Escalation routes everything to you. Its routing rules are too narrow. Either add more named routes (per power move 3) or accept that some teams need to be wired up before Escalation can route to them.
  • Tickets are getting answered but customers are still unhappy. These three agents are solving the speed problem, not the empathy problem. Reply Draft’s brand voice file probably needs a section on how to handle frustrated customers specifically.

Variations & edge cases

  • Free tier: these three agents work at all tiers. Multi-team routing (Escalation sending to a different team’s Slack channel) needs Business+ if those teams are separate in Auxot (Set up multi-team isolation).
  • Business-to-business vs business-to-consumer: Consumer support has high volume and benefits from aggressive automation. Business-to-business has lower volume and higher stakes per ticket: bias toward more escalation, less drafting. Tell the Admin Agent which one you are when you’re building these three agents.
  • Voice / phone support: out of scope for this tutorial. This setup is built for text-based support (email, chat, Slack, or ticket forms). Phone support needs transcription first.
  • Don’t merge Triage and Escalation. They feel similar (both classify), but Triage decides what kind of ticket this is and Escalation decides who handles it. Different jobs, different descriptions. If you find yourself wanting to merge them, the fix is usually that Triage’s description is too vague.

Walkthrough

Step 1: Open chat with the Admin Agent

Click Chat in the left menu. Make sure the agent picker at the top reads “Admin Agent.”

Step 2: Build the three agents

Paste this:

Build me three customer support agents:

1. "Triage" — reads incoming tickets, scores urgency 1–5, classifies by topic, and decides "draft a reply" or "escalate to a human."
2. "Reply Draft" — writes the actual reply in our brand voice for anything Triage marked as draftable.
3. "Escalation" — for anything Triage flagged, names the specific person or team it should go to and why.

Give each one a clear job description, attach any relevant context files, and make them ready to use.

The Admin Agent will ask follow-up questions: what’s your brand voice, what counts as “urgent” for your business, and who are the named escalation routes. Answer concretely: “urgent means the customer mentions cancelling, missing an event, or money,” not “important stuff.”

Step 3: Confirm and create

The Admin Agent proposes the full configuration for all three agents. Read it. If a description sounds vague, push back: “Make Triage more specific about what ‘high topic priority’ means.” If it looks right, say “yes, create them.” All three agents appear in Settings → Agents.

Step 4: Attach a context file to Reply Draft

Reply Draft is the agent that needs the most knowledge: it’s writing customer-facing prose. Attach:

  • Your brand voice guide (or examples of replies you were happy with).
  • Your top-30 FAQ with the canonical answers.
  • Anything you’d hand a new support hire on day one.

Add your first context file covers context file mechanics. The other two agents need much less: Triage just needs to know your urgency definitions, Escalation just needs the routing list.

Step 5: Test on a real ticket

Open chat with Triage and paste in a recent customer email: preferably one you’ve already replied to, so you know what the right answer was.

Triage outputs its urgency score, topic, and routing decision. Switch to Reply Draft (if Triage said draft) or Escalation (if Triage said escalate). Compare what each produces to what you actually did or would do.

If anything’s off, head back to the Admin Agent: “Triage rated this a 3 but it should have been a 5 because of [reason]. Update its description so this kind of ticket gets a higher score next time.”

Step 6: (Optional) Wire it to a real source

Once you trust your three agents on test tickets, connect them to a real ticket source:

Start with Slack if you have one: it’s the lowest-friction source and the easiest to monitor while you’re still tuning your three agents.


What’s next

Reference