How it works

Agents that do the work, people who make the calls

A guide to agentdesk in seven parts. Every part starts with a plain-language summary, then the technical detail. If something is unclear, ask the guide: an agent of this platform answers from these pages and the running code.

01

Agents, prompts and tools

Exactly what each agent receives, served live by the core API from the code that runs: the system prompt, the shape of the message, and the schema of every tool.

In plain words

A prompt is the instruction sheet an agent reads before each ticket. Tools are the only things it can do: look up the customer, list their orders, open one order. It answers by filling in a form (a JSON schema) rather than writing free text, so the platform can check every field before anyone sees it.

The two AI agents

There are exactly two agents, each a model with one job, its own prompt, its own tools and a fixed output form. Neither can act on the outside world: their output is checked, then proposed to a person.

ModelMistral → Claude → offlineTicketsender, channel, subjectthe customer's messageTriage agentjob: classify the tickettier 0 · one forced callSYSTEM PROMPT + USER MESSAGEsubmit_triageintent, languageurgency, summaryVALIDATED AGAINST A SCHEMANo toolsit cannot look anything up: it only reads the ticket
Triage reads the ticket and fills one form: what it is about, which language, how urgent. It has no tools, so it cannot look anything up or leak anything.
ModelMistral → Claude → offlineTicket + triagesender, channel, subjectthe customer's messageResolver agentjob: look things up, draft a replytier 1 · up to 6 roundsSYSTEM PROMPT + USER MESSAGEsubmit_resolutionreply, refund?needs_human, summaryVALIDATED AGAINST A SCHEMATOOLS, THROUGH THE GATEWAY · READ-ONLY · SENDER ONLYget_customerlist_ordersget_order
The resolver can look up the sender and their orders through the gateway, then fills the resolution form: the reply, and a refund only if one is justified.
Ticket + triageModel callsees all results so farWhat came back?tool callsGateway runs themgranted tools onlyresults go backanswerSchema valid?submit_resolutionyesDraft ready→ guardsnoOne repair turnthe error goes backAt most 6 rounds. The last round offers only submit_resolution and forces it, so the loop always ends.
How the resolver works inside: it asks for data, gets it, asks again if needed, and finishes by submitting its answer. A malformed answer gets one chance to be fixed.

Their exact prompts and tools

Served live from the code that runs, so this is precisely what each model receives.

Loading the live prompts…

NextPaths & examples→