pub mod a2a;
mod channel;
pub mod external;
mod inbound;
pub mod key;
pub mod manifest;
mod node;
mod outbound;
mod relay;
pub mod seal;
pub mod token;
pub use external::{ExternalAgent, ExternalClient, ExternalConfig};
pub use key::{PublicKey, SigningKey};
pub use manifest::Manifest;
pub use node::{ManifestSource, NodeConfig, SIGNATURE_HEADER, TeamConfig, socket_dir, socket_path};
pub use outbound::Node;
pub use seal::{BoxKey, BoxPublic};
#[derive(Debug, thiserror::Error)]
#[non_exhaustive]
pub enum Error {
#[error("key: {0}")]
Key(String),
#[error("token: {0}")]
Token(String),
#[error("team manifest: {0}")]
Manifest(String),
#[error("{0}: {1}")]
Io(String, #[source] std::io::Error),
}