Connect a mailbox and work your inbox inside Genosyn — read threads, reply, and file mail like a normal client. Gmail, Outlook, Fastmail, iCloud, Zoho, your company's Exchange server, or a mail server you run yourself. Then put your AI Employees on it: chat with them right beside the inbox, hand them threads to draft answers, and set rules that use static filters or AI judgment to act on new mail. Everything syncs both ways.
What this is
The Email section is a real mail client backed by your own mailbox. Genosyn imports your whole mailbox into a local index and keeps it in step with the mail server in both directions: mail that arrives shows up here within about a minute, and anything you do here — read, star, archive, label, draft, send, forward — is written straight back. The goal is that you never need to open your other mail client; read it there or here, act on it here, and neither drifts.
Connecting a mailbox
Open Email and type the address. That is the whole first step — Genosyn works out the sign-in method from the domain. Gmail and Google Workspace use Google sign-in. Other supported mailboxes use a password, with server settings filled in for you.
- Type your email address and press Continue.
- Connect your mailbox. For Gmail and Google Workspace, choose Continue with Google and follow Google's consent screen — the mailbox is created the moment you approve, with nothing to come back and click. For other supported services it is a password field, with the servers already filled in and a line telling you what kind of password your provider wants.
- The first sync imports your entire mailbox, newest first, so everything is searchable here. A big account fills in over a few minutes in the background (the sidebar shows the running count); after that, sync is incremental. The import checkpoints as it goes, so a restart, a rate limit, or a dropped connection resumes at the exact remaining email instead of replaying a whole page. Temporary failures are retried with backoff, and unusually large conversations fall back to smaller per-message reads. Mail that arrives while the import is still running shows up (and triggers your rules) within a minute, without waiting for it to finish. You can connect more than one mailbox — on different providers, if you like — and switch between them from the account picker at the top of the sidebar.
If Google sign-in is unavailable, ask an instance admin to register the Google OAuth app at Admin → Integrations, then return and choose Continue with Google. See Integrations for setup. You can skip connecting email during onboarding and add it later.
App passwords
For mailboxes connected with a password, most providers will not accept your ordinary sign-in password, and want an app password instead: a long random string you generate once, scoped to one application, revocable on its own without changing the password you actually remember. Genosyn tells you which kind your provider wants and links straight to the page that issues it. Gmail and Google Workspace use Google sign-in instead.
The password is stored encrypted with the instance key, exactly like every other Connection credential, and is only ever decrypted in memory to open a connection. It is never written to an AI Employee's working tree, a log, or a support bundle. TLS is always verified, with no switch to turn that off — if your mail server uses an internal CA, point NODE_EXTRA_CA_CERTS at it so Genosyn trusts that CA rather than trusting nothing.
What works
Gmail and Google Workspace connect through Google sign-in. Other mailboxes connect through IMAP and SMTP: Fastmail, iCloud, Yahoo, Zoho, GMX, Yandex, mailbox.org, Migadu, Titan, a company Exchange or Dovecot server, or a mailbox on a domain you host yourself.
Two caveats worth knowing before you start. Microsoft has retired ordinary passwords for IMAP on both Outlook.com and Microsoft 365, so an Outlook mailbox needs an app password that your account or your 365 admin has to allow. Proton Mail has no public IMAP at all — it works only through Proton Mail Bridge running next to Genosyn. Tuta and HEY expose no IMAP whatsoever and cannot be connected by any mail client, Genosyn included; the connect dialog says so rather than letting you fail at a password prompt.
Folders and labels
Gmail lets a conversation carry several labels at once; every other IMAP server puts a message in exactly one folder. Genosyn keeps one model and translates: on an IMAP mailbox a label is a folder, so applying one moves the conversation there, removing one moves it back to the Inbox, and creating a label creates a folder. Archive, Trash, Spam, Sent and Drafts map to the server's own special folders (or, on an older server that flags none, to folders with the usual names). One difference is worth stating plainly: Gmail remembers which labels a message had before it was trashed and restores them; IMAP remembers nothing, so Untrash puts the conversation back in the Inbox.
Reading and answering mail
The folder rail carries the usual views — Inbox, Starred, Sent, Drafts, All mail, Spam, Trash — plus your own labels or folders. Open a thread to read it, then Reply, Reply all, Forward, or Compose a new message — with file attachments if you need them, added from the Attach button or by pasting a screenshot straight into the message box. Star, archive, trash, mark read/unread, and apply labels all act on the whole thread and land on the mail server immediately.
Click an attachment on a saved draft to download it, including while editing the draft. Downloads preserve filenames in any language. The separate × button removes it from the draft when you save or send.
The Inbox header shows when the mailbox last synced successfully. Click Sync now to check for new mail immediately. Genosyn records that pass before it starts, so the button follows a real queued, running, succeeded, or failed state even if you reload the page or miss a live update. A temporary timeout is retried automatically; if the retry budget is exhausted, the button stops, the mailbox shows a useful explanation, and Retry sync starts another resumable pass. Background sync also retries an errored mailbox on a slower cadence.
If the credential stops working — Google asks you to authorize again, or your provider rotates the app password — an owner or admin can open Email → Settings and reconnect. This refreshes the existing Connection in place, so your imported mail, rules, AI access, and mailbox settings stay intact. Afterwards, return to Email and click Retry sync if the mailbox was showing an error. Reconnect with the same address (and, on Google, keep the Gmail product selected); to replace the mailbox with a different address, disconnect this mailbox first.
Search (press / to jump to the box) covers all mail — every folder except Spam and Trash — and matches subjects, participants, and the full text of every message in the index. Terms combine, quotes match exact phrases, and the familiar operators narrow things down: from:, to:, subject:, label:, has:attachment, is:unread, is:starred, before:/after: with a date, and in: to pick a folder (in:archive, in:trash, …). So from:acme has:attachment after:2026-01-01 invoice finds the attachment-carrying Acme invoice threads from this year, wherever they were filed. AI Employees get the exact same grammar through their mail search tool.
Message bodies are rendered safely — scripts are stripped and remote images stay blocked behind a Show images click, so a tracking pixel can't phone home just because you opened a message.
The Drafts review queue
If the server loses ownership or restarts during a paced send, the interrupted draft is marked failed. Check Sent before sending that draft again: the mailbox may already have accepted it. Drafts that had not started sending keep their existing pace.
AI Employees write drafts; you decide what actually goes out. Drafts opens as a review queue built for that job — one row per draft rather than one per thread, so a night's work is a single scannable list instead of a folder to click through.
Home → Emails keeps Drafts and Starred together. Their totals cover every company mailbox; select either count to open that view in a mailbox that has matching items. Below them, up to five recent drafts show the subject, recipients, and mailbox so you can open the thread to review, edit, and send. Mailbox rows link to each mailbox's own Drafts and Starred views. Drafts already queued for sending leave the Drafts count; failed sends return for review. The section follows mail changes live, refreshes when you return to the browser tab, and disappears when both totals are zero.
Every row shows who wrote it: the AI Employee and the Routine that produced it, next to the recipient, subject, and a preview. Filter the queue by AI Employee or by routine from the toolbar — each option carries its own count — and group the list the same way to review one routine's output as a batch. Drafts you wrote yourself show you instead; anything written before this shipped, or synced in from the mail server, reads as Unattributed rather than guessing at an author.
Press Enter to peek at a draft inline, or open it for full review: the whole message, its attachments, the message it is replying to, the Run that produced it, and the thread's AI chat — all in one panel, without leaving the queue.
Marking drafts to send, and sending everything
Tick the drafts you want and press Send selected, or take the whole filtered queue with Send all. The header checkbox selects every draft matching the current filter — not only the ones on screen — so a 300-draft queue is two clicks rather than 300.
Because sending cannot be undone, every batch stops at a confirmation that shows what a count alone hides: who is about to receive mail — a sample of the real addresses — a breakdown per routine, and the mailbox it goes out from. Past 25 drafts, or whenever you selected everything matching a filter, the confirm button stays disabled until you acknowledge the size explicitly.
Confirming adds the drafts to a durable send queue instead of releasing them together. The first email waits a random one to two minutes; after every attempt, Genosyn chooses a fresh one-to-two minute pause before the next. A progress bar stays at the top of Drafts with sent, failed, and remaining counts, the next-send countdown, and an approximate finish time for the whole queue. You can leave the page or restart the app without collapsing the remaining mail into a burst.
A draft with no recipient can never be selected: its checkbox is disabled rather than being silently dropped at send time. Those drafts collect in a pinned Needs attention group along with anything the mail server refused, so nothing vanishes without being accounted for. Drafts disappear from the review list as soon as they enter the send queue, leaving the page ready for more review. You can add newly approved drafts while sending is in progress; they join the same paced queue and its finish estimate updates automatically. The progress bar disappears when the queue finishes. A failed attempt returns to Needs attention with the server's reason while the rest of the queue continues.
Sending refuses suppressed recipients
Every send from this mailbox is checked against the company's suppression list — the addresses that unsubscribed, hard-bounced, or were marked do-not-email. The check sits at the one outbound choke-point, so it covers a Member pressing Send, a bulk send from the Drafts queue, a sequence step, and an AI Employee's mail tools identically, and it runs when the message actually goes out rather than when the draft was written.
A single message is refused all or nothing: if any recipient in To, Cc or Bcc is on the list, the send fails and names the addresses, rather than quietly delivering to the rest. A bulk send skips the blocked drafts and tells you which ones. Manage the list, and read the unsubscribe and bounce rules, under Deliverability.
Keyboard, bulk actions, and ⌘K
Mail is keyboard-drivable end to end. In any list, j and k move, x selects, e archives — or sends, in Drafts — # trashes, s stars, u toggles read, o opens a draft for review, c composes from anywhere in mail, and Esc clears the selection. Press ? for the full list. Shortcuts pause automatically while you are typing in a field or a dialog is open.
The inbox has the same multi-select: tick rows — shift-click takes a range — then archive, trash, star, or mark read across all of them in one action, instead of one thread at a time.
⌘K runs mail actions as well as finding pages: compose, sync the mailbox, jump to any folder, and — when something is selected — act on that selection. In the Drafts queue it offers Send all drafts directly.
Quick filters and saved searches
Above the thread list, one-click chips narrow what you are looking at — Unread, Starred, Has attachment — scoped to the folder you are standing in. They are not a separate filtering system: each chip writes the same operators you could have typed, so is:unread from a chip and is:unread from the box are the same query.
Any search you can type, you can keep. With a query in the box, press Save search, give it a name, and it becomes a chip you can click from then on. Saved searches are yours alone — they are stored per person, so a shared mailbox does not turn into a shared list of everybody's shortcuts — and hovering one reveals an × to remove it.
Every email arrives already triaged
You do not have to ask. As each email lands, an AI Employee reads it once and puts a short summary and a row of action buttons at the top of the thread — the next steps that this email actually deserves. A customer asking to be billed gets Create the invoice. Someone asking what it would cost gets Draft an estimate. A newsletter you never signed up for gets Unsubscribe. Anything that needs an answer gets Prepare a reply, with the reply already written.
The buttons vary because the reasoning does. There is no fixed list per sender and no rule to write: the employee reads the email, decides what a person would do next, and offers up to four things. Often the honest answer is none, and then you just get the one-line summary and a category chip.
What a button does when you press it:
- Prepare a reply — puts the exact reply in Needs you, where an owner or admin can edit, send, ask the employee to revise, or discard it. It exists only in Genosyn until they press Send now; Gmail and IMAP Drafts stay untouched.
- Create the invoice / Draft an estimate — pulls the line items out of the email, matches the sender to a customer (or creates one), and opens the draft for you to check. Drafts carry no number and post nothing to the ledger until you issue them.
- Unsubscribe — sends the sender's own one-click unsubscribe request. It is only ever offered when the email carries a verified, signed one-click header, so it cannot become a link the email talked us into visiting.
- Archive, Star, Label — ordinary triage on the thread.
- Hand to an employee — starts a handover with the instruction already written.
Email is untrusted text, and it is treated that way. The employee reading it gets one submission tool and nothing else — no repositories, no secrets, no browser, no company tools — so an email that tries to give instructions is evidence about its sender, not a command. It also cannot choose its own affordances: whether Unsubscribemay be offered at all is decided by Genosyn before the employee ever sees the email.
Choosing who reads, and turning it off
Email → Settings → AI analysis is on for every mailbox. Leave the employee picker on Choose automatically and Genosyn uses whichever employee you have granted the most access to — so a mailbox works the day you connect it. Pick one explicitly when you want a particular voice on your replies, and pin one of their models when you want a particular brain. The card always tells you who would read the next email to arrive, so an on switch never means nothing is happening. Turn it off and new mail simply arrives plain.
AI chat on every email
Open any email and its Ask AI chat is already docked beside it. Type what you want directly — “summarize this email”, “draft a reply”, “make this draft shorter and friendlier”, or “label and archive this”. Type @ when you want to choose a particular AI Employee. The employee you tagged stays on that email until you tag somebody else. Type # to attach a product area or company resource to the instruction, or /new by itself to clear this email's AI context. Use several # tags when the work crosses products—for example an account, Invoices, and a Workspace channel. The same panel sits beside every Routine, where it answers about the schedule and the Run log instead.
Every email has an independent chat, including each item in the Drafts review queue, so instructions and replies never bleed into another conversation. The employee already has the opened email and current draft in context — no ids or copy-pasting. With Draftaccess it can rewrite the actual draft in place, and the review pane refreshes with the result. An employee without mailbox access can chat but cannot see or change the email. Everything it actually does appears as a small action pill under its reply.
A visible working status stays beside the composer while the employee replies, including after text starts appearing. You can keep typing, attach files, and press Queue message to add a follow-up. Pending messages appear in order above the composer; remove any message before it starts. Each one sends after the reply ahead of it finishes. Switching emails or navigating elsewhere in the app keeps the queue with its original conversation. If a reply fails, pending messages stay queued until you resume them.
Replies can also carry action buttons — concrete next steps the employee proposes that run with your authority when you click them: open a pre-filled reply, send a draft it just wrote, archive or label the thread, start a handover, or create an inbox rule it spotted a pattern for. That is the human-in-the-loop sweet spot: an employee on the default Draft level can prepare and propose a send, and the send happens only when you press the button. Buttons that consume something (send, triage, handover, rule) are marked done after they run, so a reload can't re-arm them.
Files go both ways. An employee can open anything attached to the email itself — a supplier form, a signed order, a statement — without you downloading and re-uploading it. Ask it to fill in a PDF form that arrived on the thread and it reads the form's fields, completes them from what your company already knows, and hands the finished file back as a download on its reply. It can attach that same file to a real draft, so the reply leaves with the paperwork on it. If the blank form isn't on the thread at all, the employee can search the web for the current version, check the page, and download it to work on.
You can attach files to the chat too — the paperclip in the composer. Text, Markdown, CSV and PDF contents are read directly; anything else is announced by name so the employee knows it arrived. Files in an email's chat are visible to anyone who can open that mailbox, since the conversation belongs to the email rather than to one person.
Picking the model. When the tagged employee has more than one connected AI Model, a selector appears under the composer. It defaults to that employee's active model, and an email's chat stays on whichever model answered last — so reopening it days later does not quietly continue on a different brain. Tagging a different employee switches to their models.
A reply in progress belongs to the server, not to your browser tab. Work that takes a while shows as working beside the email; if the connection drops, the panel says reconnecting and picks the same reply back up when it lands — closing the panel, switching threads, or reloading the page is safe. Each email thread is answered independently, so a reply running on one email never holds up the one you are reading; only a second message on the same email waits its turn, and it waits instead of asking you to send it again. Replies that genuinely could not run — the server restarted mid-answer, or the employee stayed busy for several minutes — say so plainly and offer Try again, which re-sends that same instruction.
Handing a thread to an AI Employee
Open any thread and click Hand to AI. Pick an employee, write a short instruction, and choose what it should do:
- Do the work and prepare a reply. The employee handles the underlying request through its Grants, such as preparing a Customer and quote or starting a Repository Work session, then puts the resulting reply in the Decision stack. It creates no mailbox draft and cannot send from this handover, even with a Send Grant.
- Prepare a reply for review. The employee writes the exact reply inside Genosyn's Decision stack. Nothing is saved to Gmail or IMAP Drafts. Review and edit it there, then select Send now or Discard. This is the default and the safe way to put AI on your inbox.
- Reply directly. After completing the underlying work, the employee may send if its Soul and your instruction authorize that kind of reply. Otherwise it puts the exact proposed reply in the Decision stack for review. Only offered to employees with Send access.
- Triage. No writing — the employee reads the thread and files it: applies a label, archives, stars, or marks it read.
A handover you start runs with the employee's Soul and Skills, while every action is limited by both your current access and the employee's Grants. Starting or retrying one requires a logged-in browser session. Progress and results appear on the thread and on the AI handovers page, and Genosyn notifies you when the handover finishes. Paused mailboxes and active Standdowns defer queued work; removed Grants or changed rules are checked again before it starts.
A handover created automatically by a rule begins differently: it can read the new email, but it cannot change records, start Repository work, create a mailbox draft, or send. If the email only needs an answer, it puts the exact reply in the Decision stack. If the request needs underlying work — a customer bug report, for example — it first creates a work review with the evidence and plan. Approve & start authorizes that work; after it finishes, the proposed customer reply returns as a separate email review. Only Send now sends it, with no Gmail or IMAP draft created first.
Ready email responsibilities are assigned automatically by default as AI Employees gain a connected AI Model and the required Grants, once the mailbox and its AI analysis reader are ready. This covers quote requests, customer code issues, sales enquiries, confirmed spam, and unwanted newsletters. Open Proactive to review or customize those assignments. Turning Automatic setup off only stops future automatic assignments; existing work keeps running until you pause it individually. Historical mail is never replayed by setup. If preparation needs missing information, the employee can raise a Decision for a Member. That answer records the missing information; it does not approve the work or perform a send.
Giving AI Employees mailbox access
Under Email → Settings → AI access, grant the employees who should be able to act on the mailbox, at one of three levels:
- Read. Browse and search threads and labels — no changes.
- Draft. Also write drafts, apply labels, archive, star, and mark read. The default: an employee can triage the inbox and put a finished reply in the thread, but a human still sends it.
- Send. Also send mail on the account's behalf. Reserve this for employees trusted to speak for the company unattended.
An employee used for a rule's AI judgment needs a connected AI Model and at least Read access to that mailbox. The rule editor shows both beside every employee and disables anyone who is not ready, so a broken AI judgment step cannot be saved for future mail.
The level covers every route an employee has to the mailbox, not just the mail tools. The Google connector exposes its own gmail_* tools on the same account, and once you connect a mailbox here those tools answer to the level you set — an employee on Draft is refused a send whichever tool it reaches for. An employee you never granted is refused outright, even if it holds a grant on the underlying Google Connection.
Rules — automating the inbox
A rule runs on every new message that arrives: when an email matches these conditions, do these actions. Static filters match on sender (including an exact email address), recipient, subject, body text, and whether there's an attachment. The AI category filter reuses the completed incoming analysis without another model call; it only matches while analysis is enabled and the message has a successful result. Every filled filter must match. You can then turn on AI judgment, choose an eligible AI employee, and describe the messages that count in plain language. Static filters run first; the AI Employee sees only mail that passes them, and its answer must also be yes before any action runs. Each message that reaches AI judgment uses the employee's active model, so narrow static filters are also the simplest way to control cost on a busy mailbox.
For example, create a rule called Remove marketing spam, turn on AI judgment, and write “Legitimate marketing or newsletter email I did not ask for; exclude receipts, security alerts, suspicious spam, and messages from people.” Add Unsubscribe safely and, if you want, Archive. Static filters are optional, but adding one is a useful way to narrow what the AI Employee has to review. Matching rules normally compose, so labelling, filing, safe unsubscribe, and handovers can work together. An enabled exact-sender Spam rule takes priority and stops broader proactive work on that message. The employee's mail_block_sender tool creates this mailbox-local rule after filing confirmed spam; disable or delete it under Email → Rules to unblock. It does not create an outbound Suppression.
Rules vs. Routines
Rules are reactive — they fire when mail arrives. For scheduled email work (“every morning, summarize yesterday's unread support threads”), give an employee a Routine instead. Genosyn's automatic starter Routines use the safe preparation ceiling: any reply or fresh outbound message becomes an exact Decision-stack review and never a Gmail or IMAP draft. A custom unrestricted Routine can still use the mailbox actions allowed by its Grants and company Policies.
What employees can do with mail
Granted employees get a mail tool on the built-in genosyn MCP surface, with operations to list accounts, search and read threads, write drafts, triage (label / archive / mark read), edit existing drafts, propose the email chat's action buttons, and — with send access — send. Search runs over the same full-text index humans use and takes structured filters (sender, recipient, date range, label, has-attachment), so an employee can answer “what did the vendor say about pricing last quarter?” without a human forwarding anything. Every action an employee takes is checked against its grant level and recorded in the audit log and the employee's journal, so you can always see what it did after the fact.
Proactive email work has a stricter, server-owned boundary regardless of those general capabilities. Its review turn uses request_mail_review to hold an exact reply or fresh outbound email inside Genosyn, and approved underlying work must use the same route for the final customer message. A mailbox Grant cannot turn that review into an unattended send. The Connection, mailbox Grant, exact source, attachments, Suppressions, and company Policies are checked again immediately before delivery.