Pi Coding Agent
这里只讨论 Pi 的 TUI 用法。首先是安装:
npm install -g @mariozechner/pi-coding-agent
注意
Pi的代码中有大量硬编码的npm命令,因此不建议使用bun替代npm进行安装。
使用方式和大多数 agent 类似,/login, /logout 登入/登出账号,/model 切换模型,有一点不同的是,OpenCode 用 ! 可以切换到 Shell 模式,输入命令后会将输出注入到上下文,但 Pi 提供了更精细的控制,可以用 ! 作为前缀运行 Shell 命令并且将输出发送给模型,也可以用 !! 仅运行命令不发送。
其他比较实用的命令,部分命令和其他 agent 存在差异:
| 命令 | 描述 |
|---|---|
/settings |
调整思考级别、主题、消息发送方式及传输协议 |
/resume |
从之前的会话中选择继续 |
/new |
开始新会话 |
/name <名称> |
设置会话显示名称 |
/session |
显示会话信息(路径、token 数、费用) |
/tree |
跳转到会话中的任意节点并从该处继续 |
/fork |
从当前分支创建新会话 |
/compact [提示词] |
手动压缩上下文,可附加自定义指令 |
/copy |
复制最后一条 assistant 消息到剪贴板 |
/export [文件] |
将会话导出为 HTML 文件 |
/share |
上传为私有 GitHub Gist 并生成可分享的 HTML 链接 |
/reload |
重新加载快捷键、扩展、技能、提示词及上下文文件(主题自动热重载) |
/hotkeys |
显示所有键盘快捷键 |
上下文
Pi 在启动时从以下位置加载 AGENTS.md(或 CLAUDE.md):
~/.pi/agent/AGENTS.md(全局)- 父级目录(从当前工作目录向上遍历)
- 当前目录
可用于存放项目说明、代码规范、常用命令等内容。所有匹配的文件会被合并拼接。
提示词
系统提示词
使用 .pi/SYSTEM.md(项目级)或 ~/.pi/agent/SYSTEM.md(全局)替换默认系统提示词。如需追加而非替换,可使用 APPEND_SYSTEM.md。
自定义提示词
将自定义提示词放入 ~/.pi/agents/prompts, .pi/prompts中,输入 /提示词文件名 即可展开调用。官方示例:
<!-- ~/.pi/agent/prompts/review.md -->
Review this code for bugs, security issues, and performance problems.
Focus on: {{focus}}
技能
将技能文件放入全局 ~/.pi/agent/skills/, ~/.agents/skills/ 或者项目本地的 .pi/skills/, .agents/skills/ 即可加载。个人建议用 .agents 路径与其他 agent 保持兼容。
扩展
Pi 的扩展功能算是它最具特色的部分。与其他 agent 内置 sub-agents、MCP 及大量工具的方式不同,Pi 本身的功能设计十分克制,转而将扩展能力开放给社区,由开发者自行构建各类扩展。
官方推荐在 npmjs.com 或者 Discord 上查找扩展。不过个人感觉官网的 packages 页面用起来最方便。
使用 pi install 将扩展安装到全局,使用 pi install -l 将扩展安装到项目本地。
自用的一些扩展:
- pi-sub-bar: 显示订阅额度余量
- pi-mcp-adapter: 对接MCP协议,但更省token
- pi-web-access: 互联网搜索等