Pular para o conteúdo principal

Documentação oficial desta página · v0.20.6

MiniMax OAuth

O Hermes Agent suporta a MiniMax por um fluxo de login OAuth no navegador, usando as mesmas credenciais do portal da MiniMax. Não precisa de chave de API nem de cartão de crédito — você entra uma vez e o Hermes renova a sessão sozinho.

O transporte reaproveita o adaptador anthropic_messages (a MiniMax expõe um endpoint compatível com a Anthropic Messages em /anthropic), então todos os recursos já existentes de chamada de ferramentas, streaming e contexto funcionam sem mudança nenhuma no adaptador.

Visão geral​

ItemValor
ID do provedorminimax-oauth
Nome exibidoMiniMax (OAuth)
Tipo de autenticaçãoOAuth no navegador (fluxo de redirecionamento PKCE)
TransporteCompatível com Anthropic Messages (anthropic_messages)
ModelosMiniMax-M2.7, MiniMax-M2.7-highspeed
Endpoint globalhttps://api.minimax.io/anthropic
Endpoint na Chinahttps://api.minimaxi.com/anthropic
Exige variável de ambienteNão (MINIMAX_API_KEY não é usada por este provedor)

Pré-requisitos​

  • Python 3.9+
  • Hermes Agent instalado
  • Uma conta MiniMax em minimax.io (global) ou minimaxi.com (China)
  • Um navegador disponível na máquina local (ou use --no-browser em sessões remotas)

Início rápido​

# Abra o seletor de provedor e modelo
hermes model
# → Escolha "MiniMax (OAuth)" na lista de provedores
# → O Hermes abre o navegador na página de autorização da MiniMax
# → Aprove o acesso no navegador
# → Escolha um modelo (MiniMax-M2.7 ou MiniMax-M2.7-highspeed)
# → Comece a conversar

hermes

Depois do primeiro login, as credenciais ficam guardadas em ~/.hermes/auth.json e são renovadas automaticamente antes de cada sessão.

Fazer login na mão​

Dá para disparar o login sem passar pelo seletor de modelo:

hermes auth add minimax-oauth

Região China​

Se a sua conta está na plataforma da China (minimaxi.com), use o provedor minimax-cn, baseado em chave de API — o minimax-cn é registrado só com auth_type="api_key" (sem fluxo OAuth). Configure MINIMAX_CN_API_KEY (e, se quiser, MINIMAX_CN_BASE_URL) direto:

echo 'MINIMAX_CN_API_KEY=sua-chave' >> ~/.hermes/.env

Sessões remotas / sem interface​

Em servidores ou contêineres onde não há navegador disponível:

hermes auth add minimax-oauth --no-browser

O Hermes imprime a URL de verificação e o código de usuário — abra a URL em qualquer dispositivo e informe o código quando for pedido.

O fluxo OAuth​

O Hermes implementa um fluxo OAuth PKCE no navegador contra os endpoints OAuth da MiniMax:

  1. O Hermes gera um par verificador/desafio PKCE e um valor de estado aleatório.
  2. Faz um POST para {base_url}/oauth/code com o desafio e recebe um user_code e uma verification_uri.
  3. O seu navegador abre a verification_uri. Se for pedido, informe o user_code.
  4. O Hermes consulta {base_url}/oauth/token repetidamente até o token chegar (ou até o prazo estourar).
  5. Os tokens (access_token, refresh_token, expiração) são salvos em ~/.hermes/auth.json, sob a chave minimax-oauth.

A renovação do token (o grant OAuth padrão refresh_token) roda automaticamente no início de cada sessão, quando faltam menos de 60 segundos para o token de acesso expirar.

Conferir o status do login​

hermes doctor

A seção ◆ Auth Providers vai mostrar:

✓ MiniMax OAuth (logged in, region=global)

ou, se você não estiver logado:

⚠ MiniMax OAuth (not logged in)

Trocar de modelo​

hermes model
# → Escolha "MiniMax (OAuth)"
# → Escolha na lista de modelos

Ou defina o modelo direto:

hermes config set model.default MiniMax-M2.7
hermes config set model.provider minimax-oauth

Referência de configuração​

Depois do login, o ~/.hermes/config.yaml vai ter entradas parecidas com:

model:
default: MiniMax-M2.7
provider: minimax-oauth
base_url: https://api.minimax.io/anthropic

Endpoints por região​

ID do provedorPortalEndpoint de inferência
minimax-oauth (global)https://api.minimax.iohttps://api.minimax.io/anthropic
minimax-cn (China)https://api.minimaxi.comhttps://api.minimaxi.com/anthropic

Apelidos do provedor​

Todos os nomes abaixo resolvem para minimax-oauth:

hermes --provider minimax-oauth # canônico
hermes --provider minimax-portal # apelido
hermes --provider minimax-global # apelido
hermes --provider minimax_oauth # apelido (forma com sublinhado)

Variáveis de ambiente​

O provedor minimax-oauth não usa MINIMAX_API_KEY nem MINIMAX_BASE_URL. Essas variáveis servem só para os provedores minimax e minimax-cn, baseados em chave de API.

VariávelEfeito
MINIMAX_API_KEYUsada só pelo provedor minimax — ignorada pelo minimax-oauth
MINIMAX_CN_API_KEYUsada só pelo provedor minimax-cn — ignorada pelo minimax-oauth

Para usar o minimax-oauth como provedor ativo, defina model.provider: minimax-oauth no config.yaml (use hermes setup para o fluxo guiado), ou passe --provider minimax-oauth numa chamada avulsa:

hermes --provider minimax-oauth

Modelos​

ModeloMelhor para
MiniMax-M2.7Raciocínio com contexto longo, chamada de ferramentas complexa
MiniMax-M2.7-highspeedMenor latência, tarefas mais leves, chamadas auxiliares

Os dois modelos suportam até 200.000 tokens de contexto.

O MiniMax-M2.7 também é usado automaticamente como modelo auxiliar em tarefas de visão e de delegação quando o minimax-oauth é o provedor principal.

Resolução de problemas​

Token expirado — não faz login de novo sozinho​

O Hermes renova o token no início de cada sessão quando faltam menos de 60 segundos para expirar. Se o token de acesso já expirou (depois de um longo período offline, por exemplo), a renovação acontece automaticamente na próxima requisição. Se a renovação falhar com refresh_token_reused ou invalid_grant, o Hermes marca a sessão como precisando de novo login.

Quando a falha de renovação é definitiva (HTTP 4xx, invalid_grant, grant revogado etc.), o Hermes marca o refresh token como morto e o põe em quarentena localmente, para não ficar repetindo uma troca fadada ao fracasso. O agente mostra uma única mensagem de "re-authentication required" e sai da frente até você entrar de novo.

Solução: rode hermes auth add minimax-oauth de novo para começar um login limpo. A quarentena é desfeita na próxima troca bem-sucedida.

A autorização expirou​

O fluxo de código de dispositivo tem uma janela de validade finita. Se você não aprovar o login a tempo, o Hermes levanta um erro de tempo esgotado.

Solução: rode hermes auth add minimax-oauth (ou hermes model) de novo. O fluxo recomeça do zero.

Estado divergente (possível CSRF)​

O Hermes detectou que o valor de state devolvido pelo servidor de autorização não bate com o que ele enviou.

Solução: refaça o login. Se continuar, veja se algum proxy ou redirecionamento está alterando a resposta do OAuth.

Login a partir de um servidor remoto​

Se o hermes não conseguir abrir uma janela do navegador, use --no-browser:

hermes auth add minimax-oauth --no-browser

O Hermes imprime a URL e o código. Abra a URL em qualquer dispositivo e conclua o fluxo por lá.

Erro "Not logged into MiniMax OAuth" em execução​

O armazenamento de autenticação não tem credenciais para minimax-oauth. Ou você ainda não fez login, ou o arquivo de credenciais foi apagado.

Solução: rode hermes model e escolha MiniMax (OAuth), ou rode hermes auth add minimax-oauth.

Sair da conta​

Para remover as credenciais OAuth da MiniMax que estão guardadas:

hermes auth logout minimax-oauth

Veja também​