Addy Osmani 开源 agent-skills,为 AI 编码智能体提供 25 个工程技能
addyosmani / agent-skills
Addy Osmani 发布开源项目 agent-skills,为 AI 编码智能体提供 25 个生产级工程技能,覆盖 DEFINE、PLAN、BUILD、VERIFY、REVIEW、SHIP 六个开发阶段,并配有 9 个斜杠命令。
面向 AI 编码智能体的工程技能包,把规格、测试、评审等环节固化为可安装的工作流,支持 70 多个智能体。
面向 AI 编码代理的生产级工程技能。
技能将资深工程师在构建软件时使用的工作流程、质量关卡和最佳实践编码化。这些技能被打包好,让 AI 代理在开发的每个阶段都能一致地遵循它们。
DEFINE PLAN BUILD VERIFY REVIEW SHIP
┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐
│ Idea │ ───▶ │ Spec │ ───▶ │ Code │ ───▶ │ Test │ ───▶ │ QA │ ───▶ │ Go │
│Refine│ │ PRD │ │ Impl │ │Debug │ │ Gate │ │ Live │
└──────┘ └──────┘ └──────┘ └──────┘ └──────┘ └──────┘
/spec /plan /build /test /review /ship
命令
9 个对应开发生命周期的斜杠命令。每个命令都会自动激活正确的技能。
| 你正在做什么 | 命令 | 核心原则 |
|---|---|---|
| 定义要构建什么 | /spec |
先写规格,再写代码 |
| 规划如何构建 | /plan |
小而原子的任务 |
| 增量式构建 | /build |
一次一个切片 |
| 证明它能工作 | /test |
测试即证明 |
| 设定质量标准 | /constraints |
一次决定,处处执行 |
| 合并前审查 | /review |
改善代码健康度 |
| 审计 Web 性能 | /webperf |
先测量,再优化 |
| 简化代码 | /code-simplify |
清晰胜于聪明 |
| 发布到生产环境 | /ship |
更快更安全 |
规格确定后想减少手动步骤?/build auto 会在一次批准的流程中生成计划并实现每个任务——你批准一次计划,然后它自主运行。它移除的是任务之间的人工介入,而非验证:每个任务仍然测试驱动并单独提交,遇到失败或风险步骤时会暂停。
技能还会根据你正在做的事情自动激活——设计 API 会触发 api-and-interface-design,构建 UI 会触发 frontend-ui-engineering,依此类推。
快速开始
最快路径——任何代理,一条命令。 开源的 skills CLI 可安装到 70 多种代理中(Claude Code、Cursor、Codex、Copilot、Cline 等):
npx skills add addyosmani/agent-skills # install all 25 skills npx skills add addyosmani/agent-skills --list # browse before installing
或者获取单个技能:
npx skills add addyosmani/agent-skills --skill code-review-and-quality # five-axis review before merge npx skills add addyosmani/agent-skills --skill interview-me # requirements interrogation, one question at a time npx skills add addyosmani/agent-skills --skill test-driven-development # red-green-refactor, enforced
只安装一个技能? 按技能执行
npx安装只会复制skills/<name>/,而不会复制仓库级别的references/目录。该技能仍然 可用,但指向补充共享清单的路径将不可用。请使用 整仓库集成、克隆仓库,或将所需清单复制到 已安装技能内的references/目录中。这一可移植性缺口记录在 #361 中。
更倾向于原生集成?在下方选择你的工具。
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如果
/plugin install在 Windows 或 macOS 上仍然因git@github.com: Permission denied (publickey)失败,推荐的解决方法是配置 Git 一次,将 GitHub SSH URL 重写为 HTTPS 以用于子进程克隆:git config --global url."https://github.com/".insteadOf git@github.com:
本地 / 开发:
git clone https://github.com/addyosmani/agent-skills.git claude --plugin-dir /path/to/agent-skills
Oh My Pi (OMP)
OMP 会安装此仓库的 Claude Code 市场插件:
omp plugin marketplace add addyosmani/agent-skills omp plugin install agent-skills@addy-agent-skills
安装后重启 OMP;技能会从其描述中被发现。有关本地克隆和 OMP 工具映射,请参阅 docs/omp-setup.md。
Cursor
将工作流技能放在 .cursor/skills/ 下(从 agent-skills/skills/ 同步),并将简短策略放在 .cursor/rules/*.mdc 中——不要将完整技能粘贴到规则中。请参阅 docs/cursor-setup.md。
Antigravity CLI
作为原生插件安装,以支持技能和子代理。在受影响的 Antigravity CLI 版本中,旧版命令 TOML 被报告为已转换,但其包装命令无法被发现;请直接调用底层带命名空间的技能。请参阅 docs/antigravity-setup.md。
从仓库安装:
agy plugin install https://github.com/addyosmani/agent-skills.git
从本地克隆安装:
git clone https://github.com/addyosmani/agent-skills.git agy plugin install ./agent-skills
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。
OpenCode
将技能复制到 .opencode/skills/(或 ~/.config/opencode/skills/),添加项目本地的 AGENTS.md,并使用内置的 skill 工具进行代理驱动的执行。可选的斜杠命令可以添加到 .opencode/commands/ 下。
GitHub Copilot
将 agents/ 中的代理定义用作 Copilot 角色,并将技能内容放在 .github/copilot-instructions.md 中。参见 docs/copilot-setup.md。
使用独立的 copilot CLI?将其作为插件安装——参见 docs/copilot-cli-setup.md。
Kiro IDE 与 CLI Kiro 的技能位于 ".kiro/skills/" 下,可以存储在项目级或全局级。Kiro 还支持 Agents.md。参见 Kiro 文档 https://kiro.dev/docs/skills/ Codex
作为原生 Codex 插件安装(Codex CLI v0.122+):
codex plugin marketplace add addyosmani/agent-skills codex plugin add agent-skills@agent-skills
第一条命令注册市场;第二条命令安装插件。Codex 通过 .codex-plugin/plugin.json 直接读取根目录 skills/。安装后,在聊天中使用 @ 调用技能(例如 @spec-driven-development)。本地安装和故障排除请参见 docs/codex-setup.md。
Dojo Workspace
安装 Dojo Workspace 会将 dojo 命令添加到你的 PATH 中:
dojo skills add addyosmani/agent-skills
如果 dojo 不在你的 PATH 中,请添加其安装文件夹:macOS/Linux 上为 ~/.local/bin(~/.local/bin/dojo),Windows 上为 %LOCALAPPDATA%\dojo\bin(dojo.exe)。或者通过完整路径运行该二进制文件。
技能安装到 ~/.agents/skills/ 中;为每个通道(Dojo Solo / Dojo Duo)启用你想要的技能。添加 -p 可改为安装到当前项目的 .agents/skills/ 中。你也可以从应用的 Skills 面板 → Add External Skills 进行安装。参见 docs/dojo-setup.md。
Command Code
使用内置的 cmd skills 命令进行原生安装。Command Code 会克隆仓库,发现每个 SKILL.md,并安装到 .commandcode/skills/ 中:
cmd skills add addyosmani/agent-skills # pick skills to install (project) cmd skills add addyosmani/agent-skills --global # install for all projects (~/.commandcode/skills/) cmd skills add addyosmani/agent-skills -s spec-driven-development # install a specific skill
已安装的技能会显示在 TUI 斜杠菜单中,例如 /spec-driven-development。参见 docs/commandcode-setup.md。
其他代理
技能是纯 Markdown——它们适用于任何接受系统提示或指令文件的代理。参见 docs/getting-started.md。
采用
已经安装了吗?你如何推广这个包取决于你的代码库。采用指南涵盖两条路径:绿地项目从第一天开始的完整生命周期,或针对既有代码库的增量式、验证优先的推广。
全部 25 项技能
上述命令是入口点。该包共包含 25 项技能——24 项生命周期技能加上 using-agent-skills 元技能。每项技能都是一个结构化工作流,包含步骤、验证关卡和反合理化表格。你也可以直接引用任何技能。
元 - 发现哪项技能适用
| 技能 | 作用 | 使用时机 |
|---|---|---|
| using-agent-skills | 将传入的工作映射到正确的技能工作流,并定义共享操作规则 | 开始会话或决定哪项技能适用时 |
定义 - 明确要构建什么
| 技能 | 作用 | 使用时机 |
|---|---|---|
| interview-me | 一次一个问题的访谈,提取用户真正想要的东西,而不是他们认为自己应该想要的东西,直到约 95% 的置信度 | 需求描述不充分,或用户调用 "interview me" / "grill me" 时 |
| idea-refine | 结构化的发散/收敛思维,将模糊的想法转化为具体的提案 | 你有一个需要探索的粗略概念时 |
| spec-driven-development | 在编写任何代码之前,编写一份涵盖目标、命令、结构、代码风格、测试和边界的 PRD | 开始新项目、新功能或重大变更时 |
| 约束驱动开发 | 以合理的默认阈值对你进行质量关卡面试,编写 CONSTRAINTS.md,按成本安排每项检查,并捕捉智能体为通过而静默检查或跳过测试的行为 | 没有写下任何标准,或者智能体产出的内容超过任何人阅读的量 |
规划 - 拆解
| 技能 | 作用 | 适用场景 |
|---|---|---|
| 规划与任务拆解 | 将规格说明分解为小型、可验证的任务,并附上验收标准和依赖排序 | 你已有规格说明,需要可实现的单元 |
构建 - 编写代码
| 技能 | 作用 | 适用场景 |
|---|---|---|
| 增量实现 | 薄垂直切片——实现、测试、验证、提交。功能开关、安全默认值、便于回滚的变更 | 任何涉及多个文件的变更 |
| 测试驱动开发 | 红-绿-重构、测试金字塔(80/15/5)、测试规模、DAMP 优于 DRY、Beyonce 规则、浏览器测试 | 实现逻辑、修复缺陷或更改行为 |
| 上下文工程 | 在正确的时间向智能体提供正确的信息——规则文件、上下文打包、MCP 集成 | 开始会话、切换任务,或输出质量下降时 |
| 源码驱动开发 | 将每个框架决策建立在官方文档之上——验证、引用来源、标记未经验证的内容 | 你希望为任何框架或库获得权威、有来源引用的代码 |
| 质疑驱动开发 | 对进行中的每个非平凡决策进行对抗性全新上下文审查——CLAIM → EXTRACT → DOUBT → RECONCILE → STOP,并可选进行用户授权的跨模型升级 | 风险很高(生产、安全、不可逆)、在不熟悉的代码中工作,或现在验证一个自信的输出比之后调试更划算 |
| 前端 UI 工程 | 组件架构、设计系统、状态管理、响应式设计、WCAG 2.1 AA 无障碍 | 构建或修改面向用户的界面 |
| API 与接口设计 | 契约优先设计、Hyrum 定律、单版本规则、错误语义、边界验证 | 设计 API、模块边界或公共接口 |
验证 - 证明其有效
| 技能 | 作用 | 适用场景 |
|---|---|---|
| 使用 DevTools 进行浏览器测试 | 使用 Chrome DevTools MCP 获取实时运行时数据——DOM 检查、控制台日志、网络追踪、性能分析 | 构建或调试任何在浏览器中运行的内容 |
| 调试与错误恢复 | 五步分诊:复现、定位、缩减、修复、防护。停线规则、安全回退 | 测试失败、构建中断或行为异常 |
审查 - 合并前的质量关卡
| 技能 | 作用 | 适用场景 |
|---|---|---|
| 代码审查与质量 | 五轴审查、变更规模(约 100 行)、严重性标签(Nit/Optional/FYI)、审查速度规范、拆分策略 | 合并任何变更之前 |
| 代码简化 | 切斯特顿栅栏、500 规则,在保持行为完全一致的同时降低复杂度 | 代码能运行,但比应有的更难阅读或维护 |
| 安全与加固 | OWASP Top 10 防护、认证模式、密钥管理、依赖审计、三层边界系统 | 处理用户输入、认证、数据存储或外部集成 |
| 性能优化 | 测量优先方法——Core Web Vitals 目标、性能分析工作流、打包分析、反模式检测 | 存在性能要求,或你怀疑出现性能回退 |
发布 - 自信部署
| 技能 | 作用 | 适用场景 |
|---|---|---|
| Git 工作流与版本管理 | 基于主干的开发、原子提交、变更规模控制(约 100 行)、提交即保存点模式 | 进行任何代码变更(始终) |
| ci-cd-and-automation | 左移、更快即更安全、功能标志、质量门禁流水线、失败反馈循环 | 搭建或修改构建与部署流水线 |
| deprecation-and-migration | 代码即负债思维、强制性与建议性弃用、迁移模式、僵尸代码清理 | 移除旧系统、迁移用户或下线功能 |
| documentation-and-adrs | 架构决策记录、API 文档、内联文档标准——记录为什么 | 做出架构决策、变更 API 或发布功能 |
| observability-and-instrumentation | 结构化日志、RED 指标、OpenTelemetry 追踪、基于症状的告警——边构建边埋点 | 添加遥测,或发布任何在生产环境运行的东西 |
| shipping-and-launch | 发布前检查清单、功能标志生命周期、分阶段发布、回滚流程、监控设置 | 准备部署到生产环境 |
Agent 角色
预配置的专家角色,用于针对性审查:
| Agent | 角色 | 视角 |
|---|---|---|
| code-reviewer | 资深主任工程师 | 五轴代码审查,以“主任工程师会批准这个吗?”为标准 |
| test-engineer | QA 专家 | 测试策略、覆盖率分析,以及“证明给我看”模式 |
| security-auditor | 安全工程师 | 漏洞检测、威胁建模、OWASP 评估 |
| web-performance-auditor | Web 性能工程师 | Core Web Vitals 审计,含快速/深度模式及指标诚实规则;通过 /webperf 运行 |
参见 docs/agents.md 了解决策矩阵、编排规则,以及角色如何与技能和斜杠命令组合。
参考检查清单
技能在需要时引入的快速参考资料:
| 参考 | 涵盖 |
|---|---|
| definition-of-done.md | 项目级常设标准,每项变更都须满足,与各任务的验收标准形成对比 |
| testing-patterns.md | 测试结构、命名、模拟、React/API/E2E 示例、反模式(JavaScript/TypeScript) |
| security-checklist.md | 提交前检查、认证、输入验证、请求头、CORS、OWASP Top 10 |
| performance-checklist.md | Core Web Vitals 目标、前端/后端检查清单、测量命令 |
| accessibility-checklist.md | 键盘导航、屏幕阅读器、视觉设计、ARIA、测试工具 |
| observability-checklist.md | 值班问题、结构化日志、RED/USE 指标、追踪、基于症状的告警、发布前门禁 |
| orchestration-patterns.md | 受认可的多角色编排模式、反模式,以及“角色不调用角色”规则 |
技能如何运作
每个技能都遵循一致的结构:
┌─────────────────────────────────────────────────┐
│ SKILL.md │
│ │
│ ┌─ Frontmatter ─────────────────────────────┐ │
│ │ name: lowercase-hyphen-name │ │
│ │ description: Guides agents through [task].│ │
│ │ Use when… │ │
│ └───────────────────────────────────────────┘ │
│ Overview → What this skill does │
│ When to Use → Triggering conditions │
│ Process → Step-by-step workflow │
│ Rationalizations → Excuses + rebuttals │
│ Red Flags → Signs something's wrong │
│ Verification → Evidence requirements │
└─────────────────────────────────────────────────┘
关键设计选择:
- 流程,而非散文。技能是 agent 遵循的工作流,而非它们阅读的参考文档。每个技能都有步骤、检查点和退出标准。
- 反合理化。每个技能都包含一张表格,列出 agent 用来跳过步骤的常见借口(例如“我稍后再加测试”),并附有记录在案的反驳论据。
- 验证不可协商。每个技能都以证据要求收尾——测试通过、构建输出、运行时数据。“看起来没问题”永远不够。
- 渐进式披露。
SKILL.md是入口点。支持性参考资料仅在需要时加载,从而将 token 用量降至最低。
项目结构
可移植核心保留在共享目录中。特定于宿主的路径是原生发现约定,而非品牌别名;重命名或合并它们会破坏扫描这些确切位置的工具。
| 层级 / 使用方 | 仓库路径 | 用途 |
|---|---|---|
| 共享工作流核心 | skills/(25 个技能) |
每个集成都会使用的可移植 SKILL.md 工作流 |
| 共享审查材料 | agents/(4 个角色)、references/(7 个检查清单) |
由整仓库安装携带的专家审查者和包级检查清单 |
| Claude Code 适配器 | .claude/commands/(9 个命令)、.claude-plugin/、hooks/ |
斜杠命令包装器、市场元数据和生命周期钩子 |
| Gemini CLI 适配器 | .gemini/commands/(9 个命令) |
Gemini 原生 TOML 命令包装器 |
| Antigravity CLI 适配器 | commands/(9 个命令)、plugin.json |
旧版 TOML 包装器和根插件清单;参见已知包装器限制 |
| Codex 适配器 | .codex-plugin/、.agents/plugins/ |
Codex 插件元数据和市场注册;Codex 直接使用 skills/ |
| GitHub Copilot CLI 适配器 | plugin.json |
根插件元数据;Copilot CLI 按约定发现 skills/,不注册生命周期包装器 |
| 贡献者工具 | scripts/(13 个脚本)、evals/(25 个用例文件)、.github/workflows/ |
验证、路由评估和 CI |
| 文档 | docs/ |
通用指南和每种工具的设置指南 |
没有已检入适配器目录的工具会将共享的 skills/ 核心安装或复制到它们自己的原生位置。快速开始链接了每个受支持宿主的设置指南。
为什么使用 Agent Skills?
AI 编码代理默认走最短路径——这通常意味着跳过规范、测试、安全审查以及让软件可靠的各种实践。Agent Skills 为代理提供结构化工作流,强制执行资深工程师在编写生产代码时所秉持的同样纪律。
每个技能都编码了来之不易的工程判断:何时编写规范、测试什么、如何审查,以及何时发布。这些不是通用提示——它们是那种有主见、流程驱动的工作流,将生产质量的工作与原型质量的工作区分开来。
技能融入了 Google 工程文化中的最佳实践——包括来自《Google 软件工程》和 Google 工程实践指南中的概念。你会在 API 设计中看到海勒姆定律,在测试中看到碧昂丝规则和测试金字塔,在代码审查中看到变更规模与审查速度规范,在简化中看到切斯特顿栅栏,在 git 工作流中看到基于主干的开发,在 CI/CD 中看到左移和功能标志,以及一个专门的弃用技能,将代码视为负债。这些不是抽象原则——它们被直接嵌入到代理遵循的分步工作流中。
如何比较
想知道这与 Superpowers 或 Matt Pocock 的技能相比如何?请参阅 docs/comparison.md,其中坦诚地并排比较了三者的不同形态以及何时该选用哪一个——包括一个受控的正面交锋实验链接。
贡献
技能应当具体(可操作的步骤,而非模糊的建议)、可验证(明确的退出标准及证据要求)、经过实战检验(基于真实工作流)且精简(只包含引导代理所需的内容)。
格式规范见 docs/skill-anatomy.md,指南见 CONTRIBUTING.md,关于如何在不破坏可移植 SKILL.md frontmatter 的前提下应用模型路由、工具限制及其他按 agent 的运行时控制,见 docs/advanced-per-agent-configuration.md。
团队
agent-skills 由以下人员构建和维护:
| 姓名 | GitHub | 角色 | |
|---|---|---|---|
![]() |
Addy Osmani | @addyosmani | 创建者 |
![]() |
Federico Bartoli | @federicobartoli | 协作者 |
![]() |
Joan León | @nucliweb | 协作者 |
许可证
MIT - 可在你的项目、团队和工具中使用这些技能。
来源:web-github-trending · github.com


