ACP コーディングエージェント
Agent Client Protocol は、コーディング用インターフェースをコーディングエージェントに接続します。インターフェースは、エディタ、デスクトップアプリケーション、CLI、または別の ADK-Rust エージェントである場合があります。コーディングエージェントは、プロジェクトについて推論し、共有セッションを通じて作業内容を報告する、別個のプロセスです。
ADK-Rust は、安定版 ACP プロトコル version 1 の両側を実装します。
- 外部の ACP コーディングエージェントを ADK-Rust アプリケーションから使用する;
- エディタが起動できる ACP プロセスとして、ADK-Rust エージェントを公開する。
実装は公式の agent-client-protocol Rust SDK を使用します。SDK crate の version と ACP wire version は別物です。ADK-Rust は現在 SDK 1.2 を使用しつつ、initialize 中に protocol version 1 をネゴシエートします。
このセクションを読む
- Architecture and concepts は、2つの役割と完全な request フローを説明します。
- Build an ACP client or host は、単発の委任、永続セッション、ストリーミング、キャンセル、権限、ファイル、ターミナル、および session MCP servers を扱います。
- Expose an ADK-Rust ACP agent は、サーバー構築、ライフサイクルのマッピング、イベントストリーミング、セッションの永続化、およびデプロイを扱います。
- Testing and support matrix は、検証済みの動作と、ADK-Rust が意図的に公開しない機能を一覧します。
どの protocol を使うべきですか?
| 境界 | 使用する場面 |
|---|---|
| ACP | プロジェクトセッション内でコーディングエージェントと連携する対話型コーディングインターフェース |
| A2A | リモートタスクと成果物をやり取りする、独立してデプロイされたビジネスエージェント |
| MCP | エージェントの背後で利用可能にされるツール、プロンプト、およびリソース |
ACP は、コーディングセッションが開始するときに MCP サーバー設定を含めることがあります。だからといって ACP と MCP が互換であるわけではありません: ACP はコーディングエージェントの会話を担当し、MCP はその会話中に使用されるツールとリソースを提供します。
例
| 例 | それが示すこと |
|---|---|
examples/acp_client_host | ストリーミングされたクライアント UI、非同期の権限、そしてワークスペースに限定された読み取り専用ファイルシステム |
examples/acp_kiro | 直接委譲、ACP エージェントを ADK ツールとして使用すること、永続セッション、環境設定、そして同時キャンセル |
examples/acp_server | エディタに ACP v1 経由で公開される、ツールを使用する ADK-Rust LLM エージェント |
examples/acp_full_protocol | インプロセスで動作する、no-API-key の Runner ベースのリファレンス。Phase 2 のサーバー表面全体(埋め込みリソース + 画像/音声プロンプト、権限ブリッジ、session/load リプレイ、使用量/ツール呼び出し更新)をテストで検証する |
前: ← ベンチマーク | 次: 再試行と振り返り →