Todas las variables de entorno que se muestran en esta página también se pueden configurar en
settings.json.Configuración de proxy
Variables de entorno
Claude Code respeta las variables de entorno de proxy estándar. En sesiones de Claude Desktop donde la aplicación gestiona la conexión del proveedor, Claude Code las lee solo desde la configuración gestionada y~/.claude/settings.json; consulte autenticación mTLS para las reglas de alcance.
https_proxy, HTTPS_PROXY, http_proxy, HTTP_PROXY.
Claude Code nunca envía sus conexiones WebSocket a localhost, ::1, o 127.0.0.0/8 a través del proxy, por lo que no necesita una entrada de loopback en NO_PROXY para ellas.
Claude Code no admite proxies SOCKS.
Autenticación básica
Si su proxy requiere autenticación básica, incluya las credenciales en la URL del proxy:Almacén de certificados CA
De forma predeterminada, Claude Code confía tanto en sus certificados CA de Mozilla incluidos como en el almacén de certificados de su sistema operativo. La lectura del almacén del sistema operativo requiere un tiempo de ejecución contls.getCACertificates: el instalador nativo siempre lo tiene, y las instalaciones de npm necesitan Node 22.15 o posterior. En versiones anteriores de Node, solo se aplican el conjunto incluido y NODE_EXTRA_CA_CERTS. Los proxies de inspección TLS empresariales funcionan sin configuración adicional cuando su certificado raíz se instala en el almacén de confianza del sistema operativo y el tiempo de ejecución puede leerlo.
CLAUDE_CODE_CERT_STORE acepta una lista separada por comas de fuentes. Los valores reconocidos son bundled para el conjunto de CA de Mozilla incluido con Claude Code y system para el almacén de certificados del sistema operativo. El valor predeterminado es bundled,system.
Para confiar solo en el conjunto de CA de Mozilla incluido:
CLAUDE_CODE_CERT_STORE no tiene una clave de esquema dedicada en settings.json. Establézcalo a través del bloque env en ~/.claude/settings.json o directamente en el entorno del proceso.Certificados CA personalizados
Si su entorno empresarial utiliza una CA personalizada, configure Claude Code para confiar en ella directamente:Autenticación mTLS
Para entornos empresariales que requieren autenticación de certificado de cliente:env en configuración administrada a mitad de sesión.
Para rotar el certificado y la clave, reemplace los archivos en las mismas rutas. Claude Code recoge el reemplazo en una sesión en ejecución sin necesidad de reiniciar. Cuando una solicitud de API falla con un error a nivel de conexión, como un restablecimiento de conexión o un error de protocolo de enlace TLS, vuelve a leer ambos archivos e intenta nuevamente la solicitud con el nuevo par. Antes de v2.1.232, Claude Code no volvía a leer en errores de conexión, por lo que mantenía el par que ya había cargado hasta que aplicaba configuración nuevamente o usted reiniciaba.
Claude Code vuelve a leer los archivos en respuesta a solicitudes fallidas, no observando cambios en ellos:
- Tiempo: Claude Code no hace nada en el momento en que reemplaza los archivos. Presenta el nuevo par en el reintento después de una falla calificada, o en la siguiente solicitud después de que aplica configuración, lo que ocurra primero.
- Rechazos de puerta de enlace: Claude Code vuelve a leer cuando su puerta de enlace restablece la conexión o rechaza el protocolo de enlace TLS después de que deja de aceptar el par anterior. No vuelve a leer cuando la puerta de enlace completa el protocolo de enlace y responde con un error HTTP. En ese caso, Claude Code carga el nuevo par cuando aplica configuración nuevamente o cuando lo reinicia.
- Rotaciones parcialmente escritas: cuando Claude Code vuelve a leer mientras su rotación está a mitad de escritura, como leer un certificado y clave que no coinciden entre sí, mantiene el par anterior y vuelve a leer en la siguiente falla.
- Exportadores de telemetría OTLP: Claude Code mantiene el certificado que los exportadores cargaron en el primer uso, por lo que reinicie Claude Code para que un certificado rotado llegue a su recopilador de telemetría.
- Desactivar la recarga: establezca
CLAUDE_CODE_DISABLE_MTLS_RELOAD_ON_STALE_CONNECTION=1para desactivar la recarga de error de conexión. Claude Code recoge archivos rotados solo cuando aplica configuración nuevamente o en el siguiente inicio.
Stale connection — reloaded rotated mTLS client material en el registro. Claude Code no registra esta línea cuando recoge la rotación mientras aplica configuración en su lugar, por lo que una línea faltante por sí sola no significa que la rotación haya fallado.
Reemplace los archivos antes de que expire el par actual para que Claude Code no cargue un par ya expirado en el siguiente inicio.
En sesiones en la nube, el entorno de alojamiento administra la conexión a la API, por lo que Claude Code ignora las siguientes variables cuando provienen de un bloque env de archivo de configuración:
CLAUDE_CODE_CLIENT_CERTCLAUDE_CODE_CLIENT_KEYCLAUDE_CODE_CLIENT_KEY_PASSPHRASENODE_EXTRA_CA_CERTSNODE_TLS_REJECT_UNAUTHORIZEDCLAUDE_CODE_OAUTH_SCOPES
HTTP_PROXY, HTTPS_PROXY y NO_PROXY solo desde configuración administrada y ~/.claude/settings.json: las ignora en los archivos de configuración propios de un repositorio, por lo que un repositorio extraído no puede redirigir la ruta TLS o proxy de una sesión cuyas credenciales provienen de la aplicación. En una sesión de pestaña Code local, SSH o WSL con sesión iniciada a través de claude.ai, la aplicación no administra la conexión, y Claude Code lee estas variables desde cada ámbito de configuración, como cualquier sesión de terminal; las sesiones en la nube siguen las reglas de sesión en la nube anteriores dondequiera que las inicie. Antes de v2.1.217, Claude Code ignoraba estas variables en cada archivo de configuración cuando la aplicación administraba la conexión.
Verificar su configuración
Generalmente se entera de una dirección de proxy incorrecta o una ruta de certificado incorrecta a partir de un error de conexión o certificado en una solicitud posterior, ya que Claude Code no valida la mayoría de estas configuraciones cuando las lee. La única configuración que verifica al iniciar es la URL del proxy: cuando no puede analizar el valor, como uno que carece del esquemahttp://, Claude Code detiene el lanzamiento con un error que nombra la variable a corregir.
Para confirmar que su configuración se cargó antes de enviar una solicitud, inicie Claude Code con registro de depuración:
~/.claude/debug/<session-id>.txt en lugar de la terminal, o a una ruta que establezca con --debug-file <path>. En el registro, busque las líneas que confirmen que cada archivo se cargó:
Failed to read o Failed to load con la razón en su lugar.
También puede ejecutar /status en una sesión interactiva y verificar estas filas:
- Proxy: muestra la URL del proxy activo y marca un valor que no puede analizar como inválido e ignorado.
- mTLS client cert y mTLS client key: aparecen solo cuando los archivos se cargaron, por lo que una fila faltante significa que la carga falló y el registro de depuración tiene la razón.
- Additional CA cert(s): muestra la ruta
NODE_EXTRA_CA_CERTSsin verificar que el archivo se cargó, así que confirme este en el registro de depuración.
Aplicar configuración de red a agentes en segundo plano
Los agentes en segundo plano no se ejecutan dentro de la terminal que los envió. Un proceso supervisor por usuario se inicia bajo demanda, sobrevive a su shell y aloja cada sesión declaude agents, --bg y /background. Consulte Cómo se alojan las sesiones en segundo plano. Esto cambia cómo la configuración en esta página llega a esas sesiones.
Establecer variables de red en la configuración, no en el shell
El supervisor es un proceso compartido por cada terminal. Hereda el entorno del shell que lo inicia primero, y un supervisor instalado por el sistema operativo no recibe ningún entorno de shell. Si exporta un proxy, ruta de CA o variable de mTLS solo en su shell, llega a los agentes en segundo plano cuando ese shell sucedió a iniciar en frío el supervisor, y silenciosamente no llega cuando un shell diferente lo hizo. Coloque las mismas variables en el bloqueenv de ~/.claude/settings.json o configuración administrada en su lugar. Cada variable en esta página se puede establecer allí, y la configuración es la única que llega a cada sesión en segundo plano en cada máquina.
Configurar un iniciador corporativo como una configuración
Algunas organizaciones requieren que cada proceso de Claude Code se inicie a través de un iniciador corporativo que aplique sandboxing, controles de red o inyección de credenciales. El supervisor y sus trabajadores inician Claude Code desde una ruta fija en lugar de buscarclaude en PATH, por lo que cada agente en segundo plano omite un contenedor que coloca anteriormente en PATH.
Establezca la configuración processWrapper para prefijar el supervisor, sus trabajadores y los otros procesos en segundo plano enumerados en Qué cubre el iniciador con su iniciador. La variable de entorno equivalente CLAUDE_CODE_PROCESS_WRAPPER tiene prioridad cuando ambas se establecen, y está sujeta a la misma regla: entréguela a través de la configuración administrada o ~/.claude/settings.json, no una exportación de shell. Ejecutar Claude Code detrás de un iniciador corporativo cubre el contrato que el iniciador debe satisfacer, qué alcanza y qué no alcanza, y cómo implementarlo.
Un supervisor ya en ejecución mantiene la configuración de lanzamiento con la que se inició. Después de implementar la configuración del iniciador, ejecute
claude daemon stop --any para que el siguiente claude agents o --bg inicie un supervisor que la respete. Un servicio instalado toma claude daemon stop sin --any.Perros guardianes de inactividad en streaming
Claude Code ejecuta cuatro temporizadores independientes que abortan una respuesta de modelo en streaming cuando se queda en silencio, de modo que una conexión muerta falla y se reintenta en lugar de quedarse colgada. El plazo de primer byte cubre la espera de encabezados de respuesta, antes de que haya llegado ninguna parte de la respuesta. Cada uno de los otros tres supervisa una respuesta activa para una señal diferente.
Configure los temporizadores con estas variables, cada una detallada en la referencia de variables de entorno:
CLAUDE_ENABLE_STREAM_WATCHDOGyCLAUDE_ENABLE_BYTE_WATCHDOGfuerzan el perro guardián correspondiente activado con1o desactivado con0, dentro de los tipos de conexión que la tabla enumera; ninguna variable extiende un perro guardián a un tipo de conexión que no cubre.CLAUDE_ENABLE_BYTE_WATCHDOGestablecido en0también desactiva el plazo de primer byte.CLAUDE_STREAM_IDLE_TIMEOUT_MSestablece el tiempo de espera de ambos perros guardianes. Claude Code eleva los valores por debajo de 5 minutos a 5 minutos, y limita el valor a 30 minutos para el perro guardián a nivel de byte.CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MSestablece el tiempo de espera del perro guardián a nivel de byte sin cambiar el del perro guardián a nivel de evento, limitado entre 10 segundos y 30 minutos, y tiene prioridad sobreCLAUDE_STREAM_IDLE_TIMEOUT_MSpara ese perro guardián.CLAUDE_STREAM_FIRST_BYTE_TIMEOUT_MSestablece el plazo de primer byte directamente. Déjelo sin establecer y Claude Code usa el tiempo de espera del perro guardián a nivel de byte, de modo queCLAUDE_STREAM_IDLE_TIMEOUT_MSyCLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MStambién cambian el plazo. Para los límites, la asignación de carga, el límite deAPI_TIMEOUT_MSy cuánto tiempo espera el reintento después de un aborto sin respuesta, consulte Sin respuesta de la API.API_FORCE_IDLE_TIMEOUTestablecido en0desactiva el tiempo de espera de inactividad del cuerpo, y establecido en1lo activa para cada proveedor. Los perros guardianes se ejecutan independientemente de él, por lo que para permitir que un stream se pause más tiempo que sus umbrales, también aumente o desactive los perros guardianes.
Requisitos de acceso a la red
Claude Code requiere acceso a las siguientes URLs. Agregue estas a la lista de permitidos en su configuración de proxy y reglas de firewall, especialmente en entornos de red en contenedores o restringidos. La verificación de conectividad de configuración de primera ejecución apunta aquí cuando no puede alcanzarapi.anthropic.com o platform.claude.com; consulte No se puede conectar a los servicios de Anthropic para los mensajes de la verificación y los pasos de recuperación.
Si instala Claude Code a través de npm o administra su propia distribución binaria, los usuarios finales no necesitan los usos del instalador nativo y actualizador automático de
downloads.claude.ai, pero las instalaciones de npm y bun necesitan su registro de paquetes, registry.npmjs.org, a menos que su organización lo refleje. Los otros usos en la tabla se aplican independientemente del método de instalación.
Los dos hosts de ingesta de Datadog llevan solo telemetría operativa opcional, y establecer CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC deshabilita ambos. Las sesiones en proveedores de terceros nunca envían a estos hosts, incluso cuando una plataforma establece CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST y las métricas de telemetría están habilitadas de forma predeterminada. Consulte Servicios de telemetría para todo lo que Claude Code envía y cómo deshabilitarlo antes de finalizar su lista de permitidos.
Cuando se usa Amazon Bedrock, Agent Platform de Google Cloud, Microsoft Foundry o una sesión de puerta de enlace de aplicaciones Claude con sesión iniciada, el tráfico del modelo y la autenticación van a su proveedor o puerta de enlace en lugar de api.anthropic.com, claude.ai o platform.claude.com. La herramienta WebFetch aún llama a api.anthropic.com para su verificación de seguridad de dominio a menos que establezca skipWebFetchPreflight: true en configuración.
Cuando se enruta a través de una puerta de enlace LLM con ANTHROPIC_BASE_URL, la verificación de disponibilidad de modo rápido aún llama a api.anthropic.com en lugar de la URL base de la puerta de enlace. La verificación respeta un proxy HTTP configurado, por lo que donde un bloqueo de red es la causa, una entrada de lista de permitidos para api.anthropic.com en el proxy es la solución. Un bloqueo de red falla la verificación solo donde el host es inaccesible incluso a través del proxy, y el modo rápido luego reporta un error de conectividad. El mismo error de conectividad aparece cuando la verificación presenta una credencial emitida por la puerta de enlace que Anthropic rechaza; la lista de permitidos no ayuda allí, ya que nada está bloqueado. Consulte usar modo rápido detrás de proxies y puertas de enlace LLM para las variables que lo restauran.
Listas de permitidos de IP de la organización y salida de proxy
Si su organización tiene lista de permitidos de IP habilitada para Claude, enrutebridge.claudeusercontent.com a través del mismo proxy de salida que claude.ai y api.anthropic.com, por ejemplo colocándolo en el mismo segmento de aplicación de Zscaler o política de dirección de Netskope. Si no puede enrutarlo de esa manera, agregue la dirección de salida que su proxy usa para ese host a la lista de permitidos de IP de su organización, pero solo cuando esa dirección está dedicada a su organización: un rango de salida de proxy compartido también admite a otros clientes del proveedor de proxy.
Anthropic verifica las conexiones a bridge.claudeusercontent.com contra la lista de permitidos de IP de su organización usando la dirección desde la que llegan. Si su proxy envía tráfico para ese host a través de una dirección que no está en esa lista de permitidos, Claude Code no puede conectarse a la extensión Claude en Chrome aunque el resto de Claude Code funcione.
Listas de permitidos de GitHub y firewalls
Claude Code en la web en entornos alojados por Anthropic y Code Review se conectan a sus repositorios desde infraestructura administrada por Anthropic; las sesiones en un entorno autohospedado se conectan desde dentro de su red, a menos que el ejecutor opte por el proxy git de Anthropic, que obtiene desde el lado de Anthropic. Si su organización de GitHub Enterprise Cloud restringe el acceso por dirección IP, habilite herencia de lista de permitidos de IP para aplicaciones GitHub instaladas y también agregue una entrada de lista de permitidos para las direcciones IP salientes de Anthropic. La herencia cubre solo las solicitudes que realiza la aplicación GitHub de Claude como instalación, no las solicitudes que realiza en nombre de sus usuarios. Para otros firewalls, consulte las direcciones IP de la API de Anthropic. Para instancias de GitHub Enterprise Server autohospedadas detrás de un firewall, agregue a la lista de permitidos las direcciones IP salientes de Anthropic para que la infraestructura de Anthropic pueda alcanzar su host GHES para clonar repositorios y publicar comentarios de revisión. Las sesiones en un entorno autohospedado alcanzan su host GHES desde dentro de su red en su lugar, por lo que esa exposición se aplica solo a sesiones alojadas por Anthropic, a flujos previos a la sesión alojados como el selector de repositorio, y a ejecutores autohospedados que opten por el proxy git de Anthropic, que obtiene desde el lado de Anthropic. Para un host GHES que solo es enrutable dentro de su red, el conector SCM lleva los flujos previos a la sesión alojados sobre una conexión saliente en su lugar, por lo que la lista de permitidos no es necesaria para ellos.Escritorio y claude.ai
La tabla anterior cubre la CLI independiente. La aplicación Claude Desktop y claude.ai en un navegador cargan su código de aplicación y contenido del usuario desde hosts CDN adicionales de Anthropic, incluidosassets-proxy.anthropic.com y los otros orígenes *.claudeusercontent.com que sirven artefactos en esas aplicaciones. Permitir claude.ai mientras se bloquean esos hosts produce una página en blanco en lugar de un error. Consulte requisitos de acceso a la red en la página de Desktop.
Un artefacto que carga una fuente tipográfica desde Google Fonts también solicita fonts.googleapis.com y fonts.gstatic.com. Ambos hosts son opcionales. Si los bloquea, los artefactos se renderizan en fuentes tipográficas alternativas. Bloquee con un rechazo rápido en lugar de una caída silenciosa para que la solicitud de fuente falle inmediatamente en lugar de retrasar el primer renderizado de la página.
Los artefactos también pueden cargar bibliotecas de JavaScript, como React o un paquete de gráficos, desde cdnjs.cloudflare.com, cdn.jsdelivr.net, cdn.tailwindcss.com, code.jquery.com y unpkg.com, y desde ningún otro host externo. Si bloquea esos hosts, las partes de un artefacto que dependen de una biblioteca no funcionan, y a diferencia de una fuente bloqueada, una biblioteca bloqueada no tiene alternativa. Bloquee con un rechazo rápido aquí también, para que una solicitud de biblioteca bloqueada falle de inmediato en lugar de colgarse hasta que se agote el tiempo de espera.