插件格式说明
.cbplugin 包结构、manifest.json 清单字段、签名与校验
插件格式说明
插件以 .cbplugin(加密包)或 .zip(明文开发包)分发。
包结构
my-plugin.cbplugin
├── manifest.json # 插件清单(必填)
├── index.html # 入口页面(必填)
├── assets/ # 静态资源(可选)
└── ... # 其他文件
manifest.json
{
"id": "my-plugin",
"name": "我的插件",
"version": "1.0.0",
"description": "插件描述",
"entry": "index.html",
"permissions": ["storage"],
"author": "作者"
}
| 字段 | 必填 | 说明 |
|---|---|---|
id |
✅ | 唯一标识(plugin:<id> 派生工具密钥) |
name |
✅ | 显示名称 |
version |
✅ | 语义化版本 |
entry |
✅ | 入口 HTML 相对路径 |
permissions |
否 | 申请的权限清单(在权限管理中逐项授权) |
加密与签名
- 加密包(
.cbplugin):包体 AES-256-GCM 加密,需导入密码 - 清单校验:导入时校验
manifest.json完整性,缺失或字段非法拒绝安装 - 插件加密存储(
encrypted_storage.json)由 Keystore 密钥保护,与插件包密钥分离
数据目录约定
插件数据存于 plugin_data/<pluginId>/:
| 文件 | 说明 |
|---|---|
storage.json |
插件存储数据(受保护,备份随行) |
encrypted_storage.json |
插件加密存储(Keystore 密钥) |
| 其余 | 插件自建文件 |
备份/恢复时 plugins/、plugin_data/ 目录整体随行;恢复加密存储会用新环境密钥自动重加密。