███╗   ███╗                  ██████╗ ██╗
████╗ ████║ ██╗   ██╗        ██╔══██╗   
██╔████╔██║ ╚██╗ ██╔╝ ████╗  ██████╔╝██╗
██║╚██╔╝██║  ╚████╔╝ ╚═══╝   ██╔═══╝ ██║
██║ ╚═╝ ██║   ╚██╔╝          ██║     ██║
╚═╝     ╚═╝   ██╔╝           ╚═╝     ╚═╝
github.com/spences10/my-pi
my-pi(1) user commands my-pi(1)

// a curated Pi distribution

Run Pi with project tools already connected.

my-pi is a ready-to-run coding-agent CLI with the tools and workflows this repository actually uses: scoped MCP, LSP, skills, context, recall, guardrails, observability, and peer coordination.

pnpx my-pi@latest
node >=24.15.0 tui / print / json / rpc built on Pi

session.log / recall → edit → validate

Recall restores the earlier decision. Terminal tools make the change. LSP diagnostics and tests verify the result.

scripted example session

~/repos/my-pi (↯ main ?1 ↟1)
↑115k ↓6k R691k $1.090 (sub) 13.3%/272k
MCP 5/5 connected
my-pi-terminal-layout
gpt-5.4 · high
prompt:terse +1

How my-pi supports recurring development work

These workflows recur across real project sessions and show when each part of my-pi is useful.

  • Finish with evidence, not confidence

    pi-lsp project checks

    Inspect the diff, run the narrow check and test, then query diagnostics on changed files before handing work back.

  • Keep large output searchable

    pi-context

    Large reads and tool results become compact receipts; search snippets first, retrieve nearby chunks, and export only for broad offline processing.

  • Continue from earlier decisions

    pi-recall

    Earlier sessions answer “what did we decide?” so work resumes with the original constraints, inspected files, and validation state.

  • Delegate implementation; keep final review

    pi-team-mode

    Independent Pi sessions carry research and implementation, return results through messages and artifacts, and leave final integration to the lead.

  • Constrain risky work before it starts

    pi-harness

    Constrain editable paths and commands, encode validation, log evidence, and check for drift before a delegated task is complete.

  • Use credentials without putting them in chat

    pi-nopeek pi-redact

    Discover available key names, load only what a command needs, and return the result without putting the credential into chat.

  • See why an agent run failed

    pi-telemetry pi-observability

    Local usage data and live traces expose slow requests, noisy tools, failed calls, and coordination state while work is happening.

  • Load only what the repository needs

    pi-mcp pi-skills native project tools

    Activate relevant MCP servers and skills by project, then follow that repository’s own README, agent guidance, and validation flow.

install.sh choose how to use my-pi

// run everything preconfigured

Run the distribution

Choose this when you want all included extensions and my-pi defaults configured together.

pnpx my-pi@latest
Also works with npx or bunx. Do not use pi install.

// install one extension into Pi

Add one package

Choose this when you already use Pi and only want one extension from this repository.

pi install npm:@spences10/pi-lsp
View all 18 installable packages ↓
packages/
18 direct-install extensions

// reusable @spences10/pi-* packages

Install selected extensions into your Pi setup.

Every row opens its package README—the source of truth for commands, configuration, and runtime behavior.

inspect

agent essentials

operate

memory & operations

guard

safety & guidance

my-pi --help

Installation and compatibility questions

Is my-pi a replacement for Pi?

No. Pi is the underlying coding-agent CLI and SDK. my-pi runs Pi with a selected set of extensions and defaults already configured.

How do I run the full distribution?

Run pnpx my-pi@latest (or npx/bunx). The root package is its own CLI wrapper; do not install it with pi install.

Can I use the packages without my-pi?

Yes. The user-installable @spences10/pi-* extensions can be installed independently. For example: pi install npm:@spences10/pi-lsp.

Are all published packages direct installs?

No. Packages such as pi-settings, pi-project-trust, pi-sqlite-core, and pi-tui-modal are shared implementation dependencies. The installable package list separates them from direct-install extensions.

Where is the configuration reference?

Each package README is the source of truth for its commands, configuration, runtime behavior, and local-development instructions.

// quick start

Run the full setup. Or install only what you need.

pnpx my-pi@latest
Open the GitHub repository