Repolode
pydantic

pydantic/monty

AI生成コードをコンテナなしで実行できる、Rust製の安全なPythonサンドボックス。

スター
8,730
フォーク
465
未解決の Issue
169
最終コミット
13 時間前

これは何?

Montyは、LLMが生成したコードを実行するためのPythonサンドボックスです。コンテナベースのサンドボックスに伴う遅延、複雑さ、コストを避けることを目指しており、プロジェクトの計測によると、稼働中のプールから新しいサンドボックスを1ms未満で起動できます。

サンドボックス内からは、ファイルシステム、環境変数、ネットワークにアクセスできません。コードがホストにアクセスできるのは、ホストアプリケーションが明示的に渡した関数やマウントを通じてのみです。例では、ホスト側の検索関数が栄養データを返し、サンドボックス内のコードにはその戻り値だけが見えます。

OSS版のMontyはMITライセンスで、Python用のパッケージ(pydantic-monty)、JavaScript/TypeScript用(@pydantic/monty)、Rust用(monty)としてインストールできます。商用のFull Montyサーバーは、同じサンドボックスをWebSocket経由のサービスとして実行します。

主な機能

  • 01デフォルトではファイルシステム、環境、ネットワークにアクセスできないサンドボックス内でPythonコードを実行します。
  • 02ホスト関数とマウントを、コードが外部リソースにアクセスする唯一の手段として公開します。
  • 03Python、JavaScript/TypeScript、Rust向けのバインディングを提供します。
  • 04リソース制限と実行スナップショットに対応します。
  • 05サンドボックスのプールを再利用して起動時の遅延を抑えます。

ユースケース

  • 実行ごとにコンテナを起動することなく、LLMエージェントが書いたコードを実行する。
  • 制御された関数インターフェースを介して、AIエージェントがホスト側のツールを呼び出せるようにする。
  • Python、JavaScript、Rustアプリケーションに安全なコード実行ステップを追加する。

クイックスタート

  1. 1

    Pythonパッケージをインストールする

    uv add pydantic-monty
  2. 2

    sandboxのプールとセッションを作成し、コードを実行する

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

  • sandboxで実行できるのはPython 3.14のみです。ドキュメントに記載されているとおり、言語機能の一部に限られます。
  • sandbox内ではファイルシステム、環境変数、ネットワークを利用できません。ホストへのアクセスは、渡した関数を介してのみ可能です。
  • 商用サーバー版のFull Montyは、このMITライセンスのOSS版とは別製品です。

トピック

よくある質問

monty とは?
AI生成コードをコンテナなしで実行できる、Rust製の安全なPythonサンドボックス。 Montyは、LLMが生成したコードを実行するためのPythonサンドボックスです。コンテナベースのサンドボックスに伴う遅延、複雑さ、コストを避けることを目指しており、プロジェクトの計測によると、稼働中のプールから新しいサンドボックスを1ms未満で起動できます。
monty は無料で使えますか?ライセンスは?
monty は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
monty は今もメンテナンスされていますか?
活発にメンテナンス中。monty の最終コミットは 2026年10月19日 です。
monty は何に使えますか?
実行ごとにコンテナを起動することなく、LLMエージェントが書いたコードを実行する。 制御された関数インターフェースを介して、AIエージェントがホスト側のツールを呼び出せるようにする。 Python、JavaScript、Rustアプリケーションに安全なコード実行ステップを追加する。
monty のインストール方法は?
Pythonパッケージをインストールする: uv add pydantic-monty sandboxのプールとセッションを作成し、コードを実行する
monty はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/pydantic/monty

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

関連プロジェクト