🤖HermesBlog
Guias Práticos do Hermes · Parte 258/9/2026

Login Remoto OAuth via SSH

Login Remoto OAuth via SSH — guia fácil de entender baseado na documentação oficial

Pense nisso como usar a chave da sua casa para abrir a porta da garagem de um amigo — só que a chave é a sua conexão SSH, e a porta da garagem é um repositório de código privado que precisa da sua permissão para entrar.


guide-oauth-ssh

O Que Está Acontecendo Aqui?

Quando você executa hermes profile install, o Hermes Agent precisa buscar um perfil (um conjunto de instruções e ferramentas) de um repositório Git remoto. Mas muitos servidores Git (como GitHub, GitLab ou o servidor interno da sua empresa) exigem que você prove quem você é antes de permitir qualquer download.

Normalmente, você teria que digitar um nome de usuário e senha, ou configurar um token de acesso pessoal. Isso é um incômodo. O SSH Remote OAuth Sign-In permite que o Hermes use sua chave SSH existente (que você já usa para se conectar com segurança a servidores) para fazer login automaticamente nesse download único. Sem senhas extras, sem copiar tokens.


Os Dois Comandos Que Você Realmente Vai Usar

Aqui está a mágica. Você pode instalar um perfil usando uma URL estilo SSH ou uma URL HTTPS padrão.

Opção 1: URL SSH (como GitHub)

hermes profile install git@github.com:voce/research-bot.git
  • git@github.com: diz ao Hermes: “Use minha chave SSH para falar com o GitHub.”
  • voce/research-bot.git é o caminho para o repositório do seu perfil.

Opção 2: URL HTTPS (para servidores de empresa ou GitLab)

hermes profile install https://git.example.com/time/research-bot.git
  • O Hermes vai detectar que é um link HTTPS, mas como você já configurou SSH na sua máquina, ele vai tentar automaticamente usar suas credenciais SSH para o handshake OAuth. Sem prompt, sem tela de login extra.

Como Funciona (Sem a Complexidade Técnica)

  1. Você executa o comando – O Hermes vê a URL e sabe que precisa baixar um perfil.
  2. O Hermes verifica suas chaves SSH – Ele procura pela sua chave padrão (geralmente ~/.ssh/id_rsa ou id_ed25519).
  3. Ele envia uma “solicitação de login” – Em vez de pedir uma senha, ele usa sua chave SSH como prova de identidade para o servidor Git.
  4. O servidor diz “OK, é você mesmo” – O servidor concede acesso temporário apenas para aquele download.
  5. O perfil é instalado – Os arquivos são baixados e a sessão termina. Sem senhas armazenadas, sem tokens persistentes.

Por Que Isso É Ótimo para Iniciantes

  • Chega de dores de cabeça com “token expirado” – Você configura o SSH uma vez e funciona para sempre.
  • Uma senha a menos para lembrar – Você nunca digita sua senha do Git no Hermes.
  • Mais seguro – Sua senha nunca toca o Hermes; apenas sua chave criptografada é usada.
  • Funciona para repositórios privados – Se o seu perfil está em um repositório privado, esse método de login o desbloqueia facilmente.

Uma Lista de Verificação Rápida Antes de Tentar

  • Você tem uma chave SSH no seu computador (execute ls ~/.ssh para verificar).
  • Você adicionou essa chave ao seu servidor Git (GitHub → Configurações → Chaves SSH).
  • Você sabe a URL exata do repositório do seu perfil.

Se você ainda não tem uma chave SSH, basta executar:

ssh-keygen -t ed25519 -C "seu_email@example.com"

Depois, siga as instruções. Após isso, você está pronto.


Considerações Finais

O SSH Remote OAuth Sign-In é como um passe VIP para seus downloads de código. Ele elimina o atrito de fazer login toda vez que você quer instalar um perfil. Depois de configurar sua chave SSH, o comando hermes profile install simplesmente funciona — seja usando um link estilo GitHub ou um link HTTPS da empresa.

Dica prática: Sempre use a URL SSH (git@...) quando puder. É mais rápida, mais segura e menos propensa a acionar telas de login extras. Mas se você só tiver um link HTTPS, não se preocupe — o Hermes ainda vai cuidar da dança OAuth para você em segundo plano. Sente-se e deixe a chave fazer o trabalho.


📖 Documentação oficial

この記事は Hermes Agent のDocumentação oficialに基づいています:Documentação oficial › guides/oauth-over-ssh