老周的工具笔记

老周的工具笔记

已发布 24 篇文章

第一次安装技能:ClawHub、Git、本地目录三条路,以及装完怎么验证它真的生效了

第一次安装技能:ClawHub、Git、本地目录三条路,以及装完怎么验证它真的生效了
第一次安装技能:ClawHub、Git、本地目录三条路,以及装完怎么验证它真的生效了

一、先说个场景

你已经装好了 OpenClaw,Gateway 跑起来了,聊天窗口也能收到回复。但光说”你好”没意义——你想让它查天气、读邮件、管理 GitHub 通知。于是你打开 ClawHub 主页,眼睛一亮:这里有成千上万个现成的 Skill。

问题接着就来了:哪些值得装?装到 workspace 和 --global 有什么区别?装完怎么看是不是真的生效?为什么有时候列表里明明有,agent 却像没看见一样?这篇文章把安装、验证、排障这三件事一次性讲清楚。

二、为什么是这样

OpenClaw 的技能可以从多个来源进入你的环境:

  • ClawHub 官方注册表:最大的公开来源,类似应用商店。
  • skills.sh 引用:外部 registry 的引用格式。
  • Git 仓库:直接从源码安装,适合自用或开发中的 skill。
  • 本地目录:你自己写的或别人传给你的目录。

不同来源的安装命令不一样,但装完后 OpenClaw 都会把它们放到某个 skill root 里。上篇文章我们讲过优先级:~/.openclaw/workspace/skills 优先级最高,只影响当前 agent;~/.openclaw/skills 是共享目录,--global 会把技能装到这里,所有本地 agent 都能看见。

弄清这一点,你就不会把”给 A 项目用的 skill”装成全局,也不会把应该全局共享的技能塞进某个 workspace。

优先级这件事,在排障时特别有用。假设你全局装了 weather,又在某个 workspace 里放了一份同名的自制 weather,那么当前项目里生效的一定是 workspace 这份,全局那份被它盖住,你却可能还以为在用全局的。想知道到底加载的是哪份,可以看 openclaw skills list 的输出,或 openclaw skills info <name> 的详细来源。养成”改了技能先确认来源”的习惯,能少踩很多”我明明改了怎么没变”的坑。

到底装全局还是装 workspace,可以用”使用范围”来判:如果一个技能你打算在多个项目、多个 agent 上都用,比如天气、搜索、邮件,就装全局,省得每处重装;如果它只服务于某一个项目的特定流程,比如某仓库的部署脚本,就装进那个 workspace,既不污染别的 agent,也方便随项目带走。判断不清时,默认先装 workspace——它更隔离、更好撤销,等确定”到处都要”再升到全局也不迟。

三、跟着做:分步操作

1. 筛选阶段:四个问题

安装之前先问自己:

  • 它解决的任务我每周至少做一次吗?
  • 作者可信吗?(ClawHub 有作者标识,社区高赞更稳)
  • 它要什么权限?只读优先于可写,越少越好。
  • 最近六个月有更新吗?太久没维护的 skill 可能跟不上 OpenClaw 版本。

2. 从 ClawHub 安装到 workspace

openclaw skills install @openclaw/weather

这是最常见的装法。执行后,skill 会出现在你当前 workspace 的 skills/ 目录下,只对当前 agent 生效。

3. 装到全局共享目录

openclaw skills install @openclaw/weather --global

加上 --global,技能会进 ~/.openclaw/skills,本机所有 agent 都能加载。适合基础能力:天气、搜索、邮件、日历。

4. 其他三种来源

# skills.sh 引用
openclaw skills install skills-sh:owner/repo/slug

# Git 仓库(SKILL.md 必须在仓库根)
openclaw skills install git:owner/repo@ref

# 本地目录
openclaw skills install ./path/to/skill --as my-tool

本地目录用 --as my-tool 可以重命名 slug,避免和已装的 skill 冲突。

5. 验证安装

openclaw skills list

新 skill 应该在列表里。如果没看到:

  • 开新会话:聊天里输入 /new。
  • 或重启 Gateway:openclaw gateway restart。
  • 检查是否有同名更高优先级的 skill 把它盖住了。

四、可以复制的指令

# 从 ClawHub 安装到 workspace
openclaw skills install @openclaw/weather

# 安装到全局共享目录
openclaw skills install @openclaw/weather --global

# 从 Git 仓库安装
openclaw skills install git:owner/repo@main

# 本地目录安装并改名
openclaw skills install ./my-skill --as my-tool

# 查看已安装技能
openclaw skills list

# 重启 Gateway 刷新技能快照
openclaw gateway restart

五、实战案例

