Tools

SearXNG 検索

OpenClawはSearXNGセルフホスト型で、 キー不要web_searchプロバイダーとしてサポートしています。SearXNGは、Google、Bing、DuckDuckGo、その他のソースから結果を集約するオープンソースのメタ検索エンジンです。

利点:

  • 無料で無制限 -- APIキーや商用サブスクリプションは不要
  • プライバシー / エアギャップ -- クエリがネットワークの外に出ない
  • どこでも動作 -- 商用検索APIのリージョン制限なし

セットアップ

  • SearXNGインスタンスを実行する

    docker run -d -p 8888:8080 searxng/searxng
    

    または、アクセス可能な既存のSearXNGデプロイメントを使用します。本番環境のセットアップについては SearXNGドキュメントを参照してください。

  • 設定する

    openclaw configure --section web
    # Select "searxng" as the provider
    

    または、環境変数を設定して自動検出に見つけさせます。

    export SEARXNG_BASE_URL="http://localhost:8888"
    
  • 設定

    {
      tools: {
        web: {
          search: {
            provider: "searxng",
          },
        },
      },
    }
    

    SearXNGインスタンスのPluginレベル設定:

    {
      plugins: {
        entries: {
          searxng: {
            config: {
              webSearch: {
                baseUrl: "http://localhost:8888",
                categories: "general,news", // optional
                language: "en", // optional
              },
            },
          },
        },
      },
    }
    

    baseUrlフィールドはSecretRefオブジェクトも受け付けます。

    トランスポートルール:

    • https://はパブリックまたはプライベートのSearXNGホストで動作する
    • http://は信頼済みのプライベートネットワークまたはループバックホストでのみ受け付けられる
    • パブリックSearXNGホストはhttps://を使用する必要がある
    • プライベート/内部ホストはセルフホスト型ネットワークガードを使用する。パブリックのhttps:// ホストは厳格なWeb検索ガード上に残り、プライベート アドレスへリダイレクトできない

    環境変数

    設定の代替としてSEARXNG_BASE_URLを設定します。

    export SEARXNG_BASE_URL="http://localhost:8888"
    

    SEARXNG_BASE_URLが設定され、明示的なプロバイダーが設定されていない場合、自動検出はSearXNGを自動的に選択します(最も低い優先度 -- キーを持つAPIベースのプロバイダーがある場合は、それが先に選ばれます)。

    Plugin設定リファレンス

    フィールド 説明
    baseUrl SearXNGインスタンスのベースURL(必須)
    categories generalnewsscienceなどのカンマ区切りカテゴリ
    language endefrなど、結果の言語コード

    注意事項

    • JSON API -- HTMLスクレイピングではなく、SearXNGネイティブのformat=jsonエンドポイントを使用する
    • 画像結果URL -- SearXNGが直接画像URLを返す場合、画像カテゴリの結果にはimg_srcが含まれる
    • APIキー不要 -- どのSearXNGインスタンスでもすぐに動作する
    • ベースURL検証 -- baseUrlは有効なhttp://またはhttps:// URLでなければならない。パブリックホストはhttps://を使用する必要がある
    • ネットワークガード -- プライベート/内部SearXNGエンドポイントは プライベートネットワークアクセスを明示的に有効化する。パブリックのhttps:// SearXNGエンドポイントは厳格なSSRF 保護を維持する
    • 自動検出順序 -- SearXNGは自動検出で最後(順序200)にチェックされる。設定済みキーを持つAPIベースのプロバイダーが先に実行され、その後に DuckDuckGo(順序100)、Ollama Web Search(順序110)が続く
    • セルフホスト型 -- インスタンス、クエリ、アップストリーム検索エンジンを自分で制御する
    • カテゴリ は未設定時にデフォルトでgeneralになる
    • カテゴリフォールバック -- general以外のカテゴリリクエストが成功しても 結果が0件だった場合、OpenClawは空の結果セットを返す前に、同じクエリをgeneralで一度再試行する

    関連情報