Skip to content

如果你开发了多个 Copilot CLI 插件,可以用一个 marketplace.json 文件把它们组织成私有插件市场,放在 GitHub 仓库的 .github/plugin 目录下。团队成员用一条命令添加市场,就能浏览和安装你所有的插件。

GitHub Copilot CLI 自建插件市场:在团队内分发自定义插件

应用场景

  • 企业内部有多个定制插件,希望集中管理和分发
  • 开源项目希望提供配套的 Copilot CLI 插件生态
  • 团队想有自己的"内部市场",独立于官方市场

创建市场文件

在 GitHub 仓库的 .github/plugin/ 目录下创建 marketplace.json

json
{
  "name": "my-team-marketplace",
  "owner": {
    "name": "Your Team Name",
    "email": "devtools@example.com"
  },
  "metadata": {
    "description": "团队内部 Copilot CLI 插件集合",
    "version": "1.0.0"
  },
  "plugins": [
    {
      "name": "frontend-tools",
      "description": "React 开发工具包:组件生成、性能分析、测试辅助",
      "version": "2.1.0",
      "source": "./plugins/frontend-tools"
    },
    {
      "name": "security-audit",
      "description": "安全扫描和审计工具,检测常见安全漏洞",
      "version": "1.3.0",
      "source": "./plugins/security-audit"
    },
    {
      "name": "deploy-helper",
      "description": "标准化部署流程插件,支持 staging 和 production",
      "version": "1.0.0",
      "source": "./plugins/deploy-helper"
    }
  ]
}

仓库结构

your-plugins-repo/
├── .github/
│   └── plugin/
│       └── marketplace.json
└── plugins/
    ├── frontend-tools/
    │   ├── plugin.json
    │   └── ...
    ├── security-audit/
    │   ├── plugin.json
    │   └── ...
    └── deploy-helper/
        ├── plugin.json
        └── ...

团队成员如何使用

第一步:添加你的市场

bash
copilot plugin marketplace add your-org/your-plugins-repo

第二步:浏览可用插件

bash
copilot plugin marketplace browse my-team-marketplace

第三步:安装插件

bash
copilot plugin install frontend-tools@my-team-marketplace

查看所有已注册的市场

bash
copilot plugin marketplace list

插件 source 字段说明

source 字段支持两种格式:

  • 相对路径"./plugins/frontend-tools" — 相对于仓库根目录
  • GitHub 仓库"owner/repo" — 直接指向独立的插件仓库

插件目录中必须包含 plugin.json 文件。

维护建议

  1. 每次发布新版本时更新 marketplace.json 中对应插件的 version 字段
  2. 在仓库的 README 中说明如何添加这个市场
  3. 对于敏感的内部工具,设置仓库为私有(Private),只有有权限的账号才能安装

常见问题

Q: 私有仓库的市场,没权限的账号能访问吗?

A: 不能。copilot plugin marketplace add 使用的是当前登录的 GitHub 账号权限,如果对仓库没有读权限,添加市场会失败。

Q: 怎么更新市场中的插件版本?

A: 更新仓库中的插件文件,并更新 marketplace.json 中的 version 字段。用户通过 copilot plugin update PLUGIN-NAME 获取最新版本。

Q: 官方 marketplace.json 的字段还有哪些?

A: 完整字段规范参见 Copilot CLI 插件参考文档(copilot plugin [SUBCOMMAND] --help)。