上期我们聊了什么是技能,今天直接动手——手把手教你创建一个"天气查询"技能,让你的 AI 助手学会调用和风天气 API。
一、技能的本质
OpenClaw 的技能其实很简单,就是一个文件夹,里面包含:
my-skill/
├── SKILL.md ← 技能说明书(告诉 AI 什么时候用、怎么用)
└── (可选)脚本文件 ← Python/Shell 等实际执行代码
**核心逻辑:**
用户说某句话 → AI 判断该用哪个技能 AI 读取 SKILL.md → 知道该执行什么命令 执行命令 → 返回结果给用户
二、实战:创建"天气查询"技能
步骤 1:创建技能目录
在你的 OpenClaw 工作区创建文件夹:
```bash
步骤 2:编写 SKILL.md
这是最重要的文件,告诉 AI 这个技能的一切。
```markdown
weather-query
描述
使用场景
"北京今天天气怎么样?" "查询郑州的天气" "上海明天会下雨吗?"
使用方法
从用户问题中提取城市名称 调用脚本:`python weather.py 城市名` 将脚本输出返回给用户
示例
注意事项
需要配置和风天气 API 密钥 免费版每天 1000 次调用额度
步骤 3:编写 Python 脚本
```python
和风天气 API 配置
城市名转城市代码(简化版,实际需要完整对照表)
步骤 4:测试脚本
先在命令行测试是否能正常运行:
```bash
预期输出:
郑州:晴,15°C,湿度 45%,东南风
步骤 5:告诉 AI 这个技能
在 OpenClaw 的 USER.md 或 MEMORY.md 中添加:
```markdown
自定义技能
三、进阶:让技能更智能
改进 1:自动获取城市代码
上面的脚本只支持几个固定城市,实际可以用和风天气的"城市搜索 API":
```python
改进 2:添加错误处理
```python
改进 3:添加缓存
```python
四、常见问题
**Q1:API 密钥从哪里获取?**
A:访问 https://dev.qweather.com/ 注册账号,免费版每天 1000 次调用足够个人使用。
**Q2:为什么 AI 不执行我的技能?**
A:检查以下几点:
SKILL.md 描述是否清晰? 使用场景是否匹配用户的提问? 脚本路径是否正确? 脚本是否有执行权限?
**Q3:可以调用其他语言的脚本吗?**
A:可以!SKILL.md 里写清楚执行命令即可:
Node.js: node script.jsBash: bash script.shGo: ./my-program
**Q4:如何让技能在 OpenClaw 启动时自动加载?**
五、技能发布(可选)
如果你写了一个好用的技能,可以:
**分享给朋友**:直接打包文件夹发送 **提交到 ClawHub**:访问 clawhub.com 了解发布流程 **开源到 GitHub**:让更多人使用和贡献
总结
创建技能只需要 3 步:
**创建文件夹** → `mkdir skills/weather-query` **写 SKILL.md** → 告诉 AI 什么时候用、怎么用 **写执行脚本** → Python/Shell 实现具体功能
**今天就开始:**
试着创建一个查询快递、翻译文本、或者提醒日程的技能 从简单开始,逐步完善
**👇 互动时间**
你想创建一个什么技能?在评论区分享你的想法,我可以帮你设计 SKILL.md!
*本文使用 OpenClaw + skill-creator 技能辅助创作*
**关注「私享斋」,获取更多科技技能实操干货 👆**
**觉得有用?点个「在看」让更多人看到 👀**
夜雨聆风