Web Search Backends for Hermes Agent

This web search configuration guide covers Firecrawl, Tavily, SearXNG, Brave Search, and custom endpoints.

TLDR: This web search configuration guide covers every search backend Hermes supports. Use the web toolset for internet search. Default providers are Firecrawl and Tavily.

Key Takeaways

  • The web toolset enables internet search — enable with hermes tools enable web
  • Firecrawl and Tavily are the default search backends
  • SearXNG is the most-requested provider (self-hosted, free, private)
  • Brave Search is available via API key
  • /reset after enabling the web toolset for changes to take effect

The web toolset is not enabled by default on all platforms:

# Enable
hermes tools enable web

# Verify
hermes tools list

# Reset session to apply
# (Type /reset or exit and relaunch)

Once enabled, the agent can search the internet, extract content from URLs, and fetch data from APIs.

Default Search Providers

Firecrawl

Firecrawl is the default web search backend. It’s great for general web search and content extraction.

# Firecrawl works out of the box for basic search
# For higher rate limits, set:
export FIRECRAWL_API_KEY="fcp-..."

Tavily

Tavily is an alternative search API optimized for AI agents.

export TAVILY_API_KEY="tvly-..."

Self-Hosted: SearXNG

SearXNG is the most requested web search provider. It’s a free, self-hosted, privacy-respecting metasearch engine. No API keys, no rate limits, no tracking.

Setup

# Deploy SearXNG via Docker
docker run -d --name searxng -p 8080:8080 searxng/searxng

Then configure Hermes to use it:

hermes config set web.search_provider "searxng"
hermes config set web.searxng_base_url "http://localhost:8080"

Why SearXNG?

FeatureSearXNGFirecrawlTavily
Self-hosted
FreeFreemiumFreemium
Private (no tracking)
No API key needed
Multiple search sources✅ (aggregates)
Easy to deploy✅ (Docker)SaaSSaaS

If you run Hermes on a server or local machine, SearXNG is the best option for unlimited, private web search.

Brave Search is another popular option — it has its own search index (not Bing/Google dependent).

export BRAVE_SEARCH_API_KEY="BSA-..."

Then configure:

hermes config set web.search_provider "brave"

Custom Search Endpoints

For custom search backends:

hermes config set web.search_provider "custom"
hermes config set web.custom_search_url "https://your-search-api.com/search"
hermes config set web.custom_search_api_key "your-key"

Comparison Table

ProviderCostPrivacySetupQuality
Firecrawl (default)FreemiumModerateNone (default)Good
TavilyFreemiumModerateSet API keyGood
SearXNGFree (self-host)ExcellentDocker runVery good (aggregates)
Brave SearchFreemiumGoodSet API keyGood (independent index)
CustomVariesVariesConfig setupVaries

Troubleshooting

Web search not working after enabling:

# 1. Verify toolset is enabled
hermes tools list | grep web

# 2. Check if API keys are set
hermes config env-path
cat ~/.hermes/.env | grep -i SEARCH

# 3. Test manually
curl -s "https://api.firecrawl.dev/v0/search?query=test"

# 4. Reset session
/reset

FAQ

Q: Which search provider should I use? For most users: Firecrawl (default, works out of the box). For heavy users: SearXNG (free, self-hosted, no rate limits). For privacy-focused: SearXNG or Brave Search.

Q: Can I use multiple search providers at once? Not simultaneously — Hermes uses one provider at a time. Switch with hermes config set web.search_provider.

Q: Does the browser tool also search the web? Yes — the browser tool navigates to URLs directly. Web search finds URLs; the browser tool visits them. They’re complementary.

Next Steps