Beam Mail
A desktop Gmail client built for fast triage without hiding where the data goes. Mailbox state syncs both ways with Gmail, while memory, loops, reminders, and notes stay local.
- Bidirectional
- read, star, label, archive, trash
- 10–40s
- observed Gmail restore pull
- Local
- memory, loops, reminders, notes
- Fail closed
- cloud AI requires a ZDR route
A desktop mail client for triage, follow-up, and writing across Gmail accounts.
A fast inbox with the machinery showing.
Beam keeps inbox work quick, but names the state underneath it. Gmail stays authoritative. Local features stay local. Cloud model calls carry a visible privacy contract.



Mirror
Rust pulls Gmail history into a local SQLite projection. The interface reads locally, so inbox work does not wait on a round trip for every view.
Gmail REST · SQLiteTriage
Work through mail by category, shortcut, account, or the Get me to Zero flow. Every mailbox change is journaled before it reaches Gmail.
keyboard · categories · zeroWrite
Drafting can use editable local memory and selected knowledge. The interface shows whether the active route is local or ZDR cloud.
memory · local / ZDRReconcile
Confirmed Gmail state settles the operation journal. Reauth, offline work, retries, and ambiguous sends remain visible instead of being collapsed into a success toast.
Gmail authority · recoverableThe working parts behind the inbox.
Several accounts, one working view.
Account spaces can be combined or isolated without mixing credentials, local memory, or mailbox scope.
spaces · account isolationLoops are first-class mail state.
Beam tracks what I owe, what I am waiting on, and when a thread should come back. That state is local by design.
waiting · owe · remindEditable context, not a mystery profile.
The memory view shows the facts, people, preferences, and writing traits Beam can use. Each item can be corrected, disabled, or removed.
facts · people · writing styleThe badge follows the route.
Beam cannot claim local-only while message content is in flight. If an eligible ZDR endpoint disappears, the cloud task stops.
local · ZDR · unavailableThe rules that keep a fast mail client from becoming a risky one.
- Gmail is the remote authority. SQLite is the local UI projection, never a competing mailbox.
- Every manual or AI mail mutation enters the same durable operation journal.
- OAuth tokens and API keys live in macOS Keychain, not in SQLite or plaintext config.
- Cloud AI requires current endpoint-level ZDR evidence and fails closed when that evidence expires.
- Message HTML renders inside a scriptless sandbox with no Tauri bridge or automatic remote loads.
- Offline, reauth, stale, retrying, and ambiguous-send states remain distinct in the interface.
The private app, the Gmail core, and the source-controlled product mockup.
The Tauri app for reading, triaging, searching, writing, and following up across Gmail accounts.
private desktop appA Rust mail core with local SQLite projections, a durable operation journal, OAuth in Keychain, and recovery when the network or account state changes.
Gmail REST · SQLite · operation journalThe checked-in design source for the inbox, memory, settings, composer, loops, and Ask Inbox surfaces shown on this page.
product mockup · source-controlled

