让 AI 写个登录功能,五分钟出代码,你扫一眼挺满意,合上了。半夜线上报警,翻出来一看:密钥硬编码在配置里,测试一个没写,错误处理全靠一个大 try-catch 兜着。

这不是 AI 笨,是它没人管。它会写,但不守规矩——能跳的步骤全跳,跳完还能给自己找一堆听起来特别合理的理由:“先跑起来再说”“测试后面补”。

Addy Osmani 想治的就是这个病。

他是 Google Chrome 工程团队的负责人,早年的《前端性能清单》带过一茬前端工程师。2026 年他在 GitHub 放出 addyosmani/agent-skills,到 8 月中旬破了 8.5 万 Star,是今年 AI 工具类仓库里增速数一数二的一个。一句话说清它干的事:把资深工程师的工程纪律,做成一套能塞进任何 AI 编码工具的技能包,逼着 AI 按规矩来。

一、最妙的一手:给 AI 备了一张「借口黑名单」

大多数 prompt 库教你把问题问得更好。这个仓库不一样,它防的是 AI 偷懒。

每个技能里都塞了一张反合理化表(anti-rationalization table)。AI 想走捷径时常挂嘴边的那几句——“测试稍后补”“这个分支先不校验”——表里早就备好了反驳,一条条堵死。意思是:你想糊弄,门都没有,照做比顶嘴还省事。

再配一个证据门禁:每一步产出都得拿测试、审查、性能数据证明达标,才放行进下一关。代码不是"看起来能跑",是"被证明能跑"。

仓库里还有一句很硬的信条,值得记住:代码是负债,不是资产;"看起来对"永远代替不了可衡量的证据。

二、24 个技能,把一条流水线铺满

目前 24 个技能(1 个元技能 + 23 个生命周期技能),顺着软件开发的六个阶段排下来,每一步都有人兜底:

阶段 技能数 代表技能 对应命令
Define 定义 3 interview-meidea-refinespec-driven-development /spec
Plan 规划 1 planning-and-task-breakdown /plan
Build 构建 9 incremental-implementationtest-driven-developmentapi-and-interface-designfrontend-ui-engineering /build
Verify 验证 2 browser-testing-with-devtoolsdebugging-and-error-recovery /test
Review 审查 4 code-review-and-qualitysecurity-and-hardeningperformance-optimization /review/webperf/code-simplify
Ship 发布 6 ci-cd-and-automationshipping-and-launchobservability-and-instrumentation /ship

另外还带 8 个斜杠命令、4 个专家角色(代码审查员 / 测试工程师 / 安全审计员 / Web 性能审计员)、7 份能直接链接的检查清单,加上会话生命周期的 hooks。

几个值得单独说的:

  • interview-me:一次只问一个问题,把你真正想要的挖出来,挖到大概 95% 把握才放手。需求模糊时先用它,比直接开干省一堆返工。
  • test-driven-development:红-绿-重构、测试金字塔(80/15/5)、DAMP 优先于 DRY,还有条 Beyonce 规则——没测试证明它能跑,它就是不能跑。
  • doubt-driven-development:每个不那么简单的决策,都拉一个新上下文来挑刺,高风险的还能升级到跨模型复核。
  • security-and-hardening:OWASP Top 10、密钥管理、三层边界,一碰到用户输入和认证就自动顶上来。

三、不挑工具,70 多种 Agent 通吃

每个技能就是一份纯 Markdown,所以不挑平台。Claude Code、Cursor、Codex、GitHub Copilot、Gemini CLI、Kiro、Windsurf、OpenCode……只要有系统提示或指令文件入口,都能直接吃进去。仓库里连 .claude/.cursor/.gemini/.windsurf/ 这些配置目录和接入文档都备好了。

装起来也简单:

# 通用 CLI,适配 70+ agent,装全部 24 个
npx skills add addyosmani/agent-skills

# 先浏览再选
npx skills add addyosmani/agent-skills --list

# 只装单个
npx skills add addyosmani/agent-skills --skill test-driven-development

原生集成的例子:

  • Claude Code/plugin marketplace add addyosmani/agent-skills,再 /plugin install agent-skills@addy-agent-skills
  • Cursor:技能丢 .cursor/skills/,策略丢 .cursor/rules/*.mdc

有个坑提前讲:单独装某个技能(--skill)只会复制 skills/<名字>/,仓库级共享的 references/ 检查清单带不上(这个缺陷在 issue #361 里跟踪)。想用完整体验,就全量装,或者干脆 clone 整个仓库。

四、走一遍:让 AI 做个登录,从 /spec 到 /ship

光说机制没感觉,走个例子。假设你让 AI 做一套用户认证,按这套流程跑下来是这样:

  1. /spec:先写 PRD,认证流程怎么走、安全要求卡在哪、API 怎么设计,先定死,别上来就生成代码。
  2. /plan:把需求拆成能验证的小块——用户模型、密码哈希、JWT 生成、校验中间件,每个都挂上验收标准。
  3. /build:一片片薄切片地做,每块都走红-绿-重构,写完测、测过提交,全程挂着特性开关、能回滚。嫌慢可以用 /build auto,批一次计划它自己跑完,但每个任务照样单独测、单独提交。
  4. /test:把边界情况和安全测试都跑通。测试不是装饰,是证据。
  5. /review:代码审查员按五轴卡质量,安全审计员查漏洞。
  6. /ship:用特性开关分阶段放,带好回滚计划和监控埋点再上。

对比老办法——直接让 AI 吐认证逻辑,密钥可能硬编码、错误处理可能缺、测试大概率没有——这条路的代码不只是"能跑",是安全、可测、能维护。

五、跟 mattpocock/skills 怎么选

维度 mattpocock/skills addyosmani/agent-skills
定位 个人常用开发技能合集 生产级工程纪律标准
数量 35 个 24 个(含 1 元技能)
侧重 TypeScript / 单兵工作流 全生命周期质量门禁
特色 个人经验沉淀,可挑着用 反合理化护栏 + 证据验证门
适配 Claude / Cursor 为主 70+ agent 原生
适合 想借鉴高手的日常用法 要让 AI 产出生产级代码

这俩不冲突,叠着用就行。Matt 的仓库让你看到高手平时怎么使唤 AI,Addy 的仓库替你把工程的底线守住。自己玩、想借点套路,先翻 Matt;带团队、要上生产、怕 AI 瞎写,拿 Addy 当纪律层压上去。

六、三个坑,先知道

  • 技能会变,别当圣经:框架和最佳实践一直在动,Addy 维护得很勤(400 多次提交、40 多个贡献者),但装完还是定期更新,别让它过期。
  • 单装会缺东西:原因上面讲过,完整场景尽量全量。
  • 它管纪律,不管业务:产品怎么决策它不替你想,需求糊的时候,还是得靠 interview-me 先把脑子理清。

七、装上试一把

要是你也常被 AI 写的代码坑过,这周花十分钟 npx skills add addyosmani/agent-skills 装上。先别贪多,就盯 /spectest-driven-development 两个——你会发现 AI 从"自由发挥"变成"按规矩出牌",半夜被报警叫醒的概率,能低不少。

项目地址:github.com/addyosmani/agent-skills(国内可搜 GitCode 镜像)。

Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