【OpenClaw 全面解析:从零到精通】第 009 篇:OpenClaw Skills技能系统与ClawHub技能市场全解析

系列说明 :本系列共计约 20 篇,全面介绍 OpenClaw 开源 AI 智能体框架。本文为系列第 009 篇,聚焦于 OpenClaw Skills技能系统与ClawHub技能市场度解析。建议先阅读 第 008 篇:流量枢纽------OpenClaw Gateway 网关深度解析

摘要

OpenClaw的Skills技能系统是其模块化扩展架构的核心,允许用户通过安装技能包来扩展AI Agent的工具调用能力。本文深入剖析Skills系统的设计理念、文件结构、加载机制,详细介绍ClawHub技能市场的功能和生态,提供技能开发指南和安全注意事项,帮助读者全面掌握OpenClaw技能体系。


一、Skills核心概念与设计理念

1.1 什么是Skills?

OpenClaw Skills本质上是一个模块化扩展系统,类比于浏览器插件之于浏览器。每个Skill是一个包含元数据定义(SKILL.md)和可选脚本的目录,由OpenClaw主程序在运行时动态加载,用于扩展Agent的工具调用能力。

在OpenClaw六层架构中,Skills位于第四层(Layer 4),承载着80+内置工具的能力,包括浏览器自动化(agent-browser)、联网搜索(tavily-search)、文件操作、数据库访问、TTS语音合成等。这些工具通过Skills系统暴露给Agent,使其能够调用外部世界的各种资源。

1.2 Skills的设计哲学

Skills系统遵循以下六大设计原则:

  1. 功能说明:通过SKILL.md告诉AI这个技能是做什么的,以及该使用什么工具
  2. 工具教学:指导LLM如何使用命令行工具(如gh、curl、sag等)
  3. 工作流封装:将复杂的多步骤操作流程封装成可复用的技能
  4. 上下文注入:在系统提示词中注入特定领域的知识和指令
  5. 门控控制:根据环境、配置自动启用或禁用特定功能
  6. 跨平台适配:根据操作系统或可用二进制文件动态加载

这种设计使得Skills成为连接AI智能体与外部工具的桥梁,既保持了系统的可扩展性,又确保了使用的安全性。

1.3 Skills在架构中的位置

复制代码
第1层: Channels (WebChat/Telegram/WhatsApp...)
第2层: Gateway (路由/鉴权/配额/审计)
第3层: Sessions (会话/记忆/上下文压缩)
第4层: Skills (80+工具: Browser/Shell/DB/TTS...) ← Skills层
第5层: Agent Runtime (推理/调度)
第6层: Models & Sandbox (AI模型与安全沙箱)

从数据流角度看,用户请求通过Channel进入Gateway,Gateway路由到对应的Agent,Agent根据任务需求选择合适的Skills工具,最终调用底层模型和外部服务完成响应。这种分层设计使得Skills可以独立于具体业务逻辑进行开发和部署。


二、Skills文件结构与SKILL.md格式

2.1 基本文件结构

每个Skill必须是一个目录,其中必须包含一个SKILL.md文件。OpenClaw使用兼容AgentSkills的技能文件夹格式,确保与其他工具生态的兼容性。

复制代码
my-skill/
├── SKILL.md           # 必需:技能定义文件
├── index.js           # 可选:JavaScript脚本
├── package.json       # 可选:npm依赖定义
├── utils/             # 可选:工具函数
└── README.md          # 可选:使用说明

2.2 SKILL.md完整格式

SKILL.md采用YAML Front Matter格式,分为元数据部分和说明部分:

yaml 复制代码
---
name: file-report-skill
description: "统计目录文件并生成Markdown报表"
version: 1.0.0
homepage: https://github.com/example/file-report-skill
permissions: ["file.read", "file.write"]
metadata:
  openclaw:
    requires:
      bins: ["python3", "git"]
      env: ["OPENCLAW_API_KEY"]
      config: ["report.format"]
    primaryEnv: "OPENCLAW_API_KEY"
    os: ["linux", "darwin", "win32"]
---

# 技能说明

这个技能用于统计指定目录下的文件信息,并生成结构化的Markdown报表。

## 使用场景

当用户需要以下任务时使用此技能:
- 查看项目目录结构
- 统计代码文件数量和行数
- 生成项目文档

## 执行步骤

1. 使用`find`命令扫描目录
2. 根据文件扩展名分类统计
3. 使用模板生成Markdown报表
4. 将报表写入指定文件

