@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,471 @@
1
+ // @bun
2
+ import {
3
+ OpenAI,
4
+ adaptOpenAIStreamToAnthropic,
5
+ anthropicMessagesToOpenAI,
6
+ anthropicToolChoiceToOpenAI,
7
+ anthropicToolsToOpenAI,
8
+ init_convertMessages,
9
+ init_convertTools,
10
+ init_openai,
11
+ init_streamAdapter
12
+ } from "./chunk-mw1kpeg9.js";
13
+ import {
14
+ addToTotalSessionCost,
15
+ createAssistantAPIErrorMessage,
16
+ extractDiscoveredToolNames,
17
+ getEmptyToolPermissionContext,
18
+ init_Tool,
19
+ init_api,
20
+ init_cost_tracker,
21
+ init_messages1 as init_messages,
22
+ init_toolSearch,
23
+ isToolSearchEnabled,
24
+ normalizeContentFromAPI,
25
+ normalizeMessagesForAPI,
26
+ toolMatchesName,
27
+ toolToAPISchema
28
+ } from "./chunk-vzgkedm9.js";
29
+ import"./chunk-46hdszda.js";
30
+ import"./chunk-hwfknpxv.js";
31
+ import"./chunk-4nspekjp.js";
32
+ import"./chunk-jzthz1bx.js";
33
+ import"./chunk-1gx78081.js";
34
+ import"./chunk-2gzv8nrw.js";
35
+ import"./chunk-ehtwnxpg.js";
36
+ import"./chunk-68w91pzt.js";
37
+ import"./chunk-s4cb0bcb.js";
38
+ import"./chunk-cgfdkzhb.js";
39
+ import"./chunk-bxcfz5gy.js";
40
+ import"./chunk-nebezy1d.js";
41
+ import"./chunk-wayfjcwt.js";
42
+ import"./chunk-kbm69rtz.js";
43
+ import"./chunk-j5bth84e.js";
44
+ import"./chunk-nxgsnh2y.js";
45
+ import"./chunk-68ffk5qa.js";
46
+ import"./chunk-ps49ymvj.js";
47
+ import"./chunk-bmbq6nt1.js";
48
+ import {
49
+ TOOL_SEARCH_TOOL_NAME,
50
+ init_prompt,
51
+ isDeferredTool
52
+ } from "./chunk-15sfg4bs.js";
53
+ import"./chunk-p7vkh4wx.js";
54
+ import"./chunk-b0qptb1k.js";
55
+ import"./chunk-m87bhhqv.js";
56
+ import"./chunk-j3zhb8vv.js";
57
+ import"./chunk-b2fd462a.js";
58
+ import"./chunk-c11swzas.js";
59
+ import"./chunk-chsyvavm.js";
60
+ import"./chunk-5rv9c8yd.js";
61
+ import {
62
+ calculateUSDCost,
63
+ getModelMaxOutputTokens,
64
+ init_context,
65
+ init_modelCost
66
+ } from "./chunk-tp2jxmcx.js";
67
+ import"./chunk-z19sd3bt.js";
68
+ import"./chunk-1ax1znzj.js";
69
+ import {
70
+ getProxyFetchOptions,
71
+ init_proxy
72
+ } from "./chunk-wha6v7za.js";
73
+ import"./chunk-6nsd9606.js";
74
+ import"./chunk-xp61y5ba.js";
75
+ import"./chunk-64c1avct.js";
76
+ import"./chunk-8g5pe1gr.js";
77
+ import"./chunk-4cp6193g.js";
78
+ import"./chunk-8g747a8x.js";
79
+ import"./chunk-d7886r6a.js";
80
+ import"./chunk-yvtzznds.js";
81
+ import"./chunk-4jm600zv.js";
82
+ import"./chunk-qz2x630m.js";
83
+ import"./chunk-2f21meep.js";
84
+ import"./chunk-nrtksr2p.js";
85
+ import"./chunk-3c25bcsw.js";
86
+ import"./chunk-s3hsqf80.js";
87
+ import"./chunk-yyf72f78.js";
88
+ import"./chunk-cdz5yb0r.js";
89
+ import"./chunk-c7jwbe76.js";
90
+ import"./chunk-0vkfrmqm.js";
91
+ import"./chunk-7sgtxrsc.js";
92
+ import"./chunk-0xjaqda8.js";
93
+ import"./chunk-x8d2ehd7.js";
94
+ import"./chunk-15m49c67.js";
95
+ import"./chunk-tdbz9gbm.js";
96
+ import"./chunk-0awwmrwr.js";
97
+ import"./chunk-qnfx3qtx.js";
98
+ import"./chunk-70eey1nh.js";
99
+ import"./chunk-1nk93fqz.js";
100
+ import"./chunk-s8kj6ajy.js";
101
+ import"./chunk-eenq3avg.js";
102
+ import"./chunk-7mqab3z7.js";
103
+ import"./chunk-5z28bqne.js";
104
+ import"./chunk-qajrkk97.js";
105
+ import {
106
+ init_debug,
107
+ logForDebugging
108
+ } from "./chunk-phd1qfpc.js";
109
+ import"./chunk-fbv4apne.js";
110
+ import {
111
+ init_envUtils,
112
+ isEnvDefinedFalsy,
113
+ isEnvTruthy
114
+ } from "./chunk-jaaxk89e.js";
115
+ import"./chunk-k8vp0atq.js";
116
+ import"./chunk-vf612n57.js";
117
+ import"./chunk-07069jq1.js";
118
+ import"./chunk-d4mdda98.js";
119
+ import"./chunk-55raexh7.js";
120
+ import"./chunk-v9smspw2.js";
121
+ import"./chunk-v1kzp02e.js";
122
+ import"./chunk-7wm5s02e.js";
123
+ import"./chunk-b0kf00ff.js";
124
+ import"./chunk-netzwgv1.js";
125
+ import {
126
+ __esm
127
+ } from "./chunk-qp2qdcda.js";
128
+
129
+ // src/services/api/openai/client.ts
130
+ function getOpenAIClient(options) {
131
+ if (cachedClient)
132
+ return cachedClient;
133
+ const apiKey = process.env.OPENAI_API_KEY || "";
134
+ const baseURL = process.env.OPENAI_BASE_URL;
135
+ const client = new OpenAI({
136
+ apiKey,
137
+ ...baseURL && { baseURL },
138
+ maxRetries: options?.maxRetries ?? 0,
139
+ timeout: parseInt(process.env.API_TIMEOUT_MS || String(600 * 1000), 10),
140
+ dangerouslyAllowBrowser: true,
141
+ ...process.env.OPENAI_ORG_ID && { organization: process.env.OPENAI_ORG_ID },
142
+ ...process.env.OPENAI_PROJECT_ID && { project: process.env.OPENAI_PROJECT_ID },
143
+ fetchOptions: getProxyFetchOptions({ forAnthropicAPI: false }),
144
+ ...options?.fetchOverride && { fetch: options.fetchOverride }
145
+ });
146
+ if (!options?.fetchOverride) {
147
+ cachedClient = client;
148
+ }
149
+ return client;
150
+ }
151
+ var cachedClient = null;
152
+ var init_client = __esm(() => {
153
+ init_openai();
154
+ init_proxy();
155
+ });
156
+
157
+ // src/services/api/openai/modelMapping.ts
158
+ function getModelFamily(model) {
159
+ if (/haiku/i.test(model))
160
+ return "haiku";
161
+ if (/opus/i.test(model))
162
+ return "opus";
163
+ if (/sonnet/i.test(model))
164
+ return "sonnet";
165
+ return null;
166
+ }
167
+ function resolveOpenAIModel(anthropicModel) {
168
+ if (process.env.OPENAI_MODEL) {
169
+ return process.env.OPENAI_MODEL;
170
+ }
171
+ const cleanModel = anthropicModel.replace(/\[1m\]$/, "");
172
+ const family = getModelFamily(cleanModel);
173
+ if (family) {
174
+ const openaiEnvVar = `OPENAI_DEFAULT_${family.toUpperCase()}_MODEL`;
175
+ const openaiOverride = process.env[openaiEnvVar];
176
+ if (openaiOverride)
177
+ return openaiOverride;
178
+ const anthropicEnvVar = `ANTHROPIC_DEFAULT_${family.toUpperCase()}_MODEL`;
179
+ const anthropicOverride = process.env[anthropicEnvVar];
180
+ if (anthropicOverride)
181
+ return anthropicOverride;
182
+ }
183
+ return DEFAULT_MODEL_MAP[cleanModel] ?? cleanModel;
184
+ }
185
+ var DEFAULT_MODEL_MAP;
186
+ var init_modelMapping = __esm(() => {
187
+ DEFAULT_MODEL_MAP = {
188
+ "claude-sonnet-4-20250514": "gpt-4o",
189
+ "claude-sonnet-4-5-20250929": "gpt-4o",
190
+ "claude-sonnet-4-6": "gpt-4o",
191
+ "claude-opus-4-20250514": "o3",
192
+ "claude-opus-4-1-20250805": "o3",
193
+ "claude-opus-4-5-20251101": "o3",
194
+ "claude-opus-4-6": "o3",
195
+ "claude-haiku-4-5-20251001": "gpt-4o-mini",
196
+ "claude-3-5-haiku-20241022": "gpt-4o-mini",
197
+ "claude-3-7-sonnet-20250219": "gpt-4o",
198
+ "claude-3-5-sonnet-20241022": "gpt-4o"
199
+ };
200
+ });
201
+
202
+ // src/services/api/openai/index.ts
203
+ import { randomUUID } from "crypto";
204
+ function isOpenAIThinkingEnabled(model) {
205
+ if (isEnvDefinedFalsy(process.env.OPENAI_ENABLE_THINKING))
206
+ return false;
207
+ if (isEnvTruthy(process.env.OPENAI_ENABLE_THINKING))
208
+ return true;
209
+ const modelLower = model.toLowerCase();
210
+ return modelLower.includes("deepseek-reasoner") || modelLower.includes("deepseek-v3.2");
211
+ }
212
+ function buildOpenAIRequestBody(params) {
213
+ const { model, messages, tools, toolChoice, enableThinking, maxTokens, temperatureOverride } = params;
214
+ return {
215
+ model,
216
+ messages,
217
+ max_tokens: maxTokens,
218
+ ...tools.length > 0 && {
219
+ tools,
220
+ ...toolChoice && { tool_choice: toolChoice }
221
+ },
222
+ stream: true,
223
+ stream_options: { include_usage: true },
224
+ ...enableThinking && {
225
+ thinking: { type: "enabled" },
226
+ enable_thinking: true,
227
+ chat_template_kwargs: { thinking: true }
228
+ },
229
+ ...!enableThinking && temperatureOverride !== undefined && {
230
+ temperature: temperatureOverride
231
+ }
232
+ };
233
+ }
234
+ function assembleFinalAssistantOutputs(params) {
235
+ const { partialMessage, contentBlocks, tools, agentId, usage, stopReason, maxTokens } = params;
236
+ const outputs = [];
237
+ const allBlocks = Object.keys(contentBlocks).sort((a, b) => Number(a) - Number(b)).map((k) => contentBlocks[Number(k)]).filter(Boolean);
238
+ if (allBlocks.length > 0) {
239
+ outputs.push({
240
+ message: {
241
+ ...partialMessage,
242
+ content: normalizeContentFromAPI(allBlocks, tools, agentId),
243
+ usage,
244
+ stop_reason: stopReason,
245
+ stop_sequence: null
246
+ },
247
+ requestId: undefined,
248
+ type: "assistant",
249
+ uuid: randomUUID(),
250
+ timestamp: new Date().toISOString()
251
+ });
252
+ }
253
+ if (stopReason === "max_tokens") {
254
+ outputs.push(createAssistantAPIErrorMessage({
255
+ content: `Output truncated: response exceeded the ${maxTokens} token limit. ` + `Set CLAUDE_CODE_MAX_OUTPUT_TOKENS to override.`,
256
+ apiError: "max_output_tokens",
257
+ error: "max_output_tokens"
258
+ }));
259
+ }
260
+ return outputs;
261
+ }
262
+ async function* queryModelOpenAI(messages, systemPrompt, tools, signal, options) {
263
+ try {
264
+ const openaiModel = resolveOpenAIModel(options.model);
265
+ const messagesForAPI = normalizeMessagesForAPI(messages, tools);
266
+ const useToolSearch = await isToolSearchEnabled(options.model, tools, options.getToolPermissionContext || (async () => getEmptyToolPermissionContext()), options.agents || [], options.querySource);
267
+ const deferredToolNames = new Set;
268
+ if (useToolSearch) {
269
+ for (const t of tools) {
270
+ if (isDeferredTool(t))
271
+ deferredToolNames.add(t.name);
272
+ }
273
+ }
274
+ let filteredTools = tools;
275
+ if (useToolSearch && deferredToolNames.size > 0) {
276
+ const discoveredToolNames = extractDiscoveredToolNames(messages);
277
+ filteredTools = tools.filter((tool) => {
278
+ if (!deferredToolNames.has(tool.name))
279
+ return true;
280
+ if (toolMatchesName(tool, TOOL_SEARCH_TOOL_NAME))
281
+ return true;
282
+ return discoveredToolNames.has(tool.name);
283
+ });
284
+ }
285
+ const toolSchemas = await Promise.all(filteredTools.map((tool) => toolToAPISchema(tool, {
286
+ getToolPermissionContext: options.getToolPermissionContext,
287
+ tools,
288
+ agents: options.agents,
289
+ allowedAgentTypes: options.allowedAgentTypes,
290
+ model: options.model,
291
+ deferLoading: useToolSearch && deferredToolNames.has(tool.name)
292
+ })));
293
+ const standardTools = toolSchemas.filter((t) => {
294
+ const anyT = t;
295
+ return anyT.type !== "advisor_20260301" && anyT.type !== "computer_20250124";
296
+ });
297
+ const enableThinking = isOpenAIThinkingEnabled(openaiModel);
298
+ const openaiMessages = anthropicMessagesToOpenAI(messagesForAPI, systemPrompt, {
299
+ enableThinking
300
+ });
301
+ const openaiTools = anthropicToolsToOpenAI(standardTools);
302
+ const openaiToolChoice = anthropicToolChoiceToOpenAI(options.toolChoice);
303
+ if (useToolSearch) {
304
+ const includedDeferredTools = filteredTools.filter((t) => deferredToolNames.has(t.name)).length;
305
+ logForDebugging(`[OpenAI] Tool search enabled: ${includedDeferredTools}/${deferredToolNames.size} deferred tools included, total tools=${openaiTools.length}`);
306
+ } else {
307
+ logForDebugging(`[OpenAI] Tool search disabled, total tools=${openaiTools.length}`);
308
+ }
309
+ const { upperLimit } = getModelMaxOutputTokens(openaiModel);
310
+ const maxTokens = options.maxOutputTokensOverride ?? upperLimit;
311
+ const client = getOpenAIClient({
312
+ maxRetries: 0,
313
+ fetchOverride: options.fetchOverride,
314
+ source: options.querySource
315
+ });
316
+ logForDebugging(`[OpenAI] Calling model=${openaiModel}, messages=${openaiMessages.length}, tools=${openaiTools.length}, thinking=${enableThinking}`);
317
+ const requestBody = buildOpenAIRequestBody({
318
+ model: openaiModel,
319
+ messages: openaiMessages,
320
+ tools: openaiTools,
321
+ toolChoice: openaiToolChoice,
322
+ enableThinking,
323
+ maxTokens,
324
+ temperatureOverride: options.temperatureOverride
325
+ });
326
+ const stream = await client.chat.completions.create(requestBody, { signal });
327
+ const adaptedStream = adaptOpenAIStreamToAnthropic(stream, openaiModel);
328
+ const contentBlocks = {};
329
+ let partialMessage;
330
+ let stopReason = null;
331
+ let usage = {
332
+ input_tokens: 0,
333
+ output_tokens: 0,
334
+ cache_creation_input_tokens: 0,
335
+ cache_read_input_tokens: 0
336
+ };
337
+ let ttftMs = 0;
338
+ const start = Date.now();
339
+ for await (const event of adaptedStream) {
340
+ switch (event.type) {
341
+ case "message_start": {
342
+ partialMessage = event.message;
343
+ ttftMs = Date.now() - start;
344
+ if (event.message?.usage) {
345
+ usage = {
346
+ ...usage,
347
+ ...event.message.usage
348
+ };
349
+ }
350
+ break;
351
+ }
352
+ case "content_block_start": {
353
+ const idx = event.index;
354
+ const cb = event.content_block;
355
+ if (cb.type === "tool_use") {
356
+ contentBlocks[idx] = { ...cb, input: "" };
357
+ } else if (cb.type === "text") {
358
+ contentBlocks[idx] = { ...cb, text: "" };
359
+ } else if (cb.type === "thinking") {
360
+ contentBlocks[idx] = { ...cb, thinking: "", signature: "" };
361
+ } else {
362
+ contentBlocks[idx] = { ...cb };
363
+ }
364
+ break;
365
+ }
366
+ case "content_block_delta": {
367
+ const idx = event.index;
368
+ const delta = event.delta;
369
+ const block = contentBlocks[idx];
370
+ if (!block)
371
+ break;
372
+ if (delta.type === "text_delta") {
373
+ block.text = (block.text || "") + delta.text;
374
+ } else if (delta.type === "input_json_delta") {
375
+ block.input = (block.input || "") + delta.partial_json;
376
+ } else if (delta.type === "thinking_delta") {
377
+ block.thinking = (block.thinking || "") + delta.thinking;
378
+ } else if (delta.type === "signature_delta") {
379
+ block.signature = delta.signature;
380
+ }
381
+ break;
382
+ }
383
+ case "content_block_stop": {
384
+ break;
385
+ }
386
+ case "message_delta": {
387
+ const deltaUsage = event.usage;
388
+ if (deltaUsage) {
389
+ usage = { ...usage, ...deltaUsage };
390
+ }
391
+ if (event.delta?.stop_reason != null) {
392
+ stopReason = event.delta.stop_reason;
393
+ }
394
+ break;
395
+ }
396
+ case "message_stop": {
397
+ if (partialMessage) {
398
+ for (const output of assembleFinalAssistantOutputs({
399
+ partialMessage,
400
+ contentBlocks,
401
+ tools,
402
+ agentId: options.agentId,
403
+ usage,
404
+ stopReason,
405
+ maxTokens
406
+ })) {
407
+ yield output;
408
+ }
409
+ partialMessage = null;
410
+ }
411
+ if (usage.input_tokens + usage.output_tokens > 0) {
412
+ const costUSD = calculateUSDCost(openaiModel, usage);
413
+ addToTotalSessionCost(costUSD, usage, options.model);
414
+ }
415
+ break;
416
+ }
417
+ }
418
+ yield {
419
+ type: "stream_event",
420
+ event,
421
+ ...event.type === "message_start" ? { ttftMs } : undefined
422
+ };
423
+ }
424
+ if (partialMessage) {
425
+ for (const output of assembleFinalAssistantOutputs({
426
+ partialMessage,
427
+ contentBlocks,
428
+ tools,
429
+ agentId: options.agentId,
430
+ usage,
431
+ stopReason,
432
+ maxTokens
433
+ })) {
434
+ yield output;
435
+ }
436
+ }
437
+ } catch (error) {
438
+ const errorMessage = error instanceof Error ? error.message : String(error);
439
+ logForDebugging(`[OpenAI] Error: ${errorMessage}`, { level: "error" });
440
+ yield createAssistantAPIErrorMessage({
441
+ content: `API Error: ${errorMessage}`,
442
+ apiError: "api_error",
443
+ error: error instanceof Error ? error : new Error(String(error))
444
+ });
445
+ }
446
+ }
447
+ var init_openai2 = __esm(() => {
448
+ init_client();
449
+ init_convertMessages();
450
+ init_convertTools();
451
+ init_streamAdapter();
452
+ init_modelMapping();
453
+ init_messages();
454
+ init_api();
455
+ init_Tool();
456
+ init_debug();
457
+ init_cost_tracker();
458
+ init_modelCost();
459
+ init_envUtils();
460
+ init_context();
461
+ init_messages();
462
+ init_toolSearch();
463
+ init_prompt();
464
+ });
465
+ init_openai2();
466
+
467
+ export {
468
+ queryModelOpenAI,
469
+ isOpenAIThinkingEnabled,
470
+ buildOpenAIRequestBody
471
+ };
@@ -0,0 +1,111 @@
1
+ // @bun
2
+ import {
3
+ Select,
4
+ init_CustomSelect
5
+ } from "./chunk-vzgkedm9.js";
6
+ import {
7
+ init_config,
8
+ saveGlobalConfig
9
+ } from "./chunk-tp2jxmcx.js";
10
+ import {
11
+ Dialog,
12
+ ThemedText,
13
+ init_src
14
+ } from "./chunk-c7jwbe76.js";
15
+ import {
16
+ require_jsx_dev_runtime
17
+ } from "./chunk-7sgtxrsc.js";
18
+ import {
19
+ __toESM
20
+ } from "./chunk-qp2qdcda.js";
21
+
22
+ // src/components/ApproveApiKey.tsx
23
+ init_src();
24
+ init_config();
25
+ init_CustomSelect();
26
+ var jsx_dev_runtime = __toESM(require_jsx_dev_runtime(), 1);
27
+ function ApproveApiKey({
28
+ customApiKeyTruncated,
29
+ onDone
30
+ }) {
31
+ function onChange(value) {
32
+ switch (value) {
33
+ case "yes": {
34
+ saveGlobalConfig((current) => ({
35
+ ...current,
36
+ customApiKeyResponses: {
37
+ ...current.customApiKeyResponses,
38
+ approved: [
39
+ ...current.customApiKeyResponses?.approved ?? [],
40
+ customApiKeyTruncated
41
+ ]
42
+ }
43
+ }));
44
+ onDone(true);
45
+ break;
46
+ }
47
+ case "no": {
48
+ saveGlobalConfig((current) => ({
49
+ ...current,
50
+ customApiKeyResponses: {
51
+ ...current.customApiKeyResponses,
52
+ rejected: [
53
+ ...current.customApiKeyResponses?.rejected ?? [],
54
+ customApiKeyTruncated
55
+ ]
56
+ }
57
+ }));
58
+ onDone(false);
59
+ break;
60
+ }
61
+ }
62
+ }
63
+ return /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Dialog, {
64
+ title: "Detected a custom API key in your environment",
65
+ color: "warning",
66
+ onCancel: () => onChange("no"),
67
+ children: [
68
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
69
+ children: [
70
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
71
+ bold: true,
72
+ children: "ANTHROPIC_API_KEY"
73
+ }, undefined, false, undefined, this),
74
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
75
+ children: [
76
+ ": sk-ant-...",
77
+ customApiKeyTruncated
78
+ ]
79
+ }, undefined, true, undefined, this)
80
+ ]
81
+ }, undefined, true, undefined, this),
82
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
83
+ children: "Do you want to use this API key?"
84
+ }, undefined, false, undefined, this),
85
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(Select, {
86
+ defaultValue: "no",
87
+ defaultFocusValue: "no",
88
+ options: [
89
+ { label: "Yes", value: "yes" },
90
+ {
91
+ label: /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
92
+ children: [
93
+ "No (",
94
+ /* @__PURE__ */ jsx_dev_runtime.jsxDEV(ThemedText, {
95
+ bold: true,
96
+ children: "recommended"
97
+ }, undefined, false, undefined, this),
98
+ ")"
99
+ ]
100
+ }, undefined, true, undefined, this),
101
+ value: "no"
102
+ }
103
+ ],
104
+ onChange: (value) => onChange(value),
105
+ onCancel: () => onChange("no")
106
+ }, undefined, false, undefined, this)
107
+ ]
108
+ }, undefined, true, undefined, this);
109
+ }
110
+
111
+ export { ApproveApiKey };