@robota-sdk/agent-cli 3.0.0-beta.81 → 3.0.0-beta.83

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (135) hide show
  1. package/CHANGELOG.md +2478 -0
  2. package/README.md +70 -18
  3. package/dist/node/bin.js +33 -2
  4. package/dist/node/cli-core-CfQhvbx3.js +2850 -0
  5. package/dist/node/headless.js +2 -2
  6. package/dist/node/index.d.ts +131 -14
  7. package/dist/node/index.d.ts.map +1 -1
  8. package/dist/node/index.js +402 -316
  9. package/dist/node/index.js.map +1 -1
  10. package/dist/node/{node-ChG9Tg1I.js → node-B8BhZ3NW.js} +1 -1
  11. package/dist/node/{node-bJ0lEuNF.js → node-C4_FOvnk.js} +2 -2
  12. package/dist/node/{node-bJ0lEuNF.js.map → node-C4_FOvnk.js.map} +1 -1
  13. package/dist/node/{node-DIRGC_1P.js → node-CC5tfdMu.js} +17 -17
  14. package/dist/node/node-CC5tfdMu.js.map +1 -0
  15. package/dist/node/{node-C-hnFnOP.js → node-CsbnL0Yf.js} +4 -4
  16. package/dist/node/{node-2-nrieFn.js → node-DENLEmMT.js} +2 -2
  17. package/dist/node/{node-2-nrieFn.js.map → node-DENLEmMT.js.map} +1 -1
  18. package/dist/node/node-DtKU0MUr.js +14 -0
  19. package/dist/node/node-DtKU0MUr.js.map +1 -0
  20. package/dist/node/node-j7KM8r3b.js +14 -0
  21. package/dist/web/assets/PretendardVariable.subset.0-BHUkWNFR.woff2 +0 -0
  22. package/dist/web/assets/PretendardVariable.subset.1-C-__qv6_.woff2 +0 -0
  23. package/dist/web/assets/PretendardVariable.subset.10-DzSWztS8.woff2 +0 -0
  24. package/dist/web/assets/PretendardVariable.subset.11-CqVmlKJn.woff2 +0 -0
  25. package/dist/web/assets/PretendardVariable.subset.12-BHuZSgT0.woff2 +0 -0
  26. package/dist/web/assets/PretendardVariable.subset.13-C42mj_j2.woff2 +0 -0
  27. package/dist/web/assets/PretendardVariable.subset.14-Bl512uUX.woff2 +0 -0
  28. package/dist/web/assets/PretendardVariable.subset.15-D04iXIE3.woff2 +0 -0
  29. package/dist/web/assets/PretendardVariable.subset.16-BQUnS2GX.woff2 +0 -0
  30. package/dist/web/assets/PretendardVariable.subset.17-BfZSA-Xc.woff2 +0 -0
  31. package/dist/web/assets/PretendardVariable.subset.18-CwAxMC3C.woff2 +0 -0
  32. package/dist/web/assets/PretendardVariable.subset.19-CJu4Zcdo.woff2 +0 -0
  33. package/dist/web/assets/PretendardVariable.subset.2-dCZkyKLw.woff2 +0 -0
  34. package/dist/web/assets/PretendardVariable.subset.20-Ig1-z3n5.woff2 +0 -0
  35. package/dist/web/assets/PretendardVariable.subset.21-yKPEdLXC.woff2 +0 -0
  36. package/dist/web/assets/PretendardVariable.subset.22-CSqxKoOs.woff2 +0 -0
  37. package/dist/web/assets/PretendardVariable.subset.23-DK80wi0t.woff2 +0 -0
  38. package/dist/web/assets/PretendardVariable.subset.24-CmkE8Q8D.woff2 +0 -0
  39. package/dist/web/assets/PretendardVariable.subset.25-CsoWBIZB.woff2 +0 -0
  40. package/dist/web/assets/PretendardVariable.subset.26-Sozl8dw8.woff2 +0 -0
  41. package/dist/web/assets/PretendardVariable.subset.27-CT6nuW9L.woff2 +0 -0
  42. package/dist/web/assets/PretendardVariable.subset.28-CpO0Y96p.woff2 +0 -0
  43. package/dist/web/assets/PretendardVariable.subset.29-D6hjrUWm.woff2 +0 -0
  44. package/dist/web/assets/PretendardVariable.subset.3-Dqw33sf4.woff2 +0 -0
  45. package/dist/web/assets/PretendardVariable.subset.30-CWDM1c0J.woff2 +0 -0
  46. package/dist/web/assets/PretendardVariable.subset.31-CdmyZ5mm.woff2 +0 -0
  47. package/dist/web/assets/PretendardVariable.subset.32-CGnFWD2i.woff2 +0 -0
  48. package/dist/web/assets/PretendardVariable.subset.33--0OT__YQ.woff2 +0 -0
  49. package/dist/web/assets/PretendardVariable.subset.34-CaCS33Md.woff2 +0 -0
  50. package/dist/web/assets/PretendardVariable.subset.35-DWFYRGLp.woff2 +0 -0
  51. package/dist/web/assets/PretendardVariable.subset.36-Dn5IBRQB.woff2 +0 -0
  52. package/dist/web/assets/PretendardVariable.subset.37-BD6FyOtY.woff2 +0 -0
  53. package/dist/web/assets/PretendardVariable.subset.38-D4hu443z.woff2 +0 -0
  54. package/dist/web/assets/PretendardVariable.subset.39-B_7wfth9.woff2 +0 -0
  55. package/dist/web/assets/PretendardVariable.subset.4-Bvh2YGoc.woff2 +0 -0
  56. package/dist/web/assets/PretendardVariable.subset.40-BDaOfdUe.woff2 +0 -0
  57. package/dist/web/assets/PretendardVariable.subset.41-BUACvzZC.woff2 +0 -0
  58. package/dist/web/assets/PretendardVariable.subset.42-Dp-5mnyL.woff2 +0 -0
  59. package/dist/web/assets/PretendardVariable.subset.43-DHdpry7N.woff2 +0 -0
  60. package/dist/web/assets/PretendardVariable.subset.44-qHopVhdd.woff2 +0 -0
  61. package/dist/web/assets/PretendardVariable.subset.45-BniyRFfm.woff2 +0 -0
  62. package/dist/web/assets/PretendardVariable.subset.46-BMRq7xC-.woff2 +0 -0
  63. package/dist/web/assets/PretendardVariable.subset.47-B-cWO2pw.woff2 +0 -0
  64. package/dist/web/assets/PretendardVariable.subset.48-Ct-fWrPO.woff2 +0 -0
  65. package/dist/web/assets/PretendardVariable.subset.49-BblQVys9.woff2 +0 -0
  66. package/dist/web/assets/PretendardVariable.subset.5-K_MNGNCe.woff2 +0 -0
  67. package/dist/web/assets/PretendardVariable.subset.50-C8IyFH7L.woff2 +0 -0
  68. package/dist/web/assets/PretendardVariable.subset.51-Bxd0gTAs.woff2 +0 -0
  69. package/dist/web/assets/PretendardVariable.subset.52-CNgqKOOJ.woff2 +0 -0
  70. package/dist/web/assets/PretendardVariable.subset.53-BSRnyb-u.woff2 +0 -0
  71. package/dist/web/assets/PretendardVariable.subset.54-Dt2-cQkx.woff2 +0 -0
  72. package/dist/web/assets/PretendardVariable.subset.55-jFgflYjX.woff2 +0 -0
  73. package/dist/web/assets/PretendardVariable.subset.56-BwZdvJZQ.woff2 +0 -0
  74. package/dist/web/assets/PretendardVariable.subset.57-BwFDg-Fs.woff2 +0 -0
  75. package/dist/web/assets/PretendardVariable.subset.58-DlucQts_.woff2 +0 -0
  76. package/dist/web/assets/PretendardVariable.subset.59-CMkWjhdo.woff2 +0 -0
  77. package/dist/web/assets/PretendardVariable.subset.6-Bxhohlcm.woff2 +0 -0
  78. package/dist/web/assets/PretendardVariable.subset.60-CeHezjjf.woff2 +0 -0
  79. package/dist/web/assets/PretendardVariable.subset.61-PUuTnod4.woff2 +0 -0
  80. package/dist/web/assets/PretendardVariable.subset.62-DGSAWCfb.woff2 +0 -0
  81. package/dist/web/assets/PretendardVariable.subset.63-B35xsm4O.woff2 +0 -0
  82. package/dist/web/assets/PretendardVariable.subset.64-CTbrgYF9.woff2 +0 -0
  83. package/dist/web/assets/PretendardVariable.subset.65-B66rjuyf.woff2 +0 -0
  84. package/dist/web/assets/PretendardVariable.subset.66-C3HqaDeY.woff2 +0 -0
  85. package/dist/web/assets/PretendardVariable.subset.67-BmuXdlDy.woff2 +0 -0
  86. package/dist/web/assets/PretendardVariable.subset.68-DS9B48d0.woff2 +0 -0
  87. package/dist/web/assets/PretendardVariable.subset.69-YT16ymcp.woff2 +0 -0
  88. package/dist/web/assets/PretendardVariable.subset.7-E2HaA55t.woff2 +0 -0
  89. package/dist/web/assets/PretendardVariable.subset.70-BUXiAGMT.woff2 +0 -0
  90. package/dist/web/assets/PretendardVariable.subset.71-DuPZj8us.woff2 +0 -0
  91. package/dist/web/assets/PretendardVariable.subset.72-pYYGrEQR.woff2 +0 -0
  92. package/dist/web/assets/PretendardVariable.subset.73-DMrK970F.woff2 +0 -0
  93. package/dist/web/assets/PretendardVariable.subset.74-D4tQnymK.woff2 +0 -0
  94. package/dist/web/assets/PretendardVariable.subset.75-CxKdrRNf.woff2 +0 -0
  95. package/dist/web/assets/PretendardVariable.subset.76-DhPm2b_q.woff2 +0 -0
  96. package/dist/web/assets/PretendardVariable.subset.77-DwaxqOC8.woff2 +0 -0
  97. package/dist/web/assets/PretendardVariable.subset.78-DhqRbBzT.woff2 +0 -0
  98. package/dist/web/assets/PretendardVariable.subset.79-XpoyPP38.woff2 +0 -0
  99. package/dist/web/assets/PretendardVariable.subset.8-CRbJhhyA.woff2 +0 -0
  100. package/dist/web/assets/PretendardVariable.subset.80-DsV9Qp_h.woff2 +0 -0
  101. package/dist/web/assets/PretendardVariable.subset.81-BZzF9Hb3.woff2 +0 -0
  102. package/dist/web/assets/PretendardVariable.subset.82-BgAHe30u.woff2 +0 -0
  103. package/dist/web/assets/PretendardVariable.subset.83-DF-zBLLe.woff2 +0 -0
  104. package/dist/web/assets/PretendardVariable.subset.84-Brb8EsYQ.woff2 +0 -0
  105. package/dist/web/assets/PretendardVariable.subset.85-Byo_x2hf.woff2 +0 -0
  106. package/dist/web/assets/PretendardVariable.subset.86-XG7lTN_6.woff2 +0 -0
  107. package/dist/web/assets/PretendardVariable.subset.87-Lzui2vbK.woff2 +0 -0
  108. package/dist/web/assets/PretendardVariable.subset.88-CqX6JSgh.woff2 +0 -0
  109. package/dist/web/assets/PretendardVariable.subset.89-DOzqWPpX.woff2 +0 -0
  110. package/dist/web/assets/PretendardVariable.subset.9-Btb3bmS6.woff2 +0 -0
  111. package/dist/web/assets/PretendardVariable.subset.90-BF7RiZjm.woff2 +0 -0
  112. package/dist/web/assets/PretendardVariable.subset.91-Csm0YNoH.woff2 +0 -0
  113. package/dist/web/assets/index-DbAewVPM.js +244 -0
  114. package/dist/web/assets/index-DzQQd7ql.css +1 -0
  115. package/dist/web/index.html +6 -4
  116. package/package.json +44 -46
  117. package/dist/node/bounded-output-DpjpS98g-yPybHprY.cjs +0 -1
  118. package/dist/node/cli-core-Bah38oug.js +0 -2795
  119. package/dist/node/command-executor-DV-H2oD6-iQAXtTLY.cjs +0 -1
  120. package/dist/node/http-executor-cWzI2svn-C7F17ZGz.cjs +0 -1
  121. package/dist/node/index.cjs +0 -2793
  122. package/dist/node/index.d.cts +0 -3421
  123. package/dist/node/index.d.cts.map +0 -1
  124. package/dist/node/node-CFTax5Wl.cjs +0 -1
  125. package/dist/node/node-CJnrbkAS.js +0 -14
  126. package/dist/node/node-CJnrbkAS.js.map +0 -1
  127. package/dist/node/node-DDl02brx.cjs +0 -66
  128. package/dist/node/node-DIRGC_1P.js.map +0 -1
  129. package/dist/node/node-OBnZskvR.cjs +0 -1
  130. package/dist/node/node-tf433Aey.cjs +0 -13
  131. package/dist/node/node-uwhEt6sT.js +0 -14
  132. package/dist/node/rolldown-runtime-DK3Fl9T5-BIInC43l.cjs +0 -1
  133. package/dist/node/verdict-decoder-Dk_w2NG9-DNTeVdQ8.cjs +0 -1
  134. package/dist/web/assets/index-8_Slbxe7.css +0 -1
  135. package/dist/web/assets/index-Cgu5C1kn.js +0 -77
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-DtKU0MUr.js","names":["o","i","d","oe","h","ie","E","p","se","l","u","y","f","C","g","S","T","x","c","le","ce"],"sources":["../../../agent-core/dist/node/project-tool-schema-_UKfY7yO.js","../../../agent-core/dist/node/index.js"],"sourcesContent":["const e={type:`null`};function t(e){return e.type===`null`||Array.isArray(e.anyOf)&&e.anyOf.some(e=>typeof e==`object`&&!!e&&e.type===`null`)}function n(n){if(typeof n!=`object`||!n||Array.isArray(n))return n;let r=n;return t(r)?r:Array.isArray(r.anyOf)?{...r,anyOf:[...r.anyOf,e]}:{anyOf:[r,e]}}function r(e,t={}){return i(e,t,``)}function i(e,r,a){if(Array.isArray(e))return e.map((e,t)=>i(e,r,`${a}/${t}`));if(typeof e!=`object`||!e)return e;let o=e,s={...o},c=o.type===`object`,l=o.properties&&typeof o.properties==`object`?o.properties:void 0;if(l){let e=new Set(Array.isArray(o.required)?o.required.map(String):[]);s.properties=Object.fromEntries(Object.entries(l).map(([o,s])=>{let c=`${a}/properties/${o}`,l=i(s,r,c),u=e.has(o);if(r.requireAllProperties===!0&&!u&&r.onChange?.({path:c,kind:`required-added`}),!(r.requireAllProperties===!0&&r.optionalAsNullable===!0&&!u))return[o,l];let d=typeof l==`object`&&l&&!Array.isArray(l)?t(l):!1,f=n(l);return d||r.onChange?.({path:c,kind:`nullable-added`}),[o,f]})),r.requireAllProperties===!0&&(s.required=Object.keys(l))}return o.items&&typeof o.items==`object`&&(s.items=i(o.items,r,`${a}/items`)),Array.isArray(o.anyOf)&&(s.anyOf=o.anyOf.map((e,t)=>i(e,r,`${a}/anyOf/${t}`))),o.additionalProperties&&typeof o.additionalProperties==`object`?s.additionalProperties=i(o.additionalProperties,r,`${a}/additionalProperties`):c&&(o.additionalProperties!==!1&&r.onChange?.({path:a,kind:`closed-object`}),s.additionalProperties=!1),s}const a=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),o=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);function s(e,t){return e>>>t|e<<32-t}function c(e){let t=new TextEncoder().encode(e),n=Math.ceil((t.length+9)/64)*64,r=new Uint8Array(n);r.set(t),r[t.length]=128;let i=new DataView(r.buffer),c=BigInt(t.length)*8n;i.setUint32(n-8,Number(c>>32n&4294967295n)),i.setUint32(n-4,Number(c&4294967295n));let l=new Uint32Array(o),u=new Uint32Array(64);for(let e=0;e<n;e+=64){for(let t=0;t<16;t+=1)u[t]=i.getUint32(e+t*4);for(let e=16;e<64;e+=1){let t=u[e-15]??0,n=u[e-2]??0,r=s(t,7)^s(t,18)^t>>>3,i=s(n,17)^s(n,19)^n>>>10;u[e]=(u[e-16]??0)+r+(u[e-7]??0)+i>>>0}let t=l[0]??0,n=l[1]??0,r=l[2]??0,o=l[3]??0,c=l[4]??0,d=l[5]??0,f=l[6]??0,p=l[7]??0;for(let e=0;e<64;e+=1){let i=s(c,6)^s(c,11)^s(c,25),l=c&d^~c&f,m=p+i+l+(a[e]??0)+(u[e]??0)>>>0,h=(s(t,2)^s(t,13)^s(t,22))+(t&n^t&r^n&r)>>>0;p=f,f=d,d=c,c=o+m>>>0,o=r,r=n,n=t,t=m+h>>>0}l[0]=(l[0]??0)+t>>>0,l[1]=(l[1]??0)+n>>>0,l[2]=(l[2]??0)+r>>>0,l[3]=(l[3]??0)+o>>>0,l[4]=(l[4]??0)+c>>>0,l[5]=(l[5]??0)+d>>>0,l[6]=(l[6]??0)+f>>>0,l[7]=(l[7]??0)+p>>>0}return[...l].map(e=>e.toString(16).padStart(8,`0`)).join(``)}const l=32,u=2e3,d=Object.keys({type:!0,description:!0,enum:!0,items:!0,properties:!0,required:!0,anyOf:!0,additionalProperties:!0,minimum:!0,maximum:!0,pattern:!0,format:!0,default:!0}),f=new Set(d),p=new Set([`__proto__`,`constructor`,`prototype`]),m=new Set([`title`,`$schema`,`$comment`,`examples`,`default`]);function h(){return{anyOf:[{type:`string`},{type:`number`},{type:`boolean`},{type:`object`},{type:`array`},{type:`null`}]}}const g={closedObjects:!1,requireAllProperties:!1,optionalAsNullable:!1,unknownKeywords:`adopt`,unsupportedMembers:[],maxDepth:32,maxNodes:u},_={closedObjects:!0,requireAllProperties:!0,optionalAsNullable:!0,unknownKeywords:`strip`,unsupportedMembers:[],maxDepth:32,maxNodes:u};function v(e,t){return`${e}/${t}`}function y(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function b(e,t,n,r,i,a){if(!y(e))return;if(r.has(e))return{path:t,keyword:`cycle`,reason:`object graph revisits a node on its own ancestor chain (cycle)`};if(r.add(e),n>a.maxDepth)return{path:t,keyword:`maxDepth`,reason:`nesting depth exceeds maxDepth (${a.maxDepth})`};if(i.count+=1,i.count>a.maxNodes)return{path:t,keyword:`maxNodes`,reason:`node count exceeds maxNodes (${a.maxNodes})`};if(a.unknownKeywords===`reject`){for(let n of Object.keys(e))if(!f.has(n))return{path:t,keyword:n,reason:`unknown keyword '${n}' is outside the IParameterSchema member set`}}let o=typeof e.type==`string`,s=Array.isArray(e.anyOf);if(o&&s)return{path:t,keyword:`anyOf`,reason:`a node must declare exactly one of 'type' or 'anyOf', not both`};if(!o&&!s&&!Object.keys(e).some(e=>!f.has(e)))return{path:t,keyword:`type`,reason:`a node must declare exactly one of 'type' or 'anyOf'`};let c=e.properties;if(y(c)){for(let e of Object.keys(c))if(p.has(e))return{path:v(v(t,`properties`),e),keyword:e,reason:`property name '${e}' is a prototype key`};for(let e of Object.keys(c)){let o=b(c[e],v(v(t,`properties`),e),n+1,r,i,a);if(o)return o}}if(y(e.items)){let o=b(e.items,v(t,`items`),n+1,r,i,a);if(o)return o}if(Array.isArray(e.anyOf))for(let o=0;o<e.anyOf.length;o+=1){let s=b(e.anyOf[o],v(v(t,`anyOf`),String(o)),n+1,r,i,a);if(s)return s}r.delete(e)}function x(e,t,n,r){let i={...e};for(let e of n.unsupportedMembers){let n=e;n in i&&(delete i[n],r.push({path:t,kind:`member-stripped`,keyword:n}))}if(n.unknownKeywords===`strip`){let e=Object.keys(i).filter(e=>!f.has(e));for(let t of e)delete i[t];let n=typeof i.type==`string`,a=Array.isArray(i.anyOf);if(e.length>0&&!n&&!a){for(let n of e)r.push({path:t,kind:`keyword-replaced`,keyword:n});let n=h();for(let e of Object.keys(i))e===`description`?n.description=i.description:r.push({path:t,kind:`member-stripped`,keyword:e});return n}for(let n of e)r.push({path:t,kind:`keyword-stripped`,keyword:n})}let a=i.properties;return y(a)&&(i.properties=Object.fromEntries(Object.keys(a).map(e=>{let i=a[e];return[e,y(i)?x(i,v(v(t,`properties`),e),n,r):i]}))),y(i.items)&&(i.items=x(i.items,v(t,`items`),n,r)),Array.isArray(i.anyOf)&&(i.anyOf=i.anyOf.map((e,i)=>y(e)?x(e,v(v(t,`anyOf`),String(i)),n,r):e)),i}function S(e){if(Array.isArray(e))return e.map(S);if(y(e)){let t={};for(let n of Object.keys(e).sort())t[n]=S(e[n]);return t}return e}function C(e){return c(JSON.stringify(S(e)))}function w(e,t){let n=e.parameters;if(!y(n)||n.type!==`object`)return{outcome:`rejected`,tool:e,changes:[],rejection:{path:``,keyword:`type`,reason:`the parameters root must declare type: 'object' — no documented provider accepts another root`}};let i=b(n,``,0,new Set,{count:0},t);if(i)return{outcome:`rejected`,tool:e,changes:[],rejection:i};let a=[],o=x(n,``,t,a),s=t.closedObjects?r(o,{requireAllProperties:t.requireAllProperties,optionalAsNullable:t.optionalAsNullable,onChange:e=>a.push(e)}):o;if(a.length===0)return{outcome:`adopted`,tool:e,changes:[]};let c=a.filter(e=>(e.kind===`keyword-stripped`||e.kind===`keyword-replaced`||e.kind===`member-stripped`)&&!m.has(e.keyword??``)),l=c.length===0?e.description:`${e.description}\\n\\nSchema note: ${c.length} constraint(s) not shown to ${t.providerName}: ${c.map(e=>`${e.kind}@${e.path}`).join(`, `)}`;return{outcome:`adapted`,tool:{...e,parameters:s,description:l},changes:a}}export{u as a,r as c,l as i,g as n,C as o,_ as r,w as s,d as t};\n//# sourceMappingURL=project-tool-schema-_UKfY7yO.js.map","import{a as e,c as t,i as n,n as r,o as i,r as a,s as o,t as s}from\"./project-tool-schema-_UKfY7yO.js\";import{C as c,D as l,E as u,S as d,T as f,_ as p,a as m,b as h,c as g,d as _,f as v,g as y,h as b,i as x,l as S,m as C,n as w,o as T,p as E,r as ee,s as te,t as ne,u as re,v as ie,w as ae,x as oe,y as se}from\"./bounded-output-DpjpS98g.js\";import{n as ce,r as le,t as ue}from\"./verdict-decoder-Dk_w2NG9.js\";import de from\"jssha\";const D={isPrimitive:e=>e==null||typeof e==`string`||typeof e==`number`||typeof e==`boolean`,isArray:e=>Array.isArray(e)&&e.every(e=>D.isUniversalValue(e)),isObject:e=>typeof e==`object`&&!!e&&!Array.isArray(e)&&!(e instanceof Date)&&Object.values(e).every(e=>D.isUniversalValue(e)),isUniversalValue:e=>e instanceof Date||D.isPrimitive(e)||D.isArray(e)||D.isObject(e)};function fe(e){return{functionCalling:{supported:e},nativeWebTools:{webSearch:{supported:!1,enabled:!1,reason:`Provider does not declare native web search support.`},webFetch:{supported:!1,enabled:!1,reason:`Provider does not declare native web fetch support.`}}}}function pe(e,t,n){n?.webSearch===!0&&me(e,`web search`,t.nativeWebTools.webSearch),n?.webFetch===!0&&me(e,`web fetch`,t.nativeWebTools.webFetch)}function me(e,t,n){if(!n.supported)throw Error(`Provider ${e} does not support native ${t}.${he(n.reason)}`);if(!n.enabled)throw Error(`Provider ${e} supports native ${t} but it is not enabled.${he(n.reason)}`)}function he(e){return e?` ${e}`:``}const ge=[`none`,`minimal`,`low`,`medium`,`high`,`xhigh`,`max`];function _e(e){return typeof e==`string`&&ge.includes(e)}function ve(e,t){return{resolution:e,...t}}const ye=new Map(ge.map((e,t)=>[e,t]));function be(e,t){return{selection:e,effective:null,disposition:`not-applied`,fingerprint:`${t}|${e}|not-applied`}}function xe(e,t,n){let r=e?.models[t];if(!r)return be(n,t);let i=(i,a)=>`${t}|${n}|${i}|${a}|${r.nativeControlId}|${e.verifiedAt}`;if(n===`auto`)return r.supportedEfforts.includes(r.defaultEffort)?{selection:n,effective:r.defaultEffort,disposition:`model-default`,fingerprint:i(r.defaultEffort,`model-default`)}:be(n,t);if(r.supportedEfforts.includes(n))return{selection:n,effective:n,disposition:`exact`,fingerprint:i(n,`exact`)};let a=ye.get(n),o=r.supportedEfforts.filter(e=>(ye.get(e)??1/0)<(a??-1)).at(-1);return o?{selection:n,effective:o,disposition:`clamped`,fingerprint:i(o,`clamped`)}:be(n,t)}function Se(e){let t=typeof e.supportsTools==`function`&&e.supportsTools();return e.getCapabilities?.()??fe(t)}function Ce(e,t){return e.find(e=>e.type===t||e.aliases?.includes(t)===!0)}function we(e){return e.map(e=>{if(!e.aliases||e.aliases.length===0)return e.type;let t=e.aliases.length===1?`alias`:`aliases`;return`${e.type} (${t}: ${e.aliases.join(`, `)})`}).join(`, `)}function Te(e){if(e?.credentialRequirement!==void 0)return e.credentialRequirement;if(e?.requiresApiKey===!0)return{anyOf:[`apiKey`]}}function Ee(e,t){if(e)return e.deviations?.[t]?.capabilities??e.vendorDefault}function De(e,t,n){let r=Ee(e,t);if(!(!r||r.length===0))return r.includes(n)}function Oe(e,t,n,r){return De(e,t,n)??r}function ke(e){return`generateImage`in e&&typeof e.generateImage==`function`}function Ae(e){return`createVideo`in e&&`getVideoJob`in e&&`cancelVideoJob`in e&&typeof e.createVideo==`function`&&typeof e.getVideoJob==`function`&&typeof e.cancelVideoJob==`function`}function je(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.type==`string`&&t.type.length>0&&(typeof t.createImageProvider==`function`||typeof t.createVideoProvider==`function`)}function Me(e,t){return e.find(e=>e.type===t)}const Ne=`ToolSearch`,Pe=`yes`,Fe=`no`,Ie=[{value:`yes`,label:`Yes`},{value:`no`,label:`No`}];function Le(e,t,n){return{id:e,title:t,description:n?.description,options:Ie,maxSelect:1,default:n?.defaultYes===void 0?void 0:{values:[n.defaultYes?`yes`:`no`]}}}function Re(e,t,n,r){return{id:e,title:t,options:n,maxSelect:1,description:r?.description,allowFreeText:r?.allowFreeText,maxVisible:r?.maxVisible,default:r?.default}}function ze(e,t,n,r){return{id:e,title:t,options:n,minSelect:r?.minSelect??1,maxSelect:r?.maxSelect??n.length,description:r?.description,maxVisible:r?.maxVisible,default:r?.default}}function Be(e,t,n){return{id:e,title:t,allowFreeText:!0,description:n?.description,masked:n?.masked,allowEmpty:n?.allowEmpty,placeholder:n?.placeholder,default:n?.default}}function Ve(e){return e.type===`answer`&&e.values.includes(`yes`)}function He(e){return`getEstimatedDuration`in e||`getExecutionSteps`in e||`setProgressCallback`in e}function Ue(e,t){if(He(e)&&e.getEstimatedDuration)return e.getEstimatedDuration(t)}function We(e,t){if(He(e)&&e.getExecutionSteps)return e.getExecutionSteps(t)}function Ge(e,t){return He(e)&&e.setProgressCallback?(e.setProgressCallback(t),!0):!1}var Ke=class{history=[];isInitialized=!1;config;async configure(e){this.config=e,await this.ensureInitialized()}getHistory(){return[...this.history]}clearHistory(){this.history=[]}addMessage(e){this.history.push(e)}validateInput(e){if(!e||typeof e!=`string`)throw Error(`Input must be a non-empty string`)}async ensureInitialized(){this.isInitialized||=(await this.initialize(),!0)}async dispose(){this.clearHistory(),this.isInitialized=!1}},qe=class{initialized=!1;disposed=!1;constructor(e={}){this.initialized=e.readyOnConstruction===!0}async initialize(){this.initialized||(await this.doInitialize(),this.initialized=!0,this.disposed=!1)}async dispose(){await this.doDispose(),this.initialized=!1,this.disposed=!0}isInitialized(){return this.initialized}ensureInitialized(){if(this.disposed)throw Error(`${this.constructor.name} was disposed — re-initialize it before use, or build a new one`);if(!this.initialized)throw Error(`${this.constructor.name} is not initialized`)}};function Je(e){if(!Array.isArray(e))throw Error(`Messages must be an array`);if(e.length===0)throw Error(`Messages array cannot be empty`);for(let t of e)if(!t.role||![`user`,`assistant`,`system`,`tool`].includes(t.role))throw Error(`Invalid message role: ${t.role}`)}function Ye(e){if(e){if(!Array.isArray(e))throw Error(`Tools must be an array`);for(let t of e){if(!t.name||typeof t.name!=`string`)throw Error(`Tool must have a valid name`);if(!t.description||typeof t.description!=`string`)throw Error(`Tool must have a valid description`);if(!t.parameters||typeof t.parameters!=`object`||t.parameters===null||Array.isArray(t.parameters))throw Error(`Tool must have valid parameters`)}}}async function Xe(e,t,n,r){if(!e)throw Error(`Executor is required for ${t} provider. Configure an executor or use direct execution path.`);if(!r?.model)throw Error(`Model is required for executor execution in ${t} provider.`);return await e.executeChat({messages:n,options:r,provider:t,model:r.model,...r.tools&&{tools:r.tools}})}async function*Ze(e,t,n,r){if(!e||!e.executeChatStream)throw Error(`Streaming executor is required for ${t} provider.`);if(!r?.model)throw Error(`Model is required for executor streaming in ${t} provider.`);let i=e.executeChatStream({messages:n,options:r,provider:t,model:r.model,stream:!0,...r.tools&&{tools:r.tools}}),a=!1;for await(let e of i){if(e.kind===`terminal`){if(a)throw Error(`Executor \"${t}\" emitted more than one stream terminal result.`);a=!0}yield e}if(!a)throw Error(`Executor \"${t}\" ended a stream without a terminal result.`)}async function*Qe(e,t,n,r,i){e.debug?.(`🔍 [TOOL-FLOW] AbstractAIProvider.executeStreamViaExecutorOrDirect() - Executor request`,{provider:n,model:i?.model,hasTools:!!i?.tools,toolsCount:i?.tools?.length||0,toolNames:i?.tools?.map(e=>e.name)||[]}),yield*Ze(t,n,r,i)}function O(e){return e.category===`chat`}function $e(e){let t=e.data;if(!t)throw Error(`Chat entry ${e.id} has no data`);return{...t,id:e.id,timestamp:e.timestamp}}function et(e){return{id:e.id,timestamp:e.timestamp,category:`chat`,type:e.role,data:{...e}}}function tt(e){return e.filter(O).map($e)}function nt(e){return e.role===`user`}function rt(e){return e.role===`assistant`}function it(e){return e.role===`system`}function at(e){return e.role===`tool`}function ot(e,t,n,r){let i=e.effort!==void 0||e.effortResolution!==void 0,a=e.onModelEffortOutcome,o=i?e=>{if(r(e),a!==void 0)try{a(e)}catch(e){n.warn(`Model-effort outcome observer failed`,{error:e instanceof Error?e.message:String(e)})}}:a,s={...e.model!==void 0&&{model:e.model},...e.effort!==void 0&&{effort:e.effort},...e.effortResolution!==void 0&&{effortResolution:e.effortResolution},...o!==void 0&&{onModelEffortOutcome:o},...e.temperature!==void 0&&{temperature:e.temperature},...e.maxTokens!==void 0&&{maxTokens:e.maxTokens},...e.tools!==void 0&&{tools:e.tools}};return s.effort===void 0||s.effortResolution!==void 0||s.model===void 0?s:{...s,effortResolution:xe(t?.(),s.model,s.effort)}}function st(e,t,n){if(t)return;let r=e.effortResolution,i=e.onModelEffortOutcome;if(r===void 0||i===void 0)return;let a=ve(r,{nativeControl:{state:`omitted`,reason:`model-effort-not-applied`},providerDispatch:{state:`sent`}});try{i(a)}catch(e){n.warn(`Model-effort outcome observer failed`,{error:e instanceof Error?e.message:String(e)})}return a}function ct(e,t,n){if(t.effort!==void 0&&n===void 0)throw Error(`Provider \"${e}\" did not emit a model-effort terminal outcome for a selected generic request.`)}async function lt(e,t,n){let r,i=ot(n,e.effortTable?.bind(e),t,e=>{r=e}),a=await e.chat(n.messages,i);return r??=st(i,e.effortTable!==void 0,t),ct(e.name,i,r),{content:a.content??null,toolCalls:rt(a)?a.toolCalls:void 0,model:n.model,metadata:n.metadata,...r!==void 0&&{modelEffortOutcome:r}}}async function*ut(e,t,n){if(!e.chatStream)throw Error(`[AI-PROVIDER] Streaming is not supported by provider \"${e.name}\"`);let r,i=ot(n,e.effortTable?.bind(e),t,e=>{r=e});for await(let t of e.chatStream(n.messages,i))yield{content:t.content??null,toolCalls:rt(t)?t.toolCalls:void 0,model:n.model,metadata:n.metadata};r??=st(i,e.effortTable!==void 0,t),ct(e.name,i,r),r!==void 0&&(yield{content:null,model:n.model,metadata:n.metadata,modelEffortOutcome:r})}const dt={debug:()=>{},info:()=>{},warn:()=>{},error:()=>{},log:()=>{},group:()=>{},groupEnd:()=>{}};var ft=class e{static instance;globalLevel;globalSink;constructor(){this.globalLevel=`warn`}static getInstance(){return e.instance||=new e,e.instance}getGlobalLevel(){return this.globalLevel}setGlobalLevel(e){this.globalLevel=e}getGlobalSink(){return this.globalSink}setGlobalSink(e){this.globalSink=e}},pt=class{level;packageName;explicitSink;constructor(e,t={}){this.packageName=e,this.explicitSink=t.sink,this.level=t.level}get sinkLogger(){return this.explicitSink??ft.getInstance().getGlobalSink()??dt}debug(...e){if(this.shouldLog(`debug`)){let[t,n]=e;this.forward(`debug`,String(t??``),mt(n)?n:void 0)}}info(...e){if(this.shouldLog(`info`)){let[t,n]=e;this.forward(`info`,String(t??``),mt(n)?n:void 0)}}warn(...e){if(this.shouldLog(`warn`)){let[t,n]=e;this.forward(`warn`,String(t??``),mt(n)?n:void 0)}}error(...e){if(this.shouldLog(`error`)){let[t,n]=e;this.forward(`error`,String(t??``),mt(n)?n:void 0)}}log(...e){this.info(...e)}getLevel(){return this.level||ft.getInstance().getGlobalLevel()}shouldLog(e){let t=this.getLevel();if(t===`silent`)return!1;let n=[`debug`,`info`,`warn`,`error`,`silent`];return n.indexOf(e)>=n.indexOf(t)}forward(e,t,n){let r={timestamp:new Date().toISOString(),level:e,message:t,...n&&{context:n},packageName:this.packageName},i=`[${r.timestamp}] [${r.level.toUpperCase()}] [${r.packageName}] ${r.message}`;switch(e){case`debug`:this.sinkLogger.debug(i,n??{});return;case`info`:this.sinkLogger.info(i,n??{});return;case`warn`:this.sinkLogger.warn(i,n??{});return;case`error`:this.sinkLogger.error(i,n??{});return;case`silent`:return}}};function mt(e){return typeof e==`object`&&!!e&&!(e instanceof Error)&&!(e instanceof Date)&&!Array.isArray(e)}function k(e,t={}){return new pt(e,t)}function ht(e){ft.getInstance().setGlobalLevel(e)}function gt(){return ft.getInstance().getGlobalLevel()}function _t(e){ft.getInstance().setGlobalSink(e)}function vt(){return ft.getInstance().getGlobalSink()}const A=k(`agents`),yt=k(`ToolSchemaProjection`);var bt=class{config;executor;logger;quarantinedToolSchemas=new Map;constructor(e=dt){this.logger=e}async configure(e){this.config=e,this.hasExecutor(e)&&e.executor&&(this.executor=e.executor)}hasExecutor(e){return typeof e==`object`&&!!e&&`executor`in e}async*streamWithAbort(e,t){let n=e[Symbol.asyncIterator]();try{for(;!t?.aborted;){let e=await xt(n,t);if(e.done||(await St(t),t?.aborted))break;yield e.value}}finally{t?.aborted&&await n.return?.()}}async generateResponse(e){return lt(this,this.logger,e)}async*generateStreamingResponse(e){yield*ut(this,this.logger,e)}supportsTools(){return!0}getCapabilities(){return fe(this.supportsTools())}validateConfig(){return!0}validateMessages(e){Je(e)}validateTools(e){Ye(e)}projectionProfile(){}projectTools(e,t){let n=this.projectionProfile();if(!n||!e)return e;let r=[];for(let a of e){let e=o(a,n);if(e.outcome!==`rejected`){r.push(e.tool);continue}let s=`${this.name}\u0000${t}\u0000${a.name}\u0000${i(a.parameters)}`;if(this.quarantinedToolSchemas.has(s))continue;this.quarantinedToolSchemas.set(s,!0);let{path:c,keyword:l,reason:u}=e.rejection??{path:``,keyword:``,reason:`rejected`};yt.warn(`tool_schema_quarantined provider=${this.name} model=${t} tool=${a.name} path=${c} keyword=${l} reason=${u}`)}return r}validateNativeWebTools(e){pe(this.name,this.getCapabilities(),e)}async executeViaExecutorOrDirect(e,t){return Xe(this.executor,this.name,e,t)}async*executeStreamViaExecutorOrDirect(e,t){yield*Qe(this.logger,this.executor,this.name,e,t)}async dispose(){this.executor?.dispose&&await this.executor.dispose()}};async function xt(e,t){if(!t)return e.next();if(t.aborted)return{done:!0,value:void 0};let n,r=new Promise(e=>{n=()=>e({done:!0,value:void 0}),t.addEventListener(`abort`,n,{once:!0})});try{return await Promise.race([e.next(),r])}finally{n&&t.removeEventListener(`abort`,n)}}async function St(e){e?.aborted||await new Promise(e=>setTimeout(e,0))}let Ct=function(e){return e.MONITORING=`monitoring`,e.LOGGING=`logging`,e.STORAGE=`storage`,e.NOTIFICATION=`notification`,e.SECURITY=`security`,e.PERFORMANCE=`performance`,e.ERROR_HANDLING=`error_handling`,e.LIMITS=`limits`,e.EVENT_PROCESSING=`event_processing`,e.CUSTOM=`custom`,e}({}),wt=function(e){return e[e.CRITICAL=1e3]=`CRITICAL`,e[e.HIGH=800]=`HIGH`,e[e.NORMAL=500]=`NORMAL`,e[e.LOW=200]=`LOW`,e[e.MINIMAL=100]=`MINIMAL`,e}({});const j={CREATED:`created`,EXECUTION_START:`execution_start`,EXECUTION_COMPLETE:`execution_complete`,EXECUTION_ERROR:`execution_error`,AGGREGATION_COMPLETE:`aggregation_complete`,CONFIG_UPDATED:`config_updated`},Tt=`agent`,M={START:`start`,COMPLETE:`complete`,ERROR:`error`,ASSISTANT_MESSAGE_START:`assistant_message_start`,ASSISTANT_MESSAGE_COMPLETE:`assistant_message_complete`,USER_MESSAGE:`user_message`,TOOL_RESULTS_TO_LLM:`tool_results_to_llm`,TOOL_RESULTS_READY:`tool_results_ready`},N=`execution`,P={CALL_START:`call_start`,CALL_COMPLETE:`call_complete`,CALL_ERROR:`call_error`,CALL_RESPONSE_READY:`call_response_ready`},Et=`tool`,Dt=`unknown_tool`,Ot=`argument_decode_error`,F=(e,t)=>`${e}.${t}`,kt={START:F(N,M.START),COMPLETE:F(N,M.COMPLETE),ERROR:F(N,M.ERROR)},At={CALL_START:F(Et,P.CALL_START),CALL_COMPLETE:F(Et,P.CALL_COMPLETE),CALL_ERROR:F(Et,P.CALL_ERROR)},jt={EXECUTION_START:F(Tt,j.EXECUTION_START),EXECUTION_COMPLETE:F(Tt,j.EXECUTION_COMPLETE),EXECUTION_ERROR:F(Tt,j.EXECUTION_ERROR),CREATED:F(Tt,j.CREATED)},I={EXECUTION_START:kt.START,EXECUTION_COMPLETE:kt.COMPLETE,EXECUTION_ERROR:kt.ERROR,TOOL_BEFORE_EXECUTE:`tool.beforeExecute`,TOOL_AFTER_EXECUTE:`tool.afterExecute`,TOOL_SUCCESS:`tool.success`,TOOL_ERROR:At.CALL_ERROR,CONVERSATION_START:`conversation.start`,CONVERSATION_COMPLETE:`conversation.complete`,CONVERSATION_ERROR:`conversation.error`,AGENT_EXECUTION_START:jt.EXECUTION_START,AGENT_EXECUTION_COMPLETE:jt.EXECUTION_COMPLETE,AGENT_EXECUTION_ERROR:jt.EXECUTION_ERROR,AGENT_CREATED:jt.CREATED,AGENT_DESTROYED:`agent.destroyed`,PLUGIN_LOADED:`plugin.loaded`,PLUGIN_UNLOADED:`plugin.unloaded`,PLUGIN_ERROR:`plugin.error`,ERROR_OCCURRED:`error.occurred`,WARNING_OCCURRED:`warning.occurred`,MODULE_INITIALIZE_START:`module.initialize.start`,MODULE_INITIALIZE_COMPLETE:`module.initialize.complete`,MODULE_INITIALIZE_ERROR:`module.initialize.error`,MODULE_EXECUTION_START:`module.execution.start`,MODULE_EXECUTION_COMPLETE:`module.execution.complete`,MODULE_EXECUTION_ERROR:`module.execution.error`,MODULE_DISPOSE_START:`module.dispose.start`,MODULE_DISPOSE_COMPLETE:`module.dispose.complete`,MODULE_DISPOSE_ERROR:`module.dispose.error`,MODULE_REGISTERED:`module.registered`,MODULE_UNREGISTERED:`module.unregistered`,EXECUTION_HIERARCHY:`execution.hierarchy`,EXECUTION_REALTIME:`execution.realtime`,TOOL_REALTIME:`tool.realtime`,CUSTOM:`custom`};var Mt=class{enabled=!0;category=`custom`;priority=wt.NORMAL;options;eventEmitter;subscribedEvents=[];eventHandlers=new Map;pluginLogger=k(`AbstractPlugin`);stats={calls:0,errors:0,moduleEventsReceived:0,lastActivity:void 0};async initialize(e){this.options=e,e&&`enabled`in e&&typeof e.enabled==`boolean`?this.enabled=e.enabled:this.enabled=!0,e?.category&&(this.category=e.category),e?.priority!==void 0&&(this.priority=(e.priority,e.priority))}async subscribeToModuleEvents(e){if(this.eventEmitter=e,!this.options)return;let t=[];this.options.subscribeToAllModuleEvents&&t.push(I.MODULE_INITIALIZE_START,I.MODULE_INITIALIZE_COMPLETE,I.MODULE_INITIALIZE_ERROR,I.MODULE_EXECUTION_START,I.MODULE_EXECUTION_COMPLETE,I.MODULE_EXECUTION_ERROR,I.MODULE_DISPOSE_START,I.MODULE_DISPOSE_COMPLETE,I.MODULE_DISPOSE_ERROR),this.options.moduleEvents&&t.push(...this.options.moduleEvents);for(let e of t){let t=this.eventEmitter.on(e,async t=>{try{this.stats.moduleEventsReceived++,this.stats.lastActivity=new Date,await this.onModuleEvent?.(e,t)}catch(t){this.stats.errors++;let n=t instanceof Error?t:Error(String(t));this.pluginLogger.error(`Plugin \"${this.name}\" failed to handle module event \"${String(e)}\"`,{plugin:this.name,eventType:String(e),error:n.message})}}),n=this.eventHandlers.get(e);n?n.push(t):this.eventHandlers.set(e,[t]),this.subscribedEvents.push(e)}}async unsubscribeFromModuleEvents(e){for(let[t,n]of this.eventHandlers.entries())for(let r of n)e.off(t,r);this.eventHandlers.clear(),this.subscribedEvents=[],this.eventEmitter=void 0}async dispose(){this.eventEmitter&&await this.unsubscribeFromModuleEvents(this.eventEmitter)}enable(){this.enabled=!0}disable(){this.enabled=!1}isEnabled(){return this.enabled}getConfig(){return{}}updateConfig(e){}getData(){return{name:this.name,version:this.version,enabled:this.enabled,category:this.category,priority:this.priority,subscribedEvents:[...this.subscribedEvents],metadata:{moduleEventsReceived:this.stats.moduleEventsReceived,totalCalls:this.stats.calls,totalErrors:this.stats.errors}}}getStatus(){return{name:this.name,version:this.version,enabled:this.enabled,initialized:!0,category:this.category,priority:this.priority,subscribedEventsCount:this.subscribedEvents.length,hasEventEmitter:!!this.eventEmitter}}getStats(){return{enabled:this.enabled,calls:this.stats.calls,errors:this.stats.errors,moduleEventsReceived:this.stats.moduleEventsReceived,...this.stats.lastActivity&&{lastActivity:this.stats.lastActivity}}}updateCallStats(){this.stats.calls++,this.stats.lastActivity=new Date}updateErrorStats(){this.stats.errors++,this.stats.lastActivity=new Date}},Nt=class{logger;constructor(e=dt){this.logger=e}supportsTools(){return!1}validateConfig(){return!0}async dispose(){}async withRetry(e,t=3,n=1e3){let r;for(let i=0;i<=t;i++)try{return await e()}catch(e){r=e instanceof Error?e:Error(String(e)),i<t&&(this.logger.warn?.(`[${this.name}] Attempt ${i+1} failed, retrying in ${n}ms`,{error:r.message,attempt:i+1,maxRetries:t}),await this.delay(n))}throw r}withTimeout(e,t){let n;return Promise.race([e.then(e=>(clearTimeout(n),e)),new Promise((e,r)=>{n=setTimeout(()=>r(Error(`Operation timed out after ${t}ms`)),t)})])}delay(e){return new Promise(t=>setTimeout(t,e))}logDebug(e,t){this.logger.debug?.(`[${this.name}] ${e}`,t)}logError(e,t,n){this.logger.error?.(`[${this.name}] ${e}`,{error:t.message,stack:t.stack,...n})}validateRequest(e){if(!e.messages||e.messages.length===0)throw Error(`Request must include at least one message`);if(!e.provider)throw Error(`Request must specify a provider`);if(!e.model)throw Error(`Request must specify a model`)}validateResponse(e){if(!e.role)throw Error(`Response must have a role`);let t=e.role===`assistant`&&`toolCalls`in e&&Array.isArray(e.toolCalls)&&e.toolCalls.length>0;if(!e.content&&!t)throw Error(`Response must have content or tool calls`)}},Pt=class{logger;eventService;constructor(e={}){this.eventService=e.eventService,this.logger=e.logger??dt}setEventService(e){this.eventService=e}getEventService(){return this.eventService}emitEvent(e,t){this.eventService&&this.eventService.emit(e,t)}async execute(e,t){return await this.executeImpl(e,t)}validate(e){return(this.schema.parameters.required||[]).every(t=>t in e)}validateParameters(e){let t=this.schema.parameters.required||[],n=[],r=e;for(let e of t)e in r||n.push(`Missing required parameter: ${e}`);return{isValid:n.length===0,errors:n}}getDescription(){return this.schema.description}getName(){return this.schema.name}};function Ft(e){return typeof e==`object`&&!!e&&typeof e.name==`string`&&typeof e.message==`string`}function L(e,t){if(t?.aborted===!0)return!0;if(!Ft(e))return!1;if(e.name===`AbortError`)return!0;let n=e.cause;return Ft(n)&&n.name===`AbortError`}function It(e=`aborted`,t){let n=t===void 0?Error(e):Error(e,{cause:t});return n.name=`AbortError`,n}var Lt=class{static toProviderFormat(e,t,n={}){if(typeof t==`function`)return t(e);if(typeof t==`string`){let r=n[t];if(r!==void 0)return r(e)}return this.toUniversalFormat(e)}static toUniversalFormat(e){return e}static extractSystemMessage(e){return e.find(e=>e.role===`system`)?.content}static filterNonSystemMessages(e){return e.filter(e=>e.role!==`system`)}},R=class{static validateAgentConfig(e){let t=[],n=[];return e.name||t.push(`name is required`),(!e.aiProviders||e.aiProviders.length===0)&&t.push(`aiProviders array is required and must have at least one provider`),e.defaultModel?(e.defaultModel.provider||t.push(`defaultModel.provider is required`),e.defaultModel.model||t.push(`defaultModel.model is required`)):t.push(`defaultModel is required`),e.aiProviders&&e.defaultModel?.provider&&(e.aiProviders.map(e=>e.name).includes(e.defaultModel.provider)||t.push(`defaultModel.provider \"${e.defaultModel.provider}\" is not found in aiProviders list`)),e.defaultModel?.temperature!==void 0&&(typeof e.defaultModel.temperature!=`number`||e.defaultModel.temperature<0||e.defaultModel.temperature>2)&&t.push(`defaultModel.temperature must be a number between 0 and 2`),e.defaultModel?.maxTokens!==void 0&&(typeof e.defaultModel.maxTokens!=`number`||e.defaultModel.maxTokens<=0)&&t.push(`defaultModel.maxTokens must be a positive number`),e.systemMessage&&e.systemMessage.length>1e3&&n.push(`systemMessage is quite long, consider keeping it concise for better performance`),e.tools&&e.tools.length>20&&n.push(`Large number of tools may impact performance, consider grouping related tools`),{isValid:t.length===0,errors:t,warnings:n}}static validateUserInput(e){let t=[],n=[];return!e||typeof e!=`string`?t.push(`Input must be a non-empty string`):(e.trim().length===0&&t.push(`Input cannot be only whitespace`),e.length>1e4&&n.push(`Very long input may be truncated by AI providers`)),{isValid:t.length===0,errors:t,warnings:n}}static validateProviderName(e){let t=[];return!e||typeof e!=`string`?t.push(`Provider name must be a non-empty string`):/^[a-zA-Z][a-zA-Z0-9_-]*$/.test(e)||t.push(`Provider name must start with a letter and contain only letters, numbers, underscores, and hyphens`),{isValid:t.length===0,errors:t}}static validateModelName(e){let t=[];return!e||typeof e!=`string`?t.push(`Model name must be a non-empty string`):e.trim().length===0&&t.push(`Model name cannot be only whitespace`),{isValid:t.length===0,errors:t}}static validateApiKey(e){let t=[];return!e||typeof e!=`string`?(t.push(`API key must be a non-empty string`),{isValid:!1,errors:t}):(e.length<10&&t.push(`API key appears to be too short`),/\\s/.test(e)&&t.push(`API key should not contain whitespace`),{isValid:t.length===0,errors:t,warnings:[]})}};const Rt=R.validateAgentConfig,zt=R.validateUserInput,Bt=R.validateProviderName,Vt=R.validateModelName,Ht=R.validateApiKey;var Ut=class{static isRecoverable(e){return e instanceof d&&e.recoverable}static getErrorCode(e){return e instanceof d?e.code:`UNKNOWN_ERROR`}static fromUnknown(e,t=`An unknown error occurred`){return e instanceof d?e:e instanceof Error?new y(e.message||t):new y(typeof e==`string`?e:t)}static wrapProviderError(e,t,n){let r=e instanceof Error?e:Error(String(e));return new h(`Failed to ${n}`,t,r,{operation:n})}};const Wt=new Set([`rate_limit_error`]),Gt=new Set([`overloaded_error`]),Kt=new Set([`authentication_error`,`permission_error`]),qt=new Set([`model_not_found`]),Jt=new Set([`ECONNRESET`,`ECONNREFUSED`,`ENOTFOUND`,`ETIMEDOUT`,`EPIPE`,`EAI_AGAIN`,`UND_ERR_SOCKET`,`UND_ERR_CONNECT_TIMEOUT`]),Yt=new Set([`APIConnectionError`,`APIConnectionTimeoutError`]);function z(e){return typeof e==`object`&&e?e:void 0}function B(e,t){let n=e?.[t];return typeof n==`string`&&n.length>0?n:void 0}function Xt(e){let t=z(e);if(t===void 0)return{};let n=typeof t.status==`number`?t.status:void 0,r=z(t.error),i=z(r?.error),a=B(r,`type`),o=B(t,`type`)??B(i,`type`)??(a===`error`?void 0:a)??(n!==void 0&&!(e instanceof d)?B(t,`code`):void 0);return{...n!==void 0&&{status:n},...o!==void 0&&{type:o}}}function Zt(e){let t=z(e)?.constructor;if(typeof t!=`function`)return;let n=t.name;return typeof n==`string`&&n.length>0?n:void 0}function Qt(e){return L(e)||Zt(e)===`APIUserAbortError`}function $t(e,t,n){if(e instanceof d||Qt(e))return e;let r=e instanceof Error?e:Error(typeof e==`string`?e:``),i=Xt(e);return i.status===429||i.type!==void 0&&Wt.has(i.type)?new oe(r.message||`${t} rate limit exceeded.`,void 0,t):new h(`${n}: ${r.message||`request failed`}`,t,r,void 0,i)}function en(e){if(e instanceof ie)return!0;let t=z(e);if(t===void 0)return!1;let n=B(t,`code`);if(n!==void 0&&Jt.has(n))return!0;let r=Zt(e);if(r!==void 0&&Yt.has(r))return!0;let i=B(t,`name`);return i!==void 0&&Yt.has(i)?!0:i===`TypeError`&&B(t,`message`)===`fetch failed`}function tn(e){let t=[],n=new Set,r=[e];for(let e=0;e<=8&&r.length>0;e++){let e=[];for(let i of r){if(i==null||n.has(i))continue;n.add(i),t.push(i);let r=z(i);r!==void 0&&e.push(r.originalError,r.cause)}r=e}return t}const V=(e,t)=>({kind:`definitive`,classification:{switchable:e,reason:t}});function nn(e){return e instanceof h?{...e.status!==void 0&&{status:e.status},...e.type!==void 0&&{type:e.type}}:Xt(e)}function rn(e){if(e instanceof d)return!1;let t=B(z(e),`code`);return t!==void 0&&qt.has(t)}function an(e){if(e instanceof oe)return V(!1,`rate-limit`);if(e instanceof E)return V(!1,`authentication`);if(e instanceof p)return V(!0,`model-unavailable`);let{status:t,type:n}=nn(e);return t===429||n!==void 0&&Wt.has(n)?V(!1,`rate-limit`):t===401||t===403||n!==void 0&&Kt.has(n)?V(!1,`authentication`):t===402?V(!1,`billing`):(t===void 0||t===400||t===404)&&(rn(e)||n!==void 0&&qt.has(n))?V(!0,`model-unavailable`):en(e)?V(!1,`network`):t===529||n!==void 0&&Gt.has(n)?V(!0,`overloaded`):t===503?V(!0,`service-unavailable`):t===500||t===502||t===504?V(!0,`server-error`):t===404?{kind:`tentative`,classification:{switchable:!0,reason:`model-unavailable`}}:t===400||t===413?{kind:`tentative`,classification:{switchable:!1,reason:`invalid-request`}}:{kind:`none`}}function on(e,t){let n=tn(e);if(t?.aborted===!0||n.some(e=>Qt(e)))return{switchable:!1,reason:`aborted`};let r;for(let e of n){let t=an(e);if(t.kind!==`none`){if(r===void 0&&t.kind===`definitive`)return t.classification;if(r===void 0){r=t.classification;continue}if(t.kind===`definitive`)return t.classification.reason===`model-unavailable`?t.classification:r}}return r??{switchable:!1,reason:`unknown`}}function sn(e,t,n){return setInterval(()=>{(async()=>{try{await n()}catch(n){e.error(`Periodic task failed`,{task:t.name,error:n instanceof Error?n.message:String(n)})}})()},t.intervalMs)}function cn(e){e&&clearInterval(e)}function ln(e,t){if(t)return!0;switch(e.unknownKeys){case`passthrough`:case`strip`:return!0;case`strict`:return!1;default:return}}function un(e){let t=dn(e);return t.typeName===`ZodObject`?t:void 0}function dn(e){let t=e;for(let e=0;e<=64;e+=1){let e=t.typeName===`ZodEffects`?t.schema:t.typeName===`ZodOptional`||t.typeName===`ZodNullable`||t.typeName===`ZodDefault`?t.innerType:void 0;if(!e)return t;t=H(e,`${String(t.typeName)} inner type`)}throw Error(`Zod wrapper chain exceeds 64 levels; refusing to unwrap further (cyclic schema?).`)}function H(e,t){let n=e._def;if(!n)throw Error(`${t} is missing _def; cannot convert to JSON schema.`);return n}function fn(e){if(typeof e==`string`)return`string`;if(typeof e==`number`)return`number`;if(typeof e==`boolean`)return`boolean`;if(e===null)return`null`}function pn(e){let t=e._def;if(!t)throw Error(`Zod schema is missing _def; cannot determine required fields.`);let n=t;for(let e=0;n.typeName===`ZodEffects`&&e<=64&&n.schema;e+=1)n=H(n.schema,`ZodEffects inner type`);return n.typeName!==`ZodOptional`&&n.typeName!==`ZodNullable`&&n.typeName!==`ZodDefault`}function mn(e){let t=H(e,`Zod schema`);if(!t.values||!Array.isArray(t.values))throw Error(`ZodEnum schema is missing enum values; cannot extract enum values.`);return t.values}function hn(e){let t=H(e,`Zod schema`);return!!(t.checks&&t.checks.length>0)}function gn(e){let t=H(e,`Zod schema`);if(!t.typeName)throw Error(`Zod schema has empty typeName; cannot determine schema type name.`);return t.typeName}function _n(e,t={}){let n=H(e,`Zod schema`),r=un(n);if(!r)throw Error(`Zod schema root must be an object; got ${String(n.typeName)}. Wrap the fields in z.object({ … }) before converting.`);return vn(r,t.allowAdditionalProperties)}function vn(e,t){let n={},r=[],i=typeof e.shape==`function`?e.shape():e.shape;for(let[e,a]of Object.entries(i??{}))n[e]=U(a,t),pn(a)&&r.push(e);let a=ln(e,t);return{type:`object`,properties:n,required:r,...a!==void 0&&{additionalProperties:a}}}function U(e,t){let n=H(e,`Zod type`),r={};switch(n.description&&(r.description=n.description),n.typeName){case`ZodString`:return{type:`string`,...r};case`ZodNumber`:return{type:`number`,...r};case`ZodBoolean`:return{type:`boolean`,...r};case`ZodArray`:if(!n.type)throw Error(`ZodArray is missing item type; cannot convert to JSON schema.`);return{type:`array`,items:U(n.type,t),...r};case`ZodObject`:return{...vn(n,t),...r};case`ZodEnum`:{let e=n.values;if(!e||!Array.isArray(e))throw Error(`ZodEnum is missing enum values; cannot convert to JSON schema.`);return{type:`string`,enum:e,...r}}case`ZodNativeEnum`:return{...bn(n.values),...r};case`ZodDate`:return{type:`string`,format:`date-time`,...r};case`ZodLiteral`:return{...yn(n.value),...r};case`ZodUnion`:case`ZodDiscriminatedUnion`:{let e=n.options;if(!e||!Array.isArray(e)||e.length===0)throw Error(`${String(n.typeName)} is missing options; cannot convert to JSON schema.`);return{anyOf:e.map(e=>U(e,t)),...r}}case`ZodEffects`:if(!n.schema)throw Error(`ZodEffects is missing schema; cannot convert to JSON schema.`);return{...U(n.schema,t),...r};case`ZodNullable`:if(!n.innerType)throw Error(`ZodNullable is missing innerType; cannot convert to JSON schema.`);return{anyOf:[U(n.innerType,t),{type:`null`}],...r};case`ZodOptional`:case`ZodDefault`:if(!n.innerType)throw Error(`${String(n.typeName)} is missing innerType; cannot convert to JSON schema.`);return{...U(n.innerType,t),...r};case`ZodRecord`:return n.valueType?{type:`object`,additionalProperties:U(n.valueType,t),...r}:{type:`object`,additionalProperties:{type:`string`},...r};default:throw Error(Sn(String(n.typeName)))}}function yn(e){let t=fn(e);if(!t)throw Error(`ZodLiteral value ${String(e)} is not a JSON primitive; cannot convert to JSON schema.`);return t===`null`?{type:`null`}:{type:t,enum:[e]}}function bn(e){if(!e||typeof e!=`object`)throw Error(`ZodNativeEnum is missing enum values; cannot convert to JSON schema.`);let t=Array.isArray(e)?e:Object.values(e),n=t.filter(e=>typeof e==`number`),r=n.length>0?n:t;if(r.length===0)throw Error(`ZodNativeEnum declares no members; cannot convert to JSON schema.`);return{type:n.length>0?`number`:`string`,enum:r}}const xn={ZodTuple:\"a tuple needs positional `items`, and the subset models `items` as ONE schema — use `z.object({...})` for a fixed-shape record, or `z.array(z.union([...]))` if order genuinely does not matter\",ZodIntersection:\"an intersection needs `allOf` — merge the two object schemas yourself with `.merge()`, which produces a single object node the subset can carry\",ZodLazy:\"a recursive schema needs `$ref` — flatten the recursion to a fixed depth, or model the nested level as `z.record(...)`\",ZodDate:\"use `z.string()` (optionally with `.datetime()`), which is what a provider receives\"};function Sn(e){return`${e} cannot be carried by the universal JSON-schema subset: ${xn[e]??`it has no representation in the subset`}. The subset is the one language every provider mapper forwards intact; a construct outside it would be advertised to the model and enforced by nothing.`}function Cn(e){return typeof e.safeParse==`function`&&typeof e.parse==`function`}function wn(e){if(e&&typeof e==`object`&&`issues`in e){let t=e.issues;if(Array.isArray(t))return t.map(e=>{if(e&&typeof e==`object`&&`message`in e){let t=Array.isArray(e.path)?e.path.join(`.`):``,n=String(e.message);return t?`${t}: ${n}`:n}return String(e)})}return[String(e)]}function Tn(e){if(Cn(e))return{name:`structured_output`,jsonSchema:_n(e),validate:t=>{let n=e.safeParse(t);return n.success?{success:!0,value:n.data}:{success:!1,issues:wn(n.error)}}};let{jsonSchema:t,name:n}=e;return{name:n??`structured_output`,jsonSchema:t,validate:e=>{let n=W(t,e,`$`);return n.length===0?{success:!0,value:e}:{success:!1,issues:n}}}}function W(e,t,n){let r=[],i=e.type;if(e.anyOf)return Dn(e.anyOf,t,n);switch(i){case`object`:{if(typeof t!=`object`||!t||Array.isArray(t))return[`${n}: expected object, got ${On(t)}`];let i=t,a=e.required??[];for(let e of a)e in i||r.push(`${n}.${e}: required property missing`);let o=e.properties??{};for(let[e,t]of Object.entries(o))e in i&&r.push(...W(t,i[e],`${n}.${e}`));let s=e.additionalProperties;if(En(e))for(let e of Object.keys(i))e in o||r.push(`${n}.${e}: unexpected additional property`);else if(typeof s==`object`)for(let[e,t]of Object.entries(i))e in o||r.push(...W(s,t,`${n}.${e}`));return r}case`array`:{if(!Array.isArray(t))return[`${n}: expected array, got ${On(t)}`];let i=e.items;return i&&t.forEach((e,t)=>{r.push(...W(i,e,`${n}[${t}]`))}),r}case`string`:return typeof t==`string`?(e.enum&&!e.enum.some(e=>e===t)&&r.push(`${n}: value ${JSON.stringify(t)} is not one of the allowed enum values`),e.pattern&&!new RegExp(e.pattern).test(t)&&r.push(`${n}: value does not match pattern ${e.pattern}`),r):[`${n}: expected string, got ${On(t)}`];case`number`:case`integer`:return typeof t!=`number`||Number.isNaN(t)?[`${n}: expected number, got ${On(t)}`]:(i===`integer`&&!Number.isInteger(t)&&r.push(`${n}: expected integer, got non-integer number`),e.minimum!==void 0&&t<e.minimum&&r.push(`${n}: value ${t} is below minimum ${e.minimum}`),e.maximum!==void 0&&t>e.maximum&&r.push(`${n}: value ${t} is above maximum ${e.maximum}`),e.enum&&!e.enum.some(e=>e===t)&&r.push(`${n}: value ${t} is not one of the allowed enum values`),r);case`boolean`:return typeof t==`boolean`?r:[`${n}: expected boolean, got ${On(t)}`];case`null`:return t===null?r:[`${n}: expected null, got ${On(t)}`];default:return i===void 0?[`${n}: schema node declares neither a type nor anyOf`]:[`${n}: unsupported schema type ${String(i)}`]}}function En(e){let t=e.additionalProperties;return t===!1||t===void 0&&e.properties!==void 0}function Dn(e,t,n){if(e.length===0)return[`${n}: anyOf declares no members`];let r=e.map((e,r)=>W(e,t,`${n}|anyOf[${r}]`));return r.some(e=>e.length===0)?[]:[`${n}: value matches none of the ${e.length} allowed shapes`,...r.flat()]}function On(e){return e===null?`null`:Array.isArray(e)?`array`:typeof e}function kn(e){let t=e.trim(),n=/^```(?:json)?[^\\S\\n]*\\n([\\s\\S]*?)\\n?```$/.exec(t),r=n?n[1]:t;try{return{success:!0,value:JSON.parse(r)}}catch(e){return{success:!1,issue:`response is not valid JSON: ${e instanceof Error?e.message:String(e)}`}}}function An(e,t){return De(e,t,`json_schema`)===!0?`response_schema`:De(e,t,`json_object`)===!0?`json_object`:`none`}function jn(e){let{table:t,model:n,endpointIsVendorDefault:r}=e;if(!t)return r===!1?{mechanism:`response_schema`,provenance:`unverified-endpoint`,reason:`a custom baseURL is configured and the provider declares no capability table, so nothing here can claim the endpoint enforces the schema`}:{mechanism:`response_schema`,provenance:`undeclared`,reason:`the provider declares no capability table, so the request is sent as asked — silence is not a denial`};let i=An(t,n),a=t.deviations?.[n]!==void 0;return r===!1?{mechanism:i,provenance:`unverified-endpoint`,reason:`a custom baseURL is configured, so the vendor capability table describes the protocol but not necessarily the endpoint serving it`}:{mechanism:i,provenance:a?`catalog`:`vendor-default`,...i===`none`&&{reason:`${n} declares no schema transport, so the schema travels in the prompt and is enforced by validation`},...i===`json_object`&&{reason:`${n} guarantees JSON but not its shape, so the schema travels in the prompt and is enforced by validation`}}}const G=e=>process.env[e];function Mn(e){return t=>e[t]}function Nn(e,t){for(let n of e??[]){let e=t(n);if(typeof e==`string`&&e.trim().length>0)return e.trim()}}function Pn(e,t={},n=G){let r=e.credentialRequirement,i=t.baseUrl??Nn(r?.baseUrlEnvVars,n)??e.defaults?.baseUrl;if(r===void 0)return{ok:!0,config:{...i===void 0?{}:{baseUrl:i},...t.imageCapableModels===void 0?{}:{imageCapableModels:t.imageCapableModels}}};let a=Nn(r.credentialEnvVars,n),o=[];return a===void 0&&o.push(...r.credentialEnvVars),r.requiresBaseUrl===!0&&i===void 0&&o.push(...r.baseUrlEnvVars??[]),o.length>0?{ok:!1,missing:o}:{ok:!0,config:{...a===void 0?{}:{credential:a},...i===void 0?{}:{baseUrl:i},...t.imageCapableModels===void 0?{}:{imageCapableModels:t.imageCapableModels}}}}function Fn(e,t={},n=G){if(e.createImageProvider===void 0)return;let r=Pn(e,t,n);if(r.ok)try{let t=e.createImageProvider(r.config);return ke(t)?t:void 0}catch{return}}function In(e,t={},n=G){if(e.createVideoProvider===void 0)return;let r=Pn(e,t,n);if(r.ok)try{let t=e.createVideoProvider(r.config);return Ae(t)?t:void 0}catch{return}}const Ln=`$ENV:`;function Rn(e){return e.startsWith(Ln)}function zn(e){return`${Ln}${e}`}function Bn(e,t=G){if(!Rn(e))return e;let n=e.slice(5).trim();if(n.length!==0)return t(n)}function Vn(e,t=G){return e===void 0||e.length===0?!1:Bn(e,t)!==void 0}function Hn(e,t,n=G){let r=Ce(t,e.name)?.defaults??{},i=e.model??r.model;if(!i)throw Error(`Provider ${e.name} requires model`);let a=e.apiKey??r.apiKey,o=e.options??r.options;return{name:e.name,model:i,apiKey:a===void 0?void 0:Bn(a,n),baseURL:e.baseURL??r.baseURL,timeout:e.timeout,...o!==void 0&&{options:o}}}function Un(e,t){let n=Ce(t,e.name);if(n===void 0)throw Error(`Unknown provider: ${e.name}. Currently supported: ${we(t)}`);let r=Te(n);if(r!==void 0&&!Wn(e,r))throw Error(`Provider ${e.name} requires ${Kn(r)}`);return n.createProvider(e)}function Wn(e,t){return t.anyOf.some(t=>Gn(e,t))}function Gn(e,t){let n=e[t];return n!==void 0&&n.length>0}function Kn(e){return e.anyOf.map(e=>e===`apiKey`?`apiKey (API key)`:e).join(` or `)}function K(){let e=globalThis.crypto;if(typeof e?.randomUUID==`function`)return e.randomUUID();if(typeof e?.getRandomValues==`function`){let t=e.getRandomValues(new Uint8Array(16));t[6]=(t[6]??0)&15|64,t[8]=(t[8]??0)&63|128;let n=Array.from(t,e=>e.toString(16).padStart(2,`0`)).join(``);return`${n.slice(0,8)}-${n.slice(8,12)}-${n.slice(12,16)}-${n.slice(16,20)}-${n.slice(20)}`}throw Error(`No cryptographic randomness is available on this platform (globalThis.crypto is missing both randomUUID and getRandomValues), so a unique identifier cannot be generated. This is not something to substitute Math.random for.`)}function qn(e,t){let n={id:K(),role:`user`,content:e,state:`complete`,timestamp:new Date};return t?.name&&(n.name=t.name),t?.metadata&&(n.metadata=t.metadata),t?.parts&&(n.parts=t.parts),n}function Jn(e,t){let n={id:K(),role:`assistant`,content:e,state:t?.state??`complete`,timestamp:new Date};return t?.toolCalls&&(n.toolCalls=t.toolCalls),t?.metadata&&(n.metadata=t.metadata),t?.parts&&(n.parts=t.parts),n}function Yn(e,t){let n={id:K(),role:`system`,content:e,state:`complete`,timestamp:new Date};return t?.name&&(n.name=t.name),t?.metadata&&(n.metadata=t.metadata),t?.parts&&(n.parts=t.parts),n}function Xn(e,t){let n={id:K(),role:`tool`,content:e,toolCallId:t.toolCallId,state:`complete`,timestamp:new Date};return t.name&&(n.name=t.name),t.metadata&&(n.metadata=t.metadata),t.parts&&(n.parts=t.parts),n}var Zn=class{maxMessages;entries=[];constructor(e){this.maxMessages=e?.maxMessages||0}addMessage(e){this.entries.push(et(e)),this.applyMessageLimit()}addEntry(e){this.entries.push(e)}getHistory(){return[...this.entries]}addUserMessage(e,t,n){this.addMessage(qn(e,{...t&&{metadata:t},...n&&{parts:n}}))}addAssistantMessage(e,t,n,r){this.addMessage(Jn(e,{...t&&{toolCalls:t},...n&&{metadata:n},...r&&{parts:r}}))}addSystemMessage(e,t,n){this.addMessage(Yn(e,{...t&&{metadata:t},...n&&{parts:n}}))}setSystemPrompt(e,t,n){let r=e=>O(e)&&it($e(e)),i=this.entries.filter(e=>!r(e)),a=et(Yn(e,{...t&&{metadata:t},...n&&{parts:n}}));i.unshift(a),this.entries=i}addToolMessageWithId(e,t,n,r,i){this.addMessage(Xn(e,{toolCallId:t,name:n,...r&&{metadata:r},...i&&{parts:i}}))}getMessages(){return this.entries.filter(O).map($e)}getMessagesByRole(e){return this.getMessages().filter(t=>t.role===e)}getRecentMessages(e){return this.getMessages().slice(-e)}getMessageCount(){return this.entries.filter(O).length}clear(){this.entries=[]}applyMessageLimit(){if(this.maxMessages<=0)return;let e=this.entries.filter(O);if(e.length<=this.maxMessages)return;let t=e.map($e),n=t.filter(it),r=t.filter(e=>!it(e)),i=Math.max(0,this.maxMessages-n.length),a=[...n,...r.slice(-i)],o=new Set(a.map(e=>e.id));this.entries=this.entries.filter(e=>!O(e)||o.has(e.id))}},Qn=class{history;pendingAssistant=null;constructor(e=0){this.history=new Zn({maxMessages:e})}addMessage(e){this.history.addMessage(e)}addUserMessage(e,t,n){this.history.addUserMessage(e,t,n)}addAssistantMessage(e,t,n,r){this.history.addAssistantMessage(e,t,n,r)}addSystemMessage(e,t,n){this.history.addSystemMessage(e,t,n)}setSystemPrompt(e,t,n){this.history.setSystemPrompt(e,t,n)}addToolMessage(e,t,n,r,i){this.history.addToolMessageWithId(e,t,n||`unknown`,r,i)}addToolMessageWithId(e,t,n,r,i){this.history.addToolMessageWithId(e,t,n,r,i)}addEntry(e){this.history.addEntry(e)}getHistory(){return this.history.getHistory()}getMessages(){return this.history.getMessages()}getMessagesByRole(e){return this.history.getMessagesByRole(e)}getRecentMessages(e){return this.history.getRecentMessages(e)}getMessageCount(){return this.history.getMessageCount()}beginAssistant(){this.pendingAssistant||={id:K(),content:``,toolCalls:[]}}appendStreaming(e){this.pendingAssistant||={id:K(),content:``,toolCalls:[]},this.pendingAssistant.content+=e}appendToolCall(e){this.pendingAssistant||={id:K(),content:``,toolCalls:[]},this.pendingAssistant.toolCalls.some(t=>t.id===e.id)||this.pendingAssistant.toolCalls.push(e)}commitAssistant(e,t){if(!this.pendingAssistant)return;let n=this.pendingAssistant,r=n.toolCalls.length>0,i=n.content,a={id:n.id,role:`assistant`,content:i,state:e,timestamp:new Date,...r&&{toolCalls:n.toolCalls},...t&&{metadata:t}};this.history.addMessage(a),this.pendingAssistant=null}discardPending(){this.pendingAssistant=null}hasPendingAssistant(){return this.pendingAssistant!==null}getPendingContent(){return this.pendingAssistant?.content??``}getMessagesForAPI(){return this.history.getMessages().map(e=>{let t={role:e.role,content:e.content};return rt(e)&&e.state===`interrupted`&&(t.content=(t.content||``)+`\n\n[This response was interrupted by the user]`),rt(e)&&e.toolCalls&&(t.tool_calls=e.toolCalls),at(e)&&(t.tool_call_id=e.toolCallId),t})}clear(){this.history.clear()}},$n=class{conversations=new Map;logger;maxMessagesPerConversation;maxConversations;constructor(e={}){this.maxMessagesPerConversation=e.maxMessagesPerConversation||0,this.maxConversations=e.maxConversations||50,this.logger=k(`ConversationHistory`)}getConversationStore(e){return this.conversations.has(e)||(this.conversations.size>=this.maxConversations&&this.cleanupOldConversations(),this.conversations.set(e,new Qn(this.maxMessagesPerConversation))),this.conversations.get(e)}hasConversation(e){return this.conversations.has(e)}removeConversation(e){let t=this.conversations.delete(e);return t&&this.logger.debug(`Removed conversation`,{conversationId:e}),t}clearAll(){let e=this.conversations.size;this.conversations.clear(),this.logger.debug(`Cleared all conversations`,{removedCount:e})}getStats(){let e=Array.from(this.conversations.keys()),t=Array.from(this.conversations.values()).reduce((e,t)=>e+t.getMessageCount(),0);return{totalConversations:this.conversations.size,conversationIds:e,totalMessages:t}}cleanupOldConversations(){if(this.conversations.size===0)return;let e=this.conversations.keys().next().value;e&&this.conversations.delete(e)}};function er(){let e,t=0;return{observe(n){t+=1,t===1&&(e=n)},terminal(n){if(t>1)throw Error(`Provider \"${n}\" emitted ${t} model-effort outcomes`);return e}}}function tr(e,t,n){if(n!==void 0&&t?.onModelEffortOutcome!==void 0)try{t.onModelEffortOutcome(n)}catch(t){e.warn(`Model-effort outcome observer failed`,{error:t instanceof Error?t.message:String(t)})}}var nr=class extends Nt{name=`local`;version=`1.0.0`;providers=new Map;config;constructor(e={}){super(),this.config={timeout:3e4,maxRetries:3,retryDelay:1e3,enableLogging:!1,...e}}registerProvider(e,t){this.providers.set(e,t)}unregisterProvider(e){this.providers.delete(e)}getProvider(e){return this.providers.get(e)}async executeChat(e){this.validateRequest(e);let t=this.requireChatProvider(e);this.config.enableLogging&&this.logDebug(`Executing chat with provider: ${e.provider}, model: ${e.model}`);try{let n=er(),r=await this.withRetry(async()=>(n=er(),await this.withTimeout(t.chat(e.messages,{...e.options,model:e.model,tools:e.tools,onModelEffortOutcome:e=>{n.observe(e)}}),this.config.timeout)),this.config.maxRetries,this.config.retryDelay);if(r.role!==`assistant`)throw Error(`Expected assistant message, got ${r.role}`);let i=n.terminal(e.provider);return this.validateResponse(r),tr(this.logger,e.options,i),{message:r,...i!==void 0&&{modelEffortOutcome:i}}}catch(t){let n=t instanceof Error?t:Error(String(t));throw this.logError(`Chat execution failed`,n,{provider:e.provider,model:e.model}),n}}async*executeChatStream(e){this.validateRequest(e);let t=this.providers.get(e.provider);if(!t)throw Error(`Provider \"${e.provider}\" not registered with LocalExecutor`);if(!t.chatStream)throw Error(`Provider \"${e.provider}\" does not implement chatStream method`);this.config.enableLogging&&this.logDebug(`Executing streaming chat with provider: ${e.provider}, model: ${e.model}`);try{let n=er(),r=t.chatStream(e.messages,{...e.options,model:e.model,tools:e.tools,onModelEffortOutcome:e=>{n.observe(e)}});for await(let e of r)this.validateResponse(e),yield{kind:`message`,message:e};let i=n.terminal(e.provider);tr(this.logger,e.options,i),yield{kind:`terminal`,...i!==void 0&&{modelEffortOutcome:i}}}catch(t){let n=t instanceof Error?t:Error(String(t));throw this.logError(`Streaming chat execution failed`,n,{provider:e.provider,model:e.model}),n}}supportsTools(){for(let e of this.providers.values())if(e.supportsTools&&e.supportsTools())return!0;return!1}validateConfig(){try{if(this.config.timeout<=0||this.config.maxRetries<0||this.config.retryDelay<0)return!1;for(let e of this.providers.values())if(e.validateConfig&&!e.validateConfig())return!1;return!0}catch{return!1}}async dispose(){this.config.enableLogging&&this.logDebug(`Disposing ${this.providers.size} providers`);let e=[];for(let t of this.providers.values())t.dispose&&e.push(t.dispose());await Promise.all(e),this.providers.clear()}requireChatProvider(e){let t=this.providers.get(e.provider);if(!t)throw Error(`Provider \"${e.provider}\" not registered with LocalExecutor`);if(!t.chat)throw Error(`Provider \"${e.provider}\" does not implement chat method`);return t}};const rr=/^[A-Za-z0-9_@%+:,./][A-Za-z0-9_@%+=:,./-]*$/;function ir(e){return rr.test(e)?e:void 0}var ar=class{totalEmitted=0;totalErrors=0;incrementEmitted(){this.totalEmitted+=1}incrementErrors(){this.totalErrors+=1}getSnapshot(){return{totalEmitted:this.totalEmitted,totalErrors:this.totalErrors}}};function or(e,t){if(e.maxListeners!==void 0&&e.maxListeners<0)throw new se(`Invalid maxListeners option: ${e.maxListeners}. Must be a non-negative number.`,t,{maxListeners:e.maxListeners});if(e.buffer!==void 0&&e.buffer.maxSize!==void 0&&e.buffer.maxSize<0)throw new se(`Invalid buffer.maxSize option: ${e.buffer.maxSize}. Must be a non-negative number.`,t,{bufferMaxSize:e.buffer.maxSize});if(e.buffer!==void 0&&e.buffer.flushInterval!==void 0&&e.buffer.flushInterval<0)throw new se(`Invalid buffer.flushInterval option: ${e.buffer.flushInterval}. Must be a non-negative number.`,t,{bufferFlushInterval:e.buffer.flushInterval})}async function sr(e,t,n,r,i){try{await e.listener(t)}catch(a){if(n.incrementErrors(),!r)throw a instanceof Error?a:Error(String(a));i.error(`Event handler error`,{eventType:t.type,handlerId:e.id,error:a instanceof Error?a.message:String(a)})}}async function cr(e,t,n,r,i){let a=t.get(e.type);if(!a||a.length===0)return;let o=a.filter(t=>!t.filter||t.filter(e));if(o.length!==0){for(let t of o.filter(e=>e.once))r(e.type,t.id);if(n){await Promise.all(o.map(t=>i(t,e)));return}for(let t of o)await i(t,e)}}function lr(e){let t={},n=0;for(let[r,i]of e)t[r]=i.length,n+=i.length;return{listenerCounts:t,totalListeners:n}}function ur(e,t,n,r){let{listenerCounts:i,totalListeners:a}=lr(t),o=r.getSnapshot();return{enabled:e.enabled,calls:e.calls,errors:e.errors,eventTypes:Array.from(t.keys()),listenerCounts:i,totalListeners:a,bufferedEvents:n,totalEmitted:o.totalEmitted,totalErrors:o.totalErrors}}function dr(e,t,n,r,i,a,o){e.has(t)||e.set(t,[]);let s=e.get(t);if(s.length>=a)throw new se(`Maximum listeners (${a}) exceeded for event type: ${t}`,o,{eventType:t,currentListeners:s.length});s.push({id:n,listener:r,once:i?.once??!1,...i?.filter&&{filter:i.filter}})}function fr(e,t,n){let r=e.get(t);if(!r)return!1;let i=typeof n==`string`?r.findIndex(e=>e.id===n):r.findIndex(e=>e.listener===n);return i===-1?!1:(r.splice(i,1),!0)}function pr(e,t,n){let r=t.result!==null&&t.result!==void 0;return{executionId:e.executionId,sessionId:e.sessionId,userId:e.userId,data:{toolName:t.name||``,toolId:t.id||``,toolResult:r?String(t.result):void 0,duration:n,success:r}}}var mr=class extends Mt{name=`EventEmitterPlugin`;version=`1.0.0`;pluginOptions;logger;handlers=new Map;eventBuffer=[];nextHandlerId=1;bufferTimer;metrics;constructor(e={}){super(),this.logger=k(`EventEmitterPlugin`),this.metrics=e.metrics??new ar,or(e,this.name),this.pluginOptions={enabled:e.enabled??!0,events:e.events??[I.AGENT_EXECUTION_START,I.AGENT_EXECUTION_COMPLETE,I.AGENT_EXECUTION_ERROR,I.TOOL_BEFORE_EXECUTE,I.TOOL_AFTER_EXECUTE,I.TOOL_SUCCESS,I.TOOL_ERROR],maxListeners:e.maxListeners??100,async:e.async??!0,catchErrors:e.catchErrors??!0,filters:e.filters??{},buffer:e.buffer??{enabled:!1,maxSize:1e3,flushInterval:5e3},category:e.category??`event_processing`,priority:e.priority??wt.HIGH,moduleEvents:e.moduleEvents??[],subscribeToAllModuleEvents:e.subscribeToAllModuleEvents??!1},this.pluginOptions.buffer.enabled&&(this.bufferTimer=setInterval(()=>{this.flushBuffer().catch(e=>{this.logger.error(`Buffered flush failed`,{error:e instanceof Error?e.message:String(e)})})},this.pluginOptions.buffer.flushInterval))}async beforeExecution(e){await this.emit(I.AGENT_EXECUTION_START,{executionId:e.executionId,sessionId:e.sessionId,userId:e.userId,data:{messageCount:e.messages?.length||0,...e.config&&{config:e.config}}})}async afterExecution(e,t){await this.emit(I.AGENT_EXECUTION_COMPLETE,{executionId:e.executionId,sessionId:e.sessionId,userId:e.userId,data:{duration:t?.duration,tokensUsed:t?.tokensUsed,toolsExecuted:t?.toolsExecuted}})}async beforeConversation(e){await this.emit(I.CONVERSATION_START,{executionId:e.executionId,sessionId:e.sessionId,userId:e.userId,data:{messages:e.messages?.map(e=>({role:e.role,content:e.content||``,timestamp:e.timestamp?e.timestamp.toISOString():new Date().toISOString()})),config:e.config}})}async afterConversation(e,t){await this.emit(I.CONVERSATION_COMPLETE,{executionId:e.executionId,sessionId:e.sessionId,userId:e.userId,data:{response:t.content||t.response,tokensUsed:t.usage?.totalTokens||t.tokensUsed,toolCalls:t.toolCalls?.map(e=>({id:e.id||``,name:e.name||``,arguments:JSON.stringify(e.arguments||{}),result:String(e.result||``)}))}})}async beforeToolExecution(e,t){t&&await this.emit(I.TOOL_BEFORE_EXECUTE,{executionId:e.executionId,sessionId:e.sessionId,userId:e.userId,data:{toolName:t.toolName,toolId:t.executionId,arguments:JSON.stringify(t.parameters??{})}})}async afterToolExecution(e,t){if(!(!t.toolCalls||t.toolCalls.length===0))for(let n of t.toolCalls){let r=n.result===null?I.TOOL_ERROR:I.TOOL_SUCCESS,i=pr(e,n,t.duration);await this.emit(r,i),await this.emit(I.TOOL_AFTER_EXECUTE,{...i,data:{...i.data,toolResult:String(n.result||``)}})}}async onError(e,t){await this.emit(I.AGENT_EXECUTION_ERROR,{executionId:t?.executionId,sessionId:t?.sessionId,userId:t?.userId,error:e instanceof Error?e:Error(String(e)),data:{action:t?.action,tool:t?.tool,attempt:t?.attempt}})}on(e,t,n){let r=`handler_${this.nextHandlerId++}`;return dr(this.handlers,e,r,t,n,this.pluginOptions.maxListeners,this.name),r}once(e,t,n){return this.on(e,t,{once:!0,...n&&{filter:n}})}off(e,t){return fr(this.handlers,e,t)}async emit(e,t={}){if(!this.pluginOptions.events.includes(e))return;let n={type:e,timestamp:new Date,...t},r=this.pluginOptions.filters[e];if(!(r&&!r(n))){if(this.metrics.incrementEmitted(),this.pluginOptions.buffer.enabled){this.eventBuffer.push(n),this.eventBuffer.length>=this.pluginOptions.buffer.maxSize&&await this.flushBuffer();return}await this.processEvent(n)}}async processEvent(e){await cr(e,this.handlers,this.pluginOptions.async,(e,t)=>this.off(e,t),(e,t)=>sr(e,t,this.metrics,this.pluginOptions.catchErrors,this.logger))}async flushBuffer(){if(this.eventBuffer.length===0)return;let e=[...this.eventBuffer];this.eventBuffer=[];for(let t of e)await this.processEvent(t)}getStats(){return ur(super.getStats(),this.handlers,this.eventBuffer.length,this.metrics)}clearAllListeners(){this.handlers.clear()}async dispose(){this.bufferTimer&&clearInterval(this.bufferTimer),await this.flushBuffer(),this.clearAllListeners(),await super.dispose()}};const hr=[`string`,`number`,`integer`,`boolean`,`array`,`object`,`null`];var gr=class{tools=new Map;register(e){if(!e.schema?.name)throw new l(`Tool must have a valid schema with name`);let t=e.schema.name;this.validateToolSchema(e.schema),this.tools.has(t)&&A.warn(`Tool \"${t}\" is already registered, overriding`,{toolName:t,existingTool:this.tools.get(t)?.constructor.name}),this.tools.set(t,e),A.debug(`Tool \"${t}\" registered successfully`,{toolName:t,toolType:e.constructor.name,parameters:Object.keys(e.schema.parameters?.properties||{})})}unregister(e){if(!this.tools.has(e)){A.warn(`Attempted to unregister non-existent tool \"${e}\"`);return}this.tools.delete(e),A.debug(`Tool \"${e}\" unregistered successfully`)}get(e){return this.tools.get(e)}getAll(){return Array.from(this.tools.values())}getSchemas(){let e=this.getAll();return A.debug(`[TOOL-FLOW] ToolRegistry.getSchemas() - Tools before schema extraction`,{count:e.length,tools:e.map(e=>({name:e.schema?.name??`unnamed`,hasSchema:!!e.schema,schemaType:typeof e.schema,toolType:e.constructor?.name||`unknown`}))}),this.getAll().map(e=>e.schema)}has(e){return this.tools.has(e)}clear(){let e=this.tools.size;this.tools.clear(),A.debug(`Cleared ${e} tools from registry`)}getToolNames(){return Array.from(this.tools.keys())}getToolsByPattern(e){let t=typeof e==`string`?new RegExp(e):e;return this.getAll().filter(e=>t.test(e.schema.name))}size(){return this.tools.size}validateToolSchema(e){if(!e.name||typeof e.name!=`string`)throw new l(`Tool schema must have a valid name`);if(!e.description||typeof e.description!=`string`)throw new l(`Tool schema must have a description`);if(!e.parameters||typeof e.parameters!=`object`||e.parameters===null||Array.isArray(e.parameters))throw new l(`Tool schema must have parameters object`);if(e.parameters.type!==`object`)throw new l(`Tool parameters type must be \"object\"`);if(e.parameters.properties)for(let[t,n]of Object.entries(e.parameters.properties))_r(t,n);if(e.parameters.required){let t=e.parameters.properties||{};for(let n of e.parameters.required)if(!t[n])throw new l(`Required parameter \"${n}\" is not defined in properties`)}}};function _r(e,t){if(t?.anyOf){if(t.anyOf.length===0)throw new l(`Parameter \"${e}\" declares an empty anyOf`);t.anyOf.forEach((t,n)=>_r(`${e}|anyOf[${n}]`,t));return}if(!t?.type)throw new l(`Parameter \"${e}\" must declare a type or anyOf`);if(!hr.includes(t.type))throw new l(`Parameter \"${e}\" has invalid type \"${t.type}\"`);if(t.properties)for(let[n,r]of Object.entries(t.properties))_r(`${e}.${n}`,r);t.items&&_r(`${e}[]`,t.items)}function vr(e,t,n){let r=W(n,t,`$`);if(r.length>0)throw new u(`output does not match the declared outputSchema: ${r.join(`; `)}`,e,void 0,{outputSchemaIssues:r})}function yr(e,t,n){let r=br(e,t,n);return r?[r]:W(n,t,`Parameter \"${e}\"`)}function br(e,t,n){if(n.anyOf)return;let r=n.type;switch(r){case`string`:return typeof t==`string`?void 0:`Parameter \"${e}\" must be a string, got ${xr(t)}`;case`number`:case`integer`:return typeof t==`number`&&!isNaN(t)?void 0:`Parameter \"${e}\" must be a number, got ${xr(t)}`;case`boolean`:return typeof t==`boolean`?void 0:`Parameter \"${e}\" must be a boolean, got ${xr(t)}`;case`array`:return Array.isArray(t)?void 0:`Parameter \"${e}\" must be an array, got ${xr(t)}`;case`object`:return typeof t==`object`&&t&&!Array.isArray(t)?void 0:`Parameter \"${e}\" must be an object, got ${xr(t)}`;case`null`:return;case void 0:return`Parameter \"${e}\" declares neither a type nor anyOf`;default:return`Parameter \"${e}\" has unsupported schema type \"${String(r)}\"`}}function xr(e){return e===null?`null`:Array.isArray(e)?`array`:typeof e}function Sr(e,t,n,r){let i=[];for(let n of t)n in e||i.push(`Missing required parameter: ${n}`);for(let[t,a]of Object.entries(e)){let e=n[t];if(!e){if(r===!0)continue;if(r&&typeof r==`object`){i.push(...yr(t,a,r));continue}i.push(`Unknown parameter: ${t}`);continue}i.push(...yr(t,a,e))}return i}function Cr(e,t,n,r){let i=Sr(e,t,n,r);return{isValid:i.length===0,errors:i}}var wr=class{listeners=new Set;subscribe(e){this.listeners.add(e)}unsubscribe(e){this.listeners.delete(e)}notifyListeners(e,t,n){for(let r of this.listeners)r(e,t,n)}},Tr=class extends wr{emit(e,t,n){}};const Er=new Tr;function Dr(e){return e===Er||e instanceof Tr}function Or(e,t){if(!e||e.trim().length===0)throw Error(`[EVENTS] ownerType is required to compose event names.`);if(e.includes(`.`))throw Error(`[EVENTS] ownerType must not contain '.': \"${e}\"`);if(!t||t.trim().length===0)throw Error(`[EVENTS] local event name is required.`);if(t.includes(`.`))throw Error(`[EVENTS] Local event name must not contain '.': \"${t}\"`);return`${e}.${t}`}function kr(){return`span_${Date.now().toString(36)}_${Math.random().toString(36).slice(2,10)}`}var Ar=class extends wr{base;binding;constructor(e,t){super(),this.base=e,this.binding=t}emit(e,t,n){if(e.includes(`.`))throw Error(`[EVENTS] Local event name must not contain '.': \"${e}\"`);let r={...n,ownerType:this.binding.ownerType,ownerId:this.binding.ownerId,ownerPath:this.binding.ownerPath,depth:this.binding.ownerPath.length,spanId:n?.spanId??kr()},i=Or(this.binding.ownerType,e);this.base.emit(i,t,r)}subscribe(e){this.base.subscribe(e)}unsubscribe(e){this.base.unsubscribe(e)}};function q(e,t){return new Ar(e,t)}function jr(e,t){return q(e,t)}var Mr=class extends wr{emit(e,t,n){this.notifyListeners(e,t,n)}};const Nr={COMPLETED:`span_completed`},Pr={COMPLETED:`provider_call_completed`},Fr={SWITCHED:`provider_fallback`};function Ir(e){let{fromProvider:t,fromModel:n,toProvider:r,toModel:i,reason:a}=e;if(typeof t==`string`&&typeof n==`string`&&typeof r==`string`&&typeof i==`string`&&typeof a==`string`)return{from:{provider:t,model:n},to:{provider:r,model:i},reason:a}}const Lr={COMPLETED:`tool_body_completed`},Rr={DECIDED:`tool_permission_decided`},zr=`span`;var Br=class{schema;fn;eventService;constructor(e,t){this.schema=e,this.fn=t,this.validateConstructorInputs()}getName(){return this.schema.name}setEventService(e){this.eventService=e}async execute(e,t){let n=this.schema.name;if(!this.validate(e))throw new l(`Invalid parameters for tool \"${n}\": ${Sr(e,this.schema.parameters.required||[],this.schema.parameters.properties||{},this.schema.parameters.additionalProperties).join(`, `)}`);let r=Date.now(),i;try{i=await this.fn(e,t)}catch(r){throw r instanceof u||r instanceof l?r:new u(`Function tool execution failed: ${r instanceof Error?r.message:String(r)}`,n,r instanceof Error?r:Error(String(r)),{parameterCount:Object.keys(e||{}).length,hasContext:!!t})}let a=Date.now()-r;this.schema.outputSchema&&vr(n,i,this.schema.outputSchema);let o=t?.instanceEventService??this.eventService;if(o){let e={timestamp:new Date,spanId:kr(),durationMs:a,op:n};o.emit(Nr.COMPLETED,e)}return{success:!0,data:i,metadata:{executionTime:a,toolName:n,parameters:e}}}validate(e){return Sr(e,this.schema.parameters.required||[],this.schema.parameters.properties||{},this.schema.parameters.additionalProperties).length===0}validateParameters(e){return Cr(e,this.schema.parameters.required||[],this.schema.parameters.properties||{},this.schema.parameters.additionalProperties)}getDescription(){return this.schema.description}validateConstructorInputs(){if(!this.schema)throw new l(`Tool schema is required`);if(!this.fn||typeof this.fn!=`function`)throw new l(`Tool function is required and must be a function`);if(!this.schema.name)throw new l(`Tool schema must have a name`)}};const Vr=`at least one tool must stay resident; all tools cannot be deferred`,Hr=`a tool schema was withheld but no ${Ne} tool is offered; register the loader or turn tool search off`;function Ur(e){return e.deferLoading===!0}function Wr(e,t,n){if(n===`off`)return[...e];let r=e.filter(e=>!Ur(e)||t.has(e.name));if(e.length>0&&r.length===0)throw Error(Vr);if(r.length<e.length&&!r.some(e=>e.name===`ToolSearch`))throw Error(Hr);return r}function Gr(e){if(e.length>0&&e.every(Ur))throw Error(Vr)}var Kr=class extends Ke{moduleManager;pluginManager;get name(){return this.config.name}addPlugin(e){this.pluginManager.addPlugin(e)}removePlugin(e){return this.pluginManager.removePlugin(e)}getPlugin(e){return this.pluginManager.getPlugin(e)}getPlugins(){return this.pluginManager.getPlugins()}getPluginNames(){return this.pluginManager.getPluginNames()}async registerModule(e,t){return this.moduleManager.registerModule(e,t)}async unregisterModule(e){return this.moduleManager.unregisterModule(e)}getModule(e){return this.moduleManager.getModule(e)}getModulesByType(e){return this.moduleManager.getModulesByType(e)}getModules(){return this.moduleManager.getModules()}getModuleNames(){return this.moduleManager.getModuleNames()}hasModule(e){return this.moduleManager.hasModule(e)}async executeModule(e,t){return this.moduleManager.executeModule(e,t)}getModuleStats(e){return this.moduleManager.getModuleStats(e)}};function qr(e,t){if(!t.success){let n=t.data===void 0?``:`; data: ${typeof t.data==`string`?t.data:JSON.stringify(t.data)}`;throw new u(`${t.error??`Tool execution failed`}${n}`,e)}if(t.data===void 0)throw new u(`Tool execution succeeded but returned no data`,e);return t.data}function Jr(e){if(!e.name)throw new y(`Agent name is required`,{component:`Robota`});if(!e.aiProviders||e.aiProviders.length===0)throw new y(`At least one AI provider is required`,{component:`Robota`});if(!e.defaultModel)throw new y(`Default model configuration is required`,{component:`Robota`});if(!e.defaultModel.provider||!e.defaultModel.model)throw new y(`Default model must specify both provider and model`,{component:`Robota`});let t=e.aiProviders.map(e=>e.name),n=t.filter((e,n)=>t.indexOf(e)!==n);if(n.length>0)throw new y(`Duplicate AI provider names: ${n.join(`, `)}`,{component:`Robota`,duplicates:n});if(!t.includes(e.defaultModel.provider))throw new y(`Default provider '${e.defaultModel.provider}' not found in AI providers list. Available: ${t.join(`, `)}`,{component:`Robota`,defaultProvider:e.defaultModel.provider,availableProviders:t})}var Yr=class{logger;getAIProviders;getTools;getEventService;ensureReady;getConfig;setConfig;getConfigVersion;bumpConfigVersion;getConfigUpdatedAt;setConfigUpdatedAt;emitAgentEvent;constructor(e,t,n,r,i,a,o,s,c,l,u,d){this.logger=e,this.getAIProviders=t,this.getTools=n,this.getEventService=r,this.ensureReady=i,this.getConfig=a,this.setConfig=o,this.getConfigVersion=s,this.bumpConfigVersion=c,this.getConfigUpdatedAt=l,this.setConfigUpdatedAt=u,this.emitAgentEvent=d}async updateTools(e){if(await this.ensureReady(),!Array.isArray(e))throw new y(`updateTools: next must be an array of tools`);this.getTools().getRegistry().clear();let t=[],n=this.getEventService();for(let r of e){n&&r.setEventService(n),this.getTools().addTool(r.schema,async(e,t)=>{if(!t)throw Error(`[ROBOTA] Missing ToolExecutionContext for tool execution`);let n=await r.execute(e,t);return qr(r.schema.name,n)});let e=r.schema.name;typeof e==`string`&&e.length>0&&t.push(e)}let r=this.getConfig();r.tools=e,this.setConfig(r);let i=this.bumpConfigVersion();return this.setConfigUpdatedAt(Date.now()),this.emitAgentEvent(j.CONFIG_UPDATED,{parameters:{tools:t,systemMessage:r.systemMessage,provider:r.defaultModel.provider,model:r.defaultModel.model,temperature:r.defaultModel.temperature,maxTokens:r.defaultModel.maxTokens},metadata:{version:i}}),{version:i}}async updateConfiguration(e){if(e.tools)return this.updateTools(e.tools);if(e.name!==void 0){this.setConfig({...this.getConfig(),name:e.name});let t=this.bumpConfigVersion();return this.setConfigUpdatedAt(Date.now()),{version:t}}throw new y(\"updateConfiguration: only `tools` and `name` are supported\")}async getConfiguration(){await this.ensureReady();let e=this.getTools().getTools().map(e=>({name:e.name,parameters:(()=>{let t=e.parameters?.properties;return t&&typeof t==`object`?Object.keys(t):void 0})()}));return{version:this.getConfigVersion(),tools:e,updatedAt:this.getConfigUpdatedAt(),metadata:void 0}}setModel(e){if(!e.provider||!e.model)throw new y(`Both provider and model are required`,{component:`Robota`});let t=this.getAIProviders(),n=t.getProviderNames();if(!n.includes(e.provider))throw new y(`AI Provider '${e.provider}' not found. Available: ${n.join(`, `)}`,{component:`Robota`,provider:e.provider,availableProviders:n});t.setCurrentProvider(e.provider,e.model);let r=this.getConfig();this.setConfig({...r,defaultModel:{...r.defaultModel,provider:e.provider,model:e.model,...e.temperature!==void 0&&{temperature:e.temperature},...e.maxTokens!==void 0&&{maxTokens:e.maxTokens},...e.topP!==void 0&&{topP:e.topP},...e.effort!==void 0&&{effort:e.effort}}}),this.logger.debug(`Model configuration updated`,e)}getModel(){let e=this.getAIProviders().getCurrentProvider();if(!e)throw new y(`No provider is currently set`,{component:`Robota`});let t=this.getConfig();return{provider:e.provider,model:e.model,...t.defaultModel.temperature!==void 0&&{temperature:t.defaultModel.temperature},...t.defaultModel.maxTokens!==void 0&&{maxTokens:t.defaultModel.maxTokens},...t.defaultModel.topP!==void 0&&{topP:t.defaultModel.topP},...t.defaultModel.effort!==void 0&&{effort:t.defaultModel.effort}}}setSystemMessage(e){let t=this.getConfig();t.systemMessage=e,this.setConfig(t),this.setConfigUpdatedAt(Date.now())}getSystemMessage(){return this.getConfig().systemMessage}registerTool(e,t){if(t.hasTool(e.schema.name))throw Error(`[STRICT-POLICY][EMITTER-CONTRACT] Duplicate tool registration attempted: ${e.schema.name}. Tool registration flow must provide a single authoritative registration path.`);t.addTool(e.schema,async(t,n)=>{if(!n)throw Error(`[ROBOTA] Missing ToolExecutionContext for tool execution`);let r=await e.execute(t,n);return qr(e.schema.name,r)}),this.logger.debug(`Tool registered`,{toolName:e.schema.name})}},Xr=class extends qe{registry;allowedTools;resolveToolSearchMode;isToolVisible;loadedDeferredTools=new Set;constructor(e){super({readyOnConstruction:!0}),this.registry=new gr,this.resolveToolSearchMode=e.resolveToolSearchMode,this.isToolVisible=e.isToolVisible??(()=>!0)}async doInitialize(){A.debug(`Tools initialized`)}async doDispose(){this.registry.clear(),this.loadedDeferredTools.clear(),delete this.allowedTools,A.debug(`Tools disposed`)}addTool(e,t){this.ensureInitialized();let n=new Br(e,t);this.registry.register(n),A.debug(`Tool \"${e.name}\" registered successfully`)}removeTool(e){this.ensureInitialized(),this.registry.unregister(e)}getTool(e){return this.ensureInitialized(),this.registry.get(e)}getToolSchema(e){return this.ensureInitialized(),this.registry.get(e)?.schema}getTools(){this.ensureInitialized();let e=this.registry.getSchemas().filter(e=>this.isToolVisible(e.name));return this.allowedTools?e.filter(e=>this.allowedTools.includes(e.name)):e}getOfferedTools(){return Wr(this.getTools(),this.loadedDeferredTools,this.resolveToolSearchMode())}isToolOffered(e){return this.getOfferedTools().some(t=>t.name===e)}listDeferredTools(){return this.resolveToolSearchMode()===`off`?[]:this.getTools().filter(e=>Ur(e)&&!this.loadedDeferredTools.has(e.name))}loadDeferredTools(e){this.ensureInitialized();let t=e.map(e=>{let t=this.isToolVisible(e)?this.registry.get(e)?.schema:void 0;if(!t)throw new u(`Tool \"${e}\" is not registered, so it cannot be loaded`,e);return t});for(let e of t)Ur(e)&&this.loadedDeferredTools.add(e.name);return t}async executeTool(e,t,n){if(this.ensureInitialized(),this.allowedTools&&!this.allowedTools.includes(e))throw new u(`Tool \"${e}\" is not in the allowed tools list`,e);let r=this.registry.get(e);if(!r)throw new u(`Tool \"${e}\" is not registered`,e);let i;try{i=await r.execute(t,n)}catch(t){throw t instanceof Error?new u(t.message,e,t):new u(String(t),e)}if(!i.success)throw new u(i.error||`Tool execution failed`,e,void 0,{parameters:JSON.stringify(t),result:JSON.stringify(i)});if(i.data===void 0)throw new u(`Tool execution succeeded but returned no data`,e);return i.data}hasTool(e){return this.ensureInitialized(),this.registry.has(e)}setAllowedTools(e){this.ensureInitialized(),this.allowedTools=[...e],A.debug(`Set allowed tools: ${e.join(`, `)}`)}getAllowedTools(){return this.ensureInitialized(),this.allowedTools?[...this.allowedTools]:void 0}getRegistry(){return this.ensureInitialized(),this.registry}getToolCount(){return this.ensureInitialized(),this.registry.size()}};function Zr(e){let t=Qr(e.metadata),n=ei(e.usage);return t??n}function Qr(e){if(!e)return;let t=ei({inputTokens:ti(e,`inputTokens`),outputTokens:ti(e,`outputTokens`),promptTokens:ti(e,`promptTokens`),completionTokens:ti(e,`completionTokens`),totalTokens:ti(e,`totalTokens`),cacheReadTokens:ti(e,`cacheReadTokens`)});if(t)return t;let n=e.usage;if(typeof n==`string`)return $r(n);if(ri(n))return ei(n)}function $r(e){try{return ei(JSON.parse(e))}catch{return}}function ei(e){if(!e)return;let t=ni(e.inputTokens,e.promptTokens),n=ni(e.outputTokens,e.completionTokens);if(t===void 0||n===void 0)return;let r=ni(e.totalTokens),i=ni(e.cacheReadTokens),a=i!==void 0&&i>=0&&i<=t;return{inputTokens:t,outputTokens:n,...r!==void 0&&{totalTokens:r},...a&&{cacheReadTokens:i}}}function ti(e,t){let n=e[t];return typeof n==`number`&&Number.isFinite(n)?n:void 0}function ni(...e){return e.find(e=>typeof e==`number`&&Number.isFinite(e))}function ri(e){return typeof e==`object`&&!!e&&!Array.isArray(e)&&Object.values(e).every(e=>typeof e==`number`&&Number.isFinite(e))}const ii=4;function ai(e){return Math.ceil(JSON.stringify(e).length/4)}function oi(e){return e.length===0?0:Math.ceil(JSON.stringify(e).length/4)}function si(e,t={}){let n=ai(e),r=ci(e),i=r?.tokens,a=li(t.usageFloorTokens);return{usedTokens:r?.index===e.length-1?Math.max(i??0,a??0):Math.max(n,i??0,a??0),serializedTokens:n,...i!==void 0&&{providerTokens:i},...a!==void 0&&{usageFloorTokens:a}}}function ci(e){for(let t=e.length-1;t>=0;t--){let n=Zr(e[t]);if(n)return{tokens:n.totalTokens??n.inputTokens+n.outputTokens,index:t}}}function li(e){if(!(e===void 0||!Number.isFinite(e)||e<=0))return Math.ceil(e)}const ui=k(`agent-core:models`),di=new Set;function fi(e,t,n){let r=`${e}:${t}`;di.has(r)||(di.add(r),ui.warn(`No metadata registered for model \"${e}\"; using the default ${t} of ${n}. This number belongs to a different vendor's models — register the model through registerModelMetadata() from the package that owns it. (NEUT-010)`))}const pi=2e5,mi=new Map;function hi(...e){for(let t of e){let e=mi.get(t.id);e&&!gi(e,t)&&ui.warn(`Model \"${t.id}\" was already registered with different metadata (context window ${e.contextWindow} -> ${t.contextWindow}, max output ${e.maxOutput} -> ${t.maxOutput}). The later registration wins; one of the two owners is wrong. (NEUT-010)`),mi.set(t.id,t)}}function gi(e,t){return e.name===t.name&&e.contextWindow===t.contextWindow&&e.maxOutput===t.maxOutput}function _i(e){return mi.get(e)}function vi(e){let t=_i(e)?.contextWindow;return t===void 0?(fi(e,`context window`,pi),pi):t}const yi=16384;function bi(e){let t=_i(e)?.maxOutput;return t===void 0?(fi(e,`max output`,yi),yi):t}function xi(e){return _i(e)?.name??e}function Si(e){if(e>=1e6){let t=e/1e6;return Number.isInteger(t)?`${t}M`:`${parseFloat(t.toFixed(1))}M`}if(e<=0)return`0K`;if(e<1e3)return`<1K`;let t=e/1e3;return Number.isInteger(t)?`${t}K`:`${parseFloat(t.toFixed(1))}K`}function Ci(e,t,n){let r=e.toolSearch??`auto`;if(r!==`auto`)return r;let i=n.filter(Ur);return i.length===0?`off`:i.length>15||oi(i)/vi(t)>=.1?`on`:`off`}function wi(e){return e.conversationId||`conv_${Date.now()}_${Math.random().toString(36).substr(2,9)}`}function Ti(e){let t=new Xr({resolveToolSearchMode:()=>{let n=e();return n.isToolVisible?.(`ToolSearch`)===!1?`off`:Ci(n,n.defaultModel.model,t.getTools())},isToolVisible:t=>e().isToolVisible?.(t)??!0});return t}var Ei=class{agentName;moduleRegistry;logger;isReady;ensureReady;constructor(e,t,n,r,i){this.agentName=e,this.moduleRegistry=t,this.logger=n,this.isReady=r,this.ensureReady=i}async registerModule(e,t){await this.ensureReady(),await this.moduleRegistry.registerModule(e,{autoInitialize:t?.autoInitialize??!0,validateDependencies:t?.validateDependencies??!0}),this.logger.info(`Module registered`,{moduleName:e.name,moduleType:e.getModuleType().type})}async unregisterModule(e){if(!this.isReady())return!1;let t=await this.moduleRegistry.unregisterModule(e);return t&&this.logger.info(`Module unregistered`,{moduleName:e}),t}getModule(e){if(this.isReady())return this.moduleRegistry.getModule(e)}getModulesByType(e){return this.isReady()?this.moduleRegistry.getModulesByType(e):[]}getModules(){return this.isReady()?this.moduleRegistry.getAllModules():[]}getModuleNames(){return this.isReady()?this.moduleRegistry.getModuleNames():[]}hasModule(e){return this.isReady()?this.moduleRegistry.hasModule(e):!1}async executeModule(e,t){await this.ensureReady();let n={agentName:this.agentName,...t.executionId&&{executionId:t.executionId},...t.sessionId&&{sessionId:t.sessionId},...t.userId&&{userId:t.userId},...t.metadata&&{metadata:t.metadata}};return await this.moduleRegistry.executeModule(e,n)}getModuleStats(e){if(this.isReady())return this.moduleRegistry.getModuleStats(e)}},Di=class{logger;isReady;getExecutionService;constructor(e,t,n){this.logger=e,this.isReady=t,this.getExecutionService=n}addPlugin(e){let t=this.getExecutionService();if(!this.isReady()||!t)throw new y(`Cannot add plugin before agent is fully initialized. Await an operation like run() first, or pass plugins via the constructor config.`,{pluginName:e.name});t.registerPlugin(e),this.logger.debug(`Plugin added`,{pluginName:e.name})}removePlugin(e){let t=this.getExecutionService();if(!t)return!1;let n=t.removePlugin(e);return n&&this.logger.debug(`Plugin removed`,{pluginName:e}),n}getPlugin(e){let t=this.getExecutionService();if(t)return t.getPlugin(e)}getPlugins(){let e=this.getExecutionService();return e?e.getPlugins():[]}getPluginNames(){let e=this.getExecutionService();return!this.isReady()||!e?[]:e.getPlugins().map(e=>e.name)}};function Oi(e){return{moduleManager:new Ei(e.getName(),e.getModuleRegistry(),e.getLogger(),e.getIsFullyInitialized,e.ensureFullyInitialized),pluginManager:new Di(e.getLogger(),e.getIsFullyInitialized,e.getExecutionService),configManager:new Yr(e.getLogger(),e.getAiProviders,e.getTools,e.getEventService,e.ensureFullyInitialized,e.getConfig,t=>e.setConfig(t),e.getConfigVersion,e.incrementConfigVersion,e.getConfigUpdatedAt,t=>e.setConfigUpdatedAt(t),(t,n)=>e.emitAgentEvent(t,n))}}const ki={ASSIGNED:`assigned`,COMPLETED:`completed`},Ai=`task`,ji={MESSAGE:`message`,INPUT:`input`},Mi=`user`;function Ni(e,t){let n=Array.isArray(e.tools)?e.tools.map(e=>{let t=e?.schema?.name;if(typeof t==`string`&&t.length>0)return t;let n=e?.name;return typeof n==`string`&&n.length>0?n:``}).filter(e=>typeof e==`string`&&e.length>0):[];t(j.CREATED,{parameters:{tools:n,systemMessage:e.systemMessage,provider:e.defaultModel.provider,model:e.defaultModel.model,temperature:e.defaultModel.temperature,maxTokens:e.defaultModel.maxTokens}})}function Pi(e,t,n,r,i){Dr(e)||e.emit(r,{timestamp:new Date,...i},{ownerType:Tt,ownerId:t,ownerPath:Ii(t,n)})}function Fi(){return new mr({enabled:!0,events:[I.MODULE_INITIALIZE_START,I.MODULE_INITIALIZE_COMPLETE,I.MODULE_INITIALIZE_ERROR,I.MODULE_EXECUTION_START,I.MODULE_EXECUTION_COMPLETE,I.MODULE_EXECUTION_ERROR,I.MODULE_DISPOSE_START,I.MODULE_DISPOSE_COMPLETE,I.MODULE_DISPOSE_ERROR]})}function Ii(e,t){return[...t?.ownerPath?.length?t.ownerPath.map(e=>({...e})):[],{type:`agent`,id:e}]}function Li(e,t){return{conversationId:e.conversationId,...t.sessionId&&{sessionId:t.sessionId},...t.userId&&{userId:t.userId},...t.driverId&&{driverId:t.driverId},...t.turnSource&&{turnSource:t.turnSource},...t.metadata&&{metadata:t.metadata},...t.signal&&{signal:t.signal},awaitProviderSettlement:t.awaitProviderSettlement,...t.onTextDelta&&{onTextDelta:t.onTextDelta},...t.onExecutionEvent&&{onExecutionEvent:t.onExecutionEvent},...t.maxExecutionRounds!==void 0&&{maxExecutionRounds:t.maxExecutionRounds},...t.maxSameToolInputs!==void 0&&{maxSameToolInputs:t.maxSameToolInputs},...t.allowToolOnlyCompletion!==void 0&&{allowToolOnlyCompletion:t.allowToolOnlyCompletion},...t.maxTokens!==void 0&&{maxTokens:t.maxTokens},...t.temperature!==void 0&&{temperature:t.temperature},...t.toolChoice!==void 0&&{toolChoice:t.toolChoice},...t.withholdHostedTools===!0&&{withholdHostedTools:!0},...t.ephemeralSystemContext!==void 0&&{ephemeralSystemContext:t.ephemeralSystemContext},...t.traceContext!==void 0&&{traceContext:t.traceContext}}}async function Ri(e,t,n={},r){try{e.emitAgentEvent(j.EXECUTION_START,{}),e.logger.debug(`Starting Robota execution`,{inputLength:t.length,conversationId:e.conversationId,sessionId:n.sessionId||`none`,userId:n.userId||`none`,hasMetadata:!!n.metadata});let i=e.getHistory(),a={...e.config,...r},o=await e.getExecutionService().execute(t,i,a,Li(e,n));if(e.logger.debug(`Robota execution completed`,{success:o.success,duration:o.duration,tokensUsed:o.tokensUsed,toolsExecuted:o.toolsExecuted,interrupted:o.interrupted}),o.interrupted)return e.emitAgentEvent(j.EXECUTION_COMPLETE,{}),o.response;if(!o.success)throw o.error??Error(`[STRICT-POLICY] Failed execution result missing error field — every success:false result must carry error`);return e.emitAgentEvent(j.EXECUTION_COMPLETE,{}),o.response}catch(t){throw e.logger.error(`Robota execution failed`,{error:t instanceof Error?t.message:String(t),conversationId:e.conversationId}),e.emitAgentEvent(j.EXECUTION_ERROR,{error:t instanceof Error?t.message:String(t)}),t}}async function*zi(e,t,n={},r){try{e.emitAgentEvent(j.EXECUTION_START,{}),e.logger.debug(`Starting Robota streaming execution`,{inputLength:t.length,conversationId:e.conversationId,sessionId:n.sessionId||`none`,userId:n.userId||`none`,hasMetadata:!!n.metadata});let i=e.getHistory(),a={...e.config,...r},o=yield*e.getExecutionService().executeStream(t,i,a,Li(e,n));if(!o.success)throw o.error??Error(`[STRICT-POLICY] Failed execution result missing error field — every success:false result must carry error`);return o.response}catch(t){throw e.logger.error(`Robota streaming execution failed`,{error:t instanceof Error?t.message:String(t),conversationId:e.conversationId}),e.emitAgentEvent(j.EXECUTION_ERROR,{error:t instanceof Error?t.message:String(t)}),t}finally{e.emitAgentEvent(j.EXECUTION_COMPLETE,{})}}function Bi(e){return{responseFormat:{type:`json_schema`,schema:e.jsonSchema,name:e.name}}}function Vi(e,t){return[`Your previous response did not match the required JSON schema.`,`Validation issues:`,...t.map(e=>`- ${e}`),``,`Respond with ONLY a JSON object (no prose, no code fences) matching this JSON schema:`,JSON.stringify(e.jsonSchema)].join(`\n`)}async function Hi(e,t,n,r){let i=(n.outputRetries??2)+1,a=Bi(r),o=t,s=[];for(let t=1;t<=i;t++){let c=Wi(r,await Ri(e,o,n,a));if(c.success)return c.value;s=c.issues,e.logger.debug(`Structured output validation failed`,{attempt:t,maxAttempts:i,issues:s}),t<i&&(o=Vi(r,s))}throw new f(`response failed schema validation after ${i} attempt(s)`,s,i)}async function*Ui(e,t,n,r){let i=(n.outputRetries??2)+1,a=Bi(r),o=t,s=[];for(let t=1;t<=i;t++){let c=Wi(r,yield*zi(e,o,n,a));if(c.success)return c.value;s=c.issues,e.logger.debug(`Structured output validation failed (stream)`,{attempt:t,maxAttempts:i,issues:s}),t<i&&(o=Vi(r,s))}throw new f(`response failed schema validation after ${i} attempt(s)`,s,i)}function Wi(e,t){let n=kn(t);if(!n.success)return{success:!1,issues:[n.issue]};let r=e.validate(n.value);return r.success?{success:!0,value:r.value}:{success:!1,issues:r.issues}}function Gi(e,t){return e.getConversationStore(t).getMessages().map(e=>({id:e.id,role:e.role,content:e.content,state:e.state,timestamp:e.timestamp,metadata:e.metadata,...e.role===`assistant`&&`toolCalls`in e?{toolCalls:e.toolCalls}:{},...e.role===`tool`&&`toolCallId`in e?{toolCallId:e.toolCallId}:{},...e.role===`tool`&&`name`in e?{name:e.name}:{}}))}function Ki(e,t){return e.getConversationStore(t).getHistory()}function qi(e,t,n){e.getConversationStore(t).addEntry(n)}function Ji(e,t){e.getConversationStore(t).clear()}function Yi(e,t,n,r,i){let a=e.getConversationStore(t);n===`tool`&&i?.toolCallId?a.addToolMessageWithId(r,i.toolCallId,i.name??`unknown`):n===`assistant`?a.addAssistantMessage(r,[]):n===`system`?a.addSystemMessage(r):a.addUserMessage(r)}function Xi(e,t,n){e.getConversationStore(t).addMessage(n)}var Zi=class extends qe{providers=new Map;currentProvider;currentModel;constructor(){super({readyOnConstruction:!0})}async doInitialize(){A.debug(`AIProviders initialized`)}async doDispose(){for(let[e,t]of this.providers)try{t.close&&await t.close(),A.debug(`Closed AI provider: ${e}`)}catch(t){A.warn(`Failed to close AI provider ${e}`,{error:t instanceof Error?t.message:String(t)})}this.providers.clear(),this.currentProvider=void 0,this.currentModel=void 0,A.debug(`AIProviders disposed`)}addProvider(e,t){this.ensureInitialized();let n=R.validateProviderName(e);if(!n.isValid)throw new l(`Invalid provider name: ${n.errors.join(`, `)}`);if(!t||typeof t!=`object`||Array.isArray(t))throw new l(`Provider must be a valid object instance`);if(!t.name||typeof t.name!=`string`)throw new l(`Provider must have a valid name`);if(typeof t.chat!=`function`)throw new l(`Provider must have a chat method`);this.providers.has(e)&&A.warn(`Provider \"${e}\" is already registered, overriding`,{providerName:e,existingProvider:this.providers.get(e)?.name}),this.providers.set(e,t),A.debug(`AI provider \"${e}\" registered successfully`,{providerName:e,version:t.version,supportsStreaming:typeof t.chatStream==`function`})}removeProvider(e){if(this.ensureInitialized(),!this.providers.has(e)){A.warn(`Attempted to remove non-existent provider \"${e}\"`);return}let t=this.providers.get(e);t?.close&&t.close().catch(t=>{A.warn(`Failed to close provider ${e}`,{error:t.message})}),this.providers.delete(e),this.currentProvider===e&&(this.currentProvider=void 0,this.currentModel=void 0,A.debug(`Cleared current provider selection after removing \"${e}\"`)),A.debug(`AI provider \"${e}\" removed successfully`)}getProvider(e){return this.ensureInitialized(),this.providers.get(e)}getProviders(){return this.ensureInitialized(),Object.fromEntries(this.providers)}setCurrentProvider(e,t){if(this.ensureInitialized(),!this.providers.get(e))throw new y(`Provider \"${e}\" is not registered`);this.currentProvider=e,this.currentModel=t,A.debug(`Current AI provider set to \"${e}\" with model \"${t}\"`)}getCurrentProvider(){if(this.ensureInitialized(),!(!this.currentProvider||!this.currentModel))return{provider:this.currentProvider,model:this.currentModel}}isConfigured(){return this.ensureInitialized(),!!(this.currentProvider&&this.currentModel&&this.providers.has(this.currentProvider))}getCurrentProviderInstance(){if(!(!this.isConfigured()||!this.currentProvider))return this.providers.get(this.currentProvider)}getProviderNames(){return this.ensureInitialized(),Array.from(this.providers.keys())}getProvidersByPattern(e){this.ensureInitialized();let t=typeof e==`string`?new RegExp(e):e,n={};for(let[e,r]of this.providers)t.test(e)&&(n[e]=r);return n}supportsStreaming(e){this.ensureInitialized();let t=e||this.currentProvider;if(!t)return!1;let n=this.providers.get(t);return!!(n&&typeof n.chatStream==`function`)}getProviderCount(){return this.ensureInitialized(),this.providers.size}},Qi=class{build(e,t,n,r){let i=e.map(e=>({role:e.role,content:e.content})),a=JSON.stringify({messages:i,model:t,provider:n,temperature:r?.temperature,maxTokens:r?.maxTokens,effortCacheIdentity:r?.effortCacheIdentity??null});return{hash:this.sha256(a),model:t,provider:n}}computeIntegrityHash(e){return this.sha256(e)}sha256(e){let t=new de(`SHA-256`,`TEXT`);return t.update(e),t.getHash(`HEX`)}},$i=class{cache=new Map;accessOrder=[];maxEntries;ttlMs;keyBuilder=new Qi;hits=0;misses=0;constructor(e){this.maxEntries=e.maxEntries,this.ttlMs=e.ttlMs}get(e){let t=this.cache.get(e);if(!t){this.misses++;return}if(Date.now()-t.timestamp>this.ttlMs){this.cache.delete(e),this.removeFromAccessOrder(e),this.misses++;return}let n=this.keyBuilder.computeIntegrityHash(t.response);if(t.integrityHash!==n)throw this.cache.delete(e),this.removeFromAccessOrder(e),new C(`Integrity check failed for cache entry ${e}`,{hash:e,expected:n,actual:t.integrityHash});return this.touchAccessOrder(e),this.hits++,t}set(e){let t=e.key.hash;!this.cache.has(t)&&this.cache.size>=this.maxEntries&&this.evictLRU(),this.cache.set(t,e),this.touchAccessOrder(t)}delete(e){return this.cache.has(e)?(this.cache.delete(e),this.removeFromAccessOrder(e),!0):!1}clear(){this.cache.clear(),this.accessOrder.length=0,this.hits=0,this.misses=0}getStats(){let e=this.hits+this.misses;return{hits:this.hits,misses:this.misses,entries:this.cache.size,hitRate:e===0?0:this.hits/e}}touchAccessOrder(e){this.removeFromAccessOrder(e),this.accessOrder.push(e)}removeFromAccessOrder(e){let t=this.accessOrder.indexOf(e);t!==-1&&this.accessOrder.splice(t,1)}evictLRU(){let e=this.accessOrder.shift();e&&this.cache.delete(e)}},ea=class{storage;keyBuilder;constructor(e,t){this.storage=e,this.keyBuilder=t}lookup(e,t,n,r){let i=this.keyBuilder.build(e,t,n,r),a=this.storage.get(i.hash);return a?a.response:void 0}store(e,t,n,r,i){let a=this.keyBuilder.build(e,t,n,i);this.storage.set({key:a,response:r,timestamp:Date.now(),integrityHash:this.keyBuilder.computeIntegrityHash(r)})}getStats(){return this.storage.getStats()}};function ta(e){return`executionId`in e||`toolName`in e}function na(e){let t=0,n=!1;for(let r=0;r<e.length;r++){let i=e[r]===` `||e[r]===`\t`||e[r]===`\n`||e[r]===`\\r`;!i&&!n?(t++,n=!0):i&&(n=!1)}return t}function ra(e,t,n,r,i,a,o){e.emitExecution(M.START,{parameters:{input:t,agentConfiguration:i.aiProviderInfo,availableTools:i.toolsInfo,toolCount:i.toolsInfo.length,hasTools:i.toolsInfo.length>0,systemMessage:n.systemMessage,provider:n.defaultModel.provider,model:n.defaultModel.model,temperature:n.defaultModel.temperature,maxTokens:n.defaultModel.maxTokens},metadata:{method:`execute`,inputLength:t.length,messageCount:r.length,aiProvider:i.aiProviderInfo.providerName,model:i.aiProviderInfo.model,toolsAvailable:i.toolsInfo.map(e=>e.name),agentCapabilities:{canUseTools:i.toolsInfo.length>0,supportedActions:i.toolsInfo.map(e=>e.name)}}},a,o)}function ia(e,t,n,r){e.emitExecution(M.USER_MESSAGE,{parameters:{input:t,userPrompt:t,userMessageContent:t,messageLength:t.length,wordCount:na(t),characterCount:t.length},metadata:{messageRole:`user`,inputLength:t.length,messageType:`user_message`,hasQuestions:t.includes(`?`),containsUrgency:/urgent|asap|critical|emergency/i.test(t),estimatedComplexity:t.length>200?`high`:t.length>50?`medium`:`low`}},n,r)}function aa(e,t,n,r,i,a,o,s){if(typeof n.content!=`string`||n.content.length===0)throw Error(`[EXECUTION] assistant response must have content or tool calls`);if(!(n.timestamp instanceof Date))throw Error(`[EXECUTION] assistant response timestamp is required`);let c=n.content,l=n.timestamp,u=new Date().getTime()-l.getTime();e.emitWithContext(M.ASSISTANT_MESSAGE_COMPLETE,{parameters:{assistantMessage:c,responseLength:c.length,wordCount:na(c),responseTime:u,contentPreview:c.length>200?c.substring(0,200)+`...`:c},result:{success:!0,data:c.substring(0,100)+`...`,fullResponse:c,responseMetrics:{length:c.length,estimatedReadTime:Math.ceil(na(c)/200),hasCodeBlocks:/```/.test(c),hasLinks:/https?:\\/\\//.test(c),complexity:c.length>1e3?`high`:c.length>300?`medium`:`low`}},metadata:{executionId:r,round:i,completed:!0,reason:`no_tool_calls`,responseCharacteristics:{hasQuestions:c.includes(`?`),isError:/error|fail|wrong/i.test(c),isComplete:/complete|done|finish/i.test(c),containsNumbers:/\\d/.test(c)}}},()=>e.buildResponseOwnerContext(a,r,o,s),e=>{if(!e.ownerType||!e.ownerId)throw Error(`[EXECUTION] Missing owner context for response event`);return q(t,{ownerType:e.ownerType,ownerId:e.ownerId,ownerPath:e.ownerPath})})}function oa(e,t,n,r,i,a,o,s,c,l){let u=n.map(e=>{if(!e.id||e.id.length===0)throw Error(`[EXECUTION] Tool call missing id for tool results ready payload`);return e.id});if(u.length===0)throw Error(`[EXECUTION] Tool results ready requires toolCallIds`);let d=()=>e.buildThinkingOwnerContext(a,o,c,l),f=e=>{if(!e.ownerType||!e.ownerId)throw Error(`[EXECUTION] Missing owner context for tool results event`);return q(t,{ownerType:e.ownerType,ownerId:e.ownerId,ownerPath:e.ownerPath})};e.emitWithContext(M.TOOL_RESULTS_READY,{parameters:{toolCallIds:u,round:s},metadata:{round:s}},d,f),e.emitWithContext(M.TOOL_RESULTS_TO_LLM,{parameters:{toolsExecuted:i.length,round:s},metadata:{toolsExecuted:r.results.map(e=>{if(!e.toolName||e.toolName.length===0)throw Error(`[EXECUTION] Tool result missing toolName`);return e.toolName}),round:s}},d,f)}function sa(e){if(!e.executionId)throw new l(`[STRICT-POLICY][EMITTER-CONTRACT] Tool execution request missing executionId`);if(!e.ownerType)throw new l(`[STRICT-POLICY][EMITTER-CONTRACT] Tool execution request missing ownerType: executionId=${e.executionId}`);if(!e.ownerId)throw new l(`[STRICT-POLICY][EMITTER-CONTRACT] Tool execution request missing ownerId: executionId=${e.executionId}`);return{executionId:e.executionId,ownerType:e.ownerType,ownerId:e.ownerId}}function ca(e,t){let n=sa(e),r=K(),i=e.traceContext?g(e.traceContext,r):void 0,a=S(`shell`,e.traceContext,T(r)),o=e.traceContext?S(`hooks`,e.traceContext,e.traceContext.parentSpanId):void 0;return{toolName:e.toolName,parameters:e.parameters,...t?{signal:t}:{},executionId:n.executionId,ownerType:n.ownerType,ownerId:n.ownerId,ownerPath:e.ownerPath,metadata:e.metadata,eventService:e.eventService,baseEventService:e.baseEventService,...e.ask?{ask:e.ask}:{},...e.deferredTools?{deferredTools:e.deferredTools}:{},toolBodyId:r,...i?{outboundTraceContext:i}:{},...a?{shellTraceEnv:a}:{},...o?{hookTraceEnv:o}:{}}}function la(e){return{toolName:e.toolName,executionId:e.executionId??``,success:!1,error:`Execution interrupted by user`,result:null}}function ua(e,t){return{toolName:e.toolName,result:null,success:!1,error:t.message,executionId:e.executionId}}function da(e){let t=e.argumentDecodeError;if(e.eventService&&t!==void 0){let n={timestamp:new Date,toolName:e.toolName,error:t};e.eventService.emit(P.CALL_ERROR,n)}return{toolName:e.toolName,result:null,success:!1,error:t,executionId:e.executionId,metadata:{errorCode:Ot,requestedTool:e.toolName}}}function fa(e){return Error(`Tool execution failed: toolName=${String(e.toolName)} executionId=${String(e.executionId)} error=${String(e.error||`Unknown error`)}`)}function pa(e){return e!==void 0}function ma(e){return e!==void 0}function ha(e,t){if(e===0)return 0;if(t===void 0||!Number.isFinite(t))return e;let n=Math.floor(t);return n<1?1:Math.min(n,e)}async function ga(e,t,n,r){let i=e.requests[r];if(i)try{let a=e.signal?.aborted?la(i):i.argumentDecodeError===void 0?await t.executeTool(i.toolName,i.parameters,ca(i,e.signal)):da(i);n.resultsByIndex[r]=a,a.success||(n.errorsByIndex[r]=fa(a))}catch(e){let t=e instanceof Error?e:Error(String(e));n.errorsByIndex[r]=t,n.resultsByIndex[r]=ua(i,t)}}async function _a(e,t,n){for(;n.nextRequestIndex<e.requests.length;){let r=n.nextRequestIndex;n.nextRequestIndex+=1,await ga(e,t,n,r)}}async function va(e,t){let n={resultsByIndex:Array(e.requests.length),errorsByIndex:Array(e.requests.length),nextRequestIndex:0},r=ha(e.requests.length,e.maxConcurrency),i=Array.from({length:r},()=>_a(e,t,n));await Promise.all(i);let a=n.resultsByIndex.filter(pa),o=n.errorsByIndex.filter(ma);if(o.length>0&&!e.continueOnError)throw o[0];return{results:a,errors:o}}async function ya(e,t){let n=[],r=[];for(let i of e.requests)try{let a=e.signal?.aborted?la(i):i.argumentDecodeError===void 0?await t.executeTool(i.toolName,i.parameters,ca(i,e.signal)):da(i);if(n.push(a),a.success||r.push(fa(a)),!a.success&&!e.continueOnError)break}catch(t){let n=t instanceof Error?t:Error(String(t));if(r.push(n),!e.continueOnError)break}return{results:n,errors:r}}async function ba(e,t,n){return n.debug(`Executing ${e.requests.length} tools in ${e.mode} mode`),e.mode===`parallel`?va(e,t):ya(e,t)}var xa=class{tools;logger;askHandler;deferredToolCatalog;constructor(e,t=dt){this.tools=e,this.logger=t,this.deferredToolCatalog={listDeferredTools:()=>this.tools.listDeferredTools(),loadDeferredTools:e=>this.tools.loadDeferredTools(e)}}setAskHandler(e){this.askHandler=e}async executeTool(e,t,n,r=`offered`){this.logger.debug(`Executing tool: ${e}`);try{if(!n?.executionId)throw new l(`ToolExecutionService requires executionId (toolCallId) in ToolExecutionContext`);n.signal?.throwIfAborted();let i=r===`offered`&&this.tools.getToolSchema(e)?.deferLoading===!0&&!this.tools.isToolOffered(e);if(!this.tools.hasTool(e)||i){let t=(r===`registered`?this.tools.getTools():this.tools.getOfferedTools()).map(e=>e.name).sort(),a=Ca(e,t,i),o=n.eventService;if(o){let t={timestamp:new Date,toolName:e,error:a};o.emit(P.CALL_ERROR,t)}return this.logger.warn(`Tool call skipped because requested tool is not registered`,{toolName:e,availableTools:t}),{success:!1,error:a,toolName:e,executionId:n.executionId,metadata:{errorCode:Dt,requestedTool:e,availableTools:t}}}let a=n.eventService;if(a){let n={timestamp:new Date,toolName:e,parameters:t};a.emit(P.CALL_START,n)}let{toolName:o,parameters:s,...c}=n,u={...c,deferredTools:this.deferredToolCatalog,toolName:e,parameters:t,executionId:n.executionId},d=await this.tools.executeTool(e,t,u);if(this.logger.debug(`Tool execution completed: ${e}`),a){let t={timestamp:new Date,toolName:e,result:d};a.emit(P.CALL_COMPLETE,t),a.emit(P.CALL_RESPONSE_READY,t)}return{success:!0,result:d,toolName:e,executionId:u.executionId}}catch(t){this.logger.error(`Tool execution failed: ${e}`);let r=t instanceof Error?t:Error(String(t)),i=n?.eventService;if(i&&n?.executionId){let t={timestamp:new Date,toolName:e,error:r.message};i.emit(P.CALL_ERROR,t)}return{success:!1,error:r.message,toolName:e,executionId:n?.executionId}}}createExecutionRequestsWithContext(e,t){return e.map(e=>{let n=Sa(e.id,e.function.name,e.function.arguments);return{toolName:e.function.name,parameters:n.ok?n.parameters:{},executionId:e.id,ownerType:`tool`,ownerId:e.id,ownerPath:[...t.ownerPathBase,{type:`tool`,id:e.id}],metadata:t.metadataFactory?t.metadataFactory(e):void 0,...this.askHandler?{ask:this.askHandler}:{},deferredTools:this.deferredToolCatalog,...n.ok?{}:{argumentDecodeError:n.error}}})}async executeTools(e){return ba(e,this,this.logger)}};function Sa(e,t,n){let r;try{r=JSON.parse(n)}catch{return{ok:!1,error:`Failed to parse arguments for tool \"${t}\" (call ${e}): invalid JSON`}}return typeof r!=`object`||!r||Array.isArray(r)?{ok:!1,error:`Failed to parse arguments for tool \"${t}\" (call ${e}): expected a JSON object at the root, got ${r===null?`null`:Array.isArray(r)?`an array`:`a ${typeof r}`}`}:{ok:!0,parameters:r}}function Ca(e,t,n){let r=t.length>0?t.join(`, `):`no registered tools are available`;return n?`Tool \"${e}\" is registered but deferred and not yet loaded, so the tool call was not executed. Call ${Ne} with names: [\"${e}\"] to load it, then call it again. Available tools: ${r}.`:`Tool \"${e}\" is not registered, so the tool call was not executed. Available tools: ${r}.`}function wa(e){return e?.ownerPath?.length?e.ownerPath.map(e=>({...e})):[]}function Ta(e,t,n,r){if(!n||n.length===0)throw Error(`[EXECUTION] Missing rootId for execution owner context`);if(!r||r.length===0)throw Error(`[EXECUTION] Missing executionId for execution owner context`);let i=[...e.length?e:t];return n&&!i.some(e=>e.type===`agent`&&e.id===n)&&i.push({type:`agent`,id:n}),i.push({type:`execution`,id:r}),{ownerType:N,ownerId:r,ownerPath:i}}function Ea(e,t,n,r,i,a){if(!i||i.length===0)throw Error(`[EXECUTION] Missing thinkingNodeId for thinking owner context`);let o=[...Ta(e,t,n,r).ownerPath];return a&&(o.push({type:`thinking`,id:a}),o.push({type:`tool_result`,id:`tool_result_${a}`})),o.push({type:`thinking`,id:i}),{ownerType:N,ownerId:r,ownerPath:o}}function Da(e,t,n,r,i){if(!i||i.length===0)throw Error(`[EXECUTION] Missing toolCallId for tool owner context`);return{ownerType:Et,ownerId:i,ownerPath:[...Ta(e,t,n,r).ownerPath,{type:`tool`,id:i}]}}function Oa(e,t,n,r,i,a){let o=Ea(e,t,n,r,i,a).ownerPath,s=`response_${i}`;return{ownerType:N,ownerId:r,ownerPath:[...o,{type:`response`,id:s}]}}function ka(e,t,n,r,i={}){if(t.onExecutionEvent===void 0)return;let a=e.getMessages(),o=a.at(-1);o!==void 0&&t.onExecutionEvent(`history_mutation`,{executionId:n,conversationId:r,...i,mutation:`append_message`,index:a.length-1,message:o})}var Aa=class{baseEventService;logger;ownerPathBase;toolEventServices;agentOwnerPathBase;constructor(e,t,n){this.baseEventService=e,this.logger=t,this.ownerPathBase=wa(n),this.toolEventServices=new Map,this.agentOwnerPathBase=[]}prepareOwnerPathBases(e){this.toolEventServices.clear();let t=[...this.ownerPathBase,{type:`agent`,id:e}];this.agentOwnerPathBase=t}resetOwnerPathBases(){this.toolEventServices.clear(),this.agentOwnerPathBase=[]}ensureToolEventService(e,t){if(Dr(this.baseEventService))return this.baseEventService;if(!e)throw Error(`[EVENT-SERVICE] Missing ownerId for tool event context`);if(!t||t.length===0)throw Error(`[EVENT-SERVICE] Missing ownerPath for tool event context`);if(this.toolEventServices.has(e))return this.toolEventServices.get(e);let n=q(this.baseEventService,{ownerType:Et,ownerId:e,ownerPath:t.map(e=>({...e}))});return this.toolEventServices.set(e,n),n}clearToolEventServices(){this.toolEventServices.clear()}getBaseEventService(){return this.baseEventService}buildExecutionOwnerContext(e,t){return Ta(this.agentOwnerPathBase,this.ownerPathBase,e,t)}buildThinkingOwnerContext(e,t,n,r){return Ea(this.agentOwnerPathBase,this.ownerPathBase,e,t,n,r)}buildToolOwnerContext(e,t,n){return Da(this.agentOwnerPathBase,this.ownerPathBase,e,t,n)}buildResponseOwnerContext(e,t,n,r){return Oa(this.agentOwnerPathBase,this.ownerPathBase,e,t,n,r)}emitExecution(e,t,n,r){this.emitWithContext(e,t,()=>this.buildExecutionOwnerContext(n,r),e=>{if(!e.ownerType||!e.ownerId)throw Error(`[EXECUTION] Missing owner context for execution event`);return q(this.baseEventService,{ownerType:e.ownerType,ownerId:e.ownerId,ownerPath:e.ownerPath})})}emitTool(e,t,n,r,i){this.emitWithContext(e,t,()=>this.buildToolOwnerContext(n,r,i),e=>this.ensureToolEventService(e.ownerId,e.ownerPath))}emitWithContext(e,t,n,r){if(Dr(this.baseEventService))return;let i=n(),a=r(i),o={timestamp:new Date,...t};a.emit(e,o,i)}emitExecutionStartEvent(e,t,n,r,i,a){ra(this,e,t,n,r,i,a)}emitUserMessageEvent(e,t,n){ia(this,e,t,n)}emitAssistantMessageComplete(e,t,n,r,i,a){aa(this,this.baseEventService,e,t,n,r,i,a)}emitToolResultsEvents(e,t,n,r,i,a,o,s){oa(this,this.baseEventService,e,t,n,r,i,a,o,s)}};function ja(e,t){return e instanceof Error?e:Error(e===void 0?t:String(e))}function Ma(e,t){if(t===void 0)return[];for(let n=e.length-1;n>=0;n--)if(e[n]?.id===t)return e.slice(n);return[]}function Na(e){return e.role===`assistant`&&typeof e.content==`string`&&e.content.length>0}function Pa(e,t,n,r,i,a){let o=e.getMessages(),s=Ma(o,i.turnMessageId),c=s.filter(Na).pop(),l=c?.metadata?.providerError===!0,u=s[s.length-1]?.role===`tool`,d=i.allowToolOnlyCompletion===!0&&u&&!c,f=c?c.content:d||i.interrupted===!0?``:`No response received. The context window may be full.`,p=i.interrupted!==!0&&(l||!c&&!d),m=Date.now()-n.getTime();return{response:f,messages:o.map(e=>{if(typeof e.content!=`string`&&(e.role!==`assistant`||e.content!==null))throw Error(`[EXECUTION] Message content is required`);return{role:e.role,content:e.content,timestamp:e.timestamp,metadata:e.metadata,...e.role===`assistant`&&`toolCalls`in e?{toolCalls:e.toolCalls}:{},...e.role===`tool`&&`toolCallId`in e?{toolCallId:e.toolCallId}:{}}}),executionId:t,duration:m,tokensUsed:s.filter(e=>e.metadata?.usage).reduce((e,t)=>{let n=t.metadata?.usage;if(n&&typeof n==`object`&&`totalTokens`in n){let t=Number(n.totalTokens);if(Number.isNaN(t))throw Error(`[EXECUTION] totalTokens must be a number`);return e+t}return e},0),toolsExecuted:r,success:!p,...p&&l?{error:ja(a,f)}:{}}}function Fa(e,t,n){e.tools!==void 0&&(Oe(n.provider.capabilityTable?.(),t,`tools`,!0)||(delete e.tools,delete e.toolChoice))}async function Ia(e,t,n,r,i=!1){let a=La(r),o=n.signal;if(a===void 0&&o===void 0)return e(t,n);if(o?.aborted)throw It();let s=new AbortController,c,l=!1,u,d,f=()=>{c!==void 0&&(clearTimeout(c),c=void 0)},p=e=>{l||(l=!0,d?.(e),s.abort(e))},m=()=>{a===void 0||l||(f(),c=setTimeout(()=>{p(Error(`Provider call idle timeout after ${a}ms`))},a))},h=()=>{p(It())};o?.addEventListener(`abort`,h,{once:!0});let g=n.onTextDelta,_={...n,signal:s.signal,...g===void 0?{}:{onTextDelta:e=>{m(),g(e)}}};m();try{let n=new Promise((e,t)=>{d=t});return u=(async()=>e(t,_))(),await Promise.race([u,n])}finally{l=!0,f(),o?.removeEventListener(`abort`,h),i&&u&&await u.then(()=>{},()=>{})}}function La(e){if(!(e===void 0||!Number.isFinite(e)||e<=0))return e}function Ra(e){let t={};for(let n of[`executionId`,`sessionId`,`userId`]){let r=e.executionContext?.[n];typeof r==`string`&&r.length>0&&(t[n]=r)}return e.messages&&(t.messages=e.messages),t}const za={beforeExecution:async(e,t)=>{e.beforeExecution&&await e.beforeExecution(Ra(t))},afterExecution:async(e,t)=>{e.afterExecution&&t.executionResult&&await e.afterExecution(Ra(t),t.executionResult)},afterConversation:async(e,t)=>{e.afterConversation&&t.executionResult&&await e.afterConversation(Ra(t),t.executionResult)},afterToolExecution:async(e,t)=>{e.afterToolExecution&&t.executionResult?.toolCalls?.length&&await e.afterToolExecution(Ra(t),t.executionResult)},onMessageAdded:async(e,t)=>{e.onMessageAdded&&t.message&&await e.onMessageAdded(t.message)},beforeRun:async(e,t)=>{e.beforeRun&&t.input&&await e.beforeRun(t.input,t.metadata)},afterRun:async(e,t)=>{e.afterRun&&t.input&&t.response&&await e.afterRun(t.input,t.response,t.metadata)},beforeProviderCall:async(e,t)=>{e.beforeProviderCall&&t.messages&&await e.beforeProviderCall(t.messages)},afterProviderCall:async(e,t)=>{e.afterProviderCall&&t.messages&&t.responseMessage&&await e.afterProviderCall(t.messages,t.responseMessage)},onError:async(e,t)=>{if(e.onError&&t.error){let n={action:`${N}.${M.ERROR}`,metadata:{}},r=t.executionContext?.executionId;typeof r==`string`&&r.length>0&&(n.executionId=r);let i=t.executionContext?.sessionId;typeof i==`string`&&i.length>0&&(n.sessionId=i);let a=t.executionContext?.userId;typeof a==`string`&&a.length>0&&(n.userId=a),await e.onError(t.error,n)}}};async function J(e,t,n,r){let i=za[t];if(i)for(let a of e)try{await i(a,n)}catch(e){r.warn(`Plugin hook failed`,{pluginName:a.name,hookName:t,error:e instanceof Error?e.message:String(e)})}}function Ba(e){if(e?.type){if(e.type===`json_schema`){if(!e.schema)throw Error(`responseFormat.schema is required when type is 'json_schema'.`);return{type:`json_schema`,schema:e.schema,...e.name&&{name:e.name}}}return{type:e.type}}}function Va(e,t){return e===void 0||t<=1?e:e===`required`||typeof e==`object`?`auto`:e}function Ha(e,t){if(e===void 0||e===`auto`||e===`none`)return;let n=(t??[]).map(e=>e.name);if(e===`required`){if(n.length===0)throw Error(`toolChoice 'required' needs at least one tool, but the run has none.`);return}if(!n.includes(e.tool))throw Error(`toolChoice requests tool \"${e.tool}\" which is not available for this run. Available tools: ${n.length>0?n.join(`, `):`(none)`}`)}function Ua(e,t,n){let r=e.getCurrentProvider(),i=r?e.getProvider(r.provider):null;if(!r||!r.provider||!i)throw Error(`[EXECUTION] Provider is required`);let a=t.getTools();return{provider:i,currentInfo:r,aiProviderInfo:{providerName:r.provider,model:n.defaultModel.model,temperature:n.defaultModel.temperature,maxTokens:n.defaultModel.maxTokens},toolsInfo:a.map(e=>{if(!e.description||e.description.length===0)throw Error(`[EXECUTION] Tool \"${e.name}\" is missing description`);return{name:e.name,description:e.description,parameters:Object.keys(e.parameters.properties??{})}}),readAvailableTools:()=>t.getOfferedTools(),deferredTools:t}}function Wa(e){if(!e.currentInfo)throw Error(`No AI provider configured`);if(!e.provider)throw Error(`AI provider '${e.currentInfo.provider}' not found`);if(typeof e.provider.chat!=`function`)throw Error(`Provider must have chat method to support execution`)}function Ga(e,t,n,r,i){let a=e.getConversationStore(t);if(!a.getMessages().some(e=>e.role!==`system`)&&n.length>0){for(let e of n)if(e.role===`user`)a.addUserMessage(e.content,e.metadata,e.parts);else if(e.role===`assistant`)a.addAssistantMessage(e.content,e.toolCalls,e.metadata,e.parts);else if(e.role===`tool`){let t=e.metadata?.toolName;if(typeof t!=`string`||t.length===0)throw Error(`[EXECUTION] Tool message missing toolName metadata`);a.addToolMessageWithId(e.content,e.toolCallId,t,e.metadata,e.parts)}}let o=a.getMessages().some(e=>e.role===`system`);return r.systemMessage&&!o&&a.setSystemPrompt(r.systemMessage,{executionId:i}),a}async function Ka(e,t,n,r,i,a,o,s){let c=Date.now()-n.getTime();await J(a,`onError`,{error:e instanceof Error?e:Error(String(e)),executionContext:Xa(t)},o),o.error(`Execution pipeline failed`,{executionId:i,conversationId:r,duration:c,error:e instanceof Error?e.message:String(e)}),s.emitExecution(M.ERROR,{error:e instanceof Error?e.message:String(e),metadata:{method:`execute`,success:!1,duration:c}},r,i)}function qa(){return`exec_${Date.now()}_${Math.random().toString(36).substr(2,9)}`}function Ja(e,t){if(!e?.conversationId||e.conversationId.length===0)throw Error(`[EXECUTION] conversationId is required for ${t}`);return e.conversationId}function Ya(e,t,n,r,i,a){return{messages:e,config:t,startTime:n,executionId:r,conversationId:i,...a?.sessionId&&{sessionId:a.sessionId},...a?.userId&&{userId:a.userId},...a?.metadata&&{metadata:a.metadata},...a?.signal&&{signal:a.signal},awaitProviderSettlement:a?.awaitProviderSettlement,...a?.onTextDelta&&{onTextDelta:a.onTextDelta},...a?.onExecutionEvent&&{onExecutionEvent:a.onExecutionEvent},...a?.maxExecutionRounds!==void 0&&{maxExecutionRounds:a.maxExecutionRounds},...a?.maxSameToolInputs!==void 0&&{maxSameToolInputs:a.maxSameToolInputs},...a?.allowToolOnlyCompletion!==void 0&&{allowToolOnlyCompletion:a.allowToolOnlyCompletion},...a?.maxTokens!==void 0&&{maxTokens:a.maxTokens},...a?.temperature!==void 0&&{temperature:a.temperature},...a?.toolChoice!==void 0&&{toolChoice:a.toolChoice},...a?.withholdHostedTools===!0&&{withholdHostedTools:!0},...a?.ephemeralSystemContext!==void 0&&{ephemeralSystemContext:a.ephemeralSystemContext},...a?.traceContext!==void 0&&{traceContext:a.traceContext}}}function Xa(e){let t={conversationId:Ja(e,`plugin-context`),executionId:e.executionId,startTime:e.startTime.toISOString(),messageCount:e.messages.length};return e.sessionId&&(t.sessionId=e.sessionId),e.userId&&(t.userId=e.userId),t}function Za(e){return[`Respond with ONLY a JSON object (no prose, no code fences) matching this JSON schema:`,JSON.stringify(e)].join(`\n`)}function Qa(e,t,n,r){let i=e.responseFormat;if(i?.type!==`json_schema`)return{messages:t,outcome:void 0};let a=jn({table:r.provider.capabilityTable?.(),model:n,endpointIsVendorDefault:r.provider.endpointIsVendorDefault?.()});if(a.mechanism===`response_schema`)return{messages:t,outcome:{capability:a,sent:`json_schema`,schemaInPrompt:!1}};let o={role:`system`,content:Za(i.schema),id:K(),timestamp:new Date,state:`complete`},s=[...t,o];return a.mechanism===`json_object`?(e.responseFormat={type:`json_object`},{messages:s,outcome:{capability:a,sent:`json_object`,schemaInPrompt:!0}}):(delete e.responseFormat,{messages:s,outcome:{capability:a,sent:`omitted`,schemaInPrompt:!0}})}function $a(e,t,n){let r=e.provider.resolveModelRoute?.(t,n);return r===void 0||r.provider===e.currentInfo.provider&&r.model===t?{}:{current:r}}function Y(e,t){return e.current?.provider??t.currentInfo.provider}function X(e,t){return e.current?.model??t}function eo(e,t){e.current={provider:t.to.provider,model:t.to.model}}function to(e,t,n,r){if(e===void 0||e.allowedOrigins.length===0)return;let i=!1;try{i=t.canPropagateTraceContext?.()===!0}catch{i=!1}if(!i){try{e.onPropagationUnavailable?.(n)}catch{}return}return x(e,r)}function no(e,t){return t===void 0?e:{...e,outboundTraceContext:t}}function ro(e,t){let n=Array.isArray(t.lastTrackedAssistantMessage?.toolCalls)&&t.lastTrackedAssistantMessage.toolCalls.length>0;return{thinkingNodeId:`thinking_${e}_round${t.runningAssistantCount+1}`,previousThinkingNodeId:n?`thinking_${e}_round${t.runningAssistantCount}`:void 0}}function io(e,t){e!==void 0&&typeof e==`object`&&t.listDeferredTools().some(t=>t.name===e.tool)&&t.loadDeferredTools([e.tool])}function ao(e,t,n,r){let i=Ba(t.responseFormat),a=(r?.toolChoice??t.defaultModel?.toolChoice)===`none`?[]:n.readAvailableTools();return{model:e,effort:t.defaultModel?.effort??`auto`,...t.defaultModel?.maxTokens!==void 0&&{maxTokens:t.defaultModel.maxTokens},...t.defaultModel?.temperature!==void 0&&{temperature:t.defaultModel.temperature},...t.defaultModel?.toolChoice!==void 0&&{toolChoice:t.defaultModel.toolChoice},...a.length>0&&{tools:a},...i?{responseFormat:i}:{},...r}}async function oo(e,t,n,r,i,a,o,s,c,l={}){if(!t.defaultModel?.model)throw Error(`Model is required in defaultModel configuration. Please specify a model.`);if(typeof t.defaultModel.model!=`string`||t.defaultModel.model.trim()===``)throw Error(`Model must be a non-empty string in defaultModel configuration.`);let u=t.defaultModel.model;io(i?.toolChoice??t.defaultModel.toolChoice,n.deferredTools);let d=ao(u,t,n,i);Ha(d.toolChoice,d.tools),Fa(d,u,n);let{messages:f,outcome:p}=Qa(d,e,u,n);a?.({messages:f,options:d,...p!==void 0&&{structuredOutput:p}});let m=n.provider.chat.bind(n.provider),h=(e,t)=>(s?.(`invoked`,t.model??u),m(e,no(t,c?.()))),g=d.effort??`auto`;if(r){let e=r.lookup(f,X(l,t.defaultModel.model),l.current?.provider??t.defaultModel.provider,{temperature:t.defaultModel.temperature,maxTokens:t.defaultModel.maxTokens,effortCacheIdentity:g});if(e)return s?.(`cache-hit`,d.model??u),{role:`assistant`,content:e,timestamp:new Date,id:K(),state:`complete`};let n=await Ia(h,f,d,t.timeout,o);return typeof n.content==`string`&&r.store(f,X(l,t.defaultModel.model),l.current?.provider??t.defaultModel.provider,n.content,{temperature:t.defaultModel.temperature,maxTokens:t.defaultModel.maxTokens,effortCacheIdentity:g}),n}return Ia(h,f,d,t.timeout,o)}function so(e,t,n,r,i){let a=e.role===`assistant`?e.toolCalls:void 0,o=Array.isArray(a)&&a.length>0;if(typeof e.content!=`string`&&!o)throw Error(`[EXECUTION] Provider response must have content or tool calls`);if(a&&!Array.isArray(a))throw Error(`[EXECUTION] assistant toolCalls must be an array`);let s=e.content??``;if(i.debug(`[ROUND-${r}] Provider response completed`,{executionId:t,conversationId:n,round:r,responseLength:s.length,hasToolCalls:Array.isArray(a)&&a.length>0,toolCallsCount:Array.isArray(a)?a.length:0}),e.role!==`assistant`)throw Error(`Unexpected response role: ${e.role}`);let c=e,l=c.toolCalls??[];if(!Array.isArray(l))throw Error(`[EXECUTION] assistantResponse.toolCalls must be an array`);return{assistantResponse:c,assistantToolCalls:l}}function co(e){let t=e?.metadata?.usageProvenance;if(t===`partial`)return{provenance:`partial`};if(t!==`complete`)return{provenance:`absent`};let n=e.usage,r=e?.metadata,i=n?.promptTokens??r?.promptTokens??r?.inputTokens,a=n?.completionTokens??r?.completionTokens??r?.outputTokens,o=n?.totalTokens??r?.totalTokens,s=n?.cacheReadTokens??r?.cacheReadTokens;return typeof i!=`number`||!Number.isSafeInteger(i)||i<0||typeof a!=`number`||!Number.isSafeInteger(a)||a<0||!Number.isSafeInteger(i+a)||o!==void 0&&o!==i+a?{provenance:`absent`}:{provenance:`complete`,promptTokens:i,completionTokens:a,totalTokens:i+a,...typeof s==`number`&&Number.isSafeInteger(s)&&s>=0&&s<=i&&{cacheReadTokens:s}}}function lo(e){let t=0,n=0,r,i=!1;for(let a of e){if(a.role!==`assistant`)continue;let e=po(a);e&&(i=!0,t+=e.inputTokens,n+=e.outputTokens,e.cacheReadTokens!==void 0&&(r=(r??0)+e.cacheReadTokens))}if(i)return{promptTokens:t,completionTokens:n,totalTokens:t+n,...r!==void 0&&{cacheReadTokens:r}}}function uo(e){let t=lo(e.filter(e=>O(e)&&e.data!==void 0).map($e));if(t)return{promptTokens:t.promptTokens,completionTokens:t.completionTokens,totalTokens:t.totalTokens}}function fo(){return K()}function po(e){let t=Zr(e);if(!t)return;let n=t.totalTokens??t.inputTokens+t.outputTokens,r=t.cacheReadTokens===void 0?{}:{cacheReadTokens:t.cacheReadTokens};return{inputTokens:t.inputTokens,outputTokens:t.outputTokens,...r,usage:{totalTokens:n,inputTokens:t.inputTokens,outputTokens:t.outputTokens,...r}}}function mo(e){let t=co(e).provenance,n=po(e);return n?{...n,totalTokens:n.inputTokens+n.outputTokens,usageProvenance:t===`complete`?`complete`:`partial`}:{usageProvenance:t}}const ho=/^peer:[A-Za-z0-9._:-]{1,128}$/,go=/<(\\/?)(peer_message)/gi;function _o(e){return e.replace(go,`&lt;$1$2`)}function vo(e){if(e.role!==`user`)return;let t=e.metadata?.driverId;return typeof t==`string`&&t.startsWith(`peer:`)?t:void 0}function yo(e){return ho.test(e)?e:`peer:unverified`}function bo(e){return e.map(e=>{if(e.type!==`text`)return e;let t=_o(e.text);return t===e.text?e:{...e,text:t}})}function xo(e){if(e.role===`tool`){let t=_o(e.content),n=e.parts?bo(e.parts):void 0,r=n?.some((t,n)=>t!==e.parts?.[n])??!1;return t===e.content&&!r?e:{...e,content:t,...n?{parts:n}:{}}}if(e.role!==`user`)return e;let t=vo(e),n=_o(e.content),r=e.parts?bo(e.parts):void 0;if(!t){let t=r?.some((t,n)=>t!==e.parts?.[n])??!1;return n===e.content&&!t?e:{...e,content:n,...r?{parts:r}:{}}}let i=`<peer_message from=\"${yo(t)}\">`,a=`</peer_message>`;return{...e,content:`${i}\\n${n}\\n${a}`,...r?{parts:[{type:`text`,text:i},...r,{type:`text`,text:a}]}:{}}}function So(e){return e.map(xo)}async function Co(e,t,n,r,i,a,o,s,c=10){s.warn(`No final text response — forcing summary call`,{maxRounds:c===0?`unlimited`:c,currentRound:i.currentRound,conversationId:a});let l={},u=!1;try{let s=i.forcedSummaryInstruction??`Tool round limit reached. Provide your response based on the information gathered so far. If results are incomplete, let the user know what was covered and what remains — the user can request additional analysis in a follow-up message.`,c=[...So(e.getMessages()),{id:K(),role:`user`,content:s,state:`complete`,timestamp:new Date}],d=n.systemMessage??``,f=c.some(e=>e.role===`system`&&e.content===d),p=d&&!f?[{id:K(),role:`system`,content:d,state:`complete`,timestamp:new Date},...c]:c;l=$a(t,t.aiProviderInfo.model,r);let m={model:t.aiProviderInfo.model,effort:n.defaultModel?.effort??`auto`,toolChoice:`none`,...n.defaultModel?.maxTokens!==void 0&&{maxTokens:n.defaultModel.maxTokens},...n.defaultModel?.temperature!==void 0&&{temperature:n.defaultModel.temperature},...o.signal&&{signal:o.signal},...o.onTextDelta&&{onTextDelta:o.onTextDelta},executionId:r,onModelFallback:e=>{eo(l,e),o.onExecutionEvent?.(Fr.SWITCHED,{executionId:r,conversationId:a,round:i.currentRound,fromProvider:e.from.provider,fromModel:e.from.model,toProvider:e.to.provider,toModel:e.to.model,reason:e.reason}),h()}},h=()=>{o.onExecutionEvent?.(`provider_request`,{executionId:r,conversationId:a,round:i.currentRound,provider:Y(l,t),model:X(l,t.aiProviderInfo.model),messages:p,forcedSummary:!0})};h();let g=Date.now(),_=K(),v={invoked:!1},y=`failure`,b;try{b=await Ia((e,n)=>{v.invoked=!0,v.startedAtMs=Date.now();let r=to(o.traceContext,t.provider,t.currentInfo.provider,_);return t.provider.chat(e,no(n,r))},p,m,n.timeout,o.awaitProviderSettlement),y=`success`}catch(e){throw L(e,o.signal)&&(y=`interrupted`),e}finally{let e=v.invoked?co(b):{provenance:`absent`};o.onExecutionEvent?.(Pr.COMPLETED,{executionId:r,conversationId:a,round:i.currentRound,startedAt:new Date(v.startedAtMs??g).toISOString(),endedAt:new Date(Math.max(Date.now(),v.startedAtMs??g)).toISOString(),outcome:y,callId:_,disposition:v.invoked?`invoked`:`preflight-refused`,...v.invoked&&{providerId:Y(l,t),modelId:X(l,t.aiProviderInfo.model),...typeof b?.metadata?.providerRequestId==`string`&&{providerRequestId:b.metadata.providerRequestId}},usageProvenance:e.provenance,...`promptTokens`in e&&e.promptTokens!==void 0&&{promptTokens:e.promptTokens,completionTokens:e.completionTokens,totalTokens:e.totalTokens,...e.cacheReadTokens!==void 0&&{cacheReadTokens:e.cacheReadTokens}}})}if(!b)throw Error(`Forced summary provider returned no response.`);let x=(typeof b.content==`string`?b.content:``)||`Maximum rounds reached. Partial results available in conversation history.`,S={...b.metadata??{},round:i.currentRound,providerId:Y(l,t),modelId:X(l,t.aiProviderInfo.model),...mo(b)};e.addAssistantMessage(x,[],S),u=!0,o.onExecutionEvent?.(`assistant_message_committed`,{executionId:r,conversationId:a,round:i.currentRound,message:x}),ka(e,o,r,a,{round:i.currentRound})}catch(n){if(u){s.warn(`Forced summary announcement failed`,{error:n instanceof Error?n.message:String(n)});return}if(L(n,o.signal))throw n;i.providerFailure=n;let c=n instanceof Error?n.message:String(n);s.error(`Forced summary call failed`,{error:c,round:i.currentRound});let d={round:i.currentRound,executionId:r,providerId:Y(l,t),modelId:X(l,t.aiProviderInfo.model),providerError:!0};e.addAssistantMessage(`Request failed: ${c}`,[],{...d,forcedSummary:!0}),ka(e,o,r,a,d)}}const wo=.95;function To(e,t,n){let r=si(e,{usageFloorTokens:n}),i=vi(t),a=i*wo,o=i>0?Math.round(r.usedTokens/i*1e4)/100:100;return{shouldBlock:r.usedTokens>a,estimatedTokens:r.usedTokens,contextLimit:i,thresholdTokens:a,thresholdPercentage:wo*100,usedPercentage:o,serializedTokens:r.serializedTokens,...r.providerTokens!==void 0&&{providerTokens:r.providerTokens},...r.usageFloorTokens!==void 0&&{usageFloorTokens:r.usageFloorTokens}}}function Eo(e,t,n,r,i,a){let o=n.currentRound,s=To(e,t.defaultModel.model,n.cumulativeInputTokens);if(!s.shouldBlock)return!1;i.warn(`[ROUND] Context hard-capacity prevention before provider call`,{estimatedTokens:s.estimatedTokens,contextLimit:s.contextLimit,thresholdTokens:s.thresholdTokens,thresholdPercentage:s.thresholdPercentage,serializedTokens:s.serializedTokens,providerTokens:s.providerTokens??0,usageFloorTokens:s.usageFloorTokens??0,round:o});let c=t.contextCapacityHint??`Reduce the conversation history (for example, compact or summarize it) and retry.`;return r.addAssistantMessage(`Context window is near capacity. Cannot process further in this round. Estimated ${s.estimatedTokens.toLocaleString()} / ${s.contextLimit.toLocaleString()} tokens (${Math.round(s.usedPercentage)}%) exceeds the hard-block threshold ${Math.round(s.thresholdPercentage)}%. ${c}`,[],{round:o,contextOverflow:!0,estimatedTokens:s.estimatedTokens,contextLimit:s.contextLimit,thresholdTokens:s.thresholdTokens,thresholdPercentage:s.thresholdPercentage,serializedTokens:s.serializedTokens,providerTokens:s.providerTokens??0,usageFloorTokens:s.usageFloorTokens??0,usedPercentage:s.usedPercentage}),ka(r,a.fullContext,a.executionId,a.conversationId,{round:o,contextOverflow:!0}),!0}function Do(e,t,n,r){let i=0,a=0;return{wrappedOnTextDelta:a=>{e.onExecutionEvent?.(`provider_stream_raw_delta`,{executionId:n,conversationId:e.conversationId,round:r,sequence:i,delta:a}),i++,t.appendStreaming(a),e.onTextDelta?.(a)},wrappedOnProviderNativeRawPayload:t=>{let i=t.sequence??a;a=Math.max(a,i+1),e.onExecutionEvent?.(`provider_native_raw_payload`,{executionId:n,conversationId:e.conversationId,round:r,...t,sequence:i})}}}async function Oo(e,t,n,r,i,a,o,s,c,l,u,d,f,p=$a(n,t.defaultModel.model,s)){let m=Date.now(),h=K(),g={disposition:`preflight-refused`},_,v=`failure`,y,b=e=>{i.onExecutionEvent?.(`provider_request`,{executionId:s,conversationId:i.conversationId,round:o,provider:Y(p,n),model:X(p,t.defaultModel.model),effort:e.options.effort,messages:e.messages,tools:e.options.tools})};try{let c=await oo(e,t,n,r,{signal:i.signal,onTextDelta:u,onProviderNativeRawPayload:d,...i.maxTokens!==void 0&&{maxTokens:i.maxTokens},...i.temperature!==void 0&&{temperature:i.temperature},...i.withholdHostedTools===!0&&{nativeWebTools:{webSearch:!1,webFetch:!1}},executionId:s,onModelFallback:e=>{eo(p,e),g.model=e.to.model,i.onExecutionEvent?.(Fr.SWITCHED,{executionId:s,conversationId:i.conversationId,round:o,fromProvider:e.from.provider,fromModel:e.from.model,toProvider:e.to.provider,toModel:e.to.model,reason:e.reason}),y!==void 0&&b(y)},...(()=>{let e=Va(i.toolChoice??t.defaultModel.toolChoice,o);return e===void 0?{}:{toolChoice:e}})()},e=>{y=e,b(e);let r=e.structuredOutput;r!==void 0&&i.onExecutionEvent?.(`structured_output_transport`,{executionId:s,conversationId:i.conversationId,round:o,provider:n.currentInfo.provider,model:t.defaultModel.model,mechanism:r.capability.mechanism,provenance:r.capability.provenance,sent:r.sent,schemaInPrompt:r.schemaInPrompt,...r.capability.reason!==void 0&&{reason:r.capability.reason}})},i.awaitProviderSettlement,(e,t)=>{g.disposition=e,g.model=X(p,t),e===`invoked`&&(g.startedAtMs=Date.now())},()=>to(i.traceContext,n.provider,n.currentInfo.provider,h),p);if(_=c,typeof c.content==`string`&&c.content.length>0){let e=a.getPendingContent();if(c.content.startsWith(e)){let t=c.content.slice(e.length);t.length>0&&u(t)}else l.warn(`Provider deltas are not a prefix of its assembled message — committing the streamed text`,{conversationId:i.conversationId,round:o,streamedLength:e.length,assembledLength:c.content.length})}return i.onExecutionEvent?.(`provider_response_raw`,{executionId:s,conversationId:i.conversationId,round:o,effort:t.defaultModel?.effort??`high`,response:c,responseKind:`provider-normalized-message`}),i.onExecutionEvent?.(`provider_response_normalized`,{executionId:s,conversationId:i.conversationId,round:o,response:c,toolCallsCount:c.role===`assistant`&&Array.isArray(c.toolCalls)?c.toolCalls.length:0}),v=`success`,c}catch(e){if(L(e,i.signal))throw v=`interrupted`,a.commitAssistant(`interrupted`,{round:o,usageObservationId:c,executionId:s,providerId:Y(p,n),modelId:X(p,n.aiProviderInfo.model)}),e;a.discardPending(),f?.(e);let t=e instanceof Error?e.message:String(e);return l.error(`[ROUND] Provider call failed`,{error:t,round:o}),a.addAssistantMessage(`Request failed: ${t}`,[],{round:o,usageObservationId:c,executionId:s,providerId:Y(p,n),modelId:X(p,n.aiProviderInfo.model),providerError:!0}),ka(a,i,s,i.conversationId,{round:o,usageObservationId:c,executionId:s,providerId:Y(p,n),modelId:X(p,n.aiProviderInfo.model),providerError:!0}),null}finally{let e=g.disposition===`invoked`?co(_):{provenance:`absent`};i.onExecutionEvent?.(Pr.COMPLETED,{executionId:s,conversationId:i.conversationId,round:o,startedAt:new Date(g.startedAtMs??m).toISOString(),endedAt:new Date(Math.max(Date.now(),g.startedAtMs??m)).toISOString(),outcome:v,callId:h,disposition:g.disposition,...g.disposition===`invoked`&&{providerId:Y(p,n),...g.model!==void 0&&{modelId:g.model},...typeof _?.metadata?.providerRequestId==`string`&&{providerRequestId:_.metadata.providerRequestId}},usageProvenance:e.provenance,...`promptTokens`in e&&e.promptTokens!==void 0&&{promptTokens:e.promptTokens,completionTokens:e.completionTokens,totalTokens:e.totalTokens,...e.cacheReadTokens!==void 0&&{cacheReadTokens:e.cacheReadTokens}}})}}function ko(e){return!e.success&&e.metadata?.errorCode===`unknown_tool`}function Ao(e){return!e.success&&e.metadata?.errorCode===`argument_decode_error`}function jo(e,t,n,r,i,a){let o=!1,s=0,c=0;for(let l of e){if(!l.id)throw Error(`Tool call missing ID: ${JSON.stringify(l)}`);let e=l.function?.name;if(!e||e.length===0)throw Error(`[EXECUTION] Tool call \"${l.id}\" missing function name`);if(o){i.warn(`[ROUND] Skipping tool result due to context overflow`,{toolCallId:l.id,toolName:e,round:r}),n.addToolMessageWithId(`Error: Context window near capacity. Tool execution result skipped. Respond with available results and re-request skipped tools if needed.`,l.id,e,{round:r,success:!1,error:`context_overflow`,toolName:e}),c++;continue}let u=t.results.find(e=>e.executionId===l.id),d=t.errors.find(e=>ta(e)&&e.executionId===l.id),f,p={round:r};if(u&&u.success){if(u.result===void 0)throw Error(`[EXECUTION] Tool result missing result payload`);f=typeof u.result==`string`?u.result:JSON.stringify(u.result),p.success=!0,u.toolName&&(p.toolName=u.toolName)}else if(u&&!u.success){if(!u.error||u.error.length===0)throw Error(`[EXECUTION] Tool result missing error message`);f=`Error: ${u.error}`,p.success=!1,p.error=u.error,u.toolName&&(p.toolName=u.toolName),u.metadata?.errorCode===`unknown_tool`&&(p.errorCode=Dt,typeof u.metadata.requestedTool==`string`&&(p.requestedTool=u.metadata.requestedTool),Array.isArray(u.metadata.availableTools)&&(p.availableTools=u.metadata.availableTools.filter(e=>typeof e==`string`))),u.metadata?.errorCode===`argument_decode_error`&&(p.errorCode=Ot,typeof u.metadata.requestedTool==`string`&&(p.requestedTool=u.metadata.requestedTool))}else if(d){let e=d,t=e.error?.message?e.error.message:e.message?e.message:``;if(!t||t.length===0)throw Error(`[EXECUTION] Tool execution error missing message`);f=`Error: ${t}`,p.success=!1,p.error=t,e.toolName&&(p.toolName=e.toolName)}else throw Error(`No execution result found for tool call ID: ${l.id}`);if(i.debug(`Adding tool result to conversation`,{toolCallId:l.id,toolName:e,content:f.substring(0,100),round:r,currentHistoryLength:n.getMessages().length}),n.addToolMessageWithId(f,l.id,e,p),a){let e=si(n.getMessages(),{usageFloorTokens:a.cumulativeInputTokens}).usedTokens;e>a.contextLimit*.8&&(i.warn(`[ROUND] Context budget exceeded after tool result — skipping remaining tools`,{estimatedTokens:e,contextLimit:a.contextLimit,toolCallId:l.id,round:r}),o=!0)}s++,i.debug(`Tool result added to history`,{toolCallId:l.id,newHistoryLength:n.getMessages().length,round:r})}return{contextOverflowed:o,addedCount:s,skippedCount:c,unknownToolFailureCount:0,unknownToolNames:[]}}function Mo(e,t,n){for(let r of e){let e=r.function?.name??`unknown`,i=`${e}::${typeof r.function?.arguments==`string`?r.function.arguments:JSON.stringify(r.function?.arguments??{})}`,a=(t.sameToolInputCounts.get(i)??0)+1;if(t.sameToolInputCounts.set(i,a),a>n)throw new c(e,a,n)}}async function No(e,t,n,r,i,a,o,s,c,l,u,d,f,p){let{toolExecutionService:m,logger:h,eventEmitter:g}=c,_=f??l?.maxSameToolInputs;_!==void 0&&Mo(e,s,_),h.debug(`Tool calls detected, executing tools`,{toolCallCount:e.length,round:i,toolCalls:e.map(e=>({id:e.id,name:e.function?.name}))});let v=g.buildThinkingOwnerContext(n,r,a,o).ownerPath,y=e.length,b=`${a}`,x=m.createExecutionRequestsWithContext(e,{ownerPathBase:v,metadataFactory:e=>({conversationId:n,round:i,directParentId:a,batchId:b,expectedCount:y,toolCallId:e.id})}).map(e=>{if(!e.ownerId)throw Error(`[EXECUTION] Tool request missing ownerId`);return{...e,eventService:g.ensureToolEventService(e.ownerId,e.ownerPath),baseEventService:g.getBaseEventService(),...p?{traceContext:p}:{}}}),S={requests:x,mode:`parallel`,maxConcurrency:5,continueOnError:!0,signal:u};d?.(`tool_batch_started`,{executionId:r,conversationId:n,round:i,batchId:b,mode:S.mode,maxConcurrency:S.maxConcurrency,requestCount:x.length,tools:x.map(e=>e.toolName)}),x.forEach((e,t)=>{d?.(`tool_execution_request`,{executionId:r,conversationId:n,round:i,batchId:b,index:t,toolName:e.toolName,toolCallId:e.executionId,parameters:e.argumentDecodeError===void 0?e.parameters:{argumentDecodeError:e.argumentDecodeError},ownerPath:e.ownerPath})});let C=await m.executeTools(S),w=C.results.filter(ko).map(e=>e.toolName).filter(e=>typeof e==`string`&&e.length>0);C.results.forEach((e,t)=>{d?.(`tool_execution_result`,{executionId:r,conversationId:n,round:i,batchId:b,index:t,toolName:e.toolName,toolCallId:e.executionId,success:e.success,result:e.result,error:e.error,metadata:e.metadata})}),s.toolsExecuted.push(...C.results.filter(e=>!ko(e)&&!Ao(e)).map(e=>{if(!e.toolName||e.toolName.length===0)throw Error(`[EXECUTION] Tool result missing toolName`);return e.toolName}));let T=vi(l?.defaultModel?.model??``),E=t.getMessages().length,ee=jo(e,C,t,i,h,{contextLimit:T,cumulativeInputTokens:s.cumulativeInputTokens});return t.getMessages().slice(E).forEach((e,t)=>{d?.(`tool_message_committed`,{executionId:r,conversationId:n,round:i,batchId:b,index:t,message:e}),d?.(`history_mutation`,{executionId:r,conversationId:n,round:i,batchId:b,mutation:`append_message`,index:E+t,message:e})}),g.emitToolResultsEvents(e,C,s.toolsExecuted,n,r,i,a,o),g.clearToolEventServices(),{...ee,unknownToolFailureCount:w.length,unknownToolNames:w}}async function Po(e,t,n,r,i,a,o,s,c){let{plugins:l,logger:u,eventEmitter:d,cacheService:f}=c,p=e.currentRound;u.debug(`[ROUND-${p}] Starting execution round ${p}`,{executionId:i,conversationId:a.conversationId,round:p,maxRounds:t});let m=n.getMessages(),h=So(m),g=a.ephemeralSystemContext,_=g&&g.trim().length>0?[...h,Yn(g)]:h,{thinkingNodeId:v,previousThinkingNodeId:y}=ro(r,e);if(await J(l,`beforeProviderCall`,{messages:m},u),u.debug(`Sending messages to AI provider`,{round:p,messageCount:m.length,lastFewMessages:m.slice(-5).map(e=>({role:e.role,content:e.content?.substring(0,50),hasToolCalls:`toolCalls`in e&&!!e.toolCalls?.length,toolCallId:`toolCallId`in e?e.toolCallId:void 0}))}),d.emitWithContext(M.ASSISTANT_MESSAGE_START,{parameters:{round:p,messageCount:m.length},metadata:{round:p,thinkingNodeId:v}},()=>d.buildThinkingOwnerContext(r,i,v,y),e=>{if(!e.ownerType||!e.ownerId)throw Error(`[EXECUTION] Missing owner context for thinking event`);return q(d.getBaseEventService(),{ownerType:e.ownerType,ownerId:e.ownerId,ownerPath:e.ownerPath})}),Eo(m,o,e,n,u,{fullContext:a,executionId:i,conversationId:r}))return!0;p>1&&a.onTextDelta?.(`\n\n`),n.beginAssistant();let b=fo(),{wrappedOnTextDelta:x,wrappedOnProviderNativeRawPayload:S}=Do(a,n,i,p),C=$a(s,o.defaultModel.model,i),w=await Oo(_,o,s,f,a,n,p,i,b,u,x,S,t=>void(e.providerFailure=t),C);if(w===null)return!0;let{assistantResponse:T,assistantToolCalls:E}=so(w,i,a.conversationId,p,u);if(E.length>0&&(a.toolChoice??o.defaultModel?.toolChoice)===`none`)throw Error(`Provider returned tool calls despite toolChoice none; no tools were executed.`);await J(l,`afterProviderCall`,{messages:m,responseMessage:w},u),await J(l,`onMessageAdded`,{message:w},u);let ee=typeof T.content==`string`&&T.content.trim().length>0;if(E.length===0&&!ee)return u.warn(`[ROUND] Provider returned empty assistant response without tool calls`,{executionId:i,conversationId:a.conversationId,round:p}),n.discardPending(),!0;let te=mo(T),ne=te.inputTokens??0;ne>0&&(e.cumulativeInputTokens=ne);for(let e of E)n.appendToolCall(e);let re=a.signal?.aborted?`interrupted`:`complete`;n.commitAssistant(re,{round:p,usageObservationId:b,executionId:i,providerId:Y(C,s),modelId:X(C,s.aiProviderInfo.model),...te});let ie=n.getMessages().at(-1);if(a.onExecutionEvent?.(`assistant_message_committed`,{executionId:i,conversationId:a.conversationId,round:p,message:T}),ie&&a.onExecutionEvent?.(`history_mutation`,{executionId:i,conversationId:a.conversationId,round:p,mutation:`append_message`,index:n.getMessages().length-1,message:ie}),e.runningAssistantCount++,e.lastTrackedAssistantMessage=T,E.length===0)return u.debug(`[AGENT-FLOW-CONTROL] Round ${p} completed - no tool calls, execution finished for agent ${a.conversationId}`),d.emitAssistantMessageComplete(T,i,p,r,v,y),!0;let ae=await No(E,n,r,i,p,v,y,e,c,o,a.signal,a.onExecutionEvent,a.maxSameToolInputs??o.maxSameToolInputs,a.traceContext);if(ae.contextOverflowed&&u.warn(`[ROUND] Tool results partially skipped due to context overflow — continuing to let AI respond`,{added:ae.addedCount,skipped:ae.skippedCount,round:p}),ae.unknownToolFailureCount>0?e.consecutiveUnknownToolFailureRounds+=1:e.consecutiveUnknownToolFailureRounds=0,e.consecutiveUnknownToolFailureRounds>=2){let t=[...new Set(ae.unknownToolNames)].sort();return e.forcedSummaryInstruction=[`The model repeatedly requested unavailable tool(s): ${t.join(`, `)}.`,`Those tool calls were not executed because they are not registered tools.`,`Respond to the user now with that reason and use the available tool results already in the conversation history.`].join(` `),u.warn(`[ROUND] Stopping repeated unavailable tool-call loop`,{unavailableTools:t,consecutiveRounds:e.consecutiveUnknownToolFailureRounds,round:p}),!0}return u.debug(`Round ${p} completed for agent ${a.conversationId}`),!1}function Fo(e,t){let n=t.maxExecutionRounds??e.maxExecutionRounds;if(n===void 0)return 10;if(!Number.isInteger(n)||n<0)throw Error(`[EXECUTION] maxExecutionRounds must be a non-negative integer`);return n}function Io(e,t){return t===0||e<t}async function Lo(e,t,n,r,i,a,o,s,c){let l=Fo(i,r);for(;Io(o.currentRound,l)&&!(s?.aborted||(o.currentRound++,await Po(o,l,e,t,n,r,i,a,c))||s?.aborted););let u=e.getMessages(),d=u.length>0?u[u.length-1]:void 0,f=d?.role===`assistant`&&typeof d.content==`string`&&d.content.length>0&&(!(`toolCalls`in d)||d.toolCalls.length===0);s?.aborted||r.allowToolOnlyCompletion!==!0&&(f||await Co(e,a,i,n,o,t,r,c.logger,l))}async function Ro(e,t,n,r,i,a,o,s,c,l,u,d){let f={...Pa(t,n,r,i.toolsExecuted,{turnMessageId:o,interrupted:s,...c?.allowToolOnlyCompletion===!0&&{allowToolOnlyCompletion:!0}},i.providerFailure),interrupted:s};await J(l,`afterRun`,{input:e,response:f.response,metadata:c?.metadata},u);let p={messages:f.messages,executionContext:{executionId:n,conversationId:a},executionResult:{response:f.response,duration:f.duration,...f.tokensUsed===void 0?{}:{tokensUsed:f.tokensUsed},toolsExecuted:f.toolsExecuted.length,success:f.success,toolCalls:f.toolsExecuted.map(e=>({name:e}))}};for(let e of[`afterExecution`,`afterConversation`,`afterToolExecution`])await J(l,e,p,u);return u.debug(`Execution pipeline completed successfully`,{executionId:n,conversationId:a,duration:f.duration,tokensUsed:f.tokensUsed,toolsExecuted:f.toolsExecuted.length,rounds:i.currentRound}),d.emitExecution(M.COMPLETE,{result:{success:!0,data:f.response.substring(0,100)+`...`},metadata:{method:`execute`,success:!0,duration:f.duration,tokensUsed:f.tokensUsed,toolsExecuted:f.toolsExecuted}},a,n),f}async function*zo(e,t,n,r,i){let a=[],o=null,s=!1,c=null,l={result:null},u=new AbortController,d=r?.signal,f=d?AbortSignal.any([d,u.signal]):u.signal,p=r?.onTextDelta,m=e=>{a.push(e),p?.(e),o?.()},h=i(e,t,n,{...r,signal:f,onTextDelta:m}).then(e=>{l.result=e},e=>{c=e}).finally(()=>{s=!0,o?.()});try{for(;;){for(;a.length>0;)yield a.shift();if(s)break;await new Promise(e=>{o=()=>{o=null,e()}})}if(c!==null)throw c;if(l.result===null)throw Error(`[EXECUTION] streaming turn settled without a result`);return l.result}finally{u.abort(),await h}}function Bo(e,t,n){return{executionId:e,...t===void 0?{}:{driverId:t},...n===void 0?{}:{turnSource:n}}}var Vo=class{toolExecutionService;aiProviders;tools;conversationHistory;plugins=[];logger;eventEmitter;cacheService;constructor(e,t,n,r,i,a){if(this.toolExecutionService=new xa(t),this.aiProviders=e,this.tools=t,this.conversationHistory=n,this.plugins=[],this.logger=k(`ExecutionService`),!r)throw Error(`[EXECUTION] EventService is required`);this.eventEmitter=new Aa(r,this.logger,i),this.cacheService=a}setAskHandler(e){this.toolExecutionService.setAskHandler(e)}invokeRuntimeTool(e,t,n){return this.toolExecutionService.executeTool(e,t,n,`registered`)}registerPlugin(e){let t=e.priority??0,n=this.plugins.findIndex(e=>(e.priority??0)<t);n===-1?this.plugins.push(e):this.plugins.splice(n,0,e),this.logger.debug(`Plugin registered`,{pluginName:e.name,priority:t})}removePlugin(e){let t=this.plugins.findIndex(t=>t.name===e);return t===-1?!1:(this.plugins.splice(t,1),this.logger.debug(`Plugin removed`,{pluginName:e}),!0)}getPlugin(e){return this.plugins.find(t=>t.name===e)}getPlugins(){return[...this.plugins]}async execute(e,t,n,r){let i=qa(),a=new Date,o=Ja(r,`execute`),s=Ya(t,n,a,i,o,r);this.eventEmitter.prepareOwnerPathBases(o),this.logger.debug(`Starting execution pipeline`,{executionId:i,conversationId:o,messageCount:t.length,hasContext:!!r});let c=Ua(this.aiProviders,this.tools,n);this.eventEmitter.emitExecutionStartEvent(e,n,t,c,o,i);let l=Ga(this.conversationHistory,o,t,n,i),u,d={toolsExecuted:[],currentRound:0,runningAssistantCount:0,lastTrackedAssistantMessage:void 0,cumulativeInputTokens:0,consecutiveUnknownToolFailureRounds:0,sameToolInputCounts:new Map};try{let t=l.getMessages().length;l.addUserMessage(e,Bo(i,r?.driverId,r?.turnSource));let f=l.getMessages().at(-1);u=f?.id,f&&s.onExecutionEvent?.(`history_mutation`,{executionId:i,conversationId:o,mutation:`append_message`,index:t,message:f}),this.eventEmitter.emitUserMessageEvent(e,o,i),await J(this.plugins,`beforeRun`,{input:e,...r?.metadata?{metadata:r.metadata}:{}},this.logger);let p={executionId:i,conversationId:o};f&&await J(this.plugins,`onMessageAdded`,{message:f,executionContext:p},this.logger),await J(this.plugins,`beforeExecution`,{messages:l.getMessages(),executionContext:p},this.logger),Wa(c);for(let e of l.getMessages())e.role===`assistant`&&(d.runningAssistantCount++,d.lastTrackedAssistantMessage=e);return await Lo(l,o,i,s,n,c,d,r?.signal,{toolExecutionService:this.toolExecutionService,plugins:this.plugins,logger:this.logger,eventEmitter:this.eventEmitter,cacheService:this.cacheService}),Ro(e,l,i,a,d,o,u,r?.signal?.aborted??!1,r,this.plugins,this.logger,this.eventEmitter)}catch(e){return L(e,r?.signal)?{...Pa(l,i,a,d.toolsExecuted,{turnMessageId:u,interrupted:!0}),interrupted:!0}:(await Ka(e,s,a,o,i,this.plugins,this.logger,this.eventEmitter),{response:``,messages:[],tokensUsed:0,toolsExecuted:[],duration:Date.now()-a.getTime(),executionId:i,success:!1,error:e instanceof Error?e:Error(String(e))})}finally{this.eventEmitter.resetOwnerPathBases()}}async*executeStream(e,t,n,r){return yield*zo(e,t,n,r,this.execute.bind(this))}async getStats(){return{pluginCount:this.plugins.length,pluginNames:this.plugins.map(e=>e.name),historyStats:this.conversationHistory.getStats()}}clearPlugins(){this.plugins=[],this.logger.debug(`All plugins cleared`)}};function Ho(e){let t=new Zi;if(e.aiProviders)for(let n of e.aiProviders)t.addProvider(n.name,n);return e.defaultModel&&t.setCurrentProvider(e.defaultModel.provider,e.defaultModel.model),t}async function Uo(e){let{config:t,aiProviders:n,tools:r,agentFactory:i,conversationHistory:a,moduleRegistry:o,eventEmitter:s,eventService:c,logger:l}=e;if(l.debug(`Starting Robota initialization with independent managers`),await Promise.all([n.initialize(),r.initialize(),i.initialize()]),t.modules){for(let e of t.modules)await o.registerModule(e,{autoInitialize:!0,validateDependencies:!0});l.debug(`Modules registered and initialized`,{moduleCount:t.modules.length,moduleNames:t.modules.map(e=>e.name)})}if(t.tools)for(let e of t.tools)e instanceof Pt&&c&&e.setEventService(c),r.addTool(e.schema,async(t,n)=>{if(!n)throw Error(`[ROBOTA] Missing ToolExecutionContext for tool execution`);let r=await e.execute(t,n);return qr(e.schema.name,r)}),l.debug(`Tool registered during initialization`,{toolName:e.schema.name});let u;t.cache?.enabled&&(u=new ea(new $i({maxEntries:t.cache.maxEntries,ttlMs:t.cache.ttlMs}),new Qi));let d=new Vo(n,r,a,c,t.executionContext,u);if(t.ask&&d.setAskHandler(t.ask),t.plugins)for(let e of t.plugins)d.registerPlugin(e),e.subscribeToModuleEvents&&(await e.subscribeToModuleEvents(s),l.debug(`Plugin subscribed to module events`,{pluginName:e.name}));return l.debug(`Robota initialization completed successfully with independent managers`),d}async function Wo(e){try{let t=await Uo(e.ctx);e.setExecutionService(t),e.setFullyInitialized(!0)}catch(t){throw e.ctx.logger.error(`Robota initialization failed`,{error:t instanceof Error?t.message:String(t)}),t}}function Go(e){let t=e.isFullyInitialized?e.aiProviders.getProviderNames():[],n=e.isFullyInitialized?e.aiProviders.getCurrentProvider():null,r=n?n.provider:null,i=e.isFullyInitialized?e.tools.getTools().map(e=>e.name):[],a=e.getPluginNames(),o=e.getModuleNames(),s=e.getHistory(),c=Date.now()-e.startTime,l={user:0,assistant:0,system:0,tool:0};for(let e of s)e.role in l&&l[e.role]++;return{name:e.name,version:e.version,conversationId:e.conversationId,providers:t,currentProvider:r,tools:i,plugins:a,modules:o,historyLength:s.length,historyStats:{userMessages:l.user,assistantMessages:l.assistant,systemMessages:l.system,toolMessages:l.tool},uptime:c}}async function Ko(e){e.logger.debug(`Destroying Robota instance`,{name:e.name});let t=[],n=async(n,r)=>{try{await r(),e.logger.debug(n)}catch(r){let i=r instanceof Error?r:Error(String(r));t.push(i),e.logger.error(`Error during Robota destruction step`,{step:n,error:i.message})}};if(e.isFullyInitialized&&e.moduleRegistry&&await n(`All modules disposed`,()=>e.moduleRegistry.disposeAllModules()),e.executionService){let t=e.executionService.getPlugins();for(let e of t)await n(`Plugin disposed: ${e.name}`,()=>e.dispose());e.logger.debug(`ExecutionService plugins cleaned up`)}return e.moduleRegistry&&await n(`ModuleRegistry cleared`,()=>e.moduleRegistry.clearAllModules()),e.eventEmitter&&await n(`EventEmitter disposed`,()=>e.eventEmitter.dispose()),await n(`Tools disposed`,()=>e.tools.dispose()),await n(`AIProviders disposed`,()=>e.aiProviders.dispose()),e.resetState(),t.length===0?e.logger.info(`Robota instance destroyed successfully`,{name:e.name}):e.logger.warn(`Robota instance destroyed with cleanup failures`,{name:e.name,failureCount:t.length}),{errors:t}}var qo=class{tail=Promise.resolve();claimed=0;async acquire(e){let t=this.claimed>0;this.claimed+=1;let n=this.tail,r=()=>{};this.tail=new Promise(e=>{r=e});let i=!1,a=()=>{i||(i=!0,--this.claimed,r())};if(await n,e?.aborted)throw a(),Jo(e,t);return a}async run(e,t){let n=await this.acquire(e);try{return await t()}finally{n()}}get drained(){return this.tail}};function Jo(e,t){let n=e.reason;return L(n)&&n.name===`AbortError`?n:It(t?`Run aborted while queued behind another run on this instance`:`Run aborted before it started`,n)}function Yo(e){return{maxConcurrentAgents:e.maxConcurrentAgents||100,defaultSystemMessage:e.defaultSystemMessage??``,strictValidation:e.strictValidation??!0,idFactory:e.idFactory??Zo,...e.defaultModel!==void 0&&{defaultModel:e.defaultModel},...e.defaultProvider!==void 0&&{defaultProvider:e.defaultProvider}}}function Xo(e,t){if(!e.aiProviders||e.aiProviders.length===0)throw new y(`At least one AI provider must be specified in aiProviders array`);let n=e.defaultModel,r=n?.model??t.defaultModel;if(!r)throw new y(`No model specified: set config.defaultModel.model or the AgentFactory defaultModel option`);let i=n?.provider??e.aiProviders[0]?.name??t.defaultProvider;if(!i)throw new y(`No provider specified: set config.defaultModel.provider, an aiProviders entry, or the AgentFactory defaultProvider option`);return{id:e.id||Zo(),name:e.name||`Unnamed Agent`,aiProviders:e.aiProviders,defaultModel:{provider:i,model:r,temperature:n?.temperature??.7,...n?.maxTokens!==void 0&&{maxTokens:n.maxTokens},...n?.topP!==void 0&&{topP:n.topP}},systemMessage:e.systemMessage??t.defaultSystemMessage,tools:e.tools||[],plugins:e.plugins||[],metadata:e.metadata||{},...e.logging&&{logging:e.logging},...e.conversationId&&{conversationId:e.conversationId},...e}}function Zo(){return`agent_${Date.now()}_${Math.random().toString(36).substring(2,8)}`}function Qo(e,t){return e.totalCreated++,e.activeCount++,t?e.fromTemplates++:e.customConfigured++,e.templateUsageRatio=e.totalCreated>0?e.fromTemplates/e.totalCreated:0,e}var $o=class{templates=new Map;logger;constructor(){this.logger=k(`AgentTemplates`),this.logger.info(`AgentTemplates initialized`)}registerTemplate(e){if(!e.id)throw Error(`Template must have an ID`);this.templates.has(e.id)&&this.logger.warn(`Template \"${e.id}\" is already registered, overriding`),this.templates.set(e.id,e),this.logger.info(`Template \"${e.id}\" registered successfully`,{templateId:e.id,category:e.category,tags:e.tags})}unregisterTemplate(e){let t=this.templates.delete(e);return t?this.logger.info(`Template \"${e}\" unregistered`):this.logger.warn(`Attempted to unregister non-existent template \"${e}\"`),t}getTemplates(){return Array.from(this.templates.values())}getTemplate(e){return this.templates.get(e)}findTemplates(e){return this.getTemplates().filter(t=>!(e.category&&t.category!==e.category||e.tags&&e.tags.length>0&&!e.tags.some(e=>t.tags?.includes(e))||e.provider&&t.config.defaultModel?.provider!==e.provider||e.model&&t.config.defaultModel?.model!==e.model))}applyTemplate(e,t={}){let n=[],r=!1,i={...e.config},a={...i,...t},o=e=>{e in t&&i[e]!==t[e]&&(r=!0,i[e]!==void 0&&n.push(`Override: ${e} changed from \"${String(i[e])}\" to \"${String(t[e])}\"`))};t.name!==void 0&&o(`name`),t.systemMessage!==void 0&&o(`systemMessage`);let s=a;return this.logger.debug(`Template applied`,{templateId:e.id,overridesCount:Object.keys(t).length,warningsCount:n.length,modified:r}),{config:s,template:e,warnings:n,modified:r}}hasTemplate(e){return this.templates.has(e)}getTemplateCount(){return this.templates.size}clearAll(){this.templates.clear(),this.logger.info(`All templates cleared`)}getStats(){let e=this.getTemplates(),t=[...new Set(e.map(e=>e.category).filter(e=>typeof e==`string`&&e.length>0))],n=[...new Set(e.flatMap(e=>e.tags||[]))],r=[...new Set(e.map(e=>e.config.defaultModel?.provider).filter(e=>typeof e==`string`&&e.length>0))],i=[...new Set(e.map(e=>e.config.defaultModel?.model).filter(e=>typeof e==`string`&&e.length>0))];return{totalTemplates:e.length,categories:t,tags:n,providers:r,models:i}}};function es(e){let t=e,n=typeof t.initialize==`function`?t.initialize:void 0,r=typeof t.cleanup==`function`?t.cleanup:void 0;if(n!==void 0||r!==void 0)return{...n?{initialize:()=>n.call(e)}:{},...r?{cleanup:()=>r.call(e)}:{}}}function ts(e){return e instanceof Error&&`failedStep`in e&&`rollbackErrors`in e}async function ns(e){let t=[];for(let n of e){try{await n.run()}catch(e){let r=[];for(let e of t.reverse())if(e.undo!==void 0)try{await e.undo()}catch(t){r.push({step:e.name,error:t})}throw rs(e,n.name,r)}t.push(n)}}function rs(e,t,n){let r=e instanceof Error?e:Error(String(e));return Object.assign(r,{failedStep:t,rollbackErrors:n})}var is=class{agentTemplates;initialized=!1;logger;options;activeAgents;pendingAgents=new Set;creationStats;lifecycleEvents;constructor(e={},t={}){this.agentTemplates=new $o,this.logger=k(`AgentFactory`),this.options=Yo(e),this.activeAgents=new Map,this.creationStats={totalCreated:0,activeCount:0,fromTemplates:0,customConfigured:0,templateUsageRatio:0},this.lifecycleEvents=t,this.logger.debug(`AgentFactory initialized`,{maxConcurrentAgents:this.options.maxConcurrentAgents,strictValidation:this.options.strictValidation,hasDefaultModel:!!this.options.defaultModel,hasDefaultProvider:!!this.options.defaultProvider,hasLifecycleEvents:this.lifecycleEvents!==null})}async initialize(){this.initialized||(this.logger.debug(`Initializing AgentFactory`),this.initialized=!0,this.logger.debug(`AgentFactory initialization completed`))}async createAgent(e,t,n=!1){let r,i=this.admit();try{r=Xo(t,this.options);let a=r;if(this.options.strictValidation){let e=Rt(r);if(!e.isValid)throw new l(`Invalid agent configuration: ${e.errors.join(`, `)}`)}let o;if(await ns([{name:`beforeCreate`,run:()=>this.lifecycleEvents.beforeCreate?.(a)},{name:`construct`,run:()=>{o=new e(a)}},{name:`initialize`,run:()=>o?es(o)?.initialize?.():void 0,undo:()=>o?es(o)?.cleanup?.():void 0},{name:`commit`,run:()=>{if(!o)throw new y(`Agent was not constructed`);this.activeAgents.set(i,o),Qo(this.creationStats,n)},undo:()=>{this.activeAgents.delete(i),this.creationStats.activeCount--,this.creationStats.totalCreated--,n?this.creationStats.fromTemplates--:this.creationStats.customConfigured--}},{name:`afterCreate`,run:()=>o?this.lifecycleEvents.afterCreate?.(o,a):void 0}]),this.pendingAgents.delete(i),!o)throw new y(`Agent was not constructed`);return this.logger.info(`Agent created successfully`,{agentId:i,model:r.defaultModel.model,provider:r.defaultModel.provider}),o}catch(e){this.pendingAgents.delete(i);let n=e instanceof Error?e:Error(String(e));throw this.lifecycleEvents.onCreateError&&r&&await this.lifecycleEvents.onCreateError(n,r),this.logger.error(`Failed to create agent`,{error:n.message,model:t.defaultModel?.model,provider:t.defaultModel?.provider,hasTools:!!t.tools?.length}),n}}admit(){if(this.activeAgents.size+this.pendingAgents.size>=this.options.maxConcurrentAgents)throw new y(`Maximum concurrent agents limit reached: ${this.options.maxConcurrentAgents}`);let e=this.options.idFactory(),t=0;for(;this.activeAgents.has(e)||this.pendingAgents.has(e);){if(t+=1,t>16)throw new y(`Agent id factory keeps returning ids that are already in use`);e=this.options.idFactory()}return this.pendingAgents.add(e),e}async createFromTemplate(e,t,n={}){let r=this.agentTemplates.getTemplate(t);if(!r)throw new y(`Template not found: ${t}`);let i=this.applyTemplate(r,n);i.warnings.length>0&&this.logger.warn(`Template application warnings`,{templateId:t,warnings:i.warnings});let a=await this.createAgent(e,i.config,!0);return this.logger.info(`Agent created from template`,{templateId:t,modified:i.modified,warnings:i.warnings.length}),a}registerTemplate(e){this.agentTemplates.registerTemplate(e)}unregisterTemplate(e){return this.agentTemplates.unregisterTemplate(e)}getTemplates(){return this.agentTemplates.getTemplates()}getTemplate(e){return this.agentTemplates.getTemplate(e)}findTemplates(e){return this.agentTemplates.findTemplates(e)}applyTemplate(e,t={}){return this.agentTemplates.applyTemplate(e,t)}async destroyAgent(e){let t=this.activeAgents.get(e);if(!t)return!1;try{return await es(t)?.cleanup?.(),this.activeAgents.delete(e),this.creationStats.activeCount--,this.lifecycleEvents.onDestroy&&await this.lifecycleEvents.onDestroy(e),this.logger.info(`Agent destroyed`,{agentId:e}),!0}catch(t){throw this.logger.error(`Error destroying agent`,{agentId:e,error:t instanceof Error?t.message:String(t)}),t}}getCreationStats(){return{...this.creationStats}}getActiveAgents(){return new Map(this.activeAgents)}validateConfiguration(e){return Rt(e)}};function as(e,t,n){if(!e.name||e.name.trim()===``)throw new y(`Module name is required`);if(!e.version||e.version.trim()===``)throw new y(`Module version is required`);let r=e.getModuleType(),i=t.validateTypeDescriptor(r);if(!i.valid)throw new y(`Invalid module type: ${i.errors.join(`, `)}`,{moduleName:e.name,errors:i.errors});i.warnings.length>0&&n.warn(`Module type validation warnings`,{moduleName:e.name,warnings:i.warnings})}async function os(e,t,n,r){let i=e.getModuleType();if(!i.dependencies||i.dependencies.length===0)return;for(let n of i.dependencies)if(!t.hasType(n))throw new y(`Module '${e.name}' depends on unregistered type '${n}'`,{moduleName:e.name,dependencyType:n});let a=new Set;for(let e of n.values())a.add(e.getModuleType().type);let o=[];for(let e of i.dependencies)a.has(e)||o.push(e);o.length>0&&r.warn(`Module has unmet dependencies`,{moduleName:e.name,missingDependencies:o})}function ss(e,t){let n=t.get(e);if(!n)return[];let r=n.getModuleType().type,i=[];for(let[n,a]of t.entries())n!==e&&a.getModuleType().dependencies?.includes(r)&&i.push(n);return i}function cs(e,t){let n={},r=0,i=0,a=0,o=0,s=0,c=0;for(let t of e.values()){let e=t.getModuleType().type;n[e]=(n[e]||0)+1,t.isInitialized()&&r++,t.isEnabled()&&i++}for(let e of t.values())a+=e.totalExecutions,o+=e.successfulExecutions,s+=e.failedExecutions,c+=e.totalExecutionTime;return{totalModules:e.size,initializedModules:r,enabledModules:i,modulesByType:n,totalExecutions:a,totalSuccessfulExecutions:o,totalFailedExecutions:s,averageExecutionTime:a>0?c/a:0}}function ls(){return[{type:`storage`,category:`storage`,layer:`infrastructure`,capabilities:[`data-persistence`,`data-retrieval`]},{type:`memory-storage`,category:`storage`,layer:`infrastructure`,dependencies:[`storage`],capabilities:[`in-memory-storage`,`fast-access`]},{type:`file-storage`,category:`storage`,layer:`infrastructure`,dependencies:[`storage`],capabilities:[`persistent-storage`,`file-system-access`]},{type:`text-processing`,category:`processing`,layer:`application`,capabilities:[`text-analysis`,`content-transformation`]},{type:`file-processing`,category:`processing`,layer:`application`,dependencies:[`storage`],capabilities:[`file-parsing`,`content-extraction`]},{type:`api-integration`,category:`integration`,layer:`application`,capabilities:[`external-api-access`,`data-synchronization`]},{type:`database-integration`,category:`integration`,layer:`infrastructure`,dependencies:[`storage`],capabilities:[`database-access`,`query-execution`]},{type:`rag`,category:`capability`,layer:`domain`,dependencies:[`storage`,`text-processing`],capabilities:[`document-search`,`context-retrieval`,`semantic-search`]},{type:`speech-processing`,category:`capability`,layer:`domain`,capabilities:[`speech-to-text`,`text-to-speech`,`audio-processing`]},{type:`image-analysis`,category:`capability`,layer:`domain`,capabilities:[`image-recognition`,`visual-analysis`,`content-extraction`]}]}function us(e,t){let n=[],r=[];if((!e.type||e.type.trim()===``)&&n.push(`Module type is required and cannot be empty`),e.category||n.push(`Module category is required`),e.layer||n.push(`Module layer is required`),e.type&&!/^[a-zA-Z][a-zA-Z0-9-_]*$/.test(e.type)&&n.push(`Module type must start with a letter and contain only letters, numbers, hyphens, and underscores`),e.dependencies){for(let t of e.dependencies)(!t||t.trim()===``)&&n.push(`Dependencies cannot be empty`);e.dependencies.includes(e.type)&&n.push(`Module cannot depend on itself`)}if(e.capabilities)for(let t of e.capabilities)(!t||t.trim()===``)&&n.push(`Capabilities cannot be empty`);if(e.dependencies){let n=[`infrastructure`,`core`,`application`,`domain`,`presentation`],i=n.indexOf(e.layer);for(let a of e.dependencies){let o=t(a);o&&n.indexOf(o.layer)>i&&r.push(`Module '${e.type}' (${e.layer}) depends on '${a}' (${o.layer}) which is in a higher layer`)}}return{valid:n.length===0,errors:n,warnings:r}}function ds(e,t,n){let r=new Set,i=new Set,a=[],o=[],s=[];for(let r of e){let e=t(r);if(!e){s.push(r);continue}if(e.dependencies)for(let t of e.dependencies)!n(t)&&!s.includes(t)&&s.push(t)}let c=(s,l=[])=>{if(i.has(s)){let e=l.indexOf(s);o.push(l.slice(e).concat([s]));return}if(r.has(s))return;let u=t(s);if(!u)return;i.add(s);let d=[...l,s];if(u.dependencies)for(let t of u.dependencies)(e.includes(t)||n(t))&&c(t,d);i.delete(s),r.add(s),a.push(s)};for(let t of e)r.has(t)||c(t);return{resolved:s.length===0&&o.length===0,order:a,circularDependencies:o,missingDependencies:s}}function fs(e,t){let n=[],r=[],i=new Map;for(let n of e){let e=t(n);e&&(i.has(e.layer)||i.set(e.layer,[]),i.get(e.layer).push(n))}let a=new Map;for(let n of e){let e=t(n);if(e?.capabilities)for(let t of e.capabilities)a.has(t)||a.set(t,[]),a.get(t).push(n)}for(let[e,t]of Array.from(a.entries()))if(t.length>1)for(let r=0;r<t.length;r++)for(let i=r+1;i<t.length;i++){let a=t[r],o=t[i];a&&o&&n.push({module1:a,module2:o,reason:`Both modules provide capability '${e}'`})}return n.length>0&&(r.push(`Consider using only one module per capability`),r.push(`Check if modules can be configured to avoid conflicts`)),!i.has(`infrastructure`)&&e.length>1&&r.push(`Consider adding infrastructure modules for better foundation`),{compatible:n.length===0,conflicts:n,suggestions:r}}function ps(e){let t={core:0,storage:0,processing:0,integration:0,interface:0,capability:0},n={infrastructure:0,core:0,application:0,domain:0,presentation:0},r=0,i=0;for(let a of e.values())t[a.category]++,n[a.layer]++,a.dependencies&&a.dependencies.length>0&&r++,a.capabilities&&a.capabilities.length>0&&i++;return{totalTypes:e.size,typesByCategory:t,typesByLayer:n,typesWithDependencies:r,typesWithCapabilities:i}}var ms=class{registeredTypes=new Map;logger;constructor(){this.logger=k(`ModuleDescriptorRegistry`),this.registerBuiltinTypes()}registerType(e){let t=this.validateTypeDescriptor(e);if(!t.valid)throw new y(`Invalid module type descriptor: ${t.errors.join(`, `)}`,{type:e.type,errors:t.errors});if(this.registeredTypes.has(e.type)){let t=this.registeredTypes.get(e.type);this.logger.warn(`Overriding existing module type`,{type:e.type,previousCategory:t?.category||`unknown`,newCategory:e.category})}this.registeredTypes.set(e.type,e),this.logger.info(`Module type registered`,{type:e.type,category:e.category,layer:e.layer,dependencies:e.dependencies?.length||0,capabilities:e.capabilities?.length||0})}unregisterType(e){if(!this.registeredTypes.has(e))return!1;let t=this.findDependentTypes(e);if(t.length>0)throw new y(`Cannot unregister module type '${e}' - it is required by: ${t.join(`, `)}`,{type:e,dependentTypes:t});return this.registeredTypes.delete(e),this.logger.info(`Module type unregistered`,{type:e}),!0}getType(e){return this.registeredTypes.get(e)}getAllTypes(){return Array.from(this.registeredTypes.values())}getTypesByCategory(e){return Array.from(this.registeredTypes.values()).filter(t=>t.category===e)}getTypesByLayer(e){return Array.from(this.registeredTypes.values()).filter(t=>t.layer===e)}hasType(e){return this.registeredTypes.has(e)}validateTypeDescriptor(e){return us(e,e=>this.getType(e))}resolveDependencies(e){return ds(e,e=>this.getType(e),e=>this.hasType(e))}checkCompatibility(e){return fs(e,e=>this.getType(e))}findDependentTypes(e){let t=[];for(let[n,r]of this.registeredTypes)r.dependencies?.includes(e)&&t.push(n);return t}registerBuiltinTypes(){for(let e of ls())this.registerType(e);this.logger.info(`Built-in module types registered`,{totalTypes:this.registeredTypes.size})}clearAllTypes(){this.registeredTypes.clear(),this.logger.info(`All module types cleared`)}getStats(){return ps(this.registeredTypes)}};const hs={REGISTERED:`module.registered`,UNREGISTERED:`module.unregistered`};var gs=class{modules=new Map;moduleOptions=new Map;moduleStatuses=new Map;moduleStats=new Map;registrationOrder=[];initializationOrder=[];typeRegistry;eventEmitter;logger;isDisposing=!1;constructor(e,t){this.eventEmitter=e,this.typeRegistry=t??new ms,this.logger=k(`ModuleRegistry`)}async registerModule(e,t={}){if(this.isDisposing)throw new y(`Cannot register modules during disposal`);if(as(e,this.typeRegistry,this.logger),this.modules.has(e.name))throw new y(`Module with name '${e.name}' is already registered`,{moduleName:e.name});t.validateDependencies!==!1&&await os(e,this.typeRegistry,this.modules,this.logger),this.modules.set(e.name,e),this.moduleOptions.set(e.name,t.initOptions||{}),this.registrationOrder.push(e.name);let n=e.getModuleType();this.moduleStatuses.set(e.name,{name:e.name,type:n.type,enabled:e.isEnabled(),initialized:!1,hasEventEmitter:!!this.eventEmitter,registrationTime:new Date,dependencies:n.dependencies||[],dependents:[]}),this.moduleStats.set(e.name,{totalExecutions:0,successfulExecutions:0,failedExecutions:0,averageExecutionTime:0,totalExecutionTime:0}),t.autoInitialize&&await this.initializeModule(e.name,t.initTimeout),this.eventEmitter&&await this.eventEmitter.emit(hs.REGISTERED,{data:{moduleName:e.name,moduleType:n.type},timestamp:new Date})}async unregisterModule(e){let t=this.modules.get(e);if(!t)return!1;let n=ss(e,this.modules);if(n.length>0)throw new y(`Cannot unregister module '${e}' - it is required by: ${n.join(`, `)}`,{moduleName:e,dependents:n});t.isInitialized()&&t.dispose&&await t.dispose(),this.modules.delete(e),this.moduleOptions.delete(e),this.moduleStatuses.delete(e),this.moduleStats.delete(e);let r=this.registrationOrder.indexOf(e);r!==-1&&this.registrationOrder.splice(r,1);let i=this.initializationOrder.indexOf(e);return i!==-1&&this.initializationOrder.splice(i,1),this.eventEmitter&&await this.eventEmitter.emit(hs.UNREGISTERED,{data:{moduleName:e},timestamp:new Date}),!0}async initializeModule(e,t){let n=this.modules.get(e);if(!n)throw new y(`Module '${e}' not found`);if(n.isInitialized())return;let r=this.moduleOptions.get(e),i=n.initialize(r,this.eventEmitter);if(t&&t>0){let n,r=new Promise((r,i)=>{n=setTimeout(()=>{i(Error(`Module '${e}' initialization timed out after ${t}ms`))},t)});await Promise.race([i.then(e=>(clearTimeout(n),e)),r])}else await i;let a=this.moduleStatuses.get(e);a&&(a.initialized=!0,a.initializationTime=new Date),this.initializationOrder.includes(e)||this.initializationOrder.push(e)}async initializeAllModules(e){let t=Array.from(this.modules.keys());if(t.length===0)return;let n=t.map(e=>this.modules.get(e).getModuleType().type),r=this.typeRegistry.resolveDependencies(n);if(!r.resolved){let e=[];throw r.missingDependencies.length>0&&e.push(`Missing dependencies: ${r.missingDependencies.join(`, `)}`),r.circularDependencies.length>0&&e.push(`Circular dependencies: ${r.circularDependencies.map(e=>e.join(` -> `)).join(`; `)}`),new y(`Cannot initialize modules: ${e.join(`; `)}`,{missingDependencies:r.missingDependencies,circularDependencies:r.circularDependencies.map(e=>e.join(` -> `))})}for(let n of r.order){let r=t.find(e=>this.modules.get(e).getModuleType().type===n);r&&await this.initializeModule(r,e)}}async executeModule(e,t){let n=this.modules.get(e);if(!n)throw new y(`Module '${e}' not found`);if(!n.isInitialized())throw new y(`Module '${e}' is not initialized`);if(!n.isEnabled())throw new y(`Module '${e}' is disabled`);let r=this.moduleStats.get(e),i=Date.now();try{if(!n.execute)throw new y(`Module '${e}' does not support execute()`);let a=await n.execute(t),o=Date.now()-i;r.totalExecutions++,r.successfulExecutions++,r.totalExecutionTime+=o,r.averageExecutionTime=r.totalExecutionTime/r.totalExecutions,r.lastExecutionTime=new Date;let s=this.moduleStatuses.get(e);return s&&(s.lastActivity=new Date),a}catch(e){let t=Date.now()-i;throw r.totalExecutions++,r.failedExecutions++,r.totalExecutionTime+=t,r.averageExecutionTime=r.totalExecutionTime/r.totalExecutions,r.lastExecutionTime=new Date,e}}getModule(e){return this.modules.get(e)}getModulesByType(e){return Array.from(this.modules.values()).filter(t=>t.getModuleType().type===e)}getAllModules(){return Array.from(this.modules.values())}getModuleNames(){return Array.from(this.modules.keys())}hasModule(e){return this.modules.has(e)}getModuleStatus(e){return this.moduleStatuses.get(e)}getAllModuleStatuses(){return Array.from(this.moduleStatuses.values())}getModuleStats(e){return this.moduleStats.get(e)}getAllModuleStats(){let e={};for(let[t,n]of this.moduleStats.entries())e[t]={...n};return e}async disposeAllModules(){this.isDisposing=!0;let e=[...this.initializationOrder].reverse();for(let t of e){let e=this.modules.get(t);if(e&&e.isInitialized())try{e.dispose&&await e.dispose();let n=this.moduleStatuses.get(t);n&&(n.initialized=!1)}catch(e){this.logger.error(`Failed to dispose module`,{name:t,error:e instanceof Error?e.message:String(e)})}}this.initializationOrder=[],this.isDisposing=!1}clearAllModules(){this.modules.clear(),this.moduleOptions.clear(),this.moduleStatuses.clear(),this.moduleStats.clear(),this.registrationOrder=[],this.initializationOrder=[],this.isDisposing=!1}getRegistryStats(){return cs(this.modules,this.moduleStats)}},_s=class extends Kr{version=`1.0.0`;aiProviders;tools;agentFactory;conversationHistory;moduleRegistry;eventEmitter;executionService;eventService;agentEventService;conversationId;logger;initializationPromise;destroyed=!1;isFullyInitialized=!1;startTime;configVersion=1;configUpdatedAt=Date.now();configManager;constructor(e){super(),this.config=e,this.conversationId=wi(e);let t=e.logging?.enabled===!1?`silent`:e.logging?.level;this.logger=k(`Robota`,t?{level:t}:{}),this.startTime=Date.now(),Jr(e),this.aiProviders=Ho(e),this.tools=Ti(()=>this.config),this.agentFactory=new is,this.conversationHistory=new $n,this.eventEmitter=Fi(),this.moduleRegistry=new gs(this.eventEmitter),this.eventService=e.eventService||Er,this.agentEventService=q(this.eventService,{ownerType:`agent`,ownerId:this.conversationId,ownerPath:Ii(this.conversationId,this.config.executionContext)});let n=Oi({getName:()=>this.name,getModuleRegistry:()=>this.moduleRegistry,getLogger:()=>this.logger,getIsFullyInitialized:()=>this.isFullyInitialized,ensureFullyInitialized:()=>this.ensureFullyInitialized(),getExecutionService:()=>this.executionService,getAiProviders:()=>this.aiProviders,getTools:()=>this.tools,getEventService:()=>this.eventService,getConfig:()=>this.config,setConfig:e=>{this.config=e},getConfigVersion:()=>this.configVersion,incrementConfigVersion:()=>++this.configVersion,getConfigUpdatedAt:()=>this.configUpdatedAt,setConfigUpdatedAt:e=>{this.configUpdatedAt=e},emitAgentEvent:(e,t)=>this.emitAgentEvent(e,t)});this.moduleManager=n.moduleManager,this.pluginManager=n.pluginManager,this.configManager=n.configManager,Ni(this.config,(e,t)=>this.emitAgentEvent(e,t))}async ensureReady(){await this.ensureFullyInitialized()}async listRuntimeTools(){return await this.ensureReady(),this.tools.getTools()}async invokeRuntimeTool(e,t,n){await this.ensureReady();let r=[...Ii(this.conversationId,this.config.executionContext),{type:`tool`,id:n.executionId??e}];return this.executionService.invokeRuntimeTool(e,t,{...n,baseEventService:this.eventService,eventService:q(this.eventService,{ownerPath:r,ownerType:`tool`,ownerId:n.executionId??e}),ownerPath:r,ownerType:`tool`,ownerId:n.executionId})}async run(e,t={}){return this.assertNotDestroyed(),this.runQueue.run(t.signal,async()=>{await this.ensureFullyInitialized();try{if(t.output){let n=Tn(t.output);return await Hi(this.executionDeps(),e,t,n)}return await Ri(this.executionDeps(),e,t)}finally{this.resetEphemeralHistory()}})}async*runStream(e,t={}){this.assertNotDestroyed();let n=await this.runQueue.acquire(t.signal);try{if(await this.ensureFullyInitialized(),t.output){let n=Tn(t.output);return yield*Ui(this.executionDeps(),e,t,n)}return yield*zi(this.executionDeps(),e,t)}finally{this.resetEphemeralHistory(),n()}}resetEphemeralHistory(){this.config.retainHistory===!1&&this.clearHistory()}runQueue=new qo;executionDeps(){return{conversationId:this.conversationId,config:this.config,logger:this.logger,getHistory:()=>this.getHistory(),getExecutionService:()=>this.executionService,emitAgentEvent:(e,t)=>this.emitAgentEvent(e,t)}}getHistory(){return Gi(this.conversationHistory,this.conversationId)}getFullHistory(){return Ki(this.conversationHistory,this.conversationId)}addHistoryEntry(e){qi(this.conversationHistory,this.conversationId,e)}clearHistory(){Ji(this.conversationHistory,this.conversationId)}injectMessage(e,t,n){Yi(this.conversationHistory,this.conversationId,e,t,n)}injectRawMessage(e){Xi(this.conversationHistory,this.conversationId,e)}async updateTools(e){return this.configManager.updateTools(e)}async updateConfiguration(e){return this.configManager.updateConfiguration(e)}async getConfiguration(){return this.configManager.getConfiguration()}setModel(e){this.configManager.setModel(e)}getModel(){return this.configManager.getModel()}updateSystemPrompt(e){this.configManager.setSystemMessage(e),this.conversationHistory.getConversationStore(this.conversationId).setSystemPrompt(e)}getSystemPrompt(){return this.configManager.getSystemMessage()}registerTool(e){this.configManager.registerTool(e,this.tools)}unregisterTool(e){this.tools.removeTool(e)}getOfferedToolSchemas(){return this.tools.getOfferedTools()}getConfig(){return{...this.config}}swapDefaultProvider(e,t){this.aiProviders.addProvider(e.name,e),this.configManager.setModel({provider:e.name,model:t})}getStats(){return Go({name:this.name,version:this.version,conversationId:this.conversationId,startTime:this.startTime,isFullyInitialized:this.isFullyInitialized,aiProviders:this.aiProviders,tools:this.tools,getPluginNames:()=>this.getPluginNames(),getModuleNames:()=>this.getModuleNames(),getHistory:()=>this.getHistory()})}async destroy(){return this.destroyed?{errors:[]}:(this.destroyed=!0,await this.runQueue.drained,Ko({name:this.name,isFullyInitialized:this.isFullyInitialized,moduleRegistry:this.moduleRegistry,eventEmitter:this.eventEmitter,executionService:this.executionService,tools:this.tools,aiProviders:this.aiProviders,logger:this.logger,resetState:()=>{this.isFullyInitialized=!1,this.initializationPromise=void 0}}))}assertNotDestroyed(){if(this.destroyed)throw Error(`[LIFECYCLE] Agent \"${this.name}\" has been destroyed — create a new instance`)}async initialize(){await this.ensureFullyInitialized()}async ensureFullyInitialized(){this.assertNotDestroyed(),!this.isFullyInitialized&&(this.initializationPromise||=this.doAsyncInit().catch(e=>{throw this.initializationPromise=void 0,e}),await this.initializationPromise)}doAsyncInit(){return Wo({ctx:{config:this.config,aiProviders:this.aiProviders,tools:this.tools,agentFactory:this.agentFactory,conversationHistory:this.conversationHistory,moduleRegistry:this.moduleRegistry,eventEmitter:this.eventEmitter,eventService:this.eventService,logger:this.logger},setExecutionService:e=>{this.executionService=e},setFullyInitialized:e=>{this.isFullyInitialized=e}})}emitAgentEvent(e,t){Pi(this.agentEventService,this.conversationId,this.config.executionContext,e,t)}};const vs=1e4,ys=25e3,bs=5e5,xs=/^tool-result:[A-Za-z0-9_-]{22,64}$/u,Ss=Symbol.for(`@robota-sdk/tool-result-admitted`);var Cs=class extends Error{code;constructor(e){super(`Tool result admission failed (${e})`),this.code=e,this.name=`ToolResultAdmissionError`}};function ws(e){return Object.getOwnPropertyDescriptor(e,Ss)?.value===!0}function Ts(e){return Object.defineProperty({...e},Ss,{value:!0})}function Es(e){if(e.success)return typeof e.data==`string`?e.data:JSON.stringify(e.data)??``;let t=e.data===void 0?``:typeof e.data==`string`?e.data:JSON.stringify(e.data)??``;return`${e.error??``}${t}`}function Ds(e){return Number.isSafeInteger(e)&&e>0}function Os(e,t){let n=e.warningChars??1e4,r=e.hardChars??25e3,i=e.repositoryMaxChars??5e5;if(!Ds(n)||!Ds(r)||!Ds(i)||n>=r||r>i||i>5e5)throw new Cs(`invalid-policy`);if(t===void 0)return{warningChars:n,hardChars:r};if(!Ds(t))throw new Cs(`invalid-override`);return{warningChars:n,hardChars:Math.max(r,Math.min(t,i))}}async function ks(e,t,n={},r){let{warningChars:i,hardChars:a}=Os(n,r),o=Es(t),s=o.length;if(s>i&&n.onWarning?.({toolName:e,resultChars:s,warningChars:i}),s>a){if(!n.spillStore)throw new Cs(`spill-unavailable`);let e;try{e=(await n.spillStore.write(o)).reference}catch{throw new Cs(`spill-write-failed`)}if(!xs.test(e)||e.length>a)throw new Cs(`invalid-reference`);return Ts(t.success?{success:!0,data:e}:{success:!1,error:`Tool failure details: ${e}`})}return Ts(t)}var As=class{store;listener;sequenceId=0;constructor(e,t){this.store=e,this.listener=(e,t,n)=>{if(!n?.ownerPath?.length)throw Error(`[HISTORY-MODULE] Missing ownerPath for ${e}`);let r={eventName:e,sequenceId:this.nextSequenceId(),timestamp:t.timestamp,eventData:t,context:n};this.store.append(r)},t.subscribe(this.listener)}append(e){this.store.append(e)}read(e,t){return this.store.read(e,t)}readStream(e,t){return this.store.readStream(e,t)}getSnapshot(){return this.store.getSnapshot?.()}detach(e){e.unsubscribe(this.listener)}nextSequenceId(){return this.sequenceId+=1,this.sequenceId}};const js={STARTED:`started`,STEP_STARTED:`step_started`,STEP_COMPLETED:`step_completed`,COMPLETED:`completed`,FAILED:`failed`},Ms=`orchestration`;function Z(e){if(!(!e||typeof e!=`object`||Array.isArray(e)||e instanceof Date))return e}function Ns(e){return typeof e==`string`?e.length:0}var Ps=class{config;methodConfigs=new Map;constructor(e){this.config=e}configureMethod(e,t){return this.methodConfigs.set(e,t),this}configureStandardMethods(){return this.config.sourceType===`agent`&&(this.configureMethod(`run`,{startEvent:j.EXECUTION_START,completeEvent:j.EXECUTION_COMPLETE,errorEvent:j.EXECUTION_ERROR,extractMetadata:(e,t,n)=>({inputLength:Ns(n[0]),conversationId:e.conversationId,options:Z(n[1])||{}}),extractResult:e=>({response:e})}),this.configureMethod(`runStream`,{startEvent:j.EXECUTION_START,completeEvent:j.EXECUTION_COMPLETE,errorEvent:j.EXECUTION_ERROR,extractMetadata:(e,t,n)=>({inputLength:Ns(n[0]),conversationId:e.conversationId,streaming:!0,options:Z(n[1])||{}})})),this.config.sourceType===`tool`&&this.configureMethod(`execute`,{startEvent:P.CALL_START,completeEvent:P.CALL_COMPLETE,errorEvent:P.CALL_ERROR,extractMetadata:(e,t,n)=>({toolName:Z(e.schema)?.name||e.constructor.name,parameters:n[0],parametersCount:Z(n[0])?Object.keys(Z(n[0])||{}).length:0,context:n[1]}),extractResult:e=>({result:typeof Z(e)?.data==`string`?Z(e)?.data||``:JSON.stringify(Z(e)?.data),success:Z(e)?.success})}),this}wrap(e){return new Proxy(e,{get:(e,t,n)=>{let r=Reflect.get(e,t,n);if(typeof t!=`string`)return r;let i=t;if(typeof r==`function`&&this.methodConfigs.has(i)){let t=this.methodConfigs.get(i);return async(...n)=>{let a=Date.now(),o=this.generateExecutionId(),s=e;try{if(t.startEvent){let e=t.extractMetadata?.(s,i,n)||{};this.emitEvent(t.startEvent,{timestamp:new Date,metadata:{...e,executionId:o,methodName:i,phase:`start`}})}let c=await r.apply(e,n),l=Date.now()-a;if(t.completeEvent){let e=t.extractResult?.(c)||{},r=t.extractMetadata?.(s,i,n)||{};this.emitEvent(t.completeEvent,{timestamp:new Date,...e,metadata:{...r,executionId:o,methodName:i,duration:l,phase:`complete`,success:!0}})}return c}catch(e){let r=Date.now()-a;if(t.errorEvent){let a=t.extractMetadata?.(s,i,n)||{};this.emitEvent(t.errorEvent,{timestamp:new Date,error:e instanceof Error?e.message:String(e),metadata:{...a,executionId:o,methodName:i,duration:r,phase:`error`,errorName:e instanceof Error?e.name:`UnknownError`,success:!1}})}throw e}}}return r}})}emitEvent(e,t){let n={emitterSourceType:this.config.sourceType,emitterSourceId:this.config.sourceId},r={timestamp:new Date,...t.metadata?{metadata:{...n,...t.metadata}}:{metadata:n},...t};this.config.eventService.emit(e,r)}generateExecutionId(){return`${this.config.sourceType}-${this.config.sourceId}-${Date.now()}-${Math.random().toString(36).substr(2,9)}`}};function Fs(e,t){let n=new Ps(t);return n.configureStandardMethods(),n.wrap(e)}function Is(e,t,n){return function(r){return Fs(r,{eventService:e,sourceType:t,sourceId:n})}}const Ls={safe:`plan`,moderate:`default`,full:`acceptEdits`},Rs=`inherit-allowlist`;function zs(e){let t;for(let n=0;n<e.length;n+=1){let r=e[n];if(t===`'`){r===`'`&&(t=void 0);continue}if(r===`\\\\`){n+=1;continue}let i=e[n+1];if(r===\"`\"||r===`$`&&i===`(`)return!0;if(t===`\"`){r===`\"`&&(t=void 0);continue}if(r===`'`||r===`\"`){t=r;continue}if(r===`;`||r===`|`||r===`\n`||(r===`<`||r===`>`)&&i===`(`)return!0;if(r===`&`){let t=e[n-1];if(t!==`>`&&t!==`<`&&i!==`>`)return!0}}return!1}function Bs(e){let t={segments:[],current:``,quote:void 0,substitutionDepth:0};for(let n=0;n<e.length;n+=1){let r=Hs(t,e,n);if(r!==void 0){n=r;continue}let i=Us(t,e,n);if(i!==void 0){n=i;continue}if(Ws(t,e[n]))continue;let a=Gs(t,e,n);if(a!==void 0){n=a;continue}t.current+=e[n]}return Vs(t),t.segments}function Vs(e){let t=e.current.trim();t!==``&&e.segments.push(t),e.current=``}function Hs(e,t,n){let r=t[n];if(e.quote===`'`)return e.current+=r,r===`'`&&(e.quote=void 0),n;if(r===`\\\\`){let i=t[n+1];return e.current+=i===void 0?r:r+i,n+1}}function Us(e,t,n){let r=t[n];if(r===\"`\")return Vs(e),n;if(r===`$`&&t[n+1]===`(`)return Vs(e),e.substitutionDepth+=1,n+1}function Ws(e,t){return e.quote===`\"`?(e.current+=t,t===`\"`&&(e.quote=void 0),!0):t===`'`||t===`\"`?(e.quote=t,e.current+=t,!0):!1}function Gs(e,t,n){let r=t[n];if((r===`<`||r===`>`)&&t[n+1]===`(`)return Vs(e),e.substitutionDepth+=1,n+1;if(r===`)`&&e.substitutionDepth>0)return Vs(e),--e.substitutionDepth,n;if(r===`;`||r===`|`||r===`\n`||r===`&`&&Ks(t,n))return Vs(e),n}function Ks(e,t){let n=e[t-1];return n!==`>`&&n!==`<`&&e[t+1]!==`>`}const qs=/[.+^${}()|[\\]\\\\]/g;function Js(e){let t=e.replace(qs,`\\\\$&`).replace(/\\*\\*/g,`.+`).replace(/\\*/g,`.*`);return RegExp(`^${t}$`)}function Ys(e,t,n){let r=Js(e);return n===`deny`?r.test(t)||Bs(t).some(e=>r.test(e))?`match`:`no-match`:r.test(t)?e.includes(`*`)&&zs(t)?`no-match`:`match`:`no-match`}function Xs(e){let t=e.replace(/\\*\\*(?:\\/\\*\\*)+/g,`**`).split(/(\\/\\*\\*\\/|\\/\\*\\*$|^\\*\\*\\/|\\*\\*)/).map(e=>e===`/**/`?`(?:/.*)?/`:e===`/**`?`(?:/.*)?`:e===`**/`?`(?:.*/)?`:e===`**`?`.*`:e.replace(qs,`\\\\$&`).replace(/\\*/g,`[^/]*`).replace(/\\uE000/g,`\\\\*`)).join(``);return RegExp(`^${t}$`)}function Zs(e){return e.startsWith(`/`)||/^[A-Za-z]:(?=\\/|$)/.test(e)}function Qs(e){let t=e.replace(/\\\\/g,`/`),n=t.startsWith(`/`),r=[];for(let e of t.split(`/`))if(e!==``&&e!==`.`){if(e===`..`){r.length>0&&r[r.length-1]!==`..`?r.pop():n||r.push(`..`);continue}r.push(e)}let i=(n?`/`:``)+r.join(`/`);return(i===``?`.`:i).replace(/^[A-Za-z]:(?=\\/|$)/,e=>e.toLowerCase())}function $s(e,t){let n=Qs(e),r=Qs(t);return Zs(n)&&!Zs(r)?`unevaluable`:Xs(n).test(r)?`match`:`no-match`}const ec=/^(\\*|[a-z][a-z0-9+.-]*):\\/\\/(\\[[0-9a-fA-F:.]+\\]|[^/\\\\:?#@[\\]]+)(?::(\\d+|\\*))?(\\/[^?#]*)?$/i,tc=new Set([`http`,`https`,`ws`,`wss`,`ftp`]),nc={http:`80`,https:`443`,ws:`80`,wss:`443`,ftp:`21`};function rc(e){return e.replace(/\\.$/,``).toLowerCase()}function ic(e){try{let t=new URL(`http://${e}/`).hostname;return t===``||t.includes(`.`)?null:t}catch{return null}}function ac(e){let t=rc(e).replace(/\\*\\*(?:\\.\\*\\*)+/g,`**`).split(`.`),n=[],r=`[^.]+(?:\\\\.[^.]+)*`;for(let[e,i]of t.entries()){let a=e===0,o=e===t.length-1;if(i===`**`){a&&o?n.push(r):o?n.push(`(?:\\\\.${r})?`):n.push(`${a?``:`\\\\.`}(?:${r}\\\\.)?`);continue}let s=!a&&t[e-1]===`**`,c=a||s?``:`\\\\.`;if(i===`*`)n.push(`${c}${r}`);else if(i.includes(`**`))return null;else if(i.includes(`*`))n.push(`${c}${i.replace(qs,`\\\\$&`).replace(/\\*/g,`[^.]*`)}`);else{let e=ic(i);if(e===null)return null;n.push(`${c}${e.replace(qs,`\\\\$&`)}`)}}return RegExp(`^${n.join(``)}$`)}function oc(e){try{let t=e.split(`/`).map(e=>decodeURIComponent(e));return t.some(e=>e.includes(`/`))?null:t.join(`/`)}catch{return null}}function sc(e){let t;try{t=new URL(e)}catch{return null}let n=t.protocol.slice(0,-1).toLowerCase();return!tc.has(n)||t.hostname===``||t.username!==``||t.password!==``?null:t}function cc(e,t){if(e.includes(`*`)){let n=ac(e);return n===null?`unevaluable`:n.test(t)?`match`:`no-match`}let n;try{n=new URL(`http://${e}/`).hostname}catch{return`unevaluable`}return rc(n)===t?`match`:`no-match`}function lc(e,t,n){return e===void 0?t.port===``:e===`*`||e===(t.port===``?nc[n]:t.port)}function uc(e,t){let n=oc(t),r=oc(e.replace(/%2a/gi,``));return n===null||r===null?`unevaluable`:Xs(r).test(n)?`match`:`no-match`}function dc(e,t){let n=ec.exec(e);if(n===null)return`unevaluable`;let[,r,i,a,o]=n,s=sc(t);if(s===null)return`unevaluable`;let c=s.protocol.slice(0,-1).toLowerCase();if(r!==`*`&&r.toLowerCase()!==c)return`no-match`;let l=cc(i,rc(s.hostname));return l===`match`?lc(a,s,c)?o===void 0?`match`:uc(o,s.pathname):`no-match`:l}const fc={plan:{inspect:`auto`,modify:`deny`,execute:`deny`},default:{inspect:`auto`,modify:`approve`,execute:`approve`},acceptEdits:{inspect:`auto`,modify:`auto`,execute:`approve`},bypassPermissions:{inspect:`auto`,modify:`auto`,execute:`auto`},auto:{inspect:`auto`,modify:`auto`,execute:`approve`}},pc={plan:`deny`,default:`approve`,acceptEdits:`approve`,bypassPermissions:`auto`,auto:`approve`},mc=[`.git`,`.robota`,`.claude`,`.agents`],hc=[`.mcp.json`,`.gitconfig`,`.npmrc`,`.bashrc`,`.bash_profile`,`.bash_login`,`.zshrc`,`.zshenv`,`.zprofile`,`.profile`];function gc(e){return e.replace(/\\\\/g,`/`).split(`/`).filter(e=>e!==``&&e!==`.`)}function _c(e){let t=[];for(let n of gc(e))n===`..`&&t.length>0&&t[t.length-1]!==`..`?t.pop():t.push(n);return t}function vc(e){let t=_c(e),n=t[t.length-1];if(n!==void 0&&hc.includes(n))return!0;for(let e=0;e<t.length;e+=1){let n=t[e];if(mc.includes(n)){if((n===`.robota`||n===`.claude`)&&t[e+1]===`worktrees`&&t[e+2]!==void 0){e+=2;continue}return!0}}return!1}function yc(e){let t=[];for(let n of gc(e))n===`..`?t.pop():t.push(n);return`/${t.join(`/`)}`}function bc(e){return e.replace(/^(['\"])(.*)\\1$/,`$2`)}const xc=/^(?:~|\\$HOME|\\$\\{HOME\\})(?=\\/|$)(.*)$/;function Sc(e,t){let n=bc(e),r=xc.exec(n),i;if(r!==null){let e=r[1]??``;if(t.homeDirectory===void 0)return e.replace(/\\/+/g,``)===``;i=yc(`${t.homeDirectory}/${e}`)}else if(n===``||n.startsWith(`$`))return!1;else if(n.startsWith(`/`))i=yc(n);else{if(t.cwd===void 0)return!1;i=yc(`${t.cwd}/${n}`)}if(gc(i).length<=1||t.homeDirectory!==void 0&&i===yc(t.homeDirectory))return!0;if(t.cwd!==void 0){let e=yc(t.cwd);if(e===i||e.startsWith(`${i}/`))return!0}return!1}const Cc=new Set([`rm`,`rmdir`]),wc=new Map([[`sudo`,new Set([`-u`,`-g`,`-h`,`-p`,`-C`,`-D`,`-r`,`-t`,`-U`,`-T`])],[`nice`,new Set([`-n`])],[`env`,new Set([`-u`,`-C`,`-S`])],[`command`,new Set],[`builtin`,new Set],[`nohup`,new Set],[`time`,new Set]]);function Tc(e){let t=0,n;for(;t<e.length;){let r=e[t];if(/^[A-Za-z_]\\w*=/.test(r)){t+=1;continue}let i=wc.get(r);if(i!==void 0){n=i,t+=1;continue}if(n!==void 0&&r.startsWith(`-`)){t+=n.has(r)?2:1;continue}return t}return t}function Ec(e,t){return Bs(e).some(e=>{let n=e.split(/\\s+/).filter(e=>e!==``),r=Tc(n),i=n[r];if(i===void 0)return!1;let a=i.slice(i.lastIndexOf(`/`)+1);if(!Cc.has(a))return!1;let o=!1;return n.slice(r+1).some(e=>!o&&e===`--`?(o=!0,!1):!o&&e.startsWith(`-`)?!1:Sc(e,t))})}const Dc=new Set([`ls`,`cat`,`echo`,`pwd`,`head`,`tail`,`grep`,`wc`,`which`,`stat`,`du`,`cd`]),Oc=new Set([`-exec`,`-execdir`,`-ok`,`-okdir`,`-delete`,`-fprint`,`-fprint0`,`-fprintf`,`-fls`]),kc={ls:`aAlhtrSR1dFGinpsucCgmoQvx`,cat:`nbsvetAE`,head:`nqvc`,tail:`nqvcfF`,grep:`rinlLvcwxEFGPHhoqsABCmz`,wc:`lwcmL`,stat:`cftx`,du:`hsacdkmx`,which:`a`,pwd:`LP`,cd:`LP`},Ac=/^--?[A-Za-z0-9-]*(file|from|contents)(=|$)/,jc=[`--dereference`,`--dereference-recursive`,`--dereference-args`,`--dereference-command-line`,`--file`,`--files0-from`,`--exclude-from`,`--from-file`,`--to-file`,`--contents`,`--ignore-revs-file`,`--output`,`--output-directory`,`--ext-diff`,`--no-index`,`--open-files-in-pager`];function Mc(e){if(!e.startsWith(`--`)||e.length<=2)return!1;let t=e.split(`=`,1)[0];return jc.some(e=>e.startsWith(t))}function Nc(e,t){if(Gc(t).some(e=>Ac.test(e.text)||Mc(e.text)))return!0;if(e===`find`)return Gc(t).some(e=>e.text===`-L`||e.text===`-follow`);let n=kc[e];return n!==void 0&&Gc(t).some(({text:e})=>e.startsWith(`--`)||!/^-[A-Za-z]/.test(e)?!1:[...e.slice(1)].some(e=>!/\\d/.test(e)&&!n.includes(e)))}const Pc=new Set([`status`,`log`,`diff`,`show`,`rev-parse`,`ls-files`,`describe`,`branch`,`remote`]),Fc=new Set([`-l`,`--list`,`--show-current`,`--merged`,`--no-merged`,`--contains`,`--no-contains`,`--points-at`]),Ic=new Set([`-a`,`--all`,`-r`,`--remotes`,`-v`,`-vv`,`--verbose`,`--color`,`--no-color`]),Lc=new Set([`/dev/null`]),Rc=/[A-Za-z0-9_./:=@+,*?[\\]~-]/,zc=new Set([`$`,\"`\",`\\\\`,`!`]),Bc=new Set([`*`,`?`,`[`]);function Vc(e){return/(^|[=,:])[/~]/.test(e)||/^-[A-Za-z]+[/~]/.test(e)||/(^|[/=,:]|^-[A-Za-z]+)\\.\\.(\\/|$)/.test(e)||/(^|[=,])[A-Za-z][A-Za-z0-9]*:/.test(e)||Hc(e)}function Hc(e){let t=e.split(`/`),n=e=>/[*?[]/.test(e);if(t.slice(0,-1).some(n))return!0;let r=t[t.length-1];return n(r)&&/^[.?[]/.test(r)}function Uc(e){let t;for(let n of e){if(t===`'`){n===`'`&&(t=void 0);continue}if(n===`$`||n===\"`\"||n===`\\\\`)return!0;if(t===`\"`){n===`\"`&&(t=void 0);continue}if(n===`'`||n===`\"`)t=n;else if(n===`(`||n===`)`||n===`{`||n===`}`)return!0}return!1}function Wc(e){let t=[],n=``,r=!1,i=!1,a,o,s=!1,c=()=>{i&&=(o===`output`?(!Lc.has(n)||r)&&(s=!0):o===`duplicate`?/^(\\d+|-)$/.test(n)||(s=!0):o===`input`?(r||Vc(n))&&(s=!0):t.push({text:n,expands:r}),o=void 0,n=``,r=!1,!1)};for(let t=0;t<e.length&&!s;t+=1){let l=e[t];if(a===`'`){l===`'`?a=void 0:n+=l;continue}if(a===`\"`){l===`\"`?a=void 0:zc.has(l)?s=!0:n+=l;continue}if(l===`'`||l===`\"`){a=l,i=!0;continue}if(l===` `||l===`\t`){c();continue}if(l===`>`||l===`<`||l===`&`&&e[t+1]===`>`){i&&!/^\\d+$/.test(n)&&c(),n=``,r=!1,i=!1,l===`&`&&(t+=1);let a=l===`&`?`>`:l,u=e[t+1];if(a===`<`&&(u===`<`||u===`>`)){s=!0;break}if((u===a||u===`|`)&&(t+=1,u=e[t+1]),u===`&`&&l!==`&`){t+=1,o=`duplicate`;continue}o=a===`>`?`output`:`input`;continue}if(!Rc.test(l)){s=!0;break}Bc.has(l)&&(r=!0),n+=l,i=!0}return a!==void 0&&(s=!0),c(),o!==void 0&&(s=!0),{words:t,refused:s}}function Gc(e){let t=e.findIndex(e=>e.text===`--`);return(t<0?e:e.slice(0,t)).filter(e=>e.text.startsWith(`-`))}function Kc(e){return e.every(e=>!e.expands&&!Oc.has(e.text))}function qc(e){let t=e.filter(e=>e.text.startsWith(`-`)),n=t.some(e=>Fc.has(e.text));return t.every(e=>Fc.has(e.text)||Ic.has(e.text))&&(n||t.length===e.length)}function Jc(e){let[t,...n]=e[0]?.text===`--no-pager`?e.slice(1):e;return t===void 0||t.expands||!Pc.has(t.text)||n.some(e=>e.expands)||n.some(e=>/^-[XO]/.test(e.text))||n.some(e=>/^--(output|ext-diff|open-files-in-pager|no-index)/.test(e.text))?!1:t.text===`branch`?qc(n):t.text!==`remote`||n.every(e=>e.text===`-v`||e.text===`--verbose`)}function Yc(e){let[t,...n]=e;return t===void 0||t.expands||t.text.includes(`=`)||t.text.includes(`/`)||n.some(e=>/^[@=]/.test(e.text))||n.some(e=>e.expands)?!1:t.text===`echo`?!0:n.some(e=>Vc(e.text))||Nc(t.text,n)?!1:t.text===`cd`?n.length===1&&n[0].text!==`-`&&!n[0].expands:Dc.has(t.text)?!0:t.text===`find`?Kc(n):t.text===`git`&&Jc(n)}const Xc=new Set([`echo`,`which`,`git`]);function Zc(e,t){let n;for(let[r,...i]of e)if(!Xc.has(r.text))for(let e of i){if(e.text===`--`)continue;if(t===void 0)return!1;let i=t(n,e.text);if(i===void 0)return!1;r.text===`cd`&&(n=i)}return!0}function Qc(e,t={}){if(t.otherDirectory===!0||e.length>1e4||Uc(e)||/[^\\t\\n\\x20-\\x7e]/.test(e))return!1;let n=Bs(e);if(n.length===0)return!1;let r=n.map(Wc);if(r.some(e=>e.refused||!Yc(e.words)))return!1;let i=r.map(e=>e.words[0].text);return i.includes(`git`)&&i.includes(`cd`)?!1:Zc(r.map(e=>e.words),t.resolveInWorkspace)}function $c(e){let t=e.indexOf(`(`);return t===-1?{toolName:e.trim(),argPattern:void 0}:{toolName:e.slice(0,t).trim(),argPattern:e.slice(t+1,e.lastIndexOf(`)`)).trim()}}const Q=new Map;function el(e,t){Q.set(e,{...Q.get(e),...t})}function tl(){Q.clear()}function nl(e){return Q.get(e)??{}}function rl(e,t){let n=[t,...Q.get(t)?.aliases??[]];if(!e.includes(`*`))return n.includes(e);let r=Js(e);return n.some(e=>r.test(e))}function il(e,t){let n=/^([A-Za-z_]\\w*):([\\s\\S]*)$/.exec(t);if(n===null)return;let r=n[1],i=Q.get(e);if(i?.argument?.key===r)return`primary`;if(i?.parameters?.includes(r)===!0)return{name:r,value:n[2]}}function al(e,t){if(!Object.prototype.hasOwnProperty.call(t,e.name))return`no-match`;let n=t[e.name];return n===void 0?`no-match`:typeof n!=`string`&&typeof n!=`number`&&typeof n!=`boolean`?`unevaluable`:Js(e.value).test(String(n))?`match`:`no-match`}function ol(e,t){return t.some(t=>{let n=$c(t);return(n.argPattern===void 0||n.argPattern===`*`||n.argPattern===`**`)&&rl(n.toolName,e)})}function sl(e){return Q.get(e)?.argument?.key}function cl(e,t){let n=sl(e);if(n===void 0)return;let r=t[n];return typeof r==`string`?r:void 0}function ll(e,t,n,r=`allow`){return n.some(n=>dl(e,t,n,r)===`match`)}function ul(e,t,n){return n.some(n=>dl(e,t,n,`deny`)===`unevaluable`)}function dl(e,t,n,r){let i=$c(n);if(!rl(i.toolName,e))return`no-match`;if(i.argPattern===void 0||i.argPattern===`*`||i.argPattern===`**`)return`match`;let a=il(e,i.argPattern);if(a===`primary`)return`unevaluable`;if(a!==void 0)return r===`deny`?al(a,t):`no-match`;let o=Q.get(e)?.argument;if(o===void 0)return`unevaluable`;let s=cl(e,t);if(s===void 0)return`no-match`;switch(o.kind){case`url`:return dc(i.argPattern,s);case`path`:return $s(i.argPattern,s);case`command`:return Ys(i.argPattern,s,r);case`text`:return Js(i.argPattern).test(s)?`match`:`no-match`;default:{let e=o.kind;throw Error(`unknown argument kind: ${String(e)}`)}}}function fl(e,t,n){let r=Q.get(e),i=r?.argument;if(i===void 0)return!1;let a=t[i.key];return typeof a==`string`?i.kind===`command`?Ec(a,n):i.kind===`path`&&r?.riskClass===`modify`&&vc(a):!1}function pl(e,t,n,r){return ll(e,t,n,`deny`)||ul(e,t,n)||fl(e,t,r)}function ml(e,t,n={},r={}){return ul(e,t,n.deny??[])||pl(e,t,n.ask??[],r)}const hl=[`workingDirectory`,`cwd`];function gl(e,t,n){let r=Q.get(e);if(r?.riskClass!==`execute`||r.argument?.kind!==`command`)return r?.riskClass;let i=t[r.argument.key];return typeof i==`string`&&Qc(i,{otherDirectory:hl.some(e=>t[e]!==void 0),...n.resolveInWorkspace===void 0?{}:{resolveInWorkspace:n.resolveInWorkspace}})?`inspect`:r.riskClass}function _l(e,t,n,r={},i={}){let{allow:a=[],deny:o=[],ask:s=[]}=r,c=gl(e,t,i),l=n===`plan`&&c!==`inspect`?`deny`:`approve`;return ll(e,t,o,`deny`)||i.ceiling!==void 0&&!ll(e,t,i.ceiling)||Q.get(e)?.repliesToPeer===!0&&i.peerTurn!==!0||Q.get(e)?.notInPeerTurn===!0&&i.peerTurn===!0?`deny`:ul(e,t,o)?n===`plan`?`deny`:`approve`:pl(e,t,s,i)||i.askAll===!0?l:n===`bypassPermissions`||ll(e,t,a)||i.sandboxAutoApproved===!0&&c===`execute`&&(n===\"default\"||n===`acceptEdits`||n===`auto`)?`auto`:c===void 0?pc[n]:fc[n][c]}function vl(e,t={}){let n=t.taskDeny??[];switch(e){case`deny`:return{ceiling:[],askAll:!1,allow:[],deny:n};case`prompt`:return{askAll:!0,allow:[],deny:n};case`preapproved`:{let e=t.taskAllow??[];return{ceiling:e,askAll:!1,allow:e,deny:n}}case`inherit-allowlist`:return{ceiling:t.parentAllow??[],askAll:!1,allow:[],deny:n};default:throw Error(`unknown permission policy: ${String(e)}`)}}const yl=/^[A-Za-z_]\\w*:(?!\\/\\/)/;function bl(e){return e.slice(0,e.indexOf(`*`)).includes(`__`)}function xl(e,t=`deny`){let n=e.trim();if(n===``)return`is empty`;if(n.includes(`(`)&&!n.endsWith(`)`))return`opens \"(\" without closing it`;let{toolName:r,argPattern:i}=$c(n);if(r===``)return`names no tool`;if(t===`allow`&&r.includes(`*`)&&!bl(r))return`globs the tool name without a literal \"<server>__\" prefix, which an allow rule may not do`;if(i===void 0||i===`*`||i===`**`)return;if(i===``)return`has an empty argument pattern; write Tool or Tool(*) instead`;if(r.includes(`*`))return t===`allow`&&yl.test(i)?`matches a named parameter, which only deny and ask rules may do`:void 0;let a=il(r,i);if(a!==void 0&&a!==`primary`)return t===`allow`?`matches a named parameter, which only deny and ask rules may do`:void 0;let o=nl(r);if(!(o.parameters===void 0&&yl.test(i)&&il(r,i)===void 0)){if(o.argument===void 0)return o.riskClass===void 0?void 0:`tool \"${r}\" declares no argument key, so an argument-scoped pattern can never be evaluated`;if(o.argument.kind===`url`&&dc(i,`https://probe.invalid/`)===`unevaluable`)return`does not fit the URL pattern grammar scheme://host[:port][/path] that \"${r}\" is matched by`}}function Sl(e,t=`deny`){let n=[];for(let r of e){let e=xl(r,t);e!==void 0&&n.push({pattern:r,reason:e})}return n}function Cl(e){let t=[];for(let n of e){let{toolName:e,argPattern:r}=$c(n.trim());if(r===void 0||e.includes(`*`))continue;let i=nl(e),a=il(e,r);if(a===void 0&&i.parameters!==void 0&&i.argument?.kind!==`url`&&yl.test(r)){t.push({pattern:n,reason:`names no parameter of \"${e}\" (${i.parameters.join(`, `)}), so it is read as an ordinary argument pattern`});continue}if(a!==`primary`)continue;let o=nl(e).argument?.key??``;t.push({pattern:n,reason:`names \"${e}\"'s primary field \"${o}\", so it asks on every call; write ${e}(${r.slice(o.length+1)}) instead`})}return t}function wl(e){return(e??[]).map(e=>`${e}(*)`)}function Tl(e,t){let n=wl(t.allowedTools),r=Sl(n,`allow`);if(r.length>0){let e=r.map(({pattern:e,reason:t})=>`\"${e}\" ${t}`).join(`; `);throw Error(`Invalid preset allowedTools: ${e}.`)}return{allow:[...e.allow,...n],deny:[...new Set([...e.deny,...wl(t.deniedTools)])]}}const El=[`Bash`,`Shell`,`BackgroundProcess`],Dl=[`Agent`],Ol=[...El,...Dl,`ExecuteCommand`,`Computer`],kl=`python.node.deno.bun.ruby.perl.php.bash.sh.zsh.fish.pwsh.powershell.cmd.env.xargs.eval.exec.sudo.timeout.nohup.nice.time.command.setsid.stdbuf.watch.ssh.docker.podman.find`.split(`.`),Al=[`npm run`,`npm run-script`,`npm exec`,`npm x`,`npx`,`pnpm`,`pnpx`,`yarn`,`bunx`,`uv run`,`uvx`,`pipx run`,`cargo run`,`go run`,`make`,`just`].map(e=>e.split(` `)),jl=new Set([`run`,`run-script`,`exec`,`dlx`,`x`,`--`]);function Ml(e){return(e.split(/[\\\\/]/).pop()??e).replace(/(\\.exe)?$/i,``).replace(/[\\d.]+$/,``)}function Nl(e,t){if(e.length===0)return!0;let n=(e,n,r)=>t&&r?e.startsWith(n):e===n,r=Ml(e[0]);if(kl.some(t=>n(t,r,e.length===1)))return!0;for(let i of Al){let a=Math.min(i.length,e.length);if(!i.slice(0,a).every((t,i)=>n(t,i===0?r:e[i],i===e.length-1)))continue;if(e.length<=i.length)return!0;let o=e.slice(i.length);for(;o.length>0&&(o[0].startsWith(`-`)||jl.has(o[0]));)o=o.slice(1);return o.length===0||Nl(o,t)}return!1}function Pl(e){let t=e.trim();if(!t.includes(`*`))return!1;let n=t.slice(0,t.indexOf(`*`));return Nl(n.trim().split(/\\s+/).filter(e=>e.length>0),n.length>0&&!/\\s$/.test(n))}function Fl(e){let{toolName:t,argPattern:n}=$c(e),r=e=>e.some(e=>rl(t,e));return r(Dl)?!0:t.includes(`*`)?r(Ol):Ol.includes(t)||nl(t).riskClass===`execute`?n===void 0||n.trim()===`*`||El.includes(t)&&Pl(n):!1}function Il(e){return e.filter(e=>!Fl(e))}const Ll=1e6,Rl={\"claude-opus-4-7\":{inputPerMillion:15,outputPerMillion:75},\"claude-opus-4-5\":{inputPerMillion:15,outputPerMillion:75},\"claude-sonnet-4-6\":{inputPerMillion:3,outputPerMillion:15},\"claude-sonnet-4-5\":{inputPerMillion:3,outputPerMillion:15},\"claude-haiku-4-5\":{inputPerMillion:.8,outputPerMillion:4},\"claude-3-5-sonnet-20241022\":{inputPerMillion:3,outputPerMillion:15},\"claude-3-5-haiku-20241022\":{inputPerMillion:.8,outputPerMillion:4},\"claude-3-opus-20240229\":{inputPerMillion:15,outputPerMillion:75},\"gpt-4o\":{inputPerMillion:2.5,outputPerMillion:10},\"gpt-4o-mini\":{inputPerMillion:.15,outputPerMillion:.6},o1:{inputPerMillion:15,outputPerMillion:60},\"o1-mini\":{inputPerMillion:3,outputPerMillion:12},o3:{inputPerMillion:10,outputPerMillion:40},\"o3-mini\":{inputPerMillion:1.1,outputPerMillion:4.4},\"deepseek-chat\":{inputPerMillion:.14,outputPerMillion:.28},\"deepseek-reasoner\":{inputPerMillion:.55,outputPerMillion:2.19},\"gemini-2.0-flash\":{inputPerMillion:.1,outputPerMillion:.4},\"gemini-2.0-flash-thinking\":{inputPerMillion:.35,outputPerMillion:3.5},\"gemini-1.5-pro\":{inputPerMillion:1.25,outputPerMillion:5},\"gemini-1.5-flash\":{inputPerMillion:.075,outputPerMillion:.3}},zl=[{pattern:/claude-opus/i,price:{inputPerMillion:15,outputPerMillion:75}},{pattern:/claude-sonnet/i,price:{inputPerMillion:3,outputPerMillion:15}},{pattern:/claude-haiku/i,price:{inputPerMillion:.8,outputPerMillion:4}},{pattern:/gpt-4o-mini/i,price:{inputPerMillion:.15,outputPerMillion:.6}},{pattern:/gpt-4/i,price:{inputPerMillion:2.5,outputPerMillion:10}},{pattern:/deepseek/i,price:{inputPerMillion:.14,outputPerMillion:.28}},{pattern:/gemini-2/i,price:{inputPerMillion:.1,outputPerMillion:.4}},{pattern:/gemini-1/i,price:{inputPerMillion:1.25,outputPerMillion:5}}];function Bl(e){let t=Object.hasOwn(Rl,e)?Rl[e]:void 0;if(t)return t;for(let{pattern:t,price:n}of zl)if(t.test(e))return n}function Vl(e,t,n){let r=Bl(e);if(r)return t/Ll*r.inputPerMillion+n/Ll*r.outputPerMillion}function Hl(e){let t=Bl(e);if(t)return(t.inputPerMillion+t.outputPerMillion)/2/1e3}function Ul(e,t){if(!e.matcher)return!0;if(!t)return!1;try{return new RegExp(e.matcher).test(t)}catch{return e.matcher===t}}function Wl(e){if(e.tool_name)return e.tool_name;if(e.hook_event_name===`SubagentStart`||e.hook_event_name===`SubagentStop`)return e.agent_type??e.agent_id;if(e.hook_event_name===`SessionEnd`)return e.reason}async function Gl(){let[{CommandExecutor:e},{HttpExecutor:t}]=await Promise.all([import(`./command-executor-DV-H2oD6.js`).then(e=>e.n),import(`./http-executor-cWzI2svn.js`).then(e=>e.n)]);return[new e,new t]}async function Kl(e,t,n,r,i){if(!e)return{blocked:!1,stdout:``};let a=new Set,o=[],s=()=>({...a.size>0&&{unknownHookTypes:[...a].sort()},...o.length>0&&{errors:[...o]}}),c=e[t];if(!c||c.length===0)return{blocked:!1,stdout:``};let l=r??await Gl(),u=new Map;for(let e of l)u.set(e.type,e);let d=[],f=Wl(n),p=-1,m,h;for(let e of c){if(!Ul(e,f))continue;let r=e.env?{...n,env:{...n.env,...e.env}}:n;for(let n of e.hooks){let e=u.get(n.type);if(!e){a.add(n.type);continue}let c=n.type===`command`&&i!==void 0?await e.execute(n,r,i):await e.execute(n,r);if(c.outcome===`deny`)return{blocked:!0,reason:c.reason||`Blocked by hook`,stdout:d.join(`\n`),...s()};if(c.outcome===`error`){o.push(c);continue}let l=le(c.stdout,t);if(d.push(...l.context),l.blockReason!==void 0)return{blocked:!0,reason:l.blockReason,stdout:d.join(`\n`),...l.permissionDecision===`deny`&&{permissionDecision:`deny`},...s()};if(l.permissionDecision!==void 0){let e=ce[l.permissionDecision];e>p&&(p=e,m=l.permissionDecision),e>=p&&l.updatedInput!==void 0&&(h=l.updatedInput)}}}let g={blocked:!1,stdout:d.join(`\n`)};m!==void 0&&(g.permissionDecision=m),h!==void 0&&(g.updatedInput=h);let{unknownHookTypes:_,errors:v}=s();return _!==void 0&&(g.unknownHookTypes=_),v!==void 0&&(g.errors=v),g}var ql=class extends Error{guardrailName;guardrailReason;constructor(e,t){super(t),this.guardrailName=e,this.guardrailReason=t,this.name=`GuardrailBlock`}},Jl=class{type=`guardrail`;guardrails;constructor(e){this.guardrails=e instanceof Map?new Map(e):new Map(Object.entries(e))}async execute(e,t){if(e.type!==`guardrail`)return{outcome:`error`,source:`guardrail`,kind:`malformed-response`,reason:`GuardrailExecutor received a '${e.type}' definition`};if(e.guardrails){let t=e.guardrails.filter(e=>!this.guardrails.has(e));if(t.length>0)return{outcome:`deny`,source:`guardrail`,reason:`Unknown guardrail(s) referenced but not registered: ${t.join(`, `)}`}}let n=this.selectGuardrails(e.guardrails);if(n.length===0)return{outcome:`allow`,source:`guardrail`,stdout:``};try{await Promise.all(n.map(async([e,n])=>{let r;try{r=await n(t)}catch(t){throw new ql(e,`Guardrail \"${e}\" errored: ${t instanceof Error?t.message:String(t)}`)}if(!r.pass)throw new ql(e,r.reason??`Guardrail \"${e}\" blocked the turn`)}))}catch(e){if(e instanceof ql)return{outcome:`deny`,source:`guardrail`,reason:e.guardrailReason};throw e}return{outcome:`allow`,source:`guardrail`,stdout:``}}selectGuardrails(e){if(!e)return[...this.guardrails.entries()];let t=[];for(let n of e){let e=this.guardrails.get(n);e&&t.push([n,e])}return t}};function $(e){return{posture:`advisory`,enforcementReachable:!1,rationale:`Fire-and-forget at ${e}: the result is never awaited, so no posture can be honoured here.`}}function Yl(e,t){return{posture:`advisory`,enforcementReachable:!1,rationale:`Awaited at ${e} but only ${t} is read; \\`blocked\\` is never consulted.`}}function Xl(e){for(let t of Object.values(e))Object.freeze(t);return Object.freeze(e)}const Zl=Xl({PreToolUse:{posture:`enforcing`,enforcementReachable:!0,rationale:\"The tool-execution gate. `runPreToolHook` awaits the result and turns `blocked` into a denial, so a hook that reached no verdict must not read as approval (tracker issue #2075).\"},SessionEnd:Yl(`session-lifecycle.ts`,`nothing`),PreCompact:Yl(`compaction-orchestrator.ts`,`nothing`),UserPromptSubmit:Yl(`session-run.ts`,\"`stdout`\"),PostToolUse:$(`tool-hook-helpers.ts`),SessionStart:$(`session-lifecycle.ts`),PostCompact:$(`session-history-ops.ts`),Stop:$(`session-run.ts`),StopFailure:$(`session-run.ts`),SubagentStart:$(`background-task-hooks.ts`),SubagentStop:$(`background-task-hooks.ts`),WorktreeCreate:$(`worktree-subagent-runner.ts`),WorktreeRemove:$(`worktree-subagent-runner.ts`),PreModelCall:$(`session-run.ts`),PostModelCall:$(`session-run.ts`),PermissionDecision:$(`permission-enforcer.ts`)});function Ql(e){return Zl[e].posture===`enforcing`}export{j as AGENT_EVENTS,Tt as AGENT_EVENT_PREFIX,bt as AbstractAIProvider,Ke as AbstractAgent,wr as AbstractEventService,Nt as AbstractExecutor,qe as AbstractManager,Mt as AbstractPlugin,Pt as AbstractTool,is as AgentFactory,$o as AgentTemplates,E as AuthenticationError,Fe as CONFIRM_NO,Pe as CONFIRM_YES,ii as CONTEXT_ESTIMATE_CHARS_PER_TOKEN,C as CacheIntegrityError,b as CircuitBreakerOpenError,y as ConfigurationError,pt as ConsoleLogger,$n as ConversationHistory,Qn as ConversationStore,Er as DEFAULT_ABSTRACT_EVENT_SERVICE,Rs as DEFAULT_BACKGROUND_PERMISSION_POLICY,pi as DEFAULT_CONTEXT_WINDOW,yi as DEFAULT_MAX_OUTPUT,ys as DEFAULT_TOOL_RESULT_HARD_CHARS,vs as DEFAULT_TOOL_RESULT_WARNING_CHARS,Hr as DEFERRED_WITHOUT_LOADER_MESSAGE,Tr as DefaultEventService,Ln as ENV_REFERENCE_PREFIX,I as EVENT_EMITTER_EVENTS,M as EXECUTION_EVENTS,N as EXECUTION_EVENT_PREFIX,Ut as ErrorUtils,mr as EventEmitterPlugin,As as EventHistoryModule,Ps as ExecutionProxy,Br as FunctionTool,Jl as GuardrailExecutor,ar as InMemoryEventEmitterMetrics,nr as LocalExecutor,bs as MAX_TOOL_RESULT_CHARS,ge as MODEL_EFFORT_VALUES,Rl as MODEL_PRICES,Lt as MessageConverter,p as ModelNotAvailableError,ie as NetworkError,js as ORCHESTRATION_EVENTS,Ms as ORCHESTRATION_EVENT_PREFIX,Mr as ObservableEventService,s as PARAMETER_SCHEMA_KEYWORDS,r as PERMISSIVE_TOOL_SCHEMA_PROFILE,mc as PROTECTED_DIRECTORY_NAMES,hc as PROTECTED_FILE_NAMES,Pr as PROVIDER_CALL_EVENTS,Fr as PROVIDER_FALLBACK_EVENTS,Ct as PluginCategory,se as PluginError,wt as PluginPriority,h as ProviderError,fc as RISK_CLASS_POLICY,oe as RateLimitError,_s as Robota,d as RobotaError,Nr as SPAN_EVENTS,zr as SPAN_EVENT_PREFIX,a as STRICT_TOOL_SCHEMA_PROFILE,c as SameToolInputLoopError,dt as SilentLogger,ae as StorageError,Ar as StructuredEventService,f as StructuredOutputError,ki as TASK_EVENTS,Ai as TASK_EVENT_PREFIX,Lr as TOOL_BODY_EVENTS,P as TOOL_EVENTS,Et as TOOL_EVENT_PREFIX,Rr as TOOL_PERMISSION_EVENTS,n as TOOL_SCHEMA_PROJECTION_MAX_DEPTH,e as TOOL_SCHEMA_PROJECTION_MAX_NODES,Ne as TOOL_SEARCH_TOOL_NAME,Ls as TRUST_TO_MODE,u as ToolExecutionError,gr as ToolRegistry,Cs as ToolResultAdmissionError,D as TypeUtils,pc as UNCLASSIFIED_TOOL_FALLBACK,ji as USER_EVENTS,Mi as USER_EVENT_PREFIX,_ as UnsupportedShellError,l as ValidationError,R as Validator,ks as admitToolResult,Il as allowRulesForAutoMode,Tl as applyPresetToolLists,pe as assertProviderNativeWebToolsAvailable,Gr as assertResidentToolRemains,jr as bindEventServiceOwner,q as bindWithOwnerPath,w as buildTraceparent,Vl as calculateModelCost,$e as chatEntryToMessage,on as classifyProviderFailure,tl as clearRegisteredToolProfiles,t as closeObjectSchemas,po as collectAssistantUsageMetadata,Or as composeEventName,Le as confirmAction,Jn as createAssistantMessage,ne as createBoundedOutput,fe as createDefaultProviderCapabilities,Fs as createExecutionProxy,Fn as createImageProviderFromDefinition,k as createLogger,ve as createModelEffortOutcome,Un as createProviderFromConfig,Mn as createRecordEnvResolver,Yn as createSystemMessage,Xn as createToolMessage,qn as createUserMessage,In as createVideoProviderFromDefinition,ue as decodeHookVerdict,Hl as estimateBlendedCostPer1000,si as estimateContextTokensFromMessages,ai as estimateSerializedContextTokens,oi as estimateToolSchemaTokens,_l as evaluatePermission,mn as extractEnumValues,Sl as findInvalidPermissionPatterns,Me as findMediaProviderDefinition,_i as findModelDefinition,Cl as findPermissionPatternWarnings,Ce as findProviderDefinition,zn as formatEnvReference,we as formatSupportedProviderTypes,Si as formatTokenCount,kr as generateSpanId,gt as getGlobalLogLevel,vt as getGlobalLoggerSink,tt as getMessagesForAPI,vi as getModelContextWindow,bi as getModelMaxOutput,xi as getModelName,Se as getProviderCapabilities,Te as getProviderCredentialRequirement,gn as getSchemaTypeName,Ue as getToolEstimatedDuration,We as getToolExecutionSteps,nl as getToolPermissionProfile,Vn as hasUsableSecretReference,hn as hasValidationConstraints,i as hashToolSchema,L as isAbortFailure,rt as isAssistantMessage,Fl as isBroadExecutionAllowRule,O as isChatEntry,Ve as isConfirmed,Dr as isDefaultEventService,Ql as isEnforcing,Rn as isEnvReference,ke as isImageGenerationProvider,je as isMediaProviderDefinition,ee as isMintedSpanId,_e as isModelEffort,He as isProgressReportingTool,vc as isProtectedPath,Qc as isReadOnlyCommandLine,ts as isRegistryTransactionError,it as isSystemMessage,ol as isToolDeniedOutright,at as isToolMessage,nt as isUserMessage,Ae as isVideoGenerationProvider,es as lifecycleOf,A as logger,Bl as lookupModelPrice,ll as matchesAnyPattern,et as messageToHistoryEntry,De as modelDeclaresCapability,ze as multiSelectAction,Hn as normalizeProviderConfig,Tn as normalizeStructuredOutput,x as outboundTraceContextFor,il as parseParameterRule,kn as parseStructuredResponseText,vo as peerDriverOf,yo as printablePeerDriver,G as processEnvResolver,vl as projectPermissionPolicy,o as projectToolSchema,m as providerCallSpanId,Ir as readModelFallbackNotice,Xt as readProviderFailureDetails,Zr as readTokenUsageFromMessage,Qr as readTokenUsageFromMetadata,hi as registerModelMetadata,el as registerToolPermissionProfile,Ec as removesCriticalPath,ml as requiresFreshApproval,Bn as resolveEnvReference,Pn as resolveMediaProviderConfig,Ee as resolveModelCapabilities,Oe as resolveModelCapability,xe as resolveModelEffort,v as resolvePlatformShell,jn as resolveStructuredOutputCapability,Kl as runHooks,ns as runRegistryTransaction,Re as selectAction,ht as setGlobalLogLevel,_t as setGlobalLoggerSink,Ge as setToolProgressCallback,ir as shellArgumentForDisplay,T as spanIdFromMintedId,Bs as splitCommandSegments,sn as startPeriodicTask,cn as stopPeriodicTask,te as subprocessTraceEnvironment,uo as sumHistoryUsage,lo as sumMessagesUsage,Be as textAction,$t as toProviderError,rl as toolNameMatches,wl as toolNamesToPatterns,g as toolTraceContextFor,S as traceEnvFor,re as traceHeadersFor,W as validateAgainstJsonSchema,Rt as validateAgentConfig,Ht as validateApiKey,Vt as validateModelName,xl as validatePermissionPattern,Bt as validateProviderName,zt as validateUserInput,ws as wasToolResultAdmitted,Is as withEventEmission,_n as zodToJsonSchema};\n//# sourceMappingURL=index.js.map"],"mappings":"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"}