mirror of
https://github.com/SikongJueluo/pi-extensions.git
synced 2026-10-05 11:52:55 +08:00
ff947425eb828e547dd28a76ad4cb64f744dfe84
- unify dependency strategy: @gotgenes/pi-permission-system moves from dependencies+bundledDependencies (inner-cmd) to peerDependencies in both packages, so git/npm consumption share a single service instance - add description/license/author/repository(directory)/publishConfig/files - copy GPL-3.0 LICENSE into both packages, add inner-cmd README - ai-judge: ship models-catalog.json; exclude test/tools/reports from tarball - README install sections now show npm source (prereq aligned to >=32)
pi-extensions
English | 简体中文
Personal extensions for the pi coding agent, focused on Bash permissions: unwrap, inspect, and re-adjudicate commands before they run.
Packages
| Package | Description |
|---|---|
| pi-permission-ai-judge | AI judge — a model rules allow / deny / defer on each pending Bash ask; shadow logs only, enforce auto-approves |
| pi-permission-inner-cmd | Unwraps transparent Bash wrappers (timeout, time, …) and authorizes the inner command |
Install
pi install git:github.com/SikongJueluo/pi-extensions
The package manifest (root package.json, pi.extensions) mounts both extensions declaratively — effective in any directory. Prerequisites:
- Enable
@gotgenes/pi-permission-system≥ 32 - Add the extensions to the authorizer chain — order is consultation order, UI sessions only:
// ~/.pi/agent/extensions/pi-permission-system/config.json
{ "authorizerChain": ["inner-cmd", "ai-bash-judge"] }
See the ai-judge README for modes, judge model, and guardrails.
Development
pnpm workspace, TypeScript + vitest.
pnpm install
pnpm check # tsc --noEmit
pnpm test # vitest run
Design decisions live in docs/adr/.
License
GPL-3.0
Languages
TypeScript
97.7%
JavaScript
2.3%