pub struct LoopAgent { /* private fields */ }Expand description
Loop agent executes sub-agents repeatedly for N iterations or until escalation
Implementations§
Source§impl LoopAgent
impl LoopAgent
pub fn new(name: impl Into<String>, sub_agents: Vec<Arc<dyn Agent>>) -> Self
pub fn with_description(self, desc: impl Into<String>) -> Self
pub fn with_max_iterations(self, max: u32) -> Self
pub fn with_skills(self, index: SkillIndex) -> Self
pub fn with_auto_skills(self) -> Result<Self>
pub fn with_skills_from_root(self, root: impl AsRef<Path>) -> Result<Self>
pub fn with_skill_policy(self, policy: SelectionPolicy) -> Self
pub fn with_skill_budget(self, max_chars: usize) -> Self
pub fn before_callback(self, callback: BeforeAgentCallback) -> Self
pub fn after_callback(self, callback: AfterAgentCallback) -> Self
Trait Implementations§
Source§impl Agent for LoopAgent
impl Agent for LoopAgent
fn name(&self) -> &str
fn description(&self) -> &str
fn sub_agents(&self) -> &[Arc<dyn Agent>]
fn run<'life0, 'async_trait>(
&'life0 self,
ctx: Arc<dyn InvocationContext>,
) -> Pin<Box<dyn Future<Output = Result<EventStream>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Auto Trait Implementations§
impl Freeze for LoopAgent
impl !RefUnwindSafe for LoopAgent
impl Send for LoopAgent
impl Sync for LoopAgent
impl Unpin for LoopAgent
impl UnsafeUnpin for LoopAgent
impl !UnwindSafe for LoopAgent
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> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request