@kodax-ai/kodax 0.7.92 → 0.7.93

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.
Files changed (39) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/README.md +9 -0
  3. package/README_CN.md +9 -0
  4. package/dist/chunks/{agent-YHHFIH7N.js → agent-R7HVNARP.js} +1 -1
  5. package/dist/chunks/argument-completer-JHXUJWHC.js +2 -0
  6. package/dist/chunks/{chunk-PKPBII4F.js → chunk-3YOZIFSJ.js} +2 -2
  7. package/dist/chunks/{chunk-OSQIYUGD.js → chunk-4BY53JTF.js} +2 -2
  8. package/dist/chunks/{chunk-X75UGXP3.js → chunk-7QBWHCIZ.js} +1 -1
  9. package/dist/chunks/chunk-A3ZQE2BX.js +519 -0
  10. package/dist/chunks/{chunk-FBL7IVMK.js → chunk-BHE66SP3.js} +14 -14
  11. package/dist/chunks/chunk-D27EY4XC.js +383 -0
  12. package/dist/chunks/{chunk-5CIKWSCA.js → chunk-HLZWPB32.js} +2 -2
  13. package/dist/chunks/{chunk-RJIYXB62.js → chunk-JJ2YDBSN.js} +2 -2
  14. package/dist/chunks/{chunk-AGZNXFHZ.js → chunk-JTZKC4TV.js} +4 -4
  15. package/dist/chunks/{chunk-QPBN3J4E.js → chunk-PRASABCC.js} +2 -2
  16. package/dist/chunks/{chunk-QKLS4BYA.js → chunk-SMVC3Q3U.js} +4 -4
  17. package/dist/chunks/{chunk-THZVJ6R7.js → chunk-XTWIGVUL.js} +1 -1
  18. package/dist/chunks/{construction-bootstrap-QVLJPFTL.js → construction-bootstrap-474QPSYB.js} +1 -1
  19. package/dist/chunks/{dist-XC5M7UYX.js → dist-H4PT2QAV.js} +1 -1
  20. package/dist/chunks/{dist-WNMK42WE.js → dist-ITTXQHRJ.js} +1 -1
  21. package/dist/chunks/{host-B3TK2U43.js → host-OR3IO2A4.js} +1 -1
  22. package/dist/chunks/{run-manager-5AV3MR4W.js → run-manager-MNOTWIFX.js} +1 -1
  23. package/dist/chunks/{utils-HPVZCR2J.js → utils-5J4BHNBV.js} +1 -1
  24. package/dist/index.js +1 -1
  25. package/dist/kodax_bootstrap.js +1 -1
  26. package/dist/kodax_cli.js +1035 -1035
  27. package/dist/runtime-worker.js +1007 -1007
  28. package/dist/sandbox-workspace-session.js +1 -1
  29. package/dist/sdk-a2a.js +1 -1
  30. package/dist/sdk-coding.js +1 -1
  31. package/dist/sdk-llm.js +1 -1
  32. package/dist/sdk-repl.js +1 -1
  33. package/dist/sdk-runtime.js +1 -1
  34. package/dist/sdk-sandbox.js +1 -1
  35. package/dist/sdk-session.js +1 -1
  36. package/package.json +1 -1
  37. package/dist/chunks/argument-completer-6ZTRBNZM.js +0 -2
  38. package/dist/chunks/chunk-A6GNPNGB.js +0 -383
  39. package/dist/chunks/chunk-BV3SVH36.js +0 -519
@@ -1,5 +1,5 @@
1
1
  // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
