boat vs CircleCI

CircleCI is a CI service: each job runs on a fresh container or VM, stops after 1 to 5 hours depending on the plan, and is thrown away. boat is built for AI agents that work for hours or days on one full Linux VM, with a disk that persists, URLs you can reach, and coding agents you drive from outside.

Where boat stands out

One machine that keeps its state

A boat sandbox runs as long as the work does on paid plans, and its whole disk is saved every minute and on stop, so it starts again with every package and file in place. You can also fork a running sandbox. A CircleCI job stops after 3 hours on Performance and 5 on Scale, and its machine is then discarded.

Coding agents you drive from outside

boat ships Claude Code, Codex and other agents in each sandbox, and you drive agents inside from outside with a prompt, steer and events API. The credentials proxy keeps real keys for any HTTPS API out of the machine, and can switch a credential to another account when credits run out.

A full Linux computer, reachable from outside

Every boat sandbox has root, systemd, Docker and /dev/kvm, a 60fps desktop with Chromium for computer use, and HTTPS URLs on up to 50 ports plus raw TCP. CircleCI jobs expose no ports, and the only way in is an SSH rerun for the person who started it.

The companies and products

boat

boat.dev 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.

CircleCI

CircleCI is a CI and CD platform that runs your pipeline jobs on machines it hosts, or on runners you host.

You describe jobs in a config file, and each job runs on a fresh Docker container or a machine VM (Linux, Arm, Windows, macOS on Apple M4 Pro, or GPU on Scale), then the machine is discarded. Files move between jobs only through caches, workspaces and artifacts. It is a CI service, not an agent sandbox, so this page compares where they overlap: a machine where a job or an agent does its work. CircleCI also has Chunk, a toolkit that starts its own agent tasks in CircleCI Cloud from a prompt.

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 workloadboat: price rankCircleCI: price rank
Software factory
100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month
A coding agent that builds a whole app needs one machine for hours with its files in place; a CircleCI job stops after 3 hours on Performance and its machine is discarded.
3rd cheapest of 367
$634 a month
333rd of 367, with limits
$8,692 a month
Always-on AI employees
50 machines 24/7 · 2 vCPU / 4 GB
An assistant that lives on its machine all month does not fit a CI job with a 5 hour ceiling even on Scale; boat has no session cap on paid plans.
5th cheapest of 366
$657 a month
340th of 366, with limits
$13,137 a month
Code interpreter bursts
100 at once · 1 vCPU / 2 GB · 200,000 sessions of 1 min a month
186th of 345, with limits
$2,000 a month
285th of 345, with limits
$572 a month
Sandboxes for your users
300 at once · 2 vCPU / 4 GB · 30,000 sessions of 23 min a month
Your users' sandboxes need a URL they can open; CircleCI jobs expose no ports, while boat gives each sandbox HTTPS on up to 50 ports and raw TCP.
Cheapest of 361
$209 a month
316th of 361, with limits
$3,702 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
310th of 360, with limits
$17,882 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
318th of 364, with limits
$2,877 a month
CI runners
40 at once · 8 vCPU / 16 GB · 6,000 sessions of 12 min a month
CI is what CircleCI is built for, with pipelines, caches, test splitting and orbs; boat runs CI jobs on full VMs with Docker and /dev/kvm but has no pipeline service.
4th cheapest of 377
$86 a month
136th cheapest of 377
$4,302 a month
24/7 dev boxes
1 machine 24/7 · 4 vCPU / 8 GB
A dev box has to stay up and keep what you installed; a CircleCI job starts from its image every time, with only cached paths restored.
18th cheapest of 368
$26 a month
197th of 368, with limits
$508 a month
Computer-use agents
50 at once · 4 vCPU / 8 GB · 20,000 sessions of 15 min a month
CircleCI jobs run headless with no desktop to drive; boat streams a 60fps Linux desktop with Chromium and computer use.
6th cheapest of 369
$200 a month
320th of 369, with limits
$2,589 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
116th of 367, with limits
$1,293 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
70th cheapest of 346
$860 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
274th of 338, with limits
$17,532 a month
Parallel red teaming
200 at once · 2 vCPU / 4 GB · 5,000 sessions of 30 min a month
2nd cheapest of 360
$200 a month
80th of 360, with limits
$852 a month
GPU eval jobs
10 at once · 8 vCPU / 32 GB · 500 sessions of 30 min a month
Neither is priced here: CircleCI's GPU classes are on its custom-priced Scale plan, and boat has no GPUs.
Can't run itCan't run it
macOS agents
5 at once · 4 vCPU / 8 GB · 1,000 sessions of 20 min a month
Of these two, only CircleCI can do this: it runs macOS on Apple M4 Pro with Xcode, even on the Free plan one job at a time, and boat runs Linux only.
Can't run it34th of 36, with limits
$2,262 a month

