メインコンテンツへスキップ
サンドボックスは組み込み Agent に隔離された実行環境を提供します。コマンドの実行、ファイルの読み書き、長期常駐プロセスの実行が可能です。日常的な Agent 用途(データ処理、ファイル操作、ユーザーコードの実行、stdio MCP のホスティング)はすべてこれに依存します。 サンドボックスを有効化すると、組み込み Agent は自動的に 6 つのツールを取得します。パイプラインで個別に有効化する必要はありません。

組み込みツール

ツール用途
execサンドボックス内で Shell コマンドを実行
readワークスペースのファイルを読み取る
writeファイルを作成または上書き
edit文字列置換でファイルを編集
globglob パターンでファイルを検索
grep正規表現でファイル内容を検索
exec はサンドボックスコンテナ内で実行されます。残り 5 つはホスト側の /workspace にマッピングされたディレクトリを直接読み書きします。
これらのツールは組み込み Agent 向けです。Dify、n8n、Langflow、Coze などの外部 Runner を使用する場合は、各プラットフォーム独自のツール機構を利用してください。

サンドボックススコープ

パイプラインの AI 設定で、メッセージ間でサンドボックスをどのように共有するかを選べます。デフォルトの「チャットごと」で多くのシナリオに対応できます。
スコープテンプレート共有範囲
グローバル{global}全ユーザーが 1 つのサンドボックスを共有
チャットごと(デフォルト){launcher_type}_{launcher_id}同じグループ/個人チャットで共有
ユーザーごと{launcher_type}_{launcher_id}_{sender_id}グループ内の各メンバーが独立
会話ごと{launcher_type}_{launcher_id}_{conversation_id}会話単位で隔離
メッセージごと{query_id}完全にステートレス
同一スコープ内のコマンドはファイルシステム状態を共有します。完全な隔離が必要な場合は「メッセージごと」を選択してください。

ライフサイクル

状況動作
5 分以上アイドル自動クリーンアップ
Box がホストするプロセス(stdio MCP など)が稼働中クリーンアップしない。プロセス終了後に解放
persistent: true 設定時自動クリーンアップなし

クイックスタート

  1. バックエンドの準備: ローカルに Docker をインストール、または Nsjail / E2B を選択
  2. config.yaml に記述:
    box:
      enabled: true
      backend: 'local'
      local:
        host_root: './data/box'
    
  3. LangBot を起動: サンドボックスは自動的に有効化
  4. パイプラインで 組み込み Agent と関数呼び出し対応モデルを選択
その後、Agent は自動的に 6 つのツールを取得します。詳細な設定は サンドボックス設定 を参照してください。

サンドボックスを無効化する

box.enabled: false を設定します。サンドボックスに依存するすべての機能(組み込みツール、Skill の作成/編集/起動、stdio MCP)が同時に無効になります。http/sse モードの MCP は影響を受けません。

次のステップ