🛸 Ubuntu 24.04 · VPS limpa · Hermes Agent

Suba seu agente Hermes sem se perder no terminal.

Um roteiro prático e visual para sair de uma VPS Ubuntu 24.04 zerada até um Hermes Agent funcionando, validado, persistente e pronto para conversar por terminal, dashboard ou gateway.

bruno@vps:~
$ curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
# instala Hermes Agent
$ hermes setup
# escolhe provider/modelo e ferramentas
$ hermes doctor
✓ ambiente pronto para o primeiro voo
Hermes agent core VPSUbuntu ToolsShell/Web LLMGateway

O mapa mental

Hermes não é só um chat. Ele é um agente com memória, ferramentas, terminal, navegador, tarefas agendadas e canais de conversa. Pense nele como uma cabine de comando na VPS.

1. VPSUbuntu 24.04, usuário sem root direto, firewall e pacotes básicos.
2. RuntimePython, venv/uv, git, tmux e dependências para o Hermes.
3. HermesCLI, config.yaml, .env, provider/modelo e toolsets.
4. ServiçoGateway/dashboard com systemd para sobreviver a logout e reboot.
5. CanaisTelegram, Discord, Web UI, cron jobs, webhooks e integrações.

Meta

No fim, o Bruno consegue rodar `hermes`, configurar um modelo, chamar ferramentas e iniciar um gateway persistente.

🔐

Segurança

Segredos ficam em `.env` ou no setup interativo. Nunca cole API key em página, print ou comando compartilhado.

🧪

Validação

Cada etapa tem comando de teste. Não considere instalado até `hermes doctor` e uma pergunta real passarem.

Trilha principal

Execute em ordem. Os blocos têm botão para copiar. Onde aparece `SEU_USUARIO`, troque pelo usuário real da VPS.

0

Entrar na VPS e criar uma base segura

Use SSH com chave, atualize pacotes e instale utilitários que o Hermes costuma usar.

base-vps.sh
sudo apt update
sudo apt -y upgrade
sudo apt install -y curl git jq tmux ripgrep fd-find build-essential python3 python3-venv python3-pip ca-certificates gnupg ufw fail2ban
sudo ufw allow OpenSSH
sudo ufw --force enable
1

Instalar Hermes Agent

Use o instalador oficial do projeto. Ao final, abra um novo shell se o PATH ainda não reconhecer `hermes`.

install-hermes.sh
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
exec $SHELL -l
hermes --version
2

Configurar modelo e provider

O caminho mais seguro é o wizard. Ele evita erro de YAML e ajuda a escolher provider/modelo.

setup-modelo.sh
hermes setup
hermes model
hermes doctor
OpenAIAnthropicOpenRouterNousGeminilocal/Ollama
3

Primeiro voo no terminal

Faça uma pergunta com tarefa real, mas de baixo risco. A ideia é testar modelo, ferramentas e resposta.

smoke-test.sh
hermes chat -q "Explique em 5 linhas onde estou rodando e liste 3 próximos passos seguros para configurar esta VPS."
hermes chat -q "Use ferramentas para verificar o sistema operacional e depois resuma o resultado."
4

Habilitar ferramentas úteis

Para um agente de VPS, comece com terminal, arquivos, web, skills e cron. Evite dar permissões que você ainda não entende.

toolsets.sh
hermes tools list
hermes tools enable terminal
hermes tools enable file
hermes tools enable web
hermes tools enable skills
hermes tools enable cronjob
5

Instalar gateway como serviço

O gateway permite conversar com Hermes por plataformas como Telegram/Discord/API. O `linger` mantém o serviço vivo após logout.

gateway-service.sh
sudo loginctl enable-linger $USER
hermes gateway setup
hermes gateway install
hermes gateway start
hermes gateway status
journalctl --user -u hermes-gateway -n 80 --no-pager

Modo produção: opcional, mas recomendado

Se o Bruno quiser dashboard web ou domínio próprio, use NGINX + TLS. Se for só Telegram/terminal, pode pular esta parte.

🌐

Dashboard local primeiro

Suba localmente antes de expor na internet.

dashboard-local.sh
hermes dashboard --host 127.0.0.1 --port 9119 --no-open
curl -I http://127.0.0.1:9119/
🧱

NGINX reverse proxy

Exemplo para `hermes.seudominio.com`. Ajuste domínio, certificado e porta.

nginx-example.conf
server {
  listen 443 ssl http2;
  server_name hermes.seudominio.com;

  ssl_certificate /etc/letsencrypt/live/hermes.seudominio.com/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/hermes.seudominio.com/privkey.pem;

  location / {
    proxy_pass http://127.0.0.1:9119/;
    proxy_http_version 1.1;
    proxy_set_header Host 127.0.0.1:9119;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
  }
}

Checklist de validação

Se algum item falhar, pare e corrija antes de chamar de pronto.

  • `hermes --version` mostra a versão instalada.
  • `hermes doctor` não aponta bloqueio crítico.
  • Uma pergunta simples responde sem erro de provider.
  • Uma pergunta com ferramentas consegue ler estado do sistema.
  • `systemctl --user status hermes-gateway` fica ativo após logout/login.
  • `journalctl --user -u hermes-gateway` não mostra loop de crash.
  • Segredos estão em `.env`/wizard, não no histórico compartilhado.
  • Firewall permite só portas necessárias: SSH, 80/443 se houver web.
  • Backup/snapshot da VPS existe antes de mudanças grandes.
  • Se exposto na web, HTTPS está válido e o dashboard não fica aberto sem controle.

Erros comuns e como escapar

Atalhos de diagnóstico para não cair em rabbit holes.

🧯

`command not found: hermes`

Abra novo shell com `exec $SHELL -l` ou confira se `~/.local/bin` está no PATH.

🔑

Provider sem chave

Rode `hermes setup` de novo. Nunca cole API key em comando que vai para documentação.

🧊

Gateway morre no logout

Use `sudo loginctl enable-linger $USER` e instale com `hermes gateway install`.

🌀

Loop de login OAuth

Limpe cookies do domínio e reinicie oauth2-proxy se você mudou `cookie_secret`.

🧩

Ferramenta não aparece

Habilite toolset e abra nova sessão: alterações de ferramentas não entram no meio do contexto.

📦

Python/pip confuso

No Ubuntu 24.04, evite instalar pacotes globais com pip. Use venv, uv ou o instalador oficial.

Resumo para o Bruno

O caminho feliz é: preparar VPS → instalar Hermes → rodar setup → validar terminal → instalar gateway → proteger exposição web. Se uma etapa não foi validada com comando real, ela ainda não está pronta.

sequencia-curta.sh
sudo apt update && sudo apt -y upgrade
sudo apt install -y curl git jq tmux ripgrep python3 python3-venv ca-certificates
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
exec $SHELL -l
hermes setup
hermes doctor
hermes chat -q "Faça um smoke test desta instalação do Hermes."
sudo loginctl enable-linger $USER
hermes gateway setup
hermes gateway install && hermes gateway start && hermes gateway status