@caspian2026/agent-sdk 0.0.2

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 (371) hide show
  1. package/dist/chunk-018smjq7.js +26 -0
  2. package/dist/chunk-055q0a2m.js +146 -0
  3. package/dist/chunk-07069jq1.js +30 -0
  4. package/dist/chunk-0731m51q.js +8 -0
  5. package/dist/chunk-0awwmrwr.js +46 -0
  6. package/dist/chunk-0htx82k2.js +64 -0
  7. package/dist/chunk-0jmt5sx1.js +104 -0
  8. package/dist/chunk-0kj8bq80.js +252 -0
  9. package/dist/chunk-0kxcq8h9.js +86 -0
  10. package/dist/chunk-0paqc2yw.js +15 -0
  11. package/dist/chunk-0vkfrmqm.js +690 -0
  12. package/dist/chunk-0xjaqda8.js +1124 -0
  13. package/dist/chunk-10qhq6f8.js +458 -0
  14. package/dist/chunk-15m49c67.js +121 -0
  15. package/dist/chunk-15sfg4bs.js +65 -0
  16. package/dist/chunk-162ewhvy.js +869 -0
  17. package/dist/chunk-177s15bv.js +120 -0
  18. package/dist/chunk-19e603rv.js +284 -0
  19. package/dist/chunk-1ax1znzj.js +537 -0
  20. package/dist/chunk-1c4j7qn2.js +319 -0
  21. package/dist/chunk-1gx78081.js +66 -0
  22. package/dist/chunk-1h2famwb.js +49 -0
  23. package/dist/chunk-1nk93fqz.js +357 -0
  24. package/dist/chunk-1xct96nd.js +2520 -0
  25. package/dist/chunk-1xvcvdef.js +90 -0
  26. package/dist/chunk-1yrcnrs7.js +261 -0
  27. package/dist/chunk-21bcvwr7.js +660 -0
  28. package/dist/chunk-2352ts05.js +667 -0
  29. package/dist/chunk-23jzrwsw.js +43 -0
  30. package/dist/chunk-26hg7303.js +62 -0
  31. package/dist/chunk-2f21meep.js +122 -0
  32. package/dist/chunk-2fwze72g.js +24 -0
  33. package/dist/chunk-2gzv8nrw.js +205 -0
  34. package/dist/chunk-2h05vtpv.js +83 -0
  35. package/dist/chunk-2h0y6m16.js +465 -0
  36. package/dist/chunk-2n7bbxm6.js +168 -0
  37. package/dist/chunk-2nv3d0he.js +108 -0
  38. package/dist/chunk-2vqrdwx9.js +1811 -0
  39. package/dist/chunk-3389cj3w.js +120 -0
  40. package/dist/chunk-35sgv3er.js +231 -0
  41. package/dist/chunk-3c25bcsw.js +17 -0
  42. package/dist/chunk-3e20cj49.js +443 -0
  43. package/dist/chunk-3mr5ryx4.js +122 -0
  44. package/dist/chunk-3nk79af8.js +8 -0
  45. package/dist/chunk-3qbdzsvm.js +120 -0
  46. package/dist/chunk-3yprydpw.js +213 -0
  47. package/dist/chunk-430yrtmk.js +492 -0
  48. package/dist/chunk-46hd1gyd.js +140 -0
  49. package/dist/chunk-46hdszda.js +63 -0
  50. package/dist/chunk-46n7byh8.js +102 -0
  51. package/dist/chunk-4cp6193g.js +9076 -0
  52. package/dist/chunk-4dn3n459.js +409 -0
  53. package/dist/chunk-4hv90qcz.js +8 -0
  54. package/dist/chunk-4jm600zv.js +13 -0
  55. package/dist/chunk-4nspekjp.js +69 -0
  56. package/dist/chunk-505mxxa9.js +19 -0
  57. package/dist/chunk-50bay5qy.js +224 -0
  58. package/dist/chunk-537qfvn5.js +345 -0
  59. package/dist/chunk-55raexh7.js +14358 -0
  60. package/dist/chunk-572vjq78.js +56 -0
  61. package/dist/chunk-5apfzkpy.js +87 -0
  62. package/dist/chunk-5ccdsxgy.js +74 -0
  63. package/dist/chunk-5dmhsqap.js +32 -0
  64. package/dist/chunk-5fs6nkjr.js +98 -0
  65. package/dist/chunk-5nchekqe.js +87 -0
  66. package/dist/chunk-5pp28k2r.js +120 -0
  67. package/dist/chunk-5rt4b8q9.js +116 -0
  68. package/dist/chunk-5rv9c8yd.js +1072 -0
  69. package/dist/chunk-5z28bqne.js +6748 -0
  70. package/dist/chunk-64c1avct.js +13 -0
  71. package/dist/chunk-66zry909.js +11 -0
  72. package/dist/chunk-682qgta2.js +102 -0
  73. package/dist/chunk-68ffk5qa.js +14 -0
  74. package/dist/chunk-68w91pzt.js +79 -0
  75. package/dist/chunk-69fgaak0.js +654 -0
  76. package/dist/chunk-69n11zng.js +436 -0
  77. package/dist/chunk-6dj5t602.js +341 -0
  78. package/dist/chunk-6gh20s05.js +146 -0
  79. package/dist/chunk-6maej1hh.js +502 -0
  80. package/dist/chunk-6nsd9606.js +790 -0
  81. package/dist/chunk-6p4cyhb3.js +16 -0
  82. package/dist/chunk-6t4a9cgj.js +877 -0
  83. package/dist/chunk-6t8yqfks.js +227 -0
  84. package/dist/chunk-6vthy0fj.js +213 -0
  85. package/dist/chunk-70cw4cg9.js +1026 -0
  86. package/dist/chunk-70eey1nh.js +164 -0
  87. package/dist/chunk-76j2e9vy.js +68 -0
  88. package/dist/chunk-7acgdm7x.js +93 -0
  89. package/dist/chunk-7aw745vx.js +40175 -0
  90. package/dist/chunk-7gvwg1v9.js +122 -0
  91. package/dist/chunk-7h2ybnf3.js +636 -0
  92. package/dist/chunk-7kcm5hn2.js +155 -0
  93. package/dist/chunk-7m2hp89m.js +73 -0
  94. package/dist/chunk-7mqab3z7.js +31 -0
  95. package/dist/chunk-7sgtxrsc.js +1059 -0
  96. package/dist/chunk-7wm5s02e.js +216 -0
  97. package/dist/chunk-7xyswgjh.js +8 -0
  98. package/dist/chunk-7yxvpj5j.js +1452 -0
  99. package/dist/chunk-80a8vabn.js +93 -0
  100. package/dist/chunk-83e71kz6.js +180 -0
  101. package/dist/chunk-83hfzbx3.js +10 -0
  102. package/dist/chunk-8g5pe1gr.js +37 -0
  103. package/dist/chunk-8g747a8x.js +26 -0
  104. package/dist/chunk-8hj8ms5q.js +111 -0
  105. package/dist/chunk-8mkwsdk1.js +61 -0
  106. package/dist/chunk-8n42zyfx.js +40 -0
  107. package/dist/chunk-8qhxyqj9.js +1155 -0
  108. package/dist/chunk-8y30k9pz.js +38 -0
  109. package/dist/chunk-960ze3jj.js +124 -0
  110. package/dist/chunk-97wgdsab.js +35 -0
  111. package/dist/chunk-9grztvcg.js +93 -0
  112. package/dist/chunk-9x5zgy22.js +12 -0
  113. package/dist/chunk-a8792r1c.js +620 -0
  114. package/dist/chunk-ahr1r7c6.js +4275 -0
  115. package/dist/chunk-ase86y73.js +15 -0
  116. package/dist/chunk-b0kf00ff.js +637 -0
  117. package/dist/chunk-b0qptb1k.js +640 -0
  118. package/dist/chunk-b1kcd3ss.js +27 -0
  119. package/dist/chunk-b2fd462a.js +54 -0
  120. package/dist/chunk-bdrjvs5k.js +157 -0
  121. package/dist/chunk-beg7bdyz.js +90 -0
  122. package/dist/chunk-bg4x9ex0.js +21 -0
  123. package/dist/chunk-bktfq0ns.js +95 -0
  124. package/dist/chunk-bmbq6nt1.js +145 -0
  125. package/dist/chunk-bvf2z3g6.js +1003 -0
  126. package/dist/chunk-bxcfz5gy.js +56 -0
  127. package/dist/chunk-c11swzas.js +5368 -0
  128. package/dist/chunk-c37j5zxe.js +57 -0
  129. package/dist/chunk-c5mz5vw2.js +117 -0
  130. package/dist/chunk-c6sjhj89.js +1284 -0
  131. package/dist/chunk-c7jwbe76.js +29030 -0
  132. package/dist/chunk-cc2tg4q8.js +311 -0
  133. package/dist/chunk-cdhmrbj4.js +6353 -0
  134. package/dist/chunk-cdz5yb0r.js +57 -0
  135. package/dist/chunk-cfv996bs.js +22 -0
  136. package/dist/chunk-cgfdkzhb.js +12 -0
  137. package/dist/chunk-chakj069.js +310 -0
  138. package/dist/chunk-chsyvavm.js +3435 -0
  139. package/dist/chunk-cnsj3vq2.js +35 -0
  140. package/dist/chunk-ctdg0qxh.js +1386 -0
  141. package/dist/chunk-cxq7gc42.js +386 -0
  142. package/dist/chunk-d1pyf9as.js +8586 -0
  143. package/dist/chunk-d4kwjqjy.js +308 -0
  144. package/dist/chunk-d4mdda98.js +94 -0
  145. package/dist/chunk-d7886r6a.js +13870 -0
  146. package/dist/chunk-d7f1pzkq.js +95 -0
  147. package/dist/chunk-ddsjkqs4.js +39 -0
  148. package/dist/chunk-dm3n2qgd.js +24 -0
  149. package/dist/chunk-e2mv8ts8.js +115 -0
  150. package/dist/chunk-e4bhfc6d.js +2720 -0
  151. package/dist/chunk-e4p1jbs4.js +58 -0
  152. package/dist/chunk-e7h4qxgw.js +21 -0
  153. package/dist/chunk-e8p3fy6v.js +202 -0
  154. package/dist/chunk-e97mp86b.js +111 -0
  155. package/dist/chunk-ebqwkhyf.js +145 -0
  156. package/dist/chunk-eenq3avg.js +69 -0
  157. package/dist/chunk-efgjfast.js +61 -0
  158. package/dist/chunk-ehtwnxpg.js +1591 -0
  159. package/dist/chunk-en8wkxh7.js +173 -0
  160. package/dist/chunk-enkdxqas.js +33 -0
  161. package/dist/chunk-eqp1rfft.js +17 -0
  162. package/dist/chunk-ercvcek8.js +266 -0
  163. package/dist/chunk-etgh9xvt.js +369 -0
  164. package/dist/chunk-ev3qkf76.js +106 -0
  165. package/dist/chunk-evp5pb9x.js +3567 -0
  166. package/dist/chunk-ewadzrm8.js +103 -0
  167. package/dist/chunk-exah13mz.js +94 -0
  168. package/dist/chunk-f0rzvqmq.js +87 -0
  169. package/dist/chunk-f1m9pect.js +258 -0
  170. package/dist/chunk-fajg8x36.js +8158 -0
  171. package/dist/chunk-fbv4apne.js +51 -0
  172. package/dist/chunk-fbvw6wq9.js +116 -0
  173. package/dist/chunk-feyzykye.js +10 -0
  174. package/dist/chunk-fn1vvj8k.js +894 -0
  175. package/dist/chunk-fshfxw2q.js +183 -0
  176. package/dist/chunk-fyc5fepv.js +10 -0
  177. package/dist/chunk-g9f19ttm.js +15 -0
  178. package/dist/chunk-gcpfxk0c.js +644 -0
  179. package/dist/chunk-gdg6411p.js +106 -0
  180. package/dist/chunk-gkyzz8er.js +849 -0
  181. package/dist/chunk-gxahdggv.js +71 -0
  182. package/dist/chunk-h6fsks9j.js +220 -0
  183. package/dist/chunk-h9n54swm.js +27 -0
  184. package/dist/chunk-hakdhagh.js +16606 -0
  185. package/dist/chunk-hchy0hq6.js +159 -0
  186. package/dist/chunk-hh3k5s1s.js +180 -0
  187. package/dist/chunk-hqqkj5pg.js +202 -0
  188. package/dist/chunk-htpehq9t.js +251 -0
  189. package/dist/chunk-hwfknpxv.js +39 -0
  190. package/dist/chunk-hwn8vetn.js +394 -0
  191. package/dist/chunk-hx3j6n92.js +178 -0
  192. package/dist/chunk-hyb749hd.js +194 -0
  193. package/dist/chunk-hzgnejb1.js +90 -0
  194. package/dist/chunk-hzknr99c.js +477 -0
  195. package/dist/chunk-j3zhb8vv.js +152 -0
  196. package/dist/chunk-j5bth84e.js +97 -0
  197. package/dist/chunk-j64ga6ta.js +8035 -0
  198. package/dist/chunk-jaaxk89e.js +113 -0
  199. package/dist/chunk-jd32zbps.js +15 -0
  200. package/dist/chunk-jfja8q7w.js +91 -0
  201. package/dist/chunk-jgjqa49s.js +27 -0
  202. package/dist/chunk-jgpmpgx6.js +19 -0
  203. package/dist/chunk-jgwd85hp.js +91 -0
  204. package/dist/chunk-jk69qtzx.js +277 -0
  205. package/dist/chunk-jr1xm1dd.js +147 -0
  206. package/dist/chunk-jss0azv7.js +2337 -0
  207. package/dist/chunk-jxpmkae9.js +108 -0
  208. package/dist/chunk-jy9rxxqe.js +102 -0
  209. package/dist/chunk-jyw3np47.js +264 -0
  210. package/dist/chunk-jzthz1bx.js +15 -0
  211. package/dist/chunk-k0p9w03v.js +4957 -0
  212. package/dist/chunk-k2rybwww.js +92 -0
  213. package/dist/chunk-k3939ggz.js +168 -0
  214. package/dist/chunk-k591cwbg.js +345 -0
  215. package/dist/chunk-k5ez1h65.js +108 -0
  216. package/dist/chunk-k8vp0atq.js +2331 -0
  217. package/dist/chunk-kajf3jgq.js +694 -0
  218. package/dist/chunk-kbm69rtz.js +276 -0
  219. package/dist/chunk-kjh11txh.js +419 -0
  220. package/dist/chunk-kqggbte3.js +326 -0
  221. package/dist/chunk-kr6qfwq0.js +95 -0
  222. package/dist/chunk-kvfg8eeg.js +150 -0
  223. package/dist/chunk-kwekc97v.js +18 -0
  224. package/dist/chunk-m1cehfta.js +861 -0
  225. package/dist/chunk-m87bhhqv.js +61 -0
  226. package/dist/chunk-mg7pbk0r.js +151 -0
  227. package/dist/chunk-mpbfkp8j.js +418 -0
  228. package/dist/chunk-mpk1sjyk.js +117 -0
  229. package/dist/chunk-msecaxyj.js +74 -0
  230. package/dist/chunk-mswx2nma.js +103 -0
  231. package/dist/chunk-mw1kpeg9.js +6895 -0
  232. package/dist/chunk-mxr2s6d1.js +89 -0
  233. package/dist/chunk-my40g5hp.js +560 -0
  234. package/dist/chunk-n0kmh4ra.js +338 -0
  235. package/dist/chunk-n18q5yqs.js +397 -0
  236. package/dist/chunk-n7pnyq43.js +131 -0
  237. package/dist/chunk-naybw0p0.js +32 -0
  238. package/dist/chunk-nb6abcch.js +83 -0
  239. package/dist/chunk-ne5r3k03.js +350 -0
  240. package/dist/chunk-nebezy1d.js +997 -0
  241. package/dist/chunk-netzwgv1.js +154 -0
  242. package/dist/chunk-nhapyawz.js +32994 -0
  243. package/dist/chunk-npnvheft.js +156 -0
  244. package/dist/chunk-nrtksr2p.js +51 -0
  245. package/dist/chunk-nw9t5pq9.js +132 -0
  246. package/dist/chunk-nxgsnh2y.js +735 -0
  247. package/dist/chunk-p11xp4xp.js +266 -0
  248. package/dist/chunk-p1hwrf72.js +74 -0
  249. package/dist/chunk-p1zj9mg9.js +567 -0
  250. package/dist/chunk-p39a677r.js +115 -0
  251. package/dist/chunk-p7vkh4wx.js +15 -0
  252. package/dist/chunk-p8na2wwp.js +14 -0
  253. package/dist/chunk-pcb7fbyg.js +259 -0
  254. package/dist/chunk-pckwmrzd.js +409 -0
  255. package/dist/chunk-ped973jn.js +111 -0
  256. package/dist/chunk-phd1qfpc.js +5971 -0
  257. package/dist/chunk-pkkngdv0.js +524 -0
  258. package/dist/chunk-ppwjyveh.js +8 -0
  259. package/dist/chunk-pqvr8jq7.js +324 -0
  260. package/dist/chunk-prcah3ys.js +106 -0
  261. package/dist/chunk-ps49ymvj.js +43 -0
  262. package/dist/chunk-pwwa7s62.js +11 -0
  263. package/dist/chunk-pxdzy0jh.js +134 -0
  264. package/dist/chunk-q3jr5t07.js +62 -0
  265. package/dist/chunk-q6cfkntd.js +675 -0
  266. package/dist/chunk-q6m26rc8.js +88 -0
  267. package/dist/chunk-q6xs51jj.js +332 -0
  268. package/dist/chunk-q7jnesv8.js +74 -0
  269. package/dist/chunk-q7zpf4r2.js +440 -0
  270. package/dist/chunk-q8c88vjm.js +24 -0
  271. package/dist/chunk-qajrkk97.js +298 -0
  272. package/dist/chunk-qatfdxvd.js +34 -0
  273. package/dist/chunk-qb6k2afy.js +153 -0
  274. package/dist/chunk-qfk94vcn.js +329 -0
  275. package/dist/chunk-qj2e1apf.js +471 -0
  276. package/dist/chunk-qj2mk79w.js +111 -0
  277. package/dist/chunk-qk7dfae6.js +267 -0
  278. package/dist/chunk-qnfx3qtx.js +617 -0
  279. package/dist/chunk-qp2qdcda.js +100 -0
  280. package/dist/chunk-qq0phwn8.js +458 -0
  281. package/dist/chunk-qwqjesx7.js +258 -0
  282. package/dist/chunk-qygmcg7w.js +60 -0
  283. package/dist/chunk-qz2x630m.js +49145 -0
  284. package/dist/chunk-qzj4e8fn.js +357 -0
  285. package/dist/chunk-ratvcbmn.js +255 -0
  286. package/dist/chunk-rkg741k3.js +37 -0
  287. package/dist/chunk-rn0v1hk8.js +34 -0
  288. package/dist/chunk-rsq0h0rz.js +91 -0
  289. package/dist/chunk-rvnb2gn6.js +1053 -0
  290. package/dist/chunk-rx278zpa.js +75 -0
  291. package/dist/chunk-s3hsqf80.js +473 -0
  292. package/dist/chunk-s4cb0bcb.js +655 -0
  293. package/dist/chunk-s8kj6ajy.js +32 -0
  294. package/dist/chunk-sd36yzx8.js +954 -0
  295. package/dist/chunk-sfcpjh4r.js +98 -0
  296. package/dist/chunk-spybh2dy.js +175 -0
  297. package/dist/chunk-sw9ax3ym.js +92 -0
  298. package/dist/chunk-szj5wvdy.js +28 -0
  299. package/dist/chunk-t29a6zb5.js +45 -0
  300. package/dist/chunk-t9p85zff.js +24 -0
  301. package/dist/chunk-tc1aazk4.js +131 -0
  302. package/dist/chunk-tdbz9gbm.js +1030 -0
  303. package/dist/chunk-tjcfpk38.js +208 -0
  304. package/dist/chunk-tp2jxmcx.js +8427 -0
  305. package/dist/chunk-tqmtkm0k.js +92 -0
  306. package/dist/chunk-tvgvt220.js +22820 -0
  307. package/dist/chunk-v0qraze5.js +291 -0
  308. package/dist/chunk-v1kzp02e.js +785 -0
  309. package/dist/chunk-v78fj8by.js +145 -0
  310. package/dist/chunk-v8g3kad0.js +101 -0
  311. package/dist/chunk-v9smspw2.js +4301 -0
  312. package/dist/chunk-vawgyev5.js +157 -0
  313. package/dist/chunk-vb3x3cxe.js +375 -0
  314. package/dist/chunk-vf612n57.js +472 -0
  315. package/dist/chunk-vjn8mbcw.js +198 -0
  316. package/dist/chunk-vmbfv1y5.js +295 -0
  317. package/dist/chunk-vrf54kmt.js +321 -0
  318. package/dist/chunk-vyjeh50y.js +2149 -0
  319. package/dist/chunk-vzgkedm9.js +159745 -0
  320. package/dist/chunk-w004kfw0.js +245 -0
  321. package/dist/chunk-w0yhbmxn.js +132 -0
  322. package/dist/chunk-w4yn8cq7.js +123 -0
  323. package/dist/chunk-waqwgprq.js +1164 -0
  324. package/dist/chunk-wayfjcwt.js +447 -0
  325. package/dist/chunk-wby6yd4m.js +91 -0
  326. package/dist/chunk-wha6v7za.js +705 -0
  327. package/dist/chunk-wjcq2vkf.js +641 -0
  328. package/dist/chunk-wtjt9qyk.js +2670 -0
  329. package/dist/chunk-x2pvw7xw.js +42 -0
  330. package/dist/chunk-x6r4v44b.js +8 -0
  331. package/dist/chunk-x8d2ehd7.js +19 -0
  332. package/dist/chunk-xd6kmmb1.js +95 -0
  333. package/dist/chunk-xp61y5ba.js +125 -0
  334. package/dist/chunk-xv3era3s.js +8 -0
  335. package/dist/chunk-xxw9a0bq.js +58 -0
  336. package/dist/chunk-xzhaa7gd.js +112 -0
  337. package/dist/chunk-y1784krc.js +19 -0
  338. package/dist/chunk-y4ca9kqz.js +3830 -0
  339. package/dist/chunk-yff68ex1.js +113 -0
  340. package/dist/chunk-yg4vgpxs.js +436 -0
  341. package/dist/chunk-yk62vxj2.js +2964 -0
  342. package/dist/chunk-ym5r3jnk.js +2007 -0
  343. package/dist/chunk-ysanv95x.js +225 -0
  344. package/dist/chunk-yvtzznds.js +63 -0
  345. package/dist/chunk-yyex5gsf.js +269 -0
  346. package/dist/chunk-yyf72f78.js +456 -0
  347. package/dist/chunk-z19sd3bt.js +1648 -0
  348. package/dist/chunk-z2dp53wn.js +17 -0
  349. package/dist/chunk-z9n0183s.js +39 -0
  350. package/dist/chunk-zb8f6h5g.js +9174 -0
  351. package/dist/chunk-zctfbr1v.js +594 -0
  352. package/dist/chunk-zesnmkg3.js +2840 -0
  353. package/dist/chunk-zf47r1b7.js +94 -0
  354. package/dist/chunk-zghtdbat.js +253 -0
  355. package/dist/chunk-zpmwvd09.js +275 -0
  356. package/dist/chunk-zqncgyf6.js +127 -0
  357. package/dist/chunk-zr6mz36s.js +281 -0
  358. package/dist/chunk-zshzdw1n.js +141 -0
  359. package/dist/chunk-zx5kw7z4.js +40 -0
  360. package/dist/chunk-zzm33q8x.js +8 -0
  361. package/dist/cli.js +91 -0
  362. package/dist/download-ripgrep.js +24821 -0
  363. package/dist/vendor/audio-capture/arm64-darwin/audio-capture.node +0 -0
  364. package/dist/vendor/audio-capture/arm64-linux/audio-capture.node +0 -0
  365. package/dist/vendor/audio-capture/arm64-win32/audio-capture.node +0 -0
  366. package/dist/vendor/audio-capture/x64-darwin/audio-capture.node +0 -0
  367. package/dist/vendor/audio-capture/x64-linux/audio-capture.node +0 -0
  368. package/dist/vendor/audio-capture/x64-win32/audio-capture.node +0 -0
  369. package/dist/vendor/ripgrep/x64-win32/rg.exe +0 -0
  370. package/package.json +122 -0
  371. package/scripts/postinstall.cjs +319 -0
@@ -0,0 +1,869 @@
1
+ // @bun
2
+ import {
3
+ init_slashCommandParsing,
4
+ parseSlashCommand
5
+ } from "./chunk-rn0v1hk8.js";
6
+ import {
7
+ NO_CONTENT_MESSAGE,
8
+ addSessionHook,
9
+ buildPluginCommandTelemetryFields,
10
+ buildPostCompactMessages,
11
+ builtInCommandNames,
12
+ createAgentId,
13
+ createAttachmentMessage,
14
+ createCommandInputMessage,
15
+ createSyntheticUserCaveatMessage,
16
+ createSystemMessage,
17
+ createUserInterruptionMessage,
18
+ createUserMessage,
19
+ extractResultText,
20
+ findCommand,
21
+ formatCommandInputTags,
22
+ getAgentContext,
23
+ getAssistantMessageContentLength,
24
+ getAttachmentMessages,
25
+ getCommand,
26
+ getCommandName,
27
+ getDumpPromptsPath,
28
+ hasCommand,
29
+ hasPermissionsToUseTool,
30
+ init_UI,
31
+ init_abortController,
32
+ init_agentContext,
33
+ init_attachments,
34
+ init_commands1 as init_commands,
35
+ init_compact,
36
+ init_dumpPrompts,
37
+ init_events,
38
+ init_forkedAgent,
39
+ init_fullscreen,
40
+ init_generators,
41
+ init_messageQueueManager,
42
+ init_messages,
43
+ init_messages1 as init_messages2,
44
+ init_microCompact,
45
+ init_permissionSetup,
46
+ init_permissions,
47
+ init_pluginIdentifier,
48
+ init_pluginOnlyPolicy,
49
+ init_pluginTelemetry,
50
+ init_runAgent,
51
+ init_sessionHooks,
52
+ init_skillUsageTracking,
53
+ init_tokens,
54
+ init_uuid,
55
+ isCompactBoundaryMessage,
56
+ isFullscreenEnvEnabled,
57
+ isOfficialMarketplaceName,
58
+ isRestrictedToPluginOnly,
59
+ isSourceAdminTrusted,
60
+ isSystemLocalCommandMessage,
61
+ logOTelEvent,
62
+ normalizeMessages,
63
+ parsePluginIdentifier,
64
+ parseToolListFromCLI,
65
+ prepareForkedCommandContext,
66
+ prepareUserContent,
67
+ recordSkillUsage,
68
+ redactIfDisabled,
69
+ removeSessionHook,
70
+ renderToolUseProgressMessage,
71
+ resetMicrocompactState,
72
+ runAgent,
73
+ toArray
74
+ } from "./chunk-vzgkedm9.js";
75
+ import"./chunk-46hdszda.js";
76
+ import"./chunk-hwfknpxv.js";
77
+ import"./chunk-4nspekjp.js";
78
+ import"./chunk-jzthz1bx.js";
79
+ import"./chunk-1gx78081.js";
80
+ import"./chunk-2gzv8nrw.js";
81
+ import"./chunk-ehtwnxpg.js";
82
+ import"./chunk-68w91pzt.js";
83
+ import"./chunk-s4cb0bcb.js";
84
+ import"./chunk-cgfdkzhb.js";
85
+ import"./chunk-bxcfz5gy.js";
86
+ import"./chunk-nebezy1d.js";
87
+ import"./chunk-wayfjcwt.js";
88
+ import"./chunk-kbm69rtz.js";
89
+ import"./chunk-j5bth84e.js";
90
+ import"./chunk-nxgsnh2y.js";
91
+ import"./chunk-68ffk5qa.js";
92
+ import"./chunk-ps49ymvj.js";
93
+ import"./chunk-bmbq6nt1.js";
94
+ import"./chunk-15sfg4bs.js";
95
+ import"./chunk-p7vkh4wx.js";
96
+ import"./chunk-b0qptb1k.js";
97
+ import"./chunk-m87bhhqv.js";
98
+ import"./chunk-j3zhb8vv.js";
99
+ import"./chunk-b2fd462a.js";
100
+ import"./chunk-c11swzas.js";
101
+ import"./chunk-chsyvavm.js";
102
+ import"./chunk-5rv9c8yd.js";
103
+ import {
104
+ HOOK_EVENTS,
105
+ getDisplayPath,
106
+ init_agentSdkTypes,
107
+ init_file,
108
+ init_workloadContext
109
+ } from "./chunk-tp2jxmcx.js";
110
+ import"./chunk-z19sd3bt.js";
111
+ import"./chunk-1ax1znzj.js";
112
+ import"./chunk-wha6v7za.js";
113
+ import"./chunk-6nsd9606.js";
114
+ import"./chunk-xp61y5ba.js";
115
+ import"./chunk-64c1avct.js";
116
+ import {
117
+ init_sleep
118
+ } from "./chunk-8g5pe1gr.js";
119
+ import"./chunk-4cp6193g.js";
120
+ import"./chunk-8g747a8x.js";
121
+ import"./chunk-d7886r6a.js";
122
+ import"./chunk-yvtzznds.js";
123
+ import"./chunk-4jm600zv.js";
124
+ import"./chunk-qz2x630m.js";
125
+ import"./chunk-2f21meep.js";
126
+ import"./chunk-nrtksr2p.js";
127
+ import"./chunk-3c25bcsw.js";
128
+ import"./chunk-s3hsqf80.js";
129
+ import"./chunk-yyf72f78.js";
130
+ import"./chunk-cdz5yb0r.js";
131
+ import"./chunk-c7jwbe76.js";
132
+ import"./chunk-0vkfrmqm.js";
133
+ import"./chunk-7sgtxrsc.js";
134
+ import"./chunk-0xjaqda8.js";
135
+ import {
136
+ init_analytics,
137
+ logEvent
138
+ } from "./chunk-x8d2ehd7.js";
139
+ import"./chunk-15m49c67.js";
140
+ import"./chunk-tdbz9gbm.js";
141
+ import"./chunk-0awwmrwr.js";
142
+ import"./chunk-qnfx3qtx.js";
143
+ import"./chunk-70eey1nh.js";
144
+ import {
145
+ COMMAND_MESSAGE_TAG,
146
+ COMMAND_NAME_TAG,
147
+ init_log,
148
+ init_xml,
149
+ logError
150
+ } from "./chunk-1nk93fqz.js";
151
+ import"./chunk-s8kj6ajy.js";
152
+ import"./chunk-eenq3avg.js";
153
+ import"./chunk-7mqab3z7.js";
154
+ import"./chunk-5z28bqne.js";
155
+ import"./chunk-qajrkk97.js";
156
+ import {
157
+ AbortError,
158
+ MalformedCommandError,
159
+ getFsImplementation,
160
+ init_debug,
161
+ init_errors,
162
+ init_fsOperations,
163
+ logForDebugging
164
+ } from "./chunk-phd1qfpc.js";
165
+ import"./chunk-fbv4apne.js";
166
+ import {
167
+ init_envUtils
168
+ } from "./chunk-jaaxk89e.js";
169
+ import {
170
+ addInvokedSkill,
171
+ getSessionId,
172
+ init_state,
173
+ setPromptId
174
+ } from "./chunk-k8vp0atq.js";
175
+ import"./chunk-vf612n57.js";
176
+ import"./chunk-07069jq1.js";
177
+ import"./chunk-d4mdda98.js";
178
+ import"./chunk-55raexh7.js";
179
+ import"./chunk-v9smspw2.js";
180
+ import"./chunk-v1kzp02e.js";
181
+ import"./chunk-7wm5s02e.js";
182
+ import"./chunk-b0kf00ff.js";
183
+ import"./chunk-netzwgv1.js";
184
+ import {
185
+ __esm
186
+ } from "./chunk-qp2qdcda.js";
187
+
188
+ // src/utils/hooks/registerSkillHooks.ts
189
+ function registerSkillHooks(setAppState, sessionId, hooks, skillName, skillRoot) {
190
+ let registeredCount = 0;
191
+ for (const eventName of HOOK_EVENTS) {
192
+ const matchers = hooks[eventName];
193
+ if (!matchers)
194
+ continue;
195
+ for (const matcher of matchers) {
196
+ for (const hook of matcher.hooks) {
197
+ const onHookSuccess = hook.once ? () => {
198
+ logForDebugging(`Removing one-shot hook for event ${eventName} in skill '${skillName}'`);
199
+ removeSessionHook(setAppState, sessionId, eventName, hook);
200
+ } : undefined;
201
+ addSessionHook(setAppState, sessionId, eventName, matcher.matcher || "", hook, onHookSuccess, skillRoot);
202
+ registeredCount++;
203
+ }
204
+ }
205
+ }
206
+ if (registeredCount > 0) {
207
+ logForDebugging(`Registered ${registeredCount} hooks from skill '${skillName}'`);
208
+ }
209
+ }
210
+ var init_registerSkillHooks = __esm(() => {
211
+ init_agentSdkTypes();
212
+ init_debug();
213
+ init_sessionHooks();
214
+ });
215
+
216
+ // src/utils/processUserInput/processSlashCommand.tsx
217
+ import { randomUUID } from "crypto";
218
+ async function executeForkedSlashCommand(command, args, context, precedingInputBlocks, setToolJSX, canUseTool) {
219
+ const agentId = createAgentId();
220
+ const pluginMarketplace = command.pluginInfo ? parsePluginIdentifier(command.pluginInfo.repository).marketplace : undefined;
221
+ logEvent("tengu_slash_command_forked", {
222
+ command_name: command.name,
223
+ invocation_trigger: "user-slash",
224
+ ...command.pluginInfo && {
225
+ _PROTO_plugin_name: command.pluginInfo.pluginManifest.name,
226
+ ...pluginMarketplace && {
227
+ _PROTO_marketplace_name: pluginMarketplace
228
+ },
229
+ ...buildPluginCommandTelemetryFields(command.pluginInfo)
230
+ }
231
+ });
232
+ const { skillContent, modifiedGetAppState, baseAgent, promptMessages } = await prepareForkedCommandContext(command, args, context);
233
+ const agentDefinition = command.effort !== undefined ? { ...baseAgent, effort: command.effort } : baseAgent;
234
+ logForDebugging(`Executing forked slash command /${command.name} with agent ${agentDefinition.agentType}`);
235
+ if (false) {}
236
+ const agentMessages = [];
237
+ const progressMessages = [];
238
+ const parentToolUseID = `forked-command-${command.name}`;
239
+ let toolUseCounter = 0;
240
+ const createProgressMessage = (message) => {
241
+ toolUseCounter++;
242
+ return {
243
+ type: "progress",
244
+ data: {
245
+ message,
246
+ type: "agent_progress",
247
+ prompt: skillContent,
248
+ agentId
249
+ },
250
+ parentToolUseID,
251
+ toolUseID: `${parentToolUseID}-${toolUseCounter}`,
252
+ timestamp: new Date().toISOString(),
253
+ uuid: randomUUID()
254
+ };
255
+ };
256
+ const updateProgress = () => {
257
+ setToolJSX({
258
+ jsx: renderToolUseProgressMessage(progressMessages, {
259
+ tools: context.options.tools,
260
+ verbose: false
261
+ }),
262
+ shouldHidePromptInput: false,
263
+ shouldContinueAnimation: true,
264
+ showSpinner: true
265
+ });
266
+ };
267
+ updateProgress();
268
+ try {
269
+ for await (const message of runAgent({
270
+ agentDefinition,
271
+ promptMessages,
272
+ toolUseContext: {
273
+ ...context,
274
+ getAppState: modifiedGetAppState
275
+ },
276
+ canUseTool,
277
+ isAsync: false,
278
+ querySource: "agent:custom",
279
+ model: command.model,
280
+ availableTools: context.options.tools
281
+ })) {
282
+ agentMessages.push(message);
283
+ const normalizedNew = normalizeMessages([message]);
284
+ if (message.type === "assistant") {
285
+ const contentLength = getAssistantMessageContentLength(message);
286
+ if (contentLength > 0) {
287
+ context.setResponseLength((len) => len + contentLength);
288
+ }
289
+ const normalizedMsg = normalizedNew[0];
290
+ if (normalizedMsg && normalizedMsg.type === "assistant") {
291
+ progressMessages.push(createProgressMessage(message));
292
+ updateProgress();
293
+ }
294
+ }
295
+ if (message.type === "user") {
296
+ const normalizedMsg = normalizedNew[0];
297
+ if (normalizedMsg && normalizedMsg.type === "user") {
298
+ progressMessages.push(createProgressMessage(normalizedMsg));
299
+ updateProgress();
300
+ }
301
+ }
302
+ }
303
+ } finally {
304
+ setToolJSX(null);
305
+ }
306
+ let resultText = extractResultText(agentMessages, "Command completed");
307
+ logForDebugging(`Forked slash command /${command.name} completed with agent ${agentId}`);
308
+ if (process.env.USER_TYPE === "ant") {
309
+ resultText = `[ANT-ONLY] API calls: ${getDisplayPath(getDumpPromptsPath(agentId))}
310
+ ${resultText}`;
311
+ }
312
+ const messages = [
313
+ createUserMessage({
314
+ content: prepareUserContent({
315
+ inputString: `/${getCommandName(command)} ${args}`.trim(),
316
+ precedingInputBlocks
317
+ })
318
+ }),
319
+ createUserMessage({
320
+ content: `<local-command-stdout>
321
+ ${resultText}
322
+ </local-command-stdout>`
323
+ })
324
+ ];
325
+ return {
326
+ messages,
327
+ shouldQuery: false,
328
+ command,
329
+ resultText
330
+ };
331
+ }
332
+ function looksLikeCommand(commandName) {
333
+ return !/[^a-zA-Z0-9:\-_]/.test(commandName);
334
+ }
335
+ async function processSlashCommand(inputString, precedingInputBlocks, imageContentBlocks, attachmentMessages, context, setToolJSX, uuid, isAlreadyProcessing, canUseTool) {
336
+ const parsed = parseSlashCommand(inputString);
337
+ if (!parsed) {
338
+ logEvent("tengu_input_slash_missing", {});
339
+ const errorMessage = "Commands are in the form `/command [args]`";
340
+ return {
341
+ messages: [
342
+ createSyntheticUserCaveatMessage(),
343
+ ...attachmentMessages,
344
+ createUserMessage({
345
+ content: prepareUserContent({
346
+ inputString: errorMessage,
347
+ precedingInputBlocks
348
+ })
349
+ })
350
+ ],
351
+ shouldQuery: false,
352
+ resultText: errorMessage
353
+ };
354
+ }
355
+ const { commandName, args: parsedArgs, isMcp } = parsed;
356
+ const sanitizedCommandName = isMcp ? "mcp" : !builtInCommandNames().has(commandName) ? "custom" : commandName;
357
+ if (!hasCommand(commandName, context.options.commands)) {
358
+ let isFilePath = false;
359
+ try {
360
+ await getFsImplementation().stat(`/${commandName}`);
361
+ isFilePath = true;
362
+ } catch {}
363
+ if (looksLikeCommand(commandName) && !isFilePath) {
364
+ logEvent("tengu_input_slash_invalid", {
365
+ input: commandName
366
+ });
367
+ const unknownMessage = `Unknown skill: ${commandName}`;
368
+ return {
369
+ messages: [
370
+ createSyntheticUserCaveatMessage(),
371
+ ...attachmentMessages,
372
+ createUserMessage({
373
+ content: prepareUserContent({
374
+ inputString: unknownMessage,
375
+ precedingInputBlocks
376
+ })
377
+ }),
378
+ ...parsedArgs ? [
379
+ createSystemMessage(`Args from unknown skill: ${parsedArgs}`, "warning")
380
+ ] : []
381
+ ],
382
+ shouldQuery: false,
383
+ resultText: unknownMessage
384
+ };
385
+ }
386
+ const promptId = randomUUID();
387
+ setPromptId(promptId);
388
+ logEvent("tengu_input_prompt", {});
389
+ logOTelEvent("user_prompt", {
390
+ prompt_length: String(inputString.length),
391
+ prompt: redactIfDisabled(inputString),
392
+ "prompt.id": promptId
393
+ });
394
+ return {
395
+ messages: [
396
+ createUserMessage({
397
+ content: prepareUserContent({ inputString, precedingInputBlocks }),
398
+ uuid
399
+ }),
400
+ ...attachmentMessages
401
+ ],
402
+ shouldQuery: true
403
+ };
404
+ }
405
+ const {
406
+ messages: newMessages,
407
+ shouldQuery: messageShouldQuery,
408
+ allowedTools,
409
+ model,
410
+ effort,
411
+ command: returnedCommand,
412
+ resultText,
413
+ nextInput,
414
+ submitNextInput
415
+ } = await getMessagesForSlashCommand(commandName, parsedArgs, setToolJSX, context, precedingInputBlocks, imageContentBlocks, isAlreadyProcessing, canUseTool, uuid);
416
+ if (newMessages.length === 0) {
417
+ const eventData2 = {
418
+ input: sanitizedCommandName
419
+ };
420
+ if (returnedCommand.type === "prompt" && returnedCommand.pluginInfo) {
421
+ const { pluginManifest, repository } = returnedCommand.pluginInfo;
422
+ const { marketplace } = parsePluginIdentifier(repository);
423
+ const isOfficial = isOfficialMarketplaceName(marketplace);
424
+ eventData2._PROTO_plugin_name = pluginManifest.name;
425
+ if (marketplace) {
426
+ eventData2._PROTO_marketplace_name = marketplace;
427
+ }
428
+ eventData2.plugin_repository = isOfficial ? repository : "third-party";
429
+ eventData2.plugin_name = isOfficial ? pluginManifest.name : "third-party";
430
+ if (isOfficial && pluginManifest.version) {
431
+ eventData2.plugin_version = pluginManifest.version;
432
+ }
433
+ Object.assign(eventData2, buildPluginCommandTelemetryFields(returnedCommand.pluginInfo));
434
+ }
435
+ logEvent("tengu_input_command", {
436
+ ...eventData2,
437
+ invocation_trigger: "user-slash",
438
+ ...process.env.USER_TYPE === "ant" && {
439
+ skill_name: commandName,
440
+ ...returnedCommand.type === "prompt" && {
441
+ skill_source: returnedCommand.source
442
+ },
443
+ ...returnedCommand.loadedFrom && {
444
+ skill_loaded_from: returnedCommand.loadedFrom
445
+ },
446
+ ...returnedCommand.kind && {
447
+ skill_kind: returnedCommand.kind
448
+ }
449
+ }
450
+ });
451
+ return {
452
+ messages: [],
453
+ shouldQuery: false,
454
+ model,
455
+ nextInput,
456
+ submitNextInput
457
+ };
458
+ }
459
+ if (newMessages.length === 2 && newMessages[1].type === "user" && typeof newMessages[1].message.content === "string" && newMessages[1].message.content.startsWith("Unknown command:")) {
460
+ const looksLikeFilePath = inputString.startsWith("/var") || inputString.startsWith("/tmp") || inputString.startsWith("/private");
461
+ if (!looksLikeFilePath) {
462
+ logEvent("tengu_input_slash_invalid", {
463
+ input: commandName
464
+ });
465
+ }
466
+ return {
467
+ messages: [createSyntheticUserCaveatMessage(), ...newMessages],
468
+ shouldQuery: messageShouldQuery,
469
+ allowedTools,
470
+ model
471
+ };
472
+ }
473
+ const eventData = {
474
+ input: sanitizedCommandName
475
+ };
476
+ if (returnedCommand.type === "prompt" && returnedCommand.pluginInfo) {
477
+ const { pluginManifest, repository } = returnedCommand.pluginInfo;
478
+ const { marketplace } = parsePluginIdentifier(repository);
479
+ const isOfficial = isOfficialMarketplaceName(marketplace);
480
+ eventData._PROTO_plugin_name = pluginManifest.name;
481
+ if (marketplace) {
482
+ eventData._PROTO_marketplace_name = marketplace;
483
+ }
484
+ eventData.plugin_repository = isOfficial ? repository : "third-party";
485
+ eventData.plugin_name = isOfficial ? pluginManifest.name : "third-party";
486
+ if (isOfficial && pluginManifest.version) {
487
+ eventData.plugin_version = pluginManifest.version;
488
+ }
489
+ Object.assign(eventData, buildPluginCommandTelemetryFields(returnedCommand.pluginInfo));
490
+ }
491
+ logEvent("tengu_input_command", {
492
+ ...eventData,
493
+ invocation_trigger: "user-slash",
494
+ ...process.env.USER_TYPE === "ant" && {
495
+ skill_name: commandName,
496
+ ...returnedCommand.type === "prompt" && {
497
+ skill_source: returnedCommand.source
498
+ },
499
+ ...returnedCommand.loadedFrom && {
500
+ skill_loaded_from: returnedCommand.loadedFrom
501
+ },
502
+ ...returnedCommand.kind && {
503
+ skill_kind: returnedCommand.kind
504
+ }
505
+ }
506
+ });
507
+ const isCompactResult = newMessages.length > 0 && newMessages[0] && isCompactBoundaryMessage(newMessages[0]);
508
+ return {
509
+ messages: messageShouldQuery || newMessages.every(isSystemLocalCommandMessage) || isCompactResult ? newMessages : [createSyntheticUserCaveatMessage(), ...newMessages],
510
+ shouldQuery: messageShouldQuery,
511
+ allowedTools,
512
+ model,
513
+ effort,
514
+ resultText,
515
+ nextInput,
516
+ submitNextInput
517
+ };
518
+ }
519
+ async function getMessagesForSlashCommand(commandName, args, setToolJSX, context, precedingInputBlocks, imageContentBlocks, _isAlreadyProcessing, canUseTool, uuid) {
520
+ const command = getCommand(commandName, context.options.commands);
521
+ if (command.type === "prompt" && command.userInvocable !== false) {
522
+ recordSkillUsage(commandName);
523
+ }
524
+ if (command.userInvocable === false) {
525
+ return {
526
+ messages: [
527
+ createUserMessage({
528
+ content: prepareUserContent({
529
+ inputString: `/${commandName}`,
530
+ precedingInputBlocks
531
+ })
532
+ }),
533
+ createUserMessage({
534
+ content: `This skill can only be invoked by Claude, not directly by users. Ask Claude to use the "${commandName}" skill for you.`
535
+ })
536
+ ],
537
+ shouldQuery: false,
538
+ command
539
+ };
540
+ }
541
+ try {
542
+ switch (command.type) {
543
+ case "local-jsx": {
544
+ return new Promise((resolve) => {
545
+ let doneWasCalled = false;
546
+ const onDone = (result, options) => {
547
+ doneWasCalled = true;
548
+ if (options?.display === "skip") {
549
+ resolve({
550
+ messages: [],
551
+ shouldQuery: false,
552
+ command,
553
+ nextInput: options?.nextInput,
554
+ submitNextInput: options?.submitNextInput
555
+ });
556
+ return;
557
+ }
558
+ const metaMessages = (options?.metaMessages ?? []).map((content) => createUserMessage({ content, isMeta: true }));
559
+ const skipTranscript = isFullscreenEnvEnabled() && typeof result === "string" && result.endsWith(" dismissed");
560
+ resolve({
561
+ messages: options?.display === "system" ? skipTranscript ? metaMessages : [
562
+ createCommandInputMessage(formatCommandInput(command, args)),
563
+ createCommandInputMessage(`<local-command-stdout>${result}</local-command-stdout>`),
564
+ ...metaMessages
565
+ ] : [
566
+ createUserMessage({
567
+ content: prepareUserContent({
568
+ inputString: formatCommandInput(command, args),
569
+ precedingInputBlocks
570
+ })
571
+ }),
572
+ result ? createUserMessage({
573
+ content: `<local-command-stdout>${result}</local-command-stdout>`
574
+ }) : createUserMessage({
575
+ content: `<local-command-stdout>${NO_CONTENT_MESSAGE}</local-command-stdout>`
576
+ }),
577
+ ...metaMessages
578
+ ],
579
+ shouldQuery: options?.shouldQuery ?? false,
580
+ command,
581
+ nextInput: options?.nextInput,
582
+ submitNextInput: options?.submitNextInput
583
+ });
584
+ };
585
+ command.load().then((mod) => mod.call(onDone, { ...context, canUseTool }, args)).then((jsx) => {
586
+ if (jsx == null)
587
+ return;
588
+ if (context.options.isNonInteractiveSession) {
589
+ resolve({
590
+ messages: [],
591
+ shouldQuery: false,
592
+ command
593
+ });
594
+ return;
595
+ }
596
+ if (doneWasCalled)
597
+ return;
598
+ setToolJSX({
599
+ jsx,
600
+ shouldHidePromptInput: true,
601
+ showSpinner: false,
602
+ isLocalJSXCommand: true,
603
+ isImmediate: command.immediate === true
604
+ });
605
+ }).catch((e) => {
606
+ logError(e);
607
+ if (doneWasCalled)
608
+ return;
609
+ doneWasCalled = true;
610
+ setToolJSX({
611
+ jsx: null,
612
+ shouldHidePromptInput: false,
613
+ clearLocalJSX: true
614
+ });
615
+ resolve({ messages: [], shouldQuery: false, command });
616
+ });
617
+ });
618
+ }
619
+ case "local": {
620
+ const displayArgs = command.isSensitive && args.trim() ? "***" : args;
621
+ const userMessage = createUserMessage({
622
+ content: prepareUserContent({
623
+ inputString: formatCommandInput(command, displayArgs),
624
+ precedingInputBlocks
625
+ })
626
+ });
627
+ try {
628
+ const syntheticCaveatMessage = createSyntheticUserCaveatMessage();
629
+ const mod = await command.load();
630
+ const result = await mod.call(args, context);
631
+ if (result.type === "skip") {
632
+ return {
633
+ messages: [],
634
+ shouldQuery: false,
635
+ command
636
+ };
637
+ }
638
+ if (result.type === "compact") {
639
+ const slashCommandMessages = [
640
+ syntheticCaveatMessage,
641
+ userMessage,
642
+ ...result.displayText ? [
643
+ createUserMessage({
644
+ content: `<local-command-stdout>${result.displayText}</local-command-stdout>`,
645
+ timestamp: new Date(Date.now() + 100).toISOString()
646
+ })
647
+ ] : []
648
+ ];
649
+ const compactionResultWithSlashMessages = {
650
+ ...result.compactionResult,
651
+ messagesToKeep: [
652
+ ...result.compactionResult.messagesToKeep ?? [],
653
+ ...slashCommandMessages
654
+ ]
655
+ };
656
+ resetMicrocompactState();
657
+ return {
658
+ messages: buildPostCompactMessages(compactionResultWithSlashMessages),
659
+ shouldQuery: false,
660
+ command
661
+ };
662
+ }
663
+ return {
664
+ messages: [
665
+ userMessage,
666
+ createCommandInputMessage(`<local-command-stdout>${result.value}</local-command-stdout>`)
667
+ ],
668
+ shouldQuery: false,
669
+ command,
670
+ resultText: result.value
671
+ };
672
+ } catch (e) {
673
+ logError(e);
674
+ return {
675
+ messages: [
676
+ userMessage,
677
+ createCommandInputMessage(`<local-command-stderr>${String(e)}</local-command-stderr>`)
678
+ ],
679
+ shouldQuery: false,
680
+ command
681
+ };
682
+ }
683
+ }
684
+ case "prompt": {
685
+ try {
686
+ if (command.context === "fork") {
687
+ return await executeForkedSlashCommand(command, args, context, precedingInputBlocks, setToolJSX, canUseTool ?? hasPermissionsToUseTool);
688
+ }
689
+ return await getMessagesForPromptSlashCommand(command, args, context, precedingInputBlocks, imageContentBlocks, uuid);
690
+ } catch (e) {
691
+ if (e instanceof AbortError) {
692
+ return {
693
+ messages: [
694
+ createUserMessage({
695
+ content: prepareUserContent({
696
+ inputString: formatCommandInput(command, args),
697
+ precedingInputBlocks
698
+ })
699
+ }),
700
+ createUserInterruptionMessage({ toolUse: false })
701
+ ],
702
+ shouldQuery: false,
703
+ command
704
+ };
705
+ }
706
+ return {
707
+ messages: [
708
+ createUserMessage({
709
+ content: prepareUserContent({
710
+ inputString: formatCommandInput(command, args),
711
+ precedingInputBlocks
712
+ })
713
+ }),
714
+ createUserMessage({
715
+ content: `<local-command-stderr>${String(e)}</local-command-stderr>`
716
+ })
717
+ ],
718
+ shouldQuery: false,
719
+ command
720
+ };
721
+ }
722
+ }
723
+ }
724
+ } catch (e) {
725
+ if (e instanceof MalformedCommandError) {
726
+ return {
727
+ messages: [
728
+ createUserMessage({
729
+ content: prepareUserContent({
730
+ inputString: e.message,
731
+ precedingInputBlocks
732
+ })
733
+ })
734
+ ],
735
+ shouldQuery: false,
736
+ command
737
+ };
738
+ }
739
+ throw e;
740
+ }
741
+ }
742
+ function formatCommandInput(command, args) {
743
+ return formatCommandInputTags(getCommandName(command), args);
744
+ }
745
+ function formatSkillLoadingMetadata(skillName, _progressMessage = "loading") {
746
+ return [
747
+ `<${COMMAND_MESSAGE_TAG}>${skillName}</${COMMAND_MESSAGE_TAG}>`,
748
+ `<${COMMAND_NAME_TAG}>${skillName}</${COMMAND_NAME_TAG}>`,
749
+ `<skill-format>true</skill-format>`
750
+ ].join(`
751
+ `);
752
+ }
753
+ function formatSlashCommandLoadingMetadata(commandName, args) {
754
+ return [
755
+ `<${COMMAND_MESSAGE_TAG}>${commandName}</${COMMAND_MESSAGE_TAG}>`,
756
+ `<${COMMAND_NAME_TAG}>/${commandName}</${COMMAND_NAME_TAG}>`,
757
+ args ? `<command-args>${args}</command-args>` : null
758
+ ].filter(Boolean).join(`
759
+ `);
760
+ }
761
+ function formatCommandLoadingMetadata(command, args) {
762
+ if (command.userInvocable !== false) {
763
+ return formatSlashCommandLoadingMetadata(command.name, args);
764
+ }
765
+ if (command.loadedFrom === "skills" || command.loadedFrom === "plugin" || command.loadedFrom === "mcp") {
766
+ return formatSkillLoadingMetadata(command.name, command.progressMessage);
767
+ }
768
+ return formatSlashCommandLoadingMetadata(command.name, args);
769
+ }
770
+ async function processPromptSlashCommand(commandName, args, commands, context, imageContentBlocks = []) {
771
+ const command = findCommand(commandName, commands);
772
+ if (!command) {
773
+ throw new MalformedCommandError(`Unknown command: ${commandName}`);
774
+ }
775
+ if (command.type !== "prompt") {
776
+ throw new Error(`Unexpected ${command.type} command. Expected 'prompt' command. Use /${commandName} directly in the main conversation.`);
777
+ }
778
+ return getMessagesForPromptSlashCommand(command, args, context, [], imageContentBlocks);
779
+ }
780
+ async function getMessagesForPromptSlashCommand(command, args, context, precedingInputBlocks = [], imageContentBlocks = [], uuid) {
781
+ if (false) {}
782
+ const result = await command.getPromptForCommand(args, context);
783
+ const hooksAllowedForThisSkill = !isRestrictedToPluginOnly("hooks") || isSourceAdminTrusted(command.source);
784
+ if (command.hooks && hooksAllowedForThisSkill) {
785
+ const sessionId = getSessionId();
786
+ registerSkillHooks(context.setAppState, sessionId, command.hooks, command.name, command.type === "prompt" ? command.skillRoot : undefined);
787
+ }
788
+ const skillPath = command.source ? `${command.source}:${command.name}` : command.name;
789
+ const skillContent = result.filter((b) => b.type === "text").map((b) => b.text).join(`
790
+
791
+ `);
792
+ addInvokedSkill(command.name, skillPath, skillContent, getAgentContext()?.agentId ?? null);
793
+ const metadata = formatCommandLoadingMetadata(command, args);
794
+ const additionalAllowedTools = parseToolListFromCLI(command.allowedTools ?? []);
795
+ const mainMessageContent = imageContentBlocks.length > 0 || precedingInputBlocks.length > 0 ? [...imageContentBlocks, ...precedingInputBlocks, ...result] : result;
796
+ const attachmentMessages = await toArray(getAttachmentMessages(result.filter((block) => block.type === "text").map((block) => block.text).join(" "), context, null, [], context.messages, "repl_main_thread", { skipSkillDiscovery: true }));
797
+ const messages = [
798
+ createUserMessage({
799
+ content: metadata,
800
+ uuid
801
+ }),
802
+ createUserMessage({
803
+ content: mainMessageContent,
804
+ isMeta: true
805
+ }),
806
+ ...attachmentMessages,
807
+ createAttachmentMessage({
808
+ type: "command_permissions",
809
+ allowedTools: additionalAllowedTools,
810
+ model: command.model
811
+ })
812
+ ];
813
+ return {
814
+ messages,
815
+ shouldQuery: true,
816
+ allowedTools: additionalAllowedTools,
817
+ model: command.model,
818
+ effort: command.effort,
819
+ command
820
+ };
821
+ }
822
+ var init_processSlashCommand = __esm(() => {
823
+ init_state();
824
+ init_commands();
825
+ init_messages();
826
+ init_state();
827
+ init_xml();
828
+ init_analytics();
829
+ init_dumpPrompts();
830
+ init_compact();
831
+ init_microCompact();
832
+ init_runAgent();
833
+ init_UI();
834
+ init_abortController();
835
+ init_agentContext();
836
+ init_attachments();
837
+ init_debug();
838
+ init_envUtils();
839
+ init_errors();
840
+ init_file();
841
+ init_forkedAgent();
842
+ init_fsOperations();
843
+ init_fullscreen();
844
+ init_generators();
845
+ init_registerSkillHooks();
846
+ init_log();
847
+ init_messageQueueManager();
848
+ init_messages2();
849
+ init_permissionSetup();
850
+ init_permissions();
851
+ init_pluginIdentifier();
852
+ init_pluginOnlyPolicy();
853
+ init_slashCommandParsing();
854
+ init_sleep();
855
+ init_skillUsageTracking();
856
+ init_events();
857
+ init_pluginTelemetry();
858
+ init_tokens();
859
+ init_uuid();
860
+ init_workloadContext();
861
+ });
862
+ init_processSlashCommand();
863
+
864
+ export {
865
+ processSlashCommand,
866
+ processPromptSlashCommand,
867
+ looksLikeCommand,
868
+ formatSkillLoadingMetadata
869
+ };