pub struct Agent { /* private fields */ }Implementations§
Source§impl Agent
impl Agent
pub fn new( transport: Arc<dyn ProviderTransport>, tools: Arc<ToolRegistry>, memory: Arc<dyn MemoryStore>, config: Arc<AgentConfig>, ) -> Self
pub fn with_session_db(self, db: Arc<SessionDb>) -> Self
pub fn tool_count(&self) -> usize
pub fn tool_names(&self) -> Vec<String>
pub fn tool_names_by_toolset(&self) -> BTreeMap<String, Vec<String>>
pub fn spawn_child(&self) -> Self
pub async fn run( &self, task: &str, approver: Arc<dyn CommandApprover>, platform: &str, ) -> Result<AgentResult, AgentError>
pub async fn run_streaming( &self, task: &str, approver: Arc<dyn CommandApprover>, platform: &str, chunk_tx: UnboundedSender<String>, ) -> Result<AgentResult, AgentError>
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Agent
impl !RefUnwindSafe for Agent
impl Send for Agent
impl Sync for Agent
impl Unpin for Agent
impl UnsafeUnpin for Agent
impl !UnwindSafe for Agent
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 more