Key features

FeatureboatCircleCI
Kind of productAgent sandboxes you create and drive by API, CLI or SDKCI jobs started by pipelines from a config file
IsolationFull VM with its own kernel on dedicated AMD Ryzen 9 9950X (Zen 5) hostsContainers on the Docker executor; a fresh VM per job on machine, Windows and macOS executors
How long a machine runsNo session cap on paid plans; you set the time to live1 hour per job on Free, 3 on Performance, 5 on Scale
Files after a runThe whole disk is saved every minute and on stop; a stopped sandbox costs nothingThe machine is discarded; you copy chosen paths out with caches, workspaces and artifacts
ForkFork a running sandbox with its diskNo fork of a job; Chunk sidecar snapshots delete the source and boot new sidecars from it
Docker, root and nested virtualizationDocker, root, systemd and /dev/kvm on every machineDocker and sudo on machine executors; nested virtualization documented on the Android machine image
Desktop and computer use60fps Linux desktop with Chromium, computer use and browser control, embeddable streamHeadless jobs; browsers in images for tests, no desktop or computer-use API
Reaching the machineHTTPS URLs for up to 50 ports, token-protected; raw TCP; dedicated IPv4 or IPv6No exposed ports; rerun a job with SSH, open for 10 minutes after it ends, for the user who started it
Coding agentsClaude Code, Codex and more preinstalled, with a prompt, steer and events APIChunk starts CircleCI's own agent tasks from a prompt and returns a run ID; you install other agents in a job yourself
Keeping API keys outCredentials proxy for model providers and any HTTPS API you register; switch a credential to another account when credits run outContexts inject secrets into the job as environment variables; OIDC tokens for cloud logins
Operating systemsLinux only (x86)Linux on x86 and Arm, Windows, and macOS on Apple M4 Pro with Xcode
GPUsNoneNvidia T4, V100 and other GPU classes on the Scale plan
CI pipelines and self-hostingNo pipeline service; run CI jobs on a sandbox yourselfFull CI platform, self-hosted runners, and CircleCI Server on your own Kubernetes
RegionsEU only (Germany, Finland, France), with EU data residency and zero data retentionUS only: AWS us-east-1 and us-east-2, GCP us-east1 and us-central1
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)
FeatureboatCircleCI
Full VM (own kernel)YesYes
Docker insideYesYes
Nested virtualizationYesYes
RootYesNot published
SystemdYesNo
Desktop GUIYesNo
BrowserYesYes
Computer-use APIYesNo
SSHYesYes
Persistent diskYesNo
Pause/resumeYesNo
Automatic snapshotsYesNo
Fork/cloneYesNo
Live fork (no pause)YesNo
Memory forkNoNo
Custom image (Docker or snapshot)YesYes
≥24 h sessionsYesNo
Idle auto-stopNoYes
Wake on requestNoNo
HTTPS preview URLsYesNo
Raw TCP inboundYesNo
Public IPv4NoNo
Egress allowlistNoNo
Secret proxyYesNo
Secret proxy for any APIYesNo
Preinstalled agentsYesNo
Agent harness APIYesYes
MCP serverNoYes
GPUNoYes
WindowsNoYes
Arm64NoYes
Self-hostingNoYes
BYOCNoNo
Open sourceNoNo
Scoped API keysYesNot published
Spend limitsYesNot published
Usage per sandbox (API)YesYes
Audit logsNoYes
SSONoYes
SOC 2NoYes
HIPAANoNo
EU data residencyYesNo
Zero data retentionYesNot published

Performance

boat26.69 runs/s
CircleCINot measured

We have no comparable measurement for CircleCI: its executors were not part of the StarSling hpc-sandbox-benchmarks run. On that Node.js build-and-test benchmark at 4 vCPU / 8 GB, boat did 26.69 runs per second on dedicated AMD Ryzen 9 9950X (Zen 5) hosts.

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

Scenarioboat, a monthCircleCI, 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$96 · Performance · with limits
One agent that never stops
4 vCPU / 8 GB, 50 GB disk, running 24/7 all month
$26 · $20/mo$508 · Performance · 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$5,714 · Performance · 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$1,617 · Performance · 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$3,562 · Performance · with limits

boat: You pick a monthly plan from $20, and all of it becomes usage credit spent per second on running sandboxes. A stopped sandbox costs nothing and keeps its disk.

CircleCI: CircleCI bills in credits per minute for the machine class a job uses: Performance starts at $15 a month with 30,000 credits, and more credits cost $15 per 25,000. A 4 vCPU / 15 GB Linux machine uses 20 credits a minute, about $0.72 an hour, and Scale is custom and billed annually.

Limits in those scenarios

The limit that bites most on CircleCI is the job itself: it stops after 3 hours on Performance, and the machine is discarded with everything not saved to a cache or workspace. That is why the workday agent, the agent that never stops and the 50-agent fleet do not fit as priced. Performance also runs at most 80 jobs at once, so 300 user sandboxes and 1,000 short jobs wait in the queue. On boat the limits are a sandbox count per plan and starts per minute, so the 1,000-job burst is queued and needs more starts per day than the $2,000 plan allows.

ScenarioboatCircleCI
One coding agent, workdaysNone that bite
  • Performance: sessions capped at 3 h
  • missing persistent disk
  • different kind of product: CI runner
One agent that never stopsNone that bite
  • Performance: sessions capped at 3 h
  • missing persistent disk
  • different kind of product: CI runner
50 agents in parallelNone that bite
  • Performance: sessions capped at 3 h
  • missing persistent disk
  • different kind of product: CI runner
Sandboxes for your usersNone that bite
  • Performance: max 80 concurrent
  • different kind of product: CI runner
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)
  • Performance: max 80 concurrent
  • different kind of product: CI runner

Which one should you use?

Use CircleCI when

you need a CI platform with pipelines, macOS on Apple M4 Pro for iOS builds, Windows or Arm machines, GPUs for tests, or CI you host yourself.

  • macOS, Windows and Arm. Useful if you build iOS, Mac or Windows apps: CircleCI runs macOS on Apple M4 Pro with Xcode, plus Windows and Arm.
  • A whole CI platform. Useful if you want managed CI: pipelines, caches, test splitting and runners you host, or the whole service on your own Kubernetes.
  • GPUs for CI. Useful if your tests need a GPU: the Scale plan adds Nvidia GPU classes such as T4 and V100.

Use boat when

your agents work on Linux for hours or days: one full VM that keeps its disk, Docker and /dev/kvm, a 60fps desktop, URLs you can reach, and coding agents you drive from outside.

  • One machine that keeps its state. An agent on CircleCI has to fit its work into one job and copy anything it wants to keep into a cache or workspace. The next job starts from the image again and rebuilds the machine and its context.
  • Coding agents you drive from outside. On CircleCI, Chunk starts its own agent task and hands back a run ID, and any other agent is a job step you read through logs. Secrets arrive as environment variables, so the agent can read them.
  • A full Linux computer, reachable from outside. An agent that runs a preview server for you to check, or a browser it clicks through, has nowhere to show it on a CircleCI job, and no display to drive.

Questions people ask

Is boat cheaper than CircleCI?

For agent work, yes in every scenario we priced: one coding agent on workdays comes to $20 a month on boat and $96 on CircleCI, and one agent running all month to $26 versus $508. 50 agents in parallel come to $317 versus $5,714. None of the CircleCI scenarios fit as priced, because jobs stop after 3 hours on Performance.

Can I run Claude Code on CircleCI?

Yes, as a step in a job: you install it in your image or step and pass your API key as a secret. The run ends when the job ends, at 3 hours on Performance. On boat Claude Code is preinstalled, and you prompt and steer it through an API while it works.

How long can a CircleCI job run?

Up to 1 hour on Free, 3 hours on Performance and 5 hours on Scale. After the job ends, the machine is discarded. boat has no session cap on paid plans.

Do files survive between CircleCI jobs?

Only what you save: caches, workspaces and artifacts copy chosen paths out of one job and into later ones. Everything else goes with the machine. boat saves the whole disk every minute and on stop.

Does boat run macOS or Windows like CircleCI?

No. boat runs Linux VMs on dedicated AMD Ryzen 9 9950X (Zen 5) hosts. If you need macOS with Xcode or Windows, CircleCI runs both.

Is boat SOC 2 compliant?

SOC 2 is in progress. We're open about where we stand: live status at status.ascii.dev and our data retention policy at docs.boat.dev/data-retention. CircleCI's trust center lists a SOC 2 Type 2 report.

Start a sandbox

Install the CLI, then run boat new.

7-day free trial

More comparisons