SystemWiring

Trait SystemWiring 

Source
pub trait SystemWiring: Send + Sync {
    // Required methods
    fn id(&self) -> &str;
    fn wire(
        &self,
        ctx: &WiringContext<'_>,
    ) -> Result<Vec<Arc<dyn RegistryBundle>>, AgentOsWiringError>;

    // Provided method
    fn reserved_behavior_ids(&self) -> &[&'static str] { ... }
}
Expand description

Generic wiring interface for extension subsystems.

Each SystemWiring implementation encapsulates the tools, behaviors, and registry bundles contributed by one extension subsystem. The orchestrator iterates over registered wirings during wire_into() instead of hardcoding calls per extension.

Required Methods§

Source

fn id(&self) -> &str

Unique identifier for this wiring (e.g. "skills").

Source

fn wire( &self, ctx: &WiringContext<'_>, ) -> Result<Vec<Arc<dyn RegistryBundle>>, AgentOsWiringError>

Produce wiring bundles for a specific agent definition.

Called during wire_into(). The implementation receives the resolved user-defined behaviors and existing tool map for conflict detection.

Provided Methods§

Source

fn reserved_behavior_ids(&self) -> &[&'static str]

Behavior IDs reserved by this subsystem. Users cannot reference these in AgentDefinition.behavior_ids.

Implementors§