@ppcode.dev/ppcode 2.1.92-5 → 2.1.92-7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/cli.js +5 -23
  2. package/package.json +1 -1
package/cli.js CHANGED
@@ -5,25 +5,7 @@ process.env.DISABLE_TELEMETRY = '1';
5
5
  process.env.CLAUDE_CODE_ENABLE_TELEMETRY = '0';
6
6
  process.env.CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC = '1';
7
7
  // ppcode: force base URL
8
- process.env.ANTHROPIC_BASE_URL = process.env.ANTHROPIC_BASE_URL || 'https://www.ppcode.dev';
9
- // ppcode: load API key from ppcode_apikey field in ~/.claude.json
10
- // If no ppcode_apikey exists, clear any OAuth tokens so user must /login with ppcode
11
- if (!process.env.ANTHROPIC_API_KEY) {
12
- try {
13
- const _fs = require('fs'), _path = require('path'), _os = require('os');
14
- const _cf = _path.join(_os.homedir(), '.claude.json');
15
- if (_fs.existsSync(_cf)) {
16
- const _d = JSON.parse(_fs.readFileSync(_cf, 'utf-8'));
17
- if (_d.ppcode_apikey) {
18
- process.env.ANTHROPIC_API_KEY = _d.ppcode_apikey;
19
- }
20
- }
21
- } catch {}
22
- }
23
- // ppcode: block OAuth fallback — force ppcode /login
24
- delete process.env.ANTHROPIC_AUTH_TOKEN;
25
- delete process.env.CLAUDE_CODE_OAUTH_TOKEN;
26
- process.env._PPCODE_NO_OAUTH = '1';
8
+ process.env.ANTHROPIC_BASE_URL = 'https://www.ppcode.dev';
27
9
  // (c) Anthropic PBC. All rights reserved. Use is subject to the Legal Agreements outlined here: https://code.claude.com/docs/en/legal-and-compliance.
28
10
 
29
11
  // Version: 2.1.92
@@ -478,7 +460,7 @@ https://cloud.google.com/docs/authentication/getting-started`,NO_ADC_FOUND:"Coul
478
460
  To learn more about Universe Domain retrieval, visit:
479
461
  https://cloud.google.com/compute/docs/metadata/predefined-metadata-keys`};class gT1{get isGCE(){return this.checkIsGCE}constructor(q={}){if(s86.add(this),this.checkIsGCE=void 0,this.jsonContent=null,this.cachedCredential=null,JG6.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(cf.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===cf.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(cf.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 md6.universe("universe-domain"),K||(K=pT1.DEFAULT_UNIVERSE)}catch(_){if(_&&((q=_===null||_===void 0?void 0:_.response)===null||q===void 0?void 0:q.status)===404)K=pT1.DEFAULT_UNIVERSE;else throw _}return K}async getUniverseDomain(){let q=(0,fSq.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=pT1.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 a86(this,s86,"m",MG6).call(this,this.cachedCredential,null);let K;if(K=await this._tryGetApplicationCredentialsFromEnvironmentVariable(q),K){if(K instanceof jG6.JWT)K.scopes=this.scopes;else if(K instanceof pd6.BaseExternalAccountClient)K.scopes=this.getAnyScopes();return await a86(this,s86,"m",MG6).call(this,K)}if(K=await this._tryGetApplicationCredentialsFromWellKnownFile(q),K){if(K instanceof jG6.JWT)K.scopes=this.scopes;else if(K instanceof pd6.BaseExternalAccountClient)K.scopes=this.getAnyScopes();return await a86(this,s86,"m",MG6).call(this,K)}if(await this._checkIsGCE())return q.scopes=this.getAnyScopes(),await a86(this,s86,"m",MG6).call(this,new bs9.Compute(q));throw Error(cf.GoogleAuthExceptionMessages.NO_ADC_FOUND)}async _checkIsGCE(){if(this.checkIsGCE===void 0)this.checkIsGCE=md6.getGCPResidency()||await md6.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=BT1.join(z,".config")}if(K){if(K=BT1.join(K,"gcloud","application_default_credentials.json"),!Bd6.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=Bd6.realpathSync(q),!Bd6.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 _=Bd6.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!==HG6.IMPERSONATED_ACCOUNT_TYPE)throw Error(`The incoming JSON object does not have the "${HG6.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 A=(z=(_=/(?<target>[^/]+):(generateAccessToken|generateIdToken)$/.exec(q.service_account_impersonation_url))===null||_===void 0?void 0:_.groups)===null||z===void 0?void 0:z.target;if(!A)throw RangeError(`Cannot extract target principal from ${q.service_account_impersonation_url}`);let O=(Y=this.getAnyScopes())!==null&&Y!==void 0?Y:[];return new HG6.Impersonated({...q,sourceClient:$,targetPrincipal:A,targetScopes:Array.isArray(O)?O:[O]})}fromJSON(q,K={}){let _,z=(0,fSq.originalOrCamelOptions)(K).get("universe_domain");if(q.type===WSq.USER_REFRESH_ACCOUNT_TYPE)_=new WSq.UserRefreshClient(K),_.fromJSON(q);else if(q.type===HG6.IMPERSONATED_ACCOUNT_TYPE)_=this.fromImpersonatedJSON(q);else if(q.type===pd6.EXTERNAL_ACCOUNT_TYPE)_=us9.ExternalAccountClient.fromJSON(q,K),_.scopes=this.getAnyScopes();else if(q.type===DSq.EXTERNAL_ACCOUNT_AUTHORIZED_USER_TYPE)_=new DSq.ExternalAccountAuthorizedUserClient(q,K);else K.scopes=this.scopes,_=new jG6.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("")),A=this._cacheClientFromJSON($,K);return _(A)}catch($){if(!this.keyFilename)throw $;let A=new jG6.JWT({...this.clientOptions,keyFile:this.keyFilename});return this.cachedCredential=A,this.setGapicJWTValues(A),_(A)}}catch($){return z($)}})})}fromAPIKey(q,K={}){return new jG6.JWT({...K,apiKey:q})}_isWindows(){let q=hs9.platform();if(q&&q.length>=3){if(q.substring(0,3).toLowerCase()==="win")return!0}return!1}async getDefaultServiceProjectId(){return new Promise((q)=>{(0,Rs9.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!==pd6.EXTERNAL_ACCOUNT_TYPE)return null;return await(await this.getClient()).getProjectId()}async getGCEProjectId(){try{return await md6.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 HG6.Impersonated)return{client_email:q.getTargetPrincipal()};if(q instanceof pd6.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([md6.instance("service-accounts/default/email"),this.getUniverseDomain()]);return{client_email:K,universe_domain:_}}throw Error(cf.GoogleAuthExceptionMessages.NO_CREDENTIALS_FOUND)}async getClient(){if(this.cachedCredential)return this.cachedCredential;PSq(this,JG6,a86(this,JG6,"f")||a86(this,s86,"m",ZSq).call(this),"f");try{return await a86(this,JG6,"f")}finally{PSq(this,JG6,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 xs9.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,Is9.getEnv)()}async sign(q,K){let _=await this.getClient(),z=await this.getUniverseDomain();if(K=K||`https://iamcredentials.${z}/v1/projects/-/serviceAccounts/`,_ instanceof HG6.Impersonated)return(await _.sign(q)).signedBlob;let Y=(0,Ss9.createCrypto)();if(_ instanceof jG6.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}}cf.GoogleAuth=gT1;JG6=new WeakMap,s86=new WeakSet,MG6=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}},ZSq=async function(){if(this.jsonContent)return this._cacheClientFromJSON(this.jsonContent,this.clientOptions);else if(this.keyFilename){let K=BT1.resolve(this.keyFilename),_=Bd6.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 a86(this,s86,"m",MG6).call(this,K);return _}else{let{credential:K}=await this.getApplicationDefaultAsync(this.clientOptions);return K}};gT1.DefaultTransporter=Cs9.DefaultTransporter});var VSq=m((vSq)=>{Object.defineProperty(vSq,"__esModule",{value:!0});vSq.IAMAuth=void 0;class TSq{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}}}vSq.IAMAuth=TSq});var LSq=m((ySq)=>{Object.defineProperty(ySq,"__esModule",{value:!0});ySq.DownscopedClient=ySq.EXPIRATION_TIME_OFFSET=ySq.MAX_ACCESS_BOUNDARY_RULES_COUNT=void 0;var ms9=U6("stream"),ps9=tg(),Bs9=wT1(),gs9="urn:ietf:params:oauth:grant-type:token-exchange",Fs9="urn:ietf:params:oauth:token-type:access_token",Us9="urn:ietf:params:oauth:token-type:access_token";ySq.MAX_ACCESS_BOUNDARY_RULES_COUNT=10;ySq.EXPIRATION_TIME_OFFSET=300000;class NSq extends ps9.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>ySq.MAX_ACCESS_BOUNDARY_RULES_COUNT)throw Error(`The provided access boundary has more than ${ySq.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 Bs9.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,A=Y.config.data instanceof ms9.Readable;if(!K&&($===401||$===403)&&!A&&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:gs9,requestedTokenType:Fs9,subjectToken:K,subjectTokenType:Us9},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}}ySq.DownscopedClient=NSq});var SSq=m((RSq)=>{Object.defineProperty(RSq,"__esModule",{value:!0});RSq.PassThroughClient=void 0;var ds9=tg();class UT1 extends ds9.AuthClient{async request(q){return this.transporter.request(q)}async getAccessToken(){return{}}async getRequestHeaders(){return{}}}RSq.PassThroughClient=UT1;var cs9=new UT1;cs9.getAccessToken()});var KD8=m((Aw)=>{Object.defineProperty(Aw,"__esModule",{value:!0});Aw.GoogleAuth=Aw.auth=Aw.DefaultTransporter=Aw.PassThroughClient=Aw.ExecutableError=Aw.PluggableAuthClient=Aw.DownscopedClient=Aw.BaseExternalAccountClient=Aw.ExternalAccountClient=Aw.IdentityPoolClient=Aw.AwsRequestSigner=Aw.AwsClient=Aw.UserRefreshClient=Aw.LoginTicket=Aw.ClientAuthentication=Aw.OAuth2Client=Aw.CodeChallengeMethod=Aw.Impersonated=Aw.JWT=Aw.JWTAccess=Aw.IdTokenClient=Aw.IAMAuth=Aw.GCPEnv=Aw.Compute=Aw.DEFAULT_UNIVERSE=Aw.AuthClient=Aw.gaxios=Aw.gcpMetadata=void 0;var CSq=GSq();Object.defineProperty(Aw,"GoogleAuth",{enumerable:!0,get:function(){return CSq.GoogleAuth}});Aw.gcpMetadata=Rd6();Aw.gaxios=eI();var bSq=tg();Object.defineProperty(Aw,"AuthClient",{enumerable:!0,get:function(){return bSq.AuthClient}});Object.defineProperty(Aw,"DEFAULT_UNIVERSE",{enumerable:!0,get:function(){return bSq.DEFAULT_UNIVERSE}});var ls9=rG1();Object.defineProperty(Aw,"Compute",{enumerable:!0,get:function(){return ls9.Compute}});var ns9=aG1();Object.defineProperty(Aw,"GCPEnv",{enumerable:!0,get:function(){return ns9.GCPEnv}});var is9=VSq();Object.defineProperty(Aw,"IAMAuth",{enumerable:!0,get:function(){return is9.IAMAuth}});var rs9=oG1();Object.defineProperty(Aw,"IdTokenClient",{enumerable:!0,get:function(){return rs9.IdTokenClient}});var os9=KT1();Object.defineProperty(Aw,"JWTAccess",{enumerable:!0,get:function(){return os9.JWTAccess}});var as9=zT1();Object.defineProperty(Aw,"JWT",{enumerable:!0,get:function(){return as9.JWT}});var ss9=$T1();Object.defineProperty(Aw,"Impersonated",{enumerable:!0,get:function(){return ss9.Impersonated}});var QT1=O$6();Object.defineProperty(Aw,"CodeChallengeMethod",{enumerable:!0,get:function(){return QT1.CodeChallengeMethod}});Object.defineProperty(Aw,"OAuth2Client",{enumerable:!0,get:function(){return QT1.OAuth2Client}});Object.defineProperty(Aw,"ClientAuthentication",{enumerable:!0,get:function(){return QT1.ClientAuthentication}});var ts9=lG1();Object.defineProperty(Aw,"LoginTicket",{enumerable:!0,get:function(){return ts9.LoginTicket}});var es9=YT1();Object.defineProperty(Aw,"UserRefreshClient",{enumerable:!0,get:function(){return es9.UserRefreshClient}});var qt9=VT1();Object.defineProperty(Aw,"AwsClient",{enumerable:!0,get:function(){return qt9.AwsClient}});var Kt9=TT1();Object.defineProperty(Aw,"AwsRequestSigner",{enumerable:!0,get:function(){return Kt9.AwsRequestSigner}});var _t9=GT1();Object.defineProperty(Aw,"IdentityPoolClient",{enumerable:!0,get:function(){return _t9.IdentityPoolClient}});var zt9=uT1();Object.defineProperty(Aw,"ExternalAccountClient",{enumerable:!0,get:function(){return zt9.ExternalAccountClient}});var Yt9=o86();Object.defineProperty(Aw,"BaseExternalAccountClient",{enumerable:!0,get:function(){return Yt9.BaseExternalAccountClient}});var $t9=LSq();Object.defineProperty(Aw,"DownscopedClient",{enumerable:!0,get:function(){return $t9.DownscopedClient}});var xSq=qD8();Object.defineProperty(Aw,"PluggableAuthClient",{enumerable:!0,get:function(){return xSq.PluggableAuthClient}});Object.defineProperty(Aw,"ExecutableError",{enumerable:!0,get:function(){return xSq.ExecutableError}});var At9=SSq();Object.defineProperty(Aw,"PassThroughClient",{enumerable:!0,get:function(){return At9.PassThroughClient}});var Ot9=Sd6();Object.defineProperty(Aw,"DefaultTransporter",{enumerable:!0,get:function(){return Ot9.DefaultTransporter}});var wt9=new CSq.GoogleAuth;Aw.auth=wt9});var _D8=(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 ISq=y(()=>{yZ()});function zD8(q){return q!=null&&typeof q==="object"&&!Array.isArray(q)}var dT1=(q)=>(dT1=Array.isArray,dT1(q)),cT1;var lT1=y(()=>{ISq();cT1=dT1});function*Xt9(q){if(!q)return;if(uSq 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(cT1(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 $=cT1(z[1])?z[1]:[z[1]],A=!1;for(let O of $){if(O===void 0)continue;if(K&&!A)A=!0,yield[Y,null];yield[Y,O]}}}var uSq,mSq=(q)=>{let K=new Headers,_=new Set;for(let z of q){let Y=new Set;for(let[$,A]of Xt9(z)){let O=$.toLowerCase();if(!Y.has(O))K.delete($),Y.add(O);if(A===null)K.delete($),_.add(O);else K.append($,A),_.delete(O)}}return{[uSq]:!0,values:K,nulls:_}};var pSq=y(()=>{lT1();uSq=Symbol.for("brand.privateNullableHeaders")});function Dt9(q){let K=new $E(q);return delete K.batches,K}function ft9(q){let K=new EZ(q);return delete K.messages.batches,K}var BSq,Pt9="vertex-2023-10-16",Wt9,nT1;var iT1=y(()=>{hc();dx6();lT1();pSq();hc();BSq=O6(KD8(),1),Wt9=new Set(["/v1/messages","/v1/messages?beta=true"]);nT1=class nT1 extends D${constructor({baseURL:q=_D8("ANTHROPIC_VERTEX_BASE_URL"),region:K=_D8("CLOUD_ML_REGION")??null,projectId:_=_D8("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=Dt9(this),this.beta=ft9(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 BSq.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=mSq([_,q.headers])}async buildRequest(q){if(zD8(q.body))q.body={...q.body};if(zD8(q.body)){if(!q.body.anthropic_version)q.body.anthropic_version=Pt9}if(Wt9.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(!zD8(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 gSq={};T8(gSq,{default:()=>nT1,BaseAnthropic:()=>D$,AnthropicVertex:()=>nT1});var FSq=y(()=>{iT1();iT1()});import{randomUUID as Zt9}from"crypto";function YD8(){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 eE({apiKey:q,maxRetries:K,model:_,fetchOverride:z,source:Y}){let $=process.env.CLAUDE_CODE_CONTAINER_ID,A=process.env.CLAUDE_CODE_REMOTE_SESSION_ID,O=process.env.CLAUDE_AGENT_SDK_CLIENT_APP,w=Tt9(),j={"x-app":"cli","User-Agent":hS(),"X-Claude-Code-Session-Id":N8(),...w,...$?{"x-claude-remote-container-id":$}:{},...A?{"x-claude-remote-session-id":A}:{},...O?{"x-client-app":O}:{}};if(N(`[API:request] Creating client, ANTHROPIC_CUSTOM_HEADERS present: ${!!process.env.ANTHROPIC_CUSTOM_HEADERS}, has Authorization header: ${!!w.Authorization}`),i6(process.env.CLAUDE_CODE_ADDITIONAL_PROTECTION))j["x-anthropic-additional-protection"]="true";if(N("[API:auth] OAuth token check starting"),await k$(),N("[API:auth] OAuth token check complete"),!d7())await Gt9(j,i7());let J=vt9(z,Y),M={defaultHeaders:j,maxRetries:K,timeout:parseInt(process.env.API_TIMEOUT_MS||String(600000),10),dangerouslyAllowBrowser:!0,fetchOptions:fz6({forAnthropicAPI:!0}),...J&&{fetch:J}};if(i6(process.env.CLAUDE_CODE_USE_BEDROCK)){let{AnthropicBedrock:P}=await Promise.resolve().then(() => (qWq(),ePq)),W=_===PH()&&process.env.ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION?process.env.ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION:e36(),D={...M,awsRegion:W,...i6(process.env.CLAUDE_CODE_SKIP_BEDROCK_AUTH)&&{skipAuth:!0},...$B()&&{logger:YD8()}};if(process.env.AWS_BEARER_TOKEN_BEDROCK)D.skipAuth=!0,D.defaultHeaders={...D.defaultHeaders,Authorization:`Bearer ${process.env.AWS_BEARER_TOKEN_BEDROCK}`};else if(!i6(process.env.CLAUDE_CODE_SKIP_BEDROCK_AUTH)){let f=await l66();if(f)D.awsAccessKey=f.accessKeyId,D.awsSecretKey=f.secretAccessKey,D.awsSessionToken=f.sessionToken}return new P(D)}if(i6(process.env.CLAUDE_CODE_USE_FOUNDRY)){let{AnthropicFoundry:P}=await Promise.resolve().then(() => (OWq(),AWq)),W;if(!process.env.ANTHROPIC_FOUNDRY_API_KEY)if(i6(process.env.CLAUDE_CODE_SKIP_FOUNDRY_AUTH))W=()=>Promise.resolve("");else{let{DefaultAzureCredential:f,getBearerTokenProvider:G}=await Promise.resolve().then(() => (kNq(),vNq));W=G(new f,"https://cognitiveservices.azure.com/.default")}let D={...M,...W&&{azureADTokenProvider:W},...$B()&&{logger:YD8()}};return new P(D)}if(i6(process.env.CLAUDE_CODE_USE_VERTEX)){if(!i6(process.env.CLAUDE_CODE_SKIP_VERTEX_AUTH))await gd6();let[{AnthropicVertex:P},{GoogleAuth:W}]=await Promise.all([Promise.resolve().then(() => (FSq(),gSq)),Promise.resolve().then(() => O6(KD8(),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=i6(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:G38(_),googleAuth:G,...$B()&&{logger:YD8()}};return new P(Z)}let X={apiKey:d7()?null:q||zv(),authToken:d7()?Kq()?.accessToken:void 0,...{},...M,...$B()&&{logger:YD8()}};return new Rx(X)}async function Gt9(q,K){let _=process.env.ANTHROPIC_AUTH_TOKEN||await WG6(K);if(_)q.Authorization=`Bearer ${_}`}function Tt9(){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(),A=z.slice(Y+1).trim();if($)q[$]=A}return q}function vt9(q,K){let _=q??globalThis.fetch,z=E7()==="firstParty"&&WP();return(Y,$)=>{let A=new Headers($?.headers);if(z&&!A.has(XG6))A.set(XG6,Zt9());try{let O=Y instanceof Request?Y.url:String(Y),w=A.get(XG6);N(`[API REQUEST] ${new URL(O).pathname}${w?` ${XG6}=${w}`:""} source=${K??"unknown"}`)}catch{}return _(Y,{...$,headers:A})}}var XG6="x-client-request-id";var PG6=y(()=>{LZ();G7();jG();aq();Az();qv();v8();H3();_8();m8()});import{readFileSync as kt9}from"fs";import{mkdir as Vt9,writeFile as Nt9}from"fs/promises";import{join as USq}from"path";function dSq(){return USq(c1(),"cache")}function cSq(){return USq(dSq(),"model-capabilities.json")}function lSq(){return!1}function Et9(q){return[...q].sort((K,_)=>_.id.length-K.id.length||K.id.localeCompare(_.id))}function oT1(q){if(!lSq())return;let K=rT1(cSq());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 nSq(){if(!lSq())return;if(iA())return;try{let q=await eE({maxRetries:1}),K=d7()?[rM]:void 0,_=[];for await(let $ of q.models.list({betas:K})){let A=QSq().safeParse($);if(A.success)_.push(A.data)}if(_.length===0)return;let z=cSq(),Y=Et9(_);if(QJ(rT1(z),Y)){N("[modelCapabilities] cache unchanged, skipping write");return}await Vt9(dSq(),{recursive:!0}),await Nt9(z,g6({models:Y,timestamp:Date.now()}),{encoding:"utf-8",mode:384}),rT1.cache.delete(z),N(`[modelCapabilities] cached ${Y.length} models`)}catch(q){N(`[modelCapabilities] fetch failed: ${q instanceof Error?q.message:"unknown"}`)}}var QSq,yt9,rT1;var aT1=y(()=>{Ee();F4();x7();H3();PG6();G7();_8();m8();vO();l8();Az();QSq=B6(()=>L.object({id:L.string(),max_input_tokens:L.number().optional(),max_tokens:L.number().optional()}).strip()),yt9=B6(()=>L.object({models:L.array(QSq()),timestamp:L.number()}));rT1=_1((q)=>{try{let K=kt9(q,"utf-8"),_=yt9().safeParse(m5(K,!1));return _.success?_.data.models:null}catch{return null}},(q)=>q)});function Mn(){return i6(process.env.CLAUDE_CODE_DISABLE_1M_CONTEXT)}function cE(q){if(Mn())return!1;return/\[1m\]/i.test(q)}function FX1(q){if(Mn())return!1;let K=bY(q);return K.includes("claude-sonnet-4")||K.includes("opus-4-6")}function lf(q,K){if(cE(q))return 1e6;let _=oT1(q);if(_?.max_input_tokens&&_.max_input_tokens>=1e5){if(_.max_input_tokens>sT1&&Mn())return sT1;return _.max_input_tokens}if(K?.includes(s66)&&FX1(q))return 1e6;if(eT1(q))return 1e6;return sT1}function eT1(q){if(Mn())return!1;if(cE(q))return!1;if(!bY(q).includes("sonnet-4-6"))return!1;return j8().clientDataCache?.coral_reef_sonnet==="true"}function $D8(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 t86(q){let K,_,z=bY(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=Lt9,_=Rt9;let Y=oT1(q);if(Y?.max_tokens&&Y.max_tokens>=4096)_=Y.max_tokens,K=Math.min(K,_);return{default:K,upperLimit:_}}function oSq(q){return t86(q).upperLimit-1}var sT1=200000,iSq=20000,Lt9=32000,Rt9=64000,rSq=8000,tT1=64000;var fP=y(()=>{e66();V1();m8();aq();aT1()});var ht9,e86;var AD8=y(()=>{F4();Az();ht9=[{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"}],e86=_1((q,K)=>{if(E7()==="firstParty")return;let _=q.toLowerCase();for(let z of ht9){let Y=process.env[z.modelEnvVar],$=process.env[z.capabilitiesEnvVar];if(!Y||$===void 0)continue;if(_!==Y.toLowerCase())continue;return $.toLowerCase().split(",").map((A)=>A.trim()).includes(K)}return},(q,K)=>`${q.toLowerCase()}:${K}`)});function St9(q){let K=[],_=[];for(let z of q)if(sSq.includes(z))K.push(z);else _.push(z);return{allowed:K,disallowed:_}}function tSq(q){if(!q||q.length===0)return;if(d7()){console.warn("Warning: Custom betas are only available for API key users. Ignoring provided betas.");return}let{allowed:K,disallowed:_}=St9(q);for(let z of _)console.warn(`Warning: Beta header '${z}' is not allowed. Only the following betas are supported: ${sSq.join(", ")}`);return K.length>0?K:void 0}function aSq(q){let K=e86(q,"interleaved_thinking");if(K!==void 0)return K;let _=bY(q),z=E7();if(z==="foundry")return!0;if(z==="firstParty")return!_.includes("claude-3-");return _.includes("claude-opus-4")||_.includes("claude-sonnet-4")}function Ct9(q){let K=bY(q);return K.includes("claude-opus-4")||K.includes("claude-sonnet-4")||K.includes("claude-haiku-4")}function bt9(q){let K=bY(q),_=E7();if(_==="foundry")return!0;if(_==="firstParty")return!K.includes("claude-3-");return K.includes("claude-opus-4")||K.includes("claude-sonnet-4")||K.includes("claude-haiku-4")}function j$6(q){let K=bY(q),_=E7();if(_!=="firstParty"&&_!=="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 DG6(q){{let K=bY(q);if(E7()!=="firstParty")return!1;let _=g8("tengu_auto_mode_config",{}),z=q.toLowerCase();if(_?.allowModels?.some((Y)=>Y.toLowerCase()===z||Y.toLowerCase()===K))return!0;return/^claude-(opus|sonnet)-4-6/.test(K)}return!1}function eSq(){let q=E7();if(q==="vertex"||q==="bedrock")return J2q;return H2q}function q16(){return(E7()==="firstParty"||E7()==="foundry")&&!i6(process.env.CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS)}function fG6(){return E7()==="firstParty"&&!i6(process.env.CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS)}function OD8(q,K){let _=[...qL(q)];if(K?.isAgenticQuery){if(!_.includes(mJ8))_.push(mJ8)}let z=QM();if(!z||z.length===0)return _;return[..._,...z.filter((Y)=>!_.includes(Y))]}function wD8(){qv1.cache?.clear?.(),qL.cache?.clear?.(),Kv1.cache?.clear?.()}var sSq,qv1,qL,Kv1;var HG=y(()=>{F4();o1();v8();e66();H3();G7();fP();m8();aq();AD8();Az();U1();sSq=[s66];qv1=_1((q)=>{let K=[],_=bY(q).includes("haiku"),z=E7(),Y=q16();if(!_)K.push(mJ8);if(d7())K.push(rM);if(cE(q))K.push(s66);if(!i6(process.env.DISABLE_INTERLEAVED_THINKING)&&aSq(q))K.push(j2q);if(Y&&aSq(q)&&!i7()&&N7().showThinkingSummaries!==!0)K.push(BJ8);M2q;let $=i6(process.env.USE_API_CONTEXT_MANAGEMENT)&&!1,A=bt9(q);if(q16()&&($||A))K.push(pJ8);let O=tY("tengu_tool_pear"),w=!O&&g8("tengu_amber_json_tools",!1);if(Y&&j$6(q)&&O)K.push(t66);if(z==="vertex"&&Ct9(q))K.push(yX1);if(z==="foundry")K.push(yX1);if(Y)K.push(pF6);if(process.env.ANTHROPIC_BETAS)K.push(...process.env.ANTHROPIC_BETAS.split(",").map((j)=>j.trim()).filter(Boolean));return K}),qL=_1((q)=>{let K=qv1(q);if(E7()==="bedrock")return K.filter((_)=>!SX1.has(_));return K}),Kv1=_1((q)=>{return qv1(q).filter((_)=>SX1.has(_))})});var KCq=m((TDA,qCq)=>{var K16=U6("constants"),xt9=process.cwd,jD8=null,It9=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){if(!jD8)jD8=xt9.call(process);return jD8};try{process.cwd()}catch(q){}if(typeof process.chdir==="function"){if(HD8=process.chdir,process.chdir=function(q){jD8=null,HD8.call(process,q)},Object.setPrototypeOf)Object.setPrototypeOf(process.chdir,HD8)}var HD8;qCq.exports=ut9;function ut9(q){if(K16.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=A(q.chownSync),q.fchownSync=A(q.fchownSync),q.lchownSync=A(q.lchownSync),q.chmodSync=Y(q.chmodSync),q.fchmodSync=Y(q.fchmodSync),q.lchmodSync=Y(q.lchmodSync),q.stat=O(q.stat),q.fstat=O(q.fstat),q.lstat=O(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(It9==="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,T){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(T,v,V){if(T&&T.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,K16.O_WRONLY|K16.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,K16.O_WRONLY|K16.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(K16.hasOwnProperty("O_SYMLINK")&&H.futimes)H.lutimes=function(J,M,X,P){H.open(J,K16.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,K16.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 A(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 O(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 YCq=m((vDA,zCq)=>{var _Cq=U6("stream").Stream;zCq.exports=mt9;function mt9(q){return{ReadStream:K,WriteStream:_};function K(z,Y){if(!(this instanceof K))return new K(z,Y);_Cq.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 A=Object.keys(Y);for(var O=0,w=A.length;O<w;O++){var j=A[O];this[j]=Y[j]}if(this.encoding)this.setEncoding(this.encoding);if(this.start!==void 0){if(typeof this.start!=="number")throw TypeError("start must be a Number");if(this.end===void 0)this.end=1/0;else if(typeof this.end!=="number")throw TypeError("end must be a Number");if(this.start>this.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);_Cq.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 A=0,O=$.length;A<O;A++){var w=$[A];this[w]=Y[w]}if(this.start!==void 0){if(typeof this.start!=="number")throw TypeError("start must be a Number");if(this.start<0)throw Error("start must be >= 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 ACq=m((kDA,$Cq)=>{$Cq.exports=Bt9;var pt9=Object.getPrototypeOf||function(q){return q.__proto__};function Bt9(q){if(q===null||typeof q!=="object")return q;if(q instanceof Object)var K={__proto__:pt9(q)};else var K=Object.create(null);return Object.getOwnPropertyNames(q).forEach(function(_){Object.defineProperty(K,_,Object.getOwnPropertyDescriptor(q,_))}),K}});var kA=m((VDA,$v1)=>{var ZH=U6("fs"),gt9=KCq(),Ft9=YCq(),Ut9=ACq(),JD8=U6("util"),nf,XD8;if(typeof Symbol==="function"&&typeof Symbol.for==="function")nf=Symbol.for("graceful-fs.queue"),XD8=Symbol.for("graceful-fs.previous");else nf="___graceful-fs.queue",XD8="___graceful-fs.previous";function Qt9(){}function wCq(q,K){Object.defineProperty(q,nf,{get:function(){return K}})}var H$6=Qt9;if(JD8.debuglog)H$6=JD8.debuglog("gfs4");else if(/\bgfs4\b/i.test(process.env.NODE_DEBUG||""))H$6=function(){var q=JD8.format.apply(JD8,arguments);q="GFS4: "+q.split(/\n/).join(`
