Show HN: Pi Extension to Maximize AI credits across Cursor, Codex, ClaudeCode
A Pi coding agent extension that bridges multiple coding agents via ACP, allowing users to leverage AI credits from Cursor, Codex, Claude Code, and Rovo in one unified interface.
Notifications You must be signed in to change notification settings
Fork 0
Star 0
BranchesTags
Open more actions menu
Folders and files
NameName
Last commit message
Last commit date
Latest commit
History
10 Commits
10 Commits
.gitignore
.gitignore
HOW_IT_WORKS.md
HOW_IT_WORKS.md
README.md
README.md
USAGE_GUIDE.md
USAGE_GUIDE.md
claude-code-acp.ts
claude-code-acp.ts
codex-app-server.ts
codex-app-server.ts
cursor-acp.ts
cursor-acp.ts
package-lock.json
package-lock.json
package.json
package.json
rovo-acp.ts
rovo-acp.ts
Repository files navigation
Pi Agent Extensions — How Each One Works
The common idea (read this first)
All four files do the same job: they let Pi (the host coding agent) drive another coding agent's CLI as if it were just another model in Pi's /model picker. It uses ACP (https://agentclientprotocol.com/) to communicate with any coding agent. You pick "Cursor Sonnet" or "GPT-5 [codex-app-server]" or "Opus [claude-code-acp]" in Pi, and your turn is secretly executed by that external agent running in your workspace.
They all follow this shape:
┌────────────────────────────────────────────────────────────────────┐ │ Pi host process │ │ │ │ /model picker ──► pi.registerProvider(...) │ │ │ │ │ │ streamSimple(model, context) │ │ ▼ │ │ ┌─────────────┐ builds prompt ┌──────────────────────┐ │ │ │ Provider │ ─────────────────► │ Bridge (singleton) │ │ │ │ stream fn │ ◄───────────────── │ serializes turns, │ │ │ └─────────────┘ stream events │ owns 1 session │ │ │ ▲ └──────────┬───────────┘ │ │ │ AssistantMessageEventStream │ spawn │ │ │ (text/thinking deltas) ▼ │ └────────┼────────────────────────────────────────┼──────────────────┘ │ │ │ ▼ │ ┌───────────┬──────────┐ └──── JSON-RPC over stdio ───► │ Child process (CLI) │ │ cursor-agent / rovo │ │ codex / claude-acp │ └──────────────────────┘
The bundled extensions:
cursor-acp.ts — Cursor Agent over ACP
codex-app-server.ts — OpenAI Codex over app-server
claude-code-acp.ts — Claude Code over ACP (uses the official ACP SDK)
rovo-acp.ts — Atlassian Rovo Dev over ACP
Installing into ~/.pi/agent/extensions
Pi auto-discovers *.ts files in ~/.pi/agent/extensions, but external npm dependencies are not bundled into those files.
Clone this repo:
git clone https://github.com/sathish316/pi-omniagent-extensions.git cd pi-omniagent-extensions
Copy the extension files into your Pi extensions directory:
mkdir -p ~/.pi/agent/extensions cp cursor-acp.ts rovo-acp.ts codex-app-server.ts claude-code-acp.ts \ package.json ~/.pi/agent/extensions/
Install the extension dependencies:
cd ~/.pi/agent/extensions npm install npm run check:claude-code-acp-deps
Make sure the underlying agent CLIs are installed and on your PATH for the extensions you want to use: cursor-agent (cursor-acp), rovo (rovo-acp), codex (codex-app-server). claude-code-acp pulls its runtime from npm.
Restart Pi. The bridged models appear in the /model picker tagged with their provider, e.g. [codex-app-server] or [claude-code-acp].
The claude-code-acp.ts extension needs:
@agentclientprotocol/sdk
@agentclientprotocol/claude-agent-acp
The Pi API packages imported by the extensions are provided by the running Pi installation.
About
Pi coding agent extensions that helps you connect to all coding agents from one place using ACP and maximize your AI credits across Cursor, Codex, Claude Code, Rovo
Resources
Readme
Uh oh!
There was an error while loading. Please reload this page.
Activity
Stars
0 stars
Watchers
0 watching
Forks
0 forks
Report repository
Releases
No releases published
Packages 0
Uh oh!
There was an error while loading. Please reload this page.
Contributors
Uh oh!
There was an error while loading. Please reload this page.
Languages
TypeScript 100.0%