#![doc = include_str!("../README.md")]

mod default_paths;

/// Agent configuration, lifecycle, and event handling.
pub mod agent;
/// Background task coordination types and services.
pub mod background;
/// Provider integrations and transport-neutral request/response types.
pub mod provider;
/// Runtime orchestration, persistence, policies, and agent APIs.
pub mod runtime;
/// Team coordination types and collaboration services.
pub mod team;
/// Tool traits, metadata, and builtin tools.
pub mod tool;

pub use provider::{
    BuiltinProvider, ContentBlock, ImageSource, Message, ModelInfo, ProviderDescriptor, ProviderId,
    Role,
};

pub use agent::{Agent, AgentConfig};
pub use background::{BackgroundNotification, BackgroundTaskStatus, BackgroundTaskSummary};
pub use runtime::{Runtime, RuntimePolicy};
pub use team::{
    TeamDispatch, TeamMemberStatus, TeamMemberSummary, TeamMessage, TeamMessageKind,
    TeamProtocolRequestSummary, TeamProtocolStatus,
};

pub mod error {
    pub use crate::provider::ProviderError;
    pub use crate::runtime::RuntimeError;
}
