@jdi-code/claude-code 1.0.3 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (539) hide show
  1. package/README.md +104 -369
  2. package/dist/{chunk-4t7n5hfg.js → chunk-0318ehfm.js} +8 -8
  3. package/dist/chunk-050fe4m3.js +68 -0
  4. package/dist/chunk-06v69x0b.js +127 -0
  5. package/dist/chunk-07069jq1.js +30 -0
  6. package/dist/chunk-0c9xpqm8.js +106 -0
  7. package/dist/chunk-0hxxwcs1.js +107 -0
  8. package/dist/chunk-0nsb3kxz.js +440 -0
  9. package/dist/{chunk-1cbn5kxf.js → chunk-0rpb2bdp.js} +3 -2
  10. package/dist/{chunk-vykgfhrb.js → chunk-0svbkpfn.js} +5 -5
  11. package/dist/chunk-0vg07894.js +121 -0
  12. package/dist/{chunk-e4vsvf0r.js → chunk-0zefjhrg.js} +4 -4
  13. package/dist/chunk-0zfmj5y2.js +106 -0
  14. package/dist/{chunk-czkshaff.js → chunk-107p04a0.js} +13 -11
  15. package/dist/{chunk-z4dm354d.js → chunk-13f30tg0.js} +1 -1
  16. package/dist/{chunk-44fpr6jq.js → chunk-168xb8v1.js} +4 -2
  17. package/dist/{chunk-0w63x62y.js → chunk-181q7ysj.js} +79 -63
  18. package/dist/{chunk-6mapphaq.js → chunk-18jc5efa.js} +8 -8
  19. package/dist/chunk-19j7nkpy.js +133 -0
  20. package/dist/chunk-1c2qp0ks.js +33068 -0
  21. package/dist/{chunk-0e1xsncc.js → chunk-1cwdhk7a.js} +1 -1
  22. package/dist/{chunk-7m2nd8da.js → chunk-1erfksyp.js} +6 -9
  23. package/dist/{chunk-rs45skes.js → chunk-1h1tc4mw.js} +13 -10
  24. package/dist/{chunk-91rcbmch.js → chunk-1rngm3yy.js} +155 -184
  25. package/dist/{chunk-3gqdqmzb.js → chunk-1vthytca.js} +16 -12
  26. package/dist/{chunk-xe6z85xc.js → chunk-1xbs4yb6.js} +19 -16
  27. package/dist/chunk-1xj1yz5n.js +109 -0
  28. package/dist/chunk-21mfpnva.js +85 -0
  29. package/dist/chunk-2361j94t.js +1811 -0
  30. package/dist/chunk-238g70xa.js +1 -1
  31. package/dist/chunk-250f5ce1.js +108 -0
  32. package/dist/{chunk-8yx1trkj.js → chunk-29r4exv2.js} +105 -211
  33. package/dist/chunk-2a8yf5ct.js +72 -0
  34. package/dist/{chunk-h3fqb66h.js → chunk-2bnerkhs.js} +110 -135
  35. package/dist/{chunk-0nt9md2b.js → chunk-2cctz9ww.js} +101 -8
  36. package/dist/chunk-2fwze72g.js +24 -0
  37. package/dist/{chunk-h3qa8f5w.js → chunk-2jvpw0q1.js} +229 -363
  38. package/dist/{chunk-9wm5e9e9.js → chunk-2mj88mnr.js} +42 -31
  39. package/dist/chunk-2q0schcc.js +133 -0
  40. package/dist/{chunk-r66hz8j6.js → chunk-2qp2hc02.js} +14 -12
  41. package/dist/chunk-2t0xa4dt.js +145 -0
  42. package/dist/chunk-2tzxsnha.js +360 -0
  43. package/dist/chunk-2v8cya3p.js +54 -0
  44. package/dist/chunk-2w00z1ct.js +105 -0
  45. package/dist/{chunk-2md1yavs.js → chunk-2wpfdv2t.js} +43 -32
  46. package/dist/chunk-2xcr3eqt.js +65 -0
  47. package/dist/chunk-30bpz5m2.js +34 -0
  48. package/dist/{chunk-hrzerbfw.js → chunk-36b2q5fg.js} +14 -14
  49. package/dist/{chunk-edg1yhec.js → chunk-3aady5e2.js} +2 -2
  50. package/dist/chunk-3ewzhjyb.js +207 -0
  51. package/dist/{chunk-z47tm067.js → chunk-3kpptrnz.js} +54 -47
  52. package/dist/{chunk-yd3av9a3.js → chunk-3na967x3.js} +2 -2
  53. package/dist/chunk-3nk79af8.js +8 -0
  54. package/dist/{chunk-z0cm9r7f.js → chunk-3r66czp1.js} +10 -10
  55. package/dist/{chunk-rnjbczcy.js → chunk-3y3qasy6.js} +13 -11
  56. package/dist/{chunk-nxsh6de2.js → chunk-404qm8xt.js} +16 -12
  57. package/dist/{chunk-mhqthgdg.js → chunk-41grdp0q.js} +5 -5
  58. package/dist/chunk-4cp6193g.js +9076 -0
  59. package/dist/chunk-4g18phg9.js +2535 -0
  60. package/dist/{chunk-6n2qgm9v.js → chunk-4hv90qcz.js} +1 -1
  61. package/dist/chunk-4jkfzf6g.js +81 -0
  62. package/dist/{chunk-5frcqxsv.js → chunk-4m6k7588.js} +127117 -138842
  63. package/dist/chunk-4nspekjp.js +69 -0
  64. package/dist/chunk-4x29t96w.js +119 -0
  65. package/dist/{chunk-40b8p5em.js → chunk-585cb3h6.js} +14 -12
  66. package/dist/{chunk-5dbar61y.js → chunk-59qz55py.js} +77 -61
  67. package/dist/chunk-5bta6qne.js +1030 -0
  68. package/dist/chunk-5dmczs66.js +123 -0
  69. package/dist/{chunk-9e2kqv5g.js → chunk-5pevjsyw.js} +3 -10
  70. package/dist/{chunk-5ndexvh1.js → chunk-5py41v61.js} +10226 -16961
  71. package/dist/{chunk-d5e75scx.js → chunk-5q2gm8dt.js} +5 -5
  72. package/dist/{chunk-893mewv4.js → chunk-5rpyh7nn.js} +1 -1
  73. package/dist/{chunk-hx2tr4ep.js → chunk-5z28bqne.js} +34 -475
  74. package/dist/chunk-5zzwydag.js +1170 -0
  75. package/dist/{chunk-4tyxyfsv.js → chunk-61gm3j90.js} +2 -2
  76. package/dist/chunk-64c1avct.js +13 -0
  77. package/dist/chunk-64hks9ax.js +456 -0
  78. package/dist/{chunk-bw9a5v0b.js → chunk-64m7ax9d.js} +4 -4
  79. package/dist/{chunk-cha1tdry.js → chunk-66hjztcb.js} +1 -1
  80. package/dist/{chunk-q25bjaev.js → chunk-677as3nh.js} +2 -2
  81. package/dist/chunk-69v14ada.js +76 -0
  82. package/dist/chunk-6eahnbxj.js +101 -0
  83. package/dist/chunk-6eg4c33n.js +196 -0
  84. package/dist/chunk-6fjfwj7q.js +214 -0
  85. package/dist/{chunk-70qb5sds.js → chunk-6kwwke3r.js} +2 -2
  86. package/dist/chunk-6m0pc6py.js +311 -0
  87. package/dist/chunk-6mpw9h55.js +1071 -0
  88. package/dist/{chunk-v1mgv1et.js → chunk-6p4cyhb3.js} +4 -3
  89. package/dist/chunk-6r1dx518.js +111 -0
  90. package/dist/{chunk-1n1xqxv5.js → chunk-713bh4cd.js} +1072 -1736
  91. package/dist/{chunk-nstbdz07.js → chunk-7246q965.js} +85 -69
  92. package/dist/{chunk-w6q6a1qj.js → chunk-74mdk2e7.js} +564 -864
  93. package/dist/{chunk-77czbpcq.js → chunk-76pa90ge.js} +104 -90
  94. package/dist/chunk-77nkh0x1.js +82 -0
  95. package/dist/chunk-7bsbnzpm.js +65 -0
  96. package/dist/chunk-7r3v46aq.js +167 -0
  97. package/dist/chunk-7vf8s593.js +235 -0
  98. package/dist/chunk-7x6ng8fp.js +64 -0
  99. package/dist/chunk-7xy990yb.js +81 -0
  100. package/dist/chunk-7xyswgjh.js +8 -0
  101. package/dist/chunk-80p18mf8.js +228 -0
  102. package/dist/{chunk-dv1wfr85.js → chunk-8225arm6.js} +5 -4
  103. package/dist/{chunk-vdbes184.js → chunk-82rh5hpz.js} +70 -10
  104. package/dist/chunk-84nf3k34.js +73 -0
  105. package/dist/chunk-85v0yx5b.js +106 -0
  106. package/dist/{chunk-x5j50p5x.js → chunk-86f4vq6n.js} +5 -5
  107. package/dist/{chunk-e5ga3s0y.js → chunk-86vec0h6.js} +148 -421
  108. package/dist/chunk-8az1n4zt.js +110 -0
  109. package/dist/{chunk-ctw5jwcd.js → chunk-8bwqtasa.js} +10 -10
  110. package/dist/chunk-8c9jtmsm.js +100 -0
  111. package/dist/{chunk-fqc5mcw7.js → chunk-8ca80ew2.js} +9 -9
  112. package/dist/chunk-8g5pe1gr.js +37 -0
  113. package/dist/{chunk-g0j0t6qk.js → chunk-8g747a8x.js} +1 -1
  114. package/dist/{chunk-3vzs2gbq.js → chunk-8gxztyqd.js} +4 -4
  115. package/dist/{chunk-45kxdsp8.js → chunk-8h6sdj66.js} +13 -10
  116. package/dist/{chunk-s8amjdwf.js → chunk-8ht15c7w.js} +7 -7
  117. package/dist/{chunk-ywxd4qw4.js → chunk-8mm8b6dd.js} +2 -5
  118. package/dist/{chunk-sdj9b9wh.js → chunk-8pn8tvgg.js} +9 -154
  119. package/dist/{chunk-pxrffn0w.js → chunk-8vnxjgz9.js} +11 -5
  120. package/dist/chunk-9525p9tg.js +401 -0
  121. package/dist/{chunk-y47cg3kz.js → chunk-9a0rsdre.js} +17 -13
  122. package/dist/chunk-9a2pa53f.js +308 -0
  123. package/dist/chunk-9es2dav7.js +507 -0
  124. package/dist/chunk-9pq45ycx.js +217 -0
  125. package/dist/chunk-9qwkw406.js +121 -0
  126. package/dist/chunk-9rf1x0z9.js +109 -0
  127. package/dist/{chunk-ghmbr193.js → chunk-9rvqx05m.js} +9 -9
  128. package/dist/{chunk-dchkdhzs.js → chunk-9sd3tz3p.js} +91 -75
  129. package/dist/chunk-9x5zgy22.js +12 -0
  130. package/dist/{chunk-q6b51yc5.js → chunk-9z4vq44b.js} +3 -3
  131. package/dist/chunk-a136cvvz.js +27 -0
  132. package/dist/{chunk-8hq5kk3y.js → chunk-a4twdmhf.js} +3 -2
  133. package/dist/{chunk-d18z9pna.js → chunk-a7rhvq9b.js} +2 -2
  134. package/dist/{chunk-pmjqdasm.js → chunk-a8jbqb9f.js} +2313 -4199
  135. package/dist/chunk-a9xhsth1.js +1068 -0
  136. package/dist/{chunk-kd63fbhw.js → chunk-achjqrhd.js} +81 -65
  137. package/dist/{chunk-67kbbt9h.js → chunk-af2vfhm4.js} +42 -31
  138. package/dist/{chunk-js8rvgs1.js → chunk-ahn9tgz7.js} +3 -3
  139. package/dist/chunk-ajets2e9.js +103 -0
  140. package/dist/chunk-akxywws0.js +79 -0
  141. package/dist/{chunk-meefz2g4.js → chunk-aqvgkvsq.js} +7 -7
  142. package/dist/{chunk-r6b58y3x.js → chunk-ase86y73.js} +1 -3
  143. package/dist/{chunk-hjhc4cpt.js → chunk-awb4vc41.js} +2 -2
  144. package/dist/{chunk-1jrcb7cs.js → chunk-b0mt3wzx.js} +37 -82
  145. package/dist/chunk-b4zy6y92.js +105 -0
  146. package/dist/{chunk-ax83mpvw.js → chunk-b65yxs9e.js} +26 -26
  147. package/dist/{chunk-wzx6mmft.js → chunk-b7b39zx2.js} +120 -118
  148. package/dist/{chunk-8bedvdm1.js → chunk-b81hd3m6.js} +1 -1
  149. package/dist/chunk-bbr7mwpv.js +117 -0
  150. package/dist/{chunk-1a61g8t2.js → chunk-bdzqt6gy.js} +83 -64
  151. package/dist/chunk-bkm0zms8.js +110 -0
  152. package/dist/{chunk-0vvej174.js → chunk-bs8r4665.js} +5 -5
  153. package/dist/{chunk-xvc4gp3x.js → chunk-bszdmr4k.js} +24 -24
  154. package/dist/{chunk-8ngxagxq.js → chunk-bt64sq5y.js} +4 -3
  155. package/dist/chunk-bvcpr8qa.js +909 -0
  156. package/dist/chunk-bx811wk6.js +118 -0
  157. package/dist/{chunk-3be7ka25.js → chunk-bxcfz5gy.js} +1 -1
  158. package/dist/{chunk-77g09znh.js → chunk-byv2p9hn.js} +22 -16
  159. package/dist/{chunk-wbkahkdc.js → chunk-c03am3es.js} +8 -6
  160. package/dist/chunk-c1x69s30.js +116 -0
  161. package/dist/chunk-c5vkve4j.js +68 -0
  162. package/dist/chunk-c6sjhj89.js +1284 -0
  163. package/dist/chunk-cb0wxajw.js +142 -0
  164. package/dist/{chunk-vyc0rjyx.js → chunk-cbrt5vsb.js} +1 -1
  165. package/dist/{chunk-4kxr1pwz.js → chunk-cgmy7r62.js} +30 -17
  166. package/dist/chunk-chsyvavm.js +3435 -0
  167. package/dist/{chunk-z72st5c8.js → chunk-cmsknj6n.js} +4774 -3386
  168. package/dist/{chunk-cdz5yb0r.js → chunk-crmjpsqe.js} +13 -2
  169. package/dist/chunk-cs039fnj.js +123 -0
  170. package/dist/{chunk-e7393td6.js → chunk-cznf6k4g.js} +13 -9
  171. package/dist/{chunk-fw49pe3p.js → chunk-cztjpxq4.js} +6 -6
  172. package/dist/{chunk-n8sjmqba.js → chunk-d0n93ge4.js} +141 -100
  173. package/dist/{chunk-spde0bf5.js → chunk-d14ygn80.js} +3 -3
  174. package/dist/chunk-d4mdda98.js +94 -0
  175. package/dist/chunk-d5qggsbm.js +137 -0
  176. package/dist/{chunk-55wgxwa9.js → chunk-d7886r6a.js} +6928 -6935
  177. package/dist/{chunk-eh8h36nt.js → chunk-d9gxtzmz.js} +42 -31
  178. package/dist/{chunk-xk66xrkk.js → chunk-da312cj9.js} +54 -72
  179. package/dist/{chunk-j287ctwr.js → chunk-df19zqjj.js} +77 -61
  180. package/dist/chunk-dm3n2qgd.js +24 -0
  181. package/dist/{chunk-m21hvkn4.js → chunk-dncgrfdt.js} +2 -2
  182. package/dist/{chunk-0nz8sqg4.js → chunk-dq3rw4b5.js} +1294 -873
  183. package/dist/{chunk-ey03t39w.js → chunk-dw1f4b7e.js} +257 -194
  184. package/dist/chunk-dx1jrvdz.js +339 -0
  185. package/dist/{chunk-0ragr30c.js → chunk-dxeadbxq.js} +12 -12
  186. package/dist/{chunk-gdp8wgnd.js → chunk-e8b9gcwf.js} +88 -72
  187. package/dist/chunk-e9k5a3cy.js +409 -0
  188. package/dist/chunk-e9mer45h.js +64 -0
  189. package/dist/{chunk-5qbwrz8m.js → chunk-ea2f7wt3.js} +13 -13
  190. package/dist/chunk-eak7m65m.js +1182 -0
  191. package/dist/chunk-ebhgmeyk.js +245 -0
  192. package/dist/chunk-eg93k7ac.js +117 -0
  193. package/dist/{chunk-jgv78tv0.js → chunk-ej1yvp43.js} +8 -8
  194. package/dist/chunk-ekr8pwpv.js +1408 -0
  195. package/dist/{chunk-m4edbpcz.js → chunk-epg124e3.js} +117 -143
  196. package/dist/chunk-eyqnj23w.js +5368 -0
  197. package/dist/chunk-f2bvkxbw.js +267 -0
  198. package/dist/chunk-f537x96t.js +295 -0
  199. package/dist/chunk-f6wdmebb.js +108 -0
  200. package/dist/chunk-feyzykye.js +10 -0
  201. package/dist/{chunk-ep47dy22.js → chunk-fj3ywwqv.js} +7 -7
  202. package/dist/{chunk-9gttd1xq.js → chunk-fjv7p1kc.js} +4 -4
  203. package/dist/{chunk-1rnkpxy4.js → chunk-fpe5nywt.js} +10 -115
  204. package/dist/chunk-fvpgrg19.js +434 -0
  205. package/dist/{chunk-9xmsmn93.js → chunk-fvqrkmtn.js} +5 -5
  206. package/dist/{chunk-6g62sjpf.js → chunk-fz0ch109.js} +4 -3
  207. package/dist/{chunk-5xz7ts0k.js → chunk-g0vh71q6.js} +188 -339
  208. package/dist/chunk-g1gtvtv8.js +384 -0
  209. package/dist/chunk-g5g9wm20.js +66 -0
  210. package/dist/{chunk-v399mzxk.js → chunk-g63tgj4f.js} +2 -2
  211. package/dist/{chunk-kkkneeg1.js → chunk-gay98970.js} +21 -16
  212. package/dist/chunk-gey7mwcw.js +36 -0
  213. package/dist/{chunk-w5ctjgmx.js → chunk-gtyh1yd1.js} +2 -2
  214. package/dist/{chunk-tjaqa99q.js → chunk-gx8016vp.js} +3 -3
  215. package/dist/{chunk-f2mhrmww.js → chunk-h0rbjg6x.js} +1 -8
  216. package/dist/{chunk-7z8j9qfn.js → chunk-h1mr3371.js} +3 -3
  217. package/dist/chunk-h2yxyeq4.js +132 -0
  218. package/dist/{chunk-qqfa0dqg.js → chunk-h4b85amj.js} +20 -32
  219. package/dist/chunk-h707k8xq.js +64 -0
  220. package/dist/{chunk-3z6rf0m3.js → chunk-h7rcjx8d.js} +5 -5
  221. package/dist/chunk-hch5yeq8.js +121 -0
  222. package/dist/{chunk-4anyx5bv.js → chunk-hd4azb7x.js} +5 -5
  223. package/dist/chunk-hjnbg9qw.js +32 -0
  224. package/dist/{chunk-e2yv57c2.js → chunk-hk9mmkba.js} +8 -8
  225. package/dist/{chunk-f1rrxxcf.js → chunk-hs9w0p45.js} +7 -131
  226. package/dist/{chunk-9f7xza5r.js → chunk-htaan7k0.js} +11 -11
  227. package/dist/chunk-htg84hvs.js +300 -0
  228. package/dist/chunk-hvyr6p4r.js +433 -0
  229. package/dist/chunk-j0r5vkvw.js +267 -0
  230. package/dist/{chunk-9gbamk79.js → chunk-j5bth84e.js} +5 -1
  231. package/dist/{chunk-vratq94g.js → chunk-j9gxwbe3.js} +1 -1
  232. package/dist/{chunk-3r24h7t6.js → chunk-jaaxk89e.js} +1 -1
  233. package/dist/chunk-je7jake4.js +3584 -0
  234. package/dist/chunk-jeqhpyxr.js +126 -0
  235. package/dist/chunk-jngf0nar.js +135 -0
  236. package/dist/chunk-jqjbc5ef.js +795 -0
  237. package/dist/{chunk-xf4wsjdm.js → chunk-jwrmmv7j.js} +9 -7
  238. package/dist/{chunk-j9wpkwjj.js → chunk-jwyzy83k.js} +6 -6
  239. package/dist/chunk-jz8v9sn3.js +228 -0
  240. package/dist/{chunk-bqfnp99q.js → chunk-k3s4yk22.js} +1 -1
  241. package/dist/chunk-k5c09bzv.js +443 -0
  242. package/dist/chunk-kbktwsms.js +372 -0
  243. package/dist/chunk-ke0hn0xr.js +260 -0
  244. package/dist/chunk-kehe7a71.js +41 -0
  245. package/dist/{chunk-1xkekb9y.js → chunk-kfd89dsd.js} +5 -3
  246. package/dist/chunk-ktjjb0k9.js +104 -0
  247. package/dist/{chunk-b74ht3xj.js → chunk-kxgcshx1.js} +78 -62
  248. package/dist/chunk-kz2fpejx.js +651 -0
  249. package/dist/{chunk-zvbpaaa1.js → chunk-kz3ctzg3.js} +110 -115
  250. package/dist/{chunk-72p24c9k.js → chunk-m268mm4c.js} +127 -188
  251. package/dist/{chunk-jafes477.js → chunk-m2bcpk8j.js} +4 -3
  252. package/dist/{chunk-4qv4z794.js → chunk-m32mdkts.js} +42 -31
  253. package/dist/chunk-m74w3187.js +164 -0
  254. package/dist/chunk-m7s7j422.js +166 -0
  255. package/dist/chunk-majhpxx5.js +594 -0
  256. package/dist/{chunk-q6av622g.js → chunk-mdk3xgya.js} +17 -13
  257. package/dist/{chunk-8bw3ft0x.js → chunk-mfcbez9a.js} +4 -4
  258. package/dist/{chunk-df6bwb4a.js → chunk-mj6w3ttg.js} +2 -2
  259. package/dist/{chunk-drrw55jr.js → chunk-mk6kj3q2.js} +1336 -2840
  260. package/dist/{chunk-vqr58rfh.js → chunk-mky388t4.js} +27 -67
  261. package/dist/chunk-mn61mk4v.js +351 -0
  262. package/dist/chunk-mx28h61f.js +1147 -0
  263. package/dist/chunk-my57sgky.js +883 -0
  264. package/dist/{chunk-k48thqgp.js → chunk-myk8saf6.js} +95 -190
  265. package/dist/chunk-n2zdmx4g.js +66 -0
  266. package/dist/{chunk-720qpv6d.js → chunk-n833arxq.js} +79 -63
  267. package/dist/{chunk-w2z5pqd3.js → chunk-n9ktjngj.js} +6 -6
  268. package/dist/{chunk-2tw2ve8h.js → chunk-nb2ntesh.js} +14 -10
  269. package/dist/{chunk-y18mc4m4.js → chunk-nbqv8ref.js} +10 -10
  270. package/dist/{chunk-74v9z7z4.js → chunk-nd4rncgd.js} +3 -13
  271. package/dist/chunk-nda50ze4.js +341 -0
  272. package/dist/{chunk-gb2q3nvc.js → chunk-nea2sah6.js} +5 -5
  273. package/dist/{chunk-t36rb2a8.js → chunk-nefsxetf.js} +294 -500
  274. package/dist/chunk-netzwgv1.js +154 -0
  275. package/dist/chunk-nfk9e540.js +107 -0
  276. package/dist/{chunk-xszk7n10.js → chunk-nh3cd07f.js} +1 -1
  277. package/dist/chunk-njq2hmjy.js +270 -0
  278. package/dist/chunk-nn5j7h8a.js +156 -0
  279. package/dist/{chunk-6fjab2dp.js → chunk-nrvkwzmq.js} +2 -2
  280. package/dist/chunk-nsextsmp.js +360 -0
  281. package/dist/{chunk-amhzxqj4.js → chunk-nt90fta7.js} +5 -5
  282. package/dist/{chunk-qbx1rq4f.js → chunk-p6sqbnqb.js} +193 -327
  283. package/dist/chunk-p8c23zr7.js +61 -0
  284. package/dist/chunk-p8enbwjk.js +183 -0
  285. package/dist/chunk-p8yggvgf.js +436 -0
  286. package/dist/{chunk-96awg5tc.js → chunk-pcfhe19b.js} +80 -17
  287. package/dist/{chunk-sfq65q9w.js → chunk-pgv9sa3a.js} +10 -14
  288. package/dist/chunk-ppwjyveh.js +8 -0
  289. package/dist/chunk-ppxvfp6m.js +424 -0
  290. package/dist/{chunk-zsfxha74.js → chunk-pshjyzq4.js} +8 -7
  291. package/dist/{chunk-35x3tjnr.js → chunk-pwr83fyy.js} +14 -8
  292. package/dist/chunk-q1976kze.js +473 -0
  293. package/dist/chunk-q387p8pp.js +943 -0
  294. package/dist/{chunk-b6av9ny9.js → chunk-q3ffkhnp.js} +132 -20
  295. package/dist/{chunk-w7wgpqcp.js → chunk-q50q8mc5.js} +7 -7
  296. package/dist/{chunk-e5pntxye.js → chunk-q7tpyeb3.js} +6 -4
  297. package/dist/{chunk-7ymfj7m3.js → chunk-q82r31er.js} +1 -1
  298. package/dist/chunk-qajrkk97.js +298 -0
  299. package/dist/chunk-qdazcrd7.js +362 -0
  300. package/dist/chunk-qhwvhgty.js +61 -0
  301. package/dist/{chunk-455a8z6g.js → chunk-qqk0kvsw.js} +138 -98
  302. package/dist/chunk-qqya1xyt.js +513 -0
  303. package/dist/{chunk-mzdwvbb0.js → chunk-qs6wypj1.js} +2 -2
  304. package/dist/chunk-qtahf5s5.js +113 -0
  305. package/dist/{chunk-tj79kfmn.js → chunk-qv9phqbv.js} +7 -7
  306. package/dist/{chunk-r5k04v8g.js → chunk-qyygv221.js} +13 -9
  307. package/dist/{chunk-zfc67eqj.js → chunk-r34f6vwc.js} +4 -4
  308. package/dist/{chunk-nerv0jvx.js → chunk-r59rgjxq.js} +1 -1
  309. package/dist/{chunk-7sb5axvf.js → chunk-r7j395t6.js} +2 -2
  310. package/dist/chunk-rb31sqzm.js +106 -0
  311. package/dist/{chunk-twsxz9ph.js → chunk-rbwy1qmm.js} +42 -31
  312. package/dist/{chunk-99t8enmg.js → chunk-re3crc6t.js} +10 -7
  313. package/dist/chunk-rhw4ayb1.js +6851 -0
  314. package/dist/{chunk-h6wtwdk0.js → chunk-rm31ynek.js} +8 -8
  315. package/dist/{chunk-eqrh0yjm.js → chunk-rr4e4axp.js} +2 -2
  316. package/dist/{chunk-neh2frnn.js → chunk-rs8304k5.js} +6 -6
  317. package/dist/{chunk-gax0fcbx.js → chunk-s1s8qfdh.js} +5 -5
  318. package/dist/{chunk-src9fqj8.js → chunk-s2483y2h.js} +3 -3
  319. package/dist/chunk-s2nhzjmt.js +113 -0
  320. package/dist/{chunk-7jma9mhn.js → chunk-sfhws681.js} +77 -61
  321. package/dist/{chunk-e3g8q4cn.js → chunk-sg66v252.js} +10 -8
  322. package/dist/{chunk-vp25xhav.js → chunk-szyt0xvf.js} +69 -78
  323. package/dist/{chunk-v7455ztd.js → chunk-t7j91et3.js} +86 -67
  324. package/dist/{chunk-mt25echc.js → chunk-tezak8rx.js} +1 -1
  325. package/dist/chunk-tf1p9trz.js +190 -0
  326. package/dist/{chunk-05gxvwvf.js → chunk-tm82sqkr.js} +96 -79
  327. package/dist/chunk-tpjetyb0.js +106 -0
  328. package/dist/chunk-trxvrrac.js +149 -0
  329. package/dist/chunk-tv9pcdnz.js +51 -0
  330. package/dist/{chunk-e5tfw9f7.js → chunk-twh7pzm8.js} +248 -307
  331. package/dist/{chunk-1x2wb3tc.js → chunk-txfvkh0w.js} +8 -8
  332. package/dist/chunk-var1et7e.js +66 -0
  333. package/dist/{chunk-se7v9emp.js → chunk-vbhvx4ma.js} +12 -10
  334. package/dist/{chunk-hqmz36b3.js → chunk-vf612n57.js} +21 -101
  335. package/dist/{chunk-3sdp7ds7.js → chunk-vfcty2ga.js} +10 -10
  336. package/dist/chunk-vhhyv8z8.js +147 -0
  337. package/dist/{chunk-48z7dgy1.js → chunk-vjcxs86z.js} +3 -3
  338. package/dist/{chunk-k5bpc8d5.js → chunk-vmnf3h9c.js} +43 -32
  339. package/dist/{chunk-fpjeh2em.js → chunk-vr7wmmyn.js} +17 -13
  340. package/dist/{chunk-9ewmqkgb.js → chunk-vxp2mhqy.js} +8 -8
  341. package/dist/{chunk-d238zp4m.js → chunk-w4gwnrwa.js} +2 -2
  342. package/dist/{chunk-jhsywyw8.js → chunk-wahkzh83.js} +9 -9
  343. package/dist/chunk-wdd4en5q.js +117 -0
  344. package/dist/{chunk-gm2m2yba.js → chunk-wgfnd174.js} +43 -32
  345. package/dist/chunk-wk1jw4dm.js +139 -0
  346. package/dist/chunk-wnpjc8hg.js +1018 -0
  347. package/dist/chunk-wv1t041q.js +151 -0
  348. package/dist/chunk-wvtmrmaj.js +130 -0
  349. package/dist/chunk-wyavftcj.js +103 -0
  350. package/dist/{chunk-4589pec2.js → chunk-x2dp18yj.js} +18 -46
  351. package/dist/{chunk-fj4hkg6k.js → chunk-x474ybns.js} +79 -110
  352. package/dist/chunk-x67cvhb8.js +134 -0
  353. package/dist/chunk-x6r4v44b.js +8 -0
  354. package/dist/{chunk-s0xfxkys.js → chunk-xk9pxqqx.js} +6 -6
  355. package/dist/{chunk-m06q12hg.js → chunk-xkt36p6r.js} +1 -1
  356. package/dist/{chunk-g653q217.js → chunk-xnav6j8h.js} +62 -374
  357. package/dist/chunk-xrjb0zyc.js +146 -0
  358. package/dist/chunk-xv3era3s.js +8 -0
  359. package/dist/{chunk-p7g7pf3f.js → chunk-y3r7v9pq.js} +4 -4
  360. package/dist/{chunk-3sagmdbp.js → chunk-y4szkj7r.js} +80 -64
  361. package/dist/{chunk-7d2700y8.js → chunk-y8syxjw1.js} +24 -54
  362. package/dist/chunk-y98z50mm.js +158 -0
  363. package/dist/chunk-ycrfxq10.js +123 -0
  364. package/dist/{chunk-8440dz44.js → chunk-yfjzdc0q.js} +9 -9
  365. package/dist/{chunk-cejskpky.js → chunk-ygf7pmmr.js} +145 -153
  366. package/dist/chunk-yha3z3ab.js +259 -0
  367. package/dist/chunk-ym5r3jnk.js +2007 -0
  368. package/dist/{chunk-28r6z9br.js → chunk-ys2gtqb0.js} +1 -3
  369. package/dist/{chunk-rzgtgtaf.js → chunk-ytg2n0dd.js} +7 -7
  370. package/dist/{chunk-q5hb65kq.js → chunk-ytzw9kw1.js} +78 -62
  371. package/dist/chunk-yzx3mhfd.js +110 -0
  372. package/dist/chunk-z1bs6d7k.js +24 -0
  373. package/dist/{chunk-6h9zcxaa.js → chunk-z1mvcq39.js} +4 -4
  374. package/dist/{chunk-gbq6jz9a.js → chunk-z3qhctbk.js} +134 -170
  375. package/dist/chunk-z9jn3442.js +146 -0
  376. package/dist/{chunk-5q7c8vt9.js → chunk-zbsz51qa.js} +41 -32
  377. package/dist/{chunk-n1erf6kh.js → chunk-ze6zvkg6.js} +5 -5
  378. package/dist/{chunk-t0rgmccj.js → chunk-zejm280k.js} +1 -1
  379. package/dist/{chunk-gfkppe34.js → chunk-zf47p99b.js} +10 -10
  380. package/dist/{chunk-53nbpp47.js → chunk-zhtrjznv.js} +557 -1502
  381. package/dist/{chunk-das977za.js → chunk-zq6tz1zv.js} +61 -100
  382. package/dist/chunk-zrw9gm80.js +264 -0
  383. package/dist/chunk-zseb1639.js +37 -0
  384. package/dist/{chunk-spqaamnc.js → chunk-zsgha506.js} +2 -2
  385. package/dist/chunk-zst7b4sp.js +2840 -0
  386. package/dist/{chunk-0xn1zr3e.js → chunk-zxkzzpgd.js} +145 -121
  387. package/dist/{chunk-g3t0act8.js → chunk-zzm33q8x.js} +1 -1
  388. package/dist/cli.js +20 -117
  389. package/dist/download-ripgrep.js +24821 -0
  390. package/dist/vendor/audio-capture/arm64-darwin/audio-capture.node +0 -0
  391. package/dist/vendor/audio-capture/arm64-linux/audio-capture.node +0 -0
  392. package/dist/vendor/audio-capture/arm64-win32/audio-capture.node +0 -0
  393. package/dist/vendor/audio-capture/x64-darwin/audio-capture.node +0 -0
  394. package/dist/vendor/audio-capture/x64-linux/audio-capture.node +0 -0
  395. package/dist/vendor/audio-capture/x64-win32/audio-capture.node +0 -0
  396. package/package.json +22 -14
  397. package/scripts/download-ripgrep.ts +335 -0
  398. package/scripts/postinstall.cjs +319 -0
  399. package/dist/chunk-0gemty6d.js +0 -70
  400. package/dist/chunk-0pjw8y9z.js +0 -2833
  401. package/dist/chunk-1c8z1b5v.js +0 -16
  402. package/dist/chunk-1ebedmba.js +0 -90
  403. package/dist/chunk-1rvz0433.js +0 -722
  404. package/dist/chunk-1wfb8e3m.js +0 -107
  405. package/dist/chunk-2qjywwq4.js +0 -3445
  406. package/dist/chunk-2y659zbj.js +0 -103
  407. package/dist/chunk-41md7gny.js +0 -91
  408. package/dist/chunk-45m062tx.js +0 -2058
  409. package/dist/chunk-4br37gsw.js +0 -107
  410. package/dist/chunk-4nfrc6sq.js +0 -2431
  411. package/dist/chunk-4pdedeb4.js +0 -2644
  412. package/dist/chunk-4wzyhqbt.js +0 -444
  413. package/dist/chunk-4zsw4fhp.js +0 -67
  414. package/dist/chunk-52wv09zw.js +0 -102
  415. package/dist/chunk-55sfqnz4.js +0 -1921
  416. package/dist/chunk-5cd9cptq.js +0 -110
  417. package/dist/chunk-5dbk24zg.js +0 -890
  418. package/dist/chunk-5tfppbkq.js +0 -55
  419. package/dist/chunk-60xyrp86.js +0 -117
  420. package/dist/chunk-6deqb0mc.js +0 -376
  421. package/dist/chunk-6kpbgc5w.js +0 -23
  422. package/dist/chunk-6ndpfxcn.js +0 -222
  423. package/dist/chunk-7nvpa5ex.js +0 -123
  424. package/dist/chunk-7va8tw32.js +0 -128
  425. package/dist/chunk-7z3tkgec.js +0 -66
  426. package/dist/chunk-8e8set87.js +0 -281
  427. package/dist/chunk-8fg1egbv.js +0 -107
  428. package/dist/chunk-8thd6sgk.js +0 -106
  429. package/dist/chunk-8ytkb7k9.js +0 -84
  430. package/dist/chunk-9s5nkgsg.js +0 -699
  431. package/dist/chunk-9wce9hrc.js +0 -1015
  432. package/dist/chunk-9y91z69v.js +0 -44
  433. package/dist/chunk-ae76ded0.js +0 -30
  434. package/dist/chunk-b0eez8w0.js +0 -169
  435. package/dist/chunk-b57sb1dw.js +0 -642
  436. package/dist/chunk-bg3mt9bm.js +0 -28
  437. package/dist/chunk-bhdt6k7w.js +0 -15
  438. package/dist/chunk-bm1qb16p.js +0 -17
  439. package/dist/chunk-bsbmmfyt.js +0 -17
  440. package/dist/chunk-c7q12yes.js +0 -269
  441. package/dist/chunk-cv6y320h.js +0 -299
  442. package/dist/chunk-cvy3vntc.js +0 -65
  443. package/dist/chunk-cy2hswr1.js +0 -15
  444. package/dist/chunk-d5d398m4.js +0 -184
  445. package/dist/chunk-d7q4zp2z.js +0 -89
  446. package/dist/chunk-dnk519qv.js +0 -94
  447. package/dist/chunk-dqqde43e.js +0 -93
  448. package/dist/chunk-dy4ayw0p.js +0 -522
  449. package/dist/chunk-e4ak3jfc.js +0 -1154
  450. package/dist/chunk-e64spn53.js +0 -283
  451. package/dist/chunk-e8pk14j0.js +0 -527
  452. package/dist/chunk-eashsrsv.js +0 -88
  453. package/dist/chunk-eb90vwvr.js +0 -152
  454. package/dist/chunk-ese2g7hc.js +0 -92
  455. package/dist/chunk-et4jnyb5.js +0 -713
  456. package/dist/chunk-fdy0651p.js +0 -212
  457. package/dist/chunk-frsyts9j.js +0 -1170
  458. package/dist/chunk-ft2jssz4.js +0 -424
  459. package/dist/chunk-g41hzcy2.js +0 -101
  460. package/dist/chunk-g8dr8vvj.js +0 -111
  461. package/dist/chunk-gj71pd83.js +0 -5395
  462. package/dist/chunk-gjdwtdch.js +0 -154
  463. package/dist/chunk-gyj242zr.js +0 -20
  464. package/dist/chunk-hr719wjg.js +0 -144
  465. package/dist/chunk-hs8ph4p8.js +0 -8
  466. package/dist/chunk-j7gpr82p.js +0 -105
  467. package/dist/chunk-jczedp5x.js +0 -91
  468. package/dist/chunk-jd0t67a6.js +0 -259
  469. package/dist/chunk-jgyp3mzg.js +0 -1318
  470. package/dist/chunk-jq1kp9yy.js +0 -90
  471. package/dist/chunk-jskhn7bz.js +0 -71
  472. package/dist/chunk-k5aas9d3.js +0 -6108
  473. package/dist/chunk-k8jcy7mj.js +0 -48
  474. package/dist/chunk-ka22ccvm.js +0 -1581
  475. package/dist/chunk-ka6jav10.js +0 -91
  476. package/dist/chunk-kq6j096k.js +0 -538
  477. package/dist/chunk-kqd0e3xj.js +0 -463
  478. package/dist/chunk-kqjrsah4.js +0 -85
  479. package/dist/chunk-m390jta5.js +0 -114
  480. package/dist/chunk-m44a9yfj.js +0 -90
  481. package/dist/chunk-m5c8ng6v.js +0 -328
  482. package/dist/chunk-meag7bbe.js +0 -89
  483. package/dist/chunk-mnsrmwn8.js +0 -604
  484. package/dist/chunk-mzj4mtye.js +0 -115
  485. package/dist/chunk-mzy911jq.js +0 -128
  486. package/dist/chunk-n0fwapk6.js +0 -347
  487. package/dist/chunk-nt0mgsh6.js +0 -496
  488. package/dist/chunk-nwcfrws3.js +0 -273
  489. package/dist/chunk-pa2xksyb.js +0 -57
  490. package/dist/chunk-pnhs96g8.js +0 -140
  491. package/dist/chunk-ps4c75j7.js +0 -105
  492. package/dist/chunk-q0yg73za.js +0 -490
  493. package/dist/chunk-q5by3da6.js +0 -8
  494. package/dist/chunk-qbmhde47.js +0 -92
  495. package/dist/chunk-qp3dw7b4.js +0 -100
  496. package/dist/chunk-qt0b9x2w.js +0 -42
  497. package/dist/chunk-qxe98jgk.js +0 -584
  498. package/dist/chunk-r7n42k56.js +0 -756
  499. package/dist/chunk-radsjrmv.js +0 -55
  500. package/dist/chunk-rckj9gd1.js +0 -55
  501. package/dist/chunk-rn4kqfvd.js +0 -99
  502. package/dist/chunk-rngmdt2v.js +0 -97
  503. package/dist/chunk-rs5e0520.js +0 -87
  504. package/dist/chunk-s274nv8k.js +0 -8
  505. package/dist/chunk-s7t2e2tw.js +0 -1493
  506. package/dist/chunk-sbbt0ct3.js +0 -90
  507. package/dist/chunk-t0mnk0qp.js +0 -105
  508. package/dist/chunk-t1qmy36p.js +0 -94
  509. package/dist/chunk-tdy66rf9.js +0 -116
  510. package/dist/chunk-tf40vqky.js +0 -70
  511. package/dist/chunk-tmcxeatp.js +0 -116
  512. package/dist/chunk-v3gm2day.js +0 -8
  513. package/dist/chunk-v496te8v.js +0 -192
  514. package/dist/chunk-vd2hwk8d.js +0 -61
  515. package/dist/chunk-vdsmt7v0.js +0 -998
  516. package/dist/chunk-vf3qxte3.js +0 -93
  517. package/dist/chunk-vfqe1jqj.js +0 -643
  518. package/dist/chunk-vk3270s6.js +0 -119
  519. package/dist/chunk-vsr9mbnq.js +0 -195
  520. package/dist/chunk-w18zryr9.js +0 -348
  521. package/dist/chunk-wdxcgk6m.js +0 -196
  522. package/dist/chunk-wef07p3j.js +0 -131
  523. package/dist/chunk-wf4q1xj3.js +0 -62
  524. package/dist/chunk-wjq4zq3t.js +0 -162
  525. package/dist/chunk-wp4hc4n7.js +0 -133
  526. package/dist/chunk-x0rjttct.js +0 -420
  527. package/dist/chunk-xdw5dv00.js +0 -8
  528. package/dist/chunk-xm8fv5c9.js +0 -469
  529. package/dist/chunk-xq5ztz4g.js +0 -130
  530. package/dist/chunk-xvcdtezw.js +0 -401
  531. package/dist/chunk-y7njq3z3.js +0 -1866
  532. package/dist/chunk-ycxwftfh.js +0 -97
  533. package/dist/chunk-yn38f69a.js +0 -105
  534. package/dist/chunk-yp5kc8hq.js +0 -372
  535. package/dist/chunk-z09n2krq.js +0 -752
  536. package/dist/chunk-zerg8qwf.js +0 -96
  537. package/dist/{chunk-p452k1xp.js → chunk-57s5mr32.js} +9 -9
  538. package/dist/{chunk-27xc1csx.js → chunk-dggvswz1.js} +3 -3
  539. package/dist/{chunk-zxzwfa0b.js → chunk-pbyq1tm3.js} +3 -3
