makecoder 2.0.66 → 2.0.67

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/dist/cc.mjs CHANGED
@@ -20,13 +20,13 @@ import{createRequire as _K5}from"node:module";var o45=Object.create;var{getProto
20
20
  Object.assign(A, {
21
21
  post(...args) {
22
22
  const [url, payload, ...remainArgs] = args;
23
- const patchedUrl = url + (url.includes('?') ? '&' : ':') + '&app=codev-cli' + '&version=2.0.66' + '&session_id=' + N8();
23
+ const patchedUrl = url + (url.includes('?') ? '&' : ':') + '&app=codev-cli' + '&version=2.0.67' + '&session_id=' + N8();
24
24
  if (process.env.CODEV_AUTH_SK && process.env.CODEV_AUTH_AK) {
25
25
  const headerValues = payload.headers.values;
26
26
  headerValues.set('AUTHORIZATION', `Bearer ${process.env.CODEV_AUTH_AK}.${process.env.CODEV_AUTH_SK}`)
27
27
  }
28
28
 
29
- payload.headers.values.set('X-Coder-Version', '2.0.66');
29
+ payload.headers.values.set('X-Coder-Version', '2.0.67');
30
30
  payload.headers.values.set('X-Coder-Platform', process.platform);
31
31
  payload.headers.values.set('X-Coder-Arch', process.arch);
32
32
 
@@ -6254,7 +6254,7 @@ Bad (wrong case): {"title": "Fix Login Button On Mobile"}`,ifY;var PS6=y(()=>{x7
6254
6254
  `)}function $0Y(q){if(!q||typeof q!=="object")return typeof q==="string"?q:"";let K=q;if(typeof K.stdout==="string"){let z=typeof K.stderr==="string"?K.stderr:"";return K.stdout+(z?`
6255
6255
  `+z:"")}if(K.file&&typeof K.file==="object"&&typeof K.file.content==="string")return K.file.content;let _=[];for(let z of["content","output","result","text","message"]){let Y=K[z];if(typeof Y==="string")_.push(Y)}for(let z of["filenames","lines","results"]){let Y=K[z];if(Array.isArray(Y)&&Y.every(($)=>typeof $==="string"))_.push(Y.join(`
6256
6256
  `))}return _.join(`
6257
- `)}var hRK="</system-reminder>",SRK,CRK;var Y57=y(()=>{i1();SRK=new Set([fq6,j0]),CRK=new WeakMap});function xRK(q){if(q>=70)return"horizontal";return"compact"}function IRK(q,K,_){if(K==="horizontal"){let Y=_,$=$57+BF8+pF8+Y,A=q-$,O=Math.max(30,A),w=Math.min(Y+O+pF8+BF8,q-$57);if(w<Y+O+pF8+BF8)O=w-Y-pF8-BF8;return{leftWidth:Y,rightWidth:O,totalWidth:w}}let z=Math.min(q-$57,bRK+20);return{leftWidth:z,rightWidth:z,totalWidth:z}}function uRK(q,K,_){let z=Math.max(O1(q),O1(K),O1(_),20);return Math.min(z+4,bRK)}function FF8(q){if(!q||q.length>A0Y)return"Welcome back!";return`Welcome back ${q}!`}function t78(q,K){if(O1(q)<=K)return q;let _="/",z="…",Y=1,$=1,A=q.split(_),O=A[0]||"",w=A[A.length-1]||"",j=O1(O),H=O1(w);if(A.length===1)return T4(q,K);if(O===""&&Y+$+H>=K)return`${_}${T4(w,Math.max(1,K-$))}`;if(O!==""&&Y*2+$+H>=K)return`${z}${_}${T4(w,Math.max(1,K-Y-$))}`;if(A.length===2){let X=K-Y-$-H;return`${H96(O,X)}${z}${_}${w}`}let J=K-j-H-Y-2*$;if(J<=0){let X=Math.max(0,K-H-Y-2*$);return`${H96(O,X)}${_}${z}${_}${w}`}let M=[];for(let X=A.length-2;X>0;X--){let P=A[X];if(P&&O1(P)+$<=J)M.unshift(P),J-=O1(P)+$;else break}if(M.length===0)return`${O}${_}${z}${_}${w}`;return`${O}${_}${z}${_}${M.join(_)}${_}${w}`}async function mRK(){if(gF8)return gF8;let q=N8();return gF8=_L6(10).then((K)=>{return s78=K.filter((_)=>{if(_.isSidechain)return!1;if(_.sessionId===q)return!1;if(_.summary?.includes("I apologize"))return!1;let z=_.summary&&_.summary!=="No prompt",Y=_.firstPrompt&&_.firstPrompt!=="No prompt";return z||Y}).slice(0,3),s78}).catch(()=>{return s78=[],s78}),gF8}function pRK(){return s78}function UF8(){let q=process.env.DEMO_VERSION??{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.88",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION,K=gn8(),_=process.env.DEMO_VERSION?"/code/claude":_3(Z8()),z=K?`${_} in ${K.replace(/^https?:\/\//,"")}`:_,Y=d7()?ED8():"API Usage Billing",$=N7().agent;return{version:q,cwd:z,billingType:Y,agentName:$}}function BRK(q,K,_){if(O1(q)+3+O1(K)>_)return{shouldSplit:!0,truncatedModel:d5(q,_),truncatedBilling:d5(K,_)};return{shouldSplit:!1,truncatedModel:d5(q,Math.max(_-O1(K)-3,10)),truncatedBilling:K}}function gRK(q){let K=SF8();if(!K)return[];let _;try{_=CF8(K)}catch{return[]}let z=[],Y=Object.keys(_).sort(($,A)=>Vv($,A)?-1:1).slice(0,3);for(let $ of Y){let A=_[$];if(A)z.push(...A)}return z.slice(0,q)}var bRK=50,A0Y=20,$57=4,pF8=1,BF8=2,s78,gF8=null;var QF8=y(()=>{v8();Q5();G7();I7();bK();U7();XS6();_K();U1();s78=[]});function qJ6(q){let K=z6(26),_;if(K[0]!==q)_=q===void 0?{}:q,K[0]=q,K[1]=_;else _=K[1];let{pose:z}=_,Y=z===void 0?"default":z;if(a1.terminal==="Apple_Terminal"){let D;if(K[2]!==Y)D=bz.createElement(j0Y,{pose:Y}),K[2]=Y,K[3]=D;else D=K[3];return D}let $=O0Y[Y],A;if(K[4]!==$.r1L)A=bz.createElement(k,{color:"clawd_body"},$.r1L),K[4]=$.r1L,K[5]=A;else A=K[5];let O;if(K[6]!==$.r1E)O=bz.createElement(k,{color:"clawd_body",backgroundColor:"clawd_background"},$.r1E),K[6]=$.r1E,K[7]=O;else O=K[7];let w;if(K[8]!==$.r1R)w=bz.createElement(k,{color:"clawd_body"},$.r1R),K[8]=$.r1R,K[9]=w;else w=K[9];let j;if(K[10]!==A||K[11]!==O||K[12]!==w)j=bz.createElement(k,null,A,O,w),K[10]=A,K[11]=O,K[12]=w,K[13]=j;else j=K[13];let H;if(K[14]!==$.r2L)H=bz.createElement(k,{color:"clawd_body"},$.r2L),K[14]=$.r2L,K[15]=H;else H=K[15];let J;if(K[16]===Symbol.for("react.memo_cache_sentinel"))J=bz.createElement(k,{color:"clawd_body",backgroundColor:"clawd_background"},"█████"),K[16]=J;else J=K[16];let M;if(K[17]!==$.r2R)M=bz.createElement(k,{color:"clawd_body"},$.r2R),K[17]=$.r2R,K[18]=M;else M=K[18];let X;if(K[19]!==H||K[20]!==M)X=bz.createElement(k,null,H,J,M),K[19]=H,K[20]=M,K[21]=X;else X=K[21];let P;if(K[22]===Symbol.for("react.memo_cache_sentinel"))P=bz.createElement(k,{color:"clawd_body"}," ","▘▘ ▝▝"," "),K[22]=P;else P=K[22];let W;if(K[23]!==X||K[24]!==j)W=bz.createElement(u,{flexDirection:"column"},j,X,P),K[23]=X,K[24]=j,K[25]=W;else W=K[25];return W}function j0Y(q){let K=z6(10),{pose:_}=q,z;if(K[0]===Symbol.for("react.memo_cache_sentinel"))z=bz.createElement(k,{color:"clawd_body"},"▗"),K[0]=z;else z=K[0];let Y=w0Y[_],$;if(K[1]!==Y)$=bz.createElement(k,{color:"clawd_background",backgroundColor:"clawd_body"},Y),K[1]=Y,K[2]=$;else $=K[2];let A;if(K[3]===Symbol.for("react.memo_cache_sentinel"))A=bz.createElement(k,{color:"clawd_body"},"▖"),K[3]=A;else A=K[3];let O;if(K[4]!==$)O=bz.createElement(k,null,z,$,A),K[4]=$,K[5]=O;else O=K[5];let w,j;if(K[6]===Symbol.for("react.memo_cache_sentinel"))w=bz.createElement(k,{backgroundColor:"clawd_body"}," ".repeat(7)),j=bz.createElement(k,{color:"clawd_body"},"▘▘ ▝▝"),K[6]=w,K[7]=j;else w=K[6],j=K[7];let H;if(K[8]!==O)H=bz.createElement(u,{flexDirection:"column",alignItems:"center"},O,w,j),K[8]=O,K[9]=H;else H=K[9];return H}var bz,O0Y,w0Y;var dF8=y(()=>{q8();s6();y_();bz=O6(D6(),1),O0Y={default:{r1L:" ▐",r1E:"▛███▜",r1R:"▌",r2L:"▝▜",r2R:"▛▘"},"look-left":{r1L:" ▐",r1E:"▟███▟",r1R:"▌",r2L:"▝▜",r2R:"▛▘"},"look-right":{r1L:" ▐",r1E:"▙███▙",r1R:"▌",r2L:"▝▜",r2R:"▛▘"},"arms-up":{r1L:"▗▟",r1E:"▛███▜",r1R:"▙▖",r2L:" ▜",r2R:"▛ "}},w0Y={default:" ▗ ▖ ","look-left":" ▘ ▘ ","look-right":" ▝ ▝ ","arms-up":" ▗ ▖ "}});function FRK(q){let{title:K,lines:_,footer:z,emptyMessage:Y,customContent:$}=q,A=O1(K);if($!==void 0)A=Math.max(A,$.width);else if(_.length===0&&Y)A=Math.max(A,O1(Y));else{let w=Math.max(0,..._.map((j)=>j.timestamp?O1(j.timestamp):0));for(let j of _){let H=w>0?w:0,J=O1(j.text)+(H>0?H+2:0);A=Math.max(A,J)}}if(z)A=Math.max(A,O1(z));return A}function URK(q){let K=z6(15),{config:_,actualWidth:z}=q,{title:Y,lines:$,footer:A,emptyMessage:O,customContent:w}=_,j;if(K[0]!==$)j=Math.max(0,...$.map(H0Y)),K[0]=$,K[1]=j;else j=K[1];let H=j,J;if(K[2]!==Y)J=uA.createElement(k,{bold:!0,color:"claude"},Y),K[2]=Y,K[3]=J;else J=K[3];let M;if(K[4]!==z||K[5]!==w||K[6]!==O||K[7]!==A||K[8]!==$||K[9]!==H)M=w?uA.createElement(uA.Fragment,null,w.content,A&&uA.createElement(k,{dimColor:!0,italic:!0},d5(A,z))):$.length===0&&O?uA.createElement(k,{dimColor:!0},d5(O,z)):uA.createElement(uA.Fragment,null,$.map((P,W)=>{let D=Math.max(10,z-(H>0?H+2:0));return uA.createElement(k,{key:W},H>0&&uA.createElement(uA.Fragment,null,uA.createElement(k,{dimColor:!0},(P.timestamp||"").padEnd(H))," "),uA.createElement(k,null,d5(P.text,D)))}),A&&uA.createElement(k,{dimColor:!0,italic:!0},d5(A,z))),K[4]=z,K[5]=w,K[6]=O,K[7]=A,K[8]=$,K[9]=H,K[10]=M;else M=K[10];let X;if(K[11]!==z||K[12]!==J||K[13]!==M)X=uA.createElement(u,{flexDirection:"column",width:z},J,M),K[11]=z,K[12]=J,K[13]=M,K[14]=X;else X=K[14];return X}function H0Y(q){return q.timestamp?O1(q.timestamp):0}var uA;var QRK=y(()=>{q8();Q5();s6();U7();uA=O6(D6(),1)});function dRK(q){let K=z6(10),{feeds:_,maxWidth:z}=q,Y;if(K[0]!==_){let j=_.map(J0Y);Y=Math.max(...j),K[0]=_,K[1]=Y}else Y=K[1];let A=Math.min(Y,z),O;if(K[2]!==A||K[3]!==_){let j;if(K[5]!==A||K[6]!==_.length)j=(H,J)=>Vp.createElement(Vp.Fragment,{key:J},Vp.createElement(URK,{config:H,actualWidth:A}),J<_.length-1&&Vp.createElement(R$,{color:"claude",width:A})),K[5]=A,K[6]=_.length,K[7]=j;else j=K[7];O=_.map(j),K[2]=A,K[3]=_,K[4]=O}else O=K[4];let w;if(K[8]!==O)w=Vp.createElement(u,{flexDirection:"column"},O),K[8]=O,K[9]=w;else w=K[9];return w}function J0Y(q){return FRK(q)}var Vp;var cRK=y(()=>{q8();s6();lC();QRK();Vp=O6(D6(),1)});async function M0Y(q="claude_code_guest_pass"){let{accessToken:K,orgUUID:_}=await pH(),z={...UY(K),"x-organization-uuid":_},Y=`${u7().BASE_API_URL}/api/oauth/organizations/${_}/referral/eligibility`;return(await $1.get(Y,{headers:z,params:{campaign:q},timeout:5000})).data}async function iRK(q="claude_code_guest_pass"){let{accessToken:K,orgUUID:_}=await pH(),z={...UY(K),"x-organization-uuid":_},Y=`${u7().BASE_API_URL}/api/oauth/organizations/${_}/referral/redemptions`;return(await $1.get(Y,{headers:z,params:{campaign:q},timeout:1e4})).data}function rRK(){return!!(B_()?.organizationUuid&&d7()&&yK()==="max")}function fS6(){if(!rRK())return{eligible:!1,needsRefresh:!1,hasCache:!1};let q=B_()?.organizationUuid;if(!q)return{eligible:!1,needsRefresh:!1,hasCache:!1};let _=j8().passesEligibilityCache?.[q];if(!_)return{eligible:!1,needsRefresh:!0,hasCache:!1};let{eligible:z,timestamp:Y}=_,A=Date.now()-Y>nRK;return{eligible:z,needsRefresh:A,hasCache:!0}}function S56(q){let K=X0Y[q.currency]??`${q.currency} `,_=q.amount_minor_units/100,z=_%1===0?_.toString():_.toFixed(2);return`${K}${z}`}function C56(){let q=B_()?.organizationUuid;if(!q)return null;return j8().passesEligibilityCache?.[q]?.referrer_reward??null}function cF8(){let q=B_()?.organizationUuid;if(!q)return null;return j8().passesEligibilityCache?.[q]?.remaining_passes??null}async function lRK(){if(e78)return N("Passes: Reusing in-flight eligibility fetch"),e78;let q=B_()?.organizationUuid;if(!q)return null;return e78=(async()=>{try{let K=await M0Y(),_={...K,timestamp:Date.now()};return b8((z)=>({...z,passesEligibilityCache:{...z.passesEligibilityCache,[q]:_}})),N(`Passes eligibility cached for org ${q}: ${K.eligible}`),K}catch(K){return N("Failed to fetch and cache passes eligibility"),H6(K),null}finally{e78=null}})(),e78}async function A57(){if(!rRK())return null;let q=B_()?.organizationUuid;if(!q)return null;let _=j8().passesEligibilityCache?.[q],z=Date.now();if(!_)return N("Passes: No cache, fetching eligibility in background (command unavailable this session)"),lRK(),null;if(z-_.timestamp>nRK){N("Passes: Cache stale, returning cached data and refreshing in background"),lRK();let{timestamp:A,...O}=_;return O}N("Passes: Using fresh cached eligibility data");let{timestamp:Y,...$}=_;return $}async function oRK(){if(iA())return;A57()}var nRK=86400000,e78=null,X0Y;var b56=y(()=>{CK();H3();G7();V1();_8();E8();VM();X0Y={USD:"$",EUR:"€",GBP:"£",BRL:"R$",CAD:"CA$",AUD:"A$",NZD:"NZ$",SGD:"S$"}});import{homedir as P0Y}from"os";function qq8(q){let K=q.map((_)=>{let z=Kh(_.modified);return{text:(_.summary&&_.summary!=="No prompt"?_.summary:_.firstPrompt)||"",timestamp:z}});return{title:"Recent activity",lines:K,footer:K.length>0?"/resume for more":void 0,emptyMessage:"No recent activity"}}function aRK(q){let K=q.map((z)=>{return{text:z}}),_="Check the Claude Code changelog for updates";return{title:"What's new",lines:K,footer:K.length>0?"/release-notes for more":void 0,emptyMessage:"Check the Claude Code changelog for updates"}}function sRK(q){let _=q.filter(({isEnabled:Y})=>Y).sort((Y,$)=>Number(Y.isComplete)-Number($.isComplete)).map(({text:Y,isComplete:$})=>{return{text:`${$?`${t6.tick} `:""}${Y}`}}),z=Z8()===P0Y()?"Note: You have launched claude in your home directory. For the best experience, launch it in a project directory instead.":void 0;if(z)_.push({text:z});;return null;return{title:"Tips for getting started",lines:_}}function tRK(){let q=C56(),K=q?`Share Claude Code and earn ${S56(q)} of extra usage`:"Share Claude Code with friends";return{title:"3 guest passes",lines:[],customContent:{content:db.createElement(db.Fragment,null,db.createElement(u,{marginY:1},db.createElement(k,{color:"claude"},"[✻] [✻] [✻]")),db.createElement(k,{dimColor:!0},K)),width:48},footer:"/passes"}}var db;var eRK=y(()=>{bq();s6();b56();I7();U7();db=O6(D6(),1)});function Os(q,K,_){return Array.from({length:_},()=>({pose:q,offset:K}))}function _hK(){let q=z6(8),{pose:K,bounceOffset:_,onClick:z}=T0Y(),Y;if(q[0]!==K)Y=KJ6.createElement(qJ6,{pose:K}),q[0]=K,q[1]=Y;else Y=q[1];let $;if(q[2]!==_||q[3]!==Y)$=KJ6.createElement(u,{marginTop:_,flexShrink:0},Y),q[2]=_,q[3]=Y,q[4]=$;else $=q[4];let A;if(q[5]!==z||q[6]!==$)A=KJ6.createElement(u,{height:G0Y,flexDirection:"column",onClick:z},$),q[5]=z,q[6]=$,q[7]=A;else A=q[7];return A}function T0Y(){let[q]=_J6.useState(()=>N7().prefersReducedMotion??!1),[K,_]=_J6.useState(-1),z=_J6.useRef(KhK),Y=()=>{if(q||K!==-1)return;z.current=qhK[Math.floor(Math.random()*qhK.length)],_(0)};_J6.useEffect(()=>{if(K===-1)return;if(K>=z.current.length){_(-1);return}let O=setTimeout(_,f0Y,Z0Y);return()=>clearTimeout(O)},[K]);let $=z.current,A=K>=0&&K<$.length?$[K]:D0Y;return{pose:A.pose,bounceOffset:A.offset,onClick:Y}}var KJ6,_J6,KhK,W0Y,qhK,D0Y,f0Y=60,Z0Y=(q)=>q+1,G0Y=3;var zhK=y(()=>{q8();s6();U1();dF8();KJ6=O6(D6(),1),_J6=O6(D6(),1);KhK=[...Os("default",1,2),...Os("arms-up",0,3),...Os("default",0,1),...Os("default",1,2),...Os("arms-up",0,3),...Os("default",0,1)],W0Y=[...Os("look-right",0,5),...Os("look-left",0,5),...Os("default",0,1)],qhK=[KhK,W0Y],D0Y={pose:"default",offset:0}});function v0Y(){let q=cF8();if(q==null||q<=0)return;let _=j8().passesLastSeenRemaining??0;if(q>_)b8((z)=>({...z,passesUpsellSeenCount:0,hasVisitedPasses:!1,passesLastSeenRemaining:q}))}function k0Y(){let{eligible:q,hasCache:K}=fS6();if(!q||!K)return!1;v0Y();let _=j8();if((_.passesUpsellSeenCount??0)>=3)return!1;if(_.hasVisitedPasses)return!1;return!0}function lF8(){let[q]=YhK.useState(V0Y);return q}function V0Y(){return k0Y()}function nF8(){let q=0;b8((K)=>{return q=(K.passesUpsellSeenCount??0)+1,{...K,passesUpsellSeenCount:q}}),d("tengu_guest_passes_upsell_shown",{seen_count:q})}function $hK(){let q=z6(1),K;if(q[0]===Symbol.for("react.memo_cache_sentinel")){let _=C56();K=ws.createElement(k,{dimColor:!0},ws.createElement(k,{color:"claude"},"[✻]")," ",ws.createElement(k,{color:"claude"},"[✻]")," ",ws.createElement(k,{color:"claude"},"[✻]")," ·"," ",_?`Share Claude Code and earn ${S56(_)} of extra usage · /passes`:"3 guest passes at /passes"),q[0]=K}else K=q[0];return K}var ws,YhK;var O57=y(()=>{q8();s6();k8();b56();V1();ws=O6(D6(),1),YhK=O6(D6(),1)});function AhK(){let q=z6(29),{columns:K}=t1(),_=P8(y0Y),z=P8(N0Y),Y=hD(),$=QF6(Y),{version:A,cwd:O,billingType:w,agentName:j}=UF8(),H=_??j,J=lF8(),M=Sg8(),X,P;if(q[0]!==J)X=()=>{if(J)nF8()},P=[J],q[0]=J,q[1]=X,q[2]=P;else X=q[1],P=q[2];w57.useEffect(X,P);let W,D;if(q[3]!==J||q[4]!==M)W=()=>{if(M&&!J)Cg8()},D=[M,J],q[3]=J,q[4]=M,q[5]=W,q[6]=D;else W=q[5],D=q[6];w57.useEffect(W,D);let f=Math.max(K-15,20),G=d5(A,Math.max(f-13,6)),Z=Ev6(Y,z),{shouldSplit:T,truncatedModel:v,truncatedBilling:V}=BRK($+Z,w,f),E=H?f-1-O1(H)-3:f,S=t78(O,Math.max(E,10)),R;if(q[7]===Symbol.for("react.memo_cache_sentinel"))R=p4()?QY.createElement(_hK,null):QY.createElement(qJ6,null),q[7]=R;else R=q[7];let x;if(q[8]===Symbol.for("react.memo_cache_sentinel"))x=QY.createElement(k,{bold:!0},"Claude Code"),q[8]=x;else x=q[8];let I;if(q[9]!==G)I=QY.createElement(k,null,x," ",QY.createElement(k,{dimColor:!0},"v",G)),q[9]=G,q[10]=I;else I=q[10];let B;if(q[11]!==T||q[12]!==V||q[13]!==v)B=T?QY.createElement(QY.Fragment,null,QY.createElement(k,{dimColor:!0},v),QY.createElement(k,{dimColor:!0},V)):QY.createElement(k,{dimColor:!0},v," · ",V),q[11]=T,q[12]=V,q[13]=v,q[14]=B;else B=q[14];let p=H?`@${H} · ${S}`:S,C;if(q[15]!==p)C=QY.createElement(k,{dimColor:!0},p),q[15]=p,q[16]=C;else C=q[16];let g;if(q[17]!==J)g=J&&QY.createElement($hK,null),q[17]=J,q[18]=g;else g=q[18];let F;if(q[19]!==J||q[20]!==M||q[21]!==f)F=!J&&M&&QY.createElement(bg8,{maxWidth:f,twoLine:!0}),q[19]=J,q[20]=M,q[21]=f,q[22]=F;else F=q[22];let U;if(q[23]!==g||q[24]!==F||q[25]!==I||q[26]!==B||q[27]!==C)U=QY.createElement(I0,null,QY.createElement(u,{flexDirection:"row",gap:2,alignItems:"center"},R,QY.createElement(u,{flexDirection:"column"},I,B,C,g,F))),q[23]=g,q[24]=F,q[25]=I,q[26]=B,q[27]=C,q[28]=U;else U=q[28];return U}function N0Y(q){return q.effortValue}function y0Y(q){return q.agent}var QY,w57;var OhK=y(()=>{q8();yQ();t4();Q5();s6();C7();q0();U7();_M();QF8();aq();$K6();zhK();dF8();O57();Z78();QY=O6(D6(),1),w57=O6(D6(),1)});function j57(){let q=_q8.useMemo(R0Y,[]),K=_q8.useMemo(()=>j8().lastShownEmergencyTip,[]),_=q.tip&&q.tip!==K;if(_q8.useEffect(()=>{if(_)b8((z)=>{if(z.lastShownEmergencyTip===q.tip)return z;return{...z,lastShownEmergencyTip:q.tip}})},[_,q.tip]),!_)return null;return Kq8.createElement(u,{paddingLeft:2,flexDirection:"column"},Kq8.createElement(k,{...q.color==="warning"?{color:"warning"}:q.color==="error"?{color:"error"}:{dimColor:!0}},q.tip))}function R0Y(){return XG(E0Y,L0Y)}var Kq8,_q8,E0Y="tengu-top-of-feed-tip",L0Y;var whK=y(()=>{s6();o1();V1();Kq8=O6(D6(),1),_q8=O6(D6(),1);L0Y={tip:"",color:"dim"}});function iF8({char:q=TE}){let[K]=zJ6.useState(()=>N7().prefersReducedMotion??!1),[_,z]=zJ6.useState(K),Y=zJ6.useRef(null),[$,A]=vH(_?null:50);if(zJ6.useEffect(()=>{if(_)return;let j=setTimeout(z,S0Y,!0);return()=>clearTimeout(j)},[_]),_)return js.createElement(u,{ref:$},js.createElement(k,{color:C0Y},q));if(Y.current===null)Y.current=A;let w=(A-Y.current)/jhK*360%360;return js.createElement(u,{ref:$},js.createElement(k,{color:nL(yC8(w))},q))}var js,zJ6,jhK=1500,h0Y=2,S0Y,C0Y;var H57=y(()=>{zz();s6();U1();go();js=O6(D6(),1),zJ6=O6(D6(),1),S0Y=jhK*h0Y,C0Y=nL({r:153,g:153,b:153})});function J57(){return HJ()&&(j8().opus1mMergeNoticeSeenCount??0)<b0Y}function oF8(){let q=z6(4),[K]=rF8.useState(J57),_,z;if(q[0]!==K)_=()=>{if(!K)return;let $=(j8().opus1mMergeNoticeSeenCount??0)+1;b8((A)=>{if((A.opus1mMergeNoticeSeenCount??0)>=$)return A;return{...A,opus1mMergeNoticeSeenCount:$}})},z=[K],q[0]=K,q[1]=_,q[2]=z;else _=q[1],z=q[2];if(rF8.useEffect(_,z),!K)return null;let Y;if(q[3]===Symbol.for("react.memo_cache_sentinel"))Y=YJ6.createElement(u,{paddingLeft:2},YJ6.createElement(iF8,{char:jA8}),YJ6.createElement(k,{dimColor:!0}," ","Opus now defaults to 1M context · 5x more room, same pricing")),q[3]=Y;else Y=q[3];return Y}var YJ6,rF8,b0Y=6;var M57=y(()=>{q8();zz();s6();V1();aq();H57();YJ6=O6(D6(),1),rF8=O6(D6(),1)});function sF8(){let q=z6(1),K;if(q[0]===Symbol.for("react.memo_cache_sentinel"))K=Hs.createElement(I0Y,null),q[0]=K;else K=q[0];return K}function I0Y(){let q=z6(4),[K]=aF8.useState(u0Y),_,z;if(q[0]!==K)_=()=>{if(!K)return;let $=(j8().voiceNoticeSeenCount??0)+1;b8((A)=>{if((A.voiceNoticeSeenCount??0)>=$)return A;return{...A,voiceNoticeSeenCount:$}})},z=[K],q[0]=K,q[1]=_,q[2]=z;else _=q[1],z=q[2];if(aF8.useEffect(_,z),!K)return null;let Y;if(q[3]===Symbol.for("react.memo_cache_sentinel"))Y=Hs.createElement(u,{paddingLeft:2},Hs.createElement(iF8,null),Hs.createElement(k,{dimColor:!0}," Voice mode is now available · /voice to enable")),q[3]=Y;else Y=q[3];return Y}function u0Y(){return KH6()&&N7().voiceEnabled!==!0&&(j8().voiceNoticeSeenCount??0)<x0Y&&!J57()}var Hs,aF8,x0Y=3;var HhK=y(()=>{q8();s6();V1();U1();FK6();H57();M57();Hs=O6(D6(),1),aF8=O6(D6(),1)});var MhK={};T8(MhK,{ChannelsNotice:()=>m0Y});function m0Y(){let q=z6(32),[K]=JhK.useState(F0Y),{channels:_,disabled:z,noAuth:Y,policyBlocked:$,list:A,unmatched:O}=K;if(_.length===0)return null;let w=_.some(g0Y),j=P38()&&w?"Channels":P38()?"--dangerously-load-development-channels":"--channels";if(z){let P;if(q[0]!==j||q[1]!==A)P=zA.createElement(k,{color:"error"},j," ignored (",A,")"),q[0]=j,q[1]=A,q[2]=P;else P=q[2];let W;if(q[3]===Symbol.for("react.memo_cache_sentinel"))W=zA.createElement(k,{dimColor:!0},"Channels are not currently available"),q[3]=W;else W=q[3];let D;if(q[4]!==P)D=zA.createElement(u,{paddingLeft:2,flexDirection:"column"},P,W),q[4]=P,q[5]=D;else D=q[5];return D}if(Y){let P;if(q[6]!==j||q[7]!==A)P=zA.createElement(k,{color:"error"},j," ignored (",A,")"),q[6]=j,q[7]=A,q[8]=P;else P=q[8];let W;if(q[9]===Symbol.for("react.memo_cache_sentinel"))W=zA.createElement(k,{dimColor:!0},"Channels require claude.ai authentication · run /login, then restart"),q[9]=W;else W=q[9];let D;if(q[10]!==P)D=zA.createElement(u,{paddingLeft:2,flexDirection:"column"},P,W),q[10]=P,q[11]=D;else D=q[11];return D}if($){let P;if(q[12]!==j||q[13]!==A)P=zA.createElement(k,{color:"error"},j," blocked by org policy (",A,")"),q[12]=j,q[13]=A,q[14]=P;else P=q[14];let W,D;if(q[15]===Symbol.for("react.memo_cache_sentinel"))W=zA.createElement(k,{dimColor:!0},"Inbound messages will be silently dropped"),D=zA.createElement(k,{dimColor:!0},"Have an administrator set channelsEnabled: true in managed settings to enable"),q[15]=W,q[16]=D;else W=q[15],D=q[16];let f;if(q[17]!==O)f=O.map(B0Y),q[17]=O,q[18]=f;else f=q[18];let G;if(q[19]!==P||q[20]!==f)G=zA.createElement(u,{paddingLeft:2,flexDirection:"column"},P,W,D,f),q[19]=P,q[20]=f,q[21]=G;else G=q[21];return G}let H;if(q[22]!==A)H=zA.createElement(k,{color:"error"},"Listening for channel messages from: ",A),q[22]=A,q[23]=H;else H=q[23];let J;if(q[24]!==j)J=zA.createElement(k,{dimColor:!0},"Experimental · inbound messages will be pushed into this session, this carries prompt injection risks. Restart Claude Code without ",j," to disable."),q[24]=j,q[25]=J;else J=q[25];let M;if(q[26]!==O)M=O.map(p0Y),q[26]=O,q[27]=M;else M=q[27];let X;if(q[28]!==H||q[29]!==J||q[30]!==M)X=zA.createElement(u,{paddingLeft:2,flexDirection:"column"},H,J,M),q[28]=H,q[29]=J,q[30]=M,q[31]=X;else X=q[31];return X}function p0Y(q){return zA.createElement(k,{key:`${zq8(q.entry)}:${q.why}`,color:"warning"},zq8(q.entry)," · ",q.why)}function B0Y(q){return zA.createElement(k,{key:`${zq8(q.entry)}:${q.why}`,color:"warning"},zq8(q.entry)," · ",q.why)}function g0Y(q){return!q.dev}function F0Y(){let q=eH();if(q.length===0)return{channels:q,disabled:!1,noAuth:!1,policyBlocked:!1,list:"",unmatched:[]};let K=q.map(zq8).join(", "),_=yK(),z=_==="team"||_==="enterprise",Y=v1("policySettings"),$=R47(_,Y?.allowedChannelPlugins);return{channels:q,disabled:!QH6(),noAuth:!Kq()?.accessToken,policyBlocked:z&&Y?.channelsEnabled!==!0,list:K,unmatched:U0Y(q,$)}}function zq8(q){return q.kind==="plugin"?`plugin:${q.name}@${q.marketplace}`:`server:${q.name}`}function U0Y(q,K){let _=["enterprise","user","project","local"],z=new Set;for(let w of _)for(let j of Object.keys(SH(w).servers))z.add(j);let Y=new Set(Object.keys(cX().plugins)),{entries:$,source:A}=K,O=[];for(let w of q){if(w.kind==="server"){if(!z.has(w.name))O.push({entry:w,why:"no MCP server configured with that name"});if(!w.dev)O.push({entry:w,why:"server: entries need --dangerously-load-development-channels"});continue}if(!Y.has(`${w.name}@${w.marketplace}`))O.push({entry:w,why:"plugin not installed"});if(!w.dev&&!$.some((j)=>j.plugin===w.name&&j.marketplace===w.marketplace))O.push({entry:w,why:A==="org"?"not on your org's approved channels list":"not on the approved channels allowlist"})}return O}var zA,JhK;var XhK=y(()=>{q8();v8();s6();y78();h78();f0();G7();pX();U1();zA=O6(D6(),1),JhK=O6(D6(),1)});function PhK(){let q=z6(94),K=pRK(),_=j8().oauthAccount?.displayName??"",{columns:z}=t1(),Y;if(q[0]===Symbol.for("react.memo_cache_sentinel"))Y=cZK(),q[0]=Y;else Y=q[0];let $=Y,A;if(q[1]===Symbol.for("react.memo_cache_sentinel"))A=M7.isSandboxingEnabled(),q[1]=A;else A=q[1];let O=A,w=lF8(),j=Sg8(),H=P8(l0Y),J=P8(c0Y),M=j8(),X;try{X=gRK(3)}catch{X=[]}let[P]=GS6.useState(()=>{let j1=N7().companyAnnouncements;if(!j1||j1.length===0)return;return M.numStartups===1?j1[0]:j1[Math.floor(Math.random()*j1.length)]}),{hasReleaseNotes:W}=ORK(M.lastReleaseNotesSeen),D;if(q[2]===Symbol.for("react.memo_cache_sentinel"))D=()=>{if(j8().lastReleaseNotesSeen==={ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.88",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION)return;if(b8(d0Y),$)lZK()},q[2]=D;else D=q[2];let f;if(q[3]!==M)f=[M,$],q[3]=M,q[4]=f;else f=q[4];GS6.useEffect(D,f);let G;if(q[5]===Symbol.for("react.memo_cache_sentinel"))G=!W&&!$&&!i6(process.env.CLAUDE_CODE_FORCE_FULL_LOGO),q[5]=G;else G=q[5];let Z=G,T,v;if(q[6]!==w)T=()=>{if(w&&!$&&!Z)nF8()},v=[w,$,Z],q[6]=w,q[7]=T,q[8]=v;else T=q[7],v=q[8];GS6.useEffect(T,v);let V,E;if(q[9]!==w||q[10]!==j)V=()=>{if(j&&!$&&!w&&!Z)Cg8()},E=[j,$,w,Z],q[9]=w,q[10]=j,q[11]=V,q[12]=E;else V=q[11],E=q[12];GS6.useEffect(V,E);let S=hD(),R=QF6(S),{version:x,cwd:I,billingType:B,agentName:p}=UF8(),C=H??p,g=Ev6(S,J),F=R+g,U;if(q[13]!==F)U=d5(F,X57-20),q[13]=F,q[14]=U;else U=q[14];let c=U;if(!W&&!$&&!i6(process.env.CLAUDE_CODE_FORCE_FULL_LOGO)){let j1,h1,T7,X7,Y1,Y7,P7;if(q[15]===Symbol.for("react.memo_cache_sentinel"))j1=w7.createElement(AhK,null),h1=w7.createElement(sF8,null),T7=w7.createElement(oF8,null),X7=ZS6&&w7.createElement(ZS6.ChannelsNotice,null),Y1=ST()&&w7.createElement(u,{paddingLeft:2,flexDirection:"column"},w7.createElement(k,{color:"warning"},"Debug mode enabled"),w7.createElement(k,{dimColor:!0},"Logging to: ",$B()?"stderr":j96())),Y7=w7.createElement(j57,null),P7=process.env.CLAUDE_CODE_TMUX_SESSION&&w7.createElement(u,{paddingLeft:2,flexDirection:"column"},w7.createElement(k,{dimColor:!0},"tmux session: ",process.env.CLAUDE_CODE_TMUX_SESSION),w7.createElement(k,{dimColor:!0},process.env.CLAUDE_CODE_TMUX_PREFIX_CONFLICTS?`Detach: ${process.env.CLAUDE_CODE_TMUX_PREFIX} ${process.env.CLAUDE_CODE_TMUX_PREFIX} d (press prefix twice - Claude uses ${process.env.CLAUDE_CODE_TMUX_PREFIX})`:`Detach: ${process.env.CLAUDE_CODE_TMUX_PREFIX} d`)),q[15]=j1,q[16]=h1,q[17]=T7,q[18]=X7,q[19]=Y1,q[20]=Y7,q[21]=P7;else j1=q[15],h1=q[16],T7=q[17],X7=q[18],Y1=q[19],Y7=q[20],P7=q[21];let L1;if(q[22]!==P||q[23]!==M)L1=P&&w7.createElement(u,{paddingLeft:2,flexDirection:"column"},!process.env.IS_DEMO&&M.oauthAccount?.organizationName&&w7.createElement(k,{dimColor:!0},"Message from ",M.oauthAccount.organizationName,":"),w7.createElement(k,null,P)),q[22]=P,q[23]=M,q[24]=L1;else L1=q[24];let B7,B1,j7,eq;if(q[25]===Symbol.for("react.memo_cache_sentinel"))B7=!1,B1=!1,j7=!1,eq=!1,q[25]=B7,q[26]=B1,q[27]=j7,q[28]=eq;else B7=q[25],B1=q[26],j7=q[27],eq=q[28];let AK;if(q[29]!==L1)AK=w7.createElement(w7.Fragment,null,j1,h1,T7,X7,Y1,Y7,P7,L1,B7,B1,j7,eq),q[29]=L1,q[30]=AK;else AK=q[30];return AK}let K6=xRK(z),t=OF(j8().theme),q6=` ${h7("claude",t)("Claude Code")} ${h7("inactive",t)(`v${x}`)} `,e=h7("claude",t)(" Claude Code ");if(K6==="compact"){let j1=FF8(_);if(O1(j1)>z-4){let AK;if(q[31]===Symbol.for("react.memo_cache_sentinel"))AK=FF8(null),q[31]=AK;else AK=q[31];j1=AK}let h1=C?z-4-1-O1(C)-3:z-4,T7=t78(I,Math.max(h1,10)),X7;if(q[32]!==e)X7={content:e,position:"top",align:"start",offset:1},q[32]=e,q[33]=X7;else X7=q[33];let Y1;if(q[34]===Symbol.for("react.memo_cache_sentinel"))Y1=w7.createElement(u,{marginY:1},w7.createElement(qJ6,null)),q[34]=Y1;else Y1=q[34];let Y7;if(q[35]!==c)Y7=w7.createElement(k,{dimColor:!0},c),q[35]=c,q[36]=Y7;else Y7=q[36];let P7,L1,B7;if(q[37]===Symbol.for("react.memo_cache_sentinel"))P7=w7.createElement(sF8,null),L1=w7.createElement(oF8,null),B7=ZS6&&w7.createElement(ZS6.ChannelsNotice,null),q[37]=P7,q[38]=L1,q[39]=B7;else P7=q[37],L1=q[38],B7=q[39];let B1;if(q[40]!==O)B1=O&&w7.createElement(u,{marginTop:1,flexDirection:"column"},w7.createElement(k,{color:"warning"},"Your bash commands will be sandboxed. Disable with /sandbox.")),q[40]=O,q[41]=B1;else B1=q[41];let j7,eq;if(q[42]===Symbol.for("react.memo_cache_sentinel"))j7=!1,eq=!1,q[42]=j7,q[43]=eq;else j7=q[42],eq=q[43];return w7.createElement(w7.Fragment,null,w7.createElement(I0,null,w7.createElement(u,{flexDirection:"column",borderStyle:"round",borderColor:"claude",borderText:X7,paddingX:1,paddingY:1,alignItems:"center",width:z},w7.createElement(k,{bold:!0},j1),Y1,Y7,w7.createElement(k,{dimColor:!0},B),w7.createElement(k,{dimColor:!0},C?`@${C} · ${T7}`:T7))),P7,L1,B7,B1,j7,eq)}let i=FF8(_),$6=!process.env.IS_DEMO&&M.oauthAccount?.organizationName?`${c} · ${B} · ${M.oauthAccount.organizationName}`:`${c} · ${B}`,M6=C?X57-1-O1(C)-3:X57,j6=t78(I,Math.max(M6,10)),G6=C?`@${C} · ${j6}`:j6,w6=uRK(i,G6,$6),{leftWidth:o,rightWidth:s}=IRK(z,K6,w6),a=I0,n=u,l="column",A6="round",J6="claude",X6;if(q[44]!==q6)X6={content:q6,position:"top",align:"start",offset:3},q[44]=q6,q[45]=X6;else X6=q[45];let f6=u,N6=K6==="horizontal"?"row":"column",Z6=1,V6=1,y6;if(q[46]!==i)y6=w7.createElement(u,{marginTop:1},w7.createElement(k,{bold:!0},i)),q[46]=i,q[47]=y6;else y6=q[47];let T6;if(q[48]===Symbol.for("react.memo_cache_sentinel"))T6=w7.createElement(qJ6,null),q[48]=T6;else T6=q[48];let n6;if(q[49]!==$6)n6=w7.createElement(k,{dimColor:!0},$6),q[49]=$6,q[50]=n6;else n6=q[50];let o6;if(q[51]!==G6)o6=w7.createElement(k,{dimColor:!0},G6),q[51]=G6,q[52]=o6;else o6=q[52];let I6;if(q[53]!==n6||q[54]!==o6)I6=w7.createElement(u,{flexDirection:"column",alignItems:"center"},n6,o6),q[53]=n6,q[54]=o6,q[55]=I6;else I6=q[55];let C6;if(q[56]!==o||q[57]!==y6||q[58]!==I6)C6=w7.createElement(u,{flexDirection:"column",width:o,justifyContent:"space-between",alignItems:"center",minHeight:9},y6,T6,I6),q[56]=o,q[57]=y6,q[58]=I6,q[59]=C6;else C6=q[59];let l6;if(q[60]!==K6)l6=K6==="horizontal"&&w7.createElement(u,{height:"100%",borderStyle:"single",borderColor:"claude",borderDimColor:!0,borderTop:!1,borderBottom:!1,borderLeft:!1}),q[60]=K6,q[61]=l6;else l6=q[61];let S6=K6==="horizontal"&&w7.createElement(dRK,{feeds:$?[sRK(b77()),qq8(K)]:w?[qq8(K),tRK()]:j?[qq8(K),RvK()]:[qq8(K),aRK(X)],maxWidth:s}),E6;if(q[62]!==f6||q[63]!==N6||q[64]!==C6||q[65]!==l6||q[66]!==S6)E6=w7.createElement(f6,{flexDirection:N6,paddingX:Z6,gap:V6},C6,l6,S6),q[62]=f6,q[63]=N6,q[64]=C6,q[65]=l6,q[66]=S6,q[67]=E6;else E6=q[67];let R6;if(q[68]!==n||q[69]!==X6||q[70]!==E6)R6=w7.createElement(n,{flexDirection:l,borderStyle:A6,borderColor:J6,borderText:X6},E6),q[68]=n,q[69]=X6,q[70]=E6,q[71]=R6;else R6=q[71];let h6;if(q[72]!==a||q[73]!==R6)h6=w7.createElement(a,null,R6),q[72]=a,q[73]=R6,q[74]=h6;else h6=q[74];let x6,b6,Q6,Y6,_6,F6;if(q[75]===Symbol.for("react.memo_cache_sentinel"))x6=w7.createElement(sF8,null),b6=w7.createElement(oF8,null),Q6=ZS6&&w7.createElement(ZS6.ChannelsNotice,null),Y6=ST()&&w7.createElement(u,{paddingLeft:2,flexDirection:"column"},w7.createElement(k,{color:"warning"},"Debug mode enabled"),w7.createElement(k,{dimColor:!0},"Logging to: ",$B()?"stderr":j96())),_6=w7.createElement(j57,null),F6=process.env.CLAUDE_CODE_TMUX_SESSION&&w7.createElement(u,{paddingLeft:2,flexDirection:"column"},w7.createElement(k,{dimColor:!0},"tmux session: ",process.env.CLAUDE_CODE_TMUX_SESSION),w7.createElement(k,{dimColor:!0},process.env.CLAUDE_CODE_TMUX_PREFIX_CONFLICTS?`Detach: ${process.env.CLAUDE_CODE_TMUX_PREFIX} ${process.env.CLAUDE_CODE_TMUX_PREFIX} d (press prefix twice - Claude uses ${process.env.CLAUDE_CODE_TMUX_PREFIX})`:`Detach: ${process.env.CLAUDE_CODE_TMUX_PREFIX} d`)),q[75]=x6,q[76]=b6,q[77]=Q6,q[78]=Y6,q[79]=_6,q[80]=F6;else x6=q[75],b6=q[76],Q6=q[77],Y6=q[78],_6=q[79],F6=q[80];let W6;if(q[81]!==P||q[82]!==M)W6=P&&w7.createElement(u,{paddingLeft:2,flexDirection:"column"},!process.env.IS_DEMO&&M.oauthAccount?.organizationName&&w7.createElement(k,{dimColor:!0},"Message from ",M.oauthAccount.organizationName,":"),w7.createElement(k,null,P)),q[81]=P,q[82]=M,q[83]=W6;else W6=q[83];let v6;if(q[84]!==O)v6=O&&w7.createElement(u,{paddingLeft:2,flexDirection:"column"},w7.createElement(k,{color:"warning"},"Your bash commands will be sandboxed. Disable with /sandbox.")),q[84]=O,q[85]=v6;else v6=q[85];let m6,K8,H8,M8;if(q[86]===Symbol.for("react.memo_cache_sentinel"))m6=!1,K8=!1,H8=!1,M8=!1,q[86]=m6,q[87]=K8,q[88]=H8,q[89]=M8;else m6=q[86],K8=q[87],H8=q[88],M8=q[89];let X1;if(q[90]!==h6||q[91]!==W6||q[92]!==v6)X1=w7.createElement(w7.Fragment,null,h6,x6,b6,Q6,Y6,_6,F6,W6,v6,m6,K8,H8,M8),q[90]=h6,q[91]=W6,q[92]=v6,q[93]=X1;else X1=q[93];return X1}function d0Y(q){if(q.lastReleaseNotesSeen==={ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.88",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION)return q;return{...q,lastReleaseNotesSeen:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.88",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION}}function c0Y(q){return q.effortValue}function l0Y(q){return q.agent}var w7,GS6,ZS6,X57=50;var WhK=y(()=>{q8();s6();t4();Q5();QF8();U7();bK();dF8();cRK();eRK();V1();U1();_8();t18();OhK();$K6();XS6();vr();m8();Cx();whK();HhK();M57();K$();O57();Z78();C7();q0();yQ();aq();w7=O6(D6(),1),GS6=O6(D6(),1),ZS6=(XhK(),Eq(MhK))});function DhK(q){let K=z6(5),{message:_,isTranscriptMode:z}=q;if(!(z&&_.type==="assistant"&&_.message.model&&_.message.content.some(n0Y)))return null;let $=O1(_.message.model)+8,A;if(K[0]!==_.message.model)A=P57.default.createElement(k,{dimColor:!0},_.message.model),K[0]=_.message.model,K[1]=A;else A=K[1];let O;if(K[2]!==$||K[3]!==A)O=P57.default.createElement(u,{minWidth:$},A),K[2]=$,K[3]=A,K[4]=O;else O=K[4];return O}function n0Y(q){return q.type==="text"}var P57;var fhK=y(()=>{q8();Q5();s6();P57=O6(D6(),1)});function ZhK(q){let K=z6(10),{message:_,isTranscriptMode:z}=q;if(!(z&&_.timestamp&&_.type==="assistant"&&_.message.content.some(i0Y)))return null;let $,A,O;if(K[0]!==_.timestamp)A=new Date(_.timestamp).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",hour12:!0}),$=u,O=O1(A),K[0]=_.timestamp,K[1]=$,K[2]=A,K[3]=O;else $=K[1],A=K[2],O=K[3];let w;if(K[4]!==A)w=W57.default.createElement(k,{dimColor:!0},A),K[4]=A,K[5]=w;else w=K[5];let j;if(K[6]!==$||K[7]!==O||K[8]!==w)j=W57.default.createElement($,{minWidth:O},w),K[6]=$,K[7]=O,K[8]=w,K[9]=j;else j=K[9];return j}function i0Y(q){return q.type==="text"}var W57;var GhK=y(()=>{q8();Q5();s6();W57=O6(D6(),1)});function ThK(q,K,_,z){for(let Y=K+1;Y<q.length;Y++){let $=q[Y];if($?.type==="assistant"){let A=$.message.content[0];if(A?.type==="thinking"||A?.type==="redacted_thinking")continue;if(A?.type==="tool_use"){if(OH6(A.name,A.input,_).isCollapsible)continue;if(z.has(A.id))continue}return!0}if($?.type==="system"||$?.type==="attachment")continue;if($?.type==="user"){if($.message.content[0]?.type==="tool_result")continue}if($?.type==="grouped_tool_use"){let A=$.messages[0]?.message.content[0]?.input;if(OH6($.toolName,A,_).isCollapsible)continue}return!0}return!1}function r0Y(q){let K=z6(64),{message:_,isUserContinuation:z,hasContentAfter:Y,tools:$,commands:A,verbose:O,inProgressToolUseIDs:w,streamingToolUseIDs:j,screen:H,canAnimate:J,onOpenRateLimitOptions:M,lastThinkingBlockId:X,latestBashOutputUUID:P,columns:W,isLoading:D,lookups:f}=q,G=H==="transcript",Z=_.type==="grouped_tool_use",T=_.type==="collapsed_read_search",v;if(K[0]!==Y||K[1]!==w||K[2]!==T||K[3]!==D||K[4]!==_)v=T&&(L67(_,w)||D&&!Y),K[0]=Y,K[1]=w,K[2]=T,K[3]=D,K[4]=_,K[5]=v;else v=K[5];let V=v,E;if(K[6]!==T||K[7]!==Z||K[8]!==_)E=Z?_.displayMessage:T?BXK(_):_,K[6]=T,K[7]=Z,K[8]=_,K[9]=E;else E=K[9];let S=E,R;if(K[10]!==T||K[11]!==Z||K[12]!==f||K[13]!==_)R=Z||T?[]:d0K(_,f),K[10]=T,K[11]=Z,K[12]=f,K[13]=_,K[14]=R;else R=K[14];let x=R,I;if(K[15]!==w||K[16]!==T||K[17]!==Z||K[18]!==f||K[19]!==_||K[20]!==H||K[21]!==j){let e=Z||T?LB8:Q0K(_,f);I=VhK(_,j,w,e,H,f),K[15]=w,K[16]=T,K[17]=Z,K[18]=f,K[19]=_,K[20]=H,K[21]=j,K[22]=I}else I=K[22];let B=I,p=!1;if(J)if(Z){let e;if(K[23]!==w||K[24]!==_.messages){let i;if(K[26]!==w)i=($6)=>{let M6=$6.message.content[0];return M6?.type==="tool_use"&&w.has(M6.id)},K[26]=w,K[27]=i;else i=K[27];e=_.messages.some(i),K[23]=w,K[24]=_.messages,K[25]=e}else e=K[25];p=e}else if(T){let e;if(K[28]!==w||K[29]!==_)e=L67(_,w),K[28]=w,K[29]=_,K[30]=e;else e=K[30];p=e}else{let e;if(K[31]!==w||K[32]!==_){let i=Qa(_);e=!i||w.has(i),K[31]=w,K[32]=_,K[33]=e}else e=K[33];p=e}let C;if(K[34]!==S||K[35]!==G)C=G&&S.type==="assistant"&&S.message.content.some(o0Y)&&(S.timestamp||S.message.model),K[34]=S,K[35]=G,K[36]=C;else C=K[36];let g=C,F=!g,U=g?void 0:W,c;if(K[37]!==A||K[38]!==w||K[39]!==V||K[40]!==B||K[41]!==G||K[42]!==z||K[43]!==X||K[44]!==P||K[45]!==f||K[46]!==_||K[47]!==M||K[48]!==x||K[49]!==p||K[50]!==F||K[51]!==U||K[52]!==$||K[53]!==O)c=qZ.createElement(Xb,{message:_,lookups:f,addMargin:F,containerWidth:U,tools:$,commands:A,verbose:O,inProgressToolUseIDs:w,progressMessagesForMessage:x,shouldAnimate:p,shouldShowDot:!0,isTranscriptMode:G,isStatic:B,onOpenRateLimitOptions:M,isActiveCollapsedGroup:V,isUserContinuation:z,lastThinkingBlockId:X,latestBashOutputUUID:P}),K[37]=A,K[38]=w,K[39]=V,K[40]=B,K[41]=G,K[42]=z,K[43]=X,K[44]=P,K[45]=f,K[46]=_,K[47]=M,K[48]=x,K[49]=p,K[50]=F,K[51]=U,K[52]=$,K[53]=O,K[54]=c;else c=K[54];let K6=c;if(!g){let e;if(K[55]!==K6)e=qZ.createElement(I0,null,K6),K[55]=K6,K[56]=e;else e=K[56];return e}let t;if(K[57]!==S||K[58]!==G)t=qZ.createElement(u,{flexDirection:"row",justifyContent:"flex-end",gap:1,marginTop:1},qZ.createElement(ZhK,{message:S,isTranscriptMode:G}),qZ.createElement(DhK,{message:S,isTranscriptMode:G})),K[57]=S,K[58]=G,K[59]=t;else t=K[59];let q6;if(K[60]!==W||K[61]!==K6||K[62]!==t)q6=qZ.createElement(I0,null,qZ.createElement(u,{width:W,flexDirection:"column"},t,K6)),K[60]=W,K[61]=K6,K[62]=t,K[63]=q6;else q6=K[63];return q6}function o0Y(q){return q.type==="text"}function a0Y(q,K){if(q.type==="grouped_tool_use")return q.messages.some((z)=>{let Y=z.message.content[0];return Y?.type==="tool_use"&&K.has(Y.id)});if(q.type==="collapsed_read_search")return UE6(q).some((Y)=>K.has(Y));let _=Qa(q);return!!_&&K.has(_)}function s0Y(q,K){if(q.type==="grouped_tool_use")return q.messages.every((z)=>{let Y=z.message.content[0];return Y?.type==="tool_use"&&K.has(Y.id)});if(q.type==="collapsed_read_search")return UE6(q).every((Y)=>K.has(Y));if(q.type==="assistant"){let z=q.message.content[0];if(z?.type==="server_tool_use")return K.has(z.id)}let _=Qa(q);return!_||K.has(_)}function t0Y(q,K){if(q.message!==K.message)return!1;if(q.screen!==K.screen)return!1;if(q.verbose!==K.verbose)return!1;if(q.message.type==="collapsed_read_search"&&K.screen!=="transcript")return!1;if(q.columns!==K.columns)return!1;let _=q.latestBashOutputUUID===q.message.uuid,z=K.latestBashOutputUUID===K.message.uuid;if(_!==z)return!1;if(q.lastThinkingBlockId!==K.lastThinkingBlockId&&hr1(K.message))return!1;let Y=a0Y(q.message,q.streamingToolUseIDs),$=s0Y(q.message,q.lookups.resolvedToolUseIDs);if(Y||!$)return!1;return!0}var qZ,vhK;var khK=y(()=>{q8();s6();Bo();i1();dE6();fhK();Yq8();GhK();$K6();qZ=O6(D6(),1);vhK=qZ.memo(r0Y,t0Y)});function tF8(q){return q.type==="attachment"&&qZY.has(q.attachment.type)}var e0Y,qZY;var D57=y(()=>{e0Y=["hook_success","hook_additional_context","hook_cancelled","command_permissions","agent_mention","budget_usd","critical_system_reminder","edited_image_file","edited_text_file","opened_file_in_ide","output_style","plan_mode","plan_mode_exit","plan_mode_reentry","structured_output","team_context","todo_reminder","context_efficiency","deferred_tools_delta","mcp_instructions_delta","companion_intro","token_usage","ultrathink_effort","max_turns_reached","task_reminder","auto_mode","auto_mode_exit","output_token_usage","pen_mode_enter","pen_mode_exit","verify_plan_reminder","current_session_memory","compaction_reminder","date_change"],qZY=new Set(e0Y)});import{relative as KZY}from"path";function NhK(q){return wZY.filter((K)=>K.isActive(q))}var LK,_ZY,zZY,YZY,$ZY,AZY,OZY,wZY;var yhK=y(()=>{s6();wM();bq();I7();U7();G7();H47();U2();oB1();LK=O6(D6(),1),_ZY={id:"large-memory-files",type:"warning",isActive:(q)=>l76(q.memoryFiles).length>0,render:(q)=>{let K=l76(q.memoryFiles);return LK.createElement(LK.Fragment,null,K.map((_)=>{let z=_.path.startsWith(Z8())?KZY(Z8(),_.path):_.path;return LK.createElement(u,{key:_.path,flexDirection:"row"},LK.createElement(k,{color:"warning"},t6.warning),LK.createElement(k,{color:"warning"},"Large ",LK.createElement(k,{bold:!0},z)," will impact performance (",mK(_.content.length)," chars >"," ",mK(eF),")",LK.createElement(k,{dimColor:!0}," · /memory to edit")))}))}},zZY={id:"claude-ai-external-token",type:"warning",isActive:()=>{let q=qS();return d7()&&(q.source==="ANTHROPIC_AUTH_TOKEN"||q.source==="apiKeyHelper")},render:()=>{let q=qS();return LK.createElement(u,{flexDirection:"row",marginTop:1},LK.createElement(k,{color:"warning"},t6.warning),LK.createElement(k,{color:"warning"},"Auth conflict: Using ",q.source," instead of Claude account subscription token. Either unset ",q.source,", or run `claude /logout`."))}},YZY={id:"api-key-conflict",type:"warning",isActive:()=>{return 0;let{source:q}=Ow({skipRetrievingKeyFromApiKeyHelper:!0});return!!NG6()&&(q==="ANTHROPIC_API_KEY"||q==="apiKeyHelper")},render:()=>{let{source:q}=Ow({skipRetrievingKeyFromApiKeyHelper:!0});return LK.createElement(u,{flexDirection:"row",marginTop:1},LK.createElement(k,{color:"warning"},t6.warning),LK.createElement(k,{color:"warning"},"Auth conflict: Using ",q," instead of Anthropic Console key. Either unset ",q,", or run `claude /logout`."))}},$ZY={id:"both-auth-methods",type:"warning",isActive:()=>{let{source:q}=Ow({skipRetrievingKeyFromApiKeyHelper:!0}),K=qS();return q!=="none"&&K.source!=="none"&&!(q==="apiKeyHelper"&&K.source==="apiKeyHelper")},render:()=>{let{source:q}=Ow({skipRetrievingKeyFromApiKeyHelper:!0}),K=qS();return LK.createElement(u,{flexDirection:"column",marginTop:1},LK.createElement(u,{flexDirection:"row"},LK.createElement(k,{color:"warning"},t6.warning),LK.createElement(k,{color:"warning"},"Auth conflict: Both a token (",K.source,") and an API key (",q,") are set. This may lead to unexpected behavior.")),LK.createElement(u,{flexDirection:"column",marginLeft:3},LK.createElement(k,{color:"warning"},"· Trying to use"," ",K.source==="claude.ai"?"claude.ai":K.source,"?"," ",q==="ANTHROPIC_API_KEY"?'Unset the ANTHROPIC_API_KEY environment variable, or claude /logout then say "No" to the API key approval before login.':q==="apiKeyHelper"?"Unset the apiKeyHelper setting.":"claude /logout"),LK.createElement(k,{color:"warning"},"· Trying to use ",q,"?"," ",K.source==="claude.ai"?"claude /logout to sign out of claude.ai.":`Unset the ${K.source} environment variable.`)))}},AZY={id:"large-agent-descriptions",type:"warning",isActive:(q)=>{return V78(q.agentDefinitions)>FH6},render:(q)=>{let K=V78(q.agentDefinitions);return LK.createElement(u,{flexDirection:"row"},LK.createElement(k,{color:"warning"},t6.warning),LK.createElement(k,{color:"warning"},"Large cumulative agent descriptions will impact performance (~",mK(K)," tokens >"," ",mK(FH6),")",LK.createElement(k,{dimColor:!0}," · /agents to manage")))}},OZY={id:"jetbrains-plugin-install",type:"info",isActive:(q)=>{if(!VN6())return!1;if(!(q.config.autoInstallIdeExtension??!0))return!1;let _=vN6();return _!==null&&!bh4(_)},render:()=>{let q=vN6(),K=pj(q);return LK.createElement(u,{flexDirection:"row",gap:1,marginLeft:1},LK.createElement(k,{color:"ide"},t6.arrowUp),LK.createElement(k,null,"Install the ",LK.createElement(k,{color:"ide"},K)," plugin from the JetBrains Marketplace:"," ",LK.createElement(k,{bold:!0},"https://docs.claude.com/s/claude-code-jetbrains")))}},wZY=[_ZY,AZY,zZY,YZY,$ZY,OZY]});function LhK(q){let K=z6(4),{agentDefinitions:_}=q===void 0?{}:q,z=j8(),Y;if(K[0]===Symbol.for("react.memo_cache_sentinel"))Y=yH(),K[0]=Y;else Y=K[0];let $={config:z,agentDefinitions:_,memoryFiles:EhK.use(Y)},A=NhK($);if(A.length===0)return null;let O=u,w="column",j=1,H=A.map((M)=>$J6.createElement($J6.Fragment,{key:M.id},M.render($))),J;if(K[1]!==O||K[2]!==H)J=$J6.createElement(O,{flexDirection:w,paddingLeft:j},H),K[1]=O,K[2]=H,K[3]=J;else J=K[3];return J}var $J6,EhK;var RhK=y(()=>{q8();s6();wM();V1();yhK();$J6=O6(D6(),1),EhK=O6(D6(),1)});function hhK(q,K,_){let z=mA.useRef(new Map),Y=mA.useRef(0),$=mA.useRef(0),A=mA.useRef({arr:new Float64Array(0),version:-1,n:-1}),O=mA.useRef(new Map),w=mA.useRef(new Map),j=mA.useRef(_),H=mA.useRef(!1),J=mA.useRef(null),M=mA.useRef(0);if(j.current!==_){let $6=j.current/_;j.current=_;for(let[M6,j6]of z.current)z.current.set(M6,Math.max(1,Math.round(j6*$6)));Y.current++,H.current=!0,M.current=2}let X=M.current>0?J.current:null,P=mA.useRef(0),W=mA.useRef(null),D=mA.useCallback(($6)=>q.current?.subscribe($6)??MZY,[q]);mA.useSyncExternalStore(D,()=>{let $6=q.current;if(!$6)return NaN;let M6=$6.getScrollTop()+$6.getPendingDelta(),j6=Math.floor(M6/JZY);return $6.isSticky()?~j6:j6});let f=q.current?.getScrollTop()??-1,G=q.current?.getPendingDelta()??0,Z=q.current?.getViewportHeight()??0,T=q.current?.isSticky()??!0;mA.useMemo(()=>{let $6=new Set(K),M6=!1;for(let j6 of z.current.keys())if(!$6.has(j6))z.current.delete(j6),M6=!0;for(let j6 of w.current.keys())if(!$6.has(j6))w.current.delete(j6);if(M6)Y.current++},[K]);let v=K.length;if(A.current.version!==Y.current||A.current.n!==v){let $6=A.current.arr.length>=v+1?A.current.arr:new Float64Array(v+1);$6[0]=0;for(let M6=0;M6<v;M6++)$6[M6+1]=$6[M6]+(z.current.get(K[M6])??jZY);A.current={arr:$6,version:Y.current,n:v}}let V=A.current.arr,E=V[v],S,R;if(X)[S,R]=X,S=Math.min(S,v),R=Math.min(R,v);else if(Z===0||f<0)S=Math.max(0,v-HZY),R=v;else{if(T){let o=Z+TS6;S=v;while(S>0&&E-V[S-1]<o)S--;R=v}else{let o=P.current,s=Z*3,a=Math.min(f,f+G),n=Math.max(f,f+G),l=n-a,A6=l>s?G<0?n-s:a:a,J6=A6+Math.min(l,s),X6=Math.max(0,A6-o),f6=J6-o,N6=X6-TS6;{let T6=0,n6=v;while(T6<n6){let o6=T6+n6>>1;if(V[o6+1]<=N6)T6=o6+1;else n6=o6}S=T6}{let T6=J.current;if(T6&&T6[0]<S)for(let n6=T6[0];n6<Math.min(S,T6[1]);n6++){let o6=K[n6];if(O.current.has(o6)&&!z.current.has(o6)){S=n6;break}}}let Z6=Z+2*TS6,V6=Math.min(v,S+$q8),y6=0;R=S;while(R<V6&&(y6<Z6||V[R]<f6+Z+TS6))y6+=z.current.get(K[R])??f57,R++}let $6=Z+2*TS6,M6=Math.max(0,R-$q8),j6=0;for(let o=S;o<R;o++)j6+=z.current.get(K[o])??f57;while(S>M6&&j6<$6)S--,j6+=z.current.get(K[S])??f57;let G6=J.current,w6=Math.abs(f-$.current)+Math.abs(G);if(G6&&w6>Z*2){let[o,s]=G6;if(S<o-Aq8)S=o-Aq8;if(R>s+Aq8)R=s+Aq8;if(S>R)R=Math.min(S+Aq8,v)}$.current=f}if(M.current>0)M.current--;else J.current=[S,R];let x=mA.useDeferredValue(S),I=mA.useDeferredValue(R),B=S<x?x:S,p=R>I?I:R;if(B>p||T)B=S,p=R;if(G>0)p=R;if(p-B>$q8){let $6=(V[B]+V[p])/2;if(f-P.current<$6)p=B+$q8;else B=p-$q8}let C=P.current,g=V[B],F=B===0?0:g+C,U=p===v?1/0:Math.max(g,V[p]-Z)+C;mA.useLayoutEffect(()=>{if(T)q.current?.setClampBounds(void 0,void 0);else q.current?.setClampBounds(F,U)}),mA.useLayoutEffect(()=>{let $6=W.current?.yogaNode;if($6&&$6.getComputedWidth()>0)P.current=$6.getComputedTop();if(H.current){H.current=!1;return}let M6=!1;for(let[j6,G6]of O.current){let w6=G6.yogaNode;if(!w6)continue;let o=w6.getComputedHeight(),s=z.current.get(j6);if(o>0){if(s!==o)z.current.set(j6,o),M6=!0}else if(w6.getComputedWidth()>0&&s!==0)z.current.set(j6,0),M6=!0}if(M6)Y.current++});let c=mA.useCallback(($6)=>{let M6=w.current.get($6);if(!M6)M6=(j6)=>{if(j6)O.current.set($6,j6);else{let G6=O.current.get($6)?.yogaNode;if(G6&&!H.current){let w6=G6.getComputedHeight();if((w6>0||G6.getComputedWidth()>0)&&z.current.get($6)!==w6)z.current.set($6,w6),Y.current++}O.current.delete($6)}},w.current.set($6,M6);return M6},[]),K6=mA.useCallback(($6)=>{let M6=O.current.get(K[$6])?.yogaNode;if(!M6||M6.getComputedWidth()===0)return-1;return M6.getComputedTop()},[K]),t=mA.useCallback(($6)=>O.current.get(K[$6])??null,[K]),q6=mA.useCallback(($6)=>z.current.get(K[$6]),[K]),e=mA.useCallback(($6)=>{let M6=A.current;if($6<0||$6>=M6.n)return;q.current?.scrollTo(M6.arr[$6]+P.current)},[q]),i=E-V[p];return{range:[B,p],topSpacer:g,bottomSpacer:i,measureRef:c,spacerRef:W,offsets:V,getItemTop:K6,getItemElement:t,getItemHeight:q6,scrollToIndex:e}}var mA,jZY=3,TS6=80,HZY=30,JZY,f57=1,$q8=300,Aq8=25,MZY=()=>{};var ShK=y(()=>{mA=O6(D6(),1),JZY=TS6>>1});function uhK(q){let K=z6(6),{children:_}=q,[z,Y]=hM.useState(null),[$,A]=hM.useState(null),O;if(K[0]!==_||K[1]!==$)O=hM.default.createElement(xhK.Provider,{value:$},_),K[0]=_,K[1]=$,K[2]=O;else O=K[2];let w;if(K[3]!==z||K[4]!==O)w=hM.default.createElement(bhK.Provider,{value:Y},hM.default.createElement(IhK.Provider,{value:A},hM.default.createElement(ChK.Provider,{value:z},O))),K[3]=z,K[4]=O,K[5]=w;else w=K[5];return w}function mhK(){return hM.useContext(ChK)}function phK(){return hM.useContext(xhK)}function BhK(q){let K=z6(4),_=hM.useContext(bhK),z,Y;if(K[0]!==q||K[1]!==_)z=()=>{if(!_)return;return _(q),()=>_(null)},Y=[_,q],K[0]=q,K[1]=_,K[2]=z,K[3]=Y;else z=K[2],Y=K[3];hM.useEffect(z,Y)}function ghK(q){let K=z6(4),_=hM.useContext(IhK),z,Y;if(K[0]!==q||K[1]!==_)z=()=>{if(!_)return;return _(q),()=>_(null)},Y=[_,q],K[0]=q,K[1]=_,K[2]=z,K[3]=Y;else z=K[2],Y=K[3];hM.useEffect(z,Y)}var hM,ChK,bhK,xhK,IhK;var eF8=y(()=>{q8();hM=O6(D6(),1),ChK=hM.createContext(null),bhK=hM.createContext(null),xhK=hM.createContext(null),IhK=hM.createContext(null)});import{fileURLToPath as XZY}from"url";function UhK(q){let[K,_]=h3.useState(null),z=h3.useRef(q);z.current=q;let Y=h3.useRef(null),$=h3.useCallback(()=>{_(null)},[]),A=h3.useCallback((j)=>{let H=Math.max(0,j.getScrollHeight()-j.getViewportHeight());if(j.getScrollTop()+j.getPendingDelta()>=H)return;if(Y.current===null)Y.current=j.getScrollHeight(),_(z.current)},[]),O=h3.useCallback((j)=>{if(!j)return;j.scrollToBottom()},[]);h3.useEffect(()=>{if(K===null)Y.current=null;else if(q<K)Y.current=null,_(null)},[q,K]);let w=h3.useCallback((j,H)=>{if(_((J)=>J===null?null:J+j),Y.current!==null)Y.current+=H},[]);return{dividerIndex:K,dividerYRef:Y,onScrollAway:A,onRepin:$,jumpToNew:O,shiftDivider:w}}function PZY(q,K){let _=0,z=!1;for(let Y=K;Y<q.length;Y++){let $=q[Y];if($.type==="progress")continue;if($.type==="assistant"&&!WZY($))continue;let A=$.type==="assistant";if(A&&!z)_++;z=A}return _}function WZY(q){if(q.type!=="assistant")return!1;for(let K of q.message.content)if(K.type==="text"&&K.text.trim()!=="")return!0;return!1}function QhK(q,K){if(K===null)return;let _=K;while(_<q.length&&(q[_]?.type==="progress"||tF8(q[_])))_++;let z=q[_]?.uuid;if(!z)return;let Y=PZY(q,K);return{firstUnseenUuid:z,count:Math.max(1,Y)}}function G57(q){let K=z6(47),{scrollable:_,bottom:z,overlay:Y,bottomFloat:$,modal:A,modalScrollRef:O,scrollRef:w,dividerYRef:j,hidePill:H,hideSticky:J,newMessageCount:M,onPillClick:X}=q,P=H===void 0?!1:H,W=J===void 0?!1:J,D=M===void 0?0:M,{rows:f,columns:G}=t1(),[Z,T]=h3.useState(null),v;if(K[0]===Symbol.for("react.memo_cache_sentinel"))v={setStickyPrompt:T},K[0]=v;else v=K[0];let V=v,E;if(K[1]!==w)E=(p)=>w?.current?.subscribe(p)??ZZY,K[1]=w,K[2]=E;else E=K[2];let S=E,R;if(K[3]!==j||K[4]!==w)R=()=>{let p=w?.current,C=j?.current;if(!p||C==null)return!1;return p.getScrollTop()+p.getPendingDelta()+p.getViewportHeight()<C},K[3]=j,K[4]=w,K[5]=R;else R=K[5];let x=h3.useSyncExternalStore(S,R),I;if(K[6]===Symbol.for("react.memo_cache_sentinel"))I=[],K[6]=I;else I=K[6];if(h3.useLayoutEffect(DZY,I),p4()){let p=W?null:Z,C=p!=null&&p!=="clicked"&&Y==null?p:null,g=p!=null&&Y==null,F;if(K[7]!==C)F=C&&h3.default.createElement(TZY,{text:C.text,onClick:C.scrollTo}),K[7]=C,K[8]=F;else F=K[8];let U=g?0:1,c;if(K[9]!==_)c=h3.default.createElement(Z57,{value:V},_),K[9]=_,K[10]=c;else c=K[10];let K6;if(K[11]!==Y||K[12]!==w||K[13]!==c||K[14]!==U)K6=h3.default.createElement(xh6,{ref:w,flexGrow:1,flexDirection:"column",paddingTop:U,stickyScroll:!0},c,Y),K[11]=Y,K[12]=w,K[13]=c,K[14]=U,K[15]=K6;else K6=K[15];let t;if(K[16]!==P||K[17]!==D||K[18]!==X||K[19]!==Y||K[20]!==x)t=!P&&x&&Y==null&&h3.default.createElement(GZY,{count:D,onClick:X}),K[16]=P,K[17]=D,K[18]=X,K[19]=Y,K[20]=x,K[21]=t;else t=K[21];let q6;if(K[22]!==$)q6=$!=null&&h3.default.createElement(u,{position:"absolute",bottom:0,right:0,opaque:!0},$),K[22]=$,K[23]=q6;else q6=K[23];let e;if(K[24]!==K6||K[25]!==t||K[26]!==q6||K[27]!==F)e=h3.default.createElement(u,{flexGrow:1,flexDirection:"column",overflow:"hidden"},F,K6,t,q6),K[24]=K6,K[25]=t,K[26]=q6,K[27]=F,K[28]=e;else e=K[28];let i,$6;if(K[29]===Symbol.for("react.memo_cache_sentinel"))i=h3.default.createElement(vZY,null),$6=h3.default.createElement(kZY,null),K[29]=i,K[30]=$6;else i=K[29],$6=K[30];let M6;if(K[31]!==z)M6=h3.default.createElement(u,{flexDirection:"column",flexShrink:0,width:"100%",maxHeight:"50%"},i,$6,h3.default.createElement(u,{flexDirection:"column",width:"100%",flexGrow:1,overflowY:"hidden"},z)),K[31]=z,K[32]=M6;else M6=K[32];let j6;if(K[33]!==G||K[34]!==A||K[35]!==O||K[36]!==f)j6=A!=null&&h3.default.createElement(fa6,{value:{rows:f-FhK-1,columns:G-4,scrollRef:O??null}},h3.default.createElement(u,{position:"absolute",bottom:0,left:0,right:0,maxHeight:f-FhK,flexDirection:"column",overflow:"hidden",opaque:!0},h3.default.createElement(u,{flexShrink:0},h3.default.createElement(k,{color:"permission"},"▔".repeat(G))),h3.default.createElement(u,{flexDirection:"column",paddingX:2,flexShrink:0,overflow:"hidden"},A))),K[33]=G,K[34]=A,K[35]=O,K[36]=f,K[37]=j6;else j6=K[37];let G6;if(K[38]!==e||K[39]!==M6||K[40]!==j6)G6=h3.default.createElement(uhK,null,e,M6,j6),K[38]=e,K[39]=M6,K[40]=j6,K[41]=G6;else G6=K[41];return G6}let B;if(K[42]!==z||K[43]!==A||K[44]!==Y||K[45]!==_)B=h3.default.createElement(h3.default.Fragment,null,_,z,Y,A),K[42]=z,K[43]=A,K[44]=Y,K[45]=_,K[46]=B;else B=K[46];return B}function DZY(){if(!p4())return;let q=VA.get(process.stdout);if(!q)return;return q.onHyperlinkClick=fZY,()=>{q.onHyperlinkClick=void 0}}function fZY(q){if(q.startsWith("file:"))try{YN6(XZY(q))}catch{}else m3(q)}function ZZY(){}function GZY(q){let K=z6(10),{count:_,onClick:z}=q,[Y,$]=h3.useState(!1),A,O;if(K[0]===Symbol.for("react.memo_cache_sentinel"))A=()=>$(!0),O=()=>$(!1),K[0]=A,K[1]=O;else A=K[0],O=K[1];let w=Y?"userMessageBackgroundHover":"userMessageBackground",j;if(K[2]!==_)j=_>0?`${_} new ${A7(_,"message")}`:"Jump to bottom",K[2]=_,K[3]=j;else j=K[3];let H;if(K[4]!==w||K[5]!==j)H=h3.default.createElement(k,{backgroundColor:w,dimColor:!0}," ",j," ",t6.arrowDown," "),K[4]=w,K[5]=j,K[6]=H;else H=K[6];let J;if(K[7]!==z||K[8]!==H)J=h3.default.createElement(u,{position:"absolute",bottom:0,left:0,right:0,justifyContent:"center"},h3.default.createElement(u,{onClick:z,onMouseEnter:A,onMouseLeave:O},H)),K[7]=z,K[8]=H,K[9]=J;else J=K[9];return J}function TZY(q){let K=z6(8),{text:_,onClick:z}=q,[Y,$]=h3.useState(!1),A=Y?"userMessageBackgroundHover":"userMessageBackground",O,w;if(K[0]===Symbol.for("react.memo_cache_sentinel"))O=()=>$(!0),w=()=>$(!1),K[0]=O,K[1]=w;else O=K[0],w=K[1];let j;if(K[2]!==_)j=h3.default.createElement(k,{color:"subtle",wrap:"truncate-end"},t6.pointer," ",_),K[2]=_,K[3]=j;else j=K[3];let H;if(K[4]!==z||K[5]!==A||K[6]!==j)H=h3.default.createElement(u,{flexShrink:0,width:"100%",height:1,paddingRight:1,backgroundColor:A,onClick:z,onMouseEnter:O,onMouseLeave:w},j),K[4]=z,K[5]=A,K[6]=j,K[7]=H;else H=K[7];return H}function vZY(){let q=z6(4),K=mhK();if(!K||K.suggestions.length===0)return null;let _;if(q[0]!==K.maxColumnWidth||q[1]!==K.selectedSuggestion||q[2]!==K.suggestions)_=h3.default.createElement(u,{position:"absolute",bottom:"100%",left:0,right:0,paddingX:2,paddingTop:1,flexDirection:"column",opaque:!0},h3.default.createElement(pGK,{suggestions:K.suggestions,selectedSuggestion:K.selectedSuggestion,maxColumnWidth:K.maxColumnWidth,overlay:!0})),q[0]=K.maxColumnWidth,q[1]=K.selectedSuggestion,q[2]=K.suggestions,q[3]=_;else _=q[3];return _}function kZY(){let q=z6(2),K=phK();if(!K)return null;let _;if(q[0]!==K)_=h3.default.createElement(u,{position:"absolute",bottom:"100%",left:0,right:0,opaque:!0},K),q[0]=K,q[1]=_;else _=q[1];return _}var h3,FhK=2,Z57;var T57=y(()=>{q8();bq();CU();eF8();t4();Ag8();QV();s6();hH();_M();D57();$g8();h3=O6(D6(),1),Z57=h3.createContext({setStickyPrompt:()=>{}})});function VZY(q){let K=dhK.get(q);if(K!==void 0)return K;let _=mF8(q);return dhK.set(q,_),_}function yZY(q){let K=chK.get(q);if(K!==void 0)return K;let _=EZY(q);return chK.set(q,_),_}function EZY(q){let K=null;if(q.type==="user"){if(q.isMeta||q.isVisibleInTranscriptOnly)return null;let z=q.message.content[0];if(z?.type!=="text")return null;K=z.text}else if(q.type==="attachment"&&q.attachment.type==="queued_command"&&q.attachment.commandMode!=="task-notification"&&!q.attachment.isMeta){let z=q.attachment.prompt;K=typeof z==="string"?z:z.flatMap((Y)=>Y.type==="text"?[Y.text]:[]).join(`
6257
+ `)}var hRK="</system-reminder>",SRK,CRK;var Y57=y(()=>{i1();SRK=new Set([fq6,j0]),CRK=new WeakMap});function xRK(q){if(q>=70)return"horizontal";return"compact"}function IRK(q,K,_){if(K==="horizontal"){let Y=_,$=$57+BF8+pF8+Y,A=q-$,O=Math.max(30,A),w=Math.min(Y+O+pF8+BF8,q-$57);if(w<Y+O+pF8+BF8)O=w-Y-pF8-BF8;return{leftWidth:Y,rightWidth:O,totalWidth:w}}let z=Math.min(q-$57,bRK+20);return{leftWidth:z,rightWidth:z,totalWidth:z}}function uRK(q,K,_){let z=Math.max(O1(q),O1(K),O1(_),20);return Math.min(z+4,bRK)}function FF8(q){if(!q||q.length>A0Y)return"Welcome back!";return`Welcome back ${q}!`}function t78(q,K){if(O1(q)<=K)return q;let _="/",z="…",Y=1,$=1,A=q.split(_),O=A[0]||"",w=A[A.length-1]||"",j=O1(O),H=O1(w);if(A.length===1)return T4(q,K);if(O===""&&Y+$+H>=K)return`${_}${T4(w,Math.max(1,K-$))}`;if(O!==""&&Y*2+$+H>=K)return`${z}${_}${T4(w,Math.max(1,K-Y-$))}`;if(A.length===2){let X=K-Y-$-H;return`${H96(O,X)}${z}${_}${w}`}let J=K-j-H-Y-2*$;if(J<=0){let X=Math.max(0,K-H-Y-2*$);return`${H96(O,X)}${_}${z}${_}${w}`}let M=[];for(let X=A.length-2;X>0;X--){let P=A[X];if(P&&O1(P)+$<=J)M.unshift(P),J-=O1(P)+$;else break}if(M.length===0)return`${O}${_}${z}${_}${w}`;return`${O}${_}${z}${_}${M.join(_)}${_}${w}`}async function mRK(){if(gF8)return gF8;let q=N8();return gF8=_L6(10).then((K)=>{return s78=K.filter((_)=>{if(_.isSidechain)return!1;if(_.sessionId===q)return!1;if(_.summary?.includes("I apologize"))return!1;let z=_.summary&&_.summary!=="No prompt",Y=_.firstPrompt&&_.firstPrompt!=="No prompt";return z||Y}).slice(0,3),s78}).catch(()=>{return s78=[],s78}),gF8}function pRK(){return s78}function UF8(){let q=process.env.DEMO_VERSION??{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.88",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION,K=gn8(),_=process.env.DEMO_VERSION?"/code/claude":_3(Z8()),z=K?`${_} in ${K.replace(/^https?:\/\//,"")}`:_,Y=d7()?ED8():"API Usage Billing",$=N7().agent;return{version:q,cwd:z,billingType:Y,agentName:$}}function BRK(q,K,_){if(O1(q)+3+O1(K)>_)return{shouldSplit:!0,truncatedModel:d5(q,_),truncatedBilling:d5(K,_)};return{shouldSplit:!1,truncatedModel:d5(q,Math.max(_-O1(K)-3,10)),truncatedBilling:K}}function gRK(q){let K=SF8();if(!K)return[];let _;try{_=CF8(K)}catch{return[]}let z=[],Y=Object.keys(_).sort(($,A)=>Vv($,A)?-1:1).slice(0,3);for(let $ of Y){let A=_[$];if(A)z.push(...A)}return z.slice(0,q)}var bRK=50,A0Y=20,$57=4,pF8=1,BF8=2,s78,gF8=null;var QF8=y(()=>{v8();Q5();G7();I7();bK();U7();XS6();_K();U1();s78=[]});function qJ6(q){let K=z6(26),_;if(K[0]!==q)_=q===void 0?{}:q,K[0]=q,K[1]=_;else _=K[1];let{pose:z}=_,Y=z===void 0?"default":z;if(a1.terminal==="Apple_Terminal"){let D;if(K[2]!==Y)D=bz.createElement(j0Y,{pose:Y}),K[2]=Y,K[3]=D;else D=K[3];return D}let $=O0Y[Y],A;if(K[4]!==$.r1L)A=bz.createElement(k,{color:"clawd_body"},$.r1L),K[4]=$.r1L,K[5]=A;else A=K[5];let O;if(K[6]!==$.r1E)O=bz.createElement(k,{color:"clawd_body",backgroundColor:"clawd_background"},$.r1E),K[6]=$.r1E,K[7]=O;else O=K[7];let w;if(K[8]!==$.r1R)w=bz.createElement(k,{color:"clawd_body"},$.r1R),K[8]=$.r1R,K[9]=w;else w=K[9];let j;if(K[10]!==A||K[11]!==O||K[12]!==w)j=bz.createElement(k,null,A,O,w),K[10]=A,K[11]=O,K[12]=w,K[13]=j;else j=K[13];let H;if(K[14]!==$.r2L)H=bz.createElement(k,{color:"clawd_body"},$.r2L),K[14]=$.r2L,K[15]=H;else H=K[15];let J;if(K[16]===Symbol.for("react.memo_cache_sentinel"))J=bz.createElement(k,{color:"clawd_body",backgroundColor:"clawd_background"},"█████"),K[16]=J;else J=K[16];let M;if(K[17]!==$.r2R)M=bz.createElement(k,{color:"clawd_body"},$.r2R),K[17]=$.r2R,K[18]=M;else M=K[18];let X;if(K[19]!==H||K[20]!==M)X=bz.createElement(k,null,H,J,M),K[19]=H,K[20]=M,K[21]=X;else X=K[21];let P;if(K[22]===Symbol.for("react.memo_cache_sentinel"))P=bz.createElement(k,{color:"clawd_body"}," ","▘▘ ▝▝"," "),K[22]=P;else P=K[22];let W;if(K[23]!==X||K[24]!==j)W=bz.createElement(u,{flexDirection:"column"},j,X,P),K[23]=X,K[24]=j,K[25]=W;else W=K[25];return W}function j0Y(q){let K=z6(10),{pose:_}=q,z;if(K[0]===Symbol.for("react.memo_cache_sentinel"))z=bz.createElement(k,{color:"clawd_body"},"▗"),K[0]=z;else z=K[0];let Y=w0Y[_],$;if(K[1]!==Y)$=bz.createElement(k,{color:"clawd_background",backgroundColor:"clawd_body"},Y),K[1]=Y,K[2]=$;else $=K[2];let A;if(K[3]===Symbol.for("react.memo_cache_sentinel"))A=bz.createElement(k,{color:"clawd_body"},"▖"),K[3]=A;else A=K[3];let O;if(K[4]!==$)O=bz.createElement(k,null,z,$,A),K[4]=$,K[5]=O;else O=K[5];let w,j;if(K[6]===Symbol.for("react.memo_cache_sentinel"))w=bz.createElement(k,{backgroundColor:"clawd_body"}," ".repeat(7)),j=bz.createElement(k,{color:"clawd_body"},"▘▘ ▝▝"),K[6]=w,K[7]=j;else w=K[6],j=K[7];let H;if(K[8]!==O)H=bz.createElement(u,{flexDirection:"column",alignItems:"center"},O,w,j),K[8]=O,K[9]=H;else H=K[9];return H}var bz,O0Y,w0Y;var dF8=y(()=>{q8();s6();y_();bz=O6(D6(),1),O0Y={default:{r1L:" ▐",r1E:"▛███▜",r1R:"▌",r2L:"▝▜",r2R:"▛▘"},"look-left":{r1L:" ▐",r1E:"▟███▟",r1R:"▌",r2L:"▝▜",r2R:"▛▘"},"look-right":{r1L:" ▐",r1E:"▙███▙",r1R:"▌",r2L:"▝▜",r2R:"▛▘"},"arms-up":{r1L:"▗▟",r1E:"▛███▜",r1R:"▙▖",r2L:" ▜",r2R:"▛ "}},w0Y={default:" ▗ ▖ ","look-left":" ▘ ▘ ","look-right":" ▝ ▝ ","arms-up":" ▗ ▖ "}});function FRK(q){let{title:K,lines:_,footer:z,emptyMessage:Y,customContent:$}=q,A=O1(K);if($!==void 0)A=Math.max(A,$.width);else if(_.length===0&&Y)A=Math.max(A,O1(Y));else{let w=Math.max(0,..._.map((j)=>j.timestamp?O1(j.timestamp):0));for(let j of _){let H=w>0?w:0,J=O1(j.text)+(H>0?H+2:0);A=Math.max(A,J)}}if(z)A=Math.max(A,O1(z));return A}function URK(q){let K=z6(15),{config:_,actualWidth:z}=q,{title:Y,lines:$,footer:A,emptyMessage:O,customContent:w}=_,j;if(K[0]!==$)j=Math.max(0,...$.map(H0Y)),K[0]=$,K[1]=j;else j=K[1];let H=j,J;if(K[2]!==Y)J=uA.createElement(k,{bold:!0,color:"claude"},Y),K[2]=Y,K[3]=J;else J=K[3];let M;if(K[4]!==z||K[5]!==w||K[6]!==O||K[7]!==A||K[8]!==$||K[9]!==H)M=w?uA.createElement(uA.Fragment,null,w.content,A&&uA.createElement(k,{dimColor:!0,italic:!0},d5(A,z))):$.length===0&&O?uA.createElement(k,{dimColor:!0},d5(O,z)):uA.createElement(uA.Fragment,null,$.map((P,W)=>{let D=Math.max(10,z-(H>0?H+2:0));return uA.createElement(k,{key:W},H>0&&uA.createElement(uA.Fragment,null,uA.createElement(k,{dimColor:!0},(P.timestamp||"").padEnd(H))," "),uA.createElement(k,null,d5(P.text,D)))}),A&&uA.createElement(k,{dimColor:!0,italic:!0},d5(A,z))),K[4]=z,K[5]=w,K[6]=O,K[7]=A,K[8]=$,K[9]=H,K[10]=M;else M=K[10];let X;if(K[11]!==z||K[12]!==J||K[13]!==M)X=uA.createElement(u,{flexDirection:"column",width:z},J,M),K[11]=z,K[12]=J,K[13]=M,K[14]=X;else X=K[14];return X}function H0Y(q){return q.timestamp?O1(q.timestamp):0}var uA;var QRK=y(()=>{q8();Q5();s6();U7();uA=O6(D6(),1)});function dRK(q){let K=z6(10),{feeds:_0dRK,maxWidth:z}=q,_=_0dRK.filter(Boolean),Y;if(K[0]!==_){let j=_.map(J0Y);Y=Math.max(...j),K[0]=_,K[1]=Y}else Y=K[1];let A=Math.min(Y,z),O;if(K[2]!==A||K[3]!==_){let j;if(K[5]!==A||K[6]!==_.length)j=(H,J)=>Vp.createElement(Vp.Fragment,{key:J},Vp.createElement(URK,{config:H,actualWidth:A}),J<_.length-1&&Vp.createElement(R$,{color:"claude",width:A})),K[5]=A,K[6]=_.length,K[7]=j;else j=K[7];O=_.map(j),K[2]=A,K[3]=_,K[4]=O}else O=K[4];let w;if(K[8]!==O)w=Vp.createElement(u,{flexDirection:"column"},O),K[8]=O,K[9]=w;else w=K[9];return w}function J0Y(q){return FRK(q)}var Vp;var cRK=y(()=>{q8();s6();lC();QRK();Vp=O6(D6(),1)});async function M0Y(q="claude_code_guest_pass"){let{accessToken:K,orgUUID:_}=await pH(),z={...UY(K),"x-organization-uuid":_},Y=`${u7().BASE_API_URL}/api/oauth/organizations/${_}/referral/eligibility`;return(await $1.get(Y,{headers:z,params:{campaign:q},timeout:5000})).data}async function iRK(q="claude_code_guest_pass"){let{accessToken:K,orgUUID:_}=await pH(),z={...UY(K),"x-organization-uuid":_},Y=`${u7().BASE_API_URL}/api/oauth/organizations/${_}/referral/redemptions`;return(await $1.get(Y,{headers:z,params:{campaign:q},timeout:1e4})).data}function rRK(){return!!(B_()?.organizationUuid&&d7()&&yK()==="max")}function fS6(){if(!rRK())return{eligible:!1,needsRefresh:!1,hasCache:!1};let q=B_()?.organizationUuid;if(!q)return{eligible:!1,needsRefresh:!1,hasCache:!1};let _=j8().passesEligibilityCache?.[q];if(!_)return{eligible:!1,needsRefresh:!0,hasCache:!1};let{eligible:z,timestamp:Y}=_,A=Date.now()-Y>nRK;return{eligible:z,needsRefresh:A,hasCache:!0}}function S56(q){let K=X0Y[q.currency]??`${q.currency} `,_=q.amount_minor_units/100,z=_%1===0?_.toString():_.toFixed(2);return`${K}${z}`}function C56(){let q=B_()?.organizationUuid;if(!q)return null;return j8().passesEligibilityCache?.[q]?.referrer_reward??null}function cF8(){let q=B_()?.organizationUuid;if(!q)return null;return j8().passesEligibilityCache?.[q]?.remaining_passes??null}async function lRK(){if(e78)return N("Passes: Reusing in-flight eligibility fetch"),e78;let q=B_()?.organizationUuid;if(!q)return null;return e78=(async()=>{try{let K=await M0Y(),_={...K,timestamp:Date.now()};return b8((z)=>({...z,passesEligibilityCache:{...z.passesEligibilityCache,[q]:_}})),N(`Passes eligibility cached for org ${q}: ${K.eligible}`),K}catch(K){return N("Failed to fetch and cache passes eligibility"),H6(K),null}finally{e78=null}})(),e78}async function A57(){if(!rRK())return null;let q=B_()?.organizationUuid;if(!q)return null;let _=j8().passesEligibilityCache?.[q],z=Date.now();if(!_)return N("Passes: No cache, fetching eligibility in background (command unavailable this session)"),lRK(),null;if(z-_.timestamp>nRK){N("Passes: Cache stale, returning cached data and refreshing in background"),lRK();let{timestamp:A,...O}=_;return O}N("Passes: Using fresh cached eligibility data");let{timestamp:Y,...$}=_;return $}async function oRK(){if(iA())return;A57()}var nRK=86400000,e78=null,X0Y;var b56=y(()=>{CK();H3();G7();V1();_8();E8();VM();X0Y={USD:"$",EUR:"€",GBP:"£",BRL:"R$",CAD:"CA$",AUD:"A$",NZD:"NZ$",SGD:"S$"}});import{homedir as P0Y}from"os";function qq8(q){let K=q.map((_)=>{let z=Kh(_.modified);return{text:(_.summary&&_.summary!=="No prompt"?_.summary:_.firstPrompt)||"",timestamp:z}});return{title:"Recent activity",lines:K,footer:K.length>0?"/resume for more":void 0,emptyMessage:"No recent activity"}}function aRK(q){let K=q.map((z)=>{return{text:z}}),_="Check the Claude Code changelog for updates";return{title:"What's new",lines:K,footer:K.length>0?"/release-notes for more":void 0,emptyMessage:"Check the Claude Code changelog for updates"}}function sRK(q){let _=q.filter(({isEnabled:Y})=>Y).sort((Y,$)=>Number(Y.isComplete)-Number($.isComplete)).map(({text:Y,isComplete:$})=>{return{text:`${$?`${t6.tick} `:""}${Y}`}}),z=Z8()===P0Y()?"Note: You have launched claude in your home directory. For the best experience, launch it in a project directory instead.":void 0;if(z)_.push({text:z});;return null;return{title:"Tips for getting started",lines:_}}function tRK(){let q=C56(),K=q?`Share Claude Code and earn ${S56(q)} of extra usage`:"Share Claude Code with friends";return{title:"3 guest passes",lines:[],customContent:{content:db.createElement(db.Fragment,null,db.createElement(u,{marginY:1},db.createElement(k,{color:"claude"},"[✻] [✻] [✻]")),db.createElement(k,{dimColor:!0},K)),width:48},footer:"/passes"}}var db;var eRK=y(()=>{bq();s6();b56();I7();U7();db=O6(D6(),1)});function Os(q,K,_){return Array.from({length:_},()=>({pose:q,offset:K}))}function _hK(){let q=z6(8),{pose:K,bounceOffset:_,onClick:z}=T0Y(),Y;if(q[0]!==K)Y=KJ6.createElement(qJ6,{pose:K}),q[0]=K,q[1]=Y;else Y=q[1];let $;if(q[2]!==_||q[3]!==Y)$=KJ6.createElement(u,{marginTop:_,flexShrink:0},Y),q[2]=_,q[3]=Y,q[4]=$;else $=q[4];let A;if(q[5]!==z||q[6]!==$)A=KJ6.createElement(u,{height:G0Y,flexDirection:"column",onClick:z},$),q[5]=z,q[6]=$,q[7]=A;else A=q[7];return A}function T0Y(){let[q]=_J6.useState(()=>N7().prefersReducedMotion??!1),[K,_]=_J6.useState(-1),z=_J6.useRef(KhK),Y=()=>{if(q||K!==-1)return;z.current=qhK[Math.floor(Math.random()*qhK.length)],_(0)};_J6.useEffect(()=>{if(K===-1)return;if(K>=z.current.length){_(-1);return}let O=setTimeout(_,f0Y,Z0Y);return()=>clearTimeout(O)},[K]);let $=z.current,A=K>=0&&K<$.length?$[K]:D0Y;return{pose:A.pose,bounceOffset:A.offset,onClick:Y}}var KJ6,_J6,KhK,W0Y,qhK,D0Y,f0Y=60,Z0Y=(q)=>q+1,G0Y=3;var zhK=y(()=>{q8();s6();U1();dF8();KJ6=O6(D6(),1),_J6=O6(D6(),1);KhK=[...Os("default",1,2),...Os("arms-up",0,3),...Os("default",0,1),...Os("default",1,2),...Os("arms-up",0,3),...Os("default",0,1)],W0Y=[...Os("look-right",0,5),...Os("look-left",0,5),...Os("default",0,1)],qhK=[KhK,W0Y],D0Y={pose:"default",offset:0}});function v0Y(){let q=cF8();if(q==null||q<=0)return;let _=j8().passesLastSeenRemaining??0;if(q>_)b8((z)=>({...z,passesUpsellSeenCount:0,hasVisitedPasses:!1,passesLastSeenRemaining:q}))}function k0Y(){let{eligible:q,hasCache:K}=fS6();if(!q||!K)return!1;v0Y();let _=j8();if((_.passesUpsellSeenCount??0)>=3)return!1;if(_.hasVisitedPasses)return!1;return!0}function lF8(){let[q]=YhK.useState(V0Y);return q}function V0Y(){return k0Y()}function nF8(){let q=0;b8((K)=>{return q=(K.passesUpsellSeenCount??0)+1,{...K,passesUpsellSeenCount:q}}),d("tengu_guest_passes_upsell_shown",{seen_count:q})}function $hK(){let q=z6(1),K;if(q[0]===Symbol.for("react.memo_cache_sentinel")){let _=C56();K=ws.createElement(k,{dimColor:!0},ws.createElement(k,{color:"claude"},"[✻]")," ",ws.createElement(k,{color:"claude"},"[✻]")," ",ws.createElement(k,{color:"claude"},"[✻]")," ·"," ",_?`Share Claude Code and earn ${S56(_)} of extra usage · /passes`:"3 guest passes at /passes"),q[0]=K}else K=q[0];return K}var ws,YhK;var O57=y(()=>{q8();s6();k8();b56();V1();ws=O6(D6(),1),YhK=O6(D6(),1)});function AhK(){let q=z6(29),{columns:K}=t1(),_=P8(y0Y),z=P8(N0Y),Y=hD(),$=QF6(Y),{version:A,cwd:O,billingType:w,agentName:j}=UF8(),H=_??j,J=lF8(),M=Sg8(),X,P;if(q[0]!==J)X=()=>{if(J)nF8()},P=[J],q[0]=J,q[1]=X,q[2]=P;else X=q[1],P=q[2];w57.useEffect(X,P);let W,D;if(q[3]!==J||q[4]!==M)W=()=>{if(M&&!J)Cg8()},D=[M,J],q[3]=J,q[4]=M,q[5]=W,q[6]=D;else W=q[5],D=q[6];w57.useEffect(W,D);let f=Math.max(K-15,20),G=d5(A,Math.max(f-13,6)),Z=Ev6(Y,z),{shouldSplit:T,truncatedModel:v,truncatedBilling:V}=BRK($+Z,w,f),E=H?f-1-O1(H)-3:f,S=t78(O,Math.max(E,10)),R;if(q[7]===Symbol.for("react.memo_cache_sentinel"))R=p4()?QY.createElement(_hK,null):QY.createElement(qJ6,null),q[7]=R;else R=q[7];let x;if(q[8]===Symbol.for("react.memo_cache_sentinel"))x=QY.createElement(k,{bold:!0},"Claude Code"),q[8]=x;else x=q[8];let I;if(q[9]!==G)I=QY.createElement(k,null,x," ",QY.createElement(k,{dimColor:!0},"v",G)),q[9]=G,q[10]=I;else I=q[10];let B;if(q[11]!==T||q[12]!==V||q[13]!==v)B=T?QY.createElement(QY.Fragment,null,QY.createElement(k,{dimColor:!0},v),QY.createElement(k,{dimColor:!0},V)):QY.createElement(k,{dimColor:!0},v," · ",V),q[11]=T,q[12]=V,q[13]=v,q[14]=B;else B=q[14];let p=H?`@${H} · ${S}`:S,C;if(q[15]!==p)C=QY.createElement(k,{dimColor:!0},p),q[15]=p,q[16]=C;else C=q[16];let g;if(q[17]!==J)g=J&&QY.createElement($hK,null),q[17]=J,q[18]=g;else g=q[18];let F;if(q[19]!==J||q[20]!==M||q[21]!==f)F=!J&&M&&QY.createElement(bg8,{maxWidth:f,twoLine:!0}),q[19]=J,q[20]=M,q[21]=f,q[22]=F;else F=q[22];let U;if(q[23]!==g||q[24]!==F||q[25]!==I||q[26]!==B||q[27]!==C)U=QY.createElement(I0,null,QY.createElement(u,{flexDirection:"row",gap:2,alignItems:"center"},R,QY.createElement(u,{flexDirection:"column"},I,B,C,g,F))),q[23]=g,q[24]=F,q[25]=I,q[26]=B,q[27]=C,q[28]=U;else U=q[28];return U}function N0Y(q){return q.effortValue}function y0Y(q){return q.agent}var QY,w57;var OhK=y(()=>{q8();yQ();t4();Q5();s6();C7();q0();U7();_M();QF8();aq();$K6();zhK();dF8();O57();Z78();QY=O6(D6(),1),w57=O6(D6(),1)});function j57(){let q=_q8.useMemo(R0Y,[]),K=_q8.useMemo(()=>j8().lastShownEmergencyTip,[]),_=q.tip&&q.tip!==K;if(_q8.useEffect(()=>{if(_)b8((z)=>{if(z.lastShownEmergencyTip===q.tip)return z;return{...z,lastShownEmergencyTip:q.tip}})},[_,q.tip]),!_)return null;return Kq8.createElement(u,{paddingLeft:2,flexDirection:"column"},Kq8.createElement(k,{...q.color==="warning"?{color:"warning"}:q.color==="error"?{color:"error"}:{dimColor:!0}},q.tip))}function R0Y(){return XG(E0Y,L0Y)}var Kq8,_q8,E0Y="tengu-top-of-feed-tip",L0Y;var whK=y(()=>{s6();o1();V1();Kq8=O6(D6(),1),_q8=O6(D6(),1);L0Y={tip:"",color:"dim"}});function iF8({char:q=TE}){let[K]=zJ6.useState(()=>N7().prefersReducedMotion??!1),[_,z]=zJ6.useState(K),Y=zJ6.useRef(null),[$,A]=vH(_?null:50);if(zJ6.useEffect(()=>{if(_)return;let j=setTimeout(z,S0Y,!0);return()=>clearTimeout(j)},[_]),_)return js.createElement(u,{ref:$},js.createElement(k,{color:C0Y},q));if(Y.current===null)Y.current=A;let w=(A-Y.current)/jhK*360%360;return js.createElement(u,{ref:$},js.createElement(k,{color:nL(yC8(w))},q))}var js,zJ6,jhK=1500,h0Y=2,S0Y,C0Y;var H57=y(()=>{zz();s6();U1();go();js=O6(D6(),1),zJ6=O6(D6(),1),S0Y=jhK*h0Y,C0Y=nL({r:153,g:153,b:153})});function J57(){return HJ()&&(j8().opus1mMergeNoticeSeenCount??0)<b0Y}function oF8(){let q=z6(4),[K]=rF8.useState(J57),_,z;if(q[0]!==K)_=()=>{if(!K)return;let $=(j8().opus1mMergeNoticeSeenCount??0)+1;b8((A)=>{if((A.opus1mMergeNoticeSeenCount??0)>=$)return A;return{...A,opus1mMergeNoticeSeenCount:$}})},z=[K],q[0]=K,q[1]=_,q[2]=z;else _=q[1],z=q[2];if(rF8.useEffect(_,z),!K)return null;let Y;if(q[3]===Symbol.for("react.memo_cache_sentinel"))Y=YJ6.createElement(u,{paddingLeft:2},YJ6.createElement(iF8,{char:jA8}),YJ6.createElement(k,{dimColor:!0}," ","Opus now defaults to 1M context · 5x more room, same pricing")),q[3]=Y;else Y=q[3];return Y}var YJ6,rF8,b0Y=6;var M57=y(()=>{q8();zz();s6();V1();aq();H57();YJ6=O6(D6(),1),rF8=O6(D6(),1)});function sF8(){let q=z6(1),K;if(q[0]===Symbol.for("react.memo_cache_sentinel"))K=Hs.createElement(I0Y,null),q[0]=K;else K=q[0];return K}function I0Y(){let q=z6(4),[K]=aF8.useState(u0Y),_,z;if(q[0]!==K)_=()=>{if(!K)return;let $=(j8().voiceNoticeSeenCount??0)+1;b8((A)=>{if((A.voiceNoticeSeenCount??0)>=$)return A;return{...A,voiceNoticeSeenCount:$}})},z=[K],q[0]=K,q[1]=_,q[2]=z;else _=q[1],z=q[2];if(aF8.useEffect(_,z),!K)return null;let Y;if(q[3]===Symbol.for("react.memo_cache_sentinel"))Y=Hs.createElement(u,{paddingLeft:2},Hs.createElement(iF8,null),Hs.createElement(k,{dimColor:!0}," Voice mode is now available · /voice to enable")),q[3]=Y;else Y=q[3];return Y}function u0Y(){return KH6()&&N7().voiceEnabled!==!0&&(j8().voiceNoticeSeenCount??0)<x0Y&&!J57()}var Hs,aF8,x0Y=3;var HhK=y(()=>{q8();s6();V1();U1();FK6();H57();M57();Hs=O6(D6(),1),aF8=O6(D6(),1)});var MhK={};T8(MhK,{ChannelsNotice:()=>m0Y});function m0Y(){let q=z6(32),[K]=JhK.useState(F0Y),{channels:_,disabled:z,noAuth:Y,policyBlocked:$,list:A,unmatched:O}=K;if(_.length===0)return null;let w=_.some(g0Y),j=P38()&&w?"Channels":P38()?"--dangerously-load-development-channels":"--channels";if(z){let P;if(q[0]!==j||q[1]!==A)P=zA.createElement(k,{color:"error"},j," ignored (",A,")"),q[0]=j,q[1]=A,q[2]=P;else P=q[2];let W;if(q[3]===Symbol.for("react.memo_cache_sentinel"))W=zA.createElement(k,{dimColor:!0},"Channels are not currently available"),q[3]=W;else W=q[3];let D;if(q[4]!==P)D=zA.createElement(u,{paddingLeft:2,flexDirection:"column"},P,W),q[4]=P,q[5]=D;else D=q[5];return D}if(Y){let P;if(q[6]!==j||q[7]!==A)P=zA.createElement(k,{color:"error"},j," ignored (",A,")"),q[6]=j,q[7]=A,q[8]=P;else P=q[8];let W;if(q[9]===Symbol.for("react.memo_cache_sentinel"))W=zA.createElement(k,{dimColor:!0},"Channels require claude.ai authentication · run /login, then restart"),q[9]=W;else W=q[9];let D;if(q[10]!==P)D=zA.createElement(u,{paddingLeft:2,flexDirection:"column"},P,W),q[10]=P,q[11]=D;else D=q[11];return D}if($){let P;if(q[12]!==j||q[13]!==A)P=zA.createElement(k,{color:"error"},j," blocked by org policy (",A,")"),q[12]=j,q[13]=A,q[14]=P;else P=q[14];let W,D;if(q[15]===Symbol.for("react.memo_cache_sentinel"))W=zA.createElement(k,{dimColor:!0},"Inbound messages will be silently dropped"),D=zA.createElement(k,{dimColor:!0},"Have an administrator set channelsEnabled: true in managed settings to enable"),q[15]=W,q[16]=D;else W=q[15],D=q[16];let f;if(q[17]!==O)f=O.map(B0Y),q[17]=O,q[18]=f;else f=q[18];let G;if(q[19]!==P||q[20]!==f)G=zA.createElement(u,{paddingLeft:2,flexDirection:"column"},P,W,D,f),q[19]=P,q[20]=f,q[21]=G;else G=q[21];return G}let H;if(q[22]!==A)H=zA.createElement(k,{color:"error"},"Listening for channel messages from: ",A),q[22]=A,q[23]=H;else H=q[23];let J;if(q[24]!==j)J=zA.createElement(k,{dimColor:!0},"Experimental · inbound messages will be pushed into this session, this carries prompt injection risks. Restart Claude Code without ",j," to disable."),q[24]=j,q[25]=J;else J=q[25];let M;if(q[26]!==O)M=O.map(p0Y),q[26]=O,q[27]=M;else M=q[27];let X;if(q[28]!==H||q[29]!==J||q[30]!==M)X=zA.createElement(u,{paddingLeft:2,flexDirection:"column"},H,J,M),q[28]=H,q[29]=J,q[30]=M,q[31]=X;else X=q[31];return X}function p0Y(q){return zA.createElement(k,{key:`${zq8(q.entry)}:${q.why}`,color:"warning"},zq8(q.entry)," · ",q.why)}function B0Y(q){return zA.createElement(k,{key:`${zq8(q.entry)}:${q.why}`,color:"warning"},zq8(q.entry)," · ",q.why)}function g0Y(q){return!q.dev}function F0Y(){let q=eH();if(q.length===0)return{channels:q,disabled:!1,noAuth:!1,policyBlocked:!1,list:"",unmatched:[]};let K=q.map(zq8).join(", "),_=yK(),z=_==="team"||_==="enterprise",Y=v1("policySettings"),$=R47(_,Y?.allowedChannelPlugins);return{channels:q,disabled:!QH6(),noAuth:!Kq()?.accessToken,policyBlocked:z&&Y?.channelsEnabled!==!0,list:K,unmatched:U0Y(q,$)}}function zq8(q){return q.kind==="plugin"?`plugin:${q.name}@${q.marketplace}`:`server:${q.name}`}function U0Y(q,K){let _=["enterprise","user","project","local"],z=new Set;for(let w of _)for(let j of Object.keys(SH(w).servers))z.add(j);let Y=new Set(Object.keys(cX().plugins)),{entries:$,source:A}=K,O=[];for(let w of q){if(w.kind==="server"){if(!z.has(w.name))O.push({entry:w,why:"no MCP server configured with that name"});if(!w.dev)O.push({entry:w,why:"server: entries need --dangerously-load-development-channels"});continue}if(!Y.has(`${w.name}@${w.marketplace}`))O.push({entry:w,why:"plugin not installed"});if(!w.dev&&!$.some((j)=>j.plugin===w.name&&j.marketplace===w.marketplace))O.push({entry:w,why:A==="org"?"not on your org's approved channels list":"not on the approved channels allowlist"})}return O}var zA,JhK;var XhK=y(()=>{q8();v8();s6();y78();h78();f0();G7();pX();U1();zA=O6(D6(),1),JhK=O6(D6(),1)});function PhK(){let q=z6(94),K=pRK(),_=j8().oauthAccount?.displayName??"",{columns:z}=t1(),Y;if(q[0]===Symbol.for("react.memo_cache_sentinel"))Y=cZK(),q[0]=Y;else Y=q[0];let $=Y,A;if(q[1]===Symbol.for("react.memo_cache_sentinel"))A=M7.isSandboxingEnabled(),q[1]=A;else A=q[1];let O=A,w=lF8(),j=Sg8(),H=P8(l0Y),J=P8(c0Y),M=j8(),X;try{X=gRK(3)}catch{X=[]}let[P]=GS6.useState(()=>{let j1=N7().companyAnnouncements;if(!j1||j1.length===0)return;return M.numStartups===1?j1[0]:j1[Math.floor(Math.random()*j1.length)]}),{hasReleaseNotes:W}=ORK(M.lastReleaseNotesSeen),D;if(q[2]===Symbol.for("react.memo_cache_sentinel"))D=()=>{if(j8().lastReleaseNotesSeen==={ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.88",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION)return;if(b8(d0Y),$)lZK()},q[2]=D;else D=q[2];let f;if(q[3]!==M)f=[M,$],q[3]=M,q[4]=f;else f=q[4];GS6.useEffect(D,f);let G;if(q[5]===Symbol.for("react.memo_cache_sentinel"))G=!W&&!$&&!i6(process.env.CLAUDE_CODE_FORCE_FULL_LOGO),q[5]=G;else G=q[5];let Z=G,T,v;if(q[6]!==w)T=()=>{if(w&&!$&&!Z)nF8()},v=[w,$,Z],q[6]=w,q[7]=T,q[8]=v;else T=q[7],v=q[8];GS6.useEffect(T,v);let V,E;if(q[9]!==w||q[10]!==j)V=()=>{if(j&&!$&&!w&&!Z)Cg8()},E=[j,$,w,Z],q[9]=w,q[10]=j,q[11]=V,q[12]=E;else V=q[11],E=q[12];GS6.useEffect(V,E);let S=hD(),R=QF6(S),{version:x,cwd:I,billingType:B,agentName:p}=UF8(),C=H??p,g=Ev6(S,J),F=R+g,U;if(q[13]!==F)U=d5(F,X57-20),q[13]=F,q[14]=U;else U=q[14];let c=U;if(!W&&!$&&!i6(process.env.CLAUDE_CODE_FORCE_FULL_LOGO)){let j1,h1,T7,X7,Y1,Y7,P7;if(q[15]===Symbol.for("react.memo_cache_sentinel"))j1=w7.createElement(AhK,null),h1=w7.createElement(sF8,null),T7=w7.createElement(oF8,null),X7=ZS6&&w7.createElement(ZS6.ChannelsNotice,null),Y1=ST()&&w7.createElement(u,{paddingLeft:2,flexDirection:"column"},w7.createElement(k,{color:"warning"},"Debug mode enabled"),w7.createElement(k,{dimColor:!0},"Logging to: ",$B()?"stderr":j96())),Y7=w7.createElement(j57,null),P7=process.env.CLAUDE_CODE_TMUX_SESSION&&w7.createElement(u,{paddingLeft:2,flexDirection:"column"},w7.createElement(k,{dimColor:!0},"tmux session: ",process.env.CLAUDE_CODE_TMUX_SESSION),w7.createElement(k,{dimColor:!0},process.env.CLAUDE_CODE_TMUX_PREFIX_CONFLICTS?`Detach: ${process.env.CLAUDE_CODE_TMUX_PREFIX} ${process.env.CLAUDE_CODE_TMUX_PREFIX} d (press prefix twice - Claude uses ${process.env.CLAUDE_CODE_TMUX_PREFIX})`:`Detach: ${process.env.CLAUDE_CODE_TMUX_PREFIX} d`)),q[15]=j1,q[16]=h1,q[17]=T7,q[18]=X7,q[19]=Y1,q[20]=Y7,q[21]=P7;else j1=q[15],h1=q[16],T7=q[17],X7=q[18],Y1=q[19],Y7=q[20],P7=q[21];let L1;if(q[22]!==P||q[23]!==M)L1=P&&w7.createElement(u,{paddingLeft:2,flexDirection:"column"},!process.env.IS_DEMO&&M.oauthAccount?.organizationName&&w7.createElement(k,{dimColor:!0},"Message from ",M.oauthAccount.organizationName,":"),w7.createElement(k,null,P)),q[22]=P,q[23]=M,q[24]=L1;else L1=q[24];let B7,B1,j7,eq;if(q[25]===Symbol.for("react.memo_cache_sentinel"))B7=!1,B1=!1,j7=!1,eq=!1,q[25]=B7,q[26]=B1,q[27]=j7,q[28]=eq;else B7=q[25],B1=q[26],j7=q[27],eq=q[28];let AK;if(q[29]!==L1)AK=w7.createElement(w7.Fragment,null,j1,h1,T7,X7,Y1,Y7,P7,L1,B7,B1,j7,eq),q[29]=L1,q[30]=AK;else AK=q[30];return AK}let K6=xRK(z),t=OF(j8().theme),q6=` ${h7("claude",t)("Claude Code")} ${h7("inactive",t)(`v${x}`)} `,e=h7("claude",t)(" Claude Code ");if(K6==="compact"){let j1=FF8(_);if(O1(j1)>z-4){let AK;if(q[31]===Symbol.for("react.memo_cache_sentinel"))AK=FF8(null),q[31]=AK;else AK=q[31];j1=AK}let h1=C?z-4-1-O1(C)-3:z-4,T7=t78(I,Math.max(h1,10)),X7;if(q[32]!==e)X7={content:e,position:"top",align:"start",offset:1},q[32]=e,q[33]=X7;else X7=q[33];let Y1;if(q[34]===Symbol.for("react.memo_cache_sentinel"))Y1=w7.createElement(u,{marginY:1},w7.createElement(qJ6,null)),q[34]=Y1;else Y1=q[34];let Y7;if(q[35]!==c)Y7=w7.createElement(k,{dimColor:!0},c),q[35]=c,q[36]=Y7;else Y7=q[36];let P7,L1,B7;if(q[37]===Symbol.for("react.memo_cache_sentinel"))P7=w7.createElement(sF8,null),L1=w7.createElement(oF8,null),B7=ZS6&&w7.createElement(ZS6.ChannelsNotice,null),q[37]=P7,q[38]=L1,q[39]=B7;else P7=q[37],L1=q[38],B7=q[39];let B1;if(q[40]!==O)B1=O&&w7.createElement(u,{marginTop:1,flexDirection:"column"},w7.createElement(k,{color:"warning"},"Your bash commands will be sandboxed. Disable with /sandbox.")),q[40]=O,q[41]=B1;else B1=q[41];let j7,eq;if(q[42]===Symbol.for("react.memo_cache_sentinel"))j7=!1,eq=!1,q[42]=j7,q[43]=eq;else j7=q[42],eq=q[43];return w7.createElement(w7.Fragment,null,w7.createElement(I0,null,w7.createElement(u,{flexDirection:"column",borderStyle:"round",borderColor:"claude",borderText:X7,paddingX:1,paddingY:1,alignItems:"center",width:z},w7.createElement(k,{bold:!0},j1),Y1,Y7,w7.createElement(k,{dimColor:!0},B),w7.createElement(k,{dimColor:!0},C?`@${C} · ${T7}`:T7))),P7,L1,B7,B1,j7,eq)}let i=FF8(_),$6=!process.env.IS_DEMO&&M.oauthAccount?.organizationName?`${c} · ${B} · ${M.oauthAccount.organizationName}`:`${c} · ${B}`,M6=C?X57-1-O1(C)-3:X57,j6=t78(I,Math.max(M6,10)),G6=C?`@${C} · ${j6}`:j6,w6=uRK(i,G6,$6),{leftWidth:o,rightWidth:s}=IRK(z,K6,w6),a=I0,n=u,l="column",A6="round",J6="claude",X6;if(q[44]!==q6)X6={content:q6,position:"top",align:"start",offset:3},q[44]=q6,q[45]=X6;else X6=q[45];let f6=u,N6=K6==="horizontal"?"row":"column",Z6=1,V6=1,y6;if(q[46]!==i)y6=w7.createElement(u,{marginTop:1},w7.createElement(k,{bold:!0},i)),q[46]=i,q[47]=y6;else y6=q[47];let T6;if(q[48]===Symbol.for("react.memo_cache_sentinel"))T6=w7.createElement(qJ6,null),q[48]=T6;else T6=q[48];let n6;if(q[49]!==$6)n6=w7.createElement(k,{dimColor:!0},$6),q[49]=$6,q[50]=n6;else n6=q[50];let o6;if(q[51]!==G6)o6=w7.createElement(k,{dimColor:!0},G6),q[51]=G6,q[52]=o6;else o6=q[52];let I6;if(q[53]!==n6||q[54]!==o6)I6=w7.createElement(u,{flexDirection:"column",alignItems:"center"},n6,o6),q[53]=n6,q[54]=o6,q[55]=I6;else I6=q[55];let C6;if(q[56]!==o||q[57]!==y6||q[58]!==I6)C6=w7.createElement(u,{flexDirection:"column",width:o,justifyContent:"space-between",alignItems:"center",minHeight:9},y6,T6,I6),q[56]=o,q[57]=y6,q[58]=I6,q[59]=C6;else C6=q[59];let l6;if(q[60]!==K6)l6=K6==="horizontal"&&w7.createElement(u,{height:"100%",borderStyle:"single",borderColor:"claude",borderDimColor:!0,borderTop:!1,borderBottom:!1,borderLeft:!1}),q[60]=K6,q[61]=l6;else l6=q[61];let S6=K6==="horizontal"&&w7.createElement(dRK,{feeds:$?[sRK(b77()),qq8(K)]:w?[qq8(K),tRK()]:j?[qq8(K),RvK()]:[qq8(K),aRK(X)],maxWidth:s}),E6;if(q[62]!==f6||q[63]!==N6||q[64]!==C6||q[65]!==l6||q[66]!==S6)E6=w7.createElement(f6,{flexDirection:N6,paddingX:Z6,gap:V6},C6,l6,S6),q[62]=f6,q[63]=N6,q[64]=C6,q[65]=l6,q[66]=S6,q[67]=E6;else E6=q[67];let R6;if(q[68]!==n||q[69]!==X6||q[70]!==E6)R6=w7.createElement(n,{flexDirection:l,borderStyle:A6,borderColor:J6,borderText:X6},E6),q[68]=n,q[69]=X6,q[70]=E6,q[71]=R6;else R6=q[71];let h6;if(q[72]!==a||q[73]!==R6)h6=w7.createElement(a,null,R6),q[72]=a,q[73]=R6,q[74]=h6;else h6=q[74];let x6,b6,Q6,Y6,_6,F6;if(q[75]===Symbol.for("react.memo_cache_sentinel"))x6=w7.createElement(sF8,null),b6=w7.createElement(oF8,null),Q6=ZS6&&w7.createElement(ZS6.ChannelsNotice,null),Y6=ST()&&w7.createElement(u,{paddingLeft:2,flexDirection:"column"},w7.createElement(k,{color:"warning"},"Debug mode enabled"),w7.createElement(k,{dimColor:!0},"Logging to: ",$B()?"stderr":j96())),_6=w7.createElement(j57,null),F6=process.env.CLAUDE_CODE_TMUX_SESSION&&w7.createElement(u,{paddingLeft:2,flexDirection:"column"},w7.createElement(k,{dimColor:!0},"tmux session: ",process.env.CLAUDE_CODE_TMUX_SESSION),w7.createElement(k,{dimColor:!0},process.env.CLAUDE_CODE_TMUX_PREFIX_CONFLICTS?`Detach: ${process.env.CLAUDE_CODE_TMUX_PREFIX} ${process.env.CLAUDE_CODE_TMUX_PREFIX} d (press prefix twice - Claude uses ${process.env.CLAUDE_CODE_TMUX_PREFIX})`:`Detach: ${process.env.CLAUDE_CODE_TMUX_PREFIX} d`)),q[75]=x6,q[76]=b6,q[77]=Q6,q[78]=Y6,q[79]=_6,q[80]=F6;else x6=q[75],b6=q[76],Q6=q[77],Y6=q[78],_6=q[79],F6=q[80];let W6;if(q[81]!==P||q[82]!==M)W6=P&&w7.createElement(u,{paddingLeft:2,flexDirection:"column"},!process.env.IS_DEMO&&M.oauthAccount?.organizationName&&w7.createElement(k,{dimColor:!0},"Message from ",M.oauthAccount.organizationName,":"),w7.createElement(k,null,P)),q[81]=P,q[82]=M,q[83]=W6;else W6=q[83];let v6;if(q[84]!==O)v6=O&&w7.createElement(u,{paddingLeft:2,flexDirection:"column"},w7.createElement(k,{color:"warning"},"Your bash commands will be sandboxed. Disable with /sandbox.")),q[84]=O,q[85]=v6;else v6=q[85];let m6,K8,H8,M8;if(q[86]===Symbol.for("react.memo_cache_sentinel"))m6=!1,K8=!1,H8=!1,M8=!1,q[86]=m6,q[87]=K8,q[88]=H8,q[89]=M8;else m6=q[86],K8=q[87],H8=q[88],M8=q[89];let X1;if(q[90]!==h6||q[91]!==W6||q[92]!==v6)X1=w7.createElement(w7.Fragment,null,h6,x6,b6,Q6,Y6,_6,F6,W6,v6,m6,K8,H8,M8),q[90]=h6,q[91]=W6,q[92]=v6,q[93]=X1;else X1=q[93];return X1}function d0Y(q){if(q.lastReleaseNotesSeen==={ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.88",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION)return q;return{...q,lastReleaseNotesSeen:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.88",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION}}function c0Y(q){return q.effortValue}function l0Y(q){return q.agent}var w7,GS6,ZS6,X57=50;var WhK=y(()=>{q8();s6();t4();Q5();QF8();U7();bK();dF8();cRK();eRK();V1();U1();_8();t18();OhK();$K6();XS6();vr();m8();Cx();whK();HhK();M57();K$();O57();Z78();C7();q0();yQ();aq();w7=O6(D6(),1),GS6=O6(D6(),1),ZS6=(XhK(),Eq(MhK))});function DhK(q){let K=z6(5),{message:_,isTranscriptMode:z}=q;if(!(z&&_.type==="assistant"&&_.message.model&&_.message.content.some(n0Y)))return null;let $=O1(_.message.model)+8,A;if(K[0]!==_.message.model)A=P57.default.createElement(k,{dimColor:!0},_.message.model),K[0]=_.message.model,K[1]=A;else A=K[1];let O;if(K[2]!==$||K[3]!==A)O=P57.default.createElement(u,{minWidth:$},A),K[2]=$,K[3]=A,K[4]=O;else O=K[4];return O}function n0Y(q){return q.type==="text"}var P57;var fhK=y(()=>{q8();Q5();s6();P57=O6(D6(),1)});function ZhK(q){let K=z6(10),{message:_,isTranscriptMode:z}=q;if(!(z&&_.timestamp&&_.type==="assistant"&&_.message.content.some(i0Y)))return null;let $,A,O;if(K[0]!==_.timestamp)A=new Date(_.timestamp).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",hour12:!0}),$=u,O=O1(A),K[0]=_.timestamp,K[1]=$,K[2]=A,K[3]=O;else $=K[1],A=K[2],O=K[3];let w;if(K[4]!==A)w=W57.default.createElement(k,{dimColor:!0},A),K[4]=A,K[5]=w;else w=K[5];let j;if(K[6]!==$||K[7]!==O||K[8]!==w)j=W57.default.createElement($,{minWidth:O},w),K[6]=$,K[7]=O,K[8]=w,K[9]=j;else j=K[9];return j}function i0Y(q){return q.type==="text"}var W57;var GhK=y(()=>{q8();Q5();s6();W57=O6(D6(),1)});function ThK(q,K,_,z){for(let Y=K+1;Y<q.length;Y++){let $=q[Y];if($?.type==="assistant"){let A=$.message.content[0];if(A?.type==="thinking"||A?.type==="redacted_thinking")continue;if(A?.type==="tool_use"){if(OH6(A.name,A.input,_).isCollapsible)continue;if(z.has(A.id))continue}return!0}if($?.type==="system"||$?.type==="attachment")continue;if($?.type==="user"){if($.message.content[0]?.type==="tool_result")continue}if($?.type==="grouped_tool_use"){let A=$.messages[0]?.message.content[0]?.input;if(OH6($.toolName,A,_).isCollapsible)continue}return!0}return!1}function r0Y(q){let K=z6(64),{message:_,isUserContinuation:z,hasContentAfter:Y,tools:$,commands:A,verbose:O,inProgressToolUseIDs:w,streamingToolUseIDs:j,screen:H,canAnimate:J,onOpenRateLimitOptions:M,lastThinkingBlockId:X,latestBashOutputUUID:P,columns:W,isLoading:D,lookups:f}=q,G=H==="transcript",Z=_.type==="grouped_tool_use",T=_.type==="collapsed_read_search",v;if(K[0]!==Y||K[1]!==w||K[2]!==T||K[3]!==D||K[4]!==_)v=T&&(L67(_,w)||D&&!Y),K[0]=Y,K[1]=w,K[2]=T,K[3]=D,K[4]=_,K[5]=v;else v=K[5];let V=v,E;if(K[6]!==T||K[7]!==Z||K[8]!==_)E=Z?_.displayMessage:T?BXK(_):_,K[6]=T,K[7]=Z,K[8]=_,K[9]=E;else E=K[9];let S=E,R;if(K[10]!==T||K[11]!==Z||K[12]!==f||K[13]!==_)R=Z||T?[]:d0K(_,f),K[10]=T,K[11]=Z,K[12]=f,K[13]=_,K[14]=R;else R=K[14];let x=R,I;if(K[15]!==w||K[16]!==T||K[17]!==Z||K[18]!==f||K[19]!==_||K[20]!==H||K[21]!==j){let e=Z||T?LB8:Q0K(_,f);I=VhK(_,j,w,e,H,f),K[15]=w,K[16]=T,K[17]=Z,K[18]=f,K[19]=_,K[20]=H,K[21]=j,K[22]=I}else I=K[22];let B=I,p=!1;if(J)if(Z){let e;if(K[23]!==w||K[24]!==_.messages){let i;if(K[26]!==w)i=($6)=>{let M6=$6.message.content[0];return M6?.type==="tool_use"&&w.has(M6.id)},K[26]=w,K[27]=i;else i=K[27];e=_.messages.some(i),K[23]=w,K[24]=_.messages,K[25]=e}else e=K[25];p=e}else if(T){let e;if(K[28]!==w||K[29]!==_)e=L67(_,w),K[28]=w,K[29]=_,K[30]=e;else e=K[30];p=e}else{let e;if(K[31]!==w||K[32]!==_){let i=Qa(_);e=!i||w.has(i),K[31]=w,K[32]=_,K[33]=e}else e=K[33];p=e}let C;if(K[34]!==S||K[35]!==G)C=G&&S.type==="assistant"&&S.message.content.some(o0Y)&&(S.timestamp||S.message.model),K[34]=S,K[35]=G,K[36]=C;else C=K[36];let g=C,F=!g,U=g?void 0:W,c;if(K[37]!==A||K[38]!==w||K[39]!==V||K[40]!==B||K[41]!==G||K[42]!==z||K[43]!==X||K[44]!==P||K[45]!==f||K[46]!==_||K[47]!==M||K[48]!==x||K[49]!==p||K[50]!==F||K[51]!==U||K[52]!==$||K[53]!==O)c=qZ.createElement(Xb,{message:_,lookups:f,addMargin:F,containerWidth:U,tools:$,commands:A,verbose:O,inProgressToolUseIDs:w,progressMessagesForMessage:x,shouldAnimate:p,shouldShowDot:!0,isTranscriptMode:G,isStatic:B,onOpenRateLimitOptions:M,isActiveCollapsedGroup:V,isUserContinuation:z,lastThinkingBlockId:X,latestBashOutputUUID:P}),K[37]=A,K[38]=w,K[39]=V,K[40]=B,K[41]=G,K[42]=z,K[43]=X,K[44]=P,K[45]=f,K[46]=_,K[47]=M,K[48]=x,K[49]=p,K[50]=F,K[51]=U,K[52]=$,K[53]=O,K[54]=c;else c=K[54];let K6=c;if(!g){let e;if(K[55]!==K6)e=qZ.createElement(I0,null,K6),K[55]=K6,K[56]=e;else e=K[56];return e}let t;if(K[57]!==S||K[58]!==G)t=qZ.createElement(u,{flexDirection:"row",justifyContent:"flex-end",gap:1,marginTop:1},qZ.createElement(ZhK,{message:S,isTranscriptMode:G}),qZ.createElement(DhK,{message:S,isTranscriptMode:G})),K[57]=S,K[58]=G,K[59]=t;else t=K[59];let q6;if(K[60]!==W||K[61]!==K6||K[62]!==t)q6=qZ.createElement(I0,null,qZ.createElement(u,{width:W,flexDirection:"column"},t,K6)),K[60]=W,K[61]=K6,K[62]=t,K[63]=q6;else q6=K[63];return q6}function o0Y(q){return q.type==="text"}function a0Y(q,K){if(q.type==="grouped_tool_use")return q.messages.some((z)=>{let Y=z.message.content[0];return Y?.type==="tool_use"&&K.has(Y.id)});if(q.type==="collapsed_read_search")return UE6(q).some((Y)=>K.has(Y));let _=Qa(q);return!!_&&K.has(_)}function s0Y(q,K){if(q.type==="grouped_tool_use")return q.messages.every((z)=>{let Y=z.message.content[0];return Y?.type==="tool_use"&&K.has(Y.id)});if(q.type==="collapsed_read_search")return UE6(q).every((Y)=>K.has(Y));if(q.type==="assistant"){let z=q.message.content[0];if(z?.type==="server_tool_use")return K.has(z.id)}let _=Qa(q);return!_||K.has(_)}function t0Y(q,K){if(q.message!==K.message)return!1;if(q.screen!==K.screen)return!1;if(q.verbose!==K.verbose)return!1;if(q.message.type==="collapsed_read_search"&&K.screen!=="transcript")return!1;if(q.columns!==K.columns)return!1;let _=q.latestBashOutputUUID===q.message.uuid,z=K.latestBashOutputUUID===K.message.uuid;if(_!==z)return!1;if(q.lastThinkingBlockId!==K.lastThinkingBlockId&&hr1(K.message))return!1;let Y=a0Y(q.message,q.streamingToolUseIDs),$=s0Y(q.message,q.lookups.resolvedToolUseIDs);if(Y||!$)return!1;return!0}var qZ,vhK;var khK=y(()=>{q8();s6();Bo();i1();dE6();fhK();Yq8();GhK();$K6();qZ=O6(D6(),1);vhK=qZ.memo(r0Y,t0Y)});function tF8(q){return q.type==="attachment"&&qZY.has(q.attachment.type)}var e0Y,qZY;var D57=y(()=>{e0Y=["hook_success","hook_additional_context","hook_cancelled","command_permissions","agent_mention","budget_usd","critical_system_reminder","edited_image_file","edited_text_file","opened_file_in_ide","output_style","plan_mode","plan_mode_exit","plan_mode_reentry","structured_output","team_context","todo_reminder","context_efficiency","deferred_tools_delta","mcp_instructions_delta","companion_intro","token_usage","ultrathink_effort","max_turns_reached","task_reminder","auto_mode","auto_mode_exit","output_token_usage","pen_mode_enter","pen_mode_exit","verify_plan_reminder","current_session_memory","compaction_reminder","date_change"],qZY=new Set(e0Y)});import{relative as KZY}from"path";function NhK(q){return wZY.filter((K)=>K.isActive(q))}var LK,_ZY,zZY,YZY,$ZY,AZY,OZY,wZY;var yhK=y(()=>{s6();wM();bq();I7();U7();G7();H47();U2();oB1();LK=O6(D6(),1),_ZY={id:"large-memory-files",type:"warning",isActive:(q)=>l76(q.memoryFiles).length>0,render:(q)=>{let K=l76(q.memoryFiles);return LK.createElement(LK.Fragment,null,K.map((_)=>{let z=_.path.startsWith(Z8())?KZY(Z8(),_.path):_.path;return LK.createElement(u,{key:_.path,flexDirection:"row"},LK.createElement(k,{color:"warning"},t6.warning),LK.createElement(k,{color:"warning"},"Large ",LK.createElement(k,{bold:!0},z)," will impact performance (",mK(_.content.length)," chars >"," ",mK(eF),")",LK.createElement(k,{dimColor:!0}," · /memory to edit")))}))}},zZY={id:"claude-ai-external-token",type:"warning",isActive:()=>{let q=qS();return d7()&&(q.source==="ANTHROPIC_AUTH_TOKEN"||q.source==="apiKeyHelper")},render:()=>{let q=qS();return LK.createElement(u,{flexDirection:"row",marginTop:1},LK.createElement(k,{color:"warning"},t6.warning),LK.createElement(k,{color:"warning"},"Auth conflict: Using ",q.source," instead of Claude account subscription token. Either unset ",q.source,", or run `claude /logout`."))}},YZY={id:"api-key-conflict",type:"warning",isActive:()=>{return 0;let{source:q}=Ow({skipRetrievingKeyFromApiKeyHelper:!0});return!!NG6()&&(q==="ANTHROPIC_API_KEY"||q==="apiKeyHelper")},render:()=>{let{source:q}=Ow({skipRetrievingKeyFromApiKeyHelper:!0});return LK.createElement(u,{flexDirection:"row",marginTop:1},LK.createElement(k,{color:"warning"},t6.warning),LK.createElement(k,{color:"warning"},"Auth conflict: Using ",q," instead of Anthropic Console key. Either unset ",q,", or run `claude /logout`."))}},$ZY={id:"both-auth-methods",type:"warning",isActive:()=>{let{source:q}=Ow({skipRetrievingKeyFromApiKeyHelper:!0}),K=qS();return q!=="none"&&K.source!=="none"&&!(q==="apiKeyHelper"&&K.source==="apiKeyHelper")},render:()=>{let{source:q}=Ow({skipRetrievingKeyFromApiKeyHelper:!0}),K=qS();return LK.createElement(u,{flexDirection:"column",marginTop:1},LK.createElement(u,{flexDirection:"row"},LK.createElement(k,{color:"warning"},t6.warning),LK.createElement(k,{color:"warning"},"Auth conflict: Both a token (",K.source,") and an API key (",q,") are set. This may lead to unexpected behavior.")),LK.createElement(u,{flexDirection:"column",marginLeft:3},LK.createElement(k,{color:"warning"},"· Trying to use"," ",K.source==="claude.ai"?"claude.ai":K.source,"?"," ",q==="ANTHROPIC_API_KEY"?'Unset the ANTHROPIC_API_KEY environment variable, or claude /logout then say "No" to the API key approval before login.':q==="apiKeyHelper"?"Unset the apiKeyHelper setting.":"claude /logout"),LK.createElement(k,{color:"warning"},"· Trying to use ",q,"?"," ",K.source==="claude.ai"?"claude /logout to sign out of claude.ai.":`Unset the ${K.source} environment variable.`)))}},AZY={id:"large-agent-descriptions",type:"warning",isActive:(q)=>{return V78(q.agentDefinitions)>FH6},render:(q)=>{let K=V78(q.agentDefinitions);return LK.createElement(u,{flexDirection:"row"},LK.createElement(k,{color:"warning"},t6.warning),LK.createElement(k,{color:"warning"},"Large cumulative agent descriptions will impact performance (~",mK(K)," tokens >"," ",mK(FH6),")",LK.createElement(k,{dimColor:!0}," · /agents to manage")))}},OZY={id:"jetbrains-plugin-install",type:"info",isActive:(q)=>{if(!VN6())return!1;if(!(q.config.autoInstallIdeExtension??!0))return!1;let _=vN6();return _!==null&&!bh4(_)},render:()=>{let q=vN6(),K=pj(q);return LK.createElement(u,{flexDirection:"row",gap:1,marginLeft:1},LK.createElement(k,{color:"ide"},t6.arrowUp),LK.createElement(k,null,"Install the ",LK.createElement(k,{color:"ide"},K)," plugin from the JetBrains Marketplace:"," ",LK.createElement(k,{bold:!0},"https://docs.claude.com/s/claude-code-jetbrains")))}},wZY=[_ZY,AZY,zZY,YZY,$ZY,OZY]});function LhK(q){let K=z6(4),{agentDefinitions:_}=q===void 0?{}:q,z=j8(),Y;if(K[0]===Symbol.for("react.memo_cache_sentinel"))Y=yH(),K[0]=Y;else Y=K[0];let $={config:z,agentDefinitions:_,memoryFiles:EhK.use(Y)},A=NhK($);if(A.length===0)return null;let O=u,w="column",j=1,H=A.map((M)=>$J6.createElement($J6.Fragment,{key:M.id},M.render($))),J;if(K[1]!==O||K[2]!==H)J=$J6.createElement(O,{flexDirection:w,paddingLeft:j},H),K[1]=O,K[2]=H,K[3]=J;else J=K[3];return J}var $J6,EhK;var RhK=y(()=>{q8();s6();wM();V1();yhK();$J6=O6(D6(),1),EhK=O6(D6(),1)});function hhK(q,K,_){let z=mA.useRef(new Map),Y=mA.useRef(0),$=mA.useRef(0),A=mA.useRef({arr:new Float64Array(0),version:-1,n:-1}),O=mA.useRef(new Map),w=mA.useRef(new Map),j=mA.useRef(_),H=mA.useRef(!1),J=mA.useRef(null),M=mA.useRef(0);if(j.current!==_){let $6=j.current/_;j.current=_;for(let[M6,j6]of z.current)z.current.set(M6,Math.max(1,Math.round(j6*$6)));Y.current++,H.current=!0,M.current=2}let X=M.current>0?J.current:null,P=mA.useRef(0),W=mA.useRef(null),D=mA.useCallback(($6)=>q.current?.subscribe($6)??MZY,[q]);mA.useSyncExternalStore(D,()=>{let $6=q.current;if(!$6)return NaN;let M6=$6.getScrollTop()+$6.getPendingDelta(),j6=Math.floor(M6/JZY);return $6.isSticky()?~j6:j6});let f=q.current?.getScrollTop()??-1,G=q.current?.getPendingDelta()??0,Z=q.current?.getViewportHeight()??0,T=q.current?.isSticky()??!0;mA.useMemo(()=>{let $6=new Set(K),M6=!1;for(let j6 of z.current.keys())if(!$6.has(j6))z.current.delete(j6),M6=!0;for(let j6 of w.current.keys())if(!$6.has(j6))w.current.delete(j6);if(M6)Y.current++},[K]);let v=K.length;if(A.current.version!==Y.current||A.current.n!==v){let $6=A.current.arr.length>=v+1?A.current.arr:new Float64Array(v+1);$6[0]=0;for(let M6=0;M6<v;M6++)$6[M6+1]=$6[M6]+(z.current.get(K[M6])??jZY);A.current={arr:$6,version:Y.current,n:v}}let V=A.current.arr,E=V[v],S,R;if(X)[S,R]=X,S=Math.min(S,v),R=Math.min(R,v);else if(Z===0||f<0)S=Math.max(0,v-HZY),R=v;else{if(T){let o=Z+TS6;S=v;while(S>0&&E-V[S-1]<o)S--;R=v}else{let o=P.current,s=Z*3,a=Math.min(f,f+G),n=Math.max(f,f+G),l=n-a,A6=l>s?G<0?n-s:a:a,J6=A6+Math.min(l,s),X6=Math.max(0,A6-o),f6=J6-o,N6=X6-TS6;{let T6=0,n6=v;while(T6<n6){let o6=T6+n6>>1;if(V[o6+1]<=N6)T6=o6+1;else n6=o6}S=T6}{let T6=J.current;if(T6&&T6[0]<S)for(let n6=T6[0];n6<Math.min(S,T6[1]);n6++){let o6=K[n6];if(O.current.has(o6)&&!z.current.has(o6)){S=n6;break}}}let Z6=Z+2*TS6,V6=Math.min(v,S+$q8),y6=0;R=S;while(R<V6&&(y6<Z6||V[R]<f6+Z+TS6))y6+=z.current.get(K[R])??f57,R++}let $6=Z+2*TS6,M6=Math.max(0,R-$q8),j6=0;for(let o=S;o<R;o++)j6+=z.current.get(K[o])??f57;while(S>M6&&j6<$6)S--,j6+=z.current.get(K[S])??f57;let G6=J.current,w6=Math.abs(f-$.current)+Math.abs(G);if(G6&&w6>Z*2){let[o,s]=G6;if(S<o-Aq8)S=o-Aq8;if(R>s+Aq8)R=s+Aq8;if(S>R)R=Math.min(S+Aq8,v)}$.current=f}if(M.current>0)M.current--;else J.current=[S,R];let x=mA.useDeferredValue(S),I=mA.useDeferredValue(R),B=S<x?x:S,p=R>I?I:R;if(B>p||T)B=S,p=R;if(G>0)p=R;if(p-B>$q8){let $6=(V[B]+V[p])/2;if(f-P.current<$6)p=B+$q8;else B=p-$q8}let C=P.current,g=V[B],F=B===0?0:g+C,U=p===v?1/0:Math.max(g,V[p]-Z)+C;mA.useLayoutEffect(()=>{if(T)q.current?.setClampBounds(void 0,void 0);else q.current?.setClampBounds(F,U)}),mA.useLayoutEffect(()=>{let $6=W.current?.yogaNode;if($6&&$6.getComputedWidth()>0)P.current=$6.getComputedTop();if(H.current){H.current=!1;return}let M6=!1;for(let[j6,G6]of O.current){let w6=G6.yogaNode;if(!w6)continue;let o=w6.getComputedHeight(),s=z.current.get(j6);if(o>0){if(s!==o)z.current.set(j6,o),M6=!0}else if(w6.getComputedWidth()>0&&s!==0)z.current.set(j6,0),M6=!0}if(M6)Y.current++});let c=mA.useCallback(($6)=>{let M6=w.current.get($6);if(!M6)M6=(j6)=>{if(j6)O.current.set($6,j6);else{let G6=O.current.get($6)?.yogaNode;if(G6&&!H.current){let w6=G6.getComputedHeight();if((w6>0||G6.getComputedWidth()>0)&&z.current.get($6)!==w6)z.current.set($6,w6),Y.current++}O.current.delete($6)}},w.current.set($6,M6);return M6},[]),K6=mA.useCallback(($6)=>{let M6=O.current.get(K[$6])?.yogaNode;if(!M6||M6.getComputedWidth()===0)return-1;return M6.getComputedTop()},[K]),t=mA.useCallback(($6)=>O.current.get(K[$6])??null,[K]),q6=mA.useCallback(($6)=>z.current.get(K[$6]),[K]),e=mA.useCallback(($6)=>{let M6=A.current;if($6<0||$6>=M6.n)return;q.current?.scrollTo(M6.arr[$6]+P.current)},[q]),i=E-V[p];return{range:[B,p],topSpacer:g,bottomSpacer:i,measureRef:c,spacerRef:W,offsets:V,getItemTop:K6,getItemElement:t,getItemHeight:q6,scrollToIndex:e}}var mA,jZY=3,TS6=80,HZY=30,JZY,f57=1,$q8=300,Aq8=25,MZY=()=>{};var ShK=y(()=>{mA=O6(D6(),1),JZY=TS6>>1});function uhK(q){let K=z6(6),{children:_}=q,[z,Y]=hM.useState(null),[$,A]=hM.useState(null),O;if(K[0]!==_||K[1]!==$)O=hM.default.createElement(xhK.Provider,{value:$},_),K[0]=_,K[1]=$,K[2]=O;else O=K[2];let w;if(K[3]!==z||K[4]!==O)w=hM.default.createElement(bhK.Provider,{value:Y},hM.default.createElement(IhK.Provider,{value:A},hM.default.createElement(ChK.Provider,{value:z},O))),K[3]=z,K[4]=O,K[5]=w;else w=K[5];return w}function mhK(){return hM.useContext(ChK)}function phK(){return hM.useContext(xhK)}function BhK(q){let K=z6(4),_=hM.useContext(bhK),z,Y;if(K[0]!==q||K[1]!==_)z=()=>{if(!_)return;return _(q),()=>_(null)},Y=[_,q],K[0]=q,K[1]=_,K[2]=z,K[3]=Y;else z=K[2],Y=K[3];hM.useEffect(z,Y)}function ghK(q){let K=z6(4),_=hM.useContext(IhK),z,Y;if(K[0]!==q||K[1]!==_)z=()=>{if(!_)return;return _(q),()=>_(null)},Y=[_,q],K[0]=q,K[1]=_,K[2]=z,K[3]=Y;else z=K[2],Y=K[3];hM.useEffect(z,Y)}var hM,ChK,bhK,xhK,IhK;var eF8=y(()=>{q8();hM=O6(D6(),1),ChK=hM.createContext(null),bhK=hM.createContext(null),xhK=hM.createContext(null),IhK=hM.createContext(null)});import{fileURLToPath as XZY}from"url";function UhK(q){let[K,_]=h3.useState(null),z=h3.useRef(q);z.current=q;let Y=h3.useRef(null),$=h3.useCallback(()=>{_(null)},[]),A=h3.useCallback((j)=>{let H=Math.max(0,j.getScrollHeight()-j.getViewportHeight());if(j.getScrollTop()+j.getPendingDelta()>=H)return;if(Y.current===null)Y.current=j.getScrollHeight(),_(z.current)},[]),O=h3.useCallback((j)=>{if(!j)return;j.scrollToBottom()},[]);h3.useEffect(()=>{if(K===null)Y.current=null;else if(q<K)Y.current=null,_(null)},[q,K]);let w=h3.useCallback((j,H)=>{if(_((J)=>J===null?null:J+j),Y.current!==null)Y.current+=H},[]);return{dividerIndex:K,dividerYRef:Y,onScrollAway:A,onRepin:$,jumpToNew:O,shiftDivider:w}}function PZY(q,K){let _=0,z=!1;for(let Y=K;Y<q.length;Y++){let $=q[Y];if($.type==="progress")continue;if($.type==="assistant"&&!WZY($))continue;let A=$.type==="assistant";if(A&&!z)_++;z=A}return _}function WZY(q){if(q.type!=="assistant")return!1;for(let K of q.message.content)if(K.type==="text"&&K.text.trim()!=="")return!0;return!1}function QhK(q,K){if(K===null)return;let _=K;while(_<q.length&&(q[_]?.type==="progress"||tF8(q[_])))_++;let z=q[_]?.uuid;if(!z)return;let Y=PZY(q,K);return{firstUnseenUuid:z,count:Math.max(1,Y)}}function G57(q){let K=z6(47),{scrollable:_,bottom:z,overlay:Y,bottomFloat:$,modal:A,modalScrollRef:O,scrollRef:w,dividerYRef:j,hidePill:H,hideSticky:J,newMessageCount:M,onPillClick:X}=q,P=H===void 0?!1:H,W=J===void 0?!1:J,D=M===void 0?0:M,{rows:f,columns:G}=t1(),[Z,T]=h3.useState(null),v;if(K[0]===Symbol.for("react.memo_cache_sentinel"))v={setStickyPrompt:T},K[0]=v;else v=K[0];let V=v,E;if(K[1]!==w)E=(p)=>w?.current?.subscribe(p)??ZZY,K[1]=w,K[2]=E;else E=K[2];let S=E,R;if(K[3]!==j||K[4]!==w)R=()=>{let p=w?.current,C=j?.current;if(!p||C==null)return!1;return p.getScrollTop()+p.getPendingDelta()+p.getViewportHeight()<C},K[3]=j,K[4]=w,K[5]=R;else R=K[5];let x=h3.useSyncExternalStore(S,R),I;if(K[6]===Symbol.for("react.memo_cache_sentinel"))I=[],K[6]=I;else I=K[6];if(h3.useLayoutEffect(DZY,I),p4()){let p=W?null:Z,C=p!=null&&p!=="clicked"&&Y==null?p:null,g=p!=null&&Y==null,F;if(K[7]!==C)F=C&&h3.default.createElement(TZY,{text:C.text,onClick:C.scrollTo}),K[7]=C,K[8]=F;else F=K[8];let U=g?0:1,c;if(K[9]!==_)c=h3.default.createElement(Z57,{value:V},_),K[9]=_,K[10]=c;else c=K[10];let K6;if(K[11]!==Y||K[12]!==w||K[13]!==c||K[14]!==U)K6=h3.default.createElement(xh6,{ref:w,flexGrow:1,flexDirection:"column",paddingTop:U,stickyScroll:!0},c,Y),K[11]=Y,K[12]=w,K[13]=c,K[14]=U,K[15]=K6;else K6=K[15];let t;if(K[16]!==P||K[17]!==D||K[18]!==X||K[19]!==Y||K[20]!==x)t=!P&&x&&Y==null&&h3.default.createElement(GZY,{count:D,onClick:X}),K[16]=P,K[17]=D,K[18]=X,K[19]=Y,K[20]=x,K[21]=t;else t=K[21];let q6;if(K[22]!==$)q6=$!=null&&h3.default.createElement(u,{position:"absolute",bottom:0,right:0,opaque:!0},$),K[22]=$,K[23]=q6;else q6=K[23];let e;if(K[24]!==K6||K[25]!==t||K[26]!==q6||K[27]!==F)e=h3.default.createElement(u,{flexGrow:1,flexDirection:"column",overflow:"hidden"},F,K6,t,q6),K[24]=K6,K[25]=t,K[26]=q6,K[27]=F,K[28]=e;else e=K[28];let i,$6;if(K[29]===Symbol.for("react.memo_cache_sentinel"))i=h3.default.createElement(vZY,null),$6=h3.default.createElement(kZY,null),K[29]=i,K[30]=$6;else i=K[29],$6=K[30];let M6;if(K[31]!==z)M6=h3.default.createElement(u,{flexDirection:"column",flexShrink:0,width:"100%",maxHeight:"50%"},i,$6,h3.default.createElement(u,{flexDirection:"column",width:"100%",flexGrow:1,overflowY:"hidden"},z)),K[31]=z,K[32]=M6;else M6=K[32];let j6;if(K[33]!==G||K[34]!==A||K[35]!==O||K[36]!==f)j6=A!=null&&h3.default.createElement(fa6,{value:{rows:f-FhK-1,columns:G-4,scrollRef:O??null}},h3.default.createElement(u,{position:"absolute",bottom:0,left:0,right:0,maxHeight:f-FhK,flexDirection:"column",overflow:"hidden",opaque:!0},h3.default.createElement(u,{flexShrink:0},h3.default.createElement(k,{color:"permission"},"▔".repeat(G))),h3.default.createElement(u,{flexDirection:"column",paddingX:2,flexShrink:0,overflow:"hidden"},A))),K[33]=G,K[34]=A,K[35]=O,K[36]=f,K[37]=j6;else j6=K[37];let G6;if(K[38]!==e||K[39]!==M6||K[40]!==j6)G6=h3.default.createElement(uhK,null,e,M6,j6),K[38]=e,K[39]=M6,K[40]=j6,K[41]=G6;else G6=K[41];return G6}let B;if(K[42]!==z||K[43]!==A||K[44]!==Y||K[45]!==_)B=h3.default.createElement(h3.default.Fragment,null,_,z,Y,A),K[42]=z,K[43]=A,K[44]=Y,K[45]=_,K[46]=B;else B=K[46];return B}function DZY(){if(!p4())return;let q=VA.get(process.stdout);if(!q)return;return q.onHyperlinkClick=fZY,()=>{q.onHyperlinkClick=void 0}}function fZY(q){if(q.startsWith("file:"))try{YN6(XZY(q))}catch{}else m3(q)}function ZZY(){}function GZY(q){let K=z6(10),{count:_,onClick:z}=q,[Y,$]=h3.useState(!1),A,O;if(K[0]===Symbol.for("react.memo_cache_sentinel"))A=()=>$(!0),O=()=>$(!1),K[0]=A,K[1]=O;else A=K[0],O=K[1];let w=Y?"userMessageBackgroundHover":"userMessageBackground",j;if(K[2]!==_)j=_>0?`${_} new ${A7(_,"message")}`:"Jump to bottom",K[2]=_,K[3]=j;else j=K[3];let H;if(K[4]!==w||K[5]!==j)H=h3.default.createElement(k,{backgroundColor:w,dimColor:!0}," ",j," ",t6.arrowDown," "),K[4]=w,K[5]=j,K[6]=H;else H=K[6];let J;if(K[7]!==z||K[8]!==H)J=h3.default.createElement(u,{position:"absolute",bottom:0,left:0,right:0,justifyContent:"center"},h3.default.createElement(u,{onClick:z,onMouseEnter:A,onMouseLeave:O},H)),K[7]=z,K[8]=H,K[9]=J;else J=K[9];return J}function TZY(q){let K=z6(8),{text:_,onClick:z}=q,[Y,$]=h3.useState(!1),A=Y?"userMessageBackgroundHover":"userMessageBackground",O,w;if(K[0]===Symbol.for("react.memo_cache_sentinel"))O=()=>$(!0),w=()=>$(!1),K[0]=O,K[1]=w;else O=K[0],w=K[1];let j;if(K[2]!==_)j=h3.default.createElement(k,{color:"subtle",wrap:"truncate-end"},t6.pointer," ",_),K[2]=_,K[3]=j;else j=K[3];let H;if(K[4]!==z||K[5]!==A||K[6]!==j)H=h3.default.createElement(u,{flexShrink:0,width:"100%",height:1,paddingRight:1,backgroundColor:A,onClick:z,onMouseEnter:O,onMouseLeave:w},j),K[4]=z,K[5]=A,K[6]=j,K[7]=H;else H=K[7];return H}function vZY(){let q=z6(4),K=mhK();if(!K||K.suggestions.length===0)return null;let _;if(q[0]!==K.maxColumnWidth||q[1]!==K.selectedSuggestion||q[2]!==K.suggestions)_=h3.default.createElement(u,{position:"absolute",bottom:"100%",left:0,right:0,paddingX:2,paddingTop:1,flexDirection:"column",opaque:!0},h3.default.createElement(pGK,{suggestions:K.suggestions,selectedSuggestion:K.selectedSuggestion,maxColumnWidth:K.maxColumnWidth,overlay:!0})),q[0]=K.maxColumnWidth,q[1]=K.selectedSuggestion,q[2]=K.suggestions,q[3]=_;else _=q[3];return _}function kZY(){let q=z6(2),K=phK();if(!K)return null;let _;if(q[0]!==K)_=h3.default.createElement(u,{position:"absolute",bottom:"100%",left:0,right:0,opaque:!0},K),q[0]=K,q[1]=_;else _=q[1];return _}var h3,FhK=2,Z57;var T57=y(()=>{q8();bq();CU();eF8();t4();Ag8();QV();s6();hH();_M();D57();$g8();h3=O6(D6(),1),Z57=h3.createContext({setStickyPrompt:()=>{}})});function VZY(q){let K=dhK.get(q);if(K!==void 0)return K;let _=mF8(q);return dhK.set(q,_),_}function yZY(q){let K=chK.get(q);if(K!==void 0)return K;let _=EZY(q);return chK.set(q,_),_}function EZY(q){let K=null;if(q.type==="user"){if(q.isMeta||q.isVisibleInTranscriptOnly)return null;let z=q.message.content[0];if(z?.type!=="text")return null;K=z.text}else if(q.type==="attachment"&&q.attachment.type==="queued_command"&&q.attachment.commandMode!=="task-notification"&&!q.attachment.isMeta){let z=q.attachment.prompt;K=typeof z==="string"?z:z.flatMap((Y)=>Y.type==="text"?[Y.text]:[]).join(`
6258
6258
  `)}if(K===null)return null;let _=Cy8(K);if(_.startsWith("<")||_==="")return null;return _}function LZY(q){let K=z6(30),{itemKey:_,msg:z,idx:Y,measureRef:$,expanded:A,hovered:O,clickable:w,onClickK:j,onEnterK:H,onLeaveK:J,renderItem:M}=q,X;if(K[0]!==_||K[1]!==$)X=$(_),K[0]=_,K[1]=$,K[2]=X;else X=K[2];let P=A?"userMessageBackgroundHover":void 0,W=A?1:void 0,D;if(K[3]!==w||K[4]!==z||K[5]!==j)D=w?(E)=>j(z,E.cellIsBlank):void 0,K[3]=w,K[4]=z,K[5]=j,K[6]=D;else D=K[6];let f;if(K[7]!==w||K[8]!==_||K[9]!==H)f=w?()=>H(_):void 0,K[7]=w,K[8]=_,K[9]=H,K[10]=f;else f=K[10];let G;if(K[11]!==w||K[12]!==_||K[13]!==J)G=w?()=>J(_):void 0,K[11]=w,K[12]=_,K[13]=J,K[14]=G;else G=K[14];let Z=O&&!A?"text":void 0,T;if(K[15]!==Y||K[16]!==z||K[17]!==M)T=M(z,Y),K[15]=Y,K[16]=z,K[17]=M,K[18]=T;else T=K[18];let v;if(K[19]!==Z||K[20]!==T)v=iD.createElement(HL1.Provider,{value:Z},T),K[19]=Z,K[20]=T,K[21]=v;else v=K[21];let V;if(K[22]!==X||K[23]!==P||K[24]!==W||K[25]!==D||K[26]!==f||K[27]!==G||K[28]!==v)V=iD.createElement(u,{ref:X,flexDirection:"column",backgroundColor:P,paddingBottom:W,onClick:D,onMouseEnter:f,onMouseLeave:G},v),K[22]=X,K[23]=P,K[24]=W,K[25]=D,K[26]=f,K[27]=G,K[28]=v,K[29]=V;else V=K[29];return V}function lhK({messages:q,scrollRef:K,columns:_,itemKey:z,renderItem:Y,onItemClick:$,isItemClickable:A,isItemExpanded:O,extractSearchText:w=VZY,trackStickyPrompt:j,selectedIndex:H,cursorNavRef:J,setCursor:M,jumpRef:X,onSearchMatchesChange:P,scanElement:W,setPositions:D}){let f=G_.useRef([]),G=G_.useRef(q),Z=G_.useRef(z);if(Z.current!==z||q.length<f.current.length||q[0]!==G.current[0])f.current=q.map((T6)=>z(T6));else for(let T6=f.current.length;T6<q.length;T6++)f.current.push(z(q[T6]));G.current=q,Z.current=z;let T=f.current,{range:v,topSpacer:V,bottomSpacer:E,measureRef:S,spacerRef:R,offsets:x,getItemTop:I,getItemElement:B,getItemHeight:p,scrollToIndex:C}=hhK(K,T,_),[g,F]=v,U=G_.useCallback((T6)=>{if(p(T6)===0)return!1;return QE4(q[T6])},[p,q]);G_.useImperativeHandle(J,()=>{let T6=(C6)=>M?.({uuid:C6.uuid,msgType:C6.type,expanded:!1,toolName:Sy8(C6)?.name}),n6=H??-1,o6=(C6,l6,S6=U)=>{for(let E6=C6;E6>=0&&E6<q.length;E6+=l6)if(S6(E6))return T6(q[E6]),!0;return!1},I6=(C6)=>U(C6)&&q[C6].type==="user";return{enterCursor:()=>o6(q.length-1,-1,I6),navigatePrev:()=>o6(n6-1,-1),navigateNext:()=>{if(o6(n6+1,1))return;K.current?.scrollToBottom(),M?.(null)},navigatePrevUser:()=>o6(n6-1,-1,I6),navigateNextUser:()=>o6(n6+1,1,I6),navigateTop:()=>o6(0,1),navigateBottom:()=>o6(q.length-1,-1),getSelected:()=>n6>=0?q[n6]??null:null}},[q,H,M,U]);let c=G_.useRef({offsets:x,start:g,getItemElement:B,getItemTop:I,messages:q,scrollToIndex:C});c.current={offsets:x,start:g,getItemElement:B,getItemTop:I,messages:q,scrollToIndex:C},G_.useEffect(()=>{if(H===void 0)return;let T6=c.current,n6=T6.getItemElement(H);if(n6)K.current?.scrollToElement(n6,1);else T6.scrollToIndex(H)},[H,K]);let K6=G_.useRef(null),t=G_.useRef({msgIdx:-1,positions:[]}),q6=G_.useRef(-1),e=G_.useRef(0),i=G_.useRef(0),$6=G_.useRef(()=>{}),M6=G_.useRef(()=>{}),j6=G_.useRef({matches:[],ptr:0,screenOrd:0,prefixSum:[]}),G6=G_.useRef(-1),w6=G_.useRef(!1);function o(T6){let n6=c.current.getItemTop(T6);return Math.max(0,n6-v57)}function s(T6){let n6=K.current,{msgIdx:o6,positions:I6}=t.current;if(!n6||I6.length===0||o6<0){D?.(null);return}let C6=Math.max(0,Math.min(T6,I6.length-1)),l6=I6[C6],S6=c.current.getItemTop(o6),E6=n6.getViewportTop(),R6=S6-n6.getScrollTop(),h6=n6.getViewportHeight(),x6=E6+R6+l6.row;if(x6<E6||x6>=E6+h6)n6.scrollTo(Math.max(0,S6+l6.row-v57)),R6=S6-n6.getScrollTop(),x6=E6+R6+l6.row;D?.({positions:I6,rowOffset:E6+R6,currentIdx:C6});let b6=j6.current,Q6=b6.prefixSum.at(-1)??0,Y6=(b6.prefixSum[b6.ptr]??0)+C6+1;P?.(Q6,Y6),N(`highlight(i=${o6}, ord=${C6}/${I6.length}): pos={row:${l6.row},col:${l6.col}} lo=${R6} screenRow=${x6} badge=${Y6}/${Q6}`)}M6.current=s;let[a,n]=G_.useState(0),l=G_.useCallback(()=>n((T6)=>T6+1),[]);G_.useEffect(()=>{let T6=K6.current;if(!T6)return;let{idx:n6,wantLast:o6,tries:I6}=T6,C6=K.current;if(!C6)return;let{getItemElement:l6,getItemTop:S6,scrollToIndex:E6}=c.current,R6=l6(n6),h6=R6?.yogaNode?.getComputedHeight()??0;if(!R6||h6===0){if(I6>1){K6.current=null,N(`seek(i=${n6}): no mount after scrollToIndex, skip`),$6.current(o6?-1:1);return}K6.current={idx:n6,wantLast:o6,tries:I6+1},E6(n6),l();return}K6.current=null,C6.scrollTo(Math.max(0,S6(n6)-v57));let x6=W?.(R6)??[];if(t.current={msgIdx:n6,positions:x6},N(`seek(i=${n6} t=${I6}): ${x6.length} positions`),x6.length===0){if(++e.current>20){e.current=0;return}$6.current(o6?-1:1);return}e.current=0;let b6=o6?x6.length-1:0;j6.current.screenOrd=b6,q6.current=-1,M6.current(b6);let Q6=i.current;if(Q6)i.current=0,$6.current(Q6)},[a]);function A6(T6,n6){let o6=K.current;if(!o6)return;let I6=c.current,{getItemElement:C6,scrollToIndex:l6}=I6;if(T6<0||T6>=I6.messages.length)return;D?.(null),t.current={msgIdx:-1,positions:[]},K6.current={idx:T6,wantLast:n6,tries:0};let S6=C6(T6),E6=S6?.yogaNode?.getComputedHeight()??0;if(S6&&E6>0)o6.scrollTo(o(T6));else l6(T6);l()}function J6(T6){let n6=j6.current,{matches:o6,prefixSum:I6}=n6,C6=I6.at(-1)??0;if(o6.length===0)return;if(K6.current){i.current=T6;return}if(q6.current<0)q6.current=n6.ptr;let{positions:l6}=t.current,S6=n6.screenOrd+T6;if(S6>=0&&S6<l6.length){n6.screenOrd=S6,s(S6),q6.current=-1;return}let E6=(n6.ptr+T6+o6.length)%o6.length;if(E6===q6.current){D?.(null),q6.current=-1,N(`step: wraparound at ptr=${E6}, all ${o6.length} msgs phantoms`);return}n6.ptr=E6,n6.screenOrd=0,A6(o6[E6],T6<0);let R6=T6<0?I6[E6+1]??C6:I6[E6]+1;P?.(C6,R6)}$6.current=J6,G_.useImperativeHandle(X,()=>({jumpToIndex:(T6)=>{let n6=K.current;if(n6)n6.scrollTo(o(T6))},setSearchQuery:(T6)=>{K6.current=null,t.current={msgIdx:-1,positions:[]},q6.current=-1,D?.(null);let n6=T6.toLowerCase(),o6=[],I6=[0];if(n6){let Q6=c.current.messages;for(let Y6=0;Y6<Q6.length;Y6++){let _6=w(Q6[Y6]),F6=_6.indexOf(n6),W6=0;while(F6>=0)W6++,F6=_6.indexOf(n6,F6+n6.length);if(W6>0)o6.push(Y6),I6.push(I6.at(-1)+W6)}}let C6=I6.at(-1),l6=0,S6=K.current,{offsets:E6,start:R6,getItemTop:h6}=c.current,x6=h6(R6),b6=x6>=0?x6-E6[R6]:0;if(o6.length>0&&S6){let Q6=G6.current>=0?G6.current:S6.getScrollTop(),Y6=1/0;for(let _6=0;_6<o6.length;_6++){let F6=Math.abs(b6+E6[o6[_6]]-Q6);if(F6<=Y6)Y6=F6,l6=_6}N(`setSearchQuery('${T6}'): ${o6.length} msgs · ptr=${l6} msgIdx=${o6[l6]} curTop=${Q6} origin=${b6}`)}if(j6.current={matches:o6,ptr:l6,screenOrd:0,prefixSum:I6},o6.length>0)A6(o6[l6],!0);else if(G6.current>=0&&S6)S6.scrollTo(G6.current);P?.(C6,o6.length>0?I6[l6+1]??C6:0)},nextMatch:()=>J6(1),prevMatch:()=>J6(-1),setAnchor:()=>{let T6=K.current;if(T6)G6.current=T6.getScrollTop()},disarmSearch:()=>{D?.(null),K6.current=null,t.current={msgIdx:-1,positions:[]},q6.current=-1},warmSearchIndex:async()=>{if(w6.current)return 0;let T6=c.current.messages,n6=500,o6=0,I6=performance.now();for(let l6=0;l6<T6.length;l6+=n6){await R7(0);let S6=performance.now(),E6=Math.min(l6+n6,T6.length);for(let R6=l6;R6<E6;R6++)w(T6[R6]);o6+=performance.now()-S6}let C6=Math.round(performance.now()-I6);return N(`warmSearchIndex: ${T6.length} msgs · work=${Math.round(o6)}ms wall=${C6}ms chunks=${Math.ceil(T6.length/n6)}`),w6.current=!0,Math.round(o6)}}),[K]);let[X6,f6]=G_.useState(null),N6=G_.useRef({onItemClick:$,setHoveredKey:f6});N6.current={onItemClick:$,setHoveredKey:f6};let Z6=G_.useCallback((T6,n6)=>{let o6=N6.current;if(!n6&&o6.onItemClick)o6.onItemClick(T6)},[]),V6=G_.useCallback((T6)=>{N6.current.setHoveredKey(T6)},[]),y6=G_.useCallback((T6)=>{N6.current.setHoveredKey((n6)=>n6===T6?null:n6)},[]);return iD.createElement(iD.Fragment,null,iD.createElement(u,{ref:R,height:V,flexShrink:0}),q.slice(g,F).map((T6,n6)=>{let o6=g+n6,I6=T[o6],C6=!!$&&(A?.(T6)??!0),l6=C6&&X6===I6,S6=O?.(T6);return iD.createElement(LZY,{key:I6,itemKey:I6,msg:T6,idx:o6,measureRef:S,expanded:S6,hovered:l6,clickable:C6,onClickK:Z6,onEnterK:V6,onLeaveK:y6,renderItem:Y})}),E>0&&iD.createElement(u,{height:E,flexShrink:0}),j&&iD.createElement(hZY,{messages:q,start:g,end:F,offsets:x,getItemTop:I,getItemElement:B,scrollRef:K}))}function hZY({messages:q,start:K,end:_,offsets:z,getItemTop:Y,getItemElement:$,scrollRef:A}){let{setStickyPrompt:O}=G_.useContext(Z57),w=G_.useCallback((T)=>A.current?.subscribe(T)??RZY,[A]);G_.useSyncExternalStore(w,()=>{let T=A.current;if(!T)return NaN;let v=T.getScrollTop()+T.getPendingDelta();return T.isSticky()?-1-v:v});let j=A.current?.isSticky()??!0,H=Math.max(0,(A.current?.getScrollTop()??0)+(A.current?.getPendingDelta()??0)),J=K,M=-1;for(let T=_-1;T>=K;T--){let v=Y(T);if(v>=0){if(v<H)break;M=v}J=T}let X=-1,P=null;if(J>0&&!j)for(let T=J-1;T>=0;T--){let v=yZY(q[T]);if(v===null)continue;let V=Y(T);if(V>=0&&V+1>=H)continue;X=T,P=v;break}let W=M>=0?M-z[J]:0,D=X>=0?Math.max(0,W+z[X]):-1,f=G_.useRef({idx:-1,tries:0}),G=G_.useRef("none"),Z=G_.useRef(-1);return G_.useEffect(()=>{if(f.current.idx>=0)return;if(G.current==="armed"){G.current="force";return}let T=G.current==="force";if(G.current="none",!T&&Z.current===X)return;if(Z.current=X,P===null){O(null);return}let v=P.trimStart(),V=v.search(/\n\s*\n/),E=(V>=0?v.slice(0,V):v).slice(0,NZY).replace(/\s+/g," ").trim();if(E===""){O(null);return}let S=X,R=D;O({text:E,scrollTo:()=>{O("clicked"),G.current="armed";let x=$(S);if(x)A.current?.scrollToElement(x,1);else A.current?.scrollTo(R),f.current={idx:S,tries:0}}})}),G_.useEffect(()=>{if(f.current.idx<0)return;let T=$(f.current.idx);if(T)A.current?.scrollToElement(T,1),f.current={idx:-1,tries:0};else if(++f.current.tries>5)f.current={idx:-1,tries:0}}),null}var iD,G_,v57=3,dhK,NZY=500,chK,RZY=()=>{};var nhK=y(()=>{q8();ShK();s6();TA6();T57();_8();Y57();NN();iD=O6(D6(),1),G_=O6(D6(),1),dhK=new WeakMap;chK=new WeakMap});function xZY(q,K){let _=new Set(K),z=new Set;return q.filter((Y)=>{if(Y.type==="system")return Y.subtype!=="api_metrics";let $=Y.message?.content[0];if(Y.type==="assistant"){if(Y.isApiErrorMessage)return!0;if($?.type==="tool_use"&&$.name&&_.has($.name)){if("id"in $)z.add($.id);return!0}return!1}if(Y.type==="user"){if($?.type==="tool_result")return $.tool_use_id!==void 0&&z.has($.tool_use_id);return!Y.isMeta}if(Y.type==="attachment"){let A=Y.attachment;return A?.type==="queued_command"&&A.commandMode==="prompt"&&!A.isMeta&&A.origin===void 0}return!1})}function IZY(q,K){let _=new Set(K),z=new Set,Y=[],$=0;for(let A=0;A<q.length;A++){let O=q[A],w=O.message?.content[0];if(O.type==="user"&&w?.type!=="tool_result"&&!O.isMeta){$++;continue}if(O.type==="assistant"){if(w?.type==="text")Y[A]=$;else if(w?.type==="tool_use"&&w.name&&_.has(w.name))z.add($)}}if(z.size===0)return q;return q.filter((A,O)=>{let w=Y[O];return w===void 0||!z.has(w)})}function pZY(q,K,_=uZY,z=mZY){let Y=K.current,$=Y?q.findIndex((w)=>w.uuid===Y.uuid):-1,A=$>=0?$:Y?Math.min(Y.idx,Math.max(0,q.length-_)):0;if(q.length-A>_+z)A=q.length-_;let O=q[A];if(O&&(Y?.uuid!==O.uuid||Y.idx!==A))K.current={uuid:O.uuid,idx:A};else if(!O&&Y)K.current=null;return A}function rhK(q){return(q.type==="assistant"||q.type==="user"?Qa(q):null)??q.uuid}function gZY(q,K){if(q.size!==K.size)return!1;for(let _ of q)if(!K.has(_))return!1;return!0}function VhK(q,K,_,z,Y,$){if(Y==="transcript")return!0;switch(q.type){case"attachment":case"user":case"assistant":{if(q.type==="assistant"){let O=q.message.content[0];if(O?.type==="server_tool_use")return $.resolvedToolUseIDs.has(O.id)}let A=Qa(q);if(!A)return!0;if(K.has(A))return!1;if(_.has(A))return!1;if(c0K(A,"PostToolUse",$))return!1;return ZRK(z,$.resolvedToolUseIDs)}case"system":return q.subtype!=="api_error";case"grouped_tool_use":return q.messages.every((O)=>{let w=O.message.content[0];return w?.type==="tool_use"&&$.resolvedToolUseIDs.has(w.id)});case"collapsed_read_search":return!1}}var M5,pA,SZY,CZY=null,ihK,bZY=null,k57=30,uZY=200,mZY=50,BZY=({messages:q,tools:K,commands:_,verbose:z,toolJSX:Y,toolUseConfirmQueue:$,inProgressToolUseIDs:A,isMessageSelectorVisible:O,conversationId:w,screen:j,streamingToolUses:H,showAllInTranscript:J=!1,agentDefinitions:M,onOpenRateLimitOptions:X,hideLogo:P=!1,isLoading:W,hidePastThinking:D=!1,streamingThinking:f,streamingText:G,isBriefOnly:Z=!1,unseenDivider:T,scrollRef:v,trackStickyPrompt:V,jumpRef:E,onSearchMatchesChange:S,scanElement:R,setPositions:x,disableRenderCap:I=!1,cursor:B=null,setCursor:p,cursorNavRef:C,renderRange:g})=>{let{columns:F}=t1(),U=R5("transcript:toggleShowAll","Transcript","Ctrl+E"),c=pA.useMemo(()=>yX(q).filter(Go6),[q]),K6=pA.useMemo(()=>{if(!f)return!1;if(f.isStreaming)return!0;if(f.streamingEndedAt)return Date.now()-f.streamingEndedAt<30000;return!1},[f]),t=pA.useMemo(()=>{if(!D)return null;if(K6)return"streaming";for(let b6=c.length-1;b6>=0;b6--){let Q6=c[b6];if(Q6?.type==="assistant"){let Y6=Q6.message.content;for(let _6=Y6.length-1;_6>=0;_6--)if(Y6[_6]?.type==="thinking")return`${Q6.uuid}:${_6}`}else if(Q6?.type==="user"){if(!Q6.message.content.some((_6)=>_6.type==="tool_result"))return"no-thinking"}}return null},[c,D,K6]),q6=pA.useMemo(()=>{for(let b6=c.length-1;b6>=0;b6--){let Q6=c[b6];if(Q6?.type==="user"){let Y6=Q6.message.content;for(let _6 of Y6)if(_6.type==="text"){let F6=_6.text;if(F6.startsWith("<bash-stdout")||F6.startsWith("<bash-stderr"))return Q6.uuid}}}return null},[c]),e=pA.useMemo(()=>l0K(c),[c]),i=pA.useMemo(()=>H.filter((b6)=>!A.has(b6.contentBlock.id)&&!e.has(b6.contentBlock.id)),[H,A,e]),$6=pA.useMemo(()=>i.flatMap((b6)=>{let Q6=nG({content:[b6.contentBlock]});return Q6.uuid=i18(b6.contentBlock.id,0),yX([Q6])}),[i]),M6=j==="transcript",j6=pA.useMemo(()=>i6(process.env.CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL),[]),G6=v!=null&&!j6,w6=M6&&!J&&!G6,o=pA.useRef(null),{collapsed:s,lookups:a,hasTruncatedMessages:n,hiddenMessageCount:l}=pA.useMemo(()=>{let b6=z||p4()?c:i2(c,{includeSnipped:!0}),Q6=F0K(b6.filter((X1)=>X1.type!=="progress").filter((X1)=>!tF8(X1)).filter((X1)=>e0K(X1,M6)),$6),Y6=[ihK,bZY].filter((X1)=>X1!==null),_6=[ihK].filter((X1)=>X1!==null),F6=Y6.length>0&&!M6?Z?xZY(Q6,Y6):_6.length>0?IZY(Q6,_6):Q6:Q6,W6=w6?F6.slice(-k57):F6,v6=w6&&F6.length>k57,{messages:m6}=LRK(W6,K,z),K8=TRK(VRK(yRK(gXK(m6,K))),z),H8=U0K(c,W6),M8=Q6.length-k57;return{collapsed:K8,lookups:H8,hasTruncatedMessages:v6,hiddenMessageCount:M8}},[z,c,M6,$6,w6,K,Z]),A6=pA.useMemo(()=>{let Q6=!G6&&!I?pZY(s,o):0;return g?s.slice(g[0],g[1]):Q6>0?s.slice(Q6):s},[s,g,G6,I]),J6=pA.useMemo(()=>new Set(H.map((b6)=>b6.contentBlock.id)),[H]),X6=pA.useMemo(()=>{if(!T)return-1;let b6=T.firstUnseenUuid.slice(0,24);return A6.findIndex((Q6)=>Q6.uuid.slice(0,24)===b6)},[T,A6]),f6=pA.useMemo(()=>{if(!B)return-1;return A6.findIndex((b6)=>b6.uuid===B.uuid)},[B,A6]),[N6,Z6]=pA.useState(()=>new Set),V6=pA.useCallback((b6)=>{let Q6=rhK(b6);Z6((Y6)=>{let _6=new Set(Y6);if(_6.has(Q6))_6.delete(Q6);else _6.add(Q6);return _6})},[]),y6=pA.useCallback((b6)=>N6.size>0&&N6.has(rhK(b6)),[N6]),T6=pA.useRef(a);T6.current=a;let n6=pA.useCallback((b6)=>{if(b6.type==="collapsed_read_search")return!0;if(b6.type==="assistant"){let F6=b6.message.content[0];return F6!=null&&UN6(F6)&&F6.type==="advisor_tool_result"&&F6.content.type==="advisor_result"}if(b6.type!=="user")return!1;let Q6=b6.message.content[0];if(Q6?.type!=="tool_result"||Q6.is_error||!b6.toolUseResult)return!1;let Y6=T6.current.toolUseByToolUseID.get(Q6.tool_use_id)?.name;return(Y6?L5(K,Y6):void 0)?.isResultTruncated?.(b6.toolUseResult)??!1},[K]),o6=(!Y||!!Y.shouldContinueAnimation)&&!$.length&&!O,I6=A.size>0,{progress:C6}=ZF(),l6=pA.useRef(null),S6=j8().terminalProgressBarEnabled&&!z5()&&!(CZY?.isProactiveActive()??!1);pA.useEffect(()=>{let b6=S6?I6?"indeterminate":"completed":null;if(l6.current===b6)return;l6.current=b6,C6(b6)},[C6,S6,I6]),pA.useEffect(()=>{return()=>C6(null)},[C6]);let E6=pA.useCallback((b6)=>`${b6.uuid}-${w}`,[w]),R6=(b6,Q6)=>{let Y6=Q6>0?A6[Q6-1]?.type:void 0,_6=b6.type==="user"&&Y6==="user",F6=b6.type==="collapsed_read_search"&&(!!G||ThK(A6,Q6,K,J6)),W6=E6(b6),v6=M5.createElement(vhK,{key:W6,message:b6,isUserContinuation:_6,hasContentAfter:F6,tools:K,commands:_,verbose:z||y6(b6)||B?.expanded===!0&&Q6===f6,inProgressToolUseIDs:A,streamingToolUseIDs:J6,screen:j,canAnimate:o6,onOpenRateLimitOptions:X,lastThinkingBlockId:t,latestBashOutputUUID:q6,columns:F,isLoading:W,lookups:a}),m6=M5.createElement(Qr.Provider,{key:W6,value:Q6===f6},v6);if(T&&Q6===X6)return[M5.createElement(u,{key:"unseen-divider",marginTop:1},M5.createElement(R$,{title:`${T.count} new ${A7(T.count,"message")}`,width:F,color:"inactive"})),m6];return m6},h6=pA.useRef(new WeakMap),x6=pA.useCallback((b6)=>{let Q6=h6.current.get(b6);if(Q6!==void 0)return Q6;let Y6=mF8(b6);if(b6.type==="user"&&b6.toolUseResult&&Array.isArray(b6.message.content)){let F6=b6.message.content.find((W6)=>W6.type==="tool_result");if(F6&&"tool_use_id"in F6){let W6=a.toolUseByToolUseID.get(F6.tool_use_id),m6=(W6&&L5(K,W6.name))?.extractSearchText?.(b6.toolUseResult);if(m6!==void 0)Y6=m6}}let _6=Y6.toLowerCase();return h6.current.set(b6,_6),_6},[K,a]);return M5.createElement(M5.Fragment,null,!P&&!(g&&g[0]>0)&&M5.createElement(SZY,{agentDefinitions:M}),n&&M5.createElement(R$,{title:`${U} to show ${$8.bold(l)} previous messages`,width:F}),M6&&J&&l>0&&!I&&M5.createElement(R$,{title:`${U} to hide ${$8.bold(l)} previous messages`,width:F}),G6?M5.createElement(Lq6.Provider,{value:!0},M5.createElement(lhK,{messages:A6,scrollRef:v,columns:F,itemKey:E6,renderItem:R6,onItemClick:V6,isItemClickable:n6,isItemExpanded:y6,trackStickyPrompt:V,selectedIndex:f6>=0?f6:void 0,cursorNavRef:C,setCursor:p,jumpRef:E,onSearchMatchesChange:S,scanElement:R,setPositions:x,extractSearchText:x6})):A6.flatMap(R6),G&&!Z&&M5.createElement(u,{alignItems:"flex-start",flexDirection:"row",marginTop:1,width:"100%"},M5.createElement(u,{flexDirection:"row"},M5.createElement(u,{minWidth:2},M5.createElement(k,{color:"text"},A_)),M5.createElement(u,{flexDirection:"column"},M5.createElement(fx4,null,G)))),K6&&f&&!Z&&M5.createElement(u,{marginTop:1},M5.createElement(yb8,{param:{type:"thinking",thinking:f.thinking},addMargin:!1,isTranscriptMode:!0,verbose:z,hideInTranscript:!1})))},AJ6;var Yq8=y(()=>{q8();x3();v8();zz();t4();GF();s6();LX();Bq();eq6();vRK();Bo();V1();m8();_M();RRK();i1();Y57();lC();WhK();xN();khK();NN();Jr1();D57();$K6();RhK();nhK();M5=O6(D6(),1),pA=O6(D6(),1),SZY=M5.memo(function(K){let _=z6(3),{agentDefinitions:z}=K,Y;if(_[0]===Symbol.for("react.memo_cache_sentinel"))Y=M5.createElement(PhK,null),_[0]=Y;else Y=_[0];let $;if(_[1]!==z)$=M5.createElement(I0,null,M5.createElement(u,{flexDirection:"column",gap:1},Y,M5.createElement(M5.Suspense,{fallback:null},M5.createElement(LhK,{agentDefinitions:z})))),_[1]=z,_[2]=$;else $=_[2];return $}),ihK=(YI(),Eq(Pl)).BRIEF_TOOL_NAME;AJ6=M5.memo(BZY,(q,K)=>{let _=Object.keys(q);for(let z of _){if(z==="onOpenRateLimitOptions"||z==="scrollRef"||z==="trackStickyPrompt"||z==="setCursor"||z==="cursorNavRef"||z==="jumpRef"||z==="onSearchMatchesChange"||z==="scanElement"||z==="setPositions")continue;if(q[z]!==K[z]){if(z==="streamingToolUses"){let Y=q.streamingToolUses,$=K.streamingToolUses;if(Y.length===$.length&&Y.every((A,O)=>A.contentBlock===$[O]?.contentBlock))continue}if(z==="inProgressToolUseIDs"){if(gZY(q.inProgressToolUseIDs,K.inProgressToolUseIDs))continue}if(z==="unseenDivider"){let Y=q.unseenDivider,$=K.unseenDivider;if(Y?.firstUnseenUuid===$?.firstUnseenUuid&&Y?.count===$?.count)continue}if(z==="tools"){let Y=q.tools,$=K.tools;if(Y.length===$.length&&Y.every((A,O)=>A.name===$[O]?.name))continue}return!1}}return!0})});function ohK(q){let K=z6(33),{log:_,onExit:z,onSelect:Y}=q,[$,A]=HT.default.useState(null),O,w;if(K[0]!==_)O=()=>{if(A(null),qR(_))om(_).then(A)},w=[_],K[0]=_,K[1]=O,K[2]=w;else O=K[1],w=K[2];HT.default.useEffect(O,w);let j=qR(_)&&$===null,H=$??_,J;if(K[3]!==H)J=SA(H)||"",K[3]=H,K[4]=J;else J=K[4];let M=J,X;if(K[5]===Symbol.for("react.memo_cache_sentinel"))X=UK6(),K[5]=X;else X=K[5];let P=X,W;if(K[6]===Symbol.for("react.memo_cache_sentinel"))W={context:"Confirmation"},K[6]=W;else W=K[6];P1("confirm:no",z,W);let D;if(K[7]!==$||K[8]!==_||K[9]!==Y)D=()=>{Y($??_)},K[7]=$,K[8]=_,K[9]=Y,K[10]=D;else D=K[10];let f=D,G;if(K[11]===Symbol.for("react.memo_cache_sentinel"))G={context:"Confirmation"},K[11]=G;else G=K[11];if(P1("confirm:yes",f,G),j){let C;if(K[12]===Symbol.for("react.memo_cache_sentinel"))C=HT.default.createElement(pb,{message:"Loading session…"}),K[12]=C;else C=K[12];let g;if(K[13]===Symbol.for("react.memo_cache_sentinel"))g=HT.default.createElement(u,{flexDirection:"column",padding:1},C,HT.default.createElement(k,{dimColor:!0},HT.default.createElement(I1,null,HT.default.createElement(W1,{action:"confirm:no",context:"Confirmation",fallback:"Esc",description:"cancel"})))),K[13]=g;else g=K[13];return g}let Z;if(K[14]===Symbol.for("react.memo_cache_sentinel"))Z=[],K[14]=Z;else Z=K[14];let T,v;if(K[15]===Symbol.for("react.memo_cache_sentinel"))v=[],T=new Set,K[15]=T,K[16]=v;else T=K[15],v=K[16];let V;if(K[17]===Symbol.for("react.memo_cache_sentinel"))V=[],K[17]=V;else V=K[17];let E;if(K[18]!==M||K[19]!==H.messages)E=HT.default.createElement(AJ6,{messages:H.messages,tools:P,commands:Z,verbose:!0,toolJSX:null,toolUseConfirmQueue:v,inProgressToolUseIDs:T,isMessageSelectorVisible:!1,conversationId:M,screen:"transcript",streamingToolUses:V,showAllInTranscript:!0,isLoading:!1}),K[18]=M,K[19]=H.messages,K[20]=E;else E=K[20];let S;if(K[21]!==H.modified)S=Kh(H.modified),K[21]=H.modified,K[22]=S;else S=K[22];let R=H.gitBranch?` · ${H.gitBranch}`:"",x;if(K[23]!==H.messageCount||K[24]!==S||K[25]!==R)x=HT.default.createElement(k,null,S," ·"," ",H.messageCount," messages",R),K[23]=H.messageCount,K[24]=S,K[25]=R,K[26]=x;else x=K[26];let I;if(K[27]===Symbol.for("react.memo_cache_sentinel"))I=HT.default.createElement(k,{dimColor:!0},HT.default.createElement(I1,null,HT.default.createElement(t8,{shortcut:"Enter",action:"resume"}),HT.default.createElement(W1,{action:"confirm:no",context:"Confirmation",fallback:"Esc",description:"cancel"}))),K[27]=I;else I=K[27];let B;if(K[28]!==x)B=HT.default.createElement(u,{flexShrink:0,flexDirection:"column",borderTopDimColor:!0,borderBottom:!1,borderLeft:!1,borderRight:!1,borderStyle:"single",paddingLeft:2},x,I),K[28]=x,K[29]=B;else B=K[29];let p;if(K[30]!==E||K[31]!==B)p=HT.default.createElement(u,{flexDirection:"column"},E,B),K[30]=E,K[31]=B,K[32]=p;else p=K[32];return p}var HT;var ahK=y(()=>{q8();s6();Oq();BD();U7();_K();a5();QK();rK();IH6();Yq8();HT=O6(D6(),1)});function dZY(q,K){if(q===V57)return V57.length+Oq8;let _=O1(q),z=K?Math.min(_,K-Oq8-N57):_;return Math.max(0,z)+Oq8+N57}function cZY(q,K){let _=K-Oq8-N57;if(O1(q)<=_)return q;if(_<=1)return q.charAt(0);return T4(q,_)}function _SK({tabs:q,selectedIndex:K,availableWidth:_,showAllProjects:z=!1}){let Y=z?"Resume (All Projects)":"Resume",$=Y.length+1,A=Math.max(UZY,QZY),O=_-$-A-2,w=Math.max(0,Math.min(K,q.length-1)),j=Math.max(20,Math.floor(O/2)),H=q.map((G)=>dZY(G,j)),J=0,M=q.length;if(H.reduce((G,Z,T)=>G+Z+(T<H.length-1?1:0),0)>O){let G=O-FZY,Z=H[w]??0;J=w,M=w+1;while(J>0||M<q.length){let T=J>0,v=M<q.length;if(T){let V=(H[J-1]??0)+1;if(Z+V<=G){J--,Z+=V;continue}}if(v){let V=(H[M]??0)+1;if(Z+V<=G){M++,Z+=V;continue}}break}}let P=J,W=q.length-M,D=q.slice(J,M),f=D.map((G,Z)=>J+Z);return OJ6.default.createElement(u,{flexDirection:"row",gap:1},OJ6.default.createElement(k,{color:"suggestion"},Y),P>0&&OJ6.default.createElement(k,{dimColor:!0},shK,P),D.map((G,Z)=>{let v=f[Z]===w,V=G===V57?G:`#${cZY(G,j-Oq8)}`;return OJ6.default.createElement(k,{key:G,backgroundColor:v?"suggestion":void 0,color:v?"inverseText":void 0,bold:v}," ",V," ")}),W>0?OJ6.default.createElement(k,{dimColor:!0},thK,W,ehK):OJ6.default.createElement(k,{dimColor:!0},qSK))}var OJ6,V57="All",Oq8=2,N57=1,shK="← ",thK="→",ehK=" (tab to cycle)",qSK="(tab to cycle)",KSK=2,FZY,UZY,QZY;var zSK=y(()=>{Q5();s6();U7();OJ6=O6(D6(),1),FZY=shK.length+KSK+1,UZY=thK.length+KSK+ehK.length,QZY=qSK.length});function YSK(q){let K=z6(48),{nodes:_,onSelect:z,onCancel:Y,onFocus:$,focusNodeId:A,visibleOptionCount:O,layout:w,isDisabled:j,hideIndexes:H,isNodeExpanded:J,onExpand:M,onCollapse:X,getParentPrefix:P,getChildPrefix:W,onUpFromFirstItem:D}=q,f=w===void 0?"expanded":w,G=j===void 0?!1:j,Z=H===void 0?!1:H,T;if(K[0]===Symbol.for("react.memo_cache_sentinel"))T=new Set,K[0]=T;else T=K[0];let[v,V]=vS6.default.useState(T),E=vS6.default.useRef(!1),S=vS6.default.useRef(null),R;if(K[1]!==v||K[2]!==J)R=(J6)=>{if(J)return J(J6);return v.has(J6)},K[1]=v,K[2]=J,K[3]=R;else R=K[3];let x=R,I;if(K[4]!==x||K[5]!==_){let J6=function(X6,f6,N6){let Z6=!!X6.children&&X6.children.length>0,V6=x(X6.id);if(I.push({node:X6,depth:f6,isExpanded:V6,hasChildren:Z6,parentId:N6}),Z6&&V6&&X6.children)for(let y6 of X6.children)J6(y6,f6+1,X6.id)};I=[];for(let X6 of _)J6(X6,0);K[4]=x,K[5]=_,K[6]=I}else I=K[6];let B=I,p=nZY,C=lZY,g=P??p,F=W??C,U;if(K[7]!==F||K[8]!==g)U=(J6)=>{let X6="";if(J6.hasChildren)X6=g(J6.isExpanded);else if(J6.depth>0)X6=F(J6.depth);return X6+J6.node.label},K[7]=F,K[8]=g,K[9]=U;else U=K[9];let c=U,K6;if(K[10]!==c||K[11]!==B)K6=B.map((J6)=>({label:c(J6),description:J6.node.description,dimDescription:J6.node.dimDescription??!0,value:J6.node.id})),K[10]=c,K[11]=B,K[12]=K6;else K6=K[12];let t=K6,q6;if(K[13]!==B)q6=new Map,B.forEach((J6)=>q6.set(J6.node.id,J6.node)),K[13]=B,K[14]=q6;else q6=K[14];let e=q6,i;if(K[15]!==B)i=(J6)=>B.find((X6)=>X6.node.id===J6),K[15]=B,K[16]=i;else i=K[16];let $6=i,M6;if(K[17]!==$6||K[18]!==X||K[19]!==M)M6=(J6,X6)=>{let f6=$6(J6);if(!f6||!f6.hasChildren)return;if(X6)if(M)M(J6);else V((N6)=>new Set(N6).add(J6));else if(X)X(J6);else V((N6)=>{let Z6=new Set(N6);return Z6.delete(J6),Z6})},K[17]=$6,K[18]=X,K[19]=M,K[20]=M6;else M6=K[20];let j6=M6,G6;if(K[21]!==$6||K[22]!==A||K[23]!==G||K[24]!==e||K[25]!==$||K[26]!==j6)G6=(J6)=>{if(!A||G)return;let X6=$6(A);if(!X6)return;if(J6.key==="right"&&X6.hasChildren)J6.preventDefault(),j6(A,!0);else if(J6.key==="left"){if(X6.hasChildren&&X6.isExpanded)J6.preventDefault(),j6(A,!1);else if(X6.parentId!==void 0){if(J6.preventDefault(),E.current=!0,j6(X6.parentId,!1),$){let f6=e.get(X6.parentId);if(f6)$(f6)}}}},K[21]=$6,K[22]=A,K[23]=G,K[24]=e,K[25]=$,K[26]=j6,K[27]=G6;else G6=K[27];let w6=G6,o;if(K[28]!==e||K[29]!==z)o=(J6)=>{let X6=e.get(J6);if(!X6)return;z(X6)},K[28]=e,K[29]=z,K[30]=o;else o=K[30];let s=o,a;if(K[31]!==e||K[32]!==$)a=(J6)=>{if(E.current){E.current=!1;return}if(S.current===J6)return;if(S.current=J6,$){let X6=e.get(J6);if(X6)$(X6)}},K[31]=e,K[32]=$,K[33]=a;else a=K[33];let n=a,l;if(K[34]!==A||K[35]!==s||K[36]!==n||K[37]!==Z||K[38]!==G||K[39]!==f||K[40]!==Y||K[41]!==D||K[42]!==t||K[43]!==O)l=vS6.default.createElement(H1,{options:t,onChange:s,onFocus:n,onCancel:Y,defaultFocusValue:A,visibleOptionCount:O,layout:f,isDisabled:G,hideIndexes:Z,onUpFromFirstItem:D}),K[34]=A,K[35]=s,K[36]=n,K[37]=Z,K[38]=G,K[39]=f,K[40]=Y,K[41]=D,K[42]=t,K[43]=O,K[44]=l;else l=K[44];let A6;if(K[45]!==w6||K[46]!==l)A6=vS6.default.createElement(u,{tabIndex:0,autoFocus:!0,onKeyDown:w6},l),K[45]=w6,K[46]=l,K[47]=A6;else A6=K[47];return A6}function lZY(q){return" ▸ "}function nZY(q){return q?"▼ ":"▶ "}var vS6;var $SK=y(()=>{q8();s6();p3();vS6=O6(D6(),1)});function wSK(q,K){let _=q.replace(/\s+/g," ").trim();return T4(_,K)}function y57({before:q,match:K,after:_},z){return $8.dim(q)+z(K)+$8.dim(_)}function tZY(q,K,_){let z=q.toLowerCase().indexOf(K.toLowerCase());if(z===-1)return null;let Y=z+K.length,$=Math.max(0,z-_),A=Math.min(q.length,Y+_),O=q.slice($,z),w=q.slice(z,Y),j=q.slice(Y,A);return{before:($>0?"…":"")+O.replace(/\s+/g," ").trimStart(),match:w.trim(),after:j.replace(/\s+/g," ").trimEnd()+(A<q.length?"…":"")}}function E57(q,K,_){let{isGroupHeader:z=!1,isChild:Y=!1,forkCount:$=0}=_||{},A=z&&$>0?iZY:Y?rZY:0,O=z&&$>0?` (+${$} other ${$===1?"session":"sessions"})`:"",w=q.isSidechain?" (sidechain)":"",j=K-A-w.length-O.length;return`${wSK(Se(q),j)}${w}${O}`}function L57(q,K){let{isChild:_=!1,showProjectPath:z=!1}=K||{},Y=_?" ":"",$=KI6(q),A=z&&q.projectPath?` · ${q.projectPath}`:"";return Y+$+A}function KU8(q){let K=z6(247),{logs:_,maxHeight:z,forceWidth:Y,onCancel:$,onSelect:A,onLogsChanged:O,onLoadMore:w,initialSearchQuery:j,showAllProjects:H,onToggleAllProjects:J,onAgenticSearch:M}=q,X=z===void 0?1/0:z,P=H===void 0?!1:H,W=t1(),D=Y===void 0?W.columns:Y,f=o5($),G=CO(),Z;if(K[0]===Symbol.for("react.memo_cache_sentinel"))Z=Js(),K[0]=Z;else Z=K[0];let T=Z,v=!1,[V]=Aq(),E;if(K[1]!==V)E=sW(V),K[1]=V,K[2]=E;else E=K[2];let S=E,R;if(K[3]!==S.warning)R=(H7)=>Ni(H7,S.warning),K[3]=S.warning,K[4]=R;else R=K[4];let x=R,I=!1,[B,p]=Zq.default.useState(null),[C,g]=Zq.default.useState(!1),[F,U]=Zq.default.useState(!1),[c,K6]=Zq.default.useState(!1),t;if(K[5]===Symbol.for("react.memo_cache_sentinel"))t=r1(),K[5]=t;else t=K[5];let q6=t,[e,i]=Zq.default.useState(""),[$6,M6]=Zq.default.useState(0),j6;if(K[6]===Symbol.for("react.memo_cache_sentinel"))j6=new Set,K[6]=j6;else j6=K[6];let[G6,w6]=Zq.default.useState(j6),[o,s]=Zq.default.useState(null),[a,n]=Zq.default.useState(1),[l,A6]=Zq.default.useState("list"),[J6,X6]=Zq.default.useState(null),f6=Zq.default.useRef(null),[N6,Z6]=Zq.default.useState(0),V6;if(K[7]===Symbol.for("react.memo_cache_sentinel"))V6={status:"idle"},K[7]=V6;else V6=K[7];let[y6,T6]=Zq.default.useState(V6),[n6,o6]=Zq.default.useState(!1),I6=Zq.default.useRef(null),C6=l==="search"&&y6.status!=="searching",l6,S6,E6;if(K[8]===Symbol.for("react.memo_cache_sentinel"))l6=()=>{A6("list"),d("tengu_session_search_toggled",{enabled:!1})},S6=()=>{A6("list"),d("tengu_session_search_toggled",{enabled:!1})},E6=["n"],K[8]=l6,K[9]=S6,K[10]=E6;else l6=K[8],S6=K[9],E6=K[10];let R6=j||"",h6;if(K[11]!==R6||K[12]!==C6)h6={isActive:C6,onExit:l6,onExitUp:S6,passthroughCtrlKeys:E6,initialQuery:R6},K[11]=R6,K[12]=C6,K[13]=h6;else h6=K[13];let{query:x6,setQuery:b6,cursorOffset:Q6}=XR(h6),Y6=Zq.default.useDeferredValue(x6),[_6,F6]=Zq.default.useState(""),W6,v6;if(K[14]!==Y6)W6=()=>{if(!Y6){F6("");return}let H7=setTimeout(F6,300,Y6);return()=>clearTimeout(H7)},v6=[Y6],K[14]=Y6,K[15]=W6,K[16]=v6;else W6=K[15],v6=K[16];Zq.default.useEffect(W6,v6);let[m6,K8]=Zq.default.useState(null),[H8,M8]=Zq.default.useState(!1),X1,j1;if(K[17]===Symbol.for("react.memo_cache_sentinel"))X1=()=>{oM().then((H7)=>p(H7)),As(q6).then((H7)=>{K6(H7.length>1)})},j1=[q6],K[17]=X1,K[18]=j1;else X1=K[17],j1=K[18];Zq.default.useEffect(X1,j1);let h1=new Map(_.map($GY)),T7;T7=null;let X7;if(K[19]!==_)X7=jGY(_),K[19]=_,K[20]=X7;else X7=K[20];let Y1=X7,Y7=Y1.length>0,P7;if(K[21]!==Y7||K[22]!==Y1)P7=Y7?["All",...Y1]:[],K[21]=Y7,K[22]=Y1,K[23]=P7;else P7=K[23];let L1=P7,B7=L1.length>0&&N6<L1.length?N6:0,B1=L1[B7],j7=B1==="All"?void 0:B1,eq=Y7?1:0,AK=_;if(T){let H7;if(K[24]!==_)H7=_.filter(YGY),K[24]=_,K[25]=H7;else H7=K[25];AK=H7}if(j7!==void 0){let H7;if(K[26]!==AK||K[27]!==j7){let k7;if(K[29]!==j7)k7=(Uq)=>Uq.tag===j7,K[29]=j7,K[30]=k7;else k7=K[30];H7=AK.filter(k7),K[26]=AK,K[27]=j7,K[28]=H7}else H7=K[28];AK=H7}if(C&&B){let H7;if(K[31]!==B||K[32]!==AK){let k7;if(K[34]!==B)k7=(Uq)=>Uq.gitBranch===B,K[34]=B,K[35]=k7;else k7=K[35];H7=AK.filter(k7),K[31]=B,K[32]=AK,K[33]=H7}else H7=K[33];AK=H7}if(c&&!F){let H7;if(K[36]!==AK){let k7;if(K[38]===Symbol.for("react.memo_cache_sentinel"))k7=(Uq)=>Uq.projectPath===q6,K[38]=k7;else k7=K[38];H7=AK.filter(k7),K[36]=AK,K[37]=H7}else H7=K[37];AK=H7}let X9=AK,F3;q:{if(!x6){F3=X9;break q}let H7;if(K[39]!==X9||K[40]!==x6){let k7=x6.toLowerCase();H7=X9.filter((Uq)=>{let b_=Se(Uq).toLowerCase(),mz=(Uq.gitBranch||"").toLowerCase(),x_=(Uq.tag||"").toLowerCase(),H4=Uq.prNumber?`pr #${Uq.prNumber} ${Uq.prRepository||""}`.toLowerCase():"";return b_.includes(k7)||mz.includes(k7)||x_.includes(k7)||H4.includes(k7)}),K[39]=X9,K[40]=x6,K[41]=H7}else H7=K[41];F3=H7}let xz=F3,S3,P9;if(K[42]!==_6||K[43]!==Y6)S3=()=>{},P9=[Y6,_6,!1],K[42]=_6,K[43]=Y6,K[44]=S3,K[45]=P9;else S3=K[44],P9=K[45];Zq.default.useEffect(S3,P9);let E9,u$;if(K[46]!==_6)E9=()=>{K8(null),M8(!1);return},u$=[_6,null,!1],K[46]=_6,K[47]=E9,K[48]=u$;else E9=K[47],u$=K[48];Zq.default.useEffect(E9,u$);let S4,Mz;if(K[49]!==_6||K[50]!==m6||K[51]!==xz){if(Mz=new Map,S4=xz,m6&&_6&&m6.query===_6){for(let b_ of m6.results)if(b_.searchableText){let mz=tZY(b_.searchableText,_6,sZY);if(mz)Mz.set(b_.log,mz)}let H7;if(K[54]!==S4)H7=new Set(S4.map(qGY)),K[54]=S4,K[55]=H7;else H7=K[55];let k7=H7,Uq;if(K[56]!==m6.results||K[57]!==S4||K[58]!==k7){let b_;if(K[60]!==k7)b_=(x_)=>!k7.has(x_.messages[0]?.uuid),K[60]=k7,K[61]=b_;else b_=K[61];let mz=m6.results.map(eZY).filter(b_);Uq=[...S4,...mz],K[56]=m6.results,K[57]=S4,K[58]=k7,K[59]=Uq}else Uq=K[59];S4=Uq}K[49]=_6,K[50]=m6,K[51]=xz,K[52]=S4,K[53]=Mz}else S4=K[52],Mz=K[53];let j2;if(K[62]!==S4||K[63]!==Mz)j2={filteredLogs:S4,snippets:Mz},K[62]=S4,K[63]=Mz,K[64]=j2;else j2=K[64];let{filteredLogs:wA,snippets:s_}=j2,N5;q:{if(y6.status==="results"&&y6.results.length>0){N5=y6.results;break q}N5=wA}let qK=N5,Xq=Math.max(30,D-4),H2;q:{if(!T){let k7;if(K[65]===Symbol.for("react.memo_cache_sentinel"))k7=[],K[65]=k7;else k7=K[65];H2=k7;break q}let H7;if(K[66]!==qK||K[67]!==x||K[68]!==Xq||K[69]!==P||K[70]!==s_){let k7=wGY(qK);H7=Array.from(k7.entries()).map((Uq)=>{let[b_,mz]=Uq,x_=mz[0],H4=qK.indexOf(x_),sX=s_.get(x_),P5=sX?y57(sX,x):null;if(mz.length===1){let aO=L57(x_,{showProjectPath:P});return{id:`log:${b_}:0`,value:{log:x_,indexInFiltered:H4},label:E57(x_,Xq),description:P5?`${aO}
6259
6259
  ${P5}`:aO,dimDescription:!0}}let xq=mz.length-1,J4=mz.slice(1).map((aO,jW)=>{let kk=qK.indexOf(aO),gJ=s_.get(aO),GT=gJ?y57(gJ,x):null,TT=L57(aO,{isChild:!0,showProjectPath:P});return{id:`log:${b_}:${jW+1}`,value:{log:aO,indexInFiltered:kk},label:E57(aO,Xq,{isChild:!0}),description:GT?`${TT}
6260
6260
  ${GT}`:TT,dimDescription:!0}}),Xz=L57(x_,{showProjectPath:P});return{id:`group:${b_}`,value:{log:x_,indexInFiltered:H4},label:E57(x_,Xq,{isGroupHeader:!0,forkCount:xq}),description:P5?`${Xz}
package/dist/coder.js CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- var at=Object.create;var he=Object.defineProperty;var ct=Object.getOwnPropertyDescriptor;var lt=Object.getOwnPropertyNames;var ht=Object.getPrototypeOf,ut=Object.prototype.hasOwnProperty;var m=(d,e)=>()=>(e||d((e={exports:{}}).exports,e),e.exports);var dt=(d,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of lt(e))!ut.call(d,o)&&o!==t&&he(d,o,{get:()=>e[o],enumerable:!(s=ct(e,o))||s.enumerable});return d};var gt=(d,e,t)=>(t=d!=null?at(ht(d)):{},dt(e||!d||!d.__esModule?he(t,"default",{value:d,enumerable:!0}):t,d));var de=m((rs,ue)=>{var ft=require("http"),B=class{constructor(e={}){this.port=e.port||9380,this.timeout=e.timeout||300*1e3,this.server=null,this.timeoutId=null}validateTokenFormat(e){if(!e||typeof e!="string")return!1;let t=e.split(".");if(t.length!==2)return!1;let[s,o]=t;return s&&s.length>0&&o&&o.length>0}async waitForCallback(e){return new Promise((t,s)=>{let o=!1;this.server=ft.createServer((n,i)=>{let a=new URL(n.url,`http://localhost:${this.port}`);if(a.pathname==="/callback"){let r=a.searchParams.get("token"),c=a.searchParams.get("state"),l=a.searchParams.get("error");if(l){i.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),i.end(`
2
+ var at=Object.create;var he=Object.defineProperty;var ct=Object.getOwnPropertyDescriptor;var lt=Object.getOwnPropertyNames;var ht=Object.getPrototypeOf,ut=Object.prototype.hasOwnProperty;var m=(d,e)=>()=>(e||d((e={exports:{}}).exports,e),e.exports);var dt=(d,e,t,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of lt(e))!ut.call(d,o)&&o!==t&&he(d,o,{get:()=>e[o],enumerable:!(s=ct(e,o))||s.enumerable});return d};var gt=(d,e,t)=>(t=d!=null?at(ht(d)):{},dt(e||!d||!d.__esModule?he(t,"default",{value:d,enumerable:!0}):t,d));var de=m((rs,ue)=>{var ft=require("http"),L=class{constructor(e={}){this.port=e.port||9380,this.timeout=e.timeout||300*1e3,this.server=null,this.timeoutId=null}validateTokenFormat(e){if(!e||typeof e!="string")return!1;let t=e.split(".");if(t.length!==2)return!1;let[s,o]=t;return s&&s.length>0&&o&&o.length>0}async waitForCallback(e){return new Promise((t,s)=>{let o=!1;this.server=ft.createServer((n,i)=>{let a=new URL(n.url,`http://localhost:${this.port}`);if(a.pathname==="/callback"){let r=a.searchParams.get("token"),c=a.searchParams.get("state"),l=a.searchParams.get("error");if(l){i.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),i.end(`
3
3
  <!DOCTYPE html>
4
4
  <html>
5
5
  <head>
@@ -124,7 +124,7 @@ var at=Object.create;var he=Object.defineProperty;var ct=Object.getOwnPropertyDe
124
124
  </script>
125
125
  </body>
126
126
  </html>
127
- `),o||(o=!0,this.cleanup(),t({ak:h,sk:u}))}else i.writeHead(404,{"Content-Type":"text/plain"}),i.end("Not Found")}),this.server.on("error",n=>{if(n.code==="EADDRINUSE"){if(this.port++,this.port>9390){o||(o=!0,s(new Error("Could not find available port for OAuth callback server")));return}this.server.close(),this.server.listen(this.port)}else o||(o=!0,this.cleanup(),s(n))}),this.server.listen(this.port,()=>{process.env.CODEV_DEBUG&&console.log(`OAuth callback server listening on port ${this.port}`)}),this.timeoutId=setTimeout(()=>{o||(o=!0,this.cleanup(),s(new Error("OAuth login timeout - no response received within 5 minutes")))},this.timeout)})}getCallbackUrl(){return`http://localhost:${this.port}/callback`}cleanup(){this.timeoutId&&(clearTimeout(this.timeoutId),this.timeoutId=null),this.server&&(this.server.close(),this.server=null)}};ue.exports=B});var fe=m((is,ge)=>{var mt=require("crypto"),pt=de(),L=class{constructor(e={}){this.baseUrl=e.baseUrl||"https://makecoder.com",this.callbackServer=null}generateState(){return mt.randomBytes(16).toString("hex")}buildAuthorizationUrl(e,t){let s=new URLSearchParams({redirect_uri:e,state:t,response_type:"token"});return`${this.baseUrl}/oauth/authorize?${s.toString()}`}async login(){let e=this.generateState();this.callbackServer=new pt;try{let t=this.callbackServer.getCallbackUrl(),s=this.buildAuthorizationUrl(t,e);console.log(`
127
+ `),o||(o=!0,this.cleanup(),t({ak:h,sk:u}))}else i.writeHead(404,{"Content-Type":"text/plain"}),i.end("Not Found")}),this.server.on("error",n=>{if(n.code==="EADDRINUSE"){if(this.port++,this.port>9390){o||(o=!0,s(new Error("Could not find available port for OAuth callback server")));return}this.server.close(),this.server.listen(this.port)}else o||(o=!0,this.cleanup(),s(n))}),this.server.listen(this.port,()=>{process.env.CODEV_DEBUG&&console.log(`OAuth callback server listening on port ${this.port}`)}),this.timeoutId=setTimeout(()=>{o||(o=!0,this.cleanup(),s(new Error("OAuth login timeout - no response received within 5 minutes")))},this.timeout)})}getCallbackUrl(){return`http://localhost:${this.port}/callback`}cleanup(){this.timeoutId&&(clearTimeout(this.timeoutId),this.timeoutId=null),this.server&&(this.server.close(),this.server=null)}};ue.exports=L});var fe=m((is,ge)=>{var mt=require("crypto"),pt=de(),R=class{constructor(e={}){this.baseUrl=e.baseUrl||"https://makecoder.com",this.callbackServer=null}generateState(){return mt.randomBytes(16).toString("hex")}buildAuthorizationUrl(e,t){let s=new URLSearchParams({redirect_uri:e,state:t,response_type:"token"});return`${this.baseUrl}/oauth/authorize?${s.toString()}`}async login(){let e=this.generateState();this.callbackServer=new pt;try{let t=this.callbackServer.getCallbackUrl(),s=this.buildAuthorizationUrl(t,e);console.log(`
128
128
  \u{1F510} \u5F00\u59CB OAuth \u767B\u5F55\u6D41\u7A0B...
129
129
  `),console.log(`\u{1F4CB} \u8BF7\u5728\u6D4F\u89C8\u5668\u4E2D\u5B8C\u6210\u767B\u5F55
130
130
  `),console.log(`\u{1F310} \u6388\u6743\u5730\u5740: ${s}
@@ -132,8 +132,8 @@ var at=Object.create;var he=Object.defineProperty;var ct=Object.getOwnPropertyDe
132
132
  `);try{let n=(await import("open")).default;await n(s)}catch(n){console.warn("\u26A0\uFE0F \u65E0\u6CD5\u81EA\u52A8\u6253\u5F00\u6D4F\u89C8\u5668,\u8BF7\u624B\u52A8\u590D\u5236\u4E0A\u8FF0\u94FE\u63A5\u5230\u6D4F\u89C8\u5668\u6253\u5F00"),process.env.CODEV_DEBUG&&console.error("Browser open error:",n)}let o=await this.callbackServer.waitForCallback(e);return console.log(`\u2705 API Key \u83B7\u53D6\u6210\u529F!
133
133
  `),o}catch(t){throw console.error(`
134
134
  \u274C OAuth \u767B\u5F55\u5931\u8D25: ${t.message}
135
- `),t}finally{this.callbackServer&&this.callbackServer.cleanup()}}cleanup(){this.callbackServer&&this.callbackServer.cleanup()}};ge.exports=L});var we=m((as,pe)=>{var _=require("fs"),me=require("path"),wt=require("os"),St=require("readline"),yt=fe(),R=class{constructor(){this.configPath=me.join(wt.homedir(),".coder","config.json"),this.defaultConfig={agent:"claude",auth:{ak:null,sk:null}}}async promptForAKSK(){let e=St.createInterface({input:process.stdin,output:process.stdout});return new Promise((t,s)=>{console.log(`
136
- \u{1F510} \u8BF7\u8F93\u5165\u60A8\u7684 API Key\uFF1A`),e.question("\u8BF7\u8F93\u5165 API Key: ",o=>{let n=o.indexOf(".");if(n===-1||n===0||n===o.length-1){e.close(),s(new Error("\u683C\u5F0F\u9519\u8BEF"));return}let i=o.substring(0,n),a=o.substring(n+1);if(!i.trim()||!a.trim()){e.close(),s(new Error("\u683C\u5F0F\u9519\u8BEF"));return}e.close(),t({ak:i.trim(),sk:a.trim()})})})}ensureConfig(){let e=me.dirname(this.configPath);try{_.existsSync(e)||_.mkdirSync(e,{recursive:!0}),_.existsSync(this.configPath)||_.writeFileSync(this.configPath,JSON.stringify(this.defaultConfig,null,2))}catch(t){return console.warn(`Warning: Could not create config file: ${t.message}`),this.defaultConfig}}loadConfig(){this.ensureConfig();try{let e=_.readFileSync(this.configPath,"utf8");return JSON.parse(e)}catch(e){return console.warn(`Warning: Could not load config, using defaults: ${e.message}`),this.defaultConfig}}async parse(e=process.argv.slice(2)){let t=this.loadConfig(),s={agent:t.agent||"claude",remainingArgs:[]},o=0,n=!1;if(e.length>0&&["claude","gemini","codex"].includes(e[0])?(s.agent=e[0],n=!0,o=1):e.length>0&&e[0]==="pub"?(s.command="pub",o=1):e.length>0&&e[0]==="tunnel"?(s.command="tunnel",o=1):e.length>0&&e[0]==="login"&&(s.command="login",o=1),s.command==="tunnel"){let r={port:null,host:null,name:null,localHost:null,allowedPaths:[],printRequests:!1};for(;o<e.length;){let c=e[o];if(c==="--port"||c==="-p"){if(o+1>=e.length)throw new Error("--port requires a port number");if(r.port=parseInt(e[o+1],10),isNaN(r.port))throw new Error(`Invalid port number: ${e[o+1]}`);o+=2}else if(c==="--host"){if(o+1>=e.length)throw new Error("--host requires a URL");r.host=e[o+1],o+=2}else if(c==="--name"||c==="-n"){if(o+1>=e.length)throw new Error("--name requires a service name");r.name=e[o+1],o+=2}else if(c==="--local-host"){if(o+1>=e.length)throw new Error("--local-host requires a hostname");r.localHost=e[o+1],o+=2}else if(c==="--path"){if(o+1>=e.length)throw new Error("--path requires a URL path (e.g. /claw/wecom)");r.allowedPaths.push(e[o+1]),o+=2}else if(c==="--print-requests")r.printRequests=!0,o+=1;else if(c==="--help"||c==="-h")s.tunnelHelp=!0,o+=1;else throw new Error(`Unknown tunnel option: ${c}`)}if(!s.tunnelHelp&&!r.port)throw new Error("--port is required for tunnel command. Usage: coder tunnel --port <port>");s.tunnelArgs=r}for(;o<e.length;){let r=e[o];if(r==="--agent"){if(n)throw new Error(`Cannot use both subcommand '${s.agent}' and --agent flag. Please use only one method to specify the agent.`);if(o+1>=e.length)throw new Error("--agent requires a value (claude, gemini, or codex)");let c=e[o+1];if(!["claude","gemini","codex"].includes(c))throw new Error(`Invalid agent: ${c}. Must be 'claude', 'gemini', or 'codex'`);s.agent=c,o+=2}else if(r==="--apikey"||r==="--aksk")if(o+1>=e.length||e[o+1].startsWith("--"))s.needAKSKPrompt=!0,o+=1;else{let c=e[o+1],l=c.indexOf(".");if(l===-1)throw new Error("API Key Format error");s.auth_ak=c.substring(0,l),s.auth_sk=c.substring(l+1),o+=2}else if(r==="--save-auth")s.saveAuth=!0,o+=1;else if(r==="--name")o+1>=e.length||e[o+1].startsWith("--")?o+=1:(s.pubName=e[o+1],o+=2);else if(r==="--clear-auth")s.clearAuth=!0,o+=1;else if(r==="--allow-clone")s.allowClone=!0,o+=1;else{s.remainingArgs=e.slice(o);break}}if(s.needAKSKPrompt)try{let{ak:r,sk:c}=await this.promptForAKSK();s.auth_ak=r,s.auth_sk=c,delete s.needAKSKPrompt}catch(r){console.error(`\u274C ${r.message}`),process.exit(1)}if(s.command!=="login"&&(!s.auth_ak&&t.auth&&t.auth.ak&&(s.auth_ak=t.auth.ak),!s.auth_sk&&t.auth&&t.auth.sk&&(s.auth_sk=t.auth.sk),!s.auth_ak&&process.env.CODEV_AUTH_AK&&(s.auth_ak=process.env.CODEV_AUTH_AK),!s.auth_sk&&process.env.CODEV_AUTH_SK&&(s.auth_sk=process.env.CODEV_AUTH_SK)),s.saveAuth&&s.auth_ak&&s.auth_sk){let r=this.saveAuthToConfig(s.auth_ak,s.auth_sk);console.log(r?"\u2705 API Key \u5DF2\u4FDD\u5B58\u5230\u914D\u7F6E\u6587\u4EF6":"\u274C \u4FDD\u5B58 API Key \u5931\u8D25"),process.exit(0)}if(s.clearAuth){let r=this.clearAuthFromConfig();console.log(r?"\u2705 API Key \u5DF2\u4ECE\u914D\u7F6E\u6587\u4EF6\u6E05\u9664":"\u274C \u6E05\u9664 API Key \u5931\u8D25"),process.exit(0)}let i=s.remainingArgs.includes("--version")||s.remainingArgs.includes("-v"),a=s.remainingArgs.includes("--help")||s.remainingArgs.includes("-h");if(s.command!=="login"&&!i&&!a&&(!s.auth_ak||!s.auth_sk))try{console.log(`\u274C \u7F3A\u5C11\u5FC5\u8981\u7684 API Key
135
+ `),t}finally{this.callbackServer&&this.callbackServer.cleanup()}}cleanup(){this.callbackServer&&this.callbackServer.cleanup()}};ge.exports=R});var we=m((as,pe)=>{var b=require("fs"),me=require("path"),wt=require("os"),St=require("readline"),yt=fe(),N=class{constructor(){this.configPath=me.join(wt.homedir(),".coder","config.json"),this.defaultConfig={agent:"claude",auth:{ak:null,sk:null}}}async promptForAKSK(){let e=St.createInterface({input:process.stdin,output:process.stdout});return new Promise((t,s)=>{console.log(`
136
+ \u{1F510} \u8BF7\u8F93\u5165\u60A8\u7684 API Key\uFF1A`),e.question("\u8BF7\u8F93\u5165 API Key: ",o=>{let n=o.indexOf(".");if(n===-1||n===0||n===o.length-1){e.close(),s(new Error("\u683C\u5F0F\u9519\u8BEF"));return}let i=o.substring(0,n),a=o.substring(n+1);if(!i.trim()||!a.trim()){e.close(),s(new Error("\u683C\u5F0F\u9519\u8BEF"));return}e.close(),t({ak:i.trim(),sk:a.trim()})})})}ensureConfig(){let e=me.dirname(this.configPath);try{b.existsSync(e)||b.mkdirSync(e,{recursive:!0}),b.existsSync(this.configPath)||b.writeFileSync(this.configPath,JSON.stringify(this.defaultConfig,null,2))}catch(t){return console.warn(`Warning: Could not create config file: ${t.message}`),this.defaultConfig}}loadConfig(){this.ensureConfig();try{let e=b.readFileSync(this.configPath,"utf8");return JSON.parse(e)}catch(e){return console.warn(`Warning: Could not load config, using defaults: ${e.message}`),this.defaultConfig}}async parse(e=process.argv.slice(2)){let t=this.loadConfig(),s={agent:t.agent||"claude",remainingArgs:[]},o=0,n=!1;if(e.length>0&&["claude","gemini","codex"].includes(e[0])?(s.agent=e[0],n=!0,o=1):e.length>0&&e[0]==="pub"?(s.command="pub",o=1):e.length>0&&e[0]==="tunnel"?(s.command="tunnel",o=1):e.length>0&&e[0]==="login"&&(s.command="login",o=1),s.command==="tunnel"){let r={port:null,host:null,name:null,localHost:null,allowedPaths:[],printRequests:!1};for(;o<e.length;){let c=e[o];if(c==="--port"||c==="-p"){if(o+1>=e.length)throw new Error("--port requires a port number");if(r.port=parseInt(e[o+1],10),isNaN(r.port))throw new Error(`Invalid port number: ${e[o+1]}`);o+=2}else if(c==="--host"){if(o+1>=e.length)throw new Error("--host requires a URL");r.host=e[o+1],o+=2}else if(c==="--name"||c==="-n"){if(o+1>=e.length)throw new Error("--name requires a service name");r.name=e[o+1],o+=2}else if(c==="--local-host"){if(o+1>=e.length)throw new Error("--local-host requires a hostname");r.localHost=e[o+1],o+=2}else if(c==="--path"){if(o+1>=e.length)throw new Error("--path requires a URL path (e.g. /claw/wecom)");r.allowedPaths.push(e[o+1]),o+=2}else if(c==="--print-requests")r.printRequests=!0,o+=1;else if(c==="--help"||c==="-h")s.tunnelHelp=!0,o+=1;else throw new Error(`Unknown tunnel option: ${c}`)}if(!s.tunnelHelp&&!r.port)throw new Error("--port is required for tunnel command. Usage: coder tunnel --port <port>");s.tunnelArgs=r}for(;o<e.length;){let r=e[o];if(r==="--agent"){if(n)throw new Error(`Cannot use both subcommand '${s.agent}' and --agent flag. Please use only one method to specify the agent.`);if(o+1>=e.length)throw new Error("--agent requires a value (claude, gemini, or codex)");let c=e[o+1];if(!["claude","gemini","codex"].includes(c))throw new Error(`Invalid agent: ${c}. Must be 'claude', 'gemini', or 'codex'`);s.agent=c,o+=2}else if(r==="--apikey"||r==="--aksk")if(o+1>=e.length||e[o+1].startsWith("--"))s.needAKSKPrompt=!0,o+=1;else{let c=e[o+1],l=c.indexOf(".");if(l===-1)throw new Error("API Key Format error");s.auth_ak=c.substring(0,l),s.auth_sk=c.substring(l+1),o+=2}else if(r==="--save-auth")s.saveAuth=!0,o+=1;else if(r==="--name")o+1>=e.length||e[o+1].startsWith("--")?o+=1:(s.pubName=e[o+1],o+=2);else if(r==="--clear-auth")s.clearAuth=!0,o+=1;else if(r==="--allow-clone")s.allowClone=!0,o+=1;else{s.remainingArgs=e.slice(o);break}}if(s.needAKSKPrompt)try{let{ak:r,sk:c}=await this.promptForAKSK();s.auth_ak=r,s.auth_sk=c,delete s.needAKSKPrompt}catch(r){console.error(`\u274C ${r.message}`),process.exit(1)}if(s.command!=="login"&&(!s.auth_ak&&t.auth&&t.auth.ak&&(s.auth_ak=t.auth.ak),!s.auth_sk&&t.auth&&t.auth.sk&&(s.auth_sk=t.auth.sk),!s.auth_ak&&process.env.CODEV_AUTH_AK&&(s.auth_ak=process.env.CODEV_AUTH_AK),!s.auth_sk&&process.env.CODEV_AUTH_SK&&(s.auth_sk=process.env.CODEV_AUTH_SK)),s.saveAuth&&s.auth_ak&&s.auth_sk){let r=this.saveAuthToConfig(s.auth_ak,s.auth_sk);console.log(r?"\u2705 API Key \u5DF2\u4FDD\u5B58\u5230\u914D\u7F6E\u6587\u4EF6":"\u274C \u4FDD\u5B58 API Key \u5931\u8D25"),process.exit(0)}if(s.clearAuth){let r=this.clearAuthFromConfig();console.log(r?"\u2705 API Key \u5DF2\u4ECE\u914D\u7F6E\u6587\u4EF6\u6E05\u9664":"\u274C \u6E05\u9664 API Key \u5931\u8D25"),process.exit(0)}let i=s.remainingArgs.includes("--version")||s.remainingArgs.includes("-v"),a=s.remainingArgs.includes("--help")||s.remainingArgs.includes("-h");if(s.command!=="login"&&!i&&!a&&(!s.auth_ak||!s.auth_sk))try{console.log(`\u274C \u7F3A\u5C11\u5FC5\u8981\u7684 API Key
137
137
  `),console.log(`\u{1F510} \u6B63\u5728\u542F\u52A8\u767B\u5F55\u6D41\u7A0B...
138
138
  `);let c=await new yt({baseUrl:"https://makecoder.com",apiBaseUrl:s.codevServer||"https://makecoder.com/bigapis/codev/v1"}).login();s.auth_ak=c.ak,s.auth_sk=c.sk;let l=this.saveAuthToConfig(c.ak,c.sk);console.log(l?`\u2705 API Key \u5DF2\u81EA\u52A8\u4FDD\u5B58\u5230\u914D\u7F6E\u6587\u4EF6
139
139
  `:`\u26A0\uFE0F API Key \u83B7\u53D6\u6210\u529F\u4F46\u672A\u80FD\u4FDD\u5B58\u5230\u914D\u7F6E\u6587\u4EF6,\u4E0B\u6B21\u4F7F\u7528\u9700\u8981\u91CD\u65B0\u767B\u5F55
@@ -145,7 +145,7 @@ var at=Object.create;var he=Object.defineProperty;var ct=Object.getOwnPropertyDe
145
145
  \u{1F680} \u624B\u52A8\u4F7F\u7528\u65B9\u5F0F\uFF1A
146
146
  coder --apikey <\u4F60\u7684API Key>
147
147
  \u6216\u8005\uFF1Acoder --apikey \uFF08\u7136\u540E\u5B89\u5168\u8F93\u5165\uFF09
148
- `),process.exit(1)}return process.env.CODEV_SERVER?s.codevServer=process.env.CODEV_SERVER:t.codevServer?s.codevServer=t.codevServer:s.codevServer="https://makecoder.com/bigapis/codev/v1",s}saveAuthToConfig(e,t){let s=this.loadConfig();s.auth||(s.auth={}),s.auth.ak=e,s.auth.sk=t;try{return _.writeFileSync(this.configPath,JSON.stringify(s,null,2)),!0}catch(o){return console.warn(`Warning: Could not save auth to config: ${o.message}`),!1}}clearAuthFromConfig(){let e=this.loadConfig();e.auth&&(e.auth.ak=null,e.auth.sk=null);try{return _.writeFileSync(this.configPath,JSON.stringify(e,null,2)),!0}catch(t){return console.warn(`Warning: Could not clear auth from config: ${t.message}`),!1}}showHelp(){console.log(`
148
+ `),process.exit(1)}return process.env.CODEV_SERVER?s.codevServer=process.env.CODEV_SERVER:t.codevServer?s.codevServer=t.codevServer:s.codevServer="https://makecoder.com/bigapis/codev/v1",s}saveAuthToConfig(e,t){let s=this.loadConfig();s.auth||(s.auth={}),s.auth.ak=e,s.auth.sk=t;try{return b.writeFileSync(this.configPath,JSON.stringify(s,null,2)),!0}catch(o){return console.warn(`Warning: Could not save auth to config: ${o.message}`),!1}}clearAuthFromConfig(){let e=this.loadConfig();e.auth&&(e.auth.ak=null,e.auth.sk=null);try{return b.writeFileSync(this.configPath,JSON.stringify(e,null,2)),!0}catch(t){return console.warn(`Warning: Could not clear auth from config: ${t.message}`),!1}}showHelp(){console.log(`
149
149
  Coder AI Agent
150
150
 
151
151
  USAGE:
@@ -197,17 +197,21 @@ CONFIG:
197
197
  Default configuration is stored in ~/.coder/config.json
198
198
  Command line --agent overrides the default but doesn't modify the file.
199
199
  Auth credentials can be stored in config file under "auth" section.
200
- `)}};pe.exports=R});var U=m((cs,Se)=>{function Ct(d=process.argv.slice(2)){return d.includes("--print")||d.includes("-p")}Se.exports={isPrintMode:Ct}});var F=m((ls,Ee)=>{var{spawn:Et}=require("child_process"),T=require("path"),b=require("fs"),ye=require("os"),{isPrintMode:Ce}=U(),N=class{constructor(e){this.config=e}resloveSettingFilePath(e){return T.join(e,this.config.configDir,"settings.json")}readModelFromSettingsFile(e){try{let t=this.resloveSettingFilePath(e);if(b.existsSync(t)){let s=b.readFileSync(t,"utf8"),o=JSON.parse(s);if(o&&o.model)return o.model}}catch(t){console.warn(e,t.message)}return null}getCurrentModel(e){let t=e.findIndex(o=>o==="--model");if(t!==-1&&t+1<e.length)return e[t+1];let s=this.readModelFromSettingsFile(process.cwd());return s||(s=this.readModelFromSettingsFile(ye.homedir()),s)?s:this.config.defaultModel}async ensureConfig(e=0){let t=T.join(ye.homedir(),this.config.configDir,this.config.configFile),s=T.dirname(t);if(!b.existsSync(t)){let o=this.config.defaultConfig||{};try{b.existsSync(s)||b.mkdirSync(s,{recursive:!0}),b.writeFileSync(t,JSON.stringify(o,null,2)),e>0&&await new Promise(n=>setTimeout(n,e))}catch(n){console.warn(`Failed to create ${this.config.configFile}: ${n.message}`)}}}findExecutablePath(){let e=T.dirname(require.main.filename);for(let t of this.config.executablePaths){let s=T.resolve(e,t);if(b.existsSync(s))return s}throw new Error(`Could not find executable in any of the configured paths: ${this.config.executablePaths.join(", ")}`)}handleChildMessages(e){process.env.CODEV_DEBUG&&console.log("Child process message handler initialized"),e.connected&&(e.on("message",t=>{this.onChildMessage(t)}),e.on("exit",async(t,s)=>{try{await this.handleChildProcessExit(t,s)}catch(o){console.error("Error in handleChildProcessExit:",o.message)}}),e.on("error",t=>{this.handleChildProcessError(t)}))}onChildMessage(e){process.env.CODEV_DEBUG&&console.log("Received IPC message from child:",e)}handleChildProcessExit(e,t){}handleChildProcessError(e){}async launch(e={}){let{remainingArgs:t=[],codevServer:s,auth_ak:o=null,auth_sk:n=null}=e;try{let i=this.getCurrentModel(t);Ce(t)||console.log(`model:\x1B[90m\x1B[3m ${i} (use /model to switch models) \x1B[0m`),await this.ensureConfig(1e3);let a=this.findExecutablePath();return process.env.CODEV_DEBUG&&console.log(`executablePath: ${a}`),new Promise((r,c)=>{let l={...process.env,...this.config.environmentVariables(s)};o&&(l.CODEV_AUTH_AK=o),n&&(l.CODEV_AUTH_SK=n);let h=["--no-warnings"];process.env.CODEV_INSPECT_BRK==="True"&&h.push("--inspect-brk"),h.push(a,...t);let u=Et("node",h,{env:l,stdio:["inherit","inherit","inherit","ipc"]});this.handleChildMessages(u),u.on("error",g=>{console.error(`Failed to start: ${g.message}`),c(g)}),u.on("exit",async(g,S)=>{Ce(t)||S&&console.log(`terminated by signal: ${S}`)}),process.on("SIGINT",async()=>{console.log(`
200
+ `)}};pe.exports=N});var U=m((cs,Se)=>{function Ct(d=process.argv.slice(2)){return d.includes("--print")||d.includes("-p")}Se.exports={isPrintMode:Ct}});var F=m((ls,Ee)=>{var{spawn:Et}=require("child_process"),T=require("path"),I=require("fs"),ye=require("os"),{isPrintMode:Ce}=U(),H=class{constructor(e){this.config=e}resloveSettingFilePath(e){return T.join(e,this.config.configDir,"settings.json")}readModelFromSettingsFile(e){try{let t=this.resloveSettingFilePath(e);if(I.existsSync(t)){let s=I.readFileSync(t,"utf8"),o=JSON.parse(s);if(o&&o.model)return o.model}}catch(t){console.warn(e,t.message)}return null}getCurrentModel(e){let t=e.findIndex(o=>o==="--model");if(t!==-1&&t+1<e.length)return e[t+1];let s=this.readModelFromSettingsFile(process.cwd());return s||(s=this.readModelFromSettingsFile(ye.homedir()),s)?s:this.config.defaultModel}async ensureConfig(e=0){let t=T.join(ye.homedir(),this.config.configDir,this.config.configFile),s=T.dirname(t);if(!I.existsSync(t)){let o=this.config.defaultConfig||{};try{I.existsSync(s)||I.mkdirSync(s,{recursive:!0}),I.writeFileSync(t,JSON.stringify(o,null,2)),e>0&&await new Promise(n=>setTimeout(n,e))}catch(n){console.warn(`Failed to create ${this.config.configFile}: ${n.message}`)}}}findExecutablePath(){let e=T.dirname(require.main.filename);for(let t of this.config.executablePaths){let s=T.resolve(e,t);if(I.existsSync(s))return s}throw new Error(`Could not find executable in any of the configured paths: ${this.config.executablePaths.join(", ")}`)}handleChildMessages(e){process.env.CODEV_DEBUG&&console.log("Child process message handler initialized"),e.connected&&(e.on("message",t=>{this.onChildMessage(t)}),e.on("exit",async(t,s)=>{try{await this.handleChildProcessExit(t,s)}catch(o){console.error("Error in handleChildProcessExit:",o.message)}}),e.on("error",t=>{this.handleChildProcessError(t)}))}onChildMessage(e){process.env.CODEV_DEBUG&&console.log("Received IPC message from child:",e)}handleChildProcessExit(e,t){}handleChildProcessError(e){}async launch(e={}){let{remainingArgs:t=[],codevServer:s,auth_ak:o=null,auth_sk:n=null}=e;try{let i=this.getCurrentModel(t);Ce(t)||console.log(`model:\x1B[90m\x1B[3m ${i} (use /model to switch models) \x1B[0m`),await this.ensureConfig(1e3);let a=this.findExecutablePath();return process.env.CODEV_DEBUG&&console.log(`executablePath: ${a}`),new Promise((r,c)=>{let l={...process.env,...this.config.environmentVariables(s)};o&&(l.CODEV_AUTH_AK=o),n&&(l.CODEV_AUTH_SK=n);let h=["--no-warnings"];process.env.CODEV_INSPECT_BRK==="True"&&h.push("--inspect-brk"),h.push(a,...t);let u=Et("node",h,{env:l,stdio:["inherit","inherit","inherit","ipc"]});this.handleChildMessages(u),u.on("error",g=>{console.error(`Failed to start: ${g.message}`),c(g)}),u.on("exit",async(g,S)=>{Ce(t)||S&&console.log(`terminated by signal: ${S}`)}),process.on("SIGINT",async()=>{console.log(`
201
201
  Terminating ...`),u.kill("SIGTERM"),setTimeout(()=>{u.killed||u.kill("SIGKILL")},8e3)}),process.on("SIGTERM",async()=>{console.log(`
202
- Terminating ...`),u.kill("SIGTERM"),setTimeout(()=>{u.killed||u.kill("SIGKILL")},8e3)})})}catch(i){throw i}}};Ee.exports=N});var xe=m((hs,ve)=>{var f=process.env.CODEV_DEBUG==="True",H=class{constructor(e={}){this.queue=[],this.processing=!1,this.shuttingDown=!1,this.shutdownTimeout=e.shutdownTimeout||5e3,this.maxRetries=e.maxRetries||3,this.retryDelay=e.retryDelay||1e3,this.onProcessMessage=e.onProcessMessage||null,this.shutdownPromise=null,this.currentlyProcessing=null}enqueue(e){if(this.shuttingDown)return f&&console.log("Queue is shutting down, skipping new messages"),null;let t={id:Date.now()+Math.random(),data:e,timestamp:Date.now(),retryCount:0,processing:!1};return this.queue.push(t),f&&console.log(`Message enqueued, queue length: ${this.queue.length}`),this.processQueue(),t.id}dequeue(){let e=this.queue.shift();return f&&e&&console.log(`Message dequeued, remaining queue length: ${this.queue.length}`),e}removeById(e){let t=this.queue.findIndex(s=>s.id===e);return t>-1?(this.queue.splice(t,1),f&&console.log(`Message ${e} removed from queue`),!0):!1}async processQueue(){if(!(this.processing||this.queue.length===0)){this.processing=!0;try{for(;this.queue.length>0&&!this.shuttingDown;){let e=this.queue[0];e.processing=!0;try{this.onProcessMessage&&await this.onProcessMessage(e),this.dequeue()}catch(t){if(f&&console.error(`Failed to process message: ${t.message}`),e.retryCount++,f&&console.log("Start Retry:",e.retryCount,"times..."),e.retryCount>=this.maxRetries)f&&console.error("Message exceeded max retries, removing from queue"),this.dequeue();else{e.processing=!1;let s=this.shuttingDown?100:this.retryDelay*e.retryCount;await new Promise(o=>setTimeout(o,s))}}}}finally{this.processing=!1}}}getQueueSize(){return this.queue.length}clear(){this.queue=[],f&&console.log("Message queue cleared")}setMessageProcessor(e){this.onProcessMessage=e}async waitForProcessingMessages(e=5e3){let t=this.queue.filter(o=>o.processing);if(t.length===0)return;f&&console.log(`Waiting for ${t.length} processing messages to complete (timeout: ${e}ms)`);let s=Date.now();for(;Date.now()-s<e;){if(this.queue.filter(n=>n.processing).length===0){f&&console.log(`All processing messages completed in ${Date.now()-s}ms`);return}await new Promise(n=>setTimeout(n,50))}if(f){let o=this.queue.filter(n=>n.processing);console.log(`Timeout waiting for processing messages. ${o.length} messages still processing`)}}async gracefulShutdown(e={}){if(this.shutdownPromise)return this.shutdownPromise;let{timeoutMs:t=this.shutdownTimeout,batchSize:s=10,fastMode:o=!1}=e;return this.shutdownPromise=new Promise(async n=>{this.shuttingDown=!0,await this.waitForProcessingMessages(Math.min(t*.3,3e3));let i=this.queue.filter(g=>!g.processing),a=i.length;f&&(console.log(`Starting graceful shutdown with ${a} pending messages (${this.queue.length-a} already processing)`),console.log(`Mode: ${o?"fast (parallel)":"sequential"}, timeout: ${t}ms`));let r=Date.now(),c=0,l=0;try{if(o){let g=await this.processAllParallel(t-(Date.now()-r),i);c=g.processed,l=g.failed}else{let g=await this.processInBatches(s,t-(Date.now()-r),i);c=g.processed,l=g.failed}}catch(g){f&&console.error("Error during shutdown processing:",g.message)}let h=Date.now()-r,u=this.queue.length;f&&(console.log(`Shutdown completed in ${h}ms:`),console.log(` - Total: ${a} messages`),console.log(` - Processed: ${c}`),console.log(` - Failed: ${l}`),console.log(` - Remaining: ${u}`)),n({totalMessages:a,processedMessages:c,failedMessages:l,remainingMessages:u,duration:h,allMessagesSent:u===0&&l===0})}),this.shutdownPromise}async processAllParallel(e){if(this.queue.length===0)return{processed:0,failed:0};f&&console.log(`Processing ${this.queue.length} messages in parallel...`);let t=[...this.queue];this.queue=[];let s=t.map(async r=>{try{return this.onProcessMessage&&await this.onProcessMessage(r),{success:!0,messageId:r.id}}catch(c){return f&&console.warn(`Message ${r.id} processing failed: ${c.message}`),{success:!1,messageId:r.id,error:c}}}),o=new Promise(r=>{setTimeout(()=>r({timedOut:!0}),e)}),n=await Promise.race([Promise.allSettled(s).then(r=>({results:r})),o]);if(n.timedOut)return f&&console.log(`Parallel processing timed out after ${e}ms`),{processed:0,failed:t.length};let i=n.results.filter(r=>r.status==="fulfilled"&&r.value?.success).length,a=t.length-i;return{processed:i,failed:a}}async processInBatches(e,t){if(this.queue.length===0)return{processed:0,failed:0};f&&console.log(`Processing ${this.queue.length} messages in batches of ${e}...`);let s=Date.now(),o=0,n=0;for(;this.queue.length>0&&Date.now()-s<t;){let i=this.queue.splice(0,e),a=i.map(async h=>{try{return this.onProcessMessage&&await this.onProcessMessage(h),{success:!0}}catch(u){return f&&console.warn(`Batch message processing failed: ${u.message}`),{success:!1,error:u}}}),c=(await Promise.allSettled(a)).filter(h=>h.status==="fulfilled"&&h.value?.success).length,l=i.length-c;o+=c,n+=l,f&&i.length>0&&console.log(`Batch completed: ${c}/${i.length} successful`),this.queue.length>0&&await new Promise(h=>setTimeout(h,10))}return this.queue.length>0&&(n+=this.queue.length,f&&console.log(`${this.queue.length} messages not processed due to timeout`),this.queue=[]),{processed:o,failed:n}}async forceFlushAndShutdown(e=2e3){this.shuttingDown=!0,await this.waitForProcessingMessages(Math.min(e*.4,1e3));let t=this.queue.filter(r=>!r.processing);f&&console.log(`Force flush: attempting to send ${t.length} pending messages within ${e}ms (${this.queue.length-t.length} already processing)`);let s=Date.now(),o=t.map(async r=>{try{return this.onProcessMessage&&Date.now()-s<e?(await this.onProcessMessage(r),{success:!0,messageId:r.id}):{success:!1,messageId:r.id,reason:"timeout"}}catch(c){return{success:!1,messageId:r.id,error:c.message}}}),n=e-(Date.now()-s),i=new Promise(r=>{setTimeout(()=>r({timedOut:!0}),Math.max(100,n))}),a=await Promise.race([Promise.allSettled(o).then(r=>({results:r})),i]);if(t.forEach(r=>{let c=this.queue.findIndex(l=>l.id===r.id);c>-1&&this.queue.splice(c,1)}),this.processing=!1,a.timedOut)return f&&console.log(`Force flush timed out after ${e}ms`),{success:!1,reason:"timeout",attemptedCount:t.length};{let r=a.results.filter(c=>c.status==="fulfilled"&&c.value.success).length;return f&&console.log(`Force flush completed: ${r}/${t.length} messages sent`),{success:r===t.length,successCount:r,totalCount:t.length,results:a.results}}}forceShutdown(){this.shuttingDown=!0,this.queue=[],this.processing=!1,f&&console.log("Force shutdown: Queue cleared")}};ve.exports=H});var G=m((us,vt)=>{vt.exports={name:"makecoder",version:"2.0.66",description:"MakeCoder: Unified AI agent CLI tool integrating Claude Code, Codex and Gemini CLI",main:"./dist/coder.js",bin:{coder:"./dist/coder.js"},scripts:{test:'echo "Error: no test specified" && exit 1',start:"node ./src/coder.js",build:"node scripts/build.js","build:clean":"node scripts/build.js --clean","build:dev":"node scripts/build.js --no-minify --sourcemap",postinstall:"node scripts/postinstall.js"},keywords:["cli","ai","claude","gemini","codex","agent"],author:"makecoder",license:"MIT",dependencies:{"node-fetch":"^3.3.2",open:"^10.1.0",zod:"^3.25.76"},optionalDependencies:{"makecoder-codex-linux-x64":"*","makecoder-codex-darwin-arm64":"*","makecoder-codex-win32-x64":"*"},engines:{node:">=20.0.0"},devDependencies:{chokidar:"^4.0.3"},files:["dist","claude","scripts/postinstall.js"]}});var ke=m((ds,Ie)=>{var xt=require("http"),_t=require("https"),{URL:_e}=require("url"),{version:bt}=G(),be=process.env.CODEV_DEBUG==="True",V=class{constructor(e={}){this.baseUrl=e.baseUrl||"",this.timeout=e.timeout||3e4,this.defaultHeaders={"Content-Type":"application/json","User-Agent":`codev-cli/${bt}`,...e.headers}}setBaseUrl(e){this.baseUrl=e}setDefaultHeaders(e){this.defaultHeaders={...this.defaultHeaders,...e}}async post(e,t,s={}){let o=this.resolveUrl(e),n={...this.defaultHeaders,...s.headers};return new Promise((i,a)=>{this.validateRequest(o,t,a);let r=this.serializeData(t,a);if(!r)return;n["Content-Length"]=Buffer.byteLength(r);let c=this.buildRequestOptions(o,"POST",n),l=this.getHttpModule(o);be&&console.debug(`HTTP POST to ${o} with data length: ${r.length}`);let h=l.request(c,u=>{this.handleResponse(u,i,a)});this.attachErrorHandlers(h,o,a),h.setTimeout(this.timeout),h.write(r),h.end()})}resolveUrl(e){return e.startsWith("http")?e:`${this.baseUrl}${e.startsWith("/")?"":"/"}${e}`}validateRequest(e,t,s){return!e||typeof e!="string"?(s(new Error(`Invalid URL: ${e}`)),!1):t?!0:(s(new Error("No data provided for HTTP POST")),!1)}serializeData(e,t){try{return typeof e=="string"?e:JSON.stringify(e)}catch(s){return t(new Error(`Failed to serialize data: ${s.message}`)),null}}buildRequestOptions(e,t,s){let o=new _e(e),n=o.protocol==="https:";return{hostname:o.hostname,port:o.port||(n?443:80),path:o.pathname+o.search,method:t,headers:s}}getHttpModule(e){return new _e(e).protocol==="https:"?_t:xt}handleResponse(e,t,s){be&&console.debug(`HTTP response status: ${e.statusCode}`);let o="";e.on("data",n=>{o+=n}),e.on("end",()=>{e.statusCode>=200&&e.statusCode<300?t({statusCode:e.statusCode,data:o,headers:e.headers}):s(new Error(`HTTP request returned status ${e.statusCode}: ${o}`))})}attachErrorHandlers(e,t,s){e.on("error",o=>{s(new Error(`HTTP POST request failed: ${o.message}`))}),e.on("timeout",()=>{s(new Error(`HTTP POST request timed out for URL: ${t}`)),e.destroy()})}};Ie.exports=V});var Pe=m((gs,$e)=>{var It=require("crypto"),{URL:kt}=require("url"),K=class{static generateSignature(e,t,s,o){try{let n=new kt(e),i=Buffer.from(n.pathname),a=Buffer.from(i),r=t?typeof t=="string"?Buffer.from(t):Buffer.from(JSON.stringify(t)):Buffer.alloc(0),c=Buffer.concat([a,r,Buffer.from(o)]),l=It.createHmac("sha256",s);return l.update(c),l.digest("hex")}catch(n){throw new Error(`Failed to generate signature: ${n.message}`)}}static validateSignature(e,t,s,o,n){return this.generateSignature(e,t,s,o)===n}static generateTimestamp(){return Date.now().toString()}};$e.exports=K});var Te=m((fs,De)=>{var $t=Pe(),W=class{constructor(e={}){this.accessKey=null,this.secretKey=null,this.validateCredentials=e.validateCredentials!==!1}setCredentials(e,t){if(this.validateCredentials&&(!e||!t))throw new Error("Both access key and secret key are required");this.accessKey=e,this.secretKey=t}hasCredentials(){return!!(this.accessKey&&this.secretKey)}generateAuthHeaders(e,t=null){if(!this.hasCredentials())return{};try{return{AUTHORIZATION:`Bearer ${this.accessKey}.${this.secretKey}`}}catch(s){throw new Error(`Failed to generate auth headers: ${s.message}`)}}validateAuthHeaders(e,t,s,o){if(!this.hasCredentials())throw new Error("No credentials available for validation");return $t.validateSignature(e,t,this.secretKey,s,o)}clearCredentials(){this.accessKey=null,this.secretKey=null}getCredentials(){return{accessKey:this.accessKey,hasCredentials:this.hasCredentials()}}};De.exports=W});var Oe=m((ms,Ae)=>{var A=process.env.CODEV_DEBUG==="True",z=class{constructor(e={}){this.currentSessionId=null,this.previousSessionId=null,this.onSessionSwitch=e.onSessionSwitch||null,this.terminateSignal=e.terminateSignal||"CODEV_TERMINATE_SIGNAL"}handleSessionSwitch(e){if(!e)return A&&console.warn("Received empty session ID"),!1;let t=this.previousSessionId!==null&&this.previousSessionId!==e;return t&&(A&&console.log(`Session switch detected: ${this.previousSessionId} -> ${e}`),this.onSessionSwitch&&this.onSessionSwitch({type:this.terminateSignal,reason:"User switch session",agent:"claude",previousSessionId:this.previousSessionId,newSessionId:e})),this.previousSessionId=this.currentSessionId,this.currentSessionId=e,t}getCurrentSessionId(){return this.currentSessionId}getPreviousSessionId(){return this.previousSessionId}hasActiveSession(){return!!this.currentSessionId}terminateCurrentSession(e="Session terminated",t=null,s=null){if(!this.hasActiveSession())return A&&console.log("No active session to terminate"),null;let o={type:this.terminateSignal,reason:s?`terminated by signal: ${s}`:e,code:t,signal:s,timestamp:Date.now(),agent:"claude",sessionId:this.currentSessionId};return A&&console.log("Terminating session:",o),this.previousSessionId=null,this.currentSessionId=null,o}createErrorTermination(e){return this.hasActiveSession()?{type:this.terminateSignal,error:e.message,stack:e.stack,timestamp:Date.now(),agent:"claude",sessionId:this.currentSessionId}:null}reset(){A&&console.log("Resetting session manager"),this.currentSessionId=null,this.previousSessionId=null}setSessionSwitchCallback(e){this.onSessionSwitch=e}getSessionInfo(){return{currentSessionId:this.currentSessionId,previousSessionId:this.previousSessionId,hasActiveSession:this.hasActiveSession()}}};Ae.exports=z});var Ue=m((ps,qe)=>{var I=require("fs"),$=require("path"),Pt=require("events"),Dt=require("crypto"),w=process.env.CODEV_DEBUG==="True",j=class extends Pt{constructor(e={}){super(),this.watchPaths=e.watchPaths||[],this.excludePatterns=e.excludePatterns||[/node_modules/,/\.git/,/\.DS_Store/,/\.tmp/,/\.log$/,/\.swp$/,/codev\.log/],this.includePatterns=e.includePatterns||[/\.(js|jsx|ts|tsx|py|java|c|cpp|h|hpp|go|rs|rb|php|html|css|scss|sass|less|json|xml|yaml|yml|md|txt)$/],this.watchers=new Map,this.isWatching=!1,this.debounceTimeout=e.debounceTimeout||300,this.pendingChanges=new Map,this.fileContentHashes=new Map,this.enableContentComparison=e.enableContentComparison!==!1,this.onFileChange=e.onFileChange||null}calculateFileHash(e){try{let t=I.readFileSync(e,"utf8");return Dt.createHash("sha256").update(t).digest("hex")}catch{return null}}hasContentChanged(e){if(!this.enableContentComparison)return!0;let t=this.calculateFileHash(e),s=this.fileContentHashes.get(e);return t===null?s!==void 0?(this.fileContentHashes.delete(e),!0):!1:s===void 0||t!==s?(this.fileContentHashes.set(e,t),!0):!1}preloadFileHashes(e){if(!(!this.enableContentComparison||!I.existsSync(e)))try{let t=I.readdirSync(e,{withFileTypes:!0});for(let s of t){let o=$.join(e,s.name);s.isFile()&&this.shouldWatchFile(o)?(this.calculateFileHash(o),this.fileContentHashes.set(o,this.calculateFileHash(o))):s.isDirectory()&&!this.shouldExcludeDirectory(o)&&this.preloadFileHashes(o)}}catch(t){w&&console.warn(`Failed to preload hashes for ${e}:`,t.message)}}shouldExcludeDirectory(e){let t=e.replace(/\\/g,"/");for(let s of this.excludePatterns)if(s.test(t)||s.test($.basename(e)))return!0;return!1}startWatching(e=null){if(this.isWatching){w&&console.log("FileWatchService is already watching");return}let t=e||this.watchPaths;if(t.length===0){w&&console.log("No watch paths specified");return}this.isWatching=!0;for(let s of t)this.enableContentComparison&&this.preloadFileHashes(s),this.watchDirectory(s);w&&(console.log(`FileWatchService started watching ${t.length} paths`),this.enableContentComparison&&console.log(`Preloaded hashes for ${this.fileContentHashes.size} files`))}stopWatching(){if(this.isWatching){this.isWatching=!1;for(let[e,t]of this.watchers)try{t.close(),w&&console.log(`Stopped watching: ${e}`)}catch(s){w&&console.error(`Error stopping watcher for ${e}:`,s.message)}this.watchers.clear(),this.pendingChanges.clear(),this.fileContentHashes.clear(),w&&console.log("FileWatchService stopped watching all paths")}}watchDirectory(e){if(!I.existsSync(e)){w&&console.warn(`Watch path does not exist: ${e}`);return}if(!I.statSync(e).isDirectory()){w&&console.warn(`Watch path is not a directory: ${e}`);return}try{let s=I.watch(e,{recursive:!0,persistent:!1},(o,n)=>{if(!n)return;let i=$.join(e,n);this.handleFileChange(o,i,e)});this.watchers.set(e,s),w&&console.log(`Started watching directory: ${e}`),s.on("error",o=>{w&&console.error(`Watcher error for ${e}:`,o.message),this.watchers.delete(e)})}catch(s){w&&console.error(`Failed to start watching ${e}:`,s.message)}}handleFileChange(e,t,s){if(!this.shouldWatchFile(t))return;let o=`${e}:${t}`;this.pendingChanges.has(o)&&clearTimeout(this.pendingChanges.get(o)),this.pendingChanges.set(o,setTimeout(()=>{this.pendingChanges.delete(o),this.processFileChange(e,t,s)},this.debounceTimeout))}processFileChange(e,t,s){if(!this.isWatching)return;let o="modified",n=!1;try{I.statSync(t),n=!0,e==="rename"?o="created":e==="change"&&(o="modified")}catch{e==="rename"&&(o="deleted")}if(n&&(o==="modified"||o==="created")&&!this.hasContentChanged(t)){w&&console.log(`Ignoring false change for: ${$.relative(s,t)}`);return}!n&&o==="deleted"&&this.fileContentHashes.delete(t);let i={type:"CODEV_FILE_CHANGE_DETECTTED",data:{eventType:e,changeType:o,filePath:t,relativePath:$.relative(s,t),watchPath:s,fileExists:n,timestamp:Date.now(),sessionId:process.env.SESSION_ID||"default"}};if(w&&console.log(`File ${o}: ${i.data.relativePath}`),this.emit("fileChange",i),this.onFileChange&&typeof this.onFileChange=="function")try{this.onFileChange(i)}catch(a){w&&console.error("Error in file change callback:",a.message)}}shouldWatchFile(e){let t=$.basename(e),s=e.replace(/\\/g,"/");for(let o of this.excludePatterns)if(o.test(s)||o.test(t))return!1;if(this.includePatterns.length===0)return!0;for(let o of this.includePatterns)if(o.test(s)||o.test(t))return!0;return!1}addWatchPath(e){this.watchPaths.includes(e)||(this.watchPaths.push(e),this.isWatching&&this.watchDirectory(e))}removeWatchPath(e){let t=this.watchPaths.indexOf(e);if(t>-1&&(this.watchPaths.splice(t,1),this.watchers.has(e)))try{this.watchers.get(e).close(),this.watchers.delete(e),w&&console.log(`Removed watch path: ${e}`)}catch(s){w&&console.error(`Error removing watch path ${e}:`,s.message)}}getStatus(){return{isWatching:this.isWatching,watchPaths:[...this.watchPaths],activeWatchers:this.watchers.size,pendingChanges:this.pendingChanges.size}}setFileChangeCallback(e){this.onFileChange=e}};qe.exports=j});var Me=m((ys,Fe)=>{var Tt=F(),At=require("path"),ws=require("fs"),Ss=require("os"),Ot=xe(),qt=ke(),Ut=Te(),Ft=Oe(),Mt=Ue(),p=process.env.CODEV_DEBUG==="True",J=class extends Tt{constructor(){super({configDir:".",configFile:".claude.json",defaultModel:"Claude Sonnet 4.5",executablePaths:["cc.mjs","/tmp/claude-code/package/cc.mjs"],environmentVariables:e=>({ANTHROPIC_BASE_URL:`${e}/claude`,ANTHROPIC_API_KEY:"codev",DISABLE_TELEMETRY:!0,CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC:!0,DISABLE_COST_WARNINGS:!0,DISABLE_NON_ESSENTIAL_MODEL_CALLS:!0,CODEV_SERVER:e,CLAUDE_CODE_ATTRIBUTION_HEADER:"0"}),defaultConfig:{numStartups:1,installMethod:"unknown",autoUpdates:!1,theme:"Coder Dark",customApiKeyResponses:{approved:["codev"]},shiftEnterKeyBindingInstalled:!0,hasCompletedOnboarding:!0,subscriptionNoticeCount:0,hasAvailableSubscription:!0,projects:{}}}),this.fileWatchService=null,this.shutdownInProgress=!1,this.initializeServices()}initializeServices(){this.httpClient=new qt({timeout:1e4}),this.authService=new Ut({validateCredentials:!1}),this.sessionManager=new Ft({onSessionSwitch:e=>{this.sendTerminationMessage(e)}}),this.messageQueue=new Ot({maxRetries:2,retryDelay:500,shutdownTimeout:3e3,onProcessMessage:e=>this.processMessage(e)}),this.initializeFileWatchService()}resloveSettingFilePath(e){return At.join(e,this.config.configDir,".claude","settings.json")}initializeFileWatchService(){if(!process.env.SESSION_ID){p&&console.log("FileWatchService disabled: SESSION_ID environment variable not found");return}try{this.fileWatchService=new Mt({watchPaths:this.getFileWatchPaths(),onFileChange:e=>this.handleFileChange(e),debounceTimeout:300}),p&&console.log("FileWatchService initialized with SESSION_ID:",process.env.SESSION_ID)}catch(e){p&&console.error("Failed to initialize FileWatchService:",e.message)}}getFileWatchPaths(){let e=[],t=process.cwd();e.push(t);let s=process.env.CODEV_WATCH_PATHS;if(s){let o=s.split(",").map(n=>n.trim());e.push(...o)}return e}handleFileChange(e){if(p&&console.log("File change detected:",e.data.relativePath),this.shutdownInProgress)return;let t={message:e,sessionId:e.data.sessionId||process.env.SESSION_ID};this.messageQueue.enqueue(t)}startFileWatching(){this.fileWatchService&&!this.fileWatchService.isWatching&&(this.fileWatchService.startWatching(),p&&console.log("File watching started"))}stopFileWatching(){this.fileWatchService&&this.fileWatchService.isWatching&&(this.fileWatchService.stopWatching(),p&&console.log("File watching stopped"))}onChildMessage(e){e&&e.type==="claude:send-msg"&&this.handleClaudeSendMessage(e.data),super.onChildMessage(e)}handleClaudeSendMessage(e){if(p&&console.log("Handling claude:send-msg message:",e),!e||typeof e!="object"){console.error(`handleClaudeSendMessage: Invalid message data. Expected object, got: ${typeof e}`);return}if(this.shutdownInProgress){p&&console.log("Shutdown in progress, ignoring new message");return}let t=e.sessionId||process.env.SESSION_ID;this.sessionManager.handleSessionSwitch(t),this.messageQueue.enqueue(e)}async processMessage(e){let t=e.data.message,s=e.data.sessionId||process.env.SESSION_ID;if(!s)throw new Error("No session ID available");let o;try{o=typeof t=="string"?JSON.parse(t):t}catch(a){throw new Error(`Failed to parse message data: ${a.message}`)}let n=`/conversations/${s}/@append?task_type=codev`,i=this.authService.hasCredentials()?this.authService.generateAuthHeaders(`${this.httpClient.baseUrl}${n}`,o):{};p&&(console.debug("Sending message to:",n),console.debug("Send Message: ",JSON.stringify(o))),e.type!=="CODEV_TERMINATE_SIGNAL"&&(this.sessionManager.currentSessionId=s)}sendTerminationMessage(e){let t={message:e,sessionId:e.sessionId||this.sessionManager.getCurrentSessionId()};this.messageQueue.enqueue(t)}async handleChildProcessExit(e,t){p&&console.log(`Child process exited with code: ${e}, signal: ${t}`),this.stopFileWatching();let s=this.messageQueue.getQueueSize(),o=this.sessionManager.terminateCurrentSession("process exited normally",e,t);if(o&&this.sendTerminationMessage(o),s>0||o){p&&console.log("Starting graceful shutdown of message queue...");try{let n=!t||t==="SIGTERM",i=this.messageQueue.getQueueSize(),a={timeoutMs:n?8e3:3e3,batchSize:Math.min(i,15),fastMode:!n||i>30};p&&console.log("Shutdown options:",a);let r=await this.messageQueue.gracefulShutdown(a);p&&console.log("Message queue shutdown completed:",r),r.failedMessages>0&&p&&console.warn(`Shutdown summary: ${r.processedMessages} sent, ${r.failedMessages} failed, ${r.remainingMessages} remaining`)}catch(n){p&&console.error("Error during message queue shutdown:",n.message)}}}handleChildProcessError(e){p&&console.error(`Child process error: ${e.message}`);let t=this.sessionManager.createErrorTermination(e);t&&this.sendTerminationMessage(t)}async forceFlushMessages(e=3e3){if(this.messageQueue.getQueueSize()===0)return{success:!0,message:"No messages to flush"};p&&console.log(`Force flushing ${this.messageQueue.getQueueSize()} messages...`);try{return await this.messageQueue.forceFlushAndShutdown(e)}catch(t){return p&&console.error("Force flush failed:",t.message),{success:!1,error:t.message}}}async launch(e={}){let{codevServer:t,auth_ak:s=null,auth_sk:o=null}=e;return this.httpClient.setBaseUrl(t),s&&o&&this.authService.setCredentials(s,o),this.startFileWatching(),super.launch(e)}};Fe.exports=J});var Le=m((Es,Be)=>{var Bt=F(),Cs=require("path"),Q=class extends Bt{constructor(){super({configDir:".gemini",configFile:"settings.json",defaultModel:"gemini-2.5-pro",executablePaths:["gcli.mjs","../libs/codev-gemini-cli/bundle/gemini.js"],environmentVariables:e=>({GOOGLE_GEMINI_BASE_URL:`${e}/gemini`,GEMINI_API_KEY:"coder",GOOGLE_API_KEY:"coder",GOOGLE_CLOUD_PROJECT:"coder",GOOGLE_CLOUD_LOCATION:"coder",DISABLE_TELEMETRY:!0,GEMINI_CODE_DISABLE_NONESSENTIAL_TRAFFIC:!0,DISABLE_COST_WARNINGS:!0,DISABLE_NON_ESSENTIAL_MODEL_CALLS:!0,USE_VERTEX:!0}),defaultConfig:{ide:{hasSeenNudge:!0},telemetry:{enabled:!1,logPrompts:!1},privacy:{usageStatisticsEnabled:!1},general:{disableUpdateNag:!0,preferredEditor:"vscode",previewFeatures:!0},ui:{hideBanner:!0,theme:"Default"},security:{auth:{selectedType:"vertex-ai"}}}})}};Be.exports=Q});var Ne=m((vs,Re)=>{var Lt=F(),O=require("path"),P=require("fs"),Rt=require("os"),{spawn:Nt}=require("child_process"),Y=process.env.CODEV_DEBUG==="True",Z=class extends Lt{constructor(){super({configDir:".codex",configFile:"config.toml",defaultModel:"o4-mini",executablePaths:["codex.mjs","../dist/codex.mjs"],environmentVariables:e=>({OPENAI_BASE_URL:`${e}/codex`,OPENAI_API_KEY:"codev-proxy-key",DEBUG:Y?"true":"false",CODEX_QUIET_MODE:"0",OPENAI_DISABLE_TELEMETRY:"true",CODEX_DISABLE_PROJECT_DOC:"0",CODEV_SERVER:e}),defaultConfig:{model:"gpt-5-codex",approvalMode:"suggest",fullAutoErrorMode:"ask-user",notify:[],history:{maxSize:1e3,saveHistory:!0,sensitivePatterns:[],persistence:"save-all"}}})}checkCodexAvailability(){try{let e=this.findExecutablePath();return P.existsSync(e)}catch{return!1}}resloveSettingFilePath(e){return O.join(e,this.config.configDir,"config.toml")}async ensureConfig(e=0){let t=O.join(Rt.homedir(),this.config.configDir,this.config.configFile),s=O.dirname(t);if(!P.existsSync(t)){let o=this.config.defaultConfig||{};try{P.existsSync(s)||P.mkdirSync(s,{recursive:!0});let n=this.generateTOMLConfig(o);P.writeFileSync(t,n),Y&&console.log(`Created Codex config file: ${t}`),e>0&&await new Promise(i=>setTimeout(i,e))}catch(n){console.warn(`Failed to create ${this.config.configFile}: ${n.message}`)}}}generateTOMLConfig(e){return`model = "${e.model||"gpt-5-codex"}"`}findExecutablePath(){let e=O.dirname(require.main.filename);for(let t of this.config.executablePaths){let s=O.resolve(e,t);if(P.existsSync(s))return s}throw new Error(`Could not find Codex executable in any of the configured paths: ${this.config.executablePaths.join(", ")}`)}async launch(e={}){let{remainingArgs:t=[],codevServer:s,auth_ak:o=null,auth_sk:n=null}=e;try{if(!this.checkCodexAvailability())throw new Error("Codex executable not found. Please ensure makecoder is properly installed: npm install -g makecoder@latest");await this.ensureConfig(1e3);let i=this.findExecutablePath();return Y&&console.log(`executablePath: ${i}`),new Promise((a,r)=>{let c={...process.env,...this.config.environmentVariables(s)};o&&(c.CODEV_AUTH_AK=o),n&&(c.CODEV_AUTH_SK=n);let l=["--no-warnings"];process.env.CODEV_INSPECT_BRK==="True"&&l.push("--inspect-brk"),l.push(i,...t);let h=Nt("node",l,{env:c,stdio:["inherit","inherit","inherit","ipc"]});this.handleChildMessages(h),h.on("error",u=>{console.error(`Failed to start Codex: ${u.message}`),r(u)}),h.on("exit",async(u,g)=>{console.log(g?`terminated by signal: ${g}`:"Goodbye for now! Keep building great things!")}),process.on("SIGINT",async()=>{console.log(`
202
+ Terminating ...`),u.kill("SIGTERM"),setTimeout(()=>{u.killed||u.kill("SIGKILL")},8e3)})})}catch(i){throw i}}};Ee.exports=H});var xe=m((hs,ve)=>{var f=process.env.CODEV_DEBUG==="True",G=class{constructor(e={}){this.queue=[],this.processing=!1,this.shuttingDown=!1,this.shutdownTimeout=e.shutdownTimeout||5e3,this.maxRetries=e.maxRetries||3,this.retryDelay=e.retryDelay||1e3,this.onProcessMessage=e.onProcessMessage||null,this.shutdownPromise=null,this.currentlyProcessing=null}enqueue(e){if(this.shuttingDown)return f&&console.log("Queue is shutting down, skipping new messages"),null;let t={id:Date.now()+Math.random(),data:e,timestamp:Date.now(),retryCount:0,processing:!1};return this.queue.push(t),f&&console.log(`Message enqueued, queue length: ${this.queue.length}`),this.processQueue(),t.id}dequeue(){let e=this.queue.shift();return f&&e&&console.log(`Message dequeued, remaining queue length: ${this.queue.length}`),e}removeById(e){let t=this.queue.findIndex(s=>s.id===e);return t>-1?(this.queue.splice(t,1),f&&console.log(`Message ${e} removed from queue`),!0):!1}async processQueue(){if(!(this.processing||this.queue.length===0)){this.processing=!0;try{for(;this.queue.length>0&&!this.shuttingDown;){let e=this.queue[0];e.processing=!0;try{this.onProcessMessage&&await this.onProcessMessage(e),this.dequeue()}catch(t){if(f&&console.error(`Failed to process message: ${t.message}`),e.retryCount++,f&&console.log("Start Retry:",e.retryCount,"times..."),e.retryCount>=this.maxRetries)f&&console.error("Message exceeded max retries, removing from queue"),this.dequeue();else{e.processing=!1;let s=this.shuttingDown?100:this.retryDelay*e.retryCount;await new Promise(o=>setTimeout(o,s))}}}}finally{this.processing=!1}}}getQueueSize(){return this.queue.length}clear(){this.queue=[],f&&console.log("Message queue cleared")}setMessageProcessor(e){this.onProcessMessage=e}async waitForProcessingMessages(e=5e3){let t=this.queue.filter(o=>o.processing);if(t.length===0)return;f&&console.log(`Waiting for ${t.length} processing messages to complete (timeout: ${e}ms)`);let s=Date.now();for(;Date.now()-s<e;){if(this.queue.filter(n=>n.processing).length===0){f&&console.log(`All processing messages completed in ${Date.now()-s}ms`);return}await new Promise(n=>setTimeout(n,50))}if(f){let o=this.queue.filter(n=>n.processing);console.log(`Timeout waiting for processing messages. ${o.length} messages still processing`)}}async gracefulShutdown(e={}){if(this.shutdownPromise)return this.shutdownPromise;let{timeoutMs:t=this.shutdownTimeout,batchSize:s=10,fastMode:o=!1}=e;return this.shutdownPromise=new Promise(async n=>{this.shuttingDown=!0,await this.waitForProcessingMessages(Math.min(t*.3,3e3));let i=this.queue.filter(g=>!g.processing),a=i.length;f&&(console.log(`Starting graceful shutdown with ${a} pending messages (${this.queue.length-a} already processing)`),console.log(`Mode: ${o?"fast (parallel)":"sequential"}, timeout: ${t}ms`));let r=Date.now(),c=0,l=0;try{if(o){let g=await this.processAllParallel(t-(Date.now()-r),i);c=g.processed,l=g.failed}else{let g=await this.processInBatches(s,t-(Date.now()-r),i);c=g.processed,l=g.failed}}catch(g){f&&console.error("Error during shutdown processing:",g.message)}let h=Date.now()-r,u=this.queue.length;f&&(console.log(`Shutdown completed in ${h}ms:`),console.log(` - Total: ${a} messages`),console.log(` - Processed: ${c}`),console.log(` - Failed: ${l}`),console.log(` - Remaining: ${u}`)),n({totalMessages:a,processedMessages:c,failedMessages:l,remainingMessages:u,duration:h,allMessagesSent:u===0&&l===0})}),this.shutdownPromise}async processAllParallel(e){if(this.queue.length===0)return{processed:0,failed:0};f&&console.log(`Processing ${this.queue.length} messages in parallel...`);let t=[...this.queue];this.queue=[];let s=t.map(async r=>{try{return this.onProcessMessage&&await this.onProcessMessage(r),{success:!0,messageId:r.id}}catch(c){return f&&console.warn(`Message ${r.id} processing failed: ${c.message}`),{success:!1,messageId:r.id,error:c}}}),o=new Promise(r=>{setTimeout(()=>r({timedOut:!0}),e)}),n=await Promise.race([Promise.allSettled(s).then(r=>({results:r})),o]);if(n.timedOut)return f&&console.log(`Parallel processing timed out after ${e}ms`),{processed:0,failed:t.length};let i=n.results.filter(r=>r.status==="fulfilled"&&r.value?.success).length,a=t.length-i;return{processed:i,failed:a}}async processInBatches(e,t){if(this.queue.length===0)return{processed:0,failed:0};f&&console.log(`Processing ${this.queue.length} messages in batches of ${e}...`);let s=Date.now(),o=0,n=0;for(;this.queue.length>0&&Date.now()-s<t;){let i=this.queue.splice(0,e),a=i.map(async h=>{try{return this.onProcessMessage&&await this.onProcessMessage(h),{success:!0}}catch(u){return f&&console.warn(`Batch message processing failed: ${u.message}`),{success:!1,error:u}}}),c=(await Promise.allSettled(a)).filter(h=>h.status==="fulfilled"&&h.value?.success).length,l=i.length-c;o+=c,n+=l,f&&i.length>0&&console.log(`Batch completed: ${c}/${i.length} successful`),this.queue.length>0&&await new Promise(h=>setTimeout(h,10))}return this.queue.length>0&&(n+=this.queue.length,f&&console.log(`${this.queue.length} messages not processed due to timeout`),this.queue=[]),{processed:o,failed:n}}async forceFlushAndShutdown(e=2e3){this.shuttingDown=!0,await this.waitForProcessingMessages(Math.min(e*.4,1e3));let t=this.queue.filter(r=>!r.processing);f&&console.log(`Force flush: attempting to send ${t.length} pending messages within ${e}ms (${this.queue.length-t.length} already processing)`);let s=Date.now(),o=t.map(async r=>{try{return this.onProcessMessage&&Date.now()-s<e?(await this.onProcessMessage(r),{success:!0,messageId:r.id}):{success:!1,messageId:r.id,reason:"timeout"}}catch(c){return{success:!1,messageId:r.id,error:c.message}}}),n=e-(Date.now()-s),i=new Promise(r=>{setTimeout(()=>r({timedOut:!0}),Math.max(100,n))}),a=await Promise.race([Promise.allSettled(o).then(r=>({results:r})),i]);if(t.forEach(r=>{let c=this.queue.findIndex(l=>l.id===r.id);c>-1&&this.queue.splice(c,1)}),this.processing=!1,a.timedOut)return f&&console.log(`Force flush timed out after ${e}ms`),{success:!1,reason:"timeout",attemptedCount:t.length};{let r=a.results.filter(c=>c.status==="fulfilled"&&c.value.success).length;return f&&console.log(`Force flush completed: ${r}/${t.length} messages sent`),{success:r===t.length,successCount:r,totalCount:t.length,results:a.results}}}forceShutdown(){this.shuttingDown=!0,this.queue=[],this.processing=!1,f&&console.log("Force shutdown: Queue cleared")}};ve.exports=G});var V=m((us,vt)=>{vt.exports={name:"makecoder",version:"2.0.67",description:"MakeCoder: Unified AI agent CLI tool integrating Claude Code, Codex and Gemini CLI",main:"./dist/coder.js",bin:{coder:"./dist/coder.js"},scripts:{test:'echo "Error: no test specified" && exit 1',start:"node ./src/coder.js",build:"node scripts/build.js","build:clean":"node scripts/build.js --clean","build:dev":"node scripts/build.js --no-minify --sourcemap",postinstall:"node scripts/postinstall.js"},keywords:["cli","ai","claude","gemini","codex","agent"],author:"makecoder",license:"MIT",dependencies:{"node-fetch":"^3.3.2",open:"^10.1.0",zod:"^3.25.76"},optionalDependencies:{"makecoder-codex-linux-x64":"*","makecoder-codex-darwin-arm64":"*","makecoder-codex-win32-x64":"*"},engines:{node:">=20.0.0"},devDependencies:{chokidar:"^4.0.3"},files:["dist","claude","scripts/postinstall.js"]}});var ke=m((ds,Ie)=>{var xt=require("http"),_t=require("https"),{URL:_e}=require("url"),{version:bt}=V(),be=process.env.CODEV_DEBUG==="True",K=class{constructor(e={}){this.baseUrl=e.baseUrl||"",this.timeout=e.timeout||3e4,this.defaultHeaders={"Content-Type":"application/json","User-Agent":`codev-cli/${bt}`,...e.headers}}setBaseUrl(e){this.baseUrl=e}setDefaultHeaders(e){this.defaultHeaders={...this.defaultHeaders,...e}}async post(e,t,s={}){let o=this.resolveUrl(e),n={...this.defaultHeaders,...s.headers};return new Promise((i,a)=>{this.validateRequest(o,t,a);let r=this.serializeData(t,a);if(!r)return;n["Content-Length"]=Buffer.byteLength(r);let c=this.buildRequestOptions(o,"POST",n),l=this.getHttpModule(o);be&&console.debug(`HTTP POST to ${o} with data length: ${r.length}`);let h=l.request(c,u=>{this.handleResponse(u,i,a)});this.attachErrorHandlers(h,o,a),h.setTimeout(this.timeout),h.write(r),h.end()})}resolveUrl(e){return e.startsWith("http")?e:`${this.baseUrl}${e.startsWith("/")?"":"/"}${e}`}validateRequest(e,t,s){return!e||typeof e!="string"?(s(new Error(`Invalid URL: ${e}`)),!1):t?!0:(s(new Error("No data provided for HTTP POST")),!1)}serializeData(e,t){try{return typeof e=="string"?e:JSON.stringify(e)}catch(s){return t(new Error(`Failed to serialize data: ${s.message}`)),null}}buildRequestOptions(e,t,s){let o=new _e(e),n=o.protocol==="https:";return{hostname:o.hostname,port:o.port||(n?443:80),path:o.pathname+o.search,method:t,headers:s}}getHttpModule(e){return new _e(e).protocol==="https:"?_t:xt}handleResponse(e,t,s){be&&console.debug(`HTTP response status: ${e.statusCode}`);let o="";e.on("data",n=>{o+=n}),e.on("end",()=>{e.statusCode>=200&&e.statusCode<300?t({statusCode:e.statusCode,data:o,headers:e.headers}):s(new Error(`HTTP request returned status ${e.statusCode}: ${o}`))})}attachErrorHandlers(e,t,s){e.on("error",o=>{s(new Error(`HTTP POST request failed: ${o.message}`))}),e.on("timeout",()=>{s(new Error(`HTTP POST request timed out for URL: ${t}`)),e.destroy()})}};Ie.exports=K});var Pe=m((gs,$e)=>{var It=require("crypto"),{URL:kt}=require("url"),W=class{static generateSignature(e,t,s,o){try{let n=new kt(e),i=Buffer.from(n.pathname),a=Buffer.from(i),r=t?typeof t=="string"?Buffer.from(t):Buffer.from(JSON.stringify(t)):Buffer.alloc(0),c=Buffer.concat([a,r,Buffer.from(o)]),l=It.createHmac("sha256",s);return l.update(c),l.digest("hex")}catch(n){throw new Error(`Failed to generate signature: ${n.message}`)}}static validateSignature(e,t,s,o,n){return this.generateSignature(e,t,s,o)===n}static generateTimestamp(){return Date.now().toString()}};$e.exports=W});var Te=m((fs,De)=>{var $t=Pe(),z=class{constructor(e={}){this.accessKey=null,this.secretKey=null,this.validateCredentials=e.validateCredentials!==!1}setCredentials(e,t){if(this.validateCredentials&&(!e||!t))throw new Error("Both access key and secret key are required");this.accessKey=e,this.secretKey=t}hasCredentials(){return!!(this.accessKey&&this.secretKey)}generateAuthHeaders(e,t=null){if(!this.hasCredentials())return{};try{return{AUTHORIZATION:`Bearer ${this.accessKey}.${this.secretKey}`}}catch(s){throw new Error(`Failed to generate auth headers: ${s.message}`)}}validateAuthHeaders(e,t,s,o){if(!this.hasCredentials())throw new Error("No credentials available for validation");return $t.validateSignature(e,t,this.secretKey,s,o)}clearCredentials(){this.accessKey=null,this.secretKey=null}getCredentials(){return{accessKey:this.accessKey,hasCredentials:this.hasCredentials()}}};De.exports=z});var Oe=m((ms,Ae)=>{var A=process.env.CODEV_DEBUG==="True",j=class{constructor(e={}){this.currentSessionId=null,this.previousSessionId=null,this.onSessionSwitch=e.onSessionSwitch||null,this.terminateSignal=e.terminateSignal||"CODEV_TERMINATE_SIGNAL"}handleSessionSwitch(e){if(!e)return A&&console.warn("Received empty session ID"),!1;let t=this.previousSessionId!==null&&this.previousSessionId!==e;return t&&(A&&console.log(`Session switch detected: ${this.previousSessionId} -> ${e}`),this.onSessionSwitch&&this.onSessionSwitch({type:this.terminateSignal,reason:"User switch session",agent:"claude",previousSessionId:this.previousSessionId,newSessionId:e})),this.previousSessionId=this.currentSessionId,this.currentSessionId=e,t}getCurrentSessionId(){return this.currentSessionId}getPreviousSessionId(){return this.previousSessionId}hasActiveSession(){return!!this.currentSessionId}terminateCurrentSession(e="Session terminated",t=null,s=null){if(!this.hasActiveSession())return A&&console.log("No active session to terminate"),null;let o={type:this.terminateSignal,reason:s?`terminated by signal: ${s}`:e,code:t,signal:s,timestamp:Date.now(),agent:"claude",sessionId:this.currentSessionId};return A&&console.log("Terminating session:",o),this.previousSessionId=null,this.currentSessionId=null,o}createErrorTermination(e){return this.hasActiveSession()?{type:this.terminateSignal,error:e.message,stack:e.stack,timestamp:Date.now(),agent:"claude",sessionId:this.currentSessionId}:null}reset(){A&&console.log("Resetting session manager"),this.currentSessionId=null,this.previousSessionId=null}setSessionSwitchCallback(e){this.onSessionSwitch=e}getSessionInfo(){return{currentSessionId:this.currentSessionId,previousSessionId:this.previousSessionId,hasActiveSession:this.hasActiveSession()}}};Ae.exports=j});var Ue=m((ps,qe)=>{var k=require("fs"),P=require("path"),Pt=require("events"),Dt=require("crypto"),w=process.env.CODEV_DEBUG==="True",J=class extends Pt{constructor(e={}){super(),this.watchPaths=e.watchPaths||[],this.excludePatterns=e.excludePatterns||[/node_modules/,/\.git/,/\.DS_Store/,/\.tmp/,/\.log$/,/\.swp$/,/codev\.log/],this.includePatterns=e.includePatterns||[/\.(js|jsx|ts|tsx|py|java|c|cpp|h|hpp|go|rs|rb|php|html|css|scss|sass|less|json|xml|yaml|yml|md|txt)$/],this.watchers=new Map,this.isWatching=!1,this.debounceTimeout=e.debounceTimeout||300,this.pendingChanges=new Map,this.fileContentHashes=new Map,this.enableContentComparison=e.enableContentComparison!==!1,this.onFileChange=e.onFileChange||null}calculateFileHash(e){try{let t=k.readFileSync(e,"utf8");return Dt.createHash("sha256").update(t).digest("hex")}catch{return null}}hasContentChanged(e){if(!this.enableContentComparison)return!0;let t=this.calculateFileHash(e),s=this.fileContentHashes.get(e);return t===null?s!==void 0?(this.fileContentHashes.delete(e),!0):!1:s===void 0||t!==s?(this.fileContentHashes.set(e,t),!0):!1}preloadFileHashes(e){if(!(!this.enableContentComparison||!k.existsSync(e)))try{let t=k.readdirSync(e,{withFileTypes:!0});for(let s of t){let o=P.join(e,s.name);s.isFile()&&this.shouldWatchFile(o)?(this.calculateFileHash(o),this.fileContentHashes.set(o,this.calculateFileHash(o))):s.isDirectory()&&!this.shouldExcludeDirectory(o)&&this.preloadFileHashes(o)}}catch(t){w&&console.warn(`Failed to preload hashes for ${e}:`,t.message)}}shouldExcludeDirectory(e){let t=e.replace(/\\/g,"/");for(let s of this.excludePatterns)if(s.test(t)||s.test(P.basename(e)))return!0;return!1}startWatching(e=null){if(this.isWatching){w&&console.log("FileWatchService is already watching");return}let t=e||this.watchPaths;if(t.length===0){w&&console.log("No watch paths specified");return}this.isWatching=!0;for(let s of t)this.enableContentComparison&&this.preloadFileHashes(s),this.watchDirectory(s);w&&(console.log(`FileWatchService started watching ${t.length} paths`),this.enableContentComparison&&console.log(`Preloaded hashes for ${this.fileContentHashes.size} files`))}stopWatching(){if(this.isWatching){this.isWatching=!1;for(let[e,t]of this.watchers)try{t.close(),w&&console.log(`Stopped watching: ${e}`)}catch(s){w&&console.error(`Error stopping watcher for ${e}:`,s.message)}this.watchers.clear(),this.pendingChanges.clear(),this.fileContentHashes.clear(),w&&console.log("FileWatchService stopped watching all paths")}}watchDirectory(e){if(!k.existsSync(e)){w&&console.warn(`Watch path does not exist: ${e}`);return}if(!k.statSync(e).isDirectory()){w&&console.warn(`Watch path is not a directory: ${e}`);return}try{let s=k.watch(e,{recursive:!0,persistent:!1},(o,n)=>{if(!n)return;let i=P.join(e,n);this.handleFileChange(o,i,e)});this.watchers.set(e,s),w&&console.log(`Started watching directory: ${e}`),s.on("error",o=>{w&&console.error(`Watcher error for ${e}:`,o.message),this.watchers.delete(e)})}catch(s){w&&console.error(`Failed to start watching ${e}:`,s.message)}}handleFileChange(e,t,s){if(!this.shouldWatchFile(t))return;let o=`${e}:${t}`;this.pendingChanges.has(o)&&clearTimeout(this.pendingChanges.get(o)),this.pendingChanges.set(o,setTimeout(()=>{this.pendingChanges.delete(o),this.processFileChange(e,t,s)},this.debounceTimeout))}processFileChange(e,t,s){if(!this.isWatching)return;let o="modified",n=!1;try{k.statSync(t),n=!0,e==="rename"?o="created":e==="change"&&(o="modified")}catch{e==="rename"&&(o="deleted")}if(n&&(o==="modified"||o==="created")&&!this.hasContentChanged(t)){w&&console.log(`Ignoring false change for: ${P.relative(s,t)}`);return}!n&&o==="deleted"&&this.fileContentHashes.delete(t);let i={type:"CODEV_FILE_CHANGE_DETECTTED",data:{eventType:e,changeType:o,filePath:t,relativePath:P.relative(s,t),watchPath:s,fileExists:n,timestamp:Date.now(),sessionId:process.env.SESSION_ID||"default"}};if(w&&console.log(`File ${o}: ${i.data.relativePath}`),this.emit("fileChange",i),this.onFileChange&&typeof this.onFileChange=="function")try{this.onFileChange(i)}catch(a){w&&console.error("Error in file change callback:",a.message)}}shouldWatchFile(e){let t=P.basename(e),s=e.replace(/\\/g,"/");for(let o of this.excludePatterns)if(o.test(s)||o.test(t))return!1;if(this.includePatterns.length===0)return!0;for(let o of this.includePatterns)if(o.test(s)||o.test(t))return!0;return!1}addWatchPath(e){this.watchPaths.includes(e)||(this.watchPaths.push(e),this.isWatching&&this.watchDirectory(e))}removeWatchPath(e){let t=this.watchPaths.indexOf(e);if(t>-1&&(this.watchPaths.splice(t,1),this.watchers.has(e)))try{this.watchers.get(e).close(),this.watchers.delete(e),w&&console.log(`Removed watch path: ${e}`)}catch(s){w&&console.error(`Error removing watch path ${e}:`,s.message)}}getStatus(){return{isWatching:this.isWatching,watchPaths:[...this.watchPaths],activeWatchers:this.watchers.size,pendingChanges:this.pendingChanges.size}}setFileChangeCallback(e){this.onFileChange=e}};qe.exports=J});var Me=m((ys,Fe)=>{var Tt=F(),At=require("path"),ws=require("fs"),Ss=require("os"),Ot=xe(),qt=ke(),Ut=Te(),Ft=Oe(),Mt=Ue(),p=process.env.CODEV_DEBUG==="True",Q=class extends Tt{constructor(){super({configDir:".",configFile:".claude.json",defaultModel:"Claude Sonnet 4.5",executablePaths:["cc.mjs","/tmp/claude-code/package/cc.mjs"],environmentVariables:e=>({ANTHROPIC_BASE_URL:`${e}/claude`,ANTHROPIC_API_KEY:"codev",DISABLE_TELEMETRY:!0,CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC:!0,DISABLE_COST_WARNINGS:!0,DISABLE_NON_ESSENTIAL_MODEL_CALLS:!0,CODEV_SERVER:e,CLAUDE_CODE_ATTRIBUTION_HEADER:"0"}),defaultConfig:{numStartups:1,installMethod:"unknown",autoUpdates:!1,theme:"Coder Dark",customApiKeyResponses:{approved:["codev"]},shiftEnterKeyBindingInstalled:!0,hasCompletedOnboarding:!0,subscriptionNoticeCount:0,hasAvailableSubscription:!0,projects:{}}}),this.fileWatchService=null,this.shutdownInProgress=!1,this.initializeServices()}initializeServices(){this.httpClient=new qt({timeout:1e4}),this.authService=new Ut({validateCredentials:!1}),this.sessionManager=new Ft({onSessionSwitch:e=>{this.sendTerminationMessage(e)}}),this.messageQueue=new Ot({maxRetries:2,retryDelay:500,shutdownTimeout:3e3,onProcessMessage:e=>this.processMessage(e)}),this.initializeFileWatchService()}resloveSettingFilePath(e){return At.join(e,this.config.configDir,".claude","settings.json")}initializeFileWatchService(){if(!process.env.SESSION_ID){p&&console.log("FileWatchService disabled: SESSION_ID environment variable not found");return}try{this.fileWatchService=new Mt({watchPaths:this.getFileWatchPaths(),onFileChange:e=>this.handleFileChange(e),debounceTimeout:300}),p&&console.log("FileWatchService initialized with SESSION_ID:",process.env.SESSION_ID)}catch(e){p&&console.error("Failed to initialize FileWatchService:",e.message)}}getFileWatchPaths(){let e=[],t=process.cwd();e.push(t);let s=process.env.CODEV_WATCH_PATHS;if(s){let o=s.split(",").map(n=>n.trim());e.push(...o)}return e}handleFileChange(e){if(p&&console.log("File change detected:",e.data.relativePath),this.shutdownInProgress)return;let t={message:e,sessionId:e.data.sessionId||process.env.SESSION_ID};this.messageQueue.enqueue(t)}startFileWatching(){this.fileWatchService&&!this.fileWatchService.isWatching&&(this.fileWatchService.startWatching(),p&&console.log("File watching started"))}stopFileWatching(){this.fileWatchService&&this.fileWatchService.isWatching&&(this.fileWatchService.stopWatching(),p&&console.log("File watching stopped"))}onChildMessage(e){e&&e.type==="claude:send-msg"&&this.handleClaudeSendMessage(e.data),super.onChildMessage(e)}handleClaudeSendMessage(e){if(p&&console.log("Handling claude:send-msg message:",e),!e||typeof e!="object"){console.error(`handleClaudeSendMessage: Invalid message data. Expected object, got: ${typeof e}`);return}if(this.shutdownInProgress){p&&console.log("Shutdown in progress, ignoring new message");return}let t=e.sessionId||process.env.SESSION_ID;this.sessionManager.handleSessionSwitch(t),this.messageQueue.enqueue(e)}async processMessage(e){let t=e.data.message,s=e.data.sessionId||process.env.SESSION_ID;if(!s)throw new Error("No session ID available");let o;try{o=typeof t=="string"?JSON.parse(t):t}catch(a){throw new Error(`Failed to parse message data: ${a.message}`)}let n=`/conversations/${s}/@append?task_type=codev`,i=this.authService.hasCredentials()?this.authService.generateAuthHeaders(`${this.httpClient.baseUrl}${n}`,o):{};p&&(console.debug("Sending message to:",n),console.debug("Send Message: ",JSON.stringify(o))),e.type!=="CODEV_TERMINATE_SIGNAL"&&(this.sessionManager.currentSessionId=s)}sendTerminationMessage(e){let t={message:e,sessionId:e.sessionId||this.sessionManager.getCurrentSessionId()};this.messageQueue.enqueue(t)}async handleChildProcessExit(e,t){p&&console.log(`Child process exited with code: ${e}, signal: ${t}`),this.stopFileWatching();let s=this.messageQueue.getQueueSize(),o=this.sessionManager.terminateCurrentSession("process exited normally",e,t);if(o&&this.sendTerminationMessage(o),s>0||o){p&&console.log("Starting graceful shutdown of message queue...");try{let n=!t||t==="SIGTERM",i=this.messageQueue.getQueueSize(),a={timeoutMs:n?8e3:3e3,batchSize:Math.min(i,15),fastMode:!n||i>30};p&&console.log("Shutdown options:",a);let r=await this.messageQueue.gracefulShutdown(a);p&&console.log("Message queue shutdown completed:",r),r.failedMessages>0&&p&&console.warn(`Shutdown summary: ${r.processedMessages} sent, ${r.failedMessages} failed, ${r.remainingMessages} remaining`)}catch(n){p&&console.error("Error during message queue shutdown:",n.message)}}}handleChildProcessError(e){p&&console.error(`Child process error: ${e.message}`);let t=this.sessionManager.createErrorTermination(e);t&&this.sendTerminationMessage(t)}async forceFlushMessages(e=3e3){if(this.messageQueue.getQueueSize()===0)return{success:!0,message:"No messages to flush"};p&&console.log(`Force flushing ${this.messageQueue.getQueueSize()} messages...`);try{return await this.messageQueue.forceFlushAndShutdown(e)}catch(t){return p&&console.error("Force flush failed:",t.message),{success:!1,error:t.message}}}async launch(e={}){let{codevServer:t,auth_ak:s=null,auth_sk:o=null}=e;return this.httpClient.setBaseUrl(t),s&&o&&this.authService.setCredentials(s,o),this.startFileWatching(),super.launch(e)}};Fe.exports=Q});var Le=m((Es,Be)=>{var Bt=F(),Cs=require("path"),Y=class extends Bt{constructor(){super({configDir:".gemini",configFile:"settings.json",defaultModel:"gemini-2.5-pro",executablePaths:["gcli.mjs","../libs/codev-gemini-cli/bundle/gemini.js"],environmentVariables:e=>({GOOGLE_GEMINI_BASE_URL:`${e}/gemini`,GEMINI_API_KEY:"coder",GOOGLE_API_KEY:"coder",GOOGLE_CLOUD_PROJECT:"coder",GOOGLE_CLOUD_LOCATION:"coder",DISABLE_TELEMETRY:!0,GEMINI_CODE_DISABLE_NONESSENTIAL_TRAFFIC:!0,DISABLE_COST_WARNINGS:!0,DISABLE_NON_ESSENTIAL_MODEL_CALLS:!0,USE_VERTEX:!0}),defaultConfig:{ide:{hasSeenNudge:!0},telemetry:{enabled:!1,logPrompts:!1},privacy:{usageStatisticsEnabled:!1},general:{disableUpdateNag:!0,preferredEditor:"vscode",previewFeatures:!0},ui:{hideBanner:!0,theme:"Default"},security:{auth:{selectedType:"vertex-ai"}}}})}};Be.exports=Y});var Ne=m((vs,Re)=>{var Lt=F(),O=require("path"),x=require("fs"),Rt=require("os"),{spawn:Nt}=require("child_process"),M=process.env.CODEV_DEBUG==="True",Z=class extends Lt{constructor(){super({configDir:".codex",configFile:"config.toml",defaultModel:"o4-mini",executablePaths:["codex.mjs","../dist/codex.mjs"],environmentVariables:e=>({OPENAI_BASE_URL:`${e}/codex`,OPENAI_API_KEY:"codev-proxy-key",DEBUG:M?"true":"false",CODEX_QUIET_MODE:"0",OPENAI_DISABLE_TELEMETRY:"true",CODEX_DISABLE_PROJECT_DOC:"0",CODEV_SERVER:e}),defaultConfig:{model:"gpt-5-codex",approvalMode:"suggest",fullAutoErrorMode:"ask-user",notify:[],history:{maxSize:1e3,saveHistory:!0,sensitivePatterns:[],persistence:"save-all"}}})}checkCodexAvailability(){try{let e=this.findExecutablePath();return x.existsSync(e)}catch{return!1}}resloveSettingFilePath(e){return O.join(e,this.config.configDir,"config.toml")}async ensureConfig(e,t=0){let s=O.join(Rt.homedir(),this.config.configDir,this.config.configFile),o=O.dirname(s);try{x.existsSync(o)||x.mkdirSync(o,{recursive:!0});let n=`${e}/codex`;if(x.existsSync(s)){let i=x.readFileSync(s,"utf8"),a=`openai_base_url = "${n}"`;/^openai_base_url\s*=/m.test(i)?i=i.replace(/^openai_base_url\s*=.*/m,a):i=i.trimEnd()+`
203
+ `+a+`
204
+ `,x.writeFileSync(s,i),M&&console.log(`Updated openai_base_url in ${s}`)}else{let i=this.config.defaultConfig||{},a=this.generateTOMLConfig(i,n);x.writeFileSync(s,a),M&&console.log(`Created Codex config file: ${s}`)}t>0&&await new Promise(i=>setTimeout(i,t))}catch(n){console.warn(`Failed to update ${this.config.configFile}: ${n.message}`)}}generateTOMLConfig(e,t){return`model = "${e.model||"gpt-5-codex"}"
205
+ openai_base_url = "${t}"
206
+ `}findExecutablePath(){let e=O.dirname(require.main.filename);for(let t of this.config.executablePaths){let s=O.resolve(e,t);if(x.existsSync(s))return s}throw new Error(`Could not find Codex executable in any of the configured paths: ${this.config.executablePaths.join(", ")}`)}async launch(e={}){let{remainingArgs:t=[],codevServer:s,auth_ak:o=null,auth_sk:n=null}=e;try{if(!this.checkCodexAvailability())throw new Error("Codex executable not found. Please ensure makecoder is properly installed: npm install -g makecoder@latest");await this.ensureConfig(s,1e3);let i=this.findExecutablePath();return M&&console.log(`executablePath: ${i}`),new Promise((a,r)=>{let c={...process.env,...this.config.environmentVariables(s)};o&&(c.CODEV_AUTH_AK=o),n&&(c.CODEV_AUTH_SK=n);let l=["--no-warnings"];process.env.CODEV_INSPECT_BRK==="True"&&l.push("--inspect-brk"),l.push(i,...t);let h=Nt("node",l,{env:c,stdio:["inherit","inherit","inherit","ipc"]});this.handleChildMessages(h),h.on("error",u=>{console.error(`Failed to start Codex: ${u.message}`),r(u)}),h.on("exit",async(u,g)=>{console.log(g?`terminated by signal: ${g}`:"Goodbye for now! Keep building great things!")}),process.on("SIGINT",async()=>{console.log(`
203
207
  Terminating ...`),h.kill("SIGTERM"),setTimeout(()=>{h.killed||h.kill("SIGKILL")},8e3)}),process.on("SIGTERM",async()=>{console.log(`
204
208
  Terminating ...`),h.kill("SIGTERM"),setTimeout(()=>{h.killed||h.kill("SIGKILL")},8e3)})})}catch(i){throw i}}};Re.exports=Z});var Ke=m((xs,Ve)=>{var q=require("fs"),He=require("path"),{spawn:Ge}=require("child_process"),X=class{constructor(){this.extensionId="codev.codev-background";let e=require.main?He.dirname(require.main.filename):__dirname;this.extensionPath=He.resolve(e,"vendor/claude-code.vsix"),this._codeCommand=null}async resolveCodeCommand(){if(this._codeCommand)return this._codeCommand;if(process.env.IS_AISTUDIO==="True"){let e="/usr/lib/aistudio/lib/vscode/bin/remote-cli/aistudio";if(q.existsSync(e))try{return q.accessSync(e,q.constants.F_OK|q.constants.X_OK),this._codeCommand=e,process.env.CODEV_DEBUG&&console.log(`Using AI Studio VSCode path: ${e}`),this._codeCommand}catch(t){process.env.CODEV_DEBUG&&console.log(`AI Studio path exists but not executable: ${t.message}`)}else process.env.CODEV_DEBUG&&console.log(`AI Studio path not found: ${e}`)}try{let{spawn:e}=require("child_process");return new Promise(t=>{let s=e("which",["code"],{stdio:["ignore","pipe","ignore"]}),o="";s.stdout.on("data",n=>{o+=n.toString().trim()}),s.on("close",n=>{n===0&&o?(this._codeCommand=o,process.env.CODEV_DEBUG&&console.log(`Resolved code command path: ${o}`),t(this._codeCommand)):(this._codeCommand="code",t(this._codeCommand))}),s.on("error",()=>{this._codeCommand="code",t(this._codeCommand)}),setTimeout(()=>{s.kill(),this._codeCommand="code",t(this._codeCommand)},3e3)})}catch{return this._codeCommand="code",this._codeCommand}}async shouldInstallExtension(){try{return process.env.IS_AISTUDIO!=="True"?(process.env.CODEV_DEBUG&&console.log("Not in AI Studio environment (IS_AISTUDIO!=True), skipping extension installation"),!1):await this.isVSCodeAvailable()?await this.isExtensionInstalled()?(process.env.CODEV_DEBUG&&console.log(`Extension ${this.extensionId} already installed`),!1):!!q.existsSync(this.extensionPath):(process.env.CODEV_DEBUG&&console.log("VSCode not available, skipping extension installation"),!1)}catch(e){return process.env.CODEV_DEBUG&&console.error(`Error checking extension installation status: ${e.message}`),!1}}async installExtension(){try{return console.log("Installing Codev VSCode extension..."),await this.executeVSCodeCommand(["--install-extension",this.extensionPath])?(console.log("\u2705 Codev VSCode extension installed successfully"),!0):(console.warn("\u274C Failed to install Codev VSCode extension"),!1)}catch(e){return console.warn(`Error installing VSCode extension: ${e.message}`),!1}}async isVSCodeAvailable(){try{let e=process.env.IS_AISTUDIO==="True"?["--help"]:["--version"],t=await this.executeVSCodeCommand(e,{timeout:1e4});if(process.env.CODEV_DEBUG&&(console.log(`VSCode availability check (${e.join(" ")}): ${t?"available":"unavailable"}`),process.env.IS_AISTUDIO==="True")){let{spawn:s}=require("child_process");try{s("which",["code"],{stdio:["ignore","pipe","ignore"]}).stdout.on("data",n=>{console.log("which code:",n.toString().trim())})}catch(o){console.log("which command failed:",o.message)}}return t}catch(e){return process.env.CODEV_DEBUG&&console.error("VSCode availability check error:",e.message),!1}}async isExtensionInstalled(){let e=await this.resolveCodeCommand();try{return new Promise(t=>{try{let s={stdio:["ignore","pipe","ignore"],shell:!1,env:{...process.env,PATH:process.env.PATH,HOME:process.env.HOME,USER:process.env.USER}};process.env.CODEV_DEBUG&&console.log(`Spawning: ${e} --list-extensions`);let o=Ge(e,["--list-extensions"],s),n="";o.stdout.on("data",i=>{n+=i.toString()}),o.on("close",i=>{if(i===0){let a=n.split(`
205
- `).map(r=>r.trim());t(a.includes(this.extensionId))}else t(!1)}),o.on("error",i=>{process.env.CODEV_DEBUG&&(console.error("VSCode list extensions error:",i.message),console.error("Error code:",i.code),console.error("Error errno:",i.errno),console.error("Error syscall:",i.syscall)),t(!1)}),setTimeout(()=>{try{o.kill()}catch{}t(!1)},1e4)}catch(s){process.env.CODEV_DEBUG&&console.error("Failed to spawn VSCode list extensions:",s.message),t(!1)}})}catch{return!1}}async executeVSCodeCommand(e,t={}){let s=await this.resolveCodeCommand();return new Promise(o=>{try{let n={stdio:"ignore",shell:!1,env:{...process.env,PATH:process.env.PATH,HOME:process.env.HOME,USER:process.env.USER}};process.env.CODEV_DEBUG&&console.log(`Spawning: ${s} ${e.join(" ")}`);let i=Ge(s,e,n);i.on("close",r=>{o(r===0)}),i.on("error",r=>{process.env.CODEV_DEBUG&&(console.error("VSCode command error:",r.message),console.error("Error code:",r.code),console.error("Error errno:",r.errno),console.error("Error syscall:",r.syscall)),o(!1)});let a=t.timeout||3e4;setTimeout(()=>{try{i.kill()}catch{}o(!1)},a)}catch(n){process.env.CODEV_DEBUG&&console.error("Failed to spawn VSCode command:",n.message),o(!1)}})}async ensureExtensionInstalled(){try{process.env.CODEV_DEBUG&&console.log("VSCode Extension Service: Checking extension status..."),await this.shouldInstallExtension()&&await this.installExtension()}catch(e){process.env.CODEV_DEBUG&&console.error("VSCode Extension Service Error:",e)}}};Ve.exports=X});var je=m((_s,ze)=>{var E=require("fs"),k=require("path"),Ht=require("readline"),{execSync:M}=require("child_process"),We=require("os"),ee=class{constructor(){this.serverUrl="https://makecoder.com/bigapis/codev/v1/coderpub"}getClaudeJsonlPath(e,t=!1){let s=e.replace(/[/_]/g,"-"),o=k.join(We.homedir(),".claude","projects",s);if(t&&(console.log(`
206
- \u{1F4C2} [allow-clone] \u67E5\u627E JSONL \u6587\u4EF6...`),console.log(` \u9879\u76EE\u76EE\u5F55: ${e}`),console.log(` Claude \u9879\u76EE\u540D: ${s}`),console.log(` Claude \u9879\u76EE\u76EE\u5F55: ${o}`)),!E.existsSync(o))return t&&console.log(" \u274C Claude \u9879\u76EE\u76EE\u5F55\u4E0D\u5B58\u5728"),null;t&&console.log(" \u2713 Claude \u9879\u76EE\u76EE\u5F55\u5B58\u5728");try{let n=E.readdirSync(o).filter(i=>i.endsWith(".jsonl")).map(i=>({name:i,path:k.join(o,i),mtime:E.statSync(k.join(o,i)).mtime,size:E.statSync(k.join(o,i)).size})).sort((i,a)=>a.mtime-i.mtime);return t&&(console.log(` \u627E\u5230 ${n.length} \u4E2A JSONL \u6587\u4EF6:`),n.forEach((i,a)=>{let r=(i.size/1024).toFixed(2),c=i.mtime.toLocaleString(),l=a===0?" <- \u6700\u65B0":"";console.log(` ${a+1}. ${i.name} (${r} KB, ${c})${l}`)})),n.length>0?(t&&console.log(` \u2713 \u9009\u62E9\u6700\u65B0\u6587\u4EF6: ${n[0].name}`),n[0].path):(t&&console.log(" \u274C \u76EE\u5F55\u4E2D\u6CA1\u6709 JSONL \u6587\u4EF6"),null)}catch(n){return t&&console.log(` \u274C \u8BFB\u53D6\u76EE\u5F55\u5931\u8D25: ${n.message}`),null}}async promptForName(){let e=Ht.createInterface({input:process.stdin,output:process.stdout});return new Promise((t,s)=>{e.question("\u8BF7\u8F93\u5165\u9879\u76EE\u540D\u79F0 (name): ",o=>{e.close();let n=o.trim();if(!n){s(new Error("\u9879\u76EE\u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A"));return}if(!/^[a-zA-Z0-9_-]+$/.test(n)){s(new Error("\u9879\u76EE\u540D\u79F0\u53EA\u80FD\u5305\u542B\u5B57\u6BCD\u3001\u6570\u5B57\u3001\u4E0B\u5212\u7EBF\u548C\u8FDE\u5B57\u7B26"));return}t(n)})})}async createZip(e,t={}){let{allowClone:s=!1}=t,o=We.tmpdir(),n=`coder-pub-${Date.now()}.zip`,i=k.join(o,n);try{let a=!1;if(E.existsSync(k.join(e,".git")))try{M(`git archive -o "${i}" HEAD`,{cwd:e,stdio:"pipe"}),console.log("\u{1F4E6} \u4F7F\u7528 git archive \u521B\u5EFA\u538B\u7F29\u5305\uFF08\u5DF2\u6392\u9664 .gitignore \u4E2D\u7684\u6587\u4EF6\uFF09"),a=!0}catch{console.log("\u26A0\uFE0F git archive \u5931\u8D25\uFF0C\u4F7F\u7528\u666E\u901A zip \u547D\u4EE4")}if(!a){let c=[".git/*","node_modules/*",".env",".env.*","*.log",".DS_Store"].map(l=>`-x "${l}"`).join(" ");M(`zip -r "${i}" . ${c}`,{cwd:e,stdio:"pipe"}),console.log("\u{1F4E6} \u5DF2\u521B\u5EFA\u538B\u7F29\u5305")}if(s){console.log(`
207
- \u{1F504} [allow-clone] \u5F00\u59CB\u5904\u7406 AI \u751F\u6210\u8BB0\u5F55...`);let r=this.getClaudeJsonlPath(e,!0);if(r){let c=k.join(o,"coder.pub.jsonl"),h=(E.statSync(r).size/1024).toFixed(2);console.log(`
208
- \u{1F4E6} [allow-clone] \u6253\u5305 JSONL \u6587\u4EF6...`),console.log(` \u6E90\u6587\u4EF6: ${r}`),console.log(` \u6587\u4EF6\u5927\u5C0F: ${h} KB`),console.log(` \u4E34\u65F6\u6587\u4EF6: ${c}`),E.copyFileSync(r,c),console.log(" \u2713 \u5DF2\u590D\u5236\u5230\u4E34\u65F6\u76EE\u5F55"),console.log(` \u76EE\u6807 ZIP: ${i}`),console.log(" \u76EE\u6807\u6587\u4EF6\u540D: coder.pub.jsonl"),M(`zip -j "${i}" "${c}"`,{stdio:"pipe"}),console.log(" \u2713 \u5DF2\u6DFB\u52A0\u5230 ZIP \u5305"),E.unlinkSync(c),console.log(" \u2713 \u5DF2\u6E05\u7406\u4E34\u65F6\u6587\u4EF6"),console.log(`\u{1F4CB} [allow-clone] AI \u751F\u6210\u8BB0\u5F55\u5904\u7406\u5B8C\u6210 (coder.pub.jsonl)
209
+ `).map(r=>r.trim());t(a.includes(this.extensionId))}else t(!1)}),o.on("error",i=>{process.env.CODEV_DEBUG&&(console.error("VSCode list extensions error:",i.message),console.error("Error code:",i.code),console.error("Error errno:",i.errno),console.error("Error syscall:",i.syscall)),t(!1)}),setTimeout(()=>{try{o.kill()}catch{}t(!1)},1e4)}catch(s){process.env.CODEV_DEBUG&&console.error("Failed to spawn VSCode list extensions:",s.message),t(!1)}})}catch{return!1}}async executeVSCodeCommand(e,t={}){let s=await this.resolveCodeCommand();return new Promise(o=>{try{let n={stdio:"ignore",shell:!1,env:{...process.env,PATH:process.env.PATH,HOME:process.env.HOME,USER:process.env.USER}};process.env.CODEV_DEBUG&&console.log(`Spawning: ${s} ${e.join(" ")}`);let i=Ge(s,e,n);i.on("close",r=>{o(r===0)}),i.on("error",r=>{process.env.CODEV_DEBUG&&(console.error("VSCode command error:",r.message),console.error("Error code:",r.code),console.error("Error errno:",r.errno),console.error("Error syscall:",r.syscall)),o(!1)});let a=t.timeout||3e4;setTimeout(()=>{try{i.kill()}catch{}o(!1)},a)}catch(n){process.env.CODEV_DEBUG&&console.error("Failed to spawn VSCode command:",n.message),o(!1)}})}async ensureExtensionInstalled(){try{process.env.CODEV_DEBUG&&console.log("VSCode Extension Service: Checking extension status..."),await this.shouldInstallExtension()&&await this.installExtension()}catch(e){process.env.CODEV_DEBUG&&console.error("VSCode Extension Service Error:",e)}}};Ve.exports=X});var je=m((_s,ze)=>{var E=require("fs"),$=require("path"),Ht=require("readline"),{execSync:B}=require("child_process"),We=require("os"),ee=class{constructor(){this.serverUrl="https://makecoder.com/bigapis/codev/v1/coderpub"}getClaudeJsonlPath(e,t=!1){let s=e.replace(/[/_]/g,"-"),o=$.join(We.homedir(),".claude","projects",s);if(t&&(console.log(`
210
+ \u{1F4C2} [allow-clone] \u67E5\u627E JSONL \u6587\u4EF6...`),console.log(` \u9879\u76EE\u76EE\u5F55: ${e}`),console.log(` Claude \u9879\u76EE\u540D: ${s}`),console.log(` Claude \u9879\u76EE\u76EE\u5F55: ${o}`)),!E.existsSync(o))return t&&console.log(" \u274C Claude \u9879\u76EE\u76EE\u5F55\u4E0D\u5B58\u5728"),null;t&&console.log(" \u2713 Claude \u9879\u76EE\u76EE\u5F55\u5B58\u5728");try{let n=E.readdirSync(o).filter(i=>i.endsWith(".jsonl")).map(i=>({name:i,path:$.join(o,i),mtime:E.statSync($.join(o,i)).mtime,size:E.statSync($.join(o,i)).size})).sort((i,a)=>a.mtime-i.mtime);return t&&(console.log(` \u627E\u5230 ${n.length} \u4E2A JSONL \u6587\u4EF6:`),n.forEach((i,a)=>{let r=(i.size/1024).toFixed(2),c=i.mtime.toLocaleString(),l=a===0?" <- \u6700\u65B0":"";console.log(` ${a+1}. ${i.name} (${r} KB, ${c})${l}`)})),n.length>0?(t&&console.log(` \u2713 \u9009\u62E9\u6700\u65B0\u6587\u4EF6: ${n[0].name}`),n[0].path):(t&&console.log(" \u274C \u76EE\u5F55\u4E2D\u6CA1\u6709 JSONL \u6587\u4EF6"),null)}catch(n){return t&&console.log(` \u274C \u8BFB\u53D6\u76EE\u5F55\u5931\u8D25: ${n.message}`),null}}async promptForName(){let e=Ht.createInterface({input:process.stdin,output:process.stdout});return new Promise((t,s)=>{e.question("\u8BF7\u8F93\u5165\u9879\u76EE\u540D\u79F0 (name): ",o=>{e.close();let n=o.trim();if(!n){s(new Error("\u9879\u76EE\u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A"));return}if(!/^[a-zA-Z0-9_-]+$/.test(n)){s(new Error("\u9879\u76EE\u540D\u79F0\u53EA\u80FD\u5305\u542B\u5B57\u6BCD\u3001\u6570\u5B57\u3001\u4E0B\u5212\u7EBF\u548C\u8FDE\u5B57\u7B26"));return}t(n)})})}async createZip(e,t={}){let{allowClone:s=!1}=t,o=We.tmpdir(),n=`coder-pub-${Date.now()}.zip`,i=$.join(o,n);try{let a=!1;if(E.existsSync($.join(e,".git")))try{B(`git archive -o "${i}" HEAD`,{cwd:e,stdio:"pipe"}),console.log("\u{1F4E6} \u4F7F\u7528 git archive \u521B\u5EFA\u538B\u7F29\u5305\uFF08\u5DF2\u6392\u9664 .gitignore \u4E2D\u7684\u6587\u4EF6\uFF09"),a=!0}catch{console.log("\u26A0\uFE0F git archive \u5931\u8D25\uFF0C\u4F7F\u7528\u666E\u901A zip \u547D\u4EE4")}if(!a){let c=[".git/*","node_modules/*",".env",".env.*","*.log",".DS_Store"].map(l=>`-x "${l}"`).join(" ");B(`zip -r "${i}" . ${c}`,{cwd:e,stdio:"pipe"}),console.log("\u{1F4E6} \u5DF2\u521B\u5EFA\u538B\u7F29\u5305")}if(s){console.log(`
211
+ \u{1F504} [allow-clone] \u5F00\u59CB\u5904\u7406 AI \u751F\u6210\u8BB0\u5F55...`);let r=this.getClaudeJsonlPath(e,!0);if(r){let c=$.join(o,"coder.pub.jsonl"),h=(E.statSync(r).size/1024).toFixed(2);console.log(`
212
+ \u{1F4E6} [allow-clone] \u6253\u5305 JSONL \u6587\u4EF6...`),console.log(` \u6E90\u6587\u4EF6: ${r}`),console.log(` \u6587\u4EF6\u5927\u5C0F: ${h} KB`),console.log(` \u4E34\u65F6\u6587\u4EF6: ${c}`),E.copyFileSync(r,c),console.log(" \u2713 \u5DF2\u590D\u5236\u5230\u4E34\u65F6\u76EE\u5F55"),console.log(` \u76EE\u6807 ZIP: ${i}`),console.log(" \u76EE\u6807\u6587\u4EF6\u540D: coder.pub.jsonl"),B(`zip -j "${i}" "${c}"`,{stdio:"pipe"}),console.log(" \u2713 \u5DF2\u6DFB\u52A0\u5230 ZIP \u5305"),E.unlinkSync(c),console.log(" \u2713 \u5DF2\u6E05\u7406\u4E34\u65F6\u6587\u4EF6"),console.log(`\u{1F4CB} [allow-clone] AI \u751F\u6210\u8BB0\u5F55\u5904\u7406\u5B8C\u6210 (coder.pub.jsonl)
209
213
  `)}else console.log(`\u26A0\uFE0F [allow-clone] \u672A\u627E\u5230 Claude Code \u751F\u6210\u8BB0\u5F55
210
- `)}return i}catch(a){throw new Error(`\u521B\u5EFA\u538B\u7F29\u5305\u5931\u8D25: ${a.message}`)}}async upload(e,t,s,o,n,i=!1){let a=n?`${n}/coderpub`:this.serverUrl,r=`${s}.${o}`;console.log("\u{1F4E4} \u6B63\u5728\u4E0A\u4F20\u5230\u670D\u52A1\u5668..."),i&&(console.log(` \u670D\u52A1\u5668\u5730\u5740: ${a}`),console.log(` \u9879\u76EE\u540D\u79F0: ${t}`),console.log(` ZIP \u6587\u4EF6: ${e}`));try{let c=`curl -s -X POST "${a}" -H "Authorization: Bearer ${r}" -F "name=${t}" -F "zip_file=@${e}"`;i&&console.log(" \u6267\u884C\u4E0A\u4F20\u547D\u4EE4...");let l=M(c,{encoding:"utf-8",stdio:["pipe","pipe","pipe"]});return i&&console.log(" \u2713 \u4E0A\u4F20\u5B8C\u6210\uFF0C\u89E3\u6790\u54CD\u5E94..."),JSON.parse(l)}catch(c){if(c.stdout)try{return JSON.parse(c.stdout)}catch{throw new Error(`\u4E0A\u4F20\u5931\u8D25: ${c.message}`)}throw new Error(`\u4E0A\u4F20\u5931\u8D25: ${c.message}`)}}cleanup(e){try{E.existsSync(e)&&E.unlinkSync(e)}catch{}}async publish(e){let{ak:t,sk:s,serverBaseUrl:o,allowClone:n}=e,{name:i}=e,a=null;try{i||(i=await this.promptForName()),console.log(`
214
+ `)}return i}catch(a){throw new Error(`\u521B\u5EFA\u538B\u7F29\u5305\u5931\u8D25: ${a.message}`)}}async upload(e,t,s,o,n,i=!1){let a=n?`${n}/coderpub`:this.serverUrl,r=`${s}.${o}`;console.log("\u{1F4E4} \u6B63\u5728\u4E0A\u4F20\u5230\u670D\u52A1\u5668..."),i&&(console.log(` \u670D\u52A1\u5668\u5730\u5740: ${a}`),console.log(` \u9879\u76EE\u540D\u79F0: ${t}`),console.log(` ZIP \u6587\u4EF6: ${e}`));try{let c=`curl -s -X POST "${a}" -H "Authorization: Bearer ${r}" -F "name=${t}" -F "zip_file=@${e}"`;i&&console.log(" \u6267\u884C\u4E0A\u4F20\u547D\u4EE4...");let l=B(c,{encoding:"utf-8",stdio:["pipe","pipe","pipe"]});return i&&console.log(" \u2713 \u4E0A\u4F20\u5B8C\u6210\uFF0C\u89E3\u6790\u54CD\u5E94..."),JSON.parse(l)}catch(c){if(c.stdout)try{return JSON.parse(c.stdout)}catch{throw new Error(`\u4E0A\u4F20\u5931\u8D25: ${c.message}`)}throw new Error(`\u4E0A\u4F20\u5931\u8D25: ${c.message}`)}}cleanup(e){try{E.existsSync(e)&&E.unlinkSync(e)}catch{}}async publish(e){let{ak:t,sk:s,serverBaseUrl:o,allowClone:n}=e,{name:i}=e,a=null;try{i||(i=await this.promptForName()),console.log(`
211
215
  \u{1F680} \u6B63\u5728\u53D1\u5E03\u9879\u76EE: ${i}`),console.log(`\u{1F4C1} \u76EE\u5F55: ${process.cwd()}`),n&&console.log("\u{1F513} allow-clone: \u542F\u7528 (\u5C06\u5305\u542B AI \u751F\u6210\u8BB0\u5F55)"),console.log(),a=await this.createZip(process.cwd(),{allowClone:n});let c=(E.statSync(a).size/(1024*1024)).toFixed(2);console.log(`\u{1F4CA} \u538B\u7F29\u5305\u5927\u5C0F: ${c} MB`),n&&console.log(`
212
216
  \u{1F310} [allow-clone] \u5F00\u59CB\u4E0A\u4F20\u5230\u670D\u52A1\u5668...`);let l=await this.upload(a,i,t,s,o,n);return l.code===0?(console.log(`
213
217
  \u2705 \u53D1\u5E03\u6210\u529F!`),console.log(`\u{1F4CC} \u7248\u672C: ${l.data.version}`),console.log(`\u{1F310} \u8BBF\u95EE\u5730\u5740: https://${i}.coder.pub/`),0):(console.error(`
@@ -216,20 +220,20 @@ Terminating ...`),h.kill("SIGTERM"),setTimeout(()=>{h.killed||h.kill("SIGKILL")}
216
220
  Content-Length: ${a.length}\r
217
221
  Connection: close\r
218
222
  \r
219
- `+a;this.remote.write(r),this.remote.end(),s();return}}}s(null,e)}},ie=class extends se{constructor(e={}){super(e),this.opts=e,this.destroyed=!1}destroy(){this.destroyed=!0,this.removeAllListeners()}_safeEmit(e,...t){this.destroyed||this.emit(e,...t)}open(){if(this.destroyed)return;let e=this.opts,t=e.ws_url,s=e.local_host||"localhost",o=e.local_port,n=e.allow_invalid_cert,i={};e.authorization&&(i.AUTHORIZATION=e.authorization);let a=this._safeEmit.bind(this);Wt(t,i).then(r=>{if(this.destroyed){r.destroy();return}r.on("error",l=>{a("error",new Error(`remote error: ${l.message||l.code||l}`)),r.end()}),r.on("data",l=>{let h=l.toString().match(/^(\w+) (\S+)/);h&&a("request",{method:h[1],path:h[2]})}),a("open",r);let c=()=>{if(this.destroyed||r.destroyed){a("dead");return}r.pause();let l=()=>n?{rejectUnauthorized:!1}:{cert:te.readFileSync(e.local_cert),key:te.readFileSync(e.local_key),ca:e.local_ca?[te.readFileSync(e.local_ca)]:void 0},h=e.local_https?Kt.connect({host:s,port:o,...l()}):Vt.connect({host:s,port:o}),u=()=>{a("dead"),h.end()};r.once("close",u),h.on("error",g=>{if(a("info",`local connection error: ${g.message||g.code||g} (${s}:${o})`),h.end(),r.removeListener("close",u),g.code!=="ECONNREFUSED"&&g.code!=="ECONNRESET")return r.end();setTimeout(c,1e3)}),h.once("connect",()=>{r.resume();let g=r,S=()=>{};if(e.local_host){let y=new ne({host:e.local_host});y.on("error",S),g=g.pipe(y)}if(e.allowed_paths&&e.allowed_paths.length>0){let y=new re({allowedPaths:e.allowed_paths,remote:r});y.on("error",S),g=g.pipe(y)}g.pipe(h).pipe(r)})};c()}).catch(r=>{a("error",new Error(`WebSocket connect failed: ${r.message||r}`)),a("dead")})}},ae=class extends se{constructor(e={}){super(e),this.opts=e,this.closed=!1,this.opts.host||(this.opts.host=et)}_getInfo(e){let{id:t,url:s,cached_url:o,max_conn_count:n,token:i}=e,{host:a,port:r,local_host:c}=this.opts,{local_https:l,local_cert:h,local_key:u,local_ca:g,allow_invalid_cert:S,allowed_paths:y,authorization:x}=this.opts,D=new Qe(a),C=`${D.protocol==="https:"?"wss:":"ws:"}//${D.host}/tunnel/${t}${i?`?token=${i}`:""}`;return{name:t,url:s,cached_url:o,max_conn:n||1,ws_url:C,authorization:x,local_port:r,local_host:c,local_https:l,local_cert:h,local_key:u,local_ca:g,allow_invalid_cert:S,allowed_paths:y}}_init(e){let t=this.opts,s=this._getInfo.bind(this),o=`${t.host}/`,n=t.subdomain,i=o+(n||"?new"),a=()=>{let r=i.startsWith("https")?Xe:Ze,c={headers:{}};t.authorization&&(c.headers.AUTHORIZATION=t.authorization),r.get(i,c,l=>{let h="";l.on("data",u=>{h+=u}),l.on("end",()=>{if(l.statusCode!==200){let u=`tunnel server error (${l.statusCode})`;try{let g=JSON.parse(h);g&&g.message?u+=`: ${g.message}`:u+=`: ${h}`}catch{h&&(u+=`: ${h}`)}return e(new Error(u))}try{let u=JSON.parse(h);e(null,s(u))}catch(u){e(new Error(`Invalid response from tunnel server: ${u.message}`))}})}).on("error",l=>{console.error(`\u26A0\uFE0F tunnel server unreachable: ${l.message||l.code||l}, retrying in 1s...`),setTimeout(a,1e3)})};a()}_establish(e){this.setMaxListeners(e.max_conn+(se.defaultMaxListeners||10)),this.tunnelCluster=new ie(e),this.tunnelCluster.once("open",()=>{this.emit("url",e.url)}),this.tunnelCluster.on("info",n=>{this.emit("info",n)});let t=0,s=!1,o=1e3;this.tunnelCluster.on("error",n=>{let i=n.message||"";if(i.includes("(403)")){this.emit("error",n),this.close();return}if(i.includes("WebSocket upgrade failed")&&!s){s=!0,this._reconnect();return}o=Math.min(o*1.5,3e4),this.emit("error",n)}),this.tunnelCluster.on("open",n=>{t++,o=1e3;let i=()=>{n.destroy()};if(this.closed)return i();this.once("close",i),n.once("close",()=>{this.removeListener("close",i)})}),this.tunnelCluster.on("dead",()=>{t--,!(this.closed||s)&&setTimeout(()=>{this.closed||s||this.tunnelCluster&&!this.tunnelCluster.destroyed&&this.tunnelCluster.open()},o)}),this.tunnelCluster.on("request",n=>{this.emit("request",n)});for(let n=0;n<e.max_conn;++n)this.tunnelCluster.open()}_reconnect(){if(this.closed)return;this.tunnelCluster&&(this.tunnelCluster.destroy(),this.tunnelCluster=null);let e=3e3,t=()=>{this.closed||(this.emit("info","re-registering with tunnel server..."),this._init((s,o)=>{if(s){this.emit("error",new Error(`re-registration failed: ${s.message}`)),e=Math.min(e*1.5,3e4),this.emit("info",`retrying in ${(e/1e3).toFixed(0)}s...`),setTimeout(t,e);return}this.clientId=o.name;let n=this.url;this.url=o.url,o.cached_url&&(this.cachedUrl=o.cached_url),this.url!==n&&this.emit("error",new Error(`tunnel URL changed: ${n} -> ${this.url}`)),this._establish(o),this.tunnelCluster.once("open",()=>{this.emit("reconnected",this.url)})}))};this.emit("error",new Error("lost connection to tunnel server, reconnecting...")),setTimeout(t,e)}open(e){this._init((t,s)=>{if(t)return e(t);this.clientId=s.name,this.url=s.url,s.cached_url&&(this.cachedUrl=s.cached_url),this._establish(s),e()})}close(){this.closed=!0,this.emit("close")}},ce=class{constructor(){this.tunnel=null}async start(e){process.on("uncaughtException",u=>{let g=new Date().toLocaleTimeString();console.error(` ${g} \u26A0\uFE0F uncaught: ${u&&u.stack?u.stack:u}`)}),process.on("unhandledRejection",u=>{let g=new Date().toLocaleTimeString();console.error(` ${g} \u26A0\uFE0F unhandled rejection: ${u&&u.stack?u.stack:u}`)}),process.on("exit",u=>{console.error(`
223
+ `+a;this.remote.write(r),this.remote.end(),s();return}}}s(null,e)}},ie=class extends se{constructor(e={}){super(e),this.opts=e,this.destroyed=!1}destroy(){this.destroyed=!0,this.removeAllListeners()}_safeEmit(e,...t){this.destroyed||this.emit(e,...t)}open(){if(this.destroyed)return;let e=this.opts,t=e.ws_url,s=e.local_host||"localhost",o=e.local_port,n=e.allow_invalid_cert,i={};e.authorization&&(i.AUTHORIZATION=e.authorization);let a=this._safeEmit.bind(this);Wt(t,i).then(r=>{if(this.destroyed){r.destroy();return}r.on("error",l=>{a("error",new Error(`remote error: ${l.message||l.code||l}`)),r.end()}),r.on("data",l=>{let h=l.toString().match(/^(\w+) (\S+)/);h&&a("request",{method:h[1],path:h[2]})}),a("open",r);let c=()=>{if(this.destroyed||r.destroyed){a("dead");return}r.pause();let l=()=>n?{rejectUnauthorized:!1}:{cert:te.readFileSync(e.local_cert),key:te.readFileSync(e.local_key),ca:e.local_ca?[te.readFileSync(e.local_ca)]:void 0},h=e.local_https?Kt.connect({host:s,port:o,...l()}):Vt.connect({host:s,port:o}),u=()=>{a("dead"),h.end()};r.once("close",u),h.on("error",g=>{if(a("info",`local connection error: ${g.message||g.code||g} (${s}:${o})`),h.end(),r.removeListener("close",u),g.code!=="ECONNREFUSED"&&g.code!=="ECONNRESET")return r.end();setTimeout(c,1e3)}),h.once("connect",()=>{r.resume();let g=r,S=()=>{};if(e.local_host){let y=new ne({host:e.local_host});y.on("error",S),g=g.pipe(y)}if(e.allowed_paths&&e.allowed_paths.length>0){let y=new re({allowedPaths:e.allowed_paths,remote:r});y.on("error",S),g=g.pipe(y)}g.pipe(h).pipe(r)})};c()}).catch(r=>{a("error",new Error(`WebSocket connect failed: ${r.message||r}`)),a("dead")})}},ae=class extends se{constructor(e={}){super(e),this.opts=e,this.closed=!1,this.opts.host||(this.opts.host=et)}_getInfo(e){let{id:t,url:s,cached_url:o,max_conn_count:n,token:i}=e,{host:a,port:r,local_host:c}=this.opts,{local_https:l,local_cert:h,local_key:u,local_ca:g,allow_invalid_cert:S,allowed_paths:y,authorization:_}=this.opts,D=new Qe(a),C=`${D.protocol==="https:"?"wss:":"ws:"}//${D.host}/tunnel/${t}${i?`?token=${i}`:""}`;return{name:t,url:s,cached_url:o,max_conn:n||1,ws_url:C,authorization:_,local_port:r,local_host:c,local_https:l,local_cert:h,local_key:u,local_ca:g,allow_invalid_cert:S,allowed_paths:y}}_init(e){let t=this.opts,s=this._getInfo.bind(this),o=`${t.host}/`,n=t.subdomain,i=o+(n||"?new"),a=()=>{let r=i.startsWith("https")?Xe:Ze,c={headers:{}};t.authorization&&(c.headers.AUTHORIZATION=t.authorization),r.get(i,c,l=>{let h="";l.on("data",u=>{h+=u}),l.on("end",()=>{if(l.statusCode!==200){let u=`tunnel server error (${l.statusCode})`;try{let g=JSON.parse(h);g&&g.message?u+=`: ${g.message}`:u+=`: ${h}`}catch{h&&(u+=`: ${h}`)}return e(new Error(u))}try{let u=JSON.parse(h);e(null,s(u))}catch(u){e(new Error(`Invalid response from tunnel server: ${u.message}`))}})}).on("error",l=>{console.error(`\u26A0\uFE0F tunnel server unreachable: ${l.message||l.code||l}, retrying in 1s...`),setTimeout(a,1e3)})};a()}_establish(e){this.setMaxListeners(e.max_conn+(se.defaultMaxListeners||10)),this.tunnelCluster=new ie(e),this.tunnelCluster.once("open",()=>{this.emit("url",e.url)}),this.tunnelCluster.on("info",n=>{this.emit("info",n)});let t=0,s=!1,o=1e3;this.tunnelCluster.on("error",n=>{let i=n.message||"";if(i.includes("(403)")){this.emit("error",n),this.close();return}if(i.includes("WebSocket upgrade failed")&&!s){s=!0,this._reconnect();return}o=Math.min(o*1.5,3e4),this.emit("error",n)}),this.tunnelCluster.on("open",n=>{t++,o=1e3;let i=()=>{n.destroy()};if(this.closed)return i();this.once("close",i),n.once("close",()=>{this.removeListener("close",i)})}),this.tunnelCluster.on("dead",()=>{t--,!(this.closed||s)&&setTimeout(()=>{this.closed||s||this.tunnelCluster&&!this.tunnelCluster.destroyed&&this.tunnelCluster.open()},o)}),this.tunnelCluster.on("request",n=>{this.emit("request",n)});for(let n=0;n<e.max_conn;++n)this.tunnelCluster.open()}_reconnect(){if(this.closed)return;this.tunnelCluster&&(this.tunnelCluster.destroy(),this.tunnelCluster=null);let e=3e3,t=()=>{this.closed||(this.emit("info","re-registering with tunnel server..."),this._init((s,o)=>{if(s){this.emit("error",new Error(`re-registration failed: ${s.message}`)),e=Math.min(e*1.5,3e4),this.emit("info",`retrying in ${(e/1e3).toFixed(0)}s...`),setTimeout(t,e);return}this.clientId=o.name;let n=this.url;this.url=o.url,o.cached_url&&(this.cachedUrl=o.cached_url),this.url!==n&&this.emit("error",new Error(`tunnel URL changed: ${n} -> ${this.url}`)),this._establish(o),this.tunnelCluster.once("open",()=>{this.emit("reconnected",this.url)})}))};this.emit("error",new Error("lost connection to tunnel server, reconnecting...")),setTimeout(t,e)}open(e){this._init((t,s)=>{if(t)return e(t);this.clientId=s.name,this.url=s.url,s.cached_url&&(this.cachedUrl=s.cached_url),this._establish(s),e()})}close(){this.closed=!0,this.emit("close")}},ce=class{constructor(){this.tunnel=null}async start(e){process.on("uncaughtException",u=>{let g=new Date().toLocaleTimeString();console.error(` ${g} \u26A0\uFE0F uncaught: ${u&&u.stack?u.stack:u}`)}),process.on("unhandledRejection",u=>{let g=new Date().toLocaleTimeString();console.error(` ${g} \u26A0\uFE0F unhandled rejection: ${u&&u.stack?u.stack:u}`)}),process.on("exit",u=>{console.error(`
220
224
  \u26A0\uFE0F process exiting (code=${u})`)}),this._keepalive=setInterval(()=>{},6e4);let{port:t,name:s,localHost:o,allowedPaths:n,printRequests:i,ak:a,sk:r}=e,c=e.host||et;console.log(`
221
225
  \u{1F687} Starting tunnel...`),console.log(` Local: localhost:${t}`),console.log(` Server: ${c}`),n&&n.length>0&&console.log(` Paths: ${n.join(", ")}`),console.log();let l={port:t,host:c,local_host:o,allowed_paths:n&&n.length>0?n:null,authorization:a&&r?`Bearer ${a}.${r}`:null};s&&(l.subdomain=s);let h=new ae(l);return new Promise((u,g)=>{h.open(S=>{if(S){console.error(`\u274C Failed to establish tunnel: ${S.message}`),g(S);return}this.tunnel=h,console.log(`\u2705 Tunnel established!
222
226
  `),console.log(` \u{1F310} Public URL: \x1B[36m\x1B[1m${h.url}\x1B[0m
223
227
  `),h.cachedUrl&&console.log(` \u{1F4E6} Cached URL: ${h.cachedUrl}
224
228
  `),console.log(` Press \x1B[1mCtrl+C\x1B[0m to close the tunnel.
225
- `),i&&h.on("request",v=>{let C=new Date().toLocaleTimeString();console.log(` ${C} ${v.method} ${v.path}`)});let y="",x=0;h.on("error",v=>{let C=v.message;if(C===y){x++;return}if(x>0){let it=new Date().toLocaleTimeString();console.error(` ${it} \u26A0\uFE0F (repeated ${x} more times)`)}y=C,x=0;let rt=new Date().toLocaleTimeString();console.error(` ${rt} \u26A0\uFE0F ${C}`)}),h.on("info",v=>{if(process.env.CODEV_DEBUG){let C=new Date().toLocaleTimeString();console.log(` ${C} \u2139\uFE0F ${v}`)}}),h.on("close",()=>{console.error(`
229
+ `),i&&h.on("request",v=>{let C=new Date().toLocaleTimeString();console.log(` ${C} ${v.method} ${v.path}`)});let y="",_=0;h.on("error",v=>{let C=v.message;if(C===y){_++;return}if(_>0){let it=new Date().toLocaleTimeString();console.error(` ${it} \u26A0\uFE0F (repeated ${_} more times)`)}y=C,_=0;let rt=new Date().toLocaleTimeString();console.error(` ${rt} \u26A0\uFE0F ${C}`)}),h.on("info",v=>{if(process.env.CODEV_DEBUG){let C=new Date().toLocaleTimeString();console.log(` ${C} \u2139\uFE0F ${v}`)}}),h.on("close",()=>{console.error(`
226
230
  \u274C Tunnel closed.`),clearInterval(this._keepalive),process.exit(1)}),h.on("reconnected",v=>{let C=new Date().toLocaleTimeString();console.log(`
227
231
  ${C} \u2705 Tunnel reconnected!`),console.log(` \u{1F310} Public URL: \x1B[36m\x1B[1m${v}\x1B[0m
228
- `),y="",x=0});let D=()=>{console.log(`
232
+ `),y="",_=0});let D=()=>{console.log(`
229
233
 
230
234
  \u{1F50C} Closing tunnel...`),clearInterval(this._keepalive),h.close(),process.exit(0)};process.on("SIGINT",D),process.on("SIGTERM",D),u()})})}};tt.exports=ce});var nt=m((Is,ot)=>{var zt=we(),jt=Me(),Jt=Le(),Qt=Ne(),Yt=Ke(),Zt=je(),Xt=st(),{isPrintMode:es}=U(),le=class{constructor(){this.argParser=new zt,this.claudeLauncher=new jt,this.geminiLauncher=new Jt,this.codexLauncher=new Qt,this.vscodeExtensionService=new Yt,this.publishService=new Zt,this.tunnelService=new Xt}async run(e=process.argv.slice(2)){try{try{await this.vscodeExtensionService.ensureExtensionInstalled()}catch(s){process.env.CODEV_DEBUG&&console.error("VSCode Extension Service Error:",s)}if(!e.includes("--agent")&&!e.includes("-a")){let s=e.length>0&&["claude","gemini","codex"].includes(e[0]),o=e.length>0&&["pub","tunnel"].includes(e[0]);if(!s&&!o&&(e.includes("--help")||e.includes("-h")))return this.argParser.showHelp(),0;if(!s&&!o&&(e.includes("--version")||e.includes("-v")))return this.showVersion(),0}let t=await this.argParser.parse(e);return t.command==="login"?await this.handleLogin(t):t.command==="pub"?await this.publishService.publish({name:t.pubName,ak:t.auth_ak,sk:t.auth_sk,serverBaseUrl:t.codevServer,allowClone:t.allowClone}):t.command==="tunnel"?t.tunnelHelp?(this.showTunnelHelp(),0):(await this.tunnelService.start({...t.tunnelArgs,ak:t.auth_ak,sk:t.auth_sk}),await new Promise(()=>{})):await this.launchAgent(t)}catch(t){return console.error(`Error: ${t.message}`),process.env.CODEV_DEBUG&&console.error("Stack trace:",t.stack),1}}async launchAgent(e){let{agent:t,remainingArgs:s}=e;return es(s)||console.log(`cwd:\x1B[90m\x1B[3m ${process.cwd()} \x1B[0m`),t==="claude"?await this.claudeLauncher.launch(e):t==="gemini"?await this.geminiLauncher.launch(e):t==="codex"?await this.codexLauncher.launch(e):1}async handleLogin(e){let t=e.auth_ak,s=e.auth_sk;if(!t||!s){console.log(`
231
235
  \u{1F511} \u8BF7\u5148\u5728 MakeCoder \u521B\u5EFA API Key\uFF1A`),console.log(` \u{1F449} https://makecoder.com/my/apikeys
232
- `);try{let n=await this.argParser.promptForAKSK();t=n.ak,s=n.sk}catch(n){return console.error(`\u274C ${n.message}`),1}}if(this.argParser.saveAuthToConfig(t,s))console.log("\u2705 API Key \u5DF2\u4FDD\u5B58\u5230 ~/.coder/config.json"),console.log(" \u73B0\u5728\u53EF\u4EE5\u76F4\u63A5\u8FD0\u884C coder \u5F00\u59CB\u4F7F\u7528\u4E86 \u{1F680}");else return console.error("\u274C \u4FDD\u5B58\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5 ~/.coder/ \u76EE\u5F55\u7684\u6587\u4EF6\u6743\u9650"),1;return 0}showVersion(){let e=G();console.log(`coder version: ${e.version}`)}showTunnelHelp(){console.log(`
236
+ `);try{let n=await this.argParser.promptForAKSK();t=n.ak,s=n.sk}catch(n){return console.error(`\u274C ${n.message}`),1}}if(this.argParser.saveAuthToConfig(t,s))console.log("\u2705 API Key \u5DF2\u4FDD\u5B58\u5230 ~/.coder/config.json"),console.log(" \u73B0\u5728\u53EF\u4EE5\u76F4\u63A5\u8FD0\u884C coder \u5F00\u59CB\u4F7F\u7528\u4E86 \u{1F680}");else return console.error("\u274C \u4FDD\u5B58\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5 ~/.coder/ \u76EE\u5F55\u7684\u6587\u4EF6\u6743\u9650"),1;return 0}showVersion(){let e=V();console.log(`coder version: ${e.version}`)}showTunnelHelp(){console.log(`
233
237
  Coder Tunnel - Expose a local port via tunnel
234
238
 
235
239
  USAGE:
package/dist/gcli.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env -S node --no-warnings=DEP0040
2
2
  const require = (await import('node:module')).createRequire(import.meta.url); const __chunk_filename = (await import('node:url')).fileURLToPath(import.meta.url); const __chunk_dirname = (await import('node:path')).dirname(__chunk_filename);
3
- import{$ as pe,A as Hn,Ba as xe,Ca as Ks,Da as Yn,Ea as gs,Fa as gt,Ga as bl,Ha as wl,Ia as xl,Ib as Pl,Ja as gm,Ka as Fl,La as Sl,Ma as Xs,N as il,Na as Al,O as rl,Oa as _l,Pa as vl,Q as _i,Qa as Kn,S as pn,U as al,V as ul,Va as Ol,Vc as kl,Wc as $l,Xa as Ml,Xc as jl,Y as ll,Yc as Rl,Z as rt,Za as Il,Zc as Js,_a as Tl,a as hm,aa as cl,ad as Nl,ba as Vn,ca as vi,cd as Ll,da as kt,ea as dl,fa as we,ga as fl,gb as Oi,ia as pl,ja as qt,ka as ml,la as Ys,ma as hs,na as Me,pa as hl,qa as Be,ua as gl,v as nl,va as Qt,w as sl,wa as Dl,xa as Cl,y as Vs,ya as El,z as ol,za as yl}from"./chunk-BQWBU2N3.js";import{Ac as gu,Ai as ku,Bg as zn,Cf as i,Df as wu,El as Gu,Fi as xi,Fl as zu,Jg as _u,Ke as Pt,Kf as wi,Kl as Wu,Lh as zs,Ll as qu,Md as Ci,Mh as Tu,Ml as Hu,Nd as Ei,Nl as Vu,Of as xu,Oi as Jt,Ol as Yu,Pd as yi,Pl as Ai,Qk as Ru,Ql as Ku,Rc as Cu,Rk as Nu,Sc as Eu,Te as bu,Ue as bi,Ul as Xu,Vl as qs,Wk as ht,Xl as ze,Yg as it,Yj as ju,Zf as Fu,Zg as vu,Zh as Pu,_b as mu,ab as Wt,ae as yu,am as Ju,bb as Oe,cb as nu,ce as ot,cm as Hs,db as Bs,dm as mm,e as Ja,em as Zu,f as zt,fc as hu,gm as Qu,ic as Gs,ig as Su,ih as Iu,jm as el,nj as Le,nl as Lu,oj as Ze,pm as qn,ql as Fi,qm as tl,rb as su,rk as Wn,sb as fi,sk as Ws,ta as eu,tl as Bu,ug as Au,vb as ou,vl as Zt,wa as tu,wl as fn,xa as di,xl as Si,yb as iu,yl as Uu}from"./chunk-5YMQRNPV.js";import"./chunk-QMSAJYAV.js";import{$ as S,$a as Us,A as Ha,B as Va,C as Ya,Dd as Di,Ea as Ke,Ed as Du,Fa as tt,Hc as pu,Jd as Ou,Kd as Mu,M as Gt,O as _t,Pa as ci,Ra as ru,Sa as au,Ta as uu,Ua as pi,Wa as mi,Xa as hi,Xd as $u,Y as Ka,Ya as gi,_a as ms,a as Tt,ab as lu,ba as Xa,ca as st,ea as se,eb as cu,gb as du,ha as Je,ib as Xt,oa as Za,pa as Qa,r as Ls,sc as fu,t as ue,v as qa,x as ps,y as ve,z as Gn}from"./chunk-GV2WHOHH.js";import"./chunk-TWIC4BKL.js";import"./chunk-JAFVB6DI.js";import"./chunk-A5A5SUZN.js";import{a as de,c as Ge,e as Qe}from"./chunk-YUXORC52.js";var Ul=Ge((vE,Bl)=>{"use strict";var Mi=de("fs"),Dm=de("util"),Cm=de("path"),vt,Ii=class{constructor(e){e=e||{},this.directory=e.directory||"./locales",this.updateFiles=typeof e.updateFiles=="boolean"?e.updateFiles:!0,this.locale=e.locale||"en",this.fallbackToLanguage=typeof e.fallbackToLanguage=="boolean"?e.fallbackToLanguage:!0,this.cache=Object.create(null),this.writeQueue=[]}__(...e){if(typeof arguments[0]!="string")return this._taggedLiteral(arguments[0],...arguments);let t=e.shift(),n=function(){};return typeof e[e.length-1]=="function"&&(n=e.pop()),n=n||function(){},this.cache[this.locale]||this._readLocaleFile(),!this.cache[this.locale][t]&&this.updateFiles?(this.cache[this.locale][t]=t,this._enqueueWrite({directory:this.directory,locale:this.locale,cb:n})):n(),vt.format.apply(vt.format,[this.cache[this.locale][t]||t].concat(e))}__n(){let e=Array.prototype.slice.call(arguments),t=e.shift(),n=e.shift(),o=e.shift(),r=function(){};typeof e[e.length-1]=="function"&&(r=e.pop()),this.cache[this.locale]||this._readLocaleFile();let a=o===1?t:n;this.cache[this.locale][t]&&(a=this.cache[this.locale][t][o===1?"one":"other"]),!this.cache[this.locale][t]&&this.updateFiles?(this.cache[this.locale][t]={one:t,other:n},this._enqueueWrite({directory:this.directory,locale:this.locale,cb:r})):r();let u=[a];return~a.indexOf("%d")&&u.push(o),vt.format.apply(vt.format,u.concat(e))}setLocale(e){this.locale=e}getLocale(){return this.locale}updateLocale(e){this.cache[this.locale]||this._readLocaleFile();for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(this.cache[this.locale][t]=e[t])}_taggedLiteral(e,...t){let n="";return e.forEach(function(o,r){let a=t[r+1];n+=o,typeof a<"u"&&(n+="%s")}),this.__.apply(this,[n].concat([].slice.call(t,1)))}_enqueueWrite(e){this.writeQueue.push(e),this.writeQueue.length===1&&this._processWriteQueue()}_processWriteQueue(){let e=this,t=this.writeQueue[0],n=t.directory,o=t.locale,r=t.cb,a=this._resolveLocaleFile(n,o),u=JSON.stringify(this.cache[o],null,2);vt.fs.writeFile(a,u,"utf-8",function(c){e.writeQueue.shift(),e.writeQueue.length>0&&e._processWriteQueue(),r(c)})}_readLocaleFile(){let e={},t=this._resolveLocaleFile(this.directory,this.locale);try{vt.fs.readFileSync&&(e=JSON.parse(vt.fs.readFileSync(t,"utf-8")))}catch(n){if(n instanceof SyntaxError&&(n.message="syntax error in "+t),n.code==="ENOENT")e={};else throw n}this.cache[this.locale]=e}_resolveLocaleFile(e,t){let n=vt.resolve(e,"./",t+".json");if(this.fallbackToLanguage&&!this._fileExistsSync(n)&&~t.lastIndexOf("_")){let o=vt.resolve(e,"./",t.split("_")[0]+".json");this._fileExistsSync(o)&&(n=o)}return n}_fileExistsSync(e){return vt.exists(e)}};function Em(s,e){vt=e;let t=new Ii(s);return{__:t.__.bind(t),__n:t.__n.bind(t),setLocale:t.setLocale.bind(t),getLocale:t.getLocale.bind(t),updateLocale:t.updateLocale.bind(t),locale:t.locale}}var ym={fs:{readFileSync:Mi.readFileSync,writeFile:Mi.writeFile},format:Dm.format,resolve:Cm.resolve,exists:s=>{try{return Mi.statSync(s).isFile()}catch{return!1}}},bm=s=>Em(s,ym);Bl.exports=bm});var Ri=Ge((OE,Kl)=>{"use strict";var wm=de("util"),Gl=de("path"),xm=de("fs");function Ds(s){if(s!==s.toLowerCase()&&s!==s.toUpperCase()||(s=s.toLowerCase()),s.indexOf("-")===-1&&s.indexOf("_")===-1)return s;{let t="",n=!1,o=s.match(/^-+/);for(let r=o?o[0].length:0;r<s.length;r++){let a=s.charAt(r);n&&(n=!1,a=a.toUpperCase()),r!==0&&(a==="-"||a==="_")?n=!0:a!=="-"&&a!=="_"&&(t+=a)}return t}}function Hl(s,e){let t=s.toLowerCase();e=e||"-";let n="";for(let o=0;o<s.length;o++){let r=t.charAt(o),a=s.charAt(o);r!==a&&o>0?n+=`${e}${t.charAt(o)}`:n+=a}return n}function Vl(s){return s==null?!1:typeof s=="number"||/^0x[0-9a-f]+$/i.test(s)?!0:/^0[^.]/.test(s)?!1:/^[-]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(s)}function Fm(s){if(Array.isArray(s))return s.map(a=>typeof a!="string"?a+"":a);s=s.trim();let e=0,t=null,n=null,o=null,r=[];for(let a=0;a<s.length;a++){if(t=n,n=s.charAt(a),n===" "&&!o){t!==" "&&e++;continue}n===o?o=null:(n==="'"||n==='"')&&!o&&(o=n),r[e]||(r[e]=""),r[e]+=n}return r}var Ot;(function(s){s.BOOLEAN="boolean",s.STRING="string",s.NUMBER="number",s.ARRAY="array"})(Ot||(Ot={}));var Ht,ji=class{constructor(e){Ht=e}parse(e,t){let n=Object.assign({alias:void 0,array:void 0,boolean:void 0,config:void 0,configObjects:void 0,configuration:void 0,coerce:void 0,count:void 0,default:void 0,envPrefix:void 0,narg:void 0,normalize:void 0,string:void 0,number:void 0,__:void 0,key:void 0},t),o=Fm(e),r=typeof e=="string",a=Sm(Object.assign(Object.create(null),n.alias)),u=Object.assign({"boolean-negation":!0,"camel-case-expansion":!0,"combine-arrays":!1,"dot-notation":!0,"duplicate-arguments-array":!0,"flatten-duplicate-arrays":!0,"greedy-arrays":!0,"halt-at-non-option":!1,"nargs-eats-options":!1,"negation-prefix":"no-","parse-numbers":!0,"parse-positional-numbers":!0,"populate--":!1,"set-placeholder-key":!1,"short-option-groups":!0,"strip-aliased":!1,"strip-dashed":!1,"unknown-options-as-args":!1},n.configuration),c=Object.assign(Object.create(null),n.default),d=n.configObjects||[],l=n.envPrefix,m=u["populate--"],D=m?"--":"_",x=Object.create(null),w=Object.create(null),C=n.__||Ht.format,p={aliases:Object.create(null),arrays:Object.create(null),bools:Object.create(null),strings:Object.create(null),numbers:Object.create(null),counts:Object.create(null),normalize:Object.create(null),configs:Object.create(null),nargs:Object.create(null),coercions:Object.create(null),keys:[]},j=/^-([0-9]+(\.[0-9]+)?|\.[0-9]+)$/,O=new RegExp("^--"+u["negation-prefix"]+"(.+)");[].concat(n.array||[]).filter(Boolean).forEach(function(f){let h=typeof f=="object"?f.key:f,_=Object.keys(f).map(function(b){return{boolean:"bools",string:"strings",number:"numbers"}[b]}).filter(Boolean).pop();_&&(p[_][h]=!0),p.arrays[h]=!0,p.keys.push(h)}),[].concat(n.boolean||[]).filter(Boolean).forEach(function(f){p.bools[f]=!0,p.keys.push(f)}),[].concat(n.string||[]).filter(Boolean).forEach(function(f){p.strings[f]=!0,p.keys.push(f)}),[].concat(n.number||[]).filter(Boolean).forEach(function(f){p.numbers[f]=!0,p.keys.push(f)}),[].concat(n.count||[]).filter(Boolean).forEach(function(f){p.counts[f]=!0,p.keys.push(f)}),[].concat(n.normalize||[]).filter(Boolean).forEach(function(f){p.normalize[f]=!0,p.keys.push(f)}),typeof n.narg=="object"&&Object.entries(n.narg).forEach(([f,h])=>{typeof h=="number"&&(p.nargs[f]=h,p.keys.push(f))}),typeof n.coerce=="object"&&Object.entries(n.coerce).forEach(([f,h])=>{typeof h=="function"&&(p.coercions[f]=h,p.keys.push(f))}),typeof n.config<"u"&&(Array.isArray(n.config)||typeof n.config=="string"?[].concat(n.config).filter(Boolean).forEach(function(f){p.configs[f]=!0}):typeof n.config=="object"&&Object.entries(n.config).forEach(([f,h])=>{(typeof h=="boolean"||typeof h=="function")&&(p.configs[f]=h)})),J(n.key,a,n.default,p.arrays),Object.keys(c).forEach(function(f){(p.aliases[f]||[]).forEach(function(h){c[h]=c[f]})});let A=null;Ut();let k=[],L=Object.assign(Object.create(null),{_:[]}),ne={};for(let f=0;f<o.length;f++){let h=o[f],_=h.replace(/^-{3,}/,"---"),b,g,$,I,R,ge;if(h!=="--"&&/^-/.test(h)&&Ce(h))q(h);else if(_.match(/^---+(=|$)/)){q(h);continue}else if(h.match(/^--.+=/)||!u["short-option-groups"]&&h.match(/^-.+=/))I=h.match(/^--?([^=]+)=([\s\S]*)$/),I!==null&&Array.isArray(I)&&I.length>=3&&(v(I[1],p.arrays)?f=B(f,I[1],o,I[2]):v(I[1],p.nargs)!==!1?f=P(f,I[1],o,I[2]):N(I[1],I[2],!0));else if(h.match(O)&&u["boolean-negation"])I=h.match(O),I!==null&&Array.isArray(I)&&I.length>=2&&(g=I[1],N(g,v(g,p.arrays)?[!1]:!1));else if(h.match(/^--.+/)||!u["short-option-groups"]&&h.match(/^-[^-]+/))I=h.match(/^--?(.+)/),I!==null&&Array.isArray(I)&&I.length>=2&&(g=I[1],v(g,p.arrays)?f=B(f,g,o):v(g,p.nargs)!==!1?f=P(f,g,o):(R=o[f+1],R!==void 0&&(!R.match(/^-/)||R.match(j))&&!v(g,p.bools)&&!v(g,p.counts)||/^(true|false)$/.test(R)?(N(g,R),f++):N(g,Ee(g))));else if(h.match(/^-.\..+=/))I=h.match(/^-([^=]+)=([\s\S]*)$/),I!==null&&Array.isArray(I)&&I.length>=3&&N(I[1],I[2]);else if(h.match(/^-.\..+/)&&!h.match(j))R=o[f+1],I=h.match(/^-(.\..+)/),I!==null&&Array.isArray(I)&&I.length>=2&&(g=I[1],R!==void 0&&!R.match(/^-/)&&!v(g,p.bools)&&!v(g,p.counts)?(N(g,R),f++):N(g,Ee(g)));else if(h.match(/^-[^-]+/)&&!h.match(j)){$=h.slice(1,-1).split(""),b=!1;for(let ye=0;ye<$.length;ye++){if(R=h.slice(ye+2),$[ye+1]&&$[ye+1]==="="){ge=h.slice(ye+3),g=$[ye],v(g,p.arrays)?f=B(f,g,o,ge):v(g,p.nargs)!==!1?f=P(f,g,o,ge):N(g,ge),b=!0;break}if(R==="-"){N($[ye],R);continue}if(/[A-Za-z]/.test($[ye])&&/^-?\d+(\.\d*)?(e-?\d+)?$/.test(R)&&v(R,p.bools)===!1){N($[ye],R),b=!0;break}if($[ye+1]&&$[ye+1].match(/\W/)){N($[ye],R),b=!0;break}else N($[ye],Ee($[ye]))}g=h.slice(-1)[0],!b&&g!=="-"&&(v(g,p.arrays)?f=B(f,g,o):v(g,p.nargs)!==!1?f=P(f,g,o):(R=o[f+1],R!==void 0&&(!/^(-|--)[^-]/.test(R)||R.match(j))&&!v(g,p.bools)&&!v(g,p.counts)||/^(true|false)$/.test(R)?(N(g,R),f++):N(g,Ee(g))))}else if(h.match(/^-[0-9]$/)&&h.match(j)&&v(h.slice(1),p.bools))g=h.slice(1),N(g,Ee(g));else if(h==="--"){k=o.slice(f+1);break}else if(u["halt-at-non-option"]){k=o.slice(f);break}else q(h)}X(L,!0),X(L,!1),U(L),W(),me(L,p.aliases,c,!0),De(L),u["set-placeholder-key"]&&Pe(L),Object.keys(p.counts).forEach(function(f){z(L,f.split("."))||N(f,0)}),m&&k.length&&(L[D]=[]),k.forEach(function(f){L[D].push(f)}),u["camel-case-expansion"]&&u["strip-dashed"]&&Object.keys(L).filter(f=>f!=="--"&&f.includes("-")).forEach(f=>{delete L[f]}),u["strip-aliased"]&&[].concat(...Object.keys(a).map(f=>a[f])).forEach(f=>{u["camel-case-expansion"]&&f.includes("-")&&delete L[f.split(".").map(h=>Ds(h)).join(".")],delete L[f]});function q(f){let h=T("_",f);(typeof h=="string"||typeof h=="number")&&L._.push(h)}function P(f,h,_,b){let g,$=v(h,p.nargs);if($=typeof $!="number"||isNaN($)?1:$,$===0)return Se(b)||(A=Error(C("Argument unexpected for: %s",h))),N(h,Ee(h)),f;let I=Se(b)?0:1;if(u["nargs-eats-options"])_.length-(f+1)+I<$&&(A=Error(C("Not enough arguments following: %s",h))),I=$;else{for(g=f+1;g<_.length&&(!_[g].match(/^-[^0-9]/)||_[g].match(j)||Ce(_[g]));g++)I++;I<$&&(A=Error(C("Not enough arguments following: %s",h)))}let R=Math.min(I,$);for(!Se(b)&&R>0&&(N(h,b),R--),g=f+1;g<R+f+1;g++)N(h,_[g]);return f+R}function B(f,h,_,b){let g=[],$=b||_[f+1],I=v(h,p.nargs);if(v(h,p.bools)&&!/^(true|false)$/.test($))g.push(!0);else if(Se($)||Se(b)&&/^-/.test($)&&!j.test($)&&!Ce($)){if(c[h]!==void 0){let R=c[h];g=Array.isArray(R)?R:[R]}}else{Se(b)||g.push(M(h,b,!0));for(let R=f+1;R<_.length&&!(!u["greedy-arrays"]&&g.length>0||I&&typeof I=="number"&&g.length>=I||($=_[R],/^-/.test($)&&!j.test($)&&!Ce($)));R++)f=R,g.push(M(h,$,r))}return typeof I=="number"&&(I&&g.length<I||isNaN(I)&&g.length===0)&&(A=Error(C("Not enough arguments following: %s",h))),N(h,g),f}function N(f,h,_=r){if(/-/.test(f)&&u["camel-case-expansion"]){let $=f.split(".").map(function(I){return Ds(I)}).join(".");F(f,$)}let b=M(f,h,_),g=f.split(".");Q(L,g,b),p.aliases[f]&&p.aliases[f].forEach(function($){let I=$.split(".");Q(L,I,b)}),g.length>1&&u["dot-notation"]&&(p.aliases[g[0]]||[]).forEach(function($){let I=$.split("."),R=[].concat(g);R.shift(),I=I.concat(R),(p.aliases[f]||[]).includes(I.join("."))||Q(L,I,b)}),v(f,p.normalize)&&!v(f,p.arrays)&&[f].concat(p.aliases[f]||[]).forEach(function(I){Object.defineProperty(ne,I,{enumerable:!0,get(){return h},set(R){h=typeof R=="string"?Ht.normalize(R):R}})})}function F(f,h){p.aliases[f]&&p.aliases[f].length||(p.aliases[f]=[h],x[h]=!0),p.aliases[h]&&p.aliases[h].length||F(h,f)}function M(f,h,_){_&&(h=Am(h)),(v(f,p.bools)||v(f,p.counts))&&typeof h=="string"&&(h=h==="true");let b=Array.isArray(h)?h.map(function(g){return T(f,g)}):T(f,h);return v(f,p.counts)&&(Se(b)||typeof b=="boolean")&&(b=Ti()),v(f,p.normalize)&&v(f,p.arrays)&&(Array.isArray(h)?b=h.map(g=>Ht.normalize(g)):b=Ht.normalize(h)),b}function T(f,h){return!u["parse-positional-numbers"]&&f==="_"||!v(f,p.strings)&&!v(f,p.bools)&&!Array.isArray(h)&&(Vl(h)&&u["parse-numbers"]&&Number.isSafeInteger(Math.floor(parseFloat(`${h}`)))||!Se(h)&&v(f,p.numbers))&&(h=Number(h)),h}function U(f){let h=Object.create(null);me(h,p.aliases,c),Object.keys(p.configs).forEach(function(_){let b=f[_]||h[_];if(b)try{let g=null,$=Ht.resolve(Ht.cwd(),b),I=p.configs[_];if(typeof I=="function"){try{g=I($)}catch(R){g=R}if(g instanceof Error){A=g;return}}else g=Ht.require($);H(g)}catch(g){g.name==="PermissionDenied"?A=g:f[_]&&(A=Error(C("Invalid JSON config file: %s",b)))}})}function H(f,h){Object.keys(f).forEach(function(_){let b=f[_],g=h?h+"."+_:_;typeof b=="object"&&b!==null&&!Array.isArray(b)&&u["dot-notation"]?H(b,g):(!z(L,g.split("."))||v(g,p.arrays)&&u["combine-arrays"])&&N(g,b)})}function W(){typeof d<"u"&&d.forEach(function(f){H(f)})}function X(f,h){if(typeof l>"u")return;let _=typeof l=="string"?l:"",b=Ht.env();Object.keys(b).forEach(function(g){if(_===""||g.lastIndexOf(_,0)===0){let $=g.split("__").map(function(I,R){return R===0&&(I=I.substring(_.length)),Ds(I)});(h&&p.configs[$.join(".")]||!h)&&!z(f,$)&&N($.join("."),b[g])}})}function De(f){let h,_=new Set;Object.keys(f).forEach(function(b){if(!_.has(b)&&(h=v(b,p.coercions),typeof h=="function"))try{let g=T(b,h(f[b]));[].concat(p.aliases[b]||[],b).forEach($=>{_.add($),f[$]=g})}catch(g){A=g}})}function Pe(f){return p.keys.forEach(h=>{~h.indexOf(".")||typeof f[h]>"u"&&(f[h]=void 0)}),f}function me(f,h,_,b=!1){Object.keys(_).forEach(function(g){z(f,g.split("."))||(Q(f,g.split("."),_[g]),b&&(w[g]=!0),(h[g]||[]).forEach(function($){z(f,$.split("."))||Q(f,$.split("."),_[g])}))})}function z(f,h){let _=f;u["dot-notation"]||(h=[h.join(".")]),h.slice(0,-1).forEach(function(g){_=_[g]||{}});let b=h[h.length-1];return typeof _!="object"?!1:b in _}function Q(f,h,_){let b=f;u["dot-notation"]||(h=[h.join(".")]),h.slice(0,-1).forEach(function(ge){ge=zl(ge),typeof b=="object"&&b[ge]===void 0&&(b[ge]={}),typeof b[ge]!="object"||Array.isArray(b[ge])?(Array.isArray(b[ge])?b[ge].push({}):b[ge]=[b[ge],{}],b=b[ge][b[ge].length-1]):b=b[ge]});let g=zl(h[h.length-1]),$=v(h.join("."),p.arrays),I=Array.isArray(_),R=u["duplicate-arguments-array"];!R&&v(g,p.nargs)&&(R=!0,(!Se(b[g])&&p.nargs[g]===1||Array.isArray(b[g])&&b[g].length===p.nargs[g])&&(b[g]=void 0)),_===Ti()?b[g]=Ti(b[g]):Array.isArray(b[g])?R&&$&&I?b[g]=u["flatten-duplicate-arrays"]?b[g].concat(_):(Array.isArray(b[g][0])?b[g]:[b[g]]).concat([_]):!R&&!!$==!!I?b[g]=_:b[g]=b[g].concat([_]):b[g]===void 0&&$?b[g]=I?_:[_]:R&&!(b[g]===void 0||v(g,p.counts)||v(g,p.bools))?b[g]=[b[g],_]:b[g]=_}function J(...f){f.forEach(function(h){Object.keys(h||{}).forEach(function(_){p.aliases[_]||(p.aliases[_]=[].concat(a[_]||[]),p.aliases[_].concat(_).forEach(function(b){if(/-/.test(b)&&u["camel-case-expansion"]){let g=Ds(b);g!==_&&p.aliases[_].indexOf(g)===-1&&(p.aliases[_].push(g),x[g]=!0)}}),p.aliases[_].concat(_).forEach(function(b){if(b.length>1&&/[A-Z]/.test(b)&&u["camel-case-expansion"]){let g=Hl(b,"-");g!==_&&p.aliases[_].indexOf(g)===-1&&(p.aliases[_].push(g),x[g]=!0)}}),p.aliases[_].forEach(function(b){p.aliases[b]=[_].concat(p.aliases[_].filter(function(g){return b!==g}))}))})})}function v(f,h){let _=[].concat(p.aliases[f]||[],f),b=Object.keys(h),g=_.find($=>b.includes($));return g?h[g]:!1}function he(f){let h=Object.keys(p);return[].concat(h.map(b=>p[b])).some(function(b){return Array.isArray(b)?b.includes(f):b[f]})}function G(f,...h){return[].concat(...h).some(function(b){let g=f.match(b);return g&&he(g[1])})}function ae(f){if(f.match(j)||!f.match(/^-[^-]+/))return!1;let h=!0,_,b=f.slice(1).split("");for(let g=0;g<b.length;g++){if(_=f.slice(g+2),!he(b[g])){h=!1;break}if(b[g+1]&&b[g+1]==="="||_==="-"||/[A-Za-z]/.test(b[g])&&/^-?\d+(\.\d*)?(e-?\d+)?$/.test(_)||b[g+1]&&b[g+1].match(/\W/))break}return h}function Ce(f){return u["unknown-options-as-args"]&&fe(f)}function fe(f){return f=f.replace(/^-{3,}/,"--"),f.match(j)||ae(f)?!1:!G(f,/^-+([^=]+?)=[\s\S]*$/,O,/^-+([^=]+?)$/,/^-+([^=]+?)-$/,/^-+([^=]+?\d+)$/,/^-+([^=]+?)\W+.*$/)}function Ee(f){return!v(f,p.bools)&&!v(f,p.counts)&&`${f}`in c?c[f]:be(Xe(f))}function be(f){return{[Ot.BOOLEAN]:!0,[Ot.STRING]:"",[Ot.NUMBER]:void 0,[Ot.ARRAY]:[]}[f]}function Xe(f){let h=Ot.BOOLEAN;return v(f,p.strings)?h=Ot.STRING:v(f,p.numbers)?h=Ot.NUMBER:v(f,p.bools)?h=Ot.BOOLEAN:v(f,p.arrays)&&(h=Ot.ARRAY),h}function Se(f){return f===void 0}function Ut(){Object.keys(p.counts).find(f=>v(f,p.arrays)?(A=Error(C("Invalid configuration: %s, opts.count excludes opts.array.",f)),!0):v(f,p.nargs)?(A=Error(C("Invalid configuration: %s, opts.count excludes opts.narg.",f)),!0):!1)}return{aliases:Object.assign({},p.aliases),argv:Object.assign(ne,L),configuration:u,defaulted:Object.assign({},w),error:A,newAliases:Object.assign({},x)}}};function Sm(s){let e=[],t=Object.create(null),n=!0;for(Object.keys(s).forEach(function(o){e.push([].concat(s[o],o))});n;){n=!1;for(let o=0;o<e.length;o++)for(let r=o+1;r<e.length;r++)if(e[o].filter(function(u){return e[r].indexOf(u)!==-1}).length){e[o]=e[o].concat(e[r]),e.splice(r,1),n=!0;break}}return e.forEach(function(o){o=o.filter(function(a,u,c){return c.indexOf(a)===u});let r=o.pop();r!==void 0&&typeof r=="string"&&(t[r]=o)}),t}function Ti(s){return s!==void 0?s+1:1}function zl(s){return s==="__proto__"?"___proto___":s}function Am(s){return typeof s=="string"&&(s[0]==="'"||s[0]==='"')&&s[s.length-1]===s[0]?s.substring(1,s.length-1):s}var Pi,ki,$i,Wl=process&&process.env&&process.env.YARGS_MIN_NODE_VERSION?Number(process.env.YARGS_MIN_NODE_VERSION):12,ql=(ki=(Pi=process==null?void 0:process.versions)===null||Pi===void 0?void 0:Pi.node)!==null&&ki!==void 0?ki:($i=process==null?void 0:process.version)===null||$i===void 0?void 0:$i.slice(1);if(ql&&Number(ql.match(/^([^.]+)/)[1])<Wl)throw Error(`yargs parser supports a minimum Node.js version of ${Wl}. Read our version support policy: https://github.com/yargs/yargs-parser#supported-nodejs-versions`);var _m=process?process.env:{},Yl=new ji({cwd:process.cwd,env:()=>_m,format:wm.format,normalize:Gl.normalize,resolve:Gl.resolve,require:s=>{if(typeof de<"u")return de(s);if(s.match(/\.json$/))return JSON.parse(xm.readFileSync(s,"utf8"));throw Error("only .json config files are supported in ESM")}}),Cs=function(e,t){return Yl.parse(e.slice(),t).argv};Cs.detailed=function(s,e){return Yl.parse(s.slice(),e)};Cs.camelCase=Ds;Cs.decamelize=Hl;Cs.looksLikeNumber=Vl;Kl.exports=Cs});var Jl=Ge((IE,Xl)=>{"use strict";Xl.exports=({onlyFirst:s=!1}={})=>{let e=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(e,s?void 0:"g")}});var Zs=Ge((TE,Zl)=>{"use strict";var vm=Jl();Zl.exports=s=>typeof s=="string"?s.replace(vm(),""):s});var Li=Ge((PE,Ni)=>{"use strict";var Ql=s=>Number.isNaN(s)?!1:s>=4352&&(s<=4447||s===9001||s===9002||11904<=s&&s<=12871&&s!==12351||12880<=s&&s<=19903||19968<=s&&s<=42182||43360<=s&&s<=43388||44032<=s&&s<=55203||63744<=s&&s<=64255||65040<=s&&s<=65049||65072<=s&&s<=65131||65281<=s&&s<=65376||65504<=s&&s<=65510||110592<=s&&s<=110593||127488<=s&&s<=127569||131072<=s&&s<=262141);Ni.exports=Ql;Ni.exports.default=Ql});var tc=Ge((kE,ec)=>{"use strict";ec.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}});var Ui=Ge(($E,Bi)=>{"use strict";var Om=Zs(),Mm=Li(),Im=tc(),nc=s=>{if(typeof s!="string"||s.length===0||(s=Om(s),s.length===0))return 0;s=s.replace(Im()," ");let e=0;for(let t=0;t<s.length;t++){let n=s.codePointAt(t);n<=31||n>=127&&n<=159||n>=768&&n<=879||(n>65535&&t++,e+=Mm(n)?2:1)}return e};Bi.exports=nc;Bi.exports.default=nc});var uc=Ge((jE,ac)=>{"use strict";var Es=Ui(),Tm=Zs(),Pm=hm(),Qs=new Set(["\x1B","\x9B"]),km=39,zi="\x07",ic="[",$m="]",rc="m",Wi=`${$m}8;;`,sc=s=>`${Qs.values().next().value}${ic}${s}${rc}`,oc=s=>`${Qs.values().next().value}${Wi}${s}${zi}`,jm=s=>s.split(" ").map(e=>Es(e)),Gi=(s,e,t)=>{let n=[...e],o=!1,r=!1,a=Es(Tm(s[s.length-1]));for(let[u,c]of n.entries()){let d=Es(c);if(a+d<=t?s[s.length-1]+=c:(s.push(c),a=0),Qs.has(c)&&(o=!0,r=n.slice(u+1).join("").startsWith(Wi)),o){r?c===zi&&(o=!1,r=!1):c===rc&&(o=!1);continue}a+=d,a===t&&u<n.length-1&&(s.push(""),a=0)}!a&&s[s.length-1].length>0&&s.length>1&&(s[s.length-2]+=s.pop())},Rm=s=>{let e=s.split(" "),t=e.length;for(;t>0&&!(Es(e[t-1])>0);)t--;return t===e.length?s:e.slice(0,t).join(" ")+e.slice(t).join("")},Nm=(s,e,t={})=>{if(t.trim!==!1&&s.trim()==="")return"";let n="",o,r,a=jm(s),u=[""];for(let[d,l]of s.split(" ").entries()){t.trim!==!1&&(u[u.length-1]=u[u.length-1].trimStart());let m=Es(u[u.length-1]);if(d!==0&&(m>=e&&(t.wordWrap===!1||t.trim===!1)&&(u.push(""),m=0),(m>0||t.trim===!1)&&(u[u.length-1]+=" ",m++)),t.hard&&a[d]>e){let D=e-m,x=1+Math.floor((a[d]-D-1)/e);Math.floor((a[d]-1)/e)<x&&u.push(""),Gi(u,l,e);continue}if(m+a[d]>e&&m>0&&a[d]>0){if(t.wordWrap===!1&&m<e){Gi(u,l,e);continue}u.push("")}if(m+a[d]>e&&t.wordWrap===!1){Gi(u,l,e);continue}u[u.length-1]+=l}t.trim!==!1&&(u=u.map(Rm));let c=[...u.join(`
3
+ import{$ as pe,A as Hn,Ba as xe,Ca as Ks,Da as Yn,Ea as gs,Fa as gt,Ga as bl,Ha as wl,Ia as xl,Ib as Pl,Ja as gm,Ka as Fl,La as Sl,Ma as Xs,N as il,Na as Al,O as rl,Oa as _l,Pa as vl,Q as _i,Qa as Kn,S as pn,U as al,V as ul,Va as Ol,Vc as kl,Wc as $l,Xa as Ml,Xc as jl,Y as ll,Yc as Rl,Z as rt,Za as Il,Zc as Js,_a as Tl,a as hm,aa as cl,ad as Nl,ba as Vn,ca as vi,cd as Ll,da as kt,ea as dl,fa as we,ga as fl,gb as Oi,ia as pl,ja as qt,ka as ml,la as Ys,ma as hs,na as Me,pa as hl,qa as Be,ua as gl,v as nl,va as Qt,w as sl,wa as Dl,xa as Cl,y as Vs,ya as El,z as ol,za as yl}from"./chunk-FWYXATXN.js";import{Ac as gu,Ai as ku,Bg as zn,Cf as i,Df as wu,El as Gu,Fi as xi,Fl as zu,Jg as _u,Ke as Pt,Kf as wi,Kl as Wu,Lh as zs,Ll as qu,Md as Ci,Mh as Tu,Ml as Hu,Nd as Ei,Nl as Vu,Of as xu,Oi as Jt,Ol as Yu,Pd as yi,Pl as Ai,Qk as Ru,Ql as Ku,Rc as Cu,Rk as Nu,Sc as Eu,Te as bu,Ue as bi,Ul as Xu,Vl as qs,Wk as ht,Xl as ze,Yg as it,Yj as ju,Zf as Fu,Zg as vu,Zh as Pu,_b as mu,ab as Wt,ae as yu,am as Ju,bb as Oe,cb as nu,ce as ot,cm as Hs,db as Bs,dm as mm,e as Ja,em as Zu,f as zt,fc as hu,gm as Qu,ic as Gs,ig as Su,ih as Iu,jm as el,nj as Le,nl as Lu,oj as Ze,pm as qn,ql as Fi,qm as tl,rb as su,rk as Wn,sb as fi,sk as Ws,ta as eu,tl as Bu,ug as Au,vb as ou,vl as Zt,wa as tu,wl as fn,xa as di,xl as Si,yb as iu,yl as Uu}from"./chunk-QHPM7UEO.js";import"./chunk-QMSAJYAV.js";import{$ as S,$a as Us,A as Ha,B as Va,C as Ya,Dd as Di,Ea as Ke,Ed as Du,Fa as tt,Hc as pu,Jd as Ou,Kd as Mu,M as Gt,O as _t,Pa as ci,Ra as ru,Sa as au,Ta as uu,Ua as pi,Wa as mi,Xa as hi,Xd as $u,Y as Ka,Ya as gi,_a as ms,a as Tt,ab as lu,ba as Xa,ca as st,ea as se,eb as cu,gb as du,ha as Je,ib as Xt,oa as Za,pa as Qa,r as Ls,sc as fu,t as ue,v as qa,x as ps,y as ve,z as Gn}from"./chunk-GV2WHOHH.js";import"./chunk-TWIC4BKL.js";import"./chunk-JAFVB6DI.js";import"./chunk-A5A5SUZN.js";import{a as de,c as Ge,e as Qe}from"./chunk-YUXORC52.js";var Ul=Ge((vE,Bl)=>{"use strict";var Mi=de("fs"),Dm=de("util"),Cm=de("path"),vt,Ii=class{constructor(e){e=e||{},this.directory=e.directory||"./locales",this.updateFiles=typeof e.updateFiles=="boolean"?e.updateFiles:!0,this.locale=e.locale||"en",this.fallbackToLanguage=typeof e.fallbackToLanguage=="boolean"?e.fallbackToLanguage:!0,this.cache=Object.create(null),this.writeQueue=[]}__(...e){if(typeof arguments[0]!="string")return this._taggedLiteral(arguments[0],...arguments);let t=e.shift(),n=function(){};return typeof e[e.length-1]=="function"&&(n=e.pop()),n=n||function(){},this.cache[this.locale]||this._readLocaleFile(),!this.cache[this.locale][t]&&this.updateFiles?(this.cache[this.locale][t]=t,this._enqueueWrite({directory:this.directory,locale:this.locale,cb:n})):n(),vt.format.apply(vt.format,[this.cache[this.locale][t]||t].concat(e))}__n(){let e=Array.prototype.slice.call(arguments),t=e.shift(),n=e.shift(),o=e.shift(),r=function(){};typeof e[e.length-1]=="function"&&(r=e.pop()),this.cache[this.locale]||this._readLocaleFile();let a=o===1?t:n;this.cache[this.locale][t]&&(a=this.cache[this.locale][t][o===1?"one":"other"]),!this.cache[this.locale][t]&&this.updateFiles?(this.cache[this.locale][t]={one:t,other:n},this._enqueueWrite({directory:this.directory,locale:this.locale,cb:r})):r();let u=[a];return~a.indexOf("%d")&&u.push(o),vt.format.apply(vt.format,u.concat(e))}setLocale(e){this.locale=e}getLocale(){return this.locale}updateLocale(e){this.cache[this.locale]||this._readLocaleFile();for(let t in e)Object.prototype.hasOwnProperty.call(e,t)&&(this.cache[this.locale][t]=e[t])}_taggedLiteral(e,...t){let n="";return e.forEach(function(o,r){let a=t[r+1];n+=o,typeof a<"u"&&(n+="%s")}),this.__.apply(this,[n].concat([].slice.call(t,1)))}_enqueueWrite(e){this.writeQueue.push(e),this.writeQueue.length===1&&this._processWriteQueue()}_processWriteQueue(){let e=this,t=this.writeQueue[0],n=t.directory,o=t.locale,r=t.cb,a=this._resolveLocaleFile(n,o),u=JSON.stringify(this.cache[o],null,2);vt.fs.writeFile(a,u,"utf-8",function(c){e.writeQueue.shift(),e.writeQueue.length>0&&e._processWriteQueue(),r(c)})}_readLocaleFile(){let e={},t=this._resolveLocaleFile(this.directory,this.locale);try{vt.fs.readFileSync&&(e=JSON.parse(vt.fs.readFileSync(t,"utf-8")))}catch(n){if(n instanceof SyntaxError&&(n.message="syntax error in "+t),n.code==="ENOENT")e={};else throw n}this.cache[this.locale]=e}_resolveLocaleFile(e,t){let n=vt.resolve(e,"./",t+".json");if(this.fallbackToLanguage&&!this._fileExistsSync(n)&&~t.lastIndexOf("_")){let o=vt.resolve(e,"./",t.split("_")[0]+".json");this._fileExistsSync(o)&&(n=o)}return n}_fileExistsSync(e){return vt.exists(e)}};function Em(s,e){vt=e;let t=new Ii(s);return{__:t.__.bind(t),__n:t.__n.bind(t),setLocale:t.setLocale.bind(t),getLocale:t.getLocale.bind(t),updateLocale:t.updateLocale.bind(t),locale:t.locale}}var ym={fs:{readFileSync:Mi.readFileSync,writeFile:Mi.writeFile},format:Dm.format,resolve:Cm.resolve,exists:s=>{try{return Mi.statSync(s).isFile()}catch{return!1}}},bm=s=>Em(s,ym);Bl.exports=bm});var Ri=Ge((OE,Kl)=>{"use strict";var wm=de("util"),Gl=de("path"),xm=de("fs");function Ds(s){if(s!==s.toLowerCase()&&s!==s.toUpperCase()||(s=s.toLowerCase()),s.indexOf("-")===-1&&s.indexOf("_")===-1)return s;{let t="",n=!1,o=s.match(/^-+/);for(let r=o?o[0].length:0;r<s.length;r++){let a=s.charAt(r);n&&(n=!1,a=a.toUpperCase()),r!==0&&(a==="-"||a==="_")?n=!0:a!=="-"&&a!=="_"&&(t+=a)}return t}}function Hl(s,e){let t=s.toLowerCase();e=e||"-";let n="";for(let o=0;o<s.length;o++){let r=t.charAt(o),a=s.charAt(o);r!==a&&o>0?n+=`${e}${t.charAt(o)}`:n+=a}return n}function Vl(s){return s==null?!1:typeof s=="number"||/^0x[0-9a-f]+$/i.test(s)?!0:/^0[^.]/.test(s)?!1:/^[-]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(s)}function Fm(s){if(Array.isArray(s))return s.map(a=>typeof a!="string"?a+"":a);s=s.trim();let e=0,t=null,n=null,o=null,r=[];for(let a=0;a<s.length;a++){if(t=n,n=s.charAt(a),n===" "&&!o){t!==" "&&e++;continue}n===o?o=null:(n==="'"||n==='"')&&!o&&(o=n),r[e]||(r[e]=""),r[e]+=n}return r}var Ot;(function(s){s.BOOLEAN="boolean",s.STRING="string",s.NUMBER="number",s.ARRAY="array"})(Ot||(Ot={}));var Ht,ji=class{constructor(e){Ht=e}parse(e,t){let n=Object.assign({alias:void 0,array:void 0,boolean:void 0,config:void 0,configObjects:void 0,configuration:void 0,coerce:void 0,count:void 0,default:void 0,envPrefix:void 0,narg:void 0,normalize:void 0,string:void 0,number:void 0,__:void 0,key:void 0},t),o=Fm(e),r=typeof e=="string",a=Sm(Object.assign(Object.create(null),n.alias)),u=Object.assign({"boolean-negation":!0,"camel-case-expansion":!0,"combine-arrays":!1,"dot-notation":!0,"duplicate-arguments-array":!0,"flatten-duplicate-arrays":!0,"greedy-arrays":!0,"halt-at-non-option":!1,"nargs-eats-options":!1,"negation-prefix":"no-","parse-numbers":!0,"parse-positional-numbers":!0,"populate--":!1,"set-placeholder-key":!1,"short-option-groups":!0,"strip-aliased":!1,"strip-dashed":!1,"unknown-options-as-args":!1},n.configuration),c=Object.assign(Object.create(null),n.default),d=n.configObjects||[],l=n.envPrefix,m=u["populate--"],D=m?"--":"_",x=Object.create(null),w=Object.create(null),C=n.__||Ht.format,p={aliases:Object.create(null),arrays:Object.create(null),bools:Object.create(null),strings:Object.create(null),numbers:Object.create(null),counts:Object.create(null),normalize:Object.create(null),configs:Object.create(null),nargs:Object.create(null),coercions:Object.create(null),keys:[]},j=/^-([0-9]+(\.[0-9]+)?|\.[0-9]+)$/,O=new RegExp("^--"+u["negation-prefix"]+"(.+)");[].concat(n.array||[]).filter(Boolean).forEach(function(f){let h=typeof f=="object"?f.key:f,_=Object.keys(f).map(function(b){return{boolean:"bools",string:"strings",number:"numbers"}[b]}).filter(Boolean).pop();_&&(p[_][h]=!0),p.arrays[h]=!0,p.keys.push(h)}),[].concat(n.boolean||[]).filter(Boolean).forEach(function(f){p.bools[f]=!0,p.keys.push(f)}),[].concat(n.string||[]).filter(Boolean).forEach(function(f){p.strings[f]=!0,p.keys.push(f)}),[].concat(n.number||[]).filter(Boolean).forEach(function(f){p.numbers[f]=!0,p.keys.push(f)}),[].concat(n.count||[]).filter(Boolean).forEach(function(f){p.counts[f]=!0,p.keys.push(f)}),[].concat(n.normalize||[]).filter(Boolean).forEach(function(f){p.normalize[f]=!0,p.keys.push(f)}),typeof n.narg=="object"&&Object.entries(n.narg).forEach(([f,h])=>{typeof h=="number"&&(p.nargs[f]=h,p.keys.push(f))}),typeof n.coerce=="object"&&Object.entries(n.coerce).forEach(([f,h])=>{typeof h=="function"&&(p.coercions[f]=h,p.keys.push(f))}),typeof n.config<"u"&&(Array.isArray(n.config)||typeof n.config=="string"?[].concat(n.config).filter(Boolean).forEach(function(f){p.configs[f]=!0}):typeof n.config=="object"&&Object.entries(n.config).forEach(([f,h])=>{(typeof h=="boolean"||typeof h=="function")&&(p.configs[f]=h)})),J(n.key,a,n.default,p.arrays),Object.keys(c).forEach(function(f){(p.aliases[f]||[]).forEach(function(h){c[h]=c[f]})});let A=null;Ut();let k=[],L=Object.assign(Object.create(null),{_:[]}),ne={};for(let f=0;f<o.length;f++){let h=o[f],_=h.replace(/^-{3,}/,"---"),b,g,$,I,R,ge;if(h!=="--"&&/^-/.test(h)&&Ce(h))q(h);else if(_.match(/^---+(=|$)/)){q(h);continue}else if(h.match(/^--.+=/)||!u["short-option-groups"]&&h.match(/^-.+=/))I=h.match(/^--?([^=]+)=([\s\S]*)$/),I!==null&&Array.isArray(I)&&I.length>=3&&(v(I[1],p.arrays)?f=B(f,I[1],o,I[2]):v(I[1],p.nargs)!==!1?f=P(f,I[1],o,I[2]):N(I[1],I[2],!0));else if(h.match(O)&&u["boolean-negation"])I=h.match(O),I!==null&&Array.isArray(I)&&I.length>=2&&(g=I[1],N(g,v(g,p.arrays)?[!1]:!1));else if(h.match(/^--.+/)||!u["short-option-groups"]&&h.match(/^-[^-]+/))I=h.match(/^--?(.+)/),I!==null&&Array.isArray(I)&&I.length>=2&&(g=I[1],v(g,p.arrays)?f=B(f,g,o):v(g,p.nargs)!==!1?f=P(f,g,o):(R=o[f+1],R!==void 0&&(!R.match(/^-/)||R.match(j))&&!v(g,p.bools)&&!v(g,p.counts)||/^(true|false)$/.test(R)?(N(g,R),f++):N(g,Ee(g))));else if(h.match(/^-.\..+=/))I=h.match(/^-([^=]+)=([\s\S]*)$/),I!==null&&Array.isArray(I)&&I.length>=3&&N(I[1],I[2]);else if(h.match(/^-.\..+/)&&!h.match(j))R=o[f+1],I=h.match(/^-(.\..+)/),I!==null&&Array.isArray(I)&&I.length>=2&&(g=I[1],R!==void 0&&!R.match(/^-/)&&!v(g,p.bools)&&!v(g,p.counts)?(N(g,R),f++):N(g,Ee(g)));else if(h.match(/^-[^-]+/)&&!h.match(j)){$=h.slice(1,-1).split(""),b=!1;for(let ye=0;ye<$.length;ye++){if(R=h.slice(ye+2),$[ye+1]&&$[ye+1]==="="){ge=h.slice(ye+3),g=$[ye],v(g,p.arrays)?f=B(f,g,o,ge):v(g,p.nargs)!==!1?f=P(f,g,o,ge):N(g,ge),b=!0;break}if(R==="-"){N($[ye],R);continue}if(/[A-Za-z]/.test($[ye])&&/^-?\d+(\.\d*)?(e-?\d+)?$/.test(R)&&v(R,p.bools)===!1){N($[ye],R),b=!0;break}if($[ye+1]&&$[ye+1].match(/\W/)){N($[ye],R),b=!0;break}else N($[ye],Ee($[ye]))}g=h.slice(-1)[0],!b&&g!=="-"&&(v(g,p.arrays)?f=B(f,g,o):v(g,p.nargs)!==!1?f=P(f,g,o):(R=o[f+1],R!==void 0&&(!/^(-|--)[^-]/.test(R)||R.match(j))&&!v(g,p.bools)&&!v(g,p.counts)||/^(true|false)$/.test(R)?(N(g,R),f++):N(g,Ee(g))))}else if(h.match(/^-[0-9]$/)&&h.match(j)&&v(h.slice(1),p.bools))g=h.slice(1),N(g,Ee(g));else if(h==="--"){k=o.slice(f+1);break}else if(u["halt-at-non-option"]){k=o.slice(f);break}else q(h)}X(L,!0),X(L,!1),U(L),W(),me(L,p.aliases,c,!0),De(L),u["set-placeholder-key"]&&Pe(L),Object.keys(p.counts).forEach(function(f){z(L,f.split("."))||N(f,0)}),m&&k.length&&(L[D]=[]),k.forEach(function(f){L[D].push(f)}),u["camel-case-expansion"]&&u["strip-dashed"]&&Object.keys(L).filter(f=>f!=="--"&&f.includes("-")).forEach(f=>{delete L[f]}),u["strip-aliased"]&&[].concat(...Object.keys(a).map(f=>a[f])).forEach(f=>{u["camel-case-expansion"]&&f.includes("-")&&delete L[f.split(".").map(h=>Ds(h)).join(".")],delete L[f]});function q(f){let h=T("_",f);(typeof h=="string"||typeof h=="number")&&L._.push(h)}function P(f,h,_,b){let g,$=v(h,p.nargs);if($=typeof $!="number"||isNaN($)?1:$,$===0)return Se(b)||(A=Error(C("Argument unexpected for: %s",h))),N(h,Ee(h)),f;let I=Se(b)?0:1;if(u["nargs-eats-options"])_.length-(f+1)+I<$&&(A=Error(C("Not enough arguments following: %s",h))),I=$;else{for(g=f+1;g<_.length&&(!_[g].match(/^-[^0-9]/)||_[g].match(j)||Ce(_[g]));g++)I++;I<$&&(A=Error(C("Not enough arguments following: %s",h)))}let R=Math.min(I,$);for(!Se(b)&&R>0&&(N(h,b),R--),g=f+1;g<R+f+1;g++)N(h,_[g]);return f+R}function B(f,h,_,b){let g=[],$=b||_[f+1],I=v(h,p.nargs);if(v(h,p.bools)&&!/^(true|false)$/.test($))g.push(!0);else if(Se($)||Se(b)&&/^-/.test($)&&!j.test($)&&!Ce($)){if(c[h]!==void 0){let R=c[h];g=Array.isArray(R)?R:[R]}}else{Se(b)||g.push(M(h,b,!0));for(let R=f+1;R<_.length&&!(!u["greedy-arrays"]&&g.length>0||I&&typeof I=="number"&&g.length>=I||($=_[R],/^-/.test($)&&!j.test($)&&!Ce($)));R++)f=R,g.push(M(h,$,r))}return typeof I=="number"&&(I&&g.length<I||isNaN(I)&&g.length===0)&&(A=Error(C("Not enough arguments following: %s",h))),N(h,g),f}function N(f,h,_=r){if(/-/.test(f)&&u["camel-case-expansion"]){let $=f.split(".").map(function(I){return Ds(I)}).join(".");F(f,$)}let b=M(f,h,_),g=f.split(".");Q(L,g,b),p.aliases[f]&&p.aliases[f].forEach(function($){let I=$.split(".");Q(L,I,b)}),g.length>1&&u["dot-notation"]&&(p.aliases[g[0]]||[]).forEach(function($){let I=$.split("."),R=[].concat(g);R.shift(),I=I.concat(R),(p.aliases[f]||[]).includes(I.join("."))||Q(L,I,b)}),v(f,p.normalize)&&!v(f,p.arrays)&&[f].concat(p.aliases[f]||[]).forEach(function(I){Object.defineProperty(ne,I,{enumerable:!0,get(){return h},set(R){h=typeof R=="string"?Ht.normalize(R):R}})})}function F(f,h){p.aliases[f]&&p.aliases[f].length||(p.aliases[f]=[h],x[h]=!0),p.aliases[h]&&p.aliases[h].length||F(h,f)}function M(f,h,_){_&&(h=Am(h)),(v(f,p.bools)||v(f,p.counts))&&typeof h=="string"&&(h=h==="true");let b=Array.isArray(h)?h.map(function(g){return T(f,g)}):T(f,h);return v(f,p.counts)&&(Se(b)||typeof b=="boolean")&&(b=Ti()),v(f,p.normalize)&&v(f,p.arrays)&&(Array.isArray(h)?b=h.map(g=>Ht.normalize(g)):b=Ht.normalize(h)),b}function T(f,h){return!u["parse-positional-numbers"]&&f==="_"||!v(f,p.strings)&&!v(f,p.bools)&&!Array.isArray(h)&&(Vl(h)&&u["parse-numbers"]&&Number.isSafeInteger(Math.floor(parseFloat(`${h}`)))||!Se(h)&&v(f,p.numbers))&&(h=Number(h)),h}function U(f){let h=Object.create(null);me(h,p.aliases,c),Object.keys(p.configs).forEach(function(_){let b=f[_]||h[_];if(b)try{let g=null,$=Ht.resolve(Ht.cwd(),b),I=p.configs[_];if(typeof I=="function"){try{g=I($)}catch(R){g=R}if(g instanceof Error){A=g;return}}else g=Ht.require($);H(g)}catch(g){g.name==="PermissionDenied"?A=g:f[_]&&(A=Error(C("Invalid JSON config file: %s",b)))}})}function H(f,h){Object.keys(f).forEach(function(_){let b=f[_],g=h?h+"."+_:_;typeof b=="object"&&b!==null&&!Array.isArray(b)&&u["dot-notation"]?H(b,g):(!z(L,g.split("."))||v(g,p.arrays)&&u["combine-arrays"])&&N(g,b)})}function W(){typeof d<"u"&&d.forEach(function(f){H(f)})}function X(f,h){if(typeof l>"u")return;let _=typeof l=="string"?l:"",b=Ht.env();Object.keys(b).forEach(function(g){if(_===""||g.lastIndexOf(_,0)===0){let $=g.split("__").map(function(I,R){return R===0&&(I=I.substring(_.length)),Ds(I)});(h&&p.configs[$.join(".")]||!h)&&!z(f,$)&&N($.join("."),b[g])}})}function De(f){let h,_=new Set;Object.keys(f).forEach(function(b){if(!_.has(b)&&(h=v(b,p.coercions),typeof h=="function"))try{let g=T(b,h(f[b]));[].concat(p.aliases[b]||[],b).forEach($=>{_.add($),f[$]=g})}catch(g){A=g}})}function Pe(f){return p.keys.forEach(h=>{~h.indexOf(".")||typeof f[h]>"u"&&(f[h]=void 0)}),f}function me(f,h,_,b=!1){Object.keys(_).forEach(function(g){z(f,g.split("."))||(Q(f,g.split("."),_[g]),b&&(w[g]=!0),(h[g]||[]).forEach(function($){z(f,$.split("."))||Q(f,$.split("."),_[g])}))})}function z(f,h){let _=f;u["dot-notation"]||(h=[h.join(".")]),h.slice(0,-1).forEach(function(g){_=_[g]||{}});let b=h[h.length-1];return typeof _!="object"?!1:b in _}function Q(f,h,_){let b=f;u["dot-notation"]||(h=[h.join(".")]),h.slice(0,-1).forEach(function(ge){ge=zl(ge),typeof b=="object"&&b[ge]===void 0&&(b[ge]={}),typeof b[ge]!="object"||Array.isArray(b[ge])?(Array.isArray(b[ge])?b[ge].push({}):b[ge]=[b[ge],{}],b=b[ge][b[ge].length-1]):b=b[ge]});let g=zl(h[h.length-1]),$=v(h.join("."),p.arrays),I=Array.isArray(_),R=u["duplicate-arguments-array"];!R&&v(g,p.nargs)&&(R=!0,(!Se(b[g])&&p.nargs[g]===1||Array.isArray(b[g])&&b[g].length===p.nargs[g])&&(b[g]=void 0)),_===Ti()?b[g]=Ti(b[g]):Array.isArray(b[g])?R&&$&&I?b[g]=u["flatten-duplicate-arrays"]?b[g].concat(_):(Array.isArray(b[g][0])?b[g]:[b[g]]).concat([_]):!R&&!!$==!!I?b[g]=_:b[g]=b[g].concat([_]):b[g]===void 0&&$?b[g]=I?_:[_]:R&&!(b[g]===void 0||v(g,p.counts)||v(g,p.bools))?b[g]=[b[g],_]:b[g]=_}function J(...f){f.forEach(function(h){Object.keys(h||{}).forEach(function(_){p.aliases[_]||(p.aliases[_]=[].concat(a[_]||[]),p.aliases[_].concat(_).forEach(function(b){if(/-/.test(b)&&u["camel-case-expansion"]){let g=Ds(b);g!==_&&p.aliases[_].indexOf(g)===-1&&(p.aliases[_].push(g),x[g]=!0)}}),p.aliases[_].concat(_).forEach(function(b){if(b.length>1&&/[A-Z]/.test(b)&&u["camel-case-expansion"]){let g=Hl(b,"-");g!==_&&p.aliases[_].indexOf(g)===-1&&(p.aliases[_].push(g),x[g]=!0)}}),p.aliases[_].forEach(function(b){p.aliases[b]=[_].concat(p.aliases[_].filter(function(g){return b!==g}))}))})})}function v(f,h){let _=[].concat(p.aliases[f]||[],f),b=Object.keys(h),g=_.find($=>b.includes($));return g?h[g]:!1}function he(f){let h=Object.keys(p);return[].concat(h.map(b=>p[b])).some(function(b){return Array.isArray(b)?b.includes(f):b[f]})}function G(f,...h){return[].concat(...h).some(function(b){let g=f.match(b);return g&&he(g[1])})}function ae(f){if(f.match(j)||!f.match(/^-[^-]+/))return!1;let h=!0,_,b=f.slice(1).split("");for(let g=0;g<b.length;g++){if(_=f.slice(g+2),!he(b[g])){h=!1;break}if(b[g+1]&&b[g+1]==="="||_==="-"||/[A-Za-z]/.test(b[g])&&/^-?\d+(\.\d*)?(e-?\d+)?$/.test(_)||b[g+1]&&b[g+1].match(/\W/))break}return h}function Ce(f){return u["unknown-options-as-args"]&&fe(f)}function fe(f){return f=f.replace(/^-{3,}/,"--"),f.match(j)||ae(f)?!1:!G(f,/^-+([^=]+?)=[\s\S]*$/,O,/^-+([^=]+?)$/,/^-+([^=]+?)-$/,/^-+([^=]+?\d+)$/,/^-+([^=]+?)\W+.*$/)}function Ee(f){return!v(f,p.bools)&&!v(f,p.counts)&&`${f}`in c?c[f]:be(Xe(f))}function be(f){return{[Ot.BOOLEAN]:!0,[Ot.STRING]:"",[Ot.NUMBER]:void 0,[Ot.ARRAY]:[]}[f]}function Xe(f){let h=Ot.BOOLEAN;return v(f,p.strings)?h=Ot.STRING:v(f,p.numbers)?h=Ot.NUMBER:v(f,p.bools)?h=Ot.BOOLEAN:v(f,p.arrays)&&(h=Ot.ARRAY),h}function Se(f){return f===void 0}function Ut(){Object.keys(p.counts).find(f=>v(f,p.arrays)?(A=Error(C("Invalid configuration: %s, opts.count excludes opts.array.",f)),!0):v(f,p.nargs)?(A=Error(C("Invalid configuration: %s, opts.count excludes opts.narg.",f)),!0):!1)}return{aliases:Object.assign({},p.aliases),argv:Object.assign(ne,L),configuration:u,defaulted:Object.assign({},w),error:A,newAliases:Object.assign({},x)}}};function Sm(s){let e=[],t=Object.create(null),n=!0;for(Object.keys(s).forEach(function(o){e.push([].concat(s[o],o))});n;){n=!1;for(let o=0;o<e.length;o++)for(let r=o+1;r<e.length;r++)if(e[o].filter(function(u){return e[r].indexOf(u)!==-1}).length){e[o]=e[o].concat(e[r]),e.splice(r,1),n=!0;break}}return e.forEach(function(o){o=o.filter(function(a,u,c){return c.indexOf(a)===u});let r=o.pop();r!==void 0&&typeof r=="string"&&(t[r]=o)}),t}function Ti(s){return s!==void 0?s+1:1}function zl(s){return s==="__proto__"?"___proto___":s}function Am(s){return typeof s=="string"&&(s[0]==="'"||s[0]==='"')&&s[s.length-1]===s[0]?s.substring(1,s.length-1):s}var Pi,ki,$i,Wl=process&&process.env&&process.env.YARGS_MIN_NODE_VERSION?Number(process.env.YARGS_MIN_NODE_VERSION):12,ql=(ki=(Pi=process==null?void 0:process.versions)===null||Pi===void 0?void 0:Pi.node)!==null&&ki!==void 0?ki:($i=process==null?void 0:process.version)===null||$i===void 0?void 0:$i.slice(1);if(ql&&Number(ql.match(/^([^.]+)/)[1])<Wl)throw Error(`yargs parser supports a minimum Node.js version of ${Wl}. Read our version support policy: https://github.com/yargs/yargs-parser#supported-nodejs-versions`);var _m=process?process.env:{},Yl=new ji({cwd:process.cwd,env:()=>_m,format:wm.format,normalize:Gl.normalize,resolve:Gl.resolve,require:s=>{if(typeof de<"u")return de(s);if(s.match(/\.json$/))return JSON.parse(xm.readFileSync(s,"utf8"));throw Error("only .json config files are supported in ESM")}}),Cs=function(e,t){return Yl.parse(e.slice(),t).argv};Cs.detailed=function(s,e){return Yl.parse(s.slice(),e)};Cs.camelCase=Ds;Cs.decamelize=Hl;Cs.looksLikeNumber=Vl;Kl.exports=Cs});var Jl=Ge((IE,Xl)=>{"use strict";Xl.exports=({onlyFirst:s=!1}={})=>{let e=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"].join("|");return new RegExp(e,s?void 0:"g")}});var Zs=Ge((TE,Zl)=>{"use strict";var vm=Jl();Zl.exports=s=>typeof s=="string"?s.replace(vm(),""):s});var Li=Ge((PE,Ni)=>{"use strict";var Ql=s=>Number.isNaN(s)?!1:s>=4352&&(s<=4447||s===9001||s===9002||11904<=s&&s<=12871&&s!==12351||12880<=s&&s<=19903||19968<=s&&s<=42182||43360<=s&&s<=43388||44032<=s&&s<=55203||63744<=s&&s<=64255||65040<=s&&s<=65049||65072<=s&&s<=65131||65281<=s&&s<=65376||65504<=s&&s<=65510||110592<=s&&s<=110593||127488<=s&&s<=127569||131072<=s&&s<=262141);Ni.exports=Ql;Ni.exports.default=Ql});var tc=Ge((kE,ec)=>{"use strict";ec.exports=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g}});var Ui=Ge(($E,Bi)=>{"use strict";var Om=Zs(),Mm=Li(),Im=tc(),nc=s=>{if(typeof s!="string"||s.length===0||(s=Om(s),s.length===0))return 0;s=s.replace(Im()," ");let e=0;for(let t=0;t<s.length;t++){let n=s.codePointAt(t);n<=31||n>=127&&n<=159||n>=768&&n<=879||(n>65535&&t++,e+=Mm(n)?2:1)}return e};Bi.exports=nc;Bi.exports.default=nc});var uc=Ge((jE,ac)=>{"use strict";var Es=Ui(),Tm=Zs(),Pm=hm(),Qs=new Set(["\x1B","\x9B"]),km=39,zi="\x07",ic="[",$m="]",rc="m",Wi=`${$m}8;;`,sc=s=>`${Qs.values().next().value}${ic}${s}${rc}`,oc=s=>`${Qs.values().next().value}${Wi}${s}${zi}`,jm=s=>s.split(" ").map(e=>Es(e)),Gi=(s,e,t)=>{let n=[...e],o=!1,r=!1,a=Es(Tm(s[s.length-1]));for(let[u,c]of n.entries()){let d=Es(c);if(a+d<=t?s[s.length-1]+=c:(s.push(c),a=0),Qs.has(c)&&(o=!0,r=n.slice(u+1).join("").startsWith(Wi)),o){r?c===zi&&(o=!1,r=!1):c===rc&&(o=!1);continue}a+=d,a===t&&u<n.length-1&&(s.push(""),a=0)}!a&&s[s.length-1].length>0&&s.length>1&&(s[s.length-2]+=s.pop())},Rm=s=>{let e=s.split(" "),t=e.length;for(;t>0&&!(Es(e[t-1])>0);)t--;return t===e.length?s:e.slice(0,t).join(" ")+e.slice(t).join("")},Nm=(s,e,t={})=>{if(t.trim!==!1&&s.trim()==="")return"";let n="",o,r,a=jm(s),u=[""];for(let[d,l]of s.split(" ").entries()){t.trim!==!1&&(u[u.length-1]=u[u.length-1].trimStart());let m=Es(u[u.length-1]);if(d!==0&&(m>=e&&(t.wordWrap===!1||t.trim===!1)&&(u.push(""),m=0),(m>0||t.trim===!1)&&(u[u.length-1]+=" ",m++)),t.hard&&a[d]>e){let D=e-m,x=1+Math.floor((a[d]-D-1)/e);Math.floor((a[d]-1)/e)<x&&u.push(""),Gi(u,l,e);continue}if(m+a[d]>e&&m>0&&a[d]>0){if(t.wordWrap===!1&&m<e){Gi(u,l,e);continue}u.push("")}if(m+a[d]>e&&t.wordWrap===!1){Gi(u,l,e);continue}u[u.length-1]+=l}t.trim!==!1&&(u=u.map(Rm));let c=[...u.join(`
4
4
  `)];for(let[d,l]of c.entries()){if(n+=l,Qs.has(l)){let{groups:D}=new RegExp(`(?:\\${ic}(?<code>\\d+)m|\\${Wi}(?<uri>.*)${zi})`).exec(c.slice(d).join(""))||{groups:{}};if(D.code!==void 0){let x=Number.parseFloat(D.code);o=x===km?void 0:x}else D.uri!==void 0&&(r=D.uri.length===0?void 0:D.uri)}let m=Pm.codes.get(Number(o));c[d+1]===`
5
5
  `?(r&&(n+=oc("")),o&&m&&(n+=sc(m))):l===`
6
6
  `&&(o&&m&&(n+=sc(o)),r&&(n+=oc(r)))}return n};ac.exports=(s,e,t)=>String(s).normalize().replace(/\r\n/g,`
@@ -161,7 +161,7 @@ This warning can be disabled in /settings`:null}catch{return"Could not verify th
161
161
  `)),0),clear:()=>{},setDebugMessage:s=>{},loadHistory:s=>{},pendingItem:null,setPendingItem:s=>{},toggleCorgiMode:()=>{},toggleDebugProfiler:()=>{},toggleVimEnabled:async()=>!1,reloadCommands:()=>{},openAgentConfigDialog:()=>{},extensionsUpdateState:new Map,dispatchExtensionStateUpdate:s=>{},addConfirmUpdateExtensionRequest:s=>{},setConfirmationRequest:s=>{},removeComponent:()=>{},toggleBackgroundShell:()=>{},toggleShortcutsHelp:()=>{}}}var Cp=async(s,e,t,n)=>{let o=s.trim();if(!o.startsWith("/"))return;let a=(await Tl.create([new kl(t),new jl(t),new $l(t)],e.signal)).getCommands(),{commandToExecute:u,args:c}=Il(s,a);if(u&&u.action){let d={sessionId:t?.getSessionId(),sessionStartTime:new Date,metrics:ot.getMetrics(),lastPromptTokenCount:0,promptCount:1},l=new Xu(t?.getSessionId()||"",t?.storage),m={services:{config:t,settings:n,git:void 0,logger:l},ui:Dp(),session:{stats:d,sessionShellAllowlist:new Set},invocation:{raw:o,name:u.name,args:c}},D=await u.action(m,c);if(D)switch(D.type){case"submit_prompt":return D.content;case"confirm_shell_commands":throw new ps("Exiting due to a confirmation prompt requested by the command.");default:throw new ps("Exiting due to command result that is not supported in non-interactive mode.")}}};function Ep(s){let e=s;return typeof e.exitCode=="number"?e.exitCode:e.code!==void 0?e.code:e.status!==void 0?e.status:1}function yp(s){return typeof s=="number"?s:1}function Uo(s,e,t){let n=Ju(s,e.getContentGeneratorConfig()?.authType);if(e.getOutputFormat()===Le.STREAM_JSON){let o=new fn,r=t??Ep(s),a=ot.getMetrics();o.emitEvent({type:Ze.RESULT,timestamp:new Date().toISOString(),status:"error",error:{type:s instanceof Error?s.constructor.name:"Error",message:n},stats:o.convertToStreamStats(a,0)}),kt(),process.exit(yp(r))}else if(e.getOutputFormat()===Le.JSON){let o=new Zt,r=t??Ep(s),a=o.formatError(s instanceof Error?s:new Error(ue(s)),r,e.getSessionId());se.emitFeedback("error",a),kt(),process.exit(yp(r))}else throw s}function bp(s,e,t,n,o){let r=`Error executing tool ${s}: ${o||e.message}`;if(Qa(n)){let u=new Va(r);if(t.getOutputFormat()===Le.STREAM_JSON){let c=new fn,d=ot.getMetrics();c.emitEvent({type:Ze.RESULT,timestamp:new Date().toISOString(),status:"error",error:{type:n??"FatalToolExecutionError",message:u.message},stats:c.convertToStreamStats(d,0)})}else if(t.getOutputFormat()===Le.JSON){let d=new Zt().formatError(u,n??u.exitCode,t.getSessionId());se.emitFeedback("error",d)}else se.emitFeedback("error",r);kt(),process.exit(u.exitCode)}S.warn(r)}function wp(s){let e=new Ya("Operation cancelled.");if(s.getOutputFormat()===Le.STREAM_JSON){let t=new fn,n=ot.getMetrics();t.emitEvent({type:Ze.RESULT,timestamp:new Date().toISOString(),status:"error",error:{type:"FatalCancellationError",message:e.message},stats:t.convertToStreamStats(n,0)}),kt(),process.exit(e.exitCode)}else if(s.getOutputFormat()===Le.JSON){let n=new Zt().formatError(e,e.exitCode,s.getSessionId());se.emitFeedback("error",n),kt(),process.exit(e.exitCode)}else se.emitFeedback("error",e.message),kt(),process.exit(e.exitCode)}function xp(s){let e=new Ha("Reached max session turns for this session. Increase the number of turns by specifying maxSessionTurns in settings.json.");if(s.getOutputFormat()===Le.STREAM_JSON){let t=new fn,n=ot.getMetrics();t.emitEvent({type:Ze.RESULT,timestamp:new Date().toISOString(),status:"error",error:{type:"FatalTurnLimitedError",message:e.message},stats:t.convertToStreamStats(n,0)}),kt(),process.exit(e.exitCode)}else if(s.getOutputFormat()===Le.JSON){let n=new Zt().formatError(e,e.exitCode,s.getSessionId());se.emitFeedback("error",n),kt(),process.exit(e.exitCode)}else se.emitFeedback("error",e.message),kt(),process.exit(e.exitCode)}var Go=class{atStartOfLine=!0;outputStream;constructor(e=process.stdout){this.outputStream=e}write(e){if(e.length===0)return;this.outputStream.write(e);let t=zs(e);t.length>0&&(this.atStartOfLine=t.endsWith(`
162
162
  `))}writeOnNewLine(e){this.atStartOfLine||this.write(`
163
163
  `),this.write(e)}ensureTrailingNewline(){this.atStartOfLine||this.write(`
164
- `)}};async function Sp({config:s,settings:e,input:t,prompt_id:n,resumedSessionData:o}){return Fu.run(n,async()=>{let r=new Kn({stderr:!0,debugMode:s.getDebugMode(),onNewMessage:A=>{se.emitConsoleLog(A.type,A.content)}});if(process.env.GEMINI_CLI_ACTIVITY_LOG_TARGET){let{setupInitialActivityLogger:A}=await import("./devtoolsService-OU72DFFN.js");await A(s)}let{stdout:a}=Bs(),u=new Go(a),c=A=>{let k=A.severity.toUpperCase();if(process.stderr.write(`[${k}] ${A.message}
164
+ `)}};async function Sp({config:s,settings:e,input:t,prompt_id:n,resumedSessionData:o}){return Fu.run(n,async()=>{let r=new Kn({stderr:!0,debugMode:s.getDebugMode(),onNewMessage:A=>{se.emitConsoleLog(A.type,A.content)}});if(process.env.GEMINI_CLI_ACTIVITY_LOG_TARGET){let{setupInitialActivityLogger:A}=await import("./devtoolsService-VTCQJZRW.js");await A(s)}let{stdout:a}=Bs(),u=new Go(a),c=A=>{let k=A.severity.toUpperCase();if(process.stderr.write(`[${k}] ${A.message}
165
165
  `),A.error&&s.getDebugMode()){let L=A.error instanceof Error?A.error.stack||A.error.message:String(A.error);process.stderr.write(`${L}
166
166
  `)}},d=Date.now(),l=s.getOutputFormat()===Le.STREAM_JSON?new fn:null,m=new AbortController,D=!1,x=null,w=!1,C=null,p=()=>{if(!process.stdin.isTTY)return;w=process.stdin.isRaw||!1,process.stdin.setRawMode(!0),process.stdin.resume(),C=Fp.createInterface({input:process.stdin,escapeCodeTimeout:0}),Fp.emitKeypressEvents(process.stdin,C);let A=(k,L)=>{if(L&&L.ctrl&&L.name==="c"||k===""){if(D)return;D=!0,x=setTimeout(()=>{process.stderr.write(`
167
167
  Cancelling...
@@ -203,10 +203,10 @@ CRITICAL: Unhandled Promise Rejection!
203
203
  =========================================
204
204
  Reason: ${e}${e instanceof Error&&e.stack?`
205
205
  Stack trace:
206
- ${e.stack}`:""}`;S.error(n),s||(s=!0,Pl.emit("open-debug-console"))})}async function FE(s,e,t,n=process.cwd(),o,r){let{startInteractiveUI:a}=await import("./interactiveCli-DXTZTYI3.js");await a(s,e,t,n,o,r)}async function pm(){let s=Pt.start("cli_startup"),e=SE();Vn(e.cleanup);let t=nu();vi(()=>{Rt(),t()}),xE(),fl();let n=new li;n.start(),Vn(()=>n.stop());let o=Pt.start("load_settings"),r=pe();o?.end(),r.errors.forEach(w=>{se.emitFeedback("warning",w.message)}),Vs().errors.forEach(w=>{se.emitFeedback("warning",`Error in ${w.path}: ${w.message}`)}),await Promise.all([pl(),ul(r.merged),fm()]);let u=Pt.start("parse_arguments"),c=await ap(r.merged);u?.end(),(c.allowedTools&&c.allowedTools.length>0||r.merged.tools?.allowed&&r.merged.tools.allowed.length>0)&&se.emitFeedback("warning","Warning: --allowed-tools cli argument and tools.allowed in settings.json are deprecated and will be removed in 1.0: Migrate to Policy Engine: https://geminicli.com/docs/core/policy-engine/"),r.merged.tools?.exclude&&r.merged.tools.exclude.length>0&&se.emitFeedback("warning","Warning: tools.exclude in settings.json is deprecated and will be removed in 1.0. Migrate to Policy Engine: https://geminicli.com/docs/core/policy-engine/"),c.startupMessages&&c.startupMessages.forEach(w=>{se.emitFeedback("info",w)}),c.promptInteractive&&!process.stdin.isTTY&&(Oe(`Error: The --prompt-interactive flag cannot be used when input is piped from stdin.
206
+ ${e.stack}`:""}`;S.error(n),s||(s=!0,Pl.emit("open-debug-console"))})}async function FE(s,e,t,n=process.cwd(),o,r){let{startInteractiveUI:a}=await import("./interactiveCli-KDYTPEDX.js");await a(s,e,t,n,o,r)}async function pm(){let s=Pt.start("cli_startup"),e=SE();Vn(e.cleanup);let t=nu();vi(()=>{Rt(),t()}),xE(),fl();let n=new li;n.start(),Vn(()=>n.stop());let o=Pt.start("load_settings"),r=pe();o?.end(),r.errors.forEach(w=>{se.emitFeedback("warning",w.message)}),Vs().errors.forEach(w=>{se.emitFeedback("warning",`Error in ${w.path}: ${w.message}`)}),await Promise.all([pl(),ul(r.merged),fm()]);let u=Pt.start("parse_arguments"),c=await ap(r.merged);u?.end(),(c.allowedTools&&c.allowedTools.length>0||r.merged.tools?.allowed&&r.merged.tools.allowed.length>0)&&se.emitFeedback("warning","Warning: --allowed-tools cli argument and tools.allowed in settings.json are deprecated and will be removed in 1.0: Migrate to Policy Engine: https://geminicli.com/docs/core/policy-engine/"),r.merged.tools?.exclude&&r.merged.tools.exclude.length>0&&se.emitFeedback("warning","Warning: tools.exclude in settings.json is deprecated and will be removed in 1.0. Migrate to Policy Engine: https://geminicli.com/docs/core/policy-engine/"),c.startupMessages&&c.startupMessages.forEach(w=>{se.emitFeedback("info",w)}),c.promptInteractive&&!process.stdin.isTTY&&(Oe(`Error: The --prompt-interactive flag cannot be used when input is piped from stdin.
207
207
  `),await we(),process.exit(ze.FATAL_INPUT_ERROR));let d=ta(c),l=new Kn({stderr:!0,debugMode:d,onNewMessage:w=>{se.emitConsoleLog(w.type,w.content)}});l.patch(),Vn(l.cleanup),yE.setDefaultResultOrder(bE(r.merged.advanced.dnsResolutionOrder)),(!r.merged.security.auth.selectedType||r.merged.security.auth.selectedType===it.LEGACY_CLOUD_SHELL)&&(process.env.CLOUD_SHELL==="true"||process.env.GEMINI_CLI_USE_COMPUTE_ADC==="true")&&r.setValue("User","security.auth.selectedType",it.COMPUTE_ADC);let m=await Rn(r.merged,Gs,c,{projectHooks:r.workspace.settings.hooks});e.setConfig(m);let D=!1;if(!r.merged.security.auth.useExternal)try{if(m.isInteractive()&&r.merged.security.auth.selectedType){let w=Js(r.merged.security.auth.selectedType);if(w)throw new Error(w);await m.refreshAuth(r.merged.security.auth.selectedType)}else if(!m.isInteractive()){let w=await za(r.merged.security.auth.selectedType,r.merged.security.auth.useExternal,m,r);await m.refreshAuth(w)}}catch(w){w instanceof _u&&(await we(),process.exit(ze.SUCCESS)),w instanceof xu||(S.error("Error authenticating:",w),D=!0)}let x=m.getRemoteAdminSettings();if(x&&r.setRemoteAdminSettings(x),await jd(r.merged),!process.env.SANDBOX){let w=r.merged.advanced.autoConfigureMemory?wE(d):[],C=await No(r.merged,c);if(C){D&&(await we(),process.exit(ze.FATAL_AUTHENTICATION_ERROR));let p="";process.stdin.isTTY||(p=await na());let O=((A,k)=>{let L=[...A];if(k){let ne=L.findIndex(q=>q==="--prompt"||q==="-p");ne>-1&&L.length>ne+1?L[ne+1]=`${k}
208
208
 
209
- ${L[ne+1]}`:L.push("--prompt",k)}return L})(process.argv,p);await Wa(()=>mp(C,w,m,O)),await we(),process.exit(ze.SUCCESS)}else await am(w,[],x)}{let w=Pt.start("load_cli_config"),C=await Rn(r.merged,Gs,c,{projectHooks:r.workspace.settings.hooks});if(w?.end(),await C.storage.initialize(),e.setConfig(C),C.isInteractive()&&r.merged.general.devtools){let{setupInitialActivityLogger:W}=await import("./devtoolsService-OU72DFFN.js");await W(C)}dl(C);let p=C.getPolicyEngine(),j=C.getMessageBus();op(p,j,C.storage),Vn(async()=>{await C.getHookSystem()?.fireSessionEndEvent(Ei.Exit)});try{await al(C,r.merged)}catch(W){S.error("Failed to cleanup expired sessions:",W)}if(C.getListExtensions()){S.log("Installed extensions:");for(let W of C.getExtensions())S.log(`- ${W.name}`);await we(),process.exit(ze.SUCCESS)}if(C.getListSessions()){let W=r.merged.security.auth.selectedType;if(W)try{await C.refreshAuth(W)}catch(X){S.debug("Auth failed for --list-sessions, summaries may not be generated:",X)}await um(C),await we(),process.exit(ze.SUCCESS)}let O=C.getDeleteSession();O&&(await lm(C,O),await we(),process.exit(ze.SUCCESS));let A=process.stdin.isRaw;C.isInteractive()&&!A&&process.stdin.isTTY&&(process.stdin.setRawMode(!0),vi(()=>{process.stdin.setRawMode(A)})),await cm(C,r);let k=Pt.start("initialize_app"),L=await Rl(C,r);if(k?.end(),r.merged.security.auth.selectedType===it.LOGIN_WITH_GOOGLE&&C.isBrowserLaunchSuppressed()&&await ou(r.merged.security.auth.selectedType,C),C.getAcpMode())return rm(C,r,c);let ne=C.getQuestion(),q=su(Ll(C),C.getScreenReader()),B=[...(await hp()).map(W=>({id:`startup-${DE("sha256").update(W).digest("hex").substring(0,16)}`,message:W,priority:qn.High})),...await gp(r.merged,void 0,{isAlternateBuffer:q})],N;if(c.resume){let W=new pn(C);try{let X=await W.resolveSession(c.resume);N={conversation:X.sessionData,filePath:X.sessionPath},C.setSessionId(N.conversation.sessionId)}catch(X){X instanceof rl&&X.code==="NO_SESSIONS_FOUND"?B.push({id:"resume-no-sessions",message:X.message,priority:qn.High}):(se.emitFeedback("error",`Error resuming session: ${X instanceof Error?X.message:"Unknown error"}`),await we(),process.exit(ze.FATAL_INPUT_ERROR))}}if(s?.end(),C.isInteractive()){await FE(C,r,B,process.cwd(),N,L);return}await C.initialize(),Pt.flush(C);let F;process.stdin.isTTY||(F=await na(),F&&(ne=ne?`${F}
209
+ ${L[ne+1]}`:L.push("--prompt",k)}return L})(process.argv,p);await Wa(()=>mp(C,w,m,O)),await we(),process.exit(ze.SUCCESS)}else await am(w,[],x)}{let w=Pt.start("load_cli_config"),C=await Rn(r.merged,Gs,c,{projectHooks:r.workspace.settings.hooks});if(w?.end(),await C.storage.initialize(),e.setConfig(C),C.isInteractive()&&r.merged.general.devtools){let{setupInitialActivityLogger:W}=await import("./devtoolsService-VTCQJZRW.js");await W(C)}dl(C);let p=C.getPolicyEngine(),j=C.getMessageBus();op(p,j,C.storage),Vn(async()=>{await C.getHookSystem()?.fireSessionEndEvent(Ei.Exit)});try{await al(C,r.merged)}catch(W){S.error("Failed to cleanup expired sessions:",W)}if(C.getListExtensions()){S.log("Installed extensions:");for(let W of C.getExtensions())S.log(`- ${W.name}`);await we(),process.exit(ze.SUCCESS)}if(C.getListSessions()){let W=r.merged.security.auth.selectedType;if(W)try{await C.refreshAuth(W)}catch(X){S.debug("Auth failed for --list-sessions, summaries may not be generated:",X)}await um(C),await we(),process.exit(ze.SUCCESS)}let O=C.getDeleteSession();O&&(await lm(C,O),await we(),process.exit(ze.SUCCESS));let A=process.stdin.isRaw;C.isInteractive()&&!A&&process.stdin.isTTY&&(process.stdin.setRawMode(!0),vi(()=>{process.stdin.setRawMode(A)})),await cm(C,r);let k=Pt.start("initialize_app"),L=await Rl(C,r);if(k?.end(),r.merged.security.auth.selectedType===it.LOGIN_WITH_GOOGLE&&C.isBrowserLaunchSuppressed()&&await ou(r.merged.security.auth.selectedType,C),C.getAcpMode())return rm(C,r,c);let ne=C.getQuestion(),q=su(Ll(C),C.getScreenReader()),B=[...(await hp()).map(W=>({id:`startup-${DE("sha256").update(W).digest("hex").substring(0,16)}`,message:W,priority:qn.High})),...await gp(r.merged,void 0,{isAlternateBuffer:q})],N;if(c.resume){let W=new pn(C);try{let X=await W.resolveSession(c.resume);N={conversation:X.sessionData,filePath:X.sessionPath},C.setSessionId(N.conversation.sessionId)}catch(X){X instanceof rl&&X.code==="NO_SESSIONS_FOUND"?B.push({id:"resume-no-sessions",message:X.message,priority:qn.High}):(se.emitFeedback("error",`Error resuming session: ${X instanceof Error?X.message:"Unknown error"}`),await we(),process.exit(ze.FATAL_INPUT_ERROR))}}if(s?.end(),C.isInteractive()){await FE(C,r,B,process.cwd(),N,L);return}await C.initialize(),Pt.flush(C);let F;process.stdin.isTTY||(F=await na(),F&&(ne=ne?`${F}
210
210
 
211
211
  ${ne}`:F));let M=N?Ci.Resume:Ci.Startup,T=C?.getHookSystem();if(T){let W=await T.fireSessionStartEvent(M);if(W){W.systemMessage&&Oe(W.systemMessage+`
212
212
  `);let X=W.getAdditionalContext();if(X){let De=`<hook_context>${X}</hook_context>`;ne=ne?`${De}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "makecoder",
3
- "version": "2.0.66",
3
+ "version": "2.0.67",
4
4
  "description": "MakeCoder: Unified AI agent CLI tool integrating Claude Code, Codex and Gemini CLI",
5
5
  "main": "./dist/coder.js",
6
6
  "bin": {
@@ -30,9 +30,9 @@
30
30
  "zod": "^3.25.76"
31
31
  },
32
32
  "optionalDependencies": {
33
- "makecoder-codex-darwin-arm64": "2.0.66",
34
- "makecoder-codex-linux-x64": "2.0.66",
35
- "makecoder-codex-win32-x64": "2.0.66"
33
+ "makecoder-codex-darwin-arm64": "2.0.67",
34
+ "makecoder-codex-linux-x64": "2.0.67",
35
+ "makecoder-codex-win32-x64": "2.0.67"
36
36
  },
37
37
  "engines": {
38
38
  "node": ">=20.0.0"