@theokit/sdk 4.63.3 → 5.0.0-next.1

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 (788) hide show
  1. package/CHANGELOG.md +729 -0
  2. package/dist/a2a/index.cjs +29 -13
  3. package/dist/a2a/index.cjs.map +1 -1
  4. package/dist/a2a/index.d.cts +1 -1
  5. package/dist/a2a/index.d.ts +1 -1
  6. package/dist/a2a/index.js +26 -11
  7. package/dist/a2a/index.js.map +1 -1
  8. package/dist/a2a/message-bus.d.cts +26 -3
  9. package/dist/a2a/message-bus.d.ts +26 -3
  10. package/dist/a2a/subagent.d.cts +8 -3
  11. package/dist/a2a/subagent.d.ts +8 -3
  12. package/dist/agent-2E7DI47Y.cjs +67 -0
  13. package/dist/{agent-PVINJTUR.cjs.map → agent-2E7DI47Y.cjs.map} +1 -1
  14. package/dist/{agent-BFno7Sfn.d.ts → agent-CdYJfKr6.d.ts} +205 -36
  15. package/dist/{agent-X0DKA943.d.cts → agent-CgNzshyV.d.cts} +205 -36
  16. package/dist/agent-XMKRP27S.js +58 -0
  17. package/dist/{agent-3JK7VXNN.js.map → agent-XMKRP27S.js.map} +1 -1
  18. package/dist/agent-session-store-AFML3AXC.js +6 -0
  19. package/dist/{agent-session-store-OPGRB4XM.js.map → agent-session-store-AFML3AXC.js.map} +1 -1
  20. package/dist/agent-session-store-MTSIY3MH.cjs +23 -0
  21. package/dist/{agent-session-store-6EL5NPA4.cjs.map → agent-session-store-MTSIY3MH.cjs.map} +1 -1
  22. package/dist/agent.d.ts +1 -1
  23. package/dist/auth/index.cjs +33 -34
  24. package/dist/auth/index.cjs.map +1 -1
  25. package/dist/auth/index.d.cts +1 -1
  26. package/dist/auth/index.d.ts +1 -1
  27. package/dist/auth/index.js +6 -7
  28. package/dist/auth/index.js.map +1 -1
  29. package/dist/{batch-BXYTW2DP.cjs → batch-I6T6MXZO.cjs} +58 -40
  30. package/dist/batch-I6T6MXZO.cjs.map +1 -0
  31. package/dist/{batch-L4ZXS46M.js → batch-US4F6WPK.js} +42 -24
  32. package/dist/batch-US4F6WPK.js.map +1 -0
  33. package/dist/chunk-24MGQDK3.js +31 -0
  34. package/dist/chunk-24MGQDK3.js.map +1 -0
  35. package/dist/{chunk-UGT7GK7I.cjs → chunk-24SYBZPL.cjs} +36 -18
  36. package/dist/chunk-24SYBZPL.cjs.map +1 -0
  37. package/dist/{chunk-KYAJINUI.cjs → chunk-2HPNT6HH.cjs} +581 -401
  38. package/dist/chunk-2HPNT6HH.cjs.map +1 -0
  39. package/dist/{chunk-VLVVJLDH.cjs → chunk-2NE7DTOK.cjs} +234 -193
  40. package/dist/chunk-2NE7DTOK.cjs.map +1 -0
  41. package/dist/{chunk-N2U4AZGB.js → chunk-2WXHA33T.js} +3 -3
  42. package/dist/chunk-2WXHA33T.js.map +1 -0
  43. package/dist/chunk-2XC6KDJM.js +22 -0
  44. package/dist/chunk-2XC6KDJM.js.map +1 -0
  45. package/dist/{chunk-L3MTL4NA.js → chunk-2ZLVT7H3.js} +223 -182
  46. package/dist/chunk-2ZLVT7H3.js.map +1 -0
  47. package/dist/{chunk-2GUYQR5P.js → chunk-3JHIFQ4I.js} +39 -13
  48. package/dist/chunk-3JHIFQ4I.js.map +1 -0
  49. package/dist/{chunk-BU4KFWXF.js → chunk-44I6UYVH.js} +8 -17
  50. package/dist/chunk-44I6UYVH.js.map +1 -0
  51. package/dist/{chunk-UNYXQ4M5.js → chunk-47TF32NQ.js} +10 -5
  52. package/dist/chunk-47TF32NQ.js.map +1 -0
  53. package/dist/{chunk-WNO3C3N2.cjs → chunk-4A3SKJ53.cjs} +56 -27
  54. package/dist/chunk-4A3SKJ53.cjs.map +1 -0
  55. package/dist/{chunk-YML4ME27.cjs → chunk-4HS6FFGL.cjs} +55 -46
  56. package/dist/chunk-4HS6FFGL.cjs.map +1 -0
  57. package/dist/{chunk-C72AZW7J.js → chunk-4MMWFSCD.js} +4 -4
  58. package/dist/chunk-4MMWFSCD.js.map +1 -0
  59. package/dist/{chunk-6HKGLTJI.cjs → chunk-4NLCWGH7.cjs} +15 -15
  60. package/dist/chunk-4NLCWGH7.cjs.map +1 -0
  61. package/dist/{chunk-UBDMVMBZ.js → chunk-55GB6JYQ.js} +33 -22
  62. package/dist/chunk-55GB6JYQ.js.map +1 -0
  63. package/dist/{chunk-U6IFHFWK.js → chunk-5WKQDIGO.js} +8 -17
  64. package/dist/chunk-5WKQDIGO.js.map +1 -0
  65. package/dist/{chunk-GPKAF7SG.js → chunk-6HIACV34.js} +91 -92
  66. package/dist/chunk-6HIACV34.js.map +1 -0
  67. package/dist/{chunk-XL7Q7HB2.cjs → chunk-6LHQPOMI.cjs} +39 -6
  68. package/dist/chunk-6LHQPOMI.cjs.map +1 -0
  69. package/dist/{chunk-A4JVILQU.js → chunk-6M2OIS4Y.js} +7 -7
  70. package/dist/chunk-6M2OIS4Y.js.map +1 -0
  71. package/dist/{chunk-LWGSI6M3.js → chunk-6PWOWXMC.js} +4 -4
  72. package/dist/{chunk-LWGSI6M3.js.map → chunk-6PWOWXMC.js.map} +1 -1
  73. package/dist/{chunk-RNB4APBZ.js → chunk-6WAKKTBO.js} +9 -5
  74. package/dist/chunk-6WAKKTBO.js.map +1 -0
  75. package/dist/{chunk-V2BOS4WF.cjs → chunk-7A6535RA.cjs} +11 -11
  76. package/dist/chunk-7A6535RA.cjs.map +1 -0
  77. package/dist/{chunk-ZLQSWSJ2.cjs → chunk-7FDKWDA2.cjs} +11 -11
  78. package/dist/{chunk-ZLQSWSJ2.cjs.map → chunk-7FDKWDA2.cjs.map} +1 -1
  79. package/dist/{chunk-4VPXM6UU.js → chunk-7I5Z3UBJ.js} +3 -3
  80. package/dist/{chunk-4VPXM6UU.js.map → chunk-7I5Z3UBJ.js.map} +1 -1
  81. package/dist/{chunk-B4EOJWOY.cjs → chunk-7JJ3A6AT.cjs} +13 -7
  82. package/dist/chunk-7JJ3A6AT.cjs.map +1 -0
  83. package/dist/{chunk-ZWRG4NWT.cjs → chunk-7ZK4DJD7.cjs} +108 -109
  84. package/dist/chunk-7ZK4DJD7.cjs.map +1 -0
  85. package/dist/{chunk-WJVHMTKB.cjs → chunk-AA27GEYS.cjs} +3 -3
  86. package/dist/{chunk-WJVHMTKB.cjs.map → chunk-AA27GEYS.cjs.map} +1 -1
  87. package/dist/{chunk-BP46RJ5X.js → chunk-AAEZSPTC.js} +5 -5
  88. package/dist/{chunk-BP46RJ5X.js.map → chunk-AAEZSPTC.js.map} +1 -1
  89. package/dist/chunk-AGACYRJ2.js +11 -0
  90. package/dist/chunk-AGACYRJ2.js.map +1 -0
  91. package/dist/{chunk-ZZMZWBR6.js → chunk-ALUN2B4W.js} +81 -58
  92. package/dist/chunk-ALUN2B4W.js.map +1 -0
  93. package/dist/chunk-ANMJJD6D.cjs +18 -0
  94. package/dist/chunk-ANMJJD6D.cjs.map +1 -0
  95. package/dist/{chunk-DXGZ2NUG.cjs → chunk-ATT276RD.cjs} +12 -11
  96. package/dist/chunk-ATT276RD.cjs.map +1 -0
  97. package/dist/{chunk-4FFBAUFS.js → chunk-AWINL3ZC.js} +6 -6
  98. package/dist/chunk-AWINL3ZC.js.map +1 -0
  99. package/dist/{chunk-UU36SHFY.cjs → chunk-BJUJT5ED.cjs} +9 -8
  100. package/dist/chunk-BJUJT5ED.cjs.map +1 -0
  101. package/dist/chunk-CEILSTWB.cjs +109 -0
  102. package/dist/chunk-CEILSTWB.cjs.map +1 -0
  103. package/dist/{chunk-D4CUGAKZ.js → chunk-CZJ6Q7CW.js} +36 -6
  104. package/dist/chunk-CZJ6Q7CW.js.map +1 -0
  105. package/dist/{chunk-KQ7TS7WW.cjs → chunk-D6POWE7E.cjs} +37 -26
  106. package/dist/chunk-D6POWE7E.cjs.map +1 -0
  107. package/dist/{chunk-AWO27VRZ.js → chunk-DMRT67Y6.js} +6 -5
  108. package/dist/chunk-DMRT67Y6.js.map +1 -0
  109. package/dist/{chunk-5VB22SYX.cjs → chunk-DQZU7JK6.cjs} +7 -7
  110. package/dist/{chunk-5VB22SYX.cjs.map → chunk-DQZU7JK6.cjs.map} +1 -1
  111. package/dist/{chunk-3NSS2OIZ.cjs → chunk-DRL7URI4.cjs} +6 -6
  112. package/dist/{chunk-3NSS2OIZ.cjs.map → chunk-DRL7URI4.cjs.map} +1 -1
  113. package/dist/{chunk-RFXWMRFC.js → chunk-EFMFILPG.js} +14 -6
  114. package/dist/chunk-EFMFILPG.js.map +1 -0
  115. package/dist/{chunk-HS7AVXTF.js → chunk-EH6XD3FY.js} +4 -4
  116. package/dist/chunk-EH6XD3FY.js.map +1 -0
  117. package/dist/{chunk-KQRW2GPZ.js → chunk-EIQFAOFD.js} +6 -6
  118. package/dist/chunk-EIQFAOFD.js.map +1 -0
  119. package/dist/{chunk-XJCXEKMD.cjs → chunk-EXTRW7GW.cjs} +4 -4
  120. package/dist/chunk-EXTRW7GW.cjs.map +1 -0
  121. package/dist/{chunk-U54XCYG3.js → chunk-FJWQP6EE.js} +12 -6
  122. package/dist/chunk-FJWQP6EE.js.map +1 -0
  123. package/dist/{chunk-O7DK5PBJ.cjs → chunk-FUSDYC2B.cjs} +26 -42
  124. package/dist/chunk-FUSDYC2B.cjs.map +1 -0
  125. package/dist/{chunk-CQBXOJ6U.cjs → chunk-G4ZGYKJG.cjs} +21 -21
  126. package/dist/chunk-G4ZGYKJG.cjs.map +1 -0
  127. package/dist/{chunk-4QZSA2HJ.js → chunk-G7BLGBRN.js} +4 -4
  128. package/dist/chunk-G7BLGBRN.js.map +1 -0
  129. package/dist/{chunk-BZRFXJHA.js → chunk-GBCVPKHE.js} +55 -26
  130. package/dist/chunk-GBCVPKHE.js.map +1 -0
  131. package/dist/{chunk-5HEG4CQH.cjs → chunk-GZV6AVRL.cjs} +8 -8
  132. package/dist/{chunk-5HEG4CQH.cjs.map → chunk-GZV6AVRL.cjs.map} +1 -1
  133. package/dist/{chunk-RFMBZPOW.cjs → chunk-HCT4HPCL.cjs} +10 -10
  134. package/dist/chunk-HCT4HPCL.cjs.map +1 -0
  135. package/dist/{chunk-OSEG74VJ.js → chunk-HFEJE7AC.js} +52 -43
  136. package/dist/chunk-HFEJE7AC.js.map +1 -0
  137. package/dist/{chunk-52NKC5HT.cjs → chunk-HUFSABUZ.cjs} +12 -8
  138. package/dist/chunk-HUFSABUZ.cjs.map +1 -0
  139. package/dist/{chunk-4CLOXP6H.cjs → chunk-HW7SEELD.cjs} +4 -4
  140. package/dist/{chunk-4CLOXP6H.cjs.map → chunk-HW7SEELD.cjs.map} +1 -1
  141. package/dist/{chunk-ZCIRZE37.cjs → chunk-HWSALKOR.cjs} +26 -17
  142. package/dist/chunk-HWSALKOR.cjs.map +1 -0
  143. package/dist/{chunk-ZSWPZ23K.cjs → chunk-I2PWY7VM.cjs} +5 -5
  144. package/dist/chunk-I2PWY7VM.cjs.map +1 -0
  145. package/dist/{chunk-VJ26EKGJ.cjs → chunk-IJ7M6GOG.cjs} +3 -3
  146. package/dist/chunk-IJ7M6GOG.cjs.map +1 -0
  147. package/dist/{chunk-K5OJUYSZ.js → chunk-IJM7UGS5.js} +19 -10
  148. package/dist/chunk-IJM7UGS5.js.map +1 -0
  149. package/dist/{chunk-SAVIWMZB.js → chunk-ILGZ2ZZV.js} +3 -3
  150. package/dist/chunk-ILGZ2ZZV.js.map +1 -0
  151. package/dist/{chunk-4ZHTIJNE.cjs → chunk-J7J7J2GN.cjs} +87 -63
  152. package/dist/chunk-J7J7J2GN.cjs.map +1 -0
  153. package/dist/{chunk-UALX2J2Q.cjs → chunk-JLRLCBJ4.cjs} +38 -11
  154. package/dist/chunk-JLRLCBJ4.cjs.map +1 -0
  155. package/dist/{chunk-2QDYBS2A.js → chunk-JMDDYA22.js} +4 -4
  156. package/dist/chunk-JMDDYA22.js.map +1 -0
  157. package/dist/{chunk-LXQ6HKPS.js → chunk-JNAA4G4H.js} +3 -3
  158. package/dist/{chunk-LXQ6HKPS.js.map → chunk-JNAA4G4H.js.map} +1 -1
  159. package/dist/{chunk-UMP6OJIM.js → chunk-JOFVLOFY.js} +4 -4
  160. package/dist/{chunk-UMP6OJIM.js.map → chunk-JOFVLOFY.js.map} +1 -1
  161. package/dist/chunk-JTZ74HFD.js +100 -0
  162. package/dist/chunk-JTZ74HFD.js.map +1 -0
  163. package/dist/{chunk-A46SWMIF.js → chunk-K2VMFZQ5.js} +7 -7
  164. package/dist/chunk-K2VMFZQ5.js.map +1 -0
  165. package/dist/{chunk-DN2PACRI.js → chunk-K3NH62DG.js} +461 -282
  166. package/dist/chunk-K3NH62DG.js.map +1 -0
  167. package/dist/{chunk-XWTLIGO3.cjs → chunk-KTTHHYEW.cjs} +5 -5
  168. package/dist/chunk-KTTHHYEW.cjs.map +1 -0
  169. package/dist/{chunk-3FFAEAUJ.cjs → chunk-KVSAY6NZ.cjs} +18 -18
  170. package/dist/chunk-KVSAY6NZ.cjs.map +1 -0
  171. package/dist/{chunk-IAHZCGBE.cjs → chunk-LHSWHYF3.cjs} +120 -146
  172. package/dist/chunk-LHSWHYF3.cjs.map +1 -0
  173. package/dist/{chunk-25BD2R5G.js → chunk-NCGWJ3HS.js} +1991 -1854
  174. package/dist/chunk-NCGWJ3HS.js.map +1 -0
  175. package/dist/{chunk-3OR54XG4.js → chunk-NJWYQWDL.js} +12 -8
  176. package/dist/chunk-NJWYQWDL.js.map +1 -0
  177. package/dist/chunk-NVXXWAU7.cjs +13 -0
  178. package/dist/chunk-NVXXWAU7.cjs.map +1 -0
  179. package/dist/{chunk-2D34UTDC.js → chunk-O6USDERH.js} +31 -11
  180. package/dist/chunk-O6USDERH.js.map +1 -0
  181. package/dist/{chunk-XO4SOZN6.js → chunk-OR6XIWLB.js} +4 -4
  182. package/dist/{chunk-XO4SOZN6.js.map → chunk-OR6XIWLB.js.map} +1 -1
  183. package/dist/{chunk-4PYZ5AX3.cjs → chunk-PRZ3BES7.cjs} +16 -8
  184. package/dist/chunk-PRZ3BES7.cjs.map +1 -0
  185. package/dist/{chunk-HCZD23VS.cjs → chunk-QC55H6RJ.cjs} +65 -39
  186. package/dist/chunk-QC55H6RJ.cjs.map +1 -0
  187. package/dist/{chunk-4O5TGQBW.cjs → chunk-QME6FDFG.cjs} +9 -5
  188. package/dist/chunk-QME6FDFG.cjs.map +1 -0
  189. package/dist/chunk-QOGNZMHD.cjs +34 -0
  190. package/dist/chunk-QOGNZMHD.cjs.map +1 -0
  191. package/dist/{chunk-B2J4ZMZL.cjs → chunk-QWD3CZWE.cjs} +6 -5
  192. package/dist/chunk-QWD3CZWE.cjs.map +1 -0
  193. package/dist/{chunk-SZVR77EJ.cjs → chunk-QWD4RDZ3.cjs} +15 -24
  194. package/dist/chunk-QWD4RDZ3.cjs.map +1 -0
  195. package/dist/{chunk-7BG5UH3T.cjs → chunk-RHZ6HP23.cjs} +4 -4
  196. package/dist/chunk-RHZ6HP23.cjs.map +1 -0
  197. package/dist/{chunk-2HVF2WJY.cjs → chunk-RQMCOFAI.cjs} +8 -8
  198. package/dist/{chunk-2HVF2WJY.cjs.map → chunk-RQMCOFAI.cjs.map} +1 -1
  199. package/dist/{chunk-VKJ7V7EB.cjs → chunk-SA6K24NB.cjs} +3 -3
  200. package/dist/chunk-SA6K24NB.cjs.map +1 -0
  201. package/dist/{chunk-7AD3ZTZL.js → chunk-SAGRF4IB.js} +3 -3
  202. package/dist/chunk-SAGRF4IB.js.map +1 -0
  203. package/dist/{chunk-PUAEFLYK.js → chunk-SVQIW5RJ.js} +4 -4
  204. package/dist/{chunk-PUAEFLYK.js.map → chunk-SVQIW5RJ.js.map} +1 -1
  205. package/dist/{chunk-3O42QOMJ.js → chunk-TA3K7SBK.js} +7 -6
  206. package/dist/chunk-TA3K7SBK.js.map +1 -0
  207. package/dist/{chunk-LYRDF5TQ.cjs → chunk-TFG5IBZS.cjs} +14 -23
  208. package/dist/chunk-TFG5IBZS.cjs.map +1 -0
  209. package/dist/{chunk-GKEFRLU7.cjs → chunk-TMKTSYDS.cjs} +6 -6
  210. package/dist/{chunk-GKEFRLU7.cjs.map → chunk-TMKTSYDS.cjs.map} +1 -1
  211. package/dist/{chunk-J24VJOH3.cjs → chunk-UADQJBHR.cjs} +31 -11
  212. package/dist/chunk-UADQJBHR.cjs.map +1 -0
  213. package/dist/{chunk-TAZVKYWJ.js → chunk-UBR5PWD7.js} +26 -40
  214. package/dist/chunk-UBR5PWD7.js.map +1 -0
  215. package/dist/{chunk-IPYYKCRC.js → chunk-UFPUHJWS.js} +5 -5
  216. package/dist/{chunk-IPYYKCRC.js.map → chunk-UFPUHJWS.js.map} +1 -1
  217. package/dist/{chunk-OHLDPWTA.cjs → chunk-UGRS7ZA7.cjs} +15 -15
  218. package/dist/{chunk-OHLDPWTA.cjs.map → chunk-UGRS7ZA7.cjs.map} +1 -1
  219. package/dist/{chunk-RIAM53CP.js → chunk-UKMBRMGT.js} +3 -3
  220. package/dist/chunk-UKMBRMGT.js.map +1 -0
  221. package/dist/{chunk-L4BDVXIM.js → chunk-UNK4HNJH.js} +97 -123
  222. package/dist/chunk-UNK4HNJH.js.map +1 -0
  223. package/dist/{chunk-C3NT3PVE.js → chunk-V22DZIXO.js} +3 -3
  224. package/dist/chunk-V22DZIXO.js.map +1 -0
  225. package/dist/{chunk-OFRFZRQ4.cjs → chunk-V6ZY4AX6.cjs} +24 -14
  226. package/dist/chunk-V6ZY4AX6.cjs.map +1 -0
  227. package/dist/{chunk-B3IMEBOA.js → chunk-VE6DFSKU.js} +3 -3
  228. package/dist/{chunk-B3IMEBOA.js.map → chunk-VE6DFSKU.js.map} +1 -1
  229. package/dist/{chunk-WLQNMXQE.js → chunk-VWUXIVEI.js} +53 -26
  230. package/dist/chunk-VWUXIVEI.js.map +1 -0
  231. package/dist/{chunk-ACDLHN3W.js → chunk-WJXOICRC.js} +16 -6
  232. package/dist/chunk-WJXOICRC.js.map +1 -0
  233. package/dist/{chunk-JJ3OVRUM.cjs → chunk-WMH2MSOP.cjs} +2250 -2113
  234. package/dist/chunk-WMH2MSOP.cjs.map +1 -0
  235. package/dist/{chunk-7YGCPMGB.js → chunk-XB4GI5RZ.js} +27 -12
  236. package/dist/chunk-XB4GI5RZ.js.map +1 -0
  237. package/dist/{chunk-LXI4XZEC.js → chunk-XCCGNU3D.js} +13 -13
  238. package/dist/chunk-XCCGNU3D.js.map +1 -0
  239. package/dist/{chunk-O73J46PV.js → chunk-XDANGA2C.js} +5 -5
  240. package/dist/{chunk-O73J46PV.js.map → chunk-XDANGA2C.js.map} +1 -1
  241. package/dist/{chunk-UTSRIDKZ.js → chunk-XYFGKVZ7.js} +3 -3
  242. package/dist/chunk-XYFGKVZ7.js.map +1 -0
  243. package/dist/{chunk-RMWTPV3M.cjs → chunk-Y2KYR2ED.cjs} +27 -27
  244. package/dist/chunk-Y2KYR2ED.cjs.map +1 -0
  245. package/dist/{chunk-O7LZFG6O.cjs → chunk-YIFFF23U.cjs} +5 -5
  246. package/dist/chunk-YIFFF23U.cjs.map +1 -0
  247. package/dist/{chunk-4OTIXDMU.cjs → chunk-YJNYDJ2T.cjs} +12 -4
  248. package/dist/chunk-YJNYDJ2T.cjs.map +1 -0
  249. package/dist/{chunk-6JSIEDKL.cjs → chunk-YSTXFWQE.cjs} +13 -7
  250. package/dist/chunk-YSTXFWQE.cjs.map +1 -0
  251. package/dist/{chunk-I6HGWHPU.cjs → chunk-Z3NTRKIC.cjs} +4 -4
  252. package/dist/{chunk-I6HGWHPU.cjs.map → chunk-Z3NTRKIC.cjs.map} +1 -1
  253. package/dist/compact-session-BHTPCIHA.cjs +61 -0
  254. package/dist/{compact-session-QV57KR66.cjs.map → compact-session-BHTPCIHA.cjs.map} +1 -1
  255. package/dist/compact-session-W4WLJTHA.js +24 -0
  256. package/dist/{compact-session-RIGOWC4Y.js.map → compact-session-W4WLJTHA.js.map} +1 -1
  257. package/dist/compaction.cjs +20 -17
  258. package/dist/compaction.d.cts +15 -1
  259. package/dist/compaction.d.ts +15 -1
  260. package/dist/compaction.js +3 -4
  261. package/dist/concurrency.cjs +6 -7
  262. package/dist/concurrency.cjs.map +1 -1
  263. package/dist/concurrency.d.cts +6 -3
  264. package/dist/concurrency.d.ts +6 -3
  265. package/dist/concurrency.js +4 -5
  266. package/dist/concurrency.js.map +1 -1
  267. package/dist/context/index.cjs +6 -6
  268. package/dist/context/index.js +3 -3
  269. package/dist/context-74SBFD27.cjs +23 -0
  270. package/dist/{context-AGQ3DIZU.cjs.map → context-74SBFD27.cjs.map} +1 -1
  271. package/dist/context-NZ2AC6S7.js +6 -0
  272. package/dist/{context-GQRFBCLP.js.map → context-NZ2AC6S7.js.map} +1 -1
  273. package/dist/create-skill.d.ts +4 -1
  274. package/dist/{cron-BuiRPrvt.d.cts → cron-Bw6mSgD4.d.cts} +8 -2
  275. package/dist/{cron-C2SIi31n.d.ts → cron-DJv9oXSZ.d.ts} +8 -2
  276. package/dist/cron.cjs +46 -45
  277. package/dist/cron.d.cts +5 -4
  278. package/dist/cron.d.ts +5 -4
  279. package/dist/cron.js +45 -44
  280. package/dist/{errors-BgJH9PHi.d.cts → errors-CLOAyuiv.d.ts} +133 -95
  281. package/dist/{errors-C5fJUqLk.d.ts → errors-DrDEgyz1.d.cts} +133 -95
  282. package/dist/errors-base-B5g01neU.d.cts +75 -0
  283. package/dist/errors-base-B5g01neU.d.ts +75 -0
  284. package/dist/errors-base.d.ts +73 -0
  285. package/dist/errors.cjs +25 -22
  286. package/dist/errors.d.cts +3 -2
  287. package/dist/errors.d.ts +3 -2
  288. package/dist/errors.js +2 -3
  289. package/dist/eval.cjs +74 -78
  290. package/dist/eval.cjs.map +1 -1
  291. package/dist/eval.js +64 -68
  292. package/dist/eval.js.map +1 -1
  293. package/dist/{executor-6CYCA7MI.cjs → executor-XQAOQOHD.cjs} +60 -54
  294. package/dist/executor-XQAOQOHD.cjs.map +1 -0
  295. package/dist/{executor-QSEC3MRH.js → executor-ZNDQDX6Q.js} +43 -37
  296. package/dist/executor-ZNDQDX6Q.js.map +1 -0
  297. package/dist/filesystem/index.cjs +24 -26
  298. package/dist/filesystem/index.cjs.map +1 -1
  299. package/dist/filesystem/index.js +20 -22
  300. package/dist/filesystem/index.js.map +1 -1
  301. package/dist/filesystem/types.d.cts +11 -5
  302. package/dist/filesystem/types.d.ts +11 -5
  303. package/dist/{fork-agent-RSV4E3EA.js → fork-agent-S2EPIML7.js} +3 -3
  304. package/dist/fork-agent-S2EPIML7.js.map +1 -0
  305. package/dist/{fork-agent-Y2IK2RYU.cjs → fork-agent-WAEQI2DL.cjs} +4 -4
  306. package/dist/fork-agent-WAEQI2DL.cjs.map +1 -0
  307. package/dist/fs-session-store-77JU46UZ.js +10 -0
  308. package/dist/{fs-session-store-NM6YSTE2.js.map → fs-session-store-77JU46UZ.js.map} +1 -1
  309. package/dist/fs-session-store-E4U3P56L.cjs +19 -0
  310. package/dist/{fs-session-store-4PIHT5UX.cjs.map → fs-session-store-E4U3P56L.cjs.map} +1 -1
  311. package/dist/generate-object-BXV7BZRP.js +7 -0
  312. package/dist/{generate-object-GUNAUVBX.js.map → generate-object-BXV7BZRP.js.map} +1 -1
  313. package/dist/generate-object-YBI2TDJ3.cjs +20 -0
  314. package/dist/{generate-object-R7HTMW7F.cjs.map → generate-object-YBI2TDJ3.cjs.map} +1 -1
  315. package/dist/generate-object.d.ts +2 -4
  316. package/dist/index-manager-DXR2RSFI.cjs +26 -0
  317. package/dist/{index-manager-2SRX45WJ.cjs.map → index-manager-DXR2RSFI.cjs.map} +1 -1
  318. package/dist/index-manager-QH6OXEV5.js +17 -0
  319. package/dist/{index-manager-SP4ISSDX.js.map → index-manager-QH6OXEV5.js.map} +1 -1
  320. package/dist/index.cjs +234 -194
  321. package/dist/index.cjs.map +1 -1
  322. package/dist/index.d.cts +243 -41
  323. package/dist/index.d.ts +243 -41
  324. package/dist/index.js +140 -102
  325. package/dist/index.js.map +1 -1
  326. package/dist/{inject-session-DAR7OUCW.js → inject-session-SUM6TDJF.js} +9 -9
  327. package/dist/{inject-session-DAR7OUCW.js.map → inject-session-SUM6TDJF.js.map} +1 -1
  328. package/dist/inject-session-W6A46J3E.cjs +29 -0
  329. package/dist/{inject-session-WQKMC3GR.cjs.map → inject-session-W6A46J3E.cjs.map} +1 -1
  330. package/dist/interactive/index.cjs +12 -6
  331. package/dist/interactive/index.cjs.map +1 -1
  332. package/dist/interactive/index.js +12 -6
  333. package/dist/interactive/index.js.map +1 -1
  334. package/dist/interactive/types.d.cts +14 -4
  335. package/dist/interactive/types.d.ts +14 -4
  336. package/dist/internal/agent-loop/loop-context-init.d.ts +1 -1
  337. package/dist/internal/agent-loop/loop-finalize.d.ts +25 -0
  338. package/dist/internal/agent-loop/loop.d.ts +1 -1
  339. package/dist/internal/agent-loop/message-builders.d.ts +1 -1
  340. package/dist/internal/agent-loop/replay-messages.d.ts +41 -0
  341. package/dist/internal/agent-loop/tool-dispatch.d.ts +2 -2
  342. package/dist/internal/agent-loop/usage-and-cost.d.ts +1 -1
  343. package/dist/internal/auth/credential-availability.d.ts +61 -0
  344. package/dist/internal/auth/credential-store.d.ts +1 -1
  345. package/dist/internal/auth/oauth-device.d.ts +1 -1
  346. package/dist/internal/auth/oauth-engine.d.ts +1 -1
  347. package/dist/internal/auth/resolve-credential.d.ts +1 -1
  348. package/dist/internal/base-url.d.ts +14 -0
  349. package/dist/internal/cloud-agent/cloud-config-serializer.d.ts +1 -1
  350. package/dist/internal/{runtime/concurrency → concurrency}/subagent-credentials.d.ts +2 -2
  351. package/dist/internal/emit-run-event.d.ts +16 -0
  352. package/dist/internal/error-mappers/shared.d.ts +14 -1
  353. package/dist/internal/eval/assert.d.ts +2 -1
  354. package/dist/internal/eval/single-flight.d.ts +2 -1
  355. package/dist/internal/global-singleton.d.ts +6 -3
  356. package/dist/internal/llm/responses.d.ts +10 -0
  357. package/dist/internal/local-agent/local-agent-bootstrap.d.ts +5 -3
  358. package/dist/internal/local-agent/local-agent-capabilities.d.ts +38 -0
  359. package/dist/internal/local-agent/local-agent-dispatch.d.ts +2 -2
  360. package/dist/internal/local-agent/local-agent-memory-provider.d.ts +1 -1
  361. package/dist/internal/local-agent/local-agent-personality-extensions.d.ts +25 -1
  362. package/dist/internal/local-agent/local-agent-send.d.ts +42 -1
  363. package/dist/internal/local-agent/local-option-keys.d.ts +2 -0
  364. package/dist/internal/local-agent/real-local-run-mcp.d.ts +26 -0
  365. package/dist/internal/local-agent/real-local-run-options.d.ts +26 -0
  366. package/dist/internal/local-agent/real-local-run-tools.d.ts +21 -4
  367. package/dist/internal/local-agent/real-local-run.d.ts +2 -2
  368. package/dist/internal/mcp/handshake-timeout.d.ts +53 -0
  369. package/dist/internal/memory/active-memory.d.ts +1 -1
  370. package/dist/internal/memory/adapters/index.cjs +10 -10
  371. package/dist/internal/memory/adapters/index.js +9 -9
  372. package/dist/internal/memory/adapters/openai-embedding.d.cts +10 -0
  373. package/dist/internal/memory/adapters/openai-embedding.d.ts +10 -0
  374. package/dist/internal/memory/corpus-sync.d.ts +23 -0
  375. package/dist/internal/memory/index-db.d.ts +15 -1
  376. package/dist/internal/memory/index-manager-contract.d.ts +12 -0
  377. package/dist/internal/memory/index-manager.d.ts +4 -10
  378. package/dist/internal/memory/index-repository.d.ts +58 -0
  379. package/dist/internal/memory/lance-memory-adapter.d.ts +16 -14
  380. package/dist/internal/memory/memory-index.d.ts +15 -0
  381. package/dist/internal/memory/sdk-memory-peer-loader.d.ts +54 -1
  382. package/dist/internal/memory/storage/index.cjs +39 -40
  383. package/dist/internal/memory/storage/index.js +10 -11
  384. package/dist/internal/memory/storage/memory-root.d.cts +2 -3
  385. package/dist/internal/memory/storage/memory-root.d.ts +2 -3
  386. package/dist/internal/persistence/atomic-write.d.cts +4 -4
  387. package/dist/internal/persistence/atomic-write.d.ts +4 -4
  388. package/dist/internal/persistence/index.cjs +24 -25
  389. package/dist/internal/persistence/index.cjs.map +1 -1
  390. package/dist/internal/persistence/index.js +7 -8
  391. package/dist/internal/persistence/index.js.map +1 -1
  392. package/dist/internal/persistence/jsonl.d.cts +3 -1
  393. package/dist/internal/persistence/jsonl.d.ts +3 -1
  394. package/dist/internal/persistence/paths.d.cts +2 -2
  395. package/dist/internal/persistence/paths.d.ts +2 -2
  396. package/dist/internal/persistence/transcript-ops.d.cts +11 -2
  397. package/dist/internal/persistence/transcript-ops.d.ts +11 -2
  398. package/dist/internal/plugins/context.d.cts +0 -10
  399. package/dist/internal/plugins/context.d.ts +0 -10
  400. package/dist/internal/plugins/types.d.cts +1 -1
  401. package/dist/internal/plugins/types.d.ts +1 -1
  402. package/dist/internal/providers/catalog-schema.d.ts +94 -0
  403. package/dist/internal/providers/catalog-source-models-dev.d.ts +11 -0
  404. package/dist/internal/runtime/compat/foreign-config-sources.d.ts +86 -0
  405. package/dist/internal/runtime/compression/compression-model-registry.d.ts +1 -1
  406. package/dist/internal/runtime/compression/compression-summarizer.d.ts +5 -1
  407. package/dist/internal/runtime/fixtures/fixture-events.d.ts +1 -1
  408. package/dist/internal/runtime/fixtures/fixture-mode.d.ts +8 -14
  409. package/dist/internal/runtime/fixtures/fixture-run-base.d.ts +1 -1
  410. package/dist/internal/runtime/fixtures/fixture-scripts.d.ts +2 -2
  411. package/dist/internal/runtime/hooks/hooks-executor.d.ts +14 -1
  412. package/dist/internal/runtime/hooks/hooks-source.d.ts +9 -0
  413. package/dist/internal/runtime/lifecycle/wrap-completion-check-run.d.ts +1 -1
  414. package/dist/internal/runtime/{memory → memory-glue}/memory-provider.d.ts +1 -1
  415. package/dist/internal/runtime/{plugins → plugin-loader}/plugin-bundles.d.ts +3 -1
  416. package/dist/internal/runtime/processors/wrap-output-run.d.ts +1 -1
  417. package/dist/internal/runtime/registry/live-agent-registry.d.ts +9 -1
  418. package/dist/internal/runtime/system-prompt/local-assembly.d.ts +2 -1
  419. package/dist/internal/scorers/llm-judge.d.ts +12 -0
  420. package/dist/internal/security/index.cjs +14 -15
  421. package/dist/internal/security/index.d.cts +6 -1
  422. package/dist/internal/security/index.d.ts +6 -1
  423. package/dist/internal/security/index.js +4 -5
  424. package/dist/internal/security/path-containment.d.ts +24 -0
  425. package/dist/internal/session/agent-session-store.d.ts +1 -1
  426. package/dist/internal/session/agent-session.d.ts +1 -1
  427. package/dist/internal/session/index.d.ts +1 -1
  428. package/dist/internal/session/session-cache.d.ts +9 -3
  429. package/dist/internal/task/registry.d.ts +1 -1
  430. package/dist/internal/task/store.d.ts +1 -1
  431. package/dist/internal/task/subscribe.d.ts +1 -1
  432. package/dist/internal/task/task-id.d.ts +22 -0
  433. package/dist/internal/telemetry/adapter-registry.d.ts +12 -2
  434. package/dist/internal/telemetry/adapters/braintrust.d.ts +6 -1
  435. package/dist/internal/telemetry/adapters/langsmith.d.ts +6 -1
  436. package/dist/internal/workflow/executor.d.ts +2 -1
  437. package/dist/internal/workflow/snapshot-store.d.ts +1 -1
  438. package/dist/internal/workflow/step-branch.d.ts +2 -2
  439. package/dist/internal/workflow/step-dowhile.d.ts +2 -2
  440. package/dist/internal/workflow/step-execution.d.ts +25 -0
  441. package/dist/internal/workflow/step-foreach.d.ts +2 -2
  442. package/dist/internal/workflow/step-parallel.d.ts +2 -2
  443. package/dist/judge-call-6MVARKU2.js +5 -0
  444. package/dist/{judge-call-LVXABPS3.js.map → judge-call-6MVARKU2.js.map} +1 -1
  445. package/dist/judge-call-I3P4D5QR.cjs +22 -0
  446. package/dist/{judge-call-LAHMBJ57.cjs.map → judge-call-I3P4D5QR.cjs.map} +1 -1
  447. package/dist/mcp-auth.cjs +14 -15
  448. package/dist/mcp-auth.cjs.map +1 -1
  449. package/dist/mcp-auth.d.cts +2 -0
  450. package/dist/mcp-auth.d.ts +2 -0
  451. package/dist/mcp-auth.js +4 -5
  452. package/dist/mcp-auth.js.map +1 -1
  453. package/dist/models.cjs +52 -42
  454. package/dist/models.cjs.map +1 -1
  455. package/dist/models.js +39 -29
  456. package/dist/models.js.map +1 -1
  457. package/dist/oauth-transaction-store-5RIR6D5C.js +5 -0
  458. package/dist/{oauth-transaction-store-W52KVHQ4.js.map → oauth-transaction-store-5RIR6D5C.js.map} +1 -1
  459. package/dist/oauth-transaction-store-SXIE57OD.cjs +38 -0
  460. package/dist/{oauth-transaction-store-BT4GLTLK.cjs.map → oauth-transaction-store-SXIE57OD.cjs.map} +1 -1
  461. package/dist/path-safety.cjs +11 -12
  462. package/dist/path-safety.d.cts +2 -0
  463. package/dist/path-safety.d.ts +2 -0
  464. package/dist/path-safety.js +4 -5
  465. package/dist/permission-engine.d.ts +10 -17
  466. package/dist/persistence.cjs +31 -31
  467. package/dist/persistence.cjs.map +1 -1
  468. package/dist/persistence.d.cts +9 -1
  469. package/dist/persistence.d.ts +9 -1
  470. package/dist/persistence.js +12 -13
  471. package/dist/persistence.js.map +1 -1
  472. package/dist/project.cjs +5 -6
  473. package/dist/project.cjs.map +1 -1
  474. package/dist/project.js +3 -4
  475. package/dist/project.js.map +1 -1
  476. package/dist/providers.cjs +10 -10
  477. package/dist/providers.d.cts +2 -0
  478. package/dist/providers.d.ts +2 -0
  479. package/dist/providers.js +8 -8
  480. package/dist/registry-BZQFYRTL.cjs +46 -0
  481. package/dist/{registry-V7BDQ6QB.cjs.map → registry-BZQFYRTL.cjs.map} +1 -1
  482. package/dist/registry-DMWCJKRF.js +9 -0
  483. package/dist/{registry-75W33OGL.js.map → registry-DMWCJKRF.js.map} +1 -1
  484. package/dist/retry.cjs +4 -5
  485. package/dist/retry.d.cts +20 -5
  486. package/dist/retry.d.ts +20 -5
  487. package/dist/retry.js +3 -4
  488. package/dist/{run-BYSHf58D.d.cts → run-CTAdRU3U.d.cts} +120 -152
  489. package/dist/{run-BYSHf58D.d.ts → run-CTAdRU3U.d.ts} +120 -152
  490. package/dist/{run-until-HEQOUVU6.js → run-until-6D6TQ4JN.js} +27 -59
  491. package/dist/run-until-6D6TQ4JN.js.map +1 -0
  492. package/dist/{run-until-U2B5FJJI.cjs → run-until-DG2KXWB2.cjs} +27 -59
  493. package/dist/run-until-DG2KXWB2.cjs.map +1 -0
  494. package/dist/sandbox/bwrap.d.cts +11 -1
  495. package/dist/sandbox/bwrap.d.ts +11 -1
  496. package/dist/sandbox/index.cjs +26 -30
  497. package/dist/sandbox/index.cjs.map +1 -1
  498. package/dist/sandbox/index.d.cts +8 -1
  499. package/dist/sandbox/index.d.ts +8 -1
  500. package/dist/sandbox/index.js +10 -14
  501. package/dist/sandbox/index.js.map +1 -1
  502. package/dist/sandbox/linux-sandbox.d.cts +20 -4
  503. package/dist/sandbox/linux-sandbox.d.ts +20 -4
  504. package/dist/sandbox/types.d.cts +18 -2
  505. package/dist/sandbox/types.d.ts +18 -2
  506. package/dist/sanitize/index.cjs +2 -2
  507. package/dist/sanitize/index.js +1 -1
  508. package/dist/sanitize/types.d.cts +15 -2
  509. package/dist/sanitize/types.d.ts +15 -2
  510. package/dist/{sdk-agent-D8qJVkuV.d.ts → sdk-agent-Dxjb0IfM.d.cts} +169 -116
  511. package/dist/{sdk-agent-DEoKhA8a.d.cts → sdk-agent-ldzpyAaF.d.ts} +169 -116
  512. package/dist/server/auth/errors.d.cts +4 -3
  513. package/dist/server/auth/errors.d.ts +4 -3
  514. package/dist/server/auth/index.cjs +28 -28
  515. package/dist/server/auth/index.cjs.map +1 -1
  516. package/dist/server/auth/index.d.cts +28 -5
  517. package/dist/server/auth/index.d.ts +28 -5
  518. package/dist/server/auth/index.js +13 -13
  519. package/dist/server/auth/index.js.map +1 -1
  520. package/dist/server/auth/oauth-transaction-store.d.cts +2 -1
  521. package/dist/server/auth/oauth-transaction-store.d.ts +2 -1
  522. package/dist/server/auth/orchestrator.d.cts +4 -1
  523. package/dist/server/auth/orchestrator.d.ts +4 -1
  524. package/dist/server/auth/types.d.cts +18 -0
  525. package/dist/server/auth/types.d.ts +18 -0
  526. package/dist/server/errors-envelope.cjs +14 -15
  527. package/dist/server/errors-envelope.cjs.map +1 -1
  528. package/dist/server/errors-envelope.d.cts +3 -3
  529. package/dist/server/errors-envelope.d.ts +3 -3
  530. package/dist/server/errors-envelope.js +3 -4
  531. package/dist/server/errors-envelope.js.map +1 -1
  532. package/dist/session-transcript-LGHSNVY5.cjs +62 -0
  533. package/dist/{session-transcript-6WNITKRE.cjs.map → session-transcript-LGHSNVY5.cjs.map} +1 -1
  534. package/dist/session-transcript-VTBTCGQX.js +5 -0
  535. package/dist/{session-transcript-XAEKW6P7.js.map → session-transcript-VTBTCGQX.js.map} +1 -1
  536. package/dist/skills.cjs +8 -9
  537. package/dist/skills.js +6 -7
  538. package/dist/stream-object-HBFMIZLD.js +7 -0
  539. package/dist/{stream-object-UF4QRQRU.js.map → stream-object-HBFMIZLD.js.map} +1 -1
  540. package/dist/stream-object-QSKHISDJ.cjs +20 -0
  541. package/dist/{stream-object-ZJTQNKY3.cjs.map → stream-object-QSKHISDJ.cjs.map} +1 -1
  542. package/dist/stream-object.d.ts +2 -4
  543. package/dist/subagents-loader-LSKM2UIK.js +7 -0
  544. package/dist/{subagents-loader-CRT5LLL3.js.map → subagents-loader-LSKM2UIK.js.map} +1 -1
  545. package/dist/subagents-loader-YWFE7KYE.cjs +16 -0
  546. package/dist/{subagents-loader-YEUFFPAL.cjs.map → subagents-loader-YWFE7KYE.cjs.map} +1 -1
  547. package/dist/subagents-loader.cjs +7 -8
  548. package/dist/subagents-loader.cjs.map +1 -1
  549. package/dist/subagents-loader.d.cts +5 -3
  550. package/dist/subagents-loader.d.ts +5 -3
  551. package/dist/subagents-loader.js +5 -6
  552. package/dist/subagents-loader.js.map +1 -1
  553. package/dist/subagents.cjs +2 -2
  554. package/dist/subagents.cjs.map +1 -1
  555. package/dist/subagents.js +1 -1
  556. package/dist/subagents.js.map +1 -1
  557. package/dist/subscription/define-subscription.d.cts +4 -1
  558. package/dist/subscription/define-subscription.d.ts +4 -1
  559. package/dist/subscription/index.cjs +4 -5
  560. package/dist/subscription/index.cjs.map +1 -1
  561. package/dist/subscription/index.d.cts +2 -0
  562. package/dist/subscription/index.d.ts +2 -0
  563. package/dist/subscription/index.js +3 -4
  564. package/dist/subscription/index.js.map +1 -1
  565. package/dist/subscription/internal/server-integration.d.cts +5 -0
  566. package/dist/subscription/internal/server-integration.d.ts +5 -0
  567. package/dist/subscription/internal/subscription-runtime.d.cts +13 -1
  568. package/dist/subscription/internal/subscription-runtime.d.ts +13 -1
  569. package/dist/task-errors.d.ts +58 -0
  570. package/dist/task-store.cjs +7 -8
  571. package/dist/task-store.d.cts +2 -0
  572. package/dist/task-store.d.ts +2 -0
  573. package/dist/task-store.js +4 -5
  574. package/dist/types/agent-prims.d.ts +21 -0
  575. package/dist/types/agent.d.ts +63 -15
  576. package/dist/types/batch.d.ts +3 -0
  577. package/dist/types/budget-tracker.d.ts +3 -0
  578. package/dist/types/budget.d.ts +12 -3
  579. package/dist/types/content-blocks.d.ts +3 -0
  580. package/dist/types/context.d.ts +3 -0
  581. package/dist/types/conversation.d.ts +5 -0
  582. package/dist/types/cron.d.ts +5 -0
  583. package/dist/types/env-policy.d.ts +3 -0
  584. package/dist/types/eval.d.ts +3 -0
  585. package/dist/types/fork.d.ts +3 -0
  586. package/dist/types/goal-events.d.ts +3 -0
  587. package/dist/types/mcp.d.ts +5 -0
  588. package/dist/types/memory-adapter.d.ts +3 -0
  589. package/dist/types/memory-provider.d.ts +44 -5
  590. package/dist/types/messages-base.d.ts +4 -0
  591. package/dist/types/messages.d.ts +5 -0
  592. package/dist/types/plugin.d.ts +32 -4
  593. package/dist/types/processors.d.ts +3 -0
  594. package/dist/types/provider-profile.d.ts +3 -0
  595. package/dist/types/providers.d.ts +3 -0
  596. package/dist/types/run-events.d.ts +36 -9
  597. package/dist/types/run.d.ts +29 -2
  598. package/dist/types/sdk-agent.d.ts +43 -0
  599. package/dist/types/session-message.d.ts +3 -0
  600. package/dist/types/session-record.d.ts +3 -0
  601. package/dist/types/session-store.d.ts +45 -0
  602. package/dist/types/task.d.ts +3 -11
  603. package/dist/types/theokit.d.ts +3 -0
  604. package/dist/types/trajectory.d.ts +3 -0
  605. package/dist/types/updates.d.ts +5 -0
  606. package/dist/types/usage.d.ts +4 -1
  607. package/dist/types/workflow.d.ts +13 -135
  608. package/dist/workflow-as-tool.d.ts +66 -0
  609. package/dist/workflow-errors.d.ts +164 -0
  610. package/dist/workflow.cjs +29 -30
  611. package/dist/workflow.d.cts +135 -74
  612. package/dist/workflow.d.ts +135 -74
  613. package/dist/workflow.js +8 -9
  614. package/docs/adr/README.md +2604 -0
  615. package/docs/error-codes.md +137 -103
  616. package/docs/harness-capability-map.md +30 -20
  617. package/docs/memory-decisions.md +1 -1
  618. package/package.json +3 -7
  619. package/bin/theokit-migrate-config.mjs +0 -278
  620. package/bin/theokit-migrate-memory.mjs +0 -116
  621. package/dist/agent-3JK7VXNN.js +0 -57
  622. package/dist/agent-PVINJTUR.cjs +0 -66
  623. package/dist/agent-session-store-6EL5NPA4.cjs +0 -24
  624. package/dist/agent-session-store-OPGRB4XM.js +0 -7
  625. package/dist/batch-BXYTW2DP.cjs.map +0 -1
  626. package/dist/batch-L4ZXS46M.js.map +0 -1
  627. package/dist/chunk-25BD2R5G.js.map +0 -1
  628. package/dist/chunk-2D34UTDC.js.map +0 -1
  629. package/dist/chunk-2GUYQR5P.js.map +0 -1
  630. package/dist/chunk-2QDYBS2A.js.map +0 -1
  631. package/dist/chunk-3FFAEAUJ.cjs.map +0 -1
  632. package/dist/chunk-3O42QOMJ.js.map +0 -1
  633. package/dist/chunk-3OR54XG4.js.map +0 -1
  634. package/dist/chunk-4FFBAUFS.js.map +0 -1
  635. package/dist/chunk-4O5TGQBW.cjs.map +0 -1
  636. package/dist/chunk-4OTIXDMU.cjs.map +0 -1
  637. package/dist/chunk-4PYZ5AX3.cjs.map +0 -1
  638. package/dist/chunk-4QZSA2HJ.js.map +0 -1
  639. package/dist/chunk-4ZHTIJNE.cjs.map +0 -1
  640. package/dist/chunk-52NKC5HT.cjs.map +0 -1
  641. package/dist/chunk-6HKGLTJI.cjs.map +0 -1
  642. package/dist/chunk-6JSIEDKL.cjs.map +0 -1
  643. package/dist/chunk-7AD3ZTZL.js.map +0 -1
  644. package/dist/chunk-7BG5UH3T.cjs.map +0 -1
  645. package/dist/chunk-7YGCPMGB.js.map +0 -1
  646. package/dist/chunk-A46SWMIF.js.map +0 -1
  647. package/dist/chunk-A4JVILQU.js.map +0 -1
  648. package/dist/chunk-ACDLHN3W.js.map +0 -1
  649. package/dist/chunk-AQO3NSRG.cjs +0 -41
  650. package/dist/chunk-AQO3NSRG.cjs.map +0 -1
  651. package/dist/chunk-AWO27VRZ.js.map +0 -1
  652. package/dist/chunk-B2J4ZMZL.cjs.map +0 -1
  653. package/dist/chunk-B4EOJWOY.cjs.map +0 -1
  654. package/dist/chunk-BU4KFWXF.js.map +0 -1
  655. package/dist/chunk-BZRFXJHA.js.map +0 -1
  656. package/dist/chunk-C3NT3PVE.js.map +0 -1
  657. package/dist/chunk-C72AZW7J.js.map +0 -1
  658. package/dist/chunk-CQBXOJ6U.cjs.map +0 -1
  659. package/dist/chunk-D4CUGAKZ.js.map +0 -1
  660. package/dist/chunk-DN2PACRI.js.map +0 -1
  661. package/dist/chunk-DXGZ2NUG.cjs.map +0 -1
  662. package/dist/chunk-EG4QM7ZJ.cjs +0 -39
  663. package/dist/chunk-EG4QM7ZJ.cjs.map +0 -1
  664. package/dist/chunk-GPKAF7SG.js.map +0 -1
  665. package/dist/chunk-HCZD23VS.cjs.map +0 -1
  666. package/dist/chunk-HS7AVXTF.js.map +0 -1
  667. package/dist/chunk-IAHZCGBE.cjs.map +0 -1
  668. package/dist/chunk-J24VJOH3.cjs.map +0 -1
  669. package/dist/chunk-JJ3OVRUM.cjs.map +0 -1
  670. package/dist/chunk-JPBKYL3B.cjs +0 -18
  671. package/dist/chunk-JPBKYL3B.cjs.map +0 -1
  672. package/dist/chunk-K5OJUYSZ.js.map +0 -1
  673. package/dist/chunk-KQ7TS7WW.cjs.map +0 -1
  674. package/dist/chunk-KQRW2GPZ.js.map +0 -1
  675. package/dist/chunk-KYAJINUI.cjs.map +0 -1
  676. package/dist/chunk-L3MTL4NA.js.map +0 -1
  677. package/dist/chunk-L4BDVXIM.js.map +0 -1
  678. package/dist/chunk-LXI4XZEC.js.map +0 -1
  679. package/dist/chunk-LYRDF5TQ.cjs.map +0 -1
  680. package/dist/chunk-N2U4AZGB.js.map +0 -1
  681. package/dist/chunk-O7DK5PBJ.cjs.map +0 -1
  682. package/dist/chunk-O7LZFG6O.cjs.map +0 -1
  683. package/dist/chunk-OFRFZRQ4.cjs.map +0 -1
  684. package/dist/chunk-OSEG74VJ.js.map +0 -1
  685. package/dist/chunk-RFMBZPOW.cjs.map +0 -1
  686. package/dist/chunk-RFXWMRFC.js.map +0 -1
  687. package/dist/chunk-RIAM53CP.js.map +0 -1
  688. package/dist/chunk-RMWTPV3M.cjs.map +0 -1
  689. package/dist/chunk-RNB4APBZ.js.map +0 -1
  690. package/dist/chunk-SAVIWMZB.js.map +0 -1
  691. package/dist/chunk-SZVR77EJ.cjs.map +0 -1
  692. package/dist/chunk-TAZVKYWJ.js.map +0 -1
  693. package/dist/chunk-U54XCYG3.js.map +0 -1
  694. package/dist/chunk-U6IFHFWK.js.map +0 -1
  695. package/dist/chunk-UALX2J2Q.cjs.map +0 -1
  696. package/dist/chunk-UBDMVMBZ.js.map +0 -1
  697. package/dist/chunk-UFLD2HEV.js +0 -35
  698. package/dist/chunk-UFLD2HEV.js.map +0 -1
  699. package/dist/chunk-UGT7GK7I.cjs.map +0 -1
  700. package/dist/chunk-UNYXQ4M5.js.map +0 -1
  701. package/dist/chunk-UTSRIDKZ.js.map +0 -1
  702. package/dist/chunk-UU36SHFY.cjs.map +0 -1
  703. package/dist/chunk-V2BOS4WF.cjs.map +0 -1
  704. package/dist/chunk-VJ26EKGJ.cjs.map +0 -1
  705. package/dist/chunk-VKJ7V7EB.cjs.map +0 -1
  706. package/dist/chunk-VLVVJLDH.cjs.map +0 -1
  707. package/dist/chunk-WLQNMXQE.js.map +0 -1
  708. package/dist/chunk-WNO3C3N2.cjs.map +0 -1
  709. package/dist/chunk-WTMU7J4U.js +0 -14
  710. package/dist/chunk-WTMU7J4U.js.map +0 -1
  711. package/dist/chunk-XEQ3TM66.js +0 -35
  712. package/dist/chunk-XEQ3TM66.js.map +0 -1
  713. package/dist/chunk-XJCXEKMD.cjs.map +0 -1
  714. package/dist/chunk-XL7Q7HB2.cjs.map +0 -1
  715. package/dist/chunk-XWTLIGO3.cjs.map +0 -1
  716. package/dist/chunk-YML4ME27.cjs.map +0 -1
  717. package/dist/chunk-ZCIRZE37.cjs.map +0 -1
  718. package/dist/chunk-ZSWPZ23K.cjs.map +0 -1
  719. package/dist/chunk-ZWRG4NWT.cjs.map +0 -1
  720. package/dist/chunk-ZZMZWBR6.js.map +0 -1
  721. package/dist/compact-session-QV57KR66.cjs +0 -59
  722. package/dist/compact-session-RIGOWC4Y.js +0 -22
  723. package/dist/context-AGQ3DIZU.cjs +0 -24
  724. package/dist/context-GQRFBCLP.js +0 -7
  725. package/dist/executor-6CYCA7MI.cjs.map +0 -1
  726. package/dist/executor-QSEC3MRH.js.map +0 -1
  727. package/dist/fork-agent-RSV4E3EA.js.map +0 -1
  728. package/dist/fork-agent-Y2IK2RYU.cjs.map +0 -1
  729. package/dist/fs-session-store-4PIHT5UX.cjs +0 -20
  730. package/dist/fs-session-store-NM6YSTE2.js +0 -11
  731. package/dist/generate-object-GUNAUVBX.js +0 -8
  732. package/dist/generate-object-R7HTMW7F.cjs +0 -21
  733. package/dist/index-manager-2SRX45WJ.cjs +0 -27
  734. package/dist/index-manager-SP4ISSDX.js +0 -18
  735. package/dist/inject-session-WQKMC3GR.cjs +0 -29
  736. package/dist/internal/persistence/credential-pool-store.d.cts +0 -32
  737. package/dist/internal/persistence/credential-pool-store.d.ts +0 -32
  738. package/dist/internal/runtime/memory/memory-path-selector.d.ts +0 -73
  739. package/dist/judge-call-LAHMBJ57.cjs +0 -23
  740. package/dist/judge-call-LVXABPS3.js +0 -6
  741. package/dist/oauth-transaction-store-BT4GLTLK.cjs +0 -36
  742. package/dist/oauth-transaction-store-W52KVHQ4.js +0 -3
  743. package/dist/registry-75W33OGL.js +0 -10
  744. package/dist/registry-V7BDQ6QB.cjs +0 -47
  745. package/dist/run-until-HEQOUVU6.js.map +0 -1
  746. package/dist/run-until-U2B5FJJI.cjs.map +0 -1
  747. package/dist/server/adapter/express.d.cts +0 -9
  748. package/dist/server/adapter/express.d.ts +0 -9
  749. package/dist/server/adapter/fastify.d.cts +0 -9
  750. package/dist/server/adapter/fastify.d.ts +0 -9
  751. package/dist/server/adapter/hono.d.cts +0 -9
  752. package/dist/server/adapter/hono.d.ts +0 -9
  753. package/dist/server/adapter/shared-handler.d.cts +0 -9
  754. package/dist/server/adapter/shared-handler.d.ts +0 -9
  755. package/dist/server/adapter/types.d.cts +0 -33
  756. package/dist/server/adapter/types.d.ts +0 -33
  757. package/dist/session-transcript-6WNITKRE.cjs +0 -63
  758. package/dist/session-transcript-XAEKW6P7.js +0 -6
  759. package/dist/stream-object-UF4QRQRU.js +0 -8
  760. package/dist/stream-object-ZJTQNKY3.cjs +0 -21
  761. package/dist/subagents-loader-CRT5LLL3.js +0 -8
  762. package/dist/subagents-loader-YEUFFPAL.cjs +0 -17
  763. /package/dist/{batch.d.ts → internal/agent/batch.d.ts} +0 -0
  764. /package/dist/{agent-helpers.d.ts → internal/agent/helpers.d.ts} +0 -0
  765. /package/dist/internal/agent-loop/{loop-types.d.ts → types.d.ts} +0 -0
  766. /package/dist/internal/auth/{auth-types.d.ts → types.d.ts} +0 -0
  767. /package/dist/internal/cloud-agent/{cloud-payload-types.d.ts → types.d.ts} +0 -0
  768. /package/dist/internal/{runtime/concurrency → concurrency}/abort-utils.d.ts +0 -0
  769. /package/dist/internal/{runtime/concurrency → concurrency}/async-local-storage.d.ts +0 -0
  770. /package/dist/internal/{runtime/concurrency → concurrency}/async-semaphore.d.ts +0 -0
  771. /package/dist/internal/{runtime/concurrency → concurrency}/delegation-depth.d.ts +0 -0
  772. /package/dist/internal/{runtime/concurrency → concurrency}/map-with-concurrency.d.ts +0 -0
  773. /package/dist/internal/{runtime/retry → error-mappers}/default-retriable.d.ts +0 -0
  774. /package/dist/internal/{runtime/fixtures/fixture-types.d.ts → memory/storage/list-markdown.d.cts} +0 -0
  775. /package/dist/internal/{runtime/plugins/plugins-manager.d.ts → memory/storage/list-markdown.d.ts} +0 -0
  776. /package/dist/internal/{resilience → retry}/circuit-breaker.d.ts +0 -0
  777. /package/dist/internal/{runtime/retry → retry}/with-retry.d.ts +0 -0
  778. /package/dist/internal/{security/secret-redactor.d.cts → runtime/fixtures/types.d.ts} +0 -0
  779. /package/dist/internal/runtime/{memory → memory-glue}/memory-store.d.ts +0 -0
  780. /package/dist/internal/runtime/{memory → memory-glue}/select-facts.d.ts +0 -0
  781. /package/dist/internal/runtime/{plugins → plugin-loader}/plugin-frontmatter.d.ts +0 -0
  782. /package/dist/internal/{security/secret-redactor.d.ts → runtime/plugin-loader/plugins-manager.d.ts} +0 -0
  783. /package/dist/internal/runtime/{reasoning → system-prompt}/native-reasoning.d.ts +0 -0
  784. /package/dist/internal/{runtime/context/path-containment.d.ts → security/path-containment.d.cts} +0 -0
  785. /package/dist/internal/session/{session-types.d.ts → types.d.ts} +0 -0
  786. /package/dist/internal/{zod/to-json-schema.d.ts → zod-to-json-schema.d.ts} +0 -0
  787. /package/dist/subscription/internal/{adapter-types.d.cts → types.d.cts} +0 -0
  788. /package/dist/subscription/internal/{adapter-types.d.ts → types.d.ts} +0 -0
