Hermes Agent do básico ao avançado

Um mapa operacional para entender o Hermes como chat, sistema de automação, agente com memória e plataforma extensível.

O Hermes Agent parece, à primeira vista, “mais um assistente de terminal”. Só que essa leitura é pequena demais. O Hermes é melhor entendido como uma camada de orquestração: um agente que conversa, usa ferramentas, preserva contexto entre sessões, publica em canais externos, agenda trabalho futuro e aprende procedimentos reutilizáveis.

TL;DR Para dominar o Hermes, vale separar seis blocos: modelo, provider, toolsets, memória e skills, interfaces e automação. Quando esses blocos ficam claros, o resto — cron, gateway, MCP, perfis, subagentes e contribuição no código — vira extensão natural da base.

O que é o Hermes Agent

O Hermes Agent é um agente de IA orientado a ferramentas. Em vez de responder só “de cabeça”, ele pode agir: rodar comandos, ler arquivos, editar conteúdo, abrir navegador, pesquisar sessões passadas, guardar fatos duráveis e disparar tarefas agendadas.

Isso muda o papel do modelo. Em muitos sistemas, o LLM é o produto inteiro. No Hermes, o LLM é o motor cognitivo dentro de um sistema maior. O resultado final nasce da combinação entre:

  • modelo: quem raciocina e escreve;
  • ferramentas: quem executa ações;
  • memória: quem guarda fatos duráveis;
  • skills: quem guarda procedimentos;
  • gateway: quem conecta o agente a Telegram, Discord e outros canais;
  • scheduler: quem executa tarefas futuras.
Interface CLI · Telegram · Gateway Agent loop prompt + tool calls Modelo gpt · claude · gemini Provider OpenAI · OpenRouter Ferramentas terminal · file · browser Memória memory · sessions · skills Automação cron · delegation · MCP
O Hermes funciona melhor quando você pensa nele como uma camada de orquestração entre interface, modelo, ferramentas e automação.

A instalação real usada neste estudo

Este texto não foi escrito só a partir de documentação. A própria instância em uso foi inspecionada. Isso importa porque o Hermes é um sistema altamente configurável: documentação mostra o possível; a instalação local mostra o que está realmente ativo.

Versão e runtime

$ hermes --version
Hermes Agent v0.14.0 (2026.5.16)
Project: /home/hermes/.hermes/hermes-agent
Python: 3.11.15
OpenAI SDK: 2.24.0
Update available: 214 commits behind — run 'hermes update'

Estado geral da instância

$ hermes status --all
Model:        gpt-5.4
Provider:     OpenAI Codex
Terminal:     local
Gateway:      running via systemd (system)
Telegram:     configured
Scheduled Jobs: 3 active
Profiles:     default
Leitura correta Isso já revela que esta instância é mais do que um chat local. Ela está operando como serviço de gateway, como agente agendado e como ambiente de trabalho persistente.

Modelo e provider: o primeiro conceito que precisa ficar limpo

Duas palavras aparecem o tempo todo no Hermes: model e provider. Elas são próximas, mas não são a mesma coisa.

  • Modelo: o nome do modelo usado para conversar e raciocinar.
  • Provider: a infraestrutura que expõe esse modelo para o Hermes.

Na instalação inspecionada, o arquivo ~/.hermes/config.yaml mostra:

Trecho real da configuração

model:
  default: gpt-5.4
  provider: openai-codex
  base_url: https://chatgpt.com/backend-api/codex

Portanto, aqui o agente está configurado para usar o modelo gpt-5.4 por meio do provider openai-codex. Se você trocar o provider, não está necessariamente trocando o comportamento do agente inteiro; está trocando o caminho de acesso ao modelo.

Comandos centrais desse bloco

hermes model
hermes config
hermes config set model.default <modelo>
hermes config set model.provider <provider>

Toolsets: por que o Hermes age em vez de só responder

O Hermes organiza suas capacidades por toolsets. Cada toolset agrupa ferramentas com um propósito. Isso é importante por duas razões: controle de segurança e economia de contexto. Em vez de expor “tudo sempre”, você escolhe os grupos relevantes.

Toolsets habilitados nesta instalação

$ hermes tools list
web
browser
terminal
file
code_execution
vision
image_gen
tts
skills
todo
memory
session_search
clarify
delegation
cronjob
messaging

Na prática, isso significa que este agente consegue pesquisar, navegar, usar terminal, mexer em arquivos, analisar imagens, gerar mídia, manter memória, procurar conversas antigas, delegar subtarefas e criar cron jobs.

Detalhe importante Toolset habilitado não significa ferramenta plenamente funcional em qualquer ambiente. O hermes doctor pode mostrar dependências pendentes para um toolset já exposto na configuração.

Exemplo real: o doctor separa “habilitado” de “operacional”

browser        ✓
terminal       ✓
file           ✓
computer_use   ⚠ system dependency not met
web            ⚠ missing API keys for some backends
spotify        ⚠ system dependency not met

Essa distinção é excelente para operação séria. Ela permite que o agente conheça uma capacidade, mas só a use quando o ambiente realmente sustenta aquela execução.

Configuração: onde o comportamento do Hermes realmente mora

O centro da configuração fica em ~/.hermes/config.yaml. Segredos e tokens ficam em ~/.hermes/.env. Separar os dois é uma decisão boa: comportamento de um lado, segredo do outro.

Descobrir os caminhos corretos

$ hermes config path
/home/hermes/.hermes/config.yaml

$ hermes config env-path
/home/hermes/.hermes/.env

Alguns blocos da configuração local ajudam a enxergar como o Hermes pensa o ambiente:

Bloco Trecho real O que isso implica
agent max_turns: 90 o agente pode encadear muitos passos antes de encerrar
terminal backend: local comandos rodam neste host, não em container remoto
compression enabled: true o contexto é resumido quando cresce
memory memory_enabled: true o agente mantém fatos duráveis entre sessões
delegation max_concurrent_children: 3 há paralelização controlada de subtarefas
approvals mode: manual comandos perigosos pedem aprovação
security redact_secrets: true o sistema tenta mascarar segredos em saída de ferramentas

O bloco de configuração não é só preferência estética. Ele define o tipo de agente que você tem: mais solto, mais seguro, mais autônomo, mais multimídia, mais orientado a chat ou mais orientado a automação.

Memória, perfil do usuário e skills

Um dos traços mais fortes do Hermes é separar fatos duráveis de procedimentos duráveis.

  • memory: fatos sobre o usuário, o ambiente e convenções estáveis;
  • skills: instruções reutilizáveis para executar uma classe de tarefa.

Esse desenho é muito melhor do que jogar tudo em “memória”. Se o usuário diz que prefere respostas em português, isso é memória. Se o agente descobre um fluxo robusto para publicar estudos em um site estático, isso é skill.

Trecho real da configuração de memória

memory:
  memory_enabled: true
  user_profile_enabled: true
  memory_char_limit: 2200
  user_char_limit: 1375
  nudge_interval: 10
Heurística útil Se a informação tende a envelhecer em poucos dias, ela provavelmente não deveria ir para memória. Se a descoberta ensina como fazer algo e tende a ser útil de novo, ela provavelmente deveria virar skill.

Sessões e retomada de contexto

O Hermes trata cada conversa como sessão persistida. Isso faz diferença operacional enorme: você pode retomar trabalho, auditar decisões e pesquisar histórico com contexto, não só com trechos soltos.

Sessões reais desta instância

$ hermes sessions list
20260529_063541_ebaa7d92  Session List and Resume Comman...
20260529_064537_19f41b    learn #2
20260528_155551_ca0855e0  Reset de sessões e contexto

Estatísticas reais

