Hermes Agent: Referencia para profesionales (2026)
# Una referencia para profesionales sobre Hermes Agent, el agente de IA de código abierto y con capacidad de mejora continua de Nous Research: autenticación de proveedores y OAuth, archivos de configuración, sistema de habilidades y su uso como puerta de enlace de mensajería multiplataforma.
TL;DR: Hermes Agent es un agente de IA open source de Nous Research. Funciona como una CLI y como un gateway de mensajería multiplataforma, almacena una identidad duradera y memoria persistente en disco, reúne skills que mejoran con el uso y funciona con cualquier proveedor LLM compatible con OpenAI: Nous Portal, OpenRouter, Anthropic, Copilot de GitHub, z.ai, Kimi, MiniMax, DeepSeek, Qwen Cloud, Hugging Face, Google, xAI/SuperGrok o tu propio endpoint autoalojado.1219 Desde la v0.14.0 (16 de mayo de 2026), Hermes añade SuperGrok OAuth con contexto grok-4.3 de 1M, un proxy local compatible con OpenAI para proveedores OAuth (
hermes proxy),x_searchde primera clase, soporte de instalación desde PyPI (obsoleto desde la v0.19.0; el instalador de una línea es la ruta compatible), instalaciones de dependencias bajo demanda, 28 plataformas de mensajería con LINE y SimpleX Chat,/handoff, diagnósticos semánticos de LSP después de las escrituras,video_generateunificado,computer_usemediante cua-driver para proveedores que no sean Anthropic, beta nativa para Windows y 12 cierres P0 / 50 P1.19 La parte más difícil para la mayoría de los usuarios nuevos es la autenticación de proveedores: Hermes admite aproximadamente 20 proveedores de primera clase, además de endpoints personalizados, y tres rutas de autenticación distintas (clave API en.env, OAuth mediantehermes modelo endpoint personalizado enconfig.yaml). El modelo de autenticación es lo primero que debes aprender: todo lo demás depende del proveedor que se resuelva.
Hermes Agent funciona como un runtime completo de agentes, no como un contenedor de chat. Lee tu sistema de archivos, ejecuta comandos en backends aislados, extrae contenido de la web, genera subagentes, ejecuta trabajos cron programados, se comunica con Telegram/Discord/Slack/WhatsApp/Signal/Email desde un único proceso gateway y crea sus propios skills a partir de la experiencia.1 La CLI es una interfaz de usuario de terminal construida sobre un bucle de conversación en run_agent.py; el gateway es un proceso de larga duración que enruta mensajes de plataformas de mensajería a través del mismo bucle de conversación.3
La diferencia entre el uso casual y el experto de Hermes se reduce a cinco sistemas. Domínalos y Hermes se convertirá en un multiplicador de fuerza:
- Resolución de proveedores: cómo los flujos de autenticación se asignan a llamadas API
- Jerarquía de configuración:
config.yaml+.env+auth.json+SOUL.md+AGENTS.md - Sistema de herramientas + toolset: lo que el agente puede hacer, controlado por plataforma
- Sistema de skills: memoria procedimental que el agente crea y evoluciona
- Gateway + cron + profiles: ejecutar Hermes donde vives, no solo donde estás
Puntos clave
- La autenticación de proveedores tiene tres rutas, no una. Clave API en
.env, OAuth mediantehermes model/hermes autho endpoint personalizado enconfig.yaml. Elige la ruta que corresponda a tu proveedor, no la que te resulte familiar. - Cambiar de proveedor es un solo comando.
hermes modelte guía de forma interactiva por todos los proveedores compatibles, incluidos los inicios de sesión OAuth, y/model provider:modelcambia durante la sesión sin perder el historial.2 - Dos archivos son la superficie de configuración editable por el usuario.
~/.hermes/config.yamlcontiene la configuración y~/.hermes/.envcontiene secretos.auth.json,SOUL.md,MEMORY.mdyskills/los administra Hermes directamente: puedes editarSOUL.mda mano, pero el resto lo modifica el propio agente.4 - Hermes es el sucesor de OpenClaw. Si estás migrando,
hermes claw migrateimporta automáticamente más de 30 categorías de estado.5 - La calidad del servicio depende de tu modelo auxiliar. La visión, el resumen web, la compresión y el vaciado de memoria usan un LLM auxiliar independiente. De forma predeterminada, es Gemini Flash mediante detección automática (OpenRouter → Nous → Codex); si ninguno está configurado, estas funciones se degradan silenciosamente hasta que dirijas las ranuras auxiliares a tu proveedor principal.4
Lo que cambia en la v0.14
La v0.14.0 trata menos de una función destacada y más de reducir la fricción de configuración mientras amplía los lugares donde Hermes puede ejecutarse.19 Los principales cambios operativos:
- La instalación y el inicio son más ligeros.
pip install hermes-agentfunciona desde PyPI, los adaptadores pesados se instalan bajo demanda en el primer uso y la ruta de inicio aplaza suficiente trabajo para reducir el arranque en frío en aproximadamente 19 segundos. (Desde entonces, la v0.19.0 ha dejado obsoletas las instalaciones con pip; consulta Instalación.) - Las suscripciones pueden convertirse en endpoints API locales.
hermes proxyconvierte proveedores respaldados por OAuth, como Claude Pro, ChatGPT Pro y SuperGrok, en un endpoint local compatible con OpenAI para herramientas como Codex, Aider, Cline y Continue. - El alcance del gateway se amplía. LINE y SimpleX Chat elevan el número de plataformas a 22, Microsoft Teams está conectado de extremo a extremo, el relleno del historial de Discord está activado de forma predeterminada y las solicitudes
clarifyde Telegram/Discord ahora usan botones nativos. - La verificación en el momento de escribir mejora. Después de las ediciones, Hermes puede mostrar resúmenes por turno de las mutaciones de archivos y diagnósticos semánticos del servidor de lenguaje antes del siguiente turno, lo que lo acerca al trabajo de agentes basado en evidencia.
- Las herramientas de escritorio y multimedia se amplían.
computer_usefunciona mediante cua-driver para proveedores que no sean Anthropic,video_generateestá unificado tras backends conectables yvision_analyzeenvía píxeles sin procesar a modelos que realmente pueden ver.
Cada sección a continuación se fundamenta en la documentación oficial en hermes-agent.nousresearch.com/docs y en el árbol de código fuente en github.com/NousResearch/hermes-agent. Cada afirmación factual tiene una nota al pie que apunta a la página oficial específica de la que proviene.
Elige tu ruta
| Lo que necesitas | Ve aquí |
|---|---|
| Instalar Hermes | Instalación — instalador de una línea o pasos manuales |
| Iniciar sesión en un proveedor | Autenticación y proveedores — la sección por la que llegaste aquí |
| Cambiar de modelo durante la sesión | El comando hermes auth y Endpoints personalizados y autoalojados para la sintaxis de /model |
| Ejecutar un LLM local | Endpoints personalizados y autoalojados — Ollama, vLLM, SGLang, llama.cpp, LM Studio |
| Conectar plataformas de mensajería | Gateway de mensajería — Telegram, Discord, Slack, WhatsApp, Signal, Google Chat, LINE, SimpleX Chat (22 en total) |
| Escribir o instalar un skill | Sistema de skills — divulgación progresiva + hub de skills |
| Referencia detallada de cada comando de CLI | Sigue leyendo y enlaza directamente a Comandos de CLI |
Cómo funciona Hermes: el modelo mental
Hermes se estructura en torno a un único bucle de conversación que puede invocarse desde cualquier punto de entrada. Los puntos de entrada son la CLI (cli.py), el gateway de mensajería (gateway/run.py), el adaptador ACP para la integración con editores, el ejecutor por lotes y un servidor API.3 Todos terminan llamando a AIAgent.run_conversation() en run_agent.py, que:
- Construye el prompt del sistema a partir de
SOUL.md,MEMORY.md,USER.md, skills, archivos de contexto y directrices para las herramientas medianteprompt_builder.py3 - Resuelve el proveedor en tiempo de ejecución mediante
runtime_provider.py; en este paso se eligen la autenticación, la URL base y el modo de API3 - Llama al proveedor mediante uno de los tres modos de API:
chat_completions,codex_responsesoanthropic_messages3 - Procesa las llamadas a herramientas que se devuelvan mediante
model_tools.pyy el registro central de herramientas (tools/registry.py)3 - Repite el ciclo hasta que el modelo genera una respuesta final y, después, guarda la sesión en SQLite con FTS53
Comprender este bucle es importante porque cada función —personalidades, memoria, skills, compresión y fallback— se conecta con una de estas etapas. Cuando leas una clave de configuración y te preguntes qué hace, la respuesta suele ser: «es un control de la etapa 1, 2, 3 o 4 del bucle anterior».
Núcleo independiente de la plataforma. Una sola clase AIAgent sirve para la CLI, el gateway, ACP, el procesamiento por lotes y el servidor API. Las diferencias entre plataformas residen en el punto de entrada, no en el propio agente.3 Por eso los mismos comandos slash funcionan tanto en la terminal como en Telegram: se procesan desde un COMMAND_REGISTRY compartido en hermes_cli/commands.py.6
La estructura de directorios es el sistema. Hermes almacena todo en ~/.hermes/ (o en $HERMES_HOME para los profiles que no sean el predeterminado):4
~/.hermes/
├── config.yaml # Settings (model, terminal, TTS, compression, etc.)
├── .env # API keys and secrets
├── auth.json # OAuth provider credentials (Nous Portal, Codex, Anthropic)
├── SOUL.md # Primary agent identity (slot #1 in system prompt)
├── memories/ # Persistent memory (MEMORY.md, USER.md)
├── skills/ # Bundled + agent-created + hub-installed skills
├── cron/ # Scheduled jobs
├── sessions/ # Gateway session state
└── logs/ # agent.log, gateway.log, errors.log (secrets auto-redacted)
Cada archivo anterior tiene una función específica; ninguno se solapa con los demás. Si buscas «dónde almacena Hermes X», la respuesta está en uno de ellos.
Novedades de v0.20.0 (la versión Herald)
Hermes Agent v0.20.0 (etiqueta v2026.8.3, 3 de agosto de 2026) es la versión actual con nuevas funciones; v0.20.1 (13 de agosto) y v0.20.2 (16 de agosto) son etiquetas de estabilización publicadas sobre ella, y v0.20.3 (etiqueta v2026.8.16.2, publicada el 17 de agosto) y v0.20.4 (etiqueta v2026.8.18, 18 de agosto) mantienen en marcha la serie de actualizaciones acumulativas con periodos que también incluyen funciones propias; consulta la subsección siguiente. El periodo desde v0.19.0 abarca aproximadamente 3.650 commits, 1.400 PRs fusionados y 1.200 issues cerrados, con la participación de más de 650 colaboradores.24
Tres cambios invalidan las instrucciones que las versiones anteriores de esta guía te indicaban seguir. Léelos antes que cualquier otra cosa:
- Ahora se requiere Node 26. El instalador fija
NODE_VERSION="26"y rechaza versiones anteriores con el mensaje «Node.js … is too old (Hermes requires Node >=26)». Los instaladores,healyupgradeaplican este requisito. Ten en cuenta que la página de instalación del sitio de documentación todavía indica Node v22; el script de instalación y las notas de la versión son las fuentes más recientes y autorizadas.24 - pip y Homebrew se retiraron, no solo quedaron obsoletos. Textualmente: «brew + pip/PyPI wheel channels retired (shell installer / Docker / Nix are the supported channels)». Si aún utilizas una instalación mediante pip o brew, ese canal ya no recibe nuevas versiones.24
- El límite predeterminado de iteraciones para llamar a herramientas pasó de 90 a 500. Las ejecuciones autónomas largas dejaron de chocar con un límite artificial, y todos los umbrales de presión presupuestaria que aparecen más adelante se calculan a partir del nuevo máximo.
read_filetambién utiliza ahora 2.000 líneas de forma predeterminada en lugar de 500.24
El resto de la versión:
- Voz conversacional. TTS en streaming con interrupción por voz y palabras de activación procesadas en el dispositivo.24
- A2A v1.0. Un plugin de protocolo entre agentes que resuelve la solicitud planteada hace tiempo en el issue #514.24
- Webhooks salientes firmados. Antes,
hermes webhooksolo admitía tráfico entrante; v0.20.0 incorpora webhooks salientes de ciclo de vida firmados con HMAC para eventos de sesión, turno y herramientas.24 - Citas fundamentadas. Un nuevo skill con un modo de verificación de datos.24
- Oleada de funciones avanzadas para la CLI.
!commandejecuta de inmediato un comando de shell sin consumir un turno del modelo;/initanaliza el proyecto y crea o actualiza unAGENTS.md;/diffmuestra los cambios preparados, todos los cambios o los cambios de la sesión desde cualquier interfaz;/contextdesglosa qué está ocupando la ventana de contexto;/focusofrece una vista con menos contenido y permite recuperar las líneas ocultas; Ctrl+S guarda temporalmente un prompt a medio escribir.hermes import-agentmigra una configuración de Claude Code o de la CLI de Codex con un solo comando.24 - Novedades en la gestión de secretos. Una fuente de secretos basada en comandos auxiliares que puede combinarse con cualquier bóveda, rotación de tokens con un solo comando y errores de inicio que indican cómo actuar, una caché cifrada opcional de emergencia para Bitwarden, claves inyectadas desde la bóveda y delimitadas por el directorio principal de cada profile, y paridad de SecretRef
${env:VAR}entreconfig.yamly la configuración de MCP. El modelo de autenticación de tres vías que se describe a continuación no ha cambiado.24 - Inicio en caliente más rápido. El arranque en frío de
hermes -wse redujo de unos 14 s a 1,8 s.24 - El escritorio se convirtió en una plataforma. Artefactos con tarjetas versionadas y vista previa interactiva en un entorno aislado, un SDK de plugins con Kanban como plugin de escritorio inicial, un atajo de teclado global para entrada rápida, varias ventanas de interfaz gráfica, modo de backend remoto SSH e inicio de sesión nativo conforme a RFC 8252.24
Las actualizaciones acumulativas v0.20.3 y v0.20.4 (17 y 18 de agosto)
Tras v0.20.0, el proyecto adoptó una cadencia de actualizaciones acumulativas etiquetadas y publicadas con gran frecuencia, y las dos más recientes incluyen más que estabilización. Ambas indican que «full curated release notes for this window will ship with v0.21.0», por lo que los siguientes resúmenes proceden de las descripciones de los periodos incluidas en las propias versiones, no de una lista seleccionada de funciones.23
v0.20.3 (aproximadamente 250 commits y 125 PRs desde v0.20.2):
- Migración a SDK de MCP 2.x, compatible con el protocolo sin estado del 28 de julio de 2026. Hermes adopta la generación actual de SDK de MCP y se comunica mediante la revisión sin estado del protocolo.23
- Bot Mode se distribuye como plugin incluido (
hermes-bots) con el protocolo central para compañeros de equipo.23 - Un plugin del proveedor CommandCode se incorpora al catálogo de proveedores.23
- Contratos de ejecución de Cua Driver 0.20 para el uso de computadoras, además del refuerzo de la propiedad del entorno de ejecución de Python en subprocesos (aislamiento de PYTHONHOME/PYTHONPATH).23
- Fiabilidad: autorreparación del planificador cron (recuperación de EMFILE, conciliación de asignaciones obsoletas y reactivación de tareas bloqueadas), correcciones para evitar la pérdida de datos al transferir sesiones, autorreparación de la conexión del escritorio con el gateway remoto y una oleada de adaptaciones del ecosistema (análisis de seguridad al instalar plugins,
/worktree, conservación de ediciones manuales con/rollbacky lectura de archivos UTF-16).23
v0.20.4 (aproximadamente 146 commits y 74 PRs desde v0.20.3):
- La superficie de vidrio del escritorio: mejoras de vidrio mate y translucidez, con un selector de efecto escarchado y preselección para macOS.23
- Una barra lateral con pestañas SESSIONS|BOTS, que permite ocultar o mostrar cada bot, además de correcciones para los chats grupales de Bot Mode (turnos prolongados de los miembros, representación de Markdown y enrutamiento entre computadoras).23
- Análisis consultivo de nivel 1 de NVIDIA SkillEvaluator al instalar skills: las comprobaciones de licencias y seguridad se ejecutan cuando instalas un skill.23
- Refuerzo del envío de contenido multimedia mediante cron (tiempo de espera configurable, archivos adjuntos en ejecuciones manuales y presentación de activaciones omitidas), correcciones de SessionDB para el hilo del bucle de eventos y la contención, información transparente de
hermes updatesobre ramas estacionadas y notificaciones nativas del sistema operativo para Kanban.23
El proceso de actualización no ha cambiado: ejecuta hermes update desde una instalación existente o utiliza el instalador de shell para una instalación nueva.23
Novedades de v0.19.0 (la versión Quicksilver)
Hermes Agent v0.19.0 (etiqueta v2026.7.20, 20 de julio de 2026) recibe su nombre por la velocidad propia del dios mensajero: la columna vertebral de la versión es la capacidad de respuesta pura, con una reducción de ~80 % en el tiempo hasta el primer token del primer turno en todas las plataformas. A su alrededor se incorporan la facturación desde la terminal, fuentes de secretos de gestores de contraseñas, aprobaciones inteligentes de forma predeterminada, subagentes observables y entrega de respuestas resistente a fallos. El periodo desde v0.18.0 es el más grande del proyecto hasta ahora: ~2.245 commits, ~1.065 PR fusionados, ~3.300 issues cerrados y más de 450 colaboradores de la comunidad.25
- ~80 % más rápido hasta el primer token, en todas partes. El envío en frío→despacho bajó de ~4,3 s a ~0,9 s en CLI, gateway, TUI, escritorio y cron por igual: la detección de capacidades de Discord salió de la ruta crítica, la comprobación de Ollama se omite para proveedores conocidos que no son Ollama y se eliminó el trabajo bloqueante de la inicialización del agente. La latencia percibida recibió su propia mejora: los modelos de razonamiento ahora transmiten su razonamiento en vivo de forma predeterminada (
display.show_reasoningestá ACTIVADO), y el cuadro de respuesta se dibuja por token en lugar de por línea.25 - Oleada de renderizado para escritorio y TUI. La aplicación de escritorio recibió una revisión de velocidad de ~20 PR: 14× menos CPU en el separador de Markdown en streaming mediante análisis léxico incremental por bloques, diferencias virtualizadas en el panel de revisión, cambio ágil de sesión en transcripciones grandes y sin más rerenderizados por token de la barra lateral ni de las filas de herramientas. La TUI ahora renderiza Markdown transmitido de forma incremental por bloque.25
- Las instalaciones con pip y Homebrew están obsoletas. Ambas rutas se marcaron como instalaciones heredadas «no compatibles», con su eliminación prevista. Esa eliminación ya ocurrió en v0.20.0: los canales de brew y las wheels de pip/PyPI se retiraron; el instalador de shell, Docker y Nix quedan como los canales compatibles.2524
- Los secretos pueden provenir de tu gestor de contraseñas. Una nueva interfaz conectable
SecretSourceobtiene secretos de Bitwarden y 1Password (referenciasop://) durante la carga, con varias bóvedas habilitadas al mismo tiempo, precedencia determinista, advertencias de conflicto y procedencia por variable: las claves de API ya no tienen que vivir en un.envde texto sin formato. Los proveedores de bóvedas futuros se incorporan como plugins.25 - Las aprobaciones inteligentes ahora son la opción predeterminada. Cuando Hermes quiere ejecutar un comando marcado, un revisor independiente de LLM lo evalúa en vez de pedirte confirmación para cada uno, y cada veredicto cubre únicamente ese comando exacto. Las reglas de denegación definidas por el usuario bloquean los comandos coincidentes incluso en modo YOLO,
/deny <reason>transmite el motivo de tu rechazo para que el agente corrija el rumbo, y la acción de aprobaciónpre_tool_calldel plugin (restaurada con claves de reglas) escala una llamada a herramienta a una puerta de revisión humana.25 - Facturación desde la terminal:
/subscriptiony/topup. Gestiona tu plan de Nous Portal sin salir de la terminal: consulta tu plan y el saldo restante, previsualiza exactamente cuánto cuesta una mejora o cuándo entra en vigor una reducción, y aplícala con opción de deshacer. La aplicación de escritorio incorpora una pestaña equivalente de configuración de facturación.25 - Observa el trabajo de los subagentes; nunca pierdas una respuesta terminada. Los despachos de
delegate_taskdevuelven archivos de transcripción en vivo a los que puedes aplicartail -fen cuanto se inician los subagentes: cada llamada a herramienta, resultado y respuesta transmitida, con un registro legible por humanos para cada agente hijo. Las finalizaciones de delegaciones en segundo plano son duraderas tras reinicios, y las respuestas finales del gateway se registran en un libro mayor de obligación de entrega enstate.dby se reenvían durante el siguiente arranque si el gateway falla a mitad del envío. La opción de configuraciónmax_async_childrenestá obsoleta en favor de límites unificados de concurrencia de delegación.25 - Un gateway, muchos profiles. Un único gateway multiplexado que comparte un token de bot puede enrutar guilds, canales o hilos específicos a distintos profiles, cada uno con configuración, skills, memoria y secretos totalmente aislados, mediante una anulación
GATEWAY_MULTIPLEX_PROFILES. El índice de enrutamiento se trasladó astate.db;sessions.jsonahora es un espejo heredado opcional.25 - Oleada de proveedores y modelos. Fireworks AI llega como opción de primera clase (estimación de costos, puesto n.º 2 en el selector de proveedores), acompañado por DeepInfra y Upstage Solar. Los catálogos añaden GPT-5.6 (Sol/Terra/Luna + Pro, conectado de extremo a extremo), grok-4.5 (GA), kimi-k3 (kimi-k2.x retirado) y Claude Sonnet 5 totalmente conectado. Una marca
enabled: falsepor proveedor y la configuraciónexcluded_providerseliminan los proveedores sin usar de los selectores y la resolución de/model.25 - El esfuerzo de razonamiento se convierte en un dial. Los nuevos niveles de esfuerzo
maxyultrallegan a todas las superficies, con anulaciones por modelo en la configuración, esfuerzo por slot en los preajustes de MoA (los asesores razonan a fondo y el sintetizador se mantiene rápido), esfuerzo por tarea para modelos auxiliares y un/reasoningcon alcance de sesión en CLI.25 - Superficie de CLI y MCP.
hermes sessions exportescribe formatos Markdown, Quarto, HTML, solo-prompt y trazas de Hugging Face con una limpieza opcional--redact;/model --onceproporciona una anulación de modelo para un turno; las invocaciones de slash-skill se apilan (/skill-a /skill-b do XYZ);--safe-modefacilita la solución de problemas;hermes config get/unsetcompletan la gestión de configuración;hermes servese convierte en un backend verdaderamente sin interfaz; y las herramientas de MCP adoptan la convención de nombresmcp__server__tool.25
Si estás actualizando desde v0.18.x, dos cambios merecen atención antes que cualquier otro: una instalación con pip o Homebrew ahora advierte que es heredada y no compatible (migra al instalador de una línea), y max_async_children está obsoleto en favor de los límites unificados de concurrencia de delegación. Todo lo demás es adicional: las razones principales para actualizar son la reducción de ~80 % en la latencia del primer turno, las aprobaciones inteligentes y el libro mayor de entrega que hace que las respuestas terminadas sean resistentes a fallos.
Novedades de v0.18.0 (la versión Judgment)
Hermes Agent v0.18.0 (etiqueta v2026.7.1, 1 de julio de 2026) recibe su nombre por el juicio: el agente verifica su propio trabajo en lugar de afirmar que tuvo éxito, y ofrece razonamiento en conjunto que realmente puedes inspeccionar. También cierra toda la lista pendiente P0/P1: aproximadamente 692 elementos de máxima prioridad resueltos en doce días.22
- Mixture-of-Agents como modelo de primera clase. MoA ahora se puede seleccionar como cualquier otro modelo en todas las interfaces, y el razonamiento en conjunto es visible: la salida completa de cada modelo de referencia se renderiza como su propio bloque etiquetado con transmisión de respuestas en vivo; puedes observar cómo razona el conjunto en lugar de recibir una respuesta combinada opaca.22
- Contratos de finalización para
/goal. El agente verifica su propio trabajo ejecutando las comprobaciones del proyecto antes de informar que un objetivo está completo, en lugar de simplemente afirmar que tuvo éxito: juicio aplicado a sí mismo.22 /learn: describe cualquier cosa y conviértela en un skill. Convierte un flujo de trabajo en un skill reutilizable describiéndolo; los skills generados cumplen automáticamente las convenciones de CONTRIBUTING.md del repositorio.22- Cronología de
/journey. Un historial visual de la memoria y los skills a lo largo del tiempo, con edición, además de un gráfico de memoria en el escritorio.22 - Distribución de subagentes en segundo plano. Delega varias tareas que se ejecutan simultáneamente sin bloquear la conversación: el único subagente en segundo plano de v0.17.0 se convierte en una flota.22
- Projects de escritorio. Projects de programación de primera clase con un modelo de organización por proyecto/repositorio/carril.22
- Gateway con escalado a cero. Los gateways pueden quedar inactivos cuando no se usan y coordinar drenajes para implementaciones sin interrupciones, algo significativo para quienes ejecutan Hermes como un servicio siempre activo.22
- Compatibilidad con Google Vertex AI. Acceso a Gemini mediante cuentas de servicio de GCP con actualización automática del token OAuth2, que se suma al catálogo de proveedores.22
- Comando de editor
/prompt. Abre$EDITORpara redactar prompts de varias líneas, en lugar de luchar con la línea de entrada.22
Si estás actualizando desde v0.17.x, nada de esto rompe CLI. Las razones principales para actualizar son los contratos de finalización (objetivos que se verifican a sí mismos), MoA de primera clase con conjuntos inspeccionables y /learn para capturar skills.
Novedades de v0.17.0 (la versión de alcance)
Hermes Agent v0.17.0 (tag v2026.6.19, 19 de junio de 2026) recibe su nombre por el alcance que ahora tiene el agente: nuevos canales de mensajería, nuevos proveedores de modelos y un control más profundo del escritorio y el dashboard. Es una versión aditiva sobre v0.16.x; la superficie de CLI no cambia.21
- Nuevos canales de mensajería. iMessage ahora funciona sin un relay de Mac mediante Photon Spectrum (código de dispositivo de OAuth,
hermes photon login); WhatsApp Business Cloud API es un adaptador oficial de Meta que sustituye el requisito de un proceso bridge; SimpleX incorpora grupos, adjuntos nativos, agrupación de texto y aceptación automática; y Raft se incorpora como plugin de plataforma incluido, con un diseño de canal de activación basado en privacidad por contrato.21 - Nuevos modelos y proveedores. El catálogo agrega
z-ai/glm-5.2(1M de contexto),anthropic/claude-fable-5,laguna-m.1,nemotron-3-ultraygrok-composer-2.5-fast(el modelo de Cursor mediante xAI OAuth, 200k de contexto). El valor predeterminado de xAI pasó agrok-build-0.1, y los modelos adaptativos de Anthropic ahora siguen el contrato moderno de razonamiento (nunca envían un camporeasoning).21 - Escritorio y dashboard. Desktop incorpora subagentes en segundo plano con transmisión en vivo de “watch-windows” que muestra la actividad delegada (
delegate_task(background=true)), un selector de modelos en Composer, atajos de teclado reasignables, notificaciones nativas del sistema operativo, borradores del compositor por hilo, temas de VS Code Marketplace e interfaz en japonés y chino tradicional. El dashboard añade un constructor completo de profiles (modelo/skills/MCPs sin editarconfig.yaml), un selector global de profiles, un Skills Hub rediseñado con análisis de seguridad, Automation Blueprints (plantillas parametrizadas para formulario, comando slash, conversación y documentación), y un inicio de sesión seguro que devuelve 401 detrás de la puerta de OAuth.21 - Skills y herramientas.
image_generateahora puede editar y transformar una imagen de origen, no solo crear una desde cero, en todos los proveedores de imágenes compatibles; la herramientamemoryobtuvo un arreglooperationspara realizar lotes atómicos de agregar/reemplazar/eliminar en una sola llamada; un nuevo skillsimplify-codeejecuta en paralelo una revisión y limpieza con tres agentes, controlada por un nivel de riesgo de la valla de Chesterton; y un booleanowrite_approvalsustituye alwrite_modede tres estados.21 - Arquitectura. Los subagentes en segundo plano devuelven un handle de inmediato y reincorporan su resultado como un nuevo turno; un controlador de elicitation de MCP permite confirmar durante una llamada de herramienta, y las herramientas de MCP que se conectan tarde se exponen entre turnos (seguro para la caché); cron pasa a ser un CronScheduler conectable con un proveedor de cron administrado Chronos; y un nuevo Managed scope (
/etc/hermes) permite a un administrador fijar configuración inmutable para el usuario, junto con un relay Gateway-Gateway para topologías de múltiples gateways.21 - Nuevos comandos.
/version,/billing(facturación interactiva en terminal),hermes photon login(autenticación de iMessage) yhermes curator run --consolidate; la consolidación ahora es opcional, por lo que la curación rutinaria en segundo plano no consume tokens.21 - Seguridad. v0.17.0 corrige una omisión de la lista de bloqueo de escapes de shell, falla de forma segura cuando faltan módulos de aprobación y adaptadores de gateway con políticas propias, sanitiza el entorno de los subprocesos de scripts de trabajos cron, oculta secretos en volcados de depuración de solicitudes, analiza configuraciones stdio de MCP en busca de patrones de exfiltración y actualiza urllib3 y PyJWT para corregir CVE.21
Si actualizas desde v0.16.x, nada de esto rompe CLI; se trata de nuevos canales, modelos y superficies alrededor del mismo agente. Los adaptadores oficiales de iMessage sin relay y WhatsApp, además del Managed scope para administradores, son los motivos principales para actualizar.
Novedades de v0.16.0 (la versión de superficies)
Hermes Agent v0.16.0 (tag v2026.6.5, 5 de junio de 2026) recibe su nombre por las nuevas superficies que pone frente al agente centrado en CLI. La gran novedad es que Hermes ya no se limita a la terminal.20
- Aplicación de escritorio nativa. Hermes Desktop es una nueva aplicación Electron para macOS, Linux y Windows con instalación en un clic y actualización automática dentro de la aplicación. Te ofrece una ventana de chat con transmisión en vivo, archivos mediante arrastrar y soltar, pegado de imágenes desde el portapapeles, una paleta
Cmd+K, una lista de sesiones con archivo y búsqueda, y un selector de modelos en la barra de estado. Puede conectarse a un gateway remoto de Hermes mediante un WebSocket seguro, con autenticación a través de OAuth o nombre de usuario/contraseña, hosts remotos por profile y sesiones simultáneas de varios profiles vinculadas mediante referencias@sessionentre profiles. La interfaz de escritorio también incluye una traducción completa al chino simplificado (简体中文) mediante una capa i18n tipada (display.language; el inglés sigue siendo el valor predeterminado).20 - Panel de administración en el navegador. El dashboard web local evolucionó de una vista de estado a un panel de administración completo: un catálogo de MCP con controles para activar o desactivar, administración de credenciales, creación de webhooks y hooks, configuración de memory, controles de gateway y una página System con comprobación antes de actualizar y Debug Share en un clic. Una nueva página Channels configura desde el navegador todas las plataformas de mensajería del gateway (Telegram, Discord, Slack y las demás). La autenticación ahora es conectable: inicio de sesión con nombre de usuario/contraseña, un proveedor OIDC genérico autohospedado,
hermes dashboard registerpara un cliente OAuth autohospedado y rotación de sesiones mediante refresh token.20 - Nuevos CLI y comandos slash.
/undo [N]respalda los últimos N turnos del usuario con prefill y eliminación suave, y funciona en CLI, la TUI y todas las plataformas de mensajería. Llega una interfaz predeterminada configurable (clifrente atui) con una anulación--cli; la TUI obtiene un comando/modelunificado y una superposición de Sessions.hermes portales un alias legible para humanos del flujo de incorporación de Nous Portal, con nuevas rutas de primera ejecución Quick Setup y Full Setup, además de dos diagnósticos:hermes prompt-sizeyhermes sessions optimize.20 - Nuevos modelos y proveedores. El selector añade
deepseek-v4-flash,MiniMax-M3(1M de contexto, proveedores MiniMax nativos),qwen3.7-plus(Nous + OpenRouter) ygemini-3.5-flash(Gemini OAuth + clave API). Un proveedor xAI Grok de OAuth de primera clase se incorpora al lanzador de escritorio, el selector de modelos pasa a tener búsqueda difusa en todas las superficies, los proveedores de múltiples endpoints se agrupan en una sola fila y la actualización del catálogo pasa de diaria a cada hora.20 - Skills más ligeros y divulgación progresiva. El conjunto de skills predeterminado eliminó skills redundantes y sin uso (Spotify pasó a un plugin nativo, Linear a
hermes mcp install lineary se retiraron varias entradas obsoletas), movió más elementos a opcionales y agregó una puerta de relevancia en frontmatterenvironments:(kanban/docker/s6) que mantiene los skills específicos del contexto fuera del índice hasta que se solicitan.NVIDIA/skillsahora es una fuente predeterminada confiable de Skills Hub junto con OpenAI, Anthropic y HuggingFace. Las herramientas de MCP y plugins obtuvieron divulgación progresiva de herramientas por alcance, y se corrigió un error de MCP que informaba falsos éxitos de OAuth cuando no se obtenía ningún token.20 - Seguridad. v0.16.0 fija Starlette con el parche (≥1.0.1) para CVE-2026-48710 (BadHost), mueve las comprobaciones de URL contra SSRF fuera del event loop en rutas asíncronas, elimina el token bearer de inferencia de Bedrock del entorno de subprocesos, añade
bws_cache.jsona la protección de lectura de seguridad de archivos, incorporadocker restart/stop/killa la lista de patrones peligrosos y sanitiza unicode invisible en contenido de skills validado. La versión cerró 2 problemas P0 y 62 P1, 16 de ellos etiquetados como de seguridad.20
Si actualizas desde v0.15.x, nada de esto implica un cambio incompatible en CLI en sí; son superficies y proveedores adicionales alrededor del mismo agente. La aplicación de escritorio y el panel de administración son el motivo para actualizar si quieres ejecutar Hermes para usuarios que no usan la terminal o administrar un gateway remoto desde un navegador.
Instalación
El instalador de una sola línea es la vía de instalación compatible. Se encarga de Python, uv, Node.js, ripgrep, ffmpeg, el clon del repositorio, el entorno virtual y el comando global hermes.7
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
Las instalaciones mediante pip y Homebrew están obsoletas desde la v0.19.0. El paquete de PyPI que introdujo la v0.14.0 (
pip install hermes-agent) y la fórmula de Homebrew ahora se identifican como instalaciones «heredadas no compatibles»; cada interfaz advierte (sin bloquear) cuando Hermes detecta una, y está prevista la eliminación de la publicación en PyPI/Homebrew. Si instalaste mediante pip o brew, migra al instalador anterior.25
Funciona en Linux, macOS, WSL2 y Android/Termux (el instalador detecta automáticamente Termux y cambia a un paquete de Android probado).7 Windows nativo ahora es una plataforma de nivel 1, en lugar de la beta temprana con la que se lanzó la v0.14.0: instálalo con iex (irm https://hermes-agent.nousresearch.com/install.ps1). Hay una advertencia que la documentación deja explícita: la compatibilidad con macOS es solo para Apple Silicon; las Mac Intel no son compatibles.24 Históricamente, la v0.14.0 añadió soporte nativo para Windows en beta temprana mediante un instalador de PowerShell, pero WSL2 sigue siendo la recomendación más segura para uso en producción hasta que la vía de Windows madure.19
Cuando termine:
source ~/.bashrc # or ~/.zshrc
hermes # Start chatting
El único requisito previo es git. El instalador aprovisiona automáticamente Python 3.11 mediante uv (sin necesidad de sudo), Node.js 26 (para la automatización del navegador y el puente de WhatsApp), ripgrep y ffmpeg. Node 26 es un requisito mínimo estricto desde la v0.20.0: el instalador rechaza cualquier versión anterior e instala una versión de Node administrada por Hermes.247
Verifica la instalación
hermes version # Check version
hermes doctor # Diagnose config/dependency issues
hermes status # Show current configuration + auth state
hermes dump # Copy-pasteable setup summary for debugging
hermes doctor te indica exactamente qué falta y cómo solucionarlo.7 hermes dump es el comando de diagnóstico que debes pegar en un issue de GitHub o en un hilo de Discord al pedir ayuda: es un resumen de texto sin formato de toda tu configuración, con los secretos ocultos.8
Instalación manual
Si necesitas control total —una versión personalizada de Python, extras específicos o integración con Nix/NixOS—, el flujo manual está documentado paso a paso en la guía de instalación upstream.7 Extras opcionales clave que puedes combinar con uv pip install -e ".[<extras>]":
| Extra | Qué agrega |
|---|---|
all |
Todo lo indicado abajo |
messaging |
gateway de Telegram y Discord |
cron |
Análisis de expresiones cron |
cli |
Interfaz de menú de terminal para el asistente de configuración |
modal |
Backend de ejecución en la nube de Modal |
voice |
Entrada de micrófono de CLI y reproducción de audio |
tts-premium |
Voces premium de ElevenLabs |
honcho |
Memoria nativa de IA (integración con Honcho) |
mcp |
Compatibilidad con Model Context Protocol |
homeassistant |
Integración con Home Assistant |
acp |
Compatibilidad con la integración de editores ACP |
slack |
Mensajería de Slack |
pty |
Compatibilidad con terminal PTY (herramientas interactivas de CLI) |
dev |
pytest y utilidades de prueba |
termux |
Paquete de Android probado (incluye cron, cli, pty, mcp, honcho, acp) |
El comando de instalación de Termux es diferente: usa pip con un archivo de restricciones, no uv pip:
python -m pip install -e ".[termux]" -c constraints-termux.txt
Esto se debe a que .[all] en Android incorpora faster-whisper mediante el extra voice, que depende de paquetes wheel de ctranslate2 que no se publican para Android.7
Autenticación y proveedores
Hermes admite aproximadamente 22 proveedores de primera clase, además de endpoints personalizados (v0.19.0 añade Fireworks AI, DeepInfra y Upstage Solar), y tres rutas de autenticación distintas. Aquí tienes toda la superficie de autenticación, organizada por ruta para que encuentres la que coincida con lo que tienes.
Las tres rutas de autenticación
Cada proveedor de Hermes encaja en uno de tres patrones de autenticación:
Ruta 1 — clave API en .env. Coloca tu clave en ~/.hermes/.env y Hermes la lee al iniciarse. Se usa con OpenRouter, AI Gateway, z.ai/GLM, Kimi/Moonshot, MiniMax (y MiniMax China), Alibaba Cloud/DashScope, Kilo Code, OpenCode Zen, OpenCode Go, DeepSeek, Hugging Face, Google/Gemini y la mayoría de los proveedores de terceros.2 Desde v0.19.0, la clave ya no tiene que estar en un archivo de texto sin formato: una interfaz conectable SecretSource puede obtener secretos de Bitwarden o 1Password (referencias op://) durante la carga, con varias bóvedas activadas simultáneamente, precedencia determinista, advertencias de conflicto y procedencia por variable; .env sigue siendo la alternativa de respaldo. (Esto es distinto del token de arranque de Bitwarden Secrets Manager de v0.15.0, que consolidaba las claves de proveedor detrás de un único token; SecretSource reemplaza el propio archivo de texto sin formato, y los futuros proveedores de bóvedas se incorporan como plugins.)25
Ruta 2 — OAuth mediante hermes model o hermes auth. Inicia un flujo de código de dispositivo, abre un navegador, almacena las credenciales en ~/.hermes/auth.json (y puede importar credenciales existentes de herramientas como Claude Code o Codex CLI). Se usa con Nous Portal, OpenAI Codex (cuenta de ChatGPT), GitHub Copilot y Anthropic (Claude Pro/Max).2
Ruta 3 — endpoint personalizado en config.yaml. Para cualquier API compatible con OpenAI: Ollama, vLLM, SGLang, llama.cpp, LM Studio, proxy LiteLLM, Together AI, Groq, Azure OpenAI o tu propio servidor autoalojado. Se configura una vez mediante hermes model → Custom endpoint y luego se conserva en config.yaml.2
La matriz completa de proveedores
Esta es la lista completa de proveedores de primera clase, con el flujo de configuración exacto para cada uno.2
| Proveedor | Ruta de autenticación | Configuración |
|---|---|---|
| Nous Portal | OAuth | hermes model (inicio de sesión OAuth, basado en suscripción) |
| OpenAI Codex | OAuth | hermes model (código de dispositivo de ChatGPT, usa modelos Codex) |
| GitHub Copilot | OAuth o token | hermes model (código de dispositivo OAuth), o COPILOT_GITHUB_TOKEN / GH_TOKEN / gh auth token |
| GitHub Copilot ACP | Subproceso local | hermes model (requiere copilot CLI en PATH + copilot login) |
| Anthropic | OAuth o clave API | hermes model (prefiere las credenciales de Claude Code), o ANTHROPIC_API_KEY, o token de configuración ANTHROPIC_TOKEN |
| OpenRouter | clave API | OPENROUTER_API_KEY en ~/.hermes/.env |
| AI Gateway (Vercel) | clave API | AI_GATEWAY_API_KEY en ~/.hermes/.env (proveedor: ai-gateway) |
| z.ai / GLM (ZhipuAI) | clave API | GLM_API_KEY en ~/.hermes/.env (proveedor: zai) |
| Kimi / Moonshot | clave API | KIMI_API_KEY en ~/.hermes/.env (proveedor: kimi-coding). v0.19.0 añade kimi-k3 a los catálogos (kimi-k2.x se retiró).25 |
| MiniMax (global) | clave API | MINIMAX_API_KEY en ~/.hermes/.env (proveedor: minimax) |
| MiniMax China | clave API | MINIMAX_CN_API_KEY en ~/.hermes/.env (proveedor: minimax-cn) |
| Alibaba Cloud (Qwen) | clave API | DASHSCOPE_API_KEY en ~/.hermes/.env (proveedor: alibaba, alias: dashscope, qwen) |
| Kilo Code | clave API | KILOCODE_API_KEY en ~/.hermes/.env (proveedor: kilocode) |
| OpenCode Zen | clave API | OPENCODE_ZEN_API_KEY en ~/.hermes/.env (proveedor: opencode-zen) |
| OpenCode Go | clave API | OPENCODE_GO_API_KEY en ~/.hermes/.env (proveedor: opencode-go) |
| DeepSeek | clave API | DEEPSEEK_API_KEY en ~/.hermes/.env (proveedor: deepseek) |
| Hugging Face | clave API | HF_TOKEN en ~/.hermes/.env (proveedor: huggingface, alias: hf) |
| Google / Gemini | clave API | GOOGLE_API_KEY o GEMINI_API_KEY en ~/.hermes/.env (proveedor: gemini) |
| Fireworks AI | clave API | Proveedor de primera clase con estimación de costos y columnas de precios en caché en el selector de modelos; ascendido a la posición n.º 2 en los selectores de proveedores. Nuevo en v0.19.0.25 |
| DeepInfra | clave API | Proveedor de primera clase con una integración reforzada. Nuevo en v0.19.0.25 |
| Upstage Solar | clave API | Proveedor de primera clase. Nuevo en v0.19.0.25 |
| xAI (Grok) | Proveedor nativo / OAuth SuperGrok | Proveedor de primera clase con acceso directo a API y catálogo de modelos (v0.9.0+). v0.14.0 añade OAuth SuperGrok y aumenta grok-4.3 a una ventana de contexto de 1M para cuentas con derecho.21619 v0.17.0 añade grok-composer-2.5-fast (el modelo de Cursor mediante OAuth de xAI, contexto de 200k) y cambia el predeterminado de xAI a grok-build-0.1.21 v0.19.0 lleva grok-4.5 a disponibilidad general en el catálogo.25 |
| xAI Custom Voices | clave API | Proveedor TTS con clonación de voz. Nuevo en v0.13.0; configúralo en tts: dentro de config.yaml y proporciona la clave de xAI en .env.18 |
| Xiaomi MiMo | Proveedor nativo | Proveedor de primera clase con asistente de configuración y catálogo de modelos. MiMo v2 Pro gratuito en Nous Portal para tareas auxiliares (v0.9.0+).1615 |
| Google AI Studio | clave API | GOOGLE_API_KEY o GEMINI_API_KEY en ~/.hermes/.env. Acceso directo a Gemini con longitudes de contexto detectadas automáticamente mediante el registro models.dev (v0.8.0+).15 |
| Qwen Cloud | OAuth | Proveedor OAuth con soporte para solicitudes del portal (v0.8.0+). El proveedor pasó de llamarse Alibaba Cloud a Qwen Cloud en v0.14.0; las claves de configuración existentes siguen funcionando.1519 |
| Endpoint personalizado | config.yaml | hermes model → “Custom endpoint” (guardado en config.yaml) |
Desde v0.19.0 también puedes depurar los proveedores que no usas: una marca enabled: false por proveedor y una clave de configuración excluded_providers los eliminan de los selectores de /model y de la resolución de proveedores integrada.25
Anthropic: tres métodos de autenticación
Anthropic tiene su propia sección porque Hermes admite tres rutas distintas hacia Claude, y elegir la adecuada importa. Según la documentación upstream:2
# Method 1: API key (pay-per-token)
export ANTHROPIC_API_KEY=***
hermes chat --provider anthropic --model claude-sonnet-4-6
# Method 2: OAuth through hermes model (preferred)
# Uses Claude Code's credential store when available
hermes model
# Method 3: Manual setup-token (fallback/legacy)
export ANTHROPIC_TOKEN=***
hermes chat --provider anthropic
# Auto-detect Claude Code credentials
hermes chat --provider anthropic # reads Claude Code files automatically
Cuando eliges Anthropic OAuth mediante hermes model, Hermes prefiere el propio almacén de credenciales de Claude Code en lugar de copiar el token a ~/.hermes/.env. Así, las credenciales actualizables de Claude siguen siendo actualizables.2 Si ya usas Claude Code en la misma computadora, esta es la ruta más limpia.
Para fijar Anthropic permanentemente en config.yaml:
model:
provider: "anthropic"
default: "claude-sonnet-4-6"
--provider claude y --provider claude-code también funcionan como abreviaturas de --provider anthropic.2
GitHub Copilot: dos modos
Copilot es compatible con dos modos: API de Copilot directo (recomendado) y Copilot ACP (que inicia el CLI local de Copilot como subproceso).2
# Direct Copilot API
hermes chat --provider copilot --model gpt-5.4
# Copilot ACP (requires the Copilot CLI in PATH + an existing copilot login)
hermes chat --provider copilot-acp --model copilot-acp
La autenticación se comprueba en este orden, según la documentación upstream:2
1. Variable de entorno COPILOT_GITHUB_TOKEN
2. Variable de entorno GH_TOKEN
3. Variable de entorno GITHUB_TOKEN
4. Alternativa mediante CLI gh auth token
5. Inicio de sesión con código de dispositivo OAuth mediante hermes model
El tipo de token importa. El API de Copilot no admite Personal Access Tokens clásicos (ghp_*). Los tipos compatibles son tokens OAuth (gho_*), PAT de granularidad fina (github_pat_* con permiso Copilot Requests) y tokens de la App GitHub (ghu_*). Si tu gh auth token devuelve un token ghp_*, usa hermes model para autenticarte mediante OAuth.2
Proveedores de IA chinos (soporte de primera clase)
Hermes tiene soporte integrado para z.ai/GLM, Kimi/Moonshot, MiniMax (endpoints globales y de China) y Alibaba Cloud con ID de proveedor dedicados.2
# z.ai / ZhipuAI GLM
hermes chat --provider zai --model glm-5 # Requires: GLM_API_KEY
# Kimi / Moonshot AI
hermes chat --provider kimi-coding --model kimi-for-coding # Requires: KIMI_API_KEY
# MiniMax (global)
hermes chat --provider minimax --model MiniMax-M2.7 # Requires: MINIMAX_API_KEY
# MiniMax (China)
hermes chat --provider minimax-cn --model MiniMax-M2.7 # Requires: MINIMAX_CN_API_KEY
# Alibaba Cloud / DashScope (Qwen)
hermes chat --provider alibaba --model qwen3.5-plus # Requires: DASHSCOPE_API_KEY
Puedes reemplazar las URL base con las variables de entorno GLM_BASE_URL, KIMI_BASE_URL, MINIMAX_BASE_URL, MINIMAX_CN_BASE_URL o DASHSCOPE_BASE_URL.2
Z.AI detecta automáticamente el endpoint. Al usar el proveedor z.ai/GLM, Hermes prueba varios endpoints (global, China y variantes de código) para encontrar uno que acepte tu clave API. El endpoint funcional se almacena automáticamente en caché; la mayoría de los usuarios no necesitan GLM_BASE_URL.2
xAI (Grok) habilita automáticamente el almacenamiento en caché de prompts. Cuando la URL base contiene x.ai, Hermes envía el encabezado x-grok-conv-id con cada solicitud para dirigirla al mismo servidor durante una sesión de conversación, reutilizando prompts de sistema e historial almacenados en caché.2 Es automático; no requiere configuración.
El comando hermes auth
hermes auth es el comando de gestión de credenciales para pools y credenciales OAuth.6
hermes auth # Interactive wizard
hermes auth list # Show all credential pools
hermes auth list openrouter # Show one provider's pool
hermes auth add openrouter --api-key sk-or-v1-xxx
hermes auth add anthropic --type oauth
hermes auth remove openrouter 2 # Remove by index
hermes auth reset openrouter # Clear cooldowns
Los pools de credenciales te permiten rotar varias claves API o tokens OAuth para el mismo proveedor; son útiles para distribuir límites de tasa entre varias claves sin cambiar código.6 Los comandos heredados hermes login / hermes logout se eliminaron; usa hermes auth en su lugar.6
Endpoints personalizados y autoalojados
Hermes funciona con cualquier endpoint API compatible con OpenAI. Si un servidor implementa /v1/chat/completions, puedes dirigir Hermes hacia él.2
Configuración interactiva (recomendada):
hermes model
# Select "Custom endpoint (self-hosted / VLLM / etc.)"
# Enter: API base URL, API key, Model name
config.yaml manual:
model:
default: your-model-name
provider: custom
base_url: http://localhost:8000/v1
api_key: your-key-or-leave-empty-for-local
Ambos enfoques se conservan en config.yaml, que es la única fuente de verdad para el modelo principal, el proveedor y la URL base.2 Las variables de entorno heredadas OPENAI_BASE_URL y LLM_MODEL ya no se leen para la configuración del modelo principal; usa hermes model o edita config.yaml directamente.2 (OPENAI_BASE_URL + OPENAI_API_KEY todavía se respetan como alternativa para la ruta de enrutamiento auxiliar provider: "main", así que no las elimines a ciegas si las usas allí.)4
Cambiar de endpoint personalizado durante una sesión:
/model custom:qwen-2.5 # Custom endpoint with explicit model
/model custom # Auto-detect the model from the endpoint
/model custom:local:qwen-2.5 # Named custom provider "local"
/model custom:work:llama3 # Named custom provider "work"
/model openrouter:claude-sonnet-4 # Back to a cloud provider
/model custom (sin nada más, sin nombre de modelo) consulta el API /v1/models de tu endpoint y selecciona automáticamente el modelo si hay exactamente uno cargado; es útil para servidores locales que ejecutan un solo modelo.2
Servidores LLM locales (plantillas de configuración)
La documentación upstream tiene guías completas de configuración para Ollama, vLLM, SGLang, llama.cpp y LM Studio. Aquí están los comandos clave que realmente ejecutarás. Cada uno está diseñado para producir un endpoint funcional al que Hermes pueda dirigirse.2
Ollama — la ruta local más sencilla, sin configuración:
ollama pull qwen2.5-coder:32b
OLLAMA_CONTEXT_LENGTH=32768 ollama serve # Raise from 4k default
hermes model # Custom endpoint → http://localhost:11434/v1 → qwen2.5-coder:32b
Advertencia crítica de Ollama: Ollama usa por defecto longitudes de contexto muy bajas (4.096 tokens con menos de 24 GB de VRAM). Debes aumentarla mediante OLLAMA_CONTEXT_LENGTH o un Modelfile: el API compatible con OpenAI no acepta la longitud de contexto del cliente, por lo que Hermes no puede establecerla por ti.2 Para uso con agentes, configúrala al menos entre 16k y 32k.
vLLM — servicio GPU de alto rendimiento:
pip install vllm
vllm serve meta-llama/Llama-3.1-70B-Instruct \
--port 8000 \
--max-model-len 65536 \
--tensor-parallel-size 2 \
--enable-auto-tool-choice \
--tool-call-parser hermes
Las llamadas a herramientas requieren --enable-auto-tool-choice y --tool-call-parser <name>. Analizadores compatibles: hermes (Qwen 2.5, Hermes 2/3), llama3_json, mistral, deepseek_v3, deepseek_v31, xlam, pythonic. Sin estas opciones, las llamadas a herramientas regresarán como texto sin formato.2
SGLang — servicio rápido con RadixAttention para reutilización de caché KV:
pip install "sglang[all]"
python -m sglang.launch_server \
--model meta-llama/Llama-3.1-70B-Instruct \
--port 30000 \
--context-length 65536 \
--tp 2 \
--tool-call-parser qwen
Advertencia de SGLang: El valor predeterminado de max_tokens es 128. Configura --default-max-tokens en el servidor o model.max_tokens en config.yaml si las respuestas se cortan.2
llama.cpp / llama-server — CPU y Metal de Apple Silicon:
./build/bin/llama-server \
--jinja -fa \
-c 32768 \
-ngl 99 \
-m models/qwen2.5-coder-32b-instruct-Q4_K_M.gguf \
--port 8080 --host 0.0.0.0
--jinja es obligatorio para las llamadas a herramientas. Sin él, llama-server ignora por completo el parámetro tools y el modelo intenta llamar herramientas escribiendo JSON en el texto de su respuesta, algo que Hermes no puede interpretar como llamadas a herramientas reales.2
LM Studio — aplicación de escritorio con GUI:
Inicia el servidor desde la aplicación LM Studio (pestaña Developer → Start Server), o mediante CLI: lms server start (inicia en el puerto 1234) y lms load qwen2.5-coder --context-length 32768.2 Luego dirige hermes model a http://localhost:1234/v1.
Advertencia crítica de LM Studio: LM Studio lee la longitud de contexto de los metadatos del modelo, pero muchos modelos GGUF informan valores predeterminados de 2048 o 4096. Configura siempre la longitud de contexto explícitamente en los ajustes del modelo de LM Studio: haz clic en el icono de engranaje junto al selector de modelos, establece “Context Length” en al menos 16384 (preferiblemente 32768) y vuelve a cargar el modelo.2
Proveedores personalizados con nombre
Si trabajas con varios endpoints personalizados (un servidor de desarrollo local y un servidor GPU remoto, por ejemplo), defínelos como proveedores personalizados con nombre en config.yaml:2
custom_providers:
- name: local
base_url: http://localhost:8080/v1
# api_key omitted — Hermes uses "no-key-required" for keyless local servers
- name: work
base_url: https://gpu-server.internal.corp/v1
api_key: corp-api-key
api_mode: chat_completions # optional, auto-detected from URL
- name: anthropic-proxy
base_url: https://proxy.example.com/anthropic
api_key: proxy-key
api_mode: anthropic_messages # for Anthropic-compatible proxies
Luego cambia entre ellos durante la sesión con la sintaxis triple:
/model custom:local:qwen-2.5
/model custom:work:llama3-70b
/model custom:anthropic-proxy:claude-sonnet-4
También puedes seleccionar proveedores personalizados con nombre desde el menú interactivo hermes model.2
Arquitectura de proveedores conectables (v0.13.0+)
v0.13.0 incluye un ABC ProviderProfile además de un directorio plugins/model-providers/ para que los proveedores de inferencia de terceros se incorporen sin modificaciones al núcleo.18 Si un proveedor utiliza un modo API compatible con OpenAI, Anthropic o Codex, puedes implementar una subclase de ProviderProfile que declare la ruta de autenticación, la URL base, el catálogo de modelos y los encabezados de caché; Hermes la resuelve mediante la misma ruta runtime_provider.py que usan los proveedores integrados. Este es el cambio arquitectónico detrás de la expansión de proveedores de v0.13.0: en lugar de editar el código central para añadir un proveedor, distribuyes un plugin.
Proxy local compatible con OpenAI (v0.14.0+)
hermes proxy expone un endpoint local compatible con OpenAI respaldado por el proveedor OAuth en el que Hermes ya inició sesión: Claude Pro, ChatGPT Pro, SuperGrok u otro proveedor compatible configurado.19 Esto significa que las herramientas que esperan un API estilo OpenAI, incluidos Codex CLI, Aider, Cline, Continue o scripts personalizados, pueden reutilizar tu autenticación de Hermes respaldada por suscripción sin una clave API independiente. Trata el proxy como infraestructura local de desarrollo: asígnale un enlace de forma intencional, no lo expongas ampliamente y ten presentes los términos específicos del proveedor.
Detección de longitud de contexto
Según la documentación upstream, se confunden constantemente dos configuraciones:2
context_length— la ventana de contexto total (presupuesto combinado de tokens de entrada + salida; por ejemplo, 1.000.000 para Claude Opus 4.7 o 200.000 para Sonnet 4.6). Hermes usa esto para decidir cuándo comprimir el historial.model.max_tokens— el límite de salida (máximo de tokens que el modelo puede generar en una sola respuesta). No está relacionado con la longitud del historial.
Configura context_length cuando la detección automática se equivoque en el tamaño de la ventana:
model:
default: "qwen3.5:9b"
base_url: "http://localhost:8080/v1"
context_length: 131072 # tokens
Hermes usa una cadena de resolución de múltiples fuentes para detectar las ventanas de contexto: anulación de configuración → proveedor personalizado por modelo → caché persistente → endpoint /models → Anthropic /v1/models → API de OpenRouter → Nous Portal → models.dev (registro mantenido por la comunidad con más de 3800 modelos) → valores predeterminados de respaldo (128K).2 El sistema reconoce el proveedor, por lo que el mismo modelo puede tener límites de contexto diferentes según quién lo sirva (por ejemplo, claude-opus-4.6 tiene 1M con Anthropic directo, pero 128K con GitHub Copilot).2
Enrutamiento inteligente de modelos: rotación y respaldo de proveedores
Hermes no te fija a un modelo en un proveedor. El enrutamiento inteligente de modelos es el conjunto de mecanismos que decide qué proveedor y modelo atiende realmente una solicitud determinada: los pools de credenciales distribuyen la carga entre claves, un respaldo configurado toma el control cuando falla el principal y las ranuras auxiliares de abajo dirigen las tareas secundarias a modelos más económicos independientemente de tu modelo principal.26 Configura estos tres elementos juntos: son la diferencia entre un agente que se detiene por un límite de tasa y uno que sigue trabajando.
Pools de credenciales. Cuando tienes varias claves API para el mismo proveedor, configura una estrategia de rotación mediante hermes auth. Así distribuyes los límites de tasa entre varias claves.6
Modelo de respaldo. Configura un provider:model de respaldo al que Hermes cambia automáticamente cuando falla tu modelo principal (límites de tasa, errores de servidor, fallas de autenticación):2
fallback_model:
provider: openrouter # required
model: anthropic/claude-sonnet-4 # required
# base_url: http://localhost:8000/v1 # optional, for custom endpoints
# api_key_env: MY_CUSTOM_KEY # optional, env var name
El respaldo cambia el modelo y el proveedor durante la sesión sin perder tu conversación. Se activa como máximo una vez por sesión.2 Proveedores compatibles para respaldo: openrouter, nous, openai-codex, copilot, copilot-acp, anthropic, huggingface, zai, kimi-coding, minimax, minimax-cn, deepseek, ai-gateway, opencode-zen, opencode-go, kilocode, alibaba, custom.2
Modelos auxiliares
Hermes usa modelos ligeros “auxiliares” para tareas secundarias: análisis de imágenes, resumen de páginas web, análisis de capturas de pantalla del navegador, clasificación de aprobación de comandos peligrosos, compresión de contexto, resumen de búsquedas de sesión, coincidencia de skills, despacho de herramientas MCP y vaciado de memoria.4 De forma predeterminada, estos usan Gemini Flash mediante detección automática (OpenRouter → Nous → Codex).
Puedes configurar qué modelo y proveedor usa cada tarea auxiliar. Cada ranura auxiliar utiliza los mismos tres controles: provider, model, base_url.4
auxiliary:
vision:
provider: "auto" # "auto", "openrouter", "nous", "codex", "main", etc.
model: "" # e.g. "openai/gpt-4o", "google/gemini-2.5-flash"
base_url: "" # Custom OpenAI-compatible endpoint
api_key: "" # Falls back to OPENAI_API_KEY
timeout: 30
download_timeout: 30
web_extract:
provider: "auto"
model: ""
timeout: 360
approval:
provider: "auto"
model: ""
timeout: 30
compression:
timeout: 120
session_search: { provider: "auto", model: "", timeout: 30 }
skills_hub: { provider: "auto", model: "", timeout: 30 }
mcp: { provider: "auto", model: "", timeout: 30 }
flush_memories:{ provider: "auto", model: "", timeout: 30 }
La opción de proveedor "main" significa “usar cualquier proveedor que use mi agente principal”; es válida solo dentro de las configuraciones auxiliary:, compression: y fallback_model:. No es válida para tu configuración de nivel superior model.provider. Si usas un endpoint personalizado compatible con OpenAI como modelo principal, establece provider: custom en la sección model:.4
Por qué importa: si solo configuraste Anthropic OAuth (sin clave de OpenRouter), tu visión, resumen web y compresión se degradarán o fallarán porque la cadena auxiliar predeterminada intenta usar primero OpenRouter. Añade una OPENROUTER_API_KEY para las tareas auxiliares o vuelve a configurar cada ranura auxiliar para usar tu proveedor principal:
auxiliary:
vision:
provider: "main"
web_extract:
provider: "main"
Esta es la advertencia más común de “mis funciones no funcionan de forma silenciosa” para los nuevos usuarios de Hermes.
Sistema de configuración
Hermes tiene un sistema de configuración por capas. Entender la precedencia es esencial, porque las capas superiores anulan las inferiores y una de ellas es un registro global de proveedores que no puedes ver en config.yaml.
Diseño de los archivos de configuración
Según la documentación upstream, estos son los archivos que conforman una configuración de Hermes:4
~/.hermes/
├── config.yaml # All settings (model, terminal, TTS, compression, memory, toolsets, ...)
├── .env # Secrets (API keys, bot tokens, passwords)
├── auth.json # OAuth provider credentials (Nous Portal, Codex, Anthropic)
├── SOUL.md # Primary agent identity (slot #1 in system prompt)
├── memories/ # Persistent memory (MEMORY.md, USER.md)
├── skills/ # Bundled + agent-created + hub-installed skills
├── cron/ # Scheduled jobs
├── sessions/ # Gateway session state
└── logs/ # agent.log, gateway.log, errors.log (secrets auto-redacted)
config.yaml frente a .env: cuando ambos están configurados, config.yaml prevalece para los ajustes que no son secretos.4 La regla es:
- Secretos (claves API, tokens de bots, contraseñas) → .env
- Todo lo demás (modelo, backend de terminal, ajustes de compresión, límites de memoria, toolsets) → config.yaml
Puedes hacer referencia a secretos desde config.yaml mediante interpolación al estilo shell:4
auxiliary:
vision:
api_key: ${GOOGLE_API_KEY}
base_url: ${CUSTOM_VISION_URL}
delegation:
api_key: ${DELEGATION_KEY}
Administración de la configuración
hermes config # View current configuration
hermes config show # Same as above
hermes config edit # Open config.yaml in your editor
hermes config set KEY VAL # Set a specific value
hermes config get KEY # Print a single value (v0.19.0+)
hermes config unset KEY # Remove a key so the default applies again (v0.19.0+)
hermes config path # Print the config file path
hermes config env-path # Print the .env file path
hermes config check # Check for missing options (after updates)
hermes config migrate # Interactively add missing options
Ejemplos:4
hermes config set model anthropic/claude-opus-4
hermes config set terminal.backend docker
hermes config set OPENROUTER_API_KEY sk-or-... # Saves to .env
hermes config check y hermes config migrate son los comandos que debes ejecutar después de cada hermes update: detectan opciones de configuración recién añadidas que tu archivo aún no tiene.6
Precedencia de configuración
Hermes carga la configuración desde varias fuentes. Cuando varias fuentes establecen el mismo valor, prevalece la fuente de mayor prioridad:4
- Argumentos de CLI —
hermes chat --model anthropic/claude-sonnet-4(anulación por invocación) - Variables de entorno — se aplican al iniciar el proceso
config.yaml— el archivo principal de ajustes.env— solo secretos- Valores predeterminados integrados — se aplican cuando nada más establece un valor
Las flags de CLI siempre prevalecen para esa única invocación. config.yaml es la fuente de verdad a largo plazo.
Localización (v0.13.0+)
v0.13.0 añadió 7 idiomas para CLI y los mensajes del gateway: chino (simplificado), japonés, alemán, español, francés, ucraniano y turco.18 v0.14.0 localiza todos los comandos del gateway y el panel web, añade 8 idiomas más y eleva el total a 16.19 Actualmente, la documentación está localizada solo en zh-Hans. El idioma se resuelve a partir de las variables de entorno LC_ALL / LANG o de una clave explícita locale: en config.yaml. El inglés sigue siendo el valor predeterminado y la fuente de verdad para cualquier cadena que una traducción aún no cubra.
Profiles: múltiples instancias aisladas de Hermes
Los profiles te proporcionan varias instancias aisladas de Hermes, cada una con su propia configuración, sesiones, skills, memoria y PID del gateway. Así puedes ejecutar “Hermes de trabajo” y “Hermes personal” en paralelo sin que ninguno vea el estado del otro.6
hermes profile list
hermes profile create work --clone # Clone from current profile
hermes profile use work # Set sticky default
hermes profile alias work --name h-work # Create wrapper script
hermes profile export work -o work-backup.tar.gz
hermes profile import work-backup.tar.gz --name restored
hermes -p work chat -q "Hello from work profile" # One-off without switching
Cada profile obtiene su propio HERMES_HOME (~/.hermes-<name>/ de forma predeterminada), por lo que varios profiles pueden ejecutar el gateway de forma simultánea sin interferir entre sí.63
Comandos de CLI
Esta sección es la referencia práctica de los comandos de nivel superior de CLI. Para consultar la referencia autorizada derivada del código, consulta la Referencia de comandos de CLI.6
Opciones globales
hermes [global-options] <command> [subcommand/options]
| Opción | Descripción |
|---|---|
--version, -V |
Muestra la versión y sale |
--profile <name>, -p <name> |
Selecciona qué profile de Hermes usar |
--resume <session>, -r <session> |
Reanuda una sesión por ID o título |
--continue [name], -c [name] |
Reanuda la sesión más reciente (o busca coincidencia con un título) |
--worktree, -w |
Inicia en un git worktree aislado |
--yolo |
Omite las solicitudes de aprobación de comandos peligrosos |
--safe-mode |
Indicador de solución de problemas: inicia Hermes en un modo seguro mínimo para aislar problemas de inicio (v0.19.0+)25 |
--pass-session-id |
Incluye el ID de sesión en el prompt del sistema del agente |
Comandos de nivel superior
| Comando | Propósito |
|---|---|
hermes chat |
Chat interactivo o de una sola ejecución |
hermes model |
Elige de forma interactiva el provider y modelo predeterminados |
hermes gateway |
Ejecuta o administra el gateway de mensajería |
hermes setup |
Asistente de configuración interactivo |
hermes auth |
Administra credenciales: agregar, listar, eliminar, restablecer, definir estrategia |
hermes status |
Muestra el estado del agente, auth y las plataformas |
hermes cron |
Inspecciona y ejecuta el programador cron |
hermes webhook |
Administra suscripciones dinámicas de webhook |
hermes doctor |
Diagnostica problemas de configuración y dependencias |
hermes dump |
Resumen de configuración listo para copiar y pegar para soporte/depuración |
hermes logs |
Consulta, sigue y filtra logs del agente/gateway/errores |
hermes config |
Muestra, edita, migra y consulta la configuración |
hermes pairing |
Aprueba o revoca códigos de pairing de mensajería |
hermes skills |
Explora, instala, publica y audita skills |
hermes honcho |
Administra la memoria entre sesiones de Honcho |
hermes memory |
Configura el provider de memoria externa |
hermes acp |
Ejecuta Hermes como un servidor ACP (integración con el editor) |
hermes mcp |
Administra la configuración del servidor MCP; ejecuta Hermes como servidor MCP |
hermes plugins |
Administra plugins |
hermes tools |
Configura las tools habilitadas por plataforma |
hermes sessions |
Explora, exporta, depura y elimina sesiones. La v0.19.0 amplía hermes sessions export a formatos Markdown, Quarto, HTML, solo prompt y trazas de Hugging Face, con un paso opcional --redact para eliminar secretos y filtros por antigüedad/workspace/plataforma25 |
hermes insights |
Muestra analíticas de tokens/costos/actividad |
hermes claw |
Herramientas auxiliares de migración de OpenClaw |
hermes profile |
Administra profiles (varias instancias aisladas) |
hermes completion |
Imprime scripts de autocompletado de shell (bash/zsh) |
hermes whatsapp |
Configura y vincula el puente de WhatsApp |
hermes version |
Imprime información de versión |
hermes update |
Obtiene el código más reciente y reinstala dependencias |
hermes uninstall |
Elimina Hermes del sistema (--full también elimina configuración/datos) |
hermes backup |
Respaldo completo de configuración, sesiones, skills y memoria (v0.9.0+)16 |
hermes import |
Restaura desde un archivo de respaldo: migra entre computadoras o revierte cambios (v0.9.0+)16 |
hermes dashboard |
Inicia el dashboard web local para administrar el agente desde el navegador (v0.9.0+)16 |
hermes serve |
Ejecuta el servidor API de backend sin interfaz: a partir de la v0.19.0 ya no compila ni monta la UI web25 |
hermes debug share |
Sube un informe de depuración completo a un pastebin para compartirlo durante la solución de problemas (v0.9.0+)16 |
hermes chat — El punto de entrada principal
hermes sin argumentos te lleva al chat interactivo. hermes chat es la forma explícita con opciones:6
hermes chat -q "Summarize the latest PRs" # One-shot, non-interactive
hermes chat --provider openrouter --model anthropic/claude-sonnet-4.6
hermes chat --toolsets web,terminal,skills # Enable specific toolsets
hermes chat --quiet -q "Return only JSON" # Programmatic mode
hermes chat --worktree -q "Review repo and open a PR"
Opciones clave:
| Opción | Descripción |
|---|---|
-q, --query "..." |
Prompt no interactivo de una sola ejecución |
-m, --model <model> |
Anula el modelo para esta ejecución |
-t, --toolsets <csv> |
Habilita un conjunto de toolsets separado por comas |
--provider <provider> |
Fuerza un provider (consulta la lista completa) |
-s, --skills <name> |
Precarga una o más skills para esta sesión |
-v, --verbose |
Salida detallada |
-Q, --quiet |
Modo programático (sin banner, spinner ni vistas previas) |
--resume <session> |
Reanuda una sesión directamente desde chat |
--worktree |
Crea un git worktree aislado |
--checkpoints |
Habilita checkpoints del sistema de archivos antes de cambios destructivos |
--yolo |
Omite las solicitudes de aprobación |
--source <tag> |
Etiqueta de origen de la sesión (predeterminada: cli; usa tool para integraciones) |
--max-turns <N> |
Máximo de iteraciones de llamadas a tools por turno (predeterminado: 90) |
hermes setup — Asistente completo
Ejecuta el asistente de configuración completo o salta directamente a una sección:6
hermes setup # Full wizard
hermes setup model # Provider and model only
hermes setup terminal # Terminal backend only
hermes setup gateway # Messaging platforms only
hermes setup tools # Tool enable/disable per platform
hermes setup agent # Agent behavior only
hermes setup --non-interactive
hermes setup --reset # Reset config to defaults before setup
hermes logs — Consulta estructurada de logs
hermes logs es más potente que usar tail -f en los archivos de log porque permite filtrar simultáneamente por nivel, ID de sesión y rango de tiempo.6
hermes logs # Last 50 lines of agent.log
hermes logs -f # Follow in real time
hermes logs gateway -n 100 # Last 100 lines of gateway.log
hermes logs --level WARNING --since 1h # Warnings from the last hour
hermes logs --session abc123 # Filter by session ID substring
hermes logs errors --since 30m -f # Follow errors.log from 30m ago
hermes logs list # List all log files with sizes
Los archivos de log se encuentran en ~/.hermes/logs/:6
- agent.log — toda la actividad del agente (llamadas a API, envío de tools, ciclo de vida de sesiones, INFO+)
- errors.log — solo advertencias y errores (un subconjunto filtrado de agent.log)
- gateway.log — actividad del gateway de mensajería (conexiones de plataformas, envío, webhooks)
La rotación es automática mediante RotatingFileHandler de Python: busca agent.log.1, agent.log.2, etc.6
hermes doctor — Diagnósticos
hermes doctor [--fix] es el primer comando que debes ejecutar cuando algo no funciona. Comprueba la validez de la configuración, la presencia de dependencias, la disponibilidad de claves de API, el estado de los servicios y puede intentar reparaciones automáticas con --fix.6
Para compartir diagnósticos con otra persona, usa hermes dump: genera un resumen compacto de texto sin formato con las claves de API censuradas, listo para pegar en un issue de GitHub o un hilo de Discord.6
Comandos con barra
Los comandos con barra se ejecutan dentro de una sesión de chat activa (CLI o una plataforma de mensajería). Se envían desde un COMMAND_REGISTRY compartido en hermes_cli/commands.py, por lo que la mayoría de los comandos funcionan de forma idéntica en todas las superficies.9
Control de sesión
| Comando | Descripción |
|---|---|
/new (alias /reset) |
Inicia una sesión nueva |
/clear |
Limpia la pantalla e inicia una sesión nueva |
/history |
Muestra el historial de la conversación |
/save |
Guarda la conversación actual |
/retry |
Reintenta el último mensaje |
/undo |
Elimina el último intercambio entre usuario y asistente |
/title <name> |
Establece un título para la sesión actual |
/compress |
Comprime manualmente el contexto de la conversación |
/rollback [number] |
Enumera o restaura checkpoints del sistema de archivos |
/stop |
Finaliza todos los procesos en segundo plano en ejecución |
/queue <prompt> |
Encola un prompt para el siguiente turno. Advertencia: /q está asignado tanto a /queue como a /quit; gana el último registro y, en la práctica, /q se resuelve como /quit — escribe siempre /queue explícitamente.9 |
/resume [name] |
Reanuda una sesión previamente nombrada |
/statusbar (alias /sb) |
Activa o desactiva la barra de estado de contexto/modelo |
/background <prompt> (alias /bg) |
Ejecuta un prompt en una sesión independiente en segundo plano |
/btw <question> |
Pregunta secundaria efímera (sin herramientas, no se conserva) |
/plan [request] |
Carga el skill incluido plan para escribir un plan en lugar de ejecutar |
/branch [name] (alias /fork) |
Crea una rama de la sesión actual |
/goal <target> |
Fija el agente a un objetivo para que se mantenga enfocado a lo largo de los turnos. Patrón de bucle Ralph como primitiva de primera clase. Presupuesto de turnos configurable. Nuevo en v0.13.0.18 |
/subgoal <criterion> |
Agrega criterios de éxito a un /goal activo sin reiniciar el bucle. Nuevo en v0.14.0.19 |
/handoff <target> |
Transfiere la sesión activa —mensajes, llamadas a herramientas y contexto— a otro modelo, personalidad o profile. Nuevo en v0.14.0.19 |
Configuración y modelo
| Comando | Descripción |
|---|---|
/config |
Muestra la configuración actual |
/model [model-name] |
Muestra o cambia el modelo actual |
/provider |
Muestra los proveedores disponibles y el proveedor actual |
/personality [name] |
Establece una capa de personalidad |
/verbose |
Alterna la visualización del progreso de las herramientas |
/reasoning |
Gestiona el nivel y la visualización de razonamiento. v0.19.0 agrega los niveles de esfuerzo max y ultra, y hace que /reasoning se limite a la sesión, junto con anulaciones de esfuerzo por modelo y por slot de MoA en la configuración25 |
/skin |
Muestra o cambia el skin/tema de visualización |
/voice [on\|off\|tts\|status] |
Activa o desactiva el modo de voz de CLI |
/yolo |
Activa o desactiva el modo YOLO (omite las solicitudes de aprobación). Desde v0.19.0, las reglas de denegación definidas por el usuario siguen bloqueando los comandos coincidentes incluso en modo YOLO25 |
/fast |
Activa o desactiva Fast Mode — procesamiento prioritario para modelos de OpenAI y Anthropic (v0.9.0+)16 |
/debug |
Diagnóstico rápido en todas las plataformas (v0.9.0+)16 |
/subscription |
Gestiona tu plan de Nous Portal desde la terminal —plan y asignación restante, vista previa del costo de actualización o reducción, y aplicación con deshacer— (v0.19.0+)25 |
/topup |
Agrega crédito a tu saldo de Nous Portal sin salir de la terminal (v0.19.0+)25 |
El comando /model es la herramienta principal para cambiar de proveedor a mitad de sesión:9
/model # Show current model and options
/model claude-sonnet-4 # Switch model (auto-detect provider)
/model zai:glm-5 # Switch provider:model
/model custom:qwen-2.5 # Use model on custom endpoint
/model custom # Auto-detect model from custom endpoint
/model custom:local:qwen-2.5 # Named custom provider
/model openrouter:anthropic/claude-sonnet-4 # Back to cloud
v0.19.0 agrega /model --once —una anulación de modelo para un turno que vuelve automáticamente a tu modelo anterior después de la respuesta.25
Herramientas, Skills e información
| Comando | Descripción |
|---|---|
/tools [list\|disable\|enable] [name...] |
Gestiona las herramientas de la sesión actual |
/toolsets |
Enumera los toolsets disponibles |
/browser [connect\|disconnect\|status] |
Gestiona la conexión local de Chrome CDP |
/skills |
Busca, instala, inspecciona o gestiona skills |
/cron |
Gestiona tareas programadas |
/reload-mcp |
Recarga los servidores MCP desde config.yaml |
/plugins |
Enumera los plugins instalados |
/help |
Muestra todos los comandos |
/usage |
Muestra el uso de tokens, el costo y la duración |
/insights |
Muestra análisis de uso (últimos 30 días) |
/platforms |
Muestra el estado de las plataformas de mensajería |
/profile |
Muestra el nombre y la ubicación inicial del profile activo |
Comandos con barra de Skills dinámicos
Cada skill instalado se expone automáticamente como un comando con barra:9
/gif-search funny cats
/axolotl help me fine-tune Llama 3 on my dataset
/github-pr-workflow create a PR for the auth refactor
/excalidraw # Just the skill name loads it and lets the agent ask what you need
Desde v0.19.0, las invocaciones de slash-skill se acumulan: /skill-a /skill-b do XYZ carga ambos skills en orden en un solo turno, con autocompletado y texto fantasma para los nombres encadenados.25
También puedes definir comandos rápidos en config.yaml que asignan un nombre corto a un prompt más largo:9
quick_commands:
review: "Review my latest git diff and suggest improvements"
deploy: "Run the deployment script at scripts/deploy.sh and verify the output"
morning: "Check my calendar, unread emails, and summarize today's priorities"
Luego escribe /review, /deploy o /morning en CLI.
Coincidencia por prefijo
Los comandos admiten coincidencia por prefijo: al escribir /h se resuelve como /help, y /mod se resuelve como /model. Cuando un prefijo es ambiguo, gana el primer registro según el orden del registro. Los nombres completos de los comandos y los alias registrados siempre tienen prioridad sobre las coincidencias por prefijo.9
Comandos específicos de mensajería
Algunos comandos solo funcionan en plataformas de mensajería (Telegram, Discord, Slack, WhatsApp, Signal, Email, Home Assistant):9
/status— muestra información de la sesión/sethome(alias/set-home) — marca el chat actual como inicio de la plataforma/approve [session|always]— aprueba un comando peligroso pendiente/deny [reason]— rechaza un comando peligroso pendiente. Desde v0.19.0,/deny <reason>transmite tu motivo de rechazo al agente para que corrija el rumbo en lugar de reintentar a ciegas25/update— actualiza Hermes Agent a la versión más reciente/commands [page]— explora todos los comandos y skills (paginados)
Y algunos son exclusivos de CLI: /skin, /tools, /toolsets, /browser, /config, /cron, /skills, /platforms, /paste, /statusbar, /plugins.9
Herramientas y Toolsets
Hermes incluye un amplio registro de herramientas integradas que cubre búsqueda web, automatización de navegador, ejecución de terminal, edición de archivos, memoria, delegación, entrenamiento de RL, entrega de mensajes, integración con Home Assistant y más.10 Las herramientas se organizan en toolsets lógicos que pueden activarse o desactivarse para cada plataforma.
Categorías generales
| Categoría | Ejemplos | Descripción |
|---|---|---|
| Web | web_search, web_extract |
Busca en la web y extrae el contenido de páginas |
| Terminal y archivos | terminal, process, read_file, patch |
Ejecuta comandos y manipula archivos |
| Navegador | browser_navigate, browser_snapshot, browser_vision |
Automatización interactiva del navegador con texto y visión |
| Medios | vision_analyze, video_analyze, video_generate, image_generate, text_to_speech |
Análisis y generación multimodal. video_analyze prioriza Gemini y cuenta con soporte extensible para proveedores multimodales compatibles (v0.13.0+). v0.14.0 añade video_generate unificado con backends de proveedores conectables y envía píxeles sin procesar a través de vision_analyze cuando el modelo activo admite visión.1819 |
| Orquestación de agentes | todo, clarify, execute_code, delegate_task |
Planificación, aclaración, ejecución de código y delegación a subagentes |
| Uso de computadora | computer_use |
Control del escritorio mediante el backend cua-driver; v0.14.0 permite que funcione con proveedores compatibles con visión que no sean Anthropic.19 |
| Memoria y recuperación | memory, session_search |
Memoria persistente y búsqueda de sesiones |
| Automatización y entrega | cronjob, send_message |
Tareas programadas y mensajería saliente |
| Integraciones | ha_*, herramientas de MCP, rl_* |
Home Assistant, MCP y entrenamiento de RL |
Los nombres de toolsets comunes incluyen web, terminal, file, browser, vision, image_gen, moa, skills, tts, todo, memory, session_search, cronjob, code_execution, delegation, clarify, homeassistant y rl.10
Gestión de herramientas
hermes chat --toolsets "web,terminal" # Use specific toolsets
hermes tools # Interactive per-platform tool config
hermes tools --summary # Print enabled-tools summary
Las herramientas también pueden activarse o desactivarse durante una sesión mediante /tools disable <name> y /tools enable <name>, lo que reinicia la sesión para que el nuevo conjunto de herramientas surta efecto.9
Backends de terminal
La herramienta de terminal puede ejecutar comandos en seis entornos distintos:10
| Backend | Caso de uso |
|---|---|
local |
Se ejecuta en tu máquina (predeterminado): desarrollo y tareas de confianza |
docker |
Contenedores aislados: seguridad y reproducibilidad |
ssh |
Servidor remoto: sandbox, mantiene al agente alejado de su propio código |
singularity |
Contenedores HPC: computación en clúster sin root |
modal |
Ejecución cloud sin servidor |
daytona |
Espacio de trabajo sandbox en la nube: entorno de desarrollo remoto persistente |
Cambia de backend con hermes config set terminal.backend <name> o en config.yaml:
terminal:
backend: docker # or: local, ssh, singularity, modal, daytona
cwd: "." # Working directory
timeout: 180 # Command timeout in seconds
Backend SSH (recomendado para la seguridad: el agente no puede modificar su propio código):10
terminal:
backend: ssh
# In ~/.hermes/.env
TERMINAL_SSH_HOST=my-server.example.com
TERMINAL_SSH_USER=myuser
TERMINAL_SSH_KEY=~/.ssh/id_rsa
Backend Docker:
terminal:
backend: docker
docker_image: python:3.11-slim
Recursos del contenedor (se aplican a docker, singularity, modal y daytona):10
terminal:
container_cpu: 1
container_memory: 5120 # MB (default 5GB)
container_disk: 51200 # MB (default 50GB)
container_persistent: true # Persist filesystem across sessions
Con container_persistent: true, los paquetes instalados, archivos y la configuración se conservan entre sesiones.10
Todos los backends de contenedor se ejecutan con refuerzo de seguridad: sistema de archivos raíz de solo lectura (Docker), todas las capacidades de Linux se eliminan salvo DAC_OVERRIDE, CHOWN y FOWNER, sin escalamiento de privilegios, límites de PID (256 procesos), aislamiento completo de espacios de nombres y espacio de trabajo persistente mediante volúmenes.10
Procesos en segundo plano
La herramienta de terminal admite ejecución en segundo plano con administración explícita de procesos:10
terminal(command="pytest -v tests/", background=true)
# Returns: {"session_id": "proc_abc123", "pid": 12345}
process(action="list") # Show all running processes
process(action="poll", session_id="proc_abc123") # Check status
process(action="wait", session_id="proc_abc123") # Block until done
process(action="log", session_id="proc_abc123") # Full output
process(action="kill", session_id="proc_abc123") # Terminate
process(action="write", session_id="proc_abc123", data="y") # Send input
El modo PTY (pty=true) habilita herramientas interactivas de CLI como Codex y Claude Code.10
Sudo
Si un comando necesita sudo, Hermes solicita tu contraseña (almacenada en caché durante la sesión). También puedes establecer SUDO_PASSWORD en ~/.hermes/.env.10
Kanban multiagente (v0.13.0+)
v0.13.0 convierte la colaboración multiagente en una primitiva de primera clase: un tablero Kanban duradero que rastrea tareas, estado e identidad de los workers entre agentes y reinicios.18 El tablero es lo que hace que un enjambre de workers de Hermes realmente termine el trabajo, en lugar de quedarse estancado en transferencias fallidas.
| Mecanismo | Qué hace |
|---|---|
| Heartbeats | Cada worker emite pulsos mientras posee una tarea. La ausencia de un pulso marca al worker como sospechoso y libera la tarea para que pueda recuperarse. |
| Reclaim | Un worker diferente puede retomar una tarea abandonada, con el estado completo de la tarea y la salida parcial previa. |
| Detección de zombies | Los workers que salen sin marcar una tarea como completada se bloquean automáticamente para reclamar trabajo nuevo, lo que evita que el enjambre acumule identidades inactivas. |
| Puerta contra alucinaciones | La salida que no supera la puerta devuelve la tarea al tablero con un motivo registrado, en lugar de marcarse como terminada. |
max_retries por tarea |
Sobrescribe el presupuesto de reintentos predeterminado en una tarea que sabes que es frágil. |
| Tableros multiproyecto | Un Hermes home puede alojar varios tableros independientes. |
El tablero Kanban se combina naturalmente con /goal (bucle Ralph de objetivo bloqueado) para el lado del objetivo y con la herramienta existente delegate_task para la semántica de generación. El resultado es un patrón de enjambre donde cada agente comparte una única fuente de verdad sobre qué hacer después, quién lo está haciendo y qué está bloqueado.
¿Qué es un enjambre de Hermes?
Un enjambre consiste en varios workers de Hermes que se ejecutan en paralelo contra un tablero Kanban compartido. No es un subsistema independiente que debas activar: es lo que el tablero hace posible. El tablero proporciona lo único que los agentes paralelos no pueden proporcionarse por sí mismos: una respuesta única y autorizada a ¿qué debería retomar después y alguien ya está trabajando en ello?
v0.15.0 promovió esto de patrón a topología compatible, añadiendo una topología de enjambre para la coordinación de workers en paralelo, descomposición automática de un objetivo de alto nivel en subtareas, anulaciones de modelo por tarea, tareas programadas y gestión de worktrees para que los workers en paralelo no entren en conflicto dentro del mismo checkout.28
| Problema en una configuración multiagente ingenua | Lo que hace el tablero en su lugar |
|---|---|
| Dos workers toman la misma tarea | Se reclama la propiedad de la tarea y se registra la identidad del worker |
| Un worker falla a mitad de tarea y el trabajo desaparece | El heartbeat vence; la tarea se recupera con la salida parcial previa |
| Un worker bloqueado sigue “reteniendo” tareas para siempre | La detección de zombies le impide reclamar trabajo nuevo |
| Un modelo costoso para cada subtarea | Anulaciones de modelo por tarea: modelos económicos para subtareas mecánicas |
| Workers en paralelo editan los mismos archivos | La gestión de worktrees aísla el checkout de cada worker |
La forma práctica: dale un objetivo al enjambre, deja que la descomposición automática lo divida en tareas del tablero
y permite que los workers las reclamen, ejecuten y devuelvan resultados. El presupuesto de reintentos es por tarea (max_retries),
por lo que una subtarea frágil no consume la tolerancia de toda la ejecución. Como el tablero es
duradero, un enjambre sobrevive a los reinicios: los workers vuelven a conectarse y reanudan el trabajo con el mismo estado.
Un enjambre es tan bueno como su descomposición. El tablero coordina a los workers; no convierte un objetivo mal dividido en uno bueno. Las tareas que comparten estado oculto seguirán entrando en conflicto, tengan worktrees o no.
Sistema de Skills
Los skills son documentos de conocimiento bajo demanda que el agente puede cargar cuando los necesita. Siguen un patrón de divulgación progresiva para minimizar el uso de tokens y son compatibles con el estándar abierto de agentskills.io.11
Todos los skills se encuentran en ~/.hermes/skills/ — el directorio principal y fuente de referencia. En una instalación nueva, los skills incluidos se copian desde el repositorio. Los skills instalados desde el Hub y los creados por el agente también se almacenan aquí.11
Divulgación progresiva
Level 0: skills_list() → [{name, description, category}, ...] (~3k tokens)
Level 1: skill_view(name) → Full content + metadata (varies)
Level 2: skill_view(name, path) → Specific reference file (varies)
El agente solo carga el contenido completo del skill cuando realmente lo necesita.11
Formato de SKILL.md
---
name: my-skill
description: Brief description of what this skill does
version: 1.0.0
platforms: [macos, linux] # Optional — restrict to OS platforms
metadata:
hermes:
tags: [python, automation]
category: devops
fallback_for_toolsets: [web] # Conditional activation
requires_toolsets: [terminal] # Conditional activation
config: # Config.yaml settings
- key: my.setting
description: "What this controls"
default: "value"
prompt: "Prompt for setup"
---
# Skill Title
## When to Use
Trigger conditions for this skill.
## Procedure
1. Step one
2. Step two
## Pitfalls
- Known failure modes and fixes
## Verification
How to confirm it worked.
Activación condicional
Los skills pueden mostrarse u ocultarse según las herramientas que estén disponibles. Esto es especialmente útil para los skills de respaldo — alternativas gratuitas o locales que solo deberían aparecer cuando una herramienta prémium no está disponible:11
| Campo | Comportamiento |
|---|---|
fallback_for_toolsets |
El skill se oculta cuando los toolsets enumerados están disponibles |
fallback_for_tools |
Igual, pero verifica herramientas individuales |
requires_toolsets |
El skill se oculta cuando los toolsets enumerados no están disponibles |
requires_tools |
Igual, pero verifica herramientas individuales |
Ejemplo: el skill integrado duckduckgo-search usa fallback_for_toolsets: [web]. Cuando tienes configurada FIRECRAWL_API_KEY, el toolset web está disponible y el agente usa web_search — el skill de DuckDuckGo permanece oculto. Sin la clave de API, el skill de DuckDuckGo aparece automáticamente como respaldo.11
Skills gestionados por el agente
El agente puede crear, actualizar y eliminar sus propios skills mediante la herramienta skill_manage. Esta es la memoria procedimental del agente: cuando resuelve un flujo de trabajo no trivial, guarda el enfoque como un skill para reutilizarlo en el futuro.11
Cuándo crea skills el agente:11 - Después de completar correctamente una tarea compleja (más de 5 llamadas a herramientas) - Cuando encontró errores o callejones sin salida y halló el camino que funciona - Cuando el usuario corrigió su enfoque - Cuando descubrió un flujo de trabajo no trivial
Acciones:11
| Acción | Se usa para |
|---|---|
create |
Crear un skill nuevo desde cero |
patch |
Correcciones específicas (preferido — el más eficiente en tokens) |
edit |
Reescrituras estructurales importantes |
delete |
Eliminar un skill por completo |
write_file |
Agregar o actualizar archivos de apoyo |
remove_file |
Eliminar un archivo de apoyo |
Skill Hub
Explora, busca, instala y administra skills desde registros en línea:611
hermes skills browse # Browse all hub skills
hermes skills browse --source official # Browse official optional skills
hermes skills search kubernetes # Search all sources
hermes skills search react --source skills-sh # Search skills.sh directory
hermes skills inspect openai/skills/k8s # Preview before installing
hermes skills install openai/skills/k8s # Install with security scan
hermes skills install skills-sh/anthropics/skills/pdf --force
hermes skills check # Check for upstream updates
hermes skills update # Reinstall changed hub skills
hermes skills audit # Re-scan installed hub skills
hermes skills uninstall k8s
hermes skills publish skills/my-skill --to github --repo owner/repo
hermes skills tap add myorg/skills-repo # Add custom GitHub source
Fuentes integradas del hub:11
| Fuente | Ejemplo | Notas |
|---|---|---|
official |
official/security/1password |
Skills opcionales distribuidos con Hermes (confianza integrada) |
skills-sh |
skills-sh/vercel-labs/agent-skills/vercel-react-best-practices |
Directorio público de skills de Vercel |
well-known |
well-known:https://mintlify.com/docs/.well-known/skills/mintlify |
Descubrimiento basado en URL desde sitios que publican /.well-known/skills/index.json |
github |
openai/skills/k8s |
Instalaciones directas de repositorios/rutas de GitHub |
clawhub |
— | Marketplace de skills de terceros |
lobehub |
— | Conversión del catálogo de agentes de LobeHub |
browse-sh |
— | Fuente de skills de Browserbase |
Taps predeterminados de GitHub (explorables sin configuración): openai/skills, anthropics/skills, huggingface/skills, NVIDIA/skills, garrytan/gstack. La fuente claude-marketplace se eliminó en v0.20.0; browse-sh la reemplazó en la lista de fuentes.1124
Análisis de seguridad
Todos los skills instalados desde el hub pasan por un escáner de seguridad que verifica la exfiltración de datos, la inyección de prompts, los comandos destructivos, las señales de la cadena de suministro y otras amenazas.11
Niveles de confianza:11
| Nivel | Fuente | Política |
|---|---|---|
builtin |
Se distribuye con Hermes | Siempre confiable |
official |
optional-skills/ en el repositorio |
Confianza integrada, sin advertencia de terceros |
trusted |
Registros confiables (openai/skills, anthropics/skills) |
Política más permisiva |
community |
Todo lo demás | Los hallazgos no peligrosos pueden anularse con --force; los veredictos dangerous siguen bloqueados |
--force puede anular los bloqueos de política no peligrosos para los skills de la comunidad. No anula un veredicto de análisis dangerous.11
Directorios de skills externos
Puedes indicar a Hermes directorios de skills adicionales que se analizan junto con el local:11
skills:
external_dirs:
- ~/.agents/skills
- /home/shared/team-skills
- ${SKILLS_REPO}/skills
Las rutas admiten expansión de ~ y sustitución de variables de entorno ${VAR}. Los directorios externos son de solo lectura — cuando el agente crea o edita un skill, siempre escribe en ~/.hermes/skills/. La precedencia local gana si existe un nombre de skill en ambos lugares.11
Memoria persistente
Hermes cuenta con memoria acotada y curada que persiste entre sesiones. La memoria del agente se compone de dos archivos, ambos almacenados en ~/.hermes/memories/:12
| Archivo | Propósito | Límite de caracteres |
|---|---|---|
MEMORY.md |
Notas personales del agente: datos del entorno, convenciones y aprendizajes | 2.200 caracteres (~800 tokens) |
USER.md |
Perfil del usuario: preferencias, estilo de comunicación y expectativas | 1.375 caracteres (~500 tokens) |
Ambos se insertan en el system prompt como una instantánea congelada al iniciar la sesión. El agente gestiona su propia memoria mediante la herramienta memory: add, replace o remove.12
Patrón de instantánea congelada: la inserción en el system prompt se captura una sola vez al inicio de la sesión y nunca cambia durante ella. Es intencional: preserva la caché de prefijo de LLM para mejorar el rendimiento. Los cambios realizados durante una sesión se guardan en disco de inmediato, pero no aparecen en el system prompt hasta la siguiente sesión.12
Qué guardar
Guarda esto (el agente lo hace de forma proactiva):12
- Preferencias del usuario: “Prefiero TypeScript en lugar de JavaScript” → user
- Datos del entorno: “Este servidor ejecuta Debian 12 con PostgreSQL 16” → memory
- Correcciones: “No uses sudo para los comandos de Docker, el usuario está en el grupo docker” → memory
- Convenciones: “El proyecto usa tabulaciones, líneas de 120 caracteres y docstrings estilo Google” → memory
- Trabajo completado: “La base de datos se migró de MySQL a PostgreSQL el 2026-01-15” → memory
Omite esto:12 - Información trivial u obvia - Datos fáciles de descubrir de nuevo - Volcados de datos sin procesar (demasiado grandes para la memoria) - Información efímera específica de la sesión - Información que ya está en archivos de contexto
Búsqueda de sesiones
Además de MEMORY.md y USER.md, el agente puede buscar en sus conversaciones anteriores mediante la herramienta session_search. Todas las sesiones de CLI y mensajería se almacenan en SQLite (~/.hermes/state.db) con búsqueda de texto completo FTS5. Las consultas devuelven conversaciones anteriores relevantes con resúmenes de Gemini Flash.12
| Función | Memoria persistente | Búsqueda de sesiones |
|---|---|---|
| Capacidad | ~1.300 tokens en total | Ilimitada (todas las sesiones) |
| Velocidad | Instantánea (en el system prompt) | Requiere búsqueda + resumen de LLM |
| Caso de uso | Datos clave siempre disponibles | Encontrar conversaciones anteriores específicas |
| Gestión | Curada manualmente por el agente | Automática: todas las sesiones se almacenan |
| Costo de tokens | Fijo por sesión (~1.300 tokens) | Bajo demanda |
Proveedores de memoria externos
Para disponer de memoria persistente más profunda que MEMORY.md y USER.md, Hermes incluye ocho plugins de proveedores de memoria externos: Honcho, OpenViking, Mem0, Hindsight, Holographic, RetainDB, ByteRover y Supermemory.12
Los proveedores externos se ejecutan junto con la memoria integrada (nunca la reemplazan) y añaden capacidades como grafos de conocimiento, búsqueda semántica, extracción automática de datos y modelado de usuarios entre sesiones:612
hermes memory setup # Pick a provider and configure it
hermes memory status # Check what's active
hermes memory off # Disable external provider (built-in only)
Solo puede haber un proveedor externo activo a la vez. La memoria integrada siempre está activa.6
Reanudación automática de sesiones (v0.13.0+)
La v0.13.0 permite sobrevivir a interrupciones a mitad de la ejecución del agente. El gateway reanuda automáticamente las sesiones interrumpidas después de reiniciarse; los reinicios mediante /update preservan el estado de la sesión durante la actualización; y las recargas de archivos fuente durante el desarrollo mantienen activa la sesión en lugar de forzar una nueva.18 En la práctica, el trabajo prolongado del gateway y los trabajos impulsados por cron ya no restablecen su ventana de contexto cuando se reinicia el proceso.
Checkpoints v2 (v0.13.0+)
La persistencia de estado se reescribe en la v0.13.0 como un diseño de almacenamiento único con poda real, límites de seguridad para el disco y sin repositorios sombra huérfanos.18 El sistema de checkpoints anterior acumulaba estado en disco entre profiles de larga duración; el almacenamiento v2 establece un límite estricto para el espacio local de checkpoints y elimina la contabilidad duplicada que provocaba ese crecimiento. No se requiere ningún cambio de configuración visible para el usuario; la siguiente escritura de checkpoint utilizará la ruta v2.
Personalidad y SOUL.md
SOUL.md es la identidad principal de una instancia de Hermes. Ocupa la posición n.º 1 en el system prompt y reemplaza la identidad predeterminada codificada.13
Hermes crea automáticamente un SOUL.md predeterminado en ~/.hermes/SOUL.md (o $HERMES_HOME/SOUL.md para profiles personalizados). Los archivos existentes del usuario nunca se sobrescriben. Hermes solo carga SOUL.md desde HERMES_HOME: no busca en el directorio de trabajo actual. Esto hace que la personalidad sea predecible entre proyectos.13
Qué debe incluir SOUL.md
Úsalo para pautas duraderas de voz y personalidad:13 - tono - estilo de comunicación - nivel de franqueza - estilo de interacción predeterminado - qué evitar desde el punto de vista estilístico - cómo debe manejar Hermes la incertidumbre, el desacuerdo y la ambigüedad
Úsalo menos para:13 - instrucciones puntuales de un proyecto - rutas de archivos - convenciones del repositorio - detalles temporales del flujo de trabajo
Eso pertenece a AGENTS.md, no a SOUL.md.
SOUL.md frente a AGENTS.md
Esta es la distinción más importante en la gestión de identidad de Hermes:13
SOUL.md: identidad, tono, estilo, valores predeterminados de comunicación y comportamiento a nivel de personalidad.
AGENTS.md: arquitectura del proyecto, convenciones de programación, preferencias de herramientas, flujos de trabajo específicos del repositorio, comandos, puertos, rutas y notas de implementación.
Una regla útil: si debe acompañarte a todas partes, pertenece a SOUL.md. Si pertenece a un proyecto, pertenece a AGENTS.md.13
Personalidades integradas
Hermes incluye personalidades integradas a las que puedes cambiar con /personality:13
| Nombre | Descripción |
|---|---|
helpful |
Asistente amigable de propósito general |
concise |
Respuestas breves y directas |
technical |
Experto técnico detallado y preciso |
creative |
Pensamiento innovador y fuera de lo común |
teacher |
Educador paciente con ejemplos claros |
kawaii |
Expresiones tiernas, destellos y entusiasmo |
catgirl |
Neko-chan con expresiones felinas |
pirate |
Capitán Hermes, bucanero experto en tecnología |
shakespeare |
Prosa barda con un toque dramático |
surfer |
Vibra relajada de surfista |
noir |
Narración de detective duro |
uwu |
Máxima ternura con lenguaje uwu |
philosopher |
Contemplación profunda ante cada consulta |
hype |
ENERGÍA MÁXIMA |
Personalidades personalizadas en config.yaml:13
agent:
personalities:
codereviewer: >
You are a meticulous code reviewer. Identify bugs, security issues,
performance concerns, and unclear design choices. Be precise and constructive.
Luego cambia con /personality codereviewer.
SOUL.md frente a /personality
SOUL.md es la voz base. /personality es una superposición a nivel de sesión.13 Mantén un SOUL.md predeterminado pragmático y usa /personality teacher para una conversación de tutoría o /personality creative para una lluvia de ideas.
Nous Tool Gateway (v0.10.0+)
Desde Hermes Agent v0.10.0 (2026-04-16), los suscriptores de pago de Nous Portal obtienen acceso administrado a un conjunto seleccionado de herramientas mediante sus credenciales existentes de Portal, sin claves API adicionales que gestionar.30 El propio CLI de Hermes sigue teniendo licencia MIT y siendo completamente de código abierto. Lo que cambió es que tu autenticación de Portal ahora desbloquea más que la inferencia de modelos.
Qué incluye el gateway
| Herramienta | Proveedor | Caso de uso |
|---|---|---|
| Búsqueda web | Firecrawl | Recuperación de información para agentes que necesitan datos actualizados |
| Generación de imágenes | FAL / FLUX 2 Pro | Genera imágenes en línea sin configurar una clave de FAL |
| Texto a voz | OpenAI TTS | Salida hablada en messaging gateways |
| Automatización del navegador | Browser Use | Navegación y extracción de datos sin interfaz gráfica |
Cómo funciona
El gateway es opcional para cada herramienta mediante un nuevo campo de configuración use_gateway. Si tienes credenciales de Portal en hermes auth y habilitas el gateway para una herramienta, las llamadas de esa herramienta se enrutan a través de Portal. De lo contrario, se usa tu clave API directa (si existe).
# config.yaml — per-tool gateway opt-in
tools:
web_search:
provider: firecrawl
use_gateway: true # route via Nous Portal subscription
image_generation:
provider: fal
use_gateway: true
Precedencia en tiempo de ejecución: cuando el gateway está disponible y una herramienta tiene use_gateway: true, Hermes prefiere el gateway incluso si también tienes configurada una clave API directa. Esto importa para la facturación: las llamadas al gateway consumen tu suscripción de Portal, no el saldo de tu clave API directa.
Habilitar el gateway
hermes model # select Nous Portal (OAuth flow)
hermes tools # per-platform tool picker integrates gateway tools
hermes status # confirms gateway/subscription detection
La suscripción se detecta automáticamente a partir de las credenciales de Portal OAuth que ya tienes en hermes auth; no hay un paso de inicio de sesión independiente. Desde v0.19.0, también puedes administrar la suscripción desde una sesión: /subscription muestra tu plan y la asignación restante, previsualiza exactamente cuánto cuesta una mejora o cuándo entra en vigor una reducción de plan, y aplica el cambio con avisos de cambios programados y una opción para deshacer; /topup agrega crédito. La aplicación de escritorio cuenta con una pestaña equivalente de configuración de facturación.25
Precios y acceso
Los precios y nombres de los niveles se publican en la página de precios de Nous Portal (https://portal.nousresearch.com/pricing). Esta guía no enumera los niveles porque son responsabilidad del producto Portal, no del CLI de Hermes, y cambian independientemente de las versiones de Hermes. Regístrate en https://portal.nousresearch.com/ y consulta la página de precios para conocer los niveles actuales.
Aviso de desuso
- La variable de entorno
HERMES_ENABLE_NOUS_MANAGED_TOOLSse eliminó en v0.10.0. Las herramientas administradas ahora se habilitan mediante el campo de configuraciónuse_gatewaypor herramienta y dependen del estado de tu suscripción de Portal.30
Contexto: lo que esta versión no es
El CLI de Hermes Agent no está restringido por una suscripción. El proyecto sigue teniendo licencia MIT; todas las funciones principales (CLI, skills, memoria, messaging gateway, cron, MCP, panel local, BYOK para todos los proveedores) funcionan de extremo a extremo sin pagar a nadie. v0.10.0 añade una vía práctica para quienes ya pagan por Nous Portal; no elimina nada de la opción gratuita.
Messaging Gateway
Hermes puede ejecutarse como un proceso de gateway de larga duración que se conecta a 28 plataformas de mensajería desde un único proceso de gateway: Telegram, Discord, Slack, WhatsApp, Signal, SMS, Email, Home Assistant, Mattermost, Matrix, DingTalk, Feishu/Lark, WeCom, Weixin (WeChat), BlueBubbles (iMessage), QQBot, Microsoft Teams, Tencent Yuanbao, Google Chat, LINE, SimpleX Chat y un adaptador Webhook genérico.329171819 v0.9.0 añadió iMessage mediante BlueBubbles (registro automático de webhook, asistente de configuración y resistencia ante fallos) y compatibilidad nativa con WeChat mediante iLink Bot API con modo de callback de WeCom para aplicaciones empresariales.16 v0.11.0 añadió QQBot.29 v0.12.0 añadió Microsoft Teams y Tencent Yuanbao.17 v0.13.0 añadió Google Chat como la vigésima plataforma, aprovechando la misma arquitectura de adaptadores conectables; IRC y Microsoft Teams también se migraron al nuevo patrón de adaptadores con hooks genéricos de plugins env_enablement_fn / cron_deliver_env_var.18 v0.14.0 añade LINE y SimpleX Chat y completa la pila de Microsoft Teams de extremo a extremo con autenticación de Graph, receptor de webhook, tiempo de ejecución del pipeline y entrega saliente.19 v0.17.0 (19 de junio de 2026) añade iMessage sin relay mediante Photon Spectrum (autenticación de dispositivo OAuth con hermes photon login, sin necesidad de relay de Mac/BlueBubbles), el adaptador oficial de WhatsApp Business Cloud API (que reemplaza el requisito de un proceso puente), grupos y adjuntos nativos de SimpleX, y Raft como plugin de plataforma incluido.21
Configuración
hermes gateway setup # Interactive platform configuration
hermes gateway install # Install as user service (systemd/launchd)
hermes gateway start # Start the installed service
hermes gateway stop
hermes gateway restart
hermes gateway status
hermes gateway run # Run in foreground (debugging)
La configuración interactiva te guía para conectar cada plataforma: tokens API, IDs de bots, asignaciones de canales y listas de permitidos.6
Cómo fluyen los mensajes
Según la documentación de arquitectura upstream:3
Platform event → Adapter.on_message() → MessageEvent
→ GatewayRunner._handle_message()
→ authorize user
→ resolve session key
→ create AIAgent with session history
→ AIAgent.run_conversation()
→ deliver response back through adapter
Todas las plataformas de mensajería usan el mismo ciclo de conversación AIAgent que el CLI. Por eso los comandos slash funcionan de forma idéntica en ambos lugares y un trabajo cron programado en Telegram puede entregar su resultado a Discord: la diferencia entre plataformas está únicamente en el borde.3
v0.19.0 añade enrutamiento de mensajes basado en profiles y entrega duradera. Un único gateway multiplexado que comparte un token de bot puede enrutar guilds, canales o hilos específicos a distintos profiles, cada uno con configuración, skills, memoria y secretos completamente aislados, mediante una anulación de GATEWAY_MULTIPLEX_PROFILES; además, una serie de mejoras de robustez impide que un profile mal configurado derribe todo el gateway. Internamente, el índice de enrutamiento se trasladó a state.db (sessions.json ahora es un espejo heredado opcional), y las respuestas finales se registran en un libro mayor duradero de obligaciones de entrega alrededor del envío de la plataforma: una respuesta terminada que coincide con un fallo del gateway se reentrega en el siguiente inicio en lugar de perderse silenciosamente.25
Autorización y vinculación de usuarios
hermes pairing list # Show pending and approved users
hermes pairing approve <platform> <code>
hermes pairing revoke <platform> <user-id>
hermes pairing clear-pending
Los códigos de vinculación evitan que desconocidos al azar hablen con tu gateway. Un usuario envía un código de vinculación desde su plataforma de mensajería; lo apruebas con hermes pairing approve; a partir de entonces queda autorizado.6
Tareas programadas (Cron)
Hermes cuenta con un sistema cron de primera clase en el que los trabajos son tareas de agentes, no comandos de shell. Cada trabajo programado se ejecuta mediante un AIAgent nuevo con el prompt configurado, skills adjuntos opcionales, y entrega resultados a cualquier plataforma:36
hermes cron list
hermes cron create --prompt "Check HN for AI news and summarize" --schedule "0 9 * * *" --deliver telegram
hermes cron edit <id>
hermes cron pause <id>
hermes cron resume <id>
hermes cron run <id> # Trigger now on the next tick
hermes cron remove <id>
hermes cron status # Check if scheduler is running
hermes cron tick # Run due jobs once and exit
O crea uno de forma conversacional dentro de un chat de mensajería:
Every morning at 9am, check Hacker News for AI news and send me a summary on Telegram.
El agente configurará el trabajo cron mediante sus herramientas. Los trabajos persisten en JSON y sobreviven a los reinicios.3
Integración de MCP
Hermes admite Model Context Protocol tanto como cliente como servidor:6
Como cliente: conecta Hermes a servidores externos de MCP para ampliar su superficie de herramientas:
hermes mcp add <name> --url https://example.com/mcp
hermes mcp add <name> --command npx --args "-y,@modelcontextprotocol/server-github"
hermes mcp list
hermes mcp test <name>
hermes mcp remove <name>
hermes mcp configure <name> # Toggle individual tool selection
O manualmente en config.yaml:14
mcp_servers:
github:
command: npx
args: ["-y", "@modelcontextprotocol/server-github"]
env:
GITHUB_PERSONAL_ACCESS_TOKEN: "ghp_xxx"
Desde v0.19.0, las herramientas de MCP se exponen al modelo siguiendo la convención de nombres mcp__server__tool: cada nombre de herramienta incluye el nombre de su servidor, por lo que dos servidores que expongan la misma herramienta ya no entran en conflicto; además, las notificaciones de registro del servidor MCP aparecen en agent.log.25
Como servidor: expón conversaciones de Hermes a otros agentes:
hermes mcp serve
hermes mcp serve -v # Verbose
Compresión de contexto
Hermes comprime automáticamente las conversaciones largas para mantenerse dentro de la ventana de contexto de tu modelo. El resumidor de compresión es una llamada LLM independiente; puedes dirigirla a cualquier proveedor o endpoint.4
compression:
enabled: true
threshold: 0.50 # Compress at this % of context limit
target_ratio: 0.20 # Fraction to preserve as recent tail
protect_last_n: 20 # Min recent messages to keep uncompressed
summary_model: "google/gemini-3-flash-preview"
summary_provider: "auto" # "auto", "openrouter", "nous", "codex", "main", etc.
summary_base_url: null # Custom OpenAI-compatible endpoint
Opciones de proveedor:4
summary_provider |
summary_base_url |
Resultado |
|---|---|---|
auto (predeterminado) |
sin configurar | Detecta automáticamente el mejor proveedor disponible |
nous / openrouter / etc. |
sin configurar | Fuerza ese proveedor y usa su autenticación |
| cualquiera | configurado | Usa directamente el endpoint personalizado (se ignora el proveedor) |
summary_model debe admitir una longitud de contexto al menos tan grande como la de tu modelo principal, ya que recibe toda la sección intermedia de la conversación para comprimirla.4
Advertencias de presión de presupuesto
Cuando el agente trabaja en una tarea compleja con muchas llamadas a herramientas, puede agotar su presupuesto de iteraciones (predeterminado: 500 turnos desde la v0.20.0, antes 90) sin darse cuenta. La presión de presupuesto advierte automáticamente al modelo:4
| Umbral | Nivel | Lo que ve el modelo |
|---|---|---|
| 70% | Precaución | [BUDGET: 350/500. 150 iterations left. Start consolidating.] |
| 90% | Advertencia | [BUDGET WARNING: 450/500. Only 50 left. Respond NOW.] |
Tiempos de espera de streaming
La conexión de streaming de LLM tiene dos capas de tiempo de espera que se ajustan automáticamente para proveedores locales (localhost, IP de LAN):4
| Tiempo de espera | Predeterminado | Proveedores locales | Variable de entorno |
|---|---|---|---|
| Tiempo de espera de lectura del socket | 120 s | Se eleva automáticamente a 1800 s | HERMES_STREAM_READ_TIMEOUT |
| Detección de stream inactivo | 180 s | Se desactiva automáticamente | HERMES_STREAM_STALE_TIMEOUT |
| Llamada de API (sin streaming) | 1800 s | Sin cambios | HERMES_API_TIMEOUT |
El tiempo de espera de lectura del socket se eleva a 30 minutos para endpoints locales porque los LLM locales pueden tardar minutos en el prefill de contextos grandes antes de producir el primer token.4
Panel web local (v0.9.0+)
Un panel basado en navegador para administrar tu Hermes Agent localmente. Configura ajustes, supervisa sesiones, explora skills y administra tu gateway sin tocar archivos de configuración ni la terminal.16 Inícialo con hermes dashboard. Es la ruta de incorporación más sencilla para usuarios nuevos que prefieren una GUI.
Supervisión de procesos en segundo plano (v0.9.0+)
watch_patterns te permite configurar patrones para supervisar la salida de procesos en segundo plano y recibir notificaciones en tiempo real cuando coincidan.16 Supervisa errores, espera eventos específicos (“listening on port”) o vigila registros de compilación, todo sin hacer polling. Combinado con notify_on_complete de la v0.8.0 (que notifica al completarse una tarea en segundo plano), Hermes ahora cuenta con una capa completa de observabilidad de procesos en segundo plano.15
Context engine intercambiable (v0.9.0+)
La administración del contexto ahora es un componente intercambiable mediante hermes plugins. Sustituye context engines personalizados que controlan lo que ve el agente en cada turno: filtrado, resumen o inyección de contexto específica del dominio.16 Esto desacopla la estrategia de contexto del bucle principal del agente, lo que permite personalizar el contexto por proyecto o dominio.
Respaldo y restauración (v0.9.0+)
hermes backup crea un archivo completo de tu configuración, sesiones, skills y memoria. hermes import restaura desde un archivo de respaldo.16 Úsalo para migrar entre computadoras, crear instantáneas antes de cambios importantes o compartir una configuración confiable con tus compañeros de equipo.
Compatibilidad con Termux / Android (v0.9.0+)
Hermes se ejecuta de forma nativa en Android mediante Termux. Las rutas de instalación adaptadas, las optimizaciones de TUI para pantallas móviles, la compatibilidad con backend de voz y el comando /image funcionan en el dispositivo.16
Refuerzo de seguridad (v0.13.0+)
La v0.13.0 cerró 8 problemas de seguridad P0 y cambió un valor predeterminado a favor del usuario.18 La v0.14.0 continúa con otros 12 cierres P0 y 50 P1, incluidos el refuerzo contra fuerza bruta de sudo / sudo-stdin, correcciones para omitir comandos peligrosos, sanitización de errores de herramientas antes de reinyectarlos al modelo, autenticación de API para plugins del panel, cobertura SSRF de skills-hub y análisis de avisos de cadena de suministro durante la instalación.19
| Corrección | Qué cambió |
|---|---|
| Redacción de secretos activada de forma predeterminada | Antes era opcional. Los registros y las cargas de hermes debug share redactan secretos, salvo que se desactive explícitamente. La v0.12.0 había desactivado la redacción de forma predeterminada tras informes de corrupción de payloads; la v0.13.0 la vuelve a activar como base más segura. |
| Omisión de DM entre guilds de Discord (CVSS 8.1) | Las listas de permisos por rol de Discord ahora se limitan a cada guild, cerrando una vía por la que un rol de usuario en una guild autorizaba DM en todas ellas. |
| Restricciones predeterminadas de WhatsApp | El adaptador de WhatsApp rechaza a desconocidos de forma predeterminada y nunca responde en el chat propio. |
| Ventana TOCTOU de MCP OAuth | Se cerró una condición de carrera durante el guardado de credenciales en los flujos de MCP OAuth. |
TOCTOU de auth.json de CLI |
Se cerró una ventana TOCTOU análoga en el escritor de credenciales para el almacén de autenticación de CLI. |
| Nivel mínimo de SSRF del navegador | El enrutamiento híbrido impone un nivel mínimo de SSRF para metadatos de nube contra solicitudes que intentan alcanzar 169.254.169.254 y equivalentes. |
| Análisis de inyección de prompts en cron | Los prompts ensamblados (incluido el contenido de skills cargado) se analizan en busca de inyección de prompts antes de ejecutar el trabajo cron. |
Redacción de hermes debug share |
Las cargas de depuración compartidas redactan el contenido de los registros en el momento de cargarlos, no solo al escribirlos. |
Si mantienes una implementación de Hermes, trata la v0.13.0 y la v0.14.0 como actualizaciones relevantes para la seguridad, no solo como lanzamientos de funciones. La v0.13.0 cierra la omisión entre guilds de Discord y dos ventanas TOCTOU; la v0.14.0 añade otra ronda de refuerzo para el manejo de sudo, la reinyección de errores de herramientas, los API de plugins, SSRF de skills-hub y avisos de dependencias.
Arquitectura para profesionales
Esta sección es para quienes quieren entender qué ocurre bajo el capó para poder depurarlo, ampliarlo o razonar sobre el rendimiento. Es una síntesis de la documentación de arquitectura upstream.3
Puntos de entrada → AIAgent
Cada punto de entrada en Hermes termina llamando a AIAgent.run_conversation():
┌──────────────────────────────────────────────────────────────────┐
│ Entry Points │
│ │
│ CLI (cli.py) Gateway (gateway/run.py) ACP (acp_adapter/) │
│ Batch Runner API Server Python Library │
└──────────┬──────────────┬───────────────────────┬────────────────┘
│ │ │
▼ ▼ ▼
┌──────────────────────────────────────────────────────────────────┐
│ AIAgent (run_agent.py) │
│ │
│ ┌─────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Prompt │ │ Provider │ │ Tool │ │
│ │ Builder │ │ Resolution │ │ Dispatch │ │
│ └──────┬──────┘ └──────┬───────┘ └──────┬───────┘ │
│ │ │ │ │
│ ┌──────┴───────┐ ┌──────┴───────┐ ┌──────┴───────┐ │
│ │ Compression │ │ 3 API Modes │ │ Tool Registry│ │
│ │ & Caching │ │ chat_compl │ │ 47 tools │ │
│ │ │ │ codex_resp │ │ 20 toolsets │ │
│ │ │ │ anthropic │ │ │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
└──────────────────────────────────────────────────────────────────┘
Diagrama adaptado de la documentación de arquitectura upstream.3
«47 tools / 20 toolsets» frente a «28 tools» en tu banner. El conteo de «47 tools» es el registro total de tools del repositorio upstream: cada tool cuyo código fuente incluye Hermes, en todos los toolsets. Tu CLI en ejecución mostrará un número menor en su banner de inicio (la instalación con la que verifiqué esta guía informa 28 tools / 89 skills). No es un error. Muchos toolsets son opcionales y deben habilitarse explícitamente en config.yaml, bajo toolsets:: adaptadores de plataformas de mensajería, automatización de navegador, herramientas de scraping más pesadas, etc. El total del registro es «lo que está disponible»; el número del banner es «lo que está habilitado en tu profile actual». Consulta qué toolsets están activos con hermes tools --list y habilita o deshabilita toolsets individuales con el bloque toolsets: en ~/.hermes/config.yaml (o con /tools list / /tools enable <name> / /tools disable <name> dentro de una sesión en ejecución; eliminar un tool provoca un reinicio de sesión para que el agente reconstruya su manifiesto de tools).
Los tres modos API
Hermes abstrae las diferencias entre providers en tres modos API, seleccionados automáticamente durante la ejecución:3
| Modo API | Usado por |
|---|---|
chat_completions |
OpenRouter, z.ai, Kimi, MiniMax, DeepSeek, Alibaba, la mayoría de los endpoints personalizados, cualquier servidor compatible con OpenAI |
codex_responses |
OpenAI Codex (mediante ChatGPT OAuth) |
anthropic_messages |
Anthropic API (nativo), Anthropic OAuth, proxies compatibles con Anthropic |
El resolvedor runtime_provider.py asigna tuplas de (provider, model) a (api_mode, api_key, base_url) para más de 18 providers, y gestiona flujos de OAuth, pools de credenciales y resolución de alias.3
Flujo de datos en una sesión de CLI
User input → HermesCLI.process_input()
→ AIAgent.run_conversation()
→ prompt_builder.build_system_prompt()
→ runtime_provider.resolve_runtime_provider()
→ API call (chat_completions / codex_responses / anthropic_messages)
→ tool_calls? → model_tools.handle_function_call() → loop
→ final response → display → save to SessionDB
De la página de arquitectura upstream.3
Orden de ensamblaje del prompt
La pila de prompts incluye:13
SOUL.md(identidad del agente, o alternativa integrada si no está disponible)- Guía de comportamiento adaptada a tools
- Contexto de memoria/usuario (
MEMORY.md,USER.md) - Guía de skills
- Archivos de contexto (
AGENTS.md,.cursorrules) - Marca de tiempo
- Indicaciones de formato específicas de la plataforma
- Capas opcionales sobre el system prompt, como
/personality
SOUL.md es la base: todo lo demás se construye sobre ella.13
Almacenamiento de sesiones
Almacenamiento de sesiones basado en SQLite con búsqueda de texto completo FTS5. Las sesiones tienen seguimiento de linaje (relación padre/hijo entre compresiones), aislamiento por plataforma y escrituras atómicas con gestión de contención.3
Sistema de plugins
Tres fuentes de descubrimiento: ~/.hermes/plugins/ (usuario), .hermes/plugins/ (proyecto) y puntos de entrada de pip. Los plugins registran tools, hooks y comandos de CLI mediante un contexto API. Los providers de memoria son un tipo especializado de plugin bajo plugins/memory/.3
hermes plugins # Interactive enable/disable UI
hermes plugins install <repo> # Install from Git URL or owner/repo
hermes plugins enable <name>
hermes plugins disable <name>
hermes plugins list
Principios de diseño
De la página de arquitectura upstream:3
| Principio | Qué significa en la práctica |
|---|---|
| Estabilidad del prompt | El system prompt no cambia a mitad de una conversación. No hay mutaciones que invaliden la caché, salvo acciones explícitas del usuario (/model) |
| Ejecución observable | Cada llamada a un tool es visible para el usuario mediante callbacks. Actualizaciones de progreso en CLI (spinner) y gateway (mensajes de chat) |
| Interrumpible | Las llamadas API y la ejecución de tools pueden cancelarse a mitad de ejecución mediante entrada del usuario o señales |
| Núcleo independiente de la plataforma | Una clase AIAgent sirve a CLI, gateway, ACP, batch y servidor API. Las diferencias entre plataformas residen en el punto de entrada |
| Acoplamiento débil | Los subsistemas opcionales (MCP, plugins, providers de memoria, entornos de RL) usan patrones de registro y control check_fn, no dependencias rígidas |
| Aislamiento de profiles | Cada profile obtiene su propio HERMES_HOME, configuración, memoria, sesiones y PID de gateway. Varios profiles se ejecutan de forma simultánea |
Migración desde OpenClaw
Hermes Agent es el sucesor de OpenClaw. Si estás migrando desde una instalación existente de OpenClaw:65
hermes claw migrate --dry-run # Preview what would be migrated
hermes claw migrate --preset full # Full migration including API keys
hermes claw migrate --preset user-data --overwrite # User data only, no secrets
hermes claw migrate --source /custom/path # Non-default OpenClaw location
hermes claw migrate lee de ~/.openclaw de forma predeterminada (también detecta automáticamente los directorios heredados ~/.clawdbot y ~/.moldbot) y escribe en ~/.hermes.6
Importado directamente (más de 30 categorías): SOUL.md, MEMORY.md, USER.md, AGENTS.md, skills de 4 directorios de origen, modelo predeterminado, providers personalizados, servidores MCP, tokens y listas de permitidos de plataformas de mensajería (Telegram, Discord, Slack, WhatsApp, Signal, Matrix, Mattermost), valores predeterminados del agente (esfuerzo de razonamiento, compresión, demora humana, zona horaria, sandbox), políticas de reinicio de sesión, reglas de aprobación, configuración de TTS, ajustes del navegador, ajustes de tools, tiempo de espera de exec, lista de permitidos de comandos, configuración de gateway y claves API de 3 fuentes.6
Archivado para revisión manual: trabajos cron, plugins, hooks/webhooks, backend de memoria (QMD), configuración del registro de skills, UI/identidad, registro, configuración multiagente, enlaces de canales, IDENTITY.md, TOOLS.md, HEARTBEAT.md, BOOTSTRAP.md.6
La resolución de claves API verifica tres fuentes en orden de prioridad: valores de configuración → ~/.openclaw/.env → auth-profiles.json.6
Solución de problemas
“No inference provider configured. Run ‘hermes model’ to choose a provider and model”
El primer error que aparece en toda instalación nueva: Hermes aún no tiene un proveedor resuelto. Significa exactamente lo que dice: ninguna de las tres rutas de autenticación ha generado un proveedor utilizable. Ejecuta:
hermes model
El selector interactivo recorre todos los proveedores compatibles, incluidos los flujos de código de dispositivo de OAuth (Nous Portal, GitHub Copilot, Anthropic, OpenAI Codex) y endpoints personalizados para servidores autoalojados. Si esperabas que ya hubiera un proveedor configurado, hermes doctor muestra qué credenciales puede ver Hermes realmente; las causas habituales son una clave de API configurada en el lugar incorrecto (debe estar en .env o configurarse mediante hermes config set, no en el perfil de tu shell), una credencial de OAuth vencida en ~/.hermes/auth.json, o un endpoint personalizado de config.yaml que perdió su base_url. Las rutas de autenticación se explican en profundidad en Autenticación y proveedores.27
“Clave de API no configurada”
Ejecuta hermes model para configurar el proveedor de forma interactiva, o hermes config set OPENROUTER_API_KEY your_key. El comando hermes doctor te indicará exactamente qué claves faltan.7
“Context limit: 2048 tokens” al iniciar (modelos locales)
Hermes detecta automáticamente la longitud de contexto desde el endpoint /v1/models de tu servidor, pero muchos servidores locales informan valores predeterminados bajos. Configúrala explícitamente en config.yaml:2
model:
default: your-model
provider: custom
base_url: http://localhost:11434/v1
context_length: 32768
Las llamadas a herramientas aparecen como texto en lugar de ejecutarse
Tu servidor no tiene habilitada la llamada a herramientas, o el modelo no la admite a través de la implementación del servidor.2
| Servidor | Solución |
|---|---|
| llama.cpp | Agrega --jinja al comando de inicio |
| vLLM | Agrega --enable-auto-tool-choice --tool-call-parser hermes |
| SGLang | Agrega --tool-call-parser qwen (o el analizador correspondiente) |
| Ollama | La llamada a herramientas está habilitada de forma predeterminada; verifica que tu modelo la admita con ollama show <model> |
| LM Studio | Actualiza a 0.3.6+ y usa un modelo con compatibilidad nativa con herramientas |
Las respuestas se cortan a mitad de la oración
Hay dos causas posibles:2
- Límite de salida bajo (
max_tokens) en el servidor: SGLang usa de forma predeterminada 128 tokens por respuesta. Configura--default-max-tokensen el servidor omodel.max_tokensenconfig.yaml. - Agotamiento del contexto: el modelo llenó su ventana de contexto. Aumenta
model.context_lengtho habilita la compresión de contexto en Hermes.
“Connection refused” desde WSL2 hacia un servidor de modelos alojado en Windows
WSL2 usa un adaptador de red virtual con su propia subred: localhost dentro de WSL2 se refiere a la máquina virtual Linux, no al host de Windows. Tienes dos opciones:2
Red en espejo (Windows 11 22H2+): edita %USERPROFILE%\.wslconfig:
[wsl2]
networkingMode=mirrored
Después ejecuta wsl --shutdown y reinicia. Ahora localhost funciona bidireccionalmente.
Alternativa con la IP del host (Windows anteriores): obtén la IP del host de Windows desde WSL2 y úsala en lugar de localhost:
ip route show | grep -i default | awk '{ print $3 }'
# Use that IP as the base_url host
También necesitas que el servidor de modelos se vincule a 0.0.0.0, no a 127.0.0.1: configura OLLAMA_HOST=0.0.0.0 para Ollama, agrega --host 0.0.0.0 para llama-server/SGLang o habilita “Serve on Network” en LM Studio.2
¿Dónde está todo?
hermes status y hermes dump son tus aliados aquí. hermes logs list muestra todos los archivos de registro con sus tamaños. hermes config path imprime la ubicación del archivo de configuración. hermes config env-path imprime la ubicación de .env.6
Preguntas frecuentes
¿Cuál es la diferencia entre Hermes Agent y Claude Code?
Claude Code es el CLI oficial de Anthropic, limitado a los modelos de Anthropic. Hermes Agent es un framework de agentes de código abierto de Nous Research que funciona con cualquier proveedor compatible con OpenAI: Nous Portal, OpenRouter, Anthropic, GitHub Copilot, z.ai, Kimi, MiniMax, DeepSeek, Hugging Face, Google o tu propio endpoint autoalojado.12 Hermes también incluye un gateway de mensajería para Telegram/Discord/Slack/WhatsApp/Signal que Claude Code no tiene.
¿Puedo usar Hermes con una clave de API de Anthropic?
Sí. Hay tres formas:2
- Configura
ANTHROPIC_API_KEYen~/.hermes/.envy ejecutahermes chat --provider anthropic --model claude-sonnet-4-6 - Ejecuta
hermes modely selecciona Anthropic: Hermes usará el almacén de credenciales de Claude Code cuando esté disponible - Configura un
ANTHROPIC_TOKENmanual (token de configuración o token de OAuth) como alternativa
La opción 2 es preferible si ya usas Claude Code en la misma computadora: mantiene actualizables las credenciales actualizables de Claude.
¿Cómo cambio de proveedor sin perder mi conversación?
Usa /model provider:model dentro de una sesión. El historial de conversación, la memoria y las skills se conservan:9
/model zai:glm-5
/model openrouter:anthropic/claude-sonnet-4
/model custom:local:qwen-2.5
Configuré Anthropic, pero vision/web/compression no funcionan
Estás usando la alternativa de modelo auxiliar. La visión, el resumen web, la compresión y otras tareas secundarias usan un LLM auxiliar independiente; de forma predeterminada, Gemini Flash mediante detección automática (OpenRouter → Nous → Codex). Si ninguno de ellos está configurado y solo tienes Anthropic configurado, estas funciones se degradan silenciosamente.4
Solución: agrega una OPENROUTER_API_KEY para tareas auxiliares o reconfigura las ranuras auxiliares para usar tu proveedor principal. Ten en cuenta que la compresión de contexto vive en su propio bloque superior compression: y recibe summary_provider, no auxiliary.compression.provider: la ranura auxiliary.compression solo expone un timeout. Solución completa:
auxiliary:
vision: { provider: "main" }
web_extract: { provider: "main" }
compression:
summary_provider: "main"
¿Cuál es la diferencia entre SOUL.md y AGENTS.md?
SOUL.md es la identidad de tu agente: tono, estilo y valores predeterminados de comunicación. Se encuentra en ~/.hermes/SOUL.md y te acompaña a todas partes. AGENTS.md es específico del proyecto: arquitectura, convenciones, comandos y rutas, y se encuentra en el directorio de tu proyecto.13 Si debe acompañarte a todas partes, usa SOUL.md. Si pertenece a un proyecto, usa AGENTS.md.
¿Cómo ejecuto varias instancias de Hermes en paralelo?
Con profiles. Cada profile obtiene su propio HERMES_HOME, configuración, memoria, sesiones y PID de gateway:6
hermes profile create work --clone
hermes profile use work # Sticky default
hermes -p work chat -q "..." # One-off without switching
hermes profile alias work --name h-work # Wrapper script
¿Hermes admite LLMs locales?
Sí, mediante la ruta de endpoint personalizado. Hermes funciona con cualquier servidor compatible con OpenAI: Ollama, vLLM, SGLang, llama.cpp/llama-server, LM Studio, LocalAI, Jan o el tuyo propio.2 Consulta Endpoints personalizados y autoalojados para conocer la configuración de cada servidor.
¿Por qué mi banner de inicio muestra menos herramientas de las que la guía dice que tiene Hermes?
La guía cita 47 herramientas / 20 toolsets del registro de arquitectura upstream: es el total completo de herramientas cuyo código fuente Hermes incluye en todos los toolsets. Tu instalación en ejecución muestra un número menor en el banner (la instalación de referencia usada para esta guía informa 28 herramientas) porque Hermes solo habilita el conjunto predeterminado de toolsets al iniciar. Muchos toolsets son opcionales: los adaptadores del gateway de mensajería, la automatización del navegador, las pilas de scraping más exigentes y varias integraciones especializadas deben incluirse explícitamente en toolsets: de ~/.hermes/config.yaml antes de cargarse. Total del registro = “lo que está disponible si lo habilitas”. Total del banner = “lo que realmente cargó tu profile actual”. Usa hermes tools --list para ver qué toolsets están activos y cuáles están disponibles, pero deshabilitados. Activa o desactiva toolsets individuales en tiempo de ejecución con /tools enable <name> y /tools disable <name> (deshabilitarlos provoca un reinicio de sesión para que el agente reconstruya su manifiesto de herramientas con la nueva forma).
¿Cómo gestiona Hermes la alternativa de modelo cuando falla mi proveedor principal?
Configura un bloque fallback_model en config.yaml:2
fallback_model:
provider: openrouter
model: anthropic/claude-sonnet-4
Cuando el principal falla (límite de tasa, error del servidor o fallo de autenticación), Hermes cambia a la alternativa a mitad de sesión sin perder el historial de conversación. Se activa como máximo una vez por sesión.
¿El agente puede mejorar sus propias skills con el tiempo?
Sí: esa es la parte de “automejora” de Hermes Agent. El agente puede crear, actualizar y eliminar skills mediante la herramienta skill_manage. Cuando resuelve un flujo de trabajo no trivial, guarda el enfoque como una skill para reutilizarlo en el futuro.11 El agente crea skills después de tareas complejas (más de 5 llamadas a herramientas), cuando encuentra errores y descubre la ruta que funciona, cuando corriges su enfoque o cuando descubre un flujo de trabajo no trivial.
¿Existe una integración con IDE?
Sí: Hermes puede ejecutarse como un servidor ACP (Agent Client Protocol) para VS Code, Zed y JetBrains:6
pip install -e '.[acp]'
hermes acp
Registro de cambios
| Fecha | Cambio | Fuente |
|---|---|---|
| 2026-07-28 | Guía v1.12: Revisión de cobertura basada en la demanda de búsqueda: 2 temas con buenas conversiones no tenían un encabezado al cual dirigir a los usuarios. No hubo una nueva versión. GSC muestra que hermes swarm y hermes agent swarm convierten entre un 4,4 y un 6,3 % desde la posición ~8, mientras que hermes smart model routing convierte un 4,9 % desde la posición 6,7, aunque ninguno de los términos contaba con una sección: swarm solo aparecía como texto dentro de Multi-Agent Kanban y en filas del registro de cambios, mientras que «smart model routing» no figuraba más que en una nota al pie. Se agregó ¿Qué es un swarm de Hermes? dentro de Multi-Agent Kanban: define un swarm como trabajadores paralelos que operan sobre un único tablero persistente, documenta la topología de swarm de v0.15.0, la descomposición automática, la selección de modelos por tarea, las tareas programadas y la administración de worktrees, y presenta en una tabla el fallo que evita cada mecanismo. Se cambió el título Rotación de proveedores y respaldo por Smart Model Routing: rotación de proveedores y respaldo, con una introducción que vincula los grupos de credenciales, el modelo de respaldo y el enrutamiento auxiliar como un solo sistema. Ningún enlace interno apuntaba al ancla, por lo que el cambio de título no rompe nada. |
28 2 6 |
| 2026-08-20 | Guía v1.13: v0.20.3 (etiqueta v2026.8.16.2, publicada el 17 de agosto) y v0.20.4 (etiqueta v2026.8.18, 18 de agosto). Nueva subsección dentro de la versión Herald: la serie de versiones acumulativas ahora incorpora funciones, no solo estabilización. v0.20.3 (~250 commits/~125 PR): migración de SDK a MCP 2.x con compatibilidad para el protocolo sin estado del 28 de julio de 2026, plugin Bot Mode incluido (hermes-bots) con el protocolo central para compañeros de equipo, plugin del proveedor CommandCode, contratos del entorno de ejecución Cua Driver 0.20 para el uso de computadoras, refuerzo de la propiedad del entorno de ejecución de Python, autorreparación del programador cron, correcciones para evitar la pérdida de datos durante la transferencia de sesiones y adaptaciones del ecosistema (/worktree, preservación de ediciones manuales con /rollback y análisis de seguridad al instalar plugins). v0.20.4 (~146 commits/~74 PR): superficie de vidrio/transparencia para escritorio con selector de efecto esmerilado, barra lateral con pestañas SESSIONS|BOTS y opción para ocultar o mostrar cada bot, análisis preventivo de nivel 1 de NVIDIA SkillEvaluator al instalar skills (licencia y seguridad), refuerzo del envío de contenido multimedia mediante cron y transparencia de hermes update respecto de las ramas apartadas. Ambas versiones indican que las notas completas seleccionadas se publicarán con v0.21.0; los resúmenes proceden de las descripciones de las ventanas de las propias versiones. Se actualizaron la oración del encabezado y el linaje de etiquetas. |
23 |
| 2026-08-16 | Guía v1.12: v0.20.0 «The Herald Release» (3 de agosto, etiqueta v2026.8.3), además de las etiquetas de estabilización v0.20.1 (13 de agosto) y v0.20.2 (16 de agosto). Tres correcciones solucionan instrucciones que ya no funcionan: se requiere Node 26 (el instalador fija NODE_VERSION="26" y rechaza entornos de ejecución anteriores; la indicación de Node v22 en el sitio de documentación está desactualizada, por lo que prevalecen el instalador y las notas de la versión), pip y Homebrew se retiraron en lugar de quedar obsoletos («el instalador de shell, Docker y Nix son los canales compatibles») y el límite de iteraciones predeterminado pasó de 90 a 500, lo que invalidó todas las cifras de la tabla sobre presión presupuestaria. Se corrigió el comando de instalación para usar la dirección canónica https://hermes-agent.nousresearch.com/install.sh. Superficie eliminada: la fuente de skills claude-marketplace desapareció y fue reemplazada por browse-sh en la lista de fuentes; los taps predeterminados de GitHub ahora son openai, anthropics, huggingface, NVIDIA y gstack. Se volvió a contar el gateway de mensajería, de 22 a 28 plataformas, enumerando directamente la tabla comparativa de la documentación (que no publica un total oficial). Windows nativo está en el nivel 1, no en beta temprana; macOS solo es compatible con Apple Silicon. Una nueva sección aborda la versión en sí: voz conversacional con interrupción, A2A v1.0, webhooks firmados para el ciclo de vida de salida, skill de citas fundamentadas, la oleada de CLI !//init//diff//context//focus y hermes import-agent, fuente de secretos para el asistente de comandos, arranque en frío de hermes -w de ~14 s a ~1,8 s, y artefactos de escritorio junto con un SDK para plugins. Se verificó que no cambiaron las 3 rutas de autenticación, la estructura de ~/.hermes/, hermes update ni la lista documentada de herramientas. |
24 |
| 2026-07-21 | Guía v1.11: v0.19.0 «The Quicksilver Release» (20 de julio de 2026, etiqueta v2026.7.20). Se agregó la sección «Novedades de v0.19.0»: reducción de ~80 % en el TTFT del primer turno (envío en frío→despacho de ~4,3 s a ~0,9 s en CLI/gateway/TUI/escritorio/cron), razonamiento transmitido en vivo de manera predeterminada (display.show_reasoning activado), oleada de velocidad para escritorio de ~20 PR (renderizado de Markdown en streaming 14 veces más rápido) y Markdown incremental en la TUI; instalaciones mediante pip/Homebrew obsoletas (advertencia de «sistema heredado no compatible»; se planea eliminar la publicación en PyPI/Homebrew): se corrigieron la sección Instalación y el resumen para usar el instalador de una línea; SecretSource conectable con proveedores de Bitwarden y 1Password (referencias op://, varias bóvedas, precedencia determinista y procedencia por variable); aprobaciones inteligentes predeterminadas (revisor LLM independiente por cada comando marcado), además de reglas de denegación definidas por el usuario que se mantienen en modo YOLO, /deny <reason> y reintroducción de la escalación de aprobación pre_tool_call de los plugins; facturación en la terminal mediante /subscription y /topup, además de una pestaña de facturación en el escritorio (se retiró la afirmación de que «no existe un comando de suscripción independiente»); transcripciones en vivo de subagentes, delegación persistente en segundo plano y registro de obligaciones de entrega en state.db; max_async_children quedó obsoleto en favor de límites unificados de concurrencia para la delegación; enrutamiento de mensajes basado en profile para el gateway (un token de bot multiplexado → profiles aislados, GATEWAY_MULTIPLEX_PROFILES, índice de enrutamiento en state.db y sessions.json como réplica heredada opcional); proveedores/modelos: Fireworks AI (puesto n.º 2 en el selector), DeepInfra, Upstage Solar, GPT-5.6 (Sol/Terra/Luna + Pro) de extremo a extremo, grok-4.5 disponible de forma general, kimi-k3 (se retiró kimi-k2.x), Claude Sonnet 5 completamente integrado, enabled: false por proveedor + excluded_providers, niveles max/ultra de esfuerzo de razonamiento con selección por modelo/posición de MoA y /reasoning limitado a la sesión; CLI/MCP: hermes sessions export (Markdown/Quarto/HTML/solo prompt/traza de HF, --redact), /model --once, invocaciones apiladas de skills mediante comandos con barra, --safe-mode, hermes config get/unset, hermes serve verdaderamente sin interfaz y nomenclatura mcp__server__tool de MCP. También registra las etiquetas de parches omitidas v0.18.1 (etiqueta v2026.7.7) y v0.18.2 (etiqueta v2026.7.7.2), del 7 al 8 de julio de 2026: versiones acumulativas de parches de infraestructura; la corrección sustancial de v0.18.2 elimina la versión fija de WhatsApp Baileys para adoptar 7.0.0-rc13 y lograr compilaciones fiables de Docker. |
25 26 |
| 2026-07-16 | Se agregó una primera entrada de solución de problemas para el error literal de inicio «No inference provider configured. Run ‘hermes model’ to choose a provider and model»: basada en la demanda de búsqueda; remite al selector interactivo, hermes doctor y las 3 rutas de autenticación. No hubo cambios en el producto. |
2 7 |
| 2026-07-01 | Guía v1.10: v0.18.0 «The Judgment Release» (1 de julio de 2026, etiqueta v2026.7.1). Se agregó la sección «Novedades de v0.18.0»: se cerró toda la lista pendiente P0/P1 (~692 elementos); Mixture-of-Agents como función de primera clase, con resultados del conjunto etiquetados por modelo y transmisión en vivo; contratos de finalización: /goal verifica su propio trabajo ejecutando las comprobaciones del proyecto; /learn (describe un flujo de trabajo → skill reutilizable y compatible con CONTRIBUTING.md); /journey, cronología de memoria/skills y gráfico de memoria para escritorio; distribución de subagentes en segundo plano (tareas delegadas simultáneas); Proyectos de escritorio (proyecto/repositorio/carril); gateway con escalado a cero y coordinación del vaciado; Google Vertex AI (Gemini mediante cuentas de servicio de GCP y actualización automática de OAuth2); /prompt, editor basado en \$EDITOR. Fuente: versiones de hermes-agent. |
22 |
| 2026-06-21 | Guía v1.9: v0.17.0 «The Reach Release» (19 de junio de 2026, etiqueta v2026.6.19). Se agregó la sección «Novedades de v0.17.0». Mensajería: iMessage sin retransmisor mediante Photon Spectrum (hermes photon login, OAuth con código de dispositivo), adaptador oficial de API de WhatsApp Business Cloud (sin puente), grupos y archivos adjuntos de SimpleX, y plugin para la plataforma Raft. Modelos: z-ai/glm-5.2 (1M), anthropic/claude-fable-5, laguna-m.1, nemotron-3-ultra, grok-composer-2.5-fast (OAuth de xAI, 200k); el valor predeterminado de xAI cambia a grok-build-0.1; los modelos adaptativos de Anthropic eliminan el campo reasoning. Escritorio/panel: subagentes en segundo plano con ventanas de seguimiento en vivo (delegate_task(background=true)), creador de profiles completo, Skills Hub rediseñado, planos de automatización, inicio de sesión 401 seguro, temas de VS Code Marketplace e interfaz en japonés y chino tradicional. Skills/herramientas: edición de imagen a imagen con image_generate, lote atómico operations de memory, skill simplify-code y write_approval booleano (sustituye a write_mode). Arquitectura: controlador de obtención de datos de MCP, CronScheduler conectable + Chronos, alcance administrado (/etc/hermes) y retransmisión entre gateways. Comandos: /version, /billing, hermes curator run --consolidate (opcional). Seguridad: se cerró la evasión de la lista de denegación mediante escape del shell, adaptadores de aprobación/gateway con bloqueo seguro ante fallos, entorno de cron saneado, secretos censurados en volcados de depuración, filtro contra la extracción de datos por stdio de MCP y actualizaciones de urllib3 + PyJWT por vulnerabilidades CVE. |
21 |
| 2026-06-08 | Guía v1.8: v0.16.0 «The Surface Release» (5 de junio de 2026, etiqueta v2026.6.5). Se cambió el título de la guía a v0.16 y se agregó la sección «Novedades de v0.16.0». Idea central: Hermes ya no funciona solo en la terminal. Aplicación nativa Hermes Desktop (Electron, macOS/Linux/Windows) con instalación mediante un clic, actualización automática desde la aplicación, chat en streaming, función de arrastrar y soltar + pegado de imágenes desde el portapapeles, paleta Cmd+K, archivo y búsqueda de sesiones, selector de modelos en la barra de estado, conexión a gateways remotos mediante WebSocket seguro (OAuth o usuario/contraseña, hosts por profile y enlaces @session entre profiles), además de una traducción completa al chino simplificado mediante i18n con tipos. Panel de administración en el navegador (panel web → administración completa): activación/desactivación del catálogo de MCP, administración de credenciales, creación de webhooks/hooks, configuración de memoria, controles del gateway, página Sistema con comprobación previa a las actualizaciones + Debug Share, nueva página Canales y autenticación conectable (usuario/contraseña, OIDC autoalojado, hermes dashboard register). Nuevos comandos: /undo [N] (CLI/TUI/mensajería), interfaz predeterminada configurable (cli/tui, --cli), /model unificado en la TUI + superposición de Sesiones, hermes portal, hermes prompt-size, hermes sessions optimize. Nuevos modelos: deepseek-v4-flash, MiniMax-M3 (contexto de 1M), qwen3.7-plus, gemini-3.5-flash; OAuth de xAI Grok como función de primera clase en el iniciador de escritorio; selector de modelos con búsqueda aproximada; actualización del catálogo cada hora. Skills: conjunto predeterminado más reducido (Spotify → plugin nativo, Linear → hermes mcp install linear, eliminación de skills obsoletos), filtro de relevancia environments: (kanban/docker/s6), tap confiable NVIDIA/skills predeterminado y exposición progresiva (limitada) de herramientas de MCP/plugins. Seguridad: CVE-2026-48710 (Starlette BadHost) fijada en ≥1.0.1; comprobaciones SSRF fuera del bucle de eventos; token de portador de Bedrock eliminado del entorno de los subprocesos; lectura de bws_cache.json protegida; docker restart/stop/kill agregados a los patrones peligrosos; saneamiento de caracteres Unicode invisibles. Se cerraron 2 P0 + 62 P1 (16 con etiqueta de seguridad). |
20 |
| 2026-05-31 | Guía v1.7.1: v0.15.1 (29 de mayo de 2026, 01:12 UTC): parche Velocity. Corrección rápida publicada el mismo día después de Velocity; se fijó la línea de la etiqueta v2026.5.29. Corrige el bucle de recarga 401 del panel que afectaba las implementaciones en modo loopback. Docker ya no interpreta --insecure de forma implícita: define explícitamente HERMES_DASHBOARD_INSECURE=1 para volver a habilitarlo. Los comandos independientes de MCP (npx, npm, node) vuelven a resolverse correctamente dentro de contenedores Docker. Se muestran las etiquetas de origen y la barra lateral de categorías de la página Skills. Los trabajadores Kanban responden correctamente a SIGTERM sin dejar procesos huérfanos. El catálogo de Skills.sh creció de 858 a 19.932 entradas mediante el descubrimiento del mapa del sitio. 28 commits, 21 PR fusionadas y 9 colaboradores. v0.15.2 (29 de mayo de 2026, 13:37 UTC): parche de empaquetado de Velocity. Corrige las distribuciones wheel y sdist para incluir los manifiestos plugin.yaml, de modo que las instalaciones desde PyPI funcionen sin cargar por separado el árbol de código fuente. Corrección rápida limitada al empaquetado, con 4 colaboradores. |
27 |
| 2026-05-28 | Guía v1.7: Se agregó v0.15.0 (28 de mayo de 2026): la versión Velocity (etiqueta v2026.5.28). Idea central: una refactorización masiva + nuevos mecanismos de orquestación. Refactorización del código base: run_agent.py se redujo un 76 % (de 16.083 a 3.821 líneas), distribuidas entre 14 módulos cohesivos. Multi-agent Kanban v2: descomposición automática de objetivos de alto nivel en subtareas, topología de swarm para coordinar trabajadores paralelos, selección de modelos por tarea, tareas programadas y administración de worktrees. Rendimiento: se ahorró un segundo adicional en el arranque en frío; reducción del 47 % en las llamadas a funciones por conversación; session_search se rediseñó y ahora es 4.500 veces más rápido, tras eliminar la dependencia de LLM (y su costo de API). Seguridad: la defensa Promptware protege frente a la inyección de prompts de la clase Brainworm en 3 puntos de control de seguridad; la integración con Bitwarden Secrets Manager sustituye varias claves de API específicas de proveedores por un único token de arranque. Paquetes de skills: carga varios skills al mismo tiempo con un solo comando con barra. Orquestador de sesiones de la TUI: administración de varias sesiones desde una sola ventana de terminal. Nuevos proveedores: Krea 2 (Medium/Large) y compatibilidad con el plugin FAL para generar imágenes; la nueva ronda de integración con xAI agrega un plugin de búsqueda web, OAuth ascendente, detección de modelos retirados y pausas naturales de TTS. Estadísticas: 1.302 commits, 747 PR fusionadas y 321 colaboradores de la comunidad. Según las notas de la versión de GitHub, una versión de parche publicada el mismo día o al día siguiente corrige el bucle de recarga 401 del panel, la variable de entorno explícita de --insecure para Docker, la resolución de comandos independientes de MCP en Docker (npx, npm, node), la restauración de la página Skills, el manejo de SIGTERM por los trabajadores Kanban y el catálogo completo de Skills con 19.932 entradas mediante el mapa del sitio. |
28 |
| 2026-05-21 | Guía v1.6: Se agregó v0.14.0 (16 de mayo de 2026): la versión Foundation. Idea central: una base de instalación y ejecución más ligera, junto con superficies más amplias de proveedores, gateway, contenido multimedia y verificación. Se agregaron OAuth de SuperGrok con contexto de 1M para grok-4.3, hermes proxy compatible con OpenAI para proveedores de OAuth, x_search como función de primera clase, pip install hermes-agent, instalación diferida de dependencias, inicio ~19 s más rápido, llamadas CDP del navegador 180 veces más rápidas, LINE + SimpleX Chat para alcanzar 22 plataformas de mensajería, Microsoft Teams de extremo a extremo, /handoff, /subgoal, botones nativos para solicitar aclaraciones en Telegram/Discord, recuperación del historial de Discord, vision_analyze sobre píxeles sin procesar, pie de página de verificación de cambios en archivos por turno, diagnósticos semánticos de LSP en cada escritura, video_generate unificado, computer_use mediante cua-driver para proveedores distintos de Anthropic, direcciones URL en las que se puede hacer clic mediante OSC8, compatibilidad con Zed ACP Registry, enrutador OpenRouter Pareto Code, NovitaAI, entorno de ejecución de Codex app-server, tap confiable huggingface/skills, 9 skills opcionales, ctx.llm/tool_override para plugins, búsqueda web con Brave/DDGS, cambio de nombre de Qwen Cloud, beta nativa para Windows y cierre de 12 P0/50 P1. |
19 |
| 2026-05-07 | Guía v1.5: Se agregó v0.13.0 (7 de mayo de 2026): la versión Tenacity. Idea central: un tablero Multi-agent Kanban persistente (latidos, recuperación, detección de procesos zombis, filtro contra alucinaciones, max_retries por tarea y tableros para varios proyectos) que convierte los swarms en un mecanismo de primera clase en vez de un patrón de delegación. El comando /goal mantiene al agente concentrado en un objetivo a lo largo de varios turnos (patrón de bucle Ralph convertido en comando con barra). Nueva herramienta video_analyze, primero para Gemini y con compatibilidad extensible para modelos compatibles. Proveedor de TTS xAI Custom Voices con clonación de voz. i18n en 7 idiomas (zh-Hans, ja, de, es, fr, uk, tr) para los mensajes de CLI y el gateway; documentación únicamente en zh-Hans. Google Chat como la plataforma de mensajería número 20, mediante el patrón de adaptadores conectables; IRC + Microsoft Teams migraron al mismo patrón. ProviderProfile ABC + plugins/model-providers/ para agregar proveedores externos conectables sin modificar el núcleo. Reanudación automática de sesiones después de reiniciar el gateway, ejecutar /update o recargar archivos de código fuente. Reescritura de checkpoints v2 con diseño de almacén único, depuración real y límites de seguridad para el disco. Cierre de 8 vulnerabilidades P0: censura de secretos activada de forma predeterminada, evasión de mensajes directos entre servidores de Discord (CVSS 8.1), rechazo de desconocidos + silenciamiento del chat propio en WhatsApp, TOCTOU de OAuth en MCP, TOCTOU de auth.json en CLI, protección SSRF mínima del navegador, análisis de inyección de prompts en cron y censura de hermes debug share. Linting posterior a la escritura para Python/JSON/YAML/TOML, modo no_agent de cron solo para scripts, listas de permitidos de plataformas para Slack/Telegram/Mattermost/Matrix/DingTalk y mejoras de MCP (transporte SSE, reenvío de OAuth y etiquetas MEDIA para imágenes). Estadísticas desde v0.12.0: 864 commits, 588 PR fusionadas, 829 archivos modificados, 295 colaboradores de la comunidad y 282 incidencias cerradas (13 P0, 36 P1). |
18 |
| 2026-05-06 | Guía v1.4: Se agregó v0.12.0 (30 de abril de 2026): la versión Curator. Idea central: un Curator autónomo en segundo plano que se ejecuta mediante el temporizador cron del gateway (ciclo predeterminado de 7 días), califica la biblioteca de skills según una rúbrica, elimina skills obsoletos, consolida los relacionados y genera informes por ejecución; Hermes se mantiene por sí mismo entre sesiones activas. El ciclo de mejora continua se actualizó con calificación basada en rúbricas, preferencia por actualizaciones activas, herencia adecuada del entorno de ejecución y toolsets limitados a la memoria y los skills. 4 nuevos proveedores de inferencia: GMI Cloud, Azure AI Foundry, OAuth de MiniMax y Tencent Tokenhub. LM Studio pasó a ser una función de primera clase. Los manifiestos remotos del catálogo de modelos ahora se actualizan automáticamente sin nuevas versiones. 2 nuevas plataformas de mensajería: Microsoft Teams (la número 19, mediante la arquitectura conectable del gateway) y Tencent Yuanbao (la número 18, con texto + contenido multimedia nativos). Spotify nativo mediante OAuth con PKCE y skill incluido; plugin de Google Meet para llamadas y transcripciones; proveedor local de TTS Piper. ComfyUI v5 + TouchDesigner-MCP pasaron de opcionales a incluirse de forma predeterminada. Nuevos skills: Humanizer, claude-design, design-md y airtable. Incorporaciones a CLI: modo de ejecución única hermes -z, comprobación preliminar hermes update --check, comando con barra /reload-skills y estilos conectables para el indicador de actividad. El arranque en frío visible de la TUI se redujo ~57 % mediante la inicialización diferida del agente y las importaciones diferidas. Seguridad: censura de secretos desactivada de manera predeterminada para evitar la corrupción de cargas; lista de bloqueo estricta para comandos irrecuperables. Estadísticas: 1.096 commits, 550 PR fusionadas y 213 colaboradores de la comunidad. |
17 |
| 2026-04-25 | Guía v1.3: Se agregó v0.11.0 (23 de abril de 2026): la versión Interface. Reescritura completa de la TUI interactiva con React/Ink, con un backend RPC de Python JSON (tui_gateway); editor fijo, streaming en vivo compatible con el portapapeles OSC-52, teclas estables para los selectores, barra de estado con cronómetro por turno y rama de git, confirmación para /clear, tema claro preestablecido y superposición para observar la creación de subagentes. Arquitectura de transporte conectable: la conversión de formatos y el transporte HTTP se extrajeron a agent/transports/ para simplificar la conexión de proveedores. AWS Bedrock nativo mediante Converse API. 5 nuevas rutas de inferencia: NVIDIA NIM, Arcee AI, Step Plan, OAuth de CLI de Google Gemini y Vercel ai-gateway. GPT-5.5 mediante OAuth de Codex: ahora se puede acceder al nuevo modelo insignia de OpenAI mediante OAuth de ChatGPT Codex sin una clave de API independiente. QQBot (la plataforma de mensajería número 17) con configuración mediante escaneo de código QR y streaming. Ampliación de la superficie de plugins: comandos con barra, despacho de herramientas, bloqueo de ejecución y transformación de resultados. /steer <prompt>: indicaciones para orientar al agente durante una ejecución, que inyectan una nota visible para el agente activo después de su siguiente llamada a una herramienta, sin interrumpir el turno ni romper la caché del prompt. Los hooks de shell conectan scripts como hooks del ciclo de vida sin plugins de Python. El modo de entrega directa de webhooks reenvía las cargas directamente al chat de una plataforma, omitiendo al agente para distribuirlas. Delegación más inteligente con funciones de orquestador, profundidad de creación configurable y coordinación de archivos. El panel incorpora un sistema de plugins, cambio de tema en vivo, i18n y adaptación para dispositivos móviles. Estadísticas desde v0.9.0: 1.556 commits, 761 PR fusionadas, 1.314 archivos modificados, 224.174 inserciones y 29 colaboradores de la comunidad. |
29 |
| 2026-04-16 | Guía v1.2: Se agregó v0.10.0: Nous Tool Gateway. Los suscriptores de pago de Nous Portal ahora pueden acceder a herramientas administradas (búsqueda web con Firecrawl, generación de imágenes con FAL/FLUX 2 Pro, TTS de OpenAI y automatización del navegador con Browser Use) sin claves adicionales de API. Activación opcional por herramienta mediante el nuevo campo de configuración use_gateway. El entorno de ejecución prefiere el gateway a las claves directas de API cuando ambos están configurados. Se eliminó la variable de entorno HERMES_ENABLE_NOUS_MANAGED_TOOLS. CLI de Hermes Agent sigue teniendo licencia MIT y es completamente gratuito. |
30 |
| 2026-04-13 | Guía v1.1: Se agregaron las funciones de v0.8.0 y v0.9.0. Panel web local, modo /fast, plataformas iMessage + WeChat (16 en total), supervisión de procesos en segundo plano (watch_patterns), context engine conectable, hermes backup/hermes import, Termux/Android, proveedores xAI + MiMo + Google AI Studio + Qwen, comando /debug y refuerzo integral de la seguridad. |
15 16 |
| 2026-04-10 | Guía v1.0: Versión inicial sobre Hermes Agent v0.7.0. Autenticación de proveedores, config, CLI, comandos con barra, herramientas, skills, memoria, gateway, cron, MCP, compresión, arquitectura, migración desde OpenClaw, solución de problemas y preguntas frecuentes. |
Referencias
-
Nous Research, README del proyecto “Hermes Agent” en GitHub. Fuente principal de la descripción del producto (agente con capacidad de mejora autónoma, compatibilidad con múltiples proveedores, gateway de mensajería, backends de terminal, evolución de skills, programador cron y delegación) y del comando de una línea de “Instalación rápida”. ↩↩↩
-
Nous Research, “Proveedores de IA” en la documentación de Hermes Agent. Fuente principal de la lista completa de proveedores, los métodos de autenticación de cada proveedor (OAuth de Nous Portal, código de dispositivo de Codex, tipos de token de Copilot de GitHub, los tres métodos de autenticación de Anthropic, proveedores chinos de IA, enrutamiento de Hugging Face y endpoints personalizados), las tres vías de autenticación (clave API en
.env, OAuth mediantehermes modely endpoint personalizado enconfig.yaml), la sintaxis del comando slash/model(incluidocustom:name:model), las plantillas de configuración de Ollama/vLLM/SGLang/llama.cpp/LM Studio, las instrucciones de red para WSL2, la cadena de detección de la longitud de contexto, la configuración del modelo alternativo, el enrutamiento inteligente de modelos y los proveedores personalizados con nombre. Todos los nombres de variables de entorno específicos de cada proveedor, tipos de token, reemplazos de URL base e identificadores de modelos que aparecen en esta publicación provienen de esta página. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Nous Research, “Arquitectura” en la guía para desarrolladores de Hermes Agent. Fuente principal del diagrama general del sistema, la estructura de directorios, el flujo de datos a través de las rutas de sesión y mensajes del gateway de CLI, los tres modos de API (
chat_completions,codex_responses,anthropic_messages), la resolución de proveedores medianteruntime_provider.py, la persistencia de sesiones mediante SQLite + FTS5, la lista de plataformas del gateway de mensajería, las fuentes de descubrimiento del sistema de plugins, el aislamiento de profiles y los seis principios de diseño. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Nous Research, “Configuración” en la guía del usuario de Hermes Agent. Fuente principal de la estructura del directorio de configuración, la regla de
config.yamlfrente a.env(“config.yamltiene prioridad para la configuración que no contiene secretos”), la cadena de precedencia de configuración (argumentos de CLI → entorno → config.yaml → .env → valores predeterminados), la configuración de compresión del contexto (bloquecompression.*conthreshold,target_ratio,protect_last_n,summary_model,summary_provider,summary_base_url), los umbrales de presión del presupuesto (precaución al 70 %, advertencia al 90 %), los tiempos de espera de streaming con ajuste automático para proveedores locales y el bloque completo de configuración de modelos auxiliares (auxiliary:con espaciosvision,web_extract,approval,compression,session_search,skills_hub,mcp,flush_memories). La restricción del proveedor"main"a los espacios auxiliares, de compresión y alternativos también proviene de esta página. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Nous Research, “Migrar desde OpenClaw” en las guías de Hermes Agent. Fuente del flujo de migración de OpenClaw → Hermes. ↩↩
-
Nous Research, “Referencia de comandos de CLI” en la documentación de referencia de Hermes Agent. Fuente principal de todos los comandos de nivel superior de CLI documentados en esta publicación, incluidos
hermes chat,hermes model,hermes gateway,hermes setup,hermes auth,hermes status,hermes cron,hermes webhook,hermes doctor,hermes dump,hermes logs,hermes config,hermes pairing,hermes skills,hermes honcho,hermes memory,hermes acp,hermes mcp,hermes plugins,hermes tools,hermes sessions,hermes insights,hermes claw,hermes profile,hermes completion,hermes updateyhermes uninstall. Todas las flags de subcomandos, descripciones de opciones, el comportamiento del conjunto de credenciales, la sintaxis de filtrado de registros, las flags de migración de OpenClaw, los comandos de administración de profiles y los comandos de instalación de servicios que aparecen en esta publicación provienen de esta página. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Nous Research, “Instalación” en la guía de introducción de Hermes Agent. Fuente principal del comando de instalación de una sola línea, el comportamiento del instalador (requisitos previos, plataformas compatibles, detección automática de Termux y requisitos de Windows/WSL2), la tabla de componentes opcionales, los pasos de instalación manual y los comandos de verificación. ↩↩↩↩↩↩↩↩↩
-
Nous Research, “Referencia de comandos de CLI” — consulta específicamente la sección
hermes dump, que describe el formato de salida del comando (encabezado, entorno, identidad, modelo, terminal, claves de API, funciones, servicios, carga de trabajo y reemplazos de configuración) y su uso previsto para compartir diagnósticos. ↩ -
Nous Research, “Referencia de comandos slash” en la documentación de referencia de Hermes Agent. Fuente principal de todos los comandos slash enumerados en esta publicación, la arquitectura
COMMAND_REGISTRY, la separación entre CLI y mensajería, los comandos slash dinámicos de skills, los comandos rápidos deconfig.yaml, el comportamiento de coincidencia de prefijos y los comandos exclusivos de mensajería (/status,/sethome,/approve,/deny,/update,/commands). ↩↩↩↩↩↩↩↩↩↩ -
Nous Research, “Herramientas y toolsets” en la guía del usuario de Hermes Agent. Fuente principal de la descripción general de las categorías de herramientas, los comandos de uso de toolsets, los seis backends de terminal (local, docker, ssh, singularity, modal, daytona), la configuración de contenedores (cpu, memoria, disco, persistencia), el refuerzo de seguridad de los contenedores, la administración de procesos en segundo plano de API y la compatibilidad con sudo. ↩↩↩↩↩↩↩↩↩↩
-
Nous Research, “Sistema de skills” en la guía del usuario de Hermes Agent. Fuente principal de la divulgación progresiva, el formato de
SKILL.md, las skills específicas de cada plataforma, la activación condicional (fallback_for_toolsets,requires_toolsets,fallback_for_tools,requires_tools), las skills administradas por el agente medianteskill_manage, los comandos y la lista de fuentes del centro de skills (official,skills-sh,well-known,github,clawhub,claude-marketplace,lobehub), el análisis de seguridad y los niveles de confianza, así como los directorios externos de skills. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Nous Research, “Memoria persistente” en la guía del usuario de Hermes Agent. Fuente principal de los límites de caracteres de
MEMORY.md/USER.md, el patrón de instantánea inmutable, las acciones de la herramienta de memoria (add,replace,remove), qué guardar y qué omitir, la comparación entre memoria y búsqueda de sesiones, y la lista de ocho proveedores externos de memoria (Honcho, OpenViking, Mem0, Hindsight, Holographic, RetainDB, ByteRover, Supermemory). ↩↩↩↩↩↩↩↩ -
Nous Research, “Personalidad y SOUL.md” en la guía del usuario de Hermes Agent. Fuente principal del comportamiento de
SOUL.md(se encuentra enHERMES_HOME, nunca se sobrescribe, ocupa el espacio n.º 1 del prompt del sistema y se somete a un análisis de seguridad antes de incluirse), la distinción entre SOUL.md y AGENTS.md, la lista de personalidades integradas (14 personalidades, desdehelpfulhastahype), las personalidades personalizadas enconfig.yaml, el patrón de superposición de/personalityy el orden completo de composición del conjunto de prompts. ↩↩↩↩↩↩↩↩↩↩↩↩ -
Nous Research, “Usar MCP con Hermes” y Referencia de configuración de MCP en las guías y la documentación de referencia de Hermes Agent. Fuente del formato de configuración
mcp_servers:enconfig.yamlcon los camposcommand,argsyenv. ↩ -
Notas de la versión Hermes Agent v0.8.0. 8 de abril de 2026. Notificaciones automáticas de procesos en segundo plano, MiMo v2 Pro gratuito en Nous Portal, cambio en vivo mediante
/modelentre plataformas, proveedor nativo de Google AI Studio, OAuth de Qwen, tiempos de espera basados en inactividad, botones de aprobación en Slack/Telegram, OAuth 2.1 PKCE de MCP, registro centralizado y ampliación del sistema de plugins. ↩↩↩↩↩ -
Notas de la versión Hermes Agent v0.9.0. 13 de abril de 2026. Panel web local, modo rápido (
/fast), iMessage mediante BlueBubbles, WeChat + WeCom, Termux/Android, supervisión de procesos en segundo plano (watch_patterns), proveedores nativos de xAI + Xiaomi MiMo, context engine conectable, compatibilidad unificada con proxies, refuerzo de seguridad (correcciones de recorrido de rutas, inyección de comandos de shell, SSRF y RCE),hermes backup/hermes import,/debug+hermes debug share, 16 plataformas compatibles. 487 commits, 269 PR fusionadas y 24 colaboradores. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Notas de la versión Hermes Agent v0.12.0. 30 de abril de 2026. «La versión Curator». Curator autónomo en segundo plano que evalúa, depura y consolida la biblioteca de skills en un ciclo predeterminado de 7 días ejecutado mediante el cron del gateway. Se actualizó el ciclo de mejora continua con evaluación basada en rúbricas, preferencia por las actualizaciones activas, herencia correcta del entorno de ejecución y toolsets de alcance limitado, restringidos a la memoria y las skills. Cuatro nuevos proveedores de inferencia: GMI Cloud, Azure AI Foundry, MiniMax OAuth y Tencent Tokenhub. LM Studio pasa a ser una opción de primera categoría. Los manifiestos remotos del catálogo de modelos se actualizan automáticamente sin necesidad de publicar nuevas versiones. Dos nuevas plataformas de mensajería: Microsoft Teams (la 19.ª, mediante una arquitectura de gateway extensible) y Tencent Yuanbao (la 18.ª, con texto y contenido multimedia nativos). Integración nativa con Spotify mediante PKCE OAuth y una skill incluida; plugin de Google Meet para llamadas y transcripciones; proveedor local de TTS Piper. ComfyUI v5 + TouchDesigner-MCP se incluyen de forma predeterminada. Nuevas skills: Humanizer, claude-design, design-md y airtable. CLI: modo de ejecución única
hermes -z, comprobación previahermes update --check, comando de barra diagonal/reload-skillsy estilos extensibles para el indicador de actividad. El inicio en frío de la TUI se redujo aproximadamente un 57 % mediante la inicialización diferida. Seguridad: la ocultación de secretos está desactivada de forma predeterminada; lista estricta de bloqueo para comandos irrecuperables. Estadísticas desde v0.11.0: 1.096 commits, 550 PR fusionadas y 213 colaboradores de la comunidad. Consulta también: etiqueta de la versión v2026.4.30. ↩↩↩ -
Notas de la versión Hermes Agent v0.13.0. 7 de mayo de 2026. «La versión Tenacity». Tablero Kanban multiagente con señal de actividad, recuperación, detección de procesos zombis, control de alucinaciones,
max_retriespor tarea y tableros para varios proyectos. Comando de barra diagonal/goalpara fijar objetivos entre turnos (primitiva del ciclo Ralph), con un presupuesto de turnos configurable. Herramientavideo_analyze, con Gemini como primera opción y extensibilidad multimodal compatible. Proveedor de TTS xAI Custom Voices con clonación de voz. Internacionalización en 7 idiomas: zh-Hans, ja, de, es, fr, uk y tr (CLI + mensajes del gateway; documentación solo en zh-Hans). Google Chat como la 20.ª plataforma de mensajería mediante un patrón de adaptadores extensible, con hooks genéricos de pluginenv_enablement_fn/cron_deliver_env_var; IRC y Microsoft Teams se migraron al mismo patrón. Clase base abstractaProviderProfile+plugins/model-providers/para proveedores externos extensibles. Reanudación automática de sesiones tras reiniciar el gateway, ejecutar/updateo recargar archivos de código fuente. Reescritura de checkpoints v2 con un único almacén, depuración real, medidas de protección del disco y sin repositorios paralelos huérfanos. Ocho correcciones de seguridad P0: ocultación de secretos activada de forma predeterminada; omisión de restricciones de mensajes directos entre servidores de Discord (CVSS 8.1, listas de roles permitidos limitadas por servidor); WhatsApp rechaza de forma predeterminada a desconocidos y nunca responde en el chat propio; condición TOCTOU al guardar credenciales de MCP OAuth; condición TOCTOU de CLIauth.jsonen los procesos de escritura de credenciales; protección mínima contra SSRF hacia metadatos en la nube desde el navegador con enrutamiento híbrido; análisis de prompts generados por cron, incluido el contenido de las skills, para detectar inyección de prompts; y ocultación del contenido de los registros al subirlos conhermes debug share. Otros elementos destacados: análisis estático posterior a la escritura para Python/JSON/YAML/TOML, modo de vigilancia de cronno_agentbasado únicamente en scripts, listas de permitidos por plataforma en Slack/Telegram/Mattermost/Matrix/DingTalk y mejoras de MCP (transporte SSE, reenvío de OAuth y resultados de imágenes como etiquetas MEDIA). Estadísticas desde v0.12.0: 864 commits, 588 PR fusionadas, 829 archivos modificados, 295 colaboradores de la comunidad y 282 incidencias cerradas (13 P0 y 36 P1). ↩↩↩↩↩↩↩↩↩↩↩↩ -
Notas de la versión Hermes Agent v0.14.0. 16 de mayo de 2026. «La versión Foundation». Desde v0.13.0: 808 commits, 633 PR fusionadas, 1.393 archivos modificados, 165.061 inserciones, 545 incidencias cerradas (12 P0 y 50 P1) y 215 colaboradores de la comunidad. Añade SuperGrok OAuth con grok-4.3 y un context de 1 millón de tokens,
hermes proxy,x_search, distribución mediante PyPI, dependencias diferidas, caché de prompts Claude de 1 h entre sesiones, inicio aproximadamente 19 s más rápido, llamadas CDP del navegador 180 veces más rápidas, LINE y SimpleX Chat para alcanzar 22 plataformas de mensajería,/handoff, botones nativos de aclaración, recuperación del historial de Discord,vision_analyzebasado en píxeles sin procesar, un pie de verificación de cambios en archivos por turno, diagnósticos semánticos mediante LSP,video_generateunificado,computer_usemediante cua-driver, enlaces OSC8, compatibilidad con Zed ACP Registry, el router OpenRouter Pareto Code, NovitaAI, el entorno de ejecución del servidor de aplicaciones de Codex,huggingface/skills,ctx.llmpara plugins,tool_override, búsqueda mediante Brave/DDGS, protección reforzada contra comandos peligrosos,/subgoal, el cambio de nombre de Qwen Cloud, una beta nativa para Windows, un total de 16 configuraciones regionales y amplias actualizaciones de la documentación y las pruebas. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Notas de la versión Hermes Agent v0.16.0, «The Surface Release», etiqueta
v2026.6.5, publicada el 6 de junio de 2026 a las 00:55:58 Z (fecha de la etiqueta de la versión: 5 de junio de 2026); la más reciente al 8 de junio de 2026. Nuevo Hermes Desktop nativo (Electron, macOS/Linux/Windows; conexión con gateway remoto mediante WebSocket seguro con OAuth o usuario/contraseña; hosts remotos por profile; enlaces@sessionentre profiles; interfaz en chino simplificado mediante i18n tipado,display.language). El panel web se amplió hasta convertirse en un panel de administración completo (controles de activación del catálogo de MCP, administración de credenciales, creación de webhooks/hooks, configuración de memoria, controles del gateway, página System con comprobación previa a las actualizaciones + Debug Share y página Channels; autenticación conectable, incluidos OIDC autoalojado yhermes dashboard register). Nuevos comandos:/undo [N], interfaz predeterminada configurable (cli/tui,--cli),/modelen la TUI + superposición de Sessions,hermes portal,hermes prompt-size,hermes sessions optimize. Nuevos modelos:deepseek-v4-flash,MiniMax-M3(contexto de 1 millón),qwen3.7-plus,gemini-3.5-flash; OAuth de xAI Grok; selector difuso; actualización del catálogo cada hora. Skills: conjunto predeterminado más ligero, filtro de relevanciaenvironments:, tap confiable predeterminadoNVIDIA/skills, divulgación progresiva de herramientas, corrección del falso éxito de OAuth de MCP. Seguridad: CVE-2026-48710 (Starlette BadHost) fijada en ≥1.0.1, comprobaciones de SSRF fuera del bucle de eventos, token de portador de Bedrock eliminado del entorno de los subprocesos, lectura debws_cache.jsonprotegida, incorporación dedocker restart/stop/killa los patrones peligrosos y saneamiento de caracteres Unicode invisibles; se cerraron 2 incidencias P0 + 62 P1 (16 etiquetadas como de seguridad). Se excluyó el enfoque promocional de las notas de la versión (cantidades de PR/commits y «nada de esto existía hace una semana»); solo se registraron datos concretos sobre funciones y versiones vinculados a la etiqueta. Verificación de la sesión actual: 8 de junio de 2026. ↩↩↩↩↩↩↩↩ -
Notas de la versión Hermes Agent v0.17.0, «The Reach Release», etiqueta
v2026.6.19, 19 de junio de 2026; la más reciente al 21 de junio de 2026. Mensajería: iMessage mediante Photon Spectrum (OAuth con código de dispositivo,hermes photon login, sin retransmisión desde una Mac); adaptador oficial API de WhatsApp Business Cloud (reemplaza el proceso puente); grupos de SimpleX, archivos adjuntos nativos, procesamiento de texto por lotes y aceptación automática; plugin de plataforma Raft incluido. Modelos/proveedores:z-ai/glm-5.2(contexto de 1 millón),anthropic/claude-fable-5,laguna-m.1,nemotron-3-ultra,grok-composer-2.5-fast(OAuth de xAI, contexto de 200.000); valor predeterminado de xAI →grok-build-0.1; los modelos adaptativos de Anthropic utilizan el contrato de razonamiento moderno (sin camporeasoning). CLI/comandos slash:/version,/billing,hermes photon login,hermes curator run --consolidate(opcional), interfaz gráfica dehermes model, clonación de profiles. Desktop: ventanas de seguimiento para subagentes en segundo plano (delegate_task(background=true)), selector de modelos Composer, atajos reasignables, notificaciones nativas del sistema operativo, borradores por hilo, temas de VS Code Marketplace e interfaz en japonés + chino tradicional. Dashboard: creador integral de profiles, selector global de profiles, rediseño de Skills Hub con análisis de seguridad, Automation Blueprints e inicio de sesión seguro (401 detrás de OAuth). Skills/herramientas: edición de imagen a imagen conimage_generateentre distintos proveedores, lote atómico deoperationsdememory, skill de revisión paralelasimplify-code; el booleanowrite_approvalreemplaza awrite_mode. Arquitectura: subagentes en segundo plano (el identificador se devuelve de inmediato y el resultado vuelve a incorporarse como un turno), controlador de solicitud de MCP para confirmar durante una llamada a una herramienta, herramientas de MCP que se conectan tarde y se exponen entre turnos, CronScheduler conectable + cron administrado mediante Chronos, ámbito Managed (/etc/hermesfijado por el administrador), retransmisión Gateway-Gateway. Seguridad: se cerró la omisión de la lista de denegación mediante escapes de shell, se adoptó un comportamiento de rechazo seguro cuando falta el módulo de aprobación y para los adaptadores de gateway con políticas propias, se saneó el entorno de los scripts de trabajos cron, se ocultaron los secretos en los volcados de depuración, se excluyeron los metadatos del host del estado público, se incorporó la detección de patrones de exfiltración en stdio de MCP y se actualizaron urllib3 + PyJWT por vulnerabilidades CVE. Se excluyó el enfoque promocional de la versión (cantidades de commits/PR). Verificación de la sesión actual: 21 de junio de 2026. ↩↩↩↩↩↩↩↩↩↩↩ -
Notas de la versión Hermes Agent v0.18.0 (etiqueta
v2026.7.1), 1 de julio de 2026 — «The Judgment Release». Revisión exhaustiva de la lista de pendientes prioritarios (se cerraron todas las incidencias P0/P1, unas 692 en doce días); Mixture-of-Agents seleccionable como modelo de primera clase en todas las interfaces, con la salida completa de cada modelo de referencia mostrada en su propio bloque etiquetado y transmisión en vivo de la respuesta; contratos de finalización para/goal(el agente verifica su propio trabajo ejecutando las comprobaciones del proyecto); comando/learn(convierte cualquier cosa en una skill reutilizable con solo describirla, con cumplimiento automático de CONTRIBUTING.md); línea de tiempo visual de memoria/skills/journeycon edición y un grafo de memoria en Desktop; distribución de subagentes en segundo plano (varias tareas delegadas simultáneas); Desktop Projects (modelo de proyecto/repositorio/carril); gateway con reducción a cero y coordinación del drenaje; compatibilidad con Google Vertex AI (Gemini mediante cuentas de servicio de GCP, actualización automática de tokens OAuth2); comando$EDITORde/prompt. Verificación de la sesión actual: 1 de julio de 2026 (PST) en la página de versiones de GitHub; v0.18.0 es la versión más reciente. ↩↩↩↩↩↩↩↩↩↩↩ -
Notas de la versión Hermes Agent v0.20.3 (etiqueta
v2026.8.16.2, fecha de lanzamiento indicada: 16 de agosto; publicada el 17 de agosto de 2026) y notas de la versión v0.20.4 (etiquetav2026.8.18, 18 de agosto de 2026); ambas obtenidas mediante la API de GitHub el 20 de agosto de 2026 (prerelease: false). Texto literal de v0.20.3: «la migración de SDK de MCP 2.x y la compatibilidad con el protocolo sin estado del 28 de julio de 2026, el plugin Bot Mode (hermes-bots) incluido con el protocolo principal para compañeros de equipo, el plugin del proveedor CommandCode, el refuerzo del control de propiedad en tiempo de ejecución de Python en subprocesos (aislamiento de PYTHONHOME/PYTHONPATH), los contratos de tiempo de ejecución de Cua Driver 0.20 para el uso de computadoras». Texto literal de v0.20.4: «el trabajo en las superficies de vidrio/translúcidas de Desktop (vidrio mate, selector de escarcha, preselección en macOS), la barra lateral con pestañas SESSIONS|BOTS y la posibilidad de ocultar/mostrar cada bot, … análisis consultivo NVIDIA SkillEvaluator Tier 1 al instalar skills (comprobaciones de licencia + seguridad)». Ambas versiones: «Las notas de versión completas y seleccionadas para este periodo se publicarán con v0.21.0». ↩↩↩↩↩↩↩↩↩↩↩↩ -
Notas de la versión Hermes Agent v0.20.0, «The Herald Release», etiqueta
v2026.8.3, 3 de agosto de 2026, con las etiquetas de estabilización v2026.8.13 y v2026.8.16. Texto literal de la versión: «Node 26 es obligatorio en todos los instaladores/heal/upgrade»; «se retiraron los canales brew + wheel de pip/PyPI (el instalador de shell / Docker / Nix son los canales compatibles)»; «límite de iteraciones predeterminado: 90 → 500»; «se eliminó la fuente claude-marketplace». El requisito mínimo de Node se confirmó de forma independiente en el código fuente del instalador, en scripts/install.sh:NODE_VERSION="26"y la condición «Node.js $(node –version) es demasiado antiguo (Hermes requiere Node >=26)»; el comentario del encabezado también documenta la instrucción canónica de una sola líneacurl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash. Cabe señalar el conflicto: la página de instalación de la documentación aún indica Node v22 y está desactualizada respecto de ambas fuentes. Niveles de plataforma obtenidos de compatibilidad con plataformas; fuentes de skills y taps predeterminados obtenidos de skills; el total de 28 plataformas se obtuvo enumerando la tabla comparativa de mensajería, que no publica ningún total oficial. Todo se obtuvo y verificó el 16 de agosto de 2026. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Notas de la versión Hermes Agent v0.19.0, «The Quicksilver Release», etiqueta
v2026.7.20, 20 de julio de 2026; la versión más reciente al 21 de julio de 2026. Estadísticas desde v0.18.0: ~2.245 commits, ~1.065 PR fusionados, ~3.300 incidencias cerradas y más de 450 colaboradores de la comunidad. Eje de rendimiento: reducción de ~80 % en el TTFT del primer turno; envío en frío→despacho de ~4,3 s → ~0,9 s en CLI/gateway/TUI/escritorio/cron (PR #59332); razonamiento transmitido en vivo de forma predeterminada, condisplay.show_reasoningactivado y renderizado de la respuesta por token (PR #59389); ola de mejoras de velocidad para escritorio de ~20 PR, incluido un renderizado de Markdown en streaming 14 veces más rápido; Markdown incremental en la TUI. Las instalaciones mediante pip/Homebrew quedaron obsoletas y ahora solo muestran la advertencia «unsupported legacy»; está previsto eliminar la publicación en PyPI/Homebrew (PR #57225). Interfaz conectableSecretSourcecon proveedores Bitwarden + 1Password, referenciasop://, múltiples bóvedas, precedencia determinista y procedencia por variable (PR #59498). Aprobaciones inteligentes de forma predeterminada (un revisor LLM independiente por cada comando marcado), reglas de denegación definidas por el usuario que se mantienen incluso con YOLO y/deny <reason>(PR #62661, #59164, #54518); se reincorporó la escalación de aprobaciónpre_tool_callpara plugins (PR #60504). Facturación desde la terminal mediante/subscription+/topupy pestaña de facturación en el escritorio (PR #51639). Archivos de transcripción en vivo de subagentes + delegación duradera en segundo plano (PR #67479, #63494); registro de obligaciones de entrega enstate.db(PR #67181);max_async_childrenquedó obsoleto en favor de límites unificados de concurrencia para la delegación (PR #56955). Enrutamiento del gateway basado en profile +GATEWAY_MULTIPLEX_PROFILES+ índice de enrutamiento trasladado astate.db;sessions.jsonqueda como réplica heredada opcional (PR #64835, #65700, #60589, #59203). Proveedores/modelos: Fireworks AI recibe compatibilidad de primer nivel en la posición n.º 2 del selector (PR #62593), DeepInfra, Upstage Solar, compatibilidad integral con GPT-5.6 Sol/Terra/Luna + Pro (PR #61616), disponibilidad general de grok-4.5, kimi-k3 (se retiró kimi-k2.x), integración completa de Claude Sonnet 5,enabled: falsepor proveedor +excluded_providers(PR #67971); niveles de esfuerzo de razonamientomax/ultra, con anulaciones por modelo/posición de MoA y/reasoninglimitado a la sesión (PR #62650, #64458). CLI/MCP:hermes sessions exporta Markdown/Quarto/HTML/solo prompt/traza de HF con--redact(PR #60186),/model --once(PR #67113), invocaciones apiladas de skills mediante comandos slash (PR #57987),--safe-mode,hermes config get/unset(PR #65540),hermes serverealmente sin interfaz gráfica (PR #55923), nomenclatura MCPmcp__server__tool(PR #52750). Se excluyó el enfoque promocional del lanzamiento; los elementos revertidos durante este periodo (firewall de salida iron-proxy, skill dynamic-workflow y acciones de proveedor de memoria) no se registraron deliberadamente como publicados. Verificación de la sesión actual: 21 de julio de 2026. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Etiqueta de lanzamiento de Hermes Agent v0.18.1 y etiqueta de lanzamiento de v0.18.2, 7–8 de julio de 2026. Conjuntos acumulativos de parches de infraestructura para la línea v0.18; la corrección sustancial de v0.18.2 elimina la versión fijada de WhatsApp Baileys y adopta 7.0.0-rc13 para conseguir compilaciones fiables de Docker. Ambos periodos de parches están integrados y completamente documentados en las notas de la versión v0.19.0. ↩
-
Notas de la versión Hermes Agent v0.15.1 y notas de la versión Hermes Agent v0.15.2. v0.15.1 (29 de mayo de 2026, 01:12 UTC) es la corrección urgente Velocity del mismo día: corrige el bucle de recarga por errores 401 del dashboard en el modo loopback; Docker ahora exige definir explícitamente
HERMES_DASHBOARD_INSECURE=1; los comandos sin ruta de MCP (npx,npm,node) se resuelven en contenedores Docker; se restauraron las etiquetas de origen y la barra lateral de categorías de la página Skills; los workers de Kanban responden a SIGTERM; el catálogo de Skills.sh creció de 858 a 19.932 entradas mediante el mapa del sitio. 28 commits, 21 PR fusionados y 9 colaboradores. v0.15.2 (29 de mayo de 2026, 13:37 UTC) es una corrección urgente exclusiva del empaquetado que incluye manifiestosplugin.yamlen las distribuciones wheel y sdist, de modo que las instalaciones desde PyPI funcionen sin tener que cargar el código fuente por separado. 4 colaboradores. ↩ -
Notas de la versión Hermes Agent v0.15.0 y la página de versiones de Hermes Agent. «The Velocity release», etiqueta
v2026.5.28. Estadísticas: 1.302 commits, 747 PR fusionados y 321 colaboradores de la comunidad. Refactorizarun_agent.pyen un 76 % (de 16.083 → 3.821 líneas distribuidas entre 14 módulos). Añade la plataforma Kanban multiagente (descomposición automática, topología de enjambre, anulaciones de modelo por tarea, tareas programadas y administración de worktrees).session_searchse rediseñó para ser 4.500 veces más rápido y se eliminó la dependencia LLM. Defensa contra promptware para inyecciones de prompts de la clase Brainworm en tres puntos críticos de seguridad. La integración con Bitwarden Secrets Manager sustituye varias claves API específicas de cada proveedor por un único token de arranque. Los paquetes de skills permiten cargar varias skills con un solo comando slash. Orquestador de sesiones en la TUI para administrar varias sesiones en una sola ventana de terminal. Compatibilidad con Krea 2 (Medium/Large) y el plugin FAL para generar imágenes. Una ronda de integración con xAI añade un plugin de búsqueda web, OAuth ascendente, detección de modelos retirados y pausas TTS naturales en la salida de voz. Una versión de parche mencionada en GitHub corrige el bucle de recarga por errores 401 del dashboard, hace que--insecurede Docker exija definir explícitamente la variable de entornoHERMES_DASHBOARD_INSECURE=1, resuelve los comandos sin ruta de MCP (npx,npm,node) en Docker, corrige el renderizado de la página Skills y el manejo de SIGTERM por parte de los workers de Kanban, incorpora mediante el mapa del sitio el catálogo completo de Skills con 19.932 entradas y añade un pequeño conjunto de correcciones relacionadas con la entrega de.md, la seguridad del sondeo del gateway, la ocultación de URLs web, la capacidad de visión del worker de Kanban y los valores predeterminados de observación retrospectiva. ↩↩↩ -
Notas de la versión Hermes Agent v0.11.0. 23 de abril de 2026. «The Interface release»: reescritura completa en React/Ink de la interfaz interactiva CLI con un backend Python JSON-RPC (
tui_gateway); arquitectura de transporte conectable (agent/transports/); integración nativa con AWS Bedrock mediante Converse API; cinco nuevas rutas de inferencia (NVIDIA NIM, Arcee AI, Step Plan, Google Gemini CLI OAuth, Vercel ai-gateway); GPT-5.5 mediante Codex OAuth; QQBot como la 17.ª plataforma de mensajería, con configuración mediante escaneo de código QR; superficie ampliada de plugins (comandos slash, despacho de herramientas, bloqueo de la ejecución y transformación de resultados);/steer <prompt>para orientar al agente durante la ejecución mediante la inyección de contexto después de la siguiente llamada a una herramienta, sin invalidar la caché del prompt; hooks de shell para eventos del ciclo de vida sin plugins Python; modo de entrega directa mediante webhook que reenvía las cargas útiles directamente al chat de una plataforma; delegación más inteligente con roles de orquestador + profundidad de creación configurable + coordinación de archivos; sistema de plugins para el dashboard, cambio de tema en vivo, i18n y adaptación a dispositivos móviles. Estadísticas desde v0.9.0: 1.556 commits · 761 PR fusionados · 1.314 archivos modificados · 224.174 inserciones · 29 colaboradores de la comunidad. Consulta también: etiqueta de lanzamiento GitHub de Hermes Agent v0.11.0. ↩↩↩ -
Notas de la versión Hermes Agent v0.10.0. 16 de abril de 2026. «La versión Tool Gateway». Integración con Nous Tool Gateway para suscriptores de pago de Nous Portal, con acceso administrado a la búsqueda web de Firecrawl, la generación de imágenes con FAL / FLUX 2 Pro, la conversión de texto a voz con OpenAI TTS y la automatización del navegador con Browser Use, sin claves API adicionales. Activación individual para cada herramienta mediante el nuevo campo de configuración
use_gateway. En tiempo de ejecución, se prioriza gateway sobre las claves API directas cuando ambas opciones están configuradas. Integración completa conhermes toolsyhermes status. Reemplaza la variable de entorno obsoletaHERMES_ENABLE_NOUS_MANAGED_TOOLS. Implementación de @jquesnelle (emozilla). El CLI de Hermes Agent conserva la licencia MIT y sigue siendo completamente de código abierto; gateway es una integración con el producto de suscripción Portal existente, no un muro de pago para el CLI. Consulta también Nous Portal para conocer los precios de suscripción y registrarte. ↩↩↩