Expand description
§ra2a-ext
Extension utilities for the A2A Rust SDK.
This crate provides CallInterceptor and
server-side CallInterceptor implementations
for activating and propagating A2A protocol extensions across agent chains.
Aligned with Go’s a2aext package.
§Components
ExtensionActivator— Client interceptor that requests extension activation on outgoing calls, filtering by server-supported extensions.ServerPropagator— Server interceptor that extracts extension-related metadata and headers from incoming requests for downstream propagation.ClientPropagator— Client interceptor that injects propagated extension data into outgoing requests (for agent-to-agent chaining: A → B → C).
§Usage
use ra2a_ext::ExtensionActivator;
// Attach to a client to auto-request extensions on every call:
let activator = ExtensionActivator::new(vec![
"urn:a2a:ext:duration".into(),
]);Structs§
- Client
Propagator - Client-side
CallInterceptorthat injects propagated extension data into outgoing requests. - Client
Propagator Config - Configuration for
ClientPropagator. - Extension
Activator - Client-side
CallInterceptorthat requests extension activation. - Propagator
Context - Extension data extracted by
ServerPropagatorfor downstream propagation. - Server
Propagator - Server-side
CallInterceptorthat extracts extension-related metadata and headers from incoming requests. - Server
Propagator Config - Configuration for
ServerPropagator.
Functions§
- init_
propagation - Wraps a future with an empty propagation scope.