Reddit y RSS sin navegador: Hermes lee comunidades y feeds desde cualquier servidor


Es miércoles por la noche y estás redactando el informe semanal. «¿Qué está diciendo de verdad la comunidad sobre ese framework nuevo?» — te encantaría saberlo. Entonces llega la cruda realidad: si Hermes corre en un servidor, Reddit está prácticamente muerto desde esa IP — la web te planta un muro de «Prove your humanity», los endpoints .json responden 403 y todas las alternativas acaban en el mismo callejón sin salida. Con el RSS no vas mucho mejor: o instalas un lector, o te toca escribirte un parser a mano para media docena de dialectos XML. Todo ese canal de información queda a oscuras, y la «investigación» se convierte en adivinanzas. Dos skills bundled que llegaron a main en Hermes el 5 de septiembre de 2026 arreglan exactamente esto: rss-feeds convierte los feeds RSS/Atom/JSON en una sola lista limpia y ordenada por fecha, y reddit-reading lee Reddit sin navegador y sin cuenta — ambas viajan con el agente, cero instalación, cero configuración.

Qué son estas dos skills, en palabras sencillas

Las skills en Hermes son manuales de operación que viven en la cabeza del agente: cuando aparece una situación relevante, el agente carga el manual y sigue sus pasos. Ambas recién llegadas son skills bundled — viajan con Hermes y funcionan de serie, a diferencia de las optional skills, que primero necesitan un comando de instalación.

  • rss-feeds: lee los formatos RSS 2.0, RSS 1.0/RDF, Atom y JSON Feed, y devuelve una lista limpia de la más nueva a la más antigua (título, enlace, hora de publicación en UTC, autor, resumen). Solo librería estándar — no hay nada que instalar. Pásale la URL de una página normal y hasta es capaz de descubrir el feed escondido tras esa página.
  • reddit-reading: lee listados de subreddits, búsquedas en todo el sitio o dentro de un subreddit, threads completos con comentarios y la actividad de los usuarios. No publica, no vota ni inicia sesión por ti — estrictamente de solo lectura.

Los casos de uso se escriben solos: el pulso de la comunidad («¿qué dice r/LocalLLaMA de este modelo?»), el seguimiento de releases vía el releases.atom de GitHub, y convertir esos diez sitios que «revisas cada día» en un único resumen programado.

RSS: de «instala un lector» a «solo pregunta»

Le hablas a Hermes en lenguaje natural — no hay sintaxis de comandos que memorizar:

«¿Qué versiones ha publicado recientemente este repositorio de GitHub?» «Resume los últimos posts de https://simonwillison.net/» «Mándame cada mañana a las 9 los papers nuevos de arXiv cs.CL.»

Bajo el capó, la skill ejecuta un pequeño script auxiliar. Apúntalo a cualquier feed RSS/Atom/JSON — o a una home normal, y descubre el feed por ti:

python3 scripts/feed.py read https://github.com/NousResearch/hermes-agent/releases.atom --limit 5
python3 scripts/feed.py read https://simonwillison.net/            # page URL → feed auto-discovered
python3 scripts/feed.py read URL --since 2026-09-01 --json          # only entries newer than a date
python3 scripts/feed.py discover https://example.com/               # list candidate feed URLs on a page

Cada entrada vuelve con title / link / published (UTC) / author / summary — HTML eliminado, resúmenes capados a 2000 caracteres y ordenados del más nuevo al más antiguo. Se sabe de memoria los patrones habituales de URL de feeds:

Lo que quieres URL del feed
Releases / commits / tags de GitHub https://github.com/OWNER/REPO/releases.atom, …/commits/BRANCH.atom
Un subreddit https://www.reddit.com/r/NAME/.rss
Un canal de YouTube https://www.youtube.com/feeds/videos.xml?channel_id=UC…
Hacker News https://hnrss.org/frontpage, https://hnrss.org/newest?q=term
Artículos de arXiv https://rss.arxiv.org/rss/cs.CL
Substack / Medium / WordPress / Ghost el /feed del sitio, medium.com/feed/@user, etc.

Hay dos detalles que merecen la pena. Primero, para los resúmenes programados usa --since para traer solo lo que es más nuevo que tu última comprobación — guarda el último valor de published de la ejecución anterior y pásalo la próxima vez, y consigues una deduplicación natural sin volver a raspar toda la portada (encaja a la perfección con la automatización de cron de Hermes). Segundo, los resúmenes de los feeds suelen venir truncados o con solo el primer párrafo — para el artículo completo, pásale el link de una entrada a web_extract.

Reddit: legible desde una IP de servidor, sin iniciar sesión

Seguro que ya lo has probado: desde un VPS, reddit.com/…/.json devuelve 403, y api.reddit.com y old.reddit.com también; suplantar el User-Agent de un navegador sigue dando 403; incluso los proxies al estilo r.jina.ai y las herramientas de navegador chocan con un muro de «bloqueado por la seguridad de la red». Reddit cierra casi todas las puertas sin autenticar para las IPs de datacenter — excepto sus propios feeds Atom públicos. Ese es el backend por defecto de reddit-reading: los endpoints .rss de Reddit, anónimos y sin login, a costa de un throttling severo (aproximadamente una petición por minuto por IP) y de datos más finos (post + comentarios de primer nivel, sin puntuaciones).

