@hank-warren/pi-orchestrator
Skill for Pi: supervise first-class pi sessions running in Herdr panes — launch children, read their state cheaply, answer Auto Permissions prompts within policy, steer, wait, verify.
Package details
Install @hank-warren/pi-orchestrator from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@hank-warren/pi-orchestrator- Package
@hank-warren/pi-orchestrator- Version
0.1.0- Published
- Sep 6, 2026
- Downloads
- 103/mo · 19/wk
- Author
- hank-warren
- License
- MIT
- Types
- skill
- Size
- 23.8 KB
- Dependencies
- 0 dependencies · 0 peers
Pi manifest JSON
{
"skills": [
"./pi-orchestrator"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
@hank-warren/pi-orchestrator
A pi-orchestrator skill for Pi: let one pi session supervise other pi sessions running as real TUI agents in Herdr panes — launch them, read their state without bloating context, detect when one is waiting on a human, answer Auto Permissions and question prompts within a bounded policy, steer, wait, verify their claims, and report.
This is a skill-only package — no extension code. Installing it registers one skill, pi-orchestrator. It requires the herdr CLI and a session running inside Herdr (HERDR_ENV=1); outside Herdr the skill says so and stops.
Install
pi install npm:@hank-warren/pi-orchestrator
Usage
/skill:pi-orchestrator
or ask in plain words — "orchestrate this across two pi sessions", "supervise a child doing X in herdr". The orchestrating session should be a strong model; the children run whatever the host's default is unless the task says otherwise.
What it does, and what it deliberately does not
The children are first-class pi sessions with the full extension set a human's session has, in panes a human can click into. Every primitive the supervisor uses already exists: herdr agent get / read / prompt / send-keys / wait, the herdr:blocked signal that pi-auto-permissions, pi-ask-user-question and pi-plan-mode emit while waiting on a person, and the digit hotkeys and Tab-to-comment on their dialogs. The skill is the doctrine for using them:
- A cost ladder for reading state —
agent get(a few hundred bytes) before any screen read;visibleonly on a state change; the session JSONL for what the child actually ran. - What each Herdr status means and what to do — a
blockedwith a gate label is an approval,question/plan questionis a dialog,idlewith the plan-ready footer is a finished plan waiting on/plan. - A bounded policy for answering Auto Permissions in the human's place — approve only a command that is inside the task and that the supervisor would run itself under the same ground rules; otherwise block with a Tab-comment that steers; never a standing approval; never argue a deny rule; every decision written down and reported.
- Waiting through the
processtool, never by sleeping in the supervisor's own shell. - Verification as the gate — a child saying it is done is a claim; the supervisor re-runs the named checks itself before repeating it.
It does not start loops, schedule wakeups, or keep a ledger. It replaces pi-loop, whose pacing and evidence gate approximated for a single unsupervised session what a supervising model does by judgment.
Requirements
- Herdr with its pi integration installed (
herdr integration), so a child's lifecycle is reported through hooks rather than screen detection. - A pi with the
processtool or equivalent for background waits. - Children on a recent pi-auto-permissions, pi-ask-user-question and pi-plan-mode so every human-waiting dialog reports
blocked.
Changelog
See CHANGELOG.md for release history.
License
MIT