跳到主要内容
LEARN / GUIDES

好用,从了解开始。

给使用者的说明,也给创造者一条清晰的路。

从代码,到一份可信的插件。

发布流程

  1. 每个用户只能申请一个发布者身份;提交资料和反向域名命名空间,系统校验通过后立即开通,无需人工审核。
  2. 建立插件资料,确保 pluginId 位于获批命名空间之下。
  3. 使用 plugins-v1 SDK 生成未签名 ZIP,无需自行准备密钥。
  4. 发布者身份通过后,登录即可直接上传版本,无需重复身份验证;平台自动签名,校验通过后进入人工审核。
  5. 管理员核对最终签名包哈希后批准,发布任务更新版本与 TUF 元数据。 身份验证器为可选项;已开启的账号登录时仍需第二因素验证,提交插件不再重复验证。

包与版本约束

仅支持稳定三段版本,例如 1.2.3。ZIP 最多 10 MiB,解压总量最多 32 MiB,最多 256 个普通文件,单文件最多 8 MiB。运行入口为 JavaScript ES2020。当前校验器已同步 Widget SDK 0.14.0,支持矢量图层、应用启动反馈、天气、Codex 任务、离线 Web UI 和最小视口等协议声明。离线 Web UI 须声明 web-ui.offline.v1 并包含 ui/main.js(ES2020 script,最多 4 MiB);交互另需 web-ui.action.v1。仍不接受任意 HTML、SVG、动态库或嵌套归档。

必需文件

manifest.json
integrity.json
scripts/main.js
widgets/<widget>/config.schema.json
widgets/<widget>/editor.json
README.md
LICENSE.txt

签名与密钥

默认由平台为每个发布者创建专属 P-256 密钥,加密保管私钥,并为未签名包生成 publisher.jwk 和 signature.jws。签名覆盖 integrity.json,最终签名包通过审核后固定分发;上传原包与最终包的哈希可能不同。目前暂未开放托管密钥下载。已有本地密钥的开发者可在高级选项中完成持钥验证,继续上传自行签名的包。

修订与撤销

已提交版本不能用不同文件覆盖。修订请增加版本号。常规停用密钥仅阻止后续提交;密钥泄露请提交安全报告,由平台审核并撤销相关版本分发。