Together Code Sandbox vs Unikraft Cloud
Together Code Sandbox starts VMs from Docker-image snapshots and can save their memory when they end, but Together has to turn it on for your organization. Unikraft Cloud is self-serve today: it turns a Dockerfile into a tiny microVM that sleeps when idle and wakes in milliseconds on the next request.
The companies and products
Together Code Sandbox
Together AI is a cloud for running and training AI models, and Code Sandbox is its product for running code in isolated VMs.
You build a snapshot from a Docker image or Dockerfile on Together's builder, then start sandboxes from it and run commands and file operations through the together-sandbox SDK or CLI. When a sandbox ends you can save its disk, and its memory too, as a new snapshot to start more sandboxes from. It is aimed at model-generated code, agent tool calls and reinforcement learning rollouts, and it must be enabled for your organization by Together. Together also sells Code Interpreter, a separate API that runs Python code in short sessions.
Unikraft Cloud
Unikraft Cloud is a microVM cloud from Unikraft Inc. that runs any Dockerfile-based workload as a minimal Linux microVM with millisecond cold starts and scale-to-zero.
Your Dockerfile becomes the VM image at build time, and each instance runs on a heavily customized Firecracker VMM, so it boots in milliseconds and can go into standby when no traffic arrives. It is a general compute platform built for dense, bursty work such as HTTP services, headless browsers and agent fleets, sold as flat self-serve plans plus Enterprise dedicated hosts, on-prem and bring your own cloud. It is not a dev machine you log into: instances are reached through services, the CLI and a sandbox plugin for commands and files.
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. “65th cheapest of 367” means 64 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 | Together Code Sandbox: price rank | Unikraft Cloud: price rank | boat: price rank |
|---|---|---|---|
| Software factory 100 at once · 4 vCPU / 8 GB · 2,200 sessions of 8 h a month A software factory needs Docker, root and often /dev/kvm; neither Together nor Unikraft documents Docker inside a sandbox, Unikraft keeps nested virtualization for Enterprise, and boat has all three on every machine. | 65th of 367, with limits $528 a month | Can't run it | 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 needs room to work; Unikraft's Team pool is 8 GiB shared by every running instance, and Together's self-serve Code Interpreter ends each session after 60 minutes. | 152nd of 366, with limits $1,095 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 both: Together's Code Interpreter runs Python in sessions billed per 60 minutes, while Unikraft wakes a sleeping microVM in milliseconds but caps self-serve plans at 24 running instances. | 326th of 345, with limits $2,190 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 Unikraft Pro holds 5,000 sleeping instances but only 24 running ones, and every Together port is public with preview URLs still coming soon, so boat's token-protected HTTPS URLs need less work for hundreds of users. | 234th of 361, with limits $900 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 Both can branch runs from a warm state: Together saves a sandbox with its memory when it ends, and Unikraft checkpoints a running microVM, but Together's VMs need Together to enable them and Unikraft's self-serve pools are small. | 315th of 360, with limits $21,900 a month | Can't run it | 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 | 258th of 364, with limits $450 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 CI jobs that build Docker images or run Android emulators need a container runtime and /dev/kvm, which boat has on every plan and which Unikraft offers only on Enterprise. | 251st of 377, with limits $180 a month | Can't run it | 4th cheapest of 377 $86 a month |
| 24/7 dev boxes 1 machine 24/7 · 4 vCPU / 8 GB Unikraft's Team pool keeps one box around all month and Together's priced product is a 60-minute Python session, and neither offers SSH, so on both you work through a CLI or SDK instead of logging in. | 210th of 368, with limits $22 a month | 219th of 368, with limits $39 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 Computer-use agents need a desktop to see and click; boat streams one at 60fps, while Together and Unikraft both leave you to build your own inside the image. | 184th of 369, with limits $600 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 | 301st of 367, with limits $900 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 | 219th of 346, with limits $180 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 | 124th of 338, with limits $3,600 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 | 167th of 360, with limits $150 a month | Can't run it | 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 | Together Code Sandbox | Unikraft Cloud | boat |
|---|---|---|---|
| Isolation | A VM per sandbox on Together's infrastructure | Minimal Linux microVM on a customized Firecracker VMM | Full VM with its own kernel on dedicated AMD Ryzen 9 9950X hosts |
| Getting started | The SDK and CLI must be enabled for your organization by Together; only Code Interpreter is self-serve | Self-serve plans, with a free Hobby plan and no card | Sign up and start a sandbox from the API, CLI or dashboard |
| Machine size | 0.1 to 16 cores, 1 to 8 GB of memory per core; disk size fixed | Plan pool shared by all running instances: 2 vCPU / 4 GiB, 8 vCPU / 8 GiB or 24 vCPU / 32 GiB | 4 vCPU / 8 GB by default, up to 16 vCPU / 32 GB per sandbox on the $100 plan and above |
| Docker, root and systemd | Commands run as user 1000 by default, root on request; Docker inside not documented | Runs as root; the Dockerfile becomes the VM image, with no container runtime inside documented | Docker, systemd and root on every machine |
| Nested virtualization | Not documented | Yes, with a per-instance flag and permission, Enterprise only | Yes, /dev/kvm for Android emulators and VMs on every plan |
| Shell access | Commands, interactive shells and files through the SDK and CLI; no SSH | No SSH yet; commands and files through the sandbox plugin and CLI | SSH, plus exec and files over the API |
| Idle and wake | Time to live counts from creation; no idle detection and no wake on request | Standby after a 1 second idle cooldown by default; incoming traffic wakes it in milliseconds | Runs until you stop it or its time to live ends; started again by API |
| Snapshots and fork | End a sandbox with a snapshot of its disk and memory, then start many sandboxes from it; no live fork | Checkpoint memory and volumes of a running microVM with a pause of a few milliseconds, then start new instances from it | Disk saved every minute and on stop; fork a running sandbox while the original keeps running |
| Reaching the sandbox | All ports public; preview URLs coming soon; an experimental inbound allowlist by IP or token | Services on its load balancer: HTTP on 80, HTTPS on 443, TLS-wrapped TCP on other ports; no public IP per instance | HTTPS URLs for up to 50 ports, token-protected by default; raw TCP; dedicated IPv4 or IPv6 |
| Desktop and browser | None; headless command and file access only | None built in; you can run your own headless browser from a Dockerfile | Linux desktop streamed at 60fps, Chromium and computer-use tools |
| Coding agents | Run your own agent through execs; a Harbor guide for agent evals | None preinstalled; you bring the agent in your own image | Claude Code, Codex, OpenCode and more preinstalled, with a prompt, steer and events API |
| Keeping API keys out of the sandbox | No credentials proxy documented | Network shield can inject secrets into traffic, Enterprise only, limited access | Credentials proxy for model providers and any HTTPS API, on every plan |
| Hosted code interpreter | Code Interpreter API runs Python in sessions billed per 60 minutes | None | No separate product; run code through exec in a sandbox |
| Regions | Not published | Dallas, Frankfurt, San Francisco, Singapore and Washington DC by default; more on request | EU only (Germany, Finland, France) |
Every feature Battleships tracks (43)
| Feature | Together Code Sandbox | Unikraft Cloud | boat |
|---|---|---|---|
| Full VM (own kernel) | Yes | Yes | Yes |
| Docker inside | Not published | No | Yes |
| Nested virtualization | No | Yes | Yes |
| Root | Yes | Yes | Yes |
| Systemd | Not published | Not published | Yes |
| Desktop GUI | No | No | Yes |
| Browser | No | No | Yes |
| Computer-use API | No | No | Yes |
| SSH | No | No | Yes |
| Persistent disk | Yes | Yes | Yes |
| Pause/resume | Yes | Yes | Yes |
| Automatic snapshots | No | Yes | Yes |
| Fork/clone | Yes | Yes | Yes |
| Live fork (no pause) | No | Yes | Yes |
| Memory fork | Yes | Yes | No |
| Custom image (Docker or snapshot) | Yes | Yes | Yes |
| ≥24 h sessions | Yes | Yes | Yes |
| Idle auto-stop | No | Yes | No |
| Wake on request | No | Yes | No |
| HTTPS preview URLs | Yes | Yes | Yes |
| Raw TCP inbound | No | Not published | Yes |
| Public IPv4 | No | No | No |
| Egress allowlist | No | Yes | No |
| Secret proxy | No | Yes | Yes |
| Secret proxy for any API | No | Yes | Yes |
| Preinstalled agents | No | No | Yes |
| Agent harness API | No | No | Yes |
| MCP server | Yes | No | No |
| GPU | No | Yes | No |
| Windows | No | No | No |
| Arm64 | No | Yes | No |
| Self-hosting | No | Yes | No |
| BYOC | No | Yes | No |
| Open source | No | No | No |
| Scoped API keys | Not published | Not published | Yes |
| Spend limits | Yes | Not published | Yes |
| Usage per sandbox (API) | Yes | No | Yes |
| Audit logs | Not published | Yes | No |
| SSO | Yes | No | No |
| SOC 2 | Yes | Yes | No |
| HIPAA | No | Yes | No |
| EU data residency | Not published | Yes | Yes |
| Zero data retention | Not published | Not published | Yes |
Performance
There is no comparable CPU measurement for Together Code Sandbox or Unikraft Cloud: neither was in the StarSling hpc-sandbox-benchmarks run that measured boat at 26.69 runs per second at 4 vCPU / 8 GB. Unikraft states cold starts under 10 ms, which is its own figure and measures start time, not CPU speed.
Node.js build-and-test loop at 4 vCPU / 8 GB, higher is better. Measured with the open hpc-sandbox-benchmarks suite. Together Code Sandbox and Unikraft Cloud 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.
| Scenario | Together Code Sandbox, a month | Unikraft Cloud, a month | boat, 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 | $5 · Together pay-as-you-go (prepaid credits; Code Interpreter only) · with limits | $39 · Hobby | $20 · $20/mo |
| One agent that never stops 4 vCPU / 8 GB, 50 GB disk, running 24/7 all month | $22 · Together pay-as-you-go (prepaid credits; Code Interpreter only) · with limits | $39 · Hobby | $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 | $264 · Together pay-as-you-go (prepaid credits; Code Interpreter only) · with limits | Can't run it | $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 | $900 · Together pay-as-you-go (prepaid credits; Code Interpreter only) · with limits | Can't run it | $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 | $6,000 · Together pay-as-you-go (prepaid credits; Code Interpreter only) · with limits | Can't run it | $2,000 · $2000/mo · with limits |
Together Code Sandbox: Together lists Code Sandbox at $0.0446 per vCPU-hour and $0.0149 per GiB-hour, but the VMs must be enabled for your organization, so the table prices Code Interpreter: $0.03 per 60-minute session from prepaid credits, with a $5 minimum purchase.
Unikraft Cloud: Unikraft charges a flat monthly fee for a pool of running capacity: free for 2 vCPU / 4 GiB, $39 for 8 vCPU / 8 GiB, $199 for 24 vCPU / 32 GiB, with sleeping instances not counted. It publishes no per-hour rate, so anything bigger is an Enterprise quote.
Unikraft Cloud: Plans start at $20 a month, and the whole fee becomes usage credit. You pay per second while a sandbox runs, and a stopped sandbox costs nothing and keeps its disk.
Limits in those scenarios
The Together column is Code Interpreter, and it fits no scenario: sessions last 60 minutes, nothing is kept after a session, it runs only Python, and the machine size is not published. Unikraft fits one agent, since a single 4 vCPU / 8 GB agent fills the Team pool, but 50 agents, sandboxes for your users and 1,000 short jobs are above every self-serve pool and need Enterprise. On boat the limit that bites is starts: at 1,000 short jobs at once, even the $2,000 plan queues them.
| Scenario | Together Code Sandbox | Unikraft Cloud | boat |
|---|---|---|---|
| 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 Together Code Sandbox when
you already run models on Together and want light sandboxes, from a tenth of a core, that you can save with their memory and branch from, or a simple Python runner billed per session.
- Memory snapshots to branch from. Useful for rollouts and test variants: end a sandbox with its memory saved and start many copies with processes still running.
- Sandboxes next to your models. Handy if you already run inference or fine-tuning on Together: sandboxes and models share one account and API key.
- Very small machines and a Python runner. Good for many light jobs: sandboxes start at a tenth of a core, and a Python interpreter API bills per session.
Use Unikraft Cloud when
you run many small services or headless browsers that sleep most of the time and must wake in milliseconds, need US or Asia regions, or want GPUs, on-prem or your own cloud under an Enterprise contract.
- Millisecond wake and scale-to-zero. Best for many small services that sleep most of the time and must answer the next request in milliseconds.
- Self-serve from day one. You can sign up and run instances today on a free Hobby plan, without asking anyone to enable your account.
- Regions and your own hardware. Runs in the US, Frankfurt and Singapore, and Enterprise adds GPUs, arm64, dedicated hosts, on-prem or your own cloud.
Where boat fits
Together and Unikraft both run code in small VMs that you drive through an SDK or CLI. If what you are really running is agents that work for hours, install tools, run Docker and serve apps, boat gives each one a whole machine you can sign up for today, with the agent and its keys already set up.
A whole machine the agent can work in
Neither Together nor Unikraft documents Docker inside a sandbox or offers SSH, and Unikraft keeps /dev/kvm for Enterprise. The workaround is baking every tool into the image up front. boat has root, systemd, Docker, SSH and /dev/kvm on every plan.
Agents, desktop and keys built in
On both, you build the agent, browser and desktop into your own image. Together has no credentials proxy and Unikraft's secret injection is Enterprise only, so keys sit inside a machine the agent controls. boat keeps them in a proxy outside.
Big fleets of full-size sandboxes, self-serve
Fifty agents at 4 vCPU / 8 GB are above every Unikraft self-serve pool, and Together's VMs need Together to turn them on. boat's paid plans run 100 to 2,000 sandboxes at once with no session cap and no sales call.
Use boat when your agents need a real machine to work in for hours: Docker, emulators, SSH, a desktop and a browser, coding agents you drive from outside, and fleets of full-size sandboxes without a sales call. Compare it one to one: boat vs Together Code Sandbox and boat vs Unikraft Cloud.
Questions people ask
Is Together Code Sandbox cheaper than Unikraft Cloud?
Together's only self-serve price is Code Interpreter at $0.03 per 60-minute session, which keeps no disk and does not fit an agent that works all day. Unikraft's $39 Team pool fits one 4 vCPU / 8 GB agent, but for 50 agents or hundreds of user sandboxes no self-serve Unikraft plan is big enough. On boat, 50 agents cost $317 a month and sandboxes for your users $200 a month.
Which is faster, Together Code Sandbox or Unikraft Cloud?
Neither has a comparable CPU measurement, so there is no fair speed ratio. Unikraft is built to start fast: its microVMs cold boot in milliseconds and wake on the next request. Together sandboxes have no wake on request, and you start them from snapshots through the SDK.
Can Together Code Sandbox or Unikraft Cloud run Docker?
Both build sandboxes from Docker images, but neither documents running Docker inside a running sandbox. A boat sandbox is a full Ubuntu VM with Docker, systemd and /dev/kvm ready to use.
Can I SSH into Together Code Sandbox or Unikraft Cloud?
No. Together gives you commands, interactive shells and files through its SDK and CLI, and Unikraft uses its sandbox plugin and CLI. You can SSH into every boat sandbox or drive it through its API.
Can I start using them today?
Unikraft Cloud yes: the Hobby plan is free with no card. Together's VM sandboxes must be enabled for your organization, so you ask Together first; only Code Interpreter is self-serve on prepaid credits.
Try boat
Install the CLI, then run boat new.
7-day free trial
More comparisons
- boat vs Together Code Sandbox
- boat vs Unikraft Cloud
- E2B vs Together Code Sandbox
- Daytona vs Together Code Sandbox
- Modal vs Together Code Sandbox
- Vercel Sandbox vs Together Code Sandbox
- Cloudflare Sandbox vs Together Code Sandbox
- Blaxel vs Together Code Sandbox
- Runloop vs Together Code Sandbox
- Tensorlake vs Together Code Sandbox
- Morph Cloud vs Together Code Sandbox
- CodeSandbox SDK vs Together Code Sandbox