@kodax-ai/kodax 0.7.86 → 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.
- package/CHANGELOG.md +32 -0
- package/README.md +16 -4
- package/README_CN.md +6 -4
- package/dist/chunks/{agent-IO6TXNCV.js → agent-Z64QF7KG.js} +1 -1
- package/dist/chunks/argument-completer-HIJBXRUT.js +2 -0
- package/dist/chunks/{chunk-Q6UAGROD.js → chunk-3PGNESV3.js} +2 -2
- package/dist/chunks/{chunk-B36G256E.js → chunk-4OLXWSCQ.js} +2 -2
- package/dist/chunks/{chunk-2RAXDUC7.js → chunk-7XTUXMAI.js} +2 -2
- package/dist/chunks/{chunk-AAFFS6RU.js → chunk-ASFCAPIG.js} +3 -3
- package/dist/chunks/{chunk-XA4ENCAH.js → chunk-BCYJIACJ.js} +2 -2
- package/dist/chunks/{chunk-U6HNMLNN.js → chunk-DB4O33RR.js} +5 -5
- package/dist/chunks/{chunk-GVGLYVG4.js → chunk-GRJ7NKWP.js} +1 -1
- package/dist/chunks/{chunk-G5FGIRDJ.js → chunk-ITP7J5HX.js} +1 -1
- package/dist/chunks/{chunk-HTVLCHWH.js → chunk-JS4RSF4B.js} +1 -1
- package/dist/chunks/chunk-SKELDH3G.js +123 -0
- package/dist/chunks/{chunk-A5VQGXH2.js → chunk-U44C5STU.js} +1 -1
- package/dist/chunks/{chunk-R4EHASEN.js → chunk-UWKM3HNY.js} +4 -4
- package/dist/chunks/chunk-XH7UM4GO.js +92 -0
- package/dist/chunks/{chunk-UKCDCVMD.js → chunk-XKLVC7F6.js} +1 -1
- package/dist/chunks/{chunk-MFCPQZ7E.js → chunk-YB7YVAPL.js} +1 -1
- package/dist/chunks/{chunk-XUKLF26Q.js → chunk-ZQNOEKOB.js} +2 -2
- package/dist/chunks/compaction-config-E4TFBCDJ.js +2 -0
- package/dist/chunks/{construction-bootstrap-4DGAYOWH.js → construction-bootstrap-YTFOT4M2.js} +1 -1
- package/dist/chunks/{dist-DFW7MXT7.js → dist-M3JV4PNA.js} +1 -1
- package/dist/chunks/{dist-WWL2DNIJ.js → dist-X55TWIK4.js} +1 -1
- package/dist/chunks/host-SJHHJBPB.js +2 -0
- package/dist/chunks/run-manager-T5QGWNON.js +2 -0
- package/dist/chunks/{utils-LV7FHKYN.js → utils-2FHVIO6X.js} +1 -1
- package/dist/index.d.ts +19 -19
- package/dist/index.js +1 -1
- package/dist/kodax_bootstrap.js +1 -1
- package/dist/kodax_cli.js +762 -762
- package/dist/kodax_resume.js +1 -1
- package/dist/provider-capabilities.json +239 -133
- package/dist/runtime-worker.js +716 -716
- package/dist/sandbox-workspace-session.js +4 -4
- package/dist/sdk-a2a.d.ts +12 -12
- package/dist/sdk-a2a.js +1 -1
- package/dist/sdk-agent.d.ts +17 -17
- package/dist/sdk-agent.js +1 -1
- package/dist/sdk-coding.d.ts +21 -21
- package/dist/sdk-coding.js +1 -1
- package/dist/sdk-experimental-memory.d.ts +4 -4
- package/dist/sdk-experimental-memory.js +1 -1
- package/dist/sdk-llm.d.ts +7 -7
- package/dist/sdk-llm.js +1 -1
- package/dist/sdk-mcp.js +1 -1
- package/dist/sdk-media.d.ts +1 -1
- package/dist/sdk-media.js +1 -1
- package/dist/sdk-repl.d.ts +16 -16
- package/dist/sdk-repl.js +1 -1
- package/dist/sdk-runtime.d.ts +13 -13
- package/dist/sdk-runtime.js +1 -1
- package/dist/sdk-sandbox.js +1 -1
- package/dist/sdk-session.d.ts +7 -7
- package/dist/sdk-session.js +1 -1
- package/dist/sdk-skills.js +1 -1
- package/dist/semantic-worker.js +1 -1
- package/dist/types-chunks/{base.d-DxG0m09Z.d.ts → base.d-vopO1rml.d.ts} +1 -1
- package/dist/types-chunks/{bash-prefix-extractor.d-QqKtuLZm.d.ts → bash-prefix-extractor.d-B36OQwNA.d.ts} +4 -4
- package/dist/types-chunks/{capability-learning.d-iPSiAmc_.d.ts → capability-learning.d-CE1tm29C.d.ts} +1 -1
- package/dist/types-chunks/{capsule.d-CN_iMqAS.d.ts → capsule.d-DEncDNzD.d.ts} +3 -3
- package/dist/types-chunks/{controller.d-A73Kf6tH.d.ts → controller.d-C1YdP_pQ.d.ts} +1 -1
- package/dist/types-chunks/{controller.d-Dzxz22X-.d.ts → controller.d-Dif9pbC9.d.ts} +2 -2
- package/dist/types-chunks/{guardrail.d-Y_AIh8-I.d.ts → guardrail.d-DhpnJv4Y.d.ts} +5 -5
- package/dist/types-chunks/{history-retrieval.d-Debbzn1z.d.ts → history-retrieval.d-YJQpQt7h.d.ts} +2 -2
- package/dist/types-chunks/{public-api.d-Cg-4GTbK.d.ts → public-api.d-D4q3WxKq.d.ts} +4 -4
- package/dist/types-chunks/{repl.d-Bhrbueab.d.ts → repl.d-D4ye29Kk.d.ts} +5 -5
- package/dist/types-chunks/{resolver.d-C9IW4fmU.d.ts → resolver.d-RyPo99tB.d.ts} +2 -2
- package/dist/types-chunks/{review-inbox.d-DuZqFX-z.d.ts → review-inbox.d-C1_xZ-yg.d.ts} +1 -1
- package/dist/types-chunks/{run-manager.d-BS4lJfL3.d.ts → run-manager.d-D30IvnwV.d.ts} +1 -1
- package/dist/types-chunks/{sdk-session-fQ_KENev.d.ts → sdk-session-DIU6sHa2.d.ts} +3 -3
- package/dist/types-chunks/{shell-command-sets.d-DRGjd_7Q.d.ts → shell-command-sets.d-rIHkZ_VR.d.ts} +1 -1
- package/dist/types-chunks/{side-query.d-CP1LiRiH.d.ts → side-query.d-iH0P9ASy.d.ts} +2 -2
- package/dist/types-chunks/{types.d-BRrJU4pb.d.ts → types.d-Bz5Y-PD9.d.ts} +4 -4
- package/dist/types-chunks/{types.d-CgrXrFrq.d.ts → types.d-CK9A9rpP.d.ts} +1 -1
- package/dist/types-chunks/{types.d-Bo4fyMLu.d.ts → types.d-COhAF5Xo.d.ts} +2 -2
- package/dist/types-chunks/{types.d-DlLBRqZ9.d.ts → types.d-sW-OqiFt.d.ts} +1 -1
- package/dist/types-chunks/{utils.d-BIhh_BqE.d.ts → utils.d-B65ozSTV.d.ts} +6 -6
- package/package.json +1 -1
- package/dist/chunks/argument-completer-JMICSGL6.js +0 -2
- package/dist/chunks/chunk-TRNAWSXP.js +0 -123
- package/dist/chunks/chunk-UH5WNJXF.js +0 -92
- package/dist/chunks/compaction-config-5RMG22CY.js +0 -2
- package/dist/chunks/host-6MMHYTI5.js +0 -2
- package/dist/chunks/run-manager-ISQSWCAM.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-B36G256E.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-AAFFS6RU.js";import{a as Lf}from"./chunk-A5VQGXH2.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-XA4ENCAH.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-Q6UAGROD.js";import{J as MC}from"./chunk-XUKLF26Q.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-U6HNMLNN.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-G5FGIRDJ.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.
|
|
@@ -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-
|
|
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-LV7FHKYN.js"),{loadCompactionConfig:a}=await import("./compaction-config-5RMG22CY.js"),{resolveProvider:c}=await import("./dist-DFW7MXT7.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-4DGAYOWH.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-
|
|
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:
|