Skills是一种用于扩展Antigravity能力的开放标准。一个skill就是一个包含 SKILL.md 文件的文件夹,该文件中包含了Antigravity在处理特定任务时可以遵循的指令。

什么是skills?

skills是可重用的知识包,用于扩展Antigravity的能力。每个skill包含:

  • 关于如何处理特定类型任务的指令
  • 需遵循的最佳实践和规范
  • Antigravity可以使用的可选脚本和资源
    当你开始对话时,Antigravity会看到可用skill的列表,其中包括它们的名称和描述。如果某个skill看起来与您的任务相关,Antigravity将读取完整的指令并遵循它们。

skills存放在哪里

Antigravity 支持两种类型的skill:

位置 (Location) 作用域 (Scope)
根目录/.agents/skills/skill-folder/ 工作区特定 (Workspace-specific)即项目级
~/.gemini/antigravity/skills// 全局,所有工作区 (Global)

Workspace skills 非常适合项目特定的工作流,例如你团队的部署流程或测试规范。
Global skills 适用于你的所有项目。将它们用于个人实用程序或你希望随处可用的通用工具。
注意:Antigravity 现在默认使用 .agents/skills,但仍然保留对 .agent/skills 的向后兼容支持。

创建skills

要创建一个skill:

  1. 在skill目录之一中为你的skill创建一个文件夹。
  2. 在该文件夹内添加一个 SKILL.md 文件。
.agents/skills/
└─── my-skill/
    └─── SKILL.md

每个skill都需要一个在顶部带有 YAML frontmatter(元数据)的 SKILL.md 文件:

---
name: my-skill
description: Helps with a specific task. Use when you need to do X or Y.
---

# My Skill

Detailed instructions for the agent go here.

## When to use this skill

- Use this when...
- This is helpful for...

## How to use it

Step-by-step guidance, conventions, and patterns the agent should follow.

Frontmatter 字段

字段 (Field) 必填 描述 (Description)
name 能的唯一标识符(小写,用连字符代替空格)。如果未提供,则默认为文件夹名称。
description 清楚地描述skill的作用以及何时使用它。这是agent在决定是否应用该skill时所看到的内容。

提示:以第三人称编写你的描述,并包含有助于Antigravity识别该skill何时相关的关键字。例如:“Generates unit tests for Python code using pytest conventions.” (使用 pytest 规范为 Python 代码生成单元测试。)

skills文件夹结构

虽然 SKILL.md 是唯一必需的文件,但你可以包含其他资源:

.agents/skills/my-skill/
├─── SKILL.md       # Main instructions (required)
├─── scripts/       # Helper scripts (optional)
├─── examples/      # Reference implementations (optional)
└─── resources/     # Templates and other assets (optional)

Antigravity在遵循你的skill指令时可以读取这些文件

Antigravity如何使用skills

skill遵循渐进式披露模式 (progressive disclosure pattern):

  1. 发现 (Discovery):当对话开始时,Antigravity会看到可用skill的列表及其名称和描述。
  2. 激活 (Activation):如果某项skill看起来与你的任务相关,Antigravity将读取完整的 SKILL.md 内容。
  3. 执行 (Execution):Antigravity在处理你的任务时会遵循该skill的指令。
    你不需要明确告诉Antigravity使用某项skill——它会根据上下文自行决定。然而,如果你想确保它被使用,你可以提及该skills的名称。

最佳实践

保持skill专注
每个skill应该做好一件事。不要创建一个“包揽一切”的skill,而是为不同的任务创建独立的skill。
编写清晰的描述
描述是Antigravity用来决定是否使用你的skill的依据。要具体说明skill的作用以及它在何时有用。
将脚本作为黑盒使用
如果你的skill包含脚本,请鼓励Antigravity首先使用 --help 运行它们,而不是读取完整的源代码。这可以使Antigravity的上下文专注于当前任务。
包含决策树
对于复杂的skill,添加一个部分来帮助Antigravity根据具体情况选择正确的方法。

示例:代码审查skill

这是一个帮助Antigravity审查代码的简单简单skills:

---
name: code-review
description: 审查代码变更中的错误、代码风格问题以及是否符合最佳实践。在审查拉取请求(PR)或检查代码质量时使用。
---

# Code Review Skill

在审查代码时,请遵循以下步骤:

## 审查清单 (Review checklist)

1. **正确性 (Correctness)**: 代码是否完成了它应该做的事情?
2. **边缘情况 (Edge cases)**: 错误情况是否得到了处理?
3. **代码风格 (Style)**: 它是否遵循项目规范?
4. **性能 (Performance)**: 是否存在明显的效率低下?

## 如何提供反馈 (How to provide feedback)

- 具体说明什么地方需要修改
- 解释“为什么”要改,而不仅仅是“改什么”
- 尽可能提供替代方案的建议
Logo

小龙虾开发者社区是 CSDN 旗下专注 OpenClaw 生态的官方阵地,聚焦技能开发、插件实践与部署教程,为开发者提供可直接落地的方案、工具与交流平台,助力高效构建与落地 AI 应用

更多推荐