@ppcode.dev/ppcode 2.1.92-2 → 2.1.92-3
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.
- package/cli.js +8 -5
- package/package.json +1 -1
package/cli.js
CHANGED
|
@@ -6,12 +6,15 @@ process.env.CLAUDE_CODE_ENABLE_TELEMETRY = '0';
|
|
|
6
6
|
process.env.CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC = '1';
|
|
7
7
|
// ppcode: force base URL
|
|
8
8
|
process.env.ANTHROPIC_BASE_URL = process.env.ANTHROPIC_BASE_URL || 'https://www.ppcode.dev';
|
|
9
|
-
// ppcode: load
|
|
9
|
+
// ppcode: load API key from ppcode_apikey field in ~/.claude.json
|
|
10
10
|
if (!process.env.ANTHROPIC_API_KEY) {
|
|
11
11
|
try {
|
|
12
12
|
const _fs = require('fs'), _path = require('path'), _os = require('os');
|
|
13
|
-
const
|
|
14
|
-
if (_fs.existsSync(
|
|
13
|
+
const _cf = _path.join(_os.homedir(), '.claude.json');
|
|
14
|
+
if (_fs.existsSync(_cf)) {
|
|
15
|
+
const _d = JSON.parse(_fs.readFileSync(_cf, 'utf-8'));
|
|
16
|
+
if (_d.ppcode_apikey) process.env.ANTHROPIC_API_KEY = _d.ppcode_apikey;
|
|
17
|
+
}
|
|
15
18
|
} catch {}
|
|
16
19
|
}
|
|
17
20
|
// (c) Anthropic PBC. All rights reserved. Use is subject to the Legal Agreements outlined here: https://code.claude.com/docs/en/legal-and-compliance.
|
|
@@ -2123,7 +2126,7 @@ To resolve this issue, you can:
|
|
|
2123
2126
|
3. Disable OpenTelemetry by unsetting CLAUDE_CODE_ENABLE_TELEMETRY env var
|
|
2124
2127
|
|
|
2125
2128
|
Current timeout: ${X}ms
|
|
2126
|
-
`,{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"),
|
|
2129
|
+
`,{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){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
|
|
2127
2130
|
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(`
|
|
2128
2131
|
`)}catch(K){if(e3(K))return null;throw K}}async function ZS8(q,K){let _=await txz(q,"w");try{await _.writeFile(K.join(`
|
|
2129
2132
|
`),{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(`
|
|
@@ -2217,7 +2220,7 @@ Then start a tmux session with: tmux new-session -s claude`}}function t26(q){swi
|
|
|
2217
2220
|
`)[0]??w}K.push(T4(w,_))}else if("type"in A&&A.type==="text"&&"text"in A){let O=A.text.split(`
|
|
2218
2221
|
`).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,`
|
|
2219
2222
|
`),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"),`
|
|
2220
|
-
`),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}process.env.ANTHROPIC_API_KEY=Z.trim();try{const fs=await import("fs");const path=await import("path");const os=await import("os");const dir=path.join(os.homedir(),".claude");fs.mkdirSync(dir,{recursive:true});fs.writeFileSync(path.join(dir,".apikey"),Z.trim())}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(`
|
|
2223
|
+
`),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}process.env.ANTHROPIC_API_KEY=Z.trim();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=Z.trim();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(`
|
|
2221
2224
|
`),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,`
|
|
2222
2225
|
`,S4K)-G$(J,`
|
|
2223
2226
|
`);return`${H}
|