Hay una nueva categoría de herramientas de IA que está tomando forma discretamente: agentes que no viven en una ventana de chat que abres y cierras, sino que se ejecutan continuamente en la nube y te hablan a través de un mensajero, como un colega que nunca se desconecta.
Hermes es una de las implementaciones más interesantes de esta idea, y lo que lo diferencia de agentes similares como OpenClaw es un bucle de auto-mejora integrado: un sistema que observa tus conversaciones, extrae patrones útiles de ellas y convierte esos patrones en mejoras permanentes de su propia memoria y conjunto de habilidades.
Este artículo explica cómo está construido Hermes, cómo configurarlo y cómo funciona realmente ese bucle de auto-mejora bajo el capó.
Qué es Hermes y en qué se diferencia de OpenClaw
Hermes es un agente de IA residente en la nube, estructuralmente similar a OpenClaw: funciona 24/7 e interactúas con él a través de una aplicación de mensajería en lugar de una terminal o una pestaña del navegador.
Las diferencias significativas son tres.
Primero, Hermes viene con una biblioteca mucho más grande de habilidades incorporadas listas para usar, por lo que dedicas menos tiempo a configurar integraciones tú mismo.
Segundo, el proceso de configuración es considerablemente más ágil: una TUI guiada maneja casi todo.
Tercero, y más importante, Hermes está diseñado para la auto-mejora continua: no solo ejecuta tareas, sino que acumula conocimiento procedimental sobre cómo ejecutarlas mejor con el tiempo.
Instalación y configuración inicial
Poner en marcha Hermes requiere un solo comando.
En Windows, ejecutas esto en PowerShell:
iex (irm
En Linux, macOS o WSL, el equivalente es:
curl -fsSL
Una vez instalado, reiniciar la terminal y ejecutar hermes setup inicia un flujo de configuración guiada que recorre la selección del modelo, el backend de terminal, la puerta de enlace de mensajería y la configuración de herramientas en secuencia.

Elección y enrutamiento de modelos

La primera decisión real en la configuración es qué proveedor de LLM impulsa el "cerebro" del agente. La autenticación se realiza mediante OAuth en lugar de claves API en bruto, lo que permite iniciar sesión a través de una sesión existente de Claude Code o Codex CLI en lugar de generar una clave API separada.
Lo que está genuinamente bien diseñado aquí es cómo Hermes separa el modelo utilizado para tu conversación principal de los modelos utilizados para tareas auxiliares y de fondo. Por defecto, el mismo modelo maneja ambas, pero cada tarea auxiliar puede apuntar a un proveedor diferente de forma independiente.
Las tareas que admiten este tipo de anulación son:
vision: análisis y descripción de imágenesweb_extract: resumen de páginas web largascompression: compresión de un contexto de conversación desbordadotitle_generation: generación de títulos de sesióncurator: el agente de fondo responsable del bucle de auto-mejorakanban_decomposer: descomposición de tareas grandes en subtareas en modo Kanbangoal_judge: el agente que verifica si un/goalrealmente se ha logrado
Esto se configura directamente en `config.yaml`, por ejemplo:
1# Primary model for chat and complex reasoning2model:3 provider: "anthropic"4 default: "claude-4-8-sonnet"5 auxiliary:6 vision:7 provider: "gemini"8 model: "gemini-2.5-flash"9 compression:10 provider: "custom"11 base_url: "http://localhost:11434/v1"12 api_key: "none"13 model: "qwen2.5:32b"
Este tipo de enrutamiento explícito resuelve un problema real con OpenRouter como opción predeterminada: el mismo modelo nominal a menudo es implementado por muchos proveedores diferentes, frecuentemente en diferentes cuantizaciones, y OpenRouter redistribuirá silenciosamente cada nueva solicitud entre aproximadamente veinte de ellos.
El efecto práctico es que, dentro de una misma sesión, no estás hablando con un solo modelo consistente, sino con un elenco rotativo de instancias del mismo configuradas de manera diferente, algunas de las cuales manejan las llamadas a herramientas y las plantillas de indicaciones de manera más fiable que otras. Enrutar manualmente dentro de Hermes evita esto por completo.

También vale la pena señalar que si deseas ahorrar dinero en el modelo conversacional sin sacrificar la calidad de codificación, Hermes admite los comandos /claude_code y /codex que delegan tareas de codificación directamente a esas herramientas CLI en lugar de manejarlas con el modelo de chat configurado.

Backends de terminal

Una pieza central de la arquitectura es el Entorno de Backend de Terminal, que determina dónde y cómo se ejecutan realmente los comandos de shell y los scripts de Python, y cómo el agente accede a tu sistema de archivos. Hermes admite cinco.
Local es el predeterminado. Los comandos se ejecutan directamente en tu máquina con los mismos permisos que tu cuenta de usuario, sin aislamiento. Es la opción correcta para el desarrollo local y el uso personal de confianza donde deseas que el agente edite tus archivos de proyecto reales.
La seguridad aquí depende completamente de un sistema de aprobaciones integrado que intercepta comandos destructivos (un rm -rf /, un DROP TABLE) y solicita permiso explícito antes de ejecutarlos.
Docker ejecuta al agente dentro de un entorno aislado para que no pueda tocar tu sistema anfitrión. SSH hace que el agente ejecute comandos y trabaje con archivos en un servidor remoto a través de una conexión remota. Modal ejecuta todo en entornos aislados de nube sin servidor: básicamente estás alquilando cómputo por segundo, pagando solo por los segundos reales que tu código se ejecuta.
Daytona es una capa de gestión de contenedores diseñada específicamente para agentes de codificación de IA; es más rápido que ejecutar Docker directamente y maneja la configuración del entorno y la instalación de dependencias automáticamente.
Para la mayoría de los casos de uso personal, Local es realmente suficiente; las otras opciones importan principalmente si estás ejecutando código no confiable o trabajando a escala de equipo.
Puerta de enlace de mensajería y configuración de herramientas

Después del backend de terminal, la configuración pasa a elegir dónde hablarás realmente con el agente: Telegram es la opción más pulida. Seleccionarlo te da un enlace directo que inicia un bot preconfigurado; no hay configuración manual de token de bot involucrada.



El resto de la configuración recorre la habilitación de herramientas individuales y sus respectivos proveedores: automatización del navegador, generación de imágenes, texto a voz y búsqueda web. Para la búsqueda web específicamente, Firecrawl autoalojado o Exa destacan como opciones sólidas para el raspado y la recuperación orientados a agentes.




La búsqueda en X requiere una suscripción a Grok para habilitarse, lo cual vale la pena saber antes de buscarla en el menú.

Comandos de barra que vale la pena conocer
Hermes viene con una larga lista de comandos de barra, la mayoría autoexplicativos por su nombre, pero vale la pena mencionar algunos específicamente.
/background <prompt>ejecuta una tarea en segundo plano sin interrumpir tu sesión principal./goalestablece un objetivo a largo plazo hacia el que el agente trabaja de manera persistente, con subcomandos para pausar, reanudar, borrar o verificar el estado;/subgoalgestiona objetivos más pequeños anidados bajo un objetivo activo./kanbanorquesta trabajo asíncrono de larga duración a través de múltiples agentes independientes, funcionando como un tablero Kanban real donde un conjunto de tareas se distribuye entre agentes trabajadores y pasa por pendiente, en progreso y hecho a medida que se transfiere entre ellos.
En el lado del desarrollo, /github_pr_workflow maneja el ciclo completo de rama a fusión, incluido CI; /github_code_review revisa solicitudes de extracción; y /codebase_inspection analiza el desglose de lenguaje y el recuento de líneas de un repositorio. /dogfood es un modo de control de calidad dedicado que busca errores en una aplicación web y produce un informe basado en evidencia. /spike ejecuta un experimento rápido y desechable para validar una idea antes de comprometerse con el desarrollo completo, y /systematic_debugging trabaja a través de errores en cuatro fases, comprendiendo la causa raíz antes de intentar una corrección.
También hay un conjunto de comandos específicos de integración: /notion, /obsidian, /airtable, /google_workspace, /arxiv, /blogwatcher, /polymarket, /ocr_and_documents, /youtube_content, cada uno envolviendo un servicio externo o flujo de trabajo específico, más /bundles, que agrupa varias habilidades existentes bajo un solo comando de barra a través de pequeños archivos de configuración YAML.
Trabajos cron y Webhooks
Dos primitivas de automatización merecen especial atención.
- Los trabajos cron te permiten programar un script para que se ejecute en un temporizador; si pasas
-no-agental crear uno, Hermes ejecutará un script simple de Python o bash y simplemente reenviará su salida a tu mensajero, sin gastar ningún token de LLM. - Los webhooks son la pieza más potente: permiten que el agente reaccione a eventos externos en lugar de a un temporizador. Puedes configurar un webhook para que, por ejemplo, una nueva solicitud de extracción de GitHub active automáticamente un agente con un mensaje y un conjunto de habilidades específicos, poniendo efectivamente en marcha un agente revisor de guardia sin intervención manual por PR.
Motores de contexto
El motor de contexto gobierna cómo Hermes comprime y gestiona el historial de conversación una vez que se acerca al límite de tokens del modelo, y hay dos opciones.
- El predeterminado, llamado Compressor, aplica resumen con pérdida a la parte media de una conversación larga.
- La alternativa, LCM (Gestión de Contexto sin Pérdida), adopta un enfoque estructuralmente diferente: en lugar de producir un resumen de texto, construye un grafo acíclico dirigido de los puntos clave de la conversación, permitiendo que el agente navegue desde una vista de alto nivel y muy comprimida hasta los mensajes originales específicos que la respaldan.

Motores de memoria
Los proveedores de memoria externa se ejecutan junto con los archivos de memoria local integrados de Hermes, MEMORY.md y USER.md, añadiendo capacidades como búsqueda semántica y grafos de conocimiento.
Varios se pueden configurar directamente a través de la TUI de configuración.
- Honcho está construido en torno al modelado de un perfil de usuario detallado, utilizando llamadas LLM de fondo para sintetizar observaciones en dos capas: una capa base de resúmenes y perfiles de sesión, y una capa dialéctica que analiza las necesidades actuales del usuario.
- OpenViking es una base de datos de contexto que construye una jerarquía de conocimiento al estilo de un sistema de archivos, admitiendo recuperación de contexto por niveles y clasificando automáticamente los hechos extraídos en seis categorías (eventos, patrones, preferencias, etc.) al final de cada sesión.
- Mem0 es un servicio de memoria en la nube totalmente gestionado; la extracción de hechos ocurre del lado del servidor mediante LLM, e incluye búsqueda semántica, reordenación de resultados y deduplicación automática, aunque al estar alojado en la nube, es también la única opción aquí con un costo recurrente.
- Hindsight es un sistema de memoria a largo plazo más avanzado construido sobre un grafo de conocimiento, al estilo GraphRAG. Extrae entidades de las sesiones, construye relaciones entre ellas y preserva turnos conversacionales completos, incluyendo llamadas a herramientas, con la memoria dividida en cuatro categorías: hechos sobre el mundo, la propia experiencia del agente, opiniones y observaciones.
- Holographic es un almacén de hechos local basado en SQLite sin dependencias externas, que incluye un sistema de puntuación de confianza para los hechos almacenados y el uso de Representaciones Reducidas Holográficas para admitir consultas algebraicas y composicionales, con la capacidad de detectar automáticamente contradicciones dentro de su base de conocimiento.
- RetainDB es una API en la nube para memoria de equipo, que ofrece búsqueda híbrida entre vector, BM25 y métodos de reordenación, con la memoria dividida en siete tipos distintos y compresión delta para mantener el almacenamiento eficiente.
- ByteRover es un sistema de memoria local portátil al que se accede a través de una CLI, que construye un árbol de conocimiento jerárquico y extrae hechos importantes antes de que la compresión con pérdida tenga la oportunidad de eliminarlos del contexto.
- Supermemory ofrece memoria semántica a largo plazo con una API de grafo: ingiere registros de sesión completos después de que finaliza una conversación para construir su grafo de conocimiento, limpia periódicamente los hechos recordados para evitar la contaminación de los turnos actuales y puede aislar la memoria en contenedores separados por perfil de agente.
Para el uso diario, la memoria local predeterminada es realmente adecuada para la mayoría de las personas; los sistemas más pesados intercambian un costo real de recursos (especialmente RAM para las opciones alojadas localmente) por una capacidad que la mayoría de los flujos de trabajo aún no necesitan.
El bucle de auto-mejora
Esta es la característica que más distingue a Hermes de un agente convencional: un conjunto de procesos de fondo asíncronos que analizan continuamente tus conversaciones, extraen patrones útiles de ellas y escriben esos patrones en la memoria a largo plazo y la memoria procedimental (habilidades), y luego mantienen ese conocimiento acumulado para que no se degrade con el tiempo. Todo el sistema se ejecuta en paralelo con tu chat principal y se compone de tres componentes: un sistema de activación, un agente de revisión de fondo y un curador.
- El sistema de activación
Hermes no analiza cada mensaje en tiempo real, ya que eso quemaría tokens sin beneficio. En su lugar, se basa en dos contadores que activan un pase de reflexión una vez que cruzan un umbral.
Un disparador de memoria se activa cada diez indicaciones del usuario, verificando si han aparecido en la conversación nuevos hechos que valga la pena guardar.
Un disparador de habilidad se activa cada diez iteraciones de llamadas a herramientas dentro de un solo turno, basándose en la teoría de que si el agente acaba de pasar tantos pasos luchando con un problema mediante prueba y error, vale la pena analizar esa experiencia y posiblemente convertirla en una habilidad reutilizable.
Una vez que cualquiera de los contadores alcanza su límite, se activa una función interna que entrega una instantánea de la conversación actual a un proceso de revisión en segundo plano.
- El agente de revisión de fondo
Esta instantánea va a un proceso de agente completamente separado y aislado que se ejecuta en paralelo sin interrumpir tu sesión principal. Funciona en dos direcciones.
- En el lado declarativo, si nota nuevas preferencias del usuario o detalles del entorno (una preferencia por Supabase, un proyecto fijado en Python 3.12), actualiza
MEMORY.mdoUSER.md, dependiendo de a qué archivo pertenezca el hecho. - En el lado procedimental, si detecta que el agente acaba de resolver un problema no trivial o elaboró un proceso complejo, puede crear una nueva habilidad, editar una existente, aplicar un parche específico o eliminar una por completo. Cualquier habilidad que cree se etiqueta explícitamente como generada por el agente, por lo que su origen siempre es rastreable.
Para que el curador pueda juzgar eventualmente cuáles de estas habilidades autogeneradas vale la pena conservar, Hermes mantiene un registro de uso oculto que rastrea, para cada habilidad: cuántas veces se ha cargado en un mensaje, cuántas veces el agente la ha abierto para leerla, cuántas veces se ha editado, y marcas de tiempo de creación, último uso y última edición.
- El curador
Si no se controla, este proceso puede eventualmente producir cientos de habilidades, algunas redundantes, algunas desactualizadas.
El curador existe para evitar que esa base de conocimiento se degrade. Solo comienza cuando se cumplen dos condiciones simultáneamente: ha pasado suficiente tiempo desde su última ejecución (siete días, por defecto), y el agente principal ha estado inactivo el tiempo suficiente (dos horas, por defecto) para que un pase de mantenimiento pesado no interfiera con el trabajo activo.
Antes de realizar cualquier cambio, realiza automáticamente una copia de seguridad de todo el directorio de habilidades, por lo que cualquier resultado insatisfactorio se puede revertir mediante un solo comando de terminal.
El trabajo del curador ocurre en dos fases:
- La primera es puramente mecánica y no involucra una llamada LLM en absoluto: verifica las métricas de uso, marca cualquier habilidad generada por el agente que no se haya utilizado durante más de 30 días como obsoleta y mueve cualquier cosa que no se haya utilizado durante más de 90 días a una carpeta de archivo. Las habilidades importantes se pueden fijar explícitamente para protegerlas de este proceso.
- La segunda fase es una revisión LLM genuina, ejecutada a través de una instancia de agente aislada separada utilizando el modelo configurado para la tarea auxiliar del curador (por defecto, el mismo modelo que la conversación principal, aunque se puede apuntar a algo más barato). Vale la pena ser cauteloso al elegir demasiado barato aquí, ya que la calidad de estas decisiones tiene un efecto descendente real en la biblioteca de habilidades.
Para cada habilidad, el curador decide mantenerla tal cual si todavía es precisa y útil, corregirla si contiene errores o métodos desactualizados, fusionarla con otra habilidad que cubra esencialmente el mismo terreno (reubicando correctamente cualquier script, evaluación o archivo de referencia asociado y reescribiendo las rutas relativas en el proceso), o archivarla por completo.
Al final del ciclo, produce un informe detallado que incluye un mapa de renombramiento que muestra exactamente cómo se asignaron los nombres de habilidades antiguas a las nuevas después de cualquier fusión, para que el razonamiento detrás de cada decisión sea completamente auditable.
Usar Hermes bien
Los agentes en la nube como este son genuinamente valiosos para cualquier proceso que puedas ejecutar 24/7 (siendo el trabajo de codificación la excepción notable), siempre que hayas digitalizado ese proceso cuidadosamente y hayas construido una habilidad sólida a su alrededor, incluyendo evaluaciones.
El flujo de trabajo que tiende a producir buenos resultados se ve más o menos así:
- Comienza grabándote a ti mismo, en detalle, recorriendo el proceso desde el inicio absoluto hasta el final, idealmente usando una herramienta de dictado para capturarlo con precisión, y este paso solo funciona si realmente entiendes el proceso o lo has investigado adecuadamente.
- Toma esa grabación o esas notas e introdúcelas en un agente de codificación utilizando una herramienta de creación de habilidades para producir un primer borrador; no será lo suficientemente bueno como para delegarlo todavía, especialmente para algo complejo.
- Construye evaluaciones: soluciones de referencia que representen un resultado correcto, ya que son lo que realmente te permite medir si la habilidad está funcionando bien en lugar de adivinarlo.
- Ejecuta la habilidad en un entorno de prueba y refina tanto las evaluaciones como el contenido de la habilidad en función de lo que observes, haciendo la mayor parte de esa edición a mano en lugar de delegarla.
- Solo cuando la habilidad se comporte de manera consistente y determinista debe entregarse al agente siempre activo. Si el proceso depende de algún servicio externo, vale la pena verificar si ya existe un servidor MCP o CLI que lo cubra antes de construir uno desde cero.
El punto más amplio es que la gama de cosas que puedes delegar a un agente como este está limitada principalmente por lo bien que puedas especificar el trabajo, no por la capacidad bruta del agente.
Tres principios parecen mantenerse en todos los casos de uso: no subcontrates el trabajo de codificación a un agente en la nube no supervisado 24/7, mantén a un humano en el ciclo revisando lo que realmente produce el agente, y trata el refinamiento de habilidades como un trabajo continuo en lugar de algo que terminas una vez y de lo que te alejas.
Si esto fue útil, márcalo como favorito. Querrás volver a consultarlo.
Para más análisis como este, sigue a @ScottyBeamIO
Sin rodeos, solo lo que realmente funciona.





