Agent Skills
返回列表
Playable 专家安装器

Playable 专家安装器

IT 运维与安全 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @playable/playable-expert-installer,把 Playable 专家安装技能加载到你的 AI 助手中。

技能介绍

要解决的问题

Playable 的专家包存放在内部 CNB 仓库 playable/workbuddy/playable-skill 的 experts/<slug>/ 下,本机的落盘位置却是 ~/.workbuddy/plugins/marketplaces/my-experts/plugins/<slug>/。手工安装意味着要自行处理鉴权、拉取归档、剥掉解压时的路径前缀,最后还要把包登记进 marketplace.json。前几步出错只是没装上,最后一步漏掉则包明明躺在目录里、专家中心却完全看不到,而且不会有任何报错。

这个技能把整条链路收进一次调用,并与同族的技能安装器保持相同的下载语义,只在落盘位置和是否注册上做出区分。

核心能力

  • 鉴权双通道:优先复用 CNB 连接器(cnb-api / cnb-woa)提供的归档读取能力,连接器自带凭证;无连接器时回退到本地登录态,读取 ~/.cnb/token 或环境变量 CNB_TOKEN。
  • 实时归档拉取:直接请求 https://api.cnb.cool/<repo>/-/git/archive/<ref>/<path>,由平台在请求时按需打包,仓库里不需要预生成 tarball。
  • 落盘加注册一步到位:解压后自动执行 register_expert.py,校验 plugin.json 完整性并写入 marketplace.json,专家立刻出现在「我的专家」。

执行流程

  1. 从语句中解析专家 slug,分支缺省为 main。
  2. 检测连接器可用性,命中则拉取归档字节并写入临时 .tgz。
  3. 无连接器时调用脚本走登录态回退路径。
  4. 校验 gzip 魔数 1f 8b,解压到临时目录后再移动 experts/<slug>/,避免多套一层目录。
  5. 注册并确认目标路径下的 plugin.json 已登记。

适用边界与注意点

  • 归档接口强制 Bearer:即使是公开仓库也必须携带 Authorization: Bearer,匿名请求拿不到内容。
  • 路径不存在返回 500 加 JSON,不是 404。必须先验 gzip 魔数再解压,否则会把错误响应当成归档写进磁盘。
  • 不要直接解压到插件目录:tar 包内保留 experts/ 前缀,一步到位的解压会产出 plugins/experts/<slug>。
  • cnb get-archive 不可用:它强制 Accept JSON,会把二进制内容吞掉。
  • 包内不要放密钥:访问内部 API 时走环境变量。
  • 本机无 Python 时,脚本会提示手动完成注册步骤。
  • 默认仓库可用 CNB_EXPERT_REPO、CNB_EXPERT_BRANCH、CNB_API_ENDPOINT、CNB_EXPERT_DIR 覆盖,便于指向其它仓库。

使用场景

  • 团队在 CNB 上新增了一名 agent 专家,需要把它装到本机并出现在「我的专家」里
  • 没有连接器时,希望用 cnb login 的本地登录态完成专家包下载与落盘
  • 解压归档时需要避免多套一层 experts/ 目录,并跳过路径不存在返回的 JSON 错误体
  • 需要把默认仓库指向其它 CNB 仓库,按自定义分支安装指定专家包

适合人员

  • 使用 WorkBuddy 的工程师,想把 CNB 上的专家包一键装到本机并立刻使用
  • 负责维护内部专家仓库的开发者,需要规范安装与注册流程避免路径错误
  • 管理多套 CNB 仓库的运维,需要按环境覆盖仓库地址和分支进行分发
  • 内部工具平台的贡献者,需要了解连接器鉴权与登录态回退的差异