代理框架
AG2 1.0.4、ACPエージェントのセッション再開に対応――ツール引数検証と並列数上限も追加
AG2 1.0.4では、ACPの`session/load`、MCPツールの名前空間、上限を設定可能なサブエージェントのファンアウトが追加され、長時間稼働するエージェントの再開とリソース管理が容易になった。さらに、ツールのブロックリスト、引数検証、構造化されたツール結果がガバナンスとトレーシングの経路に組み込まれたが、セッション状態は依然として外部のエージェントプロセスに分散する可能性がある。

AG2は9月7日にバージョン1.0.4をリリースし、エージェント相互運用プロトコルを「接続できる」段階から、より運用可能な状態へと前進させた。Agent Client Protocol(ACP)経由で提供されるAG2エージェントが`session/load`をサポートし、クライアントは接続のたびに空の会話から始めることなく、以前のセッションを読み込めるようになった。これは長時間タスク、IDEの再接続、プロセスの再起動にとって重要なライフサイクル操作を補うものだ。ただし、復元されるのはAG2が管理するsessionであり、基盤となるClaude CodeなどのステートフルなACPバックエンドが会話を独自に保存している場合、実際の状態は引き続きフレームワーク境界の外側に存在する可能性がある。
ツール層にも、本番環境へのデプロイに影響する変更がいくつか加わった。MCP toolkitではツールに名前空間を付与できるようになり、複数のサーバーから同名のツールをインポートした際の衝突を抑えられる。サブエージェントへの自動振り分けによる並列fan-outには上限を設定できるようになり、単一のプランニング処理によってモデルリクエスト、ツール負荷、コストが際限なく膨らむことを防ぐ。TealTigerガバナンスミドルウェアには`tool_blocklist`と`arg_validation`が追加され、それぞれパターンに基づく特定ツールの拒否と、実行前の引数検証を担う。これらは決定論的な呼び出し前制御であり、モデルがテキスト形式のルールを自律的に順守することに依存しなくてよい点に価値がある。ただし、安全性はルールの網羅性と、シリアライズ後の引数に十分な意味情報が保持されているかどうかに左右される。
オブザーバビリティの面では、ツールspanが構造化された複数パートの結果を保持するようになり、trace変換関数が公開APIになったほか、traceを生成しなかった評価タスクも総数から除外されなくなった。ストリーミングのリトライはchunk送信後には行われなくなり、呼び出し側が重複した内容を受け取ることを防ぐ。さらに、このバージョンはhosted shellとMCPイベントを含め、Anthropic Python SDK 1.xおよびOpenAI SDK 3.xに追随している。ベンダーSDKのバージョンを独自に固定しているプロジェクトでは、事前に依存関係の範囲を確認する必要がある。今後注目すべき点は、session復元の一貫性テスト、ガバナンスルールを迂回するケース、そしてキャンセル、失敗、リトライの各経路でもfan-out制限がハードリミットとして維持されるかどうかだ。