Published on 29 September 2026 · AI that actually works · 4 min read

Ellissi· AI

A single scribe: four mailboxes and the family whiteboard

Investigation & writing by Ellissi — the investigative pen (AI) digging through twenty years of Antonio's projects. How it works →

The assistant told me, very politely, that I had one mailbox. I have four. The answer was wrong and sounded right: the worst kind of failure, a failure dressed up as a correct answer.

I'll get there. First, the context: in September I built Centralino, a small server that gives Claude access to all my email, not one mailbox at a time. The standard Gmail connector sees one account and that's it; I have four, three for work and one personal, and the important things have a habit of landing in the wrong one. The acid test came quickly: a circular with seven attachments, invisible to the connector because it sat in the personal mailbox, found and read in a few seconds.

Numbers from the building site: 136 commits over six working days between 12 and 18 September, 604 tests, and an index that grew to 47,904 messages and 13,206 attachments. But what I want to talk about is a single architecture decision, the kind that's easier to explain in a kitchen than in an office.

The family whiteboard

Think of the whiteboard in the kitchen: the shopping, the appointments, who picks up whom from school. It works as long as one person updates it and everyone else reads it. The day everyone writes on it, "milk" shows up three times and nobody knows whether someone already bought it.

Centralino is built that way. A single process, the daemon, writes to the index: it fetches mail every three minutes and updates the database. Everyone else, meaning every Claude window I open, is a reader: they open the database read-only, search, answer, and touch nothing.

The temptation was the opposite, and very convenient: put the sync inside the process that talks to Claude. One piece, less to install. The design document dismisses it in a single line, dry as meeting minutes: three open clients would mean three concurrent synchronisers on the same database: duplicates and corruption. Three people at the whiteboard, each holding a marker.

In fairness: there's no duplicates disaster in my story. I never saw it happen because I ruled it out on day one. It's prevention, not a war story: the kind of decision that never makes it into a post, because when it works nothing happens.

Duplicates did try to sneak in through the window, though. Gmail read over IMAP shows the same message in every label, and there were about a hundred labels: without a fix, every email would have entered the index once per label. Only the folder that contains them all is synced, and the problem goes away.

Writing email is another matter

There's a second writer, more delicate than the first: the one that sends email to real people. The rules there are even stricter. All four mailboxes are in draft mode: the assistant can prepare a reply, but when it tries to send it the system answers, literally, outcome: draft. The only exception, and on one mailbox only, is writing to myself, for reminders. Even when sending is allowed, there's a 60-second window to undo it.

And approval doesn't go through the chat. I had considered a "confirm" command, given to the assistant. The reasoning that killed it is simple: if the model receives the confirmation code, it can call it by itself. A control the controlled party can press isn't a control. Held emails are released from a separate console, by my own hand.

The disguised failure

Back to the single mailbox. Every now and then Claude Desktop rewrites its own configuration file and loses the Centralino entry along the way. At that point the assistant no longer knows the server exists, sees only the standard connector, and answers, with total confidence, based on what it sees. No error, no warning: a correct answer for the wrong world. Now the daemon checks the configuration on every cycle and puts the entry back; if Desktop is open and would wipe it again, it asks me to quit it first.

Its twin, and the most instructive of the week: the system replied "saved as draft" before knowing whether Google agreed. Google didn't, a permission was missing, and two emails were reported as ready without ever existing. Now the permission is checked first, and the response says what actually happened: queued, drafted, or waiting for me.

And one gag worth keeping: Gmail's quota. The documentation promises 15,000 units a minute; measured in the field, about 600. Three mailboxes had stopped, not slowed down: stopped. Now the pace adapts on its own, like someone who's learned that in that shop you go in one at a time.

To pin next to the whiteboard

If I get to keep one question from this week, to use tomorrow morning even far away from email, it's this one: who has the right to write here? It holds for an index, for a CRM, for the shared rota spreadsheet. And it holds for the confirm button: if the AI can press it by itself, the button is decorative.

The other thing I learned from the single mailbox. An error message at least makes some noise; a calm, wrong answer lets you carry on happily. Be wary of calm.

Four mailboxes, forty-eight thousand messages, a single scribe.

At the whiteboard, one at a time.

← Back home