OhoDevelopers
核心概念

Plugin 模型

Plugin 是安装和发布单元,能力和连接则在运行时分别授权。

一个统一产品单元

不论由 Oho、社区还是你自己开发,市场和 Agent 都统一展示为 Plugin。发布者身份说明来源,不创造一套不同的“官方插件类型”。

一个 Plugin 可以同时贡献:

  • Tools
  • Skills
  • Commands
  • Connections
  • Runtime
  • 图标、发布者和说明文档

这意味着用户先理解“我安装了什么产品能力”,然后在 Agent 中选择是否启用;不需要分别安装 Tool 包、Skill 包和 UI 包。

安装与 Agent 启用不是一回事

Plugin 安装 / 本地注册
  └─ 让当前用户拥有该 Plugin
      ├─ Agent A:启用
      ├─ Agent B:禁用
      └─ Agent C:启用(未来可选不同连接配置)
  • 安装或注册属于用户范围;它让 Plugin 可被多个 Agent 选择。
  • 启用属于 Agent 范围;它决定某个 Agent 能否获得 Plugin 的能力。
  • 运行能力快照属于一次 Run;它冻结本次真正允许的 Tool、模式和连接权限。

当前 Alpha 已支持本地注册和 Agent 启用。多连接配置以及不同 Agent 选择不同账号仍未实现。

本地与市场

本地开发和市场版本使用同一份 oho.plugin.json

  • 本地开发时,CLI 注册原始目录;
  • 提交市场时,Plugin 被复制到公共 Registry 的 plugins/<publisher-id>/<plugin-id>/
  • 市场负责发现和审查;当前 Alpha 尚未从市场安装并执行任意代码。

稳定 ID 是这两条路径的共同身份。发布后不要为了改显示名而更换 id