bochka vs Agent 37

bochka and Agent 37 both give each agent its own persistent machine. bochka makes every sandbox a full VM you can fork while it runs; Agent 37 starts with lighter gVisor sandboxes that sleep when idle and cost less per hour.

Where bochka stands out

A full VM is the default, not an add-on

Every bochka sandbox is a VM with its own kernel, root, systemd, Docker and /dev/kvm. On Agent 37 the default is a gVisor sandbox that cannot run Docker, and its VM type has no init system and cold-boots on every start.

Fork a machine while it runs

bochka can copy a running sandbox into a new one, and save any machine as a named snapshot that others start from. Agent 37 has no fork: its backups belong to one instance and restore only in place.

Keys stay outside, for any API

bochka's credentials proxy keeps real keys out of the sandbox for model providers and any HTTPS API you register, and can switch to another account when one runs out of credits. Agent 37 proxies its own managed models, search and Composio; your own keys go inside the instance.

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.

Agent 37

Agent 37 hosts AI agents, one isolated, always-on sandbox per user, behind one API.

You create an instance from a template (Hermes, OpenClaw, Claude Code, Codex, OpenCode, Pi, Grok or your own Docker image) and talk to it through a chat API, files, exec, SSH and HTTPS URLs. The default instance is a container enforced by gVisor; a VM type gives a full Linux machine with its own kernel for Docker, Kubernetes and Android emulators. It is built for companies that give each of their customers an agent.

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 workloadbochka: price rankAgent 37: price rank
Software factory
100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month
bochka gives every agent Docker, systemd and a desktop on a full VM; on Agent 37 Docker needs the opt-in VM type, which has no init system and bills compute at 2.5 times the default rate.
3rd cheapest of 367
$634 a month
2nd cheapest of 367
$551 a month
Always-on AI employees
50 machines 24/7 · 2 vCPU / 4 GB
This is what Agent 37 is built for: one always-on assistant per user that sleeps when idle, keeps its memory, and wakes on the next message.
5th cheapest of 366
$657 a month
Cheapest of 366
$279 a month
Code interpreter bursts
100 at once · 1 vCPU / 2 GB · 200,000 sessions of 1 min a month
Agent 37's small default sandboxes suit short code runs; bochka's start limits make large bursts of one-minute jobs a poor fit.
186th of 345, with limits
$2,000 a month
Cheapest of 345
$22 a month
Sandboxes for your users
300 at once · 2 vCPU / 4 GB · 30,000 sessions of 23 min a month
Agent 37 holds up to 200 instances on its top self-serve tier, counting sleeping and stopped ones, and asks you to email for more; bochka plans go up to 2,000 at once.
Cheapest of 361
$209 a month
30th of 361, with limits
$79 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
6th of 360, with limits
$363 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
90th of 364, with limits
$58 a month
CI runners
40 at once · 8 vCPU / 16 GB · 6,000 sessions of 12 min a month
4th cheapest of 377
$86 a month
2nd cheapest of 377
$84 a month
24/7 dev boxes
1 machine 24/7 · 4 vCPU / 8 GB
Both keep a machine and its disk around the clock; bochka's full VM has systemd and raw TCP, and Agent 37 is cheaper to keep idle.
18th cheapest of 368
$26 a month
3rd cheapest of 368
$12 a month
Computer-use agents
50 at once · 4 vCPU / 8 GB · 20,000 sessions of 15 min a month
Both can drive a browser and a desktop; bochka streams a 60fps desktop out of the box, while Agent 37 adds a noVNC desktop through a template build.
6th cheapest of 369
$200 a month
Cheapest of 369
$53 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
48th of 367, with limits
$29 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
Cheapest of 346
$32 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
36th of 338, with limits
$648 a month
Parallel red teaming
200 at once · 2 vCPU / 4 GB · 5,000 sessions of 30 min a month
bochka runs each attempt on its own VM by default and can fork one that is already running to try many paths at once; Agent 37 has no fork.
2nd cheapest of 360
$200 a month
Cheapest of 360
$43 a month
GPU eval jobs
10 at once · 8 vCPU / 32 GB · 500 sessions of 30 min a month
Can't run itCan't run it
macOS agents
5 at once · 4 vCPU / 8 GB · 1,000 sessions of 20 min a month
Can't run itCan't run it

Key features

