Skip to main content

RunExecutor

Trait RunExecutor 

Source
pub trait RunExecutor:
    Send
    + Sync
    + 'static {
    // Required method
    fn execute<'life0, 'async_trait>(
        &'life0 self,
        profile: AgentProfile,
        request: RunRequest,
        context: ExecutionContext,
    ) -> Pin<Box<dyn Future<Output = Result<ExecutionResult, RuntimeError>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;

    // Provided method
    fn capabilities(&self) -> RuntimeCapabilities { ... }
}
Expand description

Product-independent execution port used by the Runtime.

MicroClaw’s shared Agent Engine implements this port. Tests and embedding applications may provide another implementation without depending on Server or UI code.

Required Methods§

Source

fn execute<'life0, 'async_trait>( &'life0 self, profile: AgentProfile, request: RunRequest, context: ExecutionContext, ) -> Pin<Box<dyn Future<Output = Result<ExecutionResult, RuntimeError>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

Provided Methods§

Dyn Compatibility§

This trait is dyn compatible.

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

Implementors§