メインコンテンツへスキップ
OpenClaw は、セルフホスト型でキー不要web_search プロバイダーとして SearXNG をサポートしています。SearXNG は、Google、Bing、DuckDuckGo、その他のソースから結果を集約するオープンソースのメタ検索エンジンです。 利点:
  • 無料で無制限 — API キーや商用サブスクリプションは不要
  • プライバシー / エアギャップ — クエリがネットワークの外に出ない
  • どこでも動作 — 商用検索 API の地域制限なし

セットアップ

1

Plugin をインストール

openclaw plugins install @openclaw/searxng-plugin
2

SearXNG インスタンスを実行

docker run -d -p 8888:8080 searxng/searxng
または、アクセスできる既存の SearXNG デプロイを使用します。本番環境のセットアップについては SearXNG ドキュメントを参照してください。
3

設定

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 オブジェクトも受け付けます(例: { source: "env", id: "SEARXNG_BASE_URL" })。

環境変数

設定の代替として SEARXNG_BASE_URL を設定します:
export SEARXNG_BASE_URL="http://localhost:8888"
解決順序: 設定された baseUrl 文字列、次に baseUrl 上のインライン env SecretRef、その次に SEARXNG_BASE_URL。設定パスがどれも設定されておらず、明示的なプロバイダーが選択されていない状態で SEARXNG_BASE_URL が存在する場合、自動検出は SearXNG を選択します。

Plugin 設定リファレンス

フィールド説明
baseUrlSearXNG インスタンスのベース URL(必須)
categoriesgeneralnewsscience などのカンマ区切りカテゴリ
languageendefr など、結果の言語コード
web_search ツール呼び出しでは、呼び出しごとの上書きとして count(1-10 件の結果)、categorieslanguage も受け付けます。

メモ

  • JSON API — HTML スクレイピングではなく、SearXNG ネイティブの format=json エンドポイントを使用
  • 画像結果 URL — 画像カテゴリの結果には、SearXNG が直接画像 URL を返す場合に img_src が含まれる
  • API キーなし — どの SearXNG インスタンスでもそのまま動作
  • ベース URL 検証baseUrl は有効な http:// または https:// URL である必要がある
  • ネットワークガードhttp:// ベース URL は信頼済みのプライベートホストまたはループバックホストを対象にする必要がある(公開ホストでは https:// を使用する必要がある)。プライベート/内部アドレスに解決される https:// ベース URL には同じセルフホスト許可が適用され、公開アドレスに解決される https:// ベース URL では厳格な SSRF 保護が維持される
  • 自動検出の順序 — SearXNG には設定済みの baseUrl が必要(必須認証情報をすでに持つプロバイダーの中で順序は 200)。DuckDuckGo や Ollama Web Search などのキー不要プロバイダーが暗黙的に自動検出で選ばれることはなく、明示的な provider 選択でのみ有効になる
  • セルフホスト型 — インスタンス、クエリ、アップストリーム検索エンジンを自分で制御できる
  • カテゴリ は、設定されていない場合 general がデフォルト
  • カテゴリフォールバックgeneral 以外のカテゴリリクエストが成功しても結果が 0 件の場合、OpenClaw は空の結果セットを返す前に、同じクエリを general で一度再試行する
  • 結果キャッシュ — 同一のクエリ(同じクエリ、件数、カテゴリ、言語、ベース URL)は、短い TTL の間プロセス内にキャッシュされる
  • バージョン要件 — Plugin は minHostVersion: >=2026.6.9 を宣言している
SearXNG JSON API を動作させるには、SearXNG インスタンスの settings.ymlsearch.formatsjson 形式が有効になっていることを確認してください。

関連