插件清单(openclaw.plugin.json�?

每个插件必须�?*插件根目�?*中提供一�?openclaw.plugin.json 文件。OpenClaw 使用此清单在**不执行插件代�?*的情况下验证配置。缺失或无效的清单被视为插件错误并阻止配置验证�?

请参阅完整的插件系统指南:Plugins�?

必需字段

{
  "id": "voice-call",
  "configSchema": {
    "type": "object",
    "additionalProperties": false,
    "properties": {}
  }
}

必需键:

  • id(字符串):规范的插�?ID�?
  • configSchema(对象):插件配置的 JSON Schema(内联)�?

可选键�?

  • kind(字符串):插件类型(示例:"memory")�?
  • channels(数组):此插件注册的频�?ID(示例:["matrix"])�?
  • providers(数组):此插件注册的提供商 ID�?
  • skills(数组):要加载的技能目录(相对于插件根目录)�?
  • name(字符串):插件的显示名称�?
  • description(字符串):插件简短摘要�?
  • uiHints(对象):用�?UI 渲染的配置字段标�?占位�?敏感标志�?
  • version(字符串):插件版本(信息性)�?

JSON Schema 要求

  • 每个插件必须交付一�?JSON Schema,即使它不接受配置�?
  • 空模式是可以接受的(例如,{ "type": "object", "additionalProperties": false })�?
  • 模式在配置读�?写入时验证,而不是在运行时�?

验证行为

  • 未知 channels.* 键是错误,除非频�?ID 由插件清单声明�?
  • plugins.entries.<id>plugins.allowplugins.deny �?plugins.slots.* 必须引用可发现的插件 ID。未�?ID �?错误*�?
  • 如果插件已安装但清单或模式损�?缺失,验证失败,Doctor 报告插件错误�?
  • 如果插件配置存在但插�?已禁�?,配置被保留,并�?Doctor + 日志中显�?警告*�?

备注

  • 清单对所有插件必需,包括本地文件系统加载�?
  • 运行时仍然单独加载插件模块;清单仅用于发�?+ 验证�?
  • 如果你的插件依赖原生模块,记录构建步骤和任何包管理器白名单要求(例如 pnpm allow-build-scripts - pnpm rebuild <package>)�?