@@ -4,7 +4,7 @@ Every public symbol the TheoKit workspace publishes, and the exact specifier to
4
4
 
5
5
  A symbol listed under two specifiers is reachable from both, but that does NOT make the two interchangeable: a class emitted separately into a subpath entry is a distinct nominal type from the one in the root bundle, so passing one where the other is expected fails on a private field. When a symbol appears twice, import it and everything it is passed to from the SAME specifier.
6
6
 
7
- 1177 export(s) across 46 entry point(s).
7
+ 1187 export(s) across 46 entry point(s).
8
8
 
9
9
  ## `@theokit/acp`
10
10
 
@@ -67,6 +67,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
67
67
  | `AgentDisposedError` | class | T1.6 — Thrown when a consumer calls `agent.send()` or any method on an agent that has already been `dispose()`d. |
68
68
  | `AgentFactory` | class | Handle returned by {@link createAgentFactory } . |
69
69
  | `AgentMemory` | interface | Direct memory API exposed on `SDKAgent.memory`. |
70
+ | `AgentOperation` | type | An operation a consumer may ask an {@link SDKAgent } about via `supports()`. |
70
71
  | `AgentOperationOptions` | interface | Options for archive/unarchive/delete. |
71
72
  | `AgentOptions` | interface | Top-level options accepted by `Agent.create()`. |
72
73
  | `AgentPromptResult` | type | Result of a one-shot {@link Agent.prompt } call. |
@@ -102,7 +103,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
102
103
  | `BudgetLimit` | interface | A single limit; stacked in an array (D384, ANY exceeded blocks). |
103
104
  | `BudgetMode` | type | Enforcement mode (D383). |
104
105
  | `BudgetOptions` | interface | Options for `Budget.create`. |
105
- | `BudgetScope` | type | Scope of a budget — where the charge is attributed. |
106
+ | `BudgetScope` | type | Accounting scope for a budget. |
106
107
  | `BudgetSnapshot` | interface | Per-window snapshot returned by `Budget.snapshot()`. |
107
108
  | `BudgetThresholdEvent` | interface | Threshold event emitted at 80% and 95% in `warn` and `block` modes. |
108
109
  | `BudgetTotal` | interface | Aggregate snapshot of usage so far. |
@@ -114,12 +115,13 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
114
115
  | `CloudEnv` | interface | Cloud execution environment. |
115
116
  | `CloudOptions` | interface | Cloud agent configuration. |
116
117
  | `CloudRepo` | interface | Repo to clone into a cloud agent's VM. |
118
+ | `CompatSource` | type | A foreign configuration dialect this SDK can read. |
117
119
  | `CompletionCheck` | interface | SE34 — the per-send completion criterion (see {@link SendOptions.completionCheck } ). |
