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

Recall, edit, validate

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

session.log scripted example session
  1. add a token-bucket rate limiter to the public API guard, then run the unit tests

  2. recalling previous session…

  3. Recall has notes from yesterday: the limiter belongs in the route guard, keyed by client IP. Adding a token bucket and wiring it in.

  4. read src/lib/server/guard.ts:1-9
    import type { RequestEvent } from '@sveltejs/kit';
    import { error } from '@sveltejs/kit';
    
    export function guard(event: RequestEvent) {
      // auth + validation runs here
      return event;
    }
    … 23 more lines
  5. lsp_diagnostics(src/lib/server/guard.ts) → 0 errors · 0 warnings · 4 symbols

  6. edit src/lib/server/guard.ts
    const buckets = new Map<string, number>();
    const LIMIT = 60;
    
      // auth + validation runs here
      const ip = event.getClientAddress();
      const left = buckets.get(ip) ?? LIMIT;
      if (left <= 0) throw error(429, 'rate limited');
      buckets.set(ip, left - 1);
  7. pnpm test:unit -- --run
    exit 0
     Test Files  3 passed (3)
          Tests  18 passed (18)
       Duration  1.42s
  8. Done — limiter in place, LSP shows the file clean, all 18 tests green. Want me to open a PR or hand it to a peer for review?

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

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

    pi-lsp project checks
  • Keep large output searchable

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

    pi-context
  • Continue from earlier decisions

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

    pi-recall
  • Delegate implementation; keep final review

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

    pi-team-mode
  • Constrain risky work before it starts

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

    pi-harness
  • Use credentials without putting them in chat

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

    pi-nopeek pi-redact
  • See why an agent run failed

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

    pi-telemetry pi-observability
  • Load only what the repository needs

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

    pi-mcp pi-skills native project tools

Choose how to use my-pi

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.

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

Install selected extensions into your Pi setup.

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

agent essentials

memory & operations

safety & guidance

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.

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

pnpx my-pi@latest
Open the GitHub repository