🟢🟡🔴 全阶段 | 这 12 条是 Pi 用户最容易反复踩的坑。读这一章不需要从头到尾——遇到对应症状时直接翻那一节。

1. 把 Pi 当搜索引擎用

提问"2024 年 TypeScript 版本号是多少"看上去像在用 Pi,实际上是在用它最弱的部分。Pi 的强项是你的项目上下文——能问 @package.json 的时候就别让它背书。

2. 一次性让 Pi 改大量文件

"重构整个项目"这种 prompt 在文档演示里看着很爽,落到生产代码上几乎一定踩雷。一次会话专注一件事,剩下的用 /tree + --name 拆出去。

3. 不检查 Pi 的修改就提交

Pi 改完直接 git commit 是最常见的回归来源。养成习惯:先 git diff,再 npm run check,再 npm test,最后才考虑提交。

4. 让 Pi 处理敏感凭证

永远不要把生产 AWS Key、数据库密码、内部 token 贴进 Pi 的对话窗口。即便是"临时问一下"——LLM 的上下文在会话内是明文的,~/.pi/agent/sessions/ 也会落盘。CI 用 secret、本地用环境变量、临时调试用 mock 数据。

5. 在上下文里塞太多无关文件

@node_modules 这种引用不是让 Pi 更快,是让它更快算完 token。引用文件时只选真正相关的几个。

6. 不备份就让 Pi 删文件

"删除所有旧测试"听起来目标清晰,落到 bash 上就成了 rm -rf 的变体。/trust 不等于 sandbox,删除前一定要 git status + 人工列清单。

7. 在多个会话里重复讲背景

每个新会话都重新介绍项目,是把"上下文"等同于"对话历史"——这两件事不是一回事。把项目规则写进 AGENTS.md,用 --name 给重要会话起个能搜到的名字,剩下交给 /resume 和 /tree。

8. 信任项目后就放松审查

/trust 只决定是否加载项目本地的设置和扩展,不构成任何隔离。Pi 仍然能用你的用户权限执行任何命令。信任一个仓库以后还是要逐条审 bash 命令、逐文件 review diff。

9. 让 Pi 写它不理解的技术栈

没有 Rust 运行时上下文时让 Pi"用 Rust 写个操作系统内核",得到的会是结构上看似合理但细节全是幻觉的代码。Pi 的能力跟它能看到的项目上下文强相关——把它不熟的技术栈的项目文件 @ 进去,它能参考;纯靠它的训练记忆,结果就只能赌。

10. 忽略 token 限制

一个会话连续聊 200 轮,到后面 Pi 会开始遗忘开头的内容——这不是它偷懒,是 context window 物理上装不下。看到 getContextUsage() 接近上限,主动 /compact 或者开个 --name "..." 新会话。

11. 把 Pi 的输出当最终真理

“Pi 说这个方案最好,就用它”——这种判断方式忽略了 LLM 输出本身有方差。让 Pi 给出多个方案、自己对照工程约束做决策、再用测试验证,比直接采纳省下来的返工时间远大于你"节省"的决策时间。

12. 不上版本控制就开始大规模改动

直接让 Pi 改生产代码是这一章最大的雷。即便项目已经 git init,也最好开一条 pi-refactor 分支先做 commit checkpoint——git diff 永远比你的记忆更可靠。


你现在应该会什么

  • 知道 12 个常见反模式的核心症状和修复方向
  • 知道 Trust ≠ Sandbox,信任项目不等于免审查
  • 知道 Pi 不擅长替代搜索引擎、背诵 API、写它没看到过的技术栈

下一步

站内搜索

没有找到内容!