pub struct WebFetchTool { /* private fields */ }Expand description
Fetches public web content with SSRF-oriented network safety checks.
Implementations§
Source§impl WebFetchTool
impl WebFetchTool
Sourcepub fn with_extractor_slot(
extractor: Arc<RwLock<Option<Arc<dyn LLMProvider>>>>,
) -> Self
pub fn with_extractor_slot( extractor: Arc<RwLock<Option<Arc<dyn LLMProvider>>>>, ) -> Self
Create a web fetch tool that can use a shared extraction LLM.
Sourcepub fn with_transport_and_resolver(
transport: Arc<dyn WebFetchTransport>,
resolver: Arc<dyn WebFetchResolver>,
) -> Self
pub fn with_transport_and_resolver( transport: Arc<dyn WebFetchTransport>, resolver: Arc<dyn WebFetchResolver>, ) -> Self
Create a web fetch tool with injected HTTP and DNS implementations.
Sourcepub fn with_extractor_slot_and_transport(
extractor: Arc<RwLock<Option<Arc<dyn LLMProvider>>>>,
transport: Arc<dyn WebFetchTransport>,
resolver: Arc<dyn WebFetchResolver>,
) -> Self
pub fn with_extractor_slot_and_transport( extractor: Arc<RwLock<Option<Arc<dyn LLMProvider>>>>, transport: Arc<dyn WebFetchTransport>, resolver: Arc<dyn WebFetchResolver>, ) -> Self
Create a web fetch tool with extraction, HTTP, and DNS implementations.
Trait Implementations§
Source§impl Default for WebFetchTool
impl Default for WebFetchTool
Source§impl Tool for WebFetchTool
impl Tool for WebFetchTool
Source§fn description(&self) -> &str
fn description(&self) -> &str
Description shown to the LLM for tool selection.
Source§fn input_schema(&self) -> Value
fn input_schema(&self) -> Value
JSON Schema describing expected input arguments.
Source§fn safety_metadata(&self) -> ToolSafetyMetadata
fn safety_metadata(&self) -> ToolSafetyMetadata
Safety metadata used by runtime policy, scheduling, and observability.
Source§fn classify_call(&self, _args: &Value) -> ToolCallClassification
fn classify_call(&self, _args: &Value) -> ToolCallClassification
Classify a specific call when risk depends on arguments.
Source§fn policy_bindings(&self) -> ToolPolicyBindings
fn policy_bindings(&self) -> ToolPolicyBindings
Policy bindings used by the shared executor to apply configured policy.
Source§fn execute<'life0, 'async_trait>(
&'life0 self,
args: Value,
ctx: ToolExecutionContext,
) -> Pin<Box<dyn Future<Output = ToolResult> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn execute<'life0, 'async_trait>(
&'life0 self,
args: Value,
ctx: ToolExecutionContext,
) -> Pin<Box<dyn Future<Output = ToolResult> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Execute the tool with arguments and executor context.
Auto Trait Implementations§
impl !RefUnwindSafe for WebFetchTool
impl !UnwindSafe for WebFetchTool
impl Freeze for WebFetchTool
impl Send for WebFetchTool
impl Sync for WebFetchTool
impl Unpin for WebFetchTool
impl UnsafeUnpin for WebFetchTool
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