Configuration, personnalisation, paramètres de plateforme et références API pour Pi.

Développement

Voir AGENTS.md pour des directives supplémentaires.

Installation

git clone https://github.com/earendil-works/pi-mono
cd pi-mono
npm install
npm run build

Exécuter à partir des sources:

/path/to/pi-mono/pi-test.sh

Le script peut être exécuté à partir de n'importe quel répertoire. Pi conserve le répertoire de travail actuel de l'appelant.

Forkage / Rebranding

Configurer via package.json:

{
  "piConfig": {
    "name": "pi",
    "configDir": ".pi"
  }
}

Modifiez les champs name, configDir et bin pour votre fork. Affecte la bannière CLI, les chemins de configuration et les noms de variables d'environnement.

Résolution du chemin

Trois modes d'exécution: npm installation, binaire autonome, tsx depuis les sources.

Utilisez toujours src/config.ts pour les actifs du package:

import { getPackageDir, getThemeDir } from "./config.js";

N'utilisez jamais __dirname directement pour les actifs du package.

Commande de débogage

/debug (caché) écrit dans ~/.pi/agent/pi-debug.log:

  • Lignes TUI rendues avec des codes ANSI
  • Derniers messages envoyés au LLM

Essai

./test.sh                         # Run non-LLM tests (no API keys needed)
npm test                          # Run all tests
npm test -- test/specific.test.ts # Run specific test

Structure du projet

packages/
  ai/           # LLM provider abstraction
  agent/        # Agent loop and message types  
  tui/          # Terminal UI components
  coding-agent/ # CLI and interactive mode