github backnotprop/plannotator v0.19.27

9 hours ago

Follow @plannotator on X for updates


Missed recent releases?
Release Highlights
v0.19.26 Amp plugin production fixes, Mermaid rendering fix, Settings flicker fix, update notification toast and shimmer
v0.19.24 Amp integration, configurable data directory, Auto Mode permission option, Pi plan approval fix
v0.19.23 Droid integration, Windows Pi AI fix, quieter update indicator
v0.19.22 Safari copy fix in plan viewer, CLAUDE_CONFIG_DIR support for session logs
v0.19.21 Ask AI in plan review and annotate mode, shared AI runtime, origin-aware provider defaults
v0.19.20 Interactive goal setup UI, OpenCode submit_plan fixes, browser no-op sentinel handling for Claude agents
v0.19.18 Edit-based submit_plan for OpenCode, Pi namespace migration, Codex annotate-last fix, OpenCode commands dir fix
v0.19.17 Reworked goal setup skill (interview-driven flow), CLI --version flag
v0.19.16 Code navigation with peek view (Cmd/Ctrl+click tokens in diffs)
v0.19.15 Commit-based diff base, jj evolution diffs, GitLab reliability fixes, OpenCode command intercept fix
v0.19.14 Visual explainer skill update, PFM code-file hover previews, Graphviz, diff tab size and line bg intensity, hooks settings tab

What's New in v0.19.27

v0.19.27 adds Kiro CLI as a supported agent, introduces Glimpse native window support, and ships a message picker for annotate-last. Nine PRs total, six from external contributors, three first-timers.

Kiro CLI Integration

Plannotator now supports the Kiro CLI agent harness. The integration uses Kiro's native skill and custom agent model rather than a plugin or hook. The installer auto-detects Kiro when ~/.kiro exists or kiro-cli is on PATH, then installs five skills and a custom agent configuration file. Three skills are Kiro-specific with the kiro-cli origin baked in (review, annotate, archive), and two are shared with other agents (setup-goal, visual-explainer).

The custom agent file at ~/.kiro/agents/plannotator.json wires all five skills together with a shell tool scoped to plannotator .*. The installer never overwrites an existing agent file, so users who customize it won't lose their changes on upgrade. All three platform installers (bash, PowerShell, CMD) received the same update.

Annotate-Last Message Picker

Running plannotator last after /rewind used to silently annotate the orphaned pre-rewind message. The annotation UI now surfaces recent assistant messages so you can pick which one to annotate.

Two new affordances appear when there are multiple messages to choose from. A "Message N of M" button in the sticky toolbar lets you switch between messages while staying in the same session. A Messages tab in the sidebar shows the full list with annotation counts per message. Your annotations are preserved when you switch. On submit, only messages you actually annotated are included in the feedback.

When there is only one message, the behavior is unchanged from previous versions.

Glimpse Native Window

Plannotator can now open in a Glimpse native window instead of a browser tab. Glimpse provides a lightweight, borderless WebView window that feels more integrated than a random browser tab opening in the background.

The feature is auto-detected: if glimpseui is on PATH and no explicit browser is configured via PLANNOTATOR_BROWSER, the server spawns Glimpse automatically. If Glimpse isn't installed, everything works exactly as before. Remote sessions never attempt Glimpse. The window size defaults to 1280x900 and can be adjusted via PLANNOTATOR_GLIMPSE_WIDTH and PLANNOTATOR_GLIMPSE_HEIGHT. To disable Glimpse entirely even when installed, set PLANNOTATOR_GLIMPSE=0 or add { "glimpse": false } to ~/.plannotator/config.json.

Pi Approval Continuation Fix

The previous fix for Pi plan approval (#805 in v0.19.24) sent the continuation message as a deliverAs: "followUp", which caused a visible "Follow-up: Continue with the approved plan." row to appear in Pi's TUI. This release replaces that with an idle-wait approach: after approval, the extension polls until Pi reports idle, then sends a normal user message. The visible queue artifact is gone.

Additional Changes

  • List marker alignment in diff view: List bullets and numbers in the plan-diff clean view now align to the first line of multi-line items instead of centering vertically against the full wrapped height. — #838, contributed by @rcdailey
  • Goal setup "grill first" interview: The setup-goal skill now supports an opt-in deep-dive interview step in Phase 1 that walks the decision tree one question at a time before building the bundle. — #839, contributed by @dgrissen2
  • Glimpse disable config: A PLANNOTATOR_GLIMPSE environment variable and glimpse config option let users disable Glimpse even when it's installed.
  • Multi-message annotation performance: The multi-message annotation export now computes lazily at submit time instead of re-parsing all messages on every annotation change.
  • Kiro on homepage: Kiro CLI is now listed in the agent selector on plannotator.ai.

Install / Update

macOS / Linux:

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

Windows:

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

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

OpenCode: Clear cache and restart:

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

Then in opencode.json:

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

Pi: Install or update the extension:

pi install npm:@plannotator/pi-extension

Droid: Install via the plugin marketplace:

droid plugin marketplace add backnotprop/plannotator
droid plugin install plannotator@plannotator

Amp: Install the CLI first, then copy the plugin:

mkdir -p ~/.config/amp/plugins
curl -fsSL https://raw.githubusercontent.com/backnotprop/plannotator/main/apps/amp-plugin/plannotator.ts \
  -o ~/.config/amp/plugins/plannotator.ts

Kiro CLI: The installer auto-detects Kiro and installs skills automatically. After installing the CLI, launch with:

kiro-cli chat --agent plannotator

What's Changed

  • feat: Kiro CLI integration (skills + custom agent, cross-platform installers) by @ashwinjohn3 in #837
  • fix(ui): align list markers to first line in clean diff view by @rcdailey in #838
  • feat(setup-goal): opt-in "grill first" interview step in Phase 1 by @dgrissen2 in #839
  • feat: open Plannotator in Glimpse when available by @bjesuiter in #840
  • fix(pi-extension): avoid visible approval follow-up queue by @xz-dev in #843
  • feat: annotate-last message picker (fixes #800) by @GLips in #809
  • perf: defer multi-message annotation export to submit time by @backnotprop
  • feat(marketing): add Kiro CLI to homepage agent selector by @backnotprop
  • feat: add PLANNOTATOR_GLIMPSE env var to disable Glimpse native window by @backnotprop

New Contributors

Contributors

@ashwinjohn3 built the Kiro CLI integration from scratch, wiring up skills, a custom agent, and cross-platform installer support that mirrors the existing Codex and Gemini auto-detect pattern. @GLips both reported and fixed the annotate-last message selection issue, contributing the full message picker UI including the sidebar Messages tab, per-message annotation state, and multi-message feedback export. @bjesuiter contributed Glimpse native window support, adding auto-detection and fallback logic to both the Bun and Pi server browser-opening paths. @xz-dev returned with a follow-up to the Pi approval fix, replacing the visible follow-up queue with an idle-wait polling approach. @rcdailey fixed list marker alignment in the plan-diff clean view by extracting the ListItemBody component and adding items-start to the flex container. @dgrissen2 added the opt-in "grill first" interview step to the setup-goal skill, extending Phase 1 with a deep-dive question flow for vague or interdependent goals.

Full Changelog: v0.19.26...v0.19.27

Don't miss a new plannotator release

NewReleases is sending notifications on new releases.