Repolode
jingkaihe

jingkaihe/matchlock

ネットワークの許可リストとホスト側からのシークレット注入に対応した、AIエージェントを一時的なmicroVMで実行するLinuxベースのCLI。

スター
644
フォーク
38
未解決の Issue
3
最終コミット
20 日前

これは何?

Matchlockは、破棄可能なmicroVM内でAIエージェントを実行するコマンドラインツールです。各サンドボックスは1秒未満で起動する完全なLinux環境で、ホストマシンに触れることなく、エージェントがパッケージをインストールしたりファイルを書き込んだりできます。実行が終わるとVMは破棄され、ボリュームのオーバーレイマウントも分離されたスナップショットとして、実行後に消去されます。

--allow-hostまたは--secretを指定すると、ネットワークアクセスはデフォルトで制限され、明示的に列挙したホストにのみ接続できます。シークレットはホスト上のTLS MITMプロキシ経由で注入されるため、サンドボックスから見えるのはプレースホルダー値だけで、実際の認証情報がVMに入ることはありません。また、ポートフォワーディング付きの長時間稼働サンドボックス、VM内のBuildKitを使ったDockerfileからのイメージ構築、Go、Python、TypeScriptのSDKにも対応しています。

LinuxではKVM、Apple Silicon搭載のmacOSでは同じCLIで動作します。このプロジェクトは実験的な段階にあり、互換性を損なう変更が入る可能性があります。

主な機能

  • 011秒未満で起動する一時的なmicroVM内でエージェントを実行します。
  • 02ネットワークアクセスを許可リストで制限し、列挙されたホストにのみ接続できるようにします。
  • 03ホスト側のTLS MITMプロキシ経由でAPIキーを注入するため、シークレットがVMに入ることはありません。
  • 04exec、attach、ポートフォワーディングに対応した長時間稼働サンドボックスを利用できます。
  • 05VM内のBuildKitを使ってDockerfileからイメージを構築します。
  • 06Go、Python、TypeScriptのSDKを提供します。

ユースケース

  • ホストマシンを危険にさらすことなく、AIコーディングエージェントに任意のコードを実行させる。
  • キーをサンドボックス内に置かずに、エージェントのコードからサードパーティのLLM APIを呼び出す。
  • 外部への通信が制限された破棄可能なLinux環境で、信頼できないスクリプトを実行する。
  • SDKを通じて、アプリケーションに分離されたコード実行機能を組み込む。

クイックスタート

  1. 1

    Homebrew リポジトリをタップします

    brew tap jingkaihe/essentials
  2. 2

    Homebrew で matchlock をインストールします

    brew install matchlock
  3. 3

    一時的な microVM でテストコマンドを実行します

    matchlock run --image alpine:latest cat /etc/os-release

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

  • このプロジェクトは実験的なもので、互換性を損なう変更が行われる場合があります。
  • Linux(KVM 使用)と Apple Silicon 搭載の macOS のみをサポートしています。
  • Linux では、ホストのセットアップに sudo matchlock setup linux の実行が必要な場合があります。

収録されている特集

トピック

よくある質問

matchlock とは?
ネットワークの許可リストとホスト側からのシークレット注入に対応した、AIエージェントを一時的なmicroVMで実行するLinuxベースのCLI。 Matchlockは、破棄可能なmicroVM内でAIエージェントを実行するコマンドラインツールです。各サンドボックスは1秒未満で起動する完全なLinux環境で、ホストマシンに触れることなく、エージェントがパッケージをインストールしたりファイルを書き込んだりできます。実行が終わるとVMは破棄され、ボリュームのオーバーレイマウントも分離されたスナップショットとして、実行後に消去されます。
matchlock は無料で使えますか?ライセンスは?
matchlock は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
matchlock は今もメンテナンスされていますか?
活発にメンテナンス中。matchlock の最終コミットは 2026年10月4日 です。
matchlock は何に使えますか?
ホストマシンを危険にさらすことなく、AIコーディングエージェントに任意のコードを実行させる。 キーをサンドボックス内に置かずに、エージェントのコードからサードパーティのLLM APIを呼び出す。 外部への通信が制限された破棄可能なLinux環境で、信頼できないスクリプトを実行する。 SDKを通じて、アプリケーションに分離されたコード実行機能を組み込む。
matchlock のインストール方法は?
Homebrew リポジトリをタップします: brew tap jingkaihe/essentials Homebrew で matchlock をインストールします: brew install matchlock 一時的な microVM でテストコマンドを実行します: matchlock run --image alpine:latest cat /etc/os-release
matchlock はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/jingkaihe/matchlock

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

関連プロジェクト