a2aproject/a2a-js
Official JavaScript SDK for the Agent2Agent (A2A) Protocol
解決する課題
AI エージェントが通信し、相互運用するための標準化された方法を提供します。Agent2Agent (A2A) プロトコルを実装することで、基盤となるトランスポート方式に関係なく、さまざまなクライアントによって発見、駆動、管理されるエージェントを構築できます。
仕組み
この SDK を使用すると、開発者は A2A servers(機能を公開するエージェント)と A2A clients(それらのエージェントと対話するアプリケーション)を作成できます。JSON-RPC、HTTP+JSON/REST、gRPC の 3 つのワイヤトランスポートをサポートすることで、通信層を抽象化します。
サーバー側では AgentExecutor がビジネスロジックを処理し、DefaultRequestHandler がルーティング、タスクストレージ、プッシュ通知を管理します。クライアント側では、ClientFactory がエージェントの公開機能(「エージェントカード」)に基づいて最適なトランスポートを自動的に選択します。
対象読者
エージェントアプリケーションを構築しており、エージェント間またはクライアント・エージェント間の通信に一貫したプロトコルを必要とする開発者(特に TypeScript や JavaScript 環境で作業している方)。
ハイライト
- マルチトランスポートサポート: JSON-RPC、REST、gRPC をネイティブサポート。
- タスクライフサイクル管理: タスク送信、ストリーミング更新、ユーザーによるキャンセル処理を組み込みでサポート。
- 永続ストレージ: PostgreSQL、MySQL、SQLite、Cloudflare D1 をサポートし、再起動後もタスクや通知設定を保持。
- プッシュ通知: 持続的な接続を維持できない長時間実行タスク向けに、Webhook ベースの更新を提供。
- 後方互換性: v1.0 のデプロイメントが v0.3 のピアと相互運用できるようにするオプトインレイヤー。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト