Email capture

Last reviewed: 2026-10-12

Plainva can read your mailbox to get knowledge out of email and into your vault, and — since 0.4.0 — compose and send mail too. The focus stays on capturing messages as notes; a mailbox connected over IMAP is only ever read for capture (nothing in it changes, not even the unread markers) unless you configure sending.

Experimental. The mail client talks to live external accounts (IMAP/SMTP and Microsoft) that can’t be exercised in Plainva’s automated tests. It works and is used daily, but treat it as a preview: keep a backup, and please report anything that looks off.

Connecting a mailbox

Settings → your vault → Cloud accounts → Connect account… and pick the provider:

Connecting validates the login before anything is saved; the credentials go into your operating system’s keychain. The connected mailboxes and the capture settings then live in the Email area: the Mail folder setting chooses where captured emails are stored (default Mail).

Signing in on a second device. When a mailbox travels with the settings sync, its password does not come along automatically — sign-ins are only transferred if you switch the credentials sync on yourself. Such a mailbox shows a Sign in on this device button in the Email area: type the password, and Plainva checks it with the provider before storing it in the keychain. For a Microsoft mailbox the same button leads to Cloud accounts, because that is where the browser sign-in happens. When this leaves the message list empty, the same notice and the same button appear there as well — you do not have to go looking for the settings yourself.

Email accounts without a password. A setup that failed while saving could leave an entry without a password behind (Plainva 0.8.3 on the desktop). The Email area points out, once, the accounts that have no password on this device and have never fetched mail here. View shows the list. If you use such an account on another device, choose Sign in on this device — that is the right way then. Remove deletes the entry after asking, on every device that syncs this vault’s settings, never mail or files. Later hides the notice. Plainva never removes anything on its own.

Reading mail

Open the mail tab from the left action rail (mail icon) or the command palette (Open email). The list shows your inbox newest-first (unread in bold, Load more pages further). Selecting a message opens it in a sandboxed viewer:

Attachments are listed under the message with name and size. A click on one (a tap on the phone) saves the file into your vault — into the Attachments folder under the Mail folder (default Mail/Attachments); if a file of that name is already there, the new one gets a number. The original .eml (below) carries all attachments in full.

When you open a folder you have opened before, the list appears immediately from the local cache while the refresh runs in the background; a hint says “updating” until it lands — only what the server sent counts as confirmed. The same goes for a message you have already read. On the phone the newest message in a folder is preloaded in the background — it then opens with no wait, even if you had never opened it before.

On the desktop the three columns (folders · list · reader) can be dragged at their dividers; the widths are remembered per vault and survive a restart. Every column keeps a minimum width, so the reader can never be squeezed away.

When a refresh fails — no network, or the provider is throttling — the list keeps showing the last copy from this device, with a note saying so, instead of an empty pane. A message you have already read stays readable the same way. This is only ever a cache: the server always wins, nothing here is the only copy of anything, and removing the vault removes it too.

Getting a message into the vault

Three buttons on every message:

Composing and sending

Once an account can send — a Microsoft account, or an IMAP account with an SMTP host configured — you can write and send mail from Plainva:

Email in its own window

Right-click Email in the ribbon to open the mailbox in a window of its own; Open communications window in the command palette puts mail and calendar side by side.

While composing, the pop-out icon lifts the composer into its own window — recipients, subject, body and attachments travel with it, including an address you have just typed and not yet confirmed. Sending still happens in the main window: the composer hands the message over and closes, and the notice with Undo appears where you keep working. That way closing a window never decides between sending and losing.

A composer window is not restored on the next start — what it holds lives in memory. So finish a longer message, or save it as a draft. Closing such a window over a changed message asks the same question first, and so does closing any second Plainva window with a composer in it. Switching to another vault, or closing the vault, asks that question first as well; Cancel leaves the vault and the message as they are. When Plainva only loads the vault again — Rebuild the index from scratch, a changed password, a newly connected sync — the composer stays: it is out of sight while the vault loads and stands there again afterwards, with everything in it. Only quitting Plainva does not ask. On the phone Plainva asks the same question before anything takes a changed message off the screen — the back arrow and the bar, but also Choose vault in Shared content or, on a tablet, a note tapped in the navigator beside it.

