Skip to content

A2A: Protocol envelope and async broker #30

@alokdangre

Description

@alokdangre

Contact Details

[email protected]

Is your feature request related to a problem?

Ad-hoc agent messaging causes inconsistent behavior and higher latency. There’s no standardized envelope or lightweight broker for topic-based fanout and direct messages between agents.

Describe the solution you'd like

Introduce a compact Message/MessageType protocol and an async in-process A2ABroker supporting:

  • Topic pub/sub for events and coordination
  • Direct send to agent inboxes
  • Drop-on-full queues to keep common-path latency <100ms

Describe alternatives you've considered

  • External brokers (NATS/Redis/Kafka): robust but add ops overhead and dependencies.
  • HTTP between agents: simple, but adds per-request connection costs and lacks easy fanout.

Use Case

Agents coordinating cluster actions (scale, rollout, health events) with low latency and simple developer ergonomics. For example, broadcasting “wec-east1 ready” to subscribers or sending a direct “ping” to a coordinator.

Priority

High - Important for my workflow

Feature Type

  • New functionality
  • Performance improvement
  • User experience enhancement
  • Developer experience improvement
  • Security enhancement
  • Documentation improvement
  • API enhancement

Additional Context

See short design overview in docs/a2a_mcp_design.md. Broker is intentionally minimal to be replaced by a distributed backend later without changing call sites.

Implementation

  • I would be willing to submit a pull request to implement this feature
  • I can help with testing
  • I can help with documentation
  • I can provide feedback during development

Code of Conduct

  • I agree to follow this project's Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions