Preise

Schnellstart

Quelldateien

Diese Seite wurde aus den folgenden Quelldateien erstellt:

Pi ist ein minimalistisches Terminal-Coding-Harness, das sich an individuelle Workflows anpassen lässt, ohne dass ein Fork der Internals erforderlich ist. Das Projekt bietet eine einheitliche Multi-Provider-LLM-API, Agent-Runtime mit Tool-Calling und State-Management sowie eine interaktive Coding-Agent-CLI.

Systemanforderungen

Das Projekt benötigt Node.js Version 20.0.0 oder höher (package.json:43-45). Diese Anforderung ist in der engines-Konfiguration des Root-Package.json definiert und gilt für alle Pakete im Monorepo.

Unterstützte Plattformen:

PlattformHinweise
LinuxPrimärplattform
macOSPrimärplattform
WindowsSiehe docs/windows.md
Android (Termux)Siehe docs/termux.md
tmuxSiehe docs/tmux.md

Plattformspezifische Dokumentation ist unter packages/coding-agent/README.md:81 referenziert.

Installation

Empfohlene Installation (Global via npm)

Die schnellste Methode zur Inbetriebnahme ist die globale Installation des Coding-Agent-Pakets:

bash
1npm install -g @mariozechner/pi-coding-agent

(packages/coding-agent/README.md:61-63)

Nach der Installation steht der Befehl pi systemweit zur Verfügung.

Installation aus dem Quellcode

Für Entwickler, die am Projekt mitwirken möchten oder Zugriff auf die neuesten Änderungen benötigen:

bash
1# Repository klonen
2git clone https://github.com/badlogic/pi-mono.git
3cd pi-mono
4
5# Alle Abhängigkeiten installieren
6npm install
7
8# Alle Pakete bauen
9npm run build

(README.md:50-52)

Hinweis: Der Befehl npm run check erfordert eine vorherige Ausführung von npm run build, da das web-ui-Paket tsc verwendet, welches kompilierte .d.ts-Dateien von Abhängigkeiten benötigt (README.md:58).

Alternative Installationsmethoden

MethodeBefehlAnwendungsfall
Lokaler Testlauf./pi-test.shPi aus Quellen ausführen (muss vom Repo-Root ausgeführt werden)
Entwicklungnpm run devHot-Reload für alle Pakete

(README.md:55, package.json:16)

Authentifizierung

Pi unterstützt zwei Authentifizierungsmethoden: API-Key-basierte Authentifizierung und OAuth-Login über bestehende Subscriptions.

API-Key Authentifizierung

Die direkte Methode verwendet Umgebungsvariablen für den API-Key:

bash
1export ANTHROPIC_API_KEY=sk-ant-...
2pi

(packages/coding-agent/README.md:67-70)

OAuth Subscription Login

Alternativ kann eine bestehende Subscription verwendet werden:

bash
1pi
2/login  # Provider auswählen

(packages/coding-agent/README.md:74-77)

Unterstützte Provider

Subscriptions:

  • Anthropic Claude Pro/Max
  • OpenAI ChatGPT Plus/Pro (Codex)
  • GitHub Copilot
  • Google Gemini CLI
  • Google Antigravity

API-Keys:

  • Anthropic, OpenAI, Azure OpenAI
  • Google Gemini, Google Vertex
  • Amazon Bedrock, Mistral, Groq
  • Cerebras, xAI, OpenRouter
  • Vercel AI Gateway, ZAI
  • OpenCode Zen, OpenCode Go
  • Hugging Face, Kimi For Coding, MiniMax

(packages/coding-agent/README.md:89-115)

Detaillierte Einrichtungsanleitungen für einzelne Provider sind in docs/providers.md verfügbar (packages/coding-agent/README.md:116).

Erste Schritte

Interaktiven Modus starten

Nach erfolgreicher Authentifizierung startet der interaktive Modus durch einfaches Ausführen von pi. Die Benutzeroberfläche besteht aus vier Hauptbereichen:

  1. Startup Header - Zeigt Shortcuts, geladene AGENTS.md-Dateien, Prompt-Templates, Skills und Extensions
  2. Messages - Benutzer-Nachrichten, Assistant-Antworten, Tool-Calls und -Ergebnisse, Benachrichtigungen
  3. Editor - Eingabebereich; Rahmenfarbe indiziert Thinking-Level
  4. Footer - Arbeitsverzeichnis, Session-Name, Token/Cache-Verbrauch, Kosten, Context-Auslastung, aktuelles Modell

(packages/coding-agent/README.md:126-132)

Standard-Tools

Standardmäßig stellt Pi dem Modell vier Tools zur Verfügung:

ToolFunktion
readDateien lesen
writeDateien schreiben
editDateien bearbeiten
bashShell-Befehle ausführen

(packages/coding-agent/README.md:78-79)

Das Modell nutzt diese Tools, um Benutzeranfragen zu erfüllen. Zusätzliche Fähigkeiten können via Skills, Prompt-Templates, Extensions oder Pi-Packages hinzugefügt werden.

Editor-Funktionen

FunktionBedienung
Dateireferenz@ tippen für Fuzzy-Suche
Pfad-VervollständigungTab
MehrzeiligShift+Enter (Ctrl+Enter in Windows Terminal)
Bilder einfügenCtrl+V (Alt+V auf Windows), oder Drag & Drop
Bash-Befehle!command sendet Output an LLM, !!command ohne Senden

(packages/coding-agent/README.md:137-144)

Entwicklung Tests

Build-Prozess

Das Monorepo verwendet npm Workspaces mit einer spezifischen Build-Reihenfolge:

bash
1npm run build

(README.md:52)

Die Build-Reihenfolge ist in package.json:15 definiert: tui → ai → agent → coding-agent → mom → web-ui → pods.

Linting und Type-Checking

Vor der Einreichung von Pull Requests müssen folgende Checks bestanden werden:

bash
1npm run check  # Lint, Format und Type-Check
2./test.sh      # Tests ausführen

(CONTRIBUTING.md:27-30)

Wichtig: npm run check setzt voraus, dass npm run build zuvor ausgeführt wurde (README.md:58).

Tests ausführen

bash
1./test.sh  # Überspringt LLM-abhängige Tests ohne API-Keys

(README.md:54)

Tests, die LLM-API-Aufrufe erfordern, werden automatisch übersprungen, wenn die entsprechenden API-Keys nicht gesetzt sind.

Häufige Probleme und Lösungen

Problem: npm run check schlägt fehl

Ursache: Der Check-Befehl benötigt kompilierte .d.ts-Dateien von Abhängigkeiten.

Lösung:

bash
1npm run build
2npm run check

(README.md:58)

Problem: Node.js Version inkompatibel

Ursache: Das Projekt benötigt Node.js ≥ 20.0.0.

Lösung: Node.js Version überprüfen und ggf. aktualisieren:

bash
1node --version  # Sollte >= 20.0.0 anzeigen

(package.json:43-45)

Problem: API-Key wird nicht erkannt

Ursache: Umgebungsvariable nicht korrekt gesetzt oder falscher Provider.

Lösung:

  1. Umgebungsvariable überprüfen: echo $ANTHROPIC_API_KEY
  2. Alternativ /login im interaktiven Modus verwenden
  3. Provider-spezifische Dokumentation unter docs/providers.md konsultieren

(packages/coding-agent/README.md:67-77)

Problem: Alt+Enter funktioniert nicht unter Windows Terminal

Ursache: Windows Terminal verwendet Alt+Enter standardmäßig für Vollbild.

Lösung: Terminal-Einstellungen anpassen gemäß docs/terminal-setup.md.

(packages/coding-agent/README.md:199)

Nächste Schritte

Nach erfolgreicher Einrichtung empfiehlt sich die Erkundung folgender Bereiche:

Für Mitwirkende: Die CONTRIBUTING.md enthält Richtlinien für Pull Requests und die Projektphilosophie (README.md:44-46).