@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,89 @@
1
+ // @bun
2
+ import {
3
+ ClaudeMdExternalIncludesDialog,
4
+ init_ClaudeMdExternalIncludesDialog
5
+ } from "./chunk-c5mz5vw2.js";
6
+ import"./chunk-vzgkedm9.js";
7
+ import"./chunk-46hdszda.js";
8
+ import"./chunk-hwfknpxv.js";
9
+ import"./chunk-4nspekjp.js";
10
+ import"./chunk-jzthz1bx.js";
11
+ import"./chunk-1gx78081.js";
12
+ import"./chunk-2gzv8nrw.js";
13
+ import"./chunk-ehtwnxpg.js";
14
+ import"./chunk-68w91pzt.js";
15
+ import"./chunk-s4cb0bcb.js";
16
+ import"./chunk-cgfdkzhb.js";
17
+ import"./chunk-bxcfz5gy.js";
18
+ import"./chunk-nebezy1d.js";
19
+ import"./chunk-wayfjcwt.js";
20
+ import"./chunk-kbm69rtz.js";
21
+ import"./chunk-j5bth84e.js";
22
+ import"./chunk-nxgsnh2y.js";
23
+ import"./chunk-68ffk5qa.js";
24
+ import"./chunk-ps49ymvj.js";
25
+ import"./chunk-bmbq6nt1.js";
26
+ import"./chunk-15sfg4bs.js";
27
+ import"./chunk-p7vkh4wx.js";
28
+ import"./chunk-b0qptb1k.js";
29
+ import"./chunk-m87bhhqv.js";
30
+ import"./chunk-j3zhb8vv.js";
31
+ import"./chunk-b2fd462a.js";
32
+ import"./chunk-c11swzas.js";
33
+ import"./chunk-chsyvavm.js";
34
+ import"./chunk-5rv9c8yd.js";
35
+ import"./chunk-tp2jxmcx.js";
36
+ import"./chunk-z19sd3bt.js";
37
+ import"./chunk-1ax1znzj.js";
38
+ import"./chunk-wha6v7za.js";
39
+ import"./chunk-6nsd9606.js";
40
+ import"./chunk-xp61y5ba.js";
41
+ import"./chunk-64c1avct.js";
42
+ import"./chunk-8g5pe1gr.js";
43
+ import"./chunk-4cp6193g.js";
44
+ import"./chunk-8g747a8x.js";
45
+ import"./chunk-d7886r6a.js";
46
+ import"./chunk-yvtzznds.js";
47
+ import"./chunk-4jm600zv.js";
48
+ import"./chunk-qz2x630m.js";
49
+ import"./chunk-2f21meep.js";
50
+ import"./chunk-nrtksr2p.js";
51
+ import"./chunk-3c25bcsw.js";
52
+ import"./chunk-s3hsqf80.js";
53
+ import"./chunk-yyf72f78.js";
54
+ import"./chunk-cdz5yb0r.js";
55
+ import"./chunk-c7jwbe76.js";
56
+ import"./chunk-0vkfrmqm.js";
57
+ import"./chunk-7sgtxrsc.js";
58
+ import"./chunk-0xjaqda8.js";
59
+ import"./chunk-x8d2ehd7.js";
60
+ import"./chunk-15m49c67.js";
61
+ import"./chunk-tdbz9gbm.js";
62
+ import"./chunk-0awwmrwr.js";
63
+ import"./chunk-qnfx3qtx.js";
64
+ import"./chunk-70eey1nh.js";
65
+ import"./chunk-1nk93fqz.js";
66
+ import"./chunk-s8kj6ajy.js";
67
+ import"./chunk-eenq3avg.js";
68
+ import"./chunk-7mqab3z7.js";
69
+ import"./chunk-5z28bqne.js";
70
+ import"./chunk-qajrkk97.js";
71
+ import"./chunk-phd1qfpc.js";
72
+ import"./chunk-fbv4apne.js";
73
+ import"./chunk-jaaxk89e.js";
74
+ import"./chunk-k8vp0atq.js";
75
+ import"./chunk-vf612n57.js";
76
+ import"./chunk-07069jq1.js";
77
+ import"./chunk-d4mdda98.js";
78
+ import"./chunk-55raexh7.js";
79
+ import"./chunk-v9smspw2.js";
80
+ import"./chunk-v1kzp02e.js";
81
+ import"./chunk-7wm5s02e.js";
82
+ import"./chunk-b0kf00ff.js";
83
+ import"./chunk-netzwgv1.js";
84
+ import"./chunk-qp2qdcda.js";
85
+ init_ClaudeMdExternalIncludesDialog();
86
+
87
+ export {
88
+ ClaudeMdExternalIncludesDialog
89
+ };
@@ -0,0 +1,560 @@
1
+ // @bun
2
+ import {
3
+ cliError,
4
+ cliOk
5
+ } from "./chunk-z2dp53wn.js";
6
+ import {
7
+ AppStateProvider,
8
+ ConfigurableShortcutHint,
9
+ KeybindingSetup,
10
+ SelectMulti,
11
+ addMcpConfig,
12
+ clearMcpClientConfig,
13
+ clearServerTokensFromLocalStorage,
14
+ connectToServer,
15
+ describeMcpConfigFilePath,
16
+ ensureConfigScope,
17
+ getAllMcpConfigs,
18
+ getMcpClientConfig,
19
+ getMcpConfigByName,
20
+ getMcpConfigsByScope,
21
+ getMcpServerConnectionBatchSize,
22
+ getScopeLabel,
23
+ gracefulShutdown,
24
+ init_AppState,
25
+ init_ConfigurableShortcutHint,
26
+ init_KeybindingProviderSetup,
27
+ init_SelectMulti,
28
+ init_auth,
29
+ init_client,
30
+ init_config as init_config2,
31
+ init_gracefulShutdown,
32
+ init_utils,
33
+ readClientSecret,
34
+ removeMcpConfig,
35
+ saveMcpClientSecret
36
+ } from "./chunk-vzgkedm9.js";
37
+ import"./chunk-46hdszda.js";
38
+ import"./chunk-hwfknpxv.js";
39
+ import"./chunk-4nspekjp.js";
40
+ import"./chunk-jzthz1bx.js";
41
+ import"./chunk-1gx78081.js";
42
+ import {
43
+ init_p_map,
44
+ pMap
45
+ } from "./chunk-2gzv8nrw.js";
46
+ import"./chunk-ehtwnxpg.js";
47
+ import"./chunk-68w91pzt.js";
48
+ import"./chunk-s4cb0bcb.js";
49
+ import"./chunk-cgfdkzhb.js";
50
+ import"./chunk-bxcfz5gy.js";
51
+ import"./chunk-nebezy1d.js";
52
+ import"./chunk-wayfjcwt.js";
53
+ import"./chunk-kbm69rtz.js";
54
+ import"./chunk-j5bth84e.js";
55
+ import"./chunk-nxgsnh2y.js";
56
+ import"./chunk-68ffk5qa.js";
57
+ import"./chunk-ps49ymvj.js";
58
+ import"./chunk-bmbq6nt1.js";
59
+ import"./chunk-15sfg4bs.js";
60
+ import"./chunk-p7vkh4wx.js";
61
+ import"./chunk-b0qptb1k.js";
62
+ import"./chunk-m87bhhqv.js";
63
+ import"./chunk-j3zhb8vv.js";
64
+ import"./chunk-b2fd462a.js";
65
+ import"./chunk-c11swzas.js";
66
+ import"./chunk-chsyvavm.js";
67
+ import"./chunk-5rv9c8yd.js";
68
+ import {
69
+ getCurrentProjectConfig,
70
+ getGlobalConfig,
71
+ init_config,
72
+ init_stringUtils,
73
+ plural,
74
+ saveCurrentProjectConfig
75
+ } from "./chunk-tp2jxmcx.js";
76
+ import {
77
+ init_json,
78
+ safeParseJSON
79
+ } from "./chunk-z19sd3bt.js";
80
+ import"./chunk-1ax1znzj.js";
81
+ import"./chunk-wha6v7za.js";
82
+ import"./chunk-6nsd9606.js";
83
+ import {
84
+ getPlatform,
85
+ init_platform
86
+ } from "./chunk-xp61y5ba.js";
87
+ import"./chunk-64c1avct.js";
88
+ import"./chunk-8g5pe1gr.js";
89
+ import"./chunk-4cp6193g.js";
90
+ import"./chunk-8g747a8x.js";
91
+ import"./chunk-d7886r6a.js";
92
+ import"./chunk-yvtzznds.js";
93
+ import"./chunk-4jm600zv.js";
94
+ import"./chunk-qz2x630m.js";
95
+ import"./chunk-2f21meep.js";
96
+ import"./chunk-nrtksr2p.js";
97
+ import"./chunk-3c25bcsw.js";
98
+ import"./chunk-s3hsqf80.js";
99
+ import"./chunk-yyf72f78.js";
100
+ import"./chunk-cdz5yb0r.js";
101
+ import {
102
+ Byline,
103
+ Dialog,
104
+ KeyboardShortcutHint,
105
+ ThemedBox_default,
106
+ ThemedText,
107
+ color,
108
+ init_src,
109
+ root_default,
110
+ useTheme
111
+ } from "./chunk-c7jwbe76.js";
112
+ import"./chunk-0vkfrmqm.js";
113
+ import {
114
+ require_jsx_dev_runtime,
115
+ require_react
116
+ } from "./chunk-7sgtxrsc.js";
117
+ import"./chunk-0xjaqda8.js";
118
+ import {
119
+ init_analytics,
120
+ logEvent
121
+ } from "./chunk-x8d2ehd7.js";
122
+ import"./chunk-15m49c67.js";
123
+ import"./chunk-tdbz9gbm.js";
124
+ import"./chunk-0awwmrwr.js";
125
+ import"./chunk-qnfx3qtx.js";
126
+ import"./chunk-70eey1nh.js";
127
+ import"./chunk-1nk93fqz.js";
128
+ import"./chunk-s8kj6ajy.js";
129
+ import"./chunk-eenq3avg.js";
130
+ import"./chunk-7mqab3z7.js";
131
+ import"./chunk-5z28bqne.js";
132
+ import"./chunk-qajrkk97.js";
133
+ import {
134
+ init_errors,
135
+ isFsInaccessible
136
+ } from "./chunk-phd1qfpc.js";
137
+ import {
138
+ init_process,
139
+ writeToStdout
140
+ } from "./chunk-fbv4apne.js";
141
+ import"./chunk-jaaxk89e.js";
142
+ import"./chunk-k8vp0atq.js";
143
+ import"./chunk-vf612n57.js";
144
+ import"./chunk-07069jq1.js";
145
+ import"./chunk-d4mdda98.js";
146
+ import"./chunk-55raexh7.js";
147
+ import"./chunk-v9smspw2.js";
148
+ import"./chunk-v1kzp02e.js";
149
+ import"./chunk-7wm5s02e.js";
150
+ import"./chunk-b0kf00ff.js";
151
+ import"./chunk-netzwgv1.js";
152
+ import {
153
+ __require,
154
+ __toESM
155
+ } from "./chunk-qp2qdcda.js";
156
+
157
+ // src/cli/handlers/mcp.tsx
158
+ init_p_map();
159
+ import { stat } from "fs/promises";
160
+ import { cwd } from "process";
161
+
162
+ // src/components/MCPServerDesktopImportDialog.tsx
163
+ init_gracefulShutdown();
164
+ init_process();
165
+ init_src();
166
+ init_config2();
167
+ init_stringUtils();
168
+ init_ConfigurableShortcutHint();
169
+ init_SelectMulti();
170
+ var import_react = __toESM(require_react(), 1);
171
+ var jsx_dev_runtime = __toESM(require_jsx_dev_runtime(), 1);
172
+ function MCPServerDesktopImportDialog({
173
+ servers,
174
+ scope,
175
+ onDone
176
+ }) {
177
+ const serverNames = Object.keys(servers);
178
+ const [existingServers, setExistingServers] = import_react.useState({});
179
+ import_react.useEffect(() => {
180
+ getAllMcpConfigs().then(({ servers: servers2 }) => setExistingServers(servers2));
181
+ }, []);
182
+ const collisions = serverNames.filter((name) => existingServers[name] !== undefined);
183
+ async function onSubmit(selectedServers) {
184
+ let importedCount = 0;
185
+ for (const serverName of selectedServers) {
186
+ const serverConfig = servers[serverName];
187
+ if (serverConfig) {
188
+ let finalName = serverName;
189
+ if (existingServers[finalName] !== undefined) {
190
+ let counter = 1;
191
+ while (existingServers[`${serverName}_${counter}`] !== undefined) {
192
+ counter++;
193
+ }
194
+ finalName = `${serverName}_${counter}`;
195
+ }
196
+ await addMcpConfig(finalName, serverConfig, scope);
197
+ importedCount++;
198
+ }
199
+ }
200
+ done(importedCount);
201
+ }
202
+ const [theme] = useTheme();
203
+ const done = import_react.useCallback((importedCount) => {
204
+ if (importedCount > 0) {
205
+ writeToStdout(`
206
+ ${color("success", theme)(`Successfully imported ${importedCount} MCP ${plural(importedCount, "server")} to ${scope} config.`)}
207
+ `);
208
+ } else {
209
+ writeToStdout(`
210
+ No servers were imported.`);
211
+ }
212
+ onDone();
213
+ gracefulShutdown();
214
+ }, [theme, scope, onDone]);
215
+ const handleEscCancel = import_react.useCallback(() => {
216
+ done(0);
217
+ }, [done]);
218
+ return /* @__PURE__ */ jsx_dev_runtime.jsxDEV(jsx_dev_runtime.Fragment, {
219
+ children: [
220
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Dialog, {
221
+ title: "Import MCP Servers from Claude Desktop",
222
+ subtitle: `Found ${serverNames.length} MCP ${plural(serverNames.length, "server")} in Claude Desktop.`,
223
+ color: "success",
224
+ onCancel: handleEscCancel,
225
+ hideInputGuide: true,
226
+ children: [
227
+ collisions.length > 0 && /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
228
+ color: "warning",
229
+ children: "Note: Some servers already exist with the same name. If selected, they will be imported with a numbered suffix."
230
+ }, undefined, false, undefined, this),
231
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
232
+ children: "Please select the servers you want to import:"
233
+ }, undefined, false, undefined, this),
234
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(SelectMulti, {
235
+ options: serverNames.map((server) => ({
236
+ label: `${server}${collisions.includes(server) ? " (already exists)" : ""}`,
237
+ value: server
238
+ })),
239
+ defaultValue: serverNames.filter((name) => !collisions.includes(name)),
240
+ onSubmit,
241
+ onCancel: handleEscCancel,
242
+ hideIndexes: true
243
+ }, undefined, false, undefined, this)
244
+ ]
245
+ }, undefined, true, undefined, this),
246
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedBox_default, {
247
+ paddingX: 1,
248
+ children: /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
249
+ dimColor: true,
250
+ italic: true,
251
+ children: /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Byline, {
252
+ children: [
253
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(KeyboardShortcutHint, {
254
+ shortcut: "Space",
255
+ action: "select"
256
+ }, undefined, false, undefined, this),
257
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(KeyboardShortcutHint, {
258
+ shortcut: "Enter",
259
+ action: "confirm"
260
+ }, undefined, false, undefined, this),
261
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ConfigurableShortcutHint, {
262
+ action: "confirm:no",
263
+ context: "Confirmation",
264
+ fallback: "Esc",
265
+ description: "cancel"
266
+ }, undefined, false, undefined, this)
267
+ ]
268
+ }, undefined, true, undefined, this)
269
+ }, undefined, false, undefined, this)
270
+ }, undefined, false, undefined, this)
271
+ ]
272
+ }, undefined, true, undefined, this);
273
+ }
274
+
275
+ // src/cli/handlers/mcp.tsx
276
+ init_src();
277
+ init_KeybindingProviderSetup();
278
+ init_analytics();
279
+ init_auth();
280
+ init_client();
281
+ init_config2();
282
+ init_utils();
283
+ init_AppState();
284
+ init_config();
285
+ init_errors();
286
+ init_gracefulShutdown();
287
+ init_json();
288
+ init_platform();
289
+ var jsx_dev_runtime2 = __toESM(require_jsx_dev_runtime(), 1);
290
+ async function checkMcpServerHealth(name, server) {
291
+ try {
292
+ const result = await connectToServer(name, server);
293
+ if (result.type === "connected") {
294
+ return "\u2713 Connected";
295
+ } else if (result.type === "needs-auth") {
296
+ return "! Needs authentication";
297
+ } else {
298
+ return "\u2717 Failed to connect";
299
+ }
300
+ } catch (_error) {
301
+ return "\u2717 Connection error";
302
+ }
303
+ }
304
+ async function mcpServeHandler({
305
+ debug,
306
+ verbose
307
+ }) {
308
+ const providedCwd = cwd();
309
+ logEvent("tengu_mcp_start", {});
310
+ try {
311
+ await stat(providedCwd);
312
+ } catch (error) {
313
+ if (isFsInaccessible(error)) {
314
+ cliError(`Error: Directory ${providedCwd} does not exist`);
315
+ }
316
+ throw error;
317
+ }
318
+ try {
319
+ const { setup } = await import("./chunk-kajf3jgq.js");
320
+ await setup(providedCwd, "default", false, false, undefined, false);
321
+ const { startMCPServer } = await import("./chunk-ratvcbmn.js");
322
+ await startMCPServer(providedCwd, debug ?? false, verbose ?? false);
323
+ } catch (error) {
324
+ cliError(`Error: Failed to start MCP server: ${error}`);
325
+ }
326
+ }
327
+ async function mcpRemoveHandler(name, options) {
328
+ const serverBeforeRemoval = getMcpConfigByName(name);
329
+ const cleanupSecureStorage = () => {
330
+ if (serverBeforeRemoval && (serverBeforeRemoval.type === "sse" || serverBeforeRemoval.type === "http")) {
331
+ clearServerTokensFromLocalStorage(name, serverBeforeRemoval);
332
+ clearMcpClientConfig(name, serverBeforeRemoval);
333
+ }
334
+ };
335
+ try {
336
+ if (options.scope) {
337
+ const scope = ensureConfigScope(options.scope);
338
+ logEvent("tengu_mcp_delete", {
339
+ name,
340
+ scope
341
+ });
342
+ await removeMcpConfig(name, scope);
343
+ cleanupSecureStorage();
344
+ process.stdout.write(`Removed MCP server ${name} from ${scope} config
345
+ `);
346
+ cliOk(`File modified: ${describeMcpConfigFilePath(scope)}`);
347
+ }
348
+ const projectConfig = getCurrentProjectConfig();
349
+ const globalConfig = getGlobalConfig();
350
+ const { servers: projectServers } = getMcpConfigsByScope("project");
351
+ const mcpJsonExists = !!projectServers[name];
352
+ const scopes = [];
353
+ if (projectConfig.mcpServers?.[name])
354
+ scopes.push("local");
355
+ if (mcpJsonExists)
356
+ scopes.push("project");
357
+ if (globalConfig.mcpServers?.[name])
358
+ scopes.push("user");
359
+ if (scopes.length === 0) {
360
+ cliError(`No MCP server found with name: "${name}"`);
361
+ } else if (scopes.length === 1) {
362
+ const scope = scopes[0];
363
+ logEvent("tengu_mcp_delete", {
364
+ name,
365
+ scope
366
+ });
367
+ await removeMcpConfig(name, scope);
368
+ cleanupSecureStorage();
369
+ process.stdout.write(`Removed MCP server "${name}" from ${scope} config
370
+ `);
371
+ cliOk(`File modified: ${describeMcpConfigFilePath(scope)}`);
372
+ } else {
373
+ process.stderr.write(`MCP server "${name}" exists in multiple scopes:
374
+ `);
375
+ scopes.forEach((scope) => {
376
+ process.stderr.write(` - ${getScopeLabel(scope)} (${describeMcpConfigFilePath(scope)})
377
+ `);
378
+ });
379
+ process.stderr.write(`
380
+ To remove from a specific scope, use:
381
+ `);
382
+ scopes.forEach((scope) => {
383
+ process.stderr.write(` claude mcp remove "${name}" -s ${scope}
384
+ `);
385
+ });
386
+ cliError();
387
+ }
388
+ } catch (error) {
389
+ cliError(error.message);
390
+ }
391
+ }
392
+ async function mcpListHandler() {
393
+ logEvent("tengu_mcp_list", {});
394
+ const { servers: configs } = await getAllMcpConfigs();
395
+ if (Object.keys(configs).length === 0) {
396
+ console.log("No MCP servers configured. Use `claude mcp add` to add a server.");
397
+ } else {
398
+ console.log(`Checking MCP server health...
399
+ `);
400
+ const entries = Object.entries(configs);
401
+ const results = await pMap(entries, async ([name, server]) => ({
402
+ name,
403
+ server,
404
+ status: await checkMcpServerHealth(name, server)
405
+ }), { concurrency: getMcpServerConnectionBatchSize() });
406
+ for (const { name, server, status } of results) {
407
+ if (server.type === "sse") {
408
+ console.log(`${name}: ${server.url} (SSE) - ${status}`);
409
+ } else if (server.type === "http") {
410
+ console.log(`${name}: ${server.url} (HTTP) - ${status}`);
411
+ } else if (server.type === "claudeai-proxy") {
412
+ console.log(`${name}: ${server.url} - ${status}`);
413
+ } else if (!server.type || server.type === "stdio") {
414
+ const args = Array.isArray(server.args) ? server.args : [];
415
+ console.log(`${name}: ${server.command} ${args.join(" ")} - ${status}`);
416
+ }
417
+ }
418
+ }
419
+ await gracefulShutdown(0);
420
+ }
421
+ async function mcpGetHandler(name) {
422
+ logEvent("tengu_mcp_get", {
423
+ name
424
+ });
425
+ const server = getMcpConfigByName(name);
426
+ if (!server) {
427
+ cliError(`No MCP server found with name: ${name}`);
428
+ }
429
+ console.log(`${name}:`);
430
+ console.log(` Scope: ${getScopeLabel(server.scope)}`);
431
+ const status = await checkMcpServerHealth(name, server);
432
+ console.log(` Status: ${status}`);
433
+ if (server.type === "sse") {
434
+ console.log(` Type: sse`);
435
+ console.log(` URL: ${server.url}`);
436
+ if (server.headers) {
437
+ console.log(" Headers:");
438
+ for (const [key, value] of Object.entries(server.headers)) {
439
+ console.log(` ${key}: ${value}`);
440
+ }
441
+ }
442
+ if (server.oauth?.clientId || server.oauth?.callbackPort) {
443
+ const parts = [];
444
+ if (server.oauth.clientId) {
445
+ parts.push("client_id configured");
446
+ const clientConfig = getMcpClientConfig(name, server);
447
+ if (clientConfig?.clientSecret)
448
+ parts.push("client_secret configured");
449
+ }
450
+ if (server.oauth.callbackPort)
451
+ parts.push(`callback_port ${server.oauth.callbackPort}`);
452
+ console.log(` OAuth: ${parts.join(", ")}`);
453
+ }
454
+ } else if (server.type === "http") {
455
+ console.log(` Type: http`);
456
+ console.log(` URL: ${server.url}`);
457
+ if (server.headers) {
458
+ console.log(" Headers:");
459
+ for (const [key, value] of Object.entries(server.headers)) {
460
+ console.log(` ${key}: ${value}`);
461
+ }
462
+ }
463
+ if (server.oauth?.clientId || server.oauth?.callbackPort) {
464
+ const parts = [];
465
+ if (server.oauth.clientId) {
466
+ parts.push("client_id configured");
467
+ const clientConfig = getMcpClientConfig(name, server);
468
+ if (clientConfig?.clientSecret)
469
+ parts.push("client_secret configured");
470
+ }
471
+ if (server.oauth.callbackPort)
472
+ parts.push(`callback_port ${server.oauth.callbackPort}`);
473
+ console.log(` OAuth: ${parts.join(", ")}`);
474
+ }
475
+ } else if (server.type === "stdio") {
476
+ console.log(` Type: stdio`);
477
+ console.log(` Command: ${server.command}`);
478
+ const args = Array.isArray(server.args) ? server.args : [];
479
+ console.log(` Args: ${args.join(" ")}`);
480
+ if (server.env) {
481
+ console.log(" Environment:");
482
+ for (const [key, value] of Object.entries(server.env)) {
483
+ console.log(` ${key}=${value}`);
484
+ }
485
+ }
486
+ }
487
+ console.log(`
488
+ To remove this server, run: claude mcp remove "${name}" -s ${server.scope}`);
489
+ await gracefulShutdown(0);
490
+ }
491
+ async function mcpAddJsonHandler(name, json, options) {
492
+ try {
493
+ const scope = ensureConfigScope(options.scope);
494
+ const parsedJson = safeParseJSON(json);
495
+ const needsSecret = options.clientSecret && parsedJson && typeof parsedJson === "object" && "type" in parsedJson && (parsedJson.type === "sse" || parsedJson.type === "http") && "url" in parsedJson && typeof parsedJson.url === "string" && "oauth" in parsedJson && parsedJson.oauth && typeof parsedJson.oauth === "object" && "clientId" in parsedJson.oauth;
496
+ const clientSecret = needsSecret ? await readClientSecret() : undefined;
497
+ await addMcpConfig(name, parsedJson, scope);
498
+ const transportType = parsedJson && typeof parsedJson === "object" && "type" in parsedJson ? String(parsedJson.type || "stdio") : "stdio";
499
+ if (clientSecret && parsedJson && typeof parsedJson === "object" && "type" in parsedJson && (parsedJson.type === "sse" || parsedJson.type === "http") && "url" in parsedJson && typeof parsedJson.url === "string") {
500
+ saveMcpClientSecret(name, { type: parsedJson.type, url: parsedJson.url }, clientSecret);
501
+ }
502
+ logEvent("tengu_mcp_add", {
503
+ scope,
504
+ source: "json",
505
+ type: transportType
506
+ });
507
+ cliOk(`Added ${transportType} MCP server ${name} to ${scope} config`);
508
+ } catch (error) {
509
+ cliError(error.message);
510
+ }
511
+ }
512
+ async function mcpAddFromDesktopHandler(options) {
513
+ try {
514
+ const scope = ensureConfigScope(options.scope);
515
+ const platform = getPlatform();
516
+ logEvent("tengu_mcp_add", {
517
+ scope,
518
+ platform,
519
+ source: "desktop"
520
+ });
521
+ const { readClaudeDesktopMcpServers } = await import("./chunk-w4yn8cq7.js");
522
+ const servers = await readClaudeDesktopMcpServers();
523
+ if (Object.keys(servers).length === 0) {
524
+ cliOk("No MCP servers found in Claude Desktop configuration or configuration file does not exist.");
525
+ }
526
+ const { unmount } = await root_default(/* @__PURE__ */ jsx_dev_runtime2.jsxDEV(AppStateProvider, {
527
+ children: /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(KeybindingSetup, {
528
+ children: /* @__PURE__ */ jsx_dev_runtime2.jsxDEV(MCPServerDesktopImportDialog, {
529
+ servers,
530
+ scope,
531
+ onDone: () => {
532
+ unmount();
533
+ }
534
+ }, undefined, false, undefined, this)
535
+ }, undefined, false, undefined, this)
536
+ }, undefined, false, undefined, this), { exitOnCtrlC: true });
537
+ } catch (error) {
538
+ cliError(error.message);
539
+ }
540
+ }
541
+ async function mcpResetChoicesHandler() {
542
+ logEvent("tengu_mcp_reset_mcpjson_choices", {});
543
+ saveCurrentProjectConfig((current) => ({
544
+ ...current,
545
+ enabledMcpjsonServers: [],
546
+ disabledMcpjsonServers: [],
547
+ enableAllProjectMcpServers: false
548
+ }));
549
+ cliOk(`All project-scoped (.mcp.json) server approvals and rejections have been reset.
550
+ You will be prompted for approval next time you start Claude Code.`);
551
+ }
552
+ export {
553
+ mcpServeHandler,
554
+ mcpResetChoicesHandler,
555
+ mcpRemoveHandler,
556
+ mcpListHandler,
557
+ mcpGetHandler,
558
+ mcpAddJsonHandler,
559
+ mcpAddFromDesktopHandler
560
+ };