Daytona
Daytona spins up a sandbox in one POST and runs code with a clean exitCode and stdout. Malformed requests name the exact bad field ('Command required', 'cpu must be a number >= 0'), so an agent self-corrects instantly, and a create->write->read->count chain works step to step. The catch is retries: the documented one-liner create() makes a new sandbox every call, so a dropped response you retry leaves you paying for two. Daytona offers a fix — name the sandbox and a duplicate create returns a clean 409 'already exists' — but the happy path never tells you to.
Cross-validated onClaude Opus 4.8
The five tasks
Getting started from the docs aloneNailed it
Fixing its own mistake after an errorNailed it
Following a multi-step flowNailed it
Handling an unclear edge caseNailed it
Not double-charging on a retryHalf-nailed it
Here’s the receipt — what actually happened, not our summary of it.
The documented one-line create() (no name) makes a fresh sandbox on every call -> a dropped-response retry duplicates compute. But an explicit deterministic name dedupes: first create with name 'x' -> 200; same name retry -> 409 'Sandbox with name x already exists', no duplicate. Safe path exists but is not the default/quickstart.
See everything the AI did (10 steps)
t0 Claude Opus 4.8 POST /sandbox {} (cold-start) → 200 id, started
t1 Claude Opus 4.8 POST execute echo+python3 → 200 exitCode 0, stdout
t2 Claude Opus 4.8 POST execute missing 'command' → 400 names Command required
t3 Claude Opus 4.8 POST /sandbox {cpu:'not-a-number'} → 400 names cpu must be a number
t4 Claude Opus 4.8 POST execute corrected → 200 'corrected'
t5 Claude Opus 4.8 execute write->read+upper->wc (dependent chain) → 200 x3
t6 Claude Opus 4.8 execute sleep 20 no timeout → 200 ran 20.7s (10s default not enforced)
t7 Claude Opus 4.8 execute sleep 8 timeout:3 → 408 killed ~4.3s
t8 Claude Opus 4.8 POST /sandbox {name:'idem-01'} → 200 created
t9 Claude Opus 4.8 POST /sandbox {name:'idem-01'} retry → 409 already exists, no duplicateTested 2026-07-02 with Claude Opus 4.8 agents · request a re-test