pi-skill-playbook
Pi extension for passive, human-mediated Agent Skill playbooks.
Package details
Install pi-skill-playbook from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:pi-skill-playbook- Package
pi-skill-playbook- Version
0.1.5- Published
- Jun 2, 2026
- Downloads
- 568/mo · 568/wk
- Author
- eiei114
- License
- MIT
- Types
- extension
- Size
- 50 KB
- Dependencies
- 1 dependency · 1 peer
Pi manifest JSON
{
"extensions": [
"./extensions/index.ts"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
Pi Skill Playbook
Human-mediated Agent Skill playbooks for the Pi coding agent.
What this is
Pi Skill Playbook is a Pi extension that guides Agent Skill usage flows with visible, human-controlled playbooks. It shows the current workflow step, next recommended skill command, and completion criteria — but never runs skills automatically.
Define ordered skill workflows as YAML playbooks in your project, then drive them step by step from the Pi command palette.
Features
- Playbook-driven workflows — Define multi-step skill sequences with named outcomes and transitions in YAML.
- Human-mediated — Every step requires an explicit user action. No hidden automation.
- Marker-based auto advance — Single-outcome steps advance automatically when the assistant emits a visible
PLAYBOOK_OUTCOME:marker. Multi-outcome steps always require explicit confirmation. - Active run widget — Displays current step, skill command, completion criteria, and outcome labels below the editor.
- Strict YAML validation — Playbooks are validated on load for structure, transitions, and skill references.
- Tab completion — Commands, playbook IDs, run IDs, outcomes, and flags all support tab completion.
- Local run state — Run state is stored in
.pi/playbook-runs/inside the target project, never in git.
Install
From npm
pi install npm:pi-skill-playbook
From GitHub
pi install git:github.com/eiei114/pi-skill-playbook
Or with a full Git URL:
pi install git+https://github.com/eiei114/pi-skill-playbook.git
Locally (for development)
git clone https://github.com/eiei114/pi-skill-playbook.git
cd pi-skill-playbook
npm install
pi -e .
Quick start
Copy a sample playbook into your project:
mkdir -p .pi/playbooks cp node_modules/pi-skill-playbook/samples/feature-development.yml .pi/playbooks/Add run state to
.gitignorein the target project:.pi/playbook-runs/Start a run:
/playbook:list /playbook:start feature-development --run my-featureDrive the workflow:
/skill:grill-with-docs <feature idea> /playbook:done /playbook:choose ready-for-prd /playbook:status
The widget displays the current step, exact skill command, completion criteria, and outcome labels.
Usage summary
| Command | Description |
|---|---|
/playbook:list |
List available playbooks with validation status |
/playbook:start <id> [--run <name>] |
Start a new playbook run |
/playbook:resume <run-id> |
Resume a paused active run |
/playbook:status [run-id] |
Show current step and completion criteria |
/playbook:done |
Complete the current step (auto-advances if single outcome) |
/playbook:choose <outcome> |
Choose an outcome for multi-branch steps |
/playbook:cancel [run-id] |
Cancel an active run |
Legacy space-separated forms (/playbook start) remain available for compatibility.
Auto advance
Playbooks default to autoAdvance: auto. When a user explicitly runs the current step's skill with /skill:<name>, Pi Skill Playbook injects a short prompt asking the assistant to emit a visible completion marker:
PLAYBOOK_OUTCOME: ready-for-prd
| Mode | Behavior |
|---|---|
auto (default) |
Marker can advance single-outcome steps automatically |
suggest |
Marker only suggests /playbook:done or /playbook:choose |
off |
No prompt injection or completion detection |
Package contents
pi-skill-playbook/
├── extensions/ Pi extension entry point
├── src/ Domain logic: validation, state, rendering, auto-advance
├── samples/ Example playbooks (feature-development.yml)
├── tests/ Node.js test suite
├── docs/adr/ Architecture decision records
├── LICENSE MIT
└── README.md
Playbook YAML structure
version: 1
id: my-playbook
name: My Playbook
entry: first-step
autoAdvance: auto # auto | suggest | off
skills:
my-skill:
role: entry
steps:
first-step:
primarySkill: my-skill
commandHint: "/skill:my-skill <arg>"
doneWhen:
- Criterion one.
- Criterion two.
transitions:
- outcome: done
to: complete # "complete" ends the run
See samples/feature-development.yml for a full example.
Development
npm install
npm run check # TypeScript type check
npm test # Run tests (Node.js built-in test runner + tsx)
Requires Node.js ≥ 24, TypeScript 5.8+, and tsx 4.20+.
Release
Releases are automated via GitHub Actions:
- Bump
versioninpackage.jsonand merge tomain. auto-release.ymldetects the new version, creates a git tag and GitHub Release.publish.ymlpublishes to npm with provenance.
Manual dispatch is also available from the Actions tab.
Security
- Run state is local-only (
.pi/playbook-runs/). No data leaves the machine. - The extension does not inject system prompts for skill execution. It only adds a short playbook prompt describing the current step, valid outcomes, and expected marker format.
- No automatic file edits — the extension warns with a
.gitignoresnippet instead of modifying files. - Report vulnerabilities via GitHub Security Advisories.