深度

OpenClaw Skills 系统完全指南:安装、配置与开发自定义技能

OpenClaw Skills(技能)系统完整指南(2026 最新版):Skills 是什么(AgentSkills 兼容的 SKILL.md 目录)、三级加载优先级(bundled/managed/workspace)、多 Agent 环境下的 Skills 共享机制、ClawHub 技能市场(安装/更新/同步命令)、SKILL.md 格式规范(YAML frontmatter/gating 条件/installer 配置)、openclaw.json 中启用/禁用/注入 API Key 的方法、Plugin 携带 Skills 的工作方式,以及从零开发一个自定义 Skill 的完整步骤。

2026/3/215分钟 阅读ClaudeEagle

Skills 是 OpenClaw 的能力扩展机制—— 每个 Skill 是一个包含 SKILL.md 的目录,告诉 AI 如何使用特定工具或执行特定任务。

Skills 是什么?

Skills 目录结构示例: weather/ ├── SKILL.md ← AI 读取这个,学会如何查天气 └── weather.sh ← 可选的辅助脚本/工具 SKILL.md 内容: --- name: weather description: 获取指定城市的实时天气和预报 --- # Weather Skill 使用 wttr.in 获取天气信息。 ## 使用方法 调用 exec 工具执行:curl wttr.in/{城市名}?format=3

Skills 让 AI 知道「我有这个能力,这样用」, 而不需要每次在对话里重新解释工具的用法。

三级加载优先级

OpenClaw 从三个位置加载 Skills,优先级从高到低:

优先级 1(最高):<workspace>/skills/ 每个 Agent 的专属技能,只有该 Agent 可用 优先级 2:~/.openclaw/skills/ 用户自定义技能,所有 Agent 共享 优先级 3(最低):bundled skills OpenClaw 内置技能(随安装包附带)

同名 Skill 时,高优先级覆盖低优先级—— 这让你可以覆盖内置 Skill 的行为而不修改安装包。

额外目录(最低优先级,低于 bundled):

json
{
  "skills": {
    "load": {
      "extraDirs": ["/opt/shared-skills", "~/team-skills"]
    }
  }
}

多 Agent 环境中的 Skills 共享

多 Agent 配置中: Agent A(工作区:~/projects/backend) 可用 Skills:backend/skills/ + ~/.openclaw/skills/ + bundled Agent B(工作区:~/projects/frontend) 可用 Skills:frontend/skills/ + ~/.openclaw/skills/ + bundled 共享 Skills → 放到 ~/.openclaw/skills/(对所有 Agent 可见) 专属 Skills → 放到 <workspace>/skills/(只对该 Agent 可见)

ClawHub:技能市场

ClawHub(clawhub.com)是官方 Skills 注册中心, 提供社区贡献的技能包。

bash
# 浏览和安装技能
clawhub install weather          # 安装 weather 技能
clawhub install image-lab        # 安装图像生成技能
clawhub install gemini           # 安装 Gemini CLI 集成

# 更新已安装的技能
clawhub update --all             # 更新所有技能
clawhub update weather           # 更新指定技能

# 同步(扫描本地技能,发布更新)
clawhub sync --all

# 默认安装到当前目录的 ./skills/(作为 workspace skills)
# 也可以指定安装到全局
clawhub install weather --global   # 安装到 ~/.openclaw/skills/

SKILL.md 格式规范

yaml
---
name: my-tool          # 技能名称(唯一标识)
description: 一句话描述这个技能的功能
homepage: https://github.com/my/tool   # 可选,macOS UI 中显示
user-invocable: true   # 是否暴露为 /命令(默认 true)
metadata: {"openclaw": {"emoji": "🔧", "requires": {"bins": ["my-tool"], "env": ["MY_API_KEY"]}, "primaryEnv": "MY_API_KEY", "install": [{"id": "brew", "kind": "brew", "formula": "my-tool", "bins": ["my-tool"], "label": "Install my-tool"}]}}
---

# My Tool Skill

在这里写给 AI 看的使用说明:

## 功能
描述这个工具能做什么

## 使用方式
调用 exec 工具运行:my-tool --option {参数}

## 示例
- 示例 1:...
- 示例 2:...

Gating 条件(metadata.openclaw.requires)

字段含义
binsPATH 中必须存在的可执行文件(都要有)
anyBinsPATH 中至少有其中一个可执行文件
env必须设置的环境变量
configopenclaw.json 中必须为 truthy 的路径
os只在指定系统上加载(darwin/linux/win32)

条件不满足时,Skill 不会加载(AI 看不到它)。

在 openclaw.json 中配置 Skill

json
{
  "skills": {
    "entries": {
      "weather": {
        "enabled": true    // 强制启用(即使 gating 条件不满足也不会关)
      },
      "image-lab": {
        "enabled": true,
        "apiKey": "GEMINI_KEY_HERE",   // 注入 API Key
        "env": {
          "GEMINI_API_KEY": "GEMINI_KEY_HERE"  // 等价方式
        },
        "config": {
          "model": "gemini-2.0-flash"   // Skill 特定配置
        }
      },
      "old-skill": {
        "enabled": false   // 禁用不需要的内置 Skill
      }
    }
  }
}

注意skills.entries 的 key 是 Skill 的 name, 如果 name 含连字符(如 image-lab),需要加引号。

从零开发一个自定义 Skill

以开发一个「查询公司内部 Confluence 文档」的 Skill 为例:

