Skip to main content
November 8, 2026 · GitHub release · All changes

New features

Repair sandboxes refused after v0.7.12. The v0.7.12 storage change could refuse to start older local sandboxes that used snapshots, forks, owned disks, or completed disk growth or compaction. v0.7.14 migrates these layouts safely and keeps writes made after a snapshot. On Linux and Windows, supported storage migrates on the next start or stopped storage operation. On macOS, use guided repair. Run it in a terminal:
Omit --sandbox to pick several sandboxes. Repair asks before stopping a blocking VM and leaves the repaired sandbox stopped. Cases it cannot resolve produce a diagnostic report that you review and copy yourself; nothing is uploaded. The SDKs add matching storage diagnosis and recovery APIs. Management commands · Runtime setup Inbound connection bursts wait instead of failing. When a local sandbox reaches its inbound TCP limit, new connections to published ports now wait in a shared queue of up to 1,024 connections for at most 30 seconds. msb-metrics also reports rejected inbound and outbound TCP connections and evicted UDP sessions. Networking · msb-metrics

Fixes

  • SSH exec reports failures. SDK SSH exec no longer reports success when a command terminates abnormally. Signals return 128 + the Linux signal number, and a channel that closes without an outcome returns an error. SSH
  • TypeScript cloud sandboxes clean up at scope exit. Cloud sandboxes created with create() in an await using scope now stop when the scope ends, and stopping an ephemeral cloud sandbox succeeds when the cloud deletes it.
  • msb logs -f exits when the sandbox stops, and --init sandboxes stop reliably.
  • Images without /etc/passwd and curlimages/curl 8.11.1 and 8.12.1 now work.
  • msb starts on Windows 10 again, and Windows directory listings skip junctions instead of failing.
  • Large guest-to-host uploads no longer stall or corrupt data.
  • New boots use guest Linux 6.12.115 with host memory-discard fixes.

Before upgrading

  • Piped input now reaches msb run. Scripts that pipe data around msb run, such as while read loops, need --no-stdin to keep their input. Sandbox commands
  • A taken host port stops startup. Published ports are claimed before the VM boots, so msb run, msb fork -p, and msb restore -p fail and name the port instead of starting without it.
  • Coming from v0.7.11 or earlier? Read the v0.7.12 Before upgrading notes first.

Contributors

Thank you to everyone who contributed to this release.