Email triage, done before you open the inbox
An AGNT agent reads incoming mail, classifies it, drafts replies for the routine cases, and escalates the ones that genuinely need you — all under rules you write.
The short version
| The job | An AGNT agent reads incoming mail, classifies it, drafts replies for the routine cases, and escalates the ones that genuinely need you — all under rules you write. |
|---|---|
| Tools it needs | Gmail, Microsoft 365, Slack, Notion |
| Setup | 4 steps, about ten minutes |
| Runs when | Something happens in Slack |
| Approval | Yours, per category — nothing is sent on your behalf unless you say so |
| Where it runs | Your own machine. Credentials stay in a local vault. |
What the agent actually does
You only see what actually needs you
The agent reads the whole thread, not just the subject line, and sorts it against categories you define — billing, bug report, sales enquiry, noise. Because it is reading rather than pattern-matching, a message that never uses the word "refund" still lands in billing when that is plainly what it is about.
Draft replies, never send blind
For the categories you mark as routine, it composes a reply grounded in your docs and previous answers, and leaves it as a draft. You skim and send. Nothing reaches a customer that a human has not seen, unless you explicitly decide a category is safe to send unattended.
Escalate with context
Anything genuinely needing you arrives with the work already done: what the customer asked, their account state, what was promised previously, and a suggested response. The escalation is a briefing rather than a notification.
The tools this job needs
Gmail
Where the work arrives. The inbox most operations still start in. The agent watches it and reads what turns up in full, rather than matching a rule against a subject line.
Microsoft 365
Context the agent pulls in before deciding. Outlook, Teams and Office — the other half of many stacks. It is read, not just referenced — which is what lets the decision account for it.
Slack
Context the agent pulls in before deciding. Team chat where operations actually surface. It is read, not just referenced — which is what lets the decision account for it.
Notion
Where the result lands. The team wiki agents can actually keep current. Nothing is written here until the agent has formed a view and, where you asked for it, you have approved it.
Get this agent
Inbox Triage
An AGNT agent reads incoming mail, classifies it, drafts replies for the routine cases, and escalates the ones that genuinely need you — all under rules you write.
Runs on your own machine. Asks for Gmail, Slack and nothing else — you approve the connection, and the agent inherits whichever AI model you already use.
You can see exactly what it did
Why rules alone never finished the job
Every inbox eventually accumulates a stack of filters, and every stack has the same problem: it matches on surface features. A rule keyed to "invoice" misses the customer who writes about "the charge on my card", and catches the newsletter that mentions invoicing software. An agent classifies on meaning, which is why it handles the long tail that filters were never going to reach.
The judgment you keep
Triage is not one decision but two: what is this, and what should happen next. Agents are reliably good at the first and should be trusted with the second only where you have said so. The practical shape is an agent that classifies everything, drafts for most things, sends for a narrow set you have explicitly approved, and escalates anything it is unsure about — with uncertainty flagged rather than hidden behind a confident guess.
What it looks like after a month
The routine categories stop reaching you at all beyond a quick approval pass. The escalations arrive pre-researched, so handling one takes a minute instead of ten. And the receipts accumulate into evidence about which categories the agent has been consistently right on — which is exactly the basis on which you widen its remit.
Build it in AGNT
- Connect Gmail or Microsoft 365 with one sign-in; tokens are stored encrypted on your own machine.
- Describe your categories and what should happen to each — in plain language, not a rules DSL.
- Point the agent at your docs and past replies so drafts sound like your team rather than a chatbot.
- Run it against the last week of mail first, read the receipts, then let it work live.
Copy this workflow
Here is the shape in full rather than in prose: a trigger, a decision, an action. Paste the definition below into a new workflow and it loads exactly as drawn.
{
"id": "6089e112-b335-4b9b-ab20-6ab3bc16b69e",
"name": "Email triage, done before you open the inbox",
"nodes": [
{
"id": "903a6f96-c855-438d-a1af-3663dd464a1a",
"text": "Watch Slack",
"x": 512,
"y": 144,
"isEditing": false,
"type": "receive-slack-message",
"icon": "connect",
"category": "trigger",
"isSelected": false,
"parameters": {},
"description": "Listen for incoming Slack messages in a specified channel and trigger the workflow when a new message is received.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
},
{
"id": "2078e8e5-9d9c-4ac8-a058-6ae11552da6c",
"text": "Read it and decide",
"x": 512,
"y": 336,
"isEditing": false,
"type": "agnt-agent",
"icon": "connect",
"category": "action",
"isSelected": false,
"parameters": {
"instructions": "The agent reads the whole thread, not just the subject line, and sorts it against categories you define — billing, bug report, sales enquiry, noise. Because it is reading rather than pattern-matching, a message that never uses the word \"refund\" still lands in billing when that is plainly what it is about."
},
"description": "An AGNT agent reads incoming mail, classifies it, drafts replies for the routine cases, and escalates the ones that genuinely need you — all under rules you write.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
},
{
"id": "b44079e5-db87-46bd-adbf-681e287a256a",
"text": "Act in Gmail",
"x": 512,
"y": 528,
"isEditing": false,
"type": "gmail-api",
"icon": "connect",
"category": "action",
"isSelected": false,
"parameters": {
"action": "Search and Read Emails"
},
"description": "A powerful tool to send, reply, read, organize, and manage attachments in Gmail.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
}
],
"edges": [
{
"id": "4b6638ce-000b-4a3c-a36a-3ce4e06bd018",
"start": {
"id": "903a6f96-c855-438d-a1af-3663dd464a1a",
"type": "output"
},
"end": {
"id": "2078e8e5-9d9c-4ac8-a058-6ae11552da6c",
"type": "input"
},
"startX": 800,
"startY": 168,
"endX": 512,
"endY": 360
},
{
"id": "bebae4b5-e498-46b9-afed-5ba4df2543c2",
"start": {
"id": "2078e8e5-9d9c-4ac8-a058-6ae11552da6c",
"type": "output"
},
"end": {
"id": "b44079e5-db87-46bd-adbf-681e287a256a",
"type": "input"
},
"startX": 800,
"startY": 360,
"endX": 512,
"endY": 552
}
],
"zoomLevel": 1,
"canvasOffsetX": 0,
"canvasOffsetY": 0,
"isTinyNodeMode": false
}
Put this agent to work
Free, local, and it asks for Gmail, Microsoft 365, Slack, Notion and nothing else.
Common questions
Will it send email without asking me?
Only if you tell it to, per category. The default is draft-and-review: the agent prepares the reply and a human sends it. Most teams keep it that way for anything customer-facing indefinitely.
Does my email get uploaded anywhere?
Not to us. AGNT runs on your machine and talks to your mail provider directly. If you point it at a local model through Ollama or LM Studio, the message content never leaves your hardware at all.
How is this different from Gmail’s built-in filters and smart reply?
Filters match strings and smart reply offers three generic sentences. This reads the full thread, uses your documentation and history, applies your escalation policy, and leaves a receipt showing why it decided what it did.