@openai/codex 0.14.0 → 0.16.0

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.
Binary file
Binary file
Binary file
Binary file
Binary file
package/dist/cli.js CHANGED
@@ -342,7 +342,7 @@ Read about how to prevent this error on https://github.com/vadimdemedes/ink/#isr
342
342
  `).map((b,S)=>s.startsWith("Unable to generate explanation")?dn.default.createElement(Y,{key:S,bold:!0,color:"red"},b):b.match(/^\d+\.\s+/)?dn.default.createElement(Y,{key:S,bold:!0,color:"cyan"},b):dn.default.createElement(Y,{key:S},b))):dn.default.createElement(Y,{dimColor:!0},"Loading explanation..."),dn.default.createElement(Y,{dimColor:!0},"Press any key to return to options"))):i==="select"?dn.default.createElement(dn.default.Fragment,null,dn.default.createElement(Y,null,"Allow command?"),dn.default.createElement(be,{paddingX:2,flexDirection:"column",gap:1},dn.default.createElement(y$,{isDisabled:!a,visibleOptionCount:E.length,onChange:b=>{b==="edit"?o("input"):b==="switch"?r():t(b)},options:E}))):i==="input"?dn.default.createElement(dn.default.Fragment,null,dn.default.createElement(Y,null,"Give the model feedback (\u21B5 to submit):"),dn.default.createElement(be,{borderStyle:"round"},dn.default.createElement(be,{paddingX:1},dn.default.createElement(Hm,{value:p,onChange:g,placeholder:"type a reason",showCursor:!0,focus:!0}))),p.trim()===""&&dn.default.createElement(be,{paddingX:2,marginBottom:1},dn.default.createElement(Y,{dimColor:!0},"default:\xA0",dn.default.createElement(Y,null,VN)))):null))}f();var Db=Re(pt(),1);function v8e({completions:e,selectedCompletion:t,displayLimit:r}){let n=(0,Db.useMemo)(()=>{let a=Math.max(0,t-Math.floor(r/2));e.length-a<r&&(a=Math.max(0,e.length-r));let i=Math.min(e.length,a+r);return e.slice(a,i).map((o,s)=>({completion:o,originalIndex:s+a}))},[e,t,r]);return Db.default.createElement(be,{flexDirection:"column"},n.map(({completion:a,originalIndex:i})=>Db.default.createElement(Y,{key:a,dimColor:i!==t,underline:i===t,backgroundColor:i===t?"blackBright":void 0},a)))}var b$=v8e;Au();f();import Sj from"fs";import X3e from"os";import lf from"path";function Cj(e){if(!e)return[];try{let t=lf.sep,r=e==="~"||e.startsWith("~"+t),n=r?lf.join(X3e.homedir(),e.slice(1)):e,a=lf.normalize(n),i=e.endsWith(lf.sep),o=lf.basename(a),s=a==="."&&!e.startsWith("."+t)&&!r?process.cwd():lf.dirname(a),u=i?lf.join(s,o):s;return Sj.readdirSync(u).filter(p=>i||p.startsWith(o)).map(p=>{let g=lf.join(u,p),_=Sj.statSync(g).isDirectory();return{path:_?lf.join(g,t):g,isDirectory:_}})}catch{return[]}}f();import bO from"fs";import RD from"path";async function Tj(e){let t=/@([\w./~-]+)/g,r=e,n=[];for(let a of e.matchAll(t)){let i=a.index,o=a[1];i!==void 0&&o&&n.push({index:i,length:a[0].length,path:o})}for(let a=n.length-1;a>=0;a--){let{index:i,length:o,path:s}=n[a],u=RD.resolve(process.cwd(),s);try{if(bO.statSync(u).isFile()){let g=bO.readFileSync(u,"utf-8"),_=RD.relative(process.cwd(),u),E=`<${_}>
343
343
  ${g}
