Hermes Agent Lab

Blog do Hermes Agent — Guias Práticos e Insights

Últimos artigos e insights.

Post em destaque

Você só abriu aquela skill da comunidade — e ela rodou um comando de shell

Você instala uma skill de um hub da comunidade e, um dia, abre ela só para ler o que faz. Esse único olhar bastava para executar o snippet inline-shell da skill. Pior: quando outro profile alcançava a mesma skill por external_dirs, o comando rodava lá também. Quatro fronteiras de confiança foram apertadas — skills aninhadas, visões entre profiles e um lock de hub ilegível agora falham de forma fechada. A mesma semana trouxe correções de falsos positivos do skills-guard-v9, ~1.900 linhas de índice impossíveis de instalar removidas e duas instalações que nunca conseguiam dar certo.

Ler mais

Plugins de desktop finalmente podem apertar os próprios botões do app: ctx.runAction e ctx.pet.say

Plugins de desktop costumavam acionar recursos nativos simulando um evento de teclado — redefina o atalho e o botão morre em silêncio. Agora ctx.runAction(id) executa o mesmo handler do atalho e da command palette, expõe apenas ações de view e navegação, e sempre retorna um valor em vez de lançar exceção. Ao lado dele, ctx.pet.say deixa um plugin falar pelo pet bubble do core sem tocar no DOM do app.

Ler mais

Convidados do plano gratuito deixam de receber o browser challenge para connectors: o guest token com escopo

Uma mudança mesclada na janela da v0.21.7 faz com que um convidado do plano gratuito que usa apenas connectors ou managed tools não enfrente mais o browser challenge. O Hermes agora emite um token cujo único escopo é connectors:invoke — os portões de challenge e PoW são dispensados para ele, e o inference gateway o recusa. Veja como os dois tokens diferem, como um slot é escolhido e quais caminhos em background costumavam emitir inferência por acidente.

Ler mais

Os padrões de imagem para assinantes mudaram: Krea 2 Medium Turbo, com a FAL logo atrás

Uma instalação paga que nunca abriu o hermes tools costumava receber o FLUX 2 Klein 9B da FAL. Contas pagas agora usam o Krea 2 Medium Turbo por padrão — escrito apenas quando a seção de imagem nunca foi configurada, não tem modelo armazenado e a conta tem direito ao Krea. Imagens de referência agora são descritas como copiar um visual em vez de editar uma foto, e uma recusa do Krea que comprovadamente não criou job é reexecutada na FAL, com o resultado dizendo quem de fato rodou.

Ler mais

O modelo não esquece mais o que pensou: o raciocínio é reproduzido entre turnos, recarregamentos e compactação

Uma tabela de carriers de raciocínio por rota, um registro privado hermes.native_assistant e um fallback de "registrar a rejeição e tentar uma vez": o Hermes agora reproduz o raciocínio por padrão em todo provider capaz de lê-lo, e a compactação e o branching param de apagar o raciocínio de turnos anteriores. Veja qual campo cada rota recebe e onde olhar quando algo se comporta mal.

Ler mais

Depois da v0.21.7, o `hermes update` segue apenas releases com tag — saiba em qual canal você está

A v0.21.7 (11 de outubro de 2026) muda como as instalações via código-fonte se atualizam: por padrão você só avança para a última release publicada, e acompanhar a main passa a ser uma escolha explícita. A mesma janela também corrige o raciocínio perdido no resume e falhas de atualização atrás de firewalls regionais. Veja o que muda, como trocar de canal e o que não vai acontecer com a sua instalação.

Ler mais

Um clique em Regenerar e 107 mensagens desapareceram

No Hermes Desktop, o regenerate podia reexecutar um turn de quatro horas antes e arquivar em silêncio 107 mensagens posteriores. Agora, um rewind que descartaria um turn de usuário posterior pergunta antes — além da contagem de turns no servidor, da recusa 4033 e do interruptor de aplicação da próxima versão.

Ler mais

Quando um subagente terminava, ele tomava conta do chat

Um processo em segundo plano iniciado dentro de um filho de delegate_task registrava esse filho como dono da conclusão, então o gateway movia a rota do chat para o filho e descartava o resultado da delegação do pai. Aqui estão a cadeia, a correção e os limites que não se moveram.

