Ambientes auto-hospedados estão em beta pública nos planos Team e Enterprise e estão desativados por padrão. Consulte Disponibilidade e limitações para o caminho de habilitação e o que está excluído.
claude --cloud e rotinas agendadas, e por padrão são executadas na infraestrutura da Anthropic. Em um ambiente auto-hospedado, essas mesmas sessões são executadas dentro de sua rede, e a experiência do desenvolvedor é a mesma, exceto pelas diferenças em Disponibilidade e limitações e os problemas conhecidos da página de implantação.
Se sua equipe não usa sessões na nuvem, não há nada para configurar aqui: sessões em um terminal ou IDE sempre são executadas na máquina do próprio desenvolvedor. Se você deseja executar Claude Code em sua própria máquina sempre ativa e controlá-la a partir de outros dispositivos, use Controle Remoto, que também está disponível nos planos Pro e Max. Quando estiver pronto para configurar, vá direto para o guia de início rápido; para revisar a postura de segurança primeiro, comece com Implantar em produção. O resto desta página explica como funciona a auto-hospedagem e quando escolhê-la.
Como funcionam os ambientes auto-hospedados
A auto-hospedagem tem três partes:- Ambiente: um destino nomeado para o qual as sessões na nuvem podem ser enviadas. Sua organização cria ambientes nas configurações de administrador de claude.ai, e cada um agrupa um conjunto de runners.
- Runner: um programa em execução em hosts dentro de sua rede. Os runners executam as sessões; a ideia é a mesma de um runner de CI auto-hospedado.
- Sessão: uma tarefa de Claude Code que um desenvolvedor iniciou.
api.anthropic.com, com a lista curta de hosts adicionais que as sessões podem alcançar em Requisitos de rede. A Anthropic nunca se conecta em sua rede.
Disponibilidade e limitações
Verifique estas antes de planejar um lançamento:- Planos: beta pública para organizações Team e Enterprise. Ambientes auto-hospedados estão desativados por padrão; um Proprietário ativa Permitir ambientes auto-hospedados na página de administrador Ambientes na nuvem, que requer que Claude Code na web esteja habilitado para a organização.
- Zero Data Retention: indisponível para organizações com Zero Data Retention habilitado.
- Inferência de modelo: as sessões usam a API Anthropic, e a inferência não pode ser roteada através de Amazon Bedrock, Google Cloud’s Agent Platform, Microsoft Foundry ou um gateway LLM.
- Superfícies: sessões iniciadas a partir de Claude Code na web, dos aplicativos móvel e desktop, rotinas agendadas e do terminal, com
claude --cloudou um despacho--environment, podem ser executadas em ambientes auto-hospedados. Sessões de Claude Tag também podem ser executadas neles, mas Claude ainda não pode usar Pacotes de acesso nessas sessões. Sessões de Claude Security e Code Review ainda não são roteadas para eles. O suporte para essas duas superfícies segue separadamente. - Repositórios: as sessões verificam repositórios do GitHub; consulte Opções de autenticação do GitHub.
- Faturamento: as sessões em um ambiente auto-hospedado consomem o uso de Claude Code de sua organização da mesma forma que as sessões em ambientes hospedados pela Anthropic.
Por que auto-hospedar
A maioria das equipes é melhor servida por ambientes hospedados pela Anthropic, que não precisam de infraestrutura para executar ou manter. A auto-hospedagem é para equipes cujos requisitos de rede, ferramentas ou conformidade exigem manter a execução da sessão em infraestrutura que controlam. Se esse for o seu caso, planeje pela propriedade operacional que ela carrega: você constrói e mantém a imagem do runner, opera a frota e controla sua rede. Em troca, a auto-hospedagem oferece acesso à rede, ferramentas personalizadas e controle de conformidade:- Acesso à rede: as sessões são executadas dentro de sua rede e podem alcançar serviços internos, bancos de dados e registros sem expô-los à internet pública
- Ferramentas personalizadas: pré-instale compiladores, SDKs e CLIs internos em sua imagem de runner para que cada sessão comece pronta para compilar
- Conformidade: as verificações de repositório e artefatos de compilação permanecem em infraestrutura que você controla. O conteúdo da sessão ainda vai para
api.anthropic.compara inferência de modelo.
Ambientes, runners e sessões
Os ambientes são gerenciados na página Ambientes na nuvem nas configurações de administrador de claude.ai; os runners são processos que você inicia e gerencia em sua própria infraestrutura.Conceitos-chave
Estes termos aparecem em todas as páginas auto-hospedadas:
Em campos de API, reivindicações de token e nomes de métrica, o ambiente aparece como
pool, e o ID do ambiente é o pool_id. A referência mapeia as duas grafias, incluindo os nomes de flag pool descontinuados.
Um runner serve um proprietário por vez. A primeira sessão que um runner pega bloqueia o runner para o proprietário dessa sessão, e o runner então executa sessões apenas para esse proprietário, até uma capacidade configurada. Quem é o proprietário depende de como a sessão foi iniciada:
- Sessões que um usuário inicia: o proprietário é a conta desse usuário.
- Sessões de canal Claude Tag: Claude as executa sem nenhuma conta de usuário anexada, portanto o proprietário é o agente Claude Tag que iniciou a sessão. Cada sessão de canal que esse agente inicia tem o mesmo proprietário, quem quer que tenha enviado a mensagem do Slack, portanto um runner bloqueado para ela serve sessões que diferentes pessoas iniciaram quando você a executa em um
--capacityacima de um ou com um--drain-grace-secpositivo. Um runner bloqueado para um usuário nunca pega estes, e um runner bloqueado para um agente Claude Tag nunca pega as sessões de um usuário.
Ciclo de vida da sessão
Quando um desenvolvedor inicia uma sessão e seleciona seu ambiente, o plano de controle da Anthropic coloca a sessão na fila do ambiente. De lá:- Um runner com capacidade livre reclama a sessão e mantém uma concessão sobre ela.
- O runner clona o repositório em seu diretório de trabalho e gera um processo filho de Claude Code.
- O filho transmite eventos de volta por HTTPS enquanto o runner continua sondando; cada sondagem atualiza a concessão e funciona como o batimento cardíaco.
- Se o runner parar de sondar por cerca de 60 segundos, o servidor recoloca a sessão na fila para outro runner.
Ciclo de vida do runner
A primeira sessão que um runner pega bloqueia o runner para o proprietário dessa sessão, e o runner executa até--capacity sessões simultâneas para esse proprietário. Enquanto o runner tem sessões ativas e não recebeu um sinal de desligamento ou atingiu seu tempo de aposentadoria, o runner continua reivindicando o trabalho enfileirado do proprietário bloqueado. O que acontece depois que terminam depende de --drain-grace-sec:
- No padrão de
0: o runner sai assim que suas sessões ativas terminam, sem sondar mais, portanto o orquestrador em que você o implanta, como Kubernetes, pode reiniciá-lo com um disco fresco, pronto para servir qualquer proprietário. - Em um valor positivo: o runner continua sondando a fila do proprietário bloqueado por esse número de segundos antes de sair.
--retire-at. Uma morte que entrega SIGTERM não precisa de flag: o runner drena conforme Tempo de desligamento descreve, ou continua servindo as sessões que já mantém quando você define --defer-shutdown-max-min. Se sua infraestrutura em vez disso destrói hosts em um tempo de relógio de parede conhecido sem um sinal, ou com um período de carência muito curto para drenar, como um limite de tempo de vida de sandbox ou reclamação de instância spot, passe --retire-at <epoch-seconds> definido para alguns minutos antes desse tempo. No tempo de aposentadoria:
- O runner para de aceitar novo trabalho.
- O runner libera cada sessão ativa através do mesmo caminho de liberação que o flag
--release-idle-session-minusa, portanto a sessão retoma em um runner fresco quando o usuário envia sua próxima mensagem. Quando o runner libera cada sessão depende de seu estado:- O runner libera uma sessão que está no meio de uma volta assim que essa volta termina.
- Quando uma volta termina e deixa tarefas em segundo plano em execução, o runner espera até 60 segundos por elas, depois libera a sessão mesmo que ainda estejam em execução. Se as tarefas terminaram mas a volta de acompanhamento que lê seus resultados ainda não foi executada, o runner mantém a sessão até que essa volta termine, e não espera mais do que
SELF_HOSTED_RUNNER_BG_RESULT_GRACE_MSpara que essa volta comece.
- O runner sai 0 assim que todas as suas sessões são liberadas.
--retire-at, uma morte de host sem sinal é indistinguível de um crash: o plano de controle registra um worker perdido em vez de uma liberação limpa, e a sessão recoloca na fila para outro runner.
Caminhos de rede
O runner e suas sessões fazem vários tipos de conexão de saída, e nenhuma conectividade de entrada de Anthropic é necessária:- Plano de controle: o runner sonda
api.anthropic.compara trabalho e publica eventos de progresso de configuração e falha, tudo HTTPS de saída. A sondagem funciona como o batimento cardíaco do runner. - Conector SCM: o orquestrador opcional conector SCM tunnel é a única conexão WebSocket.
- Git: o runner clona de e envia para seu host git por HTTPS ou SSH, autenticado com credenciais que sua implantação fornece; Configurar git cobre as opções, incluindo credenciais cunhadas por sessão e o proxy git Anthropic, que roteia git através de
api.anthropic.comem vez disso. - Filho da sessão: o processo filho de Claude Code mantém o fluxo de eventos da sessão para
api.anthropic.come faz suas próprias chamadas de saída para inferência de modelo e para comandos git executados durante a sessão. Consulte Requisitos de rede para a lista completa de saída. O diagrama acima mostra esses caminhos, além do conector SCM opcional.
HTTPS_PROXY e NO_PROXY; defina-as no ambiente de cada processo. As variáveis cobrem chamadas de plano de controle, o WebSocket conector SCM do orquestrador e o clone integrado para remotes HTTPS, e as sessões as herdam do runner. O streaming de sessão usa eventos enviados pelo servidor por HTTPS, portanto um proxy no caminho não deve armazenar em buffer as respostas.
Se seu proxy também exigir um cabeçalho Proxy-Authorization, o runner pode adicioná-lo a cada conexão que abre para o proxy; consulte Autenticar em um proxy de saída.
O que permanece em sua infraestrutura
Verificações de repositório, artefatos de compilação, segredos e quaisquer arquivos que uma sessão cria ou modifica permanecem nas máquinas que você provisiona. A conversa em si, incluindo prompts, respostas e resultados de ferramentas, vai paraapi.anthropic.com para inferência de modelo, e Anthropic armazena a transcrição da sessão para que você possa retomar a sessão de outra superfície suportada.
Um ambiente auto-hospedado move a execução da sessão para sua rede. O plano de controle permanece hospedado pela Anthropic: orquestração de sessão, enfileiramento e a interface de claude.ai continuam a ser executados na infraestrutura da Anthropic.
Comece
As páginas de ambientes auto-hospedados são organizadas pelo que você está fazendo:- Guia de início rápido: instale Claude Code, crie um ambiente, inicie um runner e roteie sua primeira sessão
- Implantar em produção: endurecimento de segurança, saída de rede, credenciais git, receitas Kubernetes e Compose, problemas conhecidos e solução de problemas
- Personalizar sessões: scripts de wrapper para credenciais por sessão, hooks de ciclo de vida, runners sob demanda, servidores MCP e permissões
- Testar de ponta a ponta: um teste de fumaça de CI que verifica uma imagem de runner antes de promovê-la
- Referência: cada flag de CLI, variável de ambiente, métrica e o endpoint de saúde
- Verificar identidade da sessão: valide o token de sessão de seus próprios serviços antes de conceder acesso