
Renombrar un profile de Hermes dejaba un fantasma
Renombrar un profile dejaba la state DB en el nombre viejo. El PR #112653 migra esa identidad, añade un comando de reintento y sella los profiles borrados.
Leer más
Multiplexación de perfiles: ya es lo predeterminado
gateway.multiplex_profiles ya viene activado, pero una guarda de arranque decide los valores sin definir: un gateway sirve todos los perfiles si es seguro.
Leer más
Por qué state.db se corrompe dentro de Docker Desktop, OrbStack y montajes WSL2
Haz bind mount de tu directorio de datos dentro de un container y virtiofs o 9p no pueden dar a SQLite WAL el lock compartido que necesita, así que dos escritores corrompen state.db en silencio mientras todos los integrity checks pasan. Desde el PR #111433, Hermes lo dice al arrancar y en hermes doctor, con dos arreglos concretos.
Leer más
Ya estás pagando por un razonamiento que no necesitas: el esfuerzo de razonamiento en cada selector de modelo de Hermes
Facturar el renombrado de una línea a esfuerzo de razonamiento ultra es el desperdicio más común en una configuración de agente. El PR #110346 pone un paso de esfuerzo en todos los selectores de modelo — hermes model, /model, la TUI de Ink, el gateway de mensajería. Aquí tienes toda la superficie de control: /reasoning, la píldora del composer de Desktop, el esfuerzo por tarea en Settings → Model → Auxiliary, agent.reasoning_overrides y delegation.reasoning_effort.
Leer más
Por qué tus herramientas MCP te desconectan sin parar: dentro del ciclo de vida del token OAuth
Figma, Linear y Notion vuelven a pedirle a Hermes que inicies sesión — y casi nunca es un error de configuración. Este es el ciclo de vida del token que hay detrás: cómo los refrescos concurrentes disparan la detección de reutilización, por qué un refresh token debe seguir ligado al servidor que lo emitió, y los cuatro arreglos que Hermes ha publicado para ello.
Leer más
hermes profile update borraba tus skills y tus tareas cron
El PR #111344 corrige un fallo P1 de pérdida de datos en el que actualizar una distribución de profile reemplazaba por completo los directorios skills/ y cron/ y borraba todo lo que el usuario hubiera añadido. Ahora se fusionan por root, así que tus añadidos sobreviven mientras los roots que publica el autor siguen actualizándose.
Leer más
Hermes v0.21.3: tu sesión de escritorio deja de cerrarse sola tras dormir
v0.21.3 (tag v2026.9.14) es el tag de parche que lleva los arreglos de inicio de sesión remoto a los usuarios de Docker y de la nube: las ráfagas de refresh concurrentes ya no revocan la sesión entera, el refresh sale del event loop y los procesos de larga vida dejan de filtrar handles de escritura duplicados sobre state.db.
Leer más
Tus fotos del iPhone por fin funcionan: decodificación HEIC en vision_analyze y herramientas de visión que dejan de desaparecer
Pasarle una foto del iPhone a Hermes solía devolver una sola línea: source is not a recognized image. El PR #106408 añadió sniffing de ftyp de ISO-BMFF más normalización con pillow-heif; el PR #110136 corrigió el cache poisoning que hacía desaparecer las herramientas de visión en procesos de larga duración.
Leer más
Cómo completar OAuth en un servidor remoto: túneles SSH, callbacks pegados y códigos de dispositivo
Cuando Hermes corre en una VM de la nube o detrás de un jump box, el OAuth con redirección a loopback (Spotify, servidores MCP remotos) se rompe en 127.0.0.1. Hay tres rutas viables: un local forward por SSH, pegar de vuelta la redirect URL y los flujos de device code o paste-the-code.
Leer más
169.254.169.254 ahora pregunta antes: Hermes pone la obtención de credenciales del instance metadata de la nube detrás de aprobación
En una VM de la nube, el servicio de instance metadata entrega credenciales IAM temporales a cualquier proceso local sin autenticación. Tras el PR #106418, los comandos que tocan 169.254.169.254, fd00:ec2::254, metadata.google.internal o 100.100.100.200 piden aprobación en lugar de aprobarse solos.
Leer más
Cuando tus dedos pulsan Esc: keybindings de Vim para el composer del CLI de Hermes (y el nombre de la rama en tu barra de estado)
Escribes un prompt largo, ves una errata y pulsas Esc por reflejo para corregirla, y no pasa nada. Tras el PR #106412, display.vim_mode convierte el composer de entrada del CLI en un editor estilo vi, con una etiqueta NORMAL/INSERT/REPLACE en vivo en la barra de estado.
Leer más
Hermes v0.21.2: aislamiento entre perfiles y el fin de la tormenta de backends
v0.21.2 cierra siete fugas entre perfiles en instalaciones multi-perfil, evita que el escritorio arranque un backend por cada perfil y corrige un lote de comportamientos de cron, kanban y memoria que no tenían ningún sentido.
Leer más
Sin reinicios: Hermes sirve al instante los perfiles nuevos mientras el gateway sigue en marcha
Creas un tercer perfil a las dos de la mañana, pegas el token del bot, escribes hola en Telegram y no responde nada: el escritorio sigue diciendo que el gateway de ese perfil está detenido. La única salida documentada era reiniciar el gateway, lo que interrumpe a los otros dos perfiles que están ejecutando tareas largas. El PR #109239 cambia eso: un gateway multiplex en ejecución ahora reconcilia su directorio de perfiles en caliente. Los perfiles nuevos se sirven al momento, las credenciales pegadas después reconstruyen su adaptador, los perfiles borrados se desmontan y pierden su ruta, y un reescaneo cada 30 segundos cubre los fallos. Fusionado en main el 2026-09-12, después de la versión v0.21.2.
Leer más
Hermes ahora pide aprobación antes de desinstalar un paquete
Un paquete npm global te está ralentizando las builds, así que escribes `npm uninstall -g some-package` y pulsas Enter. Dos días después falta en CI y todos los proyectos de esa máquina quedan afectados. Ese comando antes se ejecutaba sin ninguna pregunta, porque la puerta de comandos peligrosos solo conocía primitivas de shell. El PR #109170 (ya en main) añade una regla package manager uninstall para npm, pnpm, yarn, pip y brew: las desinstalaciones ahora preguntan, mientras que las instalaciones y actualizaciones siguen pasando. Las reglas están ancladas con _CMDPOS, así que el texto entre comillas no se marca por error, y una opción global con un argumento tampoco se escapa.
Leer más
Hermes MCP include: una lista vacía ya bloquea todo, en todas partes
Varias interfaces leían tools.include: [] como «clave sin definir». Tras el PR #109188, hermes mcp list, hermes mcp configure, hermes tools, la reinstalación del catálogo y el panel MCP de escritorio lo leen como 0 seleccionados.
Leer más
Las tareas cron de Hermes ahora degradan en lugar de fallar en gateways systemd sin sesión D-Bus de usuario
En gateways gestionados por systemd que no tienen sesión D-Bus de usuario (contenedores, LXC reducidos, usuarios de servicio sin linger), cada tarea cron fallaba justo en el momento del despacho. El PR #109311 hace que esas tareas degraden: siguen siendo un proceso worker externo, solo que sin aislamiento de cgroup, con un único aviso por proceso del gateway. Pon cron.require_restart_safe_scope: true para recuperar el comportamiento fail-closed. Fusionado en main el 2026-09-12; todavía no está en ninguna versión publicada.
Leer más