@alexeiled/pi-plan-exec
A discoverable /exec command and exec-plan skill for reliable, resumable ralphex-style plan execution in Pi
Package details
Install @alexeiled/pi-plan-exec from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@alexeiled/pi-plan-exec- Package
@alexeiled/pi-plan-exec- Version
0.4.1- Published
- Jul 19, 2026
- Downloads
- 1,229/mo · 1,229/wk
- Author
- alexeiled
- License
- MIT
- Types
- extension, skill
- Size
- 188.4 KB
- Dependencies
- 0 dependencies · 7 peers
Pi manifest JSON
{
"extensions": [
"./src/index.ts"
],
"skills": [
"./skills"
],
"image": "https://raw.githubusercontent.com/alexei-led/pi-plan-exec/main/assets/plan-exec-card.png"
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
pi-plan-exec
Turn a Markdown execution plan into an isolated, resumable Pi run.
pi-plan-exec solves the control problem of long-running AI implementation.
A capable agent can lose context, repeat work, skip verification, or start a
second writer after a restart. This extension moves task order, retry limits,
worktree checks, and recovery out of prompt prose into durable controller state.
It has been exercised in runs lasting a few hours; the controller keeps polling
instead of asking one chat prompt to remember the whole job.
It executes one checked-list task at a time in a Git checkout you choose, then runs review and fix stages with fresh Pi subagents and Fusion. A worker saying “done” is not enough: the plan’s checked items are the implementation record.
Experimental. Start with disposable repositories or reviewable worktrees.
What it does
- Keeps one writer in one checkout.
/execalways asks whether to use an isolated Git worktree or work in place. Isolated runs move the interactive Pi session into that worktree, so its tools and footer use the execution branch. - Executes plans deterministically. It selects the first incomplete task, starts a fresh worker, and verifies completion from the plan checkboxes.
- Recovers deliberately. A reload reattaches a matching run owned by the
returning session.
/exec adopttakes over a stale cross-session run. Compare-and-set records, operation IDs, controller locks, and leases avoid intentionally starting another writer or losing a pause or cancellation. - Reviews before it finishes. It runs comprehensive, smells, Fusion, and
critical review/fix phases. Unresolved findings remain visible in the final
completed_with_findingsstate.
Install and run
Install the prerequisites, then plan-exec:
pi install npm:pi-subagents
pi install npm:@tintinweb/pi-tasks
pi install npm:@alexeiled/pi-subagents-bridge@^0.2.0
pi install npm:@alexeiled/pi-fusion
pi install npm:@alexeiled/pi-plan-exec
The providers remain independent Pi packages. pi-plan-exec requires Bridge
0.2.0 or later for safe operation lookup, probes Bridge and Fusion capabilities
before it creates a run, and tells you how to recover if they are unavailable.
Reload Pi. From an interactive session in a Git repository, run an executable plan:
/reload
/exec help
/exec docs/plans/20260713-add-greeting.md
While it runs, Pi shows the execution-worktree path, branch, stage, and worker.
/exec status only observes the run; it does not interrupt or restart it. It
also reports the recovery classification and one safe next action: wait for a
healthy operation, reconcile a preserved operation, retry a failed stage, adopt
a stale owner, or review a plan/branch mismatch. Use it without a run ID for the
current repository, and use /exec runs when several runs need disambiguation.
/exec pause stops after the active child; /exec resume continues paused work
or recovers a recorded failure in the same stage and preserved worktree. A
retry-exhausted or externally blocked implementation task is never retried
implicitly; fix the blocker, then use /exec resume <run-id> --retry-task.
Implementation checkboxes remain sequential and cannot be force-skipped. When a
provider operation may still exist, plan-exec keeps its identity and adopts it
before any retry. If a review, finalization, or
statistics stage cannot recover, /exec skip <full-run-id> --reason <text>
stops the tracked child before recording an explicit waiver and advancing. It
never skips implementation or archival, and the run finishes as
completed_with_findings. If external work moved the execution tree to another
branch, /exec resume <full-run-id> --adopt-current-branch provides an
interactive, audited rebind after verifying the same repository and no active
child. The installed exec-plan skill is also available as
/skill:exec-plan for the plan format and recovery rules.
The Guide defines the accepted plan
format, including the exact heading and checkbox rules. Omit the path to select
an eligible Markdown plan below docs/plans/.
Runtime model
flowchart LR
plan["Markdown plan"] --> controller["durable controller"]
controller --> bridge["pi-subagents-bridge"]
bridge --> worker["fresh worker / reviewer"]
worker --> worktree["Git worktree"]
worktree --> checks["plan checkboxes"]
checks --> controller
controller --> fusion["pi-fusion panel + judge"]
fusion --> controller
controller --> result["completed or completed_with_findings"]
pi-plan-exec owns plan-specific control flow. Existing Pi packages retain
ownership of subagent execution, task UI, and multi-model review.
Read next
- Guide — requirements, executable-plan format, commands, lifecycle, recovery, and safety limits.
- Architecture — component ownership, state, RPC contracts, stages, and trust boundaries.
- Development — local verification and release process.
- Changelog — release history and compatibility changes.
- Original design record — design decisions and intended behavior.
