pub struct PowerShellTool;Trait Implementations§
Source§impl Tool for PowerShellTool
impl Tool for PowerShellTool
Source§fn definition(&self) -> ToolDefinition
fn definition(&self) -> ToolDefinition
Describe the tool’s name, prose description, and JSON-schema input.
Source§fn prompt_text(&self) -> Option<&'static str>
fn prompt_text(&self) -> Option<&'static str>
Optional detailed usage instructions injected into the system prompt.
Return
None if the tool has no extra behavioral guidance.Source§fn validate<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
arguments: &'life1 Value,
_context: &'life2 ToolContext,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn validate<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
arguments: &'life1 Value,
_context: &'life2 ToolContext,
) -> Pin<Box<dyn Future<Output = Result<(), AgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Validate raw arguments before the permission check runs. Read more
Source§fn check_permission<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
arguments: &'life1 Value,
_context: &'life2 ToolContext,
) -> Pin<Box<dyn Future<Output = Result<PermissionDecision, AgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn check_permission<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
arguments: &'life1 Value,
_context: &'life2 ToolContext,
) -> Pin<Box<dyn Future<Output = Result<PermissionDecision, AgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Decide whether the call is allowed, denied, or needs human approval. Read more
Source§fn invoke<'life0, 'async_trait>(
&'life0 self,
arguments: Value,
context: ToolContext,
) -> Pin<Box<dyn Future<Output = Result<ToolOutput, AgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn invoke<'life0, 'async_trait>(
&'life0 self,
arguments: Value,
context: ToolContext,
) -> Pin<Box<dyn Future<Output = Result<ToolOutput, AgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Execute the tool. Errors are surfaced as
is_error: true tool results
rather than aborting the turn, so the model can try to recover.Source§fn interrupt_behavior(&self) -> InterruptBehavior
fn interrupt_behavior(&self) -> InterruptBehavior
How the tool wants to be interrupted.
Auto Trait Implementations§
impl Freeze for PowerShellTool
impl RefUnwindSafe for PowerShellTool
impl Send for PowerShellTool
impl Sync for PowerShellTool
impl Unpin for PowerShellTool
impl UnsafeUnpin for PowerShellTool
impl UnwindSafe for PowerShellTool
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