Skip to content

v2.9.0 — Search type, Serper extraction, configurable locale

Latest

Choose a tag to compare

@robbyczgw-cla robbyczgw-cla released this 03 Jul 14:04

What's Changed

✨ Added

  • Golden snapshot recorderscripts/golden_eval.py with expanded query coverage across providers for regression testing. (#77)
  • Search type parameterweb_search_plus now supports search_type (search or news). Serper serves news natively; other providers report search_type.applied=false. (#80)
  • Serper extractionweb_extract_plus(provider="serper") scrapes pages via Serper's webpage scraper, last in auto-fallback chain. (#80)
  • Configurable locale — new defaults.locale (country/language/auto) for Serper, Brave, You.com, SerpBase, Querit, Firecrawl, SearXNG. (#81)
  • Language detection — stopword/character heuristic (de/es/fr/it/pt/nl/en), no LLM/dependency/IP. (#81)
  • Location hints — curated city/country table so "mejores restaurantes Madrid" → es. (#81)

🔧 Improved

  • Registry-driven dispatch — provider execution separated from routing into provider_dispatch.py. (#79)

🐛 Fixed

  • Plugin discovery no longer depends on cwd when Hermes loads the plugin from outside the plugin directory. (#75)
  • serper.type = "news" no longer returns empty results — parses the news field correctly. (#80)

Credits