site logo

Marico's space

每日一开源项目(58):Agent Skills — 为 AI 编程 Agent 注入资深工程师的工程素养

AI技术与应用 2026-05-07 21:14:54 17

最近在折腾 AI 编程工具,发现一个很现实的问题:这些 Agent 们写代码确实快,但普遍喜欢"抄近路"——跳过需求确认、跳过测试、跳过代码审查,怎么省事怎么来。今天聊的这个项目,就是来解决这个问题的。

这是"每日一开源项目"系列的第 58 篇,今天聊聊 Agent Skills

如果说上期介绍的 Symphony 解决的是"如何大规模运行 AI Agent",那 Agent Skills 要解决的是更根本的问题:怎么让 AI 编程助手真正像个资深工程师一样干活?

这个项目来自 Addy Osmani——Google Chrome 的工程总监、前端领域的老牌人物、《Learning JavaScript Design Patterns》的作者。他对 AI 工具的观察一针见血:AI Agent 喜欢走捷径。跳过规格说明(spec)、跳过测试、跳过安全审查——只要交出"看起来能跑"的代码就行。Agent Skills 存在的意义,就是把资深工程师 20 多年的工程素养编码成可执行的工作流,让 AI 不再耍小聪明。

你会学到什么

  • 什么是"结构化工作流",以及它们如何从根本上改变 AI Agent 的行为
  • Anti-Rationalization 设计如何消除常见的 AI 走捷径行为
  • 7 个斜杠命令如何覆盖完整的软件开发周期
  • 如何在 Claude Code、Cursor 等主流工具中安装和使用 Agent Skills
  • Agent Skills 与其他 AI 编程改进方案的对比

前置要求

  • 日常使用 Claude Code 或 Cursor 等 AI 编程工具
  • 了解软件开发周期基本概念(需求 → 设计 → 编码 → 测试 → 部署)
  • 不需要特定的编程语言背景

项目背景

项目介绍

Agent Skills 是一个纯文本(Markdown)格式的工程工作流集合。它不是框架,不是 SDK——而是一套可以直接加载到 AI 工具中的"认知协议"。当你把这些技能加载到 Claude Code 或 Cursor 中后,AI 不会再一上来就埋头写代码,而是会先问:需求确认了吗?任务分解了吗?测试通过了吗?

核心理念源自 Google 内部工程文化:Hyrum 法则(隐式接口依赖最终会被利用)、测试金字塔主分支开发(Trunk-Based Development),以及最重要的——把代码视为负债,而非资产

作者/团队介绍

  • 作者:Addy Osmani
  • 职位:Google Chrome 工程总监
  • 代表作品Learning JavaScript Design Patterns、Lighthouse 核心贡献者、众多前端最佳实践的奠基作者
  • 动机:在日常使用 AI 编程工具时,Addy 发现 AI 会系统性地跳过那些"麻烦但必要"的工程步骤。他把多年积累的工程素养编码成 AI Agent 可以直接执行的工作流来应对这个问题。

项目数据

  • ⭐ GitHub Stars:30,800+
  • 🍴 Forks:3,600+
  • 👀 Watchers:219
  • 📝 Commits:162
  • 📄 License:MIT
  • 🌐 仓库:addyosmani/agent-skills

主要功能

核心价值

Agent Skills 的核心价值在于:把隐性的工程素养转化为显式的、AI 可执行的逐级检查清单

当一个普通 AI 助手被要求"修个 bug"时,它写完代码就说"搞定了"。而加载了 Agent Skills 的 AI 会这样走流程:问题确认 → 根因分析 → 最小复现 → 修复 → 测试覆盖 → 代码审查 → 文档更新——每个步骤都有明确的验证标准。

使用场景

  1. 个人开发者提升 AI 协作质量

    • 把工作流加载到 Claude Code 或 Cursor,让 AI 帮你端到端地完成功能——不只是写核心逻辑,把边边角角都收拾干净。
  2. 团队标准化 AI 使用规范

    • 把项目级的工作流配置放到团队代码仓库中,让每个成员的 AI 助手都遵循统一的工程标准。
  3. 自动化 Agent 流水线的质量门禁

    • 在 CI/CD 自动化中使用 Agent Skills 作为 AI 生成代码的审查框架,防止低质量代码进入主分支。
  4. AI 编程教育和培训

    • 通过观察 AI 在规范约束下如何处理各种工程挑战来学习最佳实践。

