langwatch 0.26.0 → 0.28.0

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 (989) hide show
  1. package/dist/add-3CDKMW3S.mjs +147 -0
  2. package/dist/add-3OUURG7L.js +147 -0
  3. package/dist/add-3OUURG7L.js.map +1 -0
  4. package/dist/archive-7X4DJKNC.js +40 -0
  5. package/dist/archive-7X4DJKNC.js.map +1 -0
  6. package/dist/archive-HJKGZZYD.mjs +40 -0
  7. package/dist/archive-HJKGZZYD.mjs.map +1 -0
  8. package/dist/assign-3IUZOQOX.js +53 -0
  9. package/dist/assign-3IUZOQOX.js.map +1 -0
  10. package/dist/assign-6G5ZYKQ5.mjs +53 -0
  11. package/dist/chunk-2FXJEMKG.mjs +27 -0
  12. package/dist/chunk-2PNM3JZ7.js +75 -0
  13. package/dist/chunk-2PNM3JZ7.js.map +1 -0
  14. package/dist/chunk-2QCCASZH.mjs +68 -0
  15. package/dist/chunk-3I2MYKU3.mjs +15 -0
  16. package/dist/chunk-3PWESWDA.js +54 -0
  17. package/dist/chunk-3PWESWDA.js.map +1 -0
  18. package/dist/chunk-3YCWR3ZM.mjs +70 -0
  19. package/dist/chunk-4FLEOBH2.js +53 -0
  20. package/dist/chunk-4FLEOBH2.js.map +1 -0
  21. package/dist/chunk-5LFME6J4.js +68 -0
  22. package/dist/chunk-5LFME6J4.js.map +1 -0
  23. package/dist/chunk-5WTSOUBR.mjs +334 -0
  24. package/dist/chunk-6FJ6AZZS.js +66 -0
  25. package/dist/chunk-6FJ6AZZS.js.map +1 -0
  26. package/dist/chunk-6NPLRWJW.js +888 -0
  27. package/dist/chunk-6NPLRWJW.js.map +1 -0
  28. package/dist/chunk-7LH7SPTZ.js +334 -0
  29. package/dist/chunk-7LH7SPTZ.js.map +1 -0
  30. package/dist/chunk-7UX3UZBA.mjs +653 -0
  31. package/dist/chunk-7UX3UZBA.mjs.map +1 -0
  32. package/dist/chunk-AONNFMMJ.mjs +85 -0
  33. package/dist/chunk-ASUXSQS2.mjs +80 -0
  34. package/dist/chunk-BAX4W3AY.mjs +62 -0
  35. package/dist/chunk-BRPEG3YQ.js +62 -0
  36. package/dist/chunk-BRPEG3YQ.js.map +1 -0
  37. package/dist/chunk-CHCUY3VK.js +42 -0
  38. package/dist/chunk-CHCUY3VK.js.map +1 -0
  39. package/dist/chunk-D52K7TPA.mjs +17 -0
  40. package/dist/chunk-D52K7TPA.mjs.map +1 -0
  41. package/dist/chunk-DOFYKSX6.js +85 -0
  42. package/dist/chunk-DOFYKSX6.js.map +1 -0
  43. package/dist/chunk-DVYPRKD3.js +51 -0
  44. package/dist/chunk-DVYPRKD3.js.map +1 -0
  45. package/dist/chunk-DYWGFYYW.mjs +353 -0
  46. package/dist/chunk-DZZNLMQL.mjs +63 -0
  47. package/dist/chunk-FLVQKY6T.js +36 -0
  48. package/dist/chunk-FLVQKY6T.js.map +1 -0
  49. package/dist/chunk-FZFDSERO.mjs +101 -0
  50. package/dist/chunk-G3GAPPHD.js +196 -0
  51. package/dist/chunk-G3GAPPHD.js.map +1 -0
  52. package/dist/chunk-GCC4FV7L.mjs +90 -0
  53. package/dist/chunk-GCC4FV7L.mjs.map +1 -0
  54. package/dist/chunk-GDLOHMXT.mjs +54 -0
  55. package/dist/chunk-GVFRS2UN.mjs +133 -0
  56. package/dist/chunk-GVFRS2UN.mjs.map +1 -0
  57. package/dist/chunk-HCMOJWR7.js +80 -0
  58. package/dist/chunk-HCMOJWR7.js.map +1 -0
  59. package/dist/chunk-HVW3AVH2.js +15 -0
  60. package/dist/chunk-HVW3AVH2.js.map +1 -0
  61. package/dist/chunk-IHTG3YLH.mjs +42 -0
  62. package/dist/chunk-IXYZL7U2.js +65 -0
  63. package/dist/chunk-IXYZL7U2.js.map +1 -0
  64. package/dist/chunk-J7YF276V.js +353 -0
  65. package/dist/chunk-J7YF276V.js.map +1 -0
  66. package/dist/chunk-JOLGDU7Q.mjs +65 -0
  67. package/dist/chunk-K7BJOYWT.mjs +90 -0
  68. package/dist/chunk-K7BJOYWT.mjs.map +1 -0
  69. package/dist/chunk-KEY5ZPNY.js +76 -0
  70. package/dist/chunk-KEY5ZPNY.js.map +1 -0
  71. package/dist/chunk-LRBTDTUX.mjs +53 -0
  72. package/dist/chunk-LRGKGA3O.mjs +54 -0
  73. package/dist/chunk-NLKZPRSM.js +653 -0
  74. package/dist/chunk-NLKZPRSM.js.map +1 -0
  75. package/dist/chunk-NZRST5QA.mjs +51 -0
  76. package/dist/chunk-OFXKYKWO.js +63 -0
  77. package/dist/chunk-OFXKYKWO.js.map +1 -0
  78. package/dist/chunk-PHY6KTXN.js +101 -0
  79. package/dist/chunk-PHY6KTXN.js.map +1 -0
  80. package/dist/chunk-PK2JJAOM.mjs +196 -0
  81. package/dist/chunk-PTPRFTXW.js +300 -0
  82. package/dist/chunk-PTPRFTXW.js.map +1 -0
  83. package/dist/chunk-PVKFUCNZ.js +90 -0
  84. package/dist/chunk-PVKFUCNZ.js.map +1 -0
  85. package/dist/chunk-PWJDQYIF.mjs +76 -0
  86. package/dist/chunk-R4IDYH64.mjs +663 -0
  87. package/dist/chunk-RSZIXZD3.js +90 -0
  88. package/dist/chunk-RSZIXZD3.js.map +1 -0
  89. package/dist/chunk-S7X64NUW.js +70 -0
  90. package/dist/chunk-S7X64NUW.js.map +1 -0
  91. package/dist/chunk-SIXSSID3.mjs +43 -0
  92. package/dist/chunk-SIXSSID3.mjs.map +1 -0
  93. package/dist/chunk-T2HARCUR.mjs +888 -0
  94. package/dist/chunk-TFSLURPP.js +103 -0
  95. package/dist/chunk-TFSLURPP.js.map +1 -0
  96. package/dist/chunk-TZT657BT.mjs +36 -0
  97. package/dist/chunk-U2CD2EBX.js +663 -0
  98. package/dist/chunk-U2CD2EBX.js.map +1 -0
  99. package/dist/chunk-U42S66VO.mjs +66 -0
  100. package/dist/chunk-UROGEQ3Z.js +54 -0
  101. package/dist/chunk-UROGEQ3Z.js.map +1 -0
  102. package/dist/chunk-UUCNCFVT.mjs +63 -0
  103. package/dist/chunk-UUCNCFVT.mjs.map +1 -0
  104. package/dist/chunk-VS22JXRY.js +133 -0
  105. package/dist/chunk-VS22JXRY.js.map +1 -0
  106. package/dist/chunk-WZTRPR6A.js +43 -0
  107. package/dist/chunk-WZTRPR6A.js.map +1 -0
  108. package/dist/chunk-X262CHDE.mjs +103 -0
  109. package/dist/chunk-X262CHDE.mjs.map +1 -0
  110. package/dist/chunk-X3XWWIXX.js +27 -0
  111. package/dist/chunk-X3XWWIXX.js.map +1 -0
  112. package/dist/chunk-XYR3PEGE.js +63 -0
  113. package/dist/chunk-XYR3PEGE.js.map +1 -0
  114. package/dist/chunk-YQNOLNAK.mjs +75 -0
  115. package/dist/chunk-ZWXYHLRI.js +17 -0
  116. package/dist/chunk-ZWXYHLRI.js.map +1 -0
  117. package/dist/chunk-ZXFN2K4P.mjs +300 -0
  118. package/dist/cli/index.js +155 -100
  119. package/dist/cli/index.js.map +1 -1
  120. package/dist/cli/index.mjs +155 -100
  121. package/dist/cli/index.mjs.map +1 -1
  122. package/dist/create-23VY67VO.mjs +41 -0
  123. package/dist/create-2DAUVMAB.mjs +47 -0
  124. package/dist/create-3L6JZRHP.mjs +85 -0
  125. package/dist/create-4FZA3Q5Z.mjs +88 -0
  126. package/dist/create-5QLZAMKA.js +41 -0
  127. package/dist/create-5QLZAMKA.js.map +1 -0
  128. package/dist/create-6WFTHQMD.mjs +83 -0
  129. package/dist/create-7SMTEVKG.mjs +68 -0
  130. package/dist/create-7T46NKU2.js +73 -0
  131. package/dist/create-7T46NKU2.js.map +1 -0
  132. package/dist/create-AJNCCWDE.js +42 -0
  133. package/dist/create-AJNCCWDE.js.map +1 -0
  134. package/dist/create-AULDFYQS.mjs +91 -0
  135. package/dist/create-AULDFYQS.mjs.map +1 -0
  136. package/dist/create-B5E6L62S.js +88 -0
  137. package/dist/create-B5E6L62S.js.map +1 -0
  138. package/dist/create-EEQ6XI4Z.js +49 -0
  139. package/dist/create-EEQ6XI4Z.js.map +1 -0
  140. package/dist/create-F7IXC6LY.mjs +48 -0
  141. package/dist/create-GHVWTYMM.js +51 -0
  142. package/dist/create-GHVWTYMM.js.map +1 -0
  143. package/dist/create-HIKNBSQV.js +47 -0
  144. package/dist/create-HIKNBSQV.js.map +1 -0
  145. package/dist/create-JMUG7XJ6.js +48 -0
  146. package/dist/create-JMUG7XJ6.js.map +1 -0
  147. package/dist/create-K5O4F4MJ.mjs +87 -0
  148. package/dist/create-LT7DZHLB.js +22 -0
  149. package/dist/create-LT7DZHLB.js.map +1 -0
  150. package/dist/create-LVAEPDXJ.mjs +51 -0
  151. package/dist/create-MU5KD56O.js +54 -0
  152. package/dist/create-MU5KD56O.js.map +1 -0
  153. package/dist/create-NA6QJ5WO.js +83 -0
  154. package/dist/create-NA6QJ5WO.js.map +1 -0
  155. package/dist/create-O3JUSS6U.mjs +49 -0
  156. package/dist/create-ONRE7BVU.mjs +22 -0
  157. package/dist/create-PAK4LHZA.js +91 -0
  158. package/dist/create-PAK4LHZA.js.map +1 -0
  159. package/dist/create-PVWJNXDG.js +87 -0
  160. package/dist/create-PVWJNXDG.js.map +1 -0
  161. package/dist/create-RKD5NN22.mjs +73 -0
  162. package/dist/create-RKD5NN22.mjs.map +1 -0
  163. package/dist/create-S56FEJQC.mjs +42 -0
  164. package/dist/create-THBZEZTS.js +68 -0
  165. package/dist/create-THBZEZTS.js.map +1 -0
  166. package/dist/create-V57JYIM4.js +72 -0
  167. package/dist/create-V57JYIM4.js.map +1 -0
  168. package/dist/create-V7I5MZQH.mjs +72 -0
  169. package/dist/create-WLGGUN3M.js +85 -0
  170. package/dist/create-WLGGUN3M.js.map +1 -0
  171. package/dist/create-WQH5CT7J.mjs +54 -0
  172. package/dist/create-WQH5CT7J.mjs.map +1 -0
  173. package/dist/delete-3M26V72K.js +49 -0
  174. package/dist/delete-3M26V72K.js.map +1 -0
  175. package/dist/delete-4VAMI3T7.js +60 -0
  176. package/dist/delete-4VAMI3T7.js.map +1 -0
  177. package/dist/delete-5FWPA3EA.js +49 -0
  178. package/dist/delete-5FWPA3EA.js.map +1 -0
  179. package/dist/delete-5GJ24SOX.mjs +49 -0
  180. package/dist/delete-A5UJHNXN.js +58 -0
  181. package/dist/delete-A5UJHNXN.js.map +1 -0
  182. package/dist/delete-CKSBQKE5.mjs +37 -0
  183. package/dist/delete-EFJKA2XB.mjs +49 -0
  184. package/dist/delete-FBNVDBFA.mjs +43 -0
  185. package/dist/delete-FU2C55L7.js +49 -0
  186. package/dist/delete-FU2C55L7.js.map +1 -0
  187. package/dist/delete-GL2ECGNY.mjs +38 -0
  188. package/dist/delete-HBVDXDDG.js +43 -0
  189. package/dist/delete-HBVDXDDG.js.map +1 -0
  190. package/dist/delete-HCDP2ZLU.js +38 -0
  191. package/dist/delete-HCDP2ZLU.js.map +1 -0
  192. package/dist/delete-I7TDBX4N.mjs +56 -0
  193. package/dist/delete-KM43ETJP.mjs +40 -0
  194. package/dist/delete-KOIZBKC7.mjs +49 -0
  195. package/dist/delete-OB4LL2YY.js +49 -0
  196. package/dist/delete-OB4LL2YY.js.map +1 -0
  197. package/dist/delete-OZBLOHQ6.mjs +60 -0
  198. package/dist/delete-P5C6E4GH.js +58 -0
  199. package/dist/delete-P5C6E4GH.js.map +1 -0
  200. package/dist/delete-PU6TYWWE.js +56 -0
  201. package/dist/delete-PU6TYWWE.js.map +1 -0
  202. package/dist/delete-T66WKIJ7.js +37 -0
  203. package/dist/delete-T66WKIJ7.js.map +1 -0
  204. package/dist/delete-WFBS525P.js +38 -0
  205. package/dist/delete-WFBS525P.js.map +1 -0
  206. package/dist/delete-X4UDKMCL.mjs +58 -0
  207. package/dist/delete-YCFRGZ2B.mjs +38 -0
  208. package/dist/delete-YPFYFQMX.js +40 -0
  209. package/dist/delete-YPFYFQMX.js.map +1 -0
  210. package/dist/delete-YSQS6OG2.mjs +49 -0
  211. package/dist/delete-ZK4X56MN.mjs +58 -0
  212. package/dist/disable-BEYLSXEX.mjs +40 -0
  213. package/dist/disable-BEYLSXEX.mjs.map +1 -0
  214. package/dist/disable-Y7SN7ZZH.js +40 -0
  215. package/dist/disable-Y7SN7ZZH.js.map +1 -0
  216. package/dist/docs-23TMQCLZ.js +77 -0
  217. package/dist/docs-23TMQCLZ.js.map +1 -0
  218. package/dist/docs-YG2DQVHD.mjs +77 -0
  219. package/dist/download-F354BSIZ.mjs +99 -0
  220. package/dist/download-ROXDXBYO.js +99 -0
  221. package/dist/download-ROXDXBYO.js.map +1 -0
  222. package/dist/duplicate-7OV5ABPH.mjs +44 -0
  223. package/dist/duplicate-U26YDNWA.js +44 -0
  224. package/dist/duplicate-U26YDNWA.js.map +1 -0
  225. package/dist/export-FQPDZTKF.js +100 -0
  226. package/dist/export-FQPDZTKF.js.map +1 -0
  227. package/dist/export-SASNDV5L.mjs +100 -0
  228. package/dist/get-3CUYSH5L.mjs +67 -0
  229. package/dist/get-5AXW735G.mjs +73 -0
  230. package/dist/get-6JGAVF5U.js +93 -0
  231. package/dist/get-6JGAVF5U.js.map +1 -0
  232. package/dist/get-6VJH527T.js +84 -0
  233. package/dist/get-6VJH527T.js.map +1 -0
  234. package/dist/get-7EOUTEVW.mjs +93 -0
  235. package/dist/get-A2FFLA5X.mjs +51 -0
  236. package/dist/get-A7OC3MZL.js +67 -0
  237. package/dist/get-A7OC3MZL.js.map +1 -0
  238. package/dist/get-E5MQM46A.js +50 -0
  239. package/dist/get-E5MQM46A.js.map +1 -0
  240. package/dist/get-E6CPQCQD.mjs +50 -0
  241. package/dist/get-FTY7OHAJ.mjs +146 -0
  242. package/dist/get-GJSWJQV3.js +70 -0
  243. package/dist/get-GJSWJQV3.js.map +1 -0
  244. package/dist/get-H66NGQXL.js +146 -0
  245. package/dist/get-H66NGQXL.js.map +1 -0
  246. package/dist/get-MWKJETCN.js +67 -0
  247. package/dist/get-MWKJETCN.js.map +1 -0
  248. package/dist/get-NUX6KUE4.mjs +64 -0
  249. package/dist/get-OOBPNKDJ.mjs +55 -0
  250. package/dist/get-P6HMLM5Q.mjs +68 -0
  251. package/dist/get-POYXEXYJ.mjs +51 -0
  252. package/dist/get-PSFOPDRP.js +73 -0
  253. package/dist/get-PSFOPDRP.js.map +1 -0
  254. package/dist/get-S4FS2MUD.js +51 -0
  255. package/dist/get-S4FS2MUD.js.map +1 -0
  256. package/dist/get-SFDK3OW2.js +64 -0
  257. package/dist/get-SFDK3OW2.js.map +1 -0
  258. package/dist/get-URO7H3WR.js +55 -0
  259. package/dist/get-URO7H3WR.js.map +1 -0
  260. package/dist/get-USUJHXGC.mjs +68 -0
  261. package/dist/get-UVLJGAO3.js +68 -0
  262. package/dist/get-UVLJGAO3.js.map +1 -0
  263. package/dist/get-VA37QEJ6.mjs +84 -0
  264. package/dist/get-VF3QTKUQ.js +51 -0
  265. package/dist/get-VF3QTKUQ.js.map +1 -0
  266. package/dist/get-VW4ZNCTM.mjs +67 -0
  267. package/dist/get-VW4ZNCTM.mjs.map +1 -0
  268. package/dist/get-W6PYTHLK.mjs +65 -0
  269. package/dist/get-WJLO6KQA.js +65 -0
  270. package/dist/get-WJLO6KQA.js.map +1 -0
  271. package/dist/get-XLGZRG62.js +68 -0
  272. package/dist/get-XLGZRG62.js.map +1 -0
  273. package/dist/get-ZLPB2C6P.mjs +70 -0
  274. package/dist/implementation-5GB4myKw.d.ts +716 -0
  275. package/dist/implementation-Bi_xHEEp.d.mts +716 -0
  276. package/dist/index.d.mts +3 -3
  277. package/dist/index.d.ts +3 -3
  278. package/dist/index.js +80 -80
  279. package/dist/index.js.map +1 -1
  280. package/dist/index.mjs +26 -26
  281. package/dist/init-G27QRXRY.js +16 -0
  282. package/dist/init-G27QRXRY.js.map +1 -0
  283. package/dist/init-NQLD3PTI.mjs +16 -0
  284. package/dist/list-25XQ644X.mjs +79 -0
  285. package/dist/list-2GA35PAC.js +83 -0
  286. package/dist/list-2GA35PAC.js.map +1 -0
  287. package/dist/list-3JHZ4PEQ.js +80 -0
  288. package/dist/list-3JHZ4PEQ.js.map +1 -0
  289. package/dist/list-3KZSXM4S.mjs +79 -0
  290. package/dist/list-3ZIQGCSU.mjs +110 -0
  291. package/dist/list-422ZYGGM.mjs +77 -0
  292. package/dist/list-5TSQOS6J.js +79 -0
  293. package/dist/list-5TSQOS6J.js.map +1 -0
  294. package/dist/list-6RZG57ZQ.js +101 -0
  295. package/dist/list-6RZG57ZQ.js.map +1 -0
  296. package/dist/list-74TYL7PN.js +77 -0
  297. package/dist/list-74TYL7PN.js.map +1 -0
  298. package/dist/list-7UPPINR7.mjs +72 -0
  299. package/dist/list-7UPPINR7.mjs.map +1 -0
  300. package/dist/list-7ZDGHKEI.js +74 -0
  301. package/dist/list-7ZDGHKEI.js.map +1 -0
  302. package/dist/list-AGUHPCZQ.js +71 -0
  303. package/dist/list-AGUHPCZQ.js.map +1 -0
  304. package/dist/list-AIAPHC7X.js +75 -0
  305. package/dist/list-AIAPHC7X.js.map +1 -0
  306. package/dist/list-AKEZJPVQ.mjs +80 -0
  307. package/dist/list-D2THWAIC.js +79 -0
  308. package/dist/list-D2THWAIC.js.map +1 -0
  309. package/dist/list-HIIB3K73.mjs +75 -0
  310. package/dist/list-I7DTOCQK.mjs +71 -0
  311. package/dist/list-I7DTOCQK.mjs.map +1 -0
  312. package/dist/list-JEFIM2AW.js +77 -0
  313. package/dist/list-JEFIM2AW.js.map +1 -0
  314. package/dist/list-LBSQ3EAI.js +110 -0
  315. package/dist/list-LBSQ3EAI.js.map +1 -0
  316. package/dist/list-LSW5UGRJ.js +72 -0
  317. package/dist/list-LSW5UGRJ.js.map +1 -0
  318. package/dist/list-M2CUXUU5.mjs +74 -0
  319. package/dist/list-M2CUXUU5.mjs.map +1 -0
  320. package/dist/list-NF2VPZII.mjs +77 -0
  321. package/dist/list-NQ2GJDWM.js +81 -0
  322. package/dist/list-NQ2GJDWM.js.map +1 -0
  323. package/dist/list-NXN64XJ2.mjs +81 -0
  324. package/dist/list-OFPK6RW7.mjs +77 -0
  325. package/dist/list-PK7B4BBM.mjs +79 -0
  326. package/dist/list-RJJHGKJI.js +74 -0
  327. package/dist/list-RJJHGKJI.js.map +1 -0
  328. package/dist/list-SL4UGZ3E.mjs +74 -0
  329. package/dist/list-T7ADQ46R.js +52 -0
  330. package/dist/list-T7ADQ46R.js.map +1 -0
  331. package/dist/list-U7TOEYIB.js +89 -0
  332. package/dist/list-U7TOEYIB.js.map +1 -0
  333. package/dist/list-UQSF7SJM.js +79 -0
  334. package/dist/list-UQSF7SJM.js.map +1 -0
  335. package/dist/list-URUAIPJ7.mjs +83 -0
  336. package/dist/list-WSNVLZVO.mjs +89 -0
  337. package/dist/list-X3RA4PZQ.js +77 -0
  338. package/dist/list-X3RA4PZQ.js.map +1 -0
  339. package/dist/list-Y63426YQ.mjs +101 -0
  340. package/dist/list-ZJFYGY2U.js +84 -0
  341. package/dist/list-ZJFYGY2U.js.map +1 -0
  342. package/dist/list-ZUOZWVYD.mjs +84 -0
  343. package/dist/list-ZZ5GF5MQ.mjs +52 -0
  344. package/dist/login-KMB2XPOV.mjs +131 -0
  345. package/dist/login-VDH5VY7D.js +131 -0
  346. package/dist/login-VDH5VY7D.js.map +1 -0
  347. package/dist/observability-sdk/index.d.mts +4 -4
  348. package/dist/observability-sdk/index.d.ts +4 -4
  349. package/dist/observability-sdk/index.js +9 -9
  350. package/dist/observability-sdk/index.mjs +8 -8
  351. package/dist/observability-sdk/instrumentation/langchain/index.d.mts +2 -2
  352. package/dist/observability-sdk/instrumentation/langchain/index.d.ts +2 -2
  353. package/dist/observability-sdk/instrumentation/langchain/index.js +20 -20
  354. package/dist/observability-sdk/instrumentation/langchain/index.mjs +4 -4
  355. package/dist/observability-sdk/setup/node/index.d.mts +1 -1
  356. package/dist/observability-sdk/setup/node/index.d.ts +1 -1
  357. package/dist/observability-sdk/setup/node/index.js +8 -8
  358. package/dist/observability-sdk/setup/node/index.mjs +7 -7
  359. package/dist/pull-7ICWENKU.mjs +26 -0
  360. package/dist/pull-XYESCZSP.js +26 -0
  361. package/dist/pull-XYESCZSP.js.map +1 -0
  362. package/dist/push-RX6UT4QL.mjs +26 -0
  363. package/dist/push-WU4OICML.js +26 -0
  364. package/dist/push-WU4OICML.js.map +1 -0
  365. package/dist/query-DFQTXMHG.js +121 -0
  366. package/dist/query-DFQTXMHG.js.map +1 -0
  367. package/dist/query-KX5L5KIX.mjs +121 -0
  368. package/dist/records-add-63FXUU4B.js +97 -0
  369. package/dist/records-add-63FXUU4B.js.map +1 -0
  370. package/dist/records-add-PVWEVBU3.mjs +97 -0
  371. package/dist/records-delete-OE5ZB6B2.mjs +45 -0
  372. package/dist/records-delete-RD75HMAO.js +45 -0
  373. package/dist/records-delete-RD75HMAO.js.map +1 -0
  374. package/dist/records-list-4A4ITLRR.js +88 -0
  375. package/dist/records-list-4A4ITLRR.js.map +1 -0
  376. package/dist/records-list-6MRQEEFW.mjs +88 -0
  377. package/dist/records-update-3SRICHV3.mjs +52 -0
  378. package/dist/records-update-LYQSPZSL.js +52 -0
  379. package/dist/records-update-LYQSPZSL.js.map +1 -0
  380. package/dist/remove-3E3YBESM.js +114 -0
  381. package/dist/remove-3E3YBESM.js.map +1 -0
  382. package/dist/remove-IFRSRUGH.mjs +114 -0
  383. package/dist/rename-NPBMTVXU.mjs +41 -0
  384. package/dist/rename-SKHQ5CCK.js +41 -0
  385. package/dist/rename-SKHQ5CCK.js.map +1 -0
  386. package/dist/restore-2SQC7QS4.mjs +70 -0
  387. package/dist/restore-XNUJTG7A.js +70 -0
  388. package/dist/restore-XNUJTG7A.js.map +1 -0
  389. package/dist/revoke-22ZBQYW2.mjs +43 -0
  390. package/dist/revoke-22ZBQYW2.mjs.map +1 -0
  391. package/dist/revoke-FZFYFVVQ.js +43 -0
  392. package/dist/revoke-FZFYFVVQ.js.map +1 -0
  393. package/dist/rotate-EFHXMEB4.mjs +51 -0
  394. package/dist/rotate-EFHXMEB4.mjs.map +1 -0
  395. package/dist/rotate-VQWBGQBZ.js +51 -0
  396. package/dist/rotate-VQWBGQBZ.js.map +1 -0
  397. package/dist/run-3A2UXVTP.mjs +128 -0
  398. package/dist/run-AFR4S7D6.mjs +82 -0
  399. package/dist/run-CG6MEL6Z.mjs +139 -0
  400. package/dist/run-EX6WDLSP.js +139 -0
  401. package/dist/run-EX6WDLSP.js.map +1 -0
  402. package/dist/run-FRENLIDC.js +128 -0
  403. package/dist/run-FRENLIDC.js.map +1 -0
  404. package/dist/run-G72P6YW7.js +141 -0
  405. package/dist/run-G72P6YW7.js.map +1 -0
  406. package/dist/run-JDOMLKLP.mjs +141 -0
  407. package/dist/run-L5AZPVP5.js +74 -0
  408. package/dist/run-L5AZPVP5.js.map +1 -0
  409. package/dist/run-N4ZY6Y3K.js +82 -0
  410. package/dist/run-N4ZY6Y3K.js.map +1 -0
  411. package/dist/run-VE7AKQHN.mjs +74 -0
  412. package/dist/search-4JYDMXAH.js +107 -0
  413. package/dist/search-4JYDMXAH.js.map +1 -0
  414. package/dist/search-ITC5GC3G.mjs +107 -0
  415. package/dist/set-4EEM6QD5.js +58 -0
  416. package/dist/set-4EEM6QD5.js.map +1 -0
  417. package/dist/set-RQK3AJF5.mjs +58 -0
  418. package/dist/status-7RJK27HR.mjs +66 -0
  419. package/dist/status-H4I3X5HE.mjs +150 -0
  420. package/dist/status-H4I3X5HE.mjs.map +1 -0
  421. package/dist/status-VSO3RV3W.js +66 -0
  422. package/dist/status-VSO3RV3W.js.map +1 -0
  423. package/dist/status-XOMUKYAE.js +150 -0
  424. package/dist/status-XOMUKYAE.js.map +1 -0
  425. package/dist/sync-OZYHRWBQ.js +131 -0
  426. package/dist/sync-OZYHRWBQ.js.map +1 -0
  427. package/dist/sync-SXI7HIJW.mjs +131 -0
  428. package/dist/types-BvCQH8F1.d.mts +262 -0
  429. package/dist/types-BvCQH8F1.d.ts +262 -0
  430. package/dist/types-DmhfBsRr.d.ts +13503 -0
  431. package/dist/types-heav7ZTr.d.mts +13503 -0
  432. package/dist/update-2Z3UZ3A2.js +73 -0
  433. package/dist/update-2Z3UZ3A2.js.map +1 -0
  434. package/dist/update-3Z6FG3UG.js +70 -0
  435. package/dist/update-3Z6FG3UG.js.map +1 -0
  436. package/dist/update-4FWHRK7U.js +62 -0
  437. package/dist/update-4FWHRK7U.js.map +1 -0
  438. package/dist/update-5X2C6ERA.mjs +74 -0
  439. package/dist/update-7WFVFEBP.js +47 -0
  440. package/dist/update-7WFVFEBP.js.map +1 -0
  441. package/dist/update-CLAMBC5D.js +60 -0
  442. package/dist/update-CLAMBC5D.js.map +1 -0
  443. package/dist/update-E34GVN5D.mjs +50 -0
  444. package/dist/update-FHZ2DVRB.mjs +70 -0
  445. package/dist/update-GHKR64V2.js +63 -0
  446. package/dist/update-GHKR64V2.js.map +1 -0
  447. package/dist/update-ICDYLWKF.mjs +89 -0
  448. package/dist/update-ICDYLWKF.mjs.map +1 -0
  449. package/dist/update-LD2W3TSD.js +64 -0
  450. package/dist/update-LD2W3TSD.js.map +1 -0
  451. package/dist/update-LIQK4Q6S.js +50 -0
  452. package/dist/update-LIQK4Q6S.js.map +1 -0
  453. package/dist/update-LRAX5MVX.mjs +73 -0
  454. package/dist/update-NC7BKN3I.js +76 -0
  455. package/dist/update-NC7BKN3I.js.map +1 -0
  456. package/dist/update-QVBHCTC4.mjs +63 -0
  457. package/dist/update-R3MBRWPG.js +89 -0
  458. package/dist/update-R3MBRWPG.js.map +1 -0
  459. package/dist/update-RPC722BA.mjs +64 -0
  460. package/dist/update-SBFQQPO5.mjs +47 -0
  461. package/dist/update-SO2W6XNR.js +80 -0
  462. package/dist/update-SO2W6XNR.js.map +1 -0
  463. package/dist/update-TIAR7QGJ.mjs +76 -0
  464. package/dist/update-TWRQKBH3.js +74 -0
  465. package/dist/update-TWRQKBH3.js.map +1 -0
  466. package/dist/update-VADZV2SM.js +47 -0
  467. package/dist/update-VADZV2SM.js.map +1 -0
  468. package/dist/update-WM2VXMPJ.mjs +47 -0
  469. package/dist/update-WOVSATBM.mjs +60 -0
  470. package/dist/update-XRNF3AWL.mjs +80 -0
  471. package/dist/update-ZHLIAJY6.mjs +62 -0
  472. package/dist/update-ZHLIAJY6.mjs.map +1 -0
  473. package/dist/upload-2OVKA4KF.js +79 -0
  474. package/dist/upload-2OVKA4KF.js.map +1 -0
  475. package/dist/upload-D45XX4PT.mjs +79 -0
  476. package/dist/versions-MTSOKTWM.js +84 -0
  477. package/dist/versions-MTSOKTWM.js.map +1 -0
  478. package/dist/versions-PN7XIEH7.mjs +84 -0
  479. package/package.json +5 -5
  480. package/dist/add-7R3JWOSB.js +0 -147
  481. package/dist/add-7R3JWOSB.js.map +0 -1
  482. package/dist/add-JJFHYAXS.mjs +0 -147
  483. package/dist/assign-6GQCAQLS.js +0 -53
  484. package/dist/assign-6GQCAQLS.js.map +0 -1
  485. package/dist/assign-KYLY5AJB.mjs +0 -53
  486. package/dist/chunk-257C3DFN.mjs +0 -68
  487. package/dist/chunk-2IBXN2UI.mjs +0 -53
  488. package/dist/chunk-36CN3DNU.mjs +0 -196
  489. package/dist/chunk-43STSE3B.mjs +0 -656
  490. package/dist/chunk-43STSE3B.mjs.map +0 -1
  491. package/dist/chunk-5V4TJHYH.mjs +0 -63
  492. package/dist/chunk-7L46JITH.js +0 -36
  493. package/dist/chunk-7L46JITH.js.map +0 -1
  494. package/dist/chunk-BIAEFD56.mjs +0 -54
  495. package/dist/chunk-CBEZY3YS.mjs +0 -33
  496. package/dist/chunk-CBEZY3YS.mjs.map +0 -1
  497. package/dist/chunk-CDLXAEWE.js +0 -70
  498. package/dist/chunk-CDLXAEWE.js.map +0 -1
  499. package/dist/chunk-DB6OJGP4.js +0 -133
  500. package/dist/chunk-DB6OJGP4.js.map +0 -1
  501. package/dist/chunk-DDM6RZL6.mjs +0 -76
  502. package/dist/chunk-DQHQ4GE3.js +0 -888
  503. package/dist/chunk-DQHQ4GE3.js.map +0 -1
  504. package/dist/chunk-FARZEN6T.mjs +0 -75
  505. package/dist/chunk-FYV43PSH.mjs +0 -334
  506. package/dist/chunk-H6F5OGSL.js +0 -656
  507. package/dist/chunk-H6F5OGSL.js.map +0 -1
  508. package/dist/chunk-HBGBMVHJ.js +0 -63
  509. package/dist/chunk-HBGBMVHJ.js.map +0 -1
  510. package/dist/chunk-HBWD75KV.js +0 -51
  511. package/dist/chunk-HBWD75KV.js.map +0 -1
  512. package/dist/chunk-HP275BYX.js +0 -76
  513. package/dist/chunk-HP275BYX.js.map +0 -1
  514. package/dist/chunk-I72OUBLW.js +0 -54
  515. package/dist/chunk-I72OUBLW.js.map +0 -1
  516. package/dist/chunk-IXY5E2TO.js +0 -15
  517. package/dist/chunk-IXY5E2TO.js.map +0 -1
  518. package/dist/chunk-JGDMQ7UW.js +0 -68
  519. package/dist/chunk-JGDMQ7UW.js.map +0 -1
  520. package/dist/chunk-M4IBRWUC.mjs +0 -133
  521. package/dist/chunk-M4IBRWUC.mjs.map +0 -1
  522. package/dist/chunk-N45JXCGL.mjs +0 -300
  523. package/dist/chunk-NE43FFBN.js +0 -353
  524. package/dist/chunk-NE43FFBN.js.map +0 -1
  525. package/dist/chunk-NFARSAL7.mjs +0 -51
  526. package/dist/chunk-NHFJYJQY.mjs +0 -15
  527. package/dist/chunk-OAAMDWSK.js +0 -65
  528. package/dist/chunk-OAAMDWSK.js.map +0 -1
  529. package/dist/chunk-OHM7JUMR.js +0 -55
  530. package/dist/chunk-OHM7JUMR.js.map +0 -1
  531. package/dist/chunk-OO7FCQAD.mjs +0 -663
  532. package/dist/chunk-P5YYU577.js +0 -101
  533. package/dist/chunk-P5YYU577.js.map +0 -1
  534. package/dist/chunk-QHLWRTYG.js +0 -663
  535. package/dist/chunk-QHLWRTYG.js.map +0 -1
  536. package/dist/chunk-QSCT6GWB.mjs +0 -42
  537. package/dist/chunk-RAWDBKS2.js +0 -54
  538. package/dist/chunk-RAWDBKS2.js.map +0 -1
  539. package/dist/chunk-RI6OUC7W.js +0 -66
  540. package/dist/chunk-RI6OUC7W.js.map +0 -1
  541. package/dist/chunk-RKFBOROT.mjs +0 -36
  542. package/dist/chunk-RKJDDUGQ.mjs +0 -65
  543. package/dist/chunk-S2K6M7DJ.js +0 -53
  544. package/dist/chunk-S2K6M7DJ.js.map +0 -1
  545. package/dist/chunk-SU3CWTY5.js +0 -300
  546. package/dist/chunk-SU3CWTY5.js.map +0 -1
  547. package/dist/chunk-T7D2GUDO.mjs +0 -101
  548. package/dist/chunk-TESTM5B6.js +0 -85
  549. package/dist/chunk-TESTM5B6.js.map +0 -1
  550. package/dist/chunk-UQFEWE33.js +0 -63
  551. package/dist/chunk-UQFEWE33.js.map +0 -1
  552. package/dist/chunk-URTD2WOC.mjs +0 -55
  553. package/dist/chunk-VVZTY5MI.mjs +0 -70
  554. package/dist/chunk-W27ODKHX.mjs +0 -888
  555. package/dist/chunk-WNPVTJDB.mjs +0 -63
  556. package/dist/chunk-WNPVTJDB.mjs.map +0 -1
  557. package/dist/chunk-WO2JP6VF.mjs +0 -54
  558. package/dist/chunk-X7ZHULCR.js +0 -27
  559. package/dist/chunk-X7ZHULCR.js.map +0 -1
  560. package/dist/chunk-XEJXLBC7.mjs +0 -85
  561. package/dist/chunk-XMVWGE2B.mjs +0 -353
  562. package/dist/chunk-XWQWSUFG.js +0 -196
  563. package/dist/chunk-XWQWSUFG.js.map +0 -1
  564. package/dist/chunk-YA2IDZVP.js +0 -33
  565. package/dist/chunk-YA2IDZVP.js.map +0 -1
  566. package/dist/chunk-YGUS5AZR.mjs +0 -66
  567. package/dist/chunk-YQKPP2HE.js +0 -334
  568. package/dist/chunk-YQKPP2HE.js.map +0 -1
  569. package/dist/chunk-YT3P33CN.js +0 -80
  570. package/dist/chunk-YT3P33CN.js.map +0 -1
  571. package/dist/chunk-Z5PDIJJB.js +0 -42
  572. package/dist/chunk-Z5PDIJJB.js.map +0 -1
  573. package/dist/chunk-ZA6AGQLU.mjs +0 -27
  574. package/dist/chunk-ZRTWLTE6.mjs +0 -80
  575. package/dist/chunk-ZZL6VZZU.js +0 -75
  576. package/dist/chunk-ZZL6VZZU.js.map +0 -1
  577. package/dist/create-2CRXUOGV.js +0 -49
  578. package/dist/create-2CRXUOGV.js.map +0 -1
  579. package/dist/create-2YCDG2JE.mjs +0 -83
  580. package/dist/create-3JFCK2Q7.mjs +0 -88
  581. package/dist/create-5FRTV3D7.mjs +0 -42
  582. package/dist/create-6UQOQL7P.mjs +0 -49
  583. package/dist/create-7DZBR2D2.js +0 -22
  584. package/dist/create-7DZBR2D2.js.map +0 -1
  585. package/dist/create-7R6THD2Y.js +0 -88
  586. package/dist/create-7R6THD2Y.js.map +0 -1
  587. package/dist/create-BCUEKB26.mjs +0 -41
  588. package/dist/create-BWCOEZX6.js +0 -41
  589. package/dist/create-BWCOEZX6.js.map +0 -1
  590. package/dist/create-EDL2KY34.mjs +0 -51
  591. package/dist/create-F2WCJVRY.js +0 -51
  592. package/dist/create-F2WCJVRY.js.map +0 -1
  593. package/dist/create-FWNHAZHG.js +0 -42
  594. package/dist/create-FWNHAZHG.js.map +0 -1
  595. package/dist/create-I2AFCP76.js +0 -72
  596. package/dist/create-I2AFCP76.js.map +0 -1
  597. package/dist/create-JZ7YW7HJ.js +0 -87
  598. package/dist/create-JZ7YW7HJ.js.map +0 -1
  599. package/dist/create-KFDGQKNL.js +0 -48
  600. package/dist/create-KFDGQKNL.js.map +0 -1
  601. package/dist/create-KGDQHE6B.mjs +0 -72
  602. package/dist/create-KMGWW73J.mjs +0 -87
  603. package/dist/create-MT7RY7DY.mjs +0 -48
  604. package/dist/create-N6XTOPNZ.js +0 -68
  605. package/dist/create-N6XTOPNZ.js.map +0 -1
  606. package/dist/create-NCWNYSXE.mjs +0 -85
  607. package/dist/create-Q62FIVQ7.mjs +0 -68
  608. package/dist/create-QB7UW753.js +0 -47
  609. package/dist/create-QB7UW753.js.map +0 -1
  610. package/dist/create-QQF6K4S3.mjs +0 -47
  611. package/dist/create-V3AYJ5CK.mjs +0 -22
  612. package/dist/create-VYTHRJUZ.js +0 -85
  613. package/dist/create-VYTHRJUZ.js.map +0 -1
  614. package/dist/create-YGUZQG6V.js +0 -83
  615. package/dist/create-YGUZQG6V.js.map +0 -1
  616. package/dist/delete-423ZLFER.mjs +0 -49
  617. package/dist/delete-56L3FAQ5.js +0 -58
  618. package/dist/delete-56L3FAQ5.js.map +0 -1
  619. package/dist/delete-64PBJEMZ.mjs +0 -38
  620. package/dist/delete-66K4C6OR.js +0 -56
  621. package/dist/delete-66K4C6OR.js.map +0 -1
  622. package/dist/delete-B7GGZUJB.mjs +0 -49
  623. package/dist/delete-BI4AJTTJ.js +0 -38
  624. package/dist/delete-BI4AJTTJ.js.map +0 -1
  625. package/dist/delete-CP7KTUBJ.mjs +0 -37
  626. package/dist/delete-GQNMOGEN.js +0 -40
  627. package/dist/delete-GQNMOGEN.js.map +0 -1
  628. package/dist/delete-HSISE7F3.js +0 -49
  629. package/dist/delete-HSISE7F3.js.map +0 -1
  630. package/dist/delete-IC6KDACP.js +0 -58
  631. package/dist/delete-IC6KDACP.js.map +0 -1
  632. package/dist/delete-JXWQ42O5.mjs +0 -56
  633. package/dist/delete-NZBT4PT3.mjs +0 -58
  634. package/dist/delete-P7PBJ7EK.js +0 -49
  635. package/dist/delete-P7PBJ7EK.js.map +0 -1
  636. package/dist/delete-PRDVV3W7.mjs +0 -58
  637. package/dist/delete-QTUYP7F4.mjs +0 -49
  638. package/dist/delete-R4GYQTWJ.js +0 -49
  639. package/dist/delete-R4GYQTWJ.js.map +0 -1
  640. package/dist/delete-RPPWZ7UC.mjs +0 -38
  641. package/dist/delete-UV7RETVN.mjs +0 -49
  642. package/dist/delete-VEYYR2V2.mjs +0 -60
  643. package/dist/delete-W4W7XE7W.mjs +0 -43
  644. package/dist/delete-WD4GP6VC.mjs +0 -40
  645. package/dist/delete-XOQPSIC3.js +0 -38
  646. package/dist/delete-XOQPSIC3.js.map +0 -1
  647. package/dist/delete-YNEQSVUG.js +0 -43
  648. package/dist/delete-YNEQSVUG.js.map +0 -1
  649. package/dist/delete-YO3A64VA.js +0 -37
  650. package/dist/delete-YO3A64VA.js.map +0 -1
  651. package/dist/delete-ZF2M52VU.js +0 -60
  652. package/dist/delete-ZF2M52VU.js.map +0 -1
  653. package/dist/delete-ZXRIAUBQ.js +0 -49
  654. package/dist/delete-ZXRIAUBQ.js.map +0 -1
  655. package/dist/docs-NTURLF4B.js +0 -77
  656. package/dist/docs-NTURLF4B.js.map +0 -1
  657. package/dist/docs-TVJ2BQY2.mjs +0 -77
  658. package/dist/download-E5SUD3F7.mjs +0 -99
  659. package/dist/download-JISYQMNY.js +0 -99
  660. package/dist/download-JISYQMNY.js.map +0 -1
  661. package/dist/duplicate-42LD4L23.mjs +0 -44
  662. package/dist/duplicate-E5KLA2EM.js +0 -44
  663. package/dist/duplicate-E5KLA2EM.js.map +0 -1
  664. package/dist/export-5JOE3K6U.js +0 -100
  665. package/dist/export-5JOE3K6U.js.map +0 -1
  666. package/dist/export-XAAWFBWP.mjs +0 -100
  667. package/dist/get-47CRZQE2.js +0 -84
  668. package/dist/get-47CRZQE2.js.map +0 -1
  669. package/dist/get-6CH555QF.js +0 -67
  670. package/dist/get-6CH555QF.js.map +0 -1
  671. package/dist/get-76OQEJTU.js +0 -68
  672. package/dist/get-76OQEJTU.js.map +0 -1
  673. package/dist/get-7BYRNYJH.mjs +0 -51
  674. package/dist/get-A4QAB3FY.mjs +0 -68
  675. package/dist/get-AF7RKSZO.mjs +0 -68
  676. package/dist/get-BIBUDQMN.js +0 -51
  677. package/dist/get-BIBUDQMN.js.map +0 -1
  678. package/dist/get-CKRAB3K5.mjs +0 -84
  679. package/dist/get-DQFGVM3F.mjs +0 -67
  680. package/dist/get-G2ZN6SEM.js +0 -50
  681. package/dist/get-G2ZN6SEM.js.map +0 -1
  682. package/dist/get-IWXUP7QP.js +0 -65
  683. package/dist/get-IWXUP7QP.js.map +0 -1
  684. package/dist/get-K7ZKHSVV.mjs +0 -64
  685. package/dist/get-KRIXLGMQ.js +0 -93
  686. package/dist/get-KRIXLGMQ.js.map +0 -1
  687. package/dist/get-KV5T4HQW.js +0 -70
  688. package/dist/get-KV5T4HQW.js.map +0 -1
  689. package/dist/get-LDSMHGUW.js +0 -73
  690. package/dist/get-LDSMHGUW.js.map +0 -1
  691. package/dist/get-M3R3ZXKQ.js +0 -68
  692. package/dist/get-M3R3ZXKQ.js.map +0 -1
  693. package/dist/get-NWUTIOCP.js +0 -55
  694. package/dist/get-NWUTIOCP.js.map +0 -1
  695. package/dist/get-O7XKPZAA.mjs +0 -50
  696. package/dist/get-QQPDGTAU.mjs +0 -65
  697. package/dist/get-RGIMJNQL.mjs +0 -70
  698. package/dist/get-RSWAAEYL.mjs +0 -93
  699. package/dist/get-SKFALBER.mjs +0 -55
  700. package/dist/get-UGZFJJUU.mjs +0 -73
  701. package/dist/get-X3II3DA2.mjs +0 -51
  702. package/dist/get-XTTWOOCK.js +0 -146
  703. package/dist/get-XTTWOOCK.js.map +0 -1
  704. package/dist/get-Y5JAGKGZ.js +0 -64
  705. package/dist/get-Y5JAGKGZ.js.map +0 -1
  706. package/dist/get-YUC3K2US.js +0 -51
  707. package/dist/get-YUC3K2US.js.map +0 -1
  708. package/dist/get-ZDDRNPH7.mjs +0 -146
  709. package/dist/implementation-DA0tkKLH.d.ts +0 -716
  710. package/dist/implementation-DQ_r7ave.d.mts +0 -716
  711. package/dist/init-JXLNP3KO.js +0 -16
  712. package/dist/init-JXLNP3KO.js.map +0 -1
  713. package/dist/init-WGW5SBTH.mjs +0 -16
  714. package/dist/list-2M7S7J7O.mjs +0 -75
  715. package/dist/list-54R5G4HH.mjs +0 -74
  716. package/dist/list-5FYTT5HB.mjs +0 -77
  717. package/dist/list-5U4LMZBB.mjs +0 -110
  718. package/dist/list-62BXOYGD.js +0 -84
  719. package/dist/list-62BXOYGD.js.map +0 -1
  720. package/dist/list-63FURY7L.js +0 -79
  721. package/dist/list-63FURY7L.js.map +0 -1
  722. package/dist/list-AFXU53X4.mjs +0 -79
  723. package/dist/list-APA4ERHO.mjs +0 -89
  724. package/dist/list-C4MDIFZR.js +0 -81
  725. package/dist/list-C4MDIFZR.js.map +0 -1
  726. package/dist/list-C4WD6B3D.mjs +0 -80
  727. package/dist/list-DWXA3JFX.mjs +0 -84
  728. package/dist/list-EGNU7O7M.js +0 -89
  729. package/dist/list-EGNU7O7M.js.map +0 -1
  730. package/dist/list-HMJHFHHP.js +0 -83
  731. package/dist/list-HMJHFHHP.js.map +0 -1
  732. package/dist/list-HOY4EIKQ.js +0 -77
  733. package/dist/list-HOY4EIKQ.js.map +0 -1
  734. package/dist/list-HVF6OOMK.js +0 -77
  735. package/dist/list-HVF6OOMK.js.map +0 -1
  736. package/dist/list-IOO6MDMB.mjs +0 -101
  737. package/dist/list-J6CMUED2.mjs +0 -83
  738. package/dist/list-MOMC25YL.js +0 -77
  739. package/dist/list-MOMC25YL.js.map +0 -1
  740. package/dist/list-MX4I22LJ.mjs +0 -79
  741. package/dist/list-O3WXWLZ2.js +0 -75
  742. package/dist/list-O3WXWLZ2.js.map +0 -1
  743. package/dist/list-O4JFOC7E.js +0 -80
  744. package/dist/list-O4JFOC7E.js.map +0 -1
  745. package/dist/list-SHZR6AY2.js +0 -101
  746. package/dist/list-SHZR6AY2.js.map +0 -1
  747. package/dist/list-TC3ZS3B7.js +0 -74
  748. package/dist/list-TC3ZS3B7.js.map +0 -1
  749. package/dist/list-UFWOZYRY.mjs +0 -81
  750. package/dist/list-UUZJCRRX.js +0 -79
  751. package/dist/list-UUZJCRRX.js.map +0 -1
  752. package/dist/list-WQEM5OO3.js +0 -52
  753. package/dist/list-WQEM5OO3.js.map +0 -1
  754. package/dist/list-WTCKNKVI.js +0 -79
  755. package/dist/list-WTCKNKVI.js.map +0 -1
  756. package/dist/list-X3G6DLUT.mjs +0 -77
  757. package/dist/list-X4NGP6JZ.mjs +0 -52
  758. package/dist/list-XOOOXCSB.mjs +0 -79
  759. package/dist/list-ZIF74QQI.js +0 -110
  760. package/dist/list-ZIF74QQI.js.map +0 -1
  761. package/dist/list-ZMXP4YSQ.mjs +0 -77
  762. package/dist/login-43IWV5ZX.mjs +0 -131
  763. package/dist/login-TP4JYVIC.js +0 -131
  764. package/dist/login-TP4JYVIC.js.map +0 -1
  765. package/dist/pull-AZPRK3GN.mjs +0 -26
  766. package/dist/pull-PGX2TZCI.js +0 -26
  767. package/dist/pull-PGX2TZCI.js.map +0 -1
  768. package/dist/push-6KWCSO2D.mjs +0 -26
  769. package/dist/push-7V3KD2UM.js +0 -26
  770. package/dist/push-7V3KD2UM.js.map +0 -1
  771. package/dist/query-BH42M4QU.js +0 -121
  772. package/dist/query-BH42M4QU.js.map +0 -1
  773. package/dist/query-Q4WHP7NL.mjs +0 -121
  774. package/dist/records-add-AHSO44PG.mjs +0 -97
  775. package/dist/records-add-JSYIMW5D.js +0 -97
  776. package/dist/records-add-JSYIMW5D.js.map +0 -1
  777. package/dist/records-delete-BZQHW47S.js +0 -45
  778. package/dist/records-delete-BZQHW47S.js.map +0 -1
  779. package/dist/records-delete-QPL3SVXF.mjs +0 -45
  780. package/dist/records-list-RCLGBKXW.js +0 -88
  781. package/dist/records-list-RCLGBKXW.js.map +0 -1
  782. package/dist/records-list-ZDQNI77T.mjs +0 -88
  783. package/dist/records-update-6LMOUVI4.mjs +0 -52
  784. package/dist/records-update-AG4ADH3F.js +0 -52
  785. package/dist/records-update-AG4ADH3F.js.map +0 -1
  786. package/dist/remove-MM7YJZYL.mjs +0 -114
  787. package/dist/remove-XSUM2GCV.js +0 -114
  788. package/dist/remove-XSUM2GCV.js.map +0 -1
  789. package/dist/rename-C76VRLQG.js +0 -41
  790. package/dist/rename-C76VRLQG.js.map +0 -1
  791. package/dist/rename-DDAOECU2.mjs +0 -41
  792. package/dist/restore-RWTZ5FID.mjs +0 -70
  793. package/dist/restore-WC4KVCSC.js +0 -70
  794. package/dist/restore-WC4KVCSC.js.map +0 -1
  795. package/dist/run-IOFY35YT.mjs +0 -82
  796. package/dist/run-IZTJZPSP.js +0 -139
  797. package/dist/run-IZTJZPSP.js.map +0 -1
  798. package/dist/run-LYB5PBK4.mjs +0 -74
  799. package/dist/run-M4BOFPQO.mjs +0 -141
  800. package/dist/run-PMCXW4TE.js +0 -74
  801. package/dist/run-PMCXW4TE.js.map +0 -1
  802. package/dist/run-RFPCGSZV.js +0 -141
  803. package/dist/run-RFPCGSZV.js.map +0 -1
  804. package/dist/run-S3Y3PBQM.mjs +0 -128
  805. package/dist/run-TRWMJ4ML.mjs +0 -139
  806. package/dist/run-USVYBYA5.js +0 -82
  807. package/dist/run-USVYBYA5.js.map +0 -1
  808. package/dist/run-YLVPYLLZ.js +0 -128
  809. package/dist/run-YLVPYLLZ.js.map +0 -1
  810. package/dist/search-JATZKUZ3.js +0 -107
  811. package/dist/search-JATZKUZ3.js.map +0 -1
  812. package/dist/search-YOPZMZV2.mjs +0 -107
  813. package/dist/set-Q6CV5ZSE.js +0 -58
  814. package/dist/set-Q6CV5ZSE.js.map +0 -1
  815. package/dist/set-ROA3RS3Y.mjs +0 -58
  816. package/dist/status-2RU6EVUV.mjs +0 -66
  817. package/dist/status-GQZAANKB.mjs +0 -145
  818. package/dist/status-GQZAANKB.mjs.map +0 -1
  819. package/dist/status-X4ZC2WQ2.js +0 -145
  820. package/dist/status-X4ZC2WQ2.js.map +0 -1
  821. package/dist/status-XKPRINDU.js +0 -66
  822. package/dist/status-XKPRINDU.js.map +0 -1
  823. package/dist/sync-M6MMO73Z.mjs +0 -131
  824. package/dist/sync-UORYQVYI.js +0 -131
  825. package/dist/sync-UORYQVYI.js.map +0 -1
  826. package/dist/types-DYLY4SyT.d.mts +0 -262
  827. package/dist/types-DYLY4SyT.d.ts +0 -262
  828. package/dist/types-_X800_oh.d.mts +0 -10988
  829. package/dist/types-fEWF2qhg.d.ts +0 -10988
  830. package/dist/update-2GBMUVNA.js +0 -74
  831. package/dist/update-2GBMUVNA.js.map +0 -1
  832. package/dist/update-2UQWJLVH.js +0 -50
  833. package/dist/update-2UQWJLVH.js.map +0 -1
  834. package/dist/update-2ZXMIFOX.js +0 -64
  835. package/dist/update-2ZXMIFOX.js.map +0 -1
  836. package/dist/update-4VNJCTED.js +0 -47
  837. package/dist/update-4VNJCTED.js.map +0 -1
  838. package/dist/update-AQ7XKPY7.mjs +0 -60
  839. package/dist/update-ASXLKSJG.mjs +0 -47
  840. package/dist/update-DPXJXXHW.js +0 -76
  841. package/dist/update-DPXJXXHW.js.map +0 -1
  842. package/dist/update-DQZUG22S.js +0 -60
  843. package/dist/update-DQZUG22S.js.map +0 -1
  844. package/dist/update-FSC33GPL.js +0 -70
  845. package/dist/update-FSC33GPL.js.map +0 -1
  846. package/dist/update-HBGBYK6N.js +0 -73
  847. package/dist/update-HBGBYK6N.js.map +0 -1
  848. package/dist/update-IRPDKEH3.js +0 -80
  849. package/dist/update-IRPDKEH3.js.map +0 -1
  850. package/dist/update-IVWQ63V4.js +0 -63
  851. package/dist/update-IVWQ63V4.js.map +0 -1
  852. package/dist/update-KXVULES5.mjs +0 -73
  853. package/dist/update-MCO3C4MF.mjs +0 -76
  854. package/dist/update-ONUSCD7N.js +0 -47
  855. package/dist/update-ONUSCD7N.js.map +0 -1
  856. package/dist/update-PRPVHRHO.mjs +0 -80
  857. package/dist/update-QT7OOZ27.mjs +0 -47
  858. package/dist/update-RAF3FLXI.mjs +0 -74
  859. package/dist/update-RWLYZTKO.mjs +0 -70
  860. package/dist/update-WLIYEPTG.mjs +0 -64
  861. package/dist/update-XKCCJUWT.mjs +0 -50
  862. package/dist/update-XQ4V6RRT.mjs +0 -63
  863. package/dist/upload-O3X3HBCC.js +0 -79
  864. package/dist/upload-O3X3HBCC.js.map +0 -1
  865. package/dist/upload-V5HNSSDT.mjs +0 -79
  866. package/dist/versions-C3HXAFPH.js +0 -84
  867. package/dist/versions-C3HXAFPH.js.map +0 -1
  868. package/dist/versions-HHXBKXHA.mjs +0 -84
  869. /package/dist/{add-JJFHYAXS.mjs.map → add-3CDKMW3S.mjs.map} +0 -0
  870. /package/dist/{assign-KYLY5AJB.mjs.map → assign-6G5ZYKQ5.mjs.map} +0 -0
  871. /package/dist/{chunk-ZA6AGQLU.mjs.map → chunk-2FXJEMKG.mjs.map} +0 -0
  872. /package/dist/{chunk-257C3DFN.mjs.map → chunk-2QCCASZH.mjs.map} +0 -0
  873. /package/dist/{chunk-NHFJYJQY.mjs.map → chunk-3I2MYKU3.mjs.map} +0 -0
  874. /package/dist/{chunk-VVZTY5MI.mjs.map → chunk-3YCWR3ZM.mjs.map} +0 -0
  875. /package/dist/{chunk-FYV43PSH.mjs.map → chunk-5WTSOUBR.mjs.map} +0 -0
  876. /package/dist/{chunk-XEJXLBC7.mjs.map → chunk-AONNFMMJ.mjs.map} +0 -0
  877. /package/dist/{chunk-ZRTWLTE6.mjs.map → chunk-ASUXSQS2.mjs.map} +0 -0
  878. /package/dist/{chunk-URTD2WOC.mjs.map → chunk-BAX4W3AY.mjs.map} +0 -0
  879. /package/dist/{chunk-XMVWGE2B.mjs.map → chunk-DYWGFYYW.mjs.map} +0 -0
  880. /package/dist/{chunk-5V4TJHYH.mjs.map → chunk-DZZNLMQL.mjs.map} +0 -0
  881. /package/dist/{chunk-T7D2GUDO.mjs.map → chunk-FZFDSERO.mjs.map} +0 -0
  882. /package/dist/{chunk-BIAEFD56.mjs.map → chunk-GDLOHMXT.mjs.map} +0 -0
  883. /package/dist/{chunk-QSCT6GWB.mjs.map → chunk-IHTG3YLH.mjs.map} +0 -0
  884. /package/dist/{chunk-RKJDDUGQ.mjs.map → chunk-JOLGDU7Q.mjs.map} +0 -0
  885. /package/dist/{chunk-2IBXN2UI.mjs.map → chunk-LRBTDTUX.mjs.map} +0 -0
  886. /package/dist/{chunk-WO2JP6VF.mjs.map → chunk-LRGKGA3O.mjs.map} +0 -0
  887. /package/dist/{chunk-NFARSAL7.mjs.map → chunk-NZRST5QA.mjs.map} +0 -0
  888. /package/dist/{chunk-36CN3DNU.mjs.map → chunk-PK2JJAOM.mjs.map} +0 -0
  889. /package/dist/{chunk-DDM6RZL6.mjs.map → chunk-PWJDQYIF.mjs.map} +0 -0
  890. /package/dist/{chunk-OO7FCQAD.mjs.map → chunk-R4IDYH64.mjs.map} +0 -0
  891. /package/dist/{chunk-W27ODKHX.mjs.map → chunk-T2HARCUR.mjs.map} +0 -0
  892. /package/dist/{chunk-RKFBOROT.mjs.map → chunk-TZT657BT.mjs.map} +0 -0
  893. /package/dist/{chunk-YGUS5AZR.mjs.map → chunk-U42S66VO.mjs.map} +0 -0
  894. /package/dist/{chunk-FARZEN6T.mjs.map → chunk-YQNOLNAK.mjs.map} +0 -0
  895. /package/dist/{chunk-N45JXCGL.mjs.map → chunk-ZXFN2K4P.mjs.map} +0 -0
  896. /package/dist/{create-BCUEKB26.mjs.map → create-23VY67VO.mjs.map} +0 -0
  897. /package/dist/{create-QQF6K4S3.mjs.map → create-2DAUVMAB.mjs.map} +0 -0
  898. /package/dist/{create-NCWNYSXE.mjs.map → create-3L6JZRHP.mjs.map} +0 -0
  899. /package/dist/{create-3JFCK2Q7.mjs.map → create-4FZA3Q5Z.mjs.map} +0 -0
  900. /package/dist/{create-2YCDG2JE.mjs.map → create-6WFTHQMD.mjs.map} +0 -0
  901. /package/dist/{create-Q62FIVQ7.mjs.map → create-7SMTEVKG.mjs.map} +0 -0
  902. /package/dist/{create-MT7RY7DY.mjs.map → create-F7IXC6LY.mjs.map} +0 -0
  903. /package/dist/{create-KMGWW73J.mjs.map → create-K5O4F4MJ.mjs.map} +0 -0
  904. /package/dist/{create-EDL2KY34.mjs.map → create-LVAEPDXJ.mjs.map} +0 -0
  905. /package/dist/{create-6UQOQL7P.mjs.map → create-O3JUSS6U.mjs.map} +0 -0
  906. /package/dist/{create-V3AYJ5CK.mjs.map → create-ONRE7BVU.mjs.map} +0 -0
  907. /package/dist/{create-5FRTV3D7.mjs.map → create-S56FEJQC.mjs.map} +0 -0
  908. /package/dist/{create-KGDQHE6B.mjs.map → create-V7I5MZQH.mjs.map} +0 -0
  909. /package/dist/{delete-QTUYP7F4.mjs.map → delete-5GJ24SOX.mjs.map} +0 -0
  910. /package/dist/{delete-CP7KTUBJ.mjs.map → delete-CKSBQKE5.mjs.map} +0 -0
  911. /package/dist/{delete-B7GGZUJB.mjs.map → delete-EFJKA2XB.mjs.map} +0 -0
  912. /package/dist/{delete-W4W7XE7W.mjs.map → delete-FBNVDBFA.mjs.map} +0 -0
  913. /package/dist/{delete-64PBJEMZ.mjs.map → delete-GL2ECGNY.mjs.map} +0 -0
  914. /package/dist/{delete-JXWQ42O5.mjs.map → delete-I7TDBX4N.mjs.map} +0 -0
  915. /package/dist/{delete-WD4GP6VC.mjs.map → delete-KM43ETJP.mjs.map} +0 -0
  916. /package/dist/{delete-423ZLFER.mjs.map → delete-KOIZBKC7.mjs.map} +0 -0
  917. /package/dist/{delete-VEYYR2V2.mjs.map → delete-OZBLOHQ6.mjs.map} +0 -0
  918. /package/dist/{delete-PRDVV3W7.mjs.map → delete-X4UDKMCL.mjs.map} +0 -0
  919. /package/dist/{delete-RPPWZ7UC.mjs.map → delete-YCFRGZ2B.mjs.map} +0 -0
  920. /package/dist/{delete-UV7RETVN.mjs.map → delete-YSQS6OG2.mjs.map} +0 -0
  921. /package/dist/{delete-NZBT4PT3.mjs.map → delete-ZK4X56MN.mjs.map} +0 -0
  922. /package/dist/{docs-TVJ2BQY2.mjs.map → docs-YG2DQVHD.mjs.map} +0 -0
  923. /package/dist/{download-E5SUD3F7.mjs.map → download-F354BSIZ.mjs.map} +0 -0
  924. /package/dist/{duplicate-42LD4L23.mjs.map → duplicate-7OV5ABPH.mjs.map} +0 -0
  925. /package/dist/{export-XAAWFBWP.mjs.map → export-SASNDV5L.mjs.map} +0 -0
  926. /package/dist/{get-DQFGVM3F.mjs.map → get-3CUYSH5L.mjs.map} +0 -0
  927. /package/dist/{get-UGZFJJUU.mjs.map → get-5AXW735G.mjs.map} +0 -0
  928. /package/dist/{get-RSWAAEYL.mjs.map → get-7EOUTEVW.mjs.map} +0 -0
  929. /package/dist/{get-7BYRNYJH.mjs.map → get-A2FFLA5X.mjs.map} +0 -0
  930. /package/dist/{get-O7XKPZAA.mjs.map → get-E6CPQCQD.mjs.map} +0 -0
  931. /package/dist/{get-ZDDRNPH7.mjs.map → get-FTY7OHAJ.mjs.map} +0 -0
  932. /package/dist/{get-K7ZKHSVV.mjs.map → get-NUX6KUE4.mjs.map} +0 -0
  933. /package/dist/{get-SKFALBER.mjs.map → get-OOBPNKDJ.mjs.map} +0 -0
  934. /package/dist/{get-AF7RKSZO.mjs.map → get-P6HMLM5Q.mjs.map} +0 -0
  935. /package/dist/{get-X3II3DA2.mjs.map → get-POYXEXYJ.mjs.map} +0 -0
  936. /package/dist/{get-A4QAB3FY.mjs.map → get-USUJHXGC.mjs.map} +0 -0
  937. /package/dist/{get-CKRAB3K5.mjs.map → get-VA37QEJ6.mjs.map} +0 -0
  938. /package/dist/{get-QQPDGTAU.mjs.map → get-W6PYTHLK.mjs.map} +0 -0
  939. /package/dist/{get-RGIMJNQL.mjs.map → get-ZLPB2C6P.mjs.map} +0 -0
  940. /package/dist/{init-WGW5SBTH.mjs.map → init-NQLD3PTI.mjs.map} +0 -0
  941. /package/dist/{list-MX4I22LJ.mjs.map → list-25XQ644X.mjs.map} +0 -0
  942. /package/dist/{list-XOOOXCSB.mjs.map → list-3KZSXM4S.mjs.map} +0 -0
  943. /package/dist/{list-5U4LMZBB.mjs.map → list-3ZIQGCSU.mjs.map} +0 -0
  944. /package/dist/{list-ZMXP4YSQ.mjs.map → list-422ZYGGM.mjs.map} +0 -0
  945. /package/dist/{list-C4WD6B3D.mjs.map → list-AKEZJPVQ.mjs.map} +0 -0
  946. /package/dist/{list-2M7S7J7O.mjs.map → list-HIIB3K73.mjs.map} +0 -0
  947. /package/dist/{list-5FYTT5HB.mjs.map → list-NF2VPZII.mjs.map} +0 -0
  948. /package/dist/{list-UFWOZYRY.mjs.map → list-NXN64XJ2.mjs.map} +0 -0
  949. /package/dist/{list-X3G6DLUT.mjs.map → list-OFPK6RW7.mjs.map} +0 -0
  950. /package/dist/{list-AFXU53X4.mjs.map → list-PK7B4BBM.mjs.map} +0 -0
  951. /package/dist/{list-54R5G4HH.mjs.map → list-SL4UGZ3E.mjs.map} +0 -0
  952. /package/dist/{list-J6CMUED2.mjs.map → list-URUAIPJ7.mjs.map} +0 -0
  953. /package/dist/{list-APA4ERHO.mjs.map → list-WSNVLZVO.mjs.map} +0 -0
  954. /package/dist/{list-IOO6MDMB.mjs.map → list-Y63426YQ.mjs.map} +0 -0
  955. /package/dist/{list-DWXA3JFX.mjs.map → list-ZUOZWVYD.mjs.map} +0 -0
  956. /package/dist/{list-X4NGP6JZ.mjs.map → list-ZZ5GF5MQ.mjs.map} +0 -0
  957. /package/dist/{login-43IWV5ZX.mjs.map → login-KMB2XPOV.mjs.map} +0 -0
  958. /package/dist/{pull-AZPRK3GN.mjs.map → pull-7ICWENKU.mjs.map} +0 -0
  959. /package/dist/{push-6KWCSO2D.mjs.map → push-RX6UT4QL.mjs.map} +0 -0
  960. /package/dist/{query-Q4WHP7NL.mjs.map → query-KX5L5KIX.mjs.map} +0 -0
  961. /package/dist/{records-add-AHSO44PG.mjs.map → records-add-PVWEVBU3.mjs.map} +0 -0
  962. /package/dist/{records-delete-QPL3SVXF.mjs.map → records-delete-OE5ZB6B2.mjs.map} +0 -0
  963. /package/dist/{records-list-ZDQNI77T.mjs.map → records-list-6MRQEEFW.mjs.map} +0 -0
  964. /package/dist/{records-update-6LMOUVI4.mjs.map → records-update-3SRICHV3.mjs.map} +0 -0
  965. /package/dist/{remove-MM7YJZYL.mjs.map → remove-IFRSRUGH.mjs.map} +0 -0
  966. /package/dist/{rename-DDAOECU2.mjs.map → rename-NPBMTVXU.mjs.map} +0 -0
  967. /package/dist/{restore-RWTZ5FID.mjs.map → restore-2SQC7QS4.mjs.map} +0 -0
  968. /package/dist/{run-S3Y3PBQM.mjs.map → run-3A2UXVTP.mjs.map} +0 -0
  969. /package/dist/{run-IOFY35YT.mjs.map → run-AFR4S7D6.mjs.map} +0 -0
  970. /package/dist/{run-TRWMJ4ML.mjs.map → run-CG6MEL6Z.mjs.map} +0 -0
  971. /package/dist/{run-M4BOFPQO.mjs.map → run-JDOMLKLP.mjs.map} +0 -0
  972. /package/dist/{run-LYB5PBK4.mjs.map → run-VE7AKQHN.mjs.map} +0 -0
  973. /package/dist/{search-YOPZMZV2.mjs.map → search-ITC5GC3G.mjs.map} +0 -0
  974. /package/dist/{set-ROA3RS3Y.mjs.map → set-RQK3AJF5.mjs.map} +0 -0
  975. /package/dist/{status-2RU6EVUV.mjs.map → status-7RJK27HR.mjs.map} +0 -0
  976. /package/dist/{sync-M6MMO73Z.mjs.map → sync-SXI7HIJW.mjs.map} +0 -0
  977. /package/dist/{update-RAF3FLXI.mjs.map → update-5X2C6ERA.mjs.map} +0 -0
  978. /package/dist/{update-XKCCJUWT.mjs.map → update-E34GVN5D.mjs.map} +0 -0
  979. /package/dist/{update-RWLYZTKO.mjs.map → update-FHZ2DVRB.mjs.map} +0 -0
  980. /package/dist/{update-KXVULES5.mjs.map → update-LRAX5MVX.mjs.map} +0 -0
  981. /package/dist/{update-XQ4V6RRT.mjs.map → update-QVBHCTC4.mjs.map} +0 -0
  982. /package/dist/{update-WLIYEPTG.mjs.map → update-RPC722BA.mjs.map} +0 -0
  983. /package/dist/{update-ASXLKSJG.mjs.map → update-SBFQQPO5.mjs.map} +0 -0
  984. /package/dist/{update-MCO3C4MF.mjs.map → update-TIAR7QGJ.mjs.map} +0 -0
  985. /package/dist/{update-QT7OOZ27.mjs.map → update-WM2VXMPJ.mjs.map} +0 -0
  986. /package/dist/{update-AQ7XKPY7.mjs.map → update-WOVSATBM.mjs.map} +0 -0
  987. /package/dist/{update-PRPVHRHO.mjs.map → update-XRNF3AWL.mjs.map} +0 -0
  988. /package/dist/{upload-V5HNSSDT.mjs.map → upload-D45XX4PT.mjs.map} +0 -0
  989. /package/dist/{versions-HHXBKXHA.mjs.map → versions-PN7XIEH7.mjs.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/cli/index.js","../../src/cli/index.ts"],"names":[],"mappings":"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","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/cli/index.js","sourcesContent":[null,"#!/usr/bin/env node\n\n// Load environment variables BEFORE any other imports\nimport { config } from \"dotenv\";\nconfig();\n\nimport { Command } from \"commander\";\nimport { parsePromptSpec } from \"./types\";\nimport { formatApiErrorMessage } from \"../client-sdk/services/_shared/format-api-error\";\n\ndeclare const __CLI_VERSION__: string;\n\n// Import commands with proper async handling\nconst addCommand = async (name: string, options: { version?: string; localFile?: string }): Promise<void> => {\n const { addCommand: addCommandImpl } = await import(\"./commands/add.js\");\n return addCommandImpl(name, options);\n};\n\nconst removeCommand = async (name: string): Promise<void> => {\n const { removeCommand: removeCommandImpl } = await import(\"./commands/remove.js\");\n return removeCommandImpl(name);\n};\n\nconst initCommand = async (): Promise<void> => {\n const { initCommand: initCommandImpl } = await import(\"./commands/init.js\");\n return initCommandImpl();\n};\n\nconst loginCommand = async (options?: { apiKey?: string }): Promise<void> => {\n const { loginCommand: loginCommandImpl } = await import(\"./commands/login.js\");\n return loginCommandImpl(options);\n};\n\nconst listCommand = async (options?: { format?: string }): Promise<void> => {\n const { listCommand: listCommandImpl } = await import(\"./commands/list.js\");\n return listCommandImpl(options);\n};\n\nconst syncCommand = async (): Promise<void> => {\n const { syncCommand: syncCommandImpl } = await import(\"./commands/sync.js\");\n return syncCommandImpl();\n};\n\nconst pullCommand = async (options?: { tag?: string }): Promise<void> => {\n const { pullCommand: pullCommandImpl } = await import(\"./commands/pull.js\");\n return pullCommandImpl(options);\n};\n\n// Tag commands\nconst tagListCommand = async (options?: { format?: string }): Promise<void> => {\n const { tagListCommand: impl } = await import(\"./commands/tag/list.js\");\n return impl(options);\n};\n\nconst tagCreateCommand = async (name: string): Promise<void> => {\n const { tagCreateCommand: impl } = await import(\"./commands/tag/create.js\");\n return impl(name);\n};\n\nconst tagRenameCommand = async (oldName: string, newName: string): Promise<void> => {\n const { tagRenameCommand: impl } = await import(\"./commands/tag/rename.js\");\n return impl(oldName, newName);\n};\n\nconst tagAssignCommand = async (promptHandle: string, tagName: string, options?: { version?: string }): Promise<void> => {\n const { tagAssignCommand: impl } = await import(\"./commands/tag/assign.js\");\n return impl(promptHandle, tagName, options);\n};\n\nconst tagDeleteCommand = async (tagName: string, options?: { force?: boolean }): Promise<void> => {\n const { tagDeleteCommand: impl } = await import(\"./commands/tag/delete.js\");\n return impl(tagName, options);\n};\n\nconst pushCommand = async (options?: { forceLocal?: boolean; forceRemote?: boolean }): Promise<void> => {\n const { pushCommand: pushCommandImpl } = await import(\"./commands/push.js\");\n return pushCommandImpl(options);\n};\n\nconst createCommand = async (name: string, options: Record<string, unknown>): Promise<void> => {\n const { createCommand: createCommandImpl } = await import(\"./commands/create.js\");\n return createCommandImpl(name, options);\n};\n\n// Evaluator commands\nconst listEvaluatorsCommand = async (options?: { format?: string }): Promise<void> => {\n const { listEvaluatorsCommand: impl } = await import(\"./commands/evaluators/list.js\");\n return impl(options);\n};\n\nconst getEvaluatorCommand = async (idOrSlug: string, options?: { format?: string }): Promise<void> => {\n const { getEvaluatorCommand: impl } = await import(\"./commands/evaluators/get.js\");\n return impl(idOrSlug, options);\n};\n\nconst createEvaluatorCommand = async (name: string, options: { type: string; format?: string }): Promise<void> => {\n const { createEvaluatorCommand: impl } = await import(\"./commands/evaluators/create.js\");\n return impl(name, options);\n};\n\nconst updateEvaluatorCommand = async (idOrSlug: string, options: { name?: string; settings?: string; format?: string }): Promise<void> => {\n const { updateEvaluatorCommand: impl } = await import(\"./commands/evaluators/update.js\");\n return impl(idOrSlug, options);\n};\n\nconst deleteEvaluatorCommand = async (idOrSlug: string, options?: { format?: string }): Promise<void> => {\n const { deleteEvaluatorCommand: impl } = await import(\"./commands/evaluators/delete.js\");\n return impl(idOrSlug, options);\n};\n\nconst program = new Command();\n\nprogram\n .name(\"langwatch\")\n .description(\"LangWatch CLI - Manage prompts, datasets, evaluators, scenarios, suites, and more\")\n .version(__CLI_VERSION__, \"-v, --version\", \"Display the current version\")\n .enablePositionalOptions()\n .passThroughOptions()\n .configureHelp({\n showGlobalOptions: true,\n })\n .showHelpAfterError()\n .showSuggestionAfterError();\n\n// Top-level commands\nprogram\n .command(\"login\")\n .description(\"Login to LangWatch and save API key. Get a key from https://app.langwatch.ai/authorize (or ${LANGWATCH_ENDPOINT}/authorize for self-hosted).\")\n .option(\"--api-key <key>\", \"Set API key non-interactively (for CI/CD and agents)\")\n .action(async (options: { apiKey?: string }) => {\n try {\n await loginCommand(options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\n// Add prompt command group\nconst promptCmd = program\n .command(\"prompt\")\n .description(\"Manage prompt dependencies\");\n\npromptCmd\n .command(\"init\")\n .description(\"Initialize a new prompts project\")\n .action(async () => {\n try {\n await initCommand();\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"create <name>\")\n .description(\"Create a new prompt YAML file with default content\")\n .action(async (name: string) => {\n try {\n await createCommand(name, {});\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"add <spec> [localFile]\")\n .description(\"Add a prompt dependency (e.g., 'agent/foo', 'agent/bar@5') or local file\")\n .action(async (spec: string, localFile?: string) => {\n try {\n if (localFile) {\n await addCommand(spec, { localFile });\n } else {\n const { name, version } = parsePromptSpec(spec);\n await addCommand(name, { version });\n }\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"remove <name>\")\n .description(\"Remove a prompt dependency\")\n .action(async (name: string) => {\n try {\n await removeCommand(name);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"list\")\n .description(\"List all available prompts on the server\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n try {\n await listCommand(options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"sync\")\n .description(\"Sync prompts - fetch remote and push local\")\n .action(async () => {\n try {\n await syncCommand();\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"pull\")\n .description(\"Pull remote prompts and materialize locally\")\n .option(\"--tag <name>\", \"Pull the version pointed to by this tag instead of the configured version\")\n .action(async (options: { tag?: string }) => {\n try {\n await pullCommand(options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"push\")\n .description(\"Push local prompts to the server\")\n .option(\"--force-local\", \"Auto-resolve conflicts by keeping local version\")\n .option(\"--force-remote\", \"Auto-resolve conflicts by keeping remote version\")\n .action(async (options: { forceLocal?: boolean; forceRemote?: boolean }) => {\n try {\n await pushCommand({ forceLocal: options.forceLocal, forceRemote: options.forceRemote });\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"versions <handle>\")\n .description(\"List all versions of a prompt\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (handle: string, options: { format?: string }) => {\n const { promptVersionsCommand: impl } = await import(\"./commands/prompt/versions.js\");\n await impl(handle, options);\n });\n\npromptCmd\n .command(\"restore <handle> <versionId>\")\n .description(\"Restore a prompt to a previous version (creates a new version with that config)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (handle: string, versionId: string, options: { format?: string }) => {\n const { promptRestoreCommand: impl } = await import(\"./commands/prompt/restore.js\");\n await impl(handle, versionId, options);\n });\n\n// Add prompt tag subcommand group\nconst tagCmd = promptCmd\n .command(\"tag\")\n .description(\"Manage prompt tags\");\n\ntagCmd\n .command(\"list\")\n .description(\"List all tag definitions for the organization\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n try {\n await tagListCommand(options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\ntagCmd\n .command(\"create <name>\")\n .description(\"Create a custom tag\")\n .action(async (name: string) => {\n try {\n await tagCreateCommand(name);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\ntagCmd\n .command(\"rename <oldName> <newName>\")\n .description(\"Rename a tag\")\n .action(async (oldName: string, newName: string) => {\n try {\n await tagRenameCommand(oldName, newName);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\ntagCmd\n .command(\"assign <prompt> <tag>\")\n .description(\"Assign a tag to a prompt version\")\n .option(\"--version <number>\", \"Version number to assign (defaults to latest)\")\n .action(async (prompt: string, tag: string, options: { version?: string }) => {\n try {\n await tagAssignCommand(prompt, tag, options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\ntagCmd\n .command(\"delete <name>\")\n .description(\"Delete a tag and remove all its assignments\")\n .option(\"--force\", \"Skip confirmation prompt\")\n .action(async (name: string, options: { force?: boolean }) => {\n try {\n await tagDeleteCommand(name, options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\n// Status command - project overview\nprogram\n .command(\"status\")\n .description(\"Show project resource counts and available commands\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { statusCommand: impl } = await import(\"./commands/status.js\");\n await impl(options);\n });\n\n// Docs commands - fetch markdown documentation for LangWatch and Scenario\nprogram\n .command(\"docs [url]\")\n .description(\n \"Fetch LangWatch documentation as markdown. Pass no argument for the index (llms.txt), a path like 'integration/python/guide', or a full URL. Missing extensions default to .md.\",\n )\n .action(async (url?: string) => {\n try {\n const { docsCommand: impl } = await import(\"./commands/docs.js\");\n await impl(url);\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\nprogram\n .command(\"scenario-docs [url]\")\n .description(\n \"Fetch LangWatch Scenario documentation as markdown. Pass no argument for the index, a path like 'advanced/red-teaming', or a full URL. Missing extensions default to .md.\",\n )\n .action(async (url?: string) => {\n try {\n const { scenarioDocsCommand: impl } = await import(\"./commands/docs.js\");\n await impl(url);\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\n// Add evaluator command group\nconst evaluatorCmd = program\n .command(\"evaluator\")\n .description(\"Manage evaluator definitions\");\n\nevaluatorCmd\n .command(\"list\")\n .description(\"List all evaluators in the project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n try {\n await listEvaluatorsCommand(options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\nevaluatorCmd\n .command(\"get <idOrSlug>\")\n .description(\"Get evaluator details by ID or slug\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (idOrSlug: string, options: { format?: string }) => {\n try {\n await getEvaluatorCommand(idOrSlug, options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\nevaluatorCmd\n .command(\"create <name>\")\n .description(\"Create a new evaluator\")\n .requiredOption(\"--type <evaluatorType>\", \"Evaluator type (e.g. langevals/llm_judge)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { type: string; format?: string }) => {\n try {\n await createEvaluatorCommand(name, options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\nevaluatorCmd\n .command(\"update <idOrSlug>\")\n .description(\"Update an evaluator name or settings\")\n .option(\"--name <name>\", \"New evaluator name\")\n .option(\"--settings <json>\", \"Evaluator config settings as JSON\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (idOrSlug: string, options: { name?: string; settings?: string; format?: string }) => {\n try {\n await updateEvaluatorCommand(idOrSlug, options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\nevaluatorCmd\n .command(\"delete <idOrSlug>\")\n .description(\"Archive (soft-delete) an evaluator\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (idOrSlug: string, options: { format?: string }) => {\n try {\n await deleteEvaluatorCommand(idOrSlug, options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\n// Add evaluation command group\nconst evaluationCmd = program\n .command(\"evaluation\")\n .description(\"Run and monitor evaluations\");\n\nevaluationCmd\n .command(\"run <slug>\")\n .description(\"Start an evaluation run by slug\")\n .option(\"--wait\", \"Wait for the evaluation to complete before returning\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (slug: string, options: { wait?: boolean; format?: string }) => {\n const { runEvaluationCommand: impl } = await import(\"./commands/evaluation/run.js\");\n await impl(slug, options);\n });\n\nevaluationCmd\n .command(\"status <runId>\")\n .description(\"Check the status of an evaluation run\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (runId: string, options: { format?: string }) => {\n const { evaluationStatusCommand: impl } = await import(\"./commands/evaluation/status.js\");\n await impl(runId, options);\n });\n\n// Add workflow command group\nconst workflowCmd = program\n .command(\"workflow\")\n .description(\"Manage workflows\");\n\nworkflowCmd\n .command(\"list\")\n .description(\"List all workflows in the project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listWorkflowsCommand: impl } = await import(\"./commands/workflows/list.js\");\n await impl(options);\n });\n\nworkflowCmd\n .command(\"get <id>\")\n .description(\"Get workflow details by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getWorkflowCommand: impl } = await import(\"./commands/workflows/get.js\");\n await impl(id, options);\n });\n\nworkflowCmd\n .command(\"update <id>\")\n .description(\"Update a workflow's metadata (name, icon, description)\")\n .option(\"--name <name>\", \"New workflow name\")\n .option(\"--icon <icon>\", \"New workflow icon\")\n .option(\"--description <desc>\", \"New workflow description\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { name?: string; icon?: string; description?: string; format?: string }) => {\n const { updateWorkflowCommand: impl } = await import(\"./commands/workflows/update.js\");\n await impl(id, options);\n });\n\nworkflowCmd\n .command(\"run <id>\")\n .description(\"Execute a workflow with JSON input\")\n .option(\"--input <json>\", \"Input data as JSON string\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { input?: string; format?: string }) => {\n const { runWorkflowCommand: impl } = await import(\"./commands/workflows/run.js\");\n await impl(id, options);\n });\n\nworkflowCmd\n .command(\"delete <id>\")\n .description(\"Archive (soft-delete) a workflow\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteWorkflowCommand: impl } = await import(\"./commands/workflows/delete.js\");\n await impl(id, options);\n });\n\n// Add agent command group\nconst agentCmd = program\n .command(\"agent\")\n .description(\"Manage agent definitions\");\n\nagentCmd\n .command(\"list\")\n .description(\"List all agents in the project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listAgentsCommand: impl } = await import(\"./commands/agents/list.js\");\n await impl(options);\n });\n\nagentCmd\n .command(\"get <id>\")\n .description(\"Get agent details by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getAgentCommand: impl } = await import(\"./commands/agents/get.js\");\n await impl(id, options);\n });\n\nagentCmd\n .command(\"create <name>\")\n .description(\"Create a new agent\")\n .requiredOption(\"--type <type>\", \"Agent type: signature, code, workflow, or http\")\n .option(\"--config <json>\", \"Agent config as JSON\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { type: string; config?: string; format?: string }) => {\n const { createAgentCommand: impl } = await import(\"./commands/agents/create.js\");\n await impl(name, options);\n });\n\nagentCmd\n .command(\"run <id>\")\n .description(\"Execute an agent with JSON input (HTTP agents call URL directly, others use workflow engine)\")\n .option(\"--input <json>\", \"Input data as JSON string\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { input?: string; format?: string }) => {\n const { runAgentCommand: impl } = await import(\"./commands/agents/run.js\");\n await impl(id, options);\n });\n\nagentCmd\n .command(\"update <id>\")\n .description(\"Update an agent name, type, or configuration\")\n .option(\"--name <name>\", \"New agent name\")\n .option(\"--type <type>\", \"New agent type: signature, code, workflow, or http\")\n .option(\"--config <json>\", \"Updated configuration as JSON\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { name?: string; type?: string; config?: string; format?: string }) => {\n const { updateAgentCommand: impl } = await import(\"./commands/agents/update.js\");\n await impl(id, options);\n });\n\nagentCmd\n .command(\"delete <id>\")\n .description(\"Archive (soft-delete) an agent\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteAgentCommand: impl } = await import(\"./commands/agents/delete.js\");\n await impl(id, options);\n });\n\n// Add dashboard command group\nconst dashboardCmd = program\n .command(\"dashboard\")\n .description(\"Manage analytics dashboards\");\n\ndashboardCmd\n .command(\"list\")\n .description(\"List all dashboards in the project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listDashboardsCommand: impl } = await import(\"./commands/dashboards/list.js\");\n await impl(options);\n });\n\ndashboardCmd\n .command(\"get <id>\")\n .description(\"Get dashboard details by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getDashboardCommand: impl } = await import(\"./commands/dashboards/get.js\");\n await impl(id, options);\n });\n\ndashboardCmd\n .command(\"update <id>\")\n .description(\"Rename a dashboard\")\n .requiredOption(\"--name <name>\", \"New dashboard name\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { name?: string; format?: string }) => {\n const { updateDashboardCommand: impl } = await import(\"./commands/dashboards/update.js\");\n await impl(id, options);\n });\n\ndashboardCmd\n .command(\"create <name>\")\n .description(\"Create a new dashboard\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { format?: string }) => {\n const { createDashboardCommand: impl } = await import(\"./commands/dashboards/create.js\");\n await impl(name, options);\n });\n\ndashboardCmd\n .command(\"delete <id>\")\n .description(\"Delete a dashboard and its graphs\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteDashboardCommand: impl } = await import(\"./commands/dashboards/delete.js\");\n await impl(id, options);\n });\n\n// Add model-provider command group\nconst modelProviderCmd = program\n .command(\"model-provider\")\n .description(\"Manage LLM model provider configurations\");\n\nmodelProviderCmd\n .command(\"list\")\n .description(\"List all configured model providers\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listModelProvidersCommand: impl } = await import(\"./commands/model-providers/list.js\");\n await impl(options);\n });\n\nmodelProviderCmd\n .command(\"set <provider>\")\n .description(\"Configure a model provider (e.g. openai, anthropic)\")\n .option(\"--enabled <boolean>\", \"Enable or disable the provider\", (v) => v === \"true\")\n .option(\"--api-key <key>\", \"API key for the provider\")\n .option(\"--default-model <model>\", \"Default model to use (e.g. gpt-4o)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (provider: string, options: { enabled?: boolean; apiKey?: string; defaultModel?: string; format?: string }) => {\n const { setModelProviderCommand: impl } = await import(\"./commands/model-providers/set.js\");\n await impl(provider, options);\n });\n\n// Add annotation command group\nconst annotationCmd = program\n .command(\"annotation\")\n .description(\"Manage trace annotations\");\n\nannotationCmd\n .command(\"list\")\n .description(\"List all annotations (optionally filtered by trace)\")\n .option(\"--trace-id <traceId>\", \"Filter by trace ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { traceId?: string; format?: string }) => {\n const { listAnnotationsCommand: impl } = await import(\"./commands/annotations/list.js\");\n await impl(options);\n });\n\nannotationCmd\n .command(\"get <id>\")\n .description(\"Get annotation details by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getAnnotationCommand: impl } = await import(\"./commands/annotations/get.js\");\n await impl(id, options);\n });\n\nannotationCmd\n .command(\"create <traceId>\")\n .description(\"Create an annotation for a trace\")\n .option(\"--comment <comment>\", \"Annotation comment\")\n .option(\"--thumbs-up\", \"Mark as thumbs up\")\n .option(\"--thumbs-down\", \"Mark as thumbs down\")\n .option(\"--email <email>\", \"Email of the annotator\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (traceId: string, options: { comment?: string; thumbsUp?: boolean; thumbsDown?: boolean; email?: string; format?: string }) => {\n const { createAnnotationCommand: impl } = await import(\"./commands/annotations/create.js\");\n await impl(traceId, options);\n });\n\nannotationCmd\n .command(\"delete <id>\")\n .description(\"Delete an annotation\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteAnnotationCommand: impl } = await import(\"./commands/annotations/delete.js\");\n await impl(id, options);\n });\n\n// Add analytics command group\nconst analyticsCmd = program\n .command(\"analytics\")\n .description(\"Query analytics and metrics\");\n\nanalyticsCmd\n .command(\"query\")\n .description(\"Query timeseries analytics (costs, latency, token usage, etc.)\")\n .option(\"-m, --metric <metric>\", \"Metric to query (preset name or raw metric path, default: trace-count)\")\n .option(\"-a, --aggregation <aggregation>\", \"Aggregation type: cardinality, avg, sum, min, max, p95, p99\")\n .option(\"--start-date <date>\", \"Start date (ISO string, default: 7 days ago)\")\n .option(\"--end-date <date>\", \"End date (ISO string, default: now)\")\n .option(\"--group-by <field>\", \"Group by field (e.g. metadata.model)\")\n .option(\"--time-scale <scale>\", \"Time scale: 'full' for aggregate, or interval in seconds\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { metric?: string; aggregation?: string; startDate?: string; endDate?: string; groupBy?: string; timeScale?: string; format?: string }) => {\n const { queryAnalyticsCommand: impl } = await import(\"./commands/analytics/query.js\");\n await impl(options);\n });\n\n// Add trace command group\nconst traceCmd = program\n .command(\"trace\")\n .description(\"Search and inspect traces\");\n\ntraceCmd\n .command(\"search\")\n .description(\"Search traces with optional text query and date range\")\n .option(\"-q, --query <query>\", \"Text search query\")\n .option(\"--start-date <date>\", \"Start date (ISO string or epoch ms, default: 24h ago)\")\n .option(\"--end-date <date>\", \"End date (ISO string or epoch ms, default: now)\")\n .option(\"--limit <n>\", \"Max results to return (default: 25)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { query?: string; startDate?: string; endDate?: string; limit?: string; format?: string }) => {\n const { searchTracesCommand: impl } = await import(\"./commands/traces/search.js\");\n await impl(options);\n });\n\ntraceCmd\n .command(\"export\")\n .description(\"Export traces as CSV, JSONL, or JSON\")\n .option(\"--start-date <date>\", \"Start date (ISO string, default: 7 days ago)\")\n .option(\"--end-date <date>\", \"End date (ISO string, default: now)\")\n .option(\"-q, --query <query>\", \"Text search query to filter traces\")\n .option(\"-f, --format <format>\", \"Output format: jsonl (default), csv, or json\", \"jsonl\")\n .option(\"-o, --output <file>\", \"Write output to file instead of stdout\")\n .option(\"--limit <n>\", \"Max traces to export (default: 1000)\")\n .action(async (options: { startDate?: string; endDate?: string; query?: string; format?: string; output?: string; limit?: string }) => {\n const { exportTracesCommand: impl } = await import(\"./commands/traces/export.js\");\n await impl(options);\n });\n\ntraceCmd\n .command(\"get <traceId>\")\n .description(\"Get full trace details by ID\")\n .option(\"-f, --format <format>\", \"Output format: digest (default, human-readable) or json\", \"digest\")\n .action(async (traceId: string, options: { format?: string }) => {\n const { getTraceCommand: impl } = await import(\"./commands/traces/get.js\");\n await impl(traceId, options);\n });\n\n// Add scenario command group\nconst scenarioCmd = program\n .command(\"scenario\")\n .description(\"Manage scenarios\");\n\nscenarioCmd\n .command(\"list\")\n .description(\"List all scenarios in the project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listScenariosCommand: impl } = await import(\"./commands/scenarios/list.js\");\n await impl(options);\n });\n\nscenarioCmd\n .command(\"get <id>\")\n .description(\"Get scenario details by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getScenarioCommand: impl } = await import(\"./commands/scenarios/get.js\");\n await impl(id, options);\n });\n\nscenarioCmd\n .command(\"create <name>\")\n .description(\"Create a new scenario\")\n .requiredOption(\"--situation <situation>\", \"The situation/context for the scenario\")\n .option(\"--criteria <criteria>\", \"Comma-separated list of evaluation criteria\")\n .option(\"--labels <labels>\", \"Comma-separated list of labels\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { situation: string; criteria?: string; labels?: string; format?: string }) => {\n const { createScenarioCommand: impl } = await import(\"./commands/scenarios/create.js\");\n await impl(name, options);\n });\n\nscenarioCmd\n .command(\"update <id>\")\n .description(\"Update an existing scenario\")\n .option(\"--name <name>\", \"New scenario name\")\n .option(\"--situation <situation>\", \"New situation/context\")\n .option(\"--criteria <criteria>\", \"New comma-separated list of criteria (replaces existing)\")\n .option(\"--labels <labels>\", \"New comma-separated list of labels (replaces existing)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { name?: string; situation?: string; criteria?: string; labels?: string; format?: string }) => {\n const { updateScenarioCommand: impl } = await import(\"./commands/scenarios/update.js\");\n await impl(id, options);\n });\n\nscenarioCmd\n .command(\"run <id>\")\n .description(\"Run a scenario against a target (agent or prompt)\")\n .requiredOption(\"--target <target>\", \"Target to run against, as <type>:<referenceId> (e.g., http:agent_abc123)\")\n .option(\"--wait\", \"Wait for the scenario run to complete\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { target: string; wait?: boolean; format?: string }) => {\n const { runScenarioCommand: impl } = await import(\"./commands/scenarios/run.js\");\n await impl(id, options);\n });\n\nscenarioCmd\n .command(\"delete <id>\")\n .description(\"Archive (soft-delete) a scenario\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteScenarioCommand: impl } = await import(\"./commands/scenarios/delete.js\");\n await impl(id, options);\n });\n\n// Add suite (run plan) command group\nconst suiteCmd = program\n .command(\"suite\")\n .description(\"Manage suites (run plans) — scenario × target execution plans\");\n\nsuiteCmd\n .command(\"list\")\n .description(\"List all suites in the project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listSuitesCommand: impl } = await import(\"./commands/suites/list.js\");\n await impl(options);\n });\n\nsuiteCmd\n .command(\"get <id>\")\n .description(\"Get suite details by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getSuiteCommand: impl } = await import(\"./commands/suites/get.js\");\n await impl(id, options);\n });\n\nsuiteCmd\n .command(\"create <name>\")\n .description(\"Create a new suite (run plan)\")\n .requiredOption(\"--scenarios <ids>\", \"Comma-separated scenario IDs\")\n .requiredOption(\"--targets <targets...>\", \"Targets as <type>:<referenceId> (e.g., http:agent_abc)\")\n .option(\"--repeat-count <n>\", \"Number of times to repeat each scenario-target pair\", \"1\")\n .option(\"--labels <labels>\", \"Comma-separated labels\")\n .option(\"--description <desc>\", \"Suite description\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { scenarios?: string; targets?: string[]; repeatCount?: string; labels?: string; description?: string; format?: string }) => {\n const { createSuiteCommand: impl } = await import(\"./commands/suites/create.js\");\n await impl(name, options);\n });\n\nsuiteCmd\n .command(\"update <id>\")\n .description(\"Update a suite (run plan)\")\n .option(\"--name <name>\", \"New suite name\")\n .option(\"--scenarios <ids>\", \"New comma-separated scenario IDs\")\n .option(\"--targets <targets...>\", \"New targets as <type>:<referenceId>\")\n .option(\"--repeat-count <n>\", \"New repeat count\")\n .option(\"--labels <labels>\", \"New comma-separated labels\")\n .option(\"--description <desc>\", \"New description\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { name?: string; scenarios?: string; targets?: string[]; repeatCount?: string; labels?: string; description?: string; format?: string }) => {\n const { updateSuiteCommand: impl } = await import(\"./commands/suites/update.js\");\n await impl(id, options);\n });\n\nsuiteCmd\n .command(\"duplicate <id>\")\n .description(\"Duplicate a suite\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { duplicateSuiteCommand: impl } = await import(\"./commands/suites/duplicate.js\");\n await impl(id, options);\n });\n\nsuiteCmd\n .command(\"run <id>\")\n .description(\"Execute a suite run — schedules all scenario × target × repeat jobs\")\n .option(\"--wait\", \"Wait for the suite run to complete before returning\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { wait?: boolean; format?: string }) => {\n const { runSuiteCommand: impl } = await import(\"./commands/suites/run.js\");\n await impl(id, options);\n });\n\nsuiteCmd\n .command(\"delete <id>\")\n .description(\"Archive (soft-delete) a suite\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteSuiteCommand: impl } = await import(\"./commands/suites/delete.js\");\n await impl(id, options);\n });\n\n// Add graph command group\nconst graphCmd = program\n .command(\"graph\")\n .description(\"Manage custom graphs on dashboards\");\n\ngraphCmd\n .command(\"list\")\n .description(\"List all custom graphs (optionally filter by dashboard)\")\n .option(\"--dashboard-id <id>\", \"Filter by dashboard ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { dashboardId?: string; format?: string }) => {\n const { listGraphsCommand: impl } = await import(\"./commands/graphs/list.js\");\n await impl(options);\n });\n\ngraphCmd\n .command(\"get <id>\")\n .description(\"Get a custom graph by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getGraphCommand: impl } = await import(\"./commands/graphs/get.js\");\n await impl(id, options);\n });\n\ngraphCmd\n .command(\"create <name>\")\n .description(\"Create a custom graph\")\n .option(\"--dashboard-id <id>\", \"Dashboard to add the graph to\")\n .option(\"--graph <json>\", \"Graph definition as JSON\")\n .option(\"--filters <json>\", \"Filter conditions as JSON\")\n .option(\"--col-span <n>\", \"Column span (1-2)\")\n .option(\"--row-span <n>\", \"Row span (1-2)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { dashboardId?: string; graph?: string; filters?: string; colSpan?: string; rowSpan?: string; format?: string }) => {\n const { createGraphCommand: impl } = await import(\"./commands/graphs/create.js\");\n await impl(name, options);\n });\n\ngraphCmd\n .command(\"update <id>\")\n .description(\"Update a custom graph\")\n .option(\"--name <name>\", \"New graph name\")\n .option(\"--graph <json>\", \"New graph definition as JSON\")\n .option(\"--filters <json>\", \"New filter conditions as JSON\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { name?: string; graph?: string; filters?: string; format?: string }) => {\n const { updateGraphCommand: impl } = await import(\"./commands/graphs/update.js\");\n await impl(id, options);\n });\n\ngraphCmd\n .command(\"delete <id>\")\n .description(\"Delete a custom graph\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteGraphCommand: impl } = await import(\"./commands/graphs/delete.js\");\n await impl(id, options);\n });\n\n// Add trigger (automation) command group\nconst triggerCmd = program\n .command(\"trigger\")\n .description(\"Manage triggers (automations) — alerts, webhooks, and dataset actions\");\n\ntriggerCmd\n .command(\"list\")\n .description(\"List all triggers in the project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listTriggersCommand: impl } = await import(\"./commands/triggers/list.js\");\n await impl(options);\n });\n\ntriggerCmd\n .command(\"get <id>\")\n .description(\"Get trigger details by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getTriggerCommand: impl } = await import(\"./commands/triggers/get.js\");\n await impl(id, options);\n });\n\ntriggerCmd\n .command(\"create <name>\")\n .description(\"Create a new trigger (automation)\")\n .requiredOption(\"--action <action>\", \"Trigger action: SEND_EMAIL, ADD_TO_DATASET, ADD_TO_ANNOTATION_QUEUE, SEND_SLACK_MESSAGE\")\n .option(\"--filters <json>\", \"Trigger filter conditions as JSON\")\n .option(\"--message <text>\", \"Custom alert message\")\n .option(\"--alert-type <type>\", \"Alert severity: CRITICAL, WARNING, INFO\")\n .option(\"--slack-webhook <url>\", \"Slack webhook URL (for SEND_SLACK_MESSAGE action)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { action: string; filters?: string; message?: string; alertType?: string; slackWebhook?: string; format?: string }) => {\n const { createTriggerCommand: impl } = await import(\"./commands/triggers/create.js\");\n await impl(name, options);\n });\n\ntriggerCmd\n .command(\"update <id>\")\n .description(\"Update a trigger\")\n .option(\"--name <name>\", \"New trigger name\")\n .option(\"--active <boolean>\", \"Enable or disable the trigger (true/false)\")\n .option(\"--message <text>\", \"New alert message\")\n .option(\"--alert-type <type>\", \"New alert severity\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { name?: string; active?: string; message?: string; alertType?: string; format?: string }) => {\n const { updateTriggerCommand: impl } = await import(\"./commands/triggers/update.js\");\n await impl(id, options);\n });\n\ntriggerCmd\n .command(\"delete <id>\")\n .description(\"Delete a trigger\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteTriggerCommand: impl } = await import(\"./commands/triggers/delete.js\");\n await impl(id, options);\n });\n\n// Add secret command group\nconst secretCmd = program\n .command(\"secret\")\n .description(\"Manage project secrets — encrypted environment variables for agents\");\n\nsecretCmd\n .command(\"list\")\n .description(\"List all secrets in the project (values are never shown)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listSecretsCommand: impl } = await import(\"./commands/secrets/list.js\");\n await impl(options);\n });\n\nsecretCmd\n .command(\"get <id>\")\n .description(\"Get secret metadata by ID (value is never shown)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getSecretCommand: impl } = await import(\"./commands/secrets/get.js\");\n await impl(id, options);\n });\n\nsecretCmd\n .command(\"create <name>\")\n .description(\"Create a new secret (name must be UPPER_SNAKE_CASE)\")\n .requiredOption(\"--value <value>\", \"The secret value (will be encrypted)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { value: string; format?: string }) => {\n const { createSecretCommand: impl } = await import(\"./commands/secrets/create.js\");\n await impl(name, options);\n });\n\nsecretCmd\n .command(\"update <id>\")\n .description(\"Update a secret's value\")\n .requiredOption(\"--value <value>\", \"The new secret value (will be encrypted)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { value: string; format?: string }) => {\n const { updateSecretCommand: impl } = await import(\"./commands/secrets/update.js\");\n await impl(id, options);\n });\n\nsecretCmd\n .command(\"delete <id>\")\n .description(\"Delete a secret\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteSecretCommand: impl } = await import(\"./commands/secrets/delete.js\");\n await impl(id, options);\n });\n\n// Add monitor (online evaluation) command group\nconst monitorCmd = program\n .command(\"monitor\")\n .description(\"Manage online evaluation monitors — evaluators running on incoming traces\");\n\nmonitorCmd\n .command(\"list\")\n .description(\"List all monitors in the project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listMonitorsCommand: impl } = await import(\"./commands/monitors/list.js\");\n await impl(options);\n });\n\nmonitorCmd\n .command(\"get <id>\")\n .description(\"Get monitor details by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getMonitorCommand: impl } = await import(\"./commands/monitors/get.js\");\n await impl(id, options);\n });\n\nmonitorCmd\n .command(\"create <name>\")\n .description(\"Create a new online evaluation monitor\")\n .requiredOption(\"--check-type <type>\", \"Evaluator check type (e.g. ragas/toxicity, custom/my-eval)\")\n .option(\"--execution-mode <mode>\", \"Execution mode: ON_MESSAGE (default), AS_GUARDRAIL, MANUALLY\", \"ON_MESSAGE\")\n .option(\"--sample <rate>\", \"Sampling rate 0.0-1.0 (default: 1.0)\")\n .option(\"--evaluator-id <id>\", \"Link to a saved evaluator\")\n .option(\"--level <level>\", \"Evaluation level: trace (default) or thread\")\n .option(\"--parameters <json>\", \"Evaluator settings as JSON\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { checkType: string; executionMode?: string; sample?: string; evaluatorId?: string; level?: string; parameters?: string; format?: string }) => {\n const { createMonitorCommand: impl } = await import(\"./commands/monitors/create.js\");\n await impl(name, options);\n });\n\nmonitorCmd\n .command(\"update <id>\")\n .description(\"Update a monitor\")\n .option(\"--name <name>\", \"New monitor name\")\n .option(\"--enabled <boolean>\", \"Enable or disable the monitor (true/false)\")\n .option(\"--execution-mode <mode>\", \"Execution mode: ON_MESSAGE, AS_GUARDRAIL, MANUALLY\")\n .option(\"--sample <rate>\", \"Sampling rate 0.0-1.0\")\n .option(\"--parameters <json>\", \"Updated evaluator settings as JSON\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { name?: string; enabled?: string; executionMode?: string; sample?: string; parameters?: string; format?: string }) => {\n const { updateMonitorCommand: impl } = await import(\"./commands/monitors/update.js\");\n await impl(id, options);\n });\n\nmonitorCmd\n .command(\"delete <id>\")\n .description(\"Delete a monitor\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteMonitorCommand: impl } = await import(\"./commands/monitors/delete.js\");\n await impl(id, options);\n });\n\n// Add simulation-run command group\nconst simulationRunCmd = program\n .command(\"simulation-run\")\n .description(\"View simulation run results\");\n\nsimulationRunCmd\n .command(\"list\")\n .description(\"List simulation runs (optionally filter by scenario set or batch)\")\n .option(\"--scenario-set-id <id>\", \"Filter by scenario set ID\")\n .option(\"--batch-run-id <id>\", \"Filter by batch run ID (requires --scenario-set-id)\")\n .option(\"--status <status>\", \"Filter by status (e.g. SUCCESS, FAILED, ERROR, IN_PROGRESS)\")\n .option(\"--name <substring>\", \"Filter by run name substring (case-insensitive)\")\n .option(\"--limit <n>\", \"Max results (default: 20)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { scenarioSetId?: string; batchRunId?: string; status?: string; name?: string; limit?: string; format?: string }) => {\n const { listSimulationRunsCommand: impl } = await import(\"./commands/simulation-runs/list.js\");\n await impl(options);\n });\n\nsimulationRunCmd\n .command(\"get <runId>\")\n .description(\"Get full details of a simulation run (messages, results, costs)\")\n .option(\"--full\", \"Show full message content instead of truncating long lines\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (runId: string, options: { format?: string; full?: boolean }) => {\n const { getSimulationRunCommand: impl } = await import(\"./commands/simulation-runs/get.js\");\n await impl(runId, options);\n });\n\n// Add dataset command group\nconst datasetCmd = program\n .command(\"dataset\")\n .description(\"Manage datasets\");\n\ndatasetCmd\n .command(\"list\")\n .description(\"List all datasets\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listCommand: listDatasetsImpl } = await import(\"./commands/dataset/list.js\");\n await listDatasetsImpl(options);\n });\n\ndatasetCmd\n .command(\"create <name>\")\n .description(\"Create a new dataset\")\n .option(\"-c, --columns <columns>\", \"Column definitions (e.g. input:string,output:string)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { columns?: string; format?: string }) => {\n const { createCommand: createDatasetImpl } = await import(\"./commands/dataset/create.js\");\n await createDatasetImpl(name, options);\n });\n\ndatasetCmd\n .command(\"get <slugOrId>\")\n .description(\"Get dataset details and preview records\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (slugOrId: string, options: { format?: string }) => {\n const { getCommand: getDatasetImpl } = await import(\"./commands/dataset/get.js\");\n await getDatasetImpl(slugOrId, options);\n });\n\ndatasetCmd\n .command(\"delete <slugOrId>\")\n .description(\"Delete (archive) a dataset\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (slugOrId: string, options: { format?: string }) => {\n const { deleteCommand: deleteDatasetImpl } = await import(\"./commands/dataset/delete.js\");\n await deleteDatasetImpl(slugOrId, options);\n });\n\ndatasetCmd\n .command(\"upload <slug> <file>\")\n .description(\"Upload a file to a dataset (creates if not found)\")\n .option(\"--if-exists <strategy>\", \"Strategy when dataset exists: append (default), replace, error\")\n .action(async (slug: string, file: string, options: { ifExists?: string }) => {\n const { uploadCommand: uploadDatasetImpl } = await import(\"./commands/dataset/upload.js\");\n await uploadDatasetImpl(slug, file, options);\n });\n\ndatasetCmd\n .command(\"download <slugOrId>\")\n .description(\"Download dataset records as CSV or JSONL\")\n .option(\"-f, --format <format>\", \"Output format: csv or jsonl\", \"csv\")\n .action(async (slugOrId: string, options: { format?: string }) => {\n const { downloadCommand: downloadDatasetImpl } = await import(\"./commands/dataset/download.js\");\n await downloadDatasetImpl(slugOrId, options);\n });\n\ndatasetCmd\n .command(\"update <slugOrId>\")\n .description(\"Update a dataset name or columns\")\n .option(\"--name <name>\", \"New dataset name\")\n .option(\"--columns <columns>\", \"New column definitions (e.g. input:string,output:string)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (slugOrId: string, options: { name?: string; columns?: string; format?: string }) => {\n const { updateCommand: updateDatasetImpl } = await import(\"./commands/dataset/update.js\");\n await updateDatasetImpl(slugOrId, options);\n });\n\n// Records subcommand group\nconst recordsCmd = datasetCmd\n .command(\"records\")\n .description(\"Manage dataset records\");\n\nrecordsCmd\n .command(\"list <slugOrId>\")\n .description(\"List records in a dataset\")\n .option(\"--page <n>\", \"Page number (default: 1)\")\n .option(\"--limit <n>\", \"Records per page (default: 20)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (slugOrId: string, options: { page?: string; limit?: string; format?: string }) => {\n const { recordsListCommand } = await import(\"./commands/dataset/records-list.js\");\n await recordsListCommand(slugOrId, options);\n });\n\nrecordsCmd\n .command(\"add <slugOrId>\")\n .description(\"Add records to a dataset\")\n .option(\"--json <json>\", \"JSON array of records (inline)\")\n .option(\"--file <path>\", \"Read JSON array of records from a file\")\n .option(\"--stdin\", \"Read JSON array from stdin\")\n .action(async (slugOrId: string, options: { json?: string; file?: string; stdin?: boolean }) => {\n const { recordsAddCommand } = await import(\"./commands/dataset/records-add.js\");\n await recordsAddCommand(slugOrId, options);\n });\n\nrecordsCmd\n .command(\"update <slugOrId> <recordId>\")\n .description(\"Update a single record in a dataset\")\n .requiredOption(\"--json <json>\", \"JSON object with updated fields\")\n .action(async (slugOrId: string, recordId: string, options: { json: string }) => {\n const { recordsUpdateCommand } = await import(\"./commands/dataset/records-update.js\");\n await recordsUpdateCommand(slugOrId, recordId, options);\n });\n\nrecordsCmd\n .command(\"delete <slugOrId> <recordIds...>\")\n .description(\"Delete records from a dataset\")\n .action(async (slugOrId: string, recordIds: string[]) => {\n const { recordsDeleteCommand } = await import(\"./commands/dataset/records-delete.js\");\n await recordsDeleteCommand(slugOrId, recordIds);\n });\nprogram.parse(process.argv);"]}
1
+ {"version":3,"sources":["/home/runner/work/langwatch/langwatch/typescript-sdk/dist/cli/index.js","../../src/cli/index.ts"],"names":[],"mappings":"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","file":"/home/runner/work/langwatch/langwatch/typescript-sdk/dist/cli/index.js","sourcesContent":[null,"#!/usr/bin/env node\n\n// Load environment variables BEFORE any other imports\nimport { config } from \"dotenv\";\nconfig();\n\nimport { Command } from \"commander\";\nimport { parsePromptSpec } from \"./types\";\nimport { formatApiErrorMessage } from \"../client-sdk/services/_shared/format-api-error\";\n\ndeclare const __CLI_VERSION__: string;\n\n// Import commands with proper async handling\nconst addCommand = async (name: string, options: { version?: string; localFile?: string }): Promise<void> => {\n const { addCommand: addCommandImpl } = await import(\"./commands/add.js\");\n return addCommandImpl(name, options);\n};\n\nconst removeCommand = async (name: string): Promise<void> => {\n const { removeCommand: removeCommandImpl } = await import(\"./commands/remove.js\");\n return removeCommandImpl(name);\n};\n\nconst initCommand = async (): Promise<void> => {\n const { initCommand: initCommandImpl } = await import(\"./commands/init.js\");\n return initCommandImpl();\n};\n\nconst loginCommand = async (options?: { apiKey?: string }): Promise<void> => {\n const { loginCommand: loginCommandImpl } = await import(\"./commands/login.js\");\n return loginCommandImpl(options);\n};\n\nconst listCommand = async (options?: { format?: string }): Promise<void> => {\n const { listCommand: listCommandImpl } = await import(\"./commands/list.js\");\n return listCommandImpl(options);\n};\n\nconst syncCommand = async (): Promise<void> => {\n const { syncCommand: syncCommandImpl } = await import(\"./commands/sync.js\");\n return syncCommandImpl();\n};\n\nconst pullCommand = async (options?: { tag?: string }): Promise<void> => {\n const { pullCommand: pullCommandImpl } = await import(\"./commands/pull.js\");\n return pullCommandImpl(options);\n};\n\n// Tag commands\nconst tagListCommand = async (options?: { format?: string }): Promise<void> => {\n const { tagListCommand: impl } = await import(\"./commands/tag/list.js\");\n return impl(options);\n};\n\nconst tagCreateCommand = async (name: string): Promise<void> => {\n const { tagCreateCommand: impl } = await import(\"./commands/tag/create.js\");\n return impl(name);\n};\n\nconst tagRenameCommand = async (oldName: string, newName: string): Promise<void> => {\n const { tagRenameCommand: impl } = await import(\"./commands/tag/rename.js\");\n return impl(oldName, newName);\n};\n\nconst tagAssignCommand = async (promptHandle: string, tagName: string, options?: { version?: string }): Promise<void> => {\n const { tagAssignCommand: impl } = await import(\"./commands/tag/assign.js\");\n return impl(promptHandle, tagName, options);\n};\n\nconst tagDeleteCommand = async (tagName: string, options?: { force?: boolean }): Promise<void> => {\n const { tagDeleteCommand: impl } = await import(\"./commands/tag/delete.js\");\n return impl(tagName, options);\n};\n\nconst pushCommand = async (options?: { forceLocal?: boolean; forceRemote?: boolean }): Promise<void> => {\n const { pushCommand: pushCommandImpl } = await import(\"./commands/push.js\");\n return pushCommandImpl(options);\n};\n\nconst createCommand = async (name: string, options: Record<string, unknown>): Promise<void> => {\n const { createCommand: createCommandImpl } = await import(\"./commands/create.js\");\n return createCommandImpl(name, options);\n};\n\n// Evaluator commands\nconst listEvaluatorsCommand = async (options?: { format?: string }): Promise<void> => {\n const { listEvaluatorsCommand: impl } = await import(\"./commands/evaluators/list.js\");\n return impl(options);\n};\n\nconst getEvaluatorCommand = async (idOrSlug: string, options?: { format?: string }): Promise<void> => {\n const { getEvaluatorCommand: impl } = await import(\"./commands/evaluators/get.js\");\n return impl(idOrSlug, options);\n};\n\nconst createEvaluatorCommand = async (name: string, options: { type: string; format?: string }): Promise<void> => {\n const { createEvaluatorCommand: impl } = await import(\"./commands/evaluators/create.js\");\n return impl(name, options);\n};\n\nconst updateEvaluatorCommand = async (idOrSlug: string, options: { name?: string; settings?: string; format?: string }): Promise<void> => {\n const { updateEvaluatorCommand: impl } = await import(\"./commands/evaluators/update.js\");\n return impl(idOrSlug, options);\n};\n\nconst deleteEvaluatorCommand = async (idOrSlug: string, options?: { format?: string }): Promise<void> => {\n const { deleteEvaluatorCommand: impl } = await import(\"./commands/evaluators/delete.js\");\n return impl(idOrSlug, options);\n};\n\nconst program = new Command();\n\nprogram\n .name(\"langwatch\")\n .description(\"LangWatch CLI - Manage prompts, datasets, evaluators, scenarios, suites, and more\")\n .version(__CLI_VERSION__, \"-v, --version\", \"Display the current version\")\n .enablePositionalOptions()\n .passThroughOptions()\n .configureHelp({\n showGlobalOptions: true,\n })\n .showHelpAfterError()\n .showSuggestionAfterError();\n\n// Top-level commands\nprogram\n .command(\"login\")\n .description(\"Login to LangWatch and save API key. Get a key from https://app.langwatch.ai/authorize (or ${LANGWATCH_ENDPOINT}/authorize for self-hosted).\")\n .option(\"--api-key <key>\", \"Set API key non-interactively (for CI/CD and agents)\")\n .action(async (options: { apiKey?: string }) => {\n try {\n await loginCommand(options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\n// Add prompt command group\nconst promptCmd = program\n .command(\"prompt\")\n .description(\"Manage prompt dependencies\");\n\npromptCmd\n .command(\"init\")\n .description(\"Initialize a new prompts project\")\n .action(async () => {\n try {\n await initCommand();\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"create <name>\")\n .description(\"Create a new prompt YAML file with default content\")\n .action(async (name: string) => {\n try {\n await createCommand(name, {});\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"add <spec> [localFile]\")\n .description(\"Add a prompt dependency (e.g., 'agent/foo', 'agent/bar@5') or local file\")\n .action(async (spec: string, localFile?: string) => {\n try {\n if (localFile) {\n await addCommand(spec, { localFile });\n } else {\n const { name, version } = parsePromptSpec(spec);\n await addCommand(name, { version });\n }\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"remove <name>\")\n .description(\"Remove a prompt dependency\")\n .action(async (name: string) => {\n try {\n await removeCommand(name);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"list\")\n .description(\"List all available prompts on the server\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n try {\n await listCommand(options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"sync\")\n .description(\"Sync prompts - fetch remote and push local\")\n .action(async () => {\n try {\n await syncCommand();\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"pull\")\n .description(\"Pull remote prompts and materialize locally\")\n .option(\"--tag <name>\", \"Pull the version pointed to by this tag instead of the configured version\")\n .action(async (options: { tag?: string }) => {\n try {\n await pullCommand(options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"push\")\n .description(\"Push local prompts to the server\")\n .option(\"--force-local\", \"Auto-resolve conflicts by keeping local version\")\n .option(\"--force-remote\", \"Auto-resolve conflicts by keeping remote version\")\n .action(async (options: { forceLocal?: boolean; forceRemote?: boolean }) => {\n try {\n await pushCommand({ forceLocal: options.forceLocal, forceRemote: options.forceRemote });\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\npromptCmd\n .command(\"versions <handle>\")\n .description(\"List all versions of a prompt\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (handle: string, options: { format?: string }) => {\n const { promptVersionsCommand: impl } = await import(\"./commands/prompt/versions.js\");\n await impl(handle, options);\n });\n\npromptCmd\n .command(\"restore <handle> <versionId>\")\n .description(\"Restore a prompt to a previous version (creates a new version with that config)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (handle: string, versionId: string, options: { format?: string }) => {\n const { promptRestoreCommand: impl } = await import(\"./commands/prompt/restore.js\");\n await impl(handle, versionId, options);\n });\n\n// Add prompt tag subcommand group\nconst tagCmd = promptCmd\n .command(\"tag\")\n .description(\"Manage prompt tags\");\n\ntagCmd\n .command(\"list\")\n .description(\"List all tag definitions for the organization\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n try {\n await tagListCommand(options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\ntagCmd\n .command(\"create <name>\")\n .description(\"Create a custom tag\")\n .action(async (name: string) => {\n try {\n await tagCreateCommand(name);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\ntagCmd\n .command(\"rename <oldName> <newName>\")\n .description(\"Rename a tag\")\n .action(async (oldName: string, newName: string) => {\n try {\n await tagRenameCommand(oldName, newName);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\ntagCmd\n .command(\"assign <prompt> <tag>\")\n .description(\"Assign a tag to a prompt version\")\n .option(\"--version <number>\", \"Version number to assign (defaults to latest)\")\n .action(async (prompt: string, tag: string, options: { version?: string }) => {\n try {\n await tagAssignCommand(prompt, tag, options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\ntagCmd\n .command(\"delete <name>\")\n .description(\"Delete a tag and remove all its assignments\")\n .option(\"--force\", \"Skip confirmation prompt\")\n .action(async (name: string, options: { force?: boolean }) => {\n try {\n await tagDeleteCommand(name, options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\n// Status command - project overview\nprogram\n .command(\"status\")\n .description(\"Show project resource counts and available commands\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { statusCommand: impl } = await import(\"./commands/status.js\");\n await impl(options);\n });\n\n// Docs commands - fetch markdown documentation for LangWatch and Scenario\nprogram\n .command(\"docs [url]\")\n .description(\n \"Fetch LangWatch documentation as markdown. Pass no argument for the index (llms.txt), a path like 'integration/python/guide', or a full URL. Missing extensions default to .md.\",\n )\n .action(async (url?: string) => {\n try {\n const { docsCommand: impl } = await import(\"./commands/docs.js\");\n await impl(url);\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\nprogram\n .command(\"scenario-docs [url]\")\n .description(\n \"Fetch LangWatch Scenario documentation as markdown. Pass no argument for the index, a path like 'advanced/red-teaming', or a full URL. Missing extensions default to .md.\",\n )\n .action(async (url?: string) => {\n try {\n const { scenarioDocsCommand: impl } = await import(\"./commands/docs.js\");\n await impl(url);\n } catch (error) {\n console.error(`Error: ${error instanceof Error ? error.message : \"Unknown error\"}`);\n process.exit(1);\n }\n });\n\n// Add evaluator command group\nconst evaluatorCmd = program\n .command(\"evaluator\")\n .description(\"Manage evaluator definitions\");\n\nevaluatorCmd\n .command(\"list\")\n .description(\"List all evaluators in the project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n try {\n await listEvaluatorsCommand(options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\nevaluatorCmd\n .command(\"get <idOrSlug>\")\n .description(\"Get evaluator details by ID or slug\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (idOrSlug: string, options: { format?: string }) => {\n try {\n await getEvaluatorCommand(idOrSlug, options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\nevaluatorCmd\n .command(\"create <name>\")\n .description(\"Create a new evaluator\")\n .requiredOption(\"--type <evaluatorType>\", \"Evaluator type (e.g. langevals/llm_judge)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { type: string; format?: string }) => {\n try {\n await createEvaluatorCommand(name, options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\nevaluatorCmd\n .command(\"update <idOrSlug>\")\n .description(\"Update an evaluator name or settings\")\n .option(\"--name <name>\", \"New evaluator name\")\n .option(\"--settings <json>\", \"Evaluator config settings as JSON\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (idOrSlug: string, options: { name?: string; settings?: string; format?: string }) => {\n try {\n await updateEvaluatorCommand(idOrSlug, options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\nevaluatorCmd\n .command(\"delete <idOrSlug>\")\n .description(\"Archive (soft-delete) an evaluator\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (idOrSlug: string, options: { format?: string }) => {\n try {\n await deleteEvaluatorCommand(idOrSlug, options);\n } catch (error) {\n console.error(`Error: ${formatApiErrorMessage({ error })}`);\n process.exit(1);\n }\n });\n\n// Add evaluation command group\nconst evaluationCmd = program\n .command(\"evaluation\")\n .description(\"Run and monitor evaluations\");\n\nevaluationCmd\n .command(\"run <slug>\")\n .description(\"Start an evaluation run by slug\")\n .option(\"--wait\", \"Wait for the evaluation to complete before returning\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (slug: string, options: { wait?: boolean; format?: string }) => {\n const { runEvaluationCommand: impl } = await import(\"./commands/evaluation/run.js\");\n await impl(slug, options);\n });\n\nevaluationCmd\n .command(\"status <runId>\")\n .description(\"Check the status of an evaluation run\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (runId: string, options: { format?: string }) => {\n const { evaluationStatusCommand: impl } = await import(\"./commands/evaluation/status.js\");\n await impl(runId, options);\n });\n\n// Add workflow command group\nconst workflowCmd = program\n .command(\"workflow\")\n .description(\"Manage workflows\");\n\nworkflowCmd\n .command(\"list\")\n .description(\"List all workflows in the project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listWorkflowsCommand: impl } = await import(\"./commands/workflows/list.js\");\n await impl(options);\n });\n\nworkflowCmd\n .command(\"get <id>\")\n .description(\"Get workflow details by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getWorkflowCommand: impl } = await import(\"./commands/workflows/get.js\");\n await impl(id, options);\n });\n\nworkflowCmd\n .command(\"update <id>\")\n .description(\"Update a workflow's metadata (name, icon, description)\")\n .option(\"--name <name>\", \"New workflow name\")\n .option(\"--icon <icon>\", \"New workflow icon\")\n .option(\"--description <desc>\", \"New workflow description\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { name?: string; icon?: string; description?: string; format?: string }) => {\n const { updateWorkflowCommand: impl } = await import(\"./commands/workflows/update.js\");\n await impl(id, options);\n });\n\nworkflowCmd\n .command(\"run <id>\")\n .description(\"Execute a workflow with JSON input\")\n .option(\"--input <json>\", \"Input data as JSON string\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { input?: string; format?: string }) => {\n const { runWorkflowCommand: impl } = await import(\"./commands/workflows/run.js\");\n await impl(id, options);\n });\n\nworkflowCmd\n .command(\"delete <id>\")\n .description(\"Archive (soft-delete) a workflow\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteWorkflowCommand: impl } = await import(\"./commands/workflows/delete.js\");\n await impl(id, options);\n });\n\n// Add agent command group\nconst agentCmd = program\n .command(\"agent\")\n .description(\"Manage agent definitions\");\n\nagentCmd\n .command(\"list\")\n .description(\"List all agents in the project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listAgentsCommand: impl } = await import(\"./commands/agents/list.js\");\n await impl(options);\n });\n\nagentCmd\n .command(\"get <id>\")\n .description(\"Get agent details by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getAgentCommand: impl } = await import(\"./commands/agents/get.js\");\n await impl(id, options);\n });\n\nagentCmd\n .command(\"create <name>\")\n .description(\"Create a new agent\")\n .requiredOption(\"--type <type>\", \"Agent type: signature, code, workflow, or http\")\n .option(\"--config <json>\", \"Agent config as JSON\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { type: string; config?: string; format?: string }) => {\n const { createAgentCommand: impl } = await import(\"./commands/agents/create.js\");\n await impl(name, options);\n });\n\nagentCmd\n .command(\"run <id>\")\n .description(\"Execute an agent with JSON input (HTTP agents call URL directly, others use workflow engine)\")\n .option(\"--input <json>\", \"Input data as JSON string\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { input?: string; format?: string }) => {\n const { runAgentCommand: impl } = await import(\"./commands/agents/run.js\");\n await impl(id, options);\n });\n\nagentCmd\n .command(\"update <id>\")\n .description(\"Update an agent name, type, or configuration\")\n .option(\"--name <name>\", \"New agent name\")\n .option(\"--type <type>\", \"New agent type: signature, code, workflow, or http\")\n .option(\"--config <json>\", \"Updated configuration as JSON\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { name?: string; type?: string; config?: string; format?: string }) => {\n const { updateAgentCommand: impl } = await import(\"./commands/agents/update.js\");\n await impl(id, options);\n });\n\nagentCmd\n .command(\"delete <id>\")\n .description(\"Archive (soft-delete) an agent\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteAgentCommand: impl } = await import(\"./commands/agents/delete.js\");\n await impl(id, options);\n });\n\n// Add dashboard command group\nconst dashboardCmd = program\n .command(\"dashboard\")\n .description(\"Manage analytics dashboards\");\n\ndashboardCmd\n .command(\"list\")\n .description(\"List all dashboards in the project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listDashboardsCommand: impl } = await import(\"./commands/dashboards/list.js\");\n await impl(options);\n });\n\ndashboardCmd\n .command(\"get <id>\")\n .description(\"Get dashboard details by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getDashboardCommand: impl } = await import(\"./commands/dashboards/get.js\");\n await impl(id, options);\n });\n\ndashboardCmd\n .command(\"update <id>\")\n .description(\"Rename a dashboard\")\n .requiredOption(\"--name <name>\", \"New dashboard name\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { name?: string; format?: string }) => {\n const { updateDashboardCommand: impl } = await import(\"./commands/dashboards/update.js\");\n await impl(id, options);\n });\n\ndashboardCmd\n .command(\"create <name>\")\n .description(\"Create a new dashboard\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { format?: string }) => {\n const { createDashboardCommand: impl } = await import(\"./commands/dashboards/create.js\");\n await impl(name, options);\n });\n\ndashboardCmd\n .command(\"delete <id>\")\n .description(\"Delete a dashboard and its graphs\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteDashboardCommand: impl } = await import(\"./commands/dashboards/delete.js\");\n await impl(id, options);\n });\n\n// Add model-provider command group\nconst modelProviderCmd = program\n .command(\"model-provider\")\n .description(\"Manage LLM model provider configurations\");\n\nmodelProviderCmd\n .command(\"list\")\n .description(\"List all configured model providers\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listModelProvidersCommand: impl } = await import(\"./commands/model-providers/list.js\");\n await impl(options);\n });\n\nmodelProviderCmd\n .command(\"set <provider>\")\n .description(\"Configure a model provider (e.g. openai, anthropic)\")\n .option(\"--enabled <boolean>\", \"Enable or disable the provider\", (v) => v === \"true\")\n .option(\"--api-key <key>\", \"API key for the provider\")\n .option(\"--default-model <model>\", \"Default model to use (e.g. gpt-4o)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (provider: string, options: { enabled?: boolean; apiKey?: string; defaultModel?: string; format?: string }) => {\n const { setModelProviderCommand: impl } = await import(\"./commands/model-providers/set.js\");\n await impl(provider, options);\n });\n\n// Add virtual-keys command group (AI Gateway)\nconst virtualKeysCmd = program\n .command(\"virtual-keys\")\n .alias(\"vk\")\n .description(\"Manage AI Gateway virtual keys (list, create, rotate, revoke)\");\n\nvirtualKeysCmd\n .command(\"list\")\n .description(\"List all virtual keys for the current project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listVirtualKeysCommand: impl } = await import(\"./commands/virtual-keys/list.js\");\n await impl(options);\n });\n\nvirtualKeysCmd\n .command(\"get <id>\")\n .description(\"Show details for a single virtual key\")\n .option(\"-f, --format <format>\", \"Output format: text (default) or json\", \"text\")\n .action(async (id: string, options: { format?: string }) => {\n const { getVirtualKeyCommand: impl } = await import(\"./commands/virtual-keys/get.js\");\n await impl(id, options);\n });\n\nvirtualKeysCmd\n .command(\"create\")\n .description(\"Create a new virtual key (secret is shown once)\")\n .requiredOption(\"--name <name>\", \"Human-readable name for the key\")\n .option(\"--description <desc>\", \"Optional description\")\n .option(\"--env <env>\", \"Environment: live or test\", \"live\")\n .option(\"--provider <id...>\", \"Provider credential id(s) to bind (repeatable)\")\n .option(\"--principal <userId>\", \"Bind to a specific principal user id\")\n .option(\"-f, --format <format>\", \"Output format: text (default) or json\", \"text\")\n .action(async (options: { name: string; description?: string; env?: \"live\" | \"test\"; provider?: string[]; principal?: string; format?: string }) => {\n const { createVirtualKeyCommand: impl } = await import(\"./commands/virtual-keys/create.js\");\n await impl(options);\n });\n\nvirtualKeysCmd\n .command(\"update <id>\")\n .description(\"Update a virtual key's name/description/providers/config (requires VK edit drawer-level changes)\")\n .option(\"--name <name>\", \"New display name\")\n .option(\"--description <desc>\", \"New description\")\n .option(\"--clear-description\", \"Clear the description\")\n .option(\"--provider <id...>\", \"Replace the bound provider credential ids (repeatable; supplies the full set)\")\n .option(\"--config-json <json>\", \"Inline partial config JSON (model_aliases/cache/fallback/rate_limits/policy_rules). Merges with existing config\")\n .option(\"--config-file <path>\", \"Read partial config JSON from a file\")\n .option(\"-f, --format <format>\", \"Output format: text (default) or json\", \"text\")\n .action(async (id: string, options: {\n name?: string;\n description?: string;\n clearDescription?: boolean;\n provider?: string[];\n configJson?: string;\n configFile?: string;\n format?: string;\n }) => {\n const { updateVirtualKeyCommand: impl } = await import(\"./commands/virtual-keys/update.js\");\n await impl(id, options);\n });\n\nvirtualKeysCmd\n .command(\"rotate <id>\")\n .description(\"Rotate a virtual key's secret (old secret stops working immediately)\")\n .option(\"-f, --format <format>\", \"Output format: text (default) or json\", \"text\")\n .action(async (id: string, options: { format?: string }) => {\n const { rotateVirtualKeyCommand: impl } = await import(\"./commands/virtual-keys/rotate.js\");\n await impl(id, options);\n });\n\nvirtualKeysCmd\n .command(\"revoke <id>\")\n .description(\"Revoke a virtual key (cannot be reactivated)\")\n .option(\"-f, --format <format>\", \"Output format: text (default) or json\", \"text\")\n .action(async (id: string, options: { format?: string }) => {\n const { revokeVirtualKeyCommand: impl } = await import(\"./commands/virtual-keys/revoke.js\");\n await impl(id, options);\n });\n\n// Add gateway-budgets command group (AI Gateway)\nconst gatewayBudgetsCmd = program\n .command(\"gateway-budgets\")\n .description(\"Manage AI Gateway spend budgets (hierarchical scopes)\");\n\ngatewayBudgetsCmd\n .command(\"list\")\n .description(\"List all budgets across scopes\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listGatewayBudgetsCommand: impl } = await import(\"./commands/gateway-budgets/list.js\");\n await impl(options);\n });\n\ngatewayBudgetsCmd\n .command(\"create\")\n .description(\"Create a new budget (scope + window + limit)\")\n .requiredOption(\"--name <name>\", \"Human-readable budget name\")\n .option(\"--description <desc>\", \"Optional description\")\n .requiredOption(\"--scope <kind>\", \"Budget scope: organization|team|project|virtual-key|principal\")\n .option(\"--organization <id>\", \"Organization id (for scope=organization)\")\n .option(\"--team <id>\", \"Team id (for scope=team)\")\n .option(\"--project <id>\", \"Project id (for scope=project)\")\n .option(\"--virtual-key <id>\", \"Virtual key id (for scope=virtual-key)\")\n .option(\"--principal <id>\", \"Principal user id (for scope=principal)\")\n .requiredOption(\"--window <w>\", \"Budget window: minute|hour|day|week|month|total\")\n .requiredOption(\"--limit <usd>\", \"Hard cap in USD (e.g. 100 or 49.99)\")\n .option(\"--on-breach <action>\", \"block (default) or warn\", \"block\")\n .option(\"--timezone <tz>\", \"IANA timezone for window boundaries (e.g. Europe/Amsterdam)\")\n .option(\"-f, --format <format>\", \"Output format: text (default) or json\", \"text\")\n .action(async (options: {\n name: string;\n description?: string;\n scope: \"organization\" | \"team\" | \"project\" | \"virtual-key\" | \"principal\";\n organization?: string;\n team?: string;\n project?: string;\n virtualKey?: string;\n principal?: string;\n window: string;\n limit: string;\n onBreach?: \"block\" | \"warn\";\n timezone?: string;\n format?: string;\n }) => {\n const { createGatewayBudgetCommand: impl } = await import(\"./commands/gateway-budgets/create.js\");\n await impl(options);\n });\n\ngatewayBudgetsCmd\n .command(\"update <id>\")\n .description(\"Update a budget's name/description/limit/on-breach/timezone\")\n .option(\"--name <name>\", \"New display name\")\n .option(\"--description <desc>\", \"New description\")\n .option(\"--clear-description\", \"Clear the description\")\n .option(\"--limit <usd>\", \"New hard-cap in USD\")\n .option(\"--on-breach <action>\", \"block or warn\")\n .option(\"--timezone <tz>\", \"New IANA timezone\")\n .option(\"--clear-timezone\", \"Clear the timezone override\")\n .option(\"-f, --format <format>\", \"Output format: text (default) or json\", \"text\")\n .action(async (id: string, options: {\n name?: string;\n description?: string;\n clearDescription?: boolean;\n limit?: string;\n onBreach?: \"block\" | \"warn\";\n timezone?: string;\n clearTimezone?: boolean;\n format?: string;\n }) => {\n const { updateGatewayBudgetCommand: impl } = await import(\"./commands/gateway-budgets/update.js\");\n await impl(id, options);\n });\n\ngatewayBudgetsCmd\n .command(\"archive <id>\")\n .description(\"Archive a budget (stops enforcement; does not delete history)\")\n .option(\"-f, --format <format>\", \"Output format: text (default) or json\", \"text\")\n .action(async (id: string, options: { format?: string }) => {\n const { archiveGatewayBudgetCommand: impl } = await import(\"./commands/gateway-budgets/archive.js\");\n await impl(id, options);\n });\n\n// Add gateway-providers command group (AI Gateway)\nconst gatewayProvidersCmd = program\n .command(\"gateway-providers\")\n .description(\"Manage AI Gateway provider credential bindings\");\n\ngatewayProvidersCmd\n .command(\"list\")\n .description(\"List provider bindings attached to the current project's gateway\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listGatewayProvidersCommand: impl } = await import(\"./commands/gateway-providers/list.js\");\n await impl(options);\n });\n\ngatewayProvidersCmd\n .command(\"create\")\n .description(\"Bind an existing model-provider to the gateway with optional rate limits\")\n .requiredOption(\"--model-provider <id>\", \"Existing model-provider id to bind\")\n .option(\"--slot <slot>\", \"Optional free-text slot tag (e.g. 'primary', 'eu-region')\")\n .option(\"--rate-limit-rpm <rpm>\", \"Requests per minute\")\n .option(\"--rate-limit-tpm <tpm>\", \"Tokens per minute\")\n .option(\"--rate-limit-rpd <rpd>\", \"Requests per day\")\n .option(\"--rotation-policy <p>\", \"auto|manual|external_secret_store\")\n .option(\"--fallback-priority <n>\", \"Global fallback priority (lower = earlier)\")\n .option(\"-f, --format <format>\", \"Output format: text (default) or json\", \"text\")\n .action(async (options: {\n modelProvider: string;\n slot?: string;\n rateLimitRpm?: string;\n rateLimitTpm?: string;\n rateLimitRpd?: string;\n rotationPolicy?: \"auto\" | \"manual\" | \"external_secret_store\";\n fallbackPriority?: string;\n format?: string;\n }) => {\n const { createGatewayProviderCommand: impl } = await import(\"./commands/gateway-providers/create.js\");\n await impl(options);\n });\n\ngatewayProvidersCmd\n .command(\"disable <id>\")\n .description(\"Disable a provider binding (stops routing traffic to it)\")\n .option(\"-f, --format <format>\", \"Output format: text (default) or json\", \"text\")\n .action(async (id: string, options: { format?: string }) => {\n const { disableGatewayProviderCommand: impl } = await import(\"./commands/gateway-providers/disable.js\");\n await impl(id, options);\n });\n\n// Add annotation command group\nconst annotationCmd = program\n .command(\"annotation\")\n .description(\"Manage trace annotations\");\n\nannotationCmd\n .command(\"list\")\n .description(\"List all annotations (optionally filtered by trace)\")\n .option(\"--trace-id <traceId>\", \"Filter by trace ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { traceId?: string; format?: string }) => {\n const { listAnnotationsCommand: impl } = await import(\"./commands/annotations/list.js\");\n await impl(options);\n });\n\nannotationCmd\n .command(\"get <id>\")\n .description(\"Get annotation details by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getAnnotationCommand: impl } = await import(\"./commands/annotations/get.js\");\n await impl(id, options);\n });\n\nannotationCmd\n .command(\"create <traceId>\")\n .description(\"Create an annotation for a trace\")\n .option(\"--comment <comment>\", \"Annotation comment\")\n .option(\"--thumbs-up\", \"Mark as thumbs up\")\n .option(\"--thumbs-down\", \"Mark as thumbs down\")\n .option(\"--email <email>\", \"Email of the annotator\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (traceId: string, options: { comment?: string; thumbsUp?: boolean; thumbsDown?: boolean; email?: string; format?: string }) => {\n const { createAnnotationCommand: impl } = await import(\"./commands/annotations/create.js\");\n await impl(traceId, options);\n });\n\nannotationCmd\n .command(\"delete <id>\")\n .description(\"Delete an annotation\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteAnnotationCommand: impl } = await import(\"./commands/annotations/delete.js\");\n await impl(id, options);\n });\n\n// Add analytics command group\nconst analyticsCmd = program\n .command(\"analytics\")\n .description(\"Query analytics and metrics\");\n\nanalyticsCmd\n .command(\"query\")\n .description(\"Query timeseries analytics (costs, latency, token usage, etc.)\")\n .option(\"-m, --metric <metric>\", \"Metric to query (preset name or raw metric path, default: trace-count)\")\n .option(\"-a, --aggregation <aggregation>\", \"Aggregation type: cardinality, avg, sum, min, max, p95, p99\")\n .option(\"--start-date <date>\", \"Start date (ISO string, default: 7 days ago)\")\n .option(\"--end-date <date>\", \"End date (ISO string, default: now)\")\n .option(\"--group-by <field>\", \"Group by field (e.g. metadata.model)\")\n .option(\"--time-scale <scale>\", \"Time scale: 'full' for aggregate, or interval in seconds\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { metric?: string; aggregation?: string; startDate?: string; endDate?: string; groupBy?: string; timeScale?: string; format?: string }) => {\n const { queryAnalyticsCommand: impl } = await import(\"./commands/analytics/query.js\");\n await impl(options);\n });\n\n// Add trace command group\nconst traceCmd = program\n .command(\"trace\")\n .description(\"Search and inspect traces\");\n\ntraceCmd\n .command(\"search\")\n .description(\"Search traces with optional text query and date range\")\n .option(\"-q, --query <query>\", \"Text search query\")\n .option(\"--start-date <date>\", \"Start date (ISO string or epoch ms, default: 24h ago)\")\n .option(\"--end-date <date>\", \"End date (ISO string or epoch ms, default: now)\")\n .option(\"--limit <n>\", \"Max results to return (default: 25)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { query?: string; startDate?: string; endDate?: string; limit?: string; format?: string }) => {\n const { searchTracesCommand: impl } = await import(\"./commands/traces/search.js\");\n await impl(options);\n });\n\ntraceCmd\n .command(\"export\")\n .description(\"Export traces as CSV, JSONL, or JSON\")\n .option(\"--start-date <date>\", \"Start date (ISO string, default: 7 days ago)\")\n .option(\"--end-date <date>\", \"End date (ISO string, default: now)\")\n .option(\"-q, --query <query>\", \"Text search query to filter traces\")\n .option(\"-f, --format <format>\", \"Output format: jsonl (default), csv, or json\", \"jsonl\")\n .option(\"-o, --output <file>\", \"Write output to file instead of stdout\")\n .option(\"--limit <n>\", \"Max traces to export (default: 1000)\")\n .action(async (options: { startDate?: string; endDate?: string; query?: string; format?: string; output?: string; limit?: string }) => {\n const { exportTracesCommand: impl } = await import(\"./commands/traces/export.js\");\n await impl(options);\n });\n\ntraceCmd\n .command(\"get <traceId>\")\n .description(\"Get full trace details by ID\")\n .option(\"-f, --format <format>\", \"Output format: digest (default, human-readable) or json\", \"digest\")\n .action(async (traceId: string, options: { format?: string }) => {\n const { getTraceCommand: impl } = await import(\"./commands/traces/get.js\");\n await impl(traceId, options);\n });\n\n// Add scenario command group\nconst scenarioCmd = program\n .command(\"scenario\")\n .description(\"Manage scenarios\");\n\nscenarioCmd\n .command(\"list\")\n .description(\"List all scenarios in the project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listScenariosCommand: impl } = await import(\"./commands/scenarios/list.js\");\n await impl(options);\n });\n\nscenarioCmd\n .command(\"get <id>\")\n .description(\"Get scenario details by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getScenarioCommand: impl } = await import(\"./commands/scenarios/get.js\");\n await impl(id, options);\n });\n\nscenarioCmd\n .command(\"create <name>\")\n .description(\"Create a new scenario\")\n .requiredOption(\"--situation <situation>\", \"The situation/context for the scenario\")\n .option(\"--criteria <criteria>\", \"Comma-separated list of evaluation criteria\")\n .option(\"--labels <labels>\", \"Comma-separated list of labels\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { situation: string; criteria?: string; labels?: string; format?: string }) => {\n const { createScenarioCommand: impl } = await import(\"./commands/scenarios/create.js\");\n await impl(name, options);\n });\n\nscenarioCmd\n .command(\"update <id>\")\n .description(\"Update an existing scenario\")\n .option(\"--name <name>\", \"New scenario name\")\n .option(\"--situation <situation>\", \"New situation/context\")\n .option(\"--criteria <criteria>\", \"New comma-separated list of criteria (replaces existing)\")\n .option(\"--labels <labels>\", \"New comma-separated list of labels (replaces existing)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { name?: string; situation?: string; criteria?: string; labels?: string; format?: string }) => {\n const { updateScenarioCommand: impl } = await import(\"./commands/scenarios/update.js\");\n await impl(id, options);\n });\n\nscenarioCmd\n .command(\"run <id>\")\n .description(\"Run a scenario against a target (agent or prompt)\")\n .requiredOption(\"--target <target>\", \"Target to run against, as <type>:<referenceId> (e.g., http:agent_abc123)\")\n .option(\"--wait\", \"Wait for the scenario run to complete\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { target: string; wait?: boolean; format?: string }) => {\n const { runScenarioCommand: impl } = await import(\"./commands/scenarios/run.js\");\n await impl(id, options);\n });\n\nscenarioCmd\n .command(\"delete <id>\")\n .description(\"Archive (soft-delete) a scenario\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteScenarioCommand: impl } = await import(\"./commands/scenarios/delete.js\");\n await impl(id, options);\n });\n\n// Add suite (run plan) command group\nconst suiteCmd = program\n .command(\"suite\")\n .description(\"Manage suites (run plans) — scenario × target execution plans\");\n\nsuiteCmd\n .command(\"list\")\n .description(\"List all suites in the project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listSuitesCommand: impl } = await import(\"./commands/suites/list.js\");\n await impl(options);\n });\n\nsuiteCmd\n .command(\"get <id>\")\n .description(\"Get suite details by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getSuiteCommand: impl } = await import(\"./commands/suites/get.js\");\n await impl(id, options);\n });\n\nsuiteCmd\n .command(\"create <name>\")\n .description(\"Create a new suite (run plan)\")\n .requiredOption(\"--scenarios <ids>\", \"Comma-separated scenario IDs\")\n .requiredOption(\"--targets <targets...>\", \"Targets as <type>:<referenceId> (e.g., http:agent_abc)\")\n .option(\"--repeat-count <n>\", \"Number of times to repeat each scenario-target pair\", \"1\")\n .option(\"--labels <labels>\", \"Comma-separated labels\")\n .option(\"--description <desc>\", \"Suite description\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { scenarios?: string; targets?: string[]; repeatCount?: string; labels?: string; description?: string; format?: string }) => {\n const { createSuiteCommand: impl } = await import(\"./commands/suites/create.js\");\n await impl(name, options);\n });\n\nsuiteCmd\n .command(\"update <id>\")\n .description(\"Update a suite (run plan)\")\n .option(\"--name <name>\", \"New suite name\")\n .option(\"--scenarios <ids>\", \"New comma-separated scenario IDs\")\n .option(\"--targets <targets...>\", \"New targets as <type>:<referenceId>\")\n .option(\"--repeat-count <n>\", \"New repeat count\")\n .option(\"--labels <labels>\", \"New comma-separated labels\")\n .option(\"--description <desc>\", \"New description\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { name?: string; scenarios?: string; targets?: string[]; repeatCount?: string; labels?: string; description?: string; format?: string }) => {\n const { updateSuiteCommand: impl } = await import(\"./commands/suites/update.js\");\n await impl(id, options);\n });\n\nsuiteCmd\n .command(\"duplicate <id>\")\n .description(\"Duplicate a suite\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { duplicateSuiteCommand: impl } = await import(\"./commands/suites/duplicate.js\");\n await impl(id, options);\n });\n\nsuiteCmd\n .command(\"run <id>\")\n .description(\"Execute a suite run — schedules all scenario × target × repeat jobs\")\n .option(\"--wait\", \"Wait for the suite run to complete before returning\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { wait?: boolean; format?: string }) => {\n const { runSuiteCommand: impl } = await import(\"./commands/suites/run.js\");\n await impl(id, options);\n });\n\nsuiteCmd\n .command(\"delete <id>\")\n .description(\"Archive (soft-delete) a suite\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteSuiteCommand: impl } = await import(\"./commands/suites/delete.js\");\n await impl(id, options);\n });\n\n// Add graph command group\nconst graphCmd = program\n .command(\"graph\")\n .description(\"Manage custom graphs on dashboards\");\n\ngraphCmd\n .command(\"list\")\n .description(\"List all custom graphs (optionally filter by dashboard)\")\n .option(\"--dashboard-id <id>\", \"Filter by dashboard ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { dashboardId?: string; format?: string }) => {\n const { listGraphsCommand: impl } = await import(\"./commands/graphs/list.js\");\n await impl(options);\n });\n\ngraphCmd\n .command(\"get <id>\")\n .description(\"Get a custom graph by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getGraphCommand: impl } = await import(\"./commands/graphs/get.js\");\n await impl(id, options);\n });\n\ngraphCmd\n .command(\"create <name>\")\n .description(\"Create a custom graph\")\n .option(\"--dashboard-id <id>\", \"Dashboard to add the graph to\")\n .option(\"--graph <json>\", \"Graph definition as JSON\")\n .option(\"--filters <json>\", \"Filter conditions as JSON\")\n .option(\"--col-span <n>\", \"Column span (1-2)\")\n .option(\"--row-span <n>\", \"Row span (1-2)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { dashboardId?: string; graph?: string; filters?: string; colSpan?: string; rowSpan?: string; format?: string }) => {\n const { createGraphCommand: impl } = await import(\"./commands/graphs/create.js\");\n await impl(name, options);\n });\n\ngraphCmd\n .command(\"update <id>\")\n .description(\"Update a custom graph\")\n .option(\"--name <name>\", \"New graph name\")\n .option(\"--graph <json>\", \"New graph definition as JSON\")\n .option(\"--filters <json>\", \"New filter conditions as JSON\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { name?: string; graph?: string; filters?: string; format?: string }) => {\n const { updateGraphCommand: impl } = await import(\"./commands/graphs/update.js\");\n await impl(id, options);\n });\n\ngraphCmd\n .command(\"delete <id>\")\n .description(\"Delete a custom graph\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteGraphCommand: impl } = await import(\"./commands/graphs/delete.js\");\n await impl(id, options);\n });\n\n// Add trigger (automation) command group\nconst triggerCmd = program\n .command(\"trigger\")\n .description(\"Manage triggers (automations) — alerts, webhooks, and dataset actions\");\n\ntriggerCmd\n .command(\"list\")\n .description(\"List all triggers in the project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listTriggersCommand: impl } = await import(\"./commands/triggers/list.js\");\n await impl(options);\n });\n\ntriggerCmd\n .command(\"get <id>\")\n .description(\"Get trigger details by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getTriggerCommand: impl } = await import(\"./commands/triggers/get.js\");\n await impl(id, options);\n });\n\ntriggerCmd\n .command(\"create <name>\")\n .description(\"Create a new trigger (automation)\")\n .requiredOption(\"--action <action>\", \"Trigger action: SEND_EMAIL, ADD_TO_DATASET, ADD_TO_ANNOTATION_QUEUE, SEND_SLACK_MESSAGE\")\n .option(\"--filters <json>\", \"Trigger filter conditions as JSON\")\n .option(\"--message <text>\", \"Custom alert message\")\n .option(\"--alert-type <type>\", \"Alert severity: CRITICAL, WARNING, INFO\")\n .option(\"--slack-webhook <url>\", \"Slack webhook URL (for SEND_SLACK_MESSAGE action)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { action: string; filters?: string; message?: string; alertType?: string; slackWebhook?: string; format?: string }) => {\n const { createTriggerCommand: impl } = await import(\"./commands/triggers/create.js\");\n await impl(name, options);\n });\n\ntriggerCmd\n .command(\"update <id>\")\n .description(\"Update a trigger\")\n .option(\"--name <name>\", \"New trigger name\")\n .option(\"--active <boolean>\", \"Enable or disable the trigger (true/false)\")\n .option(\"--message <text>\", \"New alert message\")\n .option(\"--alert-type <type>\", \"New alert severity\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { name?: string; active?: string; message?: string; alertType?: string; format?: string }) => {\n const { updateTriggerCommand: impl } = await import(\"./commands/triggers/update.js\");\n await impl(id, options);\n });\n\ntriggerCmd\n .command(\"delete <id>\")\n .description(\"Delete a trigger\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteTriggerCommand: impl } = await import(\"./commands/triggers/delete.js\");\n await impl(id, options);\n });\n\n// Add secret command group\nconst secretCmd = program\n .command(\"secret\")\n .description(\"Manage project secrets — encrypted environment variables for agents\");\n\nsecretCmd\n .command(\"list\")\n .description(\"List all secrets in the project (values are never shown)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listSecretsCommand: impl } = await import(\"./commands/secrets/list.js\");\n await impl(options);\n });\n\nsecretCmd\n .command(\"get <id>\")\n .description(\"Get secret metadata by ID (value is never shown)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getSecretCommand: impl } = await import(\"./commands/secrets/get.js\");\n await impl(id, options);\n });\n\nsecretCmd\n .command(\"create <name>\")\n .description(\"Create a new secret (name must be UPPER_SNAKE_CASE)\")\n .requiredOption(\"--value <value>\", \"The secret value (will be encrypted)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { value: string; format?: string }) => {\n const { createSecretCommand: impl } = await import(\"./commands/secrets/create.js\");\n await impl(name, options);\n });\n\nsecretCmd\n .command(\"update <id>\")\n .description(\"Update a secret's value\")\n .requiredOption(\"--value <value>\", \"The new secret value (will be encrypted)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { value: string; format?: string }) => {\n const { updateSecretCommand: impl } = await import(\"./commands/secrets/update.js\");\n await impl(id, options);\n });\n\nsecretCmd\n .command(\"delete <id>\")\n .description(\"Delete a secret\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteSecretCommand: impl } = await import(\"./commands/secrets/delete.js\");\n await impl(id, options);\n });\n\n// Add monitor (online evaluation) command group\nconst monitorCmd = program\n .command(\"monitor\")\n .description(\"Manage online evaluation monitors — evaluators running on incoming traces\");\n\nmonitorCmd\n .command(\"list\")\n .description(\"List all monitors in the project\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listMonitorsCommand: impl } = await import(\"./commands/monitors/list.js\");\n await impl(options);\n });\n\nmonitorCmd\n .command(\"get <id>\")\n .description(\"Get monitor details by ID\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { getMonitorCommand: impl } = await import(\"./commands/monitors/get.js\");\n await impl(id, options);\n });\n\nmonitorCmd\n .command(\"create <name>\")\n .description(\"Create a new online evaluation monitor\")\n .requiredOption(\"--check-type <type>\", \"Evaluator check type (e.g. ragas/toxicity, custom/my-eval)\")\n .option(\"--execution-mode <mode>\", \"Execution mode: ON_MESSAGE (default), AS_GUARDRAIL, MANUALLY\", \"ON_MESSAGE\")\n .option(\"--sample <rate>\", \"Sampling rate 0.0-1.0 (default: 1.0)\")\n .option(\"--evaluator-id <id>\", \"Link to a saved evaluator\")\n .option(\"--level <level>\", \"Evaluation level: trace (default) or thread\")\n .option(\"--parameters <json>\", \"Evaluator settings as JSON\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { checkType: string; executionMode?: string; sample?: string; evaluatorId?: string; level?: string; parameters?: string; format?: string }) => {\n const { createMonitorCommand: impl } = await import(\"./commands/monitors/create.js\");\n await impl(name, options);\n });\n\nmonitorCmd\n .command(\"update <id>\")\n .description(\"Update a monitor\")\n .option(\"--name <name>\", \"New monitor name\")\n .option(\"--enabled <boolean>\", \"Enable or disable the monitor (true/false)\")\n .option(\"--execution-mode <mode>\", \"Execution mode: ON_MESSAGE, AS_GUARDRAIL, MANUALLY\")\n .option(\"--sample <rate>\", \"Sampling rate 0.0-1.0\")\n .option(\"--parameters <json>\", \"Updated evaluator settings as JSON\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { name?: string; enabled?: string; executionMode?: string; sample?: string; parameters?: string; format?: string }) => {\n const { updateMonitorCommand: impl } = await import(\"./commands/monitors/update.js\");\n await impl(id, options);\n });\n\nmonitorCmd\n .command(\"delete <id>\")\n .description(\"Delete a monitor\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (id: string, options: { format?: string }) => {\n const { deleteMonitorCommand: impl } = await import(\"./commands/monitors/delete.js\");\n await impl(id, options);\n });\n\n// Add simulation-run command group\nconst simulationRunCmd = program\n .command(\"simulation-run\")\n .description(\"View simulation run results\");\n\nsimulationRunCmd\n .command(\"list\")\n .description(\"List simulation runs (optionally filter by scenario set or batch)\")\n .option(\"--scenario-set-id <id>\", \"Filter by scenario set ID\")\n .option(\"--batch-run-id <id>\", \"Filter by batch run ID (requires --scenario-set-id)\")\n .option(\"--status <status>\", \"Filter by status (e.g. SUCCESS, FAILED, ERROR, IN_PROGRESS)\")\n .option(\"--name <substring>\", \"Filter by run name substring (case-insensitive)\")\n .option(\"--limit <n>\", \"Max results (default: 20)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { scenarioSetId?: string; batchRunId?: string; status?: string; name?: string; limit?: string; format?: string }) => {\n const { listSimulationRunsCommand: impl } = await import(\"./commands/simulation-runs/list.js\");\n await impl(options);\n });\n\nsimulationRunCmd\n .command(\"get <runId>\")\n .description(\"Get full details of a simulation run (messages, results, costs)\")\n .option(\"--full\", \"Show full message content instead of truncating long lines\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (runId: string, options: { format?: string; full?: boolean }) => {\n const { getSimulationRunCommand: impl } = await import(\"./commands/simulation-runs/get.js\");\n await impl(runId, options);\n });\n\n// Add dataset command group\nconst datasetCmd = program\n .command(\"dataset\")\n .description(\"Manage datasets\");\n\ndatasetCmd\n .command(\"list\")\n .description(\"List all datasets\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (options: { format?: string }) => {\n const { listCommand: listDatasetsImpl } = await import(\"./commands/dataset/list.js\");\n await listDatasetsImpl(options);\n });\n\ndatasetCmd\n .command(\"create <name>\")\n .description(\"Create a new dataset\")\n .option(\"-c, --columns <columns>\", \"Column definitions (e.g. input:string,output:string)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (name: string, options: { columns?: string; format?: string }) => {\n const { createCommand: createDatasetImpl } = await import(\"./commands/dataset/create.js\");\n await createDatasetImpl(name, options);\n });\n\ndatasetCmd\n .command(\"get <slugOrId>\")\n .description(\"Get dataset details and preview records\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (slugOrId: string, options: { format?: string }) => {\n const { getCommand: getDatasetImpl } = await import(\"./commands/dataset/get.js\");\n await getDatasetImpl(slugOrId, options);\n });\n\ndatasetCmd\n .command(\"delete <slugOrId>\")\n .description(\"Delete (archive) a dataset\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (slugOrId: string, options: { format?: string }) => {\n const { deleteCommand: deleteDatasetImpl } = await import(\"./commands/dataset/delete.js\");\n await deleteDatasetImpl(slugOrId, options);\n });\n\ndatasetCmd\n .command(\"upload <slug> <file>\")\n .description(\"Upload a file to a dataset (creates if not found)\")\n .option(\"--if-exists <strategy>\", \"Strategy when dataset exists: append (default), replace, error\")\n .action(async (slug: string, file: string, options: { ifExists?: string }) => {\n const { uploadCommand: uploadDatasetImpl } = await import(\"./commands/dataset/upload.js\");\n await uploadDatasetImpl(slug, file, options);\n });\n\ndatasetCmd\n .command(\"download <slugOrId>\")\n .description(\"Download dataset records as CSV or JSONL\")\n .option(\"-f, --format <format>\", \"Output format: csv or jsonl\", \"csv\")\n .action(async (slugOrId: string, options: { format?: string }) => {\n const { downloadCommand: downloadDatasetImpl } = await import(\"./commands/dataset/download.js\");\n await downloadDatasetImpl(slugOrId, options);\n });\n\ndatasetCmd\n .command(\"update <slugOrId>\")\n .description(\"Update a dataset name or columns\")\n .option(\"--name <name>\", \"New dataset name\")\n .option(\"--columns <columns>\", \"New column definitions (e.g. input:string,output:string)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (slugOrId: string, options: { name?: string; columns?: string; format?: string }) => {\n const { updateCommand: updateDatasetImpl } = await import(\"./commands/dataset/update.js\");\n await updateDatasetImpl(slugOrId, options);\n });\n\n// Records subcommand group\nconst recordsCmd = datasetCmd\n .command(\"records\")\n .description(\"Manage dataset records\");\n\nrecordsCmd\n .command(\"list <slugOrId>\")\n .description(\"List records in a dataset\")\n .option(\"--page <n>\", \"Page number (default: 1)\")\n .option(\"--limit <n>\", \"Records per page (default: 20)\")\n .option(\"-f, --format <format>\", \"Output format: table (default) or json\", \"table\")\n .action(async (slugOrId: string, options: { page?: string; limit?: string; format?: string }) => {\n const { recordsListCommand } = await import(\"./commands/dataset/records-list.js\");\n await recordsListCommand(slugOrId, options);\n });\n\nrecordsCmd\n .command(\"add <slugOrId>\")\n .description(\"Add records to a dataset\")\n .option(\"--json <json>\", \"JSON array of records (inline)\")\n .option(\"--file <path>\", \"Read JSON array of records from a file\")\n .option(\"--stdin\", \"Read JSON array from stdin\")\n .action(async (slugOrId: string, options: { json?: string; file?: string; stdin?: boolean }) => {\n const { recordsAddCommand } = await import(\"./commands/dataset/records-add.js\");\n await recordsAddCommand(slugOrId, options);\n });\n\nrecordsCmd\n .command(\"update <slugOrId> <recordId>\")\n .description(\"Update a single record in a dataset\")\n .requiredOption(\"--json <json>\", \"JSON object with updated fields\")\n .action(async (slugOrId: string, recordId: string, options: { json: string }) => {\n const { recordsUpdateCommand } = await import(\"./commands/dataset/records-update.js\");\n await recordsUpdateCommand(slugOrId, recordId, options);\n });\n\nrecordsCmd\n .command(\"delete <slugOrId> <recordIds...>\")\n .description(\"Delete records from a dataset\")\n .action(async (slugOrId: string, recordIds: string[]) => {\n const { recordsDeleteCommand } = await import(\"./commands/dataset/records-delete.js\");\n await recordsDeleteCommand(slugOrId, recordIds);\n });\nprogram.parse(process.argv);"]}