
最近有个现象很有意思:身边越来越多开发者开始用AI写代码,但抱怨也越来越多。AI写的代码能跑,但质量一言难尽。
跳过设计直接写、不写测试、不审安全、不查性能。AI Agent就像一个只会踩油门不会踩刹车的司机。
直到我翻到了这个项目。Addy Osmani的agent-skills,39.1k Star,MIT开源。它做的事情说起来简单,但我觉得很重要:给AI编程Agent装上工程纪律。
先说问题
你有没有这种感觉:用AI编程工具写代码,速度是上去了,但心里总不踏实?
代码能跑不等于代码靠谱。AI默认走最短路径,它不知道要先写设计文档,不知道测试比功能重要,不知道100行以上的变更应该拆分。它只想赶紧交差。
这不是AI的错。传统开发里,这些纪律靠代码审查、CI流水线、团队文化来保障。但AI编程的场景里,这些保障全缺位了。
agent-skills的思路
Addy Osmani的解法是:把高级工程师的工作流程编码成结构化技能,让AI在开发的每个阶段都按规矩来。
项目把软件开发分成了六个阶段:定义、规划、构建、验证、审查、发布。每个阶段都有对应的技能包,一共22个。
我挑几个觉得最关键的聊聊。
spec-driven-development,先写规格再写代码。这个太重要了。AI最容易犯的错就是拿到需求就开写,写到一半发现理解错了。这个技能强制要求AI在写代码之前先写PRD,涵盖目标、命令、结构、代码风格、测试和边界。
doubt-driven-development,这个名字起得好。对每个非平凡决策走"声明→提取→质疑→调和→停止"流程。简单说就是让AI学会怀疑自己。我觉得这个思路很对。AI最大的问题不是能力不够,是太自信。
code-review-and-quality,五维审查,变更大小限制在约100行。这个100行的限制跟Google的代码审查规范一致。Google内部的经验是,变更越大,审查越不认真,bug越容易漏过去。
context-engineering,在正确的时间给Agent提供正确的信息。很多人用AI编程效果差,问题不在模型,在上下文没给对。这个技能帮你管理规则文件、上下文打包、MCP集成。
一个我特别喜欢的细节
每个技能都有一个"反合理化"模块,就是"常见借口表"。
比如:
“我稍后再加测试” → 没有测试的代码就是未验证的假设 “这只是个原型” → 今天的原型就是明天的生产代码 “审查太慢了” → 不审查的代价更高
这招挺狠的。它不是列规范让你遵守,而是预判你会怎么偷懒,然后提前堵死退路。我在团队管理中其实也用类似的方法。与其说"请做好代码审查",不如直接把"不审查会出什么问题"列出来。
Google工程文化的影子
Addy在Google Chrome团队待了很多年,这个项目骨子里带着Google的工程文化。
Hyrum定律说的是API依赖者会依赖你实现的每一个细节,这个原则体现在API设计技能里。Beyonce规则说的是如果你没测试它它就不工作,体现在测试驱动开发里。Chesterton’s Fence说的是别拆你不懂的栅栏,体现在代码简化里。主干开发和原子提交体现在Git工作流里。左移策略和功能开关体现在CI/CD技能里。
这些概念不是凭空来的。都是Google在百万行代码库上真刀真枪验证过的工程实践。agent-skills把它们翻译成了AI能理解和执行的流程。
实际体验
安装很方便,Claude Code直接用命令装就行:
/plugin marketplace add addyosmani/agent-skills/plugin install agent-skills@addy-agent-skillsCursor、Gemini CLI、GitHub Copilot也有对应的安装方式。技能是纯Markdown格式,理论上任何接受系统提示的AI工具都能用。
用了几天,最明显的感受是:AI写代码没那么"莽"了。它会先问你要不要写规格,写完代码会提醒你跑测试,合并前会做审查。不是每次都触发,但在关键节点会拉你一把。
适不适合你
说实话,如果你只是想快速出个demo、做个side project,22个技能可能有点重。它更适合生产级项目,那种写完要上线、要维护、要被别人接手的代码。
这些技能本质上是约束。约束意味着你写得慢一点,但写得稳一点。值不值,看你的场景。
我的建议是:不用全上。先试几个最核心的,spec-driven-development、test-driven-development、code-review-and-quality。这三个覆盖了最常见的质量问题。觉得有用再加其他的。
我的判断
这个项目解决了一个真问题:AI编程速度起来了,但工程纪律还没跟上。它不是教你写prompt,而是教AI怎么按工程师的方式工作。
39k Star说明不少人意识到了同样的问题。如果你也在用AI写代码但总觉得哪里不对,可以看看这个项目。
项目地址:github.com/addyosmani/agent-skills
夜雨聆风