Extracto
July 10, 2026 · View on GitHub
A self-hosted web content extraction plugin for Hermes Agent.
Two-tier extraction strategy — no API key required:
- trafilatura (local, fast) — fetches HTML and extracts main text as markdown
- Jina Reader (
r.jina.ai, free tier) — browser-rendered fallback for JS-heavy pages that trafilatura can't parse
Install
hermes plugins install <your-github>/extracto --enable
Or manually clone into your plugins directory:
git clone https://github.com/<your-github>/extracto.git ~/.hermes/plugins/web/extracto
Then enable in ~/.hermes/config.yaml:
plugins:
enabled:
- web/extracto
web:
extract_backend: extracto
Requirements
trafilatura(pip install trafilatura)httpx(pip install httpx)
Both are already dependencies of Hermes Agent in most installations.
How it works
URL -> httpx.get() -> trafilatura.extract() -> markdown content
| (empty/too short)
r.jina.ai/{url} -> browser-rendered markdown
| (also empty)
error: no extractable content
- Stateless — no cache, no database. Every call fetches fresh content.
- No API key — trafilatura runs locally; Jina Reader free tier needs no auth.
- Rate limit — Jina free tier is ~20 RPM. trafilatura path has no limit (it's local).
License
MIT