乐于分享
好东西不私藏

2026实测|OpenClaw Skill 自制指南:零代码,10分钟拥有专属AI技能

2026实测|OpenClaw Skill 自制指南:零代码,10分钟拥有专属AI技能

 OpenClaw 时,你是否也遇到过这样的困扰:ClawHub 上的 Skill 要么不合需求,要么功能冗余,想找个贴合自己使用习惯的技能比登天?

其实不用死等别人更新,你自己就能轻松制作——全程零代码、无门槛,哪怕不懂API、不会写程序,只要会简单编辑文本,10分钟就能做出第一个专属 Skill

很多人对「自制Skill」有误解,觉得它是程序员的专属,实则不然:OpenClaw  Skill 本质就是一份「AI 操作指南」,核心只有一个 SKILL.md 文件,写清什么时候用、怎么做、出什么结果AI 就能精准执行。

这篇教程全程实测,从基础认知到实战操作,再到调试发布,一步步带新手吃透 Skill 自制全流程,还有避坑技巧和真实案例,看完就能上手,建议收藏备用 ✅

一、先搞懂:Skill 不是插件,是「AI 操作说明书」

很多人第一次接触 Skill,会误以为它是类似浏览器插件的东西——安装完要在后台跑运行时,其实完全不是。

Skill 更像是给 OpenClaw AI 量身定制的「说明书」:你在 SKILL.md 里写清楚 3 件事,AI 就能精准执行:

什么时候用这个技能(触发条件)

用的时候按什么步骤走(工作流程)

最后输出什么格式(结果要求)

举个我自己在用的真实例子:

我给博客做了一个trend-scout Skill,作用是定期扫描 V2EXHacker NewsGitHub Trending、少数派、小众软件,自动找出适合写成文章的热门话题。

它没有「后台服务」,也不用复杂安装,就是一个普通文件夹,里面放了说明文档和几个辅助脚本。OpenClaw 启动时会自动扫描这个文件夹,注册这个 Skill,之后 AI 就知道自己有这个「能力」了。

二、文件结构:最小只需要 1 个文件

不用纠结复杂的目录,OpenClaw  Skill 的结构要求极简单,分两种情况,按需选择即可:

1. 极简版(新手首选)

只需要一个文件夹 + 一个 SKILL.md 文件,就能正常运行:

bash~/.openclaw/workspace/skills/   └── my-skill/你的 Skill 文件夹(名字可自定义)└── SKILL.md核心文件,写清操作说明

2. 完整版(带脚本/参考资料)

如果需要批量操作(比如批量拉取多个平台数据),可以加脚本和参考资料,结构如下(以我的 trend-scout 为例):

bash~/.openclaw/workspace/skills/   └── trend-scout/# Skill 主文件夹├── SKILL.md核心:技能说明+工作流程├── scripts/辅助脚本文件夹(可选)└── scan-trends.sh批量拉取数据的脚本└── references/参考资料文件夹(可选)└── sources.md信息源列表、过滤规则等

关键提醒

Skill  文件夹要放在默认路径:~/.openclaw/workspace/skills/OpenClaw 启动时会自动扫描这个目录,不用手动配置,放进去就生效

三、核心重点:SKILL.md 怎么写?(个部分搞定)

SKILL.md  Skill 的灵魂,不管是极简版还是完整版,都要包含这 3 个部分,按模板写,不用自己瞎琢磨。

第一部分:frontmatter(必须有,AI 识别关键)

这是 Skill 的「身份卡」,用 3 条横线包裹,里面写清楚 Skill 的名称、用途,重点是明确适用场景和不适用场景

模板(以 trend-scout 为例):

markdown   name: trend-scout# Skill 名称(自定义,唯一即可)   description: >扫描 V2EXHacker NewsGitHub Trending、少数派、小众软件,发现适合博客的选题方向。Use when: 用户要找新选题,或每 2 天定期触发。适用场景NOT for: 分析已有流量数据(那个用 GSC/Bing 工具直接查)。不适用场景   —

重点强调:description  AI 判断「要不要用这个 Skill」的关键,一定要写清楚「适合什么」和「不适合什么」。后者很容易被忽略,但能避免AI 误触发(比如我之前没写NOT forAI总在我问流量数据时跑这个Skill)。