## 注意事项

- 需要Python 3.8+环境
- 大型目录扫描可能需要较长时间
- 生成报表前会确认目标文件路径

2.3 关键元数据字段详解

字段 说明 必填
name 技能名称(唯一标识符)
description 技能描述,会显示给AI
homepage 技能官网URL
version 技能版本号
permissions 所需权限列表
user-invocable 是否可被用户直接调用(默认true)
disable-model-invocation 是否排除在模型提示之外(默认false)
command-dispatch 设置为tool时,斜杠命令会作为工具调用

OpenClaw特定元数据

yaml 复制代码
metadata:
  openclaw:
    requires:
      bins: ["uv", "git"]              # 需要的二进制文件
      env: ["GEMINI_API_KEY"]           # 需要的环境变量
      config: ["model.provider"]        # 需要的配置项
    primaryEnv: "GEMINI_API_KEY"        # 主要环境变量(用于UI提示)
    os: ["linux", "darwin", "win32"]   # 支持的操作系统

这些元数据用于门控控制:如果环境不满足requires条件,该Skill将不会加载到可用技能列表中。


三、Skills加载与执行机制

3.1 加载位置与优先级

OpenClaw从四个位置加载Skills,按优先级从高到低排序:

  1. 工作区Skills<workspace>/skills --- 仅对当前智能体可见
  2. 托管/本地Skills~/.openclaw/skills --- 对同一机器上的所有智能体可见
  3. 内置Skills:随OpenClaw安装包分发(npm或OpenClaw.app)
  4. 额外目录 :通过skills.load.extraDirs配置添加(优先级最低)

这种优先级设计允许在不同层级覆盖技能定义,工作区技能可以覆盖全局技能,从而实现个性化定制。

3.2 加载流程详解

Skills加载流程包含以下五个步骤:

复制代码
1. 启动时扫描所有Skills目录
   ↓
2. 读取每个SKILL.md的metadata.openclaw.requires字段
   ↓
3. 检查环境变量、二进制文件、配置项等是否满足
   ↓
4. 合格的Skills列表会被缓存
   ↓
5. 启用文件监视(skills.load.watch: true),SKILL.md变更时自动刷新

环境检查示例

javascript 复制代码
// 伪代码示例
function checkRequirements(requires) {
  if (requires.bins) {
    for (const bin of requires.bins) {
      if (!commandExists(bin)) return false;
    }
  }
  if (requires.env) {
    for (const envVar of requires.env) {
      if (!process.env[envVar]) return false;
    }
  }
  if (requires.config) {
    for (const configKey of requires.config) {
      if (!configHas(configKey)) return false;
    }
  }
  return true;
}

只有通过所有环境检查的Skills才会被加载到可用技能列表中,这确保了只有可用的技能才会被推荐给AI使用。

3.3 全局配置文件

OpenClaw的全局配置文件位于~/.openclaw/openclaw.json,支持JSON5格式:

json5 复制代码
{
  "skills": {
    "entries": {
      "tavily-search": {
        "enabled": true,
        "apiKey": "tvly-xxxxx",
        "env": {
          "TAVILY_API_KEY": "tvly-xxxxx"
        },
        "config": {
          "maxResults": 10,
          "searchDepth": "basic"
        }
      },
      "github-manager": {
        "enabled": true,
        "config": {
          "defaultRepo": "my-repo",
          "defaultBranch": "main"
        }
      }
    },
    "load": {
      "watch": true,              // 启用文件监视
      "watchDebounceMs": 250,     // 防抖延迟(毫秒)
      "extraDirs": [
        "/opt/openclaw/skills",
        "/shared/skills"
      ]
    }
  }
}

这种集中配置方式使得技能管理更加灵活,可以通过配置文件控制技能的启用状态、注入环境变量和自定义配置项。

3.4 热重载机制

skills.load.watch: true时,OpenClaw会启用文件监视,监听Skills目录的变化:

  • 新增Skill:自动发现并加载
  • 修改SKILL.md:自动重新解析元数据和说明
  • 删除Skill:自动从可用列表移除

热重载采用防抖机制(默认250ms),避免频繁修改导致的多次重载。这种设计实现了真正的"即插即用",无需重启OpenClaw服务即可生效。


四、ClawHub技能市场

4.1 ClawHub的功能与定位

ClawHub是OpenClaw的官方技能市场,类比于npm之于Node.js。它提供了技能的搜索、安装、版本管理、发布、备份全生命周期能力,无需编写代码,一条命令即可为Agent扩展新能力。

