pub struct WorkDoneTool {
pub work_done: Arc<AtomicBool>,
pub teammate_manager: Arc<Mutex<TeammateManager>>,
}Expand description
WorkDone 工具:teammate 明确声明自己完成工作并进入终态
调用后:
- set work_done=true,teammate_loop 下次检查时 break 主循环
- 自动广播一条
<self> [work completed] summary给团队(帮 @Main 感知)
Fields§
§work_done: Arc<AtomicBool>该 teammate 的 work_done 标志(与 TeammateHandle 共享)
teammate_manager: Arc<Mutex<TeammateManager>>Implementations§
Trait Implementations§
Source§impl Tool for WorkDoneTool
impl Tool for WorkDoneTool
Source§fn description(&self) -> Cow<'_, str>
fn description(&self) -> Cow<'_, str>
返回工具功能描述,静态描述返回
Cow::Borrowed,动态描述返回 Cow::OwnedSource§fn parameters_schema(&self) -> Value
fn parameters_schema(&self) -> Value
返回工具参数的 JSON Schema
Source§fn execute(&self, arguments: &str, _cancelled: &Arc<AtomicBool>) -> ToolResult
fn execute(&self, arguments: &str, _cancelled: &Arc<AtomicBool>) -> ToolResult
执行工具,传入参数字符串和取消信号,返回执行结果
Source§fn requires_confirmation(&self) -> bool
fn requires_confirmation(&self) -> bool
该工具是否需要用户确认后才能执行
Source§fn confirmation_message(&self, arguments: &str) -> String
fn confirmation_message(&self, arguments: &str) -> String
生成用户确认时显示的提示消息
Source§fn is_available(&self) -> bool
fn is_available(&self) -> bool
工具是否当前可用(默认
true)。 Read moreAuto Trait Implementations§
impl Freeze for WorkDoneTool
impl RefUnwindSafe for WorkDoneTool
impl Send for WorkDoneTool
impl Sync for WorkDoneTool
impl Unpin for WorkDoneTool
impl UnsafeUnpin for WorkDoneTool
impl UnwindSafe for WorkDoneTool
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> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.