Zum Hauptinhalt springen

Web Search

Das Tool web_search durchsucht das Web mit Ihrem konfigurierten Provider und gibt Ergebnisse zurück. Ergebnisse werden 15 Minuten lang nach Query gecacht (konfigurierbar). OpenClaw enthält außerdem x_search für X-Posts (früher Twitter) und web_fetch für leichtgewichtigen URL-Abruf. In dieser Phase bleibt web_fetch lokal, während web_search und x_search unter der Haube xAI Responses verwenden können.
web_search ist ein leichtgewichtiges HTTP-Tool, keine Browser-Automatisierung. Für JS-lastige Websites oder Logins verwenden Sie den Web Browser. Für das Abrufen einer bestimmten URL verwenden Sie Web Fetch.

Schnellstart

1

Einen Provider auswählen

Wählen Sie einen Provider aus und schließen Sie alle erforderlichen Einrichtungsschritte ab. Einige Provider sind schlüsselfrei, während andere API-Schlüssel verwenden. Details finden Sie auf den Provider-Seiten unten.
2

Konfigurieren

openclaw configure --section web
Dadurch werden der Provider und alle benötigten Anmeldedaten gespeichert. Sie können auch eine Umgebungsvariable setzen (zum Beispiel BRAVE_API_KEY) und diesen Schritt bei API-basierten Providern überspringen.
3

Verwenden

Der Agent kann jetzt web_search aufrufen:
await web_search({ query: "OpenClaw plugin SDK" });
Für X-Posts verwenden Sie:
await x_search({ query: "dinner recipes" });

Einen Provider auswählen

Brave Search

Strukturierte Ergebnisse mit Snippets. Unterstützt den Modus llm-context, Länder-/Sprachfilter. Kostenlose Stufe verfügbar.

DuckDuckGo

Schlüsselfreier Fallback. Kein API-Schlüssel erforderlich. Inoffizielle HTML-basierte Integration.

Exa

Neuronale + schlüsselwortbasierte Suche mit Inhaltsextraktion (Highlights, Text, Zusammenfassungen).

Firecrawl

Strukturierte Ergebnisse. Am besten zusammen mit firecrawl_search und firecrawl_scrape für tiefe Extraktion.

Gemini

KI-synthetisierte Antworten mit Quellenangaben über Google-Search-Grounding.

Grok

KI-synthetisierte Antworten mit Quellenangaben über xAI-Web-Grounding.

Kimi

KI-synthetisierte Antworten mit Quellenangaben über Moonshot-Websuche.

MiniMax Search

Strukturierte Ergebnisse über die Search-API des MiniMax Coding Plan.

Ollama Web Search

Schlüsselfreie Suche über Ihren konfigurierten Ollama-Host. Erfordert ollama signin.

Perplexity

Strukturierte Ergebnisse mit Steuerelementen für Inhaltsextraktion und Domain-Filterung.

SearXNG

Selbst gehostete Meta-Suche. Kein API-Schlüssel erforderlich. Aggregiert Google, Bing, DuckDuckGo und mehr.

Tavily

Strukturierte Ergebnisse mit Suchtiefe, Themenfilterung und tavily_extract zur URL-Extraktion.

Provider-Vergleich

ProviderErgebnisstilFilterAPI-Schlüssel
BraveStrukturierte SnippetsLand, Sprache, Zeit, Modus llm-contextBRAVE_API_KEY
DuckDuckGoStrukturierte SnippetsKeiner (schlüsselfrei)
ExaStrukturiert + extrahiertNeuronal-/Keyword-Modus, Datum, InhaltsextraktionEXA_API_KEY
FirecrawlStrukturierte SnippetsÜber das Tool firecrawl_searchFIRECRAWL_API_KEY
GeminiKI-synthetisiert + QuellenangabenGEMINI_API_KEY
GrokKI-synthetisiert + QuellenangabenXAI_API_KEY
KimiKI-synthetisiert + QuellenangabenKIMI_API_KEY / MOONSHOT_API_KEY
MiniMax SearchStrukturierte SnippetsRegion (global / cn)MINIMAX_CODE_PLAN_KEY / MINIMAX_CODING_API_KEY
Ollama Web SearchStrukturierte SnippetsStandardmäßig keiner; ollama signin erforderlich, kann Ollama-Provider-Bearer-Auth wiederverwenden
PerplexityStrukturierte SnippetsLand, Sprache, Zeit, Domains, InhaltslimitsPERPLEXITY_API_KEY / OPENROUTER_API_KEY
SearXNGStrukturierte SnippetsKategorien, SpracheKeiner (selbst gehostet)
TavilyStrukturierte SnippetsÜber das Tool tavily_searchTAVILY_API_KEY

