Hermes Agent y OpenCode no son dos compilaciones de lo mismo: Hermes es un agente personal siempre activo que responde a través de canales de mensajería y conserva la memoria entre sesiones, mientras que OpenCode es un agente de programación interactivo que manejas desde una terminal, una aplicación de escritorio o un editor. Ambos tienen licencia MIT, ambos recibieron commits el día en que se comprobó esta página y ambos aceptan un endpoint de terceros sin que un nivel de pago se interponga. Por tanto, la decisión no es una puntuación de funciones: es dónde se ejecuta el agente, quién tiene permitido hablar con él y qué mantiene la facturación cuando nadie está escribiendo.
Primero, dos trampas de nombres, porque ambos aparecen activos en los resultados de búsqueda de esta comparación. El OpenCode de aquí es anomalyco/opencode: no está archivado, tiene licencia MIT, su rama predeterminada es dev, cuenta con 209,062 estrellas y su última versión es v1.18.31, publicada el 14 de septiembre de 2026. GitHub todavía resuelve sst/opencode hacia él: esa ruta devuelve el registro del propio repositorio, así que se trata de un cambio de propietario y no de un segundo proyecto activo. La API no establece por qué ocurrió el cambio, por lo que esta página no lo afirma. Otro repositorio, opencode-ai/opencode, está archivado y en modo de solo lectura desde septiembre de 2025, y su propio README dice que el proyecto «ha continuado con el nombre Crush»; consulta Crush frente a OpenCode para conocer ese límite. Además, «Hermes» también designa la familia de modelos de pesos abiertos de Nous Research, un motor de JavaScript y una empresa de mensajería; esta página se refiere únicamente a NousResearch/hermes-agent (no archivado, con licencia MIT, 247,674 estrellas, última versión v2026.9.14, denominada «Hermes Agent v0.21.3», publicada el 14 de septiembre de 2026). Los cuatro estados de los repositorios se leyeron en la API REST de GitHub el 21 de septiembre de 2026.
¿Cuál deberías elegir?
Elige Hermes Agent cuando el trabajo llegue mientras estás lejos del teclado. Su documentación describe «más de 20 plataformas desde un solo gateway»: CLI, Telegram, Discord, Slack, WhatsApp, Signal, Matrix, Mattermost, correo electrónico, SMS y más; además de siete backends de terminal y tareas programadas. Ese alcance incorpora un eje de permisos que OpenCode sencillamente no tiene: el gateway decide quién puede dirigirse al agente, y por defecto permanece cerrado: «Si no se configuran listas de permitidos y no se establece GATEWAY_ALLOW_ALL_USERS, se deniega el acceso a todos los usuarios». La ruta de costes es la que requiere más atención, porque un agente siempre activo factura cuando no estás mirando, y el bloqueo de migración es específico: el instalador de macOS es solo para Apple Silicon, y macOS con Intel figura como plataforma no compatible (documentación de instalación, 21 de septiembre de 2026).
Elige OpenCode cuando el trabajo sea un repositorio y tú lo supervises. Incluye herramientas específicas para código que Hermes no documenta: integración con Language Server Protocol que utiliza los diagnósticos como retroalimentación para el agente, un agente plan integrado que establece las ediciones de archivos y bash en ask, y subagentes de solo lectura explore y scout. Su modelo de permisos es exactamente el inverso del de Hermes: «La mayoría de los permisos tienen "allow" como valor predeterminado», mientras que doom_loop y external_directory tienen ask como valor predeterminado y los archivos .env están denegados. Así que OpenCode comienza abierto y tú lo cierras; Hermes comienza cerrado y tú lo abres. La ruta de costes es más sencilla: no se ejecuta nada cuando no estás en una sesión; y el coste de migración es el inverso del de Hermes: OpenCode no documenta memoria tuya entre sesiones, así que su persistencia son los archivos AGENTS.md que escribes y confirmas.
Elige ambos cuando la respuesta honesta sea delegar. Nous distribuye una habilidad de Hermes incluida que entrega el trabajo de programación a la CLI de OpenCode como proceso externo: un opencode run de una sola ejecución para una tarea acotada, o una sesión interactiva ejecutada en segundo plano mediante la herramienta de terminal de Hermes. Es documentación de primera parte, no un apaño, y por eso esta comparación no es únicamente una cuestión de sustitución: los dos agentes no comparten una sesión ni una ventana de contexto, así que OpenCode se ejecuta con sus propias credenciales y su propio contador de uso. El detalle de credenciales y medición pertenece a Hermes Agent con Codex y OpenCode, que cubre las cuatro superficies de credenciales de ese flujo de trabajo.
Hermes Agent frente a OpenCode, dimensión por dimensión
| Dimensión | Hermes Agent | OpenCode |
|---|---|---|
| Qué es | Agente de gateway persistente; descripción del repositorio: «El agente que crece contigo» | Agente de programación; descripción del repositorio: «El agente de programación de código abierto». |
| Dónde se ejecuta | 7 backends de terminal: local, Docker, SSH, Daytona, Singularity, Modal, Vercel Sandbox | Terminal, aplicación de escritorio o extensión de IDE, en tu propia máquina |
| Quién puede dirigirse a él | Listas de permitidos del gateway y emparejamiento por DM; los usuarios desconocidos se deniegan de forma predeterminada | Cualquiera que esté en la terminal o el editor; no hay una capa de autorización del remitente |
| Permiso predeterminado de las herramientas | approvals.mode: smart de forma predeterminada; approvals.cron_mode: deny de forma predeterminada | La mayoría de los permisos tienen allow como valor predeterminado; doom_loop y external_directory solicitan confirmación |
| Límite de seguridad irreductible | Conjunto estricto rechazado independientemente de --yolo, approvals.mode: off o de que cron sin interfaz apruebe | Las reglas explícitas de deny siguen aplicándose con --auto |
| Memoria entre sesiones | MEMORY.md (2,200 caracteres) y USER.md (1,375 caracteres) en ~/.hermes/memories/, además de state.db de SQLite con búsqueda FTS5 | AGENTS.md local, después ~/.config/opencode/AGENTS.md y después ~/.claude/CLAUDE.md; no se documenta memoria de usuario entre sesiones |
| Herramientas específicas para código | Edición de archivos y ejecución de terminal (terminal, process, read_file, patch); puntos de control antes de operaciones destructivas con archivos, documentados como opcionales y desactivados de forma predeterminada; no hay integración con LSP en las páginas de Hermes comprobadas aquí | Diagnósticos de LSP devueltos al agente; agentes de solo lectura explore y scout, además de un agente plan que establece las ediciones de archivos y bash en ask |
| Superficie del editor | La documentación lo presenta como «no es un copiloto de programación sujeto a un IDE» | Extensiones para VS Code, Cursor, Windsurf y VSCodium; opencode acp lo inicia como un subproceso ACP mediante JSON-RPC |
| Paralelismo | Hasta 10 subagentes simultáneos de forma predeterminada, cada uno iniciando una conversación completamente nueva | Subagentes integrados general, explore y scout invocados en la sesión; la página de agentes no documenta ningún límite de simultaneidad en ningún sentido |
| Protocolos de endpoints personalizados | Tres transportes: chat_completions, anthropic_messages, codex_responses | Dos formatos de transmisión mediante npm: @ai-sdk/openai-compatible y @ai-sdk/openai |
Filas consultadas el 21 de septiembre de 2026 en el índice de documentación de Hermes, las páginas de memoria, delegación, herramientas, puntos de control y seguridad, y en las páginas de reglas, agentes, ACP, IDE y permisos de OpenCode. Cada celda que informa de una ausencia —sin memoria de usuario entre sesiones, sin LSP, sin límite de simultaneidad, sin capa de autorización del remitente— describe una ausencia en las páginas enumeradas aquí, no una afirmación del proveedor de que la función no exista.
Ambos aceptan un endpoint de terceros, con condiciones diferentes
Ninguno de los dos productos restringe una URL base personalizada detrás de un plan. OpenCode Zen es el gateway propio de Anomaly y su documentación dice que es «completamente opcional y no necesitas usarlo para usar OpenCode»; Hermes toma proveedores con nombre de su propio archivo de configuración, así que Nous Portal es una opción allí, no un requisito. Lo que difiere es el alcance de los protocolos. Hermes define anthropic_messages como valor de transporte de primera clase junto con chat_completions y codex_responses en un bloque providers: dentro de ~/.hermes/config.yaml (documentación de proveedores de Hermes). OpenCode documenta una anulación genérica baseURL por proveedor —«útil al usar servicios proxy o endpoints personalizados»— y selecciona el formato de transmisión con npm, pero su página de proveedores no incluye una receta de endpoint personalizado para el protocolo Anthropic. Interprétalo como una ausencia en la documentación, no como un bloqueo demostrado.
Merece la pena leer una propiedad de configuración específica de Hermes antes de comparar las tarifas. Existe exactamente un caso de endpoint personalizado en el que la documentación de proveedores describe que Hermes activa el almacenamiento en caché por sí mismo: una URL base que contiene x.ai, en cuyo caso envía una cabecera x-grok-conv-id con cada solicitud. Para otros endpoints personalizados, la documentación describe una detección en lugar de una activación o desactivación general: Hermes compara una declaración prompt_caching por modelo «con la ruta exacta del proveedor y el ID del modelo en tiempo de ejecución», que es la forma en que un gateway que resuelve un alias simple obtiene marcadores de caché, y «cuando se omite, Hermes mantiene su detección normal de capacidades del proveedor y del modelo»; prompt_caching: false desactiva los marcadores. Los marcadores solo son la mitad correspondiente al cliente: que un endpoint determinado almacene en caché sin ellos depende de su propio comportamiento, así que compruébalo en la documentación de tu proveedor en lugar de asumir cualquiera de las dos respuestas. La magnitud de lo que está en juego aparece en la documentación de configuración de modelos de Hermes, que describe una tarifa de caché con un descuento aproximado del 75–90 % frente al precio completo de entrada. Dos notas menores de las mismas páginas: los endpoints personalizados compatibles con OpenAI reciben de Hermes «ningún límite de salida automático del tamaño del catálogo», por lo que se aplica el valor predeterminado del propio servidor; y, para servidores autoalojados, la documentación del proveedor sitúa la llamada a herramientas del lado del servidor: llama.cpp necesita --jinja, y vLLM necesita --enable-auto-tool-choice.
Kunavo ofrece /v1/chat/completions y /v1/responses en https://api.kunavo.com/v1, y Anthropic Messages en https://api.kunavo.com. Sobre el papel, eso significa que Hermes puede acceder a él mediante sus tres transportes (la ruta Messages responde únicamente para modelos Claude) y OpenCode mediante sus dos paquetes npm; pero esto es una revisión de la documentación fuente, no una integración probada. Aquí no se ha probado en tiempo de ejecución ninguno de los dos clientes contra el endpoint de Kunavo, y la propia documentación de integración de OpenCode de Kunavo lleva su propia marca de verificación anterior. Para Hermes, API personalizada de Hermes Agent cubre el bloque de proveedores; la documentación de la URL base de Anthropic cubre el formato de raíz del host que espera el transporte Messages.
Kunavo no ofrece modelos de embeddings, conversión de texto a voz ni conversión de voz a texto, por lo que ninguno de esos pasos puede dirigirse aquí. Hermes incluye una herramienta text_to_speech y su página de herramientas enumera un gateway alojado de Nous Portal que cubre búsqueda web, generación de imágenes, TTS y automatización del navegador; esa parte del trabajo permanece con el proveedor que hayas configurado para ella.
Cuánto cuestan los mismos tokens en cada ruta
Ningún cliente cobra por sí mismo. Ambos repositorios tienen licencia MIT, y las propias preguntas frecuentes de Hermes lo expresan claramente: «Hermes Agent en sí es gratuito y de código abierto (licencia MIT). Solo pagas por el uso de la API de LLM del proveedor que elijas». Lo que difiere es la forma del trabajo que envía cada uno.
Esto es un cálculo ilustrativo de tokens, no el coste medido de una tarea ni un límite de facturación. Supón una sesión de trabajo con 400,000 tokens de entrada sin caché y 25,000 tokens de salida. Para la modalidad de Hermes, añade un lote delegado de tres subagentes con 300,000 tokens de entrada y 20,000 de salida cada uno: una cifra elegida con fines ilustrativos, no medida; el valor predeterminado documentado de Hermes permite hasta diez. Las tarifas son precios activos del catálogo de Kunavo por millón de tokens.
| Estructura | Modelo(s) | Tokens supuestos | Estimación del catálogo |
|---|---|---|---|
| Sesión interactiva al estilo de OpenCode | Claude Sonnet 5 | 400k de entrada / 25k de salida | $0.73 |
| Orquestador de Hermes más 3 trabajadores delegados | Claude Sonnet 5 durante todo el proceso | 1.3M de entrada / 85k de salida | $2.42 |
| La misma ejecución, con el orquestador trasladado a una opción más barata | Orquestador Claude Haiku 4.5, trabajadores Claude Sonnet 5 | 1.3M de entrada / 85k de salida | $2.05 |
Dos lecturas. Bajo estos supuestos, los trabajadores delegados representan $1.68 del total de $2.42, lo que coincide con lo que la propia documentación de delegación de Hermes afirma cualitativamente: «el modelo trabajador es donde realmente reside el coste». Y la opción del orquestador es la palanca barata: nombrar Claude Haiku 4.5 allí lleva la misma ejecución a $2.05. Hermes expone delegation.model, delegation.provider, delegation.base_url y delegation.api_key, por lo que los trabajadores pueden apuntar a un lugar completamente distinto del orquestador. Recuerda el multiplicador que este ejemplo omite: «Toda tarea auxiliar tiene auto como valor predeterminado, lo que significa que Hermes también intenta usar tu modelo principal para ese trabajo», en compresión, visión, resumido, evaluación de aprobaciones, enrutamiento de MCP, generación de títulos y búsqueda de habilidades.
Si estás comparando Kunavo con la propia puerta de enlace de OpenCode, la comparación cambia según el modelo, así que indica siempre el modelo:
| Modelo | OpenCode Zen publicado, por 1M | Catálogo de Kunavo, por 1M | En este modelo |
|---|---|---|---|
| Claude Opus 5 | $5.00 de entrada / $25.00 de salida | $3.50 de entrada / $17.50 de salida | Kunavo más barato |
| Claude Sonnet 5 | $2.00 de entrada / $10.00 de salida | $1.40 de entrada / $7.00 de salida | Nivel |
| Claude Haiku 4.5 | $1.00 de entrada / $5.00 de salida | $0.70 de entrada / $3.50 de salida | Kunavo más barato |
Las cifras de Zen se tomaron de la tarifa propia de Anomaly el 21 de septiembre de 2026, donde se indica que los precios son por 1M de tokens. Estas son tres filas de una tabla más extensa, así que no extraigas conclusiones sobre los modelos que no aparecen aquí. Zen también recarga automáticamente $20 cuando el saldo cae por debajo de $5, un comportamiento de financiación que conviene comprobar antes de comparar saldos en lugar de tarifas. OpenCode Go es un producto independiente de $10 al mes, medido en solicitudes en lugar de tokens y utilizable «con cualquier agente» (comprobado el 21 de septiembre de 2026), por lo que no es comparable con ninguna tarifa por token de esta página, incluida la de Kunavo.
Una partida no tiene equivalente en OpenCode: si alojas el agente siempre activo, Hermes Cloud publica $0.56 por día en ejecución y $0.03 por día detenido para una instancia Medium (10 sesiones simultáneas, 2GB de RAM, 4 vCPUs), con un mínimo de $2 en créditos o una suscripción activa necesarios para desplegarla, y afirma que esos cargos cubren la computación y el almacenamiento, mientras que la inferencia y el uso de herramientas se facturan por separado (comprobado el 21 de septiembre de 2026). OpenCode se ejecuta en tu propia máquina y no cobra por estar inactivo.
El importe del catálogo de Kunavo es un mínimo de facturación, no un límite máximo: cuando el proveedor ascendente informa de su cargo, la factura es el mayor entre el coste del catálogo y el coste del proveedor ascendente multiplicado por el margen aplicable. Los cargos de caché y las herramientas externas quedan fuera de este ejemplo. La recarga mínima es de $10 en crédito prepago, sin nivel gratuito: es un mínimo de financiación, no una tarifa por tarea ni una suscripción. Consulta los detalles de facturación y crea una cuenta cuando hayas elegido una ruta.
Qué no se migra entre ellos
Cambiar de agente transfiere menos de lo que parece que debería, y cada lado conserva su estado en su propio lugar.
- El estado de Hermes vive en
~/.hermes/:memories/MEMORY.mdymemories/USER.md,skills/,config.yamlystate.db. La memoria tiene un «alcance por perfil por diseño», y la documentación advierte: «No dirijas dos procesos de agente al mismo directorio principal de Hermes». En la página de memoria no se documenta ningún mecanismo de exportación o importación, así que considera las rutas un hecho y la portabilidad no verificada. - El estado de OpenCode vive en
~/.local/share/opencode/(incluidosauth.jsony los datos de sesión por proyecto), con la configuración en~/.config/opencode/. Su activo duradero y portátil son los archivosAGENTS.mddel repositorio, que viajan con el repositorio y no con el agente. - Las habilidades y las instrucciones no son intercambiables. Hermes escribe sus propias habilidades en el disco y denomina al formato compatible con un estándar abierto de habilidades, pero nada de lo comprobado aquí establece que OpenCode cargue una habilidad de Hermes o que Hermes lea un
AGENTS.md. - La configuración de canales no tiene equivalente. Las listas de permitidos de la puerta de enlace, la vinculación de mensajes directos y los cronogramas de cron son conceptos de Hermes; no hay nada en OpenCode que permita importarlos.
¿Comparas más opciones? Hermes frente a OpenClaw cubre el otro asistente siempre activo, OpenCode frente a Claude Code cubre el otro agente de programación interactivo, y precios de OpenCode y precios de Hermes Agent cubren las condiciones comerciales propias de cada producto.
Preguntas frecuentes
¿Cuál es la diferencia entre Hermes Agent y OpenCode?
Ocupan posiciones diferentes en tu día a día. Hermes Agent es un proceso de gateway persistente: su documentación describe más de 20 plataformas de mensajería desde un solo gateway —CLI, Telegram, Discord, Slack, WhatsApp, Signal, Matrix, Mattermost, correo electrónico, SMS y más—, siete backends de terminal (local, Docker, SSH, Daytona, Singularity, Modal, Vercel Sandbox), tareas programadas y archivos de memoria que persisten entre sesiones. OpenCode es un agente de programación interactivo, descrito por su propia documentación como disponible mediante una interfaz de terminal, una aplicación de escritorio o una extensión de IDE, con diagnósticos del Language Server Protocol devueltos al agente e instrucciones del proyecto leídas desde AGENTS.md. Hermes puede editar archivos y ejecutar comandos de terminal, así que la comparación honesta se refiere a las herramientas específicas para código y al alcance permanente, no a si uno de ellos puede escribir un archivo. Ambos se comprobaron el 21 de septiembre de 2026.
¿Es Hermes Agent mejor que OpenCode?
Nada publicado por ninguno de los dos proyectos responde a eso, y esta página no inventa una puntuación. No existe un benchmark compartido, un conjunto de tareas comparable ni datos medidos de finalización para ambos, así que cualquier clasificación que leas refleja la experiencia de alguien, no pruebas. Decide en su lugar basándote en cuatro ejes comprobables: dónde debe ejecutarse el agente, quién tiene permitido hablar con él, a qué protocolos llega su ruta de endpoint personalizado y qué mantiene la facturación cuando nadie está escribiendo. En el último punto difieren de verdad: Hermes está diseñado para ejecutarse continuamente y delega trabajo a lotes de subagentes; OpenCode se ejecuta cuando tú lo ejecutas.
¿Pueden trabajar juntos Hermes Agent y OpenCode?
Sí, y Nous Research lo documenta como una habilidad incluida de Hermes, no como un apaño de la comunidad. La habilidad delega una tarea acotada con un comando de una sola ejecución como opencode run 'Add retry logic to API calls and update tests', después de instalar la CLI con npm i -g opencode-ai@latest o brew install anomalyco/tap/opencode y autenticarse con opencode auth login o variables de entorno del proveedor; una sesión interactiva se ejecuta mediante la herramienta de terminal de Hermes con background y pty habilitados. Los dos agentes no comparten una sesión ni una ventana de contexto: OpenCode se ejecuta como un proceso externo con sus propias credenciales y su propio contador de uso. Leído en la documentación de la habilidad de Hermes el 21 de septiembre de 2026.
¿Puede una sola clave de API cubrir Hermes Agent y OpenCode?
Una clave puede configurarse en ambos, pero son dos configuraciones independientes y ninguna hereda de la otra. Hermes lee proveedores con nombre desde un bloque providers en ~/.hermes/config.yaml, donde transport es chat_completions, anthropic_messages o codex_responses. OpenCode lee un bloque provider en opencode.json, donde el campo npm selecciona el formato de transmisión: @ai-sdk/openai-compatible para /v1/chat/completions y @ai-sdk/openai para /v1/responses. Una tarea que Hermes delega a la CLI de OpenCode lee la configuración propia de OpenCode, así que llega al mismo saldo solo si la diriges deliberadamente allí. Ambas configuraciones se leyeron en documentación oficial el 21 de septiembre de 2026 y ninguna se probó en tiempo de ejecución contra Kunavo.
¿Cuál es más barato de ejecutar?
El software cliente cuesta lo mismo en ambos lados: nada. Hermes Agent tiene licencia MIT y sus preguntas frecuentes indican que solo pagas por el uso de la API de LLM del proveedor que elijas; el repositorio de OpenCode también tiene licencia MIT y no requiere ningún plan para ejecutarse. La diferencia está en qué consume cada forma de trabajo. OpenCode factura mientras estás en una sesión. Hermes tiene tres multiplicadores documentados además de tus propios turnos: las tareas auxiliares tienen auto como valor predeterminado, lo que significa que también intenta usar tu modelo principal para compresión, visión, resumido, evaluación de aprobaciones, enrutamiento de MCP, generación de títulos y búsqueda de habilidades; un lote delegado admite por defecto hasta 10 subagentes simultáneos; y la propia documentación de delegación de Hermes indica que el coste real está en el modelo trabajador. El alojamiento opcional es una línea separada: Hermes Cloud publica $0.56 por día en ejecución y $0.03 por día detenido para una instancia Medium, e indica que esto cubre computación y almacenamiento, mientras que la inferencia y el uso de herramientas se facturan aparte; OpenCode no cobra por inactividad porque se ejecuta en tu máquina. Ambas cifras se comprobaron el 21 de septiembre de 2026.
¿Es este el mismo OpenCode que se archivó en 2025?
No. Dos repositorios diferentes han llevado ese nombre. El producto activo es anomalyco/opencode en opencode.ai: no está archivado, tiene licencia MIT, su última versión es v1.18.31, publicada el 14 de septiembre de 2026, y GitHub todavía resuelve la ruta anterior sst/opencode hacia él, porque esa ruta devuelve este mismo repositorio y no un segundo proyecto activo. Otro repositorio, opencode-ai/opencode, fue archivado por su propietario y está en modo de solo lectura desde septiembre de 2025; su trabajo continuó con el nombre Crush. La configuración, las opciones de la CLI y los precios tomados del repositorio archivado describen esa otra línea, no esta. Estados de los repositorios leídos de la API de GitHub el 21 de septiembre de 2026.
Comprobado el 21 de septiembre de 2026: la API REST de GitHub para ambos repositorios, sus versiones más recientes y los dos repositorios con el mismo nombre, además de las páginas de documentación y precios enlazadas en esta página en hermes-agent.nousresearch.com, portal.nousresearch.com y opencode.ai. Se excluyeron dos temas porque las fuentes no los resuelven: la página de proveedores de OpenCode afirma que /connect ofrece una opción Claude Pro/Max y que Anthropic prohíbe los complementos que dirigen esos modelos, y ninguno de los dos proyectos publica mediciones del rendimiento de las tareas, por lo que esta página no clasifica a ninguno de los agentes. No se realizó ninguna prueba en tiempo de ejecución: ninguna sesión de Hermes, ningún opencode run ni ninguna solicitud de ninguno de los dos clientes al endpoint de Kunavo. Las tarifas de tokens de Kunavo proceden del catálogo activo; cada cifra en dólares de esta página es un cálculo ilustrativo de tokens.