/plannotator-annotate
Open interactive annotation UI for a markdown file
> /plugin marketplace add backnotprop/plannotator> /plugin install plannotator@plannotator
Command definition
plannotator-annotate.mddescription: Open interactive annotation UI for a markdown file
allowed-tools: shell(plannotator:*)
Markdown Annotations
!`plannotator annotate $ARGUMENTS`
Your task
The output above will be one of:
1. The exact text `The user approved.`, an "Approved with Notes" message, OR a JSON object with `"decision": "approved"`. The user approved the markdown file. If it is the Approved with Notes message, or that object also carries a `"feedback"` field, the user approved *with notes*: read them and carry them into subsequent work — they are non-blocking guidance, not a request to revise the file. Otherwise acknowledge with a single sentence ("Approved.") and stop. Either way, do not begin any work. 2. Empty, OR a JSON object with `"decision": "dismissed"`. The user closed the session without requesting changes. Acknowledge with a single sentence ("Annotation session closed.") and stop. Do not begin any work. 3. Plaintext annotation feedback, OR a JSON object with `"decision": "annotated"` and a `"feedback"` field. Address the feedback. The user has reviewed the markdown file and provided specific annotations and comments. 4. A message that the arguments could not be resolved to a file, URL, or folder. The user described what to annotate in natural language: work out which file, URL, or folder they mean, run `plannotator annotate <path-or-url>` yourself with that concrete target (keeping any flags the message echoes), then handle its output per cases 1-3.
Read more
description: Open interactive annotation UI for a markdown file allowed-tools: shell(plannotator:*)
Markdown Annotations
!`plannotator annotate $ARGUMENTS`
Your task
The output above will be one of:
1. The exact text `The user approved.`, an "Approved with Notes" message, OR a JSON object with `"decision": "approved"`. The user approved the markdown file. If it is the Approved with Notes message, or that object also carries a `"feedback"` field, the user approved *with notes*: read them and carry them into subsequent work — they are non-blocking guidance, not a request to revise the file. Otherwise acknowledge with a single sentence ("Approved.") and stop. Either way, do not begin any work. 2. Empty, OR a JSON object with `"decision": "dismissed"`. The user closed the session without requesting changes. Acknowledge with a single sentence ("Annotation session closed.") and stop. Do not begin any work. 3. Plaintext annotation feedback, OR a JSON object with `"decision": "annotated"` and a `"feedback"` field. Address the feedback. The user has reviewed the markdown file and provided specific annotations and comments. 4. A message that the arguments could not be resolved to a file, URL, or folder. The user described what to annotate in natural language: work out which file, URL, or folder they mean, run `plannotator annotate <path-or-url>` yourself with that concrete target (keeping any flags the message echoes), then handle its output per cases 1-3.
Plannotator is a local, browser-based review surface for AI coding agents: Claude Code, Codex, Copilot CLI, Gemini CLI, OpenCode, Kiro, Droid, Amp, DeepSeek Harness, and Pi. It plugs directly into your agent through its hooks and commands.
Other commands on plannotator.
plannotator-review
CommandOpen interactive code review for current changes, another directory, or a PR URL; --base <ref> / --diff-type <type> pin the…
plannotator-inbox
CommandOpen the Plannotator Inbox in the browser, show its address, and learn how to use the Inbox
More commands from other plugins.
build
CommandImplement tasks incrementally — build, test, verify, commit. Add "auto" to run the whole plan in one approved pass.

