Skip to main content
A sandbox is one Kubernetes pod that runs a single agent session. It contains the harness container (the agent itself) and the vault sidecar.

Session lifecycle

Idle timeout

A ready session that receives no traffic for 24 hours is reaped by the reconciler. The pod is deleted; status flips to dead. The countdown resets on every message or terminal interaction. Press Ctrl-D in lap to detach without stopping β€” the session stays alive; reconnect with lap <agent-name>.

Per-session env vars

Pass short-lived secrets the vault should proxy but never persist:
Constraints (enforced at create time):
  • ≀ 50 keys
  • ≀ 16 KB total
  • Keys match ^[A-Za-z_][A-Za-z0-9_]*$
  • Cannot overlap reserved keys

Harness types

TUI harnesses (Claude Code, Codex) attach with lap. API harnesses receive messages via POST /sessions/{id}/message.