pub struct FileReadTool;Trait Implementations§
Source§impl Tool for FileReadTool
impl Tool for FileReadTool
Source§fn description(&self) -> &'static str
fn description(&self) -> &'static str
Human-readable description sent to the LLM.
Source§fn input_schema(&self) -> Value
fn input_schema(&self) -> Value
JSON Schema for the tool’s input parameters.
Source§fn is_read_only(&self) -> bool
fn is_read_only(&self) -> bool
Whether this tool only reads state (no mutations).
Source§fn is_concurrency_safe(&self) -> bool
fn is_concurrency_safe(&self) -> bool
Whether this tool can safely run concurrently with other tools.
Read-only tools are typically concurrency-safe.
Source§fn get_path(&self, input: &Value) -> Option<PathBuf>
fn get_path(&self, input: &Value) -> Option<PathBuf>
Extract a file path from the input, if applicable (for permission matching).
Source§fn call<'life0, 'life1, 'async_trait>(
&'life0 self,
input: Value,
_ctx: &'life1 ToolContext,
) -> Pin<Box<dyn Future<Output = Result<ToolResult, ToolError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn call<'life0, 'life1, 'async_trait>(
&'life0 self,
input: Value,
_ctx: &'life1 ToolContext,
) -> Pin<Box<dyn Future<Output = Result<ToolResult, ToolError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Execute the tool with validated input.
Source§fn is_destructive(&self) -> bool
fn is_destructive(&self) -> bool
Whether this tool is destructive (deletes data, force-pushes, etc.).
Source§fn is_enabled(&self) -> bool
fn is_enabled(&self) -> bool
Whether this tool is currently enabled in the environment.
Source§fn max_result_size_chars(&self) -> usize
fn max_result_size_chars(&self) -> usize
Maximum result size in characters before truncation.
Source§fn check_permissions<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
input: &'life1 Value,
checker: &'life2 PermissionChecker,
) -> Pin<Box<dyn Future<Output = PermissionDecision> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn check_permissions<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
input: &'life1 Value,
checker: &'life2 PermissionChecker,
) -> Pin<Box<dyn Future<Output = PermissionDecision> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Check permissions for executing this tool with the given input.
Auto Trait Implementations§
impl Freeze for FileReadTool
impl RefUnwindSafe for FileReadTool
impl Send for FileReadTool
impl Sync for FileReadTool
impl Unpin for FileReadTool
impl UnsafeUnpin for FileReadTool
impl UnwindSafe for FileReadTool
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