在 Agent Skills 这个领域,有一个很明显的分水岭:玩具级生产级。玩具级的 skill 告诉 Agent"你是一个前端专家,请帮我写 React 代码"。生产级的 skill 告诉 Agent"你在审查一个 Next.js 15 的 PR,使用 App Router,目标是 Lighthouse 90+ 分,请按以下 47 条规则逐项检查"。Agent Skills(78K Star,MIT 协议)就是后者——由 Google Chrome 工程负责人 Addy Osmani 出品的生产级 Agent 技能库。

Addy Osmani 是谁?

如果你是前端开发者,你大概率用过 Addy Osmani 写的东西。他是 Google Chrome 团队的工程负责人,长期专注于 Web 性能优化和开发者工具。他的代表作包括:

Addy 的特点是极度务实。他写的每一个工具、每一篇文章,都是基于 Google 大规模生产环境的实战经验。Agent Skills 也不例外——它不是一个"awesome list",而是一套经过 Google 工程实践验证的 Agent 技能规范。

生产级 Skills 的标准是什么?

在 Agent Skills 项目里,"生产级"不是营销话术,而是有明确标准的:

举个例子,一个"玩具级"的前端 skill 是这样的:

# 玩具级:太模糊,Agent 无法准确执行
你是一个前端专家。请帮我写高质量的 React 代码。
使用最佳实践,注意性能优化。

而 Agent Skills 里的前端 skill 是这样的:

# 生产级:明确、可执行、可验证
## React 19 + Next.js 15 App Router 代码审查

### 性能检查项
- [ ] 组件是否正确使用 `React.memo()` 或 `useMemo` 避免不必要的重渲染
- [ ] 数据获取是否使用 Server Components 而非客户端 useEffect
- [ ] 图片是否使用 `next/image` 并设置了适当的 `sizes` 属性
- [ ] 字体是否使用 `next/font` 实现零布局偏移(CLS = 0)
- [ ] 是否使用了动态导入(`next/dynamic`)拆分大型客户端组件
- [ ] Bundle 大小是否在预算内(首屏 JS < 100KB gzipped)

### 可访问性检查项
- [ ] 所有交互元素是否有适当的 aria 标签
- [ ] 颜色对比度是否达到 WCAG 2.1 AA 标准(4.5:1)
- [ ] 焦点管理是否正确(模态框、路由切换)
- [ ] 键盘导航是否完整(Tab、Enter、Escape)

### 安全检查项
- [ ] 用户输入是否经过 sanitize
- [ ] 是否使用了 Content Security Policy
- [ ] 敏感数据是否只在 Server Components 中处理
- [ ] API Routes 是否验证了请求来源

差距一目了然。生产级的 skill 是清单式的——Agent 不需要"理解"最佳实践,只需要逐项检查。

技能分类:五大领域全覆盖

1. 前端(Frontend)

这是 Agent Skills 最强的领域,考虑到 Addy 的背景,这不意外。前端 skills 覆盖了:

2. 后端(Backend)

后端 skills 覆盖了 Node.js/TypeScript 生态:

3. 测试(Testing)

测试 skills 是我认为最有价值的部分:

4. 代码审查(Code Review)

这是 Agent Skills 的杀手级应用。它把 Google 的 code review 实践浓缩成了 Agent 可执行的检查清单:

## 代码审查 Skill 核心规则

### 设计质量
- 代码是否符合 SOLID 原则?
- 是否有不必要的复杂性?(YAGNI)
- 抽象层级是否一致?

### 正确性
- 边界条件是否处理?
- 错误处理是否完整?
- 并发安全是否考虑?

### 可维护性
- 命名是否清晰表达意图?
- 函数长度是否在 20 行以内?
- 注释是否解释了"为什么"而非"是什么"?

### 性能
- 是否有 N+1 查询?
- 是否有不必要的内存分配?
- 是否有可以缓存的重复计算?

5. 架构(Architecture)

架构 skills 帮助 Agent 做高层设计决策:

