开源|djs:基于Rust与WebAssembly沙箱的JS/TS引擎,支持执行暂停与快照恢复
thinkindev • 2026-11-04
1984 views
djs 是一个用 Rust 编写的 JavaScript 和 TypeScript 引擎,主要面向在 WebAssembly 沙箱中运行的智能体生成脚本。其核心设计将整个虚拟机状态保存在单一字节数组中,使执行可以在指令之间暂停、在等待外部工具时进行快照,并在其他位置恢复运行。这种能力为多智能体协作、长时间任务迁移和容错恢复提供了新的可能。与通用 JS 引擎不同,djs 刻意保持聚焦,省略了 ES modules、Intl 和 JIT 等特性,以降低攻击面、减少资源占用并简化运行时行为。在 AI 代理、边缘计算和不可信代码执行等场景中,这类可控、可序列化的脚本运行时具有较高研究和应用价值。
核心要点
- djs 是用 Rust 编写的 JavaScript/TypeScript 引擎,运行于 WebAssembly 沙箱中
- 整个 VM 状态保存在单一字节数组中,支持暂停、快照和跨位置恢复执行
- 刻意省略 ES modules、Intl 和 JIT,保持运行时的轻量、聚焦与低攻击面