From 6eae92b4b5460631da4f30d0e99e096d405190df Mon Sep 17 00:00:00 2001 From: qqeasonchen Date: Mon, 21 Sep 2026 20:01:35 +0800 Subject: [PATCH] Docs: agent story cross-links + capability Beta promotions (landed after #5409 was merged) These changes were pushed to the #5409 branch minutes after it was squash-merged and missed the merge; resubmitting on top of develop:/n/n- README.md / README.zh-CN.md: LLM streaming agent runtime feature bullet, Agent tools & event triggers capability row, docs-list entries - Connector Runtime and A2A / Agent Gateway promoted to Beta (the Testcontainers E2E gate #5340 closed 2026-09) - docs/feature/a2a.md: Related capabilities section pairing A2A with the streaming agent runtime - docs/index.md: A2A entry cross-links agent-tools --- README.md | 8 +++++--- README.zh-CN.md | 8 +++++--- docs/feature/a2a.md | 19 +++++++++++++++++++ docs/index.md | 3 ++- 4 files changed, 31 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 315ebdfd75..7efd4d1503 100644 --- a/README.md +++ b/README.md @@ -47,6 +47,7 @@ Apache EventMesh is packed with features that help users build event-driven appl **Extensibility & ecosystem** - **Agent-to-Agent (A2A) collaboration** — a built-in [A2A protocol](docs/feature/a2a.md) turns EventMesh into an agent collaboration bus, bridging synchronous MCP / JSON-RPC 2.0 tool calls and asynchronous event-driven pub/sub for LLM and multi-agent systems. +- **LLM streaming agent runtime** — a standalone [agent process](docs/feature/agent-tools.md) hosts OpenAI-compatible LLM streaming sessions on the mesh, with function-calling tools: any [connector](docs/feature/connectors/README.md) becomes an agent tool, custom tools ship as [agent plugins](eventmesh-agent-plugin/) (SPI), and topics can drive agents as event triggers with decisions published back for sink delivery. - **Pluggable storage layer** — [Apache RocketMQ](https://rocketmq.apache.org) (4.x / 5.x) and [Apache Kafka](https://kafka.apache.org) ship today, plus a zero-dependency in-memory backend as the dev/CI default; more backends via the `MeshStoragePlugin` SPI. - **Pluggable interconnector layer** — [connectors](https://github.com/apache/eventmesh/tree/develop/eventmesh-connector-plugin) run as standalone processes acting as the source or sink of SaaS, CloudService, Database, etc. - **Pluggable meta service** — [Nacos](https://nacos.io) ships today (multi-instance coordination); more backends via the same storage SPI. @@ -66,8 +67,9 @@ status. See [docs](docs/) for the per-capability guides. | [Kafka / RocketMQ storage](eventmesh-storage-plugin/) (4.x, 5.x) | **GA target** | Recommended — pluggable WAL backends, TCK-covered (`MeshStoragePluginTCK`) | Primary path | | [Memory storage](eventmesh-storage-plugin/eventmesh-storage-memory/) (default) | **Beta** | Zero-dependency dev/CI/quick-start backend (`docker run apache/eventmesh` with no broker); state is process-local — not for production | Switch `EVENTMESH_STORAGE_TYPE` to kafka / rocketmq / rocketmq5 | | SSE / WebSocket push | **Beta** | Usable — integration-tested; ACK-tracked redelivery + DLQ are shared with long-polling (same `ReliableDispatcher`), e2e-real-broker suite in [#5389](https://github.com/apache/eventmesh/pull/5389) | Unified push transports | -| Connector Runtime | **Experimental** | Working end-to-end; all 23 plugins fully implemented since [#5394](https://github.com/apache/eventmesh/pull/5394) (no template stubs left), data-loss hardening in [#5328](https://github.com/apache/eventmesh/pull/5328); 4 of 23 (file/kafka/pulsar/rocketmq) still carry the only unit tests | SPI split into `eventmesh-connector-api` (#5328); remaining plugin tests + GA criteria tracked under the #5296 architecture review | -| [A2A / Agent Gateway](docs/feature/a2a.md) | **Experimental** | Evaluate — task store + runtime bridge (#5302/#5304), task reaper + Meta-backed agent cards landed in [#5346](https://github.com/apache/eventmesh/pull/5346), quota classification in [#5373](https://github.com/apache/eventmesh/pull/5373); promotion to Beta gated on the Testcontainers E2E suite (#5340) | Unified Runtime A2A | +| Connector Runtime | **Beta** | Usable — working end-to-end; all 23 plugins fully implemented since [#5394](https://github.com/apache/eventmesh/pull/5394) (no template stubs left), data-loss hardening in [#5328](https://github.com/apache/eventmesh/pull/5328); 4 of 23 (file/kafka/pulsar/rocketmq) still carry the only unit tests | Remaining plugin tests + GA criteria tracked under the #5296 architecture review | +| [A2A / Agent Gateway](docs/feature/a2a.md) | **Beta** | Usable — task store + runtime bridge (#5302/#5304), task reaper + Meta-backed agent cards in [#5346](https://github.com/apache/eventmesh/pull/5346), quota classification in [#5373](https://github.com/apache/eventmesh/pull/5373); the Testcontainers E2E gate (#5340) closed in September 2026 | Unified Runtime A2A | +| [Agent tools & event triggers](docs/feature/agent-tools.md) | **Experimental** | Evaluate — `LlmClient`/`ConversationMemory`/`AgentTool` extension points, connector-backed tools and SPI plugin deployment landed in [#5408](https://github.com/apache/eventmesh/pull/5408)/[#5409](https://github.com/apache/eventmesh/pull/5409); runtime in `eventmesh-agent-runtime`, plugins in `eventmesh-agent-plugin/` | Agent tool ecosystem | | TCP / gRPC / OpenMessaging SDKs | **Legacy-compatible** | Existing users only — kept so old clients run unmodified; not extended | [HTTP + CloudEvents](docs/feature/client-java.md) | Status meanings: @@ -89,7 +91,7 @@ The docs tree is organized by audience — start from the - [Introduction](docs/introduction.md) — what EventMesh is and when to use it - [Getting started](docs/quickstart/getting-started.md) — zero to a running runtime in minutes - [Configuration reference](docs/quickstart/configuration.md) — every runtime key, per-backend settings, security & quota -- User guides — [Java client](docs/feature/client-java.md) · [pub/sub](docs/feature/pubsub.md) · [delivery reliability](docs/feature/delivery-reliability.md) · [streaming](docs/feature/streaming.md) · [lite topic](docs/feature/lite-topic.md) · [A2A](docs/feature/a2a.md) +- User guides — [Java client](docs/feature/client-java.md) · [pub/sub](docs/feature/pubsub.md) · [delivery reliability](docs/feature/delivery-reliability.md) · [streaming](docs/feature/streaming.md) · [lite topic](docs/feature/lite-topic.md) · [A2A](docs/feature/a2a.md) · [agent tools](docs/feature/agent-tools.md) - Architecture — [overview](docs/architecture/overview.md) · [control plane](docs/feature/control-plane.md) · [security](docs/architecture/security.md) - API & operations — [HTTP API](docs/feature/http-api.md) · [admin API](docs/feature/admin-api.md) · [observability](docs/feature/observability.md) · [deployment](docs/feature/deployment.md) · [protocols & SDKs](docs/feature/protocols.md) · [storage SPI](docs/feature/storage-spi.md) diff --git a/README.zh-CN.md b/README.zh-CN.md index f30575aab9..15e498f8d2 100644 --- a/README.zh-CN.md +++ b/README.zh-CN.md @@ -48,6 +48,7 @@ Apache EventMesh 提供了丰富的能力,帮助用户轻松构建事件驱动 **扩展性与生态** - **智能体协作(A2A)** —— 内置的 [A2A 协议](docs/feature/a2a.md) 将 EventMesh 打造成智能体协作总线,打通同步的 MCP / JSON-RPC 2.0 工具调用与异步的事件驱动发布订阅,原生支撑大模型(LLM)与多智能体(Multi-Agent)场景。 +- **LLM 流式智能体运行时** —— 独立的 [agent 进程](docs/feature/agent-tools.md) 在消息网格上承载 OpenAI 兼容的 LLM 流式会话,支持函数调用工具:任意 [connector](docs/feature/connectors/README.md) 皆可作为智能体工具,自定义工具以[智能体插件](eventmesh-agent-plugin/)(SPI)形式交付,topic 事件可直接触发智能体并把决策发布回网格由 sink 投递。 - **可插拔存储层** —— [Apache RocketMQ](https://rocketmq.apache.org)(4.x / 5.x)与 [Apache Kafka](https://kafka.apache.org) 已随包提供;更多后端经 `MeshStoragePlugin` SPI 接入。 - **可插拔互联层(Connector)** —— [connectors](https://github.com/apache/eventmesh/tree/develop/eventmesh-connector-plugin) 作为独立进程运行,可充当 SaaS、CloudService、数据库等的 source 或 sink。 - **可插拔元数据服务** —— [Nacos](https://nacos.io) 已随包提供(多实例协调);更多后端经同一存储 SPI 接入。 @@ -66,8 +67,9 @@ Apache EventMesh 提供了丰富的能力,帮助用户轻松构建事件驱动 | [Kafka / RocketMQ 存储](eventmesh-storage-plugin/)(4.x、5.x) | **GA 目标** | 推荐——可插拔 WAL 后端,TCK 覆盖(`MeshStoragePluginTCK`) | 主路径 | | [Memory 内存存储](eventmesh-storage-plugin/eventmesh-storage-memory/)(默认) | **Beta** | 零依赖的开发/CI/快速上手后端(`docker run apache/eventmesh` 无需 broker);状态仅存于进程内——不可用于生产 | 切换 `EVENTMESH_STORAGE_TYPE` 为 kafka / rocketmq / rocketmq5 | | SSE / WebSocket 推送 | **Beta** | 可用——已有集成测试;ACK 追踪的重投递与 DLQ 已与长轮询共享同一 `ReliableDispatcher`,真实 broker 的 e2e 套件见 [#5389](https://github.com/apache/eventmesh/pull/5389) | 统一推送传输 | -| Connector Runtime | **Experimental** | 端到端可用;自 [#5394](https://github.com/apache/eventmesh/pull/5394) 起 23 个插件全部完整实现(不再有模板桩),数据丢失加固见 [#5328](https://github.com/apache/eventmesh/pull/5328);单元测试仍仅覆盖其中 4 个(file/kafka/pulsar/rocketmq) | SPI 拆分至 `eventmesh-connector-api`(#5328);剩余插件测试与 GA 标准由 #5296 架构 review 跟踪 | -| [A2A / Agent 网关](docs/feature/a2a.md) | **实验性** | 评估——TaskStore + Runtime 桥(#5302/#5304)、任务 reaper 与 Meta 化 AgentCard([#5346](https://github.com/apache/eventmesh/pull/5346))、配额分类([#5373](https://github.com/apache/eventmesh/pull/5373))均已落地;升 Beta 以 Testcontainers E2E 套件转绿为门槛(#5340) | 统一 Runtime A2A | +| Connector Runtime | **Beta** | 可用——端到端工作;自 [#5394](https://github.com/apache/eventmesh/pull/5394) 起 23 个插件全部完整实现(不再有模板桩),数据丢失加固见 [#5328](https://github.com/apache/eventmesh/pull/5328);单元测试仍仅覆盖其中 4 个(file/kafka/pulsar/rocketmq) | 剩余插件测试与 GA 标准由 #5296 架构 review 跟踪 | +| [A2A / Agent 网关](docs/feature/a2a.md) | **Beta** | 可用——TaskStore + Runtime 桥(#5302/#5304)、任务 reaper 与 Meta 化 AgentCard([#5346](https://github.com/apache/eventmesh/pull/5346))、配额分类([#5373](https://github.com/apache/eventmesh/pull/5373))均已落地;Testcontainers E2E 门槛(#5340)已于 2026 年 9 月关闭 | 统一 Runtime A2A | +| [智能体工具与事件触发](docs/feature/agent-tools.md) | **实验性** | 评估——`LlmClient`/`ConversationMemory`/`AgentTool` 扩展点、connector 工具化与 SPI 插件化部署已落地([#5408](https://github.com/apache/eventmesh/pull/5408)/[#5409](https://github.com/apache/eventmesh/pull/5409));运行时在 `eventmesh-agent-runtime`,插件在 `eventmesh-agent-plugin/` | 智能体工具生态 | | TCP / gRPC / OpenMessaging SDK | **Legacy 兼容** | 仅存量用户——保持老客户端零改动运行;不再扩展 | [HTTP + CloudEvents](docs/feature/client-java.md) | 状态含义: @@ -88,7 +90,7 @@ Apache EventMesh 提供了丰富的能力,帮助用户轻松构建事件驱动 - [快速上手(英文)](docs/quickstart/getting-started.md) —— 零到运行 - [配置参考(英文)](docs/quickstart/configuration.md) —— 每个运行时键、后端设置、安全 & 配额 - [客户端指引(英文)](docs/feature/client-java.md) —— `CloudEventsClient` 完整用法 -- 特性指引(英文)—— [发布订阅](docs/feature/pubsub.md) · [可靠投递](docs/feature/delivery-reliability.md) · [流式推送](docs/feature/streaming.md) · [Lite Topic](docs/feature/lite-topic.md) · [A2A](docs/feature/a2a.md) · [HTTP API](docs/feature/http-api.md) · [Admin API](docs/feature/admin-api.md) · [部署运维](docs/feature/deployment.md) +- 特性指引(英文)—— [发布订阅](docs/feature/pubsub.md) · [可靠投递](docs/feature/delivery-reliability.md) · [流式推送](docs/feature/streaming.md) · [Lite Topic](docs/feature/lite-topic.md) · [A2A](docs/feature/a2a.md) · [智能体工具](docs/feature/agent-tools.md) · [HTTP API](docs/feature/http-api.md) · [Admin API](docs/feature/admin-api.md) · [部署运维](docs/feature/deployment.md) - 架构(英文)—— [总览](docs/architecture/overview.md) · [安全](docs/architecture/security.md) · [架构重构设计档案](docs/architecture/redesign.md) ## 子项目 diff --git a/docs/feature/a2a.md b/docs/feature/a2a.md index 2310c77093..179d3ce408 100644 --- a/docs/feature/a2a.md +++ b/docs/feature/a2a.md @@ -714,6 +714,25 @@ The A2A Protocol v2.0 implementation is stable, functionally complete, and ready --- +## Related capabilities + +The A2A protocol is one half of EventMesh's agent story; the other half is the +**streaming agent runtime** ([`eventmesh-agent-runtime`](../feature/agent-tools.md)): + +- **A2A (this page)** — agent-*to*-agent collaboration: MCP / JSON-RPC 2.0 method calls, + task lifecycle, AgentCard discovery, SSE streaming between agents. +- **[Streaming agent + tools](agent-tools.md)** — agent-*to*-LLM: OpenAI-compatible + streaming sessions with a function-calling tool loop. Any connector plugin doubles as an + agent tool; custom tools ship as [`eventmesh-agent-plugin/`](../../eventmesh-agent-plugin/) + jars; topics can trigger agents as events (`agent.subscribe.topics`) with decisions + published back onto the mesh for sink delivery. + +Typical composition: an A2A orchestrator agent delegates a specialist task; the specialist +(a streaming agent) answers using its tools (e.g. the shipped `http-fetch` plugin or a +connector-backed write tool); the result flows back over A2A to the requester. + +--- + ## 7. Usage Guide (integrated from README.md) ## 使用指南 diff --git a/docs/index.md b/docs/index.md index fcb63b7639..2f7b071a77 100644 --- a/docs/index.md +++ b/docs/index.md @@ -47,7 +47,8 @@ too. - [Lite Topic (RocketMQ 5.x)](feature/lite-topic.md) — hierarchical messaging inside a parent topic; publish/poll semantics and checkpoints. - [A2A — Agent-to-Agent](feature/a2a.md) — the agent collaboration protocol: - task lifecycle, JSON-RPC/MCP bridge, REST + SDK usage + task lifecycle, JSON-RPC/MCP bridge, REST + SDK usage; pairs with the + [streaming agent runtime](feature/agent-tools.md) for agent-to-LLM sessions *(Experimental)*. - [Agent tools & event triggers](feature/agent-tools.md) — the agent extension points (LLM client, conversation memory, function-calling tools)