ATS Mail · In development

Outlook depth.
Apple-native speed.

A premium email client for macOS, built local-first and never proxied. A Rust engine does the work, a Swift application draws it at native speed, and everything, including the AI, runs on your machine.


Why it's different

Mail that belongs to you.

Every mainstream client has quietly become a front end for somebody's server. ATS Mail is the other thing: an application, on your computer, holding your data.

  • Your mail is a file on your diskA local SQLite store indexed with FTS5. Search runs on your Mac against your data, so it is fast on a hundred thousand messages and it works with the network unplugged.
  • Nothing sits in the middleATS Mail talks to Microsoft Graph or your IMAP host directly. There is no relay of ours in the path, which means there is no copy of your mail on our side and nothing to breach.
  • On-device AISummarizing, drafting and triage run locally. Your correspondence is not somebody else's training data, and the feature still works on a plane.
  • Outlook Classic depthRules, folder hierarchies, fast import and the keyboard-first workflow people actually built their working lives around, without the twenty-year interface.
Features

What it actually does.

Depth, in the places a working day is spent. None of this is a setting buried four levels down: it is how the client behaves out of the box.

The Screener

First-time senders wait outside the inbox. Screen them in, file them to Feeds or Receipts, or screen them out, and the decision applies to everything they send from then on. Screening out compiles to a local rule, so the sender is never notified and nothing bounces.

A split inbox, not a smart one

Focus, VIP, Team, Customers, All. Five lanes across the top of the list, switched with keys 1 through 5. You decide what belongs in each one, which is the part every algorithmic inbox gets wrong.

Triage mode

Shift T goes full screen, one conversation at a time, keyboard only. Archive, snooze, flag, reply against a session goal, then land back exactly where you were.

Rules you can dry-run

An ordered list with STOP conditions, run inside the ingest transaction so mail never flashes unfiled. Test against your history first and it reports what would have matched.

Search that reports its own speed

Operators like from:, has:attachment and no-reply-in:3d compile straight to indexed queries. The footer tells you how many messages were scanned and how long it took.

Waiting on you, waiting on them

Both columns, side by side. Nudge a stalled thread and it queues for tomorrow morning. A standing list of senders you never open sits one click from Feeds or blocked.

Undo on everything

Every action posts a five-second toast, and Command Z pops the same log. Undo send is that same window, because the server operation simply waits its turn.

Offline is a supported state

The Outbox queues everything and replays in order on reconnect. A failed send surfaces the actual server reason, per message, with send-now, edit and cancel.

Privacy you can verify, not just trust

Remote images are blocked by default and the tracker count is surfaced per message. Authentication results are shown rather than buried. Lookalike domains are caught with Unicode confusable detection. Tokens live in Keychain. And a unit test asserts the app can only reach your own mail servers, which is what turns “never proxied” into a property of the build rather than a promise on a website.

Performance gates

Budgets, enforced in CI.

Measured against a seeded 250,000 message store on Apple Silicon. These are not aspirations in a backlog: a pull request that misses one of them fails.

Cold launch400msTo an interactive inbox, p90
Search50msKeystroke to painted results, p50
Memory300MB250k messages across 3 accounts
Off-device0 bytesMail content leaving your Mac