Tools

Web araması

web_search aracı, yapılandırılmış sağlayıcınızı kullanarak web'de arama yapar ve sonuçları döndürür. Sonuçlar sorguya göre 15 dakika önbelleğe alınır (yapılandırılabilir).

OpenClaw ayrıca X (eski adıyla Twitter) gönderileri için x_search ve hafif URL getirme için web_fetch içerir. Bu aşamada, web_fetch yerel kalırken web_search ve x_search arka planda xAI Responses kullanabilir.

Hızlı başlangıç

  • Bir sağlayıcı seçin

    Bir sağlayıcı seçin ve gerekli kurulumu tamamlayın. Bazı sağlayıcılar anahtarsızdır, bazıları ise API anahtarları kullanır. Ayrıntılar için aşağıdaki sağlayıcı sayfalarına bakın.

  • Yapılandırın

    openclaw configure --section web
    

    Bu, sağlayıcıyı ve gereken kimlik bilgisini kaydeder. Ayrıca bir env var (örneğin BRAVE_API_KEY) ayarlayabilir ve API destekli sağlayıcılar için bu adımı atlayabilirsiniz.

  • Kullanın

    Agent artık web_search çağırabilir:

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

    X gönderileri için şunu kullanın:

    await x_search({ query: "dinner recipes" });
    
  • Sağlayıcı seçimi

    Sağlayıcı karşılaştırması

    Sağlayıcı Sonuç stili Filtreler API anahtarı
    Brave Yapılandırılmış parçacıklar Ülke, dil, zaman, llm-context modu BRAVE_API_KEY
    DuckDuckGo Yapılandırılmış parçacıklar -- Yok (anahtarsız)
    Exa Yapılandırılmış + çıkarılmış Nöral/anahtar kelime modu, tarih, içerik çıkarma EXA_API_KEY
    Firecrawl Yapılandırılmış parçacıklar firecrawl_search aracı aracılığıyla FIRECRAWL_API_KEY
    Gemini AI tarafından sentezlenmiş + atıflar -- GEMINI_API_KEY
    Grok AI tarafından sentezlenmiş + atıflar -- XAI_API_KEY
    Kimi AI tarafından sentezlenmiş + atıflar; temellendirilmemiş sohbet geri dönüşlerinde başarısız olur -- KIMI_API_KEY / MOONSHOT_API_KEY
    MiniMax Search Yapılandırılmış parçacıklar Bölge (global / cn) MINIMAX_CODE_PLAN_KEY / MINIMAX_CODING_API_KEY / MINIMAX_OAUTH_TOKEN
    Ollama Web Search Yapılandırılmış parçacıklar -- Oturum açılmış yerel host'lar için yok; doğrudan https://ollama.com araması için OLLAMA_API_KEY
    Perplexity Yapılandırılmış parçacıklar Ülke, dil, zaman, etki alanları, içerik sınırları PERPLEXITY_API_KEY / OPENROUTER_API_KEY
    SearXNG Yapılandırılmış parçacıklar Kategoriler, dil Yok (kendi kendine barındırılır)
    Tavily Yapılandırılmış parçacıklar tavily_search aracı aracılığıyla TAVILY_API_KEY

    Otomatik algılama

    Yerel OpenAI web araması

    Doğrudan OpenAI Responses modelleri, OpenClaw web araması etkinleştirildiğinde ve yönetilen bir sağlayıcı sabitlenmediğinde OpenAI'nin barındırılan web_search aracını otomatik olarak kullanır. Bu, paketlenmiş OpenAI Plugin içinde sağlayıcıya ait bir davranıştır ve OpenAI uyumlu proxy temel URL'leri veya Azure rotaları için değil, yalnızca yerel OpenAI API trafiği için geçerlidir. OpenAI modelleri için yönetilen web_search aracını korumak üzere tools.web.search.provider değerini brave gibi başka bir sağlayıcıya ayarlayın veya hem yönetilen aramayı hem de yerel OpenAI aramasını devre dışı bırakmak için tools.web.search.enabled: false ayarlayın.

    Yerel Codex web araması

    Codex özellikli modeller, OpenClaw'ın yönetilen web_search işlevi yerine isteğe bağlı olarak sağlayıcıya özgü Responses web_search aracını kullanabilir.

    • Bunu tools.web.search.openaiCodex altında yapılandırın
    • Yalnızca Codex özellikli modeller için etkinleşir (openai-codex/* veya api: "openai-codex-responses" kullanan sağlayıcılar)
    • Yönetilen web_search, Codex dışı modellere uygulanmaya devam eder
    • mode: "cached" varsayılan ve önerilen ayardır
    • tools.web.search.enabled: false hem yönetilen hem de yerel aramayı devre dışı bırakır
    {
      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",
              },
            },
          },
        },
      },
    }
    

    Yerel Codex araması etkinleştirilmiş ancak mevcut model Codex özellikli değilse OpenClaw normal yönetilen web_search davranışını korur.

    Ağ güvenliği

    Yönetilen web_search sağlayıcı çağrıları OpenClaw'ın korumalı fetch yolunu kullanır. Güvenilen sağlayıcı API host'ları için OpenClaw, 198.18.0.0/15 ve fc00::/7 içindeki Surge, Clash ve sing-box fake-IP DNS yanıtlarına yalnızca ilgili sağlayıcı hostname'i için izin verir. Diğer özel, loopback, link-local ve metadata hedefleri engelli kalır.

    Bu otomatik izin, rastgele web_fetch URL'leri için geçerli değildir. web_fetch için, tools.web.fetch.ssrfPolicy.allowRfc2544BenchmarkRange ve tools.web.fetch.ssrfPolicy.allowIpv6UniqueLocalRange ayarlarını yalnızca güvenilen proxy'niz bu sentetik aralıklara sahipse açıkça etkinleştirin.

    Web aramasını ayarlama

    Dokümanlardaki ve kurulum akışlarındaki sağlayıcı listeleri alfabetiktir. Otomatik algılama ayrı bir öncelik sırası tutar.

    provider ayarlanmamışsa OpenClaw sağlayıcıları şu sırayla kontrol eder ve hazır olan ilkini kullanır:

    Önce API destekli sağlayıcılar:

    1. Brave -- BRAVE_API_KEY veya plugins.entries.brave.config.webSearch.apiKey (sıra 10)
    2. MiniMax Search -- MINIMAX_CODE_PLAN_KEY / MINIMAX_CODING_API_KEY / MINIMAX_OAUTH_TOKEN / MINIMAX_API_KEY veya plugins.entries.minimax.config.webSearch.apiKey (sıra 15)
    3. Gemini -- plugins.entries.google.config.webSearch.apiKey, GEMINI_API_KEY veya models.providers.google.apiKey (sıra 20)
    4. Grok -- XAI_API_KEY veya plugins.entries.xai.config.webSearch.apiKey (sıra 30)
    5. Kimi -- KIMI_API_KEY / MOONSHOT_API_KEY veya plugins.entries.moonshot.config.webSearch.apiKey (sıra 40)
    6. Perplexity -- PERPLEXITY_API_KEY / OPENROUTER_API_KEY veya plugins.entries.perplexity.config.webSearch.apiKey (sıra 50)
    7. Firecrawl -- FIRECRAWL_API_KEY veya plugins.entries.firecrawl.config.webSearch.apiKey (sıra 60)
    8. Exa -- EXA_API_KEY veya plugins.entries.exa.config.webSearch.apiKey; isteğe bağlı plugins.entries.exa.config.webSearch.baseUrl Exa endpoint'ini geçersiz kılar (sıra 65)
    9. Tavily -- TAVILY_API_KEY veya plugins.entries.tavily.config.webSearch.apiKey (sıra 70)

    Bundan sonra anahtarsız geri dönüşler:

    1. DuckDuckGo -- hesap veya API anahtarı gerektirmeyen anahtarsız HTML geri dönüşü (sıra 100)
    2. Ollama Web Search -- erişilebilir olduğunda ve ollama signin ile oturum açıldığında yapılandırılmış yerel Ollama host'unuz üzerinden anahtarsız geri dönüş; host gerektirdiğinde Ollama sağlayıcı bearer auth bilgisini yeniden kullanabilir ve OLLAMA_API_KEY ile yapılandırıldığında doğrudan https://ollama.com araması çağırabilir (sıra 110)
    3. SearXNG -- SEARXNG_BASE_URL veya plugins.entries.searxng.config.webSearch.baseUrl (sıra 200)

    Hiçbir sağlayıcı algılanmazsa Brave'e geri döner (birini yapılandırmanızı isteyen eksik anahtar hatası alırsınız).

    Yapılandırma

    {
      tools: {
        web: {
          search: {
            enabled: true, // default: true
            provider: "brave", // or omit for auto-detection
            maxResults: 5,
            timeoutSeconds: 30,
            cacheTtlMinutes: 15,
          },
        },
      },
    }
    

    Sağlayıcıya özgü yapılandırma (API anahtarları, temel URL'ler, modlar) plugins.entries.<plugin>.config.webSearch.* altında bulunur. Gemini ayrıca ayrılmış web arama yapılandırmasından ve GEMINI_API_KEY değerinden sonra daha düşük öncelikli yedekler olarak models.providers.google.apiKey ve models.providers.google.baseUrl değerlerini yeniden kullanabilir. Örnekler için sağlayıcı sayfalarına bakın.

    tools.web.search.provider, paketlenmiş ve kurulu Plugin manifestleri tarafından bildirilen web arama sağlayıcı kimliklerine ve bilinen kurulabilir sağlayıcı Pluginlerine göre doğrulanır. "brvae" gibi bir yazım hatası, sessizce otomatik algılamaya geri dönmek yerine yapılandırma doğrulamasında başarısız olur. Yapılandırılan sağlayıcı biliniyorsa ancak sahibi olan Plugin kullanılamıyorsa, OpenClaw başlangıcı dayanıklı tutar ve Plugin’i kurmak veya etkinleştirmek için openclaw doctor --fix çalıştırabilmeniz adına bir uyarı bildirir. Aynı uyarı davranışı, üçüncü taraf bir Plugin kaldırıldıktan sonra geride kalan plugins.entries.<plugin> bloğu gibi eski Plugin kanıtları için de geçerlidir.

    web_fetch yedek sağlayıcı seçimi ayrıdır:

    • tools.web.fetch.provider ile seçin
    • veya bu alanı atlayın ve OpenClaw’ın mevcut kimlik bilgilerinden hazır olan ilk web fetch sağlayıcısını otomatik algılamasına izin verin
    • sanal alan dışında çalışan web_fetch, contracts.webFetchProviders bildiren kurulu Plugin sağlayıcılarını kullanabilir; sanal alanlı fetch işlemleri yalnızca paketlenmiş olanlarla sınırlı kalır
    • bugün paketlenmiş web fetch sağlayıcısı Firecrawl’dır ve plugins.entries.firecrawl.config.webFetch.* altında yapılandırılır

    openclaw onboard veya openclaw configure --section web sırasında Kimi seçtiğinizde, OpenClaw şunları da sorabilir:

    • Moonshot API bölgesi (https://api.moonshot.ai/v1 veya https://api.moonshot.cn/v1)
    • varsayılan Kimi web arama modeli (varsayılan: kimi-k2.6)

    x_search için plugins.entries.xai.config.xSearch.* yapılandırın. Grok web aramasıyla aynı XAI_API_KEY yedeğini kullanır. Eski tools.web.x_search.* yapılandırması openclaw doctor --fix tarafından otomatik olarak taşınır. openclaw onboard veya openclaw configure --section web sırasında Grok seçtiğinizde, OpenClaw aynı anahtarla isteğe bağlı x_search kurulumunu da sunabilir. Bu, Grok yolu içinde ayrı bir takip adımıdır; ayrı bir üst düzey web arama sağlayıcısı seçimi değildir. Başka bir sağlayıcı seçerseniz OpenClaw x_search istemini göstermez.

    API anahtarlarını depolama

    Config file

    openclaw configure --section web çalıştırın veya anahtarı doğrudan ayarlayın:

    {
      plugins: {
        entries: {
          brave: {
            config: {
              webSearch: {
                apiKey: "YOUR_KEY", // pragma: allowlist secret
              },
            },
          },
        },
      },
    }
    

    Environment variable

    Sağlayıcı ortam değişkenini Gateway işlem ortamında ayarlayın:

    export BRAVE_API_KEY="YOUR_KEY"
    

    Bir gateway kurulumu için bunu ~/.openclaw/.env içine koyun. Ortam değişkenleri bölümüne bakın.

    Araç parametreleri

    Parametre Açıklama
    query Arama sorgusu (gerekli)
    count Döndürülecek sonuç sayısı (1-10, varsayılan: 5)
    country 2 harfli ISO ülke kodu (örn. "US", "DE")
    language ISO 639-1 dil kodu (örn. "en", "de")
    search_lang Arama dili kodu (yalnızca Brave)
    freshness Zaman filtresi: day, week, month veya year
    date_after Bu tarihten sonraki sonuçlar (YYYY-MM-DD)
    date_before Bu tarihten önceki sonuçlar (YYYY-MM-DD)
    ui_lang Kullanıcı arayüzü dil kodu (yalnızca Brave)
    domain_filter Alan adı izin/reddetme listesi dizisi (yalnızca Perplexity)
    max_tokens Toplam içerik bütçesi, varsayılan 25000 (yalnızca Perplexity)
    max_tokens_per_page Sayfa başına token sınırı, varsayılan 2048 (yalnızca Perplexity)

    x_search, xAI kullanarak X (eski adıyla Twitter) gönderilerini sorgular ve atıflarla birlikte yapay zeka tarafından sentezlenmiş yanıtlar döndürür. Doğal dil sorgularını ve isteğe bağlı yapılandırılmış filtreleri kabul eder. OpenClaw yerleşik xAI x_search aracını yalnızca bu araç çağrısına hizmet eden istek üzerinde etkinleştirir.

    x_search yapılandırması

    {
      plugins: {
        entries: {
          xai: {
            config: {
              xSearch: {
                enabled: true,
                model: "grok-4-1-fast-non-reasoning",
                baseUrl: "https://api.x.ai/v1", // optional, overrides webSearch.baseUrl
                inlineCitations: false,
                maxTurns: 2,
                timeoutSeconds: 30,
                cacheTtlMinutes: 15,
              },
              webSearch: {
                apiKey: "xai-...", // optional if XAI_API_KEY is set
                baseUrl: "https://api.x.ai/v1", // optional shared xAI Responses base URL
              },
            },
          },
        },
      },
    }
    

    plugins.entries.xai.config.xSearch.baseUrl ayarlandığında x_search, <baseUrl>/responses konumuna gönderi yapar. Bu alan atlanırsa, plugins.entries.xai.config.webSearch.baseUrl değerine, ardından eski tools.web.search.grok.baseUrl değerine ve son olarak herkese açık xAI uç noktasına geri döner.

    x_search parametreleri

    Parametre Açıklama
    query Arama sorgusu (gerekli)
    allowed_x_handles Sonuçları belirli X kullanıcı adlarıyla sınırla
    excluded_x_handles Belirli X kullanıcı adlarını hariç tut
    from_date Yalnızca bu tarihte veya sonrasındaki gönderileri dahil et (YYYY-MM-DD)
    to_date Yalnızca bu tarihte veya öncesindeki gönderileri dahil et (YYYY-MM-DD)
    enable_image_understanding xAI’ın eşleşen gönderilere ekli görselleri incelemesine izin ver
    enable_video_understanding xAI’ın eşleşen gönderilere ekli videoları incelemesine izin ver

    x_search örneği

    await x_search({
      query: "dinner recipes",
      allowed_x_handles: ["nytfood"],
      from_date: "2026-03-01",
    });
    
    // Per-post stats: use the exact status URL or status ID when possible
    await x_search({
      query: "https://x.com/huntharo/status/1905678901234567890",
    });
    

    Örnekler

    // Basic search
    await web_search({ query: "OpenClaw plugin SDK" });
    
    // German-specific search
    await web_search({ query: "TV online schauen", country: "DE", language: "de" });
    
    // Recent results (past week)
    await web_search({ query: "AI developments", freshness: "week" });
    
    // Date range
    await web_search({
      query: "climate research",
      date_after: "2024-01-01",
      date_before: "2024-06-30",
    });
    
    // Domain filtering (Perplexity only)
    await web_search({
      query: "product reviews",
      domain_filter: ["-reddit.com", "-pinterest.com"],
    });
    

    Araç profilleri

    Araç profilleri veya izin listeleri kullanıyorsanız web_search, x_search ya da group:web ekleyin:

    {
      tools: {
        allow: ["web_search", "x_search"],
        // or: allow: ["group:web"]  (includes web_search, x_search, and web_fetch)
      },
    }
    

    İlgili

    • Web Fetch -- bir URL getirir ve okunabilir içeriği çıkarır
    • Web Browser -- JS ağırlıklı siteler için tam tarayıcı otomasyonu
    • Grok Search -- web_search sağlayıcısı olarak Grok
    • Ollama Web Search -- Ollama ana bilgisayarınız üzerinden anahtarsız web araması