@kodax-ai/kodax 0.7.63 → 0.7.66
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 +2300 -2204
- package/README.md +79 -7
- package/README_CN.md +52 -3
- package/dist/chunks/{agent-SL444XLN.js → agent-KER4WDNO.js} +1 -1
- package/dist/chunks/argument-completer-HK3MHA3K.js +2 -0
- package/dist/chunks/{chunk-ARUWXX25.js → chunk-35P7QL2Q.js} +1 -1
- package/dist/chunks/chunk-3HKBBY74.js +339 -0
- package/dist/chunks/chunk-AKBH2EEE.js +8 -0
- package/dist/chunks/{chunk-KCFVGXVK.js → chunk-ALS32RNZ.js} +1 -1
- package/dist/chunks/chunk-MHRN2LQV.js +328 -0
- package/dist/chunks/{chunk-HP4FXMEM.js → chunk-NBQW7PNZ.js} +2 -2
- package/dist/chunks/{chunk-S4GVQO3W.js → chunk-O7N22GJ3.js} +1 -1
- package/dist/chunks/chunk-ONUPGMER.js +2 -0
- package/dist/chunks/{chunk-ZL5CEANW.js → chunk-PZTG2C33.js} +1 -1
- package/dist/chunks/{chunk-4MIHVNB7.js → chunk-QAQ2HNXD.js} +112 -112
- package/dist/chunks/{chunk-6OZ5KWG3.js → chunk-QJJKMNZF.js} +1 -1
- package/dist/chunks/chunk-QJVZZSEO.js +56 -0
- package/dist/chunks/chunk-TLJGOKBT.js +729 -0
- package/dist/chunks/{chunk-7MPU7TP6.js → chunk-VS4CDDEF.js} +243 -243
- package/dist/chunks/chunk-WBBEJIAY.js +306 -0
- package/dist/chunks/{chunk-L3MF5V64.js → chunk-WMIZCY2J.js} +1 -1
- package/dist/chunks/{chunk-UA744TZM.js → chunk-YRBNXFHY.js} +1 -1
- package/dist/chunks/compaction-config-7GMUFNPB.js +2 -0
- package/dist/chunks/{construction-bootstrap-EFZBONTK.js → construction-bootstrap-3XDS2D5K.js} +1 -1
- package/dist/chunks/{devtools-4CRULTR2.js → devtools-CD6KSIHE.js} +1 -1
- package/dist/chunks/{devtools-YINBSZC7.js → devtools-XR5F2C6T.js} +1 -1
- package/dist/chunks/{dist-73L4OYPD.js → dist-4PXB7U22.js} +1 -1
- package/dist/chunks/dist-4YAYT2TO.js +2 -0
- package/dist/chunks/host-KG3456QP.js +2 -0
- package/dist/chunks/{paste-FDYM7SZX.js → paste-C33GZQV5.js} +1 -1
- package/dist/chunks/run-manager-6CAH3KTA.js +2 -0
- package/dist/chunks/utils-OT5ENFUL.js +2 -0
- package/dist/constructed-handler-worker.js +2 -0
- package/dist/index.d.ts +21 -10
- package/dist/index.js +6 -6
- package/dist/kodax_cli.js +1116 -1089
- package/dist/runtime-worker.js +2843 -0
- package/dist/sdk-agent.d.ts +27 -8
- package/dist/sdk-agent.js +1 -1
- package/dist/sdk-coding.d.ts +76 -1020
- package/dist/sdk-coding.js +1 -1
- package/dist/sdk-llm.js +1 -1
- package/dist/sdk-mcp.d.ts +2 -1
- package/dist/sdk-mcp.js +1 -1
- package/dist/sdk-media.js +1 -1
- package/dist/sdk-repl.d.ts +197 -183
- package/dist/sdk-repl.js +2 -2
- package/dist/sdk-runtime.d.ts +982 -0
- package/dist/sdk-runtime.js +2 -0
- package/dist/sdk-session.d.ts +3 -3
- package/dist/sdk-session.js +1 -1
- package/dist/sdk-skills.js +1 -1
- package/dist/semantic-worker.js +191 -10
- package/dist/types-chunks/{bash-prefix-extractor.d-CZW9fRoa.d.ts → bash-prefix-extractor.d-BjkITAva.d.ts} +142 -3
- package/dist/types-chunks/{run-manager.d-CYTnWhZY.d.ts → capsule.d-hVhPNkHd.d.ts} +5 -92
- package/dist/types-chunks/commands.d-C3B1TdGM.d.ts +213 -0
- package/dist/types-chunks/{types.d-1CnTg7Sd.d.ts → guardrail.d-C_Siraua.d.ts} +3 -128
- package/dist/types-chunks/{guardrail.d-MR6LwMB2.d.ts → guardrail.d-wk-s0psS.d.ts} +2 -2
- package/dist/types-chunks/{manager.d-DBD7SOTT.d.ts → manager.d-Zum9cGHU.d.ts} +3 -173
- package/dist/types-chunks/oauth-login.d-Bgb4rdLN.d.ts +174 -0
- package/dist/types-chunks/public-api.d-jtREVfEq.d.ts +596 -0
- package/dist/types-chunks/run-manager.d-CFknOfo1.d.ts +91 -0
- package/dist/types-chunks/{sdk-session-RBSBBKol.d.ts → sdk-session-CLqyfAmf.d.ts} +8 -306
- package/dist/types-chunks/types.d-BMLxKV69.d.ts +128 -0
- package/dist/types-chunks/types.d-CUN_bZU7.d.ts +975 -0
- package/dist/types-chunks/{utils.d-C14jZ9ZM.d.ts → utils.d-C1rpoeDh.d.ts} +84 -72
- package/package.json +7 -1
- package/dist/chunks/argument-completer-EN63ZVJK.js +0 -2
- package/dist/chunks/chunk-KHICMJIR.js +0 -310
- package/dist/chunks/chunk-LGR7ACBQ.js +0 -326
- package/dist/chunks/chunk-RR7W7UF6.js +0 -341
- package/dist/chunks/chunk-UGTK2JIJ.js +0 -731
- package/dist/chunks/chunk-V4WSBIXB.js +0 -2
- package/dist/chunks/chunk-VSWROENP.js +0 -52
- package/dist/chunks/compaction-config-4VIONMFB.js +0 -2
- package/dist/chunks/dist-EDF2YUF6.js +0 -2
- package/dist/chunks/host-J4HPDLFC.js +0 -2
- package/dist/chunks/run-manager-ZVSW2OWM.js +0 -2
- package/dist/chunks/utils-5HDLYTZJ.js +0 -2
- package/dist/types-chunks/storage.d-C6kkAEch.d.ts +0 -280
package/dist/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// @kodax-ai/kodax — bundled distribution. See docs/ADR.md ADR-022 + ADR-024.
|
|
2
|
-
import{Hb as
|
|
3
|
-
`)})}handleEvent(e){let t=
|
|
2
|
+
import{i as M}from"./chunks/chunk-AKBH2EEE.js";import{Hb as C,Sa as ke,Ta as be,eb as Ce,wb as Me,xb as Le}from"./chunks/chunk-WBBEJIAY.js";import{k as V,n as H,q as J,r as Q,s as Y,u as Z,v as ee,w as te,wa as Ie,x as ne,ya as Ee,za as xe}from"./chunks/chunk-VS4CDDEF.js";import{A as we,B as _e,G as b,H as Pe,J as B,K as N,L as G,N as Se,R as Ae,b as ue,c as me,d as k,f as fe,h as ge,i as he,j as ve,k as ye,z as Re}from"./chunks/chunk-QJVZZSEO.js";import"./chunks/chunk-WMIZCY2J.js";import"./chunks/chunk-QJJKMNZF.js";import{$ as ul,A as Dd,Aa as Fl,B as jd,Ba as Dl,C as Ud,Ca as jl,D as Wd,Da as Ul,E as zd,Ea as Wl,F as $d,Fa as zl,G as Vd,Ga as $l,H as Bd,Ha as Vl,I as Nd,Ia as Bl,J as Gd,K as Hd,L as Jd,M as Qd,N as Yd,O as Zd,P as el,Q as tl,R as nl,S as sl,T as ol,U as il,V as rl,W as al,X as dl,Y as ll,Z as cl,_ as pl,a as Jt,aa as ml,b as Qt,ba as fl,c as Yt,ca as gl,d as yd,da as hl,e as Rd,ea as vl,f as wd,fa as yl,g as _d,ga as Rl,h as Pd,ha as wl,i as Sd,ia as _l,j as Ad,ja as Pl,k as Id,ka as Sl,l as Ed,la as Al,m as xd,ma as Il,n as kd,na as El,o as bd,oa as xl,p as Cd,pa as kl,q as Md,qa as bl,r as Ld,ra as Cl,s as Td,sa as Ml,t as Od,ta as Ll,u as Kd,ua as Tl,v as qd,va as Ol,w as E,wa as $,x as Xd,xa as Kl,y as x,ya as ql,z as Fd,za as Xl}from"./chunks/chunk-QAQ2HNXD.js";import{a as Di,b as ji,c as Ui,d as Wi,e as zi,f as $i,g as Vi,h as Bi,i as Ni,j as wr}from"./chunks/chunk-ALS32RNZ.js";import{a as Gi,b as Hi,c as Ji,d as Qi,e as Yi,f as Zi,g as er,h as tr,i as nr,j as sr,k as or,l as ir,m as rr,n as ar,o as dr,p as lr,q as cr,r as pr,s as ur,t as mr,u as fr,v as gr,w as hr,x as vr,y as yr,z as Rr}from"./chunks/chunk-NBQW7PNZ.js";import{A as xi,E as ki,F as bi,G as Ci,H as Mi,K as Li,M as _r,N as Pr,O as Sr,P as Ar,Q as Ir,R as Er,S as xr,T as kr,V as br,W as Cr,X as Mr,a as Pn,b as Sn,e as ui,ea as xa,f as mi,fa as ka,g as fi,ga as ba,h as gi,ha as Ca,i as hi,ia as Ma,j as vi,ja as La,k as yi,ka as Ta,la as Oa,ma as Ka,na as qa,p as Ri,q as wi,t as _i,u as Pi,ua as Xa,va as Fa,w as Si,x as Ai,y as Ii,z as Ei,za as Da}from"./chunks/chunk-MHRN2LQV.js";import"./chunks/chunk-D6QVXQNI.js";import{a as Fi}from"./chunks/chunk-YRBNXFHY.js";import{$b as Hr,$c as Ja,A as eo,Aa as Qo,Ab as qi,Ac as Pa,Ad as gd,B as to,Ba as Yo,Bb as Xi,Bc as Sa,Bd as hd,C as no,Ca as Zo,Cb as D,Cc as Aa,D as so,Da as ei,Dc as W,E as oo,Ea as ti,Ec as I,F as io,Fa as ni,Fc as Ia,Fd as vd,G as ro,Gc as Ea,H as ao,Hb as Lr,I as lo,Ib as Tr,J as co,Ja as si,Jb as Or,Ka as oi,Kb as Kr,L as po,La as ii,Lb as qr,M as uo,Ma as ri,Mb as A,N as mo,Na as ai,Nb as j,O as fo,Oa as di,Ob as Xr,P as go,Pa as li,Pb as Fr,Q as ho,Qb as U,R as vo,Ra as ci,Rb as Dr,Rc as ja,S as yo,Sa as pi,Sb as jr,Sc as Ua,T as Ro,Tb as Ur,Tc as Wa,U as wo,Ub as Wr,Uc as za,V as _o,Vb as zr,Vc as $a,W as Po,Wb as $r,Wc as Va,X as So,Xb as Vr,Xc as Ba,Y as Ao,Yb as Br,Yc as Na,Z as Io,Zb as Nr,Zc as Ga,_ as Eo,_b as Gr,_c as Ha,ac as Jr,ba as xo,bc as Qr,ca as ko,cc as Yr,cd as Qa,d as Ks,da as bo,dc as Zr,dd as Ya,e as qs,ea as Co,ec as ea,ed as Za,fa as Mo,fc as ta,ga as Lo,gc as na,ha as To,hc as sa,i as Xs,ic as oa,j as Fs,ja as Oo,jc as ia,k as Ds,ka as Ko,kc as ra,kd as ed,l as js,la as qo,lc as aa,ld as td,m as Us,ma as Xo,mc as da,md as nd,n as Ws,na as Fo,nc as la,nd as sd,o as zs,oa as Do,oc as ca,od,p as $s,pa as jo,pc as pa,pd as id,q as Vs,qa as Uo,qc as ua,qd as rd,r as Bs,ra as Wo,rc as ma,rd as ad,s as Ns,sa as zo,sc as fa,sd as dd,t as Gs,ta as $o,tc as ga,td as ld,u as Hs,ua as Vo,uc as ha,ud as cd,v as Js,va as Bo,vc as va,vd as pd,w as Qs,wa as No,wc as ya,wd as z,x as Ys,xa as Go,xb as Ti,xc as Ra,xd as ud,y as Zs,ya as Ho,yb as Oi,yc as wa,yd as md,za as Jo,zb as Ki,zc as _a,zd as fd}from"./chunks/chunk-3HKBBY74.js";import{$ as ht,A as pt,Aa as Kt,B as ut,Ba as qt,C as q,Ca as Xt,D as mt,Da as Ft,E as ft,Ea as Dt,Fa as jt,Ga as Ut,Ha as Wt,Ia as zt,Ja as F,Ka as $t,La as Vt,Ma as Bt,Na as Nt,Oa as Gt,R as gt,Ra as Ht,a as ot,aa as vt,b as it,c as rt,fa as yt,ga as Rt,ha as X,ia as wt,j as at,k as dt,la as _t,ma as Pt,oa as St,pa as At,qa as It,ra as Et,s as lt,sa as xt,t as ct,ta as kt,ua as bt,va as Ct,wa as Mt,xa as Lt,ya as Tt,z as K,za as Ot}from"./chunks/chunk-O7N22GJ3.js";import{$c as us,Aa as $n,Ad as Ms,Bd as Ls,Ic as Nn,Id as Ts,Jc as Gn,Jd as Os,Kc as Hn,Lc as Jn,Mc as Qn,Nc as Yn,Oc as Zn,Pc as es,Qc as ts,Rc as ns,Sc as ss,Tc as os,Uc as is,Vc as rs,Wc as as,Xc as ds,Yc as ls,Zc as cs,_c as ps,a as An,ad as ms,b as In,bd as fs,c as En,d as xn,dd as gs,e as kn,ed as hs,f as bn,fd as vs,gd as ys,h as Cn,hd as Rs,i as Mn,j as Ln,k as Tn,l as On,na as Dn,od as ws,p as Kn,pd as _s,q as qn,qa as jn,qd as Ps,r as Xn,rb as Vn,rd as Ss,s as Fn,sb as Bn,sd as As,td as Is,ud as Es,wd as xs,xa as Un,xd as ks,ya as Wn,yd as bs,za as zn,zd as Cs}from"./chunks/chunk-TLJGOKBT.js";import{H as _n,a as Zt,b as en,c as tn,d as nn,e as sn,f as on,g as rn,h as an,i as dn,j as ln,k as cn,l as pn,m as un,n as mn,o as fn,p as gn,v as hn,w as vn,x as yn,y as Rn,z as wn}from"./chunks/chunk-PZTG2C33.js";import{a as r}from"./chunks/chunk-ONUPGMER.js";import Te from"node:process";var oe=["off","error","info","debug"],se={off:0,error:1,info:2,debug:3};function L(n,e="info"){if(!n)return e;let t=n.trim().toLowerCase();return oe.includes(t)?t:e}r(L,"resolveAcpLogLevel");var R=class{static{r(this,"AcpLogger")}level;sink;constructor(e={}){this.level=e.level??"info",this.sink=e.sink??(t=>{Te.stderr.write(`${t}
|
|
3
|
+
`)})}handleEvent(e){let t=Oe(e);t&&this.log(t.level,t.message,t.fields)}error(e,t){this.log("error",e,t)}info(e,t){this.log("info",e,t)}debug(e,t){this.log("debug",e,t)}log(e,t,s){if(se[this.level]<se[e])return;let o=new Date().toISOString(),i=s?qe(s):"",a=i?` ${i}`:"";this.sink(`[ACP][${e.toUpperCase()}][${o}] ${t}${a}`)}};function Oe(n){switch(n.type){case"server_attached":return{level:"info",message:"ACP server attached",fields:p(n)};case"connection_closed":return{level:"info",message:"ACP connection closed",fields:p(n)};case"initialize_completed":return{level:"info",message:"ACP initialize completed",fields:p(n)};case"session_created":return{level:"info",message:"ACP session created",fields:p(n)};case"session_mode_changed":return{level:"info",message:"ACP session mode changed",fields:p(n)};case"prompt_skipped":return{level:"info",message:"ACP prompt skipped because session was already aborted",fields:p(n)};case"prompt_started":return{level:"info",message:"ACP prompt started",fields:p(n)};case"prompt_preview":return{level:"debug",message:"ACP prompt preview",fields:p(n)};case"prompt_finished":return{level:"info",message:"ACP prompt finished",fields:p(n)};case"prompt_cancelled":return{level:"info",message:"ACP prompt cancelled during execution",fields:p(n)};case"prompt_failed":return{level:"error",message:"ACP prompt failed",fields:p(n)};case"cancel_requested":return{level:"info",message:"ACP cancel requested",fields:p(n)};case"tool_permission_evaluated":return{level:"debug",message:"ACP evaluating tool permission",fields:p(n)};case"tool_permission_resolved":return Ke(n);case"permission_requested":return{level:"info",message:"ACP permission requested",fields:p(n)};case"notification_failed":return{level:"error",message:`Failed to send ${n.label}`,fields:{sessionId:n.sessionId,error:n.error}};case"repo_intelligence_trace":return{level:"debug",message:"ACP repo intelligence trace",fields:p(n)};default:return null}}r(Oe,"mapEventToLogEntry");function p(n){let{type:e,...t}=n;return t}r(p,"toLogFields");function Ke(n){let e={sessionId:n.sessionId,tool:n.tool,toolId:n.toolId,error:n.error};switch(n.outcome){case"auto_allowed_read_only_bash":return{level:"debug",message:"ACP tool permission auto-allowed for read-only bash",fields:e};case"auto_allowed_remembered":return{level:"info",message:"ACP tool permission reused remembered allowance",fields:e};case"blocked_plan_mode":return{level:"info",message:"ACP tool blocked by plan mode",fields:e};case"auto_allowed_plan_mode":return{level:"debug",message:"ACP tool auto-allowed in plan mode",fields:e};case"auto_allowed_policy":return{level:"debug",message:"ACP tool auto-allowed by permission policy",fields:e};case"request_failed_disconnected":return{level:"error",message:"ACP permission request failed because client is disconnected",fields:e};case"request_failed_incomplete":return{level:"error",message:"ACP permission request did not complete",fields:e};case"request_dismissed":return{level:"info",message:"ACP permission request dismissed",fields:e};case"request_rejected":return{level:"info",message:"ACP permission rejected",fields:e};case"request_granted":return{level:"info",message:"ACP permission granted",fields:{...e,remember:n.remember??!1}}}}r(Ke,"mapPermissionOutcomeToLogEntry");function qe(n){return Object.entries(n).flatMap(([e,t])=>t===void 0?[]:`${e}=${Xe(t)}`).join(" ")}r(qe,"formatFields");function Xe(n){return n===null?"null":typeof n=="string"?JSON.stringify(n.length>160?`${n.slice(0,157)}...`:n):String(n)}r(Xe,"formatFieldValue");var w=class{static{r(this,"AcpEventEmitter")}sinks;constructor(e={}){this.sinks=[...e.sinks??[]]}emit(e){for(let t of this.sinks)try{t.handleEvent(e)}catch(s){}}};import{randomUUID as ie}from"node:crypto";import Fe from"node:os";import g from"node:path";import y from"node:process";import{Readable as De,Writable as je}from"node:stream";import{AgentSideConnection as Ue,PROTOCOL_VERSION as re,RequestError as _,ndJsonStream as We}from"@agentclientprotocol/sdk";var pe=["plan","accept-edits","auto-in-project"];function T(n){return z(n)}r(T,"acpIsFileModificationTool");var ze={read:"read",write:"edit",edit:"edit",undo:"edit",bash:"execute",grep:"search",glob:"search",think:"think",fetch:"fetch"},$e=[{id:"plan",name:"Plan",description:"Read-only planning mode. File modifications are blocked except the plan-mode whitelist."},{id:"accept-edits",name:"Accept Edits",description:"File edits are auto-approved. Shell commands still require confirmation unless explicitly remembered."},{id:"auto-in-project",name:"Auto In Project",description:"Project-scoped changes are auto-approved. Protected paths and risky out-of-project operations still require confirmation."}];function O(n,e){if(n==null)return;if(typeof n!="string")throw new Error(`${e} must be a string.`);let t=K(n);return t==="auto"?void 0:t}r(O,"normalizeOptionalEffort");function Ve(n){let e=n.effort;if(e===void 0)return{kind:"absent"};try{return{kind:"value",value:O(e,"Prompt effort")}}catch(t){let s=t instanceof Error?t.message:String(t);throw _.invalidParams({effort:e},s)}}r(Ve,"resolvePromptEffortOverride");function Be(n){let e={};for(let t of n)if("command"in t){let s={};for(let o of t.env??[])s[o.name]=o.value;e[t.name]={type:"stdio",command:t.command,args:t.args??[],env:Object.keys(s).length>0?s:void 0}}else if("type"in t&&t.type==="sse"){let s={};for(let o of t.headers??[])s[o.name]=o.value;e[t.name]={type:"sse",url:t.url,headers:Object.keys(s).length>0?s:void 0}}else if("type"in t&&t.type==="http"){let s={};for(let o of t.headers??[])s[o.name]=o.value;e[t.name]={type:"http",url:t.url,headers:Object.keys(s).length>0?s:void 0}}return e}r(Be,"convertAcpMcpServers");function Ne(n){let e=[];for(let t of n){let s=t.trim();s&&!e.includes(s)&&e.push(s)}return e}r(Ne,"dedupeExtensionPaths");function Ge(n){return Array.isArray(n)?Ne(n.filter(e=>typeof e=="string"&&e.trim().length>0).map(e=>g.isAbsolute(e)?e:g.resolve(g.dirname(k),e))):[]}r(Ge,"normalizeConfiguredExtensionPaths");async function He(n){try{return await U()}catch(e){let t=e instanceof Error?e.message:String(e);return n.error("ACP extension discovery failed: "+t),[]}}r(He,"discoverAcpDefaultExtensions");async function Je(n,e,t){let s=await A(t),o=await j(await A(e),s);await n.loadExtensions(o,{continueOnError:!0,loadSource:"discovery"}),await n.loadExtensions(s,{continueOnError:!0,loadSource:"config"})}r(Je,"loadAcpExtensionGroups");function Qe(n,e="accept-edits"){return n&&pe.includes(n)?n:e}r(Qe,"normalizeAcpPermissionMode");function Ye(n){if(n&&pe.includes(n))return n;throw _.invalidParams({modeId:n},"Invalid session mode. Expected one of: plan, accept-edits, auto-in-project.")}r(Ye,"parseSessionMode");function Ze(n){return{availableModes:$e,currentModeId:n}}r(Ze,"buildModeState");function ae(n){return ze[n]??"other"}r(ae,"inferToolKind");function de(n,e){if(T(n)){let t=typeof e.path=="string"?e.path:void 0;return t?[{path:t}]:void 0}if(n==="bash"){let t=typeof e.command=="string"?e.command:"",s=ee(t);if(s.length>0)return s.map(o=>({path:o}))}}r(de,"inferToolLocations");function et(n){let e=[];for(let t of n){let s=t,o=typeof s.type=="string"?s.type:"";if(o==="text"&&typeof s.text=="string"){e.push(s.text);continue}if(o==="resource_link"&&typeof s.uri=="string"){e.push(`[Resource] ${s.uri}`);continue}if(o==="resource"&&s.resource&&typeof s.resource=="object"){let i=s.resource;if(typeof i.text=="string"){e.push(i.text);continue}typeof i.uri=="string"&&e.push(`[Resource] ${i.uri}`)}}return e.join(`
|
|
4
4
|
|
|
5
|
-
`).trim()}r(
|
|
6
|
-
[ACP Server Error] ${
|
|
7
|
-
`),{stopReason:
|
|
5
|
+
`).trim()}r(et,"extractPromptText");function tt(n){return/^\[(?:Tool Error|Cancelled|Blocked|Error)\]/.test(n)}r(tt,"isToolResultFailure");function nt(n){return n instanceof Error?n.name==="AbortError"||n.message.includes("aborted")||n.message.includes("ABORTED"):!1}r(nt,"isAbortLikeError");function le(n){return n==="queued"?0:n==="running"||n==="waiting_permission"||n==="waiting_user_input"?1:2}r(le,"acpAbortPhaseRank");function ce(n){let e=n?.usage;if(e)return{inputTokens:e.inputTokens,outputTokens:e.outputTokens,totalTokens:e.totalTokens,...e.cachedReadTokens!==void 0?{cachedReadTokens:e.cachedReadTokens}:{},...e.cachedWriteTokens!==void 0?{cachedWriteTokens:e.cachedWriteTokens}:{},...e.thoughtTokens!==void 0?{thoughtTokens:e.thoughtTokens}:{}}}r(ce,"toAcpUsage");var S=class{static{r(this,"KodaXAcpServer")}provider;model;effort;planModeEffort;thinking;reasoningMode;defaultPermissionMode;defaultCwd;hasFixedCwd;agentName;agentVersion;storage;runtimeReady;ownsRuntime;logger;events;bashPrefixExtractor;configuredExtensions;discoveredExtensions;connection=null;sessions=new Map;extensionRuntime;extensionRuntimeReady;disposePromise;constructor(e={}){let t=y.env.KODAX_PROVIDER,s=y.env.KODAX_EFFORT,o=b(),i=o;this.provider=B({explicitProvider:e.provider,environmentProvider:t,configuredProvider:o.provider,defaultProvider:X}),this.model=N({explicitProvider:e.provider,environmentProvider:t,explicitModel:e.model,configuredProvider:o.provider,configuredModel:o.model});let a=e.effort!==void 0||q(s).kind==="value";this.effort=O(G({explicitEffort:e.effort,environmentEffort:s,configuredEffort:o.effort}),"Configured effort"),this.planModeEffort=a?void 0:O(e.planModeEffort??o.planModeEffort,"Configured plan-mode effort"),this.thinking=e.thinking??o.thinking??!1,this.reasoningMode=e.reasoningMode??o.reasoningMode??"auto",this.defaultPermissionMode=Qe(e.permissionMode??o.permissionMode,"accept-edits");let d=g.resolve(e.cwd??y.cwd()),l=Ge(i.extensions),c=new R({level:L(e.logLevel??y.env.KODAX_ACP_LOG,"info")}),u=He(c);this.defaultCwd=d,this.hasFixedCwd=e.cwd!==void 0,this.agentName=e.agentName??"kodax-acp-server",this.agentVersion=e.agentVersion??"0.0.0",this.storage=e.storage??new C,this.logger=c,this.ownsRuntime=e.runtime===void 0,this.runtimeReady=e.runtime?Promise.resolve(e.runtime):M({homeDir:Fe.homedir(),sessionsDir:this.storage.getSessionsDir(),profile:"acp",defaultProvider:this.provider,...this.model!==void 0?{defaultModel:this.model}:{}}),this.configuredExtensions=l,this.discoveredExtensions=u,this.events=new w({sinks:[...e.eventSinks??[],c]}),this.bashPrefixExtractor=$({getProvider:r(()=>F(this.provider),"getProvider"),getModel:r(()=>this.model??"","getModel")});let h=o.mcpServers,f=h&&Object.values(h).some(m=>(m.connect??"lazy")!=="disabled");this.extensionRuntimeReady=(async()=>{let m=await u,v=m.length>0||l.length>0;if(!f&&!v)return;let P=I({config:o});f&&await E(P,h,{reverse:x({cwd:d})}),await Je(P,m,l),P.activate(),this.extensionRuntime=P})().catch(m=>{let v=m instanceof Error?m.message:String(m);c.error("ACP extension initialization failed: "+v)})}attach(e,t){let s=We(t,e),o=new Ue(()=>this,s);this.connection=o;let i=this.effort==="none"?!1:this.thinking,a=this.effort==="none"?"off":this.reasoningMode;return this.events.emit({type:"server_attached",agent:this.agentName,version:this.agentVersion,provider:this.provider,model:this.model??"(default)",cwd:this.defaultCwd,permissionMode:this.defaultPermissionMode,reasoningMode:a,thinking:i,fixedCwd:this.hasFixedCwd}),o.signal.addEventListener("abort",()=>{let d=this.sessions.size;this.events.emit({type:"connection_closed",activeSessions:d}),this.dispose()}),o}async waitForClose(){await this.connection?.closed}async dispose(){return this.disposePromise?this.disposePromise:(this.disposePromise=(async()=>{for(let s of this.sessions.values())await this.abortSessionRuns(s);let e=new Set;for(let s of this.sessions.values())s.ownedExtensionRuntime&&(e.add(s.ownedExtensionRuntime),s.ownedExtensionRuntime=void 0),s.extensionRuntime=void 0;this.sessions.clear(),this.connection=null;let t=this.extensionRuntimeReady;this.extensionRuntimeReady=void 0,await t?.catch(()=>{}),this.extensionRuntime&&(e.add(this.extensionRuntime),this.extensionRuntime=void 0),await Promise.all([...e].map(s=>s.dispose())),this.ownsRuntime&&await(await this.runtimeReady).close().catch(()=>{}),await D()})(),this.disposePromise)}async initialize(e){return this.events.emit({type:"initialize_completed",protocolVersion:re}),{protocolVersion:re,agentInfo:{name:this.agentName,version:this.agentVersion},agentCapabilities:{promptCapabilities:{embeddedContext:!0,image:!1,audio:!1},sessionCapabilities:{}}}}async newSession(e){let t=this.hasFixedCwd?this.defaultCwd:e.cwd??this.defaultCwd;if(!g.isAbsolute(t))throw _.invalidParams({cwd:t},"Session cwd must be an absolute path.");let s=ie(),o=e.mcpServers??[],i={sessionId:s,cwd:g.resolve(t),permissionMode:this.defaultPermissionMode,mcpServers:o,alwaysAllowTools:[],activeRunIds:new Set};if(o.length>0){let d=Be(o),l=I({});await E(l,d,{reverse:x({cwd:i.cwd})}).catch(c=>{let u=c instanceof Error?c.message:String(c);this.logger.error("ACP per-session MCP init failed for "+s+": "+u)}),await this.extensionRuntimeReady,i.ownedExtensionRuntime=l,i.extensionRuntime=this.extensionRuntime?W(l,this.extensionRuntime):l}return await(await this.runtimeReady).sessions.create({sessionId:s,title:"ACP Session",projectPath:i.cwd,gitRoot:i.cwd,surface:"acp"}),this.sessions.set(s,i),this.events.emit({type:"session_created",sessionId:s,cwd:i.cwd,permissionMode:i.permissionMode,mcpServers:i.mcpServers.length}),{sessionId:s,modes:Ze(i.permissionMode)}}async authenticate(){}async setSessionMode(e){let t=this.requireSession(e.sessionId),s=t.permissionMode,o=Ye(e.modeId);return t.permissionMode=o,this.events.emit({type:"session_mode_changed",sessionId:t.sessionId,from:s,to:o}),await this.sendSessionUpdate({sessionId:t.sessionId,update:{sessionUpdate:"current_mode_update",currentModeId:o}}),{}}async prompt(e){let t=this.requireSession(e.sessionId),s=et(e.prompt),o=Ve(e);if(!s)throw _.invalidParams({prompt:e.prompt},"Prompt must include at least one text or resource block with content.");let i=Date.now();return r(async()=>{let d=Date.now();this.events.emit({type:"prompt_started",sessionId:t.sessionId,messageId:e.messageId??null,chars:s.length,cwd:t.cwd,queueDelayMs:d-i}),this.events.emit({type:"prompt_preview",sessionId:t.sessionId,prompt:s});let l;try{this.extensionRuntimeReady&&await this.extensionRuntimeReady,l=await(await this.runtimeReady).runs.start({sessionId:t.sessionId,prompt:s,options:this.buildKodaXOptions(t,o)}),t.activeRunIds.add(l.runId);let u=await l.result;if(u.error)throw u.error;let h=u.phase==="cancelled"||u.phase==="interrupted",f=u.result;if(!f){if(h)return this.events.emit({type:"prompt_cancelled",sessionId:t.sessionId,durationMs:Date.now()-d}),{stopReason:"cancelled",userMessageId:e.messageId??void 0};throw new Error(`Runtime run ${l.runId} ended without a coding result.`)}t.contextTokenSnapshot=f.contextTokenSnapshot;let m=!!f.interrupted||h,v=m?"cancelled":"end_turn";return this.events.emit({type:"prompt_finished",sessionId:t.sessionId,stopReason:v,interrupted:m,durationMs:Date.now()-d}),{stopReason:v,userMessageId:e.messageId??void 0,...ce(f.contextTokenSnapshot)?{usage:ce(f.contextTokenSnapshot)}:{}}}catch(c){if(nt(c))return this.events.emit({type:"prompt_cancelled",sessionId:t.sessionId,durationMs:Date.now()-d}),{stopReason:"cancelled",userMessageId:e.messageId??void 0};let u=c instanceof Error?c.message:String(c);return this.events.emit({type:"prompt_failed",sessionId:t.sessionId,durationMs:Date.now()-d,error:u}),await this.sendTextChunk(t.sessionId,`
|
|
6
|
+
[ACP Server Error] ${u}
|
|
7
|
+
`),{stopReason:"end_turn",userMessageId:e.messageId??void 0}}finally{l&&t.activeRunIds.delete(l.runId)}},"task")()}async cancel(e){let t=this.sessions.get(e.sessionId);this.events.emit({type:"cancel_requested",sessionId:e.sessionId,active:(t?.activeRunIds.size??0)>0}),t&&await this.abortSessionRuns(t)}async abortSessionRuns(e){if(e.activeRunIds.size===0)return;let t=await this.runtimeReady,s=[...e.activeRunIds],o=await Promise.all(s.map(async i=>{try{let a=await t.runs.get(i);return{runId:i,rank:le(a.phase)}}catch(a){let d=a instanceof Error?a.message:String(a);return this.logger.error(`ACP runtime run status lookup failed for ${i}: ${d}`),{runId:i,rank:le("cancelled")}}}));o.sort((i,a)=>i.rank-a.rank),await Promise.all(o.map(({runId:i})=>t.runs.abort(i).catch(a=>{let d=a instanceof Error?a.message:String(a);this.logger.error(`ACP runtime run abort failed for ${i}: ${d}`)})))}requireSession(e){let t=this.sessions.get(e);if(!t)throw _.resourceNotFound(e);return t}buildKodaXOptions(e,t={kind:"absent"}){let s=t.kind==="value"?t.value:e.permissionMode==="plan"&&this.planModeEffort!==void 0?this.planModeEffort:this.effort;return{provider:this.provider,model:this.model,effort:s,thinking:s==="none"?!1:this.thinking,reasoningMode:s==="none"?"off":this.reasoningMode,extensionRuntime:e.extensionRuntime??this.extensionRuntime,session:{id:e.sessionId,storage:this.storage},context:{gitRoot:e.cwd,executionCwd:e.cwd,contextTokenSnapshot:e.contextTokenSnapshot},events:{onTextDelta:r(o=>{this.dispatchNotification("assistant text chunk",e.sessionId,this.sendTextChunk(e.sessionId,o))},"onTextDelta"),onThinkingDelta:r(o=>{this.dispatchNotification("thinking chunk",e.sessionId,this.sendSessionUpdate({sessionId:e.sessionId,update:{sessionUpdate:"agent_thought_chunk",content:{type:"text",text:o}}}))},"onThinkingDelta"),onToolUseStart:r(o=>{this.dispatchNotification("tool call start",e.sessionId,this.sendSessionUpdate({sessionId:e.sessionId,update:{sessionUpdate:"tool_call",toolCallId:o.id,title:o.name,kind:ae(o.name),rawInput:o.input,locations:de(o.name,o.input??{}),status:"pending"}}))},"onToolUseStart"),onToolResult:r(o=>{this.dispatchNotification("tool call update",e.sessionId,this.sendSessionUpdate({sessionId:e.sessionId,update:{sessionUpdate:"tool_call_update",toolCallId:o.id,title:o.name,status:tt(o.content)?"failed":"completed",rawOutput:o.content}}))},"onToolResult"),onRepoIntelligenceTrace:r(o=>{this.events.emit({type:"repo_intelligence_trace",sessionId:e.sessionId,stage:o.stage,summary:o.summary,mode:o.capability?.mode,engine:o.capability?.engine,status:o.capability?.status,cacheHit:o.trace?.cacheHit,capsuleEstimatedTokens:o.trace?.capsuleEstimatedTokens})},"onRepoIntelligenceTrace"),onError:r(o=>{this.dispatchNotification("error text chunk",e.sessionId,this.sendTextChunk(e.sessionId,`
|
|
8
8
|
[Error] ${o.message}
|
|
9
|
-
`))},"onError"),beforeToolExecute:r(async(o,a,d)=>{let l=await this.evaluateToolPermission(e,o,a,d?.toolId);return l.allowed?!0:l.override??!1},"beforeToolExecute")}}}async evaluateToolPermission(e,t,s,i){if(this.events.emit({type:"tool_permission_evaluated",sessionId:e.sessionId,tool:t,toolId:i??null,permissionMode:e.permissionMode}),t==="bash"){let u=typeof s.command=="string"?s.command:"";if(W(u))return this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:i??null,outcome:"auto_allowed_read_only_bash"}),{allowed:!0};if(await z(t,s,e.alwaysAllowTools,this.bashPrefixExtractor))return this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:i??null,outcome:"auto_allowed_remembered"}),{allowed:!0}}if(e.permissionMode==="plan"){let u=Q(t,s,e.cwd);return u?(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:i??null,outcome:"blocked_plan_mode"}),{allowed:!1,override:`${u} Do not try to modify files while planning. Finish the plan first, then hand off to a writable mode.`}):(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:i??null,outcome:"auto_allowed_plan_mode"}),{allowed:!0})}let o=b(t)&&typeof s.path=="string"&&B(g.resolve(e.cwd,s.path),e.cwd),a=U(e.permissionMode).has(t),d=e.permissionMode==="auto-in-project"&&(b(t)&&typeof s.path=="string"&&!$(s.path,e.cwd)||t==="bash"&&typeof s.command=="string"&&G(s.command,e.cwd).dangerous);return!o&&!a&&!d?(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:i??null,outcome:"auto_allowed_policy"}),{allowed:!0}):await this.requestPermissionFromClient(e,t,s,i)}async requestPermissionFromClient(e,t,s,i){if(!this.connection)return this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:i??null,outcome:"request_failed_disconnected"}),{allowed:!1,override:"[Cancelled] ACP client is disconnected, so the permission request could not be completed."};let o=[{optionId:"allow_once",kind:"allow_once",name:"Allow once"},{optionId:"allow_always",kind:"allow_always",name:"Always allow"},{optionId:"reject_once",kind:"reject_once",name:"Reject"}],a={toolCallId:i??Y(),title:t,kind:ee(t),rawInput:s,locations:te(t,s),status:"pending"},d;this.events.emit({type:"permission_requested",sessionId:e.sessionId,tool:t,toolId:a.toolCallId});try{d=await this.connection.requestPermission({sessionId:e.sessionId,toolCall:a,options:o})}catch(l){return this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:a.toolCallId,outcome:"request_failed_incomplete",error:l instanceof Error?l.message:String(l)}),{allowed:!1,override:"[Cancelled] ACP client did not complete the permission request. Operation failed closed."}}return d.outcome.outcome!=="selected"?(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:a.toolCallId,outcome:"request_dismissed"}),{allowed:!1,override:"[Cancelled] Operation cancelled by user"}):(d.outcome.optionId==="allow_always"&&t==="bash"&&(e.alwaysAllowTools=Array.from(new Set([...e.alwaysAllowTools,V(t,s,!1)])).filter(Boolean)),d.outcome.optionId==="reject_once"?(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:a.toolCallId,outcome:"request_rejected"}),{allowed:!1,override:"[Cancelled] Operation cancelled by user"}):(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:a.toolCallId,outcome:"request_granted",remember:d.outcome.optionId==="allow_always"}),{allowed:!0}))}async sendTextChunk(e,t){await this.sendSessionUpdate({sessionId:e,update:{sessionUpdate:"agent_message_chunk",content:{type:"text",text:t}}})}async sendSessionUpdate(e){!this.connection||this.connection.signal.aborted||await this.connection.sessionUpdate(e)}dispatchNotification(e,t,s){s.catch(i=>{if(!this.connection||this.connection.signal.aborted)return;let o=i instanceof Error?i.message:String(i);this.events.emit({type:"notification_failed",sessionId:t,label:e,error:o})})}};async function Qe(n={}){let e=new w(n),t=ke.toWeb(_.stdin),s=Me.toWeb(_.stdout);e.attach(t,s);try{await e.waitForClose()}finally{await e.dispose()}}r(Qe,"runAcpServer");export{J as ACP_LOG_LEVELS,Vd as AUTO_MODE_DENIAL_CONSECUTIVE_THRESHOLD,Bd as AUTO_MODE_DENIAL_CUMULATIVE_THRESHOLD,v as AcpEventEmitter,h as AcpLogger,pl as BASH_POLICY_SPEC,ld as BLOCKER_REQUIRED_CONSECUTIVE_TURNS,Hd as BREAKER_ERROR_THRESHOLD,Jd as BREAKER_WINDOW_MS,ve as BUILTIN_COMMANDS,ji as BUILTIN_WORKFLOWS,bs as CANCELLED_TOOL_RESULT_MESSAGE,Cs as CANCELLED_TOOL_RESULT_PREFIX,Od as CODING_AGENT_MARKER,nd as CODING_INVARIANTS,va as CODING_SUMMARY_PROMPT,ya as CODING_UPDATE_SUMMARY_PROMPT,Mr as CapabilityDeniedError,od as Client,fa as CombinedExtensionRuntime,Lr as ConstructionManifestError,_a as DEFAULT_CODING_AGENT_NAME,Ed as DEFAULT_DANGEROUS_PATTERNS,br as DEFAULT_HANDLER_TIMEOUT_MS,ni as DEFAULT_RESILIENCE_CONFIG,Id as DEFAULT_SAFE_PATTERNS,Wr as DEFAULT_SELF_MODIFY_BUDGET,al as DEFAULT_SPECULATIVE_WINDOW_MS,Ms as DEFAULT_TOOL_OUTPUT_MAX_BYTES,ks as DEFAULT_TOOL_OUTPUT_MAX_LINES,ki as DEFAULT_WORKFLOW_GENERATION_TIMEOUT_MS,Mn as DefaultSummaryCompaction,Md as EMIT_VERDICT_TOOL_NAME,gn as ErrorCategory,R as FileSessionStorage,Qo as GENERATOR_AGENT_NAME,Nt as ImageResizeError,Pn as KODAX_API_MIN_INTERVAL,S as KODAX_CONFIG_FILE,L as KODAX_DEFAULT_PROVIDER,yn as KODAX_DEFAULT_TIMEOUT,oe as KODAX_DIR,pn as KODAX_FILE_MEDIA_TYPES,_n as KODAX_HARD_TIMEOUT,ln as KODAX_IMAGE_MEDIA_TYPES,In as KODAX_MAX_INCOMPLETE_RETRIES,wn as KODAX_MAX_RETRIES,vn as KODAX_MAX_TOKENS,ut as KODAX_PROVIDERS,pt as KODAX_PROVIDER_SNAPSHOTS,tt as KODAX_REASONING_MODE_SEQUENCE,An as KODAX_RETRY_BASE_DELAY,ie as KODAX_SESSIONS_DIR,nt as KODAX_STABLE_EFFORT_INTENTS,En as KODAX_STAGGER_DELAY,La as KODAX_TOOLS,Ws as KODAX_UNDERLYING_CAPABILITY_TOPICS,le as KODAX_VERSION,cn as KODAX_VIDEO_MEDIA_TYPES,w as KodaXAcpServer,lt as KodaXAnthropicCompatProvider,dt as KodaXBaseProvider,od as KodaXClient,He as KodaXError,ma as KodaXExtensionRuntime,$t as KodaXMediaError,ct as KodaXOpenAICompatProvider,Je as KodaXProviderError,Ye as KodaXRateLimitError,Vt as KodaXSessionError,Bt as KodaXTerminalError,zt as KodaXToolError,ds as LINEAGE_ENTRY_TYPES,Si as LSP_SERVERS,cs as LineageCompaction,ls as LineageExtension,xi as LspService,zs as MANUAL_REGISTRY,Us as MANUAL_TOPIC_IDS,Zt as MAX_DIMENSION,Nn as McpAuthRequiredError,is as McpCapabilityProvider,$n as McpExpiredSessionError,rs as McpManager,os as McpServerRuntime,on as PASTE_TMP_DIR_ENV,rn as PASTE_TMP_TTL_MS,Go as PLANNER_AGENT_NAME,Sn as PROMISE_PATTERN,ur as PROMPT_SECTION_REGISTRY,Td as PROTOCOL_EMITTER_TOOLS,di as ProviderRecoveryCoordinator,Ls as READ_DEFAULT_LIMIT,Os as READ_MAX_LINE_CHARS,Ts as READ_PREFLIGHT_SIZE_BYTES,la as REPO_EXPLORER_AGENT_NAME,ca as REPO_EXPLORER_TOOL_NAMES,Tn as Runner,No as SCOUT_AGENT_NAME,Il as SCOUT_THEN_AUTHOR_PROMPT_LINES,yr as SELF_KNOWLEDGE_ROUTING_RULE,pr as SYSTEM_PROMPT,nr as SYSTEM_WORKFLOW_LIMITS,ri as StableBoundaryTracker,en as TARGET_RAW_SIZE_BYTES,Yo as TASK_ENGINE_ROLE_AGENTS,id as TOOL_RESULT_TRUNCATION_GUARDRAIL_NAME,ml as TRACING_ENV,Ho as WORKER_AGENT_NAME,bi as WORKFLOW_GENERATION_SYSTEM_PROMPT,Qr as _resetRuntimeForTesting,Yr as activate,ao as analyzeChangedScope,jr as appendAuditEntry,ys as appendSessionLineageLabel,xa as applyAccountingDelta,_s as applySessionCompaction,To as applyToolResultGuardrail,Ss as archiveOldIslands,Pl as authorWorkflowViaWorker,Qd as autoModeDenialShouldFallback,ol as bashSignalCollector,fl as bootstrapTracing,Ya as boundedRevise,el as breakerShouldFallback,Za as budgetCeiling,sr as buildApprovalSummary,ba as buildBlockedGoal,_r as buildCapabilityContextSections,qd as buildClassifierPrompt,ka as buildCompleteGoal,Sa as buildCreatedGoal,_i as buildFallbackRoutingDecision,md as buildGoalRuntimeBinding,ss as buildInitializeCapabilities,Xr as buildLlmReviewPrompt,Bs as buildManualToolDescription,P as buildMcpReverseCapabilities,Ra as buildPausedGoal,li as buildPromptMessageContent,hr as buildPromptSnapshot,mi as buildProviderCapabilitySnapshot,wi as buildProviderPolicyHintsForDecision,fi as buildProviderPolicyPromptNotes,ro as buildRepoIntelligenceContext,wo as buildRepoIntelligenceIndex,so as buildRepoOverview,Ca as buildResumedGoal,El as buildScoutThenAuthorPrompt,vr as buildSelfKnowledgeRoutingRule,Es as buildSessionTree,Ar as buildSystemPrompt,wr as buildSystemPromptSnapshot,Oi as buildWorkflowGenerationSkillContext,Ti as buildWorkflowGenerationUserPrompt,sl as checkAbsoluteDeny,ci as checkIncompleteToolCalls,Ii as checkPromiseSignal,or as clampWorkflowLimits,Xd as classify,Sd as classifyBashCommand,hn as classifyError,oi as classifyResilienceError,Dn as cleanupIncompleteToolCalls,Kt as clearRuntimeModelProviders,rl as collectAllSignals,X as combineExtensionRuntimes,Rd as computeInputSignature,Fd as computeRulesFingerprint,Gr as configureRuntime,Xo as convertCapabilityReadResult,Ko as convertProviderSearchResults,Ps as countActiveLineageMessages,Rn as countTokens,Cn as createAgent,$d as createAutoModeDenialTracker,cl as createAutoModeToolGuardrail,Pd as createBashClassifierConfig,j as createBashPrefixExtractor,ja as createBuiltinToolDefinition,Yd as createCircuitBreaker,Fi as createCodingWorkflowBackend,Tr as createCtxProxy,It as createCustomProvider,wa as createDefaultCodingAgent,xd as createDenialTracker,I as createExtensionRuntime,Jt as createFileArtifactFromPath,bn as createHandoff,Ht as createImageArtifactFromPath,kn as createInMemorySession,we as createInteractiveContext,yd as createKodaXTaskRunner,Un as createMcpCapabilityId,as as createMcpManager,Gn as createMcpTransport,mr as createPromptSection,Ai as createReasoningPlan,tr as createRunGraphWriter,Ha as createSessionControl,ms as createSessionLineage,rd as createToolResultTruncationGuardrail,Yt as createVideoArtifactFromPath,hl as createWorkflowLifecycleController,_l as createWorkflowPatternTemplateModule,dr as createWorkflowRunManager,wl as decideWorkflowInvocation,A as dedupeExtensionPathsByEntrypoint,jn as defaultMcpCacheDir,kr as defaultPolicy,Qi as deleteSavedWorkflow,Nr as disableSelfModify,Yn as discoverAuthorizationServerMetadata,K as discoverDefaultExtensions,Cr as discoverExtensionsInDirectory,Rr as discoverExtensionsInDirectoryDetailed,da as discoverMarkdownAgents,Zn as discoverOAuthEndpoints,Jn as discoverProtectedResourceMetadata,zi as discoverSavedWorkflows,ti as drainPendingSwaps,ot as effortToLegacyReasoningMode,Ld as emitVerdict,rr as emitWorkflowAgentDigest,fn as enqueueWithArtifacts,pa as ensureBuiltinRepoExplorerAgent,xn as estimateTokens,gi as evaluateProviderPolicy,q as excludeExtensionPathsByEntrypoint,Ir as exec,_e as executeCommand,Qa as executeTool,xs as extractArtifactLedger,ul as extractCommandPrefix,ui as extractComparableUserMessageText,qo as extractHtmlTitle,Hn as extractInsufficientScope,pi as extractPromptComparableText,Qn as extractResourceMetadataUrl,us as extractTitleFromMessages,il as fileSignalCollector,Do as finalizeRetrievalResult,oa as findByVersion,ws as findPreviousUserEntryId,Is as forkSessionLineage,$o as formatAgentsForPrompt,wd as formatParallelDispatchResult,qs as formatSize,ps as generateSessionId,Ki as generateWorkflow,Xi as generateWorkflowFromOptions,ha as getActiveExtensionRuntime,qn as getAgentConfigHome,Kn as getAgentConfigPath,Wa as getAllRegisteredTools,Xn as getAppDataDir,Ft as getAvailableProviderNames,Da as getBuiltinRegisteredToolDefinition,Fa as getBuiltinToolDefinition,Ui as getBuiltinWorkflow,kt as getCustomModelCapabilities,Pt as getCustomProvider,Rt as getCustomProviderList,bt as getCustomProviderModelDescriptors,Ct as getCustomProviderModels,xt as getCustomProviderNames,Sr as getDefaultExtensionDirectory,Ri as getDefaultLspService,lr as getDefaultWorkflowRunManager,kd as getDenialContext,ge as getGitRoot,So as getImpactEstimate,Vo as getKodaxGlobalDir,Bn as getMcpCachePaths,_t as getModelCapabilities,un as getModelInputCapabilities,Io as getModuleContext,Po as getProcessContext,mt as getProvider,gt as getProviderConfiguredCapabilityProfile,ft as getProviderConfiguredReasoningCapability,pe as getProviderList,ce as getProviderModel,yt as getProviderModelDescriptors,ht as getProviderModels,Ka as getRegisteredToolDefinition,Ao as getRepoIntelligenceIndex,oo as getRepoOverview,xo as getRepoRoutingSignals,$a as getRequiredToolParams,Tt as getRuntimeModelProvider,qt as getRuntimeModelProviderNames,fs as getSessionLineagePath,gs as getSessionMessagesFromLineage,Eo as getSymbolContext,Oa as getTool,qa as getToolDefinition,Xa as getToolRegistrations,Lo as getToolResultPolicy,de as getVersion,yl as getWorkflowPatternTemplate,Ia as goalTokenDelta,ei as hasPendingSwap,re as hydrateProcessEnvFromShell,Gt as inferImageMediaType,yi as inferTaskType,Qt as inferVideoMediaType,Hs as inspectEditFailure,_o as inspectRepoIntelligenceRuntime,St as isCustomProviderName,bd as isDeniedRecently,Xt as isKnownProvider,_d as isParallelDispatchDirective,ue as isProviderConfigured,vt as isProviderName,Ot as isRuntimeModelProviderName,ii as isSessionRecoveryCandidateError,Pr as isSupportedExtensionModulePath,D as isToolFileMutation,Ba as isToolMutation,Va as isToolNetworkRead,za as isToolPlanModeAllowed,Ma as isValidTokenBudget,Ei as languageIdForPath,ia as listAll,Ut as listAllModelCapabilities,ta as listArtifacts,wt as listBuiltinModelCapabilities,Ua as listBuiltinToolDefinitions,Wi as listBuiltinWorkflows,sa as listConstructed,Mt as listCustomProviderModelCapabilities,Ga as listToolDefinitions,Na as listTools,vl as listWorkflowPatternTemplates,Bo as loadAgentsFiles,ra as loadAgentsFromMarkdown,Wd as loadAutoRules,me as loadConfig,Ji as loadGeneratedWorkflowFromRun,Or as loadHandler,aa as loadMarkdownAgentScope,$i as loadSavedWorkflow,Bi as loadSavedWorkflowCapsule,ns as loadValidToken,Aa as makeDisabledGoalToolsContext,st as mapLegacyReasoningModeToEffortIntent,gd as mcpRootsFromWorkspace,Rs as mergeArtifactLedger,Wn as normalizeMcpCapabilityId,tn as normalizePastedImage,M as normalizeReasoningEffortValue,Vi as normalizeWorkflowModule,fr as orderPromptSections,Di as parallelInvestigation,Ud as parseAutoRules,Kd as parseClassifierOutput,ye as parseCommand,Qs as parseEditToolError,Fr as parseLlmReviewVerdict,zn as parseMcpCapabilityId,tl as parseModelSpec,it as parseReasoningEffortEnv,et as parseTimeoutSecEnvMs,qi as parseWorkflowGeneration,ts as performOAuthLogin,an as persistImageAsBlock,Ds as persistToolOutput,Zi as preflightWorkflowCapsule,x as prepareRuntimeConfig,Ro as prewarmRepoIntelligenceCaches,Pe as processSpecialSyntax,Ci as providerResilienceConfigFromTimeouts,dn as prunePasteTmpDir,he as rateLimitedCall,sn as readAndNormalizeClipboardImage,na as readArtifact,Ur as readAuditEntries,zr as readBudget,nn as readClipboardImage,$r as readDisableState,dl as readSpeculativeWindowFromEnv,Dd as readTrustState,vi as reasoningModeToDepth,ai as reconstructMessagesWithToolGuard,Gd as recordAutoModeAllow,Nd as recordAutoModeBlock,ad as recordBlockerAttempt,Zd as recordBreakerError,Cd as recordDenial,sd as registerCodingInvariants,ae as registerConfiguredCustomProviders,E as registerConfiguredMcpCapabilityProvider,Et as registerCustomProviders,Lt as registerModelProvider,es as registerOAuthClient,hd as registerOfficialSandboxExtension,Ln as registerPresetDispatcher,Ta as registerTool,Zr as rehydrateActiveArtifacts,Vr as remainingSelfModifyBudget,Gi as renameSavedWorkflow,lo as renderChangedScope,ho as renderImpactEstimate,mo as renderModuleContext,go as renderProcessContext,gr as renderPromptSections,io as renderRepoOverview,Fo as renderRetrievalResult,fo as renderSymbolContext,Hi as replaceSavedWorkflow,Pi as reportLspDiagnostics,dd as resetBlockerCounter,Br as resetBudget,C as resolveAcpLogLevel,nl as resolveClassifierModel,Zo as resolveConstructedAgent,xr as resolveExtensionEntrypoint,Vs as resolveKodaXManual,jt as resolveModelCapabilities,T as resolveProvider,Dt as resolveProviderModelDescriptors,rt as resolveReasoningEffort,at as resolveReasoningEffortForModelSwitch,hi as resolveReasoningMode,yo as resolveRepoIntelligenceMode,vo as resolveRepoIntelligenceRuntimeConfig,si as resolveResilienceConfig,hs as resolveSessionLineageTarget,ed as resolveToolCapability,Wt as resolveWireEffort,Mi as resolveWorkflowGenerationTimeoutMs,gl as resolveWorkflowIdentity,ea as revoke,As as rewindSessionLineage,ua as rollbackSelfModify,Qe as runAcpServer,qr as runAstRules,Ie as runInkInteractiveMode,Ee as runInteractiveMode,F as runKodaX,Dr as runLlmReview,fd as runManagedTask,vd as runOrchestration,ar as runWorkflowFromOptions,ir as runWorkflowModule,er as safeWorkflowArtifactName,fe as saveConfig,Ni as saveGeneratedWorkflow,Yi as saveGeneratedWorkflowFromRun,Vn as searchMcpCatalog,ga as setActiveExtensionRuntime,On as setAgentConfigHome,vs as setSessionLineageActiveEntry,Pa as shouldFlipBudgetLimited,O as shutdownDefaultLspService,ll as speculativeRace,Hr as stage,Ja as startKodaX,cr as startManagedWorkflow,zd as stripAssistantText,Oo as stripHtmlToText,Jr as testArtifact,Ze as timeoutSecToMs,no as toolAskUserQuestion,Ys as toolBash,uo as toolChangedDiff,po as toolChangedScope,Wo as toolCodeSearch,Gs as toolEdit,Zs as toolGlob,eo as toolGrep,Mo as toolImpactEstimate,Js as toolInsertAfterAnchor,Co as toolModuleContext,td as toolPermission,ko as toolProcessContext,js as toolRead,co as toolRepoOverview,zo as toolSemanticLookup,bo as toolSymbolContext,to as toolUndo,Uo as toolWebFetch,jo as toolWebSearch,Ns as toolWrite,Ae as touchContext,Ks as truncateHead,Fs as truncateLine,Xs as truncateTail,jd as trustProjectRules,Ea as turnWallTimeDelta,Fn as validateAndFixToolHistory,At as validateCustomProviderConfig,Li as validateGeneratedWorkflowSource,mn as validateInputArtifactsForModel,Ad as validateSubtaskIndependence,Kr as validateToolSchemaForProvider,ud as verifyGoalCompletion,Er as webhook,cd as withGoalBeforeNextTurn,pd as withGoalStopHook,$s as withManualToolBranding,Jo as workerAgent,Al as workflowStartOutcomeConsumesTurn};
|
|
9
|
+
`))},"onError"),beforeToolExecute:r(async(o,i,a)=>{let d=await this.evaluateToolPermission(e,o,i,a?.toolId);return d.allowed?!0:d.override??!1},"beforeToolExecute")}}}async evaluateToolPermission(e,t,s,o){if(this.events.emit({type:"tool_permission_evaluated",sessionId:e.sessionId,tool:t,toolId:o??null,permissionMode:e.permissionMode}),t==="bash"){let c=typeof s.command=="string"?s.command:"";if(H(c))return this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:o??null,outcome:"auto_allowed_read_only_bash"}),{allowed:!0};if(await J(t,s,e.alwaysAllowTools,this.bashPrefixExtractor))return this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:o??null,outcome:"auto_allowed_remembered"}),{allowed:!0}}if(e.permissionMode==="plan"){let c=ne(t,s,e.cwd);return c?(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:o??null,outcome:"blocked_plan_mode"}),{allowed:!1,override:`${c} Do not try to modify files while planning. Finish the plan first, then hand off to a writable mode.`}):(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:o??null,outcome:"auto_allowed_plan_mode"}),{allowed:!0})}let i=T(t)&&typeof s.path=="string"&&Y(g.resolve(e.cwd,s.path),e.cwd),a=V(e.permissionMode).has(t),d=e.permissionMode==="auto-in-project"&&(T(t)&&typeof s.path=="string"&&!Z(s.path,e.cwd)||t==="bash"&&typeof s.command=="string"&&te(s.command,e.cwd).dangerous);return!i&&!a&&!d?(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:o??null,outcome:"auto_allowed_policy"}),{allowed:!0}):await this.requestPermissionFromClient(e,t,s,o)}async requestPermissionFromClient(e,t,s,o){if(!this.connection)return this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:o??null,outcome:"request_failed_disconnected"}),{allowed:!1,override:"[Cancelled] ACP client is disconnected, so the permission request could not be completed."};let i=[{optionId:"allow_once",kind:"allow_once",name:"Allow once"},{optionId:"allow_always",kind:"allow_always",name:"Always allow"},{optionId:"reject_once",kind:"reject_once",name:"Reject"}],a={toolCallId:o??ie(),title:t,kind:ae(t),rawInput:s,locations:de(t,s),status:"pending"},d;this.events.emit({type:"permission_requested",sessionId:e.sessionId,tool:t,toolId:a.toolCallId});try{d=await this.connection.requestPermission({sessionId:e.sessionId,toolCall:a,options:i})}catch(l){return this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:a.toolCallId,outcome:"request_failed_incomplete",error:l instanceof Error?l.message:String(l)}),{allowed:!1,override:"[Cancelled] ACP client did not complete the permission request. Operation failed closed."}}return d.outcome.outcome!=="selected"?(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:a.toolCallId,outcome:"request_dismissed"}),{allowed:!1,override:"[Cancelled] Operation cancelled by user"}):(d.outcome.optionId==="allow_always"&&t==="bash"&&(e.alwaysAllowTools=Array.from(new Set([...e.alwaysAllowTools,Q(t,s,!1)])).filter(Boolean)),d.outcome.optionId==="reject_once"?(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:a.toolCallId,outcome:"request_rejected"}),{allowed:!1,override:"[Cancelled] Operation cancelled by user"}):(this.events.emit({type:"tool_permission_resolved",sessionId:e.sessionId,tool:t,toolId:a.toolCallId,outcome:"request_granted",remember:d.outcome.optionId==="allow_always"}),{allowed:!0}))}async sendTextChunk(e,t){await this.sendSessionUpdate({sessionId:e,update:{sessionUpdate:"agent_message_chunk",content:{type:"text",text:t}}})}async sendSessionUpdate(e){!this.connection||this.connection.signal.aborted||await this.connection.sessionUpdate(e)}dispatchNotification(e,t,s){s.catch(o=>{if(!this.connection||this.connection.signal.aborted)return;let i=o instanceof Error?o.message:String(o);this.events.emit({type:"notification_failed",sessionId:t,label:e,error:i})})}};async function st(n={}){let e=new S(n),t=De.toWeb(y.stdin),s=je.toWeb(y.stdout);e.attach(t,s);try{await e.waitForClose()}finally{await e.dispose()}}r(st,"runAcpServer");export{oe as ACP_LOG_LEVELS,ba as ALWAYS_RESIDENT_TOOL_NAMES,ul as AUTO_MODE_DENIAL_CONSECUTIVE_THRESHOLD,ml as AUTO_MODE_DENIAL_CUMULATIVE_THRESHOLD,w as AcpEventEmitter,R as AcpLogger,Tl as BASH_POLICY_SPEC,Md as BLOCKER_REQUIRED_CONSECUTIVE_TURNS,yl as BREAKER_ERROR_THRESHOLD,Rl as BREAKER_WINDOW_MS,Ie as BUILTIN_COMMANDS,Ji as BUILTIN_WORKFLOWS,qs as CANCELLED_TOOL_RESULT_MESSAGE,Ks as CANCELLED_TOOL_RESULT_PREFIX,nl as CODING_AGENT_MARKER,Ad as CODING_INVARIANTS,Ma as CODING_SUMMARY_PROMPT,La as CODING_UPDATE_SUMMARY_PROMPT,Ur as CapabilityDeniedError,Ed as Client,Aa as CombinedExtensionRuntime,Wr as ConstructionManifestError,Xa as DEFAULT_CODING_AGENT_NAME,Vd as DEFAULT_DANGEROUS_PATTERNS,Dr as DEFAULT_HANDLER_TIMEOUT_MS,ui as DEFAULT_RESILIENCE_CONFIG,$d as DEFAULT_SAFE_PATTERNS,Yr as DEFAULT_SELF_MODIFY_BUDGET,bl as DEFAULT_SPECULATIVE_WINDOW_MS,Fs as DEFAULT_TOOL_OUTPUT_MAX_BYTES,Xs as DEFAULT_TOOL_OUTPUT_MAX_LINES,ji as DEFAULT_WORKFLOW_GENERATION_TIMEOUT_MS,Fn as DefaultSummaryCompaction,Zd as EMIT_VERDICT_TOOL_NAME,Pn as ErrorCategory,C as FileSessionStorage,ii as GENERATOR_AGENT_NAME,en as ImageResizeError,Mn as KODAX_API_MIN_INTERVAL,k as KODAX_CONFIG_FILE,X as KODAX_DEFAULT_PROVIDER,In as KODAX_DEFAULT_TIMEOUT,ue as KODAX_DIR,yn as KODAX_FILE_MEDIA_TYPES,En as KODAX_HARD_TIMEOUT,hn as KODAX_IMAGE_MEDIA_TYPES,bn as KODAX_MAX_INCOMPLETE_RETRIES,xn as KODAX_MAX_RETRIES,An as KODAX_MAX_TOKENS,Rt as KODAX_PROVIDERS,yt as KODAX_PROVIDER_SNAPSHOTS,lt as KODAX_REASONING_MODE_SEQUENCE,kn as KODAX_RETRY_BASE_DELAY,me as KODAX_SESSIONS_DIR,ct as KODAX_STABLE_EFFORT_INTENTS,Cn as KODAX_STAGGER_DELAY,ed as KODAX_TOOLS,Hs as KODAX_UNDERLYING_CAPABILITY_TOPICS,ve as KODAX_VERSION,vn as KODAX_VIDEO_MEDIA_TYPES,S as KodaXAcpServer,ht as KodaXAnthropicCompatProvider,gt as KodaXBaseProvider,Ed as KodaXClient,ot as KodaXError,Sa as KodaXExtensionRuntime,Zt as KodaXMediaError,vt as KodaXOpenAICompatProvider,it as KodaXProviderError,rt as KodaXRateLimitError,Qt as KodaXSessionError,Yt as KodaXTerminalError,Jt as KodaXToolError,gs as LINEAGE_ENTRY_TYPES,Ki as LSP_SERVERS,vs as LineageCompaction,hs as LineageExtension,qi as LspService,Js as MANUAL_REGISTRY,Gs as MANUAL_TOPIC_IDS,an as MAX_DIMENSION,es as McpAuthRequiredError,us as McpCapabilityProvider,Zn as McpExpiredSessionError,ms as McpManager,ps as McpServerRuntime,un as PASTE_TMP_DIR_ENV,mn as PASTE_TMP_TTL_MS,oi as PLANNER_AGENT_NAME,Ln as PROMISE_PATTERN,Pr as PROMPT_SECTION_REGISTRY,tl as PROTOCOL_EMITTER_TOOLS,yi as ProviderRecoveryCoordinator,Ds as READ_DEFAULT_LIMIT,Us as READ_MAX_LINE_CHARS,js as READ_PREFLIGHT_SIZE_BYTES,Ra as REPO_EXPLORER_AGENT_NAME,wa as REPO_EXPLORER_TOOL_NAMES,jn as Runner,si as SCOUT_AGENT_NAME,$l as SCOUT_THEN_AUTHOR_PROMPT_LINES,kr as SELF_KNOWLEDGE_ROUTING_RULE,_r as SYSTEM_PROMPT,ur as SYSTEM_WORKFLOW_LIMITS,hi as StableBoundaryTracker,dn as TARGET_RAW_SIZE_BYTES,di as TASK_ENGINE_ROLE_AGENTS,xd as TOOL_RESULT_TRUNCATION_GUARDRAIL_NAME,Kl as TRACING_ENV,ri as WORKER_AGENT_NAME,Di as WORKFLOW_GENERATION_SYSTEM_PROMPT,ia as _resetRuntimeForTesting,da as activate,go as analyzeChangedScope,Jr as appendAuditEntry,Is as appendSessionLineageLabel,Va as applyAccountingDelta,Es as applySessionCompaction,zo as applyToolResultGuardrail,Ls as archiveOldIslands,Bl as authorWorkflowViaWorker,vl as autoModeDenialShouldFallback,El as bashSignalCollector,ql as bootstrapTracing,wd as boundedRevise,Pl as breakerShouldFallback,_d as budgetCeiling,mr as buildApprovalSummary,Ga as buildBlockedGoal,br as buildCapabilityContextSections,sl as buildClassifierPrompt,Ha as buildCompleteGoal,$a as buildCreatedGoal,bi as buildFallbackRoutingDecision,Kd as buildGoalRuntimeBinding,cs as buildInitializeCapabilities,Nr as buildLlmReviewPrompt,Ys as buildManualToolDescription,x as buildMcpReverseCapabilities,Ba as buildPausedGoal,Ri as buildPromptMessageContent,Er as buildPromptSnapshot,Si as buildProviderCapabilitySnapshot,Ci as buildProviderPolicyHintsForDecision,Ai as buildProviderPolicyPromptNotes,fo as buildRepoIntelligenceContext,xo as buildRepoIntelligenceIndex,po as buildRepoOverview,Na as buildResumedGoal,Vl as buildScoutThenAuthorPrompt,xr as buildSelfKnowledgeRoutingRule,Cs as buildSessionTree,Mr as buildSystemPrompt,Cr as buildSystemPromptSnapshot,Do as buildToolResultBudget,jo as buildToolResultBudgetFromUsage,Qa as buildToolSearchIndex,$i as buildWorkflowGenerationSkillContext,zi as buildWorkflowGenerationUserPrompt,Il as checkAbsoluteDeny,wi as checkIncompleteToolCalls,Li as checkPromiseSignal,Uo as clampToolResultPolicyToBudget,fr as clampWorkflowLimits,il as classify,Nd as classifyBashCommand,Sn as classifyError,fi as classifyResilienceError,Bn as cleanupIncompleteToolCalls,zt as clearRuntimeModelProviders,kl as collectAllSignals,W as combineExtensionRuntimes,Hd as computeInputSignature,rl as computeRulesFingerprint,oa as configureRuntime,Ka as consumeCompactionCooldown,No as convertCapabilityReadResult,Bo as convertProviderSearchResults,Ms as countActiveLineageMessages,On as countTokens,Kn as createAgent,fl as createAutoModeDenialTracker,Ll as createAutoModeToolGuardrail,Bd as createBashClassifierConfig,$ as createBashPrefixExtractor,dd as createBuiltinToolDefinition,wl as createCircuitBreaker,Gi as createCodingWorkflowBackend,Ta as createCompactionAntiThrashState,zr as createCtxProxy,bt as createCustomProvider,Fa as createDefaultCodingAgent,Gd as createDenialTracker,I as createExtensionRuntime,on as createFileArtifactFromPath,qn as createHandoff,sn as createImageArtifactFromPath,Xn as createInMemorySession,ke as createInteractiveContext,M as createKodaXRuntime,jd as createKodaXTaskRunner,Gn as createMcpCapabilityId,fs as createMcpManager,ts as createMcpTransport,Sr as createPromptSection,Mi as createReasoningPlan,pr as createRunGraphWriter,ka as createRuntimeContextBudgetSnapshot,yd as createSessionControl,ws as createSessionLineage,kd as createToolResultTruncationGuardrail,rn as createVideoArtifactFromPath,Fl as createWorkflowLifecycleController,Ul as createWorkflowPatternTemplateModule,yr as createWorkflowRunManager,Wl as decideWorkflowInvocation,A as dedupeExtensionPathsByEntrypoint,Nn as defaultMcpCacheDir,jr as defaultPolicy,ir as deleteSavedWorkflow,sa as disableSelfModify,is as discoverAuthorizationServerMetadata,U as discoverDefaultExtensions,Fr as discoverExtensionsInDirectory,Xr as discoverExtensionsInDirectoryDetailed,ya as discoverMarkdownAgents,rs as discoverOAuthEndpoints,os as discoverProtectedResourceMetadata,Zi as discoverSavedWorkflows,pi as drainPendingSwaps,ut as effortToLegacyReasoningMode,el as emitVerdict,hr as emitWorkflowAgentDigest,_n as enqueueWithArtifacts,_a as ensureBuiltinRepoExplorerAgent,Tn as estimateTokens,xa as estimateToolSchemaTokens,Ii as evaluateProviderPolicy,j as excludeExtensionPathsByEntrypoint,Lr as exec,xe as executeCommand,vd as executeTool,Ts as extractArtifactLedger,Ol as extractCommandPrefix,Pi as extractComparableUserMessageText,Vo as extractHtmlTitle,ss as extractInsufficientScope,_i as extractPromptComparableText,ns as extractResourceMetadataUrl,Rs as extractTitleFromMessages,xl as fileSignalCollector,Ho as finalizeRetrievalResult,fa as findByVersion,xs as findPreviousUserEntryId,bs as forkSessionLineage,ni as formatAgentsForPrompt,Wd as formatParallelDispatchResult,Ws as formatSize,ys as generateSessionId,Bi as generateWorkflow,Ni as generateWorkflowFromOptions,Ea as getActiveExtensionRuntime,Wn as getAgentConfigHome,zn as getAgentConfigPath,cd as getAllRegisteredTools,$n as getAppDataDir,Vt as getAvailableProviderNames,ad as getBuiltinRegisteredToolDefinition,rd as getBuiltinToolDefinition,Qi as getBuiltinWorkflow,Xt as getCustomModelCapabilities,Mt as getCustomProvider,Ot as getCustomProviderList,qt as getCustomProviderModelDescriptors,Kt as getCustomProviderModels,Tt as getCustomProviderNames,Kr as getDefaultExtensionDirectory,Xi as getDefaultLspService,Rr as getDefaultWorkflowRunManager,Yd as getDenialContext,Se as getGitRoot,Lo as getImpactEstimate,ei as getKodaxGlobalDir,Yn as getMcpCachePaths,Et as getModelCapabilities,Rn as getModelInputCapabilities,bo as getModuleContext,Mo as getProcessContext,wt as getProvider,Pt as getProviderConfiguredCapabilityProfile,_t as getProviderConfiguredReasoningCapability,Re as getProviderList,ye as getProviderModel,It as getProviderModelDescriptors,St as getProviderModels,od as getRegisteredToolDefinition,ko as getRepoIntelligenceIndex,uo as getRepoOverview,To as getRepoRoutingSignals,fd as getRequiredToolParams,jt as getRuntimeModelProvider,Wt as getRuntimeModelProviderNames,_s as getSessionLineagePath,Ps as getSessionMessagesFromLineage,Co as getSymbolContext,nd as getTool,sd as getToolDefinition,id as getToolRegistrations,Wo as getToolResultPolicy,he as getVersion,jl as getWorkflowPatternTemplate,Ua as goalTokenDelta,ci as hasPendingSwap,fe as hydrateProcessEnvFromShell,tn as inferImageMediaType,ki as inferTaskType,nn as inferVideoMediaType,so as inspectEditFailure,Eo as inspectRepoIntelligenceRuntime,Lt as isCustomProviderName,Qd as isDeniedRecently,$t as isKnownProvider,Ud as isParallelDispatchDirective,we as isProviderConfigured,At as isProviderName,Ut as isRuntimeModelProviderName,gi as isSessionRecoveryCandidateError,Or as isSupportedExtensionModulePath,z as isToolFileMutation,md as isToolMutation,ud as isToolNetworkRead,pd as isToolPlanModeAllowed,Ja as isValidTokenBudget,Ti as languageIdForPath,ga as listAll,Gt as listAllModelCapabilities,pa as listArtifacts,xt as listBuiltinModelCapabilities,ld as listBuiltinToolDefinitions,Yi as listBuiltinWorkflows,ma as listConstructed,Ft as listCustomProviderModelCapabilities,hd as listToolDefinitions,gd as listTools,Dl as listWorkflowPatternTemplates,ti as loadAgentsFiles,ha as loadAgentsFromMarkdown,cl as loadAutoRules,_e as loadConfig,ar as loadGeneratedWorkflowFromRun,$r as loadHandler,va as loadMarkdownAgentScope,nr as loadSavedWorkflow,tr as loadSavedWorkflowCapsule,ls as loadValidToken,ja as makeDisabledGoalToolsContext,pt as mapLegacyReasoningModeToEffortIntent,Xd as mcpRootsFromWorkspace,Os as mergeArtifactLedger,Hn as normalizeMcpCapabilityId,ln as normalizePastedImage,K as normalizeReasoningEffortValue,er as normalizeWorkflowModule,Ar as orderPromptSections,Hi as parallelInvestigation,ll as parseAutoRules,ol as parseClassifierOutput,Ee as parseCommand,no as parseEditToolError,Gr as parseLlmReviewVerdict,Jn as parseMcpCapabilityId,Sl as parseModelSpec,q as parseReasoningEffortEnv,dt as parseTimeoutSecEnvMs,Za as parseToolSearchQuery,Vi as parseWorkflowGeneration,ds as performOAuthLogin,fn as persistImageAsBlock,Bs as persistToolOutput,Ca as planToolExposure,lr as preflightWorkflowCapsule,b as prepareRuntimeConfig,Oo as prewarmRepoIntelligenceCaches,Le as processSpecialSyntax,Fi as providerResilienceConfigFromTimeouts,gn as prunePasteTmpDir,Ae as rateLimitedCall,pn as readAndNormalizeClipboardImage,ua as readArtifact,Qr as readAuditEntries,Zr as readBudget,cn as readClipboardImage,na as readDisableState,Cl as readSpeculativeWindowFromEnv,al as readTrustState,xi as reasoningModeToDepth,vi as reconstructMessagesWithToolGuard,hl as recordAutoModeAllow,gl as recordAutoModeBlock,bd as recordBlockerAttempt,_l as recordBreakerError,qa as recordCompactionSavings,Jd as recordDenial,Id as registerCodingInvariants,ge as registerConfiguredCustomProviders,E as registerConfiguredMcpCapabilityProvider,Ct as registerCustomProviders,Dt as registerModelProvider,as as registerOAuthClient,Fd as registerOfficialSandboxExtension,Dn as registerPresetDispatcher,td as registerTool,la as rehydrateActiveArtifacts,ea as remainingSelfModifyBudget,or as renameSavedWorkflow,ho as renderChangedScope,So as renderImpactEstimate,wo as renderModuleContext,Po as renderProcessContext,Ir as renderPromptSections,mo as renderRepoOverview,Go as renderRetrievalResult,_o as renderSymbolContext,rr as replaceSavedWorkflow,Oi as reportLspDiagnostics,Cd as resetBlockerCounter,ta as resetBudget,L as resolveAcpLogLevel,Al as resolveClassifierModel,li as resolveConstructedAgent,qr as resolveExtensionEntrypoint,Qs as resolveKodaXManual,Nt as resolveModelCapabilities,F as resolveProvider,Bt as resolveProviderModelDescriptors,mt as resolveReasoningEffort,ft as resolveReasoningEffortForModelSwitch,Ei as resolveReasoningMode,Io as resolveRepoIntelligenceMode,Ao as resolveRepoIntelligenceRuntimeConfig,mi as resolveResilienceConfig,Ss as resolveSessionLineageTarget,Pd as resolveToolCapability,Ht as resolveWireEffort,Ui as resolveWorkflowGenerationTimeoutMs,Xl as resolveWorkflowIdentity,ca as revoke,ks as rewindSessionLineage,Pa as rollbackSelfModify,st as runAcpServer,Vr as runAstRules,Ce as runInkInteractiveMode,Me as runInteractiveMode,Da as runKodaX,Hr as runLlmReview,qd as runManagedTask,Dd as runOrchestration,vr as runWorkflowFromOptions,gr as runWorkflowModule,cr as safeWorkflowArtifactName,Pe as saveConfig,sr as saveGeneratedWorkflow,dr as saveGeneratedWorkflowFromRun,Qn as searchMcpCatalog,Ya as searchToolIndex,Ia as setActiveExtensionRuntime,Un as setAgentConfigHome,As as setSessionLineageActiveEntry,za as shouldFlipBudgetLimited,Oa as shouldSkipLlmCompaction,D as shutdownDefaultLspService,Ml as speculativeRace,ra as stage,Rd as startKodaX,wr as startManagedWorkflow,pl as stripAssistantText,$o as stripHtmlToText,aa as testArtifact,at as timeoutSecToMs,co as toolAskUserQuestion,io as toolBash,Ro as toolChangedDiff,yo as toolChangedScope,Yo as toolCodeSearch,to as toolEdit,ro as toolGlob,ao as toolGrep,Fo as toolImpactEstimate,oo as toolInsertAfterAnchor,Ko as toolModuleContext,Sd as toolPermission,Xo as toolProcessContext,Ns as toolRead,vo as toolRepoOverview,Zo as toolSemanticLookup,qo as toolSymbolContext,lo as toolUndo,Qo as toolWebFetch,Jo as toolWebSearch,eo as toolWrite,be as touchContext,zs as truncateHead,Vs as truncateLine,$s as truncateTail,dl as trustProjectRules,Wa as turnWallTimeDelta,Vn as validateAndFixToolHistory,kt as validateCustomProviderConfig,Wi as validateGeneratedWorkflowSource,wn as validateInputArtifactsForModel,zd as validateSubtaskIndependence,Br as validateToolSchemaForProvider,Od as verifyGoalCompletion,Tr as webhook,Ld as withGoalBeforeNextTurn,Td as withGoalStopHook,Zs as withManualToolBranding,ai as workerAgent,zl as workflowStartOutcomeConsumesTurn};
|