Oitenta e um PRs numa única tag, e as notas admitem que deixaram parte disso sem documentação de propósito


Você vê o badge de atualização, clica até a página da release e recebe um parágrafo: esta é uma release de patch, ela junta cerca de 81 pull requests mesclados desde a v0.22.4, e o texto curado sai com a v0.23.0. Nenhuma lista de mudanças, nenhum destaque, nada sobre aquela correção que você espera há duas semanas. Então a única pergunta que realmente importa antes de digitar hermes update é justamente a que ficou sem resposta: atualizar hoje ou esperar?

A resposta curta é que esta tag é um checkpoint, não um pacote de features — e o corpo da release diz, em uma linha, que parte disso está sem documentação ali de propósito. Essas linhas deliberadamente omitidas acabam sendo a parte útil, então este artigo cobre elas, os números e o caminho de atualização por plataforma.

Release de patch é checkpoint, não pacote de features

O Hermes corta dois tipos de release. Releases de feature ganham nome, seções e screenshots. Releases de patch pegam tudo o que foi mesclado desde a tag anterior e cortam um novo ponto estável, para que todos os canais de distribuição — a release do GitHub usada pelo CLI e pelo script de instalação, o app da Microsoft Store, o Docker e o Hermes Cloud — carreguem código idêntico. Nada ali foi desenhado para ela; são alguns dias de trabalho agrupados.

A escala do lote, contada no commit bf0203a794a:

  • 231 commits não-merge em 804 arquivos alterados, com +35.212 / −17.885 linhas
  • 81 pull requests mesclados e 30 issues fechadas

Agora compare com a v0.22.4, dois dias antes: 14 commits não-merge em 82 arquivos e 13 PRs mesclados, lançada em 21 de outubro. Mesmo time, mesmo canal, seis vezes o volume. Essa comparação é a história real desta tag. Tudo o que entrou no dia 22 e nas primeiras horas do dia 23 não ganhou texto próprio; foi dobrado num rollup.

Um detalhe de data: o corpo da release data o lançamento em 22 de outubro de 2026, enquanto o GitHub publicou a tag às 05:28 UTC de 23 de outubro. Os dois estão corretos — aquele momento é a noite do dia 22 na Califórnia.

Um diff de 35.000 linhas sem lista de features não é um diff cheio de features: é refatoração, mudança de plugins, trabalho de dependências e correções pequenas. É sobre isso que o resto do artigo trata.

As quatro mudanças que você provavelmente já leu

Quatro itens desta janela já têm artigo próprio aqui. Uma linha cada, com o link caso você tenha perdido:

  • O login da Nous foi refeito para que todo login seja um device login comum, o resultado diga quem entrou e os conectores ofereçam login em vez de jogar visitantes no modo convidado. Mais em como o login passa do app para o navegador.
  • Os backends de delegação ficaram plugáveis, roteáveis por mapeamento de modelo ou por profile, trocáveis por session. O passo a passo de roteamento de backend cobre a configuração.
  • Planos por janela de uso agora aparecem como barras de progresso e cards de limite em /usage, incluindo recuperação depois de trocar de modelo. O que cada medidor significa está em o detalhamento das janelas de uso.
  • Instalações do Windows meio atualizadas ganharam uma correção de verdade em vez de mais uma instrução para tentar de novo. A história do launcher explica por que repinar o Python quebrava tudo.

Tudo o que vem abaixo é o resto dos 81.

O que as notas dizem que deixaram de fora de propósito

O corpo da release afirma, com todas as letras, que parte desta janela está sem documentação de propósito. Lido com atenção, isso não é modéstia: essas mudanças só fazem sentido como frases, não como linhas de changelog. Elas se dividem em três grupos.

O hermes update agora retém uma release que não vai aceitar

O primeiro grupo é comportamento de atualização, e para quem vive no CLI é a parte mais prática da release.

  • Uma release estável que o Hermes se recusa a aceitar agora fica retida em vez de ser oferecida. Antes, a checagem podia mostrar uma release como disponível, você clicava, e a atualização recusava. Esse loop custa um clique e, pior, te ensina a desconfiar do badge. Agora a opção simplesmente não é apresentada.
  • No Windows, o hermes update não trava mais no launcher antigo depois que o Python é repinado. Repinar muda qual interpretador o launcher deve chamar; o launcher velho é o que deixava instalações pela metade.
  • O hermes update consegue recuperar um gateway suspenso depois de danos no .git. O item menos glamouroso e provavelmente o que salva mais tardes: um repositório corrompido deixava o gateway parado, e o caminho de reparo agora o traz de volta em vez de pedir que você conserte o git primeiro.

Os três tratam do comando de update se recusando a te deixar num estado que você não consegue entender. Nenhum adiciona uma flag; cada um remove uma forma de ficar preso.

O core continua ficando mais fino

O segundo grupo é a migração continuada de recursos embutidos para plugins.

hermes import-agent, a migração de OpenClaw, o hermes mcp serve e o backend Singularity saíram todos do core para plugins. O setup agora percebe que você já tem outro agente instalado e te oferece o importer, em vez de deixar você descobrir sozinho.

Se você atualizar e um comando que usava na semana passada não existir mais, confira o catálogo de plugins antes de concluir que foi removido. Isso não é novo — a v0.22.4 moveu os mesmos comandos —, mas é na v0.22.5 que a coisa deixa de parecer uma limpeza pontual e começa a parecer arquitetura.

Também neste grupo: slash commands de plugin agora podem pedir que você escolha uma opção antes de continuar. Um comando que antes rodava com comportamento fixo pode pausar e apresentar uma escolha. Mudança pequena na interface, mudança grande no que um plugin pode ser: um comando com ramificação, não só uma macro.

E um item carrega o rótulo experimental com honestidade: um cliente de eventos MCP em modo webhook. Não construa um fluxo de trabalho em cima disso ainda.

Desktop: arrastar para fixar, badges e um bot que diz quem está trabalhando

O terceiro grupo é o app desktop, onde as mudanças são pequenas mas chegam todo dia.

  • Arrastar para fixar na sidebar. Entradas da sidebar podem ser arrastadas para uma posição fixa, em vez de viver onde o app decide colocá-las.
  • Instalação de plugin em um clique, com badges de nível. Instalar pelo app é uma ação só, e o badge diz qual nível você está pegando antes do clique.
  • Electron 44, Pillow 13 e um lote de atualizações de segurança de dependências. Nada para configurar; o motivo para aceitar é que você prefere não continuar rodando as versões antigas.
  • O group chat volta a mostrar qual bot está trabalhando. Correção de regressão: com vários bots numa sala, esse indicador é a única forma de saber quem está respondendo, e sem ele a sala parece quebrada em vez de lenta.
  • Uma conversa cujo diretório de trabalho desapareceu agora diz isso claramente. Falhas vagas nesse caso fazem as pessoas auditar o modelo, a rede e o prompt antes de alguém checar se a pasta ainda existe.
  • Respostas longas do Claude DirectSDK não são mais cortadas pelo stall timer. Se algum provider lento já truncou uma resposta no meio de uma frase para você, esta é a linha que importa.

Atualizando, plataforma por plataforma

Onde você roda o Hermes Como a v0.22.5 chega até você
Instalação por CLI hermes update, ou rode de novo o one-liner do instalador
App da Microsoft Store pela Store
App desktop do instalador (.exe / .dmg) inalterado nesta release; avança com a próxima release empacotada
Docker / Hermes Cloud nousresearch/hermes-agent:stable (ou :latest)

A terceira linha é a que as pessoas leem errado: um patch que entrega CLI, app da Store, Docker e Cloud não necessariamente reconstrói os pacotes .exe e .dmg. Quem usa o desktop pode rodar hermes update, ver o CLI ir para a v0.22.5 e continuar no build anterior do desktop — comportamento correto, não atualização falhada.

Quando esperar a v0.23.0

Espere se o que você quer é a história, não o binário. As notas curadas para toda esta janela — tudo desde a v0.22.0, com destaques, recursos agrupados por área e a lista completa de contribuidores — saem junto com a v0.23.0. Uma tag de rollup te diz o que mudou; ela nunca vai te dizer por que alguém construiu aquilo.

Atualize agora se algum destes é o seu problema: uma checagem de update que oferece uma release e depois recusa, uma instalação no Windows presa num launcher antigo, um gateway parado depois de um .git danificado, respostas longas truncadas no Claude DirectSDK, um group chat que não consegue dizer qual bot está trabalhando, ou uma session falhando porque o diretório de trabalho sumiu. Isso não é uma lista de features. É um motivo decente para se mover hoje.

E 81 PRs em dois dias sem texto de release não é sinal de alerta — é como um projeto nesse ritmo mantém cinco canais de distribuição no mesmo código. O texto existe; está agendado para a próxima release de feature.