面向 AI 编程代理的生产级工程技能。
技能将高级工程师在构建软件时使用的工作流、质量门禁和最佳实践进行了编码。这些技能被打包,使 AI 代理在开发的每个阶段都能一致地遵循它们。
7 个斜杠命令,映射到开发生命周期。每个命令自动激活相应的技能。
| 你在做什么 | 命令 | 核心原则 |
|---|---|---|
| 定义要构建什么 | /spec |
先写规格再写代码 |
| 规划如何构建 | /plan |
小而原子化的任务 |
| 增量构建 | /build |
一次一个切片 |
| 证明它能工作 | /test |
测试即证明 |
| 合并前审查 | /review |
改善代码健康度 |
| 简化代码 | /code-simplify |
清晰优于取巧 |
| 发布到生产环境 | /ship |
越快越安全 |
技能也会根据你正在做的事情自动激活——设计 API 会触发 api-and-interface-design,构建 UI 会触发 frontend-ui-engineering,以此类推。
Claude Code(推荐)
市场安装:
/plugin marketplace add addyosmani/agent-skills
/plugin install agent-skills@addy-agent-skills
SSH 错误? 市场通过 SSH 克隆仓库。如果你没有在 GitHub 上配置 SSH 密钥,可以添加你的 SSH 密钥,或者使用完整的 HTTPS URL 强制通过 HTTPS 克隆:
/plugin marketplace add https://github.com/addyosmani/agent-skills.git /plugin install agent-skills@addy-agent-skills
本地 / 开发:
git clone https://github.com/addyosmani/agent-skills.git
claude --plugin-dir /path/to/agent-skillsCursor
将任意 SKILL.md 复制到 .cursor/rules/,或引用完整的 skills/ 目录。参见 docs/cursor-setup.md。
Gemini CLI
作为原生技能安装以实现自动发现,或添加到 GEMINI.md 以获得持久上下文。参见 docs/gemini-cli-setup.md。
从仓库安装:
gemini skills install https://github.com/addyosmani/agent-skills.git --path skills从本地克隆安装:
gemini skills install ./agent-skills/skills/Windsurf
将技能内容添加到你的 Windsurf 规则配置中。参见 docs/windsurf-setup.md。
GitHub Copilot
使用 agents/ 中的代理定义作为 Copilot 人格,将技能内容放在 .github/copilot-instructions.md 中。参见 docs/copilot-setup.md。
Kiro IDE & CLI
Kiro 的技能位于 ".kiro/skills/" 目录下,可以存储在项目级或全局级。Kiro 也支持 Agents.md。参见 Kiro 文档:https://kiro.dev/docs/skills/Codex / 其他代理
技能是纯 Markdown——它们适用于任何接受系统提示或指令文件的代理。参见 docs/getting-started.md。
上面的命令是入口点。本包共包含 23 个技能——22 个生命周期技能加上 using-agent-skills 元技能。每个技能都是一个结构化的工作流,包含步骤、验证门禁和反合理化表。你也可以直接引用任何技能。
| 技能 | 功能 | 使用时机 |
|---|---|---|
| using-agent-skills | 将当前工作映射到正确的技能工作流,并定义共享操作规则 | 开始会话或决定适用哪个技能时 |
| 技能 | 功能 | 使用时机 |
|---|---|---|
| interview-me | 逐题访谈,提取用户真正想要的而非他们以为自己想要的,直到约 95% 置信度 | 需求不够明确,或用户调用 "interview me" / "grill me" 时 |
| idea-refine | 结构化的发散/收敛思维,将模糊的想法转化为具体提案 | 有一个需要探索的粗略概念 |
| spec-driven-development | 在编写任何代码之前,编写涵盖目标、命令、结构、代码风格、测试和边界的 PRD | 开始新项目、新功能或重大变更时 |
| 技能 | 功能 | 使用时机 |
|---|---|---|
| planning-and-task-breakdown | 将规格分解为小的、可验证的任务,包含验收标准和依赖排序 | 有了规格,需要可实现的单元时 |
| 技能 | 功能 | 使用时机 |
|---|---|---|
| incremental-implementation | 薄垂直切片——实现、测试、验证、提交。特性开关、安全默认值、易于回滚的变更 | 任何涉及多个文件的变更 |
| test-driven-development | 红-绿-重构,测试金字塔(80/15/5),测试规模,DAMP 优于 DRY,Beyonce 规则,浏览器测试 | 实现逻辑、修复缺陷或改变行为时 |
| context-engineering | 在正确的时间为代理提供正确的信息——规则文件、上下文打包、MCP 集成 | 开始会话、切换任务或输出质量下降时 |
| source-driven-development | 将每个框架决策建立在官方文档之上——验证、引用来源、标记未验证内容 | 需要任何框架或库的权威性、有来源引用的代码时 |
| doubt-driven-development | 对每个非平凡决策进行对抗性全新上下文审查——CLAIM → EXTRACT → DOUBT → RECONCILE → STOP,可选用户授权的跨模型升级 | 高风险场景(生产环境、安全、不可逆操作)、在不熟悉的代码中工作,或现在验证一个自信的输出比之后调试更划算时 |
| frontend-ui-engineering | 组件架构、设计系统、状态管理、响应式设计、WCAG 2.1 AA 无障碍 | 构建或修改面向用户的界面 |
| api-and-interface-design | 契约优先设计、Hyrum 定律、单一版本规则、错误语义、边界验证 | 设计 API、模块边界或公共接口 |
| 技能 | 功能 | 使用时机 |
|---|---|---|
| browser-testing-with-devtools | Chrome DevTools MCP 获取实时运行时数据——DOM 检查、控制台日志、网络追踪、性能分析 | 构建或调试任何在浏览器中运行的内容 |
| debugging-and-error-recovery | 五步分诊:复现、定位、缩小、修复、防护。停线规则、安全回退 | 测试失败、构建中断或行为异常时 |
| 技能 | 功能 | 使用时机 |
|---|---|---|
| code-review-and-quality | 五维度审查、变更规模(约 100 行)、严重性标签(Nit/Optional/FYI)、审查速度规范、拆分策略 | 合并任何变更之前 |
| code-simplification | 切斯特顿围栏原则、500 行规则,在保持精确行为的同时降低复杂度 | 代码能工作但比应有的更难阅读或维护 |
| security-and-hardening | OWASP Top 10 防护、认证模式、密钥管理、依赖审计、三层边界系统 | 处理用户输入、认证、数据存储或外部集成 |
| performance-optimization | 度量优先方法——Core Web Vitals 目标、分析工作流、包体分析、反模式检测 | 存在性能要求或怀疑性能退化 |
| 技能 | 功能 | 使用时机 |
|---|---|---|
| git-workflow-and-versioning | 主干开发、原子提交、变更规模(约 100 行)、提交即存档点模式 | 进行任何代码变更时(始终) |
| ci-cd-and-automation | 左移策略、越快越安全、特性开关、质量门禁流水线、故障反馈循环 | 设置或修改构建和部署流水线 |
| deprecation-and-migration | 代码即负债思维、强制性与建议性弃用、迁移模式、僵尸代码清理 | 移除旧系统、迁移用户或下线功能 |
| documentation-and-adrs | 架构决策记录、API 文档、内联文档标准——记录为什么 | 做出架构决策、更改 API 或发布功能 |
| shipping-and-launch | 发布前检查清单、特性开关生命周期、分阶段发布、回滚流程、监控设置 | 准备部署到生产环境 |
预配置的专业人格,用于针对性审查:
| 代理 | 角色 | 视角 |
|---|---|---|
| code-reviewer | 高级主任工程师 | 五维度代码审查,以"主任工程师会批准这个吗?"为标准 |
| test-engineer | QA 专家 | 测试策略、覆盖率分析和证明模式 |
| security-auditor | 安全工程师 | 漏洞检测、威胁建模、OWASP 评估 |
技能在需要时调用的快速参考材料:
| 参考 | 涵盖内容 |
|---|---|
| testing-patterns.md | 测试结构、命名、模拟、React/API/E2E 示例、反模式 |
| security-checklist.md | 提交前检查、认证、输入验证、请求头、CORS、OWASP Top 10 |
| performance-checklist.md | Core Web Vitals 目标、前端/后端清单、度量命令 |
| accessibility-checklist.md | 键盘导航、屏幕阅读器、视觉设计、ARIA、测试工具 |
每个技能遵循一致的结构:
┌─────────────────────────────────────────────────┐
│ SKILL.md │
│ │
│ ┌─ Frontmatter ─────────────────────────────┐ │
│ │ name: lowercase-hyphen-name │ │
│ │ description: 引导代理完成[任务]。 │ │
│ │ 使用时机… │ │
│ └───────────────────────────────────────────┘ │
│ 概述 → 本技能做什么 │
│ 使用时机 → 触发条件 │
│ 流程 → 逐步工作流 │
│ 合理化借口 → 借口 + 反驳 │
│ 红旗 → 出问题的信号 │
│ 验证 → 证据要求 │
└─────────────────────────────────────────────────┘
关键设计选择:
- 流程而非散文。 技能是代理遵循的工作流,不是他们阅读的参考文档。每个技能都有步骤、检查点和退出标准。
- 反合理化。 每个技能都包含一个表格,列出代理跳过步骤时常用的借口(例如"我稍后再加测试")以及有据可查的反驳论点。
- 验证不可妥协。 每个技能都以证据要求结束——测试通过、构建输出、运行时数据。"看起来没问题"永远不够。
- 渐进式披露。
SKILL.md是入口点。支撑参考仅在需要时加载,将 token 使用量保持在最低。
agent-skills/
├── skills/ # 23 个技能(22 个生命周期 + 1 个元技能)
│ ├── interview-me/ # 定义
│ ├── idea-refine/ # 定义
│ ├── spec-driven-development/ # 定义
│ ├── planning-and-task-breakdown/ # 规划
│ ├── incremental-implementation/ # 构建
│ ├── context-engineering/ # 构建
│ ├── source-driven-development/ # 构建
│ ├── doubt-driven-development/ # 构建
│ ├── frontend-ui-engineering/ # 构建
│ ├── test-driven-development/ # 构建
│ ├── api-and-interface-design/ # 构建
│ ├── browser-testing-with-devtools/ # 验证
│ ├── debugging-and-error-recovery/ # 验证
│ ├── code-review-and-quality/ # 审查
│ ├── code-simplification/ # 审查
│ ├── security-and-hardening/ # 审查
│ ├── performance-optimization/ # 审查
│ ├── git-workflow-and-versioning/ # 发布
│ ├── ci-cd-and-automation/ # 发布
│ ├── deprecation-and-migration/ # 发布
│ ├── documentation-and-adrs/ # 发布
│ ├── shipping-and-launch/ # 发布
│ └── using-agent-skills/ # 元:如何使用本技能包
├── agents/ # 3 个专业人格
├── references/ # 4 个补充清单
├── hooks/ # 会话生命周期钩子
├── .claude/commands/ # 7 个斜杠命令(Claude Code)
├── .gemini/commands/ # 7 个斜杠命令(Gemini CLI)
└── docs/ # 各工具的设置指南
AI 编程代理默认走最短路径——这通常意味着跳过规格、测试、安全审查以及使软件可靠的做法。Agent Skills 为代理提供结构化的工作流,强制执行高级工程师在生产代码中遵循的相同纪律。
每个技能都编码了来之不易的工程判断:何时写规格、测试什么、如何审查、何时发布。这些不是通用提示——它们是那种将生产质量工作与原型质量工作区分开来的、有主见的、流程驱动的工作流。
技能融入了 Google 工程文化的最佳实践——包括来自《Software Engineering at Google》和 Google 工程实践指南的概念。你会在 API 设计中找到 Hyrum 定律,在测试中找到 Beyonce 规则和测试金字塔,在代码审查中找到变更规模和审查速度规范,在简化中找到切斯特顿围栏原则,在 Git 工作流中找到主干开发,在 CI/CD 中找到左移策略和特性开关,以及一个将代码视为负债的专门弃用技能。这些不是抽象原则——它们直接嵌入到代理遵循的逐步工作流中。
技能应该是具体的(可操作的步骤,而非模糊的建议)、可验证的(有明确退出标准和证据要求)、经过实战检验的(基于真实工作流)和精简的(仅包含引导代理所需的内容)。
参见 docs/skill-anatomy.md 了解格式规范,CONTRIBUTING.md 了解贡献指南。
MIT - 可在你的项目、团队和工具中使用这些技能。
