Grux OS reads the mail and calendar accounts already configured on your Mac, in place, with nothing copied anywhere. That is one of two shapes this can take, and they have very different consequences. The common shape is to grant a hosted assistant OAuth access to your mail provider, or to forward your inbox to it, which means a third party holds a copy of your mail indefinitely and a breach of their systems is a breach of yours. Grux OS does the other one: Mailbox talks to your IMAP server directly, Calendar and Contacts use the macOS system permissions for the accounts already on the Mac, and there is no Grux server for a copy to live on. Your credentials go to the macOS Keychain and are sent only to the provider they belong to.
| Surface | Talks to | Needs |
|---|---|---|
| Mailbox | Your IMAP server, directly | IMAP details |
| Calendar | The calendars already on your Mac | The macOS Calendar permission |
| Contacts | The contacts already on your Mac | The macOS Contacts permission |
| Notes and Documents | Files on your disk | Nothing |
| Compose and send | A sending provider you configure | A Resend key, plus IMAP |
Mail, calendar and contact access reach the model as tools rather than as a dump of your data. A tool call fetches what the turn needs and nothing else, so a question about one meeting does not put a year of your calendar in a prompt.
The case it was built for is the one where a vendor mail needs a reply, a date and somebody's number. Mailbox, Calendar and Contacts each open as a pane beside the Command Panel, pointed at your real accounts, so that is one turn instead of three applications.
| Claim | Source |
|---|---|
| Mailbox talks to your IMAP server directly, over TLS | IMAPClient.swift |
| Credentials go to the macOS Keychain | EmailAccountStore.swift |
| Compose and send is a separate feature needing its own credential | ComposeDoorTests.swift |
| Calendar reads and writes through Apple's EventKit, on the accounts already on your Mac | CalendarService.swift |
| The calendar tool lists events in the date range a request asks for | CalendarTool.swift |