118
120
  | `CompletionCheckResult` | interface | SE34 — the resolved per-send completion verdict (see {@link RunResult.completionCheck } ). |
119
121
  | `computeCost` | function | Returns CostBreakdown with `status="estimated"`, `"unknown"`, or `"included"`. |
120
122
  | `ConfigurationError` | class | Invalid model, bad request parameters, malformed options. |
121
123
  | `ContextBudget` | interface | Token budget used by the context manager for a single agent. |
122
- | `ContextManagerKind` | type | Context manager backend. |
124
+ | `ContextManagerKind` | type | Owner: `src/` (1 of 2 importers). |
123
125
  | `ContextSettings` | interface | Context configuration accepted by `Agent.create()` via {@link AgentOptions.context } . |
124
126
  | `ContextSnapshot` | interface | Result of `agent.context.snapshot()`. |
125
127
  | `ContextSource` | interface | A single context source resolved by the context manager. |
@@ -164,7 +166,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
164
166
  | `EnvReachabilityInput` | interface | The three lists the audit compares: every key the product declares, the subset an environment variable can set, and the documented exemptions. |
165
167
  | `ErrorCode` | type | Finite, machine-readable error codes for provider-originated errors (ADR D66). |
166
168
  | `ErrorMetadata` | interface | Structured context for errors that originated from a provider HTTP call (ADR D65). |
