Skip to main content

ProtocolDriverPlugin

Trait ProtocolDriverPlugin 

Source
pub trait ProtocolDriverPlugin: Send + Sync {
    // Required method
    fn build_preamble(&self, input: ProtocolBuildInput) -> TurnDriverPreamble;
}
Expand description

Singleton kernel extension slot that owns the ProtocolDriverHandle and associated preamble (prompt text, tool catalog, sync/async flag) for this session.

Core owns the slot and the HostTurnProtocol state shape so the turn loop can persist and resume protocol driver state generically. External protocol crates own the concrete prompt policy and output parser. Plugin stack construction must install exactly one implementation.

Required Methods§

Source

fn build_preamble(&self, input: ProtocolBuildInput) -> TurnDriverPreamble

Build the TurnDriverPreamble (driver handle + prompt text + tool surface metadata) for a turn.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§