権限を渡すのが怖いから、エージェントの仕事は半分になっている。
Moatは7層の「堀」でエージェントを囲み、暴走しても止まる環境を2分で生成します。あとはエージェントに任せればいい。
「万が一何かあったら」と思うから、ファイルアクセスを制限する。外部通信を遮断する。ツール呼び出しを減らす。その結果、せっかくのエージェントが半分の力しか出ていない。その恐れの正体はこれです。
デフォルトでは、エージェントはOSユーザーが読めるすべてのファイルにアクセスできます。SSHキー、パスワード、設定ファイル——全部。
侵害されたエージェントは任意のサーバーにデータを送信できます。アウトバウンドフィルタリングなしでは、気づいた時には手遅れです。
.envファイルのAPIキー。エージェントが行うすべてのツール呼び出しから参照可能です。一度漏れたら、永久に変更作業が続きます。
デフォルトのdocker-composeはrootで全権限つきで動作します。コンテナエスケープ=ホスト完全掌握です。
~/.ssh/id_rsa を読んで外部サーバーにPOSTするファイアウォールは外部の侵入者を止めます。しかしAIエージェントはすでにサーバーの内側で動いています——デフォルトでは何でもできる状態で。
内側は無防備。エージェントが何をしても気づけない。
7層の防護がエージェントを内外から制約。想定外の動作はブロックまたは即時検知。
必要な層だけ選んで「堀」を作れば、あとはエージェントに全権限を渡せます。各層はドロップイン設定ファイルを生成——YAMLを手書きする必要はありません。
Tailscale ACL + iptables。C2コールバックをブロックし、エージェント間通信を制限
全権限削除(cap_drop ALL)、読み取り専用rootfs、no-new-privileges、リソース制限
APIキー認証、IPホワイトリスト、エンドポイント別レート制限、リクエストログ
ツール呼び出しはデフォルト拒否。エージェントが使えるツールをロール別に明示的に許可
自己ホスト型Infisicalサーバーで .envのAPIキーを安全に管理(RAM 8GB以上推奨)
危険なスキルカテゴリをブロック。オプションでLLM-as-Judgeによる曖昧リクエスト検査
Falcoによるシステムコール監視 + Prometheusアラートで異常検知
Moatは何も自動インストールしません。ファイルを生成するだけ——制御はあなたの手元に。
curlコマンド1本。依存パッケージなし。Python標準ライブラリのみ。
ハードウェア・OS・Dockerバージョン・Tailscale・インストール済みセキュリティツールを自動でスキャン。
ブラウザUIまたはターミナルUIで選択。検出結果に基づいて推奨層を提示します。
生成された設定ファイルを所定の場所に配置。付属のセットアップガイドに沿って進めるだけ。
既存ツールはエージェントのコード実行をサンドボックス化することに集中しています。Moatはエージェントを囲むホストとネットワークを強化します。
| 機能 | microsandbox | DIY YAML | Moat |
|---|---|---|---|
| コード実行のサンドボックス化 | ✓ | — | ✓ |
| Dockerハードニング | — | ⚠️ 手動 | ✓ |
| ネットワーク外部通信フィルタ | — | ⚠️ 手動 | ✓ |
| シークレット管理 | — | ⚠️ 手動 | ✓ |
| エージェントツール権限の制限 | — | ⚠️ 手動 | ✓ |
| 非専門家向けセットアップウィザード | — | — | ✓ |
| 環境自動検出 | — | — | ✓ |
Layer 1〜4はフレームワーク非依存。Layer 5〜7はフレームワーク固有の強化設定を追加します。