ClawBoxLite:一行代码在本地通过 micro-VM 沙箱内启动 OpenClaw - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
d0r1an
V2EX    程序员

ClawBoxLite:一行代码在本地通过 micro-VM 沙箱内启动 Openlaw

  •  
  •   d0r1an 5 天前 1284 次点击
    Screenshot 2026-02-06 at 21 40 23
    pip install boxlite wget https://raw.githubusercontent.com/boxlite-ai/boxlite/refs/heads/main/examples/python/clawboxlite.py python clawboxlite.py 

    如果你喜欢这个例子,可以考虑关注下: https://github.com/boxlite-ai/boxlite 世界上第一个嵌入式 micro-VM 沙箱

    18 条回复    2026-02-09 10:43:36 +08:00
    d0r1an
        1
    d0r1an  
    OP
       5 天前
    sorry ,还得执行下

    ```
    pip install greenlet
    ```
    detached
        2
    detached  
       4 天前
    这是你的 project 的?

    这和 firecracker 的 MicroVM 有什么区别呀?
    d0r1an
        3
    d0r1an  
    OP
       4 天前
    @detached 向 firecracker 学习的,但主要目的不是用来跑 function ,而是 agent
    detached
        4
    detached  
       4 天前
    @d0r1an (我没有恶意啊先说明)如果底层使用 firecracker ,然后写一部分胶水逻辑,应该也能达到同样的效果吧?
    d0r1an
        5
    d0r1an  
    OP
       4 天前
    @detached 没事,正常讨论。没有用 firecracker ,做这个之前我深度研究了 firecracker 和相关 vmm 的代码,坑和细节比较多,很多设计决策和 bug 需要解决
    d0r1an
        6
    d0r1an  
    OP
       4 天前
    @detached 没有胶水层那么简单,代码开源的,有兴趣可以一起深入讨论
    detached
        7
    detached  
       4 天前
    @d0r1an 我看了一下文档,就我的理解是:使用 kvm (只讨论 Linux )来进行 hardware isolation ,然后在 vm 里运行 container (?)来实现 OCI 兼容性?
    detached
        8
    detached  
       4 天前
    @d0r1an 以我对 firecracker 的了解,是有项目让 Firecracker microvm / kata container 满足 oci 的,所以我实际上是没搞清楚你这么做的 motivation ,(当然个人项目想怎么做就怎么做)。
    d0r1an
        9
    d0r1an  
    OP
       4 天前 via iPhone

    @detached 你现在在找沙箱解决方案吗?
    d0r1an
        10
    d0r1an  
    OP
       4 天前 via iPhone
    @detached 我的出发点非常简单,agent 怎么快速的被开发出来,跑起来,又不会束手束脚还能保证尽可能安全。其他沙箱产品你可以试下体感
    d0r1an
        11
    d0r1an  
    OP
       4 天前 via iPhone
    @detached 技术的差异需要在解决同样问题的语境里面容易讨论出来
    detached
        12
    detached  
       4 天前
    @d0r1an 我在找我的(下一个) research project 的 idea 。

    可以达成的共识应该是:sandox for agent 主要是为了解决 coding agent 在运行过程中有一个拥有所有权限环境。

    这一点与 serverless function (firecracker microvm)比较接近,所以逻辑上讲可以启动一个 microvm ,并在里面运行 coding agent ,这样就完成了你的出发点:完整的环境、硬件隔离。

    所以如果是站在 research/产品的角度,这个项目应该回答的问题是:boxlite 与 Firecracker 在解决这个问题上有什么差别?( aws 已经有了基于 microvm 的 agentcore )。

    如果你的实现(最底层上)是启动一个 microvm (利用 kvm ),并且在里面运行一个 container 。这样的效率从逻辑上来讲是低于 kata container 的( kata 是将 vm 包装成一个兼容 oci 的 container ,其实质上是 vm )。


    整个项目的逻辑可以二元的拆分为:sandox 以及为 agent 做的 protocol 。如果在 sandox 层面回答不了这个问题,这个项目的意义就只能落在后者:为 agent 部分做的修改。
    d0r1an
        13
    d0r1an  
    OP
       4 天前 via iPhone
    @detached 你的分析很好,是逻辑很强,但是你上手用一下嘛,很快就能体验出区别
    detached
        14
    detached  
       4 天前   1
    @d0r1an 祝你的项目成功:)
    SToPire
        15
    SToPire  
       4 天前 via Android
    @d0r1an lz 你好,拜读了一下项目 website 和 firecracker 的对比,是否可以认为 boxlite 通过牺牲部分 vm 启动性能换来了更好的 toD 集成体验?比较好奇启动性能的差异来自于什么地方?是 libkrun 本身性能劣于 fc ,还是 oci 兼容层存在开销,亦或是其他我没考虑到的原因?我目前理解 agent 场景下沙箱启动性能是一个 critical 的点,不知道您怎么看。
    runstone
        16
    runstone  
       3 天前
    @d0r1an 沙箱这块不太了解,我想请问个问题:比如我的服务代码是跑在 docker 容器内的,然后需要调用这个 boxlite sdk 这个来启动 sandbox ,可行么?就是 sdk 调用方只能在宿主机上,还是在 docker 内部也可以?
    d0r1an
        17
    d0r1an  
    OP
       3 天前
    @SToPire Hi, 目前没有性能方面的损耗了
    d0r1an
        18
    d0r1an  
    OP
       3 天前
    @runstone 可行的,但是需要把/dev/kvm 挂在给容器
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2557 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 04:53 PVG 12:53 LAX 20:53 JFK 23:53
    o have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86