BoxLite:AI 智能体的微虚拟机引擎

为 AI 智能体提供硬件隔离的微 VM,轻量可嵌入,弹性支撑智能体云。

Star 数
★ 2.6k
最近更新
今天
License
Apache-2.0
主语言
TypeScript

30 秒速览

运行形态
代码库 / SDK命令行工具自托管服务
可在哪里用
通用 · 跨平台
费用
免费,无需付费服务
上手难度
低 · 几分钟可跑通
开始前需要
KVM(Linux)Hypervisor.framework(macOS)Shell / 命令行网络访问本地文件系统
典型场景
AI 智能体开发者:在本地笔记本上嵌入 BoxLite,为智能体提供隔离、持久的代码执行环境。
不适合
  • 没有 KVM 或硬件虚拟化支持的 Linux 用户
  • 需要 macOS Intel 机器的用户
  • 不想为每个 Box 承担一个 VM 资源开销的团队

这个 Agent 能做什么,适合哪些场景?

BoxLite 是一个用 Rust 编写的微虚拟机引擎,专门为 AI 智能体设计。它可以在笔记本电脑上作为库嵌入,也可以部署为多租户云服务。每个“Box”都是一个硬件隔离的 VM,运行任意 OCI 镜像,并支持持久化——智能体可以在多次交互中保留安装的软件和写入的文件。BoxLite 提供 Python、Node.js、Go、Rust 和 C SDK,以及 CLI 和 REST API。它强调无守护进程运行,可直接嵌入应用,无需 root 权限。安全性通过 KVM/Hypervisor.framework 硬件虚拟化和 OS 级沙箱(seccomp/sandbox-exec)实现。BoxLite 支持 macOS(Apple Silicon)和 Linux(x86_64 和 ARM64),并计划支持更多平台。它已集成到 Databricks Omnigent、Alibaba AgentScope Runtime 和 ByteDance deer-flow 等智能体框架中。

BoxLite 执行以下操作:
- 通过库或 CLI 创建并管理硬件隔离的微 VM(Box)。
- 拉取并运行任何 OCI 镜像(例如 python:slim、alpine:latest)。
- 在 VM 内执行命令,支持流式 stdout/stderr、退出码、交互式 PTY、超时和工作目录设置。
- 支持持久化磁盘存储,Box 停止/重启后保留状态。
- 通过 allow_net 控制网络访问,并支持端口转发和隧道。
- 提供秘密注入,真实凭证不会进入 VM。
- 提供 CPU、内存和资源限制,以及环境变量清洗。
- 可通过 CLI 作为独立服务器运行,提供 REST API。

  1. AI 智能体开发者:在本地笔记本上嵌入 BoxLite,为智能体提供隔离、持久的代码执行环境。
  2. 平台工程师:使用 BoxLite CLI 快速创建隔离的微 VM 以运行 OCI 镜像,用于测试或数据处理。
  3. 研究团队:集成 BoxLite 到自定义智能体框架(如 deer-flow),提供沙箱后端的计算隔离。
  4. 云服务提供商:使用 BoxLite 的控制平面部署多租户智能体云,支持自动扩展。
  5. 安全敏感应用:利用硬件隔离和网络白名单(allow_net)保护敏感数据,防止智能体越权访问。

如何安装或部署这个 Agent?

安装 BoxLite Python SDK:

pip install boxlite

安装 CLI(可选):

curl -fsSL https://sh.boxlite.ai | sh

需要 macOS 12+(Apple Silicon)或 Linux 且启用 KVM(/dev/kvm 可访问)。Windows 用户需使用 WSL2 并启用 KVM。

如何使用这个 Agent?

在 Python 中使用:

import asyncio
import boxlite

async def main():
    async with boxlite.SimpleBox(image="python:slim") as box:
        result = await box.exec("python", "-c", "print('Hello from BoxLite!')")
        print(result.stdout)

asyncio.run(main())

使用 CLI 运行镜像:

boxlite run python:slim python -c "print('Hello from BoxLite!')"

启动 REST 服务器:

boxlite serve
curl -X POST http://localhost:8100/v1/boxes -H 'Content-Type: application/json' -d '{"image": "alpine:latest"}'

这个 Agent 有哪些优点和局限?

优点
  • 硬件隔离比容器更强,比传统 VM 更轻量。
  • 支持多语言 SDK(Python、Node.js、Go、Rust、C)和 REST API,易于集成。
  • Box 持久化,智能体可在多次交互中保留状态。
  • 无守护进程设计,可嵌入应用无 root 权限。
局限
  • 需要硬件虚拟化支持(KVM/Hypervisor.framework),在无 KVM 的 Linux 上可能无法运行。
  • macOS Intel 支持尚未实现。
  • 作为库嵌入时,运行多个 Box 可能占用大量资源(每个 Box 一个 VM)。
  • 对网络限制(allow_net)需要开发者明确配置,否则默认为开放。

这个 Agent 与同类方案有什么区别?

与 Docker 容器相比,BoxLite 提供更强的隔离(硬件虚拟化)但更重;与 Firecracker 等其他微 VM 方案相比,BoxLite 专注于 AI 智能体场景,提供更简单的 API 和持久化功能。

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
BoxLite:AI 智能体的微虚拟机引擎 当前 57 · 缺口较多 代码库 / SDK免费 ★ 2.6k 今天 TypeScript —
microsandbox 61 · 存在缺口 命令行工具免费 ★ 8.7k 今天 Rust Claude Code
Astrid 操作系统 70 · 存在缺口 命令行工具免费 + 模型费 ★ 10k 4 天前 Rust —
OpenFang 56 · 缺口较多 命令行工具免费 + 模型费 ★ 18k 5 个月前 Rust OpenAI API · Claude API

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
缺口较多
57/ 100 五分制 2.9 / 5
本评测基于 2026年8月11日 的源码;此后该项目发布了 8 个正式版本,尚未复审。分数与结论只代表评测时的版本。 最近版本 ↓
信任安全 14/29
可靠稳定 9/14
适用触发 12/18
规范维护 10/18
有效结果 9/13
证据核验 3/8
查看各维度的扣分理由
信任安全14 / 29 · 2.4/5

证据显示:README 强调硬件隔离、seccomp/sandbox-exec、资源限制、环境净化,以及 allow_net 和秘密注入(真实值不进入 VM),表明最小权限原则得到部分处理。但缺少用户确认机制(如执行敏感操作前的提示)的明确文档。数据流透明度有限,未详细说明数据如何流动或日志记录。敏感数据处理有秘密注入和 env 净化,但未说明存储加密。依赖安全:Cargo.toml 使用 git 依赖(youki)并固定 rev,但未提供依赖审计或漏洞扫描证据。外部影响:网络限制和端口转发有文档,但未说明默认网络策略。回滚:有快照和导出/导入,但未明确回滚流程。来源归属:作者在 Cargo.toml 中列出,但发布者未验证。扣分原因:缺少用户确认、数据流透明度不足、回滚流程不明确、发布者未验证。

可靠稳定9 / 14 · 3.2/5

证据显示:README 和 CI 工作流描述一致,版本号在 Cargo.toml 和 package.json 中一致(0.9.7 vs 1.0.0 不一致,但 package.json 可能是根目录占位)。依赖可用性:有 CI 构建流程,但未提供依赖可用性保证。失败消息:测试文件中有错误处理测试,但未提供用户可见的失败消息示例。扣分原因:版本号不一致(package.json 1.0.0 vs Cargo.toml 0.9.7),依赖可用性未明确保证。

适用触发12 / 18 · 3.3/5

证据显示:README 描述了多种使用场景(嵌入、CLI、服务器、云),支持多语言 SDK,平台支持列表明确。能力边界:有 allow_net、资源限制等,但未明确默认限制。触发精度:CLI 和 API 有文档,但未详细说明触发条件。环境适配:支持 macOS、Linux、WSL2,但未说明 Windows 原生支持。扣分原因:能力边界默认值未明确,触发条件文档不详细。

规范维护10 / 18 · 2.8/5

证据显示:README 结构清晰,有安装说明(pip、npm、cargo、curl),命名稳定(boxlite),有示例和 FAQ 链接,已知限制未明确列出,许可证为 Apache-2.0(LICENSE 文件完整),版本号在 Cargo.toml 中为 0.9.7,但 package.json 为 1.0.0,无 CHANGELOG 文件,维护责任在 README 中提及(GitHub Issues、Discord)。扣分原因:版本号不一致,无 CHANGELOG,已知限制未明确。

有效结果9 / 13 · 3.5/5

证据显示:输出可用性:SDK 提供 stdout/stderr 和退出码,文档有示例。边际价值:提供微 VM 隔离,有独特价值。成本效益:开源免费,但未提供性能基准。扣分原因:无性能数据,成本效益未量化。

证据核验3 / 8 · 1.9/5

证据显示:README 中的声明部分有文档支持(如架构图),但未提供测试结果或独立验证。跨来源佐证:有 CI 工作流和测试文件,但未提供外部验证。事实与推断分离:文档中未明确区分事实和推断。扣分原因:声明缺乏可追溯性,无独立验证,事实与推断未分离。

风险与缓解建议
  • 版本号不一致:Cargo.toml 为 0.9.7,package.json 为 1.0.0,可能引起混淆。
  • 发布者未验证,身份未知,需谨慎评估。
  • 依赖使用 git 固定 rev,但未提供依赖审计证据。
  • 缺少用户确认机制,敏感操作可能无提示。
  • 数据流透明度有限,日志和监控细节不足。
证据充分度:低 评估于 2026年8月11日 审查版本 0484daf3f70d 评估后仓库已有新提交,评分可能未覆盖最新改动
查看完整评分方法 →

最近版本

来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。

  1. v0.10.7
    发布说明摘录
    What's Changed * feat!: start a box from any public image by @silverzki in https://github.com/boxlite-ai/boxlite/pull/1547 * chore: update agent tooling to 0.1.27 by @DorianZheng in https://github.com/boxlite-ai/boxlite/pull/1941 * feat(infra): manage a dedicated OpenAPI log reader by @DefeatMan in https://github.com/boxlite-ai/boxlite/pull/1932 * fix(api): enforce box/proxy API-key permissions, authorize volume attach by @Monsteer714 in https://github.com/boxlite-ai/boxlite/pull/1911 …
    在 GitHub 查看 ↗
  2. v0.10.6
    发布说明摘录
    What's Changed * chore: ignore local agent instruction files by @mamamiyear in https://github.com/boxlite-ai/boxlite/pull/1817 * feat(vmm): expose x86 entry register configuration by @DorianZheng in https://github.com/boxlite-ai/boxlite/pull/1710 * feat(vmm): expose host CPUID and checked MSR configuration by @DorianZheng in https://github.com/boxlite-ai/boxlite/pull/1711 * feat(copy): accept docker's SRC/. spelling for a directory's contents by @ltstriker in https://github.com/boxlite-ai/boxlite/pull/1826 …
    在 GitHub 查看 ↗
  3. v0.10.5
    发布说明摘录
    What's Changed * chore: adopt agent-tooling 0.1.21 by @DorianZheng in https://github.com/boxlite-ai/boxlite/pull/1618 * docs(ssh): explain russh and guest SSH architecture by @DorianZheng in https://github.com/boxlite-ai/boxlite/pull/1649 * docs(infra): map cloud architecture and billing components by @DorianZheng in https://github.com/boxlite-ai/boxlite/pull/1650 * docs(infra): document configuration and image builds by @DorianZheng in https://github.com/boxlite-ai/boxlite/pull/1651 …
    在 GitHub 查看 ↗

常见问题

BoxLite 与 Docker 容器有什么区别?
BoxLite 为每个 Box 提供硬件隔离的 VM,而 Docker 容器共享主机内核。因此 BoxLite 隔离性更强,但每个实例开销更大。
BoxLite 是否支持 Windows?
目前支持 Windows(WSL2),但需要启用 KVM 并确保用户属于 kvm 组。
BoxLite 可以在没有 root 权限的情况下使用吗?
可以作为库嵌入,无需守护进程或 root。但作为独立服务器或 CLI 时可能需要某些权限(如 /dev/kvm)。
BoxLite 如何确保安全性?
使用硬件虚拟化(KVM/Hypervisor.framework)、OS 沙箱(seccomp/sandbox-exec)、资源限制和环境清洗。
在 GitHub 查看 ↗ 安装 ↓

相关 Agents