你是一名开发者,想把 GitHub 通知、todo 追踪、邮件摘要和天气查询都装上。

推荐做法:

  1. GitHub、Web Search、weather 是通用能力,装 --global。
  2. todo-tracker、remind-me 这类偏向个人工作流的,也装 --global,因为多个 agent 都会用。
  3. 某个项目专用的 skill,比如 my-project-deploy,只装在对应 workspace 的 skills/ 里。

执行顺序:

openclaw skills install @openclaw/github --global
openclaw skills install @openclaw/weather --global
openclaw skills install @openclaw/todo-tracker --global
openclaw skills install @openclaw/gmail --global

装完后运行 openclaw skills list,确认这四个都在。然后说一句”我今天有哪些 GitHub 通知?”,看它能不能正确调用。

六、常见误区

  • 误区 1:装了就立刻能用。有时需要 /new 或重启 Gateway。OpenClaw 默认 watch 技能目录,但如果 watcher 被关闭或你继续了旧会话,就需要手动刷新。
  • 误区 2:--global 就是所有机器都能用。它只是本机的全局共享目录,不是云端同步。换电脑还要重新装。
  • 误区 3:Git 和本地装的 skill 用 update --all 就能更新。openclaw skills update --all 只跟踪 ClawHub 安装的技能。Git 或本地来源需要重新 install。
  • 误区 4:slug 会自动和目录名一致。实际优先取 SKILL.md frontmatter 里的 name,没有才回退到目录名或仓库名。--as 可以覆盖。
  • 误区 5:删 skill 只要 openclaw plugins disable。disable 只是不加载,文件还在。彻底删除要去对应的目录,比如 rm -rf ~/.openclaw/skills/<slug>,注意别删错。
  • 误区 6:安装即用等于安装即安全。技能是别人写的代码,OpenClaw 不会替你审查它的逻辑。哪怕它来自 ClawHub、哪怕社区高赞,启用前读一遍 SKILL.md 正文与脚本,确认没有把你的数据外发、没有偷偷执行危险命令,是底线动作。怀疑时就先别装,或只在隔离的 workspace 里试。

装技能这件事,说到底是在训练你自己的助手。你给它的每一个技能,都是教它一项新本事;你写的每一行 SKILL.md,都是在把你的习惯固化进去。所以别把它当成纯技术活——它也是你和助手之间一次次对齐预期的过程。

七、进阶玩法

禁用但不删除:在 openclaw.json 里配置 skills.entries.<key>.enabled: false。

{
  skills: {
    entries: {
      "some-skill": { enabled: false },
    },
  },
}

按 agent 授权:不同 agent 可以配不同的可见技能集。

{
  agents: {
    defaults: { skills: ["github", "weather"] },
    entries: {
      writer: { default: true },
      docs: { skills: ["docs-search"] },
    },
  },
}

注意这里的 agents.entries.*.skills 是替换,不是合并。

安装前校验:

openclaw skills verify @openclaw/weather

这条命令会查询 ClawHub 的信任信封。如果 ClawHub 标记校验失败,命令会非零退出,你就要警惕了。

技能库也是要”断舍离”的。装的时候一时爽,攒了几十个之后,列表里一半你可能半年没碰过,反而让 agent 更纠结”该调哪个”。建议每隔一阵回顾一次:哪些技能你真的每周在用,哪些只是尝鲜,哪些已经过时。用不上的就禁用或删除,保持库小而精。一个清爽的技能集,不仅加载快,也更不容易误触发、更便于排查问题。

技能装好不是终点。ClawHub 上的技能会修 bug、加功能、适配新版本,长期不更新就会慢慢掉队。建议你定个节奏:每月跑一次 update --all 与 sync --all,把本机技能对齐到最新;更新前先回想有没有为某个技能改过本地配置,避免更新把它覆盖。把”维护”当成技能库的一部分,你的 OpenClaw 才不会用着用着悄悄变旧、变怪。

删除技能同样要稳。先确认没有别的技能或配置依赖它,再动手;用配置禁用(enabled: false)是比直接删文件更温柔的第一步,它保留文件、方便后悔。真要彻底删除,去对应 skill root 目录删,注意别把同目录下的别的技能一起误删。把”增删”都当成有意识的动作,你的技能库才能长期保持干净、可控。

八、小结

安装 OpenClaw 技能就四条路:ClawHub、skills.sh、Git、本地目录。装完后用 openclaw skills list 验证,用 /new 或 openclaw gateway restart 刷新。workspace 级和 --global 级要按实际使用范围选,别把所有技能都堆到全局,也别把通用能力塞进单个 workspace。会装、会验、会删,你就能管理好自己的技能库。