Hermes Agent vs Goose: ¿CLI de escritorio o runtime servidor?
Goose es el agente de escritorio en Rust de Block movido por recetas YAML. Hermes es un runtime servidor con memoria persistente. Cuándo gana cada uno.
Dos agentes muy nombrados, apuntando a máquinas distintas
Si escribiste "hermes agent vs goose" en el buscador, estás comparando dos de los agentes de IA open source más estrellados de 2026, pero apuntan a máquinas distintas. Goose es el agente de escritorio y CLI de Block, escrito en Rust y con licencia Apache 2.0, con más de 44.000 estrellas en GitHub y ahora gobernado por la Agentic AI Foundation dentro de la Linux Foundation. Hermes Agent es el runtime servidor en Python de Nous Research, con licencia MIT, que superó las 175.000 estrellas en menos de cuatro meses tras su lanzamiento en febrero de 2026. Uno es un asistente de escritorio pulido, guiado por recetas YAML portables. El otro es un daemon siempre encendido, orientado a mensajería y con memoria persistente.
Esa distinción marca casi todo lo que viene después: cómo instalas cada proyecto, dónde vive, cómo te recuerda, cómo se extiende y qué lector pulsará "atrás" en Google al aterrizar en el equivocado. Este artículo revisa qué es cada proyecto en realidad, la frontera honesta de decisión entre ellos y el montaje híbrido que corre los dos a la vez.
Qué es Goose exactamente
Goose es un agente de IA on-machine de Block (antes Square). Lo instalas como app de escritorio nativa o como CLI, escrito en Rust para portabilidad y velocidad, y el agente corre dentro de una sesión que abres en tu portátil. Le apuntas a un proveedor de modelo - Anthropic, OpenAI, Google, Ollama, OpenRouter, Azure, Bedrock o cualquier endpoint compatible con OpenAI - y lanzas una tarea. Trae más de 15 proveedores soportados de serie.
La opinión más fuerte de Goose es la receta: un archivo YAML con nombre, prompt, lista de extensiones, entradas estructuradas y sub-recetas opcionales. Las recetas son la razón por la que el mismo binario gestiona revisiones de PR, triage de tickets, reparación de suites de test y docenas de otros trabajos. Una receta puede decir "corre la suite de test, recoge los fallos, arregla cada test roto, vuelve a correrla para confirmar y crea un commit", y cualquier compañero puede meter ese archivo en un repo y ejecutarlo. Block reporta que esta abstracción es cómo Goose escaló al 60% de los ~12.000 empleados de la empresa en ingeniería, ventas, diseño, producto y customer success.
La extensibilidad es el otro pilar. Goose fue uno de los primeros adoptantes de MCP y ya cuenta con más de 70 extensiones documentadas, lo que significa que cada nueva capacidad - un lector de base de datos, un tablero de Jira, una consulta de monitorización - es un servidor MCP que construyes una vez y que a partir de ahí enchufa cada receta. Goose también puede lanzar subagentes independientes en paralelo para mantener la conversación principal limpia.
Lo que no trae de serie es una identidad persistente y transversal a las sesiones sobre ti. La memoria en Goose está atada a la sesión y a lo que la receta actual decida recordar. Si quieres un agente que sepa lo que le contaste hace dos semanas sin que reconstruyas una receta para recuperar ese contexto, no es la forma del producto.
Qué es Hermes Agent exactamente
Hermes Agent es un runtime servidor en Python, no una app de escritorio. Un comando lo instala, otro lo arranca y aparece un proceso de larga duración en tu host - un VPS de 5 dólares, una Raspberry Pi, un NAS o un servidor casero. Le hablas desde donde te resulte más cómodo: Telegram, WhatsApp, Discord, Slack, Signal, Matrix, Mattermost, email, SMS o una CLI local - unos veinte canales servidos por una sola pasarela.
Hay un solo agente, deliberadamente. Su fuerza viene de tres capas de estado que vienen listas de serie:
- Memoria central en archivos (
MEMORY.md,USER.md) inyectados en el system prompt al inicio de la sesión. - Búsqueda de sesiones apoyada en SQLite FTS5, para que el agente recuerde lo que dijiste el martes pasado sin que tengas que volver a pegarlo.
- Skills, archivos markdown planos compatibles con el estándar abierto agentskills.io, que el agente carga y escribe por sí mismo tras las tareas que quiere recordar cómo hacer.
Alrededor de ese núcleo hay un cinturón de herramientas: búsqueda web, extracción de páginas, automatización del navegador (navegar, hacer clic, escribir, capturar), visión, generación de imágenes, text-to-speech y decenas más. Hermes habla con cualquier modelo compatible con OpenAI, así que Nous Portal, los más de 200 modelos de OpenRouter, NVIDIA NIM, Hugging Face o tu propio endpoint funcionan. El runtime es MIT y el coste marginal lo dominan las facturas del proveedor de modelo.
La frontera de decisión
Un marco útil: Goose es el agente que manejas con el teclado. Hermes es el agente al que mensajeas desde el móvil.
| Pregunta | Goose | Hermes Agent |
|---|---|---|
| Dónde vive el agente | En tu portátil (app de escritorio o CLI) | En un servidor (VPS, Pi, NAS, servidor casero) |
| Forma de la sesión | Abres una tarea, corre y termina | Daemon de larga duración, siempre encendido |
| Interfaz principal | Terminal o UI de escritorio nativa | Telegram, WhatsApp, Discord, Signal y 17 más |
| Memoria entre sesiones | Guiada por receta, no incluida | Archivos de memoria central, búsqueda FTS5, skills |
| Mecanismo de extensiones | Servidores MCP referenciados desde recetas YAML | Servidores MCP y skills markdown que el agente escribe |
| Multi-tenant / equipos | Recetas compartibles; un binario por usuario | Daemon monousuario por instalación |
| Lenguaje | Rust | Python |
| Licencia | Apache 2.0 | MIT |
| Mejor para | Código, tareas tipo CI, flujos de trabajo compartibles | Asistencia personal, recuerdo, borradores a lo largo de días |
| Estrellas en GitHub (2026) | 44.000+ | 175.000+ |
La señal de que elegiste el proyecto equivocado suele ser ruidosa. Si intentas tener "un agente en Telegram que me conozca y me redacte el email a las 8 mientras tengo el portátil cerrado", Goose es la forma equivocada: no hay servidor de larga duración, ni puente de mensajería, ni identidad persistente. Si intentas correr un flujo de "revisa este PR, parcha, vuelve a testear, commit" dentro de CI y compartible con el equipo, Hermes es la forma equivocada: un daemon personal orientado a mensajería no es lo que necesita un agente de build.
Cuándo gana Goose
Goose es la respuesta correcta cuando:
- El trabajo del agente es código que manejas desde una terminal. Leer, editar, ejecutar y testear archivos en la máquina en la que ya estás sentado.
- Quieres flujos portables y revisables. Una receta YAML metida en un repo es el artefacto - tu compañero clona el repo, corre
goose runy obtiene el mismo comportamiento. - Estás dentro de un equipo o empresa y quieres que docenas de trabajos compartan un binario y una superficie de extensiones. El 60% de adopción de Block es la forma de este caso.
- Quieres máxima libertad de modelo en el escritorio, sin servidor. Anthropic, OpenAI, Google, Ollama, OpenRouter, Bedrock, Azure - cualquiera funciona, y con Ollama el modo totalmente offline es real.
- Quieres subagentes en paralelo para que la conversación principal siga siendo legible mientras corren trabajos de fondo.
Esta es la categoría agente on-machine. Goose solapa aquí con Aider, Cursor y Claude Code y con OpenClaw. Su rasgo diferencial es el formato de recetas - una abstracción aburrida y bien formada que generaliza también fuera del código.
Cuándo gana Hermes
Hermes es la respuesta correcta cuando:
- El agente es para ti, no para un repo o un equipo. Un asistente diario de escritura, un compañero de journaling a largo plazo, un CRM personal que vive en Telegram.
- Quieres la memoria y la mensajería listas de serie. Sin receta para "acuérdate de que uso
pnpm", sin adaptador de mensajería a mano. - El agente tiene que estar despierto mientras duermes o el portátil está cerrado. Un runtime servidor está encendido 24/7 por definición.
- Quieres que te encuentre donde ya estás. Notas de voz en Telegram, un DM en Slack, un SMS - no una ventana de terminal que tienes que abrir.
- Quieres que se mejore a sí mismo. Hermes escribe y parchea sus propios archivos de skills según trabaja, así que el agente que tienes el mes que viene es un poco mejor que el de hoy.
Esta es la categoría agente personal. Comparamos Hermes contra los grandes asistentes solo-chat en Hermes Agent vs ChatGPT, Claude y Gemini, contra las herramientas de flujo en Hermes Agent vs n8n y contra frameworks Python en Hermes Agent vs Agno.
Empieza con Hermify si quieres un Hermes Agent gestionado corriendo en Telegram en menos de un minuto, sin VPS que operar.
El híbrido honesto
Los dos proyectos no son excluyentes, y el montaje más interesante corre ambos.
- Goose vive en tu bucle de desarrollo. En tu portátil, un directorio de recetas gestiona revisiones de PR, refactors, pasadas de migración, reparación de suites de test - las tareas que caen naturalmente en "abre una sesión, corre hasta el final, ciérrala". Las recetas se meten en el repo como cualquier otro código.
- Hermes lleva la relación ambiente. En un servidor al que le hablas desde Telegram todo el día, Hermes redacta tu email, resume tu lectura, sigue tus proyectos y recuerda al cliente al que le prometiste algo hace dos viernes.
El puente entre los dos es MCP. Hermes habla la API compatible con OpenAI y puede exponerse como servidor MCP, así que una receta de Goose puede llamar a la memoria de Hermes como una herramienta ("¿qué presupuesto declaró el cliente para este proyecto?"). Al revés, un skill de Hermes puede lanzar goose run receta.yaml cuando la tarea es naturalmente de código. En la práctica: Hermes es dueño del estado de la relación (quién eres, qué te importa, quiénes son tus contactos) y Goose es dueño de los trabajos estructurados (los que meterías felizmente en YAML si tuvieras que hacerlo).
Coste, alojamiento y lock-in
Los dos proyectos son open source y auto-hospedables. Ninguno te ata a un proveedor.
Goose corre en tu máquina local, así que el coste del runtime es tu portátil más la factura del proveedor de modelo. Si usas Ollama, offline es gratis. Las recetas son YAML portable, sin runtime que viva en la nube de otro.
Hermes corre en un servidor, así que pagas por el servidor (un VPS de 5 dólares basta para uso personal) y por el proveedor de modelo. Si prefieres no correr el servidor tú mismo, una configuración gestionada se ocupa del VPS, las actualizaciones y los puentes de mensajería y mantiene los archivos de memoria en tu cuenta. Cubrimos el trade-off self-hosted vs gestionado en otro artículo.
Cómo elegir
Una regla corta de decisión:
- Si tu problema es "quiero un agente de código, testeo, refactor, en forma CI que manejo desde el portátil con flujos YAML revisables" - elige Goose.
- Si tu problema es "quiero un agente siempre encendido que me conozca, viva en Telegram o Slack y me recuerde a lo largo de semanas" - elige Hermes.
- Si quieres el agente de código en el portátil y el agente personal ambiente en el móvil - corre los dos, y usa MCP para que hablen cuando una tarea cruce la frontera.
Forzar a cualquiera de los dos a hacer el papel del otro es el modo de fallo. Goose no es un daemon personal nativo de mensajería; pretender lo contrario es reconstruir las partes de Hermes que habrías tenido gratis. Hermes no es un runner de CI code-first; pretender lo contrario es escribir un formato de recetas que Goose ya trae. Cuando aceptas que apuntan a máquinas distintas, la elección se vuelve fácil y el montaje con los dos empieza a parecer obvio.
Sources
- Goose - Your open source AI agent
- block/goose on GitHub
- Block Open-Sourced Goose: How a YAML Recipe File Scaled an AI Agent to 60% of the Company - The Agent Report
- Introducing Goose, the on-machine AI agent - Marc Nuri
- Goose by Block - Open-Source AI Agent Review - OpenAIToolsHub
- NousResearch/hermes-agent on GitHub
- Hermes Agent - The Agent That Grows With You
- Hermes Agent - The Self-Improving AI Agent
Lanza tu propio agente Hermes
Trae tu clave de API, conecta Telegram y ten un agente de IA que evoluciona solo activo en 60 segundos.
Empezar