手把手教你给 OpenCLAW 添加自定义 Skill

手把手教你给 OpenCLAW 添加自定义 Skill:从"Hello World"开始

一句话总结:用 5 分钟写一个自定义技能,让 OpenCLAW 真正听懂你的话!

最近 OpenCLAW(或类似智能体框架)在开发者圈子里特别火,我也忍不住在自己的 Mac Mini 上搭了一套玩玩。之前一直用 qwen-max 模型,结果没注意------欠费了! 😅

赶紧切到免费的 qwen-max-min(官方叫 qwen-max-latest 的免费版),继续折腾。

OpenCLAW 内置了很多现成的 Skill(技能),比如查天气、搜网页、执行 Shell 命令等。但我想试试自己写一个 Skill,看看能不能让智能体调用我写的逻辑。

于是,就有了这个极简但完整的「Hello World」自定义 Skill 实践。


🎯 目标效果

  • 用户在 OpenCLAW Dashboard 输入:hello world
  • 智能体不走大模型生成,而是直接调用我的 Python 函数
  • 返回固定字符串:hello world! - from customized skill

这能验证:自定义 Skill 确实被注册并成功触发了!


🔧 实现步骤(仅需两步)

第一步:编写 Skill 脚本

创建一个 Python 文件,比如 hello_world_skill.py,内容如下:

python 复制代码
def hello_world_skill():
    return f'hello world! - from customized skill'

第二步:编写 SKILL.md 描述文件

Skill 光有代码还不够,还需要一个 SKILL.md 文件来告诉 OpenCLAW:

  • 这个 Skill 是干嘛的?
  • 哪些用户提问会触发它?

你可以手动写,也可以让大模型帮你生成(比如用 Qwen、通义千问)。我用的提示词是:

我想实际试下 openclaw 中的自定义 skill,我的 skill 脚本如下
def hello_world_skill(): return f'hello world! - from customized skill'

请帮我生成对应的 SKILL.md 文档

生成的 SKILL.md 如下(可直接使用):

markdown 复制代码
# Hello World Skill

## 描述
这是一个最简化的自定义技能示例,用于验证技能注册与调用机制是否正常工作。  
当被调用时,该技能将返回一条固定的欢迎消息。

## 功能
- 返回字符串:`"hello world! - from customized skill"`
- 无输入参数
- 无副作用(不修改状态、不调用外部 API)

## 使用场景
- 调试技能加载流程
- 验证自定义技能注册是否成功
- 作为新技能开发的模板

## 调用方式,可以自己加一些自定义的提示词
在智能体提示(prompt)中直接请求执行此技能,例如:
> "请运行 hello world 技能"
> "我想试下自定义skill" 

或通过技能名称显式调用(取决于框架支持):
```json
{
  "skill": "hello_world_skill"
}

依赖

  • 无外部依赖
  • 无需网络访问
  • 纯 Python 实现

💡 小技巧 :把 SKILL.mdhello_world_skill.py 放在同一个目录下(比如 skills/),OpenCLAW 会自动加载。


🚀 部署 & 测试

  1. 将两个文件放入 OpenCLAW 的 /Users/你的mac用户名/.openclaw/workspace/skills/hello_world 目录下(具体路径看你的配置)

  2. 重启 Gateway 服务:

    bash 复制代码
    openclaw gateway restart
  3. 打开 OpenCLAW Dashboard(命令直接敲: openclaw dashboard)

  4. 在聊天框输入:

    复制代码
    hello world

✅ 如果一切正常,你会看到回复:

csharp 复制代码
hello world! - from customized skill

而不是大模型胡编乱造的"Hello! How can I help you?" ------ 这说明你的自定义 Skill 成功接管了请求!


🤔 为什么需要 SKILL.md

你可能会问:光有 Python 函数不行吗?

答案是:不行!

因为 OpenCLAW 的 Planner(规划器)需要根据 SKILL.md 中的"描述"和"触发关键词"来决定是否调用你的 Skill。

比如你在 SKILL.md 的"调用方式"里写了:

"请运行 hello world 技能"

那么当你输入 hello world 时,Planner 就会认为:"哦,用户想用 hello world 技能",于是跳过大模型,直接执行你的函数。

所以,SKILL.md 是连接自然语言和代码的桥梁!


🛠 后续可以怎么玩?

  • 那就取决于你的想象力了,代码能干的事情可太多了

✅ 总结

步骤 文件 作用
1 hello_world_skill.py 实现业务逻辑
2 SKILL.md 告诉模型"什么情况下调用我"
3 openclaw gateway restart 重新加载技能
4 输入 hello world 触发自定义 Skill

整个过程不到 5 分钟,却让你真正掌握了 OpenCLAW 的扩展能力。

相关推荐
shangjian0071 小时前
AI-大模型应用开发-大模型生成参数调优速查表
人工智能
Dev7z1 小时前
基于YOLO11的泳池溺水行为实时检测系统设计与实现
人工智能·深度学习·yolo11·泳池溺水
Elastic 中国社区官方博客1 小时前
使用 Elasticsearch 和神经模型为复杂语言提供更好的文本分析
大数据·人工智能·elasticsearch·搜索引擎·ai·全文检索
m0_488913011 小时前
新手小白也能学会的Dify本地部署教程(超详细)
人工智能·搜索引擎·云原生·eureka·开源·大模型·产品经理
无心水1 小时前
【任务调度:数据库锁 + 线程池实战】2、MySQL 8.0+ vs PostgreSQL:SKIP LOCKED 终极对决,谁才是分布式调度的王者?
java·人工智能·后端·面试·架构
简佐义的博客1 小时前
120万细胞大整合(自测+公共数据):scRNA-seq 构建乳腺细胞图谱的完整思路(附生信复现资源)
人工智能·深度学习·算法·机器学习
wanghao6664551 小时前
向量相似度计算全解析
人工智能·机器学习
hqyjzsb1 小时前
企业采购AI培训服务的供应商评估体系与选型方案
人工智能·职场和发展·创业创新·学习方法·业界资讯·改行学it·高考
Eloudy1 小时前
CHI 开发备忘 02 记 -- CHI spec 02 事务
人工智能·ai·arch·hpc