Handing a note off without the mail client

You don’t have to send from within Plainva. These work on any note and need no SMTP; the note’s YAML frontmatter is never included in the message — only its text:

Signature and sender addresses

Under Settings → E-Mail → Sending each mailbox carries two settings of its own:

Which mailbox a message starts from. With more than one mailbox, From opens on the mailbox you are writing from, with its signature. Reply, Reply all and Forward start from the mailbox the message is in (in All inboxes: the mailbox of the row you opened). New message starts from the mailbox that is open in the mail tab. The message a mailing list asks for when you choose Unsubscribe starts from the mailbox the list wrote to. What starts outside the mail tab — Email this note, also for a note made with Reply as note, or an invitation from the calendar — starts from your first mailbox. You can change From before you send.

Mailbox actions

Stars/flags sync through IMAP and Microsoft; Flagged shows the server-side selection. Messages can be moved individually or in bulk. Outside Trash, Delete always means “move to Trash”; only Trash offers Delete permanently after confirmation. With Gmail, moving is a label change, and actions in All Mail can affect the message across every label—Plainva warns before the action.

Unsubscribing and undoing a send

When a message carries a List-Unsubscribe header, Plainva shows an Unsubscribe button in the reader. What happens next is what the sender declared — Plainva guesses nothing from the body and clicks nothing on your behalf: a web address opens in your browser after a confirmation, a mail address lands in the composer so you can see what goes out. Unencrypted http:// routes are dropped, because unsubscribing over an open line sends your address in the clear.

Undo send is a delay, not a recall: after you send, Plainva waits a few seconds before handing the message to the server, and during that time a notice keeps an Undo button ready. After that it is on its way and cannot be stopped — no mail program can retrieve a delivered message. If you leave Plainva in that moment (on the phone: switch to another app), it sends immediately rather than cancelling — a message you asked to send must not disappear because the app went to the background.

Snoozing

Some mail is not urgent and not done either. Snooze takes a message out of the list until a moment you pick — later today, tomorrow morning, this weekend or next week. On the desktop the entry sits in the row’s context menu, on the phone it is a swipe action as well. The Snoozed button brings them back into view; from there Bring back now returns a message to the list immediately.

Two things about it that deserve saying plainly. First, snoozing is Plainva’s own marker, not a server feature: neither IMAP nor Microsoft has such a thing. The marker travels with the settings sync, so a message snoozed on the phone rests on the desktop too — in another mail program it sits in the inbox as usual. Second, snoozing only hides the list of the folder you did it in: search and “All inboxes” still show the message. Snoozed means “not in my way”, not “gone”.

Reporting spam

Spam moves a message into the account’s spam folder and, where the server supports it, marks it with the $Junk keyword. Inside the spam folder the same button reads Not spam and brings the message back to the inbox. Both are available in the reader, in multi-select, and on the phone as a swipe action on the row.

To be honest about it: moving alone does not necessarily train the filter. Some servers learn from it, others merely store the keyword, and others reject it. After the action Plainva tells you what actually happened — “marked as spam and moved” or just “moved”. If your account has no spam folder at all, Plainva offers to create a Junk folder rather than pushing mail into an invented folder name.

Out-of-office notice

An out-of-office notice belongs on the server, not in a program that happens to be open. Plainva therefore offers it only where it survives the machine being switched off — for Microsoft accounts and for mailboxes with a Sieve server (mailbox.org, Fastmail, Nextcloud, Mailcow and others). Where a mailbox has neither, there is no switch, just a sentence explaining why.

You will find it under Settings → Email, and on the phone in the accounts area: subject, message and a date range. Without a range the notice runs until you switch it off; with one it starts and stops by itself — even if you never open Plainva again.

Your own filter rules stay untouched. In a Sieve script Plainva writes only its own section, marked with # --- BEGIN PLAINVA, and leaves everything else character for character. If it finds a section there it cannot read safely, it changes nothing and tells you.

