Skip to content

Part 5: Skills 系统

Skills 工作原理

How Skills Work

Skills 是 OpenClaw 的能力扩展单元。理解它的加载机制,才能真正用好这个系统。

三层优先级

OpenClaw 的 Skill 有三个来源,按优先级从高到低排列:

优先级位置说明
最高<workspace>/skills/项目级 Skills,只对当前工作区生效。适合针对特定项目定制的能力。
~/.openclaw/skills/用户级 Skills,全局生效。通过 ClawHub 安装或手动放置的 Skills 都在这里。
最低bundled skills内置的 55 个 Skills,随 OpenClaw 版本发布。不需要安装,开箱即用。

核心建议

如果同名 Skill 存在于多个层级,高优先级会覆盖低优先级。这意味着你可以在 workspace 级别「重写」一个内置 Skill 的行为,而不影响其他项目。

Skill 加载过程

当 OpenClaw 启动或收到消息时,Skills 的加载遵循以下流程:

1. 读取 Skill 元数据

扫描三层目录,读取每个 Skill 的 SKILL.md 文件,解析名称、描述、触发条件、所需环境变量等元信息。

2. 应用环境变量

如果 Skill 声明了需要的 API Key 或环境变量(如 GITHUB_TOKEN),系统会从 openclaw.jsonenv 字段中注入。缺少必要变量的 Skill 会被静默跳过。

3. 构建 System Prompt

将所有可用 Skills 的描述注入到 system prompt 中,告知模型当前可以调用哪些能力。这是模型「知道自己能做什么」的关键步骤。

4. 运行后恢复

Skill 执行完毕后,恢复原始环境变量和上下文状态,避免 Skill 之间互相干扰。

ClawHub 注册表

ClawHub(clawhub.com)是 OpenClaw 的官方 Skill 注册表,类似 npm 之于 Node.js。它提供:

  • 公共 Skills 的发布和版本管理
  • 基于向量搜索的 Skill 发现
  • 下载量统计和社区评分
  • VirusTotal 合作的安全扫描(但覆盖率有限)

基于 MIT 许可发布 | OpenClaw 入门到精通 | 内容自动更新