- Para conectar Claude Code em sua própria máquina a um gateway existente, consulte Conectar Claude Code a um gateway LLM
- Para saber o que Claude Code envia a um gateway e o que encaminhar, consulte a guia de compatibilidade do gateway
Pré-requisitos
Para concluir a implantação, você precisará de:- Um gateway implantado em sua infraestrutura, servindo HTTPS no endereço exato que você distribuirá aos desenvolvedores, não em um endereço que redireciona para ele, e configurado para rotear nomes de modelos Claude para seu provedor
- Uma credencial de provedor para o gateway encaminhar com:
- Para a API Anthropic: uma chave de API do Claude Console
- Para um provedor de nuvem: credenciais de nuvem com acesso ao modelo. Consulte os pré-requisitos na página Amazon Bedrock, Google Cloud’s Agent Platform ou Microsoft Foundry
- Uma maneira de entregar arquivos de configurações para máquinas de desenvolvedores, como MDM ou gerenciamento de configuração
- Se você ainda não tiver uma, como as configurações chegam aos dispositivos compara as opções
Requisitos do gateway
Qualquer que seja o produto que fornece o gateway, ele deve:- Aceitar um formato de API suportado: um dos formatos na tabela de formatos de API. As etapas de implantação abaixo assumem a API de Mensagens Anthropic em
POST /v1/messages, que a maioria dos gateways serve - Transmitir respostas: passar eventos enviados pelo servidor conforme chegam, incluindo pings de keep-alive, em vez de armazenar em buffer a resposta inteira; streaming cobre o que o buffering ou pings removidos quebram
- Rotear nomes de modelos Claude: mapear cada nome que os desenvolvedores usam para um modelo upstream. Claude Code envia um nome de modelo como
claude-sonnet-4-6em cada solicitação; na maioria dos produtos de gateway o mapeamento é uma lista de modelos ou tabela de roteamento na própria configuração do gateway - Encaminhar cabeçalhos e corpo sem alterações: passar
anthropic-beta,anthropic-versione o corpo da solicitação em ambas as direções; a tabela de passagem de recursos mapeia cada um para o recurso que quebra sem ele - Retornar erros upstream não modificados: a recuperação automática do Claude Code corresponde à redação do erro, portanto envolver erros no próprio envelope do gateway quebra isso, a menos que a mensagem do envelope carregue um dos tokens
capability_rejected:que um gateway de aplicativos Claude substitui pela redação de erro dos provedores de nuvem - Isentar o caminho da inspeção WAF do corpo da solicitação: os prompts do Claude Code carregam código-fonte e tags de estilo XML que correspondem às regras do corpo de cross-site-scripting; um WAF na frente do gateway retorna
403em sessões reais enquanto solicitações de teste curtas passam
GET /v1/models para que Claude Code possa preencher o seletor de modelo do seu gateway com descoberta de modelo.
Etapas de implantação
A implantação ocorre em cinco etapas, cada uma com um checkpoint:- Confirme se o gateway roteia seus modelos
- Emita uma credencial para cada desenvolvedor
- Teste Claude Code contra o gateway
- Distribua a URL base e as credenciais
- Verifique a partir de uma máquina de desenvolvedor
Confirme se o gateway roteia seus modelos
Seu gateway já deve estar configurado com sua credencial de provedor, escutando em sua URL base e encaminhando solicitações para a API do seu provedor. Teste se o caminho funciona de ponta a ponta com uma solicitação mínima, substituindo dois valores de sua implantação:<gateway-key>é qualquer credencial que permite chamar o gateway agora: uma chave administrativa, uma chave de teste ou sua própria chave de desenvolvedor se você já tiver emitido uma. Nem todo produto de gateway possui uma credencial de administrador separada; se o seu não tiver, emita uma chave de desenvolvedor para você mesmo em Emita credenciais de desenvolvedor primeiromodelé um nome de modelo Claude que seu gateway está configurado para rotear. O exemplo usaclaude-sonnet-4-6; substitua por um nome que você configurou
- Bash ou Zsh
- PowerShell
200 com um campo content significa que o gateway alcançou o provedor com esse nome de modelo. Um 404 significa que esse nome não é roteado no gateway; um 401 do provedor significa que a credencial do provedor do gateway está incorreta.
Repita a solicitação uma vez por nome de modelo Claude na configuração de roteamento do seu gateway. Um nome que o gateway não roteia retorna 404 para qualquer desenvolvedor que o selecione, então teste cada nome antes da implantação.
Evite servir o gateway atrás de um redirecionamento. Um redirecionamento pode descartar o corpo da solicitação ou remover o cabeçalho de credencial em solicitações de inferência, e descoberta de modelo trata qualquer redirecionamento como uma falha para que a credencial não possa vazar para um destino de redirecionamento.
Emita credenciais de desenvolvedor
Cada desenvolvedor precisa de sua própria chave de gateway para autenticar. Crie uma credencial por desenvolvedor no gateway, seguindo a documentação de gerenciamento de credenciais do seu produto. Confirme que uma chave recém-emitida funciona contra o gateway com a mesma solicitação de Confirme se o gateway roteia seus modelos, substituindo<gateway-key> pela nova <developer-key>:
- Bash ou Zsh
- PowerShell
200 com um campo content significa que a chave do desenvolvedor alcança o gateway e o gateway a encaminha. Um 401 aqui, quando a etapa anterior foi bem-sucedida, significa que a chave do desenvolvedor está incorreta ou ainda não entrou em vigor no gateway.
Emitir uma chave por desenvolvedor em vez de uma chave compartilhada é o que torna a atribuição de uso por desenvolvedor e o offboarding individual funcionarem. A variável de ambiente que contém a chave depende de qual cabeçalho o gateway lê. Para um gateway que verifica credenciais no cabeçalho Authorization: Bearer, os desenvolvedores definem sua chave em ANTHROPIC_AUTH_TOKEN. Para um gateway que lê chaves do cabeçalho x-api-key, os desenvolvedores definem ANTHROPIC_API_KEY em vez disso; a tabela de credenciais cobre o mapeamento.
Teste Claude Code contra o gateway
Execute Claude Code através do gateway você mesmo antes de distribuir qualquer coisa, usando a mesma configuração que a implantação entregará em toda a frota. Digite-os diretamente em um terminal, não em um arquivo.env ou arquivo de configurações; eles duram apenas para esta sessão de terminal, então fechá-la retorna sua máquina à sua configuração normal. Use ANTHROPIC_API_KEY em vez de ANTHROPIC_AUTH_TOKEN se seu gateway lê o cabeçalho x-api-key:
- Bash ou Zsh
- PowerShell
POST para o caminho /v1/messages com status 200. Claude Code anexa uma string de consulta como ?beta=true, então corresponda no caminho, não na URL completa. Duas mensagens de falha apontam em direções diferentes:
Not logged in: verifique o log do gateway para distinguir as duas causas. Se estiver vazio, nenhuma credencial alcançou a sessão e nenhuma solicitação saiu da máquina; execute novamente as exportações no shell que você está testando. Se mostrar uma solicitação rejeitada comx-api-keyno corpo401, o gateway espera chaves nesse cabeçalho em vez disso; mude paraANTHROPIC_API_KEYFailed to authenticate. API Error: 401significa que uma credencial foi enviada e rejeitada, e o log do gateway diz onde: um401nomeandoapi.anthropic.comou o endpoint do seu provedor significa que o gateway alcançou o upstream mas sua credencial de provedor foi rejeitada, então a chave do desenvolvedor funcionou e a credencial do provedor que o gateway possui está incorreta ou é um placeholder
ANTHROPIC_BASE_URL não aponta para o gateway.
Distribua a configuração
Cada máquina de desenvolvedor precisa do endereço do gateway e de uma credencial. Você pode distribuí-los centralmente através de configurações gerenciadas, para que os desenvolvedores não configurem nada, ou forneça aos desenvolvedores os valores para definir eles mesmos.O que distribuir
O mesmo conjunto de variáveis se aplica qualquer que seja o caminho escolhido. A maioria das implantações precisa apenas deANTHROPIC_BASE_URL e uma credencial; inclua as linhas condicionais quando sua configuração de gateway exigir.
Distribua através de configurações gerenciadas
Entregue as variáveis através do blocoenv de um arquivo de configurações gerenciadas, enviado por MDM, política de registro ou gerenciamento de configuração:
env. Um ANTHROPIC_BASE_URL gerenciado é imposto e não pode ser substituído por uma exportação de shell do desenvolvedor, já que Claude Code o aplica sobre o ambiente do processo e configurações de precedência inferior.
Não inclua forceLoginMethod, forceLoginOrgUUID, ou forceLoginGatewayUrl em configurações gerenciadas junto com uma credencial de gateway. forceLoginMethod ou forceLoginOrgUUID, com qualquer valor, bloqueia ANTHROPIC_API_KEY, ANTHROPIC_AUTH_TOKEN, e apiKeyHelper na inicialização, e os desenvolvedores não podem prosseguir. Eles veem This machine's managed settings require a first-party login, ou Administrator policy requires a Cloud gateway sign-in quando o arquivo define forceLoginMethod para "gateway" ou define forceLoginGatewayUrl.
A entrega de configurações gerenciadas pelo servidor requer uma conexão direta com api.anthropic.com, então não alcança sessões roteadas por gateway. Implantações de gateway usam este caminho de configurações gerenciadas baseado em arquivo, que impõe as mesmas chaves.
Para a credencial, distribua um comando apiKeyHelper no arquivo de configurações gerenciadas conforme mostrado acima; o comando autentica seu armazenamento de segredos como o desenvolvedor local, então cada máquina recebe sua própria chave. Alternativamente, entregue a cada desenvolvedor sua chave através do seu processo de segredos existente e peça que eles definam ANTHROPIC_AUTH_TOKEN eles mesmos.
Alguns ambientes precisam de entrega separada:
- O aplicativo de desktop lê o roteamento de gateway de sua configuração de inferência de terceiros, não de configurações gerenciadas; implante esse arquivo através de MDM junto com configurações gerenciadas para que sessões de desktop também roteiem através do gateway. Veja a documentação de configuração de terceiros do desktop e a documentação de gateway do desktop
- Executores de CI precisam de
ANTHROPIC_BASE_URLe a credencial definida no ambiente do executor - WSL em máquinas Windows gerenciadas lê as configurações gerenciadas do Windows apenas quando
wslInheritsWindowsSettingsétrue
A configuração HIPAA atrás de um gateway
Sessões que passam por um gateway não são elegíveis para a configuração HIPAA. Verifique como os desenvolvedores fazem login e se conectam lista quais métodos de login e conexão são elegíveis. Para restringir recursos dessas sessões no arquivo de configurações gerenciadas, use as chaves em Mapeie caminhos de saída para controles gerenciados e eventos. Essas chaves não tornam uma sessão elegível para a configuração HIPAA e não cobrem tudo o que a configuração altera. Por exemplo:- Sessões na nuvem: nenhuma chave gerenciada as desativa. Veja Controles do Admin console
- Credenciais Anthropic em processos filhos: a configuração as remove dos processos que Claude Code inicia, e nenhuma chave de configuração faz apenas isso
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC no lugar dessas chaves. Ela desativa alguns desses recursos, mas também desativa o atualizador automático e deixa WebFetch ativado.
Forneça aos desenvolvedores os valores para definir eles mesmos
Se você não tiver distribuição de configurações gerenciadas em vigor, envie a cada desenvolvedor o que ele precisa para seguir a página de conexão:- A URL do gateway
- Sua credencial pessoal
- Qual variável colocar a credencial em:
ANTHROPIC_AUTH_TOKENpara um gateway de token portador, ouANTHROPIC_API_KEYpara um gatewayx-api-key. Informar aos desenvolvedores qual delas os poupa do trial-and-error descrito na página de conexão - Qualquer variável condicional da tabela O que distribuir, com seus valores
claude inicia uma sessão sem mostrar a tela de login, já que a credencial distribuída satisfaz a autenticação. Em seguida, execute /status e abra a aba Status: a linha Anthropic base URL mostra o endereço do gateway, e para distribuição gerenciada a linha Setting sources inclui configurações gerenciadas. Uma tela de login, ou uma linha Anthropic base URL ausente, significa que a configuração não alcançou a máquina.
Verifique a implantação
Confirme que tudo funciona a partir de uma máquina de desenvolvedor, não do host do gateway, para que o teste cubra o caminho de rede que os desenvolvedores usam. Envie uma solicitação de streaming, que verifica o endpoint, passagem de streaming e roteamento de modelo de uma vez:- Bash ou Zsh
- PowerShell
data: chegarem incrementalmente. A resposta inteira chegando de uma vez após uma pausa significa que o gateway está armazenando em buffer, o que paralisa Claude Code; um 404 significa que o nome do modelo não é roteado. Repita por nome de modelo.
Em seguida, inicie claude e envie uma mensagem. Cada sintoma nesta etapa tem uma causa:
- Um prompt de login significa uma lacuna de credencial. Execute
/statuse abra a aba Status: quando a linhaSetting sourcesnão inclui configurações gerenciadas, a distribuição não alcançou a máquina; quando inclui, a credencial do desenvolvedor não foi entregue, então definaANTHROPIC_AUTH_TOKENou oapiKeyHelper - Erros
Failed to authenticatesignificam que o gateway está rejeitando solicitações; seu log diz qual credencial falhou. Uma rejeição que o gateway registra em si nomeia a chave do desenvolvedor, enquanto um401deapi.anthropic.comou do endpoint do seu provedor significa que a credencial do provedor que o gateway possui foi rejeitada - Um prompt de aprovação única para a chave é esperado no primeiro uso quando o gateway espera chaves no cabeçalho
x-api-key, definido comoANTHROPIC_API_KEY. ComANTHROPIC_AUTH_TOKEN, nenhum prompt aparece e a variável assume silenciosamente; um login claude.ai previamente salvo está inativo para essa sessão
/fast aqui também: a verificação de disponibilidade chama api.anthropic.com diretamente em vez de seguir a URL base do gateway, então uma sessão roteada por gateway pode relatar modo rápido como indisponível ou desabilitado mesmo que a inferência funcione. Use modo rápido atrás de proxies e gateways LLM mapeia cada mensagem para a variável que a restaura, distribuída com o resto da configuração.
Finalmente, verifique os logs do gateway para a mensagem que você enviou: a credencial identifica o desenvolvedor, e o cabeçalho x-claude-code-session-id agrupa solicitações por sessão. Se recursos falharem com os sintomas de solução de problemas, o gateway está removendo cabeçalhos ou reescrevendo erros; veja os requisitos do gateway acima.
Mantenha o gateway
Após a implantação, três tipos de mudança alcançam o gateway ao longo do tempo. Cada um tem um sintoma a observar e uma ação a tomar.
Ao dimensionar limites de taxa por chave, leve em conta o cliente tentando novamente falhas transitórias, incluindo respostas
429, até 10 vezes com backoff, honrando Retry-After. Mantenha a guia de compatibilidade como a referência para o que cada lançamento do Claude Code envia.
Planejar atualizações de versão do Claude Code
Alguns comportamentos do Claude Code são incorporados à versão instalada em vez de serem definidos no seu gateway, portanto, mover desenvolvedores para um novo lançamento pode alterar o comportamento em toda a sua implantação mesmo quando a configuração do gateway não foi alterada. Para controlar quando isso acontece, fixe os desenvolvedores a uma versão testada comrequiredMaximumVersion, ou com DISABLE_UPDATES se você distribuir Claude Code através do seu próprio canal. Antes de aumentar a fixação, leia a entrada do changelog do novo lançamento e teste-o contra o gateway.
Quando você testa um lançamento, novos cabeçalhos ou campos de solicitação que o gateway rejeita aparecem como os erros 400 descritos em Mantenha o gateway. A tabela abaixo cobre mudanças dependentes de versão que não produzem um erro, com a configuração que mantém cada uma constante entre atualizações.
Recursos relacionados
- Conectar Claude Code a um gateway LLM: as etapas de configuração voltadas para o desenvolvedor, com configuração por superfície e uma tabela de solução de problemas que você pode entregar aos desenvolvedores
- Guia de compatibilidade do gateway: a referência para operadores de gateway, cobrindo endpoints, cabeçalhos para encaminhar e a tabela de passagem de recursos
- Qual valor Claude Code usa: como configurações gerenciadas, de projeto e de usuário se combinam
- Mecanismos de entrega: onde o arquivo gerenciado vai em cada plataforma
- Configure Claude Code para sua organização: a implantação mais ampla da qual este gateway é uma parte, incluindo imposição de política, visibilidade de uso e tratamento de dados