跳转到内容
OA
openarko

扩展与插件系统

openarko 采用标准化的物理存储架构与动态扩展生命周期治理,使工具、能力与通道以插件化方式安全接入。

宿主设备采用分层物理目录清晰隔离原始包事实源与就绪运行环境:

1. 下载包缓存目录 (~/.openarko/cache/)

Section titled “1. 下载包缓存目录 (~/.openarko/cache/)”
  • 原始包不可变事实源:专门持久化存储从远程源或扩展中心下载的原始安装包压缩包(如 .tar.gz、.zip);
  • 完整性与断点续传:提供 SHA-256 完整性校验、断点续传与离线复用能力;
  • 自愈隔离:与解压工作区分离,解压损坏时可基于缓存包重复解压自愈,亦支持按需安全清理下载缓存以释放磁盘。

2. 已解压扩展根目录 (~/.openarko/extensions/)

Section titled “2. 已解压扩展根目录 (~/.openarko/extensions/)”
  • 就绪运行时目录:存放所有已解压就绪、供运行时直接扫描发现与动态挂载的扩展物理根目录;
  • 对齐 node_modules 标准:每个扩展拥有独立子目录(如 <extension-id>/ 或 @scope/<name>/);
  • 规范清单:扩展根目录下严格包含规范的 manifest.json(或 extension.json)清单文件、元数据、工具可执行体与能力定义资产,杜绝无清单裸跑或侵入宿主安装路径。

运行时动态生命周期(免重启热插拔)

Section titled “运行时动态生命周期(免重启热插拔)”

openarko 运行时支持完整的动态插件生命周期控制流状态机,所有变更均在免重启宿主进程的前提下实时生效:

  • 动态加载 (Load): 扫描并解析扩展清单,动态注册 MCP 工具、技能资产与消息/事件通道,无需停机或重启客户端;
  • 动态卸载 (Unload): 即时注销已注册的 MCP 工具、切断网络长连接与时态事件监听,彻底释放沙箱与运行时内存占用,杜绝残留僵尸监听器与工具悬挂;
  • 按需启停 (Enable / Disable): 支持对扩展进行软启停控制。禁用时即刻注销能力,启用时动态重新挂载,无需删除底层物理文件;
  • 物理删除 (Remove): 执行安全卸载后,级联清理 ~/.openarko/extensions/ 中的对应解压子目录及 ~/.openarko/cache/ 中的关联下载包,确保无残留冗余。