Pi 的配置、扩展、平台设置和 API 参考。

快速开始

此页面将带您从安装到有用的第一个 pi 会话。

安装

Pi 作为 npm 包分发:

npm install -g --ignore-scripts @earendil-works/pi-coding-agent

--ignore-scripts 在安装过程中禁用依赖生命周期脚本。 Pi 不需要正常安装npm 安装脚本。

卸载

使用安装 pi 的包管理器。 curl 安装程序全局使用 npm,因此使用 npm 删除curl 和 npm 安装:

# curl installer or npm install -g
npm uninstall -g @earendil-works/pi-coding-agent

# pnpm
pnpm remove -g @earendil-works/pi-coding-agent

# Yarn
yarn global remove @earendil-works/pi-coding-agent

# Bun
bun uninstall -g @earendil-works/pi-coding-agent

卸载 pi 会将设置、凭据、会话和已安装的 pi 软件包保留在 ~/.pi/agent/ 中。

然后在您希望它运行的项目目录中启动 pi:

cd /path/to/project
pi

认证

Pi可以通过/login使用subscription providers,或通过环境变量或auth文件使用API密钥​​提供程序。

选项一:订阅登录

启动 pi 并运行:

/login

然后选择一个提供商。内置订阅登录包括 Claude Pro/Max、ChatGPT Plus/Pro (Codex) 和 GitHub Copilot。

选项2:API key

在启动 pi 之前设置 API key:

export ANTHROPIC_API_KEY=sk-ant-...
pi

您还可以运行 /login 并选择 API 密钥提供程序以将密钥存储在 ~/.pi/agent/auth.json 中。

请参阅 Providers 了解所有支持的提供商、环境变量和云提供商设置。

第一节

pi 启动后,输入请求并按 Enter:

Summarize this repository and tell me how to run its checks.

默认情况下,pi 为模型提供了四种工具:

  • read - 读取文件
  • write - 创建或覆盖文件
  • edit - 补丁文件
  • bash - 运行 shell 命令

其他内置只读工具(grepfindls)可通过工具选项使用。 Pi 在您当前的工作目录中运行并可以修改那里的文件。如果您想要轻松回滚,请使用 git 或其他检查点工作流程。

给出 pi 项目说明

Pi 在启动时加载 context files。添加一个 AGENTS.md 文件来告诉它如何在项目中工作:

# Project Instructions

- Run `npm run check` after code changes.
- Do not run production migrations locally.
- Keep responses concise.

Pi 负载:

  • ~/.pi/agent/AGENTS.md 用于全局指令
  • 来自父目录和当前目录的AGENTS.mdCLAUDE.md

如果目录包含 AGENTS.override.md,Pi 会从该目录加载它,而不是 AGENTS.mdCLAUDE.md

更改 context files 后,重新启动 pi,或运行 /reload

常见的尝试事项

参考文件

在编辑器中输入 @ 来模糊搜索文件,或在命令行上传递文件:

pi @README.md "Summarize this"
pi @src/app.ts @src/app.test.ts "Review these together"

可以使用 Ctrl+V(Windows 上为 Alt+V)粘贴图像或文本;图像也可以拖到支持的终端中。

运行外壳命令

在交互模式下:

!npm run lint

命令输出发送到模型。使用 !!command 运行命令而不将其输出添加到模型上下文。

切换型号

使用 /model 或 Ctrl+L 选择模型。使用Shift+Tab循环思考级别。使用 Ctrl+P / Shift+Ctrl+P 循环浏览范围模型。

稍后继续

会话会自动保存:

pi -c                  # Continue most recent session
pi -r                  # Browse previous sessions
pi --name "my task"    # Set session display name at startup
pi --session <path|id> # Open a specific session

在 pi 内部,使用 /resume/new/tree/fork/clone 来管理会话。

非交互模式

对于一次性提示:

pi -p "Summarize this codebase"
cat README.md | pi -p "Summarize this text"
pi -p @screenshot.png "What's in this image?"

使用 --mode json 进行 JSON 事件输出,或使用 --mode rpc 进行流程集成。

后续步骤

  • Using Pi - 交互模式、slash commands、会话、context files 和 CLI 参考。
  • Providers - 身份验证和模型设置。
  • Settings - 全局和项目配置。
  • Keybindings - 快捷方式和自定义。
  • Pi Packages - 安装共享扩展、技能、提示和主题。

平台备注:WindowsTermuxtmuxTerminal setupShell aliases