AstroBox 中文文档 下载 App

插件系统概览——AstroBox 高可扩展性的核心

为什么需要插件系统

AstroBox 不是把所有功能硬塞进一个巨无霸应用——它通过插件系统保持核心精简,把扩展能力留给社区。这种架构:

插件能做什么

插件可以扩展 AstroBox 的很多方面:

资源源接入

最常见的插件用途——接入 AstroBox 官方源之外的资源社区:

装了这类插件后,AstroBox 的「全部资源」页源选择器里会多出一个选项,切换后就能浏览对应社区的资源。

数据传输与验证

工具类插件

运行时架构

AstroBox 插件运行时从 V1 到 V2 到 V4 经历了几次大升级:

V1 / V2(API Level 1/2)

V3(API Level 3)

V4(API Level 4)——当前最新

这是一次运行时层面的彻底升级:

Level 4 的变化不是加了几个接口,而是换了一套运行机制——旧版 Level 2/3 插件继续跑在旧 wasmtime 上,互不干扰。

多语言支持

语言支持状态版本
Rust✅ 所有版本Level 1~4 都支持
Python✅ Level 4 新增官方支持
JavaScript✅ Level 4 新增官方支持
C / C++可通过 Rust 绑定间接支持

Level 4 把 Python 和 JavaScript 纳入官方支持,意味着更多开发者可以零门槛上手——不必学 Rust 就能写 AstroBox 插件。

插件市场

AstroBox 内置插件市场,社区开发者发布的插件都在这里:

也可以手动安装 .abp 格式的本地插件文件。

安全模型

插件在 wasmtime 沙箱里运行:

这比原生插件(比如 VS Code 插件)更安全——一个恶意插件最多只能搞坏 AstroBox 本身,不会影响整个系统。

想写插件

去插件开发文档站看看,或者看本 Wiki 的 开发者入门 页面。