@github/copilot 0.0.349-3 → 0.0.349-5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.js CHANGED
@@ -801,7 +801,7 @@ Read about how to prevent this error on https://github.com/vadimdemedes/ink/#isr
801
801
  `;if(this.options.debug){r&&(this.fullStaticOutput+=n),this.options.stdout.write(this.fullStaticOutput+e);return}if(A3){r&&this.options.stdout.write(n),this.lastOutput=e,this.lastOutputHeight=l;return}if(this.isScreenReaderEnabled){if(r){let s=this.lastOutputHeight>0?KG.eraseLines(this.lastOutputHeight):"";this.options.stdout.write(s+n),this.lastOutputHeight=0}if(e===this.lastOutput&&!r)return;let I=this.options.stdout.columns||80,a=iX(e,I,{trim:!1,hard:!0});if(r)this.options.stdout.write(a);else{let s=this.lastOutputHeight>0?KG.eraseLines(this.lastOutputHeight):"";this.options.stdout.write(s+a)}this.lastOutput=e,this.lastOutputHeight=a===""?0:a.split(`
802
802
  `).length;return}if(r&&(this.fullStaticOutput+=n),this.lastOutputHeight>=this.options.stdout.rows){this.options.stdout.write(KG.clearTerminal+this.fullStaticOutput+e),this.lastOutput=e,this.lastOutputHeight=l,this.log.sync(e);return}r&&(this.log.clear(),this.options.stdout.write(n),this.log(e)),!r&&e!==this.lastOutput&&this.throttledLog(e),this.lastOutput=e,this.lastOutputHeight=l};render(e){let l=XXe.default.createElement(hF.Provider,{value:{isScreenReaderEnabled:this.isScreenReaderEnabled}},XXe.default.createElement(Iee,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,exitOnCtrlC:this.options.exitOnCtrlC,onExit:this.unmount},e));pF.updateContainerSync(l,this.container,null,Rct),pF.flushSyncWork()}writeToStdout(e){if(!this.isUnmounted){if(this.options.debug){this.options.stdout.write(e+this.fullStaticOutput+this.lastOutput);return}if(A3){this.options.stdout.write(e);return}this.log.clear(),this.options.stdout.write(e),this.log(this.lastOutput)}}writeToStderr(e){if(!this.isUnmounted){if(this.options.debug){this.options.stderr.write(e),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(A3){this.options.stderr.write(e);return}this.log.clear(),this.options.stderr.write(e),this.log(this.lastOutput)}}unmount(e){this.isUnmounted||(this.calculateLayout(),this.onRender(),this.unsubscribeExit(),typeof this.restoreConsole=="function"&&this.restoreConsole(),typeof this.unsubscribeResize=="function"&&this.unsubscribeResize(),A3?this.options.stdout.write(this.lastOutput+`
803
803
  `):this.options.debug||this.log.done(),this.isUnmounted=!0,pF.updateContainerSync(null,this.container,null,Rct),pF.flushSyncWork(),vM.delete(this.options.stdout),e instanceof Error?this.rejectExitPromise(e):this.resolveExitPromise())}async waitUntilExit(){return this.exitPromise||=new Promise((e,l)=>{this.resolveExitPromise=e,this.rejectExitPromise=l}),this.exitPromise}clear(){!A3&&!this.options.debug&&this.log.clear()}patchConsole(){this.options.debug||(this.restoreConsole=Gpe((e,l)=>{e==="stdout"&&this.writeToStdout(l),e==="stderr"&&(l.startsWith("The above error occurred")||this.writeToStderr(l))}))}};var cRl=(t,e)=>{let l={stdout:qpe.stdout,stdin:qpe.stdin,stderr:qpe.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0,maxFps:30,...dRl(e)},n=uRl(l.stdout,()=>new aee(l));return n.render(t),{rerender:n.render,unmount(){n.unmount()},waitUntilExit:n.waitUntilExit,cleanup:()=>vM.delete(l.stdout),clear:n.clear}},see=cRl,dRl=(t={})=>t instanceof iRl?{stdout:t,stdin:qpe.stdin}:t,uRl=(t,e)=>{let l=vM.get(t);return l||(l=e(),vM.set(t,l)),l};c();var ZF=nt(qt(),1);function $pe(t){let{items:e,children:l,style:n}=t,[r,I]=(0,ZF.useState)(0),a=(0,ZF.useMemo)(()=>e.slice(r),[e,r]);(0,ZF.useLayoutEffect)(()=>{I(e.length)},[e.length]);let s=a.map((d,u)=>l(d,r+u)),o=(0,ZF.useMemo)(()=>({position:"absolute",flexDirection:"column",...n}),[n]);return ZF.default.createElement("ink-box",{internal_static:!0,style:o},s)}c();var wct=nt(qt(),1);c();var mRl=nt(qt(),1);c();var bRl=nt(qt(),1);c();var kXe=nt(qt(),1);c();import{Buffer as GRl}from"node:buffer";var pRl=/^(?:\x1b)([a-zA-Z0-9])$/,hRl=/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/,Qct={OP:"f1",OQ:"f2",OR:"f3",OS:"f4","[11~":"f1","[12~":"f2","[13~":"f3","[14~":"f4","[[A":"f1","[[B":"f2","[[C":"f3","[[D":"f4","[[E":"f5","[15~":"f5","[17~":"f6","[18~":"f7","[19~":"f8","[20~":"f9","[21~":"f10","[23~":"f11","[24~":"f12","[A":"up","[B":"down","[C":"right","[D":"left","[E":"clear","[F":"end","[H":"home",OA:"up",OB:"down",OC:"right",OD:"left",OE:"clear",OF:"end",OH:"home","[1~":"home","[2~":"insert","[3~":"delete","[4~":"end","[5~":"pageup","[6~":"pagedown","[[5~":"pageup","[[6~":"pagedown","[7~":"home","[8~":"end","[a":"up","[b":"down","[c":"right","[d":"left","[e":"clear","[2$":"insert","[3$":"delete","[5$":"pageup","[6$":"pagedown","[7$":"home","[8$":"end",Oa:"up",Ob:"down",Oc:"right",Od:"left",Oe:"clear","[2^":"insert","[3^":"delete","[5^":"pageup","[6^":"pagedown","[7^":"home","[8^":"end","[Z":"tab"},Fct=[...Object.values(Qct),"backspace"],ARl=t=>["[a","[b","[c","[d","[e","[2$","[3$","[5$","[6$","[7$","[8$","[Z"].includes(t),ZRl=t=>["Oa","Ob","Oc","Od","Oe","[2^","[3^","[5^","[6^","[7^","[8^"].includes(t),gRl=(t="")=>{let e;GRl.isBuffer(t)?t[0]>127&&t[1]===void 0?(t[0]-=128,t="\x1B"+String(t)):t=String(t):t!==void 0&&typeof t!="string"?t=String(t):t||(t="");let l={name:"",ctrl:!1,meta:!1,shift:!1,option:!1,sequence:t,raw:t};if(l.sequence=l.sequence||t||l.name,t==="\r")l.raw=void 0,l.name="return";else if(t===`
804
- `)l.name="enter";else if(t===" ")l.name="tab";else if(t==="\b"||t==="\x1B\b")l.name="backspace",l.meta=t.charAt(0)==="\x1B";else if(t==="\x7F"||t==="\x1B\x7F")l.name="delete",l.meta=t.charAt(0)==="\x1B";else if(t==="\x1B"||t==="\x1B\x1B")l.name="escape",l.meta=t.length===2;else if(t===" "||t==="\x1B ")l.name="space",l.meta=t.length===2;else if(t.length===1&&t<="")l.name=String.fromCharCode(t.charCodeAt(0)+97-1),l.ctrl=!0;else if(t.length===1&&t>="0"&&t<="9")l.name="number";else if(t.length===1&&t>="a"&&t<="z")l.name=t;else if(t.length===1&&t>="A"&&t<="Z")l.name=t.toLowerCase(),l.shift=!0;else if(e=pRl.exec(t))l.meta=!0,l.shift=/^[A-Z]$/.test(e[1]);else if(e=hRl.exec(t)){let n=[...t];n[0]==="\x1B"&&n[1]==="\x1B"&&(l.option=!0);let r=[e[1],e[2],e[4],e[6]].filter(Boolean).join(""),I=(e[3]||e[5]||1)-1;l.ctrl=!!(I&4),l.meta=!!(I&10),l.shift=!!(I&1),l.code=r,l.name=Qct[r],l.shift=ARl(r)||l.shift,l.ctrl=ZRl(r)||l.ctrl}return l},Cct=gRl;c();var vct=nt(qt(),1);var NRl=()=>(0,vct.useContext)(Dpe),fM=NRl;var WRl=(t,e={})=>{let{stdin:l,setRawMode:n,internal_exitOnCtrlC:r,internal_eventEmitter:I}=fM();(0,kXe.useEffect)(()=>{if(e.isActive!==!1)return n(!0),()=>{n(!1)}},[e.isActive,n]),(0,kXe.useEffect)(()=>{if(e.isActive===!1)return;let a=s=>{let o=Cct(s),d={upArrow:o.name==="up",downArrow:o.name==="down",leftArrow:o.name==="left",rightArrow:o.name==="right",pageDown:o.name==="pagedown",pageUp:o.name==="pageup",return:o.name==="return",escape:o.name==="escape",ctrl:o.ctrl,shift:o.shift,tab:o.name==="tab",backspace:o.name==="backspace",delete:o.name==="delete",meta:o.meta||o.name==="escape"||o.option},u=o.ctrl?o.name:o.sequence;Fct.includes(o.name)&&(u=""),u.startsWith("\x1B")&&(u=u.slice(1)),u.length===1&&typeof u[0]=="string"&&/[A-Z]/.test(u[0])&&(d.shift=!0),(!(u==="c"&&d.ctrl)||!r)&&pF.batchedUpdates(()=>{t(u,d)})};return I?.on("input",a),()=>{I?.removeListener("input",a)}},[e.isActive,l,r,t])},I1=WRl;c();var yRl=nt(qt(),1);c();var fct=nt(qt(),1);var ERl=()=>(0,fct.useContext)(zpe),PN=ERl;c();var RRl=nt(qt(),1);c();var LXe=nt(qt(),1);c();var YRl=nt(qt(),1);c();var Hct=nt(qt(),1);var VRl=()=>{let{isScreenReaderEnabled:t}=(0,Hct.useContext)(hF);return t},y3=VRl;c();var wRl=t=>({width:t.yogaNode?.getComputedWidth()??0,height:t.yogaNode?.getComputedHeight()??0}),ehe=wRl;var Iat=nt(qt(),1);import psr,{join as rat}from"path";import{text as hsr}from"stream/consumers";c();c();var SAt=nt(V_(),1);c();c();c();c();var lp=[];for(let t=0;t<256;++t)lp.push((t+256).toString(16).slice(1));function uAt(t,e=0){return(lp[t[e+0]]+lp[t[e+1]]+lp[t[e+2]]+lp[t[e+3]]+"-"+lp[t[e+4]]+lp[t[e+5]]+"-"+lp[t[e+6]]+lp[t[e+7]]+"-"+lp[t[e+8]]+lp[t[e+9]]+"-"+lp[t[e+10]]+lp[t[e+11]]+lp[t[e+12]]+lp[t[e+13]]+lp[t[e+14]]+lp[t[e+15]]).toLowerCase()}c();import{randomFillSync as p5l}from"node:crypto";var tZe=new Uint8Array(256),eZe=tZe.length;function dLe(){return eZe>tZe.length-16&&(p5l(tZe),eZe=0),tZe.slice(eZe,eZe+=16)}c();c();import{randomUUID as h5l}from"node:crypto";var uLe={randomUUID:h5l};function A5l(t,e,l){t=t||{};let n=t.random??t.rng?.()??dLe();if(n.length<16)throw new Error("Random bytes length must be >= 16");if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,e){if(l=l||0,l<0||l+16>e.length)throw new RangeError(`UUID byte range ${l}:${l+15} is out of buffer bounds`);for(let r=0;r<16;++r)e[l+r]=n[r];return e}return uAt(n)}function Z5l(t,e,l){return uLe.randomUUID&&!e&&!t?uLe.randomUUID():A5l(t,e,l)}var Bu=Z5l;var M3=class{settings={};mergePartial(e,l){return{...e,...l}}setBlackbirdMode(e){return e!==void 0&&(e=="tool"||e=="initial-search")&&(this.settings.blackbird=this.mergePartial(this.settings.blackbird,{mode:e})),this}setSwebenchBaseCommit(e){return e!==void 0&&(this.settings.swebench_base_commit=e),this}setGithubUserName(e){if(e!==void 0){let l=this.settings.github?.user||{};this.settings.github=this.mergePartial(this.settings.github,{user:{...l,name:e}})}return this}setGithubUserEmail(e){if(e!==void 0){let l=this.settings.github?.user||{};this.settings.github=this.mergePartial(this.settings.github,{user:{...l,email:e}})}return this}setGithubToken(e){return e!==void 0&&(this.settings.github=this.mergePartial(this.settings.github,{token:e})),this}setGithubServerUrl(e){return e!==void 0&&(this.settings.github=this.mergePartial(this.settings.github,{serverUrl:e??"https://github.com"}),(!this.settings.github.host||!this.settings.github.hostProtocol)&&(this.settings.github=this.mergePartial(this.settings.github,new URL(e)))),this}setGithubHost(e){return e!==void 0&&(this.settings.github=this.mergePartial(this.settings.github,{host:e})),this}setGithubHostProtocol(e){return e!==void 0&&(this.settings.github=this.mergePartial(this.settings.github,{hostProtocol:e})),this}setGithubActorId(e){if(e!==void 0){let l=this.settings.github?.user||{};this.settings.github=this.mergePartial(this.settings.github,{user:{...l,actorId:e}})}return this}setGithubActorLogin(e){if(e!==void 0){let l=this.settings.github?.user||{};this.settings.github=this.mergePartial(this.settings.github,{user:{...l,actorLogin:e}})}return this}setAgentRuntimeVersion(e){return e!==void 0?this.settings.version=e:this.settings.version="latest",this}setGithubRepoName(e){if(e!==void 0){let l=this.settings.github?.repo||{};this.settings.github=this.mergePartial(this.settings.github,{repo:{...l,name:e}})}return this}setGithubRepoId(e){if(e!==void 0){let l=this.settings.github?.repo||{},n=Number(e);isNaN(n)||(this.settings.github=this.mergePartial(this.settings.github,{repo:{...l,id:n}}))}return this}setGithubRepoOwnerName(e){if(e!==void 0){let l=this.settings.github?.owner||{};this.settings.github=this.mergePartial(this.settings.github,{owner:{...l,name:e}})}return this}setGithubRepoOwnerId(e){if(e!==void 0){let l=this.settings.github?.owner||{},n=Number(e);isNaN(n)||(this.settings.github=this.mergePartial(this.settings.github,{owner:{...l,id:n}}))}return this}setGithubRepoBranch(e){if(e){let l=e.replace(/^refs\/heads\//,"");if(l.length===0)return this;let n=this.settings.github?.repo||{};this.settings.github=this.mergePartial(this.settings.github,{repo:{...n,branch:l}})}return this}setGithubRepoCommit(e){if(e!==void 0){let l=this.settings.github?.repo||{};this.settings.github=this.mergePartial(this.settings.github,{repo:{...l,commit:e}})}return this}setGithubRepoReadWrite(e){if(e!==void 0){let l=this.settings.github?.repo||{};this.settings.github=this.mergePartial(this.settings.github,{repo:{...l,readWrite:e}})}return this}setProblemStatement(e){return e!==void 0&&(this.settings.problem=this.mergePartial(this.settings.problem,{statement:e})),this}setProblemContentFilterMode(e){return e!==void 0&&(this.settings.problem=this.mergePartial(this.settings.problem,{contentFilterMode:e})),this}setProblemAction(e){return e!==void 0&&(this.settings.problem=this.mergePartial(this.settings.problem,{action:e})),this}setCustomAgentName(e){return e!==void 0&&(this.settings.problem=this.mergePartial(this.settings.problem,{customAgentName:e})),this}setGithubPRCommitCount(e){if(e!==void 0){let l=this.settings.github?.pr||{};this.settings.github=this.mergePartial(this.settings.github,{pr:{...l,commitCount:e}})}return this}setInstanceId(e){return this.settings.service=this.mergePartial(this.settings.service,{instance:{id:e??Bu()}}),this}setAgentModel(e){if(e!==void 0){let l=this.settings.service?.agent||{};this.settings.service=this.mergePartial(this.settings.service,{agent:{...l,model:e}})}return this}setRequestHeaders(e){if(e!==void 0){let l=this.settings.service?.agent||{};this.settings.service=this.mergePartial(this.settings.service,{agent:{...l,requestHeaders:e}})}return this}setRetryPolicy(e){if(e!==void 0){let l=this.settings.service?.agent||{};this.settings.service=this.mergePartial(this.settings.service,{agent:{...l,retryPolicy:e}})}return this}setCallbackUrl(e){return e!==void 0&&(this.settings.service=this.mergePartial(this.settings.service,{callback:{url:e}})),this}setGitHubUploadsUrl(e){return e!==void 0&&(this.settings.github=this.mergePartial(this.settings.github,{uploadsUrl:e})),this}setGitHubDownloadsUrl(e){return e!==void 0&&(this.settings.github=this.mergePartial(this.settings.github,{downloadsUrl:e})),this}setAipSweAgentToken(e){return e!==void 0&&(this.settings.api=this.mergePartial(this.settings.api,{aipSweAgent:{token:e}})),this}setAnthropicApiKey(e){return e!==void 0&&(this.settings.api=this.mergePartial(this.settings.api,{anthropic:{key:e}})),this}setOpenAiApiKey(e){if(e!==void 0){let l=this.settings.api?.openai||{};this.settings.api=this.mergePartial(this.settings.api,{openai:{...l,apiKey:e}})}return this}setOpenAiBaseUrl(e){if(e!==void 0){let l=this.settings.api?.openai||{};this.settings.api=this.mergePartial(this.settings.api,{openai:{...l,baseUrl:e}})}return this}setAzureOpenAiUrl(e){if(e!==void 0){let l=this.settings.api?.openai||{};this.settings.api=this.mergePartial(this.settings.api,{openai:{...l,azure:{...l.azure,url:e}}})}return this}setAzureOpenAiApiVersion(e){if(e!==void 0){let l=this.settings.api?.openai||{};this.settings.api=this.mergePartial(this.settings.api,{openai:{...l,azure:{...l.azure,apiVersion:e}}})}return this}setAzureOpenAiKeyVaultUri(e){if(e!==void 0){let l=this.settings.api?.openai||{};this.settings.api=this.mergePartial(this.settings.api,{openai:{...l,azureKeyVaultUri:e}})}return this}setAzureOpenAiSecretName(e){if(e!==void 0){let l=this.settings.api?.openai||{};this.settings.api=this.mergePartial(this.settings.api,{openai:{...l,azureSecretName:e}})}return this}setCopilotUrl(e){if(e!==void 0){let l=this.settings.api?.copilot||{};this.settings.api=this.mergePartial(this.settings.api,{copilot:{...l,url:e}})}return this}setCopilotIntegrationId(e){if(e!==void 0){let l=this.settings.api?.copilot||{};this.settings.api=this.mergePartial(this.settings.api,{copilot:{...l,integrationId:e}})}return this}setCopilotHmacKey(e){if(e!==void 0){let l=this.settings.api?.copilot||{};this.settings.api=this.mergePartial(this.settings.api,{copilot:{...l,hmacKey:e}})}return this}setCopilotToken(e){if(e!==void 0){let l=this.settings.api?.copilot||{};this.settings.api=this.mergePartial(this.settings.api,{copilot:{...l,token:e}})}return this}setCopilotAzureKeyVaultUri(e){if(e!==void 0){let l=this.settings.api?.copilot||{};this.settings.api=this.mergePartial(this.settings.api,{copilot:{...l,azureKeyVaultUri:e}})}return this}setCopilotSessionId(e){if(e!==void 0){let l=this.settings.api?.copilot||{};this.settings.api=this.mergePartial(this.settings.api,{copilot:{...l,sessionId:e}})}return this}setCopilotPreviousSessionIds(e){if(e!==void 0){let l=this.settings.api?.copilot||{};this.settings.api=this.mergePartial(this.settings.api,{copilot:{...l,previousSessionIds:e.split(",").map(n=>n.trim()).filter(n=>n.length>0)}})}return this}setCopilotUseSessions(e){if(e!==void 0){let l=this.settings.api?.copilot||{};this.settings.api=this.mergePartial(this.settings.api,{copilot:{...l,useSessions:e}})}return this}setCopilotJobNonce(e){return e!==void 0&&(this.settings.job=this.mergePartial(this.settings.job,{nonce:e})),this}setTrajectoryOutputFile(e){return e!==void 0&&(this.settings.trajectory=this.mergePartial(this.settings.trajectory,{outputFile:e})),this}setEventsLogDirectory(e){return e!==void 0&&(this.settings.logs=this.mergePartial(this.settings.logs,{eventsLogDir:e})),this}setDisableOnlineEvaluation(e){return e==!0&&this.settings.onlineEvaluation?.disableOnlineEvaluation!==!0&&(this.settings.onlineEvaluation=this.mergePartial(this.settings.onlineEvaluation,{disableOnlineEvaluation:e})),this}setEnableOnlineEvaluationOutputFile(e){return e==!0&&this.settings.onlineEvaluation?.enableOnlineEvaluationOutputFile!==!0&&(this.settings.onlineEvaluation=this.mergePartial(this.settings.onlineEvaluation,{enableOnlineEvaluationOutputFile:e})),this}setGitHubMCPServerToken(e){return e!==void 0&&(this.settings.api=this.mergePartial(this.settings.api,{github:{mcpServerToken:e}})),this}setFeatureFlagEnabled(e){return this.settings.featureFlags=this.mergePartial(this.settings.featureFlags,{[e]:!0}),this}setExperiment(e,l){return this.settings.experiments=this.mergePartial(this.settings.experiments,{[e]:l}),this}setTimeoutMs(e){return e!==void 0&&(this.settings.timeoutMs=e),this}setStartTimeMs(e){return e!==void 0&&(this.settings.startTimeMs=e),this}build(){return this.settings}};var lZe=["GITHUB_TOKEN","GITHUB_COPILOT_API_TOKEN","CAPI_HMAC_KEY","CAPI_HMAC_KEY_OVERRIDE","ANTHROPIC_API_KEY","AIP_SWE_AGENT_TOKEN","CAPI_AZURE_KEY_VAULT_URI","COPILOT_JOB_NONCE","GITHUB_MCP_SERVER_TOKEN","OPENAI_BASE_URL","OPENAI_API_KEY","COPILOT_AGENT_REQUEST_HEADERS","AZURE_OPENAI_API_KEY","AZURE_OPENAI_API_ENDPOINT","AZURE_OPENAI_KEY_VAULT_URI","AZURE_OPENAI_KEY_VAULT_SECRET_NAME","BLACKBIRD_AUTH_METIS_API_KEY","BLACKBIRD_AUTH_MODEL_BASED_RETRIEVAL_TOKEN"],mAt=["COPILOT_CALLBACK_URL","COPILOT_AGENT_MODEL","COPILOT_AGENT_JOB_ID","COPILOT_AGENT_PROMPT","COPILOT_AGENT_PUSH","COPILOT_FIREWALL_ENABLED","COPILOT_FIREWALL_ALLOW_LIST","GITHUB_COPILOT_INTEGRATION_ID","COPILOT_INTEGRATION_ID_OVERRIDE","COPILOT_AGENT_SESSION_ID","COPILOT_AGENT_PREVIOUS_SESSION_IDS","COPILOT_AGENT_EVENT_URL","COPILOT_AGENT_EVENT_TYPE","COPILOT_AGENT_ACTOR","COPILOT_AGENT_ACTOR_ID",...lZe];async function bAt(){let t=new M3;t.setGithubServerUrl(process.env.GITHUB_SERVER_URL).setGithubHost(process.env.GITHUB_HOST).setGithubHostProtocol(process.env.GITHUB_HOST_PROTOCOL).setGithubToken(process.env.GITHUB_TOKEN).setGithubUserName(process.env.COPILOT_AGENT_COMMIT_LOGIN).setGithubUserEmail(process.env.COPILOT_AGENT_COMMIT_EMAIL).setGithubRepoOwnerId(process.env.GITHUB_REPOSITORY_OWNER_ID).setGithubRepoOwnerName(process.env.GITHUB_REPOSITORY_OWNER).setGithubRepoId(process.env.GITHUB_REPOSITORY_ID).setGithubRepoName(process.env.GITHUB_REPOSITORY).setGithubRepoBranch(process.env.COPILOT_AGENT_BRANCH_NAME).setGithubRepoCommit(process.env.COPILOT_AGENT_BASE_COMMIT).setAgentRuntimeVersion(process.env.COPILOT_AGENT_RUNTIME_VERSION),process.env.COPILOT_AGENT_PUSH!==void 0&&t.setGithubRepoReadWrite(process.env.COPILOT_AGENT_PUSH==="true"),t.setGithubPRCommitCount(process.env.COPILOT_AGENT_PR_COMMIT_COUNT?parseInt(process.env.COPILOT_AGENT_PR_COMMIT_COUNT,10):void 0),t.setProblemStatement(process.env.COPILOT_AGENT_PROMPT).setProblemContentFilterMode(process.env.COPILOT_AGENT_CONTENT_FILTER_MODE).setCustomAgentName(process.env.COPILOT_CUSTOM_AGENT);let e=process.env.COPILOT_AGENT_ACTION;if(e&&["fix","fix-pr-comment"].includes(e)&&t.setProblemAction(e),process.env.COPILOT_AGENT_ACTOR_ID&&t.setGithubActorId(parseInt(process.env.COPILOT_AGENT_ACTOR_ID,10)),process.env.COPILOT_AGENT_ACTOR&&t.setGithubActorLogin(process.env.COPILOT_AGENT_ACTOR),t.setInstanceId(process.env.COPILOT_AGENT_JOB_ID).setCopilotJobNonce(process.env.COPILOT_JOB_NONCE).setAgentModel(process.env.COPILOT_AGENT_MODEL).setCallbackUrl(process.env.COPILOT_AGENT_CALLBACK_URL).setGitHubUploadsUrl(process.env.GITHUB_UPLOADS_URL).setGitHubDownloadsUrl(process.env.GITHUB_DOWNLOADS_URL),t.setAipSweAgentToken(process.env.AIP_SWE_AGENT_TOKEN).setAnthropicApiKey(process.env.ANTHROPIC_API_KEY).setCopilotUrl(process.env.COPILOT_API_URL).setCopilotIntegrationId(process.env.GITHUB_COPILOT_INTEGRATION_ID).setCopilotHmacKey(process.env.CAPI_HMAC_KEY).setCopilotToken(process.env.GITHUB_COPILOT_API_TOKEN).setCopilotAzureKeyVaultUri(process.env.CAPI_AZURE_KEY_VAULT_URI).setBlackbirdMode(process.env.BLACKBIRD_MODE||"initial-search").setCopilotSessionId(process.env.COPILOT_AGENT_SESSION_ID).setCopilotPreviousSessionIds(process.env.COPILOT_AGENT_PREVIOUS_SESSION_IDS).setSwebenchBaseCommit(process.env.SWEBENCH_BASE_COMMIT).setGitHubMCPServerToken(process.env.GITHUB_MCP_SERVER_TOKEN).setAzureOpenAiKeyVaultUri(process.env.AZURE_OPENAI_KEY_VAULT_URI).setAzureOpenAiSecretName(process.env.AZURE_OPENAI_KEY_VAULT_SECRET_NAME).setOpenAiBaseUrl(process.env.OPENAI_BASE_URL).setOpenAiApiKey(process.env.AZURE_OPENAI_API_KEY||process.env.OPENAI_API_KEY).setAzureOpenAiUrl(process.env.AZURE_OPENAI_API_ENDPOINT).setAzureOpenAiApiVersion(process.env.AZURE_OPENAI_API_VERSION),process.env.COPILOT_USE_SESSIONS!==void 0&&t.setCopilotUseSessions(process.env.COPILOT_USE_SESSIONS==="true"),t.setTrajectoryOutputFile(process.env.CPD_SAVE_TRAJECTORY_OUTPUT),t.setEventsLogDirectory(process.env.COPILOT_EVENTS_LOG_DIRECTORY),process.env.COPILOT_AGENT_ONLINE_EVALUATION_DISABLED!==void 0&&t.setDisableOnlineEvaluation(process.env.COPILOT_AGENT_ONLINE_EVALUATION_DISABLED==="true"),process.env.COPILOT_AGENT_ONLINE_EVALUATION_OUTPUT_FILE!==void 0&&t.setEnableOnlineEvaluationOutputFile(process.env.COPILOT_AGENT_ONLINE_EVALUATION_OUTPUT_FILE==="true"),process.env.COPILOT_FEATURE_FLAGS&&process.env.COPILOT_FEATURE_FLAGS.split(",").map(r=>r.trim()).filter(r=>r.length>0).forEach(r=>t.setFeatureFlagEnabled(r)),process.env.COPILOT_EXPERIMENTS&&process.env.COPILOT_EXPERIMENTS.split(",").map(r=>{let[I,a]=r.split(":");t.setExperiment(I,a)}),process.env.COPILOT_AGENT_ERROR_CODES_TO_RETRY){let r=process.env.COPILOT_AGENT_ERROR_CODES_TO_RETRY.split(",").map(I=>parseInt(I.trim(),10));t.setRetryPolicy({errorCodesToRetry:r})}if(process.env.COPILOT_AGENT_REQUEST_HEADERS)try{let r=JSON.parse(process.env.COPILOT_AGENT_REQUEST_HEADERS);t.setRequestHeaders(r)}catch{}let l=process.env.COPILOT_AGENT_TIMEOUT_MIN?parseInt(process.env.COPILOT_AGENT_TIMEOUT_MIN,10):void 0;l!==void 0&&!Number.isNaN(l)&&t.setTimeoutMs(l*60*1e3);let n=process.env.COPILOT_AGENT_START_TIME_SEC?parseInt(process.env.COPILOT_AGENT_START_TIME_SEC,10):void 0;return n!==void 0&&!Number.isNaN(n)&&t.setStartTimeMs(n*1e3),t.build()}c();c();var yAt=nt(pAt(),1);import{exec as WAt,execFile as y5l}from"child_process";c();c();c();var Pee=null;function F_(){return!!Pee}function mLe(){if(!Pee)throw new Error("Settings have not been initialized");return Pee}function hAt(t){return Pee=t,t}function C_(){Pee=null}c();function oo(t,e){return t?.featureFlags?.[e]??!1}function AAt(t,e){return t?.experiments?.[e]}function bLe(t){return Object.keys(t.featureFlags??{}).filter(e=>t.featureFlags?.[e]).join(",")}var N5l=["token","secret","key","hmacKey","modelBasedRetrievalToken","metisApiKey"];function GLe(t,e=[]){for(let[l,n]of Object.entries(t))if(n!==null)switch(typeof n){case"object":GLe(n,e);break;case"undefined":break;default:if(N5l.includes(l)){let r=n.toString().trim();r!=""&&e.push(r)}break}return e}function ZAt(t,e){if(isNaN(e)||!isFinite(e)||e<=0)return{isWithin:!1,withinMs:e};if(e>1)return{isWithin:!1,withinMs:e};if(!t.timeoutMs)return{isWithin:!1,withinMs:e};let l=t.timeoutMs*e;return t.startTimeMs?{isWithin:Date.now()-t.startTimeMs>=t.timeoutMs-l,withinMs:l}:{isWithin:!1,withinMs:l}}c();import*as gAt from"process";function pLe(t){let e=gAt.env[t];if(e&&e.trim()!=="")return e}var W5l=[/\b(?:eyJ0eXAiOi|eyJhbGciOi|eyJ4NXQiOi|eyJraWQiOi)[^\s'";]+/g,/\bBearer\s+[^\s'";]+/g,/\b(?:Password|Pwd)=(?:[^\s'";]+|"[^"]+")/gi,/\s+-(?:Password|Pwd)\s+(?:[^\s'";]+|"[^"]+")/gi,/\bv1\.[0-9A-Fa-f]{40}\b/g,/\bgh[pousr]{1}_[A-Za-z0-9]{36}\b/g,/\bgithub_pat_[0-9][A-Za-z0-9]{21}_[A-Za-z0-9]{59}\b/g,/(?:[a-zA-Z][a-zA-Z\d+-.]*):\/\/([a-zA-Z\d\-._~!$&'()*+,;=%]+):([a-zA-Z\d\-._~!$&'()*+,;=:%]*)@/g,/\b[0-9A-Za-z-_~.]{3}7Q~[0-9A-Za-z-_~.]{31}\b|\b[0-9A-Za-z-_~.]{3}8Q~[0-9A-Za-z-_~.]{34}\b/g,/\b[0-9A-Za-z+/]{76}(APIM|ACDb|\+(ABa|AMC|ASt))[0-9A-Za-z+/]{5}[AQgw]==/g,/\b[0-9A-Za-z+/]{33}(AIoT|\+(ASb|AEh|ARm))[A-P][0-9A-Za-z+/]{5}=/g,/\b[0-9A-Za-z_-]{44}AzFu[0-9A-Za-z\-_]{5}[AQgw]==/g,/\b[0-9A-Za-z]{42}AzSe[A-D][0-9A-Za-z]{5}\b/g,/\b[0-9A-Za-z+/]{42}\+ACR[A-D][0-9A-Za-z+/]{5}\b/g,/\b[0-9A-Za-z]{33}AzCa[A-P][0-9A-Za-z]{5}=/g,/\boy2[a-p][0-9a-z]{15}[aq][0-9a-z]{11}[eu][bdfhjlnprtvxz357][a-p][0-9a-z]{11}[aeimquy4]\b/g,/\bnpm_[0-9A-Za-z]{36}\b/g,/\bx-ghcr-signature=[^&]+/g],NAt="******",g1=class t{static singleton;static getInstance(){return t.singleton||(t.singleton=new t),t.singleton}secretValuesToFilter;runner;logger;constructor(){}setRunner(e){this.runner=e,this.logger=e.logger,this.secretValuesToFilter=void 0}filterSecrets(e){let l=typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"message"),n=l?e.message??e.toString():e,r=this.getSecretValues();for(let I of r)n=n.replaceAll(I,NAt);for(let I of W5l)n=n.replaceAll(I,NAt);return l?(e.message=n,e):n}filterSecretsFromJsonString(e){try{let l=JSON.parse(e),n=this.filterSecretsFromObj(l);return JSON.stringify(n)}catch{return this.filterSecrets(e)}}filterSecretsFromObj(e){if(e==null)return e;if(typeof e=="string")return this.filterSecrets(e);if(typeof e=="number"){let l=this.filterSecrets(e.toString()),n=Number(l);return isNaN(n)?l:n}if(Array.isArray(e))return e.map(l=>this.filterSecretsFromObj(l));if(typeof e=="object"){let l={};for(let[n,r]of Object.entries(e))l[n]=this.filterSecretsFromObj(r);return l}return e}getSecretValues(){if(this.secretValuesToFilter)return this.secretValuesToFilter;let e={secretEnvVars:!1,runner:!1,settings:!1},l=new Set;for(let n of lZe){let r=pLe(n);r&&hLe(l,r)}if(e.secretEnvVars=!0,this.runner){for(let n of this.runner.sensitiveKeys){let r=pLe(n);r&&hLe(l,r)}e.runner=!0}if(F_()){let n=GLe(mLe());for(let r of n)hLe(l,r);e.settings=!0}return Object.values(e).every(n=>n)&&(this.secretValuesToFilter=l,this.logger?.debug("Caching secret values to filter from all sources.")),l}};function hLe(t,e){t.add(e),t.add(Buffer.from(e,"utf8").toString("base64"))}function jee(...t){let e=new Set(["DEBUG","COPILOT_AGENT_DEBUG",...t]);for(let l of e)if(process.env[l]==="1"||process.env[l]?.toLocaleLowerCase()==="true")return!0;return!1}var HF=class{logLevel;debugEnvironmentVariables;secretFilter=g1.getInstance();constructor(e,l){e===void 0?jee(...l??[])?this.logLevel=15:this.logLevel=7:this.logLevel=e,this.debugEnvironmentVariables=l}filterSecrets(e){return typeof e=="string"?this.secretFilter.filterSecrets(e):this.secretFilter.filterSecrets(e)}shouldLog(e){return this.logLevel===void 0||(this.logLevel&e)===e}isDebug(){return jee(...this.debugEnvironmentVariables??[])}};var aW=class{logger;constructor(e){this.logger=e}async exec(e,l,n,r=[]){let I=n?.silent??!1,a=n?.silentDebugLogging??!0;try{let s=(n?.isDirectAgentCommand?"Copilot: ":"")+(l?`${e} ${l.join(" ")}`:e);this.logger.startGroup(s,I?8:void 0);let o=await this._exec(e,l,n,r);if(o.error)throw o.error;return o.stdout&&(I?a&&this.logger.debug(o.stdout):this.logger.info(o.stdout)),o.stderr&&this.logger.error(o.stderr),0}catch(s){throw this.logger.error(s),s}finally{this.logger.endGroup(I?8:void 0)}}async execReturn(e,l,n,r=[]){let I=n?.silent??!1,a=n?.silentDebugLogging??!0;try{let s=(n?.isDirectAgentCommand?"Copilot: ":"")+(l?`${e} ${l.join(" ")}`:e);this.logger.startGroup(s,I?8:void 0);let o=await this._exec(e,l,n,r);if(o.error)throw o.error;return o.stdout&&(I?a&&this.logger.debug(o.stdout):this.logger.info(o.stdout)),o.stderr&&this.logger.error(o.stderr),{exitCode:o.exitCode,stdout:o.stdout,stderr:o.stderr}}catch(s){throw this.logger.error(s),s}finally{this.logger.endGroup(I?8:void 0)}}_exec(e,l,n,r=[]){n||(n={}),n.timeout||(n.timeout=9e5),l||(l=[]);let I={cwd:n.cwd,env:n.env,shell:n.shell,timeout:n.timeout,signal:n.abortSignal};return new Promise((a,s)=>{let o=n.shell&&l?.length===0?WAt(e,I):n.shell?WAt(`${e} ${(0,yAt.default)(l)}`,I):y5l(e,l,I),d="",u="";o.stdout?.on("data",b=>{d+=b}),o.stderr?.on("data",b=>{u+=b}),o.on("close",(b,p)=>{if(b!==0&&!n?.ignoreReturnCode){let h=this.filterCommand(e,l,r),Z=new Error(`Command failed with exit code ${b}: ${h}`);Z.cmd=h,Z.code=b,Z.stdout=d,Z.stderr=u,Z.signal=p,s(Z)}else a({error:null,stdout:d,stderr:u,exitCode:b})}),o.on("error",b=>{b.stdout=d,b.stderr=u,b.cmd=this.filterCommand(e,l,r),s(b)}),n.input&&(o.stdin?.write(n.input),o.stdin?.end())})}filterCommand(e,l=[],n){let r=l.reduce((I,a)=>(n.includes(a)?I.push("REDACTED"):I.push(a),I),[]);return`${e} ${r.join(" ")}`}};c();import{randomUUID as E5l}from"crypto";import{cpSync as R5l,existsSync as JAt,mkdtempSync as Y5l,rmSync as V5l}from"fs";import{homedir as xAt,tmpdir as w5l}from"os";import{join as ete}from"path";c();var _3=class t extends Error{cmd;killed;code;signal;stdout="";stderr="";errorType;skipReport;constructor(e,l,n=!1){if(!l){let r=e.code,I=e.message;"stdout"in e&&"stderr"in e&&(I+=`
804
+ `)l.name="enter";else if(t===" ")l.name="tab";else if(t==="\b"||t==="\x1B\b")l.name="backspace",l.meta=t.charAt(0)==="\x1B";else if(t==="\x7F"||t==="\x1B\x7F")l.name="delete",l.meta=t.charAt(0)==="\x1B";else if(t==="\x1B"||t==="\x1B\x1B")l.name="escape",l.meta=t.length===2;else if(t===" "||t==="\x1B ")l.name="space",l.meta=t.length===2;else if(t.length===1&&t<="")l.name=String.fromCharCode(t.charCodeAt(0)+97-1),l.ctrl=!0;else if(t.length===1&&t>="0"&&t<="9")l.name="number";else if(t.length===1&&t>="a"&&t<="z")l.name=t;else if(t.length===1&&t>="A"&&t<="Z")l.name=t.toLowerCase(),l.shift=!0;else if(e=pRl.exec(t))l.meta=!0,l.shift=/^[A-Z]$/.test(e[1]);else if(e=hRl.exec(t)){let n=[...t];n[0]==="\x1B"&&n[1]==="\x1B"&&(l.option=!0);let r=[e[1],e[2],e[4],e[6]].filter(Boolean).join(""),I=(e[3]||e[5]||1)-1;l.ctrl=!!(I&4),l.meta=!!(I&10),l.shift=!!(I&1),l.code=r,l.name=Qct[r],l.shift=ARl(r)||l.shift,l.ctrl=ZRl(r)||l.ctrl}return l},Cct=gRl;c();var vct=nt(qt(),1);var NRl=()=>(0,vct.useContext)(Dpe),fM=NRl;var WRl=(t,e={})=>{let{stdin:l,setRawMode:n,internal_exitOnCtrlC:r,internal_eventEmitter:I}=fM();(0,kXe.useEffect)(()=>{if(e.isActive!==!1)return n(!0),()=>{n(!1)}},[e.isActive,n]),(0,kXe.useEffect)(()=>{if(e.isActive===!1)return;let a=s=>{let o=Cct(s),d={upArrow:o.name==="up",downArrow:o.name==="down",leftArrow:o.name==="left",rightArrow:o.name==="right",pageDown:o.name==="pagedown",pageUp:o.name==="pageup",return:o.name==="return",escape:o.name==="escape",ctrl:o.ctrl,shift:o.shift,tab:o.name==="tab",backspace:o.name==="backspace",delete:o.name==="delete",meta:o.meta||o.name==="escape"||o.option},u=o.ctrl?o.name:o.sequence;Fct.includes(o.name)&&(u=""),u.startsWith("\x1B")&&(u=u.slice(1)),u.length===1&&typeof u[0]=="string"&&/[A-Z]/.test(u[0])&&(d.shift=!0),(!(u==="c"&&d.ctrl)||!r)&&pF.batchedUpdates(()=>{t(u,d)})};return I?.on("input",a),()=>{I?.removeListener("input",a)}},[e.isActive,l,r,t])},I1=WRl;c();var yRl=nt(qt(),1);c();var fct=nt(qt(),1);var ERl=()=>(0,fct.useContext)(zpe),PN=ERl;c();var RRl=nt(qt(),1);c();var LXe=nt(qt(),1);c();var YRl=nt(qt(),1);c();var Hct=nt(qt(),1);var VRl=()=>{let{isScreenReaderEnabled:t}=(0,Hct.useContext)(hF);return t},y3=VRl;c();var wRl=t=>({width:t.yogaNode?.getComputedWidth()??0,height:t.yogaNode?.getComputedHeight()??0}),ehe=wRl;var Iat=nt(qt(),1);import psr,{join as rat}from"path";import{text as hsr}from"stream/consumers";c();c();var SAt=nt(V_(),1);c();c();c();c();var lp=[];for(let t=0;t<256;++t)lp.push((t+256).toString(16).slice(1));function uAt(t,e=0){return(lp[t[e+0]]+lp[t[e+1]]+lp[t[e+2]]+lp[t[e+3]]+"-"+lp[t[e+4]]+lp[t[e+5]]+"-"+lp[t[e+6]]+lp[t[e+7]]+"-"+lp[t[e+8]]+lp[t[e+9]]+"-"+lp[t[e+10]]+lp[t[e+11]]+lp[t[e+12]]+lp[t[e+13]]+lp[t[e+14]]+lp[t[e+15]]).toLowerCase()}c();import{randomFillSync as p5l}from"node:crypto";var tZe=new Uint8Array(256),eZe=tZe.length;function dLe(){return eZe>tZe.length-16&&(p5l(tZe),eZe=0),tZe.slice(eZe,eZe+=16)}c();c();import{randomUUID as h5l}from"node:crypto";var uLe={randomUUID:h5l};function A5l(t,e,l){t=t||{};let n=t.random??t.rng?.()??dLe();if(n.length<16)throw new Error("Random bytes length must be >= 16");if(n[6]=n[6]&15|64,n[8]=n[8]&63|128,e){if(l=l||0,l<0||l+16>e.length)throw new RangeError(`UUID byte range ${l}:${l+15} is out of buffer bounds`);for(let r=0;r<16;++r)e[l+r]=n[r];return e}return uAt(n)}function Z5l(t,e,l){return uLe.randomUUID&&!e&&!t?uLe.randomUUID():A5l(t,e,l)}var Bu=Z5l;var M3=class{settings={};mergePartial(e,l){return{...e,...l}}setBlackbirdMode(e){return e!==void 0&&(e=="tool"||e=="initial-search")&&(this.settings.blackbird=this.mergePartial(this.settings.blackbird,{mode:e})),this}setSwebenchBaseCommit(e){return e!==void 0&&(this.settings.swebench_base_commit=e),this}setGithubUserName(e){if(e!==void 0){let l=this.settings.github?.user||{};this.settings.github=this.mergePartial(this.settings.github,{user:{...l,name:e}})}return this}setGithubUserEmail(e){if(e!==void 0){let l=this.settings.github?.user||{};this.settings.github=this.mergePartial(this.settings.github,{user:{...l,email:e}})}return this}setGithubToken(e){return e!==void 0&&(this.settings.github=this.mergePartial(this.settings.github,{token:e})),this}setGithubServerUrl(e){return e!==void 0&&(this.settings.github=this.mergePartial(this.settings.github,{serverUrl:e??"https://github.com"}),(!this.settings.github.host||!this.settings.github.hostProtocol)&&(this.settings.github=this.mergePartial(this.settings.github,new URL(e)))),this}setGithubHost(e){return e!==void 0&&(this.settings.github=this.mergePartial(this.settings.github,{host:e})),this}setGithubHostProtocol(e){return e!==void 0&&(this.settings.github=this.mergePartial(this.settings.github,{hostProtocol:e})),this}setGithubActorId(e){if(e!==void 0){let l=this.settings.github?.user||{};this.settings.github=this.mergePartial(this.settings.github,{user:{...l,actorId:e}})}return this}setGithubActorLogin(e){if(e!==void 0){let l=this.settings.github?.user||{};this.settings.github=this.mergePartial(this.settings.github,{user:{...l,actorLogin:e}})}return this}setAgentRuntimeVersion(e){return e!==void 0?this.settings.version=e:this.settings.version="latest",this}setGithubRepoName(e){if(e!==void 0){let l=this.settings.github?.repo||{};this.settings.github=this.mergePartial(this.settings.github,{repo:{...l,name:e}})}return this}setGithubRepoId(e){if(e!==void 0){let l=this.settings.github?.repo||{},n=Number(e);isNaN(n)||(this.settings.github=this.mergePartial(this.settings.github,{repo:{...l,id:n}}))}return this}setGithubRepoOwnerName(e){if(e!==void 0){let l=this.settings.github?.owner||{};this.settings.github=this.mergePartial(this.settings.github,{owner:{...l,name:e}})}return this}setGithubRepoOwnerId(e){if(e!==void 0){let l=this.settings.github?.owner||{},n=Number(e);isNaN(n)||(this.settings.github=this.mergePartial(this.settings.github,{owner:{...l,id:n}}))}return this}setGithubRepoBranch(e){if(e){let l=e.replace(/^refs\/heads\//,"");if(l.length===0)return this;let n=this.settings.github?.repo||{};this.settings.github=this.mergePartial(this.settings.github,{repo:{...n,branch:l}})}return this}setGithubRepoCommit(e){if(e!==void 0){let l=this.settings.github?.repo||{};this.settings.github=this.mergePartial(this.settings.github,{repo:{...l,commit:e}})}return this}setGithubRepoReadWrite(e){if(e!==void 0){let l=this.settings.github?.repo||{};this.settings.github=this.mergePartial(this.settings.github,{repo:{...l,readWrite:e}})}return this}setProblemStatement(e){return e!==void 0&&(this.settings.problem=this.mergePartial(this.settings.problem,{statement:e})),this}setProblemContentFilterMode(e){return e!==void 0&&(this.settings.problem=this.mergePartial(this.settings.problem,{contentFilterMode:e})),this}setProblemAction(e){return e!==void 0&&(this.settings.problem=this.mergePartial(this.settings.problem,{action:e})),this}setCustomAgentName(e){return e!==void 0&&(this.settings.problem=this.mergePartial(this.settings.problem,{customAgentName:e})),this}setGithubPRCommitCount(e){if(e!==void 0){let l=this.settings.github?.pr||{};this.settings.github=this.mergePartial(this.settings.github,{pr:{...l,commitCount:e}})}return this}setInstanceId(e){return this.settings.service=this.mergePartial(this.settings.service,{instance:{id:e??Bu()}}),this}setAgentModel(e){if(e!==void 0){let l=this.settings.service?.agent||{};this.settings.service=this.mergePartial(this.settings.service,{agent:{...l,model:e}})}return this}setRequestHeaders(e){if(e!==void 0){let l=this.settings.service?.agent||{};this.settings.service=this.mergePartial(this.settings.service,{agent:{...l,requestHeaders:e}})}return this}setRetryPolicy(e){if(e!==void 0){let l=this.settings.service?.agent||{};this.settings.service=this.mergePartial(this.settings.service,{agent:{...l,retryPolicy:e}})}return this}setCallbackUrl(e){return e!==void 0&&(this.settings.service=this.mergePartial(this.settings.service,{callback:{url:e}})),this}setGitHubUploadsUrl(e){return e!==void 0&&(this.settings.github=this.mergePartial(this.settings.github,{uploadsUrl:e})),this}setGitHubDownloadsUrl(e){return e!==void 0&&(this.settings.github=this.mergePartial(this.settings.github,{downloadsUrl:e})),this}setAipSweAgentToken(e){return e!==void 0&&(this.settings.api=this.mergePartial(this.settings.api,{aipSweAgent:{token:e}})),this}setAnthropicApiKey(e){return e!==void 0&&(this.settings.api=this.mergePartial(this.settings.api,{anthropic:{key:e}})),this}setOpenAiApiKey(e){if(e!==void 0){let l=this.settings.api?.openai||{};this.settings.api=this.mergePartial(this.settings.api,{openai:{...l,apiKey:e}})}return this}setOpenAiBaseUrl(e){if(e!==void 0){let l=this.settings.api?.openai||{};this.settings.api=this.mergePartial(this.settings.api,{openai:{...l,baseUrl:e}})}return this}setAzureOpenAiUrl(e){if(e!==void 0){let l=this.settings.api?.openai||{};this.settings.api=this.mergePartial(this.settings.api,{openai:{...l,azure:{...l.azure,url:e}}})}return this}setAzureOpenAiApiVersion(e){if(e!==void 0){let l=this.settings.api?.openai||{};this.settings.api=this.mergePartial(this.settings.api,{openai:{...l,azure:{...l.azure,apiVersion:e}}})}return this}setAzureOpenAiKeyVaultUri(e){if(e!==void 0){let l=this.settings.api?.openai||{};this.settings.api=this.mergePartial(this.settings.api,{openai:{...l,azureKeyVaultUri:e}})}return this}setAzureOpenAiSecretName(e){if(e!==void 0){let l=this.settings.api?.openai||{};this.settings.api=this.mergePartial(this.settings.api,{openai:{...l,azureSecretName:e}})}return this}setCopilotUrl(e){if(e!==void 0){let l=this.settings.api?.copilot||{};this.settings.api=this.mergePartial(this.settings.api,{copilot:{...l,url:e}})}return this}setCopilotIntegrationId(e){if(e!==void 0){let l=this.settings.api?.copilot||{};this.settings.api=this.mergePartial(this.settings.api,{copilot:{...l,integrationId:e}})}return this}setCopilotHmacKey(e){if(e!==void 0){let l=this.settings.api?.copilot||{};this.settings.api=this.mergePartial(this.settings.api,{copilot:{...l,hmacKey:e}})}return this}setCopilotToken(e){if(e!==void 0){let l=this.settings.api?.copilot||{};this.settings.api=this.mergePartial(this.settings.api,{copilot:{...l,token:e}})}return this}setCopilotAzureKeyVaultUri(e){if(e!==void 0){let l=this.settings.api?.copilot||{};this.settings.api=this.mergePartial(this.settings.api,{copilot:{...l,azureKeyVaultUri:e}})}return this}setCopilotSessionId(e){if(e!==void 0){let l=this.settings.api?.copilot||{};this.settings.api=this.mergePartial(this.settings.api,{copilot:{...l,sessionId:e}})}return this}setCopilotPreviousSessionIds(e){if(e!==void 0){let l=this.settings.api?.copilot||{};this.settings.api=this.mergePartial(this.settings.api,{copilot:{...l,previousSessionIds:e.split(",").map(n=>n.trim()).filter(n=>n.length>0)}})}return this}setCopilotUseSessions(e){if(e!==void 0){let l=this.settings.api?.copilot||{};this.settings.api=this.mergePartial(this.settings.api,{copilot:{...l,useSessions:e}})}return this}setCopilotJobNonce(e){return e!==void 0&&(this.settings.job=this.mergePartial(this.settings.job,{nonce:e})),this}setCopilotJobEventType(e){return e!==void 0&&(this.settings.job=this.mergePartial(this.settings.job,{eventType:e})),this}setTrajectoryOutputFile(e){return e!==void 0&&(this.settings.trajectory=this.mergePartial(this.settings.trajectory,{outputFile:e})),this}setEventsLogDirectory(e){return e!==void 0&&(this.settings.logs=this.mergePartial(this.settings.logs,{eventsLogDir:e})),this}setDisableOnlineEvaluation(e){return e==!0&&this.settings.onlineEvaluation?.disableOnlineEvaluation!==!0&&(this.settings.onlineEvaluation=this.mergePartial(this.settings.onlineEvaluation,{disableOnlineEvaluation:e})),this}setEnableOnlineEvaluationOutputFile(e){return e==!0&&this.settings.onlineEvaluation?.enableOnlineEvaluationOutputFile!==!0&&(this.settings.onlineEvaluation=this.mergePartial(this.settings.onlineEvaluation,{enableOnlineEvaluationOutputFile:e})),this}setGitHubMCPServerToken(e){return e!==void 0&&(this.settings.api=this.mergePartial(this.settings.api,{github:{mcpServerToken:e}})),this}setFeatureFlagEnabled(e){return this.settings.featureFlags=this.mergePartial(this.settings.featureFlags,{[e]:!0}),this}setExperiment(e,l){return this.settings.experiments=this.mergePartial(this.settings.experiments,{[e]:l}),this}setTimeoutMs(e){return e!==void 0&&(this.settings.timeoutMs=e),this}setStartTimeMs(e){return e!==void 0&&(this.settings.startTimeMs=e),this}build(){return this.settings}};var lZe=["GITHUB_TOKEN","GITHUB_COPILOT_API_TOKEN","CAPI_HMAC_KEY","CAPI_HMAC_KEY_OVERRIDE","ANTHROPIC_API_KEY","AIP_SWE_AGENT_TOKEN","CAPI_AZURE_KEY_VAULT_URI","COPILOT_JOB_NONCE","GITHUB_MCP_SERVER_TOKEN","OPENAI_BASE_URL","OPENAI_API_KEY","COPILOT_AGENT_REQUEST_HEADERS","AZURE_OPENAI_API_KEY","AZURE_OPENAI_API_ENDPOINT","AZURE_OPENAI_KEY_VAULT_URI","AZURE_OPENAI_KEY_VAULT_SECRET_NAME","BLACKBIRD_AUTH_METIS_API_KEY","BLACKBIRD_AUTH_MODEL_BASED_RETRIEVAL_TOKEN"],mAt=["COPILOT_CALLBACK_URL","COPILOT_AGENT_MODEL","COPILOT_AGENT_JOB_ID","COPILOT_AGENT_PROMPT","COPILOT_AGENT_PUSH","COPILOT_FIREWALL_ENABLED","COPILOT_FIREWALL_ALLOW_LIST","GITHUB_COPILOT_INTEGRATION_ID","COPILOT_INTEGRATION_ID_OVERRIDE","COPILOT_AGENT_SESSION_ID","COPILOT_AGENT_PREVIOUS_SESSION_IDS","COPILOT_AGENT_EVENT_URL","COPILOT_AGENT_EVENT_TYPE","COPILOT_AGENT_ACTOR","COPILOT_AGENT_ACTOR_ID",...lZe];async function bAt(){let t=new M3;t.setGithubServerUrl(process.env.GITHUB_SERVER_URL).setGithubHost(process.env.GITHUB_HOST).setGithubHostProtocol(process.env.GITHUB_HOST_PROTOCOL).setGithubToken(process.env.GITHUB_TOKEN).setGithubUserName(process.env.COPILOT_AGENT_COMMIT_LOGIN).setGithubUserEmail(process.env.COPILOT_AGENT_COMMIT_EMAIL).setGithubRepoOwnerId(process.env.GITHUB_REPOSITORY_OWNER_ID).setGithubRepoOwnerName(process.env.GITHUB_REPOSITORY_OWNER).setGithubRepoId(process.env.GITHUB_REPOSITORY_ID).setGithubRepoName(process.env.GITHUB_REPOSITORY).setGithubRepoBranch(process.env.COPILOT_AGENT_BRANCH_NAME).setGithubRepoCommit(process.env.COPILOT_AGENT_BASE_COMMIT).setAgentRuntimeVersion(process.env.COPILOT_AGENT_RUNTIME_VERSION),process.env.COPILOT_AGENT_PUSH!==void 0&&t.setGithubRepoReadWrite(process.env.COPILOT_AGENT_PUSH==="true"),t.setGithubPRCommitCount(process.env.COPILOT_AGENT_PR_COMMIT_COUNT?parseInt(process.env.COPILOT_AGENT_PR_COMMIT_COUNT,10):void 0),t.setProblemStatement(process.env.COPILOT_AGENT_PROMPT).setProblemContentFilterMode(process.env.COPILOT_AGENT_CONTENT_FILTER_MODE).setCustomAgentName(process.env.COPILOT_CUSTOM_AGENT);let e=process.env.COPILOT_AGENT_ACTION;if(e&&["fix","fix-pr-comment"].includes(e)&&t.setProblemAction(e),process.env.COPILOT_AGENT_ACTOR_ID&&t.setGithubActorId(parseInt(process.env.COPILOT_AGENT_ACTOR_ID,10)),process.env.COPILOT_AGENT_ACTOR&&t.setGithubActorLogin(process.env.COPILOT_AGENT_ACTOR),t.setInstanceId(process.env.COPILOT_AGENT_JOB_ID).setCopilotJobNonce(process.env.COPILOT_JOB_NONCE).setCopilotJobEventType(process.env.COPILOT_JOB_EVENT_TYPE).setAgentModel(process.env.COPILOT_AGENT_MODEL).setCallbackUrl(process.env.COPILOT_AGENT_CALLBACK_URL).setGitHubUploadsUrl(process.env.GITHUB_UPLOADS_URL).setGitHubDownloadsUrl(process.env.GITHUB_DOWNLOADS_URL),t.setAipSweAgentToken(process.env.AIP_SWE_AGENT_TOKEN).setAnthropicApiKey(process.env.ANTHROPIC_API_KEY).setCopilotUrl(process.env.COPILOT_API_URL).setCopilotIntegrationId(process.env.GITHUB_COPILOT_INTEGRATION_ID).setCopilotHmacKey(process.env.CAPI_HMAC_KEY).setCopilotToken(process.env.GITHUB_COPILOT_API_TOKEN).setCopilotAzureKeyVaultUri(process.env.CAPI_AZURE_KEY_VAULT_URI).setBlackbirdMode(process.env.BLACKBIRD_MODE||"initial-search").setCopilotSessionId(process.env.COPILOT_AGENT_SESSION_ID).setCopilotPreviousSessionIds(process.env.COPILOT_AGENT_PREVIOUS_SESSION_IDS).setSwebenchBaseCommit(process.env.SWEBENCH_BASE_COMMIT).setGitHubMCPServerToken(process.env.GITHUB_MCP_SERVER_TOKEN).setAzureOpenAiKeyVaultUri(process.env.AZURE_OPENAI_KEY_VAULT_URI).setAzureOpenAiSecretName(process.env.AZURE_OPENAI_KEY_VAULT_SECRET_NAME).setOpenAiBaseUrl(process.env.OPENAI_BASE_URL).setOpenAiApiKey(process.env.AZURE_OPENAI_API_KEY||process.env.OPENAI_API_KEY).setAzureOpenAiUrl(process.env.AZURE_OPENAI_API_ENDPOINT).setAzureOpenAiApiVersion(process.env.AZURE_OPENAI_API_VERSION),process.env.COPILOT_USE_SESSIONS!==void 0&&t.setCopilotUseSessions(process.env.COPILOT_USE_SESSIONS==="true"),t.setTrajectoryOutputFile(process.env.CPD_SAVE_TRAJECTORY_OUTPUT),t.setEventsLogDirectory(process.env.COPILOT_EVENTS_LOG_DIRECTORY),process.env.COPILOT_AGENT_ONLINE_EVALUATION_DISABLED!==void 0&&t.setDisableOnlineEvaluation(process.env.COPILOT_AGENT_ONLINE_EVALUATION_DISABLED==="true"),process.env.COPILOT_AGENT_ONLINE_EVALUATION_OUTPUT_FILE!==void 0&&t.setEnableOnlineEvaluationOutputFile(process.env.COPILOT_AGENT_ONLINE_EVALUATION_OUTPUT_FILE==="true"),process.env.COPILOT_FEATURE_FLAGS&&process.env.COPILOT_FEATURE_FLAGS.split(",").map(r=>r.trim()).filter(r=>r.length>0).forEach(r=>t.setFeatureFlagEnabled(r)),process.env.COPILOT_EXPERIMENTS&&process.env.COPILOT_EXPERIMENTS.split(",").map(r=>{let[I,a]=r.split(":");t.setExperiment(I,a)}),process.env.COPILOT_AGENT_ERROR_CODES_TO_RETRY){let r=process.env.COPILOT_AGENT_ERROR_CODES_TO_RETRY.split(",").map(I=>parseInt(I.trim(),10));t.setRetryPolicy({errorCodesToRetry:r})}if(process.env.COPILOT_AGENT_REQUEST_HEADERS)try{let r=JSON.parse(process.env.COPILOT_AGENT_REQUEST_HEADERS);t.setRequestHeaders(r)}catch{}let l=process.env.COPILOT_AGENT_TIMEOUT_MIN?parseInt(process.env.COPILOT_AGENT_TIMEOUT_MIN,10):void 0;l!==void 0&&!Number.isNaN(l)&&t.setTimeoutMs(l*60*1e3);let n=process.env.COPILOT_AGENT_START_TIME_SEC?parseInt(process.env.COPILOT_AGENT_START_TIME_SEC,10):void 0;return n!==void 0&&!Number.isNaN(n)&&t.setStartTimeMs(n*1e3),t.build()}c();c();var yAt=nt(pAt(),1);import{exec as WAt,execFile as y5l}from"child_process";c();c();c();var Pee=null;function F_(){return!!Pee}function mLe(){if(!Pee)throw new Error("Settings have not been initialized");return Pee}function hAt(t){return Pee=t,t}function C_(){Pee=null}c();function oo(t,e){return t?.featureFlags?.[e]??!1}function AAt(t,e){return t?.experiments?.[e]}function bLe(t){return Object.keys(t.featureFlags??{}).filter(e=>t.featureFlags?.[e]).join(",")}var N5l=["token","secret","key","hmacKey","modelBasedRetrievalToken","metisApiKey"];function GLe(t,e=[]){for(let[l,n]of Object.entries(t))if(n!==null)switch(typeof n){case"object":GLe(n,e);break;case"undefined":break;default:if(N5l.includes(l)){let r=n.toString().trim();r!=""&&e.push(r)}break}return e}function ZAt(t,e){if(isNaN(e)||!isFinite(e)||e<=0)return{isWithin:!1,withinMs:e};if(e>1)return{isWithin:!1,withinMs:e};if(!t.timeoutMs)return{isWithin:!1,withinMs:e};let l=t.timeoutMs*e;return t.startTimeMs?{isWithin:Date.now()-t.startTimeMs>=t.timeoutMs-l,withinMs:l}:{isWithin:!1,withinMs:l}}c();import*as gAt from"process";function pLe(t){let e=gAt.env[t];if(e&&e.trim()!=="")return e}var W5l=[/\b(?:eyJ0eXAiOi|eyJhbGciOi|eyJ4NXQiOi|eyJraWQiOi)[^\s'";]+/g,/\bBearer\s+[^\s'";]+/g,/\b(?:Password|Pwd)=(?:[^\s'";]+|"[^"]+")/gi,/\s+-(?:Password|Pwd)\s+(?:[^\s'";]+|"[^"]+")/gi,/\bv1\.[0-9A-Fa-f]{40}\b/g,/\bgh[pousr]{1}_[A-Za-z0-9]{36}\b/g,/\bgithub_pat_[0-9][A-Za-z0-9]{21}_[A-Za-z0-9]{59}\b/g,/(?:[a-zA-Z][a-zA-Z\d+-.]*):\/\/([a-zA-Z\d\-._~!$&'()*+,;=%]+):([a-zA-Z\d\-._~!$&'()*+,;=:%]*)@/g,/\b[0-9A-Za-z-_~.]{3}7Q~[0-9A-Za-z-_~.]{31}\b|\b[0-9A-Za-z-_~.]{3}8Q~[0-9A-Za-z-_~.]{34}\b/g,/\b[0-9A-Za-z+/]{76}(APIM|ACDb|\+(ABa|AMC|ASt))[0-9A-Za-z+/]{5}[AQgw]==/g,/\b[0-9A-Za-z+/]{33}(AIoT|\+(ASb|AEh|ARm))[A-P][0-9A-Za-z+/]{5}=/g,/\b[0-9A-Za-z_-]{44}AzFu[0-9A-Za-z\-_]{5}[AQgw]==/g,/\b[0-9A-Za-z]{42}AzSe[A-D][0-9A-Za-z]{5}\b/g,/\b[0-9A-Za-z+/]{42}\+ACR[A-D][0-9A-Za-z+/]{5}\b/g,/\b[0-9A-Za-z]{33}AzCa[A-P][0-9A-Za-z]{5}=/g,/\boy2[a-p][0-9a-z]{15}[aq][0-9a-z]{11}[eu][bdfhjlnprtvxz357][a-p][0-9a-z]{11}[aeimquy4]\b/g,/\bnpm_[0-9A-Za-z]{36}\b/g,/\bx-ghcr-signature=[^&]+/g],NAt="******",g1=class t{static singleton;static getInstance(){return t.singleton||(t.singleton=new t),t.singleton}secretValuesToFilter;runner;logger;constructor(){}setRunner(e){this.runner=e,this.logger=e.logger,this.secretValuesToFilter=void 0}filterSecrets(e){let l=typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"message"),n=l?e.message??e.toString():e,r=this.getSecretValues();for(let I of r)n=n.replaceAll(I,NAt);for(let I of W5l)n=n.replaceAll(I,NAt);return l?(e.message=n,e):n}filterSecretsFromJsonString(e){try{let l=JSON.parse(e),n=this.filterSecretsFromObj(l);return JSON.stringify(n)}catch{return this.filterSecrets(e)}}filterSecretsFromObj(e){if(e==null)return e;if(typeof e=="string")return this.filterSecrets(e);if(typeof e=="number"){let l=this.filterSecrets(e.toString()),n=Number(l);return isNaN(n)?l:n}if(Array.isArray(e))return e.map(l=>this.filterSecretsFromObj(l));if(typeof e=="object"){let l={};for(let[n,r]of Object.entries(e))l[n]=this.filterSecretsFromObj(r);return l}return e}getSecretValues(){if(this.secretValuesToFilter)return this.secretValuesToFilter;let e={secretEnvVars:!1,runner:!1,settings:!1},l=new Set;for(let n of lZe){let r=pLe(n);r&&hLe(l,r)}if(e.secretEnvVars=!0,this.runner){for(let n of this.runner.sensitiveKeys){let r=pLe(n);r&&hLe(l,r)}e.runner=!0}if(F_()){let n=GLe(mLe());for(let r of n)hLe(l,r);e.settings=!0}return Object.values(e).every(n=>n)&&(this.secretValuesToFilter=l,this.logger?.debug("Caching secret values to filter from all sources.")),l}};function hLe(t,e){t.add(e),t.add(Buffer.from(e,"utf8").toString("base64"))}function jee(...t){let e=new Set(["DEBUG","COPILOT_AGENT_DEBUG",...t]);for(let l of e)if(process.env[l]==="1"||process.env[l]?.toLocaleLowerCase()==="true")return!0;return!1}var HF=class{logLevel;debugEnvironmentVariables;secretFilter=g1.getInstance();constructor(e,l){e===void 0?jee(...l??[])?this.logLevel=15:this.logLevel=7:this.logLevel=e,this.debugEnvironmentVariables=l}filterSecrets(e){return typeof e=="string"?this.secretFilter.filterSecrets(e):this.secretFilter.filterSecrets(e)}shouldLog(e){return this.logLevel===void 0||(this.logLevel&e)===e}isDebug(){return jee(...this.debugEnvironmentVariables??[])}};var aW=class{logger;constructor(e){this.logger=e}async exec(e,l,n,r=[]){let I=n?.silent??!1,a=n?.silentDebugLogging??!0;try{let s=(n?.isDirectAgentCommand?"Copilot: ":"")+(l?`${e} ${l.join(" ")}`:e);this.logger.startGroup(s,I?8:void 0);let o=await this._exec(e,l,n,r);if(o.error)throw o.error;return o.stdout&&(I?a&&this.logger.debug(o.stdout):this.logger.info(o.stdout)),o.stderr&&this.logger.error(o.stderr),0}catch(s){throw this.logger.error(s),s}finally{this.logger.endGroup(I?8:void 0)}}async execReturn(e,l,n,r=[]){let I=n?.silent??!1,a=n?.silentDebugLogging??!0;try{let s=(n?.isDirectAgentCommand?"Copilot: ":"")+(l?`${e} ${l.join(" ")}`:e);this.logger.startGroup(s,I?8:void 0);let o=await this._exec(e,l,n,r);if(o.error)throw o.error;return o.stdout&&(I?a&&this.logger.debug(o.stdout):this.logger.info(o.stdout)),o.stderr&&this.logger.error(o.stderr),{exitCode:o.exitCode,stdout:o.stdout,stderr:o.stderr}}catch(s){throw this.logger.error(s),s}finally{this.logger.endGroup(I?8:void 0)}}_exec(e,l,n,r=[]){n||(n={}),n.timeout||(n.timeout=9e5),l||(l=[]);let I={cwd:n.cwd,env:n.env,shell:n.shell,timeout:n.timeout,signal:n.abortSignal};return new Promise((a,s)=>{let o=n.shell&&l?.length===0?WAt(e,I):n.shell?WAt(`${e} ${(0,yAt.default)(l)}`,I):y5l(e,l,I),d="",u="";o.stdout?.on("data",b=>{d+=b}),o.stderr?.on("data",b=>{u+=b}),o.on("close",(b,p)=>{if(b!==0&&!n?.ignoreReturnCode){let h=this.filterCommand(e,l,r),Z=new Error(`Command failed with exit code ${b}: ${h}`);Z.cmd=h,Z.code=b,Z.stdout=d,Z.stderr=u,Z.signal=p,s(Z)}else a({error:null,stdout:d,stderr:u,exitCode:b})}),o.on("error",b=>{b.stdout=d,b.stderr=u,b.cmd=this.filterCommand(e,l,r),s(b)}),n.input&&(o.stdin?.write(n.input),o.stdin?.end())})}filterCommand(e,l=[],n){let r=l.reduce((I,a)=>(n.includes(a)?I.push("REDACTED"):I.push(a),I),[]);return`${e} ${r.join(" ")}`}};c();import{randomUUID as E5l}from"crypto";import{cpSync as R5l,existsSync as JAt,mkdtempSync as Y5l,rmSync as V5l}from"fs";import{homedir as xAt,tmpdir as w5l}from"os";import{join as ete}from"path";c();var _3=class t extends Error{cmd;killed;code;signal;stdout="";stderr="";errorType;skipReport;constructor(e,l,n=!1){if(!l){let r=e.code,I=e.message;"stdout"in e&&"stderr"in e&&(I+=`
805
805
  `+e.stderr?.trim()+`
806
806
  `+e.stdout?.trim()),I.includes("GH013: Repository rule violations found")||I.includes("unknown revision or path not in the working tree")?(l="protection rule",n=!0):I.includes("You may want to try Git Large File Storage")||I.includes("GH001: Large files detected")?(l="LFS",n=!0):r===1&&(I.includes("hook failed")||I.includes("husky -")||I.includes("hook declined")||I.includes("hook exited")||I.includes("vite ")||I.includes("eslint "))?(l="hook",n=!0):I.includes("use 'git pull' before pushing again")?(l="pull first",n=!0):I.includes("fetch first")?(l="fetch first",n=!0):I.includes("The requested URL returned error: 403")?(l="access denied",n=!1):I.includes("unexpected disconnect")?(l="disconnect",n=!1):(l="unknown",n=!(r==="ENOENT"||r===127||r===128||I.includes("fatal: ")))}super(`${l} git error: ${e.message}`);for(let r of Object.keys(e))this[r]=e[r];this.errorType=l??"unknown",this.skipReport=n,this.cause=e,Object.setPrototypeOf(this,t.prototype),this.name="GitError"}};c();var Kee="https://api.githubcopilot.com";function EAt(t){if(!t.github?.user?.name)throw new Error("GitHub user name is required");return t.github.user.name}function RAt(t){if(!t.github?.user?.email)throw new Error("GitHub user email is required");return t.github.user.email}function YAt(t){let e=t.github?.user?.actorLogin,l=t.github?.user?.actorId;if(!(!e||!l))return{login:e,id:l}}function VAt(t){if(!t.github?.serverUrl)throw new Error("GitHub server URL is required");return t.github.serverUrl}function wAt(t){if(!t.github?.host)throw new Error("GitHub host is required");return t.github.host}function QAt(t){if(!t.github?.hostProtocol)throw new Error("GitHub host protocol is required");return t.github.hostProtocol}function D3(t){if(!t.github?.token)throw new Error("GitHub token is required");return t.github.token}function nZe(t){if(!t.github?.repo?.name)throw new Error("GitHub repository name is required");return t.github.repo.name}function XF(t){if(!t.service?.instance?.id)throw new Error("Instance ID is required");return t.service.instance.id}function FAt(t){if(!t.service?.callback?.url)throw new Error("Callback URL is required");return t.service.callback.url}function CAt(t){if(!t.api?.anthropic?.key)throw new Error("Anthropic API key is required");return t.api.anthropic.key}function vAt(t){if(!t.api?.openai?.apiKey)throw new Error("OpenAI API key is required");return t.api.openai.apiKey}function fAt(t){if(!t.api?.openai?.azure?.url)throw new Error("Azure OpenAI deployment URL is required");return t.api.openai.azure.url}function HAt(t,e=Kee){let l=t.api?.copilot?.url||e;if(!l)throw new Error("Copilot URL is required");return l}function qee(t){if(!t.api?.copilot?.integrationId)throw new Error("Copilot integration ID is required");return t.api.copilot.integrationId}function $ee(t){if(!t.api?.copilot?.token)throw new Error("Copilot token is required");return t.api.copilot.token}function XAt(t){if(!t.github?.uploadsUrl)throw new Error("GitHub uploads URL is required");return t.github.uploadsUrl}function kAt(t){if(!t.github?.downloadsUrl)throw new Error("GitHub downloads URL is required");return t.github.downloadsUrl}c();function LAt(t){return t.startsWith('"')&&t.endsWith('"')?(t=t.substring(1,t.length-1),t.replace(/\\([abfnrtv\\"]|[0-7]{1,3})/g,(e,l)=>{switch(l[0]){case"a":return"\x07";case"b":return"\b";case"f":return"\f";case"n":return`
807
807
  `;case"r":return"\r";case"t":return" ";case"v":return"\v";case"\\":return"\\";case'"':return'"';default:return String.fromCharCode(parseInt(l,8))}})):t}var ALe='!f() { test "$1" = get && echo "password=$GITHUB_TOKEN"; }; f',sg=class{constructor(e,l){this.logger=e;this.exec=l}resolveGitUrl(e,l){let n=null,r="";try{r=VAt(e),n=new URL(r)}catch(I){this.logger.warning(`Failed to parse GITHUB_SERVER_URL "${r}". Falling back to GITHUB_HOST and GITHUB_GIT_HOST_PROTOCOL. Error: ${I.message??I}`);let a=QAt(e),s=wAt(e);try{n=URL.parse(`${a}://${s}`)}catch(o){this.logger.warning(`Unable to determine GITHUB_SERVER_URL. Falling back to "https://github.com". Error: ${o.message??o}`),n=URL.parse("https://github.com")}}if(!n)throw new Error("Could not determine the Git URL");return l&&(n.pathname=l),this.logger.info(`Using Git URL: ${n.href}`),n}async cloneRepo(e,l,n,r,I,a){process.env.GITHUB_TOKEN=process.env.GITHUB_TOKEN??D3(e);let o=this.resolveGitUrl(e,l).href;if(I=I??1,I+=1,I<2&&(I=2),JAt(ete(n,".git"))){let N={cwd:n,silent:!0};if(this.logger.debug(`Repo ${l} already cloned to ${n}`),this.logger.debug(`Configuring git credential helper for ${l}`),await this.setGitConfig(e,N,!1),await this.execGit(["remote","set-url","origin",o],N,[o]),(await this.execGit(["rev-parse","--abbrev-ref","HEAD"],N)).stdout.toString().trim()===r){this.logger.debug(`Already on branch ${r} in repo ${l}`);return}if((await this.execGit(["branch","--list",r],N,[r])).stdout.toString().trim().length>0){this.logger.debug(`Local branch ${r} already exists in repo ${l}`),this.logger.debug(`Checking out branch ${r}`),await this.execGit(["checkout",r],N,[r]);return}if(await this.hasRemoteBranch(r,n)){this.logger.debug(`Remote branch ${r} exists in repo ${l}`);let{stdout:w}=await this.execGit(["rev-parse","--is-shallow-repository"],N);w.trim()==="true"?await this.execGit(["fetch","--unshallow","--update-head-ok","origin","+refs/heads/*:refs/heads/*"],N):await this.execGit(["fetch","origin"],N),this.logger.debug(`Pulling branch ${r} with depth ${I}`),await this.execGit(["pull","--depth",I.toString(),"origin",r],N,[I.toString(),r]),this.logger.debug(`Checking out branch ${r}`),await this.execGit(["checkout",r],N,[r]);return}if(a){this.logger.debug(`Base commit ${a} provided for branch ${r} in repo ${l}`),this.logger.debug(`Checking out branch ${r}`),await this.execGit(["checkout","-b",r,a],N,[r,a]);return}throw new Error(`Branch ${r} does not exist in repo ${l} and no base commit was provided.`)}this.logger.debug(`Repo ${l} not cloned to ${n} yet`);let u=process.env.HOME||xAt(),b=Y5l(ete(w5l(),`cpd-${E5l()}`));JAt(ete(u,".gitconfig"))&&R5l(ete(u,".gitconfig"),ete(b,".gitconfig"));let p={...process.env,HOME:b},h={silent:!0,env:p},Z={cwd:n,silent:!0,env:p};await this.setGitConfig(e,h,!0);try{this.logger.debug(`Cloning repo ${l} to ${n} with branch ${r} and depth ${I}`),await this.execGit(["clone","-b",r,"--single-branch","--depth",I.toString(),o,n],h,[o,n,r,I.toString()])}catch(N){if(this.logger.debug(`Error cloning repo ${l} to ${n}: ${N}`),a)this.logger.debug(`Base commit ${a} provided. Checking out branch ${r}`),await this.execGit(["clone",o,n],h,[o,n]),await this.execGit(["checkout","-b",r,a],Z,[r,a]);else throw new Error(`Branch ${r} does not exist in repo ${l} and no base commit was provided.`)}finally{await this.cleanGitConfig(h,!0,!0)}await this.setGitConfig(e,Z,!1)}async commitChanges(e,l,n,r,I=!1,a=!1){process.env.HOME||(process.env.HOME=xAt());let s={cwd:n,silent:!0},o=YAt(e);if(o){let b=`Co-authored-by: ${o.login} <${o.id}+${o.login}@users.noreply.github.com>`;r=r.trim()+`
@@ -846,7 +846,7 @@ Note: ${Z.warning}`);e.debug(`Code review completed: ${y}`);let Y=N.map(w=>w.met
846
846
  `).filter(h=>h.length>0),p=(await n.execReturn("git",["diff","--cached","--name-only"],{cwd:e})).stdout.trim().split(`
847
847
  `).filter(h=>h.length>0);if(a=[...new Set([...u,...p])],a.length===0)try{a=(await n.execReturn("git",["diff","--name-only",AZt,"HEAD"],{cwd:e})).stdout.trim().split(`
848
848
  `).filter(Z=>Z.length>0),I=AZt}catch{return r.debug("Could not compare against empty tree"),[]}}catch(d){return r.error(`Error getting working directory changes: ${d}`),[]}}let s=[];for(let o of a)try{let d="";try{let b=JF(e,o);d=await ZZt(b,"utf-8")}catch{d=""}let u="";try{u=(await n.execReturn("git",["show",`${I}:${o}`],{cwd:e})).stdout}catch{u=""}s.push({path:o,contents:d,baseContents:u,regions:[[1,Math.max(1,d.split(`
849
- `).length)]]})}catch(d){r.warning(`Could not process file ${o}: ${d}`)}return s}catch(I){return r.error(`Error getting changed files: ${I}`),[]}}function J4l(t,e,l,n,r){let I,a=r.github?.owner?.name||"",s=r.github?.repo?.name||"";return!a||!s?I="":(I=`https://github.com/${a}/${s}`,e&&(I+="#"+e)),{repo:I,input_file_mode:"pr",repo_path:t,pr_title:l,pr_body:n,interaction_id:XF(r),initiator:"agent"}}async function x4l(t){let e=vLe.default.fileSync();return await f4l(e.name,JSON.stringify(t)),e.name}async function S4l(t,e,l,n,r,I,a){let s=null,o=null;try{s=await x4l(e);let d=JSON.stringify(l);o=vLe.default.fileSync().name,CLe.writeFileSync(o,d),I.throwIfAborted();let b=["run","--files",s,"--model",t,"--extra",o,"--detector",X4l,"--options","{}"];a.debug(`Running autofind CLI with args: ${b.join(" ")}`);let p=H4l(import.meta.url),h=hZt(p),Z=JF(h,".."),N=JF(h,"..","..");a.debug(`Current working directory: ${process.cwd()}`),a.debug(`Current file location: ${p}`),a.debug(`Current dir from file: ${h}`),a.debug(`Extra info: ${d}`);let y=[JF(process.cwd(),"autofind","autofind"),JF(N,"autofind","autofind"),JF(h,"autofind","autofind"),JF(Z,"autofind","autofind"),...process.env.AGENT_DIR?[JF(process.env.AGENT_DIR,"autofind","autofind")]:[]],Y=null,w=null;a.debug(`Searching for autofind binary in ${y.length} locations`);let H="Code review tool is not available in this environment. ";H+=`Searched paths: ${y.join(", ")}. `;for(let z of y)try{await ZZt(z),Y=z,w=hZt(z),a.debug(`Using autofind binary at: ${z}`);break}catch(se){if(a.debug(`Autofind binary not found at: ${z} (${se instanceof Error?se.message:se})`),H+=`Autofind binary not found at: ${z}. `,CLe.existsSync(z)){let ue=CLe.readdirSync(z).join(", ");H+=`Contents of ${z}: ${ue}. `}}if(I.throwIfAborted(),!Y||!w){a.error("Autofind binary not found in any expected locations"),a.debug(`Searched paths: ${y.join(", ")}`);try{let z=await import("fs/promises"),se=await z.readdir(h);a.debug(`Directory (${h}) contents: ${se.join(", ")}`),H+=`Directory (${h}) contents: ${se.join(", ")}. `;let ue=await z.readdir(Z),We=JF(Z,".."),ee=await z.readdir(We);a.debug(`Parent directory (${Z}) contents: ${ue.join(", ")}. Grandparent directory (${We}) contents: ${ee.join(", ")}.`),H+=`Parent directory (${Z}) contents: ${ue.join(", ")}. `,H+=`Grandparent directory (${We}) contents: ${ee.join(", ")}. `;let M=process.cwd(),be=await z.readdir(M);a.debug(`Working directory (${M}) contents: ${be.join(", ")}`),H+=`Working directory (${M}) contents: ${be.join(", ")}. `}catch(z){a.debug(`Failed to list directory contents: ${z}`),H+=`Failed to list directory contents: ${z}. `}return{alerts:[],warning:H}}a.debug(`Running autofind CLI from ${w}`);let J=n.api?.copilot?.token,S=n.api?.copilot?.hmacKey,T=J&&J.length>0?J:S;if(!T||T.length===0)throw a.error("CAPI token is not set"),new Error("The code_review tool requires an LLM API key");let U=n.api?.copilot?.integrationId;if(!U||U.length===0)throw a.error("CAPI integration ID is not set"),new Error("The code_review tool requires a Copilot integration ID");let j={CAPI_INTEGRATION_ID:U,CAPI_PROD_KEY:T},O=await r.execReturn(Y,b,{cwd:w,silent:!0,env:j,abortSignal:I});if(I.throwIfAborted(),O.exitCode!==0){if(O.stderr.includes("not found")||O.stderr.includes("No such file"))return a.warning("Autofind CLI not found, returning empty results for testing"),{alerts:[],warning:`Code review tool is not available in this environment: ${O.stderr}`};if(O.stderr.includes("no Copilot API key provided")||O.stderr.includes("fatal error getting model"))return a.warning("Autofind CLI not configured with API key, returning empty results for testing"),{alerts:[],warning:"Code review tool is not configured with a valid API key"};throw new Error(`Go adapter failed with code ${O.exitCode}: ${O.stderr}`)}O.stderr.trim()!==""&&a.debug(`Autofind CLI stderr: ${O.stderr}`);try{let z=JSON.parse(O.stdout);return z.alerts&&z.alerts.length>0?a.debug(`Go CLI response parsed successfully, and contains ${z.alerts.length} alerts`):a.debug("Go CLI response parsed successfully, but contains zero results"),z}catch(z){throw new Error(`Go adapter failed to return valid JSON: ${z}. Output: "${O.stdout}"`)}}catch(d){if(O4l(d))return a.warning(`Autofind CLI not available, returning empty results for testing: ${d.message}`),{alerts:[],warning:`Code review tool is not available in this environment: ${d.message}`};if(WZt(d)){let u=gZt;return a.error(u),{alerts:[],error:u,timedOut:!0}}if(B4l(d))return a.warning("Autofind CLI configuration error, returning empty results for testing"),{alerts:[],warning:"Code review tool has configuration issues (likely missing or invalid API key)"};throw d}finally{if(s)try{await pZt(s)}catch(d){a.warning(`Failed to clean up temp file ${s}: ${d}`)}if(o)try{await pZt(o)}catch(d){a.warning(`Failed to clean up extras temp file ${o}: ${d}`)}}}function B4l(t){return t instanceof Error&&(t.message.includes("no Copilot API key provided")||t.message.includes("fatal error getting model")||t.message.includes("Go adapter failed to return valid JSON: SyntaxError: Unexpected end of JSON input"))}function O4l(t){return t instanceof Error&&(t.message.includes("not found")||t.message.includes("No such file")||t.message.includes("ENOENT"))}function WZt(t){return t instanceof Error&&(t.name==="TimeoutError"||t.name==="AbortError")}c();import*as fEt from"fs";import vEt from"path";c();function oW(t,e,l="error"){e instanceof Error&&e.cause?t.telemetry.restrictedProperties[l]=`${e} (Cause: ${e.cause})`:t.telemetry.restrictedProperties[l]=`${e}`}c();function yZt(t){return"skipped"in t}function J_(t){return"analysisSuccess"in t}c();import fLe from"path";function EZt(t,e){return[...(t.locations||[]).map(n=>n.physicalLocation),...(t.relatedLocations||[]).map(n=>n.physicalLocation)].some(n=>{let r=n?.artifactLocation?.uri,I=n?.region?.startLine;if(!r||I===void 0)return!1;let a=r.replaceAll(fLe.sep,"/");return e.some(s=>s.path===a&&(s.startLine<=I&&s.endLine>=I||s.startLine===0&&s.endLine===0))})}function RZt(t){let e=t.map(({path:l})=>l).filter(l=>!U4l(l)).map(l=>T4l(l)).reduce((l,n)=>(n&&l.add(n),l),new Set);return Array.from(e)}function T4l(t){switch(fLe.extname(t)){case".js":case".jsx":case".ts":case".tsx":return"javascript";case".py":return"python";case".rb":case".erb":return"ruby";case".go":return"go";case".java":return"java";case".cs":return"csharp";case".cpp":case".cc":case".cxx":case".c":case".h":case".hpp":case".hh":case".hxx":return"cpp";case".rs":return"rust";case".swift":return"swift";case".yml":case".yaml":return t.startsWith(".github/workflows/")?"actions":void 0;default:return}}function YZt(t){switch(t){case"javascript":return["js","jsx","ts","tsx"];case"python":return["py"];case"ruby":return["rb","erb"];case"go":return["go"];case"java":return["java"];case"csharp":return["cs"];case"cpp":return["cpp","cc","cxx","c","h","hpp","hh","hxx"];case"rust":return["rs"];case"swift":return["swift"];case"actions":return["yml","yaml"];default:return}}var HLe=[".git",".hg",".svn","target","build","dist","node_modules","vendor","env",".venv","__pycache__",".next",".nuxt","bin","obj","out","artifacts"];function U4l(t){return HLe.some(e=>t.split(fLe.sep).includes(e))}c();var ANe=nt(MZt(),1);c();c();c();function wX(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:"<environment undetectable>"}c();c();function pZe(t,e,l,n){if(typeof l!="function")throw new Error("method for before hook must be a function");return n||(n={}),Array.isArray(e)?e.reverse().reduce((r,I)=>pZe.bind(null,t,I,r,n),l)():Promise.resolve().then(()=>t.registry[e]?t.registry[e].reduce((r,I)=>I.hook.bind(null,r,n),l)():l(n))}c();function _Zt(t,e,l,n){let r=n;t.registry[l]||(t.registry[l]=[]),e==="before"&&(n=(I,a)=>Promise.resolve().then(r.bind(null,a)).then(I.bind(null,a))),e==="after"&&(n=(I,a)=>{let s;return Promise.resolve().then(I.bind(null,a)).then(o=>(s=o,r(s,a))).then(()=>s)}),e==="error"&&(n=(I,a)=>Promise.resolve().then(I.bind(null,a)).catch(s=>r(s,a))),t.registry[l].push({hook:n,orig:r})}c();function DZt(t,e,l){if(!t.registry[e])return;let n=t.registry[e].map(r=>r.orig).indexOf(l);n!==-1&&t.registry[e].splice(n,1)}var zZt=Function.bind,PZt=zZt.bind(zZt);function jZt(t,e,l){let n=PZt(DZt,null).apply(null,l?[e,l]:[e]);t.api={remove:n},t.remove=n,["before","error","after","wrap"].forEach(r=>{let I=l?[e,r,l]:[e,r];t[r]=t.api[r]=PZt(_Zt,null).apply(null,I)})}function sLl(){let t=Symbol("Singular"),e={registry:{}},l=pZe.bind(null,e,t);return jZt(l,e,t),l}function oLl(){let t={registry:{}},e=pZe.bind(null,t);return jZt(e,t),e}var KZt={Singular:sLl,Collection:oLl};c();c();var iLl="0.0.0-development",cLl=`octokit-endpoint.js/${iLl} ${wX()}`,dLl={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":cLl},mediaType:{format:""}};function uLl(t){return t?Object.keys(t).reduce((e,l)=>(e[l.toLowerCase()]=t[l],e),{}):{}}function mLl(t){if(typeof t!="object"||t===null||Object.prototype.toString.call(t)!=="[object Object]")return!1;let e=Object.getPrototypeOf(t);if(e===null)return!0;let l=Object.prototype.hasOwnProperty.call(e,"constructor")&&e.constructor;return typeof l=="function"&&l instanceof l&&Function.prototype.call(l)===Function.prototype.call(t)}function egt(t,e){let l=Object.assign({},t);return Object.keys(e).forEach(n=>{mLl(e[n])?n in t?l[n]=egt(t[n],e[n]):Object.assign(l,{[n]:e[n]}):Object.assign(l,{[n]:e[n]})}),l}function qZt(t){for(let e in t)t[e]===void 0&&delete t[e];return t}function jLe(t,e,l){if(typeof e=="string"){let[r,I]=e.split(" ");l=Object.assign(I?{method:r,url:I}:{url:r},l)}else l=Object.assign({},e);l.headers=uLl(l.headers),qZt(l),qZt(l.headers);let n=egt(t||{},l);return l.url==="/graphql"&&(t&&t.mediaType.previews?.length&&(n.mediaType.previews=t.mediaType.previews.filter(r=>!n.mediaType.previews.includes(r)).concat(n.mediaType.previews)),n.mediaType.previews=(n.mediaType.previews||[]).map(r=>r.replace(/-preview/,""))),n}function bLl(t,e){let l=/\?/.test(t)?"&":"?",n=Object.keys(e);return n.length===0?t:t+l+n.map(r=>r==="q"?"q="+e.q.split("+").map(encodeURIComponent).join("+"):`${r}=${encodeURIComponent(e[r])}`).join("&")}var GLl=/\{[^{}}]+\}/g;function pLl(t){return t.replace(/(?:^\W+)|(?:(?<!\W)\W+$)/g,"").split(/,/)}function hLl(t){let e=t.match(GLl);return e?e.map(pLl).reduce((l,n)=>l.concat(n),[]):[]}function $Zt(t,e){let l={__proto__:null};for(let n of Object.keys(t))e.indexOf(n)===-1&&(l[n]=t[n]);return l}function tgt(t){return t.split(/(%[0-9A-Fa-f]{2})/g).map(function(e){return/%[0-9A-Fa-f]/.test(e)||(e=encodeURI(e).replace(/%5B/g,"[").replace(/%5D/g,"]")),e}).join("")}function T_(t){return encodeURIComponent(t).replace(/[!'()*]/g,function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})}function ote(t,e,l){return e=t==="+"||t==="#"?tgt(e):T_(e),l?T_(l)+"="+e:e}function O_(t){return t!=null}function PLe(t){return t===";"||t==="&"||t==="?"}function ALl(t,e,l,n){var r=t[l],I=[];if(O_(r)&&r!=="")if(typeof r=="string"||typeof r=="number"||typeof r=="boolean")r=r.toString(),n&&n!=="*"&&(r=r.substring(0,parseInt(n,10))),I.push(ote(e,r,PLe(e)?l:""));else if(n==="*")Array.isArray(r)?r.filter(O_).forEach(function(a){I.push(ote(e,a,PLe(e)?l:""))}):Object.keys(r).forEach(function(a){O_(r[a])&&I.push(ote(e,r[a],a))});else{let a=[];Array.isArray(r)?r.filter(O_).forEach(function(s){a.push(ote(e,s))}):Object.keys(r).forEach(function(s){O_(r[s])&&(a.push(T_(s)),a.push(ote(e,r[s].toString())))}),PLe(e)?I.push(T_(l)+"="+a.join(",")):a.length!==0&&I.push(a.join(","))}else e===";"?O_(r)&&I.push(T_(l)):r===""&&(e==="&"||e==="?")?I.push(T_(l)+"="):r===""&&I.push("");return I}function ZLl(t){return{expand:gLl.bind(null,t)}}function gLl(t,e){var l=["+","#",".","/",";","?","&"];return t=t.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(n,r,I){if(r){let s="",o=[];if(l.indexOf(r.charAt(0))!==-1&&(s=r.charAt(0),r=r.substr(1)),r.split(/,/g).forEach(function(d){var u=/([^:\*]*)(?::(\d+)|(\*))?/.exec(d);o.push(ALl(e,s,u[1],u[2]||u[3]))}),s&&s!=="+"){var a=",";return s==="?"?a="&":s!=="#"&&(a=s),(o.length!==0?s:"")+o.join(a)}else return o.join(",")}else return tgt(I)}),t==="/"?t:t.replace(/\/$/,"")}function lgt(t){let e=t.method.toUpperCase(),l=(t.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},t.headers),r,I=$Zt(t,["method","baseUrl","url","headers","request","mediaType"]),a=hLl(l);l=ZLl(l).expand(I),/^http/.test(l)||(l=t.baseUrl+l);let s=Object.keys(t).filter(u=>a.includes(u)).concat("baseUrl"),o=$Zt(I,s);if(!/application\/octet-stream/i.test(n.accept)&&(t.mediaType.format&&(n.accept=n.accept.split(/,/).map(u=>u.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${t.mediaType.format}`)).join(",")),l.endsWith("/graphql")&&t.mediaType.previews?.length)){let u=n.accept.match(/(?<![\w-])[\w-]+(?=-preview)/g)||[];n.accept=u.concat(t.mediaType.previews).map(b=>{let p=t.mediaType.format?`.${t.mediaType.format}`:"+json";return`application/vnd.github.${b}-preview${p}`}).join(",")}return["GET","HEAD"].includes(e)?l=bLl(l,o):"data"in o?r=o.data:Object.keys(o).length&&(r=o),!n["content-type"]&&typeof r<"u"&&(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(e)&&typeof r>"u"&&(r=""),Object.assign({method:e,url:l,headers:n},typeof r<"u"?{body:r}:null,t.request?{request:t.request}:null)}function NLl(t,e,l){return lgt(jLe(t,e,l))}function ngt(t,e){let l=jLe(t,e),n=NLl.bind(null,l);return Object.assign(n,{DEFAULTS:l,defaults:ngt.bind(null,l),merge:jLe.bind(null,l),parse:lgt})}var rgt=ngt(null,dLl);var cgt=nt(ogt(),1);c();var ex=class extends Error{name;status;request;response;constructor(e,l,n){super(e),this.name="HttpError",this.status=Number.parseInt(l),Number.isNaN(this.status)&&(this.status=0),"response"in n&&(this.response=n.response);let r=Object.assign({},n.request);n.request.headers.authorization&&(r.headers=Object.assign({},n.request.headers,{authorization:n.request.headers.authorization.replace(/(?<! ) .*$/," [REDACTED]")})),r.url=r.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=r}};var WLl="10.0.3",yLl={headers:{"user-agent":`octokit-request.js/${WLl} ${wX()}`}};function ELl(t){if(typeof t!="object"||t===null||Object.prototype.toString.call(t)!=="[object Object]")return!1;let e=Object.getPrototypeOf(t);if(e===null)return!0;let l=Object.prototype.hasOwnProperty.call(e,"constructor")&&e.constructor;return typeof l=="function"&&l instanceof l&&Function.prototype.call(l)===Function.prototype.call(t)}async function igt(t){let e=t.request?.fetch||globalThis.fetch;if(!e)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");let l=t.request?.log||console,n=t.request?.parseSuccessResponseBody!==!1,r=ELl(t.body)||Array.isArray(t.body)?JSON.stringify(t.body):t.body,I=Object.fromEntries(Object.entries(t.headers).map(([b,p])=>[b,String(p)])),a;try{a=await e(t.url,{method:t.method,body:r,redirect:t.request?.redirect,headers:I,signal:t.request?.signal,...t.body&&{duplex:"half"}})}catch(b){let p="Unknown Error";if(b instanceof Error){if(b.name==="AbortError")throw b.status=500,b;p=b.message,b.name==="TypeError"&&"cause"in b&&(b.cause instanceof Error?p=b.cause.message:typeof b.cause=="string"&&(p=b.cause))}let h=new ex(p,500,{request:t});throw h.cause=b,h}let s=a.status,o=a.url,d={};for(let[b,p]of a.headers)d[b]=p;let u={url:o,status:s,headers:d,data:""};if("deprecation"in d){let b=d.link&&d.link.match(/<([^<>]+)>; rel="deprecation"/),p=b&&b.pop();l.warn(`[@octokit/request] "${t.method} ${t.url}" is deprecated. It is scheduled to be removed on ${d.sunset}${p?`. See ${p}`:""}`)}if(s===204||s===205)return u;if(t.method==="HEAD"){if(s<400)return u;throw new ex(a.statusText,s,{response:u,request:t})}if(s===304)throw u.data=await KLe(a),new ex("Not modified",s,{response:u,request:t});if(s>=400)throw u.data=await KLe(a),new ex(YLl(u.data),s,{response:u,request:t});return u.data=n?await KLe(a):a.body,u}async function KLe(t){let e=t.headers.get("content-type");if(!e)return t.text().catch(()=>"");let l=(0,cgt.safeParse)(e);if(RLl(l)){let n="";try{return n=await t.text(),JSON.parse(n)}catch{return n}}else return l.type.startsWith("text/")||l.parameters.charset?.toLowerCase()==="utf-8"?t.text().catch(()=>""):t.arrayBuffer().catch(()=>new ArrayBuffer(0))}function RLl(t){return t.type==="application/json"||t.type==="application/scim+json"}function YLl(t){if(typeof t=="string")return t;if(t instanceof ArrayBuffer)return"Unknown error";if("message"in t){let e="documentation_url"in t?` - ${t.documentation_url}`:"";return Array.isArray(t.errors)?`${t.message}: ${t.errors.map(l=>JSON.stringify(l)).join(", ")}${e}`:`${t.message}${e}`}return`Unknown error: ${JSON.stringify(t)}`}function qLe(t,e){let l=t.defaults(e);return Object.assign(function(r,I){let a=l.merge(r,I);if(!a.request||!a.request.hook)return igt(l.parse(a));let s=(o,d)=>igt(l.parse(l.merge(o,d)));return Object.assign(s,{endpoint:l,defaults:qLe.bind(null,l)}),a.request.hook(s,a)},{endpoint:l,defaults:qLe.bind(null,l)})}var cte=qLe(rgt,yLl);c();var VLl="0.0.0-development";function wLl(t){return`Request failed due to following response errors:
849
+ `).length)]]})}catch(d){r.warning(`Could not process file ${o}: ${d}`)}return s}catch(I){return r.error(`Error getting changed files: ${I}`),[]}}function J4l(t,e,l,n,r){let I,a=r.github?.owner?.name||"",s=r.github?.repo?.name||"";!a||!s?I="":(I=`https://github.com/${a}/${s}`,e&&(I+="#"+e));let o=r.api?.copilot?.sessionId??XF(r);return{repo:I,input_file_mode:"pr",repo_path:t,pr_title:l,pr_body:n,callback_payload:{interaction_id:o,initiator:"agent"}}}async function x4l(t){let e=vLe.default.fileSync();return await f4l(e.name,JSON.stringify(t)),e.name}async function S4l(t,e,l,n,r,I,a){let s=null,o=null;try{s=await x4l(e);let d=JSON.stringify(l);o=vLe.default.fileSync().name,CLe.writeFileSync(o,d),I.throwIfAborted();let b=["run","--files",s,"--model",t,"--extra",o,"--detector",X4l,"--options","{}"];a.debug(`Running autofind CLI with args: ${b.join(" ")}`);let p=H4l(import.meta.url),h=hZt(p),Z=JF(h,".."),N=JF(h,"..","..");a.debug(`Current working directory: ${process.cwd()}`),a.debug(`Current file location: ${p}`),a.debug(`Current dir from file: ${h}`),a.debug(`Extra info: ${d}`);let y=[JF(process.cwd(),"autofind","autofind"),JF(N,"autofind","autofind"),JF(h,"autofind","autofind"),JF(Z,"autofind","autofind"),...process.env.AGENT_DIR?[JF(process.env.AGENT_DIR,"autofind","autofind")]:[]],Y=null,w=null;a.debug(`Searching for autofind binary in ${y.length} locations`);let H="Code review tool is not available in this environment. ";H+=`Searched paths: ${y.join(", ")}. `;for(let z of y)try{await ZZt(z),Y=z,w=hZt(z),a.debug(`Using autofind binary at: ${z}`);break}catch(se){if(a.debug(`Autofind binary not found at: ${z} (${se instanceof Error?se.message:se})`),H+=`Autofind binary not found at: ${z}. `,CLe.existsSync(z)){let ue=CLe.readdirSync(z).join(", ");H+=`Contents of ${z}: ${ue}. `}}if(I.throwIfAborted(),!Y||!w){a.error("Autofind binary not found in any expected locations"),a.debug(`Searched paths: ${y.join(", ")}`);try{let z=await import("fs/promises"),se=await z.readdir(h);a.debug(`Directory (${h}) contents: ${se.join(", ")}`),H+=`Directory (${h}) contents: ${se.join(", ")}. `;let ue=await z.readdir(Z),We=JF(Z,".."),ee=await z.readdir(We);a.debug(`Parent directory (${Z}) contents: ${ue.join(", ")}. Grandparent directory (${We}) contents: ${ee.join(", ")}.`),H+=`Parent directory (${Z}) contents: ${ue.join(", ")}. `,H+=`Grandparent directory (${We}) contents: ${ee.join(", ")}. `;let M=process.cwd(),be=await z.readdir(M);a.debug(`Working directory (${M}) contents: ${be.join(", ")}`),H+=`Working directory (${M}) contents: ${be.join(", ")}. `}catch(z){a.debug(`Failed to list directory contents: ${z}`),H+=`Failed to list directory contents: ${z}. `}return{alerts:[],warning:H}}a.debug(`Running autofind CLI from ${w}`);let J=n.api?.copilot?.token,S=n.api?.copilot?.hmacKey,T=J&&J.length>0?J:S;if(!T||T.length===0)throw a.error("CAPI token is not set"),new Error("The code_review tool requires an LLM API key");let U=n.api?.copilot?.integrationId;if(!U||U.length===0)throw a.error("CAPI integration ID is not set"),new Error("The code_review tool requires a Copilot integration ID");let j={CAPI_INTEGRATION_ID:U,CAPI_PROD_KEY:T},O=await r.execReturn(Y,b,{cwd:w,silent:!0,env:j,abortSignal:I});if(I.throwIfAborted(),O.exitCode!==0){if(O.stderr.includes("not found")||O.stderr.includes("No such file"))return a.warning("Autofind CLI not found, returning empty results for testing"),{alerts:[],warning:`Code review tool is not available in this environment: ${O.stderr}`};if(O.stderr.includes("no Copilot API key provided")||O.stderr.includes("fatal error getting model"))return a.warning("Autofind CLI not configured with API key, returning empty results for testing"),{alerts:[],warning:"Code review tool is not configured with a valid API key"};throw new Error(`Go adapter failed with code ${O.exitCode}: ${O.stderr}`)}O.stderr.trim()!==""&&a.debug(`Autofind CLI stderr: ${O.stderr}`);try{let z=JSON.parse(O.stdout);return z.alerts&&z.alerts.length>0?a.debug(`Go CLI response parsed successfully, and contains ${z.alerts.length} alerts`):a.debug("Go CLI response parsed successfully, but contains zero results"),z}catch(z){throw new Error(`Go adapter failed to return valid JSON: ${z}. Output: "${O.stdout}"`)}}catch(d){if(O4l(d))return a.warning(`Autofind CLI not available, returning empty results for testing: ${d.message}`),{alerts:[],warning:`Code review tool is not available in this environment: ${d.message}`};if(WZt(d)){let u=gZt;return a.error(u),{alerts:[],error:u,timedOut:!0}}if(B4l(d))return a.warning("Autofind CLI configuration error, returning empty results for testing"),{alerts:[],warning:"Code review tool has configuration issues (likely missing or invalid API key)"};throw d}finally{if(s)try{await pZt(s)}catch(d){a.warning(`Failed to clean up temp file ${s}: ${d}`)}if(o)try{await pZt(o)}catch(d){a.warning(`Failed to clean up extras temp file ${o}: ${d}`)}}}function B4l(t){return t instanceof Error&&(t.message.includes("no Copilot API key provided")||t.message.includes("fatal error getting model")||t.message.includes("Go adapter failed to return valid JSON: SyntaxError: Unexpected end of JSON input"))}function O4l(t){return t instanceof Error&&(t.message.includes("not found")||t.message.includes("No such file")||t.message.includes("ENOENT"))}function WZt(t){return t instanceof Error&&(t.name==="TimeoutError"||t.name==="AbortError")}c();import*as fEt from"fs";import vEt from"path";c();function oW(t,e,l="error"){e instanceof Error&&e.cause?t.telemetry.restrictedProperties[l]=`${e} (Cause: ${e.cause})`:t.telemetry.restrictedProperties[l]=`${e}`}c();function yZt(t){return"skipped"in t}function J_(t){return"analysisSuccess"in t}c();import fLe from"path";function EZt(t,e){return[...(t.locations||[]).map(n=>n.physicalLocation),...(t.relatedLocations||[]).map(n=>n.physicalLocation)].some(n=>{let r=n?.artifactLocation?.uri,I=n?.region?.startLine;if(!r||I===void 0)return!1;let a=r.replaceAll(fLe.sep,"/");return e.some(s=>s.path===a&&(s.startLine<=I&&s.endLine>=I||s.startLine===0&&s.endLine===0))})}function RZt(t){let e=t.map(({path:l})=>l).filter(l=>!U4l(l)).map(l=>T4l(l)).reduce((l,n)=>(n&&l.add(n),l),new Set);return Array.from(e)}function T4l(t){switch(fLe.extname(t)){case".js":case".jsx":case".ts":case".tsx":return"javascript";case".py":return"python";case".rb":case".erb":return"ruby";case".go":return"go";case".java":return"java";case".cs":return"csharp";case".cpp":case".cc":case".cxx":case".c":case".h":case".hpp":case".hh":case".hxx":return"cpp";case".rs":return"rust";case".swift":return"swift";case".yml":case".yaml":return t.startsWith(".github/workflows/")?"actions":void 0;default:return}}function YZt(t){switch(t){case"javascript":return["js","jsx","ts","tsx"];case"python":return["py"];case"ruby":return["rb","erb"];case"go":return["go"];case"java":return["java"];case"csharp":return["cs"];case"cpp":return["cpp","cc","cxx","c","h","hpp","hh","hxx"];case"rust":return["rs"];case"swift":return["swift"];case"actions":return["yml","yaml"];default:return}}var HLe=[".git",".hg",".svn","target","build","dist","node_modules","vendor","env",".venv","__pycache__",".next",".nuxt","bin","obj","out","artifacts"];function U4l(t){return HLe.some(e=>t.split(fLe.sep).includes(e))}c();var ANe=nt(MZt(),1);c();c();c();function wX(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:"<environment undetectable>"}c();c();function pZe(t,e,l,n){if(typeof l!="function")throw new Error("method for before hook must be a function");return n||(n={}),Array.isArray(e)?e.reverse().reduce((r,I)=>pZe.bind(null,t,I,r,n),l)():Promise.resolve().then(()=>t.registry[e]?t.registry[e].reduce((r,I)=>I.hook.bind(null,r,n),l)():l(n))}c();function _Zt(t,e,l,n){let r=n;t.registry[l]||(t.registry[l]=[]),e==="before"&&(n=(I,a)=>Promise.resolve().then(r.bind(null,a)).then(I.bind(null,a))),e==="after"&&(n=(I,a)=>{let s;return Promise.resolve().then(I.bind(null,a)).then(o=>(s=o,r(s,a))).then(()=>s)}),e==="error"&&(n=(I,a)=>Promise.resolve().then(I.bind(null,a)).catch(s=>r(s,a))),t.registry[l].push({hook:n,orig:r})}c();function DZt(t,e,l){if(!t.registry[e])return;let n=t.registry[e].map(r=>r.orig).indexOf(l);n!==-1&&t.registry[e].splice(n,1)}var zZt=Function.bind,PZt=zZt.bind(zZt);function jZt(t,e,l){let n=PZt(DZt,null).apply(null,l?[e,l]:[e]);t.api={remove:n},t.remove=n,["before","error","after","wrap"].forEach(r=>{let I=l?[e,r,l]:[e,r];t[r]=t.api[r]=PZt(_Zt,null).apply(null,I)})}function sLl(){let t=Symbol("Singular"),e={registry:{}},l=pZe.bind(null,e,t);return jZt(l,e,t),l}function oLl(){let t={registry:{}},e=pZe.bind(null,t);return jZt(e,t),e}var KZt={Singular:sLl,Collection:oLl};c();c();var iLl="0.0.0-development",cLl=`octokit-endpoint.js/${iLl} ${wX()}`,dLl={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":cLl},mediaType:{format:""}};function uLl(t){return t?Object.keys(t).reduce((e,l)=>(e[l.toLowerCase()]=t[l],e),{}):{}}function mLl(t){if(typeof t!="object"||t===null||Object.prototype.toString.call(t)!=="[object Object]")return!1;let e=Object.getPrototypeOf(t);if(e===null)return!0;let l=Object.prototype.hasOwnProperty.call(e,"constructor")&&e.constructor;return typeof l=="function"&&l instanceof l&&Function.prototype.call(l)===Function.prototype.call(t)}function egt(t,e){let l=Object.assign({},t);return Object.keys(e).forEach(n=>{mLl(e[n])?n in t?l[n]=egt(t[n],e[n]):Object.assign(l,{[n]:e[n]}):Object.assign(l,{[n]:e[n]})}),l}function qZt(t){for(let e in t)t[e]===void 0&&delete t[e];return t}function jLe(t,e,l){if(typeof e=="string"){let[r,I]=e.split(" ");l=Object.assign(I?{method:r,url:I}:{url:r},l)}else l=Object.assign({},e);l.headers=uLl(l.headers),qZt(l),qZt(l.headers);let n=egt(t||{},l);return l.url==="/graphql"&&(t&&t.mediaType.previews?.length&&(n.mediaType.previews=t.mediaType.previews.filter(r=>!n.mediaType.previews.includes(r)).concat(n.mediaType.previews)),n.mediaType.previews=(n.mediaType.previews||[]).map(r=>r.replace(/-preview/,""))),n}function bLl(t,e){let l=/\?/.test(t)?"&":"?",n=Object.keys(e);return n.length===0?t:t+l+n.map(r=>r==="q"?"q="+e.q.split("+").map(encodeURIComponent).join("+"):`${r}=${encodeURIComponent(e[r])}`).join("&")}var GLl=/\{[^{}}]+\}/g;function pLl(t){return t.replace(/(?:^\W+)|(?:(?<!\W)\W+$)/g,"").split(/,/)}function hLl(t){let e=t.match(GLl);return e?e.map(pLl).reduce((l,n)=>l.concat(n),[]):[]}function $Zt(t,e){let l={__proto__:null};for(let n of Object.keys(t))e.indexOf(n)===-1&&(l[n]=t[n]);return l}function tgt(t){return t.split(/(%[0-9A-Fa-f]{2})/g).map(function(e){return/%[0-9A-Fa-f]/.test(e)||(e=encodeURI(e).replace(/%5B/g,"[").replace(/%5D/g,"]")),e}).join("")}function T_(t){return encodeURIComponent(t).replace(/[!'()*]/g,function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})}function ote(t,e,l){return e=t==="+"||t==="#"?tgt(e):T_(e),l?T_(l)+"="+e:e}function O_(t){return t!=null}function PLe(t){return t===";"||t==="&"||t==="?"}function ALl(t,e,l,n){var r=t[l],I=[];if(O_(r)&&r!=="")if(typeof r=="string"||typeof r=="number"||typeof r=="boolean")r=r.toString(),n&&n!=="*"&&(r=r.substring(0,parseInt(n,10))),I.push(ote(e,r,PLe(e)?l:""));else if(n==="*")Array.isArray(r)?r.filter(O_).forEach(function(a){I.push(ote(e,a,PLe(e)?l:""))}):Object.keys(r).forEach(function(a){O_(r[a])&&I.push(ote(e,r[a],a))});else{let a=[];Array.isArray(r)?r.filter(O_).forEach(function(s){a.push(ote(e,s))}):Object.keys(r).forEach(function(s){O_(r[s])&&(a.push(T_(s)),a.push(ote(e,r[s].toString())))}),PLe(e)?I.push(T_(l)+"="+a.join(",")):a.length!==0&&I.push(a.join(","))}else e===";"?O_(r)&&I.push(T_(l)):r===""&&(e==="&"||e==="?")?I.push(T_(l)+"="):r===""&&I.push("");return I}function ZLl(t){return{expand:gLl.bind(null,t)}}function gLl(t,e){var l=["+","#",".","/",";","?","&"];return t=t.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(n,r,I){if(r){let s="",o=[];if(l.indexOf(r.charAt(0))!==-1&&(s=r.charAt(0),r=r.substr(1)),r.split(/,/g).forEach(function(d){var u=/([^:\*]*)(?::(\d+)|(\*))?/.exec(d);o.push(ALl(e,s,u[1],u[2]||u[3]))}),s&&s!=="+"){var a=",";return s==="?"?a="&":s!=="#"&&(a=s),(o.length!==0?s:"")+o.join(a)}else return o.join(",")}else return tgt(I)}),t==="/"?t:t.replace(/\/$/,"")}function lgt(t){let e=t.method.toUpperCase(),l=(t.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},t.headers),r,I=$Zt(t,["method","baseUrl","url","headers","request","mediaType"]),a=hLl(l);l=ZLl(l).expand(I),/^http/.test(l)||(l=t.baseUrl+l);let s=Object.keys(t).filter(u=>a.includes(u)).concat("baseUrl"),o=$Zt(I,s);if(!/application\/octet-stream/i.test(n.accept)&&(t.mediaType.format&&(n.accept=n.accept.split(/,/).map(u=>u.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${t.mediaType.format}`)).join(",")),l.endsWith("/graphql")&&t.mediaType.previews?.length)){let u=n.accept.match(/(?<![\w-])[\w-]+(?=-preview)/g)||[];n.accept=u.concat(t.mediaType.previews).map(b=>{let p=t.mediaType.format?`.${t.mediaType.format}`:"+json";return`application/vnd.github.${b}-preview${p}`}).join(",")}return["GET","HEAD"].includes(e)?l=bLl(l,o):"data"in o?r=o.data:Object.keys(o).length&&(r=o),!n["content-type"]&&typeof r<"u"&&(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(e)&&typeof r>"u"&&(r=""),Object.assign({method:e,url:l,headers:n},typeof r<"u"?{body:r}:null,t.request?{request:t.request}:null)}function NLl(t,e,l){return lgt(jLe(t,e,l))}function ngt(t,e){let l=jLe(t,e),n=NLl.bind(null,l);return Object.assign(n,{DEFAULTS:l,defaults:ngt.bind(null,l),merge:jLe.bind(null,l),parse:lgt})}var rgt=ngt(null,dLl);var cgt=nt(ogt(),1);c();var ex=class extends Error{name;status;request;response;constructor(e,l,n){super(e),this.name="HttpError",this.status=Number.parseInt(l),Number.isNaN(this.status)&&(this.status=0),"response"in n&&(this.response=n.response);let r=Object.assign({},n.request);n.request.headers.authorization&&(r.headers=Object.assign({},n.request.headers,{authorization:n.request.headers.authorization.replace(/(?<! ) .*$/," [REDACTED]")})),r.url=r.url.replace(/\bclient_secret=\w+/g,"client_secret=[REDACTED]").replace(/\baccess_token=\w+/g,"access_token=[REDACTED]"),this.request=r}};var WLl="10.0.3",yLl={headers:{"user-agent":`octokit-request.js/${WLl} ${wX()}`}};function ELl(t){if(typeof t!="object"||t===null||Object.prototype.toString.call(t)!=="[object Object]")return!1;let e=Object.getPrototypeOf(t);if(e===null)return!0;let l=Object.prototype.hasOwnProperty.call(e,"constructor")&&e.constructor;return typeof l=="function"&&l instanceof l&&Function.prototype.call(l)===Function.prototype.call(t)}async function igt(t){let e=t.request?.fetch||globalThis.fetch;if(!e)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");let l=t.request?.log||console,n=t.request?.parseSuccessResponseBody!==!1,r=ELl(t.body)||Array.isArray(t.body)?JSON.stringify(t.body):t.body,I=Object.fromEntries(Object.entries(t.headers).map(([b,p])=>[b,String(p)])),a;try{a=await e(t.url,{method:t.method,body:r,redirect:t.request?.redirect,headers:I,signal:t.request?.signal,...t.body&&{duplex:"half"}})}catch(b){let p="Unknown Error";if(b instanceof Error){if(b.name==="AbortError")throw b.status=500,b;p=b.message,b.name==="TypeError"&&"cause"in b&&(b.cause instanceof Error?p=b.cause.message:typeof b.cause=="string"&&(p=b.cause))}let h=new ex(p,500,{request:t});throw h.cause=b,h}let s=a.status,o=a.url,d={};for(let[b,p]of a.headers)d[b]=p;let u={url:o,status:s,headers:d,data:""};if("deprecation"in d){let b=d.link&&d.link.match(/<([^<>]+)>; rel="deprecation"/),p=b&&b.pop();l.warn(`[@octokit/request] "${t.method} ${t.url}" is deprecated. It is scheduled to be removed on ${d.sunset}${p?`. See ${p}`:""}`)}if(s===204||s===205)return u;if(t.method==="HEAD"){if(s<400)return u;throw new ex(a.statusText,s,{response:u,request:t})}if(s===304)throw u.data=await KLe(a),new ex("Not modified",s,{response:u,request:t});if(s>=400)throw u.data=await KLe(a),new ex(YLl(u.data),s,{response:u,request:t});return u.data=n?await KLe(a):a.body,u}async function KLe(t){let e=t.headers.get("content-type");if(!e)return t.text().catch(()=>"");let l=(0,cgt.safeParse)(e);if(RLl(l)){let n="";try{return n=await t.text(),JSON.parse(n)}catch{return n}}else return l.type.startsWith("text/")||l.parameters.charset?.toLowerCase()==="utf-8"?t.text().catch(()=>""):t.arrayBuffer().catch(()=>new ArrayBuffer(0))}function RLl(t){return t.type==="application/json"||t.type==="application/scim+json"}function YLl(t){if(typeof t=="string")return t;if(t instanceof ArrayBuffer)return"Unknown error";if("message"in t){let e="documentation_url"in t?` - ${t.documentation_url}`:"";return Array.isArray(t.errors)?`${t.message}: ${t.errors.map(l=>JSON.stringify(l)).join(", ")}${e}`:`${t.message}${e}`}return`Unknown error: ${JSON.stringify(t)}`}function qLe(t,e){let l=t.defaults(e);return Object.assign(function(r,I){let a=l.merge(r,I);if(!a.request||!a.request.hook)return igt(l.parse(a));let s=(o,d)=>igt(l.parse(l.merge(o,d)));return Object.assign(s,{endpoint:l,defaults:qLe.bind(null,l)}),a.request.hook(s,a)},{endpoint:l,defaults:qLe.bind(null,l)})}var cte=qLe(rgt,yLl);c();var VLl="0.0.0-development";function wLl(t){return`Request failed due to following response errors:
850
850
  `+t.errors.map(e=>` - ${e.message}`).join(`
851
851
  `)}var QLl=class extends Error{constructor(t,e,l){super(wLl(l)),this.request=t,this.headers=e,this.response=l,this.errors=l.errors,this.data=l.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}name="GraphqlResponseError";errors;data},FLl=["method","baseUrl","url","headers","request","query","mediaType","operationName"],CLl=["query","method","url"],dgt=/\/api\/v3\/?$/;function vLl(t,e,l){if(l){if(typeof e=="string"&&"query"in l)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let a in l)if(CLl.includes(a))return Promise.reject(new Error(`[@octokit/graphql] "${a}" cannot be used as variable name`))}let n=typeof e=="string"?Object.assign({query:e},l):e,r=Object.keys(n).reduce((a,s)=>FLl.includes(s)?(a[s]=n[s],a):(a.variables||(a.variables={}),a.variables[s]=n[s],a),{}),I=n.baseUrl||t.endpoint.DEFAULTS.baseUrl;return dgt.test(I)&&(r.url=I.replace(dgt,"/api/graphql")),t(r).then(a=>{if(a.data.errors){let s={};for(let o of Object.keys(a.headers))s[o]=a.headers[o];throw new QLl(r,s,a.data)}return a.data.data})}function $Le(t,e){let l=t.defaults(e);return Object.assign((r,I)=>vLl(l,r,I),{defaults:$Le.bind(null,l),endpoint:l.endpoint})}var Byr=$Le(cte,{headers:{"user-agent":`octokit-graphql.js/${VLl} ${wX()}`},method:"POST",url:"/graphql"});function ugt(t){return $Le(t,{method:"POST",url:"/graphql"})}c();var eJe="(?:[a-zA-Z0-9_-]+)",mgt="\\.",bgt=new RegExp(`^${eJe}${mgt}${eJe}${mgt}${eJe}$`),fLl=bgt.test.bind(bgt);async function HLl(t){let e=fLl(t),l=t.startsWith("v1.")||t.startsWith("ghs_"),n=t.startsWith("ghu_");return{type:"token",token:t,tokenType:e?"app":l?"installation":n?"user-to-server":"oauth"}}function XLl(t){return t.split(/\./).length===3?`bearer ${t}`:`token ${t}`}async function kLl(t,e,l,n){let r=e.endpoint.merge(l,n);return r.headers.authorization=XLl(t),e(r)}var Ggt=function(e){if(!e)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof e!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return e=e.replace(/^(token|bearer) +/i,""),Object.assign(HLl.bind(null,e),{hook:kLl.bind(null,e)})};c();var tJe="7.0.3";var pgt=()=>{},LLl=console.warn.bind(console),JLl=console.error.bind(console);function xLl(t={}){return typeof t.debug!="function"&&(t.debug=pgt),typeof t.info!="function"&&(t.info=pgt),typeof t.warn!="function"&&(t.warn=LLl),typeof t.error!="function"&&(t.error=JLl),t}var hgt=`octokit-core.js/${tJe} ${wX()}`,gZe=class{static VERSION=tJe;static defaults(e){return class extends this{constructor(...n){let r=n[0]||{};if(typeof e=="function"){super(e(r));return}super(Object.assign({},e,r,r.userAgent&&e.userAgent?{userAgent:`${r.userAgent} ${e.userAgent}`}:null))}}}static plugins=[];static plugin(...e){let l=this.plugins;return class extends this{static plugins=l.concat(e.filter(r=>!l.includes(r)))}}constructor(e={}){let l=new KZt.Collection,n={baseUrl:cte.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},e.request,{hook:l.bind(null,"request")}),mediaType:{previews:[],format:""}};if(n.headers["user-agent"]=e.userAgent?`${e.userAgent} ${hgt}`:hgt,e.baseUrl&&(n.baseUrl=e.baseUrl),e.previews&&(n.mediaType.previews=e.previews),e.timeZone&&(n.headers["time-zone"]=e.timeZone),this.request=cte.defaults(n),this.graphql=ugt(this.request).defaults(n),this.log=xLl(e.log),this.hook=l,e.authStrategy){let{authStrategy:I,...a}=e,s=I(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:a},e.auth));l.wrap("request",s.hook),this.auth=s}else if(!e.auth)this.auth=async()=>({type:"unauthenticated"});else{let I=Ggt(e.auth);l.wrap("request",I.hook),this.auth=I}let r=this.constructor;for(let I=0;I<r.plugins.length;++I)Object.assign(this,r.plugins[I](this,e))}request;graphql;log;hook;auth};c();c();var Agt="6.0.0";function lJe(t){t.hook.wrap("request",(e,l)=>{t.log.debug("request",l);let n=Date.now(),r=t.request.endpoint.parse(l),I=r.url.replace(l.baseUrl,"");return e(l).then(a=>{let s=a.headers["x-github-request-id"];return t.log.info(`${r.method} ${I} - ${a.status} with id ${s} in ${Date.now()-n}ms`),a}).catch(a=>{let s=a.response?.headers["x-github-request-id"]||"UNKNOWN";throw t.log.error(`${r.method} ${I} - ${a.status} with id ${s} in ${Date.now()-n}ms`),a})})}lJe.VERSION=Agt;c();var SLl="0.0.0-development";function BLl(t){if(!t.data)return{...t,data:[]};if(!(("total_count"in t.data||"total_commits"in t.data)&&!("url"in t.data)))return t;let l=t.data.incomplete_results,n=t.data.repository_selection,r=t.data.total_count,I=t.data.total_commits;delete t.data.incomplete_results,delete t.data.repository_selection,delete t.data.total_count,delete t.data.total_commits;let a=Object.keys(t.data)[0],s=t.data[a];return t.data=s,typeof l<"u"&&(t.data.incomplete_results=l),typeof n<"u"&&(t.data.repository_selection=n),t.data.total_count=r,t.data.total_commits=I,t}function nJe(t,e,l){let n=typeof e=="function"?e.endpoint(l):t.request.endpoint(e,l),r=typeof e=="function"?e:t.request,I=n.method,a=n.headers,s=n.url;return{[Symbol.asyncIterator]:()=>({async next(){if(!s)return{done:!0};try{let o=await r({method:I,url:s,headers:a}),d=BLl(o);if(s=((d.headers.link||"").match(/<([^<>]+)>;\s*rel="next"/)||[])[1],!s&&"total_commits"in d.data){let u=new URL(d.url),b=u.searchParams,p=parseInt(b.get("page")||"1",10),h=parseInt(b.get("per_page")||"250",10);p*h<d.data.total_commits&&(b.set("page",String(p+1)),s=u.toString())}return{value:d}}catch(o){if(o.status!==409)throw o;return s="",{value:{status:200,headers:{},data:[]}}}}})}}function Zgt(t,e,l,n){return typeof l=="function"&&(n=l,l=void 0),ggt(t,[],nJe(t,e,l)[Symbol.asyncIterator](),n)}function ggt(t,e,l,n){return l.next().then(r=>{if(r.done)return e;let I=!1;function a(){I=!0}return e=e.concat(n?n(r.value,a):r.value.data),I?e:ggt(t,e,l,n)})}var cEr=Object.assign(Zgt,{iterator:nJe});function rJe(t){return{paginate:Object.assign(Zgt.bind(null,t),{iterator:nJe.bind(null,t)})}}rJe.VERSION=SLl;c();c();var IJe="16.0.0";c();c();var OLl={actions:{addCustomLabelsToSelfHostedRunnerForOrg:["POST /orgs/{org}/actions/runners/{runner_id}/labels"],addCustomLabelsToSelfHostedRunnerForRepo:["POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],addRepoAccessToSelfHostedRunnerGroupInOrg:["PUT /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],approveWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve"],cancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel"],createEnvironmentVariable:["POST /repos/{owner}/{repo}/environments/{environment_name}/variables"],createHostedRunnerForOrg:["POST /orgs/{org}/actions/hosted-runners"],createOrUpdateEnvironmentSecret:["PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}"],createOrgVariable:["POST /orgs/{org}/actions/variables"],createRegistrationTokenForOrg:["POST /orgs/{org}/actions/runners/registration-token"],createRegistrationTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/registration-token"],createRemoveTokenForOrg:["POST /orgs/{org}/actions/runners/remove-token"],createRemoveTokenForRepo:["POST /repos/{owner}/{repo}/actions/runners/remove-token"],createRepoVariable:["POST /repos/{owner}/{repo}/actions/variables"],createWorkflowDispatch:["POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches"],deleteActionsCacheById:["DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}"],deleteActionsCacheByKey:["DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}"],deleteArtifact:["DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],deleteEnvironmentSecret:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],deleteEnvironmentVariable:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],deleteHostedRunnerForOrg:["DELETE /orgs/{org}/actions/hosted-runners/{hosted_runner_id}"],deleteOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}"],deleteOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}"],deleteRepoVariable:["DELETE /repos/{owner}/{repo}/actions/variables/{name}"],deleteSelfHostedRunnerFromOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}"],deleteSelfHostedRunnerFromRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}"],deleteWorkflowRun:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}"],deleteWorkflowRunLogs:["DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],disableSelectedRepositoryGithubActionsOrganization:["DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}"],disableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable"],downloadArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}"],downloadJobLogsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs"],downloadWorkflowRunAttemptLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs"],downloadWorkflowRunLogs:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs"],enableSelectedRepositoryGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories/{repository_id}"],enableWorkflow:["PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable"],forceCancelWorkflowRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel"],generateRunnerJitconfigForOrg:["POST /orgs/{org}/actions/runners/generate-jitconfig"],generateRunnerJitconfigForRepo:["POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig"],getActionsCacheList:["GET /repos/{owner}/{repo}/actions/caches"],getActionsCacheUsage:["GET /repos/{owner}/{repo}/actions/cache/usage"],getActionsCacheUsageByRepoForOrg:["GET /orgs/{org}/actions/cache/usage-by-repository"],getActionsCacheUsageForOrg:["GET /orgs/{org}/actions/cache/usage"],getAllowedActionsOrganization:["GET /orgs/{org}/actions/permissions/selected-actions"],getAllowedActionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/selected-actions"],getArtifact:["GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}"],getCustomOidcSubClaimForRepo:["GET /repos/{owner}/{repo}/actions/oidc/customization/sub"],getEnvironmentPublicKey:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/public-key"],getEnvironmentSecret:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}"],getEnvironmentVariable:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],getGithubActionsDefaultWorkflowPermissionsOrganization:["GET /orgs/{org}/actions/permissions/workflow"],getGithubActionsDefaultWorkflowPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions/workflow"],getGithubActionsPermissionsOrganization:["GET /orgs/{org}/actions/permissions"],getGithubActionsPermissionsRepository:["GET /repos/{owner}/{repo}/actions/permissions"],getHostedRunnerForOrg:["GET /orgs/{org}/actions/hosted-runners/{hosted_runner_id}"],getHostedRunnersGithubOwnedImagesForOrg:["GET /orgs/{org}/actions/hosted-runners/images/github-owned"],getHostedRunnersLimitsForOrg:["GET /orgs/{org}/actions/hosted-runners/limits"],getHostedRunnersMachineSpecsForOrg:["GET /orgs/{org}/actions/hosted-runners/machine-sizes"],getHostedRunnersPartnerImagesForOrg:["GET /orgs/{org}/actions/hosted-runners/images/partner"],getHostedRunnersPlatformsForOrg:["GET /orgs/{org}/actions/hosted-runners/platforms"],getJobForWorkflowRun:["GET /repos/{owner}/{repo}/actions/jobs/{job_id}"],getOrgPublicKey:["GET /orgs/{org}/actions/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}"],getOrgVariable:["GET /orgs/{org}/actions/variables/{name}"],getPendingDeploymentsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],getRepoPermissions:["GET /repos/{owner}/{repo}/actions/permissions",{},{renamed:["actions","getGithubActionsPermissionsRepository"]}],getRepoPublicKey:["GET /repos/{owner}/{repo}/actions/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/actions/secrets/{secret_name}"],getRepoVariable:["GET /repos/{owner}/{repo}/actions/variables/{name}"],getReviewsForRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals"],getSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}"],getSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}"],getWorkflow:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}"],getWorkflowAccessToRepository:["GET /repos/{owner}/{repo}/actions/permissions/access"],getWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}"],getWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}"],getWorkflowRunUsage:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing"],getWorkflowUsage:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing"],listArtifactsForRepo:["GET /repos/{owner}/{repo}/actions/artifacts"],listEnvironmentSecrets:["GET /repos/{owner}/{repo}/environments/{environment_name}/secrets"],listEnvironmentVariables:["GET /repos/{owner}/{repo}/environments/{environment_name}/variables"],listGithubHostedRunnersInGroupForOrg:["GET /orgs/{org}/actions/runner-groups/{runner_group_id}/hosted-runners"],listHostedRunnersForOrg:["GET /orgs/{org}/actions/hosted-runners"],listJobsForWorkflowRun:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs"],listJobsForWorkflowRunAttempt:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs"],listLabelsForSelfHostedRunnerForOrg:["GET /orgs/{org}/actions/runners/{runner_id}/labels"],listLabelsForSelfHostedRunnerForRepo:["GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],listOrgSecrets:["GET /orgs/{org}/actions/secrets"],listOrgVariables:["GET /orgs/{org}/actions/variables"],listRepoOrganizationSecrets:["GET /repos/{owner}/{repo}/actions/organization-secrets"],listRepoOrganizationVariables:["GET /repos/{owner}/{repo}/actions/organization-variables"],listRepoSecrets:["GET /repos/{owner}/{repo}/actions/secrets"],listRepoVariables:["GET /repos/{owner}/{repo}/actions/variables"],listRepoWorkflows:["GET /repos/{owner}/{repo}/actions/workflows"],listRunnerApplicationsForOrg:["GET /orgs/{org}/actions/runners/downloads"],listRunnerApplicationsForRepo:["GET /repos/{owner}/{repo}/actions/runners/downloads"],listSelectedReposForOrgSecret:["GET /orgs/{org}/actions/secrets/{secret_name}/repositories"],listSelectedReposForOrgVariable:["GET /orgs/{org}/actions/variables/{name}/repositories"],listSelectedRepositoriesEnabledGithubActionsOrganization:["GET /orgs/{org}/actions/permissions/repositories"],listSelfHostedRunnersForOrg:["GET /orgs/{org}/actions/runners"],listSelfHostedRunnersForRepo:["GET /repos/{owner}/{repo}/actions/runners"],listWorkflowRunArtifacts:["GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts"],listWorkflowRuns:["GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs"],listWorkflowRunsForRepo:["GET /repos/{owner}/{repo}/actions/runs"],reRunJobForWorkflowRun:["POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun"],reRunWorkflow:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun"],reRunWorkflowFailedJobs:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs"],removeAllCustomLabelsFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels"],removeAllCustomLabelsFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],removeCustomLabelFromSelfHostedRunnerForOrg:["DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}"],removeCustomLabelFromSelfHostedRunnerForRepo:["DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgVariable:["DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}"],reviewCustomGatesForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule"],reviewPendingDeploymentsForRun:["POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments"],setAllowedActionsOrganization:["PUT /orgs/{org}/actions/permissions/selected-actions"],setAllowedActionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/selected-actions"],setCustomLabelsForSelfHostedRunnerForOrg:["PUT /orgs/{org}/actions/runners/{runner_id}/labels"],setCustomLabelsForSelfHostedRunnerForRepo:["PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels"],setCustomOidcSubClaimForRepo:["PUT /repos/{owner}/{repo}/actions/oidc/customization/sub"],setGithubActionsDefaultWorkflowPermissionsOrganization:["PUT /orgs/{org}/actions/permissions/workflow"],setGithubActionsDefaultWorkflowPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions/workflow"],setGithubActionsPermissionsOrganization:["PUT /orgs/{org}/actions/permissions"],setGithubActionsPermissionsRepository:["PUT /repos/{owner}/{repo}/actions/permissions"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/actions/secrets/{secret_name}/repositories"],setSelectedReposForOrgVariable:["PUT /orgs/{org}/actions/variables/{name}/repositories"],setSelectedRepositoriesEnabledGithubActionsOrganization:["PUT /orgs/{org}/actions/permissions/repositories"],setWorkflowAccessToRepository:["PUT /repos/{owner}/{repo}/actions/permissions/access"],updateEnvironmentVariable:["PATCH /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}"],updateHostedRunnerForOrg:["PATCH /orgs/{org}/actions/hosted-runners/{hosted_runner_id}"],updateOrgVariable:["PATCH /orgs/{org}/actions/variables/{name}"],updateRepoVariable:["PATCH /repos/{owner}/{repo}/actions/variables/{name}"]},activity:{checkRepoIsStarredByAuthenticatedUser:["GET /user/starred/{owner}/{repo}"],deleteRepoSubscription:["DELETE /repos/{owner}/{repo}/subscription"],deleteThreadSubscription:["DELETE /notifications/threads/{thread_id}/subscription"],getFeeds:["GET /feeds"],getRepoSubscription:["GET /repos/{owner}/{repo}/subscription"],getThread:["GET /notifications/threads/{thread_id}"],getThreadSubscriptionForAuthenticatedUser:["GET /notifications/threads/{thread_id}/subscription"],listEventsForAuthenticatedUser:["GET /users/{username}/events"],listNotificationsForAuthenticatedUser:["GET /notifications"],listOrgEventsForAuthenticatedUser:["GET /users/{username}/events/orgs/{org}"],listPublicEvents:["GET /events"],listPublicEventsForRepoNetwork:["GET /networks/{owner}/{repo}/events"],listPublicEventsForUser:["GET /users/{username}/events/public"],listPublicOrgEvents:["GET /orgs/{org}/events"],listReceivedEventsForUser:["GET /users/{username}/received_events"],listReceivedPublicEventsForUser:["GET /users/{username}/received_events/public"],listRepoEvents:["GET /repos/{owner}/{repo}/events"],listRepoNotificationsForAuthenticatedUser:["GET /repos/{owner}/{repo}/notifications"],listReposStarredByAuthenticatedUser:["GET /user/starred"],listReposStarredByUser:["GET /users/{username}/starred"],listReposWatchedByUser:["GET /users/{username}/subscriptions"],listStargazersForRepo:["GET /repos/{owner}/{repo}/stargazers"],listWatchedReposForAuthenticatedUser:["GET /user/subscriptions"],listWatchersForRepo:["GET /repos/{owner}/{repo}/subscribers"],markNotificationsAsRead:["PUT /notifications"],markRepoNotificationsAsRead:["PUT /repos/{owner}/{repo}/notifications"],markThreadAsDone:["DELETE /notifications/threads/{thread_id}"],markThreadAsRead:["PATCH /notifications/threads/{thread_id}"],setRepoSubscription:["PUT /repos/{owner}/{repo}/subscription"],setThreadSubscription:["PUT /notifications/threads/{thread_id}/subscription"],starRepoForAuthenticatedUser:["PUT /user/starred/{owner}/{repo}"],unstarRepoForAuthenticatedUser:["DELETE /user/starred/{owner}/{repo}"]},apps:{addRepoToInstallation:["PUT /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","addRepoToInstallationForAuthenticatedUser"]}],addRepoToInstallationForAuthenticatedUser:["PUT /user/installations/{installation_id}/repositories/{repository_id}"],checkToken:["POST /applications/{client_id}/token"],createFromManifest:["POST /app-manifests/{code}/conversions"],createInstallationAccessToken:["POST /app/installations/{installation_id}/access_tokens"],deleteAuthorization:["DELETE /applications/{client_id}/grant"],deleteInstallation:["DELETE /app/installations/{installation_id}"],deleteToken:["DELETE /applications/{client_id}/token"],getAuthenticated:["GET /app"],getBySlug:["GET /apps/{app_slug}"],getInstallation:["GET /app/installations/{installation_id}"],getOrgInstallation:["GET /orgs/{org}/installation"],getRepoInstallation:["GET /repos/{owner}/{repo}/installation"],getSubscriptionPlanForAccount:["GET /marketplace_listing/accounts/{account_id}"],getSubscriptionPlanForAccountStubbed:["GET /marketplace_listing/stubbed/accounts/{account_id}"],getUserInstallation:["GET /users/{username}/installation"],getWebhookConfigForApp:["GET /app/hook/config"],getWebhookDelivery:["GET /app/hook/deliveries/{delivery_id}"],listAccountsForPlan:["GET /marketplace_listing/plans/{plan_id}/accounts"],listAccountsForPlanStubbed:["GET /marketplace_listing/stubbed/plans/{plan_id}/accounts"],listInstallationReposForAuthenticatedUser:["GET /user/installations/{installation_id}/repositories"],listInstallationRequestsForAuthenticatedApp:["GET /app/installation-requests"],listInstallations:["GET /app/installations"],listInstallationsForAuthenticatedUser:["GET /user/installations"],listPlans:["GET /marketplace_listing/plans"],listPlansStubbed:["GET /marketplace_listing/stubbed/plans"],listReposAccessibleToInstallation:["GET /installation/repositories"],listSubscriptionsForAuthenticatedUser:["GET /user/marketplace_purchases"],listSubscriptionsForAuthenticatedUserStubbed:["GET /user/marketplace_purchases/stubbed"],listWebhookDeliveries:["GET /app/hook/deliveries"],redeliverWebhookDelivery:["POST /app/hook/deliveries/{delivery_id}/attempts"],removeRepoFromInstallation:["DELETE /user/installations/{installation_id}/repositories/{repository_id}",{},{renamed:["apps","removeRepoFromInstallationForAuthenticatedUser"]}],removeRepoFromInstallationForAuthenticatedUser:["DELETE /user/installations/{installation_id}/repositories/{repository_id}"],resetToken:["PATCH /applications/{client_id}/token"],revokeInstallationAccessToken:["DELETE /installation/token"],scopeToken:["POST /applications/{client_id}/token/scoped"],suspendInstallation:["PUT /app/installations/{installation_id}/suspended"],unsuspendInstallation:["DELETE /app/installations/{installation_id}/suspended"],updateWebhookConfigForApp:["PATCH /app/hook/config"]},billing:{getGithubActionsBillingOrg:["GET /orgs/{org}/settings/billing/actions"],getGithubActionsBillingUser:["GET /users/{username}/settings/billing/actions"],getGithubBillingUsageReportOrg:["GET /organizations/{org}/settings/billing/usage"],getGithubBillingUsageReportUser:["GET /users/{username}/settings/billing/usage"],getGithubPackagesBillingOrg:["GET /orgs/{org}/settings/billing/packages"],getGithubPackagesBillingUser:["GET /users/{username}/settings/billing/packages"],getSharedStorageBillingOrg:["GET /orgs/{org}/settings/billing/shared-storage"],getSharedStorageBillingUser:["GET /users/{username}/settings/billing/shared-storage"]},campaigns:{createCampaign:["POST /orgs/{org}/campaigns"],deleteCampaign:["DELETE /orgs/{org}/campaigns/{campaign_number}"],getCampaignSummary:["GET /orgs/{org}/campaigns/{campaign_number}"],listOrgCampaigns:["GET /orgs/{org}/campaigns"],updateCampaign:["PATCH /orgs/{org}/campaigns/{campaign_number}"]},checks:{create:["POST /repos/{owner}/{repo}/check-runs"],createSuite:["POST /repos/{owner}/{repo}/check-suites"],get:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}"],getSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}"],listAnnotations:["GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations"],listForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-runs"],listForSuite:["GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs"],listSuitesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/check-suites"],rerequestRun:["POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest"],rerequestSuite:["POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest"],setSuitesPreferences:["PATCH /repos/{owner}/{repo}/check-suites/preferences"],update:["PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}"]},codeScanning:{commitAutofix:["POST /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix/commits"],createAutofix:["POST /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix"],createVariantAnalysis:["POST /repos/{owner}/{repo}/code-scanning/codeql/variant-analyses"],deleteAnalysis:["DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}"],deleteCodeqlDatabase:["DELETE /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getAlert:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}",{},{renamedParameters:{alert_id:"alert_number"}}],getAnalysis:["GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}"],getAutofix:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix"],getCodeqlDatabase:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}"],getDefaultSetup:["GET /repos/{owner}/{repo}/code-scanning/default-setup"],getSarif:["GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}"],getVariantAnalysis:["GET /repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}"],getVariantAnalysisRepoTask:["GET /repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}/repos/{repo_owner}/{repo_name}"],listAlertInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances"],listAlertsForOrg:["GET /orgs/{org}/code-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/code-scanning/alerts"],listAlertsInstances:["GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances",{},{renamed:["codeScanning","listAlertInstances"]}],listCodeqlDatabases:["GET /repos/{owner}/{repo}/code-scanning/codeql/databases"],listRecentAnalyses:["GET /repos/{owner}/{repo}/code-scanning/analyses"],updateAlert:["PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}"],updateDefaultSetup:["PATCH /repos/{owner}/{repo}/code-scanning/default-setup"],uploadSarif:["POST /repos/{owner}/{repo}/code-scanning/sarifs"]},codeSecurity:{attachConfiguration:["POST /orgs/{org}/code-security/configurations/{configuration_id}/attach"],attachEnterpriseConfiguration:["POST /enterprises/{enterprise}/code-security/configurations/{configuration_id}/attach"],createConfiguration:["POST /orgs/{org}/code-security/configurations"],createConfigurationForEnterprise:["POST /enterprises/{enterprise}/code-security/configurations"],deleteConfiguration:["DELETE /orgs/{org}/code-security/configurations/{configuration_id}"],deleteConfigurationForEnterprise:["DELETE /enterprises/{enterprise}/code-security/configurations/{configuration_id}"],detachConfiguration:["DELETE /orgs/{org}/code-security/configurations/detach"],getConfiguration:["GET /orgs/{org}/code-security/configurations/{configuration_id}"],getConfigurationForRepository:["GET /repos/{owner}/{repo}/code-security-configuration"],getConfigurationsForEnterprise:["GET /enterprises/{enterprise}/code-security/configurations"],getConfigurationsForOrg:["GET /orgs/{org}/code-security/configurations"],getDefaultConfigurations:["GET /orgs/{org}/code-security/configurations/defaults"],getDefaultConfigurationsForEnterprise:["GET /enterprises/{enterprise}/code-security/configurations/defaults"],getRepositoriesForConfiguration:["GET /orgs/{org}/code-security/configurations/{configuration_id}/repositories"],getRepositoriesForEnterpriseConfiguration:["GET /enterprises/{enterprise}/code-security/configurations/{configuration_id}/repositories"],getSingleConfigurationForEnterprise:["GET /enterprises/{enterprise}/code-security/configurations/{configuration_id}"],setConfigurationAsDefault:["PUT /orgs/{org}/code-security/configurations/{configuration_id}/defaults"],setConfigurationAsDefaultForEnterprise:["PUT /enterprises/{enterprise}/code-security/configurations/{configuration_id}/defaults"],updateConfiguration:["PATCH /orgs/{org}/code-security/configurations/{configuration_id}"],updateEnterpriseConfiguration:["PATCH /enterprises/{enterprise}/code-security/configurations/{configuration_id}"]},codesOfConduct:{getAllCodesOfConduct:["GET /codes_of_conduct"],getConductCode:["GET /codes_of_conduct/{key}"]},codespaces:{addRepositoryForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],addSelectedRepoToOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],checkPermissionsForDevcontainer:["GET /repos/{owner}/{repo}/codespaces/permissions_check"],codespaceMachinesForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/machines"],createForAuthenticatedUser:["POST /user/codespaces"],createOrUpdateOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],createOrUpdateSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}"],createWithPrForAuthenticatedUser:["POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces"],createWithRepoForAuthenticatedUser:["POST /repos/{owner}/{repo}/codespaces"],deleteForAuthenticatedUser:["DELETE /user/codespaces/{codespace_name}"],deleteFromOrganization:["DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}"],deleteOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],deleteSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}"],exportForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/exports"],getCodespacesForUserInOrg:["GET /orgs/{org}/members/{username}/codespaces"],getExportDetailsForAuthenticatedUser:["GET /user/codespaces/{codespace_name}/exports/{export_id}"],getForAuthenticatedUser:["GET /user/codespaces/{codespace_name}"],getOrgPublicKey:["GET /orgs/{org}/codespaces/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}"],getPublicKeyForAuthenticatedUser:["GET /user/codespaces/secrets/public-key"],getRepoPublicKey:["GET /repos/{owner}/{repo}/codespaces/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}"],getSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}"],listDevcontainersInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/devcontainers"],listForAuthenticatedUser:["GET /user/codespaces"],listInOrganization:["GET /orgs/{org}/codespaces",{},{renamedParameters:{org_id:"org"}}],listInRepositoryForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces"],listOrgSecrets:["GET /orgs/{org}/codespaces/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/codespaces/secrets"],listRepositoriesForSecretForAuthenticatedUser:["GET /user/codespaces/secrets/{secret_name}/repositories"],listSecretsForAuthenticatedUser:["GET /user/codespaces/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],preFlightWithRepoForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/new"],publishForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/publish"],removeRepositoryForSecretForAuthenticatedUser:["DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}"],repoMachinesForAuthenticatedUser:["GET /repos/{owner}/{repo}/codespaces/machines"],setRepositoriesForSecretForAuthenticatedUser:["PUT /user/codespaces/secrets/{secret_name}/repositories"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories"],startForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/start"],stopForAuthenticatedUser:["POST /user/codespaces/{codespace_name}/stop"],stopInOrganization:["POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop"],updateForAuthenticatedUser:["PATCH /user/codespaces/{codespace_name}"]},copilot:{addCopilotSeatsForTeams:["POST /orgs/{org}/copilot/billing/selected_teams"],addCopilotSeatsForUsers:["POST /orgs/{org}/copilot/billing/selected_users"],cancelCopilotSeatAssignmentForTeams:["DELETE /orgs/{org}/copilot/billing/selected_teams"],cancelCopilotSeatAssignmentForUsers:["DELETE /orgs/{org}/copilot/billing/selected_users"],copilotMetricsForOrganization:["GET /orgs/{org}/copilot/metrics"],copilotMetricsForTeam:["GET /orgs/{org}/team/{team_slug}/copilot/metrics"],getCopilotOrganizationDetails:["GET /orgs/{org}/copilot/billing"],getCopilotSeatDetailsForUser:["GET /orgs/{org}/members/{username}/copilot"],listCopilotSeats:["GET /orgs/{org}/copilot/billing/seats"]},credentials:{revoke:["POST /credentials/revoke"]},dependabot:{addSelectedRepoToOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],createOrUpdateOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}"],createOrUpdateRepoSecret:["PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],deleteOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}"],deleteRepoSecret:["DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],getAlert:["GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"],getOrgPublicKey:["GET /orgs/{org}/dependabot/secrets/public-key"],getOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}"],getRepoPublicKey:["GET /repos/{owner}/{repo}/dependabot/secrets/public-key"],getRepoSecret:["GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/dependabot/alerts"],listAlertsForOrg:["GET /orgs/{org}/dependabot/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/dependabot/alerts"],listOrgSecrets:["GET /orgs/{org}/dependabot/secrets"],listRepoSecrets:["GET /repos/{owner}/{repo}/dependabot/secrets"],listSelectedReposForOrgSecret:["GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],removeSelectedRepoFromOrgSecret:["DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}"],setSelectedReposForOrgSecret:["PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories"],updateAlert:["PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}"]},dependencyGraph:{createRepositorySnapshot:["POST /repos/{owner}/{repo}/dependency-graph/snapshots"],diffRange:["GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}"],exportSbom:["GET /repos/{owner}/{repo}/dependency-graph/sbom"]},emojis:{get:["GET /emojis"]},gists:{checkIsStarred:["GET /gists/{gist_id}/star"],create:["POST /gists"],createComment:["POST /gists/{gist_id}/comments"],delete:["DELETE /gists/{gist_id}"],deleteComment:["DELETE /gists/{gist_id}/comments/{comment_id}"],fork:["POST /gists/{gist_id}/forks"],get:["GET /gists/{gist_id}"],getComment:["GET /gists/{gist_id}/comments/{comment_id}"],getRevision:["GET /gists/{gist_id}/{sha}"],list:["GET /gists"],listComments:["GET /gists/{gist_id}/comments"],listCommits:["GET /gists/{gist_id}/commits"],listForUser:["GET /users/{username}/gists"],listForks:["GET /gists/{gist_id}/forks"],listPublic:["GET /gists/public"],listStarred:["GET /gists/starred"],star:["PUT /gists/{gist_id}/star"],unstar:["DELETE /gists/{gist_id}/star"],update:["PATCH /gists/{gist_id}"],updateComment:["PATCH /gists/{gist_id}/comments/{comment_id}"]},git:{createBlob:["POST /repos/{owner}/{repo}/git/blobs"],createCommit:["POST /repos/{owner}/{repo}/git/commits"],createRef:["POST /repos/{owner}/{repo}/git/refs"],createTag:["POST /repos/{owner}/{repo}/git/tags"],createTree:["POST /repos/{owner}/{repo}/git/trees"],deleteRef:["DELETE /repos/{owner}/{repo}/git/refs/{ref}"],getBlob:["GET /repos/{owner}/{repo}/git/blobs/{file_sha}"],getCommit:["GET /repos/{owner}/{repo}/git/commits/{commit_sha}"],getRef:["GET /repos/{owner}/{repo}/git/ref/{ref}"],getTag:["GET /repos/{owner}/{repo}/git/tags/{tag_sha}"],getTree:["GET /repos/{owner}/{repo}/git/trees/{tree_sha}"],listMatchingRefs:["GET /repos/{owner}/{repo}/git/matching-refs/{ref}"],updateRef:["PATCH /repos/{owner}/{repo}/git/refs/{ref}"]},gitignore:{getAllTemplates:["GET /gitignore/templates"],getTemplate:["GET /gitignore/templates/{name}"]},hostedCompute:{createNetworkConfigurationForOrg:["POST /orgs/{org}/settings/network-configurations"],deleteNetworkConfigurationFromOrg:["DELETE /orgs/{org}/settings/network-configurations/{network_configuration_id}"],getNetworkConfigurationForOrg:["GET /orgs/{org}/settings/network-configurations/{network_configuration_id}"],getNetworkSettingsForOrg:["GET /orgs/{org}/settings/network-settings/{network_settings_id}"],listNetworkConfigurationsForOrg:["GET /orgs/{org}/settings/network-configurations"],updateNetworkConfigurationForOrg:["PATCH /orgs/{org}/settings/network-configurations/{network_configuration_id}"]},interactions:{getRestrictionsForAuthenticatedUser:["GET /user/interaction-limits"],getRestrictionsForOrg:["GET /orgs/{org}/interaction-limits"],getRestrictionsForRepo:["GET /repos/{owner}/{repo}/interaction-limits"],getRestrictionsForYourPublicRepos:["GET /user/interaction-limits",{},{renamed:["interactions","getRestrictionsForAuthenticatedUser"]}],removeRestrictionsForAuthenticatedUser:["DELETE /user/interaction-limits"],removeRestrictionsForOrg:["DELETE /orgs/{org}/interaction-limits"],removeRestrictionsForRepo:["DELETE /repos/{owner}/{repo}/interaction-limits"],removeRestrictionsForYourPublicRepos:["DELETE /user/interaction-limits",{},{renamed:["interactions","removeRestrictionsForAuthenticatedUser"]}],setRestrictionsForAuthenticatedUser:["PUT /user/interaction-limits"],setRestrictionsForOrg:["PUT /orgs/{org}/interaction-limits"],setRestrictionsForRepo:["PUT /repos/{owner}/{repo}/interaction-limits"],setRestrictionsForYourPublicRepos:["PUT /user/interaction-limits",{},{renamed:["interactions","setRestrictionsForAuthenticatedUser"]}]},issues:{addAssignees:["POST /repos/{owner}/{repo}/issues/{issue_number}/assignees"],addLabels:["POST /repos/{owner}/{repo}/issues/{issue_number}/labels"],addSubIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/sub_issues"],checkUserCanBeAssigned:["GET /repos/{owner}/{repo}/assignees/{assignee}"],checkUserCanBeAssignedToIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}"],create:["POST /repos/{owner}/{repo}/issues"],createComment:["POST /repos/{owner}/{repo}/issues/{issue_number}/comments"],createLabel:["POST /repos/{owner}/{repo}/labels"],createMilestone:["POST /repos/{owner}/{repo}/milestones"],deleteComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}"],deleteLabel:["DELETE /repos/{owner}/{repo}/labels/{name}"],deleteMilestone:["DELETE /repos/{owner}/{repo}/milestones/{milestone_number}"],get:["GET /repos/{owner}/{repo}/issues/{issue_number}"],getComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}"],getEvent:["GET /repos/{owner}/{repo}/issues/events/{event_id}"],getLabel:["GET /repos/{owner}/{repo}/labels/{name}"],getMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}"],list:["GET /issues"],listAssignees:["GET /repos/{owner}/{repo}/assignees"],listComments:["GET /repos/{owner}/{repo}/issues/{issue_number}/comments"],listCommentsForRepo:["GET /repos/{owner}/{repo}/issues/comments"],listEvents:["GET /repos/{owner}/{repo}/issues/{issue_number}/events"],listEventsForRepo:["GET /repos/{owner}/{repo}/issues/events"],listEventsForTimeline:["GET /repos/{owner}/{repo}/issues/{issue_number}/timeline"],listForAuthenticatedUser:["GET /user/issues"],listForOrg:["GET /orgs/{org}/issues"],listForRepo:["GET /repos/{owner}/{repo}/issues"],listLabelsForMilestone:["GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels"],listLabelsForRepo:["GET /repos/{owner}/{repo}/labels"],listLabelsOnIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/labels"],listMilestones:["GET /repos/{owner}/{repo}/milestones"],listSubIssues:["GET /repos/{owner}/{repo}/issues/{issue_number}/sub_issues"],lock:["PUT /repos/{owner}/{repo}/issues/{issue_number}/lock"],removeAllLabels:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels"],removeAssignees:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees"],removeLabel:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}"],removeSubIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/sub_issue"],reprioritizeSubIssue:["PATCH /repos/{owner}/{repo}/issues/{issue_number}/sub_issues/priority"],setLabels:["PUT /repos/{owner}/{repo}/issues/{issue_number}/labels"],unlock:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock"],update:["PATCH /repos/{owner}/{repo}/issues/{issue_number}"],updateComment:["PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}"],updateLabel:["PATCH /repos/{owner}/{repo}/labels/{name}"],updateMilestone:["PATCH /repos/{owner}/{repo}/milestones/{milestone_number}"]},licenses:{get:["GET /licenses/{license}"],getAllCommonlyUsed:["GET /licenses"],getForRepo:["GET /repos/{owner}/{repo}/license"]},markdown:{render:["POST /markdown"],renderRaw:["POST /markdown/raw",{headers:{"content-type":"text/plain; charset=utf-8"}}]},meta:{get:["GET /meta"],getAllVersions:["GET /versions"],getOctocat:["GET /octocat"],getZen:["GET /zen"],root:["GET /"]},migrations:{deleteArchiveForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/archive"],deleteArchiveForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/archive"],downloadArchiveForOrg:["GET /orgs/{org}/migrations/{migration_id}/archive"],getArchiveForAuthenticatedUser:["GET /user/migrations/{migration_id}/archive"],getStatusForAuthenticatedUser:["GET /user/migrations/{migration_id}"],getStatusForOrg:["GET /orgs/{org}/migrations/{migration_id}"],listForAuthenticatedUser:["GET /user/migrations"],listForOrg:["GET /orgs/{org}/migrations"],listReposForAuthenticatedUser:["GET /user/migrations/{migration_id}/repositories"],listReposForOrg:["GET /orgs/{org}/migrations/{migration_id}/repositories"],listReposForUser:["GET /user/migrations/{migration_id}/repositories",{},{renamed:["migrations","listReposForAuthenticatedUser"]}],startForAuthenticatedUser:["POST /user/migrations"],startForOrg:["POST /orgs/{org}/migrations"],unlockRepoForAuthenticatedUser:["DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock"],unlockRepoForOrg:["DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock"]},oidc:{getOidcCustomSubTemplateForOrg:["GET /orgs/{org}/actions/oidc/customization/sub"],updateOidcCustomSubTemplateForOrg:["PUT /orgs/{org}/actions/oidc/customization/sub"]},orgs:{addSecurityManagerTeam:["PUT /orgs/{org}/security-managers/teams/{team_slug}",{},{deprecated:"octokit.rest.orgs.addSecurityManagerTeam() is deprecated, see https://docs.github.com/rest/orgs/security-managers#add-a-security-manager-team"}],assignTeamToOrgRole:["PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],assignUserToOrgRole:["PUT /orgs/{org}/organization-roles/users/{username}/{role_id}"],blockUser:["PUT /orgs/{org}/blocks/{username}"],cancelInvitation:["DELETE /orgs/{org}/invitations/{invitation_id}"],checkBlockedUser:["GET /orgs/{org}/blocks/{username}"],checkMembershipForUser:["GET /orgs/{org}/members/{username}"],checkPublicMembershipForUser:["GET /orgs/{org}/public_members/{username}"],convertMemberToOutsideCollaborator:["PUT /orgs/{org}/outside_collaborators/{username}"],createInvitation:["POST /orgs/{org}/invitations"],createIssueType:["POST /orgs/{org}/issue-types"],createOrUpdateCustomProperties:["PATCH /orgs/{org}/properties/schema"],createOrUpdateCustomPropertiesValuesForRepos:["PATCH /orgs/{org}/properties/values"],createOrUpdateCustomProperty:["PUT /orgs/{org}/properties/schema/{custom_property_name}"],createWebhook:["POST /orgs/{org}/hooks"],delete:["DELETE /orgs/{org}"],deleteIssueType:["DELETE /orgs/{org}/issue-types/{issue_type_id}"],deleteWebhook:["DELETE /orgs/{org}/hooks/{hook_id}"],enableOrDisableSecurityProductOnAllOrgRepos:["POST /orgs/{org}/{security_product}/{enablement}",{},{deprecated:"octokit.rest.orgs.enableOrDisableSecurityProductOnAllOrgRepos() is deprecated, see https://docs.github.com/rest/orgs/orgs#enable-or-disable-a-security-feature-for-an-organization"}],get:["GET /orgs/{org}"],getAllCustomProperties:["GET /orgs/{org}/properties/schema"],getCustomProperty:["GET /orgs/{org}/properties/schema/{custom_property_name}"],getMembershipForAuthenticatedUser:["GET /user/memberships/orgs/{org}"],getMembershipForUser:["GET /orgs/{org}/memberships/{username}"],getOrgRole:["GET /orgs/{org}/organization-roles/{role_id}"],getOrgRulesetHistory:["GET /orgs/{org}/rulesets/{ruleset_id}/history"],getOrgRulesetVersion:["GET /orgs/{org}/rulesets/{ruleset_id}/history/{version_id}"],getWebhook:["GET /orgs/{org}/hooks/{hook_id}"],getWebhookConfigForOrg:["GET /orgs/{org}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}"],list:["GET /organizations"],listAppInstallations:["GET /orgs/{org}/installations"],listAttestations:["GET /orgs/{org}/attestations/{subject_digest}"],listBlockedUsers:["GET /orgs/{org}/blocks"],listCustomPropertiesValuesForRepos:["GET /orgs/{org}/properties/values"],listFailedInvitations:["GET /orgs/{org}/failed_invitations"],listForAuthenticatedUser:["GET /user/orgs"],listForUser:["GET /users/{username}/orgs"],listInvitationTeams:["GET /orgs/{org}/invitations/{invitation_id}/teams"],listIssueTypes:["GET /orgs/{org}/issue-types"],listMembers:["GET /orgs/{org}/members"],listMembershipsForAuthenticatedUser:["GET /user/memberships/orgs"],listOrgRoleTeams:["GET /orgs/{org}/organization-roles/{role_id}/teams"],listOrgRoleUsers:["GET /orgs/{org}/organization-roles/{role_id}/users"],listOrgRoles:["GET /orgs/{org}/organization-roles"],listOrganizationFineGrainedPermissions:["GET /orgs/{org}/organization-fine-grained-permissions"],listOutsideCollaborators:["GET /orgs/{org}/outside_collaborators"],listPatGrantRepositories:["GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories"],listPatGrantRequestRepositories:["GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories"],listPatGrantRequests:["GET /orgs/{org}/personal-access-token-requests"],listPatGrants:["GET /orgs/{org}/personal-access-tokens"],listPendingInvitations:["GET /orgs/{org}/invitations"],listPublicMembers:["GET /orgs/{org}/public_members"],listSecurityManagerTeams:["GET /orgs/{org}/security-managers",{},{deprecated:"octokit.rest.orgs.listSecurityManagerTeams() is deprecated, see https://docs.github.com/rest/orgs/security-managers#list-security-manager-teams"}],listWebhookDeliveries:["GET /orgs/{org}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /orgs/{org}/hooks"],pingWebhook:["POST /orgs/{org}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeCustomProperty:["DELETE /orgs/{org}/properties/schema/{custom_property_name}"],removeMember:["DELETE /orgs/{org}/members/{username}"],removeMembershipForUser:["DELETE /orgs/{org}/memberships/{username}"],removeOutsideCollaborator:["DELETE /orgs/{org}/outside_collaborators/{username}"],removePublicMembershipForAuthenticatedUser:["DELETE /orgs/{org}/public_members/{username}"],removeSecurityManagerTeam:["DELETE /orgs/{org}/security-managers/teams/{team_slug}",{},{deprecated:"octokit.rest.orgs.removeSecurityManagerTeam() is deprecated, see https://docs.github.com/rest/orgs/security-managers#remove-a-security-manager-team"}],reviewPatGrantRequest:["POST /orgs/{org}/personal-access-token-requests/{pat_request_id}"],reviewPatGrantRequestsInBulk:["POST /orgs/{org}/personal-access-token-requests"],revokeAllOrgRolesTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}"],revokeAllOrgRolesUser:["DELETE /orgs/{org}/organization-roles/users/{username}"],revokeOrgRoleTeam:["DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}"],revokeOrgRoleUser:["DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}"],setMembershipForUser:["PUT /orgs/{org}/memberships/{username}"],setPublicMembershipForAuthenticatedUser:["PUT /orgs/{org}/public_members/{username}"],unblockUser:["DELETE /orgs/{org}/blocks/{username}"],update:["PATCH /orgs/{org}"],updateIssueType:["PUT /orgs/{org}/issue-types/{issue_type_id}"],updateMembershipForAuthenticatedUser:["PATCH /user/memberships/orgs/{org}"],updatePatAccess:["POST /orgs/{org}/personal-access-tokens/{pat_id}"],updatePatAccesses:["POST /orgs/{org}/personal-access-tokens"],updateWebhook:["PATCH /orgs/{org}/hooks/{hook_id}"],updateWebhookConfigForOrg:["PATCH /orgs/{org}/hooks/{hook_id}/config"]},packages:{deletePackageForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}"],deletePackageForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}"],deletePackageForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}"],deletePackageVersionForAuthenticatedUser:["DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForOrg:["DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],deletePackageVersionForUser:["DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getAllPackageVersionsForAPackageOwnedByAnOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByOrg"]}],getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions",{},{renamed:["packages","getAllPackageVersionsForPackageOwnedByAuthenticatedUser"]}],getAllPackageVersionsForPackageOwnedByAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByOrg:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions"],getAllPackageVersionsForPackageOwnedByUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions"],getPackageForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}"],getPackageForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}"],getPackageForUser:["GET /users/{username}/packages/{package_type}/{package_name}"],getPackageVersionForAuthenticatedUser:["GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForOrganization:["GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}"],getPackageVersionForUser:["GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}"],listDockerMigrationConflictingPackagesForAuthenticatedUser:["GET /user/docker/conflicts"],listDockerMigrationConflictingPackagesForOrganization:["GET /orgs/{org}/docker/conflicts"],listDockerMigrationConflictingPackagesForUser:["GET /users/{username}/docker/conflicts"],listPackagesForAuthenticatedUser:["GET /user/packages"],listPackagesForOrganization:["GET /orgs/{org}/packages"],listPackagesForUser:["GET /users/{username}/packages"],restorePackageForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageForUser:["POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}"],restorePackageVersionForAuthenticatedUser:["POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForOrg:["POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"],restorePackageVersionForUser:["POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore"]},privateRegistries:{createOrgPrivateRegistry:["POST /orgs/{org}/private-registries"],deleteOrgPrivateRegistry:["DELETE /orgs/{org}/private-registries/{secret_name}"],getOrgPrivateRegistry:["GET /orgs/{org}/private-registries/{secret_name}"],getOrgPublicKey:["GET /orgs/{org}/private-registries/public-key"],listOrgPrivateRegistries:["GET /orgs/{org}/private-registries"],updateOrgPrivateRegistry:["PATCH /orgs/{org}/private-registries/{secret_name}"]},pulls:{checkIfMerged:["GET /repos/{owner}/{repo}/pulls/{pull_number}/merge"],create:["POST /repos/{owner}/{repo}/pulls"],createReplyForReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies"],createReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],createReviewComment:["POST /repos/{owner}/{repo}/pulls/{pull_number}/comments"],deletePendingReview:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],deleteReviewComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}"],dismissReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals"],get:["GET /repos/{owner}/{repo}/pulls/{pull_number}"],getReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],getReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}"],list:["GET /repos/{owner}/{repo}/pulls"],listCommentsForReview:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments"],listCommits:["GET /repos/{owner}/{repo}/pulls/{pull_number}/commits"],listFiles:["GET /repos/{owner}/{repo}/pulls/{pull_number}/files"],listRequestedReviewers:["GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],listReviewComments:["GET /repos/{owner}/{repo}/pulls/{pull_number}/comments"],listReviewCommentsForRepo:["GET /repos/{owner}/{repo}/pulls/comments"],listReviews:["GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews"],merge:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge"],removeRequestedReviewers:["DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],requestReviewers:["POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers"],submitReview:["POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events"],update:["PATCH /repos/{owner}/{repo}/pulls/{pull_number}"],updateBranch:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch"],updateReview:["PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}"],updateReviewComment:["PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}"]},rateLimit:{get:["GET /rate_limit"]},reactions:{createForCommitComment:["POST /repos/{owner}/{repo}/comments/{comment_id}/reactions"],createForIssue:["POST /repos/{owner}/{repo}/issues/{issue_number}/reactions"],createForIssueComment:["POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],createForPullRequestReviewComment:["POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],createForRelease:["POST /repos/{owner}/{repo}/releases/{release_id}/reactions"],createForTeamDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],createForTeamDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"],deleteForCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}"],deleteForIssue:["DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}"],deleteForIssueComment:["DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}"],deleteForPullRequestComment:["DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}"],deleteForRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}"],deleteForTeamDiscussion:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}"],deleteForTeamDiscussionComment:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}"],listForCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}/reactions"],listForIssue:["GET /repos/{owner}/{repo}/issues/{issue_number}/reactions"],listForIssueComment:["GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions"],listForPullRequestReviewComment:["GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions"],listForRelease:["GET /repos/{owner}/{repo}/releases/{release_id}/reactions"],listForTeamDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions"],listForTeamDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions"]},repos:{acceptInvitation:["PATCH /user/repository_invitations/{invitation_id}",{},{renamed:["repos","acceptInvitationForAuthenticatedUser"]}],acceptInvitationForAuthenticatedUser:["PATCH /user/repository_invitations/{invitation_id}"],addAppAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],addCollaborator:["PUT /repos/{owner}/{repo}/collaborators/{username}"],addStatusCheckContexts:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],addTeamAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],addUserAccessRestrictions:["POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],cancelPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel"],checkAutomatedSecurityFixes:["GET /repos/{owner}/{repo}/automated-security-fixes"],checkCollaborator:["GET /repos/{owner}/{repo}/collaborators/{username}"],checkPrivateVulnerabilityReporting:["GET /repos/{owner}/{repo}/private-vulnerability-reporting"],checkVulnerabilityAlerts:["GET /repos/{owner}/{repo}/vulnerability-alerts"],codeownersErrors:["GET /repos/{owner}/{repo}/codeowners/errors"],compareCommits:["GET /repos/{owner}/{repo}/compare/{base}...{head}"],compareCommitsWithBasehead:["GET /repos/{owner}/{repo}/compare/{basehead}"],createAttestation:["POST /repos/{owner}/{repo}/attestations"],createAutolink:["POST /repos/{owner}/{repo}/autolinks"],createCommitComment:["POST /repos/{owner}/{repo}/commits/{commit_sha}/comments"],createCommitSignatureProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],createCommitStatus:["POST /repos/{owner}/{repo}/statuses/{sha}"],createDeployKey:["POST /repos/{owner}/{repo}/keys"],createDeployment:["POST /repos/{owner}/{repo}/deployments"],createDeploymentBranchPolicy:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],createDeploymentProtectionRule:["POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],createDeploymentStatus:["POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],createDispatchEvent:["POST /repos/{owner}/{repo}/dispatches"],createForAuthenticatedUser:["POST /user/repos"],createFork:["POST /repos/{owner}/{repo}/forks"],createInOrg:["POST /orgs/{org}/repos"],createOrUpdateCustomPropertiesValues:["PATCH /repos/{owner}/{repo}/properties/values"],createOrUpdateEnvironment:["PUT /repos/{owner}/{repo}/environments/{environment_name}"],createOrUpdateFileContents:["PUT /repos/{owner}/{repo}/contents/{path}"],createOrgRuleset:["POST /orgs/{org}/rulesets"],createPagesDeployment:["POST /repos/{owner}/{repo}/pages/deployments"],createPagesSite:["POST /repos/{owner}/{repo}/pages"],createRelease:["POST /repos/{owner}/{repo}/releases"],createRepoRuleset:["POST /repos/{owner}/{repo}/rulesets"],createUsingTemplate:["POST /repos/{template_owner}/{template_repo}/generate"],createWebhook:["POST /repos/{owner}/{repo}/hooks"],declineInvitation:["DELETE /user/repository_invitations/{invitation_id}",{},{renamed:["repos","declineInvitationForAuthenticatedUser"]}],declineInvitationForAuthenticatedUser:["DELETE /user/repository_invitations/{invitation_id}"],delete:["DELETE /repos/{owner}/{repo}"],deleteAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],deleteAdminBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],deleteAnEnvironment:["DELETE /repos/{owner}/{repo}/environments/{environment_name}"],deleteAutolink:["DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}"],deleteBranchProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection"],deleteCommitComment:["DELETE /repos/{owner}/{repo}/comments/{comment_id}"],deleteCommitSignatureProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],deleteDeployKey:["DELETE /repos/{owner}/{repo}/keys/{key_id}"],deleteDeployment:["DELETE /repos/{owner}/{repo}/deployments/{deployment_id}"],deleteDeploymentBranchPolicy:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],deleteFile:["DELETE /repos/{owner}/{repo}/contents/{path}"],deleteInvitation:["DELETE /repos/{owner}/{repo}/invitations/{invitation_id}"],deleteOrgRuleset:["DELETE /orgs/{org}/rulesets/{ruleset_id}"],deletePagesSite:["DELETE /repos/{owner}/{repo}/pages"],deletePullRequestReviewProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],deleteRelease:["DELETE /repos/{owner}/{repo}/releases/{release_id}"],deleteReleaseAsset:["DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}"],deleteRepoRuleset:["DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}"],deleteWebhook:["DELETE /repos/{owner}/{repo}/hooks/{hook_id}"],disableAutomatedSecurityFixes:["DELETE /repos/{owner}/{repo}/automated-security-fixes"],disableDeploymentProtectionRule:["DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],disablePrivateVulnerabilityReporting:["DELETE /repos/{owner}/{repo}/private-vulnerability-reporting"],disableVulnerabilityAlerts:["DELETE /repos/{owner}/{repo}/vulnerability-alerts"],downloadArchive:["GET /repos/{owner}/{repo}/zipball/{ref}",{},{renamed:["repos","downloadZipballArchive"]}],downloadTarballArchive:["GET /repos/{owner}/{repo}/tarball/{ref}"],downloadZipballArchive:["GET /repos/{owner}/{repo}/zipball/{ref}"],enableAutomatedSecurityFixes:["PUT /repos/{owner}/{repo}/automated-security-fixes"],enablePrivateVulnerabilityReporting:["PUT /repos/{owner}/{repo}/private-vulnerability-reporting"],enableVulnerabilityAlerts:["PUT /repos/{owner}/{repo}/vulnerability-alerts"],generateReleaseNotes:["POST /repos/{owner}/{repo}/releases/generate-notes"],get:["GET /repos/{owner}/{repo}"],getAccessRestrictions:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions"],getAdminBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],getAllDeploymentProtectionRules:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules"],getAllEnvironments:["GET /repos/{owner}/{repo}/environments"],getAllStatusCheckContexts:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts"],getAllTopics:["GET /repos/{owner}/{repo}/topics"],getAppsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps"],getAutolink:["GET /repos/{owner}/{repo}/autolinks/{autolink_id}"],getBranch:["GET /repos/{owner}/{repo}/branches/{branch}"],getBranchProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection"],getBranchRules:["GET /repos/{owner}/{repo}/rules/branches/{branch}"],getClones:["GET /repos/{owner}/{repo}/traffic/clones"],getCodeFrequencyStats:["GET /repos/{owner}/{repo}/stats/code_frequency"],getCollaboratorPermissionLevel:["GET /repos/{owner}/{repo}/collaborators/{username}/permission"],getCombinedStatusForRef:["GET /repos/{owner}/{repo}/commits/{ref}/status"],getCommit:["GET /repos/{owner}/{repo}/commits/{ref}"],getCommitActivityStats:["GET /repos/{owner}/{repo}/stats/commit_activity"],getCommitComment:["GET /repos/{owner}/{repo}/comments/{comment_id}"],getCommitSignatureProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures"],getCommunityProfileMetrics:["GET /repos/{owner}/{repo}/community/profile"],getContent:["GET /repos/{owner}/{repo}/contents/{path}"],getContributorsStats:["GET /repos/{owner}/{repo}/stats/contributors"],getCustomDeploymentProtectionRule:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}"],getCustomPropertiesValues:["GET /repos/{owner}/{repo}/properties/values"],getDeployKey:["GET /repos/{owner}/{repo}/keys/{key_id}"],getDeployment:["GET /repos/{owner}/{repo}/deployments/{deployment_id}"],getDeploymentBranchPolicy:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],getDeploymentStatus:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}"],getEnvironment:["GET /repos/{owner}/{repo}/environments/{environment_name}"],getLatestPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/latest"],getLatestRelease:["GET /repos/{owner}/{repo}/releases/latest"],getOrgRuleSuite:["GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}"],getOrgRuleSuites:["GET /orgs/{org}/rulesets/rule-suites"],getOrgRuleset:["GET /orgs/{org}/rulesets/{ruleset_id}"],getOrgRulesets:["GET /orgs/{org}/rulesets"],getPages:["GET /repos/{owner}/{repo}/pages"],getPagesBuild:["GET /repos/{owner}/{repo}/pages/builds/{build_id}"],getPagesDeployment:["GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}"],getPagesHealthCheck:["GET /repos/{owner}/{repo}/pages/health"],getParticipationStats:["GET /repos/{owner}/{repo}/stats/participation"],getPullRequestReviewProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],getPunchCardStats:["GET /repos/{owner}/{repo}/stats/punch_card"],getReadme:["GET /repos/{owner}/{repo}/readme"],getReadmeInDirectory:["GET /repos/{owner}/{repo}/readme/{dir}"],getRelease:["GET /repos/{owner}/{repo}/releases/{release_id}"],getReleaseAsset:["GET /repos/{owner}/{repo}/releases/assets/{asset_id}"],getReleaseByTag:["GET /repos/{owner}/{repo}/releases/tags/{tag}"],getRepoRuleSuite:["GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}"],getRepoRuleSuites:["GET /repos/{owner}/{repo}/rulesets/rule-suites"],getRepoRuleset:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}"],getRepoRulesetHistory:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}/history"],getRepoRulesetVersion:["GET /repos/{owner}/{repo}/rulesets/{ruleset_id}/history/{version_id}"],getRepoRulesets:["GET /repos/{owner}/{repo}/rulesets"],getStatusChecksProtection:["GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],getTeamsWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams"],getTopPaths:["GET /repos/{owner}/{repo}/traffic/popular/paths"],getTopReferrers:["GET /repos/{owner}/{repo}/traffic/popular/referrers"],getUsersWithAccessToProtectedBranch:["GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users"],getViews:["GET /repos/{owner}/{repo}/traffic/views"],getWebhook:["GET /repos/{owner}/{repo}/hooks/{hook_id}"],getWebhookConfigForRepo:["GET /repos/{owner}/{repo}/hooks/{hook_id}/config"],getWebhookDelivery:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}"],listActivities:["GET /repos/{owner}/{repo}/activity"],listAttestations:["GET /repos/{owner}/{repo}/attestations/{subject_digest}"],listAutolinks:["GET /repos/{owner}/{repo}/autolinks"],listBranches:["GET /repos/{owner}/{repo}/branches"],listBranchesForHeadCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head"],listCollaborators:["GET /repos/{owner}/{repo}/collaborators"],listCommentsForCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/comments"],listCommitCommentsForRepo:["GET /repos/{owner}/{repo}/comments"],listCommitStatusesForRef:["GET /repos/{owner}/{repo}/commits/{ref}/statuses"],listCommits:["GET /repos/{owner}/{repo}/commits"],listContributors:["GET /repos/{owner}/{repo}/contributors"],listCustomDeploymentRuleIntegrations:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps"],listDeployKeys:["GET /repos/{owner}/{repo}/keys"],listDeploymentBranchPolicies:["GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies"],listDeploymentStatuses:["GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses"],listDeployments:["GET /repos/{owner}/{repo}/deployments"],listForAuthenticatedUser:["GET /user/repos"],listForOrg:["GET /orgs/{org}/repos"],listForUser:["GET /users/{username}/repos"],listForks:["GET /repos/{owner}/{repo}/forks"],listInvitations:["GET /repos/{owner}/{repo}/invitations"],listInvitationsForAuthenticatedUser:["GET /user/repository_invitations"],listLanguages:["GET /repos/{owner}/{repo}/languages"],listPagesBuilds:["GET /repos/{owner}/{repo}/pages/builds"],listPublic:["GET /repositories"],listPullRequestsAssociatedWithCommit:["GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls"],listReleaseAssets:["GET /repos/{owner}/{repo}/releases/{release_id}/assets"],listReleases:["GET /repos/{owner}/{repo}/releases"],listTags:["GET /repos/{owner}/{repo}/tags"],listTeams:["GET /repos/{owner}/{repo}/teams"],listWebhookDeliveries:["GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries"],listWebhooks:["GET /repos/{owner}/{repo}/hooks"],merge:["POST /repos/{owner}/{repo}/merges"],mergeUpstream:["POST /repos/{owner}/{repo}/merge-upstream"],pingWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/pings"],redeliverWebhookDelivery:["POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts"],removeAppAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],removeCollaborator:["DELETE /repos/{owner}/{repo}/collaborators/{username}"],removeStatusCheckContexts:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],removeStatusCheckProtection:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],removeTeamAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],removeUserAccessRestrictions:["DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],renameBranch:["POST /repos/{owner}/{repo}/branches/{branch}/rename"],replaceAllTopics:["PUT /repos/{owner}/{repo}/topics"],requestPagesBuild:["POST /repos/{owner}/{repo}/pages/builds"],setAdminBranchProtection:["POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins"],setAppAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps",{},{mapToData:"apps"}],setStatusCheckContexts:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts",{},{mapToData:"contexts"}],setTeamAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams",{},{mapToData:"teams"}],setUserAccessRestrictions:["PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users",{},{mapToData:"users"}],testPushWebhook:["POST /repos/{owner}/{repo}/hooks/{hook_id}/tests"],transfer:["POST /repos/{owner}/{repo}/transfer"],update:["PATCH /repos/{owner}/{repo}"],updateBranchProtection:["PUT /repos/{owner}/{repo}/branches/{branch}/protection"],updateCommitComment:["PATCH /repos/{owner}/{repo}/comments/{comment_id}"],updateDeploymentBranchPolicy:["PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}"],updateInformationAboutPagesSite:["PUT /repos/{owner}/{repo}/pages"],updateInvitation:["PATCH /repos/{owner}/{repo}/invitations/{invitation_id}"],updateOrgRuleset:["PUT /orgs/{org}/rulesets/{ruleset_id}"],updatePullRequestReviewProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews"],updateRelease:["PATCH /repos/{owner}/{repo}/releases/{release_id}"],updateReleaseAsset:["PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}"],updateRepoRuleset:["PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}"],updateStatusCheckPotection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks",{},{renamed:["repos","updateStatusCheckProtection"]}],updateStatusCheckProtection:["PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks"],updateWebhook:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}"],updateWebhookConfigForRepo:["PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config"],uploadReleaseAsset:["POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}",{baseUrl:"https://uploads.github.com"}]},search:{code:["GET /search/code"],commits:["GET /search/commits"],issuesAndPullRequests:["GET /search/issues",{},{deprecated:"octokit.rest.search.issuesAndPullRequests() is deprecated, see https://docs.github.com/rest/search/search#search-issues-and-pull-requests"}],labels:["GET /search/labels"],repos:["GET /search/repositories"],topics:["GET /search/topics"],users:["GET /search/users"]},secretScanning:{createPushProtectionBypass:["POST /repos/{owner}/{repo}/secret-scanning/push-protection-bypasses"],getAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"],getScanHistory:["GET /repos/{owner}/{repo}/secret-scanning/scan-history"],listAlertsForEnterprise:["GET /enterprises/{enterprise}/secret-scanning/alerts"],listAlertsForOrg:["GET /orgs/{org}/secret-scanning/alerts"],listAlertsForRepo:["GET /repos/{owner}/{repo}/secret-scanning/alerts"],listLocationsForAlert:["GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations"],updateAlert:["PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}"]},securityAdvisories:{createFork:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks"],createPrivateVulnerabilityReport:["POST /repos/{owner}/{repo}/security-advisories/reports"],createRepositoryAdvisory:["POST /repos/{owner}/{repo}/security-advisories"],createRepositoryAdvisoryCveRequest:["POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve"],getGlobalAdvisory:["GET /advisories/{ghsa_id}"],getRepositoryAdvisory:["GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}"],listGlobalAdvisories:["GET /advisories"],listOrgRepositoryAdvisories:["GET /orgs/{org}/security-advisories"],listRepositoryAdvisories:["GET /repos/{owner}/{repo}/security-advisories"],updateRepositoryAdvisory:["PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}"]},teams:{addOrUpdateMembershipForUserInOrg:["PUT /orgs/{org}/teams/{team_slug}/memberships/{username}"],addOrUpdateRepoPermissionsInOrg:["PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],checkPermissionsForRepoInOrg:["GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],create:["POST /orgs/{org}/teams"],createDiscussionCommentInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],createDiscussionInOrg:["POST /orgs/{org}/teams/{team_slug}/discussions"],deleteDiscussionCommentInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],deleteDiscussionInOrg:["DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],deleteInOrg:["DELETE /orgs/{org}/teams/{team_slug}"],getByName:["GET /orgs/{org}/teams/{team_slug}"],getDiscussionCommentInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],getDiscussionInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],getMembershipForUserInOrg:["GET /orgs/{org}/teams/{team_slug}/memberships/{username}"],list:["GET /orgs/{org}/teams"],listChildInOrg:["GET /orgs/{org}/teams/{team_slug}/teams"],listDiscussionCommentsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments"],listDiscussionsInOrg:["GET /orgs/{org}/teams/{team_slug}/discussions"],listForAuthenticatedUser:["GET /user/teams"],listMembersInOrg:["GET /orgs/{org}/teams/{team_slug}/members"],listPendingInvitationsInOrg:["GET /orgs/{org}/teams/{team_slug}/invitations"],listReposInOrg:["GET /orgs/{org}/teams/{team_slug}/repos"],removeMembershipForUserInOrg:["DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}"],removeRepoInOrg:["DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}"],updateDiscussionCommentInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}"],updateDiscussionInOrg:["PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}"],updateInOrg:["PATCH /orgs/{org}/teams/{team_slug}"]},users:{addEmailForAuthenticated:["POST /user/emails",{},{renamed:["users","addEmailForAuthenticatedUser"]}],addEmailForAuthenticatedUser:["POST /user/emails"],addSocialAccountForAuthenticatedUser:["POST /user/social_accounts"],block:["PUT /user/blocks/{username}"],checkBlocked:["GET /user/blocks/{username}"],checkFollowingForUser:["GET /users/{username}/following/{target_user}"],checkPersonIsFollowedByAuthenticated:["GET /user/following/{username}"],createGpgKeyForAuthenticated:["POST /user/gpg_keys",{},{renamed:["users","createGpgKeyForAuthenticatedUser"]}],createGpgKeyForAuthenticatedUser:["POST /user/gpg_keys"],createPublicSshKeyForAuthenticated:["POST /user/keys",{},{renamed:["users","createPublicSshKeyForAuthenticatedUser"]}],createPublicSshKeyForAuthenticatedUser:["POST /user/keys"],createSshSigningKeyForAuthenticatedUser:["POST /user/ssh_signing_keys"],deleteEmailForAuthenticated:["DELETE /user/emails",{},{renamed:["users","deleteEmailForAuthenticatedUser"]}],deleteEmailForAuthenticatedUser:["DELETE /user/emails"],deleteGpgKeyForAuthenticated:["DELETE /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","deleteGpgKeyForAuthenticatedUser"]}],deleteGpgKeyForAuthenticatedUser:["DELETE /user/gpg_keys/{gpg_key_id}"],deletePublicSshKeyForAuthenticated:["DELETE /user/keys/{key_id}",{},{renamed:["users","deletePublicSshKeyForAuthenticatedUser"]}],deletePublicSshKeyForAuthenticatedUser:["DELETE /user/keys/{key_id}"],deleteSocialAccountForAuthenticatedUser:["DELETE /user/social_accounts"],deleteSshSigningKeyForAuthenticatedUser:["DELETE /user/ssh_signing_keys/{ssh_signing_key_id}"],follow:["PUT /user/following/{username}"],getAuthenticated:["GET /user"],getById:["GET /user/{account_id}"],getByUsername:["GET /users/{username}"],getContextForUser:["GET /users/{username}/hovercard"],getGpgKeyForAuthenticated:["GET /user/gpg_keys/{gpg_key_id}",{},{renamed:["users","getGpgKeyForAuthenticatedUser"]}],getGpgKeyForAuthenticatedUser:["GET /user/gpg_keys/{gpg_key_id}"],getPublicSshKeyForAuthenticated:["GET /user/keys/{key_id}",{},{renamed:["users","getPublicSshKeyForAuthenticatedUser"]}],getPublicSshKeyForAuthenticatedUser:["GET /user/keys/{key_id}"],getSshSigningKeyForAuthenticatedUser:["GET /user/ssh_signing_keys/{ssh_signing_key_id}"],list:["GET /users"],listAttestations:["GET /users/{username}/attestations/{subject_digest}"],listBlockedByAuthenticated:["GET /user/blocks",{},{renamed:["users","listBlockedByAuthenticatedUser"]}],listBlockedByAuthenticatedUser:["GET /user/blocks"],listEmailsForAuthenticated:["GET /user/emails",{},{renamed:["users","listEmailsForAuthenticatedUser"]}],listEmailsForAuthenticatedUser:["GET /user/emails"],listFollowedByAuthenticated:["GET /user/following",{},{renamed:["users","listFollowedByAuthenticatedUser"]}],listFollowedByAuthenticatedUser:["GET /user/following"],listFollowersForAuthenticatedUser:["GET /user/followers"],listFollowersForUser:["GET /users/{username}/followers"],listFollowingForUser:["GET /users/{username}/following"],listGpgKeysForAuthenticated:["GET /user/gpg_keys",{},{renamed:["users","listGpgKeysForAuthenticatedUser"]}],listGpgKeysForAuthenticatedUser:["GET /user/gpg_keys"],listGpgKeysForUser:["GET /users/{username}/gpg_keys"],listPublicEmailsForAuthenticated:["GET /user/public_emails",{},{renamed:["users","listPublicEmailsForAuthenticatedUser"]}],listPublicEmailsForAuthenticatedUser:["GET /user/public_emails"],listPublicKeysForUser:["GET /users/{username}/keys"],listPublicSshKeysForAuthenticated:["GET /user/keys",{},{renamed:["users","listPublicSshKeysForAuthenticatedUser"]}],listPublicSshKeysForAuthenticatedUser:["GET /user/keys"],listSocialAccountsForAuthenticatedUser:["GET /user/social_accounts"],listSocialAccountsForUser:["GET /users/{username}/social_accounts"],listSshSigningKeysForAuthenticatedUser:["GET /user/ssh_signing_keys"],listSshSigningKeysForUser:["GET /users/{username}/ssh_signing_keys"],setPrimaryEmailVisibilityForAuthenticated:["PATCH /user/email/visibility",{},{renamed:["users","setPrimaryEmailVisibilityForAuthenticatedUser"]}],setPrimaryEmailVisibilityForAuthenticatedUser:["PATCH /user/email/visibility"],unblock:["DELETE /user/blocks/{username}"],unfollow:["DELETE /user/following/{username}"],updateAuthenticated:["PATCH /user"]}},Ngt=OLl;var tx=new Map;for(let[t,e]of Object.entries(Ngt))for(let[l,n]of Object.entries(e)){let[r,I,a]=n,[s,o]=r.split(/ /),d=Object.assign({method:s,url:o},I);tx.has(t)||tx.set(t,new Map),tx.get(t).set(l,{scope:t,methodName:l,endpointDefaults:d,decorations:a})}var TLl={has({scope:t},e){return tx.get(t).has(e)},getOwnPropertyDescriptor(t,e){return{value:this.get(t,e),configurable:!0,writable:!0,enumerable:!0}},defineProperty(t,e,l){return Object.defineProperty(t.cache,e,l),!0},deleteProperty(t,e){return delete t.cache[e],!0},ownKeys({scope:t}){return[...tx.get(t).keys()]},set(t,e,l){return t.cache[e]=l},get({octokit:t,scope:e,cache:l},n){if(l[n])return l[n];let r=tx.get(e).get(n);if(!r)return;let{endpointDefaults:I,decorations:a}=r;return a?l[n]=ULl(t,e,n,I,a):l[n]=t.request.defaults(I),l[n]}};function aJe(t){let e={};for(let l of tx.keys())e[l]=new Proxy({octokit:t,scope:l,cache:{}},TLl);return e}function ULl(t,e,l,n,r){let I=t.request.defaults(n);function a(...s){let o=I.endpoint.merge(...s);if(r.mapToData)return o=Object.assign({},o,{data:o[r.mapToData],[r.mapToData]:void 0}),I(o);if(r.renamed){let[d,u]=r.renamed;t.log.warn(`octokit.${e}.${l}() has been renamed to octokit.${d}.${u}()`)}if(r.deprecated&&t.log.warn(r.deprecated),r.renamedParameters){let d=I.endpoint.merge(...s);for(let[u,b]of Object.entries(r.renamedParameters))u in d&&(t.log.warn(`"${u}" parameter is deprecated for "octokit.${e}.${l}()". Use "${b}" instead`),b in d||(d[b]=d[u]),delete d[u]);return I(d)}return I(...s)}return Object.assign(a,I)}function MLl(t){return{rest:aJe(t)}}MLl.VERSION=IJe;function sJe(t){let e=aJe(t);return{...e,rest:e}}sJe.VERSION=IJe;c();var Wgt="22.0.0";var NZe=gZe.plugin(lJe,sJe,rJe).defaults({userAgent:`octokit-rest.js/${Wgt}`});import*as H1 from"fs";import*as VEt from"os";import ND from"path";import{Readable as NOl}from"stream";import{finished as WOl}from"stream/promises";c();c();c();import nJl from"events";import og from"fs";c();import{EventEmitter as bJe}from"node:events";import Vgt from"node:stream";import{StringDecoder as DLl}from"node:string_decoder";var ygt=typeof process=="object"&&process?process:{stdout:null,stderr:null},zLl=t=>!!t&&typeof t=="object"&&(t instanceof ob||t instanceof Vgt||PLl(t)||jLl(t)),PLl=t=>!!t&&typeof t=="object"&&t instanceof bJe&&typeof t.pipe=="function"&&t.pipe!==Vgt.Writable.prototype.pipe,jLl=t=>!!t&&typeof t=="object"&&t instanceof bJe&&typeof t.write=="function"&&typeof t.end=="function",BF=Symbol("EOF"),OF=Symbol("maybeEmitEnd"),QX=Symbol("emittedEnd"),WZe=Symbol("emittingEnd"),dte=Symbol("emittedError"),yZe=Symbol("closed"),Egt=Symbol("read"),EZe=Symbol("flush"),Rgt=Symbol("flushChunk"),LR=Symbol("encoding"),U_=Symbol("decoder"),lG=Symbol("flowing"),ute=Symbol("paused"),M_=Symbol("resume"),nG=Symbol("buffer"),YA=Symbol("pipes"),rG=Symbol("bufferLength"),oJe=Symbol("bufferPush"),RZe=Symbol("bufferShift"),sh=Symbol("objectMode"),Ou=Symbol("destroyed"),iJe=Symbol("error"),cJe=Symbol("emitData"),Ygt=Symbol("emitEnd"),dJe=Symbol("emitEnd2"),E1=Symbol("async"),uJe=Symbol("abort"),YZe=Symbol("aborted"),mte=Symbol("signal"),lx=Symbol("dataListeners"),cW=Symbol("discarded"),bte=t=>Promise.resolve().then(t),KLl=t=>t(),qLl=t=>t==="end"||t==="finish"||t==="prefinish",$Ll=t=>t instanceof ArrayBuffer||!!t&&typeof t=="object"&&t.constructor&&t.constructor.name==="ArrayBuffer"&&t.byteLength>=0,eJl=t=>!Buffer.isBuffer(t)&&ArrayBuffer.isView(t),VZe=class{src;dest;opts;ondrain;constructor(e,l,n){this.src=e,this.dest=l,this.opts=n,this.ondrain=()=>e[M_](),this.dest.on("drain",this.ondrain)}unpipe(){this.dest.removeListener("drain",this.ondrain)}proxyErrors(e){}end(){this.unpipe(),this.opts.end&&this.dest.end()}},mJe=class extends VZe{unpipe(){this.src.removeListener("error",this.proxyErrors),super.unpipe()}constructor(e,l,n){super(e,l,n),this.proxyErrors=r=>l.emit("error",r),e.on("error",this.proxyErrors)}},tJl=t=>!!t.objectMode,lJl=t=>!t.objectMode&&!!t.encoding&&t.encoding!=="buffer",ob=class extends bJe{[lG]=!1;[ute]=!1;[YA]=[];[nG]=[];[sh];[LR];[E1];[U_];[BF]=!1;[QX]=!1;[WZe]=!1;[yZe]=!1;[dte]=null;[rG]=0;[Ou]=!1;[mte];[YZe]=!1;[lx]=0;[cW]=!1;writable=!0;readable=!0;constructor(...e){let l=e[0]||{};if(super(),l.objectMode&&typeof l.encoding=="string")throw new TypeError("Encoding and objectMode may not be used together");tJl(l)?(this[sh]=!0,this[LR]=null):lJl(l)?(this[LR]=l.encoding,this[sh]=!1):(this[sh]=!1,this[LR]=null),this[E1]=!!l.async,this[U_]=this[LR]?new DLl(this[LR]):null,l&&l.debugExposeBuffer===!0&&Object.defineProperty(this,"buffer",{get:()=>this[nG]}),l&&l.debugExposePipes===!0&&Object.defineProperty(this,"pipes",{get:()=>this[YA]});let{signal:n}=l;n&&(this[mte]=n,n.aborted?this[uJe]():n.addEventListener("abort",()=>this[uJe]()))}get bufferLength(){return this[rG]}get encoding(){return this[LR]}set encoding(e){throw new Error("Encoding must be set at instantiation time")}setEncoding(e){throw new Error("Encoding must be set at instantiation time")}get objectMode(){return this[sh]}set objectMode(e){throw new Error("objectMode must be set at instantiation time")}get async(){return this[E1]}set async(e){this[E1]=this[E1]||!!e}[uJe](){this[YZe]=!0,this.emit("abort",this[mte]?.reason),this.destroy(this[mte]?.reason)}get aborted(){return this[YZe]}set aborted(e){}write(e,l,n){if(this[YZe])return!1;if(this[BF])throw new Error("write after end");if(this[Ou])return this.emit("error",Object.assign(new Error("Cannot call write after a stream was destroyed"),{code:"ERR_STREAM_DESTROYED"})),!0;typeof l=="function"&&(n=l,l="utf8"),l||(l="utf8");let r=this[E1]?bte:KLl;if(!this[sh]&&!Buffer.isBuffer(e)){if(eJl(e))e=Buffer.from(e.buffer,e.byteOffset,e.byteLength);else if($Ll(e))e=Buffer.from(e);else if(typeof e!="string")throw new Error("Non-contiguous data written to non-objectMode stream")}return this[sh]?(this[lG]&&this[rG]!==0&&this[EZe](!0),this[lG]?this.emit("data",e):this[oJe](e),this[rG]!==0&&this.emit("readable"),n&&r(n),this[lG]):e.length?(typeof e=="string"&&!(l===this[LR]&&!this[U_]?.lastNeed)&&(e=Buffer.from(e,l)),Buffer.isBuffer(e)&&this[LR]&&(e=this[U_].write(e)),this[lG]&&this[rG]!==0&&this[EZe](!0),this[lG]?this.emit("data",e):this[oJe](e),this[rG]!==0&&this.emit("readable"),n&&r(n),this[lG]):(this[rG]!==0&&this.emit("readable"),n&&r(n),this[lG])}read(e){if(this[Ou])return null;if(this[cW]=!1,this[rG]===0||e===0||e&&e>this[rG])return this[OF](),null;this[sh]&&(e=null),this[nG].length>1&&!this[sh]&&(this[nG]=[this[LR]?this[nG].join(""):Buffer.concat(this[nG],this[rG])]);let l=this[Egt](e||null,this[nG][0]);return this[OF](),l}[Egt](e,l){if(this[sh])this[RZe]();else{let n=l;e===n.length||e===null?this[RZe]():typeof n=="string"?(this[nG][0]=n.slice(e),l=n.slice(0,e),this[rG]-=e):(this[nG][0]=n.subarray(e),l=n.subarray(0,e),this[rG]-=e)}return this.emit("data",l),!this[nG].length&&!this[BF]&&this.emit("drain"),l}end(e,l,n){return typeof e=="function"&&(n=e,e=void 0),typeof l=="function"&&(n=l,l="utf8"),e!==void 0&&this.write(e,l),n&&this.once("end",n),this[BF]=!0,this.writable=!1,(this[lG]||!this[ute])&&this[OF](),this}[M_](){this[Ou]||(!this[lx]&&!this[YA].length&&(this[cW]=!0),this[ute]=!1,this[lG]=!0,this.emit("resume"),this[nG].length?this[EZe]():this[BF]?this[OF]():this.emit("drain"))}resume(){return this[M_]()}pause(){this[lG]=!1,this[ute]=!0,this[cW]=!1}get destroyed(){return this[Ou]}get flowing(){return this[lG]}get paused(){return this[ute]}[oJe](e){this[sh]?this[rG]+=1:this[rG]+=e.length,this[nG].push(e)}[RZe](){return this[sh]?this[rG]-=1:this[rG]-=this[nG][0].length,this[nG].shift()}[EZe](e=!1){do;while(this[Rgt](this[RZe]())&&this[nG].length);!e&&!this[nG].length&&!this[BF]&&this.emit("drain")}[Rgt](e){return this.emit("data",e),this[lG]}pipe(e,l){if(this[Ou])return e;this[cW]=!1;let n=this[QX];return l=l||{},e===ygt.stdout||e===ygt.stderr?l.end=!1:l.end=l.end!==!1,l.proxyErrors=!!l.proxyErrors,n?l.end&&e.end():(this[YA].push(l.proxyErrors?new mJe(this,e,l):new VZe(this,e,l)),this[E1]?bte(()=>this[M_]()):this[M_]()),e}unpipe(e){let l=this[YA].find(n=>n.dest===e);l&&(this[YA].length===1?(this[lG]&&this[lx]===0&&(this[lG]=!1),this[YA]=[]):this[YA].splice(this[YA].indexOf(l),1),l.unpipe())}addListener(e,l){return this.on(e,l)}on(e,l){let n=super.on(e,l);if(e==="data")this[cW]=!1,this[lx]++,!this[YA].length&&!this[lG]&&this[M_]();else if(e==="readable"&&this[rG]!==0)super.emit("readable");else if(qLl(e)&&this[QX])super.emit(e),this.removeAllListeners(e);else if(e==="error"&&this[dte]){let r=l;this[E1]?bte(()=>r.call(this,this[dte])):r.call(this,this[dte])}return n}removeListener(e,l){return this.off(e,l)}off(e,l){let n=super.off(e,l);return e==="data"&&(this[lx]=this.listeners("data").length,this[lx]===0&&!this[cW]&&!this[YA].length&&(this[lG]=!1)),n}removeAllListeners(e){let l=super.removeAllListeners(e);return(e==="data"||e===void 0)&&(this[lx]=0,!this[cW]&&!this[YA].length&&(this[lG]=!1)),l}get emittedEnd(){return this[QX]}[OF](){!this[WZe]&&!this[QX]&&!this[Ou]&&this[nG].length===0&&this[BF]&&(this[WZe]=!0,this.emit("end"),this.emit("prefinish"),this.emit("finish"),this[yZe]&&this.emit("close"),this[WZe]=!1)}emit(e,...l){let n=l[0];if(e!=="error"&&e!=="close"&&e!==Ou&&this[Ou])return!1;if(e==="data")return!this[sh]&&!n?!1:this[E1]?(bte(()=>this[cJe](n)),!0):this[cJe](n);if(e==="end")return this[Ygt]();if(e==="close"){if(this[yZe]=!0,!this[QX]&&!this[Ou])return!1;let I=super.emit("close");return this.removeAllListeners("close"),I}else if(e==="error"){this[dte]=n,super.emit(iJe,n);let I=!this[mte]||this.listeners("error").length?super.emit("error",n):!1;return this[OF](),I}else if(e==="resume"){let I=super.emit("resume");return this[OF](),I}else if(e==="finish"||e==="prefinish"){let I=super.emit(e);return this.removeAllListeners(e),I}let r=super.emit(e,...l);return this[OF](),r}[cJe](e){for(let n of this[YA])n.dest.write(e)===!1&&this.pause();let l=this[cW]?!1:super.emit("data",e);return this[OF](),l}[Ygt](){return this[QX]?!1:(this[QX]=!0,this.readable=!1,this[E1]?(bte(()=>this[dJe]()),!0):this[dJe]())}[dJe](){if(this[U_]){let l=this[U_].end();if(l){for(let n of this[YA])n.dest.write(l);this[cW]||super.emit("data",l)}}for(let l of this[YA])l.end();let e=super.emit("end");return this.removeAllListeners("end"),e}async collect(){let e=Object.assign([],{dataLength:0});this[sh]||(e.dataLength=0);let l=this.promise();return this.on("data",n=>{e.push(n),this[sh]||(e.dataLength+=n.length)}),await l,e}async concat(){if(this[sh])throw new Error("cannot concat in objectMode");let e=await this.collect();return this[LR]?e.join(""):Buffer.concat(e,e.dataLength)}async promise(){return new Promise((e,l)=>{this.on(Ou,()=>l(new Error("stream destroyed"))),this.on("error",n=>l(n)),this.on("end",()=>e())})}[Symbol.asyncIterator](){this[cW]=!1;let e=!1,l=async()=>(this.pause(),e=!0,{value:void 0,done:!0});return{next:()=>{if(e)return l();let r=this.read();if(r!==null)return Promise.resolve({done:!1,value:r});if(this[BF])return l();let I,a,s=b=>{this.off("data",o),this.off("end",d),this.off(Ou,u),l(),a(b)},o=b=>{this.off("error",s),this.off("end",d),this.off(Ou,u),this.pause(),I({value:b,done:!!this[BF]})},d=()=>{this.off("error",s),this.off("data",o),this.off(Ou,u),l(),I({done:!0,value:void 0})},u=()=>s(new Error("stream destroyed"));return new Promise((b,p)=>{a=p,I=b,this.once(Ou,u),this.once("error",s),this.once("end",d),this.once("data",o)})},throw:l,return:l,[Symbol.asyncIterator](){return this}}}[Symbol.iterator](){this[cW]=!1;let e=!1,l=()=>(this.pause(),this.off(iJe,l),this.off(Ou,l),this.off("end",l),e=!0,{done:!0,value:void 0}),n=()=>{if(e)return l();let r=this.read();return r===null?l():{done:!1,value:r}};return this.once("end",l),this.once(iJe,l),this.once(Ou,l),{next:n,throw:l,return:l,[Symbol.iterator](){return this}}}destroy(e){if(this[Ou])return e?this.emit("error",e):this.emit(Ou),this;this[Ou]=!0,this[cW]=!0,this[nG].length=0,this[rG]=0;let l=this;return typeof l.close=="function"&&!this[yZe]&&l.close(),e?this.emit("error",e):this.emit(Ou),this}static get isStream(){return zLl}};var rJl=og.writev,CX=Symbol("_autoClose"),xR=Symbol("_close"),Gte=Symbol("_ended"),Uo=Symbol("_fd"),GJe=Symbol("_finished"),UF=Symbol("_flags"),pJe=Symbol("_flush"),gJe=Symbol("_handleChunk"),NJe=Symbol("_makeBuf"),hte=Symbol("_mode"),wZe=Symbol("_needDrain"),z_=Symbol("_onerror"),P_=Symbol("_onopen"),hJe=Symbol("_onread"),__=Symbol("_onwrite"),vX=Symbol("_open"),JR=Symbol("_path"),FX=Symbol("_pos"),R1=Symbol("_queue"),D_=Symbol("_read"),AJe=Symbol("_readSize"),TF=Symbol("_reading"),pte=Symbol("_remain"),ZJe=Symbol("_size"),QZe=Symbol("_write"),nx=Symbol("_writing"),FZe=Symbol("_defaultFlag"),rx=Symbol("_errored"),Ix=class extends ob{[rx]=!1;[Uo];[JR];[AJe];[TF]=!1;[ZJe];[pte];[CX];constructor(e,l){if(l=l||{},super(l),this.readable=!0,this.writable=!1,typeof e!="string")throw new TypeError("path must be a string");this[rx]=!1,this[Uo]=typeof l.fd=="number"?l.fd:void 0,this[JR]=e,this[AJe]=l.readSize||16*1024*1024,this[TF]=!1,this[ZJe]=typeof l.size=="number"?l.size:1/0,this[pte]=this[ZJe],this[CX]=typeof l.autoClose=="boolean"?l.autoClose:!0,typeof this[Uo]=="number"?this[D_]():this[vX]()}get fd(){return this[Uo]}get path(){return this[JR]}write(){throw new TypeError("this is a readable stream")}end(){throw new TypeError("this is a readable stream")}[vX](){og.open(this[JR],"r",(e,l)=>this[P_](e,l))}[P_](e,l){e?this[z_](e):(this[Uo]=l,this.emit("open",l),this[D_]())}[NJe](){return Buffer.allocUnsafe(Math.min(this[AJe],this[pte]))}[D_](){if(!this[TF]){this[TF]=!0;let e=this[NJe]();if(e.length===0)return process.nextTick(()=>this[hJe](null,0,e));og.read(this[Uo],e,0,e.length,null,(l,n,r)=>this[hJe](l,n,r))}}[hJe](e,l,n){this[TF]=!1,e?this[z_](e):this[gJe](l,n)&&this[D_]()}[xR](){if(this[CX]&&typeof this[Uo]=="number"){let e=this[Uo];this[Uo]=void 0,og.close(e,l=>l?this.emit("error",l):this.emit("close"))}}[z_](e){this[TF]=!0,this[xR](),this.emit("error",e)}[gJe](e,l){let n=!1;return this[pte]-=e,e>0&&(n=super.write(e<l.length?l.subarray(0,e):l)),(e===0||this[pte]<=0)&&(n=!1,this[xR](),super.end()),n}emit(e,...l){switch(e){case"prefinish":case"finish":return!1;case"drain":return typeof this[Uo]=="number"&&this[D_](),!1;case"error":return this[rx]?!1:(this[rx]=!0,super.emit(e,...l));default:return super.emit(e,...l)}}},CZe=class extends Ix{[vX](){let e=!0;try{this[P_](null,og.openSync(this[JR],"r")),e=!1}finally{e&&this[xR]()}}[D_](){let e=!0;try{if(!this[TF]){this[TF]=!0;do{let l=this[NJe](),n=l.length===0?0:og.readSync(this[Uo],l,0,l.length,null);if(!this[gJe](n,l))break}while(!0);this[TF]=!1}e=!1}finally{e&&this[xR]()}}[xR](){if(this[CX]&&typeof this[Uo]=="number"){let e=this[Uo];this[Uo]=void 0,og.closeSync(e),this.emit("close")}}},MF=class extends nJl{readable=!1;writable=!0;[rx]=!1;[nx]=!1;[Gte]=!1;[R1]=[];[wZe]=!1;[JR];[hte];[CX];[Uo];[FZe];[UF];[GJe]=!1;[FX];constructor(e,l){l=l||{},super(l),this[JR]=e,this[Uo]=typeof l.fd=="number"?l.fd:void 0,this[hte]=l.mode===void 0?438:l.mode,this[FX]=typeof l.start=="number"?l.start:void 0,this[CX]=typeof l.autoClose=="boolean"?l.autoClose:!0;let n=this[FX]!==void 0?"r+":"w";this[FZe]=l.flags===void 0,this[UF]=l.flags===void 0?n:l.flags,this[Uo]===void 0&&this[vX]()}emit(e,...l){if(e==="error"){if(this[rx])return!1;this[rx]=!0}return super.emit(e,...l)}get fd(){return this[Uo]}get path(){return this[JR]}[z_](e){this[xR](),this[nx]=!0,this.emit("error",e)}[vX](){og.open(this[JR],this[UF],this[hte],(e,l)=>this[P_](e,l))}[P_](e,l){this[FZe]&&this[UF]==="r+"&&e&&e.code==="ENOENT"?(this[UF]="w",this[vX]()):e?this[z_](e):(this[Uo]=l,this.emit("open",l),this[nx]||this[pJe]())}end(e,l){return e&&this.write(e,l),this[Gte]=!0,!this[nx]&&!this[R1].length&&typeof this[Uo]=="number"&&this[__](null,0),this}write(e,l){return typeof e=="string"&&(e=Buffer.from(e,l)),this[Gte]?(this.emit("error",new Error("write() after end()")),!1):this[Uo]===void 0||this[nx]||this[R1].length?(this[R1].push(e),this[wZe]=!0,!1):(this[nx]=!0,this[QZe](e),!0)}[QZe](e){og.write(this[Uo],e,0,e.length,this[FX],(l,n)=>this[__](l,n))}[__](e,l){e?this[z_](e):(this[FX]!==void 0&&typeof l=="number"&&(this[FX]+=l),this[R1].length?this[pJe]():(this[nx]=!1,this[Gte]&&!this[GJe]?(this[GJe]=!0,this[xR](),this.emit("finish")):this[wZe]&&(this[wZe]=!1,this.emit("drain"))))}[pJe](){if(this[R1].length===0)this[Gte]&&this[__](null,0);else if(this[R1].length===1)this[QZe](this[R1].pop());else{let e=this[R1];this[R1]=[],rJl(this[Uo],e,this[FX],(l,n)=>this[__](l,n))}}[xR](){if(this[CX]&&typeof this[Uo]=="number"){let e=this[Uo];this[Uo]=void 0,og.close(e,l=>l?this.emit("error",l):this.emit("close"))}}},j_=class extends MF{[vX](){let e;if(this[FZe]&&this[UF]==="r+")try{e=og.openSync(this[JR],this[UF],this[hte])}catch(l){if(l?.code==="ENOENT")return this[UF]="w",this[vX]();throw l}else e=og.openSync(this[JR],this[UF],this[hte]);this[P_](null,e)}[xR](){if(this[CX]&&typeof this[Uo]=="number"){let e=this[Uo];this[Uo]=void 0,og.closeSync(e),this.emit("close")}}[QZe](e){let l=!0;try{this[__](null,og.writeSync(this[Uo],e,0,e.length,this[FX])),l=!1}finally{if(l)try{this[xR]()}catch{}}}};import aNt from"node:path";c();import lD from"node:fs";import{dirname as JJl,parse as xJl}from"path";c();c();var IJl=new Map([["C","cwd"],["f","file"],["z","gzip"],["P","preservePaths"],["U","unlink"],["strip-components","strip"],["stripComponents","strip"],["keep-newer","newer"],["keepNewer","newer"],["keep-newer-files","newer"],["keepNewerFiles","newer"],["k","keep"],["keep-existing","keep"],["keepExisting","keep"],["m","noMtime"],["no-mtime","noMtime"],["p","preserveOwner"],["L","follow"],["h","follow"],["onentry","onReadEntry"]]),wgt=t=>!!t.sync&&!!t.file,Qgt=t=>!t.sync&&!!t.file,Fgt=t=>!!t.sync&&!t.file,Cgt=t=>!t.sync&&!t.file;var vgt=t=>!!t.file;var aJl=t=>{let e=IJl.get(t);return e||t},Ate=(t={})=>{if(!t)return{};let e={};for(let[l,n]of Object.entries(t)){let r=aJl(l);e[r]=n}return e.chmod===void 0&&e.noChmod===!1&&(e.chmod=!0),delete e.noChmod,e};var Y1=(t,e,l,n,r)=>Object.assign((I=[],a,s)=>{Array.isArray(I)&&(a=I,I={}),typeof a=="function"&&(s=a,a=void 0),a?a=Array.from(a):a=[];let o=Ate(I);if(r?.(o,a),wgt(o)){if(typeof s=="function")throw new TypeError("callback not supported for sync tar functions");return t(o,a)}else if(Qgt(o)){let d=e(o,a),u=s||void 0;return u?d.then(()=>u(),u):d}else if(Fgt(o)){if(typeof s=="function")throw new TypeError("callback not supported for sync tar functions");return l(o,a)}else if(Cgt(o)){if(typeof s=="function")throw new TypeError("callback only supported with file option");return n(o,a)}else throw new Error("impossible options??")},{syncFile:t,asyncFile:e,syncNoFile:l,asyncNoFile:n,validate:r});c();import{EventEmitter as XJl}from"events";c();import RJe from"assert";import{Buffer as ax}from"buffer";import*as iJl from"zlib";c();import sJl from"zlib";var oJl=sJl.constants||{ZLIB_VERNUM:4736},_F=Object.freeze(Object.assign(Object.create(null),{Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_VERSION_ERROR:-6,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,DEFLATE:1,INFLATE:2,GZIP:3,GUNZIP:4,DEFLATERAW:5,INFLATERAW:6,UNZIP:7,BROTLI_DECODE:8,BROTLI_ENCODE:9,Z_MIN_WINDOWBITS:8,Z_MAX_WINDOWBITS:15,Z_DEFAULT_WINDOWBITS:15,Z_MIN_CHUNK:64,Z_MAX_CHUNK:1/0,Z_DEFAULT_CHUNK:16384,Z_MIN_MEMLEVEL:1,Z_MAX_MEMLEVEL:9,Z_DEFAULT_MEMLEVEL:8,Z_MIN_LEVEL:-1,Z_MAX_LEVEL:9,Z_DEFAULT_LEVEL:-1,BROTLI_OPERATION_PROCESS:0,BROTLI_OPERATION_FLUSH:1,BROTLI_OPERATION_FINISH:2,BROTLI_OPERATION_EMIT_METADATA:3,BROTLI_MODE_GENERIC:0,BROTLI_MODE_TEXT:1,BROTLI_MODE_FONT:2,BROTLI_DEFAULT_MODE:0,BROTLI_MIN_QUALITY:0,BROTLI_MAX_QUALITY:11,BROTLI_DEFAULT_QUALITY:11,BROTLI_MIN_WINDOW_BITS:10,BROTLI_MAX_WINDOW_BITS:24,BROTLI_LARGE_MAX_WINDOW_BITS:30,BROTLI_DEFAULT_WINDOW:22,BROTLI_MIN_INPUT_BLOCK_BITS:16,BROTLI_MAX_INPUT_BLOCK_BITS:24,BROTLI_PARAM_MODE:0,BROTLI_PARAM_QUALITY:1,BROTLI_PARAM_LGWIN:2,BROTLI_PARAM_LGBLOCK:3,BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING:4,BROTLI_PARAM_SIZE_HINT:5,BROTLI_PARAM_LARGE_WINDOW:6,BROTLI_PARAM_NPOSTFIX:7,BROTLI_PARAM_NDIRECT:8,BROTLI_DECODER_RESULT_ERROR:0,BROTLI_DECODER_RESULT_SUCCESS:1,BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT:2,BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION:0,BROTLI_DECODER_PARAM_LARGE_WINDOW:1,BROTLI_DECODER_NO_ERROR:0,BROTLI_DECODER_SUCCESS:1,BROTLI_DECODER_NEEDS_MORE_INPUT:2,BROTLI_DECODER_NEEDS_MORE_OUTPUT:3,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE:-1,BROTLI_DECODER_ERROR_FORMAT_RESERVED:-2,BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE:-3,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET:-4,BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME:-5,BROTLI_DECODER_ERROR_FORMAT_CL_SPACE:-6,BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE:-7,BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT:-8,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1:-9,BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2:-10,BROTLI_DECODER_ERROR_FORMAT_TRANSFORM:-11,BROTLI_DECODER_ERROR_FORMAT_DICTIONARY:-12,BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS:-13,BROTLI_DECODER_ERROR_FORMAT_PADDING_1:-14,BROTLI_DECODER_ERROR_FORMAT_PADDING_2:-15,BROTLI_DECODER_ERROR_FORMAT_DISTANCE:-16,BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET:-19,BROTLI_DECODER_ERROR_INVALID_ARGUMENTS:-20,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES:-21,BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS:-22,BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP:-25,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1:-26,BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2:-27,BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES:-30,BROTLI_DECODER_ERROR_UNREACHABLE:-31},oJl));var cJl=ax.concat,fgt=Object.getOwnPropertyDescriptor(ax,"concat"),dJl=t=>t,yJe=fgt?.writable===!0||fgt?.set!==void 0?t=>{ax.concat=t?dJl:cJl}:t=>{},sx=Symbol("_superWrite"),K_=class extends Error{code;errno;constructor(e){super("zlib: "+e.message),this.code=e.code,this.errno=e.errno,this.code||(this.code="ZLIB_ERROR"),this.message="zlib: "+e.message,Error.captureStackTrace(this,this.constructor)}get name(){return"ZlibError"}},EJe=Symbol("flushFlag"),vZe=class extends ob{#e=!1;#t=!1;#l;#n;#r;#I;#i;get sawError(){return this.#e}get handle(){return this.#I}get flushFlag(){return this.#l}constructor(e,l){if(!e||typeof e!="object")throw new TypeError("invalid options for ZlibBase constructor");super(e),this.#l=e.flush??0,this.#n=e.finishFlush??0,this.#r=e.fullFlushFlag??0;try{this.#I=new iJl[l](e)}catch(n){throw new K_(n)}this.#i=n=>{this.#e||(this.#e=!0,this.close(),this.emit("error",n))},this.#I?.on("error",n=>this.#i(new K_(n))),this.once("end",()=>this.close)}close(){this.#I&&(this.#I.close(),this.#I=void 0,this.emit("close"))}reset(){if(!this.#e)return RJe(this.#I,"zlib binding closed"),this.#I.reset?.()}flush(e){this.ended||(typeof e!="number"&&(e=this.#r),this.write(Object.assign(ax.alloc(0),{[EJe]:e})))}end(e,l,n){return typeof e=="function"&&(n=e,l=void 0,e=void 0),typeof l=="function"&&(n=l,l=void 0),e&&(l?this.write(e,l):this.write(e)),this.flush(this.#n),this.#t=!0,super.end(n)}get ended(){return this.#t}[sx](e){return super.write(e)}write(e,l,n){if(typeof l=="function"&&(n=l,l="utf8"),typeof e=="string"&&(e=ax.from(e,l)),this.#e)return;RJe(this.#I,"zlib binding closed");let r=this.#I._handle,I=r.close;r.close=()=>{};let a=this.#I.close;this.#I.close=()=>{},yJe(!0);let s;try{let d=typeof e[EJe]=="number"?e[EJe]:this.#l;s=this.#I._processChunk(e,d),yJe(!1)}catch(d){yJe(!1),this.#i(new K_(d))}finally{this.#I&&(this.#I._handle=r,r.close=I,this.#I.close=a,this.#I.removeAllListeners("error"))}this.#I&&this.#I.on("error",d=>this.#i(new K_(d)));let o;if(s)if(Array.isArray(s)&&s.length>0){let d=s[0];o=this[sx](ax.from(d));for(let u=1;u<s.length;u++)o=this[sx](s[u])}else o=this[sx](ax.from(s));return n&&n(),o}},fZe=class extends vZe{#e;#t;constructor(e,l){e=e||{},e.flush=e.flush||_F.Z_NO_FLUSH,e.finishFlush=e.finishFlush||_F.Z_FINISH,e.fullFlushFlag=_F.Z_FULL_FLUSH,super(e,l),this.#e=e.level,this.#t=e.strategy}params(e,l){if(!this.sawError){if(!this.handle)throw new Error("cannot switch params when binding is closed");if(!this.handle.params)throw new Error("not supported in this implementation");if(this.#e!==e||this.#t!==l){this.flush(_F.Z_SYNC_FLUSH),RJe(this.handle,"zlib binding closed");let n=this.handle.flush;this.handle.flush=(r,I)=>{typeof r=="function"&&(I=r,r=this.flushFlag),this.flush(r),I?.()};try{this.handle.params(e,l)}finally{this.handle.flush=n}this.handle&&(this.#e=e,this.#t=l)}}}};var HZe=class extends fZe{#e;constructor(e){super(e,"Gzip"),this.#e=e&&!!e.portable}[sx](e){return this.#e?(this.#e=!1,e[9]=255,super[sx](e)):super[sx](e)}};var XZe=class extends fZe{constructor(e){super(e,"Unzip")}},kZe=class extends vZe{constructor(e,l){e=e||{},e.flush=e.flush||_F.BROTLI_OPERATION_PROCESS,e.finishFlush=e.finishFlush||_F.BROTLI_OPERATION_FINISH,e.fullFlushFlag=_F.BROTLI_OPERATION_FLUSH,super(e,l)}},LZe=class extends kZe{constructor(e){super(e,"BrotliCompress")}},JZe=class extends kZe{constructor(e){super(e,"BrotliDecompress")}};c();var q_=class t{tail;head;length=0;static create(e=[]){return new t(e)}constructor(e=[]){for(let l of e)this.push(l)}*[Symbol.iterator](){for(let e=this.head;e;e=e.next)yield e.value}removeNode(e){if(e.list!==this)throw new Error("removing node which does not belong to this list");let l=e.next,n=e.prev;return l&&(l.prev=n),n&&(n.next=l),e===this.head&&(this.head=l),e===this.tail&&(this.tail=n),this.length--,e.next=void 0,e.prev=void 0,e.list=void 0,l}unshiftNode(e){if(e===this.head)return;e.list&&e.list.removeNode(e);let l=this.head;e.list=this,e.next=l,l&&(l.prev=e),this.head=e,this.tail||(this.tail=e),this.length++}pushNode(e){if(e===this.tail)return;e.list&&e.list.removeNode(e);let l=this.tail;e.list=this,e.prev=l,l&&(l.next=e),this.tail=e,this.head||(this.head=e),this.length++}push(...e){for(let l=0,n=e.length;l<n;l++)bJl(this,e[l]);return this.length}unshift(...e){for(var l=0,n=e.length;l<n;l++)GJl(this,e[l]);return this.length}pop(){if(!this.tail)return;let e=this.tail.value,l=this.tail;return this.tail=this.tail.prev,this.tail?this.tail.next=void 0:this.head=void 0,l.list=void 0,this.length--,e}shift(){if(!this.head)return;let e=this.head.value,l=this.head;return this.head=this.head.next,this.head?this.head.prev=void 0:this.tail=void 0,l.list=void 0,this.length--,e}forEach(e,l){l=l||this;for(let n=this.head,r=0;n;r++)e.call(l,n.value,r,this),n=n.next}forEachReverse(e,l){l=l||this;for(let n=this.tail,r=this.length-1;n;r--)e.call(l,n.value,r,this),n=n.prev}get(e){let l=0,n=this.head;for(;n&&l<e;l++)n=n.next;if(l===e&&n)return n.value}getReverse(e){let l=0,n=this.tail;for(;n&&l<e;l++)n=n.prev;if(l===e&&n)return n.value}map(e,l){l=l||this;let n=new t;for(let r=this.head;r;)n.push(e.call(l,r.value,this)),r=r.next;return n}mapReverse(e,l){l=l||this;var n=new t;for(let r=this.tail;r;)n.push(e.call(l,r.value,this)),r=r.prev;return n}reduce(e,l){let n,r=this.head;if(arguments.length>1)n=l;else if(this.head)r=this.head.next,n=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var I=0;r;I++)n=e(n,r.value,I),r=r.next;return n}reduceReverse(e,l){let n,r=this.tail;if(arguments.length>1)n=l;else if(this.tail)r=this.tail.prev,n=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(let I=this.length-1;r;I--)n=e(n,r.value,I),r=r.prev;return n}toArray(){let e=new Array(this.length);for(let l=0,n=this.head;n;l++)e[l]=n.value,n=n.next;return e}toArrayReverse(){let e=new Array(this.length);for(let l=0,n=this.tail;n;l++)e[l]=n.value,n=n.prev;return e}slice(e=0,l=this.length){l<0&&(l+=this.length),e<0&&(e+=this.length);let n=new t;if(l<e||l<0)return n;e<0&&(e=0),l>this.length&&(l=this.length);let r=this.head,I=0;for(I=0;r&&I<e;I++)r=r.next;for(;r&&I<l;I++,r=r.next)n.push(r.value);return n}sliceReverse(e=0,l=this.length){l<0&&(l+=this.length),e<0&&(e+=this.length);let n=new t;if(l<e||l<0)return n;e<0&&(e=0),l>this.length&&(l=this.length);let r=this.length,I=this.tail;for(;I&&r>l;r--)I=I.prev;for(;I&&r>e;r--,I=I.prev)n.push(I.value);return n}splice(e,l=0,...n){e>this.length&&(e=this.length-1),e<0&&(e=this.length+e);let r=this.head;for(let a=0;r&&a<e;a++)r=r.next;let I=[];for(let a=0;r&&a<l;a++)I.push(r.value),r=this.removeNode(r);r?r!==this.tail&&(r=r.prev):r=this.tail;for(let a of n)r=mJl(this,r,a);return I}reverse(){let e=this.head,l=this.tail;for(let n=e;n;n=n.prev){let r=n.prev;n.prev=n.next,n.next=r}return this.head=l,this.tail=e,this}};function mJl(t,e,l){let n=e,r=e?e.next:t.head,I=new Zte(l,n,r,t);return I.next===void 0&&(t.tail=I),I.prev===void 0&&(t.head=I),t.length++,I}function bJl(t,e){t.tail=new Zte(e,t.tail,void 0,t),t.head||(t.head=t.tail),t.length++}function GJl(t,e){t.head=new Zte(e,void 0,t.head,t),t.tail||(t.tail=t.head),t.length++}var Zte=class{list;next;prev;value;constructor(e,l,n,r){this.list=r,this.value=e,l?(l.next=this,this.prev=l):this.prev=void 0,n?(n.prev=this,this.next=n):this.next=void 0}};c();import{posix as $_}from"node:path";c();var Hgt=(t,e)=>{if(Number.isSafeInteger(t))t<0?hJl(t,e):pJl(t,e);else throw Error("cannot encode number outside of javascript safe integer range");return e},pJl=(t,e)=>{e[0]=128;for(var l=e.length;l>1;l--)e[l-1]=t&255,t=Math.floor(t/256)},hJl=(t,e)=>{e[0]=255;var l=!1;t=t*-1;for(var n=e.length;n>1;n--){var r=t&255;t=Math.floor(t/256),l?e[n-1]=kgt(r):r===0?e[n-1]=0:(l=!0,e[n-1]=Lgt(r))}},Xgt=t=>{let e=t[0],l=e===128?ZJl(t.subarray(1,t.length)):e===255?AJl(t):null;if(l===null)throw Error("invalid base256 encoding");if(!Number.isSafeInteger(l))throw Error("parsed number outside of javascript safe integer range");return l},AJl=t=>{for(var e=t.length,l=0,n=!1,r=e-1;r>-1;r--){var I=Number(t[r]),a;n?a=kgt(I):I===0?a=I:(n=!0,a=Lgt(I)),a!==0&&(l-=a*Math.pow(256,e-r-1))}return l},ZJl=t=>{for(var e=t.length,l=0,n=e-1;n>-1;n--){var r=Number(t[n]);r!==0&&(l+=r*Math.pow(256,e-n-1))}return l},kgt=t=>(255^t)&255,Lgt=t=>(255^t)+1&255;c();var xZe=t=>SZe.has(t);var SZe=new Map([["0","File"],["","OldFile"],["1","Link"],["2","SymbolicLink"],["3","CharacterDevice"],["4","BlockDevice"],["5","Directory"],["6","FIFO"],["7","ContiguousFile"],["g","GlobalExtendedHeader"],["x","ExtendedHeader"],["A","SolarisACL"],["D","GNUDumpDir"],["I","Inode"],["K","NextFileHasLongLinkpath"],["L","NextFileHasLongPath"],["M","ContinuationFile"],["N","OldGnuLongPath"],["S","SparseFile"],["V","TapeVolumeHeader"],["X","OldExtendedHeader"]]),Jgt=new Map(Array.from(SZe).map(t=>[t[1],t[0]]));var dW=class{cksumValid=!1;needPax=!1;nullBlock=!1;block;path;mode;uid;gid;size;cksum;#e="Unsupported";linkpath;uname;gname;devmaj=0;devmin=0;atime;ctime;mtime;charset;comment;constructor(e,l=0,n,r){Buffer.isBuffer(e)?this.decode(e,l||0,n,r):e&&this.#t(e)}decode(e,l,n,r){if(l||(l=0),!e||!(e.length>=l+512))throw new Error("need 512 bytes for header");this.path=ox(e,l,100),this.mode=fX(e,l+100,8),this.uid=fX(e,l+108,8),this.gid=fX(e,l+116,8),this.size=fX(e,l+124,12),this.mtime=YJe(e,l+136,12),this.cksum=fX(e,l+148,12),r&&this.#t(r,!0),n&&this.#t(n);let I=ox(e,l+156,1);if(xZe(I)&&(this.#e=I||"0"),this.#e==="0"&&this.path.slice(-1)==="/"&&(this.#e="5"),this.#e==="5"&&(this.size=0),this.linkpath=ox(e,l+157,100),e.subarray(l+257,l+265).toString()==="ustar\x0000")if(this.uname=ox(e,l+265,32),this.gname=ox(e,l+297,32),this.devmaj=fX(e,l+329,8)??0,this.devmin=fX(e,l+337,8)??0,e[l+475]!==0){let s=ox(e,l+345,155);this.path=s+"/"+this.path}else{let s=ox(e,l+345,130);s&&(this.path=s+"/"+this.path),this.atime=YJe(e,l+476,12),this.ctime=YJe(e,l+488,12)}let a=256;for(let s=l;s<l+148;s++)a+=e[s];for(let s=l+156;s<l+512;s++)a+=e[s];this.cksumValid=a===this.cksum,this.cksum===void 0&&a===256&&(this.nullBlock=!0)}#t(e,l=!1){Object.assign(this,Object.fromEntries(Object.entries(e).filter(([n,r])=>!(r==null||n==="path"&&l||n==="linkpath"&&l||n==="global"))))}encode(e,l=0){if(e||(e=this.block=Buffer.alloc(512)),this.#e==="Unsupported"&&(this.#e="0"),!(e.length>=l+512))throw new Error("need 512 bytes for header");let n=this.ctime||this.atime?130:155,r=NJl(this.path||"",n),I=r[0],a=r[1];this.needPax=!!r[2],this.needPax=ix(e,l,100,I)||this.needPax,this.needPax=HX(e,l+100,8,this.mode)||this.needPax,this.needPax=HX(e,l+108,8,this.uid)||this.needPax,this.needPax=HX(e,l+116,8,this.gid)||this.needPax,this.needPax=HX(e,l+124,12,this.size)||this.needPax,this.needPax=VJe(e,l+136,12,this.mtime)||this.needPax,e[l+156]=this.#e.charCodeAt(0),this.needPax=ix(e,l+157,100,this.linkpath)||this.needPax,e.write("ustar\x0000",l+257,8),this.needPax=ix(e,l+265,32,this.uname)||this.needPax,this.needPax=ix(e,l+297,32,this.gname)||this.needPax,this.needPax=HX(e,l+329,8,this.devmaj)||this.needPax,this.needPax=HX(e,l+337,8,this.devmin)||this.needPax,this.needPax=ix(e,l+345,n,a)||this.needPax,e[l+475]!==0?this.needPax=ix(e,l+345,155,a)||this.needPax:(this.needPax=ix(e,l+345,130,a)||this.needPax,this.needPax=VJe(e,l+476,12,this.atime)||this.needPax,this.needPax=VJe(e,l+488,12,this.ctime)||this.needPax);let s=256;for(let o=l;o<l+148;o++)s+=e[o];for(let o=l+156;o<l+512;o++)s+=e[o];return this.cksum=s,HX(e,l+148,8,this.cksum),this.cksumValid=!0,this.needPax}get type(){return this.#e==="Unsupported"?this.#e:SZe.get(this.#e)}get typeKey(){return this.#e}set type(e){let l=String(Jgt.get(e));if(xZe(l)||l==="Unsupported")this.#e=l;else if(xZe(e))this.#e=e;else throw new TypeError("invalid entry type: "+e)}},NJl=(t,e)=>{let n=t,r="",I,a=$_.parse(t).root||".";if(Buffer.byteLength(n)<100)I=[n,r,!1];else{r=$_.dirname(n),n=$_.basename(n);do Buffer.byteLength(n)<=100&&Buffer.byteLength(r)<=e?I=[n,r,!1]:Buffer.byteLength(n)>100&&Buffer.byteLength(r)<=e?I=[n.slice(0,99),r,!0]:(n=$_.join($_.basename(r),n),r=$_.dirname(r));while(r!==a&&I===void 0);I||(I=[t.slice(0,99),"",!0])}return I},ox=(t,e,l)=>t.subarray(e,e+l).toString("utf8").replace(/\0.*/,""),YJe=(t,e,l)=>WJl(fX(t,e,l)),WJl=t=>t===void 0?void 0:new Date(t*1e3),fX=(t,e,l)=>Number(t[e])&128?Xgt(t.subarray(e,e+l)):EJl(t,e,l),yJl=t=>isNaN(t)?void 0:t,EJl=(t,e,l)=>yJl(parseInt(t.subarray(e,e+l).toString("utf8").replace(/\0.*$/,"").trim(),8)),RJl={12:8589934591,8:2097151},HX=(t,e,l,n)=>n===void 0?!1:n>RJl[l]||n<0?(Hgt(n,t.subarray(e,e+l)),!0):(YJl(t,e,l,n),!1),YJl=(t,e,l,n)=>t.write(VJl(n,l),e,l,"ascii"),VJl=(t,e)=>wJl(Math.floor(t).toString(8),e),wJl=(t,e)=>(t.length===e-1?t:new Array(e-t.length-1).join("0")+t+" ")+"\0",VJe=(t,e,l,n)=>n===void 0?!1:HX(t,e,l,n.getTime()/1e3),QJl=new Array(156).join("\0"),ix=(t,e,l,n)=>n===void 0?!1:(t.write(n+QJl,e,l,"utf8"),n.length!==Buffer.byteLength(n)||n.length>l);c();import{basename as FJl}from"node:path";var XX=class t{atime;mtime;ctime;charset;comment;gid;uid;gname;uname;linkpath;dev;ino;nlink;path;size;mode;global;constructor(e,l=!1){this.atime=e.atime,this.charset=e.charset,this.comment=e.comment,this.ctime=e.ctime,this.dev=e.dev,this.gid=e.gid,this.global=l,this.gname=e.gname,this.ino=e.ino,this.linkpath=e.linkpath,this.mtime=e.mtime,this.nlink=e.nlink,this.path=e.path,this.size=e.size,this.uid=e.uid,this.uname=e.uname}encode(){let e=this.encodeBody();if(e==="")return Buffer.allocUnsafe(0);let l=Buffer.byteLength(e),n=512*Math.ceil(1+l/512),r=Buffer.allocUnsafe(n);for(let I=0;I<512;I++)r[I]=0;new dW({path:("PaxHeader/"+FJl(this.path??"")).slice(0,99),mode:this.mode||420,uid:this.uid,gid:this.gid,size:l,mtime:this.mtime,type:this.global?"GlobalExtendedHeader":"ExtendedHeader",linkpath:"",uname:this.uname||"",gname:this.gname||"",devmaj:0,devmin:0,atime:this.atime,ctime:this.ctime}).encode(r),r.write(e,512,l,"utf8");for(let I=l+512;I<r.length;I++)r[I]=0;return r}encodeBody(){return this.encodeField("path")+this.encodeField("ctime")+this.encodeField("atime")+this.encodeField("dev")+this.encodeField("ino")+this.encodeField("nlink")+this.encodeField("charset")+this.encodeField("comment")+this.encodeField("gid")+this.encodeField("gname")+this.encodeField("linkpath")+this.encodeField("mtime")+this.encodeField("size")+this.encodeField("uid")+this.encodeField("uname")}encodeField(e){if(this[e]===void 0)return"";let l=this[e],n=l instanceof Date?l.getTime()/1e3:l,r=" "+(e==="dev"||e==="ino"||e==="nlink"?"SCHILY.":"")+e+"="+n+`
852
852
  `,I=Buffer.byteLength(r),a=Math.floor(Math.log(I)/Math.log(10))+1;return I+a>=Math.pow(10,a)&&(a+=1),a+I+r}static parse(e,l,n=!1){return new t(CJl(vJl(e),l),n)}},CJl=(t,e)=>e?Object.assign({},e,t):t,vJl=t=>t.replace(/\n$/,"").split(`
@@ -1979,7 +1979,7 @@ ${I}`;await r.createOrUpdateMCPStartupToolCall({serverName:e,content:s}),this.lo
1979
1979
  `)),s}}import{homedir as NDt}from"node:os";import jFn,{resolve as KFn}from"node:path";c();function WVn(t){return t.length>0&&/^[0-9a-zA-Z_-]+$/.test(t)}function $Mt(t){return!t||t.length===0?{valid:!1,error:"MCP server name cannot be empty"}:/^[0-9a-zA-Z_-]+$/.test(t)?{valid:!0}:{valid:!1,error:"MCP server name must only contain alphanumeric characters, underscores, and hyphens"}}var qMt=zg(["none","markdown","hidden_characters"]),e_t=_l({tools:xd(Et()),type:Et().optional(),isDefaultServer:bo().optional(),filterMapping:B2(Et(),qMt).or(qMt).optional()}),yVn=e_t.extend({type:gr("local").optional(),command:Et(),args:xd(Et()),env:B2(Et(),Et()).optional()}),EVn=e_t.extend({type:gr("http").or(gr("sse")),url:Et(),headers:B2(Et(),Et()).optional()}),R8e=_l({mcpServers:B2(Et().min(1,"MCP server name cannot be empty").refine(WVn,{message:"MCP server name must only contain alphanumeric characters, underscores, and hyphens"}),yVn.or(EVn))}),P2=CVe(R8e.parse,"mcp");c();c();function t_t(t){let e=t.r/255,l=t.g/255,n=t.b/255,r=Math.max(e,l,n),I=Math.min(e,l,n),a=r-I,s=0,o=0,d=(r+I)/2;if(a!==0){switch(o=d>.5?a/(2-r-I):a/(r+I),r){case e:s=(l-n)/a+(l<n?6:0);break;case l:s=(n-e)/a+2;break;case n:s=(e-l)/a+4;break}s/=6}return{h:s*360,s:o,l:d}}function RVn(t){if(t.length<12||t.length>18)return null;let e=t.match(/rgb:([0-9a-f]+)\/([0-9a-f]+)\/([0-9a-f]+)/i);if(!e)return null;let[,l,n,r]=e,I=d=>d.length>=2?parseInt(d.substring(0,2),16):d.length===1?parseInt(d+d,16):0,a=I(l),s=I(n),o=I(r);return{r:a,g:s,b:o}}var l_t=["#000000","#800000","#008000","#808000","#000080","#800080","#008080","#c0c0c0","#808080","#ff0000","#00ff00","#ffff00","#0000ff","#ff00ff","#00ffff","#ffffff","#000000","#00005f","#000087","#0000af","#0000d7","#0000ff","#005f00","#005f5f","#005f87","#005faf","#005fd7","#005fff","#008700","#00875f","#008787","#0087af","#0087d7","#0087ff","#00af00","#00af5f","#00af87","#00afaf","#00afd7","#00afff","#00d700","#00d75f","#00d787","#00d7af","#00d7d7","#00d7ff","#00ff00","#00ff5f","#00ff87","#00ffaf","#00ffd7","#00ffff","#5f0000","#5f005f","#5f0087","#5f00af","#5f00d7","#5f00ff","#5f5f00","#5f5f5f","#5f5f87","#5f5faf","#5f5fd7","#5f5fff","#5f8700","#5f875f","#5f8787","#5f87af","#5f87d7","#5f87ff","#5faf00","#5faf5f","#5faf87","#5fafaf","#5fafd7","#5fafff","#5fd700","#5fd75f","#5fd787","#5fd7af","#5fd7d7","#5fd7ff","#5fff00","#5fff5f","#5fff87","#5fffaf","#5fffd7","#5fffff","#870000","#87005f","#870087","#8700af","#8700d7","#8700ff","#875f00","#875f5f","#875f87","#875faf","#875fd7","#875fff","#878700","#87875f","#878787","#8787af","#8787d7","#8787ff","#87af00","#87af5f","#87af87","#87afaf","#87afd7","#87afff","#87d700","#87d75f","#87d787","#87d7af","#87d7d7","#87d7ff","#87ff00","#87ff5f","#87ff87","#87ffaf","#87ffd7","#87ffff","#af0000","#af005f","#af0087","#af00af","#af00d7","#af00ff","#af5f00","#af5f5f","#af5f87","#af5faf","#af5fd7","#af5fff","#af8700","#af875f","#af8787","#af87af","#af87d7","#af87ff","#afaf00","#afaf5f","#afaf87","#afafaf","#afafd7","#afafff","#afd700","#afd75f","#afd787","#afd7af","#afd7d7","#afd7ff","#afff00","#afff5f","#afff87","#afffaf","#afffd7","#afffff","#d70000","#d7005f","#d70087","#d700af","#d700d7","#d700ff","#d75f00","#d75f5f","#d75f87","#d75faf","#d75fd7","#d75fff","#d78700","#d7875f","#d78787","#d787af","#d787d7","#d787ff","#d7af00","#d7af5f","#d7af87","#d7afaf","#d7afd7","#d7afff","#d7d700","#d7d75f","#d7d787","#d7d7af","#d7d7d7","#d7d7ff","#d7ff00","#d7ff5f","#d7ff87","#d7ffaf","#d7ffd7","#d7ffff","#ff0000","#ff005f","#ff0087","#ff00af","#ff00d7","#ff00ff","#ff5f00","#ff5f5f","#ff5f87","#ff5faf","#ff5fd7","#ff5fff","#ff8700","#ff875f","#ff8787","#ff87af","#ff87d7","#ff87ff","#ffaf00","#ffaf5f","#ffaf87","#ffafaf","#ffafd7","#ffafff","#ffd700","#ffd75f","#ffd787","#ffd7af","#ffd7d7","#ffd7ff","#ffff00","#ffff5f","#ffff87","#ffffaf","#ffffd7","#ffffff","#080808","#121212","#1c1c1c","#262626","#303030","#3a3a3a","#444444","#4e4e4e","#585858","#626262","#6c6c6c","#767676","#808080","#8a8a8a","#949494","#9e9e9e","#a8a8a8","#b2b2b2","#bcbcbc","#c6c6c6","#d0d0d0","#dadada","#e4e4e4","#eeeeee"];function YVn(t){let e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return e?{r:parseInt(e[1],16),g:parseInt(e[2],16),b:parseInt(e[3],16)}:{r:0,g:0,b:0}}function VVn(t){return t<0||t>=l_t.length?{r:0,g:0,b:0}:YVn(l_t[t])}function n_t(t){if(t.length<15||t.length>30)return null;let e=t;e.endsWith("\x07")?e=e.slice(0,-1):e.endsWith("\x1B\\")?e=e.slice(0,-2):e.endsWith("\x9C")&&(e=e.slice(0,-1));let l=e;return l.startsWith("11;")&&(l=l.substring(3)),l.startsWith("rgb:")?RVn(l):null}async function wVn(t=100){return new Promise(e=>{if(!process.stdout.isTTY||!process.stdin.isTTY){e(null);return}let l="",n=null,r=()=>{process.stdin.removeListener("data",I),process.stdin.setRawMode(!1),n&&clearTimeout(n)},I=a=>{l+=a.toString();let s=l.match(/\x1b\]11;([^\x07\x1b\x9c]*?)(?:\x07|\x1b\\|\x9c)/);if(s){r();let d=`11;${s[1]}`;e(n_t(d));return}let o=l.match(/11;rgb:([0-9a-f/]+)(?:\x07|\x1b\\|\x9c)/i);if(o){r(),e(n_t(`11;rgb:${o[1]}`));return}};n=setTimeout(()=>{r(),e(null)},t);try{process.stdin.setRawMode(!0),process.stdin.on("data",I),process.stdout.write("\x1B]11;?\x1B\\")}catch{r(),e(null)}})}function QVn(){let t=process.env.COLORFGBG;if(!t||!t.includes(";"))return null;let e=t.split(";"),l=e[e.length-1],n=parseInt(l,10);return isNaN(n)?null:VVn(n)}async function r_t(){try{let t=await wVn();if(t)return t_t(t).l<.5;let e=QVn();return e?t_t(e).l<.5:!0}catch{return!0}}var I_t={FG:"whiteBright",ACCENT:"blue",SUCCESS:"green",DIFF_ADDED_HIGHLIGHT_FG:"black",DIFF_REMOVED_HIGHLIGHT_FG:"whiteBright",ERROR:"red",WARNING:"yellow",COPILOT:"magenta",COPILOT_BRIGHT:"magentaBright",MUTED:"white",SELECTED:"cyan",BORDER:"blackBright"},FVn={FG:"black",ACCENT:"blue",SUCCESS:"green",DIFF_ADDED_HIGHLIGHT_FG:"black",DIFF_REMOVED_HIGHLIGHT_FG:"whiteBright",ERROR:"red",WARNING:"yellow",COPILOT:"magenta",COPILOT_BRIGHT:"magentaBright",MUTED:"blackBright",SELECTED:"cyan",BORDER:"blackBright"};function Y8e(t){return t==="auto"||t==="dark"||t==="light"}function JVe(t){switch(t){case"dark":return I_t;case"light":return FVn;default:return I_t}}var xVe=await r_t();async function SVe(){let e=(await Lr.load())?.theme||"";return Y8e(e)?e:"auto"}async function a_t(t){await Lr.writeKey("theme",t)}var s_t=t=>{let e=t?Jl.whiteBright:Jl.black,l=t?Jl.cyanBright:Jl.blueBright,n=t?Jl.magentaBright:Jl.magenta;return{text:e,paragraph:e,html:e,table:e,blockquote:e,heading:Jl.bold,firstHeading:Jl.whiteBright.bold,strong:Jl.bold,em:Jl.italic,del:Jl.strikethrough,hr:Jl.white,link:l,href:l,image:(r,I,a)=>n(a?`Image: ${a} \u2192 ${r}`:`Image: ${r}`),codespan:Jl.cyan,code:Jl.cyan,list:(r,I,a)=>{let s=r.replace(/^(\s*)\* /gm,"$1- ");return a&&(s=s.split(`
1980
1980
  `).map(u=>u.startsWith(a)?u.slice(a.length):u).join(`
1981
1981
  `)),s.trimEnd()},listitem:r=>e(r.trimEnd()),reflowText:!0,showSectionPrefix:!1,unescape:!0,emoji:!0,tab:2,tableOptions:{style:{compact:!1}}}},CVn=s_t(!0),vVn=s_t(!1);function o_t(t){return t==="light"?vVn:CVn}c();import{exec as DFn}from"node:child_process";import*as q8e from"node:os";import{promisify as zFn}from"node:util";c();c();c();import{execFile as fVn}from"node:child_process";import{normalize as HVn}from"node:path";import{promisify as XVn}from"node:util";var due=XVn(fVn);async function If(t=process.cwd()){try{let l=(await due("git",["rev-parse","--show-toplevel"],{cwd:t,encoding:"utf8",timeout:5e3,maxBuffer:1048576})).stdout.trim();if(l)return{gitRoot:HVn(l),found:!0}}catch{}return{gitRoot:t,found:!1}}async function i_t(t){let{stdout:e}=await due("git",["-C",t,"remote","-v"],{encoding:"utf8",timeout:5e3,maxBuffer:1048576}),l=e.trim().split(`
1982
- `),n={};for(let r of l){let I=r.split(/\s+/);if(I.length>=3){let a=I[0],s=I[1],o=I[2].replace(/[()]/g,"");n[a]||(n[a]={Name:a,FetchURL:"",PushURL:""}),o==="fetch"?n[a].FetchURL=s:o==="push"&&(n[a].PushURL=s)}}return Object.values(n)}async function c_t(t){try{let{stdout:e}=await due("git",["status","--porcelain"],{cwd:t,encoding:"utf8",timeout:5e3,maxBuffer:1048576});return e.trim().length>0}catch{return!1}}async function d_t(t){try{let{stdout:e}=await due("git",["rev-parse","--abbrev-ref","HEAD"],{cwd:t,encoding:"utf8",timeout:5e3,maxBuffer:1048576}),l=e.trim();if(l==="HEAD"){let{stdout:n}=await due("git",["rev-parse","--short","HEAD"],{cwd:t,encoding:"utf8",timeout:5e3,maxBuffer:1048576}),r=n.trim();return r?`detached@${r}`:null}return l||null}catch{return null}}c();var B_t=nt(S_t(),1);async function wQn(t={}){let e=await bAt();return hAt((0,B_t.default)({},e,t))}async function PVe(t={}){if(F_())throw new Error("Settings have already been initialized");return wQn(t)}c();c();c();import{promises as QQn}from"fs";import O_t from"path";var FQn=3*1024*1024;function T_t(t){let e=O_t.extname(t).toLowerCase();return[".png",".jpg",".jpeg",".gif",".webp"].includes(e)}function CQn(t){switch(O_t.extname(t).toLowerCase()){case".png":return"image/png";case".jpg":case".jpeg":return"image/jpeg";case".gif":return"image/gif";case".webp":return"image/webp";default:return null}}async function vQn(t,e){e.debug(`Processing local image file: ${t}`);let l=await QQn.readFile(t),n=CQn(t);if(!n)throw new Error(`Unsupported image format: ${t}`);let r=new ese,I=await zye(e,r,FQn,Kae,n,l);if(!I)throw new Error(`Image too large or couldn't be processed: ${t}`);let a=I.toString("base64");return`data:${n};base64,${a}`}async function fQn(t,e){let l=Bu();try{let n=await oSe({command:"view",path:t,view_range:void 0},{properties:{command:"view",resolvedPathAgainstCwd:"false",options:"{}",inputs:"[]"},metrics:{responseTokenLimit:void 0,resultLength:0,resultForLlmLength:0},restrictedProperties:{}},e);return{id:l,name:"view",arguments:{path:t},result:n.textResultForLlm||""}}catch(n){return{id:l,name:"view",arguments:{path:t},result:`Error reading ${t}: ${n}`}}}async function U_t(t,e){let l=[],n=t.filter(I=>!T_t(I.path));if(n.length===0)return l;let r=[];for(let I of n)try{let a=await fQn(I.path,e);r.push(a)}catch{}if(r.length>0){let I=r.map(a=>({id:a.id,type:"function",function:{name:a.name,arguments:JSON.stringify(a.arguments)}}));l.push({role:"assistant",content:"I need to read the content of those paths to answer this request.",tool_calls:I}),l.push(...r.map(a=>({role:"tool",tool_call_id:a.id,content:a.result})))}return l}async function M_t(t,e){let l=t.filter(r=>T_t(r.path));return(await Promise.all(l.map(async r=>{try{return{type:"image_url",image_url:{url:await vQn(r.path,e)}}}catch(I){e.error(`Failed to process image ${r.path}: ${I instanceof Error?I.message:String(I)}`);return}}))).filter(r=>r!==void 0)}var of=class{sessionId;startTime;modifiedTime;events=[];_chatMessages=[];_selectedModel;logger;eventCallbacks=[];eventProcessingQueue=Promise.resolve();constructor({sessionId:e,startTime:l,modifiedTime:n,logger:r}={}){this.sessionId=e||Bu(),this.startTime=l||new Date,this.modifiedTime=n||this.startTime,this.logger=r||new Hc}get messageCount(){let e=this.events.find(n=>n.type==="session.import_legacy"),l=0;return e&&(l=(e.data.legacySession?.chatMessages||[]).filter(I=>I.role==="user"||I.role==="assistant").length),this.logger.debug(`Imported message count: ${l}`),this.events.filter(n=>n.type==="user.message"||n.type==="assistant.message").length+l}get summary(){let e=this.events.find(I=>I.type==="session.import_legacy"||I.type==="user.message"),l;if(e?.type==="session.import_legacy"){let I=e.data.legacySession.chatMessages.find(a=>a.role==="user");I?.content&&(typeof I.content=="string"?l=I.content:l=I.content.find(a=>a.type==="text")?.text)}else e?.type==="user.message"&&(l=e.data.content);if(!l)return;let n=l.lastIndexOf("<reminder>");n!==-1&&(l=l.substring(0,n).trim());let r=l.replace(/\s+/g," ").trim();return r.length>75&&(r=r.substring(0,55).trim()+"..."),r=r.split("").filter(I=>{let a=I.charCodeAt(0);return a>=32&&a!==127}).join(""),r}static async fromEvents({events:e,logger:l}){if(e.length===0)throw new Error("Cannot create session from empty events array");let n=e[0];if(n.type!=="session.start")throw new Error("First event must be session.start");let r=new this({sessionId:n.data.sessionId,startTime:new Date(n.data.startTime),logger:l||new Hc});r._selectedModel=n.data.selectedModel,r.events.push(n);for(let I=1;I<e.length;I++){let a=e[I];r.events.push(a),await r.processEventForState(a)}return r}addEvent(e){let l=e.id||Bu(),n=e.timestamp||new Date().toISOString(),r=e.parentId!==void 0?e.parentId:this.getLastEventId(),I={...e,id:l,timestamp:n,parentId:r};return this.events.push(I),this.enqueueEventProcessing(()=>this.processEventForState(I).catch(a=>{this.logger.error(`Error processing event ${I.type} (${I.id}): ${a instanceof Error?a.message:String(a)}`)})).catch(a=>{this.logger.error(`Error processing event queue ${a instanceof Error?a.message:String(a)}`)}),this.notifyEventCallbacks(I),I}getEvents(){return this.events}onEvent(e){return this.eventCallbacks.push(e),()=>{let l=this.eventCallbacks.indexOf(e);l>-1&&this.eventCallbacks.splice(l,1)}}async getChatMessages(){return this.enqueueEventProcessing(()=>this._chatMessages)}async getChatContextMessages(){return(await this.getChatMessages()).filter(l=>l.role!=="system")}async getSystemContextMessages(){return(await this.getChatMessages()).filter(l=>l.role==="system")}async getSelectedModel(){return this.enqueueEventProcessing(()=>this._selectedModel)}setSelectedModel(e){let l=this._selectedModel;this._selectedModel=e,this.addEvent({type:"session.model_change",data:{previousModel:l,newModel:e}})}getLastEventId(){return this.events.length===0?null:this.events[this.events.length-1].id}enqueueEventProcessing(e){let l=this.eventProcessingQueue.then(()=>e());return this.eventProcessingQueue=l,l}async processEventForState(e){switch(e.type){case"session.start":e.data.selectedModel&&(this._selectedModel=e.data.selectedModel);break;case"session.model_change":this._selectedModel=e.data.newModel;break;case"user.message":{let l=[],n=[];if(e.data.attachments&&e.data.attachments.length>0){let r=await M_t(e.data.attachments,this.logger);l.push(...r);let I=await U_t(e.data.attachments,this.logger);n.push(...I)}l.length>0?this._chatMessages.push({role:"user",content:[{type:"text",text:e.data.content},...l]}):this._chatMessages.push({role:"user",content:e.data.content}),n.length>0&&this._chatMessages.push(...n);break}case"assistant.message":{if(e.ephemeral)break;let l={role:"assistant",content:e.data.content||null};e.data.toolRequests&&e.data.toolRequests.length>0&&(l.tool_calls=e.data.toolRequests.map(n=>({id:n.toolCallId,type:"function",function:{name:n.name,arguments:typeof n.arguments=="string"?n.arguments:JSON.stringify(n.arguments)}}))),this._chatMessages.push(l);break}case"tool.execution_complete":{e.data.isUserRequested||this._chatMessages.push({role:"tool",tool_call_id:e.data.toolCallId,content:e.data.success?e.data.result?.content||"":e.data.error?.message||"Tool execution failed"});break}case"system.message":this._chatMessages.push({role:e.data.role,content:e.data.content,...e.data.name&&{name:e.data.name}});break;case"session.import_legacy":this._chatMessages=[...e.data.legacySession.chatMessages],e.data.legacySession.selectedModel&&(this._selectedModel=e.data.legacySession.selectedModel);break;case"abort":case"session.resume":this._chatMessages=HQn(this._chatMessages,this.logger);break;case"session.error":case"session.info":case"assistant.turn_start":case"assistant.turn_end":case"assistant.usage":case"tool.user_requested":case"tool.execution_start":case"tool.execution_partial_result":case"hook.start":case"hook.end":break;default:{let l=e;this.logger.error(`Unknown event type: ${l.type}`);break}}}notifyEventCallbacks(e){for(let l of this.eventCallbacks)try{l(e)}catch(n){this.logger.error(`Error in event callback: ${n instanceof Error?n.message:String(n)}`)}}};function HQn(t,e){if(t.length===0)return t;let l=[],n=new Set,r=!1;for(let s=t.length-1;s>=0;s--){let o=t[s];if(o.role==="assistant"&&(r=!0),o.role==="assistant"&&"tool_calls"in o&&o.tool_calls&&o.tool_calls.length>0)for(let d of o.tool_calls)n.has(d.id)||l.push(d.id);else{if(r)break;o.role==="tool"&&o.tool_call_id&&n.add(o.tool_call_id)}}if(l.length===0)return t;let I="The execution of this tool, or a previous tool was interrupted.";e.info(`Completing ${l.length} orphaned tool calls.`);let a=l.map(s=>({role:"tool",tool_call_id:s,content:I}));return[...t,...a]}c();c();import{unlink as K_t}from"fs/promises";import{join as CFn}from"path";c();var jVe=class{sessions;logger;lastAccessedSessionId;constructor({logger:e}={}){this.sessions=new Map,this.logger=e||new Hc}async createSession(){let e=new of({logger:this.logger});return this.sessions.set(e.sessionId,e),this.lastAccessedSessionId=e.sessionId,e}async getSession(e){let l=this.sessions.get(e);return l&&(this.lastAccessedSessionId=e),l}async getLastSession(){if(this.lastAccessedSessionId){let n=this.sessions.get(this.lastAccessedSessionId);if(n)return n}let e=Array.from(this.sessions.values());if(e.length===0)return;e.sort((n,r)=>r.startTime.getTime()-n.startTime.getTime());let l=e[0];return this.lastAccessedSessionId=l.sessionId,l}async listSessions(){return Array.from(this.sessions.values()).map(e=>({sessionId:e.sessionId,startTime:e.startTime,modifiedTime:e.modifiedTime}))}async saveSession(e){}async deleteSession(e){this.sessions.delete(e.sessionId),this.lastAccessedSessionId===e.sessionId&&(this.lastAccessedSessionId=void 0)}};c();c();var XQn=_l({type:gr("copilot"),text:Et(),isStreaming:bo().optional()}),kQn=_l({type:gr("error"),text:Et()}),LQn=_l({type:gr("info"),text:Et()}),L0a=_l({displayText:Et(),fullPath:Et(),type:zg(["file","directory","unresolved","image"]),startIndex:FG()}),JQn=_l({type:gr("user"),text:Et()}),S8=_l({command:Et(),description:Et(),timeout:FG().optional(),sessionId:Et().optional(),async:bo().optional()}),L8e=_l({sessionId:Et(),input:Et(),delay:FG().optional()}),J8e=_l({sessionId:Et(),delay:FG()}),x8e=_l({sessionId:Et()}),__t=Hh([S8,L8e,J8e,x8e]),xQn=_l({command:gr("view"),path:Et(),view_range:KYe([FG(),FG()]).optional()}),SQn=_l({command:gr("create"),path:Et(),file_text:Et()}),BQn=_l({command:gr("str_replace"),path:Et(),new_str:Et().optional(),old_str:Et()}),OQn=_l({command:gr("insert"),path:Et(),insert_line:FG(),new_str:Et()}),S8e=ede("command",[xQn,SQn,BQn,OQn]),B8e=_l({path:Et(),view_range:KYe([FG(),FG()]).optional()}),O8e=_l({path:Et(),file_text:Et()}),T8e=_l({path:Et(),old_str:Et(),new_str:Et().optional()}),D_t=Hh([__t,S8e,Ww()]),TQn=_l({type:gr("tool_call_requested"),callId:Et(),name:Et(),toolTitle:Et().optional(),intentionSummary:Et().nullable(),arguments:D_t,partialOutput:Et().optional(),isHidden:bo().optional(),isAlwaysExpanded:bo().optional(),showNoContent:bo().optional()}),UQn=_l({type:gr("tool_call_completed"),callId:Et(),name:Et(),toolTitle:Et().optional(),intentionSummary:Et().nullable(),result:Hh([_l({type:gr("success"),log:Et(),markdown:bo().optional()}),_l({type:gr("failure"),log:Et(),markdown:bo().optional()}),_l({type:gr("rejected"),markdown:bo().optional()}),_l({type:gr("denied"),log:Et(),markdown:bo().optional()})]),arguments:D_t,isHidden:bo().optional(),isAlwaysExpanded:bo().optional(),showNoContent:bo().optional()}),MQn=Hh([XQn,kQn,LQn,JQn,TQn,UQn]),z_t=MQn.and(_l({id:Et(),timestamp:tde.date()}));function P_t(t,e){switch(t.type){case"copilot":return e.onCopilot(t);case"error":return e.onError(t);case"info":return e.onInfo(t);case"tool_call_requested":return e.onToolCallRequested(t);case"tool_call_completed":return e.onToolCallCompleted(t);case"user":return e.onUser(t);default:{let l=t;throw new Error(`Unexpected message type: ${JSON.stringify(t)}`)}}}var CO=class t extends Error{prUrl;timeoutContext;constructor(e,l,n){super(e),this.name="JobStatusTimeoutError",this.timeoutContext=l,this.prUrl=n,Error.captureStackTrace&&Error.captureStackTrace(this,t)}};var hue=_l({type:gr("text"),text:Et()}),_Qn=_l({type:gr("refusal"),refusal:Et()}),DQn=_l({type:gr("image_url"),image_url:_l({url:Et(),detail:zg(["auto","low","high"]).optional()})}),zQn=_l({type:gr("input_audio"),input_audio:_l({data:Et(),format:gr("wav").or(gr("mp3"))})}),PQn=_l({type:gr("file"),file:_l({file_date:Et().optional(),file_id:Et().optional(),filename:Et().optional()})}),jQn=Hh([hue,DQn,zQn,PQn]),KQn=_l({name:Et(),arguments:Et()}),qQn=_l({name:Et(),input:Et()}),$Qn=_l({id:Et(),type:gr("function"),function:KQn}),eFn=_l({id:Et(),type:gr("custom"),custom:qQn}),tFn=Hh([$Qn,eFn]),lFn=_l({name:Et(),arguments:Et()}),nFn=_l({id:Et()}),rFn=_l({content:Hh([Et(),xd(hue)]),role:gr("developer"),name:Et().optional()}),IFn=_l({content:Hh([Et(),xd(hue)]),role:gr("system"),name:Et().optional()}),aFn=_l({content:Hh([Et(),xd(jQn)]),role:gr("user"),name:Et().optional()}),sFn=_l({content:Hh([Et(),xd(Hh([hue,_Qn]))]).nullable().optional(),role:gr("assistant"),name:Et().optional(),refusal:Et().nullable().optional(),audio:nFn.nullable().optional(),function_call:lFn.nullable().optional(),tool_calls:xd(tFn).optional()}),oFn=_l({content:Hh([Et(),xd(hue)]),role:gr("tool"),tool_call_id:Et()}),iFn=_l({content:Et().nullable(),role:gr("function"),name:Et()}),cFn=Hh([rFn,IFn,aFn,sFn,oFn,iFn]),U8e=_l({sessionId:Et(),startTime:tde.date(),chatMessages:xd(cFn),timeline:xd(z_t),selectedModel:zg(RO).optional()}),Aue=vVe(U8e.parse,"history-session");c();c();var Vb=_l({id:Et().uuid(),timestamp:Et().datetime(),parentId:Et().uuid().nullable(),ephemeral:bo().optional()}),dFn=Vb.extend({type:gr("session.start"),data:_l({sessionId:Et(),version:FG(),producer:Et(),copilotVersion:Et(),startTime:Et().datetime(),selectedModel:Et().optional()})}),uFn=Vb.extend({type:gr("session.resume"),data:_l({resumeTime:Et().datetime(),eventCount:FG()})}),mFn=Vb.extend({type:gr("session.error"),data:_l({errorType:Et(),message:Et(),stack:Et().optional()})}),bFn=Vb.extend({type:gr("session.info"),data:_l({infoType:Et(),message:Et()})}),GFn=Vb.extend({type:gr("session.model_change"),data:_l({previousModel:Et().optional(),newModel:Et()})}),pFn=Vb.extend({type:gr("session.import_legacy"),data:_l({legacySession:U8e,importTime:Et().datetime(),sourceFile:Et()})}),hFn=_l({type:zg(["file","directory"]),path:Et(),displayName:Et()}),AFn=Vb.extend({type:gr("user.message"),data:_l({content:Et(),attachments:xd(hFn).optional()})}),ZFn=Vb.extend({type:gr("assistant.turn_start"),data:_l({turnId:Et()})}),gFn=Vb.extend({type:gr("assistant.message"),data:_l({messageId:Et(),content:Et(),toolRequests:xd(_l({toolCallId:Et(),name:Et(),arguments:Ww()})).optional()})}),NFn=Vb.extend({type:gr("assistant.turn_end"),data:_l({turnId:Et()})}),WFn=Vb.extend({type:gr("assistant.usage"),ephemeral:gr(!0),data:_l({model:Et().optional(),tokensUsed:FG().optional(),cost:FG().optional(),duration:FG().optional(),initiator:Et().optional()})}),yFn=Vb.extend({type:gr("abort"),data:_l({reason:Et()})}),EFn=Vb.extend({type:gr("tool.user_requested"),data:_l({toolCallId:Et(),toolName:Et(),arguments:Ww()})}),RFn=Vb.extend({type:gr("tool.execution_start"),data:_l({toolCallId:Et(),toolName:Et(),arguments:Ww()})}),YFn=Vb.extend({type:gr("tool.execution_partial_result"),ephemeral:gr(!0),data:_l({toolCallId:Et(),partialOutput:Et()})}),VFn=Vb.extend({type:gr("tool.execution_complete"),data:_l({toolCallId:Et(),success:bo(),isUserRequested:bo().optional(),result:_l({content:Et()}).optional(),error:_l({message:Et(),code:Et().optional()}).optional()})}),wFn=Vb.extend({type:gr("hook.start"),data:_l({hookInvocationId:Et(),hookType:Et(),input:Ww()})}),QFn=Vb.extend({type:gr("hook.end"),data:_l({hookInvocationId:Et(),hookType:Et(),output:Ww(),success:bo(),error:_l({message:Et(),stack:Et().optional()}).optional()})}),FFn=Vb.extend({type:gr("system.message"),data:_l({content:Et(),role:zg(["system","developer"]),name:Et().optional(),metadata:_l({promptVersion:Et().optional(),variables:B2(Ww()).optional()}).optional()})}),j_t=ede("type",[dFn,uFn,mFn,bFn,GFn,pFn,AFn,ZFn,gFn,NFn,WFn,yFn,EFn,RFn,YFn,VFn,wFn,QFn,FFn]);var vO=HMt(j_t.parse,"session");var KVe=class{constructor(e,l,n,r=!1,I){this.session=e;this.logger=l;this.flushDebounceMs=n;this.shouldSaveSession=r;this.legacySourceFile=I;this.unsubscribe=this.session.onEvent(a=>{a.ephemeral||(this.unflushedEvents.push(a),!this.shouldSaveSession&&a.type==="user.message"&&(this.shouldSaveSession=!0),this.shouldSaveSession&&(this.flushTimer&&clearTimeout(this.flushTimer),this.flushTimer=setTimeout(()=>{this.flush().catch(s=>{this.logger.error(`Error flushing session ${this.session.sessionId}: ${s instanceof Error?s.message:String(s)}`)})},this.flushDebounceMs)))})}flushTimer=null;unflushedEvents=[];migratedLegacy=!1;isFlushing=!1;needsFlushAfterCurrent=!1;unsubscribe;dispose(){this.flushTimer&&(clearTimeout(this.flushTimer),this.flushTimer=null),this.unsubscribe()}async flush(){if(!this.shouldSaveSession||this.unflushedEvents.length===0)return;if(this.isFlushing){this.needsFlushAfterCurrent=!0;return}this.isFlushing=!0,this.flushTimer&&(clearTimeout(this.flushTimer),this.flushTimer=null);let e=this.unflushedEvents;this.unflushedEvents=[];try{if(await vO.append(e,this.session.sessionId),this.logger.debug(`Flushed ${e.length} events to session ${this.session.sessionId}`),this.legacySourceFile&&!this.migratedLegacy){this.logger.debug(`Migrated legacy session ${this.session.sessionId} from ${this.legacySourceFile}`);try{await K_t(this.legacySourceFile)}catch(l){this.logger.error(`Failed to delete legacy session file ${this.legacySourceFile}: ${l}`)}this.migratedLegacy=!0}}catch(l){this.logger.error(`Failed to flush events for ${this.session.sessionId}: ${l instanceof Error?l.message:String(l)}`),this.unflushedEvents.unshift(...e)}finally{this.isFlushing=!1,this.needsFlushAfterCurrent&&(this.needsFlushAfterCurrent=!1,await this.flush())}}},qVe=class extends jVe{sessionWriters={};copilotVersion;flushDebounceMs;constructor({logger:e,version:l,flushDebounceMs:n}){super({logger:e}),this.copilotVersion=l||"unknown",this.flushDebounceMs=n||100}async createSession(e){let l=e?.sessionId??Bu(),n=new Date,r=new of({sessionId:l,startTime:n,logger:this.logger});return this.sessionWriters[l]=new KVe(r,this.logger,this.flushDebounceMs),r.addEvent({type:"session.start",data:{sessionId:l,version:1,producer:"copilot-agent",copilotVersion:this.copilotVersion,startTime:n.toISOString(),selectedModel:e?.selectedModel}}),r}async getSession(e){let l,n;try{l=await this.loadSession(e)}catch{try{let r=await this.loadLegacySession(e);l=r.session,n=r.legacySourceFile}catch{return}}return this.sessionWriters[e]||(this.sessionWriters[e]=new KVe(l,this.logger,this.flushDebounceMs,!0,n)),l.addEvent({type:"session.resume",data:{resumeTime:new Date().toISOString(),eventCount:l.getEvents().length}}),l}async saveSession(e){await this.sessionWriters[e.sessionId]?.flush()}async loadSession(e){let l=await vO.load(e);if(l.length===0)throw new Error(`Session ${e} has no events`);if(l[0].type!=="session.start")throw new Error("First event must be a session.start event");return await of.fromEvents({events:l,logger:this.logger})}async loadLegacySession(e){let n=(await Aue.directoryFiles()).filter(o=>{let d=o.match(/^session_(.+)_(\d+)\.json$/);return d&&d[1]===e});if(n.length===0)throw new Error(`Legacy session ${e} not found`);let r=n[0];n.length>1&&this.logger.info(`Multiple legacy sessions found for ${e}, using newest`);let I=await Aue.load(r);if(!I)throw new Error(`Failed to load legacy session from ${r}`);let a=new Date(I.startTime),s=new of({sessionId:I.sessionId,startTime:a,logger:this.logger});return s.addEvent({type:"session.start",data:{sessionId:I.sessionId,version:1,producer:"copilot-agent",copilotVersion:this.copilotVersion,startTime:a.toISOString(),selectedModel:I.selectedModel}}),s.addEvent({type:"session.import_legacy",data:{legacySession:{sessionId:I.sessionId,startTime:a,chatMessages:I.chatMessages,timeline:I.timeline,selectedModel:I.selectedModel},importTime:new Date().toISOString(),sourceFile:r}}),this.logger.info(`Loaded legacy session ${e} from ${r}`),{session:s,legacySourceFile:Aue.path(r.replace(/\.json$/,""))}}async listSessions(){let e=await vO.directoryFilesWithMetadata(),l=await Aue.directoryFilesWithMetadata(),n=await Promise.all(e.map(async a=>({sessionId:a.file.replace(".jsonl",""),startTime:a.ctime,modifiedTime:a.mtime}))),r=(await Promise.all(l.map(async a=>{let s=a.file.match(/^session_(.+)_(\d+)\.json$/);return s?{sessionId:s[1],startTime:a.ctime,modifiedTime:a.mtime}:null}))).filter(a=>a!==null);this.logger.debug(`Found ${n.length} JSONL sessions and ${r.length} legacy sessions`);let I=new Map;for(let a of r)I.set(a.sessionId,a);for(let a of n)I.set(a.sessionId,a);return Array.from(I.values()).sort((a,s)=>s.modifiedTime.getTime()-a.modifiedTime.getTime())}async getLastSession(){let e=await this.listSessions();if(e.length===0)return;e.sort((n,r)=>r.modifiedTime.getTime()-n.modifiedTime.getTime());let l=e[0].sessionId;return await this.getSession(l)}async deleteSession(e){this.sessionWriters[e.sessionId]?.dispose(),delete this.sessionWriters[e.sessionId];let l=vO.path(e.sessionId);this.logger.info(`Deleting session file ${l}`),await K_t(l)}getSessionsDirectory(){return CFn(vO.home(),vO.directory())}setLogger(e){this.logger=e}};c();c();c();c();function Sd(t){return t()}c();var Zue;function fFn(t,e){return t.includes("\x1B[?")&&t.includes(e)}async function HFn(t){let e=process.stdin.isRaw;e||process.stdin.setRawMode(!0);try{return await t()}finally{e||process.stdin.setRawMode(!1)}}function q_t(t,e,l){return new Promise(n=>{let r="",I,a=()=>{I=void 0,process.stdin.removeListener("data",s),n(!1)},s=o=>{I!==void 0&&(r+=o.toString(),fFn(r,e)&&(process.stdin.removeListener("data",s),clearTimeout(I),I=void 0,n(!0)))};process.stdin.on("data",s),process.stdout.write("\x1B["+t),I=setTimeout(a,l)})}async function XFn(){return!(!(process.stdin.isTTY&&process.stdout.isTTY)||!await q_t("?u","u",200)||!await q_t("c","c",1e3))}async function eDt(){Zue===void 0&&(Zue=await HFn(XFn),Zue===!0&&(kFn(),process.on("exit",$_t),process.on("SIGTERM",$_t)))}function kFn(){process.stdout.write("\x1B[>1u")}function $_t(){process.stdout.write("\x1B[<u"),Zue=void 0}function $Ve(){return Zue===!0}c();c();c();c();function Nue(t,e=!1){let l=t.length,n=0,r="",I=0,a=16,s=0,o=0,d=0,u=0,b=0;function p(H,J){let S=0,T=0;for(;S<H||!J;){let U=t.charCodeAt(n);if(U>=48&&U<=57)T=T*16+U-48;else if(U>=65&&U<=70)T=T*16+U-65+10;else if(U>=97&&U<=102)T=T*16+U-97+10;else break;n++,S++}return S<H&&(T=-1),T}function h(H){n=H,r="",I=0,a=16,b=0}function Z(){let H=n;if(t.charCodeAt(n)===48)n++;else for(n++;n<t.length&&B8(t.charCodeAt(n));)n++;if(n<t.length&&t.charCodeAt(n)===46)if(n++,n<t.length&&B8(t.charCodeAt(n)))for(n++;n<t.length&&B8(t.charCodeAt(n));)n++;else return b=3,t.substring(H,n);let J=n;if(n<t.length&&(t.charCodeAt(n)===69||t.charCodeAt(n)===101))if(n++,(n<t.length&&t.charCodeAt(n)===43||t.charCodeAt(n)===45)&&n++,n<t.length&&B8(t.charCodeAt(n))){for(n++;n<t.length&&B8(t.charCodeAt(n));)n++;J=n}else b=3;return t.substring(H,J)}function N(){let H="",J=n;for(;;){if(n>=l){H+=t.substring(J,n),b=2;break}let S=t.charCodeAt(n);if(S===34){H+=t.substring(J,n),n++;break}if(S===92){if(H+=t.substring(J,n),n++,n>=l){b=2;break}switch(t.charCodeAt(n++)){case 34:H+='"';break;case 92:H+="\\";break;case 47:H+="/";break;case 98:H+="\b";break;case 102:H+="\f";break;case 110:H+=`
1982
+ `),n={};for(let r of l){let I=r.split(/\s+/);if(I.length>=3){let a=I[0],s=I[1],o=I[2].replace(/[()]/g,"");n[a]||(n[a]={Name:a,FetchURL:"",PushURL:""}),o==="fetch"?n[a].FetchURL=s:o==="push"&&(n[a].PushURL=s)}}return Object.values(n)}async function c_t(t){try{let{stdout:e}=await due("git",["status","--porcelain"],{cwd:t,encoding:"utf8",timeout:5e3,maxBuffer:1048576});return e.trim().length>0}catch{return!1}}async function d_t(t){try{let{stdout:e}=await due("git",["rev-parse","--abbrev-ref","HEAD"],{cwd:t,encoding:"utf8",timeout:5e3,maxBuffer:1048576}),l=e.trim();if(l==="HEAD"){let{stdout:n}=await due("git",["rev-parse","--short","HEAD"],{cwd:t,encoding:"utf8",timeout:5e3,maxBuffer:1048576}),r=n.trim();return r?`detached@${r}`:null}return l||null}catch{return null}}c();var B_t=nt(S_t(),1);async function wQn(t={}){let e=await bAt();return hAt((0,B_t.default)({},e,t))}async function PVe(t={}){if(F_())throw new Error("Settings have already been initialized");return wQn(t)}c();c();c();import{promises as QQn}from"fs";import O_t from"path";var FQn=3*1024*1024;function T_t(t){let e=O_t.extname(t).toLowerCase();return[".png",".jpg",".jpeg",".gif",".webp"].includes(e)}function CQn(t){switch(O_t.extname(t).toLowerCase()){case".png":return"image/png";case".jpg":case".jpeg":return"image/jpeg";case".gif":return"image/gif";case".webp":return"image/webp";default:return null}}async function vQn(t,e){e.debug(`Processing local image file: ${t}`);let l=await QQn.readFile(t),n=CQn(t);if(!n)throw new Error(`Unsupported image format: ${t}`);let r=new ese,I=await zye(e,r,FQn,Kae,n,l);if(!I)throw new Error(`Image too large or couldn't be processed: ${t}`);let a=I.toString("base64");return`data:${n};base64,${a}`}async function fQn(t,e){let l=Bu();try{let n=await oSe({command:"view",path:t,view_range:void 0},{properties:{command:"view",resolvedPathAgainstCwd:"false",options:"{}",inputs:"[]"},metrics:{responseTokenLimit:void 0,resultLength:0,resultForLlmLength:0},restrictedProperties:{}},e);return{id:l,name:"view",arguments:{path:t},result:n.textResultForLlm||""}}catch(n){return{id:l,name:"view",arguments:{path:t},result:`Error reading ${t}: ${n}`}}}async function U_t(t,e){let l=[],n=t.filter(I=>!T_t(I.path));if(n.length===0)return l;let r=[];for(let I of n)try{let a=await fQn(I.path,e);r.push(a)}catch{}if(r.length>0){let I=r.map(a=>({id:a.id,type:"function",function:{name:a.name,arguments:JSON.stringify(a.arguments)}}));l.push({role:"assistant",content:"I need to read the content of those paths to answer this request.",tool_calls:I}),l.push(...r.map(a=>({role:"tool",tool_call_id:a.id,content:a.result})))}return l}async function M_t(t,e){let l=t.filter(r=>T_t(r.path));return(await Promise.all(l.map(async r=>{try{return{type:"image_url",image_url:{url:await vQn(r.path,e)}}}catch(I){e.error(`Failed to process image ${r.path}: ${I instanceof Error?I.message:String(I)}`);return}}))).filter(r=>r!==void 0)}var of=class{sessionId;startTime;modifiedTime;events=[];_chatMessages=[];_selectedModel;logger;eventCallbacks=[];eventProcessingQueue=Promise.resolve();constructor({sessionId:e,startTime:l,modifiedTime:n,logger:r}={}){this.sessionId=e||Bu(),this.startTime=l||new Date,this.modifiedTime=n||this.startTime,this.logger=r||new Hc}get messageCount(){let e=this.events.find(n=>n.type==="session.import_legacy"),l=0;return e&&(l=(e.data.legacySession?.chatMessages||[]).filter(I=>I.role==="user"||I.role==="assistant").length),this.logger.debug(`Imported message count: ${l}`),this.events.filter(n=>n.type==="user.message"||n.type==="assistant.message").length+l}get summary(){let e=this.events.find(I=>I.type==="session.import_legacy"||I.type==="user.message"),l;if(e?.type==="session.import_legacy"){let I=e.data.legacySession.chatMessages.find(a=>a.role==="user");I?.content&&(typeof I.content=="string"?l=I.content:l=I.content.find(a=>a.type==="text")?.text)}else e?.type==="user.message"&&(l=e.data.content);if(!l)return;let n=l.lastIndexOf("<reminder>");n!==-1&&(l=l.substring(0,n).trim());let r=l.replace(/\s+/g," ").trim();return r.length>75&&(r=r.substring(0,55).trim()+"..."),r=r.split("").filter(I=>{let a=I.charCodeAt(0);return a>=32&&a!==127}).join(""),r}static async fromEvents({events:e,logger:l}){if(e.length===0)throw new Error("Cannot create session from empty events array");let n=e[0];if(n.type!=="session.start")throw new Error("First event must be session.start");let r=new this({sessionId:n.data.sessionId,startTime:new Date(n.data.startTime),logger:l||new Hc});r._selectedModel=n.data.selectedModel,r.events.push(n);for(let I=1;I<e.length;I++){let a=e[I];r.events.push(a),await r.processEventForState(a)}return r}addEvent(e){let l=e.id||Bu(),n=e.timestamp||new Date().toISOString(),r=e.parentId!==void 0?e.parentId:this.getLastEventId(),I={...e,id:l,timestamp:n,parentId:r};return this.events.push(I),this.enqueueEventProcessing(()=>this.processEventForState(I).catch(a=>{this.logger.error(`Error processing event ${I.type} (${I.id}): ${a instanceof Error?a.message:String(a)}`)})).catch(a=>{this.logger.error(`Error processing event queue ${a instanceof Error?a.message:String(a)}`)}),this.notifyEventCallbacks(I),I}getEvents(){return this.events}onEvent(e){return this.eventCallbacks.push(e),()=>{let l=this.eventCallbacks.indexOf(e);l>-1&&this.eventCallbacks.splice(l,1)}}async getChatMessages(){return this.enqueueEventProcessing(()=>this._chatMessages)}async getChatContextMessages(){return(await this.getChatMessages()).filter(l=>l.role!=="system")}async getSystemContextMessages(){return(await this.getChatMessages()).filter(l=>l.role==="system")}async getSelectedModel(){return this.enqueueEventProcessing(()=>this._selectedModel)}setSelectedModel(e){let l=this._selectedModel;this._selectedModel=e,this.addEvent({type:"session.model_change",data:{previousModel:l,newModel:e}})}getLastEventId(){return this.events.length===0?null:this.events[this.events.length-1].id}enqueueEventProcessing(e){let l=this.eventProcessingQueue.then(()=>e());return this.eventProcessingQueue=l,l}async processEventForState(e){switch(e.type){case"session.start":e.data.selectedModel&&(this._selectedModel=e.data.selectedModel);break;case"session.model_change":this._selectedModel=e.data.newModel;break;case"user.message":{let l=[],n=[];if(e.data.attachments&&e.data.attachments.length>0){let r=await M_t(e.data.attachments,this.logger);l.push(...r);let I=await U_t(e.data.attachments,this.logger);n.push(...I)}l.length>0?this._chatMessages.push({role:"user",content:[{type:"text",text:e.data.content},...l]}):this._chatMessages.push({role:"user",content:e.data.content}),n.length>0&&this._chatMessages.push(...n);break}case"assistant.message":{if(e.ephemeral)break;let l={role:"assistant",content:e.data.content||null};e.data.toolRequests&&e.data.toolRequests.length>0&&(l.tool_calls=e.data.toolRequests.map(n=>({id:n.toolCallId,type:"function",function:{name:n.name,arguments:typeof n.arguments=="string"?n.arguments:JSON.stringify(n.arguments)}}))),this._chatMessages.push(l);break}case"tool.execution_complete":{e.data.isUserRequested||this._chatMessages.push({role:"tool",tool_call_id:e.data.toolCallId,content:e.data.success?e.data.result?.content||"":e.data.error?.message||"Tool execution failed"});break}case"system.message":this._chatMessages.push({role:e.data.role,content:e.data.content,...e.data.name&&{name:e.data.name}});break;case"session.import_legacy":this._chatMessages=[...e.data.legacySession.chatMessages],e.data.legacySession.selectedModel&&(this._selectedModel=e.data.legacySession.selectedModel);break;case"abort":case"session.resume":this._chatMessages=HQn(this._chatMessages,this.logger);break;case"session.error":case"session.info":case"assistant.turn_start":case"assistant.turn_end":case"assistant.usage":case"tool.user_requested":case"tool.execution_start":case"tool.execution_partial_result":case"hook.start":case"hook.end":break;default:{let l=e;this.logger.error(`Unknown event type: ${l.type}`);break}}}notifyEventCallbacks(e){for(let l of this.eventCallbacks)try{l(e)}catch(n){this.logger.error(`Error in event callback: ${n instanceof Error?n.message:String(n)}`)}}};function HQn(t,e){if(t.length===0)return t;let l=[],n=new Set,r=!1;for(let s=t.length-1;s>=0;s--){let o=t[s];if(o.role==="assistant"&&(r=!0),o.role==="assistant"&&"tool_calls"in o&&o.tool_calls&&o.tool_calls.length>0)for(let d of o.tool_calls)n.has(d.id)||l.push(d.id);else{if(r)break;o.role==="tool"&&o.tool_call_id&&n.add(o.tool_call_id)}}if(l.length===0)return t;let I="The execution of this tool, or a previous tool was interrupted.";e.info(`Completing ${l.length} orphaned tool calls.`);let a=l.map(s=>({role:"tool",tool_call_id:s,content:I}));return[...t,...a]}c();c();import{unlink as K_t}from"fs/promises";import{join as CFn}from"path";c();var jVe=class{sessions;logger;lastAccessedSessionId;constructor({logger:e}={}){this.sessions=new Map,this.logger=e||new Hc}async createSession(){let e=new of({logger:this.logger});return this.sessions.set(e.sessionId,e),this.lastAccessedSessionId=e.sessionId,e}async getSession(e){let l=this.sessions.get(e);return l&&(this.lastAccessedSessionId=e),l}async getLastSession(){if(this.lastAccessedSessionId){let n=this.sessions.get(this.lastAccessedSessionId);if(n)return n}let e=Array.from(this.sessions.values());if(e.length===0)return;e.sort((n,r)=>r.startTime.getTime()-n.startTime.getTime());let l=e[0];return this.lastAccessedSessionId=l.sessionId,l}async listSessions(){return Array.from(this.sessions.values()).map(e=>({sessionId:e.sessionId,startTime:e.startTime,modifiedTime:e.modifiedTime}))}async saveSession(e){}async deleteSession(e){this.sessions.delete(e.sessionId),this.lastAccessedSessionId===e.sessionId&&(this.lastAccessedSessionId=void 0)}};c();c();var XQn=_l({type:gr("copilot"),text:Et(),isStreaming:bo().optional()}),kQn=_l({type:gr("error"),text:Et()}),LQn=_l({type:gr("info"),text:Et()}),L0a=_l({displayText:Et(),fullPath:Et(),type:zg(["file","directory","unresolved","image"]),startIndex:FG()}),JQn=_l({type:gr("user"),text:Et()}),S8=_l({command:Et(),description:Et(),timeout:FG().optional(),sessionId:Et().optional(),async:bo().optional()}),L8e=_l({sessionId:Et(),input:Et(),delay:FG().optional()}),J8e=_l({sessionId:Et(),delay:FG()}),x8e=_l({sessionId:Et()}),__t=Hh([S8,L8e,J8e,x8e]),xQn=_l({command:gr("view"),path:Et(),view_range:KYe([FG(),FG()]).optional()}),SQn=_l({command:gr("create"),path:Et(),file_text:Et()}),BQn=_l({command:gr("str_replace"),path:Et(),new_str:Et().optional(),old_str:Et()}),OQn=_l({command:gr("insert"),path:Et(),insert_line:FG(),new_str:Et()}),S8e=ede("command",[xQn,SQn,BQn,OQn]),B8e=_l({path:Et(),view_range:KYe([FG(),FG()]).optional()}),O8e=_l({path:Et(),file_text:Et()}),T8e=_l({path:Et(),old_str:Et(),new_str:Et().optional()}),D_t=Hh([__t,S8e,Ww()]),TQn=_l({type:gr("tool_call_requested"),callId:Et(),name:Et(),toolTitle:Et().optional(),intentionSummary:Et().nullable(),arguments:D_t,partialOutput:Et().optional(),isHidden:bo().optional(),isAlwaysExpanded:bo().optional(),showNoContent:bo().optional()}),UQn=_l({type:gr("tool_call_completed"),callId:Et(),name:Et(),toolTitle:Et().optional(),intentionSummary:Et().nullable(),result:Hh([_l({type:gr("success"),log:Et(),markdown:bo().optional()}),_l({type:gr("failure"),log:Et(),markdown:bo().optional()}),_l({type:gr("rejected"),markdown:bo().optional()}),_l({type:gr("denied"),log:Et(),markdown:bo().optional()})]),arguments:D_t,isHidden:bo().optional(),isAlwaysExpanded:bo().optional(),showNoContent:bo().optional()}),MQn=Hh([XQn,kQn,LQn,JQn,TQn,UQn]),z_t=MQn.and(_l({id:Et(),timestamp:tde.date()}));function P_t(t,e){switch(t.type){case"copilot":return e.onCopilot(t);case"error":return e.onError(t);case"info":return e.onInfo(t);case"tool_call_requested":return e.onToolCallRequested(t);case"tool_call_completed":return e.onToolCallCompleted(t);case"user":return e.onUser(t);default:{let l=t;throw new Error(`Unexpected message type: ${JSON.stringify(t)}`)}}}var CO=class t extends Error{prUrl;timeoutContext;constructor(e,l,n){super(e),this.name="JobStatusTimeoutError",this.timeoutContext=l,this.prUrl=n,Error.captureStackTrace&&Error.captureStackTrace(this,t)}};var hue=_l({type:gr("text"),text:Et()}),_Qn=_l({type:gr("refusal"),refusal:Et()}),DQn=_l({type:gr("image_url"),image_url:_l({url:Et(),detail:zg(["auto","low","high"]).optional()})}),zQn=_l({type:gr("input_audio"),input_audio:_l({data:Et(),format:gr("wav").or(gr("mp3"))})}),PQn=_l({type:gr("file"),file:_l({file_date:Et().optional(),file_id:Et().optional(),filename:Et().optional()})}),jQn=Hh([hue,DQn,zQn,PQn]),KQn=_l({name:Et(),arguments:Et()}),qQn=_l({name:Et(),input:Et()}),$Qn=_l({id:Et(),type:gr("function"),function:KQn}),eFn=_l({id:Et(),type:gr("custom"),custom:qQn}),tFn=Hh([$Qn,eFn]),lFn=_l({name:Et(),arguments:Et()}),nFn=_l({id:Et()}),rFn=_l({content:Hh([Et(),xd(hue)]),role:gr("developer"),name:Et().optional()}),IFn=_l({content:Hh([Et(),xd(hue)]),role:gr("system"),name:Et().optional()}),aFn=_l({content:Hh([Et(),xd(jQn)]),role:gr("user"),name:Et().optional()}),sFn=_l({content:Hh([Et(),xd(Hh([hue,_Qn]))]).nullable().optional(),role:gr("assistant"),name:Et().optional(),refusal:Et().nullable().optional(),audio:nFn.nullable().optional(),function_call:lFn.nullable().optional(),tool_calls:xd(tFn).optional()}),oFn=_l({content:Hh([Et(),xd(hue)]),role:gr("tool"),tool_call_id:Et()}),iFn=_l({content:Et().nullable(),role:gr("function"),name:Et()}),cFn=Hh([rFn,IFn,aFn,sFn,oFn,iFn]),U8e=_l({sessionId:Et(),startTime:tde.date(),chatMessages:xd(cFn),timeline:xd(z_t),selectedModel:zg(RO).optional()}),Aue=vVe(U8e.parse,"history-session");c();c();var Vb=_l({id:Et().uuid(),timestamp:Et().datetime(),parentId:Et().uuid().nullable(),ephemeral:bo().optional()}),dFn=Vb.extend({type:gr("session.start"),data:_l({sessionId:Et(),version:FG(),producer:Et(),copilotVersion:Et(),startTime:Et().datetime(),selectedModel:Et().optional()})}),uFn=Vb.extend({type:gr("session.resume"),data:_l({resumeTime:Et().datetime(),eventCount:FG()})}),mFn=Vb.extend({type:gr("session.error"),data:_l({errorType:Et(),message:Et(),stack:Et().optional()})}),bFn=Vb.extend({type:gr("session.info"),data:_l({infoType:Et(),message:Et()})}),GFn=Vb.extend({type:gr("session.model_change"),data:_l({previousModel:Et().optional(),newModel:Et()})}),pFn=Vb.extend({type:gr("session.import_legacy"),data:_l({legacySession:U8e,importTime:Et().datetime(),sourceFile:Et()})}),hFn=_l({type:zg(["file","directory"]),path:Et(),displayName:Et()}),AFn=Vb.extend({type:gr("user.message"),data:_l({content:Et(),attachments:xd(hFn).optional()})}),ZFn=Vb.extend({type:gr("assistant.turn_start"),data:_l({turnId:Et()})}),gFn=Vb.extend({type:gr("assistant.message"),data:_l({messageId:Et(),content:Et(),toolRequests:xd(_l({toolCallId:Et(),name:Et(),arguments:Ww()})).optional()})}),NFn=Vb.extend({type:gr("assistant.turn_end"),data:_l({turnId:Et()})}),WFn=Vb.extend({type:gr("assistant.usage"),ephemeral:gr(!0),data:_l({model:Et().optional(),tokensUsed:FG().optional(),cost:FG().optional(),duration:FG().optional(),initiator:Et().optional()})}),yFn=Vb.extend({type:gr("abort"),data:_l({reason:Et()})}),EFn=Vb.extend({type:gr("tool.user_requested"),data:_l({toolCallId:Et(),toolName:Et(),arguments:Ww()})}),RFn=Vb.extend({type:gr("tool.execution_start"),data:_l({toolCallId:Et(),toolName:Et(),arguments:Ww()})}),YFn=Vb.extend({type:gr("tool.execution_partial_result"),ephemeral:gr(!0),data:_l({toolCallId:Et(),partialOutput:Et()})}),VFn=Vb.extend({type:gr("tool.execution_complete"),data:_l({toolCallId:Et(),success:bo(),isUserRequested:bo().optional(),result:_l({content:Et()}).optional(),error:_l({message:Et(),code:Et().optional()}).optional()})}),wFn=Vb.extend({type:gr("hook.start"),data:_l({hookInvocationId:Et(),hookType:Et(),input:Ww()})}),QFn=Vb.extend({type:gr("hook.end"),data:_l({hookInvocationId:Et(),hookType:Et(),output:Ww(),success:bo(),error:_l({message:Et(),stack:Et().optional()}).optional()})}),FFn=Vb.extend({type:gr("system.message"),data:_l({content:Et(),role:zg(["system","developer"]),name:Et().optional(),metadata:_l({promptVersion:Et().optional(),variables:B2(Ww()).optional()}).optional()})}),j_t=ede("type",[dFn,uFn,mFn,bFn,GFn,pFn,AFn,ZFn,gFn,NFn,WFn,yFn,EFn,RFn,YFn,VFn,wFn,QFn,FFn]);var vO=HMt(j_t.parse,"session");var KVe=class{constructor(e,l,n,r=!1,I){this.session=e;this.logger=l;this.flushDebounceMs=n;this.shouldSaveSession=r;this.legacySourceFile=I;this.unsubscribe=this.session.onEvent(a=>{a.ephemeral||(this.unflushedEvents.push(a),!this.shouldSaveSession&&a.type==="user.message"&&(this.shouldSaveSession=!0),a.type!=="session.resume"&&this.shouldSaveSession&&(this.flushTimer&&clearTimeout(this.flushTimer),this.flushTimer=setTimeout(()=>{this.flush().catch(s=>{this.logger.error(`Error flushing session ${this.session.sessionId}: ${s instanceof Error?s.message:String(s)}`)})},this.flushDebounceMs)))})}flushTimer=null;unflushedEvents=[];migratedLegacy=!1;isFlushing=!1;needsFlushAfterCurrent=!1;unsubscribe;dispose(){this.flushTimer&&(clearTimeout(this.flushTimer),this.flushTimer=null),this.unsubscribe()}async flush(){if(!this.shouldSaveSession||this.unflushedEvents.length===0)return;if(this.isFlushing){this.needsFlushAfterCurrent=!0;return}this.isFlushing=!0,this.flushTimer&&(clearTimeout(this.flushTimer),this.flushTimer=null);let e=this.unflushedEvents;this.unflushedEvents=[];try{if(await vO.append(e,this.session.sessionId),this.logger.debug(`Flushed ${e.length} events to session ${this.session.sessionId}`),this.legacySourceFile&&!this.migratedLegacy){this.logger.debug(`Migrated legacy session ${this.session.sessionId} from ${this.legacySourceFile}`);try{await K_t(this.legacySourceFile)}catch(l){this.logger.error(`Failed to delete legacy session file ${this.legacySourceFile}: ${l}`)}this.migratedLegacy=!0}}catch(l){this.logger.error(`Failed to flush events for ${this.session.sessionId}: ${l instanceof Error?l.message:String(l)}`),this.unflushedEvents.unshift(...e)}finally{this.isFlushing=!1,this.needsFlushAfterCurrent&&(this.needsFlushAfterCurrent=!1,await this.flush())}}},qVe=class extends jVe{sessionWriters={};copilotVersion;flushDebounceMs;constructor({logger:e,version:l,flushDebounceMs:n}){super({logger:e}),this.copilotVersion=l||"unknown",this.flushDebounceMs=n||100}async createSession(e){let l=e?.sessionId??Bu(),n=new Date,r=new of({sessionId:l,startTime:n,logger:this.logger});return this.sessionWriters[l]=new KVe(r,this.logger,this.flushDebounceMs),r.addEvent({type:"session.start",data:{sessionId:l,version:1,producer:"copilot-agent",copilotVersion:this.copilotVersion,startTime:n.toISOString(),selectedModel:e?.selectedModel}}),r}async getSession(e,l=!0){let n,r;try{n=await this.loadSession(e)}catch{try{let I=await this.loadLegacySession(e);n=I.session,r=I.legacySourceFile}catch{return}}return this.sessionWriters[e]||(this.sessionWriters[e]=new KVe(n,this.logger,this.flushDebounceMs,!0,r)),l&&n.addEvent({type:"session.resume",data:{resumeTime:new Date().toISOString(),eventCount:n.getEvents().length}}),n}async saveSession(e){await this.sessionWriters[e.sessionId]?.flush()}async loadSession(e){let l=await vO.load(e);if(l.length===0)throw new Error(`Session ${e} has no events`);if(l[0].type!=="session.start")throw new Error("First event must be a session.start event");return await of.fromEvents({events:l,logger:this.logger})}async loadLegacySession(e){let n=(await Aue.directoryFiles()).filter(o=>{let d=o.match(/^session_(.+)_(\d+)\.json$/);return d&&d[1]===e});if(n.length===0)throw new Error(`Legacy session ${e} not found`);let r=n[0];n.length>1&&this.logger.info(`Multiple legacy sessions found for ${e}, using newest`);let I=await Aue.load(r);if(!I)throw new Error(`Failed to load legacy session from ${r}`);let a=new Date(I.startTime),s=new of({sessionId:I.sessionId,startTime:a,logger:this.logger});return s.addEvent({type:"session.start",data:{sessionId:I.sessionId,version:1,producer:"copilot-agent",copilotVersion:this.copilotVersion,startTime:a.toISOString(),selectedModel:I.selectedModel}}),s.addEvent({type:"session.import_legacy",data:{legacySession:{sessionId:I.sessionId,startTime:a,chatMessages:I.chatMessages,timeline:I.timeline,selectedModel:I.selectedModel},importTime:new Date().toISOString(),sourceFile:r}}),this.logger.info(`Loaded legacy session ${e} from ${r}`),{session:s,legacySourceFile:Aue.path(r.replace(/\.json$/,""))}}async listSessions(){let e=await vO.directoryFilesWithMetadata(),l=await Aue.directoryFilesWithMetadata(),n=await Promise.all(e.map(async a=>({sessionId:a.file.replace(".jsonl",""),startTime:a.ctime,modifiedTime:a.mtime}))),r=(await Promise.all(l.map(async a=>{let s=a.file.match(/^session_(.+)_(\d+)\.json$/);return s?{sessionId:s[1],startTime:a.ctime,modifiedTime:a.mtime}:null}))).filter(a=>a!==null);this.logger.debug(`Found ${n.length} JSONL sessions and ${r.length} legacy sessions`);let I=new Map;for(let a of r)I.set(a.sessionId,a);for(let a of n)I.set(a.sessionId,a);return Array.from(I.values()).sort((a,s)=>s.modifiedTime.getTime()-a.modifiedTime.getTime())}async getLastSession(){let e=await this.listSessions();if(e.length===0)return;e.sort((n,r)=>r.modifiedTime.getTime()-n.modifiedTime.getTime());let l=e[0].sessionId;return await this.getSession(l)}async deleteSession(e){this.sessionWriters[e.sessionId]?.dispose(),delete this.sessionWriters[e.sessionId];let l=vO.path(e.sessionId);this.logger.info(`Deleting session file ${l}`),await K_t(l)}getSessionsDirectory(){return CFn(vO.home(),vO.directory())}setLogger(e){this.logger=e}};c();c();c();c();function Sd(t){return t()}c();var Zue;function fFn(t,e){return t.includes("\x1B[?")&&t.includes(e)}async function HFn(t){let e=process.stdin.isRaw;e||process.stdin.setRawMode(!0);try{return await t()}finally{e||process.stdin.setRawMode(!1)}}function q_t(t,e,l){return new Promise(n=>{let r="",I,a=()=>{I=void 0,process.stdin.removeListener("data",s),n(!1)},s=o=>{I!==void 0&&(r+=o.toString(),fFn(r,e)&&(process.stdin.removeListener("data",s),clearTimeout(I),I=void 0,n(!0)))};process.stdin.on("data",s),process.stdout.write("\x1B["+t),I=setTimeout(a,l)})}async function XFn(){return!(!(process.stdin.isTTY&&process.stdout.isTTY)||!await q_t("?u","u",200)||!await q_t("c","c",1e3))}async function eDt(){Zue===void 0&&(Zue=await HFn(XFn),Zue===!0&&(kFn(),process.on("exit",$_t),process.on("SIGTERM",$_t)))}function kFn(){process.stdout.write("\x1B[>1u")}function $_t(){process.stdout.write("\x1B[<u"),Zue=void 0}function $Ve(){return Zue===!0}c();c();c();c();function Nue(t,e=!1){let l=t.length,n=0,r="",I=0,a=16,s=0,o=0,d=0,u=0,b=0;function p(H,J){let S=0,T=0;for(;S<H||!J;){let U=t.charCodeAt(n);if(U>=48&&U<=57)T=T*16+U-48;else if(U>=65&&U<=70)T=T*16+U-65+10;else if(U>=97&&U<=102)T=T*16+U-97+10;else break;n++,S++}return S<H&&(T=-1),T}function h(H){n=H,r="",I=0,a=16,b=0}function Z(){let H=n;if(t.charCodeAt(n)===48)n++;else for(n++;n<t.length&&B8(t.charCodeAt(n));)n++;if(n<t.length&&t.charCodeAt(n)===46)if(n++,n<t.length&&B8(t.charCodeAt(n)))for(n++;n<t.length&&B8(t.charCodeAt(n));)n++;else return b=3,t.substring(H,n);let J=n;if(n<t.length&&(t.charCodeAt(n)===69||t.charCodeAt(n)===101))if(n++,(n<t.length&&t.charCodeAt(n)===43||t.charCodeAt(n)===45)&&n++,n<t.length&&B8(t.charCodeAt(n))){for(n++;n<t.length&&B8(t.charCodeAt(n));)n++;J=n}else b=3;return t.substring(H,J)}function N(){let H="",J=n;for(;;){if(n>=l){H+=t.substring(J,n),b=2;break}let S=t.charCodeAt(n);if(S===34){H+=t.substring(J,n),n++;break}if(S===92){if(H+=t.substring(J,n),n++,n>=l){b=2;break}switch(t.charCodeAt(n++)){case 34:H+='"';break;case 92:H+="\\";break;case 47:H+="/";break;case 98:H+="\b";break;case 102:H+="\f";break;case 110:H+=`
1983
1983
  `;break;case 114:H+="\r";break;case 116:H+=" ";break;case 117:let U=p(4,!0);U>=0?H+=String.fromCharCode(U):b=4;break;default:b=5}J=n;continue}if(S>=0&&S<=31)if(gue(S)){H+=t.substring(J,n),b=2;break}else b=6;n++}return H}function y(){if(r="",b=0,I=n,o=s,u=d,n>=l)return I=l,a=17;let H=t.charCodeAt(n);if(M8e(H)){do n++,r+=String.fromCharCode(H),H=t.charCodeAt(n);while(M8e(H));return a=15}if(gue(H))return n++,r+=String.fromCharCode(H),H===13&&t.charCodeAt(n)===10&&(n++,r+=`
1984
1984
  `),s++,d=n,a=14;switch(H){case 123:return n++,a=1;case 125:return n++,a=2;case 91:return n++,a=3;case 93:return n++,a=4;case 58:return n++,a=6;case 44:return n++,a=5;case 34:return n++,r=N(),a=10;case 47:let J=n-1;if(t.charCodeAt(n+1)===47){for(n+=2;n<l&&!gue(t.charCodeAt(n));)n++;return r=t.substring(J,n),a=12}if(t.charCodeAt(n+1)===42){n+=2;let S=l-1,T=!1;for(;n<S;){let U=t.charCodeAt(n);if(U===42&&t.charCodeAt(n+1)===47){n+=2,T=!0;break}n++,gue(U)&&(U===13&&t.charCodeAt(n)===10&&n++,s++,d=n)}return T||(n++,b=1),r=t.substring(J,n),a=13}return r+=String.fromCharCode(H),n++,a=16;case 45:if(r+=String.fromCharCode(H),n++,n===l||!B8(t.charCodeAt(n)))return a=16;case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return r+=Z(),a=11;default:for(;n<l&&Y(H);)n++,H=t.charCodeAt(n);if(I!==n){switch(r=t.substring(I,n),r){case"true":return a=8;case"false":return a=9;case"null":return a=7}return a=16}return r+=String.fromCharCode(H),n++,a=16}}function Y(H){if(M8e(H)||gue(H))return!1;switch(H){case 125:case 93:case 123:case 91:case 34:case 58:case 44:case 47:return!1}return!0}function w(){let H;do H=y();while(H>=12&&H<=15);return H}return{setPosition:h,getPosition:()=>n,scan:e?w:y,getToken:()=>a,getTokenValue:()=>r,getTokenOffset:()=>I,getTokenLength:()=>n-I,getTokenStartLine:()=>o,getTokenStartCharacter:()=>I-u,getTokenError:()=>b}}function M8e(t){return t===32||t===9}function gue(t){return t===10||t===13}function B8(t){return t>=48&&t<=57}var tDt;(function(t){t[t.lineFeed=10]="lineFeed",t[t.carriageReturn=13]="carriageReturn",t[t.space=32]="space",t[t._0=48]="_0",t[t._1=49]="_1",t[t._2=50]="_2",t[t._3=51]="_3",t[t._4=52]="_4",t[t._5=53]="_5",t[t._6=54]="_6",t[t._7=55]="_7",t[t._8=56]="_8",t[t._9=57]="_9",t[t.a=97]="a",t[t.b=98]="b",t[t.c=99]="c",t[t.d=100]="d",t[t.e=101]="e",t[t.f=102]="f",t[t.g=103]="g",t[t.h=104]="h",t[t.i=105]="i",t[t.j=106]="j",t[t.k=107]="k",t[t.l=108]="l",t[t.m=109]="m",t[t.n=110]="n",t[t.o=111]="o",t[t.p=112]="p",t[t.q=113]="q",t[t.r=114]="r",t[t.s=115]="s",t[t.t=116]="t",t[t.u=117]="u",t[t.v=118]="v",t[t.w=119]="w",t[t.x=120]="x",t[t.y=121]="y",t[t.z=122]="z",t[t.A=65]="A",t[t.B=66]="B",t[t.C=67]="C",t[t.D=68]="D",t[t.E=69]="E",t[t.F=70]="F",t[t.G=71]="G",t[t.H=72]="H",t[t.I=73]="I",t[t.J=74]="J",t[t.K=75]="K",t[t.L=76]="L",t[t.M=77]="M",t[t.N=78]="N",t[t.O=79]="O",t[t.P=80]="P",t[t.Q=81]="Q",t[t.R=82]="R",t[t.S=83]="S",t[t.T=84]="T",t[t.U=85]="U",t[t.V=86]="V",t[t.W=87]="W",t[t.X=88]="X",t[t.Y=89]="Y",t[t.Z=90]="Z",t[t.asterisk=42]="asterisk",t[t.backslash=92]="backslash",t[t.closeBrace=125]="closeBrace",t[t.closeBracket=93]="closeBracket",t[t.colon=58]="colon",t[t.comma=44]="comma",t[t.dot=46]="dot",t[t.doubleQuote=34]="doubleQuote",t[t.minus=45]="minus",t[t.openBrace=123]="openBrace",t[t.openBracket=91]="openBracket",t[t.plus=43]="plus",t[t.slash=47]="slash",t[t.formFeed=12]="formFeed",t[t.tab=9]="tab"})(tDt||(tDt={}));c();var KW=new Array(20).fill(0).map((t,e)=>" ".repeat(e)),O8=200,_8e={" ":{"\n":new Array(O8).fill(0).map((t,e)=>`
1985
1985
  `+" ".repeat(e)),"\r":new Array(O8).fill(0).map((t,e)=>"\r"+" ".repeat(e)),"\r\n":new Array(O8).fill(0).map((t,e)=>`\r
@@ -2364,7 +2364,7 @@ Please report this to https://github.com/markedjs/marked.`,t){let n="<p>An error
2364
2364
 
2365
2365
  ${n}`:""),isTruncated:!0}}return{problemStatement:t+(e?`
2366
2366
 
2367
- ${e}`:""),isTruncated:!1}}function ial(t){let e=Math.floor((Date.now()-t.getTime())/1e3);if(e<60)return`${e}s`;let l=Math.floor(e/60);return l<60?`${l}m`:`${Math.floor(l/60)}h`}var P$e=({date:t,prefix:e="",suffix:l=""})=>{let[,n]=(0,wq.useState)(0);return(0,wq.useEffect)(()=>{let r,I=()=>{Math.floor((Date.now()-t.getTime())/1e3)<60?r=setInterval(()=>{n(o=>o+1)},1e3):r=setInterval(()=>{n(o=>o+1)},6e4)};I();let a=setInterval(()=>{Math.floor((Date.now()-t.getTime())/1e3)>=60&&(clearInterval(r),I(),clearInterval(a))},1e3);return()=>{clearInterval(r),clearInterval(a)}},[t]),wq.default.createElement(ce,null,e,ial(t),l)};var cal=({state:t,onAdvance:e,onCancel:l,onStartNewSession:n})=>{let{theme:r}=_n();Zc((d,u)=>{if(t.error&&u.escape){l();return}t.stage==="push_tracking"&&u.ctrl&&d==="n"&&(n?n():l())});let I=d=>{d.value?e():l()},a={label:"Yes",value:!0},s={label:"No, cancel",value:!1},o=()=>{switch(t.stage){case"uncommitted_changes_check":return t.isLoading?In.default.createElement(Te,{flexDirection:"column",borderStyle:"round",paddingX:1,gap:1},In.default.createElement(ce,{bold:!0},"Push current session to Copilot Coding Agent?"),In.default.createElement(Lw,{color:r.MUTED},"Checking for uncommitted changes")):t.hasUncommittedChanges&&t.fileCount?In.default.createElement(Te,{flexDirection:"column",borderStyle:"round",paddingX:1,gap:1},In.default.createElement(ce,{bold:!0},"Push current session to Copilot Coding Agent?"),In.default.createElement(Te,{flexDirection:"column"},In.default.createElement(ce,null,"Uncommitted changes detected:"),t.fileCount.staged>0&&In.default.createElement(ce,null,"- Staged files: ",In.default.createElement(ce,{color:r.ACCENT},t.fileCount.staged)),t.fileCount.unstaged>0&&In.default.createElement(ce,null,"- Modified files: ",In.default.createElement(ce,{color:r.ACCENT},t.fileCount.unstaged)),t.fileCount.untracked>0&&In.default.createElement(ce,null,"- Untracked files: ",In.default.createElement(ce,{color:r.ACCENT},t.fileCount.untracked))),In.default.createElement(ce,null,"Would you like to commit all changes before pushing? This will create a checkpoint commit: ",In.default.createElement(ce,{color:r.ACCENT},t.commitMessage)),In.default.createElement(p0,{items:[a],onSelect:I,escapeItem:s,onEscape:l})):null;case"confirm_push":return t.isLoading?In.default.createElement(Te,{flexDirection:"column",borderStyle:"round",paddingX:1},In.default.createElement(ce,{bold:!0},"Push current session to Copilot Coding Agent?"),In.default.createElement(ce,null," "),In.default.createElement(Lw,{color:r.MUTED},"Loading repository information")):In.default.createElement(Te,{flexDirection:"column",borderStyle:"round",paddingX:1,gap:1},In.default.createElement(ce,{bold:!0},"Push current session to Copilot Coding Agent?"),In.default.createElement(Te,{flexDirection:"column"},In.default.createElement(ce,null,"Prompt:"),In.default.createElement(Te,{borderStyle:"round",paddingX:1},In.default.createElement(ce,null,t.prompt.length>1e3?`${t.prompt.slice(0,1e3)}...`:t.prompt))),In.default.createElement(ce,null,"Copilot will push your local changes to the"," ",In.default.createElement(ce,{color:r.ACCENT},t.repository)," repository on"," ",In.default.createElement(ce,{color:r.ACCENT},t.asyncBranch)," (based on"," ",In.default.createElement(ce,{color:r.ACCENT},t.headBranch),") and draft a pull request based on your prompt."),In.default.createElement(p0,{items:[a],onSelect:I,escapeItem:s,onEscape:l}));case"push_processing":return In.default.createElement(Te,{flexDirection:"column",borderStyle:"round",paddingX:1},In.default.createElement(ce,{bold:!0},"Pushing session to Copilot Coding Agent",t.processingStartTime&&In.default.createElement(In.default.Fragment,null," (",In.default.createElement(P$e,{date:t.processingStartTime}),")"),":"),t.operations&&In.default.createElement(Te,{marginBottom:1},In.default.createElement(sal,{operations:t.operations,state:t,theme:r})),In.default.createElement(ce,null,"Logs will begin streaming here once Copilot Coding Agent starts work."));case"push_tracking":{let d=()=>{let p=t.sessionState,h=p==="queued"||p==="in_progress";return In.default.createElement(Te,null,In.default.createElement(ce,{bold:!0},t.prTitle||"Untitled"," #",t.prNumber||"..."," - "),(()=>{if(h)return In.default.createElement(In.default.Fragment,null,In.default.createElement(Lw,{color:r.COPILOT}),In.default.createElement(ce,null,p==="queued"?"Queued":"Processing"));let Z,N,y;switch(p){case"waiting_for_user":Z=r.WARNING,N="Waiting for user action",y="\u25CF";break;case"idle":Z=r.MUTED,N="Session paused",y="\u25CF";break;case"completed":Z=r.SUCCESS,N="Completed",y="\u25CF";break;case"failed":Z=r.ERROR,N="Failed",y="\u2717";break;case"timed_out":Z=r.ERROR,N="Timed out",y="\u2717";break;default:Z=r.MUTED,N="Initializing...",y="\u25CF"}return In.default.createElement(In.default.Fragment,null,In.default.createElement(ce,{color:Z},y," "),In.default.createElement(ce,null,N))})())},u=()=>In.default.createElement(ce,null,In.default.createElement(ce,{color:r.ACCENT},t.repository),t.prDraft&&" \u25CF Draft"," \xB7 Created by ",t.jobCreatedBy||"Copilot",t.jobCreatedAt&&In.default.createElement(In.default.Fragment,null," (",In.default.createElement(P$e,{date:t.jobCreatedAt}),")")),b=()=>{let p=t.prChangedFiles||0;if(p===0)return null;let h=t.prFiles?t.prFiles.length:0,Z=p-h;return In.default.createElement(Te,{flexDirection:"column"},In.default.createElement(ce,null,"Files changed (",p,"):"),t.prFiles&&t.prFiles.map((N,y)=>In.default.createElement(ce,{key:y},"\u2514 ",N.filename," ",In.default.createElement(ce,{color:r.SUCCESS},"+",N.additions)," ",In.default.createElement(ce,{color:r.ERROR},"-",N.deletions))),Z>0&&In.default.createElement(ce,{dimColor:!0},"\u2514 ",Z," more file",Z===1?"":"s"," ","modified/added/deleted"))};return In.default.createElement(Te,{flexDirection:"column"},In.default.createElement(Te,{flexDirection:"column",borderStyle:"round",paddingX:1,gap:1},In.default.createElement(Te,{flexDirection:"column"},d(),u()),t.jobUrl&&In.default.createElement(ce,null,t.jobUrl),b()),In.default.createElement(Te,null,In.default.createElement(Aq,{shortcut:"Ctrl+N",description:"Start a new session"})))}default:return In.default.createElement(Te,{flexDirection:"column",borderStyle:"round",paddingX:1},In.default.createElement(ce,{color:r.ERROR},"Unknown stage: ",t.stage))}};if(t.error){let d=t.error instanceof CO,u=d?t.error:null,b=d?"Job Status Pending":"Error Details:",p=d?r.WARNING:r.ERROR,h=d&&u?In.default.createElement(In.default.Fragment,null,In.default.createElement(ce,null,"We are taking longer than usual to start the task. To save you waiting, we have stopped checking the status. You can track the latest status by visiting"," ",u.prUrl?`your pull request ${u.prUrl}`:"https://github.com/copilot and checking your Tasks","."),In.default.createElement(ce,null,"If this issue persists, please contact support.")):In.default.createElement(ce,null,t.error.message);return In.default.createElement(Te,{flexDirection:"column"},In.default.createElement(Te,{flexDirection:"column",borderStyle:"round",paddingX:1},In.default.createElement(ce,{bold:!0,color:p},b),In.default.createElement(Te,{marginTop:1,flexDirection:"column",gap:1},h)),In.default.createElement(Te,null,In.default.createElement(Aq,{shortcut:"Esc",description:"Cancel"})))}return o()};cal.displayName="RemoteJobPushControlArea";var dal=cal;c();var Eme=nt(qt(),1);var ual=({onConfirm:t})=>Eme.default.createElement(h0,{title:"Remember screen reader mode",body:Eme.default.createElement(Te,{flexDirection:"column",gap:1},Eme.default.createElement(ce,null,"Copilot can enable screen reader optimizations in future sessions using the `screen_reader` configuration setting."),Eme.default.createElement(ce,null,"Do you want to remember screen reader mode for future sessions?")),items:[{label:"Yes, remember screen reader mode",value:"yes"},{label:"No, never ask me again",value:"never"}],escapeItem:{label:"No, ask me next time",value:"no"},onConfirm:t});c();var tT=nt(qt(),1);function mal({sessionId:t,onClose:e}){let{theme:l}=_n();return Zc((n,r)=>{(r.return||r.escape)&&e()}),tT.default.createElement(Te,{flexDirection:"column",borderColor:l.BORDER},tT.default.createElement(Te,{flexDirection:"row",gap:1},tT.default.createElement(ce,{color:l.ACCENT,bold:!0},"Session ID:"),tT.default.createElement(ce,{color:l.FG},t)),tT.default.createElement(Te,{flexDirection:"column",marginTop:1},tT.default.createElement(ce,{color:l.MUTED},"Hit Enter or Esc to continue")))}c();var Zs=nt(qt(),1);function bal(t){let l=new Date().getTime()-t.getTime(),n=Math.floor(l/1e3),r=Math.floor(n/60),I=Math.floor(r/60),a=Math.floor(I/24),s=Math.floor(a/7),o=Math.floor(a/30),d=Math.floor(a/365);return n<60?"just now":r<60?`${r}m ago`:I<24?`${I}h ago`:a<7?`${a}d ago`:s<4?`${s}w ago`:o<12?`${o}mo ago`:`${d}y ago`}function fOn(t){return t.sort((e,l)=>{let n=e.isModified?e.modifiedTime.getTime():e.startTime.getTime();return(l.isModified?l.modifiedTime.getTime():l.startTime.getTime())-n})}function Gal({sessionManager:t,onSessionSelected:e,onCancel:l,logger:n}){let{theme:r}=_n(),[I,a]=(0,Zs.useState)([]),[s,o]=(0,Zs.useState)(0),[d,u]=(0,Zs.useState)(!0),[b,p]=(0,Zs.useState)(null);(0,Zs.useEffect)(()=>{async function N(){try{let y=await t.listSessions();if(n.info(`Found ${y.length} sessions`),y.length===0){p("No previous sessions found"),u(!1);return}let Y=y.map(J=>async()=>{let S={sessionId:J.sessionId,startTime:J.startTime,modifiedTime:J.modifiedTime,isModified:Math.abs(J.modifiedTime.getTime()-J.startTime.getTime())>6e4,summary:"(no message content)",messageCount:0};try{let T=await t.getSession(J.sessionId);return T?{...S,summary:T.summary||S.summary,messageCount:T.messageCount}:S}catch{return S}}),w=10,H=[];for(let J=0;J<Y.length;J+=w){let S=Y.slice(J,J+w),T=await Promise.all(S.map(j=>j()));H.push(...T);let U=fOn(H);a(U),u(!1)}}catch(y){p(`Failed to load sessions: ${y instanceof Error?y.message:String(y)}`),u(!1)}}N()},[t]),Zc((N,y)=>{if(d||b){y.escape&&l();return}y.upArrow&&s>0?o(s-1):y.downArrow&&s<I.length-1?o(s+1):y.return&&I.length>0?e(I[s].sessionId):y.escape&&l()});let h=()=>Zs.default.createElement(Te,{paddingBottom:1,paddingLeft:3,flexDirection:"row"},Zs.default.createElement(ce,{color:r.MUTED,bold:!0},"#".padEnd(5)),Zs.default.createElement(ce,{color:r.MUTED,bold:!0},"Modified".padEnd(12)),Zs.default.createElement(ce,{color:r.MUTED,bold:!0},"Created".padEnd(12)),Zs.default.createElement(ce,{color:r.MUTED,bold:!0},"Msg".padEnd(5)),Zs.default.createElement(ce,{color:r.MUTED,bold:!0},"Summary")),Z=(N,y,Y)=>{let w=Y?r.SELECTED:r.FG,H=Y?r.SELECTED:r.MUTED,J=`${y+1}.`.padEnd(5),S=N.isModified?N.modifiedTime:N.startTime,U=bal(S).padEnd(12),O=bal(N.startTime).padEnd(12),z=N.messageCount.toString().padEnd(5),se=N.summary||"";return Zs.default.createElement(Te,{flexDirection:"row",key:N.sessionId},Zs.default.createElement(ce,{dimColor:!Y,color:Y?H:void 0},J),Zs.default.createElement(ce,{color:H},U),Zs.default.createElement(ce,{color:H},O),Zs.default.createElement(ce,{color:H},z),Zs.default.createElement(ce,{color:w},se))};return d?Zs.default.createElement(Te,{flexDirection:"column"},Zs.default.createElement(ce,{color:r.ACCENT,bold:!0},"Loading sessions..."),Zs.default.createElement(ce,{color:r.MUTED},"Press Esc to cancel")):b?Zs.default.createElement(Te,{flexDirection:"column"},Zs.default.createElement(ce,{color:r.ERROR,bold:!0},b),Zs.default.createElement(ce,{color:r.MUTED},"Press Esc to continue")):I.length===0?Zs.default.createElement(Te,{flexDirection:"column"},Zs.default.createElement(ce,{color:r.ACCENT,bold:!0},"No previous sessions found"),Zs.default.createElement(ce,{color:r.MUTED},"Press Esc to continue")):Zs.default.createElement(Te,{flexDirection:"column"},Zs.default.createElement(ce,{color:r.FG,bold:!0},"Select a session to resume:"),Zs.default.createElement(Te,{marginTop:1,flexDirection:"column"},h(),Zs.default.createElement(Te,null,Zs.default.createElement(Gq,{items:I,selectedIndex:s,maxRows:10,renderItem:Z,showScrollHints:!0}))),Zs.default.createElement(Te,{marginTop:1},Zs.default.createElement(ce,{color:r.MUTED},"Use \u2191\u2193 to navigate, Enter to select, Esc to cancel")))}c();var Qq=nt(qt(),1);var HOn=45,XOn=t=>{let{theme:e}=_n(),l=(n,r,I)=>{let a=I?e.SELECTED:e.MUTED,s=n.aliases&&n.aliases.length>0?`, ${n.aliases.join(", ")}`:"",o=`${n.name}${s}${n.args?` ${n.args}`:""}`;return Qq.default.createElement(Te,{flexDirection:"row",key:n.name},Qq.default.createElement(Te,{width:HOn},Qq.default.createElement(ce,{color:a,wrap:"truncate"},o)),Qq.default.createElement(ce,{color:a,wrap:"truncate"},n.help))};return Qq.default.createElement(Gq,{items:t.options,selectedIndex:t.selectedIndex,maxRows:t.maxRows,renderItem:l,showScrollHints:t.showScrollHints??!1})},pal=XOn;c();var y0=nt(qt(),1);var kOn=100,LOn=1e3,JOn=({text:t,color:e,shimmerColor:l})=>{let[n,r]=(0,y0.useState)(0);return(0,y0.useEffect)(()=>{let I=setTimeout(()=>{r(a=>a===t.length?0:a===t.length-1?t.length:a+1)},n===t.length?LOn:kOn);return()=>clearTimeout(I)},[n,t.length]),y0.default.createElement(ce,null,t.split("").map((I,a)=>y0.default.createElement(ce,{key:a,color:a===n?l:e},I)))},hal=t=>{let{hideToggleHelp:e}=VQe(),{theme:l}=_n(),n="\xB7",r=t.mode==="executing"?"Executing":t.mode==="cancelling"?"Cancelling":"Thinking",I=t.mode!=="cancelling"&&!e,a=t.streamingResponseSize&&t.streamingResponseSize>0?`(Esc to cancel ${n} ${uE(t.streamingResponseSize,1)})`:"(Esc to cancel)";return y0.default.createElement(Te,{flexDirection:"row",gap:1},y0.default.createElement(Te,{flexDirection:"row"},y0.default.createElement(Lw,{color:l.COPILOT}),y0.default.createElement(JOn,{text:r,color:l.COPILOT,shimmerColor:l.COPILOT_BRIGHT})),I&&y0.default.createElement(ce,{color:l.MUTED},a))};c();var $a=nt(qt(),1);c();var Fq=(t,e)=>{if(!t)return{color:e.MUTED,icon:"\u25CB",label:"In Progress"};switch(t.type){case"in_progress":return{color:e.MUTED,icon:"\u25CB",label:"In Progress"};case"success":return{color:e.SUCCESS,icon:"\u2713",label:"Success"};case"rejected":return{color:e.ERROR,icon:"\u2717",label:"Rejected"};case"denied":return{color:e.ERROR,icon:"\u2717",label:"Denied"};case"failure":return{color:e.ERROR,icon:"\u2717",label:"Failed"};default:throw new Error(`unexpected type ${t.type}`)}};c();var HG=nt(qt(),1);c();var lT="local_shell";function Zal(t,e=8){return t.includes(" ")?t.split(`
2367
+ ${e}`:""),isTruncated:!1}}function ial(t){let e=Math.floor((Date.now()-t.getTime())/1e3);if(e<60)return`${e}s`;let l=Math.floor(e/60);return l<60?`${l}m`:`${Math.floor(l/60)}h`}var P$e=({date:t,prefix:e="",suffix:l=""})=>{let[,n]=(0,wq.useState)(0);return(0,wq.useEffect)(()=>{let r,I=()=>{Math.floor((Date.now()-t.getTime())/1e3)<60?r=setInterval(()=>{n(o=>o+1)},1e3):r=setInterval(()=>{n(o=>o+1)},6e4)};I();let a=setInterval(()=>{Math.floor((Date.now()-t.getTime())/1e3)>=60&&(clearInterval(r),I(),clearInterval(a))},1e3);return()=>{clearInterval(r),clearInterval(a)}},[t]),wq.default.createElement(ce,null,e,ial(t),l)};var cal=({state:t,onAdvance:e,onCancel:l,onStartNewSession:n})=>{let{theme:r}=_n();Zc((d,u)=>{if(t.error&&u.escape){l();return}t.stage==="push_tracking"&&u.ctrl&&d==="n"&&(n?n():l())});let I=d=>{d.value?e():l()},a={label:"Yes",value:!0},s={label:"No, cancel",value:!1},o=()=>{switch(t.stage){case"uncommitted_changes_check":return t.isLoading?In.default.createElement(Te,{flexDirection:"column",borderStyle:"round",paddingX:1,gap:1},In.default.createElement(ce,{bold:!0},"Push current session to Copilot Coding Agent?"),In.default.createElement(Lw,{color:r.MUTED},"Checking for uncommitted changes")):t.hasUncommittedChanges&&t.fileCount?In.default.createElement(Te,{flexDirection:"column",borderStyle:"round",paddingX:1,gap:1},In.default.createElement(ce,{bold:!0},"Push current session to Copilot Coding Agent?"),In.default.createElement(Te,{flexDirection:"column"},In.default.createElement(ce,null,"Uncommitted changes detected:"),t.fileCount.staged>0&&In.default.createElement(ce,null,"- Staged files: ",In.default.createElement(ce,{color:r.ACCENT},t.fileCount.staged)),t.fileCount.unstaged>0&&In.default.createElement(ce,null,"- Modified files: ",In.default.createElement(ce,{color:r.ACCENT},t.fileCount.unstaged)),t.fileCount.untracked>0&&In.default.createElement(ce,null,"- Untracked files: ",In.default.createElement(ce,{color:r.ACCENT},t.fileCount.untracked))),In.default.createElement(ce,null,"Would you like to commit all changes before pushing? This will create a checkpoint commit: ",In.default.createElement(ce,{color:r.ACCENT},t.commitMessage)),In.default.createElement(p0,{items:[a],onSelect:I,escapeItem:s,onEscape:l})):null;case"confirm_push":return t.isLoading?In.default.createElement(Te,{flexDirection:"column",borderStyle:"round",paddingX:1},In.default.createElement(ce,{bold:!0},"Push current session to Copilot Coding Agent?"),In.default.createElement(ce,null," "),In.default.createElement(Lw,{color:r.MUTED},"Loading repository information")):In.default.createElement(Te,{flexDirection:"column",borderStyle:"round",paddingX:1,gap:1},In.default.createElement(ce,{bold:!0},"Push current session to Copilot Coding Agent?"),In.default.createElement(Te,{flexDirection:"column"},In.default.createElement(ce,null,"Prompt:"),In.default.createElement(Te,{borderStyle:"round",paddingX:1},In.default.createElement(ce,null,t.prompt.length>1e3?`${t.prompt.slice(0,1e3)}...`:t.prompt))),In.default.createElement(ce,null,"Copilot will push your local changes to the"," ",In.default.createElement(ce,{color:r.ACCENT},t.repository)," repository on"," ",In.default.createElement(ce,{color:r.ACCENT},t.asyncBranch)," (based on"," ",In.default.createElement(ce,{color:r.ACCENT},t.headBranch),") and draft a pull request based on your prompt."),In.default.createElement(p0,{items:[a],onSelect:I,escapeItem:s,onEscape:l}));case"push_processing":return In.default.createElement(Te,{flexDirection:"column",borderStyle:"round",paddingX:1},In.default.createElement(ce,{bold:!0},"Pushing session to Copilot Coding Agent",t.processingStartTime&&In.default.createElement(In.default.Fragment,null," (",In.default.createElement(P$e,{date:t.processingStartTime}),")"),":"),t.operations&&In.default.createElement(Te,{marginBottom:1},In.default.createElement(sal,{operations:t.operations,state:t,theme:r})),In.default.createElement(ce,null,"Logs will begin streaming here once Copilot Coding Agent starts work."));case"push_tracking":{let d=()=>{let p=t.sessionState,h=p==="queued"||p==="in_progress";return In.default.createElement(Te,null,In.default.createElement(ce,{bold:!0},t.prTitle||"Untitled"," #",t.prNumber||"..."," - "),(()=>{if(h)return In.default.createElement(In.default.Fragment,null,In.default.createElement(Lw,{color:r.COPILOT}),In.default.createElement(ce,null,p==="queued"?"Queued":"Processing"));let Z,N,y;switch(p){case"waiting_for_user":Z=r.WARNING,N="Waiting for user action",y="\u25CF";break;case"idle":Z=r.MUTED,N="Session paused",y="\u25CF";break;case"completed":Z=r.SUCCESS,N="Completed",y="\u25CF";break;case"failed":Z=r.ERROR,N="Failed",y="\u2717";break;case"timed_out":Z=r.ERROR,N="Timed out",y="\u2717";break;default:Z=r.MUTED,N="Initializing...",y="\u25CF"}return In.default.createElement(In.default.Fragment,null,In.default.createElement(ce,{color:Z},y," "),In.default.createElement(ce,null,N))})())},u=()=>In.default.createElement(ce,null,In.default.createElement(ce,{color:r.ACCENT},t.repository),t.prDraft&&" \u25CF Draft"," \xB7 Created by ",t.jobCreatedBy||"Copilot",t.jobCreatedAt&&In.default.createElement(In.default.Fragment,null," (",In.default.createElement(P$e,{date:t.jobCreatedAt}),")")),b=()=>{let p=t.prChangedFiles||0;if(p===0)return null;let h=t.prFiles?t.prFiles.length:0,Z=p-h;return In.default.createElement(Te,{flexDirection:"column"},In.default.createElement(ce,null,"Files changed (",p,"):"),t.prFiles&&t.prFiles.map((N,y)=>In.default.createElement(ce,{key:y},"\u2514 ",N.filename," ",In.default.createElement(ce,{color:r.SUCCESS},"+",N.additions)," ",In.default.createElement(ce,{color:r.ERROR},"-",N.deletions))),Z>0&&In.default.createElement(ce,{dimColor:!0},"\u2514 ",Z," more file",Z===1?"":"s"," ","modified/added/deleted"))};return In.default.createElement(Te,{flexDirection:"column"},In.default.createElement(Te,{flexDirection:"column",borderStyle:"round",paddingX:1,gap:1},In.default.createElement(Te,{flexDirection:"column"},d(),u()),t.jobUrl&&In.default.createElement(ce,null,t.jobUrl),b()),In.default.createElement(Te,null,In.default.createElement(Aq,{shortcut:"Ctrl+N",description:"Start a new session"})))}default:return In.default.createElement(Te,{flexDirection:"column",borderStyle:"round",paddingX:1},In.default.createElement(ce,{color:r.ERROR},"Unknown stage: ",t.stage))}};if(t.error){let d=t.error instanceof CO,u=d?t.error:null,b=d?"Job Status Pending":"Error Details:",p=d?r.WARNING:r.ERROR,h=d&&u?In.default.createElement(In.default.Fragment,null,In.default.createElement(ce,null,"We are taking longer than usual to start the task. To save you waiting, we have stopped checking the status. You can track the latest status by visiting"," ",u.prUrl?`your pull request ${u.prUrl}`:"https://github.com/copilot and checking your Tasks","."),In.default.createElement(ce,null,"If this issue persists, please contact support.")):In.default.createElement(ce,null,t.error.message);return In.default.createElement(Te,{flexDirection:"column"},In.default.createElement(Te,{flexDirection:"column",borderStyle:"round",paddingX:1},In.default.createElement(ce,{bold:!0,color:p},b),In.default.createElement(Te,{marginTop:1,flexDirection:"column",gap:1},h)),In.default.createElement(Te,null,In.default.createElement(Aq,{shortcut:"Esc",description:"Cancel"})))}return o()};cal.displayName="RemoteJobPushControlArea";var dal=cal;c();var Eme=nt(qt(),1);var ual=({onConfirm:t})=>Eme.default.createElement(h0,{title:"Remember screen reader mode",body:Eme.default.createElement(Te,{flexDirection:"column",gap:1},Eme.default.createElement(ce,null,"Copilot can enable screen reader optimizations in future sessions using the `screen_reader` configuration setting."),Eme.default.createElement(ce,null,"Do you want to remember screen reader mode for future sessions?")),items:[{label:"Yes, remember screen reader mode",value:"yes"},{label:"No, never ask me again",value:"never"}],escapeItem:{label:"No, ask me next time",value:"no"},onConfirm:t});c();var tT=nt(qt(),1);function mal({sessionId:t,onClose:e}){let{theme:l}=_n();return Zc((n,r)=>{(r.return||r.escape)&&e()}),tT.default.createElement(Te,{flexDirection:"column",borderColor:l.BORDER},tT.default.createElement(Te,{flexDirection:"row",gap:1},tT.default.createElement(ce,{color:l.ACCENT,bold:!0},"Session ID:"),tT.default.createElement(ce,{color:l.FG},t)),tT.default.createElement(Te,{flexDirection:"column",marginTop:1},tT.default.createElement(ce,{color:l.MUTED},"Hit Enter or Esc to continue")))}c();var Zs=nt(qt(),1);function bal(t){let l=new Date().getTime()-t.getTime(),n=Math.floor(l/1e3),r=Math.floor(n/60),I=Math.floor(r/60),a=Math.floor(I/24),s=Math.floor(a/7),o=Math.floor(a/30),d=Math.floor(a/365);return n<60?"just now":r<60?`${r}m ago`:I<24?`${I}h ago`:a<7?`${a}d ago`:s<4?`${s}w ago`:o<12?`${o}mo ago`:`${d}y ago`}function fOn(t){return t.sort((e,l)=>{let n=e.isModified?e.modifiedTime.getTime():e.startTime.getTime();return(l.isModified?l.modifiedTime.getTime():l.startTime.getTime())-n})}function Gal({sessionManager:t,onSessionSelected:e,onCancel:l,logger:n}){let{theme:r}=_n(),[I,a]=(0,Zs.useState)([]),[s,o]=(0,Zs.useState)(0),[d,u]=(0,Zs.useState)(!0),[b,p]=(0,Zs.useState)(null);(0,Zs.useEffect)(()=>{async function N(){try{let y=await t.listSessions();if(n.info(`Found ${y.length} sessions`),y.length===0){p("No previous sessions found"),u(!1);return}let Y=y.map(J=>async()=>{let S={sessionId:J.sessionId,startTime:J.startTime,modifiedTime:J.modifiedTime,isModified:Math.abs(J.modifiedTime.getTime()-J.startTime.getTime())>6e4,summary:"(no message content)",messageCount:0};try{let T=await t.getSession(J.sessionId,!1);return T?{...S,summary:T.summary||S.summary,messageCount:T.messageCount}:S}catch{return S}}),w=10,H=[];for(let J=0;J<Y.length;J+=w){let S=Y.slice(J,J+w),T=await Promise.all(S.map(j=>j()));H.push(...T);let U=fOn(H);a(U),u(!1)}}catch(y){p(`Failed to load sessions: ${y instanceof Error?y.message:String(y)}`),u(!1)}}N()},[t]),Zc((N,y)=>{if(d||b){y.escape&&l();return}y.upArrow&&s>0?o(s-1):y.downArrow&&s<I.length-1?o(s+1):y.return&&I.length>0?e(I[s].sessionId):y.escape&&l()});let h=()=>Zs.default.createElement(Te,{paddingBottom:1,paddingLeft:3,flexDirection:"row"},Zs.default.createElement(ce,{color:r.MUTED,bold:!0},"#".padEnd(5)),Zs.default.createElement(ce,{color:r.MUTED,bold:!0},"Modified".padEnd(12)),Zs.default.createElement(ce,{color:r.MUTED,bold:!0},"Created".padEnd(12)),Zs.default.createElement(ce,{color:r.MUTED,bold:!0},"Msg".padEnd(5)),Zs.default.createElement(ce,{color:r.MUTED,bold:!0},"Summary")),Z=(N,y,Y)=>{let w=Y?r.SELECTED:r.FG,H=Y?r.SELECTED:r.MUTED,J=`${y+1}.`.padEnd(5),S=N.isModified?N.modifiedTime:N.startTime,U=bal(S).padEnd(12),O=bal(N.startTime).padEnd(12),z=N.messageCount.toString().padEnd(5),se=N.summary||"";return Zs.default.createElement(Te,{flexDirection:"row",key:N.sessionId},Zs.default.createElement(ce,{dimColor:!Y,color:Y?H:void 0},J),Zs.default.createElement(ce,{color:H},U),Zs.default.createElement(ce,{color:H},O),Zs.default.createElement(ce,{color:H},z),Zs.default.createElement(ce,{color:w},se))};return d?Zs.default.createElement(Te,{flexDirection:"column"},Zs.default.createElement(ce,{color:r.ACCENT,bold:!0},"Loading sessions..."),Zs.default.createElement(ce,{color:r.MUTED},"Press Esc to cancel")):b?Zs.default.createElement(Te,{flexDirection:"column"},Zs.default.createElement(ce,{color:r.ERROR,bold:!0},b),Zs.default.createElement(ce,{color:r.MUTED},"Press Esc to continue")):I.length===0?Zs.default.createElement(Te,{flexDirection:"column"},Zs.default.createElement(ce,{color:r.ACCENT,bold:!0},"No previous sessions found"),Zs.default.createElement(ce,{color:r.MUTED},"Press Esc to continue")):Zs.default.createElement(Te,{flexDirection:"column"},Zs.default.createElement(ce,{color:r.FG,bold:!0},"Select a session to resume:"),Zs.default.createElement(Te,{marginTop:1,flexDirection:"column"},h(),Zs.default.createElement(Te,null,Zs.default.createElement(Gq,{items:I,selectedIndex:s,maxRows:10,renderItem:Z,showScrollHints:!0}))),Zs.default.createElement(Te,{marginTop:1},Zs.default.createElement(ce,{color:r.MUTED},"Use \u2191\u2193 to navigate, Enter to select, Esc to cancel")))}c();var Qq=nt(qt(),1);var HOn=45,XOn=t=>{let{theme:e}=_n(),l=(n,r,I)=>{let a=I?e.SELECTED:e.MUTED,s=n.aliases&&n.aliases.length>0?`, ${n.aliases.join(", ")}`:"",o=`${n.name}${s}${n.args?` ${n.args}`:""}`;return Qq.default.createElement(Te,{flexDirection:"row",key:n.name},Qq.default.createElement(Te,{width:HOn},Qq.default.createElement(ce,{color:a,wrap:"truncate"},o)),Qq.default.createElement(ce,{color:a,wrap:"truncate"},n.help))};return Qq.default.createElement(Gq,{items:t.options,selectedIndex:t.selectedIndex,maxRows:t.maxRows,renderItem:l,showScrollHints:t.showScrollHints??!1})},pal=XOn;c();var y0=nt(qt(),1);var kOn=100,LOn=1e3,JOn=({text:t,color:e,shimmerColor:l})=>{let[n,r]=(0,y0.useState)(0);return(0,y0.useEffect)(()=>{let I=setTimeout(()=>{r(a=>a===t.length?0:a===t.length-1?t.length:a+1)},n===t.length?LOn:kOn);return()=>clearTimeout(I)},[n,t.length]),y0.default.createElement(ce,null,t.split("").map((I,a)=>y0.default.createElement(ce,{key:a,color:a===n?l:e},I)))},hal=t=>{let{hideToggleHelp:e}=VQe(),{theme:l}=_n(),n="\xB7",r=t.mode==="executing"?"Executing":t.mode==="cancelling"?"Cancelling":"Thinking",I=t.mode!=="cancelling"&&!e,a=t.streamingResponseSize&&t.streamingResponseSize>0?`(Esc to cancel ${n} ${uE(t.streamingResponseSize,1)})`:"(Esc to cancel)";return y0.default.createElement(Te,{flexDirection:"row",gap:1},y0.default.createElement(Te,{flexDirection:"row"},y0.default.createElement(Lw,{color:l.COPILOT}),y0.default.createElement(JOn,{text:r,color:l.COPILOT,shimmerColor:l.COPILOT_BRIGHT})),I&&y0.default.createElement(ce,{color:l.MUTED},a))};c();var $a=nt(qt(),1);c();var Fq=(t,e)=>{if(!t)return{color:e.MUTED,icon:"\u25CB",label:"In Progress"};switch(t.type){case"in_progress":return{color:e.MUTED,icon:"\u25CB",label:"In Progress"};case"success":return{color:e.SUCCESS,icon:"\u2713",label:"Success"};case"rejected":return{color:e.ERROR,icon:"\u2717",label:"Rejected"};case"denied":return{color:e.ERROR,icon:"\u2717",label:"Denied"};case"failure":return{color:e.ERROR,icon:"\u2717",label:"Failed"};default:throw new Error(`unexpected type ${t.type}`)}};c();var HG=nt(qt(),1);c();var lT="local_shell";function Zal(t,e=8){return t.includes(" ")?t.split(`
2368
2368
  `).map(l=>{let n="",r=0;for(let I of l)if(I===" "){let a=e-r%e;n+=" ".repeat(a),r+=a}else n+=I,r+=1;return n}).join(`
2369
2369
  `):t}var xOn=/[\u2500-\u257F\u2580-\u259F]/g;function Cq(t){return YR(t).replace(/\r/g,`
2370
2370
  `).replace(/\t/g," ").replace(xOn,"")}function tFe(t){try{return Go.parse(t,{async:!1}).replace(/\n{3,}/g,`