Inspiration
EmailAgent came from a very personal pain point: once my inbox crossed a certain volume, I started avoiding email completely. That avoidance had real consequences, including missed career opportunities and delayed responses to important messages. I wanted a system that could reduce email anxiety by turning an overwhelming stream into a small set of clear, prioritized actions.
The core idea was simple: if humans are bad at processing 100+ mixed-priority emails per day, we should let AI do the first pass, then keep humans in control for final decisions.
What it does
EmailAgent is an AI-powered inbox assistant that helps users process forwarded emails without living inside their original mail app. Each user gets a unique forwarding address, and incoming emails are automatically analyzed to classify content, generate summaries, and extract action items.
The product presents everything in an inbox-style dashboard with a human-in-the-loop approval flow. Users can quickly review recommendations, approve or reject actions, open one-click reply links (mailto), and export calendar-related content as ICS files for one-click calendar import. Push notifications help users stay informed without constantly checking Gmail or Outlook.
How we built it
We built EmailAgent with Next.js 16, TypeScript, PostgreSQL + pgvector, and Cloudflare Email Routing for inbound email delivery. AI processing is powered by Qwen models for classification, summarization, rule evaluation, and embeddings.
Our pipeline works like this:
- User forwards mail to their unique EmailAgent address.
- Cloudflare routes inbound messages to our webhook.
- We parse the MIME email, run AI analysis, and store structured output.
- The dashboard shows categorized emails, summaries, and suggested actions.
- Users confirm actions in a human-in-the-loop queue before execution.
We also implemented practical UX decisions for speed: mailto for reply drafting and ICS generation for calendar events, so users can act immediately with one click.
Challenges we ran into
The biggest challenge was platform policy constraints from major email providers. We initially implemented with Google Console Email API because it was relatively easy to integrate, but it effectively required Gmail-only usage and had near-zero probability of production verification beyond test users.
We then explored SMTP and IMAP paths, but found modern restrictions and deprecations across Gmail and Outlook made that route unreliable for our use case. Forwarding became the only robust, provider-agnostic option. That architectural pivot was difficult but critical: it forced us to redesign reply and calendar workflows, replacing direct provider APIs with mailto links and ICS exports while preserving a smooth user experience.
Accomplishments that we're proud of
We are proud that we converted a blocked project into a working end-to-end product despite major integration constraints. Instead of stopping at policy roadblocks, we re-architected around forwarding and still delivered the core value: helping users avoid missing important opportunities.
We are also proud of the user-first workflow: inbox-like interface, actionable summaries, one-click reply and calendar flows, and push notifications. The result feels practical, not just a demo of AI features.
What we learned
We learned that technical feasibility is only half the battle; platform policy and verification rules can completely reshape architecture decisions. Building resilient products means designing for constraints, not just ideal APIs.
We also learned the value of human-in-the-loop AI. Full automation sounds attractive, but users trust systems more when they can review and approve high-impact actions. Finally, we learned that speed to usefulness matters: one-click actions and clear summaries beat complex but fragile integrations.
What's next for EmailAgent
Next, we want to improve prioritization and personalization so the system adapts to each user’s communication style and urgency patterns. We also plan to expand integrations for richer action execution beyond links and exports, while preserving user control.
On the product side, we want stronger semantic search, better digest views, and team/shared inbox workflows. Our goal is to make EmailAgent the place users trust for daily email decisions, so they no longer need to dig through overloaded inboxes in multiple providers.
Built With
- ai-sdk
- alibaba-cloud
- alibaba-cloud-function-compute
- alibaba-cloud-polardb
- cloudflare
- cloudflare-email-routing
- cloudflare-workers
- dashscope-api
- ics
- next.js
- nextauth.js
- node.js
- pgvector
- postgresql
- pwa
- qwen-ai
- react
- shadcn/ui
- tailwind-css
- typescript
- web-push
Log in or sign up for Devpost to join the conversation.