Skip to content

Cygnusfear/pi-extensions

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

348 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

pi-extensions in action

πŸ’„ pi-extensions (for bananas 🍌)

32 extensions that makes pi bananas, faster, and multi-agent.

Install Β· Packages Β· pi


pi-extensions is a flat monorepo of extension packages for pi. Each package does one thing. Install what you need, skip what you don't.

What you get

  • Code mode β€” write JS that calls 8 (whatever, or 200) tools in parallel from a single block, with variable passthrough between blocks, session management- more whatever. Heavy work (cold builds, deploys, long pipelines) can run async β€” the TUI stays interactive while the result delivers as a follow-up turn.
  • Mesh networking β€” P2P agent communication with zero servers (Zenoh via bun:ffi), between sessions or teams.
  • Teams β€” spawn worker agents across different models, collect results, do work, more whatever βŒ¨οΈπŸ’
  • Git safety β€” blocks destructive commands, tracks AI authorship
  • Fast file search β€” Rust-native frecency-ranked search
  • Code intelligence β€” semantic search, call graphs, dead code detection
  • 32 packages total β€” UI, prompts, themes, workflow, and more

Install

One package:

pi install ./packages/brave-search
pi install ./packages/pi-mesh

Full workspace (run once after changing dependencies):

pi install git:https://github.com/cygnusfear/pi-extensions

Heads up β€” this workspace is bun-only. @ff-labs/fff-bun declares engines.bun >=1.0.0 and ships a bun-specific postinstall, so the install fails under plain npm install. If pi install shells out to npm and fails with Bun's postinstall script was not run, clone manually and run bun install instead:

# pi install will still clone into ~/.pi/agent/git/...
cd ~/.pi/agent/git/github.com/cygnusfear/pi-extensions
bun install
# then register the packages you want in ~/.pi/agent/settings.json:
#   "git/github.com/cygnusfear/pi-extensions/packages/<name>"

Make sure bun is on your PATH (bun --version).

If you're on nix-installed Node, also fix the npm global prefix first. Pi 0.74+ runs npm install -g <pkg> for any npm:-scoped entry in settings.json packages: [...]. The default prefix on nix is read-only (/nix/store/...), so every spawn fails with EACCES and workers crash with npm install -g <pkg> failed with code 243. Fix once per machine:

mkdir -p ~/.npm-global
echo 'prefix=/Users/<you>/.npm-global' >> ~/.npmrc

Then restart any running pi coordinator β€” it caches process.env at start, so the new prefix only takes effect for fresh processes.

Each package is independently installable, testable, and removable via ~/.pi/agent/settings.json or project .pi/settings.json.

Packages

Core Tools

Package Description
code-mode execute_code sandbox β€” write JS calling tools as typed async functions
file-tools apply_patch edits + readImage for image viewing
hashline-tools Verified file editing with hashline anchors (rejects on file change)
fff Fast file search via fff-bun subprocess (frecency-ranked)
background-bash Run long-lived bash commands without blocking the agent
webfetch Fetch URLs as text/markdown/HTML (max 5MB)
context7 Up-to-date library docs via Context7 MCP

Agent Communication

Package Description
pi-mesh P2P agent communication via Zenoh β€” peer discovery, direct messaging, channels
teams Multi-agent delegation β€” spawn workers, assign tasks, collect results

Memory & Context

Package Description
ouija Session-history search β€” raw conversations, dead sessions, BM25 recall
context TUI view showing loaded extensions, skills, context usage
worktree-summaries Injects current worktree path into context for compaction survival

Model & Prompt

Package Description
model-shortcuts Slash commands for quick model switching (/opus, /zai, etc.)
model-hints Injects latest available models into system prompt
default-prompt Default system prompt β€” always injected
prompt-templates Bundled slash-command templates (/cmd.handoff, /cmd.wtf, etc.)

Git & Safety

Package Description
git-safety Blocks destructive git commands, protects .git/
git-ai Tracks AI-authored code via git-ai agent-v1 protocol

UI & Display

Package Description
powerline-footer Powerline-style status bar + welcome overlay
lipgloss-theme Custom TUI theme
core-edit-ui Shiki syntax-highlighted diffs for the edit tool
core-read-ui Collapsible UI + timing for the read tool
notify Desktop notification when agent finishes (OSC 777)
session-tab-title Tab title = stage icon + topic + agent identity (status())
image-links Clickable file:// links for images (OSC 8 hyperlinks)

Session Control

Package Description
lock-mode /lock disables all write tools β€” read-only mode
reload /reload-runtime to hot-reload extensions
fork-fixes Extension-level fork patches (drops orphaned tool results)

Skills & Analysis

Package Description
skills Skills package manager CLI wrapper
nested-skills Discovers nested SKILL.md files pi's scanner missed
tldr-code Semantic code search, call graphs, dead code detection via llm-tldr

Workflow

Package Description
defaults Directory-aware read, AGENTS.md discovery, git rebase helper, auto naming
cwd Change session base directory (/cwd <path>)
code-review-guard Injects code health prompt after code-reading tool results
mid-mortem Captures decisions/progress before compaction discards context

About

πŸ’„ pi extensions for bananas 🍌

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages