本集要做成

以 X-ray 为示例,把自己的 Skill 发布到 ClawHub,查看自动扫描结果,再从平台重新安装并完成最终复验。

GitHub 解决了“源码放在哪里”,但别人想安装你的 Skill 时,仍要先知道仓库地址、自己判断版本、再想办法放进正确目录。

这一集继续用 X-ray 作为示例,把最后一块拼图补上:将自己的 Skill 发布到 ClawHub,查看自动扫描结果,再从平台重新安装并完成最终验收。 名称、简介和版本号都可以换成你自己的内容。

  • 预计用时:25~35 分钟,安全扫描等待时间另算。
  • 需要准备:Node.js/npm、GitHub 账号、已经发布好的 X-ray 文件夹。
  • 成功标志:ClawHub 出现 @ppshux/x-ray 1.0.0;安装命令成功下载;新测试目录生成 xray-data.jsonxray-report.html
  • 今天不做:不修改 X-ray 功能,不运行测试项目代码。

所谓“发布到云端”,不是让 X-ray 在云上偷偷加班,而是把它变成一个可发现、可下载、可版本化的包。真正分析仓库的动作,仍发生在本地 Agent。

1. 先分清 GitHub、ClawHub 和本地 Agent

ClawHub 负责版本分发,本地 Agent 负责真正运行 Skill
  • GitHub:保存源码、README、许可证和提交历史。
  • ClawHub:保存可安装版本、公开页面、分类信息和自动扫描结果。
  • OpenClaw / CodeBuddy:把 Skill 安装到自己能读取的位置,并在本地项目中真正执行。

ClawHub 官方把自己定义为 OpenClaw Skills 与 Plugins 的公共注册表。发布使用 clawhub CLI;安装到 OpenClaw 则可以使用 openclaw skills install。完整说明可看ClawHub 官方概览快速开始

2. 安装 ClawHub CLI

CLI 是我们与 ClawHub 交互的命令行工具,后面的登录、发布、检查和安装都靠它完成。

ClawHub CLI 通过 npm 安装。没有 Node.js 时,先从 Node.js 官网安装 LTS 版本,再检查:

powershell可复制后修改
node --version
npm --version

能看到两个版本号后,在 PowerShell 执行和截图一致的命令:

powershell可复制后修改
npm i -g clawhub
clawhub --help
安装 ClawHub CLI 后用帮助命令确认可用

截图使用的 ClawHub CLI 是 v0.23.3。CLI 会继续更新,所以真正复现时,以你电脑上 clawhub --help官方 CLI 文档为准;但本篇实际用到的 loginskill publishinspect 与安装路径参数都仍在官方文档中。

看到什么算成功: 终端出现 ClawHub CLI 和命令列表,而不是“无法识别 clawhub”。

3. 登录 ClawHub

执行:

powershell可复制后修改
clawhub login
运行 clawhub login 后终端给出设备授权入口

终端会给出设备授权网址和一次性验证码。截图中已把验证码遮住;你只需要打开自己终端显示的网址,不要把真实验证码发给别人。

浏览器会进入授权页面,登录 GitHub 后点击授权:

在 ClawHub 页面完成 GitHub 设备授权

回到终端,继续执行:

powershell可复制后修改
clawhub whoami
授权完成后用 clawhub whoami 验证当前账号

能看到自己的 ClawHub 用户名,登录就完成了。截图里是 ppshux;你看到的应该是自己的账号。

4. 先 dry-run:彩排一遍,不真正上传

在本地 x-ray 根目录执行和截图一致的命令:

powershell可复制后修改
clawhub skill publish . --slug x-ray --name "X-ray" --categories development --topics "codebase,analysis,onboarding" --dry-run
正式发布前用 --dry-run 预览 x-ray 1.0.0

几个参数只需要记住大白话版本:

  • .:发布当前文件夹;
  • --slug x-ray:公开地址里的名字;
  • --name "X-ray":页面显示名;
  • --categories--topics:帮助别人搜索和筛选;
  • --dry-run:只预览,不上传。

终端出现 Would publish x-ray@1.0.0,说明包内容与元数据已经通过预检查。新 Skill 默认从 1.0.0 开始,后续内容变化通常自动增加补丁版本。

5. 正式发布

确认预览没问题后,删掉最后的 --dry-run

powershell可复制后修改
clawhub skill publish . --slug x-ray --name "X-ray" --categories development --topics "codebase,analysis,onboarding"
正式提交后 ClawHub 返回待安全扫描的发布结果

截图返回:

text可复制后修改
Update submitted for x-ray@1.0.0; pending security scans before it becomes public.

这句话的意思是“已经提交,正在等自动扫描”,还不是“全网可见”。别在终点线前两米就开始放礼花。

6. 检查版本和自动扫描

过一会儿执行:

powershell可复制后修改
clawhub inspect @ppshux/x-ray --versions

跟做时把 ppshux 换成自己的 ClawHub 用户名。

inspect 显示自动扫描结果为 CLEAN

实验截图显示:

text可复制后修改
Moderate CLEAN
scanner.llm.clean
No suspicious patterns detected.

准确说法是:ClawHub 对这个版本的自动扫描没有发现已知可疑模式。 它不是人工逐行审计,也不代表 Skill 永远绝对安全。安装陌生 Skill 前,仍然要看 SKILL.md、脚本、权限需求与来源。

还有一个许可证细节:我们的 GitHub 仓库选择了 MIT;ClawHub 官方文档说明,发布到 ClawHub 的 Skill 版本按 MIT-0 分发。两处页面显示不同并不是截图出错,但正式维护项目时最好在 README 中明确说明,避免读者猜。

