# Hermes Plugin Backsearch

> Usa a buscar en el web pasado sin fuga temporal.

- Skill: `ntizar/hermes-plugin-backsearch` (Agent Skill)
- Install (CLI): `npx skillmds@latest add ntizar/hermes-plugin-backsearch`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ntizar/hermes-plugin-backsearch/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- License: MIT
- Author: ntizar (https://skillmd.com/u/ntizar)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/ntizar/hermes-plugin-backsearch

---


# 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

```bash
# 1. Clonar al directorio de plugins de Hermes
#    (~/.hermes/plugins; en esta máquina Windows: %LOCALAPPDATA%\hermes\plugins)
git clone https://github.com/NousResearch/hermes-plugin-backsearch.git ~/.hermes/plugins/backsearch

# 2. Activar
hermes plugins enable backsearch

# 3. API key — se factura contra saldo prepago OpenReward (https://openreward.ai/, formato or_...)
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

```bash
# Sin red ni key, desde el venv de un checkout de hermes-agent
# (HERMES_AGENT_REPO si no está en ~/.hermes/hermes-agent):
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`.

