@agimon-ai/doompi-plan 0.0.1-alpha.21 → 0.0.1-alpha.22

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.
Files changed (2) hide show
  1. package/README.md +48 -39
  2. package/package.json +6 -6
package/README.md CHANGED
@@ -1,66 +1,75 @@
1
1
  # @agimon-ai/doompi-plan
2
2
 
3
- **Planning mode should be a permission boundary, not a polite request.**
3
+ A reviewable planning lifecycle for Pi with narrowed tools, plan storage, normal/debug/Fable flavors, and explicit completion.
4
4
 
5
- This package makes the repository read-only while the agent explores, writes a plan to
6
- disk, and waits for approval. It snapshots the active tools, model, and thinking level on
7
- the way in and restores them on the way out. If restoration fails, the session stays
8
- read-only rather than pretending everything is fine.
5
+ Plan mode removes `edit` and `write` from the active tool set and directs writes through `write_plan`. It does not sandbox Bash, external tools, or the operating system, so treat it as tool-level workflow protection rather than a repository permission boundary.
9
6
 
10
- Plan is a minor mode. It can be turned on halfway through a session, stacks with the other
11
- modes, and reports its state on the shared `MODES` line.
7
+ > **Alpha:** planning flows and tool contracts may change between releases.
12
8
 
13
- This is part of [Doompi](https://www.npmjs.com/package/@agimon-ai/doompi). Doompi includes
14
- it as a battery-provided minor mode in every major mode; it stays inactive until requested.
9
+ ## Requirements
10
+
11
+ - Node.js 22.19.0 or newer
12
+ - Pi 0.84.2
15
13
 
16
14
  ## Install
17
15
 
16
+ DoomPi includes Plan as an inactive core minor mode. For standalone Pi:
17
+
18
18
  ```bash
19
- npm install @agimon-ai/doompi-plan
19
+ pi install npm:@agimon-ai/doompi-plan
20
20
  ```
21
21
 
22
- ## How it loads
22
+ Use `/extensions/doom` for DoomPi integrations or `/extensions/pi` for the plain Pi adapter.
23
23
 
24
- Doompi loads the Doom adapter as part of its battery-included minor-mode closure. Do not add
25
- Plan to `.doom/modes.yaml`: major modes select always-active capabilities, while Plan is
26
- available on demand and contributes no active model tools until Plan mode starts.
24
+ ## Start and exit
27
25
 
28
- When embedding the package outside Doompi, its Pi manifest selects the Doom adapter. Use
29
- `/extensions/pi` for the plain Pi adapter or `/extensions/doom` when choosing the Doom
30
- integration explicitly.
26
+ | Key | Flavor |
27
+ | --------- | ---------------------------------------------------------- |
28
+ | `SPC p p` | Normal planning |
29
+ | `SPC p d` | Debug planning with a bounded evidence packet |
30
+ | `SPC p f` | Fable-assisted drafting followed by Pi verification |
31
+ | `SPC p e` | Exit and restore the prior model, thinking, and tool state |
31
32
 
32
- ## Leader
33
+ Normal planning expects repository exploration and delegation where available. Debug planning separates verified evidence from hypotheses. Fable is optional: it requires the configured Fable/Team integration, treats returned text as untrusted, and requires Pi to verify and synthesize the final plan.
33
34
 
34
- - `SPC p p` starts normal read-only planning.
35
- - `SPC p d` starts debug planning with diagnostic evidence.
36
- - `SPC p f` starts the repository-aware Fable flow.
37
- - `SPC p e` exits Plan mode and restores the previous session state.
35
+ A model or tool restoration failure leaves the narrowed Plan state active and reports the failure rather than pretending the session was restored.
38
36
 
39
- The exit binding appears only while Plan mode is active.
37
+ ## Write and complete a plan
40
38
 
41
- ## Plan review
39
+ `write_plan` accepts visible Markdown plan content and writes a unique file under `~/.pi/plans` by default. It refuses a hidden/empty plan and validates the destination before writing. The plan path and content become visible session state.
42
40
 
43
- When the selected major mode already has a live `ask_user_question` tool, Plan mode keeps
44
- it available beside the read-only exploration tools. It does not activate an omitted
45
- `ask-user` layer, and it removes a stale questionnaire name when no live registration
46
- exists.
41
+ After a plan exists, `complete_plan` asks whether to exit or continue planning. The user must explicitly approve exit. If the selected mode already exposes `ask_user_question`, Plan reuses it; it does not activate an omitted feedback layer.
47
42
 
48
- After `write_plan`, `complete_plan` asks whether to exit or keep planning. In autonomous
49
- Voice mode the choices are narrated instead of shown in a modal, the turn ends, and the
50
- next user message carries the decision. Plan mode exits only on an explicit `exit`;
51
- `continue` keeps the repository read-only for another revision.
43
+ In autonomous Voice mode, review choices are narrated, the turn terminates, and the next user message carries the decision.
52
44
 
53
- ## Voice
45
+ ## Configure models and storage
46
+
47
+ ```yaml
48
+ modes:
49
+ planning:
50
+ main:
51
+ model: provider/planning-model
52
+ thinking: high
53
+ subagents:
54
+ model: provider/research-model
55
+ thinking: medium
56
+ plansDirectory: ~/.pi/plans
57
+ ```
54
58
 
55
- The Doom adapter contributes `activate_plan` and `exit_plan` to the session-scoped Voice
56
- catalog. They run through the same serialized transitions as the leader bindings and are
57
- not registered as direct Pi tools. The plain Pi adapter does not publish these Doom
58
- capabilities.
59
+ `main` controls the planning model, `subagents` controls delegated research defaults, and `plansDirectory` can be absolute, repository-relative, or under `~`. Planning and delegated model calls consume provider quota.
59
60
 
60
61
  ## Public API
61
62
 
62
- Supported subpaths expose the Plan mode, plan storage, tools, flavors, and Pi/Doom adapters.
63
- See `package.json` for the complete export list.
63
+ The root exports planning configuration schemas, prompts, Fable flow helpers, and the Plan mode service. Focused exports include `/config`, `/planConfig`, `/planMode`, `/fableFlow`, and `/prompts`.
64
+
65
+ ## Development
66
+
67
+ ```bash
68
+ pnpm build
69
+ pnpm typecheck
70
+ pnpm test
71
+ pnpm lint
72
+ ```
64
73
 
65
74
  ## License
66
75
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agimon-ai/doompi-plan",
3
- "version": "0.0.1-alpha.21",
3
+ "version": "0.0.1-alpha.22",
4
4
  "description": "Reusable Pi read-only planning mode extension",
5
5
  "keywords": [
6
6
  "ai",
@@ -35,11 +35,11 @@
35
35
  "registry": "https://registry.npmjs.org/"
36
36
  },
37
37
  "dependencies": {
38
- "@agimon-ai/doompi-config": "0.0.1-alpha.21",
39
- "@agimon-ai/doompi-user-feedback": "0.0.1-alpha.10",
40
- "@agimon-ai/doompi-ui": "0.0.1-alpha.21",
41
- "@agimon-ai/doompi-extension-contracts": "0.0.1-alpha.21",
42
- "@agimon-ai/doompi-telemetry": "0.0.1-alpha.21"
38
+ "@agimon-ai/doompi-config": "0.0.1-alpha.22",
39
+ "@agimon-ai/doompi-extension-contracts": "0.0.1-alpha.22",
40
+ "@agimon-ai/doompi-telemetry": "0.0.1-alpha.22",
41
+ "@agimon-ai/doompi-ui": "0.0.1-alpha.22",
42
+ "@agimon-ai/doompi-user-feedback": "0.0.1-alpha.11"
43
43
  },
44
44
  "devDependencies": {
45
45
  "@earendil-works/pi-coding-agent": "0.84.2",