ClawHub核心功能

  • 技能发布:用户可以上传AgentSkills技能包到市场
  • 版本管理:类似npm的版本控制系统,支持版本回滚
  • 向量搜索:通过向量化技术实现技能的语义搜索
  • 一键安装:支持npm、pnpm、bun等包管理器快速安装技能
  • 安全扫描:集成VirusTotal进行恶意代码检测

4.2 ClawHub市场规模与筛选

截至2026年3月,ClawHub已收录**13,000+**社区贡献的技能。然而,OpenClaw官方对技能进行了严格筛选:

项目 数量 说明
原始技能总数 13,729 提交到ClawHub的所有技能
垃圾测试技能 1,180 无实际功能的测试技能
加密货币相关技能 672 疑似庞氏骗局的币圈技能
重复相似技能 492 功能雷同的低质量技能
恶意技能 396 窃取凭证、安装后门的技能
最终入选技能 约2,868 经过官方筛选的高质量技能

根据awesome-openclaw-skills仓库的分类,5366个精选技能在各个领域的分布如下:

分类 技能数量 占比
Coding Agents & IDEs 1,222 22.8%
Web & Frontend Development 938 17.5%
DevOps & Cloud 409 7.6%
Search & Research 352 6.6%
Browser & Automation 335 6.2%
Productivity & Tasks 206 3.8%
AI & LLMs 197 3.7%
CLI Utilities 186 3.5%
Image & Video Generation 169 3.1%
Communication 149 2.8%

4.3 ClawHub常用命令

安装ClawHub CLI:

bash 复制代码
npm install -g clawhub

常用命令:

bash 复制代码
# 搜索技能
clawhub search "summarize"

# 安装技能
clawhub install summarize

# 查看已安装技能
clawhub list

# 升级指定技能
clawhub update summarize

# 升级全部技能
clawhub update --all

# 扫描并发布更新
clawhub sync --all

# 卸载技能
clawhub uninstall summarize

# 查看技能详情
clawhub info summarize

4.4 腾讯SkillHub本土化市场

针对中国用户,腾讯云推出了SkillHub本土化市场,主要优化包括:

  • 中文搜索:支持中文关键词搜索技能
  • 国内节点分发:下载安装更稳定顺畅
  • 中文界面:有精选榜单和推荐列表
  • 技能收录:包含13,000+个龙虾技能

SkillHub的推出极大地降低了中国用户使用OpenClaw的门槛,让国内开发者能够更便捷地发现和使用高质量的技能。


五、技能开发指南

5.1 创建自定义Skill的步骤

第一步:创建目录

bash 复制代码
mkdir -p ~/.openclaw/skills/hello-world
cd ~/.openclaw/skills/hello-world

第二步:编写SKILL.md

yaml 复制代码
---
name: hello_world
description: 一个简单的打招呼技能
version: 1.0.0
---

# Hello World技能

这个技能用于向用户打招呼,展示基本的Skill结构。

## 使用场景

当用户询问"你好"、"hello"等问候语时,使用此技能。

## 执行逻辑

1. 获取当前时间
2. 根据时间生成问候语(早上好/下午好/晚上好)
3. 返回友好的问候消息

第三步:测试技能

bash 复制代码
# 启动OpenClaw
openclaw

# 在对话中测试
用户:你好
AI:早上好!今天有什么可以帮你的吗?

5.2 实战案例:创建文件监控Skill

场景描述:监控指定目录,当有新文件创建时发送通知。

SKILL.md内容

yaml 复制代码
---
name: file-watcher
description: 监控目录变化,实时通知新文件创建
version: 1.0.0
permissions: ["file.read", "file.write"]
metadata:
  openclaw:
    requires:
      bins: ["inotifywait"]
      config: ["watch.directory"]
---

# 文件监控技能

监控指定目录的文件变化,当有新文件创建时发送通知。

## 使用场景

当用户需要以下任务时使用此技能:
- 监控上传目录的新文件
- 实时跟踪项目文件变化
- 自动化文件处理流程

## 执行步骤

1. 使用inotifywait监控目录
2. 检测CREATE事件
3. 记录新文件信息(路径、大小、时间)
4. 生成通知消息

## 配置要求

需要配置以下配置项:
- `watch.directory`:要监控的目录路径

配套脚本(可选):

javascript 复制代码
// index.js
const { spawn } = require('child_process');

