Cómo migrar de OpenClaw a Hermes Agent de forma segura

Un cambio seguro más allá de la importación de una sola línea

Índice

Migrar un asistente de IA no es lo mismo que copiar la configuración de una aplicación. La parte difícil consiste en preservar la identidad, la memoria, el comportamiento de las herramientas, las tareas programadas y el acceso a los mensajes, evitando que dos pasarelas actúen como el mismo bot.

Hermes Agent ahora incluye hermes claw migrate, un planificador de migración real en lugar de un comando de importación cosmético. Puede mapear más de 30 categorías desde OpenClaw, detectar conflictos, crear un punto de restauración de Hermes y archivar el estado incompatible para su revisión manual. Esto hace que la migración sea práctica, pero no la hace automática.

Conmutación por etapas del estado desde OpenClaw a Hermes Agent

El enfoque descrito a continuación es una conmutación por etapas: hacer una copia de seguridad de OpenClaw, ejecutar una prueba en seco (dry-run) de la migración completa, importar sin secretos, validar Hermes desde la terminal y transferir las credenciales de mensajería solo después de que el nuevo agente se comporte correctamente. No comiences con --overwrite --migrate-secrets --yes; esas banderas son útiles para la automatización después de una migración ensayada, no para descubrir en qué depende realmente tu asistente.

Manual de ejecución para la migración de OpenClaw a Hermes

Fase Comando o acción Condición de salida
Inventario Registrar versiones, espacios de trabajo, complementos, canales, trabajos cron y proveedores Cada dependencia no relacionada con archivos tiene un responsable
Copia de seguridad openclaw backup create --verify Existe un archivo verificado fuera del estado de OpenClaw
Vista previa hermes claw migrate --dry-run --preset full No hay conflictos inexplicables ni datos críticos omitidos
Importación Ejecutar la predefinición completa (preset) sin secretos La configuración, la personalidad, la memoria, las habilidades y las entradas MCP de Hermes existen
Prueba local Ejecutar Hermes en la terminal El modelo, las herramientas, la memoria, las aprobaciones y el espacio de trabajo pasan las pruebas
Conmutación de canal Detener OpenClaw, migrar o establecer secretos, iniciar la pasarela de Hermes Solo Hermes posee cada token de bot o cuenta
Período de prueba Mantener OpenClaw detenido pero recuperable Las tareas programadas y entrantes se comportan correctamente
Limpieza Archivar el estado antiguo de OpenClaw solo después de la aceptación La ventana de reversión se cierra deliberadamente
flowchart TD A[Inventario del sistema en vivo] --> B[Copia de seguridad de OpenClaw verificada] B --> C["Prueba en seco: hermes claw migrate --dry-run --preset full"] C --> D[Importación sin secretos] D --> E["Validación en terminal en una nueva sesión"] E --> F["Conmutación controlada de canal"] F --> G[Período de prueba con OpenClaw detenido] G --> H["Limpieza después de la aceptación"]

El comando es corto porque el juicio se ha trasladado a las etapas de vista previa y verificación. Trata el informe de migración generado como un plan de cambios, no como una salida de consola tranquilizadora.

Lo que hermes claw migrate lee realmente

El migrador lee ~/.openclaw/ por defecto. También detecta los directorios antiguos ~/.clawdbot/ y ~/.moltbot/, junto con nombres de archivos de configuración heredados, por lo que una instalación antigua no necesita ser renombrada antes de la migración.

OpenClaw ha utilizado varios diseños de espacio de trabajo. Hermes comprueba workspace/, workspace.default/ y workspace-main/, y reconoce directorios por agente como workspace-<agentId>. Si usas raíces de agente personalizadas o múltiples perfiles, verifica cada ruta resuelta en la vista previa en lugar de suponer que el espacio de trabajo predeterminado representa todo el sistema.

El destino suele ser ~/.hermes/. Una instalación existente de Hermes no se trata como un bucket vacío: el planificador informa sobre conflictos y se niega a aplicar por defecto cuando no puede conservar ambos lados de forma segura.

Qué se migra y qué no

La distinción útil no es “soportado” versus “no soportado”. Algunos estados de OpenClaw se mapean directamente, algunos deben ser transformados y otros solo pueden archivarse porque los dos agentes usan modelos de ejecución diferentes.

Migración directa o transformada

Origen en OpenClaw Destino en Hermes Comportamiento de la migración
workspace/SOUL.md ~/.hermes/SOUL.md Copia directa de la personalidad
workspace/MEMORY.md ~/.hermes/memories/MEMORY.md Analizado, fusionado y deduplicado
workspace/USER.md ~/.hermes/memories/USER.md Analizado, fusionado y deduplicado
workspace/memory/*.md Memoria principal de Hermes Los archivos diarios se fusionan en entradas
workspace/AGENTS.md Directorio de proyecto elegido Requiere --workspace-target
Directorios de habilidades de OpenClaw ~/.hermes/skills/openclaw-imports/ Copiado con una política explícita de conflictos
agents.defaults.model Configuración de modelo de Hermes Las formas principal y de respaldo se interpretan
models.providers.* Configuración de proveedor de Hermes La URL base y el tipo de API se mapean
mcp.servers.* mcp_servers.* Las definiciones Stdio y HTTP/SSE se mapean
Tokens de canal y listas de permitidos .env de Hermes Solo con --migrate-secrets
Política de reinicio de sesión session_reset Los modos diario e inactivo se traducen
Aprobaciones de ejecución Aprobaciones y lista de comandos permitidos de Hermes Los modos y patrones se transforman
Configuraciones de navegador, TTS, sandbox y tiempo de espera Configuración relacionada de Hermes Los campos soportados se mapean

La memoria no se copia como un documento opaco único. El migrador analiza los archivos de memoria y perfil de usuario de OpenClaw, los fusiona con las entradas existentes de Hermes y los deduplica. Esto es más seguro que reemplazar un archivo de memoria de Hermes establecido, pero también significa que debes comparar el significado y la estructura, no solo los tamaños de archivo.

Archivado para reconstrucción manual

Función de OpenClaw Por qué no es directamente portable Dirección en Hermes
Trabajos cron Los programadores y modelos de entrega difieren Recrear con hermes cron create
Complementos Las APIs de complementos son específicas del producto Reemplazar con un complemento de Hermes, habilidad, servidor MCP o herramienta integrada
Hooks y webhooks Los contratos de eventos y permisos difieren Recrear con webhooks o hooks de la pasarela de Hermes
Backend de memoria avanzado Las bases de datos y semánticas de recuperación difieren Configurar un proveedor de memoria de Hermes por separado
Configuraciones del registro de habilidades La implementación del registro difiere Configurar con hermes skills config
Lista y vinculaciones multi-agente Los modelos de enrutamiento y perfil difieren Reconstruir con perfiles y configuración de pasarela de Hermes
IDENTITY.md Hermes usa una división de identidad diferente Fusionar la identidad relevante en SOUL.md
HEARTBEAT.md No hay un equivalente directo de latido impulsado por archivo Expresar el trabajo periódico como trabajos cron
TOOLS.md Hermes suministra sus propias instrucciones de herramientas Mover solo reglas de flujo de trabajo genuinas a una habilidad o archivo de contexto
BOOTSTRAP.md La semántica de bootstrap difiere Usar archivos de contexto, configuración o una habilidad

Estos elementos se guardan bajo ~/.hermes/migration/openclaw/<timestamp>/archive/. Una migración exitosa con un archivo no vacío no está terminada; el archivo es la cola de trabajo restante.

Paso 1: Inventariar el sistema OpenClaw en vivo

Antes de instalar nada, anota qué comportamientos están realmente en uso. Los archivos de configuración por sí solos pueden no revelar la base de datos externa de un complemento, una pasarela supervisada manualmente, un directorio de agente personalizado, un proceso de modelo local o la cuenta que posee un punto final de webhook.

Como mínimo, registra:

  • Versiones de OpenClaw y Hermes.
  • El directorio de estado activo de OpenClaw y la ruta de configuración.
  • Todos los directorios de agentes y espacios de trabajo.
  • Proveedores de modelos, modelos de respaldo y puntos finales locales.
  • Complementos instalados y habilitados, incluyendo sus datos persistentes.
  • Habilidades de directorios de espacio de trabajo, administrados, personales y de proyecto.
  • Servidores MCP, variables de entorno, directorios de trabajo y credenciales.
  • Cuentas de Telegram, Discord, Slack, WhatsApp, Signal, Matrix y Mattermost.
  • Trabajos cron, hooks, webhooks, comportamiento de latido y supervisores externos.
  • Reglas de aprobación, listas de comandos permitidos, backend de sandbox y acceso al navegador.

Este inventario se convierte en la lista de verificación de aceptación más adelante. Sin él, un asistente migrado puede parecer saludable porque responde mensajes mientras falta silenciosamente la copia de seguridad semanal, un proveedor de memoria o una regla de aprobaciones restrictiva.

Paso 2: Crear una copia de seguridad verificada de OpenClaw

OpenClaw 2.0 incluye un comando de copia de seguridad que entiende su estado SQLite actual, las raíces de agentes configuradas, credenciales, complementos y espacios de trabajo. Úsalo en lugar de copiar archivos de base de datos en vivo y esperar que sus acompañantes WAL se capturaran de manera consistente.

mkdir -p ~/Backups
openclaw gateway stop
openclaw backup create --output ~/Backups --verify

Mantén el archivo resultante fuera de ~/.openclaw/. La opción --verify valida el archivo inmediatamente, incluyendo la seguridad de las rutas y las comprobaciones de integridad de SQLite soportadas. Las bases de datos propiedad de OpenClaw se capturan a través de la API de copia de seguridad en línea de SQLite, verificadas por el propietario y compactadas, en lugar de copiarse como archivos crudos. Si tus espacios de trabajo son grandes, puedes usar --no-include-workspace, pero entonces haz una copia de seguridad de esos repositorios y archivos no Git por separado; los directorios de agente permanecen incluidos de todas formas.

La trampa de transcripciones pre-2.0

OpenClaw 2.0 movió las sesiones y transcripciones fuera de sessions.json y archivos JSONL a SQLite, por defecto en ~/.openclaw/agents/<agent>/agent/openclaw-agent.sqlite. Esto importa aquí por una razón no obvia: el archivo portable backup create omite transcripciones y registros JSONL heredados incluso cuando ya no se están escribiendo.

Por lo tanto, si tu instalación de OpenClaw es anterior a la 2.0 y te importa el historial de conversaciones antiguo, un archivo verificado por sí solo no lo protege. Detén la pasarela y toma una instantánea del sistema de archivos, volumen o máquina virtual antes de migrar, o usa los comandos de instantánea por base de datos de OpenClaw para las bases de datos de las que quieras una copia compacta e independientemente verificable:

openclaw backup sqlite create --global --repository ~/Backups/openclaw-sqlite
openclaw backup sqlite create --agent main --repository ~/Backups/openclaw-sqlite
openclaw backup sqlite list --repository ~/Backups/openclaw-sqlite
openclaw backup sqlite verify ~/Backups/openclaw-sqlite/<snapshot-id>

Trata esos repositorios de instantáneas con los mismos permisos y política de retención que el estado en vivo; pueden contener perfiles de autenticación, estado de sesión y datos de complementos. Para una configuración replicada continuamente en lugar de archivos periódicos, OpenClaw documenta Litestream contra las mismas bases de datos; esa es una mejor respuesta que trabajos de cp hechos a mano si la migración va a tardar días.

Crea también una copia de seguridad de Hermes si Hermes ya contiene estado útil:

hermes backup

La migración normalmente crea su propio archivo de Hermes antes de la migración bajo ~/.hermes/backups/. No pases --no-backup durante la primera conmutación; ahorrar unos segundos no compensa eliminar la ruta de reversión más simple.

Paso 3: Instalar y probar un Hermes Agent vacío

Instala Hermes, selecciona un modelo y demuestra que el agente de terminal básico funciona antes de importar el estado de OpenClaw. Esto separa las fallas de instalación y proveedor de las fallas de migración. La Guía del asistente de IA Hermes cubre en detalle la selección de proveedor y la configuración de la pasarela; para la migración solo necesitas una línea base de terminal funcional.

curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
source ~/.bashrc
hermes setup
hermes status
hermes doctor

Si ya instalaste Hermes, actualízalo antes de confiar en el comportamiento actual de migración:

hermes update
hermes --version

Esa comprobación de versión no es una formalidad. La postura de seguridad de claw migrate cambió sustancialmente durante 2026: las construcciones actuales se niegan a aplicar un plan conflictivo, escriben un punto de restauración antes de la migración por defecto, redactan secretos en los informes que guardan en disco y requieren --migrate-secrets explícitamente incluso bajo --preset full. Las construcciones anteriores no hacían ninguna de esas cosas; notablemente, --preset full solía traer llaves de API silenciosamente, y un plan conflictivo informaba “migrado 0” después de que ya hubieras confirmado. Si estás siguiendo un tutorial antiguo, las banderas pueden parecer idénticas mientras el comportamiento difiere exactamente en los lugares que importan.

No configures todavía los tokens del bot antiguo. La validación solo por terminal permite que OpenClaw permanezca en vivo mientras preparas Hermes, y evita que dos procesos de pasarela compitan por la misma identidad de mensajería.

Paso 4: Ejecutar la prueba en seco antes de elegir banderas

Comienza con la predefinición completa porque revela la mayor superficie de mapeo posible, pero excluye los secretos:

hermes claw migrate --dry-run --preset full

La migración siempre presenta una vista previa antes de aplicar, incluso sin --dry-run. La bandera explícita sigue siendo valiosa porque hace tu intención inequívoca y te da tiempo para inspeccionar rutas de origen, destinos, transformaciones, conflictos, elementos omitidos, archivos y advertencias de secretos sin una confirmación impaciente. El conjunto completo de banderas para claw migrate y sus vecinos se resume en la Hoja de referencia de la CLI de Hermes Agent.

Usa un origen personalizado cuando el estado de OpenClaw no está en la ubicación predeterminada:

hermes claw migrate \
  --dry-run \
  --preset full \
  --source /srv/openclaw-state

Si AGENTS.md debe aplicar a un repositorio particular, dilo explícitamente:

hermes claw migrate \
  --dry-run \
  --preset full \
  --workspace-target /srv/projects/my-project

Sin --workspace-target, las instrucciones del espacio de trabajo no se colocan en un directorio actual arbitrario. Ese es el comportamiento correcto: un archivo de instrucciones pertenece a un alcance, y suponer su alcance puede cambiar cada sesión de Hermes lanzada bajo el directorio incorrecto.

¿Predefinición completa o de datos de usuario?

La predefinición full incluye la infraestructura compatible y la configuración de comportamiento. La predefinición user-data se centra en la personalidad, la memoria, las habilidades y el contenido de usuario relacionado, mientras excluye la configuración de infraestructura.

Usa user-data cuando Hermes ya tiene una configuración cuidadosamente construida de proveedor, pasarela, seguridad o sandbox. Usa full cuando Hermes es nuevo y OpenClaw es la configuración autoritativa, pero aun así inspecciona cada configuración de comportamiento transformada. Ninguna predefinición importa secretos a menos que se agregue --migrate-secrets.

Paso 5: Resolver conflictos sin destruir el origen

El comportamiento predeterminado de conflicto es conservador: la migración se niega a aplicar un plan con conflictos de archivo sin resolver a menos que se establezca --overwrite. Eso es preferible a una conmutación aparentemente exitosa que sobrescribe una personalidad o habilidad más nueva de Hermes; y es preferible al comportamiento anterior, donde confirmar un plan conflictivo producía un resultado de “migrado 0” que parecía una operación sin efectos pero era realmente un salto silencioso.

Los conflictos de habilidades se manejan por separado, y el predeterminado allí es skip, que conserva silenciosamente la versión existente de Hermes y descarta la entrante. Para una primera migración, recomiendo rename en su lugar:

hermes claw migrate \
  --preset full \
  --workspace-target /srv/projects/my-project \
  --skill-conflict rename

Las habilidades importadas se colocan bajo ~/.hermes/skills/openclaw-imports/. Con rename, una colisión de nombres produce un hermano importado en lugar de ocultar cualquiera de las versiones. Revisa las dos implementaciones, prueba la elegida y elimina la copia redundante más tarde.

Usa --overwrite solo después de revisar la vista previa o al reconstruir un perfil de Hermes descartable. Se aplica de manera más amplia que el manejo de conflictos de habilidades y puede reemplazar archivos existentes de Hermes. La presencia de una copia de seguridad hace que sobrescribir sea recuperable, no deseable.

Paso 6: Migrar la configuración y los datos de usuario sin secretos

Aplica el plan revisado y deja las credenciales para la etapa de conmutación:

hermes claw migrate \
  --preset full \
  --workspace-target /srv/projects/my-project \
  --skill-conflict rename

Después de la finalización, guarda los conteos impresos de elementos migrados, omitidos, en conflicto y archivados. Abre el directorio de migración con marca de tiempo y lee su resumen antes de iniciar una nueva sesión de Hermes. Las construcciones actuales redactan los valores de secretos detectados en el report.json y summary.md que escriben, por lo que esos archivos son seguros para conservarlos junto con tus notas de cambio; pero confírmalo en tu versión en lugar de suponerlo, porque las construcciones anteriores escribían llaves de API crudas en los mismos informes.

Las nuevas sesiones importan. Las habilidades y entradas de memoria importadas se cargan cuando comienza una sesión, por lo que probar dentro de una sesión que predice a la migración puede producir un falso “habilidad no encontrada” o un resultado de memoria obsoleta.

Paso 7: Validar el comportamiento antes de la conmutación de canal

Ejecuta las comprobaciones posteriores a la migración desde la terminal:

hermes status
hermes doctor
hermes config show
hermes gateway status

Si la recuperación de memoria parece incompleta, reconstruye el índice antes de concluir que la importación falló:

hermes memory reindex

Luego inicia una nueva conversación de Hermes y prueba comportamientos observables, no solo la presencia de archivos. Pide una preferencia de usuario conocida desde la memoria, invoca una habilidad importada, llama a una herramienta MCP, ejecuta un comando de terminal inofensivo que debería ser permitido y prueba uno que debería requerir aprobación.

Una matriz de aceptación útil se ve así:

Área Prueba El fallo generalmente significa
Personalidad Hacer una pregunta donde el tono y los límites son obvios SOUL.md no fue encontrado, fue sobrescrito o necesita contenido de identidad fusionado
Memoria de usuario Pedir una preferencia estable conocida Las entradas de memoria no se importaron, se deduplicaron inesperadamente, no se reindexaron o no se cargaron en una nueva sesión
Habilidad Invocar un flujo de trabajo importado distintivo Conflicto de nombre, metadatos inválidos, dependencia faltante o sesión obsoleta
Proveedor Ejecutar una respuesta normal y larga Mapeo de modelo incorrecto, credencial faltante o tipo de API incompatible
MCP Llamar a una herramienta de solo lectura de cada servidor Entorno faltante, cwd incorrecto, desajuste de transporte o problema de filtro de herramientas
Terminal Probar comandos permitidos y que requieren aprobación El modo de aprobación o el mapeo de lista de permitidos cambió la política
Navegador Abrir una página de prueba inofensiva La URL CDP, el backend del navegador o el acceso al sandbox difiere
Compresión Ejecutar una sesión larga descartable El modelo de resumen o el comportamiento de compactación no se mapeó como se pretendía
Reinicio de sesión Inspeccionar la configuración y probar en un perfil descartable La interpretación diario/inactivo difiere de las reglas de OpenClaw

La migración mapea timeoutSeconds a un valor estimado de giros máximos, traduce los niveles de razonamiento y convierte los modos de aprobación. Esos son mapeos semánticos en lugar de copias byte a byte. Comprueba que el comportamiento resultante coincida con tu intención, especialmente para tareas autónomas largas y ejecución de comandos.

Paso 8: Manejar los secretos como un cambio de seguridad separado

--migrate-secrets puede recopilar claves permitidas desde valores de configuración de OpenClaw, ~/.openclaw/.env, objetos de entorno de configuración y perfiles de autenticación por agente (~/.openclaw/agents/<agent>/agent/auth-profiles.json). Entiende cadenas simples, plantillas de entorno y objetos SecretRef respaldados por entorno.

Intencionalmente no copia nombres de secretos arbitrarios. Los SecretRef respaldados por archivo y por comando no se pueden resolver automáticamente, y los valores fuera de la lista de permitidos soportada permanecen para la configuración manual. Trata cada advertencia aquí como un control que funciona como está diseñado, no como una razón para pegar todo el entorno de OpenClaw en Hermes.

Para una primera migración, prefiero configurar las credenciales del proveedor a través de Hermes después de la importación de datos. Si usas la migración automatizada de secretos, haz una vista previa y ejecútala solo cuando estés listo para transferir la propiedad del canal:

hermes claw migrate \
  --dry-run \
  --preset full \
  --migrate-secrets

Luego verifica la presencia sin imprimir valores:

hermes status
hermes auth status

Rota las credenciales si estuvieron expuestas en el historial de shell, pegadas en notas de migración o almacenadas con permisos más débiles de los previstos. La migración preserva el acceso; no prueba que la práctica anterior de manejo de secretos fuera segura.

Paso 9: Realizar una conmutación de mensajería controlada

No hay una entrega con cero tiempo de inactividad honesta cuando dos procesos pollen, se suscriban o respondan como la misma cuenta de bot. El patrón seguro es preparar en paralelo, detener OpenClaw, iniciar Hermes, probar cada plataforma y mantener los comandos de reversión listos.

Primero detén la pasarela de OpenClaw y confirma que está detenida:

openclaw gateway stop
openclaw gateway status

Ahora migra o establece manualmente los secretos de mensajería, configura la pasarela de Hermes y iníciala:

hermes gateway setup
hermes gateway install
hermes gateway start
hermes gateway status

Envía un mensaje directo desde un usuario permitido en cada plataforma. Prueba el texto entrante, una respuesta, un adjunto si se usa, un comando con barra inclinada, una tarea larga, una interrupción y un envío programado o manual saliente. Un estado de servicio en verde prueba que un proceso está funcionando; no prueba que las listas de permitidos, el enrutamiento de hilos, la entrega y el formato sobrevivieron al traslado.

WhatsApp requiere volver a hacer el emparejamiento porque la migración no transfiere la sesión de Baileys como un token reutilizable. Ejecuta hermes whatsapp y completa el flujo de QR. Otros canales pueden reutilizar tokens, pero los diseños de cuenta y las vinculaciones multi-cuenta merecen pruebas explícitas.

Las habilidades, complementos y servidores MCP no son intercambiables

Las habilidades de OpenClaw de cuatro ubicaciones pueden ser importadas, pero un directorio importado solo es útil si sus suposiciones permanecen verdaderas. Comprueba nombres de comandos, rutas del sistema de archivos, variables de entorno, herramientas específicas de la plataforma y referencias a APIs exclusivas de OpenClaw. La Guía de habilidades de OpenClaw explica los formatos de origen; la Guía de autoría de habilidades de Hermes cubre el comportamiento del destino.

Los complementos de OpenClaw no se convierten en complementos de Hermes. Reconstruye la capacidad en la capa más estrecha adecuada:

  • Usa una habilidad de Hermes para procedimientos, selección de herramientas e instrucciones reutilizables.
  • Usa un servidor MCP para datos en vivo o un límite de servicio externo.
  • Usa una herramienta integrada de Hermes cuando ya proporciona la capacidad.
  • Usa un complemento de Hermes solo cuando el código debe participar en el propio tiempo de ejecución del agente.

Este es un buen momento para eliminar sedimento arquitectónico. Un complemento instalado para compensar una limitación antigua de OpenClaw puede no tener razón para sobrevivir en Hermes, mientras que un complemento que sostiene una base de datos durable necesita un plan de exportación o reemplazo deliberado.

Las definiciones MCP se migran de manera más directa, incluyendo comandos, argumentos, entornos, directorios de trabajo, URLs y filtros de herramientas incluir/excluir. Aun así, prueba cada servidor por separado: un mapeo YAML correcto no puede instalar un ejecutable faltante, renovar OAuth o hacer que una ruta del host antiguo exista en el nuevo.

La memoria necesita una comprobación de calidad, no una comprobación de conteo de líneas

Hermes importa MEMORY.md, USER.md y archivos de memoria diaria a su estructura de memoria. Eso preserva hechos útiles, pero los complementos de memoria de OpenClaw, las bases de datos de contexto largo, los índices de incrustación y las políticas de recuperación se archivan en lugar de traducirse a un sistema cognitivo equivalente.

Revisa la memoria importada en tres pasadas:

  1. Identidad y preferencias estables: preserva hechos concisos que deberían influir en muchas sesiones.
  2. Conocimiento operativo: mueve los procedimientos repetibles a habilidades o contexto de proyecto en lugar de la memoria global.
  3. Residuo histórico: archiva incidentes completados, planes obsoletos y comentarios auto-referenciales del agente en lugar de inyectarlos para siempre.

No importa cada transcripción como memoria durable. Más texto recordado puede hacer que un agente sea menos coherente al recuperar repetidamente restricciones obsoletas y sus propios supuestos anteriores. La Guía del sistema de memoria de Hermes explica dónde vivirán las entradas importadas, y la Comparación de proveedores de memoria de agentes es el mejor lugar para elegir un nuevo backend a largo plazo.

Recrear trabajos cron, latidos, hooks y enrutamiento multi-agente

Los trabajos cron se archivan porque la ejecución programada no es solo una expresión cron. Un trabajo también tiene un prompt o comando, directorio de trabajo, modelo, tiempo de espera, destino de entrega, permisos, comportamiento de reintento y expectativas sobre el estado de la sesión.

Para cada trabajo archivado de OpenClaw, anota esos campos y recréalo con Hermes:

hermes cron create
hermes cron list

Ejecuta cada trabajo manualmente una vez antes de habilitar su programación. Verifica tanto el trabajo como la ruta de entrega, especialmente cuando el trabajo antiguo publicaba en un chat de Telegram, un canal de Slack o un hilo de Discord.

Traduce HEARTBEAT.md a trabajos cron explícitos solo cuando la ejecución periódica sea verdaderamente necesaria. Un latido vago que pide al agente inspeccionar todo cada pocos minutos es costoso y difícil de verificar; trabajos nombrados separados con resultados observables son más fáciles de operar.

Las definiciones multi-agente y las vinculaciones de canal también requieren diseño manual. Los perfiles de Hermes proporcionan estado y pasarelas aislados, pero no son una reescritura sintáctica de la lista de agentes de OpenClaw. Mapea cada agente por responsabilidad, espacio de trabajo, credenciales, canal y límite de seguridad en lugar de reproducir nombres primero; el razonamiento de perfil primero detrás de ese mapeo se trabaja a través en la Guía de configuración de producción de Hermes.

Solución de problemas de las fallas que importan

“Directorio de OpenClaw no encontrado”

El comando busca en los directorios predeterminados de OpenClaw, Clawdbot y Moltbot actuales. Si tu estado vive en otro lugar, apunta al directorio que contiene la configuración de OpenClaw y el estado relacionado:

hermes claw migrate --dry-run --source /path/to/openclaw

No apuntes --source solo al espacio de trabajo a menos que esa sea genuinamente el árbol de origen completo. La vista previa debería mostrar configuración, espacio de trabajo y categorías reconocidas.

La migración se niega debido a conflictos

Este es el predeterminado seguro, no un error. Haz una copia de seguridad de Hermes, identifica qué lado es autoritativo para cada conflicto, usa --skill-conflict rename para habilidades y reserva --overwrite para un plan revisado.

Si la configuración existente de Hermes es valiosa, considera la predefinición user-data. Importa el contenido propiedad del usuario del asistente sin intentar reemplazar la infraestructura establecida.

Las habilidades importadas no aparecen

Inicia una nueva sesión e inspecciona el directorio importado bajo ~/.hermes/skills/openclaw-imports/. Usa /skills dentro de Hermes para confirmar el descubrimiento. Si la habilidad existe pero no puede ejecutarse, inspecciona sus dependencias y suposiciones de herramientas en lugar de repetir la migración.

Las llaves del proveedor no se encontraron

La clave puede estar almacenada en un archivo de entorno de OpenClaw, un objeto de entorno de configuración, un perfil de autenticación, un SecretRef respaldado por archivo, un SecretRef respaldado por comando o un nombre de variable no soportado. El migrador resuelve las formas soportadas y advierte sobre el resto. Agrega los valores no resueltos a través de la configuración de Hermes o comandos de autenticación en lugar de convertir referencias seguras en texto plano solo para satisfacer al importador.

El bot está funcionando pero los mensajes faltan o se duplican

Confirma que la pasarela de OpenClaw está detenida y que solo un perfil de Hermes posee el token. Luego inspecciona hermes gateway status y los registros de la pasarela, seguido de las listas de permitidos de canal y la selección de cuenta. Consumidores duplicados y listas de permitidos incorrectas son más comunes que un modelo de lenguaje roto.

La personalidad está presente pero la recuperación es pobre

SOUL.md y la memoria son capas diferentes. Confirma que la personalidad copiada a ~/.hermes/SOUL.md, que las entradas de memoria llegaron a ~/.hermes/memories/ y que la prueba usa una nueva sesión. Ejecuta hermes memory reindex antes de depurar a fondo. Si OpenClaw dependía de un complemento de memoria externo, configura un proveedor de memoria de Hermes en lugar de esperar que la importación de Markdown recree su comportamiento de recuperación.

Revertir Hermes

Detén la pasarela de Hermes antes de restaurar la copia de seguridad de Hermes antes de la migración:

hermes gateway stop
hermes import ~/.hermes/backups/pre-migration-<timestamp>.zip

hermes import sobrescribe los archivos en el inicio de Hermes con el contenido del archivo, por lo que inspecciona el nombre de archivo exacto y entiende que las sesiones de Hermes posteriores a la migración pueden ser reemplazadas. Luego mantén Hermes detenido, reinicia OpenClaw y verifica la salud de su pasarela y canales.

Migración manual cuando el comando no puede modelar tu configuración

Un plan de respaldo manual es más lento pero a veces más claro para instalaciones fuertemente personalizadas. Construye un perfil de Hermes limpio y migra por responsabilidad:

  1. Copia o reescribe el contenido de la personalidad a ~/.hermes/SOUL.md.
  2. Cura los hechos estables del usuario en MEMORY.md y USER.md de Hermes en lugar de copiar todo el historial.
  3. Coloca las instrucciones del proyecto en el AGENTS.md de nivel de repositorio correcto.
  4. Copia las habilidades compatibles a un directorio de importación nombrado y Pruébalas individualmente.
  5. Traduce las definiciones del proveedor y MCP a ~/.hermes/config.yaml sin imprimir secretos.
  6. Configura las credenciales a través de la autenticación de Hermes o la gestión de secretos.
  7. Recrea aprobaciones, sandboxing, acceso al navegador, trabajos cron, webhooks y canales.
  8. Reemplaza cada complemento de OpenClaw con una capacidad explícita de Hermes o jubílalo.

La ruta manual es especialmente apropiada cuando la fuente contiene varios agentes de OpenClaw con diferentes espacios de trabajo, complementos de memoria y vinculaciones de canal. Una unión automática puede preservar archivos mientras borra el aislamiento que hizo que la configuración fuera segura.

No limpies OpenClaw inmediatamente

Después de que Hermes haya superado las pruebas locales y de mensajería, mantén OpenClaw instalado pero detenido durante un período de prueba. Preserva la copia de seguridad verificada de OpenClaw, el archivo de migración, la copia de seguridad de Hermes antes de la migración y una copia de la lista de verificación de aceptación.

Hermes documenta hermes claw cleanup para renombrar los directorios restantes de OpenClaw a .pre-migration/, y hermes claw cleanup --dry-run para previsualizar lo que se archivaría. Úsalo solo después de que la pasarela de OpenClaw esté detenida, la versión actual de Hermes incluya salvaguardas de proceso y hayas decidido no revertir. Las construcciones antiguas de 2026 tenían una ruta de limpieza reportada que podía mover el estado mientras una pasarela de OpenClaw seguía funcionando; el código actual marca la salvaguarda como implementada, pero una copia de seguridad verificada y el servicio de origen detenido permanecen como el límite sensato.

La limpieza no es necesaria para probar que Hermes funciona. Existe para reducir la confusión de estado futura, por lo que posponerla durante una ventana de reversión es buena operación, no desorden.

Cuándo permanecer en OpenClaw 2.0

OpenClaw 2.0 no es una línea base abandonada. La versión v2026.8.1 llegó con más de 16,000 solicitudes de extracción de más de 900 contribuidores —aproximadamente la mitad del historial total de fusiones del proyecto— y cambió sustancialmente la incorporación, la interfaz de Control Web, el almacenamiento de sesiones, las copias de seguridad, los canales, la memoria, los complementos, las automatizaciones, el uso del navegador y la computadora, la seguridad y la fiabilidad del servicio. Si esas funciones de plataforma son centrales para tu implementación, la migración puede eliminar más capacidad funcional de la que simplifica.

Permanece en OpenClaw cuando dependas de:

  • Su interfaz de Control reconstruida, con editor de archivos acoplado, panel de Cambios respaldado por git, panel del navegador y aprobaciones en la conversación.
  • Predefiniciones de sesión, búsqueda de transcripciones, grupos, vistas de estado y acciones por lotes.
  • Un complemento específico del producto sin equivalente en Hermes.
  • Un enrutamiento complejo multi-usuario, móvil, de dispositivo o de canal ya funcionando en producción.
  • Administración específica de navegador, uso de computadora o Gateway de OpenClaw.
  • Una base de datos de memoria o sesión que no se puede exportar con pérdida aceptable.
  • Controles operativos que tu equipo ya conoce y monitorea.

Migra a Hermes cuando su flujo de trabajo más simple centrado en la terminal, perfiles, habilidades orientadas al aprendizaje, modelo de memoria, tareas programadas, flexibilidad del proveedor o modelo de delegación coincida mejor con lo que realmente operas. La Comparación entre OpenClaw y Hermes discute esa decisión con números actuales; esta página es sobre ejecutar la conmutación una vez que la decisión está tomada.

Lista de verificación final de migración

  • Versión de OpenClaw y rutas resueltas registradas.
  • Copia de seguridad de OpenClaw verificada almacenada fuera del estado en vivo.
  • Transcripciones JSONL pre-2.0 instantáneadas por separado si importan.
  • Copia de seguridad existente de Hermes creada.
  • Versión de Hermes comprobada contra el comportamiento de seguridad actual de claw migrate.
  • Vista previa completa revisada.
  • Cada conflicto asignó una resolución.
  • Contenidos del archivo agregados a la lista de trabajo manual.
  • Personalidad, memoria de usuario y habilidades probadas en una nueva sesión.
  • Proveedor, modelo de respaldo, MCP, navegador y terminal probados.
  • Comportamiento de aprobación y sandbox probado, incluyendo una acción denegada.
  • Trabajos cron, complementos, hooks, backend de memoria y vinculaciones multi-agente reconstruidos o jubilados.
  • Pasarela de OpenClaw detenida antes de mover las credenciales del canal.
  • Cada canal de mensajería probado desde una cuenta permitida.
  • WhatsApp vuelto a emparejar si se usa.
  • Comandos de reversión y nombres de archivo registrados.
  • Limpieza de OpenClaw pospuesta hasta que termine el período de prueba.

Veredicto final

hermes claw migrate es lo suficientemente bueno como para hacer una migración de OpenClaw a Hermes rutinaria, pero solo si “rutinaria” significa planificada y reversible. Su característica más fuerte no es el número de archivos que copia; es la vista previa que te dice qué partes del viejo asistente tienen un equivalente real en Hermes y qué partes aún requieren juicio de ingeniería.

Usa la predefinición completa para descubrir el alcance, mantén los secretos fuera del primer paso, renombra los conflictos de habilidades, prueba desde la terminal y transfiere la propiedad del canal como un evento separado. Lo más importante es preservar el sistema antiguo hasta que Hermes haya completado trabajo programado real y conversaciones reales, no simplemente haya devuelto un comando de estado exitoso.

Referencias

Suscribirse

Recibe nuevas publicaciones sobre sistemas, infraestructura e ingeniería de IA.