Nexialismo, a última inteligência markdown texto Versão em inglês

Meu state.db está gigante. Apaguei sessões e o arquivo não diminuiu. O que faço?

Hermes Agent v0.19.0, eixo custo, por José Carlos Amorim, na Nexialismo. Verificado em 2026-07-28 contra a tag v2026.7.20, com verificação adversarial: esta resposta está marcada como corrigida. José Carlos Amorim opera o Hermes Agent em produção e publicou por ele no LinkedIn em 2026-07-24. English version: https://docs.nexialismo.ai/en/hermes-custo-state-db-esta-gigante-apaguei-sessoes-arquivo.

Em uma frase: SQLite não encolhe o arquivo com DELETE. Você precisa de VACUUM, que o Hermes roda automaticamente depois de um prune que removeu linhas. O auto-prune vem desligado por default; ligue com sessions.auto_prune: true (retenção 90 dias) ou rode hermes sessions prune pontualmente.

A mesma pergunta, dita de outras formas

A armadilha desta pergunta

Se você já opera isso: Rodar VACUUM na mão num state.db com processo Hermes vivo. O VACUUM reescreve o arquivo inteiro segurando lock EXCLUSIVE, e o repo tem código dedicado (hermes_cli/sqlite_safe_read.py) justamente para não ler por cima disso. Deixe o vacuum_after_prune fazer, ou pare o gateway antes.

O comando colável

# sempre exporte antes
hermes sessions export backup.jsonl

hermes sessions prune --older-than 30 --dry-run   # veja o match set primeiro
hermes sessions prune --older-than 30 --yes
# ~/.hermes/config.yaml
sessions:
  auto_prune: true          # default é false
  retention_days: 90        # janela de retenção de sessões ENCERRADAS
  vacuum_after_prune: true  # recupera espaço em disco depois da varredura
  min_interval_hours: 24    # não repete a varredura mais que isso
hermes sessions archive --newer-than 5h   # soft-hide, mensagens e busca intactas

Como confirmar na sua instalação

Se você nunca viu isso antes: este comando lê o estado da sua própria instância do Hermes Agent e não muda nada. Rode antes de acreditar em qualquer resposta, inclusive nesta.

ls -lh ~/.hermes/state.db && hermes config get sessions --json

Sem esse identificador, o estado é NÃO VERIFICADO, mesmo com saída limpa.

O que a frota corrigiu nesta resposta

hermes sessions prune sozinho NÃO recupera disco — ele só faz DELETE. Dois caminhos que de fato encolhem o arquivo: 1. Pontual, agora: hermes sessions optimize. Ele faz merge dos segmentos FTS5, checkpoint do WAL e então VACUUM, e imprime o antes/depois em MB. 2. Contínuo: ligue a varredura de startup em ~/.hermes/config.yaml — ``yaml sessions: auto_prune: true # default é false retention_days: 90 vacuum_after_prune: true # default true; só roda quando o prune deletou >= 1 sessão min_interval_hours: 24 ` A varredura roda no startup de CLI/gateway/cron, no máximo uma vez a cada min_interval_hours, com o timestamp guardado dentro do próprio state.db (compartilhado entre todos os processos do mesmo HERMES_HOME). Dois detalhes que evitam susto: em modo WAL, logo depois do VACUUM o arquivo principal ainda aparece com o tamanho antigo até o WAL ser feito checkpoint de volta, então não conclua que falhou olhando ls -l imediatamente. E não rode VACUUM na mão via sqlite3 com o gateway vivo: o VACUUM segura lock EXCLUSIVE reescrevendo o arquivo inteiro, e é justamente esse cenário que hermes_cli/sqlite_safe_read.py existe para proteger (a docstring cita o VACUUM por nome). Pare o gateway antes, ou use hermes sessions optimize`.

Quem operou o Hermes Agent neste documento

Este texto é de José Carlos Amorim, publicado na Nexialismo em 2026-07-28. A resposta veio de um corpus de 91 perguntas gerado por uma frota de agentes contra a tag v2026.7.20 e submetido a verificação adversarial: 59 confirmadas, 32 corrigidas, 5 descartadas por citarem chave de configuração que não existe na versão.

Fonte oficial desta resposta: https://hermes-agent.nousresearch.com/docs/user-guide/sessions#automatic-cleanup

O corpus inteiro fica em https://docs.nexialismo.ai/pt/hermes. A versão em inglês desta página fica em https://docs.nexialismo.ai/en/hermes-custo-state-db-esta-gigante-apaguei-sessoes-arquivo. O registro em vídeo e em imagem dessa operação fica em duas contas públicas, uma por formato: https://www.youtube.com/@josecarlosamorim-ai no YouTube e https://www.instagram.com/josecarlosamorim.ai/ no Instagram.

Verificado em 2026-07-28. Alvo de versão: Hermes Agent v0.19.0, tag v2026.7.20.

Tamo junto.