智能体助手:技能包和 AI 代码审查
“Vibe coding”课程第 23 课,共 26 课。免费,有动画和小测验。
技能包:给智能体一个新习惯
插件,也叫技能包(skill):一套你装进智能体里的附加指令。Claude Code、Codex、Copilot CLI、Cursor 等智能体都有这类技能包。技能包改变的是智能体做每一个任务的方式,而不只是某一次。就像游戏 mod:游戏还是那个游戏,规则变了。图左边是一个智能体,插槽里插着 Ponytail 技能包。它免费、开源,采用 MIT 许可证,任何人都可以自由使用。
Ponytail:“懒惰的资深程序员”
Ponytail 的思路是“懒惰的资深程序员”:经验丰富、从不多写一行的人。写代码之前,智能体沿着图中的梯子往上走,停在第一个能解决问题的台阶。这个功能真的需要吗?项目里已经有了吗?标准库里有吗(也就是编程语言自带的现成函数)?浏览器自带吗?已经安装的包(别人写好的现成代码)里有吗?一行能搞定吗?都不行,才写最少的新代码。
例子:生日输入框
你让智能体在健身打卡应用的个人资料里加一个“生日”输入框。没有技能包时,它可能装一整个日历库,再给它写一层包装代码。装了技能包,它会停在“浏览器自带”这一级,直接用浏览器本来就会显示的日期输入框。同时,技能包不会砍掉输入校验、错误处理、安全性和无障碍(让所有人都能方便使用)。
模式、命令和一个实话
Ponytail 有三种模式:lite(温和)、full(常规,默认)和 ultra(最严格)。它还有命令:审查当前 diff 并列出可以删掉的部分,以及检查整个仓库有没有过度设计。它以插件形式从自己的 GitHub 仓库安装。好处是:代码越少,要检查的越少,bug 越少,token(你付钱给 AI 的文本小片段)也越少。但它只是一套规则,不是保证。diff 还是得你自己看。
每个 PR 都有 AI 审查
另一类助手:AI 审查员。它们是一些服务,会读你开的每个 PR,像审查者一样留言:bug、安全、代码风格。比如 CodeRabbit、Greptile、GitHub Copilot 代码审查、Qodo。但它们也会出错、也会漏看。图右边那条评论的意思是“看看这里”,不是判决。测试和 CI 照样需要,合并(merge)由你决定,就像人像旁边写的那样。
怎么选才不后悔
审查机器人会以应用的形式接入 GitHub,并获得访问你代码的权限。安装时只勾选需要的仓库,不要选“全部”。任何附加工具都一样,规则和图右边的 MCP 插头相同。选热门、还“活着”的工具,也就是仍在更新的:开源的或来自知名公司的。看清它们要哪些权限。一次只装一个,这样你知道变化来自哪里。没用?就关掉。
自测一下
- 你让装了 Ponytail 的智能体加一个生日输入框。它最可能怎么做?
正确答案: 用浏览器自带的日期输入框. 技能包带着智能体沿梯子往上走,“浏览器自带”这一级就能解决问题。输入校验和安全性照样保留。 - AI 审查员在 PR 里留言:“第 12 行可能有错误”。你该怎么做?
正确答案: 自己看这一行,再决定要不要改. 机器人的评论是提示,不是判决。审查员会出错也会漏看 bug,所以测试和 CI 仍然重要,合并由你决定。 - 审查机器人接入 GitHub 时要求访问仓库。怎么做最好?
正确答案: 只给你选定的仓库授权. 你授权什么,机器人就能看到什么,所以只开放需要的部分。附加工具也要一个一个装,才知道变化来自哪里。