← 返回 Skills 列表

GitHub Skill article

clawhub

OpenClaw 的技能 + 插件注册表

Skill 文章 2026-08-27
QUICK USE 快速使用
安装依赖 bun install
克隆仓库 git clone https://github.com/openclaw/clawhub.git

<p align="center"> <img src="public/clawd-logo.png" alt="ClawHub" width="120"> </p>

ClawHub 横幅

ClawHub

<p align="center"> <a href="https://github.com/openclaw/clawhub/actions/workflows/ci.yml?branch=main"><img src="https://img.shields.io/github/actions/workflow/status/openclaw/clawhub/ci.yml?branch=main&style=for-the-badge" alt="CI 状态"></a> <a href="https://discord.gg/clawd"><img src="https://img.shields.io/discord/1456350064065904867?label=Discord&logo=discord&logoColor=white&color=5865F2&style=for-the-badge" alt="Discord"></a> <a href="LICENSE"><img src="https://img.shields.io/badge/License-MIT-blue.svg?style=for-the-badge" alt="MIT 许可证"></a> </p>

ClawHub 是 OpenClaw 的公共技能注册表:用于发布、版本管理和搜索基于文本的智能体技能(一个 SKILL.md 及其支持文件)。 它专为快速浏览和 CLI 友好的 API 设计,并提供审核钩子和向量搜索功能。 它还提供原生的 OpenClaw 软件包目录,用于管理代码插件、捆绑插件以及实验性的完整智能体 Claw 软件包。

<p align="center"> <a href="https://clawhub.ai">ClawHub</a> · <a href="VISION.md">愿景</a> · <a href="docs/clawhub.md">文档</a> · <a href="CONTRIBUTING.md">参与贡献</a> · <a href="https://discord.gg/clawd">Discord</a> </p>

你可以用它做什么

  • 浏览技能并渲染其 SKILL.md
  • 使用变更日志和标签(包括 latest)发布新的技能版本。
  • 重命名自己拥有的技能,同时不影响旧链接或安装结果。
  • 将自己拥有的重复技能合并为一个规范 slug。
  • 通过嵌入(向量索引)进行搜索,而不是依赖脆弱的关键词。
  • 点赞和评论;管理员/版主可以整理和审核技能。
  • 固定本地技能安装,使更新和强制重新安装无法覆盖被冻结的副本。
  • 浏览带有家族/信任级别/能力元数据的 OpenClaw 软件包。
  • 通过 /packages API 和 CLI 流程发布原生代码插件和捆绑插件。
  • 为实验性的完整智能体 Claw 软件包托管、发现和解析精确的软件产物。

工作原理(概览)

  • Web 应用:TanStack Start(React、Vite/Nitro)。
  • 后端:Convex(数据库 + 文件存储 + HTTP actions)+ Convex Auth(GitHub OAuth)。
  • 搜索:OpenAI 嵌入(text-embedding-3-small)+ Convex 向量搜索。
  • API 架构 + 路由:packages/schemaclawhub-schema)。

CLI

常见 CLI 流程:

  • 身份验证:clawhub loginclawhub whoami
  • 远程/无头身份验证:clawhub login --device
  • 发现:clawhub search ...clawhub explore
  • 浏览统一目录(技能 + 插件):clawhub package exploreclawhub package inspect <name>
  • 管理本地安装:clawhub install @openclaw/democlawhub pin <skill>clawhub unpin <skill>clawhub uninstall <skill>clawhub listclawhub update --all
  • 检查但不安装:clawhub inspect @openclaw/demo
  • 发布技能:clawhub skill publish <path>
  • 发布插件:clawhub package publish <source>
  • 代码插件清单必须包含 openclaw.compat.pluginApiopenclaw.build.openclawVersion;最小示例请参阅 docs/cli.md
  • 规范化自己拥有的技能:clawhub skill rename <skill> <new-name>clawhub skill merge <source> <target>

文档:docs/quickstart.mddocs/cli.md

移除权限

  • clawhub uninstall <skill> 只会移除你机器上的本地安装。
  • 已上传的注册表技能使用软删除/恢复(clawhub delete <skill> / clawhub undelete <skill> 或对应的 API)。
  • 技能或软件包所有者、发布者所有者/管理员、版主和管理员均可执行软删除/恢复。
  • 软件包使用 clawhub package delete <name> / clawhub package undelete <name>
  • 硬删除仅限管理员执行(管理工具/封禁流程)。
  • 所有者重命名会将旧 slug 保留为重定向别名。
  • 所有者合并会隐藏源条目,并将旧 slug 重定向到规范目标。

遥测

