Skip to content

包格式与命名 ​

命名空间与包名称 ​

注册名称为 namespace/name。每段以小写字母开头,使用小写字母、数字及单个分隔短横线, 最多63字节。不自动转换大小写或下划线;名称创建后不可更改。

先在工作台的「命名空间」申请名称,由管理员批准。namespace owner 控制其全部包。 待审核请求不占用名称;所有权转移需要整体转移 namespace 并由管理员审核。

sh
pluginctl namespace-claim --name my-team --command-id <uuid> --endpoint https://market.example/v1/graphql --json
pluginctl namespace-requests --endpoint https://market.example/v1/graphql --json

管理员使用 namespace-review --approve <request-id> --command-id <uuid> 批准,或用 --reject <request-id> 拒绝。CLI 与 Dashboard 调用相同协议。

三种包类别 ​

创建时选择 agent-plugin、runtime-components 或 preset,后续版本不可变更类别。

类别根描述文件内容
Agent Pluginplugin.jsonAgent Skills、MCP 定义及 bin
Runtime Componentsmarketplace.json带种类、格式、placement 和摘要的组件目录
Presetmarketplace.json精确固定版本与摘要的声明式预设

Agent Plugin 的 plugin.json.name 为注册名中的 name 段;source-release index 使用完整 namespace/name。manifest $schema 仍为 urn:marketplace:plugin-manifest:v1。 各平台 manifest 和 portable tree 必须一致,只有 bin/ 下的字节可不同。

新类别使用 marketplace.artifact/v1 envelope。机器 schema 位于仓库 api/admission/marketplace/artifact-v1.schema.json,八组示例位于 api/fixtures/artifact-families.json。组件目录为 components/<component_id>/,摘要绑定 该目录的精确文件树。只允许 snapshot,不发布本机 link 或工作区 AGENTS.md。 未知组件种类只做结构准入,发布成功不表示 Runtime 能执行该组件。

Preset 文档保留 runtime 的规范摘要算法。所有 includes 和 plugin pins 必须在当前 Marketplace 有匹配的已发布 release;传递依赖停用或 yank 后,当前 snapshot 的 preset 正常选择拒绝。隐藏不阻止已知身份读取。预设只含可公开配置和凭据引用,不得包含秘密或运行授权。

平台与归档 ​

发布可以包含一个 universal 包,或1到6个精确 OS/architecture 包,不能混合。 Preset 必须 universal;Native 组件必须精确平台。下载显式选择实际公布的 target。

sh
pluginctl pack --root ./package --out ./artifacts --platform universal --json
pluginctl publish --name my-team/my-package --metadata ./metadata.json --artifacts-dir ./artifacts --journal ./publish.json --endpoint https://market.example/v1/graphql --json

CLI 从已校验的本地归档确定类别;URL 导入必须显式提供 --family。 归档为 tar.gz ustar/pax,发布保留原始字节,不重新打包。禁止链接、绝对路径、遍历、重复及 大小写冲突。压缩上限512MiB、解压2GiB、单文件256MiB、条目50000。 组件与预设的根 marketplace.json 上限256KiB。内容变化必须发布新版本。

URL 导入 ​

source-release index 使用 marketplace.source-release/v1,包含完整注册名、精确版本、 实际 target 集合、HTTPS 地址、tar.gz 格式、归档 SHA-256 与大小。universal target 为 {"os":"universal","arch":"universal"}。导入受 origin、DNS 与重定向规则限制。

静态校验不运行代码、不连接包中服务、不下载描述符 schema。账号权限来自 namespace 所有权与当前身份,不来自 manifest 作者、名称或源地址。

适用 Marketplace 1.0.0-alpha.1 / pluginctl 1.0.0-alpha.1