Can I vibecode Mailient?

KINDA · weekend project
price $29/moyou'd save $348/yrbuild time a weekendcategory 📬 emailreplaced by 0 people

The core trick here, pull mail, classify it, summarize threads, draft replies, is genuinely a weekend of work now that an LLM does the hard part. An agent can wire IMAP plus SQLite plus a cheap web UI and have working triage before dinner. The gaps are all the unglamorous parts: Gmail and Outlook OAuth, push sync instead of polling, threading edge cases, and the fact that you will read this thing on a phone and your build has no app. Nothing here is protected by data or network, so a personal version keeps most of the value if you accept that you are now the ops team for your own mail pipeline. Product details and pricing are thin from the outside, so treat the specifics as unverified.

the prompt
Build a local AI email triage tool called Inbox Warden in this empty folder.

Stack, no substitutions: TypeScript on Node 20, Fastify for the server, server-rendered HTML with htmx for the UI, better-sqlite3 for storage, imapflow for reading mail, nodemailer for sending, and one OpenAI-compatible chat completions endpoint for the AI. No React, no Next, no Docker, no cloud services, no telemetry, no user accounts. This runs on localhost for exactly one person.

Secrets in .env, read with a tiny loader, and ship a .env.example with: IMAP_HOST, IMAP_PORT, IMAP_USER, IMAP_PASS, SMTP_HOST, SMTP_PORT, LLM_BASE_URL, LLM_API_KEY, LLM_MODEL. Never log credentials or full message bodies.

What is in scope:
- A sync job that connects over IMAP, fetches messages from INBOX since a stored high water mark, and stores id, thread key, from, to, subject, date, plain text body and raw headers in SQLite. Dedupe on Message-ID. Make sync idempotent and resumable.
- Strip HTML to text and truncate long bodies before sending anything to the model.
- For each new thread: one LLM call returning strict JSON with category (one of urgent, needs-reply, fyi, newsletter, junk), a two sentence summary, and a suggested reply draft when category is needs-reply or urgent. Validate the JSON with zod and retry once on parse failure.
- Cache results keyed by thread and message count so restarts do not re-bill you.
- A web UI at / with a triage queue grouped by category, thread detail view, and an editable draft box with Approve and Send, Skip, and Mark Junk. Nothing is ever sent without an explicit click.
- Sending via SMTP with correct In-Reply-To and References headers so replies thread properly.
- A rules table for cheap deterministic overrides by sender or subject substring, applied before any LLM call.
- npm run sync, npm run dev, and a --dry-run flag that classifies without sending.

Explicitly out of scope: OAuth flows, mobile app, push notifications, multi-account support, calendar, attachments beyond recording filenames, search beyond a SQL LIKE query.

Write a README with setup steps, an honest limitations section that says polling is not push and that message text leaves the machine for the model, and a cost note estimating tokens per hundred emails. Include a fixture-based test for the classifier JSON parser that does not hit the network.

$ open in your agent (prompt prefilled, you press enter) or copy it raw · this prompt is generated from the build plan · improve it via PR

why people still pay

Because email is the one app that has to work at 7am on a phone with two bars of signal, and a self-hosted poller on a home server does not clear that bar. People pay to skip OAuth verification, token refresh, IMAP quirks and the slow realization that their triage cron died four days ago and they missed an invoice. The AI part is commodity; the boring reliability around it is what the subscription actually buys.

what you lose

xA mobile app and real push notifications, which is where most email actually gets read

xManaged OAuth with Google and Microsoft, including the review process and token refresh pain

xSomeone else absorbing provider API changes, rate limits and broken threading

xPolish: keyboard shortcuts, fast search, snooze, undo send, offline behavior

xAny sending reputation work if the product handles outbound at scale

prior art · use these instead of building, if you'd rather

Nothing worth pointing at. That's why the prompt exists.

share on X ↗"I just replaced Mailient ($29/mo) with one prompt"
questions
Can I vibecode Mailient?

Kinda. The core of Mailient is buildable in a weekend with the prompt on this page, but there are real gaps: A mobile app and real push notifications, which is where most email actually gets read, Managed OAuth with Google and Microsoft, including the review process and token refresh pain. Read the honest list above before committing.

How much does Mailient cost?

Mailient costs about $29/month (Monthly, checked 2026-08-18), which is $348 per year.

What do I lose by replacing Mailient?

Honestly: A mobile app and real push notifications, which is where most email actually gets read; Managed OAuth with Google and Microsoft, including the review process and token refresh pain; Someone else absorbing provider API changes, rate limits and broken threading; Polish: keyboard shortcuts, fast search, snooze, undo send, offline behavior; Any sending reputation work if the product handles outbound at scale. If any of those are load-bearing for you, keep paying.

Is there an open-source alternative to Mailient?

No mature open-source alternative worth pointing at, which is exactly why the one-shot prompt on this page exists.

Every week, more subscriptions die.

New verdicts, new prompts, the week's most-doomed apps.
One email. Unsubscribe in one click.

free forever · no scanner spam · the prompt stays on the site, the deaths come to you

$weekly: what got a verdict, what died.