Sovelma, ten screens. Email as decisions and promises, not messages. The nav is Owed, Waiting, Screen, Review and Later. Rows are conversations. Every write is a Gmail object you confirmed. Native Windows. Back to the overview

01Sign-in

Sovelma
Not signed inEnter sign in · Esc quit

The consent screen will say "full access". This screen says what Sovelma actually does with it, in one line each. Safety comes from structure: there is no delete or send code, and the IMAP session is read-only.

02First run: whole history in 30–90 minutes

Sovelma
Maria Koskinen
Board deck for Thursday
Could you look at the pricing page before noon tomorrow?
12mTomorrow
Linnea, Jonas, me · 5
Re: Offsite dates
Can we lock the 14th before prices go up on Friday?
2hFri
Petra Ojala
VAT on the Hetzner invoices
Reading your history…
Jul 12
Owed is built from your whole history as it arrives. Older promises appear as the import reaches them.
Maria Koskinen · maria@vendep.example

Board deck for Thursday

Owed: you are in To, and she asked a question with a deadline

Here is the deck for Thursday. Final numbers are in the appendix, and slide 9 has the hiring plan you asked about.

Could you look at the pricing page before noon tomorrow? I would rather change it now than in the room.

Board-2026-09.pdf 2.4 MB · downloads on Enter
you@gmail.com · Reading history 61,400 / 200,000 · about 40 min left · new mail is liveJ K move · Enter open

IMAP brings only headers and text, capped at 64 KiB per message, and never attachment bytes. The inbox comes first, then history newest first. IDLE keeps new mail live during the import. Owed and Waiting are computed as the history arrives.

03Owed, the home screen

Sovelma
Session 13:00 · 12 releasednext 16:30 · 41 later
Maria Koskinen
Board deck for Thursday
Could you look at the pricing page before noon tomorrow?
3hToday 12:00Ready
Anna Lind
Contract revision
Can you sign by Friday?
2hFriReady
Linnea, Jonas, me · 5
Re: Offsite dates
Can we lock the 14th before prices go up?
8mFriResolving
Tuomas Hakala
Intro: Sovelma x North Studio
Would you have 20 minutes next week?
MonQueued
4 owed · oldest 2 days · sorted by deadline, then age
Anna Lind · anna@north.example

Contract revision

Owed since 2h · deadline Friday 26 Sep

The revised pages are attached. Two clauses changed in section 4. Can you sign by Friday?

I can send a clean PDF if the redlines are hard to read.

Prepared

She needs your signature on section 4 by Friday.

Hi Anna, I can sign by Friday. Please send the clean PDF and I will return it the same day. Sakari
Save draftEditS save to Gmail · Tab edit · J next, also prepared
you@gmail.com · live · this week 38 decisions · 1,214 handled by your filtersS save draft · Tab edit · J K move · Ctrl K

Sovelma opens on what you owe, not on mail. Each row quotes the sentence that makes it owed and shows its deadline. With prep on (P), the next three rows are prepared while you read this one, so triage runs at reading speed: read, S, J.

04Waiting, what others owe you

Sovelma
Jonas Aho
Re: Q3 numbers
Can you send the final split by Wednesday?
5d3 days quietReady
Hetzner support
Ticket 88213: VAT id
Could you confirm the reverse charge applies?
4d3 days quiet
Waiting: your last message asked something, and nobody has replied for 3 business days
me → Jonas Aho · Fri 19 Sep

Re: Q3 numbers

Waiting on Jonas for 5 days · you asked by Wednesday

Thanks for the draft. Can you send the final split by Wednesday? I need it for the board deck.

Prepared follow-up
Hi Jonas, a quick nudge on the Q3 split. The board deck goes out Thursday, so even a rough version today helps.
Save draftStop waitingS save · D stop waiting
you@gmail.com · live · this week 38 decisions · 1,214 handled by your filtersS save follow-up · D stop waiting · J K move

The other half of every promise. Sovelma notices your own questions and when nobody has answered them. The follow-up is already written. D closes the loop by hand when a thread is really done.

05Screen: decide a sender once

Sovelma
Screen · senders who have not been decided3
Amazon.de
Your order has shipped
shipment-tracking@amazon.de · 37 messages
40mReady
Wolt
Your receipt from Wolt
info@wolt.example · 52 messages
1hReady
North Studio
First note from this sender
hello@north.studio · 1 message
3hReady
Amazon.de · 37 messages since 2019 · none replied to

Decide once for amazon.de

Latest: Your order has shipped. Arriving Friday 26 September.

Compiles to Gmail
File as Receipts/Amazon, skip inbox, from amazon.de (37 already here, including archived)
Creates label Receipts/Amazon · labels 37 messages · adds 1 Gmail filter (13 → 14 of 1,000)Runs in Gmail on every device, with Sovelma closed
DecideEditKeep in inboxY decide · Tab edit · N keep
you@gmail.com · live · filters 13/1000Y decide · Tab edit · N keep · Z undo 5 s

