Repolode
smol-machines

smol-machines/smolvm

ハードウェア分離でAIエージェントや信頼できないコードをローカル実行できる、Rust製の組み込み可能なポータブルmicroVM。

代替できる製品:Docker Desktop

スター
6,766
フォーク
333
未解決の Issue
74
最終コミット
21 時間前

これは何?

smolvmは、各ワークロードを専用のゲストカーネルを備えたハードウェア仮想化microVMで実行します。libkrunをベースにしており、macOSではHypervisor.framework、LinuxではKVM、WindowsではWindows Hypervisor Platformを使用します。イメージにはDocker Hubやghcr.ioなどのレジストリから取得できる標準OCIイメージを使うため、Dockerデーモンは不要です。CLIからマシンの作成、起動、execでの接続、再起動をまたいだ永続化ができます。

また、Node、Python、Rust向けの組み込み可能なSDKを提供しており、独自のプロセスからマシンを操作できます。ライブなcopy-on-write子マシンの作成や、RAM、CPU状態、ディスクを保存し、別のホストで復元できるチェックポイントなど、ブランチ機能にも対応しています。マシンは配布用の単一の.smolmachineファイルにまとめられます。

ネットワークはデフォルトで無効です。外向き通信は指定したホストやパターンに制限でき、認証情報を置き換えることで、コードが秘密情報そのものではなくプレースホルダーを使うようにできます。

主な機能

  • 01macOS、Linux、Windowsで、専用のゲストカーネルを備えたハードウェア分離microVMを実行。
  • 02Dockerデーモンなしで標準OCIイメージを実行。
  • 03Node、Python、Rust向けの組み込み可能なSDK。
  • 04RAM、CPU、ディスクの状態を保存するライブブランチとチェックポイント。
  • 05マシンをポータブルな.smolmachineファイルにパッケージ化。
  • 06デフォルトではネットワークを無効化し、ホストの許可リストと認証情報の置き換えに対応。

ユースケース

  • ノートPC上の分離されたサンドボックスで、AIエージェントが生成したコードを実行する。
  • Smolfileから再現性のあるポータブルな開発環境を作成する。
  • SDKを通じて、アプリケーションにタスクごとのVMを組み込む。
  • RuntimeClassを使い、KubernetesでPodをmicroVMとして実行する。

クイックスタート

  1. 1

    Homebrewでインストール(macOS)

    brew install smol-machines/tap/smolvm
  2. 2

    一時的なVMを起動してカーネル情報を表示する

    smolvm machine run --net --image alpine -- uname -a
  3. 3

    VMで対話型シェルを開く

    smolvm machine run --net -it --image alpine -- /bin/sh

使う前に知っておきたいこと

  • READMEによると、WindowsではGPUアクセラレーションを利用できません。
  • Intel Mac向けのリリースビルドは公開されておらず、テストもされていません。
  • LinuxではKVM(/dev/kvm)が必要です。WindowsではWindows Hypervisor Platformを有効にする必要があります。

トピック

よくある質問

smolvm とは?
ハードウェア分離でAIエージェントや信頼できないコードをローカル実行できる、Rust製の組み込み可能なポータブルmicroVM。 smolvmは、各ワークロードを専用のゲストカーネルを備えたハードウェア仮想化microVMで実行します。libkrunをベースにしており、macOSではHypervisor.framework、LinuxではKVM、WindowsではWindows Hypervisor Platformを使用します。イメージにはDocker Hubやghcr.ioなどのレジストリから取得できる標準OCIイメージを使うため、Dockerデーモンは不要です。CLIからマシンの作成、起動、execでの接続、再起動をまたいだ永続化ができます。
smolvm は無料で使えますか?ライセンスは?
smolvm は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
smolvm は今もメンテナンスされていますか?
活発にメンテナンス中。smolvm の最終コミットは 2026年10月19日 です。
smolvm は何に使えますか?
ノートPC上の分離されたサンドボックスで、AIエージェントが生成したコードを実行する。 Smolfileから再現性のあるポータブルな開発環境を作成する。 SDKを通じて、アプリケーションにタスクごとのVMを組み込む。 RuntimeClassを使い、KubernetesでPodをmicroVMとして実行する。
smolvm のインストール方法は?
Homebrewでインストール(macOS): brew install smol-machines/tap/smolvm 一時的なVMを起動してカーネル情報を表示する: smolvm machine run --net --image alpine -- uname -a VMで対話型シェルを開く: smolvm machine run --net -it --image alpine -- /bin/sh
smolvm はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/smol-machines/smolvm

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト