@open-plan-annotator/pi-extension 1.5.1 → 1.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +140 -3
- package/package.json +20 -4
package/README.md
CHANGED
|
@@ -1,5 +1,142 @@
|
|
|
1
|
-
|
|
1
|
+

|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
[](https://www.npmjs.com/package/open-plan-annotator)
|
|
4
|
+
[](https://opensource.org/licenses/MIT)
|
|
5
|
+
[]()
|
|
4
6
|
|
|
5
|
-
|
|
7
|
+
A fully local agentic coding plugin that intercepts plan mode and opens an annotation UI in your browser. Mark up the plan, send structured feedback to the agent, and receive a revised version — iterate as many times as you need until you're ready to approve.
|
|
8
|
+
|
|
9
|
+
Select text to <code>strikethrough</code>, <code>replace</code>, <code>insert</code>, or <code>comment</code> — then approve the plan or request changes
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
## How It Works
|
|
13
|
+
|
|
14
|
+
1. Your coding agent (Claude Code or OpenCode) finishes writing a plan
|
|
15
|
+
2. The plugin launches an ephemeral HTTP server and opens a React UI in your browser
|
|
16
|
+
3. You review the plan and annotate it — strikethrough, replace, insert, or comment on any section
|
|
17
|
+
4. **Approve** to let the agent proceed, or **Request Changes** to send your annotations back as structured feedback
|
|
18
|
+
5. The agent revises the plan and the cycle repeats until you're satisfied
|
|
19
|
+
|
|
20
|
+
Everything runs locally. Nothing leaves your machine.
|
|
21
|
+
|
|
22
|
+

|
|
23
|
+
|
|
24
|
+
## Install
|
|
25
|
+
|
|
26
|
+
> [!NOTE]
|
|
27
|
+
> `open-plan-annotator` now ships as one package-managed install. The npm package
|
|
28
|
+
> contains the plugin glue and resolves a platform runtime package locally. There
|
|
29
|
+
> is no first-run binary download and no in-app self-update path.
|
|
30
|
+
|
|
31
|
+
### Pi
|
|
32
|
+
|
|
33
|
+
Install the dedicated Pi package:
|
|
34
|
+
|
|
35
|
+
```sh
|
|
36
|
+
pi install npm:@open-plan-annotator/pi-extension
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
The extension package registers:
|
|
40
|
+
|
|
41
|
+
- a `submit_plan` tool, exposed to the model with prompt guidance to call it after drafting a concrete markdown plan and before implementation
|
|
42
|
+
- an `/annotate-plan` command for manual review of the latest assistant message or supplied plan text
|
|
43
|
+
|
|
44
|
+
Typical flow:
|
|
45
|
+
|
|
46
|
+
1. Ask Pi to make a plan before coding.
|
|
47
|
+
2. Pi drafts the plan and calls `submit_plan`.
|
|
48
|
+
3. The browser review UI opens locally.
|
|
49
|
+
4. Approval returns “Plan approved. Continue with implementation.”; requested changes return the serialized annotations as feedback.
|
|
50
|
+
|
|
51
|
+
You can also trigger review manually:
|
|
52
|
+
|
|
53
|
+
```sh
|
|
54
|
+
/annotate-plan
|
|
55
|
+
/annotate-plan # Plan\n\n1. Do the thing
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
#### Implementation Handoff
|
|
59
|
+
|
|
60
|
+
By default, after a plan is approved the plugin sends "Proceed with implementation." to a `build` agent. To customize or disable this, create `open-plan-annotator.json` in your project's `.opencode/` directory or globally in `~/.config/opencode/`:
|
|
61
|
+
|
|
62
|
+
```json
|
|
63
|
+
{
|
|
64
|
+
"implementationHandoff": {
|
|
65
|
+
"enabled": true,
|
|
66
|
+
"agent": "build"
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Set `enabled` to `false` to disable auto-handoff. Project config overrides global config.
|
|
72
|
+
|
|
73
|
+
### Manual Install
|
|
74
|
+
|
|
75
|
+
If you want to run the CLI standalone or install the package globally:
|
|
76
|
+
|
|
77
|
+
```sh
|
|
78
|
+
pnpm add -g open-plan-annotator
|
|
79
|
+
npm install -g open-plan-annotator
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
#### From Source
|
|
83
|
+
|
|
84
|
+
```sh
|
|
85
|
+
git clone https://github.com/ndom91/open-plan-annotator.git
|
|
86
|
+
cd open-plan-annotator
|
|
87
|
+
bun install
|
|
88
|
+
bun run build
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Then load it directly in Claude Code:
|
|
92
|
+
|
|
93
|
+
```sh
|
|
94
|
+
claude --plugin-dir ./open-plan-annotator
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
## Updates
|
|
98
|
+
|
|
99
|
+
- OpenCode: update the installed npm plugin through OpenCode, then restart OpenCode.
|
|
100
|
+
- Claude Code: update the marketplace/plugin install, then restart Claude Code.
|
|
101
|
+
- Standalone/global install: update the npm package (`npm`, `pnpm`, or `bun`), then rerun `open-plan-annotator`.
|
|
102
|
+
|
|
103
|
+
The built-in `doctor` command reports the resolved runtime package and runtime path:
|
|
104
|
+
|
|
105
|
+
```sh
|
|
106
|
+
open-plan-annotator doctor
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
## Keyboard Shortcuts
|
|
110
|
+
|
|
111
|
+
| Action | Shortcut | Description |
|
|
112
|
+
|--------|----------|-------------|
|
|
113
|
+
| Delete | `d` | Strikethrough selected text |
|
|
114
|
+
| Replace | `r` | Replace selected text with new content |
|
|
115
|
+
| Insert | `i` | Insert text after the selection |
|
|
116
|
+
| Comment | `c` | Attach a comment to selected text |
|
|
117
|
+
| Approve | `Cmd+Enter` | Approve the plan and proceed |
|
|
118
|
+
| Request Changes | `Cmd+Shift+Enter` | Send annotations back to the agent |
|
|
119
|
+
|
|
120
|
+
## Development
|
|
121
|
+
|
|
122
|
+
```sh
|
|
123
|
+
bun run dev
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
Starts the Bun server on port 3847 with a test plan and the Vite dev server on port 5173 with HMR.
|
|
127
|
+
|
|
128
|
+
```sh
|
|
129
|
+
bun run lint # check
|
|
130
|
+
bun run lint:fix # auto-fix
|
|
131
|
+
bun run format # format
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
## Maintainer Docs
|
|
135
|
+
|
|
136
|
+
- Architecture: [`docs/architecture.md`](docs/architecture.md)
|
|
137
|
+
- Operations: [`docs/operations.md`](docs/operations.md)
|
|
138
|
+
- Release process: [`docs/release.md`](docs/release.md)
|
|
139
|
+
|
|
140
|
+
## License
|
|
141
|
+
|
|
142
|
+
MIT
|
package/package.json
CHANGED
|
@@ -1,11 +1,27 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@open-plan-annotator/pi-extension",
|
|
3
|
-
"version": "1.5.
|
|
3
|
+
"version": "1.5.2",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"description": "Pi extension for open-plan-annotator",
|
|
5
|
+
"description": "Pi extension for open-plan-annotator that adds plan review tools and commands",
|
|
6
|
+
"author": "ndom91",
|
|
6
7
|
"license": "MIT",
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "git+https://github.com/ndom91/open-plan-annotator.git"
|
|
11
|
+
},
|
|
12
|
+
"homepage": "https://github.com/ndom91/open-plan-annotator#readme",
|
|
13
|
+
"bugs": {
|
|
14
|
+
"url": "https://github.com/ndom91/open-plan-annotator/issues"
|
|
15
|
+
},
|
|
16
|
+
"publishConfig": {
|
|
17
|
+
"access": "public"
|
|
18
|
+
},
|
|
7
19
|
"keywords": [
|
|
8
|
-
"pi-package"
|
|
20
|
+
"pi-package",
|
|
21
|
+
"pi",
|
|
22
|
+
"extension",
|
|
23
|
+
"plan-mode",
|
|
24
|
+
"annotation"
|
|
9
25
|
],
|
|
10
26
|
"main": "extensions/index.js",
|
|
11
27
|
"files": [
|
|
@@ -13,7 +29,7 @@
|
|
|
13
29
|
"README.md"
|
|
14
30
|
],
|
|
15
31
|
"dependencies": {
|
|
16
|
-
"open-plan-annotator": "1.5.
|
|
32
|
+
"open-plan-annotator": "1.5.2"
|
|
17
33
|
},
|
|
18
34
|
"peerDependencies": {
|
|
19
35
|
"@mariozechner/pi-coding-agent": "*",
|