当你以登录状态运行 clawhub install 时,ClawHub 会跟踪最少量的 安装遥测数据(用于计算安装次数)。 通过以下方式禁用:

export CLAWHUB_DISABLE_TELEMETRY=1

详情:docs/telemetry.md

仓库布局

  • src/ — TanStack Start 应用(路由、组件、样式)。
  • convex/ — 架构 + 查询/突变/actions + HTTP API 路由。
  • packages/schema/ — CLI 和应用共享的 API 类型/路由。
  • docs/ — 面向用户、发布者、API 客户端和部署运维人员的可发布 ClawHub 公共/运维文档。
  • specs/ — 产品规格、计划、回归说明和设计历史。
  • specs/spec.md — 产品 + 实现规格(维护者适合首先阅读)。

本地开发

前置条件:Bun(Convex 通过 bunx 运行,无需全局安装)。分离工作树路径还需要 Worktrunkwt)。

bun install
cp .env.local.example .env.local
# edit .env.local — see CONTRIBUTING.md for local Convex values

# terminal A: local Convex backend
bunx convex dev

# terminal B: web app (port 3000)
bun run dev

# detached/Codex worktree preview
bun run setup:worktree
bun run dev:worktree
wt --yes url

# seed local QA fixtures and the public corpus
bun run seed:dev

bun run seed:dev 会等待本地 Convex 部署,运行开发 fixture 初始化,并刷新全局统计信息。fixture 由 @local 所有,在 fixture 或架构发生更改后可以安全地重新运行。如需了解重置/手动命令和完整设置说明(环境变量、GitHub OAuth、JWT 密钥、数据库填充),请参阅 CONTRIBUTING.md。

环境

  • VITECONVEXURL:Convex 部署 URL(https://<deployment>.convex.cloud)。
  • VITECONVEXSITE_URL:Convex 站点 URL(https://<deployment>.convex.site)。
  • CONVEXSITEURL:与 VITECONVEXSITE_URL 相同(身份验证 + Cookie)。
  • SITE_URL:应用 URL(本地:http://localhost:3000)。
  • AUTHGITHUBID / AUTHGITHUBSECRET:GitHub OAuth 应用。
  • JWTPRIVATEKEY / JWKS:Convex Auth 密钥。
  • OPENAIAPIKEY:用于搜索 + 索引的嵌入。

Nix 插件(nixmode 技能)

ClawHub 可以在 SKILL frontmatter 中存储 nix-clawdbot 插件指针,以便注册表知道要安装哪个 Nix 软件包捆绑包。Nix 插件不同于常规技能包:它会将技能包、CLI 二进制文件及其配置标志/要求捆绑在一起。

将以下内容添加到 SKILL.md

---
name: peekaboo
description: Capture and automate macOS UI with the Peekaboo CLI.
metadata:
  {
    "clawdbot":
      {
        "nix":
          {
            "plugin": "github:clawdbot/nix-steipete-tools?dir=tools/peekaboo",
            "systems": ["aarch64-darwin"],
          },
      },
  }
---

通过 nix-clawdbot 安装:

programs.clawdbot.plugins = [
  { source = "github:clawdbot/nix-steipete-tools?dir=tools/peekaboo"; }
];

你还可以声明配置要求和示例片段:

---
name: padel
description: Check padel court availability and manage bookings via Playtomic.
metadata:
  {
    "clawdbot":
      {
        "config":
          {
            "requiredEnv": ["PADEL_AUTH_FILE"],
            "stateDirs": [".config/padel"],
            "example": "config = { env = { PADEL_AUTH_FILE = \\\"/run/agenix/padel-auth\\\"; }; };",
          },
      },
  }
---

要显示 CLI 帮助(Nix 插件推荐),请包含 cli --help 输出:

---
name: padel
description: Check padel court availability and manage bookings via Playtomic.
metadata: { "clawdbot": { "cliHelp": "padel --help\\nUsage: padel [command]\\n" } }
---

首选使用 metadata.clawdbot,但 metadata.clawdismetadata.openclaw 也可作为别名接受。

技能元数据

技能在 SKILL.md frontmatter 中声明其运行时要求(环境变量、二进制文件、安装规格)。ClawHub 的安全分析会根据技能的实际行为检查这些声明;中等程度的审核发现会保持可见,而可疑筛选仅用于高影响或恶意问题。

完整参考:docs/skill-format.md

快速示例:

---
name: my-skill
description: Does a thing with an API.
metadata:
  openclaw:
    requires:
      env:
        - MY_API_KEY
      bins:
        - curl
    primaryEnv: MY_API_KEY
---

脚本

bun run dev
bun run build
bun run test
bun run coverage
bun run lint