bochka vs UCloud Agent Sandbox
Both give each agent its own small Linux machine. bochka gives it a bigger machine with a disk that lasts and no time limit, while UCloud Agent Sandbox is an E2B-based service for short jobs that pause with their memory, running in mainland China and Los Angeles.
Where bochka stands out
A disk that lasts, with no time limit
A bochka sandbox keeps its disk: it is saved every minute and when the machine stops, and a stopped sandbox keeps it for free. There is no session cap on paid plans. UCloud's own docs call its 10 GB local disk temporary and stop a sandbox after 24 hours of continuous running.
A whole machine, not a small one
bochka machines go up to 16 vCPU / 32 GB, with /dev/kvm for Android emulators and VMs, Docker, systemd and root. They serve HTTPS on up to 50 ports, raw TCP and a dedicated IP. UCloud tops out at 8 vCPU / 8 GB, with a per-port HTTPS URL and no dedicated IP.
Agents and keys built in
Claude Code, Codex and five other agents come preinstalled, and you drive the agents inside from outside with one prompt, steer and events API. Real API keys stay outside the sandbox in a credentials proxy, and a credential can switch to another account when one runs out of credits.
The companies and products
bochka
bochka.xyz runs sandboxes for AI agents: each one is a full Linux VM with its own kernel.
You start a machine with one command or one API call, then SSH in, run Docker, open a desktop, or let a built-in agent (Claude Code, Codex, OpenCode and others) work in it. The disk stays between sessions, and a stopped sandbox costs nothing.
- Isolation
- Full VM per sandbox, own kernel
- Regions
- EU: Germany, Finland, France
UCloud Agent Sandbox
UCloud Agent Sandbox is a sandbox service from the Chinese cloud provider UCloud, sold through its AstraFlow platform, that gives AI agents an isolated Linux machine.
Each sandbox runs its own Linux 6.1 kernel and starts from a saved snapshot of a template, so it loads in about 80 ms with its processes already running. The SDK is built on E2B's open-source project, and the existing E2B SDK works against it in a compatibility mode. It is aimed at running agent-generated code, automated tests and data analysis, mostly for teams working in mainland China.
Which use cases each one fits
For each use case, Battleships prices every sandbox provider on the same workload and sorts them from the cheapest monthly bill up. “3rd cheapest of 367” means 2 of the other 366 providers run that workload, with every feature it needs, for less. “With limits” means the provider runs it but misses something, so it is listed after every full match. Open a use case for its whole ranking and what each provider misses.
| Use case and its workload | bochka: price rank | UCloud Agent Sandbox: price rank |
|---|---|---|
| Software factory 100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month A software factory runs builds and tests for hours on a disk it keeps, so bochka's lasting disk, larger machines and lack of a session cap fit better than a 24-hour microVM with 10 GB of temporary disk. | 3rd cheapest of 367 $634 a month | 163rd of 367, with limits $1,563 a month |
| Always-on AI employees 50 machines 24/7 · 2 vCPU / 4 GB An assistant that lives on its machine all month hits UCloud's 24-hour limit and has to pause and resume; bochka can simply keep running. | 5th cheapest of 366 $657 a month | 200th of 366, with limits $2,021 a month |
| Code interpreter bursts 100 at once · 1 vCPU / 2 GB · 200,000 sessions of 1 min a month UCloud is built for this: short code runs that start from a snapshot, pause with their memory and come back in about a second. | 186th of 345, with limits $2,000 a month | 79th of 345, with limits $106 a month |
| Sandboxes for your users 300 at once · 2 vCPU / 4 GB · 30,000 sessions of 23 min a month UCloud allows 20 running sandboxes by default, so serving many users means asking for a higher quota; bochka raises its limits with the plan. | Cheapest of 361 $209 a month | 75th of 361, with limits $665 a month |
| RL rollouts 1,000 at once · 2 vCPU / 4 GB · 1,000,000 sessions of 3 min a month | 34th of 360, with limits $2,000 a month | 56th of 360, with limits $3,201 a month |
| Agent evals 250 at once · 4 vCPU / 8 GB · 15,000 sessions of 20 min a month | 10th cheapest of 364 $200 a month | 119th of 364, with limits $515 a month |
| CI runners 40 at once · 8 vCPU / 16 GB · 6,000 sessions of 12 min a month CI jobs that build Android apps or VM images need /dev/kvm, which bochka has and UCloud does not document. | 4th cheapest of 377 $86 a month | 279th of 377, with limits $464 a month |
| 24/7 dev boxes 1 machine 24/7 · 4 vCPU / 8 GB A dev box needs a disk that survives host failures and no session cap; UCloud's own docs say local disk is temporary. | 18th cheapest of 368 $26 a month | 122nd of 368, with limits $81 a month |
| Computer-use agents 50 at once · 4 vCPU / 8 GB · 20,000 sessions of 15 min a month Both have a Linux desktop an agent can drive; bochka streams it at 60fps with Chromium included, while UCloud's desktop template has no browser preinstalled. | 6th cheapest of 369 $200 a month | 167th of 369, with limits $464 a month |
| Browser-use agents 50 at once · 2 vCPU / 4 GB · 30,000 sessions of 10 min a month | 7th cheapest of 367 $200 a month | 208th of 367, with limits $232 a month |
| Scraping & bots (startup scale) 50 at once · 1 vCPU / 2 GB · 100,000 sessions of 3 min a month | 6th cheapest of 346 $90 a month | 209th of 346, with limits $157 a month |
| Mass scraping & bots (undetectable) 1,000 at once · 1 vCPU / 2 GB · 3,000,000 sessions of 2 min a month | 71st of 338, with limits $1,800 a month | 115th of 338, with limits $3,138 a month |
| Parallel red teaming 200 at once · 2 vCPU / 4 GB · 5,000 sessions of 30 min a month UCloud's outbound allow and deny lists help fence in attack agents, but bochka gives each one a full VM with /dev/kvm and room to run past 24 hours. | 2nd cheapest of 360 $200 a month | 170th of 360, with limits $153 a month |
| GPU eval jobs 10 at once · 8 vCPU / 32 GB · 500 sessions of 30 min a month | Can't run it | Can't run it |
| macOS agents 5 at once · 4 vCPU / 8 GB · 1,000 sessions of 20 min a month | Can't run it | Can't run it |
Key features
| Feature | bochka | UCloud Agent Sandbox |
|---|---|---|
| Isolation | Full VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts | MicroVM with its own Linux 6.1 kernel, built on E2B's open-source project |
| Biggest machine | Up to 16 vCPU / 32 GB on the $100 plan and above | Up to 8 vCPU / 8 GB |
| Session length | No cap on paid plans; you set the time to live | 24 hours of continuous running; pausing resets the clock |
| Disk | Persistent disk, saved every minute and on stop; a stopped sandbox keeps it for free | 10 GB local disk that is temporary and lost if the sandbox is destroyed or the host fails; keep data with pause, snapshots or volumes |
| Pause and resume | Disk is saved; resume boots the machine again | Saves memory and disk; resume takes about 1 second with processes still running |
| Fork | Fork a running sandbox with its disk | Snapshot a running sandbox with its memory and start many new sandboxes from it |
| Nested virtualization | Yes, /dev/kvm for Android emulators and VMs | Not documented; Docker inside the sandbox is supported |
| Inbound access | HTTPS URLs for up to 50 ports, token-protected by default; raw TCP; dedicated IPv4 or IPv6 | HTTPS URL per port on UCloud's domain, public unless you require a token at creation; no dedicated IP |
| Outbound rules | Open internet, no provider-side allowlist | Allow and deny lists by IP, CIDR or domain, changeable on a running sandbox |
| Desktop and browser | 60fps Linux desktop with Chromium and computer use | XFCE desktop driven by mouse and keyboard calls, viewed over VNC; no browser preinstalled |
| Coding agents | Seven agents preinstalled, with a prompt, steer and events API | Claude Code template, run through the command API |
| Keeping API keys out of the sandbox | Credentials proxy for model providers and any HTTPS API; switch a credential to another account when credits run out | Secrets injected into outbound HTTPS headers by a proxy outside the sandbox (closed beta, off by default) |
| Regions | EU only (Germany, Finland, France), with zero data retention | Ulanqab and Shanghai in mainland China, plus Los Angeles; no EU region |
| Compliance and transparency | SOC 2 is in progress. We're open about where we stand: live status and data retention policy. | Not published |
Every feature Battleships tracks (43)
| Feature | bochka | UCloud Agent Sandbox |
|---|---|---|
| Full VM (own kernel) | Yes | Yes |
| Docker inside | Yes | Yes |
| Nested virtualization | Yes | No |
| Root | Yes | Yes |
| Systemd | Yes | Not published |
| Desktop GUI | Yes | Yes |
| Browser | Yes | No |
| Computer-use API | Yes | Yes |
| SSH | Yes | Yes |
| Persistent disk | Yes | Yes |
| Pause/resume | Yes | Yes |
| Automatic snapshots | Yes | Yes |
| Fork/clone | Yes | Yes |
| Live fork (no pause) | Yes | Yes |
| Memory fork | No | Yes |
| Custom image (Docker or snapshot) | Yes | Yes |
| ≥24 h sessions | Yes | Yes |
| Idle auto-stop | No | Yes |
| Wake on request | No | Yes |
| HTTPS preview URLs | Yes | Yes |
| Raw TCP inbound | Yes | Not published |
| Public IPv4 | No | No |
| Egress allowlist | No | Yes |
| Secret proxy | Yes | Yes |
| Secret proxy for any API | Yes | Yes |
| Preinstalled agents | Yes | Yes |
| Agent harness API | Yes | No |
| MCP server | No | No |
| GPU | No | No |
| Windows | No | No |
| Arm64 | No | Not published |
| Self-hosting | No | No |
| BYOC | No | No |
| Open source | No | No |
| Scoped API keys | Yes | Not published |
| Spend limits | Yes | Not published |
| Usage per sandbox (API) | Yes | No |
| Audit logs | No | Not published |
| SSO | No | Not published |
| SOC 2 | No | Not published |
| HIPAA | No | No |
| EU data residency | Yes | No |
| Zero data retention | Yes | Not published |
Performance
There is no comparable CPU measurement for UCloud Agent Sandbox yet. bochka did 26.69 runs per second on the StarSling hpc-sandbox-benchmarks Node.js build-and-test loop at 4 vCPU / 8 GB, on dedicated AMD Ryzen 9 9950X hosts. UCloud's quota page lists a disk I/O limit of 20 MB/s and public bandwidth of 5 MB/s.
Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. UCloud Agent Sandbox has no published run in this suite yet, so there is no like-for-like number to compare.
Pricing in five scenarios
Each bill is priced from the providers' public price lists by the open Battleships engine, with the cheapest plan that runs the scenario.
| Scenario | bochka, a month | UCloud Agent Sandbox, a month |
|---|---|---|
| One coding agent, workdays 4 vCPU / 8 GB, 50 GB disk, 8 hours a day, 22 days a month, files kept between days | $20 · $20/mo | $20 · Pay as you go · with limits |
| One agent that never stops 4 vCPU / 8 GB, 50 GB disk, running 24/7 all month | $26 · $20/mo | $85 · Pay as you go · with limits |
| 50 agents in parallel 50 machines of 4 vCPU / 8 GB at once, 8-hour sessions, 1,100 sessions a month, Docker inside | $317 · $20/mo × 3 seats | $1,020 · Pay as you go · with limits |
| Sandboxes for your users 2 vCPU / 4 GB, 30,000 sessions of 10 minutes a month, up to 300 at once | $200 · $100/mo × 2 seats | $290 · Pay as you go · with limits |
| 1,000 short jobs at once 2 vCPU / 4 GB, 1,000 at once, 3 minutes each, 200,000 jobs a month | $2,000 · $2000/mo · with limits | $640 · Pay as you go · with limits |
bochka: Plans start at $20 a month, and the whole fee is usage credit. You pay per second while a sandbox runs, and a stopped sandbox costs nothing and keeps its disk.
UCloud Agent Sandbox: UCloud bills per second in yuan for the vCPU cores and RAM you set, with no monthly fee, and stops billing when the sandbox stops. The 10 GB local disk is free; paused sandboxes, snapshots and templates count as persistent storage, free up to 60 GB per account and billed by the hour above that.
Limits in those scenarios
UCloud's pay-as-you-go account runs 20 sandboxes at once by default, so the 50-agent, user-sandbox and burst scenarios need a quota raise from support. Its 24-hour continuous-run cap means an agent that never stops has to pause and resume. The default regions are in mainland China, where an account needs Chinese real-name verification, and outbound bandwidth is capped at 5 MB/s. bochka has no session cap, but at 1,000 short jobs at once its start limits queue the burst.
| Scenario | bochka | UCloud Agent Sandbox |
|---|---|---|
| One coding agent, workdays | None that bite |
|
| One agent that never stops | None that bite |
|
| 50 agents in parallel | None that bite |
|
| Sandboxes for your users | None that bite |
|
| 1,000 short jobs at once |
|
|
Which one should you use?
Use UCloud Agent Sandbox when
your users are in mainland China, or you run short E2B-style jobs that pause with their memory between requests.
- Memory pause and snapshots. Useful for short jobs that sleep between requests: a paused sandbox comes back in about a second with its processes running.
- Outbound rules. UCloud can limit which IPs, CIDR blocks and domains a sandbox may reach, and change the rules while it runs.
- Mainland China regions and E2B compatibility. For products serving users in mainland China, it runs in Ulanqab and Shanghai and accepts existing E2B SDK code.
Use bochka when
your agents do real work for hours: installs, builds, tests, Docker, emulators and a browser, on a bigger machine whose disk lasts and that never cuts them off.
- A disk that lasts, with no time limit. On UCloud, a repo, its dependencies and the agent's work vanish if the host fails or the sandbox times out unpaused, so your code has to pause, snapshot or copy data out to keep it.
- A whole machine, not a small one. A big monorepo build or a few containers can run out of 8 GB of RAM and 10 GB of disk, and Android emulators or VMs need /dev/kvm, which UCloud does not document.
- Agents and keys built in. On UCloud you install the agent from a template and drive it through raw commands, and its key-injection feature is a closed beta you have to ask support to turn on.
Questions people ask
Is bochka cheaper than UCloud Agent Sandbox?
For one agent on workdays both come to $20 a month. For an agent that never stops, 50 agents in parallel and sandboxes for your users, bochka costs less and fits, while UCloud hits its 24-hour cap or 20-sandbox limit. For 1,000 short jobs at once, UCloud's rates come to $640 a month against bochka's $2,000 a month, but neither handles the burst as is.
Is UCloud Agent Sandbox based on E2B?
Yes. UCloud's SDK says it is built on E2B's open-source project, and the E2B SDK can connect to it in a compatibility mode. It is a separate service with its own prices, limits and regions.
Can a UCloud sandbox run for days?
Not in one stretch. UCloud stops continuous running at 24 hours, though pausing and resuming resets the clock. bochka has no session cap on paid plans.
Does a UCloud sandbox keep its files?
Only if you pause it, snapshot it or use a volume. UCloud's docs say the local disk is temporary and is lost when the sandbox is destroyed or its host fails. bochka saves the disk every minute and when the sandbox stops.
Can I use UCloud Agent Sandbox outside China?
It has a Los Angeles region besides its two mainland China regions, and you pick one with an environment variable. It has no EU region; bochka runs only in the EU.
Is bochka SOC 2 compliant?
SOC 2 is in progress. We're open about where we stand: live status at status.bochka.xyz and our data retention policy at docs.bochka.xyz/data-retention.
Start a sandbox
Install the CLI, then run bochka new.
Product preview