Desarrollo
Consulte AGENTS.md para obtener pautas adicionales.
Configuración
git clone https://github.com/earendil-works/pi-mono
cd pi-mono
npm install
npm run buildEjecutar desde la fuente:
/path/to/pi-mono/pi-test.shEl script se puede ejecutar desde cualquier directorio. Pi mantiene el directorio de trabajo actual de la persona que llama.
Bifurcación / Cambio de marca
Configurar vía package.json:
{
"piConfig": {
"name": "pi",
"configDir": ".pi"
}
}Cambie los campos name, configDir y bin para su bifurcación. Afecta al banner CLI, las rutas de configuración y los nombres de las variables de entorno.
Resolución de ruta
Tres modos de ejecución: npm instalación, binario independiente, tsx desde la fuente.
Utilice siempre src/config.ts para los recursos del paquete:
import { getPackageDir, getThemeDir } from "./config.js";Nunca use __dirname directamente para los activos del paquete.
Comando de depuración
/debug (oculto) escribe en ~/.pi/agent/pi-debug.log:
- Líneas TUI renderizadas con códigos ANSI
- Últimos mensajes enviados al LLM
Pruebas
./test.sh # Run non-LLM tests (no API keys needed)
npm test # Run all tests
npm test -- test/specific.test.ts # Run specific testEstructura del proyecto
packages/
ai/ # LLM provider abstraction
agent/ # Agent loop and message types
tui/ # Terminal UI components
coding-agent/ # CLI and interactive mode