344
344
  </${_}>`;r=r.slice(0,i)+E+r.slice(i+o)}}catch{}}return r}function Ij(e){return e.replace(/<([^\n>]+)>([\s\S]*?)<\/\1>/g,(t,r)=>{let n=RD.normalize(r.trim());try{return bO.statSync(RD.resolve(process.cwd(),n)).isFile()?"@"+n:t}catch{return t}})}f();f();f();f();f();f();var J3e="End-Of-Stream",ea=class extends Error{constructor(){super(J3e),this.name="EndOfStreamError"}},nh=class extends Error{constructor(t="The operation was aborted"){super(t),this.name="AbortError"}};f();f();f();var ah=class{constructor(){this.endOfStream=!1,this.interrupted=!1,this.peekQueue=[]}async peek(t,r=!1){let n=await this.read(t,r);return this.peekQueue.push(t.subarray(0,n)),n}async read(t,r=!1){if(t.length===0)return 0;let n=this.readFromPeekBuffer(t);if(this.endOfStream||(n+=await this.readRemainderFromStream(t.subarray(n),r)),n===0)throw new ea;return n}readFromPeekBuffer(t){let r=t.length,n=0;for(;this.peekQueue.length>0&&r>0;){let a=this.peekQueue.pop();if(!a)throw new Error("peekData should be defined");let i=Math.min(a.length,r);t.set(a.subarray(0,i),n),n+=i,r-=i,i<a.length&&this.peekQueue.push(a.subarray(i))}return n}async readRemainderFromStream(t,r){let n=0;for(;n<t.length&&!this.endOfStream;){if(this.interrupted)throw new nh;let a=await this.readFromStream(t.subarray(n),r);if(a===0)break;n+=a}if(!r&&n<t.length)throw new ea;return n}};f();f();var ND=class extends ah{constructor(t){super(),this.reader=t}async abort(){return this.close()}async close(){this.reader.releaseLock()}};var Pb=class extends ND{async readFromStream(t,r){if(t.length===0)return 0;let n=await this.reader.read(new Uint8Array(t.length),{min:r?void 0:t.length});return n.done&&(this.endOfStream=n.done),n.value?(t.set(n.value),n.value.length):0}};f();var U0=class extends ah{constructor(t){super(),this.reader=t,this.buffer=null}writeChunk(t,r){let n=Math.min(r.length,t.length);return t.set(r.subarray(0,n)),n<r.length?this.buffer=r.subarray(n):this.buffer=null,n}async readFromStream(t,r){if(t.length===0)return 0;let n=0;for(this.buffer&&(n+=this.writeChunk(t,this.buffer));n<t.length&&!this.endOfStream;){let a=await this.reader.read();if(a.done){this.endOfStream=!0;break}a.value&&(n+=this.writeChunk(t.subarray(n),a.value))}if(n===0&&this.endOfStream)throw new ea;return n}abort(){return this.interrupted=!0,this.reader.cancel()}async close(){await this.abort(),this.reader.releaseLock()}};f();function SO(e){try{let t=e.getReader({mode:"byob"});return t instanceof ReadableStreamDefaultReader?new U0(t):new Pb(t)}catch(t){if(t instanceof TypeError)return new U0(e.getReader());throw t}}f();f();var cf=class{constructor(t){this.numBuffer=new Uint8Array(8),this.position=0,this.onClose=t?.onClose,t?.abortSignal&&t.abortSignal.addEventListener("abort",()=>{this.abort()})}async readToken(t,r=this.position){let n=new Uint8Array(t.len);if(await this.readBuffer(n,{position:r})<t.len)throw new ea;return t.get(n,0)}async peekToken(t,r=this.position){let n=new Uint8Array(t.len);if(await this.peekBuffer(n,{position:r})<t.len)throw new ea;return t.get(n,0)}async readNumber(t){if(await this.readBuffer(this.numBuffer,{length:t.len})<t.len)throw new ea;return t.get(this.numBuffer,0)}async peekNumber(t){if(await this.peekBuffer(this.numBuffer,{length:t.len})<t.len)throw new ea;return t.get(this.numBuffer,0)}async ignore(t){if(this.fileInfo.size!==void 0){let r=this.fileInfo.size-this.position;if(t>r)return this.position+=r,r}return this.position+=t,t}async close(){await this.abort(),await this.onClose?.()}normalizeOptions(t,r){if(!this.supportsRandomAccess()&&r&&r.position!==void 0&&r.position<this.position)throw new Error("`options.position` must be equal or greater than `tokenizer.position`");return{mayBeLess:!1,offset:0,length:t.length,position:this.position,...r}}abort(){return Promise.resolve()}};var eRe=256e3,OD=class extends cf{constructor(t,r){super(r),this.streamReader=t,this.fileInfo=r?.fileInfo??{}}async readBuffer(t,r){let n=this.normalizeOptions(t,r),a=n.position-this.position;if(a>0)return await this.ignore(a),this.readBuffer(t,r);if(a<0)throw new Error("`options.position` must be equal or greater than `tokenizer.position`");if(n.length===0)return 0;let i=await this.streamReader.read(t.subarray(0,n.length),n.mayBeLess);if(this.position+=i,(!r||!r.mayBeLess)&&i<n.length)throw new ea;return i}async peekBuffer(t,r){let n=this.normalizeOptions(t,r),a=0;if(n.position){let i=n.position-this.position;if(i>0){let o=new Uint8Array(n.length+i);return a=await this.peekBuffer(o,{mayBeLess:n.mayBeLess}),t.set(o.subarray(i)),a-i}if(i<0)throw new Error("Cannot peek from a negative offset in a stream")}if(n.length>0){try{a=await this.streamReader.peek(t.subarray(0,n.length),n.mayBeLess)}catch(i){if(r?.mayBeLess&&i instanceof ea)return 0;throw i}if(!n.mayBeLess&&a<n.length)throw new ea}return a}async ignore(t){let r=Math.min(eRe,t),n=new Uint8Array(r),a=0;for(;a<t;){let i=t-a,o=await this.readBuffer(n,{length:Math.min(r,i)});if(o<0)return o;a+=o}return a}abort(){return this.streamReader.abort()}async close(){return this.streamReader.close()}supportsRandomAccess(){return!1}};f();var kD=class extends cf{constructor(t,r){super(r),this.uint8Array=t,this.fileInfo={...r?.fileInfo??{},size:t.length}}async readBuffer(t,r){r?.position&&(this.position=r.position);let n=await this.peekBuffer(t,r);return this.position+=n,n}async peekBuffer(t,r){let n=this.normalizeOptions(t,r),a=Math.min(this.uint8Array.length-n.position,n.length);if(!n.mayBeLess&&a<n.length)throw new ea;return t.set(this.uint8Array.subarray(n.position,n.position+a)),a}close(){return super.close()}supportsRandomAccess(){return!0}setPosition(t){this.position=t}};function CO(e,t){let r=SO(e),n=t??{},a=n.onClose;return n.onClose=async()=>{if(await r.close(),a)return a()},new OD(r,n)}function Dj(e,t){return new kD(e,t)}f();import{open as rRe}from"node:fs/promises";var Ub=class e extends cf{static async fromFile(t){let r=await rRe(t,"r"),n=await r.stat();return new e(r,{fileInfo:{path:t,size:n.size}})}constructor(t,r){super(r),this.fileHandle=t,this.fileInfo=r.fileInfo}async readBuffer(t,r){let n=this.normalizeOptions(t,r);if(this.position=n.position,n.length===0)return 0;let a=await this.fileHandle.read(t,0,n.length,n.position);if(this.position+=a.bytesRead,a.bytesRead<n.length&&(!r||!r.mayBeLess))throw new ea;return a.bytesRead}async peekBuffer(t,r){let n=this.normalizeOptions(t,r),a=await this.fileHandle.read(t,0,n.length,n.position);if(!n.mayBeLess&&a.bytesRead<n.length)throw new ea;return a.bytesRead}async close(){return await this.fileHandle.close(),super.close()}setPosition(t){this.position=t}supportsRandomAccess(){return!0}};var nRe=Ub.fromFile;f();f();var xj=Re(wj(),1);function fl(e){return new DataView(e.buffer,e.byteOffset)}var Rj={len:1,get(e,t){return fl(e).getUint8(t)},put(e,t,r){return fl(e).setUint8(t,r),t+1}},Ta={len:2,get(e,t){return fl(e).getUint16(t,!0)},put(e,t,r){return fl(e).setUint16(t,r,!0),t+2}},Q0={len:2,get(e,t){return fl(e).getUint16(t)},put(e,t,r){return fl(e).setUint16(t,r),t+2}};var ui={len:4,get(e,t){return fl(e).getUint32(t,!0)},put(e,t,r){return fl(e).setUint32(t,r,!0),t+4}},Nj={len:4,get(e,t){return fl(e).getUint32(t)},put(e,t,r){return fl(e).setUint32(t,r),t+4}};var Oj={len:4,get(e,t){return fl(e).getInt32(t)},put(e,t,r){return fl(e).setInt32(t,r),t+4}};var kj={len:8,get(e,t){return fl(e).getBigUint64(t,!0)},put(e,t,r){return fl(e).setBigUint64(t,r,!0),t+8}};var ml=class{constructor(t,r){this.len=t,this.encoding=r,this.textDecoder=new TextDecoder(r)}get(t,r){return this.textDecoder.decode(t.subarray(r,r+this.len))}};f();f();import{createRequire as oRe}from"module";var sRe=oRe("/"),lRe;try{lRe=sRe("worker_threads").Worker}catch{}var Ul=Uint8Array,G0=Uint16Array,cRe=Int32Array,Bj=new Ul([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),Lj=new Ul([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),uRe=new Ul([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Mj=function(e,t){for(var r=new G0(31),n=0;n<31;++n)r[n]=t+=1<<e[n-1];for(var a=new cRe(r[30]),n=1;n<30;++n)for(var i=r[n];i<r[n+1];++i)a[i]=i-r[n]<<5|n;return{b:r,r:a}},Fj=Mj(Bj,2),Pj=Fj.b,pRe=Fj.r;Pj[28]=258,pRe[258]=28;var Uj=Mj(Lj,0),dRe=Uj.b,TCt=Uj.r,wO=new G0(32768);for(Nn=0;Nn<32768;++Nn)uf=(Nn&43690)>>1|(Nn&21845)<<1,uf=(uf&52428)>>2|(uf&13107)<<2,uf=(uf&61680)>>4|(uf&3855)<<4,wO[Nn]=((uf&65280)>>8|(uf&255)<<8)>>1;var uf,Nn,Qb=function(e,t,r){for(var n=e.length,a=0,i=new G0(t);a<n;++a)e[a]&&++i[e[a]-1];var o=new G0(t);for(a=1;a<t;++a)o[a]=o[a-1]+i[a-1]<<1;var s;if(r){s=new G0(1<<t);var u=15-t;for(a=0;a<n;++a)if(e[a])for(var p=a<<4|e[a],g=t-e[a],_=o[e[a]-1]++<<g,E=_|(1<<g)-1;_<=E;++_)s[wO[_]>>u]=p}else for(s=new G0(n),a=0;a<n;++a)e[a]&&(s[a]=wO[o[e[a]-1]++]>>15-e[a]);return s},Gb=new Ul(288);for(Nn=0;Nn<144;++Nn)Gb[Nn]=8;var Nn;for(Nn=144;Nn<256;++Nn)Gb[Nn]=9;var Nn;for(Nn=256;Nn<280;++Nn)Gb[Nn]=7;var Nn;for(Nn=280;Nn<288;++Nn)Gb[Nn]=8;var Nn,Qj=new Ul(32);for(Nn=0;Nn<32;++Nn)Qj[Nn]=5;var Nn;var fRe=Qb(Gb,9,1);var mRe=Qb(Qj,5,1),IO=function(e){for(var t=e[0],r=1;r<e.length;++r)e[r]>t&&(t=e[r]);return t},Eu=function(e,t,r){var n=t/8|0;return(e[n]|e[n+1]<<8)>>(t&7)&r},DO=function(e,t){var r=t/8|0;return(e[r]|e[r+1]<<8|e[r+2]<<16)>>(t&7)},gRe=function(e){return(e+7)/8|0},hRe=function(e,t,r){return(t==null||t<0)&&(t=0),(r==null||r>e.length)&&(r=e.length),new Ul(e.subarray(t,r))};var _Re=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],Pl=function(e,t,r){var n=new Error(t||_Re[e]);if(n.code=e,Error.captureStackTrace&&Error.captureStackTrace(n,Pl),!r)throw n;return n},xO=function(e,t,r,n){var a=e.length,i=n?n.length:0;if(!a||t.f&&!t.l)return r||new Ul(0);var o=!r,s=o||t.i!=2,u=t.i;o&&(r=new Ul(a*3));var p=function(rt){var tt=r.length;if(rt>tt){var Fe=new Ul(Math.max(tt*2,rt));Fe.set(r),r=Fe}},g=t.f||0,_=t.p||0,E=t.b||0,b=t.l,S=t.d,C=t.m,I=t.n,R=a*8;do{if(!b){g=Eu(e,_,1);var B=Eu(e,_+1,3);if(_+=3,B)if(B==1)b=fRe,S=mRe,C=9,I=5;else if(B==2){var W=Eu(e,_,31)+257,j=Eu(e,_+10,15)+4,Z=W+Eu(e,_+5,31)+1;_+=14;for(var q=new Ul(Z),te=new Ul(19),ce=0;ce<j;++ce)te[uRe[ce]]=Eu(e,_+ce*3,7);_+=j*3;for(var Qe=IO(te),Ne=(1<<Qe)-1,je=Qb(te,Qe,1),ce=0;ce<Z;){var ve=je[Eu(e,_,Ne)];_+=ve&15;var M=ve>>4;if(M<16)q[ce++]=M;else{var We=0,ot=0;for(M==16?(ot=3+Eu(e,_,3),_+=2,We=q[ce-1]):M==17?(ot=3+Eu(e,_,7),_+=3):M==18&&(ot=11+Eu(e,_,127),_+=7);ot--;)q[ce++]=We}}var Dt=q.subarray(0,W),St=q.subarray(W);C=IO(Dt),I=IO(St),b=Qb(Dt,C,1),S=Qb(St,I,1)}else Pl(1);else{var M=gRe(_)+4,Q=e[M-4]|e[M-3]<<8,H=M+Q;if(H>a){u&&Pl(0);break}s&&p(E+Q),r.set(e.subarray(M,H),E),t.b=E+=Q,t.p=_=H*8,t.f=g;continue}if(_>R){u&&Pl(0);break}}s&&p(E+131072);for(var rr=(1<<C)-1,kt=(1<<I)-1,sr=_;;sr=_){var We=b[DO(e,_)&rr],Se=We>>4;if(_+=We&15,_>R){u&&Pl(0);break}if(We||Pl(2),Se<256)r[E++]=Se;else if(Se==256){sr=_,b=null;break}else{var _e=Se-254;if(Se>264){var ce=Se-257,Ze=Bj[ce];_e=Eu(e,_,(1<<Ze)-1)+Pj[ce],_+=Ze}var jt=S[DO(e,_)&kt],Qt=jt>>4;jt||Pl(3),_+=jt&15;var St=dRe[Qt];if(Qt>3){var Ze=Lj[Qt];St+=DO(e,_)&(1<<Ze)-1,_+=Ze}if(_>R){u&&Pl(0);break}s&&p(E+131072);var vr=E+_e;if(E<St){var wt=i-St,Be=Math.min(St,vr);for(wt+E<0&&Pl(3);E<Be;++E)r[E]=n[wt+E]}for(;E<vr;++E)r[E]=r[E-St]}}t.l=b,t.p=sr,t.b=E,t.f=g,b&&(g=1,t.m=C,t.d=S,t.n=I)}while(!g);return E!=r.length&&o?hRe(r,0,E):r.subarray(0,E)};var ARe=new Ul(0);var ERe=function(e){(e[0]!=31||e[1]!=139||e[2]!=8)&&Pl(6,"invalid gzip data");var t=e[3],r=10;t&4&&(r+=(e[10]|e[11]<<8)+2);for(var n=(t>>3&1)+(t>>4&1);n>0;n-=!e[r++]);return r+(t&2)},yRe=function(e){var t=e.length;return(e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24)>>>0};var vRe=function(e,t){return((e[0]&15)!=8||e[0]>>4>7||(e[0]<<8|e[1])%31)&&Pl(6,"invalid zlib data"),(e[1]>>5&1)==+!t&&Pl(6,"invalid zlib data: "+(e[1]&32?"need":"unexpected")+" dictionary"),(e[1]>>3&4)+2};function bRe(e,t){return xO(e,{i:2},t&&t.out,t&&t.dictionary)}function SRe(e,t){var r=ERe(e);return r+8>e.length&&Pl(6,"invalid gzip data"),xO(e.subarray(r,-8),{i:2},t&&t.out||new Ul(yRe(e)),t&&t.dictionary)}function CRe(e,t){return xO(e.subarray(vRe(e,t&&t.dictionary),-4),{i:2},t&&t.out,t&&t.dictionary)}function Gj(e,t){return e[0]==31&&e[1]==139&&e[2]==8?SRe(e,t):(e[0]&15)!=8||e[0]>>4>7||(e[0]<<8|e[1])%31?bRe(e,t):CRe(e,t)}var TRe=typeof TextDecoder<"u"&&new TextDecoder,IRe=0;try{TRe.decode(ARe,{stream:!0}),IRe=1}catch{}var Zj=Re(Ls(),1);f();var oh={LocalFileHeader:67324752,DataDescriptor:134695760,CentralFileHeader:33639248,EndOfCentralDirectory:101010256},LO={get(e){let t=Ta.get(e,6);return{signature:ui.get(e,0),compressedSize:ui.get(e,8),uncompressedSize:ui.get(e,12)}},len:16},Kj={get(e){let t=Ta.get(e,6);return{signature:ui.get(e,0),minVersion:Ta.get(e,4),dataDescriptor:!!(t&8),compressedMethod:Ta.get(e,8),compressedSize:ui.get(e,18),uncompressedSize:ui.get(e,22),filenameLength:Ta.get(e,26),extraFieldLength:Ta.get(e,28),filename:null}},len:30},Xj={get(e){return{signature:ui.get(e,0),nrOfThisDisk:Ta.get(e,4),nrOfThisDiskWithTheStart:Ta.get(e,6),nrOfEntriesOnThisDisk:Ta.get(e,8),nrOfEntriesOfSize:Ta.get(e,10),sizeOfCd:ui.get(e,12),offsetOfStartOfCd:ui.get(e,16),zipFileCommentLength:Ta.get(e,20)}},len:22},Jj={get(e){let t=Ta.get(e,8);return{signature:ui.get(e,0),minVersion:Ta.get(e,6),dataDescriptor:!!(t&8),compressedMethod:Ta.get(e,10),compressedSize:ui.get(e,20),uncompressedSize:ui.get(e,24),filenameLength:Ta.get(e,28),extraFieldLength:Ta.get(e,30),fileCommentLength:Ta.get(e,32),relativeOffsetOfLocalHeader:ui.get(e,42),filename:null}},len:46};function eW(e){let t=new Uint8Array(ui.len);return ui.put(t,0,e),t}var Np=(0,Zj.default)("tokenizer:inflate"),MO=256*1024,WRe=eW(oh.DataDescriptor),QD=eW(oh.EndOfCentralDirectory),GD=class{constructor(t){this.tokenizer=t,this.syncBuffer=new Uint8Array(MO)}async isZip(){return await this.peekSignature()===oh.LocalFileHeader}peekSignature(){return this.tokenizer.peekToken(ui)}async findEndOfCentralDirectoryLocator(){let t=this.tokenizer,r=Math.min(16*1024,t.fileInfo.size),n=this.syncBuffer.subarray(0,r);await this.tokenizer.readBuffer(n,{position:t.fileInfo.size-r});for(let a=n.length-4;a>=0;a--)if(n[a]===QD[0]&&n[a+1]===QD[1]&&n[a+2]===QD[2]&&n[a+3]===QD[3])return t.fileInfo.size-r+a;return-1}async readCentralDirectory(){if(!this.tokenizer.supportsRandomAccess()){Np("Cannot reading central-directory without random-read support");return}Np("Reading central-directory...");let t=this.tokenizer.position,r=await this.findEndOfCentralDirectoryLocator();if(r>0){Np("Central-directory 32-bit signature found");let n=await this.tokenizer.readToken(Xj,r),a=[];this.tokenizer.setPosition(n.offsetOfStartOfCd);for(let i=0;i<n.nrOfEntriesOfSize;++i){let o=await this.tokenizer.readToken(Jj);if(o.signature!==oh.CentralFileHeader)throw new Error("Expected Central-File-Header signature");o.filename=await this.tokenizer.readToken(new ml(o.filenameLength,"utf-8")),await this.tokenizer.ignore(o.extraFieldLength),await this.tokenizer.ignore(o.fileCommentLength),a.push(o),Np(`Add central-directory file-entry: n=${i+1}/${a.length}: filename=${a[i].filename}`)}return this.tokenizer.setPosition(t),a}this.tokenizer.setPosition(t)}async unzip(t){let r=await this.readCentralDirectory();if(r)return this.iterateOverCentralDirectory(r,t);let n=!1;do{let a=await this.readLocalFileHeader();if(!a)break;let i=t(a);n=!!i.stop;let o;if(await this.tokenizer.ignore(a.extraFieldLength),a.dataDescriptor&&a.compressedSize===0){let s=[],u=MO;Np("Compressed-file-size unknown, scanning for next data-descriptor-signature....");let p=-1;for(;p<0&&u===MO;){u=await this.tokenizer.peekBuffer(this.syncBuffer,{mayBeLess:!0}),p=KRe(this.syncBuffer.subarray(0,u),WRe);let g=p>=0?p:u;if(i.handler){let _=new Uint8Array(g);await this.tokenizer.readBuffer(_),s.push(_)}else await this.tokenizer.ignore(g)}Np(`Found data-descriptor-signature at pos=${this.tokenizer.position}`),i.handler&&await this.inflate(a,XRe(s),i.handler)}else i.handler?(Np(`Reading compressed-file-data: ${a.compressedSize} bytes`),o=new Uint8Array(a.compressedSize),await this.tokenizer.readBuffer(o),await this.inflate(a,o,i.handler)):(Np(`Ignoring compressed-file-data: ${a.compressedSize} bytes`),await this.tokenizer.ignore(a.compressedSize));if(Np(`Reading data-descriptor at pos=${this.tokenizer.position}`),a.dataDescriptor&&(await this.tokenizer.readToken(LO)).signature!==134695760)throw new Error(`Expected data-descriptor-signature at position ${this.tokenizer.position-LO.len}`)}while(!n)}async iterateOverCentralDirectory(t,r){for(let n of t){let a=r(n);if(a.handler){this.tokenizer.setPosition(n.relativeOffsetOfLocalHeader);let i=await this.readLocalFileHeader();if(i){await this.tokenizer.ignore(i.extraFieldLength);let o=new Uint8Array(n.compressedSize);await this.tokenizer.readBuffer(o),await this.inflate(i,o,a.handler)}}if(a.stop)break}}inflate(t,r,n){if(t.compressedMethod===0)return n(r);Np(`Decompress filename=${t.filename}, compressed-size=${r.length}`);let a=Gj(r);return n(a)}async readLocalFileHeader(){let t=await this.tokenizer.peekToken(ui);if(t===oh.LocalFileHeader){let r=await this.tokenizer.readToken(Kj);return r.filename=await this.tokenizer.readToken(new ml(r.filenameLength,"utf-8")),r}if(t===oh.CentralFileHeader)return!1;throw t===3759263696?new Error("Encrypted ZIP"):new Error("Unexpected signature")}};function KRe(e,t){let r=e.length,n=t.length;if(n>r)return-1;for(let a=0;a<=r-n;a++){let i=!0;for(let o=0;o<n;o++)if(e[a+o]!==t[o]){i=!1;break}if(i)return a}return-1}function XRe(e){let t=e.reduce((a,i)=>a+i.length,0),r=new Uint8Array(t),n=0;for(let a of e)r.set(a,n),n+=a.length;return r}f();var jCt={utf8:new globalThis.TextDecoder("utf8")};var WCt=new globalThis.TextEncoder;var KCt=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function FO(e){let{byteLength:t}=e;if(t===6)return e.getUint16(0)*2**32+e.getUint32(2);if(t===5)return e.getUint8(0)*2**32+e.getUint32(1);if(t===4)return e.getUint32(0);if(t===3)return e.getUint8(0)*2**16+e.getUint16(1);if(t===2)return e.getUint16(0);if(t===1)return e.getUint8(0)}function JRe(e,t){let r=e.length,n=t.length;if(n===0||n>r)return-1;let a=r-n;for(let i=0;i<=a;i++){let o=!0;for(let s=0;s<n;s++)if(e[i+s]!==t[s]){o=!1;break}if(o)return i}return-1}function tW(e,t){return JRe(e,t)!==-1}f();function rW(e){return[...e].map(t=>t.charCodeAt(0))}function nW(e,t=0){let r=Number.parseInt(new ml(6).get(e,148).replace(/\0.*$/,"").trim(),8);if(Number.isNaN(r))return!1;let n=8*32;for(let a=t;a<t+148;a++)n+=e[a];for(let a=t+156;a<t+512;a++)n+=e[a];return r===n}var aW={get:(e,t)=>e[t+3]&127|e[t+2]<<7|e[t+1]<<14|e[t]<<21,len:4};f();var iW=["jpg","png","apng","gif","webp","flif","xcf","cr2","cr3","orf","arw","dng","nef","rw2","raf","tif","bmp","icns","jxr","psd","indd","zip","tar","rar","gz","bz2","7z","dmg","mp4","mid","mkv","webm","mov","avi","mpg","mp2","mp3","m4a","oga","ogg","ogv","opus","flac","wav","spx","amr","pdf","epub","elf","macho","exe","swf","rtf","wasm","woff","woff2","eot","ttf","otf","ttc","ico","flv","ps","xz","sqlite","nes","crx","xpi","cab","deb","ar","rpm","Z","lz","cfb","mxf","mts","blend","bpg","docx","pptx","xlsx","3gp","3g2","j2c","jp2","jpm","jpx","mj2","aif","qcp","odt","ods","odp","xml","mobi","heic","cur","ktx","ape","wv","dcm","ics","glb","pcap","dsf","lnk","alias","voc","ac3","m4v","m4p","m4b","f4v","f4p","f4b","f4a","mie","asf","ogm","ogx","mpc","arrow","shp","aac","mp1","it","s3m","xm","ai","skp","avif","eps","lzh","pgp","asar","stl","chm","3mf","zst","jxl","vcf","jls","pst","dwg","parquet","class","arj","cpio","ace","avro","icc","fbx","vsdx","vtt","apk","drc","lz4","potx","xltx","dotx","xltm","ott","ots","otp","odg","otg","xlsm","docm","dotm","potm","pptm","jar","rm"],oW=["image/jpeg","image/png","image/gif","image/webp","image/flif","image/x-xcf","image/x-canon-cr2","image/x-canon-cr3","image/tiff","image/bmp","image/vnd.ms-photo","image/vnd.adobe.photoshop","application/x-indesign","application/epub+zip","application/x-xpinstall","application/vnd.oasis.opendocument.text","application/vnd.oasis.opendocument.spreadsheet","application/vnd.oasis.opendocument.presentation","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/zip","application/x-tar","application/x-rar-compressed","application/gzip","application/x-bzip2","application/x-7z-compressed","application/x-apple-diskimage","application/x-apache-arrow","video/mp4","audio/midi","video/x-matroska","video/webm","video/quicktime","video/vnd.avi","audio/wav","audio/qcelp","audio/x-ms-asf","video/x-ms-asf","application/vnd.ms-asf","video/mpeg","video/3gpp","audio/mpeg","audio/mp4","video/ogg","audio/ogg","audio/ogg; codecs=opus","application/ogg","audio/x-flac","audio/ape","audio/wavpack","audio/amr","application/pdf","application/x-elf","application/x-mach-binary","application/x-msdownload","application/x-shockwave-flash","application/rtf","application/wasm","font/woff","font/woff2","application/vnd.ms-fontobject","font/ttf","font/otf","font/collection","image/x-icon","video/x-flv","application/postscript","application/eps","application/x-xz","application/x-sqlite3","application/x-nintendo-nes-rom","application/x-google-chrome-extension","application/vnd.ms-cab-compressed","application/x-deb","application/x-unix-archive","application/x-rpm","application/x-compress","application/x-lzip","application/x-cfb","application/x-mie","application/mxf","video/mp2t","application/x-blender","image/bpg","image/j2c","image/jp2","image/jpx","image/jpm","image/mj2","audio/aiff","application/xml","application/x-mobipocket-ebook","image/heif","image/heif-sequence","image/heic","image/heic-sequence","image/icns","image/ktx","application/dicom","audio/x-musepack","text/calendar","text/vcard","text/vtt","model/gltf-binary","application/vnd.tcpdump.pcap","audio/x-dsf","application/x.ms.shortcut","application/x.apple.alias","audio/x-voc","audio/vnd.dolby.dd-raw","audio/x-m4a","image/apng","image/x-olympus-orf","image/x-sony-arw","image/x-adobe-dng","image/x-nikon-nef","image/x-panasonic-rw2","image/x-fujifilm-raf","video/x-m4v","video/3gpp2","application/x-esri-shape","audio/aac","audio/x-it","audio/x-s3m","audio/x-xm","video/MP1S","video/MP2P","application/vnd.sketchup.skp","image/avif","application/x-lzh-compressed","application/pgp-encrypted","application/x-asar","model/stl","application/vnd.ms-htmlhelp","model/3mf","image/jxl","application/zstd","image/jls","application/vnd.ms-outlook","image/vnd.dwg","application/x-parquet","application/java-vm","application/x-arj","application/x-cpio","application/x-ace-compressed","application/avro","application/vnd.iccprofile","application/x.autodesk.fbx","application/vnd.visio","application/vnd.android.package-archive","application/vnd.google.draco","application/x-lz4","application/vnd.openxmlformats-officedocument.presentationml.template","application/vnd.openxmlformats-officedocument.spreadsheetml.template","application/vnd.openxmlformats-officedocument.wordprocessingml.template","application/vnd.ms-excel.template.macroenabled.12","application/vnd.oasis.opendocument.text-template","application/vnd.oasis.opendocument.spreadsheet-template","application/vnd.oasis.opendocument.presentation-template","application/vnd.oasis.opendocument.graphics","application/vnd.oasis.opendocument.graphics-template","application/vnd.ms-excel.sheet.macroEnabled.12","application/vnd.ms-word.document.macroEnabled.12","application/vnd.ms-word.template.macroEnabled.12","application/vnd.ms-powerpoint.template.macroEnabled.12","application/vnd.ms-powerpoint.presentation.macroEnabled.12","application/java-archive","application/vnd.rn-realmedia"];var PO=4100;async function GO(e){return new QO().fromBuffer(e)}function UO(e){switch(e){case"application/epub+zip":return{ext:"epub",mime:"application/epub+zip"};case"application/vnd.oasis.opendocument.text":return{ext:"odt",mime:"application/vnd.oasis.opendocument.text"};case"application/vnd.oasis.opendocument.text-template":return{ext:"ott",mime:"application/vnd.oasis.opendocument.text-template"};case"application/vnd.oasis.opendocument.spreadsheet":return{ext:"ods",mime:"application/vnd.oasis.opendocument.spreadsheet"};case"application/vnd.oasis.opendocument.spreadsheet-template":return{ext:"ots",mime:"application/vnd.oasis.opendocument.spreadsheet-template"};case"application/vnd.oasis.opendocument.presentation":return{ext:"odp",mime:"application/vnd.oasis.opendocument.presentation"};case"application/vnd.oasis.opendocument.presentation-template":return{ext:"otp",mime:"application/vnd.oasis.opendocument.presentation-template"};case"application/vnd.oasis.opendocument.graphics":return{ext:"odg",mime:"application/vnd.oasis.opendocument.graphics"};case"application/vnd.oasis.opendocument.graphics-template":return{ext:"otg",mime:"application/vnd.oasis.opendocument.graphics-template"};case"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":return{ext:"xlsx",mime:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"};case"application/vnd.ms-excel.sheet.macroEnabled":return{ext:"xlsm",mime:"application/vnd.ms-excel.sheet.macroEnabled.12"};case"application/vnd.openxmlformats-officedocument.spreadsheetml.template":return{ext:"xltx",mime:"application/vnd.openxmlformats-officedocument.spreadsheetml.template"};case"application/vnd.ms-excel.template.macroEnabled":return{ext:"xltm",mime:"application/vnd.ms-excel.template.macroenabled.12"};case"application/vnd.openxmlformats-officedocument.wordprocessingml.document":return{ext:"docx",mime:"application/vnd.openxmlformats-officedocument.wordprocessingml.document"};case"application/vnd.ms-word.document.macroEnabled":return{ext:"docm",mime:"application/vnd.ms-word.document.macroEnabled.12"};case"application/vnd.openxmlformats-officedocument.wordprocessingml.template":return{ext:"dotx",mime:"application/vnd.openxmlformats-officedocument.wordprocessingml.template"};case"application/vnd.ms-word.template.macroEnabledTemplate":return{ext:"dotm",mime:"application/vnd.ms-word.template.macroEnabled.12"};case"application/vnd.openxmlformats-officedocument.presentationml.template":return{ext:"potx",mime:"application/vnd.openxmlformats-officedocument.presentationml.template"};case"application/vnd.ms-powerpoint.template.macroEnabled":return{ext:"potm",mime:"application/vnd.ms-powerpoint.template.macroEnabled.12"};case"application/vnd.openxmlformats-officedocument.presentationml.presentation":return{ext:"pptx",mime:"application/vnd.openxmlformats-officedocument.presentationml.presentation"};case"application/vnd.ms-powerpoint.presentation.macroEnabled":return{ext:"pptm",mime:"application/vnd.ms-powerpoint.presentation.macroEnabled.12"};case"application/vnd.ms-visio.drawing":return{ext:"vsdx",mime:"application/vnd.visio"};case"application/vnd.ms-package.3dmanufacturing-3dmodel+xml":return{ext:"3mf",mime:"model/3mf"};default:}}function Op(e,t,r){r={offset:0,...r};for(let[n,a]of t.entries())if(r.mask){if(a!==(r.mask[n]&e[n+r.offset]))return!1}else if(a!==e[n+r.offset])return!1;return!0}var QO=class{constructor(t){this.detectors=[...t?.customDetectors??[],{id:"core",detect:this.detectConfident},{id:"core.imprecise",detect:this.detectImprecise}],this.tokenizerOptions={abortSignal:t?.signal}}async fromTokenizer(t){let r=t.position;for(let n of this.detectors){let a=await n.detect(t);if(a)return a;if(r!==t.position)return}}async fromBuffer(t){if(!(t instanceof Uint8Array||t instanceof ArrayBuffer))throw new TypeError(`Expected the \`input\` argument to be of type \`Uint8Array\` or \`ArrayBuffer\`, got \`${typeof t}\``);let r=t instanceof Uint8Array?t:new Uint8Array(t);if(r?.length>1)return this.fromTokenizer(Dj(r,this.tokenizerOptions))}async fromBlob(t){return this.fromStream(t.stream())}async fromStream(t){let r=await CO(t,this.tokenizerOptions);try{return await this.fromTokenizer(r)}finally{await r.close()}}async toDetectionStream(t,r){let{sampleSize:n=PO}=r,a,i,o=t.getReader({mode:"byob"});try{let{value:p,done:g}=await o.read(new Uint8Array(n));if(i=p,!g&&p)try{a=await this.fromBuffer(p.slice(0,n))}catch(_){if(!(_ instanceof ea))throw _;a=void 0}i=p}finally{o.releaseLock()}let s=new TransformStream({async start(p){p.enqueue(i)},transform(p,g){g.enqueue(p)}}),u=t.pipeThrough(s);return u.fileType=a,u}check(t,r){return Op(this.buffer,t,r)}checkString(t,r){return this.check(rW(t),r)}detectConfident=async t=>{if(this.buffer=new Uint8Array(PO),t.fileInfo.size===void 0&&(t.fileInfo.size=Number.MAX_SAFE_INTEGER),this.tokenizer=t,await t.peekBuffer(this.buffer,{length:12,mayBeLess:!0}),this.check([66,77]))return{ext:"bmp",mime:"image/bmp"};if(this.check([11,119]))return{ext:"ac3",mime:"audio/vnd.dolby.dd-raw"};if(this.check([120,1]))return{ext:"dmg",mime:"application/x-apple-diskimage"};if(this.check([77,90]))return{ext:"exe",mime:"application/x-msdownload"};if(this.check([37,33]))return await t.peekBuffer(this.buffer,{length:24,mayBeLess:!0}),this.checkString("PS-Adobe-",{offset:2})&&this.checkString(" EPSF-",{offset:14})?{ext:"eps",mime:"application/eps"}:{ext:"ps",mime:"application/postscript"};if(this.check([31,160])||this.check([31,157]))return{ext:"Z",mime:"application/x-compress"};if(this.check([199,113]))return{ext:"cpio",mime:"application/x-cpio"};if(this.check([96,234]))return{ext:"arj",mime:"application/x-arj"};if(this.check([239,187,191]))return this.tokenizer.ignore(3),this.detectConfident(t);if(this.check([71,73,70]))return{ext:"gif",mime:"image/gif"};if(this.check([73,73,188]))return{ext:"jxr",mime:"image/vnd.ms-photo"};if(this.check([31,139,8]))return{ext:"gz",mime:"application/gzip"};if(this.check([66,90,104]))return{ext:"bz2",mime:"application/x-bzip2"};if(this.checkString("ID3")){await t.ignore(6);let r=await t.readToken(aW);return t.position+r>t.fileInfo.size?{ext:"mp3",mime:"audio/mpeg"}:(await t.ignore(r),this.fromTokenizer(t))}if(this.checkString("MP+"))return{ext:"mpc",mime:"audio/x-musepack"};if((this.buffer[0]===67||this.buffer[0]===70)&&this.check([87,83],{offset:1}))return{ext:"swf",mime:"application/x-shockwave-flash"};if(this.check([255,216,255]))return this.check([247],{offset:3})?{ext:"jls",mime:"image/jls"}:{ext:"jpg",mime:"image/jpeg"};if(this.check([79,98,106,1]))return{ext:"avro",mime:"application/avro"};if(this.checkString("FLIF"))return{ext:"flif",mime:"image/flif"};if(this.checkString("8BPS"))return{ext:"psd",mime:"image/vnd.adobe.photoshop"};if(this.checkString("MPCK"))return{ext:"mpc",mime:"audio/x-musepack"};if(this.checkString("FORM"))return{ext:"aif",mime:"audio/aiff"};if(this.checkString("icns",{offset:0}))return{ext:"icns",mime:"image/icns"};if(this.check([80,75,3,4])){let r;return await new GD(t).unzip(n=>{switch(n.filename){case"META-INF/mozilla.rsa":return r={ext:"xpi",mime:"application/x-xpinstall"},{stop:!0};case"META-INF/MANIFEST.MF":return r={ext:"jar",mime:"application/java-archive"},{stop:!0};case"mimetype":return{async handler(a){let i=new TextDecoder("utf-8").decode(a).trim();r=UO(i)},stop:!0};case"[Content_Types].xml":return{async handler(a){let i=new TextDecoder("utf-8").decode(a),o=i.indexOf('.main+xml"');if(o===-1){let s="application/vnd.ms-package.3dmanufacturing-3dmodel+xml";i.includes(`ContentType="${s}"`)&&(r=UO(s))}else{i=i.slice(0,Math.max(0,o));let s=i.lastIndexOf('"'),u=i.slice(Math.max(0,s+1));r=UO(u)}},stop:!0};default:return/classes\d*\.dex/.test(n.filename)?(r={ext:"apk",mime:"application/vnd.android.package-archive"},{stop:!0}):{}}}),r??{ext:"zip",mime:"application/zip"}}if(this.checkString("OggS")){await t.ignore(28);let r=new Uint8Array(8);return await t.readBuffer(r),Op(r,[79,112,117,115,72,101,97,100])?{ext:"opus",mime:"audio/ogg; codecs=opus"}:Op(r,[128,116,104,101,111,114,97])?{ext:"ogv",mime:"video/ogg"}:Op(r,[1,118,105,100,101,111,0])?{ext:"ogm",mime:"video/ogg"}:Op(r,[127,70,76,65,67])?{ext:"oga",mime:"audio/ogg"}:Op(r,[83,112,101,101,120,32,32])?{ext:"spx",mime:"audio/ogg"}:Op(r,[1,118,111,114,98,105,115])?{ext:"ogg",mime:"audio/ogg"}:{ext:"ogx",mime:"application/ogg"}}if(this.check([80,75])&&(this.buffer[2]===3||this.buffer[2]===5||this.buffer[2]===7)&&(this.buffer[3]===4||this.buffer[3]===6||this.buffer[3]===8))return{ext:"zip",mime:"application/zip"};if(this.checkString("MThd"))return{ext:"mid",mime:"audio/midi"};if(this.checkString("wOFF")&&(this.check([0,1,0,0],{offset:4})||this.checkString("OTTO",{offset:4})))return{ext:"woff",mime:"font/woff"};if(this.checkString("wOF2")&&(this.check([0,1,0,0],{offset:4})||this.checkString("OTTO",{offset:4})))return{ext:"woff2",mime:"font/woff2"};if(this.check([212,195,178,161])||this.check([161,178,195,212]))return{ext:"pcap",mime:"application/vnd.tcpdump.pcap"};if(this.checkString("DSD "))return{ext:"dsf",mime:"audio/x-dsf"};if(this.checkString("LZIP"))return{ext:"lz",mime:"application/x-lzip"};if(this.checkString("fLaC"))return{ext:"flac",mime:"audio/x-flac"};if(this.check([66,80,71,251]))return{ext:"bpg",mime:"image/bpg"};if(this.checkString("wvpk"))return{ext:"wv",mime:"audio/wavpack"};if(this.checkString("%PDF")){try{if(await t.ignore(1350)===1350){let a=new Uint8Array(Math.min(10485760,t.fileInfo.size-1350));if(await t.readBuffer(a,{mayBeLess:!0}),tW(a,new TextEncoder().encode("AIPrivateData")))return{ext:"ai",mime:"application/postscript"}}}catch(r){if(!(r instanceof ea))throw r}return{ext:"pdf",mime:"application/pdf"}}if(this.check([0,97,115,109]))return{ext:"wasm",mime:"application/wasm"};if(this.check([73,73])){let r=await this.readTiffHeader(!1);if(r)return r}if(this.check([77,77])){let r=await this.readTiffHeader(!0);if(r)return r}if(this.checkString("MAC "))return{ext:"ape",mime:"audio/ape"};if(this.check([26,69,223,163])){async function r(){let s=await t.peekNumber(Rj),u=128,p=0;for(;(s&u)===0&&u!==0;)++p,u>>=1;let g=new Uint8Array(p+1);return await t.readBuffer(g),g}async function n(){let s=await r(),u=await r();u[0]^=128>>u.length-1;let p=Math.min(6,u.length),g=new DataView(s.buffer),_=new DataView(u.buffer,u.length-p,p);return{id:FO(g),len:FO(_)}}async function a(s){for(;s>0;){let u=await n();if(u.id===17026)return(await t.readToken(new ml(u.len))).replaceAll(/\00.*$/g,"");await t.ignore(u.len),--s}}let i=await n();switch(await a(i.len)){case"webm":return{ext:"webm",mime:"video/webm"};case"matroska":return{ext:"mkv",mime:"video/x-matroska"};default:return}}if(this.checkString("SQLi"))return{ext:"sqlite",mime:"application/x-sqlite3"};if(this.check([78,69,83,26]))return{ext:"nes",mime:"application/x-nintendo-nes-rom"};if(this.checkString("Cr24"))return{ext:"crx",mime:"application/x-google-chrome-extension"};if(this.checkString("MSCF")||this.checkString("ISc("))return{ext:"cab",mime:"application/vnd.ms-cab-compressed"};if(this.check([237,171,238,219]))return{ext:"rpm",mime:"application/x-rpm"};if(this.check([197,208,211,198]))return{ext:"eps",mime:"application/eps"};if(this.check([40,181,47,253]))return{ext:"zst",mime:"application/zstd"};if(this.check([127,69,76,70]))return{ext:"elf",mime:"application/x-elf"};if(this.check([33,66,68,78]))return{ext:"pst",mime:"application/vnd.ms-outlook"};if(this.checkString("PAR1"))return{ext:"parquet",mime:"application/x-parquet"};if(this.checkString("ttcf"))return{ext:"ttc",mime:"font/collection"};if(this.check([207,250,237,254]))return{ext:"macho",mime:"application/x-mach-binary"};if(this.check([4,34,77,24]))return{ext:"lz4",mime:"application/x-lz4"};if(this.check([79,84,84,79,0]))return{ext:"otf",mime:"font/otf"};if(this.checkString("#!AMR"))return{ext:"amr",mime:"audio/amr"};if(this.checkString("{\\rtf"))return{ext:"rtf",mime:"application/rtf"};if(this.check([70,76,86,1]))return{ext:"flv",mime:"video/x-flv"};if(this.checkString("IMPM"))return{ext:"it",mime:"audio/x-it"};if(this.checkString("-lh0-",{offset:2})||this.checkString("-lh1-",{offset:2})||this.checkString("-lh2-",{offset:2})||this.checkString("-lh3-",{offset:2})||this.checkString("-lh4-",{offset:2})||this.checkString("-lh5-",{offset:2})||this.checkString("-lh6-",{offset:2})||this.checkString("-lh7-",{offset:2})||this.checkString("-lzs-",{offset:2})||this.checkString("-lz4-",{offset:2})||this.checkString("-lz5-",{offset:2})||this.checkString("-lhd-",{offset:2}))return{ext:"lzh",mime:"application/x-lzh-compressed"};if(this.check([0,0,1,186])){if(this.check([33],{offset:4,mask:[241]}))return{ext:"mpg",mime:"video/MP1S"};if(this.check([68],{offset:4,mask:[196]}))return{ext:"mpg",mime:"video/MP2P"}}if(this.checkString("ITSF"))return{ext:"chm",mime:"application/vnd.ms-htmlhelp"};if(this.check([202,254,186,190]))return{ext:"class",mime:"application/java-vm"};if(this.checkString(".RMF"))return{ext:"rm",mime:"application/vnd.rn-realmedia"};if(this.checkString("DRACO"))return{ext:"drc",mime:"application/vnd.google.draco"};if(this.check([253,55,122,88,90,0]))return{ext:"xz",mime:"application/x-xz"};if(this.checkString("<?xml "))return{ext:"xml",mime:"application/xml"};if(this.check([55,122,188,175,39,28]))return{ext:"7z",mime:"application/x-7z-compressed"};if(this.check([82,97,114,33,26,7])&&(this.buffer[6]===0||this.buffer[6]===1))return{ext:"rar",mime:"application/x-rar-compressed"};if(this.checkString("solid "))return{ext:"stl",mime:"model/stl"};if(this.checkString("AC")){let r=new ml(4,"latin1").get(this.buffer,2);if(r.match("^d*")&&r>=1e3&&r<=1050)return{ext:"dwg",mime:"image/vnd.dwg"}}if(this.checkString("070707"))return{ext:"cpio",mime:"application/x-cpio"};if(this.checkString("BLENDER"))return{ext:"blend",mime:"application/x-blender"};if(this.checkString("!<arch>"))return await t.ignore(8),await t.readToken(new ml(13,"ascii"))==="debian-binary"?{ext:"deb",mime:"application/x-deb"}:{ext:"ar",mime:"application/x-unix-archive"};if(this.checkString("WEBVTT")&&[`
345
- `,"\r"," "," ","\0"].some(r=>this.checkString(r,{offset:6})))return{ext:"vtt",mime:"text/vtt"};if(this.check([137,80,78,71,13,10,26,10])){await t.ignore(8);async function r(){return{length:await t.readToken(Oj),type:await t.readToken(new ml(4,"latin1"))}}do{let n=await r();if(n.length<0)return;switch(n.type){case"IDAT":return{ext:"png",mime:"image/png"};case"acTL":return{ext:"apng",mime:"image/apng"};default:await t.ignore(n.length+4)}}while(t.position+8<t.fileInfo.size);return{ext:"png",mime:"image/png"}}if(this.check([65,82,82,79,87,49,0,0]))return{ext:"arrow",mime:"application/x-apache-arrow"};if(this.check([103,108,84,70,2,0,0,0]))return{ext:"glb",mime:"model/gltf-binary"};if(this.check([102,114,101,101],{offset:4})||this.check([109,100,97,116],{offset:4})||this.check([109,111,111,118],{offset:4})||this.check([119,105,100,101],{offset:4}))return{ext:"mov",mime:"video/quicktime"};if(this.check([73,73,82,79,8,0,0,0,24]))return{ext:"orf",mime:"image/x-olympus-orf"};if(this.checkString("gimp xcf "))return{ext:"xcf",mime:"image/x-xcf"};if(this.checkString("ftyp",{offset:4})&&(this.buffer[8]&96)!==0){let r=new ml(4,"latin1").get(this.buffer,8).replace("\0"," ").trim();switch(r){case"avif":case"avis":return{ext:"avif",mime:"image/avif"};case"mif1":return{ext:"heic",mime:"image/heif"};case"msf1":return{ext:"heic",mime:"image/heif-sequence"};case"heic":case"heix":return{ext:"heic",mime:"image/heic"};case"hevc":case"hevx":return{ext:"heic",mime:"image/heic-sequence"};case"qt":return{ext:"mov",mime:"video/quicktime"};case"M4V":case"M4VH":case"M4VP":return{ext:"m4v",mime:"video/x-m4v"};case"M4P":return{ext:"m4p",mime:"video/mp4"};case"M4B":return{ext:"m4b",mime:"audio/mp4"};case"M4A":return{ext:"m4a",mime:"audio/x-m4a"};case"F4V":return{ext:"f4v",mime:"video/mp4"};case"F4P":return{ext:"f4p",mime:"video/mp4"};case"F4A":return{ext:"f4a",mime:"audio/mp4"};case"F4B":return{ext:"f4b",mime:"audio/mp4"};case"crx":return{ext:"cr3",mime:"image/x-canon-cr3"};default:return r.startsWith("3g")?r.startsWith("3g2")?{ext:"3g2",mime:"video/3gpp2"}:{ext:"3gp",mime:"video/3gpp"}:{ext:"mp4",mime:"video/mp4"}}}if(this.check([82,73,70,70])){if(this.checkString("WEBP",{offset:8}))return{ext:"webp",mime:"image/webp"};if(this.check([65,86,73],{offset:8}))return{ext:"avi",mime:"video/vnd.avi"};if(this.check([87,65,86,69],{offset:8}))return{ext:"wav",mime:"audio/wav"};if(this.check([81,76,67,77],{offset:8}))return{ext:"qcp",mime:"audio/qcelp"}}if(this.check([73,73,85,0,24,0,0,0,136,231,116,216]))return{ext:"rw2",mime:"image/x-panasonic-rw2"};if(this.check([48,38,178,117,142,102,207,17,166,217])){async function r(){let n=new Uint8Array(16);return await t.readBuffer(n),{id:n,size:Number(await t.readToken(kj))}}for(await t.ignore(30);t.position+24<t.fileInfo.size;){let n=await r(),a=n.size-24;if(Op(n.id,[145,7,220,183,183,169,207,17,142,230,0,192,12,32,83,101])){let i=new Uint8Array(16);if(a-=await t.readBuffer(i),Op(i,[64,158,105,248,77,91,207,17,168,253,0,128,95,92,68,43]))return{ext:"asf",mime:"audio/x-ms-asf"};if(Op(i,[192,239,25,188,77,91,207,17,168,253,0,128,95,92,68,43]))return{ext:"asf",mime:"video/x-ms-asf"};break}await t.ignore(a)}return{ext:"asf",mime:"application/vnd.ms-asf"}}if(this.check([171,75,84,88,32,49,49,187,13,10,26,10]))return{ext:"ktx",mime:"image/ktx"};if((this.check([126,16,4])||this.check([126,24,4]))&&this.check([48,77,73,69],{offset:4}))return{ext:"mie",mime:"application/x-mie"};if(this.check([39,10,0,0,0,0,0,0,0,0,0,0],{offset:2}))return{ext:"shp",mime:"application/x-esri-shape"};if(this.check([255,79,255,81]))return{ext:"j2c",mime:"image/j2c"};if(this.check([0,0,0,12,106,80,32,32,13,10,135,10]))switch(await t.ignore(20),await t.readToken(new ml(4,"ascii"))){case"jp2 ":return{ext:"jp2",mime:"image/jp2"};case"jpx ":return{ext:"jpx",mime:"image/jpx"};case"jpm ":return{ext:"jpm",mime:"image/jpm"};case"mjp2":return{ext:"mj2",mime:"image/mj2"};default:return}if(this.check([255,10])||this.check([0,0,0,12,74,88,76,32,13,10,135,10]))return{ext:"jxl",mime:"image/jxl"};if(this.check([254,255]))return this.check([0,60,0,63,0,120,0,109,0,108],{offset:2})?{ext:"xml",mime:"application/xml"}:void 0;if(this.check([208,207,17,224,161,177,26,225]))return{ext:"cfb",mime:"application/x-cfb"};if(await t.peekBuffer(this.buffer,{length:Math.min(256,t.fileInfo.size),mayBeLess:!0}),this.check([97,99,115,112],{offset:36}))return{ext:"icc",mime:"application/vnd.iccprofile"};if(this.checkString("**ACE",{offset:7})&&this.checkString("**",{offset:12}))return{ext:"ace",mime:"application/x-ace-compressed"};if(this.checkString("BEGIN:")){if(this.checkString("VCARD",{offset:6}))return{ext:"vcf",mime:"text/vcard"};if(this.checkString("VCALENDAR",{offset:6}))return{ext:"ics",mime:"text/calendar"}}if(this.checkString("FUJIFILMCCD-RAW"))return{ext:"raf",mime:"image/x-fujifilm-raf"};if(this.checkString("Extended Module:"))return{ext:"xm",mime:"audio/x-xm"};if(this.checkString("Creative Voice File"))return{ext:"voc",mime:"audio/x-voc"};if(this.check([4,0,0,0])&&this.buffer.length>=16){let r=new DataView(this.buffer.buffer).getUint32(12,!0);if(r>12&&this.buffer.length>=r+16)try{let n=new TextDecoder().decode(this.buffer.slice(16,r+16));if(JSON.parse(n).files)return{ext:"asar",mime:"application/x-asar"}}catch{}}if(this.check([6,14,43,52,2,5,1,1,13,1,2,1,1,2]))return{ext:"mxf",mime:"application/mxf"};if(this.checkString("SCRM",{offset:44}))return{ext:"s3m",mime:"audio/x-s3m"};if(this.check([71])&&this.check([71],{offset:188}))return{ext:"mts",mime:"video/mp2t"};if(this.check([71],{offset:4})&&this.check([71],{offset:196}))return{ext:"mts",mime:"video/mp2t"};if(this.check([66,79,79,75,77,79,66,73],{offset:60}))return{ext:"mobi",mime:"application/x-mobipocket-ebook"};if(this.check([68,73,67,77],{offset:128}))return{ext:"dcm",mime:"application/dicom"};if(this.check([76,0,0,0,1,20,2,0,0,0,0,0,192,0,0,0,0,0,0,70]))return{ext:"lnk",mime:"application/x.ms.shortcut"};if(this.check([98,111,111,107,0,0,0,0,109,97,114,107,0,0,0,0]))return{ext:"alias",mime:"application/x.apple.alias"};if(this.checkString("Kaydara FBX Binary \0"))return{ext:"fbx",mime:"application/x.autodesk.fbx"};if(this.check([76,80],{offset:34})&&(this.check([0,0,1],{offset:8})||this.check([1,0,2],{offset:8})||this.check([2,0,2],{offset:8})))return{ext:"eot",mime:"application/vnd.ms-fontobject"};if(this.check([6,6,237,245,216,29,70,229,189,49,239,231,254,116,183,29]))return{ext:"indd",mime:"application/x-indesign"};if(await t.peekBuffer(this.buffer,{length:Math.min(512,t.fileInfo.size),mayBeLess:!0}),nW(this.buffer))return{ext:"tar",mime:"application/x-tar"};if(this.check([255,254]))return this.check([60,0,63,0,120,0,109,0,108,0],{offset:2})?{ext:"xml",mime:"application/xml"}:this.check([255,14,83,0,107,0,101,0,116,0,99,0,104,0,85,0,112,0,32,0,77,0,111,0,100,0,101,0,108,0],{offset:2})?{ext:"skp",mime:"application/vnd.sketchup.skp"}:void 0;if(this.checkString("-----BEGIN PGP MESSAGE-----"))return{ext:"pgp",mime:"application/pgp-encrypted"}};detectImprecise=async t=>{if(this.buffer=new Uint8Array(PO),await t.peekBuffer(this.buffer,{length:Math.min(8,t.fileInfo.size),mayBeLess:!0}),this.check([0,0,1,186])||this.check([0,0,1,179]))return{ext:"mpg",mime:"video/mpeg"};if(this.check([0,1,0,0,0]))return{ext:"ttf",mime:"font/ttf"};if(this.check([0,0,1,0]))return{ext:"ico",mime:"image/x-icon"};if(this.check([0,0,2,0]))return{ext:"cur",mime:"image/x-icon"};if(this.buffer.length>=2&&this.check([255,224],{offset:0,mask:[255,224]})){if(this.check([16],{offset:1,mask:[22]}))return this.check([8],{offset:1,mask:[8]})?{ext:"aac",mime:"audio/aac"}:{ext:"aac",mime:"audio/aac"};if(this.check([2],{offset:1,mask:[6]}))return{ext:"mp3",mime:"audio/mpeg"};if(this.check([4],{offset:1,mask:[6]}))return{ext:"mp2",mime:"audio/mpeg"};if(this.check([6],{offset:1,mask:[6]}))return{ext:"mp1",mime:"audio/mpeg"}}};async readTiffTag(t){let r=await this.tokenizer.readToken(t?Q0:Ta);switch(this.tokenizer.ignore(10),r){case 50341:return{ext:"arw",mime:"image/x-sony-arw"};case 50706:return{ext:"dng",mime:"image/x-adobe-dng"};default:}}async readTiffIFD(t){let r=await this.tokenizer.readToken(t?Q0:Ta);for(let n=0;n<r;++n){let a=await this.readTiffTag(t);if(a)return a}}async readTiffHeader(t){let r=(t?Q0:Ta).get(this.buffer,2),n=(t?Nj:ui).get(this.buffer,4);if(r===42){if(n>=6){if(this.checkString("CR",{offset:8}))return{ext:"cr2",mime:"image/x-canon-cr2"};if(n>=8){let i=(t?Q0:Ta).get(this.buffer,8),o=(t?Q0:Ta).get(this.buffer,10);if(i===28&&o===254||i===31&&o===11)return{ext:"nef",mime:"image/x-nikon-nef"}}}return await this.tokenizer.ignore(n),await this.readTiffIFD(t)??{ext:"tif",mime:"image/tiff"}}if(r===43)return{ext:"tif",mime:"image/tiff"}}},ZRe=new Set(iW),eNe=new Set(oW);import tNe from"fs/promises";import rNe from"path";async function Y0(e,t){let r={role:"user",content:[{type:"input_text",text:e}],type:"message"};for(let n of t)try{let a=await tNe.readFile(n),i=await GO(a),o=a.toString("base64"),s=i?.mime??"application/octet-stream";r.content.push({type:"input_image",detail:"auto",image_url:`data:${s};base64,${o}`})}catch{r.content.push({type:"input_text",text:`[missing image: ${rNe.basename(n)}]`})}return r}ul();f();var zO="codex_cli_ts",sW="";function zD(e){sW=e}function lW(){return sW}var nNe="";function cW(e){nNe=e}f();var HO=[{command:"/clear",description:"Clear conversation history and free up context"},{command:"/clearhistory",description:"Clear command history"},{command:"/compact",description:"Clear conversation history but keep a summary in context. Optional: /compact [instructions for summarization]"},{command:"/history",description:"Open command history"},{command:"/sessions",description:"Browse previous sessions"},{command:"/help",description:"Show list of commands"},{command:"/model",description:"Open model selection panel"},{command:"/approval",description:"Open approval mode selection panel"},{command:"/bug",description:"Generate a prefilled GitHub issue URL with session log"},{command:"/diff",description:"Show git diff of the working directory (or applied patches if not in git)"}];$O();f();var zb=null,mW=!1;function gW(e){if(zb=e,process.env.CODEX_FPS_DEBUG){let t=Date.now(),r=()=>{let i=Date.now();console.error(`[fps] frame in ${i-t}ms`),t=i},n=e.rerender.bind(e);e.rerender=i=>(r(),n(i));let a=e.clear.bind(e);e.clear=()=>(r(),a())}}function hW(){process.env.CODEX_QUIET_MODE!=="1"&&(zb&&zb.clear(),process.stdout.write("\x1B[3J\x1B[H\x1B[2J"))}function kp(){if(!mW&&(mW=!0,zb))try{zb.unmount()}catch{}}var Kt=Re(pt(),1),XO=Re(jO(),1);import{fileURLToPath as WO}from"node:url";var KO=["explain this codebase to me","fix any build errors","are there any bugs in my code?"];function JO({isNew:e,loading:t,submitInput:r,confirmationPrompt:n,explanation:a,submitConfirmation:i,setLastResponseId:o,setItems:s,contextLeftPercent:u,openOverlay:p,openModelOverlay:g,openApprovalOverlay:_,openHelpOverlay:E,openDiffOverlay:b,openSessionsOverlay:S,onCompact:C,interruptAgent:I,active:R,thinkingSeconds:B,items:M=[]}){let[Q,H]=(0,Kt.useState)(0),W=Zg(),[j,Z]=(0,Kt.useState)(0),[q,te]=(0,Kt.useState)(""),[ce,Qe]=(0,Kt.useState)([]),[Ne,je]=(0,Kt.useState)(null),[ve,We]=(0,Kt.useState)(""),[ot,Dt]=(0,Kt.useState)(!1),[St,rr]=(0,Kt.useState)([]),[kt,sr]=(0,Kt.useState)(-1),[Se,_e]=(0,Kt.useState)({key:0}),Ze=(0,Kt.useRef)(null),jt=(0,Kt.useRef)(null),Qt=(0,Kt.useRef)(!1),vr=(0,Kt.useCallback)(tt=>{te(tt),_e(Fe=>({key:Fe.key+1,initialCursorOffset:tt.length}))},[]);function wt(tt,Fe=!1){if(tt.endsWith(" "))rr([]),sr(-1);else{let ht=tt.trim().split(/\s+/),V=ht[ht.length-1]??"",ie=V.startsWith("@")||Fe,De;if(V.startsWith("@")?(De=V.slice(1),De=De.length===0?"./":De):De=V,ie){let pe=Cj(De);rr(pe),pe.length>0?sr(oe=>oe<0||oe>=pe.length?0:oe):sr(-1)}else St.length>0&&(rr([]),sr(-1))}}function Be(tt,Fe=!1){if(St.length===0||kt<0)return{text:tt,suggestion:null,wasReplaced:!1};let ht=tt.trim().split(/\s+/),V=ht[ht.length-1]??"";if(Fe&&!V.startsWith("@"))return{text:tt,suggestion:null,wasReplaced:!1};let ie=St[kt];if(!ie)return{text:tt,suggestion:null,wasReplaced:!1};let De=V.startsWith("@")?`@${ie.path}`:ie.path;return ht[ht.length-1]=De,{text:ht.join(" "),suggestion:ie,wasReplaced:!0}}(0,Kt.useEffect)(()=>{async function tt(){let Fe=await YO();Qe(Fe)}tt()},[]),(0,Kt.useEffect)(()=>{q.trim().startsWith("/")&&H(0)},[q]),Zr((tt,Fe)=>{if(!n&&!t&&q.trim().startsWith("/")){let ht=q.trim(),V=HO.filter(ie=>ie.command.startsWith(ht));if(V.length>0){if(Fe.tab){let ie=V.length,De=Fe.shift?Q<=0?ie-1:Q-1:Q>=ie-1?0:Q+1;H(De);let pe=V[De];if(!pe)return;let oe=pe.command;te(oe),We(oe);return}if(Fe.upArrow){H(ie=>ie<=0?V.length-1:ie-1);return}if(Fe.downArrow){H(ie=>ie<0||ie>=V.length-1?0:ie+1);return}if(Fe.return){let De=V[Q];if(De){let pe=De.command;switch(te(""),We(""),H(0),pe){case"/history":p();break;case"/sessions":S();break;case"/help":E();break;case"/compact":C();break;case"/model":g();break;case"/approval":_();break;case"/diff":b();break;case"/bug":rt(pe);break;case"/clear":rt(pe);break;case"/clearhistory":rt(pe);break;default:break}}return}}}if(!n&&!t){if(St.length>0){if(Fe.upArrow){sr(ht=>ht<=0?St.length-1:ht-1);return}if(Fe.downArrow){sr(ht=>ht>=St.length-1?0:ht+1);return}if(Fe.tab&&kt>=0){let{text:ht,wasReplaced:V}=Be(q);V&&(vr(ht),rr([]),sr(-1));return}}if(Fe.upArrow){let ht=!0,V=Ze.current?.getRow?.()??0,ie=Ze.current?.getCol?.()??0,De=(jt.current??V)===0;if(V===0&&De||(ht=!1),Ne==null&&!(V===0&&ie===0)&&(ht=!1),ce.length&&ht){let pe;if(Ne==null){let oe=Ze.current?.getText?.()??q;We(oe),pe=ce.length-1}else pe=Math.max(0,Ne-1);je(pe),te(ce[pe]?.command??""),_e(oe=>({key:oe.key+1}));return}}if(Fe.downArrow){let ht=Qt.current??Ze.current?.isCursorAtLastRow()??!0;if(Ne!=null&&ht){let V=Ne+1;V>=ce.length?(je(null),te(ve),_e(ie=>({key:ie.key+1}))):(je(V),te(ce[V]?.command??""),_e(ie=>({key:ie.key+1})));return}}if(!Fe.return){let ht=Fe.tab,V=Fe.delete?q.slice(0,-1):q+tt;wt(V,ht)}}if(setTimeout(()=>{jt.current=Ze.current?.getRow?.()??null,Qt.current=Ze.current?.isCursorAtLastRow?.()??!0},1),q.trim()===""&&e){if(Fe.tab)Z(ht=>(ht+(Fe.shift?-1:1))%(KO.length+1));else if(j&&Fe.return){let ht=KO[j-1]||"";te(""),Z(0),r([{role:"user",content:[{type:"input_text",text:ht}],type:"message"}])}}else(tt===""||tt==="c"&&Fe.ctrl)&&setTimeout(()=>{W.exit(),kp(),process.exit(0)},60)},{isActive:R});let rt=(0,Kt.useCallback)(async tt=>{let Fe=tt.trim();if(Fe==="/"){te("");return}if(ot){Dt(!1);return}if(Fe){if(Fe==="/history"){te(""),p();return}else if(Fe==="/sessions"){te(""),S();return}else if(Fe==="/help"){te(""),E();return}else if(Fe==="/diff"){te(""),b();return}else if(Fe==="/compact"){te(""),C();return}else if(Fe.startsWith("/model")){te(""),g();return}else if(Fe.startsWith("/approval")){te(""),_();return}else if(["exit","q",":q"].includes(Fe)){te(""),setTimeout(()=>{W.exit(),kp(),process.exit(0)},60);return}else if(Fe==="/clear"||Fe==="clear"){te(""),zD(""),o(""),hW(),s(ze=>[...ze.filter(we=>!(we.type==="message"&&(we.role==="user"||we.role==="assistant")||we.type==="function_call"||we.type==="function_call_output")),{id:`clear-${Date.now()}`,type:"message",role:"system",content:[{type:"input_text",text:"Terminal cleared"}]}]);return}else if(Fe==="/clearhistory"){te(""),Promise.resolve().then(()=>($O(),fW)).then(async({clearCommandHistory:ze})=>{await ze(),Qe([]),s(He=>[...He,{id:`clearhistory-${Date.now()}`,type:"message",role:"system",content:[{type:"input_text",text:"Command history cleared"}]}])});return}else if(Fe==="/bug"){te("");try{let ze=await import("node:os"),{CLI_VERSION:He}=await Promise.resolve().then(()=>($0(),AW)),{buildBugReportUrl:we}=await Promise.resolve().then(()=>(yW(),EW)),xr=we({items:M??[],cliVersion:He,model:_u().model??"unknown",platform:[ze.platform(),ze.arch(),ze.release()].map(lr=>`\`${lr}\``).join(" | ")});s(lr=>[...lr,{id:`bugreport-${Date.now()}`,type:"message",role:"system",content:[{type:"input_text",text:`\u{1F517} Bug report URL: ${xr}`}]}])}catch(ze){s(He=>[...He,{id:`bugreport-error-${Date.now()}`,type:"message",role:"system",content:[{type:"input_text",text:`\u26A0\uFE0F Failed to create bug report URL: ${ze}`}]}])}return}else if(Fe.startsWith("/")){let ze=Fe.trim();if(/^\/\S+$/.test(ze)){te(""),s(He=>[...He,{id:`invalidcommand-${Date.now()}`,type:"message",role:"system",content:[{type:"input_text",text:`Invalid command "${ze}". Use /help to retrieve the list of commands.`}]}]);return}}}else return;let ht=[],V=Fe;V=V.replace(/!\[[^\]]*?\]\(([^)]+)\)/g,(ze,He)=>(ht.push(He.startsWith("file://")?WO(He):He),"")),V=V.replace(/['"]([^'"]+?\.(?:png|jpe?g|gif|bmp|webp|svg))['"]/gi,(ze,He)=>(ht.push(He.startsWith("file://")?WO(He):He),"")),V=V.replace(/\b(?:\.[\/\\]|[\/\\]|[A-Za-z]:[\/\\])?[\w-]+(?:[\/\\][\w-]+)*\.(?:png|jpe?g|gif|bmp|webp|svg)\b/gi,ze=>(ht.push(ze.startsWith("file://")?WO(ze):ze),"")),V=V.trim();let ie=await Tj(V),De=await Y0(ie,ht);r([De]);let pe=_u(),oe=await VO(tt,ce,{maxSize:pe.history?.maxSize??1e3,saveHistory:pe.history?.saveHistory??!0,sensitivePatterns:pe.history?.sensitivePatterns??[]});Qe(oe),je(null),We(""),Z(0),te(""),rr([]),sr(-1)},[te,r,o,s,W,Qe,je,p,_,g,E,b,S,ce,C,ot,M]);return n?Kt.default.createElement(v$,{confirmationPrompt:n,onReviewCommand:i,onSwitchApprovalMode:_,explanation:a,isActive:R}):Kt.default.createElement(be,{flexDirection:"column"},Kt.default.createElement(be,{borderStyle:"round"},t?Kt.default.createElement(dNe,{onInterrupt:I,active:R,thinkingSeconds:B}):Kt.default.createElement(be,{paddingX:1},Kt.default.createElement(d$,{ref:Ze,onChange:tt=>{We(tt),Ne!=null&&je(null),te(tt)},key:Se.key,initialCursorOffset:Se.initialCursorOffset,initialText:q,height:6,focus:R,onSubmit:tt=>{let{text:Fe,suggestion:ht,wasReplaced:V}=Be(tt,!0);if(V&&ht?.isDirectory){vr(Fe),wt(Fe,!0);return}rt(Fe),_e(ie=>({key:ie.key+1})),te(""),je(null),We("")}}))),q.trim().startsWith("/")&&Kt.default.createElement(be,{flexDirection:"column",paddingX:2,marginBottom:1},HO.filter(tt=>tt.command.startsWith(q.trim())).map((tt,Fe)=>Kt.default.createElement(be,{key:tt.command},Kt.default.createElement(Y,{backgroundColor:Fe===Q?"blackBright":void 0},Kt.default.createElement(Y,{color:"blueBright"},tt.command),Kt.default.createElement(Y,null," ",tt.description))))),Kt.default.createElement(be,{paddingX:2,marginBottom:1},e&&!q?Kt.default.createElement(Y,{dimColor:!0},"try:"," ",KO.map((tt,Fe)=>Kt.default.createElement(Kt.Fragment,{key:Fe},Fe!==0?" | ":"",Kt.default.createElement(Y,{backgroundColor:Fe+1===j?"blackBright":""},tt)))):St.length>0?Kt.default.createElement(b$,{completions:St.map(tt=>tt.path),selectedCompletion:kt,displayLimit:5}):Kt.default.createElement(Y,{dimColor:!0},'ctrl+c to exit | "/" to see commands | enter to send',u>25&&Kt.default.createElement(Kt.default.Fragment,null," \u2014 ",Kt.default.createElement(Y,{color:u>40?"green":"yellow"},Math.round(u),"% context left")),u<=25&&Kt.default.createElement(Kt.default.Fragment,null," \u2014 ",Kt.default.createElement(Y,{color:"red"},Math.round(u),'% context left \u2014 send "/compact" to condense context')))))}function dNe({onInterrupt:e,active:t,thinkingSeconds:r}){let[n,a]=(0,Kt.useState)(!1),[i,o]=(0,Kt.useState)("");(0,XO.useInterval)(()=>{o(S=>S.length<3?S+".":"")},500);let s=["( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF)","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","(\u25CF )"],[u,p]=(0,Kt.useState)(0);(0,XO.useInterval)(()=>{p(S=>(S+1)%s.length)},80);let _=`${s[u]??s[0]} ${r}s`,{stdin:E,setRawMode:b}=Gm();return Kt.default.useEffect(()=>{if(!t)return;b?.(!0);let S=C=>{if(n)return;(Buffer.isBuffer(C)?C.toString("utf8"):C)==="\x1B\x1B"&&(zt("raw stdin: received collapsed ESC ESC \u2013 starting confirmation timer"),a(!0),setTimeout(()=>a(!1),1500))};return E?.on("data",S),()=>{E?.off("data",S)}},[E,n,e,t,b]),Zr((S,C)=>{C.escape&&(n?(zt("useInput: second ESC detected \u2013 triggering onInterrupt()"),e(),a(!1)):(zt("useInput: first ESC detected \u2013 waiting for confirmation"),a(!0),setTimeout(()=>a(!1),1500)))},{isActive:t}),Kt.default.createElement(be,{width:"100%",flexDirection:"column",gap:1},Kt.default.createElement(be,{flexDirection:"row",width:"100%",justifyContent:"space-between",paddingRight:1},Kt.default.createElement(be,{gap:2},Kt.default.createElement(Y,null,_),Kt.default.createElement(Y,null,"Thinking",i)),Kt.default.createElement(Y,null,Kt.default.createElement(Y,{dimColor:!0},"press")," ",Kt.default.createElement(Y,{bold:!0},"Esc")," ",n?Kt.default.createElement(Y,{bold:!0},"again"):Kt.default.createElement(Y,{dimColor:!0},"twice")," ",Kt.default.createElement(Y,{dimColor:!0},"to interrupt"))))}f();f();f();import{log as vNe}from"node:console";f();var RW=Re(VD(),1);function Lp(e){try{if(e.length===3&&e[0]==="bash"&&e[1]==="-lc"&&typeof e[2]=="string"){let t=e[2];return t.startsWith("'")&&t.endsWith("'")&&(t=t.slice(1,-1)),t}return(0,RW.quote)(e)}catch{return e.join(" ")}}function OW(e){try{let{output:t,metadata:r}=JSON.parse(e);return{output:t,metadata:r}}catch{return{output:"Failed to parse JSON result",metadata:{exit_code:1,duration_seconds:0}}}}function $D(e){let t=r7(e.arguments);if(t==null)return;let{cmd:r,workdir:n}=t,a=Lp(r);return{cmd:r,cmdReadableText:a,workdir:n}}function r7(e){let t;try{t=JSON.parse(e)}catch{vNe(`Failed to parse toolCall.arguments: ${e}`);return}if(typeof t!="object"||t==null)return;let{cmd:r,command:n}=t,a=NW(r)??NW(n)??(typeof r=="string"?[r]:void 0)??(typeof n=="string"?[n]:void 0);if(a==null)return;let{timeout:i,workdir:o}=t;return{cmd:a,workdir:typeof o=="string"?o:void 0,timeoutInMillis:typeof i=="number"?i:void 0}}function NW(e){if(Array.isArray(e)&&e.every(t=>typeof t=="string"))return e}f();function i7(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var ch=i7();function PW(e){ch=e}var Yb={exec:()=>null};function Ln(e,t=""){let r=typeof e=="string"?e:e.source,n={replace:(a,i)=>{let o=typeof i=="string"?i:i.source;return o=o.replace(Ms.caret,"$1"),r=r.replace(a,o),n},getRegex:()=>new RegExp(r,t)};return n}var Ms={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>new RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,"i")},bNe=/^(?:[ \t]*(?:\n|$))+/,SNe=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,CNe=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,$b=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,TNe=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,o7=/(?:[*+-]|\d{1,9}[.)])/,UW=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,QW=Ln(UW).replace(/bull/g,o7).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),INe=Ln(UW).replace(/bull/g,o7).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),s7=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,DNe=/^[^\n]+/,l7=/(?!\s*\])(?:\\.|[^\[\]\\])+/,wNe=Ln(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",l7).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),xNe=Ln(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,o7).getRegex(),KD="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",c7=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,RNe=Ln("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",c7).replace("tag",KD).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),GW=Ln(s7).replace("hr",$b).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",KD).getRegex(),NNe=Ln(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",GW).getRegex(),u7={blockquote:NNe,code:SNe,def:wNe,fences:CNe,heading:TNe,hr:$b,html:RNe,lheading:QW,list:xNe,newline:bNe,paragraph:GW,table:Yb,text:DNe},kW=Ln("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",$b).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",KD).getRegex(),ONe={...u7,lheading:INe,table:kW,paragraph:Ln(s7).replace("hr",$b).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",kW).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",KD).getRegex()},kNe={...u7,html:Ln(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",c7).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Yb,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:Ln(s7).replace("hr",$b).replace("heading",` *#{1,6} *[^
345
+ `,"\r"," "," ","\0"].some(r=>this.checkString(r,{offset:6})))return{ext:"vtt",mime:"text/vtt"};if(this.check([137,80,78,71,13,10,26,10])){await t.ignore(8);async function r(){return{length:await t.readToken(Oj),type:await t.readToken(new ml(4,"latin1"))}}do{let n=await r();if(n.length<0)return;switch(n.type){case"IDAT":return{ext:"png",mime:"image/png"};case"acTL":return{ext:"apng",mime:"image/apng"};default:await t.ignore(n.length+4)}}while(t.position+8<t.fileInfo.size);return{ext:"png",mime:"image/png"}}if(this.check([65,82,82,79,87,49,0,0]))return{ext:"arrow",mime:"application/x-apache-arrow"};if(this.check([103,108,84,70,2,0,0,0]))return{ext:"glb",mime:"model/gltf-binary"};if(this.check([102,114,101,101],{offset:4})||this.check([109,100,97,116],{offset:4})||this.check([109,111,111,118],{offset:4})||this.check([119,105,100,101],{offset:4}))return{ext:"mov",mime:"video/quicktime"};if(this.check([73,73,82,79,8,0,0,0,24]))return{ext:"orf",mime:"image/x-olympus-orf"};if(this.checkString("gimp xcf "))return{ext:"xcf",mime:"image/x-xcf"};if(this.checkString("ftyp",{offset:4})&&(this.buffer[8]&96)!==0){let r=new ml(4,"latin1").get(this.buffer,8).replace("\0"," ").trim();switch(r){case"avif":case"avis":return{ext:"avif",mime:"image/avif"};case"mif1":return{ext:"heic",mime:"image/heif"};case"msf1":return{ext:"heic",mime:"image/heif-sequence"};case"heic":case"heix":return{ext:"heic",mime:"image/heic"};case"hevc":case"hevx":return{ext:"heic",mime:"image/heic-sequence"};case"qt":return{ext:"mov",mime:"video/quicktime"};case"M4V":case"M4VH":case"M4VP":return{ext:"m4v",mime:"video/x-m4v"};case"M4P":return{ext:"m4p",mime:"video/mp4"};case"M4B":return{ext:"m4b",mime:"audio/mp4"};case"M4A":return{ext:"m4a",mime:"audio/x-m4a"};case"F4V":return{ext:"f4v",mime:"video/mp4"};case"F4P":return{ext:"f4p",mime:"video/mp4"};case"F4A":return{ext:"f4a",mime:"audio/mp4"};case"F4B":return{ext:"f4b",mime:"audio/mp4"};case"crx":return{ext:"cr3",mime:"image/x-canon-cr3"};default:return r.startsWith("3g")?r.startsWith("3g2")?{ext:"3g2",mime:"video/3gpp2"}:{ext:"3gp",mime:"video/3gpp"}:{ext:"mp4",mime:"video/mp4"}}}if(this.check([82,73,70,70])){if(this.checkString("WEBP",{offset:8}))return{ext:"webp",mime:"image/webp"};if(this.check([65,86,73],{offset:8}))return{ext:"avi",mime:"video/vnd.avi"};if(this.check([87,65,86,69],{offset:8}))return{ext:"wav",mime:"audio/wav"};if(this.check([81,76,67,77],{offset:8}))return{ext:"qcp",mime:"audio/qcelp"}}if(this.check([73,73,85,0,24,0,0,0,136,231,116,216]))return{ext:"rw2",mime:"image/x-panasonic-rw2"};if(this.check([48,38,178,117,142,102,207,17,166,217])){async function r(){let n=new Uint8Array(16);return await t.readBuffer(n),{id:n,size:Number(await t.readToken(kj))}}for(await t.ignore(30);t.position+24<t.fileInfo.size;){let n=await r(),a=n.size-24;if(Op(n.id,[145,7,220,183,183,169,207,17,142,230,0,192,12,32,83,101])){let i=new Uint8Array(16);if(a-=await t.readBuffer(i),Op(i,[64,158,105,248,77,91,207,17,168,253,0,128,95,92,68,43]))return{ext:"asf",mime:"audio/x-ms-asf"};if(Op(i,[192,239,25,188,77,91,207,17,168,253,0,128,95,92,68,43]))return{ext:"asf",mime:"video/x-ms-asf"};break}await t.ignore(a)}return{ext:"asf",mime:"application/vnd.ms-asf"}}if(this.check([171,75,84,88,32,49,49,187,13,10,26,10]))return{ext:"ktx",mime:"image/ktx"};if((this.check([126,16,4])||this.check([126,24,4]))&&this.check([48,77,73,69],{offset:4}))return{ext:"mie",mime:"application/x-mie"};if(this.check([39,10,0,0,0,0,0,0,0,0,0,0],{offset:2}))return{ext:"shp",mime:"application/x-esri-shape"};if(this.check([255,79,255,81]))return{ext:"j2c",mime:"image/j2c"};if(this.check([0,0,0,12,106,80,32,32,13,10,135,10]))switch(await t.ignore(20),await t.readToken(new ml(4,"ascii"))){case"jp2 ":return{ext:"jp2",mime:"image/jp2"};case"jpx ":return{ext:"jpx",mime:"image/jpx"};case"jpm ":return{ext:"jpm",mime:"image/jpm"};case"mjp2":return{ext:"mj2",mime:"image/mj2"};default:return}if(this.check([255,10])||this.check([0,0,0,12,74,88,76,32,13,10,135,10]))return{ext:"jxl",mime:"image/jxl"};if(this.check([254,255]))return this.check([0,60,0,63,0,120,0,109,0,108],{offset:2})?{ext:"xml",mime:"application/xml"}:void 0;if(this.check([208,207,17,224,161,177,26,225]))return{ext:"cfb",mime:"application/x-cfb"};if(await t.peekBuffer(this.buffer,{length:Math.min(256,t.fileInfo.size),mayBeLess:!0}),this.check([97,99,115,112],{offset:36}))return{ext:"icc",mime:"application/vnd.iccprofile"};if(this.checkString("**ACE",{offset:7})&&this.checkString("**",{offset:12}))return{ext:"ace",mime:"application/x-ace-compressed"};if(this.checkString("BEGIN:")){if(this.checkString("VCARD",{offset:6}))return{ext:"vcf",mime:"text/vcard"};if(this.checkString("VCALENDAR",{offset:6}))return{ext:"ics",mime:"text/calendar"}}if(this.checkString("FUJIFILMCCD-RAW"))return{ext:"raf",mime:"image/x-fujifilm-raf"};if(this.checkString("Extended Module:"))return{ext:"xm",mime:"audio/x-xm"};if(this.checkString("Creative Voice File"))return{ext:"voc",mime:"audio/x-voc"};if(this.check([4,0,0,0])&&this.buffer.length>=16){let r=new DataView(this.buffer.buffer).getUint32(12,!0);if(r>12&&this.buffer.length>=r+16)try{let n=new TextDecoder().decode(this.buffer.slice(16,r+16));if(JSON.parse(n).files)return{ext:"asar",mime:"application/x-asar"}}catch{}}if(this.check([6,14,43,52,2,5,1,1,13,1,2,1,1,2]))return{ext:"mxf",mime:"application/mxf"};if(this.checkString("SCRM",{offset:44}))return{ext:"s3m",mime:"audio/x-s3m"};if(this.check([71])&&this.check([71],{offset:188}))return{ext:"mts",mime:"video/mp2t"};if(this.check([71],{offset:4})&&this.check([71],{offset:196}))return{ext:"mts",mime:"video/mp2t"};if(this.check([66,79,79,75,77,79,66,73],{offset:60}))return{ext:"mobi",mime:"application/x-mobipocket-ebook"};if(this.check([68,73,67,77],{offset:128}))return{ext:"dcm",mime:"application/dicom"};if(this.check([76,0,0,0,1,20,2,0,0,0,0,0,192,0,0,0,0,0,0,70]))return{ext:"lnk",mime:"application/x.ms.shortcut"};if(this.check([98,111,111,107,0,0,0,0,109,97,114,107,0,0,0,0]))return{ext:"alias",mime:"application/x.apple.alias"};if(this.checkString("Kaydara FBX Binary \0"))return{ext:"fbx",mime:"application/x.autodesk.fbx"};if(this.check([76,80],{offset:34})&&(this.check([0,0,1],{offset:8})||this.check([1,0,2],{offset:8})||this.check([2,0,2],{offset:8})))return{ext:"eot",mime:"application/vnd.ms-fontobject"};if(this.check([6,6,237,245,216,29,70,229,189,49,239,231,254,116,183,29]))return{ext:"indd",mime:"application/x-indesign"};if(await t.peekBuffer(this.buffer,{length:Math.min(512,t.fileInfo.size),mayBeLess:!0}),nW(this.buffer))return{ext:"tar",mime:"application/x-tar"};if(this.check([255,254]))return this.check([60,0,63,0,120,0,109,0,108,0],{offset:2})?{ext:"xml",mime:"application/xml"}:this.check([255,14,83,0,107,0,101,0,116,0,99,0,104,0,85,0,112,0,32,0,77,0,111,0,100,0,101,0,108,0],{offset:2})?{ext:"skp",mime:"application/vnd.sketchup.skp"}:void 0;if(this.checkString("-----BEGIN PGP MESSAGE-----"))return{ext:"pgp",mime:"application/pgp-encrypted"}};detectImprecise=async t=>{if(this.buffer=new Uint8Array(PO),await t.peekBuffer(this.buffer,{length:Math.min(8,t.fileInfo.size),mayBeLess:!0}),this.check([0,0,1,186])||this.check([0,0,1,179]))return{ext:"mpg",mime:"video/mpeg"};if(this.check([0,1,0,0,0]))return{ext:"ttf",mime:"font/ttf"};if(this.check([0,0,1,0]))return{ext:"ico",mime:"image/x-icon"};if(this.check([0,0,2,0]))return{ext:"cur",mime:"image/x-icon"};if(this.buffer.length>=2&&this.check([255,224],{offset:0,mask:[255,224]})){if(this.check([16],{offset:1,mask:[22]}))return this.check([8],{offset:1,mask:[8]})?{ext:"aac",mime:"audio/aac"}:{ext:"aac",mime:"audio/aac"};if(this.check([2],{offset:1,mask:[6]}))return{ext:"mp3",mime:"audio/mpeg"};if(this.check([4],{offset:1,mask:[6]}))return{ext:"mp2",mime:"audio/mpeg"};if(this.check([6],{offset:1,mask:[6]}))return{ext:"mp1",mime:"audio/mpeg"}}};async readTiffTag(t){let r=await this.tokenizer.readToken(t?Q0:Ta);switch(this.tokenizer.ignore(10),r){case 50341:return{ext:"arw",mime:"image/x-sony-arw"};case 50706:return{ext:"dng",mime:"image/x-adobe-dng"};default:}}async readTiffIFD(t){let r=await this.tokenizer.readToken(t?Q0:Ta);for(let n=0;n<r;++n){let a=await this.readTiffTag(t);if(a)return a}}async readTiffHeader(t){let r=(t?Q0:Ta).get(this.buffer,2),n=(t?Nj:ui).get(this.buffer,4);if(r===42){if(n>=6){if(this.checkString("CR",{offset:8}))return{ext:"cr2",mime:"image/x-canon-cr2"};if(n>=8){let i=(t?Q0:Ta).get(this.buffer,8),o=(t?Q0:Ta).get(this.buffer,10);if(i===28&&o===254||i===31&&o===11)return{ext:"nef",mime:"image/x-nikon-nef"}}}return await this.tokenizer.ignore(n),await this.readTiffIFD(t)??{ext:"tif",mime:"image/tiff"}}if(r===43)return{ext:"tif",mime:"image/tiff"}}},ZRe=new Set(iW),eNe=new Set(oW);import tNe from"fs/promises";import rNe from"path";async function Y0(e,t){let r={role:"user",content:[{type:"input_text",text:e}],type:"message"};for(let n of t)try{let a=await tNe.readFile(n),i=await GO(a),o=a.toString("base64"),s=i?.mime??"application/octet-stream";r.content.push({type:"input_image",detail:"auto",image_url:`data:${s};base64,${o}`})}catch{r.content.push({type:"input_text",text:`[missing image: ${rNe.basename(n)}]`})}return r}ul();f();var zO="codex_cli_ts",sW="";function zD(e){sW=e}function lW(){return sW}var nNe="";function cW(e){nNe=e}f();var HO=[{command:"/clear",description:"Clear conversation history and free up context"},{command:"/clearhistory",description:"Clear command history"},{command:"/compact",description:"Clear conversation history but keep a summary in context. Optional: /compact [instructions for summarization]"},{command:"/history",description:"Open command history"},{command:"/sessions",description:"Browse previous sessions"},{command:"/help",description:"Show list of commands"},{command:"/model",description:"Open model selection panel"},{command:"/approval",description:"Open approval mode selection panel"},{command:"/bug",description:"Generate a prefilled GitHub issue URL with session log"},{command:"/diff",description:"Show git diff of the working directory (or applied patches if not in git)"}];$O();f();var zb=null,mW=!1;function gW(e){if(zb=e,process.env.CODEX_FPS_DEBUG){let t=Date.now(),r=()=>{let i=Date.now();console.error(`[fps] frame in ${i-t}ms`),t=i},n=e.rerender.bind(e);e.rerender=i=>(r(),n(i));let a=e.clear.bind(e);e.clear=()=>(r(),a())}}function hW(){process.env.CODEX_QUIET_MODE!=="1"&&(zb&&zb.clear(),process.stdout.write("\x1B[3J\x1B[H\x1B[2J"))}function kp(){if(!mW&&(mW=!0,zb))try{zb.unmount()}catch{}}var Kt=Re(pt(),1),XO=Re(jO(),1);import{fileURLToPath as WO}from"node:url";var KO=["explain this codebase to me","fix any build errors","are there any bugs in my code?"];function JO({isNew:e,loading:t,submitInput:r,confirmationPrompt:n,explanation:a,submitConfirmation:i,setLastResponseId:o,setItems:s,contextLeftPercent:u,openOverlay:p,openModelOverlay:g,openApprovalOverlay:_,openHelpOverlay:E,openDiffOverlay:b,openSessionsOverlay:S,onCompact:C,interruptAgent:I,active:R,thinkingSeconds:B,items:M=[]}){let[Q,H]=(0,Kt.useState)(0),W=Zg(),[j,Z]=(0,Kt.useState)(0),[q,te]=(0,Kt.useState)(""),[ce,Qe]=(0,Kt.useState)([]),[Ne,je]=(0,Kt.useState)(null),[ve,We]=(0,Kt.useState)(""),[ot,Dt]=(0,Kt.useState)(!1),[St,rr]=(0,Kt.useState)([]),[kt,sr]=(0,Kt.useState)(-1),[Se,_e]=(0,Kt.useState)({key:0}),Ze=(0,Kt.useRef)(null),jt=(0,Kt.useRef)(null),Qt=(0,Kt.useRef)(!1),vr=(0,Kt.useCallback)(tt=>{te(tt),_e(Fe=>({key:Fe.key+1,initialCursorOffset:tt.length}))},[]);function wt(tt,Fe=!1){if(tt.endsWith(" "))rr([]),sr(-1);else{let ht=tt.trim().split(/\s+/),V=ht[ht.length-1]??"",ie=V.startsWith("@")||Fe,De;if(V.startsWith("@")?(De=V.slice(1),De=De.length===0?"./":De):De=V,ie){let pe=Cj(De);rr(pe),pe.length>0?sr(oe=>oe<0||oe>=pe.length?0:oe):sr(-1)}else St.length>0&&(rr([]),sr(-1))}}function Be(tt,Fe=!1){if(St.length===0||kt<0)return{text:tt,suggestion:null,wasReplaced:!1};let ht=tt.trim().split(/\s+/),V=ht[ht.length-1]??"";if(Fe&&!V.startsWith("@"))return{text:tt,suggestion:null,wasReplaced:!1};let ie=St[kt];if(!ie)return{text:tt,suggestion:null,wasReplaced:!1};let De=V.startsWith("@")?`@${ie.path}`:ie.path;return ht[ht.length-1]=De,{text:ht.join(" "),suggestion:ie,wasReplaced:!0}}(0,Kt.useEffect)(()=>{async function tt(){let Fe=await YO();Qe(Fe)}tt()},[]),(0,Kt.useEffect)(()=>{q.trim().startsWith("/")&&H(0)},[q]),Zr((tt,Fe)=>{if(!n&&!t&&q.trim().startsWith("/")){let ht=q.trim(),V=HO.filter(ie=>ie.command.startsWith(ht));if(V.length>0){if(Fe.tab){let ie=V.length,De=Fe.shift?Q<=0?ie-1:Q-1:Q>=ie-1?0:Q+1;H(De);let pe=V[De];if(!pe)return;let oe=pe.command;te(oe),We(oe);return}if(Fe.upArrow){H(ie=>ie<=0?V.length-1:ie-1);return}if(Fe.downArrow){H(ie=>ie<0||ie>=V.length-1?0:ie+1);return}if(Fe.return){let De=V[Q];if(De){let pe=De.command;switch(te(""),We(""),H(0),pe){case"/history":p();break;case"/sessions":S();break;case"/help":E();break;case"/compact":C();break;case"/model":g();break;case"/approval":_();break;case"/diff":b();break;case"/bug":rt(pe);break;case"/clear":rt(pe);break;case"/clearhistory":rt(pe);break;default:break}}return}}}if(!n&&!t){if(St.length>0){if(Fe.upArrow){sr(ht=>ht<=0?St.length-1:ht-1);return}if(Fe.downArrow){sr(ht=>ht>=St.length-1?0:ht+1);return}if(Fe.tab&&kt>=0){let{text:ht,wasReplaced:V}=Be(q);V&&(vr(ht),rr([]),sr(-1));return}}if(Fe.upArrow){let ht=!0,V=Ze.current?.getRow?.()??0,ie=Ze.current?.getCol?.()??0,De=(jt.current??V)===0;if(V===0&&De||(ht=!1),Ne==null&&!(V===0&&ie===0)&&(ht=!1),ce.length&&ht){let pe;if(Ne==null){let oe=Ze.current?.getText?.()??q;We(oe),pe=ce.length-1}else pe=Math.max(0,Ne-1);je(pe),te(ce[pe]?.command??""),_e(oe=>({key:oe.key+1}));return}}if(Fe.downArrow){let ht=Qt.current??Ze.current?.isCursorAtLastRow()??!0;if(Ne!=null&&ht){let V=Ne+1;V>=ce.length?(je(null),te(ve),_e(ie=>({key:ie.key+1}))):(je(V),te(ce[V]?.command??""),_e(ie=>({key:ie.key+1})));return}}if(!Fe.return){let ht=Fe.tab,V=Fe.delete?q.slice(0,-1):q+tt;wt(V,ht)}}if(setTimeout(()=>{jt.current=Ze.current?.getRow?.()??null,Qt.current=Ze.current?.isCursorAtLastRow?.()??!0},1),q.trim()===""&&e){if(Fe.tab)Z(ht=>(ht+(Fe.shift?-1:1))%(KO.length+1));else if(j&&Fe.return){let ht=KO[j-1]||"";te(""),Z(0),r([{role:"user",content:[{type:"input_text",text:ht}],type:"message"}])}}else(tt===""||tt==="c"&&Fe.ctrl)&&setTimeout(()=>{W.exit(),kp(),process.exit(0)},60)},{isActive:R});let rt=(0,Kt.useCallback)(async tt=>{let Fe=tt.trim();if(Fe==="/"){te("");return}if(ot){Dt(!1);return}if(Fe){if(Fe==="/history"){te(""),p();return}else if(Fe==="/sessions"){te(""),S();return}else if(Fe==="/help"){te(""),E();return}else if(Fe==="/diff"){te(""),b();return}else if(Fe==="/compact"){te(""),C();return}else if(Fe.startsWith("/model")){te(""),g();return}else if(Fe.startsWith("/approval")){te(""),_();return}else if(["exit","q",":q"].includes(Fe)){te(""),setTimeout(()=>{W.exit(),kp(),process.exit(0)},60);return}else if(Fe==="/clear"||Fe==="clear"){te(""),zD(""),o(""),hW(),s(ze=>[...ze.filter(we=>!(we.type==="message"&&(we.role==="user"||we.role==="assistant")||we.type==="function_call"||we.type==="function_call_output")),{id:`clear-${Date.now()}`,type:"message",role:"system",content:[{type:"input_text",text:"Terminal cleared"}]}]);return}else if(Fe==="/clearhistory"){te(""),Promise.resolve().then(()=>($O(),fW)).then(async({clearCommandHistory:ze})=>{await ze(),Qe([]),s(He=>[...He,{id:`clearhistory-${Date.now()}`,type:"message",role:"system",content:[{type:"input_text",text:"Command history cleared"}]}])});return}else if(Fe==="/bug"){te("");try{let ze=await import("node:os"),{CLI_VERSION:He}=await Promise.resolve().then(()=>($0(),AW)),{buildBugReportUrl:we}=await Promise.resolve().then(()=>(yW(),EW)),xr=we({items:M??[],cliVersion:He,model:_u().model??"unknown",platform:[ze.platform(),ze.arch(),ze.release()].map(lr=>`\`${lr}\``).join(" | ")});s(lr=>[...lr,{id:`bugreport-${Date.now()}`,type:"message",role:"system",content:[{type:"input_text",text:`\u{1F517} Bug report URL: ${xr}`}]}])}catch(ze){s(He=>[...He,{id:`bugreport-error-${Date.now()}`,type:"message",role:"system",content:[{type:"input_text",text:`\u26A0\uFE0F Failed to create bug report URL: ${ze}`}]}])}return}else if(Fe.startsWith("/")){let ze=Fe.trim();if(/^\/\S+$/.test(ze)){te(""),s(He=>[...He,{id:`invalidcommand-${Date.now()}`,type:"message",role:"system",content:[{type:"input_text",text:`Invalid command "${ze}". Use /help to retrieve the list of commands.`}]}]);return}}}else return;let ht=[],V=Fe;V=V.replace(/!\[[^\]]*?\]\(([^)]+)\)/g,(ze,He)=>(ht.push(He.startsWith("file://")?WO(He):He),"")),V=V.replace(/['"]([^'"]+?\.(?:png|jpe?g|gif|bmp|webp|svg))['"]/gi,(ze,He)=>(ht.push(He.startsWith("file://")?WO(He):He),"")),V=V.replace(/\b(?:\.[\/\\]|[\/\\]|[A-Za-z]:[\/\\])?[\w-]+(?:[\/\\][\w-]+)*\.(?:png|jpe?g|gif|bmp|webp|svg)\b/gi,ze=>(ht.push(ze.startsWith("file://")?WO(ze):ze),"")),V=V.trim();let ie=await Tj(V),De=await Y0(ie,ht);r([De]);let pe=_u(),oe=await VO(tt,ce,{maxSize:pe.history?.maxSize??1e3,saveHistory:pe.history?.saveHistory??!0,sensitivePatterns:pe.history?.sensitivePatterns??[]});Qe(oe),je(null),We(""),Z(0),te(""),rr([]),sr(-1)},[te,r,o,s,W,Qe,je,p,_,g,E,b,S,ce,C,ot,M]);return n?Kt.default.createElement(v$,{confirmationPrompt:n,onReviewCommand:i,onSwitchApprovalMode:_,explanation:a,isActive:R}):Kt.default.createElement(be,{flexDirection:"column"},Kt.default.createElement(be,{borderStyle:"round"},t?Kt.default.createElement(dNe,{onInterrupt:I,active:R,thinkingSeconds:B}):Kt.default.createElement(be,{paddingX:1},Kt.default.createElement(d$,{ref:Ze,onChange:tt=>{We(tt),Ne!=null&&je(null),te(tt)},key:Se.key,initialCursorOffset:Se.initialCursorOffset,initialText:q,height:6,focus:R,onSubmit:tt=>{let{text:Fe,suggestion:ht,wasReplaced:V}=Be(tt,!0);if(V&&ht?.isDirectory){vr(Fe),wt(Fe,!0);return}rt(Fe),_e(ie=>({key:ie.key+1})),te(""),je(null),We("")}}))),q.trim().startsWith("/")&&Kt.default.createElement(be,{flexDirection:"column",paddingX:2,marginBottom:1},HO.filter(tt=>tt.command.startsWith(q.trim())).map((tt,Fe)=>Kt.default.createElement(be,{key:tt.command},Kt.default.createElement(Y,{backgroundColor:Fe===Q?"blackBright":void 0},Kt.default.createElement(Y,{color:"blueBright"},tt.command),Kt.default.createElement(Y,null," ",tt.description))))),Kt.default.createElement(be,{paddingX:2,marginBottom:1},e&&!q?Kt.default.createElement(Y,{dimColor:!0},"try:"," ",KO.map((tt,Fe)=>Kt.default.createElement(Kt.Fragment,{key:Fe},Fe!==0?" | ":"",Kt.default.createElement(Y,{backgroundColor:Fe+1===j?"blackBright":""},tt)))):St.length>0?Kt.default.createElement(b$,{completions:St.map(tt=>tt.path),selectedCompletion:kt,displayLimit:5}):Kt.default.createElement(Y,{dimColor:!0},'Ctrl+C to exit | "/" to see commands | Enter to send',u>25&&Kt.default.createElement(Kt.default.Fragment,null," \u2014 ",Kt.default.createElement(Y,{color:u>40?"green":"yellow"},Math.round(u),"% context left")),u<=25&&Kt.default.createElement(Kt.default.Fragment,null," \u2014 ",Kt.default.createElement(Y,{color:"red"},Math.round(u),'% context left \u2014 send "/compact" to condense context')))))}function dNe({onInterrupt:e,active:t,thinkingSeconds:r}){let[n,a]=(0,Kt.useState)(!1),[i,o]=(0,Kt.useState)("");(0,XO.useInterval)(()=>{o(S=>S.length<3?S+".":"")},500);let s=["( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF)","( \u25CF )","( \u25CF )","( \u25CF )","( \u25CF )","(\u25CF )"],[u,p]=(0,Kt.useState)(0);(0,XO.useInterval)(()=>{p(S=>(S+1)%s.length)},80);let _=`${s[u]??s[0]} ${r}s`,{stdin:E,setRawMode:b}=Gm();return Kt.default.useEffect(()=>{if(!t)return;b?.(!0);let S=C=>{if(n)return;(Buffer.isBuffer(C)?C.toString("utf8"):C)==="\x1B\x1B"&&(zt("raw stdin: received collapsed ESC ESC \u2013 starting confirmation timer"),a(!0),setTimeout(()=>a(!1),1500))};return E?.on("data",S),()=>{E?.off("data",S)}},[E,n,e,t,b]),Zr((S,C)=>{C.escape&&(n?(zt("useInput: second ESC detected \u2013 triggering onInterrupt()"),e(),a(!1)):(zt("useInput: first ESC detected \u2013 waiting for confirmation"),a(!0),setTimeout(()=>a(!1),1500)))},{isActive:t}),Kt.default.createElement(be,{width:"100%",flexDirection:"column",gap:1},Kt.default.createElement(be,{flexDirection:"row",width:"100%",justifyContent:"space-between",paddingRight:1},Kt.default.createElement(be,{gap:2},Kt.default.createElement(Y,null,_),Kt.default.createElement(Y,null,"Thinking",i)),Kt.default.createElement(Y,null,Kt.default.createElement(Y,{dimColor:!0},"press")," ",Kt.default.createElement(Y,{bold:!0},"Esc")," ",n?Kt.default.createElement(Y,{bold:!0},"again"):Kt.default.createElement(Y,{dimColor:!0},"twice")," ",Kt.default.createElement(Y,{dimColor:!0},"to interrupt"))))}f();f();f();import{log as vNe}from"node:console";f();var RW=Re(VD(),1);function Lp(e){try{if(e.length===3&&e[0]==="bash"&&e[1]==="-lc"&&typeof e[2]=="string"){let t=e[2];return t.startsWith("'")&&t.endsWith("'")&&(t=t.slice(1,-1)),t}return(0,RW.quote)(e)}catch{return e.join(" ")}}function OW(e){try{let{output:t,metadata:r}=JSON.parse(e);return{output:t,metadata:r}}catch{return{output:"Failed to parse JSON result",metadata:{exit_code:1,duration_seconds:0}}}}function $D(e){let t=r7(e.arguments);if(t==null)return;let{cmd:r,workdir:n}=t,a=Lp(r);return{cmd:r,cmdReadableText:a,workdir:n}}function r7(e){let t;try{t=JSON.parse(e)}catch{vNe(`Failed to parse toolCall.arguments: ${e}`);return}if(typeof t!="object"||t==null)return;let{cmd:r,command:n}=t,a=NW(r)??NW(n)??(typeof r=="string"?[r]:void 0)??(typeof n=="string"?[n]:void 0);if(a==null)return;let{timeout:i,workdir:o}=t;return{cmd:a,workdir:typeof o=="string"?o:void 0,timeoutInMillis:typeof i=="number"?i:void 0}}function NW(e){if(Array.isArray(e)&&e.every(t=>typeof t=="string"))return e}f();function i7(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var ch=i7();function PW(e){ch=e}var Yb={exec:()=>null};function Ln(e,t=""){let r=typeof e=="string"?e:e.source,n={replace:(a,i)=>{let o=typeof i=="string"?i:i.source;return o=o.replace(Ms.caret,"$1"),r=r.replace(a,o),n},getRegex:()=>new RegExp(r,t)};return n}var Ms={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>new RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,"i")},bNe=/^(?:[ \t]*(?:\n|$))+/,SNe=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,CNe=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,$b=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,TNe=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,o7=/(?:[*+-]|\d{1,9}[.)])/,UW=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,QW=Ln(UW).replace(/bull/g,o7).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),INe=Ln(UW).replace(/bull/g,o7).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),s7=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,DNe=/^[^\n]+/,l7=/(?!\s*\])(?:\\.|[^\[\]\\])+/,wNe=Ln(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",l7).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),xNe=Ln(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,o7).getRegex(),KD="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",c7=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,RNe=Ln("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",c7).replace("tag",KD).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),GW=Ln(s7).replace("hr",$b).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",KD).getRegex(),NNe=Ln(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",GW).getRegex(),u7={blockquote:NNe,code:SNe,def:wNe,fences:CNe,heading:TNe,hr:$b,html:RNe,lheading:QW,list:xNe,newline:bNe,paragraph:GW,table:Yb,text:DNe},kW=Ln("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",$b).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",KD).getRegex(),ONe={...u7,lheading:INe,table:kW,paragraph:Ln(s7).replace("hr",$b).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",kW).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",KD).getRegex()},kNe={...u7,html:Ln(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",c7).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Yb,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:Ln(s7).replace("hr",$b).replace("heading",` *#{1,6} *[^
346
346
  ]`).replace("lheading",QW).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},BNe=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,LNe=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,zW=/^( {2,}|\\)\n(?!\s*$)/,MNe=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,XD=/[\p{P}\p{S}]/u,p7=/[\s\p{P}\p{S}]/u,HW=/[^\s\p{P}\p{S}]/u,FNe=Ln(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,p7).getRegex(),qW=/(?!~)[\p{P}\p{S}]/u,PNe=/(?!~)[\s\p{P}\p{S}]/u,UNe=/(?:[^\s\p{P}\p{S}]|~)/u,QNe=/\[[^[\]]*?\]\((?:\\.|[^\\\(\)]|\((?:\\.|[^\\\(\)])*\))*\)|`[^`]*?`|<[^<>]*?>/g,YW=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,GNe=Ln(YW,"u").replace(/punct/g,XD).getRegex(),zNe=Ln(YW,"u").replace(/punct/g,qW).getRegex(),VW="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",HNe=Ln(VW,"gu").replace(/notPunctSpace/g,HW).replace(/punctSpace/g,p7).replace(/punct/g,XD).getRegex(),qNe=Ln(VW,"gu").replace(/notPunctSpace/g,UNe).replace(/punctSpace/g,PNe).replace(/punct/g,qW).getRegex(),YNe=Ln("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,HW).replace(/punctSpace/g,p7).replace(/punct/g,XD).getRegex(),VNe=Ln(/\\(punct)/,"gu").replace(/punct/g,XD).getRegex(),$Ne=Ln(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),jNe=Ln(c7).replace("(?:-->|$)","-->").getRegex(),WNe=Ln("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",jNe).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),WD=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,KNe=Ln(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/).replace("label",WD).replace("href",/<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),$W=Ln(/^!?\[(label)\]\[(ref)\]/).replace("label",WD).replace("ref",l7).getRegex(),jW=Ln(/^!?\[(ref)\](?:\[\])?/).replace("ref",l7).getRegex(),XNe=Ln("reflink|nolink(?!\\()","g").replace("reflink",$W).replace("nolink",jW).getRegex(),d7={_backpedal:Yb,anyPunctuation:VNe,autolink:$Ne,blockSkip:QNe,br:zW,code:LNe,del:Yb,emStrongLDelim:GNe,emStrongRDelimAst:HNe,emStrongRDelimUnd:YNe,escape:BNe,link:KNe,nolink:jW,punctuation:FNe,reflink:$W,reflinkSearch:XNe,tag:WNe,text:MNe,url:Yb},JNe={...d7,link:Ln(/^!?\[(label)\]\((.*?)\)/).replace("label",WD).getRegex(),reflink:Ln(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",WD).getRegex()},n7={...d7,emStrongRDelimAst:qNe,emStrongLDelim:zNe,url:Ln(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\.|[^\\])*?(?:\\.|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/},ZNe={...n7,br:Ln(zW).replace("{2,}","*").getRegex(),text:Ln(n7.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},jD={normal:u7,gfm:ONe,pedantic:kNe},Hb={normal:d7,gfm:n7,breaks:ZNe,pedantic:JNe},eOe={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},BW=e=>eOe[e];function Mp(e,t){if(t){if(Ms.escapeTest.test(e))return e.replace(Ms.escapeReplace,BW)}else if(Ms.escapeTestNoEncode.test(e))return e.replace(Ms.escapeReplaceNoEncode,BW);return e}function LW(e){try{e=encodeURI(e).replace(Ms.percentDecode,"%")}catch{return null}return e}function MW(e,t){let r=e.replace(Ms.findPipe,(i,o,s)=>{let u=!1,p=o;for(;--p>=0&&s[p]==="\\";)u=!u;return u?"|":" |"}),n=r.split(Ms.splitPipe),a=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),t)if(n.length>t)n.splice(t);else for(;n.length<t;)n.push("");for(;a<n.length;a++)n[a]=n[a].trim().replace(Ms.slashPipe,"|");return n}function qb(e,t,r){let n=e.length;if(n===0)return"";let a=0;for(;a<n&&e.charAt(n-a-1)===t;)a++;return e.slice(0,n-a)}function tOe(e,t){if(e.indexOf(t[1])===-1)return-1;let r=0;for(let n=0;n<e.length;n++)if(e[n]==="\\")n++;else if(e[n]===t[0])r++;else if(e[n]===t[1]&&(r--,r<0))return n;return-1}function FW(e,t,r,n,a){let i=t.href,o=t.title||null,s=e[1].replace(a.other.outputLinkReplace,"$1");if(e[0].charAt(0)!=="!"){n.state.inLink=!0;let u={type:"link",raw:r,href:i,title:o,text:s,tokens:n.inlineTokens(s)};return n.state.inLink=!1,u}return{type:"image",raw:r,href:i,title:o,text:s}}function rOe(e,t,r){let n=e.match(r.other.indentCodeCompensation);if(n===null)return t;let a=n[1];return t.split(`
347
347
  `).map(i=>{let o=i.match(r.other.beginningSpace);if(o===null)return i;let[s]=o;return s.length>=a.length?i.slice(a.length):i}).join(`
348
348
  `)}var W0=class{options;rules;lexer;constructor(t){this.options=t||ch}space(t){let r=this.rules.block.newline.exec(t);if(r&&r[0].length>0)return{type:"space",raw:r[0]}}code(t){let r=this.rules.block.code.exec(t);if(r){let n=r[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:r[0],codeBlockStyle:"indented",text:this.options.pedantic?n:qb(n,`
@@ -660,7 +660,7 @@ Please summarize this conversation, covering:
660
660
  5. Remaining tasks, open questions, or next steps
661
661
  Provide the summary in a clear, concise format.`}]})).choices[0]?.message.content??"Unable to generate summary."}Au();f();import{execSync as gM,execFileSync as R$e}from"node:child_process";function Dfe(e){return typeof e=="object"&&e!=null&&"status"in e&&"stdout"in e}function wfe(){try{gM("git rev-parse --is-inside-work-tree",{stdio:"ignore"});let e="";try{e=gM("git diff --color",{encoding:"utf8",maxBuffer:10*1024*1024})}catch(o){if(Dfe(o)&&o.status===1&&typeof o.stdout=="string")e=o.stdout;else throw o}let r=gM("git ls-files --others --exclude-standard",{encoding:"utf8",maxBuffer:10*1024*1024}).split(`
662
662
  `).map(o=>o.trim()).filter(Boolean),n="",a=process.platform==="win32"?"NUL":"/dev/null";for(let o of r)try{R$e("git",["diff","--color","--no-index","--",a,o],{encoding:"utf8",stdio:["ignore","pipe","ignore"],maxBuffer:10*1024*1024})}catch(s){if(Dfe(s)&&s.status===1&&typeof s.stdout=="string")n+=s.stdout;else throw s}return{isGitRepo:!0,diff:`${e}${n}`}}catch{return{isGitRepo:!1,diff:""}}}ul();f();f();function xfe(e){let t=0;for(let r of e)switch(r.type){case"message":{if(r.role!=="user"&&r.role!=="assistant")continue;for(let n of r.content)n.type==="input_text"||n.type==="output_text"?t+=n.text.length:n.type==="refusal"?t+=n.refusal.length:n.type==="input_file"&&(t+=n.filename?.length??0);break}case"function_call":{t+=(r.name?.length||0)+(r.arguments?.length||0);break}case"function_call_output":{t+=r.output.length;break}default:break}return Math.ceil(t/4)}Au();f();var hM={"o1-pro-2025-03-19":{label:"o1 Pro (2025-03-19)",maxContextLength:2e5},o3:{label:"o3",maxContextLength:2e5},"o3-2025-04-16":{label:"o3 (2025-04-16)",maxContextLength:2e5},"codex-mini-latest":{label:"codex-mini-latest",maxContextLength:2e5},"o4-mini":{label:"o4 Mini",maxContextLength:2e5},"gpt-4.1-nano":{label:"GPT-4.1 Nano",maxContextLength:1e6},"gpt-4.1-nano-2025-04-14":{label:"GPT-4.1 Nano (2025-04-14)",maxContextLength:1e6},"o4-mini-2025-04-16":{label:"o4 Mini (2025-04-16)",maxContextLength:2e5},"gpt-4":{label:"GPT-4",maxContextLength:8192},"o1-preview-2024-09-12":{label:"o1 Preview (2024-09-12)",maxContextLength:128e3},"gpt-4.1-mini":{label:"GPT-4.1 Mini",maxContextLength:1e6},"gpt-3.5-turbo-instruct-0914":{label:"GPT-3.5 Turbo Instruct (0914)",maxContextLength:4096},"gpt-4o-mini-search-preview":{label:"GPT-4o Mini Search Preview",maxContextLength:128e3},"gpt-4.1-mini-2025-04-14":{label:"GPT-4.1 Mini (2025-04-14)",maxContextLength:1e6},"chatgpt-4o-latest":{label:"ChatGPT-4o Latest",maxContextLength:128e3},"gpt-3.5-turbo-1106":{label:"GPT-3.5 Turbo (1106)",maxContextLength:16385},"gpt-4o-search-preview":{label:"GPT-4o Search Preview",maxContextLength:128e3},"gpt-4-turbo":{label:"GPT-4 Turbo",maxContextLength:128e3},"gpt-4o-realtime-preview-2024-12-17":{label:"GPT-4o Realtime Preview (2024-12-17)",maxContextLength:128e3},"gpt-3.5-turbo-instruct":{label:"GPT-3.5 Turbo Instruct",maxContextLength:4096},"gpt-3.5-turbo":{label:"GPT-3.5 Turbo",maxContextLength:16385},"gpt-4-turbo-preview":{label:"GPT-4 Turbo Preview",maxContextLength:128e3},"gpt-4o-mini-search-preview-2025-03-11":{label:"GPT-4o Mini Search Preview (2025-03-11)",maxContextLength:128e3},"gpt-4-0125-preview":{label:"GPT-4 (0125) Preview",maxContextLength:128e3},"gpt-4o-2024-11-20":{label:"GPT-4o (2024-11-20)",maxContextLength:128e3},"o3-mini":{label:"o3 Mini",maxContextLength:2e5},"gpt-4o-2024-05-13":{label:"GPT-4o (2024-05-13)",maxContextLength:128e3},"gpt-4-turbo-2024-04-09":{label:"GPT-4 Turbo (2024-04-09)",maxContextLength:128e3},"gpt-3.5-turbo-16k":{label:"GPT-3.5 Turbo 16k",maxContextLength:16385},"o3-mini-2025-01-31":{label:"o3 Mini (2025-01-31)",maxContextLength:2e5},"o1-preview":{label:"o1 Preview",maxContextLength:128e3},"o1-2024-12-17":{label:"o1 (2024-12-17)",maxContextLength:128e3},"gpt-4-0613":{label:"GPT-4 (0613)",maxContextLength:8192},o1:{label:"o1",maxContextLength:128e3},"o1-pro":{label:"o1 Pro",maxContextLength:2e5},"gpt-4.5-preview":{label:"GPT-4.5 Preview",maxContextLength:128e3},"gpt-4.5-preview-2025-02-27":{label:"GPT-4.5 Preview (2025-02-27)",maxContextLength:128e3},"gpt-4o-search-preview-2025-03-11":{label:"GPT-4o Search Preview (2025-03-11)",maxContextLength:128e3},"gpt-4o":{label:"GPT-4o",maxContextLength:128e3},"gpt-4o-mini":{label:"GPT-4o Mini",maxContextLength:128e3},"gpt-4o-2024-08-06":{label:"GPT-4o (2024-08-06)",maxContextLength:128e3},"gpt-4.1":{label:"GPT-4.1",maxContextLength:1e6},"gpt-4.1-2025-04-14":{label:"GPT-4.1 (2025-04-14)",maxContextLength:1e6},"gpt-4o-mini-2024-07-18":{label:"GPT-4o Mini (2024-07-18)",maxContextLength:128e3},"o1-mini":{label:"o1 Mini",maxContextLength:128e3},"gpt-3.5-turbo-0125":{label:"GPT-3.5 Turbo (0125)",maxContextLength:16385},"o1-mini-2024-09-12":{label:"o1 Mini (2024-09-12)",maxContextLength:128e3},"gpt-4-1106-preview":{label:"GPT-4 (1106) Preview",maxContextLength:128e3}};var N$e=2e3,O$e=["o4-mini","o3"];async function k$e(e){if(!P0(e))throw new Error("No API key configured for provider: "+e);try{let r=await B1({provider:e}).models.list(),n=[];for await(let a of r)if(a&&typeof a.id=="string"){let i=a.id;i.startsWith("models/")&&(i=i.replace("models/","")),n.push(i)}return n.sort()}catch{return[]}}async function bC(e){return k$e(e.toLowerCase())}async function Nfe(e,t){if(typeof t!="string"||t.trim()===""||O$e.includes(t))return!0;try{let r=await Promise.race([bC(e),new Promise(n=>setTimeout(()=>n([]),N$e))]);return r.length===0?!0:r.includes(t.trim())}catch{return!0}}function B$e(e){if(e in hM)return hM[e].maxContextLength;let t=e.toLowerCase();return t.includes("32k")?32e3:t.includes("16k")?16e3:t.includes("8k")?8e3:t.includes("4k")?4e3:128e3}function Ofe(e,t){let r=xfe(e),n=B$e(t);return Math.max(0,n-r)/n*100}function Rfe(e){return e.type==="message"&&e.role==="user"}function kfe(e){let t=new Set,r=[];for(let n of e){if(typeof n.id=="string"&&n.id.length>0){if(t.has(n.id))continue;t.add(n.id)}if(Rfe(n)&&r.length>0){let a=r[r.length-1];if(Rfe(a)&&JSON.stringify(a.content)===JSON.stringify(n.content))continue}r.push(n)}return r}f();Au();ul();import Bfe from"fs/promises";import L$e from"os";import Mfe from"path";var Lfe=Mfe.join(L$e.homedir(),".codex","sessions");async function M$e(e,t){await Bfe.mkdir(Lfe,{recursive:!0});let r=new Date().toISOString(),a=`rollout-${r.replace(/[:.]/g,"-").slice(0,10)}-${e}.json`,i=Mfe.join(Lfe,a),o=_u();try{await Bfe.writeFile(i,JSON.stringify({session:{timestamp:r,id:e,instructions:o.instructions},items:t},null,2),"utf8")}catch(s){zt(`error: failed to save rollout to ${i}: ${s}`)}}function Ffe(e,t){M$e(e,t).catch(()=>{})}$0();f();f();f();f();var Y5=Re(pt(),1);function F$e({isSelected:e=!1}){return Y5.default.createElement(be,{marginRight:1},e?Y5.default.createElement(Y,{color:"blue"},Ca.pointer):Y5.default.createElement(Y,null," "))}var Pfe=F$e;f();var Ufe=Re(pt(),1);function P$e({isSelected:e=!1,label:t}){return Ufe.createElement(Y,{color:e?"blue":void 0},t)}var Qfe=P$e;var Hfe=Re(zfe(),1);var bl=Re(pt(),1);f();function wy(e,t){if(!Array.isArray(e))throw new TypeError(`Expected an array, got \`${typeof e}\`.`);if(!Number.isSafeInteger(t))throw new TypeError(`The \`steps\` parameter must be an integer, got ${t}.`);let{length:r}=e;if(r===0)return[...e];let n=(t%r+r)%r;return n===0?[...e]:[...e.slice(-n),...e.slice(0,-n)]}function U$e({items:e=[],isFocused:t=!0,initialIndex:r=0,indicatorComponent:n=Pfe,itemComponent:a=Qfe,limit:i,onSelect:o,onHighlight:s}){let u=typeof i=="number"&&e.length>i,p=u?Math.min(i,e.length):e.length,g=p-1,[_,E]=(0,bl.useState)(r>g?g-r:0),[b,S]=(0,bl.useState)(r?r>g?g:r:0),C=(0,bl.useRef)(e);(0,bl.useEffect)(()=>{(0,Hfe.default)(C.current.map(R=>R.value),e.map(R=>R.value))||(E(0),S(0)),C.current=e},[e]),Zr((0,bl.useCallback)((R,B)=>{if(R==="k"||B.upArrow){let M=(u?p:e.length)-1,Q=b===0,H=u?b:M,W=Q?_+1:_,j=Q?H:b-1;E(W),S(j);let Z=u?wy(e,W).slice(0,p):e;typeof s=="function"&&s(Z[j])}if(R==="j"||B.downArrow){let M=b===(u?p:e.length)-1,Q=u?b:0,H=M?_-1:_,W=M?Q:b+1;E(H),S(W);let j=u?wy(e,H).slice(0,p):e;typeof s=="function"&&s(j[W])}if(B.return){let M=u?wy(e,_).slice(0,p):e;typeof o=="function"&&o(M[b])}},[u,p,_,b,e,o,s]),{isActive:t});let I=u?wy(e,_).slice(0,p):e;return bl.default.createElement(be,{flexDirection:"column"},I.map((R,B)=>{let M=B===b;return bl.default.createElement(be,{key:R.key??String(R.value)},bl.default.createElement(n,{isSelected:M}),bl.default.createElement(a,{...R,isSelected:M}))}))}var V5=U$e;var Wl=Re(pt(),1);function L1({title:e,description:t,initialItems:r,currentValue:n,limit:a=10,onSelect:i,onExit:o}){let[s,u]=(0,Wl.useState)(""),[p,g]=(0,Wl.useState)(r);Wl.default.useEffect(()=>{g(r)},[r]),Zr((I,R)=>{R.escape&&o()});let _=s.toLowerCase(),S=(_.length===0?p:p.filter(I=>I.label.toLowerCase().includes(_))).sort((I,R)=>{if(I.value===n)return-1;if(R.value===n)return 1;if(_.length===0)return 0;let B=I.label.toLowerCase().indexOf(_),M=R.label.toLowerCase().indexOf(_);return B!==M?B-M:I.label.localeCompare(R.label)});(process.env.DEBUG_TYPEAHEAD==="1"||process.env.DEBUG_TYPEAHEAD==="true")&&console.log("[TypeaheadOverlay] value=",s,"items=",p.length,"visible=",S.map(I=>I.label));let C=S.findIndex(I=>I.value===n);return Wl.default.createElement(be,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:80},Wl.default.createElement(be,{paddingX:1},Wl.default.createElement(Y,{bold:!0},e)),Wl.default.createElement(be,{flexDirection:"column",paddingX:1,gap:1},t,Wl.default.createElement(Hm,{value:s,onChange:u,onSubmit:I=>{if(S.length===0){let R=I.trim();R?i(R):o()}}}),S.length>0&&Wl.default.createElement(V5,{limit:a,items:S,initialIndex:C===-1?0:C,isFocused:!0,onSelect:I=>{I.value&&i(I.value)}})),Wl.default.createElement(be,{paddingX:1},Wl.default.createElement(Y,{dimColor:!0},"type to search \xB7 enter to confirm \xB7 esc to cancel")))}gD();var SC=Re(pt(),1);function _M({currentMode:e,onSelect:t,onExit:r}){let n=SC.default.useMemo(()=>Object.values(D0).map(a=>({label:a,value:a})),[]);return SC.default.createElement(L1,{title:"Switch approval mode",description:SC.default.createElement(Y,null,"Current mode: ",SC.default.createElement(Y,{color:"greenBright"},e)),initialItems:n,currentValue:e,onSelect:t,onExit:r})}f();var ld=Re(pt(),1);function AM({diffText:e,onExit:t}){let r=e.length>0?e.split(`
663
- `):["(no changes)"],[n,a]=(0,ld.useState)(0),i=process.stdout.rows||24,u=Math.max(4,i-2-1);Zr((E,b)=>{if(b.escape||E==="q"){t();return}b.downArrow||E==="j"?a(S=>Math.min(r.length-1,S+1)):b.upArrow||E==="k"?a(S=>Math.max(0,S-1)):b.pageDown?a(S=>Math.min(r.length-1,S+u)):b.pageUp?a(S=>Math.max(0,S-u)):E==="g"?a(0):E==="G"&&a(r.length-1)});let p=Math.min(Math.max(0,n-Math.floor(u/2)),Math.max(0,r.length-u)),g=r.slice(p,p+u);function _(E,b){let S;return E.startsWith("+")?S="green":E.startsWith("-")?S="red":(E.startsWith("@@")||E.startsWith("diff --git"))&&(S="cyan"),ld.default.createElement(Y,{key:b,color:S,wrap:"truncate-end"},E===""?" ":E)}return ld.default.createElement(be,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:Math.min(120,process.stdout.columns||120)},ld.default.createElement(be,{paddingX:1},ld.default.createElement(Y,{bold:!0},"Working tree diff (",r.length," lines)")),ld.default.createElement(be,{flexDirection:"column",paddingX:1},g.map((E,b)=>_(E,p+b))),ld.default.createElement(be,{paddingX:1},ld.default.createElement(Y,{dimColor:!0},"esc Close \u2191\u2193 Scroll PgUp/PgDn g/G First/Last")))}f();var Kr=Re(pt(),1);function EM({onExit:e}){return Zr((t,r)=>{(r.escape||t==="q")&&e()}),Kr.default.createElement(be,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:80},Kr.default.createElement(be,{paddingX:1},Kr.default.createElement(Y,{bold:!0},"Available commands")),Kr.default.createElement(be,{flexDirection:"column",paddingX:1,paddingTop:1},Kr.default.createElement(Y,{bold:!0,dimColor:!0},"Slash\u2011commands"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/help")," \u2013 show this help overlay"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/model")," \u2013 switch the LLM model in\u2011session"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/approval")," \u2013 switch auto\u2011approval mode"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/history")," \u2013 show command & file history for this session"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/clear")," \u2013 clear screen & context"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/clearhistory")," \u2013 clear command history"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/bug")," \u2013 generate a prefilled GitHub issue URL with session log"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/diff")," \u2013 view working tree git diff"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/compact")," \u2013 condense context into a summary"),Kr.default.createElement(be,{marginTop:1},Kr.default.createElement(Y,{bold:!0,dimColor:!0},"Keyboard shortcuts")),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"yellow"},"Enter")," \u2013 send message"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"yellow"},"Ctrl+J")," \u2013 insert newline"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"yellow"},"Up/Down")," \u2013 scroll prompt history"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"yellow"},"Esc",Kr.default.createElement(Y,{dimColor:!0},"(\u27152)"))," ","\u2013 interrupt current action"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"yellow"},"Ctrl+C")," \u2013 quit Codex")),Kr.default.createElement(be,{paddingX:1},Kr.default.createElement(Y,{dimColor:!0},"esc or q to close")))}f();var Kl=Re(pt(),1);function yM({items:e,onExit:t}){let[r,n]=(0,Kl.useState)("commands"),[a,i]=(0,Kl.useState)(0),{commands:o,files:s}=(0,Kl.useMemo)(()=>Q$e(e),[e]),u=r==="commands"?o:s;Zr((C,I)=>{if(I.escape){t();return}if(C==="c"){n("commands"),i(0);return}if(C==="f"){n("files"),i(0);return}I.downArrow||C==="j"?i(R=>Math.min(u.length-1,R+1)):I.upArrow||C==="k"?i(R=>Math.max(0,R-1)):I.pageDown?i(R=>Math.min(u.length-1,R+10)):I.pageUp?i(R=>Math.max(0,R-10)):C==="g"?i(0):C==="G"&&i(u.length-1)});let p=process.stdout.rows||24,E=Math.max(4,p-2-1),b=Math.min(Math.max(0,a-Math.floor(E/2)),Math.max(0,u.length-E)),S=u.slice(b,b+E);return Kl.default.createElement(be,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:100},Kl.default.createElement(be,{paddingX:1},Kl.default.createElement(Y,{bold:!0},r==="commands"?"Commands run":"Files touched"," (",u.length,")")),Kl.default.createElement(be,{flexDirection:"column",paddingX:1},S.map((C,I)=>{let R=b+I,B=R===a;return Kl.default.createElement(Y,{key:R,color:B?"cyan":void 0},B?"\u203A ":" ",C)})),Kl.default.createElement(be,{paddingX:1},Kl.default.createElement(Y,{dimColor:!0},"esc Close \u2191\u2193 Scroll PgUp/PgDn g/G First/Last c Commands f Files")))}function Q$e(e){let t=[],r=new Set;for(let n of e){let a=G$e(n);if(a){t.push(a);continue}if(n.type!=="function_call")continue;let{name:i,arguments:o}=n;if(typeof o!="string"){typeof i=="string"&&i.length>0&&t.push(i);continue}let s;try{s=JSON.parse(o)}catch{s=void 0}let u=s,p=Array.isArray(u?.cmd)?u.cmd:Array.isArray(u?.command)?u.command:void 0;if(p&&p.length>0){t.push(z$e(p,r));continue}typeof i=="string"&&i.length>0&&t.push(H$e(i,s,r))}return{commands:t,files:Array.from(r)}}function G$e(e){if(e.type==="message"&&e.role==="user"){let t=e.content??[],r=[];if(Array.isArray(t)){for(let n of t)if(n&&typeof n=="object"&&"text"in n){let a=n.text;typeof a=="string"&&a.length>0&&r.push(a)}}if(r.length>0){let n=r.join(" ");return n.length>120?`> ${n.slice(0,117)}\u2026`:`> ${n}`}}return null}function z$e(e,t){let r=e.join(" ");for(let n of e)!n.startsWith("-")&&n.includes("/")&&t.add(n);if(e[0]==="apply_patch"||e.includes("apply_patch")){let n=e.find(a=>a.includes("*** Begin Patch"));if(typeof n=="string"){let a=n.split(`
663
+ `):["(no changes)"],[n,a]=(0,ld.useState)(0),i=process.stdout.rows||24,u=Math.max(4,i-2-1);Zr((E,b)=>{if(b.escape||E==="q"){t();return}b.downArrow||E==="j"?a(S=>Math.min(r.length-1,S+1)):b.upArrow||E==="k"?a(S=>Math.max(0,S-1)):b.pageDown?a(S=>Math.min(r.length-1,S+u)):b.pageUp?a(S=>Math.max(0,S-u)):E==="g"?a(0):E==="G"&&a(r.length-1)});let p=Math.min(Math.max(0,n-Math.floor(u/2)),Math.max(0,r.length-u)),g=r.slice(p,p+u);function _(E,b){let S;return E.startsWith("+")?S="green":E.startsWith("-")?S="red":(E.startsWith("@@")||E.startsWith("diff --git"))&&(S="cyan"),ld.default.createElement(Y,{key:b,color:S,wrap:"truncate-end"},E===""?" ":E)}return ld.default.createElement(be,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:Math.min(120,process.stdout.columns||120)},ld.default.createElement(be,{paddingX:1},ld.default.createElement(Y,{bold:!0},"Working tree diff (",r.length," lines)")),ld.default.createElement(be,{flexDirection:"column",paddingX:1},g.map((E,b)=>_(E,p+b))),ld.default.createElement(be,{paddingX:1},ld.default.createElement(Y,{dimColor:!0},"esc Close \u2191\u2193 Scroll PgUp/PgDn g/G First/Last")))}f();var Kr=Re(pt(),1);function EM({onExit:e}){return Zr((t,r)=>{(r.escape||t==="q")&&e()}),Kr.default.createElement(be,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:80},Kr.default.createElement(be,{paddingX:1},Kr.default.createElement(Y,{bold:!0},"Available commands")),Kr.default.createElement(be,{flexDirection:"column",paddingX:1,paddingTop:1},Kr.default.createElement(Y,{bold:!0,dimColor:!0},"Slash\u2011commands"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/help")," \u2013 show this help overlay"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/model")," \u2013 switch the LLM model in\u2011session"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/approval")," \u2013 switch auto\u2011approval mode"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/history")," \u2013 show command & file history for this session"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/clear")," \u2013 clear screen & context"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/clearhistory")," \u2013 clear command history"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/bug")," \u2013 generate a prefilled GitHub issue URL with session log"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/diff")," \u2013 view working tree git diff"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"cyan"},"/compact")," \u2013 condense context into a summary"),Kr.default.createElement(be,{marginTop:1},Kr.default.createElement(Y,{bold:!0,dimColor:!0},"Keyboard shortcuts")),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"yellow"},"Enter")," \u2013 send message"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"yellow"},"Ctrl+J")," \u2013 insert newline"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"yellow"},"Up/Down")," \u2013 scroll prompt history"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"yellow"},"Esc",Kr.default.createElement(Y,{dimColor:!0},"(\u27152)"))," ","\u2013 interrupt current action"),Kr.default.createElement(Y,null,Kr.default.createElement(Y,{color:"yellow"},"Ctrl+C")," \u2013 quit Codex")),Kr.default.createElement(be,{paddingX:1},Kr.default.createElement(Y,{dimColor:!0},"Esc or q to close")))}f();var Kl=Re(pt(),1);function yM({items:e,onExit:t}){let[r,n]=(0,Kl.useState)("commands"),[a,i]=(0,Kl.useState)(0),{commands:o,files:s}=(0,Kl.useMemo)(()=>Q$e(e),[e]),u=r==="commands"?o:s;Zr((C,I)=>{if(I.escape){t();return}if(C==="c"){n("commands"),i(0);return}if(C==="f"){n("files"),i(0);return}I.downArrow||C==="j"?i(R=>Math.min(u.length-1,R+1)):I.upArrow||C==="k"?i(R=>Math.max(0,R-1)):I.pageDown?i(R=>Math.min(u.length-1,R+10)):I.pageUp?i(R=>Math.max(0,R-10)):C==="g"?i(0):C==="G"&&i(u.length-1)});let p=process.stdout.rows||24,E=Math.max(4,p-2-1),b=Math.min(Math.max(0,a-Math.floor(E/2)),Math.max(0,u.length-E)),S=u.slice(b,b+E);return Kl.default.createElement(be,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:100},Kl.default.createElement(be,{paddingX:1},Kl.default.createElement(Y,{bold:!0},r==="commands"?"Commands run":"Files touched"," (",u.length,")")),Kl.default.createElement(be,{flexDirection:"column",paddingX:1},S.map((C,I)=>{let R=b+I,B=R===a;return Kl.default.createElement(Y,{key:R,color:B?"cyan":void 0},B?"\u203A ":" ",C)})),Kl.default.createElement(be,{paddingX:1},Kl.default.createElement(Y,{dimColor:!0},"esc Close \u2191\u2193 Scroll PgUp/PgDn g/G First/Last c Commands f Files")))}function Q$e(e){let t=[],r=new Set;for(let n of e){let a=G$e(n);if(a){t.push(a);continue}if(n.type!=="function_call")continue;let{name:i,arguments:o}=n;if(typeof o!="string"){typeof i=="string"&&i.length>0&&t.push(i);continue}let s;try{s=JSON.parse(o)}catch{s=void 0}let u=s,p=Array.isArray(u?.cmd)?u.cmd:Array.isArray(u?.command)?u.command:void 0;if(p&&p.length>0){t.push(z$e(p,r));continue}typeof i=="string"&&i.length>0&&t.push(H$e(i,s,r))}return{commands:t,files:Array.from(r)}}function G$e(e){if(e.type==="message"&&e.role==="user"){let t=e.content??[],r=[];if(Array.isArray(t)){for(let n of t)if(n&&typeof n=="object"&&"text"in n){let a=n.text;typeof a=="string"&&a.length>0&&r.push(a)}}if(r.length>0){let n=r.join(" ");return n.length>120?`> ${n.slice(0,117)}\u2026`:`> ${n}`}}return null}function z$e(e,t){let r=e.join(" ");for(let n of e)!n.startsWith("-")&&n.includes("/")&&t.add(n);if(e[0]==="apply_patch"||e.includes("apply_patch")){let n=e.find(a=>a.includes("*** Begin Patch"));if(typeof n=="string"){let a=n.split(`
664
664
  `);for(let i of a){let o=i.match(/^[-+]{3} [ab]\/(.+)$/);o&&o[1]&&t.add(o[1])}}}return r}function H$e(e,t,r){let n=e;if(t&&typeof t=="object"){let a=["path","file","filepath","filename","pattern"];for(let i of a){let o=t[i];if(typeof o=="string"){n+=` ${o}`,o.includes("/")&&r.add(o);break}}}return n}f();var Wn=Re(pt(),1);function vM({currentModel:e,providers:t={},currentProvider:r="openai",hasLastResponse:n,onSelect:a,onSelectProvider:i,onExit:o}){let[s,u]=(0,Wn.useState)([]),[p,g]=(0,Wn.useState)(Object.values(t).map(C=>({label:C.name,value:C.name}))),[_,E]=(0,Wn.useState)("model"),[b,S]=(0,Wn.useState)(!0);return(0,Wn.useEffect)(()=>{S(!0),(async()=>{try{let C=await bC(r);u(C.map(I=>({label:I,value:I})))}catch{}finally{S(!1)}})()},[r]),Zr((C,I)=>{n&&(I.escape||I.return)?o():n||I.tab&&E(_==="model"?"provider":"model")}),n?Wn.default.createElement(be,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:80},Wn.default.createElement(be,{paddingX:1},Wn.default.createElement(Y,{bold:!0,color:"red"},"Unable to switch model")),Wn.default.createElement(be,{paddingX:1},Wn.default.createElement(Y,null,"You can only pick a model before the assistant sends its first response. To use a different model please start a new chat.")),Wn.default.createElement(be,{paddingX:1},Wn.default.createElement(Y,{dimColor:!0},"press esc or enter to close"))):_==="provider"?Wn.default.createElement(L1,{title:"Select provider",description:Wn.default.createElement(be,{flexDirection:"column"},Wn.default.createElement(Y,null,"Current provider:"," ",Wn.default.createElement(Y,{color:"greenBright"},r)),Wn.default.createElement(Y,{dimColor:!0},"press tab to switch to model selection")),initialItems:p,currentValue:r,onSelect:C=>{i&&(i(C),E("model"))},onExit:o}):Wn.default.createElement(L1,{title:"Select model",description:Wn.default.createElement(be,{flexDirection:"column"},Wn.default.createElement(Y,null,"Current model: ",Wn.default.createElement(Y,{color:"greenBright"},e)),Wn.default.createElement(Y,null,"Current provider: ",Wn.default.createElement(Y,{color:"greenBright"},r)),b&&Wn.default.createElement(Y,{color:"yellow"},"Loading models..."),Wn.default.createElement(Y,{dimColor:!0},"press tab to switch to provider selection")),initialItems:s,currentValue:e,onSelect:C=>a(s?.map(I=>I.value),C),onExit:o})}f();import qfe from"fs/promises";var cd=Re(pt(),1);import q$e from"os";import Vfe from"path";var Yfe=Vfe.join(q$e.homedir(),".codex","sessions");async function Y$e(){try{let e=await qfe.readdir(Yfe),t=[];for(let r of e){if(!r.endsWith(".json"))continue;let n=Vfe.join(Yfe,r);try{let a=await qfe.readFile(n,"utf-8"),i=JSON.parse(a),o=Array.isArray(i.items)?i.items:[],u=o.find(_=>_?.type==="message"&&_.role==="user")?.content?.[0]?.text?.replace(/\n/g," ").slice(0,16)??"",p=o.filter(_=>_?.type==="message"&&_.role==="user").length,g=o.filter(_=>_?.type==="function_call").length;t.push({path:n,timestamp:i.session?.timestamp||"",userMessages:p,toolCalls:g,firstMessage:u})}catch{}}return t.sort((r,n)=>n.timestamp.localeCompare(r.timestamp)),t}catch{return[]}}function CC({onView:e,onResume:t,onExit:r}){let[n,a]=(0,cd.useState)([]),[i,o]=(0,cd.useState)("view");return(0,cd.useEffect)(()=>{(async()=>{let u=(await Y$e()).map(p=>{let g=p.timestamp?new Date(p.timestamp).toLocaleString(void 0,{dateStyle:"short",timeStyle:"short"}):"",_=p.firstMessage?.slice(0,50);return{label:`${g} \xB7 ${p.userMessages} msgs/${p.toolCalls} tools \xB7 ${_}`,value:p.path}});a(u)})()},[]),Zr((s,u)=>{u.tab&&o(p=>p==="view"?"resume":"view")}),cd.default.createElement(L1,{title:i==="view"?"View session":"Resume session",description:cd.default.createElement(be,{flexDirection:"column"},cd.default.createElement(Y,null,i==="view"?"press enter to view":"press enter to resume"),cd.default.createElement(Y,{dimColor:!0},"tab to toggle mode \xB7 esc to cancel")),initialItems:n,onSelect:s=>{i==="view"?e(s):t(s)},onExit:r})}import V$e from"fs/promises";var Nr=Re(pt(),1);import{spawn as $$e}from"node:child_process";import{inspect as j$e}from"util";var W$e={suggest:void 0,"auto-edit":"greenBright","full-auto":"green"};async function K$e(e,t,r,n){try{let a=B1(n),i=Lp(e);return(await a.chat.completions.create({model:t,...r?{service_tier:"flex"}:{},messages:[{role:"system",content:"You are an expert in shell commands and terminal operations. Your task is to provide detailed, accurate explanations of shell commands that users are considering executing. Break down each part of the command, explain what it does, identify any potential risks or side effects, and explain why someone might want to run it. Be specific about what files or systems will be affected. If the command could potentially be harmful, make sure to clearly highlight those risks."},{role:"user",content:`Please explain this shell command in detail: \`${i}\`
665
665
 
666
666
  Provide a structured explanation that includes:
@@ -795,7 +795,7 @@ Thumbs.db
795
795
  This will become an error in a future version of the SDK.`),{properties:{...n.properties,[a]:s},required:i.isOptional()&&!t.openaiStrictMode?n.required:[...n.required,a]})},{properties:{},required:[]}),additionalProperties:DKe(e,t)};return r.required.length||delete r.required,r}f();var I1e=(e,t)=>{if(t.currentPath.toString()===t.propertyPath?.toString())return mr(e.innerType._def,t);let r=mr(e.innerType._def,{...t,currentPath:[...t.currentPath,"anyOf","1"]});return r?{anyOf:[{not:{}},r]}:{}};f();var D1e=(e,t)=>{if(t.pipeStrategy==="input")return mr(e.in._def,t);if(t.pipeStrategy==="output")return mr(e.out._def,t);let r=mr(e.in._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),n=mr(e.out._def,{...t,currentPath:[...t.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(a=>a!==void 0)}};f();function w1e(e,t){return mr(e.type._def,t)}f();function x1e(e,t){let n={type:"array",uniqueItems:!0,items:mr(e.valueType._def,{...t,currentPath:[...t.currentPath,"items"]})};return e.minSize&&mn(n,"minItems",e.minSize.value,e.minSize.message,t),e.maxSize&&mn(n,"maxItems",e.maxSize.value,e.maxSize.message,t),n}f();function R1e(e,t){return e.rest?{type:"array",minItems:e.items.length,items:e.items.map((r,n)=>mr(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:mr(e.rest._def,{...t,currentPath:[...t.currentPath,"additionalItems"]})}:{type:"array",minItems:e.items.length,maxItems:e.items.length,items:e.items.map((r,n)=>mr(r._def,{...t,currentPath:[...t.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}f();function N1e(){return{not:{}}}f();function O1e(){return{}}f();var k1e=(e,t)=>mr(e.innerType._def,t);function mr(e,t,r=!1){let n=t.seen.get(e);if(t.override){let o=t.override?.(e,t,n,r);if(o!==t1e)return o}if(n&&!r){let o=wKe(n,t);if(o!==void 0)return"$ref"in o&&t.seenRefs.add(o.$ref),o}let a={def:e,path:t.currentPath,jsonSchema:void 0};t.seen.set(e,a);let i=RKe(e,e.typeName,t,r);return i&&NKe(e,t,i),a.jsonSchema=i,i}var wKe=(e,t)=>{switch(t.$refStrategy){case"root":return{$ref:e.path.join("/")};case"extract-to-root":let r=e.path.slice(t.basePath.length+1).join("_");return r!==t.name&&t.nameStrategy==="duplicate-ref"&&(t.definitions[r]=e.def),{$ref:[...t.basePath,t.definitionPath,r].join("/")};case"relative":return{$ref:xKe(t.currentPath,e.path)};case"none":case"seen":return e.path.length<t.currentPath.length&&e.path.every((n,a)=>t.currentPath[a]===n)?(console.warn(`Recursive reference detected at ${t.currentPath.join("/")}! Defaulting to any`),{}):t.$refStrategy==="seen"?{}:void 0}},xKe=(e,t)=>{let r=0;for(;r<e.length&&r<t.length&&e[r]===t[r];r++);return[(e.length-r).toString(),...t.slice(r)].join("/")},RKe=(e,t,r,n)=>{switch(t){case at.ZodString:return dw(e,r);case at.ZodNumber:return C1e(e,r);case at.ZodObject:return T1e(e,r);case at.ZodBigInt:return s1e(e,r);case at.ZodBoolean:return l1e();case at.ZodDate:return qM(e,r);case at.ZodUndefined:return N1e();case at.ZodNull:return y1e(r);case at.ZodArray:return o1e(e,r);case at.ZodUnion:case at.ZodDiscriminatedUnion:return b1e(e,r);case at.ZodIntersection:return m1e(e,r);case at.ZodTuple:return R1e(e,r);case at.ZodRecord:return fw(e,r);case at.ZodLiteral:return g1e(e,r);case at.ZodEnum:return f1e(e);case at.ZodNativeEnum:return A1e(e);case at.ZodNullable:return S1e(e,r);case at.ZodOptional:return I1e(e,r);case at.ZodMap:return _1e(e,r);case at.ZodSet:return x1e(e,r);case at.ZodLazy:return mr(e.getter()._def,r);case at.ZodPromise:return w1e(e,r);case at.ZodNaN:case at.ZodNever:return E1e();case at.ZodEffects:return d1e(e,r,n);case at.ZodAny:return i1e();case at.ZodUnknown:return O1e();case at.ZodDefault:return p1e(e,r);case at.ZodBranded:return c1e(e,r);case at.ZodReadonly:return k1e(e,r);case at.ZodCatch:return u1e(e,r);case at.ZodPipeline:return D1e(e,r);case at.ZodFunction:case at.ZodVoid:case at.ZodSymbol:return;default:return(a=>{})(t)}},NKe=(e,t,r)=>(e.description&&(r.description=e.description,t.markdownDescription&&(r.markdownDescription=e.description)),r);f();var B1e=(e,t)=>{let r=a1e(t),n=typeof t=="string"?t:t?.nameStrategy==="title"?void 0:t?.name,a=mr(e._def,n===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,n]},!1)??{},i=typeof t=="object"&&t.name!==void 0&&t.nameStrategy==="title"?t.name:void 0;i!==void 0&&(a.title=i);let o=(()=>{if(n1e(r.definitions))return;let u={},p=new Set;for(let g=0;g<500;g++){let _=Object.entries(r.definitions).filter(([E])=>!p.has(E));if(_.length===0)break;for(let[E,b]of _)u[E]=mr(PC(b),{...r,currentPath:[...r.basePath,r.definitionPath,E]},!0)??{},p.add(E)}return u})(),s=n===void 0?o?{...a,[r.definitionPath]:o}:a:r.nameStrategy==="duplicate-ref"?{...a,...o||r.seenRefs.size?{[r.definitionPath]:{...o,...r.seenRefs.size?{[n]:a}:void 0}}:void 0}:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,n].join("/"),[r.definitionPath]:{...o,[n]:a}};return r.target==="jsonSchema7"?s.$schema="http://json-schema.org/draft-07/schema#":r.target==="jsonSchema2019-09"&&(s.$schema="https://json-schema.org/draft/2019-09/schema#"),s};function OKe(e,t){return B1e(e,{openaiStrictMode:!0,name:t.name,nameStrategy:"duplicate-ref",$refStrategy:"extract-to-root",nullableStrategy:"property"})}function L1e(e,t,r){return efe({type:"json_schema",json_schema:{...r,name:t,strict:!0,schema:OKe(e,{name:t})}},n=>e.parse(JSON.parse(n)))}var Je=Re(pt(),1);import mw from"path";var kKe=2e6,F1e="__codex_singlepass_prompt_history";function BKe(){try{if(typeof localStorage<"u"){let e=localStorage.getItem(F1e);if(e)return JSON.parse(e)}}catch{}try{if(process&&process.env&&process.env.HOME){let e=mw.join(process.env.HOME,".codex_singlepass_history.json");if(Qy.existsSync(e))return JSON.parse(Qy.readFileSync(e,"utf8"))}}catch{}return[]}function LKe(e){try{typeof localStorage<"u"&&localStorage.setItem(F1e,JSON.stringify(e))}catch{}try{if(process&&process.env&&process.env.HOME){let t=mw.join(process.env.HOME,".codex_singlepass_history.json");Qy.writeFileSync(t,JSON.stringify(e),"utf8")}}catch{}}function MKe({text:e="Working"}){let[t,r]=(0,Je.useState)("");return(0,Je.useEffect)(()=>{let n=setInterval(()=>{r(a=>a.length<3?a+".":"")},400);return()=>clearInterval(n)},[]),Je.default.createElement(be,{gap:2},Je.default.createElement(RC,{type:"ball"}),Je.default.createElement(Y,null,e,t))}function FKe({rootPath:e,files:t,contextLimit:r,showStruct:n=!1}){let a=Je.default.useMemo(()=>n?Pme(e,t.map(o=>o.path)):null,[n,e,t]),i=t.reduce((o,s)=>o+s.content.length,0);return Je.default.createElement(be,{flexDirection:"column"},Je.default.createElement(be,{flexDirection:"column",borderStyle:"round",borderColor:"gray",width:80,paddingX:1},Je.default.createElement(Y,null,Je.default.createElement(Y,{color:"magentaBright"},"\u21B3")," ",Je.default.createElement(Y,{bold:!0},"Directory:")," ",e),Je.default.createElement(Y,null,Je.default.createElement(Y,{color:"magentaBright"},"\u21B3")," ",Je.default.createElement(Y,{bold:!0},"Paths in context:")," ",e," (",t.length," files)"),Je.default.createElement(Y,null,Je.default.createElement(Y,{color:"magentaBright"},"\u21B3")," ",Je.default.createElement(Y,{bold:!0},"Context size:")," ",i," / ",r," ( ~",(i/r*100).toFixed(2),"% )"),n?Je.default.createElement(Y,null,Je.default.createElement(Y,{color:"magentaBright"},"\u21B3"),Je.default.createElement(Y,{bold:!0},"Context structure:"),Je.default.createElement(Y,null,a)):Je.default.createElement(Y,null,Je.default.createElement(Y,{color:"magentaBright"},"\u21B3")," ",Je.default.createElement(Y,{bold:!0},"Context structure:")," ",Je.default.createElement(Y,{dimColor:!0},"Hidden. Type ",Je.default.createElement(Y,{color:"cyan"},"/context")," to show it.")),i>r?Je.default.createElement(Y,{color:"red"},"Files exceed context limit. See breakdown below."):null))}function PKe({summary:e,diffs:t}){return Je.default.createElement(be,{flexDirection:"column",marginTop:1},Je.default.createElement(Y,{color:"yellow",bold:!0},"Summary:"),Je.default.createElement(Y,null,e),Je.default.createElement(Y,{color:"cyan",bold:!0},"Proposed Diffs:"),Je.default.createElement(Y,null,t))}function UKe({message:e,onSubmit:t,onCtrlC:r}){let[n,a]=(0,Je.useState)(""),[i]=(0,Je.useState)(()=>BKe()),[o,s]=(0,Je.useState)(null),[u,p]=(0,Je.useState)(""),[,g]=(0,Je.useState)(!1);return Zr((_,E)=>{if(E.ctrl&&(_==="c"||_==="C")||_==="")r?r():process.exit(0);else if(E.return){if(n.trim()!==""){let b=i[i.length-1]===n?i:[...i,n];LKe(b.slice(-50))}t(n.trim())}else if(E.upArrow){if(i.length>0){o==null&&p(n);let b;o==null?b=i.length-1:b=Math.max(0,o-1),s(b),a(i[b]??"")}}else if(E.downArrow){if(o==null)return;let b=o+1;b>=i.length?(s(null),a(u)):(s(b),a(i[b]??""))}else(_==="/context"||_===":context")&&g(!0)}),Je.default.createElement(be,{flexDirection:"column"},Je.default.createElement(be,null,Je.default.createElement(Y,null,e),Je.default.createElement(Hm,{value:n,onChange:a,placeholder:"Type here\u2026",showCursor:!0,focus:!0})))}function QKe({message:e,onResult:t}){return Zr((r,n)=>{n.return||r.toLowerCase()==="y"?t(!0):(r.toLowerCase()==="n"||n.escape)&&t(!1)}),Je.default.createElement(be,{gap:1},Je.default.createElement(Y,null,e," [y/N] "))}function M1e({onResult:e}){return Zr((t,r)=>{t.toLowerCase()==="y"||r.return?e(!0):(t.toLowerCase()==="n"||r.escape)&&e(!1)}),Je.default.createElement(be,{gap:1},Je.default.createElement(Y,null,"Do you want to apply another edit? [y/N] "))}function P1e({originalPrompt:e,config:t,rootPath:r,onExit:n}){let a=Zg(),[i,o]=(0,Je.useState)("init"),[,s]=(0,Je.useState)(e??""),[u,p]=(0,Je.useState)([]),[g,_]=(0,Je.useState)({summary:"",diffs:"",ops:[]}),[,E]=(0,Je.useState)(!1),[b,S]=(0,Je.useState)([]),[C,I]=(0,Je.useState)(!1),[R,B]=(0,Je.useState)(!1),M=kKe,Q=(0,Je.useRef)("");(0,Je.useEffect)(()=>{(async()=>{let j=Fme(),Z=await Ume(r,j);p(Z)})()},[r]),(0,Je.useEffect)(()=>{u.length&&o("prompt")},[u]);async function H(j){s(j),E(!0),o("thinking");try{let Z=Bme({prompt:j,input_paths:[r],input_paths_structure:"(omitted for brevity in single pass mode)",files:u}),ce=(await B1(t).beta.chat.completions.parse({model:t.model,...t.flexMode?{service_tier:"flex"}:{},messages:[{role:"user",content:Z}],response_format:L1e(Zme,"schema")})).choices[0]?.message?.parsed??null;if(E(!1),!ce||!Array.isArray(ce.ops)){o("noops");return}let Qe={};for(let We of u)Qe[We.path]=We.content;let[Ne,je]=Ome(ce,Qe);if(!je.length){o("noops");return}let ve=kme(je,Qe);_({summary:ve,diffs:Ne,ops:je}),S(je),o("confirm")}catch{E(!1),o("error")}}async function W(j){for(let Z of j)if(Z.delete)try{await Kf.unlink(Z.path)}catch{}else if(Z.move_to){let q=Z.updated_full_content||"";try{await Kf.mkdir(mw.dirname(Z.move_to),{recursive:!0}),await Kf.writeFile(Z.move_to,q,"utf-8")}catch{}try{await Kf.unlink(Z.path)}catch{}}else{let q=Z.updated_full_content||"";try{await Kf.mkdir(mw.dirname(Z.path),{recursive:!0}),await Kf.writeFile(Z.path,q,"utf-8")}catch{}}o("applied")}return Zr((j,Z)=>{i==="applied"?o("prompt"):(Z.ctrl&&(j==="c"||j==="C")||j==="")&&(i==="thinking"?o("interrupted"):i==="prompt"&&(a.exit(),n&&n()))}),C?(setTimeout(()=>{n&&n(),a.exit()},100),Je.default.createElement(Y,null,"Session complete.")):i==="init"?Je.default.createElement(be,{flexDirection:"column"},Je.default.createElement(Y,null,"Directory: ",r),Je.default.createElement(Y,{color:"gray"},"Loading file context\u2026")):i==="error"?Je.default.createElement(be,{flexDirection:"column"},Je.default.createElement(Y,{color:"red"},"Error calling OpenAI API."),Je.default.createElement(M1e,{onResult:j=>{j?o("prompt"):I(!0)}})):i==="noops"?Je.default.createElement(be,{flexDirection:"column"},Je.default.createElement(Y,{color:"yellow"},"No valid operations returned."),Je.default.createElement(M1e,{onResult:j=>{j?o("prompt"):I(!0)}})):i==="applied"?Je.default.createElement(be,{flexDirection:"column"},Je.default.createElement(Y,{color:"green"},"Changes have been applied."),Je.default.createElement(Y,{color:"gray"},"Press any key to continue\u2026")):i==="thinking"?Je.default.createElement(MKe,null):i==="interrupted"?(Q.current="",setTimeout(()=>o("prompt"),250),Je.default.createElement(be,{flexDirection:"column"},Je.default.createElement(Y,{color:"red"},"Interrupted. Press Enter to return to prompt mode."))):i==="prompt"?Je.default.createElement(be,{flexDirection:"column",gap:1},Je.default.createElement(be,{borderStyle:"round",flexDirection:"column",paddingX:1,width:80},Je.default.createElement(Y,null,Je.default.createElement(Y,{bold:!0,color:"magenta"},"OpenAI ",Je.default.createElement(Y,{bold:!0},"Codex"))," ",Je.default.createElement(Y,{dimColor:!0},"(full context mode)")),Je.default.createElement(Y,null,Je.default.createElement(Y,{bold:!0,color:"greenBright"},"\u2192")," ",Je.default.createElement(Y,{bold:!0},"Model:")," ",t.model)),Je.default.createElement(FKe,{rootPath:r,files:u,contextLimit:M,showStruct:R}),Je.default.createElement(be,{borderStyle:"round",paddingX:1},Je.default.createElement(UKe,{message:">>> ",onSubmit:j=>{if(j==="/context"||j===":context"){B(!0),s("");return}else B(!1);j&&H(j)},onCtrlC:()=>{o("interrupted")}})),Je.default.createElement(be,{marginTop:1},Je.default.createElement(Y,{dimColor:!0},"Type /context to display the directory structure."),Je.default.createElement(Y,{dimColor:!0}," Press Ctrl+C at any time to interrupt / exit."))):i==="confirm"?Je.default.createElement(be,{flexDirection:"column"},Je.default.createElement(PKe,{summary:g.summary,diffs:g.diffs}),Je.default.createElement(QKe,{message:"Apply these changes?",onResult:j=>{j?W(b):o("skipped")}})):i==="skipped"?(setTimeout(()=>{o("prompt")},0),Je.default.createElement(be,{flexDirection:"column"},Je.default.createElement(Y,{color:"red"},"Skipped proposed changes."))):Je.default.createElement(Y,{color:"gray"},"\u2026")}var U1e=Re(pt(),1);async function Q1e({originalPrompt:e,config:t,rootPath:r}){return new Promise(n=>{Zd(U1e.default.createElement(P1e,{originalPrompt:e,config:t,rootPath:r,onExit:()=>n()}))})}jN();f();f();var cge=Re(lge(),1);import{execFileSync as VM}from"node:child_process";import{join as oXe,resolve as sXe}from"node:path";function lXe(e){try{return cge.default.sync(e),!0}catch{return!1}}function cXe(e){if(lXe(e))try{switch(e){case"npm":{let t=VM("npm",["prefix","-g"],{encoding:"utf-8"});return oXe(t.trim(),"bin")}case"pnpm":return VM("pnpm",["bin","-g"],{encoding:"utf-8"}).trim();case"bun":return VM("bun",["pm","bin","-g"],{encoding:"utf-8"}).trim();default:return}}catch{}}async function uge(){let e=process.argv[1]&&sXe(process.argv[1]);if(!e)return;let t=["npm","pnpm","bun"];for(let r of t){let n=cXe(r);if(n&&e.startsWith(n))return r}}$0();f();import gw from"node:process";var Rge=Re(eD(),1);f();var uXe=/[\p{Lu}]/u,pXe=/[\p{Ll}]/u,pge=/^[\p{Lu}](?![\p{Lu}])/gu,mge=/([\p{Alpha}\p{N}_]|$)/u,$M=/[_.\- ]+/,dXe=new RegExp("^"+$M.source),dge=new RegExp($M.source+mge.source,"gu"),fge=new RegExp("\\d+"+mge.source,"gu"),fXe=(e,t,r,n)=>{let a=!1,i=!1,o=!1,s=!1;for(let u=0;u<e.length;u++){let p=e[u];s=u>2?e[u-3]==="-":!0,a&&uXe.test(p)?(e=e.slice(0,u)+"-"+e.slice(u),a=!1,o=i,i=!0,u++):i&&o&&pXe.test(p)&&(!s||n)?(e=e.slice(0,u-1)+"-"+e.slice(u-1),o=i,i=!1,a=!0):(a=t(p)===p&&r(p)!==p,o=i,i=r(p)===p&&t(p)!==p)}return e},mXe=(e,t)=>(pge.lastIndex=0,e.replaceAll(pge,r=>t(r))),gXe=(e,t)=>(dge.lastIndex=0,fge.lastIndex=0,e.replaceAll(fge,(r,n,a)=>["_","-"].includes(e.charAt(a+r.length))?r:t(r)).replaceAll(dge,(r,n)=>t(n)));function jM(e,t){if(!(typeof e=="string"||Array.isArray(e)))throw new TypeError("Expected the input to be `string | string[]`");if(t={pascalCase:!1,preserveConsecutiveUppercase:!1,...t},Array.isArray(e)?e=e.map(i=>i.trim()).filter(i=>i.length).join("-"):e=e.trim(),e.length===0)return"";let r=t.locale===!1?i=>i.toLowerCase():i=>i.toLocaleLowerCase(t.locale),n=t.locale===!1?i=>i.toUpperCase():i=>i.toLocaleUpperCase(t.locale);return e.length===1?$M.test(e)?"":t.pascalCase?n(e):r(e):(e!==r(e)&&(e=fXe(e,r,n,t.preserveConsecutiveUppercase)),e=e.replace(dXe,""),e=t.preserveConsecutiveUppercase?mXe(e,r):r(e),t.pascalCase&&(e=n(e.charAt(0))+e.slice(1)),gXe(e,n))}var XM=Re(Ige(),1);var NXe=Re(eD(),1),G1=`
796
796
  `,Zl=" ",QC="none",Nge=()=>{let{env:e,stdout:t,stderr:r}=gw;return t?.columns?t.columns:r?.columns?r.columns:e.COLUMNS?Number.parseInt(e.COLUMNS,10):80},Dge=e=>typeof e=="number"?{top:e,right:e*3,bottom:e,left:e*3}:{top:0,right:0,bottom:0,left:0,...e},GC=e=>e===QC?0:2,SXe=e=>{let t=["topLeft","topRight","bottomRight","bottomLeft","left","right","top","bottom"],r;if(e===QC){e={};for(let n of t)e[n]=""}if(typeof e=="string"){if(r=Rge.default[e],!r)throw new TypeError(`Invalid border style: ${e}`)}else{typeof e?.vertical=="string"&&(e.left=e.vertical,e.right=e.vertical),typeof e?.horizontal=="string"&&(e.top=e.horizontal,e.bottom=e.horizontal);for(let n of t)if(e[n]===null||typeof e[n]!="string")throw new TypeError(`Invalid border style: ${n}`);r=e}return r},CXe=(e,t,r)=>{let n="",a=Va(e);switch(r){case"left":{n=e+t.slice(a);break}case"right":{n=t.slice(a)+e;break}default:{t=t.slice(a),t.length%2===1?(t=t.slice(Math.floor(t.length/2)),n=t.slice(1)+e+t):(t=t.slice(t.length/2),n=t+e+t);break}}return n},TXe=(e,{padding:t,width:r,textAlignment:n,height:a})=>{e=(0,XM.default)(e,{align:n});let i=e.split(G1),o=Dp(e),s=r-t.left-t.right;if(o>s){let g=[];for(let _ of i){let E=g0(_,s,{hard:!0}),S=(0,XM.default)(E,{align:n}).split(`
797
797
  `),C=Math.max(...S.map(I=>Va(I)));for(let I of S){let R;switch(n){case"center":{R=Zl.repeat((s-C)/2)+I;break}case"right":{R=Zl.repeat(s-C)+I;break}default:{R=I;break}}g.push(R)}}i=g}n==="center"&&o<s?i=i.map(g=>Zl.repeat((s-o)/2)+g):n==="right"&&o<s&&(i=i.map(g=>Zl.repeat(s-o)+g));let u=Zl.repeat(t.left),p=Zl.repeat(t.right);return i=i.map(g=>{let _=u+g+p;return _+Zl.repeat(r-Va(_))}),t.top>0&&(i=[...Array.from({length:t.top}).fill(Zl.repeat(r)),...i]),t.bottom>0&&(i=[...i,...Array.from({length:t.bottom}).fill(Zl.repeat(r))]),a&&i.length>a?i=i.slice(0,a):a&&i.length<a&&(i=[...i,...Array.from({length:a-i.length}).fill(Zl.repeat(r))]),i.join(G1)},IXe=(e,t,r)=>{let n=g=>{let _=r.borderColor?xXe(r.borderColor)(g):g;return r.dimBorder?Ue.dim(_):_},a=g=>r.backgroundColor?RXe(r.backgroundColor)(g):g,i=SXe(r.borderStyle),o=Nge(),s=Zl.repeat(r.margin.left);if(r.float==="center"){let g=Math.max((o-t-GC(r.borderStyle))/2,0);s=Zl.repeat(g)}else if(r.float==="right"){let g=Math.max(o-t-r.margin.right-GC(r.borderStyle),0);s=Zl.repeat(g)}let u="";r.margin.top&&(u+=G1.repeat(r.margin.top)),(r.borderStyle!==QC||r.title)&&(u+=n(s+i.topLeft+(r.title?CXe(r.title,i.top.repeat(t),r.titleAlignment):i.top.repeat(t))+i.topRight)+G1);let p=e.split(G1);return u+=p.map(g=>s+n(i.left)+a(g)+n(i.right)).join(G1),r.borderStyle!==QC&&(u+=G1+n(s+i.bottomLeft+i.bottom.repeat(t)+i.bottomRight)),r.margin.bottom&&(u+=G1.repeat(r.margin.bottom)),u},DXe=e=>{if(e.fullscreen&&gw?.stdout){let t=[gw.stdout.columns,gw.stdout.rows];typeof e.fullscreen=="function"&&(t=e.fullscreen(...t)),e.width||=t[0],e.height||=t[1]}return e.width&&=Math.max(1,e.width-GC(e.borderStyle)),e.height&&=Math.max(1,e.height-GC(e.borderStyle)),e},wge=(e,t)=>t===QC?e:` ${e} `,wXe=(e,t)=>{t=DXe(t);let r=t.width!==void 0,n=Nge(),a=GC(t.borderStyle),i=n-t.margin.left-t.margin.right-a,o=Dp(g0(e,n-a,{hard:!0,trim:!1}))+t.padding.left+t.padding.right;if(t.title&&r?(t.title=t.title.slice(0,Math.max(0,t.width-2)),t.title&&=wge(t.title,t.borderStyle)):t.title&&(t.title=t.title.slice(0,Math.max(0,i-2)),t.title&&(t.title=wge(t.title,t.borderStyle),Va(t.title)>o&&(t.width=Va(t.title)))),t.width||=o,!r){if(t.margin.left&&t.margin.right&&t.width>i){let u=(n-t.width-a)/(t.margin.left+t.margin.right);t.margin.left=Math.max(0,Math.floor(t.margin.left*u)),t.margin.right=Math.max(0,Math.floor(t.margin.right*u))}t.width=Math.min(t.width,n-a-t.margin.left-t.margin.right)}return t.width-(t.padding.left+t.padding.right)<=0&&(t.padding.left=0,t.padding.right=0),t.height&&t.height-(t.padding.top+t.padding.bottom)<=0&&(t.padding.top=0,t.padding.bottom=0),t},JM=e=>e.match(/^#(?:[0-f]{3}){1,2}$/i),xge=e=>typeof e=="string"&&(Ue[e]??JM(e)),xXe=e=>JM(e)?Ue.hex(e):Ue[e],RXe=e=>JM(e)?Ue.bgHex(e):Ue[jM(["bg",e])];function ZM(e,t){if(t={padding:0,borderStyle:"single",dimBorder:!1,textAlignment:"left",float:"left",titleAlignment:"left",...t},t.align&&(t.textAlignment=t.align),t.borderColor&&!xge(t.borderColor))throw new Error(`${t.borderColor} is not a valid borderColor`);if(t.backgroundColor&&!xge(t.backgroundColor))throw new Error(`${t.backgroundColor} is not a valid backgroundColor`);return t.padding=Dge(t.padding),t.margin=Dge(t.margin),t=wXe(e,t),e=TXe(e,t),IXe(e,t.width,t)}f();var OXe={apiEndpoint:"https://npm.antfu.dev/"};async function kXe(e,t={}){let{apiEndpoint:r=OXe.apiEndpoint,fetch:n=fetch,throw:a=!0}=t,i=[t.force?"force=true":"",t.metadata?"metadata=true":"",a?"":"throw=false"].filter(Boolean).join("&");i&&(i=`?${i}`);let o=await n(new URL(e.join("+")+i,r)).then(u=>u.json()),s=kge(o);return a?BXe(s):s}async function Oge(e,t={}){let[r]=await kXe([e],t);return r}function BXe(e){for(let t of kge(e))if(t&&"error"in t)throw new Error(t.message||t.error);return e}function kge(e){return Array.isArray(e)?e:[e]}import{readFile as Bet,writeFile as Let}from"node:fs/promises";import{join as Met}from"node:path";f();f();var Bge=["npm","yarn","yarn@berry","pnpm","pnpm@6","bun","deno"];f();import LXe from"node:process";function eF(){let e=LXe.env.npm_config_user_agent;if(!e)return null;let t=e.split("/")[0];return Bge.includes(t)?t:null}var D_e=Re(T_e(),1),Fet=1e3*60*60*24;function Pet({manager:e,packageName:t}){return{npm:`npm install -g ${t}`,pnpm:`pnpm add -g ${t}`,bun:`bun add -g ${t}`,yarn:`yarn global add ${t}`,deno:`deno install -g npm:${t}`}[e]}function Uet(e){let t=Pet(e);return`To update, run ${Ue.magenta(t)} to update.`}async function Qet(e,t){await Let(e,JSON.stringify(t,null,2),{encoding:"utf8"})}async function Get(e){let t=await Oge(e,{force:!0,throw:!1});if(!("error"in t||!t?.version))return{currentVersion:Bp,latestVersion:t.version}}async function w_e(){let{CONFIG_DIR:e}=await Promise.resolve().then(()=>(Au(),bj)),t=Met(e,"update-check.json"),r;try{r=JSON.parse(await Bet(t,"utf8"))}catch{}if(r?.lastUpdateCheck&&Date.now()-new Date(r.lastUpdateCheck).valueOf()<Fet)return;let{name:n}=await Promise.resolve().then(()=>Re(I_e(),1)),a=await Get(n);if(await Qet(t,{...r,lastUpdateCheck:new Date().toUTCString()}),!a||!D_e.default.gt(a.latestVersion,a.currentVersion))return;let i=await uge();if(!i){let u=eF();if(!u)return;i=u}let o=Uet({manager:i,packageName:n}),s=ZM(`Update available! ${Ue.red(a.currentVersion)} \u2192 ${Ue.green(a.latestVersion)}.
798
- ${o}`,{padding:1,margin:1,align:"center",borderColor:"yellow",borderStyle:"round"});console.log(s)}Au();f();f();var us=Re(pt(),1);function x_e({onDone:e}){let[t,r]=(0,us.useState)("select"),[n,a]=(0,us.useState)("");return t==="select"?us.default.createElement(be,{flexDirection:"column",gap:1},us.default.createElement(be,{flexDirection:"column"},us.default.createElement(Y,null,"Sign in with ChatGPT to generate an API key or paste one you already have."),us.default.createElement(Y,{dimColor:!0},"[use arrows to move, enter to select]")),us.default.createElement(V5,{items:[{label:"Sign in with ChatGPT",value:"signin"},{label:"Paste an API key (or set as OPENAI_API_KEY)",value:"paste"}],onSelect:i=>{i.value==="signin"?e({type:"signin"}):r("paste")}})):us.default.createElement(be,{flexDirection:"column"},us.default.createElement(Y,null,"Paste your OpenAI API key and press <Enter>:"),us.default.createElement(Hm,{value:n,onChange:a,onSubmit:i=>{i.trim()!==""&&e({type:"apikey",key:i.trim()})},placeholder:"sk-...",mask:"*"}))}function R_e(){return us.default.createElement(be,{flexDirection:"row",marginTop:1},us.default.createElement(RC,{type:"ball"}),us.default.createElement(Y,null," ","Waiting for authentication\u2026 ",us.default.createElement(Y,{dimColor:!0},"ctrl + c to quit")))}var bbe=Re(cbe(),1);import D8 from"fs/promises";import w8 from"node:crypto";import{URL as MU}from"node:url";f();import T8 from"node:process";import{Buffer as dut}from"node:buffer";import Abe from"node:path";import{fileURLToPath as fut}from"node:url";import mut from"node:child_process";import kU,{constants as Ebe}from"node:fs/promises";f();import dbe from"node:process";import jct from"node:os";import Wct from"node:fs";f();import Vct from"node:fs";f();import ube from"node:fs";var TU;function qct(){try{return ube.statSync("/.dockerenv"),!0}catch{return!1}}function Yct(){try{return ube.readFileSync("/proc/self/cgroup","utf8").includes("docker")}catch{return!1}}function IU(){return TU===void 0&&(TU=qct()||Yct()),TU}var DU,$ct=()=>{try{return Vct.statSync("/run/.containerenv"),!0}catch{return!1}};function c2(){return DU===void 0&&(DU=$ct()||IU()),DU}var pbe=()=>{if(dbe.platform!=="linux")return!1;if(jct.release().toLowerCase().includes("microsoft"))return!c2();try{return Wct.readFileSync("/proc/version","utf8").toLowerCase().includes("microsoft")?!c2():!1}catch{return!1}},ET=dbe.env.__IS_WSL_TEST__?pbe:pbe();f();function U_(e,t,r){let n=a=>Object.defineProperty(e,t,{value:a,enumerable:!0,writable:!0});return Object.defineProperty(e,t,{configurable:!0,enumerable:!0,get(){let a=r();return n(a),a},set(a){n(a)}}),e}f();import{promisify as lut}from"node:util";import NU from"node:process";import{execFile as cut}from"node:child_process";f();import{promisify as Kct}from"node:util";import Xct from"node:process";import{execFile as Jct}from"node:child_process";var Zct=Kct(Jct);async function wU(){if(Xct.platform!=="darwin")throw new Error("macOS only");let{stdout:e}=await Zct("defaults",["read","com.apple.LaunchServices/com.apple.launchservices.secure","LSHandlers"]);return/LSHandlerRoleAll = "(?!-)(?<id>[^"]+?)";\s+?LSHandlerURLScheme = (?:http|https);/.exec(e)?.groups.id??"com.apple.Safari"}f();f();import eut from"node:process";import{promisify as tut}from"node:util";import{execFile as rut,execFileSync as Cnr}from"node:child_process";var nut=tut(rut);async function fbe(e,{humanReadableOutput:t=!0}={}){if(eut.platform!=="darwin")throw new Error("macOS only");let r=t?[]:["-ss"],{stdout:n}=await nut("osascript",["-e",e,r]);return n.trim()}async function xU(e){return fbe(`tell application "Finder" to set app_path to application file id "${e}" as string
798
+ ${o}`,{padding:1,margin:1,align:"center",borderColor:"yellow",borderStyle:"round"});console.log(s)}Au();f();f();var us=Re(pt(),1);function x_e({onDone:e}){let[t,r]=(0,us.useState)("select"),[n,a]=(0,us.useState)("");return t==="select"?us.default.createElement(be,{flexDirection:"column",gap:1},us.default.createElement(be,{flexDirection:"column"},us.default.createElement(Y,null,"Sign in with ChatGPT to generate an API key or paste one you already have."),us.default.createElement(Y,{dimColor:!0},"[use arrows to move, enter to select]")),us.default.createElement(V5,{items:[{label:"Sign in with ChatGPT",value:"signin"},{label:"Paste an API key (or set as OPENAI_API_KEY)",value:"paste"}],onSelect:i=>{i.value==="signin"?e({type:"signin"}):r("paste")}})):us.default.createElement(be,{flexDirection:"column"},us.default.createElement(Y,null,"Paste your OpenAI API key and press <Enter>:"),us.default.createElement(Hm,{value:n,onChange:a,onSubmit:i=>{i.trim()!==""&&e({type:"apikey",key:i.trim()})},placeholder:"sk-...",mask:"*"}))}function R_e(){return us.default.createElement(be,{flexDirection:"row",marginTop:1},us.default.createElement(RC,{type:"ball"}),us.default.createElement(Y,null," ","Waiting for authentication\u2026 ",us.default.createElement(Y,{dimColor:!0},"Ctrl + C to quit")))}var bbe=Re(cbe(),1);import D8 from"fs/promises";import w8 from"node:crypto";import{URL as MU}from"node:url";f();import T8 from"node:process";import{Buffer as dut}from"node:buffer";import Abe from"node:path";import{fileURLToPath as fut}from"node:url";import mut from"node:child_process";import kU,{constants as Ebe}from"node:fs/promises";f();import dbe from"node:process";import jct from"node:os";import Wct from"node:fs";f();import Vct from"node:fs";f();import ube from"node:fs";var TU;function qct(){try{return ube.statSync("/.dockerenv"),!0}catch{return!1}}function Yct(){try{return ube.readFileSync("/proc/self/cgroup","utf8").includes("docker")}catch{return!1}}function IU(){return TU===void 0&&(TU=qct()||Yct()),TU}var DU,$ct=()=>{try{return Vct.statSync("/run/.containerenv"),!0}catch{return!1}};function c2(){return DU===void 0&&(DU=$ct()||IU()),DU}var pbe=()=>{if(dbe.platform!=="linux")return!1;if(jct.release().toLowerCase().includes("microsoft"))return!c2();try{return Wct.readFileSync("/proc/version","utf8").toLowerCase().includes("microsoft")?!c2():!1}catch{return!1}},ET=dbe.env.__IS_WSL_TEST__?pbe:pbe();f();function U_(e,t,r){let n=a=>Object.defineProperty(e,t,{value:a,enumerable:!0,writable:!0});return Object.defineProperty(e,t,{configurable:!0,enumerable:!0,get(){let a=r();return n(a),a},set(a){n(a)}}),e}f();import{promisify as lut}from"node:util";import NU from"node:process";import{execFile as cut}from"node:child_process";f();import{promisify as Kct}from"node:util";import Xct from"node:process";import{execFile as Jct}from"node:child_process";var Zct=Kct(Jct);async function wU(){if(Xct.platform!=="darwin")throw new Error("macOS only");let{stdout:e}=await Zct("defaults",["read","com.apple.LaunchServices/com.apple.launchservices.secure","LSHandlers"]);return/LSHandlerRoleAll = "(?!-)(?<id>[^"]+?)";\s+?LSHandlerURLScheme = (?:http|https);/.exec(e)?.groups.id??"com.apple.Safari"}f();f();import eut from"node:process";import{promisify as tut}from"node:util";import{execFile as rut,execFileSync as Cnr}from"node:child_process";var nut=tut(rut);async function fbe(e,{humanReadableOutput:t=!0}={}){if(eut.platform!=="darwin")throw new Error("macOS only");let r=t?[]:["-ss"],{stdout:n}=await nut("osascript",["-e",e,r]);return n.trim()}async function xU(e){return fbe(`tell application "Finder" to set app_path to application file id "${e}" as string
799
799
  tell application "System Events" to get value of property list item "CFBundleName" of property list file (app_path & ":Contents:Info.plist")`)}f();import{promisify as aut}from"node:util";import{execFile as iut}from"node:child_process";var out=aut(iut),sut={AppXq0fevzme2pys62n3e0fbqa7peapykr8v:{name:"Edge",id:"com.microsoft.edge.old"},MSEdgeDHTML:{name:"Edge",id:"com.microsoft.edge"},MSEdgeHTM:{name:"Edge",id:"com.microsoft.edge"},"IE.HTTP":{name:"Internet Explorer",id:"com.microsoft.ie"},FirefoxURL:{name:"Firefox",id:"org.mozilla.firefox"},ChromeHTML:{name:"Chrome",id:"com.google.chrome"},BraveHTML:{name:"Brave",id:"com.brave.Browser"},BraveBHTML:{name:"Brave Beta",id:"com.brave.Browser.beta"},BraveSSHTM:{name:"Brave Nightly",id:"com.brave.Browser.nightly"}},C8=class extends Error{};async function RU(e=out){let{stdout:t}=await e("reg",["QUERY"," HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\Shell\\Associations\\UrlAssociations\\http\\UserChoice","/v","ProgId"]),r=/ProgId\s*REG_SZ\s*(?<id>\S+)/.exec(t);if(!r)throw new C8(`Cannot find Windows browser in stdout: ${JSON.stringify(t)}`);let{id:n}=r.groups,a=sut[n];if(!a)throw new C8(`Unknown browser ID: ${n}`);return a}var uut=lut(cut),put=e=>e.toLowerCase().replaceAll(/(?:^|\s|-)\S/g,t=>t.toUpperCase());async function OU(){if(NU.platform==="darwin"){let e=await wU();return{name:await xU(e),id:e}}if(NU.platform==="linux"){let{stdout:e}=await uut("xdg-mime",["query","default","x-scheme-handler/http"]),t=e.trim();return{name:put(t.replace(/.desktop$/,"").replace("-"," ")),id:t}}if(NU.platform==="win32")return RU();throw new Error("Only macOS, Linux, and Windows are supported")}var BU=Abe.dirname(fut(import.meta.url)),mbe=Abe.join(BU,"xdg-open"),{platform:u2,arch:gbe}=T8,gut=(()=>{let e="/mnt/",t;return async function(){if(t)return t;let r="/etc/wsl.conf",n=!1;try{await kU.access(r,Ebe.F_OK),n=!0}catch{}if(!n)return e;let a=await kU.readFile(r,{encoding:"utf8"}),i=/(?<!#.*)root\s*=\s*(?<mountPoint>.*)/g.exec(a);return i?(t=i.groups.mountPoint.trim(),t=t.endsWith("/")?t:`${t}/`,t):e}})(),hbe=async(e,t)=>{let r;for(let n of e)try{return await t(n)}catch(a){r=a}throw r},I8=async e=>{if(e={wait:!1,background:!1,newInstance:!1,allowNonzeroExitCode:!1,...e},Array.isArray(e.app))return hbe(e.app,s=>I8({...e,app:s}));let{name:t,arguments:r=[]}=e.app??{};if(r=[...r],Array.isArray(t))return hbe(t,s=>I8({...e,app:{name:s,arguments:r}}));if(t==="browser"||t==="browserPrivate"){let s={"com.google.chrome":"chrome","google-chrome.desktop":"chrome","org.mozilla.firefox":"firefox","firefox.desktop":"firefox","com.microsoft.msedge":"edge","com.microsoft.edge":"edge","com.microsoft.edgemac":"edge","microsoft-edge.desktop":"edge"},u={chrome:"--incognito",firefox:"--private-window",edge:"--inPrivate"},p=await OU();if(p.id in s){let g=s[p.id];return t==="browserPrivate"&&r.push(u[g]),I8({...e,app:{name:p2[g],arguments:r}})}throw new Error(`${p.name} is not supported as a default browser`)}let n,a=[],i={};if(u2==="darwin")n="open",e.wait&&a.push("--wait-apps"),e.background&&a.push("--background"),e.newInstance&&a.push("--new"),t&&a.push("-a",t);else if(u2==="win32"||ET&&!c2()&&!t){let s=await gut();n=ET?`${s}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe`:`${T8.env.SYSTEMROOT||T8.env.windir||"C:\\Windows"}\\System32\\WindowsPowerShell\\v1.0\\powershell`,a.push("-NoProfile","-NonInteractive","-ExecutionPolicy","Bypass","-EncodedCommand"),ET||(i.windowsVerbatimArguments=!0);let u=["Start"];e.wait&&u.push("-Wait"),t?(u.push(`"\`"${t}\`""`),e.target&&r.push(e.target)):e.target&&u.push(`"${e.target}"`),r.length>0&&(r=r.map(p=>`"\`"${p}\`""`),u.push("-ArgumentList",r.join(","))),e.target=dut.from(u.join(" "),"utf16le").toString("base64")}else{if(t)n=t;else{let s=!BU||BU==="/",u=!1;try{await kU.access(mbe,Ebe.X_OK),u=!0}catch{}n=T8.versions.electron??(u2==="android"||s||!u)?"xdg-open":mbe}r.length>0&&a.push(...r),e.wait||(i.stdio="ignore",i.detached=!0)}u2==="darwin"&&r.length>0&&a.push("--args",...r),e.target&&a.push(e.target);let o=mut.spawn(n,a,i);return e.wait?new Promise((s,u)=>{o.once("error",u),o.once("close",p=>{if(!e.allowNonzeroExitCode&&p>0){u(new Error(`Exited with code ${p}`));return}s(o)})}):(o.unref(),o)},hut=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a `target`");return I8({...t,target:e})};function _be(e){if(typeof e=="string"||Array.isArray(e))return e;let{[gbe]:t}=e;if(!t)throw new Error(`${gbe} is not supported`);return t}function LU({[u2]:e},{wsl:t}){if(t&&ET)return _be(t);if(!e)throw new Error(`${u2} is not supported`);return _be(e)}var p2={};U_(p2,"chrome",()=>LU({darwin:"google chrome",win32:"chrome",linux:["google-chrome","google-chrome-stable","chromium"]},{wsl:{ia32:"/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe",x64:["/mnt/c/Program Files/Google/Chrome/Application/chrome.exe","/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe"]}}));U_(p2,"firefox",()=>LU({darwin:"firefox",win32:"C:\\Program Files\\Mozilla Firefox\\firefox.exe",linux:"firefox"},{wsl:"/mnt/c/Program Files/Mozilla Firefox/firefox.exe"}));U_(p2,"edge",()=>LU({darwin:"microsoft edge",win32:"msedge",linux:["microsoft-edge","microsoft-edge-dev"]},{wsl:"/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe"}));U_(p2,"browser",()=>"browser");U_(p2,"browserPrivate",()=>"browserPrivate");var ybe=hut;var FU=Re(pt(),1);import Sbe from"os";import x8 from"path";function _ut(){return new Promise(e=>{let t=Zd(FU.default.createElement(x_e,{onDone:r=>{e(r),t.unmount()}}))})}async function vbe(e){let t=new MU(e);t.pathname="/.well-known/openid-configuration",e==="https://auth.openai.com"&&(t.pathname="/v2.0"+t.pathname);let r=await fetch(t.toString());if(!r.ok)throw new Error("Failed to fetch OIDC configuration");return await r.json()}function Aut(){let e=w8.randomBytes(64).toString("hex"),t=w8.createHash("sha256").update(e).digest("base64url");return{code_verifier:e,code_challenge:t}}async function PU(e,t,r,n){try{let a=n,i;if(a&&typeof a=="string"&&a.split(".")[1]?i=JSON.parse(Buffer.from(a.split(".")[1],"base64url").toString("utf8")):a="",!i||!i.exp||Date.now()>=i.exp*1e3){console.log(Ue.dim("Refreshing credentials..."));try{let b=await fetch("https://auth.openai.com/oauth/token",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({client_id:t,grant_type:"refresh_token",refresh_token:r,scope:"openid profile email"})});if(!b.ok){console.warn(`Failed to refresh credentials: ${b.status} ${b.statusText}
800
800
  ${Ue.dim(await b.text())}`),console.warn(`Please sign in again to redeem credits: ${Ue.bold("codex --login")}`);return}let S=await b.json();if(a=S.id_token,i=JSON.parse(Buffer.from(a.split(".")[1],"base64url").toString("utf8")),S.refresh_token)try{let C=Sbe.homedir(),I=x8.join(C,".codex"),R=x8.join(I,"auth.json"),B=JSON.parse(await D8.readFile(R,"utf-8"));B.tokens.id_token=a,B.tokens.refresh_token=S.refresh_token,B.last_refresh=new Date().toISOString(),await D8.writeFile(R,JSON.stringify(B,null,2),{mode:384})}catch(C){console.warn("Unable to update refresh token in auth file:",C)}}catch(b){console.warn("Unable to refresh ID token via token-exchange:",b);return}}let o=i["https://api.openai.com/auth"]?.chatgpt_subscription_active_start;if(typeof o=="string"&&Date.now()-new Date(o).getTime()<7*24*60*60*1e3){console.warn(`Sorry, your subscription must be active for more than 7 days to redeem credits.
801
801
  More info: `+Ue.dim("https://help.openai.com/en/articles/11381614")+Ue.bold(`