superradcompany/microsandbox
🧱 Easy fast local-first microVM runtime and library
microsandbox – 信頼できないコード用の高速でローカルなマイクロVM
何であるか – microsandbox は、自宅のラップトップやサーバー上でハードウェア分離されたマイクロ仮想マシン(microVM)を起動できる軽量ランタイムです。Dockerのような使い勝手で、長時間実行されるデーモンや完全なコンテナエンジンを必要とせずに、信頼できないワークロード(AIエージェント、ユーザー提供スクリプト、CIジョブ、ブラウザ自動化など)を実行するためのものです。
AIにとってなぜ重要か – 現代の多くのAIエージェントは、任意のコードを安全に実行できる場所が必要です(例:ユーザーのスニペットを実行するコーディングアシスタント、ウェブスクレイパー、コードのビルドとテストを行うツール)。microsandbox は、<100msで起動し、あらゆる言語から制御可能で、シークレットがホストから漏れないことを保証する、高速かつハードウェア分離されたサンドボックスを提供します。
主な機能(READMEに記載)
| 機能 | 意味 |
|---|---|
| ハードウェア分離 | LinuxではKVM、WindowsではWHP、Apple SiliconではApple-Siliconハイパーバイザーを使用して、フルVMのオーバーヘッドなしにVMレベルのセキュリティを提供します。 |
| クロスプラットフォーム | macOS(Apple Silicon)、Linux(KVM)、Windows(WHP)で動作します。 |
| OCI互換イメージ | Docker Hub、GHCR、または任意のOCIレジストリから標準コンテナイメージを取得し、マイクロVM内で実行できます。 |
| Docker風のワークフロー | イメージ、コマンド、ボリューム、名前付きコンテナといった概念はDockerと同様なので、学習コストは極めて低いです。 |
| 即時起動 | 通常の起動時間は100ms未満で、リクエストごとのサンドボックス化に実用的です。 |
| 埋め込み可能なSDK | TypeScript、Rust、Python、Ruby、Go用のSDKが利用可能。アプリケーションコードから直接サンドボックスを作成・制御できます。 |
| 漏洩しないシークレット | シークレットはランタイム経由で注入され、VMのファイルシステムに書き込まれることはありません。 |
| 長時間実行・デタッチモード | CLIが終了してもサンドボックスは生存可能で、永続セッションやワーカーとして利用できます。 |
| エージェント対応 | 「エージェントスキル」とMCPサーバーを提供し、AIエージェントが構造化されたツールコールでサンドボックスの作成、コマンド実行、監視をリクエストできます。 |
クイックスタート
- SDKのインストール – 使用する言語を選択:
npm i microsandbox # TypeScript/JavaScript cargo add microsandbox # Rust uv add microsandbox # Python go get github.com/superradcompany/microsandbox/sdk/go # Go - CLIのインストール(オプションだが便利):
npx microsandbox run debian # 一時実行 # または永続コマンドをインストール curl -fsSL https://install.microsandbox.dev | sh # macOS/Linux irm https://install.microsandbox.dev/windows | iex # Windows - コマンドの実行
msb run python -- python -c "print('Hello from a microVM!')" - SDKの使用 – TypeScriptでの例:
(Rust、Python、Ruby、Go用の類似スニペットも提供されています。)import { Sandbox } from "microsandbox"; const sandbox = await Sandbox.builder("demo") .image("python") .cpus(1) .memory(512) .create(); const out = await sandbox.exec("python", ["-c", "print('hi')"]); console.log(out.stdout());
AI / 自動化における典型的な用途
- AIコーディングエージェント – LLMにプライベートなワークスペースを提供し、コンパイル、テスト実行、
gitの呼び出しを可能に。エージェントはホストファイルシステムにアクセスしない。 - ブラウザ自動化 – PlaywrightやSeleniumをサンドボックス内で実行し、悪意あるページコンテンツを隔離。
- CI/CDランナー – 各GitHub Actionsジョブを新規のマイクロVMで実行し、実行間の「汚染された」状態を削減。
- データ移行のシミュレーション – データベースのサンドボックスコピーを起動し、マイグレーションを適用して結果を検証した後、本番環境に手を加える。
- プラグイン実行 – 拡張性を提供するプラットフォームで、サードパーティプラグインやユーザー提供スクリプトを安全に評価。
エコシステムとコミュニティ
- エージェント統合 – VercelのEveフレームワーク、LangChain-microsandbox、Smithersなど、多くの製品がmicrosandboxをサンドボックスバックエンドとして採用しています。
- 上位層のツール –
h5i(エージェント用のセキュアブラウザ)、devsy(devcontainerデプロイ)、openwork(Claude風の共同作業UI)。 - ショーケースリポジトリ – Awesome-microsandboxリスト、サンドボックス内でのDocker、ウォームワーカー、GitHub Actionsランナーなどの例プロジェクト。
- サポート – Discordコミュニティ、豊富なドキュメント、貢献ガイド。
ライセンスと成熟度
- Apache 2.0 ライセンス。
- ベータ版 – ブレイキングチェンジや未実装機能を期待してくださいが、マイクロVMの起動、コマンド実行、SDKバインディングといったコア機能は安定しています。
TL;DR
microsandbox は、開発者やAIエージェントがミリ秒単位で起動する安全でハードウェア分離されたマイクロVMで任意のコードを実行できるようにします。すべての主要OSで動作し、任意のOCIイメージをサポートし、最も一般的な言語用のSDKを提供するため、安全なAI駆動の自動化やツール構築の実用的な基盤となります。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト