• English
  • PI

    A minimal, extensible open-source terminal coding agent (by earendil-works). By default the model gets just four tools — read / write / edit / bash — extended on demand via Extensions, Skills and Pi Packages. A custom provider is one JSON file away.

    Install

    npm
    Run with npx
    Arch Linux
    npm install -g --ignore-scripts @earendil-works/pi-coding-agent

    --ignore-scripts skips dependency lifecycle scripts — PI does not need them, and it reduces supply-chain risk.

    npm package: @earendil-works/pi-coding-agent; website: pi.dev.

    Old package name deprecated

    Since May 2026 the package moved from @mariozechner/pi-coding-agent to @earendil-works/pi-coding-agent. Do not use the old name from stale tutorials; existing installs migrate with pi update --self.

    Prerequisites

    • PI installed (pi --version prints a version)
    • An OpenAI-format group key from the API Keys page

    Configure

    Edit ~/.pi/agent/models.json and add ByteSeek as a custom provider:

    {
      "providers": {
        "byteseek": {
          "baseUrl": "https://tokens.byteseek.ai/v1",
          "api": "openai-completions",
          "apiKey": "sk-your-key",
          "models": [
            { "id": "gpt-5.6-sol", "name": "GPT-5.6 Sol", "reasoning": true },
            { "id": "gpt-5.6-terra", "name": "GPT-5.6 Terra", "reasoning": true }
          ]
        }
      }
    }
    • Model ids come from the model plaza; prefix them when using a composite key.
    • apiKey accepts the environment form "$BYTESEEK_API_KEY" if you prefer not to store the key on disk.
    • For an Anthropic-format group key, set api to anthropic-messages and baseUrl to https://tokens.byteseek.ai (no /v1).

    The file reloads automatically every time /model opens — no session restart after edits.

    What you should see
    • /model shows a byteseek section listing the models from your models.json (e.g. GPT-5.6 Sol);
    • After selecting, the status bar shows the current model ID;
    • A test message returns normally with no 401 / 403.

    Verify

    Start pi, switch via /model (or Ctrl+L) to a byteseek model, and send a message. Charges appear on the usage page.

    Common issues

    SymptomFix
    No models under /modelSyntax error in models.json, or no apiKey / credentials configured for the provider
    401Wrong apiKey; with the env-var form confirm the variable is exported
    403Model not in group or wrong format, see Error Codes
    Server rejects the developer roleAdd "compat": { "supportsDeveloperRole": false } to the provider (usually unnecessary on ByteSeek's standard endpoints)
    © 2026 ByteSeek Limited. All rights reserved.TermsPrivacyDisclaimer