Hermes v0.22.0: uma primeira inicialização que se configura sozinha, connectors dentro dos seus apps e modelos locais de um clique

Você entrega o Hermes a um colega de equipe. Ele instala o app de desktop, abre e faz a pergunta óbvia: “e o que eu clico primeiro?”. Antes de conseguir dar um “oi”, ele precisa de uma conta, uma API key, uma tela de settings e um modelo para escolher. A outra versão dessa cena é você em uma máquina nova, vinte minutos dentro da configuração, desistindo por hoje. A v0.22.0 (tag v0.22.0, lançada em 13 de outubro de 2026) vai atrás desse limiar inteiro — tudo o que existe entre “acabei de instalar” e “ele fez algo útil”.
Ela também é a maior janela que este projeto já entregou: cerca de 24.200 commits, ~6.080 PRs mesclados e ~15.600 arquivos alterados desde a v0.21.0, com aproximadamente 2.520 contribuidores e ~7.180 issues fechadas — cerca de 2,5x o ciclo anterior, e ela consolida e documenta as releases de patch v0.21.1–v0.21.7. Aqui está o que realmente muda a forma como você usa o Hermes.
A primeira inicialização é uma conversa
Abra o app de desktop em um computador onde o Hermes nunca rodou e você recebe um pequeno chat de configuração guiada em vez de uma tela de settings. Um card por vez, ele pergunta seu nome, uma cor de destaque e um layout, quais apps conectar e quais plugins instalar; depois dá um tour rápido e alinha até quatro primeiras tarefas para você. Ele roda em um modelo de teste gratuito, nous/welcome (uma vez por usuário do sistema), então nenhuma API key é necessária: quem está chegando conversa com o agente antes de ter pago por qualquer coisa. Skip setup encerra tudo, e Settings → Run onboarding again traz de volta. O agente também ganhou uma ferramenta set_theme, então “deixa ele violeta, modo escuro” funciona de verdade em qualquer chat do desktop. Ele só aparece em instalações novas — backends remotos (SSH, URL, Cloud) não o recebem automaticamente (o passo a passo do onboarding).
Connectors colocam o agente dentro dos seus apps
Um agente que só consegue agir dentro da própria janela de chat faz de você a integração: você copia o ticket para a conversa e cola a resposta de volta. Pelo Nous tool gateway, o Hermes agora pode agir em apps hospedados como Linear e Notion — diga o app que quer, faça login uma vez no navegador, e as ferramentas dele ficam utilizáveis no mesmo turno. Você não precisa de uma conta Nous para começar: na primeira vez que usa um app, o Hermes cria uma identidade gratuita apenas de connectors. O desktop ganhou uma página Connectors que lista apps hospedados e seus servidores MCP juntos (ela substitui a aba MCP), o TUI e o CLI mostram o mesmo card de configuração, e você pode conectar várias contas nomeadas de um mesmo app — digamos, uma conta work e uma home.
Modelos locais sem dor de cabeça
Se o motivo de você querer um modelo local é que nada deve sair da máquina, esta release remove quase todo o trabalho. O Hermes instala e mantém o llama.cpp com o motor certo para o seu hardware (CPU, CUDA, Metal, Vulkan ou ROCm), avalia cada modelo do catálogo em relação à sua GPU e à sua RAM, e escolhe o melhor build que realmente caiba ali. Os downloads pausam e retomam, o servidor liga e desliga junto com o Hermes, e as atualizações de motor são um clique. Comece em Settings → Providers → Local Models, ou hermes model → Local models. O catálogo inclui Qwen3.8 27B, Qwen3.8 Flash Next com seu head especulativo MTP, Qwen3.6 35B-A3B e DeepSeek V4 Flash, além de qualquer GGUF do Hugging Face. As recomendações também ficaram mais rígidas: agora só são sugeridos modelos que cabem inteiramente na memória da GPU.
As atualizações seguem releases testadas, e o hermes pm cuida da toolchain
Uma instalação a partir do código-fonte costumava acompanhar cada commit na main. Agora ela segue releases estáveis SemVer testadas: toda release passa por CI de código-fonte, Docker, Nix, builds de desktop assinados e execuções de instalação/atualização em todos os sistemas antes de ser publicada. Prefere o bleeding edge? hermes update --set-channel main, ou o seletor de canal em Settings → About. Voltar para uma release mais antiga é rotulado como rollback e nunca acontece sem perguntar.
Por baixo, um gerenciador de pacotes unificado (hermes pm) cuida de toda ferramenta fixada e verificada por hash e de cada ambiente Python, com hermes pm doctor|status|repair|gc. Ele corrige um modo de falha antigo e bem específico: as atualizações constroem um ambiente novo e só trocam quando ele passa na verificação, então uma atualização que falha ou é interrompida não pode deixar você pela metade — uma atualização interrompida se conserta sozinha na próxima inicialização. Ambientes de dependência são gerações, e os antigos podem ser recuperados: de 92 GB para 18 GB em um host.
Pacotes assinados e a Microsoft Store
O app de desktop agora é um pacote selado e assinado que carrega o próprio Python e Node e se atualiza sozinho, então a primeira inicialização não compila nada. O Windows recebe um MSIX assinado (x64 e ARM64) via App Installer ou Microsoft Store; o macOS recebe um build assinado e notarizado para Apple Silicon. Duas arestas que vale conhecer: o desktop do Windows é somente MSIX e exige Windows 11 22H2 ou mais recente, e os builds padrão do macOS são somente Apple Silicon. Se você vinha adiando porque sua instalação era uma pilha de dependências não empacotadas, esta é a versão para reinstalar do zero.
A onda de modelos, e um raciocínio que sobrevive
Claude Fable 5.1, Opus 5.5, Sonnet 5.5 e Haiku 5.5, GPT-6 Astra / Sol / Luna mais GPT-6.1 Sol, e Gemini 4 Argon podem todos ser escolhidos no Nous Portal, no OpenRouter e nas rotas nativas onde forem oferecidos. A mudança mais prática é que o raciocínio anterior é reproduzido por padrão em todo provider que consegue lê-lo, em resume, branches e compaction, então uma tarefa longa de várias etapas mantém sua linha de raciocínio em vez de reconstruí-la do zero. E quando um provider tem uma hora ruim, o Hermes espera os 503/529/timeouts transitórios em ciclos visíveis e limitados, em vez de encerrar o seu turno.
O picker também aprendeu sobre os seus planos: marque favoritos com estrela, veja uma assinatura chegando ao fim (“17% left · resets 3:00 PM”) e quando um rate limit é liberado, e escolha o esforço de raciocínio como parte da seleção do modelo (/model X --reasoning high).
O resto da espinha dorsal
- Entre em sites com seu gerenciador de senhas — 1Password, Bitwarden ou o próprio cofre criptografado do Hermes preenchem logins sem que a senha entre no contexto do modelo; códigos de uso único são preenchidos automaticamente, e preenchimentos de cartão no checkout esperam sua confirmação (o passo a passo do login).
- Bot Screen — um bot em um gateway Linux pode ter seu próprio desktop, transmitido ao vivo para o Hermes Desktop; quando ele esbarra em um login, 2FA ou CAPTCHA, você assume a tela, conclui a etapa e devolve o controle.
- Um gateway e um backend para cada profile — em vez de um processo por profile, a máquina roda um gateway de mensagens e um backend de desktop que atendem todos eles; os bots de novos profiles entram no ar sem reiniciar e mantêm suas próprias credenciais, allowlists, cron jobs e sessões.
- Subagents que você pode orientar ao vivo — CLI (F6), TUI (Ctrl+T) e Desktop mostram a tarefa de cada filho, o tempo decorrido e a transcrição ao vivo acima do composer, com Steer e Stop;
/stopalcança filhos em background e devolve o trabalho parcial. - Um único catálogo de tradução — as strings do CLI, do gateway, do TUI e do Desktop compartilham ele, novos idiomas chegam como plugins, e qualquer profile pode sobrescrever strings individuais com um pequeno arquivo YAML (o guia dos language packs).
- Uma base de código um terço menor — de 1,06M linhas para 698K (−34%), e
gateway/run.pyde 34.847 linhas para 5.512; cerca de 19 ferramentas pouco usadas agora carregam só quando o agente as procura, reduzindo aproximadamente pela metade o schema de ferramentas do desktop enviado em cada chamada. - Um catálogo com 600 plugins — cada entrada fixada em um commit revisado, navegável por categoria e estrelas, com uma página por plugin e por autor; os memory providers saíram do core para junto de seus criadores e migram automaticamente.
Três coisas para saber antes de atualizar
Primeiro, os chats não reiniciam mais por timer de ociosidade ou diário: os modos idle/daily de session_reset foram aposentados, e só /new ou /reset começam do zero. Segundo, sessões antigas são podadas automaticamente: sessions.auto_prune vem ligado por padrão, excluindo na inicialização as sessões encerradas e inativas por 90 dias — sessões fixadas e abertas nunca são tocadas, e sessions.auto_prune: false mantém tudo. Terceiro, para autores de plugins: a antiga camada de import de compatibilidade, o hermes sync e o scanner tirith incluso acabaram, e todo, cronjob e process viraram todo_list, cronjob_manage e process_manage (os nomes antigos ainda funcionam).
Como atualizar
hermes update
Instalações gerenciadas recebem um runtime Python 3.14 (o KittenTTS não está disponível no 3.14). Depois de atualizar, rode hermes doctor para verificar a instalação e reinicie o gateway (hermes gateway) para que as mudanças de plataforma entrem em vigor. Para ver o que a próxima atualização vai tocar antes de rodá-la, use hermes update --plan; o changelog completo e agrupado está na página desta release.