exe.dev vs OpenAI Containers

exe.dev rents you Linux VMs with root, Docker and SSH that run until you stop them. OpenAI Containers are short-lived boxes inside OpenAI's model API where the model runs code, and they expire after 20 minutes without use.

The companies and products

exe.dev

exe.dev, made by Bold Software, Inc., rents Linux VMs for developers and AI agents that you reach over SSH and HTTPS.

You reserve a pool of vCPUs and memory, and your VMs share it; you can also start standalone VMs billed by the second. Each VM is KVM-isolated (they use Cloud Hypervisor), boots from a container image in about two seconds, and has root, systemd and Docker. It comes with Claude Code, Codex, Pi and exe.dev's own Shelley agent, and is aimed at developers who want a persistent dev box or a sandbox for their agents.

OpenAI Containers

OpenAI Containers are the sandboxes OpenAI runs for its own model tools: Code Interpreter, Hosted Shell and the Agents API's hosted sandbox.

This is a different kind of product from boat: a tool inside OpenAI's model API, not a machine you rent. You create a container through the API or let a Responses call make one, and the model runs Python or shell commands in it on a fixed Debian 12 image without sudo, until it expires after 20 minutes without use. It is built for apps that already call OpenAI models and want them to run code, read files and make charts without running any servers.

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. “15th cheapest of 366” means 14 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 workloadexe.dev: price rankOpenAI Containers: price rankboat: price rank
Software factory
100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month
A coding agent that runs Docker and keeps a repo for days works on exe.dev and boat; OpenAI documents no Docker or root, and boat adds a desktop and snapshots.
253rd of 367, with limits
$3,701 a month
356th of 367, with limits
$17,371 a month
3rd cheapest of 367
$634 a month
Always-on AI employees
50 machines 24/7 · 2 vCPU / 4 GB
An assistant that lives on its machine all month fits exe.dev and boat, which keep their disks; an OpenAI container is deleted after 20 idle minutes.
15th cheapest of 366
$3,833 a month
341st of 366, with limits
$13,140 a month
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
This is what OpenAI Containers are built for: the model runs Python in the same API call; exe.dev and boat are full machines, not code interpreters.
235th of 345, with limits
$175 a month
194th of 345, with limits
$6,000 a month
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
OpenAI containers accept no inbound connections, exe.dev's Personal plan stops at 50 VMs at once, and boat gives each user sandbox token-protected URLs.
257th of 361, with limits
$1,226 a month
361st of 361, with limits
$3,780 a month
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
265th of 360, with limits
$5,250 a month
191st of 360, with limits
$30,000 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
283rd of 364, with limits
$1,050 a month
360th of 364, with limits
$5,760 a month
10th cheapest of 364
$200 a month
CI runners
40 at once · 8 vCPU / 16 GB · 6,000 sessions of 12 min a month
CI needs Docker, root and open internet: exe.dev has all three, OpenAI Containers have none by default, and boat bills per second only while jobs run.
288th of 377, with limits
$504 a month
345th of 377, with limits
$1,728 a month
4th cheapest of 377
$86 a month
24/7 dev boxes
1 machine 24/7 · 4 vCPU / 8 GB
exe.dev and boat both make good 24/7 dev boxes with root, SSH and a disk that lasts; OpenAI containers have no SSH and no persistent disk.
25th cheapest of 368
$35 a month
362nd of 368, with limits
$1,051 a month
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
OpenAI has a hosted browser for the Agents API computer_use tool, exe.dev VMs are headless, and boat streams a 60fps desktop you can embed.
240th of 369, with limits
$1,055 a month
351st of 369, with limits
$5,280 a month
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
130th of 367, with limits
$530 a month
328th of 367, with limits
$1,440 a month
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
124th of 346, with limits
$278 a month
328th of 346, with limits
$1,755 a month
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
166th of 338, with limits
$5,490 a month
311th of 338, with limits
$35,100 a month
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
Many isolated machines with open internet run on exe.dev and boat; OpenAI's Code Interpreter and Hosted Shell containers start with no internet.
60th of 360, with limits
$263 a month
308th of 360, with limits
$870 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 itCan'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 itCan't run it

Key features

Featureexe.devOpenAI Containersboat
What it isLinux VMs you rent and reach over SSH and HTTPSA sandbox tool the model uses inside OpenAI's APIA cloud VM you create, keep, stop and reach from outside
IsolationKVM VM with Cloud Hypervisor; you can't choose the kernelA fully sandboxed virtual machine; hypervisor not namedFull VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts
Root and DockerRoot, systemd and DockerCommands do not run with sudo; no Docker documentedRoot, systemd and Docker on every machine
Nested virtualizationEnterprise onlyNo /dev/kvm documentedYes, /dev/kvm on every plan
Files after the sessionDisk persists and is streamed to a second server; no snapshotsData is discarded when the container expiresDisk saved every minute and on stop; a stopped sandbox costs nothing and comes back
LifetimeNo cap; VMs run until you stop themExpires after 20 minutes without useNo session cap on paid plans; you set the time to live
Fork and copycp copies a VM's disk and config into a new VMNo forkFork a running sandbox; named snapshots as templates
Custom imageBoot from your own Docker imageFixed Debian 12 image; you upload files into each containerNamed snapshots of a set-up machine, reused as templates; no Docker images
Inbound accessSSH and an HTTPS proxy for ports 3000 to 9999; no public IP or raw TCPNone; you reach the container only through the APISSH, HTTPS URLs for up to 50 ports, raw TCP
Outbound internetOpen internetCode Interpreter and Hosted Shell: off until an admin sets a domain allowlistOpen internet on every plan
Keeping API keys out of the sandboxIntegrations inject secrets at the network edge for any HTTP hostdomain_secrets: a sidecar adds the real header for approved domainsCredentials proxy for model providers and any HTTPS API; switch accounts when credits run out
Coding agentsClaude Code, Codex, Pi and Shelley; only Shelley takes prompts through the APIAgents API (beta) drives a managed Codex harness with steering and eventsSeven harnesses, including Claude Code and Codex, with one prompt, steer and events API
Desktop and computer useHeadless; no desktopHosted browser for the Agents API computer_use tool60fps desktop and Chromium, computer use, embeddable stream
Regions9 regions in the US, Europe, Asia and AustraliaUS or EU processing for Code InterpreterEU only: Germany, Finland, France
Every feature Battleships tracks (43)
Featureexe.devOpenAI Containersboat
Full VM (own kernel)YesYesYes
Docker insideYesNoYes
Nested virtualizationYesNoYes
RootYesNoYes
SystemdYesNot publishedYes
Desktop GUINoYesYes
BrowserYesYesYes
Computer-use APINoYesYes
SSHYesNoYes
Persistent diskYesNoYes
Pause/resumeYesNoYes
Automatic snapshotsNoNoYes
Fork/cloneYesNoYes
Live fork (no pause)YesNoYes
Memory forkNoNoNo
Custom image (Docker or snapshot)YesNoYes
≥24 h sessionsYesYesYes
Idle auto-stopNoYesNo
Wake on requestNoNoNo
HTTPS preview URLsYesNoYes
Raw TCP inboundNoNoYes
Public IPv4NoNoNo
Egress allowlistNoYesNo
Secret proxyYesYesYes
Secret proxy for any APIYesYesYes
Preinstalled agentsYesNoYes
Agent harness APIYesYesYes
MCP serverYesNoNo
GPUNoNoNo
WindowsNoNoNo
Arm64NoNoNo
Self-hostingNoYesNo
BYOCYesNoNo
Open sourceNoNoNo
Scoped API keysYesNot publishedYes
Spend limitsNot publishedNot publishedYes
Usage per sandbox (API)YesNoYes
Audit logsNot publishedNot publishedNo
SSOYesYesNo
SOC 2NoYesNo
HIPAANoYesNo
EU data residencyYesYesYes
Zero data retentionNot publishedNot publishedYes

Performance

exe.devNot measured
OpenAI ContainersNot measured
boat26.69 runs/s

Neither exe.dev nor OpenAI Containers is in the hpc-sandbox-benchmarks run, so there is no comparable CPU measurement for either, and OpenAI does not publish how many vCPU each container size gets. boat did 26.69 runs per second on that Node.js build-and-test loop at 4 vCPU / 8 GB. We don't guess how the other two would score.

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

Scenarioexe.dev, a monthOpenAI Containers, a monthboat, 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
$35 · Personal$228 · API pay as you go · with limits$20 · $20/mo
One agent that never stops
4 vCPU / 8 GB, 50 GB disk, running 24/7 all month
$35 · Personal$1,051 · API pay as you go · 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
$1,848 · Personal$11,405 · API pay as you go · 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
$530 · Personal · with limits$1,620 · API pay as you go · with limits$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
$1,050 · Personal · with limits$6,000 · API pay as you go · with limits$2,000 · $2000/mo · with limits

exe.dev: exe.dev Personal is a flat monthly pool your VMs share, billed whether they are busy or idle; standalone VMs bill per second at $0.105 per 2 vCPU / 4 GiB per hour.

OpenAI Containers: OpenAI bills each container session by the minute for the memory size you pick, with a 5-minute minimum, and model tokens are billed on top. There is no plan fee.

OpenAI Containers: Your monthly plan fee is all usage credit, spent per second only while sandboxes run. A stopped sandbox costs nothing and keeps its disk.

Limits in those scenarios

OpenAI Containers do not fit any of the five scenarios as written: no persistent disk, no Docker, no internet by default in Code Interpreter and Hosted Shell, and the vCPU behind each size is not published. exe.dev fits the single-agent and 50-agent scenarios, but its Personal plan stops at 50 VMs at once, so 300 user sandboxes or 1,000 jobs at once don't fit. OpenAI does not publish how many containers can run at once. On boat the 1,000-job burst is limited by starts per minute, so even the top plan queues those starts.

