贯穿项目到这一步,前几节的所有铺垫全派上用场:
AGENTS.md 让它懂项目规矩,README.md 让它知道三个命令怎么做。这一节把 md-tools 完整实现出来,走完整个贯穿闭环。让 Pi 动手
上一节我们有了干净的 md-tools 目录、需求文档(README)和项目约定(AGENTS.md)。这一节,让 Pi 把它实现出来。
在项目目录里启动:
pi
第一次实现
对它说:
读一下 README.md 和 AGENTS.md,把这个 Markdown 工具箱实现出来。
观察它怎么做:先读 README 和 AGENTS.md 了解需求与约定,然后写 index.js、可能跑命令测试。看消息区的工具轨迹(read/write/bash),你会理解它是怎么一步步实现的。
让它解释,别只让它写
实现完,继续追问:
把 index.js 给我讲一遍:它是怎么实现 stats、convert、rename 这三个命令的?
这一步很重要——别只当验收官,要听懂它写的代码。这既是学习,也是审查的前提。
安全开关:先预览再执行
按需求,每个操作执行前都要先打印「将做什么」。让它实现这个:
按 README 要求,每个操作执行前都要先打印"将做什么",确认后才真正执行。
尤其 rename 改名,改之前必须明确提示改的是哪个文件。
这样工具默认「先预览、不动手」,你确认后才真正改。
测试 + 验收
让它补测试,然后你亲自验证。先造几个 markdown 文件:
echo "# 标题" > a.md
echo "你好,世界。" >> a.md
node index.js stats a.md # 应统计字数/段落/标题
node index.js convert a.md # 应输出纯文本
node index.js rename a.md # 应预览改名,确认后执行
ls # 确认文件被正确改名
你亲手验证通过,才算这个任务真的完成。
完整闭环复盘
到这,你走通了用 Pi 做事的完整闭环:
| 环节 | 你怎么做的 |
|---|---|
| 项目约定 | 写了 AGENTS.md |
| 描述需求 | 写了 README,让 Pi 读 |
| AI 实现 | 它写了 index.js |
| 让它解释 | 听懂了核心逻辑 |
| 加安全开关 | 迭代加了「先预览再执行」 |
| 测试验收 | 造数据、跑命令、亲眼验证 |
这正是本课程反复强调的「你描述、它执行、你审查」。
落地练习:让 md-tools 真正属于你
现在让工具「活」起来,加你自己的东西:
- 用
node index.js stats处理一个你自己的 markdown 文件 - 试着让 Pi 加一个新功能——比如「统计文件里有多少个链接」:
给 md-tools 加一个功能:stats 时顺便统计文件里有多少个 markdown 链接。
记得遵守 AGENTS.md 的约定。
怎么判断做对了?——你能用命令行正常处理 markdown 文件,且让 Pi 加了链接统计后还能正常跑。
卡住了怎么办? 命令报错 → 把报错贴给 Pi 让它修。功能乱了 → /new 开新会话重来,或 /tree 跳回之前的分支。想重来 → 删 index.js 让它按 README 重写。
常见坑:做出来就跑,没验收
最大的坑:Pi 说「完成了」,你一看没报错就以为好了,收工。
必须亲手验收——造真实数据、跑每个命令、看边界情况(文件不存在、空文件、特殊文件名)。Pi 说「完成」和「真的能用」是两回事。这一步是你作为「结对工程师」不可推卸的责任。
小结
这门课到此结束。你已具备:
- 安装 Pi 并接上模型(含 DeepSeek 等国内大模型)
- 在 TUI 里操作、用四个内置工具干活
- 管理会话:续接、会话树、fork/clone、导出分享
- 用 AGENTS.md 让 Pi 懂项目
- 独立完成贯穿全程的真实项目——
md-tools
下一步,进入进阶实战:用上下文文件、自定义技能、提示词模板和扩展,把工作流升级。