github backnotprop/plannotator v0.28.63

one hour ago

Follow @plannotator on X for updates

Missed recent releases?
Release Highlights
v0.28.62 Agents started from the Inbox now work on Windows, pick a model and effort when you start an agent, rules for your agents, written in your own words, post a thread's decisions on its pull request, the Inbox loads faster on a slow connection
v0.28.61 Updates now update the Claude Code plugin too, an agent's chosen face shows on every icon of it, filter the Inbox list by pull request state, Modern dark shows section bands and the Reply button, one conversation no longer shows as two agents
v0.28.60 Click a word to highlight it, a one-time Themes dialog, Settings → Rows rebuilt, tell your agent how you want your rows, starred threads as pills above the list, a pill for new messages out of view, a half-circle face picker with ten Glass colours, a new phone sidebar and reply box
v0.28.59 A quieter Agents section in the sidebar, machine names only when agents run on more than one machine, agent icons that are always gently alive and lean toward your pointer
v0.28.58 Start Codex from New message, an Agents section in the sidebar, start an agent in a folder on any drive, play audio attachments and comment at a moment, Claude Code's Plannotator tools work on Windows
v0.28.57 Pin artifacts, and see every artifact on one page, filter the list by project, date or agent, a thread shows its pull requests and their state, choose what the sidebar shows, and in what order, Ask AI starts from Side in the selection bar
v0.28.56 Questions can show trade-offs and a prototype to try, a thread with many big pictures no longer crashes the tab, Escape closes New message and keeps your draft, read threads stop being bold and keep their place, agent messages that name no thread start a new one
v0.28.55 Floating reply drafts, now a setting under Experimental, open questions sit next to Reply again, a comment box that keeps unsent comments as Drafts, choose how your list looks: Minimal, Balanced or Detailed, update an older linked machine from this Inbox
v0.28.53 Start an agent in a new folder, or from a git URL, "+" on each project row starts a session there, a reaction tray, a thread's Links, Settings → Activity, New message offers the open thread's files, Bro mode: agents write to you in plain words
v0.28.52 Start agents from the Inbox, on by default, a new reply box, Ask AI for everyone, Insights in Settings → Decision data, Plannotator reloads itself after an update
v0.28.51 Starred threads, a note when an agent's session has ended, "Back from snooze", Ask about a past decision, expand arrows in guided reviews
v0.28.50 A faster, lighter Inbox, session names across the Inbox, initiatives on the Board, earlier comments on a file, global comments on Guided Reviews

What's New in v0.28.63

TL;DR

  • New: Pair Grok Bot and other cloud agents from Settings
  • New: Hermes Agent, OpenClaw and Muse Code can use the Inbox
  • New: Add a thread to Priority to keep it on top
  • New: Tag threads, and find each tag in the sidebar
  • Off by default: Pull requests board as a table, with bulk Merge

0.28.63 brings personal and cloud agents into the Inbox. You can pair an agent that runs somewhere else, such as Grok Bot or Muse by Meta, and Hermes Agent, OpenClaw and Muse Code can now message you from the same computer. The Inbox also gets Priority, tags, replies that quote what they answer, and OpenCode in New message. It has 81 PRs. Three come from external contributors, and one of those is a first contribution: welcome @mauricedesaxe.

Personal and cloud agents

Pair a cloud agent from Settings

A cloud agent is an agent that runs somewhere other than your computer: a Claude Code routine, Grok Bot, Muse by Meta, a Hermes Agent or OpenClaw server, or any other agent you can send a message to. Settings → Cloud agents pairs one. Pick its kind, give it a name, and copy the one message Plannotator shows you. The message is shown only once. Send it to the agent and it sets itself up from a public page on plannotator.ai. A Claude Code routine gets three short pieces for its settings instead. The card then says "Waiting for to connect…" until the agent's first call, and "Connected" after that.

Once paired, the agent shows in New message's To list and in the sidebar's Agents. It can start threads, read the threads it started, was sent or was tagged in, and answer in them. It cannot answer your questions, approve anything, run anything on your computer, open your files, or read any other thread. Its messages pass through Plannotator's relay sealed end to end, so the relay cannot read them. If your computer is asleep, a read says so and a send waits at the relay until the computer is back.

