anthropics/sandbox-runtime

A lightweight sandboxing tool for enforcing filesystem and network restrictions on arbitrary processes at the OS level, without requiring a container.

解決する課題

Anthropic Sandbox Runtime (srt) は、AI エージェント、bash コマンド、Model Context Protocol (MCP) サーバーなどの任意のプロセスを、安全で制限された環境で実行する方法を提供します。完全なコンテナセットアップを必要とせずに、これらのプロセスが機密ファイルにアクセスしたり、不正なネットワークリクエストを送信したりするのを防ぎます。

仕組み

このツールは、ネイティブの OS レベルのサンドボックスプリミティブを使用して、プロセスツリー全体に制限を適用します:

  • macOS: 動的に生成された Seatbelt プロファイルと共に sandbox-exec を使用します。
  • Linux: コンテナ化とネットワーク名前空間の分離に bubblewrap を使用します。
  • Windows: 専用の srt-sandbox ローカルユーザーアカウントの下でプロセスを実行し、Windows Filtering Platform (WFP) の送信フェンスを備えています。

二重隔離モデルを採用しています:

  • ファイルシステムの隔離: 読み取りには「拒否してから許可」パターン(デフォルトで許可、特定のパスを拒否)を使用し、書き込みには「許可のみ」パターン(デフォルトで拒否、特定のパスを明示的に許可する必要がある)を使用します。
  • ネットワークの隔離: すべてのネットワークアクセスはデフォルトで拒否されます。許可されたドメインは、許可リストと拒否リストを強制するホスト側のプロキシサーバー(HTTP/HTTPS および SOCKS5)を経由してルーティングされます。

対象者

エージェントシステムを構築したり MCP サーバーを使用したりする開発者で、AI 駆動のコード実行がデフォルトで安全であり、特定のディレクトリとドメインに制限されていることを確認する必要がある場合に適しています。

ハイライト

  • デフォルトで安全: プロセスは最小限のアクセス権で開始され、権限を取得するには明示的な設定が必要です。
  • クロスプラットフォーム: macOS、Linux、Windows のネイティブサポート。
  • 柔軟な設定: macOS 上のファイルシステムパスのグロブパターンと、詳細なドメインレベルのネットワークフィルタリングをサポート。
  • 違反の監視: macOS でのサンドボックス違反のリアルタイムアラート。
  • ライブラリと CLI: スタンドアロンのコマンドラインツールと TypeScript ライブラリの両方として利用可能。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト