Skip to main content
web_fetch führt einen einfachen HTTP-GET aus und extrahiert lesbare Inhalte (HTML zu Markdown oder Text). JavaScript wird nicht ausgeführt. Verwenden Sie für JS-lastige Websites oder anmeldegeschützte Seiten stattdessen den Webbrowser.

Schnellstart

Standardmäßig aktiviert, keine Konfiguration erforderlich:

Tool-Parameter

string
erforderlich
Abzurufende URL. Nur http(s).
'markdown' | 'text'
Standard:"markdown"
Ausgabeformat nach der Extraktion des Hauptinhalts.
number
Ausgabe auf diese Anzahl von Zeichen kürzen. Auf tools.web.fetch.maxCharsCap begrenzt.

Ergebnis

web_fetch gibt ein geschlossenes strukturiertes Ergebnis mit diesen Feldern zurück:
  • Anfragemetadaten: url, finalUrl, status, extractMode und extractor
  • Optionale Antwortmetadaten: contentType, title und warning (werden ausgelassen, wenn sie nicht vorhanden sind)
  • Metadaten des umschlossenen Inhalts: externalContent, truncated, length, rawLength, fetchedAt, tookMs und text
  • Optionales cached: true bei einem Cache-Treffer
  • Optionales spill: { path, chars, truncated? }, wenn gekürzter Inhalt in eine private temporäre Datei geschrieben wurde; truncated ist nur vorhanden, wenn diese Datei unvollständigen Quellinhalt enthält
length ist die Länge des umschlossenen text. rawLength ist die Länge des extrahierten Inhalts vor der Umschließung externer Inhalte.

Funktionsweise

1

Abrufen

Sendet einen HTTP-GET mit einem Chrome-ähnlichen User-Agent und dem Header Accept-Language. Private/interne Hostnamen werden blockiert und Weiterleitungen erneut geprüft.
2

Extrahieren

Führt Readability (Extraktion des Hauptinhalts) für die HTML-Antwort aus.
3

Fallback (optional)

Wenn Readability fehlschlägt und ein Abruf-Provider verfügbar ist, wird der Abruf über diesen Provider wiederholt (beispielsweise im Bot-Umgehungsmodus von Firecrawl).
4

Cache

Ergebnisse werden 15 Minuten lang zwischengespeichert (konfigurierbar), um wiederholte Abrufe derselben URL zu reduzieren.

Fortschrittsmeldungen

web_fetch gibt nur dann eine öffentliche Fortschrittszeile aus, wenn der Abruf nach fünf Sekunden noch aussteht:
Schnelle Cache-Treffer und schnelle Netzwerkantworten werden abgeschlossen, bevor der Timer ausgelöst wird, daher zeigen sie nie eine Fortschrittszeile an. Beim Abbrechen des Aufrufs wird der Timer gelöscht. Die Fortschrittszeile stellt lediglich den Zustand der Kanal-Benutzeroberfläche dar und enthält niemals abgerufene Seiteninhalte.

Konfiguration

Firecrawl-Fallback

