Extensions
Pi auto-discovers extensions from .pi/extensions/ in the project root. No config file needed. No --extension flag.
This page lists all 18 extensions in the Cheasee-Pi monorepo. Each has its own page with Why (benefit) and How (walkthrough).
File manifest
| File/Path | Extension |
|---|---|
.pi/extensions/structural-analyzer/ |
Structural Analyzer |
.pi/extensions/ripgrep-search/ |
Ripgrep Search |
.pi/extensions/scrapling/ |
Web Crawl (scrapling) |
.pi/extensions/web-search/ |
Web Search |
.pi/extensions/supervisor/ |
Supervisor |
.pi/extensions/context-info/ |
Context Info |
.pi/extensions/session-logger/ |
Session Logger |
.pi/extensions/agent-harness/ |
Agent Harness |
.pi/extensions/ask-user/ |
Ask User |
.pi/extensions/caveman/ |
Caveman Protocol |
.pi/extensions/format-on-save/ |
Format on Save |
.pi/extensions/lsp-auditor/ |
LSP Auditor |
.pi/extensions/ponytail/ |
Ponytail |
.pi/extensions/piignore/ |
PiIgnore |
.pi/extensions/tsc-checkpoint/ |
TSC Checkpoint |
.pi/extensions/check-extensions/ |
Check Extensions |
.pi/extensions/worktree-sandbox/ |
Worktree Sandbox |
.pi/extensions/rtk/ |
RTK |
.pi/extensions/lib/ |
Shared library (not an extension) — extension-state.ts, bash-query.ts, ensureVenv.ts |
Published packages
Selected extensions are published as npm packages under the @cheasee-pi scope.
| Package | Extension | Install |
|---|---|---|
@cheasee-pi/ask-user |
Ask User | pi install npm:@cheasee-pi/ask-user |
@cheasee-pi/ripgrep-search |
Ripgrep Search | pi install npm:@cheasee-pi/ripgrep-search |
@cheasee-pi/lsp-auditor |
LSP Auditor | pi install npm:@cheasee-pi/lsp-auditor |
@cheasee-pi/piignore |
PiIgnore | pi install npm:@cheasee-pi/piignore |
@cheasee-pi/structural-analyzer |
Structural Analyzer | pi install npm:@cheasee-pi/structural-analyzer |
Why publish separately? Not all extensions belong on pi.dev — some are Cheasee-Pi-specific (supervisor, session-logger, context-info). Published packages are self-contained, useful in any Pi setup.
Package structure: Each published extension has its own package.json with keywords: ["pi-package"] and a pi manifest pointing to its entry file.
Use /package-extension in Pi’s editor to package an extension for npm — see Prompts for details.