技能枢纽联盟
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_2a52e6b3/skill-hub-united。
技能介绍
你在解决什么问题
Agent 的技能散落在多个 Hub 上,安装路径各不相同:clawhub.ai 走 REST,skills.sh 靠 npx skills,skillhub.cn 是另一套 REST,Anthropic 官方仓库还得 git clone + sparse-checkout,自建 Hub 更各自为政。于是你要么记住每个 Hub 的 CLI,要么手动下载 zip 再解压到正确目录。
skill-hub-united 把这五类来源收敛进一个安装脚本,代价是它不负责跨源检索和自动回退——它假设你已经知道自己要用哪个 Hub。
核心机制
Source routing 是整个技能的入口逻辑。它按用户措辞里出现的关键词决定 --source:默认 clawhub;出现 skillhub.cn / 国内 hub / 腾讯 skillhub 走 skillhub_cn;skills.sh / open skills 走 skills_sh;anthropic / claude official 走 anthropic;my hub / private hub 走 custom。如果一句话里提到多个源或表述含糊,脚本会先反问,而不是猜。
结构化退出码把决策权交回调用方。安装流程拆解为四个阶段:解析输入并判定 source、调用脚本、根据退出码分支处理、最后汇报安装目录和来源。退出码 0/1 是常规成败;2 表示本地已有同名技能,脚本会输出建议的重命名并同步更新 SKILL.md frontmatter,避免二次冲突;3 触发 Anthropic 许可证限制,需要逐字复述脚本提示让用户确认;4 是 skills.sh 仓库里有多个技能,先展示列表让用户选;5 表示选了 custom 但没配环境变量。
自定义 Hub 只要求一个契约:任意 GET / 端点返回 zip。配置一次 SKILL_HUB_CUSTOM_URL 即可,未设置时脚本直接退出,不发网络请求。
值得注意的边界
skills.sh的 slug 必须是org/repo或org/repo#skill格式,裸词会被拒绝——GitHub 源没有猜测余地。- Anthropic 源里
docx/xlsx/pdf/pptx等属于 source-available,默认拒绝安装,只有显式加--force-license才放行;其他子目录是 Apache 2.0,自由使用。 - 不跨源自动回退:某个 Hub 上找不到就是找不到,脚本会明确报错,不会偷偷切到另一个源。
- 解压时会校验 zip/tar 内部路径,拒绝路径穿越攻击;slug 里的
..、绝对路径、特殊字符在入口就被拦截。
安装目录按 SKILL_HUB_SKILLS_DIR → OPENCLAW_SKILLS_DIR → 标准目录链的顺序解析,非标准路径需要自己显式设置。
使用场景
- 需要按用户措辞自动选择 clawhub、skillhub.cn、skills.sh 或 Anthropic 官方源来安装技能
- 在公司内网维护私有技能仓库,希望用 custom source 从自建 Hub 的 GET / 端点安装 zip
- 使用 skills.sh 安装技能,需要区分 org/repo 与 org/repo#skill 的安装粒度
- 从 Anthropic 官方仓库安装时,需要处理 source-available 技能的许可证确认与强制安装流程
适合人员
- 构建 AI Agent 工作流、需要统一安装多来源技能的工程师
- 维护企业私有技能仓库、希望用自定义 Hub 分发技能的平台开发者
- 需要从多个公共 Hub 拉取技能并处理命名冲突与许可证限制的集成人员