github backnotprop/plannotator v0.28.50

3 hours ago

Follow @plannotator on X for updates

Missed recent releases?
Release Highlights
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
v0.28.43 Voice dictation, combine and rename projects, Mark unread, full-screen threads, Q for open questions, search by type
v0.28.42 Choose how your Inbox list looks, contents for long documents, link the Inboxes on two computers, clearer search, documents outside the project open from your own machine
v0.28.40 Update works with update checks off, the thread bar shows the thread's name, agents before the project in list rows
v0.28.39 Reply from full screen, thread names lead the Inbox list, one project per Claude Code session, a redesigned code review sidebar, Call flow as cards
v0.28.38 Attach files to a reply in the Inbox, swipe through a question's picture choices, easier-to-read list rows, code on hover in Call Flow and Semantic Changes
v0.28.37 DeepSeek Harness support, save plans to Notion, AsciiDoc in annotate, browse the whole repository in code review, Go to File and Go to Definition, Tidy and hand-offs in the Inbox

What's New in v0.28.50

The Inbox opens faster, uses less memory and no longer downloads the whole thread list on every agent message. This release also brings session names across the Inbox, initiatives on the Board, earlier comments on a file, global comments on Guided Reviews, and feature dialogs that ask before turning anything on. 37 PRs, 4 from outside contributors, with a first-time contributor.

Plannotator Inbox

Faster to open, lighter while it runs

The Inbox used to load all of its code when it opened: 21.8 MB of scripts, including the guided review reader, diagrams, math and every language's highlighting. It now starts with one script of about 4.5 MB and fetches the main parts when the window goes idle. Diagrams, math and language highlighting load the first time you need them. Every agent message also used to make the window download the whole thread list again, along with your drafts and Tidy's plan. Now the server sends only the rows that changed, your drafts are read when they can have changed, and Tidy's plan when you reach for it.

These numbers come from headless Chromium on a Mac, with a large generated store (13,800 messages, 220 open threads in the busiest project). Yours will differ.

Before After
Time until the list is on screen 661 ms 283 ms
Tab memory after load 223 MB 134 MB
JavaScript memory after load 50.4 MB 19.1 MB
Network use over 60 agent messages 20.12 MB 0.93 MB
Idle CPU of the tab 2.2 to 2.5% 1.0 to 1.2%

An empty Inbox gains too: the list shows in 238 ms instead of 627 ms, and the tab takes 90 MB instead of 175 MB. On a larger test store (30,000 messages), with a thread open, JavaScript memory now grows about 7 MB over 270 agent messages instead of about 25 MB, and a new check in CI fails if it grows past 14 MB. The idle CPU drop comes from the sidebar's mascot, whose animation no longer makes the browser recalculate styles on every frame.

Threads and guided reviews open about as quickly as before, and when a thread opens, its code and math are drawn on the first paint, with no flash of plain text. The first Mermaid diagram you open takes a little longer (about 265 ms instead of 212 ms) because its code now loads then. Loading on first use adds one new way to fail: a tab left open across an Inbox update can ask for a file that has gone. When that happens it says "This page was updated. Reload to see this" where that part would show, and the rest of the window keeps working.

Reported by @navin-moorthy, who saw 1.6 GB on a large store, in #2593. #2604, #2605, #2607, #2613, #2616

In case you missed them: Mark unread and Archive

Hover a read thread for Mark unread: it goes back to New, in bold, until you next open it, and nothing is sent to the agent. An archived thread comes back on its own when an agent replies in it.

Feature dialogs ask first

Behavior change: the dialogs that introduce the Board and the Checklist no longer turn anything on. Each one offers Turn it on and Not now. Not now, Escape or a click outside changes nothing, and you can still turn the feature on later in Settings → Capabilities. If 0.28.49 turned one on for you, it stays on until you turn it off. #2598

Session names across the Inbox

A session's name now shows in the @ picker, in the tooltip on a thread row's agent marks, in Send to another session, and as the author of its messages. Rename a session and its messages follow. Claude Code's names now also come from its transcript, so a bare /rename, --name and a rename from a phone all count. Asked for by @zane668 in #2450. #2591

Initiatives on the Board

Initiatives group Board cards. The Board's new Filter menu holds initiatives and projects in one place, and you set a card's initiative from its right-click menu or from the opened card. Deleting an initiative takes one click, with Undo, and its cards stay.

Type # in the reply box, New message or New card to pick an initiative. A sent tag links to the Board filtered to that initiative, and hovering it, or tapping it once on a phone, previews its cards and threads. Your message also puts the thread's card in that initiative.

Agents can put a card in an initiative too, through the card tool or plannotator card create <title> --initiative <name>, and delete one when its work is done. Turn the Board on in Settings → Capabilities. #2619, #2630, #2633

Earlier comments on a file

