pub trait RegistryBundle: Send + Sync {
// Required method
fn id(&self) -> &str;
// Provided methods
fn agent_definitions(&self) -> HashMap<String, AgentDefinition> { ... }
fn agent_registries(&self) -> Vec<Arc<dyn AgentRegistry>> { ... }
fn tool_definitions(&self) -> HashMap<String, Arc<dyn Tool>> { ... }
fn tool_registries(&self) -> Vec<Arc<dyn ToolRegistry>> { ... }
fn behavior_definitions(&self) -> HashMap<String, Arc<dyn AgentBehavior>> { ... }
fn behavior_registries(&self) -> Vec<Arc<dyn BehaviorRegistry>> { ... }
fn provider_definitions(&self) -> HashMap<String, Client> { ... }
fn provider_registries(&self) -> Vec<Arc<dyn ProviderRegistry>> { ... }
fn model_definitions(&self) -> HashMap<String, ModelDefinition> { ... }
fn model_registries(&self) -> Vec<Arc<dyn ModelRegistry>> { ... }
}Expand description
Bundle-level contributor for registry composition.
A bundle contributes either direct definitions (maps) and/or registry sources. The orchestrator composes these contributions into concrete in-memory/composite registries with deterministic conflict checks.