Automatische Erkennung

Native Codex-Websuche

Codex-fähige Modelle können optional das providernative Responses-Tool web_search statt der von OpenClaw verwalteten Funktion web_search verwenden.
  • Konfigurieren Sie dies unter tools.web.search.openaiCodex
  • Es wird nur für Codex-fähige Modelle aktiviert (openai-codex/* oder Provider mit api: "openai-codex-responses")
  • Verwaltetes web_search gilt weiterhin für Nicht-Codex-Modelle
  • mode: "cached" ist die Standard- und empfohlene Einstellung
  • tools.web.search.enabled: false deaktiviert sowohl verwaltete als auch native Suche
{
  tools: {
    web: {
      search: {
        enabled: true,
        openaiCodex: {
          enabled: true,
          mode: "cached",
          allowedDomains: ["example.com"],
          contextSize: "high",
          userLocation: {
            country: "US",
            city: "New York",
            timezone: "America/New_York",
          },
        },
      },
    },
  },
}
Wenn die native Codex-Suche aktiviert ist, das aktuelle Modell aber nicht Codex-fähig ist, behält OpenClaw das normale verwaltete Verhalten von web_search bei.

Web Search einrichten

Provider-Listen in der Dokumentation und in Einrichtungsabläufen sind alphabetisch sortiert. Die automatische Erkennung verwendet eine separate Prioritätsreihenfolge. Wenn kein provider gesetzt ist, prüft OpenClaw die Provider in dieser Reihenfolge und verwendet den ersten, der bereit ist: Zuerst API-basierte Provider:
  1. BraveBRAVE_API_KEY oder plugins.entries.brave.config.webSearch.apiKey (Reihenfolge 10)
  2. MiniMax SearchMINIMAX_CODE_PLAN_KEY / MINIMAX_CODING_API_KEY oder plugins.entries.minimax.config.webSearch.apiKey (Reihenfolge 15)
  3. GeminiGEMINI_API_KEY oder plugins.entries.google.config.webSearch.apiKey (Reihenfolge 20)
  4. GrokXAI_API_KEY oder plugins.entries.xai.config.webSearch.apiKey (Reihenfolge 30)
  5. KimiKIMI_API_KEY / MOONSHOT_API_KEY oder plugins.entries.moonshot.config.webSearch.apiKey (Reihenfolge 40)
  6. PerplexityPERPLEXITY_API_KEY / OPENROUTER_API_KEY oder plugins.entries.perplexity.config.webSearch.apiKey (Reihenfolge 50)
  7. FirecrawlFIRECRAWL_API_KEY oder plugins.entries.firecrawl.config.webSearch.apiKey (Reihenfolge 60)
  8. ExaEXA_API_KEY oder plugins.entries.exa.config.webSearch.apiKey (Reihenfolge 65)
  9. TavilyTAVILY_API_KEY oder plugins.entries.tavily.config.webSearch.apiKey (Reihenfolge 70)
Danach schlüsselfreie Fallbacks:
  1. DuckDuckGo — schlüsselfreier HTML-Fallback ohne Konto oder API-Schlüssel (Reihenfolge 100)
  2. Ollama Web Search — schlüsselfreier Fallback über Ihren konfigurierten Ollama-Host; erfordert, dass Ollama erreichbar ist und Sie mit ollama signin angemeldet sind, und kann Ollama-Provider-Bearer-Auth wiederverwenden, falls der Host diese benötigt (Reihenfolge 110)
  3. SearXNGSEARXNG_BASE_URL oder plugins.entries.searxng.config.webSearch.baseUrl (Reihenfolge 200)
Wenn kein Provider erkannt wird, fällt OpenClaw auf Brave zurück (Sie erhalten dann einen Fehler wegen eines fehlenden Schlüssels, der Sie zur Konfiguration auffordert).
Alle Schlüssel-Felder von Providern unterstützen SecretRef-Objekte. Im Modus der automatischen Erkennung löst OpenClaw nur den Schlüssel des ausgewählten Providers auf — SecretRefs nicht ausgewählter Provider bleiben inaktiv.

Konfiguration

{
  tools: {
    web: {
      search: {
        enabled: true, // default: true
        provider: "brave", // or omit for auto-detection
        maxResults: 5,
        timeoutSeconds: 30,
        cacheTtlMinutes: 15,
      },
    },
  },
}
Providerspezifische Konfiguration (API-Schlüssel, Base-URLs, Modi) befindet sich unter plugins.entries.<plugin>.config.webSearch.*. Beispiele finden Sie auf den Provider-Seiten. Die Auswahl des Fallback-Providers für web_fetch ist separat:
  • wählen Sie ihn mit tools.web.fetch.provider
  • oder lassen Sie dieses Feld weg und lassen Sie OpenClaw automatisch den ersten bereiten Web-Fetch- Provider anhand verfügbarer Anmeldedaten erkennen
  • der derzeit gebündelte Web-Fetch-Provider ist Firecrawl, konfiguriert unter plugins.entries.firecrawl.config.webFetch.*
Wenn Sie Kimi während openclaw onboard oder openclaw configure --section web auswählen, kann OpenClaw zusätzlich nach Folgendem fragen:
  • der Moonshot-API-Region (https://api.moonshot.ai/v1 oder https://api.moonshot.cn/v1)
  • dem Standardmodell für Kimi-Websuche (Standard ist kimi-k2.5)
Für x_search konfigurieren Sie plugins.entries.xai.config.xSearch.*. Es verwendet denselben XAI_API_KEY-Fallback wie Grok Web Search. Die veraltete Konfiguration tools.web.x_search.* wird von openclaw doctor --fix automatisch migriert. Wenn Sie Grok während openclaw onboard oder openclaw configure --section web auswählen, kann OpenClaw auch eine optionale Einrichtung von x_search mit demselben Schlüssel anbieten. Dies ist ein separater Folgeschritt innerhalb des Grok-Pfads, keine separate Auswahl eines Web-Search-Providers auf oberster Ebene. Wenn Sie einen anderen Provider auswählen, zeigt OpenClaw die Abfrage für x_search nicht an.

API-Schlüssel speichern

Führen Sie openclaw configure --section web aus oder setzen Sie den Schlüssel direkt:
{
  plugins: {
    entries: {
      brave: {
        config: {
          webSearch: {
            apiKey: "YOUR_KEY", // pragma: allowlist secret
          },
        },
      },
    },
  },
}

Tool-Parameter

ParameterBeschreibung
querySuchanfrage (erforderlich)
countZurückzugebende Ergebnisse (1-10, Standard: 5)
country2-stelliger ISO-Ländercode (z. B. “US”, “DE”)
languageISO-639-1-Sprachcode (z. B. “en”, “de”)
search_langSuchsprachen-Code (nur Brave)
freshnessZeitfilter: day, week, month oder year
date_afterErgebnisse nach diesem Datum (YYYY-MM-DD)
date_beforeErgebnisse vor diesem Datum (YYYY-MM-DD)
ui_langUI-Sprachcode (nur Brave)
domain_filterDomain-Allowlist-/Denylist-Array (nur Perplexity)
max_tokensGesamtes Inhaltsbudget, Standard 25000 (nur Perplexity)
max_tokens_per_pageToken-Limit pro Seite, Standard 2048 (nur Perplexity)
Nicht alle Parameter funktionieren mit allen Providern. Der Modus llm-context von Brave lehnt ui_lang, freshness, date_after und date_before ab. Gemini, Grok und Kimi geben eine synthetisierte Antwort mit Quellenangaben zurück. Sie akzeptieren count zur Kompatibilität mit gemeinsam genutzten Tools, aber es verändert nicht die Form der geerdeten Antwort. Perplexity verhält sich genauso, wenn Sie den Kompatibilitätspfad Sonar/OpenRouter verwenden (plugins.entries.perplexity.config.webSearch.baseUrl / model oder OPENROUTER_API_KEY). SearXNG akzeptiert http:// nur für vertrauenswürdige Hosts im privaten Netzwerk oder auf loopback; öffentliche SearXNG-Endpunkte müssen https:// verwenden. Firecrawl und Tavily unterstützen über web_search nur query und count — verwenden Sie deren dedizierte Tools für erweiterte Optionen.
x_search durchsucht X-Posts (früher Twitter) mit xAI und gibt KI-synthetisierte Antworten mit Quellenangaben zurück. Es akzeptiert natürlichsprachliche Queries und optionale strukturierte Filter. OpenClaw aktiviert das integrierte xAI-Tool x_search nur bei der Anfrage, die diesen Tool-Aufruf bedient.
xAI dokumentiert x_search als Unterstützung für Keyword-Suche, semantische Suche, Benutzer- Suche und Thread-Abruf. Für postbezogene Interaktionsstatistiken wie Reposts, Antworten, Lesezeichen oder Aufrufe sollten Sie bevorzugt eine gezielte Abfrage für die exakte Post-URL oder Status-ID verwenden. Breite Keyword-Suchen können den richtigen Post finden, aber weniger vollständige postbezogene Metadaten zurückgeben. Ein gutes Muster ist: zuerst den Post finden, dann eine zweite x_search-Query ausführen, die auf genau diesen Post fokussiert ist.

x_search konfigurieren

{
  plugins: {
    entries: {
      xai: {
        config: {
          xSearch: {
            enabled: true,
            model: "grok-4-1-fast-non-reasoning",
            inlineCitations: false,
            maxTurns: 2,
            timeoutSeconds: 30,
            cacheTtlMinutes: 15,
          },
          webSearch: {
            apiKey: "xai-...", // optional if XAI_API_KEY is set
          },
        },
      },
    },
  },
}

x_search-Parameter

ParameterBeschreibung
querySuchanfrage (erforderlich)
allowed_x_handlesErgebnisse auf bestimmte X-Handles beschränken
excluded_x_handlesBestimmte X-Handles ausschließen
from_dateNur Posts an oder nach diesem Datum einschließen (YYYY-MM-DD)
to_dateNur Posts an oder vor diesem Datum einschließen (YYYY-MM-DD)
enable_image_understandingxAI Bilder prüfen lassen, die an passende Posts angehängt sind
enable_video_understandingxAI Videos prüfen lassen, die an passende Posts angehängt sind

x_search-Beispiel

await x_search({
  query: "dinner recipes",
  allowed_x_handles: ["nytfood"],
  from_date: "2026-03-01",
});
// Postbezogene Statistiken: wenn möglich die exakte Status-URL oder Status-ID verwenden
await x_search({
  query: "https://x.com/huntharo/status/1905678901234567890",
});

Beispiele

// Einfache Suche
await web_search({ query: "OpenClaw plugin SDK" });

// Suche speziell für Deutschland
await web_search({ query: "TV online schauen", country: "DE", language: "de" });

// Aktuelle Ergebnisse (letzte Woche)
await web_search({ query: "AI developments", freshness: "week" });

// Datumsbereich
await web_search({
  query: "climate research",
  date_after: "2024-01-01",
  date_before: "2024-06-30",
});

// Domain-Filterung (nur Perplexity)
await web_search({
  query: "product reviews",
  domain_filter: ["-reddit.com", "-pinterest.com"],
});

Tool-Profile

Wenn Sie Tool-Profile oder Allowlists verwenden, fügen Sie web_search, x_search oder group:web hinzu:
{
  tools: {
    allow: ["web_search", "x_search"],
    // or: allow: ["group:web"]  (includes web_search, x_search, and web_fetch)
  },
}

Verwandt

  • Web Fetch — eine URL abrufen und lesbaren Inhalt extrahieren
  • Web Browser — vollständige Browser-Automatisierung für JS-lastige Websites
  • Grok Search — Grok als web_search-Provider
  • Ollama Web Search — schlüsselfreie Websuche über Ihren Ollama-Host