| 5244 | `).trim();if(z)return z;let Y=K.find(($)=>$.type==="tool_use");if(Y)return`(The model tried to call ${"name"in Y?Y.name:"a tool"} instead of answering directly. Try rephrasing or ask in the main conversation.)`}let _=q.find((z)=>z.type==="system"&&("subtype"in z)&&z.subtype==="api_error");if(_)return`(API error: ${Qk6(_.error)})`;return null}var qOY;var wg8=y(()=>{Pr();nv();i1();qOY=/^\/btw\b/gi});var oGK={};T8(oGK,{call:()=>wOY});function YOY(q){let K=z6(25),{question:_,context:z,onDone:Y}=q,[$,A]=j56.useState(null),[O,w]=j56.useState(null),[j,H]=j56.useState(0),J=j56.useRef(null),{rows:M}=vE8(t1()),X;if(K[0]===Symbol.for("react.memo_cache_sentinel"))X=()=>H($OY),K[0]=X;else X=K[0];eW(X,$||O?null:80);let P;if(K[1]!==Y)P=function(x){if(x.key==="escape"||x.key==="return"||x.key===" "||x.ctrl&&(x.key==="c"||x.key==="d")){x.preventDefault(),Y(void 0,{display:"skip"});return}if(x.key==="up"||x.ctrl&&x.key==="p")x.preventDefault(),J.current?.scrollBy(-rGK);if(x.key==="down"||x.ctrl&&x.key==="n")x.preventDefault(),J.current?.scrollBy(rGK)},K[1]=Y,K[2]=P;else P=K[2];let W=P,D,f;if(K[3]!==z||K[4]!==_)D=()=>{let R=P3();return async function(){try{let B=await OOY(z),p=await Og8({question:_,cacheSafeParams:B});if(!R.signal.aborted)if(p.response)A(p.response);else w("No response received")}catch(B){let p=B;if(!R.signal.aborted)w(d6(p)||"Failed to get response")}}(),()=>{R.abort()}},f=[_,z],K[3]=z,K[4]=_,K[5]=D,K[6]=f;else D=K[5],f=K[6];j56.useEffect(D,f);let G=Math.max(5,M-_OY-zOY),Z;if(K[7]===Symbol.for("react.memo_cache_sentinel"))Z=MO.createElement(k,{color:"warning",bold:!0},"/btw"," "),K[7]=Z;else Z=K[7];let T;if(K[8]!==_)T=MO.createElement(u,null,Z,MO.createElement(k,{dimColor:!0},_)),K[8]=_,K[9]=T;else T=K[9];let v;if(K[10]!==O||K[11]!==j||K[12]!==$)v=MO.createElement(xh6,{ref:J,flexDirection:"column",flexGrow:1},O?MO.createElement(k,{color:"error"},O):$?MO.createElement(AO,null,$):MO.createElement(u,null,MO.createElement(Ae6,{frame:j,messageColor:"warning"}),MO.createElement(k,{color:"warning"},"Answering..."))),K[10]=O,K[11]=j,K[12]=$,K[13]=v;else v=K[13];let V;if(K[14]!==G||K[15]!==v)V=MO.createElement(u,{marginTop:1,marginLeft:2,maxHeight:G},v),K[14]=G,K[15]=v,K[16]=V;else V=K[16];let E;if(K[17]!==O||K[18]!==$)E=($||O)&&MO.createElement(u,{marginTop:1},MO.createElement(k,{dimColor:!0},jA8,"/",Rh7," to scroll · Space, Enter, or Escape to dismiss")),K[17]=O,K[18]=$,K[19]=E;else E=K[19];let S;if(K[20]!==W||K[21]!==T||K[22]!==V||K[23]!==E)S=MO.createElement(u,{flexDirection:"column",paddingLeft:2,marginTop:1,tabIndex:0,autoFocus:!0,onKeyDown:W},T,V,E),K[20]=W,K[21]=T,K[22]=V,K[23]=E,K[24]=S;else S=K[24];return S}function $OY(q){return q+1}function AOY(q){let K=q.at(-1);if(K?.type==="assistant"&&K.message.stop_reason===null)return q.slice(0,-1);return q}async function OOY(q){let K=i2(AOY(q.messages)),_=X18();if(_)return{systemPrompt:_.systemPrompt,userContext:_.userContext,systemContext:_.systemContext,toolUseContext:q,forkContextMessages:K};let[z,Y,$]=await Promise.all([QP(q.options.tools,q.options.mainLoopModel,[],q.options.mcpClients),bO(),tw()]);return{systemPrompt:iK(z),userContext:Y,systemContext:$,toolUseContext:q,forkContextMessages:K}}async function wOY(q,K,_){let z=_?.trim();if(!z)return q("Usage: /btw <your question>",{display:"system"}),null;return b8((Y)=>({...Y,btwUseCount:Y.btwUseCount+1})),MO.createElement(YOY,{question:z,context:K,onDone:q})}var MO,j56,_OY=5,zOY=6,rGK=3;var aGK=y(()=>{q8();dV();xN();EC8();zz();rL();CU();jN();t4();Ag8();s6();B2();V1();y8();nv();i1();wg8();MO=O6(D6(),1),j56=O6(D6(),1)});var jOY,Hq7;var sGK=y(()=>{jOY={type:"local-jsx",name:"btw",description:"Ask a quick side question without interrupting the main conversation",immediate:!0,argumentHint:"<question>",load:()=>Promise.resolve().then(() => (aGK(),oGK))},Hq7=jOY});var tGK;var eGK=y(()=>{tGK={isEnabled:()=>!1,isHidden:!0,name:"stub"}});var qTK;var KTK=y(()=>{qTK={isEnabled:()=>!1,isHidden:!0,name:"stub"}});import{readFile as HOY,stat as JOY}from"fs/promises";function aa(q){let K=q;return K=K.replace(/"(sk-ant[^\s"']{24,})"/g,'"[REDACTED_API_KEY]"'),K=K.replace(/(?<![A-Za-z0-9"'])(sk-ant-?[A-Za-z0-9_-]{10,})(?![A-Za-z0-9"'])/g,"[REDACTED_API_KEY]"),K=K.replace(/AWS key: "(AWS[A-Z0-9]{20,})"/g,'AWS key: "[REDACTED_AWS_KEY]"'),K=K.replace(/(AKIA[A-Z0-9]{16})/g,"[REDACTED_AWS_KEY]"),K=K.replace(/(?<![A-Za-z0-9])(AIza[A-Za-z0-9_-]{35})(?![A-Za-z0-9])/g,"[REDACTED_GCP_KEY]"),K=K.replace(/(?<![A-Za-z0-9])([a-z0-9-]+@[a-z0-9-]+\.iam\.gserviceaccount\.com)(?![A-Za-z0-9])/g,"[REDACTED_GCP_SERVICE_ACCOUNT]"),K=K.replace(/(["']?x-api-key["']?\s*[:=]\s*["']?)[^"',\s)}\]]+/gi,"$1[REDACTED_API_KEY]"),K=K.replace(/(["']?authorization["']?\s*[:=]\s*["']?(bearer\s+)?)[^"',\s)}\]]+/gi,"$1[REDACTED_TOKEN]"),K=K.replace(/(AWS[_-][A-Za-z0-9_]+\s*[=:]\s*)["']?[^"',\s)}\]]+["']?/gi,"$1[REDACTED_AWS_VALUE]"),K=K.replace(/(GOOGLE[_-][A-Za-z0-9_]+\s*[=:]\s*)["']?[^"',\s)}\]]+["']?/gi,"$1[REDACTED_GCP_VALUE]"),K=K.replace(/((API[-_]?KEY|TOKEN|SECRET|PASSWORD)\s*[=:]\s*)["']?[^"',\s)}\]]+["']?/gi,"$1[REDACTED]"),K}function zTK(){return A_6().map((q)=>{let K={...q};if(K&&typeof K.error==="string")K.error=aa(K.error);return K})}async function XOY(){try{let q=Y$(),{size:K}=await JOY(q);if(K>$78)return N(`Skipping raw transcript read: file too large (${K} bytes)`,{level:"warn"}),null;return await HOY(q,"utf-8")}catch{return null}}function $TK({abortSignal:q,messages:K,initialDescription:_,onDone:z,backgroundTasks:Y={}}){let[$,A]=HR.useState("userInput"),[O,w]=HR.useState(0),[j,H]=HR.useState(_??""),[J,M]=HR.useState(null),[X,P]=HR.useState(null),[W,D]=HR.useState({isGit:!1,gitState:null}),[f,G]=HR.useState(null),Z=t1().columns-4;HR.useEffect(()=>{async function V(){let E=await YJ(),S=null;if(E)S=await u41();D({isGit:E,gitState:S})}V()},[]);let T=HR.useCallback(async()=>{A("submitting"),P(null),M(null);let V=zTK(),S=uP(K)?.requestId??null,[R,x]=await Promise.all([Xq7(),XOY()]),I=Mq7(Y),B={...R,...I},p={latestAssistantMessageId:S,message_count:K.length,datetime:new Date().toISOString(),description:j,platform:a1.platform,gitRepo:W.isGit,terminal:a1.terminal,version:{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.88",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION,transcript:bP(K),errors:V,lastApiRequest:Li8(),...Object.keys(B).length>0&&{subagentTranscripts:B},...x&&{rawTranscriptJsonl:x}},[C,g]=await Promise.all([DOY(p,q),WOY(j,q)]);if(G(g),C.success){if(C.feedbackId)M(C.feedbackId),d("tengu_bug_report_submitted",{feedback_id:C.feedbackId,last_assistant_message_id:S}),Tc6("tengu_bug_report_description",{feedback_id:C.feedbackId,description:aa(j)});A("done")}else{if(C.isZdrOrg)P("Feedback collection is not available for organizations with custom data retention policies.");else P("Could not submit feedback. Please try again later.");A("userInput")}},[j,W.isGit,K]),v=HR.useCallback(()=>{if($==="done"){if(X)z("Error submitting feedback / bug report",{display:"system"});else z("Feedback / bug report submitted",{display:"system"});return}z("Feedback / bug report cancelled",{display:"system"})},[$,X,z]);return P1("confirm:no",v,{context:"Settings",isActive:$==="userInput"}),k4((V,E)=>{if($==="done"){if(E.return&&f){let S=POY(J??"",f,j,zTK());m3(S)}if(X)z("Error submitting feedback / bug report",{display:"system"});else z("Feedback / bug report submitted",{display:"system"});return}if(X&&$!=="userInput"){z("Error submitting feedback / bug report",{display:"system"});return}if($==="consent"&&(E.return||V===" "))T()}),K4.createElement(R1,{title:"Submit Feedback / Bug Report",onCancel:v,isCancelActive:$!=="userInput",inputGuide:(V)=>V.pending?K4.createElement(k,null,"Press ",V.keyName," again to exit"):$==="userInput"?K4.createElement(I1,null,K4.createElement(t8,{shortcut:"Enter",action:"continue"}),K4.createElement(W1,{action:"confirm:no",context:"Confirmation",fallback:"Esc",description:"cancel"})):$==="consent"?K4.createElement(I1,null,K4.createElement(t8,{shortcut:"Enter",action:"submit"}),K4.createElement(W1,{action:"confirm:no",context:"Confirmation",fallback:"Esc",description:"cancel"})):null},$==="userInput"&&K4.createElement(u,{flexDirection:"column",gap:1},K4.createElement(k,null,"Describe the issue below:"),K4.createElement(r3,{value:j,onChange:(V)=>{if(H(V),X)P(null)},columns:Z,onSubmit:()=>A("consent"),onExitMessage:()=>z("Feedback cancelled",{display:"system"}),cursorOffset:O,onChangeCursorOffset:w,showCursor:!0}),X&&K4.createElement(u,{flexDirection:"column",gap:1},K4.createElement(k,{color:"error"},X),K4.createElement(k,{dimColor:!0},"Edit and press Enter to retry, or Esc to cancel"))),$==="consent"&&K4.createElement(u,{flexDirection:"column"},K4.createElement(k,null,"This report will include:"),K4.createElement(u,{marginLeft:2,flexDirection:"column"},K4.createElement(k,null,"- Your feedback / bug description:"," ",K4.createElement(k,{dimColor:!0},j)),K4.createElement(k,null,"- Environment info:"," ",K4.createElement(k,{dimColor:!0},a1.platform,", ",a1.terminal,", v",{ISSUES_EXPLAINER:"report the issue at https://github.com/anthropics/claude-code/issues",PACKAGE_URL:"@anthropic-ai/claude-code",README_URL:"https://code.claude.com/docs/en/overview",VERSION:"2.1.88",FEEDBACK_CHANNEL:"https://github.com/anthropics/claude-code/issues",BUILD_TIME:"2026-03-30T21:59:52Z"}.VERSION)),W.gitState&&K4.createElement(k,null,"- Git repo metadata:"," ",K4.createElement(k,{dimColor:!0},W.gitState.branchName,W.gitState.commitHash?`, ${W.gitState.commitHash.slice(0,7)}`:"",W.gitState.remoteUrl?` @ ${W.gitState.remoteUrl}`:"",!W.gitState.isHeadOnRemote&&", not synced",!W.gitState.isClean&&", has local changes")),K4.createElement(k,null,"- Current session transcript")),K4.createElement(u,{marginTop:1},K4.createElement(k,{wrap:"wrap",dimColor:!0},"We will use your feedback to debug related issues or to improve"," ","Claude Code's functionality (eg. to reduce the risk of bugs occurring in the future).")),K4.createElement(u,{marginTop:1},K4.createElement(k,null,"Press ",K4.createElement(k,{bold:!0},"Enter")," to confirm and submit."))),$==="submitting"&&K4.createElement(u,{flexDirection:"row",gap:1},K4.createElement(k,null,"Submitting report…")),$==="done"&&K4.createElement(u,{flexDirection:"column"},X?K4.createElement(k,{color:"error"},X):K4.createElement(k,{color:"success"},"Thank you for your report!"),J&&K4.createElement(k,{dimColor:!0},"Feedback ID: ",J),K4.createElement(u,{marginTop:1},K4.createElement(k,null,"Press "),K4.createElement(k,{bold:!0},"Enter "),K4.createElement(k,null,"to open your browser and draft a GitHub issue, or any other key to close."))))}function POY(q,K,_,z){let Y=aa(K),A=`**Bug Description** |
| 5260 | `)[0]||"";if(K.length<=60&&K.length>5)return K;let _=K.slice(0,60);if(K.length>60){let z=_.lastIndexOf(" ");if(z>30)_=_.slice(0,z);_+="..."}return _.length<10?"Bug Report":_}function jg8(q){if(q instanceof Error){let K=Error(aa(q.message));if(q.stack)K.stack=aa(q.stack);H6(K)}else{let K=aa(String(q));H6(Error(K))}}async function DOY(q,K){if(iA())return{success:!1};try{await k$();let _=DJ();if(_.error)return{success:!1};let z={"Content-Type":"application/json","User-Agent":hS(),..._.headers},Y=await $1.post("https://api.anthropic.com/api/claude_cli_feedback",{content:g6(q)},{headers:z,timeout:30000,signal:K});if(Y.status===200){let $=Y.data;if($?.feedback_id)return{success:!0,feedbackId:$.feedback_id};return jg8(Error("Failed to submit feedback: request did not return feedback_id")),{success:!1}}return jg8(Error("Failed to submit feedback:"+Y.status)),{success:!1}}catch(_){if($1.isCancel(_))return{success:!1};if($1.isAxiosError(_)&&_.response?.status===403){let z=_.response.data;if(z?.error?.type==="permission_error"&&z?.error?.message?.includes("Custom data retention settings"))return jg8(Error("Cannot submit feedback because custom data retention settings are enabled")),{success:!1,isZdrOrg:!0}}return jg8(_),{success:!1}}}var K4,HR,_TK=7250,MOY="https://github.com/anthropics/claude-code/issues";var Jq7=y(()=>{CK();v8();Hi();k8();i1();t4();s6();Oq();ew();SC();G7();hH();_8();y_();E5();jG();E8();_K();l8();a5();QK();e4();rK();CH();K4=O6(D6(),1),HR=O6(D6(),1)});var OTK={};T8(OTK,{renderFeedbackComponent:()=>ATK,call:()=>fOY});function ATK(q,K,_,z="",Y={}){return Pq7.createElement($TK,{abortSignal:K,messages:_,initialDescription:z,onDone:q,backgroundTasks:Y})}async function fOY(q,K,_){let z=_||"";return ATK(q,K.abortController.signal,K.messages,z)}var Pq7;var wTK=y(()=>{Jq7();Pq7=O6(D6(),1)});var ZOY,Wq7;var jTK=y(()=>{ZD();m8();ZOY={aliases:["bug"],type:"local-jsx",name:"feedback",description:"Submit feedback about Claude Code",argumentHint:"[report]",isEnabled:()=>!(i6(process.env.CLAUDE_CODE_USE_BEDROCK)||i6(process.env.CLAUDE_CODE_USE_VERTEX)||i6(process.env.CLAUDE_CODE_USE_FOUNDRY)||i6(process.env.DISABLE_FEEDBACK_COMMAND)||i6(process.env.DISABLE_BUG_COMMAND)||iA()||!1||!OO("allow_product_feedback")),load:()=>Promise.resolve().then(() => (wTK(),OTK))},Wq7=ZOY});class Dq7{paths=[];lowerPaths=[];charBits=new Int32Array(0);pathLens=new Uint16Array(0);topLevelCache=null;readyCount=0;loadFromFileList(q){let K=new Set,_=[];for(let z of q)if(z.length>0&&!K.has(z))K.add(z),_.push(z);this.buildIndex(_)}loadFromFileListAsync(q){let K=()=>{},_=new Promise((Y)=>{K=Y}),z=this.buildAsync(q,K);return{queryable:_,done:z}}async buildAsync(q,K){let _=new Set,z=[],Y=performance.now();for(let A=0;A<q.length;A++){let O=q[A];if(O.length>0&&!_.has(O))_.add(O),z.push(O);if((A&255)===255&&performance.now()-Y>4)await Jg8(),Y=performance.now()}this.resetArrays(z),Y=performance.now();let $=!0;for(let A=0;A<z.length;A++)if(this.indexPath(A),(A&255)===255&&performance.now()-Y>4){if(this.readyCount=A+1,$)K(),$=!1;await Jg8(),Y=performance.now()}this.readyCount=z.length,K()}buildIndex(q){this.resetArrays(q);for(let K=0;K<q.length;K++)this.indexPath(K);this.readyCount=q.length}resetArrays(q){let K=q.length;this.paths=q,this.lowerPaths=Array(K),this.charBits=new Int32Array(K),this.pathLens=new Uint16Array(K),this.readyCount=0,this.topLevelCache=kOY(q,100)}indexPath(q){let K=this.paths[q].toLowerCase();this.lowerPaths[q]=K;let _=K.length;this.pathLens[q]=_;let z=0;for(let Y=0;Y<_;Y++){let $=K.charCodeAt(Y);if($>=97&&$<=122)z|=1<<$-97}this.charBits[q]=z}search(q,K){if(K<=0)return[];if(q.length===0){if(this.topLevelCache)return this.topLevelCache.slice(0,K);return[]}let _=q!==q.toLowerCase(),z=_?q:q.toLowerCase(),Y=Math.min(z.length,64),$=Array(Y),A=0;for(let G=0;G<Y;G++){let Z=z.charAt(G);$[G]=Z;let T=Z.charCodeAt(0);if(T>=97&&T<=122)A|=1<<T-97}let O=Y*24+8+32,w=[],j=-1/0,{paths:H,lowerPaths:J,charBits:M,pathLens:X,readyCount:P}=this;q:for(let G=0;G<P;G++){if((M[G]&A)!==A)continue;let Z=_?H[G]:J[G],T=Z.indexOf($[0]);if(T===-1)continue;Hg8[0]=T;let v=0,V=0,E=T;for(let I=1;I<Y;I++){if(T=Z.indexOf($[I],E+1),T===-1)continue q;Hg8[I]=T;let B=T-E-1;if(B===0)V+=4;else v+=3+B*1;E=T}if(w.length===K&&O+V-v<=j)continue;let S=H[G],R=X[G],x=Y*16+V-v;x+=HTK(S,Hg8[0],!0);for(let I=1;I<Y;I++)x+=HTK(S,Hg8[I],!1);if(x+=Math.max(0,32-(R>>2)),w.length<K){if(w.push({path:S,fuzzScore:x}),w.length===K)w.sort((I,B)=>I.fuzzScore-B.fuzzScore),j=w[0].fuzzScore}else if(x>j){let I=0,B=w.length;while(I<B){let p=I+B>>1;if(w[p].fuzzScore<x)I=p+1;else B=p}w.splice(I,0,{path:S,fuzzScore:x}),w.shift(),j=w[0].fuzzScore}}w.sort((G,Z)=>Z.fuzzScore-G.fuzzScore);let W=w.length,D=Math.max(W,1),f=Array(W);for(let G=0;G<W;G++){let Z=w[G].path,T=G/D,v=Z.includes("test")?Math.min(T*1.05,1):T;f[G]={path:Z,score:v}}return f}}function HTK(q,K,_){if(K===0)return _?8:0;let z=q.charCodeAt(K-1);if(GOY(z))return 8;if(TOY(z)&&vOY(q.charCodeAt(K)))return 6;return 0}function GOY(q){return q===47||q===92||q===45||q===95||q===46||q===32}function TOY(q){return q>=97&&q<=122}function vOY(q){return q>=65&&q<=90}function Jg8(){return new Promise((q)=>setImmediate(q))}function kOY(q,K){let _=new Set;for(let Y of q){let $=Y.length;for(let O=0;O<Y.length;O++){let w=Y.charCodeAt(O);if(w===47||w===92){$=O;break}}let A=Y.slice(0,$);if(A.length>0){if(_.add(A),_.size>=K)break}}let z=Array.from(_);return z.sort((Y,$)=>{let A=Y.length-$.length;if(A!==0)return A;return Y<$?-1:Y>$?1:0}),z.slice(0,K).map((Y)=>({path:Y,score:0}))}var JTK=4,Hg8;var MTK=y(()=>{Hg8=new Int32Array(64)});import{statSync as VOY}from"fs";import*as YT from"path";function fq7(){if(!sa)sa=new Dq7;return sa}function fTK(){sa=null,Ih6=null,uh6++,Mg8=null,A78=[],Eq7=[],Lq7=[],yq7.clear(),Zq7=null,Gq7=null,Tq7=0,vq7=null,kq7=null,Xg8=null}function ZTK(q){let K=q.length,_=Math.max(1,Math.floor(K/500)),z=-2128831035;for(let Y=0;Y<K;Y+=_){let $=q[Y];for(let A=0;A<$.length;A++)z=(z^$.charCodeAt(A))*16777619|0;z=z*16777619|0}if(K>0){let Y=q[K-1];for(let $=0;$<Y.length;$++)z=(z^Y.charCodeAt($))*16777619|0}return`${K}:${(z>>>0).toString(16)}`}function NOY(){let q=hY(Z8());if(!q)return null;try{return VOY(YT.join(q,".git","index")).mtimeMs}catch{return null}}function XTK(q,K,_){if(_===K)return q;return q.map((z)=>{let Y=YT.join(K,z);return YT.relative(_,Y)})}async function yOY(q){if(q.length===0)return;if(!sa||A78.length===0)return;let K=await GTK(q),_=[...A78,...Eq7,...Lq7,...q,...K],z=ZTK(_);if(z===Xg8){N("[FileIndex] skipped index rebuild — merged paths unchanged");return}await sa.loadFromFileListAsync(_).done,Xg8=z,N(`[FileIndex] rebuilt index with ${A78.length} tracked + ${q.length} untracked files`)}async function PTK(q,K){let _=`${q}:${K}`;if(Gq7===_)return Zq7;let z=X8(),Y=[".ignore",".rgignore"],$=[...new Set([q,K])],A=WTK.default(),O=!1,w=$.flatMap((J)=>Y.map((M)=>YT.join(J,M))),j=await Promise.all(w.map((J)=>z.readFile(J,{encoding:"utf8"}).catch(()=>null)));for(let[J,M]of j.entries()){if(M===null)continue;A.add(M),O=!0,N(`[FileIndex] loaded ignore patterns from ${w[J]}`)}let H=O?A:null;return Zq7=H,Gq7=_,H}async function EOY(q,K){let _=Date.now();N("[FileIndex] getFilesUsingGit called");let z=hY(Z8());if(!z)return N("[FileIndex] not a git repo, returning null"),null;try{let Y=Z8(),$=Date.now(),A=await S7(L7(),["-c","core.quotepath=false","ls-files","--recurse-submodules"],{timeout:5000,abortSignal:q,cwd:z});if(N(`[FileIndex] git ls-files (tracked) took ${Date.now()-$}ms`),A.code!==0)return N(`[FileIndex] git ls-files failed (code=${A.code}, stderr=${A.stderr}), falling back to ripgrep`),null;let O=A.stdout.trim().split(` |