Tools
Obtención web
La herramienta web_fetch realiza un HTTP GET simple y extrae contenido legible
(HTML a markdown o texto). No ejecuta JavaScript.
Para sitios con mucho JS o páginas protegidas por inicio de sesión, usa el Navegador web en su lugar.
Inicio rápido
web_fetch está habilitada de forma predeterminada; no hace falta configuración. El agente puede
llamarla de inmediato:
await web_fetch({ url: "https://example.com/article" });
Parámetros de la herramienta
urlstringrequiredURL que se va a obtener. Solo http(s).
extractMode'markdown' | 'text'Formato de salida después de la extracción del contenido principal.
maxCharsnumberTrunca la salida a esta cantidad de caracteres.
Cómo funciona
Obtener
Envía un HTTP GET con un User-Agent similar al de Chrome y un encabezado
Accept-Language. Bloquea nombres de host privados/internos y vuelve a comprobar las redirecciones.
Extraer
Ejecuta Readability (extracción de contenido principal) en la respuesta HTML.
Reserva (opcional)
Si Readability falla y Firecrawl está configurado, vuelve a intentarlo mediante la API de Firecrawl con modo de elusión de bots.
Caché
Los resultados se almacenan en caché durante 15 minutos (configurable) para reducir las obtenciones repetidas de la misma URL.
Configuración
{
tools: {
web: {
fetch: {
enabled: true, // default: true
provider: "firecrawl", // optional; omit for auto-detect
maxChars: 50000, // max output chars
maxCharsCap: 50000, // hard cap for maxChars param
maxResponseBytes: 2000000, // max download size before truncation
timeoutSeconds: 30,
cacheTtlMinutes: 15,
maxRedirects: 3,
useTrustedEnvProxy: false, // let a trusted HTTP(S) env proxy resolve DNS
readability: true, // use Readability extraction
userAgent: "Mozilla/5.0 ...", // override User-Agent
ssrfPolicy: {
allowRfc2544BenchmarkRange: true, // opt-in for trusted fake-IP proxies using 198.18.0.0/15
allowIpv6UniqueLocalRange: true, // opt-in for trusted fake-IP proxies using fc00::/7
},
},
},
},
}
Reserva con Firecrawl
Si la extracción de Readability falla, web_fetch puede recurrir a
Firecrawl para elusión de bots y una mejor extracción:
{
tools: {
web: {
fetch: {
provider: "firecrawl", // optional; omit for auto-detect from available credentials
},
},
},
plugins: {
entries: {
firecrawl: {
enabled: true,
config: {
webFetch: {
apiKey: "fc-...", // optional if FIRECRAWL_API_KEY is set
baseUrl: "https://api.firecrawl.dev",
onlyMainContent: true,
maxAgeMs: 86400000, // cache duration (1 day)
timeoutSeconds: 60,
},
},
},
},
},
}
plugins.entries.firecrawl.config.webFetch.apiKey admite objetos SecretRef.
La configuración heredada tools.web.fetch.firecrawl.* se migra automáticamente mediante openclaw doctor --fix.
Comportamiento actual en tiempo de ejecución:
tools.web.fetch.providerselecciona explícitamente el proveedor de reserva de obtención.- Si se omite
provider, OpenClaw detecta automáticamente el primer proveedor de web-fetch listo a partir de las credenciales disponibles.web_fetchno aislado puede usar plugins instalados que declarencontracts.webFetchProvidersy registren un proveedor coincidente en tiempo de ejecución. Hoy, el proveedor incluido es Firecrawl. - Las llamadas de
web_fetchaisladas permanecen limitadas a los proveedores incluidos. - Si Readability está deshabilitado,
web_fetchpasa directamente a la reserva del proveedor seleccionado. Si no hay ningún proveedor disponible, falla de forma cerrada.
Proxy de entorno confiable
Si tu despliegue requiere que web_fetch pase por un proxy HTTP(S) saliente
confiable, configura tools.web.fetch.useTrustedEnvProxy: true.
En este modo, OpenClaw sigue aplicando comprobaciones SSRF basadas en el nombre de host antes de enviar la solicitud, pero permite que el proxy resuelva DNS en lugar de hacer fijación de DNS local. Habilita esto solo cuando el proxy esté controlado por el operador y haga cumplir la política saliente después de la resolución de DNS.
Límites y seguridad
maxCharsse limita atools.web.fetch.maxCharsCap- El cuerpo de la respuesta se limita a
maxResponseBytesantes del análisis; las respuestas sobredimensionadas se truncan con una advertencia - Los nombres de host privados/internos se bloquean
tools.web.fetch.ssrfPolicy.allowRfc2544BenchmarkRangeytools.web.fetch.ssrfPolicy.allowIpv6UniqueLocalRangeson permisos explícitos restringidos para pilas de proxy de IP falsa confiables; déjalos sin configurar salvo que tu proxy sea propietario de esos rangos sintéticos y haga cumplir su propia política de destino- Las redirecciones se comprueban y se limitan mediante
maxRedirects useTrustedEnvProxyes un permiso explícito y solo debe habilitarse para proxies controlados por el operador que sigan haciendo cumplir la política saliente después de la resolución de DNSweb_fetchfunciona en modalidad de mejor esfuerzo; algunos sitios necesitan el Navegador web
Perfiles de herramientas
Si usas perfiles de herramientas o listas de permitidos, añade web_fetch o group:web:
{
tools: {
allow: ["web_fetch"],
// or: allow: ["group:web"] (includes web_fetch, web_search, and x_search)
},
}
Relacionado
- Búsqueda web -- busca en la web con varios proveedores
- Navegador web -- automatización completa del navegador para sitios con mucho JS
- Firecrawl -- herramientas de búsqueda y extracción de Firecrawl