480
462
  GFS4: `),console.error(q)};if(!ZH[nf]){if(_v1=global[nf]||[],wCq(ZH,_v1),ZH.close=function(q){function K(_,z){return q.call(ZH,_,function(Y){if(!Y)OCq();if(typeof z==="function")z.apply(this,arguments)})}return Object.defineProperty(K,XD8,{value:q}),K}(ZH.close),ZH.closeSync=function(q){function K(_){q.apply(ZH,arguments),OCq()}return Object.defineProperty(K,XD8,{value:q}),K}(ZH.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||""))process.on("exit",function(){H$6(ZH[nf]),U6("assert").equal(ZH[nf].length,0)})}var _v1;if(!global[nf])wCq(global,ZH[nf]);$v1.exports=zv1(Ut9(ZH));if(process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!ZH.__patched)$v1.exports=zv1(ZH),ZH.__patched=!0;function zv1(q){gt9(q),q.gracefulify=zv1,q.createReadStream=v,q.createWriteStream=V;var K=q.readFile;q.readFile=_;function _(R,x,I){if(typeof x==="function")I=x,x=null;return B(R,x,I);function B(p,C,g,F){return K(p,C,function(U){if(U&&(U.code==="EMFILE"||U.code==="ENFILE"))ZG6([B,[p,C,g],U,F||Date.now(),Date.now()]);else if(typeof g==="function")g.apply(this,arguments)})}}var z=q.writeFile;q.writeFile=Y;function Y(R,x,I,B){if(typeof I==="function")B=I,I=null;return p(R,x,I,B);function p(C,g,F,U,c){return z(C,g,F,function(K6){if(K6&&(K6.code==="EMFILE"||K6.code==="ENFILE"))ZG6([p,[C,g,F,U],K6,c||Date.now(),Date.now()]);else if(typeof U==="function")U.apply(this,arguments)})}}var $=q.appendFile;if($)q.appendFile=A;function A(R,x,I,B){if(typeof I==="function")B=I,I=null;return p(R,x,I,B);function p(C,g,F,U,c){return $(C,g,F,function(K6){if(K6&&(K6.code==="EMFILE"||K6.code==="ENFILE"))ZG6([p,[C,g,F,U],K6,c||Date.now(),Date.now()]);else if(typeof U==="function")U.apply(this,arguments)})}}var O=q.copyFile;if(O)q.copyFile=w;function w(R,x,I,B){if(typeof I==="function")B=I,I=0;return p(R,x,I,B);function p(C,g,F,U,c){return O(C,g,F,function(K6){if(K6&&(K6.code==="EMFILE"||K6.code==="ENFILE"))ZG6([p,[C,g,F,U],K6,c||Date.now(),Date.now()]);else if(typeof U==="function")U.apply(this,arguments)})}}var j=q.readdir;q.readdir=J;var H=/^v[0-5]\./;function J(R,x,I){if(typeof x==="function")I=x,x=null;var B=H.test(process.version)?function(g,F,U,c){return j(g,p(g,F,U,c))}:function(g,F,U,c){return j(g,F,p(g,F,U,c))};return B(R,x,I);function p(C,g,F,U){return function(c,K6){if(c&&(c.code==="EMFILE"||c.code==="ENFILE"))ZG6([B,[C,g,F],c,U||Date.now(),Date.now()]);else{if(K6&&K6.sort)K6.sort();if(typeof F==="function")F.call(this,c,K6)}}}}if(process.version.substr(0,4)==="v0.8"){var M=Ft9(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=T;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,x){if(this instanceof f)return X.apply(this,arguments),this;else return f.apply(Object.create(f.prototype),arguments)}function G(){var R=this;S(R.path,R.flags,R.mode,function(x,I){if(x){if(R.autoClose)R.destroy();R.emit("error",x)}else R.fd=I,R.emit("open",I),R.read()})}function Z(R,x){if(this instanceof Z)return P.apply(this,arguments),this;else return Z.apply(Object.create(Z.prototype),arguments)}function T(){var R=this;S(R.path,R.flags,R.mode,function(x,I){if(x)R.destroy(),R.emit("error",x);else R.fd=I,R.emit("open",I)})}function v(R,x){return new q.ReadStream(R,x)}function V(R,x){return new q.WriteStream(R,x)}var E=q.open;q.open=S;function S(R,x,I,B){if(typeof I==="function")B=I,I=null;return p(R,x,I,B);function p(C,g,F,U,c){return E(C,g,F,function(K6,t){if(K6&&(K6.code==="EMFILE"||K6.code==="ENFILE"))ZG6([p,[C,g,F,U],K6,c||Date.now(),Date.now()]);else if(typeof U==="function")U.apply(this,arguments)})}}return q}function ZG6(q){H$6("ENQUEUE",q[0].name,q[1]),ZH[nf].push(q),Yv1()}var MD8;function OCq(){var q=Date.now();for(var K=0;K<ZH[nf].length;++K)if(ZH[nf][K].length>2)ZH[nf][K][3]=q,ZH[nf][K][4]=q;Yv1()}function Yv1(){if(clearTimeout(MD8),MD8=void 0,ZH[nf].length===0)return;var q=ZH[nf].shift(),K=q[0],_=q[1],z=q[2],Y=q[3],$=q[4];if(Y===void 0)H$6("RETRY",K.name,_),K.apply(null,_);else if(Date.now()-Y>=60000){H$6("TIMEOUT",K.name,_);var A=_.pop();if(typeof A==="function")A.call(null,z)}else{var O=Date.now()-$,w=Math.max($-Y,1),j=Math.min(w*1.2,100);if(O>=j)H$6("RETRY",K.name,_),K.apply(null,_.concat([Y]));else ZH[nf].push(q)}if(MD8===void 0)MD8=setTimeout(Yv1,0)}});var HCq=m((NDA,jCq)=>{function SS(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)}jCq.exports=SS;SS.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts};SS.prototype.stop=function(){if(this._timeout)clearTimeout(this._timeout);this._timeouts=[],this._cachedTimeouts=null};SS.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};SS.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)};SS.prototype.try=function(q){console.log("Using RetryOperation.try() is deprecated"),this.attempt(q)};SS.prototype.start=function(q){console.log("Using RetryOperation.start() is deprecated"),this.attempt(q)};SS.prototype.start=SS.prototype.try;SS.prototype.errors=function(){return this._errors};SS.prototype.attempts=function(){return this._attempts};SS.prototype.mainError=function(){if(this._errors.length===0)return null;var q={},K=null,_=0;for(var z=0;z<this._errors.length;z++){var Y=this._errors[z],$=Y.message,A=(q[$]||0)+1;if(q[$]=A,A>=_)K=Y,_=A}return K}});var MCq=m((ct9)=>{var dt9=HCq();ct9.operation=function(q){var K=ct9.timeouts(q);return new dt9(K,{forever:q&&q.forever,unref:q&&q.unref,maxRetryTime:q&&q.maxRetryTime})};ct9.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<K.retries;Y++)z.push(this.createTimeout(Y,K));if(q&&q.forever&&!z.length)z.push(this.createTimeout(Y,K));return z.sort(function($,A){return $-A}),z};ct9.createTimeout=function(q,K){var _=K.randomize?Math.random()+1:1,z=Math.round(_*K.minTimeout*Math.pow(K.factor,q));return z=Math.min(z,K.maxTimeout),z};ct9.wrap=function(q,K,_){if(K instanceof Array)_=K,K=null;if(!_){_=[];for(var z in q)if(typeof q[z]==="function")_.push(z)}for(var Y=0;Y<_.length;Y++){var $=_[Y],A=q[$];q[$]=function(w){var j=ct9.operation(K),H=Array.prototype.slice.call(arguments,1),J=H.pop();H.push(function(M){if(j.retry(M))return;if(M)arguments[0]=j.mainError();J.apply(this,arguments)}),j.attempt(function(){w.apply(q,H)})}.bind(q,A),q[$].options=K}}});var XCq=m((EDA,PD8)=>{PD8.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];if(process.platform!=="win32")PD8.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")PD8.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var PCq=m((LDA,TG6)=>{var Tj=global.process,J$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(!J$6(Tj))TG6.exports=function(){return function(){}};else{if(Av1=U6("assert"),M$6=XCq(),Ov1=/^win/i.test(Tj.platform),GG6=U6("events"),typeof GG6!=="function")GG6=GG6.EventEmitter;if(Tj.__signal_exit_emitter__)kP=Tj.__signal_exit_emitter__;else kP=Tj.__signal_exit_emitter__=new GG6,kP.count=0,kP.emitted={};if(!kP.infinite)kP.setMaxListeners(1/0),kP.infinite=!0;TG6.exports=function(q,K){if(!J$6(global.process))return function(){};if(Av1.equal(typeof q,"function","a callback must be provided for exit handler"),X$6===!1)WD8();var _="exit";if(K&&K.alwaysLast)_="afterexit";var z=function(){if(kP.removeListener(_,q),kP.listeners("exit").length===0&&kP.listeners("afterexit").length===0)Fd6()};return kP.on(_,q),z},Fd6=function(){if(!X$6||!J$6(global.process))return;X$6=!1,M$6.forEach(function(K){try{Tj.removeListener(K,Ud6[K])}catch(_){}}),Tj.emit=Qd6,Tj.reallyExit=DD8,kP.count-=1},TG6.exports.unload=Fd6,_16=function(K,_,z){if(kP.emitted[K])return;kP.emitted[K]=!0,kP.emit(K,_,z)},Ud6={},M$6.forEach(function(q){Ud6[q]=function(){if(!J$6(global.process))return;var _=Tj.listeners(q);if(_.length===kP.count){if(Fd6(),_16("exit",null,q),_16("afterexit",null,q),Ov1&&q==="SIGHUP")q="SIGINT";Tj.kill(Tj.pid,q)}}}),TG6.exports.signals=function(){return M$6},X$6=!1,WD8=function(){if(X$6||!J$6(global.process))return;X$6=!0,kP.count+=1,M$6=M$6.filter(function(K){try{return Tj.on(K,Ud6[K]),!0}catch(_){return!1}}),Tj.emit=jv1,Tj.reallyExit=wv1},TG6.exports.load=WD8,DD8=Tj.reallyExit,wv1=function(K){if(!J$6(global.process))return;Tj.exitCode=K||0,_16("exit",Tj.exitCode,null),_16("afterexit",Tj.exitCode,null),DD8.call(Tj,Tj.exitCode)},Qd6=Tj.emit,jv1=function(K,_){if(K==="exit"&&J$6(global.process)){if(_!==void 0)Tj.exitCode=_;var z=Qd6.apply(this,arguments);return _16("exit",Tj.exitCode,null),_16("afterexit",Tj.exitCode,null),z}else return Qd6.apply(this,arguments)}}var Av1,M$6,Ov1,GG6,kP,Fd6,_16,Ud6,X$6,WD8,DD8,wv1,Qd6,jv1});var DCq=m((at9,Hv1)=>{var WCq=Symbol();function rt9(q,K,_){let z=K[WCq];if(z)return K.stat(q,($,A)=>{if($)return _($);_(null,A.mtime,z)});let Y=new Date(Math.ceil(Date.now()/1000)*1000+5);K.utimes(q,Y,Y,($)=>{if($)return _($);K.stat(q,(A,O)=>{if(A)return _(A);let w=O.mtime.getTime()%1000===0?"s":"ms";Object.defineProperty(K,WCq,{value:w}),_(null,O.mtime,w)})})}function ot9(q){let K=Date.now();if(q==="s")K=Math.ceil(K/1000)*1000;return new Date(K)}at9.probe=rt9;at9.getMtime=ot9});var vCq=m(($e9,cd6)=>{var et9=U6("path"),Xv1=kA(),qe9=MCq(),Ke9=PCq(),fCq=DCq(),tn={};function dd6(q,K){return K.lockfilePath||`${q}.lock`}function Pv1(q,K,_){if(!K.realpath)return _(null,et9.resolve(q));K.fs.realpath(q,_)}function Mv1(q,K,_){let z=dd6(q,K);K.fs.mkdir(z,(Y)=>{if(!Y)return fCq.probe(z,K.fs,($,A,O)=>{if($)return K.fs.rmdir(z,()=>{}),_($);_(null,A,O)});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,($,A)=>{if($){if($.code==="ENOENT")return Mv1(q,{...K,stale:0},_);return _($)}if(!ZCq(A,K))return _(Object.assign(Error("Lock file is already being held"),{code:"ELOCKED",file:q}));GCq(q,K,(O)=>{if(O)return _(O);Mv1(q,{...K,stale:0},_)})})})}function ZCq(q,K){return q.mtime.getTime()<Date.now()-K.stale}function GCq(q,K,_){K.fs.rmdir(dd6(q,K),(z)=>{if(z&&z.code!=="ENOENT")return _(z);_()})}function fD8(q,K){let _=tn[q];if(_.updateTimeout)return;if(_.updateDelay=_.updateDelay||K.update,_.updateTimeout=setTimeout(()=>{_.updateTimeout=null,K.fs.stat(_.lockfilePath,(z,Y)=>{let $=_.lastUpdate+K.stale<Date.now();if(z){if(z.code==="ENOENT"||$)return Jv1(q,_,Object.assign(z,{code:"ECOMPROMISED"}));return _.updateDelay=1000,fD8(q,K)}if(_.mtime.getTime()!==Y.mtime.getTime())return Jv1(q,_,Object.assign(Error("Unable to update lock within the stale threshold"),{code:"ECOMPROMISED"}));let O=fCq.getMtime(_.mtimePrecision);K.fs.utimes(_.lockfilePath,O,O,(w)=>{let j=_.lastUpdate+K.stale<Date.now();if(_.released)return;if(w){if(w.code==="ENOENT"||j)return Jv1(q,_,Object.assign(w,{code:"ECOMPROMISED"}));return _.updateDelay=1000,fD8(q,K)}_.mtime=O,_.lastUpdate=Date.now(),_.updateDelay=null,fD8(q,K)})})},_.updateDelay),_.updateTimeout.unref)_.updateTimeout.unref()}function Jv1(q,K,_){if(K.released=!0,K.updateTimeout)clearTimeout(K.updateTimeout);if(tn[q]===K)delete tn[q];K.options.onCompromised(_)}function _e9(q,K,_){K={stale:1e4,update:null,realpath:!0,retries:0,fs:Xv1,onCompromised:(z)=>{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),Pv1(q,K,(z,Y)=>{if(z)return _(z);let $=qe9.operation(K.retries);$.attempt(()=>{Mv1(Y,K,(A,O,w)=>{if($.retry(A))return;if(A)return _($.mainError());let j=tn[Y]={lockfilePath:dd6(Y,K),mtime:O,mtimePrecision:w,options:K,lastUpdate:Date.now()};fD8(Y,K),_(null,(H)=>{if(j.released)return H&&H(Object.assign(Error("Lock is already released"),{code:"ERELEASED"}));TCq(Y,{...K,realpath:!1},H)})})})})}function TCq(q,K,_){K={fs:Xv1,realpath:!0,...K},Pv1(q,K,(z,Y)=>{if(z)return _(z);let $=tn[Y];if(!$)return _(Object.assign(Error("Lock is not acquired/owned by you"),{code:"ENOTACQUIRED"}));$.updateTimeout&&clearTimeout($.updateTimeout),$.released=!0,delete tn[Y],GCq(Y,K,_)})}function ze9(q,K,_){K={stale:1e4,realpath:!0,fs:Xv1,...K},K.stale=Math.max(K.stale||0,2000),Pv1(q,K,(z,Y)=>{if(z)return _(z);K.fs.stat(dd6(Y,K),($,A)=>{if($)return $.code==="ENOENT"?_(null,!1):_($);return _(null,!ZCq(A,K))})})}function Ye9(){return tn}Ke9(()=>{for(let q in tn){let K=tn[q].options;try{K.fs.rmdirSync(dd6(q,K))}catch(_){}}});$e9.lock=_e9;$e9.unlock=TCq;$e9.check=ze9;$e9.getLocks=Ye9});var VCq=m((RDA,kCq)=>{var He9=kA();function Je9(q){let K=["mkdir","realpath","stat","rmdir","utimes"],_={...q};return K.forEach((z)=>{_[z]=(...Y)=>{let $=Y.pop(),A;try{A=q[`${z}Sync`](...Y)}catch(O){return $(O)}$(null,A)}}),_}function Me9(q){return(...K)=>new Promise((_,z)=>{K.push((Y,$)=>{if(Y)z(Y);else _($)}),q(...K)})}function Xe9(q){return(...K)=>{let _,z;if(K.push((Y,$)=>{_=Y,z=$}),q(...K),_)throw _;return z}}function Pe9(q){if(q={...q},q.fs=Je9(q.fs||He9),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}kCq.exports={toPromise:Me9,toSync:Xe9,toSyncOptions:Pe9}});var yCq=m((hDA,z16)=>{var vG6=vCq(),{toPromise:ZD8,toSync:GD8,toSyncOptions:Wv1}=VCq();async function NCq(q,K){let _=await ZD8(vG6.lock)(q,K);return ZD8(_)}function We9(q,K){let _=GD8(vG6.lock)(q,Wv1(K));return GD8(_)}function De9(q,K){return ZD8(vG6.unlock)(q,K)}function fe9(q,K){return GD8(vG6.unlock)(q,Wv1(K))}function Ze9(q,K){return ZD8(vG6.check)(q,K)}function Ge9(q,K){return GD8(vG6.check)(q,Wv1(K))}z16.exports=NCq;z16.exports.lock=NCq;z16.exports.unlock=De9;z16.exports.lockSync=We9;z16.exports.unlockSync=fe9;z16.exports.check=Ze9;z16.exports.checkSync=Ge9});function fv1(){if(!Dv1)Dv1=yCq();return Dv1}function PJ(q,K){return fv1().lock(q,K)}function ECq(q,K){return fv1().lockSync(q,K)}function LCq(q,K){return fv1().check(q,K)}var Dv1;function RCq(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 ve9(){try{let q=gE(bz6),K=An(),{stdout:_,code:z}=await a8("security",["find-generic-password","-a",K,"-w","-s",q],{useCwd:!1,preserveOutputOnError:!1});if(z===0&&_)return r8(_.trim())}catch(q){}return null}function SCq(){if(kG6!==void 0)return kG6;if(process.platform!=="darwin")return kG6=!1,!1;try{kG6=K_6("security",["show-keychain-info"],{reject:!1,stdio:["ignore","pipe","pipe"]}).exitCode===36}catch{kG6=!1}return kG6}var Te9=4032,hCq,kG6;var Zv1=y(()=>{Df();_8();XK();k41();l8();xz6();hCq={name:"keychain",read(){let q=DP.cache;if(Date.now()-q.cachedAt<bJ1)return q.data;try{let K=gE(bz6),_=An(),z=Ph(`security find-generic-password -a "${_}" -w -s "${K}"`);if(z){let Y=r8(z);return DP.cache={data:Y,cachedAt:Date.now()},Y}}catch(K){}if(q.data!==null)return N("[keychain] read failed; serving stale cache",{level:"warn"}),DP.cache={data:q.data,cachedAt:Date.now()},q.data;return DP.cache={data:null,cachedAt:Date.now()},null},async readAsync(){let q=DP.cache;if(Date.now()-q.cachedAt<bJ1)return q.data;if(DP.readInFlight)return DP.readInFlight;let K=DP.generation,_=ve9().then((z)=>{if(K===DP.generation){if(z===null&&q.data!==null)N("[keychain] readAsync failed; serving stale cache",{level:"warn"});let Y=z??q.data;return DP.cache={data:Y,cachedAt:Date.now()},DP.readInFlight=null,Y}return z});return DP.readInFlight=_,_},update(q){ZV();try{let K=gE(bz6),_=An(),z=g6(q),Y=Buffer.from(z,"utf-8").toString("hex"),$=`add-generic-password -U -a "${_}" -s "${K}" -X "${Y}"
