跳转到内容

发布

发布 Clip 后,任何人都可以通过 pinix hub add @yourscope/name 安装它。

  • 一个可工作的 Clip(已用 pinix hub add local/... 在本地测试)
  • 已登录:pinix login(Registry 使用与 Hub 相同的认证)
  1. 验证你的身份

    Terminal window
    pinix registry whoami
    # → @yourscope
  2. 检查你的 clip.json

    确保包名与你的 scope 匹配:

    {
    "name": "@yourscope/my-clip",
    "version": "0.1.0",
    "description": "What this Clip does",
    "main": "src/index.ts"
    }
  3. 构建 Web UI(如适用)

    Terminal window
    cd web && bun run build && cd ..
  4. 发布

    Terminal window
    pinix registry publish .

    这会打包你的 Clip 目录,并上传到 Registry。

Registry 遵循 semver。要发布新版本:

  1. 更新 clip.json 中的 version
  2. 再次运行 pinix registry publish .
{
"name": "@yourscope/my-clip",
"version": "0.2.0"
}
  • 你只能发布到自己的 scope(@yourscope/
  • Scope 由你的登录身份决定
  • 其他用户使用以下命令安装:pinix hub add @yourscope/my-clip

Publishing 会把代码放入 Registry —— 用户下载并在自己的机器上运行这个 Clip。

Sharing(通过 Console 的 Sharing 功能)会把你的 Clip 的一个运行中实例暴露给其他用户。代码仍留在你的机器上;调用会通过 Cloud Hub 路由。

PublishingSharing
代码分发是(Registry)否(在你的机器上运行)
用户运行位置他们的机器你的机器(通过 Cloud Hub)
货币化不能直接货币化通过 Credit 按次定价
可见性Registry 搜索Marketplace(共享的 Clip)

发布命令会打包:

my-clip/
├── clip.json ✓ Always included
├── src/ ✓ Source code
├── package.json ✓ Dependencies
├── node_modules/ ✗ Excluded (installed on user's machine)
├── web/dist/ ✓ Built Web UI (if exists)
├── web/src/ ✗ Web source (excluded if dist/ exists)
└── .git/ ✗ Excluded

默认发布时版本会标记为 latest。你可以管理 dist-tag 来控制不同的发布通道:

Terminal window
# 查看包的所有 dist-tag
pinix registry dist-tag list @yourscope/my-clip
# 给指定版本设置 tag
pinix registry dist-tag add @yourscope/my-clip@0.2.0 beta
# 发布时指定 tag(不影响 latest)
pinix registry publish . --tag beta

用户安装时可以指定 tag:pinix hub add @yourscope/my-clip@beta

发布后,确认它可以访问:

Terminal window
# 搜索
pinix registry search my-clip
# 安装(在另一台机器上或删除本地后)
pinix hub add @yourscope/my-clip
# 查看安装后的 Clip 信息
pinix hub info my-clip