2
- import{$ as In,A as Oa,Aa as Uv,B as Tv,Ba as Vv,C as Cv,Ca as Gv,D as $a,Da as Kv,E as Jf,Ea as ts,F as Iv,Fa as ns,G as vv,Ga as uy,H as Zf,Ha as zv,I as Vl,J as oy,Ja as dy,K as bv,Ka as dp,L as sy,La as Xv,M as eo,Ma as Yv,N as ep,O as Na,P as tp,Q as np,R as Rv,S as kv,T as Da,U as Ev,V as to,W as Mv,X as _v,Y as Ur,Z as ay,_ as rp,a as Cr,aa as Vr,b as z,ba as cy,c as t$,ca as es,d as Sn,da as sr,e as Uf,ea as ip,f as NI,fa as Gl,g as Ir,ga as op,h as Vf,ha as Av,i as Gf,ia as Lv,j as Kf,ja as Pv,k as Ra,ka as Ov,l as DI,la as $v,m as ka,ma as Nv,n as uv,na as sp,o as dv,oa as ap,p as fv,pa as Kl,q as pv,qa as cp,r as mv,ra as lp,s as hv,sa as up,t as gv,ta as Dv,u as La,ua as Bv,v as yv,va as Fv,w as Sv,wa as ly,x as wv,xa as Hv,y as Pa,ya as Wv,z as xv,za as jv}from"./chunk-PKPBII4F.js";import{$ as _a,E as ev,J as tv,K as Zi,L as Qo,O as nv,P as rv,Q as iv,R as ov,S as sv,T as av,U as cv,X as Xf,Y as Zo,Z as Yf,_ as Ma,a as ie,aa as Aa,b as BI,ba as qf,c as FI,ca as Ti,d as HI,e as WI,f as jl,g as jI,ga as lv,h as Ea,i as UI,j as VI,k as qo,l as GI,m as KI,n as zI,o as Ul,p as XI,q as zf,r as Wr,s as YI,t as qI,u as JI,w as QI,x as ZI,y as Jo,z as jr}from"./chunk-5CIKWSCA.js";import{a as Qf}from"./chunk-GRWUC6H7.js";import{N as LI,P as iy,Q as PI,R as OI,a as Xg,aa as $I,b as xf,c as Yg,da as jf,f as ny,q as Hf,r as Wf,y as AI,z as Wl}from"./chunk-OSQIYUGD.js";import{Bb as Ff,Cb as ba,D as xI,Db as RI,Gb as kI,Ib as EI,Jb as Qi,Ua as CI,Va as II,Wb as MI,hb as wi,p as Bl,q as pI,sb as Hl,tb as vI,ub as xi,wb as Ia,wc as _I,xb as bI,yb as va}from"./chunk-RJIYXB62.js";import{J as TI}from"./chunk-QPBN3J4E.js";import{Hb as gI,Md as yI,N as mI,Qd as SI,Rd as wI,Wa as Bf,hb as hI,td as Fl,wd as ry,z as Ca}from"./chunk-AGZNXFHZ.js";import{Aa as zg,Pa as Ko,ma as wf,ya as QC}from"./chunk-FBL7IVMK.js";import{Ac as kf,Af as Lt,Cc as oI,Cf as ga,Db as tI,Df as ya,Ef as Af,Gf as Sa,Hd as Ef,Hf as wa,Ia as Xo,Ib as Rf,Id as Mf,If as xa,Ja as qi,Jf as Si,Kb as nI,Kf as Lf,Lf as Ji,Mf as lI,Nf as Pf,Of,Pf as ey,Qf as $f,Ra as eI,Rf as uI,Sf as Ta,Ve as _f,We as Yo,Xg as dI,Yg as ty,Zb as rI,Zg as fI,_b as iI,dg as Nf,eg as Df,ff as sI,gf as Zg,k as zo,nb as qg,ne as Qg,ob as Hr,qf as aI,r as ZC,rb as Jg,t as ft,uf as cI,yf as qe,zf as ha}from"./chunk-7XSZVOG7.js";import{A as vf,E as bf,h as or,j as Tf,r as Cf,z as If}from"./chunk-QFV6YCIH.js";import{a as o,c as e$}from"./chunk-ONUPGMER.js";import{spawnSync as n$}from"node:child_process";function fp(e){return e==="1"||e?.toLowerCase()==="true"}o(fp,"isTruthyEnv");function qv(e){return e==="0"||e?.toLowerCase()==="false"}o(qv,"isFalseyEnv");function rs(e=process.env){return e.TERM_PROGRAM?.toLowerCase()==="vscode"||!!e.VSCODE_GIT_IPC_HANDLE||!!e.VSCODE_INJECTION}o(rs,"isVsCodeTerminalHostEnv");function is(e={}){let t=e.env??process.env;return(e.platform??process.platform)==="win32"||!!t.WT_SESSION}o(is,"hasCursorUpViewportYankRisk");function r$(e){return!!(e.SSH_CONNECTION||e.SSH_CLIENT||e.SSH_TTY)}o(r$,"isSshSession");function Ba(e={}){let t=e.env??process.env;return fp(t.KODAX_FULLSCREEN)?!1:(e.platform??process.platform)==="win32"&&r$(t)}o(Ba,"isRemoteConptyHost");function zl(e={}){let t=e.env??process.env;return is(e)||rs(t)}o(zl,"hasMainScreenRenderScrollRisk");function i$(e){if(!e.TMUX||e.TERM_PROGRAM!=="iTerm.app")return!1;let t=e.TERM??"";return!t.startsWith("screen")&&!t.startsWith("tmux")}o(i$,"isTmuxControlModeEnvHeuristic");var Ci;function Fa(e={}){if(typeof e.tmuxControlMode=="boolean")return e.tmuxControlMode;let t=e.env??process.env,n=e.platform??process.platform;if(n==="win32")return!1;if(i$(t))return!0;if(!(t===process.env&&n===process.platform))return!1;if(Ci!==void 0||(Ci=!1,!t.TMUX)||t.TERM_PROGRAM&&t.TERM_PROGRAM!=="iTerm.app")return Ci;try{let i=n$("tmux",["display-message","-p","#{client_control_mode}"],{encoding:"utf8",timeout:2e3});i.status===0&&(Ci=i.stdout.trim()==="1")}catch{Ci=!1}return Ci}o(Fa,"isTmuxControlMode");function pp(){Ci=void 0}o(pp,"resetTmuxControlModeProbeForTesting");function no(e={}){let t=e.env??process.env,n=e.isTTY??process.stdout.isTTY===!0,r=e.rawModeSupported??(process.stdin.isTTY===!0&&typeof process.stdin.setRawMode=="function");return!n||!r||t.TERM==="dumb"||t.CI==="true"?"unsupported_control_host":Fa(e)?"tmux_control_mode":rs(t)?"xtermjs_host":Ba(e)?"remote_conpty_host":is(e)?"degraded_vt":"native_vt"}o(no,"detectTerminalRenderHost");var ro=no;function os(e={}){let t=e.env??process.env;if(fp(t.KODAX_FORCE_INK))return"legacy";let n=t.KODAX_TUI_RENDERER?.trim().toLowerCase();return n==="legacy"||n==="owned"||n==="auto"?n:"auto"}o(os,"resolveConfiguredTuiRendererMode");function io(e={}){let t=os(e);if(t==="legacy"||t==="owned")return t;let n=no(e);return n==="unsupported_control_host"||n==="tmux_control_mode"?"legacy":"owned"}o(io,"resolveEffectiveTuiRendererMode");function Xl(e={}){let t=e.env??process.env;if(fp(t.KODAX_FORCE_CLASSIC_REPL))return"classic";let n=os({env:t});if(n==="legacy"||n==="owned")return"ink";let r=no(e);return r==="unsupported_control_host"||r==="tmux_control_mode"?"classic":"ink"}o(Xl,"resolveInteractiveSurfacePreference");var o$={enabled:!1,promptShell:"main-screen",transcriptShell:"main-screen",mouseWheel:!1,mouseClicks:!1,streamingPreview:!1,transcriptSpinnerAnimation:!0},Jv={enabled:!0,promptShell:"main-screen",transcriptShell:"virtual",mouseWheel:!0,mouseClicks:!0,streamingPreview:!1,transcriptSpinnerAnimation:!0};function oo(e,t="owned",n={}){let r=n.env??process.env;return qv(r.KODAX_FULLSCREEN)?t==="owned"&&e!=="tmux_control_mode"&&e!=="unsupported_control_host"?Jv:o$:s$(e,t)}o(oo,"resolveFullscreenPolicy");function s$(e,t){if(t==="legacy")switch(e){case"native_vt":return{enabled:!1,promptShell:"main-screen",transcriptShell:"main-screen",mouseWheel:!1,mouseClicks:!1,streamingPreview:!0,transcriptSpinnerAnimation:!0};case"xtermjs_host":case"degraded_vt":case"remote_conpty_host":return{enabled:!1,promptShell:"main-screen",transcriptShell:"main-screen",mouseWheel:!1,mouseClicks:!1,streamingPreview:!1,transcriptSpinnerAnimation:!1};default:return{enabled:!1,promptShell:"main-screen",transcriptShell:"main-screen",mouseWheel:!1,mouseClicks:!1,streamingPreview:!1,transcriptSpinnerAnimation:!1}}switch(e){case"native_vt":return{enabled:!0,promptShell:"virtual",transcriptShell:"virtual",mouseWheel:!0,mouseClicks:!0,streamingPreview:!0,transcriptSpinnerAnimation:!0};case"xtermjs_host":return{enabled:!0,promptShell:"virtual",transcriptShell:"virtual",mouseWheel:!0,mouseClicks:!0,streamingPreview:!0,transcriptSpinnerAnimation:!0};case"degraded_vt":return{enabled:!0,promptShell:"virtual",transcriptShell:"virtual",mouseWheel:!0,mouseClicks:!0,streamingPreview:!0,transcriptSpinnerAnimation:!0};case"remote_conpty_host":return Jv;default:return{enabled:!1,promptShell:"main-screen",transcriptShell:"main-screen",mouseWheel:!1,mouseClicks:!1,streamingPreview:!1,transcriptSpinnerAnimation:!1}}}o(s$,"buildFullscreenPolicy");function ss(e,t={}){let n=t.rendererMode??"owned",r=oo(e,n,{env:t.env}),i=e!=="unsupported_control_host"&&e!=="tmux_control_mode";return{profile:e,ownsViewportByDefault:r.enabled&&r.promptShell==="virtual",supportsMouseTracking:r.mouseWheel||r.mouseClicks,bufferingMode:r.streamingPreview?"live":"buffered-fallback",supportsFullscreenLayout:r.enabled,supportsOverlaySurface:r.enabled,supportsSelection:i,supportsCopyOnSelect:!1,supportsWheelHistory:r.mouseWheel,supportsViewportChrome:r.enabled,supportsSearchViewport:r.enabled,supportsStickyPrompt:r.enabled}}o(ss,"getTerminalHostCapabilities");function Yl(e={}){return io(e)==="owned"}o(Yl,"isOwnedRendererPreferred");function ql(e={}){let t=e.env??process.env;return fp(t.KODAX_FORCE_CLASSIC_REPL)&&!qv(t.KODAX_FORCE_CLASSIC_REPL)}o(ql,"isClassicReplForced");var as=class{static{o(this,"LRUCache")}capacity;cache;constructor(t){this.capacity=t,this.cache=new Map}get(t){if(!this.cache.has(t))return;let n=this.cache.get(t);return this.cache.delete(t),this.cache.set(t,n),n}set(t,n){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.capacity){let r=this.cache.keys().next().value;r!==void 0&&this.cache.delete(r)}this.cache.set(t,n)}has(t){return this.cache.has(t)}delete(t){return this.cache.delete(t)}clear(){this.cache.clear()}get size(){return this.cache.size}},fy=1,py=2,a$=1e3,Qv;function hp(){if(!(typeof Intl>"u"||typeof Intl.Segmenter!="function"))return Qv??=new Intl.Segmenter("en",{granularity:"grapheme"}),Qv}o(hp,"getGraphemeSegmenter");function vn(e){if(!e)return 0;let t=hp();if(t){let n=0;for(let r of t.segment(e))n++;return n}return[...e].length}o(vn,"getCodePointLength");function vr(e){if(!e)return!1;let t=e.codePointAt(0);return t===void 0?!1:t>=19968&&t<=40959||t>=13312&&t<=19903||t>=63744&&t<=64255||t>=12352&&t<=12447||t>=12448&&t<=12543||t>=44032&&t<=55215||t>=12288&&t<=12351||t>=65280&&t<=65519||t>=128512&&t<=128591||t>=127744&&t<=128511||t>=128640&&t<=128767||t>=127456&&t<=127487||t>=9728&&t<=9983||t>=9984&&t<=10175||t>=129280&&t<=129535||t>=129536&&t<=129647||t>=129648&&t<=129791}o(vr,"isWideChar");function br(e){if(!e)return 0;let t=0,n=hp();if(n)for(let r of n.segment(e))t+=vr(r.segment)?py:fy;else for(let r of e)t+=vr(r)?py:fy;return t}o(br,"getVisualWidth");function Zv(e,t){if(!e||t<0)return"";let n=hp();if(n){let i=0;for(let s of n.segment(e)){if(i===t)return s.segment;i++}return""}let r=[...e];return t>=r.length?"":r[t]}o(Zv,"getCharAtCodePoint");function wn(e){if(!e)return[];let t=hp();if(t){let n=[];for(let r of t.segment(e))n.push(r.segment);return n}return[...e]}o(wn,"splitByCodePoints");function c$(e,t,n){return wn(e).slice(t,n).join("")}o(c$,"sliceByCodePoints");function eb(e,t){let n=Math.max(0,t),r=wn(e),i=0,s=0;for(;i<r.length;){let a=vr(r[i])?py:fy;if(s+a>n)break;s+=a,i++}return{before:r.slice(0,i).join(""),current:r[i]??"",after:r.slice(i+1).join("")}}o(eb,"splitAtVisualColumn");function Ha(e,t,n=!1){if(!e||t<=0)return"";let r="\u2026",s=n?t-1:t,a="",c=0,l=wn(e);for(let u of l){let f=vr(u)?2:1;if(c+f>s)break;a+=u,c+=f}return n&&a.length<e.length&&(a+=r),a}o(Ha,"truncateByVisualWidth");var mp=new as(a$);function gp(e){let t=mp.get(e);if(t!==void 0)return t;let n=br(e);return mp.set(e,n),n}o(gp,"getVisualWidthCached");function xn(e,t,n,r){let i=[],s=[],a=[];for(let c=0;c<e.length;c++){let l=e[c]||"";if(s[c]=[],l.length===0){i.push("");let p=i.length-1;s[c].push([p,0]),a.push([c,0]);continue}let u=0,f=wn(l);for(;u<f.length;){let p="",h=0,m=u,g=-1;for(let C=u;C<f.length;C++){let w=f[C],T=vr(w)?2:1;if(h+T>t){g>=0&&C-u>0?(p=f.slice(u,g).join(""),h=f.slice(u,g).reduce((v,A)=>v+(vr(A)?2:1),0),m=g):p.length===0&&T>t&&(p=w,h=T,m=C+1);break}p+=w,h+=T,m=C+1,w===" "&&(g=C+1)}if(p.length>0||i.length===0){let C=u,w=i.length;i.push(p),s[c].push([w,C]),a.push([c,C])}u=m}}return{visualLines:i,logicalToVisualMap:s,visualToLogicalMap:a}}o(xn,"calculateVisualLayout");function yp(e,t){let{logicalToVisualMap:n,visualLines:r}=e;if(r.length===0)return[0,0];let[i,s]=t,a=n[i];if(!a||a.length===0)return[0,0];let c;for(let[m,g]of a)if(g<=s)c=[m,g];else break;let[l,u]=c??a[0],f=r[l]??"",p=Math.max(0,s-u),h=br(c$(f,0,p));return[l,h]}o(yp,"calculateVisualCursorFromLayout");var Sp={name:"dark",colors:{primary:"#01A4FF",secondary:"#8B5CF6",accent:"#F59E0B",text:"#CCCCCC",dim:"#666666",thinking:"#A3ADC2",success:"#19C37D",warning:"#FF9F43",error:"#FF5F56",info:"#01A4FF",hint:"#8B5CF6",background:"#0D0D0D",inputBackground:"#1A1A1A"},symbols:{prompt:">",success:"\u2713",error:"\u2717",warning:"!",spinner:["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]}},my={name:"minimal",colors:{primary:"#01A4FF",secondary:"#8B5CF6",accent:"#F59E0B",text:"#CCCCCC",dim:"#666666",thinking:"#A3ADC2",success:"#19C37D",warning:"#FF9F43",error:"#FF5F56",info:"#01A4FF",hint:"#8B5CF6",background:"#0D0D0D",inputBackground:"#1A1A1A"},symbols:{prompt:"$",success:"+",error:"-",warning:"?",spinner:["-","\\","|","/"]}};var hy={dark:Sp,minimal:my};function ae(e="dark"){return hy[e]??Sp}o(ae,"getTheme");function l$(){return Object.keys(hy)}o(l$,"getThemeNames");import{jsx as kn,jsxs as cr,Fragment as yD}from"react/jsx-runtime";import{useMemo as zp}from"react";import{jsx as $0}from"react/jsx-runtime";import{createContext as K1,useContext as hs,useEffect as Ya,useMemo as O0,useState as z1,useCallback as N0,useRef as Fp}from"react";import{Stream as C1}from"node:stream";import{openSync as I1,writeSync as C0}from"node:fs";import{performance as v1}from"node:perf_hooks";import{tmpdir as b1}from"node:os";import{join as R1}from"node:path";import gy,{forwardRef as f$,useContext as p$}from"react";import{createContext as u$}from"react";var Wa=u$({isScreenReaderEnabled:!1});import{createContext as d$}from"react";var wp=d$(void 0);var tb=f$(({children:e,backgroundColor:t,"aria-label":n,"aria-hidden":r,"aria-role":i,"aria-state":s,...a},c)=>{let{isScreenReaderEnabled:l}=p$(Wa),u=n?gy.createElement("ink-text",null,n):void 0;if(l&&r)return null;let f=gy.createElement("ink-box",{ref:c,style:{flexWrap:"nowrap",flexDirection:"row",flexGrow:0,flexShrink:1,...a,backgroundColor:t,overflowX:a.overflowX??a.overflow??"visible",overflowY:a.overflowY??a.overflow??"visible"},internal_accessibility:{role:i,state:s}},l&&u?u:e);return t?gy.createElement(wp.Provider,{value:t},f):f});tb.displayName="Box";var ar=tb;import y$,{useContext as nb}from"react";import ja from"chalk";import so from"chalk";var m$=/^rgb\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,h$=/^ansi256\(\s?(\d+)\s?\)$/;function g$(e){return e in so}o(g$,"isNamedColor");function Rr(e,t,n){if(!t)return e;if(g$(t)){let r=so;if(n==="foreground")return r[t]?.(e)??e;let i=`bg${t[0].toUpperCase()+t.slice(1)}`;return r[i]?.(e)??e}if(t.startsWith("#"))return n==="foreground"?so.hex(t)(e):so.bgHex(t)(e);if(t.startsWith("ansi256")){let r=h$.exec(t);if(!r)return e;let i=Number(r[1]);return n==="foreground"?so.ansi256(i)(e):so.bgAnsi256(i)(e)}if(t.startsWith("rgb")){let r=m$.exec(t);if(!r)return e;let i=Number(r[1]),s=Number(r[2]),a=Number(r[3]);return n==="foreground"?so.rgb(i,s,a)(e):so.bgRgb(i,s,a)(e)}return e}o(Rr,"colorize");function bn({color:e,backgroundColor:t,dimColor:n=!1,bold:r=!1,italic:i=!1,underline:s=!1,strikethrough:a=!1,inverse:c=!1,wrap:l="wrap",children:u,"aria-label":f,"aria-hidden":p=!1,internal_cursorAnchor:h=!1}){let{isScreenReaderEnabled:m}=nb(Wa),g=nb(wp),C=m&&f?f:u;if(C==null)return null;let w=o(T=>{let v=T;n&&(v=ja.dim(v)),e&&(v=Rr(v,e,"foreground"));let A=t??g;return A&&(v=Rr(v,A,"background")),r&&(v=ja.bold(v)),i&&(v=ja.italic(v)),s&&(v=ja.underline(v)),a&&(v=ja.strikethrough(v)),c&&(v=ja.inverse(v)),v},"transform");return m&&p?null:y$.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:l},internal_transform:w,...h?{internal_cursorAnchor:!0}:{}},m&&f?f:u)}o(bn,"Text");import S$,{useLayoutEffect as w$,useMemo as rb,useState as x$}from"react";function yy({items:e,children:t,style:n}){let[r,i]=x$(0),s=rb(()=>e.slice(r),[e,r]);w$(()=>{i(e.length)},[e.length]);let a=s.map((l,u)=>t(l,r+u)),c=rb(()=>({position:"absolute",flexDirection:"column",...n}),[n]);return S$.createElement("ink-box",{internal_static:!0,style:c},a)}o(yy,"Static");import ps from"node:process";import w0 from"react";import r1 from"es-toolkit/compat/throttle";import Rn from"ansi-escapes";import Mi from"is-in-ci";import i1 from"auto-bind";import{onExit as o1}from"signal-exit";import s1 from"patch-console";import{LegacyRoot as a1,ConcurrentRoot as c1}from"react-reconciler/constants.js";import l1 from"yoga-layout";import u1 from"wrap-ansi";import d1 from"terminal-size";import T$ from"node:process";var xp=o(()=>T$.env.DEV==="true","isDev");import X$ from"react-reconciler";import{DefaultEventPriority as Y$,NoEventPriority as wb}from"react-reconciler/constants.js";import*as ao from"scheduler";import hb from"yoga-layout";import{createContext as q$}from"react";import N$ from"yoga-layout";import C$ from"widest-line";var ib=new Map,I$=o(e=>{if(e.length===0)return{width:0,height:0};let t=ib.get(e);if(t)return t;let n=C$(e),r=e.split(`
2
+ import{$ as In,A as Oa,Aa as Uv,B as Tv,Ba as Vv,C as Cv,Ca as Gv,D as $a,Da as Kv,E as Jf,Ea as ts,F as Iv,Fa as ns,G as vv,Ga as uy,H as Zf,Ha as zv,I as Vl,J as oy,Ja as dy,K as bv,Ka as dp,L as sy,La as Xv,M as eo,Ma as Yv,N as ep,O as Na,P as tp,Q as np,R as Rv,S as kv,T as Da,U as Ev,V as to,W as Mv,X as _v,Y as Ur,Z as ay,_ as rp,a as Cr,aa as Vr,b as z,ba as cy,c as t$,ca as es,d as Sn,da as sr,e as Uf,ea as ip,f as NI,fa as Gl,g as Ir,ga as op,h as Vf,ha as Av,i as Gf,ia as Lv,j as Kf,ja as Pv,k as Ra,ka as Ov,l as DI,la as $v,m as ka,ma as Nv,n as uv,na as sp,o as dv,oa as ap,p as fv,pa as Kl,q as pv,qa as cp,r as mv,ra as lp,s as hv,sa as up,t as gv,ta as Dv,u as La,ua as Bv,v as yv,va as Fv,w as Sv,wa as ly,x as wv,xa as Hv,y as Pa,ya as Wv,z as xv,za as jv}from"./chunk-3YOZIFSJ.js";import{$ as _a,E as ev,J as tv,K as Zi,L as Qo,O as nv,P as rv,Q as iv,R as ov,S as sv,T as av,U as cv,X as Xf,Y as Zo,Z as Yf,_ as Ma,a as ie,aa as Aa,b as BI,ba as qf,c as FI,ca as Ti,d as HI,e as WI,f as jl,g as jI,ga as lv,h as Ea,i as UI,j as VI,k as qo,l as GI,m as KI,n as zI,o as Ul,p as XI,q as zf,r as Wr,s as YI,t as qI,u as JI,w as QI,x as ZI,y as Jo,z as jr}from"./chunk-HLZWPB32.js";import{a as Qf}from"./chunk-GRWUC6H7.js";import{N as LI,P as iy,Q as PI,R as OI,a as Xg,aa as $I,b as xf,c as Yg,da as jf,f as ny,q as Hf,r as Wf,y as AI,z as Wl}from"./chunk-4BY53JTF.js";import{Bb as Ff,Cb as ba,D as xI,Db as RI,Gb as kI,Ib as EI,Jb as Qi,Ua as CI,Va as II,Wb as MI,hb as wi,p as Bl,q as pI,sb as Hl,tb as vI,ub as xi,wb as Ia,wc as _I,xb as bI,yb as va}from"./chunk-JJ2YDBSN.js";import{J as TI}from"./chunk-PRASABCC.js";import{Hb as gI,Md as yI,N as mI,Qd as SI,Rd as wI,Wa as Bf,hb as hI,td as Fl,wd as ry,z as Ca}from"./chunk-JTZKC4TV.js";import{Aa as zg,Pa as Ko,ma as wf,ya as QC}from"./chunk-BHE66SP3.js";import{Ac as kf,Af as Lt,Cc as oI,Cf as ga,Db as tI,Df as ya,Ef as Af,Gf as Sa,Hd as Ef,Hf as wa,Ia as Xo,Ib as Rf,Id as Mf,If as xa,Ja as qi,Jf as Si,Kb as nI,Kf as Lf,Lf as Ji,Mf as lI,Nf as Pf,Of,Pf as ey,Qf as $f,Ra as eI,Rf as uI,Sf as Ta,Ve as _f,We as Yo,Xg as dI,Yg as ty,Zb as rI,Zg as fI,_b as iI,dg as Nf,eg as Df,ff as sI,gf as Zg,k as zo,nb as qg,ne as Qg,ob as Hr,qf as aI,r as ZC,rb as Jg,t as ft,uf as cI,yf as qe,zf as ha}from"./chunk-7XSZVOG7.js";import{A as vf,E as bf,h as or,j as Tf,r as Cf,z as If}from"./chunk-QFV6YCIH.js";import{a as o,c as e$}from"./chunk-ONUPGMER.js";import{spawnSync as n$}from"node:child_process";function fp(e){return e==="1"||e?.toLowerCase()==="true"}o(fp,"isTruthyEnv");function qv(e){return e==="0"||e?.toLowerCase()==="false"}o(qv,"isFalseyEnv");function rs(e=process.env){return e.TERM_PROGRAM?.toLowerCase()==="vscode"||!!e.VSCODE_GIT_IPC_HANDLE||!!e.VSCODE_INJECTION}o(rs,"isVsCodeTerminalHostEnv");function is(e={}){let t=e.env??process.env;return(e.platform??process.platform)==="win32"||!!t.WT_SESSION}o(is,"hasCursorUpViewportYankRisk");function r$(e){return!!(e.SSH_CONNECTION||e.SSH_CLIENT||e.SSH_TTY)}o(r$,"isSshSession");function Ba(e={}){let t=e.env??process.env;return fp(t.KODAX_FULLSCREEN)?!1:(e.platform??process.platform)==="win32"&&r$(t)}o(Ba,"isRemoteConptyHost");function zl(e={}){let t=e.env??process.env;return is(e)||rs(t)}o(zl,"hasMainScreenRenderScrollRisk");function i$(e){if(!e.TMUX||e.TERM_PROGRAM!=="iTerm.app")return!1;let t=e.TERM??"";return!t.startsWith("screen")&&!t.startsWith("tmux")}o(i$,"isTmuxControlModeEnvHeuristic");var Ci;function Fa(e={}){if(typeof e.tmuxControlMode=="boolean")return e.tmuxControlMode;let t=e.env??process.env,n=e.platform??process.platform;if(n==="win32")return!1;if(i$(t))return!0;if(!(t===process.env&&n===process.platform))return!1;if(Ci!==void 0||(Ci=!1,!t.TMUX)||t.TERM_PROGRAM&&t.TERM_PROGRAM!=="iTerm.app")return Ci;try{let i=n$("tmux",["display-message","-p","#{client_control_mode}"],{encoding:"utf8",timeout:2e3});i.status===0&&(Ci=i.stdout.trim()==="1")}catch{Ci=!1}return Ci}o(Fa,"isTmuxControlMode");function pp(){Ci=void 0}o(pp,"resetTmuxControlModeProbeForTesting");function no(e={}){let t=e.env??process.env,n=e.isTTY??process.stdout.isTTY===!0,r=e.rawModeSupported??(process.stdin.isTTY===!0&&typeof process.stdin.setRawMode=="function");return!n||!r||t.TERM==="dumb"||t.CI==="true"?"unsupported_control_host":Fa(e)?"tmux_control_mode":rs(t)?"xtermjs_host":Ba(e)?"remote_conpty_host":is(e)?"degraded_vt":"native_vt"}o(no,"detectTerminalRenderHost");var ro=no;function os(e={}){let t=e.env??process.env;if(fp(t.KODAX_FORCE_INK))return"legacy";let n=t.KODAX_TUI_RENDERER?.trim().toLowerCase();return n==="legacy"||n==="owned"||n==="auto"?n:"auto"}o(os,"resolveConfiguredTuiRendererMode");function io(e={}){let t=os(e);if(t==="legacy"||t==="owned")return t;let n=no(e);return n==="unsupported_control_host"||n==="tmux_control_mode"?"legacy":"owned"}o(io,"resolveEffectiveTuiRendererMode");function Xl(e={}){let t=e.env??process.env;if(fp(t.KODAX_FORCE_CLASSIC_REPL))return"classic";let n=os({env:t});if(n==="legacy"||n==="owned")return"ink";let r=no(e);return r==="unsupported_control_host"||r==="tmux_control_mode"?"classic":"ink"}o(Xl,"resolveInteractiveSurfacePreference");var o$={enabled:!1,promptShell:"main-screen",transcriptShell:"main-screen",mouseWheel:!1,mouseClicks:!1,streamingPreview:!1,transcriptSpinnerAnimation:!0},Jv={enabled:!0,promptShell:"main-screen",transcriptShell:"virtual",mouseWheel:!0,mouseClicks:!0,streamingPreview:!1,transcriptSpinnerAnimation:!0};function oo(e,t="owned",n={}){let r=n.env??process.env;return qv(r.KODAX_FULLSCREEN)?t==="owned"&&e!=="tmux_control_mode"&&e!=="unsupported_control_host"?Jv:o$:s$(e,t)}o(oo,"resolveFullscreenPolicy");function s$(e,t){if(t==="legacy")switch(e){case"native_vt":return{enabled:!1,promptShell:"main-screen",transcriptShell:"main-screen",mouseWheel:!1,mouseClicks:!1,streamingPreview:!0,transcriptSpinnerAnimation:!0};case"xtermjs_host":case"degraded_vt":case"remote_conpty_host":return{enabled:!1,promptShell:"main-screen",transcriptShell:"main-screen",mouseWheel:!1,mouseClicks:!1,streamingPreview:!1,transcriptSpinnerAnimation:!1};default:return{enabled:!1,promptShell:"main-screen",transcriptShell:"main-screen",mouseWheel:!1,mouseClicks:!1,streamingPreview:!1,transcriptSpinnerAnimation:!1}}switch(e){case"native_vt":return{enabled:!0,promptShell:"virtual",transcriptShell:"virtual",mouseWheel:!0,mouseClicks:!0,streamingPreview:!0,transcriptSpinnerAnimation:!0};case"xtermjs_host":return{enabled:!0,promptShell:"virtual",transcriptShell:"virtual",mouseWheel:!0,mouseClicks:!0,streamingPreview:!0,transcriptSpinnerAnimation:!0};case"degraded_vt":return{enabled:!0,promptShell:"virtual",transcriptShell:"virtual",mouseWheel:!0,mouseClicks:!0,streamingPreview:!0,transcriptSpinnerAnimation:!0};case"remote_conpty_host":return Jv;default:return{enabled:!1,promptShell:"main-screen",transcriptShell:"main-screen",mouseWheel:!1,mouseClicks:!1,streamingPreview:!1,transcriptSpinnerAnimation:!1}}}o(s$,"buildFullscreenPolicy");function ss(e,t={}){let n=t.rendererMode??"owned",r=oo(e,n,{env:t.env}),i=e!=="unsupported_control_host"&&e!=="tmux_control_mode";return{profile:e,ownsViewportByDefault:r.enabled&&r.promptShell==="virtual",supportsMouseTracking:r.mouseWheel||r.mouseClicks,bufferingMode:r.streamingPreview?"live":"buffered-fallback",supportsFullscreenLayout:r.enabled,supportsOverlaySurface:r.enabled,supportsSelection:i,supportsCopyOnSelect:!1,supportsWheelHistory:r.mouseWheel,supportsViewportChrome:r.enabled,supportsSearchViewport:r.enabled,supportsStickyPrompt:r.enabled}}o(ss,"getTerminalHostCapabilities");function Yl(e={}){return io(e)==="owned"}o(Yl,"isOwnedRendererPreferred");function ql(e={}){let t=e.env??process.env;return fp(t.KODAX_FORCE_CLASSIC_REPL)&&!qv(t.KODAX_FORCE_CLASSIC_REPL)}o(ql,"isClassicReplForced");var as=class{static{o(this,"LRUCache")}capacity;cache;constructor(t){this.capacity=t,this.cache=new Map}get(t){if(!this.cache.has(t))return;let n=this.cache.get(t);return this.cache.delete(t),this.cache.set(t,n),n}set(t,n){if(this.cache.has(t))this.cache.delete(t);else if(this.cache.size>=this.capacity){let r=this.cache.keys().next().value;r!==void 0&&this.cache.delete(r)}this.cache.set(t,n)}has(t){return this.cache.has(t)}delete(t){return this.cache.delete(t)}clear(){this.cache.clear()}get size(){return this.cache.size}},fy=1,py=2,a$=1e3,Qv;function hp(){if(!(typeof Intl>"u"||typeof Intl.Segmenter!="function"))return Qv??=new Intl.Segmenter("en",{granularity:"grapheme"}),Qv}o(hp,"getGraphemeSegmenter");function vn(e){if(!e)return 0;let t=hp();if(t){let n=0;for(let r of t.segment(e))n++;return n}return[...e].length}o(vn,"getCodePointLength");function vr(e){if(!e)return!1;let t=e.codePointAt(0);return t===void 0?!1:t>=19968&&t<=40959||t>=13312&&t<=19903||t>=63744&&t<=64255||t>=12352&&t<=12447||t>=12448&&t<=12543||t>=44032&&t<=55215||t>=12288&&t<=12351||t>=65280&&t<=65519||t>=128512&&t<=128591||t>=127744&&t<=128511||t>=128640&&t<=128767||t>=127456&&t<=127487||t>=9728&&t<=9983||t>=9984&&t<=10175||t>=129280&&t<=129535||t>=129536&&t<=129647||t>=129648&&t<=129791}o(vr,"isWideChar");function br(e){if(!e)return 0;let t=0,n=hp();if(n)for(let r of n.segment(e))t+=vr(r.segment)?py:fy;else for(let r of e)t+=vr(r)?py:fy;return t}o(br,"getVisualWidth");function Zv(e,t){if(!e||t<0)return"";let n=hp();if(n){let i=0;for(let s of n.segment(e)){if(i===t)return s.segment;i++}return""}let r=[...e];return t>=r.length?"":r[t]}o(Zv,"getCharAtCodePoint");function wn(e){if(!e)return[];let t=hp();if(t){let n=[];for(let r of t.segment(e))n.push(r.segment);return n}return[...e]}o(wn,"splitByCodePoints");function c$(e,t,n){return wn(e).slice(t,n).join("")}o(c$,"sliceByCodePoints");function eb(e,t){let n=Math.max(0,t),r=wn(e),i=0,s=0;for(;i<r.length;){let a=vr(r[i])?py:fy;if(s+a>n)break;s+=a,i++}return{before:r.slice(0,i).join(""),current:r[i]??"",after:r.slice(i+1).join("")}}o(eb,"splitAtVisualColumn");function Ha(e,t,n=!1){if(!e||t<=0)return"";let r="\u2026",s=n?t-1:t,a="",c=0,l=wn(e);for(let u of l){let f=vr(u)?2:1;if(c+f>s)break;a+=u,c+=f}return n&&a.length<e.length&&(a+=r),a}o(Ha,"truncateByVisualWidth");var mp=new as(a$);function gp(e){let t=mp.get(e);if(t!==void 0)return t;let n=br(e);return mp.set(e,n),n}o(gp,"getVisualWidthCached");function xn(e,t,n,r){let i=[],s=[],a=[];for(let c=0;c<e.length;c++){let l=e[c]||"";if(s[c]=[],l.length===0){i.push("");let p=i.length-1;s[c].push([p,0]),a.push([c,0]);continue}let u=0,f=wn(l);for(;u<f.length;){let p="",h=0,m=u,g=-1;for(let C=u;C<f.length;C++){let w=f[C],T=vr(w)?2:1;if(h+T>t){g>=0&&C-u>0?(p=f.slice(u,g).join(""),h=f.slice(u,g).reduce((v,A)=>v+(vr(A)?2:1),0),m=g):p.length===0&&T>t&&(p=w,h=T,m=C+1);break}p+=w,h+=T,m=C+1,w===" "&&(g=C+1)}if(p.length>0||i.length===0){let C=u,w=i.length;i.push(p),s[c].push([w,C]),a.push([c,C])}u=m}}return{visualLines:i,logicalToVisualMap:s,visualToLogicalMap:a}}o(xn,"calculateVisualLayout");function yp(e,t){let{logicalToVisualMap:n,visualLines:r}=e;if(r.length===0)return[0,0];let[i,s]=t,a=n[i];if(!a||a.length===0)return[0,0];let c;for(let[m,g]of a)if(g<=s)c=[m,g];else break;let[l,u]=c??a[0],f=r[l]??"",p=Math.max(0,s-u),h=br(c$(f,0,p));return[l,h]}o(yp,"calculateVisualCursorFromLayout");var Sp={name:"dark",colors:{primary:"#01A4FF",secondary:"#8B5CF6",accent:"#F59E0B",text:"#CCCCCC",dim:"#666666",thinking:"#A3ADC2",success:"#19C37D",warning:"#FF9F43",error:"#FF5F56",info:"#01A4FF",hint:"#8B5CF6",background:"#0D0D0D",inputBackground:"#1A1A1A"},symbols:{prompt:">",success:"\u2713",error:"\u2717",warning:"!",spinner:["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"]}},my={name:"minimal",colors:{primary:"#01A4FF",secondary:"#8B5CF6",accent:"#F59E0B",text:"#CCCCCC",dim:"#666666",thinking:"#A3ADC2",success:"#19C37D",warning:"#FF9F43",error:"#FF5F56",info:"#01A4FF",hint:"#8B5CF6",background:"#0D0D0D",inputBackground:"#1A1A1A"},symbols:{prompt:"$",success:"+",error:"-",warning:"?",spinner:["-","\\","|","/"]}};var hy={dark:Sp,minimal:my};function ae(e="dark"){return hy[e]??Sp}o(ae,"getTheme");function l$(){return Object.keys(hy)}o(l$,"getThemeNames");import{jsx as kn,jsxs as cr,Fragment as yD}from"react/jsx-runtime";import{useMemo as zp}from"react";import{jsx as $0}from"react/jsx-runtime";import{createContext as K1,useContext as hs,useEffect as Ya,useMemo as O0,useState as z1,useCallback as N0,useRef as Fp}from"react";import{Stream as C1}from"node:stream";import{openSync as I1,writeSync as C0}from"node:fs";import{performance as v1}from"node:perf_hooks";import{tmpdir as b1}from"node:os";import{join as R1}from"node:path";import gy,{forwardRef as f$,useContext as p$}from"react";import{createContext as u$}from"react";var Wa=u$({isScreenReaderEnabled:!1});import{createContext as d$}from"react";var wp=d$(void 0);var tb=f$(({children:e,backgroundColor:t,"aria-label":n,"aria-hidden":r,"aria-role":i,"aria-state":s,...a},c)=>{let{isScreenReaderEnabled:l}=p$(Wa),u=n?gy.createElement("ink-text",null,n):void 0;if(l&&r)return null;let f=gy.createElement("ink-box",{ref:c,style:{flexWrap:"nowrap",flexDirection:"row",flexGrow:0,flexShrink:1,...a,backgroundColor:t,overflowX:a.overflowX??a.overflow??"visible",overflowY:a.overflowY??a.overflow??"visible"},internal_accessibility:{role:i,state:s}},l&&u?u:e);return t?gy.createElement(wp.Provider,{value:t},f):f});tb.displayName="Box";var ar=tb;import y$,{useContext as nb}from"react";import ja from"chalk";import so from"chalk";var m$=/^rgb\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,h$=/^ansi256\(\s?(\d+)\s?\)$/;function g$(e){return e in so}o(g$,"isNamedColor");function Rr(e,t,n){if(!t)return e;if(g$(t)){let r=so;if(n==="foreground")return r[t]?.(e)??e;let i=`bg${t[0].toUpperCase()+t.slice(1)}`;return r[i]?.(e)??e}if(t.startsWith("#"))return n==="foreground"?so.hex(t)(e):so.bgHex(t)(e);if(t.startsWith("ansi256")){let r=h$.exec(t);if(!r)return e;let i=Number(r[1]);return n==="foreground"?so.ansi256(i)(e):so.bgAnsi256(i)(e)}if(t.startsWith("rgb")){let r=m$.exec(t);if(!r)return e;let i=Number(r[1]),s=Number(r[2]),a=Number(r[3]);return n==="foreground"?so.rgb(i,s,a)(e):so.bgRgb(i,s,a)(e)}return e}o(Rr,"colorize");function bn({color:e,backgroundColor:t,dimColor:n=!1,bold:r=!1,italic:i=!1,underline:s=!1,strikethrough:a=!1,inverse:c=!1,wrap:l="wrap",children:u,"aria-label":f,"aria-hidden":p=!1,internal_cursorAnchor:h=!1}){let{isScreenReaderEnabled:m}=nb(Wa),g=nb(wp),C=m&&f?f:u;if(C==null)return null;let w=o(T=>{let v=T;n&&(v=ja.dim(v)),e&&(v=Rr(v,e,"foreground"));let A=t??g;return A&&(v=Rr(v,A,"background")),r&&(v=ja.bold(v)),i&&(v=ja.italic(v)),s&&(v=ja.underline(v)),a&&(v=ja.strikethrough(v)),c&&(v=ja.inverse(v)),v},"transform");return m&&p?null:y$.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:l},internal_transform:w,...h?{internal_cursorAnchor:!0}:{}},m&&f?f:u)}o(bn,"Text");import S$,{useLayoutEffect as w$,useMemo as rb,useState as x$}from"react";function yy({items:e,children:t,style:n}){let[r,i]=x$(0),s=rb(()=>e.slice(r),[e,r]);w$(()=>{i(e.length)},[e.length]);let a=s.map((l,u)=>t(l,r+u)),c=rb(()=>({position:"absolute",flexDirection:"column",...n}),[n]);return S$.createElement("ink-box",{internal_static:!0,style:c},a)}o(yy,"Static");import ps from"node:process";import w0 from"react";import r1 from"es-toolkit/compat/throttle";import Rn from"ansi-escapes";import Mi from"is-in-ci";import i1 from"auto-bind";import{onExit as o1}from"signal-exit";import s1 from"patch-console";import{LegacyRoot as a1,ConcurrentRoot as c1}from"react-reconciler/constants.js";import l1 from"yoga-layout";import u1 from"wrap-ansi";import d1 from"terminal-size";import T$ from"node:process";var xp=o(()=>T$.env.DEV==="true","isDev");import X$ from"react-reconciler";import{DefaultEventPriority as Y$,NoEventPriority as wb}from"react-reconciler/constants.js";import*as ao from"scheduler";import hb from"yoga-layout";import{createContext as q$}from"react";import N$ from"yoga-layout";import C$ from"widest-line";var ib=new Map,I$=o(e=>{if(e.length===0)return{width:0,height:0};let t=ib.get(e);if(t)return t;let n=C$(e),r=e.split(`
3
3
  `).length,i={width:n,height:r};return ib.set(e,i),i},"measureText"),Sy=I$;import v$ from"wrap-ansi";import b$ from"cli-truncate";var ob={},R$=o((e,t,n)=>{let r=e+String(t)+String(n),i=ob[r];if(i)return i;let s=e;if(n==="wrap"&&(s=v$(e,t,{trim:!1,hard:!0})),n.startsWith("truncate")){let a="end";n==="truncate-middle"&&(a="middle"),n==="truncate-start"&&(a="start"),s=b$(e,t,{position:a})}return ob[r]=s,s},"wrapText"),Tp=R$;var k$=o(e=>{let t=e.codePointAt(0);return t!==void 0&&t>=48&&t<=63},"isCsiParameterCharacter"),E$=o(e=>{let t=e.codePointAt(0);return t!==void 0&&t>=32&&t<=47},"isCsiIntermediateCharacter"),M$=o(e=>{let t=e.codePointAt(0);return t!==void 0&&t>=64&&t<=126},"isCsiFinalCharacter"),cb=o(e=>{let t=e.codePointAt(0);return t!==void 0&&t>=32&&t<=47},"isEscapeIntermediateCharacter"),_$=o(e=>{let t=e.codePointAt(0);return t!==void 0&&t>=48&&t<=126},"isEscapeFinalCharacter"),lb=o(e=>{let t=e.codePointAt(0);return t!==void 0&&t>=128&&t<=159},"isC1ControlCharacter"),sb=o((e,t)=>{let n=t;for(;n<e.length;){let c=e[n];if(!k$(c))break;n++}let r=e.slice(t,n),i=n;for(;n<e.length;){let c=e[n];if(!E$(c))break;n++}let s=e.slice(i,n),a=e[n];if(!(a===void 0||!M$(a)))return{endIndex:n+1,parameterString:r,intermediateString:s,finalCharacter:a}},"readCsiSequence"),ab=o((e,t,n)=>{for(let r=t;r<e.length;r++){let i=e[r];if(n&&i==="\x07"||i==="\x9C")return r+1;if(i==="\x1B"){let s=e[r+1];if(s==="\x1B"){r++;continue}if(s==="\\")return r+2}}},"findControlStringTerminatorIndex"),A$=o((e,t)=>{let n=t;for(;n<e.length;){let s=e[n];if(!cb(s))break;n++}let r=e.slice(t,n),i=e[n];if(!(i===void 0||!_$(i)))return{endIndex:n+1,intermediateString:r,finalCharacter:i}},"readEscapeSequence"),L$=o(e=>{switch(e){case"]":return{type:"osc",allowBellTerminator:!0};case"P":return{type:"dcs",allowBellTerminator:!1};case"^":return{type:"pm",allowBellTerminator:!1};case"_":return{type:"apc",allowBellTerminator:!1};case"X":return{type:"sos",allowBellTerminator:!1};default:return}},"getControlStringFromEscapeIntroducer"),P$=o(e=>{switch(e){case"\x9D":return{type:"osc",allowBellTerminator:!0};case"\x90":return{type:"dcs",allowBellTerminator:!1};case"\x9E":return{type:"pm",allowBellTerminator:!1};case"\x9F":return{type:"apc",allowBellTerminator:!1};case"\x98":return{type:"sos",allowBellTerminator:!1};default:return}},"getControlStringFromC1Introducer"),wy=o(e=>{if(e.includes("\x1B"))return!0;for(let t of e)if(lb(t))return!0;return!1},"hasAnsiControlCharacters"),Ua=o((e,t,n,r)=>(r>n&&e.push({type:"text",value:t.slice(n,r)}),e.push({type:"invalid",value:t.slice(r)}),e),"malformedFromIndex"),ub=o(e=>{if(!wy(e))return[{type:"text",value:e}];let t=[],n=0;for(let r=0;r<e.length;){let i=e[r];if(i===void 0)break;if(i==="\x1B"){let a=e[r+1];if(a===void 0)return Ua(t,e,n,r);if(a==="["){let u=sb(e,r+2);if(u===void 0)return Ua(t,e,n,r);r>n&&t.push({type:"text",value:e.slice(n,r)}),t.push({type:"csi",value:e.slice(r,u.endIndex),parameterString:u.parameterString,intermediateString:u.intermediateString,finalCharacter:u.finalCharacter}),r=u.endIndex,n=r;continue}let c=L$(a);if(c!==void 0){let u=ab(e,r+2,c.allowBellTerminator);if(u===void 0)return Ua(t,e,n,r);r>n&&t.push({type:"text",value:e.slice(n,r)}),t.push({type:c.type,value:e.slice(r,u)}),r=u,n=r;continue}let l=A$(e,r+1);if(l===void 0){if(cb(a))return Ua(t,e,n,r);r>n&&t.push({type:"text",value:e.slice(n,r)}),r++,n=r;continue}r>n&&t.push({type:"text",value:e.slice(n,r)}),t.push({type:"esc",value:e.slice(r,l.endIndex),intermediateString:l.intermediateString,finalCharacter:l.finalCharacter}),r=l.endIndex,n=r;continue}if(i==="\x9B"){let a=sb(e,r+1);if(a===void 0)return Ua(t,e,n,r);r>n&&t.push({type:"text",value:e.slice(n,r)}),t.push({type:"csi",value:e.slice(r,a.endIndex),parameterString:a.parameterString,intermediateString:a.intermediateString,finalCharacter:a.finalCharacter}),r=a.endIndex,n=r;continue}let s=P$(i);if(s!==void 0){let a=ab(e,r+1,s.allowBellTerminator);if(a===void 0)return Ua(t,e,n,r);r>n&&t.push({type:"text",value:e.slice(n,r)}),t.push({type:s.type,value:e.slice(r,a)}),r=a,n=r;continue}if(i==="\x9C"){r>n&&t.push({type:"text",value:e.slice(n,r)}),t.push({type:"st",value:i}),r++,n=r;continue}if(lb(i)){r>n&&t.push({type:"text",value:e.slice(n,r)}),t.push({type:"c1",value:i}),r++,n=r;continue}r++}return n<e.length&&t.push({type:"text",value:e.slice(n)}),t},"tokenizeAnsi");var O$=/^[\d:;]*$/,$$=o(e=>{if(!wy(e))return e;let t="";for(let n of ub(e)){if(n.type==="text"||n.type==="osc"){t+=n.value;continue}n.type==="csi"&&n.finalCharacter==="m"&&n.intermediateString===""&&O$.test(n.parameterString)&&(t+=n.value)}return t},"sanitizeAnsi"),db=$$;var fb=o(e=>{let t="";for(let n=0;n<e.childNodes.length;n++){let r=e.childNodes[n];if(r===void 0)continue;let i="";r.nodeName==="#text"?i=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(i=fb(r)),i.length>0&&typeof r.internal_transform=="function"&&(i=r.internal_transform(i,n))),t+=i}return db(t)},"squashTextNodes"),Jl=fb;var Cp=o(e=>{let t={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:void 0,yogaNode:e==="ink-virtual-text"?void 0:N$.Node.create(),internal_accessibility:{}};return e==="ink-text"&&t.yogaNode?.setMeasureFunc(D$.bind(null,t)),t},"createNode"),Ip=o((e,t)=>{t.parentNode&&Ql(t.parentNode,t),t.parentNode=e,e.childNodes.push(t),t.yogaNode&&e.yogaNode?.insertChild(t.yogaNode,e.yogaNode.getChildCount()),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&vp(e)},"appendChildNode"),xy=o((e,t,n)=>{t.parentNode&&Ql(t.parentNode,t),t.parentNode=e;let r=e.childNodes.indexOf(n);r>=0?(e.childNodes.splice(r,0,t),t.yogaNode&&e.yogaNode?.insertChild(t.yogaNode,r)):(e.childNodes.push(t),t.yogaNode&&e.yogaNode?.insertChild(t.yogaNode,e.yogaNode.getChildCount())),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&vp(e)},"insertBeforeNode"),Ql=o((e,t)=>{t.yogaNode&&t.parentNode?.yogaNode?.removeChild(t.yogaNode),t.parentNode=void 0;let n=e.childNodes.indexOf(t);n>=0&&e.childNodes.splice(n,1),(e.nodeName==="ink-text"||e.nodeName==="ink-virtual-text")&&vp(e)},"removeChildNode"),Ty=o((e,t,n)=>{if(t==="internal_accessibility"){e.internal_accessibility=n;return}e.attributes[t]=n},"setAttribute"),Cy=o((e,t)=>{e.style=t},"setStyle"),pb=o(e=>{let t={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:void 0,style:{}};return Zl(t,e),t},"createTextNode"),D$=o(function(e,t){let n=e.nodeName==="#text"?e.nodeValue:Jl(e),r=Sy(n);if(r.width<=t||r.width>=1&&t>0&&t<1)return r;let i=e.style?.textWrap??"wrap",s=Tp(n,t,i);return Sy(s)},"measureTextNode"),mb=o(e=>{if(e?.parentNode)return e.yogaNode??mb(e.parentNode)},"findClosestYogaNode"),vp=o(e=>{mb(e)?.markDirty()},"markNodeAsDirty"),Zl=o((e,t)=>{typeof t!="string"&&(t=String(t)),e.nodeValue=t,vp(e)},"setTextNodeValue");import Me from"yoga-layout";var F$=o((e,t)=>{"position"in t&&e.setPositionType(t.position==="absolute"?Me.POSITION_TYPE_ABSOLUTE:Me.POSITION_TYPE_RELATIVE),"top"in t&&e.setPosition(Me.EDGE_TOP,t.top??0),"bottom"in t&&e.setPosition(Me.EDGE_BOTTOM,t.bottom??0),"left"in t&&e.setPosition(Me.EDGE_LEFT,t.left??0),"right"in t&&e.setPosition(Me.EDGE_RIGHT,t.right??0)},"applyPositionStyles"),H$=o((e,t)=>{"margin"in t&&e.setMargin(Me.EDGE_ALL,t.margin??0),"marginX"in t&&e.setMargin(Me.EDGE_HORIZONTAL,t.marginX??0),"marginY"in t&&e.setMargin(Me.EDGE_VERTICAL,t.marginY??0),"marginLeft"in t&&e.setMargin(Me.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(Me.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(Me.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(Me.EDGE_BOTTOM,t.marginBottom||0)},"applyMarginStyles"),W$=o((e,t)=>{"padding"in t&&e.setPadding(Me.EDGE_ALL,t.padding??0),"paddingX"in t&&e.setPadding(Me.EDGE_HORIZONTAL,t.paddingX??0),"paddingY"in t&&e.setPadding(Me.EDGE_VERTICAL,t.paddingY??0),"paddingLeft"in t&&e.setPadding(Me.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(Me.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(Me.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(Me.EDGE_BOTTOM,t.paddingBottom||0)},"applyPaddingStyles"),j$=o((e,t)=>{"flexGrow"in t&&e.setFlexGrow(t.flexGrow??0),"flexShrink"in t&&e.setFlexShrink(typeof t.flexShrink=="number"?t.flexShrink:1),"flexWrap"in t&&(t.flexWrap==="nowrap"&&e.setFlexWrap(Me.WRAP_NO_WRAP),t.flexWrap==="wrap"&&e.setFlexWrap(Me.WRAP_WRAP),t.flexWrap==="wrap-reverse"&&e.setFlexWrap(Me.WRAP_WRAP_REVERSE)),"flexDirection"in t&&(t.flexDirection==="row"&&e.setFlexDirection(Me.FLEX_DIRECTION_ROW),t.flexDirection==="row-reverse"&&e.setFlexDirection(Me.FLEX_DIRECTION_ROW_REVERSE),t.flexDirection==="column"&&e.setFlexDirection(Me.FLEX_DIRECTION_COLUMN),t.flexDirection==="column-reverse"&&e.setFlexDirection(Me.FLEX_DIRECTION_COLUMN_REVERSE)),"flexBasis"in t&&(typeof t.flexBasis=="number"?e.setFlexBasis(t.flexBasis):typeof t.flexBasis=="string"?e.setFlexBasisPercent(Number.parseInt(t.flexBasis,10)):e.setFlexBasis(Number.NaN)),"alignItems"in t&&((t.alignItems==="stretch"||!t.alignItems)&&e.setAlignItems(Me.ALIGN_STRETCH),t.alignItems==="flex-start"&&e.setAlignItems(Me.ALIGN_FLEX_START),t.alignItems==="center"&&e.setAlignItems(Me.ALIGN_CENTER),t.alignItems==="flex-end"&&e.setAlignItems(Me.ALIGN_FLEX_END)),"alignSelf"in t&&((t.alignSelf==="auto"||!t.alignSelf)&&e.setAlignSelf(Me.ALIGN_AUTO),t.alignSelf==="flex-start"&&e.setAlignSelf(Me.ALIGN_FLEX_START),t.alignSelf==="center"&&e.setAlignSelf(Me.ALIGN_CENTER),t.alignSelf==="flex-end"&&e.setAlignSelf(Me.ALIGN_FLEX_END)),"justifyContent"in t&&((t.justifyContent==="flex-start"||!t.justifyContent)&&e.setJustifyContent(Me.JUSTIFY_FLEX_START),t.justifyContent==="center"&&e.setJustifyContent(Me.JUSTIFY_CENTER),t.justifyContent==="flex-end"&&e.setJustifyContent(Me.JUSTIFY_FLEX_END),t.justifyContent==="space-between"&&e.setJustifyContent(Me.JUSTIFY_SPACE_BETWEEN),t.justifyContent==="space-around"&&e.setJustifyContent(Me.JUSTIFY_SPACE_AROUND),t.justifyContent==="space-evenly"&&e.setJustifyContent(Me.JUSTIFY_SPACE_EVENLY))},"applyFlexStyles"),U$=o((e,t)=>{"width"in t&&(typeof t.width=="number"?e.setWidth(t.width):typeof t.width=="string"?e.setWidthPercent(Number.parseInt(t.width,10)):e.setWidthAuto()),"height"in t&&(typeof t.height=="number"?e.setHeight(t.height):typeof t.height=="string"?e.setHeightPercent(Number.parseInt(t.height,10)):e.setHeightAuto()),"minWidth"in t&&(typeof t.minWidth=="string"?e.setMinWidthPercent(Number.parseInt(t.minWidth,10)):e.setMinWidth(t.minWidth??0)),"minHeight"in t&&(typeof t.minHeight=="string"?e.setMinHeightPercent(Number.parseInt(t.minHeight,10)):e.setMinHeight(t.minHeight??0))},"applyDimensionStyles"),V$=o((e,t)=>{"display"in t&&e.setDisplay(t.display==="flex"?Me.DISPLAY_FLEX:Me.DISPLAY_NONE)},"applyDisplayStyles"),G$=o((e,t)=>{if("borderStyle"in t){let n=t.borderStyle?1:0;t.borderTop!==!1&&e.setBorder(Me.EDGE_TOP,n),t.borderBottom!==!1&&e.setBorder(Me.EDGE_BOTTOM,n),t.borderLeft!==!1&&e.setBorder(Me.EDGE_LEFT,n),t.borderRight!==!1&&e.setBorder(Me.EDGE_RIGHT,n)}},"applyBorderStyles"),K$=o((e,t)=>{"gap"in t&&e.setGap(Me.GUTTER_ALL,t.gap??0),"columnGap"in t&&e.setGap(Me.GUTTER_COLUMN,t.columnGap??0),"rowGap"in t&&e.setGap(Me.GUTTER_ROW,t.rowGap??0)},"applyGapStyles"),z$=o((e,t={})=>{F$(e,t),H$(e,t),W$(e,t),j$(e,t),U$(e,t),V$(e,t),G$(e,t),K$(e,t)},"styles"),Iy=z$;if(xp())try{await import("./devtools-CD6KSIHE.js")}catch(e){if(e.code==="ERR_MODULE_NOT_FOUND")console.warn(`
4
4
  The environment variable DEV is set to true, so Ink tried to import \`react-devtools-core\`,
5
5
  but this failed as it was not installed. Debugging with React Devtools requires it.
@@ -162,7 +162,7 @@ $ npm install --save-dev react-devtools-core
162
162
  [Interrupted]`}),r}o(ZV,"buildInterruptedPersistenceItems");function Mx({thinking:e,response:t,toolCalls:n,toolNames:r}){let i=[],s=e?.trim()??"",a=t?.trim()??"",c=n&&n.length>0?[...n]:[],l=r&&r.length>0?[...r]:[];return s&&i.push({type:"thinking",text:s}),c.length>0?i.push({type:"tool_group",tools:c}):!s&&!a&&l.length>0&&i.push({type:"info",icon:"*",text:`Tools: ${l.join(", ")}`}),a&&i.push({type:"assistant",text:a}),i}o(Mx,"buildRoundHistoryItems");var eG=20,tG="Session ended before the tool completed.";function nG(e){switch(e.status){case z.Success:return{status:"success"};case z.Error:return{status:"error"};case z.Cancelled:return{status:"cancelled"};case z.AwaitingApproval:case z.Scheduled:case z.Validating:case z.Executing:return{status:"cancelled",error:tG};default:return e.status}}o(nG,"toPersistedToolStatus");function rG(e){if(!e.id||!e.name)return;let t=nG(e),n=t.status==="success"?sy(e.output):void 0,r=t.status==="error"||t.status==="cancelled"?oy(e.error??sy(e.output)??t.error??""):void 0,i=bv(e.input);return{id:e.id,name:e.name,status:t.status,...i?{input:i}:{},...typeof e.preview=="string"&&e.preview.trim().length>0?{preview:oy(e.preview.trim(),500)}:{},...n&&n.trim().length>0?{output:n}:{},...r&&r.trim().length>0?{error:r}:{},...typeof e.startTime=="number"?{startTime:e.startTime}:{},...typeof e.endTime=="number"?{endTime:e.endTime}:{}}}o(rG,"toPersistedToolCall");function iG(e){let t=e.tools.slice(0,eG).map(rG).filter(r=>!!r),n=_x(e);return t.length>0?{type:"tool_group",tools:t,...n===void 0?{}:{timestamp:n}}:void 0}o(iG,"toPersistedToolGroup");function _x(e){return e.timestamp!==void 0&&Number.isFinite(e.timestamp)&&e.timestamp>=0?e.timestamp:void 0}o(_x,"persistedHistoryTimestamp");function JL(e){if(e.type==="tool_group")return iG(e);let t="text"in e&&typeof e.text=="string"?e.text.trimEnd():"";if(!t)return;if(e.type==="sidecar"){let s=e.delivery==="budget-exhausted"?"budget-exhausted":e.verdict??"revise",a=_x(e);return{type:"sidecar",text:t,icon:s,...a===void 0?{}:{timestamp:a}}}let n="icon"in e&&typeof e.icon=="string"&&e.icon.length>0?e.icon:void 0,r="compactText"in e&&typeof e.compactText=="string"&&e.compactText.length>0?e.compactText.trimEnd():void 0,i=_x(e);return{type:e.type,text:t,...i===void 0?{}:{timestamp:i},...n?{icon:n}:{},...r?{compactText:r}:{}}}o(JL,"toPersistedUiHistoryItem");var zL=process.env.KODAX_TRANSCRIPT_HARNESS_MARKERS==="1",oG=process.env.KODAX_SCROLL_OVERSCAN==="1"?80:void 0;function XL(e){return Zr(e.map(t=>JL(t)).filter(t=>!!t))}o(XL,"serializeUiHistorySnapshot");function sG(e){return e.map(t=>JL(t)).filter(t=>!!t)}o(sG,"serializeCreatableHistoryItems");function Gh(e,t){return t.length===0?Zr(e):Zr([...e,...sG(t)])}o(Gh,"appendPersistedUiHistorySnapshot");function ud(e,t,n){console.log((e==="block"?yt.red:yt.yellow)(t)),n.forEach(r=>console.log(yt.dim(r)))}o(ud,"logSessionTransitionGuard");var kx=o(({config:e,sessionId:t,workingDir:n,compactionInfo:r})=>{let i=ae("dark"),s=e.model??jr(e.provider)??e.provider,a=Zi({provider:e.provider,model:e.model,effort:e.effort,effortOverride:e.effortOverride,thinking:e.thinking,reasoningMode:e.reasoningMode}),c=r?Math.round(r.contextWindow/1e3):0,l=r?Ru(r.contextWindow,r.triggerPercent,r.triggerTokens):void 0;return _n(M,{flexDirection:"column",marginBottom:1,children:[Fw.map((u,f)=>pe(b,{color:i.colors.primary,children:u},f)),_n(M,{children:[pe(b,{color:i.colors.primary,children:" \u258E "}),pe(b,{color:i.colors.primary,children:"AI Coding Agent \xB7 Minimalist & Intelligent"})]}),_n(M,{children:[pe(b,{color:i.colors.success,children:" \u258E "}),_n(b,{bold:!0,color:i.colors.text,children:["v",Jo]}),pe(b,{dimColor:!0,children:" \xB7 "}),_n(b,{color:i.colors.success,children:[e.provider,"/",s]}),pe(b,{dimColor:!0,children:` \xB7 effort:${a}`}),pe(b,{dimColor:!0,children:" \xB7 "}),pe(b,{color:i.colors.primary,children:e.agentMode.toUpperCase()}),pe(b,{dimColor:!0,children:" / "}),pe(b,{color:i.colors.accent,children:e.permissionMode})]}),r&&_n(M,{children:[pe(b,{color:i.colors.accent,children:" \u258E "}),pe(b,{color:i.colors.text,children:`ctx ${c}k \xB7 compaction `}),pe(b,{color:r.enabled?i.colors.success:i.colors.text,children:r.enabled?"on":"off"}),pe(b,{color:i.colors.text,children:` \xB7 ${l}`})]}),_n(M,{children:[pe(b,{color:i.colors.secondary,children:" \u258E "}),pe(b,{color:i.colors.text,children:"session "}),pe(b,{color:i.colors.primary,children:t}),pe(b,{color:i.colors.text,children:" \xB7 "}),pe(b,{color:i.colors.text,children:n})]})]})},"Banner");function aG(e){let t=e.config.model??jr(e.config.provider)??e.config.provider,n=Zi({provider:e.config.provider,model:e.config.model,effort:e.config.effort,effortOverride:e.config.effortOverride,thinking:e.config.thinking,reasoningMode:e.config.reasoningMode}),r=e.compactionInfo?Math.round(e.compactionInfo.contextWindow/1e3):0,i=e.compactionInfo?Ru(e.compactionInfo.contextWindow,e.compactionInfo.triggerPercent,e.compactionInfo.triggerTokens):void 0,s=" \u258E AI Coding Agent \xB7 Minimalist & Intelligent",a=` \u258E v${Jo} \xB7 ${e.config.provider}/${t} \xB7 effort:${n} \xB7 ${e.config.agentMode.toUpperCase()} / ${e.config.permissionMode}`,c=e.compactionInfo?` \u258E ctx ${r}k \xB7 compaction ${e.compactionInfo.enabled?"on":"off"} \xB7 ${i}`:void 0,l=` \u258E session ${e.sessionId} \xB7 ${e.workingDir}`,u=[],f=o(h=>{let m=xn(h.length>0?h.split(`
163
163
  `):[""],Math.max(1,e.terminalWidth),0,0);return m.visualLines.length>0?m.visualLines:[""]},"wrapBannerLine"),p=o((h,m,g)=>{f(m).forEach((C,w)=>{u.push({key:`${h}-${w}`,text:C,...g})})},"pushLineRows");return Fw.forEach((h,m)=>{p(`banner-logo-${m}`,h,{color:"primary"})}),p("banner-tagline",s,{color:"primary"}),p("banner-version",a,{color:"text",bold:!0}),c&&p("banner-compaction",c,{color:"text"}),p("banner-session",l,{color:"text"}),u.push({key:"banner-blank",text:" "}),{key:"banner",rows:u}}o(aG,"buildBannerTranscriptSection");function YL(e,t){return t?{...e,sections:[t,...e.sections],rows:[...t.rows,...e.rows]}:e}o(YL,"prependTranscriptSection");var cG=process.env.KODAX_INLINE_LEDGER!=="0";function qL(e,t){process.env.KODAX_INLINE_LEDGER_DEBUG==="1"&&ft({source:"repl:inline-ledger",level:"debug",message:`${e}; rebuilding on next change.`,...t!==void 0?{detail:t}:{}})}o(qL,"reportInlineLedgerFailure");var lG=o(({options:e,config:t,context:n,startupRuntimeInfo:r,storage:i,autoModeSettings:s,rendererMode:a,fullscreenPolicy:c,onExit:l,compactionInfo:u,autoModeBootstrap:f,setAutoModeAskUser:p,setAutoModeEngineChange:h,setCurrentConfigRef:m,teamModeHandle:g})=>{let{exit:C}=Yr(),{stdout:w}=Xr(),T=w.rows??24,{stdin:v,setRawMode:A,isRawModeSupported:D}=lu(),k=tc(),{history:E}=fc(),P=HL.useRef(null),B=HL.useRef(LI()),{addHistoryItem:$,addHistoryItems:G,clearHistory:re,setSessionId:X}=pc(),y=Se(E),_=Se(XL(E));He(()=>{y.current=E,_.current=XL(E)},[E]),He(()=>{P_()},[]),He(()=>{Uv()},[]);let ee=w.columns||80,W=gc(),le=Se(W);He(()=>{le.current=W},[W]);let{startStreaming:de,stopStreaming:he,abort:_e,startThinking:fe,appendThinkingChars:Te,appendThinkingContent:Pe,stopThinking:te,clearThinkingContent:oe,setCurrentTool:Ie,appendToolInputChars:nt,appendToolInputContent:vt,clearToolInputContent:Ke,clearResponse:Ve,appendResponse:me,getSignal:Re,getFullResponse:K,getThinkingContent:We,startNewIteration:St,clearIterationHistory:Vt,startCompacting:Xe,stopCompacting:_t,setMaxIter:Qt,addPendingInput:qn,removeLastPendingInput:pn,shiftPendingInput:L,consumePendingInputs:V}=yc(),[H,ne]=Ge(!1),[F,Ae]=Ge(t),ve=we(()=>Qo({provider:F.provider,model:F.model,effort:F.effort,effortOverride:F.effortOverride,permissionMode:F.permissionMode,planModeEffort:F.planModeEffort,thinking:F.thinking,reasoningMode:F.reasoningMode}),[F.provider,F.model,F.effort,F.effortOverride,F.permissionMode,F.planModeEffort,F.thinking,F.reasoningMode]),ke=ve.configuredEffort,At=ve.runtimeEffort,Gt=we(()=>({...F,effort:ke}),[F,ke]),mn=we(()=>yL(u,{provider:F.provider,model:F.model},Ko),[u,F.provider,F.model]),[si,Dt]=Ge(!0),[mr,lT]=Ge(!0),[Td,Cd]=Ge(0),[ng,Qc]=Ge(!1),[uT,dT]=Ge(void 0),[fT,Id]=Ge([]),pT=Se(!1),rg=q(()=>{pT.current=!0,Id(vv)},[]),[mT,hr]=Ge(null),Zc=Se(!1),uO=we(()=>ro(),[]),el=Se(null),vd=Se(null),ig=Se(Promise.resolve()),bd=Se(null),Po=Se({requested:!1,uiHistoryOverride:void 0}),Fs=Se(null),tl=Se(!1),nl=Se(null);He(()=>{let d=e.learning;if(!d)return;let S=!0,x,I=o(async()=>{let N=await d.getSnapshot();return S&&dT(j=>j!==void 0&&j.revision>N.revision?j:N),N},"refresh"),R=o(N=>{ft({source:"repl:learning",level:"warn",message:"Failed to refresh the Learning Center snapshot.",detail:N instanceof Error?N.message:String(N)})},"reportRefreshFailure"),O=o(N=>{if(S){if(N.kind==="ready"||N.kind==="activated"||N.kind==="attention"){let j=N.kind==="ready"?"is ready for review":N.kind==="activated"?"became active":"requires attention";Id(Z=>[{id:N.eventId,text:`A learned ${N.carrier} ${j}: ${N.displayName} [/learn]`,tone:N.kind==="activated"?"accent":"warning"},...Z.filter(J=>J.id!==N.eventId)].slice(0,2))}I().catch(R)}},"onEvent");return I().then(N=>{if(!S)return;let j=Zf(N);if(j&&!pT.current){let Z=N.attention>0||N.ready>0?"warning":"accent";Id(J=>[{id:"learning-recovery",text:j,tone:Z},...J.filter($e=>$e.id!=="learning-recovery")].slice(0,2))}x=d.subscribe(O,{afterRevision:N.revision})}).catch(R),()=>{S=!1,x?.close()}},[e.learning]);let[rl,Rd]=Ge(!0),[og,kd]=Ge(""),[ze,Lr]=Ge(()=>F_(uO,{rendererMode:a})),[Kt,sg]=Ge(!1),[dO,fO]=Ge(0),{scrollRef:pO,scrollOffset:gr,sticky:ag,setScrollOffset:mO,handleScrollTopChange:hO,handleStickyChange:gO,scrollTo:Ed,scrollBy:Md,scrollToBottom:_d}=rL(),cg=Se(null),Ad=Se(null),il=Se([]),Ld=Se([]),Hs=Se(null),yr=Se(null),hT=Se({time:0,row:-1,column:-1,count:0}),[Pd,lg]=Ge(void 0),[ai,ug]=Ge(void 0),[Ws,gT]=Ge(void 0),[Pn,yO]=Ge(()=>new Set),[dg,yT]=Ge(null),[an,ST]=Ge(null),[Q,Od]=Ge(null),[wT,js]=Ge(null),[fg,xT]=Ge(null),ol=Se(null),sl=q(d=>{ol.current=d,xT(d)},[]),al=q(d=>{let S=d(ol.current);ol.current=S,xT(S)},[]),cl=q((d,S)=>{let x=ol.current;return x?.status!=="running"||!Ak(d,x.runId)?!1:(sl({...x,message:S}),!0)},[sl]),pg=q(d=>{if(d.status==="running"){sl({runId:d.runId,workflow:d.workflow,status:d.status,...d.phase!==void 0?{phase:d.phase}:{},...d.phaseIndex!==void 0?{phaseIndex:d.phaseIndex}:{},...d.phaseTotal!==void 0?{phaseTotal:d.phaseTotal}:{},...d.startedAt!==void 0?{startedAt:d.startedAt}:{},...d.elapsedMs!==void 0?{elapsedMs:d.elapsedMs}:{},activeAgents:d.activeAgents,totalSpawned:d.totalSpawned,...d.plannedAgents!==void 0?{plannedAgents:d.plannedAgents}:{},...d.agentCap!==void 0?{agentCap:d.agentCap}:{},...d.tokenBudgetSpent!==void 0?{tokenBudgetSpent:d.tokenBudgetSpent}:{},...d.tokenBudgetTotal!==void 0?{tokenBudgetTotal:d.tokenBudgetTotal}:{},completedAgents:d.completedAgents,failedAgents:d.failedAgents,stoppedAgents:d.stoppedAgents,...d.message!==void 0?{message:d.message}:{},...d.locale!==void 0?{locale:d.locale}:{}});return}al(S=>S?.runId===d.runId?null:S)},[sl,al]),SO=q(d=>{let S=d.type==="workflow_updated"?d.message:void 0,x=Gl(d.snapshot.goal,d.snapshot.workflowName,d.snapshot.displayName,d.snapshot.latestMessage,S);pg(Ov(d.snapshot,S===void 0?{locale:x}:{locale:x,message:S}))},[pg]),[$d,ci]=Ge([]),Us=we(()=>{for(let d of $d)if(d.status==="in_progress"){if(d.activeForm&&d.activeForm.length>0)return d.activeForm;if(d.subject&&d.subject.length>0)return d.subject}},[$d]),[NK,ll]=Ge([]),[ul,wO]=Ge([]),[Nd,kt]=Ge(void 0),[Oo,dl]=Ge(void 0),gt=Se(null),Dd=Se(null),$o=Se([]),Vs=Se([]),hn=Se([]),Bd=Se(!1),mg=Se(new Set),st=Se({}),ut=Se({activeToolGroupTools:[]}),No=Se(Xg()),Do=Se({}),TT=Se(0),fl=Se({itemId:void 0,kind:"thinking",pendingText:""}),Sr=Se(null),xO=80,TO=20,CO=Se(null),pl=we(()=>[...E,...ul],[E,ul]),hg=we(()=>{let d=HR(pl,CO,UR(pl));return d===0?pl:pl.slice(d)},[pl]),Fd=we(()=>WR(hg,TO),[hg]),Gs=hg,cn=Se(null),Pr=Se(null),Or=Se([]),ln=Se([]),[Bo,IO]=Ge([]),li=Se([]),[gg,vO]=Ge([]),ml=Se([]),Jn=q(d=>{li.current=d,IO(d)},[]),Ks=q(d=>{ml.current=d,vO(d)},[]),yg=q(()=>{Ks([])},[Ks]),CT=q(d=>{if(!Bu(d))return!1;let S=FS(d),x=ml.current.filter(I=>I.id!==S);return x.length===ml.current.length||Ks(x),!0},[Ks]),Qn=q((d,S,x,I)=>{if(!Bu(d))return!1;let R=FS(d),O=ml.current.find(Fe=>Fe.id===R);if(I?.skipIfExisting&&O?.kind===S||Nk(O?.kind,S))return!0;let N=I?.append&&O?.kind===S?`${O.detail}${x}`:x||O?.detail||"running",j={id:R,label:Pk(d),source:Ok(d),status:"running",kind:S,detail:BS(N),startedAt:O?.startedAt??Date.now()},Z=ml.current,J=Z.findIndex(Fe=>Fe.id===R),$e=J>=0?Z.map((Fe,rn)=>rn===J?j:Fe):[...Z,j].slice(0,VV);return Ks($e),!0},[Ks]),IT=q(d=>{$o.current=d,ll(d)},[]),zs=q(d=>{hn.current=d,wO(d)},[]),Hd=q(d=>{let S=d([...hn.current]);zs(S)},[zs]),vT=q(d=>{d.length!==0&&zs([...hn.current,...d])},[zs]),Wd=q(d=>{let S=ut.current,x=S.activeToolGroupTools.some(I=>I.status===z.Executing);ut.current={...d?.clearOwner?{}:{workerId:S.workerId,workerTitle:S.workerTitle},...x?{activeToolGroupItemId:S.activeToolGroupItemId,activeToolGroupTools:S.activeToolGroupTools}:{activeToolGroupTools:[]}},d?.clearOwner&&(st.current={})},[]),jd=q(d=>{for(let S of d)S.type==="user"&&typeof S.id=="string"&&mg.current.add(S.id)},[]),hl=q(()=>{fl.current={itemId:void 0,kind:"thinking",pendingText:""},Sr.current&&(clearTimeout(Sr.current),Sr.current=null);let d=AS(hn.current,mg.current);if(d.length>0){for(let S of d)mg.current.add(S.id);Fs.current?.(d.map(S=>Ao(S)))}Wd({clearOwner:!0}),zs([])},[Wd,zs]),Ud=q(d=>(TT.current+=1,`managed-foreground-${d}-${TT.current}`),[]),Zt=q(d=>(vT([d]),d.id),[vT]),On=q((d,S)=>{st.current.workerId?Zt({id:`${S}-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,type:d.type,text:d.text,...d.icon?{icon:d.icon}:{},...d.tightSpacing?{tightSpacing:!0}:{},timestamp:Date.now()}):$(d)},[$,Zt]),bT=q((d,S)=>{let x=Date.now();st.current.workerId?Zt({id:`${S}-${x}-${Math.random().toString(36).slice(2,7)}`,type:"sidecar",text:d.text,...d.verdict?{verdict:d.verdict}:{},...d.delivery?{delivery:d.delivery}:{},timestamp:x}):$(d)},[$,Zt]),ui=q((d,S)=>{if(!d)return;let x;return Hd(I=>I.map(R=>R.id!==d?R:(x=S(R),x))),x},[Hd]),Xs=q((d,S)=>{let x=ut.current;if(x.activeKind===d){if(d==="thinking"&&x.activeThinkingItemId)return x.activeThinkingItemId;if(d==="assistant"&&x.activeAssistantItemId)return x.activeAssistantItemId;if(d==="tool_group"&&x.activeToolGroupItemId)return x.activeToolGroupItemId}let I=Date.now(),R=S?.trim()?`[${S.trim()}] `:"",O=x.activeToolGroupTools.some(j=>j.status===z.Executing);if(d==="thinking"){let j=Zt({id:Ud("thinking"),type:"thinking",timestamp:I,text:R});return ut.current={...ut.current,activeKind:"thinking",activeThinkingItemId:j,currentTurnThinkingItemId:j,activeAssistantItemId:void 0,...O?{}:{activeToolGroupItemId:void 0,activeToolGroupTools:[]}},j}if(d==="assistant"){let j=Zt({id:Ud("assistant"),type:"assistant",timestamp:I,text:R});return ut.current={...ut.current,activeKind:"assistant",activeThinkingItemId:void 0,activeAssistantItemId:j,...O?{}:{activeToolGroupItemId:void 0,activeToolGroupTools:[]}},j}let N=Zt({id:Ud("tool_group"),type:"tool_group",timestamp:I,tools:[]});return ut.current={...ut.current,activeKind:"tool_group",activeThinkingItemId:void 0,activeAssistantItemId:void 0,activeToolGroupItemId:N,activeToolGroupTools:[]},N},[Zt,Ud]),$n=q(()=>{Sr.current&&(clearTimeout(Sr.current),Sr.current=null);let d=fl.current;if(!d.pendingText||!d.itemId)return;let S=d.pendingText,x=d.itemId,I=d.kind;d.pendingText="",ui(x,R=>R.type!==I?R:{...R,text:`${R.text}${S}`})},[ui]),RT=q(()=>{Sr.current||(Sr.current=setTimeout($n,xO))},[$n]),Sg=q((d,S)=>{if(!S)return;let x=ut.current;if(d==="assistant"&&!YV(S,x.activeKind==="assistant"&&!!x.activeAssistantItemId))return;let I=x.workerTitle,R=Xs(d,I),O=fl.current;O.itemId===R&&O.kind===d?O.pendingText+=S:($n(),O.itemId=R,O.kind=d,O.pendingText=S),RT()},[Xs,$n,RT]),kT=q(d=>{No.current=JV(No.current,d,S=>{if(st.current.workerId){$n();let R=Do.current;d.mode==="replace"&&Hd(N=>qV(N,[R.assistantItemId,R.thinkingItemId],d.mode));let O=ut.current;ut.current={...O,activeKind:O.activeKind==="tool_group"?"tool_group":void 0,activeAssistantItemId:void 0,activeThinkingItemId:void 0,currentTurnThinkingItemId:void 0},fl.current={itemId:void 0,kind:"thinking",pendingText:""},Do.current={providerRequestId:d.providerRequestId};return}Ve(),oe();let x=Yg(S,"assistant"),I=Yg(S,"thinking");x&&me(x),I&&(fe(),Te(I.length),Pe(I))})},[me,Te,Pe,Ve,oe,$n,Hd,fe]),ET=q(d=>{let S=d.trim();if(!S)return;let x=fl.current;x.kind==="thinking"&&x.pendingText&&(x.pendingText="",Sr.current&&(clearTimeout(Sr.current),Sr.current=null));let I=ut.current.workerTitle?.trim(),R=I?`[${I}] ${S}`:S,O=ut.current.currentTurnThinkingItemId;if(O){ui(O,j=>j.type==="thinking"?{...j,text:R}:j);return}let N=Xs("thinking",ut.current.workerTitle);ui(N,j=>j.type==="thinking"?{...j,text:R}:j)},[Xs,ui]),wr=q(d=>{$n();let S=ut.current;if(S.activeToolGroupItemId&&S.activeToolGroupTools.some(N=>N.id===d.id)){let N=S.activeToolGroupTools.map(Z=>Z.id===d.id?d:Z),j=N.every(Z=>Z.status===z.Success||Z.status===z.Error||Z.status===z.Cancelled);ut.current={...S,...j?{activeToolGroupItemId:void 0,activeToolGroupTools:[]}:{activeToolGroupTools:N}},ui(S.activeToolGroupItemId,Z=>Z.type==="tool_group"?{...Z,tools:N}:Z);return}let x=hn.current;for(let N=x.length-1;N>=0;N-=1){let j=x[N];if(j.type!=="tool_group"||!j.tools.some(J=>J.id===d.id))continue;let Z=j.tools.map(J=>J.id===d.id?d:J);ui(j.id,J=>J.type==="tool_group"?{...J,tools:Z}:J);return}let I=Xs("tool_group",S.workerTitle),O=S.activeKind==="tool_group"&&S.activeToolGroupItemId===I?S.activeToolGroupTools.some(N=>N.id===d.id)?S.activeToolGroupTools.map(N=>N.id===d.id?d:N):[...S.activeToolGroupTools,d]:[d];ut.current={...ut.current,activeKind:"tool_group",activeToolGroupItemId:I,activeToolGroupTools:O},ui(I,N=>N.type==="tool_group"?{...N,tools:O}:N)},[Xs,ui,$n]),bO=q(d=>{$n();let S=ut.current,x=S.activeToolGroupTools.some(O=>O.status===z.Executing),I=li.current.filter(O=>O.status===z.Executing),R=new Set(I.map(O=>O.id));ut.current={workerId:d?.workerId,workerTitle:d?.workerTitle,...x?{activeToolGroupItemId:S.activeToolGroupItemId,activeToolGroupTools:S.activeToolGroupTools}:{activeToolGroupTools:[]}},st.current={workerId:d?.workerId,workerTitle:d?.workerTitle},Or.current=[],ln.current=ln.current.filter(O=>R.has(O.id)),Jn(I),Ke(),Ie(void 0),te(),oe(),Ve(),kt(void 0)},[$n,Ke,Ve,oe,Ie,Jn,kt,te]),RO=q(d=>{if(d.length===0)return[];let S=[],x=[...$o.current],I=[...Vs.current];for(let R of d){let O=R.item,N=x.findIndex(j=>j.id===O.id);if(N>=0){let j=x[N];kh(j,O)||(x=x.map((Z,J)=>J===N?{...O,timestamp:j.timestamp}:Z))}else x=[...x,O].slice(-12),S.push(O);if(R.persistToHistory){let j=I.findIndex(Z=>Z.id===O.id);if(j>=0){let Z=I[j];kh(Z,O)||(I=I.map((J,$e)=>$e===j?{...O,timestamp:Z.timestamp}:J))}else I=[...I,O].slice(-48)}}return Vs.current=I,(S.length>0||x.some((R,O)=>!kh(R,$o.current[O]??R)||R.id!==$o.current[O]?.id))&&IT(x),S},[IT]),Vd=q(d=>{if(ln.current.findIndex(x=>x.id===d.id)===-1){ln.current=[...ln.current,d];return}ln.current=ln.current.map(x=>x.id===d.id?d:x)},[]),ji=q(d=>{let S=li.current.filter(x=>x.status===z.Executing);if(S.length!==0){if(d){let x=Dw(d);for(let I=S.length-1;I>=0;I-=1){let R=S[I];if(Dw(R.name)===x)return R}}return S[S.length-1]}},[]),Ys=q(()=>{let d=ji();Ie(d?Nw(d.name):void 0)},[ji,Ie]),MT=q(d=>(Vd(d),Jn([...li.current.filter(S=>S.id!==d.id),d]),Ys(),d),[Jn,Ys,Vd]),qs=q((d,S)=>{let x=li.current.find(R=>R.id===d);if(!x)return null;let I=S(x);return Vd(I),Jn(li.current.map(R=>R.id===d?I:R)),Ys(),I},[Jn,Ys,Vd]),_T=q((d,S,x)=>{if(d){let R=qs(d,x);if(R)return R}let I=ji(S);return I?qs(I.id,x):null},[ji,qs]),Gd=q((d,S,x,I,R)=>{let O=d??ji(R)?.id;return O?qs(O,N=>({...N,status:S,endTime:Date.now(),error:x,output:I})):null},[ji,qs]),gl=q((d,S)=>{let x=Date.now(),I=new Map;for(let R of li.current){if(R.status!==z.Executing)continue;let O=S(R);I.set(R.id,{...R,status:d,endTime:x,...O})}return I.size===0?[]:(ln.current=ln.current.map(R=>I.get(R.id)??R),Jn(li.current.map(R=>I.get(R.id)??R)),Ys(),[...I.values()])},[Jn,Ys]),Ui=q(()=>{Jn([])},[Jn]),{showHelp:AT,toggleHelp:kO,setShowHelp:LT}=jw(),EO=q(d=>{kd(d),Rd(d.trim().length===0)},[]),Kd=mo(),PT=we(()=>Kd?Kd.state.visible&&Kd.suggestions.length>0:!1,[Kd]),[yl,OT]=Ge(!1),$T=Se(Td),Fo=q(()=>{cn.current&&(clearTimeout(cn.current),cn.current=null),Pr.current&&(clearTimeout(Pr.current),Pr.current=null)},[]);He(()=>{PT&&!yl&&OT(!0)},[PT,yl]),He(()=>{Td!==$T.current&&($T.current=Td,yl&&OT(!1))},[Td,yl]);let[Ye,Js]=Ge(null),Zn=Se(null),MO=Se(s_()),[je,Nn]=Ge(null),$r=Se(null),zd=Se(je);zd.current=je;let[gn,Qs]=Ge(""),[Xd,xr]=Ge(0),wg=Se(""),Sl=Se(void 0),NT=we(()=>{if(!mn)return;let{contextWindow:d,triggerPercent:S,triggerTokens:x,reservedResponseTokens:I}=mn;return{currentTokens:mT??n.contextTokenSnapshot?.currentTokens??zo(n.messages),contextWindow:d,triggerPercent:S,triggerTokens:x,reservedResponseTokens:I}},[n.messages,n.contextTokenSnapshot,mn,mT]),wl=we(()=>{if(!Ye)return;let d=new Set(Ye.runtimeGrantSuggestions?.map(I=>I.kind)??[]);if(d.has("persistent"))return ie("confirm.instruction.runtime_persistent");if(d.has("session"))return ie("confirm.instruction.runtime_session");if(Ye.runtimeGrantSuggestions!==void 0)return ie("confirm.instruction.basic");let S=!!Ye.input._alwaysConfirm,x=F.permissionMode==="accept-edits"&&!S;return S?ie("confirm.instruction.protected"):x?ie("confirm.instruction.always"):ie("confirm.instruction.basic")},[Ye,F.permissionMode]),wt=ze.searchMode==="history",ue=ze.surface==="transcript",Nr=!!Ye||!!je||wt,Bt=ue?Kt?ER:1e3:12,Vi=NL(c,ze.surface),DT=Vi.shellMode,xg=Vi.usesAlternateScreenShell,Ho=Vi.usesRendererViewportShell,Yd=Vi.usesRendererMouseTracking,BT=Vi.usesManagedMouseClicks,FT=Vi.usesManagedMouseWheel,Tg=Vi.usesManagedSelection,Ft=DL(c,ze.surface,Y_(ze)),HT=q_(ze),qd=yl&&!ue,WT=q(()=>Tx({items:Gs,managedLiveEvents:[],isLoading:H,isThinking:W.isThinking,thinkingCharCount:W.thinkingCharCount,thinkingContent:W.thinkingContent,currentResponse:W.currentResponse,currentTool:W.currentTool,activeToolCalls:Bo,toolInputCharCount:W.toolInputCharCount,toolInputContent:W.toolInputContent,lastLiveActivityLabel:Nd,workStripText:Oo,iterationHistory:W.iterationHistory,currentIteration:W.currentIteration,isCompacting:W.isCompacting}),[Gs,H,W.isThinking,W.thinkingCharCount,W.thinkingContent,W.currentResponse,W.currentTool,Bo,W.toolInputCharCount,W.toolInputContent,Nd,Oo,W.iterationHistory,W.currentIteration,W.isCompacting]);He(()=>{if(ue){yT(d=>d??WT());return}yT(null)},[WT,ue]);let xl=we(()=>LL({isTranscriptMode:ue,snapshot:dg,currentItemsLength:Gs.length,currentManagedLiveEventsLength:0,isLoading:H,currentResponse:W.currentResponse,thinkingContent:W.thinkingContent,activeToolCallsLength:Bo.length}),[Bo.length,H,ue,Gs.length,W.currentResponse,W.thinkingContent,dg]),en=ue?dg:null,Cg=we(()=>OL(Fd),[Fd]),_O=we(()=>!!(ul.length>0||KL(Q)),[ul.length,Q]),Jd=ul.length>0,un=c.streamingPreview&&_O,Zs=we(()=>PL({surface:"transcript",snapshot:en,promptItems:Fd,transcriptItems:Gs}),[en,Fd,Gs]),Tl=we(()=>{if(!ue||Kt)return Zs;let d=jR(Zs,FR);if(d.length===Zs.length)return Zs;let S=Zs.length-d.length;return[KR(S,d[0]?.timestamp),...d]},[Zs,ue,Kt]),xt=en?.isLoading??H,dt=c.streamingPreview?{isThinking:un?!1:W.isThinking,thinkingCharCount:un?0:W.thinkingCharCount,thinkingContent:un?"":W.thinkingContent,currentResponse:un?"":W.currentResponse,currentTool:un?void 0:W.currentTool,activeToolCalls:un?[]:Bo,toolInputCharCount:0,toolInputContent:"",managedLiveEvents:[],lastLiveActivityLabel:un?Nd:void 0,iterationHistory:[],currentIteration:W.currentIteration,isCompacting:!1}:{isThinking:!1,thinkingCharCount:0,thinkingContent:"",currentResponse:"",currentTool:void 0,activeToolCalls:[],toolInputCharCount:0,toolInputContent:"",managedLiveEvents:[],lastLiveActivityLabel:void 0,iterationHistory:[],currentIteration:W.currentIteration,isCompacting:!1},Ee=c.streamingPreview?{isThinking:un?!1:en?.isThinking??W.isThinking,thinkingCharCount:un?0:en?.thinkingCharCount??W.thinkingCharCount,thinkingContent:un?"":en?.thinkingContent??W.thinkingContent,currentResponse:un?"":en?.currentResponse??W.currentResponse,currentTool:un?void 0:en?.currentTool??W.currentTool,activeToolCalls:un?[]:en?.activeToolCalls??Bo,toolInputCharCount:un?0:en?.toolInputCharCount??W.toolInputCharCount,toolInputContent:un?"":en?.toolInputContent??W.toolInputContent,managedLiveEvents:[],lastLiveActivityLabel:en?.lastLiveActivityLabel??Nd,iterationHistory:un?[]:en?.iterationHistory??W.iterationHistory,currentIteration:en?.currentIteration??W.currentIteration,isCompacting:en?.isCompacting??W.isCompacting}:{isThinking:!1,thinkingCharCount:0,thinkingContent:"",currentResponse:"",currentTool:void 0,activeToolCalls:[],toolInputCharCount:0,toolInputContent:"",managedLiveEvents:[],lastLiveActivityLabel:void 0,iterationHistory:[],currentIteration:en?.currentIteration??W.currentIteration,isCompacting:!1},di=ue?ai:Pd,jT=!!Pd,UT=q(()=>Tx({items:Cg,managedLiveEvents:[],isLoading:H,isThinking:dt.isThinking,thinkingCharCount:dt.thinkingCharCount,thinkingContent:dt.thinkingContent,currentResponse:dt.currentResponse,currentTool:dt.currentTool,activeToolCalls:dt.activeToolCalls,toolInputCharCount:dt.toolInputCharCount,toolInputContent:dt.toolInputContent,lastLiveActivityLabel:dt.lastLiveActivityLabel,iterationHistory:dt.iterationHistory,currentIteration:dt.currentIteration,isCompacting:dt.isCompacting}),[H,Cg,dt.activeToolCalls,dt.currentIteration,dt.currentResponse,dt.currentTool,dt.isCompacting,dt.isThinking,dt.iterationHistory,dt.lastLiveActivityLabel,dt.thinkingCharCount,dt.thinkingContent,dt.toolInputCharCount,dt.toolInputContent]);He(()=>{if(!jT){ST(null);return}ST(d=>d??UT())},[UT,jT]);let Cl=an?.items??Cg,yn=an?.isLoading??H,Be=an?{isThinking:an.isThinking,thinkingCharCount:an.thinkingCharCount,thinkingContent:an.thinkingContent,currentResponse:an.currentResponse,currentTool:an.currentTool,activeToolCalls:an.activeToolCalls,toolInputCharCount:an.toolInputCharCount,toolInputContent:an.toolInputContent,managedLiveEvents:an.managedLiveEvents,lastLiveActivityLabel:an.lastLiveActivityLabel,iterationHistory:an.iterationHistory,currentIteration:an.currentIteration,isCompacting:an.isCompacting}:dt,tn=ue?Tl:Cl,Dr=ue?xt:yn,tt=ue?Ee:Be,VT=yn&&!W.currentResponse&&!W.thinkingContent&&Bo.length===0,AO=wu(fg?.status==="running"),zt=we(()=>Nv(fg,Date.now()),[fg,AO]),GT=zt.shouldRender?`Workflow ${zt.workflow}${zt.phase?` - ${zt.phase}`:""}`:void 0,fi=we(()=>r_($d,{now:Date.now(),lastAllCompletedAt:null}),[$d]),KT=T<=20?1:DS,LO=wu(gg.length>0),Ig=we(()=>Dk(gg,KT,Date.now()),[KT,gg,LO]),zT=Lk({isTranscriptMode:ue,isLoading:H,hasWorkflowLiveSurface:zt.shouldRender,childActivityVisible:Ig.shouldRender}),ea=we(()=>{if(!ue)return[];let d=[];return d.push(...$v(zt)),H&&fi.shouldRender&&d.push(...e_(fi)),d},[ue,H,fi,zt]),Wo=we(()=>({config:Gt,sessionId:n.sessionId,workingDir:e.context?.executionCwd||e.context?.gitRoot||n.runtimeInfo?.executionCwd||n.gitRoot||process.cwd(),terminalWidth:ee,compactionInfo:mn??void 0}),[mn,n.sessionId,Gt,n.runtimeInfo?.executionCwd,e.context?.gitRoot,e.context?.executionCwd,ee]),Gi=we(()=>c.enabled&&mr?aG(Wo):void 0,[Wo,c.enabled,mr]),XT=Se(Hc),YT=Se(!1),vg=Se(!1),ta=HA({enabled:cG,useRendererViewportShell:Ho,isTranscriptMode:ue,hasCommitHandle:typeof ms(w)?.commitInlineScrollback=="function"}),Il=we(()=>dm({items:Cl,viewportWidth:ee,maxLines:Bt,showDetailedTools:!1,showAllContent:!1,windowed:!1}),[Cl,ee,Bt]),jo=we(()=>{let d=fm({activeItems:Il.activeItems,viewportWidth:ee,isLoading:yn,maxLines:Bt,isThinking:Be.isThinking,thinkingCharCount:Be.thinkingCharCount,thinkingContent:Be.thinkingContent,streamingResponse:Be.currentResponse,currentTool:Be.currentTool,activeToolCalls:Be.activeToolCalls,toolInputCharCount:Be.toolInputCharCount,toolInputContent:Be.toolInputContent,iterationHistory:Be.iterationHistory,currentIteration:Be.currentIteration,isCompacting:Be.isCompacting,managedAgentMode:F.agentMode,managedPhase:yn?Q?.phase:void 0,managedHarnessProfile:yn?Q?.harnessProfile:void 0,managedWorkerTitle:yn?Q?.activeWorkerTitle:void 0,managedRound:yn?Q?.currentRound:void 0,managedMaxRounds:yn?Q?.maxRounds:void 0,managedGlobalWorkBudget:yn?Q?.globalWorkBudget:void 0,managedBudgetUsage:yn?Q?.budgetUsage:void 0,managedBudgetApprovalRequired:yn?Q?.budgetApprovalRequired:void 0,lastLiveActivityLabel:Be.lastLiveActivityLabel,currentTodoActiveForm:Us,showFullThinking:!1,showDetailedTools:!1,showAllContent:!1,showLiveProgressRows:VT}),S=PR(Il,d,Gi);return UA(S,ta)},[F.agentMode,ta,yn,Be.activeToolCalls,Be.currentIteration,Be.currentTool,Be.isCompacting,Be.currentResponse,Be.isThinking,Be.iterationHistory,Be.lastLiveActivityLabel,Be.thinkingCharCount,Be.thinkingContent,Be.toolInputCharCount,Be.toolInputContent,Q?.activeWorkerTitle,Q?.budgetApprovalRequired,Q?.budgetUsage,Q?.currentRound,Q?.globalWorkBudget,Q?.harnessProfile,Q?.maxRounds,Q?.phase,VT,Il,Gi,ee,Bt,Us]),bg=we(()=>dm({items:Tl,viewportWidth:ee,maxLines:Bt,showDetailedTools:Kt,showAllContent:Kt,showFullThinking:!0,windowed:!1}),[Tl,ee,Bt,Kt]),Qd=we(()=>{if(!ue||Ho)return;let d=fm({activeItems:bg.activeItems,viewportWidth:ee,isLoading:xt,maxLines:Bt,isThinking:Ee.isThinking,thinkingCharCount:Ee.thinkingCharCount,thinkingContent:Ee.thinkingContent,streamingResponse:Ee.currentResponse,currentTool:Ee.currentTool,activeToolCalls:Ee.activeToolCalls,toolInputCharCount:Ee.toolInputCharCount,toolInputContent:Ee.toolInputContent,iterationHistory:Ee.iterationHistory,currentIteration:Ee.currentIteration,isCompacting:Ee.isCompacting,managedAgentMode:F.agentMode,managedPhase:xt?Q?.phase:void 0,managedHarnessProfile:xt?Q?.harnessProfile:void 0,managedWorkerTitle:xt?Q?.activeWorkerTitle:void 0,managedRound:xt?Q?.currentRound:void 0,managedMaxRounds:xt?Q?.maxRounds:void 0,managedGlobalWorkBudget:xt?Q?.globalWorkBudget:void 0,managedBudgetUsage:xt?Q?.budgetUsage:void 0,managedBudgetApprovalRequired:xt?Q?.budgetApprovalRequired:void 0,lastLiveActivityLabel:Ee.lastLiveActivityLabel,liveStatusLines:ea,currentTodoActiveForm:Us,showFullThinking:!0,showDetailedTools:Kt,showAllContent:Kt,showLiveProgressRows:!Jd,expandedItemKeys:Pn});return YL(wS(pm(bg,d)),Gi)},[F.agentMode,Pn,Jd,Gi,ue,Q?.activeWorkerTitle,Q?.budgetApprovalRequired,Q?.budgetUsage,Q?.currentRound,Q?.globalWorkBudget,Q?.harnessProfile,Q?.maxRounds,Q?.phase,ee,xt,Bt,bg,Ee.activeToolCalls,Ee.currentIteration,Ee.currentResponse,Ee.currentTool,Ee.isCompacting,Ee.isThinking,Ee.iterationHistory,Ee.lastLiveActivityLabel,Ee.thinkingCharCount,Ee.thinkingContent,Ee.toolInputCharCount,Ee.toolInputContent,Kt,ea,Ho,Us]),vl=we(()=>{if(Ft)return ue?YL(mm({items:tn,viewportWidth:ee,isLoading:Dr,maxLines:Bt,isThinking:tt.isThinking,thinkingCharCount:tt.thinkingCharCount,thinkingContent:tt.thinkingContent,streamingResponse:tt.currentResponse,currentTool:tt.currentTool,activeToolCalls:tt.activeToolCalls,toolInputCharCount:tt.toolInputCharCount,toolInputContent:tt.toolInputContent,iterationHistory:tt.iterationHistory,currentIteration:tt.currentIteration,isCompacting:tt.isCompacting,managedAgentMode:F.agentMode,managedPhase:Dr?Q?.phase:void 0,managedHarnessProfile:Dr?Q?.harnessProfile:void 0,managedWorkerTitle:Dr?Q?.activeWorkerTitle:void 0,managedRound:Dr?Q?.currentRound:void 0,managedMaxRounds:Dr?Q?.maxRounds:void 0,managedGlobalWorkBudget:Dr?Q?.globalWorkBudget:void 0,managedBudgetUsage:Dr?Q?.budgetUsage:void 0,managedBudgetApprovalRequired:Dr?Q?.budgetApprovalRequired:void 0,lastLiveActivityLabel:tt.lastLiveActivityLabel,liveStatusLines:ea,currentTodoActiveForm:Us,windowed:!0,showFullThinking:ue,showDetailedTools:Kt,showAllContent:Kt,showLiveProgressRows:ue&&!Jd,expandedItemKeys:ue?Pn:void 0}),Gi):wS(jo)},[F.agentMode,Dr,tn,Jd,Gi,tt.activeToolCalls,tt.currentIteration,tt.currentResponse,tt.currentTool,tt.isCompacting,tt.isThinking,tt.iterationHistory,tt.lastLiveActivityLabel,tt.thinkingCharCount,tt.thinkingContent,tt.toolInputCharCount,tt.toolInputContent,Pn,ue,Q?.activeWorkerTitle,Q?.budgetApprovalRequired,Q?.budgetUsage,Q?.currentRound,Q?.globalWorkBudget,Q?.harnessProfile,Q?.maxRounds,Q?.phase,jo,H,ue,ee,Bt,Ft,ea,Kt,Us]),Br=we(()=>vl??Qd,[vl,Qd]),bl=we(()=>xx({status:Q,isLoading:H,agentMode:F.agentMode}),[F.agentMode,H,Q]).workStripText,Rl=en?.workStripText??Oo,na=we(()=>xx({status:Q,isLoading:H,agentMode:F.agentMode,parallelTextOverride:Rl}),[F.agentMode,Rl,H,Q]),Uo=we(()=>YA(tn).filter(d=>d!==hm),[tn]),ct=we(()=>Oh(ze,Uo,ze.selectedItemId),[Uo,ze]),Dn=we(()=>tn.find(d=>d.id===ct),[tn,ct]),qT=we(()=>({...ze,supportsSelection:ze.supportsSelection&&Ft,supportsCopyOnSelect:ze.supportsCopyOnSelect&&Ft}),[ze,Ft]),er=we(()=>wL({state:qT,selectableItemIds:Uo,selectedItemId:ct,selectedItemType:Dn?.type,isExpanded:ct?Pn.has(ct):!1}),[Pn,Uo,Dn?.type,ct,qT]),JT=er.selectionEnabled,QT=er.copyCapabilities.copyOnSelect,FK=er.selectedItemIndex,ZT=we(()=>XA(Dn),[Dn]),Zd=we(()=>VA(tn.filter(d=>!TS(d))),[tn]),Xt=we(()=>GA(Zd,gn),[Zd,gn]),ef=we(()=>CL({isHistorySearchActive:wt,historySearchQuery:gn,matches:Xt,selectedIndex:Xd,anchorItemId:ze.searchAnchorItemId,useOverlaySurface:ze.supportsOverlaySurface&&ze.supportsSearchViewport&&Ft}),[Xt,gn,Xd,wt,ze.searchAnchorItemId,ze.supportsOverlaySurface,ze.supportsSearchViewport,Ft]),Ki=ef.clampedSelectedIndex,eC=ef.statusText,Rg=ef.detailText,tC=ef.searchState,HK=er.detailState==="expanded",tf=er.selectionEnabled&&Uo.length>0&&!di,ra=er.copyCapabilities.message,nf=er.copyCapabilities.toolInput,rf=er.toggleDetail;He(()=>{if(bl){if(Pr.current&&(clearTimeout(Pr.current),Pr.current=null),Oo===bl)return;if(Oo){cn.current&&(clearTimeout(cn.current),cn.current=null),dl(bl);return}cn.current&&clearTimeout(cn.current),cn.current=setTimeout(()=>{dl(bl),cn.current=null},400);return}if(!Oo){cn.current&&(clearTimeout(cn.current),cn.current=null);return}cn.current&&(clearTimeout(cn.current),cn.current=null),Pr.current&&clearTimeout(Pr.current),Pr.current=setTimeout(()=>{dl(void 0),Pr.current=null},300)},[Fo,bl,Oo]),He(()=>()=>{Fo()},[Fo]);let zi=we(()=>ZA({state:ze,ownsViewport:Ft,isAwaitingUserInteraction:Nr,isHistorySearchActive:wt,isTranscriptMode:ue,historySearchQuery:gn}),[gn,Nr,wt,ue,ze,Ft]);He(()=>{Lr(d=>{let S=U_(d,gr);return S=j_(S,xl),S=G_(S,c.enabled&&Ft?!ag||wt||Nr:ue||wt||Nr),S=X_(S,Ki),S})},[Ki,c.enabled,gr,Nr,wt,ue,xl,Ft,ag]),He(()=>{Xd!==Ki&&xr(Ki)},[Ki,Xd]),He(()=>{if(!wt){wg.current=gn;return}if(gn===wg.current)return;wg.current=gn;let d=zA(Zd,Xt,ze.searchAnchorItemId);xr(d)},[Xt,gn,wt,ze.searchAnchorItemId,Zd]);let nC=ue?Ee:{isThinking:Be.isThinking,thinkingCharCount:Be.thinkingCharCount,currentTool:Be.currentTool,activeToolCalls:Be.activeToolCalls,toolInputCharCount:Be.toolInputCharCount,toolInputContent:Be.toolInputContent,currentIteration:Be.currentIteration,isCompacting:Be.isCompacting},kl=ue?xt:yn,[kg,tr]=Ge(()=>Ps(F.permissionMode,e.runtimeAutoModeControl?void 0:f.getGuardrail().getEngine(),s.engine));He(()=>{if(!e.runtimeAutoModeControl){Ir(F.permissionMode)||tr(void 0);return}if(!Ir(F.permissionMode)){tr(void 0),e.runtimeAutoModeControl.syncSettings?.(n.sessionId,F.permissionMode,s);return}tr(I=>Ps(F.permissionMode,I,s.engine));let d=!0;o(async()=>{let I=await e.runtimeAutoModeControl?.syncSettings?.(n.sessionId,F.permissionMode,s)??await e.runtimeAutoModeControl?.getStats(n.sessionId);d&&tr(Ps(F.permissionMode,I?.engine,s.engine))},"refresh")();let x=e.runtimeAutoModeControl.subscribe?.(n.sessionId,I=>{d&&tr(Ps(F.permissionMode,I?.engine,s.engine))});return()=>{d=!1,x?.close()}},[s,n.sessionId,F.permissionMode,e.runtimeAutoModeControl]);let of=we(()=>SL({sessionId:n.sessionId,permissionMode:F.permissionMode,agentMode:F.agentMode,provider:F.provider,model:F.model??jr(F.provider)??F.provider,thinking:F.thinking,reasoningMode:F.reasoningMode,effort:ke,reasoningEffortLabel:Zi({provider:F.provider,model:F.model,effort:ke,effortOverride:F.effortOverride,thinking:F.thinking,reasoningMode:F.reasoningMode}),isTranscriptMode:ue,streamingState:nC,maxIter:W.maxIter,contextUsage:NT,learning:uT,isLoading:kl,managedState:{phase:Q?.phase,harnessProfile:Q?.harnessProfile,workerTitle:Q?.activeWorkerTitle,round:Q?.currentRound,maxRounds:Q?.maxRounds,globalWorkBudget:Q?.globalWorkBudget,budgetUsage:Q?.budgetUsage,budgetApprovalRequired:Q?.budgetApprovalRequired,idleWaiting:Q?.idleWaiting,idleWaitingPendingCount:Q?.idleWaitingPendingCount},autoModeEngine:kg}),[n.sessionId,F.permissionMode,F.agentMode,F.provider,F.model,F.thinking,F.reasoningMode,F.effortOverride,ke,ue,nC,W.maxIter,NT,uT,kl,Q?.phase,Q?.harnessProfile,Q?.activeWorkerTitle,Q?.currentRound,Q?.maxRounds,Q?.globalWorkBudget,Q?.budgetUsage,Q?.budgetApprovalRequired,Q?.idleWaiting,Q?.idleWaitingPendingCount,kg]),Eg=Ye?"confirm":je?.kind,rC=we(()=>gL({isTranscriptMode:ue,isLoading:kl,streamingState:Be,managedState:kl?{phase:Q?.phase,harnessProfile:Q?.harnessProfile,workerTitle:Q?.activeWorkerTitle}:void 0,waitingReason:Eg,workflowBuilderMessage:wT??void 0,backgroundWorkflowMessage:GT}),[Be.activeToolCalls,Be.currentTool,Be.isCompacting,Be.isThinking,Be.thinkingCharCount,Be.toolInputCharCount,Be.toolInputContent,ue,Q?.activeWorkerTitle,Q?.harnessProfile,Q?.phase,Eg,kl,wT,GT]),pi=mL({activity:rC})?rC:void 0,iC=pi?.text,oC=!!pi,sC=Se(!1);He(()=>{sC.current&&!H&&ci(d=>d.length>0?[]:d),sC.current=H},[H]);let Mg=we(()=>xm(of),[of]),aC=we(()=>Mg,[Mg]),cC=aC.text,PO=we(()=>vk(W.pendingInputs),[W.pendingInputs]),_g=we(()=>i_({isHistorySearchActive:wt,isTranscriptMode:ue,pendingInputCount:W.pendingInputs.length,buffering:ze.buffering,pendingLiveUpdates:xl}),[wt,ue,xl,W.pendingInputs.length,ze.buffering]),lC=_g.leftItems,uC=_g.rightItems,dC=_g.summary,sf=we(()=>vL({historySearchQuery:gn,pendingInputCount:W.pendingInputs.length}),[gn,W.pendingInputs.length]),af=we(()=>[...IL({historySearchQuery:gn,isHistorySearchActive:wt,historySearchMatchCount:Xt.length,pendingInputCount:W.pendingInputs.length,maxPendingInputs:5}),...fT],[Xt.length,gn,wt,fT,W.pendingInputs.length]),fC=we(()=>af.map(d=>d.text).join(" | "),[af]),cf=we(()=>bL({inputText:og,isTranscriptMode:ue,isHistorySearchActive:wt}),[og,wt,ue]),pC=ze.supportsOverlaySurface&&ze.supportsSearchViewport&&Ft,lf=we(()=>xL({runtime:er,itemSummary:ZT}),[ZT,er]),Ag=we(()=>RL(sf),[sf]),mC=we(()=>kL({textSelection:di,selectionState:lf,isHistorySearchActive:wt,historySearchDetailText:Rg,historySearchHasMatches:!!eC&&Xt.length>0,showAllActive:Kt,baseFooterNotices:sf}),[di,sf,Rg,Xt.length,eC,wt,Kt,lf]),OO=mC.secondaryText,$O=mC.budgetNotices,hC=ue?$O:Ag,gC=T,yC=ue?"":og,SC=ue?void 0:PO,wC=Rl,xC=ue?!1:AT,TC=zt.shouldRender?qM(zt):0,CC=H&&fi.shouldRender?fi.rows.length:0,IC=zT?Bm(Ig):0,nn=we(()=>B_({terminalRows:gC,terminalWidth:ee,windowedTranscript:Ho,inputText:yC,footerHeaderText:dC,activitySummary:ue?void 0:iC,activityBarVisible:ue?!1:oC,workflowSurfaceRows:ue?0:TC,childActivitySurfaceRows:ue?0:IC,todoSurfaceRows:ue?0:CC,pendingInputSummary:SC,stashNoticeSummary:cf,notificationSummary:fC,statusNoticeSummary:hC.join(" | "),workStripText:wC,suggestionsReserved:qd,suggestionsMode:"inline",showHelp:xC,statusBarText:cC,confirmPrompt:Ye?.prompt,confirmInstruction:wl,dialogMode:"inline",reviewHint:c.enabled&&Ft?void 0:zi.browseHintText,uiRequest:je?je.kind==="select"?{kind:"select",title:je.title,options:je.options.map(d=>({label:d.label,description:d.description})),buffer:je.buffer,error:je.error}:{kind:"input",prompt:je.prompt,defaultValue:je.defaultValue,buffer:je.buffer,error:je.error}:null}),[gC,ee,yC,dC,iC,oC,ue,TC,IC,CC,SC,cf,fC,hC,wC,qd,pC,xC,cC,Ye,wl,c.enabled,zi.browseHintText,Ft,je]),Lg=we(()=>{if(!ta)return{model:jo,committedSections:[]};let{committedSections:d,liveRows:S}=OR(Il.staticSections,jo.rows,jo.previewRows,nn.messageRows);return{model:{...jo,staticSections:[],rows:S,previewRows:[]},committedSections:d}},[ta,jo,Il.staticSections,nn.messageRows]),vC=Lg.model;He(()=>{let d=ms(w),S=typeof d?.commitInlineScrollback=="function",x=WA({active:ta,hasCommitHandle:S,wasActive:YT.current,forceRebuild:vg.current,prior:XT.current,finalizedSections:Lg.committedSections,bannerSection:Gi,width:ee,identify:$R}),I=!1,R=!1;if(x.kind==="commit"){let N=x.sections.flatMap(Z=>Z.rows),j=FA(N.length>0?[{key:"il-delta",rows:N}]:[],{width:ee,theme:ae("dark")});if(R=j.length>0,x.mode==="append"&&!j)qL("empty-append-text");else try{d?.commitInlineScrollback?.({mode:x.mode,text:j}),I=!0}catch(Z){qL("commit-threw",Z)}}let O=jA(x,{committed:I,hadContent:R},vg.current);XT.current=O.state,YT.current=O.wasActive,vg.current=O.owns},[ta,Lg.committedSections,Gi,ee,w]);let NO=we(()=>pe(Om,{reserveSpace:qd,width:ee,hidden:ue,mode:"inline"}),[qd,ee,ue,pC]),El=we(()=>eL(nn.messageRows),[nn.messageRows]),bC=we(()=>tL(El),[El]),ia=!HT&&c.transcriptSpinnerAnimation,Ml=Br?Br.rows.length+Br.previewRows.length:dO,uf=q(d=>{Br||fO(d.scrollHeight)},[Br]),_l=q(d=>aL({window:d,stickyHeader:zi.stickyHeader,width:ee,topChromeRows:0}),[ee,zi.stickyHeader]),oa=q((d=il.current,S=Ld.current,x=cg.current?_l(cg.current):Ad.current)=>{if(!x||d.length===0){Hs.current=null;return}Ad.current=x,Hs.current=cL(d,{allRows:S,rowIndexByKey:mx(S),topOffsetRows:x.topOffsetRows,viewportHeight:x.contentWindow.viewportHeight,animateSpinners:ia})},[_l,ia]),Al=q(()=>{let d=Ad.current;return d?.contentWindow.viewportHeight&&d.contentWindow.viewportHeight>0?d.contentWindow.viewportHeight:nn.messageRows},[nn.messageRows]),DO=q(d=>{cg.current=d;let S=_l(d);Ad.current=S,oa(il.current,Ld.current,S)},[oa,_l]),df=q(d=>{il.current=d.rows,Ld.current=d.allRows,oa(d.rows,d.allRows)},[oa]),dn=q(()=>{yr.current=null,lg(void 0),ug(void 0)},[]),Pg=q(()=>{dn(),Lr(d=>Fc(d,void 0))},[dn]);He(()=>{oa()},[oa]),He(()=>{mO(d=>nL(d,Ml,nn.messageRows))},[Ml,nn.messageRows]),He(()=>{if(!Ws)return;let d=setTimeout(()=>{gT(void 0)},2e3);return()=>{clearTimeout(d)}},[Ws]);let Bn=q((d,S="success")=>{let x=d?.trim();x&&gT({text:x,tone:S})},[]);He(()=>e.subscribeTransientNotices?.(d=>{Bn(d.text,d.tone)}),[e.subscribeTransientNotices,Bn]);let BO=q(d=>{Bn(d,"warning")},[Bn]),sa=q((d,S)=>{let x=S instanceof Error?S.message:String(S);return`${d}: ${x}`},[]),ff=q(async d=>{let S=d??di;if(!S)return!1;let x=S.text.trimEnd();if(!x)return!1;try{return await Vl(x,{terminalWrite:k}),Bn(`Copied ${S.rowCount} selected line${S.rowCount===1?"":"s"} to clipboard.`,"success"),!0}catch(I){return Bn(sa("Failed to copy transcript selection",I),"warning"),!1}},[di,sa,Bn,k]),aa=q(d=>{if(!d||iL({items:tn,renderModel:Br,terminalWidth:ee,transcriptMaxLines:Bt,viewportRows:Al(),itemId:d,visibleRows:il.current,expandedItemKeys:Pn,showDetailedTools:!1}))return;let S=oL({items:tn,renderModel:Br,terminalWidth:ee,transcriptMaxLines:Bt,viewportRows:Al(),itemId:d,expandedItemKeys:Pn,showDetailedTools:!1});Ed(S)},[tn,ee,Bt,Br,Pn,Al,Ed,il]),RC=q(d=>{Lr(S=>Fc(S,d)),d&&aa(d)},[aa]),Og=q(d=>{d&&aa(d)},[aa]),kC=q(d=>{if(!tf)return;let S=qA(Uo,ct,d);S&&RC(S)},[tf,Uo,ct,RC]),EC=q(()=>{!rf||!ct||(yO(d=>{let S=new Set(d);return S.has(ct)?S.delete(ct):S.add(ct),S}),aa(ct))},[aa,rf,ct]),MC=q(async()=>{if(!ra||!Dn)return;let d=px(Dn);if(d)try{await Vl(d,{terminalWrite:k}),Bn("Copied selected transcript entry to clipboard.","success")}catch(S){Bn(sa("Failed to copy transcript entry",S),"warning")}},[sa,ra,Dn,Bn,k]),_C=q(async()=>{if(!nf||!Dn)return;let d=JA(Dn);if(d)try{await Vl(d,{terminalWrite:k}),Bn("Copied selected tool args to clipboard.","success")}catch(S){Bn(sa("Failed to copy tool args",S),"warning")}},[sa,nf,Dn,Bn,k]),Ll=q(()=>Ld.current,[]),AC=q((d,S)=>{if(!c.enabled||!Ft)return;let x=Hs.current;return x?gx(x,d,S):void 0},[c.enabled,Ft]),ca=q((d,S,x)=>{let I=Ll(),R=dL(I,d,S,{animateSpinners:ia,selectFullRowOnCollapsed:x?.selectFullRowOnCollapsed});ue?ug(R):lg(R);let O=I[Math.max(0,Math.min(S.modelRowIndex,I.length-1))];return x?.updateSelectedItem&&O?.itemId&&Lr(N=>Fc(N,O.itemId)),R},[ue,Ll,ia]),LC=q((d,S)=>{if(!d)return;yr.current=null;let x={...d,focus:S?.focusPoint??d.focus};if(!(x.mode!=="char"||x.didDrag)){dn();return}let R=ca(x.anchor,x.focus,{selectFullRowOnCollapsed:!1,updateSelectedItem:!1});if(!R){dn();return}return S?.copySelection!==!1&&ff(R),R},[dn,ff,ca]),$g=q(()=>{if(!ue||!tn.length||Ye||je)return;dn();let d=sL({items:tn,selectedItemId:ct,renderModel:Br,terminalWidth:ee,transcriptMaxLines:Bt,viewportRows:Al(),scrollOffset:gr,expandedItemKeys:Pn,showDetailedTools:!1,preferViewportAnchor:!0});Lr(S=>K_(S,{anchorItemId:d,initialMatchIndex:0})),Qs(""),xr(0)},[Ye,tn,Pn,gr,ue,ct,Br,ee,Bt,je,Al,dn]),Ng=q(()=>{Lr(d=>z_(d)),Qs(""),xr(0),dn()},[dn]),pf=q(()=>{!wt||Xt.length===0||xr(-1)},[Xt.length,wt]),PC=we(()=>{if(!Ye)return null;if(Ye.tool==="exit_plan_mode"){let d=typeof Ye.input.plan=="string"?Ye.input.plan:void 0;return{prompt:Ye.prompt.split(`
164
164
  `,1)[0]??Ye.prompt,instruction:wl,planContent:d}}return{prompt:Ye.prompt,instruction:wl}},[wl,Ye]),OC=we(()=>je?je.kind==="select"?{kind:"select",title:je.title,options:je.options,buffer:je.buffer,error:je.error,visibleSelectOptions:nn.visibleSelectOptions,focusedIndex:je.focusedIndex,selectedIndices:je.selectedIndices,multiSelect:je.multiSelect}:{kind:"input",prompt:je.prompt,defaultValue:je.defaultValue,buffer:je.buffer,error:je.error}:null,[je,nn.visibleSelectOptions]),FO=we(()=>pe($m,{confirm:PC,request:OC}),[PC,OC]),Dg=we(()=>{if(Ws)return pe(zM,{text:Ws.text,tone:Ws.tone})},[Ws]),Bg=we(()=>{if(Dg)return pe(M,{flexDirection:"column",width:"100%",children:Dg})},[Dg]),mf=q(()=>{Lr(d=>V_(W_(d))),sg(!1),_d(),Qs(""),xr(0),dn()},[dn,_d]),$C=q(()=>{ue&&sg(d=>!d)},[ue]),HO=q(()=>{if(ue){mf();return}sg(!1),Lr(d=>H_(d)),Qs(""),xr(0),dn()},[dn,mf,ue]);He(()=>{JT||!ze.selectedItemId||Lr(d=>Fc(d,void 0))},[JT,ze.selectedItemId]),He(()=>{if(!ue||!ra||!QT){Sl.current=void 0;return}if(ai||!ct||!Dn)return;if(!Sl.current){Sl.current=ct;return}if(Sl.current===ct)return;Sl.current=ct;let d=px(Dn);d&&Vl(d,{terminalWrite:k}).catch(()=>{})},[ue,Dn,ct,ra,QT,ai,k]),He(()=>{if(w?.isTTY!==!0)return;let d=ms(w);d?.setShellMode?.(DT,Yd),xg||d?.setAltScreenActive?.(!1)},[DT,w,xg,Yd]);let WO=we(()=>o_(i,()=>ig.current),[i]),Ne=Se({...e,thinking:F.thinking,reasoningMode:F.reasoningMode,effort:At,agentMode:F.agentMode,workflowRunsBaseDir:qi("workflow-runs",es(process.cwd()).key),context:{...e.context,gitRoot:n.gitRoot??void 0,executionCwd:n.runtimeInfo?.executionCwd??n.gitRoot??process.cwd(),repoIntelligenceMode:F.repoIntelligenceMode,repoIntelligenceTrace:F.repoIntelligenceTrace,toolConstructionMode:!0},session:{...e.session,id:n.sessionId,storage:WO,persistedByHost:!0},guardrails:e.runtimeRunner?void 0:vx(F.permissionMode,f)});He(()=>{Ne.current.effort=At},[At]);let Pl=q(d=>{let S=d.workspaceRoot??void 0;n.runtimeInfo=d,n.gitRoot=S,Ne.current.context={...Ne.current.context,gitRoot:S,executionCwd:d.executionCwd??S??process.cwd()}},[n]),Fn=Se(F.permissionMode),NC=Se(0);He(()=>{Fn.current=F.permissionMode},[F.permissionMode]);let jO=we(()=>$a(),[]),DC=Se(jO),bt=Se(F);He(()=>{bt.current=F},[F]);let Fg=Se(null);Fg.current===null&&(Fg.current=jf({getProvider:o(()=>Ko(bt.current.provider),"getProvider"),getModel:o(()=>bt.current.model??"","getModel")}));let BC=Se(Kf());He(()=>{F.permissionMode==="auto-in-project"&&BC.current()},[]);let Hg=q(async d=>{let S=++NC.current;Ae(R=>({...R,permissionMode:d})),Fn.current=d,tr(Ps(d,void 0,s.engine));let x=await e.runtimeAutoModeControl?.syncSettings?.(n.sessionId,d,s);if(S!==NC.current)return;let I=Qo({provider:bt.current.provider,model:bt.current.model,effort:bt.current.effort,effortOverride:bt.current.effortOverride,permissionMode:d,planModeEffort:bt.current.planModeEffort,thinking:bt.current.thinking,reasoningMode:bt.current.reasoningMode});if(Ne.current={...Ne.current,effort:I.runtimeEffort,guardrails:e.runtimeRunner?void 0:vx(d,f)},!Ir(d))tr(void 0);else if(e.runtimeAutoModeControl){let R=x??await e.runtimeAutoModeControl.getStats(n.sessionId);tr(Ps(d,R?.engine,s.engine))}else tr(f.getGuardrail().getEngine());d==="auto-in-project"&&BC.current()},[f,s,n.sessionId,e.runtimeAutoModeControl,e.runtimeRunner]),FC=Se(W.pendingInputs),lt=Se(!1),HC=Se(0),Wg=Se(null),Ol=Se(0),hf=q(()=>{if(tl.current)return;let d=Dd.current?.trim(),S=y.current.length>0?y.current[y.current.length-1]:void 0,x=S&&"text"in S&&typeof S.text=="string"?S.text.trim():void 0,R=hn.current.length>0?[...hn.current.map(O=>Ao(O)),...d&&d!==x?[{type:"info",text:d}]:[]]:[...hn.current.map(O=>Ao(O)),...ZV(We(),K(),{toolCalls:ln.current,toolNames:Or.current,infoItems:d&&d!==x?[d]:[]})];R.length!==0&&(tl.current=!0,jd(hn.current),Fs.current?.(R))},[K,We,jd]);He(()=>{FC.current=W.pendingInputs},[W.pendingInputs]);let WC=q(()=>{lt.current=!0,_e(),he(),te(),oe(),Ke(),Ve(),Ie(void 0),Ui(),kt(void 0),hl(),$o.current=[],Vs.current=[],gt.current=null,Dd.current=null,ll([]),Od(null),js(null),Fo(),dl(void 0),ne(!1),w?.isTTY===!0&&ms(w)?.clear?.()},[_e,Ve,oe,Ke,Fo,Ui,hl,Ie,ll,ne,kt,he,te,w]),gf=q(d=>{let S=TI(),x=S.list().filter(R=>R.status==="running"||R.status==="paused");if(x.length===0)return!1;for(let R of x)S.stop(R.runId,d);al(R=>!R||R.status!=="running"||!x.some(O=>O.runId===R.runId)?R:{...R,status:"stopped",activeAgents:[],message:"Workflow stopped by user."});let I=x[0];return x.length===1&&I?On({type:"info",text:`Stopped workflow ${I.workflow} (${I.runId}).`},"workflow-stop"):On({type:"info",text:`Stopped ${x.length} active workflows.`},"workflow-stop"),!0},[On,al]);He(()=>{if(!zt.shouldRender)return;let d=o(()=>{gf("stopped by Ctrl+C")},"handleSigint");return process.on("SIGINT",d),()=>{process.off("SIGINT",d)}},[gf,zt.shouldRender]),Un(Sn.Critical,d=>{let S=d.name==="escape",x=Date.now(),I=S&&!ue&&!Nr&&rl&&W.pendingInputs.length===0&&(H||zt.shouldRender),R=I&&(d.meta===!0||x-HC.current<DV);if(HC.current=I?x:0,aA({keyName:d.name,ctrl:!!d.ctrl,isTranscriptMode:ue,isAwaitingUserInteraction:Nr,isInputEmpty:rl,isDoubleEscape:R,pendingInputCount:W.pendingInputs.length,hasTranscriptTextSelection:!!ai,hasActiveWorkflow:zt.shouldRender}))return gf(d.ctrl?"stopped by Ctrl+C":"stopped by Escape");if(!H)return!1;switch(cA({keyName:d.name,ctrl:!!d.ctrl,isTranscriptMode:ue,isAwaitingUserInteraction:Nr,isInputEmpty:rl,isDoubleEscape:R,pendingInputCount:W.pendingInputs.length,hasTranscriptTextSelection:!!ai}).kind){case"interrupt":return hf(),WC(),!0;case"pop-pending-input":return pn(),!0;default:break}return!1},[H,ue,Nr,rl,W.pendingInputs.length,pn,hf,WC,gf,ai,zt.shouldRender]),Un(Sn.Critical,d=>{let S=iA({itemsLength:tn.length,currentResponse:tt.currentResponse,thinkingContent:tt.thinkingContent,activeToolCallsLength:tt.activeToolCalls.length}),x=oA({keyName:d.name,hasTranscript:S,historyScrollOffset:gr,reviewPageSize:El,reviewWheelStep:bC,hasMouse:!!d.mouse,mouseButton:d.mouse?.button,mouseAction:d.mouse?.action,usesManagedMouseClicks:BT,supportsMouseTracking:ze.supportsMouseTracking,usesRendererMouseTracking:Yd,usesManagedMouseWheel:FT,supportsWheelHistory:ze.supportsWheelHistory});if(x.kind==="mouse-phase"){let R=d.mouse;if(!R)return!1;x.phase==="press"&&yr.current&&LC(yr.current);let O=AC(R.row,R.column);if(x.phase==="press"){if(!O||!S)return di||ct?(Pg(),!0):(dn(),!1);let N=FL({previous:hT.current,time:Date.now(),row:R.row,column:R.column});hT.current=N;let j=N.count>=3?"line":N.count===2?"word":"char";if(pf(),Lr(Z=>Fc(Z,void 0)),ue?ug(void 0):lg(void 0),j!=="char"){let Z=Vh(Ll(),O.point,j);if(Z)return yr.current={anchor:Z.start,focus:Z.end,didDrag:!1,mode:j,anchorSpan:Z},ca(Z.start,Z.end,{updateSelectedItem:!1}),!0}return yr.current={anchor:O.point,focus:O.point,didDrag:!1,mode:"char"},!0}if(!yr.current)return!1;if(x.phase==="drag"){let N=Hs.current,j=N?pL(N,R.row):0;j!==0&&Md(j);let Z=O??(N?yx(N,R.row,R.column):void 0);if(!Z)return!1;let J=yr.current;if(J.mode!=="char"&&J.anchorSpan){let $e=Vh(Ll(),Z.point,J.mode);if(!$e)return!1;let Fe=Ix(J.anchorSpan,$e);return yr.current={...J,anchor:Fe.anchor,focus:Fe.focus,didDrag:!0},ca(Fe.anchor,Fe.focus,{updateSelectedItem:!1}),!0}return yr.current={...J,focus:Z.point,didDrag:!0},ca(J.anchor,Z.point,{updateSelectedItem:!1}),!0}if(x.phase==="release"){let N=yr.current,j=N.focus,J=(O??(Hs.current?yx(Hs.current,R.row,R.column):void 0))?.point??j;if(N.mode!=="char"&&N.anchorSpan){let $e=Vh(Ll(),J,N.mode);if($e){let Fe=Ix(N.anchorSpan,$e);N.anchor=Fe.anchor,J=Fe.focus}}return LC(N,{focusPoint:J}),!0}}if(x.kind==="scroll-by")return pf(),Md(x.delta),!0;if(x.kind==="consume")return!0;let I=lA({key:d,isTranscriptMode:ue,isHistorySearchActive:wt,historySearchMatchCount:Xt.length,hasTextSelection:!!di,hasFocusedItem:!!ct,canCopySelectedItem:ra,canCopySelectedToolInput:nf,canToggleSelectedDetail:rf,canCycleTranscriptSelection:tf});return uA({action:I,hasTranscript:S,isTranscriptMode:ue,pageScrollDelta:El,disarmHistorySearchSelection:pf,scrollTranscriptBy:Md,closeHistorySearchSurface:Ng,backspaceHistorySearchQuery:o(()=>{Qs(R=>R.slice(0,-1)),xr(0)},"backspaceHistorySearchQuery"),stepHistorySearchSelection:o(R=>{xr(O=>fx(Xt.length,O,R))},"stepHistorySearchSelection"),submitHistorySearchSelection:o(()=>{let R=Xt[Ki];R&&(Og(R.itemId),Ng())},"submitHistorySearchSelection"),appendHistorySearchQuery:o(R=>{Qs(O=>O+R),xr(0)},"appendHistorySearchQuery"),openHistorySearchSurface:$g,clearTranscriptSelectionFocus:Pg,exitTranscriptModeSurface:mf,toggleTranscriptShowAll:$C,scrollTranscriptHome:o(()=>{Ed(Math.max(0,Ml-nn.messageRows))},"scrollTranscriptHome"),scrollTranscriptToBottom:o(()=>{_d(),dn()},"scrollTranscriptToBottom"),cycleTranscriptSelection:kC,copySelectedTranscriptText:o(()=>{ff()},"copySelectedTranscriptText"),copySelectedTranscriptItem:o(()=>{MC()},"copySelectedTranscriptItem"),copySelectedTranscriptToolInput:o(()=>{_C()},"copySelectedTranscriptToolInput"),toggleSelectedTranscriptDetail:EC,navigateSearchMatch:o(R=>{xr(O=>{let N=fx(Xt.length,O,R),j=Xt[N];return j&&Og(j.itemId),N})},"navigateSearchMatch"),dumpTranscriptToScrollback:o(()=>{dA({items:tn.filter(R=>!TS(R)),exitAltScreen:o(()=>{k(jp({mouseTracking:!0}))},"exitAltScreen"),writeToScrollback:o(R=>{k(R)},"writeToScrollback"),enterAltScreen:o(()=>{k(Wp({mouseTracking:!0,clearOnEnter:!1}))},"enterAltScreen")})},"dumpTranscriptToScrollback")})},[ue,tn,tt.currentResponse,tt.thinkingContent,tt.activeToolCalls,gr,Ml,El,bC,ct,Pg,mf,$C,ze,Md,Ed,_d,tf,Ki,dn,ff,Xt,$g,Ng,pf,kC,ra,MC,nf,_C,rf,EC,Og,di,AC,ze.supportsMouseTracking,ai,BT,FT,Tg,Ho,Yd,ca,nn.messageRows]),Un(d=>{if(!Ye)return!1;let S=d.sequence.trim().toLowerCase(),x=Ye.runtimeGrantSuggestions?.find(Z=>Z.kind==="session"),I=Ye.runtimeGrantSuggestions?.find(Z=>Z.kind==="persistent"),R=!!Ye.input._alwaysConfirm,O=Ye.runtimeGrantSuggestions!==void 0,N=I!==void 0||!O&&F.permissionMode==="accept-edits"&&!R,j=o(Z=>{let J=`${ie("dialog.confirm")} ${Ye.prompt}
165
- \u2192 ${ie(`confirm.result.${Z}`)}`;!!st.current.workerId?Zt({id:`confirm-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,type:"info",text:J,timestamp:Date.now()}):$({type:"info",text:J})},"recordConfirmResult");return S==="y"||S==="yes"?(j("approved"),Js(null),Zn.current?.({confirmed:!0}),Zn.current=null,!0):x&&(S==="s"||S==="session")?(j("approved_session"),Js(null),Zn.current?.({confirmed:!0,runtimeGrantKind:"session"}),Zn.current=null,!0):N&&(S==="a"||S==="always")?(j("approved_always"),Js(null),Zn.current?.(I?{confirmed:!0,runtimeGrantKind:"persistent"}:{confirmed:!0,always:!0}),Zn.current=null,!0):S==="n"||S==="no"||d.name==="escape"?(j("denied"),Js(null),Zn.current?.({confirmed:!1}),Zn.current=null,!0):d.insertable||d.name==="return"},{isActive:!!Ye,priority:Sn.Critical});let yf=q(d=>{Nn(null),$r.current?.(d),$r.current=null},[]),mi=q((d,S,x,I,R)=>S.length===0||R?.aborted?Promise.resolve(void 0):new Promise(O=>{let N=o(J=>{R?.removeEventListener("abort",j),$r.current===N&&($r.current=null),O(J)},"settle"),j=o(()=>{$r.current===N&&(Nn(null),N(void 0))},"onAbort");$r.current=N,R?.addEventListener("abort",j,{once:!0});let Z=I?.defaultValue===void 0?-1:S.findIndex(J=>J.value===I.defaultValue);Nn({kind:"select",title:d,options:S,buffer:"",focusedIndex:Math.max(0,Z),selectedIndices:x===!0&&Z>=0?[Z]:[],multiSelect:x,minSelections:I?.minSelections,maxSelections:I?.maxSelections})}),[]),UO=q((d,S)=>mi(d,S.map(x=>({label:x,value:x}))).then(x=>Array.isArray(x)?x[0]:x),[mi]),VO=q(async d=>{let S=e.learning;if(!S)return;let x=d;if(!x){let N=await S.list({limit:200});if(N.items.length===0){Id([{id:"learning-center-empty",text:"Learning Center has no learned capabilities.",tone:"accent"}]);return}let j=await mi("Learning Center \u2014 type to search",FV(N.items));x=Array.isArray(j)?j[0]:j}if(!x)return;let I=await S.get(x),R=await mi(`${I.displayName} \xB7 ${I.carrier} \xB7 ${I.lifecycle}`,BV(I)),O=Array.isArray(R)?R[0]:R;O&&(await HV(S,I.capabilityId,O),dT(await S.getSnapshot()))},[e.learning,mi]),jC=q(async d=>{let S=d.options?Uh(d.options):[],x=await mi(wx(d),S,!1);return x===void 0?Ca:Array.isArray(x)?x[0]??Ca:x},[mi]);He(()=>{let d=!1;return(async()=>{let{bindAskUserForConstruction:S}=await import("./construction-bootstrap-QVLJPFTL.js");d||S(jC)})(),()=>{d=!0,(async()=>{let{bindAskUserForConstruction:S}=await import("./construction-bootstrap-QVLJPFTL.js");S(null)})()}},[jC]);let la=q((d,S,x)=>x?.aborted?Promise.resolve(void 0):new Promise(I=>{let R=o(N=>{x?.removeEventListener("abort",O),$r.current===R&&($r.current=null),I(Array.isArray(N)?N[0]:N)},"settle"),O=o(()=>{$r.current===R&&(Nn(null),R(void 0))},"onAbort");$r.current=R,x?.addEventListener("abort",O,{once:!0}),Nn({kind:"input",prompt:d,defaultValue:S,buffer:""})}),[]);Un(d=>{let S=zd.current;if(!S)return!1;if(d.name==="escape")return yf(void 0),!0;if(S.kind==="select"){let x=S.options.length;if(d.name==="up"||d.sequence==="k")return Nn(I=>I&&I.kind==="select"?{...I,focusedIndex:(I.focusedIndex-1+x)%x,error:void 0}:I),!0;if(d.name==="down"||d.sequence==="j")return Nn(I=>I&&I.kind==="select"?{...I,focusedIndex:(I.focusedIndex+1)%x,error:void 0}:I),!0;if(d.sequence===" "&&S.multiSelect)return Nn(I=>{if(!I||I.kind!=="select")return I;let R=I.focusedIndex,O=I.selectedIndices.includes(R)?I.selectedIndices.filter(N=>N!==R):[...I.selectedIndices,R];return{...I,selectedIndices:O,error:void 0}}),!0;if(d.name==="return"){let I=zd.current;if(!I||I.kind!=="select")return!1;if(I.multiSelect){let R=I.selectedIndices.length,{minSelections:O,maxSelections:N}=I,j=R===0&&O!==0?ie("select.multiselect_empty"):O!==void 0&&R<O?ie("select.multiselect_min",{min:String(O)}):N!==void 0&&R>N?ie("select.multiselect_max",{max:String(N)}):void 0;if(j!==void 0)return Nn(J=>J&&J.kind==="select"?{...J,error:j}:J),!0;let Z=I.selectedIndices.slice().sort((J,$e)=>J-$e).map(J=>I.options[J]?.value).filter(J=>typeof J=="string"&&J.length>0);yf(Z)}else yf(I.options[I.focusedIndex]?.value);return!0}if(/^[1-9]$/.test(d.sequence)){let I=Number.parseInt(d.sequence,10)-1;if(I>=0&&I<x)return S.multiSelect?Nn(R=>{if(!R||R.kind!=="select")return R;let O=R.selectedIndices.includes(I)?R.selectedIndices.filter(N=>N!==I):[...R.selectedIndices,I];return{...R,focusedIndex:I,selectedIndices:O,error:void 0}}):Nn(R=>R&&R.kind==="select"?{...R,focusedIndex:I,error:void 0}:R),!0}return!1}if(d.name==="return"){let x=zd.current;if(!x||x.kind!=="input")return!1;let I=x.buffer.trim();return yf(I===""?x.defaultValue??void 0:I),!0}return d.name==="backspace"||d.name==="delete"?(Nn(x=>x&&x.kind==="input"?{...x,buffer:x.buffer.slice(0,-1),error:void 0}:x),!0):(d.insertable||d.isPasted===!0)&&!d.ctrl&&!d.meta?(Nn(x=>x&&x.kind==="input"?{...x,buffer:x.buffer+d.sequence,error:void 0}:x),!0):!1},{isActive:!!je,priority:Sn.Critical}),He(()=>{if(E.length===0){if(n.uiHistory?.length){let d=Zr(n.uiHistory);d.length!==n.uiHistory.length&&(n.uiHistory=d),G(Vu({messages:n.messages,uiHistory:d}));return}n.messages.length>0&&G(Vu({messages:n.messages}))}},[n.messages,n.uiHistory,E.length,G]),He(()=>{Mf(n.gitRoot)},[n.gitRoot]),He(()=>{process.env.KODAX_PREWARM_REPO_INTELLIGENCE!=="0"&&hI({executionCwd:n.runtimeInfo?.executionCwd??n.gitRoot??process.cwd(),gitRoot:n.gitRoot??void 0},{mode:F.repoIntelligenceMode})},[n.gitRoot,n.runtimeInfo?.executionCwd,F.repoIntelligenceMode]);let $l=q(()=>({onOutputSegmentStart:o((d,S)=>{lt.current||Bu(S)||kT(d)},"onOutputSegmentStart"),onMemoryOutcomeDigest:o((d,S)=>{if(d.sessionId!==n.sessionId){e.events?.onMemoryOutcomeDigest?.(d,S);return}n.lineage=Pf(n.lineage??qe(n.messages),d,S?.jobId)},"onMemoryOutcomeDigest"),onMemoryReviewReceipt:o(d=>{if(d.sessionId!==void 0&&d.sessionId!==n.sessionId){e.events?.onMemoryReviewReceipt?.(d);return}n.lineage=Of(n.lineage??qe(n.messages),d)},"onMemoryReviewReceipt"),onMemoryNotice:o(d=>{if(d.sessionId!==void 0&&d.sessionId!==n.sessionId){e.events?.onMemoryNotice?.(d);return}let S=n.lineage??qe(n.messages),x=$f(S,{...d,createdAt:new Date().toISOString()});n.lineage=x,x!==S&&$({type:"info",text:`[memory] ${d.summaries.slice(0,3).join("; ")}`}),e.events?.onMemoryNotice?.(d)},"onMemoryNotice"),onThinkingDelta:o((d,S)=>{if(lt.current||Qn(S,"thinking",d,{append:!0}))return;if(S?.providerRequestId!==void 0){let R=xf(No.current,{type:"thinking.delta",providerRequestId:S.providerRequestId,text:d});if(No.current=R.state,!R.accepted)return}W.currentTool&&(Ie(void 0),Ke());let{header:x}=T_(We()+d),I=x?`[Thinking: ${x}]`:"[Thinking]";kt(Rh(gt.current?.activeWorkerTitle?`[${gt.current.activeWorkerTitle}] ${I}`:I,gt.current?.activeWorkerTitle)),Te(d.length),Pe(d),st.current.workerId&&(Sg("thinking",d),Do.current={...Do.current,thinkingItemId:ut.current.activeThinkingItemId})},"onThinkingDelta"),onThinkingEnd:o((d,S)=>{if(lt.current||Qn(S,"thinking",d))return;let x=We(),I=y_(x,d);I&&I!==x&&(oe(),fe(),Te(I.length),Pe(I)),st.current.workerId&&ET(I),te()},"onThinkingEnd"),onTextDelta:o((d,S)=>{if(!lt.current&&!Qn(S,"assistant",d,{append:!0})){if(S?.providerRequestId!==void 0){let x=xf(No.current,{type:"assistant.delta",providerRequestId:S.providerRequestId,text:d});if(No.current=x.state,!x.accepted)return}W.currentTool&&(Ie(void 0),Ke()),te(),kt(void 0),me(d),st.current.workerId&&(Sg("assistant",d),Do.current={...Do.current,assistantItemId:ut.current.activeAssistantItemId})}},"onTextDelta"),onToolUseStart:o((d,S)=>{if(lt.current||Qn(S,"tool",$k(d.name,d.input)))return;Or.current.includes(d.name)||(Or.current=[...Or.current,d.name]);let x=gt.current?.activeWorkerTitle?`[${gt.current.activeWorkerTitle}] `:"",I={id:d.id,name:`${x}${d.name}`,status:z.Executing,startTime:Date.now(),input:d.input};MT(I),st.current.workerId&&wr(I),kt(Ni(I,gt.current?.activeWorkerTitle))},"onToolUseStart"),onToolInputDelta:o((d,S,x)=>{if(lt.current||Qn(x,"tool",d,{skipIfExisting:!0}))return;nt(S.length),vt(S);let I=_T(x?.toolId,d,R=>{let O=R.preview??"",N=m_(`${O}${S}`);return{...R,preview:N||void 0,input:R.input?N?{...R.input,preview:N}:{...R.input}:N?{preview:N}:void 0}});I&&(st.current.workerId&&wr(I),kt(Ni(I,gt.current?.activeWorkerTitle)))},"onToolInputDelta"),onToolResult:o((d,S)=>{if(lt.current||Qn(S,"tool",`${d.name} completed`))return;let x=typeof d.content=="string"?d.content:String(d.content??""),I=h_(x);if(/^\[(?:Tool Error|Error)\]/.test(x)){let O=Gd(d.id,z.Error,I,I,d.name);O&&(st.current.workerId&&wr(O),kt(Ni(O,gt.current?.activeWorkerTitle)));return}if(/^\[(?:Cancelled|Blocked)\]/.test(x)){let O=Gd(d.id,z.Cancelled,void 0,I,d.name);O&&(st.current.workerId&&wr(O),kt(Ni(O,gt.current?.activeWorkerTitle)));return}let R=Gd(d.id,z.Success,void 0,I||void 0,d.name);R&&(st.current.workerId&&wr(R),kt(Ni(R,gt.current?.activeWorkerTitle)))},"onToolResult"),onToolProgress:o((d,S)=>{if(lt.current||Qn(S,"progress",d.message))return;let x=d.message.length>100?d.message.slice(0,97)+"...":d.message,I=qs(d.id,R=>({...R,preview:x,progressLines:[...(R.progressLines??[]).slice(-4),x]}));I&&st.current.workerId&&wr(I),kt(x)},"onToolProgress"),onStreamEnd:o(d=>{if(lt.current||Bu(d))return;let S=gl(z.Cancelled,()=>({error:"Stream ended before the tool completed.",output:void 0})),x=S[S.length-1];st.current.workerId&&S.forEach(I=>wr(I)),x&&kt(Ni(x,gt.current?.activeWorkerTitle)),te(),Ke(),Ie(void 0)},"onStreamEnd"),onChildActivityEnd:o(d=>{CT(d)},"onChildActivityEnd"),hasPendingInputs:o(()=>FC.current.length>0,"hasPendingInputs"),onMidTurnUserMessages:o(d=>{if(!lt.current)for(let S of d){let x=S.trim();x&&(st.current.workerId?Zt({id:`mid-turn-user-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,type:"user",text:x,timestamp:Date.now()}):$({type:"user",text:x}))}},"onMidTurnUserMessages"),onSidecarMessage:o(d=>{if(lt.current)return;let S=d.suggestedFix?`${d.content}
165
+ \u2192 ${ie(`confirm.result.${Z}`)}`;!!st.current.workerId?Zt({id:`confirm-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,type:"info",text:J,timestamp:Date.now()}):$({type:"info",text:J})},"recordConfirmResult");return S==="y"||S==="yes"?(j("approved"),Js(null),Zn.current?.({confirmed:!0}),Zn.current=null,!0):x&&(S==="s"||S==="session")?(j("approved_session"),Js(null),Zn.current?.({confirmed:!0,runtimeGrantKind:"session"}),Zn.current=null,!0):N&&(S==="a"||S==="always")?(j("approved_always"),Js(null),Zn.current?.(I?{confirmed:!0,runtimeGrantKind:"persistent"}:{confirmed:!0,always:!0}),Zn.current=null,!0):S==="n"||S==="no"||d.name==="escape"?(j("denied"),Js(null),Zn.current?.({confirmed:!1}),Zn.current=null,!0):d.insertable||d.name==="return"},{isActive:!!Ye,priority:Sn.Critical});let yf=q(d=>{Nn(null),$r.current?.(d),$r.current=null},[]),mi=q((d,S,x,I,R)=>S.length===0||R?.aborted?Promise.resolve(void 0):new Promise(O=>{let N=o(J=>{R?.removeEventListener("abort",j),$r.current===N&&($r.current=null),O(J)},"settle"),j=o(()=>{$r.current===N&&(Nn(null),N(void 0))},"onAbort");$r.current=N,R?.addEventListener("abort",j,{once:!0});let Z=I?.defaultValue===void 0?-1:S.findIndex(J=>J.value===I.defaultValue);Nn({kind:"select",title:d,options:S,buffer:"",focusedIndex:Math.max(0,Z),selectedIndices:x===!0&&Z>=0?[Z]:[],multiSelect:x,minSelections:I?.minSelections,maxSelections:I?.maxSelections})}),[]),UO=q((d,S)=>mi(d,S.map(x=>({label:x,value:x}))).then(x=>Array.isArray(x)?x[0]:x),[mi]),VO=q(async d=>{let S=e.learning;if(!S)return;let x=d;if(!x){let N=await S.list({limit:200});if(N.items.length===0){Id([{id:"learning-center-empty",text:"Learning Center has no learned capabilities.",tone:"accent"}]);return}let j=await mi("Learning Center \u2014 type to search",FV(N.items));x=Array.isArray(j)?j[0]:j}if(!x)return;let I=await S.get(x),R=await mi(`${I.displayName} \xB7 ${I.carrier} \xB7 ${I.lifecycle}`,BV(I)),O=Array.isArray(R)?R[0]:R;O&&(await HV(S,I.capabilityId,O),dT(await S.getSnapshot()))},[e.learning,mi]),jC=q(async d=>{let S=d.options?Uh(d.options):[],x=await mi(wx(d),S,!1);return x===void 0?Ca:Array.isArray(x)?x[0]??Ca:x},[mi]);He(()=>{let d=!1;return(async()=>{let{bindAskUserForConstruction:S}=await import("./construction-bootstrap-474QPSYB.js");d||S(jC)})(),()=>{d=!0,(async()=>{let{bindAskUserForConstruction:S}=await import("./construction-bootstrap-474QPSYB.js");S(null)})()}},[jC]);let la=q((d,S,x)=>x?.aborted?Promise.resolve(void 0):new Promise(I=>{let R=o(N=>{x?.removeEventListener("abort",O),$r.current===R&&($r.current=null),I(Array.isArray(N)?N[0]:N)},"settle"),O=o(()=>{$r.current===R&&(Nn(null),R(void 0))},"onAbort");$r.current=R,x?.addEventListener("abort",O,{once:!0}),Nn({kind:"input",prompt:d,defaultValue:S,buffer:""})}),[]);Un(d=>{let S=zd.current;if(!S)return!1;if(d.name==="escape")return yf(void 0),!0;if(S.kind==="select"){let x=S.options.length;if(d.name==="up"||d.sequence==="k")return Nn(I=>I&&I.kind==="select"?{...I,focusedIndex:(I.focusedIndex-1+x)%x,error:void 0}:I),!0;if(d.name==="down"||d.sequence==="j")return Nn(I=>I&&I.kind==="select"?{...I,focusedIndex:(I.focusedIndex+1)%x,error:void 0}:I),!0;if(d.sequence===" "&&S.multiSelect)return Nn(I=>{if(!I||I.kind!=="select")return I;let R=I.focusedIndex,O=I.selectedIndices.includes(R)?I.selectedIndices.filter(N=>N!==R):[...I.selectedIndices,R];return{...I,selectedIndices:O,error:void 0}}),!0;if(d.name==="return"){let I=zd.current;if(!I||I.kind!=="select")return!1;if(I.multiSelect){let R=I.selectedIndices.length,{minSelections:O,maxSelections:N}=I,j=R===0&&O!==0?ie("select.multiselect_empty"):O!==void 0&&R<O?ie("select.multiselect_min",{min:String(O)}):N!==void 0&&R>N?ie("select.multiselect_max",{max:String(N)}):void 0;if(j!==void 0)return Nn(J=>J&&J.kind==="select"?{...J,error:j}:J),!0;let Z=I.selectedIndices.slice().sort((J,$e)=>J-$e).map(J=>I.options[J]?.value).filter(J=>typeof J=="string"&&J.length>0);yf(Z)}else yf(I.options[I.focusedIndex]?.value);return!0}if(/^[1-9]$/.test(d.sequence)){let I=Number.parseInt(d.sequence,10)-1;if(I>=0&&I<x)return S.multiSelect?Nn(R=>{if(!R||R.kind!=="select")return R;let O=R.selectedIndices.includes(I)?R.selectedIndices.filter(N=>N!==I):[...R.selectedIndices,I];return{...R,focusedIndex:I,selectedIndices:O,error:void 0}}):Nn(R=>R&&R.kind==="select"?{...R,focusedIndex:I,error:void 0}:R),!0}return!1}if(d.name==="return"){let x=zd.current;if(!x||x.kind!=="input")return!1;let I=x.buffer.trim();return yf(I===""?x.defaultValue??void 0:I),!0}return d.name==="backspace"||d.name==="delete"?(Nn(x=>x&&x.kind==="input"?{...x,buffer:x.buffer.slice(0,-1),error:void 0}:x),!0):(d.insertable||d.isPasted===!0)&&!d.ctrl&&!d.meta?(Nn(x=>x&&x.kind==="input"?{...x,buffer:x.buffer+d.sequence,error:void 0}:x),!0):!1},{isActive:!!je,priority:Sn.Critical}),He(()=>{if(E.length===0){if(n.uiHistory?.length){let d=Zr(n.uiHistory);d.length!==n.uiHistory.length&&(n.uiHistory=d),G(Vu({messages:n.messages,uiHistory:d}));return}n.messages.length>0&&G(Vu({messages:n.messages}))}},[n.messages,n.uiHistory,E.length,G]),He(()=>{Mf(n.gitRoot)},[n.gitRoot]),He(()=>{process.env.KODAX_PREWARM_REPO_INTELLIGENCE!=="0"&&hI({executionCwd:n.runtimeInfo?.executionCwd??n.gitRoot??process.cwd(),gitRoot:n.gitRoot??void 0},{mode:F.repoIntelligenceMode})},[n.gitRoot,n.runtimeInfo?.executionCwd,F.repoIntelligenceMode]);let $l=q(()=>({onOutputSegmentStart:o((d,S)=>{lt.current||Bu(S)||kT(d)},"onOutputSegmentStart"),onMemoryOutcomeDigest:o((d,S)=>{if(d.sessionId!==n.sessionId){e.events?.onMemoryOutcomeDigest?.(d,S);return}n.lineage=Pf(n.lineage??qe(n.messages),d,S?.jobId)},"onMemoryOutcomeDigest"),onMemoryReviewReceipt:o(d=>{if(d.sessionId!==void 0&&d.sessionId!==n.sessionId){e.events?.onMemoryReviewReceipt?.(d);return}n.lineage=Of(n.lineage??qe(n.messages),d)},"onMemoryReviewReceipt"),onMemoryNotice:o(d=>{if(d.sessionId!==void 0&&d.sessionId!==n.sessionId){e.events?.onMemoryNotice?.(d);return}let S=n.lineage??qe(n.messages),x=$f(S,{...d,createdAt:new Date().toISOString()});n.lineage=x,x!==S&&$({type:"info",text:`[memory] ${d.summaries.slice(0,3).join("; ")}`}),e.events?.onMemoryNotice?.(d)},"onMemoryNotice"),onThinkingDelta:o((d,S)=>{if(lt.current||Qn(S,"thinking",d,{append:!0}))return;if(S?.providerRequestId!==void 0){let R=xf(No.current,{type:"thinking.delta",providerRequestId:S.providerRequestId,text:d});if(No.current=R.state,!R.accepted)return}W.currentTool&&(Ie(void 0),Ke());let{header:x}=T_(We()+d),I=x?`[Thinking: ${x}]`:"[Thinking]";kt(Rh(gt.current?.activeWorkerTitle?`[${gt.current.activeWorkerTitle}] ${I}`:I,gt.current?.activeWorkerTitle)),Te(d.length),Pe(d),st.current.workerId&&(Sg("thinking",d),Do.current={...Do.current,thinkingItemId:ut.current.activeThinkingItemId})},"onThinkingDelta"),onThinkingEnd:o((d,S)=>{if(lt.current||Qn(S,"thinking",d))return;let x=We(),I=y_(x,d);I&&I!==x&&(oe(),fe(),Te(I.length),Pe(I)),st.current.workerId&&ET(I),te()},"onThinkingEnd"),onTextDelta:o((d,S)=>{if(!lt.current&&!Qn(S,"assistant",d,{append:!0})){if(S?.providerRequestId!==void 0){let x=xf(No.current,{type:"assistant.delta",providerRequestId:S.providerRequestId,text:d});if(No.current=x.state,!x.accepted)return}W.currentTool&&(Ie(void 0),Ke()),te(),kt(void 0),me(d),st.current.workerId&&(Sg("assistant",d),Do.current={...Do.current,assistantItemId:ut.current.activeAssistantItemId})}},"onTextDelta"),onToolUseStart:o((d,S)=>{if(lt.current||Qn(S,"tool",$k(d.name,d.input)))return;Or.current.includes(d.name)||(Or.current=[...Or.current,d.name]);let x=gt.current?.activeWorkerTitle?`[${gt.current.activeWorkerTitle}] `:"",I={id:d.id,name:`${x}${d.name}`,status:z.Executing,startTime:Date.now(),input:d.input};MT(I),st.current.workerId&&wr(I),kt(Ni(I,gt.current?.activeWorkerTitle))},"onToolUseStart"),onToolInputDelta:o((d,S,x)=>{if(lt.current||Qn(x,"tool",d,{skipIfExisting:!0}))return;nt(S.length),vt(S);let I=_T(x?.toolId,d,R=>{let O=R.preview??"",N=m_(`${O}${S}`);return{...R,preview:N||void 0,input:R.input?N?{...R.input,preview:N}:{...R.input}:N?{preview:N}:void 0}});I&&(st.current.workerId&&wr(I),kt(Ni(I,gt.current?.activeWorkerTitle)))},"onToolInputDelta"),onToolResult:o((d,S)=>{if(lt.current||Qn(S,"tool",`${d.name} completed`))return;let x=typeof d.content=="string"?d.content:String(d.content??""),I=h_(x);if(/^\[(?:Tool Error|Error)\]/.test(x)){let O=Gd(d.id,z.Error,I,I,d.name);O&&(st.current.workerId&&wr(O),kt(Ni(O,gt.current?.activeWorkerTitle)));return}if(/^\[(?:Cancelled|Blocked)\]/.test(x)){let O=Gd(d.id,z.Cancelled,void 0,I,d.name);O&&(st.current.workerId&&wr(O),kt(Ni(O,gt.current?.activeWorkerTitle)));return}let R=Gd(d.id,z.Success,void 0,I||void 0,d.name);R&&(st.current.workerId&&wr(R),kt(Ni(R,gt.current?.activeWorkerTitle)))},"onToolResult"),onToolProgress:o((d,S)=>{if(lt.current||Qn(S,"progress",d.message))return;let x=d.message.length>100?d.message.slice(0,97)+"...":d.message,I=qs(d.id,R=>({...R,preview:x,progressLines:[...(R.progressLines??[]).slice(-4),x]}));I&&st.current.workerId&&wr(I),kt(x)},"onToolProgress"),onStreamEnd:o(d=>{if(lt.current||Bu(d))return;let S=gl(z.Cancelled,()=>({error:"Stream ended before the tool completed.",output:void 0})),x=S[S.length-1];st.current.workerId&&S.forEach(I=>wr(I)),x&&kt(Ni(x,gt.current?.activeWorkerTitle)),te(),Ke(),Ie(void 0)},"onStreamEnd"),onChildActivityEnd:o(d=>{CT(d)},"onChildActivityEnd"),hasPendingInputs:o(()=>FC.current.length>0,"hasPendingInputs"),onMidTurnUserMessages:o(d=>{if(!lt.current)for(let S of d){let x=S.trim();x&&(st.current.workerId?Zt({id:`mid-turn-user-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,type:"user",text:x,timestamp:Date.now()}):$({type:"user",text:x}))}},"onMidTurnUserMessages"),onSidecarMessage:o(d=>{if(lt.current)return;let S=d.suggestedFix?`${d.content}
166
166
  Suggested fix: ${d.suggestedFix}`:d.content;if(d.delivery==="budget-exhausted")bT({type:"sidecar",text:S,delivery:"budget-exhausted"},"sidecar-message");else{let x=d.verdict==="blocked"?"blocked":"revise";bT({type:"sidecar",text:S,verdict:x},"sidecar-message")}Bd.current=!0},"onSidecarMessage"),onError:o(d=>{let S=ji();S?.name&&kt(Ni(S,gt.current?.activeWorkerTitle));let x=gl(z.Error,()=>({error:d.message,output:void 0})),I=x[x.length-1];st.current.workerId&&x.forEach($e=>wr($e)),I&&kt(Ni(I,gt.current?.activeWorkerTitle));let R=pI(d),O=["Transient","Permanent","Tool Call ID","User Abort"];if(R.category===Bl.USER_ABORT)return;let j=[`\u274C API Error (${O[R.category]||"Unknown"}): ${d.message}`];R.shouldCleanup&&j.push(" \u{1F9F9} Cleaned incomplete tool calls"),R.category===Bl.PERMANENT?(j.push(" \u{1F4A1} This error requires manual intervention. Please check:"),d.message.includes("auth")||d.message.includes("401")?(j.push(" - Your API key is valid"),j.push(" - Run /config to check provider settings")):d.message.includes("400")?(j.push(" - The request parameters are correct"),j.push(" - Try restarting the conversation")):j.push(" - The error details above")):R.category===Bl.TRANSIENT?j.push(" \u23F3 Retries exhausted. Press Enter to continue the conversation"):R.category===Bl.TOOL_CALL_ID&&j.push(" \u2705 Session cleaned, ready to continue");let Z=j.join(`
167
167
  `);!!st.current.workerId?Zt({id:`error-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,type:"error",text:Z,timestamp:Date.now()}):$({type:"error",text:Z})},"onError"),onRetry:o((d,S,x,I)=>{if(lt.current)return;let R=Gu(d,S,x);if(cl(I,R.text)||Qn(I,"progress",R.text))return;!!st.current.workerId?Zt({...R,id:`retry-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,timestamp:Date.now()}):$(R)},"onRetry"),onProviderRecovery:o((d,S)=>{if(lt.current)return;let x=Ku(d);if(cl(S,x.text)||Qn(S,"progress",x.text))return;let I=!!st.current.workerId;QV({clearResponse:Ve,clearThinkingContent:oe,stopThinking:te,clearToolInputContent:Ke,clearCurrentTool:o(()=>Ie(void 0),"clearCurrentTool"),resetLiveToolCalls:Ui,clearLiveActivityLabel:o(()=>kt(void 0),"clearLiveActivityLabel")}),I?Zt({...x,id:`recovery-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,timestamp:Date.now()}):$(x)},"onProviderRecovery"),onManagedTaskStatus:o(d=>{if(lt.current)return;let S=st.current;if(KL(d)){if(S.workerId&&S.workerId!==d.activeWorkerId)bO({workerId:d.activeWorkerId,workerTitle:d.activeWorkerTitle});else if(S.workerId!==d.activeWorkerId){let N=ut.current,j=N.activeToolGroupTools.some(Z=>Z.status===z.Executing);ut.current={workerId:d.activeWorkerId,workerTitle:d.activeWorkerTitle,...j?{activeToolGroupItemId:N.activeToolGroupItemId,activeToolGroupTools:N.activeToolGroupTools}:{activeToolGroupTools:[]}},st.current={workerId:d.activeWorkerId,workerTitle:d.activeWorkerTitle}}}gt.current=d,Od(d);let x=w_(d);RO(x);let I=Nc(d),O=Nc(d,{expanded:!0})??I;O&&(Dd.current=O)},"onManagedTaskStatus"),onProviderRateLimit:o((d,S,x,I)=>{if(lt.current)return;let R=Wg.current;if(Wg.current=null,c_(R,{attempt:d,maxAttempts:S,delayMs:x}))return;let O=`[Rate Limit] Retrying in ${x/1e3}s (${d}/${S})...`;cl(I,O)||Qn(I,"progress",O)||On({type:"info",icon:"\u23F3",text:O},"ratelimit")},"onProviderRateLimit"),onRetryAfter:o((d,S)=>{if(lt.current)return;Wg.current={attempt:d.attempt,maxAttempts:d.maxAttempts,waitMs:d.waitMs};let x=Math.round(d.waitMs/1e3),I=d.source==="exponential-backoff"?"no-header \u2192 backoff":d.source,O=`[${d.reason==="overloaded"?"Overloaded":"Rate limited"}] (${d.provider}) \u2014 retrying in ${x}s [${I}] (${d.attempt}/${d.maxAttempts})`;cl(S,O)||Qn(S,"progress",O)||On({type:"info",icon:"\u23F3",text:O},"ratelimit")},"onRetryAfter"),onReasoningEffortRejected:o(d=>{eI(d.provider,d.model,d.effort,"observed",new Date().toISOString());let x=Qo({provider:d.provider,model:d.model,effort:bt.current.effort,effortOverride:bt.current.effortOverride,permissionMode:bt.current.permissionMode,planModeEffort:bt.current.planModeEffort,thinking:bt.current.thinking,reasoningMode:bt.current.reasoningMode}).runtimeEffort;Ae(I=>({...I,effort:x,effortOverride:x!==void 0})),Zo({effort:x}),Ne.current.effort=x,On({type:"info",icon:"\u26A0",text:`[${d.provider}/${d.model} \u4E0D\u652F\u6301 effort "${d.effort}",\u5DF2\u8BB0\u5F55;\u540E\u7EED\u4E0D\u518D\u63D0\u4F9B\u8BE5\u6863${x?`,\u5DF2\u5207\u5230 ${x}`:""}]`},"ratelimit")},"onReasoningEffortRejected"),onRepoIntelligenceTrace:o(d=>{lt.current||On(O_(d),"repointel-trace")},"onRepoIntelligenceTrace"),onTodoUpdate:o(d=>{lt.current||ci(d)},"onTodoUpdate"),onScoutSuspiciousCompletion:o(d=>{lt.current||zL&&On({type:"info",icon:"\u26A0",text:`[Scout] Completion marked uncertain \u2014 signals: ${d.signals.join(", ")}. Verify the result before continuing.`},"scout-uncertain")},"onScoutSuspiciousCompletion"),onIterationStart:o((d,S)=>{if(lt.current)return;if(S&&Qt(S),gt.current?.globalWorkBudget){let J={...gt.current,budgetUsage:Math.min(gt.current.globalWorkBudget,(gt.current.budgetUsage??0)+1)};gt.current=J,Od(J)}let x=d>1?We().trim():"",I=d>1?Ex(K()):"",R=d>1?[...Or.current]:[],O=d>1?[...ln.current]:[],N=!!st.current.workerId;St(d),N&&Wd({clearOwner:!1});let j=li.current.filter(J=>J.status===z.Executing),Z=new Set(j.map(J=>J.id));if(Or.current=[],ln.current=ln.current.filter(J=>Z.has(J.id)),Jn(j),Ke(),Ie(void 0),kt(Rh(gt.current?.activeWorkerTitle?`[Thinking] [${gt.current.activeWorkerTitle}]`:void 0,gt.current?.activeWorkerTitle)),fe(),d>1&&!N){let J=Mx({thinking:x,response:I,toolCalls:O,toolNames:R});Fs.current?Fs.current(J):G([...J])}},"onIterationStart"),beforeToolExecute:o(async(d,S)=>{let x=Fn.current,I=Ra(x),R=DC.current,O=n.gitRoot;if(Vf(x,kg))return!0;if(PI(B.current,d,S))return`[Skipped] Previously denied operation. ${OI(B.current)}`;if(x==="plan"&&(wi.has(d)||d==="undo"))return`[Blocked] Tool '${d}' is not allowed in plan mode (read-only). ${UL}`;if(x==="plan"&&d==="bash"){let N=S.command??"";if(xi(N))return`[Blocked] Bash write operation not allowed in plan mode: ${N.slice(0,50)}... ${UL}`}if(d==="bash"){let N=S.command??"";if(ba(N,O??process.cwd(),n.runtimeInfo?.executionCwd??O??process.cwd()))return!0}if(d==="bash"){let N=S.command??"",j=MI(N);if(j.level==="dangerous"){let Z=await hi(d,{...S,_dangerousCommand:!0});return Z.confirmed?Z.confirmed:(B.current=iy(B.current,d,S,j.reason),`[Blocked] Dangerous command requires confirmation: ${j.reason}`)}}if(O){let N=!1;if(wi.has(d)){let j=S.path;j&&va(j,O)&&(N=!0)}if(d==="bash"){let j=S.command;j&&Ff(j,O)&&(N=!0)}if(N){let j=await hi(d,{...S,_alwaysConfirm:!0});if(Fn.current==="plan"&&(wi.has(d)||d==="undo"))return!1;if(Fn.current==="plan"&&d==="bash"){let Z=S.command??"";if(xi(Z))return!1}return j.confirmed}}if(I.has(d)){if(x==="accept-edits"&&d==="bash"&&await Ia(d,S,R,Fg.current??void 0))return!0;let N=await hi(d,S);if(Fn.current==="plan"&&(wi.has(d)||d==="undo"))return!1;if(Fn.current==="plan"&&d==="bash"){let j=S.command??"";if(xi(j))return!1}if(!N.confirmed)return $({type:"info",text:ie("cancelled")}),B.current=iy(B.current,d,S),!1;N.always&&x==="accept-edits"&&(Jf(d,S,!1),DC.current=$a())}return!0},"beforeToolExecute"),askUser:o(async(d,S,x)=>{let I=Sx(d.options?Uh(d.options):[],d),R=await mi(wx(d),I,d.multiSelect,{minSelections:d.minSelections,maxSelections:d.maxSelections,defaultValue:d.default},x?.signal);if(R===void 0)return Ca;if(R===Hr){let O=await la(d.customInputPrompt??d.question,d.customInputDefault,x?.signal);return O===void 0?Ca:{kind:"customInput",value:O}}if(Array.isArray(R)&&R.includes(Hr)){let O=await la(d.customInputPrompt??d.question,d.customInputDefault,x?.signal);return O===void 0?Ca:R.map(N=>N===Hr?{kind:"customInput",value:O}:N)}return R},"askUser"),exitPlanMode:o(async d=>Fn.current!=="plan"?"not-in-plan-mode":(await hi("exit_plan_mode",{plan:d})).confirmed?(Hg("accept-edits"),!0):!1,"exitPlanMode"),askUserMulti:o(async(d,S,x)=>{let I=d.questions,R={},O=0;for(;O<I.length;){let N=I[O],j=Sx(Uh(N.options),N);O>0&&j.push({label:ie("select.back_prev"),value:qg});let Z=`[${O+1}/${I.length}] ${N.question}`,J=await mi(Z,j,N.multiSelect,{minSelections:N.minSelections,maxSelections:N.maxSelections,defaultValue:N.default},x?.signal);if(J===void 0)return;if(!Array.isArray(J)&&J===qg){O--;continue}if(!Array.isArray(J)&&J===Hr){let $e=await la(N.customInputPrompt??N.question,N.customInputDefault,x?.signal);if($e===void 0)return;R[N.question]={kind:"customInput",value:$e},O++;continue}if(Array.isArray(J)&&J.includes(Hr)){let $e=await la(N.customInputPrompt??N.question,N.customInputDefault,x?.signal);if($e===void 0)return;R[N.question]=J.map(Fe=>Fe===Hr?{kind:"customInput",value:$e}:Fe),O++;continue}R[N.question]=J,O++}return R},"askUserMulti"),askUserInput:o(async(d,S,x)=>la(d.question,d.default,x?.signal),"askUserInput"),onCompactStart:o(()=>{Xe()},"onCompactStart"),onCompactStats:o(d=>{el.current=d.tokensBefore,hr(d.tokensAfter)},"onCompactStats"),onCompactedMessages:o(async(d,S,x)=>{let I=Ih(n.lineage,d,S,x);if(!I)return;n.messages=d,S?.artifactLedger&&S.artifactLedger.length>0&&(n.artifactLedger=Yo(n.artifactLedger??[],S.artifactLedger),n.sessionSnapshotDirty=!0),n.lineage=I;let R=zo(d);if(n.contextTokenSnapshot={currentTokens:R,baselineEstimatedTokens:R,source:"estimate"},Er(n),hr(R),e.runtimeRunner){n.lineage===I&&(n.lineage=Sa(I));return}let O=vd.current;if(!O)throw new Error("Ink REPL compaction persistence is not initialized.");try{await O(),n.lineage===I&&(n.lineage=Sa(I))}catch(N){throw ft({source:"repl:compaction",level:"error",message:"Failed to durably persist compacted session history.",detail:N}),N}},"onCompactedMessages"),onCompact:o(d=>{_t();let S=el.current??d;el.current=null;let x=Math.round(S/1e3);On({type:"info",icon:"\u2728",text:`Context auto-compacted (was ~${x}k tokens)`},"compact")},"onCompact"),onCompactEnd:o(()=>{el.current=null,_t()},"onCompactEnd"),onIterationEnd:o(d=>{d.scope!=="worker"&&(n.contextTokenSnapshot=d.contextTokenSnapshot),hr(d.tokenCount)},"onIterationEnd")}),[Te,Pe,te,me,Ie,nt,vt,Ke,St,fe,F,n,Xe,_t,$,oe,We,K,Wd,kt,Sg,ET,wr,kT,MT,_T,Gd,gl,ji,Ui,Jn,CT,cl,Qn,On,W.currentTool]),hi=o((d,S,x,I)=>{let R=p_(d,S),O=x?.map(Z=>Z.label)??[],N=x===void 0?[]:[Sc,...O.map(Z=>`Runtime scope: ${Z}`)],j=N.length>0?`${R}
168
168
  ${N.join(`
@@ -194,7 +194,7 @@ Suggestion: Set the required API key environment variable`:ge.message.includes("
194
194
  Suggestion: Check your internet connection`:(ge.message.includes("token")||ge.message.includes("context too long"))&&(rr=`[Context Error] ${ge.message}
195
195
  Suggestion: Use /clear to start fresh`),console.log=yi,st.current.workerId?Zt({id:`error-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,type:"error",text:rr,timestamp:Date.now()}):nr([{type:"error",text:rr}]),cp({error:ge,messageCount:n.messages.length})){let Tr={type:"info",text:Kl};if(st.current.workerId?(Zt({id:`recover-hint-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,...Tr,timestamp:Date.now()}),Sf([Tr])):nr([Tr]),(await hi("confirm",{_alwaysConfirm:!0,_message:ap})).confirmed)try{await VC(rn)}catch(Fr){let ma=Fr instanceof Error?Fr.message:String(Fr);nr([{type:"error",text:`[Recover failed] ${ma}`}])}}}}finally{if(console.log=yi,Go.length>0){let ge=Go.filter((rr,Tr,Yi)=>Yi.indexOf(rr)===Tr),Wn=Rx(ge);Wn&&$({type:"info",text:Wn})}if(!lt.current){let ge=gl(z.Cancelled,()=>({error:"Run ended before the tool result was observed.",output:void 0}));ge.length>0&&st.current.workerId&&ge.forEach(Wn=>wr(Wn))}ne(!1),he(),Ve(),yg(),oe();let be=zo(n.messages);n.contextTokenSnapshot={currentTokens:be,baselineEstimatedTokens:be,source:"estimate"},hr(be)}},[si,n,F,ng,W.pendingInputs.length,i,Ye,je,C,l,$,re,de,he,Ve,$l,GC,Re,K,We,Zt,da,nr,Vg,Nl,gi,Sf,Hn,pa,Ug,Xe,_t,Ui,yg,gl,wr,Fo,rg,sl,al]),KC=zt.shouldRender?pe(M,{paddingX:1,children:pe(JM,{viewModel:zt})}):void 0,zC=H&&fi.shouldRender?pe(M,{paddingX:1,children:pe(XM,{viewModel:fi})}):void 0,XC=zT?pe(M,{paddingX:1,children:pe(Fm,{viewModel:Ig})}):void 0,YO=KC||zC||XC?_n(M,{flexDirection:"column",children:[zC,KC,XC]}):void 0,YC=zt.shouldRender?zt.counterText:void 0,qO=pe(Mu,{left:pe(ku,{items:lC}),right:pe(Eu,{items:uC}),queued:pe(Nm,{pendingInputs:W.pendingInputs}),stashNotice:pe(Nu,{text:cf}),notifications:pe($u,{notifications:af}),inlineNotices:Ag.length>0?pe(Dm,{notices:Ag}):void 0,activityBar:pi?_n(M,{paddingX:1,flexDirection:"row",children:[_n(M,{flexGrow:1,children:[pi?.showSpinner?pe(Vn,{color:ae("dark").colors.accent}):null,pi?_n(b,{color:pi.kind==="waiting"?ae("dark").colors.warning:ae("dark").colors.accent,wrap:"truncate",children:[pi.showSpinner?" ":"",pi.text]}):null,pi?.showSpinner&&W.roundStartedAt!=null?pe(uR,{roundStartedAt:W.roundStartedAt,charCount:W.currentResponse.length,theme:ae("dark")}):null]}),YC?pe(b,{dimColor:!0,wrap:"truncate",children:YC}):H&&fi.shouldRender?pe(b,{dimColor:!0,wrap:"truncate",children:ZM(fi)}):null]}):void 0,todoSurface:YO,composer:pe(Mm,{onSubmit:XO,onHistoryRecall:zO,onPopPendingInputs:o(()=>{let d=V();if(d.length!==0)return d.join(`
196
196
  ---
197
- `)},"onPopPendingInputs"),prompt:">",placeholder:hL({isLoading:H,canQueueFollowUps:ng,waitingReason:Eg}),focus:!Ye&&!je&&!wt,cwd:process.cwd(),gitRoot:e.context?.gitRoot||n.gitRoot,onInputChange:EO,onPasteFallback:BO}),inlineSuggestions:NO,helpSurface:AT?pe(Am,{sections:Ph()}):void 0,taskBar:Rl?pe(Du,{items:na.backgroundTask.items,overflowLabel:na.backgroundTask.overflowLabel,ctaHint:na.backgroundTask.ctaHint,showSpinner:H}):void 0,statusLine:pe(M,{children:pe(ws,{...of,viewModel:aC})}),inlineDialogs:FO}),JO=pe(Mu,{left:pe(ku,{items:lC}),right:pe(Eu,{items:uC}),stashNotice:pe(Nu,{text:cf}),notifications:pe($u,{notifications:af}),composer:pe(VM,{searchActive:wt,selectionActive:!!(di||ct),showAllActive:Kt,searchQuery:gn,searchCurrent:Xt.length>0?Ki+1:0,searchCount:Xt.length,searchDetailText:Rg,pendingLiveUpdates:xl,secondaryText:OO}),taskBar:Rl?pe(Du,{items:na.backgroundTask.items,overflowLabel:na.backgroundTask.overflowLabel,ctaHint:na.backgroundTask.ctaHint,showSpinner:xt}):void 0,statusLine:pe(M,{children:pe(ws,{...of,viewModel:Mg})})}),Gg=q(d=>pe(GM,{banner:d?.bannerVisible?pe(kx,{...Wo}):void 0,items:Cl,isLoading:yn,viewportRows:nn.messageRows,viewportWidth:ee,scrollOffset:gr,windowed:!!d?.rendererWindow,rendererWindow:d?.rendererWindow,transcriptModel:d?.rendererWindow?vl:vC,maxLines:Bt,selectedTextRanges:Tg?Pd?.rowRanges:void 0,onMetricsChange:uf,onVisibleRowsChange:df}),[Wo,Cl,yn,uf,df,gr,vC,ee,Bt,Pd?.rowRanges,nn.messageRows,Tg]),Kg=q(d=>pe(KM,{banner:d?.bannerVisible?pe(kx,{...Wo}):void 0,items:Tl,browse:{hintText:zi.browseHintText},selection:lf,search:tC,isLoading:xt,isThinking:Ee.isThinking,thinkingCharCount:Ee.thinkingCharCount,thinkingContent:Ee.thinkingContent,streamingResponse:Ee.currentResponse,currentTool:Ee.currentTool,activeToolCalls:Ee.activeToolCalls,toolInputCharCount:Ee.toolInputCharCount,toolInputContent:Ee.toolInputContent,iterationHistory:Ee.iterationHistory,currentIteration:Ee.currentIteration,isCompacting:Ee.isCompacting,agentMode:F.agentMode,managedPhase:xt?Q?.phase:void 0,managedHarnessProfile:xt?Q?.harnessProfile:void 0,managedWorkerTitle:xt?Q?.activeWorkerTitle:void 0,managedRound:xt?Q?.currentRound:void 0,managedMaxRounds:xt?Q?.maxRounds:void 0,managedGlobalWorkBudget:xt?Q?.globalWorkBudget:void 0,managedBudgetUsage:xt?Q?.budgetUsage:void 0,managedBudgetApprovalRequired:xt?Q?.budgetApprovalRequired:void 0,lastLiveActivityLabel:Ee.lastLiveActivityLabel,liveStatusLines:ea,viewportRows:nn.messageRows,viewportWidth:ee,scrollOffset:gr,windowed:!!d?.windowed,animateSpinners:!!d?.rendererWindow&&ia,rendererWindow:d?.rendererWindow,transcriptModel:d?.rendererWindow?vl:Qd,maxLines:Bt,showDetailedTools:Kt,showAllContent:Kt,selectedItemId:er.selectionEnabled?ct:void 0,selectedTextRanges:ai?.rowRanges,expandedItemKeys:er.selectionEnabled?Pn:void 0,onMetricsChange:uf,onVisibleRowsChange:df}),[Wo,F.agentMode,xt,Pn,c.transcriptSpinnerAnimation,uf,df,gr,HT,Q?.activeWorkerTitle,Q?.budgetApprovalRequired,Q?.budgetUsage,Q?.currentRound,Q?.globalWorkBudget,Q?.harnessProfile,Q?.maxRounds,Q?.phase,vl,Qd,zi.browseHintText,ct,lf,ee,ia,Tl,Bt,Ee.activeToolCalls,Ee.currentIteration,Ee.currentResponse,Ee.currentTool,Ee.isCompacting,Ee.isThinking,Ee.iterationHistory,Ee.lastLiveActivityLabel,Ee.thinkingCharCount,Ee.thinkingContent,Ee.toolInputCharCount,Ee.toolInputContent,ea,ai?.rowRanges,tC,Kt,nn.messageRows]),QO=ue?Kg({bannerVisible:!1,windowed:Ft}):Gg({bannerVisible:!1}),qC=ue?JO:qO,ZO=c.enabled&&Ho,JC=_n(M,{flexDirection:"column",width:ee,flexShrink:0,flexGrow:ZO?1:0,children:[pe(Uw,{currentConfig:F,setCurrentConfig:Ae,isLoading:H,abort:_e,stopThinking:te,clearThinkingContent:oe,setCurrentTool:Ie,setIsLoading:ne,onToggleHelp:kO,setShowHelp:LT,onSetThinking:o(d=>{Ne.current.thinking=d},"onSetThinking"),onSetReasoningMode:o(d=>{Ne.current.reasoningMode=d,Ne.current.thinking=d!=="off"},"onSetReasoningMode"),onToggleTranscriptMode:HO,onOpenTranscriptSearch:$g,canOpenTranscriptSearch:ue&&!Ye&&!je,isInteractiveDialogActive:!!(Ye||je),onSetAgentMode:o(d=>{Ne.current.agentMode=d},"onSetAgentMode"),onSetPermissionMode:o(d=>{Hg(d)},"onSetPermissionMode"),isInputEmpty:rl,onSavePermissionMode:Cv}),mr&&(c.enabled?null:pe(Ja,{items:[1],children:o(()=>pe(kx,{...Wo},"banner"),"children")})),Ho?pe(bm,{width:ee,stickyHeader:zi.stickyHeader,jumpToLatest:zi.jumpToLatest,transcript:!c.enabled||!Ft?ue?Kg({bannerVisible:!1}):Gg({bannerVisible:!1}):void 0,renderTranscriptWindow:c.enabled&&Ft?d=>(()=>{let x=_l(d).contentWindow;return ue?Kg({bannerVisible:!1,windowed:!0,rendererWindow:x}):Gg({bannerVisible:!1,rendererWindow:x})})():void 0,overlay:Bg,scrollTop:gr,scrollHeight:Ml,viewportHeight:nn.messageRows,stickyScroll:!ue&&!Nr&&ag,overscanRows:oG,scrollRef:pO,onWindowChange:DO,onScrollTopChange:hO,onStickyChange:gO,footer:qC}):_n(NV,{children:[_n(M,{flexDirection:"column",flexGrow:1,children:[QO,Bg?pe(M,{position:"absolute",bottom:0,left:0,right:0,flexDirection:"column",children:Bg}):null]}),qC]})]});return xg?pe(Xy,{mouseTracking:Vi.usesRendererMouseTracking,children:JC}):JC},"InkREPLInner"),uG=o(e=>{let t=process.cwd(),n=e.options?.context?.gitRoot??void 0;return pe(Lu,{children:pe(Wu,{getPendingInputAgentId:o(()=>Tf(e.context.sessionId,"/root"),"getPendingInputAgentId"),children:pe(hu,{children:pe(Ww,{children:pe(Jp,{cwd:t,gitRoot:n,children:pe(lG,{...e})})})})})})},"InkREPL");function dG(){return process.stdin.isTTY===!0&&typeof process.stdin.setRawMode=="function"}o(dG,"isRawModeSupported");async function Kh(e){if(!dG())throw new ny("Interactive mode requires a TTY with raw mode support.",['kodax -p "your task" # Run a single task',"kodax -c # Continue last session","kodax -r # Resume session"]);let t=e.storage??new Is,n=ro(),r=io(),i=oo(n,r),{prepareRuntimeConfig:s}=await import("./utils-HPVZCR2J.js"),{loadCompactionConfig:a}=await import("./compaction-config-2TVSYSB4.js"),{resolveProvider:c}=await import("./dist-XC5M7UYX.js"),l=s(),u=Ma({explicitProvider:e.provider,environmentProvider:process.env.KODAX_PROVIDER,configuredProvider:l.provider,defaultProvider:wf}),f=_a({explicitProvider:e.provider,environmentProvider:process.env.KODAX_PROVIDER,explicitModel:e.model,configuredProvider:l.provider,configuredModel:l.model}),p=GV(e,l),h=Aa({explicitEffort:e.effort,environmentEffort:process.env.KODAX_EFFORT,configuredEffort:l.effort}),m=Yf(e,l,process.env.KODAX_EFFORT),g=e.agentMode??l.agentMode??"ama",C=p!=="off",w=ka(l.permissionMode,"accept-edits")??"accept-edits",T=Bf(),v=l.repoIntelligenceTrace===!0,A={provider:u,model:f,effort:h,effortOverride:m,planModeEffort:l.planModeEffort,thinking:C,reasoningMode:p,agentMode:g,permissionMode:w,repoIntelligenceMode:T.mode,repoIntelligenceTrace:v},D=e.session?.id,k=[],E,P,B,$,G,re="",X=await Ur({cwd:process.cwd()}),y=X.workspaceRoot??void 0,_=X,ee=y,W=Rf({meta:{cwd:process.cwd(),startedAt:Date.now()}});if(W){let te=o(()=>{W.shutdown()},"teamModeCleanup");process.on("exit",te),process.on("SIGTERM",te)}try{let{bootstrapConstructionRuntime:te}=await import("./construction-bootstrap-QVLJPFTL.js"),oe=await te(y??process.cwd());if(oe.loaded>0||oe.failed>0||oe.tampered>0){let Ie=oe.failed>0?`; ${oe.failed} failed`:"",nt=oe.tampered>0?`; ${oe.tampered} skipped due to manifest contentHash mismatch \u2014 re-stage and re-activate to re-approve`:"";ft({source:"repl:construction",level:oe.failed>0||oe.tampered>0?"warn":"info",message:`Rehydrated ${oe.loaded} active tool(s)${Ie}${nt}.`})}if(oe.markdownLoaded>0||oe.markdownFailures.length>0){ft({source:"repl:agents",level:oe.markdownFailures.length>0?"warn":"info",message:`Loaded ${oe.markdownLoaded} markdown agent(s).`});for(let Ie of oe.markdownFailures)ft({source:"repl:agents",level:"warn",message:`Skipped markdown agent ${Ie.path}: ${Ie.reason}`})}}catch(te){ft({source:"repl:construction",level:"warn",message:`Bootstrap failed: ${te.message}. Self-construction disabled this session.`})}let le;try{let te=await a(y),oe=c(u);le={contextWindow:te.contextWindow??oe.getContextWindow?.()??2e5,triggerPercent:te.triggerPercent,triggerTokens:te.triggerTokens,enabled:te.enabled,reservedResponseTokens:oe.getEffectiveMaxOutputTokens?.(f),userOverrideContextWindow:te.contextWindow}}catch{}if(e.session?.id&&!e.session.resume){let te=await t.load(e.session.id);te&&(k=te.messages,E=wo(te.uiHistory),P=te.lineage,B=te.artifactLedger,$=te.extensionState,G=te.extensionRecords,re=te.title,D=e.session.id,_=In(te)??X,ee=_.workspaceRoot??void 0,e={...e,session:{...e.session??{},id:D,tag:te.tag}},console.log(yt.green(`[Session loaded: ${D}]`)))}else if(e.session?.resume||e.session?.autoResume){let te=await Cc(t,y);if(te){let oe=await t.load(te.id);oe&&(k=oe.messages,E=wo(oe.uiHistory),P=oe.lineage,B=oe.artifactLedger,$=oe.extensionState,G=oe.extensionRecords,re=oe.title,D=te.id,_=In(oe)??X,ee=_.workspaceRoot??void 0,e={...e,session:{...e.session??{},id:D,tag:oe.tag}},console.log(yt.green(`[Continuing session: ${te.id}]`)))}}let de=await xc({sessionId:D,gitRoot:ee,runtimeInfo:_,existingMessages:k,existingUiHistory:E,existingLineage:P,existingArtifactLedger:B,existingExtensionState:$,existingExtensionRecords:G});de.title=re,e={...e,context:{...e.context,gitRoot:de.gitRoot??void 0,executionCwd:de.runtimeInfo?.executionCwd??de.gitRoot??process.cwd()}},W?.writer.update({sessionId:de.sessionId});let he={current:null},_e={current:null},fe={current:A},Te=Oa(),Pe=await Tc({askUser:o(async(te,oe,Ie)=>{let nt=he.current;return nt?nt(te,oe,Ie):"block"},"askUser"),projectRoot:y??process.cwd(),executionCwd:_.executionCwd??y??process.cwd(),getCurrentProviderName:o(()=>fe.current.provider,"getCurrentProviderName"),getCurrentModel:o(()=>fe.current.model,"getCurrentModel"),getCurrentPermissionMode:o(()=>fe.current.permissionMode,"getCurrentPermissionMode"),autoModeSettings:Te,log:o((te,oe)=>{ft({source:"repl:auto-mode",level:te==="warn"?"warn":"info",message:oe})},"log"),onEngineChange:o(te=>{_e.current?.(te)},"onEngineChange"),extraCollectors:[Pa]});try{let te=process.stdout,oe=process.stdin,Ie=!1,{waitUntilExit:nt,cleanup:vt}=qa(pe(uG,{options:e,config:A,context:de,startupRuntimeInfo:X,storage:t,autoModeSettings:wc(Te),compactionInfo:le,rendererMode:r,fullscreenPolicy:i,autoModeBootstrap:Pe,setAutoModeAskUser:o(Ve=>{he.current=Ve},"setAutoModeAskUser"),setAutoModeEngineChange:o(Ve=>{_e.current=Ve},"setAutoModeEngineChange"),setCurrentConfigRef:o(Ve=>{fe.current=Ve},"setCurrentConfigRef"),teamModeHandle:W,onExit:o(()=>{Ie=!0},"onExit")}),{stdout:te,stdin:oe,exitOnCtrlC:!1,patchConsole:!1,maxFps:30,shellMode:i.enabled?i.promptShell:"main-screen"});await nt(),vt(),W?.shutdown(),oe.isTTY===!0&&typeof oe.setRawMode=="function"&&oe.isRaw&&oe.setRawMode(!1),oe.pause?.(),oe.unref?.(),Ie&&console.log(yt.dim(`
197
+ `)},"onPopPendingInputs"),prompt:">",placeholder:hL({isLoading:H,canQueueFollowUps:ng,waitingReason:Eg}),focus:!Ye&&!je&&!wt,cwd:process.cwd(),gitRoot:e.context?.gitRoot||n.gitRoot,onInputChange:EO,onPasteFallback:BO}),inlineSuggestions:NO,helpSurface:AT?pe(Am,{sections:Ph()}):void 0,taskBar:Rl?pe(Du,{items:na.backgroundTask.items,overflowLabel:na.backgroundTask.overflowLabel,ctaHint:na.backgroundTask.ctaHint,showSpinner:H}):void 0,statusLine:pe(M,{children:pe(ws,{...of,viewModel:aC})}),inlineDialogs:FO}),JO=pe(Mu,{left:pe(ku,{items:lC}),right:pe(Eu,{items:uC}),stashNotice:pe(Nu,{text:cf}),notifications:pe($u,{notifications:af}),composer:pe(VM,{searchActive:wt,selectionActive:!!(di||ct),showAllActive:Kt,searchQuery:gn,searchCurrent:Xt.length>0?Ki+1:0,searchCount:Xt.length,searchDetailText:Rg,pendingLiveUpdates:xl,secondaryText:OO}),taskBar:Rl?pe(Du,{items:na.backgroundTask.items,overflowLabel:na.backgroundTask.overflowLabel,ctaHint:na.backgroundTask.ctaHint,showSpinner:xt}):void 0,statusLine:pe(M,{children:pe(ws,{...of,viewModel:Mg})})}),Gg=q(d=>pe(GM,{banner:d?.bannerVisible?pe(kx,{...Wo}):void 0,items:Cl,isLoading:yn,viewportRows:nn.messageRows,viewportWidth:ee,scrollOffset:gr,windowed:!!d?.rendererWindow,rendererWindow:d?.rendererWindow,transcriptModel:d?.rendererWindow?vl:vC,maxLines:Bt,selectedTextRanges:Tg?Pd?.rowRanges:void 0,onMetricsChange:uf,onVisibleRowsChange:df}),[Wo,Cl,yn,uf,df,gr,vC,ee,Bt,Pd?.rowRanges,nn.messageRows,Tg]),Kg=q(d=>pe(KM,{banner:d?.bannerVisible?pe(kx,{...Wo}):void 0,items:Tl,browse:{hintText:zi.browseHintText},selection:lf,search:tC,isLoading:xt,isThinking:Ee.isThinking,thinkingCharCount:Ee.thinkingCharCount,thinkingContent:Ee.thinkingContent,streamingResponse:Ee.currentResponse,currentTool:Ee.currentTool,activeToolCalls:Ee.activeToolCalls,toolInputCharCount:Ee.toolInputCharCount,toolInputContent:Ee.toolInputContent,iterationHistory:Ee.iterationHistory,currentIteration:Ee.currentIteration,isCompacting:Ee.isCompacting,agentMode:F.agentMode,managedPhase:xt?Q?.phase:void 0,managedHarnessProfile:xt?Q?.harnessProfile:void 0,managedWorkerTitle:xt?Q?.activeWorkerTitle:void 0,managedRound:xt?Q?.currentRound:void 0,managedMaxRounds:xt?Q?.maxRounds:void 0,managedGlobalWorkBudget:xt?Q?.globalWorkBudget:void 0,managedBudgetUsage:xt?Q?.budgetUsage:void 0,managedBudgetApprovalRequired:xt?Q?.budgetApprovalRequired:void 0,lastLiveActivityLabel:Ee.lastLiveActivityLabel,liveStatusLines:ea,viewportRows:nn.messageRows,viewportWidth:ee,scrollOffset:gr,windowed:!!d?.windowed,animateSpinners:!!d?.rendererWindow&&ia,rendererWindow:d?.rendererWindow,transcriptModel:d?.rendererWindow?vl:Qd,maxLines:Bt,showDetailedTools:Kt,showAllContent:Kt,selectedItemId:er.selectionEnabled?ct:void 0,selectedTextRanges:ai?.rowRanges,expandedItemKeys:er.selectionEnabled?Pn:void 0,onMetricsChange:uf,onVisibleRowsChange:df}),[Wo,F.agentMode,xt,Pn,c.transcriptSpinnerAnimation,uf,df,gr,HT,Q?.activeWorkerTitle,Q?.budgetApprovalRequired,Q?.budgetUsage,Q?.currentRound,Q?.globalWorkBudget,Q?.harnessProfile,Q?.maxRounds,Q?.phase,vl,Qd,zi.browseHintText,ct,lf,ee,ia,Tl,Bt,Ee.activeToolCalls,Ee.currentIteration,Ee.currentResponse,Ee.currentTool,Ee.isCompacting,Ee.isThinking,Ee.iterationHistory,Ee.lastLiveActivityLabel,Ee.thinkingCharCount,Ee.thinkingContent,Ee.toolInputCharCount,Ee.toolInputContent,ea,ai?.rowRanges,tC,Kt,nn.messageRows]),QO=ue?Kg({bannerVisible:!1,windowed:Ft}):Gg({bannerVisible:!1}),qC=ue?JO:qO,ZO=c.enabled&&Ho,JC=_n(M,{flexDirection:"column",width:ee,flexShrink:0,flexGrow:ZO?1:0,children:[pe(Uw,{currentConfig:F,setCurrentConfig:Ae,isLoading:H,abort:_e,stopThinking:te,clearThinkingContent:oe,setCurrentTool:Ie,setIsLoading:ne,onToggleHelp:kO,setShowHelp:LT,onSetThinking:o(d=>{Ne.current.thinking=d},"onSetThinking"),onSetReasoningMode:o(d=>{Ne.current.reasoningMode=d,Ne.current.thinking=d!=="off"},"onSetReasoningMode"),onToggleTranscriptMode:HO,onOpenTranscriptSearch:$g,canOpenTranscriptSearch:ue&&!Ye&&!je,isInteractiveDialogActive:!!(Ye||je),onSetAgentMode:o(d=>{Ne.current.agentMode=d},"onSetAgentMode"),onSetPermissionMode:o(d=>{Hg(d)},"onSetPermissionMode"),isInputEmpty:rl,onSavePermissionMode:Cv}),mr&&(c.enabled?null:pe(Ja,{items:[1],children:o(()=>pe(kx,{...Wo},"banner"),"children")})),Ho?pe(bm,{width:ee,stickyHeader:zi.stickyHeader,jumpToLatest:zi.jumpToLatest,transcript:!c.enabled||!Ft?ue?Kg({bannerVisible:!1}):Gg({bannerVisible:!1}):void 0,renderTranscriptWindow:c.enabled&&Ft?d=>(()=>{let x=_l(d).contentWindow;return ue?Kg({bannerVisible:!1,windowed:!0,rendererWindow:x}):Gg({bannerVisible:!1,rendererWindow:x})})():void 0,overlay:Bg,scrollTop:gr,scrollHeight:Ml,viewportHeight:nn.messageRows,stickyScroll:!ue&&!Nr&&ag,overscanRows:oG,scrollRef:pO,onWindowChange:DO,onScrollTopChange:hO,onStickyChange:gO,footer:qC}):_n(NV,{children:[_n(M,{flexDirection:"column",flexGrow:1,children:[QO,Bg?pe(M,{position:"absolute",bottom:0,left:0,right:0,flexDirection:"column",children:Bg}):null]}),qC]})]});return xg?pe(Xy,{mouseTracking:Vi.usesRendererMouseTracking,children:JC}):JC},"InkREPLInner"),uG=o(e=>{let t=process.cwd(),n=e.options?.context?.gitRoot??void 0;return pe(Lu,{children:pe(Wu,{getPendingInputAgentId:o(()=>Tf(e.context.sessionId,"/root"),"getPendingInputAgentId"),children:pe(hu,{children:pe(Ww,{children:pe(Jp,{cwd:t,gitRoot:n,children:pe(lG,{...e})})})})})})},"InkREPL");function dG(){return process.stdin.isTTY===!0&&typeof process.stdin.setRawMode=="function"}o(dG,"isRawModeSupported");async function Kh(e){if(!dG())throw new ny("Interactive mode requires a TTY with raw mode support.",['kodax -p "your task" # Run a single task',"kodax -c # Continue last session","kodax -r # Resume session"]);let t=e.storage??new Is,n=ro(),r=io(),i=oo(n,r),{prepareRuntimeConfig:s}=await import("./utils-5J4BHNBV.js"),{loadCompactionConfig:a}=await import("./compaction-config-2TVSYSB4.js"),{resolveProvider:c}=await import("./dist-H4PT2QAV.js"),l=s(),u=Ma({explicitProvider:e.provider,environmentProvider:process.env.KODAX_PROVIDER,configuredProvider:l.provider,defaultProvider:wf}),f=_a({explicitProvider:e.provider,environmentProvider:process.env.KODAX_PROVIDER,explicitModel:e.model,configuredProvider:l.provider,configuredModel:l.model}),p=GV(e,l),h=Aa({explicitEffort:e.effort,environmentEffort:process.env.KODAX_EFFORT,configuredEffort:l.effort}),m=Yf(e,l,process.env.KODAX_EFFORT),g=e.agentMode??l.agentMode??"ama",C=p!=="off",w=ka(l.permissionMode,"accept-edits")??"accept-edits",T=Bf(),v=l.repoIntelligenceTrace===!0,A={provider:u,model:f,effort:h,effortOverride:m,planModeEffort:l.planModeEffort,thinking:C,reasoningMode:p,agentMode:g,permissionMode:w,repoIntelligenceMode:T.mode,repoIntelligenceTrace:v},D=e.session?.id,k=[],E,P,B,$,G,re="",X=await Ur({cwd:process.cwd()}),y=X.workspaceRoot??void 0,_=X,ee=y,W=Rf({meta:{cwd:process.cwd(),startedAt:Date.now()}});if(W){let te=o(()=>{W.shutdown()},"teamModeCleanup");process.on("exit",te),process.on("SIGTERM",te)}try{let{bootstrapConstructionRuntime:te}=await import("./construction-bootstrap-474QPSYB.js"),oe=await te(y??process.cwd());if(oe.loaded>0||oe.failed>0||oe.tampered>0){let Ie=oe.failed>0?`; ${oe.failed} failed`:"",nt=oe.tampered>0?`; ${oe.tampered} skipped due to manifest contentHash mismatch \u2014 re-stage and re-activate to re-approve`:"";ft({source:"repl:construction",level:oe.failed>0||oe.tampered>0?"warn":"info",message:`Rehydrated ${oe.loaded} active tool(s)${Ie}${nt}.`})}if(oe.markdownLoaded>0||oe.markdownFailures.length>0){ft({source:"repl:agents",level:oe.markdownFailures.length>0?"warn":"info",message:`Loaded ${oe.markdownLoaded} markdown agent(s).`});for(let Ie of oe.markdownFailures)ft({source:"repl:agents",level:"warn",message:`Skipped markdown agent ${Ie.path}: ${Ie.reason}`})}}catch(te){ft({source:"repl:construction",level:"warn",message:`Bootstrap failed: ${te.message}. Self-construction disabled this session.`})}let le;try{let te=await a(y),oe=c(u);le={contextWindow:te.contextWindow??oe.getContextWindow?.()??2e5,triggerPercent:te.triggerPercent,triggerTokens:te.triggerTokens,enabled:te.enabled,reservedResponseTokens:oe.getEffectiveMaxOutputTokens?.(f),userOverrideContextWindow:te.contextWindow}}catch{}if(e.session?.id&&!e.session.resume){let te=await t.load(e.session.id);te&&(k=te.messages,E=wo(te.uiHistory),P=te.lineage,B=te.artifactLedger,$=te.extensionState,G=te.extensionRecords,re=te.title,D=e.session.id,_=In(te)??X,ee=_.workspaceRoot??void 0,e={...e,session:{...e.session??{},id:D,tag:te.tag}},console.log(yt.green(`[Session loaded: ${D}]`)))}else if(e.session?.resume||e.session?.autoResume){let te=await Cc(t,y);if(te){let oe=await t.load(te.id);oe&&(k=oe.messages,E=wo(oe.uiHistory),P=oe.lineage,B=oe.artifactLedger,$=oe.extensionState,G=oe.extensionRecords,re=oe.title,D=te.id,_=In(oe)??X,ee=_.workspaceRoot??void 0,e={...e,session:{...e.session??{},id:D,tag:oe.tag}},console.log(yt.green(`[Continuing session: ${te.id}]`)))}}let de=await xc({sessionId:D,gitRoot:ee,runtimeInfo:_,existingMessages:k,existingUiHistory:E,existingLineage:P,existingArtifactLedger:B,existingExtensionState:$,existingExtensionRecords:G});de.title=re,e={...e,context:{...e.context,gitRoot:de.gitRoot??void 0,executionCwd:de.runtimeInfo?.executionCwd??de.gitRoot??process.cwd()}},W?.writer.update({sessionId:de.sessionId});let he={current:null},_e={current:null},fe={current:A},Te=Oa(),Pe=await Tc({askUser:o(async(te,oe,Ie)=>{let nt=he.current;return nt?nt(te,oe,Ie):"block"},"askUser"),projectRoot:y??process.cwd(),executionCwd:_.executionCwd??y??process.cwd(),getCurrentProviderName:o(()=>fe.current.provider,"getCurrentProviderName"),getCurrentModel:o(()=>fe.current.model,"getCurrentModel"),getCurrentPermissionMode:o(()=>fe.current.permissionMode,"getCurrentPermissionMode"),autoModeSettings:Te,log:o((te,oe)=>{ft({source:"repl:auto-mode",level:te==="warn"?"warn":"info",message:oe})},"log"),onEngineChange:o(te=>{_e.current?.(te)},"onEngineChange"),extraCollectors:[Pa]});try{let te=process.stdout,oe=process.stdin,Ie=!1,{waitUntilExit:nt,cleanup:vt}=qa(pe(uG,{options:e,config:A,context:de,startupRuntimeInfo:X,storage:t,autoModeSettings:wc(Te),compactionInfo:le,rendererMode:r,fullscreenPolicy:i,autoModeBootstrap:Pe,setAutoModeAskUser:o(Ve=>{he.current=Ve},"setAutoModeAskUser"),setAutoModeEngineChange:o(Ve=>{_e.current=Ve},"setAutoModeEngineChange"),setCurrentConfigRef:o(Ve=>{fe.current=Ve},"setCurrentConfigRef"),teamModeHandle:W,onExit:o(()=>{Ie=!0},"onExit")}),{stdout:te,stdin:oe,exitOnCtrlC:!1,patchConsole:!1,maxFps:30,shellMode:i.enabled?i.promptShell:"main-screen"});await nt(),vt(),W?.shutdown(),oe.isTTY===!0&&typeof oe.setRawMode=="function"&&oe.isRaw&&oe.setRawMode(!1),oe.pause?.(),oe.unref?.(),Ie&&console.log(yt.dim(`
198
198
  [Exiting KodaX...]`));let Ke=e.hardExitOnClose??process.env.VITEST!=="true";if(Ie&&Ke){let Ve=process.exitCode??0,me=!1,Re=o(()=>{me||(me=!0,process.exit(Ve))},"requestProcessExit");setTimeout(Re,0).unref?.(),te.write("",Re);return}}catch(te){throw te instanceof Error&&te.message.includes("Raw mode")?new ny("Interactive mode failed to start.",['kodax -p "your task" # Run a single task',"kodax -c # Continue last session"]):te}}o(Kh,"runInkInteractiveMode");import{jsx as dd,jsxs as Gc}from"react/jsx-runtime";import{useMemo as fG,useRef as pG,useState as Ax}from"react";var mG=40;function hG(e,t){let n=t.trim().toLocaleLowerCase().split(/\s+/).filter(Boolean);return n.length===0?[...e]:e.filter(r=>{let i=[r.title,r.id,r.surface??"",r.createdAt??"",String(r.msgCount)].join(" ").toLocaleLowerCase();return n.every(s=>i.includes(s))})}o(hG,"filterSessionPickerItems");function gG(e,t,n){let r=Math.max(1,n),i=e.length===0?0:Math.max(0,Math.min(t,e.length-1)),s=Math.floor(i/r)*r;return{items:e.slice(s,s+r),selectedIndex:i,pageStart:s,pageIndex:Math.floor(s/r),pageCount:Math.max(1,Math.ceil(e.length/r))}}o(gG,"buildSessionPickerPage");function yG(e){if(!e)return"unknown time";let t=new Date(e);if(Number.isNaN(t.getTime()))return e;let n=t.getFullYear(),r=String(t.getMonth()+1).padStart(2,"0"),i=String(t.getDate()).padStart(2,"0"),s=String(t.getHours()).padStart(2,"0"),a=String(t.getMinutes()).padStart(2,"0");return`${n}-${r}-${i} ${s}:${a}`}o(yG,"formatTimestamp");function SG({sessions:e,onSelect:t,onSelectionError:n,onCancel:r,pageSize:i=8}){let{exit:s}=Yr(),[a,c]=Ax(""),[l,u]=Ax(0),[f,p]=Ax(!1),h=pG(!1),m=fG(()=>hG(e,a),[e,a]),g=gG(m,l,i),C=m[g.selectedIndex];return Qa((w,T)=>{if(!h.current){if(T.escape||T.ctrl&&w==="c"){r(),s();return}if(T.return){let v=m[g.selectedIndex];v&&(h.current=!0,p(!0),(async()=>{await new Promise(A=>setTimeout(A,mG));try{await t(v)}catch(A){n(A)}finally{s()}})());return}if(T.upArrow)u(v=>Math.max(0,v-1));else if(T.downArrow)u(v=>Math.min(Math.max(0,m.length-1),v+1));else if(T.pageUp)u(v=>Math.max(0,v-i));else if(T.pageDown)u(v=>Math.min(Math.max(0,m.length-1),v+i));else if(T.home)u(0);else if(T.end)u(Math.max(0,m.length-1));else if(T.tab){let v=m[g.selectedIndex];v&&(c(v.title),u(0))}else T.backspace||T.delete?(c(v=>v.slice(0,-1)),u(0)):w&&!T.ctrl&&!T.meta&&!T.super&&(c(v=>v+w),u(0))}}),Gc(M,{flexDirection:"column",borderStyle:"round",borderColor:"cyan",paddingX:1,children:[dd(b,{bold:!0,color:"cyan",children:"Resume a session"}),Gc(b,{children:["Search: ",dd(b,{color:"yellow",children:a||"type to filter"})]}),dd(b,{dimColor:!0,children:f?"Loading selected session...":"\u2191/\u2193 select \xB7 PgUp/PgDn page \xB7 Tab complete \xB7 Enter resume \xB7 Esc cancel"}),Gc(M,{flexDirection:"column",marginTop:1,children:[g.items.length===0?dd(b,{color:"yellow",children:"No matching sessions."}):null,g.items.map((w,T)=>{let A=g.pageStart+T===g.selectedIndex,D=w.title.trim()||"Untitled session",k=w.surface?` \xB7 ${w.surface}`:"";return Gc(b,{color:A?"cyan":void 0,bold:A,children:[A?"\u276F":" "," ",D," \xB7 ",w.msgCount," msgs",k," \xB7 ",yG(w.createdAt)," \xB7 ",w.id.slice(0,8)]},w.id)})]}),Gc(b,{dimColor:!0,children:[m.length," matches \xB7 Page ",g.pageIndex+1,"/",g.pageCount]}),Gc(b,{dimColor:!0,children:["Selected ID: ",C?.id??"none"]})]})}o(SG,"SessionPicker");async function QL(e,t={}){if(process.stdin.isTTY!==!0||process.stdout.isTTY!==!0)throw new Error("Searchable session resume requires an interactive terminal. Pass an exact session ID or title to -r/--resume instead.");let n,r=!1,i=!1,s,a=Math.max(4,Math.min(12,(process.stdout.rows??24)-8)),c=qa(dd(SG,{sessions:e,pageSize:a,onSelect:o(async l=>{n=l,await t.prepareSelection?.(l)},"onSelect"),onSelectionError:o(l=>{i=!0,s=l},"onSelectionError"),onCancel:o(()=>{r=!0},"onCancel")}),{stdin:process.stdin,stdout:process.stdout,stderr:process.stderr,exitOnCtrlC:!1,patchConsole:!1});try{await c.waitUntilExit()}finally{c.unmount(),c.cleanup()}if(i)throw s;if(!n&&!r)throw new Error("Session picker exited unexpectedly before selection or cancellation.");return n}o(QL,"runSessionPicker");import Tn from"chalk";var ZL=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"],eP=["\x1B[36m","\x1B[35m","\x1B[34m"],pd=null,Kc=!1;function fd(){let e=0,t=0,n=!1,r="Thinking...",i=o(()=>{if(n)return;let c=eP[t%eP.length],l="\x1B[0m",u=ZL[e%ZL.length];process.stdout.write(`\r${c}${u}${l} ${r}`)},"renderFrame"),s=setInterval(()=>{e++,e%10===0&&t++,i()},80);i();let a={stop:o(()=>{n||(n=!0,clearInterval(s),process.stdout.write("\r\x1B[K"))},"stop"),isStopped:o(()=>n,"isStopped"),updateText:o(c=>{r=c},"updateText")};return pd=a,a}o(fd,"startWaitingDots");function tP(e=!0){let t=null,n=0,r=!1;return{onSessionStart:o(s=>{console.log(e?Tn.cyan(`[KodaX] Provider: ${s.provider} | Session: ${s.sessionId}`):Tn.cyan(`[KodaX] Provider: ${s.provider}`))},"onSessionStart"),onTextDelta:o(s=>{t&&(t.stop(),t=null),n=0,process.stdout.write(s),r=!0},"onTextDelta"),onThinkingDelta:o(s=>{n+=s.length,t||(t=fd()),t.updateText(`Thinking... (${n} chars)`)},"onThinkingDelta"),onThinkingEnd:o(s=>{if(t&&(t.stop(),t=null),s){let a=s.replace(/\n/g," "),c=a.length>100?a.slice(0,100)+"...":a;console.log(Tn.dim(`[Thinking] ${c}`))}},"onThinkingEnd"),onToolUseStart:o(s=>{t||(Kc||(process.stdout.write(`
199
199
  `),Kc=!0),t=fd()),t.updateText(`Executing ${s.name}...`)},"onToolUseStart"),onToolInputDelta:o((s,a,c)=>{let l=a.length;t&&!t.isStopped()?t.updateText(`Receiving ${s}... (${l} chars)`):(!t||t.isStopped())&&(Kc||(process.stdout.write(`
200
200
  `),Kc=!0,r=!1),t=fd(),t.updateText(`Receiving ${s}... (${l} chars)`))},"onToolInputDelta"),onToolResult:o(s=>{t&&(t.stop(),t=null),console.log(Tn.green(`[Result] ${s.content.slice(0,300)}${s.content.length>300?"...":""}`))},"onToolResult"),onRepoIntelligenceTrace:o(s=>{t&&(t.stop(),t=null),console.log(Tn.dim(`[RepoIntel] ${s.summary}`))},"onRepoIntelligenceTrace"),onSidecarMessage:o(s=>{t&&(t.stop(),t=null);let a=s.delivery==="budget-exhausted"?"\u26A1 Sidecar Verifier \u2014 budget exhausted":s.verdict==="blocked"?"\u26A1 Sidecar Verifier \u2014 blocked":"\u26A1 Sidecar Verifier \u2014 revise",c=s.suggestedFix?`${s.content}
@@ -240,7 +240,7 @@ ${t}`),console.log("\u2500".repeat(t.length)),n.forEach((r,i)=>{console.log(` $
240
240
  Keyboard: Tab (complete) | Esc+Esc (edit last) | Ctrl+T (reasoning) | Ctrl+E (editor) | Ctrl+R (history)
241
241
  `))}o(bP,"printStartupBanner");async function WG(e,t,n){if(e?.id){let r=await t.load(e.id);if(!r)return null;let i=In(r);return{id:e.id,data:r,kind:"load",...i?{runtimeInfo:i}:{}}}if(e?.resume||e?.autoResume){let r=await Cc(t,n);if(!r)return null;let i=await t.load(r.id);if(!i)return null;let s=In(i);return{id:r.id,data:i,kind:"continue",...s?{runtimeInfo:s}:{}}}return null}o(WG,"loadClassicStartupSession");async function jG(e){return(await Mf(e)).getSystemPromptSnippet()}o(jG,"buildClassicCliSkillsPrompt");function UG(e,t){let n=Ef(e);t.context={...t.context,skillsPrompt:n.getSystemPromptSnippet()}}o(UG,"syncClassicCliSkillsPrompt");var Gx=class{static{o(this,"MemorySessionStorage")}sessions=new Map;async save(t,n){let r=this.sessions.get(t),i=qe(n.messages,n.lineage??r?.data.lineage);this.sessions.set(t,{createdAt:r?.createdAt??new Date().toISOString(),data:{...structuredClone(n),scope:n.scope??r?.data.scope??"user",uiHistory:n.uiHistory??r?.data.uiHistory,extensionState:n.extensionState??r?.data.extensionState,extensionRecords:n.extensionRecords??r?.data.extensionRecords,tag:n.tag??r?.data.tag,lineage:i}})}async load(t){return structuredClone(this.sessions.get(t)?.data??null)}async getLineage(t){return structuredClone(this.sessions.get(t)?.data.lineage??null)}async loadFullLineage(t){return this.getLineage(t)}async setActiveEntry(t,n,r){let i=this.sessions.get(t);if(!i?.data.lineage)return null;let s=ga(i.data.lineage,n,r);if(!s)return null;let a={...structuredClone(i.data),messages:Lt(s),lineage:s};return this.sessions.set(t,{...i,data:a}),structuredClone(a)}async setLabel(t,n,r){let i=this.sessions.get(t);if(!i?.data.lineage)return null;let s=ya(i.data.lineage,n,r);if(!s)return null;let a={...structuredClone(i.data),lineage:s};return this.sessions.set(t,{...i,data:a}),structuredClone(a)}async fork(t,n,r){let i=this.sessions.get(t);if(!i?.data.lineage)return null;let s=Si(i.data.lineage,n);if(!s)return null;let a=r?.sessionId??await Ta(),c={messages:Lt(s),title:r?.title??i.data.title,gitRoot:i.data.gitRoot,tag:i.data.tag,runtimeInfo:i.data.runtimeInfo?structuredClone(i.data.runtimeInfo):void 0,scope:i.data.scope??"user",extensionState:i.data.extensionState?structuredClone(i.data.extensionState):void 0,extensionRecords:i.data.extensionRecords?structuredClone(i.data.extensionRecords):void 0,lineage:s};return this.sessions.set(a,{createdAt:new Date().toISOString(),data:c}),{sessionId:a,data:structuredClone(c)}}async rewind(t,n){let r=this.sessions.get(t);if(!r?.data.lineage)return null;let i=n??wa(r.data.lineage);if(!i)return null;let s=xa(r.data.lineage,i);if(!s)return null;let a={...r.data,messages:Lt(s),lineage:s};return this.sessions.set(t,{...r,data:a}),structuredClone(a)}async list(t){return Array.from(this.sessions.entries()).filter(([,n])=>(n.data.scope??"user")==="user").map(([n,r])=>({id:n,title:r.data.title,msgCount:r.data.lineage?Ji(r.data.lineage):r.data.messages.length,...r.data.tag!==void 0?{tag:r.data.tag}:{},...r.data.runtimeInfo?{runtimeInfo:structuredClone(r.data.runtimeInfo)}:{}}))}async delete(t){this.sessions.delete(t)}async deleteAll(t){this.sessions.clear()}};function Ux(e,t,n){e.runtimeInfo=n,e.gitRoot=n?.workspaceRoot??e.gitRoot,t.context={...t.context,gitRoot:e.gitRoot,executionCwd:n?.executionCwd??process.cwd()}}o(Ux,"applyRuntimeContext");function Xh(e,t){let n=t.runtimeSessionSnapshot;n&&("extensionState"in n&&(e.extensionState=n.extensionState?structuredClone(n.extensionState):{},e.extensionStateDirty=!0),"extensionRecords"in n&&(e.extensionRecords=n.extensionRecords?.map(r=>({...r}))??[],e.extensionRecordsDirty=!0))}o(Xh,"applyRuntimeSessionSnapshot");function Fi(e){return{...e.extensionStateDirty?{extensionState:e.extensionState??{}}:{},...e.extensionRecordsDirty?{extensionRecords:e.extensionRecords??[]}:{}}}o(Fi,"contextExtensionSessionData");function qc(e){e.extensionStateDirty=!1,e.extensionRecordsDirty=!1}o(qc,"markExtensionSessionPersisted");function VG(e,t){return e.reasoningMode?e.reasoningMode:t.reasoningMode?t.reasoningMode:(e.thinking===!0||t.thinking===!0,"auto")}o(VG,"resolveInitialReasoningMode");var Kx={current:null};async function kP(e){let t=await Ur({cwd:process.cwd()}),n=t.workspaceRoot??await Ti()??void 0,r=e.storage??new Gx,i=await WG(e.session,r,n),s=i?i.runtimeInfo??t:t,a=s.workspaceRoot??n;i&&(e={...e,session:{...e.session??{},id:i.id,tag:i.data.tag}});let c=Rf({meta:{cwd:process.cwd(),startedAt:Date.now()}}),l=Xf(),u=Ma({explicitProvider:e.provider,environmentProvider:process.env.KODAX_PROVIDER,configuredProvider:l.provider,defaultProvider:wf}),f=_a({explicitProvider:e.provider,environmentProvider:process.env.KODAX_PROVIDER,explicitModel:e.model,configuredProvider:l.provider,configuredModel:l.model}),p=VG(e,l),h=Aa({explicitEffort:e.effort,environmentEffort:process.env.KODAX_EFFORT,configuredEffort:l.effort}),m=Yf(e,l,process.env.KODAX_EFFORT),g=e.agentMode??l.agentMode??"ama",C=p!=="off",w=ka(l.permissionMode,"accept-edits")??"accept-edits",T=Kf();w==="auto-in-project"&&T();let v=Bf(),A=l.theme;A&&yd(A);let D=Ns(),k={provider:u,model:f,effort:h,effortOverride:m,planModeEffort:l.planModeEffort,thinking:C,reasoningMode:p,agentMode:g,permissionMode:w,repoIntelligenceMode:v.mode,repoIntelligenceTrace:v.trace,fallbackProviders:l.fallbackProviders},E=w,P=$a(),B=o(L=>Qo({provider:L?.provider??k.provider,model:L?.model??k.model,effort:k.effort,effortOverride:k.effortOverride,permissionMode:L?.permissionMode??k.permissionMode,planModeEffort:k.planModeEffort,thinking:k.thinking,reasoningMode:k.reasoningMode}),"resolveCurrentRuntimeEffort"),$=0,G="",re=!1,X=500,y=await xc({sessionId:i?.id??e.session?.id,gitRoot:a,runtimeInfo:s,existingMessages:i?.data.messages,existingUiHistory:i?.data.uiHistory,existingLineage:i?.data.lineage,existingArtifactLedger:i?.data.artifactLedger,existingExtensionState:i?.data.extensionState,existingExtensionRecords:i?.data.extensionRecords});if(y.title=i?.data.title??"",i){let L=i.kind==="continue"?"Continuing session":"Session loaded";process.stdout.write(`${ce.green(`[${L}: ${i.id}]`)}
242
242
  `)}y.skillDynamicContext=e.skillDynamicContext,c?.writer.update({sessionId:y.sessionId});let _=o(L=>ko(k,L,(V,H,ne)=>{console.log((V==="block"?ce.red:ce.yellow)(`
243
- ${H}`));for(let F of ne)console.log(ce.dim(F));console.log()}),"guardSessionTransition"),ee=await Qf(a??void 0),{resolveProvider:W}=await import("./dist-XC5M7UYX.js"),le=W(k.provider),de=ee.contextWindow??le.getEffectiveContextWindow?.(k.model)??le.getContextWindow?.()??2e5,{loadAgentsFiles:he}=await import("./dist-XC5M7UYX.js"),_e=o(async()=>he({cwd:process.cwd(),projectRoot:y.gitRoot??void 0}),"reloadAgentsFiles"),fe=await _e();if(bP(k,k.permissionMode,{contextWindow:de,triggerPercent:ee.triggerPercent,triggerTokens:ee.triggerTokens,enabled:ee.enabled},fe),vP(s),e.learning)try{let L=Zf(await e.learning.getSnapshot());L&&console.log(ce.yellow(`
243
+ ${H}`));for(let F of ne)console.log(ce.dim(F));console.log()}),"guardSessionTransition"),ee=await Qf(a??void 0),{resolveProvider:W}=await import("./dist-H4PT2QAV.js"),le=W(k.provider),de=ee.contextWindow??le.getEffectiveContextWindow?.(k.model)??le.getContextWindow?.()??2e5,{loadAgentsFiles:he}=await import("./dist-H4PT2QAV.js"),_e=o(async()=>he({cwd:process.cwd(),projectRoot:y.gitRoot??void 0}),"reloadAgentsFiles"),fe=await _e();if(bP(k,k.permissionMode,{contextWindow:de,triggerPercent:ee.triggerPercent,triggerTokens:ee.triggerTokens,enabled:ee.enabled},fe),vP(s),e.learning)try{let L=Zf(await e.learning.getSnapshot());L&&console.log(ce.yellow(`
244
244
  ${L}
245
245
  `))}catch(L){ft({source:"repl:learning",level:"warn",message:"Failed to recover the Learning Center startup summary.",detail:L instanceof Error?L.message:String(L)})}let Te=Yv(()=>y.gitRoot??process.cwd()),Pe=RP.createInterface({input:process.stdin,output:process.stdout,terminal:process.stdout.isTTY??!0,historySize:100,completer:o((L,V)=>{Te(L).then(H=>{V(null,H)}).catch(()=>{V(null,[[],L])})},"completer")}),te=o(async(L,V)=>{let H=await Yc(Pe,L.toolName,{...L.input,...L.reason!==void 0?{_reason:L.reason}:{},...L.executionCwd!==void 0?{_executionCwd:L.executionCwd}:{},...L.risk!==void 0?{_runtimeRisk:L.risk}:{}},{permissionMode:E,runtimeGrantSuggestions:L.grantSuggestions??[],signal:V.signal});return jm(L,H)},"requestRuntimePermission"),oe=Oa(),Ie=wc(oe);await e.runtimeAutoModeControl?.syncSettings?.(y.sessionId,E,Ie);let nt=await Tc({askUser:o(async(L,V,H)=>(await Yc(Pe,L.name,{...L.input,...H&&H.length>0?{_classifierSignals:H}:{}},{permissionMode:E,reason:`[auto-mode] ${V}`})).confirmed?"allow":"block","askUser"),projectRoot:a??process.cwd(),executionCwd:s.executionCwd??a??process.cwd(),getCurrentProviderName:o(()=>k.provider,"getCurrentProviderName"),getCurrentModel:o(()=>k.model,"getCurrentModel"),getCurrentPermissionMode:o(()=>E,"getCurrentPermissionMode"),autoModeSettings:oe,log:o((L,V)=>{console.log(L==="warn"?ce.yellow(V):ce.dim(V))},"log"),extraCollectors:[Pa]}),vt=jf({getProvider:o(()=>W(k.provider),"getProvider"),getModel:o(()=>k.model??"","getModel")}),Ke=`
246
246
  Keyboard Shortcuts:
@@ -1,5 +1,5 @@
1
1
  // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
2
- import{D as N,J as C}from"./chunk-QPBN3J4E.js";import{ie as q,je as j,na as _}from"./chunk-AGZNXFHZ.js";import{Pa as E,gb as T,m as x,n as R}from"./chunk-FBL7IVMK.js";import{Hd as O,Id as W,Nd as M,qg as $,rg as g,sg as k,vg as I,wg as y,xg as b}from"./chunk-7XSZVOG7.js";import{a as o}from"./chunk-ONUPGMER.js";import{join as Pe}from"node:path";var ne=["You generate KodaX Dynamic Workflow scripts.","Return JSON only. Do not wrap the answer in prose.","For simple tasks that do not benefit from multiple agents, return:",'{"action":"decline","reason":"..."}',"For complex tasks, return:",'{"action":"generate","manifest":{...},"source":"async function run(wf, args) { ... }","approvalSummary":"..."}',"Generated source may only coordinate agents through wf and args.","Generated source must return displayable final text for the user.","Never use import, require, process, fs, child_process, network APIs, shell commands, or direct file access."].join(`
2
+ import{D as N,J as C}from"./chunk-PRASABCC.js";import{ie as q,je as j,na as _}from"./chunk-JTZKC4TV.js";import{Pa as E,gb as T,m as x,n as R}from"./chunk-BHE66SP3.js";import{Hd as O,Id as W,Nd as M,qg as $,rg as g,sg as k,vg as I,wg as y,xg as b}from"./chunk-7XSZVOG7.js";import{a as o}from"./chunk-ONUPGMER.js";import{join as Pe}from"node:path";var ne=["You generate KodaX Dynamic Workflow scripts.","Return JSON only. Do not wrap the answer in prose.","For simple tasks that do not benefit from multiple agents, return:",'{"action":"decline","reason":"..."}',"For complex tasks, return:",'{"action":"generate","manifest":{...},"source":"async function run(wf, args) { ... }","approvalSummary":"..."}',"Generated source may only coordinate agents through wf and args.","Generated source must return displayable final text for the user.","Never use import, require, process, fs, child_process, network APIs, shell commands, or direct file access."].join(`
3
3
  `),P=12e4,re="KODAX_WORKFLOW_GENERATION_TIMEOUT_SEC",se="KODAX_WORKFLOW_GENERATION_TIMEOUT_MS",oe=64,ie=2,ae=2e3,le=[{name:"default"},{name:"variant-results",finalText:o((e,n)=>`Variant smoke child report from ${e} (${n}).`,"finalText"),synthesizeText:"Variant smoke synthesis report."},{name:"unverified-success",status:o(()=>"completed_unverified","status"),finalText:o(e=>`Smoke result for ${e}: completed with verification warnings.`,"finalText"),synthesizeText:"Smoke synthesis: completed with verification warnings."},{name:"empty-args-rerun",args:o(()=>({}),"args")}],ce=[{id:"import",pattern:/\bimport\s*(?:\(|['"*{]|\w+\s+from\b)/},{id:"require",pattern:/\brequire\s*\(/},{id:"process",pattern:/\bprocess\s*(?:\.|\[)/},{id:"fs",pattern:/\b(?:node:)?fs\b/},{id:"child_process",pattern:/\bchild_process\b/},{id:"shell",pattern:/\b(?:exec|spawn|execFile)\s*\(/},{id:"fetch",pattern:/\bfetch\s*\(/},{id:"Deno",pattern:/\bDeno\s*(?:\.|\[)/},{id:"Bun",pattern:/\bBun\s*(?:\.|\[)/},{id:"globalThis-index",pattern:/\bglobalThis\s*\[/}];function ue(e=process.env,n){let t=x(n?.workflow?.generationTimeoutSec,"timeouts.workflow.generationTimeoutSec");if(t!==void 0)return t;let r=R(e[re]);if(r!==void 0)return r;let s=e[se];if(s===void 0||s.trim().length===0)return P;let i=Number(s);return!Number.isFinite(i)||i<=0?P:Math.floor(i)}o(ue,"resolveWorkflowGenerationTimeoutMs");function fe(e,n){if(typeof e!="object"||e===null)throw new Error(`${n} must be an object`);return e}o(fe,"readRecord");function D(e,n){let t=e[n];if(typeof t!="string"||t.trim().length===0)throw new Error(`workflow generation ${n} must be a non-empty string`);return t}o(D,"readNonEmptyString");function de(e){let n=e.trim(),t=/^```(?:json)?\s*([\s\S]*?)\s*```$/i.exec(n);if(t?.[1])return t[1].trim();let r=n.indexOf("{"),s=n.lastIndexOf("}");if(r>=0&&s>r)return n.slice(r,s+1);throw new Error("workflow generation output did not contain a JSON object")}o(de,"extractJsonText");function pe(e){let n=de(e);return fe(JSON.parse(n),"workflow generation output")}o(pe,"parseGenerationJson");function me(e){if(typeof e=="string"){let t=e.trim();return t.length>0?t:void 0}if(typeof e!="object"||e===null)return;let n=e;for(let t of["name","id","title","phase"]){let r=n[t];if(typeof r=="string"&&r.trim().length>0)return r.trim()}}o(me,"normalizePhaseEntry");function we(e){return e.split(/(?:->|\u2192|,|\n)/).map(n=>n.trim()).filter(n=>n.length>0)}o(we,"splitPhaseString");function he(e){if(typeof e!="object"||e===null)return e;let n=e,t=n.phases,r;if(Array.isArray(t)){let s=t.map(me);s.every(i=>i!==void 0)&&(r=s)}else if(typeof t=="string"){let s=we(t);s.length>0&&(r=s)}return r?{...n,phases:r}:e}o(he,"normalizeGeneratedManifestCandidate");function ge(e){return e.match(/\bwf\.(?:runAgent|spawnAgent|synthesize)\s*\(/g)?.length??0}o(ge,"estimateDirectAgentCalls");function ke(e,n){let t=e.maxConcurrency*Math.max(1,e.phases.length)+2,r=ge(n)+2,s=Math.min(oe,Math.max(e.maxAgents,t,r));return s>e.maxAgents?{...e,maxAgents:s}:e}o(ke,"reserveGeneratedWorkflowAgentCapacity");function w(e){let n="",t=0,r=["code"],s=[0];for(;t<e.length;){let i=e[t],a=e[t+1];if(r[r.length-1]==="template"){if(i==="\\"){n+=" ",t+=2;continue}if(i==="`"){n+=" ",t+=1,r.pop(),s.pop();continue}if(i==="$"&&a==="{"){n+=" ",t+=2,r.push("code"),s.push(0);continue}n+=i===`
4
4
  `?`
5
5
  `:" ",t+=1;continue}if(i==="/"&&a==="/"){for(n+=" ",t+=2;t<e.length&&e[t]!==`
@@ -1,5 +1,5 @@
1
1
  // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
2
- import"./chunk-OSQIYUGD.js";import"./chunk-THZVJ6R7.js";import"./chunk-RJIYXB62.js";import"./chunk-X75UGXP3.js";import"./chunk-QPBN3J4E.js";import{Nc as a,Sc as i,Zc as l,cd as c}from"./chunk-AGZNXFHZ.js";import"./chunk-GH3KBC2H.js";import"./chunk-YVG6OKN7.js";import"./chunk-FBL7IVMK.js";import"./chunk-7XSZVOG7.js";import"./chunk-QFV6YCIH.js";import{a as n}from"./chunk-ONUPGMER.js";var r=null;function y(e){r=e}n(y,"bindAskUserForConstruction");function p(e){return e.content?.capabilities?.tools??[]}n(p,"readDeclaredTools");var m=n(async e=>{if(!r)return"reject";let t=p(e),o=t.length>0?t.join(", "):"<none>";return await r({question:`Activate constructed tool ${e.name}@${e.version}?
2
+ import"./chunk-4BY53JTF.js";import"./chunk-XTWIGVUL.js";import"./chunk-JJ2YDBSN.js";import"./chunk-7QBWHCIZ.js";import"./chunk-PRASABCC.js";import{Nc as a,Sc as i,Zc as l,cd as c}from"./chunk-JTZKC4TV.js";import"./chunk-GH3KBC2H.js";import"./chunk-YVG6OKN7.js";import"./chunk-BHE66SP3.js";import"./chunk-7XSZVOG7.js";import"./chunk-QFV6YCIH.js";import{a as n}from"./chunk-ONUPGMER.js";var r=null;function y(e){r=e}n(y,"bindAskUserForConstruction");function p(e){return e.content?.capabilities?.tools??[]}n(p,"readDeclaredTools");var m=n(async e=>{if(!r)return"reject";let t=p(e),o=t.length>0?t.join(", "):"<none>";return await r({question:`Activate constructed tool ${e.name}@${e.version}?
3
3
  It declares capabilities.tools = [${o}].`,allowCustomInput:!1,options:[{label:"Approve \u2014 register and make callable",description:"The tool will be added to the active tool registry and the LLM can invoke it on the next turn.",value:"approve"},{label:"Reject \u2014 do not register",description:"The artifact stays staged on disk; rerun activate_tool to retry.",value:"reject"}]})==="approve"?"approve":"reject"},"replConstructionPolicy"),v=n(async e=>{if(!r)return"reject";let t=e.llmSummary.flaggedConcerns.length>0?e.llmSummary.flaggedConcerns.map(u=>` \u2022 ${u}`).join(`
4
4
  `):" \u2022 <none>",o=e.prevContent.instructions??"<no instructions>",s=e.nextContent.instructions??"<no instructions>",d=[`Self-modify activation: ${e.agentName}@${e.fromVersion} \u2192 ${e.toVersion}`,"",`LLM diff summary (severity=${e.llmSummary.severity}):`,` ${e.llmSummary.summary}`,"","Flagged concerns:",t,"",`Budget remaining (after approve): ${e.budgetRemaining-1}/${e.budgetLimit}`,"","\u2500\u2500 Previous instructions \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500",o,"\u2500\u2500 Proposed instructions \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500",s,"\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500","","The LLM summary is advisory \u2014 read the proposed instructions above before approving."].join(`
5
5
  `);return await r({question:d,allowCustomInput:!1,options:[{label:"Approve \u2014 activate the new version on the next run",description:"Resolver swap is deferred to the next Runner.run boundary so the in-flight conversation keeps the prior reference.",value:"approve"},{label:"Reject \u2014 stay on the previous version",description:"Budget is not consumed on rejection; the staged version is left on disk for diff inspection.",value:"reject"}]})==="approve"?"approve":"reject"},"replSelfModifyAskUser");async function h(e){a({cwd:e,policy:m,selfModifyAskUser:v});let t=await i();await c();let o=await l({cwd:e});return{loaded:t.loaded,failed:t.failed,tampered:t.tampered,markdownLoaded:o.loaded,markdownFailures:o.failed}}n(h,"bootstrapConstructionRuntime");export{y as bindAskUserForConstruction,h as bootstrapConstructionRuntime};