创建与管理插件市场
编写 marketplace.json,固定插件来源,并区分目录刷新、插件更新和强制移除。
Marketplace 是插件目录,可以放在 GitHub、其他 Git 服务或本地共享目录。它描述可安装插件的位置,并不要求所有插件都在同一个仓库里。
最小目录文件
在仓库 .github/plugin/marketplace.json 中定义市场:
{
"name": "team-plugins",
"owner": { "name": "Example Team" },
"plugins": [
{
"name": "team-dev-tools",
"source": "./plugins/team-dev-tools",
"description": "Shared development workflows"
}
]
}name、owner 和 plugins 必填;owner 包含 name,可加 email。plugins 每项需要 name 与 source。source 相对仓库根解析,不相对 marketplace.json 所在目录;有无开头 ./ 效果相同。
参考列出的发现顺序为根 marketplace.json、.plugin/marketplace.json、.github/plugin/marketplace.json、.claude-plugin/marketplace.json。
指向其他 Git 来源
source 也可为 github 或 url 对象。GitHub 形式包含 repo,可选 ref、path 或 sha。sha 必须是完整 40 字符 commit SHA,可用于固定精确版本,不随分支、标签移动而改变。
市场条目支持可选 description、version、author、license 等元数据,也能为 legacy 插件提供组件配置。strict 默认 true;只有明确需要兼容宽松格式时才考虑 false。
注册与安装
copilot plugin marketplace add OWNER/REPO
copilot plugin marketplace list
copilot plugin marketplace browse team-plugins
copilot plugin install team-dev-tools@team-pluginsadd 接受 GitHub owner/repo、带 ref 的来源、Git URL 或本地目录。注册键来自 manifest 自己的 name,不能用 add 参数另起一个本地别名。
刷新和更新不同
copilot plugin marketplace update NAME 刷新市场目录;省略 NAME 刷新全部,refresh 是别名。交互面板 Marketplace 视图按 R 也刷新目录。
copilot plugin update NAME 更新已安装插件。只刷新目录不等于已安装组件已替换;本地目录型市场的路径插件直接读取源目录,重启会话即可看到修改。
移除
copilot plugin marketplace remove team-plugins移除按市场 name,不按 OWNER/REPO。还有插件安装自该市场时,命令拒绝并列出它们。--force 不只是忽略警告,还会卸载该市场的所有已安装插件,应在确实需要同时移除时使用。
内置 awesome-copilot 不能删除,管理员托管条目不能本地改成冲突值。自动更新与来源优先级见安装与管理插件。