Skip to content

Pi ​

Agent ID: pi

Pi coding agent by Mario Zechner. Pi v0.73 does not implement the Agent Client Protocol - its --mode rpc uses a Pi-specific JSON dialect that is not ACP-compatible. The catalog entry is preserved so detect still surfaces Pi as installed, but live model resolution is skipped and session prompts will fail. Use Pi directly via the pi CLI until ACP support lands.

Non-ACP agent

acpCompatible is set to false for Pi. resolveModels() skips the session probe for Pi and shows the static "Default" placeholder. Do not rely on agents-wire to drive Pi until a future release adds ACP support.

Install ​

bash
npm install -g @mariozechner/pi-coding-agent
export PI_API_KEY="your-api-key"

Quick Start ​

ts
import { agents } from "@pivanov/agents-wire";

const result = await agents.ask(
  "pi",
  "Explain this codebase",
  {
    permission: "auto-allow",
  },
);

console.log(result.text);

Model Selection ​

Pi is a single-model product. options.model and options.effort are not exposed and have no effect.

Capabilities ​

FeatureSupported
ask / stream / session❌ (fails until Pi adds ACP support)
askJson❌
MCP stdio❌
MCP http/sse❌
Session listing (listSessions)❌
Tool call interception❌

Cost Tracking ​

Pi is subscription-based and does not report per-turn costUsd. cost.snapshot.totalUsd stays at 0, so maxCostUsd does not trigger. Monitor usage with cost.turnCount.

Gotchas ​

  • PI_API_KEY must be set before use.
  • Session listing is not supported; listSessions() throws CapabilityNotSupportedError.
  • No per-turn cost data - Pi operates on a subscription model.