$ hermes sessions stats
Total sessions: 4
Total messages: 182
Database size: 44.4 MB

Isso transforma o agente em algo mais próximo de um ambiente de trabalho contínuo do que de uma conversa descartável.

CLI e slash commands: o plano de controle do sistema

No dia a dia, a interface principal do Hermes é a CLI. Ela não serve só para escrever prompts; ela é um plano de controle do agente. O repositório local deixa isso claro: existe um registro central de slash commands em hermes_cli/commands.py.

Em outras palavras, os comandos não vivem como remendos espalhados; existe uma taxonomia explícita de sessão, configuração, tools, info e integração com gateway.

Alguns comandos principais

/new            sessão nova
/model          trocar modelo
/skills         navegar por skills
/cron           gerenciar tarefas agendadas
/reload-mcp     recarregar servidores MCP
/platforms      ver estado do gateway
/status         inspecionar a sessão atual

O próprio binário reforça essa visão de “sistema operacional leve de agentes”. O hermes --help mostra comandos para chat, config, gateway, cron, skills, plugins, memory, profiles, dashboard, logs, webhook e MCP.

Gateway: quando o Hermes sai do terminal

O gateway é a camada que conecta o mesmo agente a plataformas de mensagem. Nesta instalação, o Telegram está configurado e o gateway está rodando como serviço systemd de sistema.

Leitura real do status

Telegram      ✓ configured (home: 178985474)
Gateway       ✓ running
Manager       systemd (system)

O ganho conceitual aqui é grande. O Hermes não precisa morar no mesmo lugar em que você trabalha. Ele pode ficar num servidor e ser acessado remotamente, inclusive com continuidade entre CLI e canal de mensagem.

Modelo mental Pense no gateway como a camada de entrega e presença do agente. O cérebro continua sendo o mesmo; o canal muda.

Cron: de assistente a trabalhador recorrente

Um dos pontos em que o Hermes deixa de parecer “só um chat com ferramentas” é o scheduler embutido. Com ele, o agente pode ser executado em horários futuros ou recorrentes, com entrega automática para o canal desejado.

Jobs reais desta instalação

$ hermes cron list
picoclaw-news daily         0 7 * * *
hermes-agent-news daily     5 7 * * *
playwright-cli-news daily  10 7 * * *

Observe o padrão: jobs diários, escalonados com diferença de cinco minutos, cada um com skill e script próprios. Isso é uma forma madura de usar cron no Hermes: coleta estruturada de dados seguida de transformação em mensagem humana.

O cron do Hermes é mais rico do que o cron clássico do sistema operacional porque um job pode carregar:

  • prompt autônomo;
  • skills específicas;
  • modelo diferente do padrão;
  • script auxiliar;
  • workdir de projeto;
  • profile isolado;
  • destino de entrega.

Delegation e subagentes

Em tarefas maiores, o Hermes pode delegar subtarefas a subagentes isolados. Isso permite paralelizar pesquisa, revisão, inspeção e outros trabalhos sem poluir o contexto principal com cada passo intermediário.

Trecho real da configuração

delegation:
  max_iterations: 50
  child_timeout_seconds: 600
  max_concurrent_children: 3
  max_spawn_depth: 1
  orchestrator_enabled: true

Isso quer dizer, em termos concretos, que a instância está pronta para spawnar até três subtarefas paralelas, com profundidade máxima de delegação controlada. É uma forma pragmática de ganhar paralelismo sem cair em recursão desgovernada.

Profiles: várias identidades do mesmo Hermes

Profiles isolam configurações, memórias, sessões, skills e cron jobs. Em vez de um único Hermes “global”, você pode ter múltiplos Hermes com personalidades operacionais diferentes.

Estado real aqui

$ hermes profile list
◆ default   gpt-5.4   gateway running

Hoje há apenas o profile default. Mesmo assim, o mecanismo já existe e vale entender. Em ambientes mais complexos, é natural separar perfis como pessoal, trabalho, lab ou monitoramento.

MCP: como o Hermes ganha ferramentas externas

MCP, no contexto do Hermes, é a ponte para servidores de ferramentas externas via protocolo padrão. Essa é uma forma elegante de expandir o agente sem reinventar integração por integração.

Estado real desta instância

$ hermes mcp list
No MCP servers configured.

Isso não é um problema; apenas mostra que a instalação atual ainda não está usando extensões via MCP. Conceitualmente, porém, MCP é uma das portas de crescimento mais fortes do Hermes: ele permite adicionar capacidades novas preservando um contrato uniforme de tool registration.

Segurança e disciplina operacional

Um agente que usa terminal e arquivos precisa ter freios reais. Nesta instalação, há sinais saudáveis de disciplina operacional.

Trechos reais

approvals:
  mode: manual
  cron_mode: deny

security:
  redact_secrets: true
  tirith_enabled: true

Isso significa, em resumo:

  • comandos perigosos tendem a exigir aprovação;
  • execuções agendadas são mais restritas;
  • segredos tentam ser mascarados antes de entrar no contexto;
  • há uma camada extra de proteção ligada a tirith.
Atenção Segurança de agente não é um botão mágico. Ela é o resultado da combinação entre configuração, limites de ferramentas, segregação de contexto, escolhas de profile e hábitos de operação.

Arquitetura interna: como o projeto é montado

Para quem quer ir além do uso e entender o código, a estrutura do repositório local ajuda muito. Alguns arquivos são mais estruturais do que parecem:

  • run_agent.py: loop principal de conversa e tool calling;
  • model_tools.py: descoberta e despacho de ferramentas;
  • toolsets.py: definição dos grupos de ferramentas;
  • cli.py: interface interativa;
  • hermes_state.py: persistência de sessões;
  • gateway/: integração com plataformas externas;
  • cron/: scheduler;
  • tools/: implementação individual de cada tool;
  • hermes_cli/commands.py: registro central de slash commands.

Essa separação mostra um projeto com fronteiras razoáveis: loop do agente, UI, configuração, integração de plataformas, scheduler e ferramentas não estão todos misturados num mesmo bloco monolítico.

Uma forma boa de estudar Hermes sem se perder

Muita gente tenta aprender Hermes de forma horizontal e acaba vendo “um pouco de tudo” sem consolidar nada. Um caminho melhor é verticalizar o estudo em camadas.

Camada Objetivo Comandos de apoio
Fundamentos entender model, provider e toolsets hermes --help, hermes model, hermes tools list
Operação local entender config, doctor e uso diário hermes config, hermes doctor
Persistência entender sessions, memory e skills hermes sessions list, hermes skills list
Presença remota entender gateway e canais hermes gateway status
Automação entender cron e delegation hermes cron list
Extensão entender MCP, plugins e arquitetura hermes mcp list, leitura do repositório

Comandos essenciais para guardar

Descoberta e diagnóstico

hermes --version
hermes --help
hermes status --all
hermes doctor

Configuração

hermes config
hermes config path
hermes config env-path
hermes model

Sessões e retomada

hermes sessions list
hermes -c
hermes --resume <session_id>

Automação e expansão

hermes cron list
hermes profile list
hermes mcp list
hermes gateway status

Fechamento

O Hermes Agent vale a pena quando você precisa de continuidade, ação e composição. Se o seu uso é só pergunta e resposta, um chat simples pode bastar. Mas se você quer um sistema que conversa, lembra, executa, agenda e se integra ao seu ambiente, o Hermes começa a fazer muito mais sentido.

O ponto decisivo é este: Hermes não é só um cliente para modelo. Ele é uma arquitetura de trabalho em torno de modelos. E é por isso que estudar seus blocos — provider, toolsets, memory, skills, gateway, cron, profiles e MCP — rende mais do que decorar comandos isolados.