Operations

Email

Connect a Gmail account and work your inbox inside Genosyn — read threads, reply, and file mail like a normal client. Then put your AI employees on it: chat with them right beside the inbox, hand them threads to draft answers, and set rules that triage new mail the moment it arrives. Everything syncs both ways.

What this is

The Email section is a real mail client backed by your Gmail mailbox. Genosyn imports your whole mailbox into a local index and keeps it in step with Gmail in both directions: mail that arrives in Gmail shows up here within about a minute, and anything you do here — read, star, archive, label, draft, send, forward — is written straight back to Gmail. The goal is that you never need to open Gmail to work your inbox; read it there or here, act on it here, and neither drifts.

Connecting a mailbox

Email rides on the existing Google integration, so a mailbox is one Google connection that granted the Gmail product at consent time.

  1. Open Settings → Integrations and add (or reconnect) a Google connection. On Google's consent screen, tick the Gmail product so the connection carries the Gmail scope.
  2. Open Email from the section menu and pick that connection. Genosyn reads the account address and starts the first sync in the background.
  3. 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 its progress continuously, so a restart, a rate limit, or a dropped connection just picks up where it left off — and 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 and switch between them from the account picker at the top of the sidebar.

Reading and answering mail

The folder rail carries the usual views — Inbox, Starred, Sent, Drafts, All mail, Spam, Trash — plus your Gmail labels. 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 in Gmail immediately.

The Inbox header shows when the mailbox last completed a sync. Click Sync now to check Gmail immediately; the button shows the running sync until that pass completes.

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 Gmail-style 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

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.

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 Gmail, 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.

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 Gmail refused, so nothing vanishes without being accounted for. Sending runs in batches with live progress, and the result says exactly what went and what did not.

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.

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 another company resource to the instruction, or /new by itself to clear this email's AI context.

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 Gmail 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.

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.

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:

  • Draft a reply. The employee writes a reply as a Gmail draft on the thread. Nothing is sent — you review the draft and press Send when it is right. This is the default and the safe way to put AI on your inbox.
  • Reply directly. The employee composes and sends the reply itself. Only offered to employees you trust with send access.
  • Triage. No writing — the employee reads the thread and files it: applies a label, archives, stars, or marks it read.

The handover runs the employee with its full Soul, Skills, and memory, and its progress and result show up right on the thread and on the AI handovers page. You get a notification when it finishes.

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.

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. Conditions match on sender, recipient, subject, body text, and whether there's an attachment. Actions can apply a label, mark read, star, archive — and, the headline feature, hand the thread to an AI employee with an instruction and a mode.

That is how you wire up “when a support email comes in, ask an AI employee to categorize it and draft a first response”: one rule, condition to contains support@, action hand to employee in draft mode. Every rule that matches fires, so labelling and handing off compose naturally.

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: a granted employee can search, read, draft, and send through the same mailbox from any routine, no new machinery required.

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.