Anthropic Managed Agents: Claudeの頭脳と手足の分離
TL;DR
Anthropicは、Claudeの推論コンポーネント(「頭脳」)を実行環境(「手足」)および永続的なセッションログから分離するホステッドプラットフォームであるManaged Agentsを発表しました。このアーキテクチャの変更により、長時間実行されるAIエージェントの信頼性、スケーラビリティ、セキュリティが向上します。
分離が重要な理由
頭脳、手足、セッションを独立した交換可能なコンポーネントに分離することで、単一障害点、デバッグの行き詰まり、不要なレイテンシを引き起こしていた「ペット」コンテナモデルを排除します。各コンポーネントは他に影響を与えることなく交換またはスケールできるため、Claudeは多様なインフラストラクチャ上でより長く、より複雑なタスクを実行できます。
中核となるアーキテクチャの抽象化
セッション – 永続的な追記専用ログ
- 目的: エージェントの実行におけるすべてのイベントをClaudeのコンテキストウィンドウの外部に保存します。
- インターフェース:
getEvents()はログの位置スライスを返し、emitEvent(id, event)は新しいエントリを追加します。 - 利点: クラッシュ後も存続し、頭脳によって柔軟にクエリできる回復可能なコンテキストオブジェクトを提供します。
ハーネス – オーケストレーションループ
- 目的: Claudeを呼び出し、ツール呼び出しをルーティングし、セッションと対話します。
- インターフェース: 任意の手足を呼び出すための
execute(name, input) → string、障害後に再起動するためのwake(sessionId)。 - 利点: ステートレスサービス(「カトル」)として実行されるため、クラッシュは無害で、即座に置き換えることができます。
サンドボックス – 実行環境
- 目的: コードを実行し、ファイルを編集し、外部リソースと対話します。
- インターフェース:
execute(name, input) → stringを介して汎用ツールとして扱われます。 - 利点: コンテナ、VPCにバインドされたサービス、または任意のカスタムランタイムにすることができ、Claudeに資格情報を公開しません。
「ペット vs. カトル」問題の解決
当初、すべてのコンポーネントは単一のコンテナ内に存在し、コンテナはペット、つまりユニークで置き換え不可能なインスタンスになっていました。そのコンテナが障害を起こすとセッションが失われ、WebSocketストリームを通じた手動デバッグが必要でした。
ハーネスとセッションをコンテナから移動することで、それらはカトル、つまりオンデマンドで再作成できる交換可能なサービスになります。サンドボックスが停止すると、ハーネスはツール呼び出しエラーを報告し、Claudeはprovision({resources})を使用して新しくプロビジョニングされたコンテナで再試行できます。
セキュリティの改善
- 資格情報の分離: トークンは、Claudeが生成したコードが実行されるサンドボックス内には決して存在しません。
- パターン: トークンは、サンドボックスの初期化中にリソースに組み込まれるか(例: Gitクローン)、ハーネスが呼び出すプロキシ(MCP)によってアクセスされるセキュアなボールトに保存されます。
- 結果: プロンプトインジェクション攻撃は資格情報を盗むことができず、サンドボックスは特権トークンに直接アクセスできません。
Claudeのウィンドウを超えたコンテキスト管理
長時間実行されるタスクは、Claudeのコンテキスト制限を超えます。以前のアプローチ(圧縮、メモリツール、トリミング)は、保持する内容について不可逆的な決定を行っていました。Managed Agentsはセッションログを外部コンテキストオブジェクトとして扱います:
- 頭脳は
getEvents()を介してログの任意のスライスを読み取ることができます。 - ハーネスは、Claudeにフィードする前にイベントを変換でき、仮定をハードコーディングせずにカスタムコンテキストエンジニアリングを可能にします。
- この分離により、コンテキストは永続的でクエリ可能な状態を保ちながら、将来のモデルが新しいコンテキスト管理戦略を実装できるようになります。
多数の頭脳と手足へのスケーリング
多数の頭脳
- 分離により、推論開始前に各頭脳用のコンテナをプロビジョニングする必要がなくなります。
- 最初のトークンまでの時間(TTFT)が大幅に改善されました:保留中のイベントがセッションログから読み取られるとすぐに推論を開始できるため、p50は約60%、p95は90%以上削減されました。
多数の手足
- 各手足は汎用ツール(
execute(name, input) → string)であり、Claudeはコンテナ、VPCリソース、電話、さらにはエミュレータと対話できます。 - 手足は頭脳から独立しているため、頭脳は別の頭脳に作業を引き継いだり、複数の手足を同時に呼び出したりできます。
ユーザーへの実際的な影響
- 信頼性: 任意のコンポーネントの障害は分離されます。セッションは永続化され、ハーネスは自動的に再起動できます。
- パフォーマンス: TTFTの削減と、必要なときだけサンドボックスをプロビジョニングできる機能により、レイテンシとコストが削減されます。
- 柔軟性: ユーザーは、ネットワークピアリングや資格情報の公開なしに、Claudeをプライベートネットワーク、カスタムツール、または独自のインフラストラクチャに接続できます。
- 将来性: メタハーネス設計は、新しいハーネス、サンドボックス、スケーリングパターンを想定しており、Claudeモデルが進化してもプラットフォームが使い続けられることを保証します。
結論
AnthropicのManaged Agentsは、数十年にわたるオペレーティングシステムの原則、つまり安定した抽象化によるハードウェアの仮想化を、現代のAIエージェントに適用します。セッション、ハーネス、サンドボックスに明確で交換可能なインターフェースを定義することで、Managed Agentsは、将来のモデルが必要とする特定の実装に依存しないまま、長時間実行されるClaude駆動のワークフローのための堅牢で安全かつスケーラブルな基盤を提供します。