Skip to content

Infrastructure and Local Operations

Runtime topology

flowchart LR
  classDef default fill:#1e293b,stroke:#38bdf8,stroke-width:2px,color:#f8fafc
  classDef highlight fill:#065f46,stroke:#34d399,stroke-width:2px,color:#f0fdf4
  Agent["Agent or console"]:::highlight --> API["Uvicorn :8787"]
  API --> SQLite["SQLite"]
  API --> Scratch["Data directory"]
  API --> Local["Host subprocess"]
  API --> MSB["msb microVM"]
  MSB --> MSBSnap["VM snapshot store"]
  linkStyle default stroke:#64748b,stroke-width:2px

Commands and configuration

just setup installs uv and pnpm dependencies; just start runs backend and frontend; just health, just stop, and log commands support local operation. Settings use SANDBOX_ prefixes for backend, image, data directory, host/port, TTLs, execution timeouts, output limits, auth, and backend selection.

The default backend is microsandbox, while local is explicitly described as development-only. Readiness checks both SQLite existence and runtime availability.

Operational concerns

The service is stateful on disk, so the data directory needs backup and cleanup policy. SQLite is simple for one service instance; multi-instance deployment would require a shared metadata store and coordinated workspace ownership. Snapshots are provider-managed and should be monitored for disk usage.