Skip to content

开发 ​

参见 AGENTS.md 获取更多指南。

设置 ​

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

从源码运行:

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

该脚本可以从任何目录运行。Pi 保持调用者的当前工作目录。

Fork / 重命名 ​

通过 package.json 配置:

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

更改 name、configDir 和 bin 字段用于您的 fork。影响 CLI 横幅、配置路径和环境变量名称。

路径解析 ​

三种执行模式:npm install、独立二进制文件、从源码运行 tsx。

始终使用 src/config.ts 获取包资源:

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

永远不要直接使用 __dirname 获取包资源。

Debug 命令 ​

/debug(隐藏)写入 ~/.pi/agent/pi-debug.log:

  • 带 ANSI 代码的渲染 TUI 行
  • 最后发送给 LLM 的消息

测试 ​

bash
./test.sh                         # 运行非 LLM 测试(无需 API 密钥)
npm test                          # 运行所有测试
npm test -- test/specific.test.ts # 运行特定测试

项目结构 ​

packages/
  ai/           # LLM 提供商抽象
  agent/        # 代理循环和消息类型  
  tui/          # 终端 UI 组件
  coding-agent/ # CLI 和交互式模式

Pi 编码助手中文文档