🗒️AI 写的代码,凭什么能上生产?谷歌工程师用这套开源工具给出了答案
本文面向喜欢 Vibe Coding 的同学,介绍谷歌 Cloud AI 负责人 Addy Osmani 开源的 agent-skills 项目——一套将 Google 级工程规范注入 AI 编程智能体的生产级技能库。
一、现实很扎心:你的 AI 同事在走捷径
打开 Claude Code、Cursor 或 Copilot,输入一段需求,几秒后代码就出来了。看起来能跑,提交,完事。
这个流程的问题出在哪?
AI 永远在找"最短路径"。 它不会主动写测试、不会追问边界条件、不会关心三个月后的维护成本。你拿到的,往往是一堆功能可行但结构脆弱的"快餐代码"。等真正出了线上问题,重构的代价可能是当初开发时间的五倍。
这不是 AI 能力不够,而是缺少约束——没有人告诉它必须按工程规范来。
二、有人把谷歌的工程文化,做成了一个开源项目
谷歌 Cloud AI 负责人 Addy Osmani 开源了 agent-skills,将谷歌内部沉淀多年的软件工程实践,凝练成一套 AI 智能体可直接调用的技能库。

核心思路只有一句话:用流程替代随意描述,用校验替代模糊感觉。
它内置 23 项技能,覆盖软件开发的完整生命周期:
阶段 | 代表技能 | 作用 |
定义 | spec-driven-development | 把模糊需求变成带退出标准的规约 |
规划 | incremental-implementation | 拆分任务,杜绝大爆炸式提交 |
构建 | test-driven-development | TDD 强制先写断言再写实现 |
验证 | code-review | 从性能、漏洞、可维护性多角度审查 |
发布 | safe-deployment | 灰度发布与回滚预案前置 |
其中最有意思的是反合理化机制:当智能体试图用"这个太简单不用测试"或"先跑起来再说"等借口跳过步骤时,系统会触发明确的反驳依据,把偷懒行为强制拦截。
三、四步上手:让你的 AI 从"能用"变成"可信"
以 Claude Code 为例,完整演示接入流程。
Step 1:安装技能库
bash
# 推荐方式:通过插件市场直接安装
/plugin marketplace add addyosmani/agent-skills
/plugin install agent-skills@addy-agent-skills
# 网络受限时,改用 HTTPS 克隆
/plugin marketplace add https://github.com/addyosmani/agent-skills.gitStep 2:需求访谈,先想清楚再动手
bash
/spec "开发一个支持布隆过滤器的用户注册去重模块"智能体不会立即写代码,而是通过
interview-me 技能追问你:- 预期并发量是多少?
- 误判率的容忍上限?
- 过滤器需要持久化吗?
最终输出一份包含退出标准和边界条件的规格说明书。这一步通常被初学者跳过,但它决定了后续所有工作的方向对不对。
Step 3:增量构建,配套测试同步写
bash
/build "实现布隆过滤器的哈希函数解析与位图映射"智能体调用
incremental-implementation 技能,不会一口气输出几百行代码,而是以小步快跑的方式逐段推进。每完成一个逻辑单元,自动触发 test-driven-development,直到所有断言通过才继续下一段。这个过程背后藏着两个经典定律:
- Hyrum's Law:API 一旦有用户,所有可被观察的行为都会被依赖——所以边界检测不能省。
- Chesterton's Fence:不明白为什么存在的代码,先别删。技能库在精简代码前会强制探寻原有逻辑的意图。
Step 4:代码审查 + 安全发布
bash
/review # 多维度代码审查
/ship # 生产发布前置检查/review 会让智能体像资深同事一样审视自己刚写的代码:有没有潜在的 SQL 注入?这个循环的时间复杂度合理吗?有没有遗漏的错误处理?/ship 则引导完成灰度发布配置和回滚预案,不让代码裸奔上线。四、这对你意味着什么
软件工程专业的核心竞争力,从来不是记住多少 API,而是对工程质量的系统性把控。
agent-skills 做的事,是把 Google 十几年积累的工程文化,转化成任何人都能一键调用的工具链。它不替你做决策,但它确保你在每个关键节点上做了决策。
现在的 AI 写代码很快,但会不会写"好代码",取决于你给它套了什么样的框架。
原创存证 · 本地哈希 · 4cb1e4a017ab...
算法:SHA-256
时间:2026-05-26
哈希:
4cb1e4a017ab94a7a9c7e066a0efa075449949cbfe4b890dc2aa82ad24f9a6a2该信息用于辅助证明当前内容版本,不等同于法律公证或版权登记。
