MailCraft 0.8.2 in short: the public beta, for Microsoft accounts (testers welcome; sign up in #11)
- Advanced Search, date ranges and days in words, and search in Subfolders or the Current Mailbox (#329, #493).
- Safe Senders and Blocked Senders, per account (#504, #516), and sender warnings above suspicious mail (#508).
- Pictures in the message you write (#547), HTML signatures (#448), Insert › Date & Time and Review › Word Count (#507).
- Merge duplicate contacts (#506); forward several messages at once (#360).
- One MailCraft at a time, as your system's mail program, and
.emlfiles opened to read without filing (#505, #515). - A large mailbox opens faster and closing no longer hangs (#519, #586).
- Safer: agents ask before taking away what you are writing (#494), and server certificates are checked by your operating system (#501).
- And many more fixes, listed below.
What's new
- A large mailbox opens faster: about a third less time before the window shows it, on a made-up mailbox of 64,000 messages (1.35 s to 0.84 s with a warm disk cache). The check that nobody else wrote the file runs in the background, only the Inbox's newest messages have their text read at once with the rest following in the background, the content folder is checked once the window shows, and the search index starts after the first frames (#519).
- A message file (
.eml) opened from the file manager, or handed to a running MailCraft, now opens in a read-only window of its own without being filed: nothing is added to your mailbox, and closing the window leaves no trace. Move to Folder files it into a folder you choose; Save As writes the file. Pictures on the web are not downloaded and attachments are opened once it is filed (#515). - Pictures in the message you write. Insert › Pictures puts a picture in the text, and Ctrl+V pastes a picture you copied (a screenshot, say) when nothing else is on the clipboard. It sits in the line like a letter: the caret goes over it, Backspace and Delete remove it, Undo brings it back. It goes out as part of the message (SMTP and Microsoft accounts alike), stays in drafts, and a plain-text copy says
[picture]. Pictures are PNG, JPEG, GIF or WebP, up to 5 MB each, 20 MB and 30 per message. A picture wider than 1920 pixels, or over 5 MB, is made smaller to fit; an animated GIF is never flattened and is refused when over the cap (#547). - Safe Senders and Blocked Senders per account. Each account now has its own two lists, and Junk E-mail Options says whose are in view (a drop-down when there is more than one account); Block Sender and Never Block Sender change the lists of the message's account, and new mail is sorted by the lists of the account it came to. The lists you had for the whole mailbox are copied to every account when the mailbox is opened, and the old lists are then dropped. Microsoft 365 keeps these lists on its server, but Microsoft Graph offers no way to read or change them, so they are not yet kept in step with Outlook on the web (#516).
- Search by a range of dates. After
received:the search box now takes a range of days, as Outlook writes one:received:10/1/2026..10/22/2026(or2026-10-01..2026-10-22) finds what came in from the first day to the last, both included, andreceived:>=10/1/2026orreceived:<=10/22/2026what came in from or up to a day;>and<leave the day itself out.received:now goes by the day a message came in, not the day it was sent (#329). - Advanced Search. The button at the right of the search box opens a panel under it, as in Outlook: Search in, From, To, Subject, the days a message was received, Attachments and words in an attachment's name, Categories and Body, and with Add filters Cc, Read status and Importance. It shows what the box already asks for; Search writes what you changed back into the box as keywords and leaves the rest of what you typed as it was (#329).
- Dates without a year, and days in words. A date without a year in the search box is this year's, as in Outlook:
received:10/22,received:10/1..10/22,on:10/22. Afterreceived:you can also writetoday,yesterday,"this week","last week","this month","last month"or"this year"(the two-word ones in quotes); weeks start on the first day of the week chosen in the options (#329). - A calendar beside each date field. The date fields of appointments, meetings, tasks and contacts, and the two days in Advanced Search, have a calendar beside them, as in Outlook: pick a day with the mouse or with the arrow keys and Enter; Page Up and Page Down change the month, Today and None are under it, and Escape closes it (#329).
- A few features have new, plain names: Office Account is now Account, Quick Parts is Saved Text, Quick Steps are Action Shortcuts, Immersive Reader is Focus Reading, and the Scheduling Assistant is Find a Time. Scripts and agents use the same command ids as before (#521).
- Safe Senders and Blocked Senders. Home › Delete › Junk now has Block Sender, Never Block Sender, Never Block Sender's Domain and Junk E-mail Options, where both lists can be added to and taken from, an address or a whole domain at a time. New mail from a blocked sender goes to Junk E-mail as it arrives, and a safe sender's mail that arrives in Junk E-mail goes to the Inbox, moved on the server as your own moves are (never in a shared mailbox, and never mail that was there before: an account's first download, however long it takes, is left as the server has it). The lists are kept on this computer with your mailbox, and a domain means that domain only, not its subdomains (#504).
- The window comes up at once and shows how far a large mailbox has got as it opens; File › Open reads another mailbox in the background, with Cancel, while the open one stays in use (#519).
- Sender warnings. A message that may not be what it seems says so in a banner above it: red when your mail server says the sender's checks failed, or the sender's name hides another address (another address in the name, or the name of one of your contacts, or your own, on an address that isn't theirs, also when the name has invisible characters, blank fillers or Cyrillic and Greek letters drawn like Latin ones slipped into it, or is padded with characters that aren't shown); amber when the check failed for a domain that asks for nothing to be done about it, or for an address that looks like one you correspond with but isn't, or a link whose text is a web address and which goes somewhere else (that link is framed, and its tip says so; a link through Microsoft's Safe Links or Proofpoint's URL Defense is judged by where it really goes). A failed check is shown even on mail that claims to come from your own address. Mail from outside your organisation has a quiet External tag beside the sender's name, and the message list marks the rows of a failed check or a hidden address. MailCraft makes no checks of its own on the network: what your mail server says, your contacts and Sent Items are what it goes by (#508).
- Date & Time and Word Count while writing. A message being written now has Insert and Review tabs, as classic Outlook does. Insert › Date & Time lists today's date and the time in eight formats, in the language MailCraft is shown in, and puts the one you pick where the cursor is. Review › Word Count (Ctrl+Shift+G, or ⌘⇧G on a Mac) shows the words, characters (with and without spaces) and paragraphs of the message, or of the selected text (#507).
- One MailCraft at a time, and MailCraft as your mail program. Starting MailCraft while it is open, clicking a
mailto:link or opening a file from the file manager brings the open window to the front instead of opening a second copy over the same mailbox. Amailto:link starts a new message with what the link says, a.emlfile is kept in the folder Imported on this computer and opens in a window of its own (opened again, it is the same copy), and a.icsor.vcffile asks before its appointments or contacts are imported. On Windows and Linux MailCraft is offered formailto:links and these files; it never makes itself the default, so choose it in the system's settings (#505). - Merge duplicate contacts. People › Merge Duplicates finds the contacts that share an e-mail address or a phone number (
+44 20 7946 0000and020 7946 0000are the same number; an address or number that more than five contacts have, such as a switchboard orinfo@, only counts between contacts of the same name, so a card imported many times is still found) and goes through them a group at a time: tick the ones that are the same person, pick the contact to keep and, where their details differ, what it keeps; e-mail addresses, phone numbers, addresses, categories and notes are all kept unless you choose one, and nothing the kept contact has is ever cut. Pick several contacts with Ctrl-click (⌘-click on a Mac) to merge just those from the right-click menu. Undo brings the merged contacts back. Contacts from a Microsoft account can't be changed here yet, so they aren't merged, and the dialog says so (#506). - Forward and Forward as Attachment with several messages selected attach them all, each whole (#360).
- Search Subfolders and Current Mailbox. The menu at the right of the search box now offers four places to look, as classic Outlook does: Current Folder, Subfolders (the folder in view and every folder under it), Current Mailbox (every folder of the account in view, a shared mailbox counting as one of its own) and All Mailboxes. Current Mailbox and All Mailboxes leave out Deleted Items and Junk E-mail. Each result of a search of more than one folder shows its folder under its time, and More results on the server asks only the account in view (#493).
- HTML signatures. In File › Signatures a signature can now be HTML: switch it from Rich text to HTML and paste or write its source, from a signature generator or your organisation's template. It goes out with its full look (tables, colours, a logo on the web), without anything in it that runs and with pixel-sized pictures removed, and the preview shows it much as recipients will. While you write a message it shows a simpler copy; if you edit that copy, it is sent instead; changing its text in File › Signatures makes it rich text again (#448).
Fixes
- When an agent names the message to forward with an
idoridsofnull, Forward and Forward as Attachment now refuse, instead of forwarding the messages selected in the window (#512). - A right click where you type now opens Cut, Copy, Paste and Select All: in the body of a message you are writing, its To, Cc, Bcc and Subject lines, the search box and every other text field. Cut and Copy are greyed out while nothing is selected; a password field offers Paste only (#557).
- Pasting into a message you are writing when the clipboard holds only a picture from a web page no longer deletes the text you had selected: the text beside the picture is pasted if there is some, and otherwise nothing changes (#557).
- Closing MailCraft with a large mailbox open no longer leaves the window hanging: it no longer waits for the tidying of the content folder that starts after opening (nothing of the mailbox is written by it), and the mailbox's memory is left to go with the program instead of being handed back message by message while the window still shows (#586).
- Closing a message, or quitting, when its saved draft was deleted for good meanwhile now asks Save Draft, Discard or Cancel, instead of closing it and losing what you wrote (#573).
- People › Email while you are writing a message now asks Save Draft, Discard or Cancel first, as New Email does, instead of saving the message to Drafts without asking (#572).
- While you are writing a message, a reply, a forward or another command that waits for its message to download no longer puts its Save Draft / Discard / Cancel question in place of a contact, task or appointment form you are filling in, losing what you typed there; it now waits until you close the form (#513).
- An agent no longer closes the message you are writing, or opens another in its place, without asking you, whatever you allowed it in advance; what isn't saved goes to Drafts first (#494).
- An agent no longer throws away what you typed in a message without asking you first (#494).
- An agent's undo or redo no longer takes away a draft you saved, or puts back an earlier version of it, unless you say yes or allowed it to delete; while you are writing that message, it can't at all (#494).
- An agent no longer closes, deletes or replaces an appointment, a contact or a task with changes you haven't saved, in the dialog or in an appointment's own window, without asking you, and can't change the time or the recurrence you are filling in (#494).
- The earlier messages shown under a reply can be selected and copied: drag over them, then Ctrl+C or Copy in the right-click menu. Before, nothing was selected or put on the clipboard (#583).
- The font chosen for text in a message being written (Arial, Calibri, Georgia, Verdana) is now what the text is drawn in, from the copy installed on this computer, or an open look-alike (Liberation Sans, Carlito, Gelasio, DejaVu Sans); with none installed, the window's own font as before (#582).
- Renaming a signature in File › Signatures keeps the new name when you press Enter, and a click elsewhere lets go of the field. Before, the name wasn't kept and the field held on to the keyboard (#579).
- In People, Ctrl+E and F3 put the cursor in People's own search box and People stays in front, instead of switching to Mail (#555).
- A Microsoft account that had never allowed MailCraft its tasks now asks you for permission, instead of its tasks never being kept in step with Microsoft To Do; and if Microsoft no longer takes the sign-in for them, File › Info offers Ask again (#520).
- In People, the search box now shows the search that filters the contacts. Before, a click outside the box lost the letters, while the list stayed filtered by them. Going between People and another place with Ctrl+1 to Ctrl+4 while you type in the search box now shows the search there (the mail's in Mail, Calendar and Tasks); before, the old letters stayed in the box and went into the other search. After Advanced Search or an agent changed the search, Ctrl+E now puts the cursor at the end of it; before, what you typed could land in the middle (#366).
- A double click held and dragged selects whole words, and a triple click whole paragraphs, with the word or paragraph clicked on staying selected whichever way the drag goes, in a message being read and in one being written. Before, the drag started again from where the button went down the second time, a character at a time (#556).
- The warning banner above a message (#508) can now be dismissed with the cross at its right. An amber caution goes away for that message; a red warning shrinks to one line you can click to open again. It is remembered with the message, and comes back if a new kind of warning appears. An agent cannot dismiss it for you.
- Files dragged onto a window from a file manager are now attached to the message being written on Wayland too, as on other systems; before, the drop did nothing there (#523).
- The opening screen shows MailCraft's real logo, and the Reminders and message windows carry MailCraft's icon in their title bar on Linux (Wayland) instead of a generic one (#519).
- A one-off "not found" for a shared mailbox is no longer reported as "Microsoft has no mailbox at this address": only Graph's own answer says that. Anything else is tried again at the next Send/Receive, and the report names the mailbox and says what happens next (#539).
- Advanced Search now says in the status bar when it cannot search; changing its days replaces every
received:keyword in the search box, not just the first; and a message selected in areceived:todaylist leaves the list at midnight instead of staying in it (#329). - Pictures that a message carries written into its HTML, rather than attached, are now shown as attached pictures are: PNG, JPEG, GIF and WebP, checked by their own bytes and capped in size and number. Nothing is downloaded for them; any other kind, or one that is damaged or too large, shows as a placeholder with its description (#533).
- The results of your mail server's checks of where a message came from (its
Authentication-Resultsand other trace headers) are now read exactly as the server wrote them, so sender images and "always download pictures" rely only on what the server itself said. - On a Mac, MailCraft no longer installs new versions by itself: it says when one is out, with a link to its page, and you install it from the disk image as you did the first time. An update that went wrong could leave MailCraft unable to start; installing by itself comes back once MailCraft's Mac builds are signed and notarized by Apple (#497).
- On a Mac, the hidden
.MailCraft.app.newand.MailCraft.app.oldan update that went wrong left beside the app are removed when MailCraft starts (#497). - An update that has put the new version in place is no longer reported as failed when the old version couldn't be kept for going back; it is noted in the log instead, and going back to the old version isn't offered after that update. An update that stops partway leaves nothing behind beside the app, and a copy that can't write to the folder it is in says a new version is out instead of trying to install it (#497).
- Sender images, and "always download pictures" from a sender or a domain, now also hold when your mail server gives no DMARC result but confirms the message is signed by the sender's domain (or the company's main domain above it), instead of treating it as unconfirmed (#459).
- Reply, Forward or Save Message As on a message that isn't downloaded yet, while offline, now says so, as other refusals do, instead of doing nothing (#360).
- When an agent names the message to forward by an id of the wrong kind (such as text) or with a parameter Forward doesn't take, Forward now refuses, instead of forwarding the message selected in the window (#360).
- A message of which only the beginning is here, opened while another was downloading, now downloads too, instead of waiting until you selected it again or the background download got to it (#360).
- The message open in the reading pane is downloaded again when an agent's or a script's command downloads another message in its place, instead of staying as it was until you selected it again (#360).
- Server certificates are now checked by your operating system, as other programs on it do: on Windows and macOS a mail server that leaves out its intermediate certificate connects (the system fetches it), and on Linux and FreeBSD the system's own certificate store is used instead of a list built into MailCraft (#404, #501).
- When you go to another tab or search, only the messages it shows stay selected, so Delete and Move take only the messages you can see. After Undo or an import, the list shows the message it selects, and a message that Send/Receive moves to another folder is no longer selected. A message you open from Tasks, People or a new-mail alert opens in its folder's All tab. Before, a message selected in one tab stayed selected in the next, where the list didn't show it, and Ctrl+click and Delete removed it too (#485).
- Escape and Enter now go to what is in front: an open list or menu (such as the recipient suggestions under To, Cc, Bcc and attendees), else a question or dialog, else the window you last clicked or typed in, which Ctrl+W, Ctrl+S, Ctrl+Enter and Alt+S now follow as well (#406).
- A click on the dimmed window behind a dialog, such as the question about keeping tasks in step with Microsoft To Do, no longer leaves that dialog and every later one unable to be clicked until MailCraft restarts; before, only Escape still closed them (#489).
- Right after you allow MailCraft to keep your tasks in step with Microsoft To Do, it no longer asks you again because Microsoft hasn't taken in your permission yet: it tries again quietly for a few minutes first (#491).
- Where
xdg-openisn't installed on Linux and FreeBSD, opening an attachment now triesgio openandkde-openonly, no longer the long-retiredgnome-open, and tells them where the file's path starts, so its name is never read as an option (#445). - Sender images, and "always download pictures" from a sender or a domain, now hold for mail that your server confirms under the company's main domain, as Gmail does (mail from
hello.shop.examplechecked asshop.example), instead of treating it as unconfirmed (#458). - In the Unread tab, the Flagged tab or a search, the messages you open or select stay in the list while they are selected, even once they are read or unflagged, until you go to another tab or search. Down goes on to the next message. Before, such a message left the list at once, and Down went back to the first message (#428).
Public beta. For Microsoft accounts (personal, or work or school) MailCraft is a working mail, calendar and contacts program, kept in step with Outlook on the web; keep Outlook to hand while you try it, and tell us in an issue if anything is lost or out of step. Much of what a daily mail program needs is still to come, and other kinds of account are welcome but not part of the beta. What works is in the README.
MailCraft for Windows, macOS, Linux, FreeBSD and the web. Every file is listed with its SHA-256 in SHA256SUMS.txt.
| Platform | File | |
|---|---|---|
| Windows 10/11 (x64, x86, ARM64) | mailcraft-<ver>-windows-<arch>.msi
| Installer for all users: Program Files\MailCraft and the Start menu; offers MailCraft for mailto: links and for .eml, .ics and .vcf files without taking them over (choose it in Settings › Default apps); uninstall from Installed apps. mailcraft-cli.exe is installed next to the app.
|
mailcraft-<ver>-windows-<arch>-portable.zip
| Portable: unzip anywhere and run mailcraft.exe; includes mailcraft-cli.exe. Registers nothing.
| |
| macOS 11+ (Apple silicon and Intel) | mailcraft-<ver>-macos-universal.dmg
| Drag MailCraft to Applications. |
mailcraft-cli-<ver>-macos-universal.zip
| The command-line tool and MCP server alone. | |
| Linux x86_64 and aarch64 (glibc 2.35+) | mailcraft-<ver>-linux-<arch>.AppImage
| chmod +x and run (if it does not start, add --appimage-extract-and-run). The .zsync next to it enables delta updates.
|
mailcraft-<ver>-linux-<arch>.deb / .rpm
| sudo apt install ./mailcraft-*.deb or sudo dnf install ./mailcraft-*.rpm.
| |
mailcraft-<ver>-linux-<arch>.flatpak
| flatpak install --user mailcraft-*.flatpak (the freedesktop runtime comes from Flathub).
| |
mailcraft-<ver>-linux-<arch>.tar.gz
| bin/mailcraft, bin/mailcraft-cli, the desktop entry, metainfo and icons under share/.
| |
| FreeBSD 15 (x86_64) | mailcraft-<ver>-freebsd-x86_64.tar.gz
| The two programs, the desktop entry and the icons. |
| Any modern browser | mailcraft-web-<ver>.zip
| The app as a static site (WebAssembly). It cannot reach mail servers from a browser: bring mail in with File › Import. |
MailCraft keeps your mailbox in its settings folder and saves as you go; one window per mailbox. With a Microsoft 365 or Outlook.com account you sign in on Microsoft's page, and the sign-in is kept by the system's credential store (Windows, macOS, and the Secret Service of GNOME Keyring or KWallet on Linux). What works, and how far each part is from Outlook, is in the README and in docs/gaps.md.
The builds are not signed with a publisher certificate yet: Windows SmartScreen and macOS Gatekeeper will ask before running them.