@zyycn/claudex 1.0.3-fork.3767904

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 (441) hide show
  1. package/LICENSE.md +5 -0
  2. package/README.md +468 -0
  3. package/bin/claudex.js +40 -0
  4. package/dist/chunk-028383m5.js +654 -0
  5. package/dist/chunk-03metnxx.js +83 -0
  6. package/dist/chunk-06saje2v.js +39 -0
  7. package/dist/chunk-0731m51q.js +8 -0
  8. package/dist/chunk-0b8kwsg7.js +1322 -0
  9. package/dist/chunk-0ef5aqfn.js +266 -0
  10. package/dist/chunk-0paqc2yw.js +15 -0
  11. package/dist/chunk-0q2xkmse.js +58 -0
  12. package/dist/chunk-0vkfrmqm.js +690 -0
  13. package/dist/chunk-0xjaqda8.js +1124 -0
  14. package/dist/chunk-0xkvxzm1.js +788 -0
  15. package/dist/chunk-1141xmr4.js +8 -0
  16. package/dist/chunk-16egjxjg.js +606 -0
  17. package/dist/chunk-197ypc6t.js +281 -0
  18. package/dist/chunk-1bznajh9.js +87 -0
  19. package/dist/chunk-1c04yf47.js +98 -0
  20. package/dist/chunk-1cbn5kxf.js +7 -0
  21. package/dist/chunk-1ed0q5rg.js +825 -0
  22. package/dist/chunk-1h2famwb.js +49 -0
  23. package/dist/chunk-1pq0cspt.js +5393 -0
  24. package/dist/chunk-1vsjpj70.js +584 -0
  25. package/dist/chunk-1xkekb9y.js +19 -0
  26. package/dist/chunk-1zmd9pc1.js +98 -0
  27. package/dist/chunk-21tvhhzh.js +470 -0
  28. package/dist/chunk-238g70xa.js +36 -0
  29. package/dist/chunk-27xc1csx.js +104 -0
  30. package/dist/chunk-28eznw6x.js +266 -0
  31. package/dist/chunk-29pq2e6e.js +162 -0
  32. package/dist/chunk-2a42s11t.js +412 -0
  33. package/dist/chunk-2degyn49.js +696 -0
  34. package/dist/chunk-2eykm0j0.js +20 -0
  35. package/dist/chunk-2gzv8nrw.js +205 -0
  36. package/dist/chunk-2k995y2x.js +880 -0
  37. package/dist/chunk-2nayx6q1.js +63 -0
  38. package/dist/chunk-2nhwtayn.js +285 -0
  39. package/dist/chunk-2pfz17d6.js +89 -0
  40. package/dist/chunk-2q98zgr7.js +120 -0
  41. package/dist/chunk-2r6p51j7.js +40 -0
  42. package/dist/chunk-2t3vw4tx.js +22820 -0
  43. package/dist/chunk-30rst83v.js +168 -0
  44. package/dist/chunk-34c7ey17.js +155 -0
  45. package/dist/chunk-34sv2j2s.js +690 -0
  46. package/dist/chunk-37jrk2jd.js +117 -0
  47. package/dist/chunk-38700exh.js +42 -0
  48. package/dist/chunk-38qkmq6a.js +274 -0
  49. package/dist/chunk-3b00105q.js +17 -0
  50. package/dist/chunk-3b6pmmxx.js +195 -0
  51. package/dist/chunk-3bbk64vc.js +8966 -0
  52. package/dist/chunk-3c25bcsw.js +17 -0
  53. package/dist/chunk-3cdajpj8.js +90 -0
  54. package/dist/chunk-3cr1nha2.js +198 -0
  55. package/dist/chunk-3d9rvrf3.js +103 -0
  56. package/dist/chunk-3dzknnm6.js +38 -0
  57. package/dist/chunk-3es29zn5.js +105 -0
  58. package/dist/chunk-3h8a89gy.js +46 -0
  59. package/dist/chunk-3pfbtkm1.js +105 -0
  60. package/dist/chunk-3pka9vsd.js +129 -0
  61. package/dist/chunk-3raf9w1p.js +115 -0
  62. package/dist/chunk-3vs3nm7w.js +31 -0
  63. package/dist/chunk-3w31rhxj.js +98 -0
  64. package/dist/chunk-3w6s9m5w.js +16 -0
  65. package/dist/chunk-3ze6jmfd.js +74 -0
  66. package/dist/chunk-40er4qb4.js +202 -0
  67. package/dist/chunk-40nmwkst.js +2838 -0
  68. package/dist/chunk-42ytstxy.js +109 -0
  69. package/dist/chunk-44fpr6jq.js +434 -0
  70. package/dist/chunk-495d85x1.js +8066 -0
  71. package/dist/chunk-49eehs1a.js +165 -0
  72. package/dist/chunk-4bfhat6k.js +89 -0
  73. package/dist/chunk-4cfef3e8.js +602 -0
  74. package/dist/chunk-4g3v8y12.js +23 -0
  75. package/dist/chunk-4jm600zv.js +13 -0
  76. package/dist/chunk-4n6x67m0.js +88 -0
  77. package/dist/chunk-4qz9vbs1.js +349 -0
  78. package/dist/chunk-4r4hb7td.js +564 -0
  79. package/dist/chunk-4tabtkpc.js +496 -0
  80. package/dist/chunk-4yd15ach.js +84 -0
  81. package/dist/chunk-4zfkzkt6.js +37 -0
  82. package/dist/chunk-50kxdgx6.js +255 -0
  83. package/dist/chunk-55wgxwa9.js +13877 -0
  84. package/dist/chunk-56jgazae.js +28 -0
  85. package/dist/chunk-56xwtm1c.js +229 -0
  86. package/dist/chunk-5nvye4tw.js +69 -0
  87. package/dist/chunk-5qe9gb40.js +99 -0
  88. package/dist/chunk-5vx14htd.js +87 -0
  89. package/dist/chunk-5y1tah98.js +756 -0
  90. package/dist/chunk-64wxa5zw.js +810 -0
  91. package/dist/chunk-65s8h28p.js +123 -0
  92. package/dist/chunk-6bd8brc4.js +48 -0
  93. package/dist/chunk-6dec7yq0.js +79 -0
  94. package/dist/chunk-6dj5t602.js +341 -0
  95. package/dist/chunk-6ghjp8m8.js +87 -0
  96. package/dist/chunk-6gr3c3w9.js +378 -0
  97. package/dist/chunk-6n2qgm9v.js +8 -0
  98. package/dist/chunk-6tq2v3rk.js +186 -0
  99. package/dist/chunk-6v4a0yqc.js +299 -0
  100. package/dist/chunk-73rpbt04.js +1947 -0
  101. package/dist/chunk-760252na.js +101 -0
  102. package/dist/chunk-7739pg2c.js +4261 -0
  103. package/dist/chunk-7956bsy7.js +85 -0
  104. package/dist/chunk-7aw745vx.js +40175 -0
  105. package/dist/chunk-7e6ahfxz.js +61 -0
  106. package/dist/chunk-7en5fc51.js +263 -0
  107. package/dist/chunk-7gf30dzb.js +184 -0
  108. package/dist/chunk-7kpp8d5g.js +644 -0
  109. package/dist/chunk-7m2nd8da.js +110 -0
  110. package/dist/chunk-7wb627p2.js +418 -0
  111. package/dist/chunk-7wm5s02e.js +216 -0
  112. package/dist/chunk-7x9kyp5a.js +780 -0
  113. package/dist/chunk-7zaxrfnt.js +42 -0
  114. package/dist/chunk-808756xy.js +348 -0
  115. package/dist/chunk-819jqhcr.js +192 -0
  116. package/dist/chunk-83hfzbx3.js +10 -0
  117. package/dist/chunk-83myqqga.js +642 -0
  118. package/dist/chunk-84xggq3w.js +713 -0
  119. package/dist/chunk-85n4mydq.js +100 -0
  120. package/dist/chunk-86czeeyf.js +38 -0
  121. package/dist/chunk-8aww16wk.js +26840 -0
  122. package/dist/chunk-8bedvdm1.js +32 -0
  123. package/dist/chunk-8hq5kk3y.js +44 -0
  124. package/dist/chunk-8jmc7234.js +3198 -0
  125. package/dist/chunk-8jq1r68j.js +5946 -0
  126. package/dist/chunk-8mtb0zzs.js +40 -0
  127. package/dist/chunk-8qm7hxn7.js +27 -0
  128. package/dist/chunk-8tnsngw2.js +31 -0
  129. package/dist/chunk-8y0qvap3.js +333 -0
  130. package/dist/chunk-8y12jxg8.js +10 -0
  131. package/dist/chunk-8ymf4e6z.js +48 -0
  132. package/dist/chunk-90c8d4yc.js +1549 -0
  133. package/dist/chunk-90wp6wez.js +10510 -0
  134. package/dist/chunk-97q4f0d5.js +160 -0
  135. package/dist/chunk-9gbamk79.js +93 -0
  136. package/dist/chunk-9k2drwej.js +106 -0
  137. package/dist/chunk-9nta4x35.js +726 -0
  138. package/dist/chunk-9v90tzwk.js +175 -0
  139. package/dist/chunk-a8ejc632.js +3094 -0
  140. package/dist/chunk-a8fvd2bk.js +224 -0
  141. package/dist/chunk-a8pyxxmz.js +374 -0
  142. package/dist/chunk-a9vdeb6y.js +258 -0
  143. package/dist/chunk-a9zh40sj.js +48 -0
  144. package/dist/chunk-abmaztjr.js +157 -0
  145. package/dist/chunk-actwcnvp.js +69 -0
  146. package/dist/chunk-acy41n63.js +339 -0
  147. package/dist/chunk-ah8ppcb2.js +176 -0
  148. package/dist/chunk-aj276jn4.js +95 -0
  149. package/dist/chunk-ajs4f0bc.js +4521 -0
  150. package/dist/chunk-as7vh4kb.js +140 -0
  151. package/dist/chunk-atjpyqps.js +250 -0
  152. package/dist/chunk-azzv8k3w.js +724 -0
  153. package/dist/chunk-b2k6rctr.js +225 -0
  154. package/dist/chunk-b3e5kx55.js +602 -0
  155. package/dist/chunk-b4wg70y1.js +54 -0
  156. package/dist/chunk-b5x836wt.js +114 -0
  157. package/dist/chunk-b75fzr8e.js +969 -0
  158. package/dist/chunk-b8m6vy4x.js +86 -0
  159. package/dist/chunk-b8x1gk3y.js +1299 -0
  160. package/dist/chunk-bjqw6798.js +328 -0
  161. package/dist/chunk-bm1qb16p.js +17 -0
  162. package/dist/chunk-bpkdecb4.js +267 -0
  163. package/dist/chunk-bqfnp99q.js +477 -0
  164. package/dist/chunk-bvp4dgm4.js +182 -0
  165. package/dist/chunk-bwwtzjsw.js +28 -0
  166. package/dist/chunk-by7f0myv.js +91 -0
  167. package/dist/chunk-by9nr4w6.js +442 -0
  168. package/dist/chunk-c2nsc73g.js +1579 -0
  169. package/dist/chunk-c5dc5tw8.js +275 -0
  170. package/dist/chunk-cdz5yb0r.js +57 -0
  171. package/dist/chunk-cfv996bs.js +22 -0
  172. package/dist/chunk-cgfdkzhb.js +12 -0
  173. package/dist/chunk-cjxa22k7.js +438 -0
  174. package/dist/chunk-crkef7n3.js +10476 -0
  175. package/dist/chunk-cssdmv6r.js +127 -0
  176. package/dist/chunk-d69y9a95.js +1316 -0
  177. package/dist/chunk-d6qpsqd1.js +91 -0
  178. package/dist/chunk-d6rxfmhy.js +4389 -0
  179. package/dist/chunk-d88jf4t3.js +525 -0
  180. package/dist/chunk-d8ksq0y0.js +26 -0
  181. package/dist/chunk-d9kz373t.js +122 -0
  182. package/dist/chunk-ddk0ak7r.js +63 -0
  183. package/dist/chunk-ddqs9xnj.js +173 -0
  184. package/dist/chunk-detc4mva.js +99 -0
  185. package/dist/chunk-dfg36kvt.js +691 -0
  186. package/dist/chunk-dgqrcy74.js +48 -0
  187. package/dist/chunk-dhd6zm3z.js +1095 -0
  188. package/dist/chunk-dnh7jtpb.js +37 -0
  189. package/dist/chunk-dq9afpqh.js +432 -0
  190. package/dist/chunk-dqqfd54g.js +672 -0
  191. package/dist/chunk-dstxhxsx.js +121 -0
  192. package/dist/chunk-dv1wfr85.js +6373 -0
  193. package/dist/chunk-dw5yr66c.js +109 -0
  194. package/dist/chunk-dx6pnab5.js +56 -0
  195. package/dist/chunk-dz5j8gp2.js +66 -0
  196. package/dist/chunk-e5pntxye.js +37 -0
  197. package/dist/chunk-ec2tspnc.js +253 -0
  198. package/dist/chunk-eebcvtbb.js +1646 -0
  199. package/dist/chunk-egentr97.js +328 -0
  200. package/dist/chunk-ehtwnxpg.js +1591 -0
  201. package/dist/chunk-en4dwrtx.js +674 -0
  202. package/dist/chunk-enjbm16s.js +212 -0
  203. package/dist/chunk-epf7hfx9.js +130 -0
  204. package/dist/chunk-eqp1rfft.js +17 -0
  205. package/dist/chunk-er596fa7.js +246 -0
  206. package/dist/chunk-ewadzrm8.js +103 -0
  207. package/dist/chunk-ey1kf1m1.js +96 -0
  208. package/dist/chunk-f2xj33w0.js +59 -0
  209. package/dist/chunk-f5ma3nh5.js +3436 -0
  210. package/dist/chunk-f8vjkfqy.js +169 -0
  211. package/dist/chunk-fbpftpf0.js +69 -0
  212. package/dist/chunk-fbv4apne.js +51 -0
  213. package/dist/chunk-fka484jr.js +142 -0
  214. package/dist/chunk-fmkhaba7.js +1585 -0
  215. package/dist/chunk-fny8kwbq.js +88 -0
  216. package/dist/chunk-fvjqz54k.js +297 -0
  217. package/dist/chunk-fxdk70se.js +457 -0
  218. package/dist/chunk-fyc5fepv.js +10 -0
  219. package/dist/chunk-fytfjpnf.js +400 -0
  220. package/dist/chunk-fz99t69n.js +152 -0
  221. package/dist/chunk-g0j0t6qk.js +26 -0
  222. package/dist/chunk-g338npwr.js +1061 -0
  223. package/dist/chunk-g3t0act8.js +8 -0
  224. package/dist/chunk-g5xn13xx.js +143 -0
  225. package/dist/chunk-gc1s3jhh.js +40767 -0
  226. package/dist/chunk-gd397pcz.js +54 -0
  227. package/dist/chunk-gee88a3c.js +2642 -0
  228. package/dist/chunk-gmwkf29y.js +372 -0
  229. package/dist/chunk-gsxnne70.js +6106 -0
  230. package/dist/chunk-gv0tqhg0.js +118 -0
  231. package/dist/chunk-gx25wmv5.js +71 -0
  232. package/dist/chunk-gyj242zr.js +20 -0
  233. package/dist/chunk-gzzfhtdv.js +7189 -0
  234. package/dist/chunk-h0qngp9w.js +157 -0
  235. package/dist/chunk-h0rbjg6x.js +55 -0
  236. package/dist/chunk-h0xeqdrp.js +258 -0
  237. package/dist/chunk-h5f90qy3.js +220 -0
  238. package/dist/chunk-hakdhagh.js +16606 -0
  239. package/dist/chunk-hamj71dy.js +40 -0
  240. package/dist/chunk-hbrqcjwt.js +2334 -0
  241. package/dist/chunk-heg1nmw6.js +16 -0
  242. package/dist/chunk-hh7cmy4k.js +20 -0
  243. package/dist/chunk-hhxj3n5k.js +153 -0
  244. package/dist/chunk-hk9xz7gk.js +118 -0
  245. package/dist/chunk-hmxkx429.js +108 -0
  246. package/dist/chunk-hq6y1jbc.js +89 -0
  247. package/dist/chunk-hqmz36b3.js +552 -0
  248. package/dist/chunk-hrqdc2z6.js +208 -0
  249. package/dist/chunk-hzhe8ygc.js +547 -0
  250. package/dist/chunk-j0xd989k.js +655 -0
  251. package/dist/chunk-j2k4p94p.js +55 -0
  252. package/dist/chunk-j3a4p81y.js +184 -0
  253. package/dist/chunk-j5hc27hv.js +444 -0
  254. package/dist/chunk-j64ga6ta.js +8035 -0
  255. package/dist/chunk-janw82mh.js +1864 -0
  256. package/dist/chunk-jce5r25x.js +18 -0
  257. package/dist/chunk-jd32zbps.js +15 -0
  258. package/dist/chunk-jdgeec04.js +4249 -0
  259. package/dist/chunk-jgpqexxb.js +83 -0
  260. package/dist/chunk-jja22ke5.js +81 -0
  261. package/dist/chunk-jm91zc2r.js +102 -0
  262. package/dist/chunk-jnhkref0.js +30 -0
  263. package/dist/chunk-jrhwm6kh.js +1556 -0
  264. package/dist/chunk-jttemgp6.js +532 -0
  265. package/dist/chunk-jtx453jx.js +281 -0
  266. package/dist/chunk-jwft70vy.js +476 -0
  267. package/dist/chunk-jx817w05.js +11 -0
  268. package/dist/chunk-jzmz18nn.js +65 -0
  269. package/dist/chunk-k0p9w03v.js +4957 -0
  270. package/dist/chunk-k0ymf9zj.js +113 -0
  271. package/dist/chunk-k1tve81h.js +345 -0
  272. package/dist/chunk-k2bkmhp4.js +385 -0
  273. package/dist/chunk-k2qkkhf9.js +463 -0
  274. package/dist/chunk-k542zrk6.js +88 -0
  275. package/dist/chunk-kez03ppq.js +490 -0
  276. package/dist/chunk-kgmzdyrz.js +242 -0
  277. package/dist/chunk-khs0jvy0.js +216 -0
  278. package/dist/chunk-kr244txf.js +306 -0
  279. package/dist/chunk-ksawj46w.js +536 -0
  280. package/dist/chunk-kwekc97v.js +18 -0
  281. package/dist/chunk-kz6f106c.js +6956 -0
  282. package/dist/chunk-kzmfv2aw.js +745 -0
  283. package/dist/chunk-m26pp852.js +87 -0
  284. package/dist/chunk-m4pma84k.js +2057 -0
  285. package/dist/chunk-mfp30vsr.js +458 -0
  286. package/dist/chunk-mjn6p2km.js +92 -0
  287. package/dist/chunk-mk6tjz0j.js +469 -0
  288. package/dist/chunk-mqcwefg3.js +105 -0
  289. package/dist/chunk-mqm3kg01.js +61 -0
  290. package/dist/chunk-mt25echc.js +6157 -0
  291. package/dist/chunk-mw9ve19d.js +277 -0
  292. package/dist/chunk-mxt2wn9a.js +131 -0
  293. package/dist/chunk-n0qaeaa5.js +256 -0
  294. package/dist/chunk-n154ybpk.js +1919 -0
  295. package/dist/chunk-n2ktrmm8.js +62 -0
  296. package/dist/chunk-n59gj2nk.js +438 -0
  297. package/dist/chunk-n7ttdtk0.js +641 -0
  298. package/dist/chunk-nb9z2xs5.js +128 -0
  299. package/dist/chunk-nh8ssb02.js +88 -0
  300. package/dist/chunk-nj17bhkh.js +125 -0
  301. package/dist/chunk-njmw3yt4.js +173564 -0
  302. package/dist/chunk-njwzgb7j.js +61 -0
  303. package/dist/chunk-nka1g8f4.js +773 -0
  304. package/dist/chunk-nq0fxyxh.js +752 -0
  305. package/dist/chunk-nt837qt9.js +21 -0
  306. package/dist/chunk-nwsmn6zm.js +15 -0
  307. package/dist/chunk-nx4e896a.js +208 -0
  308. package/dist/chunk-p2816w9z.js +1486 -0
  309. package/dist/chunk-p2d5nh3g.js +342 -0
  310. package/dist/chunk-p331ghzg.js +391 -0
  311. package/dist/chunk-p4qrpz5a.js +99 -0
  312. package/dist/chunk-p8syd69s.js +47 -0
  313. package/dist/chunk-pdyq9kvn.js +83 -0
  314. package/dist/chunk-pkb4qnmq.js +1391 -0
  315. package/dist/chunk-pkcx8qa3.js +154 -0
  316. package/dist/chunk-pmsp9ed2.js +34 -0
  317. package/dist/chunk-pnmh6v4t.js +373 -0
  318. package/dist/chunk-ps49ymvj.js +43 -0
  319. package/dist/chunk-pwwa7s62.js +11 -0
  320. package/dist/chunk-pxy618ae.js +714 -0
  321. package/dist/chunk-py5y9jh1.js +38 -0
  322. package/dist/chunk-pzz93fck.js +173 -0
  323. package/dist/chunk-q25bjaev.js +15 -0
  324. package/dist/chunk-q756tpn6.js +765 -0
  325. package/dist/chunk-qbt1tq74.js +145 -0
  326. package/dist/chunk-qkkj0em0.js +104 -0
  327. package/dist/chunk-qnfx3qtx.js +617 -0
  328. package/dist/chunk-qp2qdcda.js +100 -0
  329. package/dist/chunk-qpkxg63w.js +160 -0
  330. package/dist/chunk-qqfa0dqg.js +2343 -0
  331. package/dist/chunk-qsd1r4pm.js +9300 -0
  332. package/dist/chunk-qseetcxd.js +908 -0
  333. package/dist/chunk-qvt2hjv0.js +849 -0
  334. package/dist/chunk-qxdv72g8.js +93 -0
  335. package/dist/chunk-qy0vwqgp.js +194 -0
  336. package/dist/chunk-qz2x630m.js +49145 -0
  337. package/dist/chunk-qzqagb7y.js +87 -0
  338. package/dist/chunk-r14xvkat.js +641 -0
  339. package/dist/chunk-r6b58y3x.js +17 -0
  340. package/dist/chunk-r6z6t5wr.js +97 -0
  341. package/dist/chunk-r855fz3z.js +41 -0
  342. package/dist/chunk-raqgs410.js +116 -0
  343. package/dist/chunk-rd5rdsdz.js +95 -0
  344. package/dist/chunk-renve22b.js +524 -0
  345. package/dist/chunk-res7qrc9.js +820 -0
  346. package/dist/chunk-rk7ns7gp.js +220 -0
  347. package/dist/chunk-rm0q8bwx.js +271 -0
  348. package/dist/chunk-rm56f6q8.js +41 -0
  349. package/dist/chunk-rn0v1hk8.js +34 -0
  350. package/dist/chunk-rrxeqt07.js +73 -0
  351. package/dist/chunk-rvgeep5b.js +117 -0
  352. package/dist/chunk-rx4c84ah.js +86 -0
  353. package/dist/chunk-s3pzvdss.js +50 -0
  354. package/dist/chunk-s5vqcxp0.js +54 -0
  355. package/dist/chunk-s88vzmek.js +542 -0
  356. package/dist/chunk-sazb7y67.js +279 -0
  357. package/dist/chunk-sbbj6ta3.js +1711 -0
  358. package/dist/chunk-sd36yzx8.js +954 -0
  359. package/dist/chunk-sdj9b9wh.js +782 -0
  360. package/dist/chunk-shb6nvk6.js +27 -0
  361. package/dist/chunk-szj5wvdy.js +28 -0
  362. package/dist/chunk-t0rgmccj.js +39 -0
  363. package/dist/chunk-t1jh3jk8.js +3036 -0
  364. package/dist/chunk-t3360k46.js +75 -0
  365. package/dist/chunk-t3h6pwp3.js +112 -0
  366. package/dist/chunk-t5ymtx9c.js +1493 -0
  367. package/dist/chunk-t6p76a55.js +120 -0
  368. package/dist/chunk-t7fdh24y.js +648 -0
  369. package/dist/chunk-texzbcna.js +716 -0
  370. package/dist/chunk-tjw7n4me.js +21933 -0
  371. package/dist/chunk-tjyhp966.js +24 -0
  372. package/dist/chunk-tnd5xbeh.js +802 -0
  373. package/dist/chunk-trfa7dbr.js +998 -0
  374. package/dist/chunk-ts2p6bv1.js +224 -0
  375. package/dist/chunk-tssr3fyd.js +287 -0
  376. package/dist/chunk-ttk5dzz8.js +25 -0
  377. package/dist/chunk-tvhjre1h.js +316 -0
  378. package/dist/chunk-txndc2j2.js +70 -0
  379. package/dist/chunk-v1kzp02e.js +785 -0
  380. package/dist/chunk-v2pc6h28.js +32 -0
  381. package/dist/chunk-v78fj8by.js +145 -0
  382. package/dist/chunk-v90xv5n9.js +157 -0
  383. package/dist/chunk-v9smspw2.js +4301 -0
  384. package/dist/chunk-vest0y6x.js +3830 -0
  385. package/dist/chunk-vf5sd1nq.js +12 -0
  386. package/dist/chunk-vhjx5fag.js +56 -0
  387. package/dist/chunk-vjtbtamj.js +165 -0
  388. package/dist/chunk-vkkay00s.js +229 -0
  389. package/dist/chunk-vqc05a0b.js +121 -0
  390. package/dist/chunk-vqk1n5qr.js +63 -0
  391. package/dist/chunk-vqvd3qz0.js +151 -0
  392. package/dist/chunk-vtp96y1a.js +90 -0
  393. package/dist/chunk-vyjeh50y.js +2149 -0
  394. package/dist/chunk-vz6s9tzt.js +43 -0
  395. package/dist/chunk-w3agqtpz.js +42 -0
  396. package/dist/chunk-w3dz905t.js +22 -0
  397. package/dist/chunk-w8yw30sd.js +15 -0
  398. package/dist/chunk-wa6b7bv9.js +467 -0
  399. package/dist/chunk-wb36q47x.js +128 -0
  400. package/dist/chunk-wbnv75aa.js +114 -0
  401. package/dist/chunk-wcepsp07.js +1013 -0
  402. package/dist/chunk-wecrhvf7.js +247 -0
  403. package/dist/chunk-wfz0qffj.js +3939 -0
  404. package/dist/chunk-wgcssf6v.js +722 -0
  405. package/dist/chunk-wn2268qd.js +335 -0
  406. package/dist/chunk-wtr5hjf7.js +3443 -0
  407. package/dist/chunk-wzpdet3m.js +843 -0
  408. package/dist/chunk-x0328bb5.js +305 -0
  409. package/dist/chunk-x5psxyg8.js +20 -0
  410. package/dist/chunk-x8b7vft8.js +132 -0
  411. package/dist/chunk-x8n22y7f.js +5017 -0
  412. package/dist/chunk-xq4cfvpn.js +213 -0
  413. package/dist/chunk-xqdvndvx.js +3394 -0
  414. package/dist/chunk-xrv9qadt.js +44 -0
  415. package/dist/chunk-xsq9ae7x.js +90 -0
  416. package/dist/chunk-xszk7n10.js +14358 -0
  417. package/dist/chunk-xx6h50zt.js +338 -0
  418. package/dist/chunk-y1784krc.js +19 -0
  419. package/dist/chunk-yfcsc3s4.js +153 -0
  420. package/dist/chunk-yngvgvqm.js +103 -0
  421. package/dist/chunk-yntm0ebf.js +500 -0
  422. package/dist/chunk-yw9xqzna.js +71 -0
  423. package/dist/chunk-ywxd4qw4.js +22 -0
  424. package/dist/chunk-yysj6sxt.js +336 -0
  425. package/dist/chunk-yzhxz894.js +32 -0
  426. package/dist/chunk-yztq1rhb.js +60 -0
  427. package/dist/chunk-z06751ss.js +16386 -0
  428. package/dist/chunk-z2dp53wn.js +17 -0
  429. package/dist/chunk-z5cvbngc.js +520 -0
  430. package/dist/chunk-z6vf0bdm.js +101 -0
  431. package/dist/chunk-zbqfbyfb.js +247 -0
  432. package/dist/chunk-zc6g0qqe.js +29 -0
  433. package/dist/chunk-zj863fgn.js +92 -0
  434. package/dist/chunk-zjd1m23p.js +1152 -0
  435. package/dist/chunk-zk2wsm7d.js +15 -0
  436. package/dist/chunk-zmwhk0zy.js +750 -0
  437. package/dist/chunk-zpywc76a.js +862 -0
  438. package/dist/chunk-zqm995gk.js +71 -0
  439. package/dist/chunk-zsfxha74.js +17655 -0
  440. package/dist/cli.js +89 -0
  441. package/package.json +36 -0
