Expand description
A2A domain — the version negotiation model, the per-revision
A2aFeatureProfile, and the value objects that the wire
codecs (T28) lower into.
§Where this fits in the protocol-neutral core
The protocol-neutral core in domain/jsonrpc and
application/session already speaks JSON-RPC 2.0 — the same
envelope A2A uses. T27 is a feature on top of that core: a
per-revision codec (T08-style) and a per-revision
A2aFeatureProfile (T05-style) that mirrors the MCP gating
model. A future MCP↔A2A bridge (T28) is the consumer of both
profiles; this module is what the bridge translates between.
§The seam
A2aVersion is the only thing this module re-exports at the
top level. The A2aFeatureProfile lives in a2a::feature and
the per-revision wire types live under a2a::wire::v1_0. A
codec for v1.0 implements the protocol-neutral
application/jsonrpc::Codec trait so the dispatcher routes
the same way it does for MCP.
Re-exports§
pub use agent_card::AgentCapabilities;pub use agent_card::AgentCard;pub use agent_card::AgentCardBuilder;pub use agent_card::AgentCardError;pub use agent_card::AgentInterface;pub use agent_card::AgentSkill;pub use agent_card::GRPC;pub use agent_card::HTTP_JSON;pub use agent_card::JSONRPC;pub use agent_card::ProtocolBinding;pub use extended_agent_card::GetExtendedAgentCardRequest;pub use extended_agent_card::GetExtendedAgentCardResponse;pub use list_tasks::ListTasksRequest;pub use list_tasks::ListTasksResponse;pub use message::DataPart;pub use message::FileContent;pub use message::FilePart;pub use message::Message;pub use message::MessageRole;pub use message::Part;pub use message::TextPart;pub use push_notification::PushNotificationAuthenticationInfo;pub use push_notification::TaskPushNotificationConfig;pub use push_notification_methods::CreateTaskPushNotificationConfigRequest;pub use push_notification_methods::CreateTaskPushNotificationConfigResponse;pub use push_notification_methods::DeleteTaskPushNotificationConfigRequest;pub use push_notification_methods::DeleteTaskPushNotificationConfigResponse;pub use push_notification_methods::GetTaskPushNotificationConfigRequest;pub use push_notification_methods::GetTaskPushNotificationConfigResponse;pub use push_notification_methods::ListTaskPushNotificationConfigsRequest;pub use push_notification_methods::ListTaskPushNotificationConfigsResponse;pub use send_message::MessageSendConfiguration;pub use send_message::SendMessageRequest;pub use send_message::SendMessageResponse;pub use streaming_events::StreamingEvent;pub use streaming_events::TaskArtifactUpdateEvent;pub use streaming_events::TaskStatusUpdateEvent;pub use task::Artifact;pub use task::Task;pub use task::TaskState;pub use task::TaskStatus;pub use task_lifecycle::CancelTaskRequest;pub use task_lifecycle::CancelTaskResponse;pub use task_lifecycle::GetTaskRequest;pub use task_lifecycle::GetTaskResponse;pub use version::A2aVersion;pub use version::ParseA2aVersionError;pub use well_known::AGENT_CARD_WELL_KNOWN_PATH;pub use well_known::is_agent_card_well_known_path;
Modules§
- agent_
card - The A2A
AgentCard— the self-describing manifest an agent publishes at/.well-known/agent-card.json. - extended_
agent_ card - A2A
GetExtendedAgentCardtyped envelopes. - feature
A2aFeatureProfile— the per-revision capability bitset, derived from the same four inputs as the MCP profile.- list_
tasks - A2A
ListTaskstyped envelopes. - message
- A2A
MessageandPartvalue objects. - push_
notification - A2A push-notification configuration value objects — the wire form.
- push_
notification_ methods - A2A push-notification method envelopes — the four methods that read and write a task’s push-notification configurations.
- send_
message - A2A
SendMessagetyped envelopes — the request, the configuration, and the response. - streaming_
events - A2A streaming event value objects — the
TaskStatusUpdateEventandTaskArtifactUpdateEventtypes that flow over a Server-Sent Events connection. - task
- A2A
Task,TaskStatus,TaskState, andArtifactvalue objects. - task_
lifecycle - A2A
GetTaskandCancelTasktyped envelopes. - version
A2aVersion— the negotiated A2A revision, as a value object.- well_
known - The A2A
AgentCardwell-known URI.