mirror of
https://github.com/backnotprop/plannotator.git
synced 2026-09-14 14:17:26 +08:00
9130d2d6a3
Adds two session-only flags to plannotator review, parsed in the shared parser so every host inherits them together: - --base <ref> opens the session against a caller-chosen compare target (branch, origin/<branch>, tag, SHA, HEAD~N), probed with git rev-parse --verify --end-of-options before the server starts so a typo'd ref is a startup error with near-match suggestions instead of a silently mislabelled merge-base->HEAD diff. - --diff-type <id> opens the session in one of the nine flat git diff modes (REVIEW_OPEN_DIFF_TYPES, pinned against GIT_DIFF_TYPES). The flags are a seed, never a setting: nothing writes config.json or any review cookie, and the UI stays fully mutable. Validation is pure in packages/shared/review-open-state.ts (provider matrix errors on jj/GitButler/P4/workspace/PR mode, promote-with-notice when the saved default is base-irrelevant, fatal explicit contradiction). A flagged base rides explicitBase semantics: the new initialBaseExplicit server option (both runtimes) seeds baseExplicitlyChosen, suppressing the startup origin/* upgrade and canonicalization, and openStatePinned rides /api/diff so the client neither offers the first-run setup dialog (its one-time cookie is NOT consumed) nor runs the panel-pair self-heal for a pinned session. The since-base dropdown label now renders from the live active base, matching the adjacent base picker. Coverage: Bun CLI, opencode-review bridge, OpenCode embedded plugin, and the Pi extension (re-vendored; strict validation on the slash-command path only, programmatic callers unchanged). Skills, command stubs, help text, and docs updated across every host surface.
39 lines
1.1 KiB
Markdown
39 lines
1.1 KiB
Markdown
# Plannotator for Droid
|
|
|
|
Plannotator's Droid plugin ships the manual slash-command workflow only:
|
|
|
|
- `/plannotator-review [--base <ref>] [--diff-type <type>] [PR_URL]` (no args reviews local changes; the open-state flags pin the session's opening diff — session-only, git-only)
|
|
- `/plannotator-annotate <file|folder|url>`
|
|
- `/plannotator-last`
|
|
|
|
It does not attempt plan-mode interception or host-level planning integration.
|
|
|
|
## Install
|
|
|
|
Install the `plannotator` CLI first:
|
|
|
|
```bash
|
|
curl -fsSL https://plannotator.ai/install.sh | bash
|
|
```
|
|
|
|
Then add the marketplace and install the plugin:
|
|
|
|
```bash
|
|
droid plugin marketplace add https://github.com/backnotprop/plannotator
|
|
droid plugin install plannotator@plannotator
|
|
```
|
|
|
|
For local development:
|
|
|
|
```bash
|
|
cd /path/to/plannotator
|
|
droid plugin marketplace add "$PWD"
|
|
droid plugin install plannotator@plannotator
|
|
```
|
|
|
|
## Notes
|
|
|
|
- The plugin expects `plannotator` on `PATH`.
|
|
- Review and annotate flows still open the Plannotator browser UI and return the result to the Droid session.
|
|
- The command wrappers set `PLANNOTATOR_ORIGIN=droid` so the UI can label the host correctly.
|