Wenn die Readability-Extraktion fehlschlägt, kann web_fetch auf Firecrawl zurückgreifen, um Botschutz zu umgehen und eine bessere Extraktion zu erzielen:
plugins.entries.firecrawl.config.webFetch.apiKey ist optional und unterstützt SecretRef-Objekte. Die veraltete Konfiguration tools.web.fetch.firecrawl.* wird über openclaw doctor --fix automatisch zu plugins.entries.firecrawl.config.webFetch migriert.
Wenn Sie einen SecretRef für einen Firecrawl-API-Schlüssel konfigurieren und dieser ohne Umgebungs-Fallback FIRECRAWL_API_KEY nicht aufgelöst werden kann, schlägt der Gateway-Start sofort fehl.
Firecrawl-Überschreibungen für baseUrl sind eingeschränkt: Gehosteter Datenverkehr verwendet https://api.firecrawl.dev; selbst gehostete Überschreibungen müssen auf private oder interne Endpunkte verweisen, und http:// wird nur für diese privaten Ziele akzeptiert.
Aktuelles Laufzeitverhalten:
  • tools.web.fetch.provider wählt den Fallback-Provider für den Abruf explizit aus.
  • Wenn provider ausgelassen wird, erkennt OpenClaw automatisch den ersten einsatzbereiten Web-Abruf- Provider anhand der konfigurierten Anmeldedaten. Nicht in einer Sandbox ausgeführtes web_fetch kann installierte Plugins verwenden, die contracts.webFetchProviders deklarieren und zur Laufzeit einen passenden Provider registrieren. Das offizielle Firecrawl-Plugin stellt derzeit diesen Fallback bereit.
  • In einer Sandbox ausgeführte web_fetch-Aufrufe erlauben gebündelte Provider sowie installierte Provider, deren offizielle npm- oder ClawHub-Herkunft verifiziert wurde. Derzeit ist dadurch das offizielle Firecrawl-Plugin zulässig; externe Abruf-Plugins von Drittanbietern bleiben ausgeschlossen.
  • Wenn Readability deaktiviert ist, springt web_fetch direkt zum ausgewählten Provider-Fallback. Wenn kein Provider verfügbar ist, schlägt der Vorgang standardmäßig fehl.

Vertrauenswürdiger Umgebungsproxy

Wenn Ihre Bereitstellung erfordert, dass web_fetch über einen vertrauenswürdigen ausgehenden HTTP(S)-Proxy geleitet wird, legen Sie tools.web.fetch.useTrustedEnvProxy: true fest. In diesem Modus wendet OpenClaw weiterhin hostnamenbasierte SSRF-Prüfungen an, bevor die Anfrage gesendet wird, überlässt jedoch dem Proxy die DNS-Auflösung, anstatt lokales DNS- Pinning durchzuführen. Aktivieren Sie dies nur, wenn der Proxy vom Betreiber kontrolliert wird und nach der DNS-Auflösung Richtlinien für ausgehenden Datenverkehr durchsetzt.
Wenn keine HTTP(S)-Proxy-Umgebungsvariable konfiguriert ist oder der Zielhost durch NO_PROXY ausgeschlossen wird, greift web_fetch auf den normalen strikten Pfad mit lokalem DNS- Pinning zurück.

Beschränkungen und Sicherheit

  • maxChars wird auf tools.web.fetch.maxCharsCap begrenzt (Standard: 20000)
  • Der Antworttext wird vor der Analyse auf maxResponseBytes begrenzt (Standard: 750000, begrenzt auf 32000-10000000); übergroße Antworten werden mit einer Warnung gekürzt
  • Private/interne Hostnamen werden blockiert
  • tools.web.fetch.ssrfPolicy.allowRfc2544BenchmarkRange und tools.web.fetch.ssrfPolicy.allowIpv6UniqueLocalRange sind eng begrenzte Opt-ins für vertrauenswürdige Fake-IP-Proxy-Stacks; lassen Sie sie ungesetzt, sofern Ihr Proxy diese synthetischen Bereiche nicht kontrolliert und keine eigene Zielrichtlinie durchsetzt
  • Weiterleitungen werden geprüft und durch maxRedirects begrenzt (Standard: 3)
  • useTrustedEnvProxy ist ein ausdrückliches Opt-in und sollte nur für vom Betreiber kontrollierte Proxys aktiviert werden, die auch nach der DNS- Auflösung Richtlinien für ausgehenden Datenverkehr durchsetzen
  • web_fetch funktioniert nach bestem Bemühen – einige Websites benötigen den Webbrowser

Tool-Profile

Wenn Sie Tool-Profile oder Positivlisten verwenden, fügen Sie web_fetch oder group:web hinzu:

Verwandte Themen

  • Websuche – das Web mit mehreren Providern durchsuchen
  • Webbrowser – vollständige Browserautomatisierung für JS-lastige Websites
  • Firecrawl – Firecrawl-Tools zum Suchen und Scrapen