microsandbox_agent_client/lib.rs
1//! Transport-agnostic client for the microsandbox agent protocol.
2//!
3//! This crate owns the low-level client layer: handshakes, correlation IDs,
4//! request/stream routing, message encoding, and transport adapters. High-level
5//! SDK crates remain responsible for sandbox lifecycle and name resolution.
6//!
7//! No transport is enabled by default. Enable `uds` for local microsandbox relay
8//! sockets or `websocket` for relay endpoints exposed over WebSocket.
9
10#![warn(missing_docs)]
11
12pub mod client;
13pub mod error;
14pub mod message;
15pub mod stream;
16pub mod transport;
17
18/// Transport adapters that can be enabled with crate features.
19pub mod transports {
20 /// Unix domain socket transport support.
21 #[cfg(feature = "uds")]
22 pub mod uds;
23}
24
25//--------------------------------------------------------------------------------------------------
26// Re-Exports
27//--------------------------------------------------------------------------------------------------
28
29pub use client::{AgentClient, AgentProtocol};
30pub use error::{AgentClientError, AgentClientResult};
31pub use message::{EncodedMessage, IntoOutboundMessage, OutboundMessage, TypedMessage};
32pub use stream::AgentStream;
33pub use transport::{AgentTransport, TransportPacket};