Skip to content

Pi

Prerequisites

  1. Node.js 18+
  2. Pi – install and authenticate per shittycodingagent.ai:
    bash
    npm install -g @mariozechner/pi-coding-agent
    pi          # run once and `/login`, or set a provider env var

Install & Run

bash
# Install daemon
npm install -g @cmdctrl/pi

# Register
cmdctrl-pi register -s https://api.cmd-ctrl.ai

# Start
cmdctrl-pi start

How It Works

Cmd+Ctrl's pi daemon spawns the pi CLI once per task and reads message history directly from pi's native session store at ~/.pi/agent/sessions/. Sessions started through Cmd+Ctrl are fully interoperable with the pi CLI – you can pi --resume a session that was created via Cmd+Ctrl and continue it in your terminal, and vice versa.

Override the pi binary location with PI_BIN=/path/to/pi if needed.

Troubleshooting

"pi not found" – Ensure pi is in your PATH: which pi. If you installed via a tool like volta or fnm, you may need to set PI_BIN=/absolute/path/to/pi.

"pi CLI X.Y.Z differs from bundled SDK X.Y.W" – The daemon warns if the globally-installed pi CLI version differs from the SDK the daemon bundles. Usually harmless; if session reads fail, upgrade @cmdctrl/pi so the two match.

Session doesn't appear in pi --resume – The session must live under pi's default sessions dir. The Cmd+Ctrl daemon always writes there by default; this only breaks if PI_BIN points to an incompatible version.

Provider errors (401, no model configured) – pi needs a working provider. Run pi once interactively and configure a provider (/login for OAuth providers, or set env vars like ANTHROPIC_API_KEY, OPENAI_API_KEY, etc.).