Follow @plannotator on X for updates
Missed recent releases?
Release
Highlights
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
v0.28.49
A checklist for each thread, a pill that shows who gets your reply, a calmer full screen, Inbox replies in T3 Code, --title for review and annotate
v0.28.48
Reply attachments that follow the draft, links to any web page on Board cards, instant theme switches, a daily anonymous ping, a faster Inbox
v0.28.47
Board lanes, Settings → Rows, a new thread header, a "Make it yours" tour step, Request guided review, Jira links on Board cards
v0.28.46
Snooze a thread, Settings → Accounts, long pastes become file tiles, HTML pages on a phone, hide the repository owner
v0.28.45
Plannotator Modern theme, a thread panel view, session names in the To picker, thread links open in place, comment on diagram parts
v0.28.44
The iPhone keyboard no longer moves the Inbox, pictures stay clear of the option card, What's new over your tailnet
What's New in v0.28.57
TL;DR
- New: Pin artifacts, and see every artifact on one page
- New: Filter the list by project, date or agent
- New: A thread shows its pull requests and their state
- New: Choose what the sidebar shows, and in what order
- Changed: Ask AI starts from Side in the selection bar
You can now pin a thread's files and pictures and find them all on a new Artifacts page. The list gets a filter, the sidebar can be rearranged, and a thread shows the pull requests its agent is working on. Attachments download from a right-click, the list marks what waits on you with one question mark, and the What's new page opens on each release's TL;DR.
0.28.57 has 18 PRs, all from @backnotprop, plus #2938, which merged ten of them together. One is a test fix, and most of #2887 is work on code review in the Inbox, which stays off in this release.
Plannotator Inbox
Pin artifacts, and the Artifacts page
You can now pin an artifact (a file or picture in a thread) to come back to it. The pin sits on a card in the thread's Artifacts grid (top left, shown on hover and always once pinned), in the file viewer's bar, and in the pane header. With pins in a thread, its Artifacts grid shows "Pinned" first, then "Everything else". With nothing pinned, the grid looks as before.
The sidebar has a new Artifacts row, above Reviews. It opens a page with every thread's artifacts, newest first and grouped by day, with All and Pinned tabs, chips for Images, Pages, Documents and Other files, Smaller and Larger, and "Show archived" in its filter menu. A tile opens its file or guided review in its thread, and Back returns to the page.
Pins are kept on this computer's Inbox, per person, so your phone and your computer show the same pins. Agents never see them. On a phone, pin from the open file: the viewer bar has the pin, and an HTML page has Pin as the first item of its full screen ⋯ menu. The Artifacts page lists this computer's threads only. #2926
Filter the list
A funnel icon now sits in the list header, left of Search. Its menu filters by Project (pick several; on the Inbox page, with two projects or more), Updated (Today, Last 7 days, Last 30 days or a custom range) and Agent (pick several; with two agents or more). Each row shows how many threads it would leave. Picks in one group add up (this project or that one), and different groups narrow each other. When a filter is on, the funnel turns the accent colour and shows how many picks are on.
The groups in the list count only what matches, and J/K and "N new" follow the threads the filter shows. Sidebar counts don't change. When nothing matches, the list says "No threads match" with Clear filters. On a phone the menu opens as a bottom sheet. The filter is remembered in this browser only. #2921
A thread's pull requests
A thread can now show the pull or merge requests its work is about. The thread's agent adds them, and you can edit the list. A row shows the state of the PR still in play (open, draft, merged or closed, in GitHub's colours) at its right end, with a small count when the thread has several. The thread header has the same mark as a button, left of Artifacts. Hover or click it for a card with each PR's state, checks and review. Stacked PRs show base first under "Stack of 3", and the others follow. On a phone, a tap opens a bottom sheet.
You can add a PR by its ref or link, or remove one with Undo. A bare #123 is refused, with how to write it instead. A thread with no PRs has Add a pull request… in its ⋯ menu. Your change wakes no one: the agent hears about it the next time it wakes. The Inbox reads a PR's state only while its row or thread is on screen, keeps it for 5 minutes, and never reads a merged or closed PR again.
Agents add PRs with a new pulls field when they send a message, and list or change them with the thread_pulls action. read_thread lists them. From a terminal, use plannotator inbox pulls ls|add|rm. #2927
Choose what the sidebar shows
Right-click the sidebar for Show in sidebar, a checkbox for each item that can hide. A tick changes the sidebar at once. The same menu has Customize sidebar…, a panel where you can turn items on and off, move them between the top and bottom groups, and start from Default, All at top or Minimal. Drag an item by its grip, or press the grip for Move up, Move down and Move to top or bottom. Inbox and Settings always stay.
Settings → General → Appearance → Sidebar → Customize… opens the same panel, which is the way in from the keyboard or a phone. Your layout is saved in the Inbox's settings, so every window and device gets it. Reset to default puts everything back. #2924
Ask AI starts from Side
To ask the agent about something it wrote, select the words in its message or in an open file and press Side in the selection bar (Copy · Delete · Comment · 👍 | Side). The thread's Ask window opens with the words quoted and the box ready to type. The agent is also told where the words came from: for a message, who sent it and the heading above the words; for a file, its name, version, line and heading.
The Ask icon is gone from a thread's top bar and from a full-screen file's bar, and Ask's card in the thread's corner (the round button on a phone) is gone too. On a computer, Side opens Ask, and in a thread that already has a chat it reopens that chat. Ask isn't on phones for now. The corner still holds floating reply drafts when Settings → Experimental → Float reply drafts is on. #2928, #2987
Download from a right-click
Right-click an attachment tile, the big picture at the top of a message's attachments, or a card on the Artifacts page to open its menu, with Download. The tile's ⋯ menu, now named "More", has the same list. Download saves an HTML page or a Markdown file as a file rather than opening it. For a file that was edited, it saves the file as it is now, and when the file is gone from disk the item reads "Download the sent version". An image's menu also has Copy image, and pasting that copy into a reply adds the same file. A touch never opens this menu.
Pictures in a message's text keep the browser's own menu, and Save Image As now saves them under their real file name instead of image.png. #2923
One question mark for what waits on you
List rows no longer have a separate ⚠ badge. What waits on you is the question mark with its count of open questions, and the action box for open action items. Each one fills in the existing colours: plain when nothing is held up, the Holds up colour when it is holding up work, and the Stopped colour when an agent is stopped on you. Its tooltip says which, for example "Holding up work: 5 questions". On wide lists, the words "Stopped" and "Holds up 3" stay beside it. #2929
What's new: the TL;DR first, and every release
The What's new page now starts each release with its TL;DR, the short labelled lines at the top of these notes. A panel on the right lists the recent releases, each with its version, date and two TL;DR lines, and a row opens that release. Under 1100 px and on a phone, a version picker in the bar opens them as a sheet. The heading shows the version you have, and when you are behind, how many releases are in between. If GitHub can't be reached and nothing is saved, the page says "Can't reach GitHub" with Try again. The Inbox reads the release list at most once a day, and makes no request with update checks off. #2932
Smaller changes
- A reaction now lands without scrolling the thread. The emoji no longer dips below the button on its first frame. When the new line is out of sight, the emoji lifts and fades at the button, and at the end of a thread the thread eases once so the line shows above the foot. #2930
- Delete on words in a linked machine's message used to fail with a raw error when that machine's Inbox was too old. It now reads "Mac mini needs an update to delete words · Update" (with the machine's name), and Update opens that machine's update dialog. #2933
- Hovering the list's title ("Inbox" or a project's name) now shows Refresh ⇧R, not only the small ↻ beside it, which is hidden until you hover. A project's list keeps its name and folder tooltip on the name. #2993
- On a phone in dark mode, a message's ⋯ menu showed solid black icons. It now shows outline icons, and the right-click menu on a computer is fixed too. #2991
- A thread's Ask state is now read once per change, shared by the Ask window and the parts that wait on it, instead of up to four times. Nothing you see changes. #2983
Pick your tab icon
Plan review's Theme tab and the Inbox's Settings → General → Appearance now have a Favicon choice: Glass (the goggles, the default), Face (the goggles face from before 0.28.56) or P (a new P icon). One choice covers plan review, code review, annotate and the Inbox. In the Inbox it applies at once, with the tab's count of new threads still drawn over it. If you had picked the old face icon, you keep it, now named Face. If you had picked Classic, you get the new P icon. #2980
In 0.28.56, plan review, code review, annotate and the Inbox showed the Glass tab icon as a full square, where plannotator.ai shows it with rounded corners. Every app now uses the same favicon.ico as the site, with its hand-pixelled 16, 32 and 48 pixel frames. Face and P stay as they were. #2992
Guided reviews
- A guide you write for
plannotator guide export --guidecan now give a chapter one Mermaid diagram. The exported page draws it at the top of the chapter's code, under a Diagram header that folds. #2887
Not yet on
This release also carries more work on code review in the Inbox. It stays off by default, and its switch stays hidden until a later release. The work covers diagrams in the Inbox's guided reviews: a review's Mermaid diagram drawn as a picture instead of shown as source, and one optional diagram per chapter, at the top of the chapter's code #2887.
Install / Update
macOS / Linux:
curl -fsSL https://plannotator.ai/install.sh | bashWindows:
irm https://plannotator.ai/install.ps1 | iexClaude 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@plannotatorThen restart Claude Code. Inside Claude Code, run /plugin marketplace update plannotator, then open /plugin → Installed → plannotator → Update now.
Pi:
pi update npm:@plannotator/pi-extensionOpenCode: Re-run the install script above. It also clears the OpenCode 2 plugin cache.
What's Changed
- Inbox guides: draw Mermaid diagrams by @backnotprop in #2887
- Inbox: filter the list (project, updated, agent) by @backnotprop in #2921
- Inbox: Download from right-click, the ⋯ menu and the viewer by @backnotprop in #2923
- Inbox: customize the sidebar (show, hide, order) by @backnotprop in #2924
- Inbox: pin artifacts and the Artifacts wall by @backnotprop in #2926
- Inbox: link PRs to threads (agents own, you can edit) by @backnotprop in #2927
- Inbox: Side in the selection bar by @backnotprop in #2928
- Inbox: one question mark for what waits on you by @backnotprop in #2929
- Inbox: a reaction lands without scrolling the thread by @backnotprop in #2930
- Inbox What's new: TL;DR and releases panel by @backnotprop in #2932
- Inbox: say a linked machine needs an update when it refuses a Delete by @backnotprop in #2933
- Train E (after 0.28.54): #2930 #2933 #2929 #2923 #2921 #2924 #2926 #2927 #2928 #2932 by @backnotprop in #2938
- Favicon picker: Glass (default), Face and P, also in the Inbox's Settings by @backnotprop in #2980
- Inbox: read a thread's Ask once per event, shared by its three readers by @backnotprop in #2983
- Apps' tab icon: the Glass icon's hand-pixelled frames with rounded corners, as plannotator.ai shows by @backnotprop in #2992
- Inbox list header: hovering the name shows Refresh ⇧R by @backnotprop in #2993
- e2e: wait for a diff row's box before reading it in the drags by @backnotprop in #2984
- Inbox: remove the Ask icon from a thread's top bar, and Ask's item in the corner by @backnotprop in #2987
- Inbox: a message's menus draw inside the window again (outline icons) by @backnotprop in #2991
Full Changelog: v0.28.56...v0.28.57