pub struct AgentTools { /* private fields */ }Expand description
AgentTools provides coordination tools for multi-agent collaboration.
Implementations§
Source§impl AgentTools
impl AgentTools
pub fn new( agent_store: AgentStore, conversation_store: ConversationStore, task_store: TaskStore, event_bus: EventBus, ) -> AgentTools
pub async fn list_agents( &self, workspace_id: &str, ) -> Result<ToolResult, ServerError>
pub async fn read_agent_conversation( &self, agent_id: &str, last_n: Option<usize>, start_turn: Option<i32>, end_turn: Option<i32>, include_tool_calls: bool, ) -> Result<ToolResult, ServerError>
pub async fn create_agent( &self, name: &str, role: &str, workspace_id: &str, parent_id: Option<&str>, model_tier: Option<&str>, ) -> Result<ToolResult, ServerError>
pub async fn delegate( &self, agent_id: &str, task_id: &str, caller_agent_id: &str, ) -> Result<ToolResult, ServerError>
pub async fn message_agent( &self, from_agent_id: &str, to_agent_id: &str, message: &str, ) -> Result<ToolResult, ServerError>
pub async fn report_to_parent( &self, agent_id: &str, report: CompletionReport, ) -> Result<ToolResult, ServerError>
pub async fn create_task( &self, title: &str, objective: &str, workspace_id: &str, session_id: Option<&str>, scope: Option<&str>, acceptance_criteria: Option<Vec<String>>, verification_commands: Option<Vec<String>>, test_cases: Option<Vec<String>>, dependencies: Option<Vec<String>>, parallel_group: Option<&str>, ) -> Result<ToolResult, ServerError>
pub async fn get_task(&self, task_id: &str) -> Result<ToolResult, ServerError>
pub async fn list_tasks( &self, workspace_id: &str, ) -> Result<ToolResult, ServerError>
pub async fn update_task_status( &self, task_id: &str, status: &str, agent_id: &str, summary: Option<&str>, ) -> Result<ToolResult, ServerError>
pub async fn subscribe_to_events( &self, agent_id: &str, agent_name: &str, event_types: Vec<String>, exclude_self: bool, one_shot: bool, wait_group_id: Option<String>, priority: i32, ) -> Result<ToolResult, ServerError>
pub async fn unsubscribe_from_events( &self, subscription_id: &str, ) -> Result<ToolResult, ServerError>
pub async fn drain_pending_events( &self, agent_id: &str, ) -> Result<ToolResult, ServerError>
pub async fn get_agent_status( &self, agent_id: &str, ) -> Result<ToolResult, ServerError>
pub async fn get_agent_summary( &self, agent_id: &str, ) -> Result<ToolResult, ServerError>
Auto Trait Implementations§
impl Freeze for AgentTools
impl !RefUnwindSafe for AgentTools
impl Send for AgentTools
impl Sync for AgentTools
impl Unpin for AgentTools
impl UnsafeUnpin for AgentTools
impl !UnwindSafe for AgentTools
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 more