Islo vs Modal VM Sandboxes
Islo and Modal VM Sandboxes both give each agent a VM with its own kernel and Docker inside. Islo keeps a sandbox running with no session cap and guards its traffic at a gateway, while Modal's VMs are short-lived machines that end within 24 hours and scale to thousands at once.
The companies and products
Islo
Islo is an agent sandbox from Incredibuild: each coding agent gets its own microVM, with network rules and credentials handled at a gateway.
An Islo sandbox is a Linux microVM with its own kernel, built from a container image, with Claude Code, Cursor CLI and Codex preinstalled. Outbound traffic can pass through a gateway that allows or blocks hosts, injects credentials and logs every request. It is built for teams that run coding agents, evals and RL rollouts in the background, on Islo's cloud or in their own cloud account.
- Launched
- May 4, 2026
Modal VM Sandboxes
Modal is a serverless cloud for AI work, and VM Sandboxes are the version of its sandboxes that run in a virtual machine with their own Linux kernel.
You create a VM Sandbox from Python, TypeScript or Go code with runtime="vm", run commands in it, and terminate it when the job is done. Modal built the runtime on the Rust-based Cloud Hypervisor, so Docker, FUSE, systemd and nested cgroups work, with the same API, images and prices as its gVisor sandboxes. It became generally available on 1 October 2026 and suits teams that want many short-lived agent machines next to Modal's inference and training.
- Funding
- Over $466M raised
- Generally available
- 1 October 2026; early customers launched over 20 million VMs before that
- Session length
- Default 5 minutes, maximum 24 hours
- Compliance
- SOC 2 on every plan; HIPAA on Enterprise
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. “30th cheapest of 366” means 29 of the other 365 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 | Islo: price rank | Modal VM Sandboxes: price rank | bochka: price rank |
|---|---|---|---|
| Software factory 100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month Both run Docker in a VM, but a Modal VM ends within 24 hours and loses files outside a Volume, Islo has no /dev/kvm or desktop documented, and bochka has both plus a disk that stays. | 326th of 367, with limits $7,402 a month | 84th of 367, with limits $759 a month | 3rd cheapest of 367 $634 a month |
| Always-on AI employees 50 machines 24/7 · 2 vCPU / 4 GB Islo fits an assistant that lives on its machine all month, since it has no session cap and can pause with memory; Modal VM Sandboxes stop at 24 hours. | 30th cheapest of 366 $9,928 a month | Can't run it | 5th cheapest of 366 $657 a month |
| Code interpreter bursts 100 at once · 1 vCPU / 2 GB · 200,000 sessions of 1 min a month Short code runs suit Modal's model of fast starts and thousands of sandboxes at once on Team, while Islo's Team plan is reported at 50 running sandboxes. | 153rd of 345, with limits $503 a month | Can't run it | 186th of 345, with limits $2,000 a month |
| Sandboxes for your users 300 at once · 2 vCPU / 4 GB · 30,000 sessions of 23 min a month 300 user sandboxes at once is more than the 50 running sandboxes reported for Islo's Team plan, and fits Modal's Team plan; bochka also fits and keeps each user's disk while it waits. | 171st of 361, with limits $3,160 a month | Can't run it | Cheapest of 361 $209 a month |
| RL rollouts 1,000 at once · 2 vCPU / 4 GB · 1,000,000 sessions of 3 min a month Huge bursts of short rollouts are what Modal is built for; Islo needs a raised limit for many at once, and bochka's start limits queue very large bursts. | 167th of 360, with limits $15,265 a month | 171st of 360, with limits $16,322 a month | 34th of 360, with limits $2,000 a month |
| Agent evals 250 at once · 4 vCPU / 8 GB · 15,000 sessions of 20 min a month | 198th of 364, with limits $2,456 a month | Can't run it | 10th cheapest of 364 $200 a month |
| CI runners 40 at once · 8 vCPU / 16 GB · 6,000 sessions of 12 min a month All three run Docker builds in a VM; Modal offers /dev/kvm for Android emulators only on Team and Enterprise on request, Islo documents none, and bochka has it on every plan. | 119th cheapest of 377 $1,507 a month | 188th of 377, with limits $1,064 a month | 4th cheapest of 377 $86 a month |
| 24/7 dev boxes 1 machine 24/7 · 4 vCPU / 8 GB | 112th cheapest of 368 $402 a month | Can't run it | 18th cheapest of 368 $26 a month |
| Computer-use agents 50 at once · 4 vCPU / 8 GB · 20,000 sessions of 15 min a month Neither Islo nor Modal VM Sandboxes has a desktop or computer-use API, so on both you set up a screen yourself; bochka streams a 60fps desktop with Chromium. | 310th of 369, with limits $2,210 a month | Can't run it | 6th cheapest of 369 $200 a month |
| Browser-use agents 50 at once · 2 vCPU / 4 GB · 30,000 sessions of 10 min a month | 113th of 367, with limits $1,105 a month | Can't run it | 7th cheapest of 367 $200 a month |
| Scraping & bots (startup scale) 50 at once · 1 vCPU / 2 GB · 100,000 sessions of 3 min a month | 66th cheapest of 346 $748 a month | Can't run it | 6th cheapest of 346 $90 a month |
| Mass scraping & bots (undetectable) 1,000 at once · 1 vCPU / 2 GB · 3,000,000 sessions of 2 min a month | 265th of 338, with limits $14,966 a month | Can't run it | 71st of 338, with limits $1,800 a month |
| Parallel red teaming 200 at once · 2 vCPU / 4 GB · 5,000 sessions of 30 min a month Islo's gateway can block hosts and log every call an attacking agent makes; Modal can block outbound traffic or allow only chosen domains. | 47th of 360, with limits $746 a month | 294th of 360, with limits $642 a month | 2nd cheapest of 360 $200 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 | 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 | Can't run it |
Key features
| Feature | Islo | Modal VM Sandboxes | bochka |
|---|---|---|---|
| Isolation | A microVM with its own kernel per sandbox | A VM with its own Linux kernel on Cloud Hypervisor | A full VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts |
| Docker and nested virtualization | Docker inside and sudo; no /dev/kvm documented | Docker, systemd and root; /dev/kvm on Team and Enterprise only, on request | Docker, root, systemd and /dev/kvm on every plan |
| CPU benchmark (4 vCPU / 8 GB) | Not measured | 15.54 runs/s | 26.69 runs/s |
| Longest session | No published cap; runs until you stop it or a timer you set fires | 24 hours (default 5 minutes) | No cap on paid plans; you set the time to live |
| Pause and resume | Pause keeps files, processes and memory; can wake on the next exec, file access or webhook | No paused state; only Volumes and snapshots keep files after a sandbox ends | Stop for free and resume with the whole disk, saved every minute; resume reboots from disk |
| Fork | Snapshot a running sandbox's files and start new sandboxes from it | Snapshot the filesystem into an image and boot new sandboxes; memory snapshots in alpha | Fork a running sandbox with its disk |
| Desktop and computer use | A browser for testing; no desktop or computer-use API | Not offered; an example shows setting up Xvfb and VNC yourself | 60fps desktop, Chromium and a computer-use API built in |
| Coding agents | Claude Code, Cursor CLI and Codex preinstalled; factory lines run agent steps on schedules and events | Examples only; you install the agent yourself | Claude Code, Codex, OpenCode and more preinstalled, driven from outside with a prompt, steer and events API |
| Keeping keys out of the sandbox | Gateway injects stored credentials into outbound requests for any host | Secrets are environment variables, or you run your own proxy in a sidecar | AI credentials proxy for model providers and any HTTPS API you register |
| Outbound network rules | Allow or deny by host, path and HTTP method, with per-request logs | Block all, IP-range allowlist, domain allowlist (beta) | Open internet, no provider-side allowlist |
| Reaching the sandbox | HTTPS share links that expire after a TTL; SSH and port-forward through the CLI; no raw TCP | Encrypted and raw TCP tunnels, connect tokens, inbound IP allowlist | HTTPS URLs for up to 50 ports, token-protected, plus raw TCP |
| Sandboxes at once | Free 5 and Team 50 running sandboxes per launch coverage; more by contract | 100 containers on Starter, 5,000 on Team | 100 to 2,000 running sandboxes by plan, raised by adding seats |
| Regions | US West, or your own cloud account with BYOC | US, EU and Asia-Pacific; pinning costs 1.15x to 1.75x | EU only: Germany, Finland, France, with EU data residency |
Every feature Battleships tracks (43)
| Feature | Islo | Modal VM Sandboxes | bochka |
|---|---|---|---|
| Full VM (own kernel) | Yes | Yes | Yes |
| Docker inside | Yes | Yes | Yes |
| Nested virtualization | No | Yes | Yes |
| Root | Yes | Yes | Yes |
| Systemd | Not published | Yes | Yes |
| Desktop GUI | No | No | Yes |
| Browser | Yes | No | Yes |
| Computer-use API | No | No | Yes |
| SSH | Yes | Yes | Yes |
| Persistent disk | Yes | Yes | Yes |
| Pause/resume | Yes | No | Yes |
| Automatic snapshots | Yes | No | Yes |
| Fork/clone | Yes | Yes | Yes |
| Live fork (no pause) | Yes | Yes | Yes |
| Memory fork | No | Yes | No |
| Custom image (Docker or snapshot) | Yes | Yes | Yes |
| ≥24 h sessions | Yes | Yes | Yes |
| Idle auto-stop | Yes | Yes | No |
| Wake on request | Yes | No | No |
| HTTPS preview URLs | Yes | Yes | Yes |
| Raw TCP inbound | No | Yes | Yes |
| Public IPv4 | No | No | No |
| Egress allowlist | Yes | Yes | No |
| Secret proxy | Yes | No | Yes |
| Secret proxy for any API | Yes | No | Yes |
| Preinstalled agents | Yes | No | Yes |
| Agent harness API | Yes | No | Yes |
| MCP server | No | No | No |
| GPU | No | No | No |
| Windows | No | No | No |
| Arm64 | No | No | No |
| Self-hosting | No | No | No |
| BYOC | Yes | No | No |
| Open source | No | No | No |
| Scoped API keys | Not published | Not published | Yes |
| Spend limits | Not published | Not published | Yes |
| Usage per sandbox (API) | Yes | Not published | Yes |
| Audit logs | Yes | Yes | No |
| SSO | Yes | Yes | No |
| SOC 2 | Not published | Yes | No |
| HIPAA | Not published | Yes | No |
| EU data residency | No | Yes | Yes |
| Zero data retention | Not published | Not published | Yes |
Performance
In StarSling's public run of 29 September 2026 at 4 vCPU / 8 GB, Modal's VM runtime did 15.54 Node.js build-and-test runs per second and bochka did 26.69 on dedicated AMD Ryzen 9 9950X hosts, about 1.7 times the CPU work. Islo was not part of that run, so there is no comparable measurement for it.
Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. Modal VM Sandboxes measured on: VM Sandbox, request = size. Islo 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 | Islo, a month | Modal VM Sandboxes, a month | bochka, 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 | $101 · Free | $15 · Starter · with limits | $20 · $20/mo |
| One agent that never stops 4 vCPU / 8 GB, 50 GB disk, running 24/7 all month | $420 · Free | $178 · Starter · with limits | $26 · $20/mo |
| 50 agents in parallel 50 machines of 4 vCPU / 8 GB at once, 8-hour sessions, 1,100 sessions a month, Docker inside | $4,863 · Team | $2,229 · Starter · with limits | $317 · $20/mo × 3 seats |
| Sandboxes for your users 2 vCPU / 4 GB, 30,000 sessions of 10 minutes a month, up to 300 at once | $1,382 · Team · with limits | $792 · Team | $200 · $100/mo × 2 seats |
| 1,000 short jobs at once 2 vCPU / 4 GB, 1,000 at once, 3 minutes each, 200,000 jobs a month | $3,053 · Team · with limits | $3,193 · Team · with limits | $2,000 · $2000/mo · with limits |
Islo: Islo bills each CPU core and each GB of memory and disk while a sandbox runs, billed per hour, with no plan fee. An idle sandbox keeps billing until a pause-after-idle timer you set at creation fires, and egress has no published price.
Modal VM Sandboxes: Modal bills by the second for the higher of the CPU and memory you request or use, until the sandbox ends. Starter is free with $30 of monthly credit, Team is $250 a month with $100 of credit, and egress above the free allowance costs $0.04 per GiB.
Modal VM Sandboxes: bochka plans start at $20 a month and the whole fee becomes usage credit, spent per second on running sandboxes. A stopped sandbox costs nothing and keeps its disk.
Limits in those scenarios
A Modal VM Sandbox lives at most 24 hours and only keeps files in a Volume or snapshot, so the workday, always-on and 50-agent scenarios do not fit it even though it prices lower than Islo there. Islo's Team plan is reported at 50 running sandboxes, so 300 user sandboxes and 1,000 short jobs at once need a custom contract; Modal's Team plan fits the 300. For 1,000 jobs at once, Modal's small CPU request is shared and not guaranteed, and bochka's start limits queue the burst.
| Scenario | Islo | Modal VM Sandboxes | bochka |
|---|---|---|---|
| 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 | None that bite |
| 1,000 short jobs at once |
|
|
|
Which one should you use?
Use Islo when
your agents run for days and must pause with memory, when you need per-host egress rules with a log of every call, or when it must run in the US or your own cloud account.
- Agents that stay up and pause with memory. Useful for agents that run for days: Islo has no session cap and pauses idle sandboxes with memory kept.
- Egress rules and request logs. Useful if you must control what agents reach: Islo allows or blocks each host, path and method, and logs every call.
- Coding agents and your own cloud. Useful for teams running coding agents in the background: agents come preinstalled, and BYOC runs it all in your account.
Use Modal VM Sandboxes when
you run huge bursts of short jobs that finish within a day, need regions outside Europe, or already run your models on Modal.
- Very large bursts. Useful for huge bursts of short jobs: Modal runs 5,000 containers at once on Team.
- Regions and raw TCP. Useful if you need the US, EU or Asia-Pacific, or raw TCP tunnels into the sandbox.
- One platform with inference and training. Useful if you already serve or train models on Modal: sandboxes and models share one account and one bill.
Where bochka fits
Look at bochka if your agents need more than a headless shell: a screen, emulators, or a machine they come back to for days. bochka gives every sandbox a full VM with /dev/kvm, a 60fps desktop and a disk that is saved every minute, with no session cap on paid plans.
A desktop agents can see and use
Neither Islo nor Modal VM Sandboxes has a desktop or computer-use API. An agent that must check a UI needs you to install Xvfb, VNC and a control layer in every image; bochka streams a 60fps desktop with Chromium.
/dev/kvm on every plan
Android emulators and tools that start their own VMs need /dev/kvm. Islo documents none, and Modal offers it only on Team and Enterprise after you ask support; bochka has it on every machine.
A faster VM that keeps its disk
A Modal VM ends within 24 hours and its root disk goes with it unless you write snapshot or Volume code. bochka keeps the whole disk across free stops and did 26.69 CPU runs per second against Modal's 15.54.
Use bochka when your agents need a desktop, /dev/kvm and ports you can host on, on a faster full VM in the EU that keeps its disk and never cuts them off. Compare it one to one: bochka vs Islo and bochka vs Modal VM Sandboxes.
Questions people ask
Is Islo cheaper than Modal VM Sandboxes?
In most of our scenarios Modal prices lower: one always-on agent comes to $178 a month on Modal against $420 on Islo, and 50 parallel agents $2,229 against $4,863. But Modal's VMs end within 24 hours, so those scenarios do not fit it. bochka comes to $26 and $317 for the same two.
Which is faster, Islo or Modal VM Sandboxes?
Islo has no public CPU measurement we can compare. In StarSling's benchmark at 4 vCPU / 8 GB, Modal's VM runtime did 15.54 runs per second and bochka did 26.69.
Can Islo and Modal VM Sandboxes run Docker?
Yes, both run Docker inside their VMs. For Android emulators, Modal offers /dev/kvm on Team and Enterprise after you ask support, and Islo documents none. bochka has Docker and /dev/kvm on every plan.
How long can a sandbox run on each?
Islo publishes no session cap, so a sandbox runs until you stop it or a timer you set fires. A Modal VM Sandbox defaults to 5 minutes and stops at 24 hours at most. bochka has no session cap on paid plans.
Can I limit what an agent reaches on the internet?
Both can. Islo's gateway allows or denies by host, path and HTTP method and logs each request, while Modal can block all outbound traffic or allow only chosen IP ranges or domains. bochka has open internet with no provider-side allowlist.
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.
Try bochka
Install the CLI, then run bochka new.
Product preview