v0.20.0

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.download entrega 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 patch detecta 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_file verifica 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 ao gpt-transcribe da 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 suggest analisa 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.download entrega 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-code v1.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

Changelog completo no GitHub

← Hermes Agent Changelog