import{X3 as S}from"./cli-0.5.3-3k22nqvy.mjs";import{D5 as B,V5 as LG}from"./cli-0.5.3-vpcrbd8n.mjs";import{Z5 as YG}from"./cli-0.5.3-jdw3ajfv.mjs";import{Dfa as o,Nfa as $,Qfa as d,zfa as E}from"./cli-0.5.3-n3cxyxpg.mjs";import{$fa as u,aga as BG,kga as r}from"./cli-0.5.3-7wdgps7z.mjs";import{Fma as q,Gma as f}from"./cli-0.5.3-2dk1sk8w.mjs";import{Tma as QG,Xma as F,Yma as FG}from"./cli-0.5.3-0df3r78b.mjs";function CG(){H.cache.clear?.(),$("Cleared CA certificates cache")}var H;var l=F(()=>{f();d();r();o();H=q(()=>{let G=u("--use-system-ca")||u("--use-openssl-ca"),J=process.env.NODE_EXTRA_CA_CERTS;if($(`CA certs: useSystemCA=${G}, extraCertsPath=${J}`),!G&&!J)return;let K=FG("tls"),Q=[];if(G){let Y=K.getCACertificates,Z=Y?.("system");if(Z&&Z.length>0)Q.push(...Z),$(`CA certs: Loaded ${Q.length} system CA certificates (--use-system-ca)`);else if(!Y&&!J){$("CA certs: --use-system-ca set but system CA API unavailable, deferring to runtime");return}else Q.push(...K.rootCertificates),$(`CA certs: Loaded ${Q.length} bundled root certificates as base (--use-system-ca fallback)`)}else Q.push(...K.rootCertificates),$(`CA certs: Loaded ${Q.length} bundled root certificates as base`);if(J)try{let Y=E().readFileSync(J,{encoding:"utf8"});Q.push(Y),$(`CA certs: Appended extra certificates from NODE_EXTRA_CA_CERTS (${J})`)}catch(Y){$(`CA certs: Failed to read NODE_EXTRA_CA_CERTS file (${J}): ${Y}`,{level:"error"})}return Q.length>0?Q:void 0})});import{Agent as NG}from"https";function lG(){let G=j(),J=H();if(!G&&!J)return;return{...G,...J&&{ca:J}}}function O(){let G=j(),J=H();if(!G&&!J)return{};let K={...G,...J&&{ca:J}};if(typeof Bun<"u")return{tls:K};return $("TLS: Created undici agent with custom certificates"),{dispatcher:new(S()).Agent({connect:{cert:K.cert,key:K.key,passphrase:K.passphrase,...K.ca&&{ca:K.ca}},pipelining:1})}}function cG(){j.cache.clear?.(),D.cache.clear?.(),$("Cleared mTLS configuration cache")}function gG(){if(!j())return;if(process.env.NODE_EXTRA_CA_CERTS)$("NODE_EXTRA_CA_CERTS detected - Node.js will automatically append to built-in CAs")}var j,D;var t=F(()=>{f();l();d();o();j=q(()=>{let G={};if(process.env.CLAUDE_CODE_CLIENT_CERT)try{G.cert=E().readFileSync(process.env.CLAUDE_CODE_CLIENT_CERT,{encoding:"utf8"}),$("mTLS: Loaded client certificate from CLAUDE_CODE_CLIENT_CERT")}catch(J){$(`mTLS: Failed to load client certificate: ${J}`,{level:"error"})}if(process.env.CLAUDE_CODE_CLIENT_KEY)try{G.key=E().readFileSync(process.env.CLAUDE_CODE_CLIENT_KEY,{encoding:"utf8"}),$("mTLS: Loaded client key from CLAUDE_CODE_CLIENT_KEY")}catch(J){$(`mTLS: Failed to load client key: ${J}`,{level:"error"})}if(process.env.CLAUDE_CODE_CLIENT_KEY_PASSPHRASE)G.passphrase=process.env.CLAUDE_CODE_CLIENT_KEY_PASSPHRASE,$("mTLS: Using client key passphrase");if(Object.keys(G).length===0)return;return G}),D=q(()=>{let G=j(),J=H();if(!G&&!J)return;let K={...G,...J&&{ca:J},keepAlive:!0};return $("mTLS: Creating HTTPS agent with custom certificates"),new NG(K)})});var e=()=>{};import*as GG from"net";import*as JG from"http";import{Agent as TG}from"https";var V,c;var KG=F(()=>{e();V=Symbol("AgentBaseInternalState");c=class c extends JG.Agent{constructor(G){super(G);this[V]={}}isSecureEndpoint(G){if(G){if(typeof G.secureEndpoint==="boolean")return G.secureEndpoint;if(typeof G.protocol==="string")return G.protocol==="https:"}let{stack:J}=Error();if(typeof J!=="string")return!1;return J.split(`
`).some((K)=>K.indexOf("(https.js:")!==-1||K.indexOf("node:https:")!==-1)}incrementSockets(G){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;if(!this.sockets[G])this.sockets[G]=[];let J=new GG.Socket({writable:!1});return this.sockets[G].push(J),this.totalSocketCount++,J}decrementSockets(G,J){if(!this.sockets[G]||J===null)return;let K=this.sockets[G],Q=K.indexOf(J);if(Q!==-1){if(K.splice(Q,1),this.totalSocketCount--,K.length===0)delete this.sockets[G]}}getName(G){if(this.isSecureEndpoint(G))return TG.prototype.getName.call(this,G);return super.getName(G)}createSocket(G,J,K){let Q={...J,secureEndpoint:this.isSecureEndpoint(J)},Y=this.getName(Q),Z=this.incrementSockets(Y);Promise.resolve().then(()=>this.connect(G,Q)).then((w)=>{if(this.decrementSockets(Y,Z),typeof w.addRequest==="function")try{return w.addRequest(G,Q)}catch(W){return K(W)}this[V].currentSocket=w,super.createSocket(G,J,K)},(w)=>{this.decrementSockets(Y,Z),K(w)})}createConnection(){let G=this[V].currentSocket;if(this[V].currentSocket=void 0,!G)throw Error("No socket was returned in the `connect()` function");return G}get defaultPort(){return this[V].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(G){if(this[V])this[V].defaultPort=G}get protocol(){return this[V].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(G){if(this[V])this[V].protocol=G}}});function $G(G){return new Promise((J,K)=>{let Q=0,Y=[];function Z(){let z=G.read();if(z)h(z);else G.once("readable",Z)}function w(){G.removeListener("end",W),G.removeListener("error",M),G.removeListener("readable",Z)}function W(){w(),b("onend"),K(Error("Proxy connection ended before receiving CONNECT response"))}function M(z){w(),b("onerror %o",z),K(z)}function h(z){Y.push(z),Q+=z.length;let X=Buffer.concat(Y,Q),i=X.indexOf(`\r
\r
`);if(i===-1){b("have not received end of HTTP headers yet..."),Z();return}let n=X.slice(0,i).toString("ascii").split(`\r
`),C=n.shift();if(!C)return G.destroy(),K(Error("No header received from proxy CONNECT response"));let s=C.split(" "),UG=+s[1],_G=s.slice(2).join(" "),T={};for(let I of n){if(!I)continue;let x=I.indexOf(":");if(x===-1)return G.destroy(),K(Error(`Invalid header from proxy CONNECT response: "${I}"`));let m=I.slice(0,x).toLowerCase(),y=I.slice(x+1).trimStart(),R=T[m];if(typeof R==="string")T[m]=[R,y];else if(Array.isArray(R))R.push(y);else T[m]=y}b("got proxy server response: %o %o",C,T),w(),J({connect:{statusCode:UG,statusText:_G,headers:T},buffered:X})}G.on("error",M),G.on("end",W),Z()})}var ZG,b;var WG=F(()=>{ZG=QG(YG(),1),b=ZG.default("https-proxy-agent:parse-proxy-response")});import*as U from"net";import*as g from"tls";import IG from"assert";import{URL as EG}from"url";function SG(G){G.resume()}function XG(G,...J){let K={},Q;for(Q in G)if(!J.includes(Q))K[Q]=G[Q];return K}var zG,L,wG=(G)=>{if(G.servername===void 0&&G.host&&!U.isIP(G.host))return{...G,servername:G.host};return G},A;var VG=F(()=>{KG();WG();zG=QG(YG(),1),L=zG.default("https-proxy-agent");A=class A extends c{constructor(G,J){super(J);this.options={path:void 0},this.proxy=typeof G==="string"?new EG(G):G,this.proxyHeaders=J?.headers??{},L("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let K=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),Q=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...J?XG(J,"headers"):null,host:K,port:Q}}async connect(G,J){let{proxy:K}=this;if(!J.host)throw TypeError('No "host" provided');let Q;if(K.protocol==="https:")L("Creating `tls.Socket`: %o",this.connectOpts),Q=g.connect(wG(this.connectOpts));else L("Creating `net.Socket`: %o",this.connectOpts),Q=U.connect(this.connectOpts);let Y=typeof this.proxyHeaders==="function"?this.proxyHeaders():{...this.proxyHeaders},Z=U.isIPv6(J.host)?`[${J.host}]`:J.host,w=`CONNECT ${Z}:${J.port} HTTP/1.1\r
`;if(K.username||K.password){let X=`${decodeURIComponent(K.username)}:${decodeURIComponent(K.password)}`;Y["Proxy-Authorization"]=`Basic ${Buffer.from(X).toString("base64")}`}if(Y.Host=`${Z}:${J.port}`,!Y["Proxy-Connection"])Y["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close";for(let X of Object.keys(Y))w+=`${X}: ${Y[X]}\r
`;let W=$G(Q);Q.write(`${w}\r
`);let{connect:M,buffered:h}=await W;if(G.emit("proxyConnect",M),this.emit("proxyConnect",M,G),M.statusCode===200){if(G.once("socket",SG),J.secureEndpoint)return L("Upgrading socket connection to TLS"),g.connect({...XG(wG(J),"host","path","port"),socket:Q});return Q}Q.destroy();let z=new U.Socket({writable:!1});return z.readable=!0,G.once("socket",(X)=>{L("Replaying proxy buffer for failed request"),IG(X.listenerCount("data")>0),X.push(h),X.push(null)}),z}};A.protocols=["http","https"]});function XJ(G){a.set(G,!0),MG(G)}function MG(G){jG.cache.delete?.(G)}function zJ(G){qG.set(G,!0),MG(G)}function RG(G){return qG.get(G)===!0}function DG(G){switch(G.family){case 0:case 4:case 6:return G.family;case"IPv6":return 6;case"IPv4":case void 0:return 4;default:throw Error(`Unsupported address family: ${G.family}`)}}function N(G=process.env){return G.https_proxy||G.HTTPS_PROXY||G.http_proxy||G.HTTP_PROXY}function OG(G=process.env){return G.no_proxy||G.NO_PROXY}function P(G,J=OG()){if(!J)return!1;if(J==="*")return!0;try{let K=new URL(G),Q=K.hostname.toLowerCase(),Y=K.port||(K.protocol==="https:"||K.protocol==="wss:"?"443":"80"),Z=`${Q}:${Y}`;return J.split(/[,\s]+/).filter(Boolean).some((W)=>{if(W=W.toLowerCase().trim(),W.includes(":"))return Z===W;if(W.startsWith(".")){let M=W;return Q===W.substring(1)||Q.endsWith(M)}return Q===W})}catch{return!1}}function v(G,J={}){let K=j(),Q=H(),Y={...K&&{cert:K.cert,key:K.key,passphrase:K.passphrase},...Q&&{ca:Q}};if(BG(process.env.CLAUDE_CODE_PROXY_RESOLVES_HOSTS))Y.lookup=(Z,w,W)=>{W(null,Z,DG(w))};return new A(G,{...Y,...J})}function VJ(G={}){let J=N(),K=D(),Q=B.create({proxy:!1});if(!J){if(K)Q.defaults.httpsAgent=K;return Q}let Y=v(J,G);return Q.interceptors.request.use((Z)=>{if(Z.url&&P(Z.url))Z.httpsAgent=K,Z.httpAgent=K;else Z.httpsAgent=Y,Z.httpAgent=Y;return Z}),Q}function BJ(G){let J=N();if(!J)return;if(P(G))return;return v(J)}function MJ(G){let J=N();if(!J)return;if(P(G))return;return J}function qJ(G){let J=G?.provider&&a.get(G.provider)?{keepalive:!1}:{};if(G?.forAnthropicAPI){let Y=process.env.ANTHROPIC_UNIX_SOCKET;if(Y&&typeof Bun<"u")return{...J,unix:Y}}let K=N();if(K){if(typeof Bun<"u")return{...J,proxy:K,...O()};return{...J,dispatcher:p(K)}}let Q=O();if(G?.provider&&!Q.dispatcher)return{...J,...Q,dispatcher:jG(G.provider)};return{...J,...Q}}function HJ(){let G=N(),J=D();if(k!==void 0)B.interceptors.request.eject(k),k=void 0;if(B.defaults.proxy=void 0,B.defaults.httpAgent=void 0,B.defaults.httpsAgent=void 0,G){B.defaults.proxy=!1;let K=v(G);k=B.interceptors.request.use((Q)=>{if(Q.url&&P(Q.url))if(J)Q.httpsAgent=J,Q.httpAgent=J;else delete Q.httpsAgent,delete Q.httpAgent;else Q.httpsAgent=K,Q.httpAgent=K;return Q}),S().setGlobalDispatcher(p(G))}else if(J){B.defaults.httpsAgent=J;let K=O();if(K.dispatcher)S().setGlobalDispatcher(K.dispatcher)}}async function jJ(){let G=N();if(!G)return{};let[{NodeHttpHandler:J},{defaultProvider:K}]=await Promise.all([import("./index-0.5.3-n6k1kqbs.mjs"),import("./index-0.5.3-2t774sxc.mjs")]),Q=v(G),Y=new J({httpAgent:Q,httpsAgent:Q});return{requestHandler:Y,credentials:K({clientConfig:{requestHandler:Y}})}}function UJ(){p.cache.clear?.(),$("Cleared proxy agent cache")}var a,qG,p,_,HG,bG,jG,k;var AG=F(()=>{LG();VG();f();l();d();r();t();a=new Map;qG=new Map;p=q((G)=>{let J=S(),K=j(),Q=H(),Y={httpProxy:G,httpsProxy:G,noProxy:process.env.NO_PROXY||process.env.no_proxy};if(K||Q){let Z={...K&&{cert:K.cert,key:K.key,passphrase:K.passphrase},...Q&&{ca:Q}};Y.connect=Z,Y.requestTls=Z}return new J.EnvHttpProxyAgent(Y)}),_={connections:12,keepAliveTimeout:30000,pipelining:1},HG={firstParty:{..._,allowH2:!0},openai:{..._,allowH2:!0},gemini:{..._,allowH2:!0},mistral:{..._,allowH2:!0},github:{..._,allowH2:!0},codex:{..._,allowH2:!0},"nvidia-nim":{..._,allowH2:!0},minimax:{..._,allowH2:!0}},bG=HG.openai,jG=q((G)=>{let J=S(),K=HG[G]??bG,Q={...K,allowH2:K.allowH2&&!RG(G),keepAliveTimeout:a.get(G)?100:K.keepAliveTimeout};return new J.Agent(Q)})});
export{CG as A3,l as B3,j as C3,lG as D3,cG as E3,gG as F3,t as G3,XJ as H3,zJ as I3,RG as J3,N as K3,P as L3,VJ as M3,BJ as N3,MJ as O3,qJ as P3,HJ as Q3,jJ as R3,UJ as S3,AG as T3};
