Private PK build of Plannotator for interactive plan and code review with AI coding agents. Mark up plans or code diffs in a visual UI, review revisions, and send structured feedback back to Claude Code, Copilot CLI, Gemini CLI, OpenCode, Pi, and Codex.
Use npm if you already have Node and Bun installed:
npm install -g pk-plannotatorOr use the hosted installer:
curl -fsSL https://plan.artificialgarden.org/install.sh | bashWindows PowerShell:
irm https://plan.artificialgarden.org/install.ps1 | iexThe npm package installs both command names, and both resolve to this PK build:
pk-plannotator --version
plannotator --versionBoth should print pk-plannotator 0.19.22-pk.1.
In Claude Code:
/plugin marketplace add kingkillery/pk-plannotator
/plugin install plannotator@plannotator
Restart Claude Code after installing the plugin.
Use plan mode normally, or run one of the helper commands:
/plannotator-review
/plannotator-review <github-pr-url>
/plannotator-annotate <file.md>
/plannotator-last
Share links are hash-only by default for small plans. Large-plan upload is disabled unless you configure PLANNOTATOR_PASTE_URL; when configured, uploaded plans are encrypted before they leave the browser.
Plan Mode Demos:
|
|
New: Code Review
| Visual Plan Review | Built-in hook | Approve or deny agent plans with inline annotations |
| Plan Diff | Automatic | See what changed when the agent revises a plan |
| Code Review | /plannotator-review | View git diffs or remote PRs. Package annotations and ask AI about the code as you review. |
| Annotate Any File | /plannotator-annotate | Annotate any markdown file and send feedback to your agent |
| Annotate Last Message | /plannotator-last | Annotate the agent's last response and send structured feedback |
Plannotator lets you privately share plans, annotations, and feedback with colleagues. For example, a colleague can annotate a shared plan, and you can import their feedback to send directly back to the coding agent.
Small plans are encoded entirely in the URL hash. No server involved, nothing stored anywhere.
Large plans can use a short link service with end-to-end encryption when PLANNOTATOR_PASTE_URL is configured. Your plan is encrypted with AES-256-GCM in your browser before upload. The server stores only ciphertext it cannot read. The decryption key lives only in the URL you share. Without a configured paste service, sharing falls back to hash-only URLs and uploads nothing.
- Zero-knowledge storage, similar to PrivateBin
- Fully open source and self-hostable (see docs)
Install the plannotator command:
macOS / Linux / WSL:
curl -fsSL https://plan.artificialgarden.org/install.sh | bashWindows PowerShell:
irm https://plan.artificialgarden.org/install.ps1 | iexThen in Claude Code:
/plugin marketplace add kingkillery/pk-plannotator
/plugin install plannotator@plannotator
# IMPORTANT: Restart Claude Code after plugin install
See apps/hook/README.md for detailed installation instructions including a manual hook approach.
Install the plannotator command:
macOS / Linux / WSL:
curl -fsSL https://plan.artificialgarden.org/install.sh | bashWindows PowerShell:
irm https://plan.artificialgarden.org/install.ps1 | iexThen in Copilot CLI:
/plugin marketplace add kingkillery/pk-plannotator
/plugin install plannotator-copilot@plannotator
Restart Copilot CLI after plugin install. Plan review activates automatically when you use plan mode (Shift+Tab to enter plan mode).
See apps/copilot/README.md for details.
Install the plannotator command:
macOS / Linux / WSL:
curl -fsSL https://plan.artificialgarden.org/install.sh | bashWindows PowerShell:
irm https://plan.artificialgarden.org/install.ps1 | iexThe installer auto-detects Gemini CLI (checks for ~/.gemini) and configures the plan review hook and policy. It also installs /plannotator-review and /plannotator-annotate slash commands.
Then in Gemini CLI:
/plan # Enter plan mode — plans open in your browser
/plannotator-review # Code review for current changes
/plannotator-review <pr-url> # Review a GitHub pull request
/plannotator-annotate <file.md> # Annotate a markdown file
Requires Gemini CLI 0.36.0 or later.
See apps/gemini/README.md for details.
Add to your opencode.json:
{
"plugin": ["@plannotator/opencode@latest"]
}Run the install script to get /plannotator-review:
curl -fsSL https://plan.artificialgarden.org/install.sh | bashWindows:
irm https://plan.artificialgarden.org/install.ps1 | iexThis also clears any cached plugin versions. Then restart OpenCode.
pi install npm:@plannotator/pi-extensionThen start Pi with --plan to enter plan mode, or toggle it during a session with /plannotator.
See apps/pi-extension/README.md for full usage details, commands, and flags.
Install the plannotator command:
macOS / Linux / WSL:
curl -fsSL https://plan.artificialgarden.org/install.sh | bashWindows PowerShell:
irm https://plan.artificialgarden.org/install.ps1 | iexThen in Codex — feedback flows back into the agent loop automatically:
!plannotator review # Code review for current changes
!plannotator review <pr-url> # Review a GitHub pull request
!plannotator annotate file.md # Annotate a markdown file
!plannotator last # Annotate the last agent message
Plan mode is not yet supported.
See apps/codex/README.md for details.
When your AI agent finishes planning, Plannotator:
- Opens the Plannotator UI in your browser
- Lets you annotate the plan visually (delete, insert, replace, comment)
- Approve → Agent proceeds with implementation
- Request changes → Your annotations are sent back as structured feedback
(Similar flow for code review, except you can also comment on specific lines of code diffs)
Copyright 2025-2026 kingkillery
This project is licensed under either of
- Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (http://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
