Konfigurasi, kustomisasi, pengaturan platform, dan referensi API untuk Pi.

Perkembangan

Lihat AGENTS.md untuk pedoman tambahan.

Pengaturan

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

Jalankan dari sumber:

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

Skrip dapat dijalankan dari direktori mana pun. Pi menyimpan direktori kerja penelepon saat ini.

Fork / Rebranding

Konfigurasikan melalui package.json:

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

Ubah kolom name, configDir, dan bin untuk fork Anda. Mempengaruhi CLI spanduk, jalur konfigurasi, dan nama variabel lingkungan.

Resolusi Jalur

Tiga mode eksekusi: npm instal, biner mandiri, tsx dari sumber.

Selalu gunakan src/config.ts untuk aset paket:

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

Jangan pernah menggunakan __dirname secara langsung untuk aset paket.

Perintah Debug

/debug (tersembunyi) menulis ke ~/.pi/agent/pi-debug.log:

  • Dirender TUI baris dengan kode ANSI
  • Pesan terakhir dikirim ke LLM

Pengujian

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

Struktur Proyek

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