function watchDirectory(directory) {
  const watcher = spawn('inotifywait', [
    '-m',
    '-e',
    'create',
    directory
  ]);

  watcher.stdout.on('data', (data) => {
    const event = data.toString().trim();
    console.log(`New file detected: ${event}`);
  });

  return watcher;
}

module.exports = { watchDirectory };

5.3 工具组(Tool Groups)

OpenClaw使用工具组来简化工具策略配置,避免逐一配置25+内置工具:

工具组 包含工具
group:runtime exec, bash, process(运行时命令执行)
group:fs read, write, edit, apply_patch(文件系统操作)
group:session 界面控制
group:automation cron, gateway(自动化任务)
group:messaging message(消息发送)
group:nodes nodes(节点管理)
group:openclaw 所有内置OpenClaw工具

配置示例

json5 复制代码
{
  "tools": {
    "allow": ["group:fs", "browser"],     // 允许文件系统和浏览器
    "deny": ["gateway"],                  // 禁止网关操作
    "profile": "coding",                  // 预设配置:minimal | coding | messaging | full
    "byProvider": {
      "openai/gpt-5.2": {                 // 针对特定模型允许所有工具
        "allow": ["all"]
      }
    }
  }
}

5.4 技能测试和调试

  1. 确认OpenClaw版本openclaw --version
  2. 查看已加载的Skills:在对话中询问"展示当前可用的Skills"
  3. 手动触发重载:删除Skills目录下的缓存文件
  4. 调试日志 :检查~/.openclaw/logs/目录下的运行日志
  5. 元数据验证 :使用openclaw skills validate命令检查SKILL.md格式

六、常用技能案例分析

6.1 agent-browser(浏览器自动化)

核心功能:支持AI Agent使用的浏览器工具,能够浏览页面、点击、输入文本、截取页面快照。

使用场景

  • 网页浏览和信息提取
  • 自动化搜索和抓取
  • 表单填写和数据采集
  • 页面截图和验证

安装方式

bash 复制代码
clawhub install agent-browser

使用示例

markdown 复制代码
用户:帮我打开百度首页并搜索"OpenClaw"
AI:正在打开百度首页...
    (浏览器操作)
    搜索"OpenClaw"...
    找到约1,000,000条结果

6.2 tavily-search(联网搜索)

核心功能:专为AI Agent优化的实时联网搜索能力,提供精准的搜索结果和摘要。

配置步骤

  1. 访问 tavily.com 注册账号
  2. 获取API Key
  3. 安装技能:clawhub install tavily-search
  4. 配置环境变量:
bash 复制代码
export TAVILY_API_KEY="tvly-xxxxx"

使用示例

markdown 复制代码
用户:搜索2026年AI领域最新进展
AI:正在搜索...
    根据搜索结果,2026年AI领域的最新进展包括:
    1. GPT-5.2发布,推理能力显著提升
    2. OpenClaw社区突破100万用户
    3. ...

6.3 其他热门技能

技能名称 功能描述 下载量 推荐度
百度搜索Skill 搜索引擎官方插件 36,000+ ⭐⭐⭐⭐⭐
gmail-manager 邮件处理和管理 ⭐⭐⭐⭐
notion-manager Notion笔记管理 ⭐⭐⭐⭐
weather 天气查询和预报 ⭐⭐⭐
stock-watcher 股票监控和预警 ⭐⭐⭐
summarize 文本摘要和提炼 ⭐⭐⭐⭐

七、安全注意事项

7.1 恶意技能风险

根据安全公司Koi Security的审计,ClawHub市场存在严重的安全问题:

  • 341个恶意技能:窃取SSH密钥、浏览器密码、API凭证
  • 8000+非恶意垃圾技能:无实际功能或功能重复
  • 伪装性攻击:使用诱人名称如"smart-email-assistant"、"calendar-sync-pro"

7.2 安全防护措施

OpenClaw已采取以下安全措施:

  1. VirusTotal集成:所有技能发布时自动扫描
  2. 账号门槛:GitHub账号需注册满一周才能发布技能
  3. 评论门槛:需通过GPT 5.2验证才能发表评论
  4. 每日扫描:所有活动技能每天重新扫描

7.3 用户防护建议

  1. 审查源码:无论从哪个渠道安装,都要审查SKILL.md源码
  2. 使用精选列表 :优先使用awesome-openclaw-skills等经过筛选的列表
  3. 查看下载量:关注热门技能,下载量高的技能相对更可靠
  4. 验证VirusTotal报告:在ClawHub官网查看技能的安全扫描结果
  5. 检查GitHub账号:验证技能作者的账号年龄和声誉
  6. 避免敏感授权:不要随意授权API密钥或OAuth Token

7.4 隔离运行建议

对于不信任的技能,建议:

json5 复制代码
{
  "skills": {
    "entries": {
      "untrusted-skill": {
        "enabled": true,
        "sandbox": true,              // 在沙箱中运行
        "restricted": true,           // 限制权限
        "env": {}                     // 不注入真实环境变量
      }
    }
  }
}

八、技能生态与发展趋势

8.1 技能生态现状

OpenClaw技能生态已经形成了完整的链条:

复制代码
开发者 → 创建Skill → 发布到ClawHub → 用户搜索下载 → 集成到Agent → 反馈优化

生态参与者包括:

  • 技能开发者:贡献高质量技能,获得社区认可
  • 技能平台:ClawHub、腾讯SkillHub提供分发渠道
  • 技能用户:使用技能扩展Agent能力
  • 安全团队:持续监控恶意技能,维护生态健康

8.2 发展趋势

  1. 技能专业化:越来越多的垂直领域技能涌现(如量化投资、科研辅助、医疗诊断)
  2. 技能组合化:多个技能组合形成完整的解决方案
  3. 技能智能化:技能本身具备学习和优化能力
  4. 技能安全化:更严格的安全审查和认证机制

8.3 企业级应用

越来越多的企业开始将Skills用于实际业务场景:

  • 客户服务:自动处理常见问题,生成FAQ
  • 数据分析:自动化报表生成和趋势分析
  • 代码开发:代码审查、测试、部署自动化
  • 文档管理:自动生成技术文档和API说明

九、总结

OpenClaw的Skills技能系统是其模块化架构的核心,通过ClawHub市场实现了技能的发现、安装和管理。本文从技能的概念、设计理念、文件结构、加载机制等方面进行了全面剖析,介绍了ClawHub市场的功能和生态,提供了技能开发指南和安全注意事项。

随着AI技术的不断发展,Skills系统将继续演进,为用户提供更强大、更安全的AI Agent能力。无论你是开发者还是用户,都可以通过Skills系统扩展OpenClaw的能力,构建属于自己的AI智能体。


上一篇[第 008 篇] 龙虾如何思考------OpenClaw Agent 智能体循环机制深度解析

下一篇[第 010 篇] OpenClaw多渠道接入:WhatsApp、Telegram、飞书等

参考资料

  1. Skills - OpenClaw官方文档
  2. ClawHub技能市场
  3. GitHub - VoltAgent/awesome-openclaw-skills
  4. OpenClaw Skills开发指南 - CSDN
  5. OpenClaw Tools工具详解 - CSDN
  6. 2026年GitHub热门OpenClaw Skills整理 - 阿里云
  7. ClawHub必装Skills清单 - CSDN
  8. 腾讯SkillHub上线 - 腾讯网
  9. 6个超实用Skills - 腾讯网
  10. OpenClaw agent-browser技能实战 - CSDN
相关推荐
腾视科技TENSORTEC1 小时前
安全驾驶 智在掌控|腾视科技ES06终端,为车辆运营赋能
大数据·人工智能·科技·安全·ai·车载系统·车载监控
晓晓不觉早2 小时前
GPT-5.4 mini/nano 双炮登场:OpenAI 开启「模型编队」新时代
人工智能·gpt
翱翔的苍鹰2 小时前
什么是 Deep Agents?
人工智能·windows·语言模型·自然语言处理·langchain·开源
杜子不疼.2 小时前
ToDesk 全新 ToClaw,正在把电脑交给AI去操作
人工智能
ShiLuoHeroKing2 小时前
AI才不是石头里蹦出来的!一文带你看懂AI的“前世今生“
人工智能
新缸中之脑2 小时前
用 autoresearch 优化万物
人工智能
Datacarts2 小时前
技术落地经验:OpenClaw + 飞书打造 AI 电商选品系统,无缝对接三方数据服务商
人工智能·飞书
xiaozhazha_2 小时前
再生资源行业数字化平台建设实践:快鹭AI从痛点分析到微服务架构落地
人工智能·微服务·架构
华农DrLai2 小时前
什么是自动Prompt优化?为什么需要算法来寻找最佳提示词?
人工智能·算法·llm·nlp·prompt·llama