Hermes Agent v0.20.0 — The Herald Release
Visão Geral
v0.20.0 — The Herald Release. Lançado em 3 de agosto de 2026. ~3.650 commits · ~1.400 PRs mesclados · ~5.200 arquivos alterados · ~559.000 inserções · ~405.000 exclusões · ~1.200 issues fechadas · mais de 650 contribuidores da comunidade.
Hermes é o arauto dos deuses, e esta versão faz valer o título de verdade: ele fala (voz conversacional em tempo real com TTS em streaming, barge-in, wake words no dispositivo e controle mãos-livres no CLI, desktop e em todas as plataformas de gateway com suporte a áudio), ele leva mensagens a outros agentes (A2A v1.0), ele anuncia eventos para seus sistemas (webhooks de saída assinados) e ele cita suas fontes (pesquisa fundamentada com citações verificáveis e verificação de fatos).
Ao redor desse núcleo: o aplicativo desktop se tornou uma plataforma (Artifacts com preview ao vivo em sandbox, SDK de plugins, entrada rápida de qualquer lugar, múltiplas janelas), o CLI recebeu uma onda de comandos avançados (modo shell !, /init, /diff, /context, /focus), a compressão ficou mais inteligente e suave, e as próprias ferramentas agora se recuperam de falhas em vez de deixar o modelo adivinhar.
A reação da comunidade foi imediata — o tópico no Digg Tech alcançou mais de 900 mil visualizações combinadas e mais de 5.400 curtidas em 24 horas. Teknium disse que estava “anunciando a nova era”. Esta versão também incorpora tudo do patch de infraestrutura v0.19.1.
Destaques
1. Converse com o Hermes — Voz Conversacional em Streaming com Barge-In
O modo de voz costumava ser: fale, espere toda a resposta ser gerada, então ouça um longo arquivo de áudio. Agora o Hermes fala frase por frase conforme a resposta é transmitida, você pode interrompê-lo no meio da frase simplesmente falando (ele para, escuta e o modelo é informado de que você interrompeu), e a detecção de silêncio com reconhecimento de atividade significa que ele não fala por cima de você.
Esta é uma mudança qualitativa, não quantitativa — conversar com o Hermes finalmente parece uma conversa de verdade, não uma troca de mensagens de voz. Funciona no modo de voz do CLI, no desktop e através dos adaptadores de gateway.
# Entre no modo de voz pelo CLI ou TUI
hermes chat --voice
# Hermes fala frase por frase, você diz "wait" e ele para
# Totalmente mãos-livres — sem necessidade de teclado
2. Wake Words e Controle Mãos-Livres — Fale do Outro Lado da Sala
Escolha sua própria frase de ativação de vocabulário aberto (“hey Hermes”, ou o que você preferir) e o Hermes começa a escutar — a detecção roda no dispositivo, então nenhum áudio sai da sua máquina enquanto espera. O roteamento de voz multi-profile significa que diferentes wake words podem alcançar diferentes profiles, e dizer “stop” encerra o chat de voz em qualquer superfície sem tocar no teclado. Seu terminal agora é algo com que você pode falar do outro lado da sala.
# Registre uma wake word personalizada (cadastro de voz, 3 amostras)
hermes voice wake-word register --phrase "hey assistant"
# Vincule diferentes profiles a diferentes wake words
hermes voice wake-word bind --profile work --phrase "time to work"
hermes voice wake-word bind --profile personal --phrase "hey hermes"
Reação da comunidade: desenvolvedores estão chamando isso de momento “matador do Alexa/Google Home”. A detecção de wake words roda silenciosamente em segundo plano sem consumir orçamento do modelo.
3. Voz em Todo Lugar — WhatsApp, Feishu, DingTalk, LINE, QQ, WeChat
Envie uma nota de voz para o Hermes no WhatsApp, Feishu, DingTalk, LINE, QQ, Photon ou Weixin e ela é transcrita e respondida. As respostas automáticas em TTS são entregues com consciência da plataforma (opus onde as plataformas exigem opus, legendas anexadas corretamente).
O STT agora é totalmente configurável — sua própria categoria hermes tools, matriz de alternância na GUI, menus suspensos no dashboard, exibição de status de configuração. A resolução unificada de idioma corrige o problema de “a transcrição volta no idioma errado” que atormentava os usuários de voz. O gpt-transcribe da OpenAI agora é compatível.
Todos os provedores de TTS compartilham um único pré-processador de texto falado unificado — markdown, blocos de código e URLs são inteligentemente removidos da saída de fala.
4. Pesquisa em Que Você Pode Confiar — Citações Fundamentadas com Verificação de Fatos
A nova skill grounded-citations faz o Hermes produzir pesquisas onde cada afirmação é respaldada por uma fonte verificável: as citações são comparadas com o texto real da página (não alucinadas), e as referências apontam para a evidência exata. Um modo de verificação de fatos aplica o mesmo mecanismo a qualquer documento ou afirmação que você fornecer — ele diz o que confere, o que não confere e o que não pôde ser verificado.
Se você usa o Hermes para pesquisa, esta é a diferença entre “parece certo” e “comprovadamente fundamentado”.
# Ative o modo de pesquisa fundamentada na conversa
/grounded-citations
# Verifique os fatos de um documento existente
/fact-check "Este relatório sobre segurança de IA está correto?"
5. Comunicação Entre Agentes — Protocolo A2A v1.0
Um novo plugin integrado implementa o protocolo Agent-to-Agent — o Hermes pode descobrir, conversar e ser conduzido por outros agentes compatíveis com A2A. Isso fecha a issue #514 — uma das solicitações de funcionalidade mais antigas do repositório.
Se você está construindo sistemas multi-agente com stacks heterogêneas, o Hermes agora tem um protocolo de comunicação padrão para integrá-los.
# Ative o plugin A2A
hermes plugins enable a2a
# Hermes descobre automaticamente agentes na rede local
# Pode delegar subtarefas a outros agentes de forma autônoma
Teknium destacou isso como uma das mudanças de infraestrutura mais significativas desta versão — agentes finalmente têm um protocolo de comunicação padrão em vez de serem caixas-pretas isoladas.
6. Webhooks de Saída — Hermes Envia Eventos para Seus Sistemas
Até agora, integrar-se ao Hermes significava fazer polling ou escutar em uma plataforma. Agora o Hermes envia eventos de ciclo de vida assinados (atividade de sessão, conclusões de turno, eventos de ferramentas) para qualquer endpoint HTTP que você registrar — com assinaturas HMAC para que seu receptor possa verificar a autenticidade.
Conecte o Hermes aos seus pipelines de CI/CD, automação residencial, dashboards de monitoramento ou qualquer serviço que fale HTTP, sem loop de polling.
# hermes.config.yaml
webhooks:
- url: "https://seu-servico.exemplo.com/hermes-events"
events: ["turn_complete", "tool_invocation", "session_activity"]
hmac_secret: "${env:WEBHOOK_HMAC_KEY}"
7. O Aplicativo Desktop se Torna uma Plataforma — Artifacts, SDK de Plugins, Entrada Rápida
O aplicativo desktop deixou de ser um cliente de chat e passou a ser uma bancada de trabalho:
- Artifacts: cartões versionados com preview ao vivo em sandbox em um painel lateral direito — HTML gerado ou aplicações web rodam com segurança ao lado do chat
- SDK de Plugins lançado: Kanban como o plugin desktop inaugural;
ctx.downloadentrega arquivos aos usuários a partir de plugins; SDK de widget-app (state + reducer + render); motor de layout em grade de widgets com motor de temas sensível ao fundo - Janela de entrada rápida por atalho global: capture um pensamento em qualquer sessão de qualquer lugar do seu sistema operacional
- Múltiplas janelas GUI; posicionamento de painéis flutuantes
# Desktop: Ctrl+Space abre a janela de entrada rápida global
# Digite "crie uma página de login em HTML para mim"
# Hermes gera como um Artifact com preview ao vivo no painel direito
O vídeo de análise de Julian Goldie chamou o preview ao vivo dos Artifacts de a adição mais importante para o desktop, transformando “ver código” em “ver resultados”.
8. Onda de Produtividade no CLI — Menos Desfazer, Mais Controle
Uma onda de comandos CLI de alto impacto chega, encerrando a era de “bagunçar e começar de novo”:
| Comando | O Que Faz |
|---|---|
!command |
Executa um comando shell instantaneamente — sem gastar turno do modelo, resultados imediatos |
/init |
Escaneia seu projeto, gera ou atualiza um arquivo AGENTS.md de contexto |
/diff |
Visualiza diffs staged / todos / da sessão de qualquer superfície |
/context |
Mostra exatamente o que está preenchendo sua janela de contexto |
/focus |
Visualização de saída reduzida com recuperação de linhas ocultas |
Ctrl+S |
Guarda um prompt parcial em um painel navegável |
hermes import-agent |
Migração em um comando a partir do Claude Code ou Codex CLI |
# Shell rápido — sem consumir orçamento do modelo
! ls -la && cat package.json
# Veja exatamente o que está consumindo sua janela de contexto
/context
# Saída:
# System prompt: 12.450 tokens
# Últimos 3 turnos: 2.100 tokens
# Definições de ferramentas: 4.800 tokens
# Documentos de skills ativas: 3.200 tokens
# Restante: 15.450 / 38.000 tokens
# Migre do Claude Code — um comando
hermes import-agent
AICrier observou que /context é um dos comandos de diagnóstico mais solicitados — nunca mais adivinhar o que está preenchendo a janela de contexto.
9. Corrija o Agente no Meio do Turno — Redirecione em Vez de Reiniciar
Se o Hermes estiver indo na direção errada, você não precisa mais de /stop, reescrever o prompt e esperar a repetição. Digite uma correção enquanto ele trabalha e o turno ativo é redirecionado: o trabalho em andamento é preservado, o prompt original é mantido e o agente corrige o curso com sua nova orientação.
Combinado com o descarte de rascunho com duplo ESC e a pilha de desfazer do composer, conduzir o Hermes parece mais editar do que reiniciar.
# Hermes está executando, e você percebe que está indo na direção errada
# Não use /stop — apenas digite uma correção:
> Espere, verifique a versão do Node primeiro antes de decidir qual gerenciador de pacotes usar
# Hermes redireciona imediatamente, preservando o trabalho concluído, e continua
10. Ferramentas Que se Corrigem Sozinhas — Chega de Turnos Perdidos por Atrito com Ferramentas
Uma varredura sistemática de melhorias de autorrecuperação significa que o agente desperdiça muito menos turnos com atrito de ferramentas:
- Saída de terminal truncada é despejada em um arquivo que o agente pode ler de volta
- Comando
patchdetecta edições já aplicadas e diagnostica incompatibilidades de espaços em branco - Buscas com zero resultados procuram por correspondências próximas e se recuperam
write_fileverifica o conteúdo no disco- Classes comuns de falha retornam com dicas de recuperação acionáveis
O limite padrão de iterações de chamada de ferramentas também saltou de 90 para 500 — execuções longas e autônomas deixaram de bater em uma parede artificial.
# Limite padrão de iterações de ferramentas dramaticamente aumentado
# Antes: parada automática após 90 iterações
# Novo: 500 iterações, suficiente para cadeias complexas de tarefas em múltiplas etapas
A análise do AICrier chama a autorrecuperação de ferramentas de um “ganho silencioso de produtividade” — você não percebe, mas economiza de 5 a 10 turnos desperdiçados todos os dias.
Voz e Fala
Voz Conversacional
- TTS em streaming, frase por frase, com barge-in em todas as superfícies (modo de voz CLI + adaptadores de gateway)
- Listener de turno full-duplex — interrompa por voz durante a geração E a reprodução
- Detecção de silêncio com reconhecimento de atividade, dicas de parada, sons de pensamento, correções de barge-in
- O modelo é informado quando o usuário interrompe sua resposta falada — o contexto permanece coerente
- Desktop fala o turno inteiro e descarrega a narração acumulada quando em inatividade
Infraestrutura de TTS / STT
- Pré-processamento unificado de texto falado + parâmetros de velocidade/instruções/provedor; resolução unificada de idioma do STT (corrige a classe de problemas de transcrição no idioma errado)
- STT totalmente configurável — categoria
hermes tools, matriz de alternância na GUI, menus suspensos no dashboard, status de configuração; suporte aogpt-transcribeda OpenAI - Entrega automática de TTS com consciência da plataforma (plataformas opus tratadas corretamente, legendas anexadas)
- Classificação/roteamento de voz de entrada para WhatsApp, Feishu, DingTalk, LINE, QQ, Photon, Weixin
- Fortalecimento de provedores de TTS/STT por comando (timeouts de inatividade, limpeza de variáveis de ambiente, sem shell, proteções de caminho)
- Síntese de TTS por frase em pipeline com reprodução — a próxima frase é renderizada enquanto a atual é falada
- Streams PCM de voz do Discord enviados para stdin do ffmpeg em vez de arquivos temporários
Wake Words e Mãos-Livres
- Wake words de vocabulário aberto no dispositivo (cadastro de voz, 3 amostras)
- Roteamento de voz multi-profile — diferentes wake words alcançam diferentes profiles
- Diga “stop” para encerrar o chat de voz sem as mãos em todas as superfícies
- Onda de 15 correções de UX e ambiente para modo de voz CLI/TUI
Agente Principal e Arquitetura
Compressão — Inteligente e Suave
- Poda proativa de resultados de ferramentas para modelos de janela grande
- Micro-compactação por turno — custo de compressão amortizado entre turnos em vez de uma grande pausa
- Cauda garantida de N mensagens do usuário (
compression.min_tail_user_messages) — a conversa recente sempre sobrevive - Defesa contra ghost-skills — skills podadas nunca podem assombrar silenciosamente uma sessão
- Timeouts com reconhecimento de progresso — modelos de sumarização lentos não são mais penalizados
- Substituições de limite por modelo; limite absoluto de tokens (
compression.threshold_tokens); compactação opcional acionada por inatividade
Sessões longas permanecem coerentes e param de travar.
Redirecionamentos no Meio do Turno
- Correções do usuário conduzem o turno ativo, preservando o trabalho em andamento e o prompt original
- Duplo ESC descarta o rascunho
- Pilha de desfazer do composer
Aprovações — Mais Inteligentes, Menos Cliques
hermes approvals suggestanalisa o histórico de aprovações para gerar propostas de lista de permissões- Política de aprovação inteligente personalizável (
approvals.smart_policy) - Disjuntor de negações consecutivas — três negações consecutivas forçam a parada do loop
- Comandos de redirecionamento de daemon Docker/podman agora exigem aprovação adicional
- Comando de modo de aprovações entre superfícies
- Aprovações de pareamento no desktop: perfil correto, com uma superfície adequada para responder
Cache de Prompt e Desempenho de Caminho Crítico
- Schemas de ferramentas cacheados no Anthropic nativo sem perda de histórico
- Cache de prompt do DeepSeek nos gateways OpenCode
- Contabilidade de tokens por chamada de API fora da thread do turno
- Cliente wire da OpenAI reutilizado em chamadas LLM sequenciais
- Canonicalização de chamadas de ferramentas no caminho de envio memoizada
Provedores e Modelos
- Provedor Vercel AI Gateway + backend de terminal Vercel Sandbox retornam, modernizados (SDK 0.7.2, telemetria desligada)
- Gemini 3.1 Pro + 3.6 Flash nos catálogos; cluster de recuperação Gemini
- claude-opus-5 no OpenRouter e Nous Portal
- deepseek-v4-flash-0731 integrado
- Cache de prompt da Bedrock Converse API (cachePoint)
- Seletor de modelos: padrões curados + provedores recolhíveis + selecionar todos
- Caches obsoletos servidos instantaneamente com atualização em segundo plano
Delegação e Subagentes
- Metadados estruturados de timeout/stall + status ao vivo por filho em
/agents - Subagentes podem usar
execute_code - Histórico de ferramentas filhas redigido exposto em
subagent_stop - API pública de ciclo de vida de subagentes para plugins
Desktop — De Aplicativo de Chat a Plataforma de Desenvolvimento
Capacidades da Plataforma
- Artifacts: cartões versionados + preview ao vivo em sandbox no painel lateral direito
- SDK de Plugins: Kanban como o plugin desktop inaugural;
ctx.downloadentrega arquivos aos usuários; SDK de widget-app (state + reducer + render); motor de layout em grade de widgets + motor de temas sensível ao fundo - Janela de entrada rápida: atalho global → qualquer sessão
- Múltiplas janelas GUI: sessões paralelas lado a lado
- Posicionamento de painéis flutuantes — painéis em qualquer lugar
- Modo de conexão de backend remoto via SSH
- Deixe o agente conduzir o shell (painel de preview + foco do painel) E inspecionar o aplicativo desktop que está construindo
Composer e UX
- Anexar arquivos/pastas/links via seletor; chips no composer para @path e links colados
- Pilha de desfazer do composer; duplo ESC descarta rascunho; duplo Enter envia turno enfileirado
- Troca de modelo em 2 teclas (⌘⇧M); YOLO no ⌘K com estado de alternância ao vivo
- Divisores de data na barra lateral + seção fixada + arquivamento automático opcional de sessões inativas
- Linha de atividade de ferramentas agrupada e atualizada ao vivo; links @session resolvem para títulos clicáveis
- Reações emoji estilo iMessage (opcional, bidirecional); duplo clique para curtir
- Notificações de uso de créditos
- Login nativo no desktop via RFC 8252 (navegador do sistema + PKCE, sem cookies de webview)
- Alternância para manter o computador ativo + indicador de ativação no notch
Desempenho do Desktop — Onda 2 de 60fps
- Custo de streaming independente do tamanho da transcrição — permanece fluido independentemente de há quanto tempo você está conversando
- 60fps em sessões reais (pins limitados por reflow, flush adaptativo)
- 60fps ao arrastar com cinco abas em streaming
- Temporizadores de painéis ocultos pausados, loops de scroll/status parados em sessões ocupadas
- CPU em inatividade próxima de zero em segundo plano
- Desperdício de renderização da barra lateral/overlay eliminado
- ⌘K abre instantaneamente
- Inicialização a frio do renderizador: shiki/mermaid ficam fora do caminho de inicialização
- Diagnóstico de estado (contadores de renderização e desperdício de store) + regra de lint proibindo refs espelhados em atom
- Suíte E2E com Playwright e diffs de regressão visual
CLI, TUI e Runtime
| Comando/Funcionalidade | Descrição |
|---|---|
!command |
Shell mais rápido — sem gastar turno do modelo |
/init |
Escaneia projeto → gera/atualiza AGENTS.md |
/diff |
Três visualizações de diff — staged / todos / sessão |
/context |
Detalhamento preciso da janela de contexto |
/focus |
Visualização de saída reduzida + recuperação de linhas ocultas |
Ctrl+S |
Guarda um prompt em painel navegável |
/goal |
Indicador persistente de objetivo |
hermes import-agent |
Migração em um comando do Claude Code / Codex CLI |
| Seleção múltipla de esclarecimento | Interação por checkbox no CLI/gateway/TUI |
| Linha de resumo por turno + fluxo de tokens ao vivo no spinner | Progresso transparente |
| SDK de temas entre superfícies | Um tema que funciona no CLI, TUI e desktop |
Inicialização a frio hermes -w |
~14s → ~1,8s |
hermes update sem operações |
2–6s mais rápido |
| Runtime | Node 26 em todos os instaladores; canais brew/pip/PyPI descontinuados (permanecem shell installer / Docker / Nix) |
TUI: seletor de modelo não estraga mais seu rascunho, menu de barra lidera com suas skills mais usadas, anexos ficam no composer. Localidade árabe (ar) com RTL no desktop/dashboard/agente.
Gateway, Plataformas e Relay
Novas Plataformas
- Buzz: messenger baseado em Nostr da Block com transporte WebSocket nativo + autenticação NIP-42
- Photon: enquetes nativas, efeitos, esclarecimento como enquete, links ricos (recuperação de 4 PRs)
- Provedor Vercel AI Gateway + backend de terminal Vercel Sandbox retornam
- Slack: botões de esclarecimento nativos em Block Kit; gatilhos de reação opcionais; sanitização de dados de saída
- Discord: sessões em thread automática vinculadas a
prospective_thread_id; referências de resposta construídas a partir de ids - WhatsApp: confirmações de leitura de entrada configuráveis
- Kanban ao despertar retoma a sessão DM/thread do criador; despertares de kanban/delegação alcançam sessões api_server
Paridade de Fases do Relay
- Fase 1: descoberta
supported_ops, campos de identidade, aliasing/handoff - Fase 2: mídia
- Fase 3: prompts interativos
- Fase 4: ciclo de vida de threads
- Indicadores de digitação de saída
Sincronização de Skills HSP
- Cliente pessoal (M1) + cliente de skills da organização (M2) + namespace de skills da organização com descoberta protegida por token
Confiabilidade de Entrega
- Heartbeats de atividade de sessão, watchdog de travamento, esperas de compressão limitadas — reimplementados e fortalecidos após uma reversão na janela
- Consolidação de SessionState: 19 dicionários por chave de sessão → um único objeto com escopo de turno/conversa/persistente
Skills, Plugins e MCP
Novos e Atualizados
- A2A v1.0: plugin de protocolo Agent-to-Agent (fecha #514)
- Skill
grounded-citations: citações de fontes + modo de verificação de fatos - Curator: expõe skills não gerenciadas +
curator adopt - Skills de escritório integradas: docx, xlsx, pdf + PowerPoint atualizado
- Desinchaço da árvore de skills continua: yuanbao, segment-anything, jupyter, heartmula, audiocraft → optional-skills
- Skill de scripting
tldraw-offline simplify-codev1.1
MCP
- Entrada de catálogo Comfy Cloud com padrão curado de 20 ferramentas
- Inicialização preguiçosa de servidores MCP — a partir de um cache de schema de ferramentas em disco indexado por fingerprint; servidores configurados não iniciam mais todos na abertura da sessão
- Avisos de espaços em branco ocultos na configuração MCP
- Integração de observabilidade NeMo Relay (reimplementada no estábulo 0.6)
Segurança e Confiabilidade
Fortalecimento de Credenciais e Segredos
- Firewall de saída para injeção de credenciais via iron-proxy (reimplementado)
- Requisições seguras contra SSRF com pinagem de DNS + allowlist de CDN do Slack
- Redação estrita nos limites de compactação
- ReDoS eliminado nos padrões de redação de chaves de configuração
- Leituras de credenciais de nível 3 com escopo definido
- Pins de dependências CVE atualizados
- Onda de fortalecimento para Windows: classe de bugs de decodificação de subprocesso em modo texto fechada em todo o repositório, flashes de console ocultos, lacunas residuais de codificação (MCP stdio, atualização de gateway I/O, STT/TTS, spawn no desktop)
- Fonte de segredos command-helper (compõe com todos os vaults)
- Paridade de
${env:VAR}SecretRef entre config.yaml e configuração MCP
Integridade de Sessão e Estado
- Quatro correções de estado de sessão (rastreamento seguro de fechamento, correção de classe de flush-cursor, nova tentativa de linha, reparador de PK de uso)
- Layout FTS compacto v23 +
hermes sessions optimize+ FTS com bigramas CJK - Divisão de caminho de leitura com conexões somente leitura por thread
- Fortalecimento do provedor de memória OpenViking
- Pool de credenciais: restauração primária com reconhecimento de reset + correções de bloqueio de atualização diferida
Atualização
hermes update
Para novas instalações:
# macOS / Linux / WSL2
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
# Windows (PowerShell)
iex (irm https://hermes-agent.nousresearch.com/install.ps1)
Se você está migrando do Claude Code ou Codex CLI, a migração é um comando:
hermes import-agent
← Hermes Agent Changelog