Skip to content

FetchUrlToolOptions

Defined in: packages/tools/src/web/tools.ts:42

Shared constructor fields for tools that materialize through an EffectGate.

optional allowedDomains?: readonly string[]

Defined in: packages/tools/src/web/tools.ts:52

Hostname allowlist — see AddressPolicy.allowedDomains. Omitted means no allowlist. Empty denies every host. "*" allows any host.


optional allowedUrls?: readonly UrlPattern[]

Defined in: packages/tools/src/web/tools.ts:47

URL patterns (glob strings and/or RegExps) allowed past the address check — see AddressPolicy.allowedUrls. Empty by default.


optional allowPrivateNetwork?: boolean

Defined in: packages/tools/src/web/tools.ts:61

Disables the address check entirely — see AddressPolicy.allowPrivateNetwork. Default false. Never reachable from the model; discoverable via describeWebEnv.


optional deniedDomains?: readonly string[]

Defined in: packages/tools/src/web/tools.ts:56

Hostname denylist — see AddressPolicy.deniedDomains.


effectGate: EffectGate

Defined in: packages/tools/src/approval/types.ts:25

Pre-materialize gate. Required — pass import(“@agent-dev-lab/core”).allowAllGate explicitly for tests / permissive local hosts.

GatedToolOptions.effectGate


effectScope: ToolEffectScope

Defined in: packages/tools/src/approval/types.ts:27

Run identity stamped onto each tool intent.

GatedToolOptions.effectScope


optional maxRedirects?: number

Defined in: packages/tools/src/web/tools.ts:69

Redirect hops to follow before refusing. Default 20.


optional maxResponseBytes?: number

Defined in: packages/tools/src/web/tools.ts:67

Stop reading a response body at this many bytes. Default 1,000,000 (1 MB).


optional resolver?: HostnameResolver

Defined in: packages/tools/src/web/tools.ts:63

Hostname resolver override. Defaults to node:dns; exists so the policy can be tested.


optional timeoutMs?: number

Defined in: packages/tools/src/web/tools.ts:65

Wall-clock timeout for the whole fetch, in milliseconds. Default 30,000 (30s).