#![doc = include_str!("../README.md")]
mod default_paths;
pub use mentra_provider as provider_core;
pub mod agent;
#[cfg(feature = "openai-oauth")]
pub mod auth;
pub mod background;
pub mod compaction;
pub mod memory;
pub mod provider;
pub mod runtime;
pub mod session;
pub mod team;
#[cfg(any(test, feature = "test-utils"))]
pub mod test;
pub mod tool;
pub mod transcript;
pub use mentra_provider::{
AnthropicRequestOptions, BuiltinProvider, ContentBlock, ContentBlockDelta, ContentBlockStart,
GeminiRequestOptions, ImageSource, Message, ModelInfo, ModelSelector, OpenAIRequestOptions,
ProviderCapabilities, ProviderCredentials, ProviderDefinition, ProviderDescriptor,
ProviderError, ProviderEvent, ProviderEventStream, ProviderId, ProviderRequestOptions,
ReasoningEffort, ReasoningOptions, Request, ResponsesRequestOptions, RetryPolicy, Role,
TokenUsage, ToolChoice, ToolSearchMode, WireApi, collect_response_from_stream,
provider_event_stream_from_response,
};
pub use provider::{Provider, ProviderRegistry};
pub use agent::{Agent, AgentConfig, SpawnedAgentStatus, SpawnedAgentSummary};
pub use background::{BackgroundNotification, BackgroundTaskStatus, BackgroundTaskSummary};
pub use compaction::{CompactionEngine, CompactionMode, StandardCompactionEngine};
pub use runtime::{
AgentStore, AuditStore, HybridRuntimeStore, LeaseStore, PermissionRuleStore, RunStore, Runtime,
RuntimePolicy, TaskStore,
};
pub use session::{
PermissionDecision, PermissionRequest, RememberedRule, RuleKey, RuleStore, Session,
SessionEvent, SessionEventReceiver, SessionId, SessionMetadata, SessionPermissionHandle,
SessionStatus, SubagentHandle,
};
pub use team::{
TeamDispatch, TeamMemberStatus, TeamMemberSummary, TeamMessage, TeamMessageKind,
TeamProtocolRequestSummary, TeamProtocolStatus,
};
pub use transcript::{
AgentTranscript, CompactionSummary, DelegationArtifact, DelegationEdge, DelegationKind,
DelegationStatus, TranscriptItem, TranscriptKind,
};
pub mod error {
pub use crate::provider::ProviderError;
pub use crate::runtime::{ErrorCategory, RuntimeError};
}