Como migrar do OpenClaw para o Hermes Agent com segurança

Um cutover seguro que vai além do import de uma linha

Conteúdo da página

Migrar um assistente de IA não é o mesmo que copiar uma configuração de aplicativo. A parte difícil é preservar identidade, memória, comportamento das ferramentas, trabalhos agendados e acesso a mensagens, sem que dois gateways atuem como o mesmo bot.

O Hermes Agent agora inclui hermes claw migrate, um verdadeiro planejador de migração, em vez de um comando de importação cosmético. Ele pode mapear mais de 30 categorias do OpenClaw, detectar conflitos, criar um ponto de restauração do Hermes e arquivar estados incompatíveis para revisão manual. Isso torna a migração prática, mas não a torna automática.

Corte gradual do estado do OpenClaw para o Hermes Agent

A abordagem abaixo é um corte gradual: faça backup do OpenClaw, execute uma simulação (dry-run) da migração completa, importe sem segredos, valide o Hermes pelo terminal e transfira as credenciais de mensagens apenas depois que o novo agente se comportar corretamente. Não comece com --overwrite --migrate-secrets --yes; essas flags são úteis para automação após uma migração ensaiada, não para descobrir em que seu assistente realmente depende.

O runbook de migração do OpenClaw para o Hermes

Fase Comando ou ação Condição de saída
Inventário Registre versões, workspaces, plugins, canais, trabalhos cron e provedores Toda dependência que não é arquivo tem um responsável
Backup openclaw backup create --verify Existe um arquivo de backup verificado fora do estado do OpenClaw
Pré-visualização hermes claw migrate --dry-run --preset full Nenhum conflito inexplicado ou dado crítico ignorado
Importação Execute o preset completo sem segredos A configuração do Hermes, persona, memória, habilidades e entradas MCP existem
Teste local Execute o Hermes no terminal Modelo, ferramentas, memória, aprovações e workspace passam nos testes
Corte de canal Pare o OpenClaw, migre ou defina segredos, inicie o gateway do Hermes Apenas o Hermes possui cada token de bot ou conta
Periodo de teste Mantenha o OpenClaw parado, mas recuperável Os trabalhos agendados e recebidos funcionam corretamente
Limpeza Arquive o estado antigo do OpenClaw apenas após a aceitação A janela de reversão é encerrada intencionalmente
flowchart TD A[Inventariar o sistema ativo] --> B[Backup do OpenClaw verificado] B --> C["Simulação: hermes claw migrate --dry-run --preset full"] C --> D[Importar sem segredos] D --> E["Validação no terminal em uma nova sessão"] E --> F["Corte controlado de canal"] F --> G[Teste com OpenClaw parado] G --> H["Limpeza após aceitação"]

O comando é curto porque o julgamento foi movido para as etapas de pré-visualização e verificação. Trate o relatório de migração gerado como um plano de mudança, e não como uma saída de console reconfortante.

O que hermes claw migrate realmente lê

O migrador lê ~/.openclaw/ por padrão. Ele também detecta os diretórios antigos ~/.clawdbot/ e ~/.moltbot/, juntamente com nomes de arquivos de configuração legados, de modo que uma instalação mais antiga não precisa ser renomeada antes da migração.

O OpenClaw utilizou vários layouts de workspace. O Hermes verifica workspace/, workspace.default/ e workspace-main/, e reconhece diretórios por agente, como workspace-<agentId>. Se você usa raízes de agente personalizadas ou vários perfis, verifique todos os caminhos resolvidos na pré-visualização em vez de assumir que o workspace padrão representa o sistema inteiro.

O destino normalmente é ~/.hermes/. Uma instalação existente do Hermes não é tratada como um balde vazio: o planejador relata conflitos e recusa aplicar por padrão quando não pode preservar ambos os lados com segurança.

O que migra e o que não migra

A distinção útil não é “suportado” versus “não suportado”. Alguns estados do OpenClaw mapeiam diretamente, alguns devem ser transformados e alguns só podem ser arquivados porque os dois agentes usam modelos de execução diferentes.

Migração direta ou transformada

Origem no OpenClaw Destino no Hermes Comportamento da migração
workspace/SOUL.md ~/.hermes/SOUL.md Cópia direta da persona
workspace/MEMORY.md ~/.hermes/memories/MEMORY.md Analisado, mesclado e deduplicado
workspace/USER.md ~/.hermes/memories/USER.md Analisado, mesclado e deduplicado
workspace/memory/*.md Memória principal do Hermes Arquivos diários são mesclados em entradas
workspace/AGENTS.md Diretório do projeto escolhido Requer --workspace-target
Diretórios de habilidades do OpenClaw ~/.hermes/skills/openclaw-imports/ Copiados com uma política explícita de conflitos
agents.defaults.model Configuração de modelo do Hermes Formas primária e de reserva são interpretadas
models.providers.* Configuração de provedores do Hermes URL base e tipo de API são mapeados
mcp.servers.* mcp_servers.* Definições Stdio e HTTP/SSE são mapeadas
Tokens de canal e listas de permissão .env do Hermes Apenas com --migrate-secrets
Política de reset de sessão session_reset Modos diário e ocioso são traduzidos
Aprovações de execução Aprovações e lista de permissão de comandos do Hermes Modos e padrões são transformados
Configurações de navegador, TTS, sandbox e timeout Configuração relacionada do Hermes Campos suportados são mapeados

A memória não é copiada como um único documento opaco. O migrador analisa os arquivos de memória e de perfil de usuário do OpenClaw, mescla-os com as entradas existentes do Hermes e os deduplica. Isso é mais seguro do que substituir um arquivo de memória do Hermes já estabelecido, mas também significa que você deve comparar significado e estrutura, e não apenas tamanhos de arquivos.

Arquivado para reconstrução manual

Funcionalidade do OpenClaw Por que não é portável diretamente Direção no Hermes
Trabalhos Cron Agendadores e modelos de entrega diferem Recrie com hermes cron create
Plugins APIs de plugins são específicas de produto Substitua por um plugin do Hermes, habilidade, servidor MCP ou ferramenta embutida
Hooks e webhooks Contratos de eventos e permissões diferem Recrie com webhooks do Hermes ou hooks do gateway
Backend avançado de memória Bancos de dados e semânticas de recuperação diferem Configure um provedor de memória do Hermes separadamente
Configurações do registro de habilidades Implementação do registro difere Configure com hermes skills config
Lista e vinculações de múltiplos agentes Modelos de roteamento e perfil diferem Reconstrua com perfis do Hermes e configuração do gateway
IDENTITY.md O Hermes usa uma divisão de identidade diferente Mescle a identidade relevante em SOUL.md
HEARTBEAT.md Não há equivalência direta de heartbeat dirigido por arquivo Expresse trabalhos periódicos como trabalhos cron
TOOLS.md O Hermes fornece suas próprias instruções de ferramentas Mova apenas regras genuínas de fluxo de trabalho para uma habilidade ou arquivo de contexto
BOOTSTRAP.md Semântica de bootstrap difere Use arquivos de contexto, configuração ou uma habilidade

Estes itens são salvos abaixo de ~/.hermes/migration/openclaw/<timestamp>/archive/. Portanto, uma migração bem-sucedida com um arquivo não vazio não está concluída; o arquivo é a fila de trabalho restante.

Passo 1: Inventariar o sistema OpenClaw ativo

Antes de instalar qualquer coisa, anote quais comportamentos estão realmente em uso. Arquivos de configuração sozinhos podem não revelar um banco de dados externo de um plugin, um gateway supervisionado manualmente, um diretório de agente personalizado, um processo local de modelo ou a conta que possui um endpoint de webhook.

No mínimo, registre:

  • Versões do OpenClaw e do Hermes.
  • O diretório de estado ativo do OpenClaw e o caminho da configuração.
  • Todos os diretórios de agentes e workspaces.
  • Provedores de modelos, modelos de reserva e endpoints locais.
  • Plugins instalados e habilitados, incluindo seus dados persistentes.
  • Habilidades de workspaces, gerenciados, pessoais e de projeto.
  • Servidores MCP, variáveis de ambiente, diretórios de trabalho e credenciais.
  • Contas do Telegram, Discord, Slack, WhatsApp, Signal, Matrix e Mattermost.
  • Trabalhos cron, hooks, webhooks, comportamento de heartbeat e supervisores externos.
  • Regras de aprovação, listas de permissão de comandos, backend de sandbox e acesso ao navegador.

Este inventário se torna a lista de verificação de aceitação mais tarde. Sem ele, um assistente migrado pode parecer saudável porque responde mensagens enquanto silenciosamente falta o backup semanal, um provedor de memória ou uma regra restritiva de aprovação.

Passo 2: Criar um backup verificado do OpenClaw

O OpenClaw 2.0 inclui um comando de backup que entende seu estado atual do SQLite, raízes de agentes configuradas, credenciais, plugins e workspaces. Use-o em vez de copiar arquivos de banco de dados ao vivo e torcer para que seus acompanhantes WAL foram capturados consistentemente.

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

Mantenha o arquivo resultante fora de ~/.openclaw/. A opção --verify valida o arquivo imediatamente, incluindo segurança de caminhos e verificações de integridade do SQLite suportadas. Bancos de dados do OpenClaw são capturados através da API de backup online do SQLite, verificados pelo proprietário e compactados, em vez de copiados como arquivos brutos. Se seus workspaces forem grandes, você pode usar --no-include-workspace, mas então faça backup desses repositórios e arquivos não-Git separadamente; diretórios de agentes permanecem incluídos de qualquer forma.

A armadilha de transcrições pré-2.0

O OpenClaw 2.0 moveu sessões e transcrições de sessions.json e arquivos JSONL para o SQLite, por padrão em ~/.openclaw/agents/<agent>/agent/openclaw-agent.sqlite. Isso importa aqui por uma razão não óbvia: o arquivo portável backup create omite transcrições e logs JSONL legados mesmo quando eles não estão mais sendo escritos.

Portanto, se sua instalação do OpenClaw antecede a versão 2.0 e você se importa com o histórico de conversas antigo, um arquivo verificado sozinho não o protege. Pare o gateway e tire um instantâneo de sistema de arquivos, volume ou VM antes de migrar, ou use os comandos de instantâneo por banco de dados do OpenClaw para os bancos de dados dos quais você deseja uma cópia compacta e verificável independentemente:

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>

Trate esses repositórios de instantâneo com as mesmas permissões e política de retenção que o estado ao vivo — eles podem conter perfis de autenticação, estado de sessão e dados de plugins. Para uma configuração replicada continuamente em vez de arquivos periódicos, o OpenClaw documenta Litestream contra os mesmos bancos de dados; essa é uma melhor resposta do que trabalhos cp feitos à mão se a migração for levar dias.

Crie também um backup do Hermes se ele já contém estado útil:

hermes backup

A migração normalmente cria seu próprio arquivo do Hermes pré-migração sob ~/.hermes/backups/. Não passe --no-backup durante o primeiro corte; economizar alguns segundos não vale a pena remover o caminho de reversão mais simples.

Passo 3: Instalar e testar um Hermes Agent vazio

Instale o Hermes, selecione um modelo e prove que o agente básico de terminal funciona antes de importar o estado do OpenClaw. Isso separa falhas de instalação e provedor de falhas de migração. O guia do Assistente de IA Hermes cobre a seleção de provedores e configuração de gateway em profundidade; para a migração, você só precisa de uma linha de base de terminal funcional.

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

Se você já instalou o Hermes, atualize-o antes de confiar no comportamento atual de migração:

hermes update
hermes --version

Essa verificação de versão não é uma formalidade. A postura de segurança de claw migrate mudou substancialmente durante 2026: builds atuais recusam aplicar um plano conflituoso, escrevem um ponto de restauração pré-migração por padrão, redigem segredos nos relatórios que salvam em disco e exigem --migrate-secrets explicitamente mesmo sob --preset full. Builds antigos não faziam nada disso — notavelmente, --preset full costumava puxar chaves de API silenciosamente, e um plano conflituoso relataria “migrado 0” depois que você já havia confirmado. Se você está seguindo um tutorial mais antigo, as flags podem parecer idênticas, enquanto o comportamento difere exatamente nos lugares que importam.

Não configure os tokens de bot antigos ainda. A validação apenas no terminal permite que o OpenClaw permaneça ativo enquanto você prepara o Hermes, e evita dois processos de gateway competindo pela mesma identidade de mensagens.

Passo 4: Executar a simulação antes de escolher flags

Comece com o preset completo porque ele revela a maior superfície de mapeamento possível, mas mantenha os segredos excluídos:

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

A migração sempre apresenta uma pré-visualização antes de aplicar, mesmo sem --dry-run. A flag explícita ainda é valiosa porque torna sua intenção inequívoca e dá tempo para inspecionar caminhos de origem, destinos, transformações, conflitos, itens ignorados, arquivos e avisos de segredos sem um prompt de confirmação impaciente. O conjunto completo de flags para claw migrate e seus vizinhos é resumido na folha de dicas de CLI do Hermes Agent.

Use uma origem personalizada quando o estado do OpenClaw não estiver no local padrão:

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

Se AGENTS.md deve se aplicar a um repositório específico, diga explicitamente:

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

Sem --workspace-target, as instruções do workspace não são colocadas em um diretório atual arbitrário. Esse é o comportamento correto: um arquivo de instrução pertence a um escopo, e chutar seu escopo pode mudar todas as sessões do Hermes lançadas abaixo do diretório errado.

Preset completo ou de dados do usuário?

O preset full inclui configurações de infraestrutura e comportamento compatíveis. O preset user-data foca em persona, memórias, habilidades e conteúdo do usuário relacionado, excluindo a configuração de infraestrutura.

Use user-data quando o Hermes já tem uma configuração de provedor, gateway, segurança ou sandbox cuidadosamente construída. Use full quando o Hermes é novo e o OpenClaw é a configuração autoritativa, mas ainda inspecione todas as configurações de comportamento transformadas. Nenhum preset importa segredos a menos que --migrate-secrets seja adicionado.

Passo 5: Resolver conflitos sem destruir a procedência

O comportamento padrão de conflito é conservador: a migração recusa aplicar um plano com conflitos de arquivo não resolvidos a menos que --overwrite seja definido. Isso é preferível a um corte aparentemente bem-sucedido que sobrepõe uma persona ou habilidade do Hermes mais nova — e preferível ao comportamento antigo, onde confirmar um plano conflituoso produzia um resultado “migrado 0” que parecia uma operação nula, mas era realmente uma omissão silenciosa.

Conflitos de habilidades são tratados separadamente, e o padrão ali é skip, que silenciosamente mantém a versão existente do Hermes e descarta a recebida. Para uma primeira migração, recomendo rename em vez disso:

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

Habilidades importadas são colocadas sob ~/.hermes/skills/openclaw-imports/. Com rename, uma colisão de nomes produz um irmão importado em vez de esconder qualquer versão. Revise as duas implementações, teste a escolhida e remova a cópia redundante depois.

Use --overwrite apenas depois de revisar a pré-visualização ou ao reconstruir um perfil do Hermes descartável. Ele se aplica mais amplamente do que o tratamento de conflito de habilidades e pode substituir arquivos existentes do Hermes. A presença de um backup torna a sobreposição recuperável, não desejável.

Passo 6: Migrar configuração e dados do usuário sem segredos

Aplique o plano revisado e deixe as credenciais para a etapa de corte:

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

Após a conclusão, salve os contagens impressos de itens migrados, ignorados, conflituosos e arquivados. Abra o diretório de migração com carimbo de data e leia seu resumo antes de iniciar uma nova sessão do Hermes. Builds atuais redigem valores de segredos detectados no report.json e summary.md que escrevem, então esses arquivos são seguros para manter junto com suas notas de mudança — mas confirme isso na sua versão em vez de assumir, porque builds anteriores escreviam chaves de API brutas nos mesmos relatórios.

Novas sessões importam. Habilidades e entradas de memória importadas são carregadas quando uma sessão começa, então testar dentro de uma sessão que antecede a migração pode produzir um falso “habilidade não encontrada” ou resultado de memória obsoleta.

Passo 7: Validar comportamento antes do corte de canal

Execute as verificações pós-migração a partir do terminal:

hermes status
hermes doctor
hermes config show
hermes gateway status

Se a recuperação de memória parecer incompleta, reconstrua o índice antes de concluir que a importação falhou:

hermes memory reindex

Em seguida, inicie uma nova conversa do Hermes e teste comportamentos observáveis, não apenas a presença de arquivos. Peça uma preferência de usuário conhecida da memória, invoque uma habilidade importada, chame uma ferramenta MCP, execute um comando de terminal inofensivo que deveria ser permitido e tente um que deveria exigir aprovação.

Uma matriz de aceitação útil parece assim:

Área Teste Falha geralmente significa
Persona Faça uma pergunta onde tom e fronteiras são óbvios SOUL.md não foi encontrado, foi sobrescrito ou precisa de conteúdo de identidade mesclado
Memória do usuário Peça uma preferência estável conhecida Entradas de memória não foram importadas, deduplicadas inesperadamente, não reindexadas ou não carregadas em uma nova sessão
Habilidade Invoque um fluxo de trabalho importado distinto Conflito de nome, metadados inválidos, dependência ausente ou sessão obsoleta
Provedor Execute uma resposta normal e longa Mapeamento de modelo incorreto, credencial ausente ou tipo de API incompatível
MCP Chame uma ferramenta somente leitura de cada servidor Ambiente ausente, cwd errado, descompasso de transporte ou problema no filtro de ferramentas
Terminal Teste comandos permitidos e que exigem aprovação Modo de aprovação ou mapeamento de lista de permissão mudou a política
Navegador Abra uma página de teste inofensiva URL CDP, backend do navegador ou acesso ao sandbox difere
Compressão Execute uma sessão longa descartável Modelo de resumo ou comportamento de compactação não foi mapeado como pretendido
Reset de sessão Inspecione a configuração e teste em um perfil descartável Interpretação diária/ociosa difere das regras do OpenClaw

A migração mapeia timeoutSeconds para um valor estimado de turnos máximos, traduz níveis de raciocínio e converte modos de aprovação. Esses são mapeamentos semânticos, não cópias byte a byte. Verifique que o comportamento resultante corresponda à sua intenção, especialmente para tarefas autônomas longas e execução de comandos.

Passo 8: Tratar segredos como uma mudança de segurança separada

--migrate-secrets pode coletar chaves listadas em permissão de valores de configuração do OpenClaw, ~/.openclaw/.env, objetos de ambiente de configuração e perfis de autenticação por agente (~/.openclaw/agents/<agent>/agent/auth-profiles.json). Ele entende strings simples, modelos de ambiente e objetos SecretRef baseados em ambiente.

Intencionalmente, ele não copia nomes de segredo arbitrários. SecretRefs baseados em arquivo e baseados em comando não podem ser resolvidos automaticamente, e valores fora da lista de permissão suportada permanecem para configuração manual. Trate cada aviso aqui como um controle funcionando como projetado, não como uma razão para colar todo o ambiente do OpenClaw no Hermes.

Para uma primeira migração, prefiro configurar credenciais de provedores através do Hermes após a importação de dados. Se você usar migração automática de segredos, pré-visualize-a e execute-a apenas quando estiver pronto para transferir a propriedade dos canais:

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

Em seguida, verifique a presença sem imprimir valores:

hermes status
hermes auth status

Rode credenciais se elas foram expostas no histórico do shell, coladas em notas de migração ou armazenadas com permissões mais fracas do que o pretendido. A migração preserva o acesso; ela não prova que a prática antiga de manipulação de segredos era segura.

Passo 9: Realizar um corte de mensagens controlado

Não há uma transição de zero tempo de inatividade honesta quando dois processos fariam polling, assinatura ou resposta como a mesma conta de bot. O padrão seguro é preparar em paralelo, parar o OpenClaw, iniciar o Hermes, testar cada plataforma e manter os comandos de reversão prontos.

Primeiro, pare o gateway do OpenClaw e confirme que ele está parado:

openclaw gateway stop
openclaw gateway status

Agora migre ou defina manualmente os segredos de mensagens, configure o gateway do Hermes e inicie-o:

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

Envie uma mensagem direta de um usuário permitido em cada plataforma. Teste texto recebido, uma resposta, um anexo se usado, um comando slash, uma tarefa longa, interrupção e um envio agendado ou manual. Um status de serviço verde prova que um processo está em execução; não prova que listas de permissão, roteamento de thread, entrega e formatação sobreviveram à mudança.

WhatsApp requer novo pareamento porque a migração não transfere a sessão Baileys como um token reutilizável. Execute hermes whatsapp e complete o fluxo de QR. Outros canais podem reutilizar tokens, mas layouts de conta e vinculações de múltiplas contas ainda merecem teste explícito.

Habilidades, plugins e servidores MCP não são intercambiáveis

Habilidades do OpenClaw de quatro locais podem ser importadas, mas um diretório importado só é útil se suas premissas permanecerem verdadeiras. Verifique nomes de comandos, caminhos de sistema de arquivos, variáveis de ambiente, ferramentas específicas de plataforma e referências a APIs exclusivas do OpenClaw. O guia de habilidades do OpenClaw explica os formatos de origem; o guia de criação de habilidades Hermes cobre o comportamento do destino.

Plugins do OpenClaw não se tornam plugins do Hermes. Reconstrua a capacidade na camada mais estreita adequada:

  • Use uma habilidade do Hermes para procedimento, seleção de ferramentas e instruções reutilizáveis.
  • Use um servidor MCP para dados ao vivo ou uma fronteira de serviço externo.
  • Use uma ferramenta embutida do Hermes quando ela já fornecer a capacidade.
  • Use um plugin do Hermes apenas quando o código deve participar do próprio tempo de execução do agente.

Este é um bom momento para remover sedimento arquitetural. Um plugin instalado para compensar uma limitação antiga do OpenClaw pode não ter motivo para sobreviver no Hermes, enquanto um plugin segurando um banco de dados durável precisa de um plano de exportação ou substituição deliberado.

Definições MCP migram mais diretamente, incluindo comandos, argumentos, ambientes, diretórios de trabalho, URLs e filtros de ferramentas de incluir/excluir. Ainda teste cada servidor separadamente: um mapeamento YAML correto não pode instalar um executável ausente, renovar OAuth ou fazer um caminho do host antigo existir no novo.

Memória precisa de uma verificação de qualidade, não de contagem de linhas

O Hermes importa MEMORY.md, USER.md e arquivos diários de memória para sua estrutura de memória. Isso preserva fatos úteis, mas plugins de memória do OpenClaw, bancos de dados de contexto longo, índices de incorporação e políticas de recuperação são arquivados em vez de traduzidos para um sistema cognitivo equivalente.

Revise a memória importada em três passagens:

  1. Identidade e preferências estáveis: preserve fatos concisos que devem influenciar muitas sessões.
  2. Conhecimento operacional: mova procedimentos repetíveis para habilidades ou contexto de projeto em vez de memória global.
  3. Resíduo histórico: arquivar incidentes concluídos, planos obsoletos e comentários do agente autorreferenciais em vez de injetá-los para sempre.

Não importe cada transcrição como memória durável. Mais texto lembrado pode tornar um agente menos coeso ao recuperar repetidamente restrições obsoletas e seus próprios palpites anteriores. O guia do sistema de memória do Hermes explica onde as entradas importadas ficarão, e a comparação de provedores de memória de agentes é o lugar melhor para escolher um novo backend de longo prazo.

Recriar trabalhos cron, heartbeats, hooks e roteamento de múltiplos agentes

Trabalhos cron são arquivados porque a execução agendada não é apenas uma expressão cron. Um trabalho também tem um prompt ou comando, diretório de trabalho, modelo, timeout, destino de entrega, permissões, comportamento de repetição e expectativas sobre o estado da sessão.

Para cada trabalho arquivado do OpenClaw, anote esses campos e recrie-o com o Hermes:

hermes cron create
hermes cron list

Execute cada trabalho uma vez manualmente antes de habilitar seu agendamento. Verifique tanto o trabalho quanto o caminho de entrega, especialmente quando o trabalho antigo publicava em um chat do Telegram, canal do Slack ou thread do Discord.

Traduza HEARTBEAT.md para trabalhos agendados explícitos apenas quando a execução periódica for realmente necessária. Um heartbeat vago que pede ao agente para inspecionar tudo a cada poucos minutos é caro e difícil de verificar; trabalhos nomeados separados com resultados observáveis são mais fáceis de operar.

Definições de múltiplos agentes e vinculações de canal também requerem design manual. Perfis do Hermes fornecem estado e gateways isolados, mas não são uma reescrita sintática da lista de agentes do OpenClaw. Mapeie cada agente por responsabilidade, workspace, credenciais, canal e fronteira de segurança em vez de reproduzir nomes primeiro; o raciocínio centrado em perfil por trás desse mapeamento é trabalhado no guia de configuração de produção do Hermes.

Solucionando as falhas que importam

“Diretório do OpenClaw não encontrado”

O comando procura os diretórios padrão atuais do OpenClaw, Clawdbot e Moltbot. Se seu estado estiver em outro lugar, aponte para o diretório que contém a configuração do OpenClaw e o estado relacionado:

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

Não aponte --source apenas para o workspace a menos que esse seja genuinamente a árvore de fonte completa. A pré-visualização deve mostrar configuração, workspace e categorias reconhecidas.

A migração recusa devido a conflitos

Este é o padrão seguro, não uma falha. Faça backup do Hermes, identifique qual lado é autoritativo para cada conflito, use --skill-conflict rename para habilidades e reserve --overwrite para um plano revisado.

Se a configuração existente do Hermes for valiosa, considere o preset user-data. Ele importa o conteúdo do usuário do assistente sem tentar substituir a infraestrutura estabelecida.

Habilidades importadas não aparecem

Inicie uma nova sessão e inspecione o diretório importado abaixo de ~/.hermes/skills/openclaw-imports/. Use /skills dentro do Hermes para confirmar a descoberta. Se a habilidade existe mas não pode executar, inspecione suas premissas de dependência e ferramenta em vez de repetir a migração.

Chaves de provedor não foram encontradas

A chave pode estar armazenada em um arquivo de ambiente do OpenClaw, objeto de ambiente de configuração, perfil de autenticação, SecretRef baseado em arquivo, SecretRef baseado em comando ou nome de variável não suportado. O migrador resolve as formas suportadas e avisa sobre o resto. Adicione valores não resolvidos através da configuração ou comandos de autenticação do Hermes em vez de converter referências seguras em texto plano apenas para satisfazer o importador.

O bot está em execução, mas mensagens estão faltando ou duplicadas

Confirme que o gateway do OpenClaw está parado e que apenas um perfil do Hermes possui o token. Em seguida, inspecione hermes gateway status e logs do gateway, seguido por listas de permissão de canal e seleção de conta. Consumidores duplicados e listas de permissão incorretas são mais comuns do que um modelo de linguagem quebrado.

A personalidade está presente, mas a recuperação é pobre

SOUL.md e memória são camadas diferentes. Confirme que a persona copiada para ~/.hermes/SOUL.md, entradas de memória chegaram a ~/.hermes/memories/ e o teste usa uma nova sessão. Execute hermes memory reindex antes de depuração mais profunda. Se o OpenClaw dependia de um plugin de memória externo, configure um provedor de memória do Hermes em vez de esperar que a importação Markdown recrie seu comportamento de recuperação.

Reverter o Hermes

Pare o gateway do Hermes antes de restaurar o backup do Hermes pré-migração:

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

hermes import sobrescreve arquivos na casa do Hermes com o conteúdo do arquivo, então inspecione o nome do arquivo exato e entenda que sessões do Hermes pós-migração podem ser substituídas. Em seguida, mantenha o Hermes parado, reinicie o OpenClaw e verifique a saúde do seu gateway e canal.

Migração manual quando o comando não pode modelar sua configuração

Um fallback manual é mais lento, mas às vezes mais claro para instalações altamente personalizadas. Construa um perfil do Hermes limpo e migre por responsabilidade:

  1. Copie ou reescreva conteúdo de persona para ~/.hermes/SOUL.md.
  2. Curia fatos estáveis do usuário para MEMORY.md e USER.md do Hermes em vez de copiar todo o histórico.
  3. Coloque instruções do projeto no AGENTS.md de nível de repositório correto.
  4. Copie habilidades compatíveis para um diretório de importação nomeado e teste-as individualmente.
  5. Traduza definições de provedor e MCP para ~/.hermes/config.yaml sem imprimir segredos.
  6. Configure credenciais através da autenticação ou gerenciamento de segredos do Hermes.
  7. Recrie aprovações, sandboxing, acesso ao navegador, trabalhos cron, webhooks e canais.
  8. Substitua cada plugin do OpenClaw por uma capacidade explícita do Hermes ou aposse-o.

A rota manual é especialmente apropriada quando a fonte contém vários agentes do OpenClaw com diferentes workspaces, plugins de memória e vinculações de canal. Uma união automática pode preservar arquivos enquanto apaga o isolamento que tornava a configuração segura.

Não limpe o OpenClaw imediatamente

Depois que o Hermes passar nos testes locais e de mensagens, mantenha o OpenClaw instalado, mas parado, por um período de teste. Preserve o backup verificado do OpenClaw, arquivo de migração, backup do Hermes pré-migração e uma cópia da lista de verificação de aceitação.

O Hermes documenta hermes claw cleanup para renomear diretórios restantes do OpenClaw para .pre-migration/, e hermes claw cleanup --dry-run para pré-visualizar o que seria arquivado. Use-o apenas depois que o gateway do OpenClaw estiver parado, a versão atual do Hermes incluir proteções de processo e você tiver decidido não reverter. Builds antigos de 2026 tinham um caminho de limpeza reportado que podia mover estado enquanto um gateway do OpenClaw ainda estava em execução; o código atual marca a proteção como implementada, mas um backup verificado e serviço de fonte parado permanecem como limite sensato.

Limpeza não é necessária para provar que o Hermes funciona. Ela existe para reduzir confusão de estado futura, então adiá-la durante uma janela de reversão é uma boa operação, não desordem.

Quando permanecer no OpenClaw 2.0

O OpenClaw 2.0 não é uma linha de base abandonada. A liberação v2026.8.1 trouxe mais de 16.000 solicitações de pull de mais de 900 contribuidores — aproximadamente metade do histórico total de fusões do projeto — e mudou substancialmente a introdução, a interface de controle web, o armazenamento de sessão, backups, canais, memória, plugins, automações, uso de navegador e computador, segurança e confiabilidade de serviço. Se essas funcionalidades da plataforma são centrais para sua implantação, a migração pode remover mais capacidade funcional do que simplifica.

Permaneça no OpenClaw quando você depender de:

  • Sua interface de controle reconstruída, com editor de arquivos acoplado, painel de Alterações baseado em git, painel do navegador e aprovações na conversa.
  • Presets de sessão, busca de transcrições, grupos, visões de status e ações em lote.
  • Um plugin específico de produto sem equivalência no Hermes.
  • Roteamento complexo de múltiplos usuários, mobile, dispositivo ou canal já funcionando em produção.
  • Administração de navegador, uso de computador ou Gateway específica do OpenClaw.
  • Um banco de dados de memória ou sessão que não pode ser exportado com perda aceitável.
  • Controles operacionais que sua equipe já conhece e monitora.

Mova para o Hermes quando seu fluxo de trabalho centrado em terminal mais simples, perfis, habilidades orientadas ao aprendizado, modelo de memória, tarefas agendadas, flexibilidade de provedores ou modelo de delegação corresponder melhor ao que você realmente opera. A comparação do OpenClaw e Hermes discute essa decisão com números atuais; esta página é sobre executar o corte uma vez que a decisão for tomada.

Lista de verificação final de migração

  • Versão do OpenClaw e caminhos resolvidos registrados.
  • Backup verificado do OpenClaw armazenado fora do estado ao vivo.
  • Transcrições JSONL pré-2.0 fotografadas separadamente, se importarem.
  • Backup existente do Hermes criado.
  • Versão do Hermes verificada contra o comportamento de segurança atual de claw migrate.
  • Simulação completa revisada.
  • Cada conflito atribuído a uma resolução.
  • Conteúdo do arquivo adicionado à lista de trabalho manual.
  • Persona, memória do usuário e habilidades testadas em uma nova sessão.
  • Provedor, modelo de reserva, MCP, navegador e terminal testados.
  • Comportamento de aprovação e sandbox testado, incluindo uma ação negada.
  • Trabalhos cron, plugins, hooks, backend de memória e vinculações de múltiplos agentes reconstruídos ou aposentados.
  • Gateway do OpenClaw parado antes das credenciais de canal serem movidas.
  • Cada canal de mensagens testado de uma conta permitida.
  • WhatsApp re-pareado, se usado.
  • Comandos de reversão e nomes de arquivos registrados.
  • Limpeza do OpenClaw adiada até o fim do período de teste.

Veredito final

hermes claw migrate é bom o suficiente para tornar uma migração do OpenClaw para o Hermes de rotina, mas apenas se “rotina” significar planejado e reversível. Seu recurso mais forte não é o número de arquivos que ele copia; é a pré-visualização que lhe diz quais partes do antigo assistente têm um equivalente real no Hermes e quais partes ainda requerem julgamento de engenharia.

Use o preset completo para descobrir o escopo, mantenha segredos fora da primeira passagem, renomeie conflitos de habilidades, teste a partir do terminal e transfira a propriedade dos canais como um evento separado. Mais importante, preserve o sistema antigo até que o Hermes tenha concluído trabalhos agendados reais e conversas reais, não apenas retornado um comando de status bem-sucedido.

Referências

Subscrever

Receba novos artigos sobre sistemas, infraestrutura e engenharia de IA.