📌 核心摘要:OpenClaw 原生功能有限,但通过技能可以无限扩展。本文从零开始教你开发并发布第一个 ClawHub 技能,包含3 个可复用的技能模板(天气查询、待办管理、GitHub 监控),读完就能动手实践。
"ClawHub 已有 3000+ 技能,但高质量模板依然稀缺。"—— ClawHub 官方数据
上周我们分析了 OpenClaw 创始人的方法论,很多读者问:"知道了 Peter 的思维,但具体怎么开始?"
今天这篇就是答案。不讲大道理,只讲实操——从 SKILL.md 结构到 clawhub 发布命令,每一步都有截图和代码。
📚 读完本文你将获得
✅ 完整的技能开发流程(环境搭建 → 编写 → 测试 → 发布)
✅ 3 个可复用的技能模板(直接 fork 修改)
✅ 发布避坑指南(审核被拒的常见原因)
✅ 技能运营建议(如何让更多人使用你的技能)
准备好了吗?让我们开始~ 🚀
01 前置准备:5 分钟搭建开发环境
✅ 必要条件检查清单
☐ Node.js 18+ 已安装(node -v 验证)
☐ GitHub 账号已注册(需满 1 周才能发布)
☐ OpenClaw 工作区已配置
☐ 文本编辑器(VS Code / Sublime / 任意)
Step 1: 安装 ClawHub CLI
# 全局安装 clawhub
npm i -g clawhub
# 浏览器登录
clawhub login
# 验证登录状态
clawhub whoami
⚠️ 注意:首次登录会打开浏览器授权,确保使用与 GitHub 关联的账号。
Step 2: 创建工作区目录
my-openclaw-workspace/
├── skills/ # 技能存放目录
├── .clawhub/ # CLI 配置
└── .openclaw/ # OpenClaw 配置
mkdir -p my-openclaw-workspace/skills
cd my-openclaw-workspace
02 SKILL.md 深度解析:技能的核心文件
SKILL.md 是技能的"身份证",ClawHub 通过它理解你的技能是什么、能做什么。
📄 SKILL.md 完整结构
--- name: weather-check version: 1.0.0 description: 查询任意城市当前天气和空气质量 tags: [weather, api, utility, daily] requirements: - node >= 18 - npm packages: axios --- # Weather Check Skill ## 功能描述 调用 wttr.in API 返回指定城市的当前天气,包括: - 温度、湿度、风速 - 天气状况(晴/雨/雪等) - 空气质量指数(可选) ## 使用方法 /weather 北京 /weather Shanghai ## 配置变量 - WTTR_LANG: 选填,语言设置(默认 zh-cn) - INCLUDE_AQI: 选填,是否包含空气质量(默认 false) ## 示例 用户:/weather 北京 助手:北京当前天气:晴,温度 25°C,湿度 45%...📊 YAML Frontmatter 字段详解
💡 最佳实践
命名规范:小写 + 连字符,避免下划线(weather-check ✅,weather_check ❌)
描述优化:包含用户可能搜索的自然语言(不仅写"天气查询",还写"今天会下雨吗")
标签策略:2-5 个标签,包含 1 个宽泛分类 + 具体场景(["utility", "weather", "daily"])
03 实战:3 个渐进式技能模板从入门到高级
我们准备了 3 个模板,难度递进。建议从模板 1 开始,熟悉后再挑战后面的。
天气查询技能(入门级)
🎯 功能
调用 wttr.in API 返回指定城市的当前天气
📚 学习点
• 基础 SKILL.md 结构
• API 调用方法
• 环境变量使用
# 创建技能目录
mkdir -p skills/weather-check
# 编写 SKILL.md(内容见上方示例)
cd skills/weather-check
# 测试技能
openclaw --workdir .
💡 提示:wttr.in 是免费 API,无需密钥。测试命令:curl wttr.in/北京
待办事项管理(进阶级)
🎯 功能
本地文件存储待办,支持增删改查
📚 学习点
• 文件操作(读写 JSON)
• 状态管理
• 命令解析
📋 支持命令
/todo add "买牛奶"
/todo list
/todo complete 1
/todo delete 1
💡 提示:数据存储在用户工作区的 .openclaw/todos.json,注意路径权限。
GitHub 仓库监控(高级)
🎯 功能
监控 repo star 变化,超阈值自动通知
📚 学习点
• 定时任务(Heartbeat)
• API 认证(GitHub Token)
• 条件触发与通知
--- name: github-watcher version: 1.0.0 description: 监控 GitHub 仓库 Star 变化,超阈值通知 tags: [github, monitoring, notification, developer] requirements: - GITHUB_TOKEN 环境变量 - node >= 18 --- # GitHub Watcher ## 配置 - REPO: 必填,仓库地址(如:openclaw/openclaw) - THRESHOLD: 必填,通知阈值(如:100) - GITHUB_TOKEN: 必填,GitHub Personal Access Token ## 使用 /github-watch start /github-watch status /github-watch stop⚠️ 安全提示:GITHUB_TOKEN 不要硬编码在 SKILL.md 中,使用环境变量或 OpenClaw 的 secrets 管理。
04 发布到 ClawHub:让全世界使用你的技能
✅ 发布前检查清单
☐ SKILL.md 元数据完整(name/version/description/tags)
☐ 本地测试通过(所有命令能正常执行)
☐ 无敏感信息(API Key、密码等)
☐ README 清晰(使用说明、配置变量、示例)
☐ 版本号符合语义化(1.0.0 格式)
📤 首次发布流程
clawhub publish ./skills/weather-check \
--slug weather-check \
--name "Weather Check" \
--version 1.0.0 \
--changelog "Initial release" \
--tags latest,weather,utility
✅ 发布成功输出:✓ Skill published successfully!✓ Slug: weather-check✓ Version: 1.0.0✓ URL: https://claw-hub.net/skills/weather-check
🔄 版本管理与更新
# 查看已发布版本
clawhub list
# 更新版本
clawhub publish ./skills/weather-check \
--version 1.1.0 \
--changelog "Added humidity display"
# 批量同步(多技能场景)
clawhub sync --all --bump patch \
--changelog "Bug fixes"
📈 发布后的运营建议
1. 监控下载量:ClawHub 后台查看技能使用数据
2. 收集反馈:及时回复评论,修复报告的问题
3. 版本迭代:根据用户需求定期更新(建议每月 1 次小版本)
4. 推广策略:Twitter/Discord/技术社区分享,写使用教程
05 常见问题与排错指南避坑必看
Q1: 发布失败"Account too new"
解决:GitHub 账号需满 1 周才能发布技能。先用旧账号或等待一周后再试。这是防滥用机制。
Q2: 技能安装后不生效
排查步骤:1. 检查 skills 目录路径是否正确2. 重启 OpenClaw 会话(openclaw restart)3. 查看日志报错(tail -f ~/.openclaw/logs/session.log)
Q3: 搜索不到自己的技能
原因:向量索引有延迟,约 5-10 分钟。解决:等待后重试,或用精确 slug 安装(clawhub install weather-check)
Q4: 如何调试技能执行?
方法:export OPENCLAW_DEBUG=1tail -f ~/.openclaw/logs/session.log查看详细执行日志,定位问题。
Q5: 技能审核被拒,常见原因?
常见原因:• 描述模糊或不完整• 缺少必要标签• 包含敏感信息(API Key 等)• 本地测试未通过• 与现有技能重名
06 进阶技巧:让技能更好用
🔍 向量搜索优化
ClawHub 使用向量搜索,描述中包含用户可能搜索的自然语言能提高被发现概率。
示例:天气技能不仅写"天气查询",还写"今天会下雨吗""出门需要带伞吗""北京上海天气"
🔗 技能组合使用
技能间可以通过文件或环境变量通信,实现复杂工作流。
示例:天气技能 + 提醒技能 = 雨天自动提醒带伞
⚡ 性能优化
• 避免频繁 API 调用:加缓存(如天气数据缓存 30 分钟)
• 大文件操作分块处理:避免一次性读取大文件
• 超时设置合理:API 调用设置 5-10 秒超时
🔒 安全最佳实践
• 不硬编码密钥:使用环境变量或 OpenClaw secrets
• 验证用户输入:防止命令注入
• 限制文件操作范围:只访问工作区内的文件
• 提供漏洞报告渠道:在 SKILL.md 中留下联系方式
写在最后
🎯 核心收获
1. 技能开发门槛低
只需 Markdown + 基础脚本,无需复杂框架
2. 生态价值大
每个技能都可能帮助成千上万用户
3. 成长路径清晰
从模仿模板 → 修改优化 → 原创技能
下一步行动
📝 今天就开始:
1. Fork 本文提供的 3 个模板
2. 修改一个满足自己需求
3. 发布到 ClawHub
📚 相关资源
🔗 OpenClaw 官方文档
🔗 ClawHub 技能市场
🔗 OpenClaw Discord 社区
💬 互动话题
你在技能开发中遇到了什么问题?或者已经发布了什么技能?在评论区分享👇
📌 系列文章
上一篇:
《OpenClaw 创始人 3 天 15K Star:从 Peter 身上能学到什么?》
下一篇:
评论区可以告诉我你想要了解哪些内容
本文基于 OpenClaw v2026.3.2 编写
技能模板代码:GitHub @openclaw/skill-templates
© 2026 智物纪 | 专注探索美好、分享技能
夜雨聆风