FeaturebochkaAgent 37
IsolationEvery sandbox is a full VM with its own kernelgVisor by default; full VM as an opt-in instance type
Docker insideYes, in every sandboxOnly on the VM type, at 2.5x the default compute rate; the default gVisor type cannot run a Docker daemon
systemd and initsystemd runs as in any Linux serverYour entrypoint is PID 1 with no init system, even on the VM type
Nested virtualization/dev/kvm in every sandbox, Android emulator works/dev/kvm on the VM type, with a ready Android template
CPUShared vCPUs on dedicated AMD Ryzen 9 9950X hostsShared by default; Performance type on dedicated cores at 4x the compute rate
Sleep when idleNo idle timer; a time limit you set (default 1 hour), or no limitOpt-in auto-sleep after a quiet period (default 15 minutes), wakes on the next request
Memory across sleepDisk kept; a resume reboots the machineMemory checkpointed on auto-sleep, processes resume when the restore works
Fork and snapshotsFork a running sandbox; snapshots every minute; named snapshots as shareable templatesNo fork; daily backups plus one on-demand backup, restored in place only
Custom imagesTemplates from named snapshots, no Dockerfile buildsYour own linux/amd64 Docker image as a template
Built-in agentsClaude Code, Codex, pi, OpenCode, Prime Agent, Kimi Code, Mistral Vibe, with a prompt, steer and events APIHermes, OpenClaw, Claude Code, Codex, Grok, OpenCode, Pi, with a chat API per instance
Keys kept out of the sandboxProxy for model providers and any HTTPS API you register; switch a credential to another account when one runs out of creditsManaged LLM, search and Composio through a per-instance token; your own keys go in as env vars
Desktop60fps desktop and Chromium in every sandbox, embeddable streamnoVNC desktop through a template build or the Ubuntu VM template
NetworkingHTTPS URLs for up to 50 ports, raw TCP, dedicated IPv6 or IPv4 per machineHTTPS URL per port, signed URLs, public ports, custom domains; no public IP, SSH through a WebSocket tunnel
RegionsEU only (Germany, Finland, France), EU data residencyUnited States
Compliance and transparencySOC 2 is in progress. We're open about where we stand: live status and data retention policy.SOC 2
Every feature Battleships tracks (43)
FeaturebochkaAgent 37
Full VM (own kernel)YesNo
Docker insideYesNo
Nested virtualizationYesNo
RootYesYes
SystemdYesNot published
Desktop GUIYesYes
BrowserYesYes
Computer-use APIYesYes
SSHYesYes
Persistent diskYesYes
Pause/resumeYesYes
Automatic snapshotsYesYes
Fork/cloneYesYes
Live fork (no pause)YesYes
Memory forkNoNo
Custom image (Docker or snapshot)YesYes
≥24 h sessionsYesYes
Idle auto-stopNoYes
Wake on requestNoYes
HTTPS preview URLsYesYes
Raw TCP inboundYesNot published
Public IPv4NoNo
Egress allowlistNoNo
Secret proxyYesYes
Secret proxy for any APIYesNo
Preinstalled agentsYesYes
Agent harness APIYesYes
MCP serverNoNo
GPUNoNo
WindowsNoNo
Arm64NoNo
Self-hostingNoNo
BYOCNoNo
Open sourceNoNo
Scoped API keysYesNot published
Spend limitsYesYes
Usage per sandbox (API)YesYes
Audit logsNoNot published
SSONoNo
SOC 2NoYes
HIPAANoNo
EU data residencyYesNo
Zero data retentionYesNot published

Performance

bochka26.69 runs/s
Agent 37Not measured

bochka is the fastest provider on the hpc-sandbox-benchmarks Node.js build-and-test loop at 4 vCPU / 8 GB. Agent 37 has no published result on that benchmark, so there is no comparable measurement. Agent 37 does say its default instances share host resources, and sells a Performance type on dedicated cores for steady speed.

Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. Agent 37 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.

Scenariobochka, a monthAgent 37, 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$6 · Wallet (any top-up)
One agent that never stops
4 vCPU / 8 GB, 50 GB disk, running 24/7 all month
$26 · $20/mo$12 · Wallet (any top-up)
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$329 · Wallet ($100 lifetime top-ups)
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$33 · Wallet ($250 lifetime top-ups) · 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$73 · Wallet ($250 lifetime top-ups) · with limits

bochka: A monthly plan from $20, and all of it is usage credit for running sandboxes; bigger plans raise how many run at once. A stopped sandbox costs nothing and keeps its disk.

