Produkt · Sandboxes

Jeder Agent erhält seine eigene Linux-VM.

AI-Agenten auf dem eigenen Laptop laufen zu lassen ist ein Datenleck mit Anlauf. Sandboxes sind isolierte Cloud-VMs, die in unter einer Sekunde booten, am Platz Snapshots ziehen und nach dem Job wieder verschwinden - dasselbe reproduzierbare Linux, bei jedem Lauf.

sandbox · eu-west-1running
explorer
  • src/
  • Button.tsx
  • package.json
  • .codecourier/
  • persona.json
bash
$codecourier sandbox start
→ sb_8f3a · node-22-ts · eu-west-1 · bereit in 720ms
$pnpm install
→ 482 Pakete installiert · 6.1s
$pnpm tsc --noEmit
→ ✓ keine Fehler
$codecourier sandbox snapshot
→ snap_8f3a gespeichert · fortsetzbar
Das Problem

Lokale AI-Agenten lecken. Massiv.

Workstation-Drift

Node, Python, Docker, OS-Patches - jede Entwicklermaschine ist ein Einzelstück. Agenten erben dieses Chaos, und Ihre Reproduktionen reproduzieren nicht mehr.

Secrets verlassen das Haus

Agenten, die Ihre Shell lesen, lesen Ihre Tokens, Ihre Kube-Config, Ihre SSH-Keys. Ein falsch gesetztes Anführungszeichen genügt - und sie sind weg.

Workstations blockiert

Lange Migrationen, vollständige Test-Suites, parallele Refactors - alles geparkt auf dem Laptop, auf dem Ihre Entwicklerin eigentlich programmieren sollte.

Anatomie

Was eine Sandbox enthält.

Jede Sandbox ist eine echte Linux-VM - kein Container in einem geteilten Kernel. Sechs konkrete Komponenten, jede einzelne pro Template austauschbar.

linux vmisolated
vCPU
RAM
DISK
$ uname -r
6.8.0 · ubuntu 24.04
Linux-Kernel
Vorinstallierte CLIs
Projekt-Mount
Env-Variablen + Secrets
Netzwerk-Egress
Snapshot-Layer
Templates

Starten Sie aus einem bekannten Zustand.

Templates sind versionierte Base-Images. Pinnen Sie eine Runtime, fixieren Sie die Toolchain, liefern Sie jedem Agenten und jedem Lauf dieselbe VM - oder bauen Sie aus einem Dockerfile Ihr eigenes.

JS

Node 22 · TypeScript

Node 22, pnpm, Bun-kompatibler Registry-Mirror. tsc und vitest sind vorgewärmt.

Anpassen →
Py

Python 3.12 · Poetry

CPython 3.12, Poetry, uv, ruff und mypy. Gepinnte Wheels werden beim Boot gecached.

Anpassen →
Go

Go 1.23

Go 1.23 mit Module-Proxy, golangci-lint und air für Live-Reloads.

Anpassen →
Rs

Rust 1.80

Stable Rust, cargo, clippy, rust-analyzer. sccache ist standardmässig verdrahtet.

Anpassen →
Bn

Bun · TS

Bun-Runtime mit der vollen TypeScript-Toolchain. Snapshot-Resume in unter 300ms.

Anpassen →
···

Custom

Bringen Sie ein Dockerfile mit oder erweitern Sie eine Base. Einmal bauen, einmal snapshotten, im Team teilen.

Anpassen →
Tempo

Schnell genug, um sich lokal anzufühlen.

Cold-Boots in den EU- und US-Flotten gemessen - Produktions-p95, nicht der Marketing-Durchschnitt.

<1s
Cold-Boot
300ms
Snapshot-Resume
16 vCPU
Bis zu 32 GB RAM
EU + USA
Regionen, weitere folgen
Dateisystem

Dateien verhalten sich wie eine echte Platte.

Lesen, schreiben, beobachten und syncen - jede Operation läuft typsicher und idempotent durch dasselbe SDK.

Lesen und schreiben wie auf echter Platte.

Bytes rein, Bytes raus. Atomare Schreibvorgänge, mtime bleibt erhalten, grosse Dateien werden transparent gechunkt - keine Spezial-API für grosse Payloads.

/workspace
  • src/
  • ·Button.tsxM
  • ·Card.tsx
  • ·package.json
sdk.ts
await sandbox.files.write(
"src/Button.tsx",
source,
);
 
const out = await sandbox.files.read(
"src/Button.tsx"
);
Lifecycle

Pausieren, snapshotten, fortsetzen - dieselbe VM.

Jede Sandbox hat einen deterministischen Lifecycle. Einmal booten, den warmen Zustand snapshotten, dann beim nächsten Lauf aus diesem Snapshot fortsetzen - in einem Bruchteil der Cold-Boot-Zeit.

Snapshots enthalten die Platte und den kernelseitigen Zustand, sodass eine 30-Sekunden-Toolchain-Installation zu einem 300ms-Restore wird. Pausieren Sie, während der Agent auf einen Menschen wartet; setzen Sie in dem Moment fort, in dem die Antwort eintrifft.

Start
Snapshot
Pause
Resume
Kill
StartSnapshotPauseResume
Sicherheit

Gebaut für den Security-Review.

Isolation ist Standard, kein Checkbox-Feature. Jede Sandbox ist eine separate VM mit eigenem Kernel, eigener Platte und eigener Egress-Policy.

VM pro Agent

Keine geteilten Kernel, keine Sibling-Tenants. Jeder Agentenlauf erhält eine frische Linux-VM und gibt sie beim Teardown wieder ab.

Netzwerk-Egress-Kontrollen

Default-Deny ausgehend. Allow-List für Domains pro Template - oder ein schmaler Tunnel zu Ihren privaten Diensten und sonst nichts.

Verschlüsselte Volumes

Platten sind ruhend mit mandantenspezifischen Schlüsseln verschlüsselt. Snapshots erben den Verschlüsselungsumschlag und verlassen Ihre Region nie.

Zeitlich begrenzte Tokens

Secrets werden als kurzlebige Tokens injiziert, auf den Lauf gescoped. Sie laufen in dem Moment ab, in dem die Sandbox endet - keine übrig gebliebenen Credentials.

Audit-Log

Jeder Befehl, jeder Datei-Write und jeder Netzwerk-Call wird signiert und in ein unveränderliches Log geschickt. Lauf wiederholbar, forensisch verwertbar.

SOC 2 Type II

Jährliche SOC 2 Type II Reports, GDPR DPA hinterlegt, EU-Datenresidenz standardmässig. Beschaffung geht schneller durch.

Code · TypeScript SDK

Ein Aufruf, eine VM.

Sandbox starten, Befehl ausführen, Zustand snapshotten - alles aus typsicherem TypeScript. Kein YAML, kein separater Scheduler, keine undichte Abstraktion.

sandboxes/run-migration.ts
// Boot a sandbox, run a migration, stream the result
import { createSandbox } from "@codecourier/sdk";

const sandbox = await createSandbox({
  template: "node-22-ts",
  region:   "eu-west-1",
  cpu:      4,
  memoryMB: 8192,
  env:      { DATABASE_URL: secret("db-prod") },
});

const result = await sandbox.runCommand("pnpm db:migrate");

const snap = await sandbox.snapshot();   // → snap_8f3a
await sandbox.pause();

createSandbox liefert ein typsicheres Handle mit files, git, network und Lifecycle. Dieselbe Form aus Node, Bun und Deno.

Playbooks

Wo Sandboxes ihren Wert beweisen.

Parallele Migrationen über Repos

Ein Upgrade über vierzig Services ausfächern. Jeder Agent erhält seine eigene VM, snapshottet seine Arbeit, öffnet seinen eigenen PR.

Playbook lesen →

Lange Test-Suites

Zweistündige Integrationsläufe, die nie ein Entwicklerlaptop berühren. Booten, mitten im Lauf snapshotten, nach dem Mittagessen fortsetzen.

Playbook lesen →

Untrusted-Code ausführen

Code ausführen, den Sie nicht geschrieben haben - generiert, gescraped, beigesteuert - ohne ihm Ihre Workstation oder Ihr Netzwerk zu geben.

Sprechen Sie mit uns →
Sandboxes haben die gesamte Risikofläche unserer Agenten von Entwicklerlaptops in eine Umgebung verschoben, die wir tatsächlich auditieren können. Die Cold-Boot-Geschwindigkeit lässt sie nie remote wirken - und allein die Snapshot-Story hat die Migration bezahlt.
Marcus Vidler·Platform Eng Lead · Northwind Systems
FAQ

Was Platform-Leads fragen.

Wo laufen Sandboxes physisch?
Sandboxes laufen in unseren verwalteten Regionen in der EU (Frankfurt, Zürich) und den USA (us-east, us-west). Sie pinnen eine Region pro Template oder pro Aufruf, und Snapshots verlassen ihre Ursprungsregion nie - EU-Daten bleiben konstruktionsbedingt in der EU.
Kann ich ein eigenes Docker-Image mitbringen?
Ja. Templates akzeptieren jedes OCI-kompatible Image als Base. Wir sitzen auf einem gehärteten Firecracker-Host, sodass Ihr Dockerfile zur Build-Zeit zu einem echten VM-Image wird - gleiches Image, gleicher Kernel, jeder Boot.
Wie lange leben Sandboxes?
Standardmässig lebt eine Sandbox so lange wie der Lauf plus ein Idle-Fenster, das Sie kontrollieren - typischerweise einige Minuten. Sie können eine Sandbox stundenlang offen halten, wenn nötig, oder sie sofort beenden. Snapshots persistieren unabhängig davon.
Was passiert zwischen Läufen mit der Platte?
Implizit nichts. Ein frischer Lauf erhält eine frische VM mit der sauberen Platte des Templates. Um Zustand mitzunehmen, snapshotten Sie am Ende des einen Laufs und setzen beim nächsten aus diesem Snapshot fort - explizit, auditierbar, ohne Überraschungspersistenz.
Können Sandboxes unsere internen Dienste erreichen?
Ja, über gescopete Tunnel. Sie installieren einen schlanken Connector in Ihrer VPC und geben einem Sandbox-Template Zugriff auf bestimmte interne Hosts. Sonst gilt überall Default-Deny - nichts entweicht über die Allow-List hinaus.
Sichere Agenten ausliefern

Booten Sie Ihre erste Sandbox in Sekunden.

14 Tage kostenlos · keine Kreditkarte

Stellen Sie Ihren ersten KI-Ingenieur ein.
Bis zum Mittag live.

5 Minuten Onboarding. Erster PR innerhalb einer Stunde. Jederzeit kündbar.