第二部分:触发条件(When to Run

用自然语言写就行,不用代码,告诉 AI 「什么时候该启动这个 Skill」,比如定期触发、用户主动提问等。

示例(trend-scout):

markdown##   When to Run   –  2 天通过 heartbeat    cron 触发   – 用户主动问「有什么可以写的选题」   – 现有关键词数据感觉重复、没新意的时候

第三部分:工作流程(Workflow,核心中的核心)

这是 AI 执行的步骤,写得越具体,AI 执行得越准。别写「拉数据、过滤、输出」这种模糊的话,直接写「跑哪个脚本」「用什么命令」「遇到问题怎么兜底」。

示例(trend-scout):

markdown##   Workflow   1.  `references/sources.md` 了解信息源列表   2.  `scripts/scan-trends.sh` 拉取 V2EXHNGitHub、少数派、小众软件的数据   3. 对于被 Cloudflare 拦截的来源(Linux.doReddit),用 web_search 代替:– `web_search “site:linux.do 热门“`   4. 对照博客受众过滤(见下方 Filtering 部分)   5. 输出排名选题列表   ## Filtering Criteria(过滤规则,可选)匹配条件:   – 受众:国内技术用户,关注 VPS/服务器、AI 工具、白嫖资源、支付工具   – 排除:企业 SaaS、纯代码教程、没有实操价值的新闻   – 优先:有免费版的工具、可自托管项目、需要中文教程的内容

四、进阶:带脚本的 Skill(可选,提升效率)

纯文字说明适合简单操作,但如果需要批量做某件事(比如批量拉取 5 个平台的 API),每次让 AI 手写命令太慢,还容易出错,这时候加个辅助脚本就很方便。

脚本的作用很简单:帮 AI 完成重复操作,输出统一格式的结果,AI 只需要调用脚本,再读取结果即可。

真实脚本示例(scan-trends.sh

我的 trend-scout 里,脚本主要做一件事:依次请求 V2EXHacker News 等平台,把结果存成 JSON 文件,方便 AI 后续分析。关键片段如下(可直接复制修改):

bash#!/bin/bash   OUTPUT_DIR=”${1:-/tmp/trend-scout}”   mkdir -p “$OUTPUT_DIR”   # V2EX 热门话题(公开 API,无需认证)   curl -s “https://www.v2ex.com/api/topics/hot.json” | python3 -c   “   import json, sys   data = json.load(sys.stdin)   results = []   for t in data[:10]:results.append({‘title’: t.get(‘title’,”),‘node’:   t.get(‘node’,{}).get(‘title’,”),‘replies’: t.get(‘replies’, 0)})   print(json.dumps(results, ensure_ascii=False, indent=2))   ” > “$OUTPUT_DIR/v2ex.json”   # Hacker NewsFirebase 实时数据库,稳定好用)   curl -s “https://hacker-news.firebaseio.com/v0/topstories.json” |   python3 -c “   import json, sys, urllib.request   ids = json.load(sys.stdin)[:10]   results = []   for id in ids:resp =   urllib.request.urlopen(f’https://hacker-news.firebaseio.com/v0/item/{id}.json’)item = json.loads(resp.read())if item and item.get(‘type’) ==   ‘story’:results.append({‘title’:   item.get(‘title’,”), ‘score’: item.get(‘score’,0)})   print(json.dumps(results, ensure_ascii=False, indent=2))   ” > “$OUTPUT_DIR/hn.json”

脚本使用注意

脚本放在scripts/文件夹下,在 Workflow 里直接引用路径即可(比如scripts/scan-trends.sh 拉取数据),AI 会自动执行。

脚本写完后,先手动跑一遍,确认能正常输出结果(比如我之前踩坑,正则表达式写错,导致脚本跑不起来)。

如果脚本里用了 python3,要确认服务器上已经安装。

五、实战:10 分钟做出第一个 Skill(新手必看)

光看理论可能有点晕,我们用一个极简需求,从零开始做一个 Skill,全程不超过 10 分钟,新手也能跟着操作。

需求

每天早上自动生成一份简报,包含上海天气和 V2EX 热帖前 5 条,推送到 Telegram

步骤 1:创建文件夹和文件

打开终端,执行两条命令,创建 Skill 文件夹和核心文件:

bashmkdir   -p ~/.openclaw/workspace/skills/daily-brief   touch ~/.openclaw/workspace/skills/daily-brief/SKILL.md

步骤 2:编写 SKILL.md(复制粘贴即可)

markdown   name: daily-brief   description: >每天早上生成简报:上海天气 + V2EX 热帖前 5 条。Use when: 用户说生成今日简报,或 cron 在早上   8 点触发。NOT for: 详细的天气预报或深度新闻分析。   —   # Daily Brief   ## When to Run   – 每天 8:00 AM 通过 cron 触发   – 用户主动说「给我今天的简报」「今天有什么热点」   ## Workflow   1. 拉取上海天气:`curl   “https://wttr.in/Shanghai?format=3″`   2. 拉取 V2EX 热帖前 5 条:`curl   https://www.v2ex.com/api/topics/hot.json` title  node.title 字段   3. 整合输出以下格式,推送 Telegram   ## Output Format(输出格式,固定模板)   📅 {今天日期}   🌤 天气:{wttr.in 返回结果}   🔥 V2EX 今日热帖:   1. {标题}{节点}   2. …(共 5 条)

步骤 3:重启 gateway,让 Skill 生效

终端执行命令,重启 OpenClaw 网关,新 Skill 就会被自动注册:

bashopenclaw   gateway restart

步骤 4:测试效果

 Telegram 里对 OpenClaw 说「给我今天的简报」,AI 就会按 Workflow 里的步骤,拉取天气、拉取热帖,然后按你指定的格式推送给你。

如果想让它每天自动跑,加一个 cron 定时任务(终端执行):

bashopenclaw   cron add \–name “早间简报” \–cron “0 8 * * *” \–tz “Asia/Shanghai” \–session main \–message “生成今日简报并推送

至此,你的第一个 Skill 就完成了,全程没写一行逻辑代码,耗时不超过 10 分钟!

六、调试:Skill 没触发?个常见问题排查

写完 Skill 发现 AI 不用,或者用错了,大概率是以下 4 个问题,逐一排查就能解决:

1. description 写得太模糊

AI 判断要不要用 Skill,全靠 description。如果写「处理各种任务」这种宽泛的话,AI 会不知道该不该用,直接跳过。

解决:改成「When to Run + NOT for」的明确格式,比如前面的 daily-brief 示例。

2. 文件夹结构不对

SKILL.md 必须直接放在 skills 子目录下,不能再嵌套一层(比如 skills/daily-brief/src/SKILL.md 就是错的)。

正确结构:skills/你的 Skill 文件夹/SKILL.md

3. 改完没重启 gateway

OpenClaw 只在启动时扫描 skills 目录,改完 SKILL.md 或新增 Skill 后,必须重启网关才能生效:

bashopenclaw   gateway restart

4. 脚本没有执行权限

如果 Skill 带了 shell 脚本,AI 会无法执行,需要给脚本添加执行权限:

bashchmod   +x ~/.openclaw/workspace/skills/你的 Skill 文件夹/scripts/*.sh

小技巧:调试时可以直接在 OpenClaw 对话里说「用 XX Skill 执行XX操作」(比如「用 daily-brief Skill 生成简报」),强制指定 Skill,快速排查哪一步出问题。

七、发布到 ClawHub:让别人也能用你的 Skill

写好的 Skill 如果觉得有用,可以发布到 ClawHub,让其他 OpenClaw 用户也能安装使用,用 clawhub CLI 工具,几条命令就能搞定。

步骤 1:安装 clawhub CLI(如果没装过)

bashnpm   install -g clawhub

步骤 2:初始化发布配置

进入你的 Skill 文件夹,执行初始化命令:

bashcd   ~/.openclaw/workspace/skills/daily-brief   clawhub init

执行后会提示你填写几个信息:Skill 名称、简介、版本号、分类,填完会自动生成一个clawhub.json文件。

步骤 3:登录并发布

bashclawhub   login GitHub 账号授权登录   clawhub publish发布 Skill

发布注意事项

发布成功后,别人可以用npx clawhub install 你的 Skill 名称安装。

ClawHub 会对 Skill 做双重安全扫描(VirusTotal + OpenClaw),扫描通过后会显示绿色安全标记。

发布前一定要检查 SKILL.md,不要有硬编码的个人信息(比如 API Key、服务器 IP),可以替换成占位符或从环境变量读取。

八、写 Skill  4 个实用技巧(避坑总结)

结合我自己写 trend-scout  daily-brief 的经验,总结了 4 个技巧,能让你的 Skill 更易用、少踩坑:

1. 流程步骤写命令,不写意图

「搜索相关资料」不如「用 web_search 搜索 ‘{关键词} site:github.com’」,前者 AI 会自由发挥,后者能让 AI 精准执行,减少误差。

2. 一定要加 NOT for

明确 Skill 的边界,避免 AI 在不该用的时候误触发,这是很多新手容易忽略的点。

3. Output Format 单独写一节

如果需要固定格式输出(比如推送到 Telegram、生成表格),把格式模板明确写出来,连 emoji 都可以指定,AI 会严格按模板输出。

4. 辅助文件放 references/

不要把大段参考内容(比如 100 行的信息源列表)直接堆在 SKILL.md 里,放到 references/ 子目录,在 Workflow 里引用路径即可,既能保持 SKILL.md 简洁,也能让 AI 读取更快。

最后总结

其实 OpenClaw  Skill 真的没有门槛,核心就是「把流程写清楚」——不用懂代码,不用学 API,会写 Markdown,能理清步骤,就能做出自己想要的功能。

我自己的 trend-scoutSkill,从构思到写完测试,也就花了半小时;而前面的daily-brief10分钟就能搞定。

如果你也做出来了有意思的 Skill,欢迎在评论区分享,或者发布到 ClawHub,让更多人用上~

💡 收藏这篇教程,下次想写 Skill 时,直接对照步骤来,不用再踩坑啦!

欢迎关注本账号,我们还会持续分享更多AI咨询、AI工具、实战经验、踩坑记录,助力你高效玩转AI开发、避开行业弯路。

想了解更多细节、获取专属支持,可添加客服微信:xuexiv5876,随时咨询交流~

OpenClaw Skills 热门技能排行榜 Top 10
微信直连!腾讯QClaw重磅上线,OpenClaw平替一键本地部署
企业微信正式接入OpenClaw!3步无痛部署,打工人AI办公神器来了|附一步API强力加持
小龙虾接入QQ!官方直连超简单,只需2分钟,无云主机无公网IP
保姆级教程|OpenClaw 飞书机器人对接,新手也能10分钟上手
OpenClaw 超详细安装教程|用一步API,手把手打造专属AI员工