A shared inbox for a few people is a known shape: sync one or more IMAP mailboxes, thread messages, then add assignments, labels, internal comments and a search index. An agent can build that in a weekend, and FreeScout shows the pattern works. The price you pay in effort is the mail itself: HTML email that renders correctly, IMAP edge cases, OAuth for Gmail and Microsoft 365, plus live collaboration. SMS, WhatsApp and social channels, apps for phone and desktop, and the integration list stay out of reach.
Before you buildMissive has no free plan, only a 30-day trial. If you are the only user, a regular mail client with labels and snooze may already do the job.
Build me a small shared inbox for my team to replace Missive. Requirements:
- Node.js 22 + TypeScript: a Fastify server and a React UI built with Vite. `npm start` serves
http://localhost:4400; open browser tabs get live updates over WebSocket (`ws`).
- Mail: up to 3 mailboxes over IMAP (`imapflow`, IDLE) and SMTP (`nodemailer`), host, user and app
password per mailbox in .env. Sync the last 90 days, then follow UID and UIDVALIDITY. Never
delete or move mail on the server.
- Storage: better-sqlite3 in ./data/inbox.db: messages parsed with `mailparser`, conversations
threaded by Message-ID, In-Reply-To and References, attachments in ./data/files/, users,
labels, assignments, comments, drafts, and an FTS5 index over subject, sender and body.
- Inbox: list with unread state, close and reopen, snooze until a time, labels, assignee, and
search with from:, to:, label: and is:unread. HTML mail renders in a sandboxed iframe with remote
images blocked until I click "load images".
- Team: up to 5 users with email and password (`argon2`), roles admin and member; assign a
conversation, @mention a teammate in an internal comment, and show "Sam is replying" while
another user has a draft open.
- Compose: reply, reply all, forward, rich text with TipTap, a signature per user, send later up
to 7 days, 10-second undo, and canned responses with {{first_name}} placeholders.
- Rules: "if sender or subject contains X, then label or assign", evaluated on arrival.
- One organization. No telemetry, local-first: the only outbound calls are IMAP and SMTP.
- Out of scope: SMS, WhatsApp and social channels, calendars, AI features, mobile apps, SSO, OAuth.
- README: app passwords for Gmail, Fastmail and iCloud, that Microsoft 365 needs OAuth and is not
supported, running behind HTTPS with Caddy, backups, and that HTML mail will not render exactly
like Missive.Opens your agent with the prompt filled in, you press enter. Or copy it and paste it into an empty folder.
The first prompt builds the core. Run these one at a time in the same folder to grow it into your own Missive.
Extend the shared inbox in this folder. Requirements: - Make a draft collaborative: edits are sent over the existing WebSocket as small operations using `yjs` with a TipTap binding; the draft is saved to SQLite every 5 seconds. - Show coloured cursors and names for the people in a draft. - Sending locks the draft for everyone and records who sent it. - Add a test with two simulated clients editing the same paragraph. - Update the README.
Add web push to the shared inbox in this folder. Requirements: - Make the UI an installable PWA and subscribe browsers with `web-push` using VAPID keys from .env. - Notify on assignment to me, @mentions and replies in conversations I follow; never on every incoming mail. - A settings page lets each user switch categories off and set quiet hours. - Remove dead subscriptions when the push service returns 404 or 410. - Update the README, including the HTTPS requirement.
Add auto-replies to the shared inbox in this folder. Requirements: - Per mailbox, an optional auto-reply with a subject, body, start and end dates, and a daily send limit. - Send at most one auto-reply per sender per 7 days; skip mailing lists, noreply addresses and anything with Auto-Submitted or Precedence: bulk headers. - Mark auto-replies with Auto-Submitted: auto-replied and log each one in the conversation. - Add tests for the skip rules. - Update the README.
Teams use Missive to stop forwarding emails: one conversation, with comments, assignments and drafts visible to everyone, across email and chat channels, in a client that feels fast on a phone. It costs less than most help desks, and mail stays in Gmail or Outlook, so trying it is low-risk.
Estimate · A $5 VPS covers a small team; at $18 a user, five people would pay $90 a month for Missive Starter. The build is token usage on your agent plan.
| Plan | Monthly | Annual, per month | What you get |
|---|---|---|---|
| Starter | $18/user | $14/user | Up to 5 users, unlimited email history, team spaces and inboxes, conversations and tasks, email, SMS and social accounts, SOC 2 Type II. No integrations, rules, API or AI assistant. |
| Productive | $30/user | $24/user | Up to 50 users; adds integrations with external tools, rules and automations, basic analytics, API and MCP access, AI assistant. |
| Business | $45/user | $36/user | Unlimited users; adds SAML SSO, IP restriction, advanced analytics and reporting, personalized team onboarding. |
Kinda. The core is a weekend build with the prompt on this page, but real gaps remain: SMS, WhatsApp, Messenger and Instagram conversations in the same inbox, Native iOS, Android, macOS and Windows apps.
About $18 a month on the Starter plan per seat, $216 a year (checked 2026-10-19).
SMS, WhatsApp, Messenger and Instagram conversations in the same inbox; Native iOS, Android, macOS and Windows apps; OAuth connections for Gmail and Microsoft 365 that keep working without app passwords; Integrations with CRMs and task tools, and rules beyond simple labelling; Analytics, SLA reports and the AI assistant. If any of those matter to you, keep paying.
Yes: FreeScout (open source), Chatwoot (open source), Zammad (open source).