Follow @plannotator on X for updates
Missed recent releases?
| Release | Highlights |
|---|---|
| v0.11.2 | Git worktree support in code review, VS Code editor annotations in review, Obsidian auto-save & separator settings, session discovery, smart file resolution |
| v0.11.1 | VS Code extension for in-editor plan review, Pinpoint mode for point-and-click annotations, untracked files in code review |
| v0.11.0 | Auto-save annotation drafts, comment popover, Obsidian vault browser, deny message framing fix, configurable OpenCode timeout |
| v0.10.0 | Short URL sharing with E2E encryption, code suggestions in review UI, CJK input method support, customizable Obsidian filenames, XDG install fix |
| v0.9.3 | Linked document navigation & annotation, VS Code diff integration, toolbar dismiss fix, automated npm publishing |
| v0.9.0 | Plan Diff with two view modes, version history, sidebar redesign, terminology cleanup |
| v0.8.5 | Pi coding agent support, auto-close countdown, image endpoint security fix, OpenCode package fix |
| v0.8.0 | Open source (MIT/Apache-2.0), annotate command, self-hosted share portal, resizable panels, mermaid controls, auto-close on approval, documentation site |
What's New in v0.11.3
This release overhauls the code review experience. The diff viewer now supports GitHub-style expandable context so you can see surrounding code without leaving the review, the file sidebar organizes changes into a hierarchical folder tree, and the worktree UX has been redesigned with dedicated controls that make it immediately clear which context you're reviewing.
Expandable Diff Context
Diff hunks in code review previously showed only the default 3 lines of surrounding context. You had to switch to your editor to understand what function or data structure a change sat inside. Now, separator bars appear between hunks showing how many unmodified lines are hidden. Hover to reveal expand buttons — expand up, expand down, or expand the entire collapsed section at once. Each click reveals a chunk of lines, syntax-highlighted and rendered seamlessly inline with the existing diff.
The feature works by fetching full file contents from a new /api/file-content endpoint and feeding them to @pierre/diffs' FileDiff component, which handles all the expansion UI and state management internally. If the file content can't be fetched (binary files, deleted files, demo mode), the diff renders exactly as before — no expansion buttons, no errors.
- Requested by @jhillyerd in #243
Hierarchical Folder Tree
The code review sidebar previously listed every changed file in a flat list. For PRs touching files across many directories, this made it hard to find what you were looking for. Files are now grouped into a collapsible folder tree that mirrors the repository structure. Each folder node shows aggregate addition/deletion stats and annotation counts rolled up from its children. Folders auto-expand when you navigate with j/k keys so the active file is always visible.
- Requested by @igor-softswiss in #161, with support from @navopw
Redesigned Worktree Controls
The v0.11.2 worktree support packed both worktree switching and diff type selection into a single dropdown, which created confusion — selecting a worktree silently replaced the dropdown's options, and there was no persistent visual indicating you'd left the main repo. This release splits that into two independent controls: a Context dropdown for switching between the main repo and any linked worktrees, and a View dropdown for selecting the diff type (uncommitted, last commit, vs branch). The Context dropdown highlights with a distinct border when a worktree is active, so you can glance at the sidebar and immediately know which tree you're reviewing.
Supply Chain Hardening
GitHub Actions in the deploy pipeline are now pinned to commit SHAs instead of mutable version tags, and Renovate is configured to keep those pins up to date automatically. This closes the supply chain risk of a compromised upstream action tag silently changing what runs in CI.
Install / Update
macOS / Linux:
curl -fsSL https://plannotator.ai/install.sh | bashWindows:
irm https://plannotator.ai/install.ps1 | iexClaude Code Plugin: Run /plugin in Claude Code, find plannotator, and click "Update now".
OpenCode: Clear cache and restart:
rm -rf ~/.bun/install/cache/@plannotatorThen in opencode.json:
{
"plugin": ["@plannotator/opencode@latest"]
}Pi: Install or update the extension:
pi install npm:@plannotator/pi-extensionWhat's Changed
- chore: pin deploy.yml actions to SHAs + add Renovate by @backnotprop in #244
- feat: hierarchical folder tree in code review sidebar by @backnotprop in #246
- feat: expandable diff context in code review by @backnotprop in #247
- feat: split worktree/diff-type into separate controls by @backnotprop in #248
Contributors
Community members who requested features and participated in discussions that shaped this release:
- @jhillyerd — #243 (expandable diff context)
- @igor-softswiss — #161 (file tree view in code review)
- @navopw — discussion on #161 (file tree support)
Full Changelog: v0.11.2...v0.11.3