Context
B2B SaaS with a support inbox receiving dozens of emails per day. Small team (2 people) covering business hours. Customers writing outside business hours waited 12-24h for a first response. Follow-ups on unanswered tickets fell through the cracks. Tools like Intercom were over budget and offered less control than the team wanted.
The problem
A new lead opening a ticket on Sunday at 10pm got a first response on Monday at 11am. Customers waiting on technical follow-up forgot the issue if nobody chased it. A closed helpdesk platform was expensive and locked the team into a UX that didn't fit their internal tool.
The call
Build a custom agent with smart triage, automatic follow-up, and an internal dashboard that integrates with the existing stack. Zero lock-in.
The solution
- Triage agent that classifies email into categories (technical support, commercial, financial, spam) and routes.
- Automatic responses for common questions based on product documentation.
- Scheduled follow-up via Inngest cron — if a customer doesn't reply in 48h, the agent nudges.
- Human handoff with context summarized by the agent (transcript + category + suggested response).
- Internal dashboard integrated with the client's stack (no more Intercom).
The outcome
- Average first-response time dropped to under 5min any hour of the day.
- Human team turned supervisor — only steps in for complex cases.
- 0 dependency on paid helpdesk platforms.
- 24/7 operation running for 4 months without incident.
Why it worked
Modern stack, no lock-in. Claude API + Inngest for follow-up orchestration + Resend for delivery. The internal dashboard was the final piece — the team wanted the inbox living in the same place they already worked. When AI is well-designed, it disappears — it just becomes "my inbox that organizes itself."
"We were paying R$ 4k/month for a tool that didn't do half of what this agent does. And we own the code."
— CTO