To have the agent start when you write to it, add its wake address and key, then press Send a test. The thread then shows a line such as "Woke Nightly fixer · run started". Without a wake address the agent checks for new messages by itself, and your reply reads "Saved for …" and then "Delivered", like a reply to Muse Code or Cursor. Muse by Meta has no wake address, so it always checks by itself. New pairing stops the old pairing at once, and Remove cuts the agent off. A How does this work? button beside the section's title opens a five-step walk-through in pictures.

The section appears once the Inbox has reached the relay. #3138, #3178, #3187, #3197, #3212, #3223, #3254, #3270

Hermes Agent, OpenClaw and Muse Code on your computer

Three more agents can use the Inbox from the same computer.

  • Hermes Agent (Nous Research) gets the plannotator_inbox tool through a new plugin, and your reply comes back into the Hermes session that asked, as a new turn. Only your own sessions get it: the terminal, the TUI, the Desktop app and your own direct messages. Install it with hermes plugins install backnotprop/plannotator/apps/hermes-plugin --enable, then run plannotator inbox once to turn the tool on. That line installs the plugin from this repository's main branch; the plugin's README explains the reply switch plannotator inbox turns on, and how to turn it off. #3217, #3238, #3249
  • OpenClaw gets the tool in your own chats only: OpenClaw on this computer and your own direct messages, never a shared chat or a channel. Your reply arrives in the same chat as a new message, once. It needs OpenClaw 2026.11.5-beta.1 or newer. The @plannotator/openclaw package is not on npm yet; the plugin's README shows how to install it from a checkout of this repository today. #3216, #3251, #3263
  • Muse Code (Meta's coding agent in the terminal) is connected when you run plannotator inbox. Its messages show as Muse Code, with Muse's own mark. Replies don't start a Muse turn, so Muse reads your answer on its next turn, as Gemini CLI and Cursor do. #3209, #3262

Each has a row in Settings → Agents and a mark of its own in the sidebar, the list and the To list. The Inbox tool for Hermes Agent and OpenClaw starts off until plannotator inbox or Settings → Agents turns it on.

After two days of use, a one-time dialog says that your personal agents are welcome in the Inbox, with Connect one, which opens Settings → Cloud agents. It shows only while none is connected. #3280

Starting and managing agents

  • Start OpenCode from New message. To offers "OpenCode · New session" next to Claude Code, Codex and Pi, with a model and a variant (OpenCode's word for effort). Replies, Stop, the run line and Open in Terminal work as they do for Pi and Codex. It needs OpenCode 2 and the Plannotator OpenCode plugin from this release. #3186
  • Pick Codex's model and effort. The "Default model" button now works for Codex too, and Effort shows only the levels the picked model takes. #3177
  • Find a model in a long list. When the Model column lists more than 8 models, it starts with a "Find a model" field that narrows the list as you type, the way Pi's own model selector matches. #3200
  • A machine switch in To. With a linked machine, the top of New message's To list has one button per machine, with how many agents run there. Pick one to see what runs there and what you can start; an asleep machine says since when. #3257
  • Stop and Delete from the sidebar. An agent the Inbox started now has "Stop" and "Delete … session…" in its sidebar menu. Delete asks in a dialog, and its "Also archive its N threads" box is off by default. #3241
  • Rename an agent. Right-click an agent in the sidebar, or use its ⋯, and choose Rename…. The name shows everywhere the Inbox names that agent. Agents still see their own labels. #3180
  • Linked machines keep their own marks. An agent's icon and name, and a star on a thread, now live on the machine the agent or thread belongs to, so every linked window shows the same one. Starring another machine's thread used to fail with "No thread". #3234, #3246
  • Starting agents on a linked machine. Four fixes: the "+" tip no longer names the machine twice, "+" no longer opens an empty To for an asleep machine this page never read, picking an agent kind only another machine has now starts it there, and the Board's New card lists only this Inbox's projects. #3233
  • A Claude Code turn that ends in an error says so. When a session the Inbox started hits a credit, sign-in or rate-limit error, the thread gets one note with Claude Code's own words and a Try again button. A notification follows for Claude Code, Codex and Pi, under the same rules as a question's notification. #3184, #3195
  • Claude Code in VS Code's chat panel. Sessions in the Claude Code extension's panel now get the Inbox tool and are woken by your replies, as in the terminal. This has not yet been tried in a real VS Code panel. #3151, toward #3111 by @Qwenjin

Plannotator Inbox

Priority

The row menu, the phone's long-press sheet and a thread's ⋯ menu have Add to Priority. The thread moves to a Priority section at the top of the list, shown only when it holds a thread, and stays there until you remove it or archive it. Its row keeps all its marks. A toast offers Undo.

An agent can also mark a thread with send_message's new priority: true, or take the mark out with priority: false. Its instructions say to follow you: use it when you said something matters most to you, and take it out when that is over. An agent's mark is the same as yours, and you can remove it at any time. Agents never see which threads are in Priority. #3232, #3277

A one-time dialog, "Put a thread first in your list", shows how to add a thread to Priority. It comes the day after an update at the earliest, and only if you have never used Priority. #3286

Tags

A thread can now have tags. Add tag is in a row's menu and a thread's ⋯ menu: find a tag, tick it, or type a new name. Tags get their own section in the sidebar, under Starred, with each tag's waiting count; a click lists that tag's threads. Right-click a tag to rename or delete it, with Undo. Typing #Name in your own reply tags the thread too.

On the Board, "Initiative" is now "Tag", and a Board card's tag is the same tag a thread has. Existing initiatives show up as tags, with nothing to move. Agents never see a thread's tags. #3228, #3272

Reply with a quote

Press ↩ on an older message, and the reply box gets one quiet line with that message's author, time and first words. Select words in a message first, and the line quotes those words instead. Your own messages get ↩ too. The sent reply shows the same line, which takes you back to the original. The agent reads which message, or which words, you answered. A plain Reply is unchanged. #3160, closing #3109 by @Arobotmaster

See which session wrote what

A thread that several agent sessions wrote in used to show only a people icon and a count. The header now shows the sessions' marks and "N sessions"; hover, tap or focus it to see each session's name and state ("waiting on you", "working", "idle", "ended"), and click a name to filter the list to it. Each message in such a thread leads with its session's name. #3163, closing #3108 by @zane668

Comments

  • On your own messages and on questions. Select words in your own earlier message, or in any part of a question card (the prompt, the context, a choice), to comment on them. A comment never answers or settles a question, and a click on a choice still picks it. #3176
  • Files, voice and a kept draft. The comment card now takes any file, not only pictures, and has the reply box's microphone. A global comment's words and files are kept while you write, so a reload or another window opens the card with them. #2862 by @iurysza
  • Send waits for comments still saving. On a slow connection, a Send pressed while a comment was still saving went out without it, and the comment stayed behind as a draft. Send now waits, so one reply carries every comment. A review's verdict waits the same way. #3240

Bitbucket pull requests on threads

An agent can now attach a Bitbucket Cloud pull request to its thread by its URL. The row and the header show its state, checks and review, a Bitbucket PR link in a message gets a hover card, and a Board card moves to Done once its PR is merged. Bitbucket has no CLI, so the new config key bitbucketTokenCommand can read the token from a command, such as one that reads your Keychain, instead of from an environment variable or a plain-text file. The token stays in memory and never reaches the agents the Inbox starts. #3076 by @uvw, closing #3075 by @uvw

More in the Inbox

  • Filter to Not seen. The list's Filter menu has a new first row, Not seen, that shows only the bold threads. #3226
  • Accept recommended steps aside while you type. On a phone it sat just above the keyboard's Done, and one stray tap replaced your answer. It now hides while you type in a question's fields, keeps your Other… words, and adds Undo to the card's status line. #3268
  • Your reply box is yours. A draft that arrives late, or from another device, no longer drops into a reply box you already opened. It waits beside the box as Restore draft. #3250
  • HTML files open in Interact. An HTML file beside a thread now opens with the pen off, so a click does what the page says. Turn Annotate on and it stays on as you move through the thread's files. ] and [ step between files from inside a page too. #3235
  • Arrow keys between attachments. With focus on one of a message's file tiles, the arrow keys move between that message's tiles. The O keycap now shows only when no file is open. #3237
  • The agent icon picker. A click on an agent's icon now opens the picker instead of stepping through faces. A picked set icon or picture gets its own page with Use this icon, so nothing changes until you press it, and the dialog stays centred. #3227
  • Hide Starred and Projects. Customize sidebar, and the sidebar's right-click menu, can now hide the Starred and Projects sections. #3252
  • Highlighting by touch. On an iPad, a selection made with a finger turned into a highlight mid-drag and lost iOS's handles. It now waits until the finger lifts, and the selection stays. #3142
  • Picture choices open on their set. A waiting question's picture opened from a file tile or the Artifacts view now opens on the question's set, at its choice, as the zoom button does. #3255
  • Pictures inside the choices. Agents are now told to put each option's picture inside its choice, so you can pick by picture, and the hint to resend a question as picture choices fires only when the pictures really are the options. #3179, #3167
  • Two choices that start the same. Two choices with the same words before the dash were read as one answer, and the agent heard the first one whichever you tapped. Each now keeps its whole text. #3260
  • Back on a phone moves an answered thread out of "Waiting on you", and an opened earlier reply now says "Delivered to ". #3258
  • Self-managed GitLab. A merge request attached by its short form (team/project!45) now opens on the project's own GitLab host instead of gitlab.com. #3225
  • A thread's stacked PRs show one under the other in the desktop PR card, instead of squeezed side by side. #3283

Code review in the Inbox: off by default

These show only with Code review turned on in Settings → Capabilities. Until 0.29 that switch shows only if you turned Code review on before.

  • The Pull requests board as a table. A desktop's board bar gets Grid | Table. The table has a row per PR (title, author, state, checks, risk, updated, size) under each repository, with sortable columns that keep a stack together. #3243
  • Select and bulk Merge. Select on the board picks PRs, a whole repository at once or a range with shift-click. Merge N merges the picked PRs that can merge now, one at a time, after a second click to confirm; it lists what stays and why, and reports each result. #3247, #3279
  • One PR opens its own page. Clicking a single open PR in Reviews, or its tile on the board, opens one page for it: the guided review, the diff, its review thread and Details. #2743
  • Open review thread. In a thread's PR list, each open PR has an "Open review thread" line that opens its review thread, or its page in Reviews if it has none yet. #3278
  • GitLab's whole-stack view now opens more lines with the expand arrows, and compares a layer from a fork instead of saying it can't. #3242

Code review

  • Videos in PR descriptions play. A video attached to a GitHub PR description now plays in the review instead of showing as a link. Videos inside an HTML document or embed can also go full screen. #2952 by @mauricedesaxe, closing #2941 by @mauricedesaxe
  • GitLab's MR switcher and stacks. plannotator review <MR url> showed an empty switcher. It now lists the project's recent merge requests, finds the stack from them, and numbers them !12. #3248
  • Code colouring. .m files are coloured as Objective-C and .pl as Perl (they were Wolfram and Prolog). justfile, *.gradle, .zshrc and *.svg get colour, as do the fence labels patch, env, postgresql, mysql, gradle and hpp. A suggestion is coloured like the diff beside it. #3281
  • Collapse all files right away. A click on Collapse all files just after opening All changes was dropped while the code view loaded. It now applies once the view shows. #3253

Additional Changes

  • Inbox storage on SQLite, still off unless you set it. inboxSqlite in config.json now has a proof on all six release builds, and fixes for moving the files on Windows and for a 30-second wait after a hard kill. Files stay the default for everyone. #3124
  • Relay. Mailbox creation has a strict per-address limit (per /64 for IPv6), and the relay refuses plain HTTP itself. The relay is deployed on its own. #3273, #3275
  • README and docs. The README describes the Inbox as the review layer for work with many agents and names personal assistants. #3266, #3251
  • Site deploy keeps hand-uploaded files under assets/hosted/. #3276
  • CI. The Test jobs can run on self-hosted runners, never for a fork's or a bot's pull request, and TypeScript is pinned at the root. #3259, #3267
  • Tests. No test can reach the hosted relay any more, and a guard keeps it so. Several flaky and stale tests are fixed. #3274, #3282, #3284, #3224, #3231, #3269, #3285, #3288
  • Release pipeline packs and publishes @plannotator/openclaw like the Cline plugin. #3289

Install / Update

macOS / Linux:

curl -fsSL https://plannotator.ai/install.sh | bash

Windows:

irm https://plannotator.ai/install.ps1 | iex

Claude Code Plugin: The install script above also updates the plugin when claude is on your PATH. Otherwise, in a terminal:

claude plugin marketplace update plannotator
claude plugin update plannotator@plannotator --scope user

Then restart Claude Code. Inside Claude Code, run /plugin marketplace update plannotator, then open /plugin → Installed → plannotator → Update now.

Pi:

pi update npm:@plannotator/pi-extension

OpenCode: Re-run the install script above. It also clears the OpenCode 2 plugin cache.

What's Changed

  • Run the Claude Code mod in the VS Code extension's chat panel by @backnotprop in #3151
  • Show a Claude Code turn that ended in an API error in its thread by @backnotprop in #3184
  • Inbox: the folder box's never-start list keeps the folders' order by @backnotprop in #3224
  • Inbox: say "choices have no pictures" only when the pictures are the options by @backnotprop in #3167
  • Reply with a quote: say which message, or which words, a reply answers by @backnotprop in #3160
  • OpenClaw plugin: the Inbox in the owner's own OpenClaw chats, with replies coming back by @backnotprop in #3216
  • Inbox: comments on your own messages and on questions by @backnotprop in #3176
  • Inbox: tell agents to put each option's picture in its choice by @backnotprop in #3179
  • Inbox: wake a paired cloud agent by its webhook (step 1) by @backnotprop in #3138
  • Inbox: filter the list to threads you have not seen by @backnotprop in #3226
  • Hermes Agent plugin for the Inbox: tool, owner filter and native reply wake by @backnotprop in #3217
  • Notify when a launched session's turn ends in an error by @backnotprop in #3195
  • Name each session in a thread with several sessions by @backnotprop in #3163
  • Rename an agent from its sidebar row by @backnotprop in #3180
  • Inbox: a paired cloud agent gets its own agent door (step 2) by @backnotprop in #3178
  • Inbox: a paired cloud agent reaches the Inbox through the relay (step 4) by @backnotprop in #3187
  • Inbox: pair a cloud agent from Settings with one message to send it (step 5) by @backnotprop in #3197
  • Inbox: say when plannotator inbox turns on Hermes's wake switch, and how to undo it by @backnotprop in #3238
  • Inbox: Muse by Meta as a cloud agent by @backnotprop in #3212
  • Inbox: a star on a linked machine's thread lives on that machine by @backnotprop in #3234
  • e2e: the Mark read toast spec taps Undo where the toast rests, after the last Undo has ended by @backnotprop in #3231
  • Inbox: short GitLab refs open on the project's own GitLab host by @backnotprop in #3225
  • Inbox: fix starting agents on a linked machine (tip, asleep +, agent kind, Board projects) by @backnotprop in #3233
  • Inbox: an HTML file opens in Interact, and the pen keeps your choice through the thread by @backnotprop in #3235
  • Highlighting by touch waits until the selection is finished, and keeps it by @backnotprop in #3142
  • Inbox: tags for threads and Board cards (step 1: sidebar section, Add tag, the Board says Tag) by @backnotprop in #3228
  • Inbox: one PR opens its launchpad by @backnotprop in #2743
  • Inbox: pick Codex's model and effort when starting it by @backnotprop in #3177
  • Inbox: connect Muse Code by @backnotprop in #3209
  • Inbox: Bitbucket Cloud pull requests on threads, and a Bitbucket token read from a command by @uvw in #3076
  • Inbox: Customize sidebar can hide Starred and Projects by @backnotprop in #3252
  • Inbox: hide the O keycap while a file is open; arrow keys between a message's attachments by @backnotprop in #3237
  • Inbox storage: SQLite behind a setting; the compiled binary proven on six builds by @backnotprop in #3124
  • Fix two flaky tests: an early Collapse all click, and the import crash test by @backnotprop in #3253
  • fix(review): play GitHub attachment videos in PR descriptions by @mauricedesaxe in #2952
  • Inbox: start OpenCode sessions from New message, with model and variant by @backnotprop in #3186
  • OpenClaw and Hermes docs: version floor, why the tool starts off, what was tested by @backnotprop in #3251
  • Inbox: Hermes Agent's mark is its own Nous girl by @backnotprop in #3249
  • Inbox: Back takes an answered thread out of Waiting on you; an opened reply says Delivered by @backnotprop in #3258
  • Inbox: a click opens the agent icon picker, a picked icon gets a page with Use this icon, and the dialog sits centred by @backnotprop in #3227
  • Let a repo variable move the Test jobs to self-hosted runners by @backnotprop in #3259
  • Inbox Settings: Cloud agents under Agents, six kinds, one calm setup step by @backnotprop in #3223
  • Questions: keep two choices with the same words before the dash apart by @backnotprop in #3260
  • Give global comments the reply composer by @iurysza in #2862
  • Inbox: the Pull requests board as a table by @backnotprop in #3243
  • Cloud agents: How does this work? walk-through by @backnotprop in #3254
  • Close the gaps the self-hosted Test proof run found by @backnotprop in #3267
  • README: describe the Inbox as the review layer and name personal assistants by @backnotprop in #3266
  • Fix the browser smoke test: Agents link locator matched two links by @backnotprop in #3269
  • Inbox: open a waiting question's picture choice on its set from a tile or the Artifacts view by @backnotprop in #3255
  • Thread tag marks read in the same order while open and after a restart (flaky every-read test) by @backnotprop in #3272
  • Keep a linked machine's agent's face and name on that machine by @backnotprop in #3246
  • Inbox: Select mode on the Pull requests board by @backnotprop in #3247
  • Relay: a hard per-IP count on mailbox creation by @backnotprop in #3273
  • Site deploy: keep hand-uploaded files under assets/hosted/ by @backnotprop in #3276
  • Tests never contact the hosted relay by @backnotprop in #3274
  • Accept recommended steps aside while you type, keeps Other words, and can be undone by @backnotprop in #3268
  • Inbox: the person's Priority (PR 1 of 2) by @backnotprop in #3232
  • Inbox: a reply to a cloud agent with no wake address reads Saved, then Delivered by @backnotprop in #3270
  • Inbox: filter long model lists when starting an agent, as Pi's model selector does by @backnotprop in #3200
  • Inbox: Muse's mark is Meta's blue Muse squiggle by @backnotprop in #3262
  • Settings and OpenClaw README: why OpenClaw and Hermes start off; how to install OpenClaw before it is published by @backnotprop in #3263
  • Inbox priority spec: never the hosted relay by @backnotprop in #3284
  • relay: IPv6 /64 brake key, https-only Worker, live check (builds on #3273) by @backnotprop in #3275
  • Inbox: a Send waits for comments still saving, so one reply carries them all by @backnotprop in #3240
  • Tests never contact the hosted relay: unit tests' hand-built child envs by @backnotprop in #3282
  • Inbox: a thread's stacked PRs one under the other in the desktop PR card by @backnotprop in #3283
  • Colour .m, .pl, more file names and fence labels; colour suggestions like their diff by @backnotprop in #3281
  • Inbox: Stop and Delete on a sidebar agent's menu by @backnotprop in #3241
  • Inbox: bulk Merge on the Pull requests board by @backnotprop in #3279
  • feat(inbox): one-time dialog announcing personal agents by @backnotprop in #3280
  • Fix two stale browser tests: comment pictures input, Accept recommended after a note by @backnotprop in #3285
  • Inbox: "Open review thread" under each open PR in a thread's PR list by @backnotprop in #3278
  • Inbox: an agent can mark a thread Priority (send_message priority: true|false) by @backnotprop in #3277
  • Inbox To: a machine switch for linked machines by @backnotprop in #3257
  • Pages only spec: expect the window's picture policy as served (one hosted folder) by @backnotprop in #3288
  • Inbox: a draft that arrives after the reply box was opened waits behind Restore draft by @backnotprop in #3250
  • GitLab: MR switcher list and stack discovery in the review app by @backnotprop in #3248
  • Inbox: expand arrows and fork layers in GitLab's whole-stack view by @backnotprop in #3242
  • Inbox: a one-time Priority dialog in the line of one-time dialogs by @backnotprop in #3286
  • Release: pack and publish @plannotator/openclaw like @plannotator/cline by @backnotprop in #3289

New Contributors

Contributors

@uvw wanted Bitbucket pull requests on Inbox threads without leaving the token in every program's environment, filed it as #3075, and built it in three layers: Bitbucket links read as pull request refs, a token read from a command and held only in memory, and the Inbox's rows, hover cards and Board marks. A clean-room test of the agent text, in the same PR, caught a smaller model storing a Bitbucket PR as a GitHub ref, and the wording was fixed.

@mauricedesaxe reported that a video attached to a PR description showed as a bare link (#2941), then made it play in the review, with a fallback to the link whenever the video can't load.

@iurysza gave global comments pictures, files, voice and a kept draft. That work became the one comment card the Inbox now uses everywhere.

Thanks also to the people whose issues shaped this release:

  • @Arobotmaster asked for Reply to show which message, or which words, it answers (#3109)
  • @zane668 reported that a thread's header showed only a count of sessions, not their names (#3108)
  • @Qwenjin reported that Inbox replies did not wake Claude Code sessions in the VS Code extension (#3111)

Full Changelog: v0.28.62...v0.28.63

Don't miss a new plannotator release

NewReleases is sending notifications on new releases.