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 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 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 Email → 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 every conversation, so a restart, a rate limit, or a dropped connection resumes at the exact remaining email instead of replaying a whole page. Temporary Gmail 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 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 synced successfully. Click Sync now to check Gmail 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 Google asks you to authorize again, or you need to change the Gmail access granted to Genosyn, an owner or admin can open Email → Settings and click Reconnect Google. This refreshes the existing Connection in place, so your imported mail, rules, AI access, and mailbox settings stay intact. After Google confirms the connection, return to Email and click Retry sync if the mailbox was showing an error. Reconnect with the same Google address and 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 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.

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

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.

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.

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 Gmail 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. If the employee is busy with another message, yours waits its turn 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:

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

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. Rule-created handovers remain trusted automation and use the employee's Grants. Progress and results appear on the thread and on the AI handovers page, and Genosyn notifies you when the handover 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.

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, recipient, subject, body text, and whether there's an attachment. 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. Every rule that matches still fires, so labelling, filing, safe unsubscribe, and handovers 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.