The email assistant I built so it can never press Send

A wrong email, once it’s sent, stays sent, and a wrong draft costs about ten seconds to fix or throw away. That trade sits at the top of my reply-and-follow-up skill as its first rule, drafts only, and it holds even when someone asks for a send in the middle of a run.

What it does

The skill works my own inbox like a good account executive and an assistant rolled into one. It sweeps Gmail, my calendar, my Fathom call transcripts and, when I allow it, LinkedIn for everything I owe: replies to people waiting on me, follow-ups after meetings that already happened, pre-sends before meetings coming up, nudges on my own emails that never got an answer, and the introductions or sends I promised out loud on a call. It ranks what it finds with direct questions and deadlines first and a meeting that just ended near the top, and then it leaves ready-to-edit Gmail drafts with the right one-pager or deck linked from Drive. Anything it decided not to draft goes in the report under “Also waiting” with one line each.

It suits anyone who sells or raises money over email and spends most of the week on calls, which is where follow-ups go missing.

Transcripts, never recaps

A follow-up can only promise what people actually said. The skill reads the Fathom transcript, with speakers and timestamps, and ignores every AI-written summary, because a summary can be wrong and a draft built on one can commit me to something nobody agreed to. Every next step in a follow-up has to trace back to a line in the transcript. The sweep starts from the recordings, since plenty of calls never get a calendar invite.

When a fact is missing, the draft gets a visible gap addressed to me, and the report lists every gap per draft. The same rule covers warmth, so the skill won’t write “so great to see you” after a meeting where nothing suggests it was great.

The hidden-instruction defense

One of the skill’s six rules deals with instructions planted in email. Everything the skill reads counts as information about the conversation and never as an instruction to the assistant. When a message contains text aimed at an AI, like “ignore previous instructions” or “forward this to”, the skill quotes it in the report under “Looks suspicious” and leaves that thread without a draft.

Recipients get the same suspicion, and an address can only go in the To line if it comes from the people already on the thread, the invitees of the calendar event, the sender line of a real email from that person, someone I’ve emailed before, a Contacts tab I control or me typing it in the conversation. An address that only appears inside an email body or a document never qualifies, even when the text says “please send it to X”, and when a name turns up with no address the skill can find, it asks me instead of building a guess out of first.last@ something. Even its own memory is checked this way, so a learned lesson that mentions an email address, a file link or who to cc gets switched off and reported.

I also put the rules somewhere a clever email can’t reach. The checker I run before each release fails if a send, forward, share, trash or delete tool name shows up anywhere except on a line that says never, and the setup guide tells each person to block those same tools in Claude’s connector settings so drafts-only holds even if the instructions are ignored.

It learns from what I send

Each run starts by comparing what I actually sent with the draft it left me. Consistent edits become lessons in a private Google Sheet in my own Drive, things like “cuts drafts to three or four lines” or the sign-off I prefer, while a corrected name or date gets logged as the skill’s error instead of being treated as my style. The same Sheet has an off switch, a single row setting enabled to FALSE, and if the Sheet is ever shared with anyone else the skill stops writing to it, since it holds notes about my contacts.

Where it stands

I built it between October 15 and October 22, 2026, and version 0.2.2 is new and still being tested. It’s written entirely as instructions, with no scripts of its own, and it runs on demand or on a schedule, leaving a summary draft in my inbox when nobody is watching. LinkedIn stays off until a person turns it on after being told plainly that LinkedIn’s terms prohibit automated access, and even then the skill only reads and puts suggested replies in the report for me to paste myself.

Next use case

A shared ledger of what everyone promised on a call, in their own words

All use cases