Skip to main content
Pi 是 Pi Agent Harness 项目。它的 @earendil-works/pi-coding-agent 包提供了一个交互式编码代理 CLI,支持文件、shell、编辑、写入、会话、打印、JSON、RPC 和 SDK 工作流。Pi 可以从 ~/.pi/agent/models.json 加载自定义 provider,因此你可以将 CometAPI 作为兼容 OpenAI 的 provider 条目添加进去,而无需修改 Pi 源代码。 官方参考资料:
模型可用性会随时间变化。请将 your-model-id 替换为 CometAPI Models page 中可用的 model ID。

前提条件

  • Node.js >=22.19.0
  • npm
  • 一个 CometAPI 账户,并已在 dashboard 获取可用的 API key
  • 通过官方 npm 包安装的 Pi

了解运行时权限

Pi 会以启动它的用户和进程权限运行。在你希望它处理的项目目录中启动 Pi,保留可回滚路径(例如 git),如果你需要更强的文件系统、进程、网络或凭据隔离边界,请使用容器或沙箱。

配置提供商

1

安装 Pi

使用 npm 全局安装 Pi:
确认 CLI 可用:
2

设置你的 CometAPI API 密钥

将你的 CometAPI API 密钥存储到 COMETAPI_KEY 环境变量中:
如果你希望它在多个终端会话之间持续生效,请将 export 命令添加到你的 shell 配置文件中。不要将 API 密钥提交到版本控制中。
3

将 CometAPI 提供商添加到 models.json

如果 ~/.pi/agent/models.json 不存在,请创建它。如果该文件已包含提供商,请将 cometapi-responsescometapi-chat 条目合并到现有的 providers 对象中:
对于需要 OpenAI Responses API 的模型或工作流,请使用 cometapi-responses。对于兼容 OpenAI 聊天补全 API 的模型,请使用 cometapi-chat。Pi 会在请求时解析 $COMETAPI_KEY。请将 API 密钥保存在你的环境中,或保存在你自己的密钥管理工作流中。
4

验证两个提供商

列出 Pi 对 Responses 提供商可见的模型:
使用 Responses 提供商运行一个简短的单次 Prompt:
列出 Pi 对聊天补全提供商可见的模型:
使用聊天补全提供商运行一个简短的单次 Prompt:
对于交互式使用,请在你的项目中启动 Pi,并使用 /model 选择 CometAPI 提供商和模型。如果你在交互式会话期间编辑了 models.json,请再次打开 /model,以便 Pi 重新加载自定义模型条目。

故障排查

请确认 ~/.pi/agent/models.json 是有效的 JSON,并且每个 provider 条目都位于顶层的 providers 对象中。保存文件后,运行 pi --list-models cometapi-responsespi --list-models cometapi-chat
请确认 COMETAPI_KEY 已在启动 Pi 的同一个 shell 会话中设置。如果你使用 shell 配置文件,请在运行 Pi 之前打开一个新的终端,或重新加载该配置文件。
models.json 中使用 https://api.cometapi.com/v1 作为 baseUrl。不要将 Pi 指向 dashboard URL,也不要在兼容 OpenAI 的路由中省略 /v1 后缀。
使用 node --version 检查你的 Node.js 版本。Pi 包要求 Node.js >=22.19.0
使用其 api 字段与模型所支持路由相匹配的 provider 条目。openai-responses 使用 Responses API,而 openai-completions 使用聊天补全。
Pi 以启动它的用户和进程所拥有的权限运行。当你需要对文件、进程、网络访问或凭据设置更强的边界时,请在容器或沙箱中运行 Pi。

相关资源