When a file comes back in a new version, the comments you already sent on it stay in the comments column, in a dimmed, read-only "Earlier" list under the current ones. On a computer, the comments button counts them. The list starts folded when you have comments of your own on that file and open when you have none. The side-by-side comments column also scrolls now, so a long list is no longer cut off there, in guided reviews included. #2634

Smaller changes

  • On an iPhone, Reply no longer hides when you tap an option, and the page no longer stays clipped after a rotation. #2628
  • A reply's delivery line now reads "Read by Claude Code, 6:25 PM" when another kind of agent read it, instead of "Delivered to" the agent it was for. #2638
  • A reply from the floating box on an image, film or HTML page now tells the agent which file was on screen. You still see only what you wrote. #2645
  • An agent can snooze a thread when you ask it to, or end the snooze, on this computer or a linked one. #2648
  • With an HTML file in full screen and the comments drawer open, the reply box no longer runs over the drawer's foot. On a phone, "Write the reply" now takes you to the thread's reply box with your words kept. #2657
  • Pressing Done on an action item no longer pulls you away from a note you've gone to. #2668
  • plannotator inbox --help now tells agents they can send a video in attachments. #2649
  • The Mark read tooltips now say "Mark read / quiet", and manual steps say "yourself" instead of "by hand" ("Connect yourself"). #2651, #2614

Plannotator

Global comments on Guided Reviews

Guided Reviews have a Global comment button, in the Inbox and in the review app, for a remark on the whole review rather than a line or a file. Global comments are listed at the top and go first in what your agent receives, under ## Global comments. The review app's "+ General comment" is now "+ Global comment", and its export's ## General section is now ## Global comments, ahead of the files. If adding one fails while the review is busy, your words are kept. #2584, #2622

Open a guide you wrote elsewhere

plannotator guide import saves a guide written outside a review, from --guide with --patch, or from --snapshot. The next plannotator review of that repository lists it under Guides, and guide export --id and guide share --id work on it. Built on the prototype by @UberMouse, closing #2589. #2603

Annotate shows config and data files as they are

.yaml, .json, .toml, .ini, .csv, .log, .xml and similar files used to go through the Markdown renderer, so a # comment became a heading. Each now shows as its own text in one highlighted code block, and you can select and comment as before. .cfg and .conf stay plain monospace, because the name does not say which syntax is inside, and a file over 128 KB shows without highlighting. By @BenNewman100, closing #2586. #2587

Print HTML explainers in full

Print / Save as PDF now prints the HTML document itself, so nothing is cut off, and sibling sections start on new pages with headings kept with their content. The browser's own print menu no longer clips either, but section page breaks need the app's Print action. By @utpalsinghdev, closing #2317. #2580

Pi: reviews stay open and feedback reaches the right session

A gated annotation review opened by Pi now stays open when its tab closes or loses its connection. Feedback goes first to the session that opened the review, so an Oh My Pi task subagent no longer receives feedback meant for its parent. By @utpalsinghdev, closing #2553 and #2554. #2581

Smaller changes

  • Images attached to private GitHub PR descriptions and comments now load in plannotator review, and GitHub credentials stay on the server. By @utpalsinghdev, closing #2328. #2579
  • In a guided review in the Inbox, each file's box now fits its diff, so a 5-line file no longer sits in a tall empty box. #2632
  • Comment boxes keep your words when they close, and bring them back when you reopen the same target: the global comment on an HTML page, a line comment in a code file view, and a comment on an image region. #2611
  • Selecting text again over a comment nested inside another comment now paints correctly instead of failing with no toolbar. #2599
  • The README and the repo's remote guide now say SSH turns remote mode on by itself, WSL2 does not need it, and a published Docker port needs the variable. A VS Code devcontainer needs it only if the browser doesn't open by itself. They also say remote mode listens on every interface with no login, even over an SSH tunnel. #2642, #2646

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

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

New Contributors

Contributors

  • @utpalsinghdev fixed printing of HTML explainers in #2580, private GitHub images in #2579, and Pi's gated reviews and feedback routing in #2581.
  • @BenNewman100 reported that config files rendered as Markdown in #2586 and fixed it in #2587.
  • @UberMouse proposed plannotator guide import in #2589 and wrote the prototype that #2603 shipped, with their commit kept.

Community

  • @navin-moorthy reported the Inbox's memory use on a large store in #2593, and answered follow-up questions about what fills it.
  • @zane668 asked for session names in #2450 and followed up with the places that still showed only the agent. They also reported a blank page after commenting on an attachment in #2594. Looking into it turned up the selection bug fixed in #2599.
  • @instant-agent99 reported both Pi issues, #2553 and #2554.
  • @dougcooper asked for printable explainers in #2317.
  • @mauricedesaxe reported that images in private-repo PR descriptions did not load in #2328.

Full Changelog: v0.28.49...v0.28.50

Don't miss a new plannotator release

NewReleases is sending notifications on new releases.