快速上手

方式一:Claude Code 插件市场(推荐)

# Execute inside a Claude Code session
/plugin marketplace add addyosmani/agent-skills
/plugin install agent-skills@addy-agent-skills

安装完成后直接使用斜杠命令:

# Define requirements
/spec I need a user authentication feature with OAuth 2.0 support # Plan tasks
/plan # Start implementation
/build # Verify functionality
/test # Code review
/review # Reduce complexity
/code-simplify # Deploy
/ship

方式二:本地克隆(适用于所有工具)

# Clone the repository
git clone https://github.com/addyosmani/agent-skills.git # Load in Claude Code
claude --plugin-dir /path/to/agent-skills # Load in Gemini CLI
gemini skills install https://github.com/addyosmani/agent-skills.git --path skills

方式三:在 CLAUDE.md 中直接引用

# CLAUDE.md
Load the following skills for this project:
- skills/build/incremental-implementation
- skills/verify/test-driven-development
- skills/review/code-review-and-quality

核心特性

  1. 20 个专业技能

    • 覆盖六个开发阶段(Define、Plan、Build、Verify、Review、Ship),每个技能都有明确的触发条件、执行步骤和验证标准。
  2. 7 个斜杠命令

    • /spec/plan/build/test/review/code-simplify/ship——把复杂工作流压缩成单条命令。
  3. 3 个专家 Agent 人格

    • code-reviewertest-engineersecurity-auditor——让 AI 从专业视角来审视你的代码。
  4. Anti-Rationalization 设计

    • 每个技能文件都内置了"借口与反驳"对照表,提前封堵常见的 AI 走捷径行为,比如"需求还没确认,先写代码吧""不行——先用 /spec 把需求锁死。"
  5. 验证优先

    • 每个步骤完成后都需要具体证据——测试通过截图、构建产物、运行时数据——不是主观的"应该没问题"。
  6. 工具无关

    • 同一套技能在 Claude Code、Cursor、Gemini CLI、Windsurf、OpenCode、GitHub Copilot、Kiro IDE 等工具中都能用。
  7. 4 份参考检查清单

    • 测试模式、安全、性能优化、可访问性——随时可调用的专业检查清单。

项目优势

特性 Agent Skills 通用系统提示词 规则文件(.cursorrules)
结构化程度 完整的步骤与检查点工作流 自由文本,AI 理解差异大 聚焦于代码风格规则
工程深度 完整生命周期(从 spec 到 ship) 通常只覆盖代码生成 主要用于约束格式
反捷径机制 内置借口-反驳对照表
多工具支持 7+ 个主流 AI 工具 工具专属 工具专属
可维护性 版本化的 Markdown,可通过 PR 更新 分散在各种配置中 单个仓库级文件

为什么选 Agent Skills?

  • 出自最严苛工程文化之一(Google Chrome),质量经过大规模验证
  • 30k+ Stars 代表大量真实用户的认可
  • 纯 Markdown 实现,零依赖、永不锁定厂商、完全可定制

深度解析

1. 技能文件结构:长什么样?

skills/build/incremental-implementation/SKILL.md 为例,每个技能文件都遵循一致的结构:

---
name: incremental-implementation
description: Build features in small, testable increments
triggers: - "start implementation" - "begin coding" - "implement feature"
--- ## Overview
[Purpose and scope of the skill] ## When to Use
[Specific scenarios that trigger this skill] ## Process
[Step-by-step workflow with explicit deliverables at each step] ### Step 1: Understand the task
- Confirm whether a spec already exists
- Clarify implementation boundaries (in scope / out of scope)
... ## Rationalizations (Excuses & Rebuttals)
Common ExcuseWhy It Doesn't Hold
"The feature is simple, just write it"Simplicity is subjective; no spec means no acceptance criteria
"I'll add tests afterward"Test debt almost never gets paid back
## Red Flags [Warning signs of workflow deviation, e.g., a single commit over 400 lines] ## Verification [Proof required to confirm this skill was properly executed]

这个结构的精妙之处在于:这不是写给人看的文档,而是写给 AI 执行的程序。每个字段都在约束 AI 的行为边界。

2. 六阶段工作流:从想法到生产的完整闭环

Define → Plan → Build → Verify → Review → Ship ↓ ↓ ↓ ↓ ↓ ↓
/spec /plan /build /test /review /ship ↓ ↓ ↓ ↓ ↓ ↓
Lock Req Decomp Increm Prove Quality Safe Tasks Impl Tests Gates Deploy

每个阶段都有对应的具体技能支撑:

Define(定义)idea-refinespec-driven-development

Plan(规划)planning-and-task-breakdown

Build(构建)incremental-implementationtest-driven-developmentfrontend-ui-engineeringsource-driven-developmentdocumentation-as-codecode-as-liability

Verify(验证)browser-testing-with-devtoolsdebugging-and-error-recovery

Review(审查)code-review-and-qualitysecurity-and-hardeningperformance-optimizationchange-sizing

Ship(发布)git-workflow-and-versioningci-cd-and-automationshipping-and-launchtrunk-based-developmentcode-deprecation

3. Agent 人格:给 AI 穿上"职业装"

这是 Agent Skills 最具创意的设计之一。不让同一个 AI 又写代码又审查代码,而是让它"变身"成专职专家:

security-auditor 人格示例:

You are a security auditor. Your ONLY job is to find vulnerabilities.
Do NOT suggest new features. Do NOT improve code quality.
Focus EXCLUSIVELY on:
- Input validation gaps
- Authentication/Authorization flaws
- Injection vulnerabilities (SQL, XSS, SSTI...)
- Exposed secrets or credentials
- Insecure dependencies

当你调用 security-auditor 人格来审查代码时,AI 会完全进入安全专家视角——不会被功能实现分散注意力。在 AI 使用层面应用单一职责原则(SRP),效果出奇地好。

4. Anti-Rationalization:工程素养的护城河

这是项目最独特的创新点。每个技能文件都包含"借口-反驳"对照表,专门针对 AI(和人类)在压力下常有的逃避行为:

常见 AI 借口 工程素养反驳
"这个功能很简单,直接写就行" 简单是主观的;没有 spec 就意味着没有验收标准
"测试后面再加" 测试债务几乎永远不会还清
"这只是临时的解决方案" "临时"方案的平均寿命往往会超出所有人的预期
"PR 已经很大了,再加点没关系" 大 PR 会造成审查盲点,是合并冲突的源头
"性能优化可以等" "以后"通常意味着永远不会

项目链接与资源

官方资源

  • 🌟 GitHub:addyosmani/agent-skills
  • 📚 技能结构文档:docs/skill-anatomy.md
  • 🤝 贡献指南:CONTRIBUTING.md
  • 🛠️ Claude Code 指南:docs/claude-code.md

目标用户

  • 日常使用 Claude Code、Cursor 等 AI 编程工具,但觉得 AI 经常走捷径的开发者
  • 希望团队统一 AI 使用规范的技术负责人
  • 对工程最佳实践感兴趣、想通过 AI 工具应用 Google 工程文化的技术人员
  • 构建自动化 Agent 流水线、需要质量保障机制的 AI 应用开发者

总结

关键收获

  1. AI 默认会走捷径——Agent Skills 通过结构化工作流强制执行工程纪律
  2. 纯 Markdown 实现:零依赖、工具无关、完全可定制
  3. 覆盖完整开发生命周期:从需求规格说明到代码废弃,7 个斜杠命令贯穿全程
  4. Anti-Rationalization 设计是最大亮点——提前封堵常见 AI 走捷径行为
  5. 来自 Google Chrome 工程总监:底层工程哲学已经在生产规模下得到验证

一句话点评

如果 AI 编程工具让你写代码的速度提升了 10 倍,Agent Skills 确保你写出来的东西质量也提升 10 倍。

原文链接:https://dev.to/...