Ler mais

Um navegador na nuvem com rate limit não derruba mais o browser_exec

Quando o provedor de navegador na nuvem devolve 429 ou fica fora do ar, o browser_exec agora recorre ao Chromium local empacotado em vez de falhar a chamada, e páginas localhost ou de LAN abrem num sidecar local para que URLs privadas nunca cheguem à nuvem.

Ler mais

Dois Gmails, um Hermes só: as contas dos connectors finalmente ganharam nome

Os connectors do Hermes agora aceitam várias contas do mesmo app com um alias curto (trabalho, pessoal), dizem sob qual conta cada chamada rodou e reparam uma conta por vez. Cobre o CLI hermes connectors, o overlay /connectors do TUI e o app de desktop.

Ler mais

O Hermes no Docker perdeu metade da sua árvore de dependências — a imagem nunca registrou uma baseline

Você abre o Hermes rodando no Docker e o servidor de API diz que o aiohttp não está instalado. Os adaptadores de mensageria e os servidores MCP desapareceram, agentes hospedados aparecem como degradados. Você não mudou nada. A causa: desde a v0.21.6 os oito extras embutidos na imagem nunca foram registrados como a baseline de dependências, então a primeira geração que o contêiner construiu por conta própria virou a nova baseline. A imagem agora a registra, e toda inicialização restaura o que sumiu — volumes que já estão quebrados se curam sozinhos.

Ler mais

hermes update mudou o padrão silenciosamente: chega de acompanhar cada commit

Você roda hermes update numa manhã de quarta-feira e ele diz que não há release mais nova — enquanto também avisa que você está centenas de commits atrás da main. Você não mudou nada. O canal de atualização padrão para uma instalação oficial a partir do código-fonte passou de main para stable, que só avança entre releases vX.Y.Z publicadas. Veja o que stable significa, onde o canal fica guardado, a diferença entre --set-channel e --channel e a única regra que pega as pessoas de surpresa: o padrão só anda para a frente.

Ler mais

O Hermes mandou uma máquina de 16 GB rodar um modelo 27B: agora ele diz não

Uma GTX 1080 com 16 GB de RAM recebeu a informação de que o Qwen3.8 27B cabe nesta máquina, e uma GPU integrada teve toda a RAM do sistema orçada. O Hermes corrigiu três bugs empilhados por trás de uma recomendação ruim de modelo local.

Ler mais

O recall do seu provider de memória estava sendo truncado: spill opt-in e duas outras falhas silenciosas

O recall da memória externa costumava ser trocado por uma prévia de início/fim antes mesmo de chegar ao modelo. Agora o Hermes o mantém intacto por padrão (memory.prefetch_spill_enabled), e corrige um limite de descoberta de 8 KB mais um loop de nova tentativa de instalação na inicialização.

Ler mais

Feche o notebook e seu /loop morre: por que os agendamentos destacados agora sobrevivem

Um /loop ou /heartbeat definido no app de desktop, no dashboard ou na TUI costumava ser desmontado no momento em que o cliente se desconectava. Agora o Hermes isenta uma sessão que ainda detém um agendamento ativo, então os wakeups continuam disparando em segundo plano.

Ler mais

Uma chamada TTS falha apagou um arquivo do usuário: por dentro da correção P0 do caminho de saída do Hermes

Aponte o text_to_speech para um arquivo existente e uma síntese falha costumava varrer esse arquivo junto com sua própria saída temporária. Agora o Hermes sintetiza em um arquivo irmão oculto e só substitui o alvo em caso de sucesso.

Ler mais

Um servidor MCP enviou uma captura de tela e o seu modelo viu apenas um caminho de arquivo

Configure um servidor MCP que captura a tela, peça ao agent para lê-la e ele avisa que só vê um caminho — a imagem foi armazenada em cache, mas o modelo nunca recebeu os pixels. A correção unificou "esta imagem consegue chegar ao modelo" em um único gate (vision_tools._native_tool_result_images), compartilhado por MCP ImageContent, capturas de tela do navegador, capturas do computer_use e vision_analyze. Veja o que auto / native / text realmente fazem, além de dois detalhes de segurança fáceis de passar batido.

Ler mais