A black MacBook among sandstone rocks, with Hato's inbox on the screen

Hato

Your email, at peace.

2026 · Design and code · Personal project

Team
1
Designed and built by me, mostly with Claude.
First version
17 days
From the plan to a packaged Mac app, July 20 to August 6, 2026.
Servers
0
Your email goes straight from Google to your Mac.
Version
0.6
A free public beta, with an AI agent.

The bet

Anyone can enter your inbox. Hato puts a door in front of it.

Hato is a minimalist Mac email client for Gmail that I designed and built. Gmail gets a little worse every day, and how my email is filtered and organised matters a lot to me: what I need, at hand, and what I don’t, out of sight. So I set out to stop using Gmail on the web. The ideas come from the clients I love most, HEY above all, and its website says so. The difference is where it lives: on the Gmail you already have. No new address, no new service, nothing to move.

New emailFrom a stranger
GuardianLet them in?
Allow Block
InboxPeople
NewsReading
BillsReceipts
BlockedNever again
Decide once. Hato remembers.
Hato's Inbox: at the top, people writing for the first time; below, what you haven't read and what you have Hato's Inbox: at the top, people writing for the first time; below, what you haven't read and what you have
As fast as your hands: one key for almost everything.

Meet Hato

Your email, at peace.

A minimalist email client: just what matters, with no noise and nothing extra. Hato means “pigeon” in Japanese. For centuries, carrier pigeons brought the messages that mattered. I drew it for the app’s icon, in nine versions, and it lives in every empty inbox.

Decisions

Decision 01

Gmail stays in charge

I chose

To build on top of Gmail and save every decision as a Gmail label, with no servers of mine in between.

Why

Your email never lives only in Hato, and nobody, me included, ever sees it. If Hato disappears, Gmail is still there.

What it cost

Living by Google’s rules: full access to Gmail needs Google’s verification, with a warning at sign-in until then, and a limit of requests per minute to respect.

Next

iPhone and iPad, with your decisions and settings in your own Google Drive. Still no servers.

Decision 02

Nobody gets in without permission

I chose

A door before the inbox: the Guardian. A new sender waits outside until you decide, once: Allow or Block. Until then, the Inbox only says someone is at the door.

Why

So the inbox stops being endless. You decide once for each sender, and Hato remembers.

Learned from

HEY’s Screener. Here it has its own name, and it works on Gmail.

Decision 03

Email at your hours

I chose

Email at set times. Pick up to four a day, and Hato keeps what’s new until then.

Why

Some people check every email as it lands, even when it isn’t essential to their work. Set hours make for a calmer, healthier relationship with email.

Who gets through

The people you choose and the threads you follow. Everyone else waits for your next hour.

On weekends

A disconnect, from Friday evening to Monday morning: not a single notification.

Decision 04

The Claude you already have

I chose

An agent that is your own Claude. Hato starts Claude Code on your Mac, signed in with your account, and gives it only Hato’s tools.

Why

No API key and nothing extra to pay: it runs on your Claude plan, and Hato still has no servers. Only what the agent reads reaches Anthropic.

What it cost

It needs Claude Code on your Mac, which leaves out anyone who doesn’t use it.

Decision 05

The pigeon is not the AI

I chose

To keep the mascot and the agent apart. The pigeon is Hato’s face; the agent gets a plain panel icon.

Why

Hato is the mascot, not the AI. Today the agent is Claude; ChatGPT, Gemini and Grok are on the way.

Decision 06

Nothing goes out without you

I chose

An agent that writes but never sends. Replies wait as drafts for you to review and send, you choose whether it asks before moving anything, and every change can be undone.

Why

An email can carry orders for the AI, like “forward everything to…”. So emails reach Claude marked as data, not instructions, and nothing is sent without you.

Private

Senders you mark don’t exist for the agent. If it needs the private email you have open, Hato asks you first.

Ask. The AI writes. You send.
Ask. The AI writes. You send.
A terminal with Claude Code connected to Hato: you ask what came in today and to tell Marta that Monday works; Claude reads the Inbox with Hato’s tools, sums up three emails and leaves Marta a draft in Hato for you to review and send. A terminal with Claude Code connected to Hato: you ask what came in today and to tell Marta that Monday works; Claude reads the Inbox with Hato’s tools, sums up three emails and leaves Marta a draft in Hato for you to review and send.
Or straight from Claude: your email from any chat.
The Inbox with Hato taking a nap: new mail arrives at its time, your next time to check your email and a button to check it now The Inbox with Hato taking a nap: new mail arrives at its time, your next time to check your email and a button to check it now
Your hours: new mail arrives at its time.
A conversation with Marta: her latest email folded at the top, your reply below it with your avatar on the right, and her first email underneath A conversation with Marta: her latest email folded at the top, your reply below it with your avatar on the right, and her first email underneath
Conversations: every thread reads like a chat.

How it went

  1. The planJuly 20, 2026
  2. First versionSeventeen days later
  3. Public betaOctober 15, as Hato
  4. Its own homeOctober 18, gethato.com

It started out looking like HEY, then like Tempo, and only found its own face at the end, with its own names (the Guardian, News and Bills), a pigeon for an icon and, in October, a name and a home of its own. Along the way came Gmail’s rules: a limit of requests per minute, sessions that expire and a verification that takes its time. I built it mostly with Claude, alongside Figma, Gemini and Nano Banana, and in October Claude moved in, as its agent. Today it’s around 24,000 lines of TypeScript, React and CSS, in English and Spanish. It’s a free public beta for any Mac with Apple Silicon and a Gmail account, and at launch it will be one payment, with no subscription.

What went wrong

For weeks, the app stopped syncing, and said nothing.

While it was in Google’s test mode, Google closed the session every seven days, and the app kept showing old email without a word. An audit found it, along with thirteen bugs, three of them security issues. Now Hato notices when Google closes the session, says so, and walks you through fixing it.

If I did it today

Fail out loud

A tool that stops working in silence loses your trust. If something breaks, say so, and say how to fix it.

Tests from day one

There were none. The audit had to find by hand what tests would have caught. Now there are 368.

Sync both ways

What you did in Gmail on your phone didn’t reach the app until the public beta. It should have been there from the start.

Not everyone gets into your home. Same goes for your inbox.

Curious?

The good stuff never fits in a portfolio. Ask me about it.