github backnotprop/plannotator v0.17.5

latest releases: v0.17.7, v0.17.6
16 hours ago

Follow @plannotator on X for updates


Missed recent releases?
Release Highlights
v0.17.4 Vault browser merged into Files tab, Kanagawa themes, Pi idle session tool fix
v0.17.3 Sticky lane repo/branch badge overflow fix
v0.17.2 Supply-chain hardening, sticky toolstrip and badges, overlay scrollbars, external annotation highlighting, Conventional Comments
v0.17.1 Pi PR review parity, parseRemoteUrl rewrite, cross-repo clone fixes, diff viewer flash fix
v0.17.0 AI code review agents, token-level annotation, merge-base diffs
v0.16.7 Gemini CLI plan review, install script skills directory fix
v0.16.6 Perforce support, Pi shared event API, suggested code prefill, file tree expand fix
v0.16.5 Resize handle scrollbar fix, VS Code Marketplace publish
v0.16.4 Compound planning improvement hook, GitHub Enterprise + self-hosted GitLab, dockview workspace, new themes
v0.16.3 Pi phase configuration, CLI help, untracked file discovery fix, review scroll reset
v0.16.2 Draggable comment popovers, cross-file annotation visibility, custom diff fonts, OpenCode verbose log fix
v0.16.1 SSE stream idle timeout fix for external annotations API

What's New in v0.17.5

v0.17.5 is a hotfix for a server crash affecting plannotator review on systems without Perforce installed, plus a fix for stale OpenCode plugin caches that the install script failed to clear.

VCS Detection Crash When Perforce Is Not Installed

When running plannotator review, the server detects which version control system manages the current directory. The detection loop tries each provider in order: git first, then Perforce (p4). The Perforce provider calls Bun.spawn(["p4", "info"]) to check for a workspace. On systems where the p4 binary isn't installed, Bun.spawn throws an ENOENT error that was not caught. The unhandled exception crashed the Bun server process.

This affected every user who doesn't have Perforce installed and ran plannotator review. The git provider's detection had the same vulnerability — if git wasn't in $PATH (possible on some Windows configurations), the spawn would throw before Perforce detection even ran.

Both providers now catch spawn failures and return false, allowing the detection loop to continue to the next provider or fall back to git as the default. Perforce support continues to work for users who have it installed.

Install Script Cache Path Fix

The install script clears cached OpenCode plugin packages to force a fresh download on the next run. The cache-busting targeted ~/.cache/opencode/node_modules/@plannotator, but OpenCode actually stores plugin packages at ~/.cache/opencode/packages/@plannotator. Users who ran the install script to update were still running the old cached plugin version in OpenCode until the cache expired or was manually cleared.

Both install.sh and install.ps1 now clear the correct path.


Install / Update

macOS / Linux:

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

Windows:

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

Pin a specific version:

curl -fsSL https://plannotator.ai/install.sh | bash -s -- --version v0.17.5

Claude Code Plugin: Run /plugin in Claude Code, find plannotator, and click "Update now".

Copilot CLI:

/plugin marketplace add backnotprop/plannotator
/plugin install plannotator-copilot@plannotator

Gemini CLI: The install script auto-detects ~/.gemini and configures hooks, policy, and slash commands. See apps/gemini/README.md for manual setup.

OpenCode: Clear cache and restart:

rm -rf ~/.cache/opencode/packages/@plannotator ~/.bun/install/cache/@plannotator

Then in opencode.json:

{
  "plugin": ["@plannotator/opencode@latest"]
}

Pi: Install or update the extension:

pi install npm:@plannotator/pi-extension

VS Code Extension: Install from the VS Code Marketplace. Tested with Claude Code running in VS Code's integrated terminal. Not currently compatible with Anthropic's official VS Code extension due to upstream hook bugs.


What's Changed

  • fix: catch VCS detection spawn failures when p4/git not in PATH by @backnotprop in #527
  • fix: correct OpenCode cache path in install scripts by @backnotprop in #527

Community

@Zengwenj reported the crash in #528 with a clear reproduction path and suspected cause. @xxJava confirmed the issue on both Windows and macOS and provided the full stack trace that pinpointed the exact line in p4.ts. @boris-gorbylev and @chocochu confirmed the issue on macOS with OpenCode.

Full Changelog: v0.17.4...v0.17.5

Don't miss a new plannotator release

NewReleases is sending notifications on new releases.