Skip to main content

Crate ra2a_ext

Crate ra2a_ext 

Source
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§

ClientPropagator
Client-side CallInterceptor that injects propagated extension data into outgoing requests.
ClientPropagatorConfig
Configuration for ClientPropagator.
ExtensionActivator
Client-side CallInterceptor that requests extension activation.
PropagatorContext
Extension data extracted by ServerPropagator for downstream propagation.
ServerPropagator
Server-side CallInterceptor that extracts extension-related metadata and headers from incoming requests.
ServerPropagatorConfig
Configuration for ServerPropagator.

Functions§

init_propagation
Wraps a future with an empty propagation scope.