web_fetch 會執行一般的 HTTP GET,並擷取可讀內容(將 HTML 轉為
Markdown 或文字)。它不會執行 JavaScript。對於大量依賴 JS 的網站或
受登入保護的頁面,請改用網頁瀏覽器。
快速開始
預設啟用,不需要設定:工具參數
要擷取的 URL。僅支援
http(s)。主內容擷取後的輸出格式。
將輸出截斷為此字元數。會受限於
tools.web.fetch.maxCharsCap。運作方式
進度更新
只有當擷取在五秒後仍在等待中時,web_fetch 才會發出公開進度行:
設定
Firecrawl 備援
如果 Readability 擷取失敗,web_fetch 可以備援至
Firecrawl,以進行機器人規避和更好的擷取:
plugins.entries.firecrawl.config.webFetch.apiKey 是選用項,並支援 SecretRef 物件。
舊版 tools.web.fetch.firecrawl.* 設定會透過 openclaw doctor --fix
自動遷移至 plugins.entries.firecrawl.config.webFetch。
如果你設定了 Firecrawl API 金鑰 SecretRef,但它未解析且沒有
FIRECRAWL_API_KEY 環境備援,閘道啟動會快速失敗。Firecrawl
baseUrl 覆寫受到鎖定:託管流量使用
https://api.firecrawl.dev;自架覆寫必須指向私有或
內部端點,且 http:// 只會對這些私有目標接受。tools.web.fetch.provider會明確選取擷取備援提供者。- 如果省略
provider,OpenClaw 會從已設定的憑證中自動偵測第一個就緒的 web-fetch 提供者。非沙箱化的web_fetch可以使用已安裝的外掛,前提是該外掛宣告contracts.webFetchProviders,並在執行階段註冊相符的提供者。官方 Firecrawl 外掛目前提供此 備援。 - 沙箱化的
web_fetch呼叫允許內建提供者,以及官方 npm 或 ClawHub 來源已驗證的已安裝提供者。 目前這允許官方 Firecrawl 外掛;第三方外部擷取外掛仍會被排除。 - 如果停用 Readability,
web_fetch會直接跳到選定的提供者備援。 如果沒有可用的提供者,則會關閉式失敗。
受信任的環境代理
如果你的部署需要讓web_fetch 透過受信任的輸出
HTTP(S) 代理,請設定 tools.web.fetch.useTrustedEnvProxy: true。
在此模式中,OpenClaw 仍會在傳送請求前套用以主機名稱為基礎的 SSRF 檢查,
但會讓代理解析 DNS,而不是執行本機 DNS 釘選。只有在代理由操作者控制,
且會在 DNS 解析後強制執行輸出政策時,才啟用此選項。
如果未設定 HTTP(S) 代理環境變數,或目標主機被
NO_PROXY 排除,web_fetch 會退回使用具備本機 DNS
釘選的正常嚴格路徑。限制與安全性
maxChars會受限於tools.web.fetch.maxCharsCap(預設20000)- 回應本文在剖析前會限制為
maxResponseBytes(預設750000,限制範圍為 32000-10000000);過大的回應會被截斷並顯示警告 - 私有/內部主機名稱會被封鎖
tools.web.fetch.ssrfPolicy.allowRfc2544BenchmarkRange和tools.web.fetch.ssrfPolicy.allowIpv6UniqueLocalRange是針對受信任假 IP 代理堆疊的狹窄選擇加入項; 除非你的代理擁有這些合成範圍並強制執行自己的目的地政策,否則請保持未設定- 重新導向會被檢查,並受
maxRedirects限制(預設3) useTrustedEnvProxy是明確的選擇加入項,且只應為在 DNS 解析後仍會強制執行輸出政策、由操作者控制的代理啟用web_fetch採盡力而為;某些網站需要網頁瀏覽器
工具設定檔
如果你使用工具設定檔或允許清單,請加入web_fetch 或 group:web: