Pi Packages · @pify on npm · MIT
Pi packages for the parts pi left out.
Pify is sixteen open-source extensions for the pi coding agent: plan mode, subagents, persistent memory, task tracking, a safety gate with an undo trail, and more. Each one is an ordinary Pi Package. Install one or all sixteen; pi itself stays as small as it shipped.
npm install -g @pify/cliNo pi yet? pify setup installs it and is safe to re-run. Then pify install core adds the everyday four.
01 / Why
pi stays small on purpose.
pi.dev keeps a list of things it deliberately did not build: sub-agents, plan mode, to-dos, permission popups, background bash, MCP. Its advice is to ask pi to build what you want, or install a package that does it your way.
Pify takes the second path. Four of the six items on that list ship as packages today: subagent and swarm for delegation, plan-mode for a read-only planning gate, todo and task for tracking, yolo for a permission gate you tune instead of a dialog you dismiss. Background bash and MCP are not covered yet. The rest of the catalog, memory, usage, search, worktree and the others, follows the same rule: a separate package, installed on its own.
Nothing is patched into pi. The CLI hands every install to pi install and never edits pi's settings, so anything pify does you could have typed yourself. Install what you want, remove what you do not, and the harness underneath stays as minimal as its authors intended.
02 / Install
Three commands to a working pi.
- Step 01
npm install -g @pify/cliInstalls the pify CLI from npm. Needs Node 22.19 or newer, the same floor as pi.
- Step 02
pify setupInstalls the pi coding agent if it is missing. Safe to re-run. Pin a version your team has tested with
--pi-version. - Step 03
pify install coreAdds todo, plan-mode, memory and yolo. Swap core for agents or suite, or name packages:
pify install goal task.
Everyday commands
- pify list# show the @pify catalog with install state
- pify install goal task# short names resolve to @pify/goal, @pify/task
- pify install suite# the whole suite in one go (also: core, agents)
- pify update --check# what is out of date, changing nothing
- pify update# update pi + every installed @pify package
- pify doctor# diagnose node / npm / pi / settings
- pify profile save# write the installed suite + versions to a file
- pify profile apply f.json# diff it against this machine; --yes to apply
- pify init my-extension# scaffold a new Pi Package
What the CLI adds
- Bootstrap. pify setup uses the same invocation as pi's official installers, falls back to bun when npm is absent, and never runs sudo.
- Short names and bundles. goal means @pify/goal. suite, core and agents are names too.
- A doctor. Checks node, npm, pi and settings, and warns when two extensions register the same command or tool.
- Profiles. The suite you actually run, written to a file so a second machine can reproduce it. Apply shows the diff first.
- Scaffolding. pify init emits a correctly shaped Pi Package: raw TypeScript entry, no build step.
- Tab completion. Generated from the live command registry for bash, zsh, fish and PowerShell.
- Hands off pi's settings. Every package operation delegates to pi install, pi remove or pi update. No interactive prompts, so it behaves the same in CI.
Without the CLI
pi install npm:@pify/memoryEvery package is a plain Pi Package. pi installs it on its own; the pify CLI is optional.
03 / Packages
Sixteen packages. Sixteen cells.
Every package is MIT, published under @pify on npm, and installable on its own. Names link to source. Descriptions are the catalog's own.
Pick a bundle to see which cells it lights.
The logo is a 4x4 grid. So is the catalog.
Install everything
pify install suitecore
The everyday four: task tracking, planning, memory, and a safety gate
agents
The agent stack: subagents, parallel fan-out, scripted workflows, worktrees
by name
The other eight. Short names resolve to @pify/NAME.
- ask-question
Structured questions on built-in dialogs: 1-4 questions, options with trade-offs, multi-select, Other free-text
npm
04 / Principles
Rules that recur across the READMEs.
Constraints the code enforces, not slogans. Each line names the package whose README states it.
- 01
Plain markdown you can read and commit.
memory keeps two tiers of markdown files. plan-mode writes plans to .pi/plans so a plan can be reviewed tomorrow.
- 02
Enforced at the tool level, not just prompted.
plan-mode blocks edit and write through a tool hook. A prompt asking the model to hold off is a request; a hook that refuses the write is an answer.
- 03
Consent before reading repo-shipped files.
memory asks once per project before a repository's MEMORY.md goes in front of the model. Headless, the answer is no unless PIFY_TRUST_PROJECT=1.
- 04
No surprise model calls.
memory re-attaches itself after compaction without calling a model. usage reports cost without spending tokens to ask about tokens.
- 05
Measured, not assumed.
skills takes its numbers from pi's own prompt builder. memory's compaction survival is a live test in the repo, not a claim.
- 06
Undo trails.
yolo keeps an undo trail so auto-approve never means unrecoverable. memory_forget writes a recovery record before it deletes.
- 07
The same in a terminal and in CI.
The CLI has no interactive prompts; behaviour is identical in TTY and CI except colour. yolo denies instead of asking when there is no UI.
- 08
Windows-first.
worktree calls itself Windows-first: no tmux, no daemons, no shell interpolation. pify setup hands off to install.ps1 on Windows.
05 / Book
A book about how pi works, in two languages.
The Pify Agent Book is source-code reading notes for the Pi Agent SDK, written in English and Vietnamese and following pi 0.85.0. Eleven chapters go from why pi is worth studying to testing and evaluation. Around them sit a Quickstart, eight how-to guides, a Reference, a Glossary, an FAQ and a Changelog.
It also carries a course, Build Your Own Pi-style Agent: fifteen checkpoints that build a complete offline TypeScript agent with deterministic tests, and no provider account or API key.
EN · VI · follows pi 0.85.0
Chapters
- 01Why Pi is worth studying
- 02The three-layer architecture
- 03The agent loop
- 04Model invocation: one line, many providers
- 05The Tool system
- 06Messages across the model, Agent, and session boundaries
- 07Event-driven runtime
- 08Context engineering
- 09Context compaction when the conversation gets too long
- 10Session management: storing, resuming, and branching conversations
- 11Testing and Agent evaluation
06 / Start
Install one, or all sixteen.
pi is at pi.dev. Pify is on npm under @pify and on GitHub under pifydev. Every package and the CLI are MIT. If something is still missing, pify init my-extension scaffolds a new Pi Package and you can publish the seventeenth.
pify install suite