7. 在 ClawHub 找到自己的 X-ray

打开 ClawHub,搜索 x-ray

在 ClawHub 搜索 x-ray 并找到公开条目

进入详情页,应该能看到作者、版本、说明、扫描状态与安装命令。

X-ray 的 ClawHub 页面展示版本、说明和安装命令

到这里,“发布闭环”已经完成:X-ray 不只是一份 GitHub 源码,还拥有一个可以被搜索和安装的版本页。

8. 换一个项目,准备最终复验

接下来验证安装和复用。你可以使用自己的公开项目,或者任何确认允许当前模型读取的仓库;KOF 只是截图里的测试样例。

为了和截图一致,可以在桌面新建 测试云端X-ray 文件夹。

新建测试云端X-ray文件夹,准备第三次独立验收

进入文件夹,执行和截图一致的 SSH 命令:

powershell可复制后修改
git clone git@github.com:ppshux/kof.git
克隆一个新项目,作为 ClawHub 路线的最终测试对象

没有配置 SSH Key 时用 HTTPS:

powershell可复制后修改
git clone https://github.com/ppshuX/kof.git

本次截图使用公开的 KOF 仓库,只是为了方便对照;和前两次一样,我们只读文件,不安装依赖、不启动游戏。

9. 从 ClawHub 安装 x-ray 1.0.0

这一步要证明的是:别人不需要知道你的本地文件夹,只凭平台上的包名就能把 Skill 下载回来。

ClawHub 页面给出的 OpenClaw 安装命令是:

powershell可复制后修改
openclaw skills install @ppshux/x-ray
从 ClawHub 页面复制 OpenClaw 安装命令

如果终端提示找不到 openclaw,按截图中的路线先安装:

powershell可复制后修改
npm install -g openclaw@latest
openclaw skills install @ppshux/x-ray
OpenClaw 从 ClawHub 下载 x-ray 1.0.0 并写入工作区

截图里可以看到三个关键结果:

text可复制后修改
Downloading x-ray@1.0.0 from ClawHub...
Installing to C:\Users\wenxiaolv\.openclaw\workspace\skills\x-ray...
Installed x-ray@1.0.0

这证明 ClawHub 上的 1.0.0 已经成功下载到 OpenClaw 工作区

用 CodeBuddy 复现时,多补一个“目标目录”动作

OpenClaw 与 CodeBuddy 默认读取的 Skill 目录不同。为了确保下一步 CodeBuddy 用到的就是 ClawHub 下载版本,可以再执行:

powershell可复制后修改
clawhub --workdir "$env:USERPROFILE" --dir ".codebuddy/skills" install @ppshux/x-ray

官方 CLI 的目录规则是 <workdir>/<dir>/<slug>,所以上面会安装到:

text可复制后修改
C:\Users\你的用户名\.codebuddy\skills\x-ray

如果该目录已有旧版,先备份或移走旧文件夹,再安装并重启 CodeBuddy。这样就不会出现“ClawHub 确实装了,但 CodeBuddy 其实还在调用旧副本”的证据空档。

10. 在 CodeBuddy 中再次调用 /x-ray

用 CodeBuddy 打开 测试云端X-ray,输入:

text可复制后修改
/x-ray
回到 CodeBuddy 再次执行 /x-ray

看到命令可用,只证明 CodeBuddy 已识别 X-ray;真正的验收仍然是新的 JSON 与 HTML。

等待扫描结束后,打开新项目的报告顶部:

新项目生成第三份 X-ray 分析报告

这次报告识别出 248 个文件、64 个目录、Python 与 JavaScript,并给出 4.5/10 的复杂度。

继续往下看项目结构和复杂度分布:

第三份报告展示项目结构与复杂度分布

最后检查关键文件、适合人群和推荐阅读顺序:

第三份报告给出关键文件、适合人群与推荐阅读顺序

下集通关: X-ray 已发布到 ClawHub,1.0.0 能被下载;在目标 Agent 的 Skill 目录安装后,新项目又生成了一份独立报告。

11. 三个常见问题

  • `clawhub` 不是命令:重新执行 npm i -g clawhub,再运行 clawhub --help;如果仍失败,检查 npm 全局命令目录是否进入 PATH。
  • 发布后搜不到:先看终端是否还在 pending security scans,稍等后用 clawhub inspect @你的用户名/x-ray --versions 检查。
  • 安装成功但 CodeBuddy 没有 `/x-ray`:确认安装目标是 %USERPROFILE%\.codebuddy\skills\x-ray,而不是只有 .openclaw\workspace\skills\x-ray,然后彻底重启 CodeBuddy。

12. 收尾:从一个想法,到可复用数字资产

三部曲通关:制作、GitHub 发布、ClawHub 分发全部闭环

三集下来,我们完成了三个闭环:

  1. 本地闭环:制作 X-ray,装进 Agent 工具并跑通第一次调用;
  2. GitHub 闭环:发布源码,从仓库重新安装并换项目复验;
  3. ClawHub 闭环:发布版本、查看自动扫描、从平台重新安装并完成最终验收。

更重要的是,你已经完整“抄”过一遍 Skill 的制作与发布流程。下次只需要换掉 SKILL.md 的目标、脚本、参考规则和资产模板,就能开始做自己的 Skill。

X-ray 的口号可以很酷:Understand any codebase in 5 minutes. 但这三集真正想交付的,不是宣传某个 Skill,而是让你亲手走完“制作 → 本地调用 → GitHub 管理 → ClawHub 分发”的全流程。

现在把 X-ray 换成你的想法,这套路线仍然成立:先从一个小而明确的任务开始,让它真的被调用一次,再考虑发布给别人。