Web Tools
OpenClaw bringt zwei schlanke Web-Tools mit:
web_search— Websuche über Brave Search API (Standard) oder Perplexity Sonar (direkt oder via OpenRouter).web_fetch— HTTP-Abruf + lesbare Extraktion (HTML → Markdown/Text).
Das sind keine Browser-Automatisierungen. Für JS-lastige Seiten oder Login-Bereiche nutze das Browser Tool.
So funktioniert’s
web_searchruft deinen konfigurierten Provider auf und liefert Ergebnisse.- Brave (Standard): liefert strukturierte Ergebnisse (Titel, URL, Snippet).
- Perplexity: liefert KI-synthetisierte Antworten mit Quellenangaben aus Echtzeit-Websuche.
- Ergebnisse werden pro Suchanfrage 15 Minuten gecacht (konfigurierbar).
web_fetchmacht einen einfachen HTTP GET und extrahiert lesbaren Content (HTML → Markdown/Text). JavaScript wird nicht ausgeführt.web_fetchist standardmäßig aktiviert (außer du deaktivierst es explizit).
Einen Suchprovider wählen
| Provider | Vorteile | Nachteile | API Key |
|---|---|---|---|
| Brave (Standard) | Schnell, strukturierte Ergebnisse, Free Tier | Traditionelle Suchergebnisse | BRAVE_API_KEY |
| Perplexity | KI-synthetisierte Antworten, Quellenangaben, Echtzeit | Braucht Perplexity- oder OpenRouter-Zugang | OPENROUTER_API_KEY oder PERPLEXITY_API_KEY |
Siehe Brave Search Setup und Perplexity Sonar für provider-spezifische Details.
Provider in der Config setzen:
{
tools: {
web: {
search: {
provider: "brave", // oder "perplexity"
},
},
},
}
Beispiel: Wechsel zu Perplexity Sonar (direkte API):
{
tools: {
web: {
search: {
provider: "perplexity",
perplexity: {
apiKey: "pplx-...",
baseUrl: "https://api.perplexity.ai",
model: "perplexity/sonar-pro",
},
},
},
},
}
Brave API Key besorgen
- Erstelle einen Brave Search API Account auf https://brave.com/search/api/
- Wähle im Dashboard den Data for Search Plan (nicht “Data for AI”) und generiere einen API Key.
- Führe
openclaw configure --section webaus, um den Key in der Config zu speichern (empfohlen), oder setzeBRAVE_API_KEYin deiner Umgebung.
Brave bietet einen Free Tier plus bezahlte Pläne; check das Brave API Portal für aktuelle Limits und Preise.
Wo du den Key setzen solltest (empfohlen)
Empfohlen: Führe openclaw configure --section web aus. Das speichert den Key in ~/.openclaw/openclaw.json unter tools.web.search.apiKey.
Umgebungsvariablen-Alternative: Setze BRAVE_API_KEY in der Gateway-Prozess-Umgebung. Bei einer Gateway-Installation legst du ihn in ~/.openclaw/.env ab (oder in deiner Service-Umgebung). Siehe Env vars.
Perplexity nutzen (direkt oder via OpenRouter)
Perplexity Sonar Modelle haben eingebaute Websuch-Fähigkeiten und liefern KI-synthetisierte Antworten mit Quellenangaben. Du kannst sie via OpenRouter nutzen (keine Kreditkarte nötig - unterstützt Crypto/Prepaid).
OpenRouter API Key besorgen
- Erstelle einen Account auf https://openrouter.ai/
- Lade Credits auf (unterstützt Crypto, Prepaid oder Kreditkarte)
- Generiere einen API Key in deinen Account-Einstellungen
Perplexity Search einrichten
{
tools: {
web: {
search: {
enabled: true,
provider: "perplexity",
perplexity: {
// API key (optional, falls OPENROUTER_API_KEY oder PERPLEXITY_API_KEY gesetzt ist)
apiKey: "sk-or-v1-...",
// Base URL (key-aware default, falls weggelassen)
baseUrl: "https://openrouter.ai/api/v1",
// Model (Standard ist perplexity/sonar-pro)
model: "perplexity/sonar-pro",
},
},
},
},
}
Umgebungsvariablen-Alternative: Setze OPENROUTER_API_KEY oder PERPLEXITY_API_KEY in der Gateway-Umgebung. Bei einer Gateway-Installation legst du ihn in ~/.openclaw/.env ab.
Falls keine Base URL gesetzt ist, wählt OpenClaw einen Standard basierend auf der API-Key-Quelle:
PERPLEXITY_API_KEYoderpplx-...→https://api.perplexity.aiOPENROUTER_API_KEYodersk-or-...→https://openrouter.ai/api/v1- Unbekannte Key-Formate → OpenRouter (sicherer Fallback)
Verfügbare Perplexity Modelle
| Modell | Beschreibung | Am besten für |
|---|---|---|
perplexity/sonar | Schnelle Q&A mit Websuche | Schnelle Lookups |
perplexity/sonar-pro (Standard) | Multi-Step-Reasoning mit Websuche | Komplexe Fragen |
perplexity/sonar-reasoning-pro | Chain-of-Thought-Analyse | Tiefe Recherchen |
web_search
Durchsuche das Web mit deinem konfigurierten Provider.
Voraussetzungen
tools.web.search.enableddarf nichtfalsesein (Standard: aktiviert)- API Key für deinen gewählten Provider:
- Brave:
BRAVE_API_KEYodertools.web.search.apiKey - Perplexity:
OPENROUTER_API_KEY,PERPLEXITY_API_KEYodertools.web.search.perplexity.apiKey
- Brave:
Config
{
tools: {
web: {
search: {
enabled: true,
apiKey: "BRAVE_API_KEY_HERE", // optional, falls BRAVE_API_KEY gesetzt ist
maxResults: 5,
timeoutSeconds: 30,
cacheTtlMinutes: 15,
},
},
},
}
Tool-Parameter
query(erforderlich)count(1–10; Standard aus Config)country(optional): 2-Buchstaben-Ländercode für regionsspezifische Ergebnisse (z.B. “DE”, “US”, “ALL”). Falls weggelassen, wählt Brave seine Standard-Region.search_lang(optional): ISO-Sprachcode für Suchergebnisse (z.B. “de”, “en”, “fr”)ui_lang(optional): ISO-Sprachcode für UI-Elementefreshness(optional, nur Brave): Filter nach Entdeckungszeit (pd,pw,pm,pyoderYYYY-MM-DDtoYYYY-MM-DD)
Beispiele:
// Deutschland-spezifische Suche
await web_search({
query: "TV online schauen",
count: 10,
country: "DE",
search_lang: "de",
});
// Französische Suche mit französischem UI
await web_search({
query: "actualités",
country: "FR",
search_lang: "fr",
ui_lang: "fr",
});
// Aktuelle Ergebnisse (letzte Woche)
await web_search({
query: "TMBG interview",
freshness: "pw",
});
web_fetch
Rufe eine URL ab und extrahiere lesbaren Content.
Voraussetzungen
tools.web.fetch.enableddarf nichtfalsesein (Standard: aktiviert)- Optionaler Firecrawl-Fallback: Setze
tools.web.fetch.firecrawl.apiKeyoderFIRECRAWL_API_KEY.
Config
{
tools: {
web: {
fetch: {
enabled: true,
maxChars: 50000,
timeoutSeconds: 30,
cacheTtlMinutes: 15,
maxRedirects: 3,
userAgent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 14_7_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36",
readability: true,
firecrawl: {
enabled: true,
apiKey: "FIRECRAWL_API_KEY_HERE", // optional, falls FIRECRAWL_API_KEY gesetzt ist
baseUrl: "https://api.firecrawl.dev",
onlyMainContent: true,
maxAgeMs: 86400000, // ms (1 Tag)
timeoutSeconds: 60,
},
},
},
},
}
Tool-Parameter
url(erforderlich, nur http/https)extractMode(markdown|text)maxChars(kürzt lange Seiten)
Hinweise:
web_fetchnutzt zuerst Readability (Main-Content-Extraktion), dann Firecrawl (falls konfiguriert). Wenn beide fehlschlagen, gibt das Tool einen Fehler zurück.- Firecrawl-Anfragen nutzen Bot-Umgehungsmodus und cachen Ergebnisse standardmäßig.
web_fetchsendet standardmäßig einen Chrome-ähnlichen User-Agent undAccept-Language; überschreibeuserAgentbei Bedarf.web_fetchblockiert private/interne Hostnamen und prüft Redirects erneut (Limit mitmaxRedirects).web_fetchist Best-Effort-Extraktion; manche Seiten brauchen das Browser Tool.- Siehe Firecrawl für Key-Setup und Service-Details.
- Antworten werden gecacht (Standard 15 Minuten), um wiederholte Abrufe zu reduzieren.
- Falls du Tool-Profile/Allowlists nutzt, füge
web_search/web_fetchodergroup:webhinzu. - Wenn der Brave Key fehlt, gibt
web_searcheinen kurzen Setup-Hinweis mit Docs-Link zurück.