dsh-tool-hermes-web
Hermes-backed web search/fetch for the DeepSeek Harness (DSH).
- Search: DuckDuckGo via a Python venv
ddgs package (free, unlimited) as primary, Tavily as fallback.
- Fetch / extract: Firecrawl (markdown extraction).
- Backends are chosen in the DSH Settings → Hermes Web Search section, hot-reloaded (no file editing).
- API keys are read from a plain
.env file (default D:/Hermes/.env, configurable) and are never stored in settings.
- Registers the
ctx.web providers under the id hermes-web (works with web_search / web_fetch).
Built from the Hermes personal-assistant setup at D:/Hermes; paths are configurable so any layout works.
Install
dsh plugin --profile web add dsh-tool-hermes-web
# or from source: dsh plugin --profile web add D:/path/to/dsh-tool-hermes-web
Restart dsh web, then open Settings → Hermes Web Search to pick backends.
Requirements
- ddgs backend: a Python interpreter with the
ddgs package installed (e.g. pip install ddgs), and optionally a proxy for DuckDuckGo (default http://127.0.0.1:7897 — Clash-style).
- Tavily backend:
TAVILY_API_KEY in the .env file.
- Firecrawl backend:
FIRECRAWL_API_KEY in the .env file.
Configuration
All options live in the Settings → Hermes Web Search section (namespace hermes-web):
| Option |
Meaning |
Default |
search_backend |
ddgs (free) or tavily |
ddgs |
extract_backend |
firecrawl |
firecrawl |
proxy |
HTTP(S) proxy for the ddgs child process; empty = no proxy |
http://127.0.0.1:7897 |
hermes_env |
Path to the .env file holding API keys |
empty → HERMES_ENV env var → D:/Hermes/.env |
hermes_python |
Python interpreter with ddgs installed |
empty → HERMES_PYTHON env var → D:/Hermes/hermes-agent/venv/Scripts/python.exe |
Example .env:
TAVILY_API_KEY=tvly-...
FIRECRAWL_API_KEY=fc-...
Security notes
- API keys live only in the .env file (read at call time, never logged, never written to settings).
- ddgs runs as a local child process with an explicit proxy env when configured.
- The plugin is MIT-licensed; review the source before installing (it runs inside the DSH host process).
License
MIT