跟 agentic-awesome-skills 的区别:质量 vs 数量

这是一个很常见的对比。agentic-awesome-skills(约 12K Star)是一个社区维护的 skills 列表,收录了数百个 skills。Agent Skills(78K Star)是 Addy Osmani 个人维护的精选库,目前有约 80 个 skills。

数量上,agentic-awesome-skills 更多。但质量上,两者不在一个层级:

这就像 MDN Web DocsW3Schools 的区别。W3Schools 内容更多,但 MDN 更准确、更深入、更权威。在 Agent Skills 这个领域,质量比数量重要得多——一个模糊的 skill 可能导致 Agent 产出错误代码,而一个精确的 skill 可以让 Agent 产出 Google 级别的代码。

如何使用和定制

Agent Skills 的使用非常灵活:

# 克隆仓库
git clone https://github.com/addyosmani/agent-skills.git
cd agent-skills

# 目录结构
agent-skills/
├── frontend/
│   ├── react-app-router.md
│   ├── performance-core-web-vitals.md
│   ├── accessibility-wcag21.md
│   ├── css-tailwind-patterns.md
│   └── pwa-service-worker.md
├── backend/
│   ├── api-restful-design.md
│   ├── database-prisma-patterns.md
│   ├── auth-jwt-oauth.md
│   └── caching-strategies.md
├── testing/
│   ├── unit-vitest-patterns.md
│   ├── e2e-playwright.md
│   ├── visual-chromatic.md
│   └── performance-lighthouse-ci.md
├── review/
│   ├── code-review-general.md
│   ├── code-review-security.md
│   └── code-review-performance.md
├── architecture/
│   ├── monorepo-turborepo.md
│   ├── microservices-patterns.md
│   └── observability-otel.md
└── README.md

你可以直接使用,也可以定制。比如,把多个 skill 组合成一个:

# 把 frontend + review 组合成一个"全栈审查"skill
cat frontend/react-app-router.md \
    frontend/performance-core-web-vitals.md \
    review/code-review-general.md \
    > my-fullstack-review.md

# 在 Claude Code 中使用
cp my-fullstack-review.md .claude/skills/fullstack-review.md

# 在 Cursor 中使用
cat my-fullstack-review.md >> .cursorrules

# 在 Hermes Agent 中使用
mkdir -p skills/fullstack-review
cp my-fullstack-review.md skills/fullstack-review/SKILL.md

Skills 设计的最佳实践

从 Agent Skills 项目中,我总结出了几条 skill 设计的最佳实践:

1. 清单优于描述

不要写"请确保代码质量好",要写"请检查以下 10 项"。Agent 擅长执行清单,不擅长理解抽象概念。

2. 场景化优于通用化

不要写一个"通用 React skill",要写"Next.js 15 App Router + Tailwind + Prisma 的代码审查 skill"。越具体,Agent 的输出越精确。

3. 可验证优于主观

不要写"代码应该易读",要写"函数长度不超过 20 行,嵌套层级不超过 3 层"。可量化的标准让 Agent 的输出可预测。

4. 版本化优于静态

技术栈更新很快。React 19 的最佳实践跟 React 18 不一样。skill 需要跟着技术栈版本更新。

对 Agent 工程化的影响

Agent Skills 项目的最大意义,不是那 80 个 skill 文件,而是它定义了 Agent 技能的工程化标准。在它之前,写 Agent skill 是一门"手艺"——靠经验和直觉。在它之后,写 Agent skill 是一门"工程"——有标准、有方法、有验证。

这对整个 Agent 生态的影响是深远的:

局限性

公平地说,Agent Skills 也有局限:

谁应该用 Agent Skills?

这个项目最适合:

78K Star 证明了一件事:在 Agent 时代,工程质量依然是核心竞争力。Addy Osmani 用一个 GitHub 仓库,为整个行业树立了 Agent 技能的标杆。

🔗 GitHub: addyosmani/agent-skills