Extensions, skills, and themes for the Pi coding agent. Several of the extensions are designed to facilitate integration of Pi and RepoPrompt CE.
This collection is tailored to my workflow and preferences. I may introduce breaking changes without notice. While most of the extensions are original or modified, some that were authored by others are republished here unmodified, and those may lag well behind their upstream versions. Extensions published as Pi packages receive my active maintenance.
| Symbol | Meaning |
|---|---|
| ● | original |
| ◐ | forked & modified |
| ○ | republished unmodified |
pi install git:github.com/w-winter/dot314 # install the package
pi config # enable/disable individual extensions and themesOr try it for a single run without installing:
pi -e git:github.com/w-winter/dot314Requires Pi 0.63.1+ (see packages.md)
Install from git:
pi install git:github.com/w-winter/dot314
# (or with the raw URL)
pi install https://github.com/w-winter/dot314Project-local install (writes to .pi/settings.json):
pi install -l git:github.com/w-winter/dot314After installing, use pi config to enable or disable individual extensions, skills, and themes. You can also filter in settings.json, as in this example:
{
"packages": [
{
"source": "git:github.com/w-winter/dot314",
"extensions": [
"./extensions/anycopy/index.ts",
"./extensions/branch-out/index.ts",
"./extensions/command-center/index.ts",
"./extensions/editor-enhancements/index.ts",
"./extensions/ephemeral-mode.ts",
"./extensions/files-touched.ts",
"./extensions/grounded-compaction/index.ts",
"./extensions/model-aware-compaction/index.ts",
"./extensions/move-session.ts",
"./extensions/repoprompt-mcp/src/index.ts",
"./extensions/session-ask/index.ts",
"./extensions/session-switch/index.ts"
]
}
]
}Use !path to exclude specific extensions, or list only the ones you want. See package filtering for the full syntax.
Notes:
pi install ...runsnpm installin the package root automatically- Some extensions store optional per-user config under
~/.pi/agent/extensions/<extension-name>/...(e.g.poly-notify,sandbox,tools,rp-native-tools-lock). These files are not part of the package install and are created on-demand or are optional.
Many extensions are also published as standalone npm packages (see the npm column below). They can be installed with:
pi install npm:<package-name>For example, pi install npm:pi-repoprompt-mcp.
See packages/ for all available npm packages.
See extensions/README.md for more detailed descriptions.
| Extension | npm | Description | |
|---|---|---|---|
| ● | anycopy/ |
pi-anycopy |
/tree with live syntax-highlighted preview + copy |
| ● | assistant-provenance/ |
pi-assistant-provenance |
Gives models awareness of mid-session model switches |
| ◐ | branch-out/ |
pi-branch-out |
Fork session into split pane or new tab with layout policies and optional model/message queuing |
| ● | command-center/ |
pi-command-center |
/command palette widget |
| ◐ | editor-enhancements/ |
File picker, shell completions, raw paste, double-esc and slash command remapping | |
| ● | ephemeral-mode.ts |
pi-ephemeral |
Delete session on exit |
| ◐ | files-touched.ts |
Files read/modified widget with path normalization and tracking coverage of Pi-native tools, RepoPrompt, recognized bash/exec_command shell operations, and apply_patch |
|
| ● | fork-from-first.ts |
pi-fork-from-first |
Quickly fork session from first message to establish parent-child lineage in a blank new session |
| ● | grounded-compaction/ |
pi-grounded-compaction |
Compaction summarizer with model presets, custom prompts, shared files-touched tracking, and cross-provider checkpoint summaries |
| ◐ | handover/ |
Handover draft with files-touched → fork-from-first → prefill editor | |
| ◐ | image-url-broker/ |
Publishes inline images as stable HTTPS URLs for supported providers | |
| ● | md.ts |
pi-md-export |
Export session branch or last N turns to Markdown file or clipboard |
| ● | model-aware-compaction/ |
pi-model-aware-compaction |
Per-model compaction thresholds |
| ● | model-sysprompt-appendix/ |
pi-model-sysprompt-appendix |
Per-model system prompt additions |
| ● | move-session.ts |
pi-move-session |
Move current active session to a new cwd |
| ◐ | pi-codex-goal/ |
Durable Codex-style goal tracking and continuation | |
| ◐ | pi-queue-steer/ |
Editable steering and follow-up queues with RepoPrompt-aware interruption events | |
| ● | protect-paths/ |
Directory protection with configurable trusted read paths, brew prevention, and command gates. Pair with @aliou/pi-guardrails for .env protection |
|
| ● | repoprompt-mcp/ |
pi-repoprompt-mcp |
RepoPrompt MCP proxy with adaptive diff rendering, collapsed outputs, read-cache, and branch-safe binding |
| ● | reverse-thinking.ts |
Backward thinking-level cycling on shift+alt+tab |
|
| ◐ | sandbox/ |
OS-level sandboxing | |
| ● | session-ask/ |
pi-session-ask |
Query "pre-historical" context (post-compaction, post-fork/handoff) via subagent |
| ◐ | session-switch/ |
/resume-style session picker with live preview, plus pi --switch-session startup relaunch |
|
| ◐ | screenshots-picker/ |
Screenshot picker with sent-image previews and Orca support | |
| ● | skill-templates/ |
pi-skill-templates |
Nunjucks-templated SKILL.template.md skills rendered from invocation args, options, and flags, and composed from other skills |
| ◐ | stash/ |
Shortcut-driven editor draft stash, restore, and swap | |
| ◐ | tool-horizon/ |
Hides older tool activity before a chosen session-tree horizon while retaining file provenance | |
| ◐ | tools/ |
UI for enabling/disabling active Pi tools |
These extensions are tracked in the repository but not exported by the Pi package.
| Extension | |
|---|---|
| ● | brave-search/ |
| ◐ | btw/ |
| ○ | code-actions/ |
| ◐ | cmux/ |
| ● | codex-compaction-coordinator/ |
| ● | computer-use-toggle.ts |
| ● | context-limit-fallback/ |
| ◐ | extension-stats.ts |
| ● | inline-shell.ts |
| ○ | interactive-shell.ts |
| ● | iterm-tab-color.ts |
| ● | orca-session-tab-title/ |
| ◐ | plan-mode.ts |
| ◐ | pi-claude-bridge/ |
| ● | pi-codex-apply-patch-display/ |
| ● | poly-notify/ |
| ○ | preset.ts |
| ● | repoprompt-cli/ |
| ● | roam/ |
| ● | rp-native-tools-lock/ |
| ● | subagent-bridge/ |
| ○ | titlebar-spinner.ts |
| ○ | todos.ts |
These other extensions have also improved my QoL in Pi, so I recommend checking them out.
| Extension | Description | Install |
|---|---|---|
| bookmark (badlogic) | /bookmark <label> to label the last message in the session tree |
Copy to ~/.pi/agent/extensions/ |
| diff (badlogic) | /diff shows git-changed files and opens selected file in VS Code's diff view |
Copy to ~/.pi/agent/extensions/ |
| greprip (kaofelix) | Transparent interception of grep/find commands, translating them to rg/fd for speed |
uv tool install git+https://github.com/kaofelix/greprip + shell config |
| loop (mitsuhiko) | /loop starts a follow-up loop with a breakout condition |
Copy to ~/.pi/agent/extensions/ |
| pi-codex-conversion (IgorWarzocha) | Codex-shaped tools for openai-codex models, plus Responses compaction, model verbosity controls, cached transport, and other niceties | pi install npm:@howaboua/pi-codex-conversion |
| pi-computer-use (injaneity) | Desktop app observation and interaction tools for macOS, Windows, and Linux | pi install npm:@injaneity/pi-computer-use |
| pi-guardrails (aliou) | .env file protection + AST-based dangerous command gates |
pi install npm:@aliou/pi-guardrails |
| pi-interactive-subagents (HazAT) | Spawn, orchestrate, and manage async subagent sessions in multiplexer cmux panes; main agent keeps working while subagents run in the background | pi install git:github.com/HazAT/pi-interactive-subagents |
| pi-intercom (nicobailon) | Direct 1:1 messaging between Pi sessions; augments subagents nicely | pi install npm:pi-intercom |
| pi-interview (nicobailon) | Interactive form-based input gathering with native window support | pi install npm:pi-interview |
| pi-invisible-continue (monotykamary) | /continue resumes the agent loop without adding prompt text to the LLM context |
pi install npm:pi-invisible-continue |
| pi-model-sort (monotykamary) | Sorts model lists by recent usage and restores per-model thinking levels | pi install npm:pi-model-sort |
| pi-model-thinking (ogulcancelik) | Stores and recalls last-selected thinking level per model | pi install npm:@ogulcancelik/pi-model-thinking |
| pi-nvim (aliou) | Bidirectional Neovim integration: nvim_context tool, LSP diagnostics at turn end, file reload after edits, visible-splits injection |
Neovim plugin; see setup instructions |
| pi-prompt-template-model (nicobailon) | Adds model, skill, and thinking frontmatter to pi prompt templates and chained prompt template execution |
pi install npm:pi-prompt-template-model |
| pi-retry (monotykamary) | Automatically retries most errors with capped backoff and continues after output-token limits | pi install https://github.com/monotykamary/pi-retry |
| pi-rewind-hook (nicobailon) | Records exact rewind points for files, allowing restoration during /tree navigation and across resumed and forked sessions |
pi install npm:pi-rewind-hook |
| pi-rtk-optimizer (MasuRii) | Read-tool-kit context optimization for token efficiency | pi install npm:pi-rtk-optimizer |
| pi-token-burden (Whamp) | Token usage breakdown and context burden analysis | pi install npm:pi-token-burden |
| pi-tool-display (MasuRii) | Compact tool call rendering with diff visualization | pi install npm:pi-tool-display |
| pi-web-access (nicobailon) | Gemini-powered web search with AI-synthesized overviews and citations | pi install npm:pi-web-access |
| whimsical (mitsuhiko) | Whimsical messages while the agent is working | Copy to ~/.pi/agent/extensions/ |
| Theme | |
|---|---|
| ● | violet-dawn.json |
| ● | violet-dusk.json |
The Pi package does not export skills. See skills/README.markdown for full descriptions.
| Skill | Notes | |
|---|---|---|
| ○ | agent-browser/ |
|
| ○ | deep-x-research/ |
Requires surf-cli |
| ○ | gdcli/ |
|
| ● | repoprompt-tool-guidance-refresh/ |
Maintainer workflow |
| ● | rp/ |
Agent guidance for using the repoprompt-mcp extension's rp tool |
| ● | rp-deep-build/ |
Requires pi-codex-goal |
| ○ | surf/ |
Requires surf-cli |
| ◐ | text-search/ |
|
| ◐ | xcodebuildmcp/ |