Zum Inhalt

Pi Coding Agent

Pi ist ein quelloffener, terminal-fokussierter AI-Coding-Agent von Earendil Works. Er läuft direkt in Ihrem Projektverzeichnis, versteht das Repository, bearbeitet Dateien, führt Befehle aus und lässt Sie Änderungen prüfen, bevor sie übernommen werden.

Pi ist modellagnostisch und unterstützt benutzerdefinierte OpenAI-kompatible Endpunkte. In Kombination mit unserer in der Schweiz betriebenen Everyware AI API bleiben Ihre Prompts, Quellcodes und Antworten innerhalb unserer Schweizer GPU-Infrastruktur.


Hauptmerkmale

  • Terminal-First-TUI: Interaktives Arbeiten im Terminal, ohne das Projektverzeichnis zu verlassen.
  • Benutzerdefinierte Provider: Jeder OpenAI-kompatible Endpunkt kann über models.json registriert werden.
  • Denkstufen: Reasoning-Aufwand pro Modell über /thinking oder das Suffix :level steuern.
  • Sitzungskontrolle: Sitzungen verzweigen, zurückspulen und fortsetzen, ohne den bisherigen Kontext zu verlieren.
  • Volle Datensouveränität: Alle Modellanfragen laufen über unsere Schweizer Everyware AI API.

Installation

curl -fsSL https://pi.dev/install.sh | sh

Benötigt Node.js 22.19 oder neuer:

npm install -g --ignore-scripts @earendil-works/pi-coding-agent

Prüfen Sie die Installation:

pi --version

Konfiguration

1. API-Key speichern

Exportieren Sie Ihren virtuellen API-Key als Umgebungsvariable:

export EW_AI_API_KEY="sk-bf-..."

Fügen Sie die Zeile in Ihr Shell-Profil (~/.bashrc, ~/.zshrc) ein, damit der Key dauerhaft verfügbar ist.

2. Gateway registrieren

Erstellen oder bearbeiten Sie ~/.pi/agent/models.json:

{
  "$schema": "https://pi.dev/schemas/models.schema.json",
  "providers": {
    "ew": {
      "name": "Everyware AI API",
      "baseUrl": "https://ai.ewcs.ch/v1",
      "api": "openai-completions",
      "apiKey": "$EW_AI_API_KEY",
      "models": [
        {
          "id": "flagship",
          "name": "Everyware Flagship",
          "reasoning": true,
          "input": ["text", "image"],
          "contextWindow": 1048576,
          "maxTokens": 131072
        },
        {
          "id": "balanced",
          "name": "Everyware Balanced",
          "reasoning": true,
          "input": ["text", "image"],
          "contextWindow": 1000000,
          "maxTokens": 131072
        },
        {
          "id": "fast",
          "name": "Everyware Fast",
          "reasoning": true,
          "input": ["text", "image"],
          "contextWindow": 262144,
          "maxTokens": 131072
        }
      ]
    }
  }
}

Die Provider-ID ew ergibt zusammen mit den Modell-IDs die Selektoren ew/flagship, ew/balanced und ew/fast.

Zugangsdaten für benutzerdefinierte Provider

Der Befehl /login von Pi deckt nur integrierte Provider ab. Benutzerdefinierte Modelle erscheinen in /model, sobald apiKey aufgelöst werden kann — in diesem Beispiel über die Umgebungsvariable EW_AI_API_KEY.

3. Pi starten

cd /path/to/project
pi --model ew/flagship

Prüfen Sie, ob das Gateway und seine Modelle registriert sind:

pi --list-models ew
pi auth check --provider ew

Typische Befehle und Workflows

  • Interaktiv starten:
    pi
    
  • Modell auswählen:
    pi --model ew/balanced
    
  • Denkstufe setzen:
    pi --model ew/flagship:high
    
  • In der TUI:
    • /model – Modellauswahl öffnen (lädt models.json neu)
    • /thinking – Reasoning-Stufe ändern
    • /settings – allgemeine Einstellungen bearbeiten
    • Ctrl+L – Modell wechseln
  • Einmaliger Prompt:
    pi -p "Erkläre die Architektur dieses Repositories."