Scenarioexe.devOpenAI Containersboat
One coding agent, workdays
  • flat pool: the tier is billed whether used or not
  • no open internet: sandboxes reach only an allowlist (domains your org admin adds to the allow list)
  • missing persistent disk
  • machine size not published
  • different kind of product: code interpreter
None that bite
One agent that never stops
  • flat pool: the tier is billed whether used or not
  • no open internet: sandboxes reach only an allowlist (domains your org admin adds to the allow list)
  • missing persistent disk
  • machine size not published
  • different kind of product: code interpreter
None that bite
50 agents in parallelNone that bite
  • no open internet: sandboxes reach only an allowlist (domains your org admin adds to the allow list)
  • missing persistent disk, Docker inside
  • machine size not published
  • different kind of product: code interpreter
None that bite
Sandboxes for your users
  • Personal: max 50 concurrent
  • no open internet: sandboxes reach only an allowlist (domains your org admin adds to the allow list)
  • machine size not published
  • different kind of product: code interpreter
  • not confirmed: how many machines can run at once (you need 300; the typical published limit is 50)
None that bite
1,000 short jobs at once
  • Personal: max 50 concurrent
  • no open internet: sandboxes reach only an allowlist (domains your org admin adds to the allow list)
  • machine size not published
  • different kind of product: code interpreter
  • not confirmed: how many machines can run at once (you need 1,000; the typical published limit is 50)
  • 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)

Which one should you use?

Use exe.dev when

you want a Linux VM you keep, booted from your own Docker image, in a region near your users.

  • A machine that stays. Useful for dev boxes and long agent work: exe.dev VMs keep their disk and run until you stop them.
  • Your own Docker image. Useful if your setup lives in a Dockerfile: exe.dev boots each VM straight from your own image.
  • Regions around the world. Useful if your users are far from Europe: exe.dev runs in nine regions across the US, Europe, Asia and Australia.

Use OpenAI Containers when

your app already calls OpenAI models and the model only needs to run short pieces of code on files you give it.

  • Built into the model call. Useful if your app already calls OpenAI models: one tool line in a request gives the model a place to run code.
  • Locked-down network by default. Useful if code must only reach chosen hosts: Code Interpreter and Hosted Shell have no outbound access until an admin allows domains.
  • Nothing to keep running. Useful for short jobs: there is no plan fee, and an unused container expires on its own after 20 minutes.

Where boat fits

If your agents do real work for hours, OpenAI Containers are too short-lived and locked down, and exe.dev gives you the machine but no screen, no snapshots and only one agent behind its API. boat gives each agent a full VM that keeps its disk, plus a desktop, saved state every minute and one API to drive agents inside from outside.

State saved every minute

An OpenAI container throws its files away after 20 idle minutes, and exe.dev keeps the disk but has no snapshot to roll back to after a bad agent step. boat snapshots every minute and can fork a running sandbox.

A screen your agents can use

exe.dev VMs are headless, so you set up and stream a desktop yourself. OpenAI's hosted browser only works through its Agents API beta. boat streams a 60fps desktop with Chromium that any agent can drive.

Drive agents inside from outside

On exe.dev only Shelley takes prompts through the API, so Claude Code means scripting shell sessions. OpenAI's Agents API drives only its own Codex harness. boat prompts, steers and streams seven harnesses through one API.

Use boat when your agents need a real machine for hours: root, Docker, a desktop, state saved every minute, ports you can reach and one API to drive agents inside from outside. Compare it one to one: boat vs exe.dev and boat vs OpenAI Containers.

Questions people ask

Is exe.dev cheaper than OpenAI Containers?

In our scenarios, yes: one agent running all month is $35 a month on exe.dev and $1,051 on OpenAI, and 50 agents in parallel is $1,848 against $11,405. OpenAI also bills model tokens on top, and its containers do not fully fit these scenarios. boat comes to $26 and $317 for the same two.

Can OpenAI Containers run Docker?

OpenAI's docs say hosted shell commands do not run with sudo, and no Docker support is documented. exe.dev and boat both give you root, systemd and Docker.

How long does each one last?

An OpenAI container expires after 20 minutes without use, and its data is discarded. exe.dev VMs run until you stop them and keep their disk. boat has no session cap on paid plans and keeps the disk when a sandbox stops.

Which is faster?

We can't say: neither exe.dev nor OpenAI Containers has a comparable CPU measurement, and OpenAI does not publish vCPU per container size. boat scored 26.69 runs per second on the hpc-sandbox-benchmarks Node.js loop.

Can I open a web app running inside them?

On exe.dev, yes, through its HTTPS proxy for ports 3000 to 9999. OpenAI containers have no ports, URLs or SSH. boat gives each sandbox HTTPS URLs for up to 50 ports, raw TCP and SSH.

Does either have a desktop for computer use?

exe.dev VMs are headless. OpenAI has a hosted browser for the computer_use tool in its Agents API beta. boat streams a 60fps desktop with Chromium that you can embed in your own app.

Try boat

Install the CLI, then run boat new.

7-day free trial

More comparisons