167
- | `estimateTokens` | function | Approximate token count from string length. |
169
+ | `estimateTokens` | function | Tokenizer-free token estimate via the conventional ~4-chars-per-token heuristic: `ceil(text.length / CHARS_PER_TOKEN)`. |
168
170
  | `evaluateBlastRadius` | function | Decide one declared action against the scopes the operator granted. |
169
171
  | `EventBus` | class | A typed publish/subscribe bus, parameterised by a map of event name to payload type. |
170
172
  | `EvictReason` | type | Live-agent cache for production deploys (Production-Readiness #2, ADRs D307-D310). |
@@ -226,6 +228,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
226
228
  | `MemoryFact` | interface | A single memory fact returned by `recall` or `get`. |
227
229
  | `MemoryId` | type | Branded provider memory ID. |
228
230
  | `MemoryProvider` | interface | The kernel-facing contract. |
231
+ | `MemoryProviderAgentRef` | interface | The agent identity a `MemoryProvider` is given — the whole of it. |
229
232
  | `MemoryProviderFactory` | type | Memory provider factory shape (ADR D141). |
230
233
  | `MemoryProviderHandle` | interface | Opaque handle returned by `init()`. |
231
234
  | `MemoryProviderInitOptions` | interface | Options for `MemoryProvider.init(...)`. |
@@ -257,7 +260,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
257
260
  | `PermissionGate` | type | SE1 — the enriched `canUseTool` gate (the Anthropic-parity shape). |
258
261
  | `PermissionGateContext` | interface | SE1 — context passed to the {@link PermissionGate } . |
259
262
  | `PermissionGateDecision` | type | SE1 — the resolution of an `"ask"` verdict by the host gate. |
260
- | `PermissionMode` | type | SE1 a per-run permission MODE that adjusts the rule-engine verdict globally. |
263
+ | `PermissionMode` | type | How the permission engine treats the UNMATCHED verdict. |
261
264
  | `PermissionPlugin` | class | SE36 — `PermissionPlugin.create` replaces `createPermissionPlugin` (ADR 0015). |
262
265
  | `PermissionPluginOptions` | interface | Options for {@link createPermissionPlugin } . |
263
266
  | `PermissionRule` | interface | One entry in a {@link PermissionEngine } 's ordered rule list. |
@@ -265,6 +268,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
265
268
  | `planReaping` | function | Sort artifacts into keep, reap, and undetermined — and delete nothing. |
266
269
  | `Plugin` | type | SE36 — `Plugin.create` replaces `definePlugin` (ADR 0015). |
267
270
  | `PluginContext` | interface | The registration surface passed to a `"general"` plugin's `register(ctx)`, and the plugin's only route into the agent. |
271
+ | `PluginHookDisposer` | type | Detaches a hook handler attached with {@link PluginContext.on } . |
268
272
  | `PluginsSettings` | interface | Plugins configuration accepted by `Agent.create()` via {@link AgentOptions.plugins } . |
269
273
  | `PostAssistantReplyContext` | interface | Context passed to `post_assistant_reply` hook handlers (ADR D145). |
270
274
  | `PostToolCallContext` | interface | #65 — context for the `post_tool_call` hook (fired after a tool runs). |
@@ -278,7 +282,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
278
282
  | `ProcessorTripwire` | interface | The tripwire detail attached to {@link RunResult.tripwire } when a processor aborts, and carried by the `tripwire` run-event. |
279
283
  | `ProcessorViolation` | interface | A policy violation surfaced to a processor's {@link Processor.onViolation } callback — on `abort()` (blocking) AND on `warn()` (non-blocking). |
280
284
  | `Provider` | class | SE36 — uniform namespace API. |
281
- | `ProviderCapability` | type | Capability slot a provider can fulfill. |
285
+ | `ProviderCapability` | type | Owner: `src/` (4 of 9 importers). |
282
286
  | `ProviderProfile` | interface | A data-only declaration of an LLM provider: its name, HTTP dialect, auth style, base URL and fallback models. |
283
287
  | `ProviderRoute` | interface | A single user-declared routing rule. |
284
288
  | `ProviderRoutingSettings` | interface | Provider routing configuration accepted by `Agent.create()` via {@link AgentOptions.providers } . |
@@ -298,10 +302,11 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
298
302
  | `RunCompactBoundaryEvent` | interface | The conversation crossed a compaction boundary (history was summarized). |
299
303
  | `RunCompletionCheckEvent` | interface | SE34 — the per-send completion check (`isTaskComplete`) produced a verdict. |
300
304
  | `RunErrorDetail` | interface | Structured error attached to a {@link RunResult } when the underlying run transitioned to `"error"` status. |
301
- | `RunEvent` | type | SE2 typed runtime EVENT stream, ADDITIVE to the `SDKMessage` content stream. |
302
- | `RunEventSink` | type | SE2 the opt-in sink for {@link RunEvent } s. |
305
+ | `RunEvent` | type | Owner: `internal/agent-loop/` (3 of 11 importers). |
306
+ | `RunEventSink` | type | Receives every {@link RunEvent } a run emits, in emission order. |
303
307
  | `RunGitInfo` | interface | Git metadata attached to cloud runs. |
304
308
  | `runGoalLoop` | function | Run the goal-driven loop (`send → judge → continuation`) over ANY `send → wait` surface. |
309
+ | `RunMemoryDegradedEvent` | interface | A memory stage failed and the run continued without it. |
305
310
  | `RunOperation` | type | Operations that may or may not be supported on a given {@link Run } , or on its parent agent. |
306
311
  | `RunPermissionDeniedEvent` | interface | A tool call was DENIED before dispatch — by the permission gate/plugin (SE1), an operator file-hook `preToolUse`, or the fork tool-whitelist. |
307
312
  | `RunRateLimitEvent` | interface | The provider returned a rate-limit (HTTP 429); the loop will back off + retry. |
@@ -340,12 +345,12 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
340
345
  | `SDKTaskMessage` | interface | Task-level milestones and summaries. |
341
346
  | `SDKThinkingMessage` | interface | Reasoning content. |
342
347
  | `SDKToolUseMessage` | interface | Tool invocation lifecycle event. |
343
- | `SDKUser` | interface | Account-level user info returned by `Theokit.me()`. |
348
+ | `SDKUser` | interface | Owner: `internal/catalog/` (2 of 3 importers). |
344
349
  | `SDKUserMessage` | interface | Structured form of `agent.send()`'s message argument. |
345
350
  | `SDKUserMessageEvent` | interface | Echo of the user prompt for this run. |
346
351
  | `Security` | class | Public security namespace (T2.1, ADR D68). |
347
352
  | `SecurityFloorInput` | interface | The vocabulary, the layer names, and the values to resolve. |
348
- | `SendOptions` | interface | Per-send overrides and callbacks. |
353
+ | `SendOptions` | interface | Per-send overrides and callbacks. |
349
354
  | `SessionLifecycleContext` | interface | #65 — context for the `on_session_start` / `on_session_end` hooks. |
350
355
  | `SessionMessage` | interface | One turn of a session. |
351
356
  | `SessionMessagePart` | type | One structured element of a {@link SessionMessage } . |
@@ -441,7 +446,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
441
446
  | `UsageAccumulator` | class | Sums the per-step token counts of a multi-step run into one `TokenUsage`. |
442
447
  | `UserMessage` | interface | User-authored message in a conversation history. |
443
448
  | `UserMessageAppendedUpdate` | interface | User message appended to the conversation. |
444
- | `Verdict` | type | M80 the terminal verdicts a judge can return. |
449
+ | `Verdict` | type | Owner: `internal/judge/` (3 of 8 importers). |
445
450
  | `verifyLayerOrdering` | function | Assert that each layer strictly outranks the one before it. |
446
451
  | `WiredEntity` | interface | What one capability asked for, and what it got. |
447
452
  | `WiringRecordInput` | interface | The two halves of the observation: the gate that was applied, and what was handed to the builder. |
@@ -618,7 +623,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
618
623
  | `memoryMdPath` | function | Path to `MEMORY.md`, the index that points at the per-memory files — and, in stores written before #389, the flat `## Facts` list itself. |
619
624
  | `MemoryReadResult` | interface | Result of `reader.readFile`. |
620
625
  | `memoryReadRoots` | function | Every directory a read must cover, deduplicated and in precedence order. |
621
- | `MemoryRoot` | type | A path that {@link resolveMemoryRoot } produced the only thing the subsystem's path helpers accept. |
626
+ | `MemoryRoot` | type | A directory that has been RESOLVED as a memory root, distinguished from a bare `cwd`. |
622
627
  | `MemorySearchHit` | interface | Memory index manager contract — leaf types shared by `index-manager.ts` (orchestrator), `index-manager-dispatch.ts` (backend dispatch), `lance-memory-adapter.ts` (Lance backend), and `memory-index.... |
623
628
  | `MemorySearchToolOptions` | interface | Options for {@link createMemorySearchTool } . |
624
629
  | `MemoryTool` | interface | A memory tool ready to hand to the agent loop: the JSON-serialisable description an LLM sees, plus the `execute` that runs it. |
@@ -800,6 +805,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
800
805
  | Symbol | Kind | Summary |
801
806
  |---|---|---|
802
807
  | `A2AMessage` | interface | One message as a handler receives it. |
808
+ | `A2APeerNotRegisteredError` | class | Thrown by {@link MessageBus.send } and {@link MessageBus.request } when `to` has no registered handler. |
803
809
  | `A2ARequestTimeoutError` | class | A peer did not answer a {@link MessageBus.request } within its timeout. |
804
810
  | `AgentMailbox` | class | One agent's endpoint on a {@link MessageBus } : registers `agentId` on construction and forwards inbound messages to the handler installed by `onMessage`. |
805
811
  | `DelegationCompleteContext` | interface | Context passed to {@link SubAgentSpec.onDelegationComplete } after the child settles. |
@@ -868,6 +874,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
868
874
  |---|---|---|
869
875
  | `ABSOLUTE_CONTEXT_WINDOW_CAP` | const | Absolute cap on a declared context window, applied when no catalog entry exists to compare against. |
870
876
  | `buildCheckpoint` | function | Build a checkpoint marker turn (a `system` turn whose content starts with `marker`, default {@link CHECKPOINT_MARKER } ). |
877
+ | `CHARS_PER_TOKEN` | const | Characters per token in the tokenizer-free estimate below. |
871
878
  | `CHECKPOINT_MARKER` | const | Sentinel prefix marking a conversation checkpoint turn. |
872
879
  | `compactTranscript` | function | Compact a transcript. |
873
880
  | `CompactTranscriptOptions` | interface | Options for {@link compactTranscript } . |
@@ -878,7 +885,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
878
885
  | `ContextWindowSource` | type | Where the effective window came from — carried into the M77 structured event. |
879
886
  | `EffectiveContextWindow` | interface | Result of {@link resolveEffectiveContextWindow } . |
880
887
  | `EffectiveContextWindowInput` | interface | Input to {@link resolveEffectiveContextWindow } . |
881
- | `estimateTokens` | function | Tokenizer-free token estimate via the conventional ~4-chars-per-token heuristic: `ceil(text.length / 4)`. |
888
+ | `estimateTokens` | function | Tokenizer-free token estimate via the conventional ~4-chars-per-token heuristic: `ceil(text.length / CHARS_PER_TOKEN)`. |
882
889
  | `FilterCheckpointOptions` | interface | Options for {@link filterFromLatestCheckpoint } . |
883
890
  | `filterFromLatestCheckpoint` | function | Return the turns relative to the most recent checkpoint marker (all turns if none). |
884
891
  | `isContextOverflowError` | function | True iff `err` is a {@link TheokitAgentError } (or subclass) reporting a context-window-exceeded condition (the typed `context_too_long` code). |
@@ -938,6 +945,8 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
938
945
  | `MemoryAdapterErrorCode` | type | Finite error codes specific to memory adapter operations (ADR D141). |
939
946
  | `NetworkError` | class | Service unavailable, timeout, transport-level failure. |
940
947
  | `RateLimitError` | class | Too many requests or usage limits exceeded. |
948
+ | `StructuredOutputError` | class | The failure contract shared by `generateObject` and `streamObject`. |
949
+ | `StructuredOutputErrorCode` | type | Why a structured-output call failed. |
941
950
  | `TaskNotFoundError` | class | Thrown when `Task.subscribe(id)` is called for a task that has been evicted, never submitted, or evicted after retention (D373). |
942
951
  | `TheokitAgentError` | class | Base class for all errors thrown by `@theokit/sdk`. |
943
952
  | `UnknownAgentError` | class | Catch-all for unclassified server or runtime errors. |
@@ -999,7 +1008,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
999
1008
  | `InteractiveBackend` | class | Pluggable interactive-session backend. |
1000
1009
  | `InteractiveProvider` | type | A backend OR a per-request resolver of one — mirrors {@link FilesystemProvider } . |
1001
1010
  | `InteractiveUnavailableError` | class | Thrown when the interactive path is requested but no backend can provide it (no provider injected, or a local backend whose native module / spawn failed). |
1002
- | `NoSuchSessionError` | class | Thrown (typed) when a write/kill targets an unknown or already-exited session, so callers branch on the type instead of string-matching a message. |
1011
+ | `NoSuchSessionError` | class | Thrown (typed) when a write/kill targets an unknown or already-exited session, so callers branch on the type instead of string-matching a message. |
1003
1012
  | `resolveInteractive` | function | Resolve an {@link InteractiveProvider } to a concrete backend for `ctx`. |
1004
1013
  | `StartInteractiveOptions` | interface | Bounds a start call. |
1005
1014
  | `StartInteractiveResult` | interface | Result of starting a session: its id + whatever the program printed on startup. |
@@ -1041,7 +1050,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
1041
1050
  | `MemoryLocationConfig` | type | Only `directory` is read; the full config is accepted so callers pass what they already hold. |
1042
1051
  | `memoryMdPath` | function | Path to `MEMORY.md`, the index that points at the per-memory files — and, in stores written before #389, the flat `## Facts` list itself. |
1043
1052
  | `memoryReadRoots` | function | Every directory a read must cover, deduplicated and in precedence order. |
1044
- | `MemoryRoot` | type | A path that {@link resolveMemoryRoot } produced the only thing the subsystem's path helpers accept. |
1053
+ | `MemoryRoot` | type | A directory that has been RESOLVED as a memory root, distinguished from a bare `cwd`. |
1045
1054
  | `notesDir` | function | Path to `<memory root>/notes`, where per-topic notes and the consolidated notes a dreaming sweep writes live. |
1046
1055
  | `persistActiveMemoryTranscript` | function | Write one active-memory recall transcript under `<memory root>/transcripts/active-memory`. |
1047
1056
  | `projectMemoryDir` | function | The project store: `<cwd>/.theokit/memory`. |
@@ -1184,6 +1193,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
1184
1193
  | `isCorruptionError` | function | True when an open error indicates an unreadable / corrupt database file. |
1185
1194
  | `JsonlParseError` | class | Raised when a JSONL line is not valid JSON or is not a JSON object. |
1186
1195
  | `LiveSessionError` | class | M81 — the target is a protected session (live pointer / most-recent transcript / active entry). |
1196
+ | `LiveTranscriptError` | class | M81 — the target is a protected session (live pointer / most-recent transcript / active entry). |
1187
1197
  | `loadJsonl` | function | Parse a JSONL file into rows. |
1188
1198
  | `openSqliteResilient` | function | Open a SQLite file with WAL (+ DELETE fallback) and corruption recovery. |
1189
1199
  | `OpenSqliteResilientOptions` | interface | Input to {@link openSqliteResilient } . |
@@ -1229,7 +1239,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
1229
1239
 
1230
1240
  | Symbol | Kind | Summary |
1231
1241
  |---|---|---|
1232
- | `Retry` | class | SE36 — `Retry.create` replaces `withRetry` (ADR 0015 / ADR-P2). |
1242
+ | `Retry` | class | SE36 — replaces `withRetry` (ADR 0015 / ADR-P2). |
1233
1243
  | `RetryOptions` | interface | Options for {@link withRetry } . |
1234
1244
 
1235
1245
  ## `@theokit/sdk/sandbox`
@@ -1256,9 +1266,9 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
1256
1266
  | `realProbeCount` | function | How many real probes ran. |
1257
1267
  | `realProbes` | const | Real probes used in production. |
1258
1268
  | `RepoProvisionError` | class | Raised when cloning or checking out a repo fails. |
1259
- | `resetBwrapMemo` | function | TEST seam clears the memo. |
1260
- | `resetInteractiveWarnLatch` | function | Reset for tests — the latch is module state and tests need isolation. |
1261
- | `resetSandboxWarnLatch` | function | Test seam: reset the WARN-once latch. |
1269
+ | `resetBwrapMemo` | function | Clears the `detectBwrapMemoized` memo. |
1270
+ | `resetInteractiveWarnLatch` | function | Reset for tests — the latch is module state and tests need isolation. |
1271
+ | `resetSandboxWarnLatch` | function | Test seam: reset the WARN-once latch. |
1262
1272
  | `resolveSandbox` | function | Resolve a {@link SandboxProvider } to a concrete backend for `ctx`. |
1263
1273
  | `resolveSandboxPosture` | function | MEDIUM-2: compute the posture so a surface (TUI footer) can show enforcement DURABLY instead of a one-shot warn. |
1264
1274
  | `restrictedSeccompPath` | function | M57 — exported so the interactive PTY backend reuses the SAME memoized x64-gated seccomp program. |
@@ -1399,7 +1409,7 @@ A symbol listed under two specifiers is reachable from both, but that does NOT m
1399
1409
  | `WorkflowNotSerializableError` | class | EC-4 absorbed — JSON.stringify failed on snapshot payload. |
1400
1410
  | `WorkflowOptions` | interface | Configuration for `Workflow.create()`, validated by Zod before the builder is handed back: a `name` outside 1..128 characters, or `persistence.backend: "json"` without a `dir`, throws there rather ... |
1401
1411
  | `WorkflowOutputError` | class | SE27 — the whole-workflow `outputSchema` rejected the final output (on `completed`). |
1402
- | `WorkflowParallelError` | class | Aggregate failure from parallel branches. |
1412
+ | `WorkflowParallelError` | class | Aggregate failure from parallel branches. |
1403
1413
  | `WorkflowPersistenceOptions` | interface | Where suspend snapshots are kept. |
1404
1414
  | `WorkflowResumeOptions` | interface | Arguments for `Workflow.resume()`. |
1405
1415
  | `WorkflowResumeStepNotFoundError` | class | EC-8 absorbed — `currentStepId` from snapshot not found in resumed workflow. |
@@ -219,7 +219,7 @@ index by hand against a non-default directory has to pass it.
219
219
  process cwd — put the store in two different places, and picking one silently is how a store ends up
220
220
  split across both. `ConfigurationError` with code `invalid_memory_directory`.
221
221
 
222
- **How to check it still holds:** `tests/memory-root.test.ts`, in particular
222
+ **How to check it still holds:** `tests/memory/root.test.ts`, in particular
223
223
  `test_the_indexer_scans_the_configured_directory_so_the_fact_is_searchable` and
224
224
  `test_the_project_store_gets_no_second_index_pointing_at_files_it_does_not_have` — the two halves
225
225
  that were broken.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@theokit/sdk",
3
- "version": "4.63.3",
3
+ "version": "5.0.0-next.1",
4
4
  "description": "TypeScript SDK for the Theo agent harness — same surface, local or cloud.",
5
5
  "license": "Apache-2.0",
6
6
  "homepage": "https://github.com/usetheokit/theokit-sdk#readme",
@@ -362,16 +362,11 @@
362
362
  },
