pub struct ArchitectAgent { /* private fields */ }Expand description
Architect agent - handles planning and DAG construction
Implementations§
Source§impl ArchitectAgent
impl ArchitectAgent
pub fn new(provider: Arc<GenAIProvider>, model: Option<String>) -> Self
pub fn build_planning_prompt( &self, node: &SRBNNode, ctx: &AgentContext, ) -> String
Trait Implementations§
Source§impl Agent for ArchitectAgent
impl Agent for ArchitectAgent
Source§fn process<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
node: &'life1 SRBNNode,
ctx: &'life2 AgentContext,
) -> Pin<Box<dyn Future<Output = Result<AgentMessage>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn process<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
node: &'life1 SRBNNode,
ctx: &'life2 AgentContext,
) -> Pin<Box<dyn Future<Output = Result<AgentMessage>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Process a task and return a message
Source§fn can_handle(&self, node: &SRBNNode) -> bool
fn can_handle(&self, node: &SRBNNode) -> bool
Check if this agent can handle the given node
Source§fn build_prompt(&self, node: &SRBNNode, ctx: &AgentContext) -> String
fn build_prompt(&self, node: &SRBNNode, ctx: &AgentContext) -> String
Build the prompt for this agent (for logging)
Auto Trait Implementations§
impl !RefUnwindSafe for ArchitectAgent
impl !UnwindSafe for ArchitectAgent
impl Freeze for ArchitectAgent
impl Send for ArchitectAgent
impl Sync for ArchitectAgent
impl Unpin for ArchitectAgent
impl UnsafeUnpin for ArchitectAgent
Blanket Implementations§
impl<T> AsTypeStaticRegistered for T
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
impl<T> HasTyVTable for Twhere
T: ?Sized,
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.