| name | hermes-plugin-backsearch |
| description | Usa a buscar en el web pasado sin fuga temporal. |
| version | 2.0.0 |
| author | Mastermind (stars-explorer) |
| license | MIT |
| metadata | {"hermes":{"tags":["hermes","plugin","busqueda-web","point-in-time","backtest","research","reproducibilidad"],"related_skills":["hermes-agent","blocked-page-recovery","research-grounded-citations"]}} |
BackSearch — Búsqueda web point-in-time para Hermes Agent
Repo: https://github.com/NousResearch/hermes-plugin-backsearch (38⭐, Python, MIT, oficial de NousResearch, verificado 2026-09-07 contra README real)
Cuándo usar
Usar cuando haga falta buscar o citar información web tal como era en una fecha dada sin que se cuele evidencia posterior: backtests, research histórico con fecha de corte, reproducir una decisión pasada, o verificar "qué estaba publicado el día X". No usar para búsqueda web normal (para eso basta web_search).
Qué es
Plugin de Hermes Agent que da búsqueda y fetch web condicionados por fecha sobre un archivo de noticias congelado (BackSearch de General Reasoning). Cada petición lleva as_of: el buscador solo devuelve documentos crawlados en o antes de esa fecha, y el fetch devuelve el texto tal como se archivó entonces. Misma query + mismo as_of = mismos resultados para siempre.
Caso de uso: backtests de forecasting, investigación cuantitativa, entornos RL, benchmarks reproducibles — cualquier tarea donde la evidencia posterior a la fecha de corte NO debe filtrarse. En Mastermind: investigar "qué se sabía del mercado X en marzo" sin contaminación de noticias posteriores.
Los dos tools
| Tool | Qué hace |
|---|
backsearch | Búsqueda híbrida sobre el corpus congelado: query, as_of, opcionales k, allowed_domains/blocked_domains |
backfetch | Texto de una página desde la última captura ≤ cutoff: url, as_of, opcional prompt para resumen enfocado |
Ambos están gated en OPENREWARD_API_KEY: sin key configurada NUNCA llegan al schema del modelo → footprint cero de tools.
Instalación
git clone https://github.com/NousResearch/hermes-plugin-backsearch.git ~/.hermes/plugins/backsearch
hermes plugins enable backsearch
echo 'OPENREWARD_API_KEY=or_...' >> ~/.hermes/.env
Las sesiones nuevas recogen los tools automáticamente cuando la key existe.
Semántica clave (pitfalls)
as_of gatea por crawl_date, no por la fecha de publicación que declara el artículo. Una página archivada por primera vez después del cutoff jamás se devuelve, aunque afirme ser anterior — así se garantiza cero fuga post-cutoff en un backtest.
- Ventana del archivo (preview): dominios de noticias, diciembre 2025 – julio 2026. Un
as_of fuera de la ventana devuelve lista vacía (no error) — vacío ≠ fallo.
- Facturación por request exitosa: fetch sin captura ≤ cutoff → soft 404 y NO cuesta; saldo agotado → 402 con mensaje accionable.
- Fetch capped a 15K chars — para artículos largos pasar
prompt y pedir resumen enfocado en vez del texto completo.
OPENREWARD_SEARCH_URL sobreescribe la URL base (https://search.openreward.ai) para testing/self-routing.
- El repo vino primero como PR #71207 a hermes-agent; extrajo a plugin standalone por la política de que integraciones de servicios de terceros se distribuyen como plugins, no como core.
Tests / verificación
python -m pytest tests/ -q
Verificar que el plugin está vivo: hermes plugins list | grep backsearch y que la key está en el .env del home activo.
Origen
Aprendido del ciclo stars-explorer de David (Ntizar) — batch 2026-09-07. Registry: NousResearch/hermes-plugin-backsearch → category tool.