Follow @plannotator on X for updates
Missed recent releases?
| Release | Highlights |
|---|---|
| v0.19.10 | Revert unreviewed bypass-clear-reminder permission mode |
| v0.19.9 | OpenCode user-managed workflow, Pi model switch fix, Codex skill install, shimmer removal |
| v0.19.8 | 49 themes with syntax highlighting, keyboard shortcut registry, smart code-file path validation, remote URL notifications |
| v0.19.7 | Codex Stop-hook plan review, Codex skills, sidebar auto-close, file tree context menu |
| v0.19.6 | Non-blocking Pi browser sessions, agent picker dropdown for OpenCode, annotate-last file resolution fix |
| v0.19.5 | All-files diff view, clickable code file paths, server-side hide whitespace, non-ASCII path support |
| v0.19.4 | All-files diff type, code file viewer, hide whitespace, quick-settings popover |
| v0.19.3 | Configurable feedback messages, hide merged PRs in stacked PR selector |
| v0.19.2 | Stacked PR review, source line numbers in feedback, diff type dialog re-show, ghost dot removal, docs cleanup |
| v0.19.1 | Hook-native annotation, custom base branch, OpenCode workflow modes, quieter plan diffs, anchor navigation |
| v0.19.0 | Code Tour agent, GitHub-flavored Markdown, copy table as Markdown/CSV, flexible Pi planning mode, session-log ancestor-PID walk |
What's New in v0.19.11
v0.19.11 adds Jujutsu (jj) as a first-class VCS backend for code review and refines the review UI with slimmer separators, a cleaner header layout, and proper multi-line gutter selection. One of the two PRs in this release is from a first-time contributor.
Jujutsu (jj) Code Review
Plannotator's code review now works natively with Jujutsu, the Git-compatible VCS. When you run /plannotator-review in a jj workspace, the VCS is auto-detected and four jj-specific diff modes appear in the diff type picker:
- Current (
jj-current) shows the working-copy changes - Last (
jj-last) shows the previous change - Line (
jj-line) shows the full line of work from the current change back to the trunk bookmark - All (
jj-all) shows all local changes not yet on the remote
Compare-target selection adapts to jj's model. Instead of branch-based base selection, the picker offers remote bookmarks. The feedback exported to your agent includes jj-appropriate local diff instructions so it can reproduce the same view.
Under the hood, this required a significant refactor. Diff collection, compare-target semantics, and file-content retrieval were pulled into a provider-based VCS abstraction in packages/shared/vcs-core.ts. Git, jj, and P4 each implement the same provider interface. The review server and UI consume provider-supplied metadata instead of branching on VCS-specific flags. This abstraction makes adding future VCS backends straightforward.
For colocated repos (both .git and .jj present), jj takes priority. Pass --git to /plannotator-review to override.
- Authored by @graemefolk in #675
Review UI Refinements
Several quality-of-life improvements to the code review interface:
Slimmer hunk separators. The expand/collapse bars between diff hunks are now 24px (down from 32px), with semi-transparent theme-integrated backgrounds. Text and buttons fade with lower opacity for a subtler look that puts the focus on the code.
Cleaner header layout. Sidebar toggles (Annotations, AI, Agents) moved to the far right of the header bar, with the options menu to their left. A visual divider separates the file tree button from the repo label.
Collapse viewed files. Marking a file as viewed in all-files review mode now automatically collapses it, keeping only unreviewed files expanded.
Multi-line gutter selection fix. Click-and-drag on the gutter annotation button now correctly selects a range of lines. The previous implementation used a deprecated Pierre API that never entered the selection mode, so dragging always reported a single line.
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
- feat(review): add jj review workflows by @graemefolk in #675
- Review UI refinements: separator styling and header layout by @backnotprop in #683
New Contributors
- @graemefolk made their first contribution in #675
Community
@graemefolk built full jj support from scratch, implementing the VCS provider, diff modes, compare-target picker, and feedback export in a single well-structured PR. The VCS abstraction layer they introduced benefits the entire codebase.
@JohannesKlauss reported the multi-line gutter selection bug in #679, with a clear screen recording that made the root cause obvious.
@festive-onion requested the collapse-on-viewed behavior in #682, a small change that meaningfully improves the review workflow for large diffs.
Full Changelog: v0.19.10...v0.19.11