OpenClaw Skills 全解析:安装、功能与自定义开发
OpenClaw 的 Skills 是扩展 AI 能力的核心机制,本质是包含 SKILL.md 配置文件的目录,通过声明触发场景、执行逻辑与工具权限,让 AI 完成特定任务(如网页浏览、数据抓取、表单填写等)。以下是详细的安装、功能说明与自定义编写指南。
一、Skills 安装方式
1. 官方 ClawHub 安装(推荐)
通过 ClawHub CLI 管理官方/社区技能,支持搜索、安装、升级与卸载。

前置依赖
需先安装 Node.js(v22+)与 ClawHub CLI:
# 安装 ClawHub CLInpm install -g clawhub
常用命令
|
|
|
|
|---|---|---|
clawhub search <关键词> |
|
clawhub search web-browsing |
clawhub install <技能名> |
|
clawhub install web-browsing
clawhub install nano-banana-pro(图像生成) |
clawhub list |
|
|
clawhub update --all |
|
|
clawhub uninstall <技能名> |
|
|
2. 本地手动安装
适合团队内部或个人专属技能,无需发布到 ClawHub,直接放入本地技能目录。
标准目录结构
~/.openclaw/workspace/skills/└── 你的技能名/ ├── SKILL.md # 核心配置文件(必需) └── scripts/ # 执行脚本(可选,如 JS/Python/Bash) └── config.json # 可选:配置文件
快速创建示例
# 创建技能目录mkdir -p ~/.openclaw/workspace/skills/hello-world# 编写核心配置文件cat > ~/.openclaw/workspace/skills/hello-world/SKILL.md << 'EOF'---name: hello-worlddescription: 当用户请求打招呼时触发,返回问候语---# Hello World 技能当用户输入“你好”“打招呼”等问候语时,使用 echo 工具返回欢迎信息。EOF
加载生效
创建或修改后,需重启会话或 OpenClaw Gateway 使技能生效:
# 重启网关openclaw gateway restart# 验证技能加载openclaw skills list
3. 模板初始化(快速开发)
使用官方 skill-creator 技能生成标准化项目模板,降低开发成本。
# 安装模板工具clawhub install skill-creator@latest# 初始化新技能(自动生成目录、配置文件与脚本骨架)python3 ~/.openclaw/skills/skill-creator/scripts/init_skill.py my-new-skill \--path ~/.openclaw/skills/ \--author "你的名字" \--version "1.0.0" \--description "自定义技能描述"
初始化后会自动生成 SKILL.md、manifest.yaml、脚本入口文件与测试文件,直接编辑即可开发。
二、核心功能与常用技能
1. 核心功能定位
Skills 是 AI 能力的“扩展包”,通过声明触发条件(如用户提问关键词)、工具权限(如网络请求、文件读写)与执行逻辑,让 AI 自主完成任务,而非局限于内置能力。
2. 常用技能及用途
|
|
|
|
|---|---|---|
web-browsing |
|
|
nano-banana-pro |
|
|
weather |
|
|
pdf/docx/xlsx |
|
|
github |
|
|
3. 技能加载优先级
本地工作区技能 > 共享技能 > 官方内置技能,优先级高的技能会覆盖同名低优先级技能。
查看skills

