LinkFetchTool

Struct LinkFetchTool 

Source
pub struct LinkFetchTool { /* private fields */ }
Expand description

Link fetch tool for securely retrieving web page content.

This tool fetches web pages and converts them to text or markdown format. It includes SSRF protection to prevent access to internal resources.

§Example

use agent_sdk::web::LinkFetchTool;

let tool = LinkFetchTool::new();

// Register with agent
tools.register(tool);

Implementations§

Source§

impl LinkFetchTool

Source

pub fn new() -> Self

Create a new link fetch tool with default settings.

§Panics

Panics if the HTTP client cannot be built (should never happen with default settings).

Source

pub fn with_validator(self, validator: UrlValidator) -> Self

Create with a custom URL validator.

Source

pub fn with_client(self, client: Client) -> Self

Create with a custom HTTP client.

Source

pub const fn with_default_format(self, format: FetchFormat) -> Self

Set the default output format.

Trait Implementations§

Source§

impl Default for LinkFetchTool

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<Ctx> Tool<Ctx> for LinkFetchTool
where Ctx: Send + Sync + 'static,

Source§

fn name(&self) -> &'static str

Unique name for the tool (used in LLM tool calls)
Source§

fn description(&self) -> &'static str

Human-readable description of what the tool does
Source§

fn input_schema(&self) -> Value

JSON schema for the tool’s input parameters
Source§

fn tier(&self) -> ToolTier

Permission tier for this tool
Source§

fn execute<'life0, 'life1, 'async_trait>( &'life0 self, _ctx: &'life1 ToolContext<Ctx>, input: Value, ) -> Pin<Box<dyn Future<Output = Result<ToolResult>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

Execute the tool with the given input Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more