Extensions for pi coding agent (i18n, distill, tool-supervisor)
Overview
A small collection of composable extensions for the Pi coding agent. Each package is independently installable and keeps its detailed behavior, configuration, examples, and tests in its own README. Every extension package also publishes a SKILL.md that Pi loads to guide agents through configuration and verification. Extension management slash commands use the /config: [-action] convention. Legacy names remain as compatibility aliases where a command was renamed; /plan, /iterate, and /subagent are intentionally short workflow shortcuts. Requirements: Pi with the compatible extension API and Node.js 22 or newer. The repository root is also a Pi package. Its manifest loads extension entrypoints under packages/*/index.ts while excluding library-only packages such as pi-terminal-mux and pi-model-request, so the command above installs all current extensions without trying to load shared libraries as extensions.
README
pi-extensions
A small collection of composable extensions for the Pi coding agent.
中文文档:README.zh-CN.md
Packages
Each package is independently installable and keeps its detailed behavior, configuration, examples, and tests in its own README. Every extension package also publishes a SKILL.md that Pi loads to guide agents through configuration and verification.
| Package | Description | Documentation |
|---|---|---|
pi-safety-guards |
Configurable Bash safety rules, rule actions and custom matchers. | English · 中文 |
pi-nested-skills |
Nested skill discovery, aliases and completion from configured roots. | English · 中文 |
pi-notifications |
Configurable desktop notifications for agent activity. | English · 中文 |
pi-naming |
Unified automatic and manual naming for sessions and owned terminal targets. | English · 中文 |
pi-auto-goal |
Judges every fully settled turn with a second model and continues the task in the user’s voice when the agent stopped prematurely. | English · 中文 |
pi-clean-mode |
Collapses a whole agent run into a single duration header, leaving only the final answer visible until you expand it. | English · 中文 |
pi-gen-ui |
Renders json-render JSON specs as native Pi terminal panels (tables, charts, callouts, inputs) through a render_ui tool, with optional Jev-driven composition. |
English · 中文 |
pi-distill |
Compacts verbose output from every active object-schema tool before it consumes the context window. | English · 中文 |
pi-tool-supervisor |
Reviews selected tools before or after execution against matching rules, with diff-aware handling for edit and write. |
English · 中文 |
pi-metrics |
Shows a live session elapsed timer in the working spinner, then one run summary after the agent stops (on-stop, default) or one line per turn (live). |
English · 中文 |
pi-models-discovery |
Discovers models from {baseUrl}/models for providers marked with discoverModels in models.json, with a persistent startup cache and a manual refresh command. |
English · 中文 |
pi-session-tools |
Caches the full pre-filter output of bash grep/tail/head pipelines and provides session_log / session_squash for squashing long conversations with main-agent handoff summaries. |
English · 中文 |
pi-session-resources |
Collects files, browser URLs, and PR/MR links from successful tool activity and exposes them through a clickable, tabbed # resource picker above the editor. |
English · 中文 |
pi-extensions-i18n |
Provides shared locale selection, catalog loading, interpolation, and the /config:language command. |
English · 中文 |
pi-extensions-tool-display |
Provides the actual Pi tool-display host plus the shared result-rendering protocol and component helpers. | English · 中文 |
pi-model-request |
Issues a one-off model request from an extension the way Pi core does: resolves auth, adds provider session headers, and calls the completion. | English · 中文 |
@maplezzk/pi-dynamic-workflows |
Claude-Code-style dynamic workflow orchestration with meta/phase()/agent()/parallel()/pipeline() primitives, configurable via /config:workflow. Fork of michaelliv/pi-dynamic-workflows. |
English · 中文 |
@maplezzk/pi-interactive-subagents |
Non-blocking interactive subagents in multiplexer panes with live status widget, /plan and /iterate workflows. Fork of HazAT/pi-interactive-subagents. |
English · 中文 |
Extension management slash commands use the /config:[-action] convention. Legacy names remain as compatibility aliases where a command was renamed; /plan, /iterate, and /subagent are intentionally short workflow shortcuts.
Install everything
Requirements: Pi with the compatible extension API and Node.js 22 or newer.
pi install git:github.com/maplezzk/pi-extensions
The repository root is also a Pi package. Its manifest loads extension entrypoints under packages/*/index.ts while excluding library-only packages such as pi-terminal-mux and pi-model-request, so the command above installs all current extensions without trying to load shared libraries as extensions.
Reload Pi after installation:
/reload
To install a single package, use its npm package name:
pi install npm:
Configuration
Most configurable extensions keep state under the Pi agent directory; exact paths, command names, environment precedence, and verification steps differ by package.
Pi loads each installed extension package’s SKILL.md so an agent can follow the package-specific configuration workflow. See packages/ for configuration examples and detailed documentation.
Development
npm install
npm run check
The check command runs workspace type checks, tests, and the portability/i18n gates.
The repository pins https://registry.npmjs.org/ in .npmrc so lockfile tarball URLs stay portable. Installing through a mirror registry rewrites those URLs and makes npm ci fail on npm 12+ with EALLOWREMOTE; node scripts/check-lockfile-registry.mjs (part of npm run check) blocks that before merge.
License
Recommended Tools
Try a different keyword or remove a filter.
Install
npx skillfish add maplezzk/pi-extensions