扩展与插件系统
openarko 采用标准化的物理存储架构与动态扩展生命周期治理,使工具、能力与通道以插件化方式安全接入。
物理存储架构
Section titled “物理存储架构”宿主设备采用分层物理目录清晰隔离原始包事实源与就绪运行环境:
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/中的关联下载包,确保无残留冗余。