Ir para o conteúdo
Promovaweb

O Hermes Desktop ligado à VPS

Revisado em

Ficha e sumário do guia

Ambiente
VPS Ubuntu com o Hermes instalado
Referência técnica
v0.23.1
Conferência
Conferido na documentação
  1. Grave o login na VPS
  2. Suba o servidor no endereço do Tailscale
  3. Conecte o app ao Hermes da VPS

Prepare o ambiente

Antes de começar, você precisa de:

  • Hermes instalado na VPS com o usuário hermes
  • Hermes Desktop no computador (macOS em Apple Silicon, Windows ou Linux)

O Hermes Desktop é um app nativo para macOS em Apple Silicon, Windows e Linux que usa o mesmo agente da CLI e do gateway. Instalado sozinho no computador, ele roda um Hermes local. Para trabalhar com o Hermes da VPS, o app abre uma conexão com um processo hermes serve que fica rodando no servidor. O app não inicia esse processo, então ele precisa estar ativo antes da conexão.

Quando o hermes serve escuta num endereço diferente do 127.0.0.1, ele exige login. A documentação avisa que um usuário conectado consegue executar qualquer comando com as permissões do usuário do sistema que roda o Hermes. Por isso ela orienta deixar o servidor atrás de uma VPN e aponta o Tailscale como a opção mais limpa.

Grave o login na VPS

Com o usuário hermes, grave no ~/.hermes/.env o nome de usuário e a senha do login. Troque os dois valores do exemplo por valores seus:

~/.hermes/.env
HERMES_DASHBOARD_BASIC_AUTH_USERNAME=admin
HERMES_DASHBOARD_BASIC_AUTH_PASSWORD=troque-por-uma-senha-forte

Em seguida, gere um segredo fixo para as sessões continuarem válidas depois de um reinício e restrinja a leitura do arquivo ao usuário hermes:

Terminal
echo "HERMES_DASHBOARD_BASIC_AUTH_SECRET=$(openssl rand -base64 32)" >> ~/.hermes/.env
chmod 600 ~/.hermes/.env

Abra o .env e confira a linha do segredo. Uma versão antiga dessa receita gravava o texto $(openssl rand -base64 32) no lugar de um valor aleatório.

Suba o servidor no endereço do Tailscale

Com a VPS e o computador na mesma rede do Tailscale, o hermes serve pode escutar só no endereço do Tailscale da VPS. Assim, apenas os aparelhos da sua rede alcançam a porta. Com o usuário hermes, troque IP_TAILSCALE pelo endereço da VPS na rede do Tailscale:

Terminal
hermes serve --host IP_TAILSCALE --port 9119

O processo precisa continuar rodando depois que a sessão SSH termina. A documentação indica um gerenciador de processos, como o systemd ou o tmux. Com o tmux, a sessão segue ativa depois que você sai do SSH. Quando ele falta, o administrador instala com sudo apt install -y tmux:

Terminal
tmux new -d -s hermes-serve "hermes serve --host IP_TAILSCALE --port 9119"

O tmux attach -t hermes-serve volta a essa sessão para conferir o processo.

Conecte o app ao Hermes da VPS

No Hermes Desktop, abra Settings, depois Gateways e Remote gateway. Preencha o endereço com http://IP_TAILSCALE:9119, entre com o usuário e a senha gravados no .env e confirme. O app reconecta e mostra as sessões do servidor.

Para conferir se o login está ativo, rode esta consulta a partir do computador. A resposta deve indicar que a autenticação é obrigatória:

Terminal
curl -s http://IP_TAILSCALE:9119/api/status | jq '.auth_required, .auth_providers'

Para não guardar a senha em texto puro, a variável HERMES_DASHBOARD_BASIC_AUTH_PASSWORD_HASH aceita um hash scrypt no lugar de HERMES_DASHBOARD_BASIC_AUTH_PASSWORD.

Confira o resultado

O Hermes Desktop conecta ao endereço da VPS em Remote gateway e mostra as sessões do servidor.

StayCloud

Uma VPS para desenvolver com agentes

Servidor da StayCloud em São Paulo, com acesso root e disco NVMe, para deixar seus agentes de IA rodando o dia todo.

Montar minha VPS

Link de parceiro da Promovaweb.