Vai al contenuto principale
OpenClaw supporta SearXNG come provider web_search self-hosted, senza chiave. SearXNG è un motore di meta-ricerca open source che aggrega risultati da Google, Bing, DuckDuckGo e altre fonti. Vantaggi:
  • Gratuito e illimitato — non richiede chiave API né abbonamento commerciale
  • Privacy / air-gap — le query non lasciano mai la tua rete
  • Funziona ovunque — nessuna restrizione geografica sulle API di ricerca commerciali

Configurazione

1

Install the plugin

openclaw plugins install @openclaw/searxng-plugin
2

Run a SearXNG instance

docker run -d -p 8888:8080 searxng/searxng
Oppure usa qualsiasi deployment SearXNG esistente a cui hai accesso. Consulta la documentazione di SearXNG per la configurazione in produzione.
3

Configure

openclaw configure --section web
# Select "searxng" as the provider
Oppure imposta la variabile d’ambiente e lascia che il rilevamento automatico la trovi:
export SEARXNG_BASE_URL="http://localhost:8888"

Config

{
  tools: {
    web: {
      search: {
        provider: "searxng",
      },
    },
  },
}
Impostazioni a livello di Plugin per l’istanza SearXNG:
{
  plugins: {
    entries: {
      searxng: {
        config: {
          webSearch: {
            baseUrl: "http://localhost:8888",
            categories: "general,news", // optional
            language: "en", // optional
          },
        },
      },
    },
  },
}
Il campo baseUrl accetta anche oggetti SecretRef. Regole di trasporto:
  • https:// funziona per host SearXNG pubblici o privati
  • http:// è accettato solo per host di rete privata attendibili o local loopback
  • gli host SearXNG pubblici devono usare https://
  • gli host privati/interni usano la protezione di rete self-hosted; gli host pubblici https:// restano sulla protezione rigorosa per la ricerca web e non possono reindirizzare verso indirizzi privati

Variabile d’ambiente

Imposta SEARXNG_BASE_URL come alternativa alla configurazione:
export SEARXNG_BASE_URL="http://localhost:8888"
Quando SEARXNG_BASE_URL è impostata e non è configurato alcun provider esplicito, il rilevamento automatico seleziona SearXNG automaticamente (alla priorità più bassa — qualsiasi provider basato su API con una chiave vince per primo).

Riferimento alla configurazione del Plugin

CampoDescrizione
baseUrlURL di base della tua istanza SearXNG (obbligatorio)
categoriesCategorie separate da virgole, come general, news o science
languageCodice lingua per i risultati, come en, de o fr

Note

  • API JSON — usa l’endpoint nativo format=json di SearXNG, non lo scraping HTML
  • URL dei risultati immagine — i risultati della categoria immagini includono img_src quando SearXNG restituisce un URL immagine diretto
  • Nessuna chiave API — funziona con qualsiasi istanza SearXNG senza configurazioni aggiuntive
  • Convalida dell’URL di basebaseUrl deve essere un URL http:// o https:// valido; gli host pubblici devono usare https://
  • Protezione di rete — gli endpoint SearXNG privati/interni optano per l’accesso alla rete privata; gli endpoint SearXNG pubblici https:// mantengono una protezione SSRF rigorosa
  • Ordine del rilevamento automatico — SearXNG viene controllato dopo i provider basati su API con chiavi configurate (ordine 200). I provider senza chiave, come DuckDuckGo o Ollama Web Search, non vengono selezionati automaticamente senza una scelta esplicita del provider
  • Self-hosted — controlli l’istanza, le query e i motori di ricerca upstream
  • Categorie usa general come valore predefinito quando non è configurato
  • Fallback di categoria — se una richiesta di categoria non general riesce ma restituisce zero risultati, OpenClaw riprova la stessa query una volta con general prima di restituire un insieme di risultati vuoto
Affinché l’API JSON di SearXNG funzioni, assicurati che la tua istanza SearXNG abbia il formato json abilitato nel suo settings.yml sotto search.formats.

Correlati