
App Sandbox は、パフォーマンスと使いやすさに重点を置いた、Windows と macOS 向けの仮想マシンアプリです。
Windows の機能:
asb.py) により、GPU アクセラレーション VM をプログラムで作成・操作可能Mac の機能:
asb.py) により、macOS と Windows 11 VM をプログラムで操作可能要件: x64 プロセッサ搭載の Windows 11、または macOS Tahoe (M シリーズ)
App Sandbox は、Windows 11、Ubuntu、macOS のフルデスクトップ仮想マシンを作成・実行します。無料のオープンソース (MIT) であり、プリビルドバイナリ (Windows では EV 署名、macOS では Apple Developer 署名) として Releases ページで配布されています。操作は 2 通りです: グラフィカル UI を使用する方法と、依存関係のない Python SDK (asb.py) を備えたヘッドレスデーモンを介してプログラムで操作する方法です。どちらの方法でも、OS を選択し、インストーラーイメージを指定すると、App Sandbox がディスクをプロビジョニングし、無人インストールを実行してゲストを起動します。Windows または Ubuntu の ISO を用意してください。macOS ゲストは復元イメージを自動的にダウンロードします。ノートパソコンを含む Windows 11 (x64) PC または Apple Silicon Mac で動作します。
Hyper-V なしで Windows 11 Home で動作。 Windows では、App Sandbox は Hyper-V や Hyper-V マネージャーを使用しません。Windows Host Compute System (HCS) および Host Compute Network (HCN) API を通じて VM を作成・実行します。これらに必要なのは Virtual Machine Platform 機能のみです。Hyper-V は Windows 11 Pro および Enterprise に限定されていますが、Virtual Machine Platform は Windows 11 Home で利用できるため、Windows 11 Pro ライセンスは必要ありません。Virtual Machine Platform は WSL2 が使用するものと同じ Windows 機能です。
使用例:
ヘッドレス API。
appsandbox.exe --headless
(macOS では sudo /Appsandbox.app/Contents/MacOS/AppSandbox --headless) を実行すると、GUI と同じコアをホストし、それを Docker スタイルのローカル HTTP/JSON API として 127.0.0.1 に公開するシングルオーナーデーモンが起動します。この API は両プラットフォームで同一です。標準ライブラリのみを使用する Python SDK (asb.py) がこれをラップします: GPU アクセラレーション VM の作成 (GPU-PV は gpuMode 作成オプション)、自動デプロイされたキーによる SSH 接続 (Windows、Ubuntu、macOS ゲスト)、スナップショットとブランチ、ライブディスプレイのオープン、複数 VM の同時実行などが可能です。同時実行数は固定の制限ではなく、ホストの CPU、RAM、GPU メモリによって決まります。デーモンはシングルホストです — 実行中のマシン上の VM を操作し、クラウド VM はプロビジョニングしません。CI ではセルフホストランナーで実行してください。VM のプロビジョニングは完全な無人インストールを実行します。スナップショット、ブランチ、テンプレート (Windows のみ) は、再インストールではなくプロビジョニング済みの状態から新しい VM を起動します。VM は削除されるまで永続化されます。スナップショットは VM を停止した状態で取得されるディスク状態のチェックポイントであり、ブランチはそこから書き込み可能なディスクをフォークして、分岐した操作を実行します。完全な API リファレンスと実行可能な例は tools/headless-api/ にあります。
仕組み: このリポジトリは、Windows の HCS/HCN API と Apple の Virtualization.framework を使用してフルデスクトップ VM をプログラムで作成する実用的な例を目指しています。Windows では、App Sandbox は Hyper-V マネージャーを介さずに、手動で構築した HCS マシンドキュメントを computecore.dll / computenetwork.dll に送信します — これは WSL2 と Windows Sandbox の基盤でもある HCS/HCN レイヤーです。GPU アクセラレーションは GPU パラバーチャライゼーション (GPU-PV) を使用してホストのインストール済み GPU をゲストと共有します — これは WSL2 と同じ経路であり、専用パススルーではありません (VFIO/IOMMU なし、2 つ目の GPU も不要)。Windows ゲストは DirectX 12、OpenGL、Vulkan、CUDA、OpenCL を利用でき、Ubuntu ゲストは DirectX を除く同じセット、macOS ゲストは Metal を利用できます。カスタム IddCx 間接ディスプレイドライバーと仮想オーディオデバイスが画面とサウンドを伝送し、ゲスト↔ホスト間のクリップボード、オーディオ、入力、SSH は Hyper-V ソケット 上で実行されます。ゲストディスクは、ext4、squashfs、qcow2、VHDX をサポートするリポジトリ内ツールによって構築されます。macOS では、App Sandbox は virtio-vsock 上で Apple の Virtualization.framework (VZVirtualMachine、VZMacOSInstaller) を使用します。Windows では、Linux (Ubuntu) ゲストはカスタム DRM/KMS カーネルモジュール (asb_drm)、Microsoft の WSL2 dxgkrnl、カスタム Mesa ビルドを通じて GPU にアクセスします。アプリは HTML/JS UI (Windows では WebView2、macOS では WKWebView) を備えたネイティブ C / Objective-C で記述されています。
[Windows] ホットキーを有効にするか VM オーディオをミュートするには: VM に接続し、接続タイトルバーを右クリックします
[Windows] VM にリモートアクセスするための高性能リモートデスクトップが必要ですか? Phaze がうまく動作します
[Windows] GPU-PV ドライバーのセットアップが機能しているかどうかは、App Sandbox Windows VM 内で gpu-test.exe を実行して確認できます。gpu-test.exe は、それぞれ異なるレンダリングエンジン (D3D9、D3D10、D3D11、D3D12、OpenGL、Vulkan) を使用する 6 つの回転するキューブが表示されたボックスを表示します。1 つ以上が失敗した場合、そのレンダリング API では回転するキューブが正しく表示されません。gpu-test.zip。注意: レンダリング API が成功した場合は GPU-PV が機能したことを意味しますが、ゲームやアプリによっては GPU-PV システムを正しく検出できず、エラーが表示され続けることがあります。
AppSandbox は MIT ライセンス の下でライセンスされています — Copyright (c) 2026 James Stringer.
MIT ライセンスの対象外で、独自の条件を保持するサードパーティコンポーネントをバンドルしています — 最も注目すべきは、Microsoft WSL2 dxgkrnl GPU ドライバー (GPL-2.0) と組み込みの XZ デコーダー (0BSD) です。完全なリストは THIRD-PARTY-NOTICES.md を参照してください。AppSandbox 独自の Linux DRM カーネルモジュール (tools/linux/asb_drm/) は MIT OR GPL-2.0 のデュアルライセンスであり、カーネルの GPL 専用シンボルを解決できます。
Easy-GPU-PV を開発した経験に加えて、HCS を理解する上で NanaBox が非常に役立つリソースであることがわかりました。
James Stringer — Easy-GPU-PV の作者。