v0.22.7 destrinchada: quatro mudanças que você vai notar hoje dentro de um patch de 174 PRs


Quinta-feira à tarde, você está prestes a rodar o build mais recente em algumas máquinas do time. Abre a nota da release e encontra um parágrafo e uma linha dizendo que o resumo completo chega com a v0.23.0. O que você precisa saber é mais estreito: o dia a dia dos seus colegas vai mudar, o que falta nesta tag e vale atualizar agora ou esperar?

Este post responde a essas três perguntas para a v0.22.7. Publicada em 3 de novembro de 2026, é uma release puramente corretiva cuja função é transformar a fila de merges desde a v0.22.6 em um número de versão que você possa instalar, reverter e fixar em um manifesto de deploy.

O tamanho da janela

As medições publicadas foram feitas no commit b200f5bc60e:

  • 174 PRs mescladas
  • 581 commits sem merge em 554 arquivos alterados, +24.012 / −3.144 linhas
  • 29 issues fechadas

É uma ordem de grandeza menor que o roll-up anterior: a v0.22.6 empacotou 776 PRs e 3.448 commits. A intenção é clara — não é outra release de funcionalidades, mas um ponto estável depois de duas semanas de correções. A nota deixa explícito que a documentação completa e curada de tudo desde a v0.22.0 chega com a v0.23.0, e que nada nesta janela fica de fora.

Além dos números, estas são as mudanças que realmente chegam até você.

O que já está nesta tag

1. O Start do Web Access agora nomeia a etapa em que está

Clicar em Start no painel de Web Access do desktop faz três coisas em uma única requisição: construir a webapp (minutos na primeira vez), registrar o login da Nous e reiniciar o gateway. Antes o painel mostrava um único “Starting” durante toda a operação, então um build de vários minutos parecia travado, e reabrir o painel no meio do build entregava outro botão Start, como se o primeiro clique tivesse sumido.

Agora o painel nomeia a etapa — construindo, configurando o login, reiniciando — e conta há quanto tempo o Start está rodando. O progresso é acompanhado pelo backend por gateway como start_progress em /api/webapp-access/status, e é por isso que um painel reaberto ou uma segunda janela mostram o mesmo estado; o painel relê esse status uma vez por segundo só enquanto a requisição de Start está pendente e a janela está visível. Um backend mais antigo sem o campo não é consultado de forma alguma.

Se alguém do seu time já descreveu o primeiro Start como “parecia que tinha travado”, esta release acaba com o chute.

2. Tarefas agendadas podem publicar em um Group Chat

As salas de grupo do Bot Mode agora são um destino de entrega de verdade. O campo deliver de um job cron aceita:

deliver: room:<room_id>@<profile>

A saída chega à sala como uma única mensagem, rotulada com o nome do job e uma tag Scheduled. O ponto importante é a regra de ativação: só os bots que você menciona com @ entram na vez. Um post agendado que não nomeia ninguém continua sendo uma mensagem na sala e não dispara nenhuma chamada ao modelo; @all endereça todo mundo. Um aviso de falha também é publicado, e nunca inicia uma rodada.

As salas também ganharam dois campos que cada membro vê no topo da sua vez, editados em Room settings:

  • Purpose — para que serve a sala, até 500 caracteres
  • Shared notes — até 4 KB

Escreva “esta é a sala de ops, confira primeiro a escala de plantão” uma vez, em vez de repetir em toda mensagem.

O mesmo lote adicionou o lead routing, opcional por sala: quando uma mensagem não nomeia ninguém, um bot líder decide quem deve assumir e a sala mostra uma linha discreta como ada gave this to linus, para você ver a escolha e corrigir. Os padrões continuam intactos — salas sem líder seguem no round-robin serial, em que todo mundo responde. Para times em que cinco ou seis bots na mesma sala se atiram sobre cada mensagem, vale testar a chave.

As salas de grupo também adotaram o layout de chat nativo: coluna única, com o estado ao vivo de cada membro visível na lista em vez de adivinhado.

3. O card do Telegram aponta para uma configuração que funciona no Team Gateway

Se você roda o Telegram em um Team Gateway, o card do Hermes Cloud costumava te levar para um fluxo de configuração de máquina única que morria nas permissões. Agora ele aponta para o vínculo de conta do Portal, que funciona sob o Team Gateway. Mudança pequena, mas era um bloqueio duro para o modelo de deploy com bot compartilhado.

O que continua só na main

Esta é a parte que morde na hora de atualizar: um PR mesclado no GitHub não significa que a mudança está na tag que você acabou de instalar. Várias correções chegaram à main depois do corte da v0.22.7 e vão esperar a próxima release:

  • Avisos de segurança de dependências — alertas de undici, zod, fast-uri, qs, pypdf e pyasn1 que atingiram o limite de idade para release foram resolvidos.
  • Barra final no emissor de OAuth do MCP — logins de emissores que diferem só por uma barra final (Otter.ai entre eles) agora concluem.
  • Novos chats no desktop remoto — conexões por ticket público falhavam em todo chat novo com Session unavailable / invalid_params, porque o canal canônico de autoridade de sessão só era escolhido quando a URL trazia o marcador privado native_dial, mesmo com o gateway já anunciando session_authority: true em gateway.ready. A correção negocia a partir do anúncio.
  • Uma biblioteca de skills menor — sete skills opcionais são aposentados e os repositórios de fornecedor Notion, Airtable e Shopify passam a ser fontes confiáveis.
  • Janelas minimizadas no desktop — menos trabalho de streaming enquanto minimizada, previews ociosas limitadas e detecção de voz que continua funcionando com a janela fora de vista.

Para checar se um PR está no build que você roda, compare a ancestralidade com a tag em vez de confiar nos carimbos de tempo do merge:

git fetch --tags origin
git merge-base --is-ancestor <merge_commit_sha> v0.22.7 && echo "in tag" || echo "main only"

Como atualizar

Escolha a linha que corresponde à sua instalação:

# CLI / instalador
hermes update

# Docker / Hermes Cloud
docker pull nousresearch/hermes-agent:stable

# App da Microsoft Store
# atualiza pela Store, não por esta tag

Builds de desktop instalados pelo .exe / .dmg não têm mudança embarcada nesta release e seguem com a próxima versão embarcada.

Faça um snapshot antes, principalmente no Windows — não porque uma release corretiva seja arriscada, mas porque o updater mexe no state.db, e um snapshot transforma um susto ruim em um susto chato:

hermes backup --quick

Atualizar agora ou esperar uma semana

Três decisões rápidas:

  • Você usa Web Access ou salas do Bot Mode: atualize. As duas diferenças aparecem todo dia.
  • Você roda uma instalação de CLI com um único agente, sem salas nem desktop remoto: esperar uma release é razoável, e você pega as correções que só estão na main de uma vez.
  • Você passa tráfego de modelo por um proxy que inspeciona TLS: segure e leia antes nossa análise da regressão do SSL_CERT_FILE, porque essa afeta toda chamada ao modelo.

Um número de versão é só empacotamento. O que decide se você age hoje é se esta janela mexeu nos botões que você aperta toda manhã.

Para continuar lendo: o detalhamento da janela da v0.22.6, o guia de chat em grupo do Bot Mode, todas as releases, instalação e atualização.