@arvoretech/pi-plan-mode
PI extension providing a Cursor-style plan mode with a hard tool gate: read-only exploration, plan generation, manual /build approval, and execution tracking
Package details
Install @arvoretech/pi-plan-mode from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@arvoretech/pi-plan-mode- Package
@arvoretech/pi-plan-mode- Version
1.0.1- Published
- Jun 23, 2026
- Downloads
- 348/mo · 22/wk
- Author
- joao.barros.arvore
- License
- MIT
- Types
- extension
- Size
- 83.6 KB
- Dependencies
- 0 dependencies · 3 peers
Pi manifest JSON
{
"extensions": [
"./dist/index.js"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
@arvoretech/pi-plan-mode
Cursor-style plan mode for PI with a real hard tool gate.
While plan mode is active the agent is locked into read-only exploration:
edit and write are blocked and bash is restricted to a read-only
allowlist — not by prompt discipline, but by the tool_call gate. The agent
physically cannot touch code until you approve the plan with /build.
Features
- Hard gate: hides
edit/writeviasetActiveToolsAND blocks them intool_call(defense in depth).bashis allowlisted (blocksrm,git commit,kubectl apply,aws ... delete,mix ecto, redirects, etc.). - Business + pedagogical refinement: the plan prompt drives clarifying
questions across business, users/pedagogy (edtech), and technical concerns,
asked through a bundled
questionnairetool that renders selectable options (single = option list, multiple = tabbed), with a "type something" fallback instead of free text. - Auto-suggest: when a prompt looks complex (implement, refactor, migrate, architecture, etc.) the extension offers to enter plan mode via a select dialog.
- Plan generation: the agent researches the codebase and produces a numbered
plan under a
Plan:header. - Workspace storage + editor: the plan is saved to
.pi/plans/{date}-{slug}.mdas soon as it is generated./plan-openopens it in Warp (or$EDITOR) so you can review and edit it directly. - Manual handoff: nothing executes until you run
/build. - Progress tracking: numbered steps become a todo list; completed steps are
marked with
[DONE:n]and shown in a tree-style overlay widget during execution (● Plano (n/total)heading,├─/└─connectors,○pending /◐current /✓done glyphs, inspired by rpiv-todo). - Session persistence: state survives
/resume.
Commands
/plan— toggle plan mode (read-only, edits blocked).Ctrl+Alt+Ptoo./plan-open— open the current plan.mdin Warp /$EDITORto review and edit./build— approve the current plan, save it to.pi/plans/, exit plan mode and execute./todos— show plan progress.--plan— flag to start directly in plan mode.
Flow
/plan→ agent asks questions, explores, and outputs aPlan:block.- Numbered steps become a todo list. Review/edit the plan (still locked).
/build→ saves the.md, restores tools, executes in order with[DONE:n]tracking.- When every step completes, execution mode ends and normal access is restored.
Usage
Global (all projects)
ln -s $(pwd)/packages/plan-mode/dist ~/.pi/agent/extensions/plan-mode
Project-local
{
"extensions": ["./path/to/arvore-pi-extensions/packages/plan-mode/dist"]
}
Development
pnpm install
pnpm --filter @arvoretech/pi-plan-mode build
pnpm --filter @arvoretech/pi-plan-mode lint