xcb
Install xcb
Theme
Appearance

Compare

xcb and pi

pi is a minimal coding agent that you reshape with TypeScript extensions, and it calls 15+ model providers directly. xcb sits above the providers’ own agents and routes each task to one of your subscriptions; you can reshape its terminal and routing, and nothing you add widens what a provider run may do.

Updated . Sources are listed below.

Which one to pick

Pick pi when

  • You want to change the agent itself: its tools, prompts, context handling, and interface.
  • You want one agent across 15+ providers, your own API keys, or local models.
  • You want the agent to work directly on your machine, with your shell, Git, and network.
  • You want to embed an agent with its SDK or drive it over RPC.

Pick xcb when

  • You pay for Claude, Codex, or Devin and want each task to run through that provider’s own agent.
  • You want each task sent to an account that can take it now, and held there until the run ends.
  • You want to customize the harness and still have every provider run sandboxed with the same tools.

Side by side

pi and xcb at a glance
Aspectpixcb
What it isA coding agent with a minimal core that you extendA router and terminal around the providers’ own agents
Model access15+ providers through API keys or OAuth, including Claude Pro/Max and ChatGPT plansYour Claude, Codex, and Devin subscriptions, through Claude Code, Codex, and the Devin CLI
What you changeTools, commands, prompts, compaction, and the whole interface, through TypeScript extensionsPanes, hooks, and reflex programs; none of them can add tools or permissions to a provider run
PermissionsNo permission prompts; run it in a container or build your own confirmation flowEvery provider run is sandboxed; commands run in an offline Linux VM on macOS ARM64
ScriptingPrint and JSON modes, RPC over stdin and stdout, and an SDKxcb --json route takes one task and returns the result, the account and model used, and how the run ended
LearningAsk pi to write an extension, then load it with /reloadTwo reflexes learn which model tier you want and when a task stopped early; you can roll them back
PlatformsmacOS, Linux, and WindowsmacOS ARM64 and Linux x86_64, with no Windows build; Codex and Devin need macOS, and Claude on Linux isn’t confirmed
LicenseMITMIT

Devin support covers specific Devin CLI builds on macOS; a coding task on a signed-in Devin account passed with Devin CLI 3000.11.3.

What you can reshape

Both projects treat the harness as yours to change. In pi, the agent loop itself is yours: an extension can add tools, replace compaction, or redraw the interface, and pi can write the extension for you.

xcb keeps the agent loop inside each provider’s own tool and lets you reshape what surrounds it. Panes describe what the terminal shows, and /pane generate writes one from a description. Hooks run programs you choose when a session or turn starts or ends. Reflex programs change how xcb picks a model tier or reads how a turn ended.

None of these can give a provider run more tools, files, or network access. Panes are layout, not code. A hook stays off until you enable it, runs with a cleared environment, and won’t run again if its file changes. A replacement reflex program runs only if it has no side effects and calls no agents. A harness that tunes its own routing rules is in development, and the current build does not run self-modifying routing policies.

Using a Claude subscription

pi can sign in to a Claude Pro or Max plan itself, or use an Anthropic API key, and calls Claude directly. xcb runs the unmodified Claude Code binary, signed in through Claude Code’s own claude setup-token flow. Anthropic’s Claude Code legal page ↗ says OAuth sign-in with a Claude plan “is designed to support ordinary use of Claude Code and other native Anthropic applications.” The same page says its rules don’t “prevent an end user from signing in to the unmodified Claude Code binary with their own Claude subscription”.

For ChatGPT plans, OpenAI’s Codex for Open Source page ↗ says developers “should code in the tools they prefer, whether that’s Codex, OpenCode, Cline, pi, OpenClaw, or something else”.

Sources