¿Necesitas lecturas más frecuentes o más completas (por ejemplo, un monitoreo sostenido de un subreddit)? Hay una actualización gratuita opcional: registra una app de tipo «script» en la página de ajustes de apps de Reddit y pon sus dos valores en ~/.hermes/.env:

REDDIT_CLIENT_ID=...
REDDIT_CLIENT_SECRET=...

Un malentendido muy común merece una nota clara: esto es un registro de aplicación, no un login de usuario. El script solo usa la concesión client_credentials propia de una app — nunca tu nombre de usuario, tu contraseña ni las cookies de tu navegador, y nunca actúa en tu nombre. Con ambos valores configurados, cambia a la API de OAuth automáticamente (~100 peticiones por minuto, comentarios anidados, puntuaciones, recuentos de comentarios); si faltan o son rechazados, vuelve a caer en los feeds anónimos. En paralelo:

Anónimo (por defecto) Credenciales de app OAuth
Configuración ninguna registro gratuito de app, dos valores en .env
Límite de peticiones ~1 petición / minuto / IP ~100 peticiones / minuto
Datos del thread post + comentarios de primer nivel, sin puntuaciones comentarios anidados, puntuaciones, recuentos de comentarios
Actúa como usuario no no

De nuevo, el lenguaje natural es la interfaz principal («¿de qué habla r/LocalLLaMA últimamente?»); los comandos subyacentes tienen esta pinta:

python3 scripts/reddit.py doctor                                  # active backend + rate-limit window
python3 scripts/reddit.py sub LocalLLaMA --sort hot --limit 15
python3 scripts/reddit.py search "hermes agent" --sub LocalLLaMA --sort new
python3 scripts/reddit.py thread <post-url> --limit 40            # post + comment tree
python3 scripts/reddit.py user spez --limit 10

Si no has ejecutado doctor en esta sesión, hazlo primero — te dice qué backend está activo y cuántos segundos quedan en la ventana anónima, para que no planifiques una investigación de cinco llamadas que choque con el throttling (el modo anónimo permite aproximadamente una petición por minuto; ante un 429, el script espera a que pase la ventana y reintenta una vez).

«¿Qué dice la gente sobre X?»: una pregunta, cinco canales

Cada skill es útil por separado; la química sale de la combinación. Las dos se han cableado en la cadena de investigación de Hermes — grounded-citations y competitor-news-monitor ahora las listan como skills relacionadas. El resultado: cuando preguntas «¿qué dice la gente sobre X ahora mismo?», Hermes abanica la pregunta por varios canales — búsqueda web, discusión en Reddit, feeds, vídeo, código — y cita cada afirmación con su enlace original (el permalink de un thread, no la página del listado) para que puedas hacer clic y comprobarlo. Comparada con una investigación que solo usa la búsqueda web, esta pasada multiplataforma es mucho menos propensa a perderse lo que la comunidad dice de verdad.

Lee los límites antes de confiar en ello

  • Estrictamente de solo lectura: reddit-reading no publica, no vota, no envía mensajes ni hace nada que requiera un login de usuario. Que Hermes escriba en Reddit es otra historia, fuera del alcance de esta skill.
  • No luches contra los 403: desde IPs de datacenter, .json, api.reddit.com y old.reddit.com son callejones sin salida, y suplantar el User-Agent no te salvará; r.jina.ai también está bloqueado. Quédate en el canal por defecto de la skill. La ruta de Wayback en blocked-page-recovery solo puede rescatar threads antiguos archivados — no puede traer los recientes.
  • El throttling está ahí a propósito: el límite anónimo de ~1 petición/min es una regla de Reddit; el script espera a que pase la ventana, pero si necesitas lecturas sostenidas de alto volumen (monitoreo, decenas de llamadas), registra las credenciales gratuitas de la app en lugar de machacar reintentos.
  • Mantén el secreto fuera del chat: REDDIT_CLIENT_SECRET vive solo en .env, leído del entorno — nunca lo pegues en una conversación ni en un log.
  • Estado del release: ambas skills se fusionaron en main el 5 de septiembre de 2026 — después de v0.21.0 (publicada el 31 de agosto) — así que por ahora son solo de main y viajarán con el próximo release; el actualizador de Hermes se lleva consigo las skills bundled. Para probarlas hoy, ejecuta una instalación que siga el último main.

Resumen

«Leer a la comunidad» solía ser una de las cosas más incómodas de hacer desde un agente alojado en un servidor — Reddit levanta muros a cada paso, y el RSS significaba reinventar la rueda. Ahora ambas son skills de instalación cero que viajan con el agente: el RSS cubre la amplitud (GitHub, HN, arXiv, blogs, podcasts) y Reddit cubre la profundidad (subreddits, búsquedas, threads, usuarios), y el barrido de investigación que se ramifica solo, con citas por afirmación, significa que mantener un dedo en el pulso de la industria por fin se puede delegar por completo. Y si ya te apoyas en los canales de búsqueda gratuitos de Hermes, este combo de web + comunidad + feeds cierra el círculo de la recopilación de información del día a día.