Esta página é a referência de autenticação de provedor de modelo (chaves de API, OAuth, reutilização da Claude CLI e setup-token da Anthropic). Para autenticação de conexão do Gateway (token, senha, trusted-proxy), consulte Configuração e Autenticação de proxy confiável.
env/file/exec), consulte Gerenciamento de segredos.
Para regras de elegibilidade de credenciais/códigos de motivo usadas por models status --probe, consulte Semântica de credenciais de autenticação.
Configuração recomendada (chave de API, qualquer provedor)
Se você estiver executando um Gateway de longa duração, comece com uma chave de API para o provedor escolhido. Especificamente para Anthropic, autenticação por chave de API ainda é a configuração de servidor mais previsível, mas OpenClaw também oferece suporte à reutilização de um login local da Claude CLI.- Crie uma chave de API no console do seu provedor.
- Coloque-a no host do Gateway (a máquina que executa
openclaw gateway).
- Se o Gateway for executado sob systemd/launchd, prefira colocar a chave em
~/.openclaw/.envpara que o daemon consiga lê-la:
openclaw onboard.
Consulte Ajuda para detalhes sobre herança de ambiente (env.shellEnv, ~/.openclaw/.env, systemd/launchd).
Anthropic: compatibilidade com Claude CLI e token
A autenticação por setup-token da Anthropic ainda está disponível no OpenClaw como um caminho de token compatível. Desde então, a equipe da Anthropic nos informou que o uso da Claude CLI no estilo OpenClaw voltou a ser permitido, então o OpenClaw trata a reutilização da Claude CLI e o uso declaude -p como sancionados para esta integração, a menos que a Anthropic publique uma nova política. Quando a reutilização da Claude CLI estiver disponível no host, esse agora é o caminho preferencial.
Para hosts de Gateway de longa duração, uma chave de API da Anthropic ainda é a configuração mais previsível. Se você quiser reutilizar um login Claude existente no mesmo host, use o caminho da Anthropic Claude CLI no onboarding/configure.
Configuração recomendada do host para reutilização da Claude CLI:
- Faça login do próprio Claude Code na Anthropic no host do Gateway.
- Informe ao OpenClaw para trocar a seleção de modelos da Anthropic para o backend local
claude-clie armazenar o perfil de autenticação correspondente do OpenClaw.
claude não estiver em PATH, instale o Claude Code primeiro ou defina agents.defaults.cliBackends.claude-cli.command como o caminho real do binário.
Entrada manual de token (qualquer provedor; grava o armazenamento de autenticação SQLite por agente + atualiza a configuração):
auth-profiles.json usavam este formato canônico:
openclaw-agent.sqlite de cada agente. Se uma instalação antiga ainda tiver auth-profiles.json, auth-state.json ou um arquivo plano de perfil de autenticação como { "openrouter": { "apiKey": "..." } }, execute openclaw doctor --fix para importá-lo para o SQLite; o doctor mantém backups com timestamp ao lado dos arquivos JSON originais. Detalhes de endpoint como baseUrl, api, ids de modelo, cabeçalhos e timeouts pertencem a models.providers.<id> em openclaw.json ou models.json, não a perfis de autenticação.
Rotas de autenticação externas, como Bedrock auth: "aws-sdk", também não são credenciais. Se você quiser uma rota Bedrock nomeada, coloque auth.profiles.<id>.mode: "aws-sdk" em openclaw.json; não grave type: "aws-sdk" no armazenamento de perfis de autenticação. openclaw doctor --fix move marcadores legados do AWS SDK do armazenamento de credenciais para metadados de configuração.
Referências de perfil de autenticação também são compatíveis com credenciais estáticas:
- Credenciais
api_keypodem usarkeyRef: { source, provider, id } - Credenciais
tokenpodem usartokenRef: { source, provider, id } - Perfis em modo OAuth não oferecem suporte a credenciais SecretRef; se
auth.profiles.<id>.modeestiver definido como"oauth", a entradakeyRef/tokenRefapoiada por SecretRef para esse perfil será rejeitada.
1 quando expirado/ausente, 2 quando prestes a expirar):
- Linhas de sondagem podem vir de perfis de autenticação, credenciais de ambiente ou
models.json. - Se
auth.order.<provider>explícito omitir um perfil armazenado, a sondagem relataexcluded_by_auth_orderpara esse perfil em vez de tentar usá-lo. - Se a autenticação existir, mas o OpenClaw não conseguir resolver um candidato de modelo sondável para esse provedor, a sondagem relata
status: no_model. - Cooldowns de limite de taxa podem ter escopo de modelo. Um perfil em cooldown para um modelo ainda pode ser utilizável para um modelo irmão no mesmo provedor.
Observação sobre Anthropic
O backendclaude-cli da Anthropic voltou a ser compatível.
- A equipe da Anthropic nos informou que este caminho de integração do OpenClaw voltou a ser permitido.
- Portanto, o OpenClaw trata a reutilização da Claude CLI e o uso de
claude -pcomo sancionados para execuções apoiadas pela Anthropic, a menos que a Anthropic publique uma nova política. - Chaves de API da Anthropic continuam sendo a escolha mais previsível para hosts de Gateway de longa duração e controle explícito de cobrança no lado do servidor.
Verificando o status de autenticação de modelos
Comportamento de rotação de chaves de API (Gateway)
Alguns provedores oferecem suporte a tentar novamente uma solicitação com chaves alternativas quando uma chamada de API atinge um limite de taxa do provedor.- Ordem de prioridade:
OPENCLAW_LIVE_<PROVIDER>_KEY(substituição única)<PROVIDER>_API_KEYS<PROVIDER>_API_KEY<PROVIDER>_API_KEY_*
- Provedores Google também incluem
GOOGLE_API_KEYcomo fallback adicional. - A mesma lista de chaves é desduplicada antes do uso.
- OpenClaw tenta novamente com a próxima chave apenas para erros de limite de taxa (por exemplo,
429,rate_limit,quota,resource exhausted,Too many concurrent requests,ThrottlingException,concurrency limit reachedouworkers_ai ... quota limit exceeded). - Erros que não são de limite de taxa não são tentados novamente com chaves alternativas.
- Se todas as chaves falharem, o erro final da última tentativa será retornado.
Removendo autenticação de provedor enquanto o Gateway está em execução
Quando a autenticação de provedor é removida pelo plano de controle do Gateway, o OpenClaw exclui os perfis de autenticação salvos para esse provedor e aborta chats ativos ou execuções de agente cujo provedor de modelo selecionado corresponde ao provedor removido. As execuções abortadas emitem os eventos normais de cancelamento de chat e ciclo de vida comstopReason: "auth-revoked", para que clientes conectados possam mostrar que a execução foi interrompida porque as credenciais foram removidas.
Remover a autenticação salva não revoga chaves no provedor. Rotacione ou revogue a chave no painel do provedor quando precisar de invalidação no lado do provedor.
Controlando qual credencial é usada
OpenAI e ids legados openai-codex
Perfis de chave de API da OpenAI e perfis OAuth do ChatGPT/Codex usam o id canônico de provedor openai. Novas configurações devem usar ids de perfil openai:* e auth.order.openai.
Se você vir openai-codex em configurações antigas, ids de perfil de autenticação ou auth.order.openai-codex, trate isso como entrada de migração legada. Não crie novos perfis openai-codex. Execute:
openai-codex:* e entradas auth.order.openai-codex para a rota de autenticação canônica openai. Para roteamento de modelo/runtime específico da OpenAI, consulte OpenAI.
Durante o login (CLI)
Useopenclaw models auth login --provider <id> --profile-id <profileId> para provedores que oferecem suporte a perfis de autenticação nomeados durante o login.
--force quando um perfil de provedor salvo estiver travado, expirado ou vinculado à conta errada e o comando de login normal continuar reutilizando-o. --force exclui os perfis de autenticação salvos para esse provedor no diretório do agente selecionado e depois executa o mesmo fluxo de autenticação de provedor novamente. Ele não revoga credenciais no provedor; rotacione ou revogue-as no painel do provedor quando precisar de invalidação no lado do provedor.
Por sessão (comando de chat)
Use/model <alias-or-id>@<profileId> para fixar uma credencial específica de provedor para a sessão atual (exemplos de ids de perfil: anthropic:default, anthropic:work).
Use /model (ou /model list) para um seletor compacto; use /model status para a visualização completa (candidatos + próximo perfil de autenticação, além de detalhes de endpoint do provedor quando configurados).
Por agente (substituição pela CLI)
Defina uma substituição explícita de ordem de perfis de autenticação para um agente (armazenada no estado de autenticação SQLite desse agente):--agent <id> para direcionar um agente específico; omita-o para usar o agente padrão configurado.
Ao depurar problemas de ordem, openclaw models status --probe mostra perfis armazenados omitidos como excluded_by_auth_order em vez de ignorá-los silenciosamente.
Ao depurar problemas de cooldown, lembre-se de que cooldowns de limite de taxa podem estar vinculados a um id de modelo, em vez de ao perfil inteiro do provedor.
Se você alterar a ordem de autenticação ou a fixação de perfil para um chat que já está em execução, envie /new ou /reset nesse chat para iniciar uma nova sessão. Sessões existentes podem manter a seleção atual de modelo/perfil até serem redefinidas.
Solução de problemas
”Nenhuma credencial encontrada”
Se o perfil da Anthropic estiver ausente, configure uma chave de API da Anthropic no host do Gateway ou configure o caminho de setup-token da Anthropic, depois verifique novamente:Token expirando/expirado
Executeopenclaw models status para confirmar qual perfil está expirando. Se um perfil de token da Anthropic estiver ausente ou expirado, atualize essa configuração via setup-token ou migre para uma chave de API da Anthropic.