Rows here are senders, not messages. The decision shows exactly what it will create in Gmail. After Y, this sender never reaches Screen again, on any device.

06Editing a decision, with a rejection

Sovelma
Screen · senders who have not been decided2
The Diff
What compounding feels like
thediff@substack.com · 41 messages
1hReady
North Studio
First note from this sender
hello@north.studio · 1 message
3hReady
The Diff · thediff@substack.com · 41 messages

Decide once for The Diff

Edit
Newsletters/The Diff
substack.com
substack.com sends for thousands of writers. Use the one address: thediff@substack.com
✓ Yes I toggles
File as Newsletters/The Diff, skip inbox, from substack.com (1,912 already here, including archived)
DecideEnter check · Esc cancel
you@gmail.com · live · filters 14/1000Tab next field · I skip inbox · Enter check · Esc cancel

The validator knows that a shared sending domain would file thousands of strangers. It says what to type instead. Decide stays disabled until the fields pass.

07A person, one keystroke away

Sovelma
Person · anna@north.example · North Studio

Anna Lind

41 threads since 2023 · you reply in about 3 hours · always through, never filed

You owe Anna

Sign section 4 of the contractby Fri

Anna owes you

Clean PDF of the revisionoffered 2h ago

Recent threads

Contract revision2h
Kickoff agendaSep 12
Re: Statement of workAug 28
Invoice NS-2026-07Aug 1

Files from Anna

Contract-v3-redline.pdf380 KB
SOW-final.pdf210 KB
Kickoff.pptx4.1 MB
you@gmail.com · live · anna · 3 msEnter open · Tab section · Esc back

Type "an" and Enter to land here. People are the objects you think in, so the page answers "what is going on with Anna": what you owe her, what she owes you, recent threads and files. It takes three posting lookups and no network.

08Search as you type, offline

Sovelma
Hetzner Online
Invoice 2026-09
Your invoice R0021934 is attached
3h
me, Petra · 2
Re: Hetzner VAT
The invoice shows DE VAT, should be reverse
Jul 12
Hetzner Online
Invoice 2026-08
Your invoice R0020871 is attached
Aug 3
Hetzner Online
Invoice 2026-07
Your invoice R0019550 is attached
Jul 3
Every keystroke re-runs the search · newest first · stops after one screen
Hetzner Online · billing@hetzner.example

Invoice 2026-09

Dear customer, your invoice R0021934 for September is attached. The amount of €38.49 will be charged to your card on file.

R0021934.pdf not downloaded · needs a connection
Offline · everything but downloads works · 2 decisions will reach Gmail when it is back/ search · Enter open · Esc back

Every word matches by prefix, so "hetz inv" is enough. Postings are walked from the newest end and stop at one screen, so a common word costs the same as a rare one. The count and milliseconds are measured, not decorative.

09Review: agents work, you edit

Sovelma · 9 to review
Review · asked by Claude · 3 of 12 cleared

Claude prepared 9 decisions

Nothing below has touched Gmail. Y approves the highlighted one and moves to the next.
Decide sender · wolt.exampleasked 2m ago
File as Receipts/Food, skip inbox, from wolt.example (52 already here) · new label under Receipts
Draft reply · Tuomas Hakala · Intro: Sovelma x North Studioasked 2m ago
Accept the intro and offer Tuesday or Wednesday afternoon.
Thanks Tuomas, happy to meet. Tuesday or Wednesday after 14:00 works on my side.
Follow-up · Hetzner support · Ticket 88213asked 1m ago
Nudge on the reverse-charge question, 4 days quiet.
6 more · one Y approves one card, never more
you@gmail.com · live · MCP: Claude connectedY approve · Tab edit · X decline · J K move

Any MCP agent can read, search, draft and propose. Its writes land here and nowhere else. There is no send or delete code for it to reach, so "do my email" is a safe thing to ask. You clear the queue at the speed of Y.

10Later, and the week in numbers

Sovelma
Later · arrived since 13:00released at 16:30
GitHub
Build passed on main
sovelma / windows · 2 commits
20m
Figma
Anna commented on Sovelma
"Status words could be smaller"
45m
Stratechery
The Agent Distribution Problem
Newsletters · 9 min read
1h
38 more · only replies to Waiting threads and people you owe break through
This week · Mon 22 – Wed 24 Sep

Your decisions are doing the work

38decisions you made
1,214messages your filters handled
0owed older than 2 days
3.1 smedian per decision

Decisions per week have fallen for four weeks in a row, from 212 to 38. Most new mail now comes from senders you have already decided.

Sessions

09:00 · 13:00 · 16:30. Mail between sessions waits here. Sovelma has no badge, no toast and no sound.

you@gmail.com · live · this week 38 decisions · 1,214 handled by your filtersEnter release now · J K move

Mail arrives in sessions, like Linear cycles. The numbers Sovelma shows off are the ones that should shrink: decisions made, age of what you owe, and seconds per decision. You could close the app forever and Gmail would keep running your decisions.