Agent 37: A prepaid wallet with no plan fee, metered per minute: $0.80 per vCPU and $0.70 per GB of RAM per month while running, and $0.09 per GB of disk per month even while stopped or asleep. Performance compute costs 4x and VM compute 2.5x the default rate; new accounts get a one-time $5 credit after adding a card.

Limits in those scenarios

Agent 37's instance cap is 1 before your first top-up, 10 after it, 50 at $100 of total top-ups and 200 at $250, and it counts sleeping and stopped instances too; beyond 200 you email the founder. The table prices its default gVisor type, except for 50 agents in parallel: that scenario needs Docker, so it is priced on Agent 37's VM type, which bills compute at 2.5x. Each shape also caps disk (a 4 vCPU / 8 GB instance takes at most 20 GB), and creating an instance needs one day of its cost in the wallet. bochka's limits are concurrency per plan and a cap on starts, which is what stops it in the 1,000-at-once burst.

ScenariobochkaAgent 37
One coding agent, workdaysNone that bite
  • egress price not published
One agent that never stopsNone that bite
  • egress price not published
50 agents in parallelNone that bite
  • egress price not published
Sandboxes for your usersNone that bite
  • max 200 concurrent
  • egress price not published
1,000 short jobs at once
  • max 2,400 starts/day (needs ~6,667)
  • max 600 starts/hour (needs ~1,000)
  • bursts above 90 starts/min are queued (a burst of 333 takes ~4 min to start)
  • max 200 concurrent
  • shared vCPUs on this tier: heavy, sustained CPU use can be slowed by other tenants
  • egress price not published

Which one should you use?

Use Agent 37 when

you host one mostly idle assistant per customer in the US that should sleep with its memory kept and wake on the next message.

  • Sleeps when idle and keeps its memory. Useful for assistants that sit idle most of the day: an instance sleeps, keeps its memory and wakes on the next message.
  • Bring a Dockerfile, pick dedicated cores. Agent 37 builds templates from your own Docker image, and sells a Performance type on dedicated cores.
  • Runs in the United States. Agent 37 runs on dedicated servers in the US, closer to US users.

Use bochka when

your agents do real work for hours: installs, builds, tests, Docker and emulators on a full VM, with forks of running machines and keys kept outside for any API.

  • A full VM is the default, not an add-on. Agents install packages, start databases and run Docker. On Agent 37's default type Docker cannot run at all, and the VM type costs 2.5 times as much and has no systemd, so services do not start on their own.
  • Fork a machine while it runs. Without a fork you can't split one half-done task into several tries at once. On Agent 37 each try rebuilds that state from the start, and backups only restore onto the same instance.
  • Keys stay outside, for any API. On Agent 37 your own API keys sit as env vars inside a machine the agent controls, where one prompt injection can leak them. Only its managed models, search and Composio stay outside.

Questions people ask

Is bochka cheaper than Agent 37?

Mostly no. Agent 37's bill is lower in four of the five scenarios in the table above. For 50 agents in parallel, which need Docker, Agent 37 has to use its VM type at 2.5x the compute rate, and bochka comes out slightly lower. Agent 37's self-serve tiers also stop at 200 instances, counting sleeping and stopped ones.

Is an Agent 37 sandbox a VM or a container?

By default it is a container enforced by gVisor, which gives it a user-space kernel. You can ask for the VM type instead, which is a full Linux machine with its own kernel and KVM. Every bochka sandbox is a full VM.

Can I run Docker on Agent 37?

Yes, on the VM type, which comes with Docker and Compose running. The default gVisor type cannot run a Docker daemon. On bochka, Docker works in every sandbox.

Where does Agent 37 run, and where does bochka run?

Agent 37 runs on dedicated servers in the United States. bochka runs only in the EU, in Germany, Finland and France, with EU data residency.

Can bochka sleep an idle agent and wake it like Agent 37?

Not on its own. bochka stops a sandbox when its time limit runs out or when you stop it, and a stopped sandbox costs nothing and keeps its disk, but it reboots on resume. Agent 37 can sleep on idle, keep memory, and wake on the next request.

Is Agent 37 SOC 2 compliant?

Agent 37 says it has SOC 2 Type I, with Type II in progress. For bochka, 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

More comparisons

Bochka product preview · Pricing, benchmarks and commands are illustrative. Sandbox provisioning is not connected.