2 unstable releases
Uses new Rust 2024
| new 0.2.0 | Jan 30, 2026 |
|---|---|
| 0.1.0 | Jan 30, 2026 |
#7 in #a2a
430KB
10K
SLoC
A2A Rust SDK
A Rust implementation of the Agent2Agent (A2A) Protocol SDK.
This crate provides a complete implementation of the A2A protocol for building agentic applications that can communicate with each other following the Agent2Agent Protocol.
Features
- A2A Protocol Compliant: Full implementation of the A2A specification
- Async/Await: Built on tokio for high-performance async operations
- Type-Safe: Strongly typed models with serde serialization
- Extensible: Modular design with optional features
Quick Start
use xa2a::client::{A2AClient, Client};
#[tokio::main]
async fn main() -> Result<(), xa2a::error::A2AError> {
let client = A2AClient::new("https://agent.example.com")?;
let card = client.get_agent_card().await?;
println!("Connected to agent: {}", card.name);
Ok(())
}
xa2a
Rust SDK for the Agent2Agent (A2A) Protocol.
License
This project is licensed under either of the following licenses, at your option:
- Apache License, Version 2.0, (LICENSE-APACHE or https://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or https://opensource.org/licenses/MIT)
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you, as defined in the Apache-2.0 license, shall be dually licensed as above, without any additional terms or conditions.
Dependencies
~18–42MB
~516K SLoC