OpenClaw 技能入门:SKILL.md 的写法与加载优先级
Skills 是 OpenClaw 的能力扩展单元:一个装着 SKILL.md 的文件夹,用 Markdown 指令教会智能体「何时以及怎么用某个工具」。它不引入新代码执行路径,本质是把可复用的操作知识注入提示词。
SKILL.md 最小格式
---
name: weather-report
description: 查询并总结指定城市的天气
---
当用户询问天气时,使用 web_fetch 工具获取数据,按「今天/明天/后天」三段输出。
frontmatter 里 name 与 description 必填;description 写得越像「触发场景描述」,智能体越知道什么时候该用它。技能遵循开放的 AgentSkills 规范,与其他生态有一定互操作性。
六层加载优先级
同名技能高优先级覆盖低优先级,从高到低:
- 工作区技能(workspace 下的 skills 目录)
- 项目智能体技能(workspace 下的 .agents/skills)
- 个人智能体技能(用户目录 .agents/skills)
- 托管/本地技能(.openclaw/skills)
- 内置技能(随安装包)
- 额外目录与插件技能
文件夹结构只管组织,技能名与斜杠命令来自 frontmatter 的 name。
门控与可见性
- 环境门控:frontmatter 里可声明依赖(需要的可执行文件、环境变量、配置开关),缺依赖的技能加载时自动被过滤,不会污染提示词。
- 智能体白名单:agents.defaults.skills 设共享基线,各智能体条目可覆盖;空列表即对该智能体隐藏全部技能。
- 配置开关:skills.entries 下可逐个禁用内置技能或注入环境变量(仅注入宿主机进程,沙箱内不生效)。
刷新时机
技能清单在会话启动时快照;文件监视器检测到 SKILL.md 变更或新节点连入时会中途刷新,下一轮生效。改完技能不用重启网关。
安全提醒(务必读)
官方用加粗警告:第三方技能按不受信任的代码对待——SKILL.md 里的指令会进入你的智能体上下文,恶意技能可以诱导它执行危险操作。启用前读一遍内容;高风险场景配合沙箱运行;技能安装策略(security.installPolicy)可以强制每步安装先过本地审查命令。