481
- `,A;if($.length<=Te9)A=K_6("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"}),A=K_6("security",["add-generic-password","-U","-a",_,"-s",K,"-X",Y],{stdio:["ignore","pipe","pipe"],reject:!1});if(A.exitCode!==0)return{success:!1};return DP.cache={data:q,cachedAt:Date.now()},{success:!0}}catch(K){return{success:!1}}},delete(){ZV();try{let q=gE(bz6),K=An();return Ph(`security delete-generic-password -a "${K}" -s "${q}"`),!0}catch(q){return!1}}}});import{chmodSync as ke9}from"fs";import{join as Ve9}from"path";function TD8(){let q=c1(),K=".credentials.json";return{storageDir:q,storagePath:Ve9(q,".credentials.json")}}var Gv1;var CCq=y(()=>{m8();y8();e7();l8();Gv1={name:"plaintext",read(){let{storagePath:q}=TD8();try{let K=X8().readFileSync(q,{encoding:"utf8"});return r8(K)}catch{return null}},async readAsync(){let{storagePath:q}=TD8();try{let K=await X8().readFile(q,{encoding:"utf8"});return r8(K)}catch{return null}},update(q){try{let{storageDir:K,storagePath:_}=TD8();try{X8().mkdirSync(K)}catch(z){if(s1(z)!=="EEXIST")throw z}return $j(_,g6(q),{encoding:"utf8",flush:!1}),ke9(_,384),{success:!0,warning:"Warning: Storing credentials in plaintext."}}catch{return{success:!1}}},delete(){let{storagePath:q}=TD8();try{return X8().unlinkSync(q),!0}catch(K){if(s1(K)==="ENOENT")return!0;return!1}}}});function c3(){if(process.platform==="darwin")return RCq(hCq,Gv1);return Gv1}var $16=y(()=>{Zv1();CCq()});import{execFile as Ne9}from"child_process";function bCq(q){return new Promise((K)=>{Ne9("security",["find-generic-password","-a",An(),"-w","-s",q],{encoding:"utf-8",timeout:ye9},(_,z)=>{K({stdout:_?null:z?.trim()||null,timedOut:Boolean(_&&"killed"in _&&_.killed)})})})}function xCq(){if(process.platform!=="darwin"||vD8||f9())return;let q=bCq(gE(bz6)),K=bCq(gE());vD8=Promise.all([q,K]).then(([_,z])=>{if(!_.timedOut)HYq(_.stdout);if(!z.timedOut)Tv1={stdout:z.stdout}})}async function ICq(){if(vD8)await vD8}function uCq(){return Tv1}function vv1(){Tv1=null}var ye9=1e4,Tv1=null,vD8=null;var kv1=y(()=>{m8();xz6()});function R7(q,K,_){return new Promise((z,Y)=>{if(K?.aborted){if(_?.throwOnAbort||_?.abortError)Y(_.abortError?.()??Error("aborted"));else z();return}let $=setTimeout((O,w,j)=>{O?.removeEventListener("abort",w),j()},q,K,A,z);function A(){if(clearTimeout($),_?.throwOnAbort||_?.abortError)Y(_.abortError?.()??Error("aborted"));else z()}if(K?.addEventListener("abort",A,{once:!0}),_?.unref)$.unref()})}function pCq(){return mCq}function kD8(){mCq.clear()}var mCq;var VD8=y(()=>{mCq=new Map});var _L={};T8(_L,{validateForceLoginOrg:()=>qi,saveOAuthTokensIfNeeded:()=>yG6,saveApiKey:()=>RJ1,removeApiKey:()=>pv1,refreshGcpCredentialsIfNeeded:()=>gd6,refreshGcpAuth:()=>nCq,refreshAwsAuth:()=>cCq,refreshAndGetAwsCredentials:()=>l66,prefetchGcpCredentialsIfSafe:()=>uv1,prefetchAwsCredentialsAndBedRockInfoIfSafe:()=>mv1,prefetchApiKeyFromApiKeyHelperIfSafe:()=>bv1,isUsing3PServices:()=>A16,isTeamSubscriber:()=>W$6,isTeamPremiumSubscriber:()=>_86,isProSubscriber:()=>mI,isOverageProvisioningAllowed:()=>EG6,isOtelHeadersHelperFromProjectOrLocalSettings:()=>oCq,isMaxSubscriber:()=>HS,isGcpAuthRefreshFromProjectSettings:()=>Iv1,isEnterpriseSubscriber:()=>LG6,isCustomApiKeyApproved:()=>Fe9,isConsumerSubscriber:()=>sd6,isClaudeAISubscriber:()=>d7,isAwsCredentialExportFromProjectSettings:()=>Sv1,isAwsAuthRefreshFromProjectSettings:()=>Rv1,isAnthropicAuthEnabled:()=>WJ,is1PApiCustomer:()=>P$6,hasProfileScope:()=>BW,hasOpusAccess:()=>de9,hasAnthropicApiKeyAuth:()=>Ev1,handleOAuth401Error:()=>OS,getSubscriptionType:()=>yK,getSubscriptionName:()=>ED8,getRateLimitTier:()=>qF,getOtelHeadersFromHelper:()=>Bv1,getOauthAccountInfo:()=>B_,getConfiguredApiKeyHelper:()=>eg,getClaudeAIOAuthTokensAsync:()=>nd6,getClaudeAIOAuthTokens:()=>Kq,getAuthTokenSource:()=>qS,getApiKeyHelperElapsedMs:()=>Cv1,getApiKeyFromConfigOrMacOSKeychain:()=>NG6,getApiKeyFromApiKeyHelperCached:()=>Nv1,getApiKeyFromApiKeyHelper:()=>WG6,getAnthropicApiKeyWithSource:()=>Ow,getAnthropicApiKey:()=>zv,getAccountInformation:()=>RG6,clearOAuthTokenCache:()=>ad6,clearGcpCredentialsCache:()=>od6,clearAwsCredentialsCache:()=>rd6,clearApiKeyHelperCache:()=>id6,checkGcpCredentialsValid:()=>lCq,checkAndRefreshOAuthTokenIfNeeded:()=>k$,calculateApiKeyHelperTTL:()=>dCq});import{exec as UCq}from"child_process";import{mkdir as Ee9,stat as Le9}from"fs/promises";import{join as Re9}from"path";function yD8(){return i6(process.env.CLAUDE_CODE_REMOTE)||process.env.CLAUDE_CODE_ENTRYPOINT==="claude-desktop"}function WJ(){return!1;let q=false,_=(Z7()||{}).apiKeyHelper,z=process.env.ANTHROPIC_AUTH_TOKEN||_||process.env.CLAUDE_CODE_API_KEY_FILE_DESCRIPTOR,{source:Y}=Ow({skipRetrievingKeyFromApiKeyHelper:!0}),$=Y==="ANTHROPIC_API_KEY"||Y==="apiKeyHelper";return!(q||z&&!yD8()||$&&!yD8())}function qS(){if(process.env._PPCODE_NO_OAUTH&&!process.env.ANTHROPIC_API_KEY)return{source:"none",hasToken:!1};if(f9()){if(eg())return{source:"apiKeyHelper",hasToken:!0};return{source:"none",hasToken:!1}}if(process.env.ANTHROPIC_AUTH_TOKEN&&!yD8())return{source:"ANTHROPIC_AUTH_TOKEN",hasToken:!0};if(process.env.CLAUDE_CODE_OAUTH_TOKEN)return{source:"CLAUDE_CODE_OAUTH_TOKEN",hasToken:!0};if(HJ8()){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(eg()&&!yD8())return{source:"apiKeyHelper",hasToken:!0};let _=Kq();if(KS(_?.scopes)&&_?.accessToken)return{source:"claude.ai",hasToken:!0};return{source:"none",hasToken:!1}}function zv(){let{key:q}=Ow();return q}function Ev1(){let{key:q,source:K}=Ow({skipRetrievingKeyFromApiKeyHelper:!0});return q!==null&&K!=="none"}function Ow(q={}){if(f9()){if(process.env.ANTHROPIC_API_KEY)return{key:process.env.ANTHROPIC_API_KEY,source:"ANTHROPIC_API_KEY"};if(eg())return{key:q.skipRetrievingKeyFromApiKeyHelper?null:Nv1(),source:"apiKeyHelper"};return{key:null,source:"none"}}let K=LT()?void 0:process.env.ANTHROPIC_API_KEY;if(cb6()&&K)return{key:K,source:"ANTHROPIC_API_KEY"};if(i6(!1)){let $=SJ1();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(GV(K)))return{key:K,source:"ANTHROPIC_API_KEY"};let _=SJ1();if(_)return{key:_,source:"ANTHROPIC_API_KEY"};if(eg()){if(q.skipRetrievingKeyFromApiKeyHelper)return{key:null,source:"apiKeyHelper"};return{key:Nv1(),source:"apiKeyHelper"}}let Y=NG6();if(Y)return Y;return{key:null,source:"none"}}function eg(){if(f9())return v1("flagSettings")?.apiKeyHelper;return(Z7()||{}).apiKeyHelper}function QCq(){let q=eg();if(!q)return!1;let K=v1("projectSettings"),_=v1("localSettings");return K?.apiKeyHelper===q||_?.apiKeyHelper===q}function Lv1(){return(Z7()||{}).awsAuthRefresh}function Rv1(){let q=Lv1();if(!q)return!1;let K=v1("projectSettings"),_=v1("localSettings");return K?.awsAuthRefresh===q||_?.awsAuthRefresh===q}function hv1(){return(Z7()||{}).awsCredentialExport}function Sv1(){let q=hv1();if(!q)return!1;let K=v1("projectSettings"),_=v1("localSettings");return K?.awsCredentialExport===q||_?.awsCredentialExport===q}function dCq(){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 he9}function Cv1(){let q=en?.startedAt;return q?Date.now()-q:0}async function WG6(q){if(!eg())return null;let K=dCq();if(KL){if(Date.now()-KL.timestamp<K)return KL.value;if(!en)en={promise:BCq(q,!1,VG6),startedAt:null};return KL.value}if(en)return en.promise;return en={promise:BCq(q,!0,VG6),startedAt:Date.now()},en.promise}async function BCq(q,K,_){try{let z=await Se9(q);if(_!==VG6)return z;if(z!==null)KL={value:z,timestamp:Date.now()};return z}catch(z){if(_!==VG6)return" ";let Y=z instanceof Error?z.message:String(z);if(console.error($8.red(`apiKeyHelper failed: ${Y}`)),N(`Error getting API key from apiKeyHelper: ${Y}`,{level:"error"}),!K&&KL&&KL.value!==" ")return KL={...KL,timestamp:Date.now()},KL.value;return KL={value:" ",timestamp:Date.now()}," "}finally{if(_===VG6)en=null}}async function Se9(q){let K=eg();if(!K)return null;if(QCq()){if(!l$()&&!q){let $=Error(`Security: apiKeyHelper 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:"@ppcode.dev/ppcode",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.92",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.FEEDBACK_CHANNEL}.`);return OE("apiKeyHelper invoked before trust check",$),d("tengu_apiKeyHelper_missing_trust11",{}),null}}let _=await m_(K,{shell:!0,timeout:600000,reject:!1});if(_.failed){let Y=_.timedOut?"timed out":`exited ${_.exitCode}`,$=_.stderr?.trim();throw Error($?`${Y}: ${$}`:Y)}let z=_.stdout?.trim();if(!z)throw Error("did not return a value");return z}function Nv1(){return KL?.value??null}function id6(){VG6++,KL=null,en=null}function bv1(q){if(QCq()&&!l$())return;WG6(q)}async function be9(){let q=Lv1();if(!q)return!1;if(Rv1()){if(!l$()&&!i7()){let _=Error(`Security: awsAuthRefresh 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:"@ppcode.dev/ppcode",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.92",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.FEEDBACK_CHANNEL}.`);return OE("awsAuthRefresh invoked before trust check",_),d("tengu_awsAuthRefresh_missing_trust",{}),!1}}try{return N("Fetching AWS caller identity for AWS auth refresh command"),await VX1(),N("Fetched AWS caller identity, skipping AWS auth refresh command"),!1}catch{return cCq(q)}}function cCq(q){N("Running AWS auth refresh command");let K=FW.getInstance();return K.startAuthentication(),new Promise((_)=>{let z=UCq(q,{timeout:xe9});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 O=$==="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(O),K.endAuthentication(!1),_(!1)}})})}async function Ie9(){let q=hv1();if(!q)return null;if(Sv1()){if(!l$()&&!i7()){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:"@ppcode.dev/ppcode",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.92",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.FEEDBACK_CHANNEL}.`);return OE("awsCredentialExport invoked before trust check",_),d("tengu_awsCredentialExport_missing_trust",{}),null}}try{return N("Fetching AWS caller identity for credential export command"),await VX1(),N("Fetched AWS caller identity, skipping AWS credential export command"),null}catch{try{N("Running AWS credential export command");let K=await m_(q,{shell:!0,reject:!1});if(K.exitCode!==0||!K.stdout)throw Error("awsCredentialExport did not return a valid value");let _=r8(K.stdout.trim());if(!O2q(_))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 rd6(){l66.cache.clear()}function xv1(){return(Z7()||{}).gcpAuthRefresh}function Iv1(){let q=xv1();if(!q)return!1;let K=v1("projectSettings"),_=v1("localSettings");return K?.gcpAuthRefresh===q||_?.gcpAuthRefresh===q}async function lCq(){try{let{GoogleAuth:q}=await Promise.resolve().then(() => O6(KD8(),1)),K=new q({scopes:["https://www.googleapis.com/auth/cloud-platform"]}),_=(async()=>{await(await K.getClient()).getAccessToken()})(),z=R7(ue9).then(()=>{throw new aCq("GCP credentials check timed out")});return await Promise.race([_,z]),!0}catch{return!1}}async function pe9(){let q=xv1();if(!q)return!1;if(Iv1()){if(!l$()&&!i7()){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:"@ppcode.dev/ppcode",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.92",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.FEEDBACK_CHANNEL}.`);return OE("gcpAuthRefresh invoked before trust check",_),d("tengu_gcpAuthRefresh_missing_trust",{}),!1}}try{if(N("Checking GCP credentials validity for auth refresh"),await lCq())return N("GCP credentials are valid, skipping auth refresh command"),!1}catch{}return nCq(q)}function nCq(q){N("Running GCP auth refresh command");let K=FW.getInstance();return K.startAuthentication(),new Promise((_)=>{let z=UCq(q,{timeout:Be9});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 O=$==="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(O),K.endAuthentication(!1),_(!1)}})})}function od6(){gd6.cache.clear()}function uv1(){if(!xv1())return;if(Iv1()){if(!l$()&&!i7())return}gd6()}function mv1(){let q=Lv1(),K=hv1();if(!q&&!K)return;if(Rv1()||Sv1()){if(!l$()&&!i7())return}l66(),n9()}function ge9(q){return/^[a-zA-Z0-9-_]+$/.test(q)}async function RJ1(q){if(!ge9(q))throw Error("Invalid API key format. API key must contain only alphanumeric characters, dashes, and underscores.");await iCq();let K=!1;if(process.platform==="darwin")try{let z=gE(),Y=An(),$=Buffer.from(q,"utf-8").toString("hex"),A=`add-generic-password -U -a "${Y}" -s "${z}" -X "${$}"
463
+ `,A;if($.length<=Te9)A=K_6("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"}),A=K_6("security",["add-generic-password","-U","-a",_,"-s",K,"-X",Y],{stdio:["ignore","pipe","pipe"],reject:!1});if(A.exitCode!==0)return{success:!1};return DP.cache={data:q,cachedAt:Date.now()},{success:!0}}catch(K){return{success:!1}}},delete(){ZV();try{let q=gE(bz6),K=An();return Ph(`security delete-generic-password -a "${K}" -s "${q}"`),!0}catch(q){return!1}}}});import{chmodSync as ke9}from"fs";import{join as Ve9}from"path";function TD8(){let q=c1(),K=".credentials.json";return{storageDir:q,storagePath:Ve9(q,".credentials.json")}}var Gv1;var CCq=y(()=>{m8();y8();e7();l8();Gv1={name:"plaintext",read(){let{storagePath:q}=TD8();try{let K=X8().readFileSync(q,{encoding:"utf8"});return r8(K)}catch{return null}},async readAsync(){let{storagePath:q}=TD8();try{let K=await X8().readFile(q,{encoding:"utf8"});return r8(K)}catch{return null}},update(q){try{let{storageDir:K,storagePath:_}=TD8();try{X8().mkdirSync(K)}catch(z){if(s1(z)!=="EEXIST")throw z}return $j(_,g6(q),{encoding:"utf8",flush:!1}),ke9(_,384),{success:!0,warning:"Warning: Storing credentials in plaintext."}}catch{return{success:!1}}},delete(){let{storagePath:q}=TD8();try{return X8().unlinkSync(q),!0}catch(K){if(s1(K)==="ENOENT")return!0;return!1}}}});function c3(){if(process.platform==="darwin")return RCq(hCq,Gv1);return Gv1}var $16=y(()=>{Zv1();CCq()});import{execFile as Ne9}from"child_process";function bCq(q){return new Promise((K)=>{Ne9("security",["find-generic-password","-a",An(),"-w","-s",q],{encoding:"utf-8",timeout:ye9},(_,z)=>{K({stdout:_?null:z?.trim()||null,timedOut:Boolean(_&&"killed"in _&&_.killed)})})})}function xCq(){if(process.platform!=="darwin"||vD8||f9())return;let q=bCq(gE(bz6)),K=bCq(gE());vD8=Promise.all([q,K]).then(([_,z])=>{if(!_.timedOut)HYq(_.stdout);if(!z.timedOut)Tv1={stdout:z.stdout}})}async function ICq(){if(vD8)await vD8}function uCq(){return Tv1}function vv1(){Tv1=null}var ye9=1e4,Tv1=null,vD8=null;var kv1=y(()=>{m8();xz6()});function R7(q,K,_){return new Promise((z,Y)=>{if(K?.aborted){if(_?.throwOnAbort||_?.abortError)Y(_.abortError?.()??Error("aborted"));else z();return}let $=setTimeout((O,w,j)=>{O?.removeEventListener("abort",w),j()},q,K,A,z);function A(){if(clearTimeout($),_?.throwOnAbort||_?.abortError)Y(_.abortError?.()??Error("aborted"));else z()}if(K?.addEventListener("abort",A,{once:!0}),_?.unref)$.unref()})}function pCq(){return mCq}function kD8(){mCq.clear()}var mCq;var VD8=y(()=>{mCq=new Map});var _L={};T8(_L,{validateForceLoginOrg:()=>qi,saveOAuthTokensIfNeeded:()=>yG6,saveApiKey:()=>RJ1,removeApiKey:()=>pv1,refreshGcpCredentialsIfNeeded:()=>gd6,refreshGcpAuth:()=>nCq,refreshAwsAuth:()=>cCq,refreshAndGetAwsCredentials:()=>l66,prefetchGcpCredentialsIfSafe:()=>uv1,prefetchAwsCredentialsAndBedRockInfoIfSafe:()=>mv1,prefetchApiKeyFromApiKeyHelperIfSafe:()=>bv1,isUsing3PServices:()=>A16,isTeamSubscriber:()=>W$6,isTeamPremiumSubscriber:()=>_86,isProSubscriber:()=>mI,isOverageProvisioningAllowed:()=>EG6,isOtelHeadersHelperFromProjectOrLocalSettings:()=>oCq,isMaxSubscriber:()=>HS,isGcpAuthRefreshFromProjectSettings:()=>Iv1,isEnterpriseSubscriber:()=>LG6,isCustomApiKeyApproved:()=>Fe9,isConsumerSubscriber:()=>sd6,isClaudeAISubscriber:()=>d7,isAwsCredentialExportFromProjectSettings:()=>Sv1,isAwsAuthRefreshFromProjectSettings:()=>Rv1,isAnthropicAuthEnabled:()=>WJ,is1PApiCustomer:()=>P$6,hasProfileScope:()=>BW,hasOpusAccess:()=>de9,hasAnthropicApiKeyAuth:()=>Ev1,handleOAuth401Error:()=>OS,getSubscriptionType:()=>yK,getSubscriptionName:()=>ED8,getRateLimitTier:()=>qF,getOtelHeadersFromHelper:()=>Bv1,getOauthAccountInfo:()=>B_,getConfiguredApiKeyHelper:()=>eg,getClaudeAIOAuthTokensAsync:()=>nd6,getClaudeAIOAuthTokens:()=>Kq,getAuthTokenSource:()=>qS,getApiKeyHelperElapsedMs:()=>Cv1,getApiKeyFromConfigOrMacOSKeychain:()=>NG6,getApiKeyFromApiKeyHelperCached:()=>Nv1,getApiKeyFromApiKeyHelper:()=>WG6,getAnthropicApiKeyWithSource:()=>Ow,getAnthropicApiKey:()=>zv,getAccountInformation:()=>RG6,clearOAuthTokenCache:()=>ad6,clearGcpCredentialsCache:()=>od6,clearAwsCredentialsCache:()=>rd6,clearApiKeyHelperCache:()=>id6,checkGcpCredentialsValid:()=>lCq,checkAndRefreshOAuthTokenIfNeeded:()=>k$,calculateApiKeyHelperTTL:()=>dCq});import{exec as UCq}from"child_process";import{mkdir as Ee9,stat as Le9}from"fs/promises";import{join as Re9}from"path";function yD8(){return i6(process.env.CLAUDE_CODE_REMOTE)||process.env.CLAUDE_CODE_ENTRYPOINT==="claude-desktop"}function WJ(){return!1;let q=false,_=(Z7()||{}).apiKeyHelper,z=process.env.ANTHROPIC_AUTH_TOKEN||_||process.env.CLAUDE_CODE_API_KEY_FILE_DESCRIPTOR,{source:Y}=Ow({skipRetrievingKeyFromApiKeyHelper:!0}),$=Y==="ANTHROPIC_API_KEY"||Y==="apiKeyHelper";return!(q||z&&!yD8()||$&&!yD8())}function qS(){if(f9()){if(eg())return{source:"apiKeyHelper",hasToken:!0};return{source:"none",hasToken:!1}}if(process.env.ANTHROPIC_AUTH_TOKEN&&!yD8())return{source:"ANTHROPIC_AUTH_TOKEN",hasToken:!0};if(process.env.CLAUDE_CODE_OAUTH_TOKEN)return{source:"CLAUDE_CODE_OAUTH_TOKEN",hasToken:!0};if(HJ8()){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(eg()&&!yD8())return{source:"apiKeyHelper",hasToken:!0};let _=Kq();if(KS(_?.scopes)&&_?.accessToken)return{source:"claude.ai",hasToken:!0};return{source:"none",hasToken:!1}}function zv(){let{key:q}=Ow();return q}function Ev1(){let{key:q,source:K}=Ow({skipRetrievingKeyFromApiKeyHelper:!0});return q!==null&&K!=="none"}function Ow(q={}){if(process.env.ANTHROPIC_API_KEY)return{key:process.env.ANTHROPIC_API_KEY,source:"ANTHROPIC_API_KEY"};if(f9()){if(process.env.ANTHROPIC_API_KEY)return{key:process.env.ANTHROPIC_API_KEY,source:"ANTHROPIC_API_KEY"};if(eg())return{key:q.skipRetrievingKeyFromApiKeyHelper?null:Nv1(),source:"apiKeyHelper"};return{key:null,source:"none"}}let K=LT()?void 0:process.env.ANTHROPIC_API_KEY;if(cb6()&&K)return{key:K,source:"ANTHROPIC_API_KEY"};if(i6(!1)){let $=SJ1();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(GV(K)))return{key:K,source:"ANTHROPIC_API_KEY"};let _=SJ1();if(_)return{key:_,source:"ANTHROPIC_API_KEY"};if(eg()){if(q.skipRetrievingKeyFromApiKeyHelper)return{key:null,source:"apiKeyHelper"};return{key:Nv1(),source:"apiKeyHelper"}}let Y=NG6();if(Y)return Y;return{key:null,source:"none"}}function eg(){if(f9())return v1("flagSettings")?.apiKeyHelper;return(Z7()||{}).apiKeyHelper}function QCq(){let q=eg();if(!q)return!1;let K=v1("projectSettings"),_=v1("localSettings");return K?.apiKeyHelper===q||_?.apiKeyHelper===q}function Lv1(){return(Z7()||{}).awsAuthRefresh}function Rv1(){let q=Lv1();if(!q)return!1;let K=v1("projectSettings"),_=v1("localSettings");return K?.awsAuthRefresh===q||_?.awsAuthRefresh===q}function hv1(){return(Z7()||{}).awsCredentialExport}function Sv1(){let q=hv1();if(!q)return!1;let K=v1("projectSettings"),_=v1("localSettings");return K?.awsCredentialExport===q||_?.awsCredentialExport===q}function dCq(){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 he9}function Cv1(){let q=en?.startedAt;return q?Date.now()-q:0}async function WG6(q){if(!eg())return null;let K=dCq();if(KL){if(Date.now()-KL.timestamp<K)return KL.value;if(!en)en={promise:BCq(q,!1,VG6),startedAt:null};return KL.value}if(en)return en.promise;return en={promise:BCq(q,!0,VG6),startedAt:Date.now()},en.promise}async function BCq(q,K,_){try{let z=await Se9(q);if(_!==VG6)return z;if(z!==null)KL={value:z,timestamp:Date.now()};return z}catch(z){if(_!==VG6)return" ";let Y=z instanceof Error?z.message:String(z);if(console.error($8.red(`apiKeyHelper failed: ${Y}`)),N(`Error getting API key from apiKeyHelper: ${Y}`,{level:"error"}),!K&&KL&&KL.value!==" ")return KL={...KL,timestamp:Date.now()},KL.value;return KL={value:" ",timestamp:Date.now()}," "}finally{if(_===VG6)en=null}}async function Se9(q){let K=eg();if(!K)return null;if(QCq()){if(!l$()&&!q){let $=Error(`Security: apiKeyHelper 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:"@ppcode.dev/ppcode",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.92",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.FEEDBACK_CHANNEL}.`);return OE("apiKeyHelper invoked before trust check",$),d("tengu_apiKeyHelper_missing_trust11",{}),null}}let _=await m_(K,{shell:!0,timeout:600000,reject:!1});if(_.failed){let Y=_.timedOut?"timed out":`exited ${_.exitCode}`,$=_.stderr?.trim();throw Error($?`${Y}: ${$}`:Y)}let z=_.stdout?.trim();if(!z)throw Error("did not return a value");return z}function Nv1(){return KL?.value??null}function id6(){VG6++,KL=null,en=null}function bv1(q){if(QCq()&&!l$())return;WG6(q)}async function be9(){let q=Lv1();if(!q)return!1;if(Rv1()){if(!l$()&&!i7()){let _=Error(`Security: awsAuthRefresh 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:"@ppcode.dev/ppcode",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.92",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.FEEDBACK_CHANNEL}.`);return OE("awsAuthRefresh invoked before trust check",_),d("tengu_awsAuthRefresh_missing_trust",{}),!1}}try{return N("Fetching AWS caller identity for AWS auth refresh command"),await VX1(),N("Fetched AWS caller identity, skipping AWS auth refresh command"),!1}catch{return cCq(q)}}function cCq(q){N("Running AWS auth refresh command");let K=FW.getInstance();return K.startAuthentication(),new Promise((_)=>{let z=UCq(q,{timeout:xe9});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 O=$==="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(O),K.endAuthentication(!1),_(!1)}})})}async function Ie9(){let q=hv1();if(!q)return null;if(Sv1()){if(!l$()&&!i7()){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:"@ppcode.dev/ppcode",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.92",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.FEEDBACK_CHANNEL}.`);return OE("awsCredentialExport invoked before trust check",_),d("tengu_awsCredentialExport_missing_trust",{}),null}}try{return N("Fetching AWS caller identity for credential export command"),await VX1(),N("Fetched AWS caller identity, skipping AWS credential export command"),null}catch{try{N("Running AWS credential export command");let K=await m_(q,{shell:!0,reject:!1});if(K.exitCode!==0||!K.stdout)throw Error("awsCredentialExport did not return a valid value");let _=r8(K.stdout.trim());if(!O2q(_))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 rd6(){l66.cache.clear()}function xv1(){return(Z7()||{}).gcpAuthRefresh}function Iv1(){let q=xv1();if(!q)return!1;let K=v1("projectSettings"),_=v1("localSettings");return K?.gcpAuthRefresh===q||_?.gcpAuthRefresh===q}async function lCq(){try{let{GoogleAuth:q}=await Promise.resolve().then(() => O6(KD8(),1)),K=new q({scopes:["https://www.googleapis.com/auth/cloud-platform"]}),_=(async()=>{await(await K.getClient()).getAccessToken()})(),z=R7(ue9).then(()=>{throw new aCq("GCP credentials check timed out")});return await Promise.race([_,z]),!0}catch{return!1}}async function pe9(){let q=xv1();if(!q)return!1;if(Iv1()){if(!l$()&&!i7()){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:"@ppcode.dev/ppcode",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.92",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.FEEDBACK_CHANNEL}.`);return OE("gcpAuthRefresh invoked before trust check",_),d("tengu_gcpAuthRefresh_missing_trust",{}),!1}}try{if(N("Checking GCP credentials validity for auth refresh"),await lCq())return N("GCP credentials are valid, skipping auth refresh command"),!1}catch{}return nCq(q)}function nCq(q){N("Running GCP auth refresh command");let K=FW.getInstance();return K.startAuthentication(),new Promise((_)=>{let z=UCq(q,{timeout:Be9});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 O=$==="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(O),K.endAuthentication(!1),_(!1)}})})}function od6(){gd6.cache.clear()}function uv1(){if(!xv1())return;if(Iv1()){if(!l$()&&!i7())return}gd6()}function mv1(){let q=Lv1(),K=hv1();if(!q&&!K)return;if(Rv1()||Sv1()){if(!l$()&&!i7())return}l66(),n9()}function ge9(q){return/^[a-zA-Z0-9-_]+$/.test(q)}async function RJ1(q){if(!ge9(q))throw Error("Invalid API key format. API key must contain only alphanumeric characters, dashes, and underscores.");await iCq();let K=!1;if(process.platform==="darwin")try{let z=gE(),Y=An(),$=Buffer.from(q,"utf-8").toString("hex"),A=`add-generic-password -U -a "${Y}" -s "${z}" -X "${$}"
482
464
  `;await m_("security",["-i"],{input:A,reject:!1}),d("tengu_api_key_saved_to_keychain",{}),K=!0}catch(z){H6(z),d("tengu_api_key_keychain_error",{error:d6(z)}),d("tengu_api_key_saved_to_config",{})}else d("tengu_api_key_saved_to_config",{});let _=GV(q);b8((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??[]}}}),NG6.cache.clear?.(),vv1()}function Fe9(q){let K=j8(),_=GV(q);return K.customApiKeyResponses?.approved?.includes(_)??!1}async function pv1(){await iCq(),b8((q)=>({...q,primaryApiKey:void 0})),NG6.cache.clear?.(),vv1()}async function iCq(){try{await JYq()}catch(q){H6(q)}}function yG6(q){if(!KS(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=c3(),_=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 Kq.cache?.clear?.(),wD8(),kD8(),$}catch(z){return H6(z),d("tengu_oauth_tokens_save_exception",{storageBackend:_,error:d6(z)}),{success:!1,warning:"Failed to save OAuth tokens"}}}function ad6(){Kq.cache?.clear?.(),ZV()}async function Ue9(){try{let{mtimeMs:q}=await Le9(Re9(c1(),".credentials.json"));if(q!==gCq)gCq=q,ad6()}catch{Kq.cache?.clear?.()}}function OS(q){let K=Vv1.get(q);if(K)return K;let _=Qe9(q).finally(()=>{Vv1.delete(q)});return Vv1.set(q,_),_}async function Qe9(q){ad6();let K=await nd6();if(!K?.refreshToken)return!1;if(K.accessToken!==q)return d("tengu_oauth_401_recovered_from_keychain",{}),!0;return k$(0,!0)}async function nd6(){if(f9())return null;if(process.env.CLAUDE_CODE_OAUTH_TOKEN||HJ8())return Kq();try{let _=(await c3().readAsync())?.claudeAiOauth;if(!_?.accessToken)return null;return _}catch(q){return H6(q),null}}function k$(q=0,K=!1){if(q===0&&!K){if(ld6)return ld6;return ld6=yv1(q,K).finally(()=>{ld6=null}),ld6}return yv1(q,K)}async function yv1(q,K){await Ue9();let z=Kq();if(!K){if(!z?.refreshToken||!Gg(z.expiresAt))return!1}if(!z?.refreshToken)return!1;if(!KS(z.scopes))return!1;Kq.cache?.clear?.(),ZV();let Y=await nd6();if(!Y?.refreshToken||!Gg(Y.expiresAt))return!1;let $=c1();await Ee9($,{recursive:!0});let A;try{d("tengu_oauth_token_refresh_lock_acquiring",{}),A=await PJ($),d("tengu_oauth_token_refresh_lock_acquired",{})}catch(O){if(O.code==="ELOCKED"){if(q<5)return d("tengu_oauth_token_refresh_lock_retry",{retryCount:q+1}),await R7(1000+Math.random()*1000),yv1(q+1,K);return d("tengu_oauth_token_refresh_lock_retry_limit_reached",{maxRetries:5}),!1}return H6(O),d("tengu_oauth_token_refresh_lock_error",{error:d6(O)}),!1}try{Kq.cache?.clear?.(),ZV();let O=await nd6();if(!O?.refreshToken||!Gg(O.expiresAt))return d("tengu_oauth_token_refresh_race_resolved",{}),!1;d("tengu_oauth_token_refresh_starting",{});let w=await kF6(O.refreshToken,{scopes:KS(O.scopes)?void 0:O.scopes});return yG6(w),Kq.cache?.clear?.(),ZV(),!0}catch(O){H6(O),Kq.cache?.clear?.(),ZV();let w=await nd6();if(w&&!Gg(w.expiresAt))return d("tengu_oauth_token_refresh_race_recovered",{}),!0;return!1}finally{d("tengu_oauth_token_refresh_lock_releasing",{}),await A(),d("tengu_oauth_token_refresh_lock_released",{})}}function d7(){if(!WJ())return!1;return KS(Kq()?.scopes)}function BW(){return Kq()?.scopes?.includes(e96)??!1}function P$6(){if(i6(process.env.CLAUDE_CODE_USE_BEDROCK)||i6(process.env.CLAUDE_CODE_USE_VERTEX)||i6(process.env.CLAUDE_CODE_USE_FOUNDRY))return!1;if(d7())return!1;return!0}function B_(){return WJ()?j8().oauthAccount:void 0}function EG6(){let K=B_()?.billingType;if(!d7()||!K)return!1;if(K!=="stripe_subscription"&&K!=="stripe_subscription_contracted"&&K!=="apple_subscription"&&K!=="google_play_subscription")return!1;return!0}function de9(){let q=yK();return q==="max"||q==="enterprise"||q==="team"||q==="pro"||q===null}function yK(){if(OYq())return AYq();if(!WJ())return null;let q=Kq();if(!q)return null;return q.subscriptionType??null}function HS(){return yK()==="max"}function W$6(){return yK()==="team"}function _86(){return yK()==="team"&&qF()==="default_claude_max_5x"}function LG6(){return yK()==="enterprise"}function mI(){return yK()==="pro"}function qF(){if(!WJ())return null;let q=Kq();if(!q)return null;return q.rateLimitTier??null}function ED8(){switch(yK()){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 A16(){return!!(i6(process.env.CLAUDE_CODE_USE_BEDROCK)||i6(process.env.CLAUDE_CODE_USE_VERTEX)||i6(process.env.CLAUDE_CODE_USE_FOUNDRY))}function rCq(){return(Z7()||{}).otelHeadersHelper}function oCq(){let q=rCq();if(!q)return!1;let K=v1("projectSettings"),_=v1("localSettings");return K?.otelHeadersHelper===q||_?.otelHeadersHelper===q}function Bv1(){let q=rCq();if(!q)return{};let K=parseInt(process.env.CLAUDE_CODE_OTEL_HEADERS_HELPER_DEBOUNCE_MS||ce9.toString());if(ND8&&Date.now()-FCq<K)return ND8;if(oCq()){if(!l$())return{}}try{let _=Ph(q,{timeout:30000})?.toString().trim();if(!_)throw Error("otelHeadersHelper did not return a valid value");let z=r8(_);if(typeof z!=="object"||z===null||Array.isArray(z))throw Error("otelHeadersHelper must return a JSON object with string key-value pairs");for(let[Y,$]of Object.entries(z))if(typeof $!=="string")throw Error(`otelHeadersHelper returned non-string value for key "${Y}": ${typeof $}`);return ND8=z,FCq=Date.now(),ND8}catch(_){throw H6(Error(`Error getting OpenTelemetry headers from otelHeadersHelper (in settings): ${d6(_)}`)),_}}function le9(q){return q==="max"||q==="pro"}function sd6(){let q=yK();return d7()&&q!==null&&le9(q)}function RG6(){if(E7()!=="firstParty")return;let{source:K}=qS(),_={};if(K==="CLAUDE_CODE_OAUTH_TOKEN"||K==="CLAUDE_CODE_OAUTH_TOKEN_FILE_DESCRIPTOR")_.tokenSource=K;else if(d7())_.subscription=ED8();else _.tokenSource=K;let{key:z,source:Y}=Ow();if(z)_.apiKeySource=Y;if(K==="claude.ai"||Y==="/login managed key"){let A=B_()?.organizationName;if(A)_.organization=A}let $=B_()?.emailAddress;if((K==="claude.ai"||Y==="/login managed key")&&$)_.email=$;return _}async function qi(){if(process.env.ANTHROPIC_UNIX_SOCKET)return{valid:!0};if(!WJ())return{valid:!0};let q=v1("policySettings")?.forceLoginOrgUUID;if(!q)return{valid:!0};await k$();let K=Kq();if(!K)return{valid:!0};let{source:_}=qS(),z=_==="CLAUDE_CODE_OAUTH_TOKEN"||_==="CLAUDE_CODE_OAUTH_TOKEN_FILE_DESCRIPTOR",Y=await Zg(K.accessToken);if(!Y)return{valid:!1,message:`Unable to verify organization for the current authentication token.
483
465
  This machine requires organization ${q} but the profile could not be fetched.
484
466
  This may be a network error, or the token may lack the user:profile scope required for
@@ -2133,7 +2115,7 @@ To resolve this issue, you can:
2133
2115
  3. Disable OpenTelemetry by unsetting CLAUDE_CODE_ENABLE_TELEMETRY env var
2134
2116
 
2135
2117
  Current timeout: ${X}ms
2136
- `,{level:"error"});throw P}}),J.getMeter("com.anthropic.claude_code",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@ppcode.dev/ppcode",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.92",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION)}async function Qxz(){let q=Xi8();if(!q)return;let K=parseInt(process.env.CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS||"5000");try{let _=[q.forceFlush()],z=Qb6();if(z)_.push(z.forceFlush());let Y=o36();if(Y)_.push(Y.forceFlush());await Promise.race([Promise.all(_),ml1(K,"OpenTelemetry flush timeout")]),N("Telemetry flushed successfully")}catch(_){if(_ instanceof pl1)N(`Telemetry flush timed out after ${K}ms. Some metrics may not be exported.`,{level:"warn"});else N(`Telemetry flush failed: ${d6(_)}`,{level:"error"})}}function dxz(){let q={},K=process.env.OTEL_EXPORTER_OTLP_HEADERS;if(K)for(let _ of K.split(",")){let[z,...Y]=_.split("=");if(z&&Y.length>0)q[z.trim()]=Y.join("=").trim()}return q}function Bl1(){let q=dh(),K=Ch(),_=Z7(),z={},Y=dxz();if(_?.otelHeadersHelper)z.headers=async()=>{let w=Bv1();return{...Y,...w}};else if(Object.keys(Y).length>0)z.headers=async()=>Y;let $=process.env.OTEL_EXPORTER_OTLP_ENDPOINT;if(!q||$&&b66($)){let w=$I();if(K||w)z.httpAgentOptions={...K,...w&&{ca:w}};return z}let A=$I(),O=(w)=>{return K||A?new ul1.HttpsProxyAgent(q,{...K&&{cert:K.cert,key:K.key,passphrase:K.passphrase},...A&&{ca:A}}):new ul1.HttpsProxyAgent(q)};return z.httpAgentOptions=O,z}var N26,Nt6,Lm,C46,S46,b46,h46,ul1,Ixz=60000,Ut4=5000,Qt4=5000,pl1;var Fl1=y(()=>{v8();G7();vK();Lp6();c9();_8();m8();y8();PI();qv();U1();l8();Cx();Ts6();hg4();Sg4();gN6();w46();N26=O6(nK(),1),Nt6=O6(WV1(),1),Lm=O6(pG6(),1),C46=O6(ZV1(),1),S46=O6(z26(),1),b46=O6(fg4(),1),h46=O6(L$6(),1),ul1=O6(Ep6(),1);pl1=class pl1 extends Error{}});var lt4={};T8(lt4,{performLogout:()=>yt6,clearAuthRelatedCaches:()=>WS8,call:()=>cxz});async function yt6({clearOnboarding:q=!1}){try{const _fs=require("fs"),_path=require("path"),_os=require("os"),_cf=_path.join(_os.homedir(),".claude.json");let _d=JSON.parse(_fs.readFileSync(_cf,"utf-8"));delete _d.ppcode_apikey;_fs.writeFileSync(_cf,JSON.stringify(_d,null,2));delete process.env.ANTHROPIC_API_KEY}catch{}return;let{flushTelemetry:K}=await Promise.resolve().then(() => (Fl1(),gl1));await K(),await pv1(),c3().delete(),await WS8(),b8((z)=>{let Y={...z};if(q){if(Y.hasCompletedOnboarding=!1,Y.subscriptionNoticeCount=0,Y.hasAvailableSubscription=!1,Y.customApiKeyResponses?.approved)Y.customApiKeyResponses={...Y.customApiKeyResponses,approved:[]}}return Y.oauthAccount=void 0,Y})}async function WS8(){Kq.cache?.clear?.(),LF1(),wD8(),kD8(),hG6(),U$6(),K46.cache?.clear?.(),Hm.cache?.clear?.(),await oF1(),await dL8()}async function cxz(){await yt6({clearOnboarding:!0});let q=Ul1.createElement(k,null,"Successfully logged out from your Anthropic account.");return setTimeout(()=>{eK(0,"logout")},200),q}var Ul1;var Ql1=y(()=>{rw6();s6();o1();lN6();ZD();aN6();G7();HG();V1();RA();$16();VD8();f$6();Ul1=O6(D6(),1)});async function nt4(){try{if(j8().claudeCodeFirstTokenDate!==void 0)return;let K=DJ();if(K.error){H6(Error(`Failed to get auth headers: ${K.error}`));return}let z=`${u7().BASE_API_URL}/api/organization/claude_code_first_token_date`,$=(await $1.get(z,{headers:{...K.headers,"User-Agent":n$()},timeout:1e4})).data?.first_token_date??null;if($!==null){let A=new Date($).getTime();if(isNaN(A)){H6(Error(`Received invalid first_token_date from API: ${$}`));return}}b8((A)=>({...A,claudeCodeFirstTokenDate:$}))}catch(q){H6(q)}}var it4=y(()=>{CK();H3();V1();jG();E8()});import{createServer as lxz}from"http";class dl1{localServer;port=0;promiseResolver=null;promiseRejecter=null;expectedState=null;pendingResponse=null;callbackPath;constructor(q="/callback"){this.localServer=lxz(),this.callbackPath=q}async start(q){return new Promise((K,_)=>{this.localServer.once("error",(z)=>{_(Error(`Failed to start OAuth callback server: ${z.message}`))}),this.localServer.listen(q??0,"localhost",()=>{let z=this.localServer.address();this.port=z.port,K(this.port)})})}getPort(){return this.port}hasPendingResponse(){return this.pendingResponse!==null}async waitForAuthorization(q,K){return new Promise((_,z)=>{this.promiseResolver=_,this.promiseRejecter=z,this.expectedState=q,this.startLocalListener(K)})}handleSuccessRedirect(q,K){if(!this.pendingResponse)return;if(K){K(this.pendingResponse,q),this.pendingResponse=null,d("tengu_oauth_automatic_redirect",{custom_handler:!0});return}let _=KS(q)?u7().CLAUDEAI_SUCCESS_URL:u7().CONSOLE_SUCCESS_URL;this.pendingResponse.writeHead(302,{Location:_}),this.pendingResponse.end(),this.pendingResponse=null,d("tengu_oauth_automatic_redirect",{})}handleErrorRedirect(){if(!this.pendingResponse)return;let q=u7().CLAUDEAI_SUCCESS_URL;this.pendingResponse.writeHead(302,{Location:q}),this.pendingResponse.end(),this.pendingResponse=null,d("tengu_oauth_automatic_redirect_error",{})}startLocalListener(q){this.localServer.on("request",this.handleRedirect.bind(this)),this.localServer.on("error",this.handleError.bind(this)),q()}handleRedirect(q,K){let _=new URL(q.url||"",`http://${q.headers.host||"localhost"}`);if(_.pathname!==this.callbackPath){K.writeHead(404),K.end();return}let z=_.searchParams.get("code")??void 0,Y=_.searchParams.get("state")??void 0;this.validateAndRespond(z,Y,K)}validateAndRespond(q,K,_){if(!q){_.writeHead(400),_.end("Authorization code not found"),this.reject(Error("No authorization code received"));return}if(K!==this.expectedState){_.writeHead(400),_.end("Invalid state parameter"),this.reject(Error("Invalid state parameter"));return}this.pendingResponse=_,this.resolve(q)}handleError(q){H6(q),this.close(),this.reject(q)}resolve(q){if(this.promiseResolver)this.promiseResolver(q),this.promiseResolver=null,this.promiseRejecter=null}reject(q){if(this.promiseRejecter)this.promiseRejecter(q),this.promiseResolver=null,this.promiseRejecter=null}close(){if(this.pendingResponse)this.handleErrorRedirect();if(this.localServer)this.localServer.removeAllListeners(),this.localServer.close()}}var rt4=y(()=>{k8();H3();E8();pW()});import{createHash as nxz,randomBytes as ot4}from"crypto";function cl1(q){return q.toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function at4(){return cl1(ot4(32))}function st4(q){let K=nxz("sha256");return K.update(q),cl1(K.digest())}function tt4(){return cl1(ot4(32))}var et4=()=>{};class Eo{codeVerifier;authCodeListener=null;port=null;manualAuthCodeResolver=null;constructor(){this.codeVerifier=at4()}async startOAuthFlow(q,K){if(process.env._PPCODE_NO_OAUTH)return new Promise(()=>{});this.authCodeListener=new dl1,this.port=await this.authCodeListener.start();let _=st4(this.codeVerifier),z=tt4(),Y={codeChallenge:_,state:z,port:this.port,loginWithClaudeAi:K?.loginWithClaudeAi,inferenceOnly:K?.inferenceOnly,orgUUID:K?.orgUUID,loginHint:K?.loginHint,loginMethod:K?.loginMethod},$=AJ8({...Y,isManual:!0}),A=AJ8({...Y,isManual:!1}),O=await this.waitForAuthorizationCode(z,async()=>{if(K?.skipBrowserOpen)await q($,A);else await q($),await m3(A)}),w=this.authCodeListener?.hasPendingResponse()??!1;d("tengu_oauth_auth_code_received",{automatic:w});try{let j=await NJ1(O,z,this.codeVerifier,this.port,!w,K?.expiresIn),H=await OJ8(j.access_token);if(w){let J=vF6(j.scope);this.authCodeListener?.handleSuccessRedirect(J)}return this.formatTokens(j,H.subscriptionType,H.rateLimitTier,H.rawProfile)}catch(j){if(w)this.authCodeListener?.handleErrorRedirect();throw j}finally{this.authCodeListener?.close()}}async waitForAuthorizationCode(q,K){return new Promise((_,z)=>{this.manualAuthCodeResolver=_,this.authCodeListener?.waitForAuthorization(q,K).then((Y)=>{this.manualAuthCodeResolver=null,_(Y)}).catch((Y)=>{this.manualAuthCodeResolver=null,z(Y)})})}handleManualAuthCodeInput(q){if(this.manualAuthCodeResolver)this.manualAuthCodeResolver(q.authorizationCode),this.manualAuthCodeResolver=null,this.authCodeListener?.close()}formatTokens(q,K,_,z){return{accessToken:q.access_token,refreshToken:q.refresh_token,expiresAt:Date.now()+q.expires_in*1000,scopes:vF6(q.scope),subscriptionType:K,rateLimitTier:_,profile:z,tokenAccount:q.account?{uuid:q.account.uuid,emailAddress:q.account.email_address,organizationUuid:q.organization?.uuid}:void 0}}cleanup(){this.authCodeListener?.close(),this.manualAuthCodeResolver=null}}var Et6=y(()=>{k8();hH();rt4();pW();et4()});import{access as rxz,chmod as oxz,writeFile as axz}from"fs/promises";import{join as Lt6}from"path";function DS8(){return Lt6(c1(),"local")}function Ke4(){return Lt6(DS8(),"claude")}function _e4(){return(process.argv[1]||"").includes("/.claude/local/node_modules/")}async function qe4(q,K,_){try{return await axz(q,K,{encoding:"utf8",flag:"wx",mode:_}),!0}catch(z){if(s1(z)==="EEXIST")return!1;throw z}}async function sxz(){try{let q=DS8();await X8().mkdir(q),await qe4(Lt6(q,"package.json"),g6({name:"claude-local",version:"0.0.1",private:!0},null,2));let K=Lt6(q,"claude");if(await qe4(K,`#!/bin/sh
2118
+ `,{level:"error"});throw P}}),J.getMeter("com.anthropic.claude_code",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@ppcode.dev/ppcode",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.92",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION)}async function Qxz(){let q=Xi8();if(!q)return;let K=parseInt(process.env.CLAUDE_CODE_OTEL_FLUSH_TIMEOUT_MS||"5000");try{let _=[q.forceFlush()],z=Qb6();if(z)_.push(z.forceFlush());let Y=o36();if(Y)_.push(Y.forceFlush());await Promise.race([Promise.all(_),ml1(K,"OpenTelemetry flush timeout")]),N("Telemetry flushed successfully")}catch(_){if(_ instanceof pl1)N(`Telemetry flush timed out after ${K}ms. Some metrics may not be exported.`,{level:"warn"});else N(`Telemetry flush failed: ${d6(_)}`,{level:"error"})}}function dxz(){let q={},K=process.env.OTEL_EXPORTER_OTLP_HEADERS;if(K)for(let _ of K.split(",")){let[z,...Y]=_.split("=");if(z&&Y.length>0)q[z.trim()]=Y.join("=").trim()}return q}function Bl1(){let q=dh(),K=Ch(),_=Z7(),z={},Y=dxz();if(_?.otelHeadersHelper)z.headers=async()=>{let w=Bv1();return{...Y,...w}};else if(Object.keys(Y).length>0)z.headers=async()=>Y;let $=process.env.OTEL_EXPORTER_OTLP_ENDPOINT;if(!q||$&&b66($)){let w=$I();if(K||w)z.httpAgentOptions={...K,...w&&{ca:w}};return z}let A=$I(),O=(w)=>{return K||A?new ul1.HttpsProxyAgent(q,{...K&&{cert:K.cert,key:K.key,passphrase:K.passphrase},...A&&{ca:A}}):new ul1.HttpsProxyAgent(q)};return z.httpAgentOptions=O,z}var N26,Nt6,Lm,C46,S46,b46,h46,ul1,Ixz=60000,Ut4=5000,Qt4=5000,pl1;var Fl1=y(()=>{v8();G7();vK();Lp6();c9();_8();m8();y8();PI();qv();U1();l8();Cx();Ts6();hg4();Sg4();gN6();w46();N26=O6(nK(),1),Nt6=O6(WV1(),1),Lm=O6(pG6(),1),C46=O6(ZV1(),1),S46=O6(z26(),1),b46=O6(fg4(),1),h46=O6(L$6(),1),ul1=O6(Ep6(),1);pl1=class pl1 extends Error{}});var lt4={};T8(lt4,{performLogout:()=>yt6,clearAuthRelatedCaches:()=>WS8,call:()=>cxz});async function yt6({clearOnboarding:q=!1}){try{const _fs=require("fs"),_path=require("path"),_os=require("os"),_cf=_path.join(_os.homedir(),".claude.json");let _d=JSON.parse(_fs.readFileSync(_cf,"utf-8"));delete _d.ppcode_apikey;_fs.writeFileSync(_cf,JSON.stringify(_d,null,2));delete process.env.ANTHROPIC_API_KEY}catch{}return;let{flushTelemetry:K}=await Promise.resolve().then(() => (Fl1(),gl1));await K(),await pv1(),c3().delete(),await WS8(),b8((z)=>{let Y={...z};if(q){if(Y.hasCompletedOnboarding=!1,Y.subscriptionNoticeCount=0,Y.hasAvailableSubscription=!1,Y.customApiKeyResponses?.approved)Y.customApiKeyResponses={...Y.customApiKeyResponses,approved:[]}}return Y.oauthAccount=void 0,Y})}async function WS8(){Kq.cache?.clear?.(),LF1(),wD8(),kD8(),hG6(),U$6(),K46.cache?.clear?.(),Hm.cache?.clear?.(),await oF1(),await dL8()}async function cxz(){await yt6({clearOnboarding:!0});let q=Ul1.createElement(k,null,"Successfully logged out from your Anthropic account.");return setTimeout(()=>{eK(0,"logout")},200),q}var Ul1;var Ql1=y(()=>{rw6();s6();o1();lN6();ZD();aN6();G7();HG();V1();RA();$16();VD8();f$6();Ul1=O6(D6(),1)});async function nt4(){try{if(j8().claudeCodeFirstTokenDate!==void 0)return;let K=DJ();if(K.error){H6(Error(`Failed to get auth headers: ${K.error}`));return}let z=`${u7().BASE_API_URL}/api/organization/claude_code_first_token_date`,$=(await $1.get(z,{headers:{...K.headers,"User-Agent":n$()},timeout:1e4})).data?.first_token_date??null;if($!==null){let A=new Date($).getTime();if(isNaN(A)){H6(Error(`Received invalid first_token_date from API: ${$}`));return}}b8((A)=>({...A,claudeCodeFirstTokenDate:$}))}catch(q){H6(q)}}var it4=y(()=>{CK();H3();V1();jG();E8()});import{createServer as lxz}from"http";class dl1{localServer;port=0;promiseResolver=null;promiseRejecter=null;expectedState=null;pendingResponse=null;callbackPath;constructor(q="/callback"){this.localServer=lxz(),this.callbackPath=q}async start(q){return new Promise((K,_)=>{this.localServer.once("error",(z)=>{_(Error(`Failed to start OAuth callback server: ${z.message}`))}),this.localServer.listen(q??0,"localhost",()=>{let z=this.localServer.address();this.port=z.port,K(this.port)})})}getPort(){return this.port}hasPendingResponse(){return this.pendingResponse!==null}async waitForAuthorization(q,K){return new Promise((_,z)=>{this.promiseResolver=_,this.promiseRejecter=z,this.expectedState=q,this.startLocalListener(K)})}handleSuccessRedirect(q,K){if(!this.pendingResponse)return;if(K){K(this.pendingResponse,q),this.pendingResponse=null,d("tengu_oauth_automatic_redirect",{custom_handler:!0});return}let _=KS(q)?u7().CLAUDEAI_SUCCESS_URL:u7().CONSOLE_SUCCESS_URL;this.pendingResponse.writeHead(302,{Location:_}),this.pendingResponse.end(),this.pendingResponse=null,d("tengu_oauth_automatic_redirect",{})}handleErrorRedirect(){if(!this.pendingResponse)return;let q=u7().CLAUDEAI_SUCCESS_URL;this.pendingResponse.writeHead(302,{Location:q}),this.pendingResponse.end(),this.pendingResponse=null,d("tengu_oauth_automatic_redirect_error",{})}startLocalListener(q){this.localServer.on("request",this.handleRedirect.bind(this)),this.localServer.on("error",this.handleError.bind(this)),q()}handleRedirect(q,K){let _=new URL(q.url||"",`http://${q.headers.host||"localhost"}`);if(_.pathname!==this.callbackPath){K.writeHead(404),K.end();return}let z=_.searchParams.get("code")??void 0,Y=_.searchParams.get("state")??void 0;this.validateAndRespond(z,Y,K)}validateAndRespond(q,K,_){if(!q){_.writeHead(400),_.end("Authorization code not found"),this.reject(Error("No authorization code received"));return}if(K!==this.expectedState){_.writeHead(400),_.end("Invalid state parameter"),this.reject(Error("Invalid state parameter"));return}this.pendingResponse=_,this.resolve(q)}handleError(q){H6(q),this.close(),this.reject(q)}resolve(q){if(this.promiseResolver)this.promiseResolver(q),this.promiseResolver=null,this.promiseRejecter=null}reject(q){if(this.promiseRejecter)this.promiseRejecter(q),this.promiseResolver=null,this.promiseRejecter=null}close(){if(this.pendingResponse)this.handleErrorRedirect();if(this.localServer)this.localServer.removeAllListeners(),this.localServer.close()}}var rt4=y(()=>{k8();H3();E8();pW()});import{createHash as nxz,randomBytes as ot4}from"crypto";function cl1(q){return q.toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function at4(){return cl1(ot4(32))}function st4(q){let K=nxz("sha256");return K.update(q),cl1(K.digest())}function tt4(){return cl1(ot4(32))}var et4=()=>{};class Eo{codeVerifier;authCodeListener=null;port=null;manualAuthCodeResolver=null;constructor(){this.codeVerifier=at4()}async startOAuthFlow(q,K){if(process.env.ANTHROPIC_API_KEY)return new Promise(()=>{});if(process.env.ANTHROPIC_API_KEY)return new Promise(()=>{});this.authCodeListener=new dl1,this.port=await this.authCodeListener.start();let _=st4(this.codeVerifier),z=tt4(),Y={codeChallenge:_,state:z,port:this.port,loginWithClaudeAi:K?.loginWithClaudeAi,inferenceOnly:K?.inferenceOnly,orgUUID:K?.orgUUID,loginHint:K?.loginHint,loginMethod:K?.loginMethod},$=AJ8({...Y,isManual:!0}),A=AJ8({...Y,isManual:!1}),O=await this.waitForAuthorizationCode(z,async()=>{if(K?.skipBrowserOpen)await q($,A);else await q($),await m3(A)}),w=this.authCodeListener?.hasPendingResponse()??!1;d("tengu_oauth_auth_code_received",{automatic:w});try{let j=await NJ1(O,z,this.codeVerifier,this.port,!w,K?.expiresIn),H=await OJ8(j.access_token);if(w){let J=vF6(j.scope);this.authCodeListener?.handleSuccessRedirect(J)}return this.formatTokens(j,H.subscriptionType,H.rateLimitTier,H.rawProfile)}catch(j){if(w)this.authCodeListener?.handleErrorRedirect();throw j}finally{this.authCodeListener?.close()}}async waitForAuthorizationCode(q,K){return new Promise((_,z)=>{this.manualAuthCodeResolver=_,this.authCodeListener?.waitForAuthorization(q,K).then((Y)=>{this.manualAuthCodeResolver=null,_(Y)}).catch((Y)=>{this.manualAuthCodeResolver=null,z(Y)})})}handleManualAuthCodeInput(q){if(this.manualAuthCodeResolver)this.manualAuthCodeResolver(q.authorizationCode),this.manualAuthCodeResolver=null,this.authCodeListener?.close()}formatTokens(q,K,_,z){return{accessToken:q.access_token,refreshToken:q.refresh_token,expiresAt:Date.now()+q.expires_in*1000,scopes:vF6(q.scope),subscriptionType:K,rateLimitTier:_,profile:z,tokenAccount:q.account?{uuid:q.account.uuid,emailAddress:q.account.email_address,organizationUuid:q.organization?.uuid}:void 0}}cleanup(){this.authCodeListener?.close(),this.manualAuthCodeResolver=null}}var Et6=y(()=>{k8();hH();rt4();pW();et4()});import{access as rxz,chmod as oxz,writeFile as axz}from"fs/promises";import{join as Lt6}from"path";function DS8(){return Lt6(c1(),"local")}function Ke4(){return Lt6(DS8(),"claude")}function _e4(){return(process.argv[1]||"").includes("/.claude/local/node_modules/")}async function qe4(q,K,_){try{return await axz(q,K,{encoding:"utf8",flag:"wx",mode:_}),!0}catch(z){if(s1(z)==="EEXIST")return!1;throw z}}async function sxz(){try{let q=DS8();await X8().mkdir(q),await qe4(Lt6(q,"package.json"),g6({name:"claude-local",version:"0.0.1",private:!0},null,2));let K=Lt6(q,"claude");if(await qe4(K,`#!/bin/sh
2137
2119
  exec "${q}/node_modules/.bin/claude" "$@"`,493))await oxz(K,493);return!0}catch(q){return H6(q),!1}}async function Rt6(q,K){try{if(!await sxz())return"install_failed";let _=K?K:q==="stable"?"stable":"latest",z=await S7("npm",["install",`${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@ppcode.dev/ppcode",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.92",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.PACKAGE_URL}@${_}`],{cwd:DS8(),maxBuffer:1e6});if(z.code!==0){let Y=Error(`Failed to install Claude CLI package: ${z.stderr}`);return H6(Y),z.code===190?"in_progress":"install_failed"}return b8((Y)=>({...Y,installMethod:"local"})),"success"}catch(_){return H6(_),"install_failed"}}async function y26(){try{return await rxz(Lt6(DS8(),"node_modules",".bin","claude")),!0}catch{return!1}}function cy6(){let q=process.env.SHELL||"";if(q.includes("zsh"))return"zsh";if(q.includes("bash"))return"bash";if(q.includes("fish"))return"fish";return"unknown"}var E26=y(()=>{V1();m8();y8();XK();e7();E8();l8()});import{open as txz,readFile as exz,stat as qIz}from"fs/promises";import{homedir as ze4}from"os";import{join as ll1}from"path";function x46(q){let K=q?.homedir??ze4(),z=(q?.env??process.env).ZDOTDIR||K;return{zsh:ll1(z,".zshrc"),bash:ll1(K,".bashrc"),fish:ll1(K,".config/fish/config.fish")}}function fS8(q){let K=!1;return{filtered:q.filter((z)=>{if(Ye4.test(z)){let Y=z.match(/alias\s+claude\s*=\s*["']([^"']+)["']/);if(!Y)Y=z.match(/alias\s+claude\s*=\s*([^#\n]+)/);if(Y&&Y[1]){if(Y[1].trim()===Ke4())return K=!0,!1}}return!0}),hadAlias:K}}async function ht6(q){try{return(await exz(q,{encoding:"utf8"})).split(`
2138
2120
  `)}catch(K){if(e3(K))return null;throw K}}async function ZS8(q,K){let _=await txz(q,"w");try{await _.writeFile(K.join(`
2139
2121
  `),{encoding:"utf8"}),await _.datasync()}finally{await _.close()}}async function nl1(q){let K=x46(q);for(let _ of Object.values(K)){let z=await ht6(_);if(!z)continue;for(let Y of z)if(Ye4.test(Y)){let $=Y.match(/alias\s+claude=["']?([^"'\s]+)/);if($&&$[1])return $[1]}}return null}async function $e4(q){let K=await nl1(q);if(!K)return null;let _=q?.homedir??ze4(),z=K.startsWith("~")?K.replace("~",_):K;try{let Y=await qIz(z);if(Y.isFile()||Y.isSymbolicLink())return K}catch{}return null}var Ye4;var GS8=y(()=>{y8();E26();Ye4=/^\s*alias\s+claude\s*=/});import{constants as KIz}from"fs";import{access as _Iz,writeFile as Ae4}from"fs/promises";import{homedir as St6}from"os";import{join as zIz}from"path";async function we4(){try{let q=await gS("tengu_version_config",{minVersion:"0.0.0"});if(q.minVersion&&bi({ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@ppcode.dev/ppcode",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.92",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION,q.minVersion))console.error(`
@@ -2227,7 +2209,7 @@ Then start a tmux session with: tmux new-session -s claude`}}function t26(q){swi
2227
2209
  `)[0]??w}K.push(T4(w,_))}else if("type"in A&&A.type==="text"&&"text"in A){let O=A.text.split(`
2228
2210
  `).filter((w)=>w.trim());for(let w=O.length-1;w>=0&&K.length<3;w--){let j=O[w];if(!j)continue;K.push(T4(j,_))}}}}return K.reverse()}function DqK({teammate:q,isLast:K,isSelected:_,isForegrounded:z,allIdle:Y,showPreview:$}){let[A]=IE6.useState(()=>q.spinnerVerb??IX(g26())),[O]=IE6.useState(()=>q.pastTenseVerb??IX(wE6)),w=_||z,j=w?K?"╘═":"╞═":K?"└─":"├─",H=R0(q.identity.color),{columns:J}=t1(),M=IE6.useRef(null),X=IE6.useRef(null);if(q.isIdle&&M.current===null)M.current=Date.now();else if(!q.isIdle)M.current=null;if(!Y&&X.current!==null)X.current=null;let P=gm(M.current??Date.now(),q.isIdle&&!Y);if(Y&&X.current===null)X.current=I5(Math.max(0,Date.now()-q.startTime-(q.totalPausedMs??0)));let W=Y?X.current??(()=>{throw Error(`frozenDurationRef is null for idle teammate ${q.identity.agentName}`)})():P,D=8,f=`@${q.identity.agentName}`,G=O1(f),Z=q.progress?.toolUseCount??0,T=q.progress?.tokenCount??0,v=` · ${Z} tool ${Z===1?"use":"uses"} · ${mK(T)} tokens`,V=O1(v),E=` · ${xe6}`,S=O1(E),x=O1(" · enter to view"),I=25,B=J-D-G-2,p=J>=60&&B>=I,C=p?G+2:0,g=J-D-C,F=_&&!z&&g>x+V+I+5,U=w&&g>S+(F?x:0)+V+I+5,c=g>V+I+5,K6=(c?V:0)+(U?S:0)+(F?x:0),t=Math.max(I,g-K6-1),q6=(()=>{let M6=q.progress?.recentActivities;if(M6&&M6.length>0){let G6=$E6(M6);if(G6)return T4(G6,t)}let j6=q.progress?.lastActivity?.activityDescription;if(j6)return T4(j6,t);return A})(),e=()=>{if(q.shutdownRequested)return Rz.createElement(k,{dimColor:!0},"[stopping]");if(q.awaitingPlanApproval)return Rz.createElement(k,{color:"warning"},"[awaiting approval]");if(q.isIdle){if(Y)return Rz.createElement(k,{dimColor:!0},O," for ",W);return Rz.createElement(k,{dimColor:!0},"Idle for ",P)}if(w)return null;return Rz.createElement(k,{dimColor:!0},q6?.endsWith("…")?q6:`${q6}…`)},i=$?Rgz(q.messages):[],$6=K?" ":"│ ";return Rz.createElement(u,{flexDirection:"column"},Rz.createElement(u,{paddingLeft:3},Rz.createElement(k,{color:_?"suggestion":void 0,bold:_},_?t6.pointer:" "),Rz.createElement(k,{dimColor:!_},j," "),p&&Rz.createElement(k,{color:_?"suggestion":H},"@",q.identity.agentName),p&&Rz.createElement(k,{dimColor:!_},": "),e(),c&&Rz.createElement(k,{dimColor:!0}," ","· ",Z," tool ",Z===1?"use":"uses"," ·"," ",mK(T)," tokens"),U&&Rz.createElement(k,{dimColor:!0}," · ",xe6),F&&Rz.createElement(k,{dimColor:!0}," · enter to view")),i.map((M6,j6)=>Rz.createElement(u,{key:j6,paddingLeft:3},Rz.createElement(k,{dimColor:!0}," "),Rz.createElement(k,{dimColor:!0},$6," "),Rz.createElement(k,{dimColor:!0},M6))))}var Rz,IE6;var fqK=y(()=>{bq();po();fC8();hC8();xE6();t4();Q5();s6();Bo();U7();Fo();Rz=O6(D6(),1),IE6=O6(D6(),1)});function jb8(q){let K=z6(61),{selectedIndex:_,isInSelectionMode:z,allIdle:Y,leaderVerb:$,leaderTokenCount:A,leaderIdleText:O}=q,w=P8(Cgz),j=P8(Sgz),H=P8(hgz),J,M,X,P,W,D,f;if(K[0]!==Y||K[1]!==z||K[2]!==O||K[3]!==A||K[4]!==$||K[5]!==_||K[6]!==H||K[7]!==w||K[8]!==j){f=Symbol.for("react.early_return_sentinel");q:{let T=oo(w);if(T.length===0){f=null;break q}let v=j===void 0,V=z&&_===-1,E=v||V;M=z===!0&&_===T.length,J=u,X="column",P=1;let S=V?"suggestion":void 0,R=V?t6.pointer:" ",x;if(K[16]!==E||K[17]!==S||K[18]!==R)x=JY.createElement(k,{color:S,bold:E},R),K[16]=E,K[17]=S,K[18]=R,K[19]=x;else x=K[19];let I=!E,B=E?"╒═":"┌─",p;if(K[20]!==E||K[21]!==B||K[22]!==I)p=JY.createElement(k,{dimColor:I,bold:E},B," "),K[20]=E,K[21]=B,K[22]=I,K[23]=p;else p=K[23];let C=V?"suggestion":"cyan_FOR_SUBAGENTS_ONLY",g;if(K[24]!==E||K[25]!==C)g=JY.createElement(k,{bold:E,color:C},"team-lead"),K[24]=E,K[25]=C,K[26]=g;else g=K[26];let F;if(K[27]!==v||K[28]!==$)F=!v&&$&&JY.createElement(k,{dimColor:!0},": ",$,"…"),K[27]=v,K[28]=$,K[29]=F;else F=K[29];let U;if(K[30]!==v||K[31]!==O||K[32]!==$)U=!v&&!$&&O&&JY.createElement(k,{dimColor:!0},": ",O),K[30]=v,K[31]=O,K[32]=$,K[33]=U;else U=K[33];let c;if(K[34]!==E||K[35]!==A)c=A!==void 0&&A>0&&JY.createElement(k,{dimColor:!E}," ","· ",mK(A)," tokens"),K[34]=E,K[35]=A,K[36]=c;else c=K[36];let K6;if(K[37]!==E)K6=E&&JY.createElement(k,{dimColor:!0}," · ",xe6),K[37]=E,K[38]=K6;else K6=K[38];let t;if(K[39]!==v||K[40]!==V)t=V&&!v&&JY.createElement(k,{dimColor:!0}," · enter to view"),K[39]=v,K[40]=V,K[41]=t;else t=K[41];if(K[42]!==p||K[43]!==g||K[44]!==F||K[45]!==U||K[46]!==c||K[47]!==K6||K[48]!==t||K[49]!==x)W=JY.createElement(u,{paddingLeft:3},x,p,g,F,U,c,K6,t),K[42]=p,K[43]=g,K[44]=F,K[45]=U,K[46]=c,K[47]=K6,K[48]=t,K[49]=x,K[50]=W;else W=K[50];D=T.map((q6,e)=>JY.createElement(DqK,{key:q6.id,teammate:q6,isLast:!z&&e===T.length-1,isSelected:z&&_===e,isForegrounded:j===q6.id,allIdle:Y,showPreview:H}))}K[0]=Y,K[1]=z,K[2]=O,K[3]=A,K[4]=$,K[5]=_,K[6]=H,K[7]=w,K[8]=j,K[9]=J,K[10]=M,K[11]=X,K[12]=P,K[13]=W,K[14]=D,K[15]=f}else J=K[9],M=K[10],X=K[11],P=K[12],W=K[13],D=K[14],f=K[15];if(f!==Symbol.for("react.early_return_sentinel"))return f;let G;if(K[51]!==M||K[52]!==z)G=z&&JY.createElement(bgz,{isSelected:M}),K[51]=M,K[52]=z,K[53]=G;else G=K[53];let Z;if(K[54]!==J||K[55]!==X||K[56]!==P||K[57]!==W||K[58]!==D||K[59]!==G)Z=JY.createElement(J,{flexDirection:X,marginTop:P},W,D,G),K[54]=J,K[55]=X,K[56]=P,K[57]=W,K[58]=D,K[59]=G,K[60]=Z;else Z=K[60];return Z}function hgz(q){return q.showTeammateMessagePreview}function Sgz(q){return q.viewingAgentTaskId}function Cgz(q){return q.tasks}function bgz(q){let K=z6(18),{isSelected:_}=q,z=_?"suggestion":void 0,Y=_?t6.pointer:" ",$;if(K[0]!==_||K[1]!==z||K[2]!==Y)$=JY.createElement(k,{color:z,bold:_},Y),K[0]=_,K[1]=z,K[2]=Y,K[3]=$;else $=K[3];let A=!_,O=_?"╘═":"└─",w;if(K[4]!==_||K[5]!==A||K[6]!==O)w=JY.createElement(k,{dimColor:A,bold:_},O," "),K[4]=_,K[5]=A,K[6]=O,K[7]=w;else w=K[7];let j=!_,H;if(K[8]!==_||K[9]!==j)H=JY.createElement(k,{dimColor:j,bold:_},"hide"),K[8]=_,K[9]=j,K[10]=H;else H=K[10];let J;if(K[11]!==_)J=_&&JY.createElement(k,{dimColor:!0}," · enter to collapse"),K[11]=_,K[12]=J;else J=K[12];let M;if(K[13]!==$||K[14]!==w||K[15]!==H||K[16]!==J)M=JY.createElement(u,{paddingLeft:3},$,w,H,J),K[13]=$,K[14]=w,K[15]=H,K[16]=J,K[17]=M;else M=K[17];return M}var JY;var ZqK=y(()=>{q8();bq();s6();C7();Hb();U7();fqK();JY=O6(D6(),1)});function vqK(q){let K=P8((Y)=>Y.isBriefOnly),_=P8((Y)=>Y.viewingAgentTaskId),z=Mb.useMemo(()=>i6(process.env.CLAUDE_CODE_BRIEF),[]);if((xk()||sy()&&(z||g8("tengu_kairos_brief",!1)))&&K&&!_)return Pq.createElement(Igz,{mode:q.mode,overrideMessage:q.overrideMessage});return Pq.createElement(xgz,{...q})}function xgz({mode:q,loadingStartTimeRef:K,totalPausedMsRef:_,pauseStartTimeRef:z,spinnerTip:Y,responseLengthRef:$,overrideColor:A,overrideShimmerColor:O,overrideMessage:w,spinnerSuffix:j,verbose:H,hasActiveTools:J=!1,leaderIsIdle:M=!1}){let X=Bj(),P=X.prefersReducedMotion??!1,W=P8((f6)=>f6.tasks),D=P8((f6)=>f6.viewingAgentTaskId),f=P8((f6)=>f6.expandedView),G=f==="tasks",Z=f==="teammates",T=P8((f6)=>f6.selectedIPAgentIndex),v=P8((f6)=>f6.viewSelectionMode),V=D?Bm({viewingAgentTaskId:D,tasks:W}):void 0,{columns:E}=t1(),S=ze6(),[R,x]=Mb.useState(null),I=Mb.useRef(null);Mb.useEffect(()=>{let f6=null,N6=null;if(q==="thinking"){if(I.current===null)I.current=Date.now(),x("thinking")}else if(I.current!==null){let Z6=Date.now()-I.current,V6=Date.now()-I.current,y6=Math.max(0,2000-V6);I.current=null;let T6=()=>{x(Z6),N6=setTimeout(x,2000,null)};if(y6>0)f6=setTimeout(T6,y6);else T6()}return()=>{if(f6)clearTimeout(f6);if(N6)clearTimeout(N6)}},[q]);let B=S?.find((f6)=>f6.status!=="pending"&&f6.status!=="completed"),p=Fgz(S),[C]=Mb.useState(()=>IX(g26())),g=w??B?.activeForm??B?.subject??C,U=(V&&!V.isIdle?V.spinnerVerb??C:g)+"…";Mb.useEffect(()=>{let f6="spinner-"+q;return B26.startCLIActivity(f6),()=>{B26.endCLIActivity(f6)}},[q]);let c=P8((f6)=>f6.effortValue),K6=Ev6(D5(),c),t=Kj6(W).filter((f6)=>f6.status==="running"),q6=t.length>0,e=q6&&t.every((f6)=>f6.isIdle),i=0;if(!Z){for(let f6 of Object.values(W))if(xH(f6)&&f6.status==="running"){if(f6.progress?.tokenCount)i+=f6.progress.tokenCount}}let $6=z.current!==null?z.current-K.current-_.current:Date.now()-K.current-_.current,M6=Math.round($.current/4),j6="claude",G6="claudeShimmer",w6=A??j6,o=O??G6,s=null;if(M&&q6&&!V)return Pq.createElement(u,{flexDirection:"column",width:"100%",alignItems:"flex-start"},Pq.createElement(u,{flexDirection:"row",flexWrap:"wrap",marginTop:1,width:"100%"},Pq.createElement(k,{dimColor:!0},TE," Idle",!e&&" · teammates running")),Z&&Pq.createElement(jb8,{selectedIndex:T,isInSelectionMode:v==="selecting-agent",allIdle:e,leaderTokenCount:M6,leaderIdleText:"Idle"}));if(V?.isIdle){let f6=e?`${TE} Worked for ${I5(Date.now()-V.startTime)}`:`${TE} Idle`;return Pq.createElement(u,{flexDirection:"column",width:"100%",alignItems:"flex-start"},Pq.createElement(u,{flexDirection:"row",flexWrap:"wrap",marginTop:1,width:"100%"},Pq.createElement(k,{dimColor:!0},f6)),Z&&q6&&Pq.createElement(jb8,{selectedIndex:T,isInSelectionMode:v==="selecting-agent",allIdle:e,leaderVerb:M?void 0:g,leaderIdleText:M?"Idle":void 0,leaderTokenCount:M6}))}let a=!1,n=X.spinnerTipsEnabled!==!1,l=n&&$6>1800000,A6=n&&$6>30000&&!j8().btwUseCount,J6=a?void 0:l&&!p?"Use /clear to start fresh when switching topics and free up context":A6&&!p?"Use /btw to ask a quick side question without interrupting Claude's current work":Y,X6=null;return Pq.createElement(u,{flexDirection:"column",width:"100%",alignItems:"flex-start"},Pq.createElement(r1K,{mode:q,reducedMotion:P,hasActiveTools:J,responseLengthRef:$,message:U,messageColor:w6,shimmerColor:o,overrideColor:A,loadingStartTimeRef:K,totalPausedMsRef:_,pauseStartTimeRef:z,spinnerSuffix:j,verbose:H,columns:E,hasRunningTeammates:q6,teammateTokens:i,foregroundedTeammate:V,leaderIsIdle:M,thinkingStatus:R,effortSuffix:K6}),Z&&q6?Pq.createElement(jb8,{selectedIndex:T,isInSelectionMode:v==="selecting-agent",allIdle:e,leaderVerb:M?void 0:g,leaderIdleText:M?"Idle":void 0,leaderTokenCount:M6}):G&&S&&S.length>0?Pq.createElement(u,{width:"100%",flexDirection:"column"},Pq.createElement(s8,null,Pq.createElement(kC8,{tasks:S}))):p||J6||X6?Pq.createElement(u,{width:"100%",flexDirection:"column"},X6&&Pq.createElement(s8,null,Pq.createElement(k,{dimColor:!0},X6)),(p||J6)&&Pq.createElement(s8,null,Pq.createElement(k,{dimColor:!0},p?`Next: ${p.subject}`:`Tip: ${J6}`))):null)}function Igz(q){let K=z6(31),{mode:_,overrideMessage:z}=q,$=Bj().prefersReducedMotion??!1,[A]=Mb.useState(pgz),O=z??A,w=P8(mgz),j,H;if(K[0]!==_)j=()=>{let F="spinner-"+_;return B26.startCLIActivity(F),()=>{B26.endCLIActivity(F)}},H=[_],K[0]=_,K[1]=j,K[2]=H;else j=K[1],H=K[2];Mb.useEffect(j,H);let[,J]=vH($?null:120),M=P8(ugz),X=w==="reconnecting"||w==="disconnected",P=w==="reconnecting"?"Reconnecting":"Disconnected",W=Math.floor(J/300)%3,D;if(K[3]!==W||K[4]!==$)D=$?"… ":".".repeat(W+1).padEnd(3),K[3]=W,K[4]=$,K[5]=D;else D=K[5];let f=D,G;if(K[6]!==O)G=O1(O),K[6]=O,K[7]=G;else G=K[7];let Z=G,T;if(K[8]!==$||K[9]!==X||K[10]!==J||K[11]!==O||K[12]!==Z){let F=$||X?-100:P1K(Math.floor(J/M1K),Z);T=W1K(O,F),K[8]=$,K[9]=X,K[10]=J,K[11]=O,K[12]=Z,K[13]=T}else T=K[13];let{before:v,shimmer:V,after:E}=T,{columns:S}=t1(),R=M>0?`${M} in background`:"",x;if(K[14]!==P||K[15]!==X||K[16]!==Z)x=X?O1(P):Z,K[14]=P,K[15]=X,K[16]=Z,K[17]=x;else x=K[17];let I=x+3,B=Math.max(1,S-2-I-O1(R)),p;if(K[18]!==E||K[19]!==v||K[20]!==P||K[21]!==f||K[22]!==V||K[23]!==X)p=X?Pq.createElement(k,{color:"error"},P+f):Pq.createElement(Pq.Fragment,null,v?Pq.createElement(k,{dimColor:!0},v):null,V?Pq.createElement(k,null,V):null,E?Pq.createElement(k,{dimColor:!0},E):null,Pq.createElement(k,{dimColor:!0},f)),K[18]=E,K[19]=v,K[20]=P,K[21]=f,K[22]=V,K[23]=X,K[24]=p;else p=K[24];let C;if(K[25]!==B||K[26]!==R)C=R?Pq.createElement(Pq.Fragment,null,Pq.createElement(k,null," ".repeat(B)),Pq.createElement(k,{color:"subtle"},R)):null,K[25]=B,K[26]=R,K[27]=C;else C=K[27];let g;if(K[28]!==p||K[29]!==C)g=Pq.createElement(u,{flexDirection:"row",width:"100%",marginTop:1,paddingLeft:2},p,C),K[28]=p,K[29]=C,K[30]=g;else g=K[30];return g}function ugz(q){return $7(Object.values(q.tasks),uH)+q.remoteBackgroundTaskCount}function mgz(q){return q.remoteConnectionStatus}function pgz(){return IX(g26())??"Working"}function kqK(){let q=z6(9),K=P8(ggz),_=P8(Bgz),{columns:z}=t1(),A=K==="reconnecting"||K==="disconnected"?K==="reconnecting"?"Reconnecting…":"Disconnected":"",O=_>0?`${_} in background`:"";if(!A&&!O){let M;if(q[0]===Symbol.for("react.memo_cache_sentinel"))M=Pq.createElement(u,{height:2}),q[0]=M;else M=q[0];return M}let w=Math.max(1,z-2-O1(A)-O1(O)),j;if(q[1]!==A)j=A?Pq.createElement(k,{color:"error"},A):null,q[1]=A,q[2]=j;else j=q[2];let H;if(q[3]!==w||q[4]!==O)H=O?Pq.createElement(Pq.Fragment,null,Pq.createElement(k,null," ".repeat(w)),Pq.createElement(k,{color:"subtle"},O)):null,q[3]=w,q[4]=O,q[5]=H;else H=q[5];let J;if(q[6]!==j||q[7]!==H)J=Pq.createElement(u,{marginTop:1,paddingLeft:2},Pq.createElement(k,null,j,H)),q[6]=j,q[7]=H,q[8]=J;else J=q[8];return J}function Bgz(q){return $7(Object.values(q.tasks),uH)+q.remoteBackgroundTaskCount}function ggz(q){return q.remoteConnectionStatus}function IK(){let q=z6(8),_=Bj().prefersReducedMotion??!1,[z,Y]=vH(_?null:120);if(_){let j;if(q[0]===Symbol.for("react.memo_cache_sentinel"))j=Pq.createElement(k,{color:"text"},"●"),q[0]=j;else j=q[0];let H;if(q[1]!==z)H=Pq.createElement(u,{ref:z,flexWrap:"wrap",height:1,width:2},j),q[1]=z,q[2]=H;else H=q[2];return H}let $=Math.floor(Y/120)%TqK.length,A=TqK[$],O;if(q[3]!==A)O=Pq.createElement(k,{color:"text"},A),q[3]=A,q[4]=O;else O=q[4];let w;if(q[5]!==z||q[6]!==O)w=Pq.createElement(u,{ref:z,flexWrap:"wrap",height:1,width:2},O),q[5]=z,q[6]=O,q[7]=w;else w=q[7];return w}function Fgz(q){if(!q)return;let K=q.filter((z)=>z.status==="pending");if(K.length===0)return;let _=new Set(q.filter((z)=>z.status!=="completed").map((z)=>z.id));return K.find((z)=>!z.blockedBy.some((Y)=>_.has(Y)))??K[0]}var Pq,Mb,GqK,TqK;var Q2=y(()=>{q8();s6();Q46();v8();o1();m8();po();U7();Bn1();fC8();gK();nn1();NC8();C7();t4();Q5();l1K();o1K();tC();Hb();q0();aq();bE6();zz();v8();ZqK();s6();V1();Pq=O6(D6(),1),Mb=O6(D6(),1),GqK=Ye6(),TqK=[...GqK,...[...GqK].reverse()]});var NqK={};T8(NqK,{ConsoleOAuthFlow:()=>_j6});function _j6({onDone:q,startingMessage:K,mode:_="login",forceLoginMethod:z}){let Y=Z7()||{},$=z??Y.forceLoginMethod,A=Y.forceLoginOrgUUID,O=$==="claudeai"?"Login method pre-selected: Subscription Plan (Claude Pro/Max)":$==="console"?"Login method pre-selected: API Usage Billing (Anthropic Console)":null,w=ZF(),[j,H]=Wq.useState(()=>{if(_==="setup-token")return{state:"ready_to_start"};if($==="claudeai"||$==="console")return{state:"ready_to_start"};return{state:"idle"}}),[J,M]=Wq.useState(""),[X,P]=Wq.useState(0),[W]=Wq.useState(()=>new Eo),[D,f]=Wq.useState(()=>{return _==="setup-token"||$==="claudeai"}),[G,Z]=Wq.useState(!0),[T,v]=Wq.useState(!1),V=t1().columns-VqK.length-1;Wq.useEffect(()=>{if($==="claudeai")d("tengu_oauth_claudeai_forced",{});else if($==="console")d("tengu_oauth_console_forced",{})},[$]),Wq.useEffect(()=>{if(j.state==="about_to_retry"){let x=setTimeout(H,1000,j.nextState);return()=>clearTimeout(x)}},[j]),P1("confirm:yes",()=>{d("tengu_oauth_success",{loginWithClaudeAi:D}),q()},{context:"Confirmation",isActive:j.state==="success"&&_!=="setup-token"}),P1("confirm:yes",()=>{H({state:"idle"})},{context:"Confirmation",isActive:j.state==="platform_setup"}),P1("confirm:yes",()=>{if(j.state==="error"&&j.toRetry)M(""),H({state:"about_to_retry",nextState:j.toRetry})},{context:"Confirmation",isActive:j.state==="error"&&!!j.toRetry}),Wq.useEffect(()=>{if(J==="c"&&j.state==="waiting_for_login"&&G&&j.url&&!T)XX(j.url).then((x)=>{if(x)process.stdout.write(x);v(!0),setTimeout(v,2000,!1)}),M("")},[J,j,G,T]);async function E(x,I){try{let[B,p]=x.split("#");if(!B||!p){H({state:"error",message:"Invalid code. Please make sure the full code was copied",toRetry:{state:"waiting_for_login",url:I}});return}d("tengu_oauth_manual_entry",{}),W.handleManualAuthCodeInput({authorizationCode:B,state:p})}catch(B){H6(B),H({state:"error",message:B.message,toRetry:{state:"waiting_for_login",url:I}})}}let S=Wq.useCallback(async()=>{try{d("tengu_oauth_flow_start",{loginWithClaudeAi:D});let x=await W.startOAuthFlow(async(I)=>{H({state:"waiting_for_login",url:I}),setTimeout(Z,3000,!0)},{loginWithClaudeAi:D,inferenceOnly:_==="setup-token",expiresIn:_==="setup-token"?31536000:void 0,orgUUID:A}).catch((I)=>{let B=I.message.includes("Token exchange failed"),p=a76(I);throw H({state:"error",message:p??(B?"Failed to exchange authorization code for access token. Please try again.":I.message),toRetry:_==="setup-token"?{state:"ready_to_start"}:{state:"idle"}}),d("tengu_oauth_token_exchange_error",{error:I.message,ssl_error:p!==null}),I});if(_==="setup-token")H({state:"success",token:x.accessToken});else{await u26(x);let I=await qi();if(!I.valid)throw Error(I.message);H({state:"success"}),ZQ({message:"ppcode login successful",notificationType:"auth_success"},w)}}catch(x){let I=x.message,B=a76(x);H({state:"error",message:B??I,toRetry:{state:_==="setup-token"?"ready_to_start":"idle"}}),d("tengu_oauth_error",{error:I,ssl_error:B!==null})}},[W,Z,D,_,A]),R=Wq.useRef(!1);return Wq.useEffect(()=>{if(j.state==="ready_to_start"&&!R.current)R.current=!0,process.nextTick((x,I)=>{x(),I.current=!1},S,R)},[j.state,S]),Wq.useEffect(()=>{if(_==="setup-token"&&j.state==="success"){let x=setTimeout((I,B)=>{d("tengu_oauth_success",{loginWithClaudeAi:I}),B()},500,D,q);return()=>clearTimeout(x)}},[_,j,D,q]),Wq.useEffect(()=>{return()=>{W.cleanup()}},[W]),Wq.default.createElement(u,{flexDirection:"column",gap:1},j.state==="waiting_for_login"&&G&&Wq.default.createElement(u,{flexDirection:"column",key:"urlToCopy",gap:1,paddingBottom:1},Wq.default.createElement(u,{paddingX:1},Wq.default.createElement(k,{dimColor:!0},"Browser didn't open? Use the url below to sign in"," "),T?Wq.default.createElement(k,{color:"success"},"(Copied!)"):Wq.default.createElement(k,{dimColor:!0},Wq.default.createElement(t8,{shortcut:"c",action:"copy",parens:!0}))),Wq.default.createElement(hq,{url:j.url},Wq.default.createElement(k,{dimColor:!0},j.url))),_==="setup-token"&&j.state==="success"&&j.token&&Wq.default.createElement(u,{key:"tokenOutput",flexDirection:"column",gap:1,paddingTop:1},Wq.default.createElement(k,{color:"success"},"✓ Long-lived authentication token created successfully!"),Wq.default.createElement(u,{flexDirection:"column",gap:1},Wq.default.createElement(k,null,"Your OAuth token (valid for 1 year):"),Wq.default.createElement(k,{color:"warning"},j.token),Wq.default.createElement(k,{dimColor:!0},"Store this token securely. You won't be able to see it again."),Wq.default.createElement(k,{dimColor:!0},"Use this token by setting: export CLAUDE_CODE_OAUTH_TOKEN=<token>"))),Wq.default.createElement(u,{paddingLeft:1,flexDirection:"column",gap:1},Wq.default.createElement(Ugz,{oauthStatus:j,mode:_,startingMessage:K,forcedMethodMessage:O,showPastePrompt:G,pastedCode:J,setPastedCode:M,cursorOffset:X,setCursorOffset:P,textInputColumns:V,handleSubmitCode:E,setOAuthStatus:H,setLoginWithClaudeAi:f})))}function Ugz(q){let K=z6(51),{oauthStatus:_,mode:z,startingMessage:Y,forcedMethodMessage:$,showPastePrompt:A,pastedCode:O,setPastedCode:w,cursorOffset:j,setCursorOffset:H,textInputColumns:J,handleSubmitCode:M,setOAuthStatus:X,setLoginWithClaudeAi:P}=q;switch(_.state){case"idle":{let W=Y?Y:"Visit https://www.ppcode.dev to get your API Key.",D;if(K[0]!==W)D=Wq.default.createElement(k,{bold:!0},W),K[0]=W,K[1]=D;else D=K[1];let f;if(K[2]===Symbol.for("react.memo_cache_sentinel"))f=Wq.default.createElement(k,null,"Enter your API Key from ppcode.dev:"),K[2]=f;else f=K[2];let G;if(K[3]===Symbol.for("react.memo_cache_sentinel"))G={label:Wq.default.createElement(k,null,"Enter API Key · "," ",Wq.default.createElement(k,{dimColor:!0},"from https://www.ppcode.dev"),!1,`
2229
2211
  `),value:"claudeai"},K[3]=G;else G=K[3];let Z;if(K[4]===Symbol.for("react.memo_cache_sentinel"))Z={label:Wq.default.createElement(k,null,"Enter API Key · "," ",Wq.default.createElement(k,{dimColor:!0},"from https://www.ppcode.dev"),`
2230
- `),value:"console"},K[4]=Z;else Z=K[4];let T;if(K[5]===Symbol.for("react.memo_cache_sentinel"))T=[G],K[5]=T;else T=K[5];let v;if(K[6]!==P||K[7]!==X)v=Wq.default.createElement(u,null,Wq.default.createElement(H1,{options:T,onChange:(E)=>{X({state:"waiting_for_login",url:null})}})),K[6]=P,K[7]=X,K[8]=v;else v=K[8];let V;if(K[9]!==D||K[10]!==v)V=Wq.default.createElement(u,{flexDirection:"column",gap:1,marginTop:1},D,f,v),K[9]=D,K[10]=v,K[11]=V;else V=K[11];return V}case"platform_setup":{let W;if(K[12]===Symbol.for("react.memo_cache_sentinel"))W=Wq.default.createElement(k,{bold:!0},"Using 3rd-party platforms"),K[12]=W;else W=K[12];let D,f;if(K[13]===Symbol.for("react.memo_cache_sentinel"))D=Wq.default.createElement(k,null,"ppcode supports Amazon Bedrock, Microsoft Foundry, and Vertex AI. Set the required environment variables, then restart ppcode."),f=Wq.default.createElement(k,null,"If you are part of an enterprise organization, contact your administrator for setup instructions."),K[13]=D,K[14]=f;else D=K[13],f=K[14];let G;if(K[15]===Symbol.for("react.memo_cache_sentinel"))G=Wq.default.createElement(k,{bold:!0},"Documentation:"),K[15]=G;else G=K[15];let Z;if(K[16]===Symbol.for("react.memo_cache_sentinel"))Z=Wq.default.createElement(k,null,"· Amazon Bedrock:"," ",Wq.default.createElement(hq,{url:"https://code.claude.com/docs/en/amazon-bedrock"},"https://code.claude.com/docs/en/amazon-bedrock")),K[16]=Z;else Z=K[16];let T;if(K[17]===Symbol.for("react.memo_cache_sentinel"))T=Wq.default.createElement(k,null,"· Microsoft Foundry:"," ",Wq.default.createElement(hq,{url:"https://code.claude.com/docs/en/microsoft-foundry"},"https://code.claude.com/docs/en/microsoft-foundry")),K[17]=T;else T=K[17];let v;if(K[18]===Symbol.for("react.memo_cache_sentinel"))v=Wq.default.createElement(u,{flexDirection:"column",marginTop:1},G,Z,T,Wq.default.createElement(k,null,"· Vertex AI:"," ",Wq.default.createElement(hq,{url:"https://code.claude.com/docs/en/google-vertex-ai"},"https://code.claude.com/docs/en/google-vertex-ai"))),K[18]=v;else v=K[18];let V;if(K[19]===Symbol.for("react.memo_cache_sentinel"))V=Wq.default.createElement(u,{flexDirection:"column",gap:1,marginTop:1},W,Wq.default.createElement(u,{flexDirection:"column",gap:1},D,f,v,Wq.default.createElement(u,{marginTop:1},Wq.default.createElement(k,{dimColor:!0},"Press ",Wq.default.createElement(k,{bold:!0},"Enter")," to go back to login options.")))),K[19]=V;else V=K[19];return V}case"waiting_for_login":{let W;if(K[20]!==$)W=$&&Wq.default.createElement(u,null,Wq.default.createElement(k,{dimColor:!0},$)),K[20]=$,K[21]=W;else W=K[21];let D;if(K[22]!==A)D=!A&&Wq.default.createElement(u,null,Wq.default.createElement(IK,null),Wq.default.createElement(k,null,"Enter your API Key from https://www.ppcode.dev:")),K[22]=A,K[23]=D;else D=K[23];let f;if(K[24]!==j||K[25]!==M||K[26]!==_.url||K[27]!==O||K[28]!==H||K[29]!==w||K[30]!==A||K[31]!==J)f=A&&Wq.default.createElement(u,null,Wq.default.createElement(k,null,VqK),Wq.default.createElement(r3,{value:O,onChange:w,onSubmit:async(Z)=>{if(!Z||Z.trim().length<10){X({state:"error",error:"Invalid API key. Get one at https://www.ppcode.dev"});return}const key=Z.trim();process.env.ANTHROPIC_API_KEY=key;try{const fs=await import("fs");const path=await import("path");const os=await import("os");const cf=path.join(os.homedir(),".claude.json");let d={};try{d=JSON.parse(fs.readFileSync(cf,"utf-8"))}catch{}d.ppcode_apikey=key;const hash=key.slice(-20);if(!d.customApiKeyResponses)d.customApiKeyResponses={approved:[],rejected:[]};if(!d.customApiKeyResponses.approved)d.customApiKeyResponses.approved=[];if(!d.customApiKeyResponses.approved.includes(hash))d.customApiKeyResponses.approved.push(hash);fs.writeFileSync(cf,JSON.stringify(d,null,2))}catch(e){}X({state:"success"})},cursorOffset:j,onChangeCursorOffset:H,columns:J,mask:"*"})),K[24]=j,K[25]=M,K[26]=_.url,K[27]=O,K[28]=H,K[29]=w,K[30]=A,K[31]=J,K[32]=f;else f=K[32];let G;if(K[33]!==W||K[34]!==D||K[35]!==f)G=Wq.default.createElement(u,{flexDirection:"column",gap:1},W,D,f),K[33]=W,K[34]=D,K[35]=f,K[36]=G;else G=K[36];return G}case"creating_api_key":{let W;if(K[37]===Symbol.for("react.memo_cache_sentinel"))W=Wq.default.createElement(u,{flexDirection:"column",gap:1},Wq.default.createElement(u,null,Wq.default.createElement(IK,null),Wq.default.createElement(k,null,"Enter your API key from https://www.ppcode.dev…"))),K[37]=W;else W=K[37];return W}case"about_to_retry":{let W;if(K[38]===Symbol.for("react.memo_cache_sentinel"))W=Wq.default.createElement(u,{flexDirection:"column",gap:1},Wq.default.createElement(k,{color:"permission"},"Retrying…")),K[38]=W;else W=K[38];return W}case"success":{let W;if(K[39]!==z||K[40]!==_.token)W=z==="setup-token"&&_.token?null:Wq.default.createElement(Wq.default.Fragment,null,B_()?.emailAddress?Wq.default.createElement(k,{dimColor:!0},"Logged in as"," ",Wq.default.createElement(k,null,B_()?.emailAddress)):null,Wq.default.createElement(k,{color:"success"},"Login successful. Press ",Wq.default.createElement(k,{bold:!0},"Enter")," to continue…")),K[39]=z,K[40]=_.token,K[41]=W;else W=K[41];let D;if(K[42]!==W)D=Wq.default.createElement(u,{flexDirection:"column"},W),K[42]=W,K[43]=D;else D=K[43];return D}case"error":{let W;if(K[44]!==_.message)W=Wq.default.createElement(k,{color:"error"},"OAuth error: ",_.message),K[44]=_.message,K[45]=W;else W=K[45];let D;if(K[46]!==_.toRetry)D=_.toRetry&&Wq.default.createElement(u,{marginTop:1},Wq.default.createElement(k,{color:"permission"},"Press ",Wq.default.createElement(k,{bold:!0},"Enter")," to retry.")),K[46]=_.toRetry,K[47]=D;else D=K[47];let f;if(K[48]!==W||K[49]!==D)f=Wq.default.createElement(u,{flexDirection:"column",gap:1},W,D),K[48]=W,K[49]=D,K[50]=f;else f=K[50];return f}default:return null}}var Wq,VqK="Paste your API Key:";var Ie6=y(()=>{q8();k8();iy6();t4();YM();GF();s6();Oq();Pr();tt6();Et6();G7();E8();U1();p3();rK();Q2();CH();Wq=O6(D6(),1)});function hD(){let q=P8((Y)=>Y.mainLoopModel),K=P8((Y)=>Y.mainLoopModelForSession),[,_]=Jb8.useReducer((Y)=>Y+1,0);return Jb8.useEffect(()=>Nc6(_),[]),A5(K??q??KG())}var Jb8;var yQ=y(()=>{o1();C7();aq();Jb8=O6(D6(),1)});async function me6(q,K){if(ti1)return;if(ti1=!0,!q.isBypassPermissionsModeAvailable)return;if(!await Mb8())return;K((z)=>{return{...z,toolPermissionContext:zj6(z.toolPermissionContext)}})}function yqK(){ti1=!1}function EqK(){let q=P8((_)=>_.toolPermissionContext),K=s7();ue6.useEffect(()=>{if(z5())return;me6(q,K)},[])}async function pe6(q,K,_){{if(ei1)return;ei1=!0;let{updateContext:z,notification:Y}=await Be6(q,_);K(($)=>{let A=z($.toolPermissionContext),O=A===$.toolPermissionContext?$:{...$,toolPermissionContext:A};if(!Y)return O;return{...O,notifications:{...O.notifications,queue:[...O.notifications.queue,{key:"auto-mode-gate-notification",text:Y,color:"warning",priority:"high"}]}}})}}function qr1(){ei1=!1}function LqK(){let q=P8((A)=>A.mainLoopModel),K=P8((A)=>A.mainLoopModelForSession),_=P8((A)=>A.fastMode),z=s7(),Y=jz(),$=ue6.useRef(!0);ue6.useEffect(()=>{if(z5())return;if($.current)$.current=!1;else qr1();pe6(Y.getState().toolPermissionContext,z,_)},[q,K,_])}var ue6,ti1=!1,ei1=!1;var Kr1=y(()=>{C7();v8();fX();ue6=O6(D6(),1)});var RqK={};T8(RqK,{call:()=>Qgz,Login:()=>uE6});async function Qgz(q,K){return Fm.createElement(uE6,{onDone:async(_)=>{if(K.onChangeAPIKey(),K.setMessages(hqK),_){SX6(),oL8(),zs6(),hG6(),U$6(),RF1(),hF1(),yqK();let z=K.getAppState();me6(z.toolPermissionContext,K.setAppState),qr1(),pe6(z.toolPermissionContext,K.setAppState,z.fastMode),K.setAppState((Y)=>({...Y,authVersion:Y.authVersion+1}))}q(_?"Login successful":"Login interrupted")}})}function uE6(q){let K=z6(12),_=hD(),z;if(K[0]!==_||K[1]!==q)z=()=>q.onDone(!1,_),K[0]=_,K[1]=q,K[2]=z;else z=K[2];let Y;if(K[3]!==_||K[4]!==q)Y=()=>q.onDone(!0,_),K[3]=_,K[4]=q,K[5]=Y;else Y=K[5];let $;if(K[6]!==q.startingMessage||K[7]!==Y)$=Fm.createElement(_j6,{onDone:Y,startingMessage:q.startingMessage}),K[6]=q.startingMessage,K[7]=Y,K[8]=$;else $=K[8];let A;if(K[9]!==z||K[10]!==$)A=Fm.createElement(R1,{title:"Login",onCancel:z,color:"permission",inputGuide:dgz},$),K[9]=z,K[10]=$,K[11]=A;else A=K[11];return A}function dgz(q){return q.pending?Fm.createElement(k,null,"Press ",q.keyName," again to exit"):Fm.createElement(W1,{action:"confirm:no",context:"Confirmation",fallback:"Esc",description:"cancel"})}var Fm;var Xb8=y(()=>{q8();v8();rw6();a5();Ie6();e4();yQ();s6();o1();ZD();aN6();i1();Kr1();f$6();Fm=O6(D6(),1)});var ge6={};T8(ge6,{updateSessionTitle:()=>$r1,sendEventToRemoteSession:()=>Yr1,prepareApiRequest:()=>pH,isTransientNetworkError:()=>Pb8,getOAuthHeaders:()=>UY,getBranchFromSession:()=>Wb8,fetchSession:()=>s46,fetchCodeSessionsFromSessionsAPI:()=>zr1,axiosGetWithRetry:()=>CqK,CodeSessionSchema:()=>ngz,CCR_BYOC_BETA:()=>lgz});import{randomUUID as cgz}from"crypto";function Pb8(q){if(!$1.isAxiosError(q))return!1;if(!q.response)return!0;if(q.response.status>=500)return!0;return!1}async function CqK(q,K){let _;for(let z=0;z<=_r1;z++)try{return await $1.get(q,K)}catch(Y){if(_=Y,!Pb8(Y))throw Y;if(z>=_r1)throw N(`Teleport request failed after ${z+1} attempts: ${d6(Y)}`),Y;let $=SqK[z]??2000;N(`Teleport request failed (attempt ${z+1}/${_r1+1}), retrying in ${$}ms: ${d6(Y)}`),await R7($)}throw _}async function pH(){let q=Kq()?.accessToken;if(q===void 0)throw Error("ppcode web sessions require authentication with a Claude.ai account. API key authentication is not sufficient. Please run /login to authenticate, or check your authentication status with /status.");let K=await mW();if(!K)throw Error("Unable to get organization UUID");return{accessToken:q,orgUUID:K}}async function zr1(){let{accessToken:q,orgUUID:K}=await pH(),_=`${u7().BASE_API_URL}/v1/sessions`;try{let z={...UY(q),"anthropic-beta":"ccr-byoc-2025-07-29","x-organization-uuid":K},Y=await CqK(_,{headers:z});if(Y.status!==200)throw Error(`Failed to fetch code sessions: ${Y.statusText}`);return Y.data.data.map((A)=>{let O=A.session_context.sources.find((j)=>j.type==="git_repository"),w=null;if(O?.url){let j=W_6(O.url);if(j){let[H,J]=j.split("/");if(H&&J)w={name:J,owner:{login:H},default_branch:O.revision||void 0}}}return{id:A.id,title:A.title||"Untitled",description:"",status:A.session_status,repo:w,turns:[],created_at:A.created_at,updated_at:A.updated_at}})}catch(z){let Y=x1(z);throw H6(Y),z}}function UY(q){return{Authorization:`Bearer ${q}`,"Content-Type":"application/json","anthropic-version":"2023-06-01"}}async function s46(q){let{accessToken:K,orgUUID:_}=await pH(),z=`${u7().BASE_API_URL}/v1/sessions/${q}`,Y={...UY(K),"anthropic-beta":"ccr-byoc-2025-07-29","x-organization-uuid":_},$=await $1.get(z,{headers:Y,timeout:15000,validateStatus:(A)=>A<500});if($.status!==200){let O=$.data?.error?.message;if($.status===404)throw Error(`Session not found: ${q}`);if($.status===401)throw Error("Session expired. Please run /login to sign in again.");throw Error(O||`Failed to fetch session: ${$.status} ${$.statusText}`)}return $.data}function Wb8(q){return q.session_context.outcomes?.find((_)=>_.type==="git_repository")?.git_info?.branches[0]}async function Yr1(q,K,_){try{let{accessToken:z,orgUUID:Y}=await pH(),$=`${u7().BASE_API_URL}/v1/sessions/${q}/events`,A={...UY(z),"anthropic-beta":"ccr-byoc-2025-07-29","x-organization-uuid":Y},w={events:[{uuid:_?.uuid??cgz(),session_id:q,type:"user",parent_tool_use_id:null,message:{role:"user",content:K}}]};N(`[sendEventToRemoteSession] Sending event to session ${q}`);let j=await $1.post($,w,{headers:A,validateStatus:(H)=>H<500,timeout:30000});if(j.status===200||j.status===201)return N(`[sendEventToRemoteSession] Successfully sent event to session ${q}`),!0;return N(`[sendEventToRemoteSession] Failed with status ${j.status}: ${g6(j.data)}`),!1}catch(z){return N(`[sendEventToRemoteSession] Error: ${d6(z)}`),!1}}async function $r1(q,K){try{let{accessToken:_,orgUUID:z}=await pH(),Y=`${u7().BASE_API_URL}/v1/sessions/${q}`,$={...UY(_),"anthropic-beta":"ccr-byoc-2025-07-29","x-organization-uuid":z};N(`[updateSessionTitle] Updating title for session ${q}: "${K}"`);let A=await $1.patch(Y,{title:K},{headers:$,validateStatus:(O)=>O<500});if(A.status===200)return N(`[updateSessionTitle] Successfully updated title for session ${q}`),!0;return N(`[updateSessionTitle] Failed with status ${A.status}: ${g6(A.data)}`),!1}catch(_){return N(`[updateSessionTitle] Error: ${d6(_)}`),!1}}var SqK,_r1,lgz="ccr-byoc-2025-07-29",ngz;var VM=y(()=>{CK();H3();pW();x7();G7();_8();mZ();y8();E8();l8();SqK=[2000,4000,8000,16000],_r1=SqK.length;ngz=B6(()=>KK.object({id:KK.string(),title:KK.string(),description:KK.string(),status:KK.enum(["idle","working","waiting","completed","archived","cancelled","rejected"]),repo:KK.object({name:KK.string(),owner:KK.object({login:KK.string()}),default_branch:KK.string().optional()}).nullable(),turns:KK.array(KK.string()),created_at:KK.string(),updated_at:KK.string()}))});async function bqK(q){let{accessToken:K,orgUUID:_}=await pH(),z={...UY(K),"x-organization-uuid":_},Y=`${u7().BASE_API_URL}/api/oauth/organizations/${_}/admin_requests`;return(await $1.post(Y,q,{headers:z})).data}async function xqK(q,K){let{accessToken:_,orgUUID:z}=await pH(),Y={...UY(_),"x-organization-uuid":z},$=`${u7().BASE_API_URL}/api/oauth/organizations/${z}/admin_requests/me?request_type=${q}`;for(let O of K)$+=`&statuses=${O}`;return(await $1.get($,{headers:Y})).data}async function IqK(q){let{accessToken:K,orgUUID:_}=await pH(),z={...UY(K),"x-organization-uuid":_},Y=`${u7().BASE_API_URL}/api/oauth/organizations/${_}/admin_requests/eligibility?request_type=${q}`;return(await $1.get(Y,{headers:z})).data}var uqK=y(()=>{CK();H3();VM()});async function igz(){try{let{accessToken:q,orgUUID:K}=await pH(),_=`${u7().BASE_API_URL}/api/oauth/organizations/${K}/overage_credit_grant`;return(await $1.get(_,{headers:UY(q)})).data}catch(q){return H6(q),null}}function Yj6(){let q=B_()?.organizationUuid;if(!q)return null;let K=j8().overageCreditGrantCache?.[q];if(!K)return null;if(Date.now()-K.timestamp>mqK)return null;return K.info}function pqK(){let q=B_()?.organizationUuid;if(!q)return;let K=j8().overageCreditGrantCache;if(!K||!(q in K))return;b8((_)=>{let z={..._.overageCreditGrantCache};return delete z[q],{..._,overageCreditGrantCache:z}})}async function BqK(){if(iA())return;let q=B_()?.organizationUuid;if(!q)return;let K=await igz();if(!K)return;b8((_)=>{let z=_.overageCreditGrantCache?.[q],Y=z?.info,$=Y&&Y.available===K.available&&Y.eligible===K.eligible&&Y.granted===K.granted&&Y.amount_minor_units===K.amount_minor_units&&Y.currency===K.currency;if($&&z&&Date.now()-z.timestamp<=mqK)return _;let A={info:$?Y:K,timestamp:Date.now()};return{..._,overageCreditGrantCache:{..._.overageCreditGrantCache,[q]:A}}})}function mE6(q){if(q.amount_minor_units==null||!q.currency)return null;if(q.currency.toUpperCase()==="USD"){let K=q.amount_minor_units/100;return Number.isInteger(K)?`$${K}`:`$${K.toFixed(2)}`}return null}var mqK=3600000;var Db8=y(()=>{CK();H3();G7();V1();E8();VM()});async function pE6(){if(!d7()||!BW())return{};let q=Kq();if(q&&Gg(q.expiresAt))return null;let K=DJ();if(K.error)throw Error(`Auth error: ${K.error}`);let _={"Content-Type":"application/json","User-Agent":n$(),...K.headers},z=`${u7().BASE_API_URL}/api/oauth/usage`;return(await $1.get(z,{headers:_,timeout:5000})).data}var fb8=y(()=>{CK();H3();G7();jG();pW()});async function Zb8(){if(!j8().hasVisitedExtraUsage)b8((Y)=>({...Y,hasVisitedExtraUsage:!0}));pqK();let q=yK(),K=q==="team"||q==="enterprise";if(!fg()&&K){let Y;try{Y=(await pE6())?.extra_usage}catch($){H6($)}if(Y?.is_enabled&&Y.monthly_limit===null)return{type:"message",value:"Your organization already has unlimited extra usage. No request needed."};try{if((await IqK("limit_increase"))?.is_allowed===!1)return{type:"message",value:"Please contact your admin to manage extra usage settings."}}catch($){H6($)}try{let $=await xqK("limit_increase",["pending","dismissed"]);if($&&$.length>0)return{type:"message",value:"You have already submitted a request for extra usage to your admin."}}catch($){H6($)}try{return await bqK({request_type:"limit_increase",details:null}),{type:"message",value:Y?.is_enabled?"Request sent to your admin to increase extra usage.":"Request sent to your admin to enable extra usage."}}catch($){H6($)}return{type:"message",value:"Please contact your admin to manage extra usage settings."}}let z=K?"https://claude.ai/admin-settings/usage":"https://claude.ai/settings/usage";try{let Y=await m3(z);return{type:"browser-opened",url:z,opened:Y}}catch(Y){return H6(Y),{type:"message",value:`Failed to open browser. Please visit ${z} to manage extra usage.`}}}var Ar1=y(()=>{uqK();Db8();fb8();G7();$n();hH();V1();E8()});var FqK={};T8(FqK,{call:()=>Or1});async function Or1(q,K){let _=await Zb8();if(_.type==="message")return q(_.value),null;return gqK.default.createElement(uE6,{startingMessage:"Starting new login following /extra-usage. Exit with Ctrl-C to use existing account.",onDone:(z)=>{K.onChangeAPIKey(),q(z?"Login successful":"Login interrupted")}})}var gqK;var wr1=y(()=>{Xb8();Ar1();gqK=O6(D6(),1)});var UqK={};T8(UqK,{call:()=>rgz});async function rgz(){let q=await Zb8();if(q.type==="message")return{type:"text",value:q.value};return{type:"text",value:q.opened?`Browser opened to manage extra usage. If it didn't open, visit: ${q.url}`:`Please visit ${q.url} to manage extra usage.`}}var QqK=y(()=>{Ar1()});function dqK(){if(i6(process.env.DISABLE_EXTRA_USAGE_COMMAND))return!1;return EG6()}var t46,cqK;var Fe6=y(()=>{v8();G7();m8();t46={type:"local-jsx",name:"extra-usage",description:"Configure extra usage to keep working when limits are hit",isEnabled:()=>dqK()&&!i7(),load:()=>Promise.resolve().then(() => (wr1(),FqK))},cqK={type:"local",name:"extra-usage",supportsNonInteractive:!0,description:"Configure extra usage to keep working when limits are hit",isEnabled:()=>dqK()&&i7(),get isHidden(){return!i7()},load:()=>Promise.resolve().then(() => (QqK(),UqK))}});function e46(){let[q,K]=Gb8.useState({...WN});return Gb8.useEffect(()=>{let _=(z)=>{K({...z})};return Xq6.add(_),()=>{Xq6.delete(_)}},[]),q}var Gb8;var Ue6=y(()=>{ZU();Gb8=O6(D6(),1)});function ogz({shouldShowUpsell:q,isMax20x:K,isExtraUsageCommandEnabled:_,shouldAutoOpenRateLimitOptionsMenu:z,isTeamOrEnterprise:Y,hasBillingAccess:$}){if(!q)return null;if(K){if(_)return"/extra-usage to finish what you’re working on.";return"/login to switch to an API usage-billed account."}if(z)return"Opening your options…";if(!Y&&!_)return"/upgrade to increase your usage limit.";if(Y){if(!_)return null;if($)return"/extra-usage to finish what you’re working on.";return"/extra-usage to request more usage from your admin."}return"/upgrade or /extra-usage to finish what you’re working on."}function lqK(q){let K=z6(16),{text:_,onOpenRateLimitOptions:z}=q,Y;if(K[0]===Symbol.for("react.memo_cache_sentinel"))Y=yK(),K[0]=Y;else Y=K[0];let $=Y,A;if(K[1]===Symbol.for("react.memo_cache_sentinel"))A=qF(),K[1]=A;else A=K[1];let O=A,w=$==="team"||$==="enterprise",j=O==="default_claude_max_20x",H;if(K[2]===Symbol.for("react.memo_cache_sentinel"))H=T06()||d7(),K[2]=H;else H=K[2];let J=H,M=J&&!j,[X,P]=ao.useState(!1),W=e46(),D=W.status==="rejected"&&W.resetsAt!==void 0&&!W.isUsingOverage,f=M&&!X&&D&&z,G,Z;if(K[3]!==z||K[4]!==f)G=()=>{if(f)P(!0),z()},Z=[f,z],K[3]=z,K[4]=f,K[5]=G,K[6]=Z;else G=K[5],Z=K[6];ao.useEffect(G,Z);let T;q:{let R;if(K[7]!==f)R=ogz({shouldShowUpsell:J,isMax20x:j,isExtraUsageCommandEnabled:t46.isEnabled(),shouldAutoOpenRateLimitOptionsMenu:!!f,isTeamOrEnterprise:w,hasBillingAccess:fg()}),K[7]=f,K[8]=R;else R=K[8];let x=R;if(!x){T=null;break q}let I;if(K[9]!==x)I=ao.default.createElement(k,{dimColor:!0},x),K[9]=x,K[10]=I;else I=K[10];T=I}let v=T,V;if(K[11]!==_)V=ao.default.createElement(k,{color:"error"},_),K[11]=_,K[12]=V;else V=K[12];let E=X?null:v,S;if(K[13]!==V||K[14]!==E)S=ao.default.createElement(s8,null,ao.default.createElement(u,{flexDirection:"column"},V,E)),K[13]=V,K[14]=E,K[15]=S;else S=K[15];return S}var ao;var nqK=y(()=>{q8();Fe6();s6();Ue6();vr6();G7();$n();gK();ao=O6(D6(),1)});function agz(){let q=z6(2),K;if(q[0]===Symbol.for("react.memo_cache_sentinel"))K=SCq(),q[0]=K;else K=q[0];let _=K,z;if(q[1]===Symbol.for("react.memo_cache_sentinel"))z=l_.default.createElement(s8,null,l_.default.createElement(u,{flexDirection:"column"},l_.default.createElement(k,{color:"error"},Nb8),_&&l_.default.createElement(k,{dimColor:!0},"· Run in another terminal: security unlock-keychain"))),q[1]=z;else z=q[1];return z}function rqK(q){let K=z6(34),{param:_,addMargin:z,shouldShowDot:Y,verbose:$,onOpenRateLimitOptions:A}=q,{text:O}=_,w=l_.useContext(Qr);if(qN6(O))return null;if(ZN4(O)){let j;if(K[0]!==A||K[1]!==O)j=l_.default.createElement(lqK,{text:O,onOpenRateLimitOptions:A}),K[0]=A,K[1]=O,K[2]=j;else j=K[2];return j}switch(O){case $j6:return null;case Um:{let j;if(K[3]===Symbol.for("react.memo_cache_sentinel"))j=dN6("warning"),K[3]=j;else j=K[3];let H=j,J;if(K[4]===Symbol.for("react.memo_cache_sentinel"))J=l_.default.createElement(s8,{height:1},l_.default.createElement(k,{color:"error"},"Context limit reached · /compact or /clear to continue",H?` · ${H}`:"")),K[4]=J;else J=K[4];return J}case Vb8:{let j;if(K[5]===Symbol.for("react.memo_cache_sentinel"))j=l_.default.createElement(s8,{height:1},l_.default.createElement(k,{color:"error"},"Credit balance too low · Add funds: https://platform.claude.com/settings/billing")),K[5]=j;else j=K[5];return j}case Nb8:{let j;if(K[6]===Symbol.for("react.memo_cache_sentinel"))j=l_.default.createElement(agz,null),K[6]=j;else j=K[6];return j}case Tb8:{let j;if(K[7]===Symbol.for("react.memo_cache_sentinel"))j=l_.default.createElement(s8,{height:1},l_.default.createElement(k,{color:"error"},Tb8)),K[7]=j;else j=K[7];return j}case Hr1:case jr1:{let j;if(K[8]!==O)j=l_.default.createElement(s8,null,l_.default.createElement(k,{color:"error"},O)),K[8]=O,K[9]=j;else j=K[9];return j}case vb8:{let j;if(K[10]===Symbol.for("react.memo_cache_sentinel"))j=l_.default.createElement(s8,{height:1},l_.default.createElement(k,{color:"error"},vb8)),K[10]=j;else j=K[10];return j}case kb8:{let j;if(K[11]===Symbol.for("react.memo_cache_sentinel"))j=l_.default.createElement(s8,{height:1},l_.default.createElement(k,{color:"error"},kb8,process.env.API_TIMEOUT_MS&&l_.default.createElement(l_.default.Fragment,null," ","(API_TIMEOUT_MS=",process.env.API_TIMEOUT_MS,"ms, try increasing it)"))),K[11]=j;else j=K[11];return j}case Aj6:{let j;if(K[12]===Symbol.for("react.memo_cache_sentinel"))j=l_.default.createElement(k,{color:"error"},"We are experiencing high demand for Opus 4."),K[12]=j;else j=K[12];let H;if(K[13]===Symbol.for("react.memo_cache_sentinel"))H=l_.default.createElement(s8,null,l_.default.createElement(u,{flexDirection:"column",gap:1},j,l_.default.createElement(k,null,"To continue immediately, use /model to switch to"," ",WH(Av())," and continue coding."))),K[13]=H;else H=K[13];return H}case co:{let j;if(K[14]===Symbol.for("react.memo_cache_sentinel"))j=l_.default.createElement(s8,{height:1},l_.default.createElement(gU,null)),K[14]=j;else j=K[14];return j}default:{if(so(O)){let W=!$&&O.length>iqK,D=O===dP?`${dP}: Please wait a moment and try again.`:W?O.slice(0,iqK)+"…":O,f;if(K[15]!==D)f=l_.default.createElement(k,{color:"error"},D),K[15]=D,K[16]=f;else f=K[16];let G;if(K[17]!==W)G=W&&l_.default.createElement(K2,null),K[17]=W,K[18]=G;else G=K[18];let Z;if(K[19]!==f||K[20]!==G)Z=l_.default.createElement(s8,null,l_.default.createElement(u,{flexDirection:"column"},f,G)),K[19]=f,K[20]=G,K[21]=Z;else Z=K[21];return Z}let j=z?1:0,H=w?"messageActionsBackground":void 0,J;if(K[22]!==w||K[23]!==Y)J=Y&&l_.default.createElement(LP,{fromLeftEdge:!0,minWidth:2},l_.default.createElement(k,{color:w?"suggestion":"text"},A_)),K[22]=w,K[23]=Y,K[24]=J;else J=K[24];let M;if(K[25]!==O)M=l_.default.createElement(u,{flexDirection:"column"},l_.default.createElement(AO,null,O)),K[25]=O,K[26]=M;else M=K[26];let X;if(K[27]!==J||K[28]!==M)X=l_.default.createElement(u,{flexDirection:"row"},J,M),K[27]=J,K[28]=M,K[29]=X;else X=K[29];let P;if(K[30]!==j||K[31]!==H||K[32]!==X)P=l_.default.createElement(u,{alignItems:"flex-start",flexDirection:"row",justifyContent:"space-between",marginTop:j,width:"100%",backgroundColor:H},X),K[30]=j,K[31]=H,K[32]=X,K[33]=P;else P=K[33];return P}}}var l_,iqK=1000;var oqK=y(()=>{q8();no();xm1();zz();s6();SC();i1();pL8();aq();Zv1();rv();FN6();xN();gK();NN();nqK();l_=O6(D6(),1)});function yb8(q){let K=z6(9),{param:_,addMargin:z,isTranscriptMode:Y,verbose:$,hideInTranscript:A}=q,{thinking:O}=_,w=z===void 0?!1:z,j=A===void 0?!1:A;if(!O)return null;if(j)return null;if(!(Y||$)){let W=w?1:0,D;if(K[0]===Symbol.for("react.memo_cache_sentinel"))D=qK6.default.createElement(k,{dimColor:!0,italic:!0},"∴ Thinking"," ",qK6.default.createElement(K2,null)),K[0]=D;else D=K[0];let f;if(K[1]!==W)f=qK6.default.createElement(u,{marginTop:W},D),K[1]=W,K[2]=f;else f=K[2];return f}let J=w?1:0,M;if(K[3]===Symbol.for("react.memo_cache_sentinel"))M=qK6.default.createElement(k,{dimColor:!0,italic:!0},"∴ Thinking","…"),K[3]=M;else M=K[3];let X;if(K[4]!==O)X=qK6.default.createElement(u,{paddingLeft:2},qK6.default.createElement(AO,{dimColor:!0},O)),K[4]=O,K[5]=X;else X=K[5];let P;if(K[6]!==J||K[7]!==X)P=qK6.default.createElement(u,{flexDirection:"column",gap:1,marginTop:J,width:"100%"},M,X),K[6]=J,K[7]=X,K[8]=P;else P=K[8];return P}var qK6;var Jr1=y(()=>{q8();s6();rv();xN();qK6=O6(D6(),1)});function aqK(q){return}function sqK(q,K){Qe6.set(q,{classifier:"auto-mode",reason:K})}function tqK(q){let K=Qe6.get(q);if(!K||K.classifier!=="auto-mode")return;return K.reason}function eqK(q){Eb8.add(q),Lb8.emit()}function KK6(q){Eb8.delete(q),Lb8.emit()}function K4K(q){return Eb8.has(q)}function _4K(q){Qe6.delete(q)}function z4K(){Qe6.clear(),Eb8.clear(),Lb8.emit()}var Qe6,Eb8,Lb8,q4K;var _K6=y(()=>{Qe6=new Map,Eb8=new Set,Lb8=Dz();q4K=Lb8.subscribe});function $4K(q){return Y4K.useSyncExternalStore(q4K,()=>K4K(q))}var Y4K;var A4K=y(()=>{_K6();Y4K=O6(D6(),1)});var O4K,Oj6;var Rb8=y(()=>{O4K=O6(D6(),1);Oj6=class Oj6 extends O4K.Component{constructor(q){super(q);this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}render(){if(this.state.hasError)return null;return this.props.children}}});function hb8(q){let K=z6(22),{hookEvent:_,lookups:z,toolUseID:Y,isTranscriptMode:$}=q,A;if(K[0]!==_||K[1]!==z.inProgressHookCounts||K[2]!==Y)A=z.inProgressHookCounts.get(Y)?.get(_)??0,K[0]=_,K[1]=z.inProgressHookCounts,K[2]=Y,K[3]=A;else A=K[3];let O=A,w=z.resolvedHookCounts.get(Y)?.get(_)??0;if(O===0)return null;if(_==="PreToolUse"||_==="PostToolUse"){if($){let P;if(K[4]!==O)P=NM.createElement(k,{dimColor:!0},O," "),K[4]=O,K[5]=P;else P=K[5];let W;if(K[6]!==_)W=NM.createElement(k,{dimColor:!0,bold:!0},_),K[6]=_,K[7]=W;else W=K[7];let D=O===1?" hook":" hooks",f;if(K[8]!==D)f=NM.createElement(k,{dimColor:!0},D," ran"),K[8]=D,K[9]=f;else f=K[9];let G;if(K[10]!==P||K[11]!==W||K[12]!==f)G=NM.createElement(s8,null,NM.createElement(u,{flexDirection:"row"},P,W,f)),K[10]=P,K[11]=W,K[12]=f,K[13]=G;else G=K[13];return G}return null}if(w===O)return null;let j;if(K[14]===Symbol.for("react.memo_cache_sentinel"))j=NM.createElement(k,{dimColor:!0},"Running "),K[14]=j;else j=K[14];let H;if(K[15]!==_)H=NM.createElement(k,{dimColor:!0,bold:!0},_),K[15]=_,K[16]=H;else H=K[16];let J=O===1?" hook…":" hooks…",M;if(K[17]!==J)M=NM.createElement(k,{dimColor:!0},J),K[17]=J,K[18]=M;else M=K[18];let X;if(K[19]!==H||K[20]!==M)X=NM.createElement(s8,null,NM.createElement(u,{flexDirection:"row"},j,H,M)),K[19]=H,K[20]=M,K[21]=X;else X=K[21];return X}var NM;var Mr1=y(()=>{q8();s6();gK();NM=O6(D6(),1)});function j4K(q){let K=z6(81),{param:_,addMargin:z,tools:Y,commands:$,verbose:A,inProgressToolUseIDs:O,progressMessagesForMessage:w,shouldAnimate:j,shouldShowDot:H,inProgressToolCallCount:J,lookups:M,isTranscriptMode:X}=q,P=t1(),[W]=Aq(),D=W0(),f=Sb8(egz),G=$4K(_.id),Z=Sb8(tgz),T=Sb8(sgz),v=Z==="auto"||Z==="plan"&&T,V=!1,E;if(K[0]!==_.input||K[1]!==_.name||K[2]!==Y){q:{if(!Y){E=null;break q}let l=L5(Y,_.name);if(!l){E=null;break q}let A6=l.inputSchema.safeParse(_.input),J6=A6.success?A6.data:void 0;E={tool:l,input:A6,userFacingToolName:l.userFacingName(J6),userFacingToolNameBackgroundColor:l.userFacingNameBackgroundColor?.(J6),isTransparentWrapper:l.isTransparentWrapper?.()??!1}}K[0]=_.input,K[1]=_.name,K[2]=Y,K[3]=E}else E=K[3];let S=E;if(!S)return H6(Error(Y?`Tool ${_.name} not found`:`Tools array is undefined for tool ${_.name}`)),null;let{tool:R,input:x,userFacingToolName:I,userFacingToolNameBackgroundColor:B,isTransparentWrapper:p}=S,C;if(K[4]!==M.resolvedToolUseIDs||K[5]!==_.id)C=M.resolvedToolUseIDs.has(_.id),K[4]=M.resolvedToolUseIDs,K[5]=_.id,K[6]=C;else C=K[6];let g=C,F;if(K[7]!==O||K[8]!==g||K[9]!==_.id)F=!O.has(_.id)&&!g,K[7]=O,K[8]=g,K[9]=_.id,K[10]=F;else F=K[10];let U=F,c=f?.toolUseId===_.id;if(p){if(U||g)return null;let l;if(K[11]!==J||K[12]!==X||K[13]!==M||K[14]!==_.id||K[15]!==w||K[16]!==P||K[17]!==R||K[18]!==Y||K[19]!==A)l=w4K(R,Y,M,_.id,w,{verbose:A,inProgressToolCallCount:J,isTranscriptMode:X},P),K[11]=J,K[12]=X,K[13]=M,K[14]=_.id,K[15]=w,K[16]=P,K[17]=R,K[18]=Y,K[19]=A,K[20]=l;else l=K[20];let A6;if(K[21]!==D||K[22]!==l)A6=SD.default.createElement(u,{flexDirection:"column",width:"100%",backgroundColor:D},l),K[21]=D,K[22]=l,K[23]=A6;else A6=K[23];return A6}if(I==="")return null;let K6;if(K[24]!==$||K[25]!==x.data||K[26]!==x.success||K[27]!==W||K[28]!==R||K[29]!==A)K6=x.success?qFz(R,x.data,{theme:W,verbose:A,commands:$}):null,K[24]=$,K[25]=x.data,K[26]=x.success,K[27]=W,K[28]=R,K[29]=A,K[30]=K6;else K6=K[30];let t=K6;if(t===null)return null;let q6=z?1:0,e=O1(I)+(H?2:0),i;if(K[31]!==U||K[32]!==g||K[33]!==M.erroredToolUseIDs||K[34]!==_.id||K[35]!==j||K[36]!==H)i=H&&(U?SD.default.createElement(u,{minWidth:2},SD.default.createElement(k,{dimColor:U},A_)):SD.default.createElement(Oo,{shouldAnimate:j,isUnresolved:!g,isError:M.erroredToolUseIDs.has(_.id)})),K[31]=U,K[32]=g,K[33]=M.erroredToolUseIDs,K[34]=_.id,K[35]=j,K[36]=H,K[37]=i;else i=K[37];let $6=B?"inverseText":void 0,M6;if(K[38]!==$6||K[39]!==I||K[40]!==B)M6=SD.default.createElement(u,{flexShrink:0},SD.default.createElement(k,{bold:!0,wrap:"truncate-end",backgroundColor:B,color:$6},I)),K[38]=$6,K[39]=I,K[40]=B,K[41]=M6;else M6=K[41];let j6;if(K[42]!==t)j6=t!==""&&SD.default.createElement(u,{flexWrap:"nowrap"},SD.default.createElement(k,null,"(",t,")")),K[42]=t,K[43]=j6;else j6=K[43];let G6;if(K[44]!==x.data||K[45]!==x.success||K[46]!==R)G6=x.success&&R.renderToolUseTag&&R.renderToolUseTag(x.data),K[44]=x.data,K[45]=x.success,K[46]=R,K[47]=G6;else G6=K[47];let w6;if(K[48]!==j6||K[49]!==G6||K[50]!==e||K[51]!==i||K[52]!==M6)w6=SD.default.createElement(u,{flexDirection:"row",flexWrap:"nowrap",minWidth:e},i,M6,j6,G6),K[48]=j6,K[49]=G6,K[50]=e,K[51]=i,K[52]=M6,K[53]=w6;else w6=K[53];let o;if(K[54]!==J||K[55]!==v||K[56]!==!1||K[57]!==U||K[58]!==g||K[59]!==X||K[60]!==c||K[61]!==M||K[62]!==_.id||K[63]!==w||K[64]!==P||K[65]!==R||K[66]!==Y||K[67]!==A)o=!g&&!U&&(c?SD.default.createElement(s8,{height:1},SD.default.createElement(k,{dimColor:!0},"Waiting for permission…")):w4K(R,Y,M,_.id,w,{verbose:A,inProgressToolCallCount:J,isTranscriptMode:X},P)),K[54]=J,K[55]=v,K[56]=!1,K[57]=U,K[58]=g,K[59]=X,K[60]=c,K[61]=M,K[62]=_.id,K[63]=w,K[64]=P,K[65]=R,K[66]=Y,K[67]=A,K[68]=o;else o=K[68];let s;if(K[69]!==U||K[70]!==g||K[71]!==R)s=!g&&U&&KFz(R),K[69]=U,K[70]=g,K[71]=R,K[72]=s;else s=K[72];let a;if(K[73]!==w6||K[74]!==o||K[75]!==s)a=SD.default.createElement(u,{flexDirection:"column"},w6,o,s),K[73]=w6,K[74]=o,K[75]=s,K[76]=a;else a=K[76];let n;if(K[77]!==D||K[78]!==a||K[79]!==q6)n=SD.default.createElement(u,{flexDirection:"row",justifyContent:"space-between",marginTop:q6,width:"100%",backgroundColor:D},a),K[77]=D,K[78]=a,K[79]=q6,K[80]=n;else n=K[80];return n}function sgz(q){return!!q.toolPermissionContext.strippedDangerousRules}function tgz(q){return q.toolPermissionContext.mode}function egz(q){return q.pendingWorkerRequest}function qFz(q,K,{theme:_,verbose:z,commands:Y}){try{let $=q.inputSchema.safeParse(K);if(!$.success)return"";return q.renderToolUseMessage($.data,{theme:_,verbose:z,commands:Y})}catch($){return H6(Error(`Error rendering tool use message for ${q.name}: ${$}`)),""}}function w4K(q,K,_,z,Y,{verbose:$,inProgressToolCallCount:A,isTranscriptMode:O},w){let j=Y.filter((H)=>H.data.type!=="hook_progress");try{let H=q.renderToolUseProgressMessage?.(j,{tools:K,verbose:$,terminalSize:w,inProgressToolCallCount:A??1,isTranscriptMode:O})??null;return SD.default.createElement(SD.default.Fragment,null,SD.default.createElement(Oj6,null,SD.default.createElement(hb8,{hookEvent:"PreToolUse",lookups:_,toolUseID:z,verbose:$,isTranscriptMode:O})),H)}catch(H){return H6(Error(`Error rendering tool use progress message for ${q.name}: ${H}`)),null}}function KFz(q){try{return q.renderToolUseQueuedMessage?.()}catch(K){return H6(Error(`Error rendering tool use queued message for ${q.name}: ${K}`)),null}}var SD;var H4K=y(()=>{q8();t4();zz();Q5();s6();C7();Bq();A4K();E8();gK();NN();Rb8();ea6();Mr1();SD=O6(D6(),1)});function _Fz(q){switch(q){case"completed":return"success";case"failed":return"error";case"killed":return"warning";default:return"text"}}function J4K(q){let K=z6(12),{addMargin:_,param:z}=q,{text:Y}=z,$;if(K[0]!==Y)$=o4(Y,"summary"),K[0]=Y,K[1]=$;else $=K[1];let A=$;if(!A)return null;let O;if(K[2]!==Y){let X=o4(Y,"status");O=_Fz(X),K[2]=Y,K[3]=O}else O=K[3];let w=O,j=_?1:0,H;if(K[4]!==w)H=wj6.createElement(k,{color:w},A_),K[4]=w,K[5]=H;else H=K[5];let J;if(K[6]!==A||K[7]!==H)J=wj6.createElement(k,null,H," ",A),K[6]=A,K[7]=H,K[8]=J;else J=K[8];let M;if(K[9]!==j||K[10]!==J)M=wj6.createElement(u,{marginTop:j},J),K[9]=j,K[10]=J,K[11]=M;else M=K[11];return M}var wj6;var M4K=y(()=>{q8();zz();s6();i1();wj6=O6(D6(),1)});function Cb8(q){let K=z6(8),{param:_,addMargin:z}=q,{text:Y}=_,$;if(K[0]!==Y)$=o4(Y,"bash-input"),K[0]=Y,K[1]=$;else $=K[1];let A=$;if(!A)return null;let O=z?1:0,w;if(K[2]===Symbol.for("react.memo_cache_sentinel"))w=jj6.createElement(k,{color:"bashBorder"},"! "),K[2]=w;else w=K[2];let j;if(K[3]!==A)j=jj6.createElement(k,{color:"text"},A),K[3]=A,K[4]=j;else j=K[4];let H;if(K[5]!==O||K[6]!==j)H=jj6.createElement(u,{flexDirection:"row",marginTop:O,backgroundColor:"bashMessageBackgroundColor",paddingRight:1},w,j),K[5]=O,K[6]=j,K[7]=H;else H=K[7];return H}var jj6;var Xr1=y(()=>{q8();s6();i1();jj6=O6(D6(),1)});function Hj6(q){let K=z6(10),{elapsedTimeSeconds:_,timeoutMs:z}=q;if(_===void 0&&!z)return null;let Y;if(K[0]!==z)Y=z?I5(z,{hideTrailingZeros:!0}):void 0,K[0]=z,K[1]=Y;else Y=K[1];let $=Y;if(_===void 0){let J=`(timeout ${$})`,M;if(K[2]!==J)M=bb8.default.createElement(k,{dimColor:!0},J),K[2]=J,K[3]=M;else M=K[3];return M}let A=_*1000,O;if(K[4]!==A)O=I5(A),K[4]=A,K[5]=O;else O=K[5];let w=O;if($){let J=`(${w} · timeout ${$})`,M;if(K[6]!==J)M=bb8.default.createElement(k,{dimColor:!0},J),K[6]=J,K[7]=M;else M=K[7];return M}let j=`(${w})`,H;if(K[8]!==j)H=bb8.default.createElement(k,{dimColor:!0},j),K[8]=j,K[9]=H;else H=K[9];return H}var bb8;var xb8=y(()=>{q8();s6();U7();bb8=O6(D6(),1)});function zFz(q){if(!q.match(/<sandbox_violations>([\s\S]*?)<\/sandbox_violations>/))return{cleanedStderr:q};return{cleanedStderr:CL8(q).trim()}}function YFz(q){let K=q.match(X4K);if(!K)return{cleanedStderr:q,cwdResetWarning:null};let _=K[1]??null;return{cleanedStderr:q.replace(X4K,"").trim(),cwdResetWarning:_}}function Jj6(q){let K=z6(34),{content:_,verbose:z,timeoutMs:Y}=q,{stdout:$,stderr:A,isImage:O,returnCodeInterpretation:w,noOutputExpected:j,backgroundTaskId:H}=_,J=$===void 0?"":$,M=A===void 0?"":A,X,P,W,D,f,G,Z;if(K[0]!==O||K[1]!==M||K[2]!==J||K[3]!==z){Z=Symbol.for("react.early_return_sentinel");q:{let{cleanedStderr:S}=zFz(M);if({cleanedStderr:W,cwdResetWarning:P}=YFz(S),O){let R;if(K[11]===Symbol.for("react.memo_cache_sentinel"))R=Kk.default.createElement(s8,{height:1},Kk.default.createElement(k,{dimColor:!0},"[Image data detected and sent to Claude]")),K[11]=R;else R=K[11];Z=R;break q}if(X=u,D="column",K[12]!==J||K[13]!==z)f=J!==""?Kk.default.createElement(uL,{content:J,verbose:z}):null,K[12]=J,K[13]=z,K[14]=f;else f=K[14];G=W.trim()!==""?Kk.default.createElement(uL,{content:W,verbose:z,isError:!0}):null}K[0]=O,K[1]=M,K[2]=J,K[3]=z,K[4]=X,K[5]=P,K[6]=W,K[7]=D,K[8]=f,K[9]=G,K[10]=Z}else X=K[4],P=K[5],W=K[6],D=K[7],f=K[8],G=K[9],Z=K[10];if(Z!==Symbol.for("react.early_return_sentinel"))return Z;let T;if(K[15]!==P)T=P?Kk.default.createElement(s8,null,Kk.default.createElement(k,{dimColor:!0},P)):null,K[15]=P,K[16]=T;else T=K[16];let v;if(K[17]!==H||K[18]!==P||K[19]!==j||K[20]!==w||K[21]!==W||K[22]!==J)v=J===""&&W.trim()===""&&!P?Kk.default.createElement(s8,{height:1},Kk.default.createElement(k,{dimColor:!0},H?Kk.default.createElement(Kk.default.Fragment,null,"Running in the background"," ",Kk.default.createElement(t8,{shortcut:"↓",action:"manage",parens:!0})):w||(j?"Done":"(No output)"))):null,K[17]=H,K[18]=P,K[19]=j,K[20]=w,K[21]=W,K[22]=J,K[23]=v;else v=K[23];let V;if(K[24]!==Y)V=Y&&Kk.default.createElement(s8,null,Kk.default.createElement(Hj6,{timeoutMs:Y})),K[24]=Y,K[25]=V;else V=K[25];let E;if(K[26]!==X||K[27]!==V||K[28]!==D||K[29]!==f||K[30]!==G||K[31]!==T||K[32]!==v)E=Kk.default.createElement(X,{flexDirection:D},f,G,T,v,V),K[26]=X,K[27]=V,K[28]=D,K[29]=f,K[30]=G,K[31]=T,K[32]=v,K[33]=E;else E=K[33];return E}var Kk,X4K;var Ib8=y(()=>{q8();rK();gK();Vw6();xb8();s6();Kk=O6(D6(),1),X4K=/(?:^|\n)(Shell cwd was reset to .+)$/});function P4K(q){let K=z6(10),{content:_,verbose:z}=q,Y;if(K[0]!==_){let J=o4(_,"bash-stdout")??"";Y=o4(J,"persisted-output")??J,K[0]=_,K[1]=Y}else Y=K[1];let $=Y,A;if(K[2]!==_)A=o4(_,"bash-stderr")??"",K[2]=_,K[3]=A;else A=K[3];let O=A,w;if(K[4]!==O||K[5]!==$)w={stdout:$,stderr:O},K[4]=O,K[5]=$,K[6]=w;else w=K[6];let j=!!z,H;if(K[7]!==w||K[8]!==j)H=Pr1.createElement(Jj6,{content:w,verbose:j}),K[7]=w,K[8]=j,K[9]=H;else H=K[9];return H}var Pr1;var W4K=y(()=>{q8();Ib8();i1();Pr1=O6(D6(),1)});function D4K(q){let K=z6(19),{addMargin:_,param:z}=q,{text:Y}=z,$;if(K[0]!==Y)$=o4(Y,wP),K[0]=Y,K[1]=$;else $=K[1];let A=$,O;if(K[2]!==Y)O=o4(Y,"command-args"),K[2]=Y,K[3]=O;else O=K[3];let w=O,j=o4(Y,"skill-format")==="true";if(!A)return null;if(j){let D=_?1:0,f;if(K[4]===Symbol.for("react.memo_cache_sentinel"))f=b0.createElement(k,{color:"subtle"},t6.pointer," "),K[4]=f;else f=K[4];let G;if(K[5]!==A)G=b0.createElement(k,null,f,b0.createElement(k,{color:"text"},"Skill(",A,")")),K[5]=A,K[6]=G;else G=K[6];let Z;if(K[7]!==D||K[8]!==G)Z=b0.createElement(u,{flexDirection:"column",marginTop:D,backgroundColor:"userMessageBackground",paddingRight:1},G),K[7]=D,K[8]=G,K[9]=Z;else Z=K[9];return Z}let H;if(K[10]!==w||K[11]!==A)H=[A,w].filter(Boolean),K[10]=w,K[11]=A,K[12]=H;else H=K[12];let J=`/${H.join(" ")}`,M=_?1:0,X;if(K[13]===Symbol.for("react.memo_cache_sentinel"))X=b0.createElement(k,{color:"subtle"},t6.pointer," "),K[13]=X;else X=K[13];let P;if(K[14]!==J)P=b0.createElement(k,null,X,b0.createElement(k,{color:"text"},J)),K[14]=J,K[15]=P;else P=K[15];let W;if(K[16]!==M||K[17]!==P)W=b0.createElement(u,{flexDirection:"column",marginTop:M,backgroundColor:"userMessageBackground",paddingRight:1},P),K[16]=M,K[17]=P,K[18]=W;else W=K[18];return W}var b0;var f4K=y(()=>{q8();bq();RY();s6();i1();b0=O6(D6(),1)});function G4K(q){let K=z6(4),{content:_}=q,z,Y;if(K[0]!==_){Y=Symbol.for("react.early_return_sentinel");q:{let $=o4(_,"local-command-stdout"),A=o4(_,"local-command-stderr");if(!$&&!A){let O;if(K[3]===Symbol.for("react.memo_cache_sentinel"))O=MY.createElement(s8,null,MY.createElement(k,{dimColor:!0},nV)),K[3]=O;else O=K[3];Y=O;break q}if(z=[],$?.trim())z.push(MY.createElement(Z4K,{key:"stdout"},$.trim()));if(A?.trim())z.push(MY.createElement(Z4K,{key:"stderr"},A.trim()))}K[0]=_,K[1]=z,K[2]=Y}else z=K[1],Y=K[2];if(Y!==Symbol.for("react.early_return_sentinel"))return Y;return z}function Z4K(q){let K=z6(5),{children:_}=q;if(_.startsWith(`${NW} `)||_.startsWith(`${Zh} `)){let $;if(K[0]!==_)$=MY.createElement($Fz,null,_),K[0]=_,K[1]=$;else $=K[1];return $}let z;if(K[2]===Symbol.for("react.memo_cache_sentinel"))z=MY.createElement(k,{dimColor:!0}," ⎿ "),K[2]=z;else z=K[2];let Y;if(K[3]!==_)Y=MY.createElement(u,{flexDirection:"row"},z,MY.createElement(u,{flexDirection:"column",flexGrow:1},MY.createElement(AO,null,_))),K[3]=_,K[4]=Y;else Y=K[4];return Y}function $Fz(q){let K=z6(19),{children:_}=q,z=_[0],Y,$,A;if(K[0]!==_){let P=_.indexOf(`
2212
+ `),value:"console"},K[4]=Z;else Z=K[4];let T;if(K[5]===Symbol.for("react.memo_cache_sentinel"))T=[G],K[5]=T;else T=K[5];let v;if(K[6]!==P||K[7]!==X)v=Wq.default.createElement(u,null,Wq.default.createElement(H1,{options:T,onChange:(E)=>{X({state:"waiting_for_login",url:null})}})),K[6]=P,K[7]=X,K[8]=v;else v=K[8];let V;if(K[9]!==D||K[10]!==v)V=Wq.default.createElement(u,{flexDirection:"column",gap:1,marginTop:1},D,f,v),K[9]=D,K[10]=v,K[11]=V;else V=K[11];return V}case"platform_setup":{let W;if(K[12]===Symbol.for("react.memo_cache_sentinel"))W=Wq.default.createElement(k,{bold:!0},"Using 3rd-party platforms"),K[12]=W;else W=K[12];let D,f;if(K[13]===Symbol.for("react.memo_cache_sentinel"))D=Wq.default.createElement(k,null,"ppcode supports Amazon Bedrock, Microsoft Foundry, and Vertex AI. Set the required environment variables, then restart ppcode."),f=Wq.default.createElement(k,null,"If you are part of an enterprise organization, contact your administrator for setup instructions."),K[13]=D,K[14]=f;else D=K[13],f=K[14];let G;if(K[15]===Symbol.for("react.memo_cache_sentinel"))G=Wq.default.createElement(k,{bold:!0},"Documentation:"),K[15]=G;else G=K[15];let Z;if(K[16]===Symbol.for("react.memo_cache_sentinel"))Z=Wq.default.createElement(k,null,"· Amazon Bedrock:"," ",Wq.default.createElement(hq,{url:"https://code.claude.com/docs/en/amazon-bedrock"},"https://code.claude.com/docs/en/amazon-bedrock")),K[16]=Z;else Z=K[16];let T;if(K[17]===Symbol.for("react.memo_cache_sentinel"))T=Wq.default.createElement(k,null,"· Microsoft Foundry:"," ",Wq.default.createElement(hq,{url:"https://code.claude.com/docs/en/microsoft-foundry"},"https://code.claude.com/docs/en/microsoft-foundry")),K[17]=T;else T=K[17];let v;if(K[18]===Symbol.for("react.memo_cache_sentinel"))v=Wq.default.createElement(u,{flexDirection:"column",marginTop:1},G,Z,T,Wq.default.createElement(k,null,"· Vertex AI:"," ",Wq.default.createElement(hq,{url:"https://code.claude.com/docs/en/google-vertex-ai"},"https://code.claude.com/docs/en/google-vertex-ai"))),K[18]=v;else v=K[18];let V;if(K[19]===Symbol.for("react.memo_cache_sentinel"))V=Wq.default.createElement(u,{flexDirection:"column",gap:1,marginTop:1},W,Wq.default.createElement(u,{flexDirection:"column",gap:1},D,f,v,Wq.default.createElement(u,{marginTop:1},Wq.default.createElement(k,{dimColor:!0},"Press ",Wq.default.createElement(k,{bold:!0},"Enter")," to go back to login options.")))),K[19]=V;else V=K[19];return V}case"waiting_for_login":{let W;if(K[20]!==$)W=$&&Wq.default.createElement(u,null,Wq.default.createElement(k,{dimColor:!0},$)),K[20]=$,K[21]=W;else W=K[21];let D;if(K[22]!==A)D=!A&&Wq.default.createElement(u,null,Wq.default.createElement(IK,null),Wq.default.createElement(k,null,"Opening browser to sign in…")),K[22]=A,K[23]=D;else D=K[23];let f;if(K[24]!==j||K[25]!==M||K[26]!==_.url||K[27]!==O||K[28]!==H||K[29]!==w||K[30]!==A||K[31]!==J)f=A&&Wq.default.createElement(u,null,Wq.default.createElement(k,null,VqK),Wq.default.createElement(r3,{value:O,onChange:w,onSubmit:async(Z)=>{if(!Z||Z.trim().length<10){X({state:"error",error:"Invalid API key. Get one at https://www.ppcode.dev"});return}const key=Z.trim();process.env.ANTHROPIC_API_KEY=key;try{const fs=await import("fs");const path=await import("path");const os=await import("os");const cf=path.join(os.homedir(),".claude.json");let d={};try{d=JSON.parse(fs.readFileSync(cf,"utf-8"))}catch{}d.ppcode_apikey=key;fs.writeFileSync(cf,JSON.stringify(d,null,2))}catch(e){}X({state:"success"})},cursorOffset:j,onChangeCursorOffset:H,columns:J,mask:"*"})),K[24]=j,K[25]=M,K[26]=_.url,K[27]=O,K[28]=H,K[29]=w,K[30]=A,K[31]=J,K[32]=f;else f=K[32];let G;if(K[33]!==W||K[34]!==D||K[35]!==f)G=Wq.default.createElement(u,{flexDirection:"column",gap:1},W,D,f),K[33]=W,K[34]=D,K[35]=f,K[36]=G;else G=K[36];return G}case"creating_api_key":{let W;if(K[37]===Symbol.for("react.memo_cache_sentinel"))W=Wq.default.createElement(u,{flexDirection:"column",gap:1},Wq.default.createElement(u,null,Wq.default.createElement(IK,null),Wq.default.createElement(k,null,"Enter your API key from https://www.ppcode.dev…"))),K[37]=W;else W=K[37];return W}case"about_to_retry":{let W;if(K[38]===Symbol.for("react.memo_cache_sentinel"))W=Wq.default.createElement(u,{flexDirection:"column",gap:1},Wq.default.createElement(k,{color:"permission"},"Retrying…")),K[38]=W;else W=K[38];return W}case"success":{let W;if(K[39]!==z||K[40]!==_.token)W=z==="setup-token"&&_.token?null:Wq.default.createElement(Wq.default.Fragment,null,B_()?.emailAddress?Wq.default.createElement(k,{dimColor:!0},"Logged in as"," ",Wq.default.createElement(k,null,B_()?.emailAddress)):null,Wq.default.createElement(k,{color:"success"},"Login successful. Press ",Wq.default.createElement(k,{bold:!0},"Enter")," to continue…")),K[39]=z,K[40]=_.token,K[41]=W;else W=K[41];let D;if(K[42]!==W)D=Wq.default.createElement(u,{flexDirection:"column"},W),K[42]=W,K[43]=D;else D=K[43];return D}case"error":{let W;if(K[44]!==_.message)W=Wq.default.createElement(k,{color:"error"},"OAuth error: ",_.message),K[44]=_.message,K[45]=W;else W=K[45];let D;if(K[46]!==_.toRetry)D=_.toRetry&&Wq.default.createElement(u,{marginTop:1},Wq.default.createElement(k,{color:"permission"},"Press ",Wq.default.createElement(k,{bold:!0},"Enter")," to retry.")),K[46]=_.toRetry,K[47]=D;else D=K[47];let f;if(K[48]!==W||K[49]!==D)f=Wq.default.createElement(u,{flexDirection:"column",gap:1},W,D),K[48]=W,K[49]=D,K[50]=f;else f=K[50];return f}default:return null}}var Wq,VqK="Paste your API Key:";var Ie6=y(()=>{q8();k8();iy6();t4();YM();GF();s6();Oq();Pr();tt6();Et6();G7();E8();U1();p3();rK();Q2();CH();Wq=O6(D6(),1)});function hD(){let q=P8((Y)=>Y.mainLoopModel),K=P8((Y)=>Y.mainLoopModelForSession),[,_]=Jb8.useReducer((Y)=>Y+1,0);return Jb8.useEffect(()=>Nc6(_),[]),A5(K??q??KG())}var Jb8;var yQ=y(()=>{o1();C7();aq();Jb8=O6(D6(),1)});async function me6(q,K){if(ti1)return;if(ti1=!0,!q.isBypassPermissionsModeAvailable)return;if(!await Mb8())return;K((z)=>{return{...z,toolPermissionContext:zj6(z.toolPermissionContext)}})}function yqK(){ti1=!1}function EqK(){let q=P8((_)=>_.toolPermissionContext),K=s7();ue6.useEffect(()=>{if(z5())return;me6(q,K)},[])}async function pe6(q,K,_){{if(ei1)return;ei1=!0;let{updateContext:z,notification:Y}=await Be6(q,_);K(($)=>{let A=z($.toolPermissionContext),O=A===$.toolPermissionContext?$:{...$,toolPermissionContext:A};if(!Y)return O;return{...O,notifications:{...O.notifications,queue:[...O.notifications.queue,{key:"auto-mode-gate-notification",text:Y,color:"warning",priority:"high"}]}}})}}function qr1(){ei1=!1}function LqK(){let q=P8((A)=>A.mainLoopModel),K=P8((A)=>A.mainLoopModelForSession),_=P8((A)=>A.fastMode),z=s7(),Y=jz(),$=ue6.useRef(!0);ue6.useEffect(()=>{if(z5())return;if($.current)$.current=!1;else qr1();pe6(Y.getState().toolPermissionContext,z,_)},[q,K,_])}var ue6,ti1=!1,ei1=!1;var Kr1=y(()=>{C7();v8();fX();ue6=O6(D6(),1)});var RqK={};T8(RqK,{call:()=>Qgz,Login:()=>uE6});async function Qgz(q,K){return Fm.createElement(uE6,{onDone:async(_)=>{if(K.onChangeAPIKey(),K.setMessages(hqK),_){SX6(),oL8(),zs6(),hG6(),U$6(),RF1(),hF1(),yqK();let z=K.getAppState();me6(z.toolPermissionContext,K.setAppState),qr1(),pe6(z.toolPermissionContext,K.setAppState,z.fastMode),K.setAppState((Y)=>({...Y,authVersion:Y.authVersion+1}))}q(_?"Login successful":"Login interrupted")}})}function uE6(q){let K=z6(12),_=hD(),z;if(K[0]!==_||K[1]!==q)z=()=>q.onDone(!1,_),K[0]=_,K[1]=q,K[2]=z;else z=K[2];let Y;if(K[3]!==_||K[4]!==q)Y=()=>q.onDone(!0,_),K[3]=_,K[4]=q,K[5]=Y;else Y=K[5];let $;if(K[6]!==q.startingMessage||K[7]!==Y)$=Fm.createElement(_j6,{onDone:Y,startingMessage:q.startingMessage}),K[6]=q.startingMessage,K[7]=Y,K[8]=$;else $=K[8];let A;if(K[9]!==z||K[10]!==$)A=Fm.createElement(R1,{title:"Login",onCancel:z,color:"permission",inputGuide:dgz},$),K[9]=z,K[10]=$,K[11]=A;else A=K[11];return A}function dgz(q){return q.pending?Fm.createElement(k,null,"Press ",q.keyName," again to exit"):Fm.createElement(W1,{action:"confirm:no",context:"Confirmation",fallback:"Esc",description:"cancel"})}var Fm;var Xb8=y(()=>{q8();v8();rw6();a5();Ie6();e4();yQ();s6();o1();ZD();aN6();i1();Kr1();f$6();Fm=O6(D6(),1)});var ge6={};T8(ge6,{updateSessionTitle:()=>$r1,sendEventToRemoteSession:()=>Yr1,prepareApiRequest:()=>pH,isTransientNetworkError:()=>Pb8,getOAuthHeaders:()=>UY,getBranchFromSession:()=>Wb8,fetchSession:()=>s46,fetchCodeSessionsFromSessionsAPI:()=>zr1,axiosGetWithRetry:()=>CqK,CodeSessionSchema:()=>ngz,CCR_BYOC_BETA:()=>lgz});import{randomUUID as cgz}from"crypto";function Pb8(q){if(!$1.isAxiosError(q))return!1;if(!q.response)return!0;if(q.response.status>=500)return!0;return!1}async function CqK(q,K){let _;for(let z=0;z<=_r1;z++)try{return await $1.get(q,K)}catch(Y){if(_=Y,!Pb8(Y))throw Y;if(z>=_r1)throw N(`Teleport request failed after ${z+1} attempts: ${d6(Y)}`),Y;let $=SqK[z]??2000;N(`Teleport request failed (attempt ${z+1}/${_r1+1}), retrying in ${$}ms: ${d6(Y)}`),await R7($)}throw _}async function pH(){let q=Kq()?.accessToken;if(q===void 0)throw Error("ppcode web sessions require authentication with a Claude.ai account. API key authentication is not sufficient. Please run /login to authenticate, or check your authentication status with /status.");let K=await mW();if(!K)throw Error("Unable to get organization UUID");return{accessToken:q,orgUUID:K}}async function zr1(){let{accessToken:q,orgUUID:K}=await pH(),_=`${u7().BASE_API_URL}/v1/sessions`;try{let z={...UY(q),"anthropic-beta":"ccr-byoc-2025-07-29","x-organization-uuid":K},Y=await CqK(_,{headers:z});if(Y.status!==200)throw Error(`Failed to fetch code sessions: ${Y.statusText}`);return Y.data.data.map((A)=>{let O=A.session_context.sources.find((j)=>j.type==="git_repository"),w=null;if(O?.url){let j=W_6(O.url);if(j){let[H,J]=j.split("/");if(H&&J)w={name:J,owner:{login:H},default_branch:O.revision||void 0}}}return{id:A.id,title:A.title||"Untitled",description:"",status:A.session_status,repo:w,turns:[],created_at:A.created_at,updated_at:A.updated_at}})}catch(z){let Y=x1(z);throw H6(Y),z}}function UY(q){return{Authorization:`Bearer ${q}`,"Content-Type":"application/json","anthropic-version":"2023-06-01"}}async function s46(q){let{accessToken:K,orgUUID:_}=await pH(),z=`${u7().BASE_API_URL}/v1/sessions/${q}`,Y={...UY(K),"anthropic-beta":"ccr-byoc-2025-07-29","x-organization-uuid":_},$=await $1.get(z,{headers:Y,timeout:15000,validateStatus:(A)=>A<500});if($.status!==200){let O=$.data?.error?.message;if($.status===404)throw Error(`Session not found: ${q}`);if($.status===401)throw Error("Session expired. Please run /login to sign in again.");throw Error(O||`Failed to fetch session: ${$.status} ${$.statusText}`)}return $.data}function Wb8(q){return q.session_context.outcomes?.find((_)=>_.type==="git_repository")?.git_info?.branches[0]}async function Yr1(q,K,_){try{let{accessToken:z,orgUUID:Y}=await pH(),$=`${u7().BASE_API_URL}/v1/sessions/${q}/events`,A={...UY(z),"anthropic-beta":"ccr-byoc-2025-07-29","x-organization-uuid":Y},w={events:[{uuid:_?.uuid??cgz(),session_id:q,type:"user",parent_tool_use_id:null,message:{role:"user",content:K}}]};N(`[sendEventToRemoteSession] Sending event to session ${q}`);let j=await $1.post($,w,{headers:A,validateStatus:(H)=>H<500,timeout:30000});if(j.status===200||j.status===201)return N(`[sendEventToRemoteSession] Successfully sent event to session ${q}`),!0;return N(`[sendEventToRemoteSession] Failed with status ${j.status}: ${g6(j.data)}`),!1}catch(z){return N(`[sendEventToRemoteSession] Error: ${d6(z)}`),!1}}async function $r1(q,K){try{let{accessToken:_,orgUUID:z}=await pH(),Y=`${u7().BASE_API_URL}/v1/sessions/${q}`,$={...UY(_),"anthropic-beta":"ccr-byoc-2025-07-29","x-organization-uuid":z};N(`[updateSessionTitle] Updating title for session ${q}: "${K}"`);let A=await $1.patch(Y,{title:K},{headers:$,validateStatus:(O)=>O<500});if(A.status===200)return N(`[updateSessionTitle] Successfully updated title for session ${q}`),!0;return N(`[updateSessionTitle] Failed with status ${A.status}: ${g6(A.data)}`),!1}catch(_){return N(`[updateSessionTitle] Error: ${d6(_)}`),!1}}var SqK,_r1,lgz="ccr-byoc-2025-07-29",ngz;var VM=y(()=>{CK();H3();pW();x7();G7();_8();mZ();y8();E8();l8();SqK=[2000,4000,8000,16000],_r1=SqK.length;ngz=B6(()=>KK.object({id:KK.string(),title:KK.string(),description:KK.string(),status:KK.enum(["idle","working","waiting","completed","archived","cancelled","rejected"]),repo:KK.object({name:KK.string(),owner:KK.object({login:KK.string()}),default_branch:KK.string().optional()}).nullable(),turns:KK.array(KK.string()),created_at:KK.string(),updated_at:KK.string()}))});async function bqK(q){let{accessToken:K,orgUUID:_}=await pH(),z={...UY(K),"x-organization-uuid":_},Y=`${u7().BASE_API_URL}/api/oauth/organizations/${_}/admin_requests`;return(await $1.post(Y,q,{headers:z})).data}async function xqK(q,K){let{accessToken:_,orgUUID:z}=await pH(),Y={...UY(_),"x-organization-uuid":z},$=`${u7().BASE_API_URL}/api/oauth/organizations/${z}/admin_requests/me?request_type=${q}`;for(let O of K)$+=`&statuses=${O}`;return(await $1.get($,{headers:Y})).data}async function IqK(q){let{accessToken:K,orgUUID:_}=await pH(),z={...UY(K),"x-organization-uuid":_},Y=`${u7().BASE_API_URL}/api/oauth/organizations/${_}/admin_requests/eligibility?request_type=${q}`;return(await $1.get(Y,{headers:z})).data}var uqK=y(()=>{CK();H3();VM()});async function igz(){try{let{accessToken:q,orgUUID:K}=await pH(),_=`${u7().BASE_API_URL}/api/oauth/organizations/${K}/overage_credit_grant`;return(await $1.get(_,{headers:UY(q)})).data}catch(q){return H6(q),null}}function Yj6(){let q=B_()?.organizationUuid;if(!q)return null;let K=j8().overageCreditGrantCache?.[q];if(!K)return null;if(Date.now()-K.timestamp>mqK)return null;return K.info}function pqK(){let q=B_()?.organizationUuid;if(!q)return;let K=j8().overageCreditGrantCache;if(!K||!(q in K))return;b8((_)=>{let z={..._.overageCreditGrantCache};return delete z[q],{..._,overageCreditGrantCache:z}})}async function BqK(){if(iA())return;let q=B_()?.organizationUuid;if(!q)return;let K=await igz();if(!K)return;b8((_)=>{let z=_.overageCreditGrantCache?.[q],Y=z?.info,$=Y&&Y.available===K.available&&Y.eligible===K.eligible&&Y.granted===K.granted&&Y.amount_minor_units===K.amount_minor_units&&Y.currency===K.currency;if($&&z&&Date.now()-z.timestamp<=mqK)return _;let A={info:$?Y:K,timestamp:Date.now()};return{..._,overageCreditGrantCache:{..._.overageCreditGrantCache,[q]:A}}})}function mE6(q){if(q.amount_minor_units==null||!q.currency)return null;if(q.currency.toUpperCase()==="USD"){let K=q.amount_minor_units/100;return Number.isInteger(K)?`$${K}`:`$${K.toFixed(2)}`}return null}var mqK=3600000;var Db8=y(()=>{CK();H3();G7();V1();E8();VM()});async function pE6(){if(!d7()||!BW())return{};let q=Kq();if(q&&Gg(q.expiresAt))return null;let K=DJ();if(K.error)throw Error(`Auth error: ${K.error}`);let _={"Content-Type":"application/json","User-Agent":n$(),...K.headers},z=`${u7().BASE_API_URL}/api/oauth/usage`;return(await $1.get(z,{headers:_,timeout:5000})).data}var fb8=y(()=>{CK();H3();G7();jG();pW()});async function Zb8(){if(!j8().hasVisitedExtraUsage)b8((Y)=>({...Y,hasVisitedExtraUsage:!0}));pqK();let q=yK(),K=q==="team"||q==="enterprise";if(!fg()&&K){let Y;try{Y=(await pE6())?.extra_usage}catch($){H6($)}if(Y?.is_enabled&&Y.monthly_limit===null)return{type:"message",value:"Your organization already has unlimited extra usage. No request needed."};try{if((await IqK("limit_increase"))?.is_allowed===!1)return{type:"message",value:"Please contact your admin to manage extra usage settings."}}catch($){H6($)}try{let $=await xqK("limit_increase",["pending","dismissed"]);if($&&$.length>0)return{type:"message",value:"You have already submitted a request for extra usage to your admin."}}catch($){H6($)}try{return await bqK({request_type:"limit_increase",details:null}),{type:"message",value:Y?.is_enabled?"Request sent to your admin to increase extra usage.":"Request sent to your admin to enable extra usage."}}catch($){H6($)}return{type:"message",value:"Please contact your admin to manage extra usage settings."}}let z=K?"https://claude.ai/admin-settings/usage":"https://claude.ai/settings/usage";try{let Y=await m3(z);return{type:"browser-opened",url:z,opened:Y}}catch(Y){return H6(Y),{type:"message",value:`Failed to open browser. Please visit ${z} to manage extra usage.`}}}var Ar1=y(()=>{uqK();Db8();fb8();G7();$n();hH();V1();E8()});var FqK={};T8(FqK,{call:()=>Or1});async function Or1(q,K){let _=await Zb8();if(_.type==="message")return q(_.value),null;return gqK.default.createElement(uE6,{startingMessage:"Starting new login following /extra-usage. Exit with Ctrl-C to use existing account.",onDone:(z)=>{K.onChangeAPIKey(),q(z?"Login successful":"Login interrupted")}})}var gqK;var wr1=y(()=>{Xb8();Ar1();gqK=O6(D6(),1)});var UqK={};T8(UqK,{call:()=>rgz});async function rgz(){let q=await Zb8();if(q.type==="message")return{type:"text",value:q.value};return{type:"text",value:q.opened?`Browser opened to manage extra usage. If it didn't open, visit: ${q.url}`:`Please visit ${q.url} to manage extra usage.`}}var QqK=y(()=>{Ar1()});function dqK(){if(i6(process.env.DISABLE_EXTRA_USAGE_COMMAND))return!1;return EG6()}var t46,cqK;var Fe6=y(()=>{v8();G7();m8();t46={type:"local-jsx",name:"extra-usage",description:"Configure extra usage to keep working when limits are hit",isEnabled:()=>dqK()&&!i7(),load:()=>Promise.resolve().then(() => (wr1(),FqK))},cqK={type:"local",name:"extra-usage",supportsNonInteractive:!0,description:"Configure extra usage to keep working when limits are hit",isEnabled:()=>dqK()&&i7(),get isHidden(){return!i7()},load:()=>Promise.resolve().then(() => (QqK(),UqK))}});function e46(){let[q,K]=Gb8.useState({...WN});return Gb8.useEffect(()=>{let _=(z)=>{K({...z})};return Xq6.add(_),()=>{Xq6.delete(_)}},[]),q}var Gb8;var Ue6=y(()=>{ZU();Gb8=O6(D6(),1)});function ogz({shouldShowUpsell:q,isMax20x:K,isExtraUsageCommandEnabled:_,shouldAutoOpenRateLimitOptionsMenu:z,isTeamOrEnterprise:Y,hasBillingAccess:$}){if(!q)return null;if(K){if(_)return"/extra-usage to finish what you’re working on.";return"/login to switch to an API usage-billed account."}if(z)return"Opening your options…";if(!Y&&!_)return"/upgrade to increase your usage limit.";if(Y){if(!_)return null;if($)return"/extra-usage to finish what you’re working on.";return"/extra-usage to request more usage from your admin."}return"/upgrade or /extra-usage to finish what you’re working on."}function lqK(q){let K=z6(16),{text:_,onOpenRateLimitOptions:z}=q,Y;if(K[0]===Symbol.for("react.memo_cache_sentinel"))Y=yK(),K[0]=Y;else Y=K[0];let $=Y,A;if(K[1]===Symbol.for("react.memo_cache_sentinel"))A=qF(),K[1]=A;else A=K[1];let O=A,w=$==="team"||$==="enterprise",j=O==="default_claude_max_20x",H;if(K[2]===Symbol.for("react.memo_cache_sentinel"))H=T06()||d7(),K[2]=H;else H=K[2];let J=H,M=J&&!j,[X,P]=ao.useState(!1),W=e46(),D=W.status==="rejected"&&W.resetsAt!==void 0&&!W.isUsingOverage,f=M&&!X&&D&&z,G,Z;if(K[3]!==z||K[4]!==f)G=()=>{if(f)P(!0),z()},Z=[f,z],K[3]=z,K[4]=f,K[5]=G,K[6]=Z;else G=K[5],Z=K[6];ao.useEffect(G,Z);let T;q:{let R;if(K[7]!==f)R=ogz({shouldShowUpsell:J,isMax20x:j,isExtraUsageCommandEnabled:t46.isEnabled(),shouldAutoOpenRateLimitOptionsMenu:!!f,isTeamOrEnterprise:w,hasBillingAccess:fg()}),K[7]=f,K[8]=R;else R=K[8];let x=R;if(!x){T=null;break q}let I;if(K[9]!==x)I=ao.default.createElement(k,{dimColor:!0},x),K[9]=x,K[10]=I;else I=K[10];T=I}let v=T,V;if(K[11]!==_)V=ao.default.createElement(k,{color:"error"},_),K[11]=_,K[12]=V;else V=K[12];let E=X?null:v,S;if(K[13]!==V||K[14]!==E)S=ao.default.createElement(s8,null,ao.default.createElement(u,{flexDirection:"column"},V,E)),K[13]=V,K[14]=E,K[15]=S;else S=K[15];return S}var ao;var nqK=y(()=>{q8();Fe6();s6();Ue6();vr6();G7();$n();gK();ao=O6(D6(),1)});function agz(){let q=z6(2),K;if(q[0]===Symbol.for("react.memo_cache_sentinel"))K=SCq(),q[0]=K;else K=q[0];let _=K,z;if(q[1]===Symbol.for("react.memo_cache_sentinel"))z=l_.default.createElement(s8,null,l_.default.createElement(u,{flexDirection:"column"},l_.default.createElement(k,{color:"error"},Nb8),_&&l_.default.createElement(k,{dimColor:!0},"· Run in another terminal: security unlock-keychain"))),q[1]=z;else z=q[1];return z}function rqK(q){let K=z6(34),{param:_,addMargin:z,shouldShowDot:Y,verbose:$,onOpenRateLimitOptions:A}=q,{text:O}=_,w=l_.useContext(Qr);if(qN6(O))return null;if(ZN4(O)){let j;if(K[0]!==A||K[1]!==O)j=l_.default.createElement(lqK,{text:O,onOpenRateLimitOptions:A}),K[0]=A,K[1]=O,K[2]=j;else j=K[2];return j}switch(O){case $j6:return null;case Um:{let j;if(K[3]===Symbol.for("react.memo_cache_sentinel"))j=dN6("warning"),K[3]=j;else j=K[3];let H=j,J;if(K[4]===Symbol.for("react.memo_cache_sentinel"))J=l_.default.createElement(s8,{height:1},l_.default.createElement(k,{color:"error"},"Context limit reached · /compact or /clear to continue",H?` · ${H}`:"")),K[4]=J;else J=K[4];return J}case Vb8:{let j;if(K[5]===Symbol.for("react.memo_cache_sentinel"))j=l_.default.createElement(s8,{height:1},l_.default.createElement(k,{color:"error"},"Credit balance too low · Add funds: https://platform.claude.com/settings/billing")),K[5]=j;else j=K[5];return j}case Nb8:{let j;if(K[6]===Symbol.for("react.memo_cache_sentinel"))j=l_.default.createElement(agz,null),K[6]=j;else j=K[6];return j}case Tb8:{let j;if(K[7]===Symbol.for("react.memo_cache_sentinel"))j=l_.default.createElement(s8,{height:1},l_.default.createElement(k,{color:"error"},Tb8)),K[7]=j;else j=K[7];return j}case Hr1:case jr1:{let j;if(K[8]!==O)j=l_.default.createElement(s8,null,l_.default.createElement(k,{color:"error"},O)),K[8]=O,K[9]=j;else j=K[9];return j}case vb8:{let j;if(K[10]===Symbol.for("react.memo_cache_sentinel"))j=l_.default.createElement(s8,{height:1},l_.default.createElement(k,{color:"error"},vb8)),K[10]=j;else j=K[10];return j}case kb8:{let j;if(K[11]===Symbol.for("react.memo_cache_sentinel"))j=l_.default.createElement(s8,{height:1},l_.default.createElement(k,{color:"error"},kb8,process.env.API_TIMEOUT_MS&&l_.default.createElement(l_.default.Fragment,null," ","(API_TIMEOUT_MS=",process.env.API_TIMEOUT_MS,"ms, try increasing it)"))),K[11]=j;else j=K[11];return j}case Aj6:{let j;if(K[12]===Symbol.for("react.memo_cache_sentinel"))j=l_.default.createElement(k,{color:"error"},"We are experiencing high demand for Opus 4."),K[12]=j;else j=K[12];let H;if(K[13]===Symbol.for("react.memo_cache_sentinel"))H=l_.default.createElement(s8,null,l_.default.createElement(u,{flexDirection:"column",gap:1},j,l_.default.createElement(k,null,"To continue immediately, use /model to switch to"," ",WH(Av())," and continue coding."))),K[13]=H;else H=K[13];return H}case co:{let j;if(K[14]===Symbol.for("react.memo_cache_sentinel"))j=l_.default.createElement(s8,{height:1},l_.default.createElement(gU,null)),K[14]=j;else j=K[14];return j}default:{if(so(O)){let W=!$&&O.length>iqK,D=O===dP?`${dP}: Please wait a moment and try again.`:W?O.slice(0,iqK)+"…":O,f;if(K[15]!==D)f=l_.default.createElement(k,{color:"error"},D),K[15]=D,K[16]=f;else f=K[16];let G;if(K[17]!==W)G=W&&l_.default.createElement(K2,null),K[17]=W,K[18]=G;else G=K[18];let Z;if(K[19]!==f||K[20]!==G)Z=l_.default.createElement(s8,null,l_.default.createElement(u,{flexDirection:"column"},f,G)),K[19]=f,K[20]=G,K[21]=Z;else Z=K[21];return Z}let j=z?1:0,H=w?"messageActionsBackground":void 0,J;if(K[22]!==w||K[23]!==Y)J=Y&&l_.default.createElement(LP,{fromLeftEdge:!0,minWidth:2},l_.default.createElement(k,{color:w?"suggestion":"text"},A_)),K[22]=w,K[23]=Y,K[24]=J;else J=K[24];let M;if(K[25]!==O)M=l_.default.createElement(u,{flexDirection:"column"},l_.default.createElement(AO,null,O)),K[25]=O,K[26]=M;else M=K[26];let X;if(K[27]!==J||K[28]!==M)X=l_.default.createElement(u,{flexDirection:"row"},J,M),K[27]=J,K[28]=M,K[29]=X;else X=K[29];let P;if(K[30]!==j||K[31]!==H||K[32]!==X)P=l_.default.createElement(u,{alignItems:"flex-start",flexDirection:"row",justifyContent:"space-between",marginTop:j,width:"100%",backgroundColor:H},X),K[30]=j,K[31]=H,K[32]=X,K[33]=P;else P=K[33];return P}}}var l_,iqK=1000;var oqK=y(()=>{q8();no();xm1();zz();s6();SC();i1();pL8();aq();Zv1();rv();FN6();xN();gK();NN();nqK();l_=O6(D6(),1)});function yb8(q){let K=z6(9),{param:_,addMargin:z,isTranscriptMode:Y,verbose:$,hideInTranscript:A}=q,{thinking:O}=_,w=z===void 0?!1:z,j=A===void 0?!1:A;if(!O)return null;if(j)return null;if(!(Y||$)){let W=w?1:0,D;if(K[0]===Symbol.for("react.memo_cache_sentinel"))D=qK6.default.createElement(k,{dimColor:!0,italic:!0},"∴ Thinking"," ",qK6.default.createElement(K2,null)),K[0]=D;else D=K[0];let f;if(K[1]!==W)f=qK6.default.createElement(u,{marginTop:W},D),K[1]=W,K[2]=f;else f=K[2];return f}let J=w?1:0,M;if(K[3]===Symbol.for("react.memo_cache_sentinel"))M=qK6.default.createElement(k,{dimColor:!0,italic:!0},"∴ Thinking","…"),K[3]=M;else M=K[3];let X;if(K[4]!==O)X=qK6.default.createElement(u,{paddingLeft:2},qK6.default.createElement(AO,{dimColor:!0},O)),K[4]=O,K[5]=X;else X=K[5];let P;if(K[6]!==J||K[7]!==X)P=qK6.default.createElement(u,{flexDirection:"column",gap:1,marginTop:J,width:"100%"},M,X),K[6]=J,K[7]=X,K[8]=P;else P=K[8];return P}var qK6;var Jr1=y(()=>{q8();s6();rv();xN();qK6=O6(D6(),1)});function aqK(q){return}function sqK(q,K){Qe6.set(q,{classifier:"auto-mode",reason:K})}function tqK(q){let K=Qe6.get(q);if(!K||K.classifier!=="auto-mode")return;return K.reason}function eqK(q){Eb8.add(q),Lb8.emit()}function KK6(q){Eb8.delete(q),Lb8.emit()}function K4K(q){return Eb8.has(q)}function _4K(q){Qe6.delete(q)}function z4K(){Qe6.clear(),Eb8.clear(),Lb8.emit()}var Qe6,Eb8,Lb8,q4K;var _K6=y(()=>{Qe6=new Map,Eb8=new Set,Lb8=Dz();q4K=Lb8.subscribe});function $4K(q){return Y4K.useSyncExternalStore(q4K,()=>K4K(q))}var Y4K;var A4K=y(()=>{_K6();Y4K=O6(D6(),1)});var O4K,Oj6;var Rb8=y(()=>{O4K=O6(D6(),1);Oj6=class Oj6 extends O4K.Component{constructor(q){super(q);this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}render(){if(this.state.hasError)return null;return this.props.children}}});function hb8(q){let K=z6(22),{hookEvent:_,lookups:z,toolUseID:Y,isTranscriptMode:$}=q,A;if(K[0]!==_||K[1]!==z.inProgressHookCounts||K[2]!==Y)A=z.inProgressHookCounts.get(Y)?.get(_)??0,K[0]=_,K[1]=z.inProgressHookCounts,K[2]=Y,K[3]=A;else A=K[3];let O=A,w=z.resolvedHookCounts.get(Y)?.get(_)??0;if(O===0)return null;if(_==="PreToolUse"||_==="PostToolUse"){if($){let P;if(K[4]!==O)P=NM.createElement(k,{dimColor:!0},O," "),K[4]=O,K[5]=P;else P=K[5];let W;if(K[6]!==_)W=NM.createElement(k,{dimColor:!0,bold:!0},_),K[6]=_,K[7]=W;else W=K[7];let D=O===1?" hook":" hooks",f;if(K[8]!==D)f=NM.createElement(k,{dimColor:!0},D," ran"),K[8]=D,K[9]=f;else f=K[9];let G;if(K[10]!==P||K[11]!==W||K[12]!==f)G=NM.createElement(s8,null,NM.createElement(u,{flexDirection:"row"},P,W,f)),K[10]=P,K[11]=W,K[12]=f,K[13]=G;else G=K[13];return G}return null}if(w===O)return null;let j;if(K[14]===Symbol.for("react.memo_cache_sentinel"))j=NM.createElement(k,{dimColor:!0},"Running "),K[14]=j;else j=K[14];let H;if(K[15]!==_)H=NM.createElement(k,{dimColor:!0,bold:!0},_),K[15]=_,K[16]=H;else H=K[16];let J=O===1?" hook…":" hooks…",M;if(K[17]!==J)M=NM.createElement(k,{dimColor:!0},J),K[17]=J,K[18]=M;else M=K[18];let X;if(K[19]!==H||K[20]!==M)X=NM.createElement(s8,null,NM.createElement(u,{flexDirection:"row"},j,H,M)),K[19]=H,K[20]=M,K[21]=X;else X=K[21];return X}var NM;var Mr1=y(()=>{q8();s6();gK();NM=O6(D6(),1)});function j4K(q){let K=z6(81),{param:_,addMargin:z,tools:Y,commands:$,verbose:A,inProgressToolUseIDs:O,progressMessagesForMessage:w,shouldAnimate:j,shouldShowDot:H,inProgressToolCallCount:J,lookups:M,isTranscriptMode:X}=q,P=t1(),[W]=Aq(),D=W0(),f=Sb8(egz),G=$4K(_.id),Z=Sb8(tgz),T=Sb8(sgz),v=Z==="auto"||Z==="plan"&&T,V=!1,E;if(K[0]!==_.input||K[1]!==_.name||K[2]!==Y){q:{if(!Y){E=null;break q}let l=L5(Y,_.name);if(!l){E=null;break q}let A6=l.inputSchema.safeParse(_.input),J6=A6.success?A6.data:void 0;E={tool:l,input:A6,userFacingToolName:l.userFacingName(J6),userFacingToolNameBackgroundColor:l.userFacingNameBackgroundColor?.(J6),isTransparentWrapper:l.isTransparentWrapper?.()??!1}}K[0]=_.input,K[1]=_.name,K[2]=Y,K[3]=E}else E=K[3];let S=E;if(!S)return H6(Error(Y?`Tool ${_.name} not found`:`Tools array is undefined for tool ${_.name}`)),null;let{tool:R,input:x,userFacingToolName:I,userFacingToolNameBackgroundColor:B,isTransparentWrapper:p}=S,C;if(K[4]!==M.resolvedToolUseIDs||K[5]!==_.id)C=M.resolvedToolUseIDs.has(_.id),K[4]=M.resolvedToolUseIDs,K[5]=_.id,K[6]=C;else C=K[6];let g=C,F;if(K[7]!==O||K[8]!==g||K[9]!==_.id)F=!O.has(_.id)&&!g,K[7]=O,K[8]=g,K[9]=_.id,K[10]=F;else F=K[10];let U=F,c=f?.toolUseId===_.id;if(p){if(U||g)return null;let l;if(K[11]!==J||K[12]!==X||K[13]!==M||K[14]!==_.id||K[15]!==w||K[16]!==P||K[17]!==R||K[18]!==Y||K[19]!==A)l=w4K(R,Y,M,_.id,w,{verbose:A,inProgressToolCallCount:J,isTranscriptMode:X},P),K[11]=J,K[12]=X,K[13]=M,K[14]=_.id,K[15]=w,K[16]=P,K[17]=R,K[18]=Y,K[19]=A,K[20]=l;else l=K[20];let A6;if(K[21]!==D||K[22]!==l)A6=SD.default.createElement(u,{flexDirection:"column",width:"100%",backgroundColor:D},l),K[21]=D,K[22]=l,K[23]=A6;else A6=K[23];return A6}if(I==="")return null;let K6;if(K[24]!==$||K[25]!==x.data||K[26]!==x.success||K[27]!==W||K[28]!==R||K[29]!==A)K6=x.success?qFz(R,x.data,{theme:W,verbose:A,commands:$}):null,K[24]=$,K[25]=x.data,K[26]=x.success,K[27]=W,K[28]=R,K[29]=A,K[30]=K6;else K6=K[30];let t=K6;if(t===null)return null;let q6=z?1:0,e=O1(I)+(H?2:0),i;if(K[31]!==U||K[32]!==g||K[33]!==M.erroredToolUseIDs||K[34]!==_.id||K[35]!==j||K[36]!==H)i=H&&(U?SD.default.createElement(u,{minWidth:2},SD.default.createElement(k,{dimColor:U},A_)):SD.default.createElement(Oo,{shouldAnimate:j,isUnresolved:!g,isError:M.erroredToolUseIDs.has(_.id)})),K[31]=U,K[32]=g,K[33]=M.erroredToolUseIDs,K[34]=_.id,K[35]=j,K[36]=H,K[37]=i;else i=K[37];let $6=B?"inverseText":void 0,M6;if(K[38]!==$6||K[39]!==I||K[40]!==B)M6=SD.default.createElement(u,{flexShrink:0},SD.default.createElement(k,{bold:!0,wrap:"truncate-end",backgroundColor:B,color:$6},I)),K[38]=$6,K[39]=I,K[40]=B,K[41]=M6;else M6=K[41];let j6;if(K[42]!==t)j6=t!==""&&SD.default.createElement(u,{flexWrap:"nowrap"},SD.default.createElement(k,null,"(",t,")")),K[42]=t,K[43]=j6;else j6=K[43];let G6;if(K[44]!==x.data||K[45]!==x.success||K[46]!==R)G6=x.success&&R.renderToolUseTag&&R.renderToolUseTag(x.data),K[44]=x.data,K[45]=x.success,K[46]=R,K[47]=G6;else G6=K[47];let w6;if(K[48]!==j6||K[49]!==G6||K[50]!==e||K[51]!==i||K[52]!==M6)w6=SD.default.createElement(u,{flexDirection:"row",flexWrap:"nowrap",minWidth:e},i,M6,j6,G6),K[48]=j6,K[49]=G6,K[50]=e,K[51]=i,K[52]=M6,K[53]=w6;else w6=K[53];let o;if(K[54]!==J||K[55]!==v||K[56]!==!1||K[57]!==U||K[58]!==g||K[59]!==X||K[60]!==c||K[61]!==M||K[62]!==_.id||K[63]!==w||K[64]!==P||K[65]!==R||K[66]!==Y||K[67]!==A)o=!g&&!U&&(c?SD.default.createElement(s8,{height:1},SD.default.createElement(k,{dimColor:!0},"Waiting for permission…")):w4K(R,Y,M,_.id,w,{verbose:A,inProgressToolCallCount:J,isTranscriptMode:X},P)),K[54]=J,K[55]=v,K[56]=!1,K[57]=U,K[58]=g,K[59]=X,K[60]=c,K[61]=M,K[62]=_.id,K[63]=w,K[64]=P,K[65]=R,K[66]=Y,K[67]=A,K[68]=o;else o=K[68];let s;if(K[69]!==U||K[70]!==g||K[71]!==R)s=!g&&U&&KFz(R),K[69]=U,K[70]=g,K[71]=R,K[72]=s;else s=K[72];let a;if(K[73]!==w6||K[74]!==o||K[75]!==s)a=SD.default.createElement(u,{flexDirection:"column"},w6,o,s),K[73]=w6,K[74]=o,K[75]=s,K[76]=a;else a=K[76];let n;if(K[77]!==D||K[78]!==a||K[79]!==q6)n=SD.default.createElement(u,{flexDirection:"row",justifyContent:"space-between",marginTop:q6,width:"100%",backgroundColor:D},a),K[77]=D,K[78]=a,K[79]=q6,K[80]=n;else n=K[80];return n}function sgz(q){return!!q.toolPermissionContext.strippedDangerousRules}function tgz(q){return q.toolPermissionContext.mode}function egz(q){return q.pendingWorkerRequest}function qFz(q,K,{theme:_,verbose:z,commands:Y}){try{let $=q.inputSchema.safeParse(K);if(!$.success)return"";return q.renderToolUseMessage($.data,{theme:_,verbose:z,commands:Y})}catch($){return H6(Error(`Error rendering tool use message for ${q.name}: ${$}`)),""}}function w4K(q,K,_,z,Y,{verbose:$,inProgressToolCallCount:A,isTranscriptMode:O},w){let j=Y.filter((H)=>H.data.type!=="hook_progress");try{let H=q.renderToolUseProgressMessage?.(j,{tools:K,verbose:$,terminalSize:w,inProgressToolCallCount:A??1,isTranscriptMode:O})??null;return SD.default.createElement(SD.default.Fragment,null,SD.default.createElement(Oj6,null,SD.default.createElement(hb8,{hookEvent:"PreToolUse",lookups:_,toolUseID:z,verbose:$,isTranscriptMode:O})),H)}catch(H){return H6(Error(`Error rendering tool use progress message for ${q.name}: ${H}`)),null}}function KFz(q){try{return q.renderToolUseQueuedMessage?.()}catch(K){return H6(Error(`Error rendering tool use queued message for ${q.name}: ${K}`)),null}}var SD;var H4K=y(()=>{q8();t4();zz();Q5();s6();C7();Bq();A4K();E8();gK();NN();Rb8();ea6();Mr1();SD=O6(D6(),1)});function _Fz(q){switch(q){case"completed":return"success";case"failed":return"error";case"killed":return"warning";default:return"text"}}function J4K(q){let K=z6(12),{addMargin:_,param:z}=q,{text:Y}=z,$;if(K[0]!==Y)$=o4(Y,"summary"),K[0]=Y,K[1]=$;else $=K[1];let A=$;if(!A)return null;let O;if(K[2]!==Y){let X=o4(Y,"status");O=_Fz(X),K[2]=Y,K[3]=O}else O=K[3];let w=O,j=_?1:0,H;if(K[4]!==w)H=wj6.createElement(k,{color:w},A_),K[4]=w,K[5]=H;else H=K[5];let J;if(K[6]!==A||K[7]!==H)J=wj6.createElement(k,null,H," ",A),K[6]=A,K[7]=H,K[8]=J;else J=K[8];let M;if(K[9]!==j||K[10]!==J)M=wj6.createElement(u,{marginTop:j},J),K[9]=j,K[10]=J,K[11]=M;else M=K[11];return M}var wj6;var M4K=y(()=>{q8();zz();s6();i1();wj6=O6(D6(),1)});function Cb8(q){let K=z6(8),{param:_,addMargin:z}=q,{text:Y}=_,$;if(K[0]!==Y)$=o4(Y,"bash-input"),K[0]=Y,K[1]=$;else $=K[1];let A=$;if(!A)return null;let O=z?1:0,w;if(K[2]===Symbol.for("react.memo_cache_sentinel"))w=jj6.createElement(k,{color:"bashBorder"},"! "),K[2]=w;else w=K[2];let j;if(K[3]!==A)j=jj6.createElement(k,{color:"text"},A),K[3]=A,K[4]=j;else j=K[4];let H;if(K[5]!==O||K[6]!==j)H=jj6.createElement(u,{flexDirection:"row",marginTop:O,backgroundColor:"bashMessageBackgroundColor",paddingRight:1},w,j),K[5]=O,K[6]=j,K[7]=H;else H=K[7];return H}var jj6;var Xr1=y(()=>{q8();s6();i1();jj6=O6(D6(),1)});function Hj6(q){let K=z6(10),{elapsedTimeSeconds:_,timeoutMs:z}=q;if(_===void 0&&!z)return null;let Y;if(K[0]!==z)Y=z?I5(z,{hideTrailingZeros:!0}):void 0,K[0]=z,K[1]=Y;else Y=K[1];let $=Y;if(_===void 0){let J=`(timeout ${$})`,M;if(K[2]!==J)M=bb8.default.createElement(k,{dimColor:!0},J),K[2]=J,K[3]=M;else M=K[3];return M}let A=_*1000,O;if(K[4]!==A)O=I5(A),K[4]=A,K[5]=O;else O=K[5];let w=O;if($){let J=`(${w} · timeout ${$})`,M;if(K[6]!==J)M=bb8.default.createElement(k,{dimColor:!0},J),K[6]=J,K[7]=M;else M=K[7];return M}let j=`(${w})`,H;if(K[8]!==j)H=bb8.default.createElement(k,{dimColor:!0},j),K[8]=j,K[9]=H;else H=K[9];return H}var bb8;var xb8=y(()=>{q8();s6();U7();bb8=O6(D6(),1)});function zFz(q){if(!q.match(/<sandbox_violations>([\s\S]*?)<\/sandbox_violations>/))return{cleanedStderr:q};return{cleanedStderr:CL8(q).trim()}}function YFz(q){let K=q.match(X4K);if(!K)return{cleanedStderr:q,cwdResetWarning:null};let _=K[1]??null;return{cleanedStderr:q.replace(X4K,"").trim(),cwdResetWarning:_}}function Jj6(q){let K=z6(34),{content:_,verbose:z,timeoutMs:Y}=q,{stdout:$,stderr:A,isImage:O,returnCodeInterpretation:w,noOutputExpected:j,backgroundTaskId:H}=_,J=$===void 0?"":$,M=A===void 0?"":A,X,P,W,D,f,G,Z;if(K[0]!==O||K[1]!==M||K[2]!==J||K[3]!==z){Z=Symbol.for("react.early_return_sentinel");q:{let{cleanedStderr:S}=zFz(M);if({cleanedStderr:W,cwdResetWarning:P}=YFz(S),O){let R;if(K[11]===Symbol.for("react.memo_cache_sentinel"))R=Kk.default.createElement(s8,{height:1},Kk.default.createElement(k,{dimColor:!0},"[Image data detected and sent to Claude]")),K[11]=R;else R=K[11];Z=R;break q}if(X=u,D="column",K[12]!==J||K[13]!==z)f=J!==""?Kk.default.createElement(uL,{content:J,verbose:z}):null,K[12]=J,K[13]=z,K[14]=f;else f=K[14];G=W.trim()!==""?Kk.default.createElement(uL,{content:W,verbose:z,isError:!0}):null}K[0]=O,K[1]=M,K[2]=J,K[3]=z,K[4]=X,K[5]=P,K[6]=W,K[7]=D,K[8]=f,K[9]=G,K[10]=Z}else X=K[4],P=K[5],W=K[6],D=K[7],f=K[8],G=K[9],Z=K[10];if(Z!==Symbol.for("react.early_return_sentinel"))return Z;let T;if(K[15]!==P)T=P?Kk.default.createElement(s8,null,Kk.default.createElement(k,{dimColor:!0},P)):null,K[15]=P,K[16]=T;else T=K[16];let v;if(K[17]!==H||K[18]!==P||K[19]!==j||K[20]!==w||K[21]!==W||K[22]!==J)v=J===""&&W.trim()===""&&!P?Kk.default.createElement(s8,{height:1},Kk.default.createElement(k,{dimColor:!0},H?Kk.default.createElement(Kk.default.Fragment,null,"Running in the background"," ",Kk.default.createElement(t8,{shortcut:"↓",action:"manage",parens:!0})):w||(j?"Done":"(No output)"))):null,K[17]=H,K[18]=P,K[19]=j,K[20]=w,K[21]=W,K[22]=J,K[23]=v;else v=K[23];let V;if(K[24]!==Y)V=Y&&Kk.default.createElement(s8,null,Kk.default.createElement(Hj6,{timeoutMs:Y})),K[24]=Y,K[25]=V;else V=K[25];let E;if(K[26]!==X||K[27]!==V||K[28]!==D||K[29]!==f||K[30]!==G||K[31]!==T||K[32]!==v)E=Kk.default.createElement(X,{flexDirection:D},f,G,T,v,V),K[26]=X,K[27]=V,K[28]=D,K[29]=f,K[30]=G,K[31]=T,K[32]=v,K[33]=E;else E=K[33];return E}var Kk,X4K;var Ib8=y(()=>{q8();rK();gK();Vw6();xb8();s6();Kk=O6(D6(),1),X4K=/(?:^|\n)(Shell cwd was reset to .+)$/});function P4K(q){let K=z6(10),{content:_,verbose:z}=q,Y;if(K[0]!==_){let J=o4(_,"bash-stdout")??"";Y=o4(J,"persisted-output")??J,K[0]=_,K[1]=Y}else Y=K[1];let $=Y,A;if(K[2]!==_)A=o4(_,"bash-stderr")??"",K[2]=_,K[3]=A;else A=K[3];let O=A,w;if(K[4]!==O||K[5]!==$)w={stdout:$,stderr:O},K[4]=O,K[5]=$,K[6]=w;else w=K[6];let j=!!z,H;if(K[7]!==w||K[8]!==j)H=Pr1.createElement(Jj6,{content:w,verbose:j}),K[7]=w,K[8]=j,K[9]=H;else H=K[9];return H}var Pr1;var W4K=y(()=>{q8();Ib8();i1();Pr1=O6(D6(),1)});function D4K(q){let K=z6(19),{addMargin:_,param:z}=q,{text:Y}=z,$;if(K[0]!==Y)$=o4(Y,wP),K[0]=Y,K[1]=$;else $=K[1];let A=$,O;if(K[2]!==Y)O=o4(Y,"command-args"),K[2]=Y,K[3]=O;else O=K[3];let w=O,j=o4(Y,"skill-format")==="true";if(!A)return null;if(j){let D=_?1:0,f;if(K[4]===Symbol.for("react.memo_cache_sentinel"))f=b0.createElement(k,{color:"subtle"},t6.pointer," "),K[4]=f;else f=K[4];let G;if(K[5]!==A)G=b0.createElement(k,null,f,b0.createElement(k,{color:"text"},"Skill(",A,")")),K[5]=A,K[6]=G;else G=K[6];let Z;if(K[7]!==D||K[8]!==G)Z=b0.createElement(u,{flexDirection:"column",marginTop:D,backgroundColor:"userMessageBackground",paddingRight:1},G),K[7]=D,K[8]=G,K[9]=Z;else Z=K[9];return Z}let H;if(K[10]!==w||K[11]!==A)H=[A,w].filter(Boolean),K[10]=w,K[11]=A,K[12]=H;else H=K[12];let J=`/${H.join(" ")}`,M=_?1:0,X;if(K[13]===Symbol.for("react.memo_cache_sentinel"))X=b0.createElement(k,{color:"subtle"},t6.pointer," "),K[13]=X;else X=K[13];let P;if(K[14]!==J)P=b0.createElement(k,null,X,b0.createElement(k,{color:"text"},J)),K[14]=J,K[15]=P;else P=K[15];let W;if(K[16]!==M||K[17]!==P)W=b0.createElement(u,{flexDirection:"column",marginTop:M,backgroundColor:"userMessageBackground",paddingRight:1},P),K[16]=M,K[17]=P,K[18]=W;else W=K[18];return W}var b0;var f4K=y(()=>{q8();bq();RY();s6();i1();b0=O6(D6(),1)});function G4K(q){let K=z6(4),{content:_}=q,z,Y;if(K[0]!==_){Y=Symbol.for("react.early_return_sentinel");q:{let $=o4(_,"local-command-stdout"),A=o4(_,"local-command-stderr");if(!$&&!A){let O;if(K[3]===Symbol.for("react.memo_cache_sentinel"))O=MY.createElement(s8,null,MY.createElement(k,{dimColor:!0},nV)),K[3]=O;else O=K[3];Y=O;break q}if(z=[],$?.trim())z.push(MY.createElement(Z4K,{key:"stdout"},$.trim()));if(A?.trim())z.push(MY.createElement(Z4K,{key:"stderr"},A.trim()))}K[0]=_,K[1]=z,K[2]=Y}else z=K[1],Y=K[2];if(Y!==Symbol.for("react.early_return_sentinel"))return Y;return z}function Z4K(q){let K=z6(5),{children:_}=q;if(_.startsWith(`${NW} `)||_.startsWith(`${Zh} `)){let $;if(K[0]!==_)$=MY.createElement($Fz,null,_),K[0]=_,K[1]=$;else $=K[1];return $}let z;if(K[2]===Symbol.for("react.memo_cache_sentinel"))z=MY.createElement(k,{dimColor:!0}," ⎿ "),K[2]=z;else z=K[2];let Y;if(K[3]!==_)Y=MY.createElement(u,{flexDirection:"row"},z,MY.createElement(u,{flexDirection:"column",flexGrow:1},MY.createElement(AO,null,_))),K[3]=_,K[4]=Y;else Y=K[4];return Y}function $Fz(q){let K=z6(19),{children:_}=q,z=_[0],Y,$,A;if(K[0]!==_){let P=_.indexOf(`
2231
2213
  `),W=P===-1?_.slice(2):_.slice(2,P);$=P===-1?"":_.slice(P+1).trim();let D=W.indexOf(" · ");Y=D===-1?W:W.slice(0,D),A=D===-1?"":W.slice(D),K[0]=_,K[1]=Y,K[2]=$,K[3]=A}else Y=K[1],$=K[2],A=K[3];let O=A,w;if(K[4]!==z)w=MY.createElement(k,{color:"background"},z," "),K[4]=z,K[5]=w;else w=K[5];let j;if(K[6]!==Y)j=MY.createElement(k,{bold:!0},Y),K[6]=Y,K[7]=j;else j=K[7];let H;if(K[8]!==O)H=O&&MY.createElement(k,{dimColor:!0},O),K[8]=O,K[9]=H;else H=K[9];let J;if(K[10]!==w||K[11]!==j||K[12]!==H)J=MY.createElement(k,null,w,j,H),K[10]=w,K[11]=j,K[12]=H,K[13]=J;else J=K[13];let M;if(K[14]!==$)M=$&&MY.createElement(u,{flexDirection:"row"},MY.createElement(k,{dimColor:!0}," ⎿ "),MY.createElement(k,{dimColor:!0},$)),K[14]=$,K[15]=M;else M=K[15];let X;if(K[16]!==J||K[17]!==M)X=MY.createElement(u,{flexDirection:"column"},J,M),K[16]=J,K[17]=M,K[18]=X;else X=K[18];return X}var MY;var T4K=y(()=>{q8();zz();s6();i1();xN();gK();MY=O6(D6(),1)});function AFz(){return IX(["Got it.","Good to know.","Noted."])}function v4K(q){let K=z6(10),{text:_,addMargin:z}=q,Y;if(K[0]!==_)Y=o4(_,"user-memory-input"),K[0]=_,K[1]=Y;else Y=K[1];let $=Y,A;if(K[2]===Symbol.for("react.memo_cache_sentinel"))A=AFz(),K[2]=A;else A=K[2];let O=A;if(!$)return null;let w=z?1:0,j;if(K[3]===Symbol.for("react.memo_cache_sentinel"))j=sL.createElement(k,{color:"remember",backgroundColor:"memoryBackgroundColor"},"#"),K[3]=j;else j=K[3];let H;if(K[4]!==$)H=sL.createElement(u,null,j,sL.createElement(k,{backgroundColor:"memoryBackgroundColor",color:"text"}," ",$," ")),K[4]=$,K[5]=H;else H=K[5];let J;if(K[6]===Symbol.for("react.memo_cache_sentinel"))J=sL.createElement(s8,{height:1},sL.createElement(k,{dimColor:!0},O)),K[6]=J;else J=K[6];let M;if(K[7]!==w||K[8]!==H)M=sL.createElement(u,{flexDirection:"column",marginTop:w,width:"100%"},H,J),K[7]=w,K[8]=H,K[9]=M;else M=K[9];return M}var sL;var k4K=y(()=>{q8();po();s6();i1();gK();sL=O6(D6(),1)});function ub8(q){let K=z6(6),{addMargin:_,planContent:z}=q,Y=_?1:0,$;if(K[0]===Symbol.for("react.memo_cache_sentinel"))$=to.createElement(u,{marginBottom:1},to.createElement(k,{bold:!0,color:"planMode"},"Plan to implement")),K[0]=$;else $=K[0];let A;if(K[1]!==z)A=to.createElement(AO,null,z),K[1]=z,K[2]=A;else A=K[2];let O;if(K[3]!==Y||K[4]!==A)O=to.createElement(u,{flexDirection:"column",borderStyle:"round",borderColor:"planMode",marginTop:Y,paddingX:1},$,A),K[3]=Y,K[4]=A,K[5]=O;else O=K[5];return O}var to;var Wr1=y(()=>{q8();s6();xN();to=O6(D6(),1)});function N4K(){return eo.useContext(V4K)}function y4K(q){let K=z6(9),{isFirst:_,useBriefLayout:z,children:Y}=q,$=z?0:OFz,A=$*2,O;if(K[0]!==_||K[1]!==A)O={isQueued:!0,isFirst:_,paddingWidth:A},K[0]=_,K[1]=A,K[2]=O;else O=K[2];let w=O,j;if(K[3]!==Y||K[4]!==$)j=eo.createElement(u,{paddingX:$},Y),K[3]=Y,K[4]=$,K[5]=j;else j=K[5];let H;if(K[6]!==j||K[7]!==w)H=eo.createElement(V4K.Provider,{value:w},j),K[6]=j,K[7]=w,K[8]=H;else H=K[8];return H}var eo,V4K,OFz=2;var Dr1=y(()=>{q8();s6();eo=O6(D6(),1),V4K=eo.createContext(void 0)});function mb8(q,K=new Date){let _=new Date(q);if(Number.isNaN(_.getTime()))return"";let z=wFz(),Y=E4K(K)-E4K(_),$=Math.round(Y/86400000);if($===0)return _.toLocaleTimeString(z,{hour:"numeric",minute:"2-digit"});if($>0&&$<7)return _.toLocaleString(z,{weekday:"long",hour:"numeric",minute:"2-digit"});return _.toLocaleString(z,{weekday:"long",month:"short",day:"numeric",hour:"numeric",minute:"2-digit"})}function wFz(){let q=process.env.LC_ALL||process.env.LC_TIME||process.env.LANG||"";if(!q||q==="C"||q==="POSIX")return;let K=q.split(".")[0].split("@")[0];if(!K)return;let _=K.replaceAll("_","-");try{return new Intl.DateTimeFormat(_),_}catch{return}}function E4K(q){return new Date(q.getFullYear(),q.getMonth(),q.getDate()).getTime()}function R4K(q){let K=z6(31),{text:_,useBriefLayout:z,timestamp:Y}=q,$=N4K()?.isQueued??!1,O=L4K.useContext(Qr)?"suggestion":"subtle";if(z){let M;if(K[0]!==Y)M=Y?mb8(Y):"",K[0]=Y,K[1]=M;else M=K[1];let X=M,P=$?"subtle":"briefLabelYou",W;if(K[2]!==P)W=kw.createElement(k,{color:P},"You"),K[2]=P,K[3]=W;else W=K[3];let D;if(K[4]!==X)D=X?kw.createElement(k,{dimColor:!0}," ",X):null,K[4]=X,K[5]=D;else D=K[5];let f;if(K[6]!==W||K[7]!==D)f=kw.createElement(u,{flexDirection:"row"},W,D),K[6]=W,K[7]=D,K[8]=f;else f=K[8];let G=$?"subtle":"text",Z;if(K[9]!==G||K[10]!==_)Z=kw.createElement(k,{color:G},_),K[9]=G,K[10]=_,K[11]=Z;else Z=K[11];let T;if(K[12]!==f||K[13]!==Z)T=kw.createElement(u,{flexDirection:"column",paddingLeft:2},f,Z),K[12]=f,K[13]=Z,K[14]=T;else T=K[14];return T}let w,j;if(K[15]!==O||K[16]!==_){j=Symbol.for("react.early_return_sentinel");q:{let M=qr()?DT8(_):[];if(M.length===0){let P;if(K[19]!==O)P=kw.createElement(k,{color:O},t6.pointer," "),K[19]=O,K[20]=P;else P=K[20];let W;if(K[21]!==_)W=kw.createElement(k,{color:"text"},_),K[21]=_,K[22]=W;else W=K[22];let D;if(K[23]!==P||K[24]!==W)D=kw.createElement(k,null,P,W),K[23]=P,K[24]=W,K[25]=D;else D=K[25];j=D;break q}w=[];let X=0;for(let P of M){if(P.start>X)w.push(kw.createElement(k,{key:`plain-${X}`,color:"text"},_.slice(X,P.start)));for(let W=P.start;W<P.end;W++)w.push(kw.createElement(k,{key:`rb-${W}`,color:PL(W-P.start)},_[W]));X=P.end}if(X<_.length)w.push(kw.createElement(k,{key:`plain-${X}`,color:"text"},_.slice(X)))}K[15]=O,K[16]=_,K[17]=w,K[18]=j}else w=K[17],j=K[18];if(j!==Symbol.for("react.early_return_sentinel"))return j;let H;if(K[26]!==O)H=kw.createElement(k,{color:O},t6.pointer," "),K[26]=O,K[27]=H;else H=K[27];let J;if(K[28]!==w||K[29]!==H)J=kw.createElement(k,null,H,w),K[28]=w,K[29]=H,K[30]=J;else J=K[30];return J}var kw,L4K;var h4K=y(()=>{q8();bq();Dr1();s6();WL();NN();kw=O6(D6(),1),L4K=O6(D6(),1)});function C4K({addMargin:q,param:{text:K},isTranscriptMode:_,timestamp:z}){let Y=P8((H)=>H.isBriefOnly),$=P8((H)=>H.viewingAgentTaskId),A=zK6.useMemo(()=>i6(process.env.CLAUDE_CODE_BRIEF),[]),O=(xk()||sy()&&(A||g8("tengu_kairos_brief",!1)))&&Y&&!_&&!$,w=zK6.useMemo(()=>{if(K.length<=jFz)return K;let H=K.slice(0,S4K),J=K.slice(-HFz),M=G$(K,`
2232
2214
  `,S4K)-G$(J,`
2233
2215
  `);return`${H}
@@ -16687,5 +16669,5 @@ Usage: claude --remote "your task description"`,()=>xK(1));d("tengu_remote_creat
16687
16669
  `));await Zo1();let{teleportWithProgress:T3}=await Promise.resolve().then(() => (wq5(),Oq5)),X5=await T3(N5,A6);eb6({sessionId:A6}),g7=X5.messages}catch(r7){if(r7 instanceof AP)process.stderr.write(r7.formattedMessage+`
16688
16670
  `);else H6(r7),process.stderr.write($8.red(`Error: ${d6(r7)}
16689
16671
  `));await xK(1)}}}if(G4){let r7=G4;try{let RK=performance.now(),T3=await MK6(ZK??r7,void 0);if(!T3)return d("tengu_session_resumed",{entrypoint:"cli_flag",success:!1}),await od(N5,`No conversation found with session ID: ${r7}`);let X5=ZK?.fullPath??T3.fullPath;if(z4=await g$7(T3,{forkSession:!!H.forkSession,sessionIdOverride:r7,transcriptPath:X5},fO),z4.restoredAgentDef)S4=z4.restoredAgentDef;d("tengu_session_resumed",{entrypoint:"cli_flag",success:!0,resume_duration_ms:Math.round(performance.now()-RK)})}catch(RK){d("tengu_session_resumed",{entrypoint:"cli_flag",success:!1}),H6(RK),await od(N5,`Failed to resume session ${r7}`)}}if(p)try{let r7=await p,RK=$7(r7,(T3)=>!T3.success);if(RK>0)process.stderr.write($8.yellow(`Warning: ${RK}/${r7.length} file(s) failed to download.
16690
- `))}catch(r7){return await od(N5,`Error downloading files: ${d6(r7)}`)}let VK=z4??(Array.isArray(g7)?{messages:g7,fileHistorySnapshots:void 0,agentName:void 0,agentColor:void 0,restoredAgentDef:S4,initialState:H$,contentReplacements:void 0}:void 0);if(VK)hl8(H),Sl8(H),await PK8(N5,{getFpsMetrics:qK,stats:Xq,initialState:VK.initialState},{...Iz,mainThreadAgentDefinition:VK.restoredAgentDef??S4,initialMessages:VK.messages,initialFileHistorySnapshots:VK.fileHistorySnapshots,initialContentReplacements:VK.contentReplacements,initialAgentName:VK.agentName,initialAgentColor:VK.agentColor},fM6);else await X65(N5,{getFpsMetrics:qK,stats:Xq,initialState:H$},As(r1()),{...Iz,initialSearchQuery:Tq,forkSession:H.forkSession,filterByPr:W9})}else{let J1=oO&&nY.length===0?oO:void 0;U4("action_after_hooks"),hl8(H),Sl8(H);let g7=null;if(H.deepLinkOrigin)d("tengu_deep_link_opened",{has_prefill:Boolean(H.prefill),has_repo:Boolean(H.deepLinkRepo)}),g7=fw(V15({cwd:Z8(),prefillLength:H.prefill?.length,repo:H.deepLinkRepo,lastFetch:H.deepLinkLastFetch!==void 0?new Date(H.deepLinkLastFetch):void 0}),"warning");else if(H.prefill)g7=fw("Launched with a pre-filled prompt — review it before pressing Enter.","warning");let z4=g7?[g7,...nY]:nY.length>0?nY:void 0;await PK8(N5,{getFpsMetrics:qK,stats:Xq,initialState:H$},{...Iz,initialMessages:z4,pendingHookMessages:J1},fM6)}}).version(`${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@ppcode.dev/ppcode",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.92",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION} (ppcode)`,"-v, --version","Output the version number"),K.option("-w, --worktree [name]","Create a new git worktree for this session (optionally specify a name)"),K.option("--tmux","Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux."),tq6())K.addOption(new G3("--advisor <model>","Enable the server-side advisor tool with the specified model (alias or full ID).").hideHelp());K.addOption(new G3("--enable-auto-mode","Opt in to auto mode").hideHelp()),K.addOption(new G3("--brief","Enable SendUserMessage tool for agent-to-user communication")),K.addOption(new G3("--channels <servers...>","MCP servers whose channel notifications (inbound push) should register this session. Space-separated server names.").hideHelp()),K.addOption(new G3("--dangerously-load-development-channels <servers...>","Load channel servers not on the approved allowlist. For local channel development only. Shows a confirmation dialog at startup.").hideHelp()),K.addOption(new G3("--agent-id <id>","Teammate agent ID").hideHelp()),K.addOption(new G3("--agent-name <name>","Teammate display name").hideHelp()),K.addOption(new G3("--team-name <name>","Team name for swarm coordination").hideHelp()),K.addOption(new G3("--agent-color <color>","Teammate UI color").hideHelp()),K.addOption(new G3("--plan-mode-required","Require plan mode before implementation").hideHelp()),K.addOption(new G3("--parent-session-id <id>","Parent session ID for analytics correlation").hideHelp()),K.addOption(new G3("--teammate-mode <mode>",'How to spawn teammates: "tmux", "in-process", or "auto"').choices(["auto","tmux","in-process"]).hideHelp()),K.addOption(new G3("--agent-type <type>","Custom agent type for this teammate").hideHelp()),K.addOption(new G3("--sdk-url <url>","Use remote WebSocket endpoint for SDK I/O streaming (only with -p and stream-json format)").hideHelp()),K.addOption(new G3("--teleport [session]","Resume a teleport session, optionally specify session ID").hideHelp()),K.addOption(new G3("--remote [description]","Create a remote session with the given description").hideHelp()),K.addOption(new G3("--remote-control [name]","Start an interactive session with Remote Control enabled (optionally named)").argParser((j)=>j||!0).hideHelp()),K.addOption(new G3("--rc [name]","Alias for --remote-control").argParser((j)=>j||!0).hideHelp()),U4("run_main_options_built");let _=process.argv.includes("-p")||process.argv.includes("--print"),z=process.argv.some((j)=>j.startsWith("cc://")||j.startsWith("cc+unix://"));if(_&&!z)return U4("run_before_parse"),await K.parseAsync(process.argv),U4("run_after_parse"),K;let Y=K.command("mcp").description("Configure and manage MCP servers").configureHelp(q()).enablePositionalOptions();if(Y.command("serve").description("Start the ppcode MCP server").option("-d, --debug","Enable debug mode",()=>!0).option("--verbose","Override verbose mode setting from config",()=>!0).action(async({debug:j,verbose:H})=>{let{mcpServeHandler:J}=await Promise.resolve().then(() => (O36(),A36));await J({debug:j,verbose:H})}),L15(Y),ir())h15(Y);Y.command("remove <name>").description("Remove an MCP server").option("-s, --scope <scope>","Configuration scope (local, user, or project) - if not specified, removes from whichever scope it exists in").action(async(j,H)=>{let{mcpRemoveHandler:J}=await Promise.resolve().then(() => (O36(),A36));await J(j,H)}),Y.command("list").description("List configured MCP servers. Note: The workspace trust dialog is skipped and stdio servers from .mcp.json are spawned for health checks. Only use this command in directories you trust.").action(async()=>{let{mcpListHandler:j}=await Promise.resolve().then(() => (O36(),A36));await j()}),Y.command("get <name>").description("Get details about an MCP server. Note: The workspace trust dialog is skipped and stdio servers from .mcp.json are spawned for health checks. Only use this command in directories you trust.").action(async(j)=>{let{mcpGetHandler:H}=await Promise.resolve().then(() => (O36(),A36));await H(j)}),Y.command("add-json <name> <json>").description("Add an MCP server (stdio or SSE) with a JSON string").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").option("--client-secret","Prompt for OAuth client secret (or set MCP_CLIENT_SECRET env var)").action(async(j,H,J)=>{let{mcpAddJsonHandler:M}=await Promise.resolve().then(() => (O36(),A36));await M(j,H,J)}),Y.command("add-from-claude-desktop").description("Import MCP servers from Claude Desktop (Mac and WSL only)").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").action(async(j)=>{let{mcpAddFromDesktopHandler:H}=await Promise.resolve().then(() => (O36(),A36));await H(j)}),Y.command("reset-project-choices").description("Reset all approved and rejected project-scoped (.mcp.json) servers within this project").action(async()=>{let{mcpResetChoicesHandler:j}=await Promise.resolve().then(() => (O36(),A36));await j()});let $=K.command("auth").description("Manage authentication").configureHelp(q());$.command("login").description("Sign in to your Anthropic account").option("--email <email>","Pre-populate email address on the login page").option("--sso","Force SSO login flow").option("--console","Use Anthropic Console (API usage billing) instead of Claude subscription").option("--claudeai","Use Claude subscription (default)").action(async({email:j,sso:H,console:J,claudeai:M})=>{let{authLogin:X}=await Promise.resolve().then(() => (iy6(),QS8));await X({email:j,sso:H,console:J,claudeai:M})}),$.command("status").description("Show authentication status").option("--json","Output as JSON (default)").option("--text","Output as human-readable text").action(async(j)=>{let{authStatus:H}=await Promise.resolve().then(() => (iy6(),QS8));await H(j)}),$.command("logout").description("Log out from your Anthropic account").action(async()=>{let{authLogout:j}=await Promise.resolve().then(() => (iy6(),QS8));await j()});let A=()=>new G3("--cowork","Use cowork_plugins directory").hideHelp(),O=K.command("plugin").alias("plugins").description("Manage ppcode plugins").configureHelp(q());O.command("validate <path>").description("Validate a plugin or marketplace manifest").addOption(A()).action(async(j,H)=>{let{pluginValidateHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),O.command("list").description("List installed plugins").option("--json","Output as JSON").option("--available","Include available plugins from marketplaces (requires --json)").addOption(A()).action(async(j)=>{let{pluginListHandler:H}=await Promise.resolve().then(() => (Ax(),$x));await H(j)});let w=O.command("marketplace").description("Manage ppcode marketplaces").configureHelp(q());if(w.command("add <source>").description("Add a marketplace from a URL, path, or GitHub repo").addOption(A()).option("--sparse <paths...>","Limit checkout to specific directories via git sparse-checkout (for monorepos). Example: --sparse .claude-plugin plugins").option("--scope <scope>","Where to declare the marketplace: user (default), project, or local").action(async(j,H)=>{let{marketplaceAddHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),w.command("list").description("List all configured marketplaces").option("--json","Output as JSON").addOption(A()).action(async(j)=>{let{marketplaceListHandler:H}=await Promise.resolve().then(() => (Ax(),$x));await H(j)}),w.command("remove <name>").alias("rm").description("Remove a configured marketplace").addOption(A()).action(async(j,H)=>{let{marketplaceRemoveHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),w.command("update [name]").description("Update marketplace(s) from their source - updates all if no name specified").addOption(A()).action(async(j,H)=>{let{marketplaceUpdateHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),O.command("install <plugin>").alias("i").description("Install a plugin from available marketplaces (use plugin@marketplace for specific marketplace)").option("-s, --scope <scope>","Installation scope: user, project, or local","user").addOption(A()).action(async(j,H)=>{let{pluginInstallHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),O.command("uninstall <plugin>").alias("remove").alias("rm").description("Uninstall an installed plugin").option("-s, --scope <scope>","Uninstall from scope: user, project, or local","user").option("--keep-data","Preserve the plugin's persistent data directory (~/.claude/plugins/data/{id}/)").addOption(A()).action(async(j,H)=>{let{pluginUninstallHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),O.command("enable <plugin>").description("Enable a disabled plugin").option("-s, --scope <scope>",`Installation scope: ${e0.join(", ")} (default: auto-detect)`).addOption(A()).action(async(j,H)=>{let{pluginEnableHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),O.command("disable [plugin]").description("Disable an enabled plugin").option("-a, --all","Disable all enabled plugins").option("-s, --scope <scope>",`Installation scope: ${e0.join(", ")} (default: auto-detect)`).addOption(A()).action(async(j,H)=>{let{pluginDisableHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),O.command("update <plugin>").description("Update a plugin to the latest version (restart required to apply)").option("-s, --scope <scope>",`Installation scope: ${rH6.join(", ")} (default: user)`).addOption(A()).action(async(j,H)=>{let{pluginUpdateHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),K.command("setup-token").description("Set up a long-lived authentication token (requires Claude subscription)").action(async()=>{let[{setupTokenHandler:j},{createRoot:H}]=await Promise.all([Promise.resolve().then(() => (El8(),yl8)),Promise.resolve().then(() => (s6(),Bl6))]),J=await H(Jo(!1));await j(J)}),K.command("agents").description("List configured agents").option("--setting-sources <sources>","Comma-separated list of setting sources to load (user, project, local).").action(async()=>{let{agentsHandler:j}=await Promise.resolve().then(() => (Eq5(),yq5));await j(),process.exit(0)}),IB8()!=="disabled"){let j=K.command("auto-mode").description("Inspect auto mode classifier configuration");j.command("defaults").description("Print the default auto mode environment, allow, and deny rules as JSON").action(async()=>{let{autoModeDefaultsHandler:H}=await Promise.resolve().then(() => (Rl8(),Ll8));H(),process.exit(0)}),j.command("config").description("Print the effective auto mode config as JSON: your settings where set, defaults otherwise").action(async()=>{let{autoModeConfigHandler:H}=await Promise.resolve().then(() => (Rl8(),Ll8));H(),process.exit(0)}),j.command("critique").description("Get AI feedback on your custom auto mode rules").option("--model <model>","Override which model is used").action(async(H)=>{let{autoModeCritiqueHandler:J}=await Promise.resolve().then(() => (Rl8(),Ll8));await J(H),process.exit()})}return K.command("remote-control",{hidden:!0}).alias("rc").description("Connect your local environment for remote-control sessions via claude.ai/code").action(async()=>{let{bridgeMain:j}=await Promise.resolve().then(() => (U_7(),F_7));await j(process.argv.slice(3))}),K.command("doctor").description("Check the health of your ppcode auto-updater. Note: The workspace trust dialog is skipped and stdio servers from .mcp.json are spawned for health checks. Only use this command in directories you trust.").action(async()=>{let[{doctorHandler:j},{createRoot:H}]=await Promise.all([Promise.resolve().then(() => (El8(),yl8)),Promise.resolve().then(() => (s6(),Bl6))]),J=await H(Jo(!1));await j(J)}),K.command("update").alias("upgrade").description("Check for updates and install if available").action(async()=>{let{update:j}=await Promise.resolve().then(() => (hq5(),Rq5));await j()}),K.command("install [target]").description("Install ppcode native build. Use [target] to specify version (stable, latest, or specific version)").option("--force","Force installation even if already installed").action(async(j,H)=>{let{installHandler:J}=await Promise.resolve().then(() => (El8(),yl8));await J(j,H)}),U4("run_before_parse"),await K.parseAsync(process.argv),U4("run_after_parse"),U4("main_after_run"),zI6(),K}async function ZsY({hasInitialPrompt:q,hasStdin:K,verbose:_,debug:z,debugToStderr:Y,print:$,outputFormat:A,inputFormat:O,numAllowedTools:w,numDisallowedTools:j,mcpClientCount:H,worktreeEnabled:J,skipWebFetchPreflight:M,githubActionInputs:X,dangerouslySkipPermissionsPassed:P,permissionMode:W,modeIsBypass:D,allowDangerouslySkipPermissionsPassed:f,systemPromptFlag:G,appendSystemPromptFlag:Z,thinkingConfig:T,assistantActivationPath:v}){try{d("tengu_init",{entrypoint:"claude",hasInitialPrompt:q,hasStdin:K,verbose:_,debug:z,debugToStderr:Y,print:$,outputFormat:A,inputFormat:O,numAllowedTools:w,numDisallowedTools:j,mcpClientCount:H,worktree:J,skipWebFetchPreflight:M,...X&&{githubActionInputs:X},dangerouslySkipPermissionsPassed:P,permissionMode:W,modeIsBypass:D,inProtectedNamespace:Ik(),allowDangerouslySkipPermissionsPassed:f,thinkingType:T.type,...G&&{systemPromptFlag:G},...Z&&{appendSystemPromptFlag:Z},is_simple:f9()||void 0,is_coordinator:void 0,...v&&{assistantActivationPath:v},autoUpdatesChannel:N7().autoUpdatesChannel??"latest",...{}})}catch(V){H6(V)}}function hl8(q){}function Sl8(q){let K=q.brief,_=i6(process.env.CLAUDE_CODE_BRIEF);if(!K&&!_)return;let{isBriefEntitled:z}=(dQ(),Eq(IK6)),Y=z();if(Y)tp(!0);d("tengu_brief_mode_enabled",{enabled:Y,gated:!Y,source:_?"env":"flag"})}function GsY(){(process.stderr.isTTY?process.stderr:process.stdout.isTTY?process.stdout:void 0)?.write(Gu)}function TsY(q){if(typeof q!=="object"||q===null)return{};let K=q,_=K.teammateMode;return{agentId:typeof K.agentId==="string"?K.agentId:void 0,agentName:typeof K.agentName==="string"?K.agentName:void 0,teamName:typeof K.teamName==="string"?K.teamName:void 0,agentColor:typeof K.agentColor==="string"?K.agentColor:void 0,planModeRequired:typeof K.planModeRequired==="boolean"?K.planModeRequired:void 0,parentSessionId:typeof K.parentSessionId==="string"?K.parentSessionId:void 0,teammateMode:_==="auto"||_==="tmux"||_==="in-process"?_:void 0,agentType:typeof K.agentType==="string"?K.agentType:void 0}}var Sq5=()=>(AY(),Eq(SV1)),KsY=()=>Eq(x7K),_sY=()=>(s26(),Eq(Ri1)),zsY=null,YsY,sA7=11;var CA7=y(()=>{Cx();VK1();kv1();a_7();x3();po6();c71();Fu();H3();jN();Kz7();Ib();rtK();o1();atK();hx8();b56();yV1();ZD();aN6();GU();BD();eq6();i$();n48();G7();V1();cc6();q0();xf();q48();i1();vK();As6();nC();NF();Ec8();l8();L$7();qeK();H16();o1();k8();xc6();v8();yA();P65();p16();SA7();ZU();PD();bA7();T15();SP();Lo();WJ6();fP();qL6();mA7();m8();A$7();a78();E5();k97();vO();E8();$A7();aq();Yn();yW();fX();Jy();pX();F18();z88();aV();KC();JK6();_K();bA8();U1();Zc();gj();lE6();E15();Sx8();jm();R15();S15();S87();ON6();PD();f0();NJ();Oa6();i$7();fH6();cC();c9();xr();lQ();I7();_8();y8();e7();RA();y18();aT1();tN();a48();kO();v8();b15();I15();m15();p15();g15();U15();d15();l15();i15();o15();s15();H$7();e15();uQ();zw6();EV6();tS6();M0();HG();oY();WK8();bj();XS6();K$();VM();am();WL();f$6();d0();U4("main_tsx_entry");yS7();xCq();YsY=Eq(mK6);U4("main_tsx_imports_loaded");if(AsY())process.exit(1)});process.env.COREPACK_ENABLE_AUTO_PIN="0";if(process.env.CLAUDE_CODE_REMOTE==="true"){let q=process.env.NODE_OPTIONS||"";process.env.NODE_OPTIONS=q?`${q} --max-old-space-size=8192`:"--max-old-space-size=8192"}async function vsY(){let q=process.argv.slice(2);if(q.length===1&&(q[0]==="--version"||q[0]==="-v"||q[0]==="-V")){console.log(`${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@ppcode.dev/ppcode",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.92",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION} (ppcode)`);return}let{profileCheckpoint:K}=await Promise.resolve().then(() => (Cx(),jM7));if(K("cli_entry"),process.argv[2]==="--claude-in-chrome-mcp"){K("cli_claude_in_chrome_mcp_path");let{runClaudeInChromeMcpServer:$}=await Promise.resolve().then(() => (YF1(),zF1));await $();return}else if(process.argv[2]==="--chrome-native-host"){K("cli_chrome_native_host_path");let{runChromeNativeHost:$}=await Promise.resolve().then(() => (PFK(),XFK));await $();return}else if(process.argv[2]==="--computer-use-mcp"){K("cli_computer_use_mcp_path");let{runComputerUseMcpServer:$}=await Promise.resolve().then(() => (rg1(),ig1));await $();return}if(q[0]==="remote-control"||q[0]==="rc"||q[0]==="remote"||q[0]==="sync"||q[0]==="bridge"){K("cli_bridge_path");let{enableConfigs:$}=await Promise.resolve().then(() => (V1(),G16));$();let{getBridgeDisabledReason:A,checkBridgeMinVersion:O}=await Promise.resolve().then(() => (Jd(),nq7)),{BRIDGE_LOGIN_ERROR:w}=await Promise.resolve().then(() => rSK),{bridgeMain:j}=await Promise.resolve().then(() => (U_7(),F_7)),{exitWithError:H}=await Promise.resolve().then(() => fo8),{getClaudeAIOAuthTokens:J}=await Promise.resolve().then(() => (G7(),_L));if(!J()?.accessToken)H(w);let M=await A();if(M)H(`Error: ${M}`);let X=O();if(X)H(X);let{waitForPolicyLimitsToLoad:P,isPolicyAllowed:W}=await Promise.resolve().then(() => (ZD(),dF1));if(await P(),!W("allow_remote_control"))H("Error: Remote Control is disabled by your organization's policy.");await j(q.slice(1));return}if(!1)switch(q[0]){case"ps":case"logs":case"attach":case"kill":default:}if((q.includes("--tmux")||q.includes("--tmux=classic"))&&(q.includes("-w")||q.includes("--worktree")||q.some(($)=>$.startsWith("--worktree=")))){K("cli_tmux_worktree_fast_path");let{enableConfigs:$}=await Promise.resolve().then(() => (V1(),G16));$();let{isWorktreeModeEnabled:A}=await Promise.resolve().then(() => tJK);if(A()){let{execIntoTmuxWorktree:O}=await Promise.resolve().then(() => (d0(),pgK)),w=await O(q);if(w.handled)return;if(w.error){let{exitWithError:j}=await Promise.resolve().then(() => fo8);j(w.error)}}}if(q.length===1&&(q[0]==="--update"||q[0]==="--upgrade"))process.argv=[process.argv[0],process.argv[1],"update"];if(q.includes("--bare"))process.env.CLAUDE_CODE_SIMPLE="1";let{startCapturingEarlyInput:z}=await Promise.resolve().then(() => (cc6(),Zaq));z(),K("cli_before_main_import");let{main:Y}=await Promise.resolve().then(() => (CA7(),bq5));K("cli_after_main_import"),await Y(),K("cli_after_main_complete")}vsY();
16672
+ `))}catch(r7){return await od(N5,`Error downloading files: ${d6(r7)}`)}let VK=z4??(Array.isArray(g7)?{messages:g7,fileHistorySnapshots:void 0,agentName:void 0,agentColor:void 0,restoredAgentDef:S4,initialState:H$,contentReplacements:void 0}:void 0);if(VK)hl8(H),Sl8(H),await PK8(N5,{getFpsMetrics:qK,stats:Xq,initialState:VK.initialState},{...Iz,mainThreadAgentDefinition:VK.restoredAgentDef??S4,initialMessages:VK.messages,initialFileHistorySnapshots:VK.fileHistorySnapshots,initialContentReplacements:VK.contentReplacements,initialAgentName:VK.agentName,initialAgentColor:VK.agentColor},fM6);else await X65(N5,{getFpsMetrics:qK,stats:Xq,initialState:H$},As(r1()),{...Iz,initialSearchQuery:Tq,forkSession:H.forkSession,filterByPr:W9})}else{let J1=oO&&nY.length===0?oO:void 0;U4("action_after_hooks"),hl8(H),Sl8(H);let g7=null;if(H.deepLinkOrigin)d("tengu_deep_link_opened",{has_prefill:Boolean(H.prefill),has_repo:Boolean(H.deepLinkRepo)}),g7=fw(V15({cwd:Z8(),prefillLength:H.prefill?.length,repo:H.deepLinkRepo,lastFetch:H.deepLinkLastFetch!==void 0?new Date(H.deepLinkLastFetch):void 0}),"warning");else if(H.prefill)g7=fw("Launched with a pre-filled prompt — review it before pressing Enter.","warning");let z4=g7?[g7,...nY]:nY.length>0?nY:void 0;await PK8(N5,{getFpsMetrics:qK,stats:Xq,initialState:H$},{...Iz,initialMessages:z4,pendingHookMessages:J1},fM6)}}).version(`${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@ppcode.dev/ppcode",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.92",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION} (ppcode)`,"-v, --version","Output the version number"),K.option("-w, --worktree [name]","Create a new git worktree for this session (optionally specify a name)"),K.option("--tmux","Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux."),tq6())K.addOption(new G3("--advisor <model>","Enable the server-side advisor tool with the specified model (alias or full ID).").hideHelp());K.addOption(new G3("--enable-auto-mode","Opt in to auto mode").hideHelp()),K.addOption(new G3("--brief","Enable SendUserMessage tool for agent-to-user communication")),K.addOption(new G3("--channels <servers...>","MCP servers whose channel notifications (inbound push) should register this session. Space-separated server names.").hideHelp()),K.addOption(new G3("--dangerously-load-development-channels <servers...>","Load channel servers not on the approved allowlist. For local channel development only. Shows a confirmation dialog at startup.").hideHelp()),K.addOption(new G3("--agent-id <id>","Teammate agent ID").hideHelp()),K.addOption(new G3("--agent-name <name>","Teammate display name").hideHelp()),K.addOption(new G3("--team-name <name>","Team name for swarm coordination").hideHelp()),K.addOption(new G3("--agent-color <color>","Teammate UI color").hideHelp()),K.addOption(new G3("--plan-mode-required","Require plan mode before implementation").hideHelp()),K.addOption(new G3("--parent-session-id <id>","Parent session ID for analytics correlation").hideHelp()),K.addOption(new G3("--teammate-mode <mode>",'How to spawn teammates: "tmux", "in-process", or "auto"').choices(["auto","tmux","in-process"]).hideHelp()),K.addOption(new G3("--agent-type <type>","Custom agent type for this teammate").hideHelp()),K.addOption(new G3("--sdk-url <url>","Use remote WebSocket endpoint for SDK I/O streaming (only with -p and stream-json format)").hideHelp()),K.addOption(new G3("--teleport [session]","Resume a teleport session, optionally specify session ID").hideHelp()),K.addOption(new G3("--remote [description]","Create a remote session with the given description").hideHelp()),K.addOption(new G3("--remote-control [name]","Start an interactive session with Remote Control enabled (optionally named)").argParser((j)=>j||!0).hideHelp()),K.addOption(new G3("--rc [name]","Alias for --remote-control").argParser((j)=>j||!0).hideHelp()),U4("run_main_options_built");let _=process.argv.includes("-p")||process.argv.includes("--print"),z=process.argv.some((j)=>j.startsWith("cc://")||j.startsWith("cc+unix://"));if(_&&!z)return U4("run_before_parse"),await K.parseAsync(process.argv),U4("run_after_parse"),K;let Y=K.command("mcp").description("Configure and manage MCP servers").configureHelp(q()).enablePositionalOptions();if(Y.command("serve").description("Start the ppcode MCP server").option("-d, --debug","Enable debug mode",()=>!0).option("--verbose","Override verbose mode setting from config",()=>!0).action(async({debug:j,verbose:H})=>{let{mcpServeHandler:J}=await Promise.resolve().then(() => (O36(),A36));await J({debug:j,verbose:H})}),L15(Y),ir())h15(Y);Y.command("remove <name>").description("Remove an MCP server").option("-s, --scope <scope>","Configuration scope (local, user, or project) - if not specified, removes from whichever scope it exists in").action(async(j,H)=>{let{mcpRemoveHandler:J}=await Promise.resolve().then(() => (O36(),A36));await J(j,H)}),Y.command("list").description("List configured MCP servers. Note: The workspace trust dialog is skipped and stdio servers from .mcp.json are spawned for health checks. Only use this command in directories you trust.").action(async()=>{let{mcpListHandler:j}=await Promise.resolve().then(() => (O36(),A36));await j()}),Y.command("get <name>").description("Get details about an MCP server. Note: The workspace trust dialog is skipped and stdio servers from .mcp.json are spawned for health checks. Only use this command in directories you trust.").action(async(j)=>{let{mcpGetHandler:H}=await Promise.resolve().then(() => (O36(),A36));await H(j)}),Y.command("add-json <name> <json>").description("Add an MCP server (stdio or SSE) with a JSON string").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").option("--client-secret","Prompt for OAuth client secret (or set MCP_CLIENT_SECRET env var)").action(async(j,H,J)=>{let{mcpAddJsonHandler:M}=await Promise.resolve().then(() => (O36(),A36));await M(j,H,J)}),Y.command("add-from-claude-desktop").description("Import MCP servers from Claude Desktop (Mac and WSL only)").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").action(async(j)=>{let{mcpAddFromDesktopHandler:H}=await Promise.resolve().then(() => (O36(),A36));await H(j)}),Y.command("reset-project-choices").description("Reset all approved and rejected project-scoped (.mcp.json) servers within this project").action(async()=>{let{mcpResetChoicesHandler:j}=await Promise.resolve().then(() => (O36(),A36));await j()});let $=K.command("auth").description("Manage authentication").configureHelp(q());$.command("login").description("Sign in to your Anthropic account").option("--email <email>","Pre-populate email address on the login page").option("--sso","Force SSO login flow").option("--console","Use Anthropic Console (API usage billing) instead of Claude subscription").option("--claudeai","Use Claude subscription (default)").action(async({email:j,sso:H,console:J,claudeai:M})=>{let{authLogin:X}=await Promise.resolve().then(() => (iy6(),QS8));await X({email:j,sso:H,console:J,claudeai:M})}),$.command("status").description("Show authentication status").option("--json","Output as JSON (default)").option("--text","Output as human-readable text").action(async(j)=>{let{authStatus:H}=await Promise.resolve().then(() => (iy6(),QS8));await H(j)}),$.command("logout").description("Log out from your Anthropic account").action(async()=>{let{authLogout:j}=await Promise.resolve().then(() => (iy6(),QS8));await j()});let A=()=>new G3("--cowork","Use cowork_plugins directory").hideHelp(),O=K.command("plugin").alias("plugins").description("Manage ppcode plugins").configureHelp(q());O.command("validate <path>").description("Validate a plugin or marketplace manifest").addOption(A()).action(async(j,H)=>{let{pluginValidateHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),O.command("list").description("List installed plugins").option("--json","Output as JSON").option("--available","Include available plugins from marketplaces (requires --json)").addOption(A()).action(async(j)=>{let{pluginListHandler:H}=await Promise.resolve().then(() => (Ax(),$x));await H(j)});let w=O.command("marketplace").description("Manage ppcode marketplaces").configureHelp(q());if(w.command("add <source>").description("Add a marketplace from a URL, path, or GitHub repo").addOption(A()).option("--sparse <paths...>","Limit checkout to specific directories via git sparse-checkout (for monorepos). Example: --sparse .claude-plugin plugins").option("--scope <scope>","Where to declare the marketplace: user (default), project, or local").action(async(j,H)=>{let{marketplaceAddHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),w.command("list").description("List all configured marketplaces").option("--json","Output as JSON").addOption(A()).action(async(j)=>{let{marketplaceListHandler:H}=await Promise.resolve().then(() => (Ax(),$x));await H(j)}),w.command("remove <name>").alias("rm").description("Remove a configured marketplace").addOption(A()).action(async(j,H)=>{let{marketplaceRemoveHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),w.command("update [name]").description("Update marketplace(s) from their source - updates all if no name specified").addOption(A()).action(async(j,H)=>{let{marketplaceUpdateHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),O.command("install <plugin>").alias("i").description("Install a plugin from available marketplaces (use plugin@marketplace for specific marketplace)").option("-s, --scope <scope>","Installation scope: user, project, or local","user").addOption(A()).action(async(j,H)=>{let{pluginInstallHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),O.command("uninstall <plugin>").alias("remove").alias("rm").description("Uninstall an installed plugin").option("-s, --scope <scope>","Uninstall from scope: user, project, or local","user").option("--keep-data","Preserve the plugin's persistent data directory (~/.claude/plugins/data/{id}/)").addOption(A()).action(async(j,H)=>{let{pluginUninstallHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),O.command("enable <plugin>").description("Enable a disabled plugin").option("-s, --scope <scope>",`Installation scope: ${e0.join(", ")} (default: auto-detect)`).addOption(A()).action(async(j,H)=>{let{pluginEnableHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),O.command("disable [plugin]").description("Disable an enabled plugin").option("-a, --all","Disable all enabled plugins").option("-s, --scope <scope>",`Installation scope: ${e0.join(", ")} (default: auto-detect)`).addOption(A()).action(async(j,H)=>{let{pluginDisableHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),O.command("update <plugin>").description("Update a plugin to the latest version (restart required to apply)").option("-s, --scope <scope>",`Installation scope: ${rH6.join(", ")} (default: user)`).addOption(A()).action(async(j,H)=>{let{pluginUpdateHandler:J}=await Promise.resolve().then(() => (Ax(),$x));await J(j,H)}),K.command("setup-token").description("Set up a long-lived authentication token (requires Claude subscription)").action(async()=>{let[{setupTokenHandler:j},{createRoot:H}]=await Promise.all([Promise.resolve().then(() => (El8(),yl8)),Promise.resolve().then(() => (s6(),Bl6))]),J=await H(Jo(!1));await j(J)}),K.command("agents").description("List configured agents").option("--setting-sources <sources>","Comma-separated list of setting sources to load (user, project, local).").action(async()=>{let{agentsHandler:j}=await Promise.resolve().then(() => (Eq5(),yq5));await j(),process.exit(0)}),IB8()!=="disabled"){let j=K.command("auto-mode").description("Inspect auto mode classifier configuration");j.command("defaults").description("Print the default auto mode environment, allow, and deny rules as JSON").action(async()=>{let{autoModeDefaultsHandler:H}=await Promise.resolve().then(() => (Rl8(),Ll8));H(),process.exit(0)}),j.command("config").description("Print the effective auto mode config as JSON: your settings where set, defaults otherwise").action(async()=>{let{autoModeConfigHandler:H}=await Promise.resolve().then(() => (Rl8(),Ll8));H(),process.exit(0)}),j.command("critique").description("Get AI feedback on your custom auto mode rules").option("--model <model>","Override which model is used").action(async(H)=>{let{autoModeCritiqueHandler:J}=await Promise.resolve().then(() => (Rl8(),Ll8));await J(H),process.exit()})}return K.command("remote-control",{hidden:!0}).alias("rc").description("Connect your local environment for remote-control sessions via claude.ai/code").action(async()=>{let{bridgeMain:j}=await Promise.resolve().then(() => (U_7(),F_7));await j(process.argv.slice(3))}),K.command("doctor").description("Check the health of your ppcode auto-updater. Note: The workspace trust dialog is skipped and stdio servers from .mcp.json are spawned for health checks. Only use this command in directories you trust.").action(async()=>{let[{doctorHandler:j},{createRoot:H}]=await Promise.all([Promise.resolve().then(() => (El8(),yl8)),Promise.resolve().then(() => (s6(),Bl6))]),J=await H(Jo(!1));await j(J)}),K.command("update").alias("upgrade").description("Check for updates and install if available").action(async()=>{let{update:j}=await Promise.resolve().then(() => (hq5(),Rq5));await j()}),K.command("install [target]").description("Install ppcode native build. Use [target] to specify version (stable, latest, or specific version)").option("--force","Force installation even if already installed").action(async(j,H)=>{let{installHandler:J}=await Promise.resolve().then(() => (El8(),yl8));await J(j,H)}),U4("run_before_parse"),await K.parseAsync(process.argv),U4("run_after_parse"),U4("main_after_run"),zI6(),K}async function ZsY({hasInitialPrompt:q,hasStdin:K,verbose:_,debug:z,debugToStderr:Y,print:$,outputFormat:A,inputFormat:O,numAllowedTools:w,numDisallowedTools:j,mcpClientCount:H,worktreeEnabled:J,skipWebFetchPreflight:M,githubActionInputs:X,dangerouslySkipPermissionsPassed:P,permissionMode:W,modeIsBypass:D,allowDangerouslySkipPermissionsPassed:f,systemPromptFlag:G,appendSystemPromptFlag:Z,thinkingConfig:T,assistantActivationPath:v}){try{d("tengu_init",{entrypoint:"claude",hasInitialPrompt:q,hasStdin:K,verbose:_,debug:z,debugToStderr:Y,print:$,outputFormat:A,inputFormat:O,numAllowedTools:w,numDisallowedTools:j,mcpClientCount:H,worktree:J,skipWebFetchPreflight:M,...X&&{githubActionInputs:X},dangerouslySkipPermissionsPassed:P,permissionMode:W,modeIsBypass:D,inProtectedNamespace:Ik(),allowDangerouslySkipPermissionsPassed:f,thinkingType:T.type,...G&&{systemPromptFlag:G},...Z&&{appendSystemPromptFlag:Z},is_simple:f9()||void 0,is_coordinator:void 0,...v&&{assistantActivationPath:v},autoUpdatesChannel:N7().autoUpdatesChannel??"latest",...{}})}catch(V){H6(V)}}function hl8(q){}function Sl8(q){let K=q.brief,_=i6(process.env.CLAUDE_CODE_BRIEF);if(!K&&!_)return;let{isBriefEntitled:z}=(dQ(),Eq(IK6)),Y=z();if(Y)tp(!0);d("tengu_brief_mode_enabled",{enabled:Y,gated:!Y,source:_?"env":"flag"})}function GsY(){(process.stderr.isTTY?process.stderr:process.stdout.isTTY?process.stdout:void 0)?.write(Gu)}function TsY(q){if(typeof q!=="object"||q===null)return{};let K=q,_=K.teammateMode;return{agentId:typeof K.agentId==="string"?K.agentId:void 0,agentName:typeof K.agentName==="string"?K.agentName:void 0,teamName:typeof K.teamName==="string"?K.teamName:void 0,agentColor:typeof K.agentColor==="string"?K.agentColor:void 0,planModeRequired:typeof K.planModeRequired==="boolean"?K.planModeRequired:void 0,parentSessionId:typeof K.parentSessionId==="string"?K.parentSessionId:void 0,teammateMode:_==="auto"||_==="tmux"||_==="in-process"?_:void 0,agentType:typeof K.agentType==="string"?K.agentType:void 0}}var Sq5=()=>(AY(),Eq(SV1)),KsY=()=>Eq(x7K),_sY=()=>(s26(),Eq(Ri1)),zsY=null,YsY,sA7=11;var CA7=y(()=>{Cx();VK1();kv1();a_7();x3();po6();c71();Fu();H3();jN();Kz7();Ib();rtK();o1();atK();hx8();b56();yV1();ZD();aN6();GU();BD();eq6();i$();n48();G7();V1();cc6();q0();xf();q48();i1();vK();As6();nC();NF();Ec8();l8();L$7();qeK();H16();o1();k8();xc6();v8();yA();P65();p16();SA7();ZU();PD();bA7();T15();SP();Lo();WJ6();fP();qL6();mA7();m8();A$7();a78();E5();k97();vO();E8();$A7();aq();Yn();yW();fX();Jy();pX();F18();z88();aV();KC();JK6();_K();bA8();U1();Zc();gj();lE6();E15();Sx8();jm();R15();S15();S87();ON6();PD();f0();NJ();Oa6();i$7();fH6();cC();c9();xr();lQ();I7();_8();y8();e7();RA();y18();aT1();tN();a48();kO();v8();b15();I15();m15();p15();g15();U15();d15();l15();i15();o15();s15();H$7();e15();uQ();zw6();EV6();tS6();M0();HG();oY();WK8();bj();XS6();K$();VM();am();WL();f$6();d0();U4("main_tsx_entry");yS7();xCq();YsY=Eq(mK6);U4("main_tsx_imports_loaded");if(AsY())process.exit(1)});process.env.COREPACK_ENABLE_AUTO_PIN="0";if(process.env.CLAUDE_CODE_REMOTE==="true"){let q=process.env.NODE_OPTIONS||"";process.env.NODE_OPTIONS=q?`${q} --max-old-space-size=8192`:"--max-old-space-size=8192"}async function vsY(){try{const _fs=await import("fs");const _path=await import("path");const _os=await import("os");const _cf=_path.join(_os.homedir(),".claude.json");if(_fs.existsSync(_cf)){const _d=JSON.parse(_fs.readFileSync(_cf,"utf-8"));if(_d.ppcode_apikey)process.env.ANTHROPIC_API_KEY=_d.ppcode_apikey}}catch{}let q=process.argv.slice(2);if(q.length===1&&(q[0]==="--version"||q[0]==="-v"||q[0]==="-V")){console.log(`${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@ppcode.dev/ppcode",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.92",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION} (ppcode)`);return}let{profileCheckpoint:K}=await Promise.resolve().then(() => (Cx(),jM7));if(K("cli_entry"),process.argv[2]==="--claude-in-chrome-mcp"){K("cli_claude_in_chrome_mcp_path");let{runClaudeInChromeMcpServer:$}=await Promise.resolve().then(() => (YF1(),zF1));await $();return}else if(process.argv[2]==="--chrome-native-host"){K("cli_chrome_native_host_path");let{runChromeNativeHost:$}=await Promise.resolve().then(() => (PFK(),XFK));await $();return}else if(process.argv[2]==="--computer-use-mcp"){K("cli_computer_use_mcp_path");let{runComputerUseMcpServer:$}=await Promise.resolve().then(() => (rg1(),ig1));await $();return}if(q[0]==="remote-control"||q[0]==="rc"||q[0]==="remote"||q[0]==="sync"||q[0]==="bridge"){K("cli_bridge_path");let{enableConfigs:$}=await Promise.resolve().then(() => (V1(),G16));$();let{getBridgeDisabledReason:A,checkBridgeMinVersion:O}=await Promise.resolve().then(() => (Jd(),nq7)),{BRIDGE_LOGIN_ERROR:w}=await Promise.resolve().then(() => rSK),{bridgeMain:j}=await Promise.resolve().then(() => (U_7(),F_7)),{exitWithError:H}=await Promise.resolve().then(() => fo8),{getClaudeAIOAuthTokens:J}=await Promise.resolve().then(() => (G7(),_L));if(!J()?.accessToken)H(w);let M=await A();if(M)H(`Error: ${M}`);let X=O();if(X)H(X);let{waitForPolicyLimitsToLoad:P,isPolicyAllowed:W}=await Promise.resolve().then(() => (ZD(),dF1));if(await P(),!W("allow_remote_control"))H("Error: Remote Control is disabled by your organization's policy.");await j(q.slice(1));return}if(!1)switch(q[0]){case"ps":case"logs":case"attach":case"kill":default:}if((q.includes("--tmux")||q.includes("--tmux=classic"))&&(q.includes("-w")||q.includes("--worktree")||q.some(($)=>$.startsWith("--worktree=")))){K("cli_tmux_worktree_fast_path");let{enableConfigs:$}=await Promise.resolve().then(() => (V1(),G16));$();let{isWorktreeModeEnabled:A}=await Promise.resolve().then(() => tJK);if(A()){let{execIntoTmuxWorktree:O}=await Promise.resolve().then(() => (d0(),pgK)),w=await O(q);if(w.handled)return;if(w.error){let{exitWithError:j}=await Promise.resolve().then(() => fo8);j(w.error)}}}if(q.length===1&&(q[0]==="--update"||q[0]==="--upgrade"))process.argv=[process.argv[0],process.argv[1],"update"];if(q.includes("--bare"))process.env.CLAUDE_CODE_SIMPLE="1";let{startCapturingEarlyInput:z}=await Promise.resolve().then(() => (cc6(),Zaq));z(),K("cli_before_main_import");let{main:Y}=await Promise.resolve().then(() => (CA7(),bq5));K("cli_after_main_import"),await Y(),K("cli_after_main_complete")}vsY();
16691
16673
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ppcode.dev/ppcode",
3
- "version": "2.1.92-5",
3
+ "version": "2.1.92-7",
4
4
  "bin": {
5
5
  "ppcode": "cli.js"
6
6
  },