363
363
  "files": [
364
364
  "dist",
365
- "bin",
366
365
  "docs",
367
366
  "README.md",
368
367
  "CHANGELOG.md",
369
368
  "LICENSE"
370
369
  ],
371
- "bin": {
372
- "theokit-migrate-config": "./bin/theokit-migrate-config.mjs",
373
- "theokit-migrate-memory": "./bin/theokit-migrate-memory.mjs"
374
- },
375
370
  "sideEffects": [
376
371
  "**/agent.ts",
377
372
  "**/agent.js",
@@ -444,7 +439,8 @@
444
439
  "proper-lockfile": "^4.1.2",
445
440
  "sqlite-vec": "^0.1.9",
446
441
  "typedoc": "^0.28.19",
447
- "ws": "^8.18.0"
442
+ "ws": "^8.18.0",
443
+ "@theokit/sdk-budget": "0.3.5-next.1"
448
444
  },
449
445
  "scripts": {
450
446
  "build": "tsup && cp src/internal/providers/provider-catalog.json dist/provider-catalog.json && node ../../tools/repair-dts-imports.mjs .",
@@ -1,278 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- // CLI for markdown config migration (ADR D78).
4
- // Converts legacy .theokit/hooks.json + .theokit/context.json +
5
- // .theokit/plugins/<name>/plugin.json to the markdown + YAML frontmatter
6
- // format (ADR D74).
7
- //
8
- // Usage: theokit-migrate-config [--cwd <path>] [--apply] [--no-backup] [--help]
9
-
10
- import { randomBytes } from "node:crypto";
11
- import { existsSync } from "node:fs";
12
- import { mkdir, readdir, readFile, rename, writeFile } from "node:fs/promises";
13
- import { join } from "node:path";
14
-
15
- // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: arg parser keeps the if/else chain inline for clarity (tiny CLI)
16
- function parseArgs(argv) {
17
- const args = {
18
- cwd: process.cwd(),
19
- apply: false,
20
- backup: true,
21
- help: false,
22
- };
23
- for (let i = 0; i < argv.length; i += 1) {
24
- const a = argv[i];
25
- if (a === "--help" || a === "-h") args.help = true;
26
- else if (a === "--cwd") args.cwd = argv[++i] ?? args.cwd;
27
- else if (a === "--apply") args.apply = true;
28
- else if (a === "--no-backup") args.backup = false;
29
- }
30
- return args;
31
- }
32
-
33
- function printHelp() {
34
- process.stdout.write(
35
- `theokit-migrate-config — convert .theokit/ JSON configs to markdown (ADR D74-D78)
36
-
37
- Usage:
38
- theokit-migrate-config [options]
39
-
40
- Options:
41
- --cwd <path> Workspace directory (default: cwd)
42
- --apply Write the migrated .md files (default: dry-run, prints diff)
43
- --no-backup Skip renaming originals to .json.<ts>.bak
44
- --help, -h Show this help
45
-
46
- Migrates:
47
- .theokit/hooks.json → .theokit/hooks/<slug>.md
48
- .theokit/context.json → .theokit/context/<slug>.md
49
- .theokit/plugins/<name>/plugin.json → .theokit/plugins/<name>/PLUGIN.md
50
-
51
- Pre-flight aborts if MD destination already exists (avoids overwriting
52
- manual edits). Atomic write per file (crash mid-write is safe).
53
- `,
54
- );
55
- }
56
-
57
- /**
58
- * Atomic write: tmpfile + rename. Mirrors atomicWriteText in the SDK.
59
- *
60
- * The suffix comes from `randomBytes`, matching `atomicWriteTempPath` in
61
- * src/internal/persistence/atomic-write.ts — `<file>.<pid>.<16 hex>.tmp`. It used
62
- * `Math.random()`, which this comment already claimed it did not: a temp name in a
63
- * directory an attacker can also write to is guessable, and the window between
64
- * choosing the name and `rename` is where a symlink gets planted.
65
- */
66
- async function atomicWriteText(filePath, content) {
67
- await mkdir(join(filePath, ".."), { recursive: true });
68
- const tmp = `${filePath}.${process.pid}.${randomBytes(8).toString("hex")}.tmp`;
69
- await writeFile(tmp, content, "utf8");
70
- await rename(tmp, filePath);
71
- }
72
-
73
- function timestampSuffix() {
74
- return String(Math.floor(Date.now() / 1000));
75
- }
76
-
77
- function slugify(name) {
78
- return (
79
- name
80
- .toLowerCase()
81
- .replace(/[^a-z0-9_-]+/g, "-")
82
- .replace(/^-+|-+$/g, "")
83
- .slice(0, 60) || "unnamed"
84
- );
85
- }
86
-
87
- function renderFrontmatter(fields, body) {
88
- const lines = ["---"];
89
- for (const [k, v] of Object.entries(fields)) {
90
- if (v === undefined) continue;
91
- if (Array.isArray(v)) {
92
- lines.push(`${k}: [${v.join(", ")}]`);
93
- } else {
94
- lines.push(`${k}: ${v}`);
95
- }
96
- }
97
- lines.push("---");
98
- if (body && body.length > 0) {
99
- lines.push("");
100
- lines.push(body);
101
- }
102
- lines.push("");
103
- return lines.join("\n");
104
- }
105
-
106
- // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: nested JSON-shape parse + grouping by event — splitting reduces clarity
107
- async function migrateHooks(cwd, args, plan) {
108
- const jsonPath = join(cwd, ".theokit", "hooks.json");
109
- if (!existsSync(jsonPath)) return;
110
- let parsed;
111
- try {
112
- parsed = JSON.parse(await readFile(jsonPath, "utf8"));
113
- } catch (cause) {
114
- plan.errors.push(`hooks.json: invalid JSON (${cause.message})`);
115
- return;
116
- }
117
- const hookGroups = parsed?.hooks ?? {};
118
- for (const [event, list] of Object.entries(hookGroups)) {
119
- if (!Array.isArray(list)) continue;
120
- for (const [idx, entry] of list.entries()) {
121
- const slug = `${event}-${idx + 1}`;
122
- const dest = join(cwd, ".theokit", "hooks", `${slug}.md`);
123
- const fields = {
124
- event,
125
- matcher: entry.matcher ?? ".",
126
- command: entry.command ?? "",
127
- };
128
- if (entry.timeoutMs !== undefined) fields.timeoutMs = entry.timeoutMs;
129
- const body = `TODO: explain why this hook exists.`;
130
- const content = renderFrontmatter(fields, body);
131
- plan.writes.push({ dest, content, kind: "hook" });
132
- }
133
- }
134
- if (args.backup && plan.writes.some((w) => w.kind === "hook")) {
135
- plan.backups.push({ from: jsonPath, to: `${jsonPath}.${timestampSuffix()}.bak` });
136
- }
137
- }
138
-
139
- async function migrateContext(cwd, args, plan) {
140
- const jsonPath = join(cwd, ".theokit", "context.json");
141
- if (!existsSync(jsonPath)) return;
142
- let parsed;
143
- try {
144
- parsed = JSON.parse(await readFile(jsonPath, "utf8"));
145
- } catch (cause) {
146
- plan.errors.push(`context.json: invalid JSON (${cause.message})`);
147
- return;
148
- }
149
- const sources = parsed?.sources ?? [];
150
- for (const src of sources) {
151
- if (typeof src?.name !== "string" || typeof src?.path !== "string") continue;
152
- const slug = slugify(src.name);
153
- const dest = join(cwd, ".theokit", "context", `${slug}.md`);
154
- const fields = { name: src.name, path: src.path };
155
- const body = `TODO: explain why "${src.path}" is part of the agent context.`;
156
- plan.writes.push({ dest, content: renderFrontmatter(fields, body), kind: "context" });
157
- }
158
- if (args.backup && plan.writes.some((w) => w.kind === "context")) {
159
- plan.backups.push({ from: jsonPath, to: `${jsonPath}.${timestampSuffix()}.bak` });
160
- }
161
- }
162
-
163
- // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: per-plugin shape mapping needs the branch table inline
164
- async function migratePlugins(cwd, args, plan) {
165
- const pluginsRoot = join(cwd, ".theokit", "plugins");
166
- if (!existsSync(pluginsRoot)) return;
167
- let entries;
168
- try {
169
- entries = await readdir(pluginsRoot, { withFileTypes: true });
170
- } catch {
171
- return;
172
- }
173
- for (const entry of entries) {
174
- if (!entry.isDirectory()) continue;
175
- const jsonPath = join(pluginsRoot, entry.name, "plugin.json");
176
- if (!existsSync(jsonPath)) continue;
177
- let parsed;
178
- try {
179
- parsed = JSON.parse(await readFile(jsonPath, "utf8"));
180
- } catch (cause) {
181
- plan.errors.push(`plugins/${entry.name}/plugin.json: invalid JSON (${cause.message})`);
182
- continue;
183
- }
184
- const dest = join(pluginsRoot, entry.name, "PLUGIN.md");
185
- const fields = {};
186
- if (typeof parsed.name === "string") fields.name = parsed.name;
187
- if (typeof parsed.version === "string") fields.version = parsed.version;
188
- if (Array.isArray(parsed.capabilities))
189
- fields.capabilities = parsed.capabilities.filter((c) => typeof c === "string");
190
- if (typeof parsed.entry === "string") fields.entry = parsed.entry;
191
- const body = `TODO: explain what plugin "${entry.name}" does.`;
192
- plan.writes.push({ dest, content: renderFrontmatter(fields, body), kind: "plugin" });
193
- if (args.backup) {
194
- plan.backups.push({ from: jsonPath, to: `${jsonPath}.${timestampSuffix()}.bak` });
195
- }
196
- }
197
- }
198
-
199
- async function preFlight(plan) {
200
- const conflicts = [];
201
- for (const w of plan.writes) {
202
- if (existsSync(w.dest)) conflicts.push(w.dest);
203
- }
204
- return conflicts;
205
- }
206
-
207
- // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: CLI entry orchestrates plan → preflight → write → backup; splitting hides the linear flow
208
- async function main() {
209
- const args = parseArgs(process.argv.slice(2));
210
- if (args.help) {
211
- printHelp();
212
- return 0;
213
- }
214
-
215
- const plan = { writes: [], backups: [], errors: [] };
216
- await migrateHooks(args.cwd, args, plan);
217
- await migrateContext(args.cwd, args, plan);
218
- await migratePlugins(args.cwd, args, plan);
219
-
220
- if (plan.errors.length > 0) {
221
- process.stderr.write(`Errors during migration plan:\n`);
222
- for (const e of plan.errors) process.stderr.write(` - ${e}\n`);
223
- return 1;
224
- }
225
-
226
- if (plan.writes.length === 0) {
227
- process.stdout.write(
228
- `Nothing to migrate. No legacy JSON configs found under ${args.cwd}/.theokit/\n`,
229
- );
230
- return 0;
231
- }
232
-
233
- const conflicts = await preFlight(plan);
234
- if (conflicts.length > 0) {
235
- process.stderr.write(
236
- `Pre-flight aborted: destination MD files already exist:\n` +
237
- conflicts.map((c) => ` - ${c}`).join("\n") +
238
- `\n\nRemove or merge these files manually, then re-run.\n`,
239
- );
240
- return 2;
241
- }
242
-
243
- if (!args.apply) {
244
- process.stdout.write(`Migration plan (dry-run; pass --apply to write):\n\n`);
245
- for (const w of plan.writes) {
246
- process.stdout.write(` + ${w.dest} [${w.kind}]\n`);
247
- }
248
- if (args.backup) {
249
- process.stdout.write(`\nBackups would be created:\n`);
250
- for (const b of plan.backups) {
251
- process.stdout.write(` - ${b.from} → ${b.to}\n`);
252
- }
253
- }
254
- return 0;
255
- }
256
-
257
- // Apply
258
- for (const w of plan.writes) {
259
- await atomicWriteText(w.dest, w.content);
260
- process.stdout.write(`wrote ${w.dest}\n`);
261
- }
262
- if (args.backup) {
263
- for (const b of plan.backups) {
264
- await rename(b.from, b.to);
265
- process.stdout.write(`backed up ${b.from} → ${b.to}\n`);
266
- }
267
- }
268
- process.stdout.write(`\nMigration complete. ${plan.writes.length} file(s) written.\n`);
269
- return 0;
270
- }
271
-
272
- main().then(
273
- (code) => process.exit(code ?? 0),
274
- (err) => {
275
- process.stderr.write(`Fatal: ${err?.stack ?? err}\n`);
276
- process.exit(1);
277
- },
278
- );
@@ -1,116 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- // CLI wrapper for memory migration SQLite → Lance (ADR D44).
4
- //
5
- // Usage: theokit-migrate-memory [--cwd <path>] [--dry-run] [--keep-sqlite]
6
- // [--batch-size <n>] [--help]
7
-
8
- import { rmSync } from "node:fs";
9
- import { join } from "node:path";
10
- import { createInterface } from "node:readline/promises";
11
-
12
- // Resolve the SDK build dist so this script works both from npm-installed
13
- // `pnpm exec theokit-migrate-memory` and from the workspace.
14
- import { migrateSqliteToLance } from "../dist/index.js";
15
-
16
- // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: arg parser must enumerate every flag inline; tiny CLI keeps the switch local.
17
- function parseArgs(argv) {
18
- const args = {
19
- cwd: process.cwd(),
20
- dryRun: false,
21
- keepSqlite: false,
22
- batchSize: 100,
23
- help: false,
24
- };
25
- for (let i = 0; i < argv.length; i += 1) {
26
- const a = argv[i];
27
- if (a === "--help" || a === "-h") args.help = true;
28
- else if (a === "--cwd") args.cwd = argv[++i] ?? args.cwd;
29
- else if (a === "--dry-run") args.dryRun = true;
30
- else if (a === "--keep-sqlite") args.keepSqlite = true;
31
- else if (a === "--batch-size") args.batchSize = Number(argv[++i] ?? 100);
32
- }
33
- return args;
34
- }
35
-
36
- function printHelp() {
37
- process.stdout.write(
38
- `theokit-migrate-memory — migrate Memory.index from SQLite to LanceDB (ADR D44)
39
-
40
- Usage:
41
- theokit-migrate-memory [options]
42
-
43
- Options:
44
- --cwd <path> Workspace directory (default: cwd)
45
- --dry-run Read SQLite, validate counts, but DO NOT write Lance
46
- --keep-sqlite Skip the "delete SQLite db?" prompt
47
- --batch-size <n> Migration batch size (default: 100)
48
- --help, -h Show this help
49
-
50
- Algorithm:
51
- 1. Read all facts from .theokit/memory/index.sqlite
52
- 2. Write to .theokit/memory/lance-new/ (Lance staging dir)
53
- 3. Validate: count match + sample-of-10 NFC unicode-normalized text match
54
- 4. On success: rename lance-new/ → lance/ (atomic commit)
55
- 5. Prompt to delete SQLite db (skipped with --keep-sqlite)
56
- 6. On validation failure: leave SQLite intact, remove lance-new/
57
- `,
58
- );
59
- }
60
-
61
- // biome-ignore lint/complexity/noExcessiveCognitiveComplexity: main orchestrates the CLI lifecycle (parse, validate, migrate, prompt, exit-code) — keeping it linear matches the user-facing flow.
62
- async function main() {
63
- const args = parseArgs(process.argv.slice(2));
64
- if (args.help) {
65
- printHelp();
66
- process.exit(0);
67
- }
68
- process.stderr.write(`theokit-migrate-memory: cwd=${args.cwd} dry-run=${args.dryRun}\n`);
69
- let result;
70
- try {
71
- result = await migrateSqliteToLance({
72
- cwd: args.cwd,
73
- dryRun: args.dryRun,
74
- batchSize: args.batchSize,
75
- logger: (m) => process.stdout.write(`${m}\n`),
76
- });
77
- } catch (cause) {
78
- process.stderr.write(`FAILED: ${cause instanceof Error ? cause.message : String(cause)}\n`);
79
- process.exit(2);
80
- }
81
-
82
- if (result.countSqlite === 0) {
83
- process.stdout.write("Nothing to migrate (empty workspace).\n");
84
- process.exit(0);
85
- }
86
-
87
- process.stdout.write(`\nSummary:\n`);
88
- process.stdout.write(` SQLite facts: ${result.countSqlite}\n`);
89
- process.stdout.write(` Lance facts: ${result.countLance}\n`);
90
- process.stdout.write(
91
- ` Sample compare: ${result.sampleComparisons.filter((c) => c.match).length}/${result.sampleComparisons.length} match\n`,
92
- );
93
- process.stdout.write(` Committed: ${result.committed}\n`);
94
-
95
- if (!result.validated) {
96
- process.stderr.write("Validation FAILED. SQLite preserved.\n");
97
- process.exit(3);
98
- }
99
-
100
- if (result.committed && !args.keepSqlite) {
101
- const rl = createInterface({ input: process.stdin, output: process.stdout });
102
- const answer = await rl.question(
103
- `Delete SQLite db at ${join(args.cwd, ".theokit/memory/index.sqlite")}? [y/N] `,
104
- );
105
- rl.close();
106
- if (answer.trim().toLowerCase() === "y") {
107
- rmSync(join(args.cwd, ".theokit/memory/index.sqlite"), { force: true });
108
- process.stdout.write("SQLite db deleted.\n");
109
- } else {
110
- process.stdout.write("SQLite db preserved.\n");
111
- }
112
- }
113
- process.exit(0);
114
- }
115
-
116
- await main();