pub struct AgentRunner { /* private fields */ }Expand description
A sub-agent runner.
This runs autonomous agents that do not require user input. Agents are run until “complete_task” is called. This currently has some duplicated logic with chat/ai.rs & chat/tools.rs. We need to refactor to better abstract out execution. This currently exists separately from ChatActor for background tasks like memory management.
Implementations§
Source§impl AgentRunner
impl AgentRunner
pub fn new( ai_provider: Arc<dyn AiProvider>, settings: SettingsManager, tools: BTreeMap<String, Arc<dyn ToolExecutor + Send + Sync>>, modules: Vec<Arc<dyn Module>>, steering: SteeringDocuments, prompt_builder: PromptBuilder, context_builder: ContextBuilder, ) -> Self
Auto Trait Implementations§
impl Freeze for AgentRunner
impl !RefUnwindSafe for AgentRunner
impl Send for AgentRunner
impl Sync for AgentRunner
impl Unpin for AgentRunner
impl !UnwindSafe for AgentRunner
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreCreates a shared type from an unshared type.