A2amesh について
A2ameshは、Agent2Agentシステムの構築と運用に使うTypeScriptランタイムおよびツールキットです。エージェントの発見、タスク処理、可観測性、セキュリティ制御、MCP連携、CLIワークフローを備えています。
主な機能
- 01A2AランタイムとクライアントSDK
- 02レジストリによるエージェント発見
- 03タスクの永続化と可観測性
- 04MCPブリッジと単独のstdioサーバー
- 05CLIによる検証・発見・監視
活用シーン
- 01A2Aクライアントとサーバーの構築
- 02レジストリを介したエージェント発見
- 03A2AワークフローとMCPの接続
- 04CLIによるエージェントの検証と監視
MCP 対応
@a2amesh/mcpパッケージは、A2AとMCPのブリッジ、および単独で動作するa2amesh-mcp stdioサーバーを提供します。ツールキットにはMCP連携の例と検証ワークフローも含まれます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
A2A Mesh
Agent2Agent(A2A)システムの構築と運用に向けた TypeScript ランタイムと運用ツールキットです。ランタイムのライフサイクル、レジストリを活用した検出、永続化、可観測性、安全な MCP 相互運用、CLI ワークフロー、適合性ツールを提供します。
A2A Mesh は、Agent2Agent(A2A)プロトコル向けの独立した TypeScript ランタイムおよびツールキットです。Google、Linux Foundation、または a2aproject の公式パッケージではありません。
A2A Mesh を選ぶ理由
A2A Mesh は、A2A システムの構築と運用に向けた TypeScript ランタイムおよび運用ツールキットです。レジストリを活用した検出、タスクの永続化、可観測性、セキュリティ境界、MCP 相互運用、CLI ワークフロー、適合性ツールを提供し、公式 A2A SDK を補完します。
このリポジトリではすでに、公式 JavaScript SDK と Python SDK を使用したループバック限定のライブ相互運用チェックを、クライアント/サーバーの両方向で実行しています。固定バージョン、検証済みフロー、CI の証拠については、公式 SDK との相互運用をご覧ください。
信頼性とサプライチェーン
A2A Mesh は、公開されている信頼性の証拠を docs/security/trust-evidence.md に、リリースパッケージの検証証拠を docs/release/package-verification.md に掲載しています。README の信頼性関連バッジは、CI、ドキュメント、セキュリティ、OpenSSF スコアカード、OpenSSF 準備状況、npm パッケージのメタデータ、ライセンス、パッケージマネージャーの制約といった、ワークフローに基づく指標にリンクしています。DeepWiki バッジはドキュメント内のナビゲーションリンクであり、プロジェクトの信頼性を示す指標ではありません。
提供する機能
- Agent Card、JSON-RPC メッセージ、タスク、アーティファクト、ステータス遷移に対応する A2A サーバーランタイムとクライアント SDK。
- ローカルでの検出とヘルスチェックのポーリングを行うレジストリコンポーネント。
- オプションのピア依存関係がインストールされている場合に利用できる、OpenAI、Anthropic、LangChain、Google ADK、LlamaIndex、CrewAI の HTTP ブリッジフロー向けアダプター。
- 検証、検出、メッセージ送信、レジストリのエクスポート/インポート、タスクの監視、ベンチマーク、診断、スキャフォールディング用の CLI コマンド。
- リポジトリで検証済みのワークフロー向けの MCP ブリッジ、WebSocket トランスポート、gRPC トランスポート、テストヘルパーパッケージ。
- 認証済みサーバー、ストリーミング、プッシュ通知、レジストリのテナンシー、WebSocket、gRPC、MCP ブリッジ、アダプターテンプレート、OpenAI 互換プロバイダー、マルチエージェントのレジストリ検出メッシュの実行可能なサンプル。
インストール
A2A Mesh は、サポート対象の安定版リリースを npm の latest dist-tag で公開しています。バージョン指定のないパッケージ参照では、この安定版が解決されます。以前のプレリリースビルド向けに従来の alpha dist-tag も引き続き利用できますが、推奨されるインストール先ではありません。自動化を再現可能にするには、npm view @a2amesh/runtime@latest version で現在報告される正確なバージョンを固定してください。
pnpm add @a2amesh/runtime
PowerShell:
pnpm add @a2amesh/runtime
クイックスタート
公開済みの安定版パッケージ(0.18.2、2026年10月10日検証済み)
現在の npm latest パッケージは、custom agent スキャフォールドに対応しています。
このフローは、このリポジトリをクローンせずに、新しいディレクトリでテスト済みです。
pnpm dlx @a2amesh/create-a2amesh@latest my-agent --adapter custom
cd my-agent
npm install
npm run build
npm run dev
PowerShell:
pnpm dlx @a2amesh/create-a2amesh@latest my-agent --adapter custom
Set-Location my-agent
npm install
npm run build
npm run dev
公開済みのこのスキャフォールドでは npm install を使用します。pnpm 11 は、承認されていない esbuild のライフサイクルスクリプトを拒否するためです。この custom scaffold には pnpm verify コマンドは含まれていません。
準備済みソース 0.19.0(npm では未公開)
新しい production-demo は、認証情報不要の A2A エージェントを2つ生成し、レジストリ検出、SQLite による永続化、範囲を限定した MCP 検証に対応します。これはソースコードには存在しますが、npm の latest=0.18.2 ではサポートされていません。ガード付きの 0.19.0 リリースが公開され、レジストリのメタデータが検証された後は、次の手順を実行できます。
pnpm dlx @a2amesh/[email protected] my-demo --template production-demo
cd my-demo
pnpm install
cp .env.example .env
pnpm dev
# In another terminal:
pnpm verify
PowerShell(公開後):
pnpm dlx @a2amesh/[email protected] my-demo --template production-demo
Set-Location my-demo
pnpm install
Copy-Item .env.example .env
pnpm dev
# Separate terminal:
pnpm verify
これはリリース候補のドキュメントであり、現在 0.19.0 を npm からインストールできることを示すものではありません。
CLI の使用例
a2amesh validate ./agent-card.json
a2amesh discover http://127.0.0.1:3000
a2amesh init demo-agent --adapter custom
a2amesh send http://127.0.0.1:3000 "hello"
a2amesh task status http://127.0.0.1:3000 task-123
a2amesh health http://127.0.0.1:3000 --timeout-ms 1000 --json
a2amesh conformance http://127.0.0.1:3000 --protocol-version 1.0 --json
a2amesh conformance-badge report.json --output badge.svg
a2amesh registry export --url http://127.0.0.1:3099 --output ./registry-export.json
a2amesh registry import --url http://127.0.0.1:3099 --input ./registry-export.json
a2amesh export-card http://127.0.0.1:3000 --output ./agent-card.json
a2amesh monitor http://127.0.0.1:3000 --cycles 3
a2amesh benchmark http://127.0.0.1:3000 --requests 25 --concurrency 5
a2amesh release-check
a2amesh doctor --json
a2amesh replay ./task-123.cassette.jsonl
a2amesh trust sign ./agent-card.json --key ./signing-key.pem --key-id my-key --output ./agent-card.signed.json
a2amesh trust verify ./agent-card.signed.json --trusted-key my-key:./public-key.pem
PowerShell:
a2amesh validate .\agent-card.json
a2amesh discover http://127.0.0.1:3000
a2amesh init demo-agent --adapter custom
a2amesh send http://127.0.0.1:3000 "hello"
a2amesh task status http://127.0.0.1:3000 task-123
a2amesh health http://127.0.0.1:3000 --timeout-ms 1000 --json
a2amesh conformance http://127.0.0.1:3000 --protocol-version 1.0 --json
a2amesh conformance-badge report.json --output badge.svg
a2amesh registry export --url http://127.0.0.1:3099 --output .\registry-export.json
a2amesh registry import --url http://127.0.0.1:3099 --input .\registry-export.json
a2amesh export-card http://127.0.0.1:3000 --output .\agent-card.json
a2amesh monitor http://127.0.0.1:3000 --cycles 3
a2amesh benchmark http://127.0.0.1:3000 --requests 25 --concurrency 5
a2amesh release-check
a2amesh doctor --json
a2amesh replay .\task-123.cassette.jsonl
a2amesh trust sign .\agent-card.json --key .\signing-key.pem --key-id my-key --output .\agent-card.signed.json
a2amesh trust verify .\agent-card.signed.json --trusted-key my-key:.\public-key.pem
エージェントプラグイン
このリポジトリでは、安全なエンドポイント検証、承認済みのタスク操作、範囲を限定した MCP 利用を目的とする、製品レベルのアルファ版プラグインを提供しています。公開パッケージ @a2amesh/mcp では、a2amesh-mcp stdio サーバーコマンドが利用できるようになりました。一方、.mcp.json、Codex、VS Code、OpenCode の例は、デフォルトで読み取り専用です。インストール、アップグレード、ロールバック、ワークフローのサポート、個別のカタログ有効化プロセスについては、エージェントプラグインの計画を参照してください。
パッケージ一覧
| パッケージ | 用途 |
|---|---|
@a2amesh/protocol | プロトコル型、Agent Card、Task、Message、Artifact、JSON スキーマ、互換性フィクスチャ。 |
@a2amesh/runtime | A2A クライアント/サーバーランタイム、タスクのライフサイクル、ストリーミング、プッシュ、認証フック、ストレージ、テレメトリフック。 |
@a2amesh/registry | エージェントの検出、ヘルス、信頼スコア、署名済みカード、レジストリ API。 |
@a2amesh/mcp | セキュアな A2A ↔ MCP ブリッジと、スタンドアロンの a2amesh-mcp stdio サーバー。 |
@a2amesh/cli | CLI バイナリ a2amesh。 |
@a2amesh/create-a2amesh | プロジェクトスキャフォールダー。 |
A2A プロトコルの互換性
この実装は、Agent2Agent プロトコル v1.0.0 を対象としています。対応する Node.js、パッケージ、プロトコル、トランスポート、オプションのピア、および非推奨ポリシーの一覧については、互換性をご覧ください。
セキュリティのデフォルト設定
- パブリック HTTP サーバーモードでは、ループバックにバインドされていない限り、認証を使用する必要があります。
- A2A サーバーとレジストリの HTTP ルートでは、デフォルトでクライアントごとにリクエスト数が制限されます。
- リモートフェッチとコールバック URL には、SSRF ポリシーヘルパーが適用されます。
- CORS と WebSocket のオリジンチェックは、設定されている場合、フェイルクローズで動作します。
- CLI とブリッジのコードでは、認証ヘッダー全体や具体的なシークレット値の出力を避けます。
- リリースの公開は所有者がトリガーする場合に限られ、npm Trusted Publishing/OIDC を使用します。
対応アダプターとトランスポート
| サーフェス | ステータス | 検証 |
|---|---|---|
| OpenAI アダプター | 対応 | フェイクプロバイダーオブジェクトを使ったユニットテスト。 |
| Anthropic アダプター | 対応 | フェイクプロバイダーオブジェクトを使ったユニットテスト。 |
| LangChain アダプター | 対応 | フェイクランナブルを使ったユニットテスト。 |
| Google ADK アダプター | 対応 | ユニットテストとストリーミングテスト。 |
| LlamaIndex アダプター | 対応 | フェイクプロバイダーオブジェクトを使ったユニットテスト。 |
| CrewAI HTTP ブリッジ | 対応 | ローカルのフェッチモックを使ったユニットテスト。 |
| SSE ストリーミング | 対応 | ユニットテストと統合テスト。 |
| WebSocket トランスポート | 対応 | パッケージテスト。 |
| gRPC トランスポート | パッケージのサーフェスとして維持 | ビルドとパッケージのチェック。互換性に関する注記をご覧ください。 |
| MCP ブリッジ | 対応 | マッピングテスト。 |
ドキュメント
ドキュメントサイト:https://oaslananka.github.io/a2amesh/
コントリビューション
セットアップ、検証、プルリクエストのガイダンスについては、CONTRIBUTING.mdをご覧ください。
変更を提出する前に、pnpm run verify を実行してください。
ライセンス
Apache-2.0。LICENSEをご覧ください。
リポジトリの成熟度とガバナンス
このリポジトリは、プロフェッショナルなオープンソースプロジェクトとして維持されています。現在の運営モデルについては、成熟度およびコントリビューションに関するドキュメントをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。