Como Criar o Agente Hermes Localmente com Docker SBX

Capa Hermes

O Hermes Agent é um sistema de agentes de IA projetado para ter autonomia real: ele não apenas sugere código, mas executa comandos, gerencia arquivos e interage com APIs em um ambiente controlado. Para garantir a segurança do seu sistema host, o Hermes utiliza Docker Sandboxes (SBX).

Neste guia, vou te mostrar o passo a passo para subir sua própria instância do Hermes localmente.

1. O que é o Docker SBX?

A Sandbox (SBX) é a "caixa" onde o agente vive. Em vez de dar permissão para a IA rodar comandos diretamente no seu computador (o que seria um risco enorme), o Hermes cria containers Docker efêmeros. Se o agente cometer um erro ou deletar um arquivo acidentalmente, ele estará deletando algo dentro do container, e não na sua máquina real.

Arquitetura Docker SBX

Como mostra o diagrama acima, existe uma fronteira clara (hypervisor boundary) entre o sistema host e a VM da Sandbox. O agente opera em seu próprio sistema de arquivos e Docker engine, com um Proxy que controla rigorosamente quais requisições externas são permitidas ou bloqueadas, impedindo a exfiltração de dados sensíveis do host.

2. Pré-requisitos

Antes de começar, certifique-se de ter instalado:

  • Docker e Docker Compose (a base de tudo).
  • Python 3.10+ (para a orquestração do agente).
  • Git (para clonar o repositório).
  • Uma API Key (OpenRouter, OpenAI ou Anthropic) para alimentar o cérebro do agente.

3. Passo a Passo da Instalação

Passo 1: Clonar o Repositório

Comece clonando o código fonte do Hermes Agent:

git clone https://github.com/nousresearch/hermes-agent.git
cd hermes-agent

Passo 2: Configuração do Ambiente

Crie um ambiente virtual para evitar conflitos de dependências:

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt

Passo 3: Configuração das Variáveis (.env)

O Hermes precisa de credenciais para funcionar. Copie o exemplo de configuração e preencha seus dados:

cp .env.example .env

No arquivo .env, configure obrigatoriamente:

  • MODEL_PROVIDER: Ex: openrouter
  • API_KEY: Sua chave da API.
  • MODEL_NAME: O modelo de sua preferência (ex: google/gemini-2.0-flash-001).

Passo 4: Subindo a Infraestrutura de Sandbox

O Hermes utiliza containers específicos para as ferramentas. Para subir o ambiente de execução:

docker compose up -d

Este comando sobe os serviços necessários para que o agente consiga spawnar novas sandboxes sob demanda.

4. Executando o Agente

Agora, basta iniciar o agente via terminal:

python main.py

A partir daqui, você pode dar instruções como: "Crie um script em Python que faça scraping de notícias e salve em um CSV". O Hermes irá:

  1. Criar uma SBX (Sandbox) via Docker.
  2. Escrever o código dentro dela.
  3. Executar e testar.
  4. Entregar o resultado final para você.

5. Dicas de Segurança e Performance

  • Limpeza de Containers: Com o tempo, várias sandboxes podem ficar órfãs. Use docker system prune periodicamente para liberar espaço.
  • Volumes: Se você quiser que o agente tenha acesso a arquivos específicos da sua máquina, configure volumes no docker-compose.yaml da SBX, mas faça isso com cautela (apenas leitura, se possível).
  • Recursos: Atribua ao menos 4GB de RAM ao Docker para que o agente consiga rodar ferramentas mais pesadas sem travar.

Conclusão

Ter um agente autônomo rodando localmente muda a forma como desenvolvemos software. Com a arquitetura de Docker SBX, você ganha o poder de automação total com a segurança de um ambiente isolado.

Se tiver dúvidas durante a instalação, verifique os logs do Docker com docker compose logs -f.

← Voltar para Blog — Artigos sobre PHP, JavaScript e DevOps