关于 A2amesh
A2amesh 是用于构建和运行 Agent2Agent 系统的 TypeScript 运行时与工具集,涵盖 Agent 发现、任务处理、可观测性、安全控制、MCP 互操作和命令行工作流。
主要功能
- 01A2A 运行时和客户端 SDK
- 02基于注册表发现 Agent
- 03任务持久化与可观测性
- 04MCP 桥接及独立 stdio 服务
- 05命令行验证、发现和监控
适用场景
- 01构建 A2A 客户端和服务端
- 02通过注册表发现 Agent
- 03连接 A2A 与 MCP 工作流
- 04使用命令行验证和监控 Agent
MCP 相关
@a2amesh/mcp 软件包提供 A2A 到 MCP 的桥接,以及独立的 a2amesh-mcp stdio 服务。工具集还包含 MCP 集成示例和验证工作流。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
A2A Mesh
用于构建和运行 Agent2Agent(A2A)系统的 TypeScript 运行时和运维工具包:运行时生命周期管理、基于注册表的发现、持久化、可观测性、安全的 MCP 互操作、命令行工作流和一致性测试工具。
路线图 · 成熟度报告 · OpenSSF 证据 · 安全保障说明
A2A Mesh 是一款独立的 TypeScript 运行时和工具包,用于实现 Agent2Agent(A2A)协议。它不是 Google、Linux Foundation 或 a2aproject 的官方软件包。
为什么选择 A2A Mesh?
A2A Mesh 是用于构建和运行 A2A 系统的 TypeScript 运行时和运维工具包。它通过基于注册表的发现、任务持久化、可观测性、安全边界、MCP 互操作、命令行工作流和一致性测试工具,为官方 A2A SDK 提供补充。
该仓库已通过仅限本地回环的实时互操作检查,验证了官方 JavaScript 和 Python SDK 在客户端与服务端双向通信时的互操作性。有关固定版本、已验证的流程和 CI 证据,请参阅官方 SDK 互操作。
信任与供应链
A2A Mesh 将公开的信任证据保存在 docs/security/trust-evidence.md 中,并将发布软件包的验证证据保存在 docs/release/package-verification.md 中。与信任相关的 README 徽章指向由工作流提供支持的信号:CI、文档、安全性、OpenSSF 评分卡、OpenSSF 准备度、npm 软件包元数据、许可证和包管理器限制。DeepWiki 徽章是文档导航链接,并非项目的信任信号。
提供的功能
- 提供 A2A 服务运行时和客户端 SDK,用于处理 Agent Card、JSON-RPC 消息、任务、工件和状态转换。
- 提供用于本地发现和健康轮询的注册表组件。
- 提供 OpenAI、Anthropic、LangChain、Google ADK、LlamaIndex 和 CrewAI 的适配器;安装可选的对等依赖项后,可支持 HTTP 桥接工作流。
- 提供用于验证、发现、发送消息、注册表导入/导出、任务监控、基准测试、诊断和脚手架搭建的 CLI 命令。
- 提供 MCP 桥接、WebSocket 传输、gRPC 传输和测试辅助工具包,用于经过仓库验证的工作流。
- 提供可运行的示例,涵盖经过身份验证的服务、流式传输、推送通知、注册表租户、WebSocket、gRPC、MCP 桥接、适配器模板、兼容 OpenAI 的提供商,以及多 Agent 注册表发现网格。
安装
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 Agent、注册表发现、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
这是面向候选版本的文档,并不表示目前可以从 npm 安装 0.19.0。
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
Agent 插件
此仓库负责维护一个产品级 Alpha 插件,用于安全的端点验证、经批准的任务操作和有界 MCP 使用。公开的 @a2amesh/mcp 包现已提供 a2amesh-mcp 标准输入/输出服务命令,而 .mcp.json、Codex、VS Code 和 OpenCode 示例默认仍为只读。有关安装、升级、回滚、工作流支持和单独的目录激活流程,请参阅 Agent 插件计划。
软件包列表
| 软件包 | 用途 |
|---|---|
@a2amesh/protocol | 协议类型、Agent Card、Task、Message、Artifact、JSON schema、兼容性测试样例。 |
@a2amesh/runtime | A2A 客户端/服务运行时、任务生命周期、流式传输、推送、身份验证钩子、存储、遥测钩子。 |
@a2amesh/registry | Agent 发现、健康状态、信任评分、签名卡片、注册表 API。 |
@a2amesh/mcp | 安全的 A2A ↔ MCP 桥接,以及独立的 a2amesh-mcp 标准输入/输出服务。 |
@a2amesh/cli | CLI 二进制文件 a2amesh。 |
@a2amesh/create-a2amesh | 项目脚手架工具。 |
A2A 协议兼容性
此实现以 Agent2Agent 协议 v1.0.0 为目标。请参阅兼容性,了解受支持的 Node.js、软件包、协议、传输方式、可选对等项以及弃用政策矩阵。
安全默认设置
- 公共 HTTP 服务模式必须使用身份验证,除非绑定到 loopback。
- A2A 服务和注册表 HTTP 路由默认会按客户端限制请求速率。
- 远程获取和回调 URL 会通过 SSRF 策略辅助函数检查。
- 配置 CORS 和 WebSocket 来源检查后,检查失败时会默认拒绝。
- CLI 和桥接代码不会输出完整的身份验证标头或具体的密钥值。
- 发布仅由所有者触发,并使用 npm Trusted Publishing/OIDC。
支持的适配器和传输方式
| 接口 | 状态 | 验证 |
|---|---|---|
| OpenAI 适配器 | 支持 | 使用伪造的提供方对象进行单元测试。 |
| Anthropic 适配器 | 支持 | 使用伪造的提供方对象进行单元测试。 |
| LangChain 适配器 | 支持 | 使用伪造的可运行对象进行单元测试。 |
| Google ADK 适配器 | 支持 | 单元测试和流式测试。 |
| LlamaIndex 适配器 | 支持 | 使用伪造的提供方对象进行单元测试。 |
| CrewAI HTTP 桥接 | 支持 | 使用本地 fetch 模拟进行单元测试。 |
| SSE 流式传输 | 支持 | 单元测试和集成测试。 |
| WebSocket 传输 | 支持 | 软件包测试。 |
| gRPC 传输 | 保留为软件包接口 | 构建和软件包检查;请参阅兼容性说明。 |
| MCP 桥接 | 支持 | 映射测试。 |
文档
文档网站:https://oaslananka.github.io/a2amesh/
贡献
请参阅 CONTRIBUTING.md,了解环境设置、验证和拉取请求指南。
提交更改前,请运行 pnpm run verify。
许可证
Apache-2.0。请参阅 LICENSE。
仓库成熟度与治理
本仓库作为专业的开源项目维护。请参阅成熟度和贡献文档,了解当前的运作模式:
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。