三、自定义编写 Skill 全流程
1. 核心概念
-
SKILL.md:核心配置文件,采用 YAML 前端配置 + Markdown 指令 格式,定义技能元数据与执行逻辑。 -
工具(Tools):AI 执行任务的“手脚”,如 Bash(执行命令)、Read(读文件)、Write(写文件)、WebSearch(网络搜索)等,需在配置中声明最小权限集合。
2. 开发步骤(标准流程)
步骤 1:需求分析与设计
明确技能的触发场景(如“用户查询天气”)、核心功能(如“获取城市天气、多日预报”)、依赖工具(如 Bash、HTTP 请求)与异常处理(如网络异常、城市不存在)。
步骤 2:编写 SKILL.md 核心配置
基础结构(YAML 前端配置)
---name: 技能名(kebab-case 格式,全局唯一)description: 技能描述(关键!AI 据此判断触发时机,越具体越好)version: 1.0.0(语义化版本)author: 作者名metadata:openclaw:os: ["darwin", "linux", "win32"](支持的系统)requires:bins: ["curl", "python3"](必需的系统命令)env: ["API_KEY"](必需的环境变量,如第三方服务密钥)config: ["feature.enabled"](必需的配置项)---
Markdown 指令体
描述触发条件、执行步骤、示例与限制,示例如下(天气查询技能):
# 天气查询技能## 触发当用户询问“天气”“温度”“未来几天天气”时触发。## 执行1. 从用户提问中提取城市名称(如“北京”“上海”);2. 调用天气 API(如 wttr.in)获取天气数据;3. 格式化返回结果,包含城市、温度、天气状况、未来预报;4. 异常处理:无网络时提示“网络不可用”,城市不存在时提示“暂不支持该城市”。## 示例- 用户:“北京今天天气怎么样?”- AI:“北京 2026年04月21日 天气:晴,18℃,微风,适合出行。”## 限制仅支持国内主要城市,暂不支持小众县城。
步骤 3:编写执行脚本(可选)
若技能需要复杂逻辑(如 API 调用、数据处理),可在 scripts 目录下编写脚本(支持 Node.js、Python、Bash 等),并在 SKILL.md 中引用。
示例(Node.js 脚本:天气查询)
创建 scripts/weather.js:
#!/usr/bin/env nodeconst fetch = require('node-fetch');const city = process.argv[2] || '北京';// 调用天气 APIasync function getWeather(city) {try {const response = await fetch(`https://wttr.in/${city}?format=3`);if (!response.ok) throw new Error('API 请求失败');return response.text(); } catch (error) {return `获取天气失败:${error.message}`; }}// 执行并输出结果getWeather(city).then(console.log);
在 SKILL.md 中引用:
## 执行运行 scripts/weather.js 脚本,传入城市参数获取天气数据。
步骤 4:本地测试
# 安装本地技能openclaw skill install --path ~/.openclaw/workspace/skills/天气查询# 测试触发openclaw agent --message "北京今天天气怎么样?"# 或通过聊天交互测试openclaw chat
步骤 5:发布到 ClawHub(可选)
若需分享给社区,需先完善 manifest.yaml 与 README.md,再执行发布命令:
# 进入技能目录cd ~/.openclaw/workspace/skills/天气查询# 发布(需 ClawHub 账号)openclaw skill publish
3. 编写规范与最佳实践
-
命名规范:技能名使用 kebab-case(小写+连字符),全局唯一。 -
描述精准: description需明确触发场景,让 AI 快速匹配(如“当用户查询火车票余票、车次、票价时触发”)。 -
权限最小化:仅声明必需的工具(如无需文件读写时不添加 Read/Write),避免安全风险。 -
异常处理:返回友好提示(如“网络不可用,请检查网络后重试”),不暴露堆栈信息。 -
技能单一职责:一个技能只完成一个核心任务(如“天气查询”专注天气,不包含新闻推荐)。
四、常见问题与排障
-
技能未加载:检查目录结构是否正确(必须包含 SKILL.md),重启 OpenClaw Gateway 或开启新会话。 -
依赖缺失:通过 metadata.openclaw.requires.bins声明依赖,或在脚本中安装依赖(如npm install、pip install)。 -
触发失败:优化 description与触发条件描述,确保 AI 能匹配用户提问。 -
权限不足:检查技能目录权限,或在配置中声明 user权限。
skills地址
ClawHub 是 OpenClaw 的公共技能注册表,用于发现、安装、更新和备份 Skills。
官方地址:https://clawhub.ai/
国内镜像地址(速度更快):https://skillhub.tencent.com/

总结
OpenClaw Skills 是灵活扩展 AI 能力的核心,通过 ClawHub 快速安装官方技能 或 本地自定义编写专属技能,可满足网页浏览、数据处理、图像生成等多样化需求。自定义开发的核心是编写规范的 SKILL.md 配置文件,结合脚本实现复杂逻辑,遵循权限最小化与异常处理规范,可打造高效、安全的专属技能。
夜雨聆风