Package for the LLM coding agent: extensions, subagents, skills, prompts, templates, and a theme.
- Extensions in
extensions//reviewand/end-reviewfor code-review workflows./session-breakdownfor interactive usage analytics from~/.pi/agent/sessions./split-forkfor forking the current session into a new Ghostty split./split-openfor opening files in$VISUAL/$EDITORinside a Ghostty split./bookmarkand/unbookmarkfor labelling useful assistant messages./momapandctrl+0throughctrl+9for quick model switching./plan,/todos, andctrl+alt+pfor read-only planning mode.uvguard that blocks direct Python tooling and requires uv-backed commands.subagenttool plus/subagentsfor isolated specialist-agent delegation.
- Subagents in
agents/scoutgathers compressed codebase context.plannerturns context into concrete implementation plans.workerexecutes delegated implementation tasks.reviewerreviews code quality and security.
- Skills in
skills/- Productivity skills:
caveman,grill-me,pdf-reader,stop-slop,write-a-skill. - Engineering skill:
zoom-out.
- Productivity skills:
- Prompt templates in
prompts/implement,implement-and-review,scout-and-plan.
- Theme in
themes/habamax.
piwith package support.- Bun/Node tooling for development.
- macOS + Ghostty for
/split-openand/split-fork. - GitHub CLI (
gh) for/review pr ...workflows.
/review
/review uncommitted
/review branch main
/review commit abc123
/review pr 123
/review pr https://github.com/owner/repo/pull/123
/review folder src docs
/review --extra "focus on security"
/end-review
/review supports uncommitted diffs, base-branch reviews, commits, GitHub PRs, and folder snapshots. It can start a fresh review branch in the session tree and return with /end-review. If REVIEW_GUIDELINES.md exists next to the nearest .pi directory, those guidelines are appended to the review prompt.
/session-breakdown
Shows sessions, messages, tokens, and cost for the last 7/30/90 days. Use arrow keys to switch ranges and views, tab to switch metrics, and q to close.
/split-open path/to/file
/split-fork optional prompt
Both commands require macOS and Ghostty. /split-open launches $VISUAL, $EDITOR, or nvim. /split-fork copies the current session branch into a new pi process in a right-hand Ghostty split.
Configure model slots in extensions/momap/momap.json:
{
"mappings": {
"1": { "provider": "anthropic", "model": "claude-sonnet-4-5" },
"2": { "provider": "openai", "model": "gpt-5" }
}
}Use /momap to list mappings, /momap 1 to switch, or ctrl+1 to switch by shortcut.
/plan
/todos
pi --plan
Plan mode restricts the agent to read-only exploration tools, asks it to produce a numbered plan, then can execute the plan while tracking [DONE:n] markers.
The uv extension blocks direct Python tooling in pi bash execution. Use uv run python ..., uv run pytest ..., uv add ..., and uv sync instead of invoking python, pip, pytest, poetry, or virtualenv tooling directly.
Use /uv to show the active policy.
The subagent tool supports:
- single task:
{ agent, task } - parallel tasks:
{ tasks: [...] } - chained tasks:
{ chain: [...] }with{previous}handoff
Use /subagents to list discovered agents.
implementchainsscout→planner→worker.implement-and-reviewchainsworker→reviewer→worker.scout-and-planchainsscout→plannerwithout implementation.
bun install
bunx tsc --noEmitPi loads .ts extension files directly from this package. There is no build step.
agents/ subagent definitions
extensions/ pi extension entry points and extension-specific docs
prompts/ prompt templates
themes/ pi theme JSON
skills/ pi skills