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.

Node 22.19 or newer
npm install -g @pify/cli

No 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.

  1. Step 01
    npm install -g @pify/cli

    Installs the pify CLI from npm. Needs Node 22.19 or newer, the same floor as pi.

  2. Step 02
    pify setup

    Installs the pi coding agent if it is missing. Safe to re-run. Pin a version your team has tested with --pi-version.

  3. Step 03
    pify install core

    Adds 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/memory

Every 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 suite

core

The everyday four: task tracking, planning, memory, and a safety gate

  • memory

    Persistent memory across sessions: two-tier markdown, FTS5 search, secret-scanned writes, consent-gated project tier

    npm
  • plan-mode

    Read-only planning with an approve-then-execute gate: enforced tool policy, tracked steps, plans as files

    npm
  • todo

    Agent working-memory checklist: complete-replacement writes, next-item surfacing, live widget

    npm
  • yolo

    A safety gradient from auto-approve-everything to ask-about-anything: four modes, read-before-write, undo trail, rewind to before a prompt

    npm

agents

The agent stack: subagents, parallel fan-out, scripted workflows, worktrees

  • subagent

    Spawn scoped subagents: agent_run/agent_result, @agent mentions, custom agent types, ask_supervisor, results delivered not polled

    npm
  • swarm

    Run many pi agents in parallel: fan-out with per-item routing, concurrency queue, shared mailbox, results delivered not polled

    npm
  • workflow

    Deterministic agent orchestration through JavaScript scripts: agent()/parallel()/pipeline(), gates, resume

    npm
  • worktree

    Safe git-worktree management: create/list/merge/remove with safety rails, plus /worktree enter to take the session along

    npm

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
  • btw

    By-the-way side conversations: a read-only, codebase-aware side agent in a widget, out of the main context

    npm
  • goal

    Pin a session goal and keep the agent anchored: ordered steps, evidence-gated completion, cost-weighted budget

    npm
  • pretty

    Compact theme-aware rendering for built-in tools: summaries, highlighted reads, word-level diff emphasis

    npm
  • search

    Fuzzy file finding and indexed content search: fffind and ffgrep, with a pure-TypeScript fallback

    npm
  • skills

    See the skills pi has loaded, what they cost in every request, and which ones ever fire

    npm
  • task

    Task tracking with a dependency graph, evidence-gated completion, live widget, and a sweep when the list finishes

    npm
  • usage

    Token and cost reporting: live footer, local-history dashboard with per-project totals, context breakdown

    npm

04 / Principles

Rules that recur across the READMEs.

Constraints the code enforces, not slogans. Each line names the package whose README states it.

  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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.

  6. 06

    Undo trails.

    yolo keeps an undo trail so auto-approve never means unrecoverable. memory_forget writes a recovery record before it deletes.

  7. 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.

  8. 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

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