@@ -0,0 +1,1864 @@
1
+ // @bun
2
+ import {
3
+ MCPRemoteServerMenu,
4
+ MCPStdioServerMenu,
5
+ MCPToolDetailView,
6
+ MCPToolListView,
7
+ init_MCPRemoteServerMenu,
8
+ init_MCPStdioServerMenu,
9
+ init_MCPToolDetailView,
10
+ init_MCPToolListView,
11
+ init_PluginSettings
12
+ } from "./chunk-crkef7n3.js";
13
+ import"./chunk-qvt2hjv0.js";
14
+ import {
15
+ init_MCPConnectionManager,
16
+ useMcpReconnect,
17
+ useMcpToggleEnabled
18
+ } from "./chunk-t7fdh24y.js";
19
+ import"./chunk-yntm0ebf.js";
20
+ import"./chunk-34c7ey17.js";
21
+ import"./chunk-7kpp8d5g.js";
22
+ import"./chunk-hrqdc2z6.js";
23
+ import"./chunk-dq9afpqh.js";
24
+ import"./chunk-gmwkf29y.js";
25
+ import {
26
+ McpParsingWarnings,
27
+ init_McpParsingWarnings
28
+ } from "./chunk-808756xy.js";
29
+ import"./chunk-f8vjkfqy.js";
30
+ import {
31
+ AuthenticationCancelledError,
32
+ ClaudeAuthProvider,
33
+ Select,
34
+ Spinner,
35
+ describeMcpConfigFilePath,
36
+ extractAgentMcpServers,
37
+ filterToolsByServer,
38
+ init_AppState,
39
+ init_CustomSelect,
40
+ init_Spinner,
41
+ init_auth,
42
+ init_utils,
43
+ performMCPOAuthFlow,
44
+ useAppState,
45
+ useAppStateStore
46
+ } from "./chunk-njmw3yt4.js";
47
+ import"./chunk-j0xd989k.js";
48
+ import"./chunk-t0rgmccj.js";
49
+ import {
50
+ getSessionIngressAuthToken,
51
+ init_sessionIngressAuth
52
+ } from "./chunk-a8fvd2bk.js";
53
+ import"./chunk-pkcx8qa3.js";
54
+ import"./chunk-er596fa7.js";
55
+ import"./chunk-ddk0ak7r.js";
56
+ import {
57
+ Byline,
58
+ ConfigurableShortcutHint,
59
+ Dialog,
60
+ KeyboardShortcutHint,
61
+ init_Byline,
62
+ init_ConfigurableShortcutHint,
63
+ init_Dialog,
64
+ init_KeyboardShortcutHint
65
+ } from "./chunk-k2qkkhf9.js";
66
+ import"./chunk-ehtwnxpg.js";
67
+ import"./chunk-vhjx5fag.js";
68
+ import"./chunk-1ed0q5rg.js";
69
+ import"./chunk-2gzv8nrw.js";
70
+ import"./chunk-j5hc27hv.js";
71
+ import"./chunk-cgfdkzhb.js";
72
+ import"./chunk-khs0jvy0.js";
73
+ import"./chunk-p4qrpz5a.js";
74
+ import"./chunk-9gbamk79.js";
75
+ import"./chunk-pxy618ae.js";
76
+ import"./chunk-gv0tqhg0.js";
77
+ import {
78
+ init_useKeybinding,
79
+ useKeybinding,
80
+ useKeybindings
81
+ } from "./chunk-tnd5xbeh.js";
82
+ import {
83
+ Link,
84
+ ThemedBox_default,
85
+ ThemedText,
86
+ color,
87
+ init_ink,
88
+ require_compiler_runtime,
89
+ useTheme
90
+ } from "./chunk-8aww16wk.js";
91
+ import"./chunk-7m2nd8da.js";
92
+ import"./chunk-ps49ymvj.js";
93
+ import {
94
+ require_jsx_dev_runtime,
95
+ require_react
96
+ } from "./chunk-g338npwr.js";
97
+ import"./chunk-f2xj33w0.js";
98
+ import"./chunk-zk2wsm7d.js";
99
+ import"./chunk-tssr3fyd.js";
100
+ import"./chunk-7e6ahfxz.js";
101
+ import"./chunk-pkb4qnmq.js";
102
+ import {
103
+ capitalize,
104
+ init_stringUtils,
105
+ plural
106
+ } from "./chunk-z06751ss.js";
107
+ import"./chunk-eebcvtbb.js";
108
+ import"./chunk-xq4cfvpn.js";
109
+ import"./chunk-4qz9vbs1.js";
110
+ import"./chunk-9nta4x35.js";
111
+ import"./chunk-b75fzr8e.js";
112
+ import"./chunk-g0j0t6qk.js";
113
+ import"./chunk-3c25bcsw.js";
114
+ import"./chunk-nj17bhkh.js";
115
+ import"./chunk-55wgxwa9.js";
116
+ import"./chunk-vqk1n5qr.js";
117
+ import"./chunk-4jm600zv.js";
118
+ import"./chunk-wn2268qd.js";
119
+ import"./chunk-vqvd3qz0.js";
120
+ import"./chunk-f5ma3nh5.js";
121
+ import"./chunk-qz2x630m.js";
122
+ import"./chunk-d9kz373t.js";
123
+ import"./chunk-p2816w9z.js";
124
+ import"./chunk-v9smspw2.js";
125
+ import"./chunk-v1kzp02e.js";
126
+ import"./chunk-0vkfrmqm.js";
127
+ import"./chunk-0xjaqda8.js";
128
+ import"./chunk-w8yw30sd.js";
129
+ import"./chunk-wgcssf6v.js";
130
+ import"./chunk-cdz5yb0r.js";
131
+ import"./chunk-h0rbjg6x.js";
132
+ import"./chunk-dstxhxsx.js";
133
+ import"./chunk-b8x1gk3y.js";
134
+ import"./chunk-9k2drwej.js";
135
+ import"./chunk-qnfx3qtx.js";
136
+ import"./chunk-fbpftpf0.js";
137
+ import"./chunk-3vs3nm7w.js";
138
+ import {
139
+ figures_default,
140
+ init_figures
141
+ } from "./chunk-gzzfhtdv.js";
142
+ import"./chunk-yysj6sxt.js";
143
+ import"./chunk-8tnsngw2.js";
144
+ import"./chunk-8bedvdm1.js";
145
+ import"./chunk-7wm5s02e.js";
146
+ import {
147
+ init_debug,
148
+ isDebugMode
149
+ } from "./chunk-sbbj6ta3.js";
150
+ import"./chunk-fbv4apne.js";
151
+ import"./chunk-raqgs410.js";
152
+ import"./chunk-qqfa0dqg.js";
153
+ import"./chunk-hqmz36b3.js";
154
+ import"./chunk-4g3v8y12.js";
155
+ import"./chunk-7739pg2c.js";
156
+ import"./chunk-xszk7n10.js";
157
+ import"./chunk-sdj9b9wh.js";
158
+ import {
159
+ __esm,
160
+ __toESM
161
+ } from "./chunk-qp2qdcda.js";
162
+
163
+ // src/components/mcp/MCPAgentServerMenu.tsx
164
+ function MCPAgentServerMenu({
165
+ agentServer,
166
+ onCancel,
167
+ onComplete
168
+ }) {
169
+ const [theme] = useTheme();
170
+ const [isAuthenticating, setIsAuthenticating] = import_react.useState(false);
171
+ const [error, setError] = import_react.useState(null);
172
+ const [authorizationUrl, setAuthorizationUrl] = import_react.useState(null);
173
+ const authAbortControllerRef = import_react.useRef(null);
174
+ import_react.useEffect(() => () => authAbortControllerRef.current?.abort(), []);
175
+ const handleEscCancel = import_react.useCallback(() => {
176
+ if (isAuthenticating) {
177
+ authAbortControllerRef.current?.abort();
178
+ authAbortControllerRef.current = null;
179
+ setIsAuthenticating(false);
180
+ setAuthorizationUrl(null);
181
+ }
182
+ }, [isAuthenticating]);
183
+ useKeybinding("confirm:no", handleEscCancel, {
184
+ context: "Confirmation",
185
+ isActive: isAuthenticating
186
+ });
187
+ const handleAuthenticate = import_react.useCallback(async () => {
188
+ if (!agentServer.needsAuth || !agentServer.url) {
189
+ return;
190
+ }
191
+ setIsAuthenticating(true);
192
+ setError(null);
193
+ const controller = new AbortController;
194
+ authAbortControllerRef.current = controller;
195
+ try {
196
+ const tempConfig = {
197
+ type: agentServer.transport,
198
+ url: agentServer.url
199
+ };
200
+ await performMCPOAuthFlow(agentServer.name, tempConfig, setAuthorizationUrl, controller.signal);
201
+ onComplete?.(`Authentication successful for ${agentServer.name}. The server will connect when the agent runs.`);
202
+ } catch (err) {
203
+ if (err instanceof Error && !(err instanceof AuthenticationCancelledError)) {
204
+ setError(err.message);
205
+ }
206
+ } finally {
207
+ setIsAuthenticating(false);
208
+ authAbortControllerRef.current = null;
209
+ }
210
+ }, [agentServer, onComplete]);
211
+ const capitalizedServerName = capitalize(String(agentServer.name));
212
+ if (isAuthenticating) {
213
+ return /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
214
+ flexDirection: "column",
215
+ gap: 1,
216
+ padding: 1,
217
+ children: [
218
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
219
+ color: "claude",
220
+ children: [
221
+ "Authenticating with ",
222
+ agentServer.name,
223
+ "\u2026"
224
+ ]
225
+ }, undefined, true, undefined, this),
226
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
227
+ children: [
228
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Spinner, {}, undefined, false, undefined, this),
229
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
230
+ children: " A browser window will open for authentication"
231
+ }, undefined, false, undefined, this)
232
+ ]
233
+ }, undefined, true, undefined, this),
234
+ authorizationUrl && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
235
+ flexDirection: "column",
236
+ children: [
237
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
238
+ dimColor: true,
239
+ children: "If your browser doesn't open automatically, copy this URL manually:"
240
+ }, undefined, false, undefined, this),
241
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Link, {
242
+ url: authorizationUrl
243
+ }, undefined, false, undefined, this)
244
+ ]
245
+ }, undefined, true, undefined, this),
246
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
247
+ marginLeft: 3,
248
+ children: /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
249
+ dimColor: true,
250
+ children: [
251
+ "Return here after authenticating in your browser.",
252
+ " ",
253
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ConfigurableShortcutHint, {
254
+ action: "confirm:no",
255
+ context: "Confirmation",
256
+ fallback: "Esc",
257
+ description: "go back"
258
+ }, undefined, false, undefined, this)
259
+ ]
260
+ }, undefined, true, undefined, this)
261
+ }, undefined, false, undefined, this)
262
+ ]
263
+ }, undefined, true, undefined, this);
264
+ }
265
+ const menuOptions = [];
266
+ if (agentServer.needsAuth) {
267
+ menuOptions.push({
268
+ label: agentServer.isAuthenticated ? "Re-authenticate" : "Authenticate",
269
+ value: "auth"
270
+ });
271
+ }
272
+ menuOptions.push({
273
+ label: "Back",
274
+ value: "back"
275
+ });
276
+ return /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Dialog, {
277
+ title: `${capitalizedServerName} MCP Server`,
278
+ subtitle: "agent-only",
279
+ onCancel,
280
+ inputGuide: (exitState) => exitState.pending ? /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
281
+ children: [
282
+ "Press ",
283
+ exitState.keyName,
284
+ " again to exit"
285
+ ]
286
+ }, undefined, true, undefined, this) : /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Byline, {
287
+ children: [
288
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(KeyboardShortcutHint, {
289
+ shortcut: "\u2191\u2193",
290
+ action: "navigate"
291
+ }, undefined, false, undefined, this),
292
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(KeyboardShortcutHint, {
293
+ shortcut: "Enter",
294
+ action: "confirm"
295
+ }, undefined, false, undefined, this),
296
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ConfigurableShortcutHint, {
297
+ action: "confirm:no",
298
+ context: "Confirmation",
299
+ fallback: "Esc",
300
+ description: "go back"
301
+ }, undefined, false, undefined, this)
302
+ ]
303
+ }, undefined, true, undefined, this),
304
+ children: [
305
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
306
+ flexDirection: "column",
307
+ gap: 0,
308
+ children: [
309
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
310
+ children: [
311
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
312
+ bold: true,
313
+ children: "Type: "
314
+ }, undefined, false, undefined, this),
315
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
316
+ dimColor: true,
317
+ children: agentServer.transport
318
+ }, undefined, false, undefined, this)
319
+ ]
320
+ }, undefined, true, undefined, this),
321
+ agentServer.url && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
322
+ children: [
323
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
324
+ bold: true,
325
+ children: "URL: "
326
+ }, undefined, false, undefined, this),
327
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
328
+ dimColor: true,
329
+ children: agentServer.url
330
+ }, undefined, false, undefined, this)
331
+ ]
332
+ }, undefined, true, undefined, this),
333
+ agentServer.command && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
334
+ children: [
335
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
336
+ bold: true,
337
+ children: "Command: "
338
+ }, undefined, false, undefined, this),
339
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
340
+ dimColor: true,
341
+ children: agentServer.command
342
+ }, undefined, false, undefined, this)
343
+ ]
344
+ }, undefined, true, undefined, this),
345
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
346
+ children: [
347
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
348
+ bold: true,
349
+ children: "Used by: "
350
+ }, undefined, false, undefined, this),
351
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
352
+ dimColor: true,
353
+ children: agentServer.sourceAgents.join(", ")
354
+ }, undefined, false, undefined, this)
355
+ ]
356
+ }, undefined, true, undefined, this),
357
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
358
+ marginTop: 1,
359
+ children: [
360
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
361
+ bold: true,
362
+ children: "Status: "
363
+ }, undefined, false, undefined, this),
364
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
365
+ children: [
366
+ color("inactive", theme)(figures_default.radioOff),
367
+ " not connected (agent-only)"
368
+ ]
369
+ }, undefined, true, undefined, this)
370
+ ]
371
+ }, undefined, true, undefined, this),
372
+ agentServer.needsAuth && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
373
+ children: [
374
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
375
+ bold: true,
376
+ children: "Auth: "
377
+ }, undefined, false, undefined, this),
378
+ agentServer.isAuthenticated ? /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
379
+ children: [
380
+ color("success", theme)(figures_default.tick),
381
+ " authenticated"
382
+ ]
383
+ }, undefined, true, undefined, this) : /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
384
+ children: [
385
+ color("warning", theme)(figures_default.triangleUpOutline),
386
+ " may need authentication"
387
+ ]
388
+ }, undefined, true, undefined, this)
389
+ ]
390
+ }, undefined, true, undefined, this)
391
+ ]
392
+ }, undefined, true, undefined, this),
393
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
394
+ children: /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
395
+ dimColor: true,
396
+ children: "This server connects only when running the agent."
397
+ }, undefined, false, undefined, this)
398
+ }, undefined, false, undefined, this),
399
+ error && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
400
+ children: /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
401
+ color: "error",
402
+ children: [
403
+ "Error: ",
404
+ error
405
+ ]
406
+ }, undefined, true, undefined, this)
407
+ }, undefined, false, undefined, this),
408
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
409
+ children: /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Select, {
410
+ options: menuOptions,
411
+ onChange: async (value) => {
412
+ switch (value) {
413
+ case "auth":
414
+ await handleAuthenticate();
415
+ break;
416
+ case "back":
417
+ onCancel();
418
+ break;
419
+ }
420
+ },
421
+ onCancel
422
+ }, undefined, false, undefined, this)
423
+ }, undefined, false, undefined, this)
424
+ ]
425
+ }, undefined, true, undefined, this);
426
+ }
427
+ var import_react, jsx_dev_runtime;
428
+ var init_MCPAgentServerMenu = __esm(() => {
429
+ init_figures();
430
+ init_ink();
431
+ init_useKeybinding();
432
+ init_auth();
433
+ init_stringUtils();
434
+ init_ConfigurableShortcutHint();
435
+ init_CustomSelect();
436
+ init_Byline();
437
+ init_Dialog();
438
+ init_KeyboardShortcutHint();
439
+ init_Spinner();
440
+ import_react = __toESM(require_react(), 1);
441
+ jsx_dev_runtime = __toESM(require_jsx_dev_runtime(), 1);
442
+ });
443
+
444
+ // src/components/mcp/MCPListPanel.tsx
445
+ function getScopeHeading(scope) {
446
+ switch (scope) {
447
+ case "project":
448
+ return {
449
+ label: "Project MCPs",
450
+ path: describeMcpConfigFilePath(scope)
451
+ };
452
+ case "user":
453
+ return {
454
+ label: "User MCPs",
455
+ path: describeMcpConfigFilePath(scope)
456
+ };
457
+ case "local":
458
+ return {
459
+ label: "Local MCPs",
460
+ path: describeMcpConfigFilePath(scope)
461
+ };
462
+ case "enterprise":
463
+ return {
464
+ label: "Enterprise MCPs"
465
+ };
466
+ case "dynamic":
467
+ return {
468
+ label: "Built-in MCPs",
469
+ path: "always available"
470
+ };
471
+ default:
472
+ return {
473
+ label: scope
474
+ };
475
+ }
476
+ }
477
+ function groupServersByScope(serverList) {
478
+ const groups = new Map;
479
+ for (const server of serverList) {
480
+ const scope = server.scope;
481
+ if (!groups.has(scope)) {
482
+ groups.set(scope, []);
483
+ }
484
+ groups.get(scope).push(server);
485
+ }
486
+ for (const [, groupServers] of groups) {
487
+ groupServers.sort((a, b) => a.name.localeCompare(b.name));
488
+ }
489
+ return groups;
490
+ }
491
+ function MCPListPanel(t0) {
492
+ const $ = import_compiler_runtime.c(78);
493
+ const {
494
+ servers,
495
+ agentServers: t1,
496
+ onSelectServer,
497
+ onSelectAgentServer,
498
+ onComplete
499
+ } = t0;
500
+ let t2;
501
+ if ($[0] !== t1) {
502
+ t2 = t1 === undefined ? [] : t1;
503
+ $[0] = t1;
504
+ $[1] = t2;
505
+ } else {
506
+ t2 = $[1];
507
+ }
508
+ const agentServers = t2;
509
+ const [theme] = useTheme();
510
+ const [selectedIndex, setSelectedIndex] = import_react2.useState(0);
511
+ let t3;
512
+ if ($[2] !== servers) {
513
+ const regularServers = servers.filter(_temp);
514
+ t3 = groupServersByScope(regularServers);
515
+ $[2] = servers;
516
+ $[3] = t3;
517
+ } else {
518
+ t3 = $[3];
519
+ }
520
+ const serversByScope = t3;
521
+ let t4;
522
+ if ($[4] !== servers) {
523
+ t4 = servers.filter(_temp2).sort(_temp3);
524
+ $[4] = servers;
525
+ $[5] = t4;
526
+ } else {
527
+ t4 = $[5];
528
+ }
529
+ const claudeAiServers = t4;
530
+ let t5;
531
+ if ($[6] !== serversByScope) {
532
+ t5 = (serversByScope.get("dynamic") ?? []).sort(_temp4);
533
+ $[6] = serversByScope;
534
+ $[7] = t5;
535
+ } else {
536
+ t5 = $[7];
537
+ }
538
+ const dynamicServers = t5;
539
+ let t6;
540
+ if ($[8] === Symbol.for("react.memo_cache_sentinel")) {
541
+ t6 = getScopeHeading("dynamic");
542
+ $[8] = t6;
543
+ } else {
544
+ t6 = $[8];
545
+ }
546
+ const dynamicHeading = t6;
547
+ let items;
548
+ if ($[9] !== agentServers || $[10] !== claudeAiServers || $[11] !== dynamicServers || $[12] !== serversByScope) {
549
+ items = [];
550
+ for (const scope of SCOPE_ORDER) {
551
+ const scopeServers = serversByScope.get(scope) ?? [];
552
+ for (const server of scopeServers) {
553
+ items.push({
554
+ type: "server",
555
+ server
556
+ });
557
+ }
558
+ }
559
+ for (const server_0 of claudeAiServers) {
560
+ items.push({
561
+ type: "server",
562
+ server: server_0
563
+ });
564
+ }
565
+ for (const agentServer of agentServers) {
566
+ items.push({
567
+ type: "agent-server",
568
+ agentServer
569
+ });
570
+ }
571
+ for (const server_1 of dynamicServers) {
572
+ items.push({
573
+ type: "server",
574
+ server: server_1
575
+ });
576
+ }
577
+ $[9] = agentServers;
578
+ $[10] = claudeAiServers;
579
+ $[11] = dynamicServers;
580
+ $[12] = serversByScope;
581
+ $[13] = items;
582
+ } else {
583
+ items = $[13];
584
+ }
585
+ const selectableItems = items;
586
+ let t7;
587
+ if ($[14] !== onComplete) {
588
+ t7 = () => {
589
+ onComplete("MCP dialog dismissed", {
590
+ display: "system"
591
+ });
592
+ };
593
+ $[14] = onComplete;
594
+ $[15] = t7;
595
+ } else {
596
+ t7 = $[15];
597
+ }
598
+ const handleCancel = t7;
599
+ let t8;
600
+ if ($[16] !== onSelectAgentServer || $[17] !== onSelectServer || $[18] !== selectableItems || $[19] !== selectedIndex) {
601
+ t8 = () => {
602
+ const item = selectableItems[selectedIndex];
603
+ if (!item) {
604
+ return;
605
+ }
606
+ if (item.type === "server") {
607
+ onSelectServer(item.server);
608
+ } else {
609
+ if (item.type === "agent-server" && onSelectAgentServer) {
610
+ onSelectAgentServer(item.agentServer);
611
+ }
612
+ }
613
+ };
614
+ $[16] = onSelectAgentServer;
615
+ $[17] = onSelectServer;
616
+ $[18] = selectableItems;
617
+ $[19] = selectedIndex;
618
+ $[20] = t8;
619
+ } else {
620
+ t8 = $[20];
621
+ }
622
+ const handleSelect = t8;
623
+ let t10;
624
+ let t9;
625
+ if ($[21] !== selectableItems) {
626
+ t9 = () => setSelectedIndex((prev) => prev === 0 ? selectableItems.length - 1 : prev - 1);
627
+ t10 = () => setSelectedIndex((prev_0) => prev_0 === selectableItems.length - 1 ? 0 : prev_0 + 1);
628
+ $[21] = selectableItems;
629
+ $[22] = t10;
630
+ $[23] = t9;
631
+ } else {
632
+ t10 = $[22];
633
+ t9 = $[23];
634
+ }
635
+ let t11;
636
+ if ($[24] !== handleCancel || $[25] !== handleSelect || $[26] !== t10 || $[27] !== t9) {
637
+ t11 = {
638
+ "confirm:previous": t9,
639
+ "confirm:next": t10,
640
+ "confirm:yes": handleSelect,
641
+ "confirm:no": handleCancel
642
+ };
643
+ $[24] = handleCancel;
644
+ $[25] = handleSelect;
645
+ $[26] = t10;
646
+ $[27] = t9;
647
+ $[28] = t11;
648
+ } else {
649
+ t11 = $[28];
650
+ }
651
+ let t12;
652
+ if ($[29] === Symbol.for("react.memo_cache_sentinel")) {
653
+ t12 = {
654
+ context: "Confirmation"
655
+ };
656
+ $[29] = t12;
657
+ } else {
658
+ t12 = $[29];
659
+ }
660
+ useKeybindings(t11, t12);
661
+ let t13;
662
+ if ($[30] !== selectableItems) {
663
+ t13 = (server_2) => selectableItems.findIndex((item_0) => item_0.type === "server" && item_0.server === server_2);
664
+ $[30] = selectableItems;
665
+ $[31] = t13;
666
+ } else {
667
+ t13 = $[31];
668
+ }
669
+ const getServerIndex = t13;
670
+ let t14;
671
+ if ($[32] !== selectableItems) {
672
+ t14 = (agentServer_0) => selectableItems.findIndex((item_1) => item_1.type === "agent-server" && item_1.agentServer === agentServer_0);
673
+ $[32] = selectableItems;
674
+ $[33] = t14;
675
+ } else {
676
+ t14 = $[33];
677
+ }
678
+ const getAgentServerIndex = t14;
679
+ let t15;
680
+ if ($[34] === Symbol.for("react.memo_cache_sentinel")) {
681
+ t15 = isDebugMode();
682
+ $[34] = t15;
683
+ } else {
684
+ t15 = $[34];
685
+ }
686
+ const debugMode = t15;
687
+ let t16;
688
+ if ($[35] !== servers) {
689
+ t16 = servers.some(_temp5);
690
+ $[35] = servers;
691
+ $[36] = t16;
692
+ } else {
693
+ t16 = $[36];
694
+ }
695
+ const hasFailedClients = t16;
696
+ if (servers.length === 0 && agentServers.length === 0) {
697
+ return null;
698
+ }
699
+ let t17;
700
+ if ($[37] !== getServerIndex || $[38] !== selectedIndex || $[39] !== theme) {
701
+ t17 = (server_3) => {
702
+ const index = getServerIndex(server_3);
703
+ const isSelected = selectedIndex === index;
704
+ let statusIcon;
705
+ let statusText;
706
+ if (server_3.client.type === "disabled") {
707
+ statusIcon = color("inactive", theme)(figures_default.radioOff);
708
+ statusText = "disabled";
709
+ } else {
710
+ if (server_3.client.type === "connected") {
711
+ statusIcon = color("success", theme)(figures_default.tick);
712
+ statusText = "connected";
713
+ } else {
714
+ if (server_3.client.type === "pending") {
715
+ statusIcon = color("inactive", theme)(figures_default.radioOff);
716
+ const {
717
+ reconnectAttempt,
718
+ maxReconnectAttempts
719
+ } = server_3.client;
720
+ if (reconnectAttempt && maxReconnectAttempts) {
721
+ statusText = `reconnecting (${reconnectAttempt}/${maxReconnectAttempts})\u2026`;
722
+ } else {
723
+ statusText = "connecting\u2026";
724
+ }
725
+ } else {
726
+ if (server_3.client.type === "needs-auth") {
727
+ statusIcon = color("warning", theme)(figures_default.triangleUpOutline);
728
+ statusText = "needs authentication";
729
+ } else {
730
+ statusIcon = color("error", theme)(figures_default.cross);
731
+ statusText = "failed";
732
+ }
733
+ }
734
+ }
735
+ }
736
+ return /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
737
+ children: [
738
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
739
+ color: isSelected ? "suggestion" : undefined,
740
+ children: isSelected ? `${figures_default.pointer} ` : " "
741
+ }, undefined, false, undefined, this),
742
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
743
+ color: isSelected ? "suggestion" : undefined,
744
+ children: server_3.name
745
+ }, undefined, false, undefined, this),
746
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
747
+ dimColor: !isSelected,
748
+ children: [
749
+ " \xB7 ",
750
+ statusIcon,
751
+ " "
752
+ ]
753
+ }, undefined, true, undefined, this),
754
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
755
+ dimColor: !isSelected,
756
+ children: statusText
757
+ }, undefined, false, undefined, this)
758
+ ]
759
+ }, `${server_3.name}-${index}`, true, undefined, this);
760
+ };
761
+ $[37] = getServerIndex;
762
+ $[38] = selectedIndex;
763
+ $[39] = theme;
764
+ $[40] = t17;
765
+ } else {
766
+ t17 = $[40];
767
+ }
768
+ const renderServerItem = t17;
769
+ let t18;
770
+ if ($[41] !== getAgentServerIndex || $[42] !== selectedIndex || $[43] !== theme) {
771
+ t18 = (agentServer_1) => {
772
+ const index_0 = getAgentServerIndex(agentServer_1);
773
+ const isSelected_0 = selectedIndex === index_0;
774
+ const statusIcon_0 = agentServer_1.needsAuth ? color("warning", theme)(figures_default.triangleUpOutline) : color("inactive", theme)(figures_default.radioOff);
775
+ const statusText_0 = agentServer_1.needsAuth ? "may need auth" : "agent-only";
776
+ return /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
777
+ children: [
778
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
779
+ color: isSelected_0 ? "suggestion" : undefined,
780
+ children: isSelected_0 ? `${figures_default.pointer} ` : " "
781
+ }, undefined, false, undefined, this),
782
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
783
+ color: isSelected_0 ? "suggestion" : undefined,
784
+ children: agentServer_1.name
785
+ }, undefined, false, undefined, this),
786
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
787
+ dimColor: !isSelected_0,
788
+ children: [
789
+ " \xB7 ",
790
+ statusIcon_0,
791
+ " "
792
+ ]
793
+ }, undefined, true, undefined, this),
794
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
795
+ dimColor: !isSelected_0,
796
+ children: statusText_0
797
+ }, undefined, false, undefined, this)
798
+ ]
799
+ }, `agent-${agentServer_1.name}-${index_0}`, true, undefined, this);
800
+ };
801
+ $[41] = getAgentServerIndex;
802
+ $[42] = selectedIndex;
803
+ $[43] = theme;
804
+ $[44] = t18;
805
+ } else {
806
+ t18 = $[44];
807
+ }
808
+ const renderAgentServerItem = t18;
809
+ const totalServers = servers.length + agentServers.length;
810
+ let t19;
811
+ if ($[45] === Symbol.for("react.memo_cache_sentinel")) {
812
+ t19 = /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(McpParsingWarnings, {}, undefined, false, undefined, this);
813
+ $[45] = t19;
814
+ } else {
815
+ t19 = $[45];
816
+ }
817
+ let t20;
818
+ if ($[46] !== totalServers) {
819
+ t20 = plural(totalServers, "server");
820
+ $[46] = totalServers;
821
+ $[47] = t20;
822
+ } else {
823
+ t20 = $[47];
824
+ }
825
+ const t21 = `${totalServers} ${t20}`;
826
+ let t22;
827
+ if ($[48] !== renderServerItem || $[49] !== serversByScope) {
828
+ t22 = SCOPE_ORDER.map((scope_0) => {
829
+ const scopeServers_0 = serversByScope.get(scope_0);
830
+ if (!scopeServers_0 || scopeServers_0.length === 0) {
831
+ return null;
832
+ }
833
+ const heading = getScopeHeading(scope_0);
834
+ return /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
835
+ flexDirection: "column",
836
+ marginBottom: 1,
837
+ children: [
838
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
839
+ paddingLeft: 2,
840
+ children: [
841
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
842
+ bold: true,
843
+ children: heading.label
844
+ }, undefined, false, undefined, this),
845
+ heading.path && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
846
+ dimColor: true,
847
+ children: [
848
+ " (",
849
+ heading.path,
850
+ ")"
851
+ ]
852
+ }, undefined, true, undefined, this)
853
+ ]
854
+ }, undefined, true, undefined, this),
855
+ scopeServers_0.map((server_4) => renderServerItem(server_4))
856
+ ]
857
+ }, scope_0, true, undefined, this);
858
+ });
859
+ $[48] = renderServerItem;
860
+ $[49] = serversByScope;
861
+ $[50] = t22;
862
+ } else {
863
+ t22 = $[50];
864
+ }
865
+ let t23;
866
+ if ($[51] !== claudeAiServers || $[52] !== renderServerItem) {
867
+ t23 = claudeAiServers.length > 0 && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
868
+ flexDirection: "column",
869
+ marginBottom: 1,
870
+ children: [
871
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
872
+ paddingLeft: 2,
873
+ children: /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
874
+ bold: true,
875
+ children: "claude.ai"
876
+ }, undefined, false, undefined, this)
877
+ }, undefined, false, undefined, this),
878
+ claudeAiServers.map((server_5) => renderServerItem(server_5))
879
+ ]
880
+ }, undefined, true, undefined, this);
881
+ $[51] = claudeAiServers;
882
+ $[52] = renderServerItem;
883
+ $[53] = t23;
884
+ } else {
885
+ t23 = $[53];
886
+ }
887
+ let t24;
888
+ if ($[54] !== agentServers || $[55] !== renderAgentServerItem) {
889
+ t24 = agentServers.length > 0 && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
890
+ flexDirection: "column",
891
+ marginBottom: 1,
892
+ children: [
893
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
894
+ paddingLeft: 2,
895
+ children: /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
896
+ bold: true,
897
+ children: "Agent MCPs"
898
+ }, undefined, false, undefined, this)
899
+ }, undefined, false, undefined, this),
900
+ [...new Set(agentServers.flatMap(_temp6))].map((agentName) => /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
901
+ flexDirection: "column",
902
+ marginTop: 1,
903
+ children: [
904
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
905
+ paddingLeft: 2,
906
+ children: /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
907
+ dimColor: true,
908
+ children: [
909
+ "@",
910
+ agentName
911
+ ]
912
+ }, undefined, true, undefined, this)
913
+ }, undefined, false, undefined, this),
914
+ agentServers.filter((s_3) => s_3.sourceAgents.includes(agentName)).map((agentServer_2) => renderAgentServerItem(agentServer_2))
915
+ ]
916
+ }, agentName, true, undefined, this))
917
+ ]
918
+ }, undefined, true, undefined, this);
919
+ $[54] = agentServers;
920
+ $[55] = renderAgentServerItem;
921
+ $[56] = t24;
922
+ } else {
923
+ t24 = $[56];
924
+ }
925
+ let t25;
926
+ if ($[57] !== dynamicServers || $[58] !== renderServerItem) {
927
+ t25 = dynamicServers.length > 0 && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
928
+ flexDirection: "column",
929
+ marginBottom: 1,
930
+ children: [
931
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
932
+ paddingLeft: 2,
933
+ children: [
934
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
935
+ bold: true,
936
+ children: dynamicHeading.label
937
+ }, undefined, false, undefined, this),
938
+ dynamicHeading.path && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
939
+ dimColor: true,
940
+ children: [
941
+ " (",
942
+ dynamicHeading.path,
943
+ ")"
944
+ ]
945
+ }, undefined, true, undefined, this)
946
+ ]
947
+ }, undefined, true, undefined, this),
948
+ dynamicServers.map((server_6) => renderServerItem(server_6))
949
+ ]
950
+ }, undefined, true, undefined, this);
951
+ $[57] = dynamicServers;
952
+ $[58] = renderServerItem;
953
+ $[59] = t25;
954
+ } else {
955
+ t25 = $[59];
956
+ }
957
+ let t26;
958
+ if ($[60] !== hasFailedClients) {
959
+ t26 = hasFailedClients && /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
960
+ dimColor: true,
961
+ children: debugMode ? "\u203B Error logs shown inline with --debug" : "\u203B Run claude --debug to see error logs"
962
+ }, undefined, false, undefined, this);
963
+ $[60] = hasFailedClients;
964
+ $[61] = t26;
965
+ } else {
966
+ t26 = $[61];
967
+ }
968
+ let t27;
969
+ if ($[62] === Symbol.for("react.memo_cache_sentinel")) {
970
+ t27 = /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
971
+ dimColor: true,
972
+ children: [
973
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(Link, {
974
+ url: "https://code.claude.com/docs/en/mcp",
975
+ children: "https://code.claude.com/docs/en/mcp"
976
+ }, undefined, false, undefined, this),
977
+ " ",
978
+ "for help"
979
+ ]
980
+ }, undefined, true, undefined, this);
981
+ $[62] = t27;
982
+ } else {
983
+ t27 = $[62];
984
+ }
985
+ let t28;
986
+ if ($[63] !== t26) {
987
+ t28 = /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
988
+ flexDirection: "column",
989
+ children: [
990
+ t26,
991
+ t27
992
+ ]
993
+ }, undefined, true, undefined, this);
994
+ $[63] = t26;
995
+ $[64] = t28;
996
+ } else {
997
+ t28 = $[64];
998
+ }
999
+ let t29;
1000
+ if ($[65] !== t22 || $[66] !== t23 || $[67] !== t24 || $[68] !== t25 || $[69] !== t28) {
1001
+ t29 = /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
1002
+ flexDirection: "column",
1003
+ children: [
1004
+ t22,
1005
+ t23,
1006
+ t24,
1007
+ t25,
1008
+ t28
1009
+ ]
1010
+ }, undefined, true, undefined, this);
1011
+ $[65] = t22;
1012
+ $[66] = t23;
1013
+ $[67] = t24;
1014
+ $[68] = t25;
1015
+ $[69] = t28;
1016
+ $[70] = t29;
1017
+ } else {
1018
+ t29 = $[70];
1019
+ }
1020
+ let t30;
1021
+ if ($[71] !== handleCancel || $[72] !== t21 || $[73] !== t29) {
1022
+ t30 = /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(Dialog, {
1023
+ title: "Manage MCP servers",
1024
+ subtitle: t21,
1025
+ onCancel: handleCancel,
1026
+ hideInputGuide: true,
1027
+ children: t29
1028
+ }, undefined, false, undefined, this);
1029
+ $[71] = handleCancel;
1030
+ $[72] = t21;
1031
+ $[73] = t29;
1032
+ $[74] = t30;
1033
+ } else {
1034
+ t30 = $[74];
1035
+ }
1036
+ let t31;
1037
+ if ($[75] === Symbol.for("react.memo_cache_sentinel")) {
1038
+ t31 = /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
1039
+ paddingX: 1,
1040
+ children: /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedText, {
1041
+ dimColor: true,
1042
+ italic: true,
1043
+ children: /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(Byline, {
1044
+ children: [
1045
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(KeyboardShortcutHint, {
1046
+ shortcut: "\u2191\u2193",
1047
+ action: "navigate"
1048
+ }, undefined, false, undefined, this),
1049
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(KeyboardShortcutHint, {
1050
+ shortcut: "Enter",
1051
+ action: "confirm"
1052
+ }, undefined, false, undefined, this),
1053
+ /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ConfigurableShortcutHint, {
1054
+ action: "confirm:no",
1055
+ context: "Confirmation",
1056
+ fallback: "Esc",
1057
+ description: "cancel"
1058
+ }, undefined, false, undefined, this)
1059
+ ]
1060
+ }, undefined, true, undefined, this)
1061
+ }, undefined, false, undefined, this)
1062
+ }, undefined, false, undefined, this);
1063
+ $[75] = t31;
1064
+ } else {
1065
+ t31 = $[75];
1066
+ }
1067
+ let t32;
1068
+ if ($[76] !== t30) {
1069
+ t32 = /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(ThemedBox_default, {
1070
+ flexDirection: "column",
1071
+ children: [
1072
+ t19,
1073
+ t30,
1074
+ t31
1075
+ ]
1076
+ }, undefined, true, undefined, this);
1077
+ $[76] = t30;
1078
+ $[77] = t32;
1079
+ } else {
1080
+ t32 = $[77];
1081
+ }
1082
+ return t32;
1083
+ }
1084
+ function _temp6(s_2) {
1085
+ return s_2.sourceAgents;
1086
+ }
1087
+ function _temp5(s_1) {
1088
+ return s_1.client.type === "failed";
1089
+ }
1090
+ function _temp4(a_0, b_0) {
1091
+ return a_0.name.localeCompare(b_0.name);
1092
+ }
1093
+ function _temp3(a, b) {
1094
+ return a.name.localeCompare(b.name);
1095
+ }
1096
+ function _temp2(s_0) {
1097
+ return s_0.client.config.type === "claudeai-proxy";
1098
+ }
1099
+ function _temp(s) {
1100
+ return s.client.config.type !== "claudeai-proxy";
1101
+ }
1102
+ var import_compiler_runtime, import_react2, jsx_dev_runtime2, SCOPE_ORDER;
1103
+ var init_MCPListPanel = __esm(() => {
1104
+ init_figures();
1105
+ init_ink();
1106
+ init_useKeybinding();
1107
+ init_utils();
1108
+ init_debug();
1109
+ init_stringUtils();
1110
+ init_ConfigurableShortcutHint();
1111
+ init_Byline();
1112
+ init_Dialog();
1113
+ init_KeyboardShortcutHint();
1114
+ init_McpParsingWarnings();
1115
+ import_compiler_runtime = __toESM(require_compiler_runtime(), 1);
1116
+ import_react2 = __toESM(require_react(), 1);
1117
+ jsx_dev_runtime2 = __toESM(require_jsx_dev_runtime(), 1);
1118
+ SCOPE_ORDER = ["project", "local", "user", "enterprise"];
1119
+ });
1120
+
1121
+ // src/components/mcp/MCPReconnect.tsx
1122
+ function MCPReconnect(t0) {
1123
+ const $ = import_compiler_runtime2.c(25);
1124
+ const {
1125
+ serverName,
1126
+ onComplete
1127
+ } = t0;
1128
+ const [theme] = useTheme();
1129
+ const store = useAppStateStore();
1130
+ const reconnectMcpServer = useMcpReconnect();
1131
+ const [isReconnecting, setIsReconnecting] = import_react3.useState(true);
1132
+ const [error, setError] = import_react3.useState(null);
1133
+ let t1;
1134
+ let t2;
1135
+ if ($[0] !== onComplete || $[1] !== reconnectMcpServer || $[2] !== serverName || $[3] !== store) {
1136
+ t1 = () => {
1137
+ const attemptReconnect = async function attemptReconnect2() {
1138
+ try {
1139
+ const server = store.getState().mcp.clients.find((c) => c.name === serverName);
1140
+ if (!server) {
1141
+ setError(`MCP server "${serverName}" not found`);
1142
+ setIsReconnecting(false);
1143
+ onComplete(`MCP server "${serverName}" not found`);
1144
+ return;
1145
+ }
1146
+ const result = await reconnectMcpServer(serverName);
1147
+ bb43:
1148
+ switch (result.client.type) {
1149
+ case "connected": {
1150
+ setIsReconnecting(false);
1151
+ onComplete(`Successfully reconnected to ${serverName}`);
1152
+ break bb43;
1153
+ }
1154
+ case "needs-auth": {
1155
+ setError(`${serverName} requires authentication`);
1156
+ setIsReconnecting(false);
1157
+ onComplete(`${serverName} requires authentication. Use /mcp to authenticate.`);
1158
+ break bb43;
1159
+ }
1160
+ case "pending":
1161
+ case "failed":
1162
+ case "disabled": {
1163
+ setError(`Failed to reconnect to ${serverName}`);
1164
+ setIsReconnecting(false);
1165
+ onComplete(`Failed to reconnect to ${serverName}`);
1166
+ }
1167
+ }
1168
+ } catch (t3) {
1169
+ const err = t3;
1170
+ const errorMessage = err instanceof Error ? err.message : String(err);
1171
+ setError(errorMessage);
1172
+ setIsReconnecting(false);
1173
+ onComplete(`Error: ${errorMessage}`);
1174
+ }
1175
+ };
1176
+ attemptReconnect();
1177
+ };
1178
+ t2 = [serverName, reconnectMcpServer, store, onComplete];
1179
+ $[0] = onComplete;
1180
+ $[1] = reconnectMcpServer;
1181
+ $[2] = serverName;
1182
+ $[3] = store;
1183
+ $[4] = t1;
1184
+ $[5] = t2;
1185
+ } else {
1186
+ t1 = $[4];
1187
+ t2 = $[5];
1188
+ }
1189
+ import_react3.useEffect(t1, t2);
1190
+ if (isReconnecting) {
1191
+ let t3;
1192
+ if ($[6] !== serverName) {
1193
+ t3 = /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedText, {
1194
+ color: "text",
1195
+ children: [
1196
+ "Reconnecting to ",
1197
+ /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedText, {
1198
+ bold: true,
1199
+ children: serverName
1200
+ }, undefined, false, undefined, this)
1201
+ ]
1202
+ }, undefined, true, undefined, this);
1203
+ $[6] = serverName;
1204
+ $[7] = t3;
1205
+ } else {
1206
+ t3 = $[7];
1207
+ }
1208
+ let t4;
1209
+ if ($[8] === Symbol.for("react.memo_cache_sentinel")) {
1210
+ t4 = /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedBox_default, {
1211
+ children: [
1212
+ /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(Spinner, {}, undefined, false, undefined, this),
1213
+ /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedText, {
1214
+ children: " Establishing connection to MCP server"
1215
+ }, undefined, false, undefined, this)
1216
+ ]
1217
+ }, undefined, true, undefined, this);
1218
+ $[8] = t4;
1219
+ } else {
1220
+ t4 = $[8];
1221
+ }
1222
+ let t5;
1223
+ if ($[9] !== t3) {
1224
+ t5 = /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedBox_default, {
1225
+ flexDirection: "column",
1226
+ gap: 1,
1227
+ padding: 1,
1228
+ children: [
1229
+ t3,
1230
+ t4
1231
+ ]
1232
+ }, undefined, true, undefined, this);
1233
+ $[9] = t3;
1234
+ $[10] = t5;
1235
+ } else {
1236
+ t5 = $[10];
1237
+ }
1238
+ return t5;
1239
+ }
1240
+ if (error) {
1241
+ let t3;
1242
+ if ($[11] !== theme) {
1243
+ t3 = color("error", theme)(figures_default.cross);
1244
+ $[11] = theme;
1245
+ $[12] = t3;
1246
+ } else {
1247
+ t3 = $[12];
1248
+ }
1249
+ let t4;
1250
+ if ($[13] !== t3) {
1251
+ t4 = /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedText, {
1252
+ children: [
1253
+ t3,
1254
+ " "
1255
+ ]
1256
+ }, undefined, true, undefined, this);
1257
+ $[13] = t3;
1258
+ $[14] = t4;
1259
+ } else {
1260
+ t4 = $[14];
1261
+ }
1262
+ let t5;
1263
+ if ($[15] !== serverName) {
1264
+ t5 = /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedText, {
1265
+ color: "error",
1266
+ children: [
1267
+ "Failed to reconnect to ",
1268
+ serverName
1269
+ ]
1270
+ }, undefined, true, undefined, this);
1271
+ $[15] = serverName;
1272
+ $[16] = t5;
1273
+ } else {
1274
+ t5 = $[16];
1275
+ }
1276
+ let t6;
1277
+ if ($[17] !== t4 || $[18] !== t5) {
1278
+ t6 = /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedBox_default, {
1279
+ children: [
1280
+ t4,
1281
+ t5
1282
+ ]
1283
+ }, undefined, true, undefined, this);
1284
+ $[17] = t4;
1285
+ $[18] = t5;
1286
+ $[19] = t6;
1287
+ } else {
1288
+ t6 = $[19];
1289
+ }
1290
+ let t7;
1291
+ if ($[20] !== error) {
1292
+ t7 = /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedText, {
1293
+ dimColor: true,
1294
+ children: [
1295
+ "Error: ",
1296
+ error
1297
+ ]
1298
+ }, undefined, true, undefined, this);
1299
+ $[20] = error;
1300
+ $[21] = t7;
1301
+ } else {
1302
+ t7 = $[21];
1303
+ }
1304
+ let t8;
1305
+ if ($[22] !== t6 || $[23] !== t7) {
1306
+ t8 = /* @__PURE__ */ jsx_dev_runtime3.jsxDEV(ThemedBox_default, {
1307
+ flexDirection: "column",
1308
+ gap: 1,
1309
+ padding: 1,
1310
+ children: [
1311
+ t6,
1312
+ t7
1313
+ ]
1314
+ }, undefined, true, undefined, this);
1315
+ $[22] = t6;
1316
+ $[23] = t7;
1317
+ $[24] = t8;
1318
+ } else {
1319
+ t8 = $[24];
1320
+ }
1321
+ return t8;
1322
+ }
1323
+ return null;
1324
+ }
1325
+ var import_compiler_runtime2, import_react3, jsx_dev_runtime3;
1326
+ var init_MCPReconnect = __esm(() => {
1327
+ init_figures();
1328
+ init_ink();
1329
+ init_MCPConnectionManager();
1330
+ init_AppState();
1331
+ init_Spinner();
1332
+ import_compiler_runtime2 = __toESM(require_compiler_runtime(), 1);
1333
+ import_react3 = __toESM(require_react(), 1);
1334
+ jsx_dev_runtime3 = __toESM(require_jsx_dev_runtime(), 1);
1335
+ });
1336
+
1337
+ // src/components/mcp/MCPSettings.tsx
1338
+ function MCPSettings(t0) {
1339
+ const $ = import_compiler_runtime3.c(66);
1340
+ const {
1341
+ onComplete
1342
+ } = t0;
1343
+ const mcp = useAppState(_temp7);
1344
+ const agentDefinitions = useAppState(_temp22);
1345
+ const mcpClients = mcp.clients;
1346
+ let t1;
1347
+ if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
1348
+ t1 = {
1349
+ type: "list"
1350
+ };
1351
+ $[0] = t1;
1352
+ } else {
1353
+ t1 = $[0];
1354
+ }
1355
+ const [viewState, setViewState] = import_react4.default.useState(t1);
1356
+ let t2;
1357
+ if ($[1] === Symbol.for("react.memo_cache_sentinel")) {
1358
+ t2 = [];
1359
+ $[1] = t2;
1360
+ } else {
1361
+ t2 = $[1];
1362
+ }
1363
+ const [servers, setServers] = import_react4.default.useState(t2);
1364
+ let t3;
1365
+ if ($[2] !== agentDefinitions.allAgents) {
1366
+ t3 = extractAgentMcpServers(agentDefinitions.allAgents);
1367
+ $[2] = agentDefinitions.allAgents;
1368
+ $[3] = t3;
1369
+ } else {
1370
+ t3 = $[3];
1371
+ }
1372
+ const agentMcpServers = t3;
1373
+ let t4;
1374
+ if ($[4] !== mcpClients) {
1375
+ t4 = mcpClients.filter(_temp32).sort(_temp42);
1376
+ $[4] = mcpClients;
1377
+ $[5] = t4;
1378
+ } else {
1379
+ t4 = $[5];
1380
+ }
1381
+ const filteredClients = t4;
1382
+ let t5;
1383
+ let t6;
1384
+ if ($[6] !== filteredClients || $[7] !== mcp.tools) {
1385
+ t5 = () => {
1386
+ let cancelled = false;
1387
+ const prepareServers = async function prepareServers2() {
1388
+ const serverInfos = await Promise.all(filteredClients.map(async (client_0) => {
1389
+ const scope = client_0.config.scope;
1390
+ const isSSE = client_0.config.type === "sse";
1391
+ const isHTTP = client_0.config.type === "http";
1392
+ const isClaudeAIProxy = client_0.config.type === "claudeai-proxy";
1393
+ let isAuthenticated = undefined;
1394
+ if (isSSE || isHTTP) {
1395
+ const authProvider = new ClaudeAuthProvider(client_0.name, client_0.config);
1396
+ const tokens = await authProvider.tokens();
1397
+ const hasSessionAuth = getSessionIngressAuthToken() !== null && client_0.type === "connected";
1398
+ const hasToolsAndConnected = client_0.type === "connected" && filterToolsByServer(mcp.tools, client_0.name).length > 0;
1399
+ isAuthenticated = Boolean(tokens) || hasSessionAuth || hasToolsAndConnected;
1400
+ }
1401
+ const baseInfo = {
1402
+ name: client_0.name,
1403
+ client: client_0,
1404
+ scope
1405
+ };
1406
+ if (isClaudeAIProxy) {
1407
+ return {
1408
+ ...baseInfo,
1409
+ transport: "claudeai-proxy",
1410
+ isAuthenticated: false,
1411
+ config: client_0.config
1412
+ };
1413
+ } else {
1414
+ if (isSSE) {
1415
+ return {
1416
+ ...baseInfo,
1417
+ transport: "sse",
1418
+ isAuthenticated,
1419
+ config: client_0.config
1420
+ };
1421
+ } else {
1422
+ if (isHTTP) {
1423
+ return {
1424
+ ...baseInfo,
1425
+ transport: "http",
1426
+ isAuthenticated,
1427
+ config: client_0.config
1428
+ };
1429
+ } else {
1430
+ return {
1431
+ ...baseInfo,
1432
+ transport: "stdio",
1433
+ config: client_0.config
1434
+ };
1435
+ }
1436
+ }
1437
+ }
1438
+ }));
1439
+ if (cancelled) {
1440
+ return;
1441
+ }
1442
+ setServers(serverInfos);
1443
+ };
1444
+ prepareServers();
1445
+ return () => {
1446
+ cancelled = true;
1447
+ };
1448
+ };
1449
+ t6 = [filteredClients, mcp.tools];
1450
+ $[6] = filteredClients;
1451
+ $[7] = mcp.tools;
1452
+ $[8] = t5;
1453
+ $[9] = t6;
1454
+ } else {
1455
+ t5 = $[8];
1456
+ t6 = $[9];
1457
+ }
1458
+ import_react4.default.useEffect(t5, t6);
1459
+ let t7;
1460
+ let t8;
1461
+ if ($[10] !== agentMcpServers.length || $[11] !== filteredClients.length || $[12] !== onComplete || $[13] !== servers.length) {
1462
+ t7 = () => {
1463
+ if (servers.length === 0 && filteredClients.length > 0) {
1464
+ return;
1465
+ }
1466
+ if (servers.length === 0 && agentMcpServers.length === 0) {
1467
+ onComplete("No MCP servers configured. Please run /doctor if this is unexpected. Otherwise, run `claude mcp --help` or visit https://code.claude.com/docs/en/mcp to learn more.");
1468
+ }
1469
+ };
1470
+ t8 = [servers.length, filteredClients.length, agentMcpServers.length, onComplete];
1471
+ $[10] = agentMcpServers.length;
1472
+ $[11] = filteredClients.length;
1473
+ $[12] = onComplete;
1474
+ $[13] = servers.length;
1475
+ $[14] = t7;
1476
+ $[15] = t8;
1477
+ } else {
1478
+ t7 = $[14];
1479
+ t8 = $[15];
1480
+ }
1481
+ import_react4.useEffect(t7, t8);
1482
+ switch (viewState.type) {
1483
+ case "list": {
1484
+ let t10;
1485
+ let t9;
1486
+ if ($[16] === Symbol.for("react.memo_cache_sentinel")) {
1487
+ t9 = (server) => setViewState({
1488
+ type: "server-menu",
1489
+ server
1490
+ });
1491
+ t10 = (agentServer) => setViewState({
1492
+ type: "agent-server-menu",
1493
+ agentServer
1494
+ });
1495
+ $[16] = t10;
1496
+ $[17] = t9;
1497
+ } else {
1498
+ t10 = $[16];
1499
+ t9 = $[17];
1500
+ }
1501
+ let t11;
1502
+ if ($[18] !== agentMcpServers || $[19] !== onComplete || $[20] !== servers || $[21] !== viewState.defaultTab) {
1503
+ t11 = /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(MCPListPanel, {
1504
+ servers,
1505
+ agentServers: agentMcpServers,
1506
+ onSelectServer: t9,
1507
+ onSelectAgentServer: t10,
1508
+ onComplete,
1509
+ defaultTab: viewState.defaultTab
1510
+ }, undefined, false, undefined, this);
1511
+ $[18] = agentMcpServers;
1512
+ $[19] = onComplete;
1513
+ $[20] = servers;
1514
+ $[21] = viewState.defaultTab;
1515
+ $[22] = t11;
1516
+ } else {
1517
+ t11 = $[22];
1518
+ }
1519
+ return t11;
1520
+ }
1521
+ case "server-menu": {
1522
+ let t9;
1523
+ if ($[23] !== mcp.tools || $[24] !== viewState.server.name) {
1524
+ t9 = filterToolsByServer(mcp.tools, viewState.server.name);
1525
+ $[23] = mcp.tools;
1526
+ $[24] = viewState.server.name;
1527
+ $[25] = t9;
1528
+ } else {
1529
+ t9 = $[25];
1530
+ }
1531
+ const serverTools_0 = t9;
1532
+ const defaultTab = viewState.server.transport === "claudeai-proxy" ? "claude.ai" : "Claude Code";
1533
+ if (viewState.server.transport === "stdio") {
1534
+ let t10;
1535
+ if ($[26] !== viewState.server) {
1536
+ t10 = () => setViewState({
1537
+ type: "server-tools",
1538
+ server: viewState.server
1539
+ });
1540
+ $[26] = viewState.server;
1541
+ $[27] = t10;
1542
+ } else {
1543
+ t10 = $[27];
1544
+ }
1545
+ let t11;
1546
+ if ($[28] !== defaultTab) {
1547
+ t11 = () => setViewState({
1548
+ type: "list",
1549
+ defaultTab
1550
+ });
1551
+ $[28] = defaultTab;
1552
+ $[29] = t11;
1553
+ } else {
1554
+ t11 = $[29];
1555
+ }
1556
+ let t12;
1557
+ if ($[30] !== onComplete || $[31] !== serverTools_0.length || $[32] !== t10 || $[33] !== t11 || $[34] !== viewState.server) {
1558
+ t12 = /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(MCPStdioServerMenu, {
1559
+ server: viewState.server,
1560
+ serverToolsCount: serverTools_0.length,
1561
+ onViewTools: t10,
1562
+ onCancel: t11,
1563
+ onComplete
1564
+ }, undefined, false, undefined, this);
1565
+ $[30] = onComplete;
1566
+ $[31] = serverTools_0.length;
1567
+ $[32] = t10;
1568
+ $[33] = t11;
1569
+ $[34] = viewState.server;
1570
+ $[35] = t12;
1571
+ } else {
1572
+ t12 = $[35];
1573
+ }
1574
+ return t12;
1575
+ } else {
1576
+ let t10;
1577
+ if ($[36] !== viewState.server) {
1578
+ t10 = () => setViewState({
1579
+ type: "server-tools",
1580
+ server: viewState.server
1581
+ });
1582
+ $[36] = viewState.server;
1583
+ $[37] = t10;
1584
+ } else {
1585
+ t10 = $[37];
1586
+ }
1587
+ let t11;
1588
+ if ($[38] !== defaultTab) {
1589
+ t11 = () => setViewState({
1590
+ type: "list",
1591
+ defaultTab
1592
+ });
1593
+ $[38] = defaultTab;
1594
+ $[39] = t11;
1595
+ } else {
1596
+ t11 = $[39];
1597
+ }
1598
+ let t12;
1599
+ if ($[40] !== onComplete || $[41] !== serverTools_0.length || $[42] !== t10 || $[43] !== t11 || $[44] !== viewState.server) {
1600
+ t12 = /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(MCPRemoteServerMenu, {
1601
+ server: viewState.server,
1602
+ serverToolsCount: serverTools_0.length,
1603
+ onViewTools: t10,
1604
+ onCancel: t11,
1605
+ onComplete
1606
+ }, undefined, false, undefined, this);
1607
+ $[40] = onComplete;
1608
+ $[41] = serverTools_0.length;
1609
+ $[42] = t10;
1610
+ $[43] = t11;
1611
+ $[44] = viewState.server;
1612
+ $[45] = t12;
1613
+ } else {
1614
+ t12 = $[45];
1615
+ }
1616
+ return t12;
1617
+ }
1618
+ }
1619
+ case "server-tools": {
1620
+ let t10;
1621
+ let t9;
1622
+ if ($[46] !== viewState.server) {
1623
+ t9 = (_, index) => setViewState({
1624
+ type: "server-tool-detail",
1625
+ server: viewState.server,
1626
+ toolIndex: index
1627
+ });
1628
+ t10 = () => setViewState({
1629
+ type: "server-menu",
1630
+ server: viewState.server
1631
+ });
1632
+ $[46] = viewState.server;
1633
+ $[47] = t10;
1634
+ $[48] = t9;
1635
+ } else {
1636
+ t10 = $[47];
1637
+ t9 = $[48];
1638
+ }
1639
+ let t11;
1640
+ if ($[49] !== t10 || $[50] !== t9 || $[51] !== viewState.server) {
1641
+ t11 = /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(MCPToolListView, {
1642
+ server: viewState.server,
1643
+ onSelectTool: t9,
1644
+ onBack: t10
1645
+ }, undefined, false, undefined, this);
1646
+ $[49] = t10;
1647
+ $[50] = t9;
1648
+ $[51] = viewState.server;
1649
+ $[52] = t11;
1650
+ } else {
1651
+ t11 = $[52];
1652
+ }
1653
+ return t11;
1654
+ }
1655
+ case "server-tool-detail": {
1656
+ let t9;
1657
+ if ($[53] !== mcp.tools || $[54] !== viewState.server.name) {
1658
+ t9 = filterToolsByServer(mcp.tools, viewState.server.name);
1659
+ $[53] = mcp.tools;
1660
+ $[54] = viewState.server.name;
1661
+ $[55] = t9;
1662
+ } else {
1663
+ t9 = $[55];
1664
+ }
1665
+ const serverTools = t9;
1666
+ const tool = serverTools[viewState.toolIndex];
1667
+ if (!tool) {
1668
+ setViewState({
1669
+ type: "server-tools",
1670
+ server: viewState.server
1671
+ });
1672
+ return null;
1673
+ }
1674
+ let t10;
1675
+ if ($[56] !== viewState.server) {
1676
+ t10 = () => setViewState({
1677
+ type: "server-tools",
1678
+ server: viewState.server
1679
+ });
1680
+ $[56] = viewState.server;
1681
+ $[57] = t10;
1682
+ } else {
1683
+ t10 = $[57];
1684
+ }
1685
+ let t11;
1686
+ if ($[58] !== t10 || $[59] !== tool || $[60] !== viewState.server) {
1687
+ t11 = /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(MCPToolDetailView, {
1688
+ tool,
1689
+ server: viewState.server,
1690
+ onBack: t10
1691
+ }, undefined, false, undefined, this);
1692
+ $[58] = t10;
1693
+ $[59] = tool;
1694
+ $[60] = viewState.server;
1695
+ $[61] = t11;
1696
+ } else {
1697
+ t11 = $[61];
1698
+ }
1699
+ return t11;
1700
+ }
1701
+ case "agent-server-menu": {
1702
+ let t9;
1703
+ if ($[62] === Symbol.for("react.memo_cache_sentinel")) {
1704
+ t9 = () => setViewState({
1705
+ type: "list",
1706
+ defaultTab: "Agents"
1707
+ });
1708
+ $[62] = t9;
1709
+ } else {
1710
+ t9 = $[62];
1711
+ }
1712
+ let t10;
1713
+ if ($[63] !== onComplete || $[64] !== viewState.agentServer) {
1714
+ t10 = /* @__PURE__ */ jsx_dev_runtime4.jsxDEV(MCPAgentServerMenu, {
1715
+ agentServer: viewState.agentServer,
1716
+ onCancel: t9,
1717
+ onComplete
1718
+ }, undefined, false, undefined, this);
1719
+ $[63] = onComplete;
1720
+ $[64] = viewState.agentServer;
1721
+ $[65] = t10;
1722
+ } else {
1723
+ t10 = $[65];
1724
+ }
1725
+ return t10;
1726
+ }
1727
+ }
1728
+ }
1729
+ function _temp42(a, b) {
1730
+ return a.name.localeCompare(b.name);
1731
+ }
1732
+ function _temp32(client) {
1733
+ return client.name !== "ide";
1734
+ }
1735
+ function _temp22(s_0) {
1736
+ return s_0.agentDefinitions;
1737
+ }
1738
+ function _temp7(s) {
1739
+ return s.mcp;
1740
+ }
1741
+ var import_compiler_runtime3, import_react4, jsx_dev_runtime4;
1742
+ var init_MCPSettings = __esm(() => {
1743
+ init_auth();
1744
+ init_utils();
1745
+ init_AppState();
1746
+ init_sessionIngressAuth();
1747
+ init_MCPAgentServerMenu();
1748
+ init_MCPListPanel();
1749
+ init_MCPRemoteServerMenu();
1750
+ init_MCPStdioServerMenu();
1751
+ init_MCPToolDetailView();
1752
+ init_MCPToolListView();
1753
+ import_compiler_runtime3 = __toESM(require_compiler_runtime(), 1);
1754
+ import_react4 = __toESM(require_react(), 1);
1755
+ jsx_dev_runtime4 = __toESM(require_jsx_dev_runtime(), 1);
1756
+ });
1757
+
1758
+ // src/components/mcp/index.ts
1759
+ var init_mcp = __esm(() => {
1760
+ init_MCPAgentServerMenu();
1761
+ init_MCPListPanel();
1762
+ init_MCPReconnect();
1763
+ init_MCPRemoteServerMenu();
1764
+ init_MCPSettings();
1765
+ init_MCPStdioServerMenu();
1766
+ init_MCPToolDetailView();
1767
+ init_MCPToolListView();
1768
+ });
1769
+
1770
+ // src/commands/mcp/mcp.tsx
1771
+ function MCPToggle(t0) {
1772
+ const $ = import_compiler_runtime4.c(7);
1773
+ const {
1774
+ action,
1775
+ target,
1776
+ onComplete
1777
+ } = t0;
1778
+ const mcpClients = useAppState(_temp9);
1779
+ const toggleMcpServer = useMcpToggleEnabled();
1780
+ const didRun = import_react5.useRef(false);
1781
+ let t1;
1782
+ let t2;
1783
+ if ($[0] !== action || $[1] !== mcpClients || $[2] !== onComplete || $[3] !== target || $[4] !== toggleMcpServer) {
1784
+ t1 = () => {
1785
+ if (didRun.current) {
1786
+ return;
1787
+ }
1788
+ didRun.current = true;
1789
+ const isEnabling = action === "enable";
1790
+ const clients = mcpClients.filter(_temp23);
1791
+ const toToggle = target === "all" ? clients.filter((c_0) => isEnabling ? c_0.type === "disabled" : c_0.type !== "disabled") : clients.filter((c_1) => c_1.name === target);
1792
+ if (toToggle.length === 0) {
1793
+ onComplete(target === "all" ? `All MCP servers are already ${isEnabling ? "enabled" : "disabled"}` : `MCP server "${target}" not found`);
1794
+ return;
1795
+ }
1796
+ for (const s_0 of toToggle) {
1797
+ toggleMcpServer(s_0.name);
1798
+ }
1799
+ onComplete(target === "all" ? `${isEnabling ? "Enabled" : "Disabled"} ${toToggle.length} MCP server(s)` : `MCP server "${target}" ${isEnabling ? "enabled" : "disabled"}`);
1800
+ };
1801
+ t2 = [action, target, mcpClients, toggleMcpServer, onComplete];
1802
+ $[0] = action;
1803
+ $[1] = mcpClients;
1804
+ $[2] = onComplete;
1805
+ $[3] = target;
1806
+ $[4] = toggleMcpServer;
1807
+ $[5] = t1;
1808
+ $[6] = t2;
1809
+ } else {
1810
+ t1 = $[5];
1811
+ t2 = $[6];
1812
+ }
1813
+ import_react5.useEffect(t1, t2);
1814
+ return null;
1815
+ }
1816
+ function _temp23(c) {
1817
+ return c.name !== "ide";
1818
+ }
1819
+ function _temp9(s) {
1820
+ return s.mcp.clients;
1821
+ }
1822
+ async function call(onDone, _context, args) {
1823
+ if (args) {
1824
+ const parts = args.trim().split(/\s+/);
1825
+ if (parts[0] === "no-redirect") {
1826
+ return /* @__PURE__ */ jsx_dev_runtime5.jsxDEV(MCPSettings, {
1827
+ onComplete: onDone
1828
+ }, undefined, false, undefined, this);
1829
+ }
1830
+ if (parts[0] === "reconnect" && parts[1]) {
1831
+ return /* @__PURE__ */ jsx_dev_runtime5.jsxDEV(MCPReconnect, {
1832
+ serverName: parts.slice(1).join(" "),
1833
+ onComplete: onDone
1834
+ }, undefined, false, undefined, this);
1835
+ }
1836
+ if (parts[0] === "enable" || parts[0] === "disable") {
1837
+ return /* @__PURE__ */ jsx_dev_runtime5.jsxDEV(MCPToggle, {
1838
+ action: parts[0],
1839
+ target: parts.length > 1 ? parts.slice(1).join(" ") : "all",
1840
+ onComplete: onDone
1841
+ }, undefined, false, undefined, this);
1842
+ }
1843
+ }
1844
+ if (false) {}
1845
+ return /* @__PURE__ */ jsx_dev_runtime5.jsxDEV(MCPSettings, {
1846
+ onComplete: onDone
1847
+ }, undefined, false, undefined, this);
1848
+ }
1849
+ var import_compiler_runtime4, import_react5, jsx_dev_runtime5;
1850
+ var init_mcp2 = __esm(() => {
1851
+ init_mcp();
1852
+ init_MCPReconnect();
1853
+ init_MCPConnectionManager();
1854
+ init_AppState();
1855
+ init_PluginSettings();
1856
+ import_compiler_runtime4 = __toESM(require_compiler_runtime(), 1);
1857
+ import_react5 = __toESM(require_react(), 1);
1858
+ jsx_dev_runtime5 = __toESM(require_jsx_dev_runtime(), 1);
1859
+ });
1860
+ init_mcp2();
1861
+
1862
+ export {
1863
+ call
1864
+ };