Expand description
A2A Client Library
This library provides a reusable client for communicating with A2A RC 1.0 compliant agent servers.
§Example Usage
ⓘ
use a2a_rs_client::{A2aClient, ClientConfig};
use a2a_rs_core::{Message, Part, Role};
let config = ClientConfig {
server_url: "http://localhost:8080".to_string(),
max_polls: 30,
poll_interval_ms: 2000,
oauth: None,
};
let client = A2aClient::new(config)?;
let card = client.fetch_agent_card().await?;
let message = Message {
message_id: uuid::Uuid::new_v4().to_string(),
role: Role::User,
parts: vec![Part::text("Hello")],
context_id: None,
task_id: None,
extensions: vec![],
reference_task_ids: None,
metadata: None,
};
let response = client.send_message(message, None).await?;Structs§
- A2aClient
- A2A Client for communicating with A2A-compliant agent servers
- Client
Config - Client configuration
- OAuth
Config - OAuth configuration for client authentication
Functions§
- generate_
code_ challenge - Generate a PKCE code challenge from a code verifier using S256 method
- generate_
code_ verifier - Generate a PKCE code verifier (43-128 character random string)
- generate_
random_ string - Generate a random string for state parameter