Rules

A rule checks sender, recipient or subject and then does something: move, mark as read, flag, report as spam or move to trash. You will find them under Settings → Email.

And here is the part that matters: rules currently run only while Plainva is open, and only over messages Plainva has fetched. On the phone that additionally means: only while the app was in the foreground. So a rule filters nothing while the machine is off — the card says that on the spot instead of implying a server-side filter that is not there yet.

If a rule checks the message text, it only takes effect once you open the message: the text is not in the overview. That, too, is stated on the card.

Storing them with the provider. Where your mailbox has a Sieve server, Store with the provider turns your rules into a server-side filter that also runs while Plainva is closed. Plainva writes only its own marked section and leaves your hand-written rules exactly as they are — the same promise as for the out-of-office notice, because both share that one section.

A rule your server cannot express — a body check on a server without the matching extension, say — stays local, and Plainva names it. It is deliberately not uploaded: a script with a requirement the server does not know is rejected as a whole, which would take the out-of-office notice down with it.

Gmail rules are still set up in Google’s own settings.

With Microsoft no extra server is needed: the same button stores your rules as Outlook rules in the mailbox. Plainva replaces only the rules it created itself and leaves your own untouched — and it places them after yours, because a hand-written rule was there first. Microsoft compares with “contains” only, so “is exactly”, “begins with”, “ends with”, a rule on Cc recipients and flagging stay local there — and Plainva names them.

On the phone you create rules yourself from start to finish: in the mail settings, tap a rule and you get it as If and Then — every condition and every action is a row, and tapping one asks for field, comparison and value on sheets of their own. That is deliberately not a shrunken form: five controls side by side at phone width is how a rule gets mistyped. The last condition cannot be removed — a rule without one would match every message.

File as a note is the action no mail program has: the rule files the message as a note in your vault, with sender, date and text — the same capture as the button in the reader, only automatic. The same mail twice gives you the same note, and the message stays in its folder: what is filed is a copy, nothing is moved. A rule with this action always stays local, even on a mailbox that could run rules. That is deliberate: storing the rest of the rule with the provider would let the server move the message before there was anything to file.

Extend existing accounts

Open Cloud accounts, choose the existing account and select Add for the missing service. Existing services remain connected. Gmail continues to use its own mail login or app password. Cancelling the assistant does not disconnect completed services. A mobile file transfer keeps the source vault; it considers an existing matching destination vault or prepares a separate container. Colliding files are reviewed individually and both contents are kept. Encrypted destinations are opened through the existing pairing flow.

Sign in to Gmail with Google

A configured test build shows Sign in with Google · Test in email accounts. This access is not generally available yet. Desktop and iOS use the system browser; Android uses the native Google account picker. Plainva verifies the selected account and the actual mail permissions before adding to its existing services. A different Google account, cancellation or refused consent does not replace an existing sign-in.

Google requires full mail access for IMAP and SMTP. Sign-in stays on this device; OAuth tokens do not travel through vault sync. Email you capture as a note or EML file becomes vault content: its storage location, sharing and sync settings apply. Existing Gmail app passwords remain usable. Until the Google sign-in is generally available, Gmail is connected with an app password: switch on 2-Step Verification in the Google account, then create one through Create an app password at Google in the account form — the link opens Google’s page directly, on the desktop and on the phone.

Multiple messages, attachments and keyboard

Select several messages to mark them read or unread, move them or delete them together. Confirmed changes update the list; unconfirmed messages remain selected, with a report for each message. Cancel stops after the current batch. Reload the folder before retrying an uncertain action. If the server cannot perform a targeted move or deletion, Plainva explains why and leaves unrelated messages alone.

With attachments filters loaded messages. The notice states how many have known metadata. Missing metadata does not mean there are no attachments; further pages can contain more matches.

With a mobile hardware keyboard, Up/Down and Home/End move focus within the mail list. Enter opens the message or selects it in selection mode. Left/Right fold or unfold conversations; Escape clears selection or cancels subsequent batches. Search fields retain normal editing keys.