Barra de status atualizada: taxa de cache-hit, latência e tokens/s de relance


Você encara a barra de status no rodapé do seu terminal: nome do modelo, porcentagem de contexto, um ícone de compressão. Bastante informação — mas o que você realmente quer saber é “este modelo está rápido agora? Meu cache está acertando? Quantos tokens por segundo ele está produzindo?” — porque a taxa de cache-hit decide se a sua conta de API custa um décimo do preço ou a tarifa cheia. Uma atualização mesclada em 30 de agosto (PR #98250) coloca as três respostas direto na barra de status: taxa de cache-hit (◎), latência média móvel (◷) e tokens de saída por segundo (↑) — e cada campo pode ser ligado e desligado via configuração.

O que há de novo na barra

Em um terminal largo, a barra atualizada fica assim:

⚕ model │ 3% │ ◎ 87.4% │ ◷ 3.2s │ ↑ 50 t/s │ 2m

Da esquerda para a direita: nome do modelo, contexto em 3%, taxa de cache-hit de 87,4%, latência média de 3,2s, 50 tokens de saída por segundo, duração da sessão de 2 minutos. As três novas métricas são estatísticas móveis — latência e throughput usam a média móvel das últimas ~10 chamadas de API em vez de uma média de vida desde a inicialização, então elas refletem o estado atual do modelo.

Alguns detalhes bem pensados:

  • A taxa de cache-hit zera sua linha de base em trocas de modelo e compressão de contexto — ela reflete o regime de cache atual, não um número diluído pela história;
  • Quando não existe nenhuma leitura de cache, o campo se esconde em vez de mostrar um alarmante 0% — sem sinais enganosos;
  • Latência negativa ou NaN é protegida — uma única chamada instável não consegue poluir as estatísticas.

Alternar campos: display.status_bar.fields

As novas métricas não são impostas a você — cada campo pode ser habilitado ou desabilitado de forma independente. A chave de configuração é display.status_bar.fields; uma lista vazia significa “todos os campos padrão”:

display:
  status_bar:
    fields: []   # vazio = padrões embutidos (todos os campos)

Digamos que você só se importa com cache e velocidade — mantenha apenas estes:

display:
  status_bar:
    fields: [model, ctx, cache_hit, latency, tps]

Sua barra vira ⚕ model │ 3% │ ◎ 87.4% │ ◷ 3.2s │ ↑ 50 t/s. De acordo com o código-fonte (hermes_cli/config_defaults.py), a lista completa de campos é: cache_hit, latency, tps, compressions, bg_tasks, bg_processes, bg_subagents, goal, duration, prompt_elapsed, idle_since, focus, yolo, stash, battery, title, total_tokens. Dois avisos:

  • total_tokens (soma de tokens da sessão) é apenas opt-in — nunca aparece a menos que você o liste;
  • Terminais estreitos descartam campos exclusivos do modo largo (context_detail, prompt_elapsed, idle_since) independentemente da configuração.

Por que vale a pena ficar de olho na taxa de cache-hit

Esta é a mais “valiosa” das três novas métricas. Os principais provedores de API (Anthropic, OpenAI, DeepSeek e outros) normalmente cobram leituras de prompt-cache a 1/10 do preço normal de entrada ou menos. A taxa de acerto da barra de status é um painel ao vivo da sua estratégia de economia: se ela fica baixa por muito tempo, a estrutura da sua sessão está em constante churn (system prompt mudando com frequência, descrições de ferramentas instáveis), então o cache continua errando; se fica consistentemente acima de 80%, seu dinheiro está sendo gasto onde importa.

Como obter

O PR #98250 foi mesclado em 30 de agosto de 2026 e está apenas na main — o v0.20.6 não o tem. Atualize para a main mais recente e os novos campos aparecem no hermes puro; para ajustá-los, edite display.status_bar.fields via hermes config edit.

A barra de status é o painel da CLI, e essas novas métricas a transformam de decoração em dados operacionais. Para o playbook completo de economia de tokens e cache, combine isto com o guia dos 5 canais de busca gratuitos e o guia de otimização de tokens de contexto; mais vitórias de eficiência escondidas da CLI estão no guia da command palette.