Pi Extensions AI Agent

by narumiruna• 754•• Scanned•Claim this listing•Request removal
Coding Agentsai agentscodexcodex clicoding agentnodejs

A monorepo of Pi Coding Agent extensions

Pi Extensions is an open-source ai agent by narumiruna, written mainly in TypeScript, with 754 GitHub stars and the MIT license. Its code was last updated Oct 31, 2026.

🧩 Pi Extensions for the Pi Coding Agent

npm scope License: MIT

Independently installable Pi Coding Agent extensions and reusable extension libraries for coding, research, browser automation, workflow management, observability, and terminal ergonomics.

Install only what you need. Published packages use the @narumitw npm scope, and package READMEs identify source-only exceptions.

🚀 Quick start

Install an extension permanently:

pi install npm:@narumitw/pi-goal

Try one without adding it permanently:

pi -e npm:@narumitw/pi-statusline

Combine multiple extensions:

pi -e npm:@narumitw/pi-goal \
  -e npm:@narumitw/pi-statusline \
  -e npm:@narumitw/pi-lsp

[!IMPORTANT] Pi extensions run with your full user permissions. Review an extension before installing it from any third party.

⭐ Extensions I use every day

These extensions are part of my daily Pi setup:

ExtensionWhy I use it
pi-btwAsk a quick side question without polluting the main context.
pi-accountsSwitch between named subscription OAuth accounts.
pi-caffeinateKeep my machine awake so Pi can keep working.
pi-codex-compactSpend a little more for better compaction quality.
pi-stampSee useful details for each response, such as its timestamp.
pi-starshipMatch Pi's footer to my Starship shell setup.
pi-syncSync my Pi configuration across all my devices through S3.
pi-usageCheck my Codex usage and limit reset times without opening Codex.

📦 Choose an extension

Coding and delegation

PackageUse it forInstall
pi-codex-compactUse OpenAI Codex Remote Compaction V2 to persist and replay bounded opaque checkpoints, with /codex-compact manual controls and safe Pi-native fallback.pi install npm:@narumitw/pi-codex-compact
pi-codex-imagegenGenerate images through /codex-imagegen and a default-enabled Codex tool, without starting a Codex agent.pi install npm:@narumitw/pi-codex-imagegen
pi-context-managementOpt into experimental summary-free context rollover with bounded branch-history recall and branch-local notes.pi install npm:@narumitw/pi-context-management
pi-filesBrowse and attach exact file snapshots, and independently restrict native edits to selected targets through /files.Build and install locally; not yet published
pi-illustratePreview static SVG and Mermaid diagrams through Kitty graphics, with appearance-aware resizing and optional model images.Install locally; not yet published
pi-lspLanguage-server diagnostics and code actions across JavaScript, TypeScript, Python, Rust, Go, Ruby, C/C++, JVM, .NET, Swift, shell, infrastructure formats, and more.pi install npm:@narumitw/pi-lsp
pi-plan-modeCodex-like, read-only /plan collaboration before implementation begins.pi install npm:@narumitw/pi-plan-mode
pi-subagentsStart bounded background Pi jobs with authenticated main-agent messaging.pi install npm:@narumitw/pi-subagents

Browser and research

PackageUse it forInstall
pi-chrome-devtoolsInspect tabs, navigate pages, evaluate JavaScript, and capture screenshots through Chrome DevTools Protocol.pi install npm:@narumitw/pi-chrome-devtools
pi-firecrawlScrape pages, crawl websites, discover URLs, and search the web with Firecrawl.pi install npm:@narumitw/pi-firecrawl

Task and workspace workflows

PackageUse it forInstall
pi-btwAsk a quick /btw side question without adding it to the main conversation.pi install npm:@narumitw/pi-btw
pi-caffeinatePrevent system sleep while Pi processes a long-running prompt.pi install npm:@narumitw/pi-caffeinate
pi-goalKeep the agent working until a goal is verified complete; optionally enable an experimental ordered queue.pi install npm:@narumitw/pi-goal
pi-notesBrowse and edit global Markdown notes in an isolated embedded-agent workspace.pi install npm:@narumitw/pi-notes
pi-progressKeep branch-aware multi-step work visible above the editor with the update_progress model tool.pi install npm:@narumitw/pi-progress
pi-worktreeCreate, switch, remove, and prune Git worktrees while carrying the Pi session into another workspace.pi install npm:@narumitw/pi-worktree

Current Plan and Goal releases can coexist on the characterized Pi runtime through their anonymous cooperative workflow mutex. The deprecated combined pi-workflow package has no atomic Plan-to-Goal replacement; follow its archived migration instructions.

Local collaboration

PackageUse it forInstall
pi-chatJoin ephemeral peer-to-peer chat rooms that stay separate from Pi sessions, prompts, and model context.pi install npm:@narumitw/pi-chat
pi-fleetStart a separate Pi process in a terminal split and connect explicit local Pi sessions for bounded messages and one-turn requests.pi install npm:@narumitw/pi-fleet
pi-herdrReport Pi lifecycle state and metadata to Herdr and show sibling agent status.pi install npm:@narumitw/pi-herdr

Accounts and data

PackageUse it forInstall
pi-accountsSwitch named OpenAI Codex, Anthropic, GitHub Copilot, Kimi For Coding, OpenRouter, Radius, and xAI OAuth accounts with /accounts.pi install npm:@narumitw/pi-accounts
pi-dotenvLoad one explicit dotenv file early enough for provider credential discovery during normal Pi startup.pi install npm:@narumitw/pi-dotenv
pi-recallSave selected text messages locally and preview or quote them across Pi sessions.pi install npm:@narumitw/pi-recall
pi-usageView provider usage, limits, reset times, and API balances with /usage.pi install npm:@narumitw/pi-usage
pi-syncSync allowlisted Pi settings and optional sessions through Cloudflare R2 or S3-compatible storage.pi install npm:@narumitw/pi-sync

Status and observability

PackageUse it forInstall
pi-analyticsReview private, content-free local metrics for model calls, skills, tools, response cycles, and observed provider reliability through /analytics.pi install npm:@narumitw/pi-analytics
pi-cache-hit-monitorShow live prompt-cache reuse, token, and estimated cost diagnostics above the editor.pi install npm:@narumitw/pi-cache-hit-monitor
pi-github-prShow current-branch pull request checks, reviews, and comment counts through the authenticated gh CLI.pi install npm:@narumitw/pi-github-pr
pi-inspectInspect current session context and live tool calls in a private, read-only browser viewer with /inspect.pi install ./packages/pi-inspect
pi-langfuseSend agent runs, generations, token usage, costs, and tool activity to Langfuse.pi install npm:@narumitw/pi-langfuse
pi-notifySend Telegram reminders when Pi settles, with optional inactivity timing and computer/session/worktree details.pi install ./packages/pi-notify
pi-rexShow Pi sessions in Rex above the editor and switch to their terminal panes with a click or keyboard picker.pi install ./packages/pi-rex; not yet published
pi-stampShow configurable timestamps with opt-in assistant metadata, response timing, and tool timing in the TUI transcript.pi install npm:@narumitw/pi-stamp
pi-starshipUse a native Starship-style TOML footer with Pi-specific modules and no Starship binary dependency.pi install npm:@narumitw/pi-starship
pi-statuslineShow model, tools, Git state, context usage, tokens, cost, and time in a preset or JSON-configured footer.pi install npm:@narumitw/pi-statusline
pi-toolBrowse every configured tool and inspect its active state, source, parameter schema, and prompt guidelines with /tool.pi install npm:@narumitw/pi-tool
pi-tickerShow configurable Yahoo Finance market quotes in a width-aware widget above the editor.pi install npm:@narumitw/pi-ticker

Choose either pi-starship or pi-statusline; do not enable both footer extensions together.

🧱 Extension libraries

PackageUse it forInstall
pi-tui-kitExtend @earendil-works/pi-tui with reusable navigation helpers and declarative action, detail, settings, and multi-select flows.npm install @narumitw/pi-tui-kit

Libraries are runtime dependencies for extension authors, not standalone Pi extensions. New standard manager menus should use @narumitw/pi-tui-kit; extensions continue to own domain state, commands, settings persistence, confirmations, and specialized UI.

🔧 Advanced installation

<details> <summary>Install this repository directly from GitHub</summary>

Install the repository as one Pi package:

pi install git:github.com/narumiruna/pi-extensions

The repository root Pi manifest explicitly lists every extension under packages/, so this enables all of them. Its install prepare step generates Kit runtime JavaScript and builds Inspector browser assets before hook setup, even when Pi omits development dependencies.

To load only selected extensions, replace the installed package entry in ~/.pi/agent/settings.json with a resource filter:

{
  "packages": [
    {
      "source": "git:github.com/narumiruna/pi-extensions",
      "extensions": [
        "packages/pi-accounts/src/index.ts",
        "packages/pi-usage/src/index.ts"
      ]
    }
  ]
}

Filters use resource paths relative to the repository root. A package directory such as packages/pi-accounts is not enough; select its src/index.ts entrypoint.

Restart Pi or run /reload after changing the filter. Update the checkout later with:

pi update --extensions
</details>

🧑‍💻 Local development

Use Node.js from .node-version with its bundled npm, then run from the repository root:

node scripts/check-install-policy.mjs
npm install
npm test
npm run check

npm test builds prerequisites, typechecks the test sources, and runs the root and workspace suites with Vitest. npm run build derives dependency-first order from workspace manifests, builds each prerequisite once, and stops before consumers if a prerequisite fails; workspace-list order is not a build contract. Staged typechecks use the same build planner. See test performance and isolation for package timing reports, cache behavior, and the reviewed shared-module test boundary. CI and release use npm ci with strict dependency script review and a three-day minimum age for new resolution. See dependency installation policy for script approvals, lockfile-age limitations, failed-update recovery, urgent-patch review, and toolchain upgrades.

Build generated entries before loading local packages, and use the generic npm pack workflow with an unscoped package name:

npm --workspace @narumitw/pi-goal run build --if-present
pi -e ./packages/pi-goal
npm run package:pack -- goal

# Pi Files requires a local build; it is not yet published to npm
npm --workspace @narumitw/pi-files run build --if-present
pi -e ./packages/pi-files
npm run package:pack -- files

# Libraries use the same generic pack workflow
npm run package:pack -- tui-kit

Run npm run to see all development, install, pack, and release workflows. Pull requests that change published package behavior should add release intent with npm run changeset. Packages version independently.

<details> <summary>Publishing a new scoped package</summary>

npm run package:public -- @narumitw/pi-new-extension only changes visibility for an existing npm package. If npm returns 404 for a brand-new package, publish it once with public access:

npm publish --workspace @narumitw/pi-new-extension --access public

After the initial publication, Changesets handles extensions and libraries through independent package versions.

</details>

🦋 Releases

A behavior-changing package pull request records its affected packages and SemVer bumps with:

npm run changeset

After changesets reach main, the release workflow creates or updates one version pull request. That pull request changes only selected package versions, dependency ranges where configured, changelogs, and the lockfile. Merging it publishes the new versions with npm provenance and creates package-specific tags and GitHub releases such as @narumitw/pi-goal@0.50.0.

Repository-only documentation, tests, tooling, and path migrations may omit a changeset. Use npm run changeset:status to inspect pending releases. Versioning and publication run through the release workflow; initial publication remains the manually approved exception described above.

@narumitw/pi-tui-kit remains independently versioned. Publish a new Kit API before raising an extension's compatibility floor to consume it; do not release an unpublished Kit API and its first consumer together.

🗂️ Repository structure

packages/                Extension packages and reusable libraries
deprecated/              Reference packages excluded from active workspace scripts
docs/                    Repository conventions and plans
.github/scripts/         GitHub Actions versioning and publishing helpers
scripts/                 Shared builds, checks, tests, and local workflow helpers
test/                    Root integration and repository tests

Each active package contains its own package.json, README.md, LICENSE, tsconfig.json, and TypeScript source under src/. Every extension keeps a thin src/index.ts source forwarder and declares one package entrypoint. An extension package may load that source entrypoint directly or publish a build-backed dist/index.ts bundle for Pi's Jiti runtime. Reusable libraries publish built ESM and declarations from dist/.

<details> <summary>Deprecated packages</summary>

The following packages remain available as source references but are excluded from active workspace scripts:

  • pi-codex-accounts — replaced by pi-accounts
  • pi-file-context and pi-edit-scope — merged into pi-files; follow the migration guide and do not co-load predecessors with the successor
  • pi-cbmem — deprecated without a replacement because a simple benchmark found insufficient benefit and substantially higher token usage
  • pi-retry — replaced by Pi's built-in provider retry and timeout behavior
  • pi-google-genai — replaced by the grounding-with-google-genai agent skill
  • pi-image-drop — deprecated without a replacement
  • pi-typesafe, pi-typesafe-compact, and pi-typesafe-search — deprecated without a replacement; source retained for reference, with no npm registry deprecation or new release
  • pi-workflow — replaced by focused Plan and Goal products; atomic Plan-to-Goal handoff has no replacement
  • pi-jupyter — deprecated without a replacement
  • pi-webui — deprecated without a replacement
  • pi-sidebar
  • pi-telegraph
  • pi-wait-what
</details>

📄 License

MIT. See LICENSE.

Pi Extensions alternatives

View more →

Similar ai agents in Coding Agents, ranked by GitHub stars. Compare licence, recent activity and scan status before you choose.

NameStarsLicenceLast updatedScan
Pi Extensions (this page)
narumiruna
754MITOct 31, 2026Scanned, no flagged issues
AutoGPT
Significant-Gravitas
188kNone foundNov 1, 2026Not scanned yet
Langchain
langchain-ai
149kMITNov 1, 2026Scanned, no flagged issues
Gemini CLI
google-gemini
109kApache-2.0Nov 1, 2026Scanned, no flagged issues
MetaGPT
FoundationAgents
71kMITJan 21, 2026Scanned, no flagged issues
Oh My Openagent
code-yeongyu
71kNone foundNov 1, 2026Not scanned yet