SKILL.md 文件。OpenClaw 会从多个根目录按定义的 优先级顺序 加载技能。
创建你的第一个技能
创建技能目录
技能位于你工作区的 你可以为了组织管理把技能分到子文件夹中——技能仍然由
skills/ 文件夹中。为你的新技能创建一个目录:SKILL.md frontmatter 中的内容命名,而不是由文件夹路径命名:编写 SKILL.md
在目录中创建 默认情况下,OpenClaw 会监视 skills 根目录下的
SKILL.md。frontmatter 定义元数据;正文则提供给 agent 的指令。SKILL.md 文件。如果监视器被禁用,或者你正在继续一个已有会话,请新建一个会话,以便 agent 接收到刷新后的列表:SKILL.md 参考
必需字段
| 字段 | 描述 |
|---|---|
name | 使用小写字母、数字和连字符的唯一 slug |
description | 显示给 agent 和发现输出的一行描述 |
可选 frontmatter 键
| 字段 | 默认值 | 描述 |
|---|---|---|
user-invocable | true | 将该技能暴露为用户斜杠命令 |
disable-model-invocation | false | 将该技能排除在 agent 的系统提示之外(仍可通过 /skill 运行) |
command-dispatch | — | 设置为 tool 可将斜杠命令直接路由到工具,绕过模型 |
command-tool | — | 当设置了 command-dispatch: tool 时要调用的工具名称 |
command-arg-mode | raw | 对于工具分发,将原始参数字符串转发给工具 |
homepage | — | 在 macOS Skills UI 中显示为“网站”的 URL |
requires.bins、requires.env 等),请参见
Skills — 门控。
使用 {baseDir}
在技能正文中使用 {baseDir} 来引用技能目录中的文件,而不必硬编码路径:
添加条件激活
对你的技能进行门控,使其只在依赖可用时加载:门控选项
门控选项
| 键 | 描述 |
|---|---|
requires.bins | 所有二进制文件都必须存在于 PATH 中 |
requires.anyBins | 至少一个二进制文件必须存在于 PATH 中 |
requires.env | 每个环境变量都必须存在于进程或配置中 |
requires.config | 每个 openclaw.json 路径都必须为真值 |
os | 平台过滤器:["darwin"]、["linux"]、["win32"] |
always | 设为 true 可跳过所有门控并始终包含该技能 |
环境和 API 密钥
环境和 API 密钥
通过 Skill Workshop 提议
对于由 agent 起草的技能,或者当你希望在技能上线前进行运营审核时,请使用 Skill Workshop 提案,而不是直接编写SKILL.md。
--proposal-dir:
PROPOSAL.md。支持文件可以放在 assets/、examples/、references/、scripts/ 或 templates/ 中。
审核之后:
发布到 ClawHub
发布
最佳实践
相关内容
Skills reference
加载顺序、门控、允许列表和 SKILL.md 格式。
Skill Workshop
供 agent 起草技能使用的提案队列。
Skills config
完整的
skills.* 配置 schema。ClawHub
浏览并在公共注册表中发布技能。
Building plugins
插件可以将技能与它们所文档化的工具一起发布。