Agent 沙箱三國誌:E2B vs AgentBox vs ClodPod 橫評
AI agent 行 --dangerously-skip-permissions 係一種態度,但態度解決唔到問題。當你放隻 agent 出去改 code、跑 script、甚至做系統操作,一個 prompt injection 可以喺你唔為意嘅情況下將你部機變為 botnet 嘅一部分。呢個唔係理論風險,係已經發生緊嘅現實。問題唔係「我信唔信得過我隻 agent」,而係「我點樣容許 agent 發揮最大能力嘅同時,將 damage radius 縮到最細」。呢個就係 agent sandbox 嘅核心命題。
市面上嘅方案大致分三條路線:純雲端、本地容器級、以及本地全 VM 級。以下用 E2B、AgentBox(以 madarco 版本為代表)、同 ClodPod 做例子,逐個分析。
E2B:雲端 microVM,用隔離換效率
E2B 建基於 Firecracker microVM,即係 AWS Lambda 背後嗰層硬件級隔離技術。每個 sandbox 係一個獨立 Linux kernel,cold start <200ms,對於需要頻繁開新環境嘅 coding agent 來講,呢個數字好重要。佢哋嘅架構分四層:client proxy、Go 寫嘅 orchestrator、Firecracker VM、同 in-VM daemon(envd)。每個 sandbox 嘅 rootfs 用 NBD mount,template 快取喺 GCS/S3,開機快過你沖杯咖啡。
實際用落,E2B 最強嘅係 pause/resume 機制 —— sandbox 可以暫停放低,第日再拎返嚟繼續用,state 完全保留。最大痛點係冇 GPU 支援,你想喺入面跑 inference 或者 fine-tune 就唔使諗。收費方面,Hobby tier 送 $100 credit,但上 Pro 要俾 $150/month + usage,production 入場門檻偏高。BYOC 自托管係可行選項,但要用 Terraform + Nomad 自己去砌 infra,唔係細 team 玩得起。
適合場景:你個 product 係 SaaS 形態嘅 AI agent service,需要俾大量 concurrent 用戶每人一個獨立 sandbox,而又接受 CPU-only 嘅限制。
AgentBox:本地優先,agent-aware 嘅執行管治
「AgentBox」呢個名其實有六七個唔同嘅 open source project 撞名,最值得留意係 madarco/agentbox。佢嘅定位好清楚:唔係將 agent 搬到雲端,而係喺你嘅 local machine 上開一個隔離嘅 VM(用 Lima/UTM),然後將 agent teleport 入去。Git credentials 留喺 host,agent 要 git push 要先問你。呢種 agent-aware 嘅 permission model 係 E2B 做唔到嘅——因為後者設計假設你已經信任個 agent,只係唔想佢整爛嘢。
另一個值得提嘅變體係 EfeDurmaz16/agentbox(Rust 寫),行 container-level isolation 加 policy engine。佢將危險操作分三級:Allow(直接放行)、Approve(send ntfy notification 俾你審批)、Block(直接 ban)。仲有 PATH shim intercept git push、ssh、rm -rf 呢啲高風險指令。對於有 compliance 要求嘅團隊來講,SHA-256 hash-chained audit log 係實用功能。
AgentBox 類方案嘅軟肋係碎片化嚴重。冇一個明確嘅主流版本,community support 分散,bugs fix 速度取決於個別 maintainer。而且大部份變體係 macOS 優先(因為 Lima/UTM 生態),Linux/Windows 支援參差。
適合場景:你係 indie developer,寫 agent 時想有層保護,但又唔想將 code 送出自己部機。
ClodPod:全 macOS VM,Xcode 開發者嘅避難所
ClodPod 嘅切入點好特別:佢唔用 Linux container,亦唔用 cloud microVM,而係用 Tart 開一個完整嘅 macOS VM 俾 agent 入去行。點解要咁做?作者自己講:「我試過 exec-sandbox 同 podman containers,但我最終目標係用 Xcode build apps,所以我要 macOS。」
呢個選擇帶來幾個好處:第一,Xcode 同 macOS SDK 齊全,可以 compile iOS/macOS project;第二,APFS CoW caching 令 rebuild VM 快過傳統方式;第三,multi-project directory mapping 容許 agent 同時存取幾個 codebase,而 host 嘅 browser profile、home directory、credentials 完全隔離。仲有 headless mode for CI/CD。
代價係 overhead 明顯大過 E2B 同 AgentBox。一個 full macOS VM 食多啲 RAM,boot time 以十秒計(唔係 <200ms),而且只限 macOS host。如果你唔係做 Apple ecosystem 開發,ClodPod 對你來講係 overkill。
適合場景:你用 AI agent 寫 iOS/macOS app,需要 Xcode 喺 sandbox 入面跑晒全套 build 同 test,而唔想你部 main machine 被整到亂七八糟。
揀邊個?睇你信啲乜
講到尾,三個方案反映三種唔同嘅信任模型。E2B 信任 cloud infra 多過自己部機,將隔離責任外判俾 AWS 層 hardware virtualization。AgentBox 信自己部機但唔信 agent 嘅行為,所以喺中間加一層 policy gate。ClodPod 就最老派——full VM 做 boundary,反正 Apple Silicon 嘅 virtualization 已經夠快,唔使搞咁多花臣。
我嘅建議好簡單:如果你寫緊 production SaaS agent service,用 E2B 慳時間,唔使自己砌 sandbox infra。如果你係個體戶寫 agent tooling,AgentBox type 方案夠用有餘,policy engine 俾你 sleep 得好啲。如果你做 iOS/macOS agent 開發,ClodPod 係唯一可行選項。最緊要嘅原則得一條——無論你揀邊個,唔好再俾 agent 直接跑喺你嘅 host 上。嗰啲 --dangerously-skip-permissions 嘅 demo 好睇,但唔係 production 嘅答案。