Skip to content

Latest commit

 

History

226 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

1password better-toolsy blue-psl-10k context7 grok-search headroom notify prompt-enhancer relay steward tavily-search

pi-extensions

High-quality extensions for the Pi coding agent

GitHub stars Open issues License: MIT pi.dev packages Sponsor Ko-fi

Every package here is a Pi extension you can install individually from npm. Packages are tagged with the pi-package keyword so they appear in the pi.dev gallery.

They share the same bar: TypeScript, real smoke tests (no mocked external APIs), Conventional Commits, and a full quality gate on every PR. Secrets never reach the model — extensions that need credentials go through the shared @jmcombs/pi-1password credential API.

Quick start

# Install any package globally
pi install npm:@jmcombs/pi-tavily-search

# Or try one for a single session
pi -e npm:@jmcombs/pi-tavily-search

See the Pi packages documentation for git, local path, project-scoped install, and filtering options.

Packages

Credentials

Package Description
@jmcombs/pi-1password npm Transparent 1Password credential injection so bare gh, aws, and friends work inside Pi — tokens never reach the LLM. Shared credential API for other extensions.

Search & documentation

Package Description
@jmcombs/pi-context7 npm Real-time, version-accurate library docs via Context7.
@jmcombs/pi-tavily-search npm Real-time web search via the Tavily API.
@jmcombs/pi-grok-search npm Real-time web search via the xAI Grok API.

Agent tooling

Package Description
@jmcombs/pi-better-toolsy npm Drop-in replacements for ls / read / grep / find / edit / write.gitignore awareness, path-traversal protection, injection-safe edits.
@jmcombs/pi-prompt-enhancer npm Codebase-aware prompt rewriter: project tree, git context, referenced files, and an optional auto-enhance on Enter.
@jmcombs/pi-notify npm Terminal notifications (OSC 777/9/99) when Pi finishes a turn. Ghostty, iTerm2, WezTerm, Kitty, and more — no OS binaries.

Context, models & UI

Package Description
@jmcombs/pi-headroom npm Whole-conversation context compression via a local Headroom proxy, with graceful passthrough when unreachable.
@jmcombs/pi-relay npm Run any Pi subagent on an external coding agent (headless Claude / Grok) by setting its model — provider seam, no local model required.
@jmcombs/pi-steward npm The llama.cpp control panel for Pi — local browser dashboard for service control, resident models, host health, and streamed logs.
@jmcombs/pi-blue-psl-10k npm Powerline-styled status footer (Blue PSL 10K theme) — git, context usage, token counts, and cost.

1Password credential API

Extensions that need a user-provided secret resolve it through the shared @jmcombs/pi-1password credential API. Developer docs:

Sponsor

If these extensions save you time, tokens, or friction — a sponsorship is the single best way to keep them maintained and expanding. Every dollar goes to maintenance, new extensions, and keeping the quality bar high.

Sponsor on GitHub Tip on Ko-fi

  • GitHub Sponsors — one-time and monthly; 0% platform fee on personal sponsorships; shows up natively on the repo
  • Ko-fi — simple one-time tips if you prefer a tip jar outside GitHub

Requirements

  • Node.js >= 22.19.0 (CI on Node 22 and Node 24; release pipeline on Node 24)
  • npm 10+ (Node 24 ships npm 11+, required for npm Trusted Publishing)
  • Pi — see each package README for the minimum Pi version it needs

Repository layout

pi-extensions/
├── packages/
│   ├── _template/          # Scaffold for new extensions (see TEMPLATE.md)
│   └── <extension-name>/   # One directory per published package
├── assets/                 # Per-package preview art used in READMEs + the gallery
├── docs/                   # Shared developer docs (credential API, CI, …)
├── scripts/                # Version validation, typecheck, audits, …
├── .github/workflows/      # CI + Release Please
├── release-please-config.json
├── .release-please-manifest.json
└── …shared tooling (biome, vitest, husky, commitlint, secretlint)

Quality gate

Every PR runs the same npm run check gate:

npm ci
npm run check

Lint + format, typecheck, tests, version validation, Dependabot-ignore hygiene, and security (secretlint + npm audit --omit=dev). All packages must pass.

See docs/ci.md for every CI check and what a green does — and does not — prove.

Branch protection

The main branch is protected by a GitHub Repository Ruleset that requires PR review from @jmcombs, all CI checks green on Node 22 and Node 24, Conventional Commits, and a linear history. The maintainer can push directly to main via the admin bypass; outside contributors must go through PR review. See CONTRIBUTING.md → Branch Protection for the full rule list and rationale.

Contributing

  1. Read CONTRIBUTING.md.
  2. To add a package: copy packages/_template/ and follow TEMPLATE.md.
  3. Open a PR. Release Please opens a per-package release PR after merge.

Versioning & releases

Each package is versioned independently with semver. See VERSIONING.md for the full policy. Releases are automated via Release Please and published to npm using npm Trusted Publishing (OIDC).

License

MIT © Jeremy Combs

About

A monorepo of high-quality extensions for the Pi coding agent.

Topics

Resources

Contributing

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages