diff --git a/claude/releases/v2.1.90/cli.js b/claude/releases/v2.1.90/cli.js index 863d5dc..411e4be 100755 --- a/claude/releases/v2.1.90/cli.js +++ b/claude/releases/v2.1.90/cli.js @@ -451,7 +451,7 @@ To learn more about Universe Domain retrieval, visit: https://cloud.google.com/compute/docs/metadata/predefined-metadata-keys`};class Sk1{get isGCE(){return this.checkIsGCE}constructor(q={}){if(E16.add(this),this.checkIsGCE=void 0,this.jsonContent=null,this.cachedCredential=null,CG6.set(this,null),this.clientOptions={},this._cachedProjectId=q.projectId||null,this.cachedCredential=q.authClient||null,this.keyFilename=q.keyFilename||q.keyFile,this.scopes=q.scopes,this.clientOptions=q.clientOptions||{},this.jsonContent=q.credentials||null,this.apiKey=q.apiKey||this.clientOptions.apiKey||null,this.apiKey&&(this.jsonContent||this.clientOptions.credentials))throw RangeError(JZ.GoogleAuthExceptionMessages.API_KEY_WITH_CREDENTIALS);if(q.universeDomain)this.clientOptions.universeDomain=q.universeDomain}setGapicJWTValues(q){q.defaultServicePath=this.defaultServicePath,q.useJWTAccessWithScope=this.useJWTAccessWithScope,q.defaultScopes=this.defaultScopes}getProjectId(q){if(q)this.getProjectIdAsync().then((K)=>q(null,K),q);else return this.getProjectIdAsync()}async getProjectIdOptional(){try{return await this.getProjectId()}catch(q){if(q instanceof Error&&q.message===JZ.GoogleAuthExceptionMessages.NO_PROJECT_ID_FOUND)return null;else throw q}}async findAndCacheProjectId(){let q=null;if(q||(q=await this.getProductionProjectId()),q||(q=await this.getFileProjectId()),q||(q=await this.getDefaultServiceProjectId()),q||(q=await this.getGCEProjectId()),q||(q=await this.getExternalAccountClientProjectId()),q)return this._cachedProjectId=q,q;else throw Error(JZ.GoogleAuthExceptionMessages.NO_PROJECT_ID_FOUND)}async getProjectIdAsync(){if(this._cachedProjectId)return this._cachedProjectId;if(!this._findProjectIdPromise)this._findProjectIdPromise=this.findAndCacheProjectId();return this._findProjectIdPromise}async getUniverseDomainFromMetadataServer(){var q;let K;try{K=await bc6.universe("universe-domain"),K||(K=hk1.DEFAULT_UNIVERSE)}catch(_){if(_&&((q=_===null||_===void 0?void 0:_.response)===null||q===void 0?void 0:q.status)===404)K=hk1.DEFAULT_UNIVERSE;else throw _}return K}async getUniverseDomain(){let q=(0,wbq.originalOrCamelOptions)(this.clientOptions).get("universe_domain");try{q!==null&&q!==void 0||(q=(await this.getClient()).universeDomain)}catch(K){q!==null&&q!==void 0||(q=hk1.DEFAULT_UNIVERSE)}return q}getAnyScopes(){return this.scopes||this.defaultScopes}getApplicationDefault(q={},K){let _;if(typeof q==="function")K=q;else _=q;if(K)this.getApplicationDefaultAsync(_).then((z)=>K(null,z.credential,z.projectId),K);else return this.getApplicationDefaultAsync(_)}async getApplicationDefaultAsync(q={}){if(this.cachedCredential)return await y16(this,E16,"m",bG6).call(this,this.cachedCredential,null);let K;if(K=await this._tryGetApplicationCredentialsFromEnvironmentVariable(q),K){if(K instanceof RG6.JWT)K.scopes=this.scopes;else if(K instanceof xc6.BaseExternalAccountClient)K.scopes=this.getAnyScopes();return await y16(this,E16,"m",bG6).call(this,K)}if(K=await this._tryGetApplicationCredentialsFromWellKnownFile(q),K){if(K instanceof RG6.JWT)K.scopes=this.scopes;else if(K instanceof xc6.BaseExternalAccountClient)K.scopes=this.getAnyScopes();return await y16(this,E16,"m",bG6).call(this,K)}if(await this._checkIsGCE())return q.scopes=this.getAnyScopes(),await y16(this,E16,"m",bG6).call(this,new W6_.Compute(q));throw Error(JZ.GoogleAuthExceptionMessages.NO_ADC_FOUND)}async _checkIsGCE(){if(this.checkIsGCE===void 0)this.checkIsGCE=bc6.getGCPResidency()||await bc6.isAvailable();return this.checkIsGCE}async _tryGetApplicationCredentialsFromEnvironmentVariable(q){let K=process.env.GOOGLE_APPLICATION_CREDENTIALS||process.env.google_application_credentials;if(!K||K.length===0)return null;try{return this._getApplicationCredentialsFromFilePath(K,q)}catch(_){if(_ instanceof Error)_.message=`Unable to read the credential file specified by the GOOGLE_APPLICATION_CREDENTIALS environment variable: ${_.message}`;throw _}}async _tryGetApplicationCredentialsFromWellKnownFile(q){let K=null;if(this._isWindows())K=process.env.APPDATA;else{let z=process.env.HOME;if(z)K=Rk1.join(z,".config")}if(K){if(K=Rk1.join(K,"gcloud","application_default_credentials.json"),!Ic6.existsSync(K))K=null}if(!K)return null;return await this._getApplicationCredentialsFromFilePath(K,q)}async _getApplicationCredentialsFromFilePath(q,K={}){if(!q||q.length===0)throw Error("The file path is invalid.");try{if(q=Ic6.realpathSync(q),!Ic6.lstatSync(q).isFile())throw Error()}catch(z){if(z instanceof Error)z.message=`The file at ${q} does not exist, or it is not a file. ${z.message}`;throw z}let _=Ic6.createReadStream(q);return this.fromStream(_,K)}fromImpersonatedJSON(q){var K,_,z,Y;if(!q)throw Error("Must pass in a JSON object containing an impersonated refresh token");if(q.type!==SG6.IMPERSONATED_ACCOUNT_TYPE)throw Error(`The incoming JSON object does not have the "${SG6.IMPERSONATED_ACCOUNT_TYPE}" type`);if(!q.source_credentials)throw Error("The incoming JSON object does not contain a source_credentials field");if(!q.service_account_impersonation_url)throw Error("The incoming JSON object does not contain a service_account_impersonation_url field");let $=this.fromJSON(q.source_credentials);if(((K=q.service_account_impersonation_url)===null||K===void 0?void 0:K.length)>256)throw RangeError(`Target principal is too long: ${q.service_account_impersonation_url}`);let O=(z=(_=/(?[^/]+):(generateAccessToken|generateIdToken)$/.exec(q.service_account_impersonation_url))===null||_===void 0?void 0:_.groups)===null||z===void 0?void 0:z.target;if(!O)throw RangeError(`Cannot extract target principal from ${q.service_account_impersonation_url}`);let A=(Y=this.getAnyScopes())!==null&&Y!==void 0?Y:[];return new SG6.Impersonated({...q,sourceClient:$,targetPrincipal:O,targetScopes:Array.isArray(A)?A:[A]})}fromJSON(q,K={}){let _,z=(0,wbq.originalOrCamelOptions)(K).get("universe_domain");if(q.type===Obq.USER_REFRESH_ACCOUNT_TYPE)_=new Obq.UserRefreshClient(K),_.fromJSON(q);else if(q.type===SG6.IMPERSONATED_ACCOUNT_TYPE)_=this.fromImpersonatedJSON(q);else if(q.type===xc6.EXTERNAL_ACCOUNT_TYPE)_=Z6_.ExternalAccountClient.fromJSON(q,K),_.scopes=this.getAnyScopes();else if(q.type===Abq.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE)_=new Abq.ExternalAccountAuthorizedUserClient(q,K);else K.scopes=this.scopes,_=new RG6.JWT(K),this.setGapicJWTValues(_),_.fromJSON(q);if(z)_.universeDomain=z;return _}_cacheClientFromJSON(q,K){let _=this.fromJSON(q,K);return this.jsonContent=q,this.cachedCredential=_,_}fromStream(q,K={},_){let z={};if(typeof K==="function")_=K;else z=K;if(_)this.fromStreamAsync(q,z).then((Y)=>_(null,Y),_);else return this.fromStreamAsync(q,z)}fromStreamAsync(q,K){return new Promise((_,z)=>{if(!q)throw Error("Must pass in a stream containing the Google auth settings.");let Y=[];q.setEncoding("utf8").on("error",z).on("data",($)=>Y.push($)).on("end",()=>{try{try{let $=JSON.parse(Y.join("")),O=this._cacheClientFromJSON($,K);return _(O)}catch($){if(!this.keyFilename)throw $;let O=new RG6.JWT({...this.clientOptions,keyFile:this.keyFilename});return this.cachedCredential=O,this.setGapicJWTValues(O),_(O)}}catch($){return z($)}})})}fromAPIKey(q,K={}){return new RG6.JWT({...K,apiKey:q})}_isWindows(){let q=M6_.platform();if(q&&q.length>=3){if(q.substring(0,3).toLowerCase()==="win")return!0}return!1}async getDefaultServiceProjectId(){return new Promise((q)=>{(0,J6_.exec)("gcloud config config-helper --format json",(K,_)=>{if(!K&&_)try{let z=JSON.parse(_).configuration.properties.core.project;q(z);return}catch(z){}q(null)})})}getProductionProjectId(){return process.env.GCLOUD_PROJECT||process.env.GOOGLE_CLOUD_PROJECT||process.env.gcloud_project||process.env.google_cloud_project}async getFileProjectId(){if(this.cachedCredential)return this.cachedCredential.projectId;if(this.keyFilename){let K=await this.getClient();if(K&&K.projectId)return K.projectId}let q=await this._tryGetApplicationCredentialsFromEnvironmentVariable();if(q)return q.projectId;else return null}async getExternalAccountClientProjectId(){if(!this.jsonContent||this.jsonContent.type!==xc6.EXTERNAL_ACCOUNT_TYPE)return null;return await(await this.getClient()).getProjectId()}async getGCEProjectId(){try{return await bc6.project("project-id")}catch(q){return null}}getCredentials(q){if(q)this.getCredentialsAsync().then((K)=>q(null,K),q);else return this.getCredentialsAsync()}async getCredentialsAsync(){let q=await this.getClient();if(q instanceof SG6.Impersonated)return{client_email:q.getTargetPrincipal()};if(q instanceof xc6.BaseExternalAccountClient){let K=q.getServiceAccountEmail();if(K)return{client_email:K,universe_domain:q.universeDomain}}if(this.jsonContent)return{client_email:this.jsonContent.client_email,private_key:this.jsonContent.private_key,universe_domain:this.jsonContent.universe_domain};if(await this._checkIsGCE()){let[K,_]=await Promise.all([bc6.instance("service-accounts/default/email"),this.getUniverseDomain()]);return{client_email:K,universe_domain:_}}throw Error(JZ.GoogleAuthExceptionMessages.NO_CREDENTIALS_FOUND)}async getClient(){if(this.cachedCredential)return this.cachedCredential;$bq(this,CG6,y16(this,CG6,"f")||y16(this,E16,"m",jbq).call(this),"f");try{return await y16(this,CG6,"f")}finally{$bq(this,CG6,null,"f")}}async getIdTokenClient(q){let K=await this.getClient();if(!("fetchIdToken"in K))throw Error("Cannot fetch ID token in this environment, use GCE or set the GOOGLE_APPLICATION_CREDENTIALS environment variable to a service account credentials JSON file.");return new D6_.IdTokenClient({targetAudience:q,idTokenProvider:K})}async getAccessToken(){return(await(await this.getClient()).getAccessToken()).token}async getRequestHeaders(q){return(await this.getClient()).getRequestHeaders(q)}async authorizeRequest(q){q=q||{};let K=q.url||q.uri,z=await(await this.getClient()).getRequestHeaders(K);return q.headers=Object.assign(q.headers||{},z),q}async request(q){return(await this.getClient()).request(q)}getEnv(){return(0,f6_.getEnv)()}async sign(q,K){let _=await this.getClient(),z=await this.getUniverseDomain();if(K=K||`https://iamcredentials.${z}/v1/projects/-/serviceAccounts/`,_ instanceof SG6.Impersonated)return(await _.sign(q)).signedBlob;let Y=(0,X6_.createCrypto)();if(_ instanceof RG6.JWT&&_.key)return await Y.sign(_.key,q);let $=await this.getCredentials();if(!$.client_email)throw Error("Cannot sign data without `client_email`.");return this.signBlob(Y,$.client_email,q,K)}async signBlob(q,K,_,z){let Y=new URL(z+`${K}:signBlob`);return(await this.request({method:"POST",url:Y.href,data:{payload:q.encodeBase64StringUtf8(_)},retry:!0,retryConfig:{httpMethodsToRetry:["POST"]}})).data.signedBlob}}JZ.GoogleAuth=Sk1;CG6=new WeakMap,E16=new WeakSet,bG6=async function(K,_=process.env.GOOGLE_CLOUD_QUOTA_PROJECT||null){let z=await this.getProjectIdOptional();if(_)K.quotaProjectId=_;return this.cachedCredential=K,{credential:K,projectId:z}},jbq=async function(){if(this.jsonContent)return this._cacheClientFromJSON(this.jsonContent,this.clientOptions);else if(this.keyFilename){let K=Rk1.resolve(this.keyFilename),_=Ic6.createReadStream(K);return await this.fromStreamAsync(_,this.clientOptions)}else if(this.apiKey){let K=await this.fromAPIKey(this.apiKey,this.clientOptions);K.scopes=this.scopes;let{credential:_}=await y16(this,E16,"m",bG6).call(this,K);return _}else{let{credential:K}=await this.getApplicationDefaultAsync(this.clientOptions);return K}};Sk1.DefaultTransporter=P6_.DefaultTransporter});var Pbq=p((Mbq)=>{Object.defineProperty(Mbq,"__esModule",{value:!0});Mbq.IAMAuth=void 0;class Jbq{constructor(q,K){this.selector=q,this.token=K,this.selector=q,this.token=K}getRequestHeaders(){return{"x-goog-iam-authority-selector":this.selector,"x-goog-iam-authorization-token":this.token}}}Mbq.IAMAuth=Jbq});var Zbq=p((Dbq)=>{Object.defineProperty(Dbq,"__esModule",{value:!0});Dbq.DownscopedClient=Dbq.EXPIRATION_TIME_OFFSET=Dbq.MAX_ACCESS_BOUNDARY_RULES_COUNT=void 0;var G6_=U6("stream"),v6_=SF(),T6_=eT1(),k6_="urn:ietf:params:oauth:grant-type:token-exchange",V6_="urn:ietf:params:oauth:token-type:access_token",N6_="urn:ietf:params:oauth:token-type:access_token";Dbq.MAX_ACCESS_BOUNDARY_RULES_COUNT=10;Dbq.EXPIRATION_TIME_OFFSET=300000;class Wbq extends v6_.AuthClient{constructor(q,K,_,z){super({..._,quotaProjectId:z});if(this.authClient=q,this.credentialAccessBoundary=K,K.accessBoundary.accessBoundaryRules.length===0)throw Error("At least one access boundary rule needs to be defined.");else if(K.accessBoundary.accessBoundaryRules.length>Dbq.MAX_ACCESS_BOUNDARY_RULES_COUNT)throw Error(`The provided access boundary has more than ${Dbq.MAX_ACCESS_BOUNDARY_RULES_COUNT} access boundary rules.`);for(let Y of K.accessBoundary.accessBoundaryRules)if(Y.availablePermissions.length===0)throw Error("At least one permission should be defined in access boundary rules.");this.stsCredential=new T6_.StsCredentials(`https://sts.${this.universeDomain}/v1/token`),this.cachedDownscopedAccessToken=null}setCredentials(q){if(!q.expiry_date)throw Error("The access token expiry_date field is missing in the provided credentials.");super.setCredentials(q),this.cachedDownscopedAccessToken=q}async getAccessToken(){if(!this.cachedDownscopedAccessToken||this.isExpired(this.cachedDownscopedAccessToken))await this.refreshAccessTokenAsync();return{token:this.cachedDownscopedAccessToken.access_token,expirationTime:this.cachedDownscopedAccessToken.expiry_date,res:this.cachedDownscopedAccessToken.res}}async getRequestHeaders(){let K={Authorization:`Bearer ${(await this.getAccessToken()).token}`};return this.addSharedMetadataHeaders(K)}request(q,K){if(K)this.requestAsync(q).then((_)=>K(null,_),(_)=>{return K(_,_.response)});else return this.requestAsync(q)}async requestAsync(q,K=!1){let _;try{let z=await this.getRequestHeaders();if(q.headers=q.headers||{},z&&z["x-goog-user-project"])q.headers["x-goog-user-project"]=z["x-goog-user-project"];if(z&&z.Authorization)q.headers.Authorization=z.Authorization;_=await this.transporter.request(q)}catch(z){let Y=z.response;if(Y){let $=Y.status,O=Y.config.data instanceof G6_.Readable;if(!K&&($===401||$===403)&&!O&&this.forceRefreshOnFailure)return await this.refreshAccessTokenAsync(),await this.requestAsync(q,!0)}throw z}return _}async refreshAccessTokenAsync(){var q;let K=(await this.authClient.getAccessToken()).token,_={grantType:k6_,requestedTokenType:V6_,subjectToken:K,subjectTokenType:N6_},z=await this.stsCredential.exchangeToken(_,void 0,this.credentialAccessBoundary),Y=((q=this.authClient.credentials)===null||q===void 0?void 0:q.expiry_date)||null,$=z.expires_in?new Date().getTime()+z.expires_in*1000:Y;return this.cachedDownscopedAccessToken={access_token:z.access_token,expiry_date:$,res:z.res},this.credentials={},Object.assign(this.credentials,this.cachedDownscopedAccessToken),delete this.credentials.res,this.emit("tokens",{refresh_token:null,expiry_date:this.cachedDownscopedAccessToken.expiry_date,access_token:this.cachedDownscopedAccessToken.access_token,token_type:"Bearer",id_token:null}),this.cachedDownscopedAccessToken}isExpired(q){let K=new Date().getTime();return q.expiry_date?K>=q.expiry_date-this.eagerRefreshThresholdMillis:!1}}Dbq.DownscopedClient=Wbq});var Tbq=p((Gbq)=>{Object.defineProperty(Gbq,"__esModule",{value:!0});Gbq.PassThroughClient=void 0;var E6_=SF();class bk1 extends E6_.AuthClient{async request(q){return this.transporter.request(q)}async getAccessToken(){return{}}async getRequestHeaders(){return{}}}Gbq.PassThroughClient=bk1;var L6_=new bk1;L6_.getAccessToken()});var Df8=p((vw)=>{Object.defineProperty(vw,"__esModule",{value:!0});vw.GoogleAuth=vw.auth=vw.DefaultTransporter=vw.PassThroughClient=vw.ExecutableError=vw.PluggableAuthClient=vw.DownscopedClient=vw.BaseExternalAccountClient=vw.ExternalAccountClient=vw.IdentityPoolClient=vw.AwsRequestSigner=vw.AwsClient=vw.UserRefreshClient=vw.LoginTicket=vw.ClientAuthentication=vw.OAuth2Client=vw.CodeChallengeMethod=vw.Impersonated=vw.JWT=vw.JWTAccess=vw.IdTokenClient=vw.IAMAuth=vw.GCPEnv=vw.Compute=vw.DEFAULT_UNIVERSE=vw.AuthClient=vw.gaxios=vw.gcpMetadata=void 0;var kbq=Hbq();Object.defineProperty(vw,"GoogleAuth",{enumerable:!0,get:function(){return kbq.GoogleAuth}});vw.gcpMetadata=Nc6();vw.gaxios=Gu();var Vbq=SF();Object.defineProperty(vw,"AuthClient",{enumerable:!0,get:function(){return Vbq.AuthClient}});Object.defineProperty(vw,"DEFAULT_UNIVERSE",{enumerable:!0,get:function(){return Vbq.DEFAULT_UNIVERSE}});var h6_=gT1();Object.defineProperty(vw,"Compute",{enumerable:!0,get:function(){return h6_.Compute}});var R6_=UT1();Object.defineProperty(vw,"GCPEnv",{enumerable:!0,get:function(){return R6_.GCPEnv}});var S6_=Pbq();Object.defineProperty(vw,"IAMAuth",{enumerable:!0,get:function(){return S6_.IAMAuth}});var C6_=FT1();Object.defineProperty(vw,"IdTokenClient",{enumerable:!0,get:function(){return C6_.IdTokenClient}});var b6_=nT1();Object.defineProperty(vw,"JWTAccess",{enumerable:!0,get:function(){return b6_.JWTAccess}});var x6_=rT1();Object.defineProperty(vw,"JWT",{enumerable:!0,get:function(){return x6_.JWT}});var I6_=aT1();Object.defineProperty(vw,"Impersonated",{enumerable:!0,get:function(){return I6_.Impersonated}});var xk1=g$6();Object.defineProperty(vw,"CodeChallengeMethod",{enumerable:!0,get:function(){return xk1.CodeChallengeMethod}});Object.defineProperty(vw,"OAuth2Client",{enumerable:!0,get:function(){return xk1.OAuth2Client}});Object.defineProperty(vw,"ClientAuthentication",{enumerable:!0,get:function(){return xk1.ClientAuthentication}});var u6_=mT1();Object.defineProperty(vw,"LoginTicket",{enumerable:!0,get:function(){return u6_.LoginTicket}});var m6_=oT1();Object.defineProperty(vw,"UserRefreshClient",{enumerable:!0,get:function(){return m6_.UserRefreshClient}});var p6_=Pk1();Object.defineProperty(vw,"AwsClient",{enumerable:!0,get:function(){return p6_.AwsClient}});var B6_=Jk1();Object.defineProperty(vw,"AwsRequestSigner",{enumerable:!0,get:function(){return B6_.AwsRequestSigner}});var g6_=Hk1();Object.defineProperty(vw,"IdentityPoolClient",{enumerable:!0,get:function(){return g6_.IdentityPoolClient}});var F6_=Ek1();Object.defineProperty(vw,"ExternalAccountClient",{enumerable:!0,get:function(){return F6_.ExternalAccountClient}});var U6_=N16();Object.defineProperty(vw,"BaseExternalAccountClient",{enumerable:!0,get:function(){return U6_.BaseExternalAccountClient}});var Q6_=Zbq();Object.defineProperty(vw,"DownscopedClient",{enumerable:!0,get:function(){return Q6_.DownscopedClient}});var Nbq=Wf8();Object.defineProperty(vw,"PluggableAuthClient",{enumerable:!0,get:function(){return Nbq.PluggableAuthClient}});Object.defineProperty(vw,"ExecutableError",{enumerable:!0,get:function(){return Nbq.ExecutableError}});var d6_=Tbq();Object.defineProperty(vw,"PassThroughClient",{enumerable:!0,get:function(){return d6_.PassThroughClient}});var c6_=Ec6();Object.defineProperty(vw,"DefaultTransporter",{enumerable:!0,get:function(){return c6_.DefaultTransporter}});var l6_=new kbq.GoogleAuth;vw.auth=l6_});var ff8=(q)=>{if(typeof globalThis.process<"u")return globalThis.process.env?.[q]?.trim()??void 0;if(typeof globalThis.Deno<"u")return globalThis.Deno.env?.get?.(q)?.trim();return};var ybq=E(()=>{Sf()});function Zf8(q){return q!=null&&typeof q==="object"&&!Array.isArray(q)}var Ik1=(q)=>(Ik1=Array.isArray,Ik1(q)),uk1;var mk1=E(()=>{ybq();uk1=Ik1});function*a6_(q){if(!q)return;if(Ebq in q){let{values:z,nulls:Y}=q;yield*z.entries();for(let $ of Y)yield[$,null];return}let K=!1,_;if(q instanceof Headers)_=q.entries();else if(uk1(q))_=q;else K=!0,_=Object.entries(q??{});for(let z of _){let Y=z[0];if(typeof Y!=="string")throw TypeError("expected header name to be a string");let $=uk1(z[1])?z[1]:[z[1]],O=!1;for(let A of $){if(A===void 0)continue;if(K&&!O)O=!0,yield[Y,null];yield[Y,A]}}}var Ebq,Lbq=(q)=>{let K=new Headers,_=new Set;for(let z of q){let Y=new Set;for(let[$,O]of a6_(z)){let A=$.toLowerCase();if(!Y.has(A))K.delete($),Y.add(A);if(O===null)K.delete($),_.add(A);else K.append($,O),_.delete(A)}}return{[Ebq]:!0,values:K,nulls:_}};var hbq=E(()=>{mk1();Ebq=Symbol.for("brand.privateNullableHeaders")});function e6_(q){let K=new RE(q);return delete K.batches,K}function q8_(q){let K=new o0(q);return delete K.messages.batches,K}var Rbq,s6_="vertex-2023-10-16",t6_,pk1;var Bk1=E(()=>{rx();uI6();mk1();hbq();rx();Rbq=w6(Df8(),1),t6_=new Set(["/v1/messages","/v1/messages?beta=true"]);pk1=class pk1 extends CY{constructor({baseURL:q=ff8("ANTHROPIC_VERTEX_BASE_URL"),region:K=ff8("CLOUD_ML_REGION")??null,projectId:_=ff8("ANTHROPIC_VERTEX_PROJECT_ID")??null,...z}={}){if(!K)throw Error("No region was given. The client should be instantiated with the `region` option or the `CLOUD_ML_REGION` environment variable should be set.");super({baseURL:q||(K==="global"?"https://aiplatform.googleapis.com/v1":`https://${K}-aiplatform.googleapis.com/v1`),...z});if(this.messages=e6_(this),this.beta=q8_(this),this.region=K,this.projectId=_,this.accessToken=z.accessToken??null,z.authClient&&z.googleAuth)throw Error("You cannot provide both `authClient` and `googleAuth`. Please provide only one of them.");else if(z.authClient)this._authClientPromise=Promise.resolve(z.authClient);else this._auth=z.googleAuth??new Rbq.GoogleAuth({scopes:"https://www.googleapis.com/auth/cloud-platform"}),this._authClientPromise=this._auth.getClient()}validateHeaders(){}async prepareOptions(q){let K=await this._authClientPromise,_=await K.getRequestHeaders(),z=K.projectId??_["x-goog-user-project"];if(!this.projectId&&z)this.projectId=z;q.headers=Lbq([_,q.headers])}async buildRequest(q){if(Zf8(q.body))q.body={...q.body};if(Zf8(q.body)){if(!q.body.anthropic_version)q.body.anthropic_version=s6_}if(t6_.has(q.path)&&q.method==="post"){if(!this.projectId)throw Error("No projectId was given and it could not be resolved from credentials. The client should be instantiated with the `projectId` option or the `ANTHROPIC_VERTEX_PROJECT_ID` environment variable should be set.");if(!Zf8(q.body))throw Error("Expected request body to be an object for post /v1/messages");let K=q.body.model;q.body.model=void 0;let z=q.body.stream??!1?"streamRawPredict":"rawPredict";q.path=`/projects/${this.projectId}/locations/${this.region}/publishers/anthropic/models/${K}:${z}`}if(q.path==="/v1/messages/count_tokens"||q.path=="/v1/messages/count_tokens?beta=true"&&q.method==="post"){if(!this.projectId)throw Error("No projectId was given and it could not be resolved from credentials. The client should be instantiated with the `projectId` option or the `ANTHROPIC_VERTEX_PROJECT_ID` environment variable should be set.");q.path=`/projects/${this.projectId}/locations/${this.region}/publishers/anthropic/models/count-tokens:rawPredict`}return super.buildRequest(q)}}});var Sbq={};v8(Sbq,{default:()=>pk1,BaseAnthropic:()=>CY,AnthropicVertex:()=>pk1});var Cbq=E(()=>{Bk1();Bk1()});import{randomUUID as K8_}from"crypto";function uc6(){return{error:(q,...K)=>console.error("[Anthropic SDK ERROR]",q,...K),warn:(q,...K)=>console.error("[Anthropic SDK WARN]",q,...K),info:(q,...K)=>console.error("[Anthropic SDK INFO]",q,...K),debug:(q,...K)=>console.error("[Anthropic SDK DEBUG]",q,...K)}}async function TL({apiKey:q,maxRetries:K,model:_,fetchOverride:z,source:Y}){let $=process.env.CLAUDE_CODE_CONTAINER_ID,O=process.env.CLAUDE_CODE_REMOTE_SESSION_ID,A=process.env.CLAUDE_AGENT_SDK_CLIENT_APP,w=z8_(),j={"x-app":"cli","User-Agent":sS(),"X-Claude-Code-Session-Id":N8(),...w,...$&&{"x-claude-remote-container-id":$},...O&&{"x-claude-remote-session-id":O},...A&&{"x-client-app":A}};if(N(`[API:request] Creating client, ANTHROPIC_CUSTOM_HEADERS present: ${!!process.env.ANTHROPIC_CUSTOM_HEADERS}, has Authorization header: ${!!w.Authorization}`),Q6(process.env.CLAUDE_CODE_ADDITIONAL_PROTECTION))j["x-anthropic-additional-protection"]="true";if(N("[API:auth] OAuth token check starting"),await QY(),N("[API:auth] OAuth token check complete"),!n7())await _8_(j,F7());let J=Y8_(z,Y),M={defaultHeaders:j,maxRetries:K,timeout:parseInt(process.env.API_TIMEOUT_MS||String(600000),10),dangerouslyAllowBrowser:!0,fetchOptions:oz6({forAnthropicAPI:!0}),...J&&{fetch:J}};if(Q6(process.env.CLAUDE_CODE_USE_BEDROCK)){let{AnthropicBedrock:P}=await Promise.resolve().then(() => (CDq(),SDq)),W=_===Nj()&&process.env.ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION?process.env.ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION:Je(),D={...M,awsRegion:W,...Q6(process.env.CLAUDE_CODE_SKIP_BEDROCK_AUTH)&&{skipAuth:!0},...ax()&&{logger:uc6()}};if(process.env.AWS_BEARER_TOKEN_BEDROCK)D.skipAuth=!0,D.defaultHeaders={...D.defaultHeaders,Authorization:`Bearer ${process.env.AWS_BEARER_TOKEN_BEDROCK}`};else if(!Q6(process.env.CLAUDE_CODE_SKIP_BEDROCK_AUTH)){let f=await Un();if(f)D.awsAccessKey=f.accessKeyId,D.awsSecretKey=f.secretAccessKey,D.awsSessionToken=f.sessionToken}return new P(D)}if(Q6(process.env.CLAUDE_CODE_USE_FOUNDRY)){let{AnthropicFoundry:P}=await Promise.resolve().then(() => (BDq(),pDq)),W;if(!process.env.ANTHROPIC_FOUNDRY_API_KEY)if(Q6(process.env.CLAUDE_CODE_SKIP_FOUNDRY_AUTH))W=()=>Promise.resolve("");else{let{DefaultAzureCredential:f,getBearerTokenProvider:G}=await Promise.resolve().then(() => (eyq(),tyq));W=G(new f,"https://cognitiveservices.azure.com/.default")}let D={...M,...W&&{azureADTokenProvider:W},...ax()&&{logger:uc6()}};return new P(D)}if(Q6(process.env.CLAUDE_CODE_USE_ANTHROPIC_AWS)){let{AnthropicAws:P}=await Promise.resolve().then(() => (XEq(),MEq)),W={...M,...Q6(process.env.CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH)&&{skipAuth:!0},...ax()&&{logger:uc6()}};if(!process.env.ANTHROPIC_AWS_API_KEY&&!Q6(process.env.CLAUDE_CODE_SKIP_ANTHROPIC_AWS_AUTH)){let D=await Un();if(D)W.awsAccessKey=D.accessKeyId,W.awsSecretAccessKey=D.secretAccessKey,W.awsSessionToken=D.sessionToken}return new P(W)}if(Q6(process.env.CLAUDE_CODE_USE_VERTEX)){if(!Q6(process.env.CLAUDE_CODE_SKIP_VERTEX_AUTH))await mc6();let[{AnthropicVertex:P},{GoogleAuth:W}]=await Promise.all([Promise.resolve().then(() => (Cbq(),Sbq)),Promise.resolve().then(() => w6(Df8(),1))]),D=process.env.GCLOUD_PROJECT||process.env.GOOGLE_CLOUD_PROJECT||process.env.gcloud_project||process.env.google_cloud_project,f=process.env.GOOGLE_APPLICATION_CREDENTIALS||process.env.google_application_credentials,G=Q6(process.env.CLAUDE_CODE_SKIP_VERTEX_AUTH)?{getClient:()=>({getRequestHeaders:()=>({})})}:new W({scopes:["https://www.googleapis.com/auth/cloud-platform"],...D||f?{}:{projectId:process.env.ANTHROPIC_VERTEX_PROJECT_ID}}),Z={...M,region:L98(_),googleAuth:G,...ax()&&{logger:uc6()}};return new P(Z)}let X={apiKey:n7()?null:q||yT(),authToken:n7()?t7()?.accessToken:void 0,...!1,...M,...ax()&&{logger:uc6()}};return new SE(X)}async function _8_(q,K){let _=process.env.ANTHROPIC_AUTH_TOKEN||await uG6(K);if(_)q.Authorization=`Bearer ${_}`}function z8_(){let q={},K=process.env.ANTHROPIC_CUSTOM_HEADERS;if(!K)return q;let _=K.split(/\n|\r\n/);for(let z of _){if(!z.trim())continue;let Y=z.indexOf(":");if(Y===-1)continue;let $=z.slice(0,Y).trim(),O=z.slice(Y+1).trim();if($)q[$]=O}return q}function Y8_(q,K){let _=q??globalThis.fetch,z=Pq(),Y=z==="firstParty"&&IP()||z==="anthropicAws"&&!process.env.ANTHROPIC_AWS_BASE_URL;return($,O)=>{let A=new Headers(O?.headers);if(Y&&!A.has(xG6))A.set(xG6,K8_());try{let w=$ instanceof Request?$.url:String($),j=A.get(xG6);N(`[API REQUEST] ${new URL(w).pathname}${j?` ${xG6}=${j}`:""} source=${K??"unknown"}`)}catch{}return _($,{...O,headers:A})}}var xG6="x-client-request-id";var IG6=E(()=>{iv();k7();xG();Qq();C_();kT();T8();q3();K8();g8()});import{readFileSync as $8_}from"fs";import{mkdir as O8_,writeFile as A8_}from"fs/promises";import{join as bbq}from"path";function Ibq(){return bbq(t1(),"cache")}function ubq(){return bbq(Ibq(),"model-capabilities.json")}function mbq(){return!1}function j8_(q){return[...q].sort((K,_)=>_.id.length-K.id.length||K.id.localeCompare(_.id))}function pbq(q){if(!mbq())return;let K=gk1(ubq());if(!K||K.length===0)return;let _=q.toLowerCase(),z=K.find((Y)=>Y.id.toLowerCase()===_);if(z)return z;return K.find((Y)=>_.includes(Y.id.toLowerCase()))}async function Bbq(){if(!mbq())return;if(XY())return;try{let q=await TL({maxRetries:1}),K=n7()?[wJ]:void 0,_=[];for await(let $ of q.models.list({betas:K})){let O=xbq().safeParse($);if(O.success)_.push(O.data)}if(_.length===0)return;let z=ubq(),Y=j8_(_);if(KM(gk1(z),Y)){N("[modelCapabilities] cache unchanged, skipping write");return}await O8_(Ibq(),{recursive:!0}),await A8_(z,g6({models:Y,timestamp:Date.now()}),{encoding:"utf-8",mode:384}),gk1.cache.delete(z),N(`[modelCapabilities] cached ${Y.length} models`)}catch(q){N(`[modelCapabilities] fetch failed: ${q instanceof Error?q.message:"unknown"}`)}}var xbq,w8_,gk1;var Fk1=E(()=>{q66();qK();u7();q3();IG6();k7();K8();g8();bA();i8();C_();xbq=m6(()=>h.object({id:h.string(),max_input_tokens:h.number().optional(),max_tokens:h.number().optional()}).strip()),w8_=m6(()=>h.object({models:h.array(xbq()),timestamp:h.number()}));gk1=A1((q)=>{try{let K=$8_(q,"utf-8"),_=w8_().safeParse(m5(K,!1));return _.success?_.data.models:null}catch{return null}},(q)=>q)});function S86(){return Q6(process.env.CLAUDE_CODE_DISABLE_1M_CONTEXT)}function RT(q){if(S86())return!1;return/\[1m\]/i.test(q)}function yW1(q){if(S86())return!1;let K=dY(q);return K.includes("claude-sonnet-4")||K.includes("opus-4-6")}function dT(q,K){if(RT(q))return 1e6;if(K?.includes(nn)&&yW1(q))return 1e6;if(Gf8(q))return 1e6;return 1e6/*ctx_1m_forced*/}function Gf8(q){if(S86())return!1;if(RT(q))return!1;if(!dY(q).includes("sonnet-4-6"))return!1;return j8().clientDataCache?.coral_reef_sonnet==="true"}function vf8(q,K){if(!q)return{used:null,remaining:null};let _=q.input_tokens+q.cache_creation_input_tokens+q.cache_read_input_tokens,z=Math.round(_/K*100),Y=Math.min(100,Math.max(0,z));return{used:Y,remaining:100-Y}}function L16(q){let K,_,z=dY(q);if(z.includes("opus-4-6"))K=64000,_=128000;else if(z.includes("sonnet-4-6"))K=32000,_=128000;else if(z.includes("opus-4-5")||z.includes("sonnet-4")||z.includes("haiku-4"))K=32000,_=64000;else if(z.includes("opus-4-1")||z.includes("opus-4"))K=32000,_=32000;else if(z.includes("claude-3-opus"))K=4096,_=4096;else if(z.includes("claude-3-sonnet"))K=8192,_=8192;else if(z.includes("claude-3-haiku"))K=4096,_=4096;else if(z.includes("3-5-sonnet")||z.includes("3-5-haiku"))K=8192,_=8192;else if(z.includes("3-7-sonnet"))K=32000,_=64000;else K=J8_,_=M8_;let Y=pbq(q);if(Y?.max_tokens&&Y.max_tokens>=4096)_=Y.max_tokens,K=Math.min(K,_);return{default:K,upperLimit:_}}function Ubq(q){return L16(q).upperLimit-1}var H8_=200000,gbq=20000,J8_=32000,M8_=64000,Fbq=8000,Uk1=64000;var OD=E(()=>{E86();V1();g8();Qq();Fk1()});var X8_,h16;var Tf8=E(()=>{qK();C_();X8_=[{modelEnvVar:"ANTHROPIC_DEFAULT_OPUS_MODEL",capabilitiesEnvVar:"ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES"},{modelEnvVar:"ANTHROPIC_DEFAULT_SONNET_MODEL",capabilitiesEnvVar:"ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES"},{modelEnvVar:"ANTHROPIC_DEFAULT_HAIKU_MODEL",capabilitiesEnvVar:"ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES"}],h16=A1((q,K)=>{if(K2())return;let _=q.toLowerCase();for(let z of X8_){let Y=process.env[z.modelEnvVar],$=process.env[z.capabilitiesEnvVar];if(!Y||$===void 0)continue;if(_!==Y.toLowerCase())continue;return $.toLowerCase().split(",").map((O)=>O.trim()).includes(K)}return},(q,K)=>`${q.toLowerCase()}:${K}`)});function P8_(q){let K=[],_=[];for(let z of q)if(dbq.includes(z))K.push(z);else _.push(z);return{allowed:K,disallowed:_}}function cbq(q){if(!q||q.length===0)return;if(n7()){console.warn("Warning: Custom betas are only available for API key users. Ignoring provided betas.");return}let{allowed:K,disallowed:_}=P8_(q);for(let z of _)console.warn(`Warning: Beta header '${z}' is not allowed. Only the following betas are supported: ${dbq.join(", ")}`);return K.length>0?K:void 0}function Qbq(q){let K=h16(q,"interleaved_thinking");if(K!==void 0)return K;let _=dY(q),z=Pq();if(z==="foundry")return!0;if(z==="firstParty"||z==="anthropicAws")return!_.includes("claude-3-");return _.includes("claude-opus-4")||_.includes("claude-sonnet-4")}function W8_(q){let K=dY(q);return K.includes("claude-opus-4")||K.includes("claude-sonnet-4")||K.includes("claude-haiku-4")}function D8_(q){let K=dY(q),_=Pq();if(_==="foundry")return!0;if(_==="firstParty"||_==="anthropicAws")return!K.includes("claude-3-");return K.includes("claude-opus-4")||K.includes("claude-sonnet-4")||K.includes("claude-haiku-4")}function U$6(q){let K=dY(q),_=Pq();if(_!=="firstParty"&&_!=="anthropicAws"&&_!=="foundry")return!1;return K.includes("claude-sonnet-4-6")||K.includes("claude-sonnet-4-5")||K.includes("claude-opus-4-1")||K.includes("claude-opus-4-5")||K.includes("claude-opus-4-6")||K.includes("claude-haiku-4-5")}function mG6(q){{let K=dY(q),_=Pq();if(_!=="firstParty"&&_!=="anthropicAws")return!1;let z=I8("tengu_auto_mode_config",{}),Y=q.toLowerCase();if(z?.allowModels?.some(($)=>$.toLowerCase()===Y||$.toLowerCase()===K))return!0;return/^claude-(opus|sonnet)-4-6/.test(K)}return!1}function lbq(){let q=Pq();if(q==="vertex"||q==="bedrock")return ljq;return cjq}function R16(){let q=Pq();return(q==="firstParty"||q==="anthropicAws"||q==="foundry")&&!Q6(process.env.CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS)}function pG6(){let q=Pq();return(q==="firstParty"||q==="anthropicAws")&&!Q6(process.env.CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS)}function kf8(q,K){let _=[...kL(q)];if(K?.isAgenticQuery){if(!_.includes(oM8))_.push(oM8)}let z=BW();if(!z||z.length===0)return _;return[..._,...z.filter((Y)=>!_.includes(Y))]}function Vf8(){Qk1.cache?.clear?.(),kL.cache?.clear?.(),dk1.cache?.clear?.()}var dbq,Qk1,kL,dk1;var IG=E(()=>{qK();s1();T8();E86();q3();k7();OD();g8();Qq();Tf8();C_();r1();dbq=[nn];Qk1=A1((q)=>{let K=[],_=dY(q).includes("haiku"),z=Pq(),Y=R16();if(!_)K.push(oM8);if(n7())K.push(wJ);if(RT(q))K.push(nn);if(!Q6(process.env.DISABLE_INTERLEAVED_THINKING)&&Qbq(q))K.push(djq);if(Y&&Qbq(q)&&!F7()&&T7().showThinkingSummaries!==!0)K.push(sM8);njq;let $=Q6(process.env.USE_API_CONTEXT_MANAGEMENT)&&!1,O=D8_(q);if(R16()&&($||O))K.push(aM8);let A=w$("tengu_tool_pear"),w=!A&&I8("tengu_amber_json_tools",!1);if(Y&&U$6(q)&&A)K.push(y86);if(z==="vertex"&&W8_(q))K.push(jW1);if(z==="foundry")K.push(jW1);if(Y)K.push(xU6);if(process.env.ANTHROPIC_BETAS)K.push(...process.env.ANTHROPIC_BETAS.split(",").map((j)=>j.trim()).filter(Boolean));return K}),kL=A1((q)=>{let K=Qk1(q);if(Pq()==="bedrock")return K.filter((_)=>!PW1.has(_));return K}),dk1=A1((q)=>{return Qk1(q).filter((_)=>PW1.has(_))})});var ibq=p((rGO,nbq)=>{var S16=U6("constants"),f8_=process.cwd,Nf8=null,Z8_=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){if(!Nf8)Nf8=f8_.call(process);return Nf8};try{process.cwd()}catch(q){}if(typeof process.chdir==="function"){if(yf8=process.chdir,process.chdir=function(q){Nf8=null,yf8.call(process,q)},Object.setPrototypeOf)Object.setPrototypeOf(process.chdir,yf8)}var yf8;nbq.exports=G8_;function G8_(q){if(S16.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./))K(q);if(!q.lutimes)_(q);if(q.chown=$(q.chown),q.fchown=$(q.fchown),q.lchown=$(q.lchown),q.chmod=z(q.chmod),q.fchmod=z(q.fchmod),q.lchmod=z(q.lchmod),q.chownSync=O(q.chownSync),q.fchownSync=O(q.fchownSync),q.lchownSync=O(q.lchownSync),q.chmodSync=Y(q.chmodSync),q.fchmodSync=Y(q.fchmodSync),q.lchmodSync=Y(q.lchmodSync),q.stat=A(q.stat),q.fstat=A(q.fstat),q.lstat=A(q.lstat),q.statSync=w(q.statSync),q.fstatSync=w(q.fstatSync),q.lstatSync=w(q.lstatSync),q.chmod&&!q.lchmod)q.lchmod=function(H,J,M){if(M)process.nextTick(M)},q.lchmodSync=function(){};if(q.chown&&!q.lchown)q.lchown=function(H,J,M,X){if(X)process.nextTick(X)},q.lchownSync=function(){};if(Z8_==="win32")q.rename=typeof q.rename!=="function"?q.rename:function(H){function J(M,X,P){var W=Date.now(),D=0;H(M,X,function f(G){if(G&&(G.code==="EACCES"||G.code==="EPERM"||G.code==="EBUSY")&&Date.now()-W<60000){if(setTimeout(function(){q.stat(X,function(Z,v){if(Z&&Z.code==="ENOENT")H(M,X,f);else P(G)})},D),D<100)D+=10;return}if(P)P(G)})}if(Object.setPrototypeOf)Object.setPrototypeOf(J,H);return J}(q.rename);q.read=typeof q.read!=="function"?q.read:function(H){function J(M,X,P,W,D,f){var G;if(f&&typeof f==="function"){var Z=0;G=function(v,k,V){if(v&&v.code==="EAGAIN"&&Z<10)return Z++,H.call(q,M,X,P,W,D,G);f.apply(this,arguments)}}return H.call(q,M,X,P,W,D,G)}if(Object.setPrototypeOf)Object.setPrototypeOf(J,H);return J}(q.read),q.readSync=typeof q.readSync!=="function"?q.readSync:function(H){return function(J,M,X,P,W){var D=0;while(!0)try{return H.call(q,J,M,X,P,W)}catch(f){if(f.code==="EAGAIN"&&D<10){D++;continue}throw f}}}(q.readSync);function K(H){H.lchmod=function(J,M,X){H.open(J,S16.O_WRONLY|S16.O_SYMLINK,M,function(P,W){if(P){if(X)X(P);return}H.fchmod(W,M,function(D){H.close(W,function(f){if(X)X(D||f)})})})},H.lchmodSync=function(J,M){var X=H.openSync(J,S16.O_WRONLY|S16.O_SYMLINK,M),P=!0,W;try{W=H.fchmodSync(X,M),P=!1}finally{if(P)try{H.closeSync(X)}catch(D){}else H.closeSync(X)}return W}}function _(H){if(S16.hasOwnProperty("O_SYMLINK")&&H.futimes)H.lutimes=function(J,M,X,P){H.open(J,S16.O_SYMLINK,function(W,D){if(W){if(P)P(W);return}H.futimes(D,M,X,function(f){H.close(D,function(G){if(P)P(f||G)})})})},H.lutimesSync=function(J,M,X){var P=H.openSync(J,S16.O_SYMLINK),W,D=!0;try{W=H.futimesSync(P,M,X),D=!1}finally{if(D)try{H.closeSync(P)}catch(f){}else H.closeSync(P)}return W};else if(H.futimes)H.lutimes=function(J,M,X,P){if(P)process.nextTick(P)},H.lutimesSync=function(){}}function z(H){if(!H)return H;return function(J,M,X){return H.call(q,J,M,function(P){if(j(P))P=null;if(X)X.apply(this,arguments)})}}function Y(H){if(!H)return H;return function(J,M){try{return H.call(q,J,M)}catch(X){if(!j(X))throw X}}}function $(H){if(!H)return H;return function(J,M,X,P){return H.call(q,J,M,X,function(W){if(j(W))W=null;if(P)P.apply(this,arguments)})}}function O(H){if(!H)return H;return function(J,M,X){try{return H.call(q,J,M,X)}catch(P){if(!j(P))throw P}}}function A(H){if(!H)return H;return function(J,M,X){if(typeof M==="function")X=M,M=null;function P(W,D){if(D){if(D.uid<0)D.uid+=4294967296;if(D.gid<0)D.gid+=4294967296}if(X)X.apply(this,arguments)}return M?H.call(q,J,M,P):H.call(q,J,P)}}function w(H){if(!H)return H;return function(J,M){var X=M?H.call(q,J,M):H.call(q,J);if(X){if(X.uid<0)X.uid+=4294967296;if(X.gid<0)X.gid+=4294967296}return X}}function j(H){if(!H)return!0;if(H.code==="ENOSYS")return!0;var J=!process.getuid||process.getuid()!==0;if(J){if(H.code==="EINVAL"||H.code==="EPERM")return!0}return!1}}});var abq=p((oGO,obq)=>{var rbq=U6("stream").Stream;obq.exports=v8_;function v8_(q){return{ReadStream:K,WriteStream:_};function K(z,Y){if(!(this instanceof K))return new K(z,Y);rbq.call(this);var $=this;this.path=z,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=65536,Y=Y||{};var O=Object.keys(Y);for(var A=0,w=O.length;Athis.end)throw Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){$._read()});return}q.open(this.path,this.flags,this.mode,function(H,J){if(H){$.emit("error",H),$.readable=!1;return}$.fd=J,$.emit("open",J),$._read()})}function _(z,Y){if(!(this instanceof _))return new _(z,Y);rbq.call(this),this.path=z,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,Y=Y||{};var $=Object.keys(Y);for(var O=0,A=$.length;O= zero");this.pos=this.start}if(this.busy=!1,this._queue=[],this.fd===null)this._open=q.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush()}}});var tbq=p((aGO,sbq)=>{sbq.exports=k8_;var T8_=Object.getPrototypeOf||function(q){return q.__proto__};function k8_(q){if(q===null||typeof q!=="object")return q;if(q instanceof Object)var K={__proto__:T8_(q)};else var K=Object.create(null);return Object.getOwnPropertyNames(q).forEach(function(_){Object.defineProperty(K,_,Object.getOwnPropertyDescriptor(q,_))}),K}});var bO=p((sGO,ik1)=>{var VH=U6("fs"),V8_=ibq(),N8_=abq(),y8_=tbq(),Ef8=U6("util"),MZ,hf8;if(typeof Symbol==="function"&&typeof Symbol.for==="function")MZ=Symbol.for("graceful-fs.queue"),hf8=Symbol.for("graceful-fs.previous");else MZ="___graceful-fs.queue",hf8="___graceful-fs.previous";function E8_(){}function qxq(q,K){Object.defineProperty(q,MZ,{get:function(){return K}})}var Q$6=E8_;if(Ef8.debuglog)Q$6=Ef8.debuglog("gfs4");else if(/\bgfs4\b/i.test(process.env.NODE_DEBUG||""))Q$6=function(){var q=Ef8.format.apply(Ef8,arguments);q="GFS4: "+q.split(/\n/).join(` GFS4: `),console.error(q)};if(!VH[MZ]){if(ck1=global[MZ]||[],qxq(VH,ck1),VH.close=function(q){function K(_,z){return q.call(VH,_,function(Y){if(!Y)ebq();if(typeof z==="function")z.apply(this,arguments)})}return Object.defineProperty(K,hf8,{value:q}),K}(VH.close),VH.closeSync=function(q){function K(_){q.apply(VH,arguments),ebq()}return Object.defineProperty(K,hf8,{value:q}),K}(VH.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||""))process.on("exit",function(){Q$6(VH[MZ]),U6("assert").equal(VH[MZ].length,0)})}var ck1;if(!global[MZ])qxq(global,VH[MZ]);ik1.exports=lk1(y8_(VH));if(process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!VH.__patched)ik1.exports=lk1(VH),VH.__patched=!0;function lk1(q){V8_(q),q.gracefulify=lk1,q.createReadStream=k,q.createWriteStream=V;var K=q.readFile;q.readFile=_;function _(R,b,I){if(typeof b==="function")I=b,b=null;return m(R,b,I);function m(B,C,g,U){return K(B,C,function(F){if(F&&(F.code==="EMFILE"||F.code==="ENFILE"))BG6([m,[B,C,g],F,U||Date.now(),Date.now()]);else if(typeof g==="function")g.apply(this,arguments)})}}var z=q.writeFile;q.writeFile=Y;function Y(R,b,I,m){if(typeof I==="function")m=I,I=null;return B(R,b,I,m);function B(C,g,U,F,c){return z(C,g,U,function(K6){if(K6&&(K6.code==="EMFILE"||K6.code==="ENFILE"))BG6([B,[C,g,U,F],K6,c||Date.now(),Date.now()]);else if(typeof F==="function")F.apply(this,arguments)})}}var $=q.appendFile;if($)q.appendFile=O;function O(R,b,I,m){if(typeof I==="function")m=I,I=null;return B(R,b,I,m);function B(C,g,U,F,c){return $(C,g,U,function(K6){if(K6&&(K6.code==="EMFILE"||K6.code==="ENFILE"))BG6([B,[C,g,U,F],K6,c||Date.now(),Date.now()]);else if(typeof F==="function")F.apply(this,arguments)})}}var A=q.copyFile;if(A)q.copyFile=w;function w(R,b,I,m){if(typeof I==="function")m=I,I=0;return B(R,b,I,m);function B(C,g,U,F,c){return A(C,g,U,function(K6){if(K6&&(K6.code==="EMFILE"||K6.code==="ENFILE"))BG6([B,[C,g,U,F],K6,c||Date.now(),Date.now()]);else if(typeof F==="function")F.apply(this,arguments)})}}var j=q.readdir;q.readdir=J;var H=/^v[0-5]\./;function J(R,b,I){if(typeof b==="function")I=b,b=null;var m=H.test(process.version)?function(g,U,F,c){return j(g,B(g,U,F,c))}:function(g,U,F,c){return j(g,U,B(g,U,F,c))};return m(R,b,I);function B(C,g,U,F){return function(c,K6){if(c&&(c.code==="EMFILE"||c.code==="ENFILE"))BG6([m,[C,g,U],c,F||Date.now(),Date.now()]);else{if(K6&&K6.sort)K6.sort();if(typeof U==="function")U.call(this,c,K6)}}}}if(process.version.substr(0,4)==="v0.8"){var M=N8_(q);f=M.ReadStream,Z=M.WriteStream}var X=q.ReadStream;if(X)f.prototype=Object.create(X.prototype),f.prototype.open=G;var P=q.WriteStream;if(P)Z.prototype=Object.create(P.prototype),Z.prototype.open=v;Object.defineProperty(q,"ReadStream",{get:function(){return f},set:function(R){f=R},enumerable:!0,configurable:!0}),Object.defineProperty(q,"WriteStream",{get:function(){return Z},set:function(R){Z=R},enumerable:!0,configurable:!0});var W=f;Object.defineProperty(q,"FileReadStream",{get:function(){return W},set:function(R){W=R},enumerable:!0,configurable:!0});var D=Z;Object.defineProperty(q,"FileWriteStream",{get:function(){return D},set:function(R){D=R},enumerable:!0,configurable:!0});function f(R,b){if(this instanceof f)return X.apply(this,arguments),this;else return f.apply(Object.create(f.prototype),arguments)}function G(){var R=this;L(R.path,R.flags,R.mode,function(b,I){if(b){if(R.autoClose)R.destroy();R.emit("error",b)}else R.fd=I,R.emit("open",I),R.read()})}function Z(R,b){if(this instanceof Z)return P.apply(this,arguments),this;else return Z.apply(Object.create(Z.prototype),arguments)}function v(){var R=this;L(R.path,R.flags,R.mode,function(b,I){if(b)R.destroy(),R.emit("error",b);else R.fd=I,R.emit("open",I)})}function k(R,b){return new q.ReadStream(R,b)}function V(R,b){return new q.WriteStream(R,b)}var y=q.open;q.open=L;function L(R,b,I,m){if(typeof I==="function")m=I,I=null;return B(R,b,I,m);function B(C,g,U,F,c){return y(C,g,U,function(K6,a){if(K6&&(K6.code==="EMFILE"||K6.code==="ENFILE"))BG6([B,[C,g,U,F],K6,c||Date.now(),Date.now()]);else if(typeof F==="function")F.apply(this,arguments)})}}return q}function BG6(q){Q$6("ENQUEUE",q[0].name,q[1]),VH[MZ].push(q),nk1()}var Lf8;function ebq(){var q=Date.now();for(var K=0;K2)VH[MZ][K][3]=q,VH[MZ][K][4]=q;nk1()}function nk1(){if(clearTimeout(Lf8),Lf8=void 0,VH[MZ].length===0)return;var q=VH[MZ].shift(),K=q[0],_=q[1],z=q[2],Y=q[3],$=q[4];if(Y===void 0)Q$6("RETRY",K.name,_),K.apply(null,_);else if(Date.now()-Y>=60000){Q$6("TIMEOUT",K.name,_);var O=_.pop();if(typeof O==="function")O.call(null,z)}else{var A=Date.now()-$,w=Math.max($-Y,1),j=Math.min(w*1.2,100);if(A>=j)Q$6("RETRY",K.name,_),K.apply(null,_.concat([Y]));else VH[MZ].push(q)}if(Lf8===void 0)Lf8=setTimeout(nk1,0)}});var _xq=p((tGO,Kxq)=>{function tS(q,K){if(typeof K==="boolean")K={forever:K};if(this._originalTimeouts=JSON.parse(JSON.stringify(q)),this._timeouts=q,this._options=K||{},this._maxRetryTime=K&&K.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever)this._cachedTimeouts=this._timeouts.slice(0)}Kxq.exports=tS;tS.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts};tS.prototype.stop=function(){if(this._timeout)clearTimeout(this._timeout);this._timeouts=[],this._cachedTimeouts=null};tS.prototype.retry=function(q){if(this._timeout)clearTimeout(this._timeout);if(!q)return!1;var K=new Date().getTime();if(q&&K-this._operationStart>=this._maxRetryTime)return this._errors.unshift(Error("RetryOperation timeout occurred")),!1;this._errors.push(q);var _=this._timeouts.shift();if(_===void 0)if(this._cachedTimeouts)this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),_=this._timeouts.shift();else return!1;var z=this,Y=setTimeout(function(){if(z._attempts++,z._operationTimeoutCb){if(z._timeout=setTimeout(function(){z._operationTimeoutCb(z._attempts)},z._operationTimeout),z._options.unref)z._timeout.unref()}z._fn(z._attempts)},_);if(this._options.unref)Y.unref();return!0};tS.prototype.attempt=function(q,K){if(this._fn=q,K){if(K.timeout)this._operationTimeout=K.timeout;if(K.cb)this._operationTimeoutCb=K.cb}var _=this;if(this._operationTimeoutCb)this._timeout=setTimeout(function(){_._operationTimeoutCb()},_._operationTimeout);this._operationStart=new Date().getTime(),this._fn(this._attempts)};tS.prototype.try=function(q){console.log("Using RetryOperation.try() is deprecated"),this.attempt(q)};tS.prototype.start=function(q){console.log("Using RetryOperation.start() is deprecated"),this.attempt(q)};tS.prototype.start=tS.prototype.try;tS.prototype.errors=function(){return this._errors};tS.prototype.attempts=function(){return this._attempts};tS.prototype.mainError=function(){if(this._errors.length===0)return null;var q={},K=null,_=0;for(var z=0;z=_)K=Y,_=O}return K}});var Yxq=p((h8_)=>{var L8_=_xq();h8_.operation=function(q){var K=h8_.timeouts(q);return new L8_(K,{forever:q&&q.forever,unref:q&&q.unref,maxRetryTime:q&&q.maxRetryTime})};h8_.timeouts=function(q){if(q instanceof Array)return[].concat(q);var K={retries:10,factor:2,minTimeout:1000,maxTimeout:1/0,randomize:!1};for(var _ in q)K[_]=q[_];if(K.minTimeout>K.maxTimeout)throw Error("minTimeout is greater than maxTimeout");var z=[];for(var Y=0;Y{Rf8.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];if(process.platform!=="win32")Rf8.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")Rf8.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var Oxq=p((KvO,FG6)=>{var hj=global.process,d$6=function(q){return q&&typeof q==="object"&&typeof q.removeListener==="function"&&typeof q.emit==="function"&&typeof q.reallyExit==="function"&&typeof q.listeners==="function"&&typeof q.kill==="function"&&typeof q.pid==="number"&&typeof q.on==="function"};if(!d$6(hj))FG6.exports=function(){return function(){}};else{if(rk1=U6("assert"),c$6=$xq(),ok1=/^win/i.test(hj.platform),gG6=U6("events"),typeof gG6!=="function")gG6=gG6.EventEmitter;if(hj.__signal_exit_emitter__)FP=hj.__signal_exit_emitter__;else FP=hj.__signal_exit_emitter__=new gG6,FP.count=0,FP.emitted={};if(!FP.infinite)FP.setMaxListeners(1/0),FP.infinite=!0;FG6.exports=function(q,K){if(!d$6(global.process))return function(){};if(rk1.equal(typeof q,"function","a callback must be provided for exit handler"),l$6===!1)Sf8();var _="exit";if(K&&K.alwaysLast)_="afterexit";var z=function(){if(FP.removeListener(_,q),FP.listeners("exit").length===0&&FP.listeners("afterexit").length===0)pc6()};return FP.on(_,q),z},pc6=function(){if(!l$6||!d$6(global.process))return;l$6=!1,c$6.forEach(function(K){try{hj.removeListener(K,Bc6[K])}catch(_){}}),hj.emit=gc6,hj.reallyExit=Cf8,FP.count-=1},FG6.exports.unload=pc6,C16=function(K,_,z){if(FP.emitted[K])return;FP.emitted[K]=!0,FP.emit(K,_,z)},Bc6={},c$6.forEach(function(q){Bc6[q]=function(){if(!d$6(global.process))return;var _=hj.listeners(q);if(_.length===FP.count){if(pc6(),C16("exit",null,q),C16("afterexit",null,q),ok1&&q==="SIGHUP")q="SIGINT";hj.kill(hj.pid,q)}}}),FG6.exports.signals=function(){return c$6},l$6=!1,Sf8=function(){if(l$6||!d$6(global.process))return;l$6=!0,FP.count+=1,c$6=c$6.filter(function(K){try{return hj.on(K,Bc6[K]),!0}catch(_){return!1}}),hj.emit=sk1,hj.reallyExit=ak1},FG6.exports.load=Sf8,Cf8=hj.reallyExit,ak1=function(K){if(!d$6(global.process))return;hj.exitCode=K||0,C16("exit",hj.exitCode,null),C16("afterexit",hj.exitCode,null),Cf8.call(hj,hj.exitCode)},gc6=hj.emit,sk1=function(K,_){if(K==="exit"&&d$6(global.process)){if(_!==void 0)hj.exitCode=_;var z=gc6.apply(this,arguments);return C16("exit",hj.exitCode,null),C16("afterexit",hj.exitCode,null),z}else return gc6.apply(this,arguments)}}var rk1,c$6,ok1,gG6,FP,pc6,C16,Bc6,l$6,Sf8,Cf8,ak1,gc6,sk1});var wxq=p((I8_,tk1)=>{var Axq=Symbol();function b8_(q,K,_){let z=K[Axq];if(z)return K.stat(q,($,O)=>{if($)return _($);_(null,O.mtime,z)});let Y=new Date(Math.ceil(Date.now()/1000)*1000+5);K.utimes(q,Y,Y,($)=>{if($)return _($);K.stat(q,(O,A)=>{if(O)return _(O);let w=A.mtime.getTime()%1000===0?"s":"ms";Object.defineProperty(K,Axq,{value:w}),_(null,A.mtime,w)})})}function x8_(q){let K=Date.now();if(q==="s")K=Math.ceil(K/1000)*1000;return new Date(K)}I8_.probe=b8_;I8_.getMtime=x8_});var Xxq=p((d8_,Uc6)=>{var p8_=U6("path"),KV1=bO(),B8_=Yxq(),g8_=Oxq(),jxq=wxq(),mi={};function Fc6(q,K){return K.lockfilePath||`${q}.lock`}function _V1(q,K,_){if(!K.realpath)return _(null,p8_.resolve(q));K.fs.realpath(q,_)}function qV1(q,K,_){let z=Fc6(q,K);K.fs.mkdir(z,(Y)=>{if(!Y)return jxq.probe(z,K.fs,($,O,A)=>{if($)return K.fs.rmdir(z,()=>{}),_($);_(null,O,A)});if(Y.code!=="EEXIST")return _(Y);if(K.stale<=0)return _(Object.assign(Error("Lock file is already being held"),{code:"ELOCKED",file:q}));K.fs.stat(z,($,O)=>{if($){if($.code==="ENOENT")return qV1(q,{...K,stale:0},_);return _($)}if(!Hxq(O,K))return _(Object.assign(Error("Lock file is already being held"),{code:"ELOCKED",file:q}));Jxq(q,K,(A)=>{if(A)return _(A);qV1(q,{...K,stale:0},_)})})})}function Hxq(q,K){return q.mtime.getTime(){if(z&&z.code!=="ENOENT")return _(z);_()})}function bf8(q,K){let _=mi[q];if(_.updateTimeout)return;if(_.updateDelay=_.updateDelay||K.update,_.updateTimeout=setTimeout(()=>{_.updateTimeout=null,K.fs.stat(_.lockfilePath,(z,Y)=>{let $=_.lastUpdate+K.stale{let j=_.lastUpdate+K.stale{throw z},...K},K.retries=K.retries||0,K.retries=typeof K.retries==="number"?{retries:K.retries}:K.retries,K.stale=Math.max(K.stale||0,2000),K.update=K.update==null?K.stale/2:K.update||0,K.update=Math.max(Math.min(K.update,K.stale/2),1000),_V1(q,K,(z,Y)=>{if(z)return _(z);let $=B8_.operation(K.retries);$.attempt(()=>{qV1(Y,K,(O,A,w)=>{if($.retry(O))return;if(O)return _($.mainError());let j=mi[Y]={lockfilePath:Fc6(Y,K),mtime:A,mtimePrecision:w,options:K,lastUpdate:Date.now()};bf8(Y,K),_(null,(H)=>{if(j.released)return H&&H(Object.assign(Error("Lock is already released"),{code:"ERELEASED"}));Mxq(Y,{...K,realpath:!1},H)})})})})}function Mxq(q,K,_){K={fs:KV1,realpath:!0,...K},_V1(q,K,(z,Y)=>{if(z)return _(z);let $=mi[Y];if(!$)return _(Object.assign(Error("Lock is not acquired/owned by you"),{code:"ENOTACQUIRED"}));$.updateTimeout&&clearTimeout($.updateTimeout),$.released=!0,delete mi[Y],Jxq(Y,K,_)})}function U8_(q,K,_){K={stale:1e4,realpath:!0,fs:KV1,...K},K.stale=Math.max(K.stale||0,2000),_V1(q,K,(z,Y)=>{if(z)return _(z);K.fs.stat(Fc6(Y,K),($,O)=>{if($)return $.code==="ENOENT"?_(null,!1):_($);return _(null,!Hxq(O,K))})})}function Q8_(){return mi}g8_(()=>{for(let q in mi){let K=mi[q].options;try{K.fs.rmdirSync(Fc6(q,K))}catch(_){}}});d8_.lock=F8_;d8_.unlock=Mxq;d8_.check=U8_;d8_.getLocks=Q8_});var Wxq=p((_vO,Pxq)=>{var r8_=bO();function o8_(q){let K=["mkdir","realpath","stat","rmdir","utimes"],_={...q};return K.forEach((z)=>{_[z]=(...Y)=>{let $=Y.pop(),O;try{O=q[`${z}Sync`](...Y)}catch(A){return $(A)}$(null,O)}}),_}function a8_(q){return(...K)=>new Promise((_,z)=>{K.push((Y,$)=>{if(Y)z(Y);else _($)}),q(...K)})}function s8_(q){return(...K)=>{let _,z;if(K.push((Y,$)=>{_=Y,z=$}),q(...K),_)throw _;return z}}function t8_(q){if(q={...q},q.fs=o8_(q.fs||r8_),typeof q.retries==="number"&&q.retries>0||q.retries&&typeof q.retries.retries==="number"&&q.retries.retries>0)throw Object.assign(Error("Cannot use retries with the sync api"),{code:"ESYNC"});return q}Pxq.exports={toPromise:a8_,toSync:s8_,toSyncOptions:t8_}});var fxq=p((zvO,b16)=>{var UG6=Xxq(),{toPromise:xf8,toSync:If8,toSyncOptions:zV1}=Wxq();async function Dxq(q,K){let _=await xf8(UG6.lock)(q,K);return xf8(_)}function e8_(q,K){let _=If8(UG6.lock)(q,zV1(K));return If8(_)}function q1_(q,K){return xf8(UG6.unlock)(q,K)}function K1_(q,K){return If8(UG6.unlock)(q,zV1(K))}function _1_(q,K){return xf8(UG6.check)(q,K)}function z1_(q,K){return If8(UG6.check)(q,zV1(K))}b16.exports=Dxq;b16.exports.lock=Dxq;b16.exports.unlock=q1_;b16.exports.lockSync=e8_;b16.exports.unlockSync=K1_;b16.exports.check=_1_;b16.exports.checkSync=z1_});function $V1(){if(!YV1)YV1=fxq();return YV1}function TJ(q,K){return $V1().lock(q,K)}function Zxq(q,K){return $V1().lockSync(q,K)}function Gxq(q,K){return $V1().check(q,K)}var YV1;function vxq(q,K){return{name:`${q.name}-with-${K.name}-fallback`,read(){let _=q.read();if(_!==null&&_!==void 0)return _;return K.read()||{}},async readAsync(){let _=await q.readAsync();if(_!==null&&_!==void 0)return _;return await K.readAsync()||{}},update(_){let z=q.read(),Y=q.update(_);if(Y.success){if(z===null)K.delete();return Y}let $=K.update(_);if($.success){if(z!==null)q.delete();return{success:!0,warning:$.warning}}return{success:!1}},delete(){let _=q.delete(),z=K.delete();return _||z}}}async function $1_(){try{let q=wL(HY6),K=cn(),{stdout:_,code:z}=await q1("security",["find-generic-password","-a",K,"-w","-s",q],{useCwd:!1,preserveOutputOnError:!1});if(z===0&&_)return l8(_.trim())}catch(q){}return null}function kxq(){if(QG6!==void 0)return QG6;if(process.platform!=="darwin")return QG6=!1,!1;try{QG6=KA8("security",["show-keychain-info"],{reject:!1,stdio:["ignore","pipe","pipe"]}).exitCode===36}catch{QG6=!1}return QG6}var Y1_=4032,Txq,QG6;var OV1=E(()=>{K8();JK();X51();AT();i8();JY6();Txq={name:"keychain",read(){let q=uP.cache;if(Date.now()-q.cachedAt{if(K===uP.generation){if(z===null&&q.data!==null)N("[keychain] readAsync failed; serving stale cache",{level:"warn"});let Y=z??q.data;return uP.cache={data:Y,cachedAt:Date.now()},uP.readInFlight=null,Y}return z});return uP.readInFlight=_,_},update(q){aV();try{let K=wL(HY6),_=cn(),z=g6(q),Y=Buffer.from(z,"utf-8").toString("hex"),$=`add-generic-password -U -a "${_}" -s "${K}" -X "${Y}" `,O;if($.length<=Y1_)O=KA8("security",["-i"],{input:$,stdio:["pipe","pipe","pipe"],reject:!1});else N(`Keychain payload (${z.length}B JSON) exceeds security -i stdin limit; using argv`,{level:"warn"}),O=KA8("security",["add-generic-password","-U","-a",_,"-s",K,"-X",Y],{stdio:["ignore","pipe","pipe"],reject:!1});if(O.exitCode!==0)return{success:!1};return uP.cache={data:q,cachedAt:Date.now()},{success:!0}}catch(K){return{success:!1}}},delete(){aV();try{let q=wL(HY6),K=cn();return pR(`security delete-generic-password -a "${K}" -s "${q}"`),!0}catch(q){return!1}}}});import{chmodSync as O1_}from"fs";import{join as A1_}from"path";function uf8(){let q=t1(),K=".credentials.json";return{storageDir:q,storagePath:A1_(q,".credentials.json")}}var AV1;var Vxq=E(()=>{g8();y8();s7();i8();AV1={name:"plaintext",read(){let{storagePath:q}=uf8();try{let K=J8().readFileSync(q,{encoding:"utf8"});return l8(K)}catch{return null}},async readAsync(){let{storagePath:q}=uf8();try{let K=await J8().readFile(q,{encoding:"utf8"});return l8(K)}catch{return null}},update(q){try{let{storageDir:K,storagePath:_}=uf8();try{J8().mkdirSync(K)}catch(z){if(c1(z)!=="EEXIST")throw z}return Jj(_,g6(q),{encoding:"utf8",flush:!1}),O1_(_,384),{success:!0,warning:"Warning: Storing credentials in plaintext."}}catch{return{success:!1}}},delete(){let{storagePath:q}=uf8();try{return J8().unlinkSync(q),!0}catch(K){if(c1(K)==="ENOENT")return!0;return!1}}}});function l3(){if(process.platform==="darwin")return vxq(Txq,AV1);return AV1}var I16=E(()=>{OV1();Vxq()});import{execFile as w1_}from"child_process";function Nxq(q){return new Promise((K)=>{w1_("security",["find-generic-password","-a",cn(),"-w","-s",q],{encoding:"utf-8",timeout:j1_},(_,z)=>{K({stdout:_?null:z?.trim()||null,timedOut:Boolean(_&&"killed"in _&&_.killed)})})})}function yxq(){if(process.platform!=="darwin"||mf8||f9())return;let q=Nxq(wL(HY6)),K=Nxq(wL());mf8=Promise.all([q,K]).then(([_,z])=>{if(!_.timedOut)c$q(_.stdout);if(!z.timedOut)wV1={stdout:z.stdout}})}async function Exq(){if(mf8)await mf8}function Lxq(){return wV1}function jV1(){wV1=null}var j1_=1e4,wV1=null,mf8=null;var HV1=E(()=>{g8();JY6()});function S7(q,K,_){return new Promise((z,Y)=>{if(K?.aborted){if(_?.throwOnAbort||_?.abortError)Y(_.abortError?.()??Error("aborted"));else z();return}let $=setTimeout((A,w,j)=>{A?.removeEventListener("abort",w),j()},q,K,O,z);function O(){if(clearTimeout($),_?.throwOnAbort||_?.abortError)Y(_.abortError?.()??Error("aborted"));else z()}if(K?.addEventListener("abort",O,{once:!0}),_?.unref)$.unref()})}function Rxq(){return hxq}function pf8(){hxq.clear()}var hxq;var Bf8=E(()=>{hxq=new Map});var NL={};v8(NL,{validateForceLoginOrg:()=>Bi,saveOAuthTokensIfNeeded:()=>lG6,saveApiKey:()=>XX1,removeApiKey:()=>NV1,refreshGcpCredentialsIfNeeded:()=>mc6,refreshGcpAuth:()=>Bxq,refreshAwsAuth:()=>mxq,refreshAndGetAwsCredentials:()=>Un,prefetchGcpCredentialsIfSafe:()=>VV1,prefetchAwsCredentialsAndBedRockInfoIfSafe:()=>Uf8,prefetchApiKeyFromApiKeyHelperIfSafe:()=>vV1,isUsing3PServices:()=>u16,isTeamSubscriber:()=>i$6,isTeamPremiumSubscriber:()=>C86,isProSubscriber:()=>_u,isOverageProvisioningAllowed:()=>nG6,isOtelHeadersHelperFromProjectOrLocalSettings:()=>Uxq,isMaxSubscriber:()=>bS,isGcpAuthRefreshFromProjectSettings:()=>kV1,isEnterpriseSubscriber:()=>iG6,isCustomApiKeyApproved:()=>N1_,isConsumerSubscriber:()=>rc6,isClaudeAISubscriber:()=>n7,isAwsCredentialExportFromProjectSettings:()=>ZV1,isAwsAuthRefreshFromProjectSettings:()=>DV1,isAnthropicAuthEnabled:()=>kJ,is1PApiCustomer:()=>n$6,hasProfileScope:()=>zD,hasOpusAccess:()=>L1_,hasAnthropicApiKeyAuth:()=>PV1,handleOAuth401Error:()=>RS,getSubscriptionType:()=>VK,getSubscriptionName:()=>Qf8,getRateLimitTier:()=>bF,getOtelHeadersFromHelper:()=>yV1,getOauthAccountInfo:()=>r_,getConfiguredApiKeyHelper:()=>CF,getClaudeAIOAuthTokensAsync:()=>dc6,getClaudeAIOAuthTokens:()=>t7,getAuthTokenSource:()=>kS,getApiKeyHelperElapsedMs:()=>GV1,getApiKeyFromConfigOrMacOSKeychain:()=>cG6,getApiKeyFromApiKeyHelperCached:()=>MV1,getApiKeyFromApiKeyHelper:()=>uG6,getAnthropicApiKeyWithSource:()=>jA,getAnthropicApiKey:()=>yT,getAccountInformation:()=>rG6,clearOAuthTokenCache:()=>ic6,clearGcpCredentialsCache:()=>nc6,clearAwsCredentialsCache:()=>lc6,clearApiKeyHelperCache:()=>cc6,checkGcpCredentialsValid:()=>pxq,checkAndRefreshOAuthTokenIfNeeded:()=>QY,calculateApiKeyHelperTTL:()=>uxq});import{exec as xxq}from"child_process";import{mkdir as H1_,stat as J1_}from"fs/promises";import{join as M1_}from"path";function Ff8(){return Q6(process.env.CLAUDE_CODE_REMOTE)||process.env.CLAUDE_CODE_ENTRYPOINT==="claude-desktop"}function kJ(){if(process.env.ANTHROPIC_BASE_URL||process.env.ANTHROPIC_AUTH_TOKEN)return!1;try{let s=(globalThis.__CLAUDE_SETTINGS__||{}).env||{};if(s.ANTHROPIC_BASE_URL||s.ANTHROPIC_AUTH_TOKEN)return!1}catch{}return!1}function kS(){if(f9()){if(CF())return{source:"apiKeyHelper",hasToken:!0};return{source:"none",hasToken:!1}}if(process.env.ANTHROPIC_AUTH_TOKEN&&!Ff8())return{source:"ANTHROPIC_AUTH_TOKEN",hasToken:!0};if(process.env.CLAUDE_CODE_OAUTH_TOKEN)return{source:"CLAUDE_CODE_OAUTH_TOKEN",hasToken:!0};if(kM8()){if(process.env.CLAUDE_CODE_OAUTH_TOKEN_FILE_DESCRIPTOR)return{source:"CLAUDE_CODE_OAUTH_TOKEN_FILE_DESCRIPTOR",hasToken:!0};return{source:"CCR_OAUTH_TOKEN_FILE",hasToken:!0}}if(CF()&&!Ff8())return{source:"apiKeyHelper",hasToken:!0};let _=t7();if(VS(_?.scopes)&&_?.accessToken)return{source:"claude.ai",hasToken:!0};return{source:"none",hasToken:!1}}function yT(){let{key:q}=jA();return q}function PV1(){let{key:q,source:K}=jA({skipRetrievingKeyFromApiKeyHelper:!0});return q!==null&&K!=="none"}function jA(q={}){if(f9()){if(process.env.ANTHROPIC_API_KEY)return{key:process.env.ANTHROPIC_API_KEY,source:"ANTHROPIC_API_KEY"};if(CF())return{key:q.skipRetrievingKeyFromApiKeyHelper?null:MV1(),source:"apiKeyHelper"};return{key:null,source:"none"}}let K=lv()?void 0:process.env.ANTHROPIC_API_KEY;if(mx6()&&K)return{key:K,source:"ANTHROPIC_API_KEY"};if(Q6(!1)){let $=WX1();if($)return{key:$,source:"ANTHROPIC_API_KEY"};if(!K&&!process.env.CLAUDE_CODE_OAUTH_TOKEN&&!process.env.CLAUDE_CODE_OAUTH_TOKEN_FILE_DESCRIPTOR)throw Error("ANTHROPIC_API_KEY or CLAUDE_CODE_OAUTH_TOKEN env var is required");if(K)return{key:K,source:"ANTHROPIC_API_KEY"};return{key:null,source:"none"}}if(K&&j8().customApiKeyResponses?.approved?.includes(sV(K)))return{key:K,source:"ANTHROPIC_API_KEY"};let _=WX1();if(_)return{key:_,source:"ANTHROPIC_API_KEY"};if(CF()){if(q.skipRetrievingKeyFromApiKeyHelper)return{key:null,source:"apiKeyHelper"};return{key:MV1(),source:"apiKeyHelper"}}let Y=cG6();if(Y)return Y;return{key:null,source:"none"}}function CF(){if(f9())return y1("flagSettings")?.apiKeyHelper;return(N7()||{}).apiKeyHelper}function Ixq(){let q=CF();if(!q)return!1;let K=y1("projectSettings"),_=y1("localSettings");return K?.apiKeyHelper===q||_?.apiKeyHelper===q}function WV1(){return(N7()||{}).awsAuthRefresh}function DV1(){let q=WV1();if(!q)return!1;let K=y1("projectSettings"),_=y1("localSettings");return K?.awsAuthRefresh===q||_?.awsAuthRefresh===q}function fV1(){return(N7()||{}).awsCredentialExport}function ZV1(){let q=fV1();if(!q)return!1;let K=y1("projectSettings"),_=y1("localSettings");return K?.awsCredentialExport===q||_?.awsCredentialExport===q}function uxq(){let q=process.env.CLAUDE_CODE_API_KEY_HELPER_TTL_MS;if(q){let K=parseInt(q,10);if(!Number.isNaN(K)&&K>=0)return K;N(`Found CLAUDE_CODE_API_KEY_HELPER_TTL_MS env var, but it was not a valid number. Got ${q}`,{level:"error"})}return X1_}function GV1(){let q=pi?.startedAt;return q?Date.now()-q:0}async function uG6(q){if(!CF())return null;let K=uxq();if(VL){if(Date.now()-VL.timestamp{let z=xxq(q,{timeout:f1_});z.stdout.on("data",(Y)=>{let $=Y.toString().trim();if($)K.addOutput($),N($,{level:"debug"})}),z.stderr.on("data",(Y)=>{let $=Y.toString().trim();if($)K.setError($),N($,{level:"error"})}),z.on("close",(Y,$)=>{if(Y===0)N("AWS auth refresh completed successfully"),K.endAuthentication(!0),_(!0);else{let A=$==="SIGTERM"?$8.red("AWS auth refresh timed out after 3 minutes. Run your auth command manually in a separate terminal."):$8.red("Error running awsAuthRefresh (in settings or ~/.claude.json):");console.error(A),K.endAuthentication(!1),_(!1)}})})}async function Z1_(){let q=fV1();if(!q)return null;if(ZV1()){if(!e$()&&!F7()){let _=Error(`Security: awsCredentialExport executed before workspace trust is confirmed. If you see this message, post in ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.90",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-04-01T22:53:10Z"}.FEEDBACK_CHANNEL}.`);return bE("awsCredentialExport invoked before trust check",_),d("tengu_awsCredentialExport_missing_trust",{}),null}}try{return N("Fetching AWS caller identity for credential export command"),await AW1(),N("Fetched AWS caller identity, skipping AWS credential export command"),null}catch{try{N("Running AWS credential export command");let K=await Wj(q,{reject:!1});if(K.exitCode!==0||!K.stdout)throw Error("awsCredentialExport did not return a valid value");let _=l8(K.stdout.trim());if(!Ujq(_))throw Error("awsCredentialExport did not return valid AWS STS output structure");return N("AWS credentials retrieved from awsCredentialExport"),{accessKeyId:_.Credentials.AccessKeyId,secretAccessKey:_.Credentials.SecretAccessKey,sessionToken:_.Credentials.SessionToken}}catch(K){let _=$8.red("Error getting AWS credentials from awsCredentialExport (in settings or ~/.claude.json):");if(K instanceof Error)console.error(_,K.message);else console.error(_,K);return null}}}function lc6(){Un.cache.clear()}function TV1(){return(N7()||{}).gcpAuthRefresh}function kV1(){let q=TV1();if(!q)return!1;let K=y1("projectSettings"),_=y1("localSettings");return K?.gcpAuthRefresh===q||_?.gcpAuthRefresh===q}async function pxq(){try{let{GoogleAuth:q}=await Promise.resolve().then(() => w6(Df8(),1)),K=new q({scopes:["https://www.googleapis.com/auth/cloud-platform"]}),_=(async()=>{await(await K.getClient()).getAccessToken()})(),z=S7(G1_).then(()=>{throw new Qxq("GCP credentials check timed out")});return await Promise.race([_,z]),!0}catch{return!1}}async function T1_(){let q=TV1();if(!q)return!1;if(kV1()){if(!e$()&&!F7()){let _=Error(`Security: gcpAuthRefresh executed before workspace trust is confirmed. If you see this message, post in ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.90",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-04-01T22:53:10Z"}.FEEDBACK_CHANNEL}.`);return bE("gcpAuthRefresh invoked before trust check",_),d("tengu_gcpAuthRefresh_missing_trust",{}),!1}}try{if(N("Checking GCP credentials validity for auth refresh"),await pxq())return N("GCP credentials are valid, skipping auth refresh command"),!1}catch{}return Bxq(q)}function Bxq(q){N("Running GCP auth refresh command");let K=$D.getInstance();return K.startAuthentication(),new Promise((_)=>{let z=xxq(q,{timeout:k1_});z.stdout.on("data",(Y)=>{let $=Y.toString().trim();if($)K.addOutput($),N($,{level:"debug"})}),z.stderr.on("data",(Y)=>{let $=Y.toString().trim();if($)K.setError($),N($,{level:"error"})}),z.on("close",(Y,$)=>{if(Y===0)N("GCP auth refresh completed successfully"),K.endAuthentication(!0),_(!0);else{let A=$==="SIGTERM"?$8.red("GCP auth refresh timed out after 3 minutes. Run your auth command manually in a separate terminal."):$8.red("Error running gcpAuthRefresh (in settings or ~/.claude.json):");console.error(A),K.endAuthentication(!1),_(!1)}})})}function nc6(){mc6.cache.clear()}function VV1(){if(!TV1())return;if(kV1()){if(!e$()&&!F7())return}mc6()}function Uf8(){let q=WV1(),K=fV1();if(!q&&!K)return;if(DV1()||ZV1()){if(!e$()&&!F7())return}Un(),t9()}function V1_(q){return/^[a-zA-Z0-9-_]+$/.test(q)}async function XX1(q){if(!V1_(q))throw Error("Invalid API key format. API key must contain only alphanumeric characters, dashes, and underscores.");await gxq();let K=!1;if(process.platform==="darwin")try{let z=wL(),Y=cn(),$=Buffer.from(q,"utf-8").toString("hex"),O=`add-generic-password -U -a "${Y}" -s "${z}" -X "${$}" -`;await zg("security",["-i"],{input:O,reject:!1}),d("tengu_api_key_saved_to_keychain",{}),K=!0}catch(z){j6(z),d("tengu_api_key_keychain_error",{error:F6(z)}),d("tengu_api_key_saved_to_config",{})}else d("tengu_api_key_saved_to_config",{});let _=sV(q);S8((z)=>{let Y=z.customApiKeyResponses?.approved??[];return{...z,primaryApiKey:K?z.primaryApiKey:q,customApiKeyResponses:{...z.customApiKeyResponses,approved:Y.includes(_)?Y:[...Y,_],rejected:z.customApiKeyResponses?.rejected??[]}}}),cG6.cache.clear?.(),jV1()}function N1_(q){let K=j8(),_=sV(q);return K.customApiKeyResponses?.approved?.includes(_)??!1}async function NV1(){await gxq(),S8((q)=>({...q,primaryApiKey:void 0})),cG6.cache.clear?.(),jV1()}async function gxq(){try{await l$q()}catch(q){j6(q)}}function lG6(q){if(!VS(q.scopes))return d("tengu_oauth_tokens_not_claude_ai",{}),{success:!0};if(!q.refreshToken||!q.expiresAt)return d("tengu_oauth_tokens_inference_only",{}),{success:!0};let K=l3(),_=K.name;try{let z=K.read()||{},Y=z.claudeAiOauth;z.claudeAiOauth={accessToken:q.accessToken,refreshToken:q.refreshToken,expiresAt:q.expiresAt,scopes:q.scopes,subscriptionType:q.subscriptionType??Y?.subscriptionType??null,rateLimitTier:q.rateLimitTier??Y?.rateLimitTier??null};let $=K.update(z);if($.success)d("tengu_oauth_tokens_saved",{storageBackend:_});else d("tengu_oauth_tokens_save_failed",{storageBackend:_});return t7.cache?.clear?.(),Vf8(),pf8(),$}catch(z){return j6(z),d("tengu_oauth_tokens_save_exception",{storageBackend:_,error:F6(z)}),{success:!1,warning:"Failed to save OAuth tokens"}}}function ic6(){t7.cache?.clear?.(),aV()}async function y1_(){try{let{mtimeMs:q}=await J1_(M1_(t1(),".credentials.json"));if(q!==Cxq)Cxq=q,ic6()}catch{t7.cache?.clear?.()}}function RS(q){let K=JV1.get(q);if(K)return K;let _=E1_(q).finally(()=>{JV1.delete(q)});return JV1.set(q,_),_}async function E1_(q){ic6();let K=await dc6();if(!K?.refreshToken)return!1;if(K.accessToken!==q)return d("tengu_oauth_401_recovered_from_keychain",{}),!0;return QY(0,!0)}async function dc6(){if(f9())return null;if(process.env.CLAUDE_CODE_OAUTH_TOKEN||kM8())return t7();try{let _=(await l3().readAsync())?.claudeAiOauth;if(!_?.accessToken)return null;return _}catch(q){return j6(q),null}}function QY(q=0,K=!1){if(q===0&&!K){if(Qc6)return Qc6;return Qc6=XV1(q,K).finally(()=>{Qc6=null}),Qc6}return XV1(q,K)}async function XV1(q,K){await y1_();let z=t7();if(!K){if(!z?.refreshToken||!sg(z.expiresAt))return!1}if(!z?.refreshToken)return!1;if(!VS(z.scopes))return!1;t7.cache?.clear?.(),aV();let Y=await dc6();if(!Y?.refreshToken||!sg(Y.expiresAt))return!1;let $=t1();await H1_($,{recursive:!0});let O;try{d("tengu_oauth_token_refresh_lock_acquiring",{}),O=await TJ($),d("tengu_oauth_token_refresh_lock_acquired",{})}catch(A){if(A.code==="ELOCKED"){if(q<5)return d("tengu_oauth_token_refresh_lock_retry",{retryCount:q+1}),await S7(1000+Math.random()*1000),XV1(q+1,K);return d("tengu_oauth_token_refresh_lock_retry_limit_reached",{maxRetries:5}),!1}return j6(A),d("tengu_oauth_token_refresh_lock_error",{error:F6(A)}),!1}try{t7.cache?.clear?.(),aV();let A=await dc6();if(!A?.refreshToken||!sg(A.expiresAt))return d("tengu_oauth_token_refresh_race_resolved",{}),!1;d("tengu_oauth_token_refresh_starting",{});let w=await ZU6(A.refreshToken,{scopes:VS(A.scopes)?void 0:A.scopes});return lG6(w),t7.cache?.clear?.(),aV(),!0}catch(A){j6(A),t7.cache?.clear?.(),aV();let w=await dc6();if(w&&!sg(w.expiresAt))return d("tengu_oauth_token_refresh_race_recovered",{}),!0;return!1}finally{d("tengu_oauth_token_refresh_lock_releasing",{}),await O(),d("tengu_oauth_token_refresh_lock_released",{})}}function n7(){if(process.env.ANTHROPIC_BASE_URL||process.env.ANTHROPIC_AUTH_TOKEN)return!1;try{let s=(globalThis.__CLAUDE_SETTINGS__||{}).env||{};if(s.ANTHROPIC_BASE_URL||s.ANTHROPIC_AUTH_TOKEN)return!1}catch{}return!1}function zD(){return t7()?.scopes?.includes(C_6)??!1}function n$6(){if(Q6(process.env.CLAUDE_CODE_USE_BEDROCK)||Q6(process.env.CLAUDE_CODE_USE_VERTEX)||Q6(process.env.CLAUDE_CODE_USE_FOUNDRY)||Q6(process.env.CLAUDE_CODE_USE_ANTHROPIC_AWS))return!1;if(n7())return!1;return!0}function r_(){return kJ()?j8().oauthAccount:void 0}function nG6(){let K=r_()?.billingType;if(!n7()||!K)return!1;if(K!=="stripe_subscription"&&K!=="stripe_subscription_contracted"&&K!=="apple_subscription"&&K!=="google_play_subscription")return!1;return!0}function L1_(){let q=VK();return q==="max"||q==="enterprise"||q==="team"||q==="pro"||q===null}function VK(){if(U$q())return F$q();if(!kJ())return null;let q=t7();if(!q)return null;return q.subscriptionType??null}function bS(){return VK()==="max"}function i$6(){return VK()==="team"}function C86(){return VK()==="team"&&bF()==="default_claude_max_5x"}function iG6(){return VK()==="enterprise"}function _u(){return VK()==="pro"}function bF(){if(!kJ())return null;let q=t7();if(!q)return null;return q.rateLimitTier??null}function Qf8(){switch(VK()){case"enterprise":return"Claude Enterprise";case"team":return"Claude Team";case"max":return"Claude Max";case"pro":return"Claude Pro";default:return"Claude API"}}function u16(){return!!(Q6(process.env.CLAUDE_CODE_USE_BEDROCK)||Q6(process.env.CLAUDE_CODE_USE_VERTEX)||Q6(process.env.CLAUDE_CODE_USE_FOUNDRY)||Q6(process.env.CLAUDE_CODE_USE_ANTHROPIC_AWS))}function Fxq(){return(N7()||{}).otelHeadersHelper}function Uxq(){let q=Fxq();if(!q)return!1;let K=y1("projectSettings"),_=y1("localSettings");return K?.otelHeadersHelper===q||_?.otelHeadersHelper===q}function yV1(){let q=Fxq();if(!q)return{};let K=parseInt(process.env.CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS||h1_.toString());if(gf8&&Date.now()-bxq{let Y=z.customApiKeyResponses?.approved??[];return{...z,primaryApiKey:K?z.primaryApiKey:q,customApiKeyResponses:{...z.customApiKeyResponses,approved:Y.includes(_)?Y:[...Y,_],rejected:z.customApiKeyResponses?.rejected??[]}}}),cG6.cache.clear?.(),jV1()}function N1_(q){let K=j8(),_=sV(q);return K.customApiKeyResponses?.approved?.includes(_)??!1}async function NV1(){await gxq(),S8((q)=>({...q,primaryApiKey:void 0})),cG6.cache.clear?.(),jV1()}async function gxq(){try{await l$q()}catch(q){j6(q)}}function lG6(q){if(!VS(q.scopes))return d("tengu_oauth_tokens_not_claude_ai",{}),{success:!0};if(!q.refreshToken||!q.expiresAt)return d("tengu_oauth_tokens_inference_only",{}),{success:!0};let K=l3(),_=K.name;try{let z=K.read()||{},Y=z.claudeAiOauth;z.claudeAiOauth={accessToken:q.accessToken,refreshToken:q.refreshToken,expiresAt:q.expiresAt,scopes:q.scopes,subscriptionType:q.subscriptionType??Y?.subscriptionType??null,rateLimitTier:q.rateLimitTier??Y?.rateLimitTier??null};let $=K.update(z);if($.success)d("tengu_oauth_tokens_saved",{storageBackend:_});else d("tengu_oauth_tokens_save_failed",{storageBackend:_});return t7.cache?.clear?.(),Vf8(),pf8(),$}catch(z){return j6(z),d("tengu_oauth_tokens_save_exception",{storageBackend:_,error:F6(z)}),{success:!1,warning:"Failed to save OAuth tokens"}}}function ic6(){t7.cache?.clear?.(),aV()}async function y1_(){try{let{mtimeMs:q}=await J1_(M1_(t1(),".credentials.json"));if(q!==Cxq)Cxq=q,ic6()}catch{t7.cache?.clear?.()}}function RS(q){let K=JV1.get(q);if(K)return K;let _=E1_(q).finally(()=>{JV1.delete(q)});return JV1.set(q,_),_}async function E1_(q){ic6();let K=await dc6();if(!K?.refreshToken)return!1;if(K.accessToken!==q)return d("tengu_oauth_401_recovered_from_keychain",{}),!0;return QY(0,!0)}async function dc6(){if(f9())return null;if(process.env.CLAUDE_CODE_OAUTH_TOKEN||kM8())return t7();try{let _=(await l3().readAsync())?.claudeAiOauth;if(!_?.accessToken)return null;return _}catch(q){return j6(q),null}}function QY(q=0,K=!1){if(q===0&&!K){if(Qc6)return Qc6;return Qc6=XV1(q,K).finally(()=>{Qc6=null}),Qc6}return XV1(q,K)}async function XV1(q,K){await y1_();let z=t7();if(!K){if(!z?.refreshToken||!sg(z.expiresAt))return!1}if(!z?.refreshToken)return!1;if(!VS(z.scopes))return!1;t7.cache?.clear?.(),aV();let Y=await dc6();if(!Y?.refreshToken||!sg(Y.expiresAt))return!1;let $=t1();await H1_($,{recursive:!0});let O;try{d("tengu_oauth_token_refresh_lock_acquiring",{}),O=await TJ($),d("tengu_oauth_token_refresh_lock_acquired",{})}catch(A){if(A.code==="ELOCKED"){if(q<5)return d("tengu_oauth_token_refresh_lock_retry",{retryCount:q+1}),await S7(1000+Math.random()*1000),XV1(q+1,K);return d("tengu_oauth_token_refresh_lock_retry_limit_reached",{maxRetries:5}),!1}return j6(A),d("tengu_oauth_token_refresh_lock_error",{error:F6(A)}),!1}try{t7.cache?.clear?.(),aV();let A=await dc6();if(!A?.refreshToken||!sg(A.expiresAt))return d("tengu_oauth_token_refresh_race_resolved",{}),!1;d("tengu_oauth_token_refresh_starting",{});let w=await ZU6(A.refreshToken,{scopes:VS(A.scopes)?void 0:A.scopes});return lG6(w),t7.cache?.clear?.(),aV(),!0}catch(A){j6(A),t7.cache?.clear?.(),aV();let w=await dc6();if(w&&!sg(w.expiresAt))return d("tengu_oauth_token_refresh_race_recovered",{}),!0;return!1}finally{d("tengu_oauth_token_refresh_lock_releasing",{}),await O(),d("tengu_oauth_token_refresh_lock_released",{})}}function n7(){if(process.env.ANTHROPIC_BASE_URL||process.env.ANTHROPIC_AUTH_TOKEN)return!1;try{let s=(globalThis.__CLAUDE_SETTINGS__||{}).env||{};if(s.ANTHROPIC_BASE_URL||s.ANTHROPIC_AUTH_TOKEN)return!1}catch{}return!1}function zD(){return t7()?.scopes?.includes(C_6)??!1}function n$6(){if(process.env.ANTHROPIC_BASE_URL||process.env.ANTHROPIC_AUTH_TOKEN)return!1;try{let s=(globalThis.__CLAUDE_SETTINGS__||{}).env||{};if(s.ANTHROPIC_BASE_URL||s.ANTHROPIC_AUTH_TOKEN)return!1}catch{}return!1}function r_(){return kJ()?j8().oauthAccount:void 0}function nG6(){let K=r_()?.billingType;if(!n7()||!K)return!1;if(K!=="stripe_subscription"&&K!=="stripe_subscription_contracted"&&K!=="apple_subscription"&&K!=="google_play_subscription")return!1;return!0}function L1_(){let q=VK();return q==="max"||q==="enterprise"||q==="team"||q==="pro"||q===null}function VK(){if(U$q())return F$q();if(!kJ())return null;let q=t7();if(!q)return null;return q.subscriptionType??null}function bS(){return VK()==="max"}function i$6(){return VK()==="team"}function C86(){return VK()==="team"&&bF()==="default_claude_max_5x"}function iG6(){return VK()==="enterprise"}function _u(){return VK()==="pro"}function bF(){if(!kJ())return null;let q=t7();if(!q)return null;return q.rateLimitTier??null}function Qf8(){switch(VK()){case"enterprise":return"Claude Enterprise";case"team":return"Claude Team";case"max":return"Claude Max";case"pro":return"Claude Pro";default:return"Claude API"}}function u16(){if(process.env.ANTHROPIC_BASE_URL||process.env.ANTHROPIC_AUTH_TOKEN)return!0;try{let s=(globalThis.__CLAUDE_SETTINGS__||{}).env||{};if(s.ANTHROPIC_BASE_URL||s.ANTHROPIC_AUTH_TOKEN)return!0}catch{}return!0}function Fxq(){return(N7()||{}).otelHeadersHelper}function Uxq(){let q=Fxq();if(!q)return!1;let K=y1("projectSettings"),_=y1("localSettings");return K?.otelHeadersHelper===q||_?.otelHeadersHelper===q}function yV1(){let q=Fxq();if(!q)return{};let K=parseInt(process.env.CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS||h1_.toString());if(gf8&&Date.now()-bxqg6(z)).join(` `)+` -`;await RM_(q,_,"utf8")}catch(_){j6(_)}}async deleteFile(q){try{await Yaq(q)}catch{}}async retryPreviousBatches(){try{let q=`${Oaq}${N8()}.`,K;try{K=(await SM_(Wl6())).filter((_)=>_.startsWith(q)&&_.endsWith(".json")).filter((_)=>!_.includes($aq))}catch(_){if(q9(_))return;throw _}for(let _ of K){let z=RZ8.join(Wl6(),_);this.retryFileInBackground(z)}}catch(q){j6(q)}}async retryFileInBackground(q){if(this.attempts>=this.maxAttempts){await this.deleteFile(q);return}let K=await this.loadEventsFromFile(q);if(K.length===0){await this.deleteFile(q);return}let _=await this.sendEventsInBatches(K);if(_.length===0)await this.deleteFile(q);else await this.saveEventsToFile(q,_)}async export(q,K){if(this.isShutdown){K({code:d16.ExportResultCode.FAILED,error:Error("Exporter has been shutdown")});return}let _=this.doExport(q,K);this.pendingExports.push(_),_.finally(()=>{let z=this.pendingExports.indexOf(_);if(z>-1)this.pendingExports.splice(z,1)})}async doExport(q,K){try{let _=q.filter(($)=>$.instrumentationScope?.name==="com.anthropic.claude_code.events");if(_.length===0){K({code:d16.ExportResultCode.SUCCESS});return}let z=this.transformLogsToEvents(_).events;if(z.length===0){K({code:d16.ExportResultCode.SUCCESS});return}if(this.attempts>=this.maxAttempts){K({code:d16.ExportResultCode.FAILED,error:Error(`Dropped ${z.length} events: max attempts (${this.maxAttempts}) reached`)});return}let Y=await this.sendEventsInBatches(z);if(this.attempts++,Y.length>0){await this.queueFailedEvents(Y),this.scheduleBackoffRetry();let $=this.lastExportErrorContext?` (${this.lastExportErrorContext})`:"";K({code:d16.ExportResultCode.FAILED,error:Error(`Failed to export ${Y.length} events${$}`)});return}if(this.resetBackoff(),await this.getQueuedEventCount()>0&&!this.isRetrying)this.retryFailedEvents();K({code:d16.ExportResultCode.SUCCESS})}catch(_){j6(_),K({code:d16.ExportResultCode.FAILED,error:B1(_)})}}async sendEventsInBatches(q){let K=[];for(let Y=0;Y0)await S7(this.batchDelayMs)}if(_.length>0&&z)this.lastExportErrorContext=z;return _}async queueFailedEvents(q){let K=this.getCurrentBatchFilePath();await this.appendEventsToFile(K,q);let _=this.lastExportErrorContext?` (${this.lastExportErrorContext})`:"",z=`1P event logging: ${q.length} events failed to export${_}`;j6(Error(z))}scheduleBackoffRetry(){if(this.cancelBackoff||this.isRetrying||this.isShutdown)return;let q=Math.min(this.baseBackoffDelayMs*this.attempts*this.attempts,this.maxBackoffDelayMs);this.cancelBackoff=this.schedule(async()=>{this.cancelBackoff=null,await this.retryFailedEvents()},q)}async retryFailedEvents(){let q=this.getCurrentBatchFilePath();while(!this.isShutdown){let K=await this.loadEventsFromFile(q);if(K.length===0)break;if(this.attempts>=this.maxAttempts){await this.deleteFile(q),this.resetBackoff();return}this.isRetrying=!0,await this.deleteFile(q);let _=await this.sendEventsInBatches(K);if(this.attempts++,this.isRetrying=!1,_.length>0){await this.saveEventsToFile(q,_),this.scheduleBackoffRetry();return}this.resetBackoff()}}resetBackoff(){if(this.attempts=0,this.cancelBackoff)this.cancelBackoff(),this.cancelBackoff=null}async sendBatchWithRetry(q){if(this.isKilled())throw Error("firstParty sink killswitch active");let K={"Content-Type":"application/json","User-Agent":j$(),"x-service-name":"claude-code"},_=e$()||F7(),z=this.skipAuth||!_;if(!z&&n7()){let A=t7();if(!zD())z=!0;else if(A&&sg(A.expiresAt))z=!0}let Y=z?{headers:{},error:"trust not established or Oauth token expired"}:VJ(),$=!Y.error,O=$?{...K,...Y.headers}:K;try{let A=await $1.post(this.endpoint,q,{timeout:this.timeout,headers:O});this.logSuccess(q.events.length,$,A.data);return}catch(A){if($&&$1.isAxiosError(A)&&A.response?.status===401){let w=await $1.post(this.endpoint,q,{timeout:this.timeout,headers:K});this.logSuccess(q.events.length,!1,w.data);return}throw A}}logSuccess(q,K,_){}hrTimeToDate(q){let[K,_]=q;return new Date(K*1000+_/1e6)}transformLogsToEvents(q){let K=[];for(let _ of q){let z=_.attributes||{};if(z.event_type==="GrowthbookExperimentEvent"){let P=this.hrTimeToDate(_.hrTime),W=z.account_uuid,D=z.organization_uuid;K.push({event_type:"GrowthbookExperimentEvent",event_data:jy1.toJSON({event_id:z.event_id,timestamp:P,experiment_id:z.experiment_id,variation_id:z.variation_id,environment:z.environment,user_attributes:z.user_attributes,experiment_metadata:z.experiment_metadata,device_id:z.device_id,session_id:z.session_id,auth:W||D?{account_uuid:W,organization_uuid:D}:void 0})});continue}let Y=z.event_name||_.body||"unknown",$=z.core_metadata,O=z.user_metadata,A=z.event_metadata||{};if(!$){K.push({event_type:"ClaudeCodeInternalEvent",event_data:vZ8.toJSON({event_id:z.event_id,event_name:Y,client_timestamp:this.hrTimeToDate(_.hrTime),session_id:N8(),additional_metadata:Buffer.from(g6({transform_error:"core_metadata attribute is missing"})).toString("base64")})});continue}let w=_aq($,O,A),{_PROTO_skill_name:j,_PROTO_plugin_name:H,_PROTO_marketplace_name:J,...M}=w.additional,X=y98(M);K.push({event_type:"ClaudeCodeInternalEvent",event_data:vZ8.toJSON({event_id:z.event_id,event_name:Y,client_timestamp:this.hrTimeToDate(_.hrTime),device_id:z.user_id,email:O?.email,auth:w.auth,...w.core,env:w.env,process:w.process,skill_name:typeof j==="string"?j:void 0,plugin_name:typeof H==="string"?H:void 0,marketplace_name:typeof J==="string"?J:void 0,additional_metadata:Object.keys(X).length>0?Buffer.from(g6(X)).toString("base64"):void 0})})}return{events:K}}async shutdown(){this.isShutdown=!0,this.resetBackoff(),await this.forceFlush()}async forceFlush(){await Promise.all(this.pendingExports)}}function bM_(q){if(!$1.isAxiosError(q))return F6(q);let K=[],_=q.response?.headers?.["request-id"];if(_)K.push(`request-id=${_}`);if(q.response?.status)K.push(`status=${q.response.status}`);if(q.code)K.push(`code=${q.code}`);if(q.message)K.push(q.message);return K.join(", ")}var d16,$aq,Oaq="1p_failed_events.";var Aaq=E(()=>{TK();T8();goq();Foq();k7();V1();K8();g8();y8();xG();bA();R8();i8();_D();V8();QA();d16=w6(Hz(),1),$aq=hM_()});function jv6(q){return pG(xM_,{})?.[q]===!0}var xM_="tengu_frond_boric";var Vy1=E(()=>{s1()});var Paq={};v8(Paq,{shutdown1PEventLogging:()=>ii,shouldSampleEvent:()=>Ny1,reinitialize1PEventLoggingIfConfigChanged:()=>UM_,logGrowthBookExperimentTo1P:()=>yy1,logEventTo1P:()=>Dl6,is1PEventLoggingEnabled:()=>DO6,initialize1PEventLogging:()=>Xaq,getEventSamplingConfig:()=>Haq});import{randomUUID as jaq}from"crypto";function Haq(){return pG(IM_,{})}function Ny1(q){let _=Haq()[q];if(!_)return null;let z=_.sample_rate;if(typeof z!=="number"||z<0||z>1)return null;if(z>=1)return null;if(z<=0)return 0;return Math.random()jv6("firstParty")});c16=new SZ8.LoggerProvider({resource:A,processors:[new SZ8.BatchLogRecordProcessor(w,{scheduledDelayMillis:_,maxExportBatchSize:z,maxQueueSize:Y})]}),l16=c16.getLogger("com.anthropic.claude_code.events",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.90",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-04-01T22:53:10Z"}.VERSION)}async function UM_(){if(!DO6()||!c16)return;let q=Jaq();if(KM(q,Maq))return;let K=c16,_=l16;l16=null;try{await K.forceFlush()}catch{}c16=null;try{Xaq()}catch(z){c16=K,l16=_,j6(z);return}K.shutdown().catch(()=>{})}var waq,SZ8,CZ8,IM_="tengu_event_sampling_config",uM_="tengu_1p_event_batch_config",l16=null,c16=null,Maq=null,BM_=1e4,gM_=200,FM_=8192;var ri=E(()=>{cW6();V1();K8();R8();kK();i8();tx();o$6();g16();Aaq();s1();QA();Vy1();waq=w6(zv6(),1),SZ8=w6($y1(),1),CZ8=w6($O6(),1)});var Naq={};v8(Naq,{stopPeriodicGrowthBookRefresh:()=>Cy1,setupPeriodicGrowthBookRefresh:()=>Vaq,setGrowthBookConfigOverride:()=>lM_,resetGrowthBook:()=>kl6,refreshGrowthBookFeatures:()=>kaq,refreshGrowthBookAfterAuthChange:()=>GO6,onGrowthBookRefresh:()=>vl6,initializeGrowthBook:()=>si,hasGrowthBookEnvOverride:()=>QM_,getGrowthBookConfigOverrides:()=>cM_,getFeatureValue_DEPRECATED:()=>bZ8,getFeatureValue_CACHED_WITH_REFRESH:()=>GN,getFeatureValue_CACHED_MAY_BE_STALE:()=>I8,getDynamicConfig_CACHED_MAY_BE_STALE:()=>pG,getDynamicConfig_BLOCKS_ON_INIT:()=>AC,getApiBaseUrlHost:()=>Gaq,getAllGrowthBookFeatures:()=>dM_,clearGrowthBookConfigOverrides:()=>nM_,checkStatsigFeatureGate_CACHED_MAY_BE_STALE:()=>w$,checkSecurityRestrictionGate:()=>Sy1,checkGate_CACHED_OR_BLOCKING:()=>vN});function Waq(q){try{Promise.resolve(q()).catch((K)=>{j6(K)})}catch(K){j6(K)}}function vl6(q){let K=!0,_=Mv6.subscribe(()=>Waq(q));if(OC.size>0)queueMicrotask(()=>{if(K&&OC.size>0)Waq(q)});return()=>{K=!1,_()}}function Xv6(){if(!Ly1)Ly1=!0;return Daq}function QM_(q){let K=Xv6();return K!==null&&q in K}function Pv6(){return}function dM_(){if(OC.size>0)return Object.fromEntries(OC);return j8().cachedGrowthBookFeatures??{}}function cM_(){return Pv6()??{}}function lM_(q,K){return}function nM_(){return}function Tl6(q){if(Ey1.has(q))return;let K=ZO6.get(q);if(K)Ey1.add(q),yy1({experimentId:K.experimentId,variationId:K.variationId,userAttributes:vaq(),experimentMetadata:{feature_id:q}})}async function faq(q){let K=q.getPayload();if(!K?.features||Object.keys(K.features).length===0)return!1;ZO6.clear();let _={};for(let[z,Y]of Object.entries(K.features)){let $=Y;if("value"in $&&!("defaultValue"in $))_[z]={...$,defaultValue:$.value};else _[z]=$;if($.source==="experiment"&&$.experimentResult){let{experimentResult:O,experiment:A}=$;if(A?.key&&O.variationId!==void 0)ZO6.set(z,{experimentId:A.key,variationId:O.variationId})}}await q.setPayload({...K,features:_}),OC.clear();for(let[z,Y]of Object.entries(_)){let $="value"in Y?Y.value:Y.defaultValue;if($!==void 0)OC.set(z,$)}return!0}function Zaq(){let q=Object.fromEntries(OC),K=j8();if(KM(K.cachedGrowthBookFeatures,q))return;S8((_)=>({..._,cachedGrowthBookFeatures:q}))}function ai(){return DO6()}function Gaq(){let q=process.env.ANTHROPIC_BASE_URL;if(!q)return;try{let K=new URL(q).host;if(K==="api.anthropic.com")return;return K}catch{return}}function vaq(){let q=nxq(),K=q.email,_=Gaq();return{id:q.deviceId,sessionId:q.sessionId,deviceID:q.deviceId,platform:q.platform,..._&&{apiBaseUrlHost:_},...q.organizationUuid&&{organizationUUID:q.organizationUuid},...q.accountUuid&&{accountUUID:q.accountUuid},...q.userType&&{userType:q.userType},...q.subscriptionType&&{subscriptionType:q.subscriptionType},...q.rateLimitTier&&{rateLimitTier:q.rateLimitTier},...q.firstTokenTime&&{firstTokenTime:q.firstTokenTime},...K&&{email:K},...q.appVersion&&{appVersion:q.appVersion},...q.githubActionsMetadata&&{githubActionsMetadata:q.githubActionsMetadata}}}async function Taq(q,K,_){let z=Xv6();if(z&&q in z)return z[q];let Y=Pv6();if(Y&&q in Y)return Y[q];if(!ai())return K;let $=await si();if(!$)return K;let O;if(OC.has(q))O=OC.get(q);else O=$.getFeatureValue(q,K);if(_)Tl6(q);return O}async function bZ8(q,K){return Taq(q,K,!0)}function I8(q,K){let _=Xv6();if(_&&q in _)return _[q];let z=Pv6();if(z&&q in z)return z[q];if(!ai())return K;if(ZO6.has(q))Tl6(q);else Jv6.add(q);if(OC.has(q))return OC.get(q);try{let Y=j8().cachedGrowthBookFeatures?.[q];return Y!==void 0?Y:K}catch{return K}}function GN(q,K,_){return I8(q,K)}function w$(q){let K=Xv6();if(K&&q in K)return Boolean(K[q]);let _=Pv6();if(_&&q in _)return Boolean(_[q]);if(!ai())return!1;if(ZO6.has(q))Tl6(q);else Jv6.add(q);let z=j8(),Y=z.cachedGrowthBookFeatures?.[q];if(Y!==void 0)return Boolean(Y);return z.cachedStatsigGates?.[q]??!1}async function Sy1(q){let K=Xv6();if(K&&q in K)return Boolean(K[q]);let _=Pv6();if(_&&q in _)return Boolean(_[q]);if(!ai())return!1;if(Gl6)await Gl6;let z=j8(),Y=z.cachedStatsigGates?.[q];if(Y!==void 0)return Boolean(Y);let $=z.cachedGrowthBookFeatures?.[q];if($!==void 0)return Boolean($);return!1}async function vN(q){let K=Xv6();if(K&&q in K)return Boolean(K[q]);let _=Pv6();if(_&&q in _)return Boolean(_[q]);if(!ai())return!1;if(j8().cachedGrowthBookFeatures?.[q]===!0){if(ZO6.has(q))Tl6(q);else Jv6.add(q);return!0}return Taq(q,!1,!0)}function GO6(){if(!ai())return;try{kl6(),Mv6.emit(),Gl6=si().catch((q)=>{return j6(B1(q)),null}).finally(()=>{Gl6=null})}catch(q){j6(B1(q))}}function kl6(){if(Cy1(),fl6)process.off("beforeExit",fl6),fl6=null;if(Zl6)process.off("exit",Zl6),Zl6=null;oi?.destroy(),oi=null,Ry1=!1,Gl6=null,ZO6.clear(),Jv6.clear(),Ey1.clear(),OC.clear(),hy1.cache?.clear?.(),si.cache?.clear?.(),Daq=null,Ly1=!1}async function kaq(){if(!ai())return;try{let q=await si();if(!q)return;if(await q.refreshFeatures(),q!==oi)return;let K=await faq(q);if(q!==oi)return;if(K)Zaq(),Mv6.emit()}catch(q){j6(B1(q))}}function Vaq(){if(!ai())return;if(fO6)clearInterval(fO6);if(fO6=setInterval(()=>{kaq()},iM_),fO6.unref?.(),!Hv6)Hv6=()=>{Cy1()},process.once("beforeExit",Hv6)}function Cy1(){if(fO6)clearInterval(fO6),fO6=null;if(Hv6)process.removeListener("beforeExit",Hv6),Hv6=null}async function AC(q,K){return bZ8(q,K)}function pG(q,K){return I8(q,K)}var oi=null,fl6=null,Zl6=null,Ry1=!1,ZO6,OC,Jv6,Ey1,Gl6=null,Mv6,Daq=null,Ly1=!1,hy1,si,iM_=21600000,fO6=null,Hv6=null;var s1=E(()=>{xE7();cW6();T8();uE7();V1();K8();y8();xG();R8();i8();o$6();ri();ZO6=new Map,OC=new Map,Jv6=new Set,Ey1=new Set,Mv6=L_();hy1=A1(()=>{if(!ai())return null;let q=vaq(),K=IE7(),_="https://api.anthropic.com/",Y=e$()||zP6()||F7()?VJ():{headers:{},error:"trust not established"},$=!Y.error;Ry1=$;let O=new $O8({apiHost:_,clientKey:K,attributes:q,remoteEval:!0,cacheKeyAttributes:["id","organizationUUID"],...Y.error?{}:{apiHostRequestHeaders:Y.headers},...{}});if(oi=O,!$)return{client:O,initialized:Promise.resolve()};let A=O.init({timeout:5000}).then(async(w)=>{if(oi!==O)return;let j=await faq(O);if(oi!==O)return;if(j){for(let H of Jv6)Tl6(H);Jv6.clear(),Zaq(),Mv6.emit()}}).catch((w)=>{});return fl6=()=>oi?.destroy(),Zl6=()=>oi?.destroy(),process.on("beforeExit",fl6),process.on("exit",Zl6),{client:O,initialized:A}}),si=A1(async()=>{let q=hy1();if(!q)return null;if(!Ry1){if(e$()||zP6()||F7()){if(!VJ().error){if(kl6(),q=hy1(),!q)return null}}}return await q.initialized,Vaq(),q.client})});import{homedir as rM_}from"os";import{isAbsolute as oM_,join as xZ8,normalize as by1,sep as yaq}from"path";function n3(){if(LB())return!1;let q=process.env.CLAUDE_CODE_DISABLE_AUTO_MEMORY;if(Q6(q))return!1;if(H_(q))return!0;if(Q6(process.env.CLAUDE_CODE_SIMPLE))return!1;if(Q6(process.env.CLAUDE_CODE_REMOTE)&&!process.env.CLAUDE_CODE_REMOTE_MEMORY_DIR)return!1;let K=T7();if(K.autoMemoryEnabled!==void 0)return K.autoMemoryEnabled;return!0}function IZ8(){if(!I8("tengu_passport_quail",!1))return!1;return!F7()||I8("tengu_slate_thimble",!1)}function n16(){if(process.env.CLAUDE_CODE_REMOTE_MEMORY_DIR)return process.env.CLAUDE_CODE_REMOTE_MEMORY_DIR;return t1()}function Eaq(q,K){if(!q)return;let _=q;if(K&&(_.startsWith("~/")||_.startsWith("~\\"))){let Y=_.slice(2),$=by1(Y||".");if($==="."||$==="..")return;_=xZ8(rM_(),Y)}let z=by1(_).replace(/[/\\]+$/,"");if(!oM_(z)||z.length<3||/^[A-Za-z]:$/.test(z)||z.startsWith("\\\\")||z.startsWith("//")||z.includes("\x00"))return;return(z+yaq).normalize("NFC")}function Laq(){return Eaq(process.env.CLAUDE_COWORK_MEMORY_PATH_OVERRIDE,!1)}function tM_(){let q=y1("policySettings")?.autoMemoryDirectory??y1("flagSettings")?.autoMemoryDirectory??y1("localSettings")?.autoMemoryDirectory??y1("userSettings")?.autoMemoryDirectory;return Eaq(q,!0)}function uZ8(){return Laq()!==void 0}function eM_(){return WH(nz())??nz()}function mZ8(){return xZ8(Sj(),sM_)}function mF(q){return by1(q).startsWith(Sj())}var aM_="memory",sM_="MEMORY.md",Sj;var Tw=E(()=>{qK();T8();s1();g8();W5();Az();r1();Sj=A1(()=>{let q=Laq()??tM_();if(q)return q;let K=xZ8(n16(),"projects");return(xZ8(K,MX(eM_()),aM_)+yaq).normalize("NFC")},()=>nz())});import{chmod as qX_,mkdir as KX_,readdir as _X_,readFile as zX_,unlink as Saq,writeFile as Caq}from"fs/promises";import{join as pZ8}from"path";function xy1(){return pZ8(t1(),"sessions")}function BZ8(){return}function gZ8(){return BZ8()==="bg"}async function baq(){if(QP()!=null)return!1;let q=BZ8()??"interactive",K=xy1(),_=pZ8(K,`${process.pid}.json`);Uq(async()=>{try{await Saq(_)}catch{}});try{return await KX_(K,{recursive:!0,mode:448}),await qX_(K,448),await Caq(_,g6({pid:process.pid,sessionId:N8(),cwd:Y7(),startedAt:Date.now(),kind:q,entrypoint:process.env.CLAUDE_CODE_ENTRYPOINT,...{},...{}})),Sr8((z)=>{Iy1({sessionId:z})}),!0}catch(z){return N(`[concurrentSessions] register failed: ${F6(z)}`),!1}}async function Iy1(q){let K=pZ8(xy1(),`${process.pid}.json`),_=Raq.then(async()=>{try{let z=l8(await zX_(K,"utf8"));await Caq(K,g6({...z,...q}))}catch(z){N(`[concurrentSessions] updatePidFile failed: ${F6(z)}`)}});Raq=_,await _}async function pF(q){if(!q)return;await Iy1({name:q})}async function FZ8(q){await Iy1({bridgeSessionId:q})}async function UZ8(){let q=xy1(),K;try{K=await _X_(q)}catch(z){if(!q9(z))N(`[concurrentSessions] readdir failed: ${F6(z)}`);return 0}let _=0;for(let z of K){if(!/^\d+\.json$/.test(z))continue;let Y=parseInt(z.slice(0,-5),10);if(Y===process.pid){_++;continue}if(wv6(Y))_++;else if(Z1()!=="wsl")Saq(pZ8(q,z)).catch(()=>{})}return _}var Raq;var TN=E(()=>{T8();a9();K8();g8();y8();XO6();kK();i8();DY();Raq=Promise.resolve()});var QZ8,dZ8,xaq;var uy1=E(()=>{QZ8=["auto","iterm2","iterm2_with_bell","terminal_bell","kitty","ghostty","notifications_disabled"],dZ8=["normal","vim"],xaq=["auto","tmux","in-process"]});var ti={};v8(ti,{validateTeamMemWritePath:()=>AX_,validateTeamMemKey:()=>By1,isTeamMemoryEnabled:()=>lZ8,isTeamMemPath:()=>Baq,isTeamMemFile:()=>Vl6,getTeamMemPath:()=>hu,getTeamMemEntrypoint:()=>OX_,PathTraversalError:()=>JD});import{lstat as YX_,realpath as uaq}from"fs/promises";import{dirname as Iaq,join as cZ8,resolve as my1,sep as py1}from"path";function $X_(q){if(q.includes("\x00"))throw new JD(`Null byte in path key: "${q}"`);let K;try{K=decodeURIComponent(q)}catch{K=q}if(K!==q&&(K.includes("..")||K.includes("/")))throw new JD(`URL-encoded traversal in path key: "${q}"`);let _=q.normalize("NFKC");if(_!==q&&(_.includes("..")||_.includes("/")||_.includes("\\")||_.includes("\x00")))throw new JD(`Unicode-normalized traversal in path key: "${q}"`);if(q.includes("\\"))throw new JD(`Backslash in path key: "${q}"`);if(q.startsWith("/"))throw new JD(`Absolute path key: "${q}"`);return q}function lZ8(){if(!n3())return!1;return I8("tengu_herring_clock",!1)}function hu(){return(cZ8(Sj(),"team")+py1).normalize("NFC")}function OX_(){return cZ8(Sj(),"team","MEMORY.md")}async function maq(q){let K=[],_=q;for(let z=Iaq(_);_!==z;z=Iaq(_))try{let Y=await uaq(_);return K.length===0?Y:cZ8(Y,...K.reverse())}catch(Y){let $=c1(Y);if($==="ENOENT")try{if((await YX_(_)).isSymbolicLink())throw new JD(`Dangling symlink detected (target does not exist): "${_}"`)}catch(O){if(O instanceof JD)throw O}else if($==="ELOOP")throw new JD(`Symlink loop detected in path: "${_}"`);else if($!=="ENOTDIR"&&$!=="ENAMETOOLONG")throw new JD(`Cannot verify path containment (${$}): "${_}"`);K.push(_.slice(z.length+py1.length)),_=z}return q}async function paq(q){let K;try{K=await uaq(hu().replace(/[/\\]+$/,""))}catch(_){let z=c1(_);if(z==="ENOENT"||z==="ENOTDIR")return!0;return!1}if(q===K)return!0;return q.startsWith(K+py1)}function Baq(q){let K=my1(q),_=hu();return K.startsWith(_)}async function AX_(q){if(q.includes("\x00"))throw new JD(`Null byte in path: "${q}"`);let K=my1(q),_=hu();if(!K.startsWith(_))throw new JD(`Path escapes team memory directory: "${q}"`);let z=await maq(K);if(!await paq(z))throw new JD(`Path escapes team memory directory via symlink: "${q}"`);return K}async function By1(q){$X_(q);let K=hu(),_=cZ8(K,q),z=my1(_);if(!z.startsWith(K))throw new JD(`Key escapes team memory directory: "${q}"`);let Y=await maq(z);if(!await paq(Y))throw new JD(`Key escapes team memory directory via symlink: "${q}"`);return z}function Vl6(q){return lZ8()&&Baq(q)}var JD;var EL=E(()=>{s1();y8();Tw();JD=class JD extends Error{constructor(q){super(q);this.name="PathTraversalError"}}});var r16={};v8(r16,{shouldSkipPluginAutoupdate:()=>Wv6,saveGlobalConfig:()=>S8,saveCurrentProjectConfig:()=>Vw,resetTrustDialogAcceptedCacheForTesting:()=>XX_,recordFirstStartTime:()=>iy1,isProjectConfigKey:()=>DX_,isPathTrusted:()=>WX_,isGlobalConfigKey:()=>MX_,isAutoUpdaterDisabled:()=>FF,getUserClaudeRulesDir:()=>eZ8,getRemoteControlAtStartup:()=>gF,getProjectPathForConfig:()=>sZ8,getOrCreateUserID:()=>eS,getMemoryPath:()=>VO6,getManagedClaudeRulesDir:()=>tZ8,getGlobalConfigWriteCount:()=>fX_,getGlobalConfig:()=>j8,getCustomApiKeyStatus:()=>El6,getCurrentProjectConfig:()=>kw,getAutoUpdaterDisabledReason:()=>kO6,formatAutoUpdaterDisabledReason:()=>Ll6,enableConfigs:()=>TO6,checkHasTrustDialogAccepted:()=>e$,_wouldLoseAuthStateForTesting:()=>VX_,_setGlobalConfigCacheForTesting:()=>NX_,_getConfigForTesting:()=>kX_,PROJECT_CONFIG_KEYS:()=>daq,NOTIFICATION_CHANNELS:()=>QZ8,GLOBAL_CONFIG_KEYS:()=>Qaq,EDITOR_MODES:()=>dZ8,DEFAULT_GLOBAL_CONFIG:()=>oZ8,CONFIG_WRITE_DISPLAY_THRESHOLD:()=>ZX_});import{randomBytes as wX_}from"crypto";import{unwatchFile as jX_,watchFile as HX_}from"fs";import{basename as dy1,dirname as cy1,join as LL,resolve as iZ8}from"path";function ei(){return{numStartups:0,installMethod:void 0,autoUpdates:void 0,theme:"dark",preferredNotifChannel:"auto",verbose:!1,editorMode:"normal",autoCompactEnabled:!0,showTurnDuration:!0,hasSeenTasksHint:!1,hasUsedStash:!1,hasUsedBackgroundTask:!1,queuedCommandUpHintCount:0,diffTool:"auto",customApiKeyResponses:{approved:[],rejected:[]},env:{},tipsHistory:{},memoryUsageCount:0,promptQueueUseCount:0,btwUseCount:0,todoFeatureEnabled:!0,showExpandedTodos:!1,messageIdleNotifThresholdMs:60000,autoConnectIde:!1,autoInstallIdeExtension:!0,fileCheckpointingEnabled:!0,terminalProgressBarEnabled:!0,cachedStatsigGates:{},cachedDynamicConfigs:{},cachedGrowthBookFeatures:{},respectGitignore:!0,copyFullResponse:!1}}function MX_(q){return Qaq.includes(q)}function XX_(){caq=!1}function e$(){return caq||=PX_()}function PX_(){if(zP6())return!0;if(gZ8())return!0;let q=j8(),K=sZ8();if(q.projects?.[K]?.hasTrustDialogAccepted)return!0;let z=F_6(f8());while(!0){if(q.projects?.[z]?.hasTrustDialogAccepted)return!0;let $=F_6(iZ8(z,".."));if($===z)break;z=$}return!1}function WX_(q){let K=j8(),_=F_6(iZ8(q));while(!0){if(K.projects?.[_]?.hasTrustDialogAccepted)return!0;let z=F_6(iZ8(_,".."));if(z===_)return!1;_=z}}function DX_(q){return daq.includes(q)}function aZ8(q){let K=BF.config;if(!K)return!1;let _=K.oauthAccount!==void 0&&q.oauthAccount===void 0,z=K.hasCompletedOnboarding===!0&&q.hasCompletedOnboarding!==!0;return _||z}function S8(q){let K=null;try{if(naq(CP(),ei,(z)=>{let Y=q(z);if(Y===z)return z;return K={...Y,projects:gaq(z.projects)},K})&&K)rZ8(K)}catch(_){N(`Failed to save config with lock: ${_}`,{level:"error"});let z=vO6(CP(),ei);if(aZ8(z)){N("saveGlobalConfig fallback: re-read config is missing auth that cache has; refusing to write. See GH #3117.",{level:"error"}),d("tengu_config_auth_loss_prevented",{});return}let Y=q(z);if(Y===z)return;K={...Y,projects:gaq(z.projects)},laq(CP(),K,oZ8),rZ8(K)}}function fX_(){return ly1}function GX_(){let q=Nl6+nZ8;if(q>0)d("tengu_config_cache_stats",{cache_hits:Nl6,cache_misses:nZ8,hit_rate:Nl6/q});Nl6=0,nZ8=0}function Uy1(q){if(q.installMethod!==void 0)return q;let K=q,_="unknown",z=q.autoUpdates??!0;switch(K.autoUpdaterStatus){case"migrated":_="local";break;case"installed":_="native";break;case"disabled":z=!1;break;case"enabled":case"no_permissions":case"not_configured":_="global";break;case void 0:break}return{...q,installMethod:_,autoUpdates:z}}function gaq(q){if(!q)return q;let K={},_=!1;for(let[z,Y]of Object.entries(q)){let $=Y;if($.history!==void 0){_=!0;let{history:O,...A}=$;K[z]=A}else K[z]=Y}return _?K:q}function TX_(){if(Fy1)return;Fy1=!0;let q=CP();HX_(q,{interval:vX_,persistent:!1},(K)=>{if(K.mtimeMs<=BF.mtime)return;J8().readFile(q,{encoding:"utf-8"}).then((_)=>{if(K.mtimeMs<=BF.mtime)return;let z=m5(sB(_));if(z===null||typeof z!=="object")return;BF={config:Uy1({...ei(),...z}),mtime:K.mtimeMs},i16={mtime:K.mtimeMs,size:K.size}}).catch(()=>{})}),Uq(async()=>{jX_(q),Fy1=!1})}function rZ8(q){BF={config:q,mtime:Date.now()},i16=null}function j8(){if(BF.config)return Nl6++,BF.config;nZ8++;try{let q=null;try{q=J8().statSync(CP())}catch{}let K=Uy1(vO6(CP(),ei));return BF={config:K,mtime:q?.mtimeMs??Date.now()},i16=q?{mtime:q.mtimeMs,size:q.size}:null,TX_(),K}catch{return Uy1(vO6(CP(),ei))}}function gF(){let q=j8().remoteControlAtStartup;if(q!==void 0)return q;return!1}function El6(q){let K=j8();if(K.customApiKeyResponses?.approved?.includes(q))return"approved";if(K.customApiKeyResponses?.rejected?.includes(q))return"rejected";return"new"}function laq(q,K,_){let z=cy1(q);J8().mkdirSync(z);let $=kp6(K,(O,A)=>g6(O)!==g6(_[A]));if(jD6(q,g6($,null,2),{encoding:"utf-8",mode:384}),q===CP())ly1++}function naq(q,K,_){let z=K(),Y=cy1(q),$=J8();$.mkdirSync(Y);let O;try{let A=`${q}.lock`,w=Date.now();O=Zxq(q,{lockfilePath:A,onCompromised:(X)=>{N(`Config lock compromised: ${X}`,{level:"error"})}});let j=Date.now()-w;if(j>100)N("Lock acquisition took longer than expected - another Claude instance may be running"),d("tengu_config_lock_contention",{lock_time_ms:j});if(i16&&q===CP())try{let X=$.statSync(q);if(X.mtimeMs!==i16.mtime||X.size!==i16.size)d("tengu_config_stale_write",{read_mtime:i16.mtime,write_mtime:X.mtimeMs,read_size:i16.size,write_size:X.size})}catch(X){if(c1(X)!=="ENOENT")throw X}let H=vO6(q,K);if(q===CP()&&aZ8(H))return N("saveConfigWithLock: re-read config is missing auth that cache has; refusing to write to avoid wiping ~/.claude.json. See GH #3117.",{level:"error"}),d("tengu_config_auth_loss_prevented",{}),!1;let J=_(H);if(J===H)return!1;let M=kp6(J,(X,P)=>g6(X)!==g6(z[P]));try{let X=dy1(q),P=ny1();try{$.mkdirSync(P)}catch(V){if(c1(V)!=="EEXIST")throw V}let W=60000,D=$.readdirStringSync(P).filter((V)=>V.startsWith(`${X}.backup.`)).sort().reverse(),f=D[0],G=f?Number(f.split(".backup.").pop()):0,Z=Number.isNaN(G)||Date.now()-G>=W;if(Z){let V=LL(P,`${X}.backup.${Date.now()}`);$.copyFileSync(q,V)}let v=5,k=Z?$.readdirStringSync(P).filter((V)=>V.startsWith(`${X}.backup.`)).sort().reverse():D;for(let V of k.slice(v))try{$.unlinkSync(LL(P,V))}catch{}}catch(X){if(c1(X)!=="ENOENT")N(`Failed to backup config: ${X}`,{level:"error"})}if(jD6(q,g6(M,null,2),{encoding:"utf-8",mode:384}),q===CP())ly1++;return!0}finally{if(O)O()}}function TO6(){if(Qy1)return;let q=Date.now();o8("info","enable_configs_started"),Qy1=!0,vO6(CP(),ei,!0),o8("info","enable_configs_completed",{duration_ms:Date.now()-q})}function ny1(){return LL(t1(),"backups")}function Faq(q){let K=J8(),_=dy1(q),z=ny1();try{let O=K.readdirStringSync(z).filter((A)=>A.startsWith(`${_}.backup.`)).sort().at(-1);if(O)return LL(z,O)}catch{}let Y=cy1(q);try{let O=K.readdirStringSync(Y).filter((w)=>w.startsWith(`${_}.backup.`)).sort().at(-1);if(O)return LL(Y,O);let A=`${q}.backup`;try{return K.statSync(A),A}catch{}}catch{}return null}function vO6(q,K,_){if(!Qy1)throw Error("Config accessed before allowed.");let z=J8();try{let Y=z.readFileSync(q,{encoding:"utf-8"});try{let $=l8(sB(Y));return{...K(),...$}}catch($){let O=$ instanceof Error?$.message:String($);throw new rv(O,q,K())}}catch(Y){if(c1(Y)==="ENOENT"){let O=Faq(q);if(O)process.stderr.write(` +`;await RM_(q,_,"utf8")}catch(_){j6(_)}}async deleteFile(q){try{await Yaq(q)}catch{}}async retryPreviousBatches(){try{let q=`${Oaq}${N8()}.`,K;try{K=(await SM_(Wl6())).filter((_)=>_.startsWith(q)&&_.endsWith(".json")).filter((_)=>!_.includes($aq))}catch(_){if(q9(_))return;throw _}for(let _ of K){let z=RZ8.join(Wl6(),_);this.retryFileInBackground(z)}}catch(q){j6(q)}}async retryFileInBackground(q){if(this.attempts>=this.maxAttempts){await this.deleteFile(q);return}let K=await this.loadEventsFromFile(q);if(K.length===0){await this.deleteFile(q);return}let _=await this.sendEventsInBatches(K);if(_.length===0)await this.deleteFile(q);else await this.saveEventsToFile(q,_)}async export(q,K){if(this.isShutdown){K({code:d16.ExportResultCode.FAILED,error:Error("Exporter has been shutdown")});return}let _=this.doExport(q,K);this.pendingExports.push(_),_.finally(()=>{let z=this.pendingExports.indexOf(_);if(z>-1)this.pendingExports.splice(z,1)})}async doExport(q,K){try{let _=q.filter(($)=>$.instrumentationScope?.name==="com.anthropic.claude_code.events");if(_.length===0){K({code:d16.ExportResultCode.SUCCESS});return}let z=this.transformLogsToEvents(_).events;if(z.length===0){K({code:d16.ExportResultCode.SUCCESS});return}if(this.attempts>=this.maxAttempts){K({code:d16.ExportResultCode.FAILED,error:Error(`Dropped ${z.length} events: max attempts (${this.maxAttempts}) reached`)});return}let Y=await this.sendEventsInBatches(z);if(this.attempts++,Y.length>0){await this.queueFailedEvents(Y),this.scheduleBackoffRetry();let $=this.lastExportErrorContext?` (${this.lastExportErrorContext})`:"";K({code:d16.ExportResultCode.FAILED,error:Error(`Failed to export ${Y.length} events${$}`)});return}if(this.resetBackoff(),await this.getQueuedEventCount()>0&&!this.isRetrying)this.retryFailedEvents();K({code:d16.ExportResultCode.SUCCESS})}catch(_){j6(_),K({code:d16.ExportResultCode.FAILED,error:B1(_)})}}async sendEventsInBatches(q){let K=[];for(let Y=0;Y0)await S7(this.batchDelayMs)}if(_.length>0&&z)this.lastExportErrorContext=z;return _}async queueFailedEvents(q){let K=this.getCurrentBatchFilePath();await this.appendEventsToFile(K,q);let _=this.lastExportErrorContext?` (${this.lastExportErrorContext})`:"",z=`1P event logging: ${q.length} events failed to export${_}`;j6(Error(z))}scheduleBackoffRetry(){if(this.cancelBackoff||this.isRetrying||this.isShutdown)return;let q=Math.min(this.baseBackoffDelayMs*this.attempts*this.attempts,this.maxBackoffDelayMs);this.cancelBackoff=this.schedule(async()=>{this.cancelBackoff=null,await this.retryFailedEvents()},q)}async retryFailedEvents(){let q=this.getCurrentBatchFilePath();while(!this.isShutdown){let K=await this.loadEventsFromFile(q);if(K.length===0)break;if(this.attempts>=this.maxAttempts){await this.deleteFile(q),this.resetBackoff();return}this.isRetrying=!0,await this.deleteFile(q);let _=await this.sendEventsInBatches(K);if(this.attempts++,this.isRetrying=!1,_.length>0){await this.saveEventsToFile(q,_),this.scheduleBackoffRetry();return}this.resetBackoff()}}resetBackoff(){if(this.attempts=0,this.cancelBackoff)this.cancelBackoff(),this.cancelBackoff=null}async sendBatchWithRetry(q){if(this.isKilled())throw Error("firstParty sink killswitch active");let K={"Content-Type":"application/json","User-Agent":j$(),"x-service-name":"claude-code"},_=e$()||F7(),z=this.skipAuth||!_;if(!z&&n7()){let A=t7();if(!zD())z=!0;else if(A&&sg(A.expiresAt))z=!0}let Y=z?{headers:{},error:"trust not established or Oauth token expired"}:VJ(),$=!Y.error,O=$?{...K,...Y.headers}:K;try{let A=await $1.post(this.endpoint,q,{timeout:this.timeout,headers:O});this.logSuccess(q.events.length,$,A.data);return}catch(A){if($&&$1.isAxiosError(A)&&A.response?.status===401){let w=await $1.post(this.endpoint,q,{timeout:this.timeout,headers:K});this.logSuccess(q.events.length,!1,w.data);return}throw A}}logSuccess(q,K,_){}hrTimeToDate(q){let[K,_]=q;return new Date(K*1000+_/1e6)}transformLogsToEvents(q){let K=[];for(let _ of q){let z=_.attributes||{};if(z.event_type==="GrowthbookExperimentEvent"){let P=this.hrTimeToDate(_.hrTime),W=z.account_uuid,D=z.organization_uuid;K.push({event_type:"GrowthbookExperimentEvent",event_data:jy1.toJSON({event_id:z.event_id,timestamp:P,experiment_id:z.experiment_id,variation_id:z.variation_id,environment:z.environment,user_attributes:z.user_attributes,experiment_metadata:z.experiment_metadata,device_id:z.device_id,session_id:z.session_id,auth:W||D?{account_uuid:W,organization_uuid:D}:void 0})});continue}let Y=z.event_name||_.body||"unknown",$=z.core_metadata,O=z.user_metadata,A=z.event_metadata||{};if(!$){K.push({event_type:"ClaudeCodeInternalEvent",event_data:vZ8.toJSON({event_id:z.event_id,event_name:Y,client_timestamp:this.hrTimeToDate(_.hrTime),session_id:N8(),additional_metadata:Buffer.from(g6({transform_error:"core_metadata attribute is missing"})).toString("base64")})});continue}let w=_aq($,O,A),{_PROTO_skill_name:j,_PROTO_plugin_name:H,_PROTO_marketplace_name:J,...M}=w.additional,X=y98(M);K.push({event_type:"ClaudeCodeInternalEvent",event_data:vZ8.toJSON({event_id:z.event_id,event_name:Y,client_timestamp:this.hrTimeToDate(_.hrTime),device_id:z.user_id,email:O?.email,auth:w.auth,...w.core,env:w.env,process:w.process,skill_name:typeof j==="string"?j:void 0,plugin_name:typeof H==="string"?H:void 0,marketplace_name:typeof J==="string"?J:void 0,additional_metadata:Object.keys(X).length>0?Buffer.from(g6(X)).toString("base64"):void 0})})}return{events:K}}async shutdown(){this.isShutdown=!0,this.resetBackoff(),await this.forceFlush()}async forceFlush(){await Promise.all(this.pendingExports)}}function bM_(q){if(!$1.isAxiosError(q))return F6(q);let K=[],_=q.response?.headers?.["request-id"];if(_)K.push(`request-id=${_}`);if(q.response?.status)K.push(`status=${q.response.status}`);if(q.code)K.push(`code=${q.code}`);if(q.message)K.push(q.message);return K.join(", ")}var d16,$aq,Oaq="1p_failed_events.";var Aaq=E(()=>{TK();T8();goq();Foq();k7();V1();K8();g8();y8();xG();bA();R8();i8();_D();V8();QA();d16=w6(Hz(),1),$aq=hM_()});function jv6(q){return pG(xM_,{})?.[q]===!0}var xM_="tengu_frond_boric";var Vy1=E(()=>{s1()});var Paq={};v8(Paq,{shutdown1PEventLogging:()=>ii,shouldSampleEvent:()=>Ny1,reinitialize1PEventLoggingIfConfigChanged:()=>UM_,logGrowthBookExperimentTo1P:()=>yy1,logEventTo1P:()=>Dl6,is1PEventLoggingEnabled:()=>DO6,initialize1PEventLogging:()=>Xaq,getEventSamplingConfig:()=>Haq});import{randomUUID as jaq}from"crypto";function Haq(){return pG(IM_,{})}function Ny1(q){let _=Haq()[q];if(!_)return null;let z=_.sample_rate;if(typeof z!=="number"||z<0||z>1)return null;if(z>=1)return null;if(z<=0)return 0;return Math.random()jv6("firstParty")});c16=new SZ8.LoggerProvider({resource:A,processors:[new SZ8.BatchLogRecordProcessor(w,{scheduledDelayMillis:_,maxExportBatchSize:z,maxQueueSize:Y})]}),l16=c16.getLogger("com.anthropic.claude_code.events",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.90",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-04-01T22:53:10Z"}.VERSION)}async function UM_(){if(!DO6()||!c16)return;let q=Jaq();if(KM(q,Maq))return;let K=c16,_=l16;l16=null;try{await K.forceFlush()}catch{}c16=null;try{Xaq()}catch(z){c16=K,l16=_,j6(z);return}K.shutdown().catch(()=>{})}var waq,SZ8,CZ8,IM_="tengu_event_sampling_config",uM_="tengu_1p_event_batch_config",l16=null,c16=null,Maq=null,BM_=1e4,gM_=200,FM_=8192;var ri=E(()=>{cW6();V1();K8();R8();kK();i8();tx();o$6();g16();Aaq();s1();QA();Vy1();waq=w6(zv6(),1),SZ8=w6($y1(),1),CZ8=w6($O6(),1)});var Naq={};v8(Naq,{stopPeriodicGrowthBookRefresh:()=>Cy1,setupPeriodicGrowthBookRefresh:()=>Vaq,setGrowthBookConfigOverride:()=>lM_,resetGrowthBook:()=>kl6,refreshGrowthBookFeatures:()=>kaq,refreshGrowthBookAfterAuthChange:()=>GO6,onGrowthBookRefresh:()=>vl6,initializeGrowthBook:()=>si,hasGrowthBookEnvOverride:()=>QM_,getGrowthBookConfigOverrides:()=>cM_,getFeatureValue_DEPRECATED:()=>bZ8,getFeatureValue_CACHED_WITH_REFRESH:()=>GN,getFeatureValue_CACHED_MAY_BE_STALE:()=>I8,getDynamicConfig_CACHED_MAY_BE_STALE:()=>pG,getDynamicConfig_BLOCKS_ON_INIT:()=>AC,getApiBaseUrlHost:()=>Gaq,getAllGrowthBookFeatures:()=>dM_,clearGrowthBookConfigOverrides:()=>nM_,checkStatsigFeatureGate_CACHED_MAY_BE_STALE:()=>w$,checkSecurityRestrictionGate:()=>Sy1,checkGate_CACHED_OR_BLOCKING:()=>vN});function Waq(q){try{Promise.resolve(q()).catch((K)=>{j6(K)})}catch(K){j6(K)}}function vl6(q){let K=!0,_=Mv6.subscribe(()=>Waq(q));if(OC.size>0)queueMicrotask(()=>{if(K&&OC.size>0)Waq(q)});return()=>{K=!1,_()}}function Xv6(){if(!Ly1)Ly1=!0;return Daq}function QM_(q){let K=Xv6();return K!==null&&q in K}function Pv6(){return}function dM_(){if(OC.size>0)return Object.fromEntries(OC);return j8().cachedGrowthBookFeatures??{}}function cM_(){return Pv6()??{}}function lM_(q,K){return}function nM_(){return}function Tl6(q){if(Ey1.has(q))return;let K=ZO6.get(q);if(K)Ey1.add(q),yy1({experimentId:K.experimentId,variationId:K.variationId,userAttributes:vaq(),experimentMetadata:{feature_id:q}})}async function faq(q){let K=q.getPayload();if(!K?.features||Object.keys(K.features).length===0)return!1;ZO6.clear();let _={};for(let[z,Y]of Object.entries(K.features)){let $=Y;if("value"in $&&!("defaultValue"in $))_[z]={...$,defaultValue:$.value};else _[z]=$;if($.source==="experiment"&&$.experimentResult){let{experimentResult:O,experiment:A}=$;if(A?.key&&O.variationId!==void 0)ZO6.set(z,{experimentId:A.key,variationId:O.variationId})}}await q.setPayload({...K,features:_}),OC.clear();for(let[z,Y]of Object.entries(_)){let $="value"in Y?Y.value:Y.defaultValue;if($!==void 0)OC.set(z,$)}return!0}function Zaq(){let q=Object.fromEntries(OC),K=j8();if(KM(K.cachedGrowthBookFeatures,q))return;S8((_)=>({..._,cachedGrowthBookFeatures:q}))}function ai(){return DO6()}function Gaq(){let q=process.env.ANTHROPIC_BASE_URL;if(!q)return;try{let K=new URL(q).host;if(K==="api.anthropic.com")return;return K}catch{return}}function vaq(){let q=nxq(),K=q.email,_=Gaq();return{id:q.deviceId,sessionId:q.sessionId,deviceID:q.deviceId,platform:q.platform,..._&&{apiBaseUrlHost:_},...q.organizationUuid&&{organizationUUID:q.organizationUuid},...q.accountUuid&&{accountUUID:q.accountUuid},...q.userType&&{userType:q.userType},...q.subscriptionType&&{subscriptionType:q.subscriptionType},...q.rateLimitTier&&{rateLimitTier:q.rateLimitTier},...q.firstTokenTime&&{firstTokenTime:q.firstTokenTime},...K&&{email:K},...q.appVersion&&{appVersion:q.appVersion},...q.githubActionsMetadata&&{githubActionsMetadata:q.githubActionsMetadata}}}async function Taq(q,K,_){let z=Xv6();if(z&&q in z)return z[q];let Y=Pv6();if(Y&&q in Y)return Y[q];if(!ai())return K;let $=await si();if(!$)return K;let O;if(OC.has(q))O=OC.get(q);else O=$.getFeatureValue(q,K);if(_)Tl6(q);return O}async function bZ8(q,K){return Taq(q,K,!0)}function I8(q,K){let _=Xv6();if(_&&q in _)return _[q];let z=Pv6();if(z&&q in z)return z[q];if(!ai())return K;if(ZO6.has(q))Tl6(q);else Jv6.add(q);if(OC.has(q))return OC.get(q);try{let Y=j8().cachedGrowthBookFeatures?.[q];return Y!==void 0?Y:K}catch{return K}}function GN(q,K,_){return I8(q,K)}function w$(q){let K=Xv6();if(K&&q in K)return Boolean(K[q]);let _=Pv6();if(_&&q in _)return Boolean(_[q]);if(!ai())return!1;if(ZO6.has(q))Tl6(q);else Jv6.add(q);let z=j8(),Y=z.cachedGrowthBookFeatures?.[q];if(Y!==void 0)return Boolean(Y);return z.cachedStatsigGates?.[q]??!1}async function Sy1(q){let K=Xv6();if(K&&q in K)return Boolean(K[q]);let _=Pv6();if(_&&q in _)return Boolean(_[q]);if(!ai())return!1;if(Gl6)await Gl6;let z=j8(),Y=z.cachedStatsigGates?.[q];if(Y!==void 0)return Boolean(Y);let $=z.cachedGrowthBookFeatures?.[q];if($!==void 0)return Boolean($);return!1}async function vN(q){let K=Xv6();if(K&&q in K)return Boolean(K[q]);let _=Pv6();if(_&&q in _)return Boolean(_[q]);if(!ai())return!1;if(j8().cachedGrowthBookFeatures?.[q]===!0){if(ZO6.has(q))Tl6(q);else Jv6.add(q);return!0}return Taq(q,!1,!0)}function GO6(){if(!ai())return;try{kl6(),Mv6.emit(),Gl6=si().catch((q)=>{return j6(B1(q)),null}).finally(()=>{Gl6=null})}catch(q){j6(B1(q))}}function kl6(){if(Cy1(),fl6)process.off("beforeExit",fl6),fl6=null;if(Zl6)process.off("exit",Zl6),Zl6=null;oi?.destroy(),oi=null,Ry1=!1,Gl6=null,ZO6.clear(),Jv6.clear(),Ey1.clear(),OC.clear(),hy1.cache?.clear?.(),si.cache?.clear?.(),Daq=null,Ly1=!1}async function kaq(){if(!ai())return;try{let q=await si();if(!q)return;if(await q.refreshFeatures(),q!==oi)return;let K=await faq(q);if(q!==oi)return;if(K)Zaq(),Mv6.emit()}catch(q){j6(B1(q))}}function Vaq(){if(!ai())return;if(fO6)clearInterval(fO6);if(fO6=setInterval(()=>{kaq()},iM_),fO6.unref?.(),!Hv6)Hv6=()=>{Cy1()},process.once("beforeExit",Hv6)}function Cy1(){if(fO6)clearInterval(fO6),fO6=null;if(Hv6)process.removeListener("beforeExit",Hv6),Hv6=null}async function AC(q,K){return bZ8(q,K)}function pG(q,K){return I8(q,K)}var oi=null,fl6=null,Zl6=null,Ry1=!1,ZO6,OC,Jv6,Ey1,Gl6=null,Mv6,Daq=null,Ly1=!1,hy1,si,iM_=21600000,fO6=null,Hv6=null;var s1=E(()=>{xE7();cW6();T8();uE7();V1();K8();y8();xG();R8();i8();o$6();ri();ZO6=new Map,OC=new Map,Jv6=new Set,Ey1=new Set,Mv6=L_();hy1=A1(()=>{if(!ai())return null;let q=vaq(),K=IE7(),_="https://api.anthropic.com/",Y=e$()||zP6()||F7()?VJ():{headers:{},error:"trust not established"},$=!Y.error;Ry1=$;let O=new $O8({apiHost:_,clientKey:K,attributes:q,remoteEval:!0,cacheKeyAttributes:["id","organizationUUID"],...Y.error?{}:{apiHostRequestHeaders:Y.headers},...{}});if(oi=O,!$)return{client:O,initialized:Promise.resolve()};let A=O.init({timeout:5000}).then(async(w)=>{if(oi!==O)return;let j=await faq(O);if(oi!==O)return;if(j){for(let H of Jv6)Tl6(H);Jv6.clear(),Zaq(),Mv6.emit()}}).catch((w)=>{});return fl6=()=>oi?.destroy(),Zl6=()=>oi?.destroy(),process.on("beforeExit",fl6),process.on("exit",Zl6),{client:O,initialized:A}}),si=A1(async()=>{let q=hy1();if(!q)return null;if(!Ry1){if(e$()||zP6()||F7()){if(!VJ().error){if(kl6(),q=hy1(),!q)return null}}}return await q.initialized,Vaq(),q.client})});import{homedir as rM_}from"os";import{isAbsolute as oM_,join as xZ8,normalize as by1,sep as yaq}from"path";function n3(){if(LB())return!1;let q=process.env.CLAUDE_CODE_DISABLE_AUTO_MEMORY;if(Q6(q))return!1;if(H_(q))return!0;if(Q6(process.env.CLAUDE_CODE_SIMPLE))return!1;if(Q6(process.env.CLAUDE_CODE_REMOTE)&&!process.env.CLAUDE_CODE_REMOTE_MEMORY_DIR)return!1;let K=T7();if(K.autoMemoryEnabled!==void 0)return K.autoMemoryEnabled;return!0}function IZ8(){if(!I8("tengu_passport_quail",!1))return!1;return!F7()||I8("tengu_slate_thimble",!1)}function n16(){if(process.env.CLAUDE_CODE_REMOTE_MEMORY_DIR)return process.env.CLAUDE_CODE_REMOTE_MEMORY_DIR;return t1()}function Eaq(q,K){if(!q)return;let _=q;if(K&&(_.startsWith("~/")||_.startsWith("~\\"))){let Y=_.slice(2),$=by1(Y||".");if($==="."||$==="..")return;_=xZ8(rM_(),Y)}let z=by1(_).replace(/[/\\]+$/,"");if(!oM_(z)||z.length<3||/^[A-Za-z]:$/.test(z)||z.startsWith("\\\\")||z.startsWith("//")||z.includes("\x00"))return;return(z+yaq).normalize("NFC")}function Laq(){return Eaq(process.env.CLAUDE_COWORK_MEMORY_PATH_OVERRIDE,!1)}function tM_(){let q=y1("policySettings")?.autoMemoryDirectory??y1("flagSettings")?.autoMemoryDirectory??y1("localSettings")?.autoMemoryDirectory??y1("userSettings")?.autoMemoryDirectory;return Eaq(q,!0)}function uZ8(){return Laq()!==void 0}function eM_(){return WH(nz())??nz()}function mZ8(){return xZ8(Sj(),sM_)}function mF(q){return by1(q).startsWith(Sj())}var aM_="memory",sM_="MEMORY.md",Sj;var Tw=E(()=>{qK();T8();s1();g8();W5();Az();r1();Sj=A1(()=>{let q=Laq()??tM_();if(q)return q;let K=xZ8(n16(),"projects");return(xZ8(K,MX(eM_()),aM_)+yaq).normalize("NFC")},()=>nz())});import{chmod as qX_,mkdir as KX_,readdir as _X_,readFile as zX_,unlink as Saq,writeFile as Caq}from"fs/promises";import{join as pZ8}from"path";function xy1(){return pZ8(t1(),"sessions")}function BZ8(){return}function gZ8(){return BZ8()==="bg"}async function baq(){if(QP()!=null)return!1;let q=BZ8()??"interactive",K=xy1(),_=pZ8(K,`${process.pid}.json`);Uq(async()=>{try{await Saq(_)}catch{}});try{return await KX_(K,{recursive:!0,mode:448}),await qX_(K,448),await Caq(_,g6({pid:process.pid,sessionId:N8(),cwd:Y7(),startedAt:Date.now(),kind:q,entrypoint:process.env.CLAUDE_CODE_ENTRYPOINT,...{},...{}})),Sr8((z)=>{Iy1({sessionId:z})}),!0}catch(z){return N(`[concurrentSessions] register failed: ${F6(z)}`),!1}}async function Iy1(q){let K=pZ8(xy1(),`${process.pid}.json`),_=Raq.then(async()=>{try{let z=l8(await zX_(K,"utf8"));await Caq(K,g6({...z,...q}))}catch(z){N(`[concurrentSessions] updatePidFile failed: ${F6(z)}`)}});Raq=_,await _}async function pF(q){if(!q)return;await Iy1({name:q})}async function FZ8(q){await Iy1({bridgeSessionId:q})}async function UZ8(){let q=xy1(),K;try{K=await _X_(q)}catch(z){if(!q9(z))N(`[concurrentSessions] readdir failed: ${F6(z)}`);return 0}let _=0;for(let z of K){if(!/^\d+\.json$/.test(z))continue;let Y=parseInt(z.slice(0,-5),10);if(Y===process.pid){_++;continue}if(wv6(Y))_++;else if(Z1()!=="wsl")Saq(pZ8(q,z)).catch(()=>{})}return _}var Raq;var TN=E(()=>{T8();a9();K8();g8();y8();XO6();kK();i8();DY();Raq=Promise.resolve()});var QZ8,dZ8,xaq;var uy1=E(()=>{QZ8=["auto","iterm2","iterm2_with_bell","terminal_bell","kitty","ghostty","notifications_disabled"],dZ8=["normal","vim"],xaq=["auto","tmux","in-process"]});var ti={};v8(ti,{validateTeamMemWritePath:()=>AX_,validateTeamMemKey:()=>By1,isTeamMemoryEnabled:()=>lZ8,isTeamMemPath:()=>Baq,isTeamMemFile:()=>Vl6,getTeamMemPath:()=>hu,getTeamMemEntrypoint:()=>OX_,PathTraversalError:()=>JD});import{lstat as YX_,realpath as uaq}from"fs/promises";import{dirname as Iaq,join as cZ8,resolve as my1,sep as py1}from"path";function $X_(q){if(q.includes("\x00"))throw new JD(`Null byte in path key: "${q}"`);let K;try{K=decodeURIComponent(q)}catch{K=q}if(K!==q&&(K.includes("..")||K.includes("/")))throw new JD(`URL-encoded traversal in path key: "${q}"`);let _=q.normalize("NFKC");if(_!==q&&(_.includes("..")||_.includes("/")||_.includes("\\")||_.includes("\x00")))throw new JD(`Unicode-normalized traversal in path key: "${q}"`);if(q.includes("\\"))throw new JD(`Backslash in path key: "${q}"`);if(q.startsWith("/"))throw new JD(`Absolute path key: "${q}"`);return q}function lZ8(){if(!n3())return!1;return I8("tengu_herring_clock",!1)}function hu(){return(cZ8(Sj(),"team")+py1).normalize("NFC")}function OX_(){return cZ8(Sj(),"team","MEMORY.md")}async function maq(q){let K=[],_=q;for(let z=Iaq(_);_!==z;z=Iaq(_))try{let Y=await uaq(_);return K.length===0?Y:cZ8(Y,...K.reverse())}catch(Y){let $=c1(Y);if($==="ENOENT")try{if((await YX_(_)).isSymbolicLink())throw new JD(`Dangling symlink detected (target does not exist): "${_}"`)}catch(O){if(O instanceof JD)throw O}else if($==="ELOOP")throw new JD(`Symlink loop detected in path: "${_}"`);else if($!=="ENOTDIR"&&$!=="ENAMETOOLONG")throw new JD(`Cannot verify path containment (${$}): "${_}"`);K.push(_.slice(z.length+py1.length)),_=z}return q}async function paq(q){let K;try{K=await uaq(hu().replace(/[/\\]+$/,""))}catch(_){let z=c1(_);if(z==="ENOENT"||z==="ENOTDIR")return!0;return!1}if(q===K)return!0;return q.startsWith(K+py1)}function Baq(q){let K=my1(q),_=hu();return K.startsWith(_)}async function AX_(q){if(q.includes("\x00"))throw new JD(`Null byte in path: "${q}"`);let K=my1(q),_=hu();if(!K.startsWith(_))throw new JD(`Path escapes team memory directory: "${q}"`);let z=await maq(K);if(!await paq(z))throw new JD(`Path escapes team memory directory via symlink: "${q}"`);return K}async function By1(q){$X_(q);let K=hu(),_=cZ8(K,q),z=my1(_);if(!z.startsWith(K))throw new JD(`Key escapes team memory directory: "${q}"`);let Y=await maq(z);if(!await paq(Y))throw new JD(`Key escapes team memory directory via symlink: "${q}"`);return z}function Vl6(q){return lZ8()&&Baq(q)}var JD;var EL=E(()=>{s1();y8();Tw();JD=class JD extends Error{constructor(q){super(q);this.name="PathTraversalError"}}});var r16={};v8(r16,{shouldSkipPluginAutoupdate:()=>Wv6,saveGlobalConfig:()=>S8,saveCurrentProjectConfig:()=>Vw,resetTrustDialogAcceptedCacheForTesting:()=>XX_,recordFirstStartTime:()=>iy1,isProjectConfigKey:()=>DX_,isPathTrusted:()=>WX_,isGlobalConfigKey:()=>MX_,isAutoUpdaterDisabled:()=>FF,getUserClaudeRulesDir:()=>eZ8,getRemoteControlAtStartup:()=>gF,getProjectPathForConfig:()=>sZ8,getOrCreateUserID:()=>eS,getMemoryPath:()=>VO6,getManagedClaudeRulesDir:()=>tZ8,getGlobalConfigWriteCount:()=>fX_,getGlobalConfig:()=>j8,getCustomApiKeyStatus:()=>El6,getCurrentProjectConfig:()=>kw,getAutoUpdaterDisabledReason:()=>kO6,formatAutoUpdaterDisabledReason:()=>Ll6,enableConfigs:()=>TO6,checkHasTrustDialogAccepted:()=>e$,_wouldLoseAuthStateForTesting:()=>VX_,_setGlobalConfigCacheForTesting:()=>NX_,_getConfigForTesting:()=>kX_,PROJECT_CONFIG_KEYS:()=>daq,NOTIFICATION_CHANNELS:()=>QZ8,GLOBAL_CONFIG_KEYS:()=>Qaq,EDITOR_MODES:()=>dZ8,DEFAULT_GLOBAL_CONFIG:()=>oZ8,CONFIG_WRITE_DISPLAY_THRESHOLD:()=>ZX_});import{randomBytes as wX_}from"crypto";import{unwatchFile as jX_,watchFile as HX_}from"fs";import{basename as dy1,dirname as cy1,join as LL,resolve as iZ8}from"path";function ei(){return{numStartups:0,installMethod:void 0,autoUpdates:void 0,theme:"dark",preferredNotifChannel:"auto",verbose:!1,editorMode:"normal",autoCompactEnabled:!0,showTurnDuration:!0,hasSeenTasksHint:!1,hasUsedStash:!1,hasUsedBackgroundTask:!1,queuedCommandUpHintCount:0,diffTool:"auto",customApiKeyResponses:{approved:[],rejected:[]},env:{},tipsHistory:{},memoryUsageCount:0,promptQueueUseCount:0,btwUseCount:0,todoFeatureEnabled:!0,showExpandedTodos:!1,messageIdleNotifThresholdMs:60000,autoConnectIde:!1,autoInstallIdeExtension:!0,fileCheckpointingEnabled:!0,terminalProgressBarEnabled:!0,cachedStatsigGates:{},cachedDynamicConfigs:{},cachedGrowthBookFeatures:{},respectGitignore:!0,copyFullResponse:!1}}function MX_(q){return Qaq.includes(q)}function XX_(){caq=!1}function e$(){return caq||=PX_()}function PX_(A){return!0}function WX_(q){let K=j8(),_=F_6(iZ8(q));while(!0){if(K.projects?.[_]?.hasTrustDialogAccepted)return!0;let z=F_6(iZ8(_,".."));if(z===_)return!1;_=z}}function DX_(q){return daq.includes(q)}function aZ8(q){let K=BF.config;if(!K)return!1;let _=K.oauthAccount!==void 0&&q.oauthAccount===void 0,z=K.hasCompletedOnboarding===!0&&q.hasCompletedOnboarding!==!0;return _||z}function S8(q){let K=null;try{if(naq(CP(),ei,(z)=>{let Y=q(z);if(Y===z)return z;return K={...Y,projects:gaq(z.projects)},K})&&K)rZ8(K)}catch(_){N(`Failed to save config with lock: ${_}`,{level:"error"});let z=vO6(CP(),ei);if(aZ8(z)){N("saveGlobalConfig fallback: re-read config is missing auth that cache has; refusing to write. See GH #3117.",{level:"error"}),d("tengu_config_auth_loss_prevented",{});return}let Y=q(z);if(Y===z)return;K={...Y,projects:gaq(z.projects)},laq(CP(),K,oZ8),rZ8(K)}}function fX_(){return ly1}function GX_(){let q=Nl6+nZ8;if(q>0)d("tengu_config_cache_stats",{cache_hits:Nl6,cache_misses:nZ8,hit_rate:Nl6/q});Nl6=0,nZ8=0}function Uy1(q){if(q.installMethod!==void 0)return q;let K=q,_="unknown",z=q.autoUpdates??!0;switch(K.autoUpdaterStatus){case"migrated":_="local";break;case"installed":_="native";break;case"disabled":z=!1;break;case"enabled":case"no_permissions":case"not_configured":_="global";break;case void 0:break}return{...q,installMethod:_,autoUpdates:z}}function gaq(q){if(!q)return q;let K={},_=!1;for(let[z,Y]of Object.entries(q)){let $=Y;if($.history!==void 0){_=!0;let{history:O,...A}=$;K[z]=A}else K[z]=Y}return _?K:q}function TX_(){if(Fy1)return;Fy1=!0;let q=CP();HX_(q,{interval:vX_,persistent:!1},(K)=>{if(K.mtimeMs<=BF.mtime)return;J8().readFile(q,{encoding:"utf-8"}).then((_)=>{if(K.mtimeMs<=BF.mtime)return;let z=m5(sB(_));if(z===null||typeof z!=="object")return;BF={config:Uy1({...ei(),...z}),mtime:K.mtimeMs},i16={mtime:K.mtimeMs,size:K.size}}).catch(()=>{})}),Uq(async()=>{jX_(q),Fy1=!1})}function rZ8(q){BF={config:q,mtime:Date.now()},i16=null}function j8(){if(BF.config)return Nl6++,BF.config;nZ8++;try{let q=null;try{q=J8().statSync(CP())}catch{}let K=Uy1(vO6(CP(),ei));return BF={config:K,mtime:q?.mtimeMs??Date.now()},i16=q?{mtime:q.mtimeMs,size:q.size}:null,TX_(),K}catch{return Uy1(vO6(CP(),ei))}}function gF(){let q=j8().remoteControlAtStartup;if(q!==void 0)return q;return!1}function El6(q){let K=j8();if(K.customApiKeyResponses?.approved?.includes(q))return"approved";if(K.customApiKeyResponses?.rejected?.includes(q))return"rejected";return"new"}function laq(q,K,_){let z=cy1(q);J8().mkdirSync(z);let $=kp6(K,(O,A)=>g6(O)!==g6(_[A]));if(jD6(q,g6($,null,2),{encoding:"utf-8",mode:384}),q===CP())ly1++}function naq(q,K,_){let z=K(),Y=cy1(q),$=J8();$.mkdirSync(Y);let O;try{let A=`${q}.lock`,w=Date.now();O=Zxq(q,{lockfilePath:A,onCompromised:(X)=>{N(`Config lock compromised: ${X}`,{level:"error"})}});let j=Date.now()-w;if(j>100)N("Lock acquisition took longer than expected - another Claude instance may be running"),d("tengu_config_lock_contention",{lock_time_ms:j});if(i16&&q===CP())try{let X=$.statSync(q);if(X.mtimeMs!==i16.mtime||X.size!==i16.size)d("tengu_config_stale_write",{read_mtime:i16.mtime,write_mtime:X.mtimeMs,read_size:i16.size,write_size:X.size})}catch(X){if(c1(X)!=="ENOENT")throw X}let H=vO6(q,K);if(q===CP()&&aZ8(H))return N("saveConfigWithLock: re-read config is missing auth that cache has; refusing to write to avoid wiping ~/.claude.json. See GH #3117.",{level:"error"}),d("tengu_config_auth_loss_prevented",{}),!1;let J=_(H);if(J===H)return!1;let M=kp6(J,(X,P)=>g6(X)!==g6(z[P]));try{let X=dy1(q),P=ny1();try{$.mkdirSync(P)}catch(V){if(c1(V)!=="EEXIST")throw V}let W=60000,D=$.readdirStringSync(P).filter((V)=>V.startsWith(`${X}.backup.`)).sort().reverse(),f=D[0],G=f?Number(f.split(".backup.").pop()):0,Z=Number.isNaN(G)||Date.now()-G>=W;if(Z){let V=LL(P,`${X}.backup.${Date.now()}`);$.copyFileSync(q,V)}let v=5,k=Z?$.readdirStringSync(P).filter((V)=>V.startsWith(`${X}.backup.`)).sort().reverse():D;for(let V of k.slice(v))try{$.unlinkSync(LL(P,V))}catch{}}catch(X){if(c1(X)!=="ENOENT")N(`Failed to backup config: ${X}`,{level:"error"})}if(jD6(q,g6(M,null,2),{encoding:"utf-8",mode:384}),q===CP())ly1++;return!0}finally{if(O)O()}}function TO6(){if(Qy1)return;let q=Date.now();o8("info","enable_configs_started"),Qy1=!0,vO6(CP(),ei,!0),o8("info","enable_configs_completed",{duration_ms:Date.now()-q})}function ny1(){return LL(t1(),"backups")}function Faq(q){let K=J8(),_=dy1(q),z=ny1();try{let O=K.readdirStringSync(z).filter((A)=>A.startsWith(`${_}.backup.`)).sort().at(-1);if(O)return LL(z,O)}catch{}let Y=cy1(q);try{let O=K.readdirStringSync(Y).filter((w)=>w.startsWith(`${_}.backup.`)).sort().at(-1);if(O)return LL(Y,O);let A=`${q}.backup`;try{return K.statSync(A),A}catch{}}catch{}return null}function vO6(q,K,_){if(!Qy1)throw Error("Config accessed before allowed.");let z=J8();try{let Y=z.readFileSync(q,{encoding:"utf-8"});try{let $=l8(sB(Y));return{...K(),...$}}catch($){let O=$ instanceof Error?$.message:String($);throw new rv(O,q,K())}}catch(Y){if(c1(Y)==="ENOENT"){let O=Faq(q);if(O)process.stderr.write(` Claude configuration file not found at: ${q} A backup file exists at: ${O} You can manually restore it by running: cp "${O}" "${q}"