Skip to content

feat: add searxng web backend#7258

Closed
coldxiangyu163 wants to merge 1 commit into
NousResearch:mainfrom
coldxiangyu163:feat/searxng-web-backend
Closed

feat: add searxng web backend#7258
coldxiangyu163 wants to merge 1 commit into
NousResearch:mainfrom
coldxiangyu163:feat/searxng-web-backend

Conversation

@coldxiangyu163

Copy link
Copy Markdown

Summary

  • add a self-hosted SearXNG web backend option to Hermes web tools and setup/config surfaces
  • support SearXNG-backed web_search plus direct page-fetch web_extract
  • return a clear unsupported message for web_crawl on SearXNG and preserve website-policy checks across backends

Test Plan

  • python -m pytest -o 'addopts=' tests/tools/test_web_tools_config.py tests/tools/test_web_tools_searxng.py tests/tools/test_website_policy.py tests/hermes_cli/test_status.py -q
  • python -m pytest -o 'addopts=' tests/tools/test_web_tools_tavily.py tests/tools/test_website_policy.py -q
  • python -m py_compile tools/web_tools.py hermes_cli/config.py hermes_cli/tools_config.py hermes_cli/nous_subscription.py hermes_cli/status.py tests/tools/test_web_tools_config.py tests/tools/test_web_tools_searxng.py tests/tools/test_website_policy.py tests/hermes_cli/test_status.py

kshitijk4poor pushed a commit that referenced this pull request Apr 17, 2026
Adds SearXNG (https://docs.searxng.org) as a self-hosted, privacy-first
web search backend alongside Firecrawl, Tavily, Exa, and Parallel.

SearXNG is a meta-search engine that aggregates results from 70+ search
engines. No API key needed -- just set SEARXNG_URL to your instance.

Changes:
- tools/web_tools.py: _get_searxng_url(), _searxng_search(), search
  dispatch, extract falls back to Firecrawl (SearXNG is search-only)
- hermes_cli/tools_config.py: SearXNG provider in web tool picker
- hermes_cli/config.py: SEARXNG_URL env var, diagnostics, set command
- tests/tools/test_web_tools_searxng.py: 15 tests
- optional-skills/research/searxng-search/: agent-guided skill
- Docs: configuration.md, environment-variables.md, skills catalogs

Based on #6071 by @gnanam1990, #8106 by @cro, #2572 by @bhovig,
#2710 and #9961 by @StreamOfRon, #7258 by @coldxiangyu163
@kshitijk4poor

Copy link
Copy Markdown
Collaborator

Merged via PR #11562 which consolidates SearXNG integration from multiple community PRs. Your tools_config.py provider picker integration approach was used in the final implementation. Thank you for the contribution!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants