Octoweb 0.18: AI email reply writer, swipe to Done
Octoweb 0.18.0 is out. Yesterday's release brought your inbox and notes into the browser. This one is about getting through that inbox faster: an AI email reply writer in the composer, a swipe to mark mail Done, the next conversation ready before you reach it, and a short sound when something you did went through.
brew upgrade --cask octoweb
Tab moved in Notes
Read this first if you indent notes with Tab: Tab no longer inserts two spaces in Notes. Tab and ⇧Tab now switch between the Notes and Mail tabs of the pane. In the Mail composer, Tab still moves between fields.
Write email replies with AI
With Mail AI on in Settings → Mail, every reply has a ✦ Write with AI button beside Send. Click it or press ⌘J, and a line opens under the text for what to say: "say yes, propose Tuesday", "decline politely", or nothing at all for the reply the conversation calls for. The AI email response streams into the body, lighter than your own text until you keep it.
Under the reply:
| Control | What it does |
|---|---|
Keep (↩) |
Puts it in the body as one edit that ⌘Z undoes |
| Shorter, Friendlier, More formal | Reworks it in that direction |
| ↻ | Writes it again |
| The text line | Any other change, such as "translate to German" |
Esc |
Discards it, or stops it mid-stream |
Once the body has words in it, the button reads ✦ Refine with AI and opens on Improve (↩), with the same controls. Rough notes become a finished email that keeps every point you made, in your order. A finished draft gets its mistakes fixed and its phrasing tightened, with as little changed as makes it better.
The writer works from the thread, the text of its PDF and plain-text attachments, a few emails you sent that person before (for tone, greeting and sign-off, not content), and your name and signature settings. It writes in the conversation's language. When the reply needs a fact that isn't in the thread, the attachments or your words, it leaves a short [placeholder] instead of inventing one.
You can leave the thread while it writes. The reply keeps coming, and the composer is back with it when you open the thread again. Write with AI works in replies, not in forwards or new mail, and nothing is ever sent for you.
Mail can't steer the assistant
Mail comes from anyone, and an email can carry text written for an AI rather than for you. So the jobs that read mail now run on two specialists with no tools at all: octoweb:mail-reader summarises and lists tasks, and octoweb:mail-writer writes replies. Text goes in, text comes out, and Octoweb acts on the answer itself. Nothing in an email reaches an agent that can browse, read your tabs, or touch the mailbox.
The sidebar assistant still gets mail for the two asks that need its tools, the daily brief and plain-language search. All mail text arrives inside an untrusted-content wrapper, and a message can no longer close that wrapper early to break out of it.
Two reader jobs changed shape along the way:
- Summarise (
s) streams in under the thread's toolbar, in place of the inbox line, and stays with that conversation while you read another. - Extract tasks has the reader list the tasks; Octoweb adds them to your notes and tells you how many.
Swipe to Done
A two-finger swipe right on a conversation in the list marks it Done, as in Apple Mail. Swipe a sender group in Other and every conversation in it goes at once, the rows folding away together.
The trackpad ticks when you've swiped far enough. Let go before that and the row slides back; a quick flick commits from a shorter swipe. On an open thread, the same swipe takes you back to the list, like its back button.
The next conversation is already open
Done, Snooze, or anything else that takes the open conversation out of the inbox now opens the next one in its place: the one below, or the one above at the end of the list. A run of e, e, e clears the inbox without a trip back to the list. With nothing left, the list shows. A thread you opened from your notes still returns you to them.
The conversations on either side of the one you're reading load ahead, so the next one shows at once. Loading ahead doesn't mark them read, and neither does a redraw, so mail you marked unread stays unread. Moving around keeps open messages, drafts and scroll position, and the list and thread animate as they change instead of redrawing from scratch.
Links and keys inside a message
- Right-click a link for Open in New Tab, Open in Background Tab, or Copy Link.
⌘-click opens it in the background. - Single-key shortcuts keep working after you click into a message.
j,k,eand the rest used to stop once focus was inside the email. Space and the page keys still scroll it. - Going back no longer blanks the pane. Back and forward do nothing in Mail, and the right-click menu drops Download, Back, Forward and Reload.
Four sounds, and only four
Octoweb now plays a short, soft sound at four moments:
- you press Send (Send later stays silent)
- a conversation is marked Done, by key, button or swipe
- an AI draft is ready in the composer
- new Important mail arrives while Octoweb is the active app
Nothing else makes a sound: not navigation, typing, or opening mail. Settings → General → Sounds turns them all off, and they stay silent when macOS's Play user interface sound effects is off.
Safer attachments
- Saved attachments are quarantined. Octoweb marks them the way Safari and Apple Mail mark downloads, so macOS Gatekeeper checks an app or script from an email before it runs the first time.
- The mail view has its own cookies. Images and anything else a message loads no longer see the cookies of your browser tabs.
Smaller changes
- Restored terminals start clean. A program that asked the terminal for its colors, type or cursor position left that question in the saved output. Replayed after a restart, the answer landed at the new prompt as junk like
10;rgb:…;2c. Replays now leave those questions out. - Audio in embedded players counts. A video in an embedded player, such as a YouTube result in Google, now marks its tab as playing. The workspace switcher lists it for a one-click jump, and agents see it in
browser_get_playing_tabs. A tab also stops counting as playing once you leave the page. - Slimmer toolbars. The Mail and Notes toolbars are 32 px tall, leaving more of the pane for mail and notes.
Upgrade
brew upgrade --cask octoweb
You can also download it from the 0.18.0 release. The complete commit list is in the changelog. New to Mail? The 0.17 release notes cover accounts, triage keys and search. For the keyboard, see the shortcut reference, or press ⌘/ in Octoweb for the live list, remaps included.
Octoweb is free and open source, for macOS.
Install it →