@@ -0,0 +1,1018 @@
1
+ // @bun
2
+ import {
3
+ init_SSETransport,
4
+ parseSSEFrames
5
+ } from "./chunk-p8yggvgf.js";
6
+ import {
7
+ createAssistantAPIErrorMessage,
8
+ init_api,
9
+ init_messages1 as init_messages,
10
+ normalizeContentFromAPI,
11
+ normalizeMessagesForAPI,
12
+ toolToAPISchema
13
+ } from "./chunk-4m6k7588.js";
14
+ import"./chunk-nea2sah6.js";
15
+ import"./chunk-rs8304k5.js";
16
+ import"./chunk-1c2qp0ks.js";
17
+ import"./chunk-9z4vq44b.js";
18
+ import"./chunk-zejm280k.js";
19
+ import"./chunk-4nspekjp.js";
20
+ import"./chunk-var1et7e.js";
21
+ import"./chunk-ehtwnxpg.js";
22
+ import"./chunk-akxywws0.js";
23
+ import"./chunk-zf47p99b.js";
24
+ import"./chunk-bxcfz5gy.js";
25
+ import"./chunk-1xbs4yb6.js";
26
+ import"./chunk-2gzv8nrw.js";
27
+ import"./chunk-8h6sdj66.js";
28
+ import"./chunk-cgfdkzhb.js";
29
+ import"./chunk-6eg4c33n.js";
30
+ import"./chunk-2cctz9ww.js";
31
+ import"./chunk-j5bth84e.js";
32
+ import"./chunk-d0n93ge4.js";
33
+ import"./chunk-5pevjsyw.js";
34
+ import"./chunk-xnav6j8h.js";
35
+ import"./chunk-ps49ymvj.js";
36
+ import"./chunk-zk2wsm7d.js";
37
+ import"./chunk-2t0xa4dt.js";
38
+ import"./chunk-pwr83fyy.js";
39
+ import"./chunk-hjnbg9qw.js";
40
+ import"./chunk-zsgha506.js";
41
+ import"./chunk-4jm600zv.js";
42
+ import"./chunk-xkt36p6r.js";
43
+ import"./chunk-585cb3h6.js";
44
+ import"./chunk-xk9pxqqx.js";
45
+ import"./chunk-mx28h61f.js";
46
+ import"./chunk-bx811wk6.js";
47
+ import"./chunk-8vnxjgz9.js";
48
+ import"./chunk-2v8cya3p.js";
49
+ import"./chunk-eyqnj23w.js";
50
+ import"./chunk-chsyvavm.js";
51
+ import"./chunk-6mpw9h55.js";
52
+ import"./chunk-zhtrjznv.js";
53
+ import {
54
+ init_json,
55
+ safeParseJSON
56
+ } from "./chunk-sg66v252.js";
57
+ import"./chunk-8bwqtasa.js";
58
+ import"./chunk-j9gxwbe3.js";
59
+ import {
60
+ getProxyFetchOptions,
61
+ init_proxy
62
+ } from "./chunk-cztjpxq4.js";
63
+ import"./chunk-1cwdhk7a.js";
64
+ import"./chunk-64c1avct.js";
65
+ import"./chunk-8g5pe1gr.js";
66
+ import"./chunk-gx8016vp.js";
67
+ import"./chunk-4cp6193g.js";
68
+ import"./chunk-8g747a8x.js";
69
+ import"./chunk-d7886r6a.js";
70
+ import"./chunk-f5ma3nh5.js";
71
+ import"./chunk-qz2x630m.js";
72
+ import"./chunk-r7j395t6.js";
73
+ import"./chunk-tv9pcdnz.js";
74
+ import"./chunk-3c25bcsw.js";
75
+ import"./chunk-n9ktjngj.js";
76
+ import"./chunk-q82r31er.js";
77
+ import"./chunk-p2816w9z.js";
78
+ import"./chunk-v9smspw2.js";
79
+ import"./chunk-v1kzp02e.js";
80
+ import"./chunk-64hks9ax.js";
81
+ import"./chunk-crmjpsqe.js";
82
+ import"./chunk-cmsknj6n.js";
83
+ import"./chunk-g338npwr.js";
84
+ import"./chunk-h0rbjg6x.js";
85
+ import"./chunk-0vkfrmqm.js";
86
+ import"./chunk-0xjaqda8.js";
87
+ import"./chunk-h1mr3371.js";
88
+ import"./chunk-36b2q5fg.js";
89
+ import"./chunk-a7rhvq9b.js";
90
+ import"./chunk-qnfx3qtx.js";
91
+ import"./chunk-m74w3187.js";
92
+ import"./chunk-b81hd3m6.js";
93
+ import"./chunk-y3r7v9pq.js";
94
+ import"./chunk-8tnsngw2.js";
95
+ import"./chunk-awb4vc41.js";
96
+ import"./chunk-cbrt5vsb.js";
97
+ import"./chunk-5z28bqne.js";
98
+ import"./chunk-qajrkk97.js";
99
+ import {
100
+ errorMessage,
101
+ init_debug,
102
+ init_errors,
103
+ logForDebugging
104
+ } from "./chunk-404qm8xt.js";
105
+ import"./chunk-fbv4apne.js";
106
+ import"./chunk-jaaxk89e.js";
107
+ import"./chunk-h4b85amj.js";
108
+ import"./chunk-07069jq1.js";
109
+ import"./chunk-vf612n57.js";
110
+ import"./chunk-d4mdda98.js";
111
+ import"./chunk-7wm5s02e.js";
112
+ import"./chunk-4g3v8y12.js";
113
+ import"./chunk-7739pg2c.js";
114
+ import"./chunk-nh3cd07f.js";
115
+ import"./chunk-8pn8tvgg.js";
116
+ import"./chunk-netzwgv1.js";
117
+ import {
118
+ __esm
119
+ } from "./chunk-qp2qdcda.js";
120
+
121
+ // src/services/api/gemini/client.ts
122
+ function getGeminiBaseUrl() {
123
+ return (process.env.GEMINI_BASE_URL || DEFAULT_GEMINI_BASE_URL).replace(/\/+$/, "");
124
+ }
125
+ function getGeminiModelPath(model) {
126
+ const normalized = model.replace(/^\/+/, "");
127
+ return normalized.startsWith("models/") ? normalized : `models/${normalized}`;
128
+ }
129
+ async function* streamGeminiGenerateContent(params) {
130
+ const fetchImpl = params.fetchOverride ?? fetch;
131
+ const url = `${getGeminiBaseUrl()}/${getGeminiModelPath(params.model)}:streamGenerateContent?alt=sse`;
132
+ const response = await fetchImpl(url, {
133
+ method: "POST",
134
+ headers: {
135
+ "Content-Type": "application/json",
136
+ "x-goog-api-key": process.env.GEMINI_API_KEY || ""
137
+ },
138
+ body: JSON.stringify(params.body),
139
+ signal: params.signal,
140
+ ...getProxyFetchOptions({ forAnthropicAPI: false })
141
+ });
142
+ if (!response.ok) {
143
+ const body = await response.text();
144
+ throw new Error(`Gemini API request failed (${response.status} ${response.statusText}): ${body || "empty response body"}`);
145
+ }
146
+ if (!response.body) {
147
+ throw new Error("Gemini API returned no response body");
148
+ }
149
+ const reader = response.body.getReader();
150
+ const decoder = new TextDecoder;
151
+ let buffer = "";
152
+ try {
153
+ while (true) {
154
+ const { done, value } = await reader.read();
155
+ if (done)
156
+ break;
157
+ buffer += decoder.decode(value, STREAM_DECODE_OPTS);
158
+ const { frames: frames2, remaining } = parseSSEFrames(buffer);
159
+ buffer = remaining;
160
+ for (const frame of frames2) {
161
+ if (!frame.data || frame.data === "[DONE]")
162
+ continue;
163
+ try {
164
+ yield JSON.parse(frame.data);
165
+ } catch (error) {
166
+ throw new Error(`Failed to parse Gemini SSE payload: ${errorMessage(error)}`);
167
+ }
168
+ }
169
+ }
170
+ buffer += decoder.decode();
171
+ const { frames } = parseSSEFrames(buffer);
172
+ for (const frame of frames) {
173
+ if (!frame.data || frame.data === "[DONE]")
174
+ continue;
175
+ try {
176
+ yield JSON.parse(frame.data);
177
+ } catch (error) {
178
+ throw new Error(`Failed to parse trailing Gemini SSE payload: ${errorMessage(error)}`);
179
+ }
180
+ }
181
+ } finally {
182
+ reader.releaseLock();
183
+ }
184
+ }
185
+ var DEFAULT_GEMINI_BASE_URL = "https://generativelanguage.googleapis.com/v1beta", STREAM_DECODE_OPTS;
186
+ var init_client = __esm(() => {
187
+ init_SSETransport();
188
+ init_errors();
189
+ init_proxy();
190
+ STREAM_DECODE_OPTS = { stream: true };
191
+ });
192
+
193
+ // src/services/api/gemini/types.ts
194
+ var GEMINI_THOUGHT_SIGNATURE_FIELD = "_geminiThoughtSignature";
195
+ var init_types = () => {};
196
+
197
+ // src/services/api/gemini/convertMessages.ts
198
+ function anthropicMessagesToGemini(messages, systemPrompt) {
199
+ const contents = [];
200
+ const toolNamesById = new Map;
201
+ for (const msg of messages) {
202
+ if (msg.type === "assistant") {
203
+ const content = convertInternalAssistantMessage(msg);
204
+ if (content.parts.length > 0) {
205
+ contents.push(content);
206
+ }
207
+ const assistantContent = msg.message.content;
208
+ if (Array.isArray(assistantContent)) {
209
+ for (const block of assistantContent) {
210
+ if (typeof block !== "string" && block.type === "tool_use") {
211
+ toolNamesById.set(block.id, block.name);
212
+ }
213
+ }
214
+ }
215
+ continue;
216
+ }
217
+ if (msg.type === "user") {
218
+ const content = convertInternalUserMessage(msg, toolNamesById);
219
+ if (content.parts.length > 0) {
220
+ contents.push(content);
221
+ }
222
+ }
223
+ }
224
+ const systemText = systemPromptToText(systemPrompt);
225
+ return {
226
+ contents,
227
+ ...systemText ? {
228
+ systemInstruction: {
229
+ parts: [{ text: systemText }]
230
+ }
231
+ } : {}
232
+ };
233
+ }
234
+ function systemPromptToText(systemPrompt) {
235
+ if (!systemPrompt || systemPrompt.length === 0)
236
+ return "";
237
+ return systemPrompt.filter(Boolean).join(`
238
+
239
+ `);
240
+ }
241
+ function convertInternalUserMessage(msg, toolNamesById) {
242
+ const content = msg.message.content;
243
+ if (typeof content === "string") {
244
+ return {
245
+ role: "user",
246
+ parts: createTextGeminiParts(content)
247
+ };
248
+ }
249
+ if (!Array.isArray(content)) {
250
+ return { role: "user", parts: [] };
251
+ }
252
+ return {
253
+ role: "user",
254
+ parts: content.flatMap((block) => convertUserContentBlockToGeminiParts(block, toolNamesById))
255
+ };
256
+ }
257
+ function convertUserContentBlockToGeminiParts(block, toolNamesById) {
258
+ if (typeof block === "string") {
259
+ return createTextGeminiParts(block);
260
+ }
261
+ if (block.type === "text") {
262
+ return createTextGeminiParts(block.text);
263
+ }
264
+ if (block.type === "tool_result") {
265
+ const toolResult = block;
266
+ return [
267
+ {
268
+ functionResponse: {
269
+ name: toolNamesById.get(toolResult.tool_use_id) ?? toolResult.tool_use_id,
270
+ response: toolResultToResponseObject(toolResult)
271
+ }
272
+ }
273
+ ];
274
+ }
275
+ if (block.type === "image") {
276
+ const source = block.source;
277
+ if (source?.type === "base64" && typeof source.data === "string") {
278
+ const mediaType = source.media_type || "image/png";
279
+ return [
280
+ {
281
+ inlineData: {
282
+ mimeType: mediaType,
283
+ data: source.data
284
+ }
285
+ }
286
+ ];
287
+ }
288
+ if (source?.type === "url" && typeof source.url === "string") {
289
+ return createTextGeminiParts(`[image: ${source.url}]`);
290
+ }
291
+ }
292
+ return [];
293
+ }
294
+ function convertInternalAssistantMessage(msg) {
295
+ const content = msg.message.content;
296
+ if (typeof content === "string") {
297
+ return {
298
+ role: "model",
299
+ parts: createTextGeminiParts(content)
300
+ };
301
+ }
302
+ if (!Array.isArray(content)) {
303
+ return { role: "model", parts: [] };
304
+ }
305
+ const parts = [];
306
+ for (const block of content) {
307
+ if (typeof block === "string") {
308
+ parts.push(...createTextGeminiParts(block));
309
+ continue;
310
+ }
311
+ if (block.type === "text") {
312
+ parts.push(...createTextGeminiParts(block.text, getGeminiThoughtSignature(block)));
313
+ continue;
314
+ }
315
+ if (block.type === "thinking") {
316
+ const thinkingPart = createThinkingGeminiPart(block.thinking, block.signature);
317
+ if (thinkingPart) {
318
+ parts.push(thinkingPart);
319
+ }
320
+ continue;
321
+ }
322
+ if (block.type === "tool_use") {
323
+ const toolUse = block;
324
+ parts.push({
325
+ functionCall: {
326
+ name: toolUse.name,
327
+ args: normalizeToolUseInput(toolUse.input)
328
+ },
329
+ ...getGeminiThoughtSignature(block) && {
330
+ thoughtSignature: getGeminiThoughtSignature(block)
331
+ }
332
+ });
333
+ }
334
+ }
335
+ return { role: "model", parts };
336
+ }
337
+ function createTextGeminiParts(value, thoughtSignature) {
338
+ if (typeof value !== "string" || value.length === 0) {
339
+ return [];
340
+ }
341
+ return [
342
+ {
343
+ text: value,
344
+ ...thoughtSignature && { thoughtSignature }
345
+ }
346
+ ];
347
+ }
348
+ function createThinkingGeminiPart(value, thoughtSignature) {
349
+ if (typeof value !== "string" || value.length === 0) {
350
+ return;
351
+ }
352
+ return {
353
+ text: value,
354
+ thought: true,
355
+ ...thoughtSignature && { thoughtSignature }
356
+ };
357
+ }
358
+ function normalizeToolUseInput(input) {
359
+ if (typeof input === "string") {
360
+ const parsed = safeParseJSON(input);
361
+ if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) {
362
+ return parsed;
363
+ }
364
+ return parsed === null ? {} : { value: parsed };
365
+ }
366
+ if (input && typeof input === "object" && !Array.isArray(input)) {
367
+ return input;
368
+ }
369
+ return input === undefined ? {} : { value: input };
370
+ }
371
+ function toolResultToResponseObject(block) {
372
+ const result = normalizeToolResultContent(block.content);
373
+ if (result && typeof result === "object" && !Array.isArray(result)) {
374
+ return block.is_error ? { ...result, is_error: true } : result;
375
+ }
376
+ return {
377
+ result,
378
+ ...block.is_error ? { is_error: true } : {}
379
+ };
380
+ }
381
+ function normalizeToolResultContent(content) {
382
+ if (typeof content === "string") {
383
+ const parsed = safeParseJSON(content);
384
+ return parsed ?? content;
385
+ }
386
+ if (Array.isArray(content)) {
387
+ const text = content.map((part) => {
388
+ if (typeof part === "string")
389
+ return part;
390
+ if (part && typeof part === "object" && "text" in part && typeof part.text === "string") {
391
+ return part.text;
392
+ }
393
+ return "";
394
+ }).filter(Boolean).join(`
395
+ `);
396
+ const parsed = safeParseJSON(text);
397
+ return parsed ?? text;
398
+ }
399
+ return content ?? "";
400
+ }
401
+ function getGeminiThoughtSignature(block) {
402
+ const signature = block[GEMINI_THOUGHT_SIGNATURE_FIELD];
403
+ return typeof signature === "string" && signature.length > 0 ? signature : undefined;
404
+ }
405
+ var init_convertMessages = __esm(() => {
406
+ init_json();
407
+ init_types();
408
+ });
409
+
410
+ // src/services/api/gemini/convertTools.ts
411
+ function normalizeGeminiJsonSchemaType(value) {
412
+ if (typeof value === "string") {
413
+ return GEMINI_JSON_SCHEMA_TYPES.has(value) ? value : undefined;
414
+ }
415
+ if (Array.isArray(value)) {
416
+ const normalized = value.filter((item) => typeof item === "string" && GEMINI_JSON_SCHEMA_TYPES.has(item));
417
+ const unique = Array.from(new Set(normalized));
418
+ if (unique.length === 0)
419
+ return;
420
+ return unique.length === 1 ? unique[0] : unique;
421
+ }
422
+ return;
423
+ }
424
+ function inferGeminiJsonSchemaTypeFromValue(value) {
425
+ if (value === null)
426
+ return "null";
427
+ if (Array.isArray(value))
428
+ return "array";
429
+ if (typeof value === "string")
430
+ return "string";
431
+ if (typeof value === "boolean")
432
+ return "boolean";
433
+ if (typeof value === "number") {
434
+ return Number.isInteger(value) ? "integer" : "number";
435
+ }
436
+ if (typeof value === "object")
437
+ return "object";
438
+ return;
439
+ }
440
+ function inferGeminiJsonSchemaTypeFromEnum(values) {
441
+ const inferred = values.map(inferGeminiJsonSchemaTypeFromValue).filter((value) => value !== undefined);
442
+ const unique = Array.from(new Set(inferred));
443
+ if (unique.length === 0)
444
+ return;
445
+ return unique.length === 1 ? unique[0] : unique;
446
+ }
447
+ function addNullToGeminiJsonSchemaType(value) {
448
+ if (value === undefined)
449
+ return ["null"];
450
+ if (Array.isArray(value)) {
451
+ return value.includes("null") ? value : [...value, "null"];
452
+ }
453
+ return value === "null" ? value : [value, "null"];
454
+ }
455
+ function sanitizeGeminiJsonSchemaProperties(value) {
456
+ if (!value || typeof value !== "object" || Array.isArray(value)) {
457
+ return;
458
+ }
459
+ const sanitizedEntries = Object.entries(value).map(([key, schema]) => [key, sanitizeGeminiJsonSchema(schema)]).filter(([, schema]) => Object.keys(schema).length > 0);
460
+ if (sanitizedEntries.length === 0) {
461
+ return;
462
+ }
463
+ return Object.fromEntries(sanitizedEntries);
464
+ }
465
+ function sanitizeGeminiJsonSchemaArray(value) {
466
+ if (!Array.isArray(value))
467
+ return;
468
+ const sanitized = value.map((item) => sanitizeGeminiJsonSchema(item)).filter((item) => Object.keys(item).length > 0);
469
+ return sanitized.length > 0 ? sanitized : undefined;
470
+ }
471
+ function sanitizeGeminiJsonSchema(schema) {
472
+ if (!schema || typeof schema !== "object" || Array.isArray(schema)) {
473
+ return {};
474
+ }
475
+ const source = schema;
476
+ const result = {};
477
+ let type = normalizeGeminiJsonSchemaType(source.type);
478
+ if (source.const !== undefined) {
479
+ result.enum = [source.const];
480
+ type = type ?? inferGeminiJsonSchemaTypeFromValue(source.const);
481
+ } else if (Array.isArray(source.enum) && source.enum.length > 0) {
482
+ result.enum = source.enum;
483
+ type = type ?? inferGeminiJsonSchemaTypeFromEnum(source.enum);
484
+ }
485
+ if (!type) {
486
+ if (source.properties && typeof source.properties === "object") {
487
+ type = "object";
488
+ } else if (source.items !== undefined || source.prefixItems !== undefined) {
489
+ type = "array";
490
+ }
491
+ }
492
+ if (source.nullable === true) {
493
+ type = addNullToGeminiJsonSchemaType(type);
494
+ }
495
+ if (type) {
496
+ result.type = type;
497
+ }
498
+ if (typeof source.title === "string") {
499
+ result.title = source.title;
500
+ }
501
+ if (typeof source.description === "string") {
502
+ result.description = source.description;
503
+ }
504
+ if (typeof source.format === "string") {
505
+ result.format = source.format;
506
+ }
507
+ if (typeof source.pattern === "string") {
508
+ result.pattern = source.pattern;
509
+ }
510
+ if (typeof source.minimum === "number") {
511
+ result.minimum = source.minimum;
512
+ } else if (typeof source.exclusiveMinimum === "number") {
513
+ result.minimum = source.exclusiveMinimum;
514
+ }
515
+ if (typeof source.maximum === "number") {
516
+ result.maximum = source.maximum;
517
+ } else if (typeof source.exclusiveMaximum === "number") {
518
+ result.maximum = source.exclusiveMaximum;
519
+ }
520
+ if (typeof source.minItems === "number") {
521
+ result.minItems = source.minItems;
522
+ }
523
+ if (typeof source.maxItems === "number") {
524
+ result.maxItems = source.maxItems;
525
+ }
526
+ if (typeof source.minLength === "number") {
527
+ result.minLength = source.minLength;
528
+ }
529
+ if (typeof source.maxLength === "number") {
530
+ result.maxLength = source.maxLength;
531
+ }
532
+ if (typeof source.minProperties === "number") {
533
+ result.minProperties = source.minProperties;
534
+ }
535
+ if (typeof source.maxProperties === "number") {
536
+ result.maxProperties = source.maxProperties;
537
+ }
538
+ const properties = sanitizeGeminiJsonSchemaProperties(source.properties);
539
+ if (properties) {
540
+ result.properties = properties;
541
+ result.propertyOrdering = Object.keys(properties);
542
+ }
543
+ if (Array.isArray(source.required)) {
544
+ const required = source.required.filter((item) => typeof item === "string");
545
+ if (required.length > 0) {
546
+ result.required = required;
547
+ }
548
+ }
549
+ if (typeof source.additionalProperties === "boolean") {
550
+ result.additionalProperties = source.additionalProperties;
551
+ } else {
552
+ const additionalProperties = sanitizeGeminiJsonSchema(source.additionalProperties);
553
+ if (Object.keys(additionalProperties).length > 0) {
554
+ result.additionalProperties = additionalProperties;
555
+ }
556
+ }
557
+ const items = sanitizeGeminiJsonSchema(source.items);
558
+ if (Object.keys(items).length > 0) {
559
+ result.items = items;
560
+ }
561
+ const prefixItems = sanitizeGeminiJsonSchemaArray(source.prefixItems);
562
+ if (prefixItems) {
563
+ result.prefixItems = prefixItems;
564
+ }
565
+ const anyOf = sanitizeGeminiJsonSchemaArray(source.anyOf ?? source.oneOf);
566
+ if (anyOf) {
567
+ result.anyOf = anyOf;
568
+ }
569
+ return result;
570
+ }
571
+ function sanitizeGeminiFunctionParameters(schema) {
572
+ const sanitized = sanitizeGeminiJsonSchema(schema);
573
+ if (Object.keys(sanitized).length > 0) {
574
+ return sanitized;
575
+ }
576
+ return {
577
+ type: "object",
578
+ properties: {}
579
+ };
580
+ }
581
+ function anthropicToolsToGemini(tools) {
582
+ const functionDeclarations = tools.filter((tool) => {
583
+ return tool.type === "custom" || !("type" in tool) || tool.type !== "server";
584
+ }).map((tool) => {
585
+ const anyTool = tool;
586
+ const name = anyTool.name || "";
587
+ const description = anyTool.description || "";
588
+ const inputSchema = anyTool.input_schema ?? {
589
+ type: "object",
590
+ properties: {}
591
+ };
592
+ return {
593
+ name,
594
+ description,
595
+ parametersJsonSchema: sanitizeGeminiFunctionParameters(inputSchema)
596
+ };
597
+ });
598
+ return functionDeclarations.length > 0 ? [{ functionDeclarations }] : [];
599
+ }
600
+ function anthropicToolChoiceToGemini(toolChoice) {
601
+ if (!toolChoice || typeof toolChoice !== "object")
602
+ return;
603
+ const tc = toolChoice;
604
+ const type = tc.type;
605
+ switch (type) {
606
+ case "auto":
607
+ return { mode: "AUTO" };
608
+ case "any":
609
+ return { mode: "ANY" };
610
+ case "tool":
611
+ return {
612
+ mode: "ANY",
613
+ allowedFunctionNames: typeof tc.name === "string" ? [tc.name] : undefined
614
+ };
615
+ default:
616
+ return;
617
+ }
618
+ }
619
+ var GEMINI_JSON_SCHEMA_TYPES;
620
+ var init_convertTools = __esm(() => {
621
+ GEMINI_JSON_SCHEMA_TYPES = new Set([
622
+ "string",
623
+ "number",
624
+ "integer",
625
+ "boolean",
626
+ "object",
627
+ "array",
628
+ "null"
629
+ ]);
630
+ });
631
+
632
+ // src/services/api/gemini/modelMapping.ts
633
+ function getModelFamily(model) {
634
+ if (/haiku/i.test(model))
635
+ return "haiku";
636
+ if (/opus/i.test(model))
637
+ return "opus";
638
+ if (/sonnet/i.test(model))
639
+ return "sonnet";
640
+ return null;
641
+ }
642
+ function resolveGeminiModel(anthropicModel) {
643
+ if (process.env.GEMINI_MODEL) {
644
+ return process.env.GEMINI_MODEL;
645
+ }
646
+ const cleanModel = anthropicModel.replace(/\[1m\]$/i, "");
647
+ const family = getModelFamily(cleanModel);
648
+ if (!family) {
649
+ return cleanModel;
650
+ }
651
+ const geminiEnvVar = `GEMINI_DEFAULT_${family.toUpperCase()}_MODEL`;
652
+ const geminiModel = process.env[geminiEnvVar];
653
+ if (geminiModel) {
654
+ return geminiModel;
655
+ }
656
+ const sharedEnvVar = `ANTHROPIC_DEFAULT_${family.toUpperCase()}_MODEL`;
657
+ const resolvedModel = process.env[sharedEnvVar];
658
+ if (resolvedModel) {
659
+ return resolvedModel;
660
+ }
661
+ throw new Error(`Gemini provider requires GEMINI_MODEL or ${geminiEnvVar} (or ${sharedEnvVar} for backward compatibility) to be configured.`);
662
+ }
663
+ var init_modelMapping = () => {};
664
+
665
+ // src/services/api/gemini/streamAdapter.ts
666
+ import { randomUUID } from "crypto";
667
+ async function* adaptGeminiStreamToAnthropic(stream, model) {
668
+ const messageId = `msg_${randomUUID().replace(/-/g, "").slice(0, 24)}`;
669
+ let started = false;
670
+ let stopped = false;
671
+ let nextContentIndex = 0;
672
+ let openTextLikeBlock = null;
673
+ let sawToolUse = false;
674
+ let finishReason;
675
+ let inputTokens = 0;
676
+ let outputTokens = 0;
677
+ for await (const chunk of stream) {
678
+ const usage = chunk.usageMetadata;
679
+ if (usage) {
680
+ inputTokens = usage.promptTokenCount ?? inputTokens;
681
+ outputTokens = (usage.candidatesTokenCount ?? 0) + (usage.thoughtsTokenCount ?? 0);
682
+ }
683
+ if (!started) {
684
+ started = true;
685
+ yield {
686
+ type: "message_start",
687
+ message: {
688
+ id: messageId,
689
+ type: "message",
690
+ role: "assistant",
691
+ content: [],
692
+ model,
693
+ stop_reason: null,
694
+ stop_sequence: null,
695
+ usage: {
696
+ input_tokens: inputTokens,
697
+ output_tokens: 0,
698
+ cache_creation_input_tokens: 0,
699
+ cache_read_input_tokens: 0
700
+ }
701
+ }
702
+ };
703
+ }
704
+ const candidate = chunk.candidates?.[0];
705
+ const parts = candidate?.content?.parts ?? [];
706
+ for (const part of parts) {
707
+ if (part.functionCall) {
708
+ if (openTextLikeBlock) {
709
+ yield {
710
+ type: "content_block_stop",
711
+ index: openTextLikeBlock.index
712
+ };
713
+ openTextLikeBlock = null;
714
+ }
715
+ sawToolUse = true;
716
+ const toolIndex = nextContentIndex++;
717
+ const toolId = `toolu_${randomUUID().replace(/-/g, "").slice(0, 24)}`;
718
+ yield {
719
+ type: "content_block_start",
720
+ index: toolIndex,
721
+ content_block: {
722
+ type: "tool_use",
723
+ id: toolId,
724
+ name: part.functionCall.name || "",
725
+ input: {}
726
+ }
727
+ };
728
+ if (part.thoughtSignature) {
729
+ yield {
730
+ type: "content_block_delta",
731
+ index: toolIndex,
732
+ delta: {
733
+ type: "signature_delta",
734
+ signature: part.thoughtSignature
735
+ }
736
+ };
737
+ }
738
+ if (part.functionCall.args && Object.keys(part.functionCall.args).length > 0) {
739
+ yield {
740
+ type: "content_block_delta",
741
+ index: toolIndex,
742
+ delta: {
743
+ type: "input_json_delta",
744
+ partial_json: JSON.stringify(part.functionCall.args)
745
+ }
746
+ };
747
+ }
748
+ yield {
749
+ type: "content_block_stop",
750
+ index: toolIndex
751
+ };
752
+ continue;
753
+ }
754
+ const textLikeType = getTextLikeBlockType(part);
755
+ if (textLikeType) {
756
+ if (!openTextLikeBlock || openTextLikeBlock.type !== textLikeType) {
757
+ if (openTextLikeBlock) {
758
+ yield {
759
+ type: "content_block_stop",
760
+ index: openTextLikeBlock.index
761
+ };
762
+ }
763
+ openTextLikeBlock = {
764
+ index: nextContentIndex++,
765
+ type: textLikeType
766
+ };
767
+ yield {
768
+ type: "content_block_start",
769
+ index: openTextLikeBlock.index,
770
+ content_block: textLikeType === "thinking" ? {
771
+ type: "thinking",
772
+ thinking: "",
773
+ signature: ""
774
+ } : {
775
+ type: "text",
776
+ text: ""
777
+ }
778
+ };
779
+ }
780
+ if (part.text) {
781
+ yield {
782
+ type: "content_block_delta",
783
+ index: openTextLikeBlock.index,
784
+ delta: textLikeType === "thinking" ? {
785
+ type: "thinking_delta",
786
+ thinking: part.text
787
+ } : {
788
+ type: "text_delta",
789
+ text: part.text
790
+ }
791
+ };
792
+ }
793
+ if (part.thoughtSignature) {
794
+ yield {
795
+ type: "content_block_delta",
796
+ index: openTextLikeBlock.index,
797
+ delta: {
798
+ type: "signature_delta",
799
+ signature: part.thoughtSignature
800
+ }
801
+ };
802
+ }
803
+ continue;
804
+ }
805
+ if (part.thoughtSignature && openTextLikeBlock) {
806
+ yield {
807
+ type: "content_block_delta",
808
+ index: openTextLikeBlock.index,
809
+ delta: {
810
+ type: "signature_delta",
811
+ signature: part.thoughtSignature
812
+ }
813
+ };
814
+ }
815
+ }
816
+ if (candidate?.finishReason) {
817
+ finishReason = candidate.finishReason;
818
+ }
819
+ }
820
+ if (!started) {
821
+ return;
822
+ }
823
+ if (openTextLikeBlock) {
824
+ yield {
825
+ type: "content_block_stop",
826
+ index: openTextLikeBlock.index
827
+ };
828
+ }
829
+ if (!stopped) {
830
+ yield {
831
+ type: "message_delta",
832
+ delta: {
833
+ stop_reason: mapGeminiFinishReason(finishReason, sawToolUse),
834
+ stop_sequence: null
835
+ },
836
+ usage: {
837
+ output_tokens: outputTokens
838
+ }
839
+ };
840
+ yield {
841
+ type: "message_stop"
842
+ };
843
+ stopped = true;
844
+ }
845
+ }
846
+ function getTextLikeBlockType(part) {
847
+ if (typeof part.text !== "string") {
848
+ return null;
849
+ }
850
+ return part.thought ? "thinking" : "text";
851
+ }
852
+ function mapGeminiFinishReason(reason, sawToolUse) {
853
+ switch (reason) {
854
+ case "MAX_TOKENS":
855
+ return "max_tokens";
856
+ case "STOP":
857
+ case "FINISH_REASON_UNSPECIFIED":
858
+ case "SAFETY":
859
+ case "RECITATION":
860
+ case "BLOCKLIST":
861
+ case "PROHIBITED_CONTENT":
862
+ case "SPII":
863
+ case "MALFORMED_FUNCTION_CALL":
864
+ default:
865
+ return sawToolUse ? "tool_use" : "end_turn";
866
+ }
867
+ }
868
+ var init_streamAdapter = () => {};
869
+
870
+ // src/services/api/gemini/index.ts
871
+ import { randomUUID as randomUUID2 } from "crypto";
872
+ async function* queryModelGemini(messages, systemPrompt, tools, signal, options, thinkingConfig) {
873
+ try {
874
+ const geminiModel = resolveGeminiModel(options.model);
875
+ const messagesForAPI = normalizeMessagesForAPI(messages, tools);
876
+ const toolSchemas = await Promise.all(tools.map((tool) => toolToAPISchema(tool, {
877
+ getToolPermissionContext: options.getToolPermissionContext,
878
+ tools,
879
+ agents: options.agents,
880
+ allowedAgentTypes: options.allowedAgentTypes,
881
+ model: options.model
882
+ })));
883
+ const standardTools = toolSchemas.filter((t) => {
884
+ const anyTool = t;
885
+ return anyTool.type !== "advisor_20260301" && anyTool.type !== "computer_20250124";
886
+ });
887
+ const { contents, systemInstruction } = anthropicMessagesToGemini(messagesForAPI, systemPrompt);
888
+ const geminiTools = anthropicToolsToGemini(standardTools);
889
+ const toolChoice = anthropicToolChoiceToGemini(options.toolChoice);
890
+ const stream = streamGeminiGenerateContent({
891
+ model: geminiModel,
892
+ signal,
893
+ fetchOverride: options.fetchOverride,
894
+ body: {
895
+ contents,
896
+ ...systemInstruction && { systemInstruction },
897
+ ...geminiTools.length > 0 && { tools: geminiTools },
898
+ ...toolChoice && {
899
+ toolConfig: {
900
+ functionCallingConfig: toolChoice
901
+ }
902
+ },
903
+ generationConfig: {
904
+ ...options.temperatureOverride !== undefined && {
905
+ temperature: options.temperatureOverride
906
+ },
907
+ ...thinkingConfig.type !== "disabled" && {
908
+ thinkingConfig: {
909
+ includeThoughts: true,
910
+ ...thinkingConfig.type === "enabled" && {
911
+ thinkingBudget: thinkingConfig.budgetTokens
912
+ }
913
+ }
914
+ }
915
+ }
916
+ }
917
+ });
918
+ logForDebugging(`[Gemini] Calling model=${geminiModel}, messages=${contents.length}, tools=${geminiTools.length}`);
919
+ const adaptedStream = adaptGeminiStreamToAnthropic(stream, geminiModel);
920
+ const contentBlocks = {};
921
+ let partialMessage = undefined;
922
+ let ttftMs = 0;
923
+ const start = Date.now();
924
+ for await (const event of adaptedStream) {
925
+ switch (event.type) {
926
+ case "message_start":
927
+ partialMessage = event.message;
928
+ ttftMs = Date.now() - start;
929
+ break;
930
+ case "content_block_start": {
931
+ const idx = event.index;
932
+ const cb = event.content_block;
933
+ if (cb.type === "tool_use") {
934
+ contentBlocks[idx] = { ...cb, input: "" };
935
+ } else if (cb.type === "text") {
936
+ contentBlocks[idx] = { ...cb, text: "" };
937
+ } else if (cb.type === "thinking") {
938
+ contentBlocks[idx] = { ...cb, thinking: "", signature: "" };
939
+ } else {
940
+ contentBlocks[idx] = { ...cb };
941
+ }
942
+ break;
943
+ }
944
+ case "content_block_delta": {
945
+ const idx = event.index;
946
+ const delta = event.delta;
947
+ const block = contentBlocks[idx];
948
+ if (!block)
949
+ break;
950
+ if (delta.type === "text_delta") {
951
+ block.text = (block.text || "") + delta.text;
952
+ } else if (delta.type === "input_json_delta") {
953
+ block.input = (block.input || "") + delta.partial_json;
954
+ } else if (delta.type === "thinking_delta") {
955
+ block.thinking = (block.thinking || "") + delta.thinking;
956
+ } else if (delta.type === "signature_delta") {
957
+ if (block.type === "thinking") {
958
+ block.signature = delta.signature;
959
+ } else {
960
+ block[GEMINI_THOUGHT_SIGNATURE_FIELD] = delta.signature;
961
+ }
962
+ }
963
+ break;
964
+ }
965
+ case "content_block_stop": {
966
+ const idx = event.index;
967
+ const block = contentBlocks[idx];
968
+ if (!block || !partialMessage)
969
+ break;
970
+ const message = {
971
+ message: {
972
+ ...partialMessage,
973
+ content: normalizeContentFromAPI([block], tools, options.agentId)
974
+ },
975
+ requestId: undefined,
976
+ type: "assistant",
977
+ uuid: randomUUID2(),
978
+ timestamp: new Date().toISOString()
979
+ };
980
+ yield message;
981
+ break;
982
+ }
983
+ case "message_delta":
984
+ case "message_stop":
985
+ break;
986
+ }
987
+ yield {
988
+ type: "stream_event",
989
+ event,
990
+ ...event.type === "message_start" ? { ttftMs } : undefined
991
+ };
992
+ }
993
+ } catch (error) {
994
+ const errorMessage2 = error instanceof Error ? error.message : String(error);
995
+ logForDebugging(`[Gemini] Error: ${errorMessage2}`, { level: "error" });
996
+ yield createAssistantAPIErrorMessage({
997
+ content: `API Error: ${errorMessage2}`,
998
+ apiError: "api_error",
999
+ error: error instanceof Error ? error : new Error(String(error))
1000
+ });
1001
+ }
1002
+ }
1003
+ var init_gemini = __esm(() => {
1004
+ init_api();
1005
+ init_debug();
1006
+ init_messages();
1007
+ init_client();
1008
+ init_convertMessages();
1009
+ init_convertTools();
1010
+ init_modelMapping();
1011
+ init_streamAdapter();
1012
+ init_types();
1013
+ });
1014
+ init_gemini();
1015
+
1016
+ export {
1017
+ queryModelGemini
1018
+ };