@anthropic-ai/claude-code 0.2.33 → 0.2.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cli.js +18 -18
- package/package.json +1 -1
package/cli.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
// (c) Anthropic PBC. All rights reserved. Use is subject to Anthropic's Commercial Terms of Service (https://www.anthropic.com/legal/commercial-terms).
|
|
10
10
|
|
|
11
|
-
// Version: 0.2.
|
|
11
|
+
// Version: 0.2.34
|
|
12
12
|
|
|
13
13
|
import{createRequire as yl2}from"node:module";var Sl2=Object.create;var{getPrototypeOf:Ll2,defineProperty:g41,getOwnPropertyNames:Pl2}=Object;var ul2=Object.prototype.hasOwnProperty;var A1=(I,G,Z)=>{Z=I!=null?Sl2(Ll2(I)):{};let d=G||!I||!I.__esModule?g41(Z,"default",{value:I,enumerable:!0}):Z;for(let W of Pl2(I))if(!ul2.call(d,W))g41(d,W,{get:()=>I[W],enumerable:!0});return d};var _=(I,G)=>()=>(G||I((G={exports:{}}).exports,G),G.exports);var qq=(I,G)=>{for(var Z in G)g41(I,Z,{get:G[Z],enumerable:!0,configurable:!0,set:(d)=>G[Z]=()=>d})};var oV=(I,G)=>()=>(I&&(G=I(I=0)),G);var X1=yl2(import.meta.url);var vW=_((bE1)=>{Object.defineProperty(bE1,"__esModule",{value:!0});var OE1=Object.prototype.toString;function Ol2(I){switch(OE1.call(I)){case"[object Error]":case"[object Exception]":case"[object DOMException]":return!0;default:return gl(I,Error)}}function gq(I,G){return OE1.call(I)===`[object ${G}]`}function ml2(I){return gq(I,"ErrorEvent")}function Tl2(I){return gq(I,"DOMError")}function bl2(I){return gq(I,"DOMException")}function ll2(I){return gq(I,"String")}function mE1(I){return typeof I==="object"&&I!==null&&"__sentry_template_string__"in I&&"__sentry_template_values__"in I}function jl2(I){return I===null||mE1(I)||typeof I!=="object"&&typeof I!=="function"}function TE1(I){return gq(I,"Object")}function kl2(I){return typeof Event!=="undefined"&&gl(I,Event)}function xl2(I){return typeof Element!=="undefined"&&gl(I,Element)}function hl2(I){return gq(I,"RegExp")}function cl2(I){return Boolean(I&&I.then&&typeof I.then==="function")}function pl2(I){return TE1(I)&&"nativeEvent"in I&&"preventDefault"in I&&"stopPropagation"in I}function il2(I){return typeof I==="number"&&I!==I}function gl(I,G){try{return I instanceof G}catch(Z){return!1}}function nl2(I){return!!(typeof I==="object"&&I!==null&&(I.__isVue||I._isVue))}bE1.isDOMError=Tl2;bE1.isDOMException=bl2;bE1.isElement=xl2;bE1.isError=Ol2;bE1.isErrorEvent=ml2;bE1.isEvent=kl2;bE1.isInstanceOf=gl;bE1.isNaN=il2;bE1.isParameterizedString=mE1;bE1.isPlainObject=TE1;bE1.isPrimitive=jl2;bE1.isRegExp=hl2;bE1.isString=ll2;bE1.isSyntheticEvent=pl2;bE1.isThenable=cl2;bE1.isVueViewModel=nl2});var C$=_((jE1)=>{Object.defineProperty(jE1,"__esModule",{value:!0});var Ul=vW();function Yj2(I,G=0){if(typeof I!=="string"||G===0)return I;return I.length<=G?I:`${I.slice(0,G)}...`}function Aj2(I,G){let Z=I,d=Z.length;if(d<=150)return Z;if(G>d)G=d;let W=Math.max(G-60,0);if(W<5)W=0;let B=Math.min(W+140,d);if(B>d-5)B=d;if(B===d)W=Math.max(B-140,0);if(Z=Z.slice(W,B),W>0)Z=`'{snip} ${Z}`;if(B<d)Z+=" {snip}";return Z}function _j2(I,G){if(!Array.isArray(I))return"";let Z=[];for(let d=0;d<I.length;d++){let W=I[d];try{if(Ul.isVueViewModel(W))Z.push("[VueViewModel]");else Z.push(String(W))}catch(B){Z.push("[value cannot be serialized]")}}return Z.join(G)}function lE1(I,G,Z=!1){if(!Ul.isString(I))return!1;if(Ul.isRegExp(G))return G.test(I);if(Ul.isString(G))return Z?I===G:I.includes(G);return!1}function Hj2(I,G=[],Z=!1){return G.some((d)=>lE1(I,d,Z))}jE1.isMatchingPattern=lE1;jE1.safeJoin=_j2;jE1.snipLine=Aj2;jE1.stringMatchesSomePattern=Hj2;jE1.truncate=Yj2});var cE1=_((hE1)=>{Object.defineProperty(hE1,"__esModule",{value:!0});var U41=vW(),Qj2=C$();function Nj2(I,G,Z=250,d,W,B,w){if(!B.exception||!B.exception.values||!w||!U41.isInstanceOf(w.originalException,Error))return;let V=B.exception.values.length>0?B.exception.values[B.exception.values.length-1]:void 0;if(V)B.exception.values=qj2(f41(I,G,W,w.originalException,d,B.exception.values,V,0),Z)}function f41(I,G,Z,d,W,B,w,V){if(B.length>=Z+1)return B;let C=[...B];if(U41.isInstanceOf(d[W],Error)){kE1(w,V);let X=I(G,d[W]),Y=C.length;xE1(X,W,Y,V),C=f41(I,G,Z,d[W],W,[X,...C],X,Y)}if(Array.isArray(d.errors))d.errors.forEach((X,Y)=>{if(U41.isInstanceOf(X,Error)){kE1(w,V);let A=I(G,X),D=C.length;xE1(A,`errors[${Y}]`,D,V),C=f41(I,G,Z,X,W,[A,...C],A,D)}});return C}function kE1(I,G){I.mechanism=I.mechanism||{type:"generic",handled:!0},I.mechanism={...I.mechanism,...I.type==="AggregateError"&&{is_exception_group:!0},exception_id:G}}function xE1(I,G,Z,d){I.mechanism=I.mechanism||{type:"generic",handled:!0},I.mechanism={...I.mechanism,type:"chained",source:G,exception_id:Z,parent_id:d}}function qj2(I,G){return I.map((Z)=>{if(Z.value)Z.value=Qj2.truncate(Z.value,G);return Z})}hE1.applyAggregateErrorsToEvent=Nj2});var bI=_((pE1)=>{Object.defineProperty(pE1,"__esModule",{value:!0});function fl(I){return I&&I.Math==Math?I:void 0}var R41=typeof globalThis=="object"&&fl(globalThis)||typeof window=="object"&&fl(window)||typeof self=="object"&&fl(self)||typeof global=="object"&&fl(global)||function(){return this}()||{};function Uj2(){return R41}function fj2(I,G,Z){let d=Z||R41,W=d.__SENTRY__=d.__SENTRY__||{};return W[I]||(W[I]=G())}pE1.GLOBAL_OBJ=R41;pE1.getGlobalObject=Uj2;pE1.getGlobalSingleton=fj2});var v41=_((iE1)=>{Object.defineProperty(iE1,"__esModule",{value:!0});var Mj2=vW(),$j2=bI(),Uq=$j2.getGlobalObject(),Sj2=80;function Lj2(I,G={}){if(!I)return"<unknown>";try{let Z=I,d=5,W=[],B=0,w=0,V=" > ",C=V.length,X,Y=Array.isArray(G)?G:G.keyAttrs,A=!Array.isArray(G)&&G.maxStringLength||Sj2;while(Z&&B++<d){if(X=Pj2(Z,Y),X==="html"||B>1&&w+W.length*C+X.length>=A)break;W.push(X),w+=X.length,Z=Z.parentNode}return W.reverse().join(V)}catch(Z){return"<unknown>"}}function Pj2(I,G){let Z=I,d=[],W,B,w,V,C;if(!Z||!Z.tagName)return"";if(Uq.HTMLElement){if(Z instanceof HTMLElement&&Z.dataset&&Z.dataset.sentryComponent)return Z.dataset.sentryComponent}d.push(Z.tagName.toLowerCase());let X=G&&G.length?G.filter((A)=>Z.getAttribute(A)).map((A)=>[A,Z.getAttribute(A)]):null;if(X&&X.length)X.forEach((A)=>{d.push(`[${A[0]}="${A[1]}"]`)});else{if(Z.id)d.push(`#${Z.id}`);if(W=Z.className,W&&Mj2.isString(W)){B=W.split(/\s+/);for(C=0;C<B.length;C++)d.push(`.${B[C]}`)}}let Y=["aria-label","type","name","title","alt"];for(C=0;C<Y.length;C++)if(w=Y[C],V=Z.getAttribute(w),V)d.push(`[${w}="${V}"]`);return d.join("")}function uj2(){try{return Uq.document.location.href}catch(I){return""}}function yj2(I){if(Uq.document&&Uq.document.querySelector)return Uq.document.querySelector(I);return null}function Oj2(I){if(!Uq.HTMLElement)return null;let G=I,Z=5;for(let d=0;d<Z;d++){if(!G)return null;if(G instanceof HTMLElement&&G.dataset.sentryComponent)return G.dataset.sentryComponent;G=G.parentNode}return null}iE1.getComponentName=Oj2;iE1.getDomElement=yj2;iE1.getLocationHref=uj2;iE1.htmlTreeAsString=Lj2});var eV=_((nE1)=>{Object.defineProperty(nE1,"__esModule",{value:!0});var jj2=typeof __SENTRY_DEBUG__==="undefined"||__SENTRY_DEBUG__;nE1.DEBUG_BUILD=jj2});var Gw=_((rE1)=>{Object.defineProperty(rE1,"__esModule",{value:!0});var xj2=eV(),E41=bI(),hj2="Sentry Logger ",M41=["debug","info","warn","error","log","assert","trace"],$41={};function aE1(I){if(!("console"in E41.GLOBAL_OBJ))return I();let G=E41.GLOBAL_OBJ.console,Z={},d=Object.keys($41);d.forEach((W)=>{let B=$41[W];Z[W]=G[W],G[W]=B});try{return I()}finally{d.forEach((W)=>{G[W]=Z[W]})}}function cj2(){let I=!1,G={enable:()=>{I=!0},disable:()=>{I=!1},isEnabled:()=>I};if(xj2.DEBUG_BUILD)M41.forEach((Z)=>{G[Z]=(...d)=>{if(I)aE1(()=>{E41.GLOBAL_OBJ.console[Z](`${hj2}[${Z}]:`,...d)})}});else M41.forEach((Z)=>{G[Z]=()=>{return}});return G}var pj2=cj2();rE1.CONSOLE_LEVELS=M41;rE1.consoleSandbox=aE1;rE1.logger=pj2;rE1.originalConsoleMethods=$41});var S41=_((eE1)=>{Object.defineProperty(eE1,"__esModule",{value:!0});var sj2=eV(),X$=Gw(),oj2=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)([\w.-]+)(?::(\d+))?\/(.+)/;function ej2(I){return I==="http"||I==="https"}function tj2(I,G=!1){let{host:Z,path:d,pass:W,port:B,projectId:w,protocol:V,publicKey:C}=I;return`${V}://${C}${G&&W?`:${W}`:""}@${Z}${B?`:${B}`:""}/${d?`${d}/`:d}${w}`}function sE1(I){let G=oj2.exec(I);if(!G){X$.consoleSandbox(()=>{console.error(`Invalid Sentry Dsn: ${I}`)});return}let[Z,d,W="",B,w="",V]=G.slice(1),C="",X=V,Y=X.split("/");if(Y.length>1)C=Y.slice(0,-1).join("/"),X=Y.pop();if(X){let A=X.match(/^\d+/);if(A)X=A[0]}return oE1({host:B,pass:W,path:C,projectId:X,port:w,protocol:Z,publicKey:d})}function oE1(I){return{protocol:I.protocol,publicKey:I.publicKey||"",pass:I.pass||"",host:I.host,port:I.port||"",path:I.path||"",projectId:I.projectId}}function Ik2(I){if(!sj2.DEBUG_BUILD)return!0;let{port:G,projectId:Z,protocol:d}=I;if(["protocol","publicKey","host","projectId"].find((w)=>{if(!I[w])return X$.logger.error(`Invalid Sentry Dsn: ${w} missing`),!0;return!1}))return!1;if(!Z.match(/^\d+$/))return X$.logger.error(`Invalid Sentry Dsn: Invalid projectId ${Z}`),!1;if(!ej2(d))return X$.logger.error(`Invalid Sentry Dsn: Invalid protocol ${d}`),!1;if(G&&isNaN(parseInt(G,10)))return X$.logger.error(`Invalid Sentry Dsn: Invalid port ${G}`),!1;return!0}function Gk2(I){let G=typeof I==="string"?sE1(I):oE1(I);if(!G||!Ik2(G))return;return G}eE1.dsnFromString=sE1;eE1.dsnToString=tj2;eE1.makeDsn=Gk2});var L41=_((IM1)=>{Object.defineProperty(IM1,"__esModule",{value:!0});class tE1 extends Error{constructor(I,G="warn"){super(I);this.message=I,this.name=new.target.prototype.constructor.name,Object.setPrototypeOf(this,new.target.prototype),this.logLevel=G}}IM1.SentryError=tE1});var EW=_((VM1)=>{Object.defineProperty(VM1,"__esModule",{value:!0});var wk2=v41(),Vk2=eV(),fq=vW(),Ck2=Gw(),GM1=C$();function Xk2(I,G,Z){if(!(G in I))return;let d=I[G],W=Z(d);if(typeof W==="function")BM1(W,d);I[G]=W}function WM1(I,G,Z){try{Object.defineProperty(I,G,{value:Z,writable:!0,configurable:!0})}catch(d){Vk2.DEBUG_BUILD&&Ck2.logger.log(`Failed to add non-enumerable property "${G}" to object`,I)}}function BM1(I,G){try{let Z=G.prototype||{};I.prototype=G.prototype=Z,WM1(I,"__sentry_original__",G)}catch(Z){}}function Yk2(I){return I.__sentry_original__}function Ak2(I){return Object.keys(I).map((G)=>`${encodeURIComponent(G)}=${encodeURIComponent(I[G])}`).join("&")}function wM1(I){if(fq.isError(I))return{message:I.message,name:I.name,stack:I.stack,...dM1(I)};else if(fq.isEvent(I)){let G={type:I.type,target:ZM1(I.target),currentTarget:ZM1(I.currentTarget),...dM1(I)};if(typeof CustomEvent!=="undefined"&&fq.isInstanceOf(I,CustomEvent))G.detail=I.detail;return G}else return I}function ZM1(I){try{return fq.isElement(I)?wk2.htmlTreeAsString(I):Object.prototype.toString.call(I)}catch(G){return"<unknown>"}}function dM1(I){if(typeof I==="object"&&I!==null){let G={};for(let Z in I)if(Object.prototype.hasOwnProperty.call(I,Z))G[Z]=I[Z];return G}else return{}}function _k2(I,G=40){let Z=Object.keys(wM1(I));if(Z.sort(),!Z.length)return"[object has no keys]";if(Z[0].length>=G)return GM1.truncate(Z[0],G);for(let d=Z.length;d>0;d--){let W=Z.slice(0,d).join(", ");if(W.length>G)continue;if(d===Z.length)return W;return GM1.truncate(W,G)}return""}function Hk2(I){return P41(I,new Map)}function P41(I,G){if(Dk2(I)){let Z=G.get(I);if(Z!==void 0)return Z;let d={};G.set(I,d);for(let W of Object.keys(I))if(typeof I[W]!=="undefined")d[W]=P41(I[W],G);return d}if(Array.isArray(I)){let Z=G.get(I);if(Z!==void 0)return Z;let d=[];return G.set(I,d),I.forEach((W)=>{d.push(P41(W,G))}),d}return I}function Dk2(I){if(!fq.isPlainObject(I))return!1;try{let G=Object.getPrototypeOf(I).constructor.name;return!G||G==="Object"}catch(G){return!0}}function Fk2(I){let G;switch(!0){case(I===void 0||I===null):G=new String(I);break;case(typeof I==="symbol"||typeof I==="bigint"):G=Object(I);break;case fq.isPrimitive(I):G=new I.constructor(I);break;default:G=I;break}return G}VM1.addNonEnumerableProperty=WM1;VM1.convertToPlainObject=wM1;VM1.dropUndefinedKeys=Hk2;VM1.extractExceptionKeysForMessage=_k2;VM1.fill=Xk2;VM1.getOriginalFunction=Yk2;VM1.markFunctionWrapped=BM1;VM1.objectify=Fk2;VM1.urlEncode=Ak2});var Rl=_((XM1)=>{Object.defineProperty(XM1,"__esModule",{value:!0});function CM1(I,G=!1){return!(G||I&&!I.startsWith("/")&&!I.match(/^[A-Z]:/)&&!I.startsWith(".")&&!I.match(/^[a-zA-Z]([a-zA-Z0-9.\-+])*:\/\//))&&I!==void 0&&!I.includes("node_modules/")}function Rk2(I){let G=/^\s*[-]{4,}$/,Z=/at (?:async )?(?:(.+?)\s+\()?(?:(.+):(\d+):(\d+)?|([^)]+))\)?/;return(d)=>{let W=d.match(Z);if(W){let B,w,V,C,X;if(W[1]){V=W[1];let D=V.lastIndexOf(".");if(V[D-1]===".")D--;if(D>0){B=V.slice(0,D),w=V.slice(D+1);let J=B.indexOf(".Module");if(J>0)V=V.slice(J+1),B=B.slice(0,J)}C=void 0}if(w)C=B,X=w;if(w==="<anonymous>")X=void 0,V=void 0;if(V===void 0)X=X||"<anonymous>",V=C?`${C}.${X}`:X;let Y=W[2]&&W[2].startsWith("file://")?W[2].slice(7):W[2],A=W[5]==="native";if(Y&&Y.match(/\/[A-Z]:/))Y=Y.slice(1);if(!Y&&W[5]&&!A)Y=W[5];return{filename:Y,module:I?I(Y):void 0,function:V,lineno:parseInt(W[3],10)||void 0,colno:parseInt(W[4],10)||void 0,in_app:CM1(Y,A)}}if(d.match(G))return{filename:d};return}}XM1.filenameIsInApp=CM1;XM1.node=Rk2});var vl=_((JM1)=>{Object.defineProperty(JM1,"__esModule",{value:!0});var _M1=Rl(),HM1=50,YM1=/\(error: (.*)\)/,AM1=/captureMessage|captureException/;function DM1(...I){let G=I.sort((Z,d)=>Z[0]-d[0]).map((Z)=>Z[1]);return(Z,d=0)=>{let W=[],B=Z.split(`
|
|
14
14
|
`);for(let w=d;w<B.length;w++){let V=B[w];if(V.length>1024)continue;let C=YM1.test(V)?V.replace(YM1,"$1"):V;if(C.match(/\S*Error: /))continue;for(let X of G){let Y=X(C);if(Y){W.push(Y);break}}if(W.length>=HM1)break}return FM1(W)}}function Mk2(I){if(Array.isArray(I))return DM1(...I);return I}function FM1(I){if(!I.length)return[];let G=Array.from(I);if(/sentryWrapped/.test(G[G.length-1].function||""))G.pop();if(G.reverse(),AM1.test(G[G.length-1].function||"")){if(G.pop(),AM1.test(G[G.length-1].function||""))G.pop()}return G.slice(0,HM1).map((Z)=>({...Z,filename:Z.filename||G[G.length-1].filename,function:Z.function||"?"}))}var u41="<anonymous>";function $k2(I){try{if(!I||typeof I!=="function")return u41;return I.name||u41}catch(G){return u41}}function Sk2(I){return[90,_M1.node(I)]}JM1.filenameIsInApp=_M1.filenameIsInApp;JM1.createStackParser=DM1;JM1.getFunctionName=$k2;JM1.nodeStackLineParser=Sk2;JM1.stackParserFromStackParserOptions=Mk2;JM1.stripSentryFramesAndReverse=FM1});var BY=_((zM1)=>{Object.defineProperty(zM1,"__esModule",{value:!0});var Tk2=eV(),bk2=Gw(),lk2=vl(),Rq={},KM1={};function jk2(I,G){Rq[I]=Rq[I]||[],Rq[I].push(G)}function kk2(){Object.keys(Rq).forEach((I)=>{Rq[I]=void 0})}function xk2(I,G){if(!KM1[I])G(),KM1[I]=!0}function hk2(I,G){let Z=I&&Rq[I];if(!Z)return;for(let d of Z)try{d(G)}catch(W){Tk2.DEBUG_BUILD&&bk2.logger.error(`Error while triggering instrumentation handler.
|
|
@@ -415,7 +415,7 @@ Expecting one of '${Z.join("', '")}'`);let d=`${I}Help`;return this.on(d,(W)=>{l
|
|
|
415
415
|
`:`
|
|
416
416
|
`)+Z,W=d+1,d=I.indexOf(`
|
|
417
417
|
`,W)}while(d!==-1);return B+=I.slice(W),B}var{stdout:jx1,stderr:kx1}=Tx1,y51=Symbol("GENERATOR"),fg=Symbol("STYLER"),VS=Symbol("IS_EMPTY"),xx1=["ansi","ansi","ansi256","ansi16m"],Rg=Object.create(null),jK4=(I,G={})=>{if(G.level&&!(Number.isInteger(G.level)&&G.level>=0&&G.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let Z=jx1?jx1.level:0;I.level=G.level===void 0?Z:G.level};var kK4=(I)=>{let G=(...Z)=>Z.join(" ");return jK4(G,I),Object.setPrototypeOf(G,CS.prototype),G};function CS(I){return kK4(I)}Object.setPrototypeOf(CS.prototype,Function.prototype);for(let[I,G]of Object.entries(ww))Rg[I]={get(){let Z=wx(this,m51(G.open,G.close,this[fg]),this[VS]);return Object.defineProperty(this,I,{value:Z}),Z}};Rg.visible={get(){let I=wx(this,this[fg],!0);return Object.defineProperty(this,"visible",{value:I}),I}};var O51=(I,G,Z,...d)=>{if(I==="rgb"){if(G==="ansi16m")return ww[Z].ansi16m(...d);if(G==="ansi256")return ww[Z].ansi256(ww.rgbToAnsi256(...d));return ww[Z].ansi(ww.rgbToAnsi(...d))}if(I==="hex")return O51("rgb",G,Z,...ww.hexToRgb(...d));return ww[Z][I](...d)},xK4=["rgb","hex","ansi256"];for(let I of xK4){Rg[I]={get(){let{level:Z}=this;return function(...d){let W=m51(O51(I,xx1[Z],"color",...d),ww.color.close,this[fg]);return wx(this,W,this[VS])}}};let G="bg"+I[0].toUpperCase()+I.slice(1);Rg[G]={get(){let{level:Z}=this;return function(...d){let W=m51(O51(I,xx1[Z],"bgColor",...d),ww.bgColor.close,this[fg]);return wx(this,W,this[VS])}}}}var hK4=Object.defineProperties(()=>{},{...Rg,level:{enumerable:!0,get(){return this[y51].level},set(I){this[y51].level=I}}}),m51=(I,G,Z)=>{let d,W;if(Z===void 0)d=I,W=G;else d=Z.openAll+I,W=G+Z.closeAll;return{open:I,close:G,openAll:d,closeAll:W,parent:Z}},wx=(I,G,Z)=>{let d=(...W)=>cK4(d,W.length===1?""+W[0]:W.join(" "));return Object.setPrototypeOf(d,hK4),d[y51]=I,d[fg]=G,d[VS]=Z,d},cK4=(I,G)=>{if(I.level<=0||!G)return I[VS]?"":G;let Z=I[fg];if(Z===void 0)return G;let{openAll:d,closeAll:W}=Z;if(G.includes("\x1B"))while(Z!==void 0)G=bx1(G,Z.close,Z.open),Z=Z.parent;let B=G.indexOf(`
|
|
418
|
-
`);if(B!==-1)G=lx1(G,W,d,B);return d+G+W};Object.defineProperties(CS.prototype,Rg);var pK4=CS(),Ga3=CS({level:kx1?kx1.level:0});var T0=pK4;var iK4={autoAccept:"rgb(135,0,255)",bashBorder:"rgb(255,0,135)",claude:"rgb(215,119,87)",permission:"rgb(87,105,247)",secondaryBorder:"rgb(153,153,153)",text:"rgb(0,0,0)",secondaryText:"rgb(102,102,102)",suggestion:"rgb(87,105,247)",remember:"rgb(0,0,255)",success:"rgb(44,122,57)",error:"rgb(171,43,63)",warning:"rgb(150,108,30)",diff:{added:"rgb(105,219,124)",removed:"rgb(255,168,180)",addedDimmed:"rgb(199,225,203)",removedDimmed:"rgb(253,210,216)",addedWord:"rgb(47,157,68)",removedWord:"rgb(209,69,75)",addedWordDimmed:"rgb(144,194,156)",removedWordDimmed:"rgb(232,165,173)"}},nK4={autoAccept:"#cd00cd",bashBorder:"#cd00cd",claude:"#cdcd00",permission:"#0000ee",secondaryBorder:"#e5e5e5",text:"#000000",secondaryText:"#7f7f7f",suggestion:"#0000ee",remember:"#0000ee",success:"#00cd00",error:"#cd0000",warning:"#cdcd00",diff:{added:"#00cd00",removed:"#cd0000",addedDimmed:"#00cd00",removedDimmed:"#cd0000",addedWord:"#00ff00",removedWord:"#ff0000",addedWordDimmed:"#00cd00",removedWordDimmed:"#cd0000"}},aK4={autoAccept:"#ff00ff",bashBorder:"#ff00ff",claude:"#cdcd00",permission:"#5c5cff",secondaryBorder:"#e5e5e5",text:"#ffffff",secondaryText:"#e5e5e5",suggestion:"#5c5cff",remember:"#5c5cff",success:"#00ff00",error:"#ff0000",warning:"#ffff00",diff:{added:"#00cd00",removed:"#cd0000",addedDimmed:"#00cd00",removedDimmed:"#cd0000",addedWord:"#00ff00",removedWord:"#ff0000",addedWordDimmed:"#00cd00",removedWordDimmed:"#cd0000"}},rK4={autoAccept:"rgb(135,0,255)",bashBorder:"rgb(0,102,204)",claude:"rgb(255,153,51)",permission:"rgb(51,102,255)",secondaryBorder:"rgb(153,153,153)",text:"rgb(0,0,0)",secondaryText:"rgb(102,102,102)",suggestion:"rgb(51,102,255)",remember:"rgb(51,102,255)",success:"rgb(0,102,153)",error:"rgb(204,0,0)",warning:"rgb(255,153,0)",diff:{added:"rgb(153,204,255)",removed:"rgb(255,204,204)",addedDimmed:"rgb(209,231,253)",removedDimmed:"rgb(255,233,233)",addedWord:"rgb(51,102,204)",removedWord:"rgb(153,51,51)",addedWordDimmed:"rgb(102,153,204)",removedWordDimmed:"rgb(204,153,153)"}},sK4={autoAccept:"rgb(175,135,255)",bashBorder:"rgb(253,93,177)",claude:"rgb(215,119,87)",permission:"rgb(177,185,249)",secondaryBorder:"rgb(136,136,136)",text:"rgb(255,255,255)",secondaryText:"rgb(153,153,153)",suggestion:"rgb(177,185,249)",remember:"rgb(177,185,249)",success:"rgb(78,186,101)",error:"rgb(255,107,128)",warning:"rgb(255,193,7)",diff:{added:"rgb(34,92,43)",removed:"rgb(122,41,54)",addedDimmed:"rgb(71,88,74)",removedDimmed:"rgb(105,72,77)",addedWord:"rgb(56,166,96)",removedWord:"rgb(179,89,107)",addedWordDimmed:"rgb(46,107,58)",removedWordDimmed:"rgb(139,57,69)"}},oK4={autoAccept:"rgb(175,135,255)",bashBorder:"rgb(51,153,255)",claude:"rgb(255,153,51)",permission:"rgb(153,204,255)",secondaryBorder:"rgb(136,136,136)",text:"rgb(255,255,255)",secondaryText:"rgb(153,153,153)",suggestion:"rgb(153,204,255)",remember:"rgb(153,204,255)",success:"rgb(51,153,255)",error:"rgb(255,102,102)",warning:"rgb(255,204,0)",diff:{added:"rgb(0,68,102)",removed:"rgb(102,0,0)",addedDimmed:"rgb(62,81,91)",removedDimmed:"rgb(62,44,44)",addedWord:"rgb(0,119,179)",removedWord:"rgb(179,0,0)",addedWordDimmed:"rgb(26,99,128)",removedWordDimmed:"rgb(128,21,21)"}};function q8(I){let G=I.match(/rgb\((\d+),(\d+),(\d+)\)/);if(!G||G.length<4)return 8;let Z=parseInt(G[1],10),d=parseInt(G[2],10),W=parseInt(G[3],10);if(Math.abs(Z-d)<20&&Math.abs(d-W)<20&&Math.abs(Z-W)<20){let C=Math.round((Z+d+W)/3);if(C<8)return 16;if(C>240)return 231;return Math.round((C-8)/247*24)+232}let B=Math.round(Z/255*5),w=Math.round(d/255*5),V=Math.round(W/255*5);return 16+36*B+6*w+V}function e1(I){let G=Q2();switch(I??G.theme){case"light":return iK4;case"light-ansi":return nK4;case"dark-ansi":return aK4;case"light-daltonized":return rK4;case"dark-daltonized":return oK4;default:return sK4}}var hI=x2((I)=>{let G=e1(I);return{autoAccept:q8(G.autoAccept),bashBorder:q8(G.bashBorder),claude:q8(G.claude),permission:q8(G.permission),secondaryBorder:q8(G.secondaryBorder),text:q8(G.text),secondaryText:q8(G.secondaryText),suggestion:q8(G.suggestion),remember:q8(G.remember),success:q8(G.success),error:q8(G.error),warning:q8(G.warning),diff:{added:q8(G.diff.added),removed:q8(G.diff.removed),addedDimmed:q8(G.diff.addedDimmed),removedDimmed:q8(G.diff.removedDimmed),addedWord:q8(G.diff.addedWord),removedWord:q8(G.diff.removedWord),addedWordDimmed:q8(G.diff.addedWordDimmed),removedWordDimmed:q8(G.diff.removedWordDimmed)}}});var Vx=[],Iz4=100,Sd=tK4(),T51=P51("claude-cli");function b51(I){return I.replace(/[^a-zA-Z0-9]/g,"-")}var HH={errors:()=>vg(T51.cache,b51(process.cwd()),"errors"),messages:()=>vg(T51.cache,b51(process.cwd()),"messages"),mcpLogs:(I)=>vg(T51.cache,b51(process.cwd()),`mcp-logs-${I}`)};function Cx(I){return I.toISOString().replace(/[:.]/g,"-")}var cx1=Cx(new Date);function Gz4(){return vg(HH.errors(),cx1+".txt")}function JC(I,G,Z){return vg(HH.messages(),`${I}${G>0?`-${G}`:""}${Z>0?`-sidechain-${Z}`:""}.json`)}function W0(I,G,Z){try{if(G)nx1(G,Z);let d=I instanceof Error?I.stack||I.message:String(I),W={error:d,timestamp:new Date().toISOString()};if(Vx.length>=Iz4)Vx.shift();Vx.push(W),Zz4(Gz4(),{error:d})}catch{}Xx(I)}function j51(){return[...Vx]}function px1(I){if(!_H(I))return[];try{return JSON.parse(eK4(I,"utf8"))}catch{return[]}}function Zz4(I,G){return}function Eg(I,G){return}function Mg(I){return I.filter((G)=>G.type!=="progress")}function k51(I,G,Z){while(_H(JC(I,G,Z)))G++;return G}function ix1(I,G){let Z=1;while(_H(JC(I,G,Z)))Z++;return Z}function iK(I,G){if(process.argv.includes("--mcp-debug"))console.error(T0.ansi256(hI().error)(`MCP server "${I}" ${G}`));try{let Z=HH.mcpLogs(I),d=G instanceof Error?G.stack||G.message:String(G),W=new Date().toISOString(),B=vg(Z,cx1+".txt");if(!_H(Z))l51(Z,{recursive:!0});if(!_H(B))XS(B,"[]","utf8");let w={error:d,timestamp:W,sessionId:Sd,cwd:process.cwd()},V=px1(B);V.push(w),XS(B,JSON.stringify(V,null,2),"utf8")}catch{}}import*as ep1 from"os";var L61=A1(u1(),1);var ix=A1(bp1(),1);var Yg4={visibilityState:"visible",documentElement:{lang:"en"},addEventListener:(I,G)=>{}},Ag4={document:Yg4,location:{href:"node://localhost",pathname:"/"},addEventListener:(I,G)=>{if(I==="beforeunload")process.on("exit",()=>{if(typeof G==="function")G({});else G.handleEvent({})})},focus:()=>{},innerHeight:768,innerWidth:1024},_g4={sendBeacon:(I,G)=>{return!0},userAgent:"Mozilla/5.0 (Node.js) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0",language:"en-US"};if(typeof window==="undefined")global.window=Ag4;if(typeof navigator==="undefined")global.navigator=_g4;import*as Vw from"fs";import*as NS from"path";import{homedir as Hg4}from"os";import{existsSync as Dg4,unlinkSync as Fg4}from"fs";var eK=NS.join(Hg4(),".claude","statsig");try{Vw.mkdirSync(eK,{recursive:!0})}catch(I){W0(`Failed to create statsig storage directory: ${I}`)}class $61{cache=new Map;ready=!1;constructor(){try{if(!Vw.existsSync(eK))Vw.mkdirSync(eK,{recursive:!0});let I=Vw.readdirSync(eK);for(let G of I){let Z=decodeURIComponent(G),d=Vw.readFileSync(NS.join(eK,G),"utf8");this.cache.set(Z,d)}this.ready=!0}catch(I){W0(`Failed to initialize statsig storage: ${I}`),this.ready=!0}}isReady(){return this.ready}isReadyResolver(){return this.ready?Promise.resolve():null}getProviderName(){return"FileSystemStorageProvider"}getItem(I){return this.cache.get(I)??null}setItem(I,G){this.cache.set(I,G);try{let Z=encodeURIComponent(I);Vw.writeFileSync(NS.join(eK,Z),G,"utf8")}catch(Z){W0(`Failed to write statsig storage item: ${Z}`)}}removeItem(I){this.cache.delete(I);let G=encodeURIComponent(I),Z=NS.join(eK,G);if(!Dg4(Z))return;try{Fg4(Z)}catch(d){W0(`Failed to remove statsig storage item: ${d}`)}}getAllKeys(){return Array.from(this.cache.keys())}}var lp1="https://e531a1d9ec1de9064fae9d4affb0b0f4@o1158394.ingest.us.sentry.io/4508259541909504",jp1="client-RRNS7R65EAtReO5XA4xDC3eU6ZdJQi6lLEP6b5j32Me";var kp1="tengu-token-efficient-tools",xp1="token-efficient-tools-2025-02-19",hp1="claude-code-20250219";var cx=x2(async()=>{let I=[hp1];if(process.env.SWE_BENCH){if(await px(kp1))I.push(xp1)}return I});var E6=!!process.env.CLAUDE_CODE_USE_BEDROCK,M6=!!process.env.CLAUDE_CODE_USE_VERTEX,cp1={bedrock:"us.anthropic.claude-3-7-sonnet-20250219-v1:0",vertex:"claude-3-7-sonnet@20250219",firstParty:"claude-3-7-sonnet-20250219"},Cw=E6?"us.anthropic.claude-3-5-haiku-20241022-v1:0":M6?"claude-3-5-haiku@20241022":"claude-3-5-haiku-20241022";async function Jg4(){try{return await tK("tengu-capable-model-config",cp1)}catch(I){return W0(I),cp1}}var g8=x2(async()=>{let I=await Jg4();if(E6){if(process.env.ANTHROPIC_MODEL)return process.env.ANTHROPIC_MODEL;return I.bedrock}if(M6){if(process.env.ANTHROPIC_MODEL)return process.env.ANTHROPIC_MODEL;return I.vertex}return I.firstParty});async function S61(){return!process.env.ANTHROPIC_MODEL||process.env.ANTHROPIC_MODEL===await g8()}function pp1(I){if(I?.startsWith("claude-3-5-haiku"))return process.env.VERTEX_REGION_CLAUDE_3_5_HAIKU;else if(I?.startsWith("claude-3-5-sonnet"))return process.env.VERTEX_REGION_CLAUDE_3_5_SONNET;else if(I?.startsWith("claude-3-7-sonnet"))return process.env.VERTEX_REGION_CLAUDE_3_7_SONNET}var ip1={},qS=null,pg=x2(async()=>{if(P2.isCI)return null;let I=await nx(),G={networkConfig:{api:"https://statsig.anthropic.com/v1/"},environment:{tier:P2.isCI||["test","development"].includes("production")?"dev":"production"},logLevel:ix.LogLevel.None,storageProvider:new $61};return qS=new ix.StatsigClient(jp1,I,G),qS.on("error",(Z)=>{W0(`Statsig error: ${Z}`)}),await qS.initializeAsync(),process.on("exit",()=>{qS?.flush()}),qS});async function B0(I,G){if(P2.isCI)return;await Promise.all([pg(),cx(),G.model?Promise.resolve(G.model):g8(),P2.getPackageManagers(),P2.getRuntimes()]).then(([Z,d,W,B,w])=>{if(!Z)return;let V={...G,model:W,sessionId:Sd,userType:"external",...{},...d.length>0?{betas:d.join(",")}:{},env:JSON.stringify({platform:P2.platform,nodeVersion:P2.nodeVersion,terminal:P2.terminal,packageManagers:B.join(","),runtimes:w.join(","),isRunningWithBun:P2.isRunningWithBun(),version:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.33"}.VERSION})},C={eventName:I,metadata:V};Z.logEvent(C),Z.flush()}).catch((Z)=>{W0(`Failed to log statsig event ${I}: ${Z}`)})}var px=x2(async(I)=>{if(P2.isCI)return!1;let G=await pg();if(!G)return!1;let Z=G.checkGate(I);return ip1[I]=Z,Z}),np1=(I,G=!1)=>{let[Z,d]=L61.default.useState(G);return L61.default.useEffect(()=>{px(I).then(d)},[I]),Z};function ap1(){return{...ip1}}var br3=x2(async(I,G)=>{if(P2.isCI)return G;let Z=await pg();if(!Z)return G;let d=Z.getExperiment(I);if(Object.keys(d.value).length===0)return W0(`getExperimentValue got empty value for ${I}`),G;return d.value}),tK=async(I,G)=>{if(P2.isCI)return G;let Z=await pg();if(!Z)return G;let d=Z.getDynamicConfig(I);if(Object.keys(d.value).length===0)return W0(`getDynamicConfig got empty value for ${I}`),G;return d.value};class P61 extends TypeError{}class NC extends Error{}class ig extends Error{filePath;defaultConfig;constructor(I,G,Z){super(I);this.name="ConfigParseError",this.filePath=G,this.defaultConfig=Z}}class gS extends Error{stdout;stderr;code;interrupted;constructor(I,G,Z,d){super("Shell command failed");this.stdout=I;this.stderr=G;this.code=Z;this.interrupted=d;this.name="ShellError"}}var gg4=1800000,sp1=143,Ug4=1,ax=Ug4*1024*1024;class US{path;type;constructor(I,G){this.type=G,this.path=`${ep1.tmpdir()}/claude-${I}-${G}`,this.clear()}clear(){pI.writeFileSync(this.path,"")}write(I){pI.writeFileSync(this.path,I)}read(){try{return pI.existsSync(this.path)?pI.readFileSync(this.path,"utf8"):""}catch(I){return W0(new Error(`Failed to read file ${this.path}: ${I}`)),""}}exists(){return pI.existsSync(this.path)}size(){try{return this.exists()?pI.statSync(this.path).size:0}catch{return 0}}delete(){if(this.exists())try{pI.unlinkSync(this.path)}catch(I){W0(new Error(`Failed to delete file ${this.path}: ${I}`))}}}class n8{commandQueue=[];isExecuting=!1;shell;isAlive=!0;commandInterrupted=!1;files;cwd;binShell;recentStdout="";recentStderr="";MAX_BUFFER_LENGTH=1e4;constructor(I){this.binShell=this.findSuitableShell(),this.shell=zg4(this.binShell,["-l"],{stdio:["pipe","pipe","pipe"],cwd:I,env:{...process.env,SHELL:this.binShell,GIT_EDITOR:"true"}}),B0("persistent_shell_spawn_success",{shell_path:this.binShell,has_shell_pid:this.shell.pid?"true":"false"}),this.cwd=I;let G=(W)=>{return(B)=>{let w=B.toString();if(this[W]+=w,this[W].length>this.MAX_BUFFER_LENGTH)this[W]=this[W].substring(this[W].length-this.MAX_BUFFER_LENGTH)}};this.shell.stdout?.on("data",G("recentStdout")),this.shell.stderr?.on("data",G("recentStderr")),this.shell.on("exit",(W,B)=>this.onExit(W,B));let Z=Math.floor(Math.random()*65536).toString(16).padStart(4,"0");this.files={status:new US(Z,"status"),stdout:new US(Z,"stdout"),stderr:new US(Z,"stderr"),cwd:new US(Z,"cwd")},this.files.cwd.write(I);let d=this.getConfigFile(this.binShell);if(rp1(d))this.exec(`source ${d}`)}onExit(I,G){let Z=I!==0&&I!==null,d={code:I?.toString()||"null",signal:G||"null",stdout:this.recentStdout,stderr:this.recentStderr,isExecuting:this.isExecuting.toString(),queueLength:this.commandQueue.length.toString(),workingDirectory:this.cwd};if(Z)W0(new Error(`Shell exited unexpectedly with code ${I} and signal ${G}`));B0("persistent_shell_exit",{code:d.code,signal:d.signal,isExecuting:d.isExecuting,queueLength:d.queueLength,hasStderr:Boolean(d.lastStderr&&d.lastStderr.length>0).toString()}),Object.values(this.files).forEach((W)=>W.delete()),this.isAlive=!1}getConfigFile(I){let G=I.includes("zsh")?".zshrc":this.binShell.includes("bash")?".bashrc":".profile";return qg4(Kg4(),G)}findSuitableShell(){let I=(Y)=>{try{return u61(`which ${Y}`,{stdio:["ignore","pipe","ignore"]}).toString().trim()}catch{return null}},G=process.env.SHELL,Z=G&&(G.includes("bash")||G.includes("zsh")),d=G?.includes("bash"),W=I("zsh"),B=I("bash"),w=["/bin","/usr/bin","/usr/local/bin","/opt/homebrew/bin"],C=(d?["bash","zsh"]:["zsh","bash"]).flatMap((Y)=>w.map((A)=>`${A}/${Y}`));if(d){if(B)C.unshift(B);if(W)C.push(W)}else{if(W)C.unshift(W);if(B)C.push(B)}if(Z&&this.isExecutable(G))C.unshift(G);let X=C.find((Y)=>Y&&this.isExecutable(Y));if(!X){let Y="No suitable shell found. Claude CLI requires a Posix shell environment. Please ensure you have a valid shell installed and the SHELL environment variable set.";throw W0(new Error(Y)),new Error(Y)}return B0("persistent_shell_selected",{shell_path:X,is_env_shell:(X===process.env.SHELL).toString()}),X}isExecutable(I){try{return pI.accessSync(I,pI.constants.X_OK),!0}catch(G){return!1}}static instance=null;static restart(){if(n8.instance)n8.instance.close(),n8.instance=null}static getInstance(){if(n8.instance&&!n8.instance.isAlive)n8.restart();if(!n8.instance)n8.instance=new n8(process.cwd());return n8.instance}killChildren(){let I=this.shell.pid;try{let G=u61(`pgrep -P ${I}`,{timeout:1000}).toString().trim().split(`
|
|
418
|
+
`);if(B!==-1)G=lx1(G,W,d,B);return d+G+W};Object.defineProperties(CS.prototype,Rg);var pK4=CS(),Ga3=CS({level:kx1?kx1.level:0});var T0=pK4;var iK4={autoAccept:"rgb(135,0,255)",bashBorder:"rgb(255,0,135)",claude:"rgb(215,119,87)",permission:"rgb(87,105,247)",secondaryBorder:"rgb(153,153,153)",text:"rgb(0,0,0)",secondaryText:"rgb(102,102,102)",suggestion:"rgb(87,105,247)",remember:"rgb(0,0,255)",success:"rgb(44,122,57)",error:"rgb(171,43,63)",warning:"rgb(150,108,30)",diff:{added:"rgb(105,219,124)",removed:"rgb(255,168,180)",addedDimmed:"rgb(199,225,203)",removedDimmed:"rgb(253,210,216)",addedWord:"rgb(47,157,68)",removedWord:"rgb(209,69,75)",addedWordDimmed:"rgb(144,194,156)",removedWordDimmed:"rgb(232,165,173)"}},nK4={autoAccept:"#cd00cd",bashBorder:"#cd00cd",claude:"#cdcd00",permission:"#0000ee",secondaryBorder:"#e5e5e5",text:"#000000",secondaryText:"#7f7f7f",suggestion:"#0000ee",remember:"#0000ee",success:"#00cd00",error:"#cd0000",warning:"#cdcd00",diff:{added:"#00cd00",removed:"#cd0000",addedDimmed:"#00cd00",removedDimmed:"#cd0000",addedWord:"#00ff00",removedWord:"#ff0000",addedWordDimmed:"#00cd00",removedWordDimmed:"#cd0000"}},aK4={autoAccept:"#ff00ff",bashBorder:"#ff00ff",claude:"#cdcd00",permission:"#5c5cff",secondaryBorder:"#e5e5e5",text:"#ffffff",secondaryText:"#e5e5e5",suggestion:"#5c5cff",remember:"#5c5cff",success:"#00ff00",error:"#ff0000",warning:"#ffff00",diff:{added:"#00cd00",removed:"#cd0000",addedDimmed:"#00cd00",removedDimmed:"#cd0000",addedWord:"#00ff00",removedWord:"#ff0000",addedWordDimmed:"#00cd00",removedWordDimmed:"#cd0000"}},rK4={autoAccept:"rgb(135,0,255)",bashBorder:"rgb(0,102,204)",claude:"rgb(255,153,51)",permission:"rgb(51,102,255)",secondaryBorder:"rgb(153,153,153)",text:"rgb(0,0,0)",secondaryText:"rgb(102,102,102)",suggestion:"rgb(51,102,255)",remember:"rgb(51,102,255)",success:"rgb(0,102,153)",error:"rgb(204,0,0)",warning:"rgb(255,153,0)",diff:{added:"rgb(153,204,255)",removed:"rgb(255,204,204)",addedDimmed:"rgb(209,231,253)",removedDimmed:"rgb(255,233,233)",addedWord:"rgb(51,102,204)",removedWord:"rgb(153,51,51)",addedWordDimmed:"rgb(102,153,204)",removedWordDimmed:"rgb(204,153,153)"}},sK4={autoAccept:"rgb(175,135,255)",bashBorder:"rgb(253,93,177)",claude:"rgb(215,119,87)",permission:"rgb(177,185,249)",secondaryBorder:"rgb(136,136,136)",text:"rgb(255,255,255)",secondaryText:"rgb(153,153,153)",suggestion:"rgb(177,185,249)",remember:"rgb(177,185,249)",success:"rgb(78,186,101)",error:"rgb(255,107,128)",warning:"rgb(255,193,7)",diff:{added:"rgb(34,92,43)",removed:"rgb(122,41,54)",addedDimmed:"rgb(71,88,74)",removedDimmed:"rgb(105,72,77)",addedWord:"rgb(56,166,96)",removedWord:"rgb(179,89,107)",addedWordDimmed:"rgb(46,107,58)",removedWordDimmed:"rgb(139,57,69)"}},oK4={autoAccept:"rgb(175,135,255)",bashBorder:"rgb(51,153,255)",claude:"rgb(255,153,51)",permission:"rgb(153,204,255)",secondaryBorder:"rgb(136,136,136)",text:"rgb(255,255,255)",secondaryText:"rgb(153,153,153)",suggestion:"rgb(153,204,255)",remember:"rgb(153,204,255)",success:"rgb(51,153,255)",error:"rgb(255,102,102)",warning:"rgb(255,204,0)",diff:{added:"rgb(0,68,102)",removed:"rgb(102,0,0)",addedDimmed:"rgb(62,81,91)",removedDimmed:"rgb(62,44,44)",addedWord:"rgb(0,119,179)",removedWord:"rgb(179,0,0)",addedWordDimmed:"rgb(26,99,128)",removedWordDimmed:"rgb(128,21,21)"}};function q8(I){let G=I.match(/rgb\((\d+),(\d+),(\d+)\)/);if(!G||G.length<4)return 8;let Z=parseInt(G[1],10),d=parseInt(G[2],10),W=parseInt(G[3],10);if(Math.abs(Z-d)<20&&Math.abs(d-W)<20&&Math.abs(Z-W)<20){let C=Math.round((Z+d+W)/3);if(C<8)return 16;if(C>240)return 231;return Math.round((C-8)/247*24)+232}let B=Math.round(Z/255*5),w=Math.round(d/255*5),V=Math.round(W/255*5);return 16+36*B+6*w+V}function e1(I){let G=Q2();switch(I??G.theme){case"light":return iK4;case"light-ansi":return nK4;case"dark-ansi":return aK4;case"light-daltonized":return rK4;case"dark-daltonized":return oK4;default:return sK4}}var hI=x2((I)=>{let G=e1(I);return{autoAccept:q8(G.autoAccept),bashBorder:q8(G.bashBorder),claude:q8(G.claude),permission:q8(G.permission),secondaryBorder:q8(G.secondaryBorder),text:q8(G.text),secondaryText:q8(G.secondaryText),suggestion:q8(G.suggestion),remember:q8(G.remember),success:q8(G.success),error:q8(G.error),warning:q8(G.warning),diff:{added:q8(G.diff.added),removed:q8(G.diff.removed),addedDimmed:q8(G.diff.addedDimmed),removedDimmed:q8(G.diff.removedDimmed),addedWord:q8(G.diff.addedWord),removedWord:q8(G.diff.removedWord),addedWordDimmed:q8(G.diff.addedWordDimmed),removedWordDimmed:q8(G.diff.removedWordDimmed)}}});var Vx=[],Iz4=100,Sd=tK4(),T51=P51("claude-cli");function b51(I){return I.replace(/[^a-zA-Z0-9]/g,"-")}var HH={errors:()=>vg(T51.cache,b51(process.cwd()),"errors"),messages:()=>vg(T51.cache,b51(process.cwd()),"messages"),mcpLogs:(I)=>vg(T51.cache,b51(process.cwd()),`mcp-logs-${I}`)};function Cx(I){return I.toISOString().replace(/[:.]/g,"-")}var cx1=Cx(new Date);function Gz4(){return vg(HH.errors(),cx1+".txt")}function JC(I,G,Z){return vg(HH.messages(),`${I}${G>0?`-${G}`:""}${Z>0?`-sidechain-${Z}`:""}.json`)}function W0(I,G,Z){try{if(G)nx1(G,Z);let d=I instanceof Error?I.stack||I.message:String(I),W={error:d,timestamp:new Date().toISOString()};if(Vx.length>=Iz4)Vx.shift();Vx.push(W),Zz4(Gz4(),{error:d})}catch{}Xx(I)}function j51(){return[...Vx]}function px1(I){if(!_H(I))return[];try{return JSON.parse(eK4(I,"utf8"))}catch{return[]}}function Zz4(I,G){return}function Eg(I,G){return}function Mg(I){return I.filter((G)=>G.type!=="progress")}function k51(I,G,Z){while(_H(JC(I,G,Z)))G++;return G}function ix1(I,G){let Z=1;while(_H(JC(I,G,Z)))Z++;return Z}function iK(I,G){if(process.argv.includes("--mcp-debug"))console.error(T0.ansi256(hI().error)(`MCP server "${I}" ${G}`));try{let Z=HH.mcpLogs(I),d=G instanceof Error?G.stack||G.message:String(G),W=new Date().toISOString(),B=vg(Z,cx1+".txt");if(!_H(Z))l51(Z,{recursive:!0});if(!_H(B))XS(B,"[]","utf8");let w={error:d,timestamp:W,sessionId:Sd,cwd:process.cwd()},V=px1(B);V.push(w),XS(B,JSON.stringify(V,null,2),"utf8")}catch{}}import*as ep1 from"os";var L61=A1(u1(),1);var ix=A1(bp1(),1);var Yg4={visibilityState:"visible",documentElement:{lang:"en"},addEventListener:(I,G)=>{}},Ag4={document:Yg4,location:{href:"node://localhost",pathname:"/"},addEventListener:(I,G)=>{if(I==="beforeunload")process.on("exit",()=>{if(typeof G==="function")G({});else G.handleEvent({})})},focus:()=>{},innerHeight:768,innerWidth:1024},_g4={sendBeacon:(I,G)=>{return!0},userAgent:"Mozilla/5.0 (Node.js) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0",language:"en-US"};if(typeof window==="undefined")global.window=Ag4;if(typeof navigator==="undefined")global.navigator=_g4;import*as Vw from"fs";import*as NS from"path";import{homedir as Hg4}from"os";import{existsSync as Dg4,unlinkSync as Fg4}from"fs";var eK=NS.join(Hg4(),".claude","statsig");try{Vw.mkdirSync(eK,{recursive:!0})}catch(I){W0(`Failed to create statsig storage directory: ${I}`)}class $61{cache=new Map;ready=!1;constructor(){try{if(!Vw.existsSync(eK))Vw.mkdirSync(eK,{recursive:!0});let I=Vw.readdirSync(eK);for(let G of I){let Z=decodeURIComponent(G),d=Vw.readFileSync(NS.join(eK,G),"utf8");this.cache.set(Z,d)}this.ready=!0}catch(I){W0(`Failed to initialize statsig storage: ${I}`),this.ready=!0}}isReady(){return this.ready}isReadyResolver(){return this.ready?Promise.resolve():null}getProviderName(){return"FileSystemStorageProvider"}getItem(I){return this.cache.get(I)??null}setItem(I,G){this.cache.set(I,G);try{let Z=encodeURIComponent(I);Vw.writeFileSync(NS.join(eK,Z),G,"utf8")}catch(Z){W0(`Failed to write statsig storage item: ${Z}`)}}removeItem(I){this.cache.delete(I);let G=encodeURIComponent(I),Z=NS.join(eK,G);if(!Dg4(Z))return;try{Fg4(Z)}catch(d){W0(`Failed to remove statsig storage item: ${d}`)}}getAllKeys(){return Array.from(this.cache.keys())}}var lp1="https://e531a1d9ec1de9064fae9d4affb0b0f4@o1158394.ingest.us.sentry.io/4508259541909504",jp1="client-RRNS7R65EAtReO5XA4xDC3eU6ZdJQi6lLEP6b5j32Me";var kp1="tengu-token-efficient-tools",xp1="token-efficient-tools-2025-02-19",hp1="claude-code-20250219";var cx=x2(async()=>{let I=[hp1];if(process.env.SWE_BENCH){if(await px(kp1))I.push(xp1)}return I});var E6=!!process.env.CLAUDE_CODE_USE_BEDROCK,M6=!!process.env.CLAUDE_CODE_USE_VERTEX,cp1={bedrock:"us.anthropic.claude-3-7-sonnet-20250219-v1:0",vertex:"claude-3-7-sonnet@20250219",firstParty:"claude-3-7-sonnet-20250219"},Cw=E6?"us.anthropic.claude-3-5-haiku-20241022-v1:0":M6?"claude-3-5-haiku@20241022":"claude-3-5-haiku-20241022";async function Jg4(){try{return await tK("tengu-capable-model-config",cp1)}catch(I){return W0(I),cp1}}var g8=x2(async()=>{let I=await Jg4();if(E6){if(process.env.ANTHROPIC_MODEL)return process.env.ANTHROPIC_MODEL;return I.bedrock}if(M6){if(process.env.ANTHROPIC_MODEL)return process.env.ANTHROPIC_MODEL;return I.vertex}return I.firstParty});async function S61(){return!process.env.ANTHROPIC_MODEL||process.env.ANTHROPIC_MODEL===await g8()}function pp1(I){if(I?.startsWith("claude-3-5-haiku"))return process.env.VERTEX_REGION_CLAUDE_3_5_HAIKU;else if(I?.startsWith("claude-3-5-sonnet"))return process.env.VERTEX_REGION_CLAUDE_3_5_SONNET;else if(I?.startsWith("claude-3-7-sonnet"))return process.env.VERTEX_REGION_CLAUDE_3_7_SONNET}var ip1={},qS=null,pg=x2(async()=>{if(P2.isCI)return null;let I=await nx(),G={networkConfig:{api:"https://statsig.anthropic.com/v1/"},environment:{tier:P2.isCI||["test","development"].includes("production")?"dev":"production"},logLevel:ix.LogLevel.None,storageProvider:new $61};return qS=new ix.StatsigClient(jp1,I,G),qS.on("error",(Z)=>{W0(`Statsig error: ${Z}`)}),await qS.initializeAsync(),process.on("exit",()=>{qS?.flush()}),qS});async function B0(I,G){if(P2.isCI)return;await Promise.all([pg(),cx(),G.model?Promise.resolve(G.model):g8(),P2.getPackageManagers(),P2.getRuntimes()]).then(([Z,d,W,B,w])=>{if(!Z)return;let V={...G,model:W,sessionId:Sd,userType:"external",...{},...d.length>0?{betas:d.join(",")}:{},env:JSON.stringify({platform:P2.platform,nodeVersion:P2.nodeVersion,terminal:P2.terminal,packageManagers:B.join(","),runtimes:w.join(","),isRunningWithBun:P2.isRunningWithBun(),version:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION})},C={eventName:I,metadata:V};Z.logEvent(C),Z.flush()}).catch((Z)=>{W0(`Failed to log statsig event ${I}: ${Z}`)})}var px=x2(async(I)=>{if(P2.isCI)return!1;let G=await pg();if(!G)return!1;let Z=G.checkGate(I);return ip1[I]=Z,Z}),np1=(I,G=!1)=>{let[Z,d]=L61.default.useState(G);return L61.default.useEffect(()=>{px(I).then(d)},[I]),Z};function ap1(){return{...ip1}}var br3=x2(async(I,G)=>{if(P2.isCI)return G;let Z=await pg();if(!Z)return G;let d=Z.getExperiment(I);if(Object.keys(d.value).length===0)return W0(`getExperimentValue got empty value for ${I}`),G;return d.value}),tK=async(I,G)=>{if(P2.isCI)return G;let Z=await pg();if(!Z)return G;let d=Z.getDynamicConfig(I);if(Object.keys(d.value).length===0)return W0(`getDynamicConfig got empty value for ${I}`),G;return d.value};class P61 extends TypeError{}class NC extends Error{}class ig extends Error{filePath;defaultConfig;constructor(I,G,Z){super(I);this.name="ConfigParseError",this.filePath=G,this.defaultConfig=Z}}class gS extends Error{stdout;stderr;code;interrupted;constructor(I,G,Z,d){super("Shell command failed");this.stdout=I;this.stderr=G;this.code=Z;this.interrupted=d;this.name="ShellError"}}var gg4=1800000,sp1=143,Ug4=1,ax=Ug4*1024*1024;class US{path;type;constructor(I,G){this.type=G,this.path=`${ep1.tmpdir()}/claude-${I}-${G}`,this.clear()}clear(){pI.writeFileSync(this.path,"")}write(I){pI.writeFileSync(this.path,I)}read(){try{return pI.existsSync(this.path)?pI.readFileSync(this.path,"utf8"):""}catch(I){return W0(new Error(`Failed to read file ${this.path}: ${I}`)),""}}exists(){return pI.existsSync(this.path)}size(){try{return this.exists()?pI.statSync(this.path).size:0}catch{return 0}}delete(){if(this.exists())try{pI.unlinkSync(this.path)}catch(I){W0(new Error(`Failed to delete file ${this.path}: ${I}`))}}}class n8{commandQueue=[];isExecuting=!1;shell;isAlive=!0;commandInterrupted=!1;files;cwd;binShell;recentStdout="";recentStderr="";MAX_BUFFER_LENGTH=1e4;constructor(I){this.binShell=this.findSuitableShell(),this.shell=zg4(this.binShell,["-l"],{stdio:["pipe","pipe","pipe"],cwd:I,env:{...process.env,SHELL:this.binShell,GIT_EDITOR:"true"}}),B0("persistent_shell_spawn_success",{shell_path:this.binShell,has_shell_pid:this.shell.pid?"true":"false"}),this.cwd=I;let G=(W)=>{return(B)=>{let w=B.toString();if(this[W]+=w,this[W].length>this.MAX_BUFFER_LENGTH)this[W]=this[W].substring(this[W].length-this.MAX_BUFFER_LENGTH)}};this.shell.stdout?.on("data",G("recentStdout")),this.shell.stderr?.on("data",G("recentStderr")),this.shell.on("exit",(W,B)=>this.onExit(W,B));let Z=Math.floor(Math.random()*65536).toString(16).padStart(4,"0");this.files={status:new US(Z,"status"),stdout:new US(Z,"stdout"),stderr:new US(Z,"stderr"),cwd:new US(Z,"cwd")},this.files.cwd.write(I);let d=this.getConfigFile(this.binShell);if(rp1(d))this.exec(`source ${d}`)}onExit(I,G){let Z=I!==0&&I!==null,d={code:I?.toString()||"null",signal:G||"null",stdout:this.recentStdout,stderr:this.recentStderr,isExecuting:this.isExecuting.toString(),queueLength:this.commandQueue.length.toString(),workingDirectory:this.cwd};if(Z)W0(new Error(`Shell exited unexpectedly with code ${I} and signal ${G}`));B0("persistent_shell_exit",{code:d.code,signal:d.signal,isExecuting:d.isExecuting,queueLength:d.queueLength,hasStderr:Boolean(d.lastStderr&&d.lastStderr.length>0).toString()}),Object.values(this.files).forEach((W)=>W.delete()),this.isAlive=!1}getConfigFile(I){let G=I.includes("zsh")?".zshrc":this.binShell.includes("bash")?".bashrc":".profile";return qg4(Kg4(),G)}findSuitableShell(){let I=(Y)=>{try{return u61(`which ${Y}`,{stdio:["ignore","pipe","ignore"]}).toString().trim()}catch{return null}},G=process.env.SHELL,Z=G&&(G.includes("bash")||G.includes("zsh")),d=G?.includes("bash"),W=I("zsh"),B=I("bash"),w=["/bin","/usr/bin","/usr/local/bin","/opt/homebrew/bin"],C=(d?["bash","zsh"]:["zsh","bash"]).flatMap((Y)=>w.map((A)=>`${A}/${Y}`));if(d){if(B)C.unshift(B);if(W)C.push(W)}else{if(W)C.unshift(W);if(B)C.push(B)}if(Z&&this.isExecutable(G))C.unshift(G);let X=C.find((Y)=>Y&&this.isExecutable(Y));if(!X){let Y="No suitable shell found. Claude CLI requires a Posix shell environment. Please ensure you have a valid shell installed and the SHELL environment variable set.";throw W0(new Error(Y)),new Error(Y)}return B0("persistent_shell_selected",{shell_path:X,is_env_shell:(X===process.env.SHELL).toString()}),X}isExecutable(I){try{return pI.accessSync(I,pI.constants.X_OK),!0}catch(G){return!1}}static instance=null;static restart(){if(n8.instance)n8.instance.close(),n8.instance=null}static getInstance(){if(n8.instance&&!n8.instance.isAlive)n8.restart();if(!n8.instance)n8.instance=new n8(process.cwd());return n8.instance}killChildren(){let I=this.shell.pid;try{let G=u61(`pgrep -P ${I}`,{timeout:1000}).toString().trim().split(`
|
|
419
419
|
`).filter(Boolean);if(G.length>0)B0("persistent_shell_command_interrupted",{numChildProcesses:G.length.toString()});G.forEach((Z)=>{try{process.kill(Number(Z),"SIGTERM")}catch(d){W0(new Error(`Failed to kill process ${Z}: ${d}`)),B0("persistent_shell_kill_process_error",{error:d.message.substring(0,10)})}})}catch{}finally{this.commandInterrupted=!0}}async exec(I,G,Z){return new Promise((d,W)=>{this.commandQueue.push({command:I,abortSignal:G,timeout:Z,resolve:d,reject:W}),this.processQueue()})}async processQueue(){if(this.isExecuting||this.commandQueue.length===0)return;this.isExecuting=!0;let{command:I,abortSignal:G,timeout:Z,resolve:d,reject:W}=this.commandQueue.shift(),B=()=>this.killChildren();if(G)G.addEventListener("abort",B);try{if(G?.aborted)throw new NC;let w=await this.exec_(I,Z);d(w)}catch(w){if(w instanceof NC)d({stdout:"",stderr:"Command interrupted",code:sp1,interrupted:!0});else B0("persistent_shell_command_error",{error:w.message.substring(0,10)}),W(w)}finally{if(this.isExecuting=!1,G)G.removeEventListener("abort",B);this.processQueue()}}checkCommandSyntax(I){try{return u61(`${this.binShell} -n -c ${I}`,{stdio:"ignore",timeout:1000}),{isValid:!0,error:""}}catch(G){let Z=typeof G==="string"?G:String(G||"");return B0("persistent_shell_syntax_error",{error:Z.substring(0,10)}),{isValid:!1,error:Z}}}prepareCommandSequence(I){let G=[];return G.push(`eval ${I} < /dev/null > ${this.files.stdout.path} 2> ${this.files.stderr.path}`),G.push("EXEC_EXIT_CODE=$?"),G.push(`pwd > ${this.files.cwd.path}`),G.push(`echo $EXEC_EXIT_CODE > ${this.files.status.path}`),G.join(`
|
|
420
420
|
`)}clearOutputFiles(){this.files.stdout.clear(),this.files.stderr.clear(),this.files.status.clear()}shouldStopPolling(I){return I||!!this.files.status.size()||this.files.stdout.size()>ax||this.files.stderr.size()>ax||this.commandInterrupted}handleCommandCompletion(I){let G=!1,Z=(w)=>{return G=G||w.size()>ax,w.read().substring(0,ax)},d=Z(this.files.stdout),W=Z(this.files.stderr);if(G)W+=(W?`
|
|
421
421
|
`:"")+"Excessive output truncated.";let B;if(this.files.status.size())B=Number(this.files.status.read())||0;else this.killChildren(),B=sp1,W+=(W?`
|
|
@@ -440,7 +440,7 @@ Expecting one of '${Z.join("', '")}'`);let d=`${I}Help`;return this.on(d,(W)=>{l
|
|
|
440
440
|
`)return`
|
|
441
441
|
`}return I&&I.eol||`
|
|
442
442
|
`}function cS(I,G){return`\r
|
|
443
|
-
`.indexOf(I.charAt(G))!==-1}var pS;(function(I){I.DEFAULT={allowTrailingComma:!1}})(pS||(pS={}));function Ca1(I,G=[],Z=pS.DEFAULT){let d=null,W=[],B=[];function w(C){if(Array.isArray(W))W.push(C);else if(d!==null)W[d]=C}return x81(I,{onObjectBegin:()=>{let C={};w(C),B.push(W),W=C,d=null},onObjectProperty:(C)=>{d=C},onObjectEnd:()=>{W=B.pop()},onArrayBegin:()=>{let C=[];w(C),B.push(W),W=C,d=null},onArrayEnd:()=>{W=B.pop()},onLiteralValue:w,onError:(C,X,Y)=>{G.push({error:C,offset:X,length:Y})}},Z),W[0]}function k81(I,G=[],Z=pS.DEFAULT){let d={type:"array",offset:-1,length:-1,children:[],parent:void 0};function W(C){if(d.type==="property")d.length=C-d.offset,d=d.parent}function B(C){return d.children.push(C),C}x81(I,{onObjectBegin:(C)=>{d=B({type:"object",offset:C,length:-1,parent:d,children:[]})},onObjectProperty:(C,X,Y)=>{d=B({type:"property",offset:X,length:-1,parent:d,children:[]}),d.children.push({type:"string",value:C,offset:X,length:Y,parent:d})},onObjectEnd:(C,X)=>{W(C+X),d.length=C+X-d.offset,d=d.parent,W(C+X)},onArrayBegin:(C,X)=>{d=B({type:"array",offset:C,length:-1,parent:d,children:[]})},onArrayEnd:(C,X)=>{d.length=C+X-d.offset,d=d.parent,W(C+X)},onLiteralValue:(C,X,Y)=>{B({type:Xv4(C),offset:X,length:Y,parent:d,value:C}),W(X+Y)},onSeparator:(C,X,Y)=>{if(d.type==="property"){if(C===":")d.colonOffset=X;else if(C===",")W(X)}},onError:(C,X,Y)=>{G.push({error:C,offset:X,length:Y})}},Z);let V=d.children[0];if(V)delete V.parent;return V}function qh(I,G){if(!I)return;let Z=I;for(let d of G)if(typeof d==="string"){if(Z.type!=="object"||!Array.isArray(Z.children))return;let W=!1;for(let B of Z.children)if(Array.isArray(B.children)&&B.children[0].value===d&&B.children.length===2){Z=B.children[1],W=!0;break}if(!W)return}else{let W=d;if(Z.type!=="array"||W<0||!Array.isArray(Z.children)||W>=Z.children.length)return;Z=Z.children[W]}return Z}function x81(I,G,Z=pS.DEFAULT){let d=hS(I,!1),W=[];function B($1){return $1?()=>$1(d.getTokenOffset(),d.getTokenLength(),d.getTokenStartLine(),d.getTokenStartCharacter()):()=>!0}function w($1){return $1?()=>$1(d.getTokenOffset(),d.getTokenLength(),d.getTokenStartLine(),d.getTokenStartCharacter(),()=>W.slice()):()=>!0}function V($1){return $1?(F1)=>$1(F1,d.getTokenOffset(),d.getTokenLength(),d.getTokenStartLine(),d.getTokenStartCharacter()):()=>!0}function C($1){return $1?(F1)=>$1(F1,d.getTokenOffset(),d.getTokenLength(),d.getTokenStartLine(),d.getTokenStartCharacter(),()=>W.slice()):()=>!0}let X=w(G.onObjectBegin),Y=C(G.onObjectProperty),A=B(G.onObjectEnd),D=w(G.onArrayBegin),J=B(G.onArrayEnd),K=C(G.onLiteralValue),z=V(G.onSeparator),Q=B(G.onComment),U=V(G.onError),M=Z&&Z.disallowComments,S=Z&&Z.allowTrailingComma;function L(){while(!0){let $1=d.scan();switch(d.getTokenError()){case 4:P(14);break;case 5:P(15);break;case 3:P(13);break;case 1:if(!M)P(11);break;case 2:P(12);break;case 6:P(16);break}switch($1){case 12:case 13:if(M)P(10);else Q();break;case 16:P(1);break;case 15:case 14:break;default:return $1}}}function P($1,F1=[],u=[]){if(U($1),F1.length+u.length>0){let I1=d.getToken();while(I1!==17){if(F1.indexOf(I1)!==-1){L();break}else if(u.indexOf(I1)!==-1)break;I1=L()}}}function m($1){let F1=d.getTokenValue();if($1)K(F1);else Y(F1),W.push(F1);return L(),!0}function l(){switch(d.getToken()){case 11:let $1=d.getTokenValue(),F1=Number($1);if(isNaN(F1))P(2),F1=0;K(F1);break;case 7:K(null);break;case 8:K(!0);break;case 9:K(!1);break;default:return!1}return L(),!0}function V1(){if(d.getToken()!==10)return P(3,[],[2,5]),!1;if(m(!1),d.getToken()===6){if(z(":"),L(),!H1())P(4,[],[2,5])}else P(5,[],[2,5]);return W.pop(),!0}function k(){X(),L();let $1=!1;while(d.getToken()!==2&&d.getToken()!==17){if(d.getToken()===5){if(!$1)P(4,[],[]);if(z(","),L(),d.getToken()===2&&S)break}else if($1)P(6,[],[]);if(!V1())P(4,[],[2,5]);$1=!0}if(A(),d.getToken()!==2)P(7,[2],[]);else L();return!0}function l1(){D(),L();let $1=!0,F1=!1;while(d.getToken()!==4&&d.getToken()!==17){if(d.getToken()===5){if(!F1)P(4,[],[]);if(z(","),L(),d.getToken()===4&&S)break}else if(F1)P(6,[],[]);if($1)W.push(0),$1=!1;else W[W.length-1]++;if(!H1())P(4,[],[4,5]);F1=!0}if(J(),!$1)W.pop();if(d.getToken()!==4)P(8,[4],[]);else L();return!0}function H1(){switch(d.getToken()){case 3:return l1();case 1:return k();case 10:return m(!0);default:return l()}}if(L(),d.getToken()===17){if(Z.allowEmptyContent)return!0;return P(4,[],[]),!1}if(!H1())return P(4,[],[]),!1;if(d.getToken()!==17)P(9,[],[]);return!0}function Xv4(I){switch(typeof I){case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"object":{if(!I)return"null";else if(Array.isArray(I))return"array";return"object"}default:return"null"}}function Xa1(I,G,Z,d){let W=G.slice(),w=k81(I,[]),V=void 0,C=void 0;while(W.length>0)if(C=W.pop(),V=qh(w,W),V===void 0&&Z!==void 0)if(typeof C==="string")Z={[C]:Z};else Z=[Z];else break;if(!V){if(Z===void 0)throw new Error("Can not delete in empty document");return Xz(I,{offset:w?w.offset:0,length:w?w.length:0,content:JSON.stringify(Z)},d)}else if(V.type==="object"&&typeof C==="string"&&Array.isArray(V.children)){let X=qh(V,[C]);if(X!==void 0)if(Z===void 0){if(!X.parent)throw new Error("Malformed AST");let Y=V.children.indexOf(X.parent),A,D=X.parent.offset+X.parent.length;if(Y>0){let J=V.children[Y-1];A=J.offset+J.length}else if(A=V.offset+1,V.children.length>1)D=V.children[1].offset;return Xz(I,{offset:A,length:D-A,content:""},d)}else return Xz(I,{offset:X.offset,length:X.length,content:JSON.stringify(Z)},d);else{if(Z===void 0)return[];let Y=`${JSON.stringify(C)}: ${JSON.stringify(Z)}`,A=d.getInsertionIndex?d.getInsertionIndex(V.children.map((J)=>J.children[0].value)):V.children.length,D;if(A>0){let J=V.children[A-1];D={offset:J.offset+J.length,length:0,content:","+Y}}else if(V.children.length===0)D={offset:V.offset+1,length:0,content:Y};else D={offset:V.offset+1,length:0,content:Y+","};return Xz(I,D,d)}}else if(V.type==="array"&&typeof C==="number"&&Array.isArray(V.children)){let X=C;if(X===-1){let Y=`${JSON.stringify(Z)}`,A;if(V.children.length===0)A={offset:V.offset+1,length:0,content:Y};else{let D=V.children[V.children.length-1];A={offset:D.offset+D.length,length:0,content:","+Y}}return Xz(I,A,d)}else if(Z===void 0&&V.children.length>=0){let Y=C,A=V.children[Y],D;if(V.children.length===1)D={offset:V.offset+1,length:V.length-2,content:""};else if(V.children.length-1===Y){let J=V.children[Y-1],K=J.offset+J.length,z=V.offset+V.length;D={offset:K,length:z-2-K,content:""}}else D={offset:A.offset,length:V.children[Y+1].offset-A.offset,content:""};return Xz(I,D,d)}else if(Z!==void 0){let Y,A=`${JSON.stringify(Z)}`;if(!d.isArrayInsertion&&V.children.length>C){let D=V.children[C];Y={offset:D.offset,length:D.length,content:A}}else if(V.children.length===0||C===0)Y={offset:V.offset+1,length:0,content:V.children.length===0?A:A+","};else{let D=C>V.children.length?V.children.length:C,J=V.children[D-1];Y={offset:J.offset+J.length,length:0,content:","+A}}return Xz(I,Y,d)}else throw new Error(`Can not ${Z===void 0?"remove":d.isArrayInsertion?"insert":"modify"} Array index ${X} as length is not sufficient`)}else throw new Error(`Can not add ${typeof C!=="number"?"index":"property"} to parent of type ${V.type}`)}function Xz(I,G,Z){if(!Z.formattingOptions)return[G];let d=gh(I,G),W=G.offset,B=G.offset+G.content.length;if(G.length===0||G.content.length===0){while(W>0&&!cS(d,W-1))W--;while(B<d.length&&!cS(d,B))B++}let w=j81(d,{offset:W,length:B-W},{...Z.formattingOptions,keepLines:!1});for(let C=w.length-1;C>=0;C--){let X=w[C];d=gh(d,X),W=Math.min(W,X.offset),B=Math.max(B,X.offset+X.length),B+=X.content.length-X.length}let V=I.length-(d.length-B)-W;return[{offset:W,length:V,content:d.substring(W,B)}]}function gh(I,G){return I.substring(0,G.offset)+G.content+I.substring(G.offset+G.length)}var Ya1;(function(I){I[I.None=0]="None",I[I.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=2]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",I[I.InvalidUnicode=4]="InvalidUnicode",I[I.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",I[I.InvalidCharacter=6]="InvalidCharacter"})(Ya1||(Ya1={}));var Aa1;(function(I){I[I.OpenBraceToken=1]="OpenBraceToken",I[I.CloseBraceToken=2]="CloseBraceToken",I[I.OpenBracketToken=3]="OpenBracketToken",I[I.CloseBracketToken=4]="CloseBracketToken",I[I.CommaToken=5]="CommaToken",I[I.ColonToken=6]="ColonToken",I[I.NullKeyword=7]="NullKeyword",I[I.TrueKeyword=8]="TrueKeyword",I[I.FalseKeyword=9]="FalseKeyword",I[I.StringLiteral=10]="StringLiteral",I[I.NumericLiteral=11]="NumericLiteral",I[I.LineCommentTrivia=12]="LineCommentTrivia",I[I.BlockCommentTrivia=13]="BlockCommentTrivia",I[I.LineBreakTrivia=14]="LineBreakTrivia",I[I.Trivia=15]="Trivia",I[I.Unknown=16]="Unknown",I[I.EOF=17]="EOF"})(Aa1||(Aa1={}));var h81=Ca1;var _a1;(function(I){I[I.InvalidSymbol=1]="InvalidSymbol",I[I.InvalidNumberFormat=2]="InvalidNumberFormat",I[I.PropertyNameExpected=3]="PropertyNameExpected",I[I.ValueExpected=4]="ValueExpected",I[I.ColonExpected=5]="ColonExpected",I[I.CommaExpected=6]="CommaExpected",I[I.CloseBraceExpected=7]="CloseBraceExpected",I[I.CloseBracketExpected=8]="CloseBracketExpected",I[I.EndOfFileExpected=9]="EndOfFileExpected",I[I.InvalidCommentToken=10]="InvalidCommentToken",I[I.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=12]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",I[I.InvalidUnicode=14]="InvalidUnicode",I[I.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",I[I.InvalidCharacter=16]="InvalidCharacter"})(_a1||(_a1={}));function Ha1(I,G,Z,d){return Xa1(I,G,Z,d)}function Da1(I,G){let Z=G.slice(0).sort((W,B)=>{let w=W.offset-B.offset;if(w===0)return W.length-B.length;return w}),d=I.length;for(let W=Z.length-1;W>=0;W--){let B=Z[W];if(B.offset+B.length<=d)I=gh(I,B);else throw new Error("Overlapping edit");d=B.offset}return I}function Hw(I){if(!I)return null;try{return JSON.parse(I)}catch(G){return W0(G),null}}function Fa1(I){if(!I)return null;try{return h81(I)}catch(G){return W0(G),null}}function Ja1(I,G){try{if(!I||I.trim()==="")return JSON.stringify([G],null,4);let Z=h81(I);if(Array.isArray(Z)){let d=Z.length,w=Ha1(I,d===0?[0]:[d],G,{formattingOptions:{insertSpaces:!0,tabSize:4},isArrayInsertion:!0});if(!w||w.length===0){let V=[...Z,G];return JSON.stringify(V,null,4)}return Da1(I,w)}else return JSON.stringify([G],null,4)}catch(Z){return W0(Z),JSON.stringify([G],null,4)}}var XU={allowedTools:[],history:[],dontCrawlDirectory:!1,enableArchitectTool:!1,mcpContextUris:[],mcpServers:{},approvedMcprcServers:[],rejectedMcprcServers:[],hasTrustDialogAccepted:!1,ignorePatterns:[]};function za1(I){let G={...XU};if(I===Hv4())G.dontCrawlDirectory=!0;return G}function Fv4(I){return["disabled","enabled","no_permissions","not_configured"].includes(I)}var Dw={numStartups:0,autoUpdaterStatus:"not_configured",theme:"dark",preferredNotifChannel:"iterm2",verbose:!1,editorMode:"emacs",customApiKeyResponses:{approved:[],rejected:[]}},iS=["autoUpdaterStatus","theme","verbose","preferredNotifChannel","shiftEnterKeyBindingInstalled","editorMode","hasUsedBackslashReturn"];function n81(I){return iS.includes(I)}var nS=["allowedTools","dontCrawlDirectory","enableArchitectTool","hasTrustDialogAccepted","hasCompletedProjectOnboarding","ignorePatterns"];function Qa1(){let I=u0(),G=YU(EY,Dw);while(!0){if(G.projects?.[I]?.hasTrustDialogAccepted)return!0;let d=i81(I,"..");if(d===I)break;I=d}return!1}var n15={...Dw,autoUpdaterStatus:"disabled"},a15={...XU};function a81(I){return nS.includes(I)}function Na1(I,G,Z){if(B0("tengu_config_add",{key:I,global:Z?.toString()??"false"}),Z){let d=Q2();if(!(I in d)||!Array.isArray(d[I]))console.error(`Error: '${I}' is not a valid array config key in global config`),process.exit(1);let W=I,B=d[W];if(!B)B=[];if(!B.includes(G)){let w=[...B,G];i4({...d,[W]:w})}}else{let d=E4(),W=XU[I];if(!(I in XU)||!Array.isArray(W))console.error(`Error: '${I}' is not a valid array config key in project config`),process.exit(1);let B=I,w=d[B];if(!w)w=[];if(!w.includes(G)){let V=[...w,G];h3({...d,[B]:V})}}process.exit(0)}function qa1(I,G,Z){if(B0("tengu_config_remove",{key:I,global:Z?.toString()??"false"}),Z){let d=Q2();if(!(I in d)||!Array.isArray(d[I]))console.error(`Error: '${I}' is not a valid array config key in global config`),process.exit(1);let W=I,B=d[W];if(!B)B=[];let w=B.filter((V)=>V!==G);if(B.length!==w.length)i4({...d,[W]:w})}else{let d=E4(),W=XU[I];if(!(I in XU)||!Array.isArray(W))console.error(`Error: '${I}' is not a valid array config key in project config`),process.exit(1);let B=I,w=d[B];if(!w)w=[];let V=w.filter((C)=>C!==G);if(w.length!==V.length)h3({...d,[B]:V})}process.exit(0)}function i4(I){Ua1(EY,{...I,projects:YU(EY,Dw).projects},Dw)}function Q2(){return YU(EY,Dw)}function ga1(I){let G=Q2();if(G.customApiKeyResponses?.approved?.includes(I))return"approved";if(G.customApiKeyResponses?.rejected?.includes(I))return"rejected";return"new"}function Ua1(I,G,Z){let d=Object.fromEntries(Object.entries(G).filter(([W,B])=>JSON.stringify(B)!==JSON.stringify(Z[W])));_v4(I,JSON.stringify(d,null,2),"utf-8")}var fa1=!1;function Ra1(){fa1=!0,YU(EY,Dw,!0)}function YU(I,G,Z){if(!fa1)throw new Error("Config accessed before allowed.");if(!c81(I))return wS(G);try{let d=p81(I,"utf-8");try{let W=JSON.parse(d);return{...wS(G),...W}}catch(W){let B=W instanceof Error?W.message:String(W);throw new ig(B,I,G)}}catch(d){if(d instanceof ig&&Z)throw d;return wS(G)}}function E4(){let I=i81(u0()),G=YU(EY,Dw);if(!G.projects)return za1(I);let Z=G.projects[I]??za1(I);if(typeof Z.allowedTools==="string")Z.allowedTools=Hw(Z.allowedTools)??[];return Z}function h3(I){let G=YU(EY,Dw);Ua1(EY,{...G,projects:{...G.projects,[i81(u0())]:I}},Dw)}function va1(){return Q2().autoUpdaterStatus==="disabled"}var aS=x2(()=>{let I=Ka1(u0(),".mcprc");if(!c81(I))return{};try{let G=p81(I,"utf-8"),Z=Hw(G);if(Z&&typeof Z==="object")return B0("tengu_mcprc_found",{numServers:Object.keys(Z).length.toString()}),Z}catch{}return{}},()=>{let I=u0(),G=Ka1(I,".mcprc");if(c81(G))try{let Z=p81(G,"utf-8");return`${I}:${Z}`}catch{return I}return I});function Uh(){let I=Q2();if(I.userID)return I.userID;let G=Dv4(32).toString("hex");return i4({...I,userID:G}),G}function Ea1(I,G){if(B0("tengu_config_get",{key:I,global:G?.toString()??"false"}),G){if(!n81(I))console.error(`Error: '${I}' is not a valid config key. Valid keys are: ${iS.join(", ")}`),process.exit(1);return Q2()[I]}else{if(!a81(I))console.error(`Error: '${I}' is not a valid config key. Valid keys are: ${nS.join(", ")}`),process.exit(1);return E4()[I]}}function Ma1(I,G,Z){if(B0("tengu_config_set",{key:I,global:Z?.toString()??"false"}),Z){if(!n81(I))console.error(`Error: Cannot set '${I}'. Only these keys can be modified: ${iS.join(", ")}`),process.exit(1);if(I==="autoUpdaterStatus"&&!Fv4(G))console.error("Error: Invalid value for autoUpdaterStatus. Must be one of: disabled, enabled, no_permissions, not_configured"),process.exit(1);let d=Q2();i4({...d,[I]:G})}else{if(!a81(I))console.error(`Error: Cannot set '${I}'. Only these keys can be modified: ${nS.join(", ")}. Did you mean --global?`),process.exit(1);let d=E4();h3({...d,[I]:G})}process.exit(0)}function $a1(I,G){if(B0("tengu_config_delete",{key:I,global:G?.toString()??"false"}),G){if(!n81(I))console.error(`Error: Cannot delete '${I}'. Only these keys can be modified: ${iS.join(", ")}`),process.exit(1);let Z=Q2();delete Z[I],i4(Z)}else{if(!a81(I))console.error(`Error: Cannot delete '${I}'. Only these keys can be modified: ${nS.join(", ")}. Did you mean --global?`),process.exit(1);let Z=E4();delete Z[I],h3(Z)}}function Sa1(I){if(B0("tengu_config_list",{global:I?.toString()??"false"}),I)return dx(Q2(),iS);else return dx(E4(),nS)}var nx=x2(async()=>{let I=Uh(),G=Q2(),Z=void 0;return{customIDs:{sessionId:Sd},userID:I,appVersion:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.33"}.VERSION,email:void 0,custom:{userType:"external",organizationUuid:G.oauthAccount?.organizationUuid,accountUuid:G.oauthAccount?.accountUuid}}});function La1(){nI.init({dsn:lp1,environment:"external",release:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.33"}.VERSION,integrations:[new nI.Integrations.Http({tracing:!0}),new nI.Integrations.Modules,new nI.Integrations.Console,new nI.Integrations.FunctionToString,new nI.Integrations.LinkedErrors],tracesSampleRate:1,tracePropagationTargets:["localhost"]})}async function Xx(I){try{let G=await nx();nI.setExtras({nodeVersion:P2.nodeVersion,platform:P2.platform,isCI:P2.isCI,isTest:!1,packageVersion:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.33"}.VERSION,sessionId:Sd,statsigGates:ap1(),terminal:P2.terminal,userType:"external"}),nI.setUser({id:G.userID,email:G.email}),nI.captureException(I)}catch{}}async function nx1(I,G,Z){return nI.addBreadcrumb({message:I,data:G,category:Z})}var b2="Claude Code",fh="https://claude.ai/code";var To1={};var Pa1=!1,Yz=void 0,r81=void 0,Jv4=void 0,Kv4=void 0,zv4=void 0,ua1=void 0,Qv4=void 0,Rh=void 0,s81=void 0,ya1=void 0,o81=void 0,vh=void 0,Oa1=void 0;function Eh(I,G={auto:!1}){if(Pa1)throw new Error(`you must \`import '@anthropic-ai/sdk/shims/${I.kind}'\` before importing anything else from @anthropic-ai/sdk`);if(Yz)throw new Error(`can't \`import '@anthropic-ai/sdk/shims/${I.kind}'\` after \`import '@anthropic-ai/sdk/shims/${Yz}'\``);Pa1=G.auto,Yz=I.kind,r81=I.fetch,Jv4=I.Request,Kv4=I.Response,zv4=I.Headers,ua1=I.FormData,Qv4=I.Blob,Rh=I.File,s81=I.ReadableStream,ya1=I.getMultipartRequestOptions,o81=I.getDefaultAgent,vh=I.fileFromPath,Oa1=I.isFsReadStream}var bH=A1(A71(),1);_c();c71();import{inspect as JM4}from"util";x71();var as1=(I)=>I instanceof Nw;import{deprecate as FM4}from"util";var rs1=FM4(()=>{},'Constructor "entries" argument is not spec-compliant and will be removed in next major release.');var MC=function(I,G,Z,d){if(Z==="a"&&!d)throw new TypeError("Private accessor was defined without a getter");if(typeof G==="function"?I!==G||!d:!G.has(I))throw new TypeError("Cannot read private member from an object whose class did not declare it");return Z==="m"?d:Z==="a"?d.call(I):d?d.value:G.get(I)},Hc,$C,p71;class i71{constructor(I){if(Hc.add(this),$C.set(this,new Map),I)rs1(),I.forEach(({name:G,value:Z,fileName:d})=>this.append(G,Z,d))}static[($C=new WeakMap,Hc=new WeakSet,Symbol.hasInstance)](I){return Boolean(I&&G8(I.constructor)&&I[Symbol.toStringTag]==="FormData"&&G8(I.append)&&G8(I.set)&&G8(I.get)&&G8(I.getAll)&&G8(I.has)&&G8(I.delete)&&G8(I.entries)&&G8(I.values)&&G8(I.keys)&&G8(I[Symbol.iterator])&&G8(I.forEach))}append(I,G,Z){MC(this,Hc,"m",p71).call(this,{name:I,fileName:Z,append:!0,rawValue:G,argsLength:arguments.length})}set(I,G,Z){MC(this,Hc,"m",p71).call(this,{name:I,fileName:Z,append:!1,rawValue:G,argsLength:arguments.length})}get(I){let G=MC(this,$C,"f").get(String(I));if(!G)return null;return G[0]}getAll(I){let G=MC(this,$C,"f").get(String(I));if(!G)return[];return G.slice()}has(I){return MC(this,$C,"f").has(String(I))}delete(I){MC(this,$C,"f").delete(String(I))}*keys(){for(let I of MC(this,$C,"f").keys())yield I}*entries(){for(let I of this.keys()){let G=this.getAll(I);for(let Z of G)yield[I,Z]}}*values(){for(let[,I]of this)yield I}[(p71=function I({name:G,rawValue:Z,append:d,fileName:W,argsLength:B}){let w=d?"append":"set";if(B<2)throw new TypeError(`Failed to execute '${w}' on 'FormData': 2 arguments required, but only ${B} present.`);G=String(G);let V;if(h71(Z))V=W===void 0?Z:new EC([Z],W,{type:Z.type,lastModified:Z.lastModified});else if(as1(Z))V=new EC([Z],W===void 0?"blob":W,{type:Z.type});else if(W)throw new TypeError(`Failed to execute '${w}' on 'FormData': parameter 2 is not of type 'Blob'.`);else V=String(Z);let C=MC(this,$C,"f").get(G);if(!C)return void MC(this,$C,"f").set(G,[V]);if(!d)return void MC(this,$C,"f").set(G,[V]);C.push(V)},Symbol.iterator)](){return this.entries()}forEach(I,G){for(let[Z,d]of this)I.call(G,d,Z,this)}get[Symbol.toStringTag](){return"FormData"}[JM4.custom](){return this[Symbol.toStringTag]}}var XI1=A1(Vo1(),1),mo1=A1(go1(),1);import{ReadStream as tM4}from"node:fs";function bM4(){let I=16,G="";while(I--)G+="abcdefghijklmnopqrstuvwxyz0123456789"[Math.random()*36<<0];return G}var Uo1=bM4;var lM4=(I)=>Object.prototype.toString.call(I).slice(8,-1).toLowerCase();function jM4(I){if(lM4(I)!=="object")return!1;let G=Object.getPrototypeOf(I);if(G===null||G===void 0)return!0;return(G.constructor&&G.constructor.toString())===Object.toString()}var ZI1=jM4;var kM4=(I)=>String(I).replace(/\r|\n/g,(G,Z,d)=>{if(G==="\r"&&d[Z+1]!==`
|
|
443
|
+
`.indexOf(I.charAt(G))!==-1}var pS;(function(I){I.DEFAULT={allowTrailingComma:!1}})(pS||(pS={}));function Ca1(I,G=[],Z=pS.DEFAULT){let d=null,W=[],B=[];function w(C){if(Array.isArray(W))W.push(C);else if(d!==null)W[d]=C}return x81(I,{onObjectBegin:()=>{let C={};w(C),B.push(W),W=C,d=null},onObjectProperty:(C)=>{d=C},onObjectEnd:()=>{W=B.pop()},onArrayBegin:()=>{let C=[];w(C),B.push(W),W=C,d=null},onArrayEnd:()=>{W=B.pop()},onLiteralValue:w,onError:(C,X,Y)=>{G.push({error:C,offset:X,length:Y})}},Z),W[0]}function k81(I,G=[],Z=pS.DEFAULT){let d={type:"array",offset:-1,length:-1,children:[],parent:void 0};function W(C){if(d.type==="property")d.length=C-d.offset,d=d.parent}function B(C){return d.children.push(C),C}x81(I,{onObjectBegin:(C)=>{d=B({type:"object",offset:C,length:-1,parent:d,children:[]})},onObjectProperty:(C,X,Y)=>{d=B({type:"property",offset:X,length:-1,parent:d,children:[]}),d.children.push({type:"string",value:C,offset:X,length:Y,parent:d})},onObjectEnd:(C,X)=>{W(C+X),d.length=C+X-d.offset,d=d.parent,W(C+X)},onArrayBegin:(C,X)=>{d=B({type:"array",offset:C,length:-1,parent:d,children:[]})},onArrayEnd:(C,X)=>{d.length=C+X-d.offset,d=d.parent,W(C+X)},onLiteralValue:(C,X,Y)=>{B({type:Xv4(C),offset:X,length:Y,parent:d,value:C}),W(X+Y)},onSeparator:(C,X,Y)=>{if(d.type==="property"){if(C===":")d.colonOffset=X;else if(C===",")W(X)}},onError:(C,X,Y)=>{G.push({error:C,offset:X,length:Y})}},Z);let V=d.children[0];if(V)delete V.parent;return V}function qh(I,G){if(!I)return;let Z=I;for(let d of G)if(typeof d==="string"){if(Z.type!=="object"||!Array.isArray(Z.children))return;let W=!1;for(let B of Z.children)if(Array.isArray(B.children)&&B.children[0].value===d&&B.children.length===2){Z=B.children[1],W=!0;break}if(!W)return}else{let W=d;if(Z.type!=="array"||W<0||!Array.isArray(Z.children)||W>=Z.children.length)return;Z=Z.children[W]}return Z}function x81(I,G,Z=pS.DEFAULT){let d=hS(I,!1),W=[];function B($1){return $1?()=>$1(d.getTokenOffset(),d.getTokenLength(),d.getTokenStartLine(),d.getTokenStartCharacter()):()=>!0}function w($1){return $1?()=>$1(d.getTokenOffset(),d.getTokenLength(),d.getTokenStartLine(),d.getTokenStartCharacter(),()=>W.slice()):()=>!0}function V($1){return $1?(F1)=>$1(F1,d.getTokenOffset(),d.getTokenLength(),d.getTokenStartLine(),d.getTokenStartCharacter()):()=>!0}function C($1){return $1?(F1)=>$1(F1,d.getTokenOffset(),d.getTokenLength(),d.getTokenStartLine(),d.getTokenStartCharacter(),()=>W.slice()):()=>!0}let X=w(G.onObjectBegin),Y=C(G.onObjectProperty),A=B(G.onObjectEnd),D=w(G.onArrayBegin),J=B(G.onArrayEnd),K=C(G.onLiteralValue),z=V(G.onSeparator),Q=B(G.onComment),U=V(G.onError),M=Z&&Z.disallowComments,S=Z&&Z.allowTrailingComma;function L(){while(!0){let $1=d.scan();switch(d.getTokenError()){case 4:P(14);break;case 5:P(15);break;case 3:P(13);break;case 1:if(!M)P(11);break;case 2:P(12);break;case 6:P(16);break}switch($1){case 12:case 13:if(M)P(10);else Q();break;case 16:P(1);break;case 15:case 14:break;default:return $1}}}function P($1,F1=[],u=[]){if(U($1),F1.length+u.length>0){let I1=d.getToken();while(I1!==17){if(F1.indexOf(I1)!==-1){L();break}else if(u.indexOf(I1)!==-1)break;I1=L()}}}function m($1){let F1=d.getTokenValue();if($1)K(F1);else Y(F1),W.push(F1);return L(),!0}function l(){switch(d.getToken()){case 11:let $1=d.getTokenValue(),F1=Number($1);if(isNaN(F1))P(2),F1=0;K(F1);break;case 7:K(null);break;case 8:K(!0);break;case 9:K(!1);break;default:return!1}return L(),!0}function V1(){if(d.getToken()!==10)return P(3,[],[2,5]),!1;if(m(!1),d.getToken()===6){if(z(":"),L(),!H1())P(4,[],[2,5])}else P(5,[],[2,5]);return W.pop(),!0}function k(){X(),L();let $1=!1;while(d.getToken()!==2&&d.getToken()!==17){if(d.getToken()===5){if(!$1)P(4,[],[]);if(z(","),L(),d.getToken()===2&&S)break}else if($1)P(6,[],[]);if(!V1())P(4,[],[2,5]);$1=!0}if(A(),d.getToken()!==2)P(7,[2],[]);else L();return!0}function l1(){D(),L();let $1=!0,F1=!1;while(d.getToken()!==4&&d.getToken()!==17){if(d.getToken()===5){if(!F1)P(4,[],[]);if(z(","),L(),d.getToken()===4&&S)break}else if(F1)P(6,[],[]);if($1)W.push(0),$1=!1;else W[W.length-1]++;if(!H1())P(4,[],[4,5]);F1=!0}if(J(),!$1)W.pop();if(d.getToken()!==4)P(8,[4],[]);else L();return!0}function H1(){switch(d.getToken()){case 3:return l1();case 1:return k();case 10:return m(!0);default:return l()}}if(L(),d.getToken()===17){if(Z.allowEmptyContent)return!0;return P(4,[],[]),!1}if(!H1())return P(4,[],[]),!1;if(d.getToken()!==17)P(9,[],[]);return!0}function Xv4(I){switch(typeof I){case"boolean":return"boolean";case"number":return"number";case"string":return"string";case"object":{if(!I)return"null";else if(Array.isArray(I))return"array";return"object"}default:return"null"}}function Xa1(I,G,Z,d){let W=G.slice(),w=k81(I,[]),V=void 0,C=void 0;while(W.length>0)if(C=W.pop(),V=qh(w,W),V===void 0&&Z!==void 0)if(typeof C==="string")Z={[C]:Z};else Z=[Z];else break;if(!V){if(Z===void 0)throw new Error("Can not delete in empty document");return Xz(I,{offset:w?w.offset:0,length:w?w.length:0,content:JSON.stringify(Z)},d)}else if(V.type==="object"&&typeof C==="string"&&Array.isArray(V.children)){let X=qh(V,[C]);if(X!==void 0)if(Z===void 0){if(!X.parent)throw new Error("Malformed AST");let Y=V.children.indexOf(X.parent),A,D=X.parent.offset+X.parent.length;if(Y>0){let J=V.children[Y-1];A=J.offset+J.length}else if(A=V.offset+1,V.children.length>1)D=V.children[1].offset;return Xz(I,{offset:A,length:D-A,content:""},d)}else return Xz(I,{offset:X.offset,length:X.length,content:JSON.stringify(Z)},d);else{if(Z===void 0)return[];let Y=`${JSON.stringify(C)}: ${JSON.stringify(Z)}`,A=d.getInsertionIndex?d.getInsertionIndex(V.children.map((J)=>J.children[0].value)):V.children.length,D;if(A>0){let J=V.children[A-1];D={offset:J.offset+J.length,length:0,content:","+Y}}else if(V.children.length===0)D={offset:V.offset+1,length:0,content:Y};else D={offset:V.offset+1,length:0,content:Y+","};return Xz(I,D,d)}}else if(V.type==="array"&&typeof C==="number"&&Array.isArray(V.children)){let X=C;if(X===-1){let Y=`${JSON.stringify(Z)}`,A;if(V.children.length===0)A={offset:V.offset+1,length:0,content:Y};else{let D=V.children[V.children.length-1];A={offset:D.offset+D.length,length:0,content:","+Y}}return Xz(I,A,d)}else if(Z===void 0&&V.children.length>=0){let Y=C,A=V.children[Y],D;if(V.children.length===1)D={offset:V.offset+1,length:V.length-2,content:""};else if(V.children.length-1===Y){let J=V.children[Y-1],K=J.offset+J.length,z=V.offset+V.length;D={offset:K,length:z-2-K,content:""}}else D={offset:A.offset,length:V.children[Y+1].offset-A.offset,content:""};return Xz(I,D,d)}else if(Z!==void 0){let Y,A=`${JSON.stringify(Z)}`;if(!d.isArrayInsertion&&V.children.length>C){let D=V.children[C];Y={offset:D.offset,length:D.length,content:A}}else if(V.children.length===0||C===0)Y={offset:V.offset+1,length:0,content:V.children.length===0?A:A+","};else{let D=C>V.children.length?V.children.length:C,J=V.children[D-1];Y={offset:J.offset+J.length,length:0,content:","+A}}return Xz(I,Y,d)}else throw new Error(`Can not ${Z===void 0?"remove":d.isArrayInsertion?"insert":"modify"} Array index ${X} as length is not sufficient`)}else throw new Error(`Can not add ${typeof C!=="number"?"index":"property"} to parent of type ${V.type}`)}function Xz(I,G,Z){if(!Z.formattingOptions)return[G];let d=gh(I,G),W=G.offset,B=G.offset+G.content.length;if(G.length===0||G.content.length===0){while(W>0&&!cS(d,W-1))W--;while(B<d.length&&!cS(d,B))B++}let w=j81(d,{offset:W,length:B-W},{...Z.formattingOptions,keepLines:!1});for(let C=w.length-1;C>=0;C--){let X=w[C];d=gh(d,X),W=Math.min(W,X.offset),B=Math.max(B,X.offset+X.length),B+=X.content.length-X.length}let V=I.length-(d.length-B)-W;return[{offset:W,length:V,content:d.substring(W,B)}]}function gh(I,G){return I.substring(0,G.offset)+G.content+I.substring(G.offset+G.length)}var Ya1;(function(I){I[I.None=0]="None",I[I.UnexpectedEndOfComment=1]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=2]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=3]="UnexpectedEndOfNumber",I[I.InvalidUnicode=4]="InvalidUnicode",I[I.InvalidEscapeCharacter=5]="InvalidEscapeCharacter",I[I.InvalidCharacter=6]="InvalidCharacter"})(Ya1||(Ya1={}));var Aa1;(function(I){I[I.OpenBraceToken=1]="OpenBraceToken",I[I.CloseBraceToken=2]="CloseBraceToken",I[I.OpenBracketToken=3]="OpenBracketToken",I[I.CloseBracketToken=4]="CloseBracketToken",I[I.CommaToken=5]="CommaToken",I[I.ColonToken=6]="ColonToken",I[I.NullKeyword=7]="NullKeyword",I[I.TrueKeyword=8]="TrueKeyword",I[I.FalseKeyword=9]="FalseKeyword",I[I.StringLiteral=10]="StringLiteral",I[I.NumericLiteral=11]="NumericLiteral",I[I.LineCommentTrivia=12]="LineCommentTrivia",I[I.BlockCommentTrivia=13]="BlockCommentTrivia",I[I.LineBreakTrivia=14]="LineBreakTrivia",I[I.Trivia=15]="Trivia",I[I.Unknown=16]="Unknown",I[I.EOF=17]="EOF"})(Aa1||(Aa1={}));var h81=Ca1;var _a1;(function(I){I[I.InvalidSymbol=1]="InvalidSymbol",I[I.InvalidNumberFormat=2]="InvalidNumberFormat",I[I.PropertyNameExpected=3]="PropertyNameExpected",I[I.ValueExpected=4]="ValueExpected",I[I.ColonExpected=5]="ColonExpected",I[I.CommaExpected=6]="CommaExpected",I[I.CloseBraceExpected=7]="CloseBraceExpected",I[I.CloseBracketExpected=8]="CloseBracketExpected",I[I.EndOfFileExpected=9]="EndOfFileExpected",I[I.InvalidCommentToken=10]="InvalidCommentToken",I[I.UnexpectedEndOfComment=11]="UnexpectedEndOfComment",I[I.UnexpectedEndOfString=12]="UnexpectedEndOfString",I[I.UnexpectedEndOfNumber=13]="UnexpectedEndOfNumber",I[I.InvalidUnicode=14]="InvalidUnicode",I[I.InvalidEscapeCharacter=15]="InvalidEscapeCharacter",I[I.InvalidCharacter=16]="InvalidCharacter"})(_a1||(_a1={}));function Ha1(I,G,Z,d){return Xa1(I,G,Z,d)}function Da1(I,G){let Z=G.slice(0).sort((W,B)=>{let w=W.offset-B.offset;if(w===0)return W.length-B.length;return w}),d=I.length;for(let W=Z.length-1;W>=0;W--){let B=Z[W];if(B.offset+B.length<=d)I=gh(I,B);else throw new Error("Overlapping edit");d=B.offset}return I}function Hw(I){if(!I)return null;try{return JSON.parse(I)}catch(G){return W0(G),null}}function Fa1(I){if(!I)return null;try{return h81(I)}catch(G){return W0(G),null}}function Ja1(I,G){try{if(!I||I.trim()==="")return JSON.stringify([G],null,4);let Z=h81(I);if(Array.isArray(Z)){let d=Z.length,w=Ha1(I,d===0?[0]:[d],G,{formattingOptions:{insertSpaces:!0,tabSize:4},isArrayInsertion:!0});if(!w||w.length===0){let V=[...Z,G];return JSON.stringify(V,null,4)}return Da1(I,w)}else return JSON.stringify([G],null,4)}catch(Z){return W0(Z),JSON.stringify([G],null,4)}}var XU={allowedTools:[],history:[],dontCrawlDirectory:!1,enableArchitectTool:!1,mcpContextUris:[],mcpServers:{},approvedMcprcServers:[],rejectedMcprcServers:[],hasTrustDialogAccepted:!1,ignorePatterns:[]};function za1(I){let G={...XU};if(I===Hv4())G.dontCrawlDirectory=!0;return G}function Fv4(I){return["disabled","enabled","no_permissions","not_configured"].includes(I)}var Dw={numStartups:0,autoUpdaterStatus:"not_configured",theme:"dark",preferredNotifChannel:"iterm2",verbose:!1,editorMode:"emacs",customApiKeyResponses:{approved:[],rejected:[]}},iS=["autoUpdaterStatus","theme","verbose","preferredNotifChannel","shiftEnterKeyBindingInstalled","editorMode","hasUsedBackslashReturn"];function n81(I){return iS.includes(I)}var nS=["allowedTools","dontCrawlDirectory","enableArchitectTool","hasTrustDialogAccepted","hasCompletedProjectOnboarding","ignorePatterns"];function Qa1(){let I=u0(),G=YU(EY,Dw);while(!0){if(G.projects?.[I]?.hasTrustDialogAccepted)return!0;let d=i81(I,"..");if(d===I)break;I=d}return!1}var n15={...Dw,autoUpdaterStatus:"disabled"},a15={...XU};function a81(I){return nS.includes(I)}function Na1(I,G,Z){if(B0("tengu_config_add",{key:I,global:Z?.toString()??"false"}),Z){let d=Q2();if(!(I in d)||!Array.isArray(d[I]))console.error(`Error: '${I}' is not a valid array config key in global config`),process.exit(1);let W=I,B=d[W];if(!B)B=[];if(!B.includes(G)){let w=[...B,G];i4({...d,[W]:w})}}else{let d=E4(),W=XU[I];if(!(I in XU)||!Array.isArray(W))console.error(`Error: '${I}' is not a valid array config key in project config`),process.exit(1);let B=I,w=d[B];if(!w)w=[];if(!w.includes(G)){let V=[...w,G];h3({...d,[B]:V})}}process.exit(0)}function qa1(I,G,Z){if(B0("tengu_config_remove",{key:I,global:Z?.toString()??"false"}),Z){let d=Q2();if(!(I in d)||!Array.isArray(d[I]))console.error(`Error: '${I}' is not a valid array config key in global config`),process.exit(1);let W=I,B=d[W];if(!B)B=[];let w=B.filter((V)=>V!==G);if(B.length!==w.length)i4({...d,[W]:w})}else{let d=E4(),W=XU[I];if(!(I in XU)||!Array.isArray(W))console.error(`Error: '${I}' is not a valid array config key in project config`),process.exit(1);let B=I,w=d[B];if(!w)w=[];let V=w.filter((C)=>C!==G);if(w.length!==V.length)h3({...d,[B]:V})}process.exit(0)}function i4(I){Ua1(EY,{...I,projects:YU(EY,Dw).projects},Dw)}function Q2(){return YU(EY,Dw)}function ga1(I){let G=Q2();if(G.customApiKeyResponses?.approved?.includes(I))return"approved";if(G.customApiKeyResponses?.rejected?.includes(I))return"rejected";return"new"}function Ua1(I,G,Z){let d=Object.fromEntries(Object.entries(G).filter(([W,B])=>JSON.stringify(B)!==JSON.stringify(Z[W])));_v4(I,JSON.stringify(d,null,2),"utf-8")}var fa1=!1;function Ra1(){fa1=!0,YU(EY,Dw,!0)}function YU(I,G,Z){if(!fa1)throw new Error("Config accessed before allowed.");if(!c81(I))return wS(G);try{let d=p81(I,"utf-8");try{let W=JSON.parse(d);return{...wS(G),...W}}catch(W){let B=W instanceof Error?W.message:String(W);throw new ig(B,I,G)}}catch(d){if(d instanceof ig&&Z)throw d;return wS(G)}}function E4(){let I=i81(u0()),G=YU(EY,Dw);if(!G.projects)return za1(I);let Z=G.projects[I]??za1(I);if(typeof Z.allowedTools==="string")Z.allowedTools=Hw(Z.allowedTools)??[];return Z}function h3(I){let G=YU(EY,Dw);Ua1(EY,{...G,projects:{...G.projects,[i81(u0())]:I}},Dw)}function va1(){return Q2().autoUpdaterStatus==="disabled"}var aS=x2(()=>{let I=Ka1(u0(),".mcprc");if(!c81(I))return{};try{let G=p81(I,"utf-8"),Z=Hw(G);if(Z&&typeof Z==="object")return B0("tengu_mcprc_found",{numServers:Object.keys(Z).length.toString()}),Z}catch{}return{}},()=>{let I=u0(),G=Ka1(I,".mcprc");if(c81(G))try{let Z=p81(G,"utf-8");return`${I}:${Z}`}catch{return I}return I});function Uh(){let I=Q2();if(I.userID)return I.userID;let G=Dv4(32).toString("hex");return i4({...I,userID:G}),G}function Ea1(I,G){if(B0("tengu_config_get",{key:I,global:G?.toString()??"false"}),G){if(!n81(I))console.error(`Error: '${I}' is not a valid config key. Valid keys are: ${iS.join(", ")}`),process.exit(1);return Q2()[I]}else{if(!a81(I))console.error(`Error: '${I}' is not a valid config key. Valid keys are: ${nS.join(", ")}`),process.exit(1);return E4()[I]}}function Ma1(I,G,Z){if(B0("tengu_config_set",{key:I,global:Z?.toString()??"false"}),Z){if(!n81(I))console.error(`Error: Cannot set '${I}'. Only these keys can be modified: ${iS.join(", ")}`),process.exit(1);if(I==="autoUpdaterStatus"&&!Fv4(G))console.error("Error: Invalid value for autoUpdaterStatus. Must be one of: disabled, enabled, no_permissions, not_configured"),process.exit(1);let d=Q2();i4({...d,[I]:G})}else{if(!a81(I))console.error(`Error: Cannot set '${I}'. Only these keys can be modified: ${nS.join(", ")}. Did you mean --global?`),process.exit(1);let d=E4();h3({...d,[I]:G})}process.exit(0)}function $a1(I,G){if(B0("tengu_config_delete",{key:I,global:G?.toString()??"false"}),G){if(!n81(I))console.error(`Error: Cannot delete '${I}'. Only these keys can be modified: ${iS.join(", ")}`),process.exit(1);let Z=Q2();delete Z[I],i4(Z)}else{if(!a81(I))console.error(`Error: Cannot delete '${I}'. Only these keys can be modified: ${nS.join(", ")}. Did you mean --global?`),process.exit(1);let Z=E4();delete Z[I],h3(Z)}}function Sa1(I){if(B0("tengu_config_list",{global:I?.toString()??"false"}),I)return dx(Q2(),iS);else return dx(E4(),nS)}var nx=x2(async()=>{let I=Uh(),G=Q2(),Z=void 0;return{customIDs:{sessionId:Sd},userID:I,appVersion:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION,email:void 0,custom:{userType:"external",organizationUuid:G.oauthAccount?.organizationUuid,accountUuid:G.oauthAccount?.accountUuid}}});function La1(){nI.init({dsn:lp1,environment:"external",release:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION,integrations:[new nI.Integrations.Http({tracing:!0}),new nI.Integrations.Modules,new nI.Integrations.Console,new nI.Integrations.FunctionToString,new nI.Integrations.LinkedErrors],tracesSampleRate:1,tracePropagationTargets:["localhost"]})}async function Xx(I){try{let G=await nx();nI.setExtras({nodeVersion:P2.nodeVersion,platform:P2.platform,isCI:P2.isCI,isTest:!1,packageVersion:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION,sessionId:Sd,statsigGates:ap1(),terminal:P2.terminal,userType:"external"}),nI.setUser({id:G.userID,email:G.email}),nI.captureException(I)}catch{}}async function nx1(I,G,Z){return nI.addBreadcrumb({message:I,data:G,category:Z})}var b2="Claude Code",fh="https://claude.ai/code";var To1={};var Pa1=!1,Yz=void 0,r81=void 0,Jv4=void 0,Kv4=void 0,zv4=void 0,ua1=void 0,Qv4=void 0,Rh=void 0,s81=void 0,ya1=void 0,o81=void 0,vh=void 0,Oa1=void 0;function Eh(I,G={auto:!1}){if(Pa1)throw new Error(`you must \`import '@anthropic-ai/sdk/shims/${I.kind}'\` before importing anything else from @anthropic-ai/sdk`);if(Yz)throw new Error(`can't \`import '@anthropic-ai/sdk/shims/${I.kind}'\` after \`import '@anthropic-ai/sdk/shims/${Yz}'\``);Pa1=G.auto,Yz=I.kind,r81=I.fetch,Jv4=I.Request,Kv4=I.Response,zv4=I.Headers,ua1=I.FormData,Qv4=I.Blob,Rh=I.File,s81=I.ReadableStream,ya1=I.getMultipartRequestOptions,o81=I.getDefaultAgent,vh=I.fileFromPath,Oa1=I.isFsReadStream}var bH=A1(A71(),1);_c();c71();import{inspect as JM4}from"util";x71();var as1=(I)=>I instanceof Nw;import{deprecate as FM4}from"util";var rs1=FM4(()=>{},'Constructor "entries" argument is not spec-compliant and will be removed in next major release.');var MC=function(I,G,Z,d){if(Z==="a"&&!d)throw new TypeError("Private accessor was defined without a getter");if(typeof G==="function"?I!==G||!d:!G.has(I))throw new TypeError("Cannot read private member from an object whose class did not declare it");return Z==="m"?d:Z==="a"?d.call(I):d?d.value:G.get(I)},Hc,$C,p71;class i71{constructor(I){if(Hc.add(this),$C.set(this,new Map),I)rs1(),I.forEach(({name:G,value:Z,fileName:d})=>this.append(G,Z,d))}static[($C=new WeakMap,Hc=new WeakSet,Symbol.hasInstance)](I){return Boolean(I&&G8(I.constructor)&&I[Symbol.toStringTag]==="FormData"&&G8(I.append)&&G8(I.set)&&G8(I.get)&&G8(I.getAll)&&G8(I.has)&&G8(I.delete)&&G8(I.entries)&&G8(I.values)&&G8(I.keys)&&G8(I[Symbol.iterator])&&G8(I.forEach))}append(I,G,Z){MC(this,Hc,"m",p71).call(this,{name:I,fileName:Z,append:!0,rawValue:G,argsLength:arguments.length})}set(I,G,Z){MC(this,Hc,"m",p71).call(this,{name:I,fileName:Z,append:!1,rawValue:G,argsLength:arguments.length})}get(I){let G=MC(this,$C,"f").get(String(I));if(!G)return null;return G[0]}getAll(I){let G=MC(this,$C,"f").get(String(I));if(!G)return[];return G.slice()}has(I){return MC(this,$C,"f").has(String(I))}delete(I){MC(this,$C,"f").delete(String(I))}*keys(){for(let I of MC(this,$C,"f").keys())yield I}*entries(){for(let I of this.keys()){let G=this.getAll(I);for(let Z of G)yield[I,Z]}}*values(){for(let[,I]of this)yield I}[(p71=function I({name:G,rawValue:Z,append:d,fileName:W,argsLength:B}){let w=d?"append":"set";if(B<2)throw new TypeError(`Failed to execute '${w}' on 'FormData': 2 arguments required, but only ${B} present.`);G=String(G);let V;if(h71(Z))V=W===void 0?Z:new EC([Z],W,{type:Z.type,lastModified:Z.lastModified});else if(as1(Z))V=new EC([Z],W===void 0?"blob":W,{type:Z.type});else if(W)throw new TypeError(`Failed to execute '${w}' on 'FormData': parameter 2 is not of type 'Blob'.`);else V=String(Z);let C=MC(this,$C,"f").get(G);if(!C)return void MC(this,$C,"f").set(G,[V]);if(!d)return void MC(this,$C,"f").set(G,[V]);C.push(V)},Symbol.iterator)](){return this.entries()}forEach(I,G){for(let[Z,d]of this)I.call(G,d,Z,this)}get[Symbol.toStringTag](){return"FormData"}[JM4.custom](){return this[Symbol.toStringTag]}}var XI1=A1(Vo1(),1),mo1=A1(go1(),1);import{ReadStream as tM4}from"node:fs";function bM4(){let I=16,G="";while(I--)G+="abcdefghijklmnopqrstuvwxyz0123456789"[Math.random()*36<<0];return G}var Uo1=bM4;var lM4=(I)=>Object.prototype.toString.call(I).slice(8,-1).toLowerCase();function jM4(I){if(lM4(I)!=="object")return!1;let G=Object.getPrototypeOf(I);if(G===null||G===void 0)return!0;return(G.constructor&&G.constructor.toString())===Object.toString()}var ZI1=jM4;var kM4=(I)=>String(I).replace(/\r|\n/g,(G,Z,d)=>{if(G==="\r"&&d[Z+1]!==`
|
|
444
444
|
`||G===`
|
|
445
445
|
`&&d[Z-1]!=="\r")return`\r
|
|
446
446
|
`;return G}),dI1=kM4;var xM4=(I)=>String(I).replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/"/g,"%22"),WI1=xM4;var hM4=(I)=>typeof I==="function",OY=hM4;var fz=(I)=>Boolean(I&&typeof I==="object"&&OY(I.constructor)&&I[Symbol.toStringTag]==="File"&&OY(I.stream)&&I.name!=null&&I.size!=null&&I.lastModified!=null);var fo1=(I)=>Boolean(I&&OY(I.constructor)&&I[Symbol.toStringTag]==="FormData"&&OY(I.append)&&OY(I.getAll)&&OY(I.entries)&&OY(I[Symbol.iterator]));var JL=function(I,G,Z,d,W){if(d==="m")throw new TypeError("Private method is not writable");if(d==="a"&&!W)throw new TypeError("Private accessor was defined without a setter");if(typeof G==="function"?I!==G||!W:!G.has(I))throw new TypeError("Cannot write private member to an object whose class did not declare it");return d==="a"?W.call(I,Z):W?W.value=Z:G.set(I,Z),Z},b5=function(I,G,Z,d){if(Z==="a"&&!d)throw new TypeError("Private accessor was defined without a getter");if(typeof G==="function"?I!==G||!d:!G.has(I))throw new TypeError("Cannot read private member from an object whose class did not declare it");return Z==="m"?d:Z==="a"?d.call(I):d?d.value:G.get(I)},qc,TH,KL,gc,zL,Rz,QL,NL,Uc,BI1,cM4={enableAdditionalHeaders:!1};class wI1{constructor(I,G,Z){if(qc.add(this),TH.set(this,`\r
|
|
@@ -504,7 +504,7 @@ globstar while`,I,A,G,D,J),this.matchOne(I.slice(A),G.slice(D),Z))return this.de
|
|
|
504
504
|
`).join(`\r
|
|
505
505
|
`);n29(I,W,{encoding:Z,flush:!0})}var t29=new hY({fetchMethod:(I)=>I49(I),ttl:300000,ttlAutopurge:!1,max:1000});async function jd0(I){return t29.fetch(cf(I))}async function I49(I){let G=new AbortController;setTimeout(()=>{G.abort()},1000);let Z=await Ad0(I,G.signal,15),d=0;for(let W of Z)if(iz(W)==="CRLF")d++;return d>3?"CRLF":"LF"}function kd0(I,G,Z){if(I.has(G))return I.get(G);let d=Z();return I.set(G,d),d}var G49=new hY({fetchMethod:(I)=>xd0(I),ttl:300000,ttlAutopurge:!1,max:1000});function pG(I){let G=cf(I);return kd0(G49,G,()=>xd0(G))}function xd0(I){let Z=Buffer.alloc(4096),d=void 0;try{d=ud0(I,"r");let W=yd0(d,Z,0,4096,0);if(W>=2){if(Z[0]===255&&Z[1]===254)return"utf16le"}if(W>=3&&Z[0]===239&&Z[1]===187&&Z[2]===191)return"utf8";return Z.slice(0,W).toString("utf8").length>0?"utf8":"ascii"}catch(W){return W0(W,"detectEncoding",{filePath:I}),"utf8"}finally{if(d)Od0(d)}}var Z49=new hY({fetchMethod:(I)=>hd0(I),ttl:300000,ttlAutopurge:!1,max:1000});function iz(I){let G=cf(I);return kd0(Z49,G,()=>hd0(G))}function hd0(I,G="utf8"){try{let Z=Buffer.alloc(4096),d=ud0(I,"r"),W=yd0(d,Z,0,4096,0);Od0(d);let B=Z.toString(G,0,W),w=0,V=0;for(let C=0;C<B.length;C++)if(B[C]===`
|
|
506
506
|
`)if(C>0&&B[C-1]==="\r")w++;else V++;return w>V?"CRLF":"LF"}catch(Z){return W0(Z,"detectEncoding",{filePath:I,encoding:G}),"LF"}}function OW1(I){let G=uW1(I)?I:cf(u0(),I);if(G.endsWith(" AM.png"))return G.replace(" AM.png",`${String.fromCharCode(8239)}AM.png`);if(G.endsWith(" PM.png"))return G.replace(" PM.png",`${String.fromCharCode(8239)}PM.png`);return G}function mW1(I){return I?uW1(I)?I:cf(u0(),I):void 0}function cd0(I){let G=mW1(I),Z=G?md0(u0(),G):void 0;return{absolutePath:G,relativePath:Z}}function pf(I){try{let G=o29(I),Z=Sd0(I,Ld0(I));if(!a29(G))return;let B=r29(G).filter((w)=>Sd0(w,Ld0(w))===Z&&e29(G,w)!==I)[0];if(B)return B;return}catch(G){W0(G,"findSimilarFile",{filePath:I});return}}function nf({content:I,startLine:G}){if(!I)return"";return I.split(/\r?\n/).map((Z,d)=>{let W=d+G,B=String(W);if(B.length>=6)return`${B} ${Z}`;return`${B.padStart(6," ")} ${Z}`}).join(`
|
|
507
|
-
`)}function pd0(I){try{let G=s29(I),Z=G.readSync();return G.closeSync(),Z===null}catch(G){return W0(G,"isDirEmpty",{dirPath:I}),!1}}function gD(I,G=u0()){let Z=E4();if(!Z.ignorePatterns||Z.ignorePatterns.length===0)return!1;let d=uW1(I)?I:cf(G,I),W=md0(G,d);return Z.ignorePatterns.some((B)=>{try{return Td0.default(W,B,{dot:!0,matchBase:!0})}catch(w){return W0(w,"shouldIgnorePath",{filePath:I,basePath:G}),!1}})}function tU(){let I=E4();if(!I.hasCompletedProjectOnboarding)h3({...I,hasCompletedProjectOnboarding:!0})}function w49(){let I=Q2();i4({...I,lastReleaseNotesSeen:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.33"}.VERSION})}function TW1({workspaceDir:I}){let Z=!E4().hasCompletedProjectOnboarding,W=Q2().lastReleaseNotesSeen,B=e2.useMemo(()=>Q20({ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.33"}.VERSION,W),[W]),w=B.length>0;if(e2.useEffect(()=>{if(w&&!Z)w49()},[w,Z]),!Z&&!w)return null;let V=d49(W49(I,"CLAUDE.md")),C=pd0(I),X=!V&&!C,Y=eU.isEnabled&&!Q2().shiftEnterKeyBindingInstalled,A=e1();return e2.createElement(p,{flexDirection:"column",gap:1,padding:1,paddingBottom:0},Z&&e2.createElement(e2.Fragment,null,e2.createElement(O,{color:A.secondaryText},"Tips for getting started:"),e2.createElement(II,null,(()=>{let D=[];if(C)D.push(e2.createElement(II.Item,{key:"workspace"},e2.createElement(O,{color:A.secondaryText},"Ask Claude to create a new app or clone a repository.")));if(X)D.push(e2.createElement(II.Item,{key:"claudemd"},e2.createElement(O,{color:A.secondaryText},"Run ",e2.createElement(O,{color:A.text},"/init")," to create a CLAUDE.md file with instructions for Claude.")));if(Y)D.push(e2.createElement(II.Item,{key:"terminal"},e2.createElement(O,{color:A.secondaryText},"Run ",e2.createElement(O,{color:A.text},"/terminal-setup"),e2.createElement(O,{bold:!1}," to set up terminal integration"))));return D.push(e2.createElement(II.Item,{key:"questions"},e2.createElement(O,{color:A.secondaryText},"Ask Claude questions about your codebase."))),D.push(e2.createElement(II.Item,{key:"changes"},e2.createElement(O,{color:A.secondaryText},"Ask Claude to implement changes to your codebase."))),D})())),!Z&&w&&e2.createElement(p,{borderColor:e1().secondaryBorder,flexDirection:"column",marginRight:1},e2.createElement(p,{flexDirection:"column",gap:1},e2.createElement(O,{color:e1().secondaryText},"What's new:"),e2.createElement(p,{flexDirection:"column",marginLeft:1},B.map((D,J)=>e2.createElement(O,{key:J,color:e1().secondaryText},"• ",D))))),I===B49()&&e2.createElement(O,{color:e1().warning},"Note: You have launched ",e2.createElement(O,{bold:!0},"claude")," in your home directory. For the best experience, launch it in a project directory instead."))}var UD=A1(u1(),1);var af=A1(u1(),1);var jP=A1(u1(),1);function id0({isFocused:I,isSelected:G,children:Z}){let{styles:d}=B5("Select");return jP.default.createElement(p,{...d.option({isFocused:I})},I&&jP.default.createElement(O,{...d.focusIndicator()},Y3.pointer),jP.default.createElement(O,{...d.label({isFocused:I,isSelected:G})},Z),G&&jP.default.createElement(O,{...d.selectedIndicator()},Y3.tick))}var xZ=A1(u1(),1);import{isDeepStrictEqual as V49}from"node:util";class Xn extends Map{first;constructor(I){let G=[],Z,d,W=0;for(let B of I){let w={...B,previous:d,next:void 0,index:W};if(d)d.next=w;Z||=w,G.push([B.value,w]),W++,d=w}super(G);this.first=Z}}var C49=(I,G)=>{switch(G.type){case"focus-next-option":{if(!I.focusedValue)return I;let Z=I.optionMap.get(I.focusedValue);if(!Z)return I;let d=Z.next;if(!d)return I;if(!(d.index>=I.visibleToIndex))return{...I,focusedValue:d.value};let B=Math.min(I.optionMap.size,I.visibleToIndex+1),w=B-I.visibleOptionCount;return{...I,focusedValue:d.value,visibleFromIndex:w,visibleToIndex:B}}case"focus-previous-option":{if(!I.focusedValue)return I;let Z=I.optionMap.get(I.focusedValue);if(!Z)return I;let d=Z.previous;if(!d)return I;if(!(d.index<=I.visibleFromIndex))return{...I,focusedValue:d.value};let B=Math.max(0,I.visibleFromIndex-1),w=B+I.visibleOptionCount;return{...I,focusedValue:d.value,visibleFromIndex:B,visibleToIndex:w}}case"select-focused-option":return{...I,previousValue:I.value,value:I.focusedValue};case"reset":return G.state;case"set-focus":return{...I,focusedValue:G.value}}},nd0=({visibleOptionCount:I,defaultValue:G,options:Z})=>{let d=typeof I==="number"?Math.min(I,Z.length):Z.length,W=new Xn(Z);return{optionMap:W,visibleOptionCount:d,focusedValue:W.first?.value,visibleFromIndex:0,visibleToIndex:d,previousValue:G,value:G}},ad0=({visibleOptionCount:I=5,options:G,defaultValue:Z,onChange:d,onFocus:W,focusValue:B})=>{let[w,V]=xZ.useReducer(C49,{visibleOptionCount:I,defaultValue:Z,options:G},nd0),[C,X]=xZ.useState(G);if(G!==C&&!V49(G,C))V({type:"reset",state:nd0({visibleOptionCount:I,defaultValue:Z,options:G})}),X(G);let Y=xZ.useCallback(()=>{V({type:"focus-next-option"})},[]),A=xZ.useCallback(()=>{V({type:"focus-previous-option"})},[]),D=xZ.useCallback(()=>{V({type:"select-focused-option"})},[]),J=xZ.useMemo(()=>{return G.map((K,z)=>({...K,index:z})).slice(w.visibleFromIndex,w.visibleToIndex)},[G,w.visibleFromIndex,w.visibleToIndex]);return xZ.useEffect(()=>{if(w.value&&w.previousValue!==w.value)d?.(w.value)},[w.previousValue,w.value,G,d]),xZ.useEffect(()=>{if(w.focusedValue)W?.(w.focusedValue)},[w.focusedValue,W]),xZ.useEffect(()=>{if(B)V({type:"set-focus",value:B})},[B]),{focusedValue:w.focusedValue,visibleFromIndex:w.visibleFromIndex,visibleToIndex:w.visibleToIndex,value:w.value,visibleOptions:J,focusNextOption:Y,focusPreviousOption:A,selectFocusedOption:D}};var rd0=({isDisabled:I=!1,state:G})=>{_4((Z,d)=>{if(d.downArrow)G.focusNextOption();if(d.upArrow)G.focusPreviousOption();if(d.return)G.selectFocusedOption()},{isActive:!I})};function tI({isDisabled:I=!1,visibleOptionCount:G=5,highlightText:Z,options:d,defaultValue:W,onChange:B,onFocus:w,focusValue:V}){let C=ad0({visibleOptionCount:G,options:d,defaultValue:W,onChange:B,onFocus:w,focusValue:V});rd0({isDisabled:I,state:C});let{styles:X}=B5("Select");return af.default.createElement(p,{...X.container()},C.visibleOptions.map((Y)=>{let A=Y.label,D=A;if(Z&&A.includes(Z)){let J=A.indexOf(Z);D=af.default.createElement(af.default.Fragment,null,A.slice(0,J),af.default.createElement(O,{...X.highlightedText()},Z),A.slice(J+Z.length))}return af.default.createElement(id0,{key:Y.value,isFocused:!I&&C.focusedValue===Y.value,isSelected:C.value===Y.value},D)}))}var lW1=A1(u1(),1);var az=A1(dW0(),1);var WW0=process.env.TERM_PROGRAM==="Apple_Terminal",L9={};L9.cursorTo=(I,G)=>{if(typeof I!=="number")throw new TypeError("The `x` argument is required");if(typeof G!=="number")return"\x1B["+(I+1)+"G";return"\x1B["+(G+1)+";"+(I+1)+"H"};L9.cursorMove=(I,G)=>{if(typeof I!=="number")throw new TypeError("The `x` argument is required");let Z="";if(I<0)Z+="\x1B["+-I+"D";else if(I>0)Z+="\x1B["+I+"C";if(G<0)Z+="\x1B["+-G+"A";else if(G>0)Z+="\x1B["+G+"B";return Z};L9.cursorUp=(I=1)=>"\x1B["+I+"A";L9.cursorDown=(I=1)=>"\x1B["+I+"B";L9.cursorForward=(I=1)=>"\x1B["+I+"C";L9.cursorBackward=(I=1)=>"\x1B["+I+"D";L9.cursorLeft="\x1B[G";L9.cursorSavePosition=WW0?"\x1B7":"\x1B[s";L9.cursorRestorePosition=WW0?"\x1B8":"\x1B[u";L9.cursorGetPosition="\x1B[6n";L9.cursorNextLine="\x1B[E";L9.cursorPrevLine="\x1B[F";L9.cursorHide="\x1B[?25l";L9.cursorShow="\x1B[?25h";L9.eraseLines=(I)=>{let G="";for(let Z=0;Z<I;Z++)G+=L9.eraseLine+(Z<I-1?L9.cursorUp():"");if(I)G+=L9.cursorLeft;return G};L9.eraseEndLine="\x1B[K";L9.eraseStartLine="\x1B[1K";L9.eraseLine="\x1B[2K";L9.eraseDown="\x1B[J";L9.eraseUp="\x1B[1J";L9.eraseScreen="\x1B[2J";L9.scrollUp="\x1B[S";L9.scrollDown="\x1B[T";L9.clearScreen="\x1Bc";L9.clearTerminal=process.platform==="win32"?`${L9.eraseScreen}\x1B[0f`:`${L9.eraseScreen}\x1B[3J\x1B[H`;L9.beep="\x07";L9.link=(I,G)=>{return["\x1B]","8",";",";",G,"\x07",I,"\x1B]","8",";",";","\x07"].join("")};L9.image=(I,G={})=>{let Z="\x1B]1337;File=inline=1";if(G.width)Z+=`;width=${G.width}`;if(G.height)Z+=`;height=${G.height}`;if(G.preserveAspectRatio===!1)Z+=";preserveAspectRatio=0";return Z+":"+I.toString("base64")+"\x07"};L9.iTerm={setCwd:(I=process.cwd())=>`\x1B]50;CurrentDir=${I}\x07`,annotation:(I,G={})=>{let Z="\x1B]1337;",d=typeof G.x!=="undefined",W=typeof G.y!=="undefined";if((d||W)&&!(d&&W&&typeof G.length!=="undefined"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");if(I=I.replace(/\|/g,""),Z+=G.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",G.length>0)Z+=(d?[I,G.length,G.x,G.y]:[G.length,I]).join("|");else Z+=I;return Z+"\x07"}};var BW0=L9;var Yn=A1(CW0(),1);function nz(I,G,{target:Z="stdout",...d}={}){if(!Yn.default[Z]){if(d.fallback===!1)return I;return typeof d.fallback==="function"?d.fallback(I,G):`${I} (${G})`}return BW0.link(I,G)}nz.isSupported=Yn.default.stdout;nz.stderr=(I,G,Z={})=>nz(I,G,{target:"stderr",...Z});nz.stderr.isSupported=Yn.default.stderr;var XW0=({children:I,url:G,fallback:Z=!0})=>lW1.default.createElement(ap,{transform:(d)=>nz(d,G,{fallback:Z})},lW1.default.createElement(O,null,I));XW0.propTypes={children:az.default.oneOfType([az.default.arrayOf(az.default.node),az.default.node]).isRequired,url:az.default.string.isRequired,fallback:az.default.bool};var sf=XW0;var An=A1(u1(),1);var _49=["iTerm.app","WezTerm","Hyper","VSCode"];function iC({url:I,children:G}){let Z=_49.includes(P2.terminal??""),d=G||I;if(Z||d!==I)return An.default.createElement(sf,{url:I},An.default.createElement(O,null,d));else return An.default.createElement(O,{underline:!0},d)}function YW0({onDone:I}){return _4((G,Z)=>{if(Z.ctrl&&(G==="c"||G==="d")||Z.escape)I()}),UD.default.createElement(p,{flexDirection:"column",borderStyle:"round",padding:1,borderColor:e1().secondaryBorder},UD.default.createElement(p,{marginBottom:1,flexDirection:"column"},UD.default.createElement(O,{bold:!0},"You've spent $5 on the Anthropic API this session."),UD.default.createElement(O,null,"Learn more about how to monitor your spending:"),UD.default.createElement(iC,{url:"https://docs.anthropic.com/s/claude-code-cost"})),UD.default.createElement(p,null,UD.default.createElement(tI,{options:[{value:"ok",label:"Got it, thanks!"}],onChange:I})))}var r4=A1(u1(),1),z3=A1(u1(),1);var Z9=A1(u1(),1);function _n(){return!(E6||M6)}function Lw(){let I=Q2();if(!1==="true")throw new Error("ANTHROPIC_API_KEY env var is required");return Hn()}function jW1(I){return I.slice(-20)}function AW0(){if(process.platform!=="darwin")return!1;let G=Q2().primaryApiKey;if(!G)return!1;try{let Z=!1;try{Z=!!ng(`security find-generic-password -a $USER -w -s "${b2}"`)}catch(B){Z=!1}if(!Z)ng(`security add-generic-password -a $USER -s "${b2}" -w ${G}`);let{primaryApiKey:d,...W}=Q2();return i4(W),Hn.cache.clear?.(),!0}catch(Z){return W0(Z),!1}}var Hn=x2(()=>{if(process.platform==="darwin")try{let G=ng(`security find-generic-password -a $USER -w -s "${b2}"`);if(G)return G}catch(G){W0(G)}return Q2().primaryApiKey??null});function _W0(I){let G=Q2();if(process.platform==="darwin")try{ng(`security add-generic-password -a $USER -s "${b2}" -w ${I}`)}catch(d){W0(d),G.primaryApiKey=I}else G.primaryApiKey=I;if(!G.customApiKeyResponses)G.customApiKeyResponses={approved:[],rejected:[]};if(!G.customApiKeyResponses.approved)G.customApiKeyResponses.approved=[];let Z=jW1(I);if(!G.customApiKeyResponses.approved.includes(Z))G.customApiKeyResponses.approved.push(Z);i4(G),Hn.cache.clear?.()}function HW0(){if(process.platform==="darwin")try{ng(`security delete-generic-password -a $USER -s "${b2}"`)}catch(G){W0(G)}let I=Q2();I.primaryApiKey=void 0,i4(I),Hn.cache.clear?.()}var kW1=46;function DW0({mcpClients:I,isDefaultModel:G=!1}){let Z=Math.max(kW1,u0().length+12),d=e1(),W=process.env.ANTHROPIC_MODEL,B=Lw(),w=Boolean(!1),V=!G&&Boolean(W),C=!1,X=I.filter((Y)=>Y.type==="failed").length;return Z9.createElement(p,{flexDirection:"column"},Z9.createElement(p,{borderColor:d.claude,borderStyle:"round",flexDirection:"column",gap:1,paddingLeft:1,width:Z},Z9.createElement(O,null,Z9.createElement(O,{color:d.claude},"✻")," Welcome to"," ",Z9.createElement(O,{bold:!0},b2)," ",Z9.createElement(O,null,"research preview!")),Z9.createElement(Z9.Fragment,null,Z9.createElement(p,{paddingLeft:2,flexDirection:"column",gap:1},Z9.createElement(O,{color:d.secondaryText,italic:!0},"/help for help",!1),Z9.createElement(O,{color:d.secondaryText},"cwd: ",u0()),process.argv.includes("--mcp-debug")?Z9.createElement(O,{color:d.warning},"MCP debug mode enabled"):X>0&&Z9.createElement(O,{color:d.error},X," MCP server",X>1?"s":""," ","failed to connect. Run with --mcp-debug to see error logs.")),!1),I.length?Z9.createElement(p,{borderColor:d.secondaryBorder,borderStyle:"single",borderBottom:!1,borderLeft:!1,borderRight:!1,borderTop:!0,flexDirection:"column",marginLeft:2,marginRight:1,paddingTop:1},Z9.createElement(p,{marginBottom:1},Z9.createElement(O,{color:d.secondaryText},"MCP Servers:")),I.map((Y,A)=>Z9.createElement(p,{key:A,width:Z-6},Z9.createElement(O,{color:d.secondaryText},"• ",Y.name),Z9.createElement(p,{flexGrow:1}),Z9.createElement(O,{bold:!0,color:Y.type==="connected"?d.success:d.error},Y.type==="connected"?"connected":"failed")))):null))}var V8=A1(u1(),1);var V_=A1(u1(),1);import{randomUUID as OT}from"crypto";var I2=A1(u1(),1),$B=A1(u1(),1);var _S2=A1(u1(),1);var VS2=A1(u1(),1);var xW1=A1(u1(),1),FW0=2000;function rz(I,G,Z){let d=xW1.useRef(0),W=xW1.useRef();return()=>{let B=Date.now();if(B-d.current<=FW0&&W.current){if(W.current)clearTimeout(W.current),W.current=void 0;G(),I(!1)}else Z?.(),I(!0),W.current=setTimeout(()=>I(!1),FW0);d.current=B}}class d8{measuredText;selection;offset;constructor(I,G=0,Z=0){this.measuredText=I;this.selection=Z;this.offset=Math.max(0,Math.min(this.measuredText.text.length,G))}static fromText(I,G,Z=0,d=0){return new d8(new JW0(I,G-1),Z,d)}render(I,G,Z){let{line:d,column:W}=this.getPosition();return this.measuredText.getWrappedText().map((B,w,V)=>{let C=B;if(G&&w===V.length-1){let X=Math.max(0,B.length-6);C=G.repeat(X)+B.slice(X)}if(d!=w)return C.trimEnd();return C.slice(0,W)+Z(C[W]||I)+C.trimEnd().slice(W+1)}).join(`
|
|
507
|
+
`)}function pd0(I){try{let G=s29(I),Z=G.readSync();return G.closeSync(),Z===null}catch(G){return W0(G,"isDirEmpty",{dirPath:I}),!1}}function gD(I,G=u0()){let Z=E4();if(!Z.ignorePatterns||Z.ignorePatterns.length===0)return!1;let d=uW1(I)?I:cf(G,I),W=md0(G,d);return Z.ignorePatterns.some((B)=>{try{return Td0.default(W,B,{dot:!0,matchBase:!0})}catch(w){return W0(w,"shouldIgnorePath",{filePath:I,basePath:G}),!1}})}function tU(){let I=E4();if(!I.hasCompletedProjectOnboarding)h3({...I,hasCompletedProjectOnboarding:!0})}function w49(){let I=Q2();i4({...I,lastReleaseNotesSeen:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION})}function TW1({workspaceDir:I}){let Z=!E4().hasCompletedProjectOnboarding,W=Q2().lastReleaseNotesSeen,B=e2.useMemo(()=>Q20({ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION,W),[W]),w=B.length>0;if(e2.useEffect(()=>{if(w&&!Z)w49()},[w,Z]),!Z&&!w)return null;let V=d49(W49(I,"CLAUDE.md")),C=pd0(I),X=!V&&!C,Y=eU.isEnabled&&!Q2().shiftEnterKeyBindingInstalled,A=e1();return e2.createElement(p,{flexDirection:"column",gap:1,padding:1,paddingBottom:0},Z&&e2.createElement(e2.Fragment,null,e2.createElement(O,{color:A.secondaryText},"Tips for getting started:"),e2.createElement(II,null,(()=>{let D=[];if(C)D.push(e2.createElement(II.Item,{key:"workspace"},e2.createElement(O,{color:A.secondaryText},"Ask Claude to create a new app or clone a repository.")));if(X)D.push(e2.createElement(II.Item,{key:"claudemd"},e2.createElement(O,{color:A.secondaryText},"Run ",e2.createElement(O,{color:A.text},"/init")," to create a CLAUDE.md file with instructions for Claude.")));if(Y)D.push(e2.createElement(II.Item,{key:"terminal"},e2.createElement(O,{color:A.secondaryText},"Run ",e2.createElement(O,{color:A.text},"/terminal-setup"),e2.createElement(O,{bold:!1}," to set up terminal integration"))));return D.push(e2.createElement(II.Item,{key:"questions"},e2.createElement(O,{color:A.secondaryText},"Ask Claude questions about your codebase."))),D.push(e2.createElement(II.Item,{key:"changes"},e2.createElement(O,{color:A.secondaryText},"Ask Claude to implement changes to your codebase."))),D})())),!Z&&w&&e2.createElement(p,{borderColor:e1().secondaryBorder,flexDirection:"column",marginRight:1},e2.createElement(p,{flexDirection:"column",gap:1},e2.createElement(O,{color:e1().secondaryText},"What's new:"),e2.createElement(p,{flexDirection:"column",marginLeft:1},B.map((D,J)=>e2.createElement(O,{key:J,color:e1().secondaryText},"• ",D))))),I===B49()&&e2.createElement(O,{color:e1().warning},"Note: You have launched ",e2.createElement(O,{bold:!0},"claude")," in your home directory. For the best experience, launch it in a project directory instead."))}var UD=A1(u1(),1);var af=A1(u1(),1);var jP=A1(u1(),1);function id0({isFocused:I,isSelected:G,children:Z}){let{styles:d}=B5("Select");return jP.default.createElement(p,{...d.option({isFocused:I})},I&&jP.default.createElement(O,{...d.focusIndicator()},Y3.pointer),jP.default.createElement(O,{...d.label({isFocused:I,isSelected:G})},Z),G&&jP.default.createElement(O,{...d.selectedIndicator()},Y3.tick))}var xZ=A1(u1(),1);import{isDeepStrictEqual as V49}from"node:util";class Xn extends Map{first;constructor(I){let G=[],Z,d,W=0;for(let B of I){let w={...B,previous:d,next:void 0,index:W};if(d)d.next=w;Z||=w,G.push([B.value,w]),W++,d=w}super(G);this.first=Z}}var C49=(I,G)=>{switch(G.type){case"focus-next-option":{if(!I.focusedValue)return I;let Z=I.optionMap.get(I.focusedValue);if(!Z)return I;let d=Z.next;if(!d)return I;if(!(d.index>=I.visibleToIndex))return{...I,focusedValue:d.value};let B=Math.min(I.optionMap.size,I.visibleToIndex+1),w=B-I.visibleOptionCount;return{...I,focusedValue:d.value,visibleFromIndex:w,visibleToIndex:B}}case"focus-previous-option":{if(!I.focusedValue)return I;let Z=I.optionMap.get(I.focusedValue);if(!Z)return I;let d=Z.previous;if(!d)return I;if(!(d.index<=I.visibleFromIndex))return{...I,focusedValue:d.value};let B=Math.max(0,I.visibleFromIndex-1),w=B+I.visibleOptionCount;return{...I,focusedValue:d.value,visibleFromIndex:B,visibleToIndex:w}}case"select-focused-option":return{...I,previousValue:I.value,value:I.focusedValue};case"reset":return G.state;case"set-focus":return{...I,focusedValue:G.value}}},nd0=({visibleOptionCount:I,defaultValue:G,options:Z})=>{let d=typeof I==="number"?Math.min(I,Z.length):Z.length,W=new Xn(Z);return{optionMap:W,visibleOptionCount:d,focusedValue:W.first?.value,visibleFromIndex:0,visibleToIndex:d,previousValue:G,value:G}},ad0=({visibleOptionCount:I=5,options:G,defaultValue:Z,onChange:d,onFocus:W,focusValue:B})=>{let[w,V]=xZ.useReducer(C49,{visibleOptionCount:I,defaultValue:Z,options:G},nd0),[C,X]=xZ.useState(G);if(G!==C&&!V49(G,C))V({type:"reset",state:nd0({visibleOptionCount:I,defaultValue:Z,options:G})}),X(G);let Y=xZ.useCallback(()=>{V({type:"focus-next-option"})},[]),A=xZ.useCallback(()=>{V({type:"focus-previous-option"})},[]),D=xZ.useCallback(()=>{V({type:"select-focused-option"})},[]),J=xZ.useMemo(()=>{return G.map((K,z)=>({...K,index:z})).slice(w.visibleFromIndex,w.visibleToIndex)},[G,w.visibleFromIndex,w.visibleToIndex]);return xZ.useEffect(()=>{if(w.value&&w.previousValue!==w.value)d?.(w.value)},[w.previousValue,w.value,G,d]),xZ.useEffect(()=>{if(w.focusedValue)W?.(w.focusedValue)},[w.focusedValue,W]),xZ.useEffect(()=>{if(B)V({type:"set-focus",value:B})},[B]),{focusedValue:w.focusedValue,visibleFromIndex:w.visibleFromIndex,visibleToIndex:w.visibleToIndex,value:w.value,visibleOptions:J,focusNextOption:Y,focusPreviousOption:A,selectFocusedOption:D}};var rd0=({isDisabled:I=!1,state:G})=>{_4((Z,d)=>{if(d.downArrow)G.focusNextOption();if(d.upArrow)G.focusPreviousOption();if(d.return)G.selectFocusedOption()},{isActive:!I})};function tI({isDisabled:I=!1,visibleOptionCount:G=5,highlightText:Z,options:d,defaultValue:W,onChange:B,onFocus:w,focusValue:V}){let C=ad0({visibleOptionCount:G,options:d,defaultValue:W,onChange:B,onFocus:w,focusValue:V});rd0({isDisabled:I,state:C});let{styles:X}=B5("Select");return af.default.createElement(p,{...X.container()},C.visibleOptions.map((Y)=>{let A=Y.label,D=A;if(Z&&A.includes(Z)){let J=A.indexOf(Z);D=af.default.createElement(af.default.Fragment,null,A.slice(0,J),af.default.createElement(O,{...X.highlightedText()},Z),A.slice(J+Z.length))}return af.default.createElement(id0,{key:Y.value,isFocused:!I&&C.focusedValue===Y.value,isSelected:C.value===Y.value},D)}))}var lW1=A1(u1(),1);var az=A1(dW0(),1);var WW0=process.env.TERM_PROGRAM==="Apple_Terminal",L9={};L9.cursorTo=(I,G)=>{if(typeof I!=="number")throw new TypeError("The `x` argument is required");if(typeof G!=="number")return"\x1B["+(I+1)+"G";return"\x1B["+(G+1)+";"+(I+1)+"H"};L9.cursorMove=(I,G)=>{if(typeof I!=="number")throw new TypeError("The `x` argument is required");let Z="";if(I<0)Z+="\x1B["+-I+"D";else if(I>0)Z+="\x1B["+I+"C";if(G<0)Z+="\x1B["+-G+"A";else if(G>0)Z+="\x1B["+G+"B";return Z};L9.cursorUp=(I=1)=>"\x1B["+I+"A";L9.cursorDown=(I=1)=>"\x1B["+I+"B";L9.cursorForward=(I=1)=>"\x1B["+I+"C";L9.cursorBackward=(I=1)=>"\x1B["+I+"D";L9.cursorLeft="\x1B[G";L9.cursorSavePosition=WW0?"\x1B7":"\x1B[s";L9.cursorRestorePosition=WW0?"\x1B8":"\x1B[u";L9.cursorGetPosition="\x1B[6n";L9.cursorNextLine="\x1B[E";L9.cursorPrevLine="\x1B[F";L9.cursorHide="\x1B[?25l";L9.cursorShow="\x1B[?25h";L9.eraseLines=(I)=>{let G="";for(let Z=0;Z<I;Z++)G+=L9.eraseLine+(Z<I-1?L9.cursorUp():"");if(I)G+=L9.cursorLeft;return G};L9.eraseEndLine="\x1B[K";L9.eraseStartLine="\x1B[1K";L9.eraseLine="\x1B[2K";L9.eraseDown="\x1B[J";L9.eraseUp="\x1B[1J";L9.eraseScreen="\x1B[2J";L9.scrollUp="\x1B[S";L9.scrollDown="\x1B[T";L9.clearScreen="\x1Bc";L9.clearTerminal=process.platform==="win32"?`${L9.eraseScreen}\x1B[0f`:`${L9.eraseScreen}\x1B[3J\x1B[H`;L9.beep="\x07";L9.link=(I,G)=>{return["\x1B]","8",";",";",G,"\x07",I,"\x1B]","8",";",";","\x07"].join("")};L9.image=(I,G={})=>{let Z="\x1B]1337;File=inline=1";if(G.width)Z+=`;width=${G.width}`;if(G.height)Z+=`;height=${G.height}`;if(G.preserveAspectRatio===!1)Z+=";preserveAspectRatio=0";return Z+":"+I.toString("base64")+"\x07"};L9.iTerm={setCwd:(I=process.cwd())=>`\x1B]50;CurrentDir=${I}\x07`,annotation:(I,G={})=>{let Z="\x1B]1337;",d=typeof G.x!=="undefined",W=typeof G.y!=="undefined";if((d||W)&&!(d&&W&&typeof G.length!=="undefined"))throw new Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");if(I=I.replace(/\|/g,""),Z+=G.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",G.length>0)Z+=(d?[I,G.length,G.x,G.y]:[G.length,I]).join("|");else Z+=I;return Z+"\x07"}};var BW0=L9;var Yn=A1(CW0(),1);function nz(I,G,{target:Z="stdout",...d}={}){if(!Yn.default[Z]){if(d.fallback===!1)return I;return typeof d.fallback==="function"?d.fallback(I,G):`${I} (${G})`}return BW0.link(I,G)}nz.isSupported=Yn.default.stdout;nz.stderr=(I,G,Z={})=>nz(I,G,{target:"stderr",...Z});nz.stderr.isSupported=Yn.default.stderr;var XW0=({children:I,url:G,fallback:Z=!0})=>lW1.default.createElement(ap,{transform:(d)=>nz(d,G,{fallback:Z})},lW1.default.createElement(O,null,I));XW0.propTypes={children:az.default.oneOfType([az.default.arrayOf(az.default.node),az.default.node]).isRequired,url:az.default.string.isRequired,fallback:az.default.bool};var sf=XW0;var An=A1(u1(),1);var _49=["iTerm.app","WezTerm","Hyper","VSCode"];function iC({url:I,children:G}){let Z=_49.includes(P2.terminal??""),d=G||I;if(Z||d!==I)return An.default.createElement(sf,{url:I},An.default.createElement(O,null,d));else return An.default.createElement(O,{underline:!0},d)}function YW0({onDone:I}){return _4((G,Z)=>{if(Z.ctrl&&(G==="c"||G==="d")||Z.escape)I()}),UD.default.createElement(p,{flexDirection:"column",borderStyle:"round",padding:1,borderColor:e1().secondaryBorder},UD.default.createElement(p,{marginBottom:1,flexDirection:"column"},UD.default.createElement(O,{bold:!0},"You've spent $5 on the Anthropic API this session."),UD.default.createElement(O,null,"Learn more about how to monitor your spending:"),UD.default.createElement(iC,{url:"https://docs.anthropic.com/s/claude-code-cost"})),UD.default.createElement(p,null,UD.default.createElement(tI,{options:[{value:"ok",label:"Got it, thanks!"}],onChange:I})))}var r4=A1(u1(),1),z3=A1(u1(),1);var Z9=A1(u1(),1);function _n(){return!(E6||M6)}function Lw(){let I=Q2();if(!1==="true")throw new Error("ANTHROPIC_API_KEY env var is required");return Hn()}function jW1(I){return I.slice(-20)}function AW0(){if(process.platform!=="darwin")return!1;let G=Q2().primaryApiKey;if(!G)return!1;try{let Z=!1;try{Z=!!ng(`security find-generic-password -a $USER -w -s "${b2}"`)}catch(B){Z=!1}if(!Z)ng(`security add-generic-password -a $USER -s "${b2}" -w ${G}`);let{primaryApiKey:d,...W}=Q2();return i4(W),Hn.cache.clear?.(),!0}catch(Z){return W0(Z),!1}}var Hn=x2(()=>{if(process.platform==="darwin")try{let G=ng(`security find-generic-password -a $USER -w -s "${b2}"`);if(G)return G}catch(G){W0(G)}return Q2().primaryApiKey??null});function _W0(I){let G=Q2();if(process.platform==="darwin")try{ng(`security add-generic-password -a $USER -s "${b2}" -w ${I}`)}catch(d){W0(d),G.primaryApiKey=I}else G.primaryApiKey=I;if(!G.customApiKeyResponses)G.customApiKeyResponses={approved:[],rejected:[]};if(!G.customApiKeyResponses.approved)G.customApiKeyResponses.approved=[];let Z=jW1(I);if(!G.customApiKeyResponses.approved.includes(Z))G.customApiKeyResponses.approved.push(Z);i4(G),Hn.cache.clear?.()}function HW0(){if(process.platform==="darwin")try{ng(`security delete-generic-password -a $USER -s "${b2}"`)}catch(G){W0(G)}let I=Q2();I.primaryApiKey=void 0,i4(I),Hn.cache.clear?.()}var kW1=46;function DW0({mcpClients:I,isDefaultModel:G=!1}){let Z=Math.max(kW1,u0().length+12),d=e1(),W=process.env.ANTHROPIC_MODEL,B=Lw(),w=Boolean(!1),V=!G&&Boolean(W),C=!1,X=I.filter((Y)=>Y.type==="failed").length;return Z9.createElement(p,{flexDirection:"column"},Z9.createElement(p,{borderColor:d.claude,borderStyle:"round",flexDirection:"column",gap:1,paddingLeft:1,width:Z},Z9.createElement(O,null,Z9.createElement(O,{color:d.claude},"✻")," Welcome to"," ",Z9.createElement(O,{bold:!0},b2)," ",Z9.createElement(O,null,"research preview!")),Z9.createElement(Z9.Fragment,null,Z9.createElement(p,{paddingLeft:2,flexDirection:"column",gap:1},Z9.createElement(O,{color:d.secondaryText,italic:!0},"/help for help",!1),Z9.createElement(O,{color:d.secondaryText},"cwd: ",u0()),process.argv.includes("--mcp-debug")?Z9.createElement(O,{color:d.warning},"MCP debug mode enabled"):X>0&&Z9.createElement(O,{color:d.error},X," MCP server",X>1?"s":""," ","failed to connect. Run with --mcp-debug to see error logs.")),!1),I.length?Z9.createElement(p,{borderColor:d.secondaryBorder,borderStyle:"single",borderBottom:!1,borderLeft:!1,borderRight:!1,borderTop:!0,flexDirection:"column",marginLeft:2,marginRight:1,paddingTop:1},Z9.createElement(p,{marginBottom:1},Z9.createElement(O,{color:d.secondaryText},"MCP Servers:")),I.map((Y,A)=>Z9.createElement(p,{key:A,width:Z-6},Z9.createElement(O,{color:d.secondaryText},"• ",Y.name),Z9.createElement(p,{flexGrow:1}),Z9.createElement(O,{bold:!0,color:Y.type==="connected"?d.success:d.error},Y.type==="connected"?"connected":"failed")))):null))}var V8=A1(u1(),1);var V_=A1(u1(),1);import{randomUUID as OT}from"crypto";var I2=A1(u1(),1),$B=A1(u1(),1);var _S2=A1(u1(),1);var VS2=A1(u1(),1);var xW1=A1(u1(),1),FW0=2000;function rz(I,G,Z){let d=xW1.useRef(0),W=xW1.useRef();return()=>{let B=Date.now();if(B-d.current<=FW0&&W.current){if(W.current)clearTimeout(W.current),W.current=void 0;G(),I(!1)}else Z?.(),I(!0),W.current=setTimeout(()=>I(!1),FW0);d.current=B}}class d8{measuredText;selection;offset;constructor(I,G=0,Z=0){this.measuredText=I;this.selection=Z;this.offset=Math.max(0,Math.min(this.measuredText.text.length,G))}static fromText(I,G,Z=0,d=0){return new d8(new JW0(I,G-1),Z,d)}render(I,G,Z){let{line:d,column:W}=this.getPosition();return this.measuredText.getWrappedText().map((B,w,V)=>{let C=B;if(G&&w===V.length-1){let X=Math.max(0,B.length-6);C=G.repeat(X)+B.slice(X)}if(d!=w)return C.trimEnd();return C.slice(0,W)+Z(C[W]||I)+C.trimEnd().slice(W+1)}).join(`
|
|
508
508
|
`)}left(){return new d8(this.measuredText,this.offset-1)}right(){return new d8(this.measuredText,this.offset+1)}up(){let{line:I,column:G}=this.getPosition();if(I==0)return new d8(this.measuredText,0,0);let Z=this.getOffset({line:I-1,column:G});return new d8(this.measuredText,Z,0)}down(){let{line:I,column:G}=this.getPosition();if(I>=this.measuredText.lineCount-1)return new d8(this.measuredText,this.text.length,0);let Z=this.getOffset({line:I+1,column:G});return new d8(this.measuredText,Z,0)}startOfLine(){let{line:I}=this.getPosition();return new d8(this.measuredText,this.getOffset({line:I,column:0}),0)}firstNonBlankInLine(){let{line:I}=this.getPosition(),Z=(this.measuredText.getWrappedText()[I]||"").match(/^\s*\S/),d=Z?.index?Z.index+Z[0].length-1:0,W=this.getOffset({line:I,column:d});return new d8(this.measuredText,W,0)}endOfLine(){let{line:I}=this.getPosition(),G=this.measuredText.getLineLength(I),Z=this.getOffset({line:I,column:G});return new d8(this.measuredText,Z,0)}nextWord(){let I=this;while(I.isOverWordChar()&&!I.isAtEnd())I=I.right();while(!I.isOverWordChar()&&!I.isAtEnd())I=I.right();return I}endOfWord(){let I=this;if(!I.isOverWordChar())I=I.nextWord();while(I.right().isOverWordChar()&&!I.isAtEnd())I=I.right();return I}prevWord(){let I=this;if(!I.left().isOverWordChar())I=I.left();while(!I.isOverWordChar()&&!I.isAtStart())I=I.left();if(I.isOverWordChar())while(I.left().isOverWordChar()&&!I.isAtStart())I=I.left();return I}modifyText(I,G=""){let Z=this.offset,d=I.offset,W=this.text.slice(0,Z)+G+this.text.slice(d);return d8.fromText(W,this.columns,Z+G.length)}insert(I){return this.modifyText(this,I)}del(){if(this.isAtEnd())return this;return this.modifyText(this.right())}backspace(){if(this.isAtStart())return this;return this.left().modifyText(this)}deleteToLineStart(){return this.startOfLine().modifyText(this)}deleteToLineEnd(){if(this.text[this.offset]===`
|
|
509
509
|
`)return this.modifyText(this.right());return this.modifyText(this.endOfLine())}deleteWordBefore(){if(this.isAtStart())return this;return this.prevWord().modifyText(this)}deleteWordAfter(){if(this.isAtEnd())return this;return this.modifyText(this.nextWord())}isOverWordChar(){let I=this.text[this.offset]??"";return/\w/.test(I)}equals(I){return this.offset===I.offset&&this.measuredText==I.measuredText}isAtStart(){return this.offset==0}isAtEnd(){return this.offset==this.text.length}startOfFirstLine(){return new d8(this.measuredText,0,0)}startOfLastLine(){let I=this.text.lastIndexOf(`
|
|
510
510
|
`);if(I===-1)return this.startOfLine();return new d8(this.measuredText,I+1,0)}get text(){return this.measuredText.text}get columns(){return this.measuredText.columns+1}getPosition(){return this.measuredText.getPositionFromOffset(this.offset)}getOffset(I){return this.measuredText.getOffsetFromPosition(I)}}class Dn{text;startOffset;isPrecededByNewline;endsWithNewline;constructor(I,G,Z,d=!1){this.text=I;this.startOffset=G;this.isPrecededByNewline=Z;this.endsWithNewline=d}equals(I){return this.text===I.text&&this.startOffset===I.startOffset}get length(){return this.text.length+(this.endsWithNewline?1:0)}}class JW0{text;columns;wrappedLines;constructor(I,G){this.text=I;this.columns=G;this.wrappedLines=this.measureWrappedText()}measureWrappedText(){let I=mL(this.text,this.columns,{hard:!0,trim:!1}),G=[],Z=0,d=-1,W=I.split(`
|
|
@@ -533,7 +533,7 @@ Total duration (API): ${bv(RS())}
|
|
|
533
533
|
Total duration (wall): ${bv(O61())}
|
|
534
534
|
Total code changes: ${sx()} ${sx()===1?"line":"lines"} added, ${ox()} ${ox()===1?"line":"lines"} removed`)}function oD2(){sD2.useEffect(()=>{let I=()=>{process.stdout.write(`
|
|
535
535
|
`+wq1()+`
|
|
536
|
-
`);let G=E4();h3({...G,lastCost:Iz(),lastAPIDuration:RS(),lastDuration:O61(),lastLinesAdded:sx(),lastLinesRemoved:ox(),lastSessionId:Sd})};return process.on("exit",I),()=>{process.off("exit",I)}},[])}function xd3(I,G){return Math.round(I*G)/G}var lv=`claude-cli/${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.33"}.VERSION} (external)`;function hd3(I){if(I?.type==="assistant"&&"usage"in I.message&&!(I.message.content[0]?.type==="text"&&tD2.has(I.message.content[0].text))&&I.message.model!=="<synthetic>")return I.message.usage;return}function cd3(I){return I.input_tokens+(I.cache_creation_input_tokens??0)+(I.cache_read_input_tokens??0)+I.output_tokens}function xA(I){let G=I.length-1;while(G>=0){let Z=I[G],d=Z?hd3(Z):void 0;if(d)return cd3(d);G--}return 0}function eD2(I){let G=I.length-1;while(G>=0){let Z=I[G];if(Z?.type==="assistant"&&"usage"in Z.message){let{usage:d}=Z.message;return(d.cache_creation_input_tokens??0)+(d.cache_read_input_tokens??0)}G--}return 0}import{createHash as pd3}from"crypto";import{mkdirSync as id3,readFileSync as nd3,writeFileSync as ad3}from"fs";import{dirname as IF2}from"path";import{existsSync as GF2}from"fs";import*as WF2 from"path";async function Vq1(I,G){return await G()}function rd3(I,G){return I.map((Z)=>{if(typeof Z==="string")return G(Z);return Z.map((d)=>{switch(d.type){case"tool_result":if(typeof d.content==="string")return{...d,content:G(d.content)};if(Array.isArray(d.content))return{...d,content:d.content.map((W)=>{switch(W.type){case"text":return{...W,text:G(W.text)};case"image":return W}})};return d;case"text":return{...d,text:G(d.text)};case"tool_use":return{...d,input:Gx(d.input,G)};case"image":return d}})})}function ZF2(I,G){return{durationMs:"DURATION",costUSD:"COST",uuid:"UUID",message:{...I.message,content:I.message.content.map((Z)=>{switch(Z.type){case"text":return{...Z,text:G(Z.text),citations:Z.citations||[]};case"tool_use":return{...Z,input:Gx(Z.input,G)};default:return Z}}).filter(Boolean)},surface:I.surface,type:"assistant"}}function dF2(I){if(typeof I!=="string")return I;let G=I.replace(/num_files="\d+"/g,'num_files="[NUM]"').replace(/duration_ms="\d+"/g,'duration_ms="[DURATION]"').replace(/cost_usd="\d+"/g,'cost_usd="[COST]"').replace(/\//g,WF2.sep).replaceAll(u0(),"[CWD]");if(G.includes("Files modified by user:"))return"Files modified by user: [FILES]";return G}function sd3(I){if(typeof I!=="string")return I;return I.replaceAll("[NUM]","1").replaceAll("[DURATION]","100").replaceAll("[CWD]",u0())}var wF2=Symbol("Let zodToJsonSchema decide on which parser to use"),BF2={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"},VF2=(I)=>typeof I==="string"?{...BF2,name:I}:{...BF2,...I};var CF2=(I)=>{let G=VF2(I),Z=G.name!==void 0?[...G.basePath,G.definitionPath,G.name]:G.basePath;return{...G,currentPath:Z,propertyPath:void 0,seen:new Map(Object.entries(G.definitions).map(([d,W])=>[W._def,{def:W._def,path:[...G.basePath,G.definitionPath,d],jsonSchema:void 0}]))}};function Cq1(I,G,Z,d){if(!d?.errorMessages)return;if(Z)I.errorMessage={...I.errorMessage,[G]:Z}}function O9(I,G,Z,d,W){I[G]=Z,Cq1(I,G,d,W)}var x9;(function(I){I.assertEqual=(W)=>W;function G(W){}I.assertIs=G;function Z(W){throw new Error}I.assertNever=Z,I.arrayToEnum=(W)=>{let B={};for(let w of W)B[w]=w;return B},I.getValidEnumValues=(W)=>{let B=I.objectKeys(W).filter((V)=>typeof W[W[V]]!=="number"),w={};for(let V of B)w[V]=W[V];return I.objectValues(w)},I.objectValues=(W)=>{return I.objectKeys(W).map(function(B){return W[B]})},I.objectKeys=typeof Object.keys==="function"?(W)=>Object.keys(W):(W)=>{let B=[];for(let w in W)if(Object.prototype.hasOwnProperty.call(W,w))B.push(w);return B},I.find=(W,B)=>{for(let w of W)if(B(w))return w;return},I.isInteger=typeof Number.isInteger==="function"?(W)=>Number.isInteger(W):(W)=>typeof W==="number"&&isFinite(W)&&Math.floor(W)===W;function d(W,B=" | "){return W.map((w)=>typeof w==="string"?`'${w}'`:w).join(B)}I.joinValues=d,I.jsonStringifyReplacer=(W,B)=>{if(typeof B==="bigint")return B.toString();return B}})(x9||(x9={}));var Yq1;(function(I){I.mergeShapes=(G,Z)=>{return{...G,...Z}}})(Yq1||(Yq1={}));var R2=x9.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),cA=(I)=>{switch(typeof I){case"undefined":return R2.undefined;case"string":return R2.string;case"number":return isNaN(I)?R2.nan:R2.number;case"boolean":return R2.boolean;case"function":return R2.function;case"bigint":return R2.bigint;case"symbol":return R2.symbol;case"object":if(Array.isArray(I))return R2.array;if(I===null)return R2.null;if(I.then&&typeof I.then==="function"&&I.catch&&typeof I.catch==="function")return R2.promise;if(typeof Map!=="undefined"&&I instanceof Map)return R2.map;if(typeof Set!=="undefined"&&I instanceof Set)return R2.set;if(typeof Date!=="undefined"&&I instanceof Date)return R2.date;return R2.object;default:return R2.unknown}},i0=x9.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),od3=(I)=>{return JSON.stringify(I,null,2).replace(/"([^"]+)":/g,"$1:")};class sd extends Error{get errors(){return this.issues}constructor(I){super();this.issues=[],this.addIssue=(Z)=>{this.issues=[...this.issues,Z]},this.addIssues=(Z=[])=>{this.issues=[...this.issues,...Z]};let G=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,G);else this.__proto__=G;this.name="ZodError",this.issues=I}format(I){let G=I||function(W){return W.message},Z={_errors:[]},d=(W)=>{for(let B of W.issues)if(B.code==="invalid_union")B.unionErrors.map(d);else if(B.code==="invalid_return_type")d(B.returnTypeError);else if(B.code==="invalid_arguments")d(B.argumentsError);else if(B.path.length===0)Z._errors.push(G(B));else{let w=Z,V=0;while(V<B.path.length){let C=B.path[V];if(V!==B.path.length-1)w[C]=w[C]||{_errors:[]};else w[C]=w[C]||{_errors:[]},w[C]._errors.push(G(B));w=w[C],V++}}};return d(this),Z}static assert(I){if(!(I instanceof sd))throw new Error(`Not a ZodError: ${I}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,x9.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(I=(G)=>G.message){let G={},Z=[];for(let d of this.issues)if(d.path.length>0)G[d.path[0]]=G[d.path[0]]||[],G[d.path[0]].push(I(d));else Z.push(I(d));return{formErrors:Z,fieldErrors:G}}get formErrors(){return this.flatten()}}sd.create=(I)=>{return new sd(I)};var hv=(I,G)=>{let Z;switch(I.code){case i0.invalid_type:if(I.received===R2.undefined)Z="Required";else Z=`Expected ${I.expected}, received ${I.received}`;break;case i0.invalid_literal:Z=`Invalid literal value, expected ${JSON.stringify(I.expected,x9.jsonStringifyReplacer)}`;break;case i0.unrecognized_keys:Z=`Unrecognized key(s) in object: ${x9.joinValues(I.keys,", ")}`;break;case i0.invalid_union:Z="Invalid input";break;case i0.invalid_union_discriminator:Z=`Invalid discriminator value. Expected ${x9.joinValues(I.options)}`;break;case i0.invalid_enum_value:Z=`Invalid enum value. Expected ${x9.joinValues(I.options)}, received '${I.received}'`;break;case i0.invalid_arguments:Z="Invalid function arguments";break;case i0.invalid_return_type:Z="Invalid function return type";break;case i0.invalid_date:Z="Invalid date";break;case i0.invalid_string:if(typeof I.validation==="object")if("includes"in I.validation){if(Z=`Invalid input: must include "${I.validation.includes}"`,typeof I.validation.position==="number")Z=`${Z} at one or more positions greater than or equal to ${I.validation.position}`}else if("startsWith"in I.validation)Z=`Invalid input: must start with "${I.validation.startsWith}"`;else if("endsWith"in I.validation)Z=`Invalid input: must end with "${I.validation.endsWith}"`;else x9.assertNever(I.validation);else if(I.validation!=="regex")Z=`Invalid ${I.validation}`;else Z="Invalid";break;case i0.too_small:if(I.type==="array")Z=`Array must contain ${I.exact?"exactly":I.inclusive?"at least":"more than"} ${I.minimum} element(s)`;else if(I.type==="string")Z=`String must contain ${I.exact?"exactly":I.inclusive?"at least":"over"} ${I.minimum} character(s)`;else if(I.type==="number")Z=`Number must be ${I.exact?"exactly equal to ":I.inclusive?"greater than or equal to ":"greater than "}${I.minimum}`;else if(I.type==="date")Z=`Date must be ${I.exact?"exactly equal to ":I.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(I.minimum))}`;else Z="Invalid input";break;case i0.too_big:if(I.type==="array")Z=`Array must contain ${I.exact?"exactly":I.inclusive?"at most":"less than"} ${I.maximum} element(s)`;else if(I.type==="string")Z=`String must contain ${I.exact?"exactly":I.inclusive?"at most":"under"} ${I.maximum} character(s)`;else if(I.type==="number")Z=`Number must be ${I.exact?"exactly":I.inclusive?"less than or equal to":"less than"} ${I.maximum}`;else if(I.type==="bigint")Z=`BigInt must be ${I.exact?"exactly":I.inclusive?"less than or equal to":"less than"} ${I.maximum}`;else if(I.type==="date")Z=`Date must be ${I.exact?"exactly":I.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(I.maximum))}`;else Z="Invalid input";break;case i0.custom:Z="Invalid input";break;case i0.invalid_intersection_types:Z="Intersection results could not be merged";break;case i0.not_multiple_of:Z=`Number must be a multiple of ${I.multipleOf}`;break;case i0.not_finite:Z="Number must be finite";break;default:Z=G.defaultError,x9.assertNever(I)}return{message:Z}},AF2=hv;function ed3(I){AF2=I}function dt(){return AF2}var Wt=(I)=>{let{data:G,path:Z,errorMaps:d,issueData:W}=I,B=[...Z,...W.path||[]],w={...W,path:B};if(W.message!==void 0)return{...W,path:B,message:W.message};let V="",C=d.filter((X)=>!!X).slice().reverse();for(let X of C)V=X(w,{data:G,defaultError:V}).message;return{...W,path:B,message:V}},td3=[];function J2(I,G){let Z=dt(),d=Wt({issueData:G,data:I.data,path:I.path,errorMaps:[I.common.contextualErrorMap,I.schemaErrorMap,Z,Z===hv?void 0:hv].filter((W)=>!!W)});I.common.issues.push(d)}class AG{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(I,G){let Z=[];for(let d of G){if(d.status==="aborted")return L4;if(d.status==="dirty")I.dirty();Z.push(d.value)}return{status:I.value,value:Z}}static async mergeObjectAsync(I,G){let Z=[];for(let d of G){let W=await d.key,B=await d.value;Z.push({key:W,value:B})}return AG.mergeObjectSync(I,Z)}static mergeObjectSync(I,G){let Z={};for(let d of G){let{key:W,value:B}=d;if(W.status==="aborted")return L4;if(B.status==="aborted")return L4;if(W.status==="dirty")I.dirty();if(B.status==="dirty")I.dirty();if(W.value!=="__proto__"&&(typeof B.value!=="undefined"||d.alwaysSet))Z[W.value]=B.value}return{status:I.value,value:Z}}}var L4=Object.freeze({status:"aborted"}),kv=(I)=>({status:"dirty",value:I}),eG=(I)=>({status:"valid",value:I}),Aq1=(I)=>I.status==="aborted",_q1=(I)=>I.status==="dirty",tQ=(I)=>I.status==="valid",Nm=(I)=>typeof Promise!=="undefined"&&I instanceof Promise;function Bt(I,G,Z,d){if(Z==="a"&&!d)throw new TypeError("Private accessor was defined without a getter");if(typeof G==="function"?I!==G||!d:!G.has(I))throw new TypeError("Cannot read private member from an object whose class did not declare it");return Z==="m"?d:Z==="a"?d.call(I):d?d.value:G.get(I)}function _F2(I,G,Z,d,W){if(d==="m")throw new TypeError("Private method is not writable");if(d==="a"&&!W)throw new TypeError("Private accessor was defined without a setter");if(typeof G==="function"?I!==G||!W:!G.has(I))throw new TypeError("Cannot write private member to an object whose class did not declare it");return d==="a"?W.call(I,Z):W?W.value=Z:G.set(I,Z),Z}var c2;(function(I){I.errToObj=(G)=>typeof G==="string"?{message:G}:G||{},I.toString=(G)=>typeof G==="string"?G:G===null||G===void 0?void 0:G.message})(c2||(c2={}));var zm,Qm;class WV{constructor(I,G,Z,d){this._cachedPath=[],this.parent=I,this.data=G,this._path=Z,this._key=d}get path(){if(!this._cachedPath.length)if(this._key instanceof Array)this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var XF2=(I,G)=>{if(tQ(G))return{success:!0,data:G.value};else{if(!I.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let Z=new sd(I.common.issues);return this._error=Z,this._error}}}};function d9(I){if(!I)return{};let{errorMap:G,invalid_type_error:Z,required_error:d,description:W}=I;if(G&&(Z||d))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(G)return{errorMap:G,description:W};return{errorMap:(w,V)=>{var C,X;let{message:Y}=I;if(w.code==="invalid_enum_value")return{message:Y!==null&&Y!==void 0?Y:V.defaultError};if(typeof V.data==="undefined")return{message:(C=Y!==null&&Y!==void 0?Y:d)!==null&&C!==void 0?C:V.defaultError};if(w.code!=="invalid_type")return{message:V.defaultError};return{message:(X=Y!==null&&Y!==void 0?Y:Z)!==null&&X!==void 0?X:V.defaultError}},description:W}}class C9{get description(){return this._def.description}_getType(I){return cA(I.data)}_getOrReturnCtx(I,G){return G||{common:I.parent.common,data:I.data,parsedType:cA(I.data),schemaErrorMap:this._def.errorMap,path:I.path,parent:I.parent}}_processInputParams(I){return{status:new AG,ctx:{common:I.parent.common,data:I.data,parsedType:cA(I.data),schemaErrorMap:this._def.errorMap,path:I.path,parent:I.parent}}}_parseSync(I){let G=this._parse(I);if(Nm(G))throw new Error("Synchronous parse encountered promise.");return G}_parseAsync(I){let G=this._parse(I);return Promise.resolve(G)}parse(I,G){let Z=this.safeParse(I,G);if(Z.success)return Z.data;throw Z.error}safeParse(I,G){var Z;let d={common:{issues:[],async:(Z=G===null||G===void 0?void 0:G.async)!==null&&Z!==void 0?Z:!1,contextualErrorMap:G===null||G===void 0?void 0:G.errorMap},path:(G===null||G===void 0?void 0:G.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:cA(I)},W=this._parseSync({data:I,path:d.path,parent:d});return XF2(d,W)}"~validate"(I){var G,Z;let d={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:cA(I)};if(!this["~standard"].async)try{let W=this._parseSync({data:I,path:[],parent:d});return tQ(W)?{value:W.value}:{issues:d.common.issues}}catch(W){if((Z=(G=W===null||W===void 0?void 0:W.message)===null||G===void 0?void 0:G.toLowerCase())===null||Z===void 0?void 0:Z.includes("encountered"))this["~standard"].async=!0;d.common={issues:[],async:!0}}return this._parseAsync({data:I,path:[],parent:d}).then((W)=>tQ(W)?{value:W.value}:{issues:d.common.issues})}async parseAsync(I,G){let Z=await this.safeParseAsync(I,G);if(Z.success)return Z.data;throw Z.error}async safeParseAsync(I,G){let Z={common:{issues:[],contextualErrorMap:G===null||G===void 0?void 0:G.errorMap,async:!0},path:(G===null||G===void 0?void 0:G.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:cA(I)},d=this._parse({data:I,path:Z.path,parent:Z}),W=await(Nm(d)?d:Promise.resolve(d));return XF2(Z,W)}refine(I,G){let Z=(d)=>{if(typeof G==="string"||typeof G==="undefined")return{message:G};else if(typeof G==="function")return G(d);else return G};return this._refinement((d,W)=>{let B=I(d),w=()=>W.addIssue({code:i0.custom,...Z(d)});if(typeof Promise!=="undefined"&&B instanceof Promise)return B.then((V)=>{if(!V)return w(),!1;else return!0});if(!B)return w(),!1;else return!0})}refinement(I,G){return this._refinement((Z,d)=>{if(!I(Z))return d.addIssue(typeof G==="function"?G(Z,d):G),!1;else return!0})}_refinement(I){return new QB({schema:this,typeName:a0.ZodEffects,effect:{type:"refinement",refinement:I}})}superRefine(I){return this._refinement(I)}constructor(I){this.spa=this.safeParseAsync,this._def=I,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:(G)=>this["~validate"](G)}}optional(){return od.create(this,this._def)}nullable(){return pA.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return dV.create(this)}promise(){return dN.create(this,this._def)}or(I){return nv.create([this,I],this._def)}and(I){return av.create(this,I,this._def)}transform(I){return new QB({...d9(this._def),schema:this,typeName:a0.ZodEffects,effect:{type:"transform",transform:I}})}default(I){let G=typeof I==="function"?I:()=>I;return new ev({...d9(this._def),innerType:this,defaultValue:G,typeName:a0.ZodDefault})}brand(){return new Vt({typeName:a0.ZodBranded,type:this,...d9(this._def)})}catch(I){let G=typeof I==="function"?I:()=>I;return new tv({...d9(this._def),innerType:this,catchValue:G,typeName:a0.ZodCatch})}describe(I){return new this.constructor({...this._def,description:I})}pipe(I){return vm.create(this,I)}readonly(){return IE.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var IW3=/^c[^\s-]{8,}$/i,GW3=/^[0-9a-z]+$/,ZW3=/^[0-9A-HJKMNP-TV-Z]{26}$/i,dW3=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,WW3=/^[a-z0-9_-]{21}$/i,BW3=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,wW3=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,VW3=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,CW3="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Xq1,XW3=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,YW3=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,AW3=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,_W3=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,HW3=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,DW3=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,HF2="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",FW3=new RegExp(`^${HF2}$`);function DF2(I){let G="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";if(I.precision)G=`${G}\\.\\d{${I.precision}}`;else if(I.precision==null)G=`${G}(\\.\\d+)?`;return G}function JW3(I){return new RegExp(`^${DF2(I)}$`)}function FF2(I){let G=`${HF2}T${DF2(I)}`,Z=[];if(Z.push(I.local?"Z?":"Z"),I.offset)Z.push("([+-]\\d{2}:?\\d{2})");return G=`${G}(${Z.join("|")})`,new RegExp(`^${G}$`)}function KW3(I,G){if((G==="v4"||!G)&&XW3.test(I))return!0;if((G==="v6"||!G)&&AW3.test(I))return!0;return!1}function zW3(I,G){if(!BW3.test(I))return!1;try{let[Z]=I.split("."),d=Z.replace(/-/g,"+").replace(/_/g,"/").padEnd(Z.length+(4-Z.length%4)%4,"="),W=JSON.parse(atob(d));if(typeof W!=="object"||W===null)return!1;if(!W.typ||!W.alg)return!1;if(G&&W.alg!==G)return!1;return!0}catch(Z){return!1}}function QW3(I,G){if((G==="v4"||!G)&&YW3.test(I))return!0;if((G==="v6"||!G)&&_W3.test(I))return!0;return!1}class ZV extends C9{_parse(I){if(this._def.coerce)I.data=String(I.data);if(this._getType(I)!==R2.string){let W=this._getOrReturnCtx(I);return J2(W,{code:i0.invalid_type,expected:R2.string,received:W.parsedType}),L4}let Z=new AG,d=void 0;for(let W of this._def.checks)if(W.kind==="min"){if(I.data.length<W.value)d=this._getOrReturnCtx(I,d),J2(d,{code:i0.too_small,minimum:W.value,type:"string",inclusive:!0,exact:!1,message:W.message}),Z.dirty()}else if(W.kind==="max"){if(I.data.length>W.value)d=this._getOrReturnCtx(I,d),J2(d,{code:i0.too_big,maximum:W.value,type:"string",inclusive:!0,exact:!1,message:W.message}),Z.dirty()}else if(W.kind==="length"){let B=I.data.length>W.value,w=I.data.length<W.value;if(B||w){if(d=this._getOrReturnCtx(I,d),B)J2(d,{code:i0.too_big,maximum:W.value,type:"string",inclusive:!0,exact:!0,message:W.message});else if(w)J2(d,{code:i0.too_small,minimum:W.value,type:"string",inclusive:!0,exact:!0,message:W.message});Z.dirty()}}else if(W.kind==="email"){if(!VW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"email",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="emoji"){if(!Xq1)Xq1=new RegExp(CW3,"u");if(!Xq1.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"emoji",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="uuid"){if(!dW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"uuid",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="nanoid"){if(!WW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"nanoid",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="cuid"){if(!IW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"cuid",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="cuid2"){if(!GW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"cuid2",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="ulid"){if(!ZW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"ulid",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="url")try{new URL(I.data)}catch(B){d=this._getOrReturnCtx(I,d),J2(d,{validation:"url",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="regex"){if(W.regex.lastIndex=0,!W.regex.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"regex",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="trim")I.data=I.data.trim();else if(W.kind==="includes"){if(!I.data.includes(W.value,W.position))d=this._getOrReturnCtx(I,d),J2(d,{code:i0.invalid_string,validation:{includes:W.value,position:W.position},message:W.message}),Z.dirty()}else if(W.kind==="toLowerCase")I.data=I.data.toLowerCase();else if(W.kind==="toUpperCase")I.data=I.data.toUpperCase();else if(W.kind==="startsWith"){if(!I.data.startsWith(W.value))d=this._getOrReturnCtx(I,d),J2(d,{code:i0.invalid_string,validation:{startsWith:W.value},message:W.message}),Z.dirty()}else if(W.kind==="endsWith"){if(!I.data.endsWith(W.value))d=this._getOrReturnCtx(I,d),J2(d,{code:i0.invalid_string,validation:{endsWith:W.value},message:W.message}),Z.dirty()}else if(W.kind==="datetime"){if(!FF2(W).test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{code:i0.invalid_string,validation:"datetime",message:W.message}),Z.dirty()}else if(W.kind==="date"){if(!FW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{code:i0.invalid_string,validation:"date",message:W.message}),Z.dirty()}else if(W.kind==="time"){if(!JW3(W).test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{code:i0.invalid_string,validation:"time",message:W.message}),Z.dirty()}else if(W.kind==="duration"){if(!wW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"duration",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="ip"){if(!KW3(I.data,W.version))d=this._getOrReturnCtx(I,d),J2(d,{validation:"ip",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="jwt"){if(!zW3(I.data,W.alg))d=this._getOrReturnCtx(I,d),J2(d,{validation:"jwt",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="cidr"){if(!QW3(I.data,W.version))d=this._getOrReturnCtx(I,d),J2(d,{validation:"cidr",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="base64"){if(!HW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"base64",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="base64url"){if(!DW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"base64url",code:i0.invalid_string,message:W.message}),Z.dirty()}else x9.assertNever(W);return{status:Z.value,value:I.data}}_regex(I,G,Z){return this.refinement((d)=>I.test(d),{validation:G,code:i0.invalid_string,...c2.errToObj(Z)})}_addCheck(I){return new ZV({...this._def,checks:[...this._def.checks,I]})}email(I){return this._addCheck({kind:"email",...c2.errToObj(I)})}url(I){return this._addCheck({kind:"url",...c2.errToObj(I)})}emoji(I){return this._addCheck({kind:"emoji",...c2.errToObj(I)})}uuid(I){return this._addCheck({kind:"uuid",...c2.errToObj(I)})}nanoid(I){return this._addCheck({kind:"nanoid",...c2.errToObj(I)})}cuid(I){return this._addCheck({kind:"cuid",...c2.errToObj(I)})}cuid2(I){return this._addCheck({kind:"cuid2",...c2.errToObj(I)})}ulid(I){return this._addCheck({kind:"ulid",...c2.errToObj(I)})}base64(I){return this._addCheck({kind:"base64",...c2.errToObj(I)})}base64url(I){return this._addCheck({kind:"base64url",...c2.errToObj(I)})}jwt(I){return this._addCheck({kind:"jwt",...c2.errToObj(I)})}ip(I){return this._addCheck({kind:"ip",...c2.errToObj(I)})}cidr(I){return this._addCheck({kind:"cidr",...c2.errToObj(I)})}datetime(I){var G,Z;if(typeof I==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:I});return this._addCheck({kind:"datetime",precision:typeof(I===null||I===void 0?void 0:I.precision)==="undefined"?null:I===null||I===void 0?void 0:I.precision,offset:(G=I===null||I===void 0?void 0:I.offset)!==null&&G!==void 0?G:!1,local:(Z=I===null||I===void 0?void 0:I.local)!==null&&Z!==void 0?Z:!1,...c2.errToObj(I===null||I===void 0?void 0:I.message)})}date(I){return this._addCheck({kind:"date",message:I})}time(I){if(typeof I==="string")return this._addCheck({kind:"time",precision:null,message:I});return this._addCheck({kind:"time",precision:typeof(I===null||I===void 0?void 0:I.precision)==="undefined"?null:I===null||I===void 0?void 0:I.precision,...c2.errToObj(I===null||I===void 0?void 0:I.message)})}duration(I){return this._addCheck({kind:"duration",...c2.errToObj(I)})}regex(I,G){return this._addCheck({kind:"regex",regex:I,...c2.errToObj(G)})}includes(I,G){return this._addCheck({kind:"includes",value:I,position:G===null||G===void 0?void 0:G.position,...c2.errToObj(G===null||G===void 0?void 0:G.message)})}startsWith(I,G){return this._addCheck({kind:"startsWith",value:I,...c2.errToObj(G)})}endsWith(I,G){return this._addCheck({kind:"endsWith",value:I,...c2.errToObj(G)})}min(I,G){return this._addCheck({kind:"min",value:I,...c2.errToObj(G)})}max(I,G){return this._addCheck({kind:"max",value:I,...c2.errToObj(G)})}length(I,G){return this._addCheck({kind:"length",value:I,...c2.errToObj(G)})}nonempty(I){return this.min(1,c2.errToObj(I))}trim(){return new ZV({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new ZV({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new ZV({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((I)=>I.kind==="datetime")}get isDate(){return!!this._def.checks.find((I)=>I.kind==="date")}get isTime(){return!!this._def.checks.find((I)=>I.kind==="time")}get isDuration(){return!!this._def.checks.find((I)=>I.kind==="duration")}get isEmail(){return!!this._def.checks.find((I)=>I.kind==="email")}get isURL(){return!!this._def.checks.find((I)=>I.kind==="url")}get isEmoji(){return!!this._def.checks.find((I)=>I.kind==="emoji")}get isUUID(){return!!this._def.checks.find((I)=>I.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((I)=>I.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((I)=>I.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((I)=>I.kind==="cuid2")}get isULID(){return!!this._def.checks.find((I)=>I.kind==="ulid")}get isIP(){return!!this._def.checks.find((I)=>I.kind==="ip")}get isCIDR(){return!!this._def.checks.find((I)=>I.kind==="cidr")}get isBase64(){return!!this._def.checks.find((I)=>I.kind==="base64")}get isBase64url(){return!!this._def.checks.find((I)=>I.kind==="base64url")}get minLength(){let I=null;for(let G of this._def.checks)if(G.kind==="min"){if(I===null||G.value>I)I=G.value}return I}get maxLength(){let I=null;for(let G of this._def.checks)if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return I}}ZV.create=(I)=>{var G;return new ZV({checks:[],typeName:a0.ZodString,coerce:(G=I===null||I===void 0?void 0:I.coerce)!==null&&G!==void 0?G:!1,...d9(I)})};function NW3(I,G){let Z=(I.toString().split(".")[1]||"").length,d=(G.toString().split(".")[1]||"").length,W=Z>d?Z:d,B=parseInt(I.toFixed(W).replace(".","")),w=parseInt(G.toFixed(W).replace(".",""));return B%w/Math.pow(10,W)}class tF extends C9{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(I){if(this._def.coerce)I.data=Number(I.data);if(this._getType(I)!==R2.number){let W=this._getOrReturnCtx(I);return J2(W,{code:i0.invalid_type,expected:R2.number,received:W.parsedType}),L4}let Z=void 0,d=new AG;for(let W of this._def.checks)if(W.kind==="int"){if(!x9.isInteger(I.data))Z=this._getOrReturnCtx(I,Z),J2(Z,{code:i0.invalid_type,expected:"integer",received:"float",message:W.message}),d.dirty()}else if(W.kind==="min"){if(W.inclusive?I.data<W.value:I.data<=W.value)Z=this._getOrReturnCtx(I,Z),J2(Z,{code:i0.too_small,minimum:W.value,type:"number",inclusive:W.inclusive,exact:!1,message:W.message}),d.dirty()}else if(W.kind==="max"){if(W.inclusive?I.data>W.value:I.data>=W.value)Z=this._getOrReturnCtx(I,Z),J2(Z,{code:i0.too_big,maximum:W.value,type:"number",inclusive:W.inclusive,exact:!1,message:W.message}),d.dirty()}else if(W.kind==="multipleOf"){if(NW3(I.data,W.value)!==0)Z=this._getOrReturnCtx(I,Z),J2(Z,{code:i0.not_multiple_of,multipleOf:W.value,message:W.message}),d.dirty()}else if(W.kind==="finite"){if(!Number.isFinite(I.data))Z=this._getOrReturnCtx(I,Z),J2(Z,{code:i0.not_finite,message:W.message}),d.dirty()}else x9.assertNever(W);return{status:d.value,value:I.data}}gte(I,G){return this.setLimit("min",I,!0,c2.toString(G))}gt(I,G){return this.setLimit("min",I,!1,c2.toString(G))}lte(I,G){return this.setLimit("max",I,!0,c2.toString(G))}lt(I,G){return this.setLimit("max",I,!1,c2.toString(G))}setLimit(I,G,Z,d){return new tF({...this._def,checks:[...this._def.checks,{kind:I,value:G,inclusive:Z,message:c2.toString(d)}]})}_addCheck(I){return new tF({...this._def,checks:[...this._def.checks,I]})}int(I){return this._addCheck({kind:"int",message:c2.toString(I)})}positive(I){return this._addCheck({kind:"min",value:0,inclusive:!1,message:c2.toString(I)})}negative(I){return this._addCheck({kind:"max",value:0,inclusive:!1,message:c2.toString(I)})}nonpositive(I){return this._addCheck({kind:"max",value:0,inclusive:!0,message:c2.toString(I)})}nonnegative(I){return this._addCheck({kind:"min",value:0,inclusive:!0,message:c2.toString(I)})}multipleOf(I,G){return this._addCheck({kind:"multipleOf",value:I,message:c2.toString(G)})}finite(I){return this._addCheck({kind:"finite",message:c2.toString(I)})}safe(I){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:c2.toString(I)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:c2.toString(I)})}get minValue(){let I=null;for(let G of this._def.checks)if(G.kind==="min"){if(I===null||G.value>I)I=G.value}return I}get maxValue(){let I=null;for(let G of this._def.checks)if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return I}get isInt(){return!!this._def.checks.find((I)=>I.kind==="int"||I.kind==="multipleOf"&&x9.isInteger(I.value))}get isFinite(){let I=null,G=null;for(let Z of this._def.checks)if(Z.kind==="finite"||Z.kind==="int"||Z.kind==="multipleOf")return!0;else if(Z.kind==="min"){if(G===null||Z.value>G)G=Z.value}else if(Z.kind==="max"){if(I===null||Z.value<I)I=Z.value}return Number.isFinite(G)&&Number.isFinite(I)}}tF.create=(I)=>{return new tF({checks:[],typeName:a0.ZodNumber,coerce:(I===null||I===void 0?void 0:I.coerce)||!1,...d9(I)})};class IJ extends C9{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(I){if(this._def.coerce)try{I.data=BigInt(I.data)}catch(W){return this._getInvalidInput(I)}if(this._getType(I)!==R2.bigint)return this._getInvalidInput(I);let Z=void 0,d=new AG;for(let W of this._def.checks)if(W.kind==="min"){if(W.inclusive?I.data<W.value:I.data<=W.value)Z=this._getOrReturnCtx(I,Z),J2(Z,{code:i0.too_small,type:"bigint",minimum:W.value,inclusive:W.inclusive,message:W.message}),d.dirty()}else if(W.kind==="max"){if(W.inclusive?I.data>W.value:I.data>=W.value)Z=this._getOrReturnCtx(I,Z),J2(Z,{code:i0.too_big,type:"bigint",maximum:W.value,inclusive:W.inclusive,message:W.message}),d.dirty()}else if(W.kind==="multipleOf"){if(I.data%W.value!==BigInt(0))Z=this._getOrReturnCtx(I,Z),J2(Z,{code:i0.not_multiple_of,multipleOf:W.value,message:W.message}),d.dirty()}else x9.assertNever(W);return{status:d.value,value:I.data}}_getInvalidInput(I){let G=this._getOrReturnCtx(I);return J2(G,{code:i0.invalid_type,expected:R2.bigint,received:G.parsedType}),L4}gte(I,G){return this.setLimit("min",I,!0,c2.toString(G))}gt(I,G){return this.setLimit("min",I,!1,c2.toString(G))}lte(I,G){return this.setLimit("max",I,!0,c2.toString(G))}lt(I,G){return this.setLimit("max",I,!1,c2.toString(G))}setLimit(I,G,Z,d){return new IJ({...this._def,checks:[...this._def.checks,{kind:I,value:G,inclusive:Z,message:c2.toString(d)}]})}_addCheck(I){return new IJ({...this._def,checks:[...this._def.checks,I]})}positive(I){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:c2.toString(I)})}negative(I){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:c2.toString(I)})}nonpositive(I){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:c2.toString(I)})}nonnegative(I){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:c2.toString(I)})}multipleOf(I,G){return this._addCheck({kind:"multipleOf",value:I,message:c2.toString(G)})}get minValue(){let I=null;for(let G of this._def.checks)if(G.kind==="min"){if(I===null||G.value>I)I=G.value}return I}get maxValue(){let I=null;for(let G of this._def.checks)if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return I}}IJ.create=(I)=>{var G;return new IJ({checks:[],typeName:a0.ZodBigInt,coerce:(G=I===null||I===void 0?void 0:I.coerce)!==null&&G!==void 0?G:!1,...d9(I)})};class cv extends C9{_parse(I){if(this._def.coerce)I.data=Boolean(I.data);if(this._getType(I)!==R2.boolean){let Z=this._getOrReturnCtx(I);return J2(Z,{code:i0.invalid_type,expected:R2.boolean,received:Z.parsedType}),L4}return eG(I.data)}}cv.create=(I)=>{return new cv({typeName:a0.ZodBoolean,coerce:(I===null||I===void 0?void 0:I.coerce)||!1,...d9(I)})};class IN extends C9{_parse(I){if(this._def.coerce)I.data=new Date(I.data);if(this._getType(I)!==R2.date){let W=this._getOrReturnCtx(I);return J2(W,{code:i0.invalid_type,expected:R2.date,received:W.parsedType}),L4}if(isNaN(I.data.getTime())){let W=this._getOrReturnCtx(I);return J2(W,{code:i0.invalid_date}),L4}let Z=new AG,d=void 0;for(let W of this._def.checks)if(W.kind==="min"){if(I.data.getTime()<W.value)d=this._getOrReturnCtx(I,d),J2(d,{code:i0.too_small,message:W.message,inclusive:!0,exact:!1,minimum:W.value,type:"date"}),Z.dirty()}else if(W.kind==="max"){if(I.data.getTime()>W.value)d=this._getOrReturnCtx(I,d),J2(d,{code:i0.too_big,message:W.message,inclusive:!0,exact:!1,maximum:W.value,type:"date"}),Z.dirty()}else x9.assertNever(W);return{status:Z.value,value:new Date(I.data.getTime())}}_addCheck(I){return new IN({...this._def,checks:[...this._def.checks,I]})}min(I,G){return this._addCheck({kind:"min",value:I.getTime(),message:c2.toString(G)})}max(I,G){return this._addCheck({kind:"max",value:I.getTime(),message:c2.toString(G)})}get minDate(){let I=null;for(let G of this._def.checks)if(G.kind==="min"){if(I===null||G.value>I)I=G.value}return I!=null?new Date(I):null}get maxDate(){let I=null;for(let G of this._def.checks)if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return I!=null?new Date(I):null}}IN.create=(I)=>{return new IN({checks:[],coerce:(I===null||I===void 0?void 0:I.coerce)||!1,typeName:a0.ZodDate,...d9(I)})};class qm extends C9{_parse(I){if(this._getType(I)!==R2.symbol){let Z=this._getOrReturnCtx(I);return J2(Z,{code:i0.invalid_type,expected:R2.symbol,received:Z.parsedType}),L4}return eG(I.data)}}qm.create=(I)=>{return new qm({typeName:a0.ZodSymbol,...d9(I)})};class pv extends C9{_parse(I){if(this._getType(I)!==R2.undefined){let Z=this._getOrReturnCtx(I);return J2(Z,{code:i0.invalid_type,expected:R2.undefined,received:Z.parsedType}),L4}return eG(I.data)}}pv.create=(I)=>{return new pv({typeName:a0.ZodUndefined,...d9(I)})};class iv extends C9{_parse(I){if(this._getType(I)!==R2.null){let Z=this._getOrReturnCtx(I);return J2(Z,{code:i0.invalid_type,expected:R2.null,received:Z.parsedType}),L4}return eG(I.data)}}iv.create=(I)=>{return new iv({typeName:a0.ZodNull,...d9(I)})};class GN extends C9{constructor(){super(...arguments);this._any=!0}_parse(I){return eG(I.data)}}GN.create=(I)=>{return new GN({typeName:a0.ZodAny,...d9(I)})};class eF extends C9{constructor(){super(...arguments);this._unknown=!0}_parse(I){return eG(I.data)}}eF.create=(I)=>{return new eF({typeName:a0.ZodUnknown,...d9(I)})};class vX extends C9{_parse(I){let G=this._getOrReturnCtx(I);return J2(G,{code:i0.invalid_type,expected:R2.never,received:G.parsedType}),L4}}vX.create=(I)=>{return new vX({typeName:a0.ZodNever,...d9(I)})};class gm extends C9{_parse(I){if(this._getType(I)!==R2.undefined){let Z=this._getOrReturnCtx(I);return J2(Z,{code:i0.invalid_type,expected:R2.void,received:Z.parsedType}),L4}return eG(I.data)}}gm.create=(I)=>{return new gm({typeName:a0.ZodVoid,...d9(I)})};class dV extends C9{_parse(I){let{ctx:G,status:Z}=this._processInputParams(I),d=this._def;if(G.parsedType!==R2.array)return J2(G,{code:i0.invalid_type,expected:R2.array,received:G.parsedType}),L4;if(d.exactLength!==null){let B=G.data.length>d.exactLength.value,w=G.data.length<d.exactLength.value;if(B||w)J2(G,{code:B?i0.too_big:i0.too_small,minimum:w?d.exactLength.value:void 0,maximum:B?d.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:d.exactLength.message}),Z.dirty()}if(d.minLength!==null){if(G.data.length<d.minLength.value)J2(G,{code:i0.too_small,minimum:d.minLength.value,type:"array",inclusive:!0,exact:!1,message:d.minLength.message}),Z.dirty()}if(d.maxLength!==null){if(G.data.length>d.maxLength.value)J2(G,{code:i0.too_big,maximum:d.maxLength.value,type:"array",inclusive:!0,exact:!1,message:d.maxLength.message}),Z.dirty()}if(G.common.async)return Promise.all([...G.data].map((B,w)=>{return d.type._parseAsync(new WV(G,B,G.path,w))})).then((B)=>{return AG.mergeArray(Z,B)});let W=[...G.data].map((B,w)=>{return d.type._parseSync(new WV(G,B,G.path,w))});return AG.mergeArray(Z,W)}get element(){return this._def.type}min(I,G){return new dV({...this._def,minLength:{value:I,message:c2.toString(G)}})}max(I,G){return new dV({...this._def,maxLength:{value:I,message:c2.toString(G)}})}length(I,G){return new dV({...this._def,exactLength:{value:I,message:c2.toString(G)}})}nonempty(I){return this.min(1,I)}}dV.create=(I,G)=>{return new dV({type:I,minLength:null,maxLength:null,exactLength:null,typeName:a0.ZodArray,...d9(G)})};function jv(I){if(I instanceof H6){let G={};for(let Z in I.shape){let d=I.shape[Z];G[Z]=od.create(jv(d))}return new H6({...I._def,shape:()=>G})}else if(I instanceof dV)return new dV({...I._def,type:jv(I.element)});else if(I instanceof od)return od.create(jv(I.unwrap()));else if(I instanceof pA)return pA.create(jv(I.unwrap()));else if(I instanceof EX)return EX.create(I.items.map((G)=>jv(G)));else return I}class H6 extends C9{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let I=this._def.shape(),G=x9.objectKeys(I);return this._cached={shape:I,keys:G}}_parse(I){if(this._getType(I)!==R2.object){let C=this._getOrReturnCtx(I);return J2(C,{code:i0.invalid_type,expected:R2.object,received:C.parsedType}),L4}let{status:Z,ctx:d}=this._processInputParams(I),{shape:W,keys:B}=this._getCached(),w=[];if(!(this._def.catchall instanceof vX&&this._def.unknownKeys==="strip")){for(let C in d.data)if(!B.includes(C))w.push(C)}let V=[];for(let C of B){let X=W[C],Y=d.data[C];V.push({key:{status:"valid",value:C},value:X._parse(new WV(d,Y,d.path,C)),alwaysSet:C in d.data})}if(this._def.catchall instanceof vX){let C=this._def.unknownKeys;if(C==="passthrough")for(let X of w)V.push({key:{status:"valid",value:X},value:{status:"valid",value:d.data[X]}});else if(C==="strict"){if(w.length>0)J2(d,{code:i0.unrecognized_keys,keys:w}),Z.dirty()}else if(C==="strip");else throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let C=this._def.catchall;for(let X of w){let Y=d.data[X];V.push({key:{status:"valid",value:X},value:C._parse(new WV(d,Y,d.path,X)),alwaysSet:X in d.data})}}if(d.common.async)return Promise.resolve().then(async()=>{let C=[];for(let X of V){let Y=await X.key,A=await X.value;C.push({key:Y,value:A,alwaysSet:X.alwaysSet})}return C}).then((C)=>{return AG.mergeObjectSync(Z,C)});else return AG.mergeObjectSync(Z,V)}get shape(){return this._def.shape()}strict(I){return c2.errToObj,new H6({...this._def,unknownKeys:"strict",...I!==void 0?{errorMap:(G,Z)=>{var d,W,B,w;let V=(B=(W=(d=this._def).errorMap)===null||W===void 0?void 0:W.call(d,G,Z).message)!==null&&B!==void 0?B:Z.defaultError;if(G.code==="unrecognized_keys")return{message:(w=c2.errToObj(I).message)!==null&&w!==void 0?w:V};return{message:V}}}:{}})}strip(){return new H6({...this._def,unknownKeys:"strip"})}passthrough(){return new H6({...this._def,unknownKeys:"passthrough"})}extend(I){return new H6({...this._def,shape:()=>({...this._def.shape(),...I})})}merge(I){return new H6({unknownKeys:I._def.unknownKeys,catchall:I._def.catchall,shape:()=>({...this._def.shape(),...I._def.shape()}),typeName:a0.ZodObject})}setKey(I,G){return this.augment({[I]:G})}catchall(I){return new H6({...this._def,catchall:I})}pick(I){let G={};return x9.objectKeys(I).forEach((Z)=>{if(I[Z]&&this.shape[Z])G[Z]=this.shape[Z]}),new H6({...this._def,shape:()=>G})}omit(I){let G={};return x9.objectKeys(this.shape).forEach((Z)=>{if(!I[Z])G[Z]=this.shape[Z]}),new H6({...this._def,shape:()=>G})}deepPartial(){return jv(this)}partial(I){let G={};return x9.objectKeys(this.shape).forEach((Z)=>{let d=this.shape[Z];if(I&&!I[Z])G[Z]=d;else G[Z]=d.optional()}),new H6({...this._def,shape:()=>G})}required(I){let G={};return x9.objectKeys(this.shape).forEach((Z)=>{if(I&&!I[Z])G[Z]=this.shape[Z];else{let W=this.shape[Z];while(W instanceof od)W=W._def.innerType;G[Z]=W}}),new H6({...this._def,shape:()=>G})}keyof(){return JF2(x9.objectKeys(this.shape))}}H6.create=(I,G)=>{return new H6({shape:()=>I,unknownKeys:"strip",catchall:vX.create(),typeName:a0.ZodObject,...d9(G)})};H6.strictCreate=(I,G)=>{return new H6({shape:()=>I,unknownKeys:"strict",catchall:vX.create(),typeName:a0.ZodObject,...d9(G)})};H6.lazycreate=(I,G)=>{return new H6({shape:I,unknownKeys:"strip",catchall:vX.create(),typeName:a0.ZodObject,...d9(G)})};class nv extends C9{_parse(I){let{ctx:G}=this._processInputParams(I),Z=this._def.options;function d(W){for(let w of W)if(w.result.status==="valid")return w.result;for(let w of W)if(w.result.status==="dirty")return G.common.issues.push(...w.ctx.common.issues),w.result;let B=W.map((w)=>new sd(w.ctx.common.issues));return J2(G,{code:i0.invalid_union,unionErrors:B}),L4}if(G.common.async)return Promise.all(Z.map(async(W)=>{let B={...G,common:{...G.common,issues:[]},parent:null};return{result:await W._parseAsync({data:G.data,path:G.path,parent:B}),ctx:B}})).then(d);else{let W=void 0,B=[];for(let V of Z){let C={...G,common:{...G.common,issues:[]},parent:null},X=V._parseSync({data:G.data,path:G.path,parent:C});if(X.status==="valid")return X;else if(X.status==="dirty"&&!W)W={result:X,ctx:C};if(C.common.issues.length)B.push(C.common.issues)}if(W)return G.common.issues.push(...W.ctx.common.issues),W.result;let w=B.map((V)=>new sd(V));return J2(G,{code:i0.invalid_union,unionErrors:w}),L4}}get options(){return this._def.options}}nv.create=(I,G)=>{return new nv({options:I,typeName:a0.ZodUnion,...d9(G)})};var hA=(I)=>{if(I instanceof rv)return hA(I.schema);else if(I instanceof QB)return hA(I.innerType());else if(I instanceof sv)return[I.value];else if(I instanceof GJ)return I.options;else if(I instanceof ov)return x9.objectValues(I.enum);else if(I instanceof ev)return hA(I._def.innerType);else if(I instanceof pv)return[void 0];else if(I instanceof iv)return[null];else if(I instanceof od)return[void 0,...hA(I.unwrap())];else if(I instanceof pA)return[null,...hA(I.unwrap())];else if(I instanceof Vt)return hA(I.unwrap());else if(I instanceof IE)return hA(I.unwrap());else if(I instanceof tv)return hA(I._def.innerType);else return[]};class wt extends C9{_parse(I){let{ctx:G}=this._processInputParams(I);if(G.parsedType!==R2.object)return J2(G,{code:i0.invalid_type,expected:R2.object,received:G.parsedType}),L4;let Z=this.discriminator,d=G.data[Z],W=this.optionsMap.get(d);if(!W)return J2(G,{code:i0.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[Z]}),L4;if(G.common.async)return W._parseAsync({data:G.data,path:G.path,parent:G});else return W._parseSync({data:G.data,path:G.path,parent:G})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(I,G,Z){let d=new Map;for(let W of G){let B=hA(W.shape[I]);if(!B.length)throw new Error(`A discriminator value for key \`${I}\` could not be extracted from all schema options`);for(let w of B){if(d.has(w))throw new Error(`Discriminator property ${String(I)} has duplicate value ${String(w)}`);d.set(w,W)}}return new wt({typeName:a0.ZodDiscriminatedUnion,discriminator:I,options:G,optionsMap:d,...d9(Z)})}}function Hq1(I,G){let Z=cA(I),d=cA(G);if(I===G)return{valid:!0,data:I};else if(Z===R2.object&&d===R2.object){let W=x9.objectKeys(G),B=x9.objectKeys(I).filter((V)=>W.indexOf(V)!==-1),w={...I,...G};for(let V of B){let C=Hq1(I[V],G[V]);if(!C.valid)return{valid:!1};w[V]=C.data}return{valid:!0,data:w}}else if(Z===R2.array&&d===R2.array){if(I.length!==G.length)return{valid:!1};let W=[];for(let B=0;B<I.length;B++){let w=I[B],V=G[B],C=Hq1(w,V);if(!C.valid)return{valid:!1};W.push(C.data)}return{valid:!0,data:W}}else if(Z===R2.date&&d===R2.date&&+I===+G)return{valid:!0,data:I};else return{valid:!1}}class av extends C9{_parse(I){let{status:G,ctx:Z}=this._processInputParams(I),d=(W,B)=>{if(Aq1(W)||Aq1(B))return L4;let w=Hq1(W.value,B.value);if(!w.valid)return J2(Z,{code:i0.invalid_intersection_types}),L4;if(_q1(W)||_q1(B))G.dirty();return{status:G.value,value:w.data}};if(Z.common.async)return Promise.all([this._def.left._parseAsync({data:Z.data,path:Z.path,parent:Z}),this._def.right._parseAsync({data:Z.data,path:Z.path,parent:Z})]).then(([W,B])=>d(W,B));else return d(this._def.left._parseSync({data:Z.data,path:Z.path,parent:Z}),this._def.right._parseSync({data:Z.data,path:Z.path,parent:Z}))}}av.create=(I,G,Z)=>{return new av({left:I,right:G,typeName:a0.ZodIntersection,...d9(Z)})};class EX extends C9{_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.parsedType!==R2.array)return J2(Z,{code:i0.invalid_type,expected:R2.array,received:Z.parsedType}),L4;if(Z.data.length<this._def.items.length)return J2(Z,{code:i0.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),L4;if(!this._def.rest&&Z.data.length>this._def.items.length)J2(Z,{code:i0.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),G.dirty();let W=[...Z.data].map((B,w)=>{let V=this._def.items[w]||this._def.rest;if(!V)return null;return V._parse(new WV(Z,B,Z.path,w))}).filter((B)=>!!B);if(Z.common.async)return Promise.all(W).then((B)=>{return AG.mergeArray(G,B)});else return AG.mergeArray(G,W)}get items(){return this._def.items}rest(I){return new EX({...this._def,rest:I})}}EX.create=(I,G)=>{if(!Array.isArray(I))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new EX({items:I,typeName:a0.ZodTuple,rest:null,...d9(G)})};class Um extends C9{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.parsedType!==R2.object)return J2(Z,{code:i0.invalid_type,expected:R2.object,received:Z.parsedType}),L4;let d=[],W=this._def.keyType,B=this._def.valueType;for(let w in Z.data)d.push({key:W._parse(new WV(Z,w,Z.path,w)),value:B._parse(new WV(Z,Z.data[w],Z.path,w)),alwaysSet:w in Z.data});if(Z.common.async)return AG.mergeObjectAsync(G,d);else return AG.mergeObjectSync(G,d)}get element(){return this._def.valueType}static create(I,G,Z){if(G instanceof C9)return new Um({keyType:I,valueType:G,typeName:a0.ZodRecord,...d9(Z)});return new Um({keyType:ZV.create(),valueType:I,typeName:a0.ZodRecord,...d9(G)})}}class fm extends C9{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.parsedType!==R2.map)return J2(Z,{code:i0.invalid_type,expected:R2.map,received:Z.parsedType}),L4;let d=this._def.keyType,W=this._def.valueType,B=[...Z.data.entries()].map(([w,V],C)=>{return{key:d._parse(new WV(Z,w,Z.path,[C,"key"])),value:W._parse(new WV(Z,V,Z.path,[C,"value"]))}});if(Z.common.async){let w=new Map;return Promise.resolve().then(async()=>{for(let V of B){let C=await V.key,X=await V.value;if(C.status==="aborted"||X.status==="aborted")return L4;if(C.status==="dirty"||X.status==="dirty")G.dirty();w.set(C.value,X.value)}return{status:G.value,value:w}})}else{let w=new Map;for(let V of B){let{key:C,value:X}=V;if(C.status==="aborted"||X.status==="aborted")return L4;if(C.status==="dirty"||X.status==="dirty")G.dirty();w.set(C.value,X.value)}return{status:G.value,value:w}}}}fm.create=(I,G,Z)=>{return new fm({valueType:G,keyType:I,typeName:a0.ZodMap,...d9(Z)})};class ZN extends C9{_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.parsedType!==R2.set)return J2(Z,{code:i0.invalid_type,expected:R2.set,received:Z.parsedType}),L4;let d=this._def;if(d.minSize!==null){if(Z.data.size<d.minSize.value)J2(Z,{code:i0.too_small,minimum:d.minSize.value,type:"set",inclusive:!0,exact:!1,message:d.minSize.message}),G.dirty()}if(d.maxSize!==null){if(Z.data.size>d.maxSize.value)J2(Z,{code:i0.too_big,maximum:d.maxSize.value,type:"set",inclusive:!0,exact:!1,message:d.maxSize.message}),G.dirty()}let W=this._def.valueType;function B(V){let C=new Set;for(let X of V){if(X.status==="aborted")return L4;if(X.status==="dirty")G.dirty();C.add(X.value)}return{status:G.value,value:C}}let w=[...Z.data.values()].map((V,C)=>W._parse(new WV(Z,V,Z.path,C)));if(Z.common.async)return Promise.all(w).then((V)=>B(V));else return B(w)}min(I,G){return new ZN({...this._def,minSize:{value:I,message:c2.toString(G)}})}max(I,G){return new ZN({...this._def,maxSize:{value:I,message:c2.toString(G)}})}size(I,G){return this.min(I,G).max(I,G)}nonempty(I){return this.min(1,I)}}ZN.create=(I,G)=>{return new ZN({valueType:I,minSize:null,maxSize:null,typeName:a0.ZodSet,...d9(G)})};class xv extends C9{constructor(){super(...arguments);this.validate=this.implement}_parse(I){let{ctx:G}=this._processInputParams(I);if(G.parsedType!==R2.function)return J2(G,{code:i0.invalid_type,expected:R2.function,received:G.parsedType}),L4;function Z(w,V){return Wt({data:w,path:G.path,errorMaps:[G.common.contextualErrorMap,G.schemaErrorMap,dt(),hv].filter((C)=>!!C),issueData:{code:i0.invalid_arguments,argumentsError:V}})}function d(w,V){return Wt({data:w,path:G.path,errorMaps:[G.common.contextualErrorMap,G.schemaErrorMap,dt(),hv].filter((C)=>!!C),issueData:{code:i0.invalid_return_type,returnTypeError:V}})}let W={errorMap:G.common.contextualErrorMap},B=G.data;if(this._def.returns instanceof dN){let w=this;return eG(async function(...V){let C=new sd([]),X=await w._def.args.parseAsync(V,W).catch((D)=>{throw C.addIssue(Z(V,D)),C}),Y=await Reflect.apply(B,this,X);return await w._def.returns._def.type.parseAsync(Y,W).catch((D)=>{throw C.addIssue(d(Y,D)),C})})}else{let w=this;return eG(function(...V){let C=w._def.args.safeParse(V,W);if(!C.success)throw new sd([Z(V,C.error)]);let X=Reflect.apply(B,this,C.data),Y=w._def.returns.safeParse(X,W);if(!Y.success)throw new sd([d(X,Y.error)]);return Y.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...I){return new xv({...this._def,args:EX.create(I).rest(eF.create())})}returns(I){return new xv({...this._def,returns:I})}implement(I){return this.parse(I)}strictImplement(I){return this.parse(I)}static create(I,G,Z){return new xv({args:I?I:EX.create([]).rest(eF.create()),returns:G||eF.create(),typeName:a0.ZodFunction,...d9(Z)})}}class rv extends C9{get schema(){return this._def.getter()}_parse(I){let{ctx:G}=this._processInputParams(I);return this._def.getter()._parse({data:G.data,path:G.path,parent:G})}}rv.create=(I,G)=>{return new rv({getter:I,typeName:a0.ZodLazy,...d9(G)})};class sv extends C9{_parse(I){if(I.data!==this._def.value){let G=this._getOrReturnCtx(I);return J2(G,{received:G.data,code:i0.invalid_literal,expected:this._def.value}),L4}return{status:"valid",value:I.data}}get value(){return this._def.value}}sv.create=(I,G)=>{return new sv({value:I,typeName:a0.ZodLiteral,...d9(G)})};function JF2(I,G){return new GJ({values:I,typeName:a0.ZodEnum,...d9(G)})}class GJ extends C9{constructor(){super(...arguments);zm.set(this,void 0)}_parse(I){if(typeof I.data!=="string"){let G=this._getOrReturnCtx(I),Z=this._def.values;return J2(G,{expected:x9.joinValues(Z),received:G.parsedType,code:i0.invalid_type}),L4}if(!Bt(this,zm,"f"))_F2(this,zm,new Set(this._def.values),"f");if(!Bt(this,zm,"f").has(I.data)){let G=this._getOrReturnCtx(I),Z=this._def.values;return J2(G,{received:G.data,code:i0.invalid_enum_value,options:Z}),L4}return eG(I.data)}get options(){return this._def.values}get enum(){let I={};for(let G of this._def.values)I[G]=G;return I}get Values(){let I={};for(let G of this._def.values)I[G]=G;return I}get Enum(){let I={};for(let G of this._def.values)I[G]=G;return I}extract(I,G=this._def){return GJ.create(I,{...this._def,...G})}exclude(I,G=this._def){return GJ.create(this.options.filter((Z)=>!I.includes(Z)),{...this._def,...G})}}zm=new WeakMap;GJ.create=JF2;class ov extends C9{constructor(){super(...arguments);Qm.set(this,void 0)}_parse(I){let G=x9.getValidEnumValues(this._def.values),Z=this._getOrReturnCtx(I);if(Z.parsedType!==R2.string&&Z.parsedType!==R2.number){let d=x9.objectValues(G);return J2(Z,{expected:x9.joinValues(d),received:Z.parsedType,code:i0.invalid_type}),L4}if(!Bt(this,Qm,"f"))_F2(this,Qm,new Set(x9.getValidEnumValues(this._def.values)),"f");if(!Bt(this,Qm,"f").has(I.data)){let d=x9.objectValues(G);return J2(Z,{received:Z.data,code:i0.invalid_enum_value,options:d}),L4}return eG(I.data)}get enum(){return this._def.values}}Qm=new WeakMap;ov.create=(I,G)=>{return new ov({values:I,typeName:a0.ZodNativeEnum,...d9(G)})};class dN extends C9{unwrap(){return this._def.type}_parse(I){let{ctx:G}=this._processInputParams(I);if(G.parsedType!==R2.promise&&G.common.async===!1)return J2(G,{code:i0.invalid_type,expected:R2.promise,received:G.parsedType}),L4;let Z=G.parsedType===R2.promise?G.data:Promise.resolve(G.data);return eG(Z.then((d)=>{return this._def.type.parseAsync(d,{path:G.path,errorMap:G.common.contextualErrorMap})}))}}dN.create=(I,G)=>{return new dN({type:I,typeName:a0.ZodPromise,...d9(G)})};class QB extends C9{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===a0.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(I){let{status:G,ctx:Z}=this._processInputParams(I),d=this._def.effect||null,W={addIssue:(B)=>{if(J2(Z,B),B.fatal)G.abort();else G.dirty()},get path(){return Z.path}};if(W.addIssue=W.addIssue.bind(W),d.type==="preprocess"){let B=d.transform(Z.data,W);if(Z.common.async)return Promise.resolve(B).then(async(w)=>{if(G.value==="aborted")return L4;let V=await this._def.schema._parseAsync({data:w,path:Z.path,parent:Z});if(V.status==="aborted")return L4;if(V.status==="dirty")return kv(V.value);if(G.value==="dirty")return kv(V.value);return V});else{if(G.value==="aborted")return L4;let w=this._def.schema._parseSync({data:B,path:Z.path,parent:Z});if(w.status==="aborted")return L4;if(w.status==="dirty")return kv(w.value);if(G.value==="dirty")return kv(w.value);return w}}if(d.type==="refinement"){let B=(w)=>{let V=d.refinement(w,W);if(Z.common.async)return Promise.resolve(V);if(V instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return w};if(Z.common.async===!1){let w=this._def.schema._parseSync({data:Z.data,path:Z.path,parent:Z});if(w.status==="aborted")return L4;if(w.status==="dirty")G.dirty();return B(w.value),{status:G.value,value:w.value}}else return this._def.schema._parseAsync({data:Z.data,path:Z.path,parent:Z}).then((w)=>{if(w.status==="aborted")return L4;if(w.status==="dirty")G.dirty();return B(w.value).then(()=>{return{status:G.value,value:w.value}})})}if(d.type==="transform")if(Z.common.async===!1){let B=this._def.schema._parseSync({data:Z.data,path:Z.path,parent:Z});if(!tQ(B))return B;let w=d.transform(B.value,W);if(w instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:G.value,value:w}}else return this._def.schema._parseAsync({data:Z.data,path:Z.path,parent:Z}).then((B)=>{if(!tQ(B))return B;return Promise.resolve(d.transform(B.value,W)).then((w)=>({status:G.value,value:w}))});x9.assertNever(d)}}QB.create=(I,G,Z)=>{return new QB({schema:I,typeName:a0.ZodEffects,effect:G,...d9(Z)})};QB.createWithPreprocess=(I,G,Z)=>{return new QB({schema:G,effect:{type:"preprocess",transform:I},typeName:a0.ZodEffects,...d9(Z)})};class od extends C9{_parse(I){if(this._getType(I)===R2.undefined)return eG(void 0);return this._def.innerType._parse(I)}unwrap(){return this._def.innerType}}od.create=(I,G)=>{return new od({innerType:I,typeName:a0.ZodOptional,...d9(G)})};class pA extends C9{_parse(I){if(this._getType(I)===R2.null)return eG(null);return this._def.innerType._parse(I)}unwrap(){return this._def.innerType}}pA.create=(I,G)=>{return new pA({innerType:I,typeName:a0.ZodNullable,...d9(G)})};class ev extends C9{_parse(I){let{ctx:G}=this._processInputParams(I),Z=G.data;if(G.parsedType===R2.undefined)Z=this._def.defaultValue();return this._def.innerType._parse({data:Z,path:G.path,parent:G})}removeDefault(){return this._def.innerType}}ev.create=(I,G)=>{return new ev({innerType:I,typeName:a0.ZodDefault,defaultValue:typeof G.default==="function"?G.default:()=>G.default,...d9(G)})};class tv extends C9{_parse(I){let{ctx:G}=this._processInputParams(I),Z={...G,common:{...G.common,issues:[]}},d=this._def.innerType._parse({data:Z.data,path:Z.path,parent:{...Z}});if(Nm(d))return d.then((W)=>{return{status:"valid",value:W.status==="valid"?W.value:this._def.catchValue({get error(){return new sd(Z.common.issues)},input:Z.data})}});else return{status:"valid",value:d.status==="valid"?d.value:this._def.catchValue({get error(){return new sd(Z.common.issues)},input:Z.data})}}removeCatch(){return this._def.innerType}}tv.create=(I,G)=>{return new tv({innerType:I,typeName:a0.ZodCatch,catchValue:typeof G.catch==="function"?G.catch:()=>G.catch,...d9(G)})};class Rm extends C9{_parse(I){if(this._getType(I)!==R2.nan){let Z=this._getOrReturnCtx(I);return J2(Z,{code:i0.invalid_type,expected:R2.nan,received:Z.parsedType}),L4}return{status:"valid",value:I.data}}}Rm.create=(I)=>{return new Rm({typeName:a0.ZodNaN,...d9(I)})};var qW3=Symbol("zod_brand");class Vt extends C9{_parse(I){let{ctx:G}=this._processInputParams(I),Z=G.data;return this._def.type._parse({data:Z,path:G.path,parent:G})}unwrap(){return this._def.type}}class vm extends C9{_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.common.async)return(async()=>{let W=await this._def.in._parseAsync({data:Z.data,path:Z.path,parent:Z});if(W.status==="aborted")return L4;if(W.status==="dirty")return G.dirty(),kv(W.value);else return this._def.out._parseAsync({data:W.value,path:Z.path,parent:Z})})();else{let d=this._def.in._parseSync({data:Z.data,path:Z.path,parent:Z});if(d.status==="aborted")return L4;if(d.status==="dirty")return G.dirty(),{status:"dirty",value:d.value};else return this._def.out._parseSync({data:d.value,path:Z.path,parent:Z})}}static create(I,G){return new vm({in:I,out:G,typeName:a0.ZodPipeline})}}class IE extends C9{_parse(I){let G=this._def.innerType._parse(I),Z=(d)=>{if(tQ(d))d.value=Object.freeze(d.value);return d};return Nm(G)?G.then((d)=>Z(d)):Z(G)}unwrap(){return this._def.innerType}}IE.create=(I,G)=>{return new IE({innerType:I,typeName:a0.ZodReadonly,...d9(G)})};function KF2(I,G={},Z){if(I)return GN.create().superRefine((d,W)=>{var B,w;if(!I(d)){let V=typeof G==="function"?G(d):typeof G==="string"?{message:G}:G,C=(w=(B=V.fatal)!==null&&B!==void 0?B:Z)!==null&&w!==void 0?w:!0,X=typeof V==="string"?{message:V}:V;W.addIssue({code:"custom",...X,fatal:C})}});return GN.create()}var gW3={object:H6.lazycreate},a0;(function(I){I.ZodString="ZodString",I.ZodNumber="ZodNumber",I.ZodNaN="ZodNaN",I.ZodBigInt="ZodBigInt",I.ZodBoolean="ZodBoolean",I.ZodDate="ZodDate",I.ZodSymbol="ZodSymbol",I.ZodUndefined="ZodUndefined",I.ZodNull="ZodNull",I.ZodAny="ZodAny",I.ZodUnknown="ZodUnknown",I.ZodNever="ZodNever",I.ZodVoid="ZodVoid",I.ZodArray="ZodArray",I.ZodObject="ZodObject",I.ZodUnion="ZodUnion",I.ZodDiscriminatedUnion="ZodDiscriminatedUnion",I.ZodIntersection="ZodIntersection",I.ZodTuple="ZodTuple",I.ZodRecord="ZodRecord",I.ZodMap="ZodMap",I.ZodSet="ZodSet",I.ZodFunction="ZodFunction",I.ZodLazy="ZodLazy",I.ZodLiteral="ZodLiteral",I.ZodEnum="ZodEnum",I.ZodEffects="ZodEffects",I.ZodNativeEnum="ZodNativeEnum",I.ZodOptional="ZodOptional",I.ZodNullable="ZodNullable",I.ZodDefault="ZodDefault",I.ZodCatch="ZodCatch",I.ZodPromise="ZodPromise",I.ZodBranded="ZodBranded",I.ZodPipeline="ZodPipeline",I.ZodReadonly="ZodReadonly"})(a0||(a0={}));var UW3=(I,G={message:`Input not instance of ${I.name}`})=>KF2((Z)=>Z instanceof I,G),zF2=ZV.create,QF2=tF.create,fW3=Rm.create,RW3=IJ.create,NF2=cv.create,vW3=IN.create,EW3=qm.create,MW3=pv.create,$W3=iv.create,SW3=GN.create,LW3=eF.create,PW3=vX.create,uW3=gm.create,yW3=dV.create,OW3=H6.create,mW3=H6.strictCreate,TW3=nv.create,bW3=wt.create,lW3=av.create,jW3=EX.create,kW3=Um.create,xW3=fm.create,hW3=ZN.create,cW3=xv.create,pW3=rv.create,iW3=sv.create,nW3=GJ.create,aW3=ov.create,rW3=dN.create,YF2=QB.create,sW3=od.create,oW3=pA.create,eW3=QB.createWithPreprocess,tW3=vm.create,IB3=()=>zF2().optional(),GB3=()=>QF2().optional(),ZB3=()=>NF2().optional(),dB3={string:(I)=>ZV.create({...I,coerce:!0}),number:(I)=>tF.create({...I,coerce:!0}),boolean:(I)=>cv.create({...I,coerce:!0}),bigint:(I)=>IJ.create({...I,coerce:!0}),date:(I)=>IN.create({...I,coerce:!0})},WB3=L4,e=Object.freeze({__proto__:null,defaultErrorMap:hv,setErrorMap:ed3,getErrorMap:dt,makeIssue:Wt,EMPTY_PATH:td3,addIssueToContext:J2,ParseStatus:AG,INVALID:L4,DIRTY:kv,OK:eG,isAborted:Aq1,isDirty:_q1,isValid:tQ,isAsync:Nm,get util(){return x9},get objectUtil(){return Yq1},ZodParsedType:R2,getParsedType:cA,ZodType:C9,datetimeRegex:FF2,ZodString:ZV,ZodNumber:tF,ZodBigInt:IJ,ZodBoolean:cv,ZodDate:IN,ZodSymbol:qm,ZodUndefined:pv,ZodNull:iv,ZodAny:GN,ZodUnknown:eF,ZodNever:vX,ZodVoid:gm,ZodArray:dV,ZodObject:H6,ZodUnion:nv,ZodDiscriminatedUnion:wt,ZodIntersection:av,ZodTuple:EX,ZodRecord:Um,ZodMap:fm,ZodSet:ZN,ZodFunction:xv,ZodLazy:rv,ZodLiteral:sv,ZodEnum:GJ,ZodNativeEnum:ov,ZodPromise:dN,ZodEffects:QB,ZodTransformer:QB,ZodOptional:od,ZodNullable:pA,ZodDefault:ev,ZodCatch:tv,ZodNaN:Rm,BRAND:qW3,ZodBranded:Vt,ZodPipeline:vm,ZodReadonly:IE,custom:KF2,Schema:C9,ZodSchema:C9,late:gW3,get ZodFirstPartyTypeKind(){return a0},coerce:dB3,any:SW3,array:yW3,bigint:RW3,boolean:NF2,date:vW3,discriminatedUnion:bW3,effect:YF2,enum:nW3,function:cW3,instanceof:UW3,intersection:lW3,lazy:pW3,literal:iW3,map:xW3,nan:fW3,nativeEnum:aW3,never:PW3,null:$W3,nullable:oW3,number:QF2,object:OW3,oboolean:ZB3,onumber:GB3,optional:sW3,ostring:IB3,pipeline:tW3,preprocess:eW3,promise:rW3,record:kW3,set:hW3,strictObject:mW3,string:zF2,symbol:EW3,transformer:YF2,tuple:jW3,undefined:MW3,union:TW3,unknown:LW3,void:uW3,NEVER:WB3,ZodIssueCode:i0,quotelessJson:od3,ZodError:sd});function qF2(){return{}}function gF2(I,G){let Z={type:"array"};if(I.type?._def&&I.type?._def?.typeName!==a0.ZodAny)Z.items=N4(I.type._def,{...G,currentPath:[...G.currentPath,"items"]});if(I.minLength)O9(Z,"minItems",I.minLength.value,I.minLength.message,G);if(I.maxLength)O9(Z,"maxItems",I.maxLength.value,I.maxLength.message,G);if(I.exactLength)O9(Z,"minItems",I.exactLength.value,I.exactLength.message,G),O9(Z,"maxItems",I.exactLength.value,I.exactLength.message,G);return Z}function UF2(I,G){let Z={type:"integer",format:"int64"};if(!I.checks)return Z;for(let d of I.checks)switch(d.kind){case"min":if(G.target==="jsonSchema7")if(d.inclusive)O9(Z,"minimum",d.value,d.message,G);else O9(Z,"exclusiveMinimum",d.value,d.message,G);else{if(!d.inclusive)Z.exclusiveMinimum=!0;O9(Z,"minimum",d.value,d.message,G)}break;case"max":if(G.target==="jsonSchema7")if(d.inclusive)O9(Z,"maximum",d.value,d.message,G);else O9(Z,"exclusiveMaximum",d.value,d.message,G);else{if(!d.inclusive)Z.exclusiveMaximum=!0;O9(Z,"maximum",d.value,d.message,G)}break;case"multipleOf":O9(Z,"multipleOf",d.value,d.message,G);break}return Z}function fF2(){return{type:"boolean"}}function Ct(I,G){return N4(I.type._def,G)}var RF2=(I,G)=>{return N4(I.innerType._def,G)};function Dq1(I,G,Z){let d=Z??G.dateStrategy;if(Array.isArray(d))return{anyOf:d.map((W,B)=>Dq1(I,G,W))};switch(d){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return BB3(I,G)}}var BB3=(I,G)=>{let Z={type:"integer",format:"unix-time"};if(G.target==="openApi3")return Z;for(let d of I.checks)switch(d.kind){case"min":O9(Z,"minimum",d.value,d.message,G);break;case"max":O9(Z,"maximum",d.value,d.message,G);break}return Z};function vF2(I,G){return{...N4(I.innerType._def,G),default:I.defaultValue()}}function EF2(I,G){return G.effectStrategy==="input"?N4(I.schema._def,G):{}}function MF2(I){return{type:"string",enum:Array.from(I.values)}}var wB3=(I)=>{if("type"in I&&I.type==="string")return!1;return"allOf"in I};function $F2(I,G){let Z=[N4(I.left._def,{...G,currentPath:[...G.currentPath,"allOf","0"]}),N4(I.right._def,{...G,currentPath:[...G.currentPath,"allOf","1"]})].filter((B)=>!!B),d=G.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,W=[];return Z.forEach((B)=>{if(wB3(B)){if(W.push(...B.allOf),B.unevaluatedProperties===void 0)d=void 0}else{let w=B;if("additionalProperties"in B&&B.additionalProperties===!1){let{additionalProperties:V,...C}=B;w=C}else d=void 0;W.push(w)}}),W.length?{allOf:W,...d}:void 0}function SF2(I,G){let Z=typeof I.value;if(Z!=="bigint"&&Z!=="number"&&Z!=="boolean"&&Z!=="string")return{type:Array.isArray(I.value)?"array":"object"};if(G.target==="openApi3")return{type:Z==="bigint"?"integer":Z,enum:[I.value]};return{type:Z==="bigint"?"integer":Z,const:I.value}}var Fq1=void 0,BV={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>{if(Fq1===void 0)Fq1=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u");return Fq1},uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function Xt(I,G){let Z={type:"string"};if(I.checks)for(let d of I.checks)switch(d.kind){case"min":O9(Z,"minLength",typeof Z.minLength==="number"?Math.max(Z.minLength,d.value):d.value,d.message,G);break;case"max":O9(Z,"maxLength",typeof Z.maxLength==="number"?Math.min(Z.maxLength,d.value):d.value,d.message,G);break;case"email":switch(G.emailStrategy){case"format:email":wV(Z,"email",d.message,G);break;case"format:idn-email":wV(Z,"idn-email",d.message,G);break;case"pattern:zod":tG(Z,BV.email,d.message,G);break}break;case"url":wV(Z,"uri",d.message,G);break;case"uuid":wV(Z,"uuid",d.message,G);break;case"regex":tG(Z,d.regex,d.message,G);break;case"cuid":tG(Z,BV.cuid,d.message,G);break;case"cuid2":tG(Z,BV.cuid2,d.message,G);break;case"startsWith":tG(Z,RegExp(`^${Jq1(d.value,G)}`),d.message,G);break;case"endsWith":tG(Z,RegExp(`${Jq1(d.value,G)}$`),d.message,G);break;case"datetime":wV(Z,"date-time",d.message,G);break;case"date":wV(Z,"date",d.message,G);break;case"time":wV(Z,"time",d.message,G);break;case"duration":wV(Z,"duration",d.message,G);break;case"length":O9(Z,"minLength",typeof Z.minLength==="number"?Math.max(Z.minLength,d.value):d.value,d.message,G),O9(Z,"maxLength",typeof Z.maxLength==="number"?Math.min(Z.maxLength,d.value):d.value,d.message,G);break;case"includes":{tG(Z,RegExp(Jq1(d.value,G)),d.message,G);break}case"ip":{if(d.version!=="v6")wV(Z,"ipv4",d.message,G);if(d.version!=="v4")wV(Z,"ipv6",d.message,G);break}case"base64url":tG(Z,BV.base64url,d.message,G);break;case"jwt":tG(Z,BV.jwt,d.message,G);break;case"cidr":{if(d.version!=="v6")tG(Z,BV.ipv4Cidr,d.message,G);if(d.version!=="v4")tG(Z,BV.ipv6Cidr,d.message,G);break}case"emoji":tG(Z,BV.emoji(),d.message,G);break;case"ulid":{tG(Z,BV.ulid,d.message,G);break}case"base64":{switch(G.base64Strategy){case"format:binary":{wV(Z,"binary",d.message,G);break}case"contentEncoding:base64":{O9(Z,"contentEncoding","base64",d.message,G);break}case"pattern:zod":{tG(Z,BV.base64,d.message,G);break}}break}case"nanoid":tG(Z,BV.nanoid,d.message,G);case"toLowerCase":case"toUpperCase":case"trim":break;default:((W)=>{})(d)}return Z}function Jq1(I,G){return G.patternStrategy==="escape"?CB3(I):I}var VB3=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function CB3(I){let G="";for(let Z=0;Z<I.length;Z++){if(!VB3.has(I[Z]))G+="\\";G+=I[Z]}return G}function wV(I,G,Z,d){if(I.format||I.anyOf?.some((W)=>W.format)){if(!I.anyOf)I.anyOf=[];if(I.format){if(I.anyOf.push({format:I.format,...I.errorMessage&&d.errorMessages&&{errorMessage:{format:I.errorMessage.format}}}),delete I.format,I.errorMessage){if(delete I.errorMessage.format,Object.keys(I.errorMessage).length===0)delete I.errorMessage}}I.anyOf.push({format:G,...Z&&d.errorMessages&&{errorMessage:{format:Z}}})}else O9(I,"format",G,Z,d)}function tG(I,G,Z,d){if(I.pattern||I.allOf?.some((W)=>W.pattern)){if(!I.allOf)I.allOf=[];if(I.pattern){if(I.allOf.push({pattern:I.pattern,...I.errorMessage&&d.errorMessages&&{errorMessage:{pattern:I.errorMessage.pattern}}}),delete I.pattern,I.errorMessage){if(delete I.errorMessage.pattern,Object.keys(I.errorMessage).length===0)delete I.errorMessage}}I.allOf.push({pattern:LF2(G,d),...Z&&d.errorMessages&&{errorMessage:{pattern:Z}}})}else O9(I,"pattern",LF2(G,d),Z,d)}function LF2(I,G){if(!G.applyRegexFlags||!I.flags)return I.source;let Z={i:I.flags.includes("i"),m:I.flags.includes("m"),s:I.flags.includes("s")},d=Z.i?I.source.toLowerCase():I.source,W="",B=!1,w=!1,V=!1;for(let C=0;C<d.length;C++){if(B){W+=d[C],B=!1;continue}if(Z.i){if(w){if(d[C].match(/[a-z]/)){if(V)W+=d[C],W+=`${d[C-2]}-${d[C]}`.toUpperCase(),V=!1;else if(d[C+1]==="-"&&d[C+2]?.match(/[a-z]/))W+=d[C],V=!0;else W+=`${d[C]}${d[C].toUpperCase()}`;continue}}else if(d[C].match(/[a-z]/)){W+=`[${d[C]}${d[C].toUpperCase()}]`;continue}}if(Z.m){if(d[C]==="^"){W+=`(^|(?<=[\r
|
|
536
|
+
`);let G=E4();h3({...G,lastCost:Iz(),lastAPIDuration:RS(),lastDuration:O61(),lastLinesAdded:sx(),lastLinesRemoved:ox(),lastSessionId:Sd})};return process.on("exit",I),()=>{process.off("exit",I)}},[])}function xd3(I,G){return Math.round(I*G)/G}var lv=`claude-cli/${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION} (external)`;function hd3(I){if(I?.type==="assistant"&&"usage"in I.message&&!(I.message.content[0]?.type==="text"&&tD2.has(I.message.content[0].text))&&I.message.model!=="<synthetic>")return I.message.usage;return}function cd3(I){return I.input_tokens+(I.cache_creation_input_tokens??0)+(I.cache_read_input_tokens??0)+I.output_tokens}function xA(I){let G=I.length-1;while(G>=0){let Z=I[G],d=Z?hd3(Z):void 0;if(d)return cd3(d);G--}return 0}function eD2(I){let G=I.length-1;while(G>=0){let Z=I[G];if(Z?.type==="assistant"&&"usage"in Z.message){let{usage:d}=Z.message;return(d.cache_creation_input_tokens??0)+(d.cache_read_input_tokens??0)}G--}return 0}import{createHash as pd3}from"crypto";import{mkdirSync as id3,readFileSync as nd3,writeFileSync as ad3}from"fs";import{dirname as IF2}from"path";import{existsSync as GF2}from"fs";import*as WF2 from"path";async function Vq1(I,G){return await G()}function rd3(I,G){return I.map((Z)=>{if(typeof Z==="string")return G(Z);return Z.map((d)=>{switch(d.type){case"tool_result":if(typeof d.content==="string")return{...d,content:G(d.content)};if(Array.isArray(d.content))return{...d,content:d.content.map((W)=>{switch(W.type){case"text":return{...W,text:G(W.text)};case"image":return W}})};return d;case"text":return{...d,text:G(d.text)};case"tool_use":return{...d,input:Gx(d.input,G)};case"image":return d}})})}function ZF2(I,G){return{durationMs:"DURATION",costUSD:"COST",uuid:"UUID",message:{...I.message,content:I.message.content.map((Z)=>{switch(Z.type){case"text":return{...Z,text:G(Z.text),citations:Z.citations||[]};case"tool_use":return{...Z,input:Gx(Z.input,G)};default:return Z}}).filter(Boolean)},surface:I.surface,type:"assistant"}}function dF2(I){if(typeof I!=="string")return I;let G=I.replace(/num_files="\d+"/g,'num_files="[NUM]"').replace(/duration_ms="\d+"/g,'duration_ms="[DURATION]"').replace(/cost_usd="\d+"/g,'cost_usd="[COST]"').replace(/\//g,WF2.sep).replaceAll(u0(),"[CWD]");if(G.includes("Files modified by user:"))return"Files modified by user: [FILES]";return G}function sd3(I){if(typeof I!=="string")return I;return I.replaceAll("[NUM]","1").replaceAll("[DURATION]","100").replaceAll("[CWD]",u0())}var wF2=Symbol("Let zodToJsonSchema decide on which parser to use"),BF2={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"},VF2=(I)=>typeof I==="string"?{...BF2,name:I}:{...BF2,...I};var CF2=(I)=>{let G=VF2(I),Z=G.name!==void 0?[...G.basePath,G.definitionPath,G.name]:G.basePath;return{...G,currentPath:Z,propertyPath:void 0,seen:new Map(Object.entries(G.definitions).map(([d,W])=>[W._def,{def:W._def,path:[...G.basePath,G.definitionPath,d],jsonSchema:void 0}]))}};function Cq1(I,G,Z,d){if(!d?.errorMessages)return;if(Z)I.errorMessage={...I.errorMessage,[G]:Z}}function O9(I,G,Z,d,W){I[G]=Z,Cq1(I,G,d,W)}var x9;(function(I){I.assertEqual=(W)=>W;function G(W){}I.assertIs=G;function Z(W){throw new Error}I.assertNever=Z,I.arrayToEnum=(W)=>{let B={};for(let w of W)B[w]=w;return B},I.getValidEnumValues=(W)=>{let B=I.objectKeys(W).filter((V)=>typeof W[W[V]]!=="number"),w={};for(let V of B)w[V]=W[V];return I.objectValues(w)},I.objectValues=(W)=>{return I.objectKeys(W).map(function(B){return W[B]})},I.objectKeys=typeof Object.keys==="function"?(W)=>Object.keys(W):(W)=>{let B=[];for(let w in W)if(Object.prototype.hasOwnProperty.call(W,w))B.push(w);return B},I.find=(W,B)=>{for(let w of W)if(B(w))return w;return},I.isInteger=typeof Number.isInteger==="function"?(W)=>Number.isInteger(W):(W)=>typeof W==="number"&&isFinite(W)&&Math.floor(W)===W;function d(W,B=" | "){return W.map((w)=>typeof w==="string"?`'${w}'`:w).join(B)}I.joinValues=d,I.jsonStringifyReplacer=(W,B)=>{if(typeof B==="bigint")return B.toString();return B}})(x9||(x9={}));var Yq1;(function(I){I.mergeShapes=(G,Z)=>{return{...G,...Z}}})(Yq1||(Yq1={}));var R2=x9.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),cA=(I)=>{switch(typeof I){case"undefined":return R2.undefined;case"string":return R2.string;case"number":return isNaN(I)?R2.nan:R2.number;case"boolean":return R2.boolean;case"function":return R2.function;case"bigint":return R2.bigint;case"symbol":return R2.symbol;case"object":if(Array.isArray(I))return R2.array;if(I===null)return R2.null;if(I.then&&typeof I.then==="function"&&I.catch&&typeof I.catch==="function")return R2.promise;if(typeof Map!=="undefined"&&I instanceof Map)return R2.map;if(typeof Set!=="undefined"&&I instanceof Set)return R2.set;if(typeof Date!=="undefined"&&I instanceof Date)return R2.date;return R2.object;default:return R2.unknown}},i0=x9.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),od3=(I)=>{return JSON.stringify(I,null,2).replace(/"([^"]+)":/g,"$1:")};class sd extends Error{get errors(){return this.issues}constructor(I){super();this.issues=[],this.addIssue=(Z)=>{this.issues=[...this.issues,Z]},this.addIssues=(Z=[])=>{this.issues=[...this.issues,...Z]};let G=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,G);else this.__proto__=G;this.name="ZodError",this.issues=I}format(I){let G=I||function(W){return W.message},Z={_errors:[]},d=(W)=>{for(let B of W.issues)if(B.code==="invalid_union")B.unionErrors.map(d);else if(B.code==="invalid_return_type")d(B.returnTypeError);else if(B.code==="invalid_arguments")d(B.argumentsError);else if(B.path.length===0)Z._errors.push(G(B));else{let w=Z,V=0;while(V<B.path.length){let C=B.path[V];if(V!==B.path.length-1)w[C]=w[C]||{_errors:[]};else w[C]=w[C]||{_errors:[]},w[C]._errors.push(G(B));w=w[C],V++}}};return d(this),Z}static assert(I){if(!(I instanceof sd))throw new Error(`Not a ZodError: ${I}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,x9.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(I=(G)=>G.message){let G={},Z=[];for(let d of this.issues)if(d.path.length>0)G[d.path[0]]=G[d.path[0]]||[],G[d.path[0]].push(I(d));else Z.push(I(d));return{formErrors:Z,fieldErrors:G}}get formErrors(){return this.flatten()}}sd.create=(I)=>{return new sd(I)};var hv=(I,G)=>{let Z;switch(I.code){case i0.invalid_type:if(I.received===R2.undefined)Z="Required";else Z=`Expected ${I.expected}, received ${I.received}`;break;case i0.invalid_literal:Z=`Invalid literal value, expected ${JSON.stringify(I.expected,x9.jsonStringifyReplacer)}`;break;case i0.unrecognized_keys:Z=`Unrecognized key(s) in object: ${x9.joinValues(I.keys,", ")}`;break;case i0.invalid_union:Z="Invalid input";break;case i0.invalid_union_discriminator:Z=`Invalid discriminator value. Expected ${x9.joinValues(I.options)}`;break;case i0.invalid_enum_value:Z=`Invalid enum value. Expected ${x9.joinValues(I.options)}, received '${I.received}'`;break;case i0.invalid_arguments:Z="Invalid function arguments";break;case i0.invalid_return_type:Z="Invalid function return type";break;case i0.invalid_date:Z="Invalid date";break;case i0.invalid_string:if(typeof I.validation==="object")if("includes"in I.validation){if(Z=`Invalid input: must include "${I.validation.includes}"`,typeof I.validation.position==="number")Z=`${Z} at one or more positions greater than or equal to ${I.validation.position}`}else if("startsWith"in I.validation)Z=`Invalid input: must start with "${I.validation.startsWith}"`;else if("endsWith"in I.validation)Z=`Invalid input: must end with "${I.validation.endsWith}"`;else x9.assertNever(I.validation);else if(I.validation!=="regex")Z=`Invalid ${I.validation}`;else Z="Invalid";break;case i0.too_small:if(I.type==="array")Z=`Array must contain ${I.exact?"exactly":I.inclusive?"at least":"more than"} ${I.minimum} element(s)`;else if(I.type==="string")Z=`String must contain ${I.exact?"exactly":I.inclusive?"at least":"over"} ${I.minimum} character(s)`;else if(I.type==="number")Z=`Number must be ${I.exact?"exactly equal to ":I.inclusive?"greater than or equal to ":"greater than "}${I.minimum}`;else if(I.type==="date")Z=`Date must be ${I.exact?"exactly equal to ":I.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(I.minimum))}`;else Z="Invalid input";break;case i0.too_big:if(I.type==="array")Z=`Array must contain ${I.exact?"exactly":I.inclusive?"at most":"less than"} ${I.maximum} element(s)`;else if(I.type==="string")Z=`String must contain ${I.exact?"exactly":I.inclusive?"at most":"under"} ${I.maximum} character(s)`;else if(I.type==="number")Z=`Number must be ${I.exact?"exactly":I.inclusive?"less than or equal to":"less than"} ${I.maximum}`;else if(I.type==="bigint")Z=`BigInt must be ${I.exact?"exactly":I.inclusive?"less than or equal to":"less than"} ${I.maximum}`;else if(I.type==="date")Z=`Date must be ${I.exact?"exactly":I.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(I.maximum))}`;else Z="Invalid input";break;case i0.custom:Z="Invalid input";break;case i0.invalid_intersection_types:Z="Intersection results could not be merged";break;case i0.not_multiple_of:Z=`Number must be a multiple of ${I.multipleOf}`;break;case i0.not_finite:Z="Number must be finite";break;default:Z=G.defaultError,x9.assertNever(I)}return{message:Z}},AF2=hv;function ed3(I){AF2=I}function dt(){return AF2}var Wt=(I)=>{let{data:G,path:Z,errorMaps:d,issueData:W}=I,B=[...Z,...W.path||[]],w={...W,path:B};if(W.message!==void 0)return{...W,path:B,message:W.message};let V="",C=d.filter((X)=>!!X).slice().reverse();for(let X of C)V=X(w,{data:G,defaultError:V}).message;return{...W,path:B,message:V}},td3=[];function J2(I,G){let Z=dt(),d=Wt({issueData:G,data:I.data,path:I.path,errorMaps:[I.common.contextualErrorMap,I.schemaErrorMap,Z,Z===hv?void 0:hv].filter((W)=>!!W)});I.common.issues.push(d)}class AG{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(I,G){let Z=[];for(let d of G){if(d.status==="aborted")return L4;if(d.status==="dirty")I.dirty();Z.push(d.value)}return{status:I.value,value:Z}}static async mergeObjectAsync(I,G){let Z=[];for(let d of G){let W=await d.key,B=await d.value;Z.push({key:W,value:B})}return AG.mergeObjectSync(I,Z)}static mergeObjectSync(I,G){let Z={};for(let d of G){let{key:W,value:B}=d;if(W.status==="aborted")return L4;if(B.status==="aborted")return L4;if(W.status==="dirty")I.dirty();if(B.status==="dirty")I.dirty();if(W.value!=="__proto__"&&(typeof B.value!=="undefined"||d.alwaysSet))Z[W.value]=B.value}return{status:I.value,value:Z}}}var L4=Object.freeze({status:"aborted"}),kv=(I)=>({status:"dirty",value:I}),eG=(I)=>({status:"valid",value:I}),Aq1=(I)=>I.status==="aborted",_q1=(I)=>I.status==="dirty",tQ=(I)=>I.status==="valid",Nm=(I)=>typeof Promise!=="undefined"&&I instanceof Promise;function Bt(I,G,Z,d){if(Z==="a"&&!d)throw new TypeError("Private accessor was defined without a getter");if(typeof G==="function"?I!==G||!d:!G.has(I))throw new TypeError("Cannot read private member from an object whose class did not declare it");return Z==="m"?d:Z==="a"?d.call(I):d?d.value:G.get(I)}function _F2(I,G,Z,d,W){if(d==="m")throw new TypeError("Private method is not writable");if(d==="a"&&!W)throw new TypeError("Private accessor was defined without a setter");if(typeof G==="function"?I!==G||!W:!G.has(I))throw new TypeError("Cannot write private member to an object whose class did not declare it");return d==="a"?W.call(I,Z):W?W.value=Z:G.set(I,Z),Z}var c2;(function(I){I.errToObj=(G)=>typeof G==="string"?{message:G}:G||{},I.toString=(G)=>typeof G==="string"?G:G===null||G===void 0?void 0:G.message})(c2||(c2={}));var zm,Qm;class WV{constructor(I,G,Z,d){this._cachedPath=[],this.parent=I,this.data=G,this._path=Z,this._key=d}get path(){if(!this._cachedPath.length)if(this._key instanceof Array)this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var XF2=(I,G)=>{if(tQ(G))return{success:!0,data:G.value};else{if(!I.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let Z=new sd(I.common.issues);return this._error=Z,this._error}}}};function d9(I){if(!I)return{};let{errorMap:G,invalid_type_error:Z,required_error:d,description:W}=I;if(G&&(Z||d))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(G)return{errorMap:G,description:W};return{errorMap:(w,V)=>{var C,X;let{message:Y}=I;if(w.code==="invalid_enum_value")return{message:Y!==null&&Y!==void 0?Y:V.defaultError};if(typeof V.data==="undefined")return{message:(C=Y!==null&&Y!==void 0?Y:d)!==null&&C!==void 0?C:V.defaultError};if(w.code!=="invalid_type")return{message:V.defaultError};return{message:(X=Y!==null&&Y!==void 0?Y:Z)!==null&&X!==void 0?X:V.defaultError}},description:W}}class C9{get description(){return this._def.description}_getType(I){return cA(I.data)}_getOrReturnCtx(I,G){return G||{common:I.parent.common,data:I.data,parsedType:cA(I.data),schemaErrorMap:this._def.errorMap,path:I.path,parent:I.parent}}_processInputParams(I){return{status:new AG,ctx:{common:I.parent.common,data:I.data,parsedType:cA(I.data),schemaErrorMap:this._def.errorMap,path:I.path,parent:I.parent}}}_parseSync(I){let G=this._parse(I);if(Nm(G))throw new Error("Synchronous parse encountered promise.");return G}_parseAsync(I){let G=this._parse(I);return Promise.resolve(G)}parse(I,G){let Z=this.safeParse(I,G);if(Z.success)return Z.data;throw Z.error}safeParse(I,G){var Z;let d={common:{issues:[],async:(Z=G===null||G===void 0?void 0:G.async)!==null&&Z!==void 0?Z:!1,contextualErrorMap:G===null||G===void 0?void 0:G.errorMap},path:(G===null||G===void 0?void 0:G.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:cA(I)},W=this._parseSync({data:I,path:d.path,parent:d});return XF2(d,W)}"~validate"(I){var G,Z;let d={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:cA(I)};if(!this["~standard"].async)try{let W=this._parseSync({data:I,path:[],parent:d});return tQ(W)?{value:W.value}:{issues:d.common.issues}}catch(W){if((Z=(G=W===null||W===void 0?void 0:W.message)===null||G===void 0?void 0:G.toLowerCase())===null||Z===void 0?void 0:Z.includes("encountered"))this["~standard"].async=!0;d.common={issues:[],async:!0}}return this._parseAsync({data:I,path:[],parent:d}).then((W)=>tQ(W)?{value:W.value}:{issues:d.common.issues})}async parseAsync(I,G){let Z=await this.safeParseAsync(I,G);if(Z.success)return Z.data;throw Z.error}async safeParseAsync(I,G){let Z={common:{issues:[],contextualErrorMap:G===null||G===void 0?void 0:G.errorMap,async:!0},path:(G===null||G===void 0?void 0:G.path)||[],schemaErrorMap:this._def.errorMap,parent:null,data:I,parsedType:cA(I)},d=this._parse({data:I,path:Z.path,parent:Z}),W=await(Nm(d)?d:Promise.resolve(d));return XF2(Z,W)}refine(I,G){let Z=(d)=>{if(typeof G==="string"||typeof G==="undefined")return{message:G};else if(typeof G==="function")return G(d);else return G};return this._refinement((d,W)=>{let B=I(d),w=()=>W.addIssue({code:i0.custom,...Z(d)});if(typeof Promise!=="undefined"&&B instanceof Promise)return B.then((V)=>{if(!V)return w(),!1;else return!0});if(!B)return w(),!1;else return!0})}refinement(I,G){return this._refinement((Z,d)=>{if(!I(Z))return d.addIssue(typeof G==="function"?G(Z,d):G),!1;else return!0})}_refinement(I){return new QB({schema:this,typeName:a0.ZodEffects,effect:{type:"refinement",refinement:I}})}superRefine(I){return this._refinement(I)}constructor(I){this.spa=this.safeParseAsync,this._def=I,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:(G)=>this["~validate"](G)}}optional(){return od.create(this,this._def)}nullable(){return pA.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return dV.create(this)}promise(){return dN.create(this,this._def)}or(I){return nv.create([this,I],this._def)}and(I){return av.create(this,I,this._def)}transform(I){return new QB({...d9(this._def),schema:this,typeName:a0.ZodEffects,effect:{type:"transform",transform:I}})}default(I){let G=typeof I==="function"?I:()=>I;return new ev({...d9(this._def),innerType:this,defaultValue:G,typeName:a0.ZodDefault})}brand(){return new Vt({typeName:a0.ZodBranded,type:this,...d9(this._def)})}catch(I){let G=typeof I==="function"?I:()=>I;return new tv({...d9(this._def),innerType:this,catchValue:G,typeName:a0.ZodCatch})}describe(I){return new this.constructor({...this._def,description:I})}pipe(I){return vm.create(this,I)}readonly(){return IE.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var IW3=/^c[^\s-]{8,}$/i,GW3=/^[0-9a-z]+$/,ZW3=/^[0-9A-HJKMNP-TV-Z]{26}$/i,dW3=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,WW3=/^[a-z0-9_-]{21}$/i,BW3=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,wW3=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,VW3=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,CW3="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Xq1,XW3=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,YW3=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,AW3=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,_W3=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,HW3=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,DW3=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,HF2="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",FW3=new RegExp(`^${HF2}$`);function DF2(I){let G="([01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d";if(I.precision)G=`${G}\\.\\d{${I.precision}}`;else if(I.precision==null)G=`${G}(\\.\\d+)?`;return G}function JW3(I){return new RegExp(`^${DF2(I)}$`)}function FF2(I){let G=`${HF2}T${DF2(I)}`,Z=[];if(Z.push(I.local?"Z?":"Z"),I.offset)Z.push("([+-]\\d{2}:?\\d{2})");return G=`${G}(${Z.join("|")})`,new RegExp(`^${G}$`)}function KW3(I,G){if((G==="v4"||!G)&&XW3.test(I))return!0;if((G==="v6"||!G)&&AW3.test(I))return!0;return!1}function zW3(I,G){if(!BW3.test(I))return!1;try{let[Z]=I.split("."),d=Z.replace(/-/g,"+").replace(/_/g,"/").padEnd(Z.length+(4-Z.length%4)%4,"="),W=JSON.parse(atob(d));if(typeof W!=="object"||W===null)return!1;if(!W.typ||!W.alg)return!1;if(G&&W.alg!==G)return!1;return!0}catch(Z){return!1}}function QW3(I,G){if((G==="v4"||!G)&&YW3.test(I))return!0;if((G==="v6"||!G)&&_W3.test(I))return!0;return!1}class ZV extends C9{_parse(I){if(this._def.coerce)I.data=String(I.data);if(this._getType(I)!==R2.string){let W=this._getOrReturnCtx(I);return J2(W,{code:i0.invalid_type,expected:R2.string,received:W.parsedType}),L4}let Z=new AG,d=void 0;for(let W of this._def.checks)if(W.kind==="min"){if(I.data.length<W.value)d=this._getOrReturnCtx(I,d),J2(d,{code:i0.too_small,minimum:W.value,type:"string",inclusive:!0,exact:!1,message:W.message}),Z.dirty()}else if(W.kind==="max"){if(I.data.length>W.value)d=this._getOrReturnCtx(I,d),J2(d,{code:i0.too_big,maximum:W.value,type:"string",inclusive:!0,exact:!1,message:W.message}),Z.dirty()}else if(W.kind==="length"){let B=I.data.length>W.value,w=I.data.length<W.value;if(B||w){if(d=this._getOrReturnCtx(I,d),B)J2(d,{code:i0.too_big,maximum:W.value,type:"string",inclusive:!0,exact:!0,message:W.message});else if(w)J2(d,{code:i0.too_small,minimum:W.value,type:"string",inclusive:!0,exact:!0,message:W.message});Z.dirty()}}else if(W.kind==="email"){if(!VW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"email",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="emoji"){if(!Xq1)Xq1=new RegExp(CW3,"u");if(!Xq1.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"emoji",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="uuid"){if(!dW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"uuid",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="nanoid"){if(!WW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"nanoid",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="cuid"){if(!IW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"cuid",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="cuid2"){if(!GW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"cuid2",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="ulid"){if(!ZW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"ulid",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="url")try{new URL(I.data)}catch(B){d=this._getOrReturnCtx(I,d),J2(d,{validation:"url",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="regex"){if(W.regex.lastIndex=0,!W.regex.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"regex",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="trim")I.data=I.data.trim();else if(W.kind==="includes"){if(!I.data.includes(W.value,W.position))d=this._getOrReturnCtx(I,d),J2(d,{code:i0.invalid_string,validation:{includes:W.value,position:W.position},message:W.message}),Z.dirty()}else if(W.kind==="toLowerCase")I.data=I.data.toLowerCase();else if(W.kind==="toUpperCase")I.data=I.data.toUpperCase();else if(W.kind==="startsWith"){if(!I.data.startsWith(W.value))d=this._getOrReturnCtx(I,d),J2(d,{code:i0.invalid_string,validation:{startsWith:W.value},message:W.message}),Z.dirty()}else if(W.kind==="endsWith"){if(!I.data.endsWith(W.value))d=this._getOrReturnCtx(I,d),J2(d,{code:i0.invalid_string,validation:{endsWith:W.value},message:W.message}),Z.dirty()}else if(W.kind==="datetime"){if(!FF2(W).test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{code:i0.invalid_string,validation:"datetime",message:W.message}),Z.dirty()}else if(W.kind==="date"){if(!FW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{code:i0.invalid_string,validation:"date",message:W.message}),Z.dirty()}else if(W.kind==="time"){if(!JW3(W).test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{code:i0.invalid_string,validation:"time",message:W.message}),Z.dirty()}else if(W.kind==="duration"){if(!wW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"duration",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="ip"){if(!KW3(I.data,W.version))d=this._getOrReturnCtx(I,d),J2(d,{validation:"ip",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="jwt"){if(!zW3(I.data,W.alg))d=this._getOrReturnCtx(I,d),J2(d,{validation:"jwt",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="cidr"){if(!QW3(I.data,W.version))d=this._getOrReturnCtx(I,d),J2(d,{validation:"cidr",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="base64"){if(!HW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"base64",code:i0.invalid_string,message:W.message}),Z.dirty()}else if(W.kind==="base64url"){if(!DW3.test(I.data))d=this._getOrReturnCtx(I,d),J2(d,{validation:"base64url",code:i0.invalid_string,message:W.message}),Z.dirty()}else x9.assertNever(W);return{status:Z.value,value:I.data}}_regex(I,G,Z){return this.refinement((d)=>I.test(d),{validation:G,code:i0.invalid_string,...c2.errToObj(Z)})}_addCheck(I){return new ZV({...this._def,checks:[...this._def.checks,I]})}email(I){return this._addCheck({kind:"email",...c2.errToObj(I)})}url(I){return this._addCheck({kind:"url",...c2.errToObj(I)})}emoji(I){return this._addCheck({kind:"emoji",...c2.errToObj(I)})}uuid(I){return this._addCheck({kind:"uuid",...c2.errToObj(I)})}nanoid(I){return this._addCheck({kind:"nanoid",...c2.errToObj(I)})}cuid(I){return this._addCheck({kind:"cuid",...c2.errToObj(I)})}cuid2(I){return this._addCheck({kind:"cuid2",...c2.errToObj(I)})}ulid(I){return this._addCheck({kind:"ulid",...c2.errToObj(I)})}base64(I){return this._addCheck({kind:"base64",...c2.errToObj(I)})}base64url(I){return this._addCheck({kind:"base64url",...c2.errToObj(I)})}jwt(I){return this._addCheck({kind:"jwt",...c2.errToObj(I)})}ip(I){return this._addCheck({kind:"ip",...c2.errToObj(I)})}cidr(I){return this._addCheck({kind:"cidr",...c2.errToObj(I)})}datetime(I){var G,Z;if(typeof I==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:I});return this._addCheck({kind:"datetime",precision:typeof(I===null||I===void 0?void 0:I.precision)==="undefined"?null:I===null||I===void 0?void 0:I.precision,offset:(G=I===null||I===void 0?void 0:I.offset)!==null&&G!==void 0?G:!1,local:(Z=I===null||I===void 0?void 0:I.local)!==null&&Z!==void 0?Z:!1,...c2.errToObj(I===null||I===void 0?void 0:I.message)})}date(I){return this._addCheck({kind:"date",message:I})}time(I){if(typeof I==="string")return this._addCheck({kind:"time",precision:null,message:I});return this._addCheck({kind:"time",precision:typeof(I===null||I===void 0?void 0:I.precision)==="undefined"?null:I===null||I===void 0?void 0:I.precision,...c2.errToObj(I===null||I===void 0?void 0:I.message)})}duration(I){return this._addCheck({kind:"duration",...c2.errToObj(I)})}regex(I,G){return this._addCheck({kind:"regex",regex:I,...c2.errToObj(G)})}includes(I,G){return this._addCheck({kind:"includes",value:I,position:G===null||G===void 0?void 0:G.position,...c2.errToObj(G===null||G===void 0?void 0:G.message)})}startsWith(I,G){return this._addCheck({kind:"startsWith",value:I,...c2.errToObj(G)})}endsWith(I,G){return this._addCheck({kind:"endsWith",value:I,...c2.errToObj(G)})}min(I,G){return this._addCheck({kind:"min",value:I,...c2.errToObj(G)})}max(I,G){return this._addCheck({kind:"max",value:I,...c2.errToObj(G)})}length(I,G){return this._addCheck({kind:"length",value:I,...c2.errToObj(G)})}nonempty(I){return this.min(1,c2.errToObj(I))}trim(){return new ZV({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new ZV({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new ZV({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((I)=>I.kind==="datetime")}get isDate(){return!!this._def.checks.find((I)=>I.kind==="date")}get isTime(){return!!this._def.checks.find((I)=>I.kind==="time")}get isDuration(){return!!this._def.checks.find((I)=>I.kind==="duration")}get isEmail(){return!!this._def.checks.find((I)=>I.kind==="email")}get isURL(){return!!this._def.checks.find((I)=>I.kind==="url")}get isEmoji(){return!!this._def.checks.find((I)=>I.kind==="emoji")}get isUUID(){return!!this._def.checks.find((I)=>I.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((I)=>I.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((I)=>I.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((I)=>I.kind==="cuid2")}get isULID(){return!!this._def.checks.find((I)=>I.kind==="ulid")}get isIP(){return!!this._def.checks.find((I)=>I.kind==="ip")}get isCIDR(){return!!this._def.checks.find((I)=>I.kind==="cidr")}get isBase64(){return!!this._def.checks.find((I)=>I.kind==="base64")}get isBase64url(){return!!this._def.checks.find((I)=>I.kind==="base64url")}get minLength(){let I=null;for(let G of this._def.checks)if(G.kind==="min"){if(I===null||G.value>I)I=G.value}return I}get maxLength(){let I=null;for(let G of this._def.checks)if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return I}}ZV.create=(I)=>{var G;return new ZV({checks:[],typeName:a0.ZodString,coerce:(G=I===null||I===void 0?void 0:I.coerce)!==null&&G!==void 0?G:!1,...d9(I)})};function NW3(I,G){let Z=(I.toString().split(".")[1]||"").length,d=(G.toString().split(".")[1]||"").length,W=Z>d?Z:d,B=parseInt(I.toFixed(W).replace(".","")),w=parseInt(G.toFixed(W).replace(".",""));return B%w/Math.pow(10,W)}class tF extends C9{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(I){if(this._def.coerce)I.data=Number(I.data);if(this._getType(I)!==R2.number){let W=this._getOrReturnCtx(I);return J2(W,{code:i0.invalid_type,expected:R2.number,received:W.parsedType}),L4}let Z=void 0,d=new AG;for(let W of this._def.checks)if(W.kind==="int"){if(!x9.isInteger(I.data))Z=this._getOrReturnCtx(I,Z),J2(Z,{code:i0.invalid_type,expected:"integer",received:"float",message:W.message}),d.dirty()}else if(W.kind==="min"){if(W.inclusive?I.data<W.value:I.data<=W.value)Z=this._getOrReturnCtx(I,Z),J2(Z,{code:i0.too_small,minimum:W.value,type:"number",inclusive:W.inclusive,exact:!1,message:W.message}),d.dirty()}else if(W.kind==="max"){if(W.inclusive?I.data>W.value:I.data>=W.value)Z=this._getOrReturnCtx(I,Z),J2(Z,{code:i0.too_big,maximum:W.value,type:"number",inclusive:W.inclusive,exact:!1,message:W.message}),d.dirty()}else if(W.kind==="multipleOf"){if(NW3(I.data,W.value)!==0)Z=this._getOrReturnCtx(I,Z),J2(Z,{code:i0.not_multiple_of,multipleOf:W.value,message:W.message}),d.dirty()}else if(W.kind==="finite"){if(!Number.isFinite(I.data))Z=this._getOrReturnCtx(I,Z),J2(Z,{code:i0.not_finite,message:W.message}),d.dirty()}else x9.assertNever(W);return{status:d.value,value:I.data}}gte(I,G){return this.setLimit("min",I,!0,c2.toString(G))}gt(I,G){return this.setLimit("min",I,!1,c2.toString(G))}lte(I,G){return this.setLimit("max",I,!0,c2.toString(G))}lt(I,G){return this.setLimit("max",I,!1,c2.toString(G))}setLimit(I,G,Z,d){return new tF({...this._def,checks:[...this._def.checks,{kind:I,value:G,inclusive:Z,message:c2.toString(d)}]})}_addCheck(I){return new tF({...this._def,checks:[...this._def.checks,I]})}int(I){return this._addCheck({kind:"int",message:c2.toString(I)})}positive(I){return this._addCheck({kind:"min",value:0,inclusive:!1,message:c2.toString(I)})}negative(I){return this._addCheck({kind:"max",value:0,inclusive:!1,message:c2.toString(I)})}nonpositive(I){return this._addCheck({kind:"max",value:0,inclusive:!0,message:c2.toString(I)})}nonnegative(I){return this._addCheck({kind:"min",value:0,inclusive:!0,message:c2.toString(I)})}multipleOf(I,G){return this._addCheck({kind:"multipleOf",value:I,message:c2.toString(G)})}finite(I){return this._addCheck({kind:"finite",message:c2.toString(I)})}safe(I){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:c2.toString(I)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:c2.toString(I)})}get minValue(){let I=null;for(let G of this._def.checks)if(G.kind==="min"){if(I===null||G.value>I)I=G.value}return I}get maxValue(){let I=null;for(let G of this._def.checks)if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return I}get isInt(){return!!this._def.checks.find((I)=>I.kind==="int"||I.kind==="multipleOf"&&x9.isInteger(I.value))}get isFinite(){let I=null,G=null;for(let Z of this._def.checks)if(Z.kind==="finite"||Z.kind==="int"||Z.kind==="multipleOf")return!0;else if(Z.kind==="min"){if(G===null||Z.value>G)G=Z.value}else if(Z.kind==="max"){if(I===null||Z.value<I)I=Z.value}return Number.isFinite(G)&&Number.isFinite(I)}}tF.create=(I)=>{return new tF({checks:[],typeName:a0.ZodNumber,coerce:(I===null||I===void 0?void 0:I.coerce)||!1,...d9(I)})};class IJ extends C9{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(I){if(this._def.coerce)try{I.data=BigInt(I.data)}catch(W){return this._getInvalidInput(I)}if(this._getType(I)!==R2.bigint)return this._getInvalidInput(I);let Z=void 0,d=new AG;for(let W of this._def.checks)if(W.kind==="min"){if(W.inclusive?I.data<W.value:I.data<=W.value)Z=this._getOrReturnCtx(I,Z),J2(Z,{code:i0.too_small,type:"bigint",minimum:W.value,inclusive:W.inclusive,message:W.message}),d.dirty()}else if(W.kind==="max"){if(W.inclusive?I.data>W.value:I.data>=W.value)Z=this._getOrReturnCtx(I,Z),J2(Z,{code:i0.too_big,type:"bigint",maximum:W.value,inclusive:W.inclusive,message:W.message}),d.dirty()}else if(W.kind==="multipleOf"){if(I.data%W.value!==BigInt(0))Z=this._getOrReturnCtx(I,Z),J2(Z,{code:i0.not_multiple_of,multipleOf:W.value,message:W.message}),d.dirty()}else x9.assertNever(W);return{status:d.value,value:I.data}}_getInvalidInput(I){let G=this._getOrReturnCtx(I);return J2(G,{code:i0.invalid_type,expected:R2.bigint,received:G.parsedType}),L4}gte(I,G){return this.setLimit("min",I,!0,c2.toString(G))}gt(I,G){return this.setLimit("min",I,!1,c2.toString(G))}lte(I,G){return this.setLimit("max",I,!0,c2.toString(G))}lt(I,G){return this.setLimit("max",I,!1,c2.toString(G))}setLimit(I,G,Z,d){return new IJ({...this._def,checks:[...this._def.checks,{kind:I,value:G,inclusive:Z,message:c2.toString(d)}]})}_addCheck(I){return new IJ({...this._def,checks:[...this._def.checks,I]})}positive(I){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:c2.toString(I)})}negative(I){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:c2.toString(I)})}nonpositive(I){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:c2.toString(I)})}nonnegative(I){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:c2.toString(I)})}multipleOf(I,G){return this._addCheck({kind:"multipleOf",value:I,message:c2.toString(G)})}get minValue(){let I=null;for(let G of this._def.checks)if(G.kind==="min"){if(I===null||G.value>I)I=G.value}return I}get maxValue(){let I=null;for(let G of this._def.checks)if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return I}}IJ.create=(I)=>{var G;return new IJ({checks:[],typeName:a0.ZodBigInt,coerce:(G=I===null||I===void 0?void 0:I.coerce)!==null&&G!==void 0?G:!1,...d9(I)})};class cv extends C9{_parse(I){if(this._def.coerce)I.data=Boolean(I.data);if(this._getType(I)!==R2.boolean){let Z=this._getOrReturnCtx(I);return J2(Z,{code:i0.invalid_type,expected:R2.boolean,received:Z.parsedType}),L4}return eG(I.data)}}cv.create=(I)=>{return new cv({typeName:a0.ZodBoolean,coerce:(I===null||I===void 0?void 0:I.coerce)||!1,...d9(I)})};class IN extends C9{_parse(I){if(this._def.coerce)I.data=new Date(I.data);if(this._getType(I)!==R2.date){let W=this._getOrReturnCtx(I);return J2(W,{code:i0.invalid_type,expected:R2.date,received:W.parsedType}),L4}if(isNaN(I.data.getTime())){let W=this._getOrReturnCtx(I);return J2(W,{code:i0.invalid_date}),L4}let Z=new AG,d=void 0;for(let W of this._def.checks)if(W.kind==="min"){if(I.data.getTime()<W.value)d=this._getOrReturnCtx(I,d),J2(d,{code:i0.too_small,message:W.message,inclusive:!0,exact:!1,minimum:W.value,type:"date"}),Z.dirty()}else if(W.kind==="max"){if(I.data.getTime()>W.value)d=this._getOrReturnCtx(I,d),J2(d,{code:i0.too_big,message:W.message,inclusive:!0,exact:!1,maximum:W.value,type:"date"}),Z.dirty()}else x9.assertNever(W);return{status:Z.value,value:new Date(I.data.getTime())}}_addCheck(I){return new IN({...this._def,checks:[...this._def.checks,I]})}min(I,G){return this._addCheck({kind:"min",value:I.getTime(),message:c2.toString(G)})}max(I,G){return this._addCheck({kind:"max",value:I.getTime(),message:c2.toString(G)})}get minDate(){let I=null;for(let G of this._def.checks)if(G.kind==="min"){if(I===null||G.value>I)I=G.value}return I!=null?new Date(I):null}get maxDate(){let I=null;for(let G of this._def.checks)if(G.kind==="max"){if(I===null||G.value<I)I=G.value}return I!=null?new Date(I):null}}IN.create=(I)=>{return new IN({checks:[],coerce:(I===null||I===void 0?void 0:I.coerce)||!1,typeName:a0.ZodDate,...d9(I)})};class qm extends C9{_parse(I){if(this._getType(I)!==R2.symbol){let Z=this._getOrReturnCtx(I);return J2(Z,{code:i0.invalid_type,expected:R2.symbol,received:Z.parsedType}),L4}return eG(I.data)}}qm.create=(I)=>{return new qm({typeName:a0.ZodSymbol,...d9(I)})};class pv extends C9{_parse(I){if(this._getType(I)!==R2.undefined){let Z=this._getOrReturnCtx(I);return J2(Z,{code:i0.invalid_type,expected:R2.undefined,received:Z.parsedType}),L4}return eG(I.data)}}pv.create=(I)=>{return new pv({typeName:a0.ZodUndefined,...d9(I)})};class iv extends C9{_parse(I){if(this._getType(I)!==R2.null){let Z=this._getOrReturnCtx(I);return J2(Z,{code:i0.invalid_type,expected:R2.null,received:Z.parsedType}),L4}return eG(I.data)}}iv.create=(I)=>{return new iv({typeName:a0.ZodNull,...d9(I)})};class GN extends C9{constructor(){super(...arguments);this._any=!0}_parse(I){return eG(I.data)}}GN.create=(I)=>{return new GN({typeName:a0.ZodAny,...d9(I)})};class eF extends C9{constructor(){super(...arguments);this._unknown=!0}_parse(I){return eG(I.data)}}eF.create=(I)=>{return new eF({typeName:a0.ZodUnknown,...d9(I)})};class vX extends C9{_parse(I){let G=this._getOrReturnCtx(I);return J2(G,{code:i0.invalid_type,expected:R2.never,received:G.parsedType}),L4}}vX.create=(I)=>{return new vX({typeName:a0.ZodNever,...d9(I)})};class gm extends C9{_parse(I){if(this._getType(I)!==R2.undefined){let Z=this._getOrReturnCtx(I);return J2(Z,{code:i0.invalid_type,expected:R2.void,received:Z.parsedType}),L4}return eG(I.data)}}gm.create=(I)=>{return new gm({typeName:a0.ZodVoid,...d9(I)})};class dV extends C9{_parse(I){let{ctx:G,status:Z}=this._processInputParams(I),d=this._def;if(G.parsedType!==R2.array)return J2(G,{code:i0.invalid_type,expected:R2.array,received:G.parsedType}),L4;if(d.exactLength!==null){let B=G.data.length>d.exactLength.value,w=G.data.length<d.exactLength.value;if(B||w)J2(G,{code:B?i0.too_big:i0.too_small,minimum:w?d.exactLength.value:void 0,maximum:B?d.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:d.exactLength.message}),Z.dirty()}if(d.minLength!==null){if(G.data.length<d.minLength.value)J2(G,{code:i0.too_small,minimum:d.minLength.value,type:"array",inclusive:!0,exact:!1,message:d.minLength.message}),Z.dirty()}if(d.maxLength!==null){if(G.data.length>d.maxLength.value)J2(G,{code:i0.too_big,maximum:d.maxLength.value,type:"array",inclusive:!0,exact:!1,message:d.maxLength.message}),Z.dirty()}if(G.common.async)return Promise.all([...G.data].map((B,w)=>{return d.type._parseAsync(new WV(G,B,G.path,w))})).then((B)=>{return AG.mergeArray(Z,B)});let W=[...G.data].map((B,w)=>{return d.type._parseSync(new WV(G,B,G.path,w))});return AG.mergeArray(Z,W)}get element(){return this._def.type}min(I,G){return new dV({...this._def,minLength:{value:I,message:c2.toString(G)}})}max(I,G){return new dV({...this._def,maxLength:{value:I,message:c2.toString(G)}})}length(I,G){return new dV({...this._def,exactLength:{value:I,message:c2.toString(G)}})}nonempty(I){return this.min(1,I)}}dV.create=(I,G)=>{return new dV({type:I,minLength:null,maxLength:null,exactLength:null,typeName:a0.ZodArray,...d9(G)})};function jv(I){if(I instanceof H6){let G={};for(let Z in I.shape){let d=I.shape[Z];G[Z]=od.create(jv(d))}return new H6({...I._def,shape:()=>G})}else if(I instanceof dV)return new dV({...I._def,type:jv(I.element)});else if(I instanceof od)return od.create(jv(I.unwrap()));else if(I instanceof pA)return pA.create(jv(I.unwrap()));else if(I instanceof EX)return EX.create(I.items.map((G)=>jv(G)));else return I}class H6 extends C9{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let I=this._def.shape(),G=x9.objectKeys(I);return this._cached={shape:I,keys:G}}_parse(I){if(this._getType(I)!==R2.object){let C=this._getOrReturnCtx(I);return J2(C,{code:i0.invalid_type,expected:R2.object,received:C.parsedType}),L4}let{status:Z,ctx:d}=this._processInputParams(I),{shape:W,keys:B}=this._getCached(),w=[];if(!(this._def.catchall instanceof vX&&this._def.unknownKeys==="strip")){for(let C in d.data)if(!B.includes(C))w.push(C)}let V=[];for(let C of B){let X=W[C],Y=d.data[C];V.push({key:{status:"valid",value:C},value:X._parse(new WV(d,Y,d.path,C)),alwaysSet:C in d.data})}if(this._def.catchall instanceof vX){let C=this._def.unknownKeys;if(C==="passthrough")for(let X of w)V.push({key:{status:"valid",value:X},value:{status:"valid",value:d.data[X]}});else if(C==="strict"){if(w.length>0)J2(d,{code:i0.unrecognized_keys,keys:w}),Z.dirty()}else if(C==="strip");else throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let C=this._def.catchall;for(let X of w){let Y=d.data[X];V.push({key:{status:"valid",value:X},value:C._parse(new WV(d,Y,d.path,X)),alwaysSet:X in d.data})}}if(d.common.async)return Promise.resolve().then(async()=>{let C=[];for(let X of V){let Y=await X.key,A=await X.value;C.push({key:Y,value:A,alwaysSet:X.alwaysSet})}return C}).then((C)=>{return AG.mergeObjectSync(Z,C)});else return AG.mergeObjectSync(Z,V)}get shape(){return this._def.shape()}strict(I){return c2.errToObj,new H6({...this._def,unknownKeys:"strict",...I!==void 0?{errorMap:(G,Z)=>{var d,W,B,w;let V=(B=(W=(d=this._def).errorMap)===null||W===void 0?void 0:W.call(d,G,Z).message)!==null&&B!==void 0?B:Z.defaultError;if(G.code==="unrecognized_keys")return{message:(w=c2.errToObj(I).message)!==null&&w!==void 0?w:V};return{message:V}}}:{}})}strip(){return new H6({...this._def,unknownKeys:"strip"})}passthrough(){return new H6({...this._def,unknownKeys:"passthrough"})}extend(I){return new H6({...this._def,shape:()=>({...this._def.shape(),...I})})}merge(I){return new H6({unknownKeys:I._def.unknownKeys,catchall:I._def.catchall,shape:()=>({...this._def.shape(),...I._def.shape()}),typeName:a0.ZodObject})}setKey(I,G){return this.augment({[I]:G})}catchall(I){return new H6({...this._def,catchall:I})}pick(I){let G={};return x9.objectKeys(I).forEach((Z)=>{if(I[Z]&&this.shape[Z])G[Z]=this.shape[Z]}),new H6({...this._def,shape:()=>G})}omit(I){let G={};return x9.objectKeys(this.shape).forEach((Z)=>{if(!I[Z])G[Z]=this.shape[Z]}),new H6({...this._def,shape:()=>G})}deepPartial(){return jv(this)}partial(I){let G={};return x9.objectKeys(this.shape).forEach((Z)=>{let d=this.shape[Z];if(I&&!I[Z])G[Z]=d;else G[Z]=d.optional()}),new H6({...this._def,shape:()=>G})}required(I){let G={};return x9.objectKeys(this.shape).forEach((Z)=>{if(I&&!I[Z])G[Z]=this.shape[Z];else{let W=this.shape[Z];while(W instanceof od)W=W._def.innerType;G[Z]=W}}),new H6({...this._def,shape:()=>G})}keyof(){return JF2(x9.objectKeys(this.shape))}}H6.create=(I,G)=>{return new H6({shape:()=>I,unknownKeys:"strip",catchall:vX.create(),typeName:a0.ZodObject,...d9(G)})};H6.strictCreate=(I,G)=>{return new H6({shape:()=>I,unknownKeys:"strict",catchall:vX.create(),typeName:a0.ZodObject,...d9(G)})};H6.lazycreate=(I,G)=>{return new H6({shape:I,unknownKeys:"strip",catchall:vX.create(),typeName:a0.ZodObject,...d9(G)})};class nv extends C9{_parse(I){let{ctx:G}=this._processInputParams(I),Z=this._def.options;function d(W){for(let w of W)if(w.result.status==="valid")return w.result;for(let w of W)if(w.result.status==="dirty")return G.common.issues.push(...w.ctx.common.issues),w.result;let B=W.map((w)=>new sd(w.ctx.common.issues));return J2(G,{code:i0.invalid_union,unionErrors:B}),L4}if(G.common.async)return Promise.all(Z.map(async(W)=>{let B={...G,common:{...G.common,issues:[]},parent:null};return{result:await W._parseAsync({data:G.data,path:G.path,parent:B}),ctx:B}})).then(d);else{let W=void 0,B=[];for(let V of Z){let C={...G,common:{...G.common,issues:[]},parent:null},X=V._parseSync({data:G.data,path:G.path,parent:C});if(X.status==="valid")return X;else if(X.status==="dirty"&&!W)W={result:X,ctx:C};if(C.common.issues.length)B.push(C.common.issues)}if(W)return G.common.issues.push(...W.ctx.common.issues),W.result;let w=B.map((V)=>new sd(V));return J2(G,{code:i0.invalid_union,unionErrors:w}),L4}}get options(){return this._def.options}}nv.create=(I,G)=>{return new nv({options:I,typeName:a0.ZodUnion,...d9(G)})};var hA=(I)=>{if(I instanceof rv)return hA(I.schema);else if(I instanceof QB)return hA(I.innerType());else if(I instanceof sv)return[I.value];else if(I instanceof GJ)return I.options;else if(I instanceof ov)return x9.objectValues(I.enum);else if(I instanceof ev)return hA(I._def.innerType);else if(I instanceof pv)return[void 0];else if(I instanceof iv)return[null];else if(I instanceof od)return[void 0,...hA(I.unwrap())];else if(I instanceof pA)return[null,...hA(I.unwrap())];else if(I instanceof Vt)return hA(I.unwrap());else if(I instanceof IE)return hA(I.unwrap());else if(I instanceof tv)return hA(I._def.innerType);else return[]};class wt extends C9{_parse(I){let{ctx:G}=this._processInputParams(I);if(G.parsedType!==R2.object)return J2(G,{code:i0.invalid_type,expected:R2.object,received:G.parsedType}),L4;let Z=this.discriminator,d=G.data[Z],W=this.optionsMap.get(d);if(!W)return J2(G,{code:i0.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[Z]}),L4;if(G.common.async)return W._parseAsync({data:G.data,path:G.path,parent:G});else return W._parseSync({data:G.data,path:G.path,parent:G})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(I,G,Z){let d=new Map;for(let W of G){let B=hA(W.shape[I]);if(!B.length)throw new Error(`A discriminator value for key \`${I}\` could not be extracted from all schema options`);for(let w of B){if(d.has(w))throw new Error(`Discriminator property ${String(I)} has duplicate value ${String(w)}`);d.set(w,W)}}return new wt({typeName:a0.ZodDiscriminatedUnion,discriminator:I,options:G,optionsMap:d,...d9(Z)})}}function Hq1(I,G){let Z=cA(I),d=cA(G);if(I===G)return{valid:!0,data:I};else if(Z===R2.object&&d===R2.object){let W=x9.objectKeys(G),B=x9.objectKeys(I).filter((V)=>W.indexOf(V)!==-1),w={...I,...G};for(let V of B){let C=Hq1(I[V],G[V]);if(!C.valid)return{valid:!1};w[V]=C.data}return{valid:!0,data:w}}else if(Z===R2.array&&d===R2.array){if(I.length!==G.length)return{valid:!1};let W=[];for(let B=0;B<I.length;B++){let w=I[B],V=G[B],C=Hq1(w,V);if(!C.valid)return{valid:!1};W.push(C.data)}return{valid:!0,data:W}}else if(Z===R2.date&&d===R2.date&&+I===+G)return{valid:!0,data:I};else return{valid:!1}}class av extends C9{_parse(I){let{status:G,ctx:Z}=this._processInputParams(I),d=(W,B)=>{if(Aq1(W)||Aq1(B))return L4;let w=Hq1(W.value,B.value);if(!w.valid)return J2(Z,{code:i0.invalid_intersection_types}),L4;if(_q1(W)||_q1(B))G.dirty();return{status:G.value,value:w.data}};if(Z.common.async)return Promise.all([this._def.left._parseAsync({data:Z.data,path:Z.path,parent:Z}),this._def.right._parseAsync({data:Z.data,path:Z.path,parent:Z})]).then(([W,B])=>d(W,B));else return d(this._def.left._parseSync({data:Z.data,path:Z.path,parent:Z}),this._def.right._parseSync({data:Z.data,path:Z.path,parent:Z}))}}av.create=(I,G,Z)=>{return new av({left:I,right:G,typeName:a0.ZodIntersection,...d9(Z)})};class EX extends C9{_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.parsedType!==R2.array)return J2(Z,{code:i0.invalid_type,expected:R2.array,received:Z.parsedType}),L4;if(Z.data.length<this._def.items.length)return J2(Z,{code:i0.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),L4;if(!this._def.rest&&Z.data.length>this._def.items.length)J2(Z,{code:i0.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),G.dirty();let W=[...Z.data].map((B,w)=>{let V=this._def.items[w]||this._def.rest;if(!V)return null;return V._parse(new WV(Z,B,Z.path,w))}).filter((B)=>!!B);if(Z.common.async)return Promise.all(W).then((B)=>{return AG.mergeArray(G,B)});else return AG.mergeArray(G,W)}get items(){return this._def.items}rest(I){return new EX({...this._def,rest:I})}}EX.create=(I,G)=>{if(!Array.isArray(I))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new EX({items:I,typeName:a0.ZodTuple,rest:null,...d9(G)})};class Um extends C9{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.parsedType!==R2.object)return J2(Z,{code:i0.invalid_type,expected:R2.object,received:Z.parsedType}),L4;let d=[],W=this._def.keyType,B=this._def.valueType;for(let w in Z.data)d.push({key:W._parse(new WV(Z,w,Z.path,w)),value:B._parse(new WV(Z,Z.data[w],Z.path,w)),alwaysSet:w in Z.data});if(Z.common.async)return AG.mergeObjectAsync(G,d);else return AG.mergeObjectSync(G,d)}get element(){return this._def.valueType}static create(I,G,Z){if(G instanceof C9)return new Um({keyType:I,valueType:G,typeName:a0.ZodRecord,...d9(Z)});return new Um({keyType:ZV.create(),valueType:I,typeName:a0.ZodRecord,...d9(G)})}}class fm extends C9{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.parsedType!==R2.map)return J2(Z,{code:i0.invalid_type,expected:R2.map,received:Z.parsedType}),L4;let d=this._def.keyType,W=this._def.valueType,B=[...Z.data.entries()].map(([w,V],C)=>{return{key:d._parse(new WV(Z,w,Z.path,[C,"key"])),value:W._parse(new WV(Z,V,Z.path,[C,"value"]))}});if(Z.common.async){let w=new Map;return Promise.resolve().then(async()=>{for(let V of B){let C=await V.key,X=await V.value;if(C.status==="aborted"||X.status==="aborted")return L4;if(C.status==="dirty"||X.status==="dirty")G.dirty();w.set(C.value,X.value)}return{status:G.value,value:w}})}else{let w=new Map;for(let V of B){let{key:C,value:X}=V;if(C.status==="aborted"||X.status==="aborted")return L4;if(C.status==="dirty"||X.status==="dirty")G.dirty();w.set(C.value,X.value)}return{status:G.value,value:w}}}}fm.create=(I,G,Z)=>{return new fm({valueType:G,keyType:I,typeName:a0.ZodMap,...d9(Z)})};class ZN extends C9{_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.parsedType!==R2.set)return J2(Z,{code:i0.invalid_type,expected:R2.set,received:Z.parsedType}),L4;let d=this._def;if(d.minSize!==null){if(Z.data.size<d.minSize.value)J2(Z,{code:i0.too_small,minimum:d.minSize.value,type:"set",inclusive:!0,exact:!1,message:d.minSize.message}),G.dirty()}if(d.maxSize!==null){if(Z.data.size>d.maxSize.value)J2(Z,{code:i0.too_big,maximum:d.maxSize.value,type:"set",inclusive:!0,exact:!1,message:d.maxSize.message}),G.dirty()}let W=this._def.valueType;function B(V){let C=new Set;for(let X of V){if(X.status==="aborted")return L4;if(X.status==="dirty")G.dirty();C.add(X.value)}return{status:G.value,value:C}}let w=[...Z.data.values()].map((V,C)=>W._parse(new WV(Z,V,Z.path,C)));if(Z.common.async)return Promise.all(w).then((V)=>B(V));else return B(w)}min(I,G){return new ZN({...this._def,minSize:{value:I,message:c2.toString(G)}})}max(I,G){return new ZN({...this._def,maxSize:{value:I,message:c2.toString(G)}})}size(I,G){return this.min(I,G).max(I,G)}nonempty(I){return this.min(1,I)}}ZN.create=(I,G)=>{return new ZN({valueType:I,minSize:null,maxSize:null,typeName:a0.ZodSet,...d9(G)})};class xv extends C9{constructor(){super(...arguments);this.validate=this.implement}_parse(I){let{ctx:G}=this._processInputParams(I);if(G.parsedType!==R2.function)return J2(G,{code:i0.invalid_type,expected:R2.function,received:G.parsedType}),L4;function Z(w,V){return Wt({data:w,path:G.path,errorMaps:[G.common.contextualErrorMap,G.schemaErrorMap,dt(),hv].filter((C)=>!!C),issueData:{code:i0.invalid_arguments,argumentsError:V}})}function d(w,V){return Wt({data:w,path:G.path,errorMaps:[G.common.contextualErrorMap,G.schemaErrorMap,dt(),hv].filter((C)=>!!C),issueData:{code:i0.invalid_return_type,returnTypeError:V}})}let W={errorMap:G.common.contextualErrorMap},B=G.data;if(this._def.returns instanceof dN){let w=this;return eG(async function(...V){let C=new sd([]),X=await w._def.args.parseAsync(V,W).catch((D)=>{throw C.addIssue(Z(V,D)),C}),Y=await Reflect.apply(B,this,X);return await w._def.returns._def.type.parseAsync(Y,W).catch((D)=>{throw C.addIssue(d(Y,D)),C})})}else{let w=this;return eG(function(...V){let C=w._def.args.safeParse(V,W);if(!C.success)throw new sd([Z(V,C.error)]);let X=Reflect.apply(B,this,C.data),Y=w._def.returns.safeParse(X,W);if(!Y.success)throw new sd([d(X,Y.error)]);return Y.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...I){return new xv({...this._def,args:EX.create(I).rest(eF.create())})}returns(I){return new xv({...this._def,returns:I})}implement(I){return this.parse(I)}strictImplement(I){return this.parse(I)}static create(I,G,Z){return new xv({args:I?I:EX.create([]).rest(eF.create()),returns:G||eF.create(),typeName:a0.ZodFunction,...d9(Z)})}}class rv extends C9{get schema(){return this._def.getter()}_parse(I){let{ctx:G}=this._processInputParams(I);return this._def.getter()._parse({data:G.data,path:G.path,parent:G})}}rv.create=(I,G)=>{return new rv({getter:I,typeName:a0.ZodLazy,...d9(G)})};class sv extends C9{_parse(I){if(I.data!==this._def.value){let G=this._getOrReturnCtx(I);return J2(G,{received:G.data,code:i0.invalid_literal,expected:this._def.value}),L4}return{status:"valid",value:I.data}}get value(){return this._def.value}}sv.create=(I,G)=>{return new sv({value:I,typeName:a0.ZodLiteral,...d9(G)})};function JF2(I,G){return new GJ({values:I,typeName:a0.ZodEnum,...d9(G)})}class GJ extends C9{constructor(){super(...arguments);zm.set(this,void 0)}_parse(I){if(typeof I.data!=="string"){let G=this._getOrReturnCtx(I),Z=this._def.values;return J2(G,{expected:x9.joinValues(Z),received:G.parsedType,code:i0.invalid_type}),L4}if(!Bt(this,zm,"f"))_F2(this,zm,new Set(this._def.values),"f");if(!Bt(this,zm,"f").has(I.data)){let G=this._getOrReturnCtx(I),Z=this._def.values;return J2(G,{received:G.data,code:i0.invalid_enum_value,options:Z}),L4}return eG(I.data)}get options(){return this._def.values}get enum(){let I={};for(let G of this._def.values)I[G]=G;return I}get Values(){let I={};for(let G of this._def.values)I[G]=G;return I}get Enum(){let I={};for(let G of this._def.values)I[G]=G;return I}extract(I,G=this._def){return GJ.create(I,{...this._def,...G})}exclude(I,G=this._def){return GJ.create(this.options.filter((Z)=>!I.includes(Z)),{...this._def,...G})}}zm=new WeakMap;GJ.create=JF2;class ov extends C9{constructor(){super(...arguments);Qm.set(this,void 0)}_parse(I){let G=x9.getValidEnumValues(this._def.values),Z=this._getOrReturnCtx(I);if(Z.parsedType!==R2.string&&Z.parsedType!==R2.number){let d=x9.objectValues(G);return J2(Z,{expected:x9.joinValues(d),received:Z.parsedType,code:i0.invalid_type}),L4}if(!Bt(this,Qm,"f"))_F2(this,Qm,new Set(x9.getValidEnumValues(this._def.values)),"f");if(!Bt(this,Qm,"f").has(I.data)){let d=x9.objectValues(G);return J2(Z,{received:Z.data,code:i0.invalid_enum_value,options:d}),L4}return eG(I.data)}get enum(){return this._def.values}}Qm=new WeakMap;ov.create=(I,G)=>{return new ov({values:I,typeName:a0.ZodNativeEnum,...d9(G)})};class dN extends C9{unwrap(){return this._def.type}_parse(I){let{ctx:G}=this._processInputParams(I);if(G.parsedType!==R2.promise&&G.common.async===!1)return J2(G,{code:i0.invalid_type,expected:R2.promise,received:G.parsedType}),L4;let Z=G.parsedType===R2.promise?G.data:Promise.resolve(G.data);return eG(Z.then((d)=>{return this._def.type.parseAsync(d,{path:G.path,errorMap:G.common.contextualErrorMap})}))}}dN.create=(I,G)=>{return new dN({type:I,typeName:a0.ZodPromise,...d9(G)})};class QB extends C9{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===a0.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(I){let{status:G,ctx:Z}=this._processInputParams(I),d=this._def.effect||null,W={addIssue:(B)=>{if(J2(Z,B),B.fatal)G.abort();else G.dirty()},get path(){return Z.path}};if(W.addIssue=W.addIssue.bind(W),d.type==="preprocess"){let B=d.transform(Z.data,W);if(Z.common.async)return Promise.resolve(B).then(async(w)=>{if(G.value==="aborted")return L4;let V=await this._def.schema._parseAsync({data:w,path:Z.path,parent:Z});if(V.status==="aborted")return L4;if(V.status==="dirty")return kv(V.value);if(G.value==="dirty")return kv(V.value);return V});else{if(G.value==="aborted")return L4;let w=this._def.schema._parseSync({data:B,path:Z.path,parent:Z});if(w.status==="aborted")return L4;if(w.status==="dirty")return kv(w.value);if(G.value==="dirty")return kv(w.value);return w}}if(d.type==="refinement"){let B=(w)=>{let V=d.refinement(w,W);if(Z.common.async)return Promise.resolve(V);if(V instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return w};if(Z.common.async===!1){let w=this._def.schema._parseSync({data:Z.data,path:Z.path,parent:Z});if(w.status==="aborted")return L4;if(w.status==="dirty")G.dirty();return B(w.value),{status:G.value,value:w.value}}else return this._def.schema._parseAsync({data:Z.data,path:Z.path,parent:Z}).then((w)=>{if(w.status==="aborted")return L4;if(w.status==="dirty")G.dirty();return B(w.value).then(()=>{return{status:G.value,value:w.value}})})}if(d.type==="transform")if(Z.common.async===!1){let B=this._def.schema._parseSync({data:Z.data,path:Z.path,parent:Z});if(!tQ(B))return B;let w=d.transform(B.value,W);if(w instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:G.value,value:w}}else return this._def.schema._parseAsync({data:Z.data,path:Z.path,parent:Z}).then((B)=>{if(!tQ(B))return B;return Promise.resolve(d.transform(B.value,W)).then((w)=>({status:G.value,value:w}))});x9.assertNever(d)}}QB.create=(I,G,Z)=>{return new QB({schema:I,typeName:a0.ZodEffects,effect:G,...d9(Z)})};QB.createWithPreprocess=(I,G,Z)=>{return new QB({schema:G,effect:{type:"preprocess",transform:I},typeName:a0.ZodEffects,...d9(Z)})};class od extends C9{_parse(I){if(this._getType(I)===R2.undefined)return eG(void 0);return this._def.innerType._parse(I)}unwrap(){return this._def.innerType}}od.create=(I,G)=>{return new od({innerType:I,typeName:a0.ZodOptional,...d9(G)})};class pA extends C9{_parse(I){if(this._getType(I)===R2.null)return eG(null);return this._def.innerType._parse(I)}unwrap(){return this._def.innerType}}pA.create=(I,G)=>{return new pA({innerType:I,typeName:a0.ZodNullable,...d9(G)})};class ev extends C9{_parse(I){let{ctx:G}=this._processInputParams(I),Z=G.data;if(G.parsedType===R2.undefined)Z=this._def.defaultValue();return this._def.innerType._parse({data:Z,path:G.path,parent:G})}removeDefault(){return this._def.innerType}}ev.create=(I,G)=>{return new ev({innerType:I,typeName:a0.ZodDefault,defaultValue:typeof G.default==="function"?G.default:()=>G.default,...d9(G)})};class tv extends C9{_parse(I){let{ctx:G}=this._processInputParams(I),Z={...G,common:{...G.common,issues:[]}},d=this._def.innerType._parse({data:Z.data,path:Z.path,parent:{...Z}});if(Nm(d))return d.then((W)=>{return{status:"valid",value:W.status==="valid"?W.value:this._def.catchValue({get error(){return new sd(Z.common.issues)},input:Z.data})}});else return{status:"valid",value:d.status==="valid"?d.value:this._def.catchValue({get error(){return new sd(Z.common.issues)},input:Z.data})}}removeCatch(){return this._def.innerType}}tv.create=(I,G)=>{return new tv({innerType:I,typeName:a0.ZodCatch,catchValue:typeof G.catch==="function"?G.catch:()=>G.catch,...d9(G)})};class Rm extends C9{_parse(I){if(this._getType(I)!==R2.nan){let Z=this._getOrReturnCtx(I);return J2(Z,{code:i0.invalid_type,expected:R2.nan,received:Z.parsedType}),L4}return{status:"valid",value:I.data}}}Rm.create=(I)=>{return new Rm({typeName:a0.ZodNaN,...d9(I)})};var qW3=Symbol("zod_brand");class Vt extends C9{_parse(I){let{ctx:G}=this._processInputParams(I),Z=G.data;return this._def.type._parse({data:Z,path:G.path,parent:G})}unwrap(){return this._def.type}}class vm extends C9{_parse(I){let{status:G,ctx:Z}=this._processInputParams(I);if(Z.common.async)return(async()=>{let W=await this._def.in._parseAsync({data:Z.data,path:Z.path,parent:Z});if(W.status==="aborted")return L4;if(W.status==="dirty")return G.dirty(),kv(W.value);else return this._def.out._parseAsync({data:W.value,path:Z.path,parent:Z})})();else{let d=this._def.in._parseSync({data:Z.data,path:Z.path,parent:Z});if(d.status==="aborted")return L4;if(d.status==="dirty")return G.dirty(),{status:"dirty",value:d.value};else return this._def.out._parseSync({data:d.value,path:Z.path,parent:Z})}}static create(I,G){return new vm({in:I,out:G,typeName:a0.ZodPipeline})}}class IE extends C9{_parse(I){let G=this._def.innerType._parse(I),Z=(d)=>{if(tQ(d))d.value=Object.freeze(d.value);return d};return Nm(G)?G.then((d)=>Z(d)):Z(G)}unwrap(){return this._def.innerType}}IE.create=(I,G)=>{return new IE({innerType:I,typeName:a0.ZodReadonly,...d9(G)})};function KF2(I,G={},Z){if(I)return GN.create().superRefine((d,W)=>{var B,w;if(!I(d)){let V=typeof G==="function"?G(d):typeof G==="string"?{message:G}:G,C=(w=(B=V.fatal)!==null&&B!==void 0?B:Z)!==null&&w!==void 0?w:!0,X=typeof V==="string"?{message:V}:V;W.addIssue({code:"custom",...X,fatal:C})}});return GN.create()}var gW3={object:H6.lazycreate},a0;(function(I){I.ZodString="ZodString",I.ZodNumber="ZodNumber",I.ZodNaN="ZodNaN",I.ZodBigInt="ZodBigInt",I.ZodBoolean="ZodBoolean",I.ZodDate="ZodDate",I.ZodSymbol="ZodSymbol",I.ZodUndefined="ZodUndefined",I.ZodNull="ZodNull",I.ZodAny="ZodAny",I.ZodUnknown="ZodUnknown",I.ZodNever="ZodNever",I.ZodVoid="ZodVoid",I.ZodArray="ZodArray",I.ZodObject="ZodObject",I.ZodUnion="ZodUnion",I.ZodDiscriminatedUnion="ZodDiscriminatedUnion",I.ZodIntersection="ZodIntersection",I.ZodTuple="ZodTuple",I.ZodRecord="ZodRecord",I.ZodMap="ZodMap",I.ZodSet="ZodSet",I.ZodFunction="ZodFunction",I.ZodLazy="ZodLazy",I.ZodLiteral="ZodLiteral",I.ZodEnum="ZodEnum",I.ZodEffects="ZodEffects",I.ZodNativeEnum="ZodNativeEnum",I.ZodOptional="ZodOptional",I.ZodNullable="ZodNullable",I.ZodDefault="ZodDefault",I.ZodCatch="ZodCatch",I.ZodPromise="ZodPromise",I.ZodBranded="ZodBranded",I.ZodPipeline="ZodPipeline",I.ZodReadonly="ZodReadonly"})(a0||(a0={}));var UW3=(I,G={message:`Input not instance of ${I.name}`})=>KF2((Z)=>Z instanceof I,G),zF2=ZV.create,QF2=tF.create,fW3=Rm.create,RW3=IJ.create,NF2=cv.create,vW3=IN.create,EW3=qm.create,MW3=pv.create,$W3=iv.create,SW3=GN.create,LW3=eF.create,PW3=vX.create,uW3=gm.create,yW3=dV.create,OW3=H6.create,mW3=H6.strictCreate,TW3=nv.create,bW3=wt.create,lW3=av.create,jW3=EX.create,kW3=Um.create,xW3=fm.create,hW3=ZN.create,cW3=xv.create,pW3=rv.create,iW3=sv.create,nW3=GJ.create,aW3=ov.create,rW3=dN.create,YF2=QB.create,sW3=od.create,oW3=pA.create,eW3=QB.createWithPreprocess,tW3=vm.create,IB3=()=>zF2().optional(),GB3=()=>QF2().optional(),ZB3=()=>NF2().optional(),dB3={string:(I)=>ZV.create({...I,coerce:!0}),number:(I)=>tF.create({...I,coerce:!0}),boolean:(I)=>cv.create({...I,coerce:!0}),bigint:(I)=>IJ.create({...I,coerce:!0}),date:(I)=>IN.create({...I,coerce:!0})},WB3=L4,e=Object.freeze({__proto__:null,defaultErrorMap:hv,setErrorMap:ed3,getErrorMap:dt,makeIssue:Wt,EMPTY_PATH:td3,addIssueToContext:J2,ParseStatus:AG,INVALID:L4,DIRTY:kv,OK:eG,isAborted:Aq1,isDirty:_q1,isValid:tQ,isAsync:Nm,get util(){return x9},get objectUtil(){return Yq1},ZodParsedType:R2,getParsedType:cA,ZodType:C9,datetimeRegex:FF2,ZodString:ZV,ZodNumber:tF,ZodBigInt:IJ,ZodBoolean:cv,ZodDate:IN,ZodSymbol:qm,ZodUndefined:pv,ZodNull:iv,ZodAny:GN,ZodUnknown:eF,ZodNever:vX,ZodVoid:gm,ZodArray:dV,ZodObject:H6,ZodUnion:nv,ZodDiscriminatedUnion:wt,ZodIntersection:av,ZodTuple:EX,ZodRecord:Um,ZodMap:fm,ZodSet:ZN,ZodFunction:xv,ZodLazy:rv,ZodLiteral:sv,ZodEnum:GJ,ZodNativeEnum:ov,ZodPromise:dN,ZodEffects:QB,ZodTransformer:QB,ZodOptional:od,ZodNullable:pA,ZodDefault:ev,ZodCatch:tv,ZodNaN:Rm,BRAND:qW3,ZodBranded:Vt,ZodPipeline:vm,ZodReadonly:IE,custom:KF2,Schema:C9,ZodSchema:C9,late:gW3,get ZodFirstPartyTypeKind(){return a0},coerce:dB3,any:SW3,array:yW3,bigint:RW3,boolean:NF2,date:vW3,discriminatedUnion:bW3,effect:YF2,enum:nW3,function:cW3,instanceof:UW3,intersection:lW3,lazy:pW3,literal:iW3,map:xW3,nan:fW3,nativeEnum:aW3,never:PW3,null:$W3,nullable:oW3,number:QF2,object:OW3,oboolean:ZB3,onumber:GB3,optional:sW3,ostring:IB3,pipeline:tW3,preprocess:eW3,promise:rW3,record:kW3,set:hW3,strictObject:mW3,string:zF2,symbol:EW3,transformer:YF2,tuple:jW3,undefined:MW3,union:TW3,unknown:LW3,void:uW3,NEVER:WB3,ZodIssueCode:i0,quotelessJson:od3,ZodError:sd});function qF2(){return{}}function gF2(I,G){let Z={type:"array"};if(I.type?._def&&I.type?._def?.typeName!==a0.ZodAny)Z.items=N4(I.type._def,{...G,currentPath:[...G.currentPath,"items"]});if(I.minLength)O9(Z,"minItems",I.minLength.value,I.minLength.message,G);if(I.maxLength)O9(Z,"maxItems",I.maxLength.value,I.maxLength.message,G);if(I.exactLength)O9(Z,"minItems",I.exactLength.value,I.exactLength.message,G),O9(Z,"maxItems",I.exactLength.value,I.exactLength.message,G);return Z}function UF2(I,G){let Z={type:"integer",format:"int64"};if(!I.checks)return Z;for(let d of I.checks)switch(d.kind){case"min":if(G.target==="jsonSchema7")if(d.inclusive)O9(Z,"minimum",d.value,d.message,G);else O9(Z,"exclusiveMinimum",d.value,d.message,G);else{if(!d.inclusive)Z.exclusiveMinimum=!0;O9(Z,"minimum",d.value,d.message,G)}break;case"max":if(G.target==="jsonSchema7")if(d.inclusive)O9(Z,"maximum",d.value,d.message,G);else O9(Z,"exclusiveMaximum",d.value,d.message,G);else{if(!d.inclusive)Z.exclusiveMaximum=!0;O9(Z,"maximum",d.value,d.message,G)}break;case"multipleOf":O9(Z,"multipleOf",d.value,d.message,G);break}return Z}function fF2(){return{type:"boolean"}}function Ct(I,G){return N4(I.type._def,G)}var RF2=(I,G)=>{return N4(I.innerType._def,G)};function Dq1(I,G,Z){let d=Z??G.dateStrategy;if(Array.isArray(d))return{anyOf:d.map((W,B)=>Dq1(I,G,W))};switch(d){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return BB3(I,G)}}var BB3=(I,G)=>{let Z={type:"integer",format:"unix-time"};if(G.target==="openApi3")return Z;for(let d of I.checks)switch(d.kind){case"min":O9(Z,"minimum",d.value,d.message,G);break;case"max":O9(Z,"maximum",d.value,d.message,G);break}return Z};function vF2(I,G){return{...N4(I.innerType._def,G),default:I.defaultValue()}}function EF2(I,G){return G.effectStrategy==="input"?N4(I.schema._def,G):{}}function MF2(I){return{type:"string",enum:Array.from(I.values)}}var wB3=(I)=>{if("type"in I&&I.type==="string")return!1;return"allOf"in I};function $F2(I,G){let Z=[N4(I.left._def,{...G,currentPath:[...G.currentPath,"allOf","0"]}),N4(I.right._def,{...G,currentPath:[...G.currentPath,"allOf","1"]})].filter((B)=>!!B),d=G.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,W=[];return Z.forEach((B)=>{if(wB3(B)){if(W.push(...B.allOf),B.unevaluatedProperties===void 0)d=void 0}else{let w=B;if("additionalProperties"in B&&B.additionalProperties===!1){let{additionalProperties:V,...C}=B;w=C}else d=void 0;W.push(w)}}),W.length?{allOf:W,...d}:void 0}function SF2(I,G){let Z=typeof I.value;if(Z!=="bigint"&&Z!=="number"&&Z!=="boolean"&&Z!=="string")return{type:Array.isArray(I.value)?"array":"object"};if(G.target==="openApi3")return{type:Z==="bigint"?"integer":Z,enum:[I.value]};return{type:Z==="bigint"?"integer":Z,const:I.value}}var Fq1=void 0,BV={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>{if(Fq1===void 0)Fq1=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u");return Fq1},uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function Xt(I,G){let Z={type:"string"};if(I.checks)for(let d of I.checks)switch(d.kind){case"min":O9(Z,"minLength",typeof Z.minLength==="number"?Math.max(Z.minLength,d.value):d.value,d.message,G);break;case"max":O9(Z,"maxLength",typeof Z.maxLength==="number"?Math.min(Z.maxLength,d.value):d.value,d.message,G);break;case"email":switch(G.emailStrategy){case"format:email":wV(Z,"email",d.message,G);break;case"format:idn-email":wV(Z,"idn-email",d.message,G);break;case"pattern:zod":tG(Z,BV.email,d.message,G);break}break;case"url":wV(Z,"uri",d.message,G);break;case"uuid":wV(Z,"uuid",d.message,G);break;case"regex":tG(Z,d.regex,d.message,G);break;case"cuid":tG(Z,BV.cuid,d.message,G);break;case"cuid2":tG(Z,BV.cuid2,d.message,G);break;case"startsWith":tG(Z,RegExp(`^${Jq1(d.value,G)}`),d.message,G);break;case"endsWith":tG(Z,RegExp(`${Jq1(d.value,G)}$`),d.message,G);break;case"datetime":wV(Z,"date-time",d.message,G);break;case"date":wV(Z,"date",d.message,G);break;case"time":wV(Z,"time",d.message,G);break;case"duration":wV(Z,"duration",d.message,G);break;case"length":O9(Z,"minLength",typeof Z.minLength==="number"?Math.max(Z.minLength,d.value):d.value,d.message,G),O9(Z,"maxLength",typeof Z.maxLength==="number"?Math.min(Z.maxLength,d.value):d.value,d.message,G);break;case"includes":{tG(Z,RegExp(Jq1(d.value,G)),d.message,G);break}case"ip":{if(d.version!=="v6")wV(Z,"ipv4",d.message,G);if(d.version!=="v4")wV(Z,"ipv6",d.message,G);break}case"base64url":tG(Z,BV.base64url,d.message,G);break;case"jwt":tG(Z,BV.jwt,d.message,G);break;case"cidr":{if(d.version!=="v6")tG(Z,BV.ipv4Cidr,d.message,G);if(d.version!=="v4")tG(Z,BV.ipv6Cidr,d.message,G);break}case"emoji":tG(Z,BV.emoji(),d.message,G);break;case"ulid":{tG(Z,BV.ulid,d.message,G);break}case"base64":{switch(G.base64Strategy){case"format:binary":{wV(Z,"binary",d.message,G);break}case"contentEncoding:base64":{O9(Z,"contentEncoding","base64",d.message,G);break}case"pattern:zod":{tG(Z,BV.base64,d.message,G);break}}break}case"nanoid":tG(Z,BV.nanoid,d.message,G);case"toLowerCase":case"toUpperCase":case"trim":break;default:((W)=>{})(d)}return Z}function Jq1(I,G){return G.patternStrategy==="escape"?CB3(I):I}var VB3=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function CB3(I){let G="";for(let Z=0;Z<I.length;Z++){if(!VB3.has(I[Z]))G+="\\";G+=I[Z]}return G}function wV(I,G,Z,d){if(I.format||I.anyOf?.some((W)=>W.format)){if(!I.anyOf)I.anyOf=[];if(I.format){if(I.anyOf.push({format:I.format,...I.errorMessage&&d.errorMessages&&{errorMessage:{format:I.errorMessage.format}}}),delete I.format,I.errorMessage){if(delete I.errorMessage.format,Object.keys(I.errorMessage).length===0)delete I.errorMessage}}I.anyOf.push({format:G,...Z&&d.errorMessages&&{errorMessage:{format:Z}}})}else O9(I,"format",G,Z,d)}function tG(I,G,Z,d){if(I.pattern||I.allOf?.some((W)=>W.pattern)){if(!I.allOf)I.allOf=[];if(I.pattern){if(I.allOf.push({pattern:I.pattern,...I.errorMessage&&d.errorMessages&&{errorMessage:{pattern:I.errorMessage.pattern}}}),delete I.pattern,I.errorMessage){if(delete I.errorMessage.pattern,Object.keys(I.errorMessage).length===0)delete I.errorMessage}}I.allOf.push({pattern:LF2(G,d),...Z&&d.errorMessages&&{errorMessage:{pattern:Z}}})}else O9(I,"pattern",LF2(G,d),Z,d)}function LF2(I,G){if(!G.applyRegexFlags||!I.flags)return I.source;let Z={i:I.flags.includes("i"),m:I.flags.includes("m"),s:I.flags.includes("s")},d=Z.i?I.source.toLowerCase():I.source,W="",B=!1,w=!1,V=!1;for(let C=0;C<d.length;C++){if(B){W+=d[C],B=!1;continue}if(Z.i){if(w){if(d[C].match(/[a-z]/)){if(V)W+=d[C],W+=`${d[C-2]}-${d[C]}`.toUpperCase(),V=!1;else if(d[C+1]==="-"&&d[C+2]?.match(/[a-z]/))W+=d[C],V=!0;else W+=`${d[C]}${d[C].toUpperCase()}`;continue}}else if(d[C].match(/[a-z]/)){W+=`[${d[C]}${d[C].toUpperCase()}]`;continue}}if(Z.m){if(d[C]==="^"){W+=`(^|(?<=[\r
|
|
537
537
|
]))`;continue}else if(d[C]==="$"){W+=`($|(?=[\r
|
|
538
538
|
]))`;continue}}if(Z.s&&d[C]==="."){W+=w?`${d[C]}\r
|
|
539
539
|
`:`[${d[C]}\r
|
|
@@ -806,7 +806,7 @@ Here are useful slash commands users can run to interact with you:
|
|
|
806
806
|
- /help: Get help with using ${b2}
|
|
807
807
|
- /compact: Compact and continue the conversation. This is useful if the conversation is reaching the context limit
|
|
808
808
|
There are additional slash commands and flags available to the user. If the user asks about ${b2} functionality, always run \`claude -h\` with ${l4.name} to see supported commands and flags. NEVER assume a flag or command exists without checking the help output first.
|
|
809
|
-
To give feedback, users should ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
809
|
+
To give feedback, users should ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.ISSUES_EXPLAINER}.
|
|
810
810
|
|
|
811
811
|
# Memory
|
|
812
812
|
If the current working directory contains a file called CLAUDE.md, it will be automatically added to your context. This file serves multiple purposes:
|
|
@@ -914,7 +914,7 @@ Model: ${I}
|
|
|
914
914
|
Notes:
|
|
915
915
|
1. IMPORTANT: You should be concise, direct, and to the point, since your responses will be displayed on a command line interface. Answer the user's question directly, without elaboration, explanation, or details. One word answers are best. Avoid introductions, conclusions, and explanations. You MUST avoid text before/after your response, such as "The answer is <answer>.", "Here is the content of the file..." or "Based on the information provided, the answer is..." or "Here is what I will do next...".
|
|
916
916
|
2. When relevant, share file names and code snippets relevant to the query
|
|
917
|
-
3. Any file paths you return in your final response MUST be absolute. DO NOT use relative paths.`,`${await V$2()}`]}var NB="API Error",AU1="Prompt is too long",_U1="Credit balance is too low",R11="Invalid API key · Please run /login",FJ="(no content)",QN=!process.env.DISABLE_PROMPT_CACHING,Y$2=0.8,A$2=4,rq3=1,sq3=0.08,oq3=3,eq3=15,tq3=3.75,Ig3=0.3,XU1=1;function v11(){return{user_id:`${Uh()}_${Sd}`}}var Gg3=10,Zg3=500;function dg3(I,G){if(G){let Z=parseInt(G,10);if(!isNaN(Z))return Z*1000}return Math.min(Zg3*Math.pow(2,I-1),32000)}function Wg3(I){if(I.message?.includes('"type":"overloaded_error"'))return!1;let G=I.headers?.["x-should-retry"];if(G==="true")return!0;if(G==="false")return!1;if(I instanceof nC)return!0;if(!I.status)return!1;if(I.status===408)return!0;if(I.status===409)return!0;if(I.status===429)return!0;if(I.status&&I.status>=500)return!0;return!1}async function E11(I,G={}){let Z=G.maxRetries??Gg3,d;for(let W=1;W<=Z+1;W++)try{return await I(W)}catch(B){if(d=B,W>Z||!(B instanceof w5)||!Wg3(B))throw B;let w=B.headers?.["retry-after"]??null,V=dg3(W,w);console.log(` ⎿ ${T0.red(`API ${B.name} (${B.message}) · Retrying in ${Math.round(V/1000)} seconds… (attempt ${W}/${Z})`)}`),B0("tengu_api_retry",{attempt:String(W),delayMs:String(V),error:B.message,status:String(B.status),provider:E6?"bedrock":M6?"vertex":"1p"}),await new Promise((C)=>setTimeout(C,V))}throw d}function Bg3(){return process.env.HTTPS_PROXY||process.env.HTTP_PROXY?new X$2.HttpsProxyAgent(process.env.HTTPS_PROXY||process.env.HTTP_PROXY||""):void 0}async function _$2(I){let G=await M11({apiKey:I,maxRetries:3,model:Cw});try{return await E11(async()=>{let Z=Cw,d=[{role:"user",content:"test"}];return await G.messages.create({model:Z,max_tokens:1,messages:d,temperature:0,metadata:v11()}),!0},{maxRetries:2}),!0}catch(Z){if(W0(Z),Z instanceof Error&&Z.message.includes('{"type":"error","error":{"type":"authentication_error","message":"invalid x-api-key"}}'))return!1;throw Z}}async function HU1(I){let G=Date.now(),Z;for await(let W of I)if(W.type==="message_start")Z=Date.now()-G;return{...await I.finalMessage(),ttftMs:Z}}var zN=null;function M11({apiKey:I,maxRetries:G=0,model:Z}){if(zN)return zN;let d=pp1(Z),W={"x-app":"cli","User-Agent":lv};if(process.env.ANTHROPIC_AUTH_TOKEN)W.Authorization=`Bearer ${process.env.ANTHROPIC_AUTH_TOKEN}`;let B={defaultHeaders:W,maxRetries:G,timeout:parseInt(process.env.API_TIMEOUT_MS||String(60000),10)};if(E6){let w=new qe(B);return zN=w,w}if(M6){let w={...B,region:d||process.env.CLOUD_ML_REGION||"us-east5"},V=new It(w);return zN=V,V}return zN=new xW0({apiKey:I||Lw(),dangerouslyAllowBrowser:!0,httpAgent:Bg3(),...B}),zN}function H$2(){zN=null}function wg3(I,G=!1){if(G)if(typeof I.message.content==="string")return{role:"user",content:[{type:"text",text:I.message.content,...QN?{cache_control:{type:"ephemeral"}}:{}}]};else return{role:"user",content:I.message.content.map((Z,d)=>({...Z,...d===I.message.content.length-1?QN?{cache_control:{type:"ephemeral"}}:{}:{}}))};return{role:"user",content:I.message.content}}function Vg3(I,G=!1){if(G)if(typeof I.message.content==="string")return{role:"assistant",content:[{type:"text",text:I.message.content,...QN?{cache_control:{type:"ephemeral"}}:{}}]};else return{role:"assistant",content:I.message.content.map((Z,d)=>({...Z,...d===I.message.content.length-1&&Z.type!=="thinking"&&Z.type!=="redacted_thinking"?QN?{cache_control:{type:"ephemeral"}}:{}:{}}))};return{role:"assistant",content:I.message.content}}function f11(I){let G=I[0]||"",Z=I.slice(1);return[G,Z.join(`
|
|
917
|
+
3. Any file paths you return in your final response MUST be absolute. DO NOT use relative paths.`,`${await V$2()}`]}var NB="API Error",AU1="Prompt is too long",_U1="Credit balance is too low",R11="Invalid API key · Please run /login",FJ="(no content)",QN=!process.env.DISABLE_PROMPT_CACHING,Y$2=0.8,A$2=4,rq3=1,sq3=0.08,oq3=3,eq3=15,tq3=3.75,Ig3=0.3,XU1=1;function v11(){return{user_id:`${Uh()}_${Sd}`}}var Gg3=10,Zg3=500;function dg3(I,G){if(G){let Z=parseInt(G,10);if(!isNaN(Z))return Z*1000}return Math.min(Zg3*Math.pow(2,I-1),32000)}function Wg3(I){if(I.message?.includes('"type":"overloaded_error"'))return!1;let G=I.headers?.["x-should-retry"];if(G==="true")return!0;if(G==="false")return!1;if(I instanceof nC)return!0;if(!I.status)return!1;if(I.status===408)return!0;if(I.status===409)return!0;if(I.status===429)return!0;if(I.status&&I.status>=500)return!0;return!1}async function E11(I,G={}){let Z=G.maxRetries??Gg3,d;for(let W=1;W<=Z+1;W++)try{return await I(W)}catch(B){if(d=B,W>Z||!(B instanceof w5)||!Wg3(B))throw B;let w=B.headers?.["retry-after"]??null,V=dg3(W,w);console.log(` ⎿ ${T0.red(`API ${B.name} (${B.message}) · Retrying in ${Math.round(V/1000)} seconds… (attempt ${W}/${Z})`)}`),B0("tengu_api_retry",{attempt:String(W),delayMs:String(V),error:B.message,status:String(B.status),provider:E6?"bedrock":M6?"vertex":"1p"}),await new Promise((C)=>setTimeout(C,V))}throw d}function Bg3(){return process.env.HTTPS_PROXY||process.env.HTTP_PROXY?new X$2.HttpsProxyAgent(process.env.HTTPS_PROXY||process.env.HTTP_PROXY||""):void 0}async function _$2(I){let G=await M11({apiKey:I,maxRetries:3,model:Cw});try{return await E11(async()=>{let Z=Cw,d=[{role:"user",content:"test"}];return await G.messages.create({model:Z,max_tokens:1,messages:d,temperature:0,metadata:v11()}),!0},{maxRetries:2}),!0}catch(Z){if(W0(Z),Z instanceof Error&&Z.message.includes('{"type":"error","error":{"type":"authentication_error","message":"invalid x-api-key"}}'))return!1;throw Z}}async function HU1(I){let G=Date.now(),Z;for await(let W of I)if(W.type==="message_start")Z=Date.now()-G;return{...await I.finalMessage(),ttftMs:Z}}var zN=null;function M11({apiKey:I,maxRetries:G=0,model:Z}){if(zN)return zN;let d=pp1(Z),W={"x-app":"cli","User-Agent":lv};if(process.env.ANTHROPIC_AUTH_TOKEN)W.Authorization=`Bearer ${process.env.ANTHROPIC_AUTH_TOKEN}`,W["Proxy-Authentication"]=`Bearer ${process.env.ANTHROPIC_AUTH_TOKEN}`;let B={defaultHeaders:W,maxRetries:G,timeout:parseInt(process.env.API_TIMEOUT_MS||String(60000),10)};if(E6){let w=new qe(B);return zN=w,w}if(M6){let w={...B,region:d||process.env.CLOUD_ML_REGION||"us-east5"},V=new It(w);return zN=V,V}return zN=new xW0({apiKey:I||Lw(),dangerouslyAllowBrowser:!0,httpAgent:Bg3(),...B}),zN}function H$2(){zN=null}function wg3(I,G=!1){if(G)if(typeof I.message.content==="string")return{role:"user",content:[{type:"text",text:I.message.content,...QN?{cache_control:{type:"ephemeral"}}:{}}]};else return{role:"user",content:I.message.content.map((Z,d)=>({...Z,...d===I.message.content.length-1?QN?{cache_control:{type:"ephemeral"}}:{}:{}}))};return{role:"user",content:I.message.content}}function Vg3(I,G=!1){if(G)if(typeof I.message.content==="string")return{role:"assistant",content:[{type:"text",text:I.message.content,...QN?{cache_control:{type:"ephemeral"}}:{}}]};else return{role:"assistant",content:I.message.content.map((Z,d)=>({...Z,...d===I.message.content.length-1&&Z.type!=="thinking"&&Z.type!=="redacted_thinking"?QN?{cache_control:{type:"ephemeral"}}:{}:{}}))};return{role:"assistant",content:I.message.content}}function f11(I){let G=I[0]||"",Z=I.slice(1);return[G,Z.join(`
|
|
918
918
|
`)].filter(Boolean)}async function VT(I,G,Z,d,W,B){return await Vq1(I,()=>Cg3(I,G,Z,d,W,B))}function D$2(I,G){if(Object.entries(G).length===0)return I;return[...I,`
|
|
919
919
|
As you answer the user's questions, you can use the following context:
|
|
920
920
|
`,...Object.entries(G).map(([Z,d])=>`<context name="${Z}">${d}</context>`)]}async function Cg3(I,G,Z,d,W,B){let w=await M11({maxRetries:0,model:B.model});if(B.prependCLISysprompt){let[l]=f11(G);B0("tengu_sysprompt_block",{snippet:l?.slice(0,20),length:String(l?.length??0),hash:l?aq3("sha256").update(l).digest("hex"):""}),G=[w$2(),...G]}let V=f11(G).map((l)=>({...QN?{cache_control:{type:"ephemeral"}}:{},text:l,type:"text"})),C=await Promise.all(d.map(async(l)=>({name:l.name,description:await l.prompt({permissionMode:B.permissionMode}),input_schema:"inputJSONSchema"in l&&l.inputJSONSchema?l.inputJSONSchema:WN(l.inputSchema)}))),X=await cx(),Y=QN&&X.length>0;B0("tengu_api_query",{model:B.model,messagesLength:String(JSON.stringify([...V,...I,...C]).length),temperature:String(XU1),provider:E6?"bedrock":M6?"vertex":"1p",...Y?{betas:X.join(",")}:{}});let A=Date.now(),D=Date.now(),J=0,K,z=void 0;try{K=await E11(async(l)=>{J=l,D=Date.now();let V1=w.beta.messages.stream({model:B.model,max_tokens:Math.max(Z+1,_g3(B.model)),messages:Xg3(I),temperature:XU1,system:V,tools:C,tool_choice:B.toolChoice,...Y?{betas:X}:{},metadata:v11(),...Z>0?{thinking:{budget_tokens:Z,type:"enabled"}}:{}},{signal:W});return z=V1,HU1(V1)})}catch(l){return W0(l),B0("tengu_api_error",{model:B.model,error:l instanceof Error?l.message:String(l),status:l instanceof w5?String(l.status):void 0,messageCount:String(I.length),messageTokens:String(xA(I)),durationMs:String(Date.now()-D),durationMsIncludingRetries:String(Date.now()-A),attempt:String(J),provider:E6?"bedrock":M6?"vertex":"1p",requestId:z?.request_id??void 0}),DU1(l)}let Q=Date.now()-D,U=Date.now()-A;B0("tengu_api_success",{model:B.model,messageCount:String(I.length),messageTokens:String(xA(I)),inputTokens:String(K.usage.input_tokens),outputTokens:String(K.usage.output_tokens),cachedInputTokens:String(K.usage.cache_read_input_tokens??0),uncachedInputTokens:String(K.usage.cache_creation_input_tokens??0),durationMs:String(Q),durationMsIncludingRetries:String(U),attempt:String(J),ttftMs:String(K.ttftMs),provider:E6?"bedrock":M6?"vertex":"1p",requestId:z?.request_id??void 0,stop_reason:K.stop_reason??void 0});let M=K.usage.input_tokens,S=K.usage.output_tokens,L=K.usage.cache_read_input_tokens??0,P=K.usage.cache_creation_input_tokens??0,m=M/1e6*oq3+S/1e6*eq3+L/1e6*Ig3+P/1e6*tq3;return fS(m,U,Q),{message:{...K,content:$11(K.content),usage:{...K.usage,cache_read_input_tokens:K.usage.cache_read_input_tokens??0,cache_creation_input_tokens:K.usage.cache_creation_input_tokens??0}},costUSD:m,durationMs:Q,surface:"both",type:"assistant",uuid:YU1()}}function DU1(I){if(I instanceof Error&&I.message.includes("prompt is too long"))return SE({content:AU1,surface:"both"});if(I instanceof Error&&I.message.includes("Your credit balance is too low"))return SE({content:_U1,surface:"both"});if(I instanceof Error&&I.message.toLowerCase().includes("x-api-key"))return SE({content:R11,surface:"both"});if(I instanceof Error)return SE({content:`${NB}: ${I.message}`,surface:"both"});return SE({content:NB,surface:"both"})}function Xg3(I){return I.map((G,Z)=>{return G.type==="user"?wg3(G,Z>I.length-3):Vg3(G,Z>I.length-3)})}async function Yg3({systemPrompt:I,userPrompt:G,assistantPrompt:Z,signal:d}){let W=await M11({maxRetries:0,model:Cw}),B=Cw,w=[{role:"user",content:G},...Z?[{role:"assistant",content:Z}]:[]],V=f11(I).map((P)=>({...QN?{cache_control:{type:"ephemeral"}}:{},text:P,type:"text"}));B0("tengu_api_query",{model:B,messagesLength:String(JSON.stringify([...V,...w]).length),provider:E6?"bedrock":M6?"vertex":"1p"});let C=0,X=Date.now(),Y=Date.now(),A,D=void 0;try{A=await E11(async(P)=>{C=P,X=Date.now();let m=W.beta.messages.stream({model:B,max_tokens:512,messages:w,system:V,temperature:0,metadata:v11(),stream:!0},{signal:d});return D=m,await HU1(m)})}catch(P){return W0(P),B0("tengu_api_error",{error:P instanceof Error?P.message:String(P),status:P instanceof w5?String(P.status):void 0,model:Cw,messageCount:String(Z?2:1),durationMs:String(Date.now()-X),durationMsIncludingRetries:String(Date.now()-Y),attempt:String(C),provider:E6?"bedrock":M6?"vertex":"1p",requestId:D?.request_id??void 0}),DU1(P)}let J=A.usage.input_tokens,K=A.usage.output_tokens,z=A.usage.cache_read_input_tokens??0,Q=A.usage.cache_creation_input_tokens??0,U=J/1e6*Y$2+K/1e6*A$2+z/1e6*sq3+Q/1e6*rq3,M=Date.now()-X,S=Date.now()-Y;fS(U,S,M);let L={durationMs:M,message:{...A,content:$11(A.content)},costUSD:U,surface:"both",uuid:YU1(),type:"assistant"};return B0("tengu_api_success",{model:Cw,messageCount:String(Z?2:1),inputTokens:String(J),outputTokens:String(A.usage.output_tokens),cachedInputTokens:String(A.usage.cache_read_input_tokens??0),uncachedInputTokens:String(A.usage.cache_creation_input_tokens??0),durationMs:String(M),durationMsIncludingRetries:String(S),ttftMs:String(A.ttftMs),provider:E6?"bedrock":M6?"vertex":"1p",requestId:D?.request_id??void 0,stop_reason:A.stop_reason??void 0}),L}async function Ag3({systemPrompt:I,userPrompt:G,assistantPrompt:Z,signal:d}){let W=await M11({maxRetries:0,model:Cw}),B=Cw,w=[{role:"user",content:G},...Z?[{role:"assistant",content:Z}]:[]];B0("tengu_api_query",{model:B,messagesLength:String(JSON.stringify([{systemPrompt:I},...w]).length),provider:E6?"bedrock":M6?"vertex":"1p"});let V=0,C=Date.now(),X=Date.now(),Y,A=void 0;try{Y=await E11(async(M)=>{V=M,C=Date.now();let S=W.beta.messages.stream({model:B,max_tokens:512,messages:w,system:f11(I).map((L)=>({type:"text",text:L})),temperature:0,metadata:v11(),stream:!0},{signal:d});return A=S,await HU1(S)})}catch(M){return W0(M),B0("tengu_api_error",{error:M instanceof Error?M.message:String(M),status:M instanceof w5?String(M.status):void 0,model:Cw,messageCount:String(Z?2:1),durationMs:String(Date.now()-C),durationMsIncludingRetries:String(Date.now()-X),attempt:String(V),provider:E6?"bedrock":M6?"vertex":"1p",requestId:A?.request_id??void 0}),DU1(M)}let D=Date.now()-C,J=Date.now()-X;B0("tengu_api_success",{model:Cw,messageCount:String(Z?2:1),inputTokens:String(Y.usage.input_tokens),outputTokens:String(Y.usage.output_tokens),durationMs:String(D),durationMsIncludingRetries:String(J),attempt:String(V),provider:E6?"bedrock":M6?"vertex":"1p",requestId:A?.request_id??void 0,stop_reason:Y.stop_reason??void 0});let K=Y.usage.input_tokens,z=Y.usage.output_tokens,Q=K/1e6*Y$2+z/1e6*A$2;return fS(Q,J,D),{durationMs:D,message:{...Y,content:$11(Y.content),usage:{...Y.usage,cache_read_input_tokens:0,cache_creation_input_tokens:0}},costUSD:Q,surface:"both",type:"assistant",uuid:YU1()}}async function oZ({systemPrompt:I=[],userPrompt:G,assistantPrompt:Z,enablePromptCaching:d=!1,signal:W}){return await Vq1([h9({content:I.map((B)=>({type:"text",text:B})),surface:"both"}),h9({content:G,surface:"both"})],()=>{return d?Yg3({systemPrompt:I,userPrompt:G,assistantPrompt:Z,signal:W}):Ag3({systemPrompt:I,userPrompt:G,assistantPrompt:Z,signal:W})})}function _g3(I){if(I.includes("3-5"))return 8192;if(I.includes("haiku"))return 8192;if(I.includes("opus"))return 4096;return 20000}import{existsSync as RU1,mkdirSync as mg3,readFileSync as $$2,statSync as S$2}from"fs";var m9=A1(u1(),1);import{EOL as Tg3}from"os";import{dirname as bg3,extname as lg3,isAbsolute as vU1,relative as EU1,resolve as MU1,sep as jg3}from"path";var t3=A1(u1(),1);function vB(I,G){return I.flatMap((Z,d)=>d?[G(d),Z]:[Z])}var YT=A1(u1(),1);var F6=A1(u1(),1);var F$2=A1(u1(),1);function J$2({patch:I,dim:G,width:Z,overrideTheme:d}){return F$2.useMemo(()=>Hg3(I.lines,I.oldStart,Z,G,d),[I.lines,I.oldStart,Z,G,d]).map((B,w)=>F6.createElement(p,{key:w},B))}function Hg3(I,G,Z,d,W){let B=e1(W),w=Dg3(I.map((X)=>{if(X.startsWith("+"))return{code:" "+X.slice(1),i:0,type:"add"};if(X.startsWith("-"))return{code:" "+X.slice(1),i:0,type:"remove"};return{code:X,i:0,type:"nochange"}}),G),C=Math.max(...w.map(({i:X})=>X)).toString().length;return w.flatMap(({type:X,code:Y,i:A})=>{return Zt(Y,Z-C).map((J,K)=>{let z=`${X}-${A}-${K}`;switch(X){case"add":return F6.createElement(O,{key:z},F6.createElement(FU1,{i:K===0?A:void 0,width:C}),F6.createElement(O,{color:W?B.text:void 0,backgroundColor:d?B.diff.addedDimmed:B.diff.added,dimColor:d},J));case"remove":return F6.createElement(O,{key:z},F6.createElement(FU1,{i:K===0?A:void 0,width:C}),F6.createElement(O,{color:W?B.text:void 0,backgroundColor:d?B.diff.removedDimmed:B.diff.removed,dimColor:d},J));case"nochange":return F6.createElement(O,{key:z},F6.createElement(FU1,{i:K===0?A:void 0,width:C}),F6.createElement(O,{color:W?B.text:void 0,dimColor:d},J))}})})}function FU1({i:I,width:G}){return F6.createElement(O,{color:e1().secondaryText},I!==void 0?I.toString().padStart(G):" ".repeat(G)," ")}function Dg3(I,G){let Z=G,d=[],W=[...I];while(W.length>0){let{code:B,type:w}=W.shift(),V={code:B,type:w,i:Z};switch(w){case"nochange":Z++,d.push(V);break;case"add":Z++,d.push(V);break;case"remove":{d.push(V);let C=0;while(W[0]?.type==="remove"){Z++;let{code:X,type:Y}=W.shift(),A={code:X,type:Y,i:Z};d.push(A),C++}Z-=C;break}}}return d}var H4=A1(u1(),1);function FV(){}FV.prototype={diff:function I(G,Z){var d,W=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},B=W.callback;if(typeof W==="function")B=W,W={};var w=this;function V(L){if(L=w.postProcess(L,W),B)return setTimeout(function(){B(L)},0),!0;else return L}G=this.castInput(G,W),Z=this.castInput(Z,W),G=this.removeEmpty(this.tokenize(G,W)),Z=this.removeEmpty(this.tokenize(Z,W));var C=Z.length,X=G.length,Y=1,A=C+X;if(W.maxEditLength!=null)A=Math.min(A,W.maxEditLength);var D=(d=W.timeout)!==null&&d!==void 0?d:1/0,J=Date.now()+D,K=[{oldPos:-1,lastComponent:void 0}],z=this.extractCommon(K[0],Z,G,0,W);if(K[0].oldPos+1>=X&&z+1>=C)return V(K$2(w,K[0].lastComponent,Z,G,w.useLongestToken));var Q=-1/0,U=1/0;function M(){for(var L=Math.max(Q,-Y);L<=Math.min(U,Y);L+=2){var P=void 0,m=K[L-1],l=K[L+1];if(m)K[L-1]=void 0;var V1=!1;if(l){var k=l.oldPos-L;V1=l&&0<=k&&k<C}var l1=m&&m.oldPos+1<X;if(!V1&&!l1){K[L]=void 0;continue}if(!l1||V1&&m.oldPos<l.oldPos)P=w.addToPath(l,!0,!1,0,W);else P=w.addToPath(m,!1,!0,1,W);if(z=w.extractCommon(P,Z,G,L,W),P.oldPos+1>=X&&z+1>=C)return V(K$2(w,P.lastComponent,Z,G,w.useLongestToken));else{if(K[L]=P,P.oldPos+1>=X)U=Math.min(U,L-1);if(z+1>=C)Q=Math.max(Q,L+1)}}Y++}if(B)(function L(){setTimeout(function(){if(Y>A||Date.now()>J)return B();if(!M())L()},0)})();else while(Y<=A&&Date.now()<=J){var S=M();if(S)return S}},addToPath:function I(G,Z,d,W,B){var w=G.lastComponent;if(w&&!B.oneChangePerToken&&w.added===Z&&w.removed===d)return{oldPos:G.oldPos+W,lastComponent:{count:w.count+1,added:Z,removed:d,previousComponent:w.previousComponent}};else return{oldPos:G.oldPos+W,lastComponent:{count:1,added:Z,removed:d,previousComponent:w}}},extractCommon:function I(G,Z,d,W,B){var w=Z.length,V=d.length,C=G.oldPos,X=C-W,Y=0;while(X+1<w&&C+1<V&&this.equals(d[C+1],Z[X+1],B))if(X++,C++,Y++,B.oneChangePerToken)G.lastComponent={count:1,previousComponent:G.lastComponent,added:!1,removed:!1};if(Y&&!B.oneChangePerToken)G.lastComponent={count:Y,previousComponent:G.lastComponent,added:!1,removed:!1};return G.oldPos=C,X},equals:function I(G,Z,d){if(d.comparator)return d.comparator(G,Z);else return G===Z||d.ignoreCase&&G.toLowerCase()===Z.toLowerCase()},removeEmpty:function I(G){var Z=[];for(var d=0;d<G.length;d++)if(G[d])Z.push(G[d]);return Z},castInput:function I(G){return G},tokenize:function I(G){return Array.from(G)},join:function I(G){return G.join("")},postProcess:function I(G){return G}};function K$2(I,G,Z,d,W){var B=[],w;while(G)B.push(G),w=G.previousComponent,delete G.previousComponent,G=w;B.reverse();var V=0,C=B.length,X=0,Y=0;for(;V<C;V++){var A=B[V];if(!A.removed){if(!A.added&&W){var D=Z.slice(X,X+A.count);D=D.map(function(J,K){var z=d[Y+K];return z.length>J.length?z:J}),A.value=I.join(D)}else A.value=I.join(Z.slice(X,X+A.count));if(X+=A.count,!A.added)Y+=A.count}else A.value=I.join(d.slice(Y,Y+A.count)),Y+=A.count}return B}var Pr5=new FV;function z$2(I,G){var Z;for(Z=0;Z<I.length&&Z<G.length;Z++)if(I[Z]!=G[Z])return I.slice(0,Z);return I.slice(0,Z)}function Q$2(I,G){var Z;if(!I||!G||I[I.length-1]!=G[G.length-1])return"";for(Z=0;Z<I.length&&Z<G.length;Z++)if(I[I.length-(Z+1)]!=G[G.length-(Z+1)])return I.slice(-Z);return I.slice(-Z)}function KU1(I,G,Z){if(I.slice(0,G.length)!=G)throw Error("string ".concat(JSON.stringify(I)," doesn't start with prefix ").concat(JSON.stringify(G),"; this is a bug"));return Z+I.slice(G.length)}function zU1(I,G,Z){if(!G)return I+Z;if(I.slice(-G.length)!=G)throw Error("string ".concat(JSON.stringify(I)," doesn't end with suffix ").concat(JSON.stringify(G),"; this is a bug"));return I.slice(0,-G.length)+Z}function CT(I,G){return KU1(I,G,"")}function S11(I,G){return zU1(I,G,"")}function N$2(I,G){return G.slice(0,Fg3(I,G))}function Fg3(I,G){var Z=0;if(I.length>G.length)Z=I.length-G.length;var d=G.length;if(I.length<G.length)d=I.length;var W=Array(d),B=0;W[0]=0;for(var w=1;w<d;w++){if(G[w]==G[B])W[w]=W[B];else W[w]=B;while(B>0&&G[w]!=G[B])B=W[B];if(G[w]==G[B])B++}B=0;for(var V=Z;V<I.length;V++){while(B>0&&I[V]!=G[B])B=W[B];if(I[V]==G[B])B++}return B}var L11="a-zA-Z0-9_\\u{C0}-\\u{FF}\\u{D8}-\\u{F6}\\u{F8}-\\u{2C6}\\u{2C8}-\\u{2D7}\\u{2DE}-\\u{2FF}\\u{1E00}-\\u{1EFF}",Jg3=new RegExp("[".concat(L11,"]+|\\s+|[^").concat(L11,"]"),"ug"),P11=new FV;P11.equals=function(I,G,Z){if(Z.ignoreCase)I=I.toLowerCase(),G=G.toLowerCase();return I.trim()===G.trim()};P11.tokenize=function(I){var G=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Z;if(G.intlSegmenter){if(G.intlSegmenter.resolvedOptions().granularity!="word")throw new Error('The segmenter passed must have a granularity of "word"');Z=Array.from(G.intlSegmenter.segment(I),function(B){return B.segment})}else Z=I.match(Jg3)||[];var d=[],W=null;return Z.forEach(function(B){if(/\s/.test(B))if(W==null)d.push(B);else d.push(d.pop()+B);else if(/\s/.test(W))if(d[d.length-1]==W)d.push(d.pop()+B);else d.push(W+B);else d.push(B);W=B}),d};P11.join=function(I){return I.map(function(G,Z){if(Z==0)return G;else return G.replace(/^\s+/,"")}).join("")};P11.postProcess=function(I,G){if(!I||G.oneChangePerToken)return I;var Z=null,d=null,W=null;if(I.forEach(function(B){if(B.added)d=B;else if(B.removed)W=B;else{if(d||W)q$2(Z,W,d,B);Z=B,d=null,W=null}}),d||W)q$2(Z,W,d,null);return I};function q$2(I,G,Z,d){if(G&&Z){var W=G.value.match(/^\s*/)[0],B=G.value.match(/\s*$/)[0],w=Z.value.match(/^\s*/)[0],V=Z.value.match(/\s*$/)[0];if(I){var C=z$2(W,w);I.value=zU1(I.value,w,C),G.value=CT(G.value,C),Z.value=CT(Z.value,C)}if(d){var X=Q$2(B,V);d.value=KU1(d.value,V,X),G.value=S11(G.value,X),Z.value=S11(Z.value,X)}}else if(Z){if(I)Z.value=Z.value.replace(/^\s*/,"");if(d)d.value=d.value.replace(/^\s*/,"")}else if(I&&d){var Y=d.value.match(/^\s*/)[0],A=G.value.match(/^\s*/)[0],D=G.value.match(/\s*$/)[0],J=z$2(Y,A);G.value=CT(G.value,J);var K=Q$2(CT(Y,J),D);G.value=S11(G.value,K),d.value=KU1(d.value,Y,K),I.value=zU1(I.value,Y,Y.slice(0,Y.length-K.length))}else if(d){var z=d.value.match(/^\s*/)[0],Q=G.value.match(/\s*$/)[0],U=N$2(Q,z);G.value=S11(G.value,U)}else if(I){var M=I.value.match(/\s*$/)[0],S=G.value.match(/^\s*/)[0],L=N$2(M,S);G.value=CT(G.value,L)}}var f$2=new FV;f$2.tokenize=function(I){var G=new RegExp("(\\r?\\n)|[".concat(L11,"]+|[^\\S\\n\\r]+|[^").concat(L11,"]"),"ug");return I.match(G)||[]};function R$2(I,G,Z){return f$2.diff(I,G,Z)}var u11=new FV;u11.tokenize=function(I,G){if(G.stripTrailingCr)I=I.replace(/\r\n/g,`
|
|
@@ -1018,13 +1018,13 @@ Please follow these guidelines:
|
|
|
1018
1018
|
- IMPORTANT: Your response MUST be a single tool use for the FileWriteTool`;function zU3(){if(!yU1(T11))return"";return dS2(T11,"utf-8")}async function QU3(){try{let I=await BS2();if(I.length>ZS2){let G=I.slice(ZS2);for(let Z of G)try{FU3(Z)}catch(d){W0(`Failed to delete old snapshot ${Z}: ${d}`)}}}catch(I){W0(`Error pruning old snapshots: ${I}`)}}function NU3(){let I=zU3();if(!I.trim())return null;try{let G=new Date().toISOString().replace(/:/g,"-"),Z=OU1(m11,`${G}_CLAUDE.md`);if(!yU1(IS2(Z)))DU3(IS2(Z),{recursive:!0});return eY(Z,I,"utf-8","LF"),QU3(),Z}catch(G){return W0(`Error saving memory snapshot: ${G}`),null}}async function WS2(){if(!uU1||Date.now()-uU1>KU3)return;try{let I=await qU3();GS2?.addNotification?.(I,{color:"remember"})}catch(I){GS2?.addNotification?.(`Error undoing memory: ${I}`,{color:"error"})}}async function qU3(){try{let I=await BS2();if(I.length===0)return"No memory snapshots found to restore from.";let G=I[0];if(!G)return"Failed to get a valid snapshot to restore.";let Z=dS2(G,"utf-8");return NU3(),eY(T11,Z,"utf-8","LF"),uU1=null,"Memory undone. Use /edit_memory to review your memories."}catch(I){return W0(`Error restoring memory snapshot: ${I}`),`Failed to restore memory from snapshot: ${I}`}}async function BS2(){if(!yU1(m11))return[];try{let G=(await t$2.readdir(m11)).filter((d)=>d.endsWith("_CLAUDE.md")).map((d)=>OU1(m11,d));return(await Promise.all(G.map(async(d)=>{let W=await t$2.stat(d);return{file:d,mtime:W.mtime}}))).sort((d,W)=>W.mtime.getTime()-d.mtime.getTime()).map((d)=>d.file)}catch(I){return W0(`Error getting memory snapshots: ${I}`),[]}}var gU3="[Image pasted]";function wS2(I){return function(G){return(new Map(I).get(G)??(()=>{}))(G)}}function b11({value:I,onChange:G,onSubmit:Z,onExit:d,onExitMessage:W,onMessage:B,onHistoryUp:w,onHistoryDown:V,onHistoryReset:C,mask:X="",multiline:Y=!1,cursorChar:A,invert:D,columns:J,onImagePaste:K,disableCursorMovementForUpDownKeys:z=!1,externalOffset:Q,onOffsetChange:U}){let M=Q,S=U,L=d8.fromText(I,J,M),[P,m]=VS2.useState(null);function l(){if(!P)return;clearTimeout(P),m(null),B?.(!1)}let V1=rz((J0)=>{l(),W?.(J0,"Ctrl-C")},()=>d?.(),()=>{if(I)G(""),C?.()}),k=rz((J0)=>{l(),B?.(!!I&&J0,"Press Escape again to clear")},()=>{if(I)G("")});function l1(){return d8.fromText("",J,0)}let H1=rz((J0)=>W?.(J0,"Ctrl-D"),()=>d?.());function $1(){if(l(),L.text==="")return H1(),L;return L.del()}function F1(){let J0=zW0();if(J0===null){if(process.platform!=="darwin")return L;return B?.(!0,KW0),l(),m(setTimeout(()=>{B?.(!1)},4000)),L}return K?.(J0),L.insert(gU3)}function u(){return WS2(),L}let I1=wS2([["a",()=>L.startOfLine()],["b",()=>L.left()],["c",V1],["d",$1],["e",()=>L.endOfLine()],["f",()=>L.right()],["h",()=>L.backspace()],["k",()=>L.deleteToLineEnd()],["l",()=>l1()],["n",()=>N0()],["p",()=>a1()],["u",()=>L.deleteToLineStart()],["v",F1],["w",()=>L.deleteWordBefore()]]),m1=wS2([["b",()=>L.prevWord()],["f",()=>L.nextWord()],["d",()=>L.deleteWordAfter()]]);function j1(J0){if(Y&&L.offset>0&&L.text[L.offset-1]==="\\")return H20(),L.backspace().insert(`
|
|
1019
1019
|
`);if(J0.meta)return L.insert(`
|
|
1020
1020
|
`);Z?.(I)}function a1(){if(z)return w?.(),L;let J0=L.up();if(J0.equals(L))w?.();return J0}function N0(){if(z)return V?.(),L;let J0=L.down();if(J0.equals(L))V?.();return J0}function f0(J0){switch(!0){case J0.escape:return k;case(J0.leftArrow&&(J0.ctrl||J0.meta||J0.fn)):return()=>L.prevWord();case(J0.rightArrow&&(J0.ctrl||J0.meta||J0.fn)):return()=>L.nextWord();case J0.backspace:return J0.meta?()=>L.deleteWordBefore():()=>L.backspace();case J0.delete:return J0.meta?()=>L.deleteToLineEnd():()=>L.del();case J0.ctrl:return I1;case J0.home:return()=>L.startOfLine();case J0.end:return()=>L.endOfLine();case J0.pageDown:return()=>L.endOfLine();case J0.pageUp:return()=>L.startOfLine();case J0.meta:return m1;case J0.return:return()=>j1(J0);case J0.tab:if(z)return()=>L;return u;case J0.upArrow:return a1;case J0.downArrow:return N0;case J0.leftArrow:return()=>L.left();case J0.rightArrow:return()=>L.right()}return function(G1){switch(!0){case(G1=="\x1B[H"||G1=="\x1B[1~"):return L.startOfLine();case(G1=="\x1B[F"||G1=="\x1B[4~"):return L.endOfLine();default:return L.insert(G1.replace(/\r/g,`
|
|
1021
|
-
`))}}}function G2(J0,G1){let f1=f0(G1)(J0);if(f1){if(!L.equals(f1)){if(S(f1.offset),L.text!=f1.text)G(f1.text)}}}return{onInput:G2,renderedValue:L.render(A,X,D),offset:M,setOffset:S}}var AS2=A1(u1(),1);var CS2=A1(u1(),1);function XS2({onPaste:I,onInput:G}){let[Z,d]=CS2.default.useState({chunks:[],timeoutId:null}),W=(w)=>{if(w)clearTimeout(w);return setTimeout(()=>{d(({chunks:V})=>{let C=V.join("");return Promise.resolve().then(()=>I&&I(C)),{chunks:[],timeoutId:null}})},100)};return{wrappedOnInput:(w,V)=>{if(I&&(w.length>800||Z.timeoutId)){d(({chunks:C,timeoutId:X})=>{return{chunks:[...C,w],timeoutId:W(X)}});return}G(w,V)},pasteState:Z}}function YS2({placeholder:I,value:G,showCursor:Z,focus:d}){let W=void 0;if(I){if(W=T0.ansi256(hI().secondaryText)(I),Z&&d)W=I.length>0?T0.inverse(I[0])+T0.ansi256(hI().secondaryText)(I.slice(1)):T0.inverse(" ")}let B=G.length===0&&Boolean(I);return{renderedPlaceholder:W,showPlaceholder:B}}function l11({inputState:I,children:G,...Z}){let{onInput:d,renderedValue:W}=I,{wrappedOnInput:B}=XS2({onPaste:Z.onPaste,onInput:d}),{showPlaceholder:w,renderedPlaceholder:V}=YS2({placeholder:Z.placeholder,value:Z.value,showCursor:Z.showCursor,focus:Z.focus});return _4(B,{isActive:Z.focus}),AS2.default.createElement(O,{wrap:"truncate-end",dimColor:Z.isDimmed},w?V:W,G)}function MB(I){let G=hI().text,Z=b11({value:I.value,onChange:I.onChange,onSubmit:I.onSubmit,onExit:I.onExit,onExitMessage:I.onExitMessage,onMessage:I.onMessage,onHistoryReset:I.onHistoryReset,onHistoryUp:I.onHistoryUp,onHistoryDown:I.onHistoryDown,focus:I.focus,mask:I.mask,multiline:I.multiline,cursorChar:I.showCursor?" ":"",highlightPastedText:I.highlightPastedText,invert:T0.inverse,themeText:(d)=>T0.ansi256(G)(d),columns:I.columns,onImagePaste:I.onImagePaste,disableCursorMovementForUpDownKeys:I.disableCursorMovementForUpDownKeys,externalOffset:I.cursorOffset,onOffsetChange:I.onChangeCursorOffset});return _S2.default.createElement(l11,{inputState:Z,...I})}async function j11(I){let G=process.platform,Z=G==="win32"?"start":G==="darwin"?"open":"xdg-open";try{let{code:d}=await O3(Z,[I]);return d===0}catch(d){return!1}}var HS2=A1(u1(),1);function K6(I){let[G,Z]=HS2.useState({pending:!1,keyName:null}),d=rz((B)=>Z({pending:B,keyName:"Ctrl-C"}),I),W=rz((B)=>Z({pending:B,keyName:"Ctrl-D"}),I);return _4((B,w)=>{if(w.ctrl&&B==="c")d();if(w.ctrl&&B==="d")W()}),G}var UU3="https://github.com/anthropics/claude-code/issues";function DS2({messages:I,onDone:G}){let[Z,d]=$B.useState("userInput"),[W,B]=$B.useState(0),[w,V]=$B.useState(""),[C,X]=$B.useState(null),[Y,A]=$B.useState(null),[D,J]=$B.useState({isGit:!1,gitState:null}),[K,z]=$B.useState(null),Q=Q5().columns-4;$B.useEffect(()=>{async function L(){let P=await ZJ(),m=null;if(P)m=await Kq1();J({isGit:P,gitState:m})}L()},[]);let U=K6(()=>process.exit(0)),M=$B.useCallback(async()=>{d("submitting"),A(null),X(null);let L={message_count:I.length,datetime:new Date().toISOString(),description:w,platform:P2.platform,gitRepo:D.isGit,terminal:P2.terminal,version:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1021
|
+
`))}}}function G2(J0,G1){let f1=f0(G1)(J0);if(f1){if(!L.equals(f1)){if(S(f1.offset),L.text!=f1.text)G(f1.text)}}}return{onInput:G2,renderedValue:L.render(A,X,D),offset:M,setOffset:S}}var AS2=A1(u1(),1);var CS2=A1(u1(),1);function XS2({onPaste:I,onInput:G}){let[Z,d]=CS2.default.useState({chunks:[],timeoutId:null}),W=(w)=>{if(w)clearTimeout(w);return setTimeout(()=>{d(({chunks:V})=>{let C=V.join("");return Promise.resolve().then(()=>I&&I(C)),{chunks:[],timeoutId:null}})},100)};return{wrappedOnInput:(w,V)=>{if(I&&(w.length>800||Z.timeoutId)){d(({chunks:C,timeoutId:X})=>{return{chunks:[...C,w],timeoutId:W(X)}});return}G(w,V)},pasteState:Z}}function YS2({placeholder:I,value:G,showCursor:Z,focus:d}){let W=void 0;if(I){if(W=T0.ansi256(hI().secondaryText)(I),Z&&d)W=I.length>0?T0.inverse(I[0])+T0.ansi256(hI().secondaryText)(I.slice(1)):T0.inverse(" ")}let B=G.length===0&&Boolean(I);return{renderedPlaceholder:W,showPlaceholder:B}}function l11({inputState:I,children:G,...Z}){let{onInput:d,renderedValue:W}=I,{wrappedOnInput:B}=XS2({onPaste:Z.onPaste,onInput:d}),{showPlaceholder:w,renderedPlaceholder:V}=YS2({placeholder:Z.placeholder,value:Z.value,showCursor:Z.showCursor,focus:Z.focus});return _4(B,{isActive:Z.focus}),AS2.default.createElement(O,{wrap:"truncate-end",dimColor:Z.isDimmed},w?V:W,G)}function MB(I){let G=hI().text,Z=b11({value:I.value,onChange:I.onChange,onSubmit:I.onSubmit,onExit:I.onExit,onExitMessage:I.onExitMessage,onMessage:I.onMessage,onHistoryReset:I.onHistoryReset,onHistoryUp:I.onHistoryUp,onHistoryDown:I.onHistoryDown,focus:I.focus,mask:I.mask,multiline:I.multiline,cursorChar:I.showCursor?" ":"",highlightPastedText:I.highlightPastedText,invert:T0.inverse,themeText:(d)=>T0.ansi256(G)(d),columns:I.columns,onImagePaste:I.onImagePaste,disableCursorMovementForUpDownKeys:I.disableCursorMovementForUpDownKeys,externalOffset:I.cursorOffset,onOffsetChange:I.onChangeCursorOffset});return _S2.default.createElement(l11,{inputState:Z,...I})}async function j11(I){let G=process.platform,Z=G==="win32"?"start":G==="darwin"?"open":"xdg-open";try{let{code:d}=await O3(Z,[I]);return d===0}catch(d){return!1}}var HS2=A1(u1(),1);function K6(I){let[G,Z]=HS2.useState({pending:!1,keyName:null}),d=rz((B)=>Z({pending:B,keyName:"Ctrl-C"}),I),W=rz((B)=>Z({pending:B,keyName:"Ctrl-D"}),I);return _4((B,w)=>{if(w.ctrl&&B==="c")d();if(w.ctrl&&B==="d")W()}),G}var UU3="https://github.com/anthropics/claude-code/issues";function DS2({messages:I,onDone:G}){let[Z,d]=$B.useState("userInput"),[W,B]=$B.useState(0),[w,V]=$B.useState(""),[C,X]=$B.useState(null),[Y,A]=$B.useState(null),[D,J]=$B.useState({isGit:!1,gitState:null}),[K,z]=$B.useState(null),Q=Q5().columns-4;$B.useEffect(()=>{async function L(){let P=await ZJ(),m=null;if(P)m=await Kq1();J({isGit:P,gitState:m})}L()},[]);let U=K6(()=>process.exit(0)),M=$B.useCallback(async()=>{d("submitting"),A(null),X(null);let L={message_count:I.length,datetime:new Date().toISOString(),description:w,platform:P2.platform,gitRepo:D.isGit,terminal:P2.terminal,version:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION,transcript:I,errors:j51()},[P,m]=await Promise.all([vU3(L),RU3(w)]);if(z(m),P.success){if(P.feedbackId)X(P.feedbackId),B0("tengu_bug_report_submitted",{feedback_id:P.feedbackId});d("done")}else{if(P.isZdrOrg)A("Feedback collection is not available for organizations with custom data retention policies.");else A("Could not submit feedback. Please try again later.");d("done")}},[w,D.isGit,I]);_4((L,P)=>{if(Z==="done"){if(P.return&&K){let m=fU3(C??"",K,w);j11(m)}if(Y)G("<bash-stderr>Error submitting bug report</bash-stderr>");else G("<bash-stdout>Bug report submitted</bash-stdout>");return}if(Y){G("<bash-stderr>Error submitting bug report</bash-stderr>");return}if(P.escape){G("<bash-stderr>Bug report cancelled</bash-stderr>");return}if(Z==="consent"&&(P.return||L===" "))M()});let S=e1();return I2.createElement(I2.Fragment,null,I2.createElement(p,{flexDirection:"column",borderStyle:"round",borderColor:S.permission,paddingX:1,paddingBottom:1,gap:1},I2.createElement(O,{bold:!0,color:S.permission},"Submit Bug Report"),Z==="userInput"&&I2.createElement(p,{flexDirection:"column",gap:1},I2.createElement(O,null,"Describe the issue below:"),I2.createElement(MB,{value:w,onChange:V,columns:Q,onSubmit:()=>d("consent"),onExitMessage:()=>G("<bash-stderr>Bug report cancelled</bash-stderr>"),cursorOffset:W,onChangeCursorOffset:B}),Y&&I2.createElement(p,{flexDirection:"column",gap:1},I2.createElement(O,{color:"red"},Y),I2.createElement(O,{dimColor:!0},"Press any key to close"))),Z==="consent"&&I2.createElement(p,{flexDirection:"column"},I2.createElement(O,null,"This report will include:"),I2.createElement(p,{marginLeft:2,flexDirection:"column"},I2.createElement(O,null,"- Your bug description: ",I2.createElement(O,{dimColor:!0},w)),I2.createElement(O,null,"- Environment info:"," ",I2.createElement(O,{dimColor:!0},P2.platform,", ",P2.terminal,", v",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION)),D.gitState&&I2.createElement(O,null,"- Git repo metadata:"," ",I2.createElement(O,{dimColor:!0},D.gitState.branchName,D.gitState.commitHash?`, ${D.gitState.commitHash.slice(0,7)}`:"",D.gitState.remoteUrl?` @ ${D.gitState.remoteUrl}`:"",!D.gitState.isHeadOnRemote&&", not synced",!D.gitState.isClean&&", has local changes")),I2.createElement(O,null,"- Current session transcript")),I2.createElement(p,{marginTop:1},I2.createElement(O,{wrap:"wrap",dimColor:!0},"We will use your feedback to debug related issues or to improve"," ",b2,"'s functionality (eg. to reduce the risk of bugs occurring in the future). Anthropic will not train generative models using feedback from ",b2,".")),I2.createElement(p,{marginTop:1},I2.createElement(O,null,"Press ",I2.createElement(O,{bold:!0},"Enter")," to confirm and submit."))),Z==="submitting"&&I2.createElement(p,{flexDirection:"row",gap:1},I2.createElement(O,null,"Submitting report…")),Z==="done"&&I2.createElement(p,{flexDirection:"column"},Y?I2.createElement(O,{color:"red"},Y):I2.createElement(O,{color:e1().success},"Thank you for your report!"),C&&I2.createElement(O,{dimColor:!0},"Feedback ID: ",C),I2.createElement(p,{marginTop:1},I2.createElement(O,null,"Press "),I2.createElement(O,{bold:!0},"Enter "),I2.createElement(O,null,"to also create a GitHub issue, or any other key to close.")))),I2.createElement(p,{marginLeft:1},I2.createElement(O,{dimColor:!0},U.pending?I2.createElement(I2.Fragment,null,"Press ",U.keyName," again to exit"):Z==="userInput"?I2.createElement(I2.Fragment,null,"Enter to continue · Esc to cancel"):Z==="consent"?I2.createElement(I2.Fragment,null,"Enter to submit · Esc to cancel"):null)))}function fU3(I,G,Z){let d=encodeURIComponent(`**Bug Description**
|
|
1022
1022
|
${Z}
|
|
1023
1023
|
|
|
1024
1024
|
**Environment Info**
|
|
1025
1025
|
- Platform: ${P2.platform}
|
|
1026
1026
|
- Terminal: ${P2.terminal}
|
|
1027
|
-
- Version: ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1027
|
+
- Version: ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION||"unknown"}
|
|
1028
1028
|
- Feedback ID: ${I}
|
|
1029
1029
|
|
|
1030
1030
|
**Errors**
|
|
@@ -1057,15 +1057,15 @@ Recent commits:
|
|
|
1057
1057
|
${d}`}catch(I){return W0(I),null}}),FG=x2(async()=>{let I=yE(),G=E4(),Z=G.dontCrawlDirectory,[d,W,B]=await Promise.all([OU3(),Z?Promise.resolve(""):TU3(u0(),mU3()),Z?Promise.resolve(""):zS2()]);return{...G.context,...W?{directoryStructure:W}:{},...d?{gitStatus:d}:{},...I?{claudeMd:I}:{},...B?{descendentClaudeMds:B}:{}}});function mU3(){try{let I=yU3(u0(),".gitignore");if(!PU3(I))return[];return uU3(I,"utf-8").split(/\r?\n/).filter((G)=>G.trim())}catch(I){return W0(`Error reading .gitignore: ${I}`),[]}}var TU3=x2(async function(I,G){let Z;try{let d=new AbortController;setTimeout(()=>{d.abort()},1000);let W=await g8(),B=UI.call({path:I,ignore:G},{abortController:d,options:{commands:[],tools:[],slowAndCapableModel:W,forkNumber:0,messageLogName:"unused",maxThinkingTokens:0,allowedToolsFromCLIFlag:[]},readFileTimestamps:{}});Z=(await Z_(B)).data}catch(d){return W0(d),""}return`Below is a snapshot of this project's file structure at the start of the conversation. This snapshot will NOT update during the conversation. It skips over .gitignore patterns.
|
|
1058
1058
|
|
|
1059
1059
|
${Z}`},(I,G)=>`${I}------${G.join(",")}`);function TU1(I){if(process.platform==="win32")process.title=I?`✳ ${I}`:I;else process.stdout.write(`\x1B]0;${I?`✳ ${I}`:""}\x07`)}async function QS2(I){try{let Z=(await oZ({systemPrompt:["Analyze if this message indicates a new conversation topic. If it does, extract a 2-3 word title that captures the new topic. Format your response as a JSON object with two fields: 'isNewTopic' (boolean) and 'title' (string, or null if isNewTopic is false). Only include these fields, no other text."],userPrompt:I,enablePromptCaching:!0})).message.content.filter((W)=>W.type==="text").map((W)=>W.text).join(""),d=Hw(Z);if(d&&typeof d==="object"&&"isNewTopic"in d&&"title"in d){if(d.isNewTopic&&d.title)TU1(d.title)}}catch(G){W0(G)}}function w8(){return new Promise((I)=>{process.stdout.write("\x1B[2J\x1B[3J\x1B[H",()=>{I()})})}async function x11({setForkConvoWithMessagesOnTheNextRender:I,setMessages:G}){await w8(),G([]),I([]),FG.cache.clear?.(),yE.cache.clear?.(),await qC(a8())}var bU3={type:"local",name:"clear",description:"Clear conversation history and free up context",isEnabled:!0,isHidden:!1,async call(I,G){return x11(G),""},userFacingName(){return"clear"}},NS2=bU3;var lU3=10;async function qS2(I,G,Z=lU3){if(!I.length)return{oldMessages:[],newMessages:[]};let d=Zd(I),W=0;if(W=kU3(d,G),d[W]&&gS2(d[W]))W=W+1;let B=jU3(d,W);if(W-B<Z)W=B;let w=I.slice(0,W),V=I.slice(W),C=h11(w),X=h11(V);if(C.length!==w.length)B0("tengu_compact_old_message_dangling_tool_use",{dangling_count:String(w.length-C.length)});if(X.length!==V.length)B0("tengu_compact_new_message_dangling_tool_use",{dangling_count:String(V.length-X.length)});return{oldMessages:C,newMessages:X}}function jU3(I,G){for(let Z=G;Z>=0;Z--){let d=I[Z];if(d&&US2(d))return Z}throw new Error("No user text message found before split index")}function kU3(I,G){let Z=Math.max(0,I.length-G);for(let d=Z;d>=0;d--){let W=I[d];if(W&&W.type==="user")return d}return Z}var fS2=10;async function RS2(I,G,Z=[],d,W){let{oldMessages:B,newMessages:w}=await qS2(I,G);if(B0("tengu_compact",{compacted_message_count:String(B.length),preserved_message_count:String(w.length)}),B.length===0)throw new Error("Not enough messages to compact");let V=h9({content:"Provide a detailed but concise summary of our conversation above. Focus on information that would be helpful for continuing the conversation, including what we did, what we're doing, which files we're working on, and what we're going to do next.",surface:"both"}),C=await VT(uE([...B,V]),["You are a helpful AI assistant tasked with summarizing conversations."],0,Z,d,{permissionMode:"default",model:W,prependCLISysprompt:!0,toolChoice:void 0}),X=C.message.content,Y=typeof X==="string"?X:X.length>0&&X[0]?.type==="text"?X[0].text:null;if(!Y)throw new Error(`Failed to generate conversation summary - response did not contain valid text content - ${C}`);else if(Y.startsWith(NB))throw new Error(Y);let A=[h9({content:"Use the /compact command to summarize older conversation history while preserving recent messages.",surface:"both"}),C,...w];return{oldMessages:B,newMessages:w,summaryMessage:C,compactedMessages:A}}var xU3={type:"local",name:"compact",description:"Clear conversation history but keep a summary in context",isEnabled:!0,isHidden:!1,async call(I,{options:{tools:G,slowAndCapableModel:Z},abortController:d,messages:W,setForkConvoWithMessagesOnTheNextRender:B,setMessages:w,addNotification:V}){if(W.length===0)return"No messages to compact.";try{V?.("Compacting your message history…",{timeoutMs:30000,color:"permission"});let{compactedMessages:C,oldMessages:X}=await RS2(W,fS2,G,d.signal,Z);return await w8(),w([]),B(C),FG.cache.clear?.(),yE.cache.clear?.(),V?.(`Compacted ${X.length}/${W.length} messages`,{timeoutMs:1e4,color:"success"}),""}catch(C){if(V?.("Error compacting messages",{timeoutMs:2000,color:"error"}),C instanceof Error&&C.message==="Conversation too short to compact")return"Conversation too short to compact.";throw W0(C),C}},userFacingName(){return"compact"}},vS2=xU3;var _9=A1(u1(),1),bU1=A1(u1(),1);function ES2({onClose:I}){let[G,Z]=bU1.useState(Q2()),d=_9.useRef(Q2()),[W,B]=bU1.useState(0),w=K6(()=>process.exit(0)),V=[...[],{id:"verbose",label:"Verbose output",value:G.verbose,type:"boolean",onChange(C){let X={...Q2(),verbose:C};i4(X),Z(X)}},{id:"theme",label:"Theme",value:G.theme,options:["light","dark","light-daltonized","dark-daltonized","light-ansi","dark-ansi"],type:"enum",onChange(C){let X={...Q2(),theme:C};i4(X),Z(X)}},{id:"notifChannel",label:"Notifications",value:G.preferredNotifChannel,options:["iterm2","terminal_bell","iterm2_with_bell","notifications_disabled"],type:"enum",onChange(C){let X={...Q2(),preferredNotifChannel:C};i4(X),Z(X)}},{id:"editorMode",label:"Editor Mode",value:G.editorMode||"emacs",options:["emacs","vim"],type:"enum",onChange(C){let X={...Q2(),editorMode:C};i4(X),Z(X),B0("tengu_editor_mode_changed",{mode:C,source:"config_panel"})}}];return _4((C,X)=>{if(X.escape){let A=[],D=Boolean(!1),J=Boolean(!1);if(D!==J)A.push(` ⎿ ${J?"Enabled":"Disabled"} custom API key`);if(G.verbose!==d.current.verbose)A.push(` ⎿ Set verbose to ${T0.bold(G.verbose)}`);if(G.theme!==d.current.theme)A.push(` ⎿ Set theme to ${T0.bold(G.theme)}`);if(G.preferredNotifChannel!==d.current.preferredNotifChannel)A.push(` ⎿ Set notifications to ${T0.bold(G.preferredNotifChannel)}`);if(G.editorMode!==d.current.editorMode)A.push(` ⎿ Set editor mode to ${T0.bold(G.editorMode||"emacs")}`);if(A.length>0)console.log(T0.gray(A.join(`
|
|
1060
|
-
`)));I();return}function Y(){let A=V[W];if(!A||!A.onChange)return;if(A.type==="boolean"){A.onChange(!A.value);return}if(A.type==="enum"){let J=(A.options.indexOf(A.value)+1)%A.options.length;A.onChange(A.options[J]);return}}if(X.return||C===" "){Y();return}if(X.upArrow)B((A)=>Math.max(0,A-1));if(X.downArrow)B((A)=>Math.min(V.length-1,A+1))}),_9.createElement(_9.Fragment,null,_9.createElement(p,{flexDirection:"column",borderStyle:"round",borderColor:e1().secondaryBorder,paddingX:1,marginTop:1},_9.createElement(p,{flexDirection:"column",minHeight:2,marginBottom:1},_9.createElement(O,{bold:!0},"Settings"),_9.createElement(O,{dimColor:!0},"Configure ",b2," preferences")),V.map((C,X)=>{let Y=X===W;return _9.createElement(p,{key:C.id,height:2,minHeight:2},_9.createElement(p,{width:44},_9.createElement(O,{color:Y?"blue":void 0},Y?Y3.pointer:" "," ",C.label)),_9.createElement(p,null,C.type==="boolean"?_9.createElement(O,{color:Y?"blue":void 0},C.value.toString()):_9.createElement(O,{color:Y?"blue":void 0},C.value.toString())))})),_9.createElement(p,{marginLeft:3},_9.createElement(O,{dimColor:!0},w.pending?_9.createElement(_9.Fragment,null,"Press ",w.keyName," again to exit"):_9.createElement(_9.Fragment,null,"↑/↓ to select · Enter/Space to change · Esc to close"))))}var lU1=A1(u1(),1),hU3={type:"local-jsx",name:"config",description:"Open config panel",isEnabled:!0,isHidden:!1,async call(I){return lU1.createElement(ES2,{onClose:I})},userFacingName(){return"config"}},MS2=hU3;var cU3={type:"local",name:"cost",description:"Show the total cost and duration of the current session",isEnabled:!0,isHidden:!1,async call(){return wq1()},userFacingName(){return"cost"}},$S2=cU3;var Mf3=A1(ML2(),1);var PL2=A1(u1(),1);var W3=A1(u1(),1);import{join as $f3}from"path";import{existsSync as sU1,mkdirSync as Sf3,appendFileSync as N16,readFileSync as Lf3,constants as Pf3,writeFileSync as uf3,unlinkSync as $L2,statSync as yf3}from"fs";import{accessSync as Of3}from"fs";var SL2=A1(VP(),1);async function LL2(){try{let I=await tK("tengu_version_config",{minVersion:"0.0.0"});if(I.minVersion&&SL2.lt({ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1061
|
-
It looks like your version of Claude Code (${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1060
|
+
`)));I();return}function Y(){let A=V[W];if(!A||!A.onChange)return;if(A.type==="boolean"){A.onChange(!A.value);return}if(A.type==="enum"){let J=(A.options.indexOf(A.value)+1)%A.options.length;A.onChange(A.options[J]);return}}if(X.return||C===" "){Y();return}if(X.upArrow)B((A)=>Math.max(0,A-1));if(X.downArrow)B((A)=>Math.min(V.length-1,A+1))}),_9.createElement(_9.Fragment,null,_9.createElement(p,{flexDirection:"column",borderStyle:"round",borderColor:e1().secondaryBorder,paddingX:1,marginTop:1},_9.createElement(p,{flexDirection:"column",minHeight:2,marginBottom:1},_9.createElement(O,{bold:!0},"Settings"),_9.createElement(O,{dimColor:!0},"Configure ",b2," preferences")),V.map((C,X)=>{let Y=X===W;return _9.createElement(p,{key:C.id,height:2,minHeight:2},_9.createElement(p,{width:44},_9.createElement(O,{color:Y?"blue":void 0},Y?Y3.pointer:" "," ",C.label)),_9.createElement(p,null,C.type==="boolean"?_9.createElement(O,{color:Y?"blue":void 0},C.value.toString()):_9.createElement(O,{color:Y?"blue":void 0},C.value.toString())))})),_9.createElement(p,{marginLeft:3},_9.createElement(O,{dimColor:!0},w.pending?_9.createElement(_9.Fragment,null,"Press ",w.keyName," again to exit"):_9.createElement(_9.Fragment,null,"↑/↓ to select · Enter/Space to change · Esc to close"))))}var lU1=A1(u1(),1),hU3={type:"local-jsx",name:"config",description:"Open config panel",isEnabled:!0,isHidden:!1,async call(I){return lU1.createElement(ES2,{onClose:I})},userFacingName(){return"config"}},MS2=hU3;var cU3={type:"local",name:"cost",description:"Show the total cost and duration of the current session",isEnabled:!0,isHidden:!1,async call(){return wq1()},userFacingName(){return"cost"}},$S2=cU3;var Mf3=A1(ML2(),1);var PL2=A1(u1(),1);var W3=A1(u1(),1);import{join as $f3}from"path";import{existsSync as sU1,mkdirSync as Sf3,appendFileSync as N16,readFileSync as Lf3,constants as Pf3,writeFileSync as uf3,unlinkSync as $L2,statSync as yf3}from"fs";import{accessSync as Of3}from"fs";var SL2=A1(VP(),1);async function LL2(){try{let I=await tK("tengu_version_config",{minVersion:"0.0.0"});if(I.minVersion&&SL2.lt({ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION,I.minVersion))console.error(`
|
|
1061
|
+
It looks like your version of Claude Code (${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION}) needs an update.
|
|
1062
1062
|
A newer version (${I.minVersion} or higher) is required to continue.
|
|
1063
1063
|
|
|
1064
1064
|
To update, please run:
|
|
1065
1065
|
claude update
|
|
1066
1066
|
|
|
1067
1067
|
This will ensure you have access to the latest features and improvements.
|
|
1068
|
-
`),process.exit(1)}catch(I){W0(`Error checking minimum version: ${I}`)}}var qN=$f3(_w,".update.lock"),mf3=300000;function Tf3(){try{if(!sU1(_w))Sf3(_w,{recursive:!0});if(sU1(qN)){let I=yf3(qN);if(Date.now()-I.mtimeMs<mf3)return!1;try{$L2(qN)}catch(Z){return W0(`Failed to remove stale lock file: ${Z}`),!1}}return uf3(qN,`${process.pid}`,"utf8"),!0}catch(I){return W0(`Failed to acquire lock: ${I}`),!1}}function bf3(){try{if(sU1(qN)){if(Lf3(qN,"utf8")===`${process.pid}`)$L2(qN)}}catch(I){W0(`Failed to release lock: ${I}`)}}async function lf3(){let I=P2.isRunningWithBun(),G=null;if(I)G=await O3("bun",["pm","bin","-g"]);else G=await O3("npm",["-g","config","get","prefix"]);if(G.code!==0)return W0(`Failed to check ${I?"bun":"npm"} permissions`),null;return G.stdout.trim()}async function oU1(){try{let I=await lf3();if(!I)return{hasPermissions:!1,npmPrefix:null};let G=!1;try{Of3(I,Pf3.W_OK),G=!0}catch{G=!1}if(G)return{hasPermissions:!0,npmPrefix:I};return W0("Insufficient permissions for global npm install."),{hasPermissions:!1,npmPrefix:I}}catch(I){return W0(`Failed to verify npm global install permissions: ${I}`),{hasPermissions:!1,npmPrefix:null}}}async function r11(){let I=new AbortController;setTimeout(()=>I.abort(),5000);let G=await O3("npm",["view",`${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1068
|
+
`),process.exit(1)}catch(I){W0(`Error checking minimum version: ${I}`)}}var qN=$f3(_w,".update.lock"),mf3=300000;function Tf3(){try{if(!sU1(_w))Sf3(_w,{recursive:!0});if(sU1(qN)){let I=yf3(qN);if(Date.now()-I.mtimeMs<mf3)return!1;try{$L2(qN)}catch(Z){return W0(`Failed to remove stale lock file: ${Z}`),!1}}return uf3(qN,`${process.pid}`,"utf8"),!0}catch(I){return W0(`Failed to acquire lock: ${I}`),!1}}function bf3(){try{if(sU1(qN)){if(Lf3(qN,"utf8")===`${process.pid}`)$L2(qN)}}catch(I){W0(`Failed to release lock: ${I}`)}}async function lf3(){let I=P2.isRunningWithBun(),G=null;if(I)G=await O3("bun",["pm","bin","-g"]);else G=await O3("npm",["-g","config","get","prefix"]);if(G.code!==0)return W0(`Failed to check ${I?"bun":"npm"} permissions`),null;return G.stdout.trim()}async function oU1(){try{let I=await lf3();if(!I)return{hasPermissions:!1,npmPrefix:null};let G=!1;try{Of3(I,Pf3.W_OK),G=!0}catch{G=!1}if(G)return{hasPermissions:!0,npmPrefix:I};return W0("Insufficient permissions for global npm install."),{hasPermissions:!1,npmPrefix:I}}catch(I){return W0(`Failed to verify npm global install permissions: ${I}`),{hasPermissions:!1,npmPrefix:null}}}async function r11(){let I=new AbortController;setTimeout(()=>I.abort(),5000);let G=await O3("npm",["view",`${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.PACKAGE_URL}@latest`,"version"],I.signal);if(G.code!==0)return null;return G.stdout.trim()}async function s11(){if(!Tf3())return W0("Another process is currently installing an update"),B0("tengu_auto_updater_lock_contention",{pid:String(process.pid),currentVersion:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION}),"in_progress";try{let{hasPermissions:I}=await oU1();if(!I)return"no_permissions";let G=P2.isRunningWithBun()?"bun":"npm",Z=await O3(G,["install","-g",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.PACKAGE_URL]);if(Z.code!==0)return W0(`Failed to install new version of claude: ${Z.stdout} ${Z.stderr}`),"install_failed";return"success"}finally{bf3()}}var QT=A1(u1(),1);function JJ(){return QT.createElement(O,{color:e1().permission},"Press ",QT.createElement(O,{bold:!0},"Enter")," to continue…")}function NT({onDone:I,doctorMode:G=!1}){let[Z,d]=W3.useState(null),[W,B]=W3.useState(null),w=e1(),V=K6(()=>process.exit(0)),C=W3.useCallback(async()=>{let X=await oU1();if(B0("tengu_auto_updater_permissions_check",{hasPermissions:X.hasPermissions.toString(),npmPrefix:X.npmPrefix??"null"}),d(X.hasPermissions),X.npmPrefix)B(X.npmPrefix);if(X.hasPermissions){let Y=Q2();if(i4({...Y,autoUpdaterStatus:"enabled"}),!G)I()}},[I,G]);if(W3.useEffect(()=>{B0("tengu_auto_updater_config_start",{}),C()},[C]),_4((X,Y)=>{if(Y.return)I()}),Z===null)return W3.default.createElement(p,{paddingX:1,paddingTop:1},W3.default.createElement(O,{color:w.secondaryText},"Checking npm permissions…"));if(Z===!0){if(G)return W3.default.createElement(p,{flexDirection:"column",gap:1,paddingX:1,paddingTop:1},W3.default.createElement(O,{color:w.success},"✓ npm permissions: OK"),W3.default.createElement(O,null,"Your installation is healthy and ready for auto-updates."),W3.default.createElement(JJ,null));return W3.default.createElement(p,{paddingX:1,paddingTop:1},W3.default.createElement(O,{color:w.success},"✓ Auto-updates enabled"))}return W3.default.createElement(W3.default.Fragment,null,W3.default.createElement(p,{borderColor:w.permission,borderStyle:"round",flexDirection:"column",gap:1,paddingX:1,paddingTop:1},W3.default.createElement(p,{flexDirection:"column",gap:1},W3.default.createElement(O,{bold:!0,color:w.permission},"Enable automatic updates?"),W3.default.createElement(O,null,b2," can't update itself because it doesn't have sufficient permissions."),W3.default.createElement(O,null,"Please visit our"," ",W3.default.createElement(sf,{url:"https://docs.anthropic.com/s/claude-code-auto-updater"},W3.default.createElement(O,{color:w.warning},"troubleshooting guide"))," ","to resolve resolve permission issues and get the latest features and improvements")),W3.default.createElement(JJ,null),W&&W3.default.createElement(p,null,W3.default.createElement(O,{color:w.secondaryText},"Current npm prefix: ",W))),W3.default.createElement(p,{marginLeft:1,height:Z===!1?1:void 0},W3.default.createElement(O,{dimColor:!0},V.pending?W3.default.createElement(W3.default.Fragment,null,"Press ",V.keyName," again to exit"):null)))}var jf3={name:"doctor",description:"Checks the health of your Claude Code installation",isEnabled:!0,isHidden:!1,userFacingName(){return"doctor"},type:"local-jsx",call(I){let G=PL2.default.createElement(NT,{onDone:I,doctorMode:!0});return Promise.resolve(G)}},uL2=jf3;import{join as kf3}from"path";var a16=kf3(_w,"CLAUDE.md");var K2=A1(u1(),1);function yL2({commands:I,onClose:G}){let Z=e1(),d=!1,W=`Learn more at: ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.README_URL}`,B=I.filter((C)=>!C.isHidden),[w,V]=K2.useState(0);return K2.useEffect(()=>{let C=setTimeout(()=>{if(w<3)V(w+1)},250);return()=>clearTimeout(C)},[w]),_4((C,X)=>{if(X.return)G()}),K2.createElement(p,{flexDirection:"column",padding:1},K2.createElement(O,{bold:!0,color:Z.claude},`${b2} v${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION}`),K2.createElement(p,{marginTop:1,flexDirection:"column"},K2.createElement(O,null,b2," is a beta research preview. Always review Claude's responses, especially when running code. Claude has read access to files in the current directory and can run commands and edit files with your permission.")),w>=1&&K2.createElement(p,{flexDirection:"column",marginTop:1},K2.createElement(O,{bold:!0},"Usage Modes:"),K2.createElement(O,null,"• REPL: ",K2.createElement(O,{bold:!0},"claude")," (interactive session)"),K2.createElement(O,null,"• Non-interactive: ",K2.createElement(O,{bold:!0},'claude -p "question"')),K2.createElement(p,{marginTop:1},K2.createElement(O,null,"Run ",K2.createElement(O,{bold:!0},"claude -h")," for all command line options"))),w>=2&&K2.createElement(p,{marginTop:1,flexDirection:"column"},K2.createElement(O,{bold:!0},"Common Tasks:"),K2.createElement(O,null,"• Ask questions about your codebase"," ",K2.createElement(O,{color:e1().secondaryText},"> How does foo.py work?")),K2.createElement(O,null,"• Edit files"," ",K2.createElement(O,{color:e1().secondaryText},"> Update bar.ts to...")),K2.createElement(O,null,"• Fix errors"," ",K2.createElement(O,{color:e1().secondaryText},"> cargo build")),K2.createElement(O,null,"• Run commands"," ",K2.createElement(O,{color:e1().secondaryText},"> /help")),K2.createElement(O,null,"• Run bash commands"," ",K2.createElement(O,{color:e1().secondaryText},"> !ls"))),w>=3&&K2.createElement(p,{marginTop:1,flexDirection:"column"},K2.createElement(O,{bold:!0},"Interactive Mode Commands:"),K2.createElement(p,{flexDirection:"column"},B.map((C,X)=>K2.createElement(p,{key:X,marginLeft:1},K2.createElement(O,{bold:!0},`/${C.name}`),K2.createElement(O,null," - ",C.description))))),K2.createElement(p,{marginTop:1},K2.createElement(O,{color:Z.secondaryText},W)),K2.createElement(p,{marginTop:2},K2.createElement(JJ,null)))}var eU1=A1(u1(),1),xf3={type:"local-jsx",name:"help",description:"Show help and available commands",isEnabled:!0,isHidden:!1,async call(I,{options:{commands:G}}){return eU1.createElement(yL2,{commands:G,onClose:I})},userFacingName(){return"help"}},OL2=xf3;var hf3={type:"prompt",name:"init",description:"Initialize a new CLAUDE.md file with codebase documentation",isEnabled:!0,isHidden:!1,progressMessage:"analyzing your codebase",userFacingName(){return"init"},async getPromptForCommand(I){return tU(),[{role:"user",content:[{type:"text",text:`Please analyze this codebase and create a CLAUDE.md file containing:
|
|
1069
1069
|
1. Build/lint/test commands - especially for running a single test
|
|
1070
1070
|
2. Code style guidelines including imports, formatting, types, naming conventions, error handling, etc.
|
|
1071
1071
|
|
|
@@ -1082,7 +1082,7 @@ If there are Cursor rules (in .cursor/rules/ or .cursorrules) or Copilot rules (
|
|
|
1082
1082
|
██║ ██║ ██║██║ ██║█████╗
|
|
1083
1083
|
██║ ██║ ██║██║ ██║██╔══╝
|
|
1084
1084
|
╚██████╗╚██████╔╝██████╔╝███████╗
|
|
1085
|
-
╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝`))}var fI=A1(u1(),1),zV=A1(u1(),1);var o11=process.platform==="darwin"?["·","✢","✳","∗","✻","✽"]:["·","✢","*","∗","✻","✽"],sf3=["Accomplishing","Actioning","Actualizing","Baking","Brewing","Calculating","Cerebrating","Churning","Clauding","Coalescing","Cogitating","Computing","Conjuring","Considering","Cooking","Crafting","Creating","Crunching","Deliberating","Determining","Doing","Effecting","Finagling","Forging","Forming","Generating","Hatching","Herding","Honking","Hustling","Ideating","Inferring","Manifesting","Marinating","Moseying","Mulling","Mustering","Musing","Noodling","Percolating","Pondering","Processing","Puttering","Reticulating","Ruminating","Schlepping","Shucking","Simmering","Smooshing","Spinning","Stewing","Synthesizing","Thinking","Transmuting","Vibing","Working"];function e11(){let I=[...o11,...[...o11].reverse()],[G,Z]=zV.useState(0),[d,W]=zV.useState(0),B=zV.useRef(cK(sf3)),w=zV.useRef(Date.now());return zV.useEffect(()=>{let V=setInterval(()=>{Z((C)=>(C+1)%I.length)},120);return()=>clearInterval(V)},[I.length]),zV.useEffect(()=>{let V=setInterval(()=>{W(Math.floor((Date.now()-w.current)/1000))},1000);return()=>clearInterval(V)},[]),fI.createElement(p,{flexDirection:"row",marginTop:1},fI.createElement(p,{flexWrap:"nowrap",height:1,width:2},fI.createElement(O,{color:e1().claude},I[G])),fI.createElement(O,{color:e1().claude},B.current,"… "),fI.createElement(O,{color:e1().secondaryText},"(",d,"s · ",fI.createElement(O,{bold:!0},"esc")," to interrupt)"))}function gN(){let I=[...o11,...[...o11].reverse()],[G,Z]=zV.useState(0);return zV.useEffect(()=>{let d=setInterval(()=>{Z((W)=>(W+1)%I.length)},120);return()=>clearInterval(d)},[I.length]),fI.createElement(p,{flexWrap:"nowrap",height:1,width:2},fI.createElement(O,{color:e1().claude},I[G]))}var N2=A1(u1(),1);var KG=A1(u1(),1);function kL2({customApiKeyTruncated:I,onDone:G}){let Z=e1();function d(B){let w=Q2();switch(B){case"yes":{i4({...w,customApiKeyResponses:{...w.customApiKeyResponses,approved:[...w.customApiKeyResponses?.approved??[],I]}}),G();break}case"no":{i4({...w,customApiKeyResponses:{...w.customApiKeyResponses,rejected:[...w.customApiKeyResponses?.rejected??[],I]}}),G();break}}}let W=K6(()=>process.exit(0));return KG.default.createElement(KG.default.Fragment,null,KG.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:Z.warning},KG.default.createElement(O,{bold:!0,color:Z.warning},"Detected a custom API key in your environment"),KG.default.createElement(O,null,"Your environment sets"," ",KG.default.createElement(O,{color:Z.warning},"ANTHROPIC_API_KEY"),":"," ",KG.default.createElement(O,{bold:!0},"sk-ant-...",I)),KG.default.createElement(O,null,"Do you want to use this API key?"),KG.default.createElement(U7,{options:[{label:`No (${T0.bold("recommended")})`,value:"no"},{label:"Yes",value:"yes"}],onChange:(B)=>d(B)})),KG.default.createElement(p,{marginLeft:3},KG.default.createElement(O,{dimColor:!0},W.pending?KG.default.createElement(KG.default.Fragment,null,"Press ",W.keyName," again to exit"):KG.default.createElement(KG.default.Fragment,null,"Enter to confirm"))))}var y7=A1(u1(),1);var t11=A1(u1(),1);function xL2(I){let[G,Z]=t11.useState(!1);return t11.useEffect(()=>{let d=setTimeout(()=>{Z(!0)},I);return()=>clearTimeout(d)},[I]),G}async function of3(){try{let I=["https://api.anthropic.com/api/hello","https://console.anthropic.com/v1/oauth/hello"],G=async(W)=>{try{let B=await fC.get(W,{headers:{"User-Agent":lv}});if(B.status!==200)return{success:!1,error:`Failed to connect to ${new URL(W).hostname}: Status ${B.status}`};return{success:!0}}catch(B){return{success:!1,error:`Failed to connect to ${new URL(W).hostname}: ${B instanceof Error?B.message:String(B)}`}}};return(await Promise.all(I.map(G))).find((W)=>!W.success)||{success:!0}}catch(I){return W0(I),{success:!1,error:`Connectivity check error: ${I instanceof Error?I.message:String(I)}`}}}function hL2({onSuccess:I}){let[G,Z]=y7.useState(null),[d,W]=y7.useState(!0),B=e1(),w=xL2(1000)&&d;return y7.useEffect(()=>{async function V(){let C=await of3();Z(C),W(!1)}V()},[]),y7.useEffect(()=>{if(G?.success)I();else if(G&&!G.success){let V=setTimeout(()=>process.exit(1),100);return()=>clearTimeout(V)}},[G,I]),y7.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},d&&w?y7.default.createElement(p,{paddingLeft:1},y7.default.createElement(gN,null),y7.default.createElement(O,null,"Checking connectivity...")):!G?.success&&!d&&y7.default.createElement(p,{flexDirection:"column",gap:1},y7.default.createElement(O,{color:B.error},"Unable to connect to Anthropic services"),y7.default.createElement(O,{color:B.error},G?.error),y7.default.createElement(p,{flexDirection:"column",gap:1},y7.default.createElement(O,null,"Please check your internet connection and network settings."),y7.default.createElement(O,null,"Note: ",b2," might not be available in your country. Check supported countries at"," ",y7.default.createElement(O,{color:B.suggestion},"https://anthropic.com/supported-countries")))))}function df1({onDone:I}){let[G,Z]=N2.useState(0),d=Q2(),W=_n(),[B,w]=N2.useState(Dw.theme),V=e1();function C(){if(G<U.length-1){let M=G+1;Z(M)}}function X(M){i4({...d,theme:M}),C()}let Y=K6(()=>process.exit(0));_4(async(M,S)=>{let L=U[G];if(S.return&&L&&["usage","security"].includes(L.id))if(G===U.length-1)I();else{if(L.id==="security")await w8();C()}});let D=N2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},N2.default.createElement(O,null,"Let's get started."),N2.default.createElement(p,{flexDirection:"column"},N2.default.createElement(O,{bold:!0},"Choose the text style that looks best with your terminal:"),N2.default.createElement(O,{dimColor:!0},"To change this later, run /config")),N2.default.createElement(tI,{options:[{label:"Light text",value:"dark"},{label:"Dark text",value:"light"},{label:"Light text (colorblind-friendly)",value:"dark-daltonized"},{label:"Dark text (colorblind-friendly)",value:"light-daltonized"},{label:"Light text (ANSI colors only)",value:"dark-ansi"},{label:"Dark text (ANSI colors only)",value:"light-ansi"}],onFocus:(M)=>w(M),onChange:X,visibleOptionCount:6}),N2.default.createElement(p,{flexDirection:"column",paddingTop:1},N2.default.createElement(O,{bold:!0},"Preview"),N2.default.createElement(p,{paddingLeft:1,marginRight:1,borderStyle:"round",flexDirection:"column"},N2.default.createElement(EB,{patch:{oldStart:1,newStart:1,oldLines:3,newLines:3,lines:["function greet() {",'- console.log("Hello, World!");','+ console.log("Hello, Claude!");',"}"]},dim:!1,width:40,overrideTheme:B})))),J=N2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},N2.default.createElement(O,{bold:!0},"Security notes:"),N2.default.createElement(p,{flexDirection:"column",width:70},N2.default.createElement(II,null,N2.default.createElement(II.Item,null,N2.default.createElement(O,null,"Claude Code is currently in research preview"),N2.default.createElement(O,{color:V.secondaryText,wrap:"wrap"},"This beta version may have limitations or unexpected behaviors.",N2.default.createElement(R5,null),"Run /bug at any time to report issues.",N2.default.createElement(R5,null))),N2.default.createElement(II.Item,null,N2.default.createElement(O,null,"Claude can make mistakes"),N2.default.createElement(O,{color:V.secondaryText,wrap:"wrap"},"You should always review Claude's responses, especially when",N2.default.createElement(R5,null),"running code.",N2.default.createElement(R5,null))),N2.default.createElement(II.Item,null,N2.default.createElement(O,null,"Due to prompt injection risks, only use it with code you trust"),N2.default.createElement(O,{color:V.secondaryText,wrap:"wrap"},"For more details see:",N2.default.createElement(R5,null),N2.default.createElement(iC,{url:"https://docs.anthropic.com/s/claude-code-security"}))))),N2.default.createElement(JJ,null)),K=N2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},N2.default.createElement(O,{bold:!0},"Using ",b2," effectively:"),N2.default.createElement(p,{flexDirection:"column",width:70},N2.default.createElement(II,null,N2.default.createElement(II.Item,null,N2.default.createElement(O,null,"Start in your project directory",N2.default.createElement(R5,null),N2.default.createElement(O,{color:V.secondaryText},"Files are automatically added to context when needed."),N2.default.createElement(R5,null))),N2.default.createElement(II.Item,null,N2.default.createElement(O,null,"Use ",b2," as a development partner",N2.default.createElement(R5,null),N2.default.createElement(O,{color:V.secondaryText},"Get help with file analysis, editing, bash commands,",N2.default.createElement(R5,null),"and git history.",N2.default.createElement(R5,null)))),N2.default.createElement(II.Item,null,N2.default.createElement(O,null,"Provide clear context",N2.default.createElement(R5,null),N2.default.createElement(O,{color:V.secondaryText},"Be as specific as you would with another engineer. ",N2.default.createElement(R5,null),"The better the context, the better the results. ",N2.default.createElement(R5,null))))),N2.default.createElement(p,null,N2.default.createElement(O,null,"For more details on ",b2,", see:",N2.default.createElement(R5,null),N2.default.createElement(iC,{url:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.33"}.README_URL})))),N2.default.createElement(JJ,null)),z=N2.default.createElement(hL2,{onSuccess:C}),Q=N2.useMemo(()=>{return""},[]),U=[];if(W)U.push({id:"preflight",component:z});if(U.push({id:"theme",component:D}),W)U.push({id:"oauth",component:N2.default.createElement(I01,{onDone:C})});if(Q)U.push({id:"api-key",component:N2.default.createElement(kL2,{customApiKeyTruncated:Q,onDone:C})});return U.push({id:"security",component:J}),U.push({id:"usage",component:K}),N2.default.createElement(p,{flexDirection:"column",gap:1},U[G]?.id!=="oauth"&&N2.default.createElement(Wf1,null),N2.default.createElement(p,{flexDirection:"column",padding:0,gap:0},U[G]?.component,Y.pending&&N2.default.createElement(p,{padding:1},N2.default.createElement(O,{dimColor:!0},"Press ",Y.keyName," again to exit"))))}function Wf1(){let I=e1();return N2.default.createElement(p,{borderColor:I.claude,borderStyle:"round",paddingX:1,width:kW1},N2.default.createElement(O,null,N2.default.createElement(O,{color:I.claude},"✻")," Welcome to"," ",N2.default.createElement(O,{bold:!0},b2)," research preview!"))}function cL2({message:I,title:G}){let Z=G?`${G}:
|
|
1085
|
+
╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝`))}var fI=A1(u1(),1),zV=A1(u1(),1);var o11=process.platform==="darwin"?["·","✢","✳","∗","✻","✽"]:["·","✢","*","∗","✻","✽"],sf3=["Accomplishing","Actioning","Actualizing","Baking","Brewing","Calculating","Cerebrating","Churning","Clauding","Coalescing","Cogitating","Computing","Conjuring","Considering","Cooking","Crafting","Creating","Crunching","Deliberating","Determining","Doing","Effecting","Finagling","Forging","Forming","Generating","Hatching","Herding","Honking","Hustling","Ideating","Inferring","Manifesting","Marinating","Moseying","Mulling","Mustering","Musing","Noodling","Percolating","Pondering","Processing","Puttering","Reticulating","Ruminating","Schlepping","Shucking","Simmering","Smooshing","Spinning","Stewing","Synthesizing","Thinking","Transmuting","Vibing","Working"];function e11(){let I=[...o11,...[...o11].reverse()],[G,Z]=zV.useState(0),[d,W]=zV.useState(0),B=zV.useRef(cK(sf3)),w=zV.useRef(Date.now());return zV.useEffect(()=>{let V=setInterval(()=>{Z((C)=>(C+1)%I.length)},120);return()=>clearInterval(V)},[I.length]),zV.useEffect(()=>{let V=setInterval(()=>{W(Math.floor((Date.now()-w.current)/1000))},1000);return()=>clearInterval(V)},[]),fI.createElement(p,{flexDirection:"row",marginTop:1},fI.createElement(p,{flexWrap:"nowrap",height:1,width:2},fI.createElement(O,{color:e1().claude},I[G])),fI.createElement(O,{color:e1().claude},B.current,"… "),fI.createElement(O,{color:e1().secondaryText},"(",d,"s · ",fI.createElement(O,{bold:!0},"esc")," to interrupt)"))}function gN(){let I=[...o11,...[...o11].reverse()],[G,Z]=zV.useState(0);return zV.useEffect(()=>{let d=setInterval(()=>{Z((W)=>(W+1)%I.length)},120);return()=>clearInterval(d)},[I.length]),fI.createElement(p,{flexWrap:"nowrap",height:1,width:2},fI.createElement(O,{color:e1().claude},I[G]))}var N2=A1(u1(),1);var KG=A1(u1(),1);function kL2({customApiKeyTruncated:I,onDone:G}){let Z=e1();function d(B){let w=Q2();switch(B){case"yes":{i4({...w,customApiKeyResponses:{...w.customApiKeyResponses,approved:[...w.customApiKeyResponses?.approved??[],I]}}),G();break}case"no":{i4({...w,customApiKeyResponses:{...w.customApiKeyResponses,rejected:[...w.customApiKeyResponses?.rejected??[],I]}}),G();break}}}let W=K6(()=>process.exit(0));return KG.default.createElement(KG.default.Fragment,null,KG.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:Z.warning},KG.default.createElement(O,{bold:!0,color:Z.warning},"Detected a custom API key in your environment"),KG.default.createElement(O,null,"Your environment sets"," ",KG.default.createElement(O,{color:Z.warning},"ANTHROPIC_API_KEY"),":"," ",KG.default.createElement(O,{bold:!0},"sk-ant-...",I)),KG.default.createElement(O,null,"Do you want to use this API key?"),KG.default.createElement(U7,{options:[{label:`No (${T0.bold("recommended")})`,value:"no"},{label:"Yes",value:"yes"}],onChange:(B)=>d(B)})),KG.default.createElement(p,{marginLeft:3},KG.default.createElement(O,{dimColor:!0},W.pending?KG.default.createElement(KG.default.Fragment,null,"Press ",W.keyName," again to exit"):KG.default.createElement(KG.default.Fragment,null,"Enter to confirm"))))}var y7=A1(u1(),1);var t11=A1(u1(),1);function xL2(I){let[G,Z]=t11.useState(!1);return t11.useEffect(()=>{let d=setTimeout(()=>{Z(!0)},I);return()=>clearTimeout(d)},[I]),G}async function of3(){try{let I=["https://api.anthropic.com/api/hello","https://console.anthropic.com/v1/oauth/hello"],G=async(W)=>{try{let B=await fC.get(W,{headers:{"User-Agent":lv}});if(B.status!==200)return{success:!1,error:`Failed to connect to ${new URL(W).hostname}: Status ${B.status}`};return{success:!0}}catch(B){return{success:!1,error:`Failed to connect to ${new URL(W).hostname}: ${B instanceof Error?B.message:String(B)}`}}};return(await Promise.all(I.map(G))).find((W)=>!W.success)||{success:!0}}catch(I){return W0(I),{success:!1,error:`Connectivity check error: ${I instanceof Error?I.message:String(I)}`}}}function hL2({onSuccess:I}){let[G,Z]=y7.useState(null),[d,W]=y7.useState(!0),B=e1(),w=xL2(1000)&&d;return y7.useEffect(()=>{async function V(){let C=await of3();Z(C),W(!1)}V()},[]),y7.useEffect(()=>{if(G?.success)I();else if(G&&!G.success){let V=setTimeout(()=>process.exit(1),100);return()=>clearTimeout(V)}},[G,I]),y7.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},d&&w?y7.default.createElement(p,{paddingLeft:1},y7.default.createElement(gN,null),y7.default.createElement(O,null,"Checking connectivity...")):!G?.success&&!d&&y7.default.createElement(p,{flexDirection:"column",gap:1},y7.default.createElement(O,{color:B.error},"Unable to connect to Anthropic services"),y7.default.createElement(O,{color:B.error},G?.error),y7.default.createElement(p,{flexDirection:"column",gap:1},y7.default.createElement(O,null,"Please check your internet connection and network settings."),y7.default.createElement(O,null,"Note: ",b2," might not be available in your country. Check supported countries at"," ",y7.default.createElement(O,{color:B.suggestion},"https://anthropic.com/supported-countries")))))}function df1({onDone:I}){let[G,Z]=N2.useState(0),d=Q2(),W=_n(),[B,w]=N2.useState(Dw.theme),V=e1();function C(){if(G<U.length-1){let M=G+1;Z(M)}}function X(M){i4({...d,theme:M}),C()}let Y=K6(()=>process.exit(0));_4(async(M,S)=>{let L=U[G];if(S.return&&L&&["usage","security"].includes(L.id))if(G===U.length-1)I();else{if(L.id==="security")await w8();C()}});let D=N2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},N2.default.createElement(O,null,"Let's get started."),N2.default.createElement(p,{flexDirection:"column"},N2.default.createElement(O,{bold:!0},"Choose the text style that looks best with your terminal:"),N2.default.createElement(O,{dimColor:!0},"To change this later, run /config")),N2.default.createElement(tI,{options:[{label:"Light text",value:"dark"},{label:"Dark text",value:"light"},{label:"Light text (colorblind-friendly)",value:"dark-daltonized"},{label:"Dark text (colorblind-friendly)",value:"light-daltonized"},{label:"Light text (ANSI colors only)",value:"dark-ansi"},{label:"Dark text (ANSI colors only)",value:"light-ansi"}],onFocus:(M)=>w(M),onChange:X,visibleOptionCount:6}),N2.default.createElement(p,{flexDirection:"column",paddingTop:1},N2.default.createElement(O,{bold:!0},"Preview"),N2.default.createElement(p,{paddingLeft:1,marginRight:1,borderStyle:"round",flexDirection:"column"},N2.default.createElement(EB,{patch:{oldStart:1,newStart:1,oldLines:3,newLines:3,lines:["function greet() {",'- console.log("Hello, World!");','+ console.log("Hello, Claude!");',"}"]},dim:!1,width:40,overrideTheme:B})))),J=N2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},N2.default.createElement(O,{bold:!0},"Security notes:"),N2.default.createElement(p,{flexDirection:"column",width:70},N2.default.createElement(II,null,N2.default.createElement(II.Item,null,N2.default.createElement(O,null,"Claude Code is currently in research preview"),N2.default.createElement(O,{color:V.secondaryText,wrap:"wrap"},"This beta version may have limitations or unexpected behaviors.",N2.default.createElement(R5,null),"Run /bug at any time to report issues.",N2.default.createElement(R5,null))),N2.default.createElement(II.Item,null,N2.default.createElement(O,null,"Claude can make mistakes"),N2.default.createElement(O,{color:V.secondaryText,wrap:"wrap"},"You should always review Claude's responses, especially when",N2.default.createElement(R5,null),"running code.",N2.default.createElement(R5,null))),N2.default.createElement(II.Item,null,N2.default.createElement(O,null,"Due to prompt injection risks, only use it with code you trust"),N2.default.createElement(O,{color:V.secondaryText,wrap:"wrap"},"For more details see:",N2.default.createElement(R5,null),N2.default.createElement(iC,{url:"https://docs.anthropic.com/s/claude-code-security"}))))),N2.default.createElement(JJ,null)),K=N2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},N2.default.createElement(O,{bold:!0},"Using ",b2," effectively:"),N2.default.createElement(p,{flexDirection:"column",width:70},N2.default.createElement(II,null,N2.default.createElement(II.Item,null,N2.default.createElement(O,null,"Start in your project directory",N2.default.createElement(R5,null),N2.default.createElement(O,{color:V.secondaryText},"Files are automatically added to context when needed."),N2.default.createElement(R5,null))),N2.default.createElement(II.Item,null,N2.default.createElement(O,null,"Use ",b2," as a development partner",N2.default.createElement(R5,null),N2.default.createElement(O,{color:V.secondaryText},"Get help with file analysis, editing, bash commands,",N2.default.createElement(R5,null),"and git history.",N2.default.createElement(R5,null)))),N2.default.createElement(II.Item,null,N2.default.createElement(O,null,"Provide clear context",N2.default.createElement(R5,null),N2.default.createElement(O,{color:V.secondaryText},"Be as specific as you would with another engineer. ",N2.default.createElement(R5,null),"The better the context, the better the results. ",N2.default.createElement(R5,null))))),N2.default.createElement(p,null,N2.default.createElement(O,null,"For more details on ",b2,", see:",N2.default.createElement(R5,null),N2.default.createElement(iC,{url:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.README_URL})))),N2.default.createElement(JJ,null)),z=N2.default.createElement(hL2,{onSuccess:C}),Q=N2.useMemo(()=>{return""},[]),U=[];if(W)U.push({id:"preflight",component:z});if(U.push({id:"theme",component:D}),W)U.push({id:"oauth",component:N2.default.createElement(I01,{onDone:C})});if(Q)U.push({id:"api-key",component:N2.default.createElement(kL2,{customApiKeyTruncated:Q,onDone:C})});return U.push({id:"security",component:J}),U.push({id:"usage",component:K}),N2.default.createElement(p,{flexDirection:"column",gap:1},U[G]?.id!=="oauth"&&N2.default.createElement(Wf1,null),N2.default.createElement(p,{flexDirection:"column",padding:0,gap:0},U[G]?.component,Y.pending&&N2.default.createElement(p,{padding:1},N2.default.createElement(O,{dimColor:!0},"Press ",Y.keyName," again to exit"))))}function Wf1(){let I=e1();return N2.default.createElement(p,{borderColor:I.claude,borderStyle:"round",paddingX:1,width:kW1},N2.default.createElement(O,null,N2.default.createElement(O,{color:I.claude},"✻")," Welcome to"," ",N2.default.createElement(O,{bold:!0},b2)," research preview!"))}function cL2({message:I,title:G}){let Z=G?`${G}:
|
|
1086
1086
|
${I}`:I;try{process.stdout.write(`\x1B]9;
|
|
1087
1087
|
|
|
1088
1088
|
${Z}\x07`)}catch{}}function pL2(){process.stdout.write("\x07")}async function G01(I){switch(Q2().preferredNotifChannel){case"iterm2":cL2(I);break;case"terminal_bell":pL2();break;case"iterm2_with_bell":cL2(I),pL2();break;case"notifications_disabled":break}}var iL2="Paste code here if prompted > ";function I01({onDone:I}){let[G,Z]=t2.useState({state:"idle"}),d=e1(),[W,B]=t2.useState(""),[w,V]=t2.useState(0),[C]=t2.useState(()=>new Gf1),[X,Y]=t2.useState(!1),[A,D]=t2.useState(!1),J=Q5().columns-iL2.length-1;t2.useEffect(()=>{if(A)w8(),D(!1)},[A]),t2.useEffect(()=>{if(G.state==="about_to_retry")D(!0),setTimeout(()=>{Z(G.nextState)},1000)},[G]),_4(async(M,S)=>{if(S.return){if(G.state==="idle")B0("tengu_oauth_start",{}),Z({state:"ready_to_start"});else if(G.state==="success")B0("tengu_oauth_success",{}),await w8(),I();else if(G.state==="error"&&G.toRetry)B(""),Z({state:"about_to_retry",nextState:G.toRetry})}});async function K(M,S){try{let[L,P]=M.split("#");if(!L||!P){Z({state:"error",message:"Invalid code. Please make sure the full code was copied",toRetry:{state:"waiting_for_login",url:S}});return}B0("tengu_oauth_manual_entry",{}),C.processCallback({authorizationCode:L,state:P,useManualRedirect:!0})}catch(L){W0(L),Z({state:"error",message:L.message,toRetry:{state:"waiting_for_login",url:S}})}}let z=t2.useCallback(async()=>{try{let M=await C.startOAuthFlow(async(L)=>{Z({state:"waiting_for_login",url:L}),setTimeout(()=>Y(!0),3000)}).catch((L)=>{if(L.message.includes("Token exchange failed"))Z({state:"error",message:"Failed to exchange authorization code for access token. Please try again.",toRetry:{state:"ready_to_start"}}),B0("tengu_oauth_token_exchange_error",{error:L.message});else Z({state:"error",message:L.message,toRetry:{state:"ready_to_start"}});throw L});Z({state:"creating_api_key"});let S=await lL2(M.accessToken).catch((L)=>{throw Z({state:"error",message:"Failed to create API key: "+L.message,toRetry:{state:"ready_to_start"}}),B0("tengu_oauth_api_key_error",{error:L.message}),L});if(S)Z({state:"success",apiKey:S}),G01({message:"Claude Code login successful"});else Z({state:"error",message:"Unable to create API key. The server accepted the request but didn't return a key.",toRetry:{state:"ready_to_start"}}),B0("tengu_oauth_api_key_error",{error:"server_returned_no_key"})}catch(M){let S=M.message;B0("tengu_oauth_error",{error:S})}},[C,Y]);t2.useEffect(()=>{if(G.state==="ready_to_start")z()},[G.state,z]);function Q(){switch(G.state){case"idle":return t2.default.createElement(p,{flexDirection:"column",gap:1},t2.default.createElement(O,{bold:!0},b2," is billed based on API usage through your Anthropic Console account."),t2.default.createElement(p,null,t2.default.createElement(O,null,"Pricing may evolve as we move towards general availability.")),t2.default.createElement(p,{marginTop:1},t2.default.createElement(O,{color:d.permission},"Press ",t2.default.createElement(O,{bold:!0},"Enter")," to login to your Anthropic Console account…")));case"waiting_for_login":return t2.default.createElement(p,{flexDirection:"column",gap:1},!X&&t2.default.createElement(p,null,t2.default.createElement(gN,null),t2.default.createElement(O,null,"Opening browser to sign in…")),X&&t2.default.createElement(p,null,t2.default.createElement(O,null,iL2),t2.default.createElement(MB,{value:W,onChange:B,onSubmit:(M)=>K(M,G.url),cursorOffset:w,onChangeCursorOffset:V,columns:J})));case"creating_api_key":return t2.default.createElement(p,{flexDirection:"column",gap:1},t2.default.createElement(p,null,t2.default.createElement(gN,null),t2.default.createElement(O,null,"Creating API key for Claude Code…")));case"about_to_retry":return t2.default.createElement(p,{flexDirection:"column",gap:1},t2.default.createElement(O,{color:d.permission},"Retrying…"));case"success":return t2.default.createElement(p,{flexDirection:"column",gap:2},Q2().oauthAccount?.emailAddress?t2.default.createElement(O,{dimColor:!0},"Logged in as"," ",t2.default.createElement(O,null,Q2().oauthAccount?.emailAddress)):null,t2.default.createElement(O,{color:d.success},"Login successful. Press ",t2.default.createElement(O,{bold:!0},"Enter")," to continue…"));case"error":return t2.default.createElement(p,{flexDirection:"column",gap:1},t2.default.createElement(O,{color:d.error},"OAuth error: ",G.message),G.toRetry&&t2.default.createElement(p,{marginTop:1},t2.default.createElement(O,{color:d.permission},"Press ",t2.default.createElement(O,{bold:!0},"Enter")," to retry.")));default:return null}}let U={};if(!A)U.header=t2.default.createElement(p,{key:"header",flexDirection:"column",gap:1},t2.default.createElement(Wf1,null),t2.default.createElement(p,{paddingBottom:1,paddingLeft:1},t2.default.createElement(jL2,null)));if(G.state==="waiting_for_login"&&X)U.urlToCopy=t2.default.createElement(p,{flexDirection:"column",key:"urlToCopy",gap:1,paddingBottom:1},t2.default.createElement(p,{paddingX:1},t2.default.createElement(O,{dimColor:!0},"Browser didn't open? Use the url below to sign in:")),t2.default.createElement(p,{width:1000},t2.default.createElement(O,{dimColor:!0},G.url)));return t2.default.createElement(p,{flexDirection:"column",gap:1},t2.default.createElement(iU,{items:Object.keys(U)},(M)=>U[M]),t2.default.createElement(p,{paddingLeft:1,flexDirection:"column",gap:1},Q()))}var nL2=()=>({type:"local-jsx",name:"login",description:Lw()?"Switch Anthropic accounts":"Sign in with your Anthropic account",isEnabled:!0,isHidden:!1,async call(I,G){return await w8(),zG.createElement(ef3,{onDone:async()=>{x11(G),I()}})},userFacingName(){return"login"}});function ef3(I){let G=K6(I.onDone);return zG.createElement(p,{flexDirection:"column"},zG.createElement(I01,{onDone:I.onDone}),zG.createElement(p,{marginLeft:3},zG.createElement(O,{dimColor:!0},G.pending?zG.createElement(zG.Fragment,null,"Press ",G.keyName," again to exit"):"")))}var Bf1=A1(u1(),1);var aL2={type:"local-jsx",name:"logout",description:"Sign out from your Anthropic account",isEnabled:!0,isHidden:!1,async call(){await w8(),HW0();let I=Q2();if(I.oauthAccount=void 0,I.hasCompletedOnboarding=!1,I.customApiKeyResponses?.approved)I.customApiKeyResponses.approved=[];i4(I);let G=Bf1.createElement(O,null,"Successfully logged out from your Anthropic account.");return setTimeout(()=>{process.exit(0)},200),G},userFacingName(){return"logout"}};var tf3=A1(u1(),1);var rL2={type:"prompt",name:"pr-comments",description:"Get comments from a GitHub pull request",progressMessage:"fetching PR comments",isEnabled:!0,isHidden:!1,userFacingName(){return"pr-comments"},async getPromptForCommand(I){return[{role:"user",content:[{type:"text",text:`You are an AI assistant integrated into a git-based version control system. Your task is to fetch and display comments from a GitHub pull request.
|
|
@@ -1118,7 +1118,7 @@ Remember:
|
|
|
1118
1118
|
5. Use jq to parse the JSON responses from the GitHub API
|
|
1119
1119
|
|
|
1120
1120
|
${I?"Additional user input: "+I:""}
|
|
1121
|
-
`}]}]}};var sL2=A1(VP(),1);var IR3={description:"Show release notes for the current or specified version",isEnabled:!1,isHidden:!1,name:"release-notes",userFacingName(){return"release-notes"},type:"local",async call(I){let G={ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1121
|
+
`}]}]}};var sL2=A1(VP(),1);var IR3={description:"Show release notes for the current or specified version",isEnabled:!1,isHidden:!1,name:"release-notes",userFacingName(){return"release-notes"},type:"local",async call(I){let G={ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION,Z=I?I.trim():G,d=sL2.coerce(Z);if(!d)return`Invalid version: ${Z}`;let W=Vi[d.toString()];if(!W||W.length===0)return`No release notes available for version ${d}.`;let B=`Release notes for version ${d}:`,w=W.map((V)=>`• ${V}`).join(`
|
|
1122
1122
|
`);return`${B}
|
|
1123
1123
|
|
|
1124
1124
|
${w}`}},oL2=IR3;var Z01={type:"prompt",name:"review",description:"Review a pull request",isEnabled:!0,isHidden:!1,progressMessage:"reviewing pull request",userFacingName(){return"review"},async getPromptForCommand(I){return[{role:"user",content:[{type:"text",text:`
|
|
@@ -1265,7 +1265,7 @@ Files modified by other users:
|
|
|
1265
1265
|
`);l.splice(m,1);let V1=l.join(`
|
|
1266
1266
|
`);I.onChange(V1),M=d8.fromText(V1,I.columns,m<l.length?P.offset:Math.max(0,P.offset-1)).offset}else if(z==="change"){let l=U.text.split(`
|
|
1267
1267
|
`);l[m]="",I.onChange(l.join(`
|
|
1268
|
-
`)),M=P.offset}else M=P.offset}return{newOffset:M,switchToInsert:S}}let L=C(Q,U);if(!L||U.equals(L))return{newOffset:M,switchToInsert:S};if(z==="move")M=L.offset;else{let[P,m]=U.offset<=L.offset?[U,L]:[L,U],l=m;if(Q==="e"&&U.offset<=L.offset)l=m.right();let V1=P.modifyText(l,"");if(I.onChange(V1.text),z==="change")M=P.offset;else M=V1.offset}return{newOffset:M,switchToInsert:S}},Y=(z)=>{if(z!==void 0)V.setOffset(z);Z("INSERT"),I.onModeChange?.("INSERT"),w?.(!0,"-- INSERT MODE --"),setTimeout(()=>w?.(!1),1000)},A=()=>{Z("NORMAL"),I.onModeChange?.("NORMAL"),w?.(!0,"-- NORMAL MODE --"),setTimeout(()=>w?.(!1),1000)},D=(z)=>{W.current=z},J=(z)=>{let Q=W.current;if(!Q)return;switch(Q.type){case"delete":if(Q.motion){let{newOffset:U}=X("delete",Q.motion,z);V.setOffset(U)}break;case"change":if(Q.motion){let{newOffset:U}=X("change",Q.motion,z);V.setOffset(U),Y(U)}break;case"insert":if(Q.insertedText){let U=z.insert(Q.insertedText);I.onChange(U.text),V.setOffset(U.offset)}break;case"x":if(!z.equals(z.del()))I.onChange(z.del().text),V.setOffset(z.del().offset);break}};return{...V,onInput:(z,Q)=>{let U=d8.fromText(I.value,I.columns,V.offset);if(Q.ctrl){V.onInput(z,Q);return}if(Q.escape&&G==="INSERT"){if(B.current)D({type:"insert",insertedText:B.current}),B.current="";A();return}if(G==="NORMAL"&&d.current){if(d.current==="d"){let{newOffset:M}=X("delete",z,U);V.setOffset(M),D({type:"delete",motion:z}),d.current="";return}else if(d.current==="c"){let{newOffset:M}=X("change",z,U);D({type:"change",motion:z}),d.current="",Y(M);return}else if(d.current==="g"&&z==="g"){let{newOffset:M}=X("move","gg",U);V.setOffset(M),d.current="";return}d.current=""}if(G==="NORMAL")switch(z){case".":{J(U);return}case"i":B.current="",Y();return;case"I":{B.current="",Y(U.startOfLine().offset);return}case"a":{B.current="",Y(U.right().offset);return}case"A":{B.current="",Y(U.endOfLine().offset);return}case"h":case"l":case"j":case"k":case"0":case"^":case"$":case"w":case"e":case"b":case"G":{let{newOffset:M}=X("move",z,U);V.setOffset(M);return}case"g":{d.current="g";return}case"x":{if(!U.equals(U.del()))I.onChange(U.del().text),V.setOffset(U.del().offset),D({type:"x"});return}case"d":d.current="d";return;case"D":{let M=X("delete","$",U);V.setOffset(M.newOffset),D({type:"delete",motion:"$"});return}case"c":d.current="c";return;case"C":{let M=X("change","$",U);V.setOffset(M.newOffset),D({type:"change",motion:"$"}),Y();return}}if(G==="INSERT"){if(Q.backspace||Q.delete){if(B.current.length>0)B.current=B.current.slice(0,-1)}else B.current+=z;V.onInput(z,Q)}},mode:G,setMode:Z}}function kv1(I){let G=hI().text,Z=gT2({value:I.value,onChange:I.onChange,onSubmit:I.onSubmit,onExit:I.onExit,onExitMessage:I.onExitMessage,onMessage:I.onMessage,onHistoryReset:I.onHistoryReset,onHistoryUp:I.onHistoryUp,onHistoryDown:I.onHistoryDown,focus:I.focus,mask:I.mask,multiline:I.multiline,cursorChar:I.showCursor?" ":"",highlightPastedText:I.highlightPastedText,invert:T0.inverse,themeText:(B)=>T0.ansi256(G)(B),columns:I.columns,onImagePaste:I.onImagePaste,disableCursorMovementForUpDownKeys:I.disableCursorMovementForUpDownKeys,externalOffset:I.cursorOffset,onOffsetChange:I.onChangeCursorOffset,onModeChange:I.onModeChange}),{mode:d,setMode:W}=Z;return S21.default.useEffect(()=>{if(I.initialMode&&I.initialMode!==d)W(I.initialMode)},[I.initialMode,d,W]),S21.default.createElement(p,{flexDirection:"column"},S21.default.createElement(l11,{inputState:Z,...I}))}function L21(){return!1}var T7=A1(u1(),1);var F4=A1(u1(),1),MT2=A1(u1(),1);var UT2=A1(u1(),1);class xv1 extends UT2.Component{constructor(I){super(I);this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(I){Xx(I)}render(){if(this.state.hasError)return null;return this.props.children}}var I5=A1(u1(),1);var fT2=A1(VP(),1),P21=A1(u1(),1);function RT2({debug:I,isUpdating:G,onChangeIsUpdating:Z,onAutoUpdaterResult:d,autoUpdaterResult:W}){let B=e1(),[w,V]=P21.useState({}),C=I5.useCallback(async()=>{if(G)return;let X={ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.33"}.VERSION,Y=await r11(),A=va1();if(V({global:X,latest:Y}),!A&&X&&Y&&!fT2.gte(X,Y)){let D=Date.now();Z(!0);let J=await s11();if(Z(!1),J==="success")B0("tengu_auto_updater_success",{fromVersion:X,toVersion:Y,durationMs:String(Date.now()-D)});else B0("tengu_auto_updater_fail",{fromVersion:X,attemptedVersion:Y,status:J,durationMs:String(Date.now()-D)});d({version:Y,status:J})}},[d]);if(P21.useEffect(()=>{C()},[C]),L01(C,1800000),I)return I5.createElement(p,{flexDirection:"row"},I5.createElement(O,{dimColor:!0},"globalVersion: ",w.global," · latestVersion:"," ",w.latest));if(!W?.version&&(!w.global||!w.latest))return null;if(!W?.version&&!G)return null;return I5.createElement(p,{flexDirection:"row",gap:1},I&&I5.createElement(O,{dimColor:!0},"globalVersion: ",w.global," · latestVersion:"," ",w.latest),G&&I5.createElement(I5.Fragment,null,I5.createElement(p,null,I5.createElement(O,{color:B.secondaryText,dimColor:!0,wrap:"end"},"Auto-updating to v",w.latest,"…"))),W?.status==="success"&&W?.version?I5.createElement(O,{color:B.success},"✓ Update installed · Restart to apply"):null,(W?.status==="install_failed"||W?.status==="no_permissions")&&I5.createElement(O,{color:B.error},"✗ Auto-update failed · Try ",I5.createElement(O,{bold:!0},"claude doctor")," or"," ",I5.createElement(O,{bold:!0},"npm i -g ",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.33"}.PACKAGE_URL)))}var zb=A1(u1(),1);var hv1=190000,cv1=hv1*0.6,bP3=hv1*0.8;function vT2({tokenUsage:I}){let G=e1();if(I<cv1)return null;let Z=I>=bP3;return zb.createElement(p,{flexDirection:"row"},zb.createElement(O,{color:Z?G.error:G.warning},"Context low (",Math.max(0,100-Math.round(I/hv1*100)),"% remaining) · Run /compact to compact & continue"))}function ET2({autoUpdaterResult:I,isAutoUpdating:G,debug:Z,messages:d,tokenUsage:W,permissionMode:B,onAutoUpdaterResult:w,onChangeIsUpdating:V}){let C=!!I||!!G,X=W>=cv1,Y=P$2(B);return F4.createElement(xv1,null,F4.createElement(p,{justifyContent:"flex-end",gap:1},!C&&!Y&&!Z&&!X&&F4.createElement(O,{dimColor:!0},eU.isEnabled&&A20()?"shift + ⏎ for newline":_20()?"\\⏎ for newline":"Backslash (\\) + Return (⏎) for newline"),Y&&F4.createElement(O,{color:e1().warning},Y),!Y&&Z&&F4.createElement(O,{dimColor:!0},`${xA(d)} tokens (${Math.round(1e4*(eD2(d)||1)/(xA(d)||1))/100}% cached)`),F4.createElement(vT2,{tokenUsage:W}),F4.createElement(RT2,{debug:Z,onAutoUpdaterResult:w,autoUpdaterResult:I,isUpdating:G,onChangeIsUpdating:V})))}function lP3({exitMessage:I,message:G,vimMode:Z,mode:d,autoUpdaterResult:W,isAutoUpdating:B,debug:w,messages:V,tokenUsage:C,onAutoUpdaterResult:X,onChangeIsUpdating:Y,suggestions:A,selectedSuggestion:D,commands:J,permissionMode:K,writeFileAllowedDirectories:z}){let{columns:Q}=Q5(),U=e1();if(A.length===0)return F4.createElement(p,{flexDirection:"row",justifyContent:"space-between",paddingX:2,paddingY:0},F4.createElement(p,{justifyContent:"flex-start",gap:1},vB(jP3({exitMessage:I,message:G,mode:d,writeFileAllowedDirectories:z,vimMode:Z}),(S)=>F4.createElement(O,{dimColor:!0,key:`dot-${S}`},"·"))),F4.createElement(ET2,{autoUpdaterResult:W,isAutoUpdating:B,debug:w,messages:V,tokenUsage:C,permissionMode:K,onAutoUpdaterResult:X,onChangeIsUpdating:Y}));return F4.createElement(p,{flexDirection:"row",justifyContent:"space-between",paddingX:2,paddingY:0},F4.createElement(p,{flexDirection:"column"},A.map((S,L)=>{let P=J.find((m)=>m.userFacingName()===S.replace("/",""));return F4.createElement(p,{key:S,flexDirection:Q<80?"column":"row"},F4.createElement(p,{width:Q<80?void 0:M()},F4.createElement(O,{color:L===D?U.suggestion:void 0,dimColor:L!==D},"/",S,P?.aliases&&P.aliases.length>0&&F4.createElement(O,{dimColor:!0}," (",P.aliases.join(", "),")"))),P&&F4.createElement(p,{width:Q-(Q<80?4:M()+4),paddingLeft:Q<80?4:0},F4.createElement(O,{color:L===D?U.suggestion:void 0,dimColor:L!==D,wrap:"wrap"},F4.createElement(O,{dimColor:L!==D},P.description,P.type==="prompt"&&P.argNames?.length?` (arguments: ${P.argNames.join(", ")})`:null))))})),F4.createElement(ET2,{autoUpdaterResult:W,isAutoUpdating:B,debug:w,messages:V,tokenUsage:xA(V),permissionMode:K,onAutoUpdaterResult:X,onChangeIsUpdating:Y}));function M(){return Math.max(...J.map((S)=>S.userFacingName().length))+5}}function jP3({exitMessage:I,message:G,mode:Z,writeFileAllowedDirectories:d,vimMode:W}){if(I.show)return[F4.createElement(O,{dimColor:!0,key:"exit-message"},"Press ",I.key," again to exit")];let B=e1();if(G.show)return[F4.createElement(O,{color:G.color&&G.color in B?B[G.color]:void 0,dimColor:!G.color,key:"message"},G.text)];return[...L21()&&W==="INSERT"?[F4.createElement(O,{dimColor:!0,key:"vim-insert"},"-- INSERT --")]:[],...[],F4.createElement(O,{color:Z==="bash"?B.bashBorder:void 0,dimColor:Z!=="bash",key:"bash-mode"},"! for bash mode"),F4.createElement(O,{dimColor:!0,key:"/ for commands"},"/ for commands")]}var $T2=MT2.memo(lP3);function ST2(I){return`[Pasted text +${(I.match(/\r\n|\r|\n/g)||[]).length} lines] `}function kP3({allowedToolsFromCLIFlag:I,commands:G,forkNumber:Z,messageLogName:d,isDisabled:W,isLoading:B,onQuery:w,debug:V,verbose:C,messages:X,setToolJSX:Y,onAutoUpdaterResult:A,autoUpdaterResult:D,tools:J,input:K,onInputChange:z,mode:Q,onModeChange:U,submitCount:M,onSubmitCountChange:S,setIsLoading:L,setAbortController:P,onShowMessageSelector:m,setForkConvoWithMessagesOnTheNextRender:l,setMessages:V1,readFileTimestamps:k,permissionMode:l1,writeFileAllowedDirectories:H1,setWriteFileAllowedDirectories:$1}){let[F1,u]=T7.useState(!1),[I1,m1]=T7.useState({show:!1}),[j1,a1]=T7.useState(0),[N0,f0]=T7.useState({show:!1}),[G2,J0]=T7.useState(null),[G1,f1]=T7.useState(""),[Q1,h1]=T7.useState(K.length),[s1,V0]=T7.useState(null),[i,o]=T7.useState("INSERT");T7.useEffect(()=>{v21().then((K0)=>{f1(`Try "${cK(K0)}"`)})},[]);let{suggestions:d1,selectedSuggestion:v1,updateSuggestions:R1,clearSuggestions:q1}=qT2({commands:G,onInputChange:z,onSubmit:Y0,setCursorOffset:h1});_4((K0,w2)=>{if(K0!==""||!w2.tab)return;$1((c4)=>{if(c4.has(a8()))c4.delete(a8());else c4.add(a8());return new Set(c4)})});let n1=T7.useCallback((K0)=>{if(K0.startsWith("!")){U("bash");return}R1(K0),z(K0)},[U,z,R1]),{resetHistory:g1,onHistoryUp:L1,onHistoryDown:k1}=GT2((K0,w2)=>{n1(K0),U(w2)},K),n=()=>{if(d1.length<=1)L1()},D1=()=>{if(d1.length<=1)k1()};async function Y0(K0,w2=!1){if(K0==="")return;if(W)return;if(B)return;if(d1.length>0&&!w2)return;if(["exit","quit",":q",":q!",":wq",":wq!"].includes(K0.trim()))xP3();let c4=K0;if(s1){let k0=ST2(s1);if(c4.includes(k0))c4=c4.replace(k0,s1)}z(""),U("prompt"),q1(),J0(null),V0(null),S((k0)=>k0+1),L(!0);let m0=new AbortController;P(m0);let C2=await g8(),W2=await R01(c4,Q,Y,{options:{commands:G,allowedToolsFromCLIFlag:I,forkNumber:Z,messageLogName:d,tools:J,verbose:C,slowAndCapableModel:C2,maxThinkingTokens:0},messages:X,abortController:m0,readFileTimestamps:k,setForkConvoWithMessagesOnTheNextRender:l,setMessages:V1,addNotification:(k0,c0={})=>{let{timeoutMs:i2=8000,color:P4}=c0;a1((L5)=>{let l3=L5+1;return f0({show:!0,text:k0,color:P4}),setTimeout(()=>{a1((i6)=>{if(l3===i6)f0({show:!1});return i6})},i2),l3})}},G2??null,H1);if(W2.length)w(W2,m0);else{MJ(K0),g1();return}for(let k0 of W2)if(k0.type==="user"){let c0=Q==="bash"?`!${K0}`:Q==="memory"?`#${K0}`:K0;MJ(c0),g1()}}function r1(K0){U("prompt"),J0(K0)}function z0(K0){let w2=K0.replace(/\r/g,`
|
|
1268
|
+
`)),M=P.offset}else M=P.offset}return{newOffset:M,switchToInsert:S}}let L=C(Q,U);if(!L||U.equals(L))return{newOffset:M,switchToInsert:S};if(z==="move")M=L.offset;else{let[P,m]=U.offset<=L.offset?[U,L]:[L,U],l=m;if(Q==="e"&&U.offset<=L.offset)l=m.right();let V1=P.modifyText(l,"");if(I.onChange(V1.text),z==="change")M=P.offset;else M=V1.offset}return{newOffset:M,switchToInsert:S}},Y=(z)=>{if(z!==void 0)V.setOffset(z);Z("INSERT"),I.onModeChange?.("INSERT"),w?.(!0,"-- INSERT MODE --"),setTimeout(()=>w?.(!1),1000)},A=()=>{Z("NORMAL"),I.onModeChange?.("NORMAL"),w?.(!0,"-- NORMAL MODE --"),setTimeout(()=>w?.(!1),1000)},D=(z)=>{W.current=z},J=(z)=>{let Q=W.current;if(!Q)return;switch(Q.type){case"delete":if(Q.motion){let{newOffset:U}=X("delete",Q.motion,z);V.setOffset(U)}break;case"change":if(Q.motion){let{newOffset:U}=X("change",Q.motion,z);V.setOffset(U),Y(U)}break;case"insert":if(Q.insertedText){let U=z.insert(Q.insertedText);I.onChange(U.text),V.setOffset(U.offset)}break;case"x":if(!z.equals(z.del()))I.onChange(z.del().text),V.setOffset(z.del().offset);break}};return{...V,onInput:(z,Q)=>{let U=d8.fromText(I.value,I.columns,V.offset);if(Q.ctrl){V.onInput(z,Q);return}if(Q.escape&&G==="INSERT"){if(B.current)D({type:"insert",insertedText:B.current}),B.current="";A();return}if(G==="NORMAL"&&d.current){if(d.current==="d"){let{newOffset:M}=X("delete",z,U);V.setOffset(M),D({type:"delete",motion:z}),d.current="";return}else if(d.current==="c"){let{newOffset:M}=X("change",z,U);D({type:"change",motion:z}),d.current="",Y(M);return}else if(d.current==="g"&&z==="g"){let{newOffset:M}=X("move","gg",U);V.setOffset(M),d.current="";return}d.current=""}if(G==="NORMAL")switch(z){case".":{J(U);return}case"i":B.current="",Y();return;case"I":{B.current="",Y(U.startOfLine().offset);return}case"a":{B.current="",Y(U.right().offset);return}case"A":{B.current="",Y(U.endOfLine().offset);return}case"h":case"l":case"j":case"k":case"0":case"^":case"$":case"w":case"e":case"b":case"G":{let{newOffset:M}=X("move",z,U);V.setOffset(M);return}case"g":{d.current="g";return}case"x":{if(!U.equals(U.del()))I.onChange(U.del().text),V.setOffset(U.del().offset),D({type:"x"});return}case"d":d.current="d";return;case"D":{let M=X("delete","$",U);V.setOffset(M.newOffset),D({type:"delete",motion:"$"});return}case"c":d.current="c";return;case"C":{let M=X("change","$",U);V.setOffset(M.newOffset),D({type:"change",motion:"$"}),Y();return}}if(G==="INSERT"){if(Q.backspace||Q.delete){if(B.current.length>0)B.current=B.current.slice(0,-1)}else B.current+=z;V.onInput(z,Q)}},mode:G,setMode:Z}}function kv1(I){let G=hI().text,Z=gT2({value:I.value,onChange:I.onChange,onSubmit:I.onSubmit,onExit:I.onExit,onExitMessage:I.onExitMessage,onMessage:I.onMessage,onHistoryReset:I.onHistoryReset,onHistoryUp:I.onHistoryUp,onHistoryDown:I.onHistoryDown,focus:I.focus,mask:I.mask,multiline:I.multiline,cursorChar:I.showCursor?" ":"",highlightPastedText:I.highlightPastedText,invert:T0.inverse,themeText:(B)=>T0.ansi256(G)(B),columns:I.columns,onImagePaste:I.onImagePaste,disableCursorMovementForUpDownKeys:I.disableCursorMovementForUpDownKeys,externalOffset:I.cursorOffset,onOffsetChange:I.onChangeCursorOffset,onModeChange:I.onModeChange}),{mode:d,setMode:W}=Z;return S21.default.useEffect(()=>{if(I.initialMode&&I.initialMode!==d)W(I.initialMode)},[I.initialMode,d,W]),S21.default.createElement(p,{flexDirection:"column"},S21.default.createElement(l11,{inputState:Z,...I}))}function L21(){return!1}var T7=A1(u1(),1);var F4=A1(u1(),1),MT2=A1(u1(),1);var UT2=A1(u1(),1);class xv1 extends UT2.Component{constructor(I){super(I);this.state={hasError:!1}}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(I){Xx(I)}render(){if(this.state.hasError)return null;return this.props.children}}var I5=A1(u1(),1);var fT2=A1(VP(),1),P21=A1(u1(),1);function RT2({debug:I,isUpdating:G,onChangeIsUpdating:Z,onAutoUpdaterResult:d,autoUpdaterResult:W}){let B=e1(),[w,V]=P21.useState({}),C=I5.useCallback(async()=>{if(G)return;let X={ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION,Y=await r11(),A=va1();if(V({global:X,latest:Y}),!A&&X&&Y&&!fT2.gte(X,Y)){let D=Date.now();Z(!0);let J=await s11();if(Z(!1),J==="success")B0("tengu_auto_updater_success",{fromVersion:X,toVersion:Y,durationMs:String(Date.now()-D)});else B0("tengu_auto_updater_fail",{fromVersion:X,attemptedVersion:Y,status:J,durationMs:String(Date.now()-D)});d({version:Y,status:J})}},[d]);if(P21.useEffect(()=>{C()},[C]),L01(C,1800000),I)return I5.createElement(p,{flexDirection:"row"},I5.createElement(O,{dimColor:!0},"globalVersion: ",w.global," · latestVersion:"," ",w.latest));if(!W?.version&&(!w.global||!w.latest))return null;if(!W?.version&&!G)return null;return I5.createElement(p,{flexDirection:"row",gap:1},I&&I5.createElement(O,{dimColor:!0},"globalVersion: ",w.global," · latestVersion:"," ",w.latest),G&&I5.createElement(I5.Fragment,null,I5.createElement(p,null,I5.createElement(O,{color:B.secondaryText,dimColor:!0,wrap:"end"},"Auto-updating to v",w.latest,"…"))),W?.status==="success"&&W?.version?I5.createElement(O,{color:B.success},"✓ Update installed · Restart to apply"):null,(W?.status==="install_failed"||W?.status==="no_permissions")&&I5.createElement(O,{color:B.error},"✗ Auto-update failed · Try ",I5.createElement(O,{bold:!0},"claude doctor")," or"," ",I5.createElement(O,{bold:!0},"npm i -g ",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.PACKAGE_URL)))}var zb=A1(u1(),1);var hv1=190000,cv1=hv1*0.6,bP3=hv1*0.8;function vT2({tokenUsage:I}){let G=e1();if(I<cv1)return null;let Z=I>=bP3;return zb.createElement(p,{flexDirection:"row"},zb.createElement(O,{color:Z?G.error:G.warning},"Context low (",Math.max(0,100-Math.round(I/hv1*100)),"% remaining) · Run /compact to compact & continue"))}function ET2({autoUpdaterResult:I,isAutoUpdating:G,debug:Z,messages:d,tokenUsage:W,permissionMode:B,onAutoUpdaterResult:w,onChangeIsUpdating:V}){let C=!!I||!!G,X=W>=cv1,Y=P$2(B);return F4.createElement(xv1,null,F4.createElement(p,{justifyContent:"flex-end",gap:1},!C&&!Y&&!Z&&!X&&F4.createElement(O,{dimColor:!0},eU.isEnabled&&A20()?"shift + ⏎ for newline":_20()?"\\⏎ for newline":"Backslash (\\) + Return (⏎) for newline"),Y&&F4.createElement(O,{color:e1().warning},Y),!Y&&Z&&F4.createElement(O,{dimColor:!0},`${xA(d)} tokens (${Math.round(1e4*(eD2(d)||1)/(xA(d)||1))/100}% cached)`),F4.createElement(vT2,{tokenUsage:W}),F4.createElement(RT2,{debug:Z,onAutoUpdaterResult:w,autoUpdaterResult:I,isUpdating:G,onChangeIsUpdating:V})))}function lP3({exitMessage:I,message:G,vimMode:Z,mode:d,autoUpdaterResult:W,isAutoUpdating:B,debug:w,messages:V,tokenUsage:C,onAutoUpdaterResult:X,onChangeIsUpdating:Y,suggestions:A,selectedSuggestion:D,commands:J,permissionMode:K,writeFileAllowedDirectories:z}){let{columns:Q}=Q5(),U=e1();if(A.length===0)return F4.createElement(p,{flexDirection:"row",justifyContent:"space-between",paddingX:2,paddingY:0},F4.createElement(p,{justifyContent:"flex-start",gap:1},vB(jP3({exitMessage:I,message:G,mode:d,writeFileAllowedDirectories:z,vimMode:Z}),(S)=>F4.createElement(O,{dimColor:!0,key:`dot-${S}`},"·"))),F4.createElement(ET2,{autoUpdaterResult:W,isAutoUpdating:B,debug:w,messages:V,tokenUsage:C,permissionMode:K,onAutoUpdaterResult:X,onChangeIsUpdating:Y}));return F4.createElement(p,{flexDirection:"row",justifyContent:"space-between",paddingX:2,paddingY:0},F4.createElement(p,{flexDirection:"column"},A.map((S,L)=>{let P=J.find((m)=>m.userFacingName()===S.replace("/",""));return F4.createElement(p,{key:S,flexDirection:Q<80?"column":"row"},F4.createElement(p,{width:Q<80?void 0:M()},F4.createElement(O,{color:L===D?U.suggestion:void 0,dimColor:L!==D},"/",S,P?.aliases&&P.aliases.length>0&&F4.createElement(O,{dimColor:!0}," (",P.aliases.join(", "),")"))),P&&F4.createElement(p,{width:Q-(Q<80?4:M()+4),paddingLeft:Q<80?4:0},F4.createElement(O,{color:L===D?U.suggestion:void 0,dimColor:L!==D,wrap:"wrap"},F4.createElement(O,{dimColor:L!==D},P.description,P.type==="prompt"&&P.argNames?.length?` (arguments: ${P.argNames.join(", ")})`:null))))})),F4.createElement(ET2,{autoUpdaterResult:W,isAutoUpdating:B,debug:w,messages:V,tokenUsage:xA(V),permissionMode:K,onAutoUpdaterResult:X,onChangeIsUpdating:Y}));function M(){return Math.max(...J.map((S)=>S.userFacingName().length))+5}}function jP3({exitMessage:I,message:G,mode:Z,writeFileAllowedDirectories:d,vimMode:W}){if(I.show)return[F4.createElement(O,{dimColor:!0,key:"exit-message"},"Press ",I.key," again to exit")];let B=e1();if(G.show)return[F4.createElement(O,{color:G.color&&G.color in B?B[G.color]:void 0,dimColor:!G.color,key:"message"},G.text)];return[...L21()&&W==="INSERT"?[F4.createElement(O,{dimColor:!0,key:"vim-insert"},"-- INSERT --")]:[],...[],F4.createElement(O,{color:Z==="bash"?B.bashBorder:void 0,dimColor:Z!=="bash",key:"bash-mode"},"! for bash mode"),F4.createElement(O,{dimColor:!0,key:"/ for commands"},"/ for commands")]}var $T2=MT2.memo(lP3);function ST2(I){return`[Pasted text +${(I.match(/\r\n|\r|\n/g)||[]).length} lines] `}function kP3({allowedToolsFromCLIFlag:I,commands:G,forkNumber:Z,messageLogName:d,isDisabled:W,isLoading:B,onQuery:w,debug:V,verbose:C,messages:X,setToolJSX:Y,onAutoUpdaterResult:A,autoUpdaterResult:D,tools:J,input:K,onInputChange:z,mode:Q,onModeChange:U,submitCount:M,onSubmitCountChange:S,setIsLoading:L,setAbortController:P,onShowMessageSelector:m,setForkConvoWithMessagesOnTheNextRender:l,setMessages:V1,readFileTimestamps:k,permissionMode:l1,writeFileAllowedDirectories:H1,setWriteFileAllowedDirectories:$1}){let[F1,u]=T7.useState(!1),[I1,m1]=T7.useState({show:!1}),[j1,a1]=T7.useState(0),[N0,f0]=T7.useState({show:!1}),[G2,J0]=T7.useState(null),[G1,f1]=T7.useState(""),[Q1,h1]=T7.useState(K.length),[s1,V0]=T7.useState(null),[i,o]=T7.useState("INSERT");T7.useEffect(()=>{v21().then((K0)=>{f1(`Try "${cK(K0)}"`)})},[]);let{suggestions:d1,selectedSuggestion:v1,updateSuggestions:R1,clearSuggestions:q1}=qT2({commands:G,onInputChange:z,onSubmit:Y0,setCursorOffset:h1});_4((K0,w2)=>{if(K0!==""||!w2.tab)return;$1((c4)=>{if(c4.has(a8()))c4.delete(a8());else c4.add(a8());return new Set(c4)})});let n1=T7.useCallback((K0)=>{if(K0.startsWith("!")){U("bash");return}R1(K0),z(K0)},[U,z,R1]),{resetHistory:g1,onHistoryUp:L1,onHistoryDown:k1}=GT2((K0,w2)=>{n1(K0),U(w2)},K),n=()=>{if(d1.length<=1)L1()},D1=()=>{if(d1.length<=1)k1()};async function Y0(K0,w2=!1){if(K0==="")return;if(W)return;if(B)return;if(d1.length>0&&!w2)return;if(["exit","quit",":q",":q!",":wq",":wq!"].includes(K0.trim()))xP3();let c4=K0;if(s1){let k0=ST2(s1);if(c4.includes(k0))c4=c4.replace(k0,s1)}z(""),U("prompt"),q1(),J0(null),V0(null),S((k0)=>k0+1),L(!0);let m0=new AbortController;P(m0);let C2=await g8(),W2=await R01(c4,Q,Y,{options:{commands:G,allowedToolsFromCLIFlag:I,forkNumber:Z,messageLogName:d,tools:J,verbose:C,slowAndCapableModel:C2,maxThinkingTokens:0},messages:X,abortController:m0,readFileTimestamps:k,setForkConvoWithMessagesOnTheNextRender:l,setMessages:V1,addNotification:(k0,c0={})=>{let{timeoutMs:i2=8000,color:P4}=c0;a1((L5)=>{let l3=L5+1;return f0({show:!0,text:k0,color:P4}),setTimeout(()=>{a1((i6)=>{if(l3===i6)f0({show:!1});return i6})},i2),l3})}},G2??null,H1);if(W2.length)w(W2,m0);else{MJ(K0),g1();return}for(let k0 of W2)if(k0.type==="user"){let c0=Q==="bash"?`!${K0}`:Q==="memory"?`#${K0}`:K0;MJ(c0),g1()}}function r1(K0){U("prompt"),J0(K0)}function z0(K0){let w2=K0.replace(/\r/g,`
|
|
1269
1269
|
`),c4=ST2(w2),m0=K.slice(0,Q1)+c4+K.slice(Q1);z(m0),h1(Q1+c4.length),V0(w2)}_4((K0,w2)=>{if(K===""&&(w2.escape||w2.backspace||w2.delete))U("prompt");if(w2.escape&&X.length>0&&!K&&!B)m()});let s0=Q5().columns-6,C0=T7.useMemo(()=>xA(X),[X]),l0=e1();return X8.createElement(p,{flexDirection:"column"},X8.createElement(p,{alignItems:"flex-start",justifyContent:"flex-start",borderColor:Q==="bash"?l0.bashBorder:Q==="memory"?l0.remember:l0.secondaryBorder,borderDimColor:Q!=="memory",borderStyle:"round",marginTop:1,width:"100%"},X8.createElement(p,{alignItems:"flex-start",alignSelf:"flex-start",flexWrap:"nowrap",justifyContent:"flex-start",width:3},Q==="bash"?X8.createElement(O,{color:l0.bashBorder}," ! "):Q==="memory"?X8.createElement(O,{color:l0.remember}," # "):X8.createElement(O,{color:B?l0.secondaryText:void 0}," > ")),X8.createElement(p,{paddingRight:1},(()=>{let K0={multiline:!0,onSubmit:Y0,onChange:n1,value:K,onHistoryUp:n,onHistoryDown:D1,onHistoryReset:()=>g1(),placeholder:M>0?void 0:G1,onExit:()=>process.exit(0),onExitMessage:(w2,c4)=>m1({show:w2,key:c4}),onMessage:(w2,c4)=>f0({show:w2,text:c4}),onImagePaste:r1,columns:s0,isDimmed:W||B,disableCursorMovementForUpDownKeys:d1.length>0,cursorOffset:Q1,onChangeCursorOffset:h1,onPaste:z0,focus:!0,showCursor:!0};return L21()?X8.createElement(kv1,{...K0,initialMode:i,onModeChange:o}):X8.createElement(MB,{...K0})})())),X8.createElement($T2,{exitMessage:I1,message:N0,vimMode:i,mode:Q,autoUpdaterResult:D,isAutoUpdating:F1,debug:V,messages:X,tokenUsage:C0,onAutoUpdaterResult:A,onChangeIsUpdating:u,suggestions:d1,selectedSuggestion:v1,commands:G,permissionMode:l1||"default",writeFileAllowedDirectories:H1}))}var LT2=T7.memo(kP3);function xP3(){TU1(""),process.exit(0)}var PT2=A1(u1(),1);function uT2(){PT2.useEffect(()=>{let I=Math.round(process.uptime()*1000);B0("tengu_timer",{event:"startup",durationMs:String(I)})},[])}var Qb=A1(u1(),1);function yT2(){let[I,G]=Qb.useState(()=>{return Lw()?"loading":"missing"}),[Z,d]=Qb.useState(null),W=Qb.useCallback(async()=>{let B=Lw();if(!B){G("missing");return}try{let V=await _$2(B)?"valid":"invalid";G(V);return}catch(w){d(w),G("error");return}},[]);return{status:I,reverify:W,error:Z}}function OT2(I,G,Z,d,W,B,w){_4((V,C)=>{if(!C.escape)return;if(w?.aborted)return;if(!w)return;if(!W)return;if(B)return;B0("tengu_cancel",{}),I(null),G(null),Z(null),d()})}var mT2=A1(u1(),1);function hP3(I){return mT2.useCallback(async(G,Z,d,W,B)=>{return new Promise((w)=>{function V(){B0("tengu_tool_use_cancelled",{messageID:W.message.id,toolName:G.name})}function C(){w({result:!1,message:mT}),d.abortController.abort()}if(d.abortController.signal.aborted){V(),C();return}return EJ(G,Z,d,W,B).then(async(X)=>{if(X.result){B0("tengu_tool_use_granted_in_config",{messageID:W.message.id,toolName:G.name}),w({result:!0});return}let[Y,A]=await Promise.all([G.description(Z,{permissionMode:d.options.permissionMode??"default"}),G===l4?At(wT.parse(Z).command,d.abortController.signal):Promise.resolve(null)]);if(d.abortController.signal.aborted){V(),C();return}I({assistantMessage:W,tool:G,description:Y,input:Z,commandPrefix:A,riskScore:null,onAbort(){V(),B0("tengu_tool_use_rejected_in_prompt",{messageID:W.message.id,toolName:G.name}),C()},onAllow(D){if(D==="permanent")B0("tengu_tool_use_granted_in_prompt_permanent",{messageID:W.message.id,toolName:G.name});else B0("tengu_tool_use_granted_in_prompt_temporary",{messageID:W.message.id,toolName:G.name});w({result:!0})},onReject(){B0("tengu_tool_use_rejected_in_prompt",{messageID:W.message.id,toolName:G.name}),C()}})}).catch((X)=>{if(X instanceof NC)V(),C();else W0(X)})})},[I])}var TT2=hP3;var bT2=A1(u1(),1);function lT2(I,G,Z){bT2.useEffect(()=>{Eg(JC(G,Z,0),Mg(I))},[I,G,Z])}var kT2=A1(u1(),1);var jT2=A1(u1(),1);var cP3=A1(u1(),1);async function Nb(I){let G=UY(I);if(G?.type!=="user"||typeof G.message.content!=="string")return B0("tengu_thinking",{method:"scratchpad",tokenCount:"0",messageId:pE(I),provider:E6?"bedrock":M6?"vertex":"1p"}),0;let Z=G.message.content.toLowerCase();if(Z.includes("think harder")||Z.includes("think intensely")||Z.includes("think longer")||Z.includes("think really hard")||Z.includes("think super hard")||Z.includes("think very hard")||Z.includes("ultrathink"))return B0("tengu_thinking",{method:"scratchpad",tokenCount:"31999",messageId:pE(I),provider:E6?"bedrock":M6?"vertex":"1p"}),31999;if(Z.includes("think about it")||Z.includes("think a lot")||Z.includes("think hard")||Z.includes("think more")||Z.includes("megathink"))return B0("tengu_thinking",{method:"scratchpad",tokenCount:"10000",messageId:pE(I),provider:E6?"bedrock":M6?"vertex":"1p"}),1e4;if(Z.includes("think"))return B0("tengu_thinking",{method:"scratchpad",tokenCount:"4000",messageId:pE(I),provider:E6?"bedrock":M6?"vertex":"1p"}),4000;return B0("tengu_thinking",{method:"scratchpad",tokenCount:"0",messageId:pE(I),provider:E6?"bedrock":M6?"vertex":"1p"}),0}function Vf1({commands:I,permissionMode:G,debug:Z=!1,initialForkNumber:d=0,initialPrompt:W,messageLogName:B,shouldShowPromptInput:w,tools:V,verbose:C,initialMessages:X,mcpClients:Y=[],isDefaultModel:A=!0,allowedToolsFromCLIFlag:D}){let J=C??Q2().verbose,[K,z]=z3.useState(k51(B,d,0)),[Q,U]=z3.useState(null),[M,S]=z3.useState(null),[L,P]=z3.useState(!1),[m,l]=z3.useState(null),[V1,k]=z3.useState(null),[l1,H1]=z3.useState(null),[$1,F1]=z3.useState(X??[]),[u,I1]=z3.useState(""),[m1,j1]=z3.useState("prompt"),[a1,N0]=z3.useState(0),[f0,G2]=z3.useState(!1),[J0,G1]=z3.useState(!1),[f1,Q1]=z3.useState(Q2().hasAcknowledgedCostThreshold),[h1,s1]=z3.useState(new Set),[V0,i]=z3.useState(null),o=z3.useCallback((C0,l0)=>{return new Promise((K0)=>{i({m1:C0,m2:l0,resolve:K0})})},[]),d1=z3.useRef({}),{status:v1,reverify:R1}=yT2();function q1(){if(!L)return;if(P(!1),l1)l1.onAbort();else M?.abort()}OT2(k,H1,i,q1,L,f0,M?.signal),z3.useEffect(()=>{if(Q)z((C0)=>C0+1),U(null),F1(Q)},[Q]),z3.useEffect(()=>{if(Iz()>=5&&!J0&&!f1)B0("tengu_cost_threshold_reached",{}),G1(!0)},[$1,J0,f1]);let n1=TT2(H1);async function g1(){if(R1(),!W)return;P(!0);let C0=new AbortController;S(C0);let l0=await g8(),K0=await R01(W,"prompt",k,{abortController:C0,options:{commands:I,forkNumber:K,messageLogName:B,tools:V,verbose:J,slowAndCapableModel:l0,maxThinkingTokens:0,allowedToolsFromCLIFlag:D},messages:$1,setForkConvoWithMessagesOnTheNextRender:U,setMessages:F1,readFileTimestamps:d1.current},null,h1);if(K0.length){for(let k0 of K0)if(k0.type==="user")MJ(W);if(F1((k0)=>[...k0,...K0]),K0[K0.length-1].type==="assistant"){S(null),P(!1);return}let[c4,m0,C2,W2]=await Promise.all([$E(),FG(),g8(),Nb([...$1,...K0])]);for await(let k0 of TX([...$1,...K0],c4,m0,n1,{options:{commands:I,forkNumber:K,messageLogName:B,tools:V,slowAndCapableModel:C2,verbose:J,permissionMode:G,maxThinkingTokens:W2,allowedToolsFromCLIFlag:D},readFileTimestamps:d1.current,abortController:C0,setToolJSX:k},h1,o))F1((c0)=>[...c0,k0])}else MJ(W);Q1(Q2().hasAcknowledgedCostThreshold||!1),P(!1)}async function L1(C0,l0){F1((W2)=>[...W2,...C0]),tU();let K0=C0[C0.length-1];if(K0.type==="user"&&typeof K0.message.content==="string")QS2(K0.message.content);if(K0.type==="assistant"){S(null),P(!1);return}let[w2,c4,m0,C2]=await Promise.all([$E(),FG(),g8(),Nb([...$1,K0])]);for await(let W2 of TX([...$1,K0],w2,c4,n1,{options:{commands:I,forkNumber:K,messageLogName:B,tools:V,slowAndCapableModel:m0,verbose:J,permissionMode:G,maxThinkingTokens:C2,allowedToolsFromCLIFlag:D},readFileTimestamps:d1.current,abortController:l0,setToolJSX:k},h1,o))F1((k0)=>[...k0,W2]);P(!1)}oD2(),lT2($1,B,K),uT2(),z3.useEffect(()=>{g1()},[]);let k1=z3.useMemo(()=>Zd($1).filter((C0)=>C0.surface!=="server").filter(v01),[$1]),n=z3.useMemo(()=>E01(k1),[k1]),D1=z3.useMemo(()=>uP2(k1),[k1]),Y0=z3.useMemo(()=>new Set(yP2(k1).map((C0)=>C0.message.content[0].id)),[k1]),r1=P00(),z0=z3.useMemo(()=>{return[{type:"static",jsx:r4.createElement(p,{flexDirection:"column",key:`logo${K}`},r4.createElement(DW0,{mcpClients:Y,isDefaultModel:A}),r4.createElement(TW1,{workspaceDir:a8()}))},...[],...LP2(k1).map((C0)=>{let l0=lf1(C0),K0=C0.type==="progress"?C0.content.message.content[0]?.type==="text"&&C0.content.message.content[0].text===RB?r4.createElement($N,{message:C0.content,messages:C0.normalizedMessages,addMargin:!1,tools:C0.tools,verbose:J??!1,debug:Z,erroredToolUseIDs:new Set,inProgressToolUseIDs:new Set,unresolvedToolUseIDs:new Set,shouldAnimate:!1,shouldShowDot:!1}):r4.createElement(Bd,null,r4.createElement($N,{message:C0.content,messages:C0.normalizedMessages,addMargin:!1,tools:C0.tools,verbose:J??!1,debug:Z,erroredToolUseIDs:new Set,inProgressToolUseIDs:new Set,unresolvedToolUseIDs:C0.isResolved?new Set:new Set([C0.content.message.content[0].id]),shouldAnimate:!1,shouldShowDot:!1})):r4.createElement($N,{message:C0,messages:k1,addMargin:!0,tools:V,verbose:J,debug:Z,erroredToolUseIDs:Y0,inProgressToolUseIDs:D1,shouldAnimate:!V1&&!l1&&!f0&&(!l0||D1.has(l0)),shouldShowDot:!0,unresolvedToolUseIDs:n}),w2=pP3(C0,k1,n)?"static":"transient";if(Z)return{type:w2,jsx:r4.createElement(p,{borderStyle:"single",borderColor:w2==="static"?"green":"red",key:C0.uuid,width:"100%"},K0)};return{type:w2,jsx:r4.createElement(p,{key:C0.uuid,width:"100%"},K0)}})]},[K,Y,A,r1,k1,J,Z,V,Y0,D1,V1,l1,f0,n]),s0=!L&&J0;return r4.createElement(r4.Fragment,null,r4.createElement(iU,{key:`static-messages-${K}`,items:z0.filter((C0)=>C0.type==="static")},(C0)=>C0.jsx),z0.filter((C0)=>C0.type==="transient").map((C0)=>C0.jsx),r4.createElement(p,{borderColor:"red",borderStyle:Z?"single":void 0,flexDirection:"column",width:"100%"},!V1&&!l1&&!V0&&L&&r4.createElement(e11,null),V1?V1.jsx:null,!1,!V1&&l1&&!f0&&!V0&&r4.createElement(tm2,{onDone:()=>H1(null),setWriteFileAllowedDirectories:s1,toolUseConfirm:l1,verbose:J}),!V1&&!l1&&!f0&&!V0&&s0&&r4.createElement(YW0,{onDone:()=>{G1(!1),Q1(!0);let C0=Q2();i4({...C0,hasAcknowledgedCostThreshold:!0}),B0("tengu_cost_threshold_acknowledged",{})}}),!l1&&!V1?.shouldHidePromptInput&&w&&!f0&&!V0&&!s0&&r4.createElement(r4.Fragment,null,r4.createElement(LT2,{allowedToolsFromCLIFlag:D,commands:I,forkNumber:K,messageLogName:B,tools:V,isDisabled:v1==="invalid",isLoading:L,onQuery:L1,debug:Z,verbose:J,messages:$1,setToolJSX:k,onAutoUpdaterResult:l,autoUpdaterResult:m,input:u,onInputChange:I1,mode:m1,onModeChange:j1,submitCount:a1,onSubmitCountChange:N0,setIsLoading:P,setAbortController:S,onShowMessageSelector:()=>G2((C0)=>!C0),setForkConvoWithMessagesOnTheNextRender:U,setMessages:F1,readFileTimestamps:d1.current,permissionMode:G||"default",writeFileAllowedDirectories:h1,setWriteFileAllowedDirectories:s1}))),f0&&r4.createElement(Ju2,{erroredToolUseIDs:Y0,unresolvedToolUseIDs:n,messages:uE($1),onSelect:async(C0)=>{if(G2(!1),!$1.includes(C0))return;q1(),setImmediate(async()=>{if(await w8(),F1([]),U($1.slice(0,$1.indexOf(C0))),typeof C0.message.content==="string")I1(C0.message.content)})},onEscape:()=>G2(!1),tools:V}),r4.createElement(R5,null))}function pP3(I,G,Z){switch(I.type){case"user":case"assistant":{let d=lf1(I);if(!d)return!0;if(Z.has(d))return!1;let W=G.find((B)=>B.type==="progress"&&B.toolUseID===d);if(!W)return!0;return!Tf1(Z,W.siblingToolUseIDs)}case"progress":return!Tf1(Z,I.siblingToolUseIDs)}}var Wb2=A1(db2(),1),{program:Ow6,createCommand:mw6,createArgument:Tw6,createOption:bw6,CommanderError:lw6,InvalidArgumentError:jw6,InvalidOptionArgumentError:kw6,Command:Bb2,Argument:xw6,Option:hw6,Help:cw6}=Wb2.default;async function wb2({commands:I,permissionMode:G,hasPermissionsToUseTool:Z,messageLogName:d,prompt:W,cwd:B,tools:w,verbose:V=!1,allowedToolsFromCLIFlag:C,writeFileAllowedDirectories:X}){await qC(B);let A=[h9({content:W,surface:"both"})],[D,J,K]=await Promise.all([$E(),FG(),g8()]);for await(let U of TX(A,D,J,Z,{options:{commands:I,tools:w,verbose:V,permissionMode:G,slowAndCapableModel:K,forkNumber:0,messageLogName:"unused",maxThinkingTokens:0,allowedToolsFromCLIFlag:C},abortController:new AbortController,readFileTimestamps:{}},X))A.push(U);let z=UY(A);if(!z||z.type!=="assistant")throw new Error("Expected content to be an assistant message");if(z.message.content[0]?.type!=="text")throw new Error(`Expected first content item to be text, but got ${JSON.stringify(z.message.content[0],null,2)}`);let Q=JC(d,0,0);return Eg(Q,Mg(A)),{resultText:z.message.content[0].text,totalCost:Iz(),totalApiDurationMs:RS(),totalApiDurationMsWithoutRetries:m61(),numTurns:A.length-1,messageHistoryFile:Q}}var IE1=A1(u1(),1);import{EOL as Ou3}from"os";var yu3=[_G,d7,CZ,UI,YV,OB];async function tv1(I){return(await(I==="dangerouslySkipPermissions"?y21():yu3)).filter((G)=>G.name!==SJ.name)}async function Vb2(I){return`Launch a new agent that has access to the following tools: ${(await tv1(I)).map((d)=>d.name).join(", ")}. When you are searching for a keyword or file and are not confident that you will find the right match on the first try, use the Agent tool to perform the search for you. For example:
|
|
1270
1270
|
|
|
1271
1271
|
- If you are searching for a keyword like "config" or "logger", or for questions like "which file does X?", the Agent tool is strongly recommended
|
|
@@ -1291,11 +1291,11 @@ IMPORTANT: Do not ask the user if you should implement the changes at the end. J
|
|
|
1291
1291
|
IMPORTANT: Do not attempt to write the code or use any string modification tools. Just provide the plan.`,GE1="Your go-to tool for any technical or coding task. Analyzes requirements and breaks them down into clear, actionable implementation steps. Use this whenever you need help planning how to implement a feature, solve a technical problem, or structure your code.";var Tu3=[l4,UI,_G,u7,d7,CZ],bu3=e.strictObject({prompt:e.string().describe("The technical request or coding task to analyze"),context:e.string().describe("Optional context from previous conversation or system state").optional()}),Xb2={name:"Architect",async description(){return GE1},inputSchema:bu3,isReadOnly(){return!0},userFacingName(){return"Architect"},async isEnabled(){return!1},needsPermissions(){return!1},async*call({prompt:I,context:G},Z,d,W,B){let w=G?`<context>${G}</context>
|
|
1292
1292
|
|
|
1293
1293
|
${I}`:I,V=(Z.options.tools??[]).filter((D)=>Tu3.map((J)=>J.name).includes(D.name)),X=[h9({content:w,surface:"both"})],Y=await Z_(TX(X,[Cb2],await FG(),d,{...Z,options:{...Z.options,tools:V}},B));if(Y.type!=="assistant")throw new Error("Invalid response from Claude API");let A=Y.message.content.filter((D)=>D.type==="text");yield{type:"result",data:A,resultForAssistant:this.renderResultForAssistant(A)}},async prompt(){return GE1},renderResultForAssistant(I){return I},renderToolUseMessage(I){return Object.entries(I).map(([G,Z])=>`${G}: ${JSON.stringify(Z)}`).join(", ")},renderToolResultMessage(I){return lN.createElement(p,{flexDirection:"column",gap:1},lN.createElement(SX,{code:I.map((G)=>G.text).join(`
|
|
1294
|
-
`),language:"markdown"}))},renderToolUseRejectedMessage(){return lN.createElement(E5,null)}};var ku3=A1(u1(),1);var lu3=`Restarts ${b2}.`,ju3=`Use this tool to restart ${b2} after making code changes to ${b2} and building them succefully if you next need to test them. The current conversation will be preserved.`;var CC6=e.object({reason:e.string().optional().describe("Optional reason for the restart")});var xu3=A1(u1(),1);var RC6=x2(async()=>{let I=[SJ,l4,d7,CZ,UI,_G,DG,u7,YV,HG,...[],...await g01()],G=await Promise.all(I.map((Z)=>Z.isEnabled()));return I.filter((Z,d)=>G[d])});var bC6=e.strictObject({description:e.string().describe("A short (3-5 word) description of the batch operation"),invocations:e.array(e.object({tool_name:e.string().describe("The name of the tool to invoke"),input:e.record(e.any()).describe("The input to pass to the tool")})).describe("The list of tool invocations to execute")});var y21=x2(async(I)=>{let G=[SJ,l4,d7,CZ,UI,_G,DG,u7,YV,HG,...[],...[],...await g01()];if(I)G.push(Xb2);let Z=await Promise.all(G.map((d)=>d.isEnabled()));return G.filter((d,W)=>Z[W])});var jB=A1(u1(),1);var K_=A1(u1(),1);function Yb2({stepIndex:I,totalSteps:G,wizardSteps:Z}){let d=e1(),W=Z[I],B=I>0&&W&&W.getPrevStepId!==void 0;return K_.default.createElement(p,{marginTop:1},B&&K_.default.createElement(K_.default.Fragment,null,K_.default.createElement(O,{dimColor:!0},K_.default.createElement(O,{color:d.suggestion},"Esc")," to go back"),K_.default.createElement(O,{dimColor:!0}," • ")),K_.default.createElement(O,{dimColor:!0},K_.default.createElement(O,{color:d.suggestion},"Enter"),I===G-1?" to finish":" to continue"))}var _2=A1(u1(),1);function Ab2({theme:I}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{bold:!0},"Add MCP Server"),_2.default.createElement(O,null,"Let's set up a new MCP (Model Context Protocol) server."),_2.default.createElement(O,null,"MCP servers allow you to extend Claude Code with custom tools and prompts."),_2.default.createElement(p,null,_2.default.createElement(O,{dimColor:!0},"Learn more about MCP at"," ",_2.default.createElement(O,{color:I.suggestion},"https://modelcontextprotocol.io/"))))}function _b2({state:I,updateState:G,goToNextStep:Z,cursorOffset:d,setCursorOffset:W,textInputColumns:B,currentStepId:w}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{bold:!0},"Step 1/6: Server Name"),_2.default.createElement(O,null,"Choose a unique name for your MCP server. This is how you'll refer to it in Claude Code."),_2.default.createElement(p,{flexDirection:"row",gap:1},_2.default.createElement(O,null,">"),_2.default.createElement(MB,{placeholder:"my-server",value:I.serverName,onChange:(V)=>G({serverName:V}),onSubmit:()=>I.serverName.trim()&&Z(),columns:B,cursorOffset:d,onChangeCursorOffset:W,showCursor:!0,focus:w==="name"})))}function Hb2({state:I,updateState:G,setCurrentStepId:Z,theme:d}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{bold:!0,color:d.warning},"Name Already Exists"),_2.default.createElement(O,null,"A server named ",_2.default.createElement(O,{bold:!0},I.serverName)," already exists in the ",I.scope," scope."),_2.default.createElement(O,null,"What would you like to do?"),_2.default.createElement(p,{marginTop:1},_2.default.createElement(tI,{options:[{label:"Rename (choose a different name)",value:"rename"},{label:"Continue with a different scope",value:"scope"},{label:"Overwrite the existing server",value:"overwrite"}],onChange:(W)=>{if(W==="rename")Z("name"),G({serverName:""});else if(W==="scope")Z("scope");else if(W==="overwrite")Z("command")}})))}function Db2({updateState:I,setCurrentStepId:G}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{bold:!0},"Step 2/6: Server Scope"),_2.default.createElement(O,null,"Choose where this server will be available:"),_2.default.createElement(O,{dimColor:!0},"- Project: Only available in the current project directory"),_2.default.createElement(O,{dimColor:!0},"- Global: Available in all projects"),_2.default.createElement(p,{marginTop:1},_2.default.createElement(tI,{options:[{label:"Project (recommended)",value:"project"},{label:"Global",value:"global"}],onChange:(d)=>{I({scope:d}),Z()}})));function Z(){G("command")}}function Fb2({state:I,updateState:G,goToNextStep:Z,cursorOffset:d,setCursorOffset:W,textInputColumns:B,currentStepId:w}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{bold:!0},"Step 3/6: Server Command"),_2.default.createElement(O,null,"Enter the command to start your MCP server."),_2.default.createElement(O,{dimColor:!0},"Examples: /full/path/to/server.js, npx, uvx, python"),_2.default.createElement(p,{flexDirection:"row",gap:1,marginTop:1},_2.default.createElement(O,null,">"),_2.default.createElement(MB,{placeholder:"path/to/server",value:I.command,onChange:(V)=>G({command:V}),onSubmit:()=>I.command.trim()&&Z(),columns:B,cursorOffset:d,onChangeCursorOffset:W,showCursor:!0,focus:w==="command"})))}function Jb2({state:I,updateState:G,goToNextStep:Z,cursorOffset:d,setCursorOffset:W,textInputColumns:B,currentStepId:w}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{bold:!0},"Step 4/6: Command Arguments"),_2.default.createElement(O,null,"Enter any arguments to pass to the command (optional)."),_2.default.createElement(O,{dimColor:!0},"Example: -p 8080 --verbose"),_2.default.createElement(p,{flexDirection:"row",gap:1,marginTop:1},_2.default.createElement(O,null,">"),_2.default.createElement(MB,{placeholder:"arg1 arg2",value:I.args,onChange:(V)=>G({args:V}),onSubmit:Z,columns:B,cursorOffset:d,onChangeCursorOffset:W,showCursor:!0,focus:w==="args"})))}function Kb2({state:I,updateState:G,goToNextStep:Z,cursorOffset:d,setCursorOffset:W,textInputColumns:B,currentStepId:w}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{bold:!0},"Step 5/6: Environment Variables"),_2.default.createElement(O,null,"Enter any environment variables for the server (optional)."),_2.default.createElement(O,{dimColor:!0},"Format: KEY1=value1, KEY2=value2 (comma or newline separated)"),_2.default.createElement(p,{flexDirection:"row",gap:1,marginTop:1},_2.default.createElement(O,null,">"),_2.default.createElement(MB,{placeholder:"API_KEY=abc123",value:I.envVars,onChange:(V)=>G({envVars:V}),onSubmit:Z,columns:B,cursorOffset:d,onChangeCursorOffset:W,showCursor:!0,focus:w==="env"})))}function zb2({state:I,isAdding:G,error:Z,goToPrevStep:d,handleAddServer:W,theme:B}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{bold:!0},"Step 6/6: Review and Confirm"),_2.default.createElement(p,{flexDirection:"column",paddingLeft:1},_2.default.createElement(O,null,"Name: ",_2.default.createElement(O,{color:B.success},I.serverName)),_2.default.createElement(O,null,"Scope: ",_2.default.createElement(O,{color:B.success},I.scope)),_2.default.createElement(O,null,"Command: ",_2.default.createElement(O,{color:B.success},I.command)),I.args&&_2.default.createElement(O,null,"Arguments: ",_2.default.createElement(O,{color:B.success},I.args)),I.envVars&&_2.default.createElement(O,null,"Environment: ",_2.default.createElement(O,{color:B.success},I.envVars))),G?_2.default.createElement(p,{marginTop:1,paddingLeft:1},_2.default.createElement(gN,null),_2.default.createElement(O,null,"Adding MCP server...")):_2.default.createElement(p,{marginTop:1,flexDirection:"column",gap:1},Z&&_2.default.createElement(O,{color:B.error},"Error: ",Z),_2.default.createElement(p,null,_2.default.createElement(tI,{options:[{label:"Confirm",value:"add"},{label:"Go back",value:"edit"}],onChange:(w)=>{if(w==="add")W();else d()}}))))}function Qb2({state:I,theme:G}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{color:G.success},"✓ MCP Server added successfully!"),_2.default.createElement(O,null,'Your server "',I.serverName,'" has been added to the'," ",I.scope," configuration."),_2.default.createElement(O,null,"You can now use it with Claude Code."),_2.default.createElement(p,{marginTop:1},_2.default.createElement(O,{dimColor:!0},"You can view your server with: claude mcp get ",I.serverName)),_2.default.createElement(p,null,_2.default.createElement(O,{dimColor:!0},"You can modify or remove it with: claude mcp remove ",I.serverName)))}var hu3={serverName:"",scope:"project",command:"",args:"",envVars:""},O21=[{id:"welcome",getNextStepId:()=>"name",component:Ab2},{id:"name",getNextStepId:()=>"scope",component:_b2},{id:"scope",getNextStepId:(I)=>{let G=yT(I.serverName);if(G&&G.scope===I.scope&&I.serverName.trim())return"name-validation";return"command"},getPrevStepId:()=>"name",component:Db2},{id:"name-validation",getNextStepId:()=>null,getPrevStepId:()=>"scope",component:Hb2},{id:"command",getNextStepId:()=>"args",getPrevStepId:()=>"scope",component:Fb2},{id:"args",getNextStepId:()=>"env",getPrevStepId:()=>"command",component:Jb2},{id:"env",getNextStepId:()=>"confirm",getPrevStepId:()=>"args",component:Kb2},{id:"confirm",getNextStepId:()=>"success",getPrevStepId:()=>"env",component:zb2},{id:"success",getNextStepId:()=>null,component:Qb2}];function Nb2({onDone:I}){let G=e1(),[Z,d]=jB.useState("welcome"),[W,B]=jB.useState(hu3),[w,V]=jB.useState(0),[C,X]=jB.useState(null),[Y,A]=jB.useState(!1),D=Q5().columns-6,J=O21.find((P)=>P.id===Z);if(!J){let P=new Error("No current step");throw W0(P),P}let K=J?O21.indexOf(J):0,z=(P)=>{B((m)=>({...m,...P}))};function Q(){if(!J)return;let P=J.getNextStepId(W);if(P)d(P)}function U(){if(!J)return;if(Z==="confirm"&&C)X(null);if(!J.getPrevStepId){let m=new Error("No previous step");throw W0(m),m}let P=J.getPrevStepId(W);if(P)d(P)}_4((P,m)=>{if(m.escape&&Z!=="success")U();if(m.return&&J&&["welcome","success"].includes(J.id)){if(J.id==="welcome")Q();else if(J.id==="success")I()}});async function M(){A(!0),X(null);try{let P=W.envVars.split(/[\n,]/).map((l)=>l.trim()).filter(Boolean),m=W.args.split(/\s+/).filter(Boolean);B0("tengu_mcp_add",{name:W.serverName,type:"stdio",scope:W.scope}),uT(W.serverName,{type:"stdio",command:W.command,args:m,env:N01(P)},W.scope),B0("tengu_mcp_add_wizard_complete",{scope:W.scope}),Q()}catch(P){X(P.message),W0(P),A(!1)}}let S={state:W,updateState:z,goToNextStep:Q,goToPrevStep:U,setCurrentStepId:d,currentStepId:Z,cursorOffset:w,setCursorOffset:V,textInputColumns:D,error:C,setError:X,isAdding:Y,setIsAdding:A,theme:G,handleAddServer:M},L=J.component;return jB.default.createElement(p,{flexDirection:"column"},jB.default.createElement(p,{flexDirection:"column",padding:1,gap:1,borderStyle:"round",borderColor:G.secondaryText},jB.default.createElement(L,{...S})),jB.default.createElement(p,{paddingX:1},jB.default.createElement(Yb2,{stepIndex:K,totalSteps:O21.length,wizardSteps:O21})))}import{cwd as LJ}from"process";var b7=A1(u1(),1);import{homedir as cu3}from"os";function qb2({onDone:I}){let G=e1();b7.default.useEffect(()=>{B0("trust_dialog_shown",{})},[]);function Z(W){let B=E4();switch(W){case"yes":{let w=cu3()===u0();if(B0("trust_dialog_accept",{isHomeDir:String(w)}),!w)h3({...B,hasTrustDialogAccepted:!0});I();break}case"no":{process.exit(1);break}}}let d=K6(()=>process.exit(0));return _4((W,B)=>{if(B.escape){process.exit(0);return}}),b7.default.createElement(b7.default.Fragment,null,b7.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:G.warning},b7.default.createElement(O,{bold:!0,color:G.warning},"Do you trust the files in this folder?"),b7.default.createElement(O,{bold:!0},process.cwd()),b7.default.createElement(p,{flexDirection:"column",gap:1},b7.default.createElement(O,null,b2," may read files in this folder. Reading untrusted files may lead ",b2," to behave in an unexpected ways."),b7.default.createElement(O,null,"With your permission ",b2," may execute files in this folder. Executing untrusted code is unsafe."),b7.default.createElement(iC,{url:"https://docs.anthropic.com/s/claude-code-security"})),b7.default.createElement(U7,{options:[{label:"Yes, proceed",value:"yes"},{label:"No, exit",value:"no"}],onChange:(W)=>Z(W)})),b7.default.createElement(p,{marginLeft:3},b7.default.createElement(O,{dimColor:!0},d.pending?b7.default.createElement(b7.default.Fragment,null,"Press ",d.keyName," again to exit"):b7.default.createElement(b7.default.Fragment,null,"Enter to confirm · Esc to exit"))))}var ZE1=A1(u1(),1);class dE1 extends ET{constructor(I,G){var Z;super(G);this._serverInfo=I,this._capabilities=(Z=G===null||G===void 0?void 0:G.capabilities)!==null&&Z!==void 0?Z:{},this._instructions=G===null||G===void 0?void 0:G.instructions,this.setRequestHandler(Xf1,(d)=>this._oninitialize(d)),this.setNotificationHandler(Af1,()=>{var d;return(d=this.oninitialized)===null||d===void 0?void 0:d.call(this)})}registerCapabilities(I){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=D01(this._capabilities,I)}assertCapabilityForMethod(I){var G,Z;switch(I){case"sampling/createMessage":if(!((G=this._clientCapabilities)===null||G===void 0?void 0:G.sampling))throw new Error(`Client does not support sampling (required for ${I})`);break;case"roots/list":if(!((Z=this._clientCapabilities)===null||Z===void 0?void 0:Z.roots))throw new Error(`Client does not support listing roots (required for ${I})`);break;case"ping":break}}assertNotificationCapability(I){switch(I){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${I})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${I})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${I})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${I})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(I){switch(I){case"sampling/createMessage":if(!this._capabilities.sampling)throw new Error(`Server does not support sampling (required for ${I})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${I})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${I})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${I})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${I})`);break;case"ping":case"initialize":break}}async _oninitialize(I){let G=I.params.protocolVersion;return this._clientCapabilities=I.params.capabilities,this._clientVersion=I.params.clientInfo,{protocolVersion:d01.includes(G)?G:gT,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},W_)}async createMessage(I,G){return this.request({method:"sampling/createMessage",params:I},zf1,G)}async listRoots(I,G){return this.request({method:"roots/list",params:I},Nf1,G)}async sendLoggingMessage(I){return this.notification({method:"notifications/message",params:I})}async sendResourceUpdated(I){return this.notification({method:"notifications/resources/updated",params:I})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}}import gb2 from"node:process";class WE1{constructor(I=gb2.stdin,G=gb2.stdout){this._stdin=I,this._stdout=G,this._readBuffer=new MT,this._started=!1,this._ondata=(Z)=>{this._readBuffer.append(Z),this.processReadBuffer()},this._onerror=(Z)=>{var d;(d=this.onerror)===null||d===void 0||d.call(this,Z)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){var I,G;while(!0)try{let Z=this._readBuffer.readMessage();if(Z===null)break;(I=this.onmessage)===null||I===void 0||I.call(this,Z)}catch(Z){(G=this.onerror)===null||G===void 0||G.call(this,Z)}}async close(){var I;if(this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0)this._stdin.pause();this._readBuffer.clear(),(I=this.onclose)===null||I===void 0||I.call(this)}send(I){return new Promise((G)=>{let Z=F01(I);if(this._stdout.write(Z))G();else this._stdout.once("drain",G)})}}var Ub2={readFileTimestamps:{}},fb2=[Z01],m21=[SJ,l4,DG,_G,d7,CZ,u7,UI];async function Rb2(I){await qC(I);let G=new dE1({name:"claude/tengu",version:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.33"}.VERSION},{capabilities:{tools:{}}});G.setRequestHandler(Jf1,async()=>{return{tools:await Promise.all(m21.map(async(W)=>({...W,description:await W.description(e.object({}),{permissionMode:"default"}),inputSchema:WN(W.inputSchema)})))}}),G.setRequestHandler(Kf1,async(d)=>{let{name:W,arguments:B}=d.params,w=m21.find((V)=>V.name===W);if(!w)throw new Error(`Tool ${W} not found`);try{if(!await w.isEnabled())throw new Error(`Tool ${W} is not enabled`);let V=await g8(),C=await w.validateInput?.(B??{},{abortController:new AbortController,options:{commands:fb2,tools:m21,slowAndCapableModel:V,forkNumber:0,messageLogName:"unused",maxThinkingTokens:0,allowedToolsFromCLIFlag:[]},readFileTimestamps:Ub2.readFileTimestamps});if(C&&!C.result)throw new Error(`Tool ${W} input is invalid: ${C.message}`);let X=w.call(B??{},{abortController:new AbortController,options:{commands:fb2,tools:m21,slowAndCapableModel:await g8(),forkNumber:0,messageLogName:"unused",maxThinkingTokens:0,allowedToolsFromCLIFlag:[]},readFileTimestamps:Ub2.readFileTimestamps},EJ,B8({content:[],surface:"client"}),new Set),Y=await Z_(X);if(Y.type!=="result")throw new Error(`Tool ${W} did not return a result`);return{content:Array.isArray(Y)?Y.map((A)=>({type:"text",text:"text"in A?A.text:JSON.stringify(A)})):[{type:"text",text:typeof Y==="string"?Y:JSON.stringify(Y.data)}]}}catch(V){return W0(V),{isError:!0,content:[{type:"text",text:`Error: ${V instanceof Error?V.message:String(V)}`}]}}});async function Z(){let d=new WE1;await G.connect(d)}return await Z()}import{promises as vb2}from"fs";import{join as pu3}from"path";var iu3=2592000000;function nu3(I){let G=I.split(".")[0].replace(/T(\d{2})-(\d{2})-(\d{2})-(\d{3})Z/,"T$1:$2:$3.$4Z");return new Date(G)}async function au3(){let I=HH.messages(),G=HH.errors(),Z=new Date(Date.now()-iu3),d={messages:0,errors:0};for(let W of[I,G])try{let B=await vb2.readdir(W);for(let w of B)try{if(nu3(w)<Z)if(await vb2.unlink(pu3(W,w)),W===I)d.messages++;else d.errors++}catch(V){W0(`Failed to process file ${w}: ${V instanceof Error?V.message:String(V)}`)}}catch(B){if(B instanceof Error&&"code"in B&&B.code!=="ENOENT")W0(`Failed to cleanup directory ${W}: ${B instanceof Error?B.message:String(B)}`)}return d}function Eb2(){setImmediate(au3).unref()}var tu3=A1(u1(),1);var ou3=A1(u1(),1);var ru3=A1(u1(),1);var eu3=A1(u1(),1);var YZ=A1(u1(),1);import{writeFileSync as Iy3}from"fs";function Gy3({filePath:I,errorDescription:G,onExit:Z,onReset:d}){let W=e1();_4((V,C)=>{if(C.escape)Z()});let B=K6(()=>process.exit(0)),w=(V)=>{if(V==="exit")Z();else d()};return YZ.default.createElement(YZ.default.Fragment,null,YZ.default.createElement(p,{flexDirection:"column",borderColor:W.error,borderStyle:"round",padding:1,width:70,gap:1},YZ.default.createElement(O,{bold:!0},"Configuration Error"),YZ.default.createElement(p,{flexDirection:"column",gap:1},YZ.default.createElement(O,null,"The configuration file at ",YZ.default.createElement(O,{bold:!0},I)," contains invalid JSON."),YZ.default.createElement(O,null,G)),YZ.default.createElement(p,{flexDirection:"column"},YZ.default.createElement(O,{bold:!0},"Choose an option:"),YZ.default.createElement(U7,{options:[{label:"Exit and fix manually",value:"exit"},{label:"Reset with default configuration",value:"reset"}],onChange:w}))),B.pending?YZ.default.createElement(O,{dimColor:!0},"Press ",B.keyName," again to exit"):YZ.default.createElement(R5,null))}function Mb2({error:I}){return new Promise((G)=>{bZ(YZ.default.createElement(Gy3,{filePath:I.filePath,errorDescription:I.message,onExit:()=>{G(),process.exit(1)},onReset:()=>{Iy3(I.filePath,JSON.stringify(I.defaultConfig,null,2)),G(),process.exit(0)}}),{exitOnCtrlC:!1})})}import{appendFileSync as Zy3,mkdirSync as dy3,writeFileSync as Wy3}from"fs";import{existsSync as By3}from"fs";import{EOL as $b2,homedir as wy3}from"os";import{dirname as Vy3,join as Cy3}from"path";function Sb2(){return}var l7=A1(u1(),1);function Lb2({onAccept:I}){let G=e1();l7.default.useEffect(()=>{B0("bypass_permissions_mode_dialog_shown",{})},[]);function Z(W){let B=Q2();switch(W){case"accept":{B0("bypass_permissions_mode_dialog_accept",{}),i4({...B,bypassPermissionsModeAccepted:!0}),I();break}case"decline":{process.exit(1);break}}}let d=K6(()=>process.exit(0));return _4((W,B)=>{if(B.escape){process.exit(0);return}}),l7.default.createElement(l7.default.Fragment,null,l7.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:G.error},l7.default.createElement(O,{bold:!0,color:G.error},"WARNING: ",b2," running in Bypass Permissions mode"),l7.default.createElement(p,{flexDirection:"column",gap:1},l7.default.createElement(O,null,"In Bypass Permissions mode, ",b2," will not ask for your approval before running potentially dangerous commands.",l7.default.createElement(R5,null),"This mode should only be used in a sandboxed container/VM that has restricted internet access and can easily be restored if damaged."),l7.default.createElement(O,null,"By proceeding, you accept all responsibility for actions taken while running in Bypass Permissions mode."),l7.default.createElement(iC,{url:"https://docs.anthropic.com/s/claude-code-security"})),l7.default.createElement(U7,{options:[{label:"No, exit",value:"decline"},{label:"Yes, I accept",value:"accept"}],onChange:(W)=>Z(W)})),l7.default.createElement(p,{marginLeft:3},l7.default.createElement(O,{dimColor:!0},d.pending?l7.default.createElement(l7.default.Fragment,null,"Press ",d.keyName," again to exit"):l7.default.createElement(l7.default.Fragment,null,"Enter to confirm · Esc to exit"))))}La1();Object.keys(To1);var _y3=5;function Hy3(){let I=Q2();i4({...I,hasCompletedOnboarding:!0,lastOnboardingVersion:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.33"}.VERSION})}function Dy3(I,G){if(!1==="true"||G)return!1;let Z=I.autoUpdaterStatus??"not_configured",d=I.numStartups,W=I.doctorShownAtSession??0;return Z==="not_configured"&&(d-W>=_y3||W===0)}async function Fy3(I,G){if(!1==="true")return;let Z=Q2();if(!Z.theme||!Z.hasCompletedOnboarding)await w8(),await new Promise((d)=>{bZ(uJ.default.createElement(df1,{onDone:async()=>{Hy3(),await w8(),d()}}),{exitOnCtrlC:!1})});if(!G&&I!=="dangerouslySkipPermissions"){if(!Qa1())await new Promise((d)=>{bZ(uJ.default.createElement(qb2,{onDone:()=>{vg1(),d()}}),{exitOnCtrlC:!1})})}if(I==="dangerouslySkipPermissions"&&!Q2().bypassPermissionsModeAccepted)if(!G)await new Promise((d)=>{bZ(uJ.default.createElement(Lb2,{onAccept:d}))});else console.error("--dangerously-skip-permissions must be accepted in an interactive session first."),process.exit(1)}function Jy3(){let I=Q2();i4({...I,numStartups:(I.numStartups??0)+1})}async function PJ(I,G,Z){let d=process.version.match(/^v(\d+)\./)?.[1];if(!d||parseInt(d)<18)console.error(T0.bold.red("Error: Claude Code requires Node.js version 18 or higher.")),process.exit(1);if(qC(I),vg1(),G==="dangerouslySkipPermissions"){if(process.platform!=="win32"&&typeof process.getuid==="function"&&process.getuid()===0)console.error("--dangerously-skip-permissions cannot be used with root/sudo privileges for security reasons"),process.exit(1);if(!Q2().bypassPermissionsModeAccepted)console.error("--dangerously-skip-permissions must be accepted in an interactive session first."),process.exit(1)}if(Eb2(),v21(),FG(),pg(),Sb2(),AW0())B0("tengu_migrate_api_key_to_keychain",{success:"true"});let W=E4();if(W.lastCost!==void 0&&W.lastDuration!==void 0)B0("tengu_exit",{last_session_cost:String(W.lastCost),last_session_api_duration:String(W.lastAPIDuration),last_session_duration:String(W.lastDuration),last_session_lines_added:String(W.lastLinesAdded),last_session_lines_removed:String(W.lastLinesRemoved),last_session_id:W.lastSessionId}),h3({...W,lastCost:void 0,lastAPIDuration:void 0,lastDuration:void 0,lastLinesAdded:void 0,lastLinesRemoved:void 0,lastSessionId:void 0});let B=Q2();if(Dy3(B,Z))B0("tengu_setup_auto_updater_not_configured",{}),await new Promise((w)=>{bZ(uJ.default.createElement(NT,{onDone:()=>w()}),{exitOnCtrlC:!1})}),i4({...B,doctorShownAtSession:B.numStartups})}async function Ky3(){try{Ra1()}catch(Z){if(Z instanceof ig){await Mb2({error:Z});return}}let I="",G={exitOnCtrlC:!1,onFlicker(){B0("tengu_flicker",{})}};if(!process.stdin.isTTY&&!0&&!process.argv.includes("mcp")){if(I=await Qy3(),process.platform!=="win32")try{let Z=Yy3("/dev/tty","r");G={...G,stdin:new Xy3(Z)}}catch(Z){W0(`Could not open /dev/tty: ${Z}`)}}await zy3(I,G)}async function zy3(I,G){let Z=new Bb2,d={...G,exitOnCtrlC:!0},W=await EP2(),B=W.filter((C)=>!C.isHidden).map((C)=>`/${C.name} - ${C.description}`).join(`
|
|
1294
|
+
`),language:"markdown"}))},renderToolUseRejectedMessage(){return lN.createElement(E5,null)}};var ku3=A1(u1(),1);var lu3=`Restarts ${b2}.`,ju3=`Use this tool to restart ${b2} after making code changes to ${b2} and building them succefully if you next need to test them. The current conversation will be preserved.`;var CC6=e.object({reason:e.string().optional().describe("Optional reason for the restart")});var xu3=A1(u1(),1);var RC6=x2(async()=>{let I=[SJ,l4,d7,CZ,UI,_G,DG,u7,YV,HG,...[],...await g01()],G=await Promise.all(I.map((Z)=>Z.isEnabled()));return I.filter((Z,d)=>G[d])});var bC6=e.strictObject({description:e.string().describe("A short (3-5 word) description of the batch operation"),invocations:e.array(e.object({tool_name:e.string().describe("The name of the tool to invoke"),input:e.record(e.any()).describe("The input to pass to the tool")})).describe("The list of tool invocations to execute")});var y21=x2(async(I)=>{let G=[SJ,l4,d7,CZ,UI,_G,DG,u7,YV,HG,...[],...[],...await g01()];if(I)G.push(Xb2);let Z=await Promise.all(G.map((d)=>d.isEnabled()));return G.filter((d,W)=>Z[W])});var jB=A1(u1(),1);var K_=A1(u1(),1);function Yb2({stepIndex:I,totalSteps:G,wizardSteps:Z}){let d=e1(),W=Z[I],B=I>0&&W&&W.getPrevStepId!==void 0;return K_.default.createElement(p,{marginTop:1},B&&K_.default.createElement(K_.default.Fragment,null,K_.default.createElement(O,{dimColor:!0},K_.default.createElement(O,{color:d.suggestion},"Esc")," to go back"),K_.default.createElement(O,{dimColor:!0}," • ")),K_.default.createElement(O,{dimColor:!0},K_.default.createElement(O,{color:d.suggestion},"Enter"),I===G-1?" to finish":" to continue"))}var _2=A1(u1(),1);function Ab2({theme:I}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{bold:!0},"Add MCP Server"),_2.default.createElement(O,null,"Let's set up a new MCP (Model Context Protocol) server."),_2.default.createElement(O,null,"MCP servers allow you to extend Claude Code with custom tools and prompts."),_2.default.createElement(p,null,_2.default.createElement(O,{dimColor:!0},"Learn more about MCP at"," ",_2.default.createElement(O,{color:I.suggestion},"https://modelcontextprotocol.io/"))))}function _b2({state:I,updateState:G,goToNextStep:Z,cursorOffset:d,setCursorOffset:W,textInputColumns:B,currentStepId:w}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{bold:!0},"Step 1/6: Server Name"),_2.default.createElement(O,null,"Choose a unique name for your MCP server. This is how you'll refer to it in Claude Code."),_2.default.createElement(p,{flexDirection:"row",gap:1},_2.default.createElement(O,null,">"),_2.default.createElement(MB,{placeholder:"my-server",value:I.serverName,onChange:(V)=>G({serverName:V}),onSubmit:()=>I.serverName.trim()&&Z(),columns:B,cursorOffset:d,onChangeCursorOffset:W,showCursor:!0,focus:w==="name"})))}function Hb2({state:I,updateState:G,setCurrentStepId:Z,theme:d}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{bold:!0,color:d.warning},"Name Already Exists"),_2.default.createElement(O,null,"A server named ",_2.default.createElement(O,{bold:!0},I.serverName)," already exists in the ",I.scope," scope."),_2.default.createElement(O,null,"What would you like to do?"),_2.default.createElement(p,{marginTop:1},_2.default.createElement(tI,{options:[{label:"Rename (choose a different name)",value:"rename"},{label:"Continue with a different scope",value:"scope"},{label:"Overwrite the existing server",value:"overwrite"}],onChange:(W)=>{if(W==="rename")Z("name"),G({serverName:""});else if(W==="scope")Z("scope");else if(W==="overwrite")Z("command")}})))}function Db2({updateState:I,setCurrentStepId:G}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{bold:!0},"Step 2/6: Server Scope"),_2.default.createElement(O,null,"Choose where this server will be available:"),_2.default.createElement(O,{dimColor:!0},"- Project: Only available in the current project directory"),_2.default.createElement(O,{dimColor:!0},"- Global: Available in all projects"),_2.default.createElement(p,{marginTop:1},_2.default.createElement(tI,{options:[{label:"Project (recommended)",value:"project"},{label:"Global",value:"global"}],onChange:(d)=>{I({scope:d}),Z()}})));function Z(){G("command")}}function Fb2({state:I,updateState:G,goToNextStep:Z,cursorOffset:d,setCursorOffset:W,textInputColumns:B,currentStepId:w}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{bold:!0},"Step 3/6: Server Command"),_2.default.createElement(O,null,"Enter the command to start your MCP server."),_2.default.createElement(O,{dimColor:!0},"Examples: /full/path/to/server.js, npx, uvx, python"),_2.default.createElement(p,{flexDirection:"row",gap:1,marginTop:1},_2.default.createElement(O,null,">"),_2.default.createElement(MB,{placeholder:"path/to/server",value:I.command,onChange:(V)=>G({command:V}),onSubmit:()=>I.command.trim()&&Z(),columns:B,cursorOffset:d,onChangeCursorOffset:W,showCursor:!0,focus:w==="command"})))}function Jb2({state:I,updateState:G,goToNextStep:Z,cursorOffset:d,setCursorOffset:W,textInputColumns:B,currentStepId:w}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{bold:!0},"Step 4/6: Command Arguments"),_2.default.createElement(O,null,"Enter any arguments to pass to the command (optional)."),_2.default.createElement(O,{dimColor:!0},"Example: -p 8080 --verbose"),_2.default.createElement(p,{flexDirection:"row",gap:1,marginTop:1},_2.default.createElement(O,null,">"),_2.default.createElement(MB,{placeholder:"arg1 arg2",value:I.args,onChange:(V)=>G({args:V}),onSubmit:Z,columns:B,cursorOffset:d,onChangeCursorOffset:W,showCursor:!0,focus:w==="args"})))}function Kb2({state:I,updateState:G,goToNextStep:Z,cursorOffset:d,setCursorOffset:W,textInputColumns:B,currentStepId:w}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{bold:!0},"Step 5/6: Environment Variables"),_2.default.createElement(O,null,"Enter any environment variables for the server (optional)."),_2.default.createElement(O,{dimColor:!0},"Format: KEY1=value1, KEY2=value2 (comma or newline separated)"),_2.default.createElement(p,{flexDirection:"row",gap:1,marginTop:1},_2.default.createElement(O,null,">"),_2.default.createElement(MB,{placeholder:"API_KEY=abc123",value:I.envVars,onChange:(V)=>G({envVars:V}),onSubmit:Z,columns:B,cursorOffset:d,onChangeCursorOffset:W,showCursor:!0,focus:w==="env"})))}function zb2({state:I,isAdding:G,error:Z,goToPrevStep:d,handleAddServer:W,theme:B}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{bold:!0},"Step 6/6: Review and Confirm"),_2.default.createElement(p,{flexDirection:"column",paddingLeft:1},_2.default.createElement(O,null,"Name: ",_2.default.createElement(O,{color:B.success},I.serverName)),_2.default.createElement(O,null,"Scope: ",_2.default.createElement(O,{color:B.success},I.scope)),_2.default.createElement(O,null,"Command: ",_2.default.createElement(O,{color:B.success},I.command)),I.args&&_2.default.createElement(O,null,"Arguments: ",_2.default.createElement(O,{color:B.success},I.args)),I.envVars&&_2.default.createElement(O,null,"Environment: ",_2.default.createElement(O,{color:B.success},I.envVars))),G?_2.default.createElement(p,{marginTop:1,paddingLeft:1},_2.default.createElement(gN,null),_2.default.createElement(O,null,"Adding MCP server...")):_2.default.createElement(p,{marginTop:1,flexDirection:"column",gap:1},Z&&_2.default.createElement(O,{color:B.error},"Error: ",Z),_2.default.createElement(p,null,_2.default.createElement(tI,{options:[{label:"Confirm",value:"add"},{label:"Go back",value:"edit"}],onChange:(w)=>{if(w==="add")W();else d()}}))))}function Qb2({state:I,theme:G}){return _2.default.createElement(p,{flexDirection:"column",gap:1,paddingLeft:1},_2.default.createElement(O,{color:G.success},"✓ MCP Server added successfully!"),_2.default.createElement(O,null,'Your server "',I.serverName,'" has been added to the'," ",I.scope," configuration."),_2.default.createElement(O,null,"You can now use it with Claude Code."),_2.default.createElement(p,{marginTop:1},_2.default.createElement(O,{dimColor:!0},"You can view your server with: claude mcp get ",I.serverName)),_2.default.createElement(p,null,_2.default.createElement(O,{dimColor:!0},"You can modify or remove it with: claude mcp remove ",I.serverName)))}var hu3={serverName:"",scope:"project",command:"",args:"",envVars:""},O21=[{id:"welcome",getNextStepId:()=>"name",component:Ab2},{id:"name",getNextStepId:()=>"scope",component:_b2},{id:"scope",getNextStepId:(I)=>{let G=yT(I.serverName);if(G&&G.scope===I.scope&&I.serverName.trim())return"name-validation";return"command"},getPrevStepId:()=>"name",component:Db2},{id:"name-validation",getNextStepId:()=>null,getPrevStepId:()=>"scope",component:Hb2},{id:"command",getNextStepId:()=>"args",getPrevStepId:()=>"scope",component:Fb2},{id:"args",getNextStepId:()=>"env",getPrevStepId:()=>"command",component:Jb2},{id:"env",getNextStepId:()=>"confirm",getPrevStepId:()=>"args",component:Kb2},{id:"confirm",getNextStepId:()=>"success",getPrevStepId:()=>"env",component:zb2},{id:"success",getNextStepId:()=>null,component:Qb2}];function Nb2({onDone:I}){let G=e1(),[Z,d]=jB.useState("welcome"),[W,B]=jB.useState(hu3),[w,V]=jB.useState(0),[C,X]=jB.useState(null),[Y,A]=jB.useState(!1),D=Q5().columns-6,J=O21.find((P)=>P.id===Z);if(!J){let P=new Error("No current step");throw W0(P),P}let K=J?O21.indexOf(J):0,z=(P)=>{B((m)=>({...m,...P}))};function Q(){if(!J)return;let P=J.getNextStepId(W);if(P)d(P)}function U(){if(!J)return;if(Z==="confirm"&&C)X(null);if(!J.getPrevStepId){let m=new Error("No previous step");throw W0(m),m}let P=J.getPrevStepId(W);if(P)d(P)}_4((P,m)=>{if(m.escape&&Z!=="success")U();if(m.return&&J&&["welcome","success"].includes(J.id)){if(J.id==="welcome")Q();else if(J.id==="success")I()}});async function M(){A(!0),X(null);try{let P=W.envVars.split(/[\n,]/).map((l)=>l.trim()).filter(Boolean),m=W.args.split(/\s+/).filter(Boolean);B0("tengu_mcp_add",{name:W.serverName,type:"stdio",scope:W.scope}),uT(W.serverName,{type:"stdio",command:W.command,args:m,env:N01(P)},W.scope),B0("tengu_mcp_add_wizard_complete",{scope:W.scope}),Q()}catch(P){X(P.message),W0(P),A(!1)}}let S={state:W,updateState:z,goToNextStep:Q,goToPrevStep:U,setCurrentStepId:d,currentStepId:Z,cursorOffset:w,setCursorOffset:V,textInputColumns:D,error:C,setError:X,isAdding:Y,setIsAdding:A,theme:G,handleAddServer:M},L=J.component;return jB.default.createElement(p,{flexDirection:"column"},jB.default.createElement(p,{flexDirection:"column",padding:1,gap:1,borderStyle:"round",borderColor:G.secondaryText},jB.default.createElement(L,{...S})),jB.default.createElement(p,{paddingX:1},jB.default.createElement(Yb2,{stepIndex:K,totalSteps:O21.length,wizardSteps:O21})))}import{cwd as LJ}from"process";var b7=A1(u1(),1);import{homedir as cu3}from"os";function qb2({onDone:I}){let G=e1();b7.default.useEffect(()=>{B0("trust_dialog_shown",{})},[]);function Z(W){let B=E4();switch(W){case"yes":{let w=cu3()===u0();if(B0("trust_dialog_accept",{isHomeDir:String(w)}),!w)h3({...B,hasTrustDialogAccepted:!0});I();break}case"no":{process.exit(1);break}}}let d=K6(()=>process.exit(0));return _4((W,B)=>{if(B.escape){process.exit(0);return}}),b7.default.createElement(b7.default.Fragment,null,b7.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:G.warning},b7.default.createElement(O,{bold:!0,color:G.warning},"Do you trust the files in this folder?"),b7.default.createElement(O,{bold:!0},process.cwd()),b7.default.createElement(p,{flexDirection:"column",gap:1},b7.default.createElement(O,null,b2," may read files in this folder. Reading untrusted files may lead ",b2," to behave in an unexpected ways."),b7.default.createElement(O,null,"With your permission ",b2," may execute files in this folder. Executing untrusted code is unsafe."),b7.default.createElement(iC,{url:"https://docs.anthropic.com/s/claude-code-security"})),b7.default.createElement(U7,{options:[{label:"Yes, proceed",value:"yes"},{label:"No, exit",value:"no"}],onChange:(W)=>Z(W)})),b7.default.createElement(p,{marginLeft:3},b7.default.createElement(O,{dimColor:!0},d.pending?b7.default.createElement(b7.default.Fragment,null,"Press ",d.keyName," again to exit"):b7.default.createElement(b7.default.Fragment,null,"Enter to confirm · Esc to exit"))))}var ZE1=A1(u1(),1);class dE1 extends ET{constructor(I,G){var Z;super(G);this._serverInfo=I,this._capabilities=(Z=G===null||G===void 0?void 0:G.capabilities)!==null&&Z!==void 0?Z:{},this._instructions=G===null||G===void 0?void 0:G.instructions,this.setRequestHandler(Xf1,(d)=>this._oninitialize(d)),this.setNotificationHandler(Af1,()=>{var d;return(d=this.oninitialized)===null||d===void 0?void 0:d.call(this)})}registerCapabilities(I){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=D01(this._capabilities,I)}assertCapabilityForMethod(I){var G,Z;switch(I){case"sampling/createMessage":if(!((G=this._clientCapabilities)===null||G===void 0?void 0:G.sampling))throw new Error(`Client does not support sampling (required for ${I})`);break;case"roots/list":if(!((Z=this._clientCapabilities)===null||Z===void 0?void 0:Z.roots))throw new Error(`Client does not support listing roots (required for ${I})`);break;case"ping":break}}assertNotificationCapability(I){switch(I){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${I})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${I})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${I})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${I})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(I){switch(I){case"sampling/createMessage":if(!this._capabilities.sampling)throw new Error(`Server does not support sampling (required for ${I})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${I})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${I})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${I})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${I})`);break;case"ping":case"initialize":break}}async _oninitialize(I){let G=I.params.protocolVersion;return this._clientCapabilities=I.params.capabilities,this._clientVersion=I.params.clientInfo,{protocolVersion:d01.includes(G)?G:gT,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},W_)}async createMessage(I,G){return this.request({method:"sampling/createMessage",params:I},zf1,G)}async listRoots(I,G){return this.request({method:"roots/list",params:I},Nf1,G)}async sendLoggingMessage(I){return this.notification({method:"notifications/message",params:I})}async sendResourceUpdated(I){return this.notification({method:"notifications/resources/updated",params:I})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}}import gb2 from"node:process";class WE1{constructor(I=gb2.stdin,G=gb2.stdout){this._stdin=I,this._stdout=G,this._readBuffer=new MT,this._started=!1,this._ondata=(Z)=>{this._readBuffer.append(Z),this.processReadBuffer()},this._onerror=(Z)=>{var d;(d=this.onerror)===null||d===void 0||d.call(this,Z)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){var I,G;while(!0)try{let Z=this._readBuffer.readMessage();if(Z===null)break;(I=this.onmessage)===null||I===void 0||I.call(this,Z)}catch(Z){(G=this.onerror)===null||G===void 0||G.call(this,Z)}}async close(){var I;if(this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0)this._stdin.pause();this._readBuffer.clear(),(I=this.onclose)===null||I===void 0||I.call(this)}send(I){return new Promise((G)=>{let Z=F01(I);if(this._stdout.write(Z))G();else this._stdout.once("drain",G)})}}var Ub2={readFileTimestamps:{}},fb2=[Z01],m21=[SJ,l4,DG,_G,d7,CZ,u7,UI];async function Rb2(I){await qC(I);let G=new dE1({name:"claude/tengu",version:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION},{capabilities:{tools:{}}});G.setRequestHandler(Jf1,async()=>{return{tools:await Promise.all(m21.map(async(W)=>({...W,description:await W.description(e.object({}),{permissionMode:"default"}),inputSchema:WN(W.inputSchema)})))}}),G.setRequestHandler(Kf1,async(d)=>{let{name:W,arguments:B}=d.params,w=m21.find((V)=>V.name===W);if(!w)throw new Error(`Tool ${W} not found`);try{if(!await w.isEnabled())throw new Error(`Tool ${W} is not enabled`);let V=await g8(),C=await w.validateInput?.(B??{},{abortController:new AbortController,options:{commands:fb2,tools:m21,slowAndCapableModel:V,forkNumber:0,messageLogName:"unused",maxThinkingTokens:0,allowedToolsFromCLIFlag:[]},readFileTimestamps:Ub2.readFileTimestamps});if(C&&!C.result)throw new Error(`Tool ${W} input is invalid: ${C.message}`);let X=w.call(B??{},{abortController:new AbortController,options:{commands:fb2,tools:m21,slowAndCapableModel:await g8(),forkNumber:0,messageLogName:"unused",maxThinkingTokens:0,allowedToolsFromCLIFlag:[]},readFileTimestamps:Ub2.readFileTimestamps},EJ,B8({content:[],surface:"client"}),new Set),Y=await Z_(X);if(Y.type!=="result")throw new Error(`Tool ${W} did not return a result`);return{content:Array.isArray(Y)?Y.map((A)=>({type:"text",text:"text"in A?A.text:JSON.stringify(A)})):[{type:"text",text:typeof Y==="string"?Y:JSON.stringify(Y.data)}]}}catch(V){return W0(V),{isError:!0,content:[{type:"text",text:`Error: ${V instanceof Error?V.message:String(V)}`}]}}});async function Z(){let d=new WE1;await G.connect(d)}return await Z()}import{promises as vb2}from"fs";import{join as pu3}from"path";var iu3=2592000000;function nu3(I){let G=I.split(".")[0].replace(/T(\d{2})-(\d{2})-(\d{2})-(\d{3})Z/,"T$1:$2:$3.$4Z");return new Date(G)}async function au3(){let I=HH.messages(),G=HH.errors(),Z=new Date(Date.now()-iu3),d={messages:0,errors:0};for(let W of[I,G])try{let B=await vb2.readdir(W);for(let w of B)try{if(nu3(w)<Z)if(await vb2.unlink(pu3(W,w)),W===I)d.messages++;else d.errors++}catch(V){W0(`Failed to process file ${w}: ${V instanceof Error?V.message:String(V)}`)}}catch(B){if(B instanceof Error&&"code"in B&&B.code!=="ENOENT")W0(`Failed to cleanup directory ${W}: ${B instanceof Error?B.message:String(B)}`)}return d}function Eb2(){setImmediate(au3).unref()}var tu3=A1(u1(),1);var ou3=A1(u1(),1);var ru3=A1(u1(),1);var eu3=A1(u1(),1);var YZ=A1(u1(),1);import{writeFileSync as Iy3}from"fs";function Gy3({filePath:I,errorDescription:G,onExit:Z,onReset:d}){let W=e1();_4((V,C)=>{if(C.escape)Z()});let B=K6(()=>process.exit(0)),w=(V)=>{if(V==="exit")Z();else d()};return YZ.default.createElement(YZ.default.Fragment,null,YZ.default.createElement(p,{flexDirection:"column",borderColor:W.error,borderStyle:"round",padding:1,width:70,gap:1},YZ.default.createElement(O,{bold:!0},"Configuration Error"),YZ.default.createElement(p,{flexDirection:"column",gap:1},YZ.default.createElement(O,null,"The configuration file at ",YZ.default.createElement(O,{bold:!0},I)," contains invalid JSON."),YZ.default.createElement(O,null,G)),YZ.default.createElement(p,{flexDirection:"column"},YZ.default.createElement(O,{bold:!0},"Choose an option:"),YZ.default.createElement(U7,{options:[{label:"Exit and fix manually",value:"exit"},{label:"Reset with default configuration",value:"reset"}],onChange:w}))),B.pending?YZ.default.createElement(O,{dimColor:!0},"Press ",B.keyName," again to exit"):YZ.default.createElement(R5,null))}function Mb2({error:I}){return new Promise((G)=>{bZ(YZ.default.createElement(Gy3,{filePath:I.filePath,errorDescription:I.message,onExit:()=>{G(),process.exit(1)},onReset:()=>{Iy3(I.filePath,JSON.stringify(I.defaultConfig,null,2)),G(),process.exit(0)}}),{exitOnCtrlC:!1})})}import{appendFileSync as Zy3,mkdirSync as dy3,writeFileSync as Wy3}from"fs";import{existsSync as By3}from"fs";import{EOL as $b2,homedir as wy3}from"os";import{dirname as Vy3,join as Cy3}from"path";function Sb2(){return}var l7=A1(u1(),1);function Lb2({onAccept:I}){let G=e1();l7.default.useEffect(()=>{B0("bypass_permissions_mode_dialog_shown",{})},[]);function Z(W){let B=Q2();switch(W){case"accept":{B0("bypass_permissions_mode_dialog_accept",{}),i4({...B,bypassPermissionsModeAccepted:!0}),I();break}case"decline":{process.exit(1);break}}}let d=K6(()=>process.exit(0));return _4((W,B)=>{if(B.escape){process.exit(0);return}}),l7.default.createElement(l7.default.Fragment,null,l7.default.createElement(p,{flexDirection:"column",gap:1,padding:1,borderStyle:"round",borderColor:G.error},l7.default.createElement(O,{bold:!0,color:G.error},"WARNING: ",b2," running in Bypass Permissions mode"),l7.default.createElement(p,{flexDirection:"column",gap:1},l7.default.createElement(O,null,"In Bypass Permissions mode, ",b2," will not ask for your approval before running potentially dangerous commands.",l7.default.createElement(R5,null),"This mode should only be used in a sandboxed container/VM that has restricted internet access and can easily be restored if damaged."),l7.default.createElement(O,null,"By proceeding, you accept all responsibility for actions taken while running in Bypass Permissions mode."),l7.default.createElement(iC,{url:"https://docs.anthropic.com/s/claude-code-security"})),l7.default.createElement(U7,{options:[{label:"No, exit",value:"decline"},{label:"Yes, I accept",value:"accept"}],onChange:(W)=>Z(W)})),l7.default.createElement(p,{marginLeft:3},l7.default.createElement(O,{dimColor:!0},d.pending?l7.default.createElement(l7.default.Fragment,null,"Press ",d.keyName," again to exit"):l7.default.createElement(l7.default.Fragment,null,"Enter to confirm · Esc to exit"))))}La1();Object.keys(To1);var _y3=5;function Hy3(){let I=Q2();i4({...I,hasCompletedOnboarding:!0,lastOnboardingVersion:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION})}function Dy3(I,G){if(!1==="true"||G)return!1;let Z=I.autoUpdaterStatus??"not_configured",d=I.numStartups,W=I.doctorShownAtSession??0;return Z==="not_configured"&&(d-W>=_y3||W===0)}async function Fy3(I,G){if(!1==="true")return;let Z=Q2();if(!Z.theme||!Z.hasCompletedOnboarding)await w8(),await new Promise((d)=>{bZ(uJ.default.createElement(df1,{onDone:async()=>{Hy3(),await w8(),d()}}),{exitOnCtrlC:!1})});if(!G&&I!=="dangerouslySkipPermissions"){if(!Qa1())await new Promise((d)=>{bZ(uJ.default.createElement(qb2,{onDone:()=>{vg1(),d()}}),{exitOnCtrlC:!1})})}if(I==="dangerouslySkipPermissions"&&!Q2().bypassPermissionsModeAccepted)if(!G)await new Promise((d)=>{bZ(uJ.default.createElement(Lb2,{onAccept:d}))});else console.error("--dangerously-skip-permissions must be accepted in an interactive session first."),process.exit(1)}function Jy3(){let I=Q2();i4({...I,numStartups:(I.numStartups??0)+1})}async function PJ(I,G,Z){let d=process.version.match(/^v(\d+)\./)?.[1];if(!d||parseInt(d)<18)console.error(T0.bold.red("Error: Claude Code requires Node.js version 18 or higher.")),process.exit(1);if(qC(I),vg1(),G==="dangerouslySkipPermissions"){if(process.platform!=="win32"&&typeof process.getuid==="function"&&process.getuid()===0)console.error("--dangerously-skip-permissions cannot be used with root/sudo privileges for security reasons"),process.exit(1);if(!Q2().bypassPermissionsModeAccepted)console.error("--dangerously-skip-permissions must be accepted in an interactive session first."),process.exit(1)}if(Eb2(),v21(),FG(),pg(),Sb2(),AW0())B0("tengu_migrate_api_key_to_keychain",{success:"true"});let W=E4();if(W.lastCost!==void 0&&W.lastDuration!==void 0)B0("tengu_exit",{last_session_cost:String(W.lastCost),last_session_api_duration:String(W.lastAPIDuration),last_session_duration:String(W.lastDuration),last_session_lines_added:String(W.lastLinesAdded),last_session_lines_removed:String(W.lastLinesRemoved),last_session_id:W.lastSessionId}),h3({...W,lastCost:void 0,lastAPIDuration:void 0,lastDuration:void 0,lastLinesAdded:void 0,lastLinesRemoved:void 0,lastSessionId:void 0});let B=Q2();if(Dy3(B,Z))B0("tengu_setup_auto_updater_not_configured",{}),await new Promise((w)=>{bZ(uJ.default.createElement(NT,{onDone:()=>w()}),{exitOnCtrlC:!1})}),i4({...B,doctorShownAtSession:B.numStartups})}async function Ky3(){try{Ra1()}catch(Z){if(Z instanceof ig){await Mb2({error:Z});return}}let I="",G={exitOnCtrlC:!1,onFlicker(){B0("tengu_flicker",{})}};if(!process.stdin.isTTY&&!0&&!process.argv.includes("mcp")){if(I=await Qy3(),process.platform!=="win32")try{let Z=Yy3("/dev/tty","r");G={...G,stdin:new Xy3(Z)}}catch(Z){W0(`Could not open /dev/tty: ${Z}`)}}await zy3(I,G)}async function zy3(I,G){let Z=new Bb2,d={...G,exitOnCtrlC:!0},W=await EP2(),B=W.filter((C)=>!C.isHidden).map((C)=>`/${C.name} - ${C.description}`).join(`
|
|
1295
1295
|
`);Z.name("claude").description(`${b2} - starts an interactive session by default, use -p/--print for non-interactive output
|
|
1296
1296
|
|
|
1297
1297
|
Slash commands available during an interactive session:
|
|
1298
1298
|
${B}`).argument("[prompt]","Your prompt",String).option("-c, --cwd <cwd>","The current working directory",String,LJ()).option("-d, --debug","Enable debug mode",()=>!0).option("--verbose","Override verbose mode setting from config",()=>!0).option("-ea, --enable-architect","Enable the Architect tool",()=>!0).option("-p, --print","Print response and exit (useful for pipes)",()=>!0).option("--mcp-debug","Enable MCP debug mode (shows MCP server errors)",()=>!0).option("--dangerously-skip-permissions","Bypass all permission checks. Only works in Docker containers with no internet access.",()=>!0).option("--allowedTools <tools>",'Comma-separated list of tool names to allow (e.g. "Bash(git*),Edit,Replace")',String).action(async(C,{cwd:X,debug:Y,verbose:A,enableArchitect:D,print:J,dangerouslySkipPermissions:K,allowedTools:z})=>{let Q=K?"dangerouslySkipPermissions":"default";await Fy3(Q,J),B0("tengu_init",{entrypoint:"claude",hasInitialPrompt:Boolean(C).toString(),hasStdin:Boolean(I).toString(),enableArchitect:D?.toString()??"false",verbose:A?.toString()??"false",debug:Y?.toString()??"false",print:J?.toString()??"false",allowedTools:z}),await LL2();let U=qy3(z),[,M,S]=await Promise.all([PJ(X,Q,J),y21(D??E4().enableArchitectTool),Of1()]);Jy3();let L=[C,I].filter(Boolean).join(`
|
|
1299
|
-
`);if(J){if(!L)console.error("Error: Input must be provided either through stdin or as a prompt argument when using --print"),process.exit(1);MJ(L);let P=Cx(new Date),m=await wb2({commands:W,hasPermissionsToUseTool:EJ,messageLogName:P,prompt:L,cwd:X,tools:M,permissionMode:Q,allowedToolsFromCLIFlag:U,verbose:A,writeFileAllowedDirectories:new Set});if(A){let l=JC(P,0,0);if(Pb2(l)){let V1=Ay3(l,"utf8");console.log(V1)}else console.log(m.resultText)}else console.log(m.resultText);process.exit(0)}else{let P=await S61();bZ(uJ.default.createElement(Vf1,{commands:W,debug:Y,initialPrompt:L,messageLogName:Cx(new Date),shouldShowPromptInput:!0,verbose:A,tools:M,permissionMode:Q,mcpClients:S,isDefaultModel:P,allowedToolsFromCLIFlag:U}),G)}}).version(`${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.
|
|
1299
|
+
`);if(J){if(!L)console.error("Error: Input must be provided either through stdin or as a prompt argument when using --print"),process.exit(1);MJ(L);let P=Cx(new Date),m=await wb2({commands:W,hasPermissionsToUseTool:EJ,messageLogName:P,prompt:L,cwd:X,tools:M,permissionMode:Q,allowedToolsFromCLIFlag:U,verbose:A,writeFileAllowedDirectories:new Set});if(A){let l=JC(P,0,0);if(Pb2(l)){let V1=Ay3(l,"utf8");console.log(V1)}else console.log(m.resultText)}else console.log(m.resultText);process.exit(0)}else{let P=await S61();bZ(uJ.default.createElement(Vf1,{commands:W,debug:Y,initialPrompt:L,messageLogName:Cx(new Date),shouldShowPromptInput:!0,verbose:A,tools:M,permissionMode:Q,mcpClients:S,isDefaultModel:P,allowedToolsFromCLIFlag:U}),G)}}).version(`${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION} (${b2})`,"-v, --version");let w=Z.command("config").description("Manage configuration (eg. claude config set -g theme dark)");w.command("get <key>").description("Get a config value").option("-c, --cwd <cwd>","The current working directory",String,LJ()).option("-g, --global","Use global config").action(async(C,{cwd:X,global:Y})=>{await PJ(X,"default"),console.log(Ea1(C,Y??!1)),process.exit(0)}),w.command("set <key> <value>").description("Set a config value").option("-c, --cwd <cwd>","The current working directory",String,LJ()).option("-g, --global","Use global config").action(async(C,X,{cwd:Y,global:A})=>{await PJ(Y,"default"),Ma1(C,X,A??!1),console.log(`Set ${C} to ${X}`),process.exit(0)}),w.command("remove <key>").description("Remove a config value").option("-c, --cwd <cwd>","The current working directory",String,LJ()).option("-g, --global","Use global config").action(async(C,{cwd:X,global:Y})=>{await PJ(X,"default"),$a1(C,Y??!1),console.log(`Removed ${C}`),process.exit(0)}),w.command("list").alias("ls").description("List all config values").option("-c, --cwd <cwd>","The current working directory",String,LJ()).option("-g, --global","Use global config",!1).action(async({cwd:C,global:X})=>{await PJ(C,"default"),console.log(JSON.stringify(Sa1(X??!1),null,2)),process.exit(0)}),w.command("add <key> <value>").description("Add an item to a config array").option("-c, --cwd <cwd>","The current working directory",String,LJ()).option("-g, --global","Use global config").action(async(C,X,{cwd:Y,global:A})=>{await PJ(Y,"default"),Na1(C,X,A??!1),console.log(`Added ${C} to ${A?"global":"project"} config`),process.exit(0)}),w.command("rm <key> <value>").description("Remove an item from a config array").option("-c, --cwd <cwd>","The current working directory",String,LJ()).option("-g, --global","Use global config").action(async(C,X,{cwd:Y,global:A})=>{await PJ(Y,"default"),qa1(C,X,A??!1),console.log(`Removed ${X} from ${A?"global":"project"} config`),process.exit(0)});let V=Z.command("mcp").description("Configure and manage MCP servers");return V.command("serve").description(`Start the ${b2} MCP server`).action(async()=>{let C=Z.opts().cwd??LJ();if(B0("tengu_mcp_start",{providedCwd:C}),!Pb2(C))console.error(`Error: Directory ${C} does not exist`),process.exit(1);try{await PJ(C,"default"),await Rb2(C)}catch(X){console.error("Error: Failed to start MCP server:",X),process.exit(1)}}),V.command("add [name] [command] [args...]").description("Add a stdio server (run without arguments for interactive wizard)").option("-s, --scope <scope>","Configuration scope (project or global)","project").option("-e, --env <env...>","Set environment variables (e.g. -e KEY=value)").action(async(C,X,Y,A)=>{if(!C)B0("tengu_mcp_add_wizard_start",{}),await new Promise((D)=>{bZ(uJ.default.createElement(Nb2,{onDone:()=>{D()}}),{exitOnCtrlC:!0})}),process.exit(0);else if(!X)console.error("Error: Command is required when server name is provided."),console.error("Usage: claude mcp add <name> <command> [args...]"),console.error(" claude mcp add (for interactive wizard)"),process.exit(1);try{let D=q01(A.scope);await B0("tengu_mcp_add",{name:C,type:"stdio",scope:D});let J=N01(A.env);uT(C,{type:"stdio",command:X,args:Y||[],env:J},D),console.log(`Added stdio MCP server ${C} with command: ${X} ${(Y||[]).join(" ")} to ${D} config`),process.exit(0)}catch(D){console.error(D.message),process.exit(1)}}),V.command("remove <name>").description("Remove an MCP server").option("-s, --scope <scope>","Configuration scope (project or global)","project").action(async(C,X)=>{try{let Y=q01(X.scope);await B0("tengu_mcp_delete",{name:C,scope:Y}),NP2(C,Y),console.log(`Removed MCP server ${C} from ${Y} config`),process.exit(0)}catch(Y){console.error(Y.message),process.exit(1)}}),V.command("list").description("List configured MCP servers").action(async()=>{await B0("tengu_mcp_list",{});let C=qP2();if(Object.keys(C).length===0)console.log("No MCP servers configured. Use `claude mcp add` to add a server.");else for(let[X,Y]of Object.entries(C))if(Y.type==="sse")console.log(`${X}: ${Y.url} (SSE)`);else console.log(`${X}: ${Y.command} ${Y.args.join(" ")}`);process.exit(0)}),V.command("get <name>").description("Get details about an MCP server").action(async(C)=>{await B0("tengu_mcp_get",{name:C});let X=yT(C);if(!X)console.error(`No MCP server found with name: ${C}`),process.exit(1);if(console.log(`${C}:`),console.log(` Scope: ${X.scope}`),X.type==="sse")console.log(" Type: sse"),console.log(` URL: ${X.url}`);else if(console.log(" Type: stdio"),console.log(` Command: ${X.command}`),console.log(` Args: ${X.args.join(" ")}`),X.env){console.log(" Environment:");for(let[Y,A]of Object.entries(X.env))console.log(` ${Y}=${A}`)}process.exit(0)}),V.command("add-json <name> <json>").description("Add a stdio server with a JSON string").option("-s, --scope <scope>","Configuration scope (project or global)","project").action(async(C,X,Y)=>{try{let A=q01(Y.scope);B0("tengu_mcp_add",{name:C,scope:A,json:"true"}),QP2(C,X,A),console.log(`Added MCP server ${C} to ${A} config`),process.exit(0)}catch(A){console.error(A.message),process.exit(1)}}),Z.command("doctor").description("Check the health of your Claude Code auto-updater").action(async()=>{B0("tengu_doctor_command",{}),await new Promise((C)=>{bZ(uJ.default.createElement(NT,{onDone:()=>C(),doctorMode:!0}),{exitOnCtrlC:!1})}),process.exit(0)}),Z.command("update").description("Check for updates and install if available").action(async()=>{B0("tengu_update_check",{}),console.log(`Current version: ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION}`),console.log("Checking for updates...");let C=await r11();if(!C)console.error("Failed to check for updates"),process.exit(1);if(C==={ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION)console.log(`${b2} is up to date (${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION})`),process.exit(0);switch(console.log(`New version available: ${C} (current: ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION})`),console.log("Installing update..."),await s11()){case"success":console.log(`Successfully updated from ${{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://docs.anthropic.com/s/claude-code",VERSION:"0.2.34"}.VERSION} to version ${C}`);break;case"no_permissions":console.error("Error: Insufficient permissions to install update"),console.error("Try running with sudo or fix npm permissions"),process.exit(1);break;case"install_failed":console.error("Error: Failed to install update"),process.exit(1);break;case"in_progress":console.error("Error: Another instance is currently performing an update"),console.error("Please wait and try again later"),process.exit(1);break}process.exit(0)}),await Z.parseAsync(process.argv),Z}async function Qy3(){if(process.stdin.isTTY)return"";let I="";for await(let G of process.stdin)I+=G;return I}process.on("exit",()=>{Ny3(),n8.getInstance().close()});process.on("SIGINT",()=>{process.exit(0)});function Ny3(){(process.stderr.isTTY?process.stderr:process.stdout.isTTY?process.stdout:void 0)?.write(`\x1B[?25h${_I1}`)}Ky3();function qy3(I){if(!I)return[];return I.split(",").map((G)=>G.trim()).filter(Boolean)}export{Dy3 as shouldShowDoctorComponent,qy3 as parseAllowedTools,Hy3 as completeOnboarding};
|
|
1300
1300
|
|
|
1301
|
-
//# debugId=
|
|
1301
|
+
//# debugId=CE0A1B59CEA20A9264756E2164756E21
|