Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 5 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand All @@ -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:
Expand All @@ -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)

Expand Down
8 changes: 5 additions & 3 deletions README.zh-CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -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 接入。
Expand All @@ -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) |

状态含义:
Expand All @@ -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)

## 子项目
Expand Down
19 changes: 19 additions & 0 deletions docs/feature/a2a.md
Original file line number Diff line number Diff line change
Expand Up @@ -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)

## 使用指南
Expand Down
3 changes: 2 additions & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down
Loading