[BUG] Claude Code Resume Not Working
Resolved 💬 8 comments Opened Apr 25, 2026 by gtsado Closed Apr 27, 2026
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
claude --resume crashes with F1H is not a function on multiple sessions (v2.1.120)
What Should Happen?
Claude should allow me to resume previously worked on sessions
Error Messages/Logs
ERROR F1H is not a function. (In 'F1H(q)', 'F1H' is undefined)
/$bunfs/root/src/entrypoints/cli.js:9251:5663
9248: ${q.join(`
9249:
9250 `)}`}var PZ7,fvq=1000,JZ7=300,XZ7=5000;var UC_=E(()=>{J6();v6();Vp();Ob();Lvq();_6();Hk();PZ7=(ZmH(),S_(EmH))});var Yvq={};j6(Yvq,{useScheduledTasks:()=>GZ7});function
: GZ7({isLoading:H,assistantMode:_,setMessages:A}){let q=nz8.useRef(H);q.current=H;let K=UK(),L=B_(),f=WY();nz8.useEffect(()=>{if(!Z0()||R_())return;let
M=(D)=>y5({value:WZ7.resolveLoopDefaultFire(D),mode:"prompt",priority:"later",isMeta:!0,workload:hSH}),$=void 0,O=pC_({onFire:M,onFireTask:(D)=>{if(D.agentId){let
Y=nr(D.agentId,K.getState().tasks);if(Y&&!HS(Y.status)){KmH(Y.id,D.prompt,f);return}N(`[ScheduledTasks] teammate ${D.agentId} gone, removing orphaned cron ${D.id}`),i6H([D.id]);return}let
z=hU9(D.kind==="loop"?`Claude resuming /loop wakeup (${zvq(new Date)})`:`Running scheduled task (${zvq(new
Date)})`);A((Y)=>[...Y,z]),M(D.prompt)},isLoading:()=>q.current,assistantMode:_,getJitterConfig:s7H,isKilled:()=>!Z0(),getExtraTasks:Dvq&&$?()=>Dvq.getRoutineCronTasks(TL(),$):void
0});return O.start(),()=>{O.stop()}},[_,A,K.getState,f])}function zvq(H){return H.toLocaleString("en-US",{month:"short",day:"numeric",hour:"numeric",minute:"2-digit"}).replace(/,? at |, /,"
").replace(/ ([AP]M)/,(_,A)=>A.toLowerCase())}var nz8,WZ7,Dvq=null;var wvq=E(()=>{SS();J6();y_();mE();AS();zb();Rq6();UC_();Ob();_6();d3();z_();ALH();nz8=x(PH(),1),WZ7=(ZmH(),S_(EmH))});var
Wvq={};j6(Wvq,{REPL:()=>gC_});function jvq(H){let _=iz8.c(14),{showAllInTranscript:A,virtualScroll:q,searchBadge:K,suppressShowAll:L,status:f}=H,M=L===void
0?!1:L,$=P4("app:toggleTranscript","Global","ctrl+o"),O=P4("transcript:toggleShowAll","Transcript","ctrl+e"),D;if(_[0]===Symbol.for("react.memo_cache_sentinel"))D=xQ9(),_[0]=D;else
D=_[0];let z=D,Y=z?`open in ${z}`:"open in editor",w;if(_[1]===Symbol.for("react.memo_cache_sentinel"))w=L8.createElement(L8.Fragment,null,"Showing detailed transcript"),_[1]=w;else
w=_[1];let j;if(_[2]!==$)j=L8.createElement(L8.Fragment,null,$," to toggle"),_[2]=$,_[3]=j;else j=_[3];let P=K?"n/N to navigate":q?`${K6.arrowUp}${K6.arrowDown} scroll \xB7 [ to print output
\xB7 v to ${Y}`:M?`v to ${Y}`:`${O} to ${A?"collapse":"show all"}`,J;if(_[4]!==j||_[5]!==P)J=L8.createElement(v,{dimColor:!0},L8.createElement(t6,null,w,j,P)),_[4]=j,_[5]=P,_[6]=J;else
J=_[6];let X;if(_[7]===Symbol.for("react.memo_cache_sentinel"))X=L8.createElement(p,{flexGrow:1}),_[7]=X;else X=_[7];let
G;if(_[8]!==K||_[9]!==f)G=L8.createElement(SZ7,{status:f,searchBadge:K}),_[8]=K,_[9]=f,_[10]=G;else G=_[10];let W;if(_[11]!==J||_[12]!==G)W=L8.createElement(p,{noSelect:!0,alignItems:"center
",alignSelf:"center",borderTopDimColor:!0,borderBottom:!1,borderLeft:!1,borderRight:!1,borderStyle:"single",marginTop:1,paddingLeft:2,width:"100%"},J,X,G),_[11]=J,_[12]=G,_[13]=W;else
W=_[13];return W}function SZ7(H){let _=iz8.c(6),{status:A,searchBadge:q}=H;if(A){let L;if(_[0]!==A)L=L8.createElement(v,null,A," "),_[0]=A,_[1]=L;else L=_[1];return L}if(q){let
L;if(_[2]!==q.count||_[3]!==q.current)L=L8.createElement(v,{dimColor:!0},q.current,"/",q.count," "),_[2]=q.count,_[3]=q.current,_[4]=L;else L=_[4];return L}let
K;if(_[5]===Symbol.for("react.memo_cache_sentinel"))K=L8.createElement(v,{dimColor:!0},"verbose "),_[5]=K;else K=_[5];return K}function
RZ7({jumpRef:H,count:_,current:A,onClose:q,onCancel:K,setHighlight:L,initialQuery:f}){let{query:M,cursorOffset:$,handleKeyDown:O,handlePaste:D}=MT({isActive:!0,initialQuery:f,onExit:()=>q(M)
,onCancel:K}),[z,Y]=s6.useState("building");s6.useEffect(()=>{let J=!0,X=H.current?.warmSearchIndex;if(!X){Y(null);return}return
Y("building"),X().then((G)=>{if(!J)return;if(G<20)Y(null);else Y({ms:G}),setTimeout(()=>J&&Y(null),2000)}),()=>{J=!1}},[]);let
w=z!=="building";s6.useEffect(()=>{if(!w)return;H.current?.setSearchQuery(M),L(M)},[M,w]);let j=$,P=j<M.length?M[j]:" ";return
L8.createElement(p,{borderTopDimColor:!0,borderBottom:!1,borderLeft:!1,borderRight:!1,borderStyle:"single",marginTop:1,paddingLeft:2,tabIndex:0,autoFocus:!0,onKeyDown:O,onPaste:D,width:"100%
",noSelect:!0},L8.createElement(v,null,"/"),L8.createElement(v,null,M.slice(0,j)),L8.createElement(v,{inverse:!0},P),j<M.length&&L8.createElement(v,null,M.slice(j+1)),L8.createElement(p,{fle
xGrow:1}),z==="building"?L8.createElement(v,{dimColor:!0},"indexing\u2026 "):z?L8.createElement(v,{dimColor:!0},"indexed in ",z.ms,"ms "):_===0&&M?L8.createElement(v,{color:"error"},"no
matches "):_>0?L8.createElement(v,{dimColor:!0},A,"/",_," "):null)}function Jvq(H){let
_=iz8.c(6),{isAnimating:A,title:q,disabled:K,noPrefix:L}=H,f=u$(),[M,$]=s6.useState(0),O,D;if(_[0]!==K||_[1]!==A||_[2]!==L||_[3]!==f)O=()=>{if(K||L||!A||!f)return;let
Y=setInterval(bZ7,CZ7,$);return()=>clearInterval(Y)},D=[K,L,A,f],_[0]=K,_[1]=A,_[2]=L,_[3]=f,_[4]=O,_[5]=D;else O=_[4],D=_[5];s6.useEffect(O,D);let z=A?Xvq[M]??Pvq:Pvq;return
rLH(K?null:L?q:`${z} ${q}`),null}function bZ7(H){return H(uZ7)}function uZ7(H){return(H+1)%Xvq.length}function
gC_({commands:H,debug:_,initialTools:A,initialMessages:q,pendingHookMessages:K,initialFileHistorySnapshots:L,initialContentReplacements:f,initialAgentName:M,initialAgentColor:$,mcpClients:O,
dynamicMcpConfig:D,autoConnectIdeFlag:z,strictMcpConfig:Y=!1,systemPrompt:w,appendSystemPrompt:j,onBeforeQuery:P,onTurnComplete:J,disabled:X=!1,mainThreadAgentDefinition:G,disableSlashComman
ds:W=!1,remoteSessionConfig:T,directConnectConfig:Z,sshSession:I,thinkingConfig:V}){let y=!!T,R=s6.useMemo(()=>yH(process.env.CLAUDE_CODE_DISABLE_TERMINAL_TITLE),[]),h=s6.useMemo(()=>!1,[]),
C=s6.useMemo(()=>yH(process.env.CLAUDE_CODE_DISABLE_VIRTUAL_SCROLL),[]),U=!1;s6.useEffect(()=>{return N(`[REPL:mount] REPL mounted, disabled=${X}`),()=>N("[REPL:unmount] REPL unmounting")},[
X]);let[u,S]=s6.useState(G),B=Y6((w6)=>w6.toolPermissionContext),F=Y6((w6)=>w6.verbose),g=Y6((w6)=>w6.mcp),d=Y6((w6)=>w6.plugins),i=Y6((w6)=>w6.agentDefinitions),n=Y6((w6)=>w6.initialMessage
),o=Ss(),_H=Y6((w6)=>w6.expandedView)==="tasks",r=Y6((w6)=>w6.pendingWorkerRequest),HH=Y6((w6)=>w6.pendingSandboxRequest),t=Y6((w6)=>w6.teamContext),MH=Y6((w6)=>w6.tasks),$H=Y6((w6)=>w6.work
erSandboxPermissions),jH=Y6((w6)=>w6.elicitation),s=Y6((w6)=>w6.ultraplanPendingChoice),a=Y6((w6)=>w6.ultraplanLaunchPending),qH=Y6((w6)=>w6.viewingAgentTaskId),e=B_(),fH=qH?MH[qH]:void
0,KH=uj(fH)&&fH.retain&&!fH.diskLoaded;s6.useEffect(()=>{if(!qH||!KH)return;let w6=qH;Z5H(h5(w6)).then((r6)=>{e((K8)=>{let HA=K8.tasks[w6];if(!uj(HA)||HA.diskLoaded||!HA.retain)return K8;let
NA=HA.messages??[],O1=new
Set(NA.map((l1)=>l1.uuid)),A1=r6?r6.messages.filter((l1)=>!O1.has(l1.uuid)):[];return{...K8,tasks:{...K8.tasks,[w6]:{...HA,messages:[...A1,...NA],diskLoaded:!0}}}})})},[qH,KH,e]);let
zH=UK(),OH=s6.useMemo(()=>LN(()=>zH.getState(),e),[zH,e]),JH=s6.useMemo(()=>rTH(()=>zH.getState(),e),[zH,e]),wH=Vi(),TH=TY(),[vH,WH]=s6.useState(H);TGq(y?void 0:TL(),WH);let
ZH=Y6((w6)=>w6.isBriefOnly),RH=s6.useMemo(()=>t0(B),[B,ZH]);qj9(),Kj9();let[UH,sH]=s6.useState(D),cH=s6.useCallback((w6)=>{sH(w6)},[sH]),[M6,O6]=s6.useState("prompt"),[EH,CH]=s6.useState(!1)
,[mH,uH]=s6.useState(!1),[aH,rH]=s6.useState(""),nH=s6.useRef(0),QH=s6.useRef(void
0),tH=s6.useRef(!1),{addNotification:Z6,removeNotification:U6}=L9(),H8=kZ7,c6=JGq(O,g.clients),[iH,x6]=s6.useState(void 0),[BH,L6]=s6.useState(null),[IH,oH]=s6.useState(null),[D6,W6]=s6.useS
tate(!1),[LH,YH]=s6.useState(()=>{return!1}),xH=Y6((w6)=>w6.showRemoteCallout),[bH,eH]=s6.useState(()=>ETq());LZq(),MZq(),AZq({ideSelection:iH,mcpClients:c6,ideInstallationStatus:IH}),rTq({m
cpClients:c6}),aTq(),kEq(),hEq(),G78(),FEq(TH),WZq(),EZq(),cEq(TH),lEq(),eEq(),oEq(),IZ7(),e0q(),DTq(),PTq(),eTq(),YZq();let{recommendation:SH,handleResponse:E6}=wEq(),{recommendation:z6,han
dleResponse:Q6}=GEq(),{pending:B6,handleAction:l8,skipForSession:N8}=vZ7(),F_=s6.useMemo(()=>{return[...RH,...A]},[RH,A]);Lz8({enabled:!y}),kGq({enabled:!y});let
f_=CO9();s6.useEffect(()=>{if(y)return;uEq(e)},[e,y]),s6.useEffect(()=>{let
w6=setTimeout(iZq,500);return()=>clearTimeout(w6)},[]),WTq(y?FC_:c6,B.mode),s6.useEffect(()=>{XN_(B.mode)},[B.mode]),VWq(e,q,{enabled:!y});let
DA=n58(F_,g.tools,B),{tools:L1,allowedAgentTypes:F8}=s6.useMemo(()=>{if(!u)return{tools:DA,allowedAgentTypes:void 0};let
w6=Ic(u,DA,!1,!0);return{tools:w6.resolvedTools,allowedAgentTypes:w6.allowedAgentTypes}},[u,DA]),j_=s6.useRef(L1);j_.current=L1;let h1=s6.useMemo(()=>{if(!Dj())return L1;let w6=new
Set(L1.map((K8)=>K8.name)),r6=nMH().filter((K8)=>!w6.has(K8.name));return r6.length>0?[...L1,...r6]:L1},[L1]),p1=nR_(vH,d.commands),Rq=nR_(p1,g.commands),g_=s6.useMemo(()=>W?[]:Rq,[W,Rq]);VY
q(y?FC_:g.clients),RGq(y?FC_:g.clients,x6);let[zK,YK]=s6.useState([]),[U4,lL]=s6.useState(null);s6.useEffect(()=>{if(U4&&!U4.isStreaming&&U4.streamingEndedAt){let
r6=30000-(Date.now()-U4.streamingEndedAt);if(r6>0){let K8=setTimeout(lL,r6,null);return()=>clearTimeout(K8)}else
lL(null)}},[U4]);let[Mq,mf]=s6.useState(null),B4=s6.useRef(null);B4.current=Mq;let
Sz=s6.useRef(null),xY=s6.useRef(()=>{}),KL=s6.useRef(()=>{}),V3=s6.useRef(null),ej=s6.useRef(null),mY=s6.useRef(0),Yf=s6.useRef(new
Eh_).current,MM=s6.useSyncExternalStore(Yf.subscribe,Yf.getSnapshot),[L7,hL]=s6.useState(T?.hasInitialPrompt??!1),U9=MM||L7,[wf,A4]=s6.useState(void 0),V7=s6.useRef(0),q4=s6.useRef(!1),jf=s6
.useRef(0),f7=s6.useRef(0),s$=s6.useRef(null),cD=s6.useCallback(()=>{jf.current=Date.now(),f7.current=0,s$.current=null},[]),Uw=s6.useRef(!1);if(MM&&!Uw.current)cD();Uw.current=MM;let
QO=s6.useCallback((w6)=>{if(hL(w6),w6)cD()},[cD]),t$=s6.useRef(null),Rz=s6.useRef(void 0),M$=s6.useRef(void 0),HP=1500,[Pf,z5]=s6.useState(!1);s6.useEffect(()=>{if(oA())IO1().then((w6)=>{if(
w6)Z6({key:"tmux-mouse-hint",text:w6,priority:"low"})});VO1().then((w6)=>{if(w6)Z6({key:"tmux-focus-hint",text:w6,priority:"low"})})},[]);let[QD,Bw]=s6.useState(!1);s6.useEffect(()=>{},[]);l
et[X8,jA]=s6.useState(null),W1=s6.useRef(null),o1=s6.useCallback((w6)=>{if(w6?.isLocalJSXCommand){let{clearLocalJSX:r6,...K8}=w6;W1.current={...K8,isLocalJSXCommand:!0},jA(K8);return}if(W1.c
urrent){if(w6?.clearLocalJSX){W1.current=null,jA(null);return}return}if(w6?.clearLocalJSX){jA(null);return}jA(w6)},[]),[a1,LL]=s6.useState(()=>new Map),s4=s6.useCallback((w6)=>{LL((r6)=>f0q(
r6,w6))},[]),[kq,dA]=s6.useState([]),G1=s6.useMemo(()=>Qzq(dA),[dA]),[bK,KK]=s6.useState(null),[Q1,pf]=s6.useState([]),[nK,k$]=s6.useState([]),pY=s6.useRef(new
Map),Fw=Y6((w6)=>w6.settings.terminalTitleFromRename)!==!1,i7=s6.useSyncExternalStore(PN_,()=>Fw?jz(k6()):void 0);s6.useEffect(()=>{return wN_(()=>{let
w6=kQH();if(!w6)return;e((r6)=>{if(r6.standaloneAgentContext?.name===w6)return
r6;return{...r6,standaloneAgentContext:{...r6.standaloneAgentContext,name:w6}}})})},[e]);let[M9,gw]=s6.useState(),Cz=s6.useRef((q?.length??0)>0),LW=u?.agentType,K4=i7??LW??M9??"Claude
Code",r7=kq.length>0||nK.length>0||r||HH,k7=X8?.isLocalJSXCommand===!0&&X8?.jsx!=null,bz=s6.useMemo(()=>lq8(MH),[MH]),_P=r7||k7?"waiting":U9||bz?"busy":"idle",lO=s6.useMemo(()=>UMq(MH),[MH])
,AP=_P==="idle"&&lO?"busy":_P,Jf=_P==="busy";s6.useEffect(()=>{if(_P==="busy")return yzq(),()=>hzq()},[_P]);let Y5=_P!=="waiting"?void 0:kq.length>0?`approve ${kq[0].tool.name}`:r?"worker
request":HH?"sandbox request":k7?"dialog open":"input needed";s6.useEffect(()=>{UR6({status:AP,waitingFor:Y5})},[AP,Y5]);let
nO=yqq(MH),I1=vQ6();s6.useEffect(()=>{Vh9({tasks:nO.count,queued:I1,kinds:nO.kinds})},[nO.count,I1,nO.kinds.join(",")]);let
k3=h6("tengu_terminal_sidebar",!1)&&(y6().showStatusInTerminalTab??!1),Lx=Y6((w6)=>w6.postTurnSummary?.status_detail);Rg6(R||!k3?null:_P,Lx),s6.useEffect(()=>{return
zZ1(G1),()=>YZ1()},[G1]);let[SK,sN]=s6.useState(q??[]),M7=s6.useRef(SK),VT=s6.useRef(!1),B9=s6.useCallback((w6)=>{let r6=M7.current,K8=typeof
w6==="function"?w6(M7.current):w6;if(M7.current=K8,K8.length<V7.current)V7.current=0,q4.current=!1,A4(void 0);else if(K8.length>r6.length&&q4.current){let
HA=K8.length-r6.length;if((r6.length===0||K8[0]===r6[0]?K8.slice(-HA):K8.slice(0,HA)).some($L6))q4.current=!1;else
V7.current=K8.length}sN(K8)},[]),B5=s6.useCallback((w6)=>B9((r6)=>_z8(r6,w6)),[B9]);$Tq(s6.useCallback((w6)=>B9((r6)=>[...r6,A8({content:yf8(w6),isMeta:!0})]),[B9]));let
NX=s6.useCallback((w6)=>{if(w6!==void 0)V7.current=M7.current.length,q4.current=!0;else q4.current=!1;A4(w6)},[]),{dividerIndex:yX,dividerYRef:fW,onScrollAway:bZ,onRepin:MV,jumpToNew:gs,shif
tDivider:lD}=Re9(SK.length);KTq(SK,B9,U9,mY,!y);let[kT,FH]=s6.useState(null),lH=s6.useRef(kT);lH.current=kT;let
o6=s6.useRef(null),H6=s6.useMemo(()=>Ce9(SK,yX),[yX,SK.length]),F6=s6.useCallback((w6=!1,r6="?")=>{if(!w6&&!u7("autoScrollEnabled",!0).value)return;let
K8=V3.current;if(K8&&!K8.isSticky())N(`repinScroll(${r6}, force=${w6}): yanking from scrollTop=${K8.getScrollTop()}
(max=${Math.max(0,K8.getScrollHeight()-K8.getViewportHeight())})`);if(K8?.scrollToBottom(),MV(),lH.current!==null)FH(null)},[MV]),y8=SK.at(-1),T8=y8!=null&&$L6(y8);s6.useEffect(()=>{if(T8)F6
(!1,"lastMsgIsHuman")},[T8,y8,F6]);let{maybeLoadOlder:b_}=yZ7,s_=s6.useCallback((w6,r6)=>{if(mY.current=Date.now(),w6)MV();else
bZ(r6)},[MV,bZ,b_]),I9=OWq(K,B9),[$7,F4]=s6.useState(null);s6.useState(()=>{return DA8(ir8()),null});let
D9=s6.useRef(OA8()),iK=aj9(),n9=s6.useCallback(()=>z5(!1),[]),vK=yi(n9,HP),BM=s6.useRef(null),GL=s6.useCallback((w6)=>{if(H8(D9.current,w6))return;if(D9.current===""&&w6!==""&&Date.now()-mY.
current>=hZ7)F6(!1,"typedIntoEmpty");D9.current=w6,DA8(w6),Y_H.recordUserActivity(),vDH(!0);let r6=w6.trim().length>0;if(z5(r6),r6)vK();else
vK.cancel()},[z5,F6,H8,vK]),[$M,nD]=s6.useState("prompt"),[qP,tN]=s6.useState(),uz=s6.useCallback((w6)=>{let r6=new
Set(w6.slash_commands);WH((K8)=>K8.filter((HA)=>r6.has(HA.name)||ak_.has(HA))),e((K8)=>K8.mainLoopModel===w6.model?K8:{...K8,mainLoopModel:w6.model})},[WH,e]),[NT,$V]=s6.useState(new
Set),JR=s6.useCallback((w6)=>{$V((r6)=>{switch(w6.action){case"add":{let K8=new Set(r6);for(let HA of w6.ids)K8.add(HA);return K8}case"remove":{let K8=new Set(r6);for(let HA of
w6.ids)K8.delete(HA);return K8.size===r6.size?r6:K8}case"clear":return r6.size>0?new
Set:r6}})},[]),hX=s6.useRef(!1),yT=s6.useRef(0),eN=s6.useRef([]),RB=s6.useRef(0),BQ=s6.useCallback((w6)=>{yT.current+=w6;let r6=eN.current;if(w6>0&&r6.length>0){let K8=r6.at(-1);if(K8.output
Tokens==null)K8.lastTokenTime=Date.now(),K8.endResponseLength=yT.current}},[]),TZH=s6.useCallback(()=>{yT.current=0},[]),x1H=s6.useCallback((w6)=>{if(w6.type==="start"){let
r6=Date.now(),K8=yT.current;eN.current.push({id:w6.id,ttftMs:w6.ttftMs,firstTokenTime:r6,lastTokenTime:r6,responseLengthBaseline:K8,endResponseLength:K8})}else{let
r6=w6.id!=null?eN.current.find((K8)=>K8.id===w6.id):eN.current.findLast((K8)=>K8.id==null);if(r6){if(r6.outputTokens=w6.outputTokens,r6.lastTokenTime=Date.now(),w6.id==null)yT.current=Math.m
ax(yT.current,r6.responseLengthBaseline+w6.outputTokens*4)}}},[]),CB=h2q({config:T,setMessages:B9,setIsLoading:QO,onInit:uz,setToolUseConfirmQueue:G1,tools:F_,setStreamingToolUses:YK,setStre
amMode:JM6,setInProgressToolUseIDs:JR,recordApiMetricsEvent:x1H,permissionMode:B.mode}),ds=b2q({config:Z,setMessages:B9,setIsLoading:QO,setToolUseConfirmQueue:G1,tools:F_,permissionMode:B.mo
de}),bB=m2q({session:I,setMessages:B9,setIsLoading:QO,setToolUseConfirmQueue:G1,tools:F_,permissionMode:B.mode}),KP=s6.useMemo(()=>bB.isRemoteMode?OL8("ssh",bB,!1):ds.isRemoteMode?OL8("direc
t",ds,!1):CB.isRemoteMode?OL8("ccr",CB,T?.viewerOnly??!1,T?.sessionId):KG_,[bB,ds,CB,T?.viewerOnly,T?.sessionId]);s6.useEffect(()=>{let w6=KP.isRemoteMode?KP:null,r6=KP.isRemoteMode&&KP.kind
==="ccr"?"ccr-api":"local-jsonl",K8=uDH();if(K8.remote!==w6||K8.transcriptSource!==r6)DP8({...K8,remote:w6,transcriptSource:r6})},[KP]);let[Uf,YJ]=s6.useState({}),[XR,m1H]=s6.useState(0),[WR
,uZ]=s6.useState(null),FQ=!(Y6((w6)=>w6.settings.prefersReducedMotion)??!1)&&!Jj1(),GR=s6.useCallback((w6)=>{if(!FQ)return;uZ(w6)},[FQ]),vG=WR&&FQ?WR.substring(0,WR.lastIndexOf(`
9251 `)+1)||null:null,[xZ,cs]=s6.useState(0),[Qs,fx]=s6.useState(!1),[QOH,ls]=s6.useState(void
: 0),[ns,p1H]=s6.useState(!1),[lOH,OV]=s6.useState(xOH.randomUUID()),[uB,IG]=s6.useState(null),gQ=s6.useCallback((w6)=>{let
r6=vzq(w6,Tj);if(r6)IG(r6)},[]),U1H=s6.useRef(xZ);U1H.current=xZ;let[is]=s6.useState(()=>({current:Oy1(q,f)})),[xB]=s6.useState(()=>({current:Ic1(q??[])})),[dQ,LP]=s6.useState(y6().hasAcknow
ledgedCostThreshold),[cQ,wJ]=s6.useState(!1),[N6,i8]=s6.useState(!1),JA=s6.useRef("INSERT");s6.useEffect(()=>{if(s&&cQ)wJ(!1)},[s,cQ]);let
wK=u$(),LK=s6.useRef(wK);LK.current=wK;let[L4]=Y1(),j5=s6.useRef(!1),UY=s6.useCallback(()=>{if(j5.current)return;j5.current=!0;let w6=M7.current.slice(lQ.current);for(let r6 of
sL_(w6))d1H.current.add(r6);lQ.current=M7.current.length,ITq({theme:L4,readFileState:mB.current,bashTools:d1H.current}).then(async(r6)=>{if(r6){let K8=await
r6.content({theme:L4});e((HA)=>({...HA,spinnerTip:K8})),VTq(r6)}else e((K8)=>{if(K8.spinnerTip===void 0)return K8;return{...K8,spinnerTip:void
0}})})},[e,L4]),Xf=s6.useCallback(()=>{QO(!1),NX(void 0),yT.current=0,eN.current=[],RB.current++,uZ(null),YK([]),l3_(),JM6("responding"),UY(),ar(),so6()},[UY]),jJ=s6.useMemo(()=>G2H(MH).some
((w6)=>w6.status==="running"),[MH]);s6.useEffect(()=>{if(!jJ&&t$.current!==null){let w6=Date.now()-t$.current,r6=Rz.current;t$.current=null,Rz.current=void
0,B9((K8)=>[...K8,gW_(w6,r6,A_(K8,H1H))])}},[jJ,B9]);let
MW=s6.useRef(!1);s6.useEffect(()=>{{if(B.mode!=="auto"){MW.current=!1;return}if(MW.current)return;if((y6().autoPermissionsNotificationCount??0)>=3)return;let
K8=setTimeout((HA,NA)=>{HA.current=!0,a6((O1)=>{let A1=O1.autoPermissionsNotificationCount??0;if(A1>=3)return
O1;return{...O1,autoPermissionsNotificationCount:A1+1}}),NA((O1)=>[...O1,L5(jD8,"warning")])},800,MW,B9);return()=>clearTimeout(K8)}},[B.mode,B9]);let
UlH=s6.useRef(!1),nOH=s6.useRef(!1);s6.useEffect(()=>{if(nOH.current)return;let
w6=_5();if(!w6?.creationDurationMs||w6.usedSparsePaths)return;if(w6.creationDurationMs<15000)return;nOH.current=!0;let r6=Math.round(w6.creationDurationMs/1000);B9((K8)=>[...K8,L5(`Worktree
creation took ${r6}s. For large repos, set \`worktree.sparsePaths\` in .claude/settings.json to check out only the directories you need \u2014 e.g. \`{"worktree": {"sparsePaths": ["src",
"packages/foo"]}}\`.`,"info")])},[B9]);let{onBeforeQuery:B1H,onTurnComplete:EZH,onSessionRestored:F1H,render:aP6,ownsInput:ZZH}=F2q({enabled:h,setMessages:B9,setInputValue:GL,setToolJSX:o1,r
esultDedupState:xB.current}),iOH=(!X8||X8.showSpinner===!0)&&kq.length===0&&nK.length===0&&(U9||wf||jJ||vQ6()>0)&&!r&&(!vG||ZH),rs=kq.length>0||nK.length>0||Q1.length>0||jH.queue.length>0||$
H.queue.length>0;xzq({sandboxHost:Q1[0]?.hostPattern.host,promptTitle:nK[0]?.title,elicitationServer:jH.queue[0]?.serverName,workerSandboxHost:$H.queue[0]?.host});let
rOH=V0q({hasActivePrompt:rs,otherSurveyActive:!1}),g1H=y0q(SK,U9,rs,{enabled:!y}),hT=v0q(SK,U9,rs,{enabled:!y,otherSurveyActive:rOH.state!=="closed"||g1H.state!=="closed"}),vZH=J0q(SK,U9,XR,
"session",rs,rOH.state!=="closed"||g1H.state!=="closed"||hT.state!=="closed"),mZ=uZq(SK,XR),BlH=s6.useMemo(()=>({...vZH,handleSelect:(w6)=>{if(NZH.current=!1,vZH.handleSelect(w6),w6==="bad"&
&VZq("feedback_survey_bad"))c1H("feedback_survey_bad"),NZH.current=!0}}),[vZH]),sP6=ZZ7(SK,U9,rs,rOH.state!=="closed"||BlH.state!=="closed"||g1H.state!=="closed"||hT.state!=="closed");H0q({a
utoConnectIdeFlag:z,ideToInstallExtension:BH,setDynamicMcpConfig:sH,setShowIdeOnboarding:W6,setIDEInstallationState:oH}),FTq(L,(w6)=>e((r6)=>({...r6,fileHistory:w6})));let
tP6=s6.useCallback(async(w6,r6,K8)=>{let HA=performance.now();try{let NA=SM6(r6.messages),O1=BD6();await
KTH("resume",{getAppState:()=>zH.getState(),setAppState:e,signal:AbortSignal.timeout(O1)});let{agentDefinition:A1}=qZH(r6.agentSetting,G,i);S(A1),e((g4)=>({...g4,agent:A1?.agentType}));let
l1=await bb("resume",{sessionId:w6,agentType:A1?.agentType,model:TH});if(NA.push(...l1),K8==="fork")IB1(r6,W2(w6));else Dr6(r6,W2(w6));if(r6.fileHistorySnapshots)L_8(r6);if(e((g4)=>({...g4,s
tandaloneAgentContext:OP6(r6.agentName,r6.agentColor)})),Gv(r6.agentName),HJ6(NA,r6.projectPath??q_()),K8!=="fork")sOH.current.current=u36(NA,F_);Xf(),mf(null),OV(w6);let
_A=wq_(w6);a46(),hvH(),uT(W2(w6),r6.fullPath?rz8.dirname(r6.fullPath):null);let{renameRecordingForSession:$9}=await Promise.resolve().then(() => (MP6(),BGq));if(await $9(),await
eU(),$P6(r6,e),UD6(),Ts(r6),Cz.current=!0,gw(void 0),K8!=="fork")gGq(r6.worktreeSession===void
0?r6.projectPath:r6.worktreeSession?.worktreePath),DP6(r6.worktreeSession,r6.projectPath),Gs(),yO_({abortController:new
AbortController,taskRegistry:OH}),fl(PV().map((g4)=>g4.id)),tR_(NA);else{let g4=_5();if(g4)dS(g4)}if(_A)dnH(_A);if(is.current&&K8!=="fork")is.current=gl6(NA,r6.contentReplacements??[]);if(B9
(()=>NA),o1(null),GL(""),K8!=="fork")gQ(NA);c("tengu_session_resumed",{entrypoint:K8,success:!0,resume_duration_ms:Math.round(performance.now()-HA)})}catch(NA){throw c("tengu_session_resumed
",{entrypoint:K8,success:!1,failure_reason:"processing_error",error_name:n8(NA).name}),NA}},[Xf,e,OH,gQ]),[QQ]=s6.useState(()=>Pb(hp)),mB=s6.useRef(QQ),d1H=s6.useRef(new
Set),lQ=s6.useRef(0),FlH=s6.useRef(new Set),glH=s6.useRef(new Map),IZH=s6.useRef(new Set),oOH=s6.useRef(new Map),VZH=s6.useRef(void
0),aOH=s6.useRef(KfH()),eP6=s6.useRef(w76()),sOH=s6.useRef(tFH()),HJ6=s6.useCallback((w6,r6)=>{let K8=MpH(w6,r6,hp);mB.current=quH(mB.current,K8);for(let HA of
sL_(w6))d1H.current.add(HA)},[e]);s6.useEffect(()=>{if(q&&q.length>0)HJ6(q,q_()),yO_({abortController:new AbortController,taskRegistry:OH}),tR_(q),gQ(q),sOH.current.current=u36(q,F_),F1H(q)}
,[]);let{status:_J6,reverify:kZH}=zWq(),[Mx,c1H]=s6.useState(null),NZH=s6.useRef(!1),[dlH,clH]=s6.useState(null),[QlH,llH]=s6.useState(!1),nlH=!U9&&ns;function
tOH(){if(QlH||dlH)return;if(Qs)return"message-selector";if(Pf)return;if(Q1[0])return"sandbox-permission";let
w6=!X8||X8.shouldContinueAnimation;if(w6&&kq[0])return"tool-permission";if(w6&&nK[0])return"prompt";if(w6&&$H.queue[0])return"worker-sandbox-permission";if(w6&&jH.queue[0])return"elicitation
";if(w6&&nlH)return"cost";if(w6&&uB)return"resume-return";if(w6&&!U9&&s)return"ultraplan-choice";if(w6&&!U9&&a)return"ultraplan-launch";if(Iq()){if(w6&&xH)return"remote-callout";return}if(w6
&&D6)return"ide-onboarding";if(w6&&xH)return"remote-callout";if(w6&&SH)return"lsp-recommendation";if(w6&&z6)return"plugin-hint";if(w6&&bH)return"desktop-upsell";return}let
P5=tOH(),AJ6=Pf&&(Q1[0]||kq[0]||nK[0]||$H.queue[0]||jH.queue[0]||nlH);M$.current=P5,s6.useEffect(()=>{if(!U9)return;let
w6=P5==="tool-permission",r6=Date.now();if(w6&&s$.current===null)s$.current=r6;else if(!w6&&s$.current!==null)f7.current+=r6-s$.current,s$.current=null},[P5,U9]);let
ilH=s6.useRef(P5),Bf=s6.useRef(null);s6.useLayoutEffect(()=>{let w6=ilH.current==="tool-permission",r6=P5==="tool-permission";if(ilH.current=P5,w6===r6)return;let
K8=V3.current;if(r6)Bf.current=K8&&!K8.isSticky()?K8.getScrollTop():null,F6(!0,"permissionDialogAppear");else if(Bf.current!==null)K8?.scrollTo(Bf.current),Bf.current=null;else
F6(!0,"permissionDialogDismiss")},[P5,F6]);let
os=X8?.jsx!=null,qJ6=s6.useRef(os);s6.useLayoutEffect(()=>{if(qJ6.current!==os&&(V3.current?.isSticky()??!0))F6(!1,`toolJsxDialog\u2192${os}`);qJ6.current=os},[os,F6]);function
yZH(){if(P5==="elicitation")return;if(N(`[onCancel] focusedInputDialog=${P5}
streamMode=${Tc.getState().mode}`),Yf.forceEnd(),WR?.trim())B9((w6)=>[...w6,XY({content:WR})]);if(Xf(),P5==="tool-permission")kq[0]?.onAbort(),G1([]);else if(P5==="prompt"){for(let w6 of
nK)w6.reject(Error("Prompt cancelled by user"));k$([]),Mq?.abort("user-cancel")}else if(KP.isRemoteMode)KP.cancelRequest();else Mq?.abort("user-cancel");mf(null),EZH(M7.current,!0)}let
KJ6=s6.useCallback(()=>{let w6=VQ6(D9.current,0);if(!w6)return;if(GL(w6.text),nD("prompt"),w6.images.length>0)YJ((r6)=>{let K8={...r6};for(let HA of w6.images)K8[HA.id]=HA;return
K8})},[GL,nD,YJ]),LJ6={setToolUseConfirmQueue:G1,onCancel:yZH,getConnectionSummary:()=>Sz.current?.summary(),onAgentsKilled:()=>B9((w6)=>[...w6,RU9()]),isMessageSelectorVisible:Qs||!!cQ,scre
en:M6,abortSignal:Mq?.signal,isExternalLoading:L7,popCommandFromQueue:KJ6,isLocalJSXCommand:X8?.isLocalJSXCommand,isInputOverlayActive:N6,inputMode:$M,isInputEmpty:iK};s6.useEffect(()=>{if(y
)return;if(XJ()>=5&&!ns&&!dQ){if(c("tengu_cost_threshold_reached",{}),LP(!0),$S6())p1H(!0)}},[SK,ns,dQ]);let CY8=s6.useCallback(async(w6)=>{let
r6=zH.getState(),{mode:K8,isBypassPermissionsModeAvailable:HA}=r6.toolPermissionContext;switch(Gv6(K8,HA)){case"allow":return!0;case"deny":return!1;case"classify":return
x_8(w6.host,w6.port,M7.current,j_.current,r6.toolPermissionContext,new AbortController().signal);case"ask":break}if(k1()&&SL6()){let O1=Cd1(),A1=await bd1(w6.host,O1);return new
Promise((l1)=>{if(!A1){pf((_A)=>[..._A,{hostPattern:w6,resolvePromise:l1}]);return}pd1({requestId:O1,host:w6.host,resolve:l1}),e((_A)=>({..._A,pendingSandboxRequest:{requestId:O1,host:w6.hos
t}}))})}return new Promise((O1)=>{let A1=!1;function l1(_A){if(A1)return;A1=!0,O1(_A)}pf((_A)=>[..._A,{hostPattern:w6,resolvePromise:l1}]);{let
_A=zH.getState().replBridgePermissionCallbacks;if(_A){let $9=xOH.randomUUID();_A.sendRequest($9,Sz8,{host:w6.host},xOH.randomUUID(),`Allow network connection to ${w6.host}?`);let
g4=_A.onResponse($9,(J5)=>{g4();let KO=J5.behavior==="allow";pf((BY)=>{return
BY.filter((FY)=>FY.hostPattern.host===w6.host).forEach((FY)=>FY.resolvePromise(KO)),BY.filter((FY)=>FY.hostPattern.host!==w6.host)});let kG=pY.current.get(w6.host);if(kG){for(let BY of
kG)BY();pY.current.delete(w6.host)}}),iD=()=>{g4(),_A.cancelRequest($9)},RK=pY.current.get(w6.host)??[];RK.push(iD),pY.current.set(w6.host,RK)}}})},[e,zH]);if(s6.useEffect(()=>{let
w6=N_.getSandboxUnavailableReason();if(!w6)return;if(N_.isSandboxRequired()){process.stderr.write(`
9252: Error: sandbox required but unavailable: ${w6}
9253: `+` sandbox.failIfUnavailable is set \u2014 refusing to start without a working sandbox.
9254:
- <anonymous> (/$bunfs/root/src/entrypoints/cli.js:9251:5663)
- WR (/$bunfs/root/src/entrypoints/cli.js:492:63749)
- UY (/$bunfs/root/src/entrypoints/cli.js:492:76948)
- j5 (/$bunfs/root/src/entrypoints/cli.js:492:76827)
- UY (/$bunfs/root/src/entrypoints/cli.js:492:76926)
- j5 (/$bunfs/root/src/entrypoints/cli.js:492:76827)
- UY (/$bunfs/root/src/entrypoints/cli.js:492:77745)
- j5 (/$bunfs/root/src/entrypoints/cli.js:492:76827)
- UY (/$bunfs/root/src/entrypoints/cli.js:492:76926)
- j5 (/$bunfs/root/src/entrypoints/cli.js:492:76827)
Steps to Reproduce
- Run claude --resume
- Select a session
Claude Model
None
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
2.1.120
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Terminal.app (macOS)
Additional Information
_No response_
This issue has 8 comments on GitHub. Read the full discussion on GitHub ↗