bash
# 1. 创建 Skill 目录
mkdir -p ~/.openclaw/skills/confluence
cd ~/.openclaw/skills/confluence
markdown
# SKILL.md
---
name: confluence
description: 搜索和查阅公司 Confluence 知识库
metadata: {"openclaw": {"requires": {"env": ["CONFLUENCE_TOKEN", "CONFLUENCE_BASE_URL"]}, "primaryEnv": "CONFLUENCE_TOKEN"}}
---

# Confluence 知识库查询

## 配置
需要设置环境变量:
- CONFLUENCE_BASE_URL:公司 Confluence 地址(如 https://company.atlassian.net)
- CONFLUENCE_TOKEN:API Token(从 Atlassian 账户设置获取)

## 搜索文档
使用 exec 工具运行:

搜索:
curl -H "Authorization: Bearer $CONFLUENCE_TOKEN"   "$CONFLUENCE_BASE_URL/wiki/rest/api/content/search?cql=text~'{搜索词}'"

查看页面内容:
curl -H "Authorization: Bearer $CONFLUENCE_TOKEN"   "$CONFLUENCE_BASE_URL/wiki/rest/api/content/{page-id}?expand=body.storage"

## 使用示例
- "搜索 Confluence 中关于 API 规范的文档"
- "查看 Confluence 页面 ID 12345 的内容"
bash
# 2. 注入 API Key(在 openclaw.json 中)
# 或直接设置环境变量
export CONFLUENCE_TOKEN="your-token"
export CONFLUENCE_BASE_URL="https://company.atlassian.net"

# 3. 重启 Gateway 让 Skill 生效
openclaw gateway restart

# 4. 验证 Skill 已加载
openclaw skills list  # 应该能看到 confluence

Skill 安全注意事项

  • 第三方 Skill 要审查:安装前先 cat ~/.openclaw/skills/xxx/SKILL.md 查看内容
  • API Key 不要写在 SKILL.md 里:用 openclaw.jsonskills.entries.xxx.env 注入
  • 危险工具用沙箱:不信任的 Skill 配合 Docker 沙箱运行,限制权限

来源:OpenClaw 官方文档 - docs.openclaw.ai/tools/skills

相关文章推荐

深度OpenClaw Skills 系统深度解析:加载机制、条件门控与 ClawHub 技能市场OpenClaw Skills 系统完整解析:三级加载优先级(Workspace/Managed/Bundled)、多 Agent 共享与专属技能管理、ClawHub 技能市场使用方法、SKILL.md 格式规范、条件门控(bins/env/config 检查)、自动安装器配置,以及 Token 消耗计算和安全注意事项。2026/3/10深度OpenClaw Skills 系统详解:为你的 AI 助手赋予超能力OpenClaw Skills 系统是其最强大的扩展机制,支持为 AI Agent 增加任意新能力。本文详解 Skills 的加载机制、目录结构、SKILL.md 格式、条件门控、ClawHub 公共仓库使用方法,以及多 Agent 场景下的 Skills 管理策略。2026/2/27深度OpenClaw 多 Gateway 架构完全指南:一台机器运行多个独立 AI 助手实例OpenClaw 多 Gateway(Multi-Gateway)架构完整教程:多实例的隔离优势、同一台机器运行多个 Gateway(不同端口/配置文件/workspace)、systemd 管理多个 Gateway 服务、Nginx 虚拟主机为每个实例分配独立域名、API Key 隔离与成本拆分、单机多实例 vs 多机方案对比,以及 Docker Compose 多容器隔离部署方案。2026/3/26深度OpenClaw Hooks 自动化进阶:消息前后的智能拦截、转换与触发机制OpenClaw Hooks(钩子)自动化系统进阶教程:Hooks 的触发时机(before-send/after-receive/on-tool-call)、用 Hooks 拦截消息并修改内容(自动翻译/过滤/格式化)、基于条件的 Hook 触发(渠道过滤/关键词匹配)、Hook 中调用外部 API(Notion 记录/Bark 通知/监控告警)、exec 工具二次确认 Hook,以及 Hooks 与 SOUL.md 和 Standing Orders 的优先级关系详解。2026/3/26深度OpenClaw 插件开发完全指南:从零构建自定义渠道和工具插件OpenClaw 插件(Plugin)开发完整教程:插件类型(渠道插件/工具插件/Provider插件)、插件的目录结构和 package.json 规范、使用 Plugin SDK 开发自定义消息渠道(实现 onMessage/sendMessage 接口)、开发自定义工具(Tool)的函数签名和参数 Schema、本地插件安装与调试(openclaw plugins install ./local-plugin)、发布到 npm 的规范要求(@openclaw/ 命名空间)、插件的权限声明(capabilities)、社区插件列表(Plugin Bundles)获取,以及常见插件开发错误和调试技巧。2026/3/25深度OpenClaw 安全威胁模型深度解析:MITRE ATLAS 框架下的 AI 助手攻防分析OpenClaw 安全架构深度分析:个人助手信任模型(单用户/单 Gateway 边界)、形式化验证的认证逻辑、基于 MITRE ATLAS 框架的 AI 系统威胁分类(直接提示注入/间接提示注入/工具滥用/数据泄露/会话劫持)、多租户共享 Gateway 的风险与安全边界说明、exec/browser/文件工具的权限最小化配置、频道白名单与沙箱配置对应的威胁缓解措施,以及 `openclaw security audit` 命令的使用方法。2026/3/24