@kodax-ai/kodax 0.7.85 → 0.7.87

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 (90) hide show
  1. package/CHANGELOG.md +125 -1
  2. package/README.md +1879 -1841
  3. package/README_CN.md +1138 -1130
  4. package/dist/chunks/{agent-OQ37XUWF.js → agent-Z64QF7KG.js} +1 -1
  5. package/dist/chunks/argument-completer-HIJBXRUT.js +2 -0
  6. package/dist/chunks/chunk-3PGNESV3.js +415 -0
  7. package/dist/chunks/{chunk-IA246OAN.js → chunk-4OLXWSCQ.js} +2 -2
  8. package/dist/chunks/chunk-7XTUXMAI.js +379 -0
  9. package/dist/chunks/{chunk-TBBY2DKE.js → chunk-ASFCAPIG.js} +3 -3
  10. package/dist/chunks/{chunk-CZCEFGQG.js → chunk-BCYJIACJ.js} +2 -2
  11. package/dist/chunks/{chunk-ZVOXWLT6.js → chunk-DB4O33RR.js} +226 -214
  12. package/dist/chunks/{chunk-RSOAHVUR.js → chunk-GRJ7NKWP.js} +1 -1
  13. package/dist/chunks/{chunk-3E4OSFP2.js → chunk-ITP7J5HX.js} +136 -137
  14. package/dist/chunks/{chunk-HTVLCHWH.js → chunk-JS4RSF4B.js} +1 -1
  15. package/dist/chunks/chunk-SKELDH3G.js +123 -0
  16. package/dist/chunks/{chunk-MJ4G5ZCW.js → chunk-U44C5STU.js} +1 -1
  17. package/dist/chunks/{chunk-IWRNGH4M.js → chunk-UWKM3HNY.js} +5 -5
  18. package/dist/chunks/chunk-XH7UM4GO.js +92 -0
  19. package/dist/chunks/{chunk-ODRLFQQH.js → chunk-XKLVC7F6.js} +1 -1
  20. package/dist/chunks/chunk-YB7YVAPL.js +519 -0
  21. package/dist/chunks/{chunk-SR4E5FQK.js → chunk-ZQNOEKOB.js} +2 -2
  22. package/dist/chunks/compaction-config-E4TFBCDJ.js +2 -0
  23. package/dist/chunks/{construction-bootstrap-CZ6NWEWQ.js → construction-bootstrap-YTFOT4M2.js} +1 -1
  24. package/dist/chunks/{dist-NFLLOZWF.js → dist-M3JV4PNA.js} +1 -1
  25. package/dist/chunks/{dist-WWL2DNIJ.js → dist-X55TWIK4.js} +1 -1
  26. package/dist/chunks/host-SJHHJBPB.js +2 -0
  27. package/dist/chunks/run-manager-T5QGWNON.js +2 -0
  28. package/dist/chunks/{utils-KFLK3EHJ.js → utils-2FHVIO6X.js} +1 -1
  29. package/dist/index.d.ts +19 -19
  30. package/dist/index.js +1 -1
  31. package/dist/kodax_bootstrap.js +1 -1
  32. package/dist/kodax_cli.js +1459 -1411
  33. package/dist/kodax_resume.js +78 -76
  34. package/dist/provider-capabilities.json +239 -133
  35. package/dist/runtime-worker.js +1467 -1419
  36. package/dist/sandbox-workspace-session.js +346 -302
  37. package/dist/sdk-a2a.d.ts +12 -12
  38. package/dist/sdk-a2a.js +1 -1
  39. package/dist/sdk-agent.d.ts +17 -17
  40. package/dist/sdk-agent.js +1 -1
  41. package/dist/sdk-coding.d.ts +22 -22
  42. package/dist/sdk-coding.js +1 -1
  43. package/dist/sdk-experimental-memory.d.ts +4 -4
  44. package/dist/sdk-experimental-memory.js +1 -1
  45. package/dist/sdk-llm.d.ts +7 -7
  46. package/dist/sdk-llm.js +1 -1
  47. package/dist/sdk-mcp.js +1 -1
  48. package/dist/sdk-media.d.ts +1 -1
  49. package/dist/sdk-media.js +1 -1
  50. package/dist/sdk-repl.d.ts +16 -18
  51. package/dist/sdk-repl.js +1 -1
  52. package/dist/sdk-runtime.d.ts +22 -14
  53. package/dist/sdk-runtime.js +1 -1
  54. package/dist/sdk-sandbox.d.ts +1 -1
  55. package/dist/sdk-sandbox.js +1 -1
  56. package/dist/sdk-session.d.ts +7 -7
  57. package/dist/sdk-session.js +1 -1
  58. package/dist/sdk-skills.js +1 -1
  59. package/dist/semantic-worker.js +63 -64
  60. package/dist/types-chunks/{base.d-DxG0m09Z.d.ts → base.d-vopO1rml.d.ts} +1 -1
  61. package/dist/types-chunks/{bash-prefix-extractor.d-BnZQDirs.d.ts → bash-prefix-extractor.d-B36OQwNA.d.ts} +13 -7
  62. package/dist/types-chunks/{capability-learning.d-iPSiAmc_.d.ts → capability-learning.d-CE1tm29C.d.ts} +1 -1
  63. package/dist/types-chunks/{capsule.d-CN_iMqAS.d.ts → capsule.d-DEncDNzD.d.ts} +3 -3
  64. package/dist/types-chunks/{controller.d-A73Kf6tH.d.ts → controller.d-C1YdP_pQ.d.ts} +1 -1
  65. package/dist/types-chunks/{controller.d-Dzxz22X-.d.ts → controller.d-Dif9pbC9.d.ts} +2 -2
  66. package/dist/types-chunks/{guardrail.d-BCkgaWT1.d.ts → guardrail.d-DhpnJv4Y.d.ts} +5 -11
  67. package/dist/types-chunks/{history-retrieval.d-Debbzn1z.d.ts → history-retrieval.d-YJQpQt7h.d.ts} +2 -2
  68. package/dist/types-chunks/{public-api.d-N6G6Jw8X.d.ts → public-api.d-D4q3WxKq.d.ts} +4 -4
  69. package/dist/types-chunks/{repl.d-BkTIOkJD.d.ts → repl.d-D4ye29Kk.d.ts} +5 -5
  70. package/dist/types-chunks/{resolver.d-C9IW4fmU.d.ts → resolver.d-RyPo99tB.d.ts} +2 -2
  71. package/dist/types-chunks/{review-inbox.d-DuZqFX-z.d.ts → review-inbox.d-C1_xZ-yg.d.ts} +1 -1
  72. package/dist/types-chunks/{run-manager.d-BS4lJfL3.d.ts → run-manager.d-D30IvnwV.d.ts} +1 -1
  73. package/dist/types-chunks/{sdk-session-DLkZTOc-.d.ts → sdk-session-DIU6sHa2.d.ts} +3 -3
  74. package/dist/types-chunks/{shell-command-sets.d-BrLw-WN9.d.ts → shell-command-sets.d-rIHkZ_VR.d.ts} +1 -1
  75. package/dist/types-chunks/{side-query.d-CP1LiRiH.d.ts → side-query.d-iH0P9ASy.d.ts} +2 -2
  76. package/dist/types-chunks/{types.d-Ch3BD97c.d.ts → types.d-Bz5Y-PD9.d.ts} +4 -4
  77. package/dist/types-chunks/{types.d-CgrXrFrq.d.ts → types.d-CK9A9rpP.d.ts} +1 -1
  78. package/dist/types-chunks/{types.d-Bo4fyMLu.d.ts → types.d-COhAF5Xo.d.ts} +2 -2
  79. package/dist/types-chunks/{types.d-DlLBRqZ9.d.ts → types.d-sW-OqiFt.d.ts} +1 -1
  80. package/dist/types-chunks/{utils.d-BI-kjuev.d.ts → utils.d-B65ozSTV.d.ts} +6 -6
  81. package/package.json +1 -1
  82. package/dist/chunks/argument-completer-IMRSIF2N.js +0 -2
  83. package/dist/chunks/chunk-2XJQNFVR.js +0 -379
  84. package/dist/chunks/chunk-CDWYKVZC.js +0 -482
  85. package/dist/chunks/chunk-RTFVMEF6.js +0 -415
  86. package/dist/chunks/chunk-TRNAWSXP.js +0 -123
  87. package/dist/chunks/chunk-UH5WNJXF.js +0 -92
  88. package/dist/chunks/compaction-config-3WLLNN57.js +0 -2
  89. package/dist/chunks/host-LWUSSCWH.js +0 -2
  90. package/dist/chunks/run-manager-PBMOVP7A.js +0 -2
@@ -1,5 +1,5 @@
1
1
  // @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
