@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,620 @@
1
+ // @bun
2
+ import {
3
+ init_channelNotification,
4
+ init_omit,
5
+ omit_default
6
+ } from "./chunk-6maej1hh.js";
7
+ import {
8
+ clearClaudeAIMcpConfigsCache,
9
+ clearServerCache,
10
+ commandBelongsToServer,
11
+ dedupClaudeAiMcpServers,
12
+ doesEnterpriseMcpConfigExist,
13
+ excludeStalePluginClients,
14
+ fetchClaudeAIMcpConfigsIfEligible,
15
+ fetchCommandsForClient,
16
+ fetchResourcesForClient,
17
+ fetchToolsForClient,
18
+ filterMcpServersByPolicy,
19
+ getClaudeCodeMcpConfigs,
20
+ getMcpToolsCommandsAndResources,
21
+ init_AppState,
22
+ init_claudeai,
23
+ init_client,
24
+ init_config,
25
+ init_elicitationHandler,
26
+ init_messageQueueManager,
27
+ init_notifications,
28
+ init_reject,
29
+ init_utils,
30
+ isMcpServerDisabled,
31
+ reconnectMcpServerImpl,
32
+ registerElicitationHandler,
33
+ reject_default,
34
+ setMcpServerEnabled,
35
+ useAppState,
36
+ useAppStateStore,
37
+ useNotifications,
38
+ useSetAppState
39
+ } from "./chunk-vzgkedm9.js";
40
+ import {
41
+ getMcpPrefix,
42
+ init_growthbook,
43
+ init_mcpStringUtils
44
+ } from "./chunk-tp2jxmcx.js";
45
+ import {
46
+ PromptListChangedNotificationSchema,
47
+ ResourceListChangedNotificationSchema,
48
+ ToolListChangedNotificationSchema,
49
+ init_types
50
+ } from "./chunk-4cp6193g.js";
51
+ import {
52
+ require_jsx_dev_runtime,
53
+ require_react
54
+ } from "./chunk-7sgtxrsc.js";
55
+ import {
56
+ init_analytics,
57
+ logEvent
58
+ } from "./chunk-x8d2ehd7.js";
59
+ import {
60
+ init_log,
61
+ logMCPDebug,
62
+ logMCPError
63
+ } from "./chunk-1nk93fqz.js";
64
+ import {
65
+ errorMessage,
66
+ init_debug,
67
+ init_errors,
68
+ init_slowOperations,
69
+ logForDebugging
70
+ } from "./chunk-phd1qfpc.js";
71
+ import {
72
+ getSessionId,
73
+ init_state
74
+ } from "./chunk-k8vp0atq.js";
75
+ import {
76
+ __esm,
77
+ __toESM
78
+ } from "./chunk-qp2qdcda.js";
79
+
80
+ // src/services/mcp/channelPermissions.ts
81
+ var init_channelPermissions = __esm(() => {
82
+ init_slowOperations();
83
+ init_growthbook();
84
+ });
85
+
86
+ // src/services/mcp/useManageMCPConnections.ts
87
+ import { basename } from "path";
88
+ function getErrorKey(error) {
89
+ const plugin = "plugin" in error ? error.plugin : "no-plugin";
90
+ return `${error.type}:${error.source}:${plugin}`;
91
+ }
92
+ function addErrorsToAppState(setAppState, newErrors) {
93
+ if (newErrors.length === 0)
94
+ return;
95
+ setAppState((prevState) => {
96
+ const existingKeys = new Set(prevState.plugins.errors.map((e) => getErrorKey(e)));
97
+ const uniqueNewErrors = newErrors.filter((error) => !existingKeys.has(getErrorKey(error)));
98
+ if (uniqueNewErrors.length === 0) {
99
+ return prevState;
100
+ }
101
+ return {
102
+ ...prevState,
103
+ plugins: {
104
+ ...prevState.plugins,
105
+ errors: [...prevState.plugins.errors, ...uniqueNewErrors]
106
+ }
107
+ };
108
+ });
109
+ }
110
+ function useManageMCPConnections(dynamicMcpConfig, isStrictMcpConfig = false) {
111
+ const store = useAppStateStore();
112
+ const _authVersion = useAppState((s) => s.authVersion);
113
+ const _pluginReconnectKey = useAppState((s) => s.mcp.pluginReconnectKey);
114
+ const setAppState = useSetAppState();
115
+ const reconnectTimersRef = import_react.useRef(new Map);
116
+ const channelWarnedKindsRef = import_react.useRef(new Set);
117
+ const channelPermCallbacksRef = import_react.useRef(null);
118
+ if (false) {}
119
+ import_react.useEffect(() => {
120
+ if (false) {}
121
+ }, [setAppState]);
122
+ const { addNotification } = useNotifications();
123
+ const MCP_BATCH_FLUSH_MS = 16;
124
+ const pendingUpdatesRef = import_react.useRef([]);
125
+ const flushTimerRef = import_react.useRef(null);
126
+ const flushPendingUpdates = import_react.useCallback(() => {
127
+ flushTimerRef.current = null;
128
+ const updates = pendingUpdatesRef.current;
129
+ if (updates.length === 0)
130
+ return;
131
+ pendingUpdatesRef.current = [];
132
+ setAppState((prevState) => {
133
+ let mcp = prevState.mcp;
134
+ for (const update of updates) {
135
+ const {
136
+ tools: rawTools,
137
+ commands: rawCmds,
138
+ resources: rawRes,
139
+ ...client
140
+ } = update;
141
+ const tools = client.type === "disabled" || client.type === "failed" ? rawTools ?? [] : rawTools;
142
+ const commands = client.type === "disabled" || client.type === "failed" ? rawCmds ?? [] : rawCmds;
143
+ const resources = client.type === "disabled" || client.type === "failed" ? rawRes ?? [] : rawRes;
144
+ const prefix = getMcpPrefix(client.name);
145
+ const existingClientIndex = mcp.clients.findIndex((c) => c.name === client.name);
146
+ const updatedClients = existingClientIndex === -1 ? [...mcp.clients, client] : mcp.clients.map((c) => c.name === client.name ? client : c);
147
+ const updatedTools = tools === undefined ? mcp.tools : [...reject_default(mcp.tools, (t) => t.name?.startsWith(prefix)), ...tools];
148
+ const updatedCommands = commands === undefined ? mcp.commands : [
149
+ ...reject_default(mcp.commands, (c) => commandBelongsToServer(c, client.name)),
150
+ ...commands
151
+ ];
152
+ const updatedResources = resources === undefined ? mcp.resources : {
153
+ ...mcp.resources,
154
+ ...resources.length > 0 ? { [client.name]: resources } : omit_default(mcp.resources, client.name)
155
+ };
156
+ mcp = {
157
+ ...mcp,
158
+ clients: updatedClients,
159
+ tools: updatedTools,
160
+ commands: updatedCommands,
161
+ resources: updatedResources
162
+ };
163
+ }
164
+ return { ...prevState, mcp };
165
+ });
166
+ }, [setAppState]);
167
+ const updateServer = import_react.useCallback((update) => {
168
+ pendingUpdatesRef.current.push(update);
169
+ if (flushTimerRef.current === null) {
170
+ flushTimerRef.current = setTimeout(flushPendingUpdates, MCP_BATCH_FLUSH_MS);
171
+ }
172
+ }, [flushPendingUpdates]);
173
+ const onConnectionAttempt = import_react.useCallback(({
174
+ client,
175
+ tools,
176
+ commands,
177
+ resources
178
+ }) => {
179
+ updateServer({ ...client, tools, commands, resources });
180
+ switch (client.type) {
181
+ case "connected": {
182
+ registerElicitationHandler(client.client, client.name, setAppState);
183
+ client.client.onclose = () => {
184
+ const configType = client.config.type ?? "stdio";
185
+ clearServerCache(client.name, client.config).catch(() => {
186
+ logForDebugging(`Failed to invalidate the server cache: ${client.name}`);
187
+ });
188
+ if (isMcpServerDisabled(client.name)) {
189
+ logMCPDebug(client.name, `Server is disabled, skipping automatic reconnection`);
190
+ return;
191
+ }
192
+ if (configType !== "stdio" && configType !== "sdk") {
193
+ const transportType = getTransportDisplayName(configType);
194
+ logMCPDebug(client.name, `${transportType} transport closed/disconnected, attempting automatic reconnection`);
195
+ const existingTimer = reconnectTimersRef.current.get(client.name);
196
+ if (existingTimer) {
197
+ clearTimeout(existingTimer);
198
+ reconnectTimersRef.current.delete(client.name);
199
+ }
200
+ const reconnectWithBackoff = async () => {
201
+ for (let attempt = 1;attempt <= MAX_RECONNECT_ATTEMPTS; attempt++) {
202
+ if (isMcpServerDisabled(client.name)) {
203
+ logMCPDebug(client.name, `Server disabled during reconnection, stopping retry`);
204
+ reconnectTimersRef.current.delete(client.name);
205
+ return;
206
+ }
207
+ updateServer({
208
+ ...client,
209
+ type: "pending",
210
+ reconnectAttempt: attempt,
211
+ maxReconnectAttempts: MAX_RECONNECT_ATTEMPTS
212
+ });
213
+ const reconnectStartTime = Date.now();
214
+ try {
215
+ const result = await reconnectMcpServerImpl(client.name, client.config);
216
+ const elapsed = Date.now() - reconnectStartTime;
217
+ if (result.client.type === "connected") {
218
+ logMCPDebug(client.name, `${transportType} reconnection successful after ${elapsed}ms (attempt ${attempt})`);
219
+ reconnectTimersRef.current.delete(client.name);
220
+ onConnectionAttempt(result);
221
+ return;
222
+ }
223
+ logMCPDebug(client.name, `${transportType} reconnection attempt ${attempt} completed with status: ${result.client.type}`);
224
+ if (attempt === MAX_RECONNECT_ATTEMPTS) {
225
+ logMCPDebug(client.name, `Max reconnection attempts (${MAX_RECONNECT_ATTEMPTS}) reached, giving up`);
226
+ reconnectTimersRef.current.delete(client.name);
227
+ onConnectionAttempt(result);
228
+ return;
229
+ }
230
+ } catch (error) {
231
+ const elapsed = Date.now() - reconnectStartTime;
232
+ logMCPError(client.name, `${transportType} reconnection attempt ${attempt} failed after ${elapsed}ms: ${error}`);
233
+ if (attempt === MAX_RECONNECT_ATTEMPTS) {
234
+ logMCPDebug(client.name, `Max reconnection attempts (${MAX_RECONNECT_ATTEMPTS}) reached, giving up`);
235
+ reconnectTimersRef.current.delete(client.name);
236
+ updateServer({ ...client, type: "failed" });
237
+ return;
238
+ }
239
+ }
240
+ const backoffMs = Math.min(INITIAL_BACKOFF_MS * Math.pow(2, attempt - 1), MAX_BACKOFF_MS);
241
+ logMCPDebug(client.name, `Scheduling reconnection attempt ${attempt + 1} in ${backoffMs}ms`);
242
+ await new Promise((resolve) => {
243
+ const timer = setTimeout(resolve, backoffMs);
244
+ reconnectTimersRef.current.set(client.name, timer);
245
+ });
246
+ }
247
+ };
248
+ reconnectWithBackoff();
249
+ } else {
250
+ updateServer({ ...client, type: "failed" });
251
+ }
252
+ };
253
+ if (false) {
254
+ switch (gate.action) {
255
+ case "register":
256
+ case "skip":
257
+ }
258
+ }
259
+ if (client.capabilities?.tools?.listChanged) {
260
+ client.client.setNotificationHandler(ToolListChangedNotificationSchema, async () => {
261
+ logMCPDebug(client.name, `Received tools/list_changed notification, refreshing tools`);
262
+ try {
263
+ const previousToolsPromise = fetchToolsForClient.cache.get(client.name);
264
+ fetchToolsForClient.cache.delete(client.name);
265
+ const newTools = await fetchToolsForClient(client);
266
+ const newCount = newTools.length;
267
+ if (previousToolsPromise) {
268
+ previousToolsPromise.then((previousTools) => {
269
+ logEvent("tengu_mcp_list_changed", {
270
+ type: "tools",
271
+ previousCount: previousTools.length,
272
+ newCount
273
+ });
274
+ }, () => {
275
+ logEvent("tengu_mcp_list_changed", {
276
+ type: "tools",
277
+ newCount
278
+ });
279
+ });
280
+ } else {
281
+ logEvent("tengu_mcp_list_changed", {
282
+ type: "tools",
283
+ newCount
284
+ });
285
+ }
286
+ updateServer({ ...client, tools: newTools });
287
+ } catch (error) {
288
+ logMCPError(client.name, `Failed to refresh tools after list_changed notification: ${errorMessage(error)}`);
289
+ }
290
+ });
291
+ }
292
+ if (client.capabilities?.prompts?.listChanged) {
293
+ client.client.setNotificationHandler(PromptListChangedNotificationSchema, async () => {
294
+ logMCPDebug(client.name, `Received prompts/list_changed notification, refreshing prompts`);
295
+ logEvent("tengu_mcp_list_changed", {
296
+ type: "prompts"
297
+ });
298
+ try {
299
+ fetchCommandsForClient.cache.delete(client.name);
300
+ const [mcpPrompts, mcpSkills] = await Promise.all([
301
+ fetchCommandsForClient(client),
302
+ Promise.resolve([])
303
+ ]);
304
+ updateServer({
305
+ ...client,
306
+ commands: [...mcpPrompts, ...mcpSkills]
307
+ });
308
+ clearSkillIndexCache?.();
309
+ } catch (error) {
310
+ logMCPError(client.name, `Failed to refresh prompts after list_changed notification: ${errorMessage(error)}`);
311
+ }
312
+ });
313
+ }
314
+ if (client.capabilities?.resources?.listChanged) {
315
+ client.client.setNotificationHandler(ResourceListChangedNotificationSchema, async () => {
316
+ logMCPDebug(client.name, `Received resources/list_changed notification, refreshing resources`);
317
+ logEvent("tengu_mcp_list_changed", {
318
+ type: "resources"
319
+ });
320
+ try {
321
+ fetchResourcesForClient.cache.delete(client.name);
322
+ if (false) {} else {
323
+ const newResources = await fetchResourcesForClient(client);
324
+ updateServer({ ...client, resources: newResources });
325
+ }
326
+ } catch (error) {
327
+ logMCPError(client.name, `Failed to refresh resources after list_changed notification: ${errorMessage(error)}`);
328
+ }
329
+ });
330
+ }
331
+ break;
332
+ }
333
+ case "needs-auth":
334
+ case "failed":
335
+ case "pending":
336
+ case "disabled":
337
+ break;
338
+ }
339
+ }, [updateServer]);
340
+ const sessionId = getSessionId();
341
+ import_react.useEffect(() => {
342
+ async function initializeServersAsPending() {
343
+ const { servers: existingConfigs, errors: mcpErrors } = isStrictMcpConfig ? { servers: {}, errors: [] } : await getClaudeCodeMcpConfigs(dynamicMcpConfig);
344
+ const configs = { ...existingConfigs, ...dynamicMcpConfig };
345
+ addErrorsToAppState(setAppState, mcpErrors);
346
+ setAppState((prevState) => {
347
+ const { stale, ...mcpWithoutStale } = excludeStalePluginClients(prevState.mcp, configs);
348
+ for (const s of stale) {
349
+ const timer = reconnectTimersRef.current.get(s.name);
350
+ if (timer) {
351
+ clearTimeout(timer);
352
+ reconnectTimersRef.current.delete(s.name);
353
+ }
354
+ if (s.type === "connected") {
355
+ s.client.onclose = undefined;
356
+ clearServerCache(s.name, s.config).catch(() => {});
357
+ }
358
+ }
359
+ const existingServerNames = new Set(mcpWithoutStale.clients.map((c) => c.name));
360
+ const newClients = Object.entries(configs).filter(([name]) => !existingServerNames.has(name)).map(([name, config]) => ({
361
+ name,
362
+ type: isMcpServerDisabled(name) ? "disabled" : "pending",
363
+ config
364
+ }));
365
+ if (newClients.length === 0 && stale.length === 0) {
366
+ return prevState;
367
+ }
368
+ return {
369
+ ...prevState,
370
+ mcp: {
371
+ ...prevState.mcp,
372
+ ...mcpWithoutStale,
373
+ clients: [...mcpWithoutStale.clients, ...newClients]
374
+ }
375
+ };
376
+ });
377
+ }
378
+ initializeServersAsPending().catch((error) => {
379
+ logMCPError("useManageMCPConnections", `Failed to initialize servers as pending: ${errorMessage(error)}`);
380
+ });
381
+ }, [
382
+ isStrictMcpConfig,
383
+ dynamicMcpConfig,
384
+ setAppState,
385
+ sessionId,
386
+ _pluginReconnectKey
387
+ ]);
388
+ import_react.useEffect(() => {
389
+ let cancelled = false;
390
+ async function loadAndConnectMcpConfigs() {
391
+ let claudeaiPromise;
392
+ if (isStrictMcpConfig || doesEnterpriseMcpConfigExist()) {
393
+ claudeaiPromise = Promise.resolve({});
394
+ } else {
395
+ clearClaudeAIMcpConfigsCache();
396
+ claudeaiPromise = fetchClaudeAIMcpConfigsIfEligible();
397
+ }
398
+ const { servers: claudeCodeConfigs, errors: mcpErrors } = isStrictMcpConfig ? { servers: {}, errors: [] } : await getClaudeCodeMcpConfigs(dynamicMcpConfig, claudeaiPromise);
399
+ if (cancelled)
400
+ return;
401
+ addErrorsToAppState(setAppState, mcpErrors);
402
+ const configs = { ...claudeCodeConfigs, ...dynamicMcpConfig };
403
+ const enabledConfigs = Object.fromEntries(Object.entries(configs).filter(([name]) => !isMcpServerDisabled(name)));
404
+ getMcpToolsCommandsAndResources(onConnectionAttempt, enabledConfigs).catch((error) => {
405
+ logMCPError("useManageMcpConnections", `Failed to get MCP resources: ${errorMessage(error)}`);
406
+ });
407
+ let claudeaiConfigs = {};
408
+ if (!isStrictMcpConfig) {
409
+ claudeaiConfigs = filterMcpServersByPolicy(await claudeaiPromise).allowed;
410
+ if (cancelled)
411
+ return;
412
+ if (Object.keys(claudeaiConfigs).length > 0) {
413
+ const { servers: dedupedClaudeAi } = dedupClaudeAiMcpServers(claudeaiConfigs, configs);
414
+ claudeaiConfigs = dedupedClaudeAi;
415
+ }
416
+ if (Object.keys(claudeaiConfigs).length > 0) {
417
+ setAppState((prevState) => {
418
+ const existingServerNames = new Set(prevState.mcp.clients.map((c) => c.name));
419
+ const newClients = Object.entries(claudeaiConfigs).filter(([name]) => !existingServerNames.has(name)).map(([name, config]) => ({
420
+ name,
421
+ type: isMcpServerDisabled(name) ? "disabled" : "pending",
422
+ config
423
+ }));
424
+ if (newClients.length === 0)
425
+ return prevState;
426
+ return {
427
+ ...prevState,
428
+ mcp: {
429
+ ...prevState.mcp,
430
+ clients: [...prevState.mcp.clients, ...newClients]
431
+ }
432
+ };
433
+ });
434
+ const enabledClaudeaiConfigs = Object.fromEntries(Object.entries(claudeaiConfigs).filter(([name]) => !isMcpServerDisabled(name)));
435
+ getMcpToolsCommandsAndResources(onConnectionAttempt, enabledClaudeaiConfigs).catch((error) => {
436
+ logMCPError("useManageMcpConnections", `Failed to get claude.ai MCP resources: ${errorMessage(error)}`);
437
+ });
438
+ }
439
+ }
440
+ const allConfigs = { ...configs, ...claudeaiConfigs };
441
+ const counts = {
442
+ enterprise: 0,
443
+ global: 0,
444
+ project: 0,
445
+ user: 0,
446
+ plugin: 0,
447
+ claudeai: 0
448
+ };
449
+ const stdioCommands = [];
450
+ for (const [name, serverConfig] of Object.entries(allConfigs)) {
451
+ if (serverConfig.scope === "enterprise")
452
+ counts.enterprise++;
453
+ else if (serverConfig.scope === "user")
454
+ counts.global++;
455
+ else if (serverConfig.scope === "project")
456
+ counts.project++;
457
+ else if (serverConfig.scope === "local")
458
+ counts.user++;
459
+ else if (serverConfig.scope === "dynamic")
460
+ counts.plugin++;
461
+ else if (serverConfig.scope === "claudeai")
462
+ counts.claudeai++;
463
+ if (process.env.USER_TYPE === "ant" && !isMcpServerDisabled(name) && (serverConfig.type === undefined || serverConfig.type === "stdio") && "command" in serverConfig) {
464
+ stdioCommands.push(basename(serverConfig.command));
465
+ }
466
+ }
467
+ logEvent("tengu_mcp_servers", {
468
+ ...counts,
469
+ ...process.env.USER_TYPE === "ant" && stdioCommands.length > 0 ? {
470
+ stdio_commands: stdioCommands.sort().join(",")
471
+ } : {}
472
+ });
473
+ }
474
+ loadAndConnectMcpConfigs();
475
+ return () => {
476
+ cancelled = true;
477
+ };
478
+ }, [
479
+ isStrictMcpConfig,
480
+ dynamicMcpConfig,
481
+ onConnectionAttempt,
482
+ setAppState,
483
+ _authVersion,
484
+ sessionId,
485
+ _pluginReconnectKey
486
+ ]);
487
+ import_react.useEffect(() => {
488
+ const timers = reconnectTimersRef.current;
489
+ return () => {
490
+ for (const timer of timers.values()) {
491
+ clearTimeout(timer);
492
+ }
493
+ timers.clear();
494
+ if (flushTimerRef.current !== null) {
495
+ clearTimeout(flushTimerRef.current);
496
+ flushTimerRef.current = null;
497
+ flushPendingUpdates();
498
+ }
499
+ };
500
+ }, [flushPendingUpdates]);
501
+ const reconnectMcpServer = import_react.useCallback(async (serverName) => {
502
+ const client = store.getState().mcp.clients.find((c) => c.name === serverName);
503
+ if (!client) {
504
+ throw new Error(`MCP server ${serverName} not found`);
505
+ }
506
+ const existingTimer = reconnectTimersRef.current.get(serverName);
507
+ if (existingTimer) {
508
+ clearTimeout(existingTimer);
509
+ reconnectTimersRef.current.delete(serverName);
510
+ }
511
+ const result = await reconnectMcpServerImpl(serverName, client.config);
512
+ onConnectionAttempt(result);
513
+ return result;
514
+ }, [store, onConnectionAttempt]);
515
+ const toggleMcpServer = import_react.useCallback(async (serverName) => {
516
+ const client = store.getState().mcp.clients.find((c) => c.name === serverName);
517
+ if (!client) {
518
+ throw new Error(`MCP server ${serverName} not found`);
519
+ }
520
+ const isCurrentlyDisabled = client.type === "disabled";
521
+ if (!isCurrentlyDisabled) {
522
+ const existingTimer = reconnectTimersRef.current.get(serverName);
523
+ if (existingTimer) {
524
+ clearTimeout(existingTimer);
525
+ reconnectTimersRef.current.delete(serverName);
526
+ }
527
+ setMcpServerEnabled(serverName, false);
528
+ if (client.type === "connected") {
529
+ await clearServerCache(serverName, client.config);
530
+ }
531
+ updateServer({
532
+ name: serverName,
533
+ type: "disabled",
534
+ config: client.config
535
+ });
536
+ } else {
537
+ setMcpServerEnabled(serverName, true);
538
+ updateServer({
539
+ name: serverName,
540
+ type: "pending",
541
+ config: client.config
542
+ });
543
+ const result = await reconnectMcpServerImpl(serverName, client.config);
544
+ onConnectionAttempt(result);
545
+ }
546
+ }, [store, updateServer, onConnectionAttempt]);
547
+ return { reconnectMcpServer, toggleMcpServer };
548
+ }
549
+ function getTransportDisplayName(type) {
550
+ switch (type) {
551
+ case "http":
552
+ return "HTTP";
553
+ case "ws":
554
+ case "ws-ide":
555
+ return "WebSocket";
556
+ default:
557
+ return "SSE";
558
+ }
559
+ }
560
+ var import_react, clearSkillIndexCache = null, MAX_RECONNECT_ATTEMPTS = 5, INITIAL_BACKOFF_MS = 1000, MAX_BACKOFF_MS = 30000;
561
+ var init_useManageMCPConnections = __esm(() => {
562
+ init_state();
563
+ init_client();
564
+ init_types();
565
+ init_omit();
566
+ init_reject();
567
+ init_analytics();
568
+ init_config();
569
+ init_debug();
570
+ init_state();
571
+ init_notifications();
572
+ init_AppState();
573
+ init_errors();
574
+ init_log();
575
+ init_messageQueueManager();
576
+ init_channelNotification();
577
+ init_channelPermissions();
578
+ init_claudeai();
579
+ init_elicitationHandler();
580
+ init_mcpStringUtils();
581
+ init_utils();
582
+ import_react = __toESM(require_react(), 1);
583
+ });
584
+
585
+ // src/services/mcp/MCPConnectionManager.tsx
586
+ function useMcpReconnect() {
587
+ const context = import_react2.useContext(MCPConnectionContext);
588
+ if (!context) {
589
+ throw new Error("useMcpReconnect must be used within MCPConnectionManager");
590
+ }
591
+ return context.reconnectMcpServer;
592
+ }
593
+ function useMcpToggleEnabled() {
594
+ const context = import_react2.useContext(MCPConnectionContext);
595
+ if (!context) {
596
+ throw new Error("useMcpToggleEnabled must be used within MCPConnectionManager");
597
+ }
598
+ return context.toggleMcpServer;
599
+ }
600
+ function MCPConnectionManager({
601
+ children,
602
+ dynamicMcpConfig,
603
+ isStrictMcpConfig
604
+ }) {
605
+ const { reconnectMcpServer, toggleMcpServer } = useManageMCPConnections(dynamicMcpConfig, isStrictMcpConfig);
606
+ const value = import_react2.useMemo(() => ({ reconnectMcpServer, toggleMcpServer }), [reconnectMcpServer, toggleMcpServer]);
607
+ return /* @__PURE__ */ jsx_dev_runtime.jsxDEV(MCPConnectionContext.Provider, {
608
+ value,
609
+ children
610
+ }, undefined, false, undefined, this);
611
+ }
612
+ var import_react2, jsx_dev_runtime, MCPConnectionContext;
613
+ var init_MCPConnectionManager = __esm(() => {
614
+ init_useManageMCPConnections();
615
+ import_react2 = __toESM(require_react(), 1);
616
+ jsx_dev_runtime = __toESM(require_jsx_dev_runtime(), 1);
617
+ MCPConnectionContext = import_react2.createContext(null);
618
+ });
619
+
620
+ export { init_channelPermissions, useMcpReconnect, useMcpToggleEnabled, MCPConnectionManager, init_MCPConnectionManager };