2
- import{$ as wg,A as va,Aa as QI,B as MI,Ba as Ki,C as _I,Ca as zi,D as ba,Da as Cg,E as Af,Ea as ZI,F as AI,G as Pf,Ga as Ig,H as kl,Ha as Vf,I as xg,Ia as ev,J as LI,Ja as tv,K as Sg,L as Ko,M as $f,N as Ra,O as Of,P as Nf,Q as PI,R as $I,S as ka,T as OI,U as zo,V as NI,W as Nr,X as Df,Y as Bf,Z as Cn,_ as Dr,a as xr,aa as Vi,b as V,ba as Yo,c as YP,ca as El,d as yn,da as Ff,e as If,ea as DI,f as GC,fa as BI,g as Sr,ga as FI,h as vf,ha as HI,i as bf,ia as WI,j as Rf,ja as jI,k as ga,ka as Hf,l as VC,la as Wf,m as ya,ma as Ml,n as xI,na as jf,o as SI,oa as Uf,p as wI,pa as Gf,q as TI,qa as UI,r as CI,ra as GI,s as II,sa as VI,t as vI,ta as Tg,u as Ca,ua as KI,v as bI,va as zI,w as RI,wa as YI,x as kI,xa as XI,y as Ia,ya as qI,z as EI,za as JI}from"./chunk-IA246OAN.js";import{$ as wa,E as cI,J as lI,K as Vo,L as Ui,O as uI,P as dI,Q as fI,R as pI,S as mI,T as hI,U as gI,X as Ef,Y as Gi,Z as Mf,_ as Sa,a as ne,aa as Ta,b as KC,ba as _f,c as zC,ca as yo,d as YC,e as XC,f as bl,g as qC,ga as yI,h as xa,i as JC,j as QC,k as Wi,l as ZC,m as eI,n as tI,o as Rl,p as nI,q as kf,r as $r,s as rI,t as oI,u as iI,w as sI,x as aI,y as ji,z as Or}from"./chunk-TBBY2DKE.js";import{a as Lf}from"./chunk-MJ4G5ZCW.js";import{K as HC,M as yg,N as WC,O as jC,Z as UC,aa as Cf,c as hg,n as wf,o as Tf,v as FC,w as vl}from"./chunk-CZCEFGQG.js";import{Bb as Sf,Cb as ha,D as EC,Db as $C,Gb as OC,Ib as NC,Jb as Go,Ua as _C,Va as AC,Wb as DC,hb as ho,p as Tl,q as TC,sb as Il,tb as LC,ub as go,wb as pa,wc as BC,xb as PC,yb as ma}from"./chunk-RTFVMEF6.js";import{J as MC}from"./chunk-SR4E5FQK.js";import{Hb as vC,Hd as bC,Ld as RC,Md as kC,N as CC,Wa as xf,hb as IC,od as Cl,rd as gg,z as fa}from"./chunk-ZVOXWLT6.js";import{Aa as cg,Pa as Ni,ma as Zd,ya as aC}from"./chunk-TRNAWSXP.js";import{Af as sa,Bf as aa,Cf as df,Db as uC,Ef as ca,Fd as cf,Ff as la,Gd as lf,Gf as ua,Hf as mo,Ia as Bi,Ib as sf,If as ff,Ja as Uo,Jf as Hi,Kb as dC,Kf as yC,Lf as pf,Mf as mf,Nf as pg,Of as hf,Pf as xC,Qf as da,Ra as lC,Te as uf,Ue as Fi,Vg as SC,Wg as mg,Xg as wC,Zb as fC,_b as pC,bg as gf,cg as yf,df as mC,ef as fg,k as Di,le as dg,nb as lg,ob as Pr,of as hC,r as cC,rb as ug,sf as gC,t as mt,wf as qe,xf as ia,yf as At,zc as af}from"./chunk-3E4OSFP2.js";import{A as rf,E as of,h as Zn,j as ef,r as tf,z as nf}from"./chunk-UH5WNJXF.js";import{a as i,c as zP}from"./chunk-ONUPGMER.js";import{spawnSync as XP}from"node:child_process";function Kf(e){return e==="1"||e?.toLowerCase()==="true"}i(Kf,"isTruthyEnv");function nv(e){return e==="0"||e?.toLowerCase()==="false"}i(nv,"isFalseyEnv");function Yi(e=process.env){return e.TERM_PROGRAM?.toLowerCase()==="vscode"||!!e.VSCODE_GIT_IPC_HANDLE||!!e.VSCODE_INJECTION}i(Yi,"isVsCodeTerminalHostEnv");function Xi(e={}){let t=e.env??process.env;return(e.platform??process.platform)==="win32"||!!t.WT_SESSION}i(Xi,"hasCursorUpViewportYankRisk");function qP(e){return!!(e.SSH_CONNECTION||e.SSH_CLIENT||e.SSH_TTY)}i(qP,"isSshSession");function Ea(e={}){let t=e.env??process.env;return Kf(t.KODAX_FULLSCREEN)?!1:(e.platform??process.platform)==="win32"&&qP(t)}i(Ea,"isRemoteConptyHost");function _l(e={}){let t=e.env??process.env;return Xi(e)||Yi(t)}i(_l,"hasMainScreenRenderScrollRisk");function JP(e){if(!e.TMUX||e.TERM_PROGRAM!=="iTerm.app")return!1;let t=e.TERM??"";return!t.startsWith("screen")&&!t.startsWith("tmux")}i(JP,"isTmuxControlModeEnvHeuristic");var xo;function Ma(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(JP(t))return!0;if(!(t===process.env&&n===process.platform))return!1;if(xo!==void 0||(xo=!1,!t.TMUX)||t.TERM_PROGRAM&&t.TERM_PROGRAM!=="iTerm.app")return xo;try{let o=XP("tmux",["display-message","-p","#{client_control_mode}"],{encoding:"utf8",timeout:2e3});o.status===0&&(xo=o.stdout.trim()==="1")}catch{xo=!1}return xo}i(Ma,"isTmuxControlMode");function zf(){xo=void 0}i(zf,"resetTmuxControlModeProbeForTesting");function Xo(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":Ma(e)?"tmux_control_mode":Yi(t)?"xtermjs_host":Ea(e)?"remote_conpty_host":Xi(e)?"degraded_vt":"native_vt"}i(Xo,"detectTerminalRenderHost");var qo=Xo;function qi(e={}){let t=e.env??process.env;if(Kf(t.KODAX_FORCE_INK))return"legacy";let n=t.KODAX_TUI_RENDERER?.trim().toLowerCase();return n==="legacy"||n==="owned"||n==="auto"?n:"auto"}i(qi,"resolveConfiguredTuiRendererMode");function Jo(e={}){let t=qi(e);if(t==="legacy"||t==="owned")return t;let n=Xo(e);return n==="unsupported_control_host"||n==="tmux_control_mode"?"legacy":"owned"}i(Jo,"resolveEffectiveTuiRendererMode");function Al(e={}){let t=e.env??process.env;if(Kf(t.KODAX_FORCE_CLASSIC_REPL))return"classic";let n=qi({env:t});if(n==="legacy"||n==="owned")return"ink";let r=Xo(e);return r==="unsupported_control_host"||r==="tmux_control_mode"?"classic":"ink"}i(Al,"resolveInteractiveSurfacePreference");var QP={enabled:!1,promptShell:"main-screen",transcriptShell:"main-screen",mouseWheel:!1,mouseClicks:!1,streamingPreview:!1,transcriptSpinnerAnimation:!0},rv={enabled:!0,promptShell:"main-screen",transcriptShell:"virtual",mouseWheel:!0,mouseClicks:!0,streamingPreview:!1,transcriptSpinnerAnimation:!0};function Qo(e,t="owned",n={}){let r=n.env??process.env;return nv(r.KODAX_FULLSCREEN)?t==="owned"&&e!=="tmux_control_mode"&&e!=="unsupported_control_host"?rv:QP:ZP(e,t)}i(Qo,"resolveFullscreenPolicy");function ZP(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 rv;default:return{enabled:!1,promptShell:"main-screen",transcriptShell:"main-screen",mouseWheel:!1,mouseClicks:!1,streamingPreview:!1,transcriptSpinnerAnimation:!1}}}i(ZP,"buildFullscreenPolicy");function Ji(e,t={}){let n=t.rendererMode??"owned",r=Qo(e,n,{env:t.env}),o=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:o,supportsCopyOnSelect:!1,supportsWheelHistory:r.mouseWheel,supportsViewportChrome:r.enabled,supportsSearchViewport:r.enabled,supportsStickyPrompt:r.enabled}}i(Ji,"getTerminalHostCapabilities");function Ll(e={}){return Jo(e)==="owned"}i(Ll,"isOwnedRendererPreferred");function Pl(e={}){let t=e.env??process.env;return Kf(t.KODAX_FORCE_CLASSIC_REPL)&&!nv(t.KODAX_FORCE_CLASSIC_REPL)}i(Pl,"isClassicReplForced");var Qi=class{static{i(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}},vg=1,bg=2,e1=1e3,ov;function Xf(){if(!(typeof Intl>"u"||typeof Intl.Segmenter!="function"))return ov??=new Intl.Segmenter("en",{granularity:"grapheme"}),ov}i(Xf,"getGraphemeSegmenter");function In(e){if(!e)return 0;let t=Xf();if(t){let n=0;for(let r of t.segment(e))n++;return n}return[...e].length}i(In,"getCodePointLength");function wr(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}i(wr,"isWideChar");function Tr(e){if(!e)return 0;let t=0,n=Xf();if(n)for(let r of n.segment(e))t+=wr(r.segment)?bg:vg;else for(let r of e)t+=wr(r)?bg:vg;return t}i(Tr,"getVisualWidth");function iv(e,t){if(!e||t<0)return"";let n=Xf();if(n){let o=0;for(let s of n.segment(e)){if(o===t)return s.segment;o++}return""}let r=[...e];return t>=r.length?"":r[t]}i(iv,"getCharAtCodePoint");function xn(e){if(!e)return[];let t=Xf();if(t){let n=[];for(let r of t.segment(e))n.push(r.segment);return n}return[...e]}i(xn,"splitByCodePoints");function t1(e,t,n){return xn(e).slice(t,n).join("")}i(t1,"sliceByCodePoints");function sv(e,t){let n=Math.max(0,t),r=xn(e),o=0,s=0;for(;o<r.length;){let a=wr(r[o])?bg:vg;if(s+a>n)break;s+=a,o++}return{before:r.slice(0,o).join(""),current:r[o]??"",after:r.slice(o+1).join("")}}i(sv,"splitAtVisualColumn");function _a(e,t,n=!1){if(!e||t<=0)return"";let r="\u2026",s=n?t-1:t,a="",c=0,l=xn(e);for(let u of l){let f=wr(u)?2:1;if(c+f>s)break;a+=u,c+=f}return n&&a.length<e.length&&(a+=r),a}i(_a,"truncateByVisualWidth");var Yf=new Qi(e1);function qf(e){let t=Yf.get(e);if(t!==void 0)return t;let n=Tr(e);return Yf.set(e,n),n}i(qf,"getVisualWidthCached");function Sn(e,t,n,r){let o=[],s=[],a=[];for(let c=0;c<e.length;c++){let l=e[c]||"";if(s[c]=[],l.length===0){o.push("");let p=o.length-1;s[c].push([p,0]),a.push([c,0]);continue}let u=0,f=xn(l);for(;u<f.length;){let p="",h=0,m=u,g=-1;for(let T=u;T<f.length;T++){let w=f[T],C=wr(w)?2:1;if(h+C>t){g>=0&&T-u>0?(p=f.slice(u,g).join(""),h=f.slice(u,g).reduce((b,_)=>b+(wr(_)?2:1),0),m=g):p.length===0&&C>t&&(p=w,h=C,m=T+1);break}p+=w,h+=C,m=T+1,w===" "&&(g=T+1)}if(p.length>0||o.length===0){let T=u,w=o.length;o.push(p),s[c].push([w,T]),a.push([c,T])}u=m}}return{visualLines:o,logicalToVisualMap:s,visualToLogicalMap:a}}i(Sn,"calculateVisualLayout");function Jf(e,t){let{logicalToVisualMap:n,visualLines:r}=e;if(r.length===0)return[0,0];let[o,s]=t,a=n[o];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=Tr(t1(f,0,p));return[l,h]}i(Jf,"calculateVisualCursorFromLayout");var Qf={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"]}},Rg={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 kg={dark:Qf,minimal:Rg};function ce(e="dark"){return kg[e]??Qf}i(ce,"getTheme");function n1(){return Object.keys(kg)}i(n1,"getThemeNames");import{jsx as Rn,jsxs as tr,Fragment as uN}from"react/jsx-runtime";import{useMemo as kp}from"react";import{jsx as Wb}from"react/jsx-runtime";import{createContext as FO,useContext as ss,useEffect as Fa,useMemo as Hb,useState as HO,useCallback as jb,useRef as Sp}from"react";import{Stream as hO}from"node:stream";import{openSync as gO,writeSync as Eb}from"node:fs";import{performance as yO}from"node:perf_hooks";import{tmpdir as xO}from"node:os";import{join as SO}from"node:path";import Eg,{forwardRef as i1,useContext as s1}from"react";import{createContext as r1}from"react";var Aa=r1({isScreenReaderEnabled:!1});import{createContext as o1}from"react";var Zf=o1(void 0);var av=i1(({children:e,backgroundColor:t,"aria-label":n,"aria-hidden":r,"aria-role":o,"aria-state":s,...a},c)=>{let{isScreenReaderEnabled:l}=s1(Aa),u=n?Eg.createElement("ink-text",null,n):void 0;if(l&&r)return null;let f=Eg.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:o,state:s}},l&&u?u:e);return t?Eg.createElement(Zf.Provider,{value:t},f):f});av.displayName="Box";var er=av;import u1,{useContext as cv}from"react";import La from"chalk";import Zo from"chalk";var a1=/^rgb\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,c1=/^ansi256\(\s?(\d+)\s?\)$/;function l1(e){return e in Zo}i(l1,"isNamedColor");function Cr(e,t,n){if(!t)return e;if(l1(t)){let r=Zo;if(n==="foreground")return r[t]?.(e)??e;let o=`bg${t[0].toUpperCase()+t.slice(1)}`;return r[o]?.(e)??e}if(t.startsWith("#"))return n==="foreground"?Zo.hex(t)(e):Zo.bgHex(t)(e);if(t.startsWith("ansi256")){let r=c1.exec(t);if(!r)return e;let o=Number(r[1]);return n==="foreground"?Zo.ansi256(o)(e):Zo.bgAnsi256(o)(e)}if(t.startsWith("rgb")){let r=a1.exec(t);if(!r)return e;let o=Number(r[1]),s=Number(r[2]),a=Number(r[3]);return n==="foreground"?Zo.rgb(o,s,a)(e):Zo.bgRgb(o,s,a)(e)}return e}i(Cr,"colorize");function vn({color:e,backgroundColor:t,dimColor:n=!1,bold:r=!1,italic:o=!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}=cv(Aa),g=cv(Zf),T=m&&f?f:u;if(T==null)return null;let w=i(C=>{let b=C;n&&(b=La.dim(b)),e&&(b=Cr(b,e,"foreground"));let _=t??g;return _&&(b=Cr(b,_,"background")),r&&(b=La.bold(b)),o&&(b=La.italic(b)),s&&(b=La.underline(b)),a&&(b=La.strikethrough(b)),c&&(b=La.inverse(b)),b},"transform");return m&&p?null:u1.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:l},internal_transform:w,...h?{internal_cursorAnchor:!0}:{}},m&&f?f:u)}i(vn,"Text");import d1,{useLayoutEffect as f1,useMemo as lv,useState as p1}from"react";function Mg({items:e,children:t,style:n}){let[r,o]=p1(0),s=lv(()=>e.slice(r),[e,r]);f1(()=>{o(e.length)},[e.length]);let a=s.map((l,u)=>t(l,r+u)),c=lv(()=>({position:"absolute",flexDirection:"column",...n}),[n]);return d1.createElement("ink-box",{internal_static:!0,style:c},a)}i(Mg,"Static");import os from"node:process";import bb from"react";import{throttle as q$}from"es-toolkit/compat";import bn from"ansi-escapes";import bo from"is-in-ci";import J$ from"auto-bind";import{onExit as Q$}from"signal-exit";import Z$ from"patch-console";import{LegacyRoot as eO,ConcurrentRoot as tO}from"react-reconciler/constants.js";import nO from"yoga-layout";import rO from"wrap-ansi";import oO from"terminal-size";import m1 from"node:process";var ep=i(()=>m1.env.DEV==="true","isDev");import W1 from"react-reconciler";import{DefaultEventPriority as j1,NoEventPriority as bv}from"react-reconciler/constants.js";import*as ei from"scheduler";import Tv from"yoga-layout";import{createContext as U1}from"react";import M1 from"yoga-layout";import h1 from"widest-line";var uv=new Map,g1=i(e=>{if(e.length===0)return{width:0,height:0};let t=uv.get(e);if(t)return t;let n=h1(e),r=e.split(`
2
+ import{$ as wg,A as va,Aa as QI,B as MI,Ba as Ki,C as _I,Ca as zi,D as ba,Da as Cg,E as Af,Ea as ZI,F as AI,G as Pf,Ga as Ig,H as kl,Ha as Vf,I as xg,Ia as ev,J as LI,Ja as tv,K as Sg,L as Ko,M as $f,N as Ra,O as Of,P as Nf,Q as PI,R as $I,S as ka,T as OI,U as zo,V as NI,W as Nr,X as Df,Y as Bf,Z as Cn,_ as Dr,a as xr,aa as Vi,b as V,ba as Yo,c as YP,ca as El,d as yn,da as Ff,e as If,ea as DI,f as GC,fa as BI,g as Sr,ga as FI,h as vf,ha as HI,i as bf,ia as WI,j as Rf,ja as jI,k as ga,ka as Hf,l as VC,la as Wf,m as ya,ma as Ml,n as xI,na as jf,o as SI,oa as Uf,p as wI,pa as Gf,q as TI,qa as UI,r as CI,ra as GI,s as II,sa as VI,t as vI,ta as Tg,u as Ca,ua as KI,v as bI,va as zI,w as RI,wa as YI,x as kI,xa as XI,y as Ia,ya as qI,z as EI,za as JI}from"./chunk-4OLXWSCQ.js";import{$ as wa,E as cI,J as lI,K as Vo,L as Ui,O as uI,P as dI,Q as fI,R as pI,S as mI,T as hI,U as gI,X as Ef,Y as Gi,Z as Mf,_ as Sa,a as ne,aa as Ta,b as KC,ba as _f,c as zC,ca as yo,d as YC,e as XC,f as bl,g as qC,ga as yI,h as xa,i as JC,j as QC,k as Wi,l as ZC,m as eI,n as tI,o as Rl,p as nI,q as kf,r as $r,s as rI,t as oI,u as iI,w as sI,x as aI,y as ji,z as Or}from"./chunk-ASFCAPIG.js";import{a as Lf}from"./chunk-U44C5STU.js";import{K as HC,M as yg,N as WC,O as jC,Z as UC,aa as Cf,c as hg,n as wf,o as Tf,v as FC,w as vl}from"./chunk-BCYJIACJ.js";import{Bb as Sf,Cb as ha,D as EC,Db as $C,Gb as OC,Ib as NC,Jb as Go,Ua as _C,Va as AC,Wb as DC,hb as ho,p as Tl,q as TC,sb as Il,tb as LC,ub as go,wb as pa,wc as BC,xb as PC,yb as ma}from"./chunk-3PGNESV3.js";import{J as MC}from"./chunk-ZQNOEKOB.js";import{Hb as vC,Hd as bC,Ld as RC,Md as kC,N as CC,Wa as xf,hb as IC,od as Cl,rd as gg,z as fa}from"./chunk-DB4O33RR.js";import{Aa as cg,Pa as Ni,ma as Zd,ya as aC}from"./chunk-SKELDH3G.js";import{Af as sa,Bf as aa,Cf as df,Db as uC,Ef as ca,Fd as cf,Ff as la,Gd as lf,Gf as ua,Hf as mo,Ia as Bi,Ib as sf,If as ff,Ja as Uo,Jf as Hi,Kb as dC,Kf as yC,Lf as pf,Mf as mf,Nf as pg,Of as hf,Pf as xC,Qf as da,Ra as lC,Te as uf,Ue as Fi,Vg as SC,Wg as mg,Xg as wC,Zb as fC,_b as pC,bg as gf,cg as yf,df as mC,ef as fg,k as Di,le as dg,nb as lg,ob as Pr,of as hC,r as cC,rb as ug,sf as gC,t as mt,wf as qe,xf as ia,yf as At,zc as af}from"./chunk-ITP7J5HX.js";import{A as rf,E as of,h as Zn,j as ef,r as tf,z as nf}from"./chunk-XH7UM4GO.js";import{a as i,c as zP}from"./chunk-ONUPGMER.js";import{spawnSync as XP}from"node:child_process";function Kf(e){return e==="1"||e?.toLowerCase()==="true"}i(Kf,"isTruthyEnv");function nv(e){return e==="0"||e?.toLowerCase()==="false"}i(nv,"isFalseyEnv");function Yi(e=process.env){return e.TERM_PROGRAM?.toLowerCase()==="vscode"||!!e.VSCODE_GIT_IPC_HANDLE||!!e.VSCODE_INJECTION}i(Yi,"isVsCodeTerminalHostEnv");function Xi(e={}){let t=e.env??process.env;return(e.platform??process.platform)==="win32"||!!t.WT_SESSION}i(Xi,"hasCursorUpViewportYankRisk");function qP(e){return!!(e.SSH_CONNECTION||e.SSH_CLIENT||e.SSH_TTY)}i(qP,"isSshSession");function Ea(e={}){let t=e.env??process.env;return Kf(t.KODAX_FULLSCREEN)?!1:(e.platform??process.platform)==="win32"&&qP(t)}i(Ea,"isRemoteConptyHost");function _l(e={}){let t=e.env??process.env;return Xi(e)||Yi(t)}i(_l,"hasMainScreenRenderScrollRisk");function JP(e){if(!e.TMUX||e.TERM_PROGRAM!=="iTerm.app")return!1;let t=e.TERM??"";return!t.startsWith("screen")&&!t.startsWith("tmux")}i(JP,"isTmuxControlModeEnvHeuristic");var xo;function Ma(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(JP(t))return!0;if(!(t===process.env&&n===process.platform))return!1;if(xo!==void 0||(xo=!1,!t.TMUX)||t.TERM_PROGRAM&&t.TERM_PROGRAM!=="iTerm.app")return xo;try{let o=XP("tmux",["display-message","-p","#{client_control_mode}"],{encoding:"utf8",timeout:2e3});o.status===0&&(xo=o.stdout.trim()==="1")}catch{xo=!1}return xo}i(Ma,"isTmuxControlMode");function zf(){xo=void 0}i(zf,"resetTmuxControlModeProbeForTesting");function Xo(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":Ma(e)?"tmux_control_mode":Yi(t)?"xtermjs_host":Ea(e)?"remote_conpty_host":Xi(e)?"degraded_vt":"native_vt"}i(Xo,"detectTerminalRenderHost");var qo=Xo;function qi(e={}){let t=e.env??process.env;if(Kf(t.KODAX_FORCE_INK))return"legacy";let n=t.KODAX_TUI_RENDERER?.trim().toLowerCase();return n==="legacy"||n==="owned"||n==="auto"?n:"auto"}i(qi,"resolveConfiguredTuiRendererMode");function Jo(e={}){let t=qi(e);if(t==="legacy"||t==="owned")return t;let n=Xo(e);return n==="unsupported_control_host"||n==="tmux_control_mode"?"legacy":"owned"}i(Jo,"resolveEffectiveTuiRendererMode");function Al(e={}){let t=e.env??process.env;if(Kf(t.KODAX_FORCE_CLASSIC_REPL))return"classic";let n=qi({env:t});if(n==="legacy"||n==="owned")return"ink";let r=Xo(e);return r==="unsupported_control_host"||r==="tmux_control_mode"?"classic":"ink"}i(Al,"resolveInteractiveSurfacePreference");var QP={enabled:!1,promptShell:"main-screen",transcriptShell:"main-screen",mouseWheel:!1,mouseClicks:!1,streamingPreview:!1,transcriptSpinnerAnimation:!0},rv={enabled:!0,promptShell:"main-screen",transcriptShell:"virtual",mouseWheel:!0,mouseClicks:!0,streamingPreview:!1,transcriptSpinnerAnimation:!0};function Qo(e,t="owned",n={}){let r=n.env??process.env;return nv(r.KODAX_FULLSCREEN)?t==="owned"&&e!=="tmux_control_mode"&&e!=="unsupported_control_host"?rv:QP:ZP(e,t)}i(Qo,"resolveFullscreenPolicy");function ZP(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 rv;default:return{enabled:!1,promptShell:"main-screen",transcriptShell:"main-screen",mouseWheel:!1,mouseClicks:!1,streamingPreview:!1,transcriptSpinnerAnimation:!1}}}i(ZP,"buildFullscreenPolicy");function Ji(e,t={}){let n=t.rendererMode??"owned",r=Qo(e,n,{env:t.env}),o=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:o,supportsCopyOnSelect:!1,supportsWheelHistory:r.mouseWheel,supportsViewportChrome:r.enabled,supportsSearchViewport:r.enabled,supportsStickyPrompt:r.enabled}}i(Ji,"getTerminalHostCapabilities");function Ll(e={}){return Jo(e)==="owned"}i(Ll,"isOwnedRendererPreferred");function Pl(e={}){let t=e.env??process.env;return Kf(t.KODAX_FORCE_CLASSIC_REPL)&&!nv(t.KODAX_FORCE_CLASSIC_REPL)}i(Pl,"isClassicReplForced");var Qi=class{static{i(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}},vg=1,bg=2,e1=1e3,ov;function Xf(){if(!(typeof Intl>"u"||typeof Intl.Segmenter!="function"))return ov??=new Intl.Segmenter("en",{granularity:"grapheme"}),ov}i(Xf,"getGraphemeSegmenter");function In(e){if(!e)return 0;let t=Xf();if(t){let n=0;for(let r of t.segment(e))n++;return n}return[...e].length}i(In,"getCodePointLength");function wr(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}i(wr,"isWideChar");function Tr(e){if(!e)return 0;let t=0,n=Xf();if(n)for(let r of n.segment(e))t+=wr(r.segment)?bg:vg;else for(let r of e)t+=wr(r)?bg:vg;return t}i(Tr,"getVisualWidth");function iv(e,t){if(!e||t<0)return"";let n=Xf();if(n){let o=0;for(let s of n.segment(e)){if(o===t)return s.segment;o++}return""}let r=[...e];return t>=r.length?"":r[t]}i(iv,"getCharAtCodePoint");function xn(e){if(!e)return[];let t=Xf();if(t){let n=[];for(let r of t.segment(e))n.push(r.segment);return n}return[...e]}i(xn,"splitByCodePoints");function t1(e,t,n){return xn(e).slice(t,n).join("")}i(t1,"sliceByCodePoints");function sv(e,t){let n=Math.max(0,t),r=xn(e),o=0,s=0;for(;o<r.length;){let a=wr(r[o])?bg:vg;if(s+a>n)break;s+=a,o++}return{before:r.slice(0,o).join(""),current:r[o]??"",after:r.slice(o+1).join("")}}i(sv,"splitAtVisualColumn");function _a(e,t,n=!1){if(!e||t<=0)return"";let r="\u2026",s=n?t-1:t,a="",c=0,l=xn(e);for(let u of l){let f=wr(u)?2:1;if(c+f>s)break;a+=u,c+=f}return n&&a.length<e.length&&(a+=r),a}i(_a,"truncateByVisualWidth");var Yf=new Qi(e1);function qf(e){let t=Yf.get(e);if(t!==void 0)return t;let n=Tr(e);return Yf.set(e,n),n}i(qf,"getVisualWidthCached");function Sn(e,t,n,r){let o=[],s=[],a=[];for(let c=0;c<e.length;c++){let l=e[c]||"";if(s[c]=[],l.length===0){o.push("");let p=o.length-1;s[c].push([p,0]),a.push([c,0]);continue}let u=0,f=xn(l);for(;u<f.length;){let p="",h=0,m=u,g=-1;for(let T=u;T<f.length;T++){let w=f[T],C=wr(w)?2:1;if(h+C>t){g>=0&&T-u>0?(p=f.slice(u,g).join(""),h=f.slice(u,g).reduce((b,_)=>b+(wr(_)?2:1),0),m=g):p.length===0&&C>t&&(p=w,h=C,m=T+1);break}p+=w,h+=C,m=T+1,w===" "&&(g=T+1)}if(p.length>0||o.length===0){let T=u,w=o.length;o.push(p),s[c].push([w,T]),a.push([c,T])}u=m}}return{visualLines:o,logicalToVisualMap:s,visualToLogicalMap:a}}i(Sn,"calculateVisualLayout");function Jf(e,t){let{logicalToVisualMap:n,visualLines:r}=e;if(r.length===0)return[0,0];let[o,s]=t,a=n[o];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=Tr(t1(f,0,p));return[l,h]}i(Jf,"calculateVisualCursorFromLayout");var Qf={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"]}},Rg={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 kg={dark:Qf,minimal:Rg};function ce(e="dark"){return kg[e]??Qf}i(ce,"getTheme");function n1(){return Object.keys(kg)}i(n1,"getThemeNames");import{jsx as Rn,jsxs as tr,Fragment as uN}from"react/jsx-runtime";import{useMemo as kp}from"react";import{jsx as Wb}from"react/jsx-runtime";import{createContext as FO,useContext as ss,useEffect as Fa,useMemo as Hb,useState as HO,useCallback as jb,useRef as Sp}from"react";import{Stream as hO}from"node:stream";import{openSync as gO,writeSync as Eb}from"node:fs";import{performance as yO}from"node:perf_hooks";import{tmpdir as xO}from"node:os";import{join as SO}from"node:path";import Eg,{forwardRef as i1,useContext as s1}from"react";import{createContext as r1}from"react";var Aa=r1({isScreenReaderEnabled:!1});import{createContext as o1}from"react";var Zf=o1(void 0);var av=i1(({children:e,backgroundColor:t,"aria-label":n,"aria-hidden":r,"aria-role":o,"aria-state":s,...a},c)=>{let{isScreenReaderEnabled:l}=s1(Aa),u=n?Eg.createElement("ink-text",null,n):void 0;if(l&&r)return null;let f=Eg.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:o,state:s}},l&&u?u:e);return t?Eg.createElement(Zf.Provider,{value:t},f):f});av.displayName="Box";var er=av;import u1,{useContext as cv}from"react";import La from"chalk";import Zo from"chalk";var a1=/^rgb\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,c1=/^ansi256\(\s?(\d+)\s?\)$/;function l1(e){return e in Zo}i(l1,"isNamedColor");function Cr(e,t,n){if(!t)return e;if(l1(t)){let r=Zo;if(n==="foreground")return r[t]?.(e)??e;let o=`bg${t[0].toUpperCase()+t.slice(1)}`;return r[o]?.(e)??e}if(t.startsWith("#"))return n==="foreground"?Zo.hex(t)(e):Zo.bgHex(t)(e);if(t.startsWith("ansi256")){let r=c1.exec(t);if(!r)return e;let o=Number(r[1]);return n==="foreground"?Zo.ansi256(o)(e):Zo.bgAnsi256(o)(e)}if(t.startsWith("rgb")){let r=a1.exec(t);if(!r)return e;let o=Number(r[1]),s=Number(r[2]),a=Number(r[3]);return n==="foreground"?Zo.rgb(o,s,a)(e):Zo.bgRgb(o,s,a)(e)}return e}i(Cr,"colorize");function vn({color:e,backgroundColor:t,dimColor:n=!1,bold:r=!1,italic:o=!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}=cv(Aa),g=cv(Zf),T=m&&f?f:u;if(T==null)return null;let w=i(C=>{let b=C;n&&(b=La.dim(b)),e&&(b=Cr(b,e,"foreground"));let _=t??g;return _&&(b=Cr(b,_,"background")),r&&(b=La.bold(b)),o&&(b=La.italic(b)),s&&(b=La.underline(b)),a&&(b=La.strikethrough(b)),c&&(b=La.inverse(b)),b},"transform");return m&&p?null:u1.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:l},internal_transform:w,...h?{internal_cursorAnchor:!0}:{}},m&&f?f:u)}i(vn,"Text");import d1,{useLayoutEffect as f1,useMemo as lv,useState as p1}from"react";function Mg({items:e,children:t,style:n}){let[r,o]=p1(0),s=lv(()=>e.slice(r),[e,r]);f1(()=>{o(e.length)},[e.length]);let a=s.map((l,u)=>t(l,r+u)),c=lv(()=>({position:"absolute",flexDirection:"column",...n}),[n]);return d1.createElement("ink-box",{internal_static:!0,style:c},a)}i(Mg,"Static");import os from"node:process";import bb from"react";import{throttle as q$}from"es-toolkit/compat";import bn from"ansi-escapes";import bo from"is-in-ci";import J$ from"auto-bind";import{onExit as Q$}from"signal-exit";import Z$ from"patch-console";import{LegacyRoot as eO,ConcurrentRoot as tO}from"react-reconciler/constants.js";import nO from"yoga-layout";import rO from"wrap-ansi";import oO from"terminal-size";import m1 from"node:process";var ep=i(()=>m1.env.DEV==="true","isDev");import W1 from"react-reconciler";import{DefaultEventPriority as j1,NoEventPriority as bv}from"react-reconciler/constants.js";import*as ei from"scheduler";import Tv from"yoga-layout";import{createContext as U1}from"react";import M1 from"yoga-layout";import h1 from"widest-line";var uv=new Map,g1=i(e=>{if(e.length===0)return{width:0,height:0};let t=uv.get(e);if(t)return t;let n=h1(e),r=e.split(`
3
3
  `).length,o={width:n,height:r};return uv.set(e,o),o},"measureText"),_g=g1;import y1 from"wrap-ansi";import x1 from"cli-truncate";var dv={},S1=i((e,t,n)=>{let r=e+String(t)+String(n),o=dv[r];if(o)return o;let s=e;if(n==="wrap"&&(s=y1(e,t,{trim:!1,hard:!0})),n.startsWith("truncate")){let a="end";n==="truncate-middle"&&(a="middle"),n==="truncate-start"&&(a="start"),s=x1(e,t,{position:a})}return dv[r]=s,s},"wrapText"),tp=S1;var w1=i(e=>{let t=e.codePointAt(0);return t!==void 0&&t>=48&&t<=63},"isCsiParameterCharacter"),T1=i(e=>{let t=e.codePointAt(0);return t!==void 0&&t>=32&&t<=47},"isCsiIntermediateCharacter"),C1=i(e=>{let t=e.codePointAt(0);return t!==void 0&&t>=64&&t<=126},"isCsiFinalCharacter"),mv=i(e=>{let t=e.codePointAt(0);return t!==void 0&&t>=32&&t<=47},"isEscapeIntermediateCharacter"),I1=i(e=>{let t=e.codePointAt(0);return t!==void 0&&t>=48&&t<=126},"isEscapeFinalCharacter"),hv=i(e=>{let t=e.codePointAt(0);return t!==void 0&&t>=128&&t<=159},"isC1ControlCharacter"),fv=i((e,t)=>{let n=t;for(;n<e.length;){let c=e[n];if(!w1(c))break;n++}let r=e.slice(t,n),o=n;for(;n<e.length;){let c=e[n];if(!T1(c))break;n++}let s=e.slice(o,n),a=e[n];if(!(a===void 0||!C1(a)))return{endIndex:n+1,parameterString:r,intermediateString:s,finalCharacter:a}},"readCsiSequence"),pv=i((e,t,n)=>{for(let r=t;r<e.length;r++){let o=e[r];if(n&&o==="\x07"||o==="\x9C")return r+1;if(o==="\x1B"){let s=e[r+1];if(s==="\x1B"){r++;continue}if(s==="\\")return r+2}}},"findControlStringTerminatorIndex"),v1=i((e,t)=>{let n=t;for(;n<e.length;){let s=e[n];if(!mv(s))break;n++}let r=e.slice(t,n),o=e[n];if(!(o===void 0||!I1(o)))return{endIndex:n+1,intermediateString:r,finalCharacter:o}},"readEscapeSequence"),b1=i(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"),R1=i(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"),Ag=i(e=>{if(e.includes("\x1B"))return!0;for(let t of e)if(hv(t))return!0;return!1},"hasAnsiControlCharacters"),Pa=i((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"),gv=i(e=>{if(!Ag(e))return[{type:"text",value:e}];let t=[],n=0;for(let r=0;r<e.length;){let o=e[r];if(o===void 0)break;if(o==="\x1B"){let a=e[r+1];if(a===void 0)return Pa(t,e,n,r);if(a==="["){let u=fv(e,r+2);if(u===void 0)return Pa(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=b1(a);if(c!==void 0){let u=pv(e,r+2,c.allowBellTerminator);if(u===void 0)return Pa(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=v1(e,r+1);if(l===void 0){if(mv(a))return Pa(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(o==="\x9B"){let a=fv(e,r+1);if(a===void 0)return Pa(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=R1(o);if(s!==void 0){let a=pv(e,r+1,s.allowBellTerminator);if(a===void 0)return Pa(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(o==="\x9C"){r>n&&t.push({type:"text",value:e.slice(n,r)}),t.push({type:"st",value:o}),r++,n=r;continue}if(hv(o)){r>n&&t.push({type:"text",value:e.slice(n,r)}),t.push({type:"c1",value:o}),r++,n=r;continue}r++}return n<e.length&&t.push({type:"text",value:e.slice(n)}),t},"tokenizeAnsi");var k1=/^[\d:;]*$/,E1=i(e=>{if(!Ag(e))return e;let t="";for(let n of gv(e)){if(n.type==="text"||n.type==="osc"){t+=n.value;continue}n.type==="csi"&&n.finalCharacter==="m"&&n.intermediateString===""&&k1.test(n.parameterString)&&(t+=n.value)}return t},"sanitizeAnsi"),yv=E1;var xv=i(e=>{let t="";for(let n=0;n<e.childNodes.length;n++){let r=e.childNodes[n];if(r===void 0)continue;let o="";r.nodeName==="#text"?o=r.nodeValue:((r.nodeName==="ink-text"||r.nodeName==="ink-virtual-text")&&(o=xv(r)),o.length>0&&typeof r.internal_transform=="function"&&(o=r.internal_transform(o,n))),t+=o}return yv(t)},"squashTextNodes"),$l=xv;var np=i(e=>{let t={nodeName:e,style:{},attributes:{},childNodes:[],parentNode:void 0,yogaNode:e==="ink-virtual-text"?void 0:M1.Node.create(),internal_accessibility:{}};return e==="ink-text"&&t.yogaNode?.setMeasureFunc(_1.bind(null,t)),t},"createNode"),rp=i((e,t)=>{t.parentNode&&Ol(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")&&op(e)},"appendChildNode"),Lg=i((e,t,n)=>{t.parentNode&&Ol(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")&&op(e)},"insertBeforeNode"),Ol=i((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")&&op(e)},"removeChildNode"),Pg=i((e,t,n)=>{if(t==="internal_accessibility"){e.internal_accessibility=n;return}e.attributes[t]=n},"setAttribute"),$g=i((e,t)=>{e.style=t},"setStyle"),Sv=i(e=>{let t={nodeName:"#text",nodeValue:e,yogaNode:void 0,parentNode:void 0,style:{}};return Nl(t,e),t},"createTextNode"),_1=i(function(e,t){let n=e.nodeName==="#text"?e.nodeValue:$l(e),r=_g(n);if(r.width<=t||r.width>=1&&t>0&&t<1)return r;let o=e.style?.textWrap??"wrap",s=tp(n,t,o);return _g(s)},"measureTextNode"),wv=i(e=>{if(e?.parentNode)return e.yogaNode??wv(e.parentNode)},"findClosestYogaNode"),op=i(e=>{wv(e)?.markDirty()},"markNodeAsDirty"),Nl=i((e,t)=>{typeof t!="string"&&(t=String(t)),e.nodeValue=t,op(e)},"setTextNodeValue");import _e from"yoga-layout";var L1=i((e,t)=>{"position"in t&&e.setPositionType(t.position==="absolute"?_e.POSITION_TYPE_ABSOLUTE:_e.POSITION_TYPE_RELATIVE),"top"in t&&e.setPosition(_e.EDGE_TOP,t.top??0),"bottom"in t&&e.setPosition(_e.EDGE_BOTTOM,t.bottom??0),"left"in t&&e.setPosition(_e.EDGE_LEFT,t.left??0),"right"in t&&e.setPosition(_e.EDGE_RIGHT,t.right??0)},"applyPositionStyles"),P1=i((e,t)=>{"margin"in t&&e.setMargin(_e.EDGE_ALL,t.margin??0),"marginX"in t&&e.setMargin(_e.EDGE_HORIZONTAL,t.marginX??0),"marginY"in t&&e.setMargin(_e.EDGE_VERTICAL,t.marginY??0),"marginLeft"in t&&e.setMargin(_e.EDGE_START,t.marginLeft||0),"marginRight"in t&&e.setMargin(_e.EDGE_END,t.marginRight||0),"marginTop"in t&&e.setMargin(_e.EDGE_TOP,t.marginTop||0),"marginBottom"in t&&e.setMargin(_e.EDGE_BOTTOM,t.marginBottom||0)},"applyMarginStyles"),$1=i((e,t)=>{"padding"in t&&e.setPadding(_e.EDGE_ALL,t.padding??0),"paddingX"in t&&e.setPadding(_e.EDGE_HORIZONTAL,t.paddingX??0),"paddingY"in t&&e.setPadding(_e.EDGE_VERTICAL,t.paddingY??0),"paddingLeft"in t&&e.setPadding(_e.EDGE_LEFT,t.paddingLeft||0),"paddingRight"in t&&e.setPadding(_e.EDGE_RIGHT,t.paddingRight||0),"paddingTop"in t&&e.setPadding(_e.EDGE_TOP,t.paddingTop||0),"paddingBottom"in t&&e.setPadding(_e.EDGE_BOTTOM,t.paddingBottom||0)},"applyPaddingStyles"),O1=i((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(_e.WRAP_NO_WRAP),t.flexWrap==="wrap"&&e.setFlexWrap(_e.WRAP_WRAP),t.flexWrap==="wrap-reverse"&&e.setFlexWrap(_e.WRAP_WRAP_REVERSE)),"flexDirection"in t&&(t.flexDirection==="row"&&e.setFlexDirection(_e.FLEX_DIRECTION_ROW),t.flexDirection==="row-reverse"&&e.setFlexDirection(_e.FLEX_DIRECTION_ROW_REVERSE),t.flexDirection==="column"&&e.setFlexDirection(_e.FLEX_DIRECTION_COLUMN),t.flexDirection==="column-reverse"&&e.setFlexDirection(_e.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(_e.ALIGN_STRETCH),t.alignItems==="flex-start"&&e.setAlignItems(_e.ALIGN_FLEX_START),t.alignItems==="center"&&e.setAlignItems(_e.ALIGN_CENTER),t.alignItems==="flex-end"&&e.setAlignItems(_e.ALIGN_FLEX_END)),"alignSelf"in t&&((t.alignSelf==="auto"||!t.alignSelf)&&e.setAlignSelf(_e.ALIGN_AUTO),t.alignSelf==="flex-start"&&e.setAlignSelf(_e.ALIGN_FLEX_START),t.alignSelf==="center"&&e.setAlignSelf(_e.ALIGN_CENTER),t.alignSelf==="flex-end"&&e.setAlignSelf(_e.ALIGN_FLEX_END)),"justifyContent"in t&&((t.justifyContent==="flex-start"||!t.justifyContent)&&e.setJustifyContent(_e.JUSTIFY_FLEX_START),t.justifyContent==="center"&&e.setJustifyContent(_e.JUSTIFY_CENTER),t.justifyContent==="flex-end"&&e.setJustifyContent(_e.JUSTIFY_FLEX_END),t.justifyContent==="space-between"&&e.setJustifyContent(_e.JUSTIFY_SPACE_BETWEEN),t.justifyContent==="space-around"&&e.setJustifyContent(_e.JUSTIFY_SPACE_AROUND),t.justifyContent==="space-evenly"&&e.setJustifyContent(_e.JUSTIFY_SPACE_EVENLY))},"applyFlexStyles"),N1=i((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"),D1=i((e,t)=>{"display"in t&&e.setDisplay(t.display==="flex"?_e.DISPLAY_FLEX:_e.DISPLAY_NONE)},"applyDisplayStyles"),B1=i((e,t)=>{if("borderStyle"in t){let n=t.borderStyle?1:0;t.borderTop!==!1&&e.setBorder(_e.EDGE_TOP,n),t.borderBottom!==!1&&e.setBorder(_e.EDGE_BOTTOM,n),t.borderLeft!==!1&&e.setBorder(_e.EDGE_LEFT,n),t.borderRight!==!1&&e.setBorder(_e.EDGE_RIGHT,n)}},"applyBorderStyles"),F1=i((e,t)=>{"gap"in t&&e.setGap(_e.GUTTER_ALL,t.gap??0),"columnGap"in t&&e.setGap(_e.GUTTER_COLUMN,t.columnGap??0),"rowGap"in t&&e.setGap(_e.GUTTER_ROW,t.rowGap??0)},"applyGapStyles"),H1=i((e,t={})=>{L1(e,t),P1(e,t),$1(e,t),O1(e,t),N1(e,t),D1(e,t),B1(e,t),F1(e,t)},"styles"),Og=H1;if(ep())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.
@@ -61,7 +61,7 @@ ${gD}`}i(_y,"buildThinkingPreview");function CD(e){for(let t=e.length-1;t>=0;t--
61
61
  `).length-n," more lines)"]})]})]})}),FD=Hn(({item:e,theme:t})=>Je(A,{flexDirection:"column",marginBottom:1,children:[Je(A,{children:[Te(R,{color:t.colors.dim,bold:!0,children:"System"}),Je(R,{dimColor:!0,children:[" [",Jp(e.timestamp),"]"]})]}),Te(A,{marginLeft:2,children:Te(R,{dimColor:!0,children:e.text})})]})),HD=Hn(({tool:e,count:t=1,theme:n})=>{let r=OD(e.status),o=ND(e.status,n);return Je(A,{flexDirection:"column",marginLeft:2,children:[Je(A,{children:[Je(R,{color:o,children:[r," "]}),Te(R,{color:n.colors.text,bold:!0,children:su({tool:e,count:t})})]}),e.error&&Te(A,{marginLeft:2,children:Te(R,{color:n.colors.error,children:e.error})})]})}),WD=Hn(({item:e,theme:t})=>{let n=jp(e.tools);return Je(A,{flexDirection:"column",marginBottom:1,children:[Je(A,{children:[Te(R,{color:t.colors.accent,bold:!0,children:"Tools"}),Je(R,{dimColor:!0,children:[" [",Jp(e.timestamp),"]"]})]}),n.map(r=>Te(HD,{tool:r.tool,count:r.count,theme:t},`${r.tool.id}-${r.count}`))]})}),jD=Hn(({item:e,theme:t})=>Je(A,{flexDirection:"column",marginBottom:1,children:[Te(A,{children:Te(R,{color:t.colors.thinking,italic:!0,children:"Thinking"})}),Te(A,{marginLeft:2,children:Te(R,{color:t.colors.thinking,italic:!0,children:e.compactText??e.text})})]})),UD=Hn(({item:e,theme:t})=>Je(A,{flexDirection:"column",marginBottom:1,children:[Te(A,{children:Je(R,{color:t.colors.error,bold:!0,children:["\u2717"," Error"]})}),Te(A,{marginLeft:2,children:Te(R,{color:t.colors.error,children:e.text})})]})),GD=Hn(({item:e,theme:t})=>Te(A,{flexDirection:"column",marginBottom:1,children:Je(R,{color:t.colors.text,children:[Te(R,{color:t.colors.accent,bold:!0,children:e.icon??">"}),Te(R,{children:" "}),e.compactText??e.text]})})),VD=Hn(({item:e,theme:t})=>Te(A,{flexDirection:"column",marginBottom:e.tightSpacing?0:1,children:Je(R,{color:t.colors.info,children:[Je(R,{bold:!0,children:[e.icon??"\u2139"," "]}),e.compactText??e.text]})})),KD=Hn(({item:e,theme:t})=>Je(A,{flexDirection:"column",marginBottom:1,children:[Te(A,{children:Je(R,{color:t.colors.hint,bold:!0,children:["\u{1F4A1}"," Hint"]})}),Te(A,{marginLeft:2,children:Te(R,{dimColor:!0,children:e.text})})]})),Z0=Hn(({item:e,theme:t,maxLines:n=1e3})=>{let r=Vr(()=>ce("dark"),[]),o=t??r;switch(e.type){case"user":return Te(DD,{item:e,theme:o});case"assistant":return Te(BD,{item:e,theme:o,maxLines:n});case"system":return Te(FD,{item:e,theme:o});case"tool_group":return Te(WD,{item:e,theme:o});case"thinking":return Te(jD,{item:e,theme:o});case"error":return Te(UD,{item:e,theme:o});case"event":return Te(GD,{item:e,theme:o});case"info":return Te(VD,{item:e,theme:o});case"hint":return Te(KD,{item:e,theme:o});default:return Te(A,{children:Te(R,{dimColor:!0,children:"Unknown item type"})})}});function zD(e,t){if(e.theme!==t.theme||(e.animateSpinners??!0)!==(t.animateSpinners??!0)||(e.selectedItem??!1)!==(t.selectedItem??!1))return!1;let n=e.row,r=t.row;if(n!==r){if(n.key!==r.key||n.text!==r.text||n.color!==r.color||n.bold!==r.bold||n.italic!==r.italic||n.indent!==r.indent||n.spinner!==r.spinner||n.itemId!==r.itemId)return!1}let o=e.selectionRange,s=t.selectionRange;return o===s?!0:!o||!s?!1:o.start===s.start&&o.end===s.end}i(zD,"areTranscriptRowPropsEqual");var eR=Hn(({row:e,theme:t,animateSpinners:n=!0,selectedItem:r=!1,selectionRange:o})=>{let s=z0(t,e.color),a=e.text===" "?"":e.text,c=a||" ",l=o&&a?Za(a,o.start,o.end):"",u=o&&a?Za(a,0,o.start):a,f=o&&a?Za(a,o.end):"",p=r&&!o,h=!p&&e.color==="dim",m={bold:e.bold||p,italic:e.italic,dimColor:h};return Je(A,{marginLeft:e.indent??0,children:[e.spinner&&n&&Je(Oy,{children:[Te(Fn,{color:t.colors.accent,theme:t}),Te(R,{children:" "})]}),Te(R,{color:p?t.colors.accent:s,...m,children:o&&a?Je(Oy,{children:[u?Te(R,{color:p?t.colors.accent:s,...m,children:u}):null,Te(R,{backgroundColor:t.colors.accent,color:t.colors.background,bold:!0,italic:e.italic,children:l}),f?Te(R,{color:p?t.colors.accent:s,...m,children:f}):null]}):c})]})},zD),Ny=Hn(({section:e,theme:t,animateSpinners:n=!0})=>Te(A,{flexDirection:"column",children:e.rows.map(r=>Te(eR,{row:r,theme:t,animateSpinners:n},r.key))})),ci=i(({items:e,isLoading:t=!1,maxLines:n=1e3,isThinking:r=!1,thinkingCharCount:o=0,thinkingContent:s="",streamingResponse:a="",currentTool:c,activeToolCalls:l,toolInputCharCount:u=0,toolInputContent:f="",iterationHistory:p=[],currentIteration:h=1,isCompacting:m=!1,agentMode:g,managedPhase:T,managedHarnessProfile:w,managedWorkerTitle:C,managedRound:b,managedMaxRounds:_,managedGlobalWorkBudget:M,managedBudgetUsage:E,managedBudgetApprovalRequired:I,lastLiveActivityLabel:W,liveStatusLines:O,viewportRows:F,viewportWidth:Y,scrollOffset:re=0,animateSpinners:q=!0,windowed:y=!1,showFullThinking:L=!1,showDetailedTools:te=!1,showAllContent:j=!1,showLiveProgressRows:ae=!0,selectedItemId:de,expandedItemKeys:me,onMetricsChange:ke,onVisibleRowsChange:pe,rendererWindow:we,selectedTextRanges:$e,transcriptModel:Q,visibleRowsOverride:se})=>{let Ce=Vr(()=>ce("dark"),[]),{stdout:tt}=Wr(),Tt=Y??tt?.columns??80,Ke=Vr(()=>Q??Yp({items:e,viewportWidth:Tt,isLoading:t,maxLines:n,isThinking:r,thinkingCharCount:o,thinkingContent:s,streamingResponse:a,currentTool:c,activeToolCalls:l,toolInputCharCount:u,toolInputContent:f,iterationHistory:p,currentIteration:h,isCompacting:m,managedAgentMode:g,managedPhase:T,managedHarnessProfile:w,managedWorkerTitle:C,managedRound:b,managedMaxRounds:_,managedGlobalWorkBudget:M,managedBudgetUsage:E,managedBudgetApprovalRequired:I,lastLiveActivityLabel:W,liveStatusLines:O,windowed:y,showFullThinking:L,showDetailedTools:te,showAllContent:j,showLiveProgressRows:ae,expandedItemKeys:me}),[Q,e,Tt,t,n,r,o,s,a,c,l,u,f,p,h,m,g,T,w,C,b,_,M,E,I,W,O,y,L,te,j,ae,me]),Ve=Ke.staticSections,he=Ke.rows,Re=Ke.previewRows,G=Vr(()=>[...he,...Re],[Re,he]),yt=!(G.length>0)&&e.length===0&&!t,jt=Vr(()=>y||we||se?G:he,[G,we,he,se,y]),Ye=Vr(()=>se||U0(jt,{viewportTop:we?Math.max(0,we.viewportTop):void 0,viewportHeight:we?Math.max(0,we.viewportHeight):void 0,start:void 0,end:void 0,viewportRows:F,scrollOffset:re,windowed:y}),[we,re,F,se,y,jt]),Mt=Vr(()=>se||y||we?Ye:G,[G,we,Ye,se,y]),qt=Vr(()=>G,[G]),Vn=we?Math.max(0,we.viewportHeight):F;return Q0(()=>{ke?.({scrollHeight:G.length,viewportHeight:we?Math.max(0,we.viewportHeight):Vn??G.length})},[G.length,Vn,ke,we]),Q0(()=>{pe?.({rows:Mt,allRows:qt})},[qt,pe,Mt]),yt?Te(A,{paddingY:1,children:Te(R,{dimColor:!0,children:"No messages yet. Start typing to begin."})}):Je(A,{flexDirection:"column",children:[!y&&Ve.length>0&&Te(Wa,{items:Ve,children:i(fn=>Te(Ny,{section:fn,theme:Ce,animateSpinners:q},fn.key),"children")}),Mt.map(fn=>Te(eR,{row:fn,theme:Ce,animateSpinners:q,selectedItem:de?fn.key.startsWith(`${de}-`):!1,selectionRange:$e?.get(fn.key)},fn.key))]})},"MessageList");var tR=i(({role:e,content:t})=>{let n=Vr(()=>ce("dark"),[]),r={user:n.colors.primary,assistant:n.colors.secondary,system:n.colors.dim}[e];return Je(A,{flexDirection:"column",marginBottom:1,children:[Te(R,{color:r,bold:!0,children:e==="user"?">":e==="assistant"?"<":"#"}),Te(R,{children:t})]})},"SimpleMessageDisplay");import{jsx as By,jsxs as tm}from"react/jsx-runtime";import uB,{useMemo as Fy}from"react";function lu(e,t,n){let r=fg({triggerPercent:t,triggerTokens:n},e),o=r.config.triggerPercent,s=Math.round(r.triggerTokens/1e3);if(r.absoluteTriggerTokens===void 0)return`@ ${o}% (${s}k)`;let a=Math.round(r.absoluteTriggerTokens/1e3);return`@ min(${o}%, ${a}k) (${s}k)`}i(lu,"formatCompactionPolicy");function nR(e,t,n=0,r){let o=cC(e,n);return fg({triggerPercent:t,triggerTokens:r},e,o).triggerTokens}i(nR,"resolveCompactionThresholdTokens");var YD="\u{1F504}",XD="\u2588",qD="\u2592",JD="\u2192",QD=" \xB7 ";function ZD(e){switch(e){case"auto":return"auto";case"balanced":return"medium";case"quick":return"low";case"deep":return"high";case"off":return"off";default:return e.toLowerCase()}}i(ZD,"formatReasoningModeShort");function eB(e){if(e)return e==="none"?"off":e}i(eB,"formatEffortShort");function tB(e){let t=e.split("->"),n=t[0]??e;if((t.length>1?t[t.length-1]:n)==="off")return"dim";switch(n){case"off":return"dim";case"low":return"green";case"medium":return"yellow";case"high":case"xhigh":case"max":return"magenta";default:return"cyan"}}i(tB,"getReasoningColor");function rR(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}i(rR,"formatTokenCount");function nB(e){let t=Math.min(10,Math.max(0,Math.round(e/10))),n=10-t;return`${XD.repeat(t)}${qD.repeat(n)}`}i(nB,"createMiniProgressBar");function rB(e,t,n,r,o){if(t===0)return"green";let s=nR(t,n,r,o);return e>=s?"red":e>=s*(2/3)?"yellow":"green"}i(rB,"getContextColor");function oB(e){switch(e.toLowerCase()){case"plan":return"blue";case"accept-edits":return"green";case"auto":case"auto-in-project":return"warning";default:return"magenta"}}i(oB,"getPermissionModeColor");function iB(e,t){let n=bf(e);return!(e==="auto"||e==="auto-in-project")||!t?n:`${n}${t==="llm"?"[LLM]":"[RULES]"}`}i(iB,"buildPermissionModeText");function sB(e){let t=e.toLowerCase();return t.includes("read")||t.includes("view")||t.includes("search")||t.includes("list")||t.includes("find")||t.includes("browser")||t.includes("get")?"Read":t.includes("write")||t.includes("replace")||t.includes("edit")||t.includes("modify")?"Edit":t.includes("command")||t.includes("bash")||t.includes("terminal")?"Bash":t.includes("ask")||t.includes("notify")||t.includes("user")||t.includes("question")?"Ask":t.includes("think")||t.includes("reason")?"Think":e}i(sB,"formatToolAction");function Qp(e,t){return t&&t>0?`${e} (${t} chars)`:e}i(Qp,"formatThinkingStatus");function Zp(e,t,n){let r=sB(e);return n?`${r} (${n}...)`:t&&t>0?`${r} (${t} chars)`:r}i(Zp,"formatToolStatus");function Dy({activeToolCount:e,currentTool:t,isThinkingActive:n,thinkingCharCount:r,isCompacting:o,toolInputCharCount:s,toolInputContent:a,managedPhase:c,managedHarnessProfile:l,managedWorkerTitle:u,managedIdleWaiting:f,managedIdleWaitingPendingCount:p}){let h=e&&e>0?`${e} tool${e===1?"":"s"} running`:void 0;if(o)return"Compacting";if(c==="routing")return h?`Routing - ${h}`:t?`Routing - ${Zp(t,s,a)}`:n?Qp("Routing",r):"Routing";if(c==="preflight"){let m=u??"Scout";return h?`${m} - ${h}`:t?`${m} - ${Zp(t,s,a)}`:n?Qp(m,r):m}if(c==="verifying")return"Verifying";if(l){let m=u??"Worker";if(f===!0&&!h&&!t&&!n){let g=p??0,T=g>1?`waiting for ${g} children`:g===1?"waiting for 1 child":"idle - resuming";return`${m} - ${T}`}return h?`${m} - ${h}`:t?`${m} - ${Zp(t,s,a)}`:n?Qp(m,r):m}if(h)return h;if(t)return Zp(t,s,a);if(n)return Qp("Thinking",r)}i(Dy,"buildBusyStatusText");function aB({agentMode:e,managedPhase:t,managedHarnessProfile:n,managedRound:r,managedMaxRounds:o,managedGlobalWorkBudget:s,managedBudgetUsage:a,currentIteration:c,maxIter:l}){let u=[];return t==="routing"||t==="preflight"||(n&&r&&o&&r>1&&u.push({label:"Round",current:r,max:o}),n&&s&&typeof a=="number"?u.push({label:"Work",current:a,max:s}):e==="sa"&&c&&l&&u.push({label:"Iter",current:c,max:l})),u}i(aB,"resolveIterationSegments");function cB(e){if(e.length!==0)return`${YD} ${e.map(t=>`${t.label} ${t.current}/${t.max}`).join(QD)}`}i(cB,"formatLabeledIterationStatus");function lB(e){let{sessionId:t,permissionMode:n,agentMode:r,provider:o,model:s,tokenUsage:a,currentTool:c,activeToolCount:l,thinking:u,isThinkingActive:f,thinkingCharCount:p,reasoningMode:h=u?"auto":"off",effort:m,reasoningEffortLabel:g,isCompacting:T,toolInputCharCount:w,toolInputContent:C,currentIteration:b,maxIter:_,contextUsage:M,learning:E,showBusyStatus:I=!0,managedPhase:W,managedHarnessProfile:O,managedWorkerTitle:F,managedRound:Y,managedMaxRounds:re,managedGlobalWorkBudget:q,managedBudgetUsage:y,managedIdleWaiting:L,managedIdleWaitingPendingCount:te}=e,j=[{id:"agent-mode",text:`KodaX - ${r.toUpperCase()}`,color:"primary",bold:!0},{id:"permission-mode",text:iB(n,e.autoModeEngine),color:oB(n)}],ae=g??eB(m)??ZD(h);j.push({id:"reasoning-mode",text:ae,color:tB(ae)});let de=aB({agentMode:r,managedPhase:W,managedHarnessProfile:O,managedRound:Y,managedMaxRounds:re,managedGlobalWorkBudget:q,managedBudgetUsage:y,currentIteration:b,maxIter:_}),me=cB(de);if(me){let pe=Math.max(...de.map($e=>$e.current/$e.max)),we="green";pe>=.8?we="red":pe>=.5&&(we="yellow"),j.push({id:"iteration-status",text:me,color:we})}j.push({id:"session-id",text:t,color:"dim"});let ke=I?Dy({activeToolCount:l,currentTool:c,isThinkingActive:f,thinkingCharCount:p,isCompacting:T,toolInputCharCount:w,toolInputContent:C,managedPhase:W,managedHarnessProfile:O,managedWorkerTitle:F,managedIdleWaiting:L,managedIdleWaitingPendingCount:te}):void 0;if(ke&&j.push({id:"busy-status",text:ke,color:"dim"}),j.push({id:"provider-model",text:`${o}/${s}`,color:"secondary"}),M&&M.contextWindow!==0){let pe=Math.round(M.currentTokens/M.contextWindow*100),we=rR(M.currentTokens),$e=rR(M.contextWindow),Q=nB(pe);j.push({id:"context-usage",text:`${we}/${$e} ${Q} ${pe}%`,color:rB(M.currentTokens,M.contextWindow,M.triggerPercent,M.reservedResponseTokens,M.triggerTokens)})}if(E&&(E.ready>0||E.newlyActive>0||E.attention>0)){let pe=[...E.ready>0?[`${E.ready}R`]:[],...E.newlyActive>0?[`${E.newlyActive}N`]:[],...E.attention>0?[`${E.attention}!`]:[]];j.push({id:"learning",text:`Learn:${pe.join("/")}`,color:E.attention>0||E.ready>0?"yellow":"cyan",tone:E.attention>0||E.ready>0?"warning":"accent"})}return a&&j.push({id:"token-usage",text:`${a.input}${JD}${a.output} (${a.total})`,color:"dim"}),j}i(lB,"buildStatusBarSegments");function em(e){let t=lB(e);return{text:t.map(n=>n.text).join(" | "),segments:t}}i(em,"buildStatusBarViewModel");function dB(e,t){if(e.color)return t.colors[e.color]??e.color;switch(e.tone){case"primary":return t.colors.primary;case"accent":return t.colors.accent;case"success":return t.colors.success;case"warning":return t.colors.warning;case"error":return t.colors.error;default:return t.colors.dim}}i(dB,"resolveViewModelSegmentColor");var us=i(({viewModel:e,...t})=>{let n=Fy(()=>ce("dark"),[]),r=Fy(()=>e??em(t),[t,e]);return By(A,{paddingX:1,children:r.segments.map((o,s)=>tm(uB.Fragment,{children:[By(R,{color:dB(o,n),bold:o.bold,children:o.text}),s<r.segments.length-1?By(R,{dimColor:!0,children:" | "}):null]},o.id))})},"StatusBar"),oR=i(({permissionMode:e,provider:t,model:n})=>{let r=Fy(()=>ce("dark"),[]);return tm(A,{children:[tm(R,{color:r.colors.primary,bold:!0,children:["[",e,"]"]}),tm(R,{dimColor:!0,children:[" ",t,"/",n]})]})},"SimpleStatusBar");import{jsx as li,jsxs as om}from"react/jsx-runtime";import{useState as Hy,useCallback as nm,useMemo as iR}from"react";function rm(){return`${Date.now()}-${Math.random().toString(36).slice(2,9)}`}i(rm,"generateId");function fB(e){let t={id:e.id,timestamp:e.timestamp};switch(e.role){case"user":return{...t,type:"user",text:e.content};case"assistant":return{...t,type:"assistant",text:e.content};case"system":return{...t,type:"system",text:e.content};default:return{...t,type:"info",text:e.content}}}i(fB,"messageToHistoryItem");var sR=i(({model:e,provider:t,onSubmit:n,permissionMode:r="accept-edits",agentMode:o="ama"})=>{let{stdout:s}=Wr(),a=iR(()=>ce("dark"),[]),[c,l]=Hy({messages:[],isLoading:!1,sessionId:rm()}),[u,f]=Hy(null),[p,h]=Hy(),m=nm(async C=>{if(!C.trim())return;let b={id:rm(),role:"user",content:C,timestamp:Date.now()};l(_=>({..._,messages:[..._.messages,b],isLoading:!0}));try{await n(C)}catch(_){let M={id:rm(),role:"system",content:`Error: ${_ instanceof Error?_.message:"Unknown error"}`,timestamp:Date.now()};l(E=>({...E,messages:[...E.messages,M],isLoading:!1}))}finally{l(_=>({..._,isLoading:!1}))}},[n]),g=nm((C,b)=>{let _={id:rm(),role:C,content:b,timestamp:Date.now()};l(M=>({...M,messages:[...M.messages,_]}))},[]),T=nm((C,b)=>{f({input:C,output:b,total:C+b})},[]),w=nm(C=>{h(C)},[]);return om(A,{flexDirection:"column",children:[li(A,{flexGrow:1,flexDirection:"column",overflow:"hidden",children:li(ci,{items:c.messages.map(fB),isLoading:c.isLoading})}),li(A,{flexShrink:0,children:li(cs,{onSubmit:i(C=>m(C.fullText),"onSubmit"),prompt:">",focus:!c.isLoading})}),li(A,{flexShrink:0,children:li(us,{sessionId:c.sessionId,permissionMode:r,agentMode:o,provider:t,model:e,tokenUsage:u??void 0,currentTool:p})})]})},"App"),aR=i(({model:e,provider:t,onInput:n})=>{let r=iR(()=>ce("dark"),[]);return om(A,{flexDirection:"column",children:[om(A,{marginBottom:1,children:[li(R,{color:r.colors.primary,bold:!0,children:"KodaX CLI"}),om(R,{dimColor:!0,children:[" ","- ",t,"/",e]})]}),li(cs,{onSubmit:i(o=>n(o.fullText),"onSubmit"),placeholder:"Type a message...",prompt:">"})]})},"SimpleApp");import{jsx as pB}from"react/jsx-runtime";var im=i(({top:e,topRows:t=0,transcript:n,renderTranscriptWindow:r,footer:o,overlay:s,stickyHeader:a,jumpToLatest:c,width:l,scrollTop:u=0,scrollHeight:f=0,viewportHeight:p=0,stickyScroll:h=!0,scrollRef:m,onScrollTopChange:g,onStickyChange:T,onWindowChange:w,overscanRows:C})=>pB(ly,{width:l,top:e,topRows:t,stickyHeader:a,jumpToLatest:c,scrollable:n,renderScrollableWindow:r,overlay:s,bottom:o,scrollTop:u,scrollHeight:f,viewportHeight:p,stickyScroll:h,scrollRef:m,onScrollTopChange:g,onStickyChange:T,onWindowChange:w,overscanRows:C}),"FullscreenTranscriptLayout");import{jsx as cR}from"react/jsx-runtime";function ec({copyMessage:e=!1,copyToolInput:t=!1,copyOnSelect:n=!1,toggleDetail:r=!1,selectionNavigation:o=!1,matchNavigation:s=!1,dismissAction:a}){let c=[];return o&&c.push("\u2190/\u2192 browse"),e&&c.push("C copy"),t&&c.push("I tool input"),n&&c.push("Mouse select copies"),r&&c.push("V details"),s&&c.push("N/Shift+N matches"),a==="clear"&&c.push("Esc clear"),a==="close-search"&&c.push("Esc close search"),c.length>0?c.join(" | "):void 0}i(ec,"buildMessageActionsText");var sm=i(({copyMessage:e=!1,copyToolInput:t=!1,copyOnSelect:n=!1,toggleDetail:r=!1,selectionNavigation:o=!1,matchNavigation:s=!1,dismissAction:a})=>{let c=ce("dark"),l=ec({copyMessage:e,copyToolInput:t,copyOnSelect:n,toggleDetail:r,selectionNavigation:o,matchNavigation:s,dismissAction:a});return l?cR(A,{paddingX:1,children:cR(R,{color:c.colors.dim,children:l})}):null},"MessageActions");import{jsx as lR}from"react/jsx-runtime";function Wy({itemSummary:e,itemKind:t,position:n,detailState:r="compact"}){if(!e||!n||n.total<=0)return;let o=r==="expanded"?"expanded":"compact",s=t?`${t}: `:"";return`Selected item ${n.current}/${n.total}: ${s}${e} | ${o}`}i(Wy,"buildMessageSelectorText");var uR=i(({itemSummary:e,itemKind:t,position:n,detailState:r="compact"})=>{let o=ce("dark"),s=Wy({itemSummary:e,itemKind:t,position:n,detailState:r});return s?lR(A,{paddingX:1,children:lR(R,{color:o.colors.dim,children:s})}):null},"MessageSelector");import{jsx as tc,jsxs as mB}from"react/jsx-runtime";import{useMemo as dR}from"react";function am(e,t){return Math.max(1,Sn(e.length>0?e.split(`
62
62
  `):[""],Math.max(1,t),0,0).visualLines.length)}i(am,"countWrappedRows");var cm=i(({browse:e,selection:t,search:n,chromeMode:r="inline",...o})=>{let s=r==="inline",a=t?.itemSummary,c=t?.position,l=t?.itemKind,u=t?.detailState??"compact",f=t?.copyCapabilities,p=f?.message??!1,h=f?.toolInput??!1,m=f?.copyOnSelect??!1,g=t?.toggleDetail??!1,T=t?.navigationCapabilities?.selection??!1,w=n?.statusText,C=n?.matches?.length??0,b=n?.surface,_=o.viewportWidth??80,M=Math.max(1,_-2),E=n?.query?.trim()?"close-search":a||p||h||g||T?"clear":void 0,I=Wy({itemSummary:a,itemKind:l,position:c,detailState:u}),W=dR(()=>ec({copyMessage:p,copyToolInput:h,copyOnSelect:m,toggleDetail:g,selectionNavigation:T,matchNavigation:!!w&&C>0,dismissAction:E}),[p,h,T,g,E,C,w,m]),O=dR(()=>{if(!s)return 0;let Y=0;return e?.hintText&&(Y+=am(e.hintText,M)),I&&(Y+=am(I,M)),W&&(Y+=am(W,M)),w&&(Y+=am(w,M)),b&&(Y+=1),Y},[W,e?.hintText,M,s,w,b,I]),F=typeof o.viewportRows=="number"?Math.max(1,o.viewportRows-O):o.viewportRows;return mB(A,{flexDirection:"column",flexGrow:o.windowed?0:1,children:[s&&e?.hintText?tc(A,{paddingX:1,children:tc(R,{dimColor:!0,children:e.hintText})}):null,null,s&&(p||h||m||g||T||C>0)?tc(sm,{copyMessage:p,copyToolInput:h,copyOnSelect:m,toggleDetail:g,selectionNavigation:T,matchNavigation:!!w&&C>0,dismissAction:E}):null,s&&w?tc(A,{paddingX:1,children:tc(R,{dimColor:!0,children:w})}):null,s?b:null,tc(ci,{...o,viewportRows:F})]})},"TranscriptViewport");import{jsx as fR}from"react/jsx-runtime";var lm=i(e=>fR(A,{flexDirection:"column",children:fR(cs,{...e})}),"PromptComposer");import{jsx as ds,jsxs as um}from"react/jsx-runtime";import pR from"react";var mR=" \xB7 ",uu=i(({items:e=[]})=>{let t=e.filter(r=>r.label.trim().length>0),n=ce("dark");return t.length===0?null:ds(A,{flexGrow:1,children:t.map((r,o)=>um(pR.Fragment,{children:[ds(R,{color:r.accent?n.colors.accent:n.colors.dim,bold:r.accent,children:r.label}),o<t.length-1?ds(R,{dimColor:!0,children:mR}):null]},r.id))})},"PromptFooterLeftSide"),du=i(({items:e=[]})=>{let t=e.filter(r=>r.label.trim().length>0),n=ce("dark");return t.length===0?null:ds(A,{justifyContent:"flex-end",children:t.map((r,o)=>um(pR.Fragment,{children:[ds(R,{color:r.accent?n.colors.primary:n.colors.dim,bold:r.accent,children:r.label}),o<t.length-1?ds(R,{dimColor:!0,children:mR}):null]},r.id))})},"PromptFooterRightSide"),fu=i(({left:e,right:t,queued:n,stashNotice:r,notifications:o,inlineNotices:s,activityBar:a,todoSurface:c,composer:l,inlineSuggestions:u,helpSurface:f,taskBar:p,statusLine:h,inlineDialogs:m})=>um(A,{flexDirection:"column",children:[e||t?um(A,{paddingX:1,children:[ds(A,{flexGrow:1,children:e}),t]}):null,n,r,o,s,a,c,l,u,m,f,p,h]}),"PromptFooter");import{jsx as jy,jsxs as hR}from"react/jsx-runtime";var dm=i(({sections:e,title:t="Help"})=>{let n=ce("dark"),r=e.filter(o=>o.items.length>0);return r.length===0?null:hR(A,{flexDirection:"column",borderStyle:"round",borderColor:n.colors.accent,paddingX:1,marginTop:1,children:[jy(R,{color:n.colors.accent,bold:!0,children:t}),r.map(o=>hR(A,{flexDirection:"column",children:[jy(R,{color:n.colors.primary,bold:!0,children:o.title}),jy(R,{dimColor:!0,children:o.items.map(s=>s.label).join(" | ")})]},o.id))]})},"PromptHelpMenu");import{jsx as gR}from"react/jsx-runtime";import{createContext as SR,useContext as wR,useReducer as hB,useCallback as rn,useMemo as gB}from"react";var yR=150;function mu(){return`${Date.now()}-${Math.random().toString(36).slice(2,9)}`}i(mu,"generateId");function pu(e){let t=e.timestamp;return{...e,id:mu(),timestamp:t!==void 0&&Number.isFinite(t)&&t>=0?t:Date.now()}}i(pu,"createHistoryItem");function xR(e){if(e.length<=yR)return e;let t=0,n=e.length-yR;for(let o=e.length-1;o>=0;o--)if(e[o]?.type==="user"&&(t++,t>50)){n=Math.max(n,o);break}let r=e.slice(n).findIndex(o=>o.type==="user");return r>0&&(n+=r),e.slice(n)}i(xR,"trimHistoryToRounds");function Uy(e,t){return e.filter(n=>n.type==="user"&&typeof n.id=="string"&&!t.has(n.id))}i(Uy,"selectUncommittedLedgerUserItems");function fm(e){return{...e,id:mu(),startTime:Date.now()}}i(fm,"createToolCall");function yB(e,t){switch(t.type){case"SET_STREAMING_STATE":return{...e,streamingState:t.payload};case"APPEND_TO_RESPONSE":return{...e,currentResponse:e.currentResponse+t.payload};case"CLEAR_RESPONSE":return{...e,currentResponse:""};case"ADD_HISTORY_ITEM":return{...e,history:xR([...e.history,t.payload])};case"BULK_ADD_HISTORY_ITEMS":return{...e,history:xR([...e.history,...t.payload])};case"UPDATE_HISTORY_ITEM":return{...e,history:e.history.map(n=>n.id===t.payload.id?{...n,...t.payload.updates}:n)};case"CLEAR_HISTORY":return{...e,history:[]};case"ADD_TOOL_CALL":return{...e,pendingToolCalls:[...e.pendingToolCalls,t.payload]};case"UPDATE_TOOL_CALL":return{...e,pendingToolCalls:e.pendingToolCalls.map(n=>n.id===t.payload.id?{...n,...t.payload.updates}:n)};case"CLEAR_TOOL_CALLS":return{...e,pendingToolCalls:[]};case"SET_SESSION_ID":return{...e,sessionId:t.payload};case"SET_PROVIDER":return{...e,provider:t.payload};case"SET_MODEL":return{...e,model:t.payload};case"SET_TOKEN_USAGE":return{...e,tokenUsage:t.payload};case"SET_ERROR":return{...e,error:t.payload};case"SET_LOADING":return{...e,isLoading:t.payload};case"RESET_STATE":return{...If,sessionId:e.sessionId};default:return e}}i(yB,"uiReducer");var TR=SR(null),CR=SR(null);function hu({children:e,initialState:t}){let[n,r]=hB(yB,{...If,...t}),o=rn(I=>{r({type:"SET_STREAMING_STATE",payload:I})},[]),s=rn(I=>{r({type:"APPEND_TO_RESPONSE",payload:I})},[]),a=rn(()=>{r({type:"CLEAR_RESPONSE"})},[]),c=rn(I=>{let W=pu(I);r({type:"ADD_HISTORY_ITEM",payload:W})},[]),l=rn(I=>{I.length!==0&&r({type:"BULK_ADD_HISTORY_ITEMS",payload:I.map(pu)})},[]),u=rn((I,W)=>{r({type:"UPDATE_HISTORY_ITEM",payload:{id:I,updates:W}})},[]),f=rn(()=>{r({type:"CLEAR_HISTORY"})},[]),p=rn(I=>{let W=fm(I);return r({type:"ADD_TOOL_CALL",payload:W}),W.id},[]),h=rn((I,W)=>{r({type:"UPDATE_TOOL_CALL",payload:{id:I,updates:W}})},[]),m=rn(()=>{r({type:"CLEAR_TOOL_CALLS"})},[]),g=rn(I=>{r({type:"SET_SESSION_ID",payload:I})},[]),T=rn(I=>{r({type:"SET_MODE",payload:I})},[]),w=rn(I=>{r({type:"SET_PROVIDER",payload:I})},[]),C=rn(I=>{r({type:"SET_MODEL",payload:I})},[]),b=rn(I=>{r({type:"SET_TOKEN_USAGE",payload:I})},[]),_=rn(I=>{r({type:"SET_ERROR",payload:I})},[]),M=rn(I=>{r({type:"SET_LOADING",payload:I})},[]),E=gB(()=>({setStreamingState:o,appendToResponse:s,clearResponse:a,addHistoryItem:c,addHistoryItems:l,updateHistoryItem:u,clearHistory:f,addToolCall:p,updateToolCall:h,clearToolCalls:m,setSessionId:g,setMode:T,setProvider:w,setModel:C,setTokenUsage:b,setError:_,setLoading:M}),[o,s,a,c,l,u,f,p,h,m,g,T,w,C,b,_,M]);return gR(TR.Provider,{value:n,children:gR(CR.Provider,{value:E,children:e})})}i(hu,"UIStateProvider");function nc(){let e=wR(TR);if(!e)throw new Error("useUIState must be used within a UIStateProvider");return e}i(nc,"useUIState");function rc(){let e=wR(CR);if(!e)throw new Error("useUIActions must be used within a UIStateProvider");return e}i(rc,"useUIActions");function Gy(){let e=nc(),t=rc();return{state:e,actions:t}}i(Gy,"useUI");function Vy(){return ce()}i(Vy,"useTheme");import{jsxs as ui,jsx as pm,Fragment as xB}from"react/jsx-runtime";import{useMemo as SB}from"react";var wB=80,TB=7,CB={command:">",file:"\u{1F4C4}",history:"\u23F1",argument:"\u2022",snippet:"\u25C7",skill:"\u2605"};function IB(e,t,n){if(t<=n)return{start:0,end:t};let r=Math.floor(n/2),o=e-r,s=o+n;return o<0?(o=0,s=n):s>t&&(s=t,o=t-n),{start:o,end:s}}i(IB,"getVisibleRange");function vB({suggestion:e,isSelected:t,width:n}){let r=Vy(),o=e.icon||e.type&&CB[e.type]||"",s=o?Tr(o)+1:0,a=Tr(e.displayText||e.text),c=e.description?Tr(e.description):0,l=Math.min(a,n-s-2),u=n-s-l-3,f=Math.max(0,u),p=_a(e.displayText||e.text,l),h=e.description?_a(e.description,f):"";return ui(A,{children:[o&&ui(R,{color:t?r.colors.accent:r.colors.dim,children:[o," "]}),pm(R,{color:t?r.colors.primary:r.colors.text,bold:t,children:p}),h&&ui(xB,{children:[pm(R,{children:" "}),pm(R,{color:r.colors.dim,children:_a(e.description||"",f)})]}),t&&ui(R,{color:r.colors.accent,children:[" ","\u25C0"]})]})}i(vB,"SuggestionItem");function gu({suggestions:e,selectedIndex:t,visible:n,maxVisible:r=TB,width:o=wB,showCount:s=!1}){let a=Vy();if(!n||e.length===0)return null;let{start:c,end:l}=SB(()=>IB(t,e.length,r),[t,e.length,r]),u=e.slice(c,l);return ui(A,{flexDirection:"column",marginLeft:2,children:[c>0&&ui(R,{color:a.colors.dim,children:[" ","\u25B2 ",c," more..."]}),u.map((f,p)=>{let m=c+p===t;return pm(vB,{suggestion:f,isSelected:m,width:o},f.id)}),l<e.length&&ui(R,{color:a.colors.dim,children:[" ","\u25BC ",e.length-l," more..."]}),s&&ui(R,{color:a.colors.dim,children:[t+1,"/",e.length]})]})}i(gu,"SuggestionsDisplay");import{jsx as oc,jsxs as bB}from"react/jsx-runtime";var mm=i(({reserveSpace:e,width:t,hidden:n=!1,mode:r="inline"})=>{let o=si(),s=ce("dark");if(n)return null;if(!o)return e?oc(A,{height:8}):null;let{state:a,suggestions:c}=o;return a.visible&&c.length>0?r==="overlay"?bB(A,{flexDirection:"column",borderStyle:"round",borderColor:s.colors.accent,paddingX:1,marginTop:1,children:[oc(R,{color:s.colors.accent,bold:!0,children:"Suggestions"}),oc(gu,{suggestions:c,selectedIndex:a.selectedIndex,visible:a.visible,maxVisible:7,width:Math.max(20,t-6)})]}):oc(A,{height:8,children:oc(gu,{suggestions:c,selectedIndex:a.selectedIndex,visible:a.visible,maxVisible:7,width:Math.max(20,t-2)})}):e?oc(A,{height:8}):null},"PromptSuggestionsSurface");import{jsxs as Ir,jsx as or,Fragment as Ky}from"react/jsx-runtime";import RB,{useEffect as kB,useState as EB}from"react";var ic=15,IR=Math.max(1,ic-2),hm=i(({confirm:e,request:t})=>e?Ir(A,{flexDirection:"column",borderStyle:"round",borderColor:"yellow",paddingX:1,marginTop:1,width:"100%",children:[Ir(R,{color:"yellow",bold:!0,children:[ne("dialog.confirm")," ",e.prompt]}),e.planContent?or(MB,{content:e.planContent}):null,e.instruction?or(R,{dimColor:!0,children:e.instruction}):null]}):t?Ir(A,{flexDirection:"column",borderStyle:"round",borderColor:"cyan",paddingX:1,marginTop:1,width:"100%",children:[t.kind==="select"?Ir(Ky,{children:[Ir(R,{color:"cyan",bold:!0,children:[ne("dialog.select")," ",t.title]}),(()=>{let n=t.options??[],r=t.visibleSelectOptions??5,o=t.focusedIndex??0,s=n.length,a=0;if(s>r){let u=Math.floor(r/2);a=Math.max(0,Math.min(o-u,s-r))}let c=a,l=Math.max(0,s-a-r);return Ir(Ky,{children:[c>0?or(R,{dimColor:!0,children:ne("select.more_above",{count:c})}):null,n.slice(a,a+r).map((u,f)=>{let p=a+f,h=p===o,m=t.selectedIndices?.includes(p)??!1,g=h?"\u276F ":" ",T=m?" \u2713":"",w=u.description?` - ${u.description}`:"";return or(R,{color:h?"cyan":void 0,dimColor:!h,children:`${g}${u.label}${w}${T}`},`${u.value}-${p}`)}),l>0?or(R,{dimColor:!0,children:ne("select.more_below",{count:l})}):null]})})(),or(R,{dimColor:!0,children:t.multiSelect?ne("select.multiselect_hint"):ne("select.navigate_hint")})]}):Ir(Ky,{children:[Ir(R,{color:"cyan",bold:!0,children:[ne("dialog.input")," ",t.prompt]}),t.defaultValue!==void 0?or(R,{dimColor:!0,children:`${ne("input.default")} ${t.defaultValue}`}):null,or(R,{dimColor:!0,children:`${ne("input.value")} ${t.buffer||ne("input.type_response")}`}),or(R,{dimColor:!0,children:ne("select.confirm_hint")})]}),t.error?or(R,{color:"red",children:t.error}):null]}):null,"DialogSurface"),MB=i(({content:e})=>{let t=RB.useMemo(()=>e.split(`
63
63
  `),[e]),n=t.length,r=n>ic,[o,s]=EB(0);kB(()=>{s(u=>{let f=Math.max(0,n-ic);return u>f?f:u})},[n]),ja((u,f)=>{if(!r)return;let p=Math.max(0,n-ic);f.upArrow?s(h=>Math.max(0,h-1)):f.downArrow?s(h=>Math.min(p,h+1)):f.pageUp?s(h=>Math.max(0,h-IR)):f.pageDown&&s(h=>Math.min(p,h+IR))},{isActive:!0});let a=t.slice(o,o+ic),c=o,l=Math.max(0,n-o-ic);return Ir(A,{flexDirection:"column",marginTop:1,children:[r&&c>0?Ir(R,{dimColor:!0,children:["\u2026 ",c," more line",c===1?"":"s"," above"]}):null,a.map((u,f)=>or(R,{children:u},`plan-line-${o+f}`)),r&&l>0?Ir(R,{dimColor:!0,children:["\u2026 ",l," more line",l===1?"":"s"," below"]}):null,r?or(R,{dimColor:!0,children:"PgUp/PgDn/\u2191\u2193 to scroll"}):null]})},"PlanScrollPanel");import{jsxs as yu,jsx as _B}from"react/jsx-runtime";function vR(e){let t=e.replace(/\s+/g," ").trim();return t.length<=72?t:`${t.slice(0,69)}...`}i(vR,"normalizePendingPreview");function bR(e){if(e.length===0)return;let t=vR(e[e.length-1]??"");return e.length===1?`Queued 1 follow-up: ${t} (Esc removes it)`:`Queued ${e.length} follow-ups. Latest: ${t} (Esc removes latest)`}i(bR,"formatPendingInputsSummary");function zy(e){if(e.length===0)return[];let t=e.length;return e.map((n,r)=>({index:r+1,total:t,preview:vR(n)}))}i(zy,"formatPendingInputsLines");function RR(e){let t=zy(e);return t.length===0?void 0:[...t.map(o=>`\u23F3 [${o.index}/${o.total}] ${o.preview}`)," \u2191 pull all into editor \xB7 Esc drops latest"].join(`
64
- `)}i(RR,"formatPendingInputsBudgetText");var gm=i(({pendingInputs:e})=>{let t=zy(e);if(t.length===0)return null;let n=ce("dark");return yu(A,{flexDirection:"column",children:[t.map(r=>yu(A,{children:[yu(R,{color:n.colors.hint,children:["\u23F3"," "]}),yu(R,{color:n.colors.dim,children:["[",r.index,"/",r.total,"] ",r.preview]})]},r.index)),_B(A,{children:yu(R,{color:n.colors.dim,children:[" ","\u2191 pull all into editor \xB7 Esc drops latest"]})})]})},"QueuedCommandsSurface");import{jsx as kR}from"react/jsx-runtime";function AB(e,t){switch(e){case"warning":return t.warning;case"accent":return t.accent;default:return t.dim}}i(AB,"resolveNotificationColor");var xu=i(({notifications:e})=>{let t=e.filter(r=>r.text.trim().length>0),n=ce("dark");return t.length===0?null:kR(A,{flexDirection:"column",paddingX:1,children:t.map(r=>kR(R,{color:AB(r.tone,n.colors),children:r.text},r.id))})},"NotificationsSurface");import{jsx as ER}from"react/jsx-runtime";var ym=i(({notices:e})=>{let t=e.filter(r=>r.trim().length>0);if(t.length===0)return null;let n=ce("dark");return ER(A,{flexDirection:"column",paddingX:1,children:t.map((r,o)=>ER(R,{color:n.colors.dim,children:r},`${r}-${o}`))})},"StatusNoticesSurface");import{jsxs as MR,jsx as LB}from"react/jsx-runtime";var Su=i(({text:e})=>{let t=e?.trim();if(!t)return null;let n=ce("dark");return MR(A,{paddingX:1,children:[MR(R,{color:n.colors.hint,children:["\u22EF"," "]}),LB(R,{color:n.colors.dim,children:t})]})},"StashNotice");import{jsx as fs,jsxs as PB}from"react/jsx-runtime";function _R({text:e,accent:t=!1,selected:n=!1}){let r=ce("dark");return fs(A,{marginRight:1,children:fs(R,{color:t?r.colors.accent:r.colors.primary,bold:n||t,children:`[ ${e} ]`})})}i(_R,"Pill");var wu=i(({items:e,overflowLabel:t,ctaHint:n,showSpinner:r=!1})=>{let o=e.filter(s=>s.label.trim().length>0);return o.length===0&&!t&&!n&&!r?null:PB(A,{flexDirection:"row",paddingX:1,children:[r?fs(A,{marginRight:1,children:fs(Fn,{})}):null,o.map(s=>fs(_R,{text:s.hint?`${s.label} (${s.hint})`:s.label,accent:s.accent,selected:s.selected},s.id)),t?fs(_R,{text:t}):null,n?fs(R,{dimColor:!0,children:n}):null]})},"BackgroundTaskBar");import{jsx as Tu,jsxs as FB}from"react/jsx-runtime";import $B from"string-width";var Yy=9,Xy=3,AR=160,OB={shouldRender:!1,activeCount:0,rows:[]};function LR(e,t=Yy){let n=$B(e);return n>=t?e:`${e}${" ".repeat(t-n)}`}i(LR,"padChildActivitySymbol");function qy(e){let t=e.replace(/\s+/gu," ").trim();return t.length<=AR?t:`${t.slice(0,AR-3)}...`}i(qy,"truncateChildActivityDetail");function xm(e){return!!(e?.liveOnly===!0&&(e.workflowCorrelation||e.childAgentId))}i(xm,"shouldRouteToChildActivity");function PR(e,t){return!!(e?.liveOnly===!0&&e.workflowCorrelation?.workflowRunId&&t&&e.workflowCorrelation.workflowRunId===t)}i(PR,"shouldRouteWorkflowLiveOnlyNotice");function $R(e){return!e.isTranscriptMode&&e.childActivityVisible&&(e.isLoading||e.hasWorkflowLiveSurface)}i($R,"shouldShowChildActivitySurface");function Jy(e){let t=e.childAgentId??e.workflowCorrelation?.childAgentId??"child",n=e.workflowCorrelation?.workflowRunId;return n?`${n}:${t}`:t}i(Jy,"childActivityId");function OR(e){return e.childAgentName??e.childAgentId??e.workflowCorrelation?.childAgentId??"child"}i(OR,"childActivityLabel");function NR(e){return e.workflowCorrelation?"workflow":"normal"}i(NR,"childActivitySource");function DR(e,t){let n=t?.path??t?.pattern??t?.command??t?.preview,r=typeof n=="string"&&n.trim().length>0?` ${n}`:"";return qy(`${e}${r}`)}i(DR,"toolActivityDetail");function BR(e,t){return e==="tool"&&["thinking","assistant","stream"].includes(t)}i(BR,"suppressesChurnOverToolAction");function NB(e){let t=Math.max(0,Math.floor(e/1e3)),n=t%60,r=Math.floor(t/60)%60,o=Math.floor(t/3600);return o>0?`${o}h${String(r).padStart(2,"0")}m`:r>0?`${r}m${String(n).padStart(2,"0")}s`:`${n}s`}i(NB,"formatChildActivityElapsed");function DB(e){switch(e){case"assistant":return"Assistant";case"thinking":return"Thinking";case"tool":return"Tool";case"progress":return"Progress";case"prompt":return"Prompt";default:return"Status"}}i(DB,"kindLabel");function BB(e,t){let n=e.label.trim()||"child",r=e.startedAt!==void 0?` \xB7 ${NB(t-e.startedAt)}`:"",o=e.detail.trim(),s=o.length>0?`: ${o}`:"";return`${n}${r} - ${DB(e.kind)}${s}`}i(BB,"rowText");function FR(e,t=Xy,n=Date.now()){let r=e.filter(u=>u.status==="running");if(r.length===0)return OB;let o=Math.max(1,Math.floor(t)),s=[],a=r.length>o&&o>1?o-1:o,c=r.slice(0,a);for(let u of c)s.push({kind:"activity",id:u.id,symbol:u.source==="workflow"?"agent":"child",symbolColor:"cyan",text:BB(u,n),isActive:!0});let l=r.length-c.length;return l>0&&s.length<o&&s.push({kind:"summary",id:"children-more",symbol:"more",symbolColor:"dim",text:`${l} more active`,isActive:!1}),{shouldRender:!0,activeCount:r.length,rows:s.slice(0,o)}}i(FR,"buildChildActivityViewModel");var HR=Yy;function HB(e){let t=ce("dark");switch(e){case"cyan":return t.colors.primary;case"green":return t.colors.success;default:return t.colors.dim}}i(HB,"resolveSymbolColor");var WB=i(({row:e})=>{let t=HB(e.symbolColor);return FB(A,{flexDirection:"row",children:[Tu(A,{width:HR,flexShrink:0,children:Tu(R,{color:t,bold:e.isActive,wrap:"truncate",children:LR(e.symbol,HR)})}),Tu(R,{color:e.kind==="summary"?ce("dark").colors.dim:void 0,bold:e.isActive,wrap:"truncate",children:e.text})]})},"ChildActivityRowView");function Sm(e){return!e.shouldRender||e.rows.length===0?0:e.rows.length}i(Sm,"measureChildActivitySurfaceRows");var wm=i(({viewModel:e})=>!e.shouldRender||e.rows.length===0?null:Tu(A,{flexDirection:"column",flexGrow:1,children:e.rows.map(t=>Tu(WB,{row:t},`${t.kind}-${t.id}`))}),"ChildActivitySurface");import WR,{createContext as GR,useContext as VR,useReducer as jB,useCallback as rt,useRef as jR,useEffect as UR}from"react";function UB(e,t){return e.agentId===t&&e.priority==="user"&&e.mode==="prompt"}i(UB,"isPendingPromptForAgent");function ex(e){return Zn().getSnapshot().filter(t=>UB(t,e))}i(ex,"getPendingPrompts");function Qy(e){return ex(e).map(t=>t.content)}i(Qy,"getPendingPromptContents");var Zy={state:xr.Idle,currentResponse:"",error:void 0,abortController:void 0,isThinking:!1,thinkingCharCount:0,thinkingContent:"",currentTool:void 0,toolInputCharCount:0,toolInputContent:"",iterationHistory:[],currentIteration:1,maxIter:200,isCompacting:!1,pendingInputs:[],roundStartedAt:null};function Tm(e={}){let t=i(()=>e.getPendingInputAgentId?.(),"getPendingInputAgentId"),n={...Zy,pendingInputs:Qy(t())},r=new Set,o="",s="",a=0,c=null,l=!1,u=80,f=i(()=>{for(let w of r)w(n)},"notify"),p=i(()=>{let w=Qy(t());if(w.length===n.pendingInputs.length){let C=!0;for(let b=0;b<w.length;b++)if(w[b]!==n.pendingInputs[b]){C=!1;break}if(C)return}n={...n,pendingInputs:w},f()},"syncReactStateFromQueue"),h=Zn().subscribe(()=>{p()}),m=i(()=>Zn().dequeue({agentId:t(),maxPriority:"user",mode:"prompt"}).map(C=>C.content),"drainOurSlice"),g=i(()=>{if(c&&(clearTimeout(c),c=null),o||s||a>0){let C=n.thinkingContent+s,b=s?C.length:n.thinkingCharCount+a;n={...n,currentResponse:n.currentResponse+o,thinkingContent:C,thinkingCharCount:b,...s||a>0?{isThinking:!0}:{}},o="",s="",a=0,f()}},"flushPendingUpdates"),T=i(()=>{c||(c=setTimeout(g,u))},"scheduleFlush");return{getState:i(()=>n,"getState"),setState:i(w=>{g(),n={...n,state:w},f()},"setState"),startStreaming:i(()=>{l=!1,o="",s="",a=0,c&&(clearTimeout(c),c=null),n={...n,state:xr.Responding,currentResponse:"",abortController:new AbortController,error:void 0,roundStartedAt:Date.now()},f()},"startStreaming"),stopStreaming:i(()=>{g(),n={...n,state:xr.Idle,abortController:void 0,roundStartedAt:null},f()},"stopStreaming"),appendResponse:i(w=>{l||(o+=w,T())},"appendResponse"),clearResponse:i(()=>{g(),n={...n,currentResponse:""},f()},"clearResponse"),setError:i(w=>{g(),n={...n,error:w,state:w?xr.Idle:n.state},f()},"setError"),abort:i(w=>{l=!0,g(),n.abortController?.abort(),o="",s="",a=0,c&&(clearTimeout(c),c=null),w?.preservePendingInputs||m(),n={...n,state:xr.Idle,abortController:void 0,roundStartedAt:null},f()},"abort"),reset:i(()=>{l=!0,g(),n.abortController?.abort(),o="",s="",a=0,c&&(clearTimeout(c),c=null),m(),n={...Zy,pendingInputs:Qy(t())},l=!1,f()},"reset"),isStreaming:i(()=>n.state===xr.Responding||n.state===xr.WaitingForConfirmation,"isStreaming"),subscribe:i(w=>(r.add(w),()=>{r.delete(w)}),"subscribe"),startThinking:i(()=>{g(),n={...n,isThinking:!0,thinkingCharCount:0,thinkingContent:""},f()},"startThinking"),appendThinkingChars:i(w=>{l||(a+=w,T())},"appendThinkingChars"),appendThinkingContent:i(w=>{l||(s+=w,T())},"appendThinkingContent"),stopThinking:i(()=>{g(),n={...n,isThinking:!1,thinkingCharCount:0},f()},"stopThinking"),clearThinkingContent:i(()=>{g(),n={...n,isThinking:!1,thinkingCharCount:0,thinkingContent:""},f()},"clearThinkingContent"),setCurrentTool:i(w=>{g(),n={...n,currentTool:w,toolInputCharCount:0,toolInputContent:""},f()},"setCurrentTool"),appendToolInputChars:i(w=>{n={...n,toolInputCharCount:n.toolInputCharCount+w},f()},"appendToolInputChars"),appendToolInputContent:i(w=>{n.toolInputContent.length<240&&(n={...n,toolInputContent:(n.toolInputContent+w).slice(0,240)},f())},"appendToolInputContent"),clearToolInputContent:i(()=>{n={...n,toolInputContent:""},f()},"clearToolInputContent"),getSignal:i(()=>n.abortController?.signal,"getSignal"),getFullResponse:i(()=>n.currentResponse+o,"getFullResponse"),getThinkingContent:i(()=>n.thinkingContent+s,"getThinkingContent"),startNewIteration:i(w=>{g(),n.thinkingContent||n.currentResponse?n={...n,thinkingContent:"",thinkingCharCount:0,currentResponse:"",isThinking:!1,currentTool:void 0,toolInputCharCount:0,toolInputContent:"",currentIteration:w}:n={...n,currentIteration:w},f()},"startNewIteration"),clearIterationHistory:i(()=>{g(),n={...n,iterationHistory:[],currentIteration:1,maxIter:Zy.maxIter,thinkingContent:"",thinkingCharCount:0,currentResponse:"",currentTool:void 0,toolInputCharCount:0,toolInputContent:""},f()},"clearIterationHistory"),setMaxIter:i(w=>{g(),n={...n,maxIter:w},f()},"setMaxIter"),startCompacting:i(()=>{g(),n={...n,isCompacting:!0},f()},"startCompacting"),stopCompacting:i(()=>{g(),n={...n,isCompacting:!1},f()},"stopCompacting"),addPendingInput:i(w=>{let C=w.trim();C&&(ex(t()).length>=5||(g(),Zn().enqueue({agentId:t(),priority:"user",mode:"prompt",content:C})))},"addPendingInput"),removeLastPendingInput:i(()=>{let w=ex(t()),C=w[w.length-1];C&&(g(),Zn().dequeue({agentId:t(),maxPriority:"user",mode:"prompt",id:C.id}))},"removeLastPendingInput"),shiftPendingInput:i(()=>(g(),Zn().dequeue({agentId:t(),maxPriority:"user",mode:"prompt",limit:1})[0]?.content),"shiftPendingInput"),clearPendingInputs:i(()=>{g(),m()},"clearPendingInputs"),consumePendingInputs:i(()=>(g(),m()),"consumePendingInputs"),dispose:i(()=>{h()},"dispose")}}i(Tm,"createStreamingManager");var KR=GR(null),zR=GR(null);function Iu({children:e,onStateChange:t,getPendingInputAgentId:n}){let r=jR(n);r.current=n;let o=jR(void 0);o.current||(o.current=Tm({getPendingInputAgentId:i(()=>r.current?.(),"getPendingInputAgentId")}));let s=o.current,[,a]=jB(pe=>pe+1,0);UR(()=>s.subscribe(we=>{a(),t?.(we)}),[s,t]),UR(()=>()=>{s.dispose()},[s]);let c=rt(()=>{s.startStreaming()},[]),l=rt(()=>{s.stopStreaming()},[]),u=rt(pe=>{s.appendResponse(pe)},[]),f=rt(()=>{s.clearResponse()},[]),p=rt(pe=>{s.setError(pe)},[]),h=rt(pe=>{s.abort(pe)},[]),m=rt(()=>{s.reset()},[]),g=rt(()=>{s.startThinking()},[]),T=rt(pe=>{s.appendThinkingChars(pe)},[]),w=rt(pe=>{s.appendThinkingContent(pe)},[]),C=rt(()=>{s.stopThinking()},[]),b=rt(()=>{s.clearThinkingContent()},[]),_=rt(pe=>{s.setCurrentTool(pe)},[]),M=rt(pe=>{s.appendToolInputChars(pe)},[]),E=rt(pe=>{s.appendToolInputContent(pe)},[]),I=rt(()=>{s.clearToolInputContent()},[]),W=rt(()=>s.getSignal(),[]),O=rt(()=>s.getFullResponse(),[]),F=rt(()=>s.getThinkingContent(),[]),Y=rt(pe=>{s.startNewIteration(pe)},[]),re=rt(()=>{s.clearIterationHistory()},[]),q=rt(pe=>{s.setMaxIter(pe)},[]),y=rt(()=>{s.startCompacting()},[]),L=rt(()=>{s.stopCompacting()},[]),te=rt(pe=>{s.addPendingInput(pe)},[]),j=rt(()=>{s.removeLastPendingInput()},[]),ae=rt(()=>s.shiftPendingInput(),[]),de=rt(()=>{s.clearPendingInputs()},[]),me=rt(()=>s.consumePendingInputs(),[]),ke={startStreaming:c,stopStreaming:l,appendResponse:u,clearResponse:f,setError:p,abort:h,reset:m,startThinking:g,appendThinkingChars:T,appendThinkingContent:w,stopThinking:C,clearThinkingContent:b,setCurrentTool:_,appendToolInputChars:M,appendToolInputContent:E,clearToolInputContent:I,getSignal:W,getFullResponse:O,getThinkingContent:F,startNewIteration:Y,clearIterationHistory:re,setMaxIter:q,startCompacting:y,stopCompacting:L,addPendingInput:te,removeLastPendingInput:j,shiftPendingInput:ae,clearPendingInputs:de,consumePendingInputs:me};return WR.createElement(KR.Provider,{value:s.getState()},WR.createElement(zR.Provider,{value:ke},e))}i(Iu,"StreamingProvider");function sc(){let e=VR(KR);if(!e)throw new Error("useStreamingState must be used within a StreamingProvider");return e}i(sc,"useStreamingState");function ac(){let e=VR(zR);if(!e)throw new Error("useStreamingActions must be used within a StreamingProvider");return e}i(ac,"useStreamingActions");function tx(){let e=sc(),t=ac(),n=e.state===xr.Responding||e.state===xr.WaitingForConfirmation;return{state:e,actions:t,isStreaming:n}}i(tx,"useStreaming");import{useCallback as GB,useRef as VB}from"react";var KB=500;function YR(e={}){let{onKey:t,onEsc:n,onCtrlC:r,enabled:o=!0}=e,s=VB(0),{exit:a}=jr(),c=GB(l=>{if(!o)return!1;if(l.name==="escape"){let u=Date.now(),f=u-s.current<KB;return s.current=u,f&&(l.name="escape-escape"),n?.(),t?.(l),!0}return l.ctrl&&l.name==="c"?(r?.(),t?.(l),!0):l.ctrl&&l.name==="d"?(a(),!0):(t?.(l),!1)},[o,a,r,n,t]);return Bn(c,{isActive:o}),{lastEscTime:s.current}}i(YR,"useKeypress");function XR(e){return{is:i((t,n)=>!(e.name!==t||n?.ctrl!==void 0&&e.ctrl!==n.ctrl||n?.shift!==void 0&&e.shift!==n.shift||n?.meta!==void 0&&e.meta!==n.meta),"is"),isCtrl:i(t=>e.ctrl&&e.name===t,"isCtrl"),isShift:i(t=>e.shift&&e.name===t,"isShift"),isArrow:i(()=>["up","down","left","right"].includes(e.name),"isArrow"),isChar:i(()=>e.sequence?.length===1&&!e.ctrl&&!e.meta,"isChar"),getChar:i(()=>e.sequence?.length===1?e.sequence:null,"getChar")}}i(XR,"createKeyMatcher");import{useCallback as qR,useSyncExternalStore as zB}from"react";function YB(e,t){return e.agentId===t&&e.priority==="user"&&e.mode==="prompt"}i(YB,"isQueuedPromptForAgent");var nx=null,Cm=new Map;function XB(e){let t=Zn().getSnapshot();t!==nx&&(nx=t,Cm.clear());let n=Cm.get(e);if(n!==void 0)return n;let r=Object.freeze(t.filter(o=>YB(o,e)));return Cm.set(e,r),r}i(XB,"getQueueSliceSnapshot");function rx(e){let t=qR(r=>Zn().subscribe(r),[]),n=qR(()=>XB(e),[e]);return zB(t,n,n)}i(rx,"useQueuedPrompts");function JR(e){return rx(e).map(n=>n.content)}i(JR,"useQueuedPromptContents");function QR(){nx=null,Cm.clear()}i(QR,"_resetQueuedPromptsCacheForTests");var cc="Runtime state: run active until this approval is resolved.";function Im(e,t){if(!t.confirmed)return{type:"reject",reason:"User rejected the tool call."};if(t.runtimeGrantKind===void 0)return{type:"allow_once"};let n=e.grantSuggestions?.find(r=>r.kind===t.runtimeGrantKind);return n?t.runtimeGrantKind==="session"?{type:"allow_session",suggestionId:n.id}:{type:"allow_always",suggestionId:n.id}:{type:"reject",reason:"Runtime grant suggestion expired."}}i(Im,"resolveReplRuntimePermissionDecision");function lc(e){let t=e.classifierModelEnv??e.classifierModel;return{engine:e.engine,...t!==void 0?{classifierModel:t}:{},...e.timeoutMs!==void 0?{timeoutMs:e.timeoutMs}:{},...e.speculativeWindowMs!==void 0?{speculativeWindowMs:e.speculativeWindowMs}:{}}}i(lc,"toReplRuntimeAutoModeSettings");async function uc(e){let t=e.existingArtifactLedger?.map(n=>({...n,metadata:n.metadata?{...n.metadata}:void 0}));return{messages:e.existingMessages??[],uiHistory:e.existingUiHistory?.map(n=>({...n})),lineage:e.existingLineage??void 0,artifactLedger:t,extensionState:e.existingExtensionState?structuredClone(e.existingExtensionState):void 0,extensionRecords:e.existingExtensionRecords?.map(n=>({...n})),extensionStateDirty:!1,extensionRecordsDirty:!1,sessionSnapshotDirty:!1,sessionId:e.sessionId??ps(),title:"",gitRoot:e.gitRoot,runtimeInfo:e.runtimeInfo,createdAt:new Date().toISOString(),lastAccessed:new Date().toISOString()}}i(uc,"createInteractiveContext");function ps(){return xC()}i(ps,"generateSessionId");function vr(e){e.lastAccessed=new Date().toISOString()}i(vr,"touchContext");async function dc(e){let t=await UC({userKodaxDir:RC(),projectRoot:e.projectRoot}),n;return{getGuardrail:i(()=>n||(n=BC({rules:t.merged,getToolProjection:i(o=>(Cl(o)??gg(o))?.toClassifierInput,"getToolProjection"),getToolSideEffect:i(o=>(Cl(o)??gg(o))?.sideEffect,"getToolSideEffect"),resolveProvider:i(o=>{try{return Ni(o)}catch{return}},"resolveProvider"),defaultProvider:e.getCurrentProviderName(),defaultModel:e.getCurrentModel()??"",getDefaultProvider:e.getCurrentProviderName,getDefaultModel:i(()=>e.getCurrentModel()??"","getDefaultModel"),askUser:e.askUser,allowOnClassifierFailure:i(o=>kI(o,e.projectRoot,e.executionCwd),"allowOnClassifierFailure"),workspaceShellSandboxAvailable:e.workspaceShellSandboxAvailable,requireWorkspaceShellSandbox:!0,admitWorkspaceSandboxCall:e.admitWorkspaceSandboxCall,log:e.log,onEngineChange:e.onEngineChange,sharedState:e.sharedState,projectRoot:e.projectRoot,executionCwd:e.executionCwd,trustProcessEnvironmentPathExpansion:e.trustProcessEnvironmentPathExpansion!==!1,extraCollectors:e.extraCollectors,extraAbsoluteDenyChecks:[EI],initialEngine:e.autoModeSettings.engine,timeoutMs:e.autoModeSettings.timeoutMs,userSettings:e.autoModeSettings.classifierModel,envVar:e.autoModeSettings.classifierModelEnv,speculativeWindowMs:e.autoModeSettings.speculativeWindowMs}),n),"getGuardrail"),rulesLoadResult:t}}i(dc,"bootstrapAutoMode");var ms=class{static{i(this,"MemorySessionStorage")}sessions=new Map;async save(t,n){let r=this.sessions.get(t);this.sessions.set(t,{...structuredClone(n),scope:n.scope??r?.scope??"user",uiHistory:n.uiHistory??r?.uiHistory,extensionState:n.extensionState??r?.extensionState,artifactLedger:n.artifactLedger??r?.artifactLedger,actorSnapshot:n.actorSnapshot??r?.actorSnapshot,extensionRecords:n.extensionRecords??r?.extensionRecords,tag:n.tag??r?.tag,lineage:qe(n.messages,n.lineage??r?.lineage)})}async load(t){return structuredClone(this.sessions.get(t)??null)}async getLineage(t){return structuredClone(this.sessions.get(t)?.lineage??null)}async loadFullLineage(t){return this.getLineage(t)}async setActiveEntry(t,n,r){let o=this.sessions.get(t);if(!o?.lineage)return null;let s=sa(o.lineage,n,r);if(!s)return null;let a={...structuredClone(o),messages:At(s),lineage:s};return this.sessions.set(t,a),structuredClone(a)}async setLabel(t,n,r){let o=this.sessions.get(t);if(!o?.lineage)return null;let s=aa(o.lineage,n,r);if(!s)return null;let a={...structuredClone(o),lineage:s};return this.sessions.set(t,a),structuredClone(a)}async fork(t,n,r){let o=this.sessions.get(t);if(!o?.lineage)return null;let s=mo(o.lineage,n);if(!s)return null;let a=r?.sessionId??await da(),c={messages:At(s),title:r?.title??o.title,gitRoot:o.gitRoot,tag:o.tag,uiHistory:o.uiHistory?o.uiHistory.map(l=>({...l})):void 0,extensionState:o.extensionState?structuredClone(o.extensionState):void 0,artifactLedger:o.artifactLedger?structuredClone(o.artifactLedger):void 0,extensionRecords:o.extensionRecords?structuredClone(o.extensionRecords):void 0,lineage:s};return this.sessions.set(a,c),{sessionId:a,data:structuredClone(c)}}async rewind(t,n){let r=this.sessions.get(t);if(!r?.lineage)return null;let o=n??la(r.lineage);if(!o)return null;let s=ua(r.lineage,o);if(!s)return null;let a={...r,messages:At(s),lineage:s};return this.sessions.set(t,a),structuredClone(a)}async list(t){return Array.from(this.sessions.entries()).filter(([,n])=>(n.scope??"user")==="user").map(([n,r])=>({id:n,title:r.title,msgCount:r.lineage?Hi(r.lineage):r.messages.length,...r.tag!==void 0?{tag:r.tag}:{}}))}async delete(t){this.sessions.delete(t)}async deleteAll(t){this.sessions.clear()}};function ZR(){return new ms}i(ZR,"createMemorySessionStorage");import*as ek from"child_process";import*as tk from"util";import vm from"chalk";var qB=tk.promisify(ek.exec),JB={maxBuffer:1024*1024,timeout:3e4,maxOutputLength:8e3,maxErrorLength:4e3};async function vu(e,t={}){let n={...JB,...t},r=e.trim(),o=LC(r);if(o)return o.startsWith("[Blocked]")&&(console.log(vm.yellow(`
64
+ `)}i(RR,"formatPendingInputsBudgetText");var gm=i(({pendingInputs:e})=>{let t=zy(e);if(t.length===0)return null;let n=ce("dark");return yu(A,{flexDirection:"column",children:[t.map(r=>yu(A,{children:[yu(R,{color:n.colors.hint,children:["\u23F3"," "]}),yu(R,{color:n.colors.dim,children:["[",r.index,"/",r.total,"] ",r.preview]})]},r.index)),_B(A,{children:yu(R,{color:n.colors.dim,children:[" ","\u2191 pull all into editor \xB7 Esc drops latest"]})})]})},"QueuedCommandsSurface");import{jsx as kR}from"react/jsx-runtime";function AB(e,t){switch(e){case"warning":return t.warning;case"accent":return t.accent;default:return t.dim}}i(AB,"resolveNotificationColor");var xu=i(({notifications:e})=>{let t=e.filter(r=>r.text.trim().length>0),n=ce("dark");return t.length===0?null:kR(A,{flexDirection:"column",paddingX:1,children:t.map(r=>kR(R,{color:AB(r.tone,n.colors),children:r.text},r.id))})},"NotificationsSurface");import{jsx as ER}from"react/jsx-runtime";var ym=i(({notices:e})=>{let t=e.filter(r=>r.trim().length>0);if(t.length===0)return null;let n=ce("dark");return ER(A,{flexDirection:"column",paddingX:1,children:t.map((r,o)=>ER(R,{color:n.colors.dim,children:r},`${r}-${o}`))})},"StatusNoticesSurface");import{jsxs as MR,jsx as LB}from"react/jsx-runtime";var Su=i(({text:e})=>{let t=e?.trim();if(!t)return null;let n=ce("dark");return MR(A,{paddingX:1,children:[MR(R,{color:n.colors.hint,children:["\u22EF"," "]}),LB(R,{color:n.colors.dim,children:t})]})},"StashNotice");import{jsx as fs,jsxs as PB}from"react/jsx-runtime";function _R({text:e,accent:t=!1,selected:n=!1}){let r=ce("dark");return fs(A,{marginRight:1,children:fs(R,{color:t?r.colors.accent:r.colors.primary,bold:n||t,children:`[ ${e} ]`})})}i(_R,"Pill");var wu=i(({items:e,overflowLabel:t,ctaHint:n,showSpinner:r=!1})=>{let o=e.filter(s=>s.label.trim().length>0);return o.length===0&&!t&&!n&&!r?null:PB(A,{flexDirection:"row",paddingX:1,children:[r?fs(A,{marginRight:1,children:fs(Fn,{})}):null,o.map(s=>fs(_R,{text:s.hint?`${s.label} (${s.hint})`:s.label,accent:s.accent,selected:s.selected},s.id)),t?fs(_R,{text:t}):null,n?fs(R,{dimColor:!0,children:n}):null]})},"BackgroundTaskBar");import{jsx as Tu,jsxs as FB}from"react/jsx-runtime";import $B from"string-width";var Yy=9,Xy=3,AR=160,OB={shouldRender:!1,activeCount:0,rows:[]};function LR(e,t=Yy){let n=$B(e);return n>=t?e:`${e}${" ".repeat(t-n)}`}i(LR,"padChildActivitySymbol");function qy(e){let t=e.replace(/\s+/gu," ").trim();return t.length<=AR?t:`${t.slice(0,AR-3)}...`}i(qy,"truncateChildActivityDetail");function xm(e){return!!(e?.liveOnly===!0&&(e.workflowCorrelation||e.childAgentId))}i(xm,"shouldRouteToChildActivity");function PR(e,t){return!!(e?.liveOnly===!0&&e.workflowCorrelation?.workflowRunId&&t&&e.workflowCorrelation.workflowRunId===t)}i(PR,"shouldRouteWorkflowLiveOnlyNotice");function $R(e){return!e.isTranscriptMode&&e.childActivityVisible&&(e.isLoading||e.hasWorkflowLiveSurface)}i($R,"shouldShowChildActivitySurface");function Jy(e){let t=e.childAgentId??e.workflowCorrelation?.childAgentId??"child",n=e.workflowCorrelation?.workflowRunId;return n?`${n}:${t}`:t}i(Jy,"childActivityId");function OR(e){return e.childAgentName??e.childAgentId??e.workflowCorrelation?.childAgentId??"child"}i(OR,"childActivityLabel");function NR(e){return e.workflowCorrelation?"workflow":"normal"}i(NR,"childActivitySource");function DR(e,t){let n=t?.path??t?.pattern??t?.command??t?.preview,r=typeof n=="string"&&n.trim().length>0?` ${n}`:"";return qy(`${e}${r}`)}i(DR,"toolActivityDetail");function BR(e,t){return e==="tool"&&["thinking","assistant","stream"].includes(t)}i(BR,"suppressesChurnOverToolAction");function NB(e){let t=Math.max(0,Math.floor(e/1e3)),n=t%60,r=Math.floor(t/60)%60,o=Math.floor(t/3600);return o>0?`${o}h${String(r).padStart(2,"0")}m`:r>0?`${r}m${String(n).padStart(2,"0")}s`:`${n}s`}i(NB,"formatChildActivityElapsed");function DB(e){switch(e){case"assistant":return"Assistant";case"thinking":return"Thinking";case"tool":return"Tool";case"progress":return"Progress";case"prompt":return"Prompt";default:return"Status"}}i(DB,"kindLabel");function BB(e,t){let n=e.label.trim()||"child",r=e.startedAt!==void 0?` \xB7 ${NB(t-e.startedAt)}`:"",o=e.detail.trim(),s=o.length>0?`: ${o}`:"";return`${n}${r} - ${DB(e.kind)}${s}`}i(BB,"rowText");function FR(e,t=Xy,n=Date.now()){let r=e.filter(u=>u.status==="running");if(r.length===0)return OB;let o=Math.max(1,Math.floor(t)),s=[],a=r.length>o&&o>1?o-1:o,c=r.slice(0,a);for(let u of c)s.push({kind:"activity",id:u.id,symbol:u.source==="workflow"?"agent":"child",symbolColor:"cyan",text:BB(u,n),isActive:!0});let l=r.length-c.length;return l>0&&s.length<o&&s.push({kind:"summary",id:"children-more",symbol:"more",symbolColor:"dim",text:`${l} more active`,isActive:!1}),{shouldRender:!0,activeCount:r.length,rows:s.slice(0,o)}}i(FR,"buildChildActivityViewModel");var HR=Yy;function HB(e){let t=ce("dark");switch(e){case"cyan":return t.colors.primary;case"green":return t.colors.success;default:return t.colors.dim}}i(HB,"resolveSymbolColor");var WB=i(({row:e})=>{let t=HB(e.symbolColor);return FB(A,{flexDirection:"row",children:[Tu(A,{width:HR,flexShrink:0,children:Tu(R,{color:t,bold:e.isActive,wrap:"truncate",children:LR(e.symbol,HR)})}),Tu(R,{color:e.kind==="summary"?ce("dark").colors.dim:void 0,bold:e.isActive,wrap:"truncate",children:e.text})]})},"ChildActivityRowView");function Sm(e){return!e.shouldRender||e.rows.length===0?0:e.rows.length}i(Sm,"measureChildActivitySurfaceRows");var wm=i(({viewModel:e})=>!e.shouldRender||e.rows.length===0?null:Tu(A,{flexDirection:"column",flexGrow:1,children:e.rows.map(t=>Tu(WB,{row:t},`${t.kind}-${t.id}`))}),"ChildActivitySurface");import WR,{createContext as GR,useContext as VR,useReducer as jB,useCallback as rt,useRef as jR,useEffect as UR}from"react";function UB(e,t){return e.agentId===t&&e.priority==="user"&&e.mode==="prompt"}i(UB,"isPendingPromptForAgent");function ex(e){return Zn().getSnapshot().filter(t=>UB(t,e))}i(ex,"getPendingPrompts");function Qy(e){return ex(e).map(t=>t.content)}i(Qy,"getPendingPromptContents");var Zy={state:xr.Idle,currentResponse:"",error:void 0,abortController:void 0,isThinking:!1,thinkingCharCount:0,thinkingContent:"",currentTool:void 0,toolInputCharCount:0,toolInputContent:"",iterationHistory:[],currentIteration:1,maxIter:200,isCompacting:!1,pendingInputs:[],roundStartedAt:null};function Tm(e={}){let t=i(()=>e.getPendingInputAgentId?.(),"getPendingInputAgentId"),n={...Zy,pendingInputs:Qy(t())},r=new Set,o="",s="",a=0,c=null,l=!1,u=80,f=i(()=>{for(let w of r)w(n)},"notify"),p=i(()=>{let w=Qy(t());if(w.length===n.pendingInputs.length){let C=!0;for(let b=0;b<w.length;b++)if(w[b]!==n.pendingInputs[b]){C=!1;break}if(C)return}n={...n,pendingInputs:w},f()},"syncReactStateFromQueue"),h=Zn().subscribe(()=>{p()}),m=i(()=>Zn().dequeue({agentId:t(),maxPriority:"user",mode:"prompt"}).map(C=>C.content),"drainOurSlice"),g=i(()=>{if(c&&(clearTimeout(c),c=null),o||s||a>0){let C=n.thinkingContent+s,b=s?C.length:n.thinkingCharCount+a;n={...n,currentResponse:n.currentResponse+o,thinkingContent:C,thinkingCharCount:b,...s||a>0?{isThinking:!0}:{}},o="",s="",a=0,f()}},"flushPendingUpdates"),T=i(()=>{c||(c=setTimeout(g,u))},"scheduleFlush");return{getState:i(()=>n,"getState"),setState:i(w=>{g(),n={...n,state:w},f()},"setState"),startStreaming:i(()=>{l=!1,o="",s="",a=0,c&&(clearTimeout(c),c=null),n={...n,state:xr.Responding,currentResponse:"",abortController:new AbortController,error:void 0,roundStartedAt:Date.now()},f()},"startStreaming"),stopStreaming:i(()=>{g(),n={...n,state:xr.Idle,abortController:void 0,roundStartedAt:null},f()},"stopStreaming"),appendResponse:i(w=>{l||(o+=w,T())},"appendResponse"),clearResponse:i(()=>{g(),n={...n,currentResponse:""},f()},"clearResponse"),setError:i(w=>{g(),n={...n,error:w,state:w?xr.Idle:n.state},f()},"setError"),abort:i(w=>{l=!0,g(),n.abortController?.abort(),o="",s="",a=0,c&&(clearTimeout(c),c=null),w?.preservePendingInputs||m(),n={...n,state:xr.Idle,abortController:void 0,roundStartedAt:null},f()},"abort"),reset:i(()=>{l=!0,g(),n.abortController?.abort(),o="",s="",a=0,c&&(clearTimeout(c),c=null),m(),n={...Zy,pendingInputs:Qy(t())},l=!1,f()},"reset"),isStreaming:i(()=>n.state===xr.Responding||n.state===xr.WaitingForConfirmation,"isStreaming"),subscribe:i(w=>(r.add(w),()=>{r.delete(w)}),"subscribe"),startThinking:i(()=>{g(),n={...n,isThinking:!0,thinkingCharCount:0,thinkingContent:""},f()},"startThinking"),appendThinkingChars:i(w=>{l||(a+=w,T())},"appendThinkingChars"),appendThinkingContent:i(w=>{l||(s+=w,T())},"appendThinkingContent"),stopThinking:i(()=>{g(),n={...n,isThinking:!1,thinkingCharCount:0},f()},"stopThinking"),clearThinkingContent:i(()=>{g(),n={...n,isThinking:!1,thinkingCharCount:0,thinkingContent:""},f()},"clearThinkingContent"),setCurrentTool:i(w=>{g(),n={...n,currentTool:w,toolInputCharCount:0,toolInputContent:""},f()},"setCurrentTool"),appendToolInputChars:i(w=>{n={...n,toolInputCharCount:n.toolInputCharCount+w},f()},"appendToolInputChars"),appendToolInputContent:i(w=>{n.toolInputContent.length<240&&(n={...n,toolInputContent:(n.toolInputContent+w).slice(0,240)},f())},"appendToolInputContent"),clearToolInputContent:i(()=>{n={...n,toolInputContent:""},f()},"clearToolInputContent"),getSignal:i(()=>n.abortController?.signal,"getSignal"),getFullResponse:i(()=>n.currentResponse+o,"getFullResponse"),getThinkingContent:i(()=>n.thinkingContent+s,"getThinkingContent"),startNewIteration:i(w=>{g(),n.thinkingContent||n.currentResponse?n={...n,thinkingContent:"",thinkingCharCount:0,currentResponse:"",isThinking:!1,currentTool:void 0,toolInputCharCount:0,toolInputContent:"",currentIteration:w}:n={...n,currentIteration:w},f()},"startNewIteration"),clearIterationHistory:i(()=>{g(),n={...n,iterationHistory:[],currentIteration:1,maxIter:Zy.maxIter,thinkingContent:"",thinkingCharCount:0,currentResponse:"",currentTool:void 0,toolInputCharCount:0,toolInputContent:""},f()},"clearIterationHistory"),setMaxIter:i(w=>{g(),n={...n,maxIter:w},f()},"setMaxIter"),startCompacting:i(()=>{g(),n={...n,isCompacting:!0},f()},"startCompacting"),stopCompacting:i(()=>{g(),n={...n,isCompacting:!1},f()},"stopCompacting"),addPendingInput:i(w=>{let C=w.trim();C&&(ex(t()).length>=5||(g(),Zn().enqueue({agentId:t(),priority:"user",mode:"prompt",content:C})))},"addPendingInput"),removeLastPendingInput:i(()=>{let w=ex(t()),C=w[w.length-1];C&&(g(),Zn().dequeue({agentId:t(),maxPriority:"user",mode:"prompt",id:C.id}))},"removeLastPendingInput"),shiftPendingInput:i(()=>(g(),Zn().dequeue({agentId:t(),maxPriority:"user",mode:"prompt",limit:1})[0]?.content),"shiftPendingInput"),clearPendingInputs:i(()=>{g(),m()},"clearPendingInputs"),consumePendingInputs:i(()=>(g(),m()),"consumePendingInputs"),dispose:i(()=>{h()},"dispose")}}i(Tm,"createStreamingManager");var KR=GR(null),zR=GR(null);function Iu({children:e,onStateChange:t,getPendingInputAgentId:n}){let r=jR(n);r.current=n;let o=jR(void 0);o.current||(o.current=Tm({getPendingInputAgentId:i(()=>r.current?.(),"getPendingInputAgentId")}));let s=o.current,[,a]=jB(pe=>pe+1,0);UR(()=>s.subscribe(we=>{a(),t?.(we)}),[s,t]),UR(()=>()=>{s.dispose()},[s]);let c=rt(()=>{s.startStreaming()},[]),l=rt(()=>{s.stopStreaming()},[]),u=rt(pe=>{s.appendResponse(pe)},[]),f=rt(()=>{s.clearResponse()},[]),p=rt(pe=>{s.setError(pe)},[]),h=rt(pe=>{s.abort(pe)},[]),m=rt(()=>{s.reset()},[]),g=rt(()=>{s.startThinking()},[]),T=rt(pe=>{s.appendThinkingChars(pe)},[]),w=rt(pe=>{s.appendThinkingContent(pe)},[]),C=rt(()=>{s.stopThinking()},[]),b=rt(()=>{s.clearThinkingContent()},[]),_=rt(pe=>{s.setCurrentTool(pe)},[]),M=rt(pe=>{s.appendToolInputChars(pe)},[]),E=rt(pe=>{s.appendToolInputContent(pe)},[]),I=rt(()=>{s.clearToolInputContent()},[]),W=rt(()=>s.getSignal(),[]),O=rt(()=>s.getFullResponse(),[]),F=rt(()=>s.getThinkingContent(),[]),Y=rt(pe=>{s.startNewIteration(pe)},[]),re=rt(()=>{s.clearIterationHistory()},[]),q=rt(pe=>{s.setMaxIter(pe)},[]),y=rt(()=>{s.startCompacting()},[]),L=rt(()=>{s.stopCompacting()},[]),te=rt(pe=>{s.addPendingInput(pe)},[]),j=rt(()=>{s.removeLastPendingInput()},[]),ae=rt(()=>s.shiftPendingInput(),[]),de=rt(()=>{s.clearPendingInputs()},[]),me=rt(()=>s.consumePendingInputs(),[]),ke={startStreaming:c,stopStreaming:l,appendResponse:u,clearResponse:f,setError:p,abort:h,reset:m,startThinking:g,appendThinkingChars:T,appendThinkingContent:w,stopThinking:C,clearThinkingContent:b,setCurrentTool:_,appendToolInputChars:M,appendToolInputContent:E,clearToolInputContent:I,getSignal:W,getFullResponse:O,getThinkingContent:F,startNewIteration:Y,clearIterationHistory:re,setMaxIter:q,startCompacting:y,stopCompacting:L,addPendingInput:te,removeLastPendingInput:j,shiftPendingInput:ae,clearPendingInputs:de,consumePendingInputs:me};return WR.createElement(KR.Provider,{value:s.getState()},WR.createElement(zR.Provider,{value:ke},e))}i(Iu,"StreamingProvider");function sc(){let e=VR(KR);if(!e)throw new Error("useStreamingState must be used within a StreamingProvider");return e}i(sc,"useStreamingState");function ac(){let e=VR(zR);if(!e)throw new Error("useStreamingActions must be used within a StreamingProvider");return e}i(ac,"useStreamingActions");function tx(){let e=sc(),t=ac(),n=e.state===xr.Responding||e.state===xr.WaitingForConfirmation;return{state:e,actions:t,isStreaming:n}}i(tx,"useStreaming");import{useCallback as GB,useRef as VB}from"react";var KB=500;function YR(e={}){let{onKey:t,onEsc:n,onCtrlC:r,enabled:o=!0}=e,s=VB(0),{exit:a}=jr(),c=GB(l=>{if(!o)return!1;if(l.name==="escape"){let u=Date.now(),f=u-s.current<KB;return s.current=u,f&&(l.name="escape-escape"),n?.(),t?.(l),!0}return l.ctrl&&l.name==="c"?(r?.(),t?.(l),!0):l.ctrl&&l.name==="d"?(a(),!0):(t?.(l),!1)},[o,a,r,n,t]);return Bn(c,{isActive:o}),{lastEscTime:s.current}}i(YR,"useKeypress");function XR(e){return{is:i((t,n)=>!(e.name!==t||n?.ctrl!==void 0&&e.ctrl!==n.ctrl||n?.shift!==void 0&&e.shift!==n.shift||n?.meta!==void 0&&e.meta!==n.meta),"is"),isCtrl:i(t=>e.ctrl&&e.name===t,"isCtrl"),isShift:i(t=>e.shift&&e.name===t,"isShift"),isArrow:i(()=>["up","down","left","right"].includes(e.name),"isArrow"),isChar:i(()=>e.sequence?.length===1&&!e.ctrl&&!e.meta,"isChar"),getChar:i(()=>e.sequence?.length===1?e.sequence:null,"getChar")}}i(XR,"createKeyMatcher");import{useCallback as qR,useSyncExternalStore as zB}from"react";function YB(e,t){return e.agentId===t&&e.priority==="user"&&e.mode==="prompt"}i(YB,"isQueuedPromptForAgent");var nx=null,Cm=new Map;function XB(e){let t=Zn().getSnapshot();t!==nx&&(nx=t,Cm.clear());let n=Cm.get(e);if(n!==void 0)return n;let r=Object.freeze(t.filter(o=>YB(o,e)));return Cm.set(e,r),r}i(XB,"getQueueSliceSnapshot");function rx(e){let t=qR(r=>Zn().subscribe(r),[]),n=qR(()=>XB(e),[e]);return zB(t,n,n)}i(rx,"useQueuedPrompts");function JR(e){return rx(e).map(n=>n.content)}i(JR,"useQueuedPromptContents");function QR(){nx=null,Cm.clear()}i(QR,"_resetQueuedPromptsCacheForTests");var cc="Runtime state: run active until this approval is resolved.";function Im(e,t){if(!t.confirmed)return{type:"reject",reason:"User rejected the tool call."};if(t.runtimeGrantKind===void 0)return{type:"allow_once"};let n=e.grantSuggestions?.find(r=>r.kind===t.runtimeGrantKind);return n?t.runtimeGrantKind==="session"?{type:"allow_session",suggestionId:n.id}:{type:"allow_always",suggestionId:n.id}:{type:"reject",reason:"Runtime grant suggestion expired."}}i(Im,"resolveReplRuntimePermissionDecision");function lc(e){let t=e.classifierModelEnv??e.classifierModel;return{engine:e.engine,...t!==void 0?{classifierModel:t}:{},...e.timeoutMs!==void 0?{timeoutMs:e.timeoutMs}:{},...e.speculativeWindowMs!==void 0?{speculativeWindowMs:e.speculativeWindowMs}:{}}}i(lc,"toReplRuntimeAutoModeSettings");async function uc(e){let t=e.existingArtifactLedger?.map(n=>({...n,metadata:n.metadata?{...n.metadata}:void 0}));return{messages:e.existingMessages??[],uiHistory:e.existingUiHistory?.map(n=>({...n})),lineage:e.existingLineage??void 0,artifactLedger:t,extensionState:e.existingExtensionState?structuredClone(e.existingExtensionState):void 0,extensionRecords:e.existingExtensionRecords?.map(n=>({...n})),extensionStateDirty:!1,extensionRecordsDirty:!1,sessionSnapshotDirty:!1,sessionId:e.sessionId??ps(),title:"",gitRoot:e.gitRoot,runtimeInfo:e.runtimeInfo,createdAt:new Date().toISOString(),lastAccessed:new Date().toISOString()}}i(uc,"createInteractiveContext");function ps(){return xC()}i(ps,"generateSessionId");function vr(e){e.lastAccessed=new Date().toISOString()}i(vr,"touchContext");async function dc(e){let t=await UC({userKodaxDir:RC(),projectRoot:e.projectRoot}),n;return{getGuardrail:i(()=>n||(n=BC({rules:t.merged,getToolProjection:i(o=>(Cl(o)??gg(o))?.toClassifierInput,"getToolProjection"),getToolSideEffect:i(o=>(Cl(o)??gg(o))?.sideEffect,"getToolSideEffect"),resolveProvider:i(o=>{try{return Ni(o)}catch{return}},"resolveProvider"),defaultProvider:e.getCurrentProviderName(),defaultModel:e.getCurrentModel()??"",getDefaultProvider:e.getCurrentProviderName,getDefaultModel:i(()=>e.getCurrentModel()??"","getDefaultModel"),askUser:e.askUser,allowOnClassifierFailure:i(o=>kI(o,e.projectRoot,e.executionCwd),"allowOnClassifierFailure"),admitWorkspaceSandboxCall:e.admitWorkspaceSandboxCall,log:e.log,onEngineChange:e.onEngineChange,sharedState:e.sharedState,projectRoot:e.projectRoot,executionCwd:e.executionCwd,trustProcessEnvironmentPathExpansion:e.trustProcessEnvironmentPathExpansion!==!1,extraCollectors:e.extraCollectors,extraAbsoluteDenyChecks:[EI],initialEngine:e.autoModeSettings.engine,timeoutMs:e.autoModeSettings.timeoutMs,userSettings:e.autoModeSettings.classifierModel,envVar:e.autoModeSettings.classifierModelEnv,speculativeWindowMs:e.autoModeSettings.speculativeWindowMs}),n),"getGuardrail"),rulesLoadResult:t}}i(dc,"bootstrapAutoMode");var ms=class{static{i(this,"MemorySessionStorage")}sessions=new Map;async save(t,n){let r=this.sessions.get(t);this.sessions.set(t,{...structuredClone(n),scope:n.scope??r?.scope??"user",uiHistory:n.uiHistory??r?.uiHistory,extensionState:n.extensionState??r?.extensionState,artifactLedger:n.artifactLedger??r?.artifactLedger,actorSnapshot:n.actorSnapshot??r?.actorSnapshot,extensionRecords:n.extensionRecords??r?.extensionRecords,tag:n.tag??r?.tag,lineage:qe(n.messages,n.lineage??r?.lineage)})}async load(t){return structuredClone(this.sessions.get(t)??null)}async getLineage(t){return structuredClone(this.sessions.get(t)?.lineage??null)}async loadFullLineage(t){return this.getLineage(t)}async setActiveEntry(t,n,r){let o=this.sessions.get(t);if(!o?.lineage)return null;let s=sa(o.lineage,n,r);if(!s)return null;let a={...structuredClone(o),messages:At(s),lineage:s};return this.sessions.set(t,a),structuredClone(a)}async setLabel(t,n,r){let o=this.sessions.get(t);if(!o?.lineage)return null;let s=aa(o.lineage,n,r);if(!s)return null;let a={...structuredClone(o),lineage:s};return this.sessions.set(t,a),structuredClone(a)}async fork(t,n,r){let o=this.sessions.get(t);if(!o?.lineage)return null;let s=mo(o.lineage,n);if(!s)return null;let a=r?.sessionId??await da(),c={messages:At(s),title:r?.title??o.title,gitRoot:o.gitRoot,tag:o.tag,uiHistory:o.uiHistory?o.uiHistory.map(l=>({...l})):void 0,extensionState:o.extensionState?structuredClone(o.extensionState):void 0,artifactLedger:o.artifactLedger?structuredClone(o.artifactLedger):void 0,extensionRecords:o.extensionRecords?structuredClone(o.extensionRecords):void 0,lineage:s};return this.sessions.set(a,c),{sessionId:a,data:structuredClone(c)}}async rewind(t,n){let r=this.sessions.get(t);if(!r?.lineage)return null;let o=n??la(r.lineage);if(!o)return null;let s=ua(r.lineage,o);if(!s)return null;let a={...r,messages:At(s),lineage:s};return this.sessions.set(t,a),structuredClone(a)}async list(t){return Array.from(this.sessions.entries()).filter(([,n])=>(n.scope??"user")==="user").map(([n,r])=>({id:n,title:r.title,msgCount:r.lineage?Hi(r.lineage):r.messages.length,...r.tag!==void 0?{tag:r.tag}:{}}))}async delete(t){this.sessions.delete(t)}async deleteAll(t){this.sessions.clear()}};function ZR(){return new ms}i(ZR,"createMemorySessionStorage");import*as ek from"child_process";import*as tk from"util";import vm from"chalk";var qB=tk.promisify(ek.exec),JB={maxBuffer:1024*1024,timeout:3e4,maxOutputLength:8e3,maxErrorLength:4e3};async function vu(e,t={}){let n={...JB,...t},r=e.trim(),o=LC(r);if(o)return o.startsWith("[Blocked]")&&(console.log(vm.yellow(`
65
65
  ${o}`)),console.log()),o;try{console.log(vm.dim(`
66
66
  [Executing: ${r}]`));let{stdout:s,stderr:a}=await qB(r,{cwd:n.cwd,maxBuffer:n.maxBuffer,timeout:n.timeout,windowsHide:!0}),c="";return s&&(c+=s),a&&(c+=(c?`
67
67
  `:"")+`[stderr] ${a}`),c.length>n.maxOutputLength&&(c=c.slice(0,n.maxOutputLength)+`
@@ -139,7 +139,7 @@ $ npm install --save-dev react-devtools-core
139
139
  [Interrupted]`}),r}i(y2,"buildInterruptedPersistenceItems");function tS({thinking:e,response:t,toolCalls:n,toolNames:r}){let o=[],s=e?.trim()??"",a=t?.trim()??"",c=n&&n.length>0?[...n]:[],l=r&&r.length>0?[...r]:[];return s&&o.push({type:"thinking",text:s}),c.length>0?o.push({type:"tool_group",tools:c}):!s&&!a&&l.length>0&&o.push({type:"info",icon:"*",text:`Tools: ${l.join(", ")}`}),a&&o.push({type:"assistant",text:a}),o}i(tS,"buildRoundHistoryItems");var x2=20,S2="Session ended before the tool completed.";function w2(e){switch(e.status){case V.Success:return{status:"success"};case V.Error:return{status:"error"};case V.Cancelled:return{status:"cancelled"};case V.AwaitingApproval:case V.Scheduled:case V.Validating:case V.Executing:return{status:"cancelled",error:S2};default:return e.status}}i(w2,"toPersistedToolStatus");function T2(e){if(!e.id||!e.name)return;let t=w2(e),n=t.status==="success"?Sg(e.output):void 0,r=t.status==="error"||t.status==="cancelled"?xg(e.error??Sg(e.output)??t.error??""):void 0,o=LI(e.input);return{id:e.id,name:e.name,status:t.status,...o?{input:o}:{},...typeof e.preview=="string"&&e.preview.trim().length>0?{preview:xg(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}:{}}}i(T2,"toPersistedToolCall");function C2(e){let t=e.tools.slice(0,x2).map(T2).filter(r=>!!r),n=nS(e);return t.length>0?{type:"tool_group",tools:t,...n===void 0?{}:{timestamp:n}}:void 0}i(C2,"toPersistedToolGroup");function nS(e){return e.timestamp!==void 0&&Number.isFinite(e.timestamp)&&e.timestamp>=0?e.timestamp:void 0}i(nS,"persistedHistoryTimestamp");function y_(e){if(e.type==="tool_group")return C2(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=nS(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,o=nS(e);return{type:e.type,text:t,...o===void 0?{}:{timestamp:o},...n?{icon:n}:{},...r?{compactText:r}:{}}}i(y_,"toPersistedUiHistoryItem");var p_=process.env.KODAX_TRANSCRIPT_HARNESS_MARKERS==="1",I2=process.env.KODAX_SCROLL_OVERSCAN==="1"?80:void 0;function m_(e){return Kr(e.map(t=>y_(t)).filter(t=>!!t))}i(m_,"serializeUiHistorySnapshot");function v2(e){return e.map(t=>y_(t)).filter(t=>!!t)}i(v2,"serializeCreatableHistoryItems");function Ym(e,t){return t.length===0?Kr(e):Kr([...e,...v2(t)])}i(Ym,"appendPersistedUiHistorySnapshot");function Ou(e,t,n){console.log((e==="block"?ht.red:ht.yellow)(t)),n.forEach(r=>console.log(ht.dim(r)))}i(Ou,"logSessionTransitionGuard");var Zx=i(({config:e,sessionId:t,workingDir:n,compactionInfo:r})=>{let o=ce("dark"),s=e.model??Or(e.provider)??e.provider,a=Vo({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?lu(r.contextWindow,r.triggerPercent,r.triggerTokens):void 0;return En(A,{flexDirection:"column",marginBottom:1,children:[dx.map((u,f)=>fe(R,{color:o.colors.primary,children:u},f)),En(A,{children:[fe(R,{color:o.colors.primary,children:" \u258E "}),fe(R,{color:o.colors.primary,children:"AI Coding Agent \xB7 Minimalist & Intelligent"})]}),En(A,{children:[fe(R,{color:o.colors.success,children:" \u258E "}),En(R,{bold:!0,color:o.colors.text,children:["v",ji]}),fe(R,{dimColor:!0,children:" \xB7 "}),En(R,{color:o.colors.success,children:[e.provider,"/",s]}),fe(R,{dimColor:!0,children:` \xB7 effort:${a}`}),fe(R,{dimColor:!0,children:" \xB7 "}),fe(R,{color:o.colors.primary,children:e.agentMode.toUpperCase()}),fe(R,{dimColor:!0,children:" / "}),fe(R,{color:o.colors.accent,children:e.permissionMode})]}),r&&En(A,{children:[fe(R,{color:o.colors.accent,children:" \u258E "}),fe(R,{color:o.colors.text,children:`ctx ${c}k \xB7 compaction `}),fe(R,{color:r.enabled?o.colors.success:o.colors.text,children:r.enabled?"on":"off"}),fe(R,{color:o.colors.text,children:` \xB7 ${l}`})]}),En(A,{children:[fe(R,{color:o.colors.secondary,children:" \u258E "}),fe(R,{color:o.colors.text,children:"session "}),fe(R,{color:o.colors.primary,children:t}),fe(R,{color:o.colors.text,children:" \xB7 "}),fe(R,{color:o.colors.text,children:n})]})]})},"Banner");function b2(e){let t=e.config.model??Or(e.config.provider)??e.config.provider,n=Vo({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,o=e.compactionInfo?lu(e.compactionInfo.contextWindow,e.compactionInfo.triggerPercent,e.compactionInfo.triggerTokens):void 0,s=" \u258E AI Coding Agent \xB7 Minimalist & Intelligent",a=` \u258E v${ji} \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 ${o}`:void 0,l=` \u258E session ${e.sessionId} \xB7 ${e.workingDir}`,u=[],f=i(h=>{let m=Sn(h.length>0?h.split(`
140
140
  `):[""],Math.max(1,e.terminalWidth),0,0);return m.visualLines.length>0?m.visualLines:[""]},"wrapBannerLine"),p=i((h,m,g)=>{f(m).forEach((T,w)=>{u.push({key:`${h}-${w}`,text:T,...g})})},"pushLineRows");return dx.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}}i(b2,"buildBannerTranscriptSection");function h_(e,t){return t?{...e,sections:[t,...e.sections],rows:[...t.rows,...e.rows]}:e}i(h_,"prependTranscriptSection");var R2=process.env.KODAX_INLINE_LEDGER!=="0";function g_(e,t){process.env.KODAX_INLINE_LEDGER_DEBUG==="1"&&mt({source:"repl:inline-ledger",level:"debug",message:`${e}; rebuilding on next change.`,...t!==void 0?{detail:t}:{}})}i(g_,"reportInlineLedgerFailure");var k2=i(({options:e,config:t,context:n,startupRuntimeInfo:r,storage:o,autoModeSettings:s,rendererMode:a,fullscreenPolicy:c,onExit:l,compactionInfo:u,autoModeBootstrap:f,setAutoModeAskUser:p,setAutoModeEngineChange:h,setCurrentConfigRef:m,teamModeHandle:g})=>{let{exit:T}=jr(),{stdout:w}=Wr(),C=w.rows??24,{stdin:b,setRawMode:_,isRawModeSupported:M}=Kl(),E=Va(),{history:I}=nc(),W=s_.useRef(null),O=s_.useRef(HC()),{addHistoryItem:F,addHistoryItems:Y,clearHistory:re,setSessionId:q}=rc(),y=Se(I),L=Se(m_(I));Be(()=>{y.current=I,L.current=m_(I)},[I]),Be(()=>{Zk()},[]),Be(()=>{XI()},[]);let te=w.columns||80,j=sc(),ae=Se(j);Be(()=>{ae.current=j},[j]);let{startStreaming:de,stopStreaming:me,abort:ke,startThinking:pe,appendThinkingChars:we,appendThinkingContent:$e,stopThinking:Q,clearThinkingContent:se,setCurrentTool:Ce,appendToolInputChars:tt,appendToolInputContent:Tt,clearToolInputContent:Ke,clearResponse:Ve,appendResponse:he,getSignal:Re,getFullResponse:G,getThinkingContent:Fe,startNewIteration:yt,clearIterationHistory:jt,startCompacting:Ye,stopCompacting:Mt,setMaxIter:qt,addPendingInput:Vn,removeLastPendingInput:fn,shiftPendingInput:P,consumePendingInputs:U}=ac(),[H,Z]=je(!1),[N,Ae]=je(t),ve=xe(()=>Ui({provider:N.provider,model:N.model,effort:N.effort,effortOverride:N.effortOverride,permissionMode:N.permissionMode,planModeEffort:N.planModeEffort,thinking:N.thinking,reasoningMode:N.reasoningMode}),[N.provider,N.model,N.effort,N.effortOverride,N.permissionMode,N.planModeEffort,N.thinking,N.reasoningMode]),Ee=ve.configuredEffort,_t=ve.runtimeEffort,Ut=xe(()=>({...N,effort:Ee}),[N,Ee]),pn=xe(()=>DM(u,{provider:N.provider,model:N.model},Ni),[u,N.provider,N.model]),[eo,Nt]=je(!0),[cr,Sw]=je(!0),[ed,td]=je(0),[xh,Nc]=je(!1),[ww,Tw]=je(void 0),[Cw,Sh]=je([]),[Iw,lr]=je(null),Dc=Se(!1),rP=xe(()=>qo(),[]),Bc=Se(null),nd=Se(null),wh=Se(Promise.resolve()),rd=Se(null),bi=Se({requested:!1,uiHistoryOverride:void 0}),_s=Se(null),Fc=Se(!1),Hc=Se(null);Be(()=>{let d=e.learning;if(!d)return;let x=!0,S,v=i(async()=>{let D=await d.getSnapshot();return x&&Tw(B=>B!==void 0&&B.revision>D.revision?B:D),D},"refresh"),k=i(D=>{mt({source:"repl:learning",level:"warn",message:"Failed to refresh the Learning Center snapshot.",detail:D instanceof Error?D.message:String(D)})},"reportRefreshFailure"),$=i(D=>{if(x){if(D.kind==="ready"||D.kind==="activated"||D.kind==="attention"){let B=D.kind==="ready"?"is ready for review":D.kind==="activated"?"became active":"requires attention";Sh(ee=>[{id:D.eventId,text:`A learned ${D.carrier} ${B}: ${D.displayName} [/learn]`,tone:D.kind==="activated"?"accent":"warning"},...ee.filter(oe=>oe.id!==D.eventId)].slice(0,2))}v().catch(k)}},"onEvent");return v().then(D=>{if(!x)return;let B=Pf(D);if(B){let ee=D.attention>0||D.ready>0?"warning":"accent";Sh(oe=>[{id:"learning-recovery",text:B,tone:ee},...oe.filter(Ue=>Ue.id!=="learning-recovery")].slice(0,2))}S=d.subscribe($,{afterRevision:D.revision})}).catch(k),()=>{x=!1,S?.close()}},[e.learning]);let[Wc,od]=je(!0),[Th,id]=je(""),[ze,Rr]=je(()=>iE(rP,{rendererMode:a})),[Gt,Ch]=je(!1),[oP,iP]=je(0),{scrollRef:sP,scrollOffset:ur,sticky:Ih,setScrollOffset:aP,handleScrollTopChange:cP,handleStickyChange:lP,scrollTo:sd,scrollBy:ad,scrollToBottom:cd}=IM(),vh=Se(null),ld=Se(null),jc=Se([]),ud=Se([]),As=Se(null),dr=Se(null),vw=Se({time:0,row:-1,column:-1,count:0}),[dd,bh]=je(void 0),[to,Rh]=je(void 0),[Ls,bw]=je(void 0),[_n,uP]=je(()=>new Set),[kh,Rw]=je(null),[sn,kw]=je(null),[J,fd]=je(null),[Ew,Ps]=je(null),[Eh,Mw]=je(null),Uc=Se(null),Gc=X(d=>{Uc.current=d,Mw(d)},[]),Vc=X(d=>{let x=d(Uc.current);Uc.current=x,Mw(x)},[]),Kc=X((d,x)=>{let S=Uc.current;return S?.status!=="running"||!PR(d,S.runId)?!1:(Gc({...S,message:x}),!0)},[Gc]),Mh=X(d=>{if(d.status==="running"){Gc({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}Vc(x=>x?.runId===d.runId?null:x)},[Gc,Vc]),dP=X(d=>{let x=d.type==="workflow_updated"?d.message:void 0,S=El(d.snapshot.goal,d.snapshot.workflowName,d.snapshot.displayName,d.snapshot.latestMessage,x);Mh(HI(d.snapshot,x===void 0?{locale:S}:{locale:S,message:x}))},[Mh]),[pd,no]=je([]),$s=xe(()=>{for(let d of pd)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}},[pd]),[GG,zc]=je([]),[Yc,fP]=je([]),[md,Rt]=je(void 0),[Ri,Xc]=je(void 0),pt=Se(null),hd=Se(null),ki=Se([]),Os=Se([]),mn=Se([]),gd=Se(!1),_h=Se(new Set),st=Se({}),Ct=Se({activeToolGroupTools:[]}),_w=Se(0),yd=Se({itemId:void 0,kind:"thinking",pendingText:""}),fr=Se(null),pP=80,mP=20,hP=Se(null),xd=xe(()=>[...I,...Yc],[I,Yc]),Ah=xe(()=>{let d=G0(xd,hP);return d===0?xd:xd.slice(d)},[xd]),Sd=xe(()=>V0(Ah,mP),[Ah]),Ns=Ah,an=Se(null),kr=Se(null),Er=Se([]),cn=Se([]),[Ei,gP]=je([]),ro=Se([]),[Lh,yP]=je([]),qc=Se([]),Kn=X(d=>{ro.current=d,gP(d)},[]),Ds=X(d=>{qc.current=d,yP(d)},[]),Ph=X(()=>{Ds([])},[Ds]),Aw=X(d=>{if(!xm(d))return!1;let x=Jy(d),S=qc.current.filter(v=>v.id!==x);return S.length===qc.current.length||Ds(S),!0},[Ds]),zn=X((d,x,S,v)=>{if(!xm(d))return!1;let k=Jy(d),$=qc.current.find(Ge=>Ge.id===k);if(v?.skipIfExisting&&$?.kind===x||BR($?.kind,x))return!0;let D=v?.append&&$?.kind===x?`${$.detail}${S}`:S||$?.detail||"running",B={id:k,label:OR(d),source:NR(d),status:"running",kind:x,detail:qy(D),startedAt:$?.startedAt??Date.now()},ee=qc.current,oe=ee.findIndex(Ge=>Ge.id===k),Ue=oe>=0?ee.map((Ge,tn)=>tn===oe?B:Ge):[...ee,B].slice(0,d2);return Ds(Ue),!0},[Ds]),Lw=X(d=>{ki.current=d,zc(d)},[]),Bs=X(d=>{mn.current=d,fP(d)},[]),Pw=X(d=>{let x=d([...mn.current]);Bs(x)},[Bs]),$w=X(d=>{d.length!==0&&Bs([...mn.current,...d])},[Bs]),wd=X(d=>{let x=Ct.current,S=x.activeToolGroupTools.some(v=>v.status===V.Executing);Ct.current={...d?.clearOwner?{}:{workerId:x.workerId,workerTitle:x.workerTitle},...S?{activeToolGroupItemId:x.activeToolGroupItemId,activeToolGroupTools:x.activeToolGroupTools}:{activeToolGroupTools:[]}},d?.clearOwner&&(st.current={})},[]),Td=X(d=>{for(let x of d)x.type==="user"&&typeof x.id=="string"&&_h.current.add(x.id)},[]),Jc=X(()=>{yd.current={itemId:void 0,kind:"thinking",pendingText:""},fr.current&&(clearTimeout(fr.current),fr.current=null);let d=Uy(mn.current,_h.current);if(d.length>0){for(let x of d)_h.current.add(x.id);_s.current?.(d.map(x=>yi(x)))}wd({clearOwner:!0}),Bs([])},[wd,Bs]),Cd=X(d=>(_w.current+=1,`managed-foreground-${d}-${_w.current}`),[]),Jt=X(d=>($w([d]),d.id),[$w]),An=X((d,x)=>{st.current.workerId?Jt({id:`${x}-${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()}):F(d)},[F,Jt]),Ow=X((d,x)=>{let S=Date.now();st.current.workerId?Jt({id:`${x}-${S}-${Math.random().toString(36).slice(2,7)}`,type:"sidecar",text:d.text,...d.verdict?{verdict:d.verdict}:{},...d.delivery?{delivery:d.delivery}:{},timestamp:S}):F(d)},[F,Jt]),oo=X((d,x)=>{if(!d)return;let S;return Pw(v=>v.map(k=>k.id!==d?k:(S=x(k),S))),S},[Pw]),Fs=X((d,x)=>{let S=Ct.current;if(S.activeKind===d){if(d==="thinking"&&S.activeThinkingItemId)return S.activeThinkingItemId;if(d==="assistant"&&S.activeAssistantItemId)return S.activeAssistantItemId;if(d==="tool_group"&&S.activeToolGroupItemId)return S.activeToolGroupItemId}let v=Date.now(),k=x?.trim()?`[${x.trim()}] `:"",$=S.activeToolGroupTools.some(B=>B.status===V.Executing);if(d==="thinking"){let B=Jt({id:Cd("thinking"),type:"thinking",timestamp:v,text:k});return Ct.current={...Ct.current,activeKind:"thinking",activeThinkingItemId:B,currentTurnThinkingItemId:B,activeAssistantItemId:void 0,...$?{}:{activeToolGroupItemId:void 0,activeToolGroupTools:[]}},B}if(d==="assistant"){let B=Jt({id:Cd("assistant"),type:"assistant",timestamp:v,text:k});return Ct.current={...Ct.current,activeKind:"assistant",activeThinkingItemId:void 0,activeAssistantItemId:B,...$?{}:{activeToolGroupItemId:void 0,activeToolGroupTools:[]}},B}let D=Jt({id:Cd("tool_group"),type:"tool_group",timestamp:v,tools:[]});return Ct.current={...Ct.current,activeKind:"tool_group",activeThinkingItemId:void 0,activeAssistantItemId:void 0,activeToolGroupItemId:D,activeToolGroupTools:[]},D},[Jt,Cd]),pr=X(()=>{fr.current&&(clearTimeout(fr.current),fr.current=null);let d=yd.current;if(!d.pendingText||!d.itemId)return;let x=d.pendingText,S=d.itemId,v=d.kind;d.pendingText="",oo(S,k=>k.type!==v?k:{...k,text:`${k.text}${x}`})},[oo]),Nw=X(()=>{fr.current||(fr.current=setTimeout(pr,pP))},[pr]),Id=X((d,x)=>{if(!x)return;let S=Ct.current;if(d==="assistant"&&!g2(x,S.activeKind==="assistant"&&!!S.activeAssistantItemId))return;let v=S.workerTitle,k=Fs(d,v),$=yd.current;$.itemId===k&&$.kind===d?$.pendingText+=x:(pr(),$.itemId=k,$.kind=d,$.pendingText=x),Nw()},[Fs,pr,Nw]),Dw=X(d=>{let x=d.trim();if(!x)return;let S=yd.current;S.kind==="thinking"&&S.pendingText&&(S.pendingText="",fr.current&&(clearTimeout(fr.current),fr.current=null));let v=Ct.current.workerTitle?.trim(),k=v?`[${v}] ${x}`:x,$=Ct.current.currentTurnThinkingItemId;if($){oo($,B=>B.type==="thinking"?{...B,text:k}:B);return}let D=Fs("thinking",Ct.current.workerTitle);oo(D,B=>B.type==="thinking"?{...B,text:k}:B)},[Fs,oo]),mr=X(d=>{pr();let x=Ct.current;if(x.activeToolGroupItemId&&x.activeToolGroupTools.some(D=>D.id===d.id)){let D=x.activeToolGroupTools.map(ee=>ee.id===d.id?d:ee),B=D.every(ee=>ee.status===V.Success||ee.status===V.Error||ee.status===V.Cancelled);Ct.current={...x,...B?{activeToolGroupItemId:void 0,activeToolGroupTools:[]}:{activeToolGroupTools:D}},oo(x.activeToolGroupItemId,ee=>ee.type==="tool_group"?{...ee,tools:D}:ee);return}let S=mn.current;for(let D=S.length-1;D>=0;D-=1){let B=S[D];if(B.type!=="tool_group"||!B.tools.some(oe=>oe.id===d.id))continue;let ee=B.tools.map(oe=>oe.id===d.id?d:oe);oo(B.id,oe=>oe.type==="tool_group"?{...oe,tools:ee}:oe);return}let v=Fs("tool_group",x.workerTitle),$=x.activeKind==="tool_group"&&x.activeToolGroupItemId===v?x.activeToolGroupTools.some(D=>D.id===d.id)?x.activeToolGroupTools.map(D=>D.id===d.id?d:D):[...x.activeToolGroupTools,d]:[d];Ct.current={...Ct.current,activeKind:"tool_group",activeToolGroupItemId:v,activeToolGroupTools:$},oo(v,D=>D.type==="tool_group"?{...D,tools:$}:D)},[Fs,oo,pr]),xP=X(d=>{pr();let x=Ct.current,S=x.activeToolGroupTools.some($=>$.status===V.Executing),v=ro.current.filter($=>$.status===V.Executing),k=new Set(v.map($=>$.id));Ct.current={workerId:d?.workerId,workerTitle:d?.workerTitle,...S?{activeToolGroupItemId:x.activeToolGroupItemId,activeToolGroupTools:x.activeToolGroupTools}:{activeToolGroupTools:[]}},st.current={workerId:d?.workerId,workerTitle:d?.workerTitle},Er.current=[],cn.current=cn.current.filter($=>k.has($.id)),Kn(v),Ke(),Ce(void 0),Q(),se(),Ve(),Rt(void 0)},[pr,Ke,Ve,se,Ce,Kn,Rt,Q]),SP=X(d=>{if(d.length===0)return[];let x=[],S=[...ki.current],v=[...Os.current];for(let k of d){let $=k.item,D=S.findIndex(B=>B.id===$.id);if(D>=0){let B=S[D];_m(B,$)||(S=S.map((ee,oe)=>oe===D?{...$,timestamp:B.timestamp}:ee))}else S=[...S,$].slice(-12),x.push($);if(k.persistToHistory){let B=v.findIndex(ee=>ee.id===$.id);if(B>=0){let ee=v[B];_m(ee,$)||(v=v.map((oe,Ue)=>Ue===B?{...$,timestamp:ee.timestamp}:oe))}else v=[...v,$].slice(-48)}}return Os.current=v,(x.length>0||S.some((k,$)=>!_m(k,ki.current[$]??k)||k.id!==ki.current[$]?.id))&&Lw(S),x},[Lw]),vd=X(d=>{if(cn.current.findIndex(S=>S.id===d.id)===-1){cn.current=[...cn.current,d];return}cn.current=cn.current.map(S=>S.id===d.id?d:S)},[]),Oo=X(d=>{let x=ro.current.filter(S=>S.status===V.Executing);if(x.length!==0){if(d){let S=lx(d);for(let v=x.length-1;v>=0;v-=1){let k=x[v];if(lx(k.name)===S)return k}}return x[x.length-1]}},[]),Hs=X(()=>{let d=Oo();Ce(d?cx(d.name):void 0)},[Oo,Ce]),Bw=X(d=>(vd(d),Kn([...ro.current.filter(x=>x.id!==d.id),d]),Hs(),d),[Kn,Hs,vd]),Ws=X((d,x)=>{let S=ro.current.find(k=>k.id===d);if(!S)return null;let v=x(S);return vd(v),Kn(ro.current.map(k=>k.id===d?v:k)),Hs(),v},[Kn,Hs,vd]),Fw=X((d,x,S)=>{if(d){let k=Ws(d,S);if(k)return k}let v=Oo(x);return v?Ws(v.id,S):null},[Oo,Ws]),bd=X((d,x,S,v,k)=>{let $=d??Oo(k)?.id;return $?Ws($,D=>({...D,status:x,endTime:Date.now(),error:S,output:v})):null},[Oo,Ws]),Qc=X((d,x)=>{let S=Date.now(),v=new Map;for(let k of ro.current){if(k.status!==V.Executing)continue;let $=x(k);v.set(k.id,{...k,status:d,endTime:S,...$})}return v.size===0?[]:(cn.current=cn.current.map(k=>v.get(k.id)??k),Kn(ro.current.map(k=>v.get(k.id)??k)),Hs(),[...v.values()])},[Kn,Hs]),No=X(()=>{Kn([])},[Kn]),{showHelp:Hw,toggleHelp:wP,setShowHelp:Ww}=mx(),TP=X(d=>{id(d),od(d.trim().length===0)},[]),Rd=si(),jw=xe(()=>Rd?Rd.state.visible&&Rd.suggestions.length>0:!1,[Rd]),[Zc,Uw]=je(!1),Gw=Se(ed),Mi=X(()=>{an.current&&(clearTimeout(an.current),an.current=null),kr.current&&(clearTimeout(kr.current),kr.current=null)},[]);Be(()=>{jw&&!Zc&&Uw(!0)},[jw,Zc]),Be(()=>{ed!==Gw.current&&(Gw.current=ed,Zc&&Uw(!1))},[ed,Zc]);let[Xe,el]=je(null),io=Se(null),CP=Se(Rk()),[He,hr]=je(null),kd=Se(null),Ed=Se(He);Ed.current=He;let[hn,js]=je(""),[Md,gr]=je(0),$h=Se(""),tl=Se(void 0),Vw=xe(()=>{if(!pn)return;let{contextWindow:d,triggerPercent:x,triggerTokens:S,reservedResponseTokens:v}=pn;return{currentTokens:Iw??n.contextTokenSnapshot?.currentTokens??Di(n.messages),contextWindow:d,triggerPercent:x,triggerTokens:S,reservedResponseTokens:v}},[n.messages,n.contextTokenSnapshot,pn,Iw]),nl=xe(()=>{if(!Xe)return;let d=new Set(Xe.runtimeGrantSuggestions?.map(v=>v.kind)??[]);if(d.has("persistent"))return ne("confirm.instruction.runtime_persistent");if(d.has("session"))return ne("confirm.instruction.runtime_session");if(Xe.runtimeGrantSuggestions!==void 0)return ne("confirm.instruction.basic");let x=!!Xe.input._alwaysConfirm,S=N.permissionMode==="accept-edits"&&!x;return x?ne("confirm.instruction.protected"):S?ne("confirm.instruction.always"):ne("confirm.instruction.basic")},[Xe,N.permissionMode]),xt=ze.searchMode==="history",ue=ze.surface==="transcript",Mr=!!Xe||!!He||xt,Dt=ue?Gt?$0:1e3:12,Do=n_(c,ze.surface),Kw=Do.shellMode,Oh=Do.usesAlternateScreenShell,_i=Do.usesRendererViewportShell,_d=Do.usesRendererMouseTracking,zw=Do.usesManagedMouseClicks,Yw=Do.usesManagedMouseWheel,Nh=Do.usesManagedSelection,Bt=r_(c,ze.surface,hE(ze)),Xw=gE(ze),Ad=Zc&&!ue,qw=X(()=>zx({items:Ns,managedLiveEvents:[],isLoading:H,isThinking:j.isThinking,thinkingCharCount:j.thinkingCharCount,thinkingContent:j.thinkingContent,currentResponse:j.currentResponse,currentTool:j.currentTool,activeToolCalls:Ei,toolInputCharCount:j.toolInputCharCount,toolInputContent:j.toolInputContent,lastLiveActivityLabel:md,workStripText:Ri,iterationHistory:j.iterationHistory,currentIteration:j.currentIteration,isCompacting:j.isCompacting}),[Ns,H,j.isThinking,j.thinkingCharCount,j.thinkingContent,j.currentResponse,j.currentTool,Ei,j.toolInputCharCount,j.toolInputContent,md,Ri,j.iterationHistory,j.currentIteration,j.isCompacting]);Be(()=>{if(ue){Rw(d=>d??qw());return}Rw(null)},[qw,ue]);let rl=xe(()=>QM({isTranscriptMode:ue,snapshot:kh,currentItemsLength:Ns.length,currentManagedLiveEventsLength:0,isLoading:H,currentResponse:j.currentResponse,thinkingContent:j.thinkingContent,activeToolCallsLength:Ei.length}),[Ei.length,H,ue,Ns.length,j.currentResponse,j.thinkingContent,kh]),Qt=ue?kh:null,Dh=xe(()=>e_(Sd),[Sd]),IP=xe(()=>!!(Yc.length>0||f_(J)),[Yc.length,J]),Ld=Yc.length>0,ln=c.streamingPreview&&IP,Us=xe(()=>ZM({surface:"transcript",snapshot:Qt,promptItems:Sd,transcriptItems:Ns}),[Qt,Sd,Ns]),ol=xe(()=>{if(!ue||Gt||Us.length<=Ly)return Us;let d=Us.slice(-Ly),x=Us.length-d.length;return[Y0(x,d[0]?.timestamp),...d]},[Us,ue,Gt]),St=Qt?.isLoading??H,lt=c.streamingPreview?{isThinking:ln?!1:j.isThinking,thinkingCharCount:ln?0:j.thinkingCharCount,thinkingContent:ln?"":j.thinkingContent,currentResponse:ln?"":j.currentResponse,currentTool:ln?void 0:j.currentTool,activeToolCalls:ln?[]:Ei,toolInputCharCount:0,toolInputContent:"",managedLiveEvents:[],lastLiveActivityLabel:ln?md:void 0,iterationHistory:[],currentIteration:j.currentIteration,isCompacting:!1}:{isThinking:!1,thinkingCharCount:0,thinkingContent:"",currentResponse:"",currentTool:void 0,activeToolCalls:[],toolInputCharCount:0,toolInputContent:"",managedLiveEvents:[],lastLiveActivityLabel:void 0,iterationHistory:[],currentIteration:j.currentIteration,isCompacting:!1},Me=c.streamingPreview?{isThinking:ln?!1:Qt?.isThinking??j.isThinking,thinkingCharCount:ln?0:Qt?.thinkingCharCount??j.thinkingCharCount,thinkingContent:ln?"":Qt?.thinkingContent??j.thinkingContent,currentResponse:ln?"":Qt?.currentResponse??j.currentResponse,currentTool:ln?void 0:Qt?.currentTool??j.currentTool,activeToolCalls:ln?[]:Qt?.activeToolCalls??Ei,toolInputCharCount:ln?0:Qt?.toolInputCharCount??j.toolInputCharCount,toolInputContent:ln?"":Qt?.toolInputContent??j.toolInputContent,managedLiveEvents:[],lastLiveActivityLabel:Qt?.lastLiveActivityLabel??md,iterationHistory:ln?[]:Qt?.iterationHistory??j.iterationHistory,currentIteration:Qt?.currentIteration??j.currentIteration,isCompacting:Qt?.isCompacting??j.isCompacting}:{isThinking:!1,thinkingCharCount:0,thinkingContent:"",currentResponse:"",currentTool:void 0,activeToolCalls:[],toolInputCharCount:0,toolInputContent:"",managedLiveEvents:[],lastLiveActivityLabel:void 0,iterationHistory:[],currentIteration:Qt?.currentIteration??j.currentIteration,isCompacting:!1},so=ue?to:dd,Jw=!!dd,Qw=X(()=>zx({items:Dh,managedLiveEvents:[],isLoading:H,isThinking:lt.isThinking,thinkingCharCount:lt.thinkingCharCount,thinkingContent:lt.thinkingContent,currentResponse:lt.currentResponse,currentTool:lt.currentTool,activeToolCalls:lt.activeToolCalls,toolInputCharCount:lt.toolInputCharCount,toolInputContent:lt.toolInputContent,lastLiveActivityLabel:lt.lastLiveActivityLabel,iterationHistory:lt.iterationHistory,currentIteration:lt.currentIteration,isCompacting:lt.isCompacting}),[H,Dh,lt.activeToolCalls,lt.currentIteration,lt.currentResponse,lt.currentTool,lt.isCompacting,lt.isThinking,lt.iterationHistory,lt.lastLiveActivityLabel,lt.thinkingCharCount,lt.thinkingContent,lt.toolInputCharCount,lt.toolInputContent]);Be(()=>{if(!Jw){kw(null);return}kw(d=>d??Qw())},[Qw,Jw]);let il=sn?.items??Dh,gn=sn?.isLoading??H,De=sn?{isThinking:sn.isThinking,thinkingCharCount:sn.thinkingCharCount,thinkingContent:sn.thinkingContent,currentResponse:sn.currentResponse,currentTool:sn.currentTool,activeToolCalls:sn.activeToolCalls,toolInputCharCount:sn.toolInputCharCount,toolInputContent:sn.toolInputContent,managedLiveEvents:sn.managedLiveEvents,lastLiveActivityLabel:sn.lastLiveActivityLabel,iterationHistory:sn.iterationHistory,currentIteration:sn.currentIteration,isCompacting:sn.isCompacting}:lt,Zt=ue?ol:il,_r=ue?St:gn,Ze=ue?Me:De,Zw=gn&&!j.currentResponse&&!j.thinkingContent&&Ei.length===0,vP=nu(Eh?.status==="running"),Vt=xe(()=>jI(Eh,Date.now()),[Eh,vP]),eT=Vt.shouldRender?`Workflow ${Vt.workflow}${Vt.phase?` - ${Vt.phase}`:""}`:void 0,ao=xe(()=>Ik(pd,{now:Date.now(),lastAllCompletedAt:null}),[pd]),tT=C<=20?1:Xy,bP=nu(Lh.length>0),Bh=xe(()=>FR(Lh,tT,Date.now()),[tT,Lh,bP]),nT=$R({isTranscriptMode:ue,isLoading:H,hasWorkflowLiveSurface:Vt.shouldRender,childActivityVisible:Bh.shouldRender}),Gs=xe(()=>{if(!ue)return[];let d=[];return d.push(...WI(Vt)),H&&ao.shouldRender&&d.push(...wk(ao)),d},[ue,H,ao,Vt]),Ai=xe(()=>({config:Ut,sessionId:n.sessionId,workingDir:e.context?.executionCwd||e.context?.gitRoot||n.runtimeInfo?.executionCwd||n.gitRoot||process.cwd(),terminalWidth:te,compactionInfo:pn??void 0}),[pn,n.sessionId,Ut,n.runtimeInfo?.executionCwd,e.context?.gitRoot,e.context?.executionCwd,te]),Bo=xe(()=>c.enabled&&cr?b2(Ai):void 0,[Ai,c.enabled,cr]),rT=Se(Sc),oT=Se(!1),Fh=Se(!1),Vs=sM({enabled:R2,useRendererViewportShell:_i,isTranscriptMode:ue,hasCommitHandle:typeof is(w)?.commitInlineScrollback=="function"}),sl=xe(()=>Vp({items:il,viewportWidth:te,maxLines:Dt,showDetailedTools:!1,showAllContent:!1,windowed:!1}),[il,te,Dt]),Li=xe(()=>{let d=Kp({activeItems:sl.activeItems,viewportWidth:te,isLoading:gn,maxLines:Dt,isThinking:De.isThinking,thinkingCharCount:De.thinkingCharCount,thinkingContent:De.thinkingContent,streamingResponse:De.currentResponse,currentTool:De.currentTool,activeToolCalls:De.activeToolCalls,toolInputCharCount:De.toolInputCharCount,toolInputContent:De.toolInputContent,iterationHistory:De.iterationHistory,currentIteration:De.currentIteration,isCompacting:De.isCompacting,managedAgentMode:N.agentMode,managedPhase:gn?J?.phase:void 0,managedHarnessProfile:gn?J?.harnessProfile:void 0,managedWorkerTitle:gn?J?.activeWorkerTitle:void 0,managedRound:gn?J?.currentRound:void 0,managedMaxRounds:gn?J?.maxRounds:void 0,managedGlobalWorkBudget:gn?J?.globalWorkBudget:void 0,managedBudgetUsage:gn?J?.budgetUsage:void 0,managedBudgetApprovalRequired:gn?J?.budgetApprovalRequired:void 0,lastLiveActivityLabel:De.lastLiveActivityLabel,currentTodoActiveForm:$s,showFullThinking:!1,showDetailedTools:!1,showAllContent:!1,showLiveProgressRows:Zw}),x=F0(sl,d,Bo);return lM(x,Vs)},[N.agentMode,Vs,gn,De.activeToolCalls,De.currentIteration,De.currentTool,De.isCompacting,De.currentResponse,De.isThinking,De.iterationHistory,De.lastLiveActivityLabel,De.thinkingCharCount,De.thinkingContent,De.toolInputCharCount,De.toolInputContent,J?.activeWorkerTitle,J?.budgetApprovalRequired,J?.budgetUsage,J?.currentRound,J?.globalWorkBudget,J?.harnessProfile,J?.maxRounds,J?.phase,Zw,sl,Bo,te,Dt,$s]),Hh=xe(()=>Vp({items:ol,viewportWidth:te,maxLines:Dt,showDetailedTools:Gt,showAllContent:Gt,showFullThinking:!0,windowed:!1}),[ol,te,Dt,Gt]),Pd=xe(()=>{if(!ue||_i)return;let d=Kp({activeItems:Hh.activeItems,viewportWidth:te,isLoading:St,maxLines:Dt,isThinking:Me.isThinking,thinkingCharCount:Me.thinkingCharCount,thinkingContent:Me.thinkingContent,streamingResponse:Me.currentResponse,currentTool:Me.currentTool,activeToolCalls:Me.activeToolCalls,toolInputCharCount:Me.toolInputCharCount,toolInputContent:Me.toolInputContent,iterationHistory:Me.iterationHistory,currentIteration:Me.currentIteration,isCompacting:Me.isCompacting,managedAgentMode:N.agentMode,managedPhase:St?J?.phase:void 0,managedHarnessProfile:St?J?.harnessProfile:void 0,managedWorkerTitle:St?J?.activeWorkerTitle:void 0,managedRound:St?J?.currentRound:void 0,managedMaxRounds:St?J?.maxRounds:void 0,managedGlobalWorkBudget:St?J?.globalWorkBudget:void 0,managedBudgetUsage:St?J?.budgetUsage:void 0,managedBudgetApprovalRequired:St?J?.budgetApprovalRequired:void 0,lastLiveActivityLabel:Me.lastLiveActivityLabel,liveStatusLines:Gs,currentTodoActiveForm:$s,showFullThinking:!0,showDetailedTools:Gt,showAllContent:Gt,showLiveProgressRows:!Ld,expandedItemKeys:_n});return h_(Ay(zp(Hh,d)),Bo)},[N.agentMode,_n,Ld,Bo,ue,J?.activeWorkerTitle,J?.budgetApprovalRequired,J?.budgetUsage,J?.currentRound,J?.globalWorkBudget,J?.harnessProfile,J?.maxRounds,J?.phase,te,St,Dt,Hh,Me.activeToolCalls,Me.currentIteration,Me.currentResponse,Me.currentTool,Me.isCompacting,Me.isThinking,Me.iterationHistory,Me.lastLiveActivityLabel,Me.thinkingCharCount,Me.thinkingContent,Me.toolInputCharCount,Me.toolInputContent,Gt,Gs,_i,$s]),al=xe(()=>{if(Bt)return ue?h_(Yp({items:Zt,viewportWidth:te,isLoading:_r,maxLines:Dt,isThinking:Ze.isThinking,thinkingCharCount:Ze.thinkingCharCount,thinkingContent:Ze.thinkingContent,streamingResponse:Ze.currentResponse,currentTool:Ze.currentTool,activeToolCalls:Ze.activeToolCalls,toolInputCharCount:Ze.toolInputCharCount,toolInputContent:Ze.toolInputContent,iterationHistory:Ze.iterationHistory,currentIteration:Ze.currentIteration,isCompacting:Ze.isCompacting,managedAgentMode:N.agentMode,managedPhase:_r?J?.phase:void 0,managedHarnessProfile:_r?J?.harnessProfile:void 0,managedWorkerTitle:_r?J?.activeWorkerTitle:void 0,managedRound:_r?J?.currentRound:void 0,managedMaxRounds:_r?J?.maxRounds:void 0,managedGlobalWorkBudget:_r?J?.globalWorkBudget:void 0,managedBudgetUsage:_r?J?.budgetUsage:void 0,managedBudgetApprovalRequired:_r?J?.budgetApprovalRequired:void 0,lastLiveActivityLabel:Ze.lastLiveActivityLabel,liveStatusLines:Gs,currentTodoActiveForm:$s,windowed:!0,showFullThinking:ue,showDetailedTools:Gt,showAllContent:Gt,showLiveProgressRows:ue&&!Ld,expandedItemKeys:ue?_n:void 0}),Bo):Ay(Li)},[N.agentMode,_r,Zt,Ld,Bo,Ze.activeToolCalls,Ze.currentIteration,Ze.currentResponse,Ze.currentTool,Ze.isCompacting,Ze.isThinking,Ze.iterationHistory,Ze.lastLiveActivityLabel,Ze.thinkingCharCount,Ze.thinkingContent,Ze.toolInputCharCount,Ze.toolInputContent,_n,ue,J?.activeWorkerTitle,J?.budgetApprovalRequired,J?.budgetUsage,J?.currentRound,J?.globalWorkBudget,J?.harnessProfile,J?.maxRounds,J?.phase,Li,H,ue,te,Dt,Bt,Gs,Gt,$s]),Ar=xe(()=>al??Pd,[al,Pd]),cl=xe(()=>Kx({status:J,isLoading:H,agentMode:N.agentMode}),[N.agentMode,H,J]).workStripText,ll=Qt?.workStripText??Ri,Ks=xe(()=>Kx({status:J,isLoading:H,agentMode:N.agentMode,parallelTextOverride:ll}),[N.agentMode,ll,H,J]),Pi=xe(()=>hM(Zt).filter(d=>d!==Xp),[Zt]),at=xe(()=>Dm(ze,Pi,ze.selectedItemId),[Pi,ze]),Ln=xe(()=>Zt.find(d=>d.id===at),[Zt,at]),iT=xe(()=>({...ze,supportsSelection:ze.supportsSelection&&Bt,supportsCopyOnSelect:ze.supportsCopyOnSelect&&Bt}),[ze,Bt]),Yn=xe(()=>FM({state:iT,selectableItemIds:Pi,selectedItemId:at,selectedItemType:Ln?.type,isExpanded:at?_n.has(at):!1}),[_n,Pi,Ln?.type,at,iT]),sT=Yn.selectionEnabled,aT=Yn.copyCapabilities.copyOnSelect,zG=Yn.selectedItemIndex,cT=xe(()=>mM(Ln),[Ln]),$d=xe(()=>uM(Zt.filter(d=>!$y(d))),[Zt]),Kt=xe(()=>dM($d,hn),[$d,hn]),Od=xe(()=>jM({isHistorySearchActive:xt,historySearchQuery:hn,matches:Kt,selectedIndex:Md,anchorItemId:ze.searchAnchorItemId,useOverlaySurface:ze.supportsOverlaySurface&&ze.supportsSearchViewport&&Bt}),[Kt,hn,Md,xt,ze.searchAnchorItemId,ze.supportsOverlaySurface,ze.supportsSearchViewport,Bt]),Fo=Od.clampedSelectedIndex,lT=Od.statusText,Wh=Od.detailText,uT=Od.searchState,YG=Yn.detailState==="expanded",Nd=Yn.selectionEnabled&&Pi.length>0&&!so,zs=Yn.copyCapabilities.message,Dd=Yn.copyCapabilities.toolInput,Bd=Yn.toggleDetail;Be(()=>{if(cl){if(kr.current&&(clearTimeout(kr.current),kr.current=null),Ri===cl)return;if(Ri){an.current&&(clearTimeout(an.current),an.current=null),Xc(cl);return}an.current&&clearTimeout(an.current),an.current=setTimeout(()=>{Xc(cl),an.current=null},400);return}if(!Ri){an.current&&(clearTimeout(an.current),an.current=null);return}an.current&&(clearTimeout(an.current),an.current=null),kr.current&&clearTimeout(kr.current),kr.current=setTimeout(()=>{Xc(void 0),kr.current=null},300)},[Mi,cl,Ri]),Be(()=>()=>{Mi()},[Mi]);let Ho=xe(()=>SM({state:ze,ownsViewport:Bt,isAwaitingUserInteraction:Mr,isHistorySearchActive:xt,isTranscriptMode:ue,historySearchQuery:hn}),[hn,Mr,xt,ue,ze,Bt]);Be(()=>{Rr(d=>{let x=lE(d,ur);return x=cE(x,rl),x=dE(x,c.enabled&&Bt?!Ih||xt||Mr:ue||xt||Mr),x=mE(x,Fo),x})},[Fo,c.enabled,ur,Mr,xt,ue,rl,Bt,Ih]),Be(()=>{Md!==Fo&&gr(Fo)},[Fo,Md]),Be(()=>{if(!xt){$h.current=hn;return}if(hn===$h.current)return;$h.current=hn;let d=pM($d,Kt,ze.searchAnchorItemId);gr(d)},[Kt,hn,xt,ze.searchAnchorItemId,$d]);let dT=ue?Me:{isThinking:De.isThinking,thinkingCharCount:De.thinkingCharCount,currentTool:De.currentTool,activeToolCalls:De.activeToolCalls,toolInputCharCount:De.toolInputCharCount,toolInputContent:De.toolInputContent,currentIteration:De.currentIteration,isCompacting:De.isCompacting},ul=ue?St:gn,[jh,Xn]=je(()=>ys(N.permissionMode,e.runtimeAutoModeControl?void 0:f.getGuardrail().getEngine(),s.engine));Be(()=>{if(!e.runtimeAutoModeControl){Sr(N.permissionMode)||Xn(void 0);return}if(!Sr(N.permissionMode)){Xn(void 0),e.runtimeAutoModeControl.syncSettings?.(n.sessionId,N.permissionMode,s);return}Xn(v=>ys(N.permissionMode,v,s.engine));let d=!0;i(async()=>{let v=await e.runtimeAutoModeControl?.syncSettings?.(n.sessionId,N.permissionMode,s)??await e.runtimeAutoModeControl?.getStats(n.sessionId);d&&Xn(ys(N.permissionMode,v?.engine,s.engine))},"refresh")();let S=e.runtimeAutoModeControl.subscribe?.(n.sessionId,v=>{d&&Xn(ys(N.permissionMode,v?.engine,s.engine))});return()=>{d=!1,S?.close()}},[s,n.sessionId,N.permissionMode,e.runtimeAutoModeControl]);let Fd=xe(()=>BM({sessionId:n.sessionId,permissionMode:N.permissionMode,agentMode:N.agentMode,provider:N.provider,model:N.model??Or(N.provider)??N.provider,thinking:N.thinking,reasoningMode:N.reasoningMode,effort:Ee,reasoningEffortLabel:Vo({provider:N.provider,model:N.model,effort:Ee,effortOverride:N.effortOverride,thinking:N.thinking,reasoningMode:N.reasoningMode}),isTranscriptMode:ue,streamingState:dT,maxIter:j.maxIter,contextUsage:Vw,learning:ww,isLoading:ul,managedState:{phase:J?.phase,harnessProfile:J?.harnessProfile,workerTitle:J?.activeWorkerTitle,round:J?.currentRound,maxRounds:J?.maxRounds,globalWorkBudget:J?.globalWorkBudget,budgetUsage:J?.budgetUsage,budgetApprovalRequired:J?.budgetApprovalRequired,idleWaiting:J?.idleWaiting,idleWaitingPendingCount:J?.idleWaitingPendingCount},autoModeEngine:jh}),[n.sessionId,N.permissionMode,N.agentMode,N.provider,N.model,N.thinking,N.reasoningMode,N.effortOverride,Ee,ue,dT,j.maxIter,Vw,ww,ul,J?.phase,J?.harnessProfile,J?.activeWorkerTitle,J?.currentRound,J?.maxRounds,J?.globalWorkBudget,J?.budgetUsage,J?.budgetApprovalRequired,J?.idleWaiting,J?.idleWaitingPendingCount,jh]),Uh=Xe?"confirm":He?.kind,fT=xe(()=>NM({isTranscriptMode:ue,isLoading:ul,streamingState:De,managedState:ul?{phase:J?.phase,harnessProfile:J?.harnessProfile,workerTitle:J?.activeWorkerTitle}:void 0,waitingReason:Uh,workflowBuilderMessage:Ew??void 0,backgroundWorkflowMessage:eT}),[De.activeToolCalls,De.currentTool,De.isCompacting,De.isThinking,De.thinkingCharCount,De.toolInputCharCount,De.toolInputContent,ue,J?.activeWorkerTitle,J?.harnessProfile,J?.phase,Uh,ul,Ew,eT]),co=$M({activity:fT})?fT:void 0,pT=co?.text,mT=!!co,hT=Se(!1);Be(()=>{hT.current&&!H&&no(d=>d.length>0?[]:d),hT.current=H},[H]);let Gh=xe(()=>em(Fd),[Fd]),gT=xe(()=>Gh,[Gh]),yT=gT.text,RP=xe(()=>RR(j.pendingInputs),[j.pendingInputs]),Vh=xe(()=>vk({isHistorySearchActive:xt,isTranscriptMode:ue,pendingInputCount:j.pendingInputs.length,buffering:ze.buffering,pendingLiveUpdates:rl}),[xt,ue,rl,j.pendingInputs.length,ze.buffering]),xT=Vh.leftItems,ST=Vh.rightItems,wT=Vh.summary,Hd=xe(()=>GM({historySearchQuery:hn,pendingInputCount:j.pendingInputs.length}),[hn,j.pendingInputs.length]),Wd=xe(()=>[...UM({historySearchQuery:hn,isHistorySearchActive:xt,historySearchMatchCount:Kt.length,pendingInputCount:j.pendingInputs.length,maxPendingInputs:5}),...Cw],[Kt.length,hn,xt,Cw,j.pendingInputs.length]),TT=xe(()=>Wd.map(d=>d.text).join(" | "),[Wd]),jd=xe(()=>VM({inputText:Th,isTranscriptMode:ue,isHistorySearchActive:xt}),[Th,xt,ue]),CT=ze.supportsOverlaySurface&&ze.supportsSearchViewport&&Bt,Ud=xe(()=>HM({runtime:Yn,itemSummary:cT}),[cT,Yn]),Kh=xe(()=>KM(Hd),[Hd]),IT=xe(()=>zM({textSelection:so,selectionState:Ud,isHistorySearchActive:xt,historySearchDetailText:Wh,historySearchHasMatches:!!lT&&Kt.length>0,showAllActive:Gt,baseFooterNotices:Hd}),[so,Hd,Wh,Kt.length,lT,xt,Gt,Ud]),kP=IT.secondaryText,EP=IT.budgetNotices,vT=ue?EP:Kh,bT=C,RT=ue?"":Th,kT=ue?void 0:RP,ET=ll,MT=ue?!1:Hw,_T=Vt.shouldRender?gk(Vt):0,AT=H&&ao.shouldRender?ao.rows.length:0,LT=nT?Sm(Bh):0,en=xe(()=>oE({terminalRows:bT,terminalWidth:te,windowedTranscript:_i,inputText:RT,footerHeaderText:wT,activitySummary:ue?void 0:pT,activityBarVisible:ue?!1:mT,workflowSurfaceRows:ue?0:_T,childActivitySurfaceRows:ue?0:LT,todoSurfaceRows:ue?0:AT,pendingInputSummary:kT,stashNoticeSummary:jd,notificationSummary:TT,statusNoticeSummary:vT.join(" | "),workStripText:ET,suggestionsReserved:Ad,suggestionsMode:"inline",showHelp:MT,statusBarText:yT,confirmPrompt:Xe?.prompt,confirmInstruction:nl,dialogMode:"inline",reviewHint:c.enabled&&Bt?void 0:Ho.browseHintText,uiRequest:He?He.kind==="select"?{kind:"select",title:He.title,options:He.options.map(d=>({label:d.label,description:d.description})),buffer:He.buffer,error:He.error}:{kind:"input",prompt:He.prompt,defaultValue:He.defaultValue,buffer:He.buffer,error:He.error}:null}),[bT,te,RT,wT,pT,mT,ue,_T,LT,AT,kT,jd,TT,vT,ET,Ad,CT,MT,yT,Xe,nl,c.enabled,Ho.browseHintText,Bt,He]),zh=xe(()=>{if(!Vs)return{model:Li,committedSections:[]};let{committedSections:d,liveRows:x}=H0(sl.staticSections,Li.rows,Li.previewRows,en.messageRows);return{model:{...Li,staticSections:[],rows:x,previewRows:[]},committedSections:d}},[Vs,Li,sl.staticSections,en.messageRows]),PT=zh.model;Be(()=>{let d=is(w),x=typeof d?.commitInlineScrollback=="function",S=aM({active:Vs,hasCommitHandle:x,wasActive:oT.current,forceRebuild:Fh.current,prior:rT.current,finalizedSections:zh.committedSections,bannerSection:Bo,width:te,identify:W0}),v=!1,k=!1;if(S.kind==="commit"){let D=S.sections.flatMap(ee=>ee.rows),B=iM(D.length>0?[{key:"il-delta",rows:D}]:[],{width:te,theme:ce("dark")});if(k=B.length>0,S.mode==="append"&&!B)g_("empty-append-text");else try{d?.commitInlineScrollback?.({mode:S.mode,text:B}),v=!0}catch(ee){g_("commit-threw",ee)}}let $=cM(S,{committed:v,hadContent:k},Fh.current);rT.current=$.state,oT.current=$.wasActive,Fh.current=$.owns},[Vs,zh.committedSections,Bo,te,w]);let MP=xe(()=>fe(mm,{reserveSpace:Ad,width:te,hidden:ue,mode:"inline"}),[Ad,te,ue,CT]),dl=xe(()=>wM(en.messageRows),[en.messageRows]),$T=xe(()=>TM(dl),[dl]),Ys=!Xw&&c.transcriptSpinnerAnimation,fl=Ar?Ar.rows.length+Ar.previewRows.length:oP,Gd=X(d=>{Ar||iP(d.scrollHeight)},[Ar]),pl=X(d=>kM({window:d,stickyHeader:Ho.stickyHeader,width:te,topChromeRows:0}),[te,Ho.stickyHeader]),Xs=X((d=jc.current,x=ud.current,S=vh.current?pl(vh.current):ld.current)=>{if(!S||d.length===0){As.current=null;return}ld.current=S,As.current=EM(d,{allRows:x,rowIndexByKey:Hx(x),topOffsetRows:S.topOffsetRows,viewportHeight:S.contentWindow.viewportHeight,animateSpinners:Ys})},[pl,Ys]),ml=X(()=>{let d=ld.current;return d?.contentWindow.viewportHeight&&d.contentWindow.viewportHeight>0?d.contentWindow.viewportHeight:en.messageRows},[en.messageRows]),_P=X(d=>{vh.current=d;let x=pl(d);ld.current=x,Xs(jc.current,ud.current,x)},[Xs,pl]),Vd=X(d=>{jc.current=d.rows,ud.current=d.allRows,Xs(d.rows,d.allRows)},[Xs]),un=X(()=>{dr.current=null,bh(void 0),Rh(void 0)},[]),Yh=X(()=>{un(),Rr(d=>xc(d,void 0))},[un]);Be(()=>{Xs()},[Xs]),Be(()=>{aP(d=>CM(d,fl,en.messageRows))},[fl,en.messageRows]),Be(()=>{if(!Ls)return;let d=setTimeout(()=>{bw(void 0)},2e3);return()=>{clearTimeout(d)}},[Ls]);let Pn=X((d,x="success")=>{let S=d?.trim();S&&bw({text:S,tone:x})},[]);Be(()=>e.subscribeTransientNotices?.(d=>{Pn(d.text,d.tone)}),[e.subscribeTransientNotices,Pn]);let AP=X(d=>{Pn(d,"warning")},[Pn]),qs=X((d,x)=>{let S=x instanceof Error?x.message:String(x);return`${d}: ${S}`},[]),Kd=X(async d=>{let x=d??so;if(!x)return!1;let S=x.text.trimEnd();if(!S)return!1;try{return await kl(S,{terminalWrite:E}),Pn(`Copied ${x.rowCount} selected line${x.rowCount===1?"":"s"} to clipboard.`,"success"),!0}catch(v){return Pn(qs("Failed to copy transcript selection",v),"warning"),!1}},[so,qs,Pn,E]),Js=X(d=>{if(!d||vM({items:Zt,renderModel:Ar,terminalWidth:te,transcriptMaxLines:Dt,viewportRows:ml(),itemId:d,visibleRows:jc.current,expandedItemKeys:_n,showDetailedTools:!1}))return;let x=bM({items:Zt,renderModel:Ar,terminalWidth:te,transcriptMaxLines:Dt,viewportRows:ml(),itemId:d,expandedItemKeys:_n,showDetailedTools:!1});sd(x)},[Zt,te,Dt,Ar,_n,ml,sd,jc]),OT=X(d=>{Rr(x=>xc(x,d)),d&&Js(d)},[Js]),Xh=X(d=>{d&&Js(d)},[Js]),NT=X(d=>{if(!Nd)return;let x=gM(Pi,at,d);x&&OT(x)},[Nd,Pi,at,OT]),DT=X(()=>{!Bd||!at||(uP(d=>{let x=new Set(d);return x.has(at)?x.delete(at):x.add(at),x}),Js(at))},[Js,Bd,at]),BT=X(async()=>{if(!zs||!Ln)return;let d=Fx(Ln);if(d)try{await kl(d,{terminalWrite:E}),Pn("Copied selected transcript entry to clipboard.","success")}catch(x){Pn(qs("Failed to copy transcript entry",x),"warning")}},[qs,zs,Ln,Pn,E]),FT=X(async()=>{if(!Dd||!Ln)return;let d=yM(Ln);if(d)try{await kl(d,{terminalWrite:E}),Pn("Copied selected tool args to clipboard.","success")}catch(x){Pn(qs("Failed to copy tool args",x),"warning")}},[qs,Dd,Ln,Pn,E]),hl=X(()=>ud.current,[]),HT=X((d,x)=>{if(!c.enabled||!Bt)return;let S=As.current;return S?jx(S,d,x):void 0},[c.enabled,Bt]),Qs=X((d,x,S)=>{let v=hl(),k=AM(v,d,x,{animateSpinners:Ys,selectFullRowOnCollapsed:S?.selectFullRowOnCollapsed});ue?Rh(k):bh(k);let $=v[Math.max(0,Math.min(x.modelRowIndex,v.length-1))];return S?.updateSelectedItem&&$?.itemId&&Rr(D=>xc(D,$.itemId)),k},[ue,hl,Ys]),WT=X((d,x)=>{if(!d)return;dr.current=null;let S={...d,focus:x?.focusPoint??d.focus};if(!(S.mode!=="char"||S.didDrag)){un();return}let k=Qs(S.anchor,S.focus,{selectFullRowOnCollapsed:!1,updateSelectedItem:!1});if(!k){un();return}return x?.copySelection!==!1&&Kd(k),k},[un,Kd,Qs]),qh=X(()=>{if(!ue||!Zt.length||Xe||He)return;un();let d=RM({items:Zt,selectedItemId:at,renderModel:Ar,terminalWidth:te,transcriptMaxLines:Dt,viewportRows:ml(),scrollOffset:ur,expandedItemKeys:_n,showDetailedTools:!1,preferViewportAnchor:!0});Rr(x=>fE(x,{anchorItemId:d,initialMatchIndex:0})),js(""),gr(0)},[Xe,Zt,_n,ur,ue,at,Ar,te,Dt,He,ml,un]),Jh=X(()=>{Rr(d=>pE(d)),js(""),gr(0),un()},[un]),zd=X(()=>{!xt||Kt.length===0||gr(-1)},[Kt.length,xt]),jT=xe(()=>{if(!Xe)return null;if(Xe.tool==="exit_plan_mode"){let d=typeof Xe.input.plan=="string"?Xe.input.plan:void 0;return{prompt:Xe.prompt.split(`
141
141
  `,1)[0]??Xe.prompt,instruction:nl,planContent:d}}return{prompt:Xe.prompt,instruction:nl}},[nl,Xe]),UT=xe(()=>He?He.kind==="select"?{kind:"select",title:He.title,options:He.options,buffer:He.buffer,error:He.error,visibleSelectOptions:en.visibleSelectOptions,focusedIndex:He.focusedIndex,selectedIndices:He.selectedIndices,multiSelect:He.multiSelect}:{kind:"input",prompt:He.prompt,defaultValue:He.defaultValue,buffer:He.buffer,error:He.error}:null,[He,en.visibleSelectOptions]),LP=xe(()=>fe(hm,{confirm:jT,request:UT}),[jT,UT]),Qh=xe(()=>{if(Ls)return fe(pk,{text:Ls.text,tone:Ls.tone})},[Ls]),Zh=xe(()=>{if(Qh)return fe(A,{flexDirection:"column",width:"100%",children:Qh})},[Qh]),Yd=X(()=>{Rr(d=>uE(aE(d))),Ch(!1),cd(),js(""),gr(0),un()},[un,cd]),GT=X(()=>{ue&&Ch(d=>!d)},[ue]),PP=X(()=>{if(ue){Yd();return}Ch(!1),Rr(d=>sE(d)),js(""),gr(0),un()},[un,Yd,ue]);Be(()=>{sT||!ze.selectedItemId||Rr(d=>xc(d,void 0))},[sT,ze.selectedItemId]),Be(()=>{if(!ue||!zs||!aT){tl.current=void 0;return}if(to||!at||!Ln)return;if(!tl.current){tl.current=at;return}if(tl.current===at)return;tl.current=at;let d=Fx(Ln);d&&kl(d,{terminalWrite:E}).catch(()=>{})},[ue,Ln,at,zs,aT,to,E]),Be(()=>{if(w?.isTTY!==!0)return;let d=is(w);d?.setShellMode?.(Kw,_d),Oh||d?.setAltScreenActive?.(!1)},[Kw,w,Oh,_d]);let $P=xe(()=>bk(o,()=>wh.current),[o]),Oe=Se({...e,thinking:N.thinking,reasoningMode:N.reasoningMode,effort:_t,agentMode:N.agentMode,workflowRunsBaseDir:Uo("workflow-runs",Vi(process.cwd()).key),context:{...e.context,gitRoot:n.gitRoot??void 0,executionCwd:n.runtimeInfo?.executionCwd??n.gitRoot??process.cwd(),repoIntelligenceMode:N.repoIntelligenceMode,repoIntelligenceTrace:N.repoIntelligenceTrace,toolConstructionMode:!0},session:{...e.session,id:n.sessionId,storage:$P,persistedByHost:!0},guardrails:e.runtimeRunner?void 0:qx(N.permissionMode,f)});Be(()=>{Oe.current.effort=_t},[_t]);let gl=X(d=>{let x=d.workspaceRoot??void 0;n.runtimeInfo=d,n.gitRoot=x,Oe.current.context={...Oe.current.context,gitRoot:x,executionCwd:d.executionCwd??x??process.cwd()}},[n]),$n=Se(N.permissionMode),VT=Se(0);Be(()=>{$n.current=N.permissionMode},[N.permissionMode]);let OP=xe(()=>ba(),[]),KT=Se(OP),It=Se(N);Be(()=>{It.current=N},[N]);let eg=Se(null);eg.current===null&&(eg.current=Cf({getProvider:i(()=>Ni(It.current.provider),"getProvider"),getModel:i(()=>It.current.model??"","getModel")}));let zT=Se(Rf());Be(()=>{N.permissionMode==="auto-in-project"&&zT.current()},[]);let tg=X(async d=>{let x=++VT.current;Ae(k=>({...k,permissionMode:d})),$n.current=d,Xn(ys(d,void 0,s.engine));let S=await e.runtimeAutoModeControl?.syncSettings?.(n.sessionId,d,s);if(x!==VT.current)return;let v=Ui({provider:It.current.provider,model:It.current.model,effort:It.current.effort,effortOverride:It.current.effortOverride,permissionMode:d,planModeEffort:It.current.planModeEffort,thinking:It.current.thinking,reasoningMode:It.current.reasoningMode});if(Oe.current={...Oe.current,effort:v.runtimeEffort,guardrails:e.runtimeRunner?void 0:qx(d,f)},!Sr(d))Xn(void 0);else if(e.runtimeAutoModeControl){let k=S??await e.runtimeAutoModeControl.getStats(n.sessionId);Xn(ys(d,k?.engine,s.engine))}else Xn(f.getGuardrail().getEngine());d==="auto-in-project"&&zT.current()},[f,s,n.sessionId,e.runtimeAutoModeControl,e.runtimeRunner]),YT=Se(j.pendingInputs),ct=Se(!1),XT=Se(0),ng=Se(null),yl=Se(0),Xd=X(()=>{if(Fc.current)return;let d=hd.current?.trim(),x=y.current.length>0?y.current[y.current.length-1]:void 0,S=x&&"text"in x&&typeof x.text=="string"?x.text.trim():void 0,k=mn.current.length>0?[...mn.current.map($=>yi($)),...d&&d!==S?[{type:"info",text:d}]:[]]:[...mn.current.map($=>yi($)),...y2(Fe(),G(),{toolCalls:cn.current,toolNames:Er.current,infoItems:d&&d!==S?[d]:[]})];k.length!==0&&(Fc.current=!0,Td(mn.current),_s.current?.(k))},[G,Fe,Td]);Be(()=>{YT.current=j.pendingInputs},[j.pendingInputs]);let qT=X(()=>{ct.current=!0,ke(),me(),Q(),se(),Ke(),Ve(),Ce(void 0),No(),Rt(void 0),Jc(),ki.current=[],Os.current=[],pt.current=null,hd.current=null,zc([]),fd(null),Ps(null),Mi(),Xc(void 0),Z(!1),w?.isTTY===!0&&is(w)?.clear?.()},[ke,Ve,se,Ke,Mi,No,Jc,Ce,zc,Z,Rt,me,Q,w]),qd=X(d=>{let x=MC(),S=x.list().filter(k=>k.status==="running"||k.status==="paused");if(S.length===0)return!1;for(let k of S)x.stop(k.runId,d);Vc(k=>!k||k.status!=="running"||!S.some($=>$.runId===k.runId)?k:{...k,status:"stopped",activeAgents:[],message:"Workflow stopped by user."});let v=S[0];return S.length===1&&v?An({type:"info",text:`Stopped workflow ${v.workflow} (${v.runId}).`},"workflow-stop"):An({type:"info",text:`Stopped ${S.length} active workflows.`},"workflow-stop"),!0},[An,Vc]);Be(()=>{if(!Vt.shouldRender)return;let d=i(()=>{qd("stopped by Ctrl+C")},"handleSigint");return process.on("SIGINT",d),()=>{process.off("SIGINT",d)}},[qd,Vt.shouldRender]),Bn(yn.Critical,d=>{let x=d.name==="escape",S=Date.now(),v=x&&!ue&&!Mr&&Wc&&j.pendingInputs.length===0&&(H||Vt.shouldRender),k=v&&(d.meta===!0||S-XT.current<i2);if(XT.current=v?S:0,kE({keyName:d.name,ctrl:!!d.ctrl,isTranscriptMode:ue,isAwaitingUserInteraction:Mr,isInputEmpty:Wc,isDoubleEscape:k,pendingInputCount:j.pendingInputs.length,hasTranscriptTextSelection:!!to,hasActiveWorkflow:Vt.shouldRender}))return qd(d.ctrl?"stopped by Ctrl+C":"stopped by Escape");if(!H)return!1;switch(EE({keyName:d.name,ctrl:!!d.ctrl,isTranscriptMode:ue,isAwaitingUserInteraction:Mr,isInputEmpty:Wc,isDoubleEscape:k,pendingInputCount:j.pendingInputs.length,hasTranscriptTextSelection:!!to}).kind){case"interrupt":return Xd(),qT(),!0;case"pop-pending-input":return fn(),!0;default:break}return!1},[H,ue,Mr,Wc,j.pendingInputs.length,fn,Xd,qT,qd,to,Vt.shouldRender]),Bn(yn.Critical,d=>{let x=vE({itemsLength:Zt.length,currentResponse:Ze.currentResponse,thinkingContent:Ze.thinkingContent,activeToolCallsLength:Ze.activeToolCalls.length}),S=bE({keyName:d.name,hasTranscript:x,historyScrollOffset:ur,reviewPageSize:dl,reviewWheelStep:$T,hasMouse:!!d.mouse,mouseButton:d.mouse?.button,mouseAction:d.mouse?.action,usesManagedMouseClicks:zw,supportsMouseTracking:ze.supportsMouseTracking,usesRendererMouseTracking:_d,usesManagedMouseWheel:Yw,supportsWheelHistory:ze.supportsWheelHistory});if(S.kind==="mouse-phase"){let k=d.mouse;if(!k)return!1;S.phase==="press"&&dr.current&&WT(dr.current);let $=HT(k.row,k.column);if(S.phase==="press"){if(!$||!x)return so||at?(Yh(),!0):(un(),!1);let D=i_({previous:vw.current,time:Date.now(),row:k.row,column:k.column});vw.current=D;let B=D.count>=3?"line":D.count===2?"word":"char";if(zd(),Rr(ee=>xc(ee,void 0)),ue?Rh(void 0):bh(void 0),B!=="char"){let ee=zm(hl(),$.point,B);if(ee)return dr.current={anchor:ee.start,focus:ee.end,didDrag:!1,mode:B,anchorSpan:ee},Qs(ee.start,ee.end,{updateSelectedItem:!1}),!0}return dr.current={anchor:$.point,focus:$.point,didDrag:!1,mode:"char"},!0}if(!dr.current)return!1;if(S.phase==="drag"){let D=As.current,B=D?PM(D,k.row):0;B!==0&&ad(B);let ee=$??(D?Ux(D,k.row,k.column):void 0);if(!ee)return!1;let oe=dr.current;if(oe.mode!=="char"&&oe.anchorSpan){let Ue=zm(hl(),ee.point,oe.mode);if(!Ue)return!1;let Ge=Xx(oe.anchorSpan,Ue);return dr.current={...oe,anchor:Ge.anchor,focus:Ge.focus,didDrag:!0},Qs(Ge.anchor,Ge.focus,{updateSelectedItem:!1}),!0}return dr.current={...oe,focus:ee.point,didDrag:!0},Qs(oe.anchor,ee.point,{updateSelectedItem:!1}),!0}if(S.phase==="release"){let D=dr.current,B=D.focus,oe=($??(As.current?Ux(As.current,k.row,k.column):void 0))?.point??B;if(D.mode!=="char"&&D.anchorSpan){let Ue=zm(hl(),oe,D.mode);if(Ue){let Ge=Xx(D.anchorSpan,Ue);D.anchor=Ge.anchor,oe=Ge.focus}}return WT(D,{focusPoint:oe}),!0}}if(S.kind==="scroll-by")return zd(),ad(S.delta),!0;if(S.kind==="consume")return!0;let v=ME({key:d,isTranscriptMode:ue,isHistorySearchActive:xt,historySearchMatchCount:Kt.length,hasTextSelection:!!so,hasFocusedItem:!!at,canCopySelectedItem:zs,canCopySelectedToolInput:Dd,canToggleSelectedDetail:Bd,canCycleTranscriptSelection:Nd});return _E({action:v,hasTranscript:x,isTranscriptMode:ue,pageScrollDelta:dl,disarmHistorySearchSelection:zd,scrollTranscriptBy:ad,closeHistorySearchSurface:Jh,backspaceHistorySearchQuery:i(()=>{js(k=>k.slice(0,-1)),gr(0)},"backspaceHistorySearchQuery"),stepHistorySearchSelection:i(k=>{gr($=>Bx(Kt.length,$,k))},"stepHistorySearchSelection"),submitHistorySearchSelection:i(()=>{let k=Kt[Fo];k&&(Xh(k.itemId),Jh())},"submitHistorySearchSelection"),appendHistorySearchQuery:i(k=>{js($=>$+k),gr(0)},"appendHistorySearchQuery"),openHistorySearchSurface:qh,clearTranscriptSelectionFocus:Yh,exitTranscriptModeSurface:Yd,toggleTranscriptShowAll:GT,scrollTranscriptHome:i(()=>{sd(Math.max(0,fl-en.messageRows))},"scrollTranscriptHome"),scrollTranscriptToBottom:i(()=>{cd(),un()},"scrollTranscriptToBottom"),cycleTranscriptSelection:NT,copySelectedTranscriptText:i(()=>{Kd()},"copySelectedTranscriptText"),copySelectedTranscriptItem:i(()=>{BT()},"copySelectedTranscriptItem"),copySelectedTranscriptToolInput:i(()=>{FT()},"copySelectedTranscriptToolInput"),toggleSelectedTranscriptDetail:DT,navigateSearchMatch:i(k=>{gr($=>{let D=Bx(Kt.length,$,k),B=Kt[D];return B&&Xh(B.itemId),D})},"navigateSearchMatch"),dumpTranscriptToScrollback:i(()=>{AE({items:Zt.filter(k=>!$y(k)),exitAltScreen:i(()=>{E(Cp({mouseTracking:!0}))},"exitAltScreen"),writeToScrollback:i(k=>{E(k)},"writeToScrollback"),enterAltScreen:i(()=>{E(Tp({mouseTracking:!0,clearOnEnter:!1}))},"enterAltScreen")})},"dumpTranscriptToScrollback")})},[ue,Zt,Ze.currentResponse,Ze.thinkingContent,Ze.activeToolCalls,ur,fl,dl,$T,at,Yh,Yd,GT,ze,ad,sd,cd,Nd,Fo,un,Kd,Kt,qh,Jh,zd,NT,zs,BT,Dd,FT,Bd,DT,Xh,so,HT,ze.supportsMouseTracking,to,zw,Yw,Nh,_i,_d,Qs,en.messageRows]),Bn(d=>{if(!Xe)return!1;let x=d.sequence.trim().toLowerCase(),S=Xe.runtimeGrantSuggestions?.find(ee=>ee.kind==="session"),v=Xe.runtimeGrantSuggestions?.find(ee=>ee.kind==="persistent"),k=!!Xe.input._alwaysConfirm,$=Xe.runtimeGrantSuggestions!==void 0,D=v!==void 0||!$&&N.permissionMode==="accept-edits"&&!k,B=i(ee=>{let oe=`${ne("dialog.confirm")} ${Xe.prompt}
142
- \u2192 ${ne(`confirm.result.${ee}`)}`;!!st.current.workerId?Jt({id:`confirm-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,type:"info",text:oe,timestamp:Date.now()}):F({type:"info",text:oe})},"recordConfirmResult");return x==="y"||x==="yes"?(B("approved"),el(null),io.current?.({confirmed:!0}),io.current=null,!0):S&&(x==="s"||x==="session")?(B("approved_session"),el(null),io.current?.({confirmed:!0,runtimeGrantKind:"session"}),io.current=null,!0):D&&(x==="a"||x==="always")?(B("approved_always"),el(null),io.current?.(v?{confirmed:!0,runtimeGrantKind:"persistent"}:{confirmed:!0,always:!0}),io.current=null,!0):x==="n"||x==="no"||d.name==="escape"?(B("denied"),el(null),io.current?.({confirmed:!1}),io.current=null,!0):d.insertable||d.name==="return"},{isActive:!!Xe,priority:yn.Critical});let Jd=X(d=>{hr(null),kd.current?.(d),kd.current=null},[]),lo=X((d,x,S,v)=>x.length===0?Promise.resolve(void 0):new Promise(k=>{kd.current=k,hr({kind:"select",title:d,options:x,buffer:"",focusedIndex:0,selectedIndices:[],multiSelect:S,minSelections:v?.minSelections,maxSelections:v?.maxSelections})}),[]),NP=X((d,x)=>lo(d,x.map(S=>({label:S,value:S}))).then(S=>Array.isArray(S)?S[0]:S),[lo]),DP=X(async d=>{let x=e.learning;if(!x)return;let S=d;if(!S){let D=await x.list({limit:200});if(D.items.length===0){Sh([{id:"learning-center-empty",text:"Learning Center has no learned capabilities.",tone:"accent"}]);return}let B=await lo("Learning Center \u2014 type to search",a2(D.items));S=Array.isArray(B)?B[0]:B}if(!S)return;let v=await x.get(S),k=await lo(`${v.displayName} \xB7 ${v.carrier} \xB7 ${v.lifecycle}`,s2(v)),$=Array.isArray(k)?k[0]:k;$&&(await c2(x,v.capabilityId,$),Tw(await x.getSnapshot()))},[e.learning,lo]),JT=X(async d=>{let x=d.options?Km(d.options):[],S=await lo(Vx(d),x,!1);return S===void 0?fa:Array.isArray(S)?S[0]??fa:S},[lo]);Be(()=>{let d=!1;return(async()=>{let{bindAskUserForConstruction:x}=await import("./construction-bootstrap-CZ6NWEWQ.js");d||x(JT)})(),()=>{d=!0,(async()=>{let{bindAskUserForConstruction:x}=await import("./construction-bootstrap-CZ6NWEWQ.js");x(null)})()}},[JT]);let Zs=X((d,x)=>new Promise(S=>{kd.current=v=>S(Array.isArray(v)?v[0]:v),hr({kind:"input",prompt:d,defaultValue:x,buffer:""})}),[]);Bn(d=>{let x=Ed.current;if(!x)return!1;if(d.name==="escape")return Jd(void 0),!0;if(x.kind==="select"){let S=x.options.length;if(d.name==="up"||d.sequence==="k")return hr(v=>v&&v.kind==="select"?{...v,focusedIndex:(v.focusedIndex-1+S)%S,error:void 0}:v),!0;if(d.name==="down"||d.sequence==="j")return hr(v=>v&&v.kind==="select"?{...v,focusedIndex:(v.focusedIndex+1)%S,error:void 0}:v),!0;if(d.sequence===" "&&x.multiSelect)return hr(v=>{if(!v||v.kind!=="select")return v;let k=v.focusedIndex,$=v.selectedIndices.includes(k)?v.selectedIndices.filter(D=>D!==k):[...v.selectedIndices,k];return{...v,selectedIndices:$,error:void 0}}),!0;if(d.name==="return"){let v=Ed.current;if(!v||v.kind!=="select")return!1;if(v.multiSelect){let k=v.selectedIndices.length,{minSelections:$,maxSelections:D}=v,B=k===0&&$!==0?ne("select.multiselect_empty"):$!==void 0&&k<$?ne("select.multiselect_min",{min:String($)}):D!==void 0&&k>D?ne("select.multiselect_max",{max:String(D)}):void 0;if(B!==void 0)return hr(oe=>oe&&oe.kind==="select"?{...oe,error:B}:oe),!0;let ee=v.selectedIndices.slice().sort((oe,Ue)=>oe-Ue).map(oe=>v.options[oe]?.value).filter(oe=>typeof oe=="string"&&oe.length>0);Jd(ee)}else Jd(v.options[v.focusedIndex]?.value);return!0}if(/^[1-9]$/.test(d.sequence)){let v=Number.parseInt(d.sequence,10)-1;if(v>=0&&v<S)return x.multiSelect?hr(k=>{if(!k||k.kind!=="select")return k;let $=k.selectedIndices.includes(v)?k.selectedIndices.filter(D=>D!==v):[...k.selectedIndices,v];return{...k,focusedIndex:v,selectedIndices:$,error:void 0}}):hr(k=>k&&k.kind==="select"?{...k,focusedIndex:v,error:void 0}:k),!0}return!1}if(d.name==="return"){let S=Ed.current;if(!S||S.kind!=="input")return!1;let v=S.buffer.trim();return Jd(v===""?S.defaultValue??void 0:v),!0}return d.name==="backspace"||d.name==="delete"?(hr(S=>S&&S.kind==="input"?{...S,buffer:S.buffer.slice(0,-1),error:void 0}:S),!0):(d.insertable||d.isPasted===!0)&&!d.ctrl&&!d.meta?(hr(S=>S&&S.kind==="input"?{...S,buffer:S.buffer+d.sequence,error:void 0}:S),!0):!1},{isActive:!!He,priority:yn.Critical}),Be(()=>{if(n.messages.length>0&&I.length===0){if(n.uiHistory?.length){let d=Kr(n.uiHistory);d.length!==n.uiHistory.length&&(n.uiHistory=d),Y(Ru({messages:n.messages,uiHistory:d}));return}Y(Ru({messages:n.messages}))}},[n.messages,n.uiHistory,I.length,Y]),Be(()=>{lf(n.gitRoot)},[n.gitRoot]),Be(()=>{process.env.KODAX_PREWARM_REPO_INTELLIGENCE!=="0"&&IC({executionCwd:n.runtimeInfo?.executionCwd??n.gitRoot??process.cwd(),gitRoot:n.gitRoot??void 0},{mode:N.repoIntelligenceMode})},[n.gitRoot,n.runtimeInfo?.executionCwd,N.repoIntelligenceMode]);let xl=X(()=>({onMemoryOutcomeDigest:i((d,x)=>{if(d.sessionId!==n.sessionId){e.events?.onMemoryOutcomeDigest?.(d,x);return}n.lineage=pf(n.lineage??qe(n.messages),d,x?.jobId)},"onMemoryOutcomeDigest"),onMemoryReviewReceipt:i(d=>{if(d.sessionId!==void 0&&d.sessionId!==n.sessionId){e.events?.onMemoryReviewReceipt?.(d);return}n.lineage=mf(n.lineage??qe(n.messages),d)},"onMemoryReviewReceipt"),onMemoryNotice:i(d=>{if(d.sessionId!==void 0&&d.sessionId!==n.sessionId){e.events?.onMemoryNotice?.(d);return}let x=n.lineage??qe(n.messages),S=hf(x,{...d,createdAt:new Date().toISOString()});n.lineage=S,S!==x&&F({type:"info",text:`[memory] ${d.summaries.slice(0,3).join("; ")}`}),e.events?.onMemoryNotice?.(d)},"onMemoryNotice"),onThinkingDelta:i((d,x)=>{if(ct.current||zn(x,"thinking",d,{append:!0}))return;j.currentTool&&(Ce(void 0),Ke());let{header:S}=Wk(Fe()+d),v=S?`[Thinking: ${S}]`:"[Thinking]";Rt(Mm(pt.current?.activeWorkerTitle?`[${pt.current.activeWorkerTitle}] ${v}`:v,pt.current?.activeWorkerTitle)),we(d.length),$e(d),st.current.workerId&&Id("thinking",d)},"onThinkingDelta"),onThinkingEnd:i((d,x)=>{if(ct.current||zn(x,"thinking",d))return;let S=Fe(),v=Dk(S,d);v&&v!==S&&(se(),pe(),we(v.length),$e(v)),st.current.workerId&&Dw(v),Q()},"onThinkingEnd"),onTextDelta:i((d,x)=>{ct.current||zn(x,"assistant",d,{append:!0})||(j.currentTool&&(Ce(void 0),Ke()),Q(),Rt(void 0),he(d),st.current.workerId&&Id("assistant",d))},"onTextDelta"),onToolUseStart:i((d,x)=>{if(ct.current||zn(x,"tool",DR(d.name,d.input)))return;Er.current.includes(d.name)||(Er.current=[...Er.current,d.name]);let S=pt.current?.activeWorkerTitle?`[${pt.current.activeWorkerTitle}] `:"",v={id:d.id,name:`${S}${d.name}`,status:V.Executing,startTime:Date.now(),input:d.input};Bw(v),st.current.workerId&&mr(v),Rt(Ro(v,pt.current?.activeWorkerTitle))},"onToolUseStart"),onToolInputDelta:i((d,x,S)=>{if(ct.current||zn(S,"tool",d,{skipIfExisting:!0}))return;tt(x.length),Tt(x);let v=Fw(S?.toolId,d,k=>{let $=k.preview??"",D=$k(`${$}${x}`);return{...k,preview:D||void 0,input:k.input?D?{...k.input,preview:D}:{...k.input}:D?{preview:D}:void 0}});v&&(st.current.workerId&&mr(v),Rt(Ro(v,pt.current?.activeWorkerTitle)))},"onToolInputDelta"),onToolResult:i((d,x)=>{if(ct.current||zn(x,"tool",`${d.name} completed`))return;let S=typeof d.content=="string"?d.content:String(d.content??""),v=Ok(S);if(/^\[(?:Tool Error|Error)\]/.test(S)){let $=bd(d.id,V.Error,v,v,d.name);$&&(st.current.workerId&&mr($),Rt(Ro($,pt.current?.activeWorkerTitle)));return}if(/^\[(?:Cancelled|Blocked)\]/.test(S)){let $=bd(d.id,V.Cancelled,void 0,v,d.name);$&&(st.current.workerId&&mr($),Rt(Ro($,pt.current?.activeWorkerTitle)));return}let k=bd(d.id,V.Success,void 0,v||void 0,d.name);k&&(st.current.workerId&&mr(k),Rt(Ro(k,pt.current?.activeWorkerTitle)))},"onToolResult"),onToolProgress:i((d,x)=>{if(ct.current||zn(x,"progress",d.message))return;let S=d.message.length>100?d.message.slice(0,97)+"...":d.message,v=Ws(d.id,k=>({...k,preview:S,progressLines:[...(k.progressLines??[]).slice(-4),S]}));v&&st.current.workerId&&mr(v),Rt(S)},"onToolProgress"),onStreamEnd:i(d=>{if(ct.current||xm(d))return;let x=Qc(V.Cancelled,()=>({error:"Stream ended before the tool completed.",output:void 0})),S=x[x.length-1];st.current.workerId&&x.forEach(v=>mr(v)),S&&Rt(Ro(S,pt.current?.activeWorkerTitle)),Q(),Ke(),Ce(void 0)},"onStreamEnd"),onChildActivityEnd:i(d=>{Aw(d)},"onChildActivityEnd"),hasPendingInputs:i(()=>YT.current.length>0,"hasPendingInputs"),onMidTurnUserMessages:i(d=>{if(!ct.current)for(let x of d){let S=x.trim();S&&(st.current.workerId?Jt({id:`mid-turn-user-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,type:"user",text:S,timestamp:Date.now()}):F({type:"user",text:S}))}},"onMidTurnUserMessages"),onSidecarMessage:i(d=>{if(ct.current)return;let x=d.suggestedFix?`${d.content}
142
+ \u2192 ${ne(`confirm.result.${ee}`)}`;!!st.current.workerId?Jt({id:`confirm-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,type:"info",text:oe,timestamp:Date.now()}):F({type:"info",text:oe})},"recordConfirmResult");return x==="y"||x==="yes"?(B("approved"),el(null),io.current?.({confirmed:!0}),io.current=null,!0):S&&(x==="s"||x==="session")?(B("approved_session"),el(null),io.current?.({confirmed:!0,runtimeGrantKind:"session"}),io.current=null,!0):D&&(x==="a"||x==="always")?(B("approved_always"),el(null),io.current?.(v?{confirmed:!0,runtimeGrantKind:"persistent"}:{confirmed:!0,always:!0}),io.current=null,!0):x==="n"||x==="no"||d.name==="escape"?(B("denied"),el(null),io.current?.({confirmed:!1}),io.current=null,!0):d.insertable||d.name==="return"},{isActive:!!Xe,priority:yn.Critical});let Jd=X(d=>{hr(null),kd.current?.(d),kd.current=null},[]),lo=X((d,x,S,v)=>x.length===0?Promise.resolve(void 0):new Promise(k=>{kd.current=k,hr({kind:"select",title:d,options:x,buffer:"",focusedIndex:0,selectedIndices:[],multiSelect:S,minSelections:v?.minSelections,maxSelections:v?.maxSelections})}),[]),NP=X((d,x)=>lo(d,x.map(S=>({label:S,value:S}))).then(S=>Array.isArray(S)?S[0]:S),[lo]),DP=X(async d=>{let x=e.learning;if(!x)return;let S=d;if(!S){let D=await x.list({limit:200});if(D.items.length===0){Sh([{id:"learning-center-empty",text:"Learning Center has no learned capabilities.",tone:"accent"}]);return}let B=await lo("Learning Center \u2014 type to search",a2(D.items));S=Array.isArray(B)?B[0]:B}if(!S)return;let v=await x.get(S),k=await lo(`${v.displayName} \xB7 ${v.carrier} \xB7 ${v.lifecycle}`,s2(v)),$=Array.isArray(k)?k[0]:k;$&&(await c2(x,v.capabilityId,$),Tw(await x.getSnapshot()))},[e.learning,lo]),JT=X(async d=>{let x=d.options?Km(d.options):[],S=await lo(Vx(d),x,!1);return S===void 0?fa:Array.isArray(S)?S[0]??fa:S},[lo]);Be(()=>{let d=!1;return(async()=>{let{bindAskUserForConstruction:x}=await import("./construction-bootstrap-YTFOT4M2.js");d||x(JT)})(),()=>{d=!0,(async()=>{let{bindAskUserForConstruction:x}=await import("./construction-bootstrap-YTFOT4M2.js");x(null)})()}},[JT]);let Zs=X((d,x)=>new Promise(S=>{kd.current=v=>S(Array.isArray(v)?v[0]:v),hr({kind:"input",prompt:d,defaultValue:x,buffer:""})}),[]);Bn(d=>{let x=Ed.current;if(!x)return!1;if(d.name==="escape")return Jd(void 0),!0;if(x.kind==="select"){let S=x.options.length;if(d.name==="up"||d.sequence==="k")return hr(v=>v&&v.kind==="select"?{...v,focusedIndex:(v.focusedIndex-1+S)%S,error:void 0}:v),!0;if(d.name==="down"||d.sequence==="j")return hr(v=>v&&v.kind==="select"?{...v,focusedIndex:(v.focusedIndex+1)%S,error:void 0}:v),!0;if(d.sequence===" "&&x.multiSelect)return hr(v=>{if(!v||v.kind!=="select")return v;let k=v.focusedIndex,$=v.selectedIndices.includes(k)?v.selectedIndices.filter(D=>D!==k):[...v.selectedIndices,k];return{...v,selectedIndices:$,error:void 0}}),!0;if(d.name==="return"){let v=Ed.current;if(!v||v.kind!=="select")return!1;if(v.multiSelect){let k=v.selectedIndices.length,{minSelections:$,maxSelections:D}=v,B=k===0&&$!==0?ne("select.multiselect_empty"):$!==void 0&&k<$?ne("select.multiselect_min",{min:String($)}):D!==void 0&&k>D?ne("select.multiselect_max",{max:String(D)}):void 0;if(B!==void 0)return hr(oe=>oe&&oe.kind==="select"?{...oe,error:B}:oe),!0;let ee=v.selectedIndices.slice().sort((oe,Ue)=>oe-Ue).map(oe=>v.options[oe]?.value).filter(oe=>typeof oe=="string"&&oe.length>0);Jd(ee)}else Jd(v.options[v.focusedIndex]?.value);return!0}if(/^[1-9]$/.test(d.sequence)){let v=Number.parseInt(d.sequence,10)-1;if(v>=0&&v<S)return x.multiSelect?hr(k=>{if(!k||k.kind!=="select")return k;let $=k.selectedIndices.includes(v)?k.selectedIndices.filter(D=>D!==v):[...k.selectedIndices,v];return{...k,focusedIndex:v,selectedIndices:$,error:void 0}}):hr(k=>k&&k.kind==="select"?{...k,focusedIndex:v,error:void 0}:k),!0}return!1}if(d.name==="return"){let S=Ed.current;if(!S||S.kind!=="input")return!1;let v=S.buffer.trim();return Jd(v===""?S.defaultValue??void 0:v),!0}return d.name==="backspace"||d.name==="delete"?(hr(S=>S&&S.kind==="input"?{...S,buffer:S.buffer.slice(0,-1),error:void 0}:S),!0):(d.insertable||d.isPasted===!0)&&!d.ctrl&&!d.meta?(hr(S=>S&&S.kind==="input"?{...S,buffer:S.buffer+d.sequence,error:void 0}:S),!0):!1},{isActive:!!He,priority:yn.Critical}),Be(()=>{if(n.messages.length>0&&I.length===0){if(n.uiHistory?.length){let d=Kr(n.uiHistory);d.length!==n.uiHistory.length&&(n.uiHistory=d),Y(Ru({messages:n.messages,uiHistory:d}));return}Y(Ru({messages:n.messages}))}},[n.messages,n.uiHistory,I.length,Y]),Be(()=>{lf(n.gitRoot)},[n.gitRoot]),Be(()=>{process.env.KODAX_PREWARM_REPO_INTELLIGENCE!=="0"&&IC({executionCwd:n.runtimeInfo?.executionCwd??n.gitRoot??process.cwd(),gitRoot:n.gitRoot??void 0},{mode:N.repoIntelligenceMode})},[n.gitRoot,n.runtimeInfo?.executionCwd,N.repoIntelligenceMode]);let xl=X(()=>({onMemoryOutcomeDigest:i((d,x)=>{if(d.sessionId!==n.sessionId){e.events?.onMemoryOutcomeDigest?.(d,x);return}n.lineage=pf(n.lineage??qe(n.messages),d,x?.jobId)},"onMemoryOutcomeDigest"),onMemoryReviewReceipt:i(d=>{if(d.sessionId!==void 0&&d.sessionId!==n.sessionId){e.events?.onMemoryReviewReceipt?.(d);return}n.lineage=mf(n.lineage??qe(n.messages),d)},"onMemoryReviewReceipt"),onMemoryNotice:i(d=>{if(d.sessionId!==void 0&&d.sessionId!==n.sessionId){e.events?.onMemoryNotice?.(d);return}let x=n.lineage??qe(n.messages),S=hf(x,{...d,createdAt:new Date().toISOString()});n.lineage=S,S!==x&&F({type:"info",text:`[memory] ${d.summaries.slice(0,3).join("; ")}`}),e.events?.onMemoryNotice?.(d)},"onMemoryNotice"),onThinkingDelta:i((d,x)=>{if(ct.current||zn(x,"thinking",d,{append:!0}))return;j.currentTool&&(Ce(void 0),Ke());let{header:S}=Wk(Fe()+d),v=S?`[Thinking: ${S}]`:"[Thinking]";Rt(Mm(pt.current?.activeWorkerTitle?`[${pt.current.activeWorkerTitle}] ${v}`:v,pt.current?.activeWorkerTitle)),we(d.length),$e(d),st.current.workerId&&Id("thinking",d)},"onThinkingDelta"),onThinkingEnd:i((d,x)=>{if(ct.current||zn(x,"thinking",d))return;let S=Fe(),v=Dk(S,d);v&&v!==S&&(se(),pe(),we(v.length),$e(v)),st.current.workerId&&Dw(v),Q()},"onThinkingEnd"),onTextDelta:i((d,x)=>{ct.current||zn(x,"assistant",d,{append:!0})||(j.currentTool&&(Ce(void 0),Ke()),Q(),Rt(void 0),he(d),st.current.workerId&&Id("assistant",d))},"onTextDelta"),onToolUseStart:i((d,x)=>{if(ct.current||zn(x,"tool",DR(d.name,d.input)))return;Er.current.includes(d.name)||(Er.current=[...Er.current,d.name]);let S=pt.current?.activeWorkerTitle?`[${pt.current.activeWorkerTitle}] `:"",v={id:d.id,name:`${S}${d.name}`,status:V.Executing,startTime:Date.now(),input:d.input};Bw(v),st.current.workerId&&mr(v),Rt(Ro(v,pt.current?.activeWorkerTitle))},"onToolUseStart"),onToolInputDelta:i((d,x,S)=>{if(ct.current||zn(S,"tool",d,{skipIfExisting:!0}))return;tt(x.length),Tt(x);let v=Fw(S?.toolId,d,k=>{let $=k.preview??"",D=$k(`${$}${x}`);return{...k,preview:D||void 0,input:k.input?D?{...k.input,preview:D}:{...k.input}:D?{preview:D}:void 0}});v&&(st.current.workerId&&mr(v),Rt(Ro(v,pt.current?.activeWorkerTitle)))},"onToolInputDelta"),onToolResult:i((d,x)=>{if(ct.current||zn(x,"tool",`${d.name} completed`))return;let S=typeof d.content=="string"?d.content:String(d.content??""),v=Ok(S);if(/^\[(?:Tool Error|Error)\]/.test(S)){let $=bd(d.id,V.Error,v,v,d.name);$&&(st.current.workerId&&mr($),Rt(Ro($,pt.current?.activeWorkerTitle)));return}if(/^\[(?:Cancelled|Blocked)\]/.test(S)){let $=bd(d.id,V.Cancelled,void 0,v,d.name);$&&(st.current.workerId&&mr($),Rt(Ro($,pt.current?.activeWorkerTitle)));return}let k=bd(d.id,V.Success,void 0,v||void 0,d.name);k&&(st.current.workerId&&mr(k),Rt(Ro(k,pt.current?.activeWorkerTitle)))},"onToolResult"),onToolProgress:i((d,x)=>{if(ct.current||zn(x,"progress",d.message))return;let S=d.message.length>100?d.message.slice(0,97)+"...":d.message,v=Ws(d.id,k=>({...k,preview:S,progressLines:[...(k.progressLines??[]).slice(-4),S]}));v&&st.current.workerId&&mr(v),Rt(S)},"onToolProgress"),onStreamEnd:i(d=>{if(ct.current||xm(d))return;let x=Qc(V.Cancelled,()=>({error:"Stream ended before the tool completed.",output:void 0})),S=x[x.length-1];st.current.workerId&&x.forEach(v=>mr(v)),S&&Rt(Ro(S,pt.current?.activeWorkerTitle)),Q(),Ke(),Ce(void 0)},"onStreamEnd"),onChildActivityEnd:i(d=>{Aw(d)},"onChildActivityEnd"),hasPendingInputs:i(()=>YT.current.length>0,"hasPendingInputs"),onMidTurnUserMessages:i(d=>{if(!ct.current)for(let x of d){let S=x.trim();S&&(st.current.workerId?Jt({id:`mid-turn-user-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,type:"user",text:S,timestamp:Date.now()}):F({type:"user",text:S}))}},"onMidTurnUserMessages"),onSidecarMessage:i(d=>{if(ct.current)return;let x=d.suggestedFix?`${d.content}
143
143
  Suggested fix: ${d.suggestedFix}`:d.content;if(d.delivery==="budget-exhausted")Ow({type:"sidecar",text:x,delivery:"budget-exhausted"},"sidecar-message");else{let S=d.verdict==="blocked"?"blocked":"revise";Ow({type:"sidecar",text:x,verdict:S},"sidecar-message")}gd.current=!0},"onSidecarMessage"),onError:i(d=>{let x=Oo();x?.name&&Rt(Ro(x,pt.current?.activeWorkerTitle));let S=Qc(V.Error,()=>({error:d.message,output:void 0})),v=S[S.length-1];st.current.workerId&&S.forEach(Ue=>mr(Ue)),v&&Rt(Ro(v,pt.current?.activeWorkerTitle));let k=TC(d),$=["Transient","Permanent","Tool Call ID","User Abort"];if(k.category===Tl.USER_ABORT)return;let B=[`\u274C API Error (${$[k.category]||"Unknown"}): ${d.message}`];k.shouldCleanup&&B.push(" \u{1F9F9} Cleaned incomplete tool calls"),k.category===Tl.PERMANENT?(B.push(" \u{1F4A1} This error requires manual intervention. Please check:"),d.message.includes("auth")||d.message.includes("401")?(B.push(" - Your API key is valid"),B.push(" - Run /config to check provider settings")):d.message.includes("400")?(B.push(" - The request parameters are correct"),B.push(" - Try restarting the conversation")):B.push(" - The error details above")):k.category===Tl.TRANSIENT?B.push(" \u23F3 Retries exhausted. Press Enter to continue the conversation"):k.category===Tl.TOOL_CALL_ID&&B.push(" \u2705 Session cleaned, ready to continue");let ee=B.join(`
144
144
  `);!!st.current.workerId?Jt({id:`error-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,type:"error",text:ee,timestamp:Date.now()}):F({type:"error",text:ee})},"onError"),onRetry:i((d,x,S,v)=>{if(ct.current)return;let k=ku(d,x,S);if(Kc(v,k.text)||zn(v,"progress",k.text))return;!!st.current.workerId?Jt({...k,id:`retry-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,timestamp:Date.now()}):F(k)},"onRetry"),onProviderRecovery:i((d,x)=>{if(ct.current)return;let S=Eu(d);if(Kc(x,S.text)||zn(x,"progress",S.text))return;let v=!!st.current.workerId,k=G().trim();k&&(v?Id("assistant",k):F({type:"assistant",text:k})),Ve(),se(),Q(),Ke(),Ce(void 0),No(),Rt(void 0),v?Jt({...S,id:`recovery-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,timestamp:Date.now()}):F(S)},"onProviderRecovery"),onManagedTaskStatus:i(d=>{if(ct.current)return;let x=st.current;if(f_(d)){if(x.workerId&&x.workerId!==d.activeWorkerId)xP({workerId:d.activeWorkerId,workerTitle:d.activeWorkerTitle});else if(x.workerId!==d.activeWorkerId){let D=Ct.current,B=D.activeToolGroupTools.some(ee=>ee.status===V.Executing);Ct.current={workerId:d.activeWorkerId,workerTitle:d.activeWorkerTitle,...B?{activeToolGroupItemId:D.activeToolGroupItemId,activeToolGroupTools:D.activeToolGroupTools}:{activeToolGroupTools:[]}},st.current={workerId:d.activeWorkerId,workerTitle:d.activeWorkerTitle}}}pt.current=d,fd(d);let S=Fk(d);SP(S);let v=hc(d),$=hc(d,{expanded:!0})??v;$&&(hd.current=$)},"onManagedTaskStatus"),onProviderRateLimit:i((d,x,S,v)=>{if(ct.current)return;let k=ng.current;if(ng.current=null,Ek(k,{attempt:d,maxAttempts:x,delayMs:S}))return;let $=`[Rate Limit] Retrying in ${S/1e3}s (${d}/${x})...`;Kc(v,$)||zn(v,"progress",$)||An({type:"info",icon:"\u23F3",text:$},"ratelimit")},"onProviderRateLimit"),onRetryAfter:i((d,x)=>{if(ct.current)return;ng.current={attempt:d.attempt,maxAttempts:d.maxAttempts,waitMs:d.waitMs};let S=Math.round(d.waitMs/1e3),v=d.source==="exponential-backoff"?"no-header \u2192 backoff":d.source,$=`[${d.reason==="overloaded"?"Overloaded":"Rate limited"}] (${d.provider}) \u2014 retrying in ${S}s [${v}] (${d.attempt}/${d.maxAttempts})`;Kc(x,$)||zn(x,"progress",$)||An({type:"info",icon:"\u23F3",text:$},"ratelimit")},"onRetryAfter"),onReasoningEffortRejected:i(d=>{lC(d.provider,d.model,d.effort,"observed",new Date().toISOString());let S=Ui({provider:d.provider,model:d.model,effort:It.current.effort,effortOverride:It.current.effortOverride,permissionMode:It.current.permissionMode,planModeEffort:It.current.planModeEffort,thinking:It.current.thinking,reasoningMode:It.current.reasoningMode}).runtimeEffort;Ae(v=>({...v,effort:S,effortOverride:S!==void 0})),Gi({effort:S}),Oe.current.effort=S,An({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${S?`,\u5DF2\u5207\u5230 ${S}`:""}]`},"ratelimit")},"onReasoningEffortRejected"),onRepoIntelligenceTrace:i(d=>{ct.current||An(eE(d),"repointel-trace")},"onRepoIntelligenceTrace"),onTodoUpdate:i(d=>{ct.current||no(d)},"onTodoUpdate"),onScoutSuspiciousCompletion:i(d=>{ct.current||p_&&An({type:"info",icon:"\u26A0",text:`[Scout] Completion marked uncertain \u2014 signals: ${d.signals.join(", ")}. Verify the result before continuing.`},"scout-uncertain")},"onScoutSuspiciousCompletion"),onIterationStart:i((d,x)=>{if(ct.current)return;if(x&&qt(x),pt.current?.globalWorkBudget){let oe={...pt.current,budgetUsage:Math.min(pt.current.globalWorkBudget,(pt.current.budgetUsage??0)+1)};pt.current=oe,fd(oe)}let S=d>1?Fe().trim():"",v=d>1?eS(G()):"",k=d>1?[...Er.current]:[],$=d>1?[...cn.current]:[],D=!!st.current.workerId;yt(d),D&&wd({clearOwner:!1});let B=ro.current.filter(oe=>oe.status===V.Executing),ee=new Set(B.map(oe=>oe.id));if(Er.current=[],cn.current=cn.current.filter(oe=>ee.has(oe.id)),Kn(B),Ke(),Ce(void 0),Rt(Mm(pt.current?.activeWorkerTitle?`[Thinking] [${pt.current.activeWorkerTitle}]`:void 0,pt.current?.activeWorkerTitle)),pe(),d>1&&!D){let oe=tS({thinking:S,response:v,toolCalls:$,toolNames:k});_s.current?_s.current(oe):Y([...oe])}},"onIterationStart"),beforeToolExecute:i(async(d,x)=>{let S=$n.current,v=ga(S),k=KT.current,$=n.gitRoot;if(vf(S,jh))return!0;if(WC(O.current,d,x))return`[Skipped] Previously denied operation. ${jC(O.current)}`;if(S==="plan"&&(ho.has(d)||d==="undo"))return`[Blocked] Tool '${d}' is not allowed in plan mode (read-only). ${l_}`;if(S==="plan"&&d==="bash"){let D=x.command??"";if(go(D))return`[Blocked] Bash write operation not allowed in plan mode: ${D.slice(0,50)}... ${l_}`}if(d==="bash"){let D=x.command??"";if(ha(D,$??process.cwd(),n.runtimeInfo?.executionCwd??$??process.cwd()))return!0}if(d==="bash"){let D=x.command??"",B=DC(D);if(B.level==="dangerous"){let ee=await uo(d,{...x,_dangerousCommand:!0});return ee.confirmed?ee.confirmed:(O.current=yg(O.current,d,x,B.reason),`[Blocked] Dangerous command requires confirmation: ${B.reason}`)}}if($){let D=!1;if(ho.has(d)){let B=x.path;B&&ma(B,$)&&(D=!0)}if(d==="bash"){let B=x.command;B&&Sf(B,$)&&(D=!0)}if(D){let B=await uo(d,{...x,_alwaysConfirm:!0});if($n.current==="plan"&&(ho.has(d)||d==="undo"))return!1;if($n.current==="plan"&&d==="bash"){let ee=x.command??"";if(go(ee))return!1}return B.confirmed}}if(v.has(d)){if(S==="accept-edits"&&d==="bash"&&await pa(d,x,k,eg.current??void 0))return!0;let D=await uo(d,x);if($n.current==="plan"&&(ho.has(d)||d==="undo"))return!1;if($n.current==="plan"&&d==="bash"){let B=x.command??"";if(go(B))return!1}if(!D.confirmed)return F({type:"info",text:ne("cancelled")}),O.current=yg(O.current,d,x),!1;D.always&&S==="accept-edits"&&(Af(d,x,!1),KT.current=ba())}return!0},"beforeToolExecute"),askUser:i(async d=>{let x=Gx(d.options?Km(d.options):[],d),S=await lo(Vx(d),x,d.multiSelect,{minSelections:d.minSelections,maxSelections:d.maxSelections});if(S===void 0)return fa;if(S===Pr){let v=await Zs(d.customInputPrompt??d.question,d.customInputDefault);return v===void 0?fa:{kind:"customInput",value:v}}if(Array.isArray(S)&&S.includes(Pr)){let v=await Zs(d.customInputPrompt??d.question,d.customInputDefault);return v===void 0?fa:S.map(k=>k===Pr?{kind:"customInput",value:v}:k)}return S},"askUser"),exitPlanMode:i(async d=>$n.current!=="plan"?"not-in-plan-mode":(await uo("exit_plan_mode",{plan:d})).confirmed?(tg("accept-edits"),!0):!1,"exitPlanMode"),askUserMulti:i(async d=>{let x=d.questions,S={},v=0;for(;v<x.length;){let k=x[v],$=Gx(Km(k.options),k);v>0&&$.push({label:ne("select.back_prev"),value:lg});let D=`[${v+1}/${x.length}] ${k.question}`,B=await lo(D,$,k.multiSelect,{minSelections:k.minSelections,maxSelections:k.maxSelections});if(B===void 0)return;if(!Array.isArray(B)&&B===lg){v--;continue}if(!Array.isArray(B)&&B===Pr){let ee=await Zs(k.customInputPrompt??k.question,k.customInputDefault);if(ee===void 0)return;S[k.question]={kind:"customInput",value:ee},v++;continue}if(Array.isArray(B)&&B.includes(Pr)){let ee=await Zs(k.customInputPrompt??k.question,k.customInputDefault);if(ee===void 0)return;S[k.question]=B.map(oe=>oe===Pr?{kind:"customInput",value:ee}:oe),v++;continue}S[k.question]=B,v++}return S},"askUserMulti"),askUserInput:i(async d=>Zs(d.question,d.default),"askUserInput"),onCompactStart:i(()=>{Ye()},"onCompactStart"),onCompactStats:i(d=>{Bc.current=d.tokensBefore,lr(d.tokensAfter)},"onCompactStats"),onCompactedMessages:i(async(d,x,S)=>{let v=Rm(n.lineage,d,x,S);if(!v)return;n.messages=d,x?.artifactLedger&&x.artifactLedger.length>0&&(n.artifactLedger=Fi(n.artifactLedger??[],x.artifactLedger),n.sessionSnapshotDirty=!0),n.lineage=v;let k=Di(d);if(n.contextTokenSnapshot={currentTokens:k,baselineEstimatedTokens:k,source:"estimate"},vr(n),lr(k),e.runtimeRunner){n.lineage===v&&(n.lineage=ca(v));return}let $=nd.current;if(!$)throw new Error("Ink REPL compaction persistence is not initialized.");try{await $(),n.lineage===v&&(n.lineage=ca(v))}catch(D){throw mt({source:"repl:compaction",level:"error",message:"Failed to durably persist compacted session history.",detail:D}),D}},"onCompactedMessages"),onCompact:i(d=>{Mt();let x=Bc.current??d;Bc.current=null;let S=Math.round(x/1e3);An({type:"info",icon:"\u2728",text:`Context auto-compacted (was ~${S}k tokens)`},"compact")},"onCompact"),onCompactEnd:i(()=>{Bc.current=null,Mt()},"onCompactEnd"),onIterationEnd:i(d=>{d.scope!=="worker"&&(n.contextTokenSnapshot=d.contextTokenSnapshot),lr(d.tokenCount)},"onIterationEnd")}),[we,$e,Q,he,Ce,tt,Tt,Ke,yt,pe,N,n,Ye,Mt,F,se,Fe,G,wd,Rt,Id,Dw,mr,Bw,Fw,bd,Qc,Oo,No,Kn,Aw,Kc,zn,An,j.currentTool]),uo=i((d,x,S)=>{let v=Pk(d,x),k=S?.map(B=>B.label)??[],$=S===void 0?[]:[cc,...k.map(B=>`Runtime scope: ${B}`)],D=$.length>0?`${v}
145
145
  ${$.join(`
@@ -171,7 +171,7 @@ Suggestion: Set the required API key environment variable`:ge.message.includes("
171
171
  Suggestion: Check your internet connection`:(ge.message.includes("token")||ge.message.includes("context too long"))&&(Jn=`[Context Error] ${ge.message}
172
172
  Suggestion: Use /clear to start fresh`),console.log=po,st.current.workerId?Jt({id:`error-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,type:"error",text:Jn,timestamp:Date.now()}):qn([{type:"error",text:Jn}]),jf({error:ge,messageCount:n.messages.length})){let yr={type:"info",text:Ml};if(st.current.workerId?(Jt({id:`recover-hint-${Date.now()}-${Math.random().toString(36).slice(2,7)}`,...yr,timestamp:Date.now()}),Qd([yr])):qn([yr]),(await uo("confirm",{_alwaysConfirm:!0,_message:Wf})).confirmed)try{await ZT(tn)}catch(Lr){let oa=Lr instanceof Error?Lr.message:String(Lr);qn([{type:"error",text:`[Recover failed] ${oa}`}])}}}}finally{if(console.log=po,Oi.length>0){let ge=Oi.filter((Jn,yr,jo)=>jo.indexOf(Jn)===yr),Nn=Qx(ge);Nn&&F({type:"info",text:Nn})}if(!ct.current){let ge=Qc(V.Cancelled,()=>({error:"Run ended before the tool result was observed.",output:void 0}));ge.length>0&&st.current.workerId&&ge.forEach(Nn=>mr(Nn))}Z(!1),me(),Ve(),Ph(),se();let be=Di(n.messages);n.contextTokenSnapshot={currentTokens:be,baselineEstimatedTokens:be,source:"estimate"},lr(be)}},[eo,n,N,xh,j.pendingInputs.length,o,Xe,He,T,l,F,re,de,me,Ve,xl,eC,Re,G,Fe,Jt,ta,qn,ig,Sl,fo,Qd,On,ra,og,Ye,Mt,No,Ph,Qc,mr,Mi,Gc,Vc]),tC=Vt.shouldRender?fe(A,{paddingX:1,children:fe(yk,{viewModel:Vt})}):void 0,nC=H&&ao.shouldRender?fe(A,{paddingX:1,children:fe(mk,{viewModel:ao})}):void 0,rC=nT?fe(A,{paddingX:1,children:fe(wm,{viewModel:Bh})}):void 0,jP=tC||nC||rC?En(A,{flexDirection:"column",children:[nC,tC,rC]}):void 0,oC=Vt.shouldRender?Vt.counterText:void 0,UP=fe(fu,{left:fe(uu,{items:xT}),right:fe(du,{items:ST}),queued:fe(gm,{pendingInputs:j.pendingInputs}),stashNotice:fe(Su,{text:jd}),notifications:fe(xu,{notifications:Wd}),inlineNotices:Kh.length>0?fe(ym,{notices:Kh}):void 0,activityBar:co?En(A,{paddingX:1,flexDirection:"row",children:[En(A,{flexGrow:1,children:[co?.showSpinner?fe(Fn,{color:ce("dark").colors.accent}):null,co?En(R,{color:co.kind==="waiting"?ce("dark").colors.warning:ce("dark").colors.accent,wrap:"truncate",children:[co.showSpinner?" ":"",co.text]}):null,co?.showSpinner&&j.roundStartedAt!=null?fe(g0,{roundStartedAt:j.roundStartedAt,charCount:j.currentResponse.length,theme:ce("dark")}):null]}),oC?fe(R,{dimColor:!0,wrap:"truncate",children:oC}):H&&ao.shouldRender?fe(R,{dimColor:!0,wrap:"truncate",children:Sk(ao)}):null]}):void 0,todoSurface:jP,composer:fe(lm,{onSubmit:WP,onHistoryRecall:HP,onPopPendingInputs:i(()=>{let d=U();if(d.length!==0)return d.join(`
173
173
  ---
174
- `)},"onPopPendingInputs"),prompt:">",placeholder:OM({isLoading:H,canQueueFollowUps:xh,waitingReason:Uh}),focus:!Xe&&!He&&!xt,cwd:process.cwd(),gitRoot:e.context?.gitRoot||n.gitRoot,onInputChange:TP,onPasteFallback:AP}),inlineSuggestions:MP,helpSurface:Hw?fe(dm,{sections:Nm()}):void 0,taskBar:ll?fe(wu,{items:Ks.backgroundTask.items,overflowLabel:Ks.backgroundTask.overflowLabel,ctaHint:Ks.backgroundTask.ctaHint,showSpinner:H}):void 0,statusLine:fe(A,{children:fe(us,{...Fd,viewModel:gT})}),inlineDialogs:LP}),GP=fe(fu,{left:fe(uu,{items:xT}),right:fe(du,{items:ST}),stashNotice:fe(Su,{text:jd}),notifications:fe(xu,{notifications:Wd}),composer:fe(uk,{searchActive:xt,selectionActive:!!(so||at),showAllActive:Gt,searchQuery:hn,searchCurrent:Kt.length>0?Fo+1:0,searchCount:Kt.length,searchDetailText:Wh,pendingLiveUpdates:rl,secondaryText:kP}),taskBar:ll?fe(wu,{items:Ks.backgroundTask.items,overflowLabel:Ks.backgroundTask.overflowLabel,ctaHint:Ks.backgroundTask.ctaHint,showSpinner:St}):void 0,statusLine:fe(A,{children:fe(us,{...Fd,viewModel:Gh})})}),sg=X(d=>fe(dk,{banner:d?.bannerVisible?fe(Zx,{...Ai}):void 0,items:il,isLoading:gn,viewportRows:en.messageRows,viewportWidth:te,scrollOffset:ur,windowed:!!d?.rendererWindow,rendererWindow:d?.rendererWindow,transcriptModel:d?.rendererWindow?al:PT,maxLines:Dt,selectedTextRanges:Nh?dd?.rowRanges:void 0,onMetricsChange:Gd,onVisibleRowsChange:Vd}),[Ai,il,gn,Gd,Vd,ur,PT,te,Dt,dd?.rowRanges,en.messageRows,Nh]),ag=X(d=>fe(fk,{banner:d?.bannerVisible?fe(Zx,{...Ai}):void 0,items:ol,browse:{hintText:Ho.browseHintText},selection:Ud,search:uT,isLoading:St,isThinking:Me.isThinking,thinkingCharCount:Me.thinkingCharCount,thinkingContent:Me.thinkingContent,streamingResponse:Me.currentResponse,currentTool:Me.currentTool,activeToolCalls:Me.activeToolCalls,toolInputCharCount:Me.toolInputCharCount,toolInputContent:Me.toolInputContent,iterationHistory:Me.iterationHistory,currentIteration:Me.currentIteration,isCompacting:Me.isCompacting,agentMode:N.agentMode,managedPhase:St?J?.phase:void 0,managedHarnessProfile:St?J?.harnessProfile:void 0,managedWorkerTitle:St?J?.activeWorkerTitle:void 0,managedRound:St?J?.currentRound:void 0,managedMaxRounds:St?J?.maxRounds:void 0,managedGlobalWorkBudget:St?J?.globalWorkBudget:void 0,managedBudgetUsage:St?J?.budgetUsage:void 0,managedBudgetApprovalRequired:St?J?.budgetApprovalRequired:void 0,lastLiveActivityLabel:Me.lastLiveActivityLabel,liveStatusLines:Gs,viewportRows:en.messageRows,viewportWidth:te,scrollOffset:ur,windowed:!!d?.windowed,animateSpinners:!!d?.rendererWindow&&Ys,rendererWindow:d?.rendererWindow,transcriptModel:d?.rendererWindow?al:Pd,maxLines:Dt,showDetailedTools:Gt,showAllContent:Gt,selectedItemId:Yn.selectionEnabled?at:void 0,selectedTextRanges:to?.rowRanges,expandedItemKeys:Yn.selectionEnabled?_n:void 0,onMetricsChange:Gd,onVisibleRowsChange:Vd}),[Ai,N.agentMode,St,_n,c.transcriptSpinnerAnimation,Gd,Vd,ur,Xw,J?.activeWorkerTitle,J?.budgetApprovalRequired,J?.budgetUsage,J?.currentRound,J?.globalWorkBudget,J?.harnessProfile,J?.maxRounds,J?.phase,al,Pd,Ho.browseHintText,at,Ud,te,Ys,ol,Dt,Me.activeToolCalls,Me.currentIteration,Me.currentResponse,Me.currentTool,Me.isCompacting,Me.isThinking,Me.iterationHistory,Me.lastLiveActivityLabel,Me.thinkingCharCount,Me.thinkingContent,Me.toolInputCharCount,Me.toolInputContent,Gs,to?.rowRanges,uT,Gt,en.messageRows]),VP=ue?ag({bannerVisible:!1,windowed:Bt}):sg({bannerVisible:!1}),iC=ue?GP:UP,KP=c.enabled&&_i,sC=En(A,{flexDirection:"column",width:te,flexShrink:0,flexGrow:KP?1:0,children:[fe(hx,{currentConfig:N,setCurrentConfig:Ae,isLoading:H,abort:ke,stopThinking:Q,clearThinkingContent:se,setCurrentTool:Ce,setIsLoading:Z,onToggleHelp:wP,setShowHelp:Ww,onSetThinking:i(d=>{Oe.current.thinking=d},"onSetThinking"),onSetReasoningMode:i(d=>{Oe.current.reasoningMode=d,Oe.current.thinking=d!=="off"},"onSetReasoningMode"),onToggleTranscriptMode:PP,onOpenTranscriptSearch:qh,canOpenTranscriptSearch:ue&&!Xe&&!He,isInteractiveDialogActive:!!(Xe||He),onSetAgentMode:i(d=>{Oe.current.agentMode=d},"onSetAgentMode"),onSetPermissionMode:i(d=>{tg(d)},"onSetPermissionMode"),isInputEmpty:Wc,onSavePermissionMode:_I}),cr&&(c.enabled?null:fe(Wa,{items:[1],children:i(()=>fe(Zx,{...Ai},"banner"),"children")})),_i?fe(im,{width:te,stickyHeader:Ho.stickyHeader,jumpToLatest:Ho.jumpToLatest,transcript:!c.enabled||!Bt?ue?ag({bannerVisible:!1}):sg({bannerVisible:!1}):void 0,renderTranscriptWindow:c.enabled&&Bt?d=>(()=>{let S=pl(d).contentWindow;return ue?ag({bannerVisible:!1,windowed:!0,rendererWindow:S}):sg({bannerVisible:!1,rendererWindow:S})})():void 0,overlay:Zh,scrollTop:ur,scrollHeight:fl,viewportHeight:en.messageRows,stickyScroll:!ue&&!Mr&&Ih,overscanRows:I2,scrollRef:sP,onWindowChange:_P,onScrollTopChange:cP,onStickyChange:lP,footer:iC}):En(o2,{children:[En(A,{flexDirection:"column",flexGrow:1,children:[VP,Zh?fe(A,{position:"absolute",bottom:0,left:0,right:0,flexDirection:"column",children:Zh}):null]}),iC]})]});return Oh?fe(sy,{mouseTracking:Do.usesRendererMouseTracking,children:sC}):sC},"InkREPLInner"),E2=i(e=>{let t=process.cwd(),n=e.options?.context?.gitRoot??void 0;return fe(hu,{children:fe(Iu,{getPendingInputAgentId:i(()=>ef(e.context.sessionId,"/root"),"getPendingInputAgentId"),children:fe(Ql,{children:fe(px,{children:fe(Ap,{cwd:t,gitRoot:n,children:fe(k2,{...e})})})})})})},"InkREPL");function M2(){return process.stdin.isTTY===!0&&typeof process.stdin.setRawMode=="function"}i(M2,"isRawModeSupported");async function Xm(e){if(!M2())throw new hg("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 ms,n=qo(),r=Jo(),o=Qo(n,r),{prepareRuntimeConfig:s}=await import("./utils-KFLK3EHJ.js"),{loadCompactionConfig:a}=await import("./compaction-config-3WLLNN57.js"),{resolveProvider:c}=await import("./dist-NFLLOZWF.js"),l=s(),u=Sa({explicitProvider:e.provider,environmentProvider:process.env.KODAX_PROVIDER,configuredProvider:l.provider,defaultProvider:Zd}),f=wa({explicitProvider:e.provider,environmentProvider:process.env.KODAX_PROVIDER,explicitModel:e.model,configuredProvider:l.provider,configuredModel:l.model}),p=f2(e,l),h=Ta({explicitEffort:e.effort,environmentEffort:process.env.KODAX_EFFORT,configuredEffort:l.effort}),m=Mf(e,l,process.env.KODAX_EFFORT),g=e.agentMode??l.agentMode??"ama",T=p!=="off",w=ya(l.permissionMode,"accept-edits")??"accept-edits",C=xf(),b=l.repoIntelligenceTrace===!0,_={provider:u,model:f,effort:h,effortOverride:m,planModeEffort:l.planModeEffort,thinking:T,reasoningMode:p,agentMode:g,permissionMode:w,repoIntelligenceMode:C.mode,repoIntelligenceTrace:b},M=e.session?.id,E=[],I,W,O,F,Y,re="",q=await Nr({cwd:process.cwd()}),y=q.workspaceRoot??void 0,L=q,te=y,j=sf({meta:{cwd:process.cwd(),startedAt:Date.now()}});if(j){let Q=i(()=>{j.shutdown()},"teamModeCleanup");process.on("exit",Q),process.on("SIGTERM",Q)}try{let{bootstrapConstructionRuntime:Q}=await import("./construction-bootstrap-CZ6NWEWQ.js"),se=await Q(y??process.cwd());if(se.loaded>0||se.failed>0||se.tampered>0){let Ce=se.failed>0?`; ${se.failed} failed`:"",tt=se.tampered>0?`; ${se.tampered} skipped due to manifest contentHash mismatch \u2014 re-stage and re-activate to re-approve`:"";mt({source:"repl:construction",level:se.failed>0||se.tampered>0?"warn":"info",message:`Rehydrated ${se.loaded} active tool(s)${Ce}${tt}.`})}if(se.markdownLoaded>0||se.markdownFailures.length>0){mt({source:"repl:agents",level:se.markdownFailures.length>0?"warn":"info",message:`Loaded ${se.markdownLoaded} markdown agent(s).`});for(let Ce of se.markdownFailures)mt({source:"repl:agents",level:"warn",message:`Skipped markdown agent ${Ce.path}: ${Ce.reason}`})}}catch(Q){mt({source:"repl:construction",level:"warn",message:`Bootstrap failed: ${Q.message}. Self-construction disabled this session.`})}let ae;try{let Q=await a(y),se=c(u);ae={contextWindow:Q.contextWindow??se.getContextWindow?.()??2e5,triggerPercent:Q.triggerPercent,triggerTokens:Q.triggerTokens,enabled:Q.enabled,reservedResponseTokens:se.getEffectiveMaxOutputTokens?.(f),userOverrideContextWindow:Q.contextWindow}}catch{}if(e.session?.id&&!e.session.resume){let Q=await t.load(e.session.id);Q&&(E=Q.messages,I=di(Q.uiHistory),W=Q.lineage,O=Q.artifactLedger,F=Q.extensionState,Y=Q.extensionRecords,re=Q.title,M=e.session.id,L=Cn(Q)??q,te=L.workspaceRoot??void 0,e={...e,session:{...e.session??{},id:M,tag:Q.tag}},console.log(ht.green(`[Session loaded: ${M}]`)))}else if(e.session?.resume||e.session?.autoResume){let Q=await fc(t,y);if(Q){let se=await t.load(Q.id);se&&(E=se.messages,I=di(se.uiHistory),W=se.lineage,O=se.artifactLedger,F=se.extensionState,Y=se.extensionRecords,re=se.title,M=Q.id,L=Cn(se)??q,te=L.workspaceRoot??void 0,e={...e,session:{...e.session??{},id:M,tag:se.tag}},console.log(ht.green(`[Continuing session: ${Q.id}]`)))}}let de=await uc({sessionId:M,gitRoot:te,runtimeInfo:L,existingMessages:E,existingUiHistory:I,existingLineage:W,existingArtifactLedger:O,existingExtensionState:F,existingExtensionRecords:Y});de.title=re,e={...e,context:{...e.context,gitRoot:de.gitRoot??void 0,executionCwd:de.runtimeInfo?.executionCwd??de.gitRoot??process.cwd()}},j?.writer.update({sessionId:de.sessionId});let me={current:null},ke={current:null},pe={current:_},we=va(),$e=await dc({askUser:i(async(Q,se,Ce)=>{let tt=me.current;return tt?tt(Q,se,Ce):"block"},"askUser"),projectRoot:y??process.cwd(),executionCwd:L.executionCwd??y??process.cwd(),getCurrentProviderName:i(()=>pe.current.provider,"getCurrentProviderName"),getCurrentModel:i(()=>pe.current.model,"getCurrentModel"),getCurrentPermissionMode:i(()=>pe.current.permissionMode,"getCurrentPermissionMode"),autoModeSettings:we,log:i((Q,se)=>{mt({source:"repl:auto-mode",level:Q==="warn"?"warn":"info",message:se})},"log"),onEngineChange:i(Q=>{ke.current?.(Q)},"onEngineChange"),extraCollectors:[Ia]});try{let Q=process.stdout,se=process.stdin,Ce=!1,{waitUntilExit:tt,cleanup:Tt}=Ha(fe(E2,{options:e,config:_,context:de,startupRuntimeInfo:q,storage:t,autoModeSettings:lc(we),compactionInfo:ae,rendererMode:r,fullscreenPolicy:o,autoModeBootstrap:$e,setAutoModeAskUser:i(Ve=>{me.current=Ve},"setAutoModeAskUser"),setAutoModeEngineChange:i(Ve=>{ke.current=Ve},"setAutoModeEngineChange"),setCurrentConfigRef:i(Ve=>{pe.current=Ve},"setCurrentConfigRef"),teamModeHandle:j,onExit:i(()=>{Ce=!0},"onExit")}),{stdout:Q,stdin:se,exitOnCtrlC:!1,patchConsole:!1,maxFps:30,shellMode:o.enabled?o.promptShell:"main-screen"});await tt(),Tt(),j?.shutdown(),se.isTTY===!0&&typeof se.setRawMode=="function"&&se.isRaw&&se.setRawMode(!1),se.pause?.(),se.unref?.(),Ce&&console.log(ht.dim(`
174
+ `)},"onPopPendingInputs"),prompt:">",placeholder:OM({isLoading:H,canQueueFollowUps:xh,waitingReason:Uh}),focus:!Xe&&!He&&!xt,cwd:process.cwd(),gitRoot:e.context?.gitRoot||n.gitRoot,onInputChange:TP,onPasteFallback:AP}),inlineSuggestions:MP,helpSurface:Hw?fe(dm,{sections:Nm()}):void 0,taskBar:ll?fe(wu,{items:Ks.backgroundTask.items,overflowLabel:Ks.backgroundTask.overflowLabel,ctaHint:Ks.backgroundTask.ctaHint,showSpinner:H}):void 0,statusLine:fe(A,{children:fe(us,{...Fd,viewModel:gT})}),inlineDialogs:LP}),GP=fe(fu,{left:fe(uu,{items:xT}),right:fe(du,{items:ST}),stashNotice:fe(Su,{text:jd}),notifications:fe(xu,{notifications:Wd}),composer:fe(uk,{searchActive:xt,selectionActive:!!(so||at),showAllActive:Gt,searchQuery:hn,searchCurrent:Kt.length>0?Fo+1:0,searchCount:Kt.length,searchDetailText:Wh,pendingLiveUpdates:rl,secondaryText:kP}),taskBar:ll?fe(wu,{items:Ks.backgroundTask.items,overflowLabel:Ks.backgroundTask.overflowLabel,ctaHint:Ks.backgroundTask.ctaHint,showSpinner:St}):void 0,statusLine:fe(A,{children:fe(us,{...Fd,viewModel:Gh})})}),sg=X(d=>fe(dk,{banner:d?.bannerVisible?fe(Zx,{...Ai}):void 0,items:il,isLoading:gn,viewportRows:en.messageRows,viewportWidth:te,scrollOffset:ur,windowed:!!d?.rendererWindow,rendererWindow:d?.rendererWindow,transcriptModel:d?.rendererWindow?al:PT,maxLines:Dt,selectedTextRanges:Nh?dd?.rowRanges:void 0,onMetricsChange:Gd,onVisibleRowsChange:Vd}),[Ai,il,gn,Gd,Vd,ur,PT,te,Dt,dd?.rowRanges,en.messageRows,Nh]),ag=X(d=>fe(fk,{banner:d?.bannerVisible?fe(Zx,{...Ai}):void 0,items:ol,browse:{hintText:Ho.browseHintText},selection:Ud,search:uT,isLoading:St,isThinking:Me.isThinking,thinkingCharCount:Me.thinkingCharCount,thinkingContent:Me.thinkingContent,streamingResponse:Me.currentResponse,currentTool:Me.currentTool,activeToolCalls:Me.activeToolCalls,toolInputCharCount:Me.toolInputCharCount,toolInputContent:Me.toolInputContent,iterationHistory:Me.iterationHistory,currentIteration:Me.currentIteration,isCompacting:Me.isCompacting,agentMode:N.agentMode,managedPhase:St?J?.phase:void 0,managedHarnessProfile:St?J?.harnessProfile:void 0,managedWorkerTitle:St?J?.activeWorkerTitle:void 0,managedRound:St?J?.currentRound:void 0,managedMaxRounds:St?J?.maxRounds:void 0,managedGlobalWorkBudget:St?J?.globalWorkBudget:void 0,managedBudgetUsage:St?J?.budgetUsage:void 0,managedBudgetApprovalRequired:St?J?.budgetApprovalRequired:void 0,lastLiveActivityLabel:Me.lastLiveActivityLabel,liveStatusLines:Gs,viewportRows:en.messageRows,viewportWidth:te,scrollOffset:ur,windowed:!!d?.windowed,animateSpinners:!!d?.rendererWindow&&Ys,rendererWindow:d?.rendererWindow,transcriptModel:d?.rendererWindow?al:Pd,maxLines:Dt,showDetailedTools:Gt,showAllContent:Gt,selectedItemId:Yn.selectionEnabled?at:void 0,selectedTextRanges:to?.rowRanges,expandedItemKeys:Yn.selectionEnabled?_n:void 0,onMetricsChange:Gd,onVisibleRowsChange:Vd}),[Ai,N.agentMode,St,_n,c.transcriptSpinnerAnimation,Gd,Vd,ur,Xw,J?.activeWorkerTitle,J?.budgetApprovalRequired,J?.budgetUsage,J?.currentRound,J?.globalWorkBudget,J?.harnessProfile,J?.maxRounds,J?.phase,al,Pd,Ho.browseHintText,at,Ud,te,Ys,ol,Dt,Me.activeToolCalls,Me.currentIteration,Me.currentResponse,Me.currentTool,Me.isCompacting,Me.isThinking,Me.iterationHistory,Me.lastLiveActivityLabel,Me.thinkingCharCount,Me.thinkingContent,Me.toolInputCharCount,Me.toolInputContent,Gs,to?.rowRanges,uT,Gt,en.messageRows]),VP=ue?ag({bannerVisible:!1,windowed:Bt}):sg({bannerVisible:!1}),iC=ue?GP:UP,KP=c.enabled&&_i,sC=En(A,{flexDirection:"column",width:te,flexShrink:0,flexGrow:KP?1:0,children:[fe(hx,{currentConfig:N,setCurrentConfig:Ae,isLoading:H,abort:ke,stopThinking:Q,clearThinkingContent:se,setCurrentTool:Ce,setIsLoading:Z,onToggleHelp:wP,setShowHelp:Ww,onSetThinking:i(d=>{Oe.current.thinking=d},"onSetThinking"),onSetReasoningMode:i(d=>{Oe.current.reasoningMode=d,Oe.current.thinking=d!=="off"},"onSetReasoningMode"),onToggleTranscriptMode:PP,onOpenTranscriptSearch:qh,canOpenTranscriptSearch:ue&&!Xe&&!He,isInteractiveDialogActive:!!(Xe||He),onSetAgentMode:i(d=>{Oe.current.agentMode=d},"onSetAgentMode"),onSetPermissionMode:i(d=>{tg(d)},"onSetPermissionMode"),isInputEmpty:Wc,onSavePermissionMode:_I}),cr&&(c.enabled?null:fe(Wa,{items:[1],children:i(()=>fe(Zx,{...Ai},"banner"),"children")})),_i?fe(im,{width:te,stickyHeader:Ho.stickyHeader,jumpToLatest:Ho.jumpToLatest,transcript:!c.enabled||!Bt?ue?ag({bannerVisible:!1}):sg({bannerVisible:!1}):void 0,renderTranscriptWindow:c.enabled&&Bt?d=>(()=>{let S=pl(d).contentWindow;return ue?ag({bannerVisible:!1,windowed:!0,rendererWindow:S}):sg({bannerVisible:!1,rendererWindow:S})})():void 0,overlay:Zh,scrollTop:ur,scrollHeight:fl,viewportHeight:en.messageRows,stickyScroll:!ue&&!Mr&&Ih,overscanRows:I2,scrollRef:sP,onWindowChange:_P,onScrollTopChange:cP,onStickyChange:lP,footer:iC}):En(o2,{children:[En(A,{flexDirection:"column",flexGrow:1,children:[VP,Zh?fe(A,{position:"absolute",bottom:0,left:0,right:0,flexDirection:"column",children:Zh}):null]}),iC]})]});return Oh?fe(sy,{mouseTracking:Do.usesRendererMouseTracking,children:sC}):sC},"InkREPLInner"),E2=i(e=>{let t=process.cwd(),n=e.options?.context?.gitRoot??void 0;return fe(hu,{children:fe(Iu,{getPendingInputAgentId:i(()=>ef(e.context.sessionId,"/root"),"getPendingInputAgentId"),children:fe(Ql,{children:fe(px,{children:fe(Ap,{cwd:t,gitRoot:n,children:fe(k2,{...e})})})})})})},"InkREPL");function M2(){return process.stdin.isTTY===!0&&typeof process.stdin.setRawMode=="function"}i(M2,"isRawModeSupported");async function Xm(e){if(!M2())throw new hg("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 ms,n=qo(),r=Jo(),o=Qo(n,r),{prepareRuntimeConfig:s}=await import("./utils-2FHVIO6X.js"),{loadCompactionConfig:a}=await import("./compaction-config-E4TFBCDJ.js"),{resolveProvider:c}=await import("./dist-M3JV4PNA.js"),l=s(),u=Sa({explicitProvider:e.provider,environmentProvider:process.env.KODAX_PROVIDER,configuredProvider:l.provider,defaultProvider:Zd}),f=wa({explicitProvider:e.provider,environmentProvider:process.env.KODAX_PROVIDER,explicitModel:e.model,configuredProvider:l.provider,configuredModel:l.model}),p=f2(e,l),h=Ta({explicitEffort:e.effort,environmentEffort:process.env.KODAX_EFFORT,configuredEffort:l.effort}),m=Mf(e,l,process.env.KODAX_EFFORT),g=e.agentMode??l.agentMode??"ama",T=p!=="off",w=ya(l.permissionMode,"accept-edits")??"accept-edits",C=xf(),b=l.repoIntelligenceTrace===!0,_={provider:u,model:f,effort:h,effortOverride:m,planModeEffort:l.planModeEffort,thinking:T,reasoningMode:p,agentMode:g,permissionMode:w,repoIntelligenceMode:C.mode,repoIntelligenceTrace:b},M=e.session?.id,E=[],I,W,O,F,Y,re="",q=await Nr({cwd:process.cwd()}),y=q.workspaceRoot??void 0,L=q,te=y,j=sf({meta:{cwd:process.cwd(),startedAt:Date.now()}});if(j){let Q=i(()=>{j.shutdown()},"teamModeCleanup");process.on("exit",Q),process.on("SIGTERM",Q)}try{let{bootstrapConstructionRuntime:Q}=await import("./construction-bootstrap-YTFOT4M2.js"),se=await Q(y??process.cwd());if(se.loaded>0||se.failed>0||se.tampered>0){let Ce=se.failed>0?`; ${se.failed} failed`:"",tt=se.tampered>0?`; ${se.tampered} skipped due to manifest contentHash mismatch \u2014 re-stage and re-activate to re-approve`:"";mt({source:"repl:construction",level:se.failed>0||se.tampered>0?"warn":"info",message:`Rehydrated ${se.loaded} active tool(s)${Ce}${tt}.`})}if(se.markdownLoaded>0||se.markdownFailures.length>0){mt({source:"repl:agents",level:se.markdownFailures.length>0?"warn":"info",message:`Loaded ${se.markdownLoaded} markdown agent(s).`});for(let Ce of se.markdownFailures)mt({source:"repl:agents",level:"warn",message:`Skipped markdown agent ${Ce.path}: ${Ce.reason}`})}}catch(Q){mt({source:"repl:construction",level:"warn",message:`Bootstrap failed: ${Q.message}. Self-construction disabled this session.`})}let ae;try{let Q=await a(y),se=c(u);ae={contextWindow:Q.contextWindow??se.getContextWindow?.()??2e5,triggerPercent:Q.triggerPercent,triggerTokens:Q.triggerTokens,enabled:Q.enabled,reservedResponseTokens:se.getEffectiveMaxOutputTokens?.(f),userOverrideContextWindow:Q.contextWindow}}catch{}if(e.session?.id&&!e.session.resume){let Q=await t.load(e.session.id);Q&&(E=Q.messages,I=di(Q.uiHistory),W=Q.lineage,O=Q.artifactLedger,F=Q.extensionState,Y=Q.extensionRecords,re=Q.title,M=e.session.id,L=Cn(Q)??q,te=L.workspaceRoot??void 0,e={...e,session:{...e.session??{},id:M,tag:Q.tag}},console.log(ht.green(`[Session loaded: ${M}]`)))}else if(e.session?.resume||e.session?.autoResume){let Q=await fc(t,y);if(Q){let se=await t.load(Q.id);se&&(E=se.messages,I=di(se.uiHistory),W=se.lineage,O=se.artifactLedger,F=se.extensionState,Y=se.extensionRecords,re=se.title,M=Q.id,L=Cn(se)??q,te=L.workspaceRoot??void 0,e={...e,session:{...e.session??{},id:M,tag:se.tag}},console.log(ht.green(`[Continuing session: ${Q.id}]`)))}}let de=await uc({sessionId:M,gitRoot:te,runtimeInfo:L,existingMessages:E,existingUiHistory:I,existingLineage:W,existingArtifactLedger:O,existingExtensionState:F,existingExtensionRecords:Y});de.title=re,e={...e,context:{...e.context,gitRoot:de.gitRoot??void 0,executionCwd:de.runtimeInfo?.executionCwd??de.gitRoot??process.cwd()}},j?.writer.update({sessionId:de.sessionId});let me={current:null},ke={current:null},pe={current:_},we=va(),$e=await dc({askUser:i(async(Q,se,Ce)=>{let tt=me.current;return tt?tt(Q,se,Ce):"block"},"askUser"),projectRoot:y??process.cwd(),executionCwd:L.executionCwd??y??process.cwd(),getCurrentProviderName:i(()=>pe.current.provider,"getCurrentProviderName"),getCurrentModel:i(()=>pe.current.model,"getCurrentModel"),getCurrentPermissionMode:i(()=>pe.current.permissionMode,"getCurrentPermissionMode"),autoModeSettings:we,log:i((Q,se)=>{mt({source:"repl:auto-mode",level:Q==="warn"?"warn":"info",message:se})},"log"),onEngineChange:i(Q=>{ke.current?.(Q)},"onEngineChange"),extraCollectors:[Ia]});try{let Q=process.stdout,se=process.stdin,Ce=!1,{waitUntilExit:tt,cleanup:Tt}=Ha(fe(E2,{options:e,config:_,context:de,startupRuntimeInfo:q,storage:t,autoModeSettings:lc(we),compactionInfo:ae,rendererMode:r,fullscreenPolicy:o,autoModeBootstrap:$e,setAutoModeAskUser:i(Ve=>{me.current=Ve},"setAutoModeAskUser"),setAutoModeEngineChange:i(Ve=>{ke.current=Ve},"setAutoModeEngineChange"),setCurrentConfigRef:i(Ve=>{pe.current=Ve},"setCurrentConfigRef"),teamModeHandle:j,onExit:i(()=>{Ce=!0},"onExit")}),{stdout:Q,stdin:se,exitOnCtrlC:!1,patchConsole:!1,maxFps:30,shellMode:o.enabled?o.promptShell:"main-screen"});await tt(),Tt(),j?.shutdown(),se.isTTY===!0&&typeof se.setRawMode=="function"&&se.isRaw&&se.setRawMode(!1),se.pause?.(),se.unref?.(),Ce&&console.log(ht.dim(`
175
175
  [Exiting KodaX...]`));let Ke=e.hardExitOnClose??process.env.VITEST!=="true";if(Ce&&Ke){let Ve=process.exitCode??0,he=!1,Re=i(()=>{he||(he=!0,process.exit(Ve))},"requestProcessExit");setTimeout(Re,0).unref?.(),Q.write("",Re);return}}catch(Q){throw Q instanceof Error&&Q.message.includes("Raw mode")?new hg("Interactive mode failed to start.",['kodax -p "your task" # Run a single task',"kodax -c # Continue last session"]):Q}}i(Xm,"runInkInteractiveMode");import{jsx as Nu,jsxs as vc}from"react/jsx-runtime";import{useMemo as _2,useRef as A2,useState as rS}from"react";var L2=40;function P2(e,t){let n=t.trim().toLocaleLowerCase().split(/\s+/).filter(Boolean);return n.length===0?[...e]:e.filter(r=>{let o=[r.title,r.id,r.surface??"",r.createdAt??"",String(r.msgCount)].join(" ").toLocaleLowerCase();return n.every(s=>o.includes(s))})}i(P2,"filterSessionPickerItems");function $2(e,t,n){let r=Math.max(1,n),o=e.length===0?0:Math.max(0,Math.min(t,e.length-1)),s=Math.floor(o/r)*r;return{items:e.slice(s,s+r),selectedIndex:o,pageStart:s,pageIndex:Math.floor(s/r),pageCount:Math.max(1,Math.ceil(e.length/r))}}i($2,"buildSessionPickerPage");function O2(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"),o=String(t.getDate()).padStart(2,"0"),s=String(t.getHours()).padStart(2,"0"),a=String(t.getMinutes()).padStart(2,"0");return`${n}-${r}-${o} ${s}:${a}`}i(O2,"formatTimestamp");function N2({sessions:e,onSelect:t,onSelectionError:n,onCancel:r,pageSize:o=8}){let{exit:s}=jr(),[a,c]=rS(""),[l,u]=rS(0),[f,p]=rS(!1),h=A2(!1),m=_2(()=>P2(e,a),[e,a]),g=$2(m,l,o),T=m[g.selectedIndex];return ja((w,C)=>{if(!h.current){if(C.escape||C.ctrl&&w==="c"){r(),s();return}if(C.return){let b=m[g.selectedIndex];b&&(h.current=!0,p(!0),(async()=>{await new Promise(_=>setTimeout(_,L2));try{await t(b)}catch(_){n(_)}finally{s()}})());return}if(C.upArrow)u(b=>Math.max(0,b-1));else if(C.downArrow)u(b=>Math.min(Math.max(0,m.length-1),b+1));else if(C.pageUp)u(b=>Math.max(0,b-o));else if(C.pageDown)u(b=>Math.min(Math.max(0,m.length-1),b+o));else if(C.home)u(0);else if(C.end)u(Math.max(0,m.length-1));else if(C.tab){let b=m[g.selectedIndex];b&&(c(b.title),u(0))}else C.backspace||C.delete?(c(b=>b.slice(0,-1)),u(0)):w&&!C.ctrl&&!C.meta&&!C.super&&(c(b=>b+w),u(0))}}),vc(A,{flexDirection:"column",borderStyle:"round",borderColor:"cyan",paddingX:1,children:[Nu(R,{bold:!0,color:"cyan",children:"Resume a session"}),vc(R,{children:["Search: ",Nu(R,{color:"yellow",children:a||"type to filter"})]}),Nu(R,{dimColor:!0,children:f?"Loading selected session...":"\u2191/\u2193 select \xB7 PgUp/PgDn page \xB7 Tab complete \xB7 Enter resume \xB7 Esc cancel"}),vc(A,{flexDirection:"column",marginTop:1,children:[g.items.length===0?Nu(R,{color:"yellow",children:"No matching sessions."}):null,g.items.map((w,C)=>{let _=g.pageStart+C===g.selectedIndex,M=w.title.trim()||"Untitled session",E=w.surface?` \xB7 ${w.surface}`:"";return vc(R,{color:_?"cyan":void 0,bold:_,children:[_?"\u276F":" "," ",M," \xB7 ",w.msgCount," msgs",E," \xB7 ",O2(w.createdAt)," \xB7 ",w.id.slice(0,8)]},w.id)})]}),vc(R,{dimColor:!0,children:[m.length," matches \xB7 Page ",g.pageIndex+1,"/",g.pageCount]}),vc(R,{dimColor:!0,children:["Selected ID: ",T?.id??"none"]})]})}i(N2,"SessionPicker");async function x_(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,o=!1,s,a=Math.max(4,Math.min(12,(process.stdout.rows??24)-8)),c=Ha(Nu(N2,{sessions:e,pageSize:a,onSelect:i(async l=>{n=l,await t.prepareSelection?.(l)},"onSelect"),onSelectionError:i(l=>{o=!0,s=l},"onSelectionError"),onCancel:i(()=>{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(o)throw s;if(!n&&!r)throw new Error("Session picker exited unexpectedly before selection or cancellation.");return n}i(x_,"runSessionPicker");import wn from"chalk";var S_=["\u280B","\u2819","\u2839","\u2838","\u283C","\u2834","\u2826","\u2827","\u2807","\u280F"],w_=["\x1B[36m","\x1B[35m","\x1B[34m"],Bu=null,bc=!1;function Du(){let e=0,t=0,n=!1,r="Thinking...",o=i(()=>{if(n)return;let c=w_[t%w_.length],l="\x1B[0m",u=S_[e%S_.length];process.stdout.write(`\r${c}${u}${l} ${r}`)},"renderFrame"),s=setInterval(()=>{e++,e%10===0&&t++,o()},80);o();let a={stop:i(()=>{n||(n=!0,clearInterval(s),process.stdout.write("\r\x1B[K"))},"stop"),isStopped:i(()=>n,"isStopped"),updateText:i(c=>{r=c},"updateText")};return Bu=a,a}i(Du,"startWaitingDots");function T_(e=!0){let t=null,n=0,r=!1;return{onSessionStart:i(s=>{console.log(e?wn.cyan(`[KodaX] Provider: ${s.provider} | Session: ${s.sessionId}`):wn.cyan(`[KodaX] Provider: ${s.provider}`))},"onSessionStart"),onTextDelta:i(s=>{t&&(t.stop(),t=null),n=0,process.stdout.write(s),r=!0},"onTextDelta"),onThinkingDelta:i(s=>{n+=s.length,t||(t=Du()),t.updateText(`Thinking... (${n} chars)`)},"onThinkingDelta"),onThinkingEnd:i(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(wn.dim(`[Thinking] ${c}`))}},"onThinkingEnd"),onToolUseStart:i(s=>{t||(bc||(process.stdout.write(`
176
176
  `),bc=!0),t=Du()),t.updateText(`Executing ${s.name}...`)},"onToolUseStart"),onToolInputDelta:i((s,a,c)=>{let l=a.length;t&&!t.isStopped()?t.updateText(`Receiving ${s}... (${l} chars)`):(!t||t.isStopped())&&(bc||(process.stdout.write(`
177
177
  `),bc=!0,r=!1),t=Du(),t.updateText(`Receiving ${s}... (${l} chars)`))},"onToolInputDelta"),onToolResult:i(s=>{t&&(t.stop(),t=null),console.log(wn.green(`[Result] ${s.content.slice(0,300)}${s.content.length>300?"...":""}`))},"onToolResult"),onRepoIntelligenceTrace:i(s=>{t&&(t.stop(),t=null),console.log(wn.dim(`[RepoIntel] ${s.summary}`))},"onRepoIntelligenceTrace"),onSidecarMessage:i(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}
@@ -217,7 +217,7 @@ ${t}`),console.log("\u2500".repeat(t.length)),n.forEach((r,o)=>{console.log(` $
217
217
  Keyboard: Tab (complete) | Esc+Esc (edit last) | Ctrl+T (reasoning) | Ctrl+E (editor) | Ctrl+R (history)
218
218
  `))}i(V_,"printStartupBanner");async function ij(e,t,n){if(e?.id){let r=await t.load(e.id);if(!r)return null;let o=Cn(r);return{id:e.id,data:r,kind:"load",...o?{runtimeInfo:o}:{}}}if(e?.resume||e?.autoResume){let r=await fc(t,n);if(!r)return null;let o=await t.load(r.id);if(!o)return null;let s=Cn(o);return{id:r.id,data:o,kind:"continue",...s?{runtimeInfo:s}:{}}}return null}i(ij,"loadClassicStartupSession");async function sj(e){return(await lf(e)).getSystemPromptSnippet()}i(sj,"buildClassicCliSkillsPrompt");function aj(e,t){let n=cf(e);t.context={...t.context,skillsPrompt:n.getSystemPromptSnippet()}}i(aj,"syncClassicCliSkillsPrompt");var yS=class{static{i(this,"MemorySessionStorage")}sessions=new Map;async save(t,n){let r=this.sessions.get(t),o=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:o}})}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 o=this.sessions.get(t);if(!o?.data.lineage)return null;let s=sa(o.data.lineage,n,r);if(!s)return null;let a={...structuredClone(o.data),messages:At(s),lineage:s};return this.sessions.set(t,{...o,data:a}),structuredClone(a)}async setLabel(t,n,r){let o=this.sessions.get(t);if(!o?.data.lineage)return null;let s=aa(o.data.lineage,n,r);if(!s)return null;let a={...structuredClone(o.data),lineage:s};return this.sessions.set(t,{...o,data:a}),structuredClone(a)}async fork(t,n,r){let o=this.sessions.get(t);if(!o?.data.lineage)return null;let s=mo(o.data.lineage,n);if(!s)return null;let a=r?.sessionId??await da(),c={messages:At(s),title:r?.title??o.data.title,gitRoot:o.data.gitRoot,tag:o.data.tag,runtimeInfo:o.data.runtimeInfo?structuredClone(o.data.runtimeInfo):void 0,scope:o.data.scope??"user",extensionState:o.data.extensionState?structuredClone(o.data.extensionState):void 0,extensionRecords:o.data.extensionRecords?structuredClone(o.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 o=n??la(r.data.lineage);if(!o)return null;let s=ua(r.data.lineage,o);if(!s)return null;let a={...r.data,messages:At(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?Hi(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 hS(e,t,n){e.runtimeInfo=n,e.gitRoot=n?.workspaceRoot??e.gitRoot,t.context={...t.context,gitRoot:e.gitRoot,executionCwd:n?.executionCwd??process.cwd()}}i(hS,"applyRuntimeContext");function Jm(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))}i(Jm,"applyRuntimeSessionSnapshot");function Mo(e){return{...e.extensionStateDirty?{extensionState:e.extensionState??{}}:{},...e.extensionRecordsDirty?{extensionRecords:e.extensionRecords??[]}:{}}}i(Mo,"contextExtensionSessionData");function Mc(e){e.extensionStateDirty=!1,e.extensionRecordsDirty=!1}i(Mc,"markExtensionSessionPersisted");function cj(e,t){return e.reasoningMode?e.reasoningMode:t.reasoningMode?t.reasoningMode:(e.thinking===!0||t.thinking===!0,"auto")}i(cj,"resolveInitialReasoningMode");var xS={current:null};async function z_(e){let t=await Nr({cwd:process.cwd()}),n=t.workspaceRoot??await yo()??void 0,r=e.storage??new yS,o=await ij(e.session,r,n),s=o?o.runtimeInfo??t:t,a=s.workspaceRoot??n;o&&(e={...e,session:{...e.session??{},id:o.id,tag:o.data.tag}});let c=sf({meta:{cwd:process.cwd(),startedAt:Date.now()}}),l=Ef(),u=Sa({explicitProvider:e.provider,environmentProvider:process.env.KODAX_PROVIDER,configuredProvider:l.provider,defaultProvider:Zd}),f=wa({explicitProvider:e.provider,environmentProvider:process.env.KODAX_PROVIDER,explicitModel:e.model,configuredProvider:l.provider,configuredModel:l.model}),p=cj(e,l),h=Ta({explicitEffort:e.effort,environmentEffort:process.env.KODAX_EFFORT,configuredEffort:l.effort}),m=Mf(e,l,process.env.KODAX_EFFORT),g=e.agentMode??l.agentMode??"ama",T=p!=="off",w=ya(l.permissionMode,"accept-edits")??"accept-edits",C=Rf();w==="auto-in-project"&&C();let b=xf(),_=l.theme;_&&ju(_);let M=Ss(),E={provider:u,model:f,effort:h,effortOverride:m,planModeEffort:l.planModeEffort,thinking:T,reasoningMode:p,agentMode:g,permissionMode:w,repoIntelligenceMode:b.mode,repoIntelligenceTrace:b.trace,fallbackProviders:l.fallbackProviders},I=w,W=ba(),O=i(P=>Ui({provider:P?.provider??E.provider,model:P?.model??E.model,effort:E.effort,effortOverride:E.effortOverride,permissionMode:P?.permissionMode??E.permissionMode,planModeEffort:E.planModeEffort,thinking:E.thinking,reasoningMode:E.reasoningMode}),"resolveCurrentRuntimeEffort"),F=0,Y="",re=!1,q=500,y=await uc({sessionId:o?.id??e.session?.id,gitRoot:a,runtimeInfo:s,existingMessages:o?.data.messages,existingUiHistory:o?.data.uiHistory,existingLineage:o?.data.lineage,existingArtifactLedger:o?.data.artifactLedger,existingExtensionState:o?.data.extensionState,existingExtensionRecords:o?.data.extensionRecords});if(y.title=o?.data.title??"",o){let P=o.kind==="continue"?"Continuing session":"Session loaded";process.stdout.write(`${le.green(`[${P}: ${o.id}]`)}
219
219
  `)}y.skillDynamicContext=e.skillDynamicContext,c?.writer.update({sessionId:y.sessionId});let L=i(P=>pi(E,P,(U,H,Z)=>{console.log((U==="block"?le.red:le.yellow)(`
220
- ${H}`));for(let N of Z)console.log(le.dim(N));console.log()}),"guardSessionTransition"),te=await Lf(a??void 0),{resolveProvider:j}=await import("./dist-NFLLOZWF.js"),ae=j(E.provider),de=te.contextWindow??ae.getEffectiveContextWindow?.(E.model)??ae.getContextWindow?.()??2e5,{loadAgentsFiles:me}=await import("./dist-NFLLOZWF.js"),ke=i(async()=>me({cwd:process.cwd(),projectRoot:y.gitRoot??void 0}),"reloadAgentsFiles"),pe=await ke();if(V_(E,E.permissionMode,{contextWindow:de,triggerPercent:te.triggerPercent,triggerTokens:te.triggerTokens,enabled:te.enabled},pe),G_(s),e.learning)try{let P=Pf(await e.learning.getSnapshot());P&&console.log(le.yellow(`
220
+ ${H}`));for(let N of Z)console.log(le.dim(N));console.log()}),"guardSessionTransition"),te=await Lf(a??void 0),{resolveProvider:j}=await import("./dist-M3JV4PNA.js"),ae=j(E.provider),de=te.contextWindow??ae.getEffectiveContextWindow?.(E.model)??ae.getContextWindow?.()??2e5,{loadAgentsFiles:me}=await import("./dist-M3JV4PNA.js"),ke=i(async()=>me({cwd:process.cwd(),projectRoot:y.gitRoot??void 0}),"reloadAgentsFiles"),pe=await ke();if(V_(E,E.permissionMode,{contextWindow:de,triggerPercent:te.triggerPercent,triggerTokens:te.triggerTokens,enabled:te.enabled},pe),G_(s),e.learning)try{let P=Pf(await e.learning.getSnapshot());P&&console.log(le.yellow(`
221
221
  ${P}
222
222
  `))}catch(P){mt({source:"repl:learning",level:"warn",message:"Failed to recover the Learning Center startup summary.",detail:P instanceof Error?P.message:String(P)})}let we=tv(()=>y.gitRoot??process.cwd()),$e=K_.createInterface({input:process.stdin,output:process.stdout,terminal:process.stdout.isTTY??!0,historySize:100,completer:i((P,U)=>{we(P).then(H=>{U(null,H)}).catch(()=>{U(null,[[],P])})},"completer")}),Q=i(async P=>{let U=await Ec($e,P.toolName,{...P.input,...P.reason!==void 0?{_reason:P.reason}:{},...P.executionCwd!==void 0?{_executionCwd:P.executionCwd}:{},...P.risk!==void 0?{_runtimeRisk:P.risk}:{}},{permissionMode:I,runtimeGrantSuggestions:P.grantSuggestions??[]});return Im(P,U)},"requestRuntimePermission"),se=va(),Ce=lc(se);await e.runtimeAutoModeControl?.syncSettings?.(y.sessionId,I,Ce);let tt=await dc({askUser:i(async(P,U,H)=>(await Ec($e,P.name,{...P.input,...H&&H.length>0?{_classifierSignals:H}:{}},{permissionMode:I,reason:`[auto-mode] ${U}`})).confirmed?"allow":"block","askUser"),projectRoot:a??process.cwd(),executionCwd:s.executionCwd??a??process.cwd(),getCurrentProviderName:i(()=>E.provider,"getCurrentProviderName"),getCurrentModel:i(()=>E.model,"getCurrentModel"),getCurrentPermissionMode:i(()=>I,"getCurrentPermissionMode"),autoModeSettings:se,log:i((P,U)=>{console.log(P==="warn"?le.yellow(U):le.dim(U))},"log"),extraCollectors:[Ia]}),Tt=Cf({getProvider:i(()=>j(E.provider),"getProvider"),getModel:i(()=>E.model??"","getModel")}),Ke=`
223
223
  Keyboard Shortcuts: