@opencode/core 2.0.21 → 2.0.23

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 (855) hide show
  1. package/dist/account/sql.js +1 -1
  2. package/dist/agent.js +83 -83
  3. package/dist/aisdk-native.js +89 -89
  4. package/dist/aisdk.js +94 -94
  5. package/dist/app.js +7 -7
  6. package/dist/bus.js +69 -69
  7. package/dist/chunks/{job-anp1t542.js → generate-01s90evy.js} +24 -24
  8. package/dist/chunks/{job-hjrhn7sa.js → generate-01vz176c.js} +13 -13
  9. package/dist/chunks/{job-gd8pphrc.js → generate-02hj8zpc.js} +1 -1
  10. package/dist/chunks/{job-1ddmwb72.js → generate-067vzkwc.js} +13 -13
  11. package/dist/chunks/{job-cezb84g9.js → generate-06wny47j.js} +170 -164
  12. package/dist/chunks/{job-awtsf2hr.js → generate-0at0q6bk.js} +6 -6
  13. package/dist/chunks/generate-0j77ygfz.js +25 -0
  14. package/dist/chunks/{job-vz4zcjem.js → generate-0n25afzx.js} +5 -5
  15. package/dist/chunks/{job-0paq2nw3.js → generate-0paq2nw3.js} +1 -1
  16. package/dist/chunks/{job-w85vjd23.js → generate-0q2zy8rk.js} +27 -27
  17. package/dist/chunks/{job-gv6a8nnw.js → generate-0vbcp93d.js} +2 -2
  18. package/dist/chunks/{job-35hkzk16.js → generate-0z57cqh9.js} +7 -7
  19. package/dist/chunks/{job-jeerxax2.js → generate-14qr745v.js} +20 -20
  20. package/dist/chunks/{job-wpv4xhp3.js → generate-14vr5qa8.js} +26 -15
  21. package/dist/chunks/{job-pgw42aqy.js → generate-1ader487.js} +8 -8
  22. package/dist/chunks/{job-1dazxqgg.js → generate-1dazxqgg.js} +2 -2
  23. package/dist/chunks/{job-94ek1h2f.js → generate-1dvck2a7.js} +2 -2
  24. package/dist/chunks/{job-80nn28cp.js → generate-1fs3aa3n.js} +11 -11
  25. package/dist/chunks/{job-73n25p0e.js → generate-1vsafbzv.js} +10 -10
  26. package/dist/chunks/{job-mfqp6xfm.js → generate-1ygqh575.js} +6 -6
  27. package/dist/chunks/{job-w6ebfasv.js → generate-1z18ck0n.js} +9 -9
  28. package/dist/chunks/{job-vdpw8b0t.js → generate-21tjqxxf.js} +11 -11
  29. package/dist/chunks/{job-jzxd5mvh.js → generate-29x9jy0f.js} +29 -29
  30. package/dist/chunks/{job-2a5m3afh.js → generate-2a5m3afh.js} +1 -1
  31. package/dist/chunks/{job-yrznvahk.js → generate-2ccvkpx1.js} +2 -2
  32. package/dist/chunks/{job-2zhq2a85.js → generate-2pcsyv91.js} +48 -48
  33. package/dist/chunks/{job-hpg6w38n.js → generate-330q9b0x.js} +33 -37
  34. package/dist/chunks/{job-2h8w1cfj.js → generate-34bnvpfh.js} +26 -26
  35. package/dist/chunks/{job-230c54mq.js → generate-34manr0f.js} +12 -12
  36. package/dist/chunks/{job-w4cz4w8n.js → generate-39k0hmda.js} +2 -2
  37. package/dist/chunks/{job-amzxah2v.js → generate-3dgfh0cr.js} +39 -39
  38. package/dist/chunks/{job-5svcwqmc.js → generate-3edgjjmd.js} +55 -30
  39. package/dist/chunks/{job-3fc6dm20.js → generate-3fc6dm20.js} +1 -1
  40. package/dist/chunks/{job-3hepkmqq.js → generate-3hepkmqq.js} +1 -1
  41. package/dist/chunks/{job-rb7cysfw.js → generate-3j10s7ay.js} +9 -9
  42. package/dist/chunks/{job-a98nbm3g.js → generate-3q48ekr2.js} +16 -16
  43. package/dist/chunks/{job-tdhe5xga.js → generate-3rd28rcz.js} +11 -11
  44. package/dist/chunks/{job-3smtnn6g.js → generate-3smtnn6g.js} +1 -1
  45. package/dist/chunks/{job-sk3qaz4a.js → generate-3t0ybcrp.js} +58 -20
  46. package/dist/chunks/{job-3tvqynh2.js → generate-3tvqynh2.js} +1 -1
  47. package/dist/chunks/{job-7hxgqze9.js → generate-3x5f6s31.js} +61 -83
  48. package/dist/chunks/{job-3zsf4n22.js → generate-3zsf4n22.js} +1 -1
  49. package/dist/chunks/{job-deaeaxqh.js → generate-435eggbz.js} +11 -11
  50. package/dist/chunks/{job-ecfe7b91.js → generate-4eax54pa.js} +6 -3
  51. package/dist/chunks/{job-z8bzfx2e.js → generate-4kfhygng.js} +37 -37
  52. package/dist/chunks/{job-ntgtekfh.js → generate-4ntq7m4z.js} +22 -22
  53. package/dist/chunks/{job-pzvyvyg4.js → generate-529vcnym.js} +17 -19
  54. package/dist/chunks/{job-54ma36ye.js → generate-54ma36ye.js} +1 -1
  55. package/dist/chunks/{job-57b9ws8p.js → generate-57b9ws8p.js} +1 -1
  56. package/dist/chunks/{job-5daktx2q.js → generate-5daktx2q.js} +1 -1
  57. package/dist/chunks/{job-bg585zsx.js → generate-5kp03ppx.js} +12 -12
  58. package/dist/chunks/{job-vmgq4x8b.js → generate-5pyjqqve.js} +2 -2
  59. package/dist/chunks/{job-9gspbefy.js → generate-5swqfww9.js} +52 -26
  60. package/dist/chunks/{job-5t3nmthw.js → generate-5t3nmthw.js} +2 -2
  61. package/dist/chunks/{job-ggxahnyx.js → generate-5txw87z1.js} +8 -8
  62. package/dist/chunks/{job-ynzdndxd.js → generate-5tznt6k3.js} +20 -20
  63. package/dist/chunks/{job-3vy408b5.js → generate-5v5aasd4.js} +21 -21
  64. package/dist/chunks/{job-pxz4gc4z.js → generate-5yzz6hd1.js} +24 -132
  65. package/dist/chunks/{job-dydyxn0c.js → generate-61fzh3cq.js} +8 -8
  66. package/dist/chunks/{job-669tq793.js → generate-669tq793.js} +1 -1
  67. package/dist/chunks/{job-h6zqkqnm.js → generate-6cjqe6sy.js} +28 -27
  68. package/dist/chunks/{job-mjymc32g.js → generate-6m42r3np.js} +21 -21
  69. package/dist/chunks/{job-4tn3p6ay.js → generate-6nv25w3f.js} +30 -30
  70. package/dist/chunks/{job-dx8qg5g2.js → generate-6p2526mp.js} +11 -11
  71. package/dist/chunks/{job-d7semmcg.js → generate-6ywhdf6k.js} +24 -24
  72. package/dist/chunks/{job-vsq07z0a.js → generate-6zp854ra.js} +3 -3
  73. package/dist/chunks/{job-ckecvw8r.js → generate-71az546q.js} +2 -2
  74. package/dist/chunks/{job-73tb2d7t.js → generate-73tb2d7t.js} +1 -1
  75. package/dist/chunks/{job-kmyvrf53.js → generate-782xyd0k.js} +8 -8
  76. package/dist/chunks/{job-kgchvb5g.js → generate-7bftgs18.js} +4 -4
  77. package/dist/chunks/{job-7bmhse3q.js → generate-7bmhse3q.js} +1 -1
  78. package/dist/chunks/{job-fcrkznn8.js → generate-7dqw4kz8.js} +5 -5
  79. package/dist/chunks/{job-hy1na680.js → generate-7keeseff.js} +11 -11
  80. package/dist/chunks/{job-dah7mteb.js → generate-7naq09xc.js} +20 -20
  81. package/dist/chunks/{job-00x4qneg.js → generate-7s2tn799.js} +8 -8
  82. package/dist/chunks/{job-94m5kbhr.js → generate-7xf5yptx.js} +19 -19
  83. package/dist/chunks/{job-gfctbcth.js → generate-81f48a1k.js} +10 -10
  84. package/dist/chunks/{job-3r704csb.js → generate-823qfcak.js} +1 -1
  85. package/dist/chunks/{job-pema4mtg.js → generate-82czg0r8.js} +9 -9
  86. package/dist/chunks/{job-84txncab.js → generate-84txncab.js} +1 -1
  87. package/dist/chunks/{job-8d7r5vzw.js → generate-8d7r5vzw.js} +1 -1
  88. package/dist/chunks/{job-27msewjz.js → generate-8f9gr54c.js} +11 -11
  89. package/dist/chunks/{job-kfcwqfca.js → generate-8mnpn7jw.js} +49 -49
  90. package/dist/chunks/{job-0wjxfcep.js → generate-8zvk0rgz.js} +24 -24
  91. package/dist/chunks/{job-vf68ak62.js → generate-94jj38jg.js} +32 -23
  92. package/dist/chunks/{job-z07pqspn.js → generate-9e5bzkjp.js} +3 -3
  93. package/dist/chunks/{job-fnsgkk5v.js → generate-9pvxkkw3.js} +24 -24
  94. package/dist/chunks/{job-2zp87bs7.js → generate-9pwf6adz.js} +25 -25
  95. package/dist/chunks/{job-bz7b5t1b.js → generate-9sy6gwjh.js} +12 -6
  96. package/dist/chunks/{job-aaet6srn.js → generate-aaet6srn.js} +2 -2
  97. package/dist/chunks/{job-mpk0rfs5.js → generate-addxnjmp.js} +4 -4
  98. package/dist/chunks/{job-6j9mr40r.js → generate-aer73x3z.js} +15 -15
  99. package/dist/chunks/{job-e7e40j07.js → generate-afv7vh30.js} +18 -18
  100. package/dist/chunks/{job-372g89p4.js → generate-ajmxk7z2.js} +23 -24
  101. package/dist/chunks/{job-c1vmsse5.js → generate-an75rhmh.js} +18 -18
  102. package/dist/chunks/{job-v6jt2rw3.js → generate-aqdbyk8h.js} +3 -3
  103. package/dist/chunks/{job-ydesmw24.js → generate-arb3wnqs.js} +8 -8
  104. package/dist/chunks/{job-3mft5zsr.js → generate-atz6g77g.js} +21 -21
  105. package/dist/chunks/{job-sxz6gkc3.js → generate-b27vhd2z.js} +7 -7
  106. package/dist/chunks/{job-b6gygkdw.js → generate-b6gygkdw.js} +2 -2
  107. package/dist/chunks/{job-7z3v8smk.js → generate-b9rmm35c.js} +10 -10
  108. package/dist/chunks/{job-21zzzqpe.js → generate-bepbq8jj.js} +15 -15
  109. package/dist/chunks/{job-8d0p2m37.js → generate-bh5cssh3.js} +6 -6
  110. package/dist/chunks/{job-x7n7fr05.js → generate-bkrwt1n9.js} +24 -24
  111. package/dist/chunks/{job-wtmkasd2.js → generate-bp27thah.js} +10 -10
  112. package/dist/chunks/{job-bype3acy.js → generate-bq4mvesw.js} +32 -32
  113. package/dist/chunks/{job-kp8q1t60.js → generate-bydnjh3t.js} +8 -8
  114. package/dist/chunks/{job-a4k5rsdw.js → generate-bzqyrf6j.js} +20 -20
  115. package/dist/chunks/{job-v6gb7zv2.js → generate-cdm0dq9n.js} +6 -6
  116. package/dist/chunks/{job-my8d63dw.js → generate-cj02erkw.js} +6 -6
  117. package/dist/chunks/{job-czfptnv9.js → generate-cmwkp3r5.js} +6 -6
  118. package/dist/chunks/{job-ed8ee58a.js → generate-d2eqb18p.js} +4 -4
  119. package/dist/chunks/{job-3wtv6kz3.js → generate-dfc208d8.js} +32 -32
  120. package/dist/chunks/{job-y71avatq.js → generate-dpkg50ah.js} +4 -4
  121. package/dist/chunks/{job-vmzrcmtw.js → generate-dwxaxj0c.js} +9 -9
  122. package/dist/chunks/{job-c3c0cf95.js → generate-e0ne0z26.js} +85 -85
  123. package/dist/chunks/{job-5qd3pb7m.js → generate-e3qxr5gk.js} +2 -2
  124. package/dist/chunks/{job-jv8zx4t6.js → generate-ee09rdq3.js} +322 -322
  125. package/dist/chunks/{job-ef5x83kb.js → generate-ef5x83kb.js} +1 -1
  126. package/dist/chunks/{job-dyndan9x.js → generate-ejbv3g31.js} +18 -8
  127. package/dist/chunks/{job-srtvgg2d.js → generate-ejg73w2g.js} +6 -6
  128. package/dist/chunks/{job-wy2r7fzd.js → generate-eqfn0pk5.js} +33 -38
  129. package/dist/chunks/{job-etq0c3wd.js → generate-etq0c3wd.js} +1 -1
  130. package/dist/chunks/{job-bd4hr4wh.js → generate-evhyysd2.js} +33 -33
  131. package/dist/chunks/{job-dymtghw6.js → generate-exjwxjfq.js} +18 -18
  132. package/dist/chunks/{job-f50vaec3.js → generate-f5k9xycy.js} +24 -24
  133. package/dist/chunks/{job-5k4xw9x6.js → generate-fep41vc5.js} +20 -20
  134. package/dist/chunks/{job-jy3q8cv1.js → generate-ffxkc1dx.js} +13 -13
  135. package/dist/chunks/{job-2dre8qhb.js → generate-fjh44twp.js} +18 -7
  136. package/dist/chunks/{job-2ydcz6pr.js → generate-g2xfdbz5.js} +14 -14
  137. package/dist/chunks/{job-ypqa2cd5.js → generate-g9c3k2sz.js} +32 -40
  138. package/dist/chunks/{job-97h51v5t.js → generate-gcxxm8yg.js} +39 -27
  139. package/dist/chunks/{job-gd4qta3r.js → generate-gd4qta3r.js} +1 -1
  140. package/dist/chunks/{job-p2scykdn.js → generate-gej6rn0s.js} +15 -15
  141. package/dist/chunks/{job-nq7qbqzc.js → generate-gh5z95q3.js} +9 -9
  142. package/dist/chunks/{job-ab1ys2yh.js → generate-gjv38h0k.js} +20 -24
  143. package/dist/chunks/{job-2b6sywcb.js → generate-gk28ph79.js} +10 -10
  144. package/dist/chunks/{job-krfw28kg.js → generate-gknnw9w7.js} +60 -40
  145. package/dist/chunks/{job-zr3nw1y0.js → generate-gra2jmjd.js} +5 -5
  146. package/dist/chunks/{job-hk6cjtaz.js → generate-gtvea8z9.js} +5 -5
  147. package/dist/chunks/{job-wtj8vade.js → generate-gya1c0vy.js} +3 -3
  148. package/dist/chunks/{job-wd3x2cqz.js → generate-h2b79v29.js} +2 -2
  149. package/dist/chunks/{job-vfjhn2wd.js → generate-h6310vsd.js} +4 -4
  150. package/dist/chunks/{job-h6vf3j39.js → generate-h6vf3j39.js} +1 -1
  151. package/dist/chunks/{job-v54cehp4.js → generate-h7aewrw9.js} +51 -51
  152. package/dist/chunks/{job-pt0meat3.js → generate-h9jzhyk0.js} +11 -11
  153. package/dist/chunks/{job-f29mbr7f.js → generate-h9wp8z5w.js} +4 -4
  154. package/dist/chunks/{job-2p623br6.js → generate-hbyhqfhs.js} +5 -5
  155. package/dist/chunks/{job-n7zyc71s.js → generate-hn4yapt1.js} +52 -46
  156. package/dist/chunks/{job-n8v4y01d.js → generate-hrs38e71.js} +24 -24
  157. package/dist/chunks/{job-7f5ge08c.js → generate-hyxvh71r.js} +43 -43
  158. package/dist/chunks/{job-j56e64zr.js → generate-j56e64zr.js} +1 -1
  159. package/dist/chunks/{job-s2yhstx6.js → generate-j7vp94m4.js} +19 -19
  160. package/dist/chunks/{job-95f1p06x.js → generate-jb9mn43j.js} +22 -22
  161. package/dist/chunks/{job-9wcym3xz.js → generate-jjw1xd6n.js} +10 -10
  162. package/dist/chunks/{job-pyez88hg.js → generate-jmdp6qyf.js} +33 -33
  163. package/dist/chunks/{job-b4st347k.js → generate-jpep6vf5.js} +3 -3
  164. package/dist/chunks/{job-xgdw0hys.js → generate-jrw39j1g.js} +14 -9
  165. package/dist/chunks/{job-brsymgq7.js → generate-k1qrnqst.js} +8 -8
  166. package/dist/chunks/{job-24ncmqw9.js → generate-k5tx4xwh.js} +15 -15
  167. package/dist/chunks/{job-pc4b88sv.js → generate-kb6gw2zp.js} +4 -4
  168. package/dist/chunks/{job-wt6bjq2d.js → generate-kkndcpqr.js} +4 -4
  169. package/dist/chunks/{job-rc8j1xt1.js → generate-kygz6673.js} +5 -5
  170. package/dist/chunks/{job-d1a9hefb.js → generate-m26jacn4.js} +12 -12
  171. package/dist/chunks/{job-m3fdjcah.js → generate-m3fdjcah.js} +1 -1
  172. package/dist/chunks/{job-ma9c1wd2.js → generate-m4b4ezfy.js} +14 -14
  173. package/dist/chunks/{job-m9w0rfyh.js → generate-m9w0rfyh.js} +1 -1
  174. package/dist/chunks/{job-dq0v80fr.js → generate-mjqndqed.js} +5 -5
  175. package/dist/chunks/{job-g0tt42na.js → generate-mmy17vwk.js} +7 -7
  176. package/dist/chunks/{job-gva2p7bf.js → generate-mt68kget.js} +26 -26
  177. package/dist/chunks/generate-mzmyqq3a.js +253 -0
  178. package/dist/chunks/{job-2sv4arh8.js → generate-n5gzjg8d.js} +13 -13
  179. package/dist/chunks/{job-bxfy3ep7.js → generate-n7fmmpds.js} +11 -11
  180. package/dist/chunks/{job-b9fqpfm8.js → generate-n92tnbgp.js} +3 -3
  181. package/dist/chunks/{job-k9rsy0a9.js → generate-ntev6yqw.js} +12 -12
  182. package/dist/chunks/{job-wygg9rvv.js → generate-ntmn2n27.js} +17 -17
  183. package/dist/chunks/{job-kftb8sdn.js → generate-nwgjszw0.js} +15 -15
  184. package/dist/chunks/{job-4dyf21mr.js → generate-nyhzf7s9.js} +20 -20
  185. package/dist/chunks/{job-ykd9stzd.js → generate-nz1ptcx7.js} +12 -12
  186. package/dist/chunks/{job-1mdp675b.js → generate-p5cm9qbj.js} +19 -9
  187. package/dist/chunks/{job-2sf5vtpp.js → generate-pd0d3v86.js} +11 -11
  188. package/dist/chunks/{job-fmzghwgw.js → generate-peckcdzj.js} +13 -13
  189. package/dist/chunks/{job-bcf9qfhy.js → generate-pfh2gawv.js} +11 -11
  190. package/dist/chunks/generate-phz3h32g.js +18 -0
  191. package/dist/chunks/{job-pjvnvgmy.js → generate-pjvnvgmy.js} +1 -1
  192. package/dist/chunks/{job-pknna89w.js → generate-pknna89w.js} +1 -1
  193. package/dist/chunks/{job-jk9p3pr1.js → generate-ppcxd43r.js} +14 -14
  194. package/dist/chunks/{job-5aa0r02j.js → generate-pvkpwa2b.js} +18 -11
  195. package/dist/chunks/{job-48c763ft.js → generate-pxhak851.js} +6 -6
  196. package/dist/chunks/{job-t62vap4r.js → generate-q0808tka.js} +5 -5
  197. package/dist/chunks/{job-pdpyt1kt.js → generate-q0jhbe3n.js} +9 -9
  198. package/dist/chunks/{job-0tmgye68.js → generate-q0raz0xt.js} +9 -9
  199. package/dist/chunks/{job-htjw9qza.js → generate-q3ersh05.js} +6 -6
  200. package/dist/chunks/{job-7t9gt51b.js → generate-qb7y9a6p.js} +13 -13
  201. package/dist/chunks/{job-8k2kc9ag.js → generate-qbyggmx7.js} +7 -7
  202. package/dist/chunks/{job-0ptd10ac.js → generate-qgatrawj.js} +11 -11
  203. package/dist/chunks/{job-rey5gbxv.js → generate-qmqgtz8f.js} +9 -9
  204. package/dist/chunks/{job-6msgmcgs.js → generate-qnc92qwc.js} +1 -1
  205. package/dist/chunks/{job-egadbg92.js → generate-qq54afgs.js} +13 -13
  206. package/dist/chunks/{job-y083drbn.js → generate-qs9jyzer.js} +5 -5
  207. package/dist/chunks/{job-qsdy395h.js → generate-qsdy395h.js} +1 -1
  208. package/dist/chunks/{job-qwjmgwmn.js → generate-qwjmgwmn.js} +1 -1
  209. package/dist/chunks/{job-nzks3jc8.js → generate-qxjc9qry.js} +4 -4
  210. package/dist/chunks/{job-x5y9z3y2.js → generate-r7pm0y1x.js} +24 -24
  211. package/dist/chunks/{job-rdw6cm16.js → generate-rdw6cm16.js} +1 -1
  212. package/dist/chunks/{job-5cmqbqwp.js → generate-rh2b0agp.js} +15 -15
  213. package/dist/chunks/{job-c9x0wrsc.js → generate-rpztatg6.js} +16 -16
  214. package/dist/chunks/{job-qp7xcb4s.js → generate-rv4s02rg.js} +15 -15
  215. package/dist/chunks/{job-2erysbps.js → generate-s3pcx2b8.js} +10 -10
  216. package/dist/chunks/{job-rhjbct0v.js → generate-s8d7rejh.js} +4 -4
  217. package/dist/chunks/{job-xvp1j2dc.js → generate-scgrse2b.js} +11 -6
  218. package/dist/chunks/{job-c248vghb.js → generate-sgpy7nbp.js} +16 -16
  219. package/dist/chunks/{job-tbtg7k2g.js → generate-spja3q52.js} +24 -24
  220. package/dist/chunks/{job-n4szqbm8.js → generate-stnmwbvn.js} +42 -42
  221. package/dist/chunks/{job-nrk5vjbf.js → generate-t0sqncza.js} +5 -5
  222. package/dist/chunks/{job-zee1rnkq.js → generate-t2az9yje.js} +4 -4
  223. package/dist/chunks/{job-f09mb087.js → generate-t3cgces8.js} +40 -40
  224. package/dist/chunks/{job-8j5tm5td.js → generate-t55xhmjx.js} +32 -32
  225. package/dist/chunks/{job-tazgh4e4.js → generate-tazgh4e4.js} +1 -1
  226. package/dist/chunks/{job-zayhf9qs.js → generate-tbp0qxg2.js} +26 -26
  227. package/dist/chunks/generate-tc5sgnzb.js +26 -0
  228. package/dist/chunks/{job-tcezcvh9.js → generate-tcezcvh9.js} +1 -1
  229. package/dist/chunks/{job-tdstcens.js → generate-tdstcens.js} +1 -1
  230. package/dist/chunks/{job-4h23kj6w.js → generate-te8w5cgp.js} +13 -13
  231. package/dist/chunks/{job-5nnetc6k.js → generate-thtzhryg.js} +5 -5
  232. package/dist/chunks/{job-hp7jr1jp.js → generate-trc3n3qb.js} +15 -15
  233. package/dist/chunks/{job-57ez7d0k.js → generate-v0es1rhs.js} +5 -5
  234. package/dist/chunks/{job-rwtjgree.js → generate-v1rqtb9w.js} +16 -16
  235. package/dist/chunks/{job-msknqe7y.js → generate-v1v20ddn.js} +6 -6
  236. package/dist/chunks/{job-80scg3y3.js → generate-vbfgae2j.js} +4 -4
  237. package/dist/chunks/{job-veqvce7d.js → generate-veqvce7d.js} +1 -1
  238. package/dist/chunks/{job-sgsdap7d.js → generate-vnh00gv4.js} +21 -21
  239. package/dist/chunks/{job-7h2raa0m.js → generate-vswtd384.js} +15 -15
  240. package/dist/chunks/{job-5cmxdwv8.js → generate-vx3jgdek.js} +3 -3
  241. package/dist/chunks/{job-vzcthcp8.js → generate-vzcthcp8.js} +1 -1
  242. package/dist/chunks/{job-vzs5sf6e.js → generate-vzs5sf6e.js} +1 -1
  243. package/dist/chunks/{job-2w5dyyz8.js → generate-w1ad28wa.js} +5 -5
  244. package/dist/chunks/{job-nxhqveyz.js → generate-w2h15q85.js} +5 -5
  245. package/dist/chunks/{job-w3wsvvr9.js → generate-w3wsvvr9.js} +1 -1
  246. package/dist/chunks/{job-a7yhm3z2.js → generate-w8vdqaq3.js} +25 -25
  247. package/dist/chunks/{job-1p07q0wb.js → generate-w92k2e0p.js} +6 -6
  248. package/dist/chunks/{job-xp9nh6c1.js → generate-wc2m80g2.js} +39 -50
  249. package/dist/chunks/{job-wd87259q.js → generate-wd87259q.js} +1 -1
  250. package/dist/chunks/{job-eqrfnj34.js → generate-wdshzat6.js} +40 -17
  251. package/dist/chunks/{job-79dvcba4.js → generate-wg7dvnk1.js} +84 -84
  252. package/dist/chunks/{job-7mx9kf16.js → generate-wj2bx7an.js} +11 -11
  253. package/dist/chunks/{job-bnc1xqpd.js → generate-wrp5ry2f.js} +15 -15
  254. package/dist/chunks/{job-8pwpezbf.js → generate-x0y04rr6.js} +24 -24
  255. package/dist/chunks/{job-x1ezjp6w.js → generate-x1ezjp6w.js} +1 -1
  256. package/dist/chunks/{job-81z9xrjy.js → generate-x4csn5yb.js} +19 -19
  257. package/dist/chunks/{job-vk5bz9xj.js → generate-xer3snnb.js} +8 -8
  258. package/dist/chunks/{job-tq0ersfe.js → generate-xf4rrgwy.js} +24 -24
  259. package/dist/chunks/{job-bxzpjmy4.js → generate-xgaq9ax1.js} +20 -21
  260. package/dist/chunks/{job-xkntkrq7.js → generate-xkntkrq7.js} +2 -2
  261. package/dist/chunks/{job-y1fvbwt7.js → generate-y1fvbwt7.js} +1 -1
  262. package/dist/chunks/{job-wm3q5ckg.js → generate-y5pnfqkr.js} +20 -20
  263. package/dist/chunks/{job-321mahy6.js → generate-y8zbdhhn.js} +34 -34
  264. package/dist/chunks/{job-txbrvd03.js → generate-yfxkm5w6.js} +68 -52
  265. package/dist/chunks/{job-frdvpnjn.js → generate-yhecr6n4.js} +5 -5
  266. package/dist/chunks/{job-r8xr0va3.js → generate-yp2x3t23.js} +4 -4
  267. package/dist/chunks/{job-0cmgxwc3.js → generate-ywacswhv.js} +11 -11
  268. package/dist/chunks/{job-z0bkrqjs.js → generate-z0bkrqjs.js} +1 -1
  269. package/dist/chunks/{job-dncx4ycs.js → generate-z15fp2pm.js} +5 -5
  270. package/dist/chunks/{job-2jb1f61f.js → generate-z32f8zps.js} +9 -9
  271. package/dist/chunks/{job-dr2s0fjn.js → generate-z3507kbh.js} +15 -15
  272. package/dist/chunks/{job-qje3r2wc.js → generate-z3ra53tp.js} +3 -3
  273. package/dist/chunks/{job-922hggd3.js → generate-z5v4ffb3.js} +1 -11
  274. package/dist/chunks/{job-x01dckpp.js → generate-z872cvkj.js} +20 -20
  275. package/dist/chunks/{job-vdqv4tww.js → generate-z8hrkqzq.js} +4 -4
  276. package/dist/chunks/{job-j543e7zy.js → generate-ze7rj9cq.js} +11 -11
  277. package/dist/chunks/{job-mvksx64m.js → generate-zfs8ae4p.js} +4 -4
  278. package/dist/chunks/{job-qn4ba14w.js → generate-zmr78fwr.js} +5 -5
  279. package/dist/chunks/{job-rk1r2hx8.js → generate-znsx74x0.js} +1 -1
  280. package/dist/chunks/generate-zp2fsh7c.js +381 -0
  281. package/dist/chunks/{job-mn6n0y1n.js → generate-zpzjyv2k.js} +16 -16
  282. package/dist/chunks/{job-mjphe00w.js → generate-zq24ypn2.js} +30 -30
  283. package/dist/chunks/{job-m0p8cpk7.js → generate-zqkxpfgh.js} +69 -69
  284. package/dist/chunks/{job-zr2ceqn5.js → generate-zr2ceqn5.js} +1 -1
  285. package/dist/chunks/{job-bx0gng0c.js → generate-zwhxpsnh.js} +17 -17
  286. package/dist/chunks/{job-zxq2ej10.js → generate-zxq2ej10.js} +1 -1
  287. package/dist/codemode/catalog.js +1 -1
  288. package/dist/codemode/instructions.js +3 -3
  289. package/dist/codemode/tool.js +3 -3
  290. package/dist/codemode/web.js +1 -1
  291. package/dist/command.js +85 -85
  292. package/dist/config/discovery.js +82 -82
  293. package/dist/config/markdown.js +1 -1
  294. package/dist/config/normalize.js +99 -106
  295. package/dist/config/plugin/agent.js +118 -125
  296. package/dist/config/plugin/command.js +207 -215
  297. package/dist/config/plugin/compaction.js +154 -161
  298. package/dist/config/plugin/compatibility.js +134 -141
  299. package/dist/config/plugin/entry-observer.js +1 -1
  300. package/dist/config/plugin/formatter.js +117 -124
  301. package/dist/config/plugin/image.js +116 -123
  302. package/dist/config/plugin/instruction.js +90 -90
  303. package/dist/config/plugin/location-watcher.js +116 -123
  304. package/dist/config/plugin/mcp.js +125 -132
  305. package/dist/config/plugin/policy.js +117 -124
  306. package/dist/config/plugin/provider.js +116 -123
  307. package/dist/config/plugin/reference.js +118 -125
  308. package/dist/config/plugin/shell.js +116 -123
  309. package/dist/config/plugin/skill-file.js +102 -102
  310. package/dist/config/plugin/skill.js +137 -144
  311. package/dist/config/plugin/snapshot.js +116 -123
  312. package/dist/config/plugin/source.js +119 -126
  313. package/dist/config/plugin/tool-output.js +117 -125
  314. package/dist/config/plugin/websearch.js +115 -122
  315. package/dist/config/plugin/worktree.js +118 -125
  316. package/dist/config/variable.js +3 -3
  317. package/dist/config/watch.js +1 -1
  318. package/dist/config.js +121 -128
  319. package/dist/credential/sql.js +2 -2
  320. package/dist/credential.js +81 -81
  321. package/dist/database/database.js +66 -66
  322. package/dist/database/drizzle/effect-sqlite/driver.js +14 -14
  323. package/dist/database/drizzle/effect-sqlite/index.js +14 -14
  324. package/dist/database/drizzle/effect-sqlite/session.js +11 -11
  325. package/dist/database/drizzle/index.js +15 -15
  326. package/dist/database/drizzle/internal/drizzle-utils.js +1 -1
  327. package/dist/database/drizzle/sqlite-core/effect/count.js +1 -1
  328. package/dist/database/drizzle/sqlite-core/effect/db.js +9 -9
  329. package/dist/database/drizzle/sqlite-core/effect/delete.js +2 -2
  330. package/dist/database/drizzle/sqlite-core/effect/index.js +10 -10
  331. package/dist/database/drizzle/sqlite-core/effect/insert.js +2 -2
  332. package/dist/database/drizzle/sqlite-core/effect/query.js +1 -1
  333. package/dist/database/drizzle/sqlite-core/effect/raw.js +1 -1
  334. package/dist/database/drizzle/sqlite-core/effect/select.js +2 -2
  335. package/dist/database/drizzle/sqlite-core/effect/session.js +10 -10
  336. package/dist/database/drizzle/sqlite-core/effect/update.js +2 -2
  337. package/dist/database/drizzle.js +16 -16
  338. package/dist/database/migration/20260127222353_familiar_lady_ursula.js +1 -1
  339. package/dist/database/migration/20260211171708_add_project_commands.js +1 -1
  340. package/dist/database/migration/20260213144116_wakeful_the_professor.js +1 -1
  341. package/dist/database/migration/20260225215848_workspace.js +1 -1
  342. package/dist/database/migration/20260227213759_add_session_workspace_id.js +1 -1
  343. package/dist/database/migration/20260228203230_blue_harpoon.js +1 -1
  344. package/dist/database/migration/20260303231226_add_workspace_fields.js +1 -1
  345. package/dist/database/migration/20260309230000_move_org_to_state.js +1 -1
  346. package/dist/database/migration/20260312043431_session_message_cursor.js +1 -1
  347. package/dist/database/migration/20260323234822_events.js +1 -1
  348. package/dist/database/migration/20260410174513_workspace-name.js +1 -1
  349. package/dist/database/migration/20260413175956_chief_energizer.js +1 -1
  350. package/dist/database/migration/20260423070820_add_icon_url_override.js +1 -1
  351. package/dist/database/migration/20260427172553_slow_nightmare.js +1 -1
  352. package/dist/database/migration/20260428004200_add_session_path.js +1 -1
  353. package/dist/database/migration/20260501142318_next_venus.js +1 -1
  354. package/dist/database/migration/20260504145000_add_sync_owner.js +1 -1
  355. package/dist/database/migration/20260507164347_add_workspace_time.js +1 -1
  356. package/dist/database/migration/20260510033149_session_usage.js +1 -1
  357. package/dist/database/migration/20260511000411_data_migration_state.js +1 -1
  358. package/dist/database/migration/20260511173437_session-metadata.js +1 -1
  359. package/dist/database/migration/20260601010001_normalize_storage_paths.js +1 -1
  360. package/dist/database/migration/20260601202201_amazing_prowler.js +1 -1
  361. package/dist/database/migration/20260602002951_lowly_union_jack.js +1 -1
  362. package/dist/database/migration/20260602182828_add_project_directories.js +1 -1
  363. package/dist/database/migration/20260603001617_session_message_projection_indexes.js +1 -1
  364. package/dist/database/migration/20260603040000_session_message_projection_order.js +1 -1
  365. package/dist/database/migration/20260603141458_session_input_inbox.js +1 -1
  366. package/dist/database/migration/20260603160727_jittery_ezekiel_stane.js +1 -1
  367. package/dist/database/migration/20260604172448_event_sourced_session_input.js +1 -1
  368. package/dist/database/migration/20260605003541_add_session_context_snapshot.js +1 -1
  369. package/dist/database/migration/20260605042240_add_context_epoch_agent.js +1 -1
  370. package/dist/database/migration/20260611035744_credential.js +1 -1
  371. package/dist/database/migration/20260611192811_lush_chimera.js +1 -1
  372. package/dist/database/migration/20260612174303_project_dir_strategy.js +1 -1
  373. package/dist/database/migration/20260622142730_simplify_session_context_epoch.js +1 -1
  374. package/dist/database/migration/20260622170816_reset_v2_session_state.js +1 -1
  375. package/dist/database/migration/20260622202450_simplify_session_input.js +1 -1
  376. package/dist/database/migration/20260804233008_loose_psylocke.js +1 -1
  377. package/dist/database/migration/20260805200742_import_legacy_credentials.js +1 -1
  378. package/dist/database/migration/20260808023530_workspace_domain.js +1 -1
  379. package/dist/database/migration/20260811161259_execution_claim_attempts.js +1 -1
  380. package/dist/database/migration/20260812181746_session_inbox.js +1 -1
  381. package/dist/database/migration/20260812213948_worktree.js +1 -1
  382. package/dist/database/migration/20260819222447_session_viewed_state.js +1 -1
  383. package/dist/database/migration/20260823191254_nullable_workspace_binding.js +1 -1
  384. package/dist/database/migration/20260910120000_clear_v1_session_permission.js +1 -1
  385. package/dist/database/migration/20260923013825_project_time_active.js +1 -1
  386. package/dist/database/migration.gen.js +49 -49
  387. package/dist/database/migration.js +51 -51
  388. package/dist/database/path.js +2 -2
  389. package/dist/database/schema.gen.js +1 -1
  390. package/dist/database/schema.sql.js +1 -1
  391. package/dist/database/sqlite.bun.js +1 -1
  392. package/dist/database/sqlite.js +1 -1
  393. package/dist/database/sqlite.node.js +1 -1
  394. package/dist/database/sqlite.workerd.js +1 -1
  395. package/dist/database/v1-migration.bun.js +76 -76
  396. package/dist/database/v1-migration.js +1 -1
  397. package/dist/effect/app-node-builder.js +363 -372
  398. package/dist/effect/app-node-platform.js +2 -2
  399. package/dist/effect/keyed-mutex.js +3 -3
  400. package/dist/effect/websocket-constructor.js +1 -1
  401. package/dist/environment/driver.js +1 -1
  402. package/dist/environment/environment.js +93 -93
  403. package/dist/environment/exec-defaults.js +2 -2
  404. package/dist/environment/files.js +1 -1
  405. package/dist/environment/index.js +95 -95
  406. package/dist/environment/local.js +2 -2
  407. package/dist/environment/memory.js +2 -2
  408. package/dist/environment/unavailable.js +1 -1
  409. package/dist/event/sql.js +1 -1
  410. package/dist/event-logger.js +70 -70
  411. package/dist/file-access.js +104 -104
  412. package/dist/file-mutation.js +94 -94
  413. package/dist/file-retention.js +1 -1
  414. package/dist/filesystem/fff.bun.js +2 -2
  415. package/dist/filesystem/fff.js +1 -1
  416. package/dist/filesystem/fff.node.js +2 -2
  417. package/dist/filesystem/fff.workerd.js +2 -2
  418. package/dist/filesystem/location-watcher-policy.js +6 -6
  419. package/dist/filesystem/location-watcher.js +214 -222
  420. package/dist/filesystem/protected.js +1 -1
  421. package/dist/filesystem/search.js +103 -103
  422. package/dist/filesystem/watcher-binding.js +3 -3
  423. package/dist/filesystem/watcher.js +15 -15
  424. package/dist/filesystem.js +108 -104
  425. package/dist/form.js +80 -80
  426. package/dist/formatter/builtins.js +2 -2
  427. package/dist/formatter.js +89 -89
  428. package/dist/generate.js +103 -103
  429. package/dist/git.js +6 -6
  430. package/dist/github-copilot/chat/convert-to-openai-compatible-chat-messages.js +1 -1
  431. package/dist/github-copilot/chat/get-response-metadata.js +1 -1
  432. package/dist/github-copilot/chat/map-openai-compatible-finish-reason.js +1 -1
  433. package/dist/github-copilot/chat/openai-compatible-chat-language-model.js +7 -7
  434. package/dist/github-copilot/chat/openai-compatible-chat-options.js +1 -1
  435. package/dist/github-copilot/chat/openai-compatible-prepare-tools.js +1 -1
  436. package/dist/github-copilot/copilot-provider.js +18 -20
  437. package/dist/github-copilot/models.js +91 -91
  438. package/dist/github-copilot/openai-compatible-error.js +1 -1
  439. package/dist/github-copilot/responses/convert-to-openai-responses-input.js +1 -1
  440. package/dist/github-copilot/responses/map-openai-responses-finish-reason.js +1 -1
  441. package/dist/github-copilot/responses/openai-error.js +1 -1
  442. package/dist/github-copilot/responses/openai-responses-language-model.js +10 -10
  443. package/dist/github-copilot/responses/openai-responses-prepare-tools.js +6 -6
  444. package/dist/github-copilot/responses/tool/code-interpreter.js +1 -1
  445. package/dist/github-copilot/responses/tool/file-search.js +1 -1
  446. package/dist/github-copilot/responses/tool/image-generation.js +1 -1
  447. package/dist/github-copilot/responses/tool/web-search-preview.js +1 -1
  448. package/dist/github-copilot/responses/tool/web-search.js +1 -1
  449. package/dist/image/photon.js +2 -2
  450. package/dist/image.js +6 -6
  451. package/dist/instance/service.js +5 -5
  452. package/dist/instance.js +354 -363
  453. package/dist/instruction-discovery.js +81 -81
  454. package/dist/instructions/builtins.js +87 -87
  455. package/dist/instructions/index.js +3 -3
  456. package/dist/integration/connection.js +3 -3
  457. package/dist/integration.js +85 -85
  458. package/dist/job.js +78 -79
  459. package/dist/kv/sql.js +2 -2
  460. package/dist/kv.js +73 -73
  461. package/dist/location-activity.js +131 -132
  462. package/dist/location-lifecycle.js +107 -107
  463. package/dist/location-service-map.js +86 -86
  464. package/dist/location-services.js +351 -360
  465. package/dist/location.js +83 -83
  466. package/dist/managed-policy.js +5 -5
  467. package/dist/mcp/client.js +137 -106
  468. package/dist/mcp/index.js +109 -109
  469. package/dist/mcp/instructions.js +129 -129
  470. package/dist/mcp/oauth.js +78 -78
  471. package/dist/mcp/stdio.js +90 -90
  472. package/dist/mime.js +1 -1
  473. package/dist/modal/models.js +91 -91
  474. package/dist/model-resolver.js +96 -96
  475. package/dist/model.js +100 -98
  476. package/dist/models-dev.js +107 -107
  477. package/dist/oauth/page.js +1 -1
  478. package/dist/permission/saved.js +80 -80
  479. package/dist/permission/sql.js +5 -5
  480. package/dist/permission.js +113 -113
  481. package/dist/persistent-pty/binary.bun.js +3 -1
  482. package/dist/persistent-pty/binary.node.js +2 -0
  483. package/dist/persistent-pty/binary.workerd.js +2 -0
  484. package/dist/persistent-pty/daemon.js +1 -1
  485. package/dist/persistent-pty/index.js +83 -81
  486. package/dist/persistent-pty/pty-binding.js +1 -1
  487. package/dist/persistent-pty.js +75 -75
  488. package/dist/plugin/agent.js +104 -104
  489. package/dist/plugin/command.js +102 -102
  490. package/dist/plugin/hooks.js +1 -1
  491. package/dist/plugin/host.js +213 -221
  492. package/dist/plugin/identity.js +3 -3
  493. package/dist/plugin/instance.js +3 -3
  494. package/dist/plugin/internal.js +326 -335
  495. package/dist/plugin/mcp-codemode-defaults.js +3 -3
  496. package/dist/plugin/models-dev.js +96 -96
  497. package/dist/plugin/module.js +7 -7
  498. package/dist/plugin/optimize.js +4 -4
  499. package/dist/plugin/plan.js +102 -102
  500. package/dist/plugin/promise.js +1 -1
  501. package/dist/plugin/provider/amazon-bedrock.js +90 -90
  502. package/dist/plugin/provider/azure.js +118 -123
  503. package/dist/plugin/provider/cerebras.js +1 -1
  504. package/dist/plugin/provider/chatgpt.js +93 -93
  505. package/dist/plugin/provider/cloudflare-ai-gateway.js +113 -120
  506. package/dist/plugin/provider/cloudflare-workers-ai.js +114 -121
  507. package/dist/plugin/provider/cohere.js +2 -2
  508. package/dist/plugin/provider/configured.js +112 -119
  509. package/dist/plugin/provider/digitalocean.js +93 -93
  510. package/dist/plugin/provider/dynamic.js +2 -2
  511. package/dist/plugin/provider/factory.js +1 -1
  512. package/dist/plugin/provider/gateway.js +2 -2
  513. package/dist/plugin/provider/github-copilot.js +95 -95
  514. package/dist/plugin/provider/gitlab.js +93 -93
  515. package/dist/plugin/provider/google-vertex.js +90 -90
  516. package/dist/plugin/provider/kilo.js +1 -1
  517. package/dist/plugin/provider/llmgateway.js +78 -78
  518. package/dist/plugin/provider/lmstudio.js +115 -122
  519. package/dist/plugin/provider/modal.js +92 -92
  520. package/dist/plugin/provider/nvidia.js +1 -1
  521. package/dist/plugin/provider/ollama.js +115 -122
  522. package/dist/plugin/provider/openai.js +95 -95
  523. package/dist/plugin/provider/opencode.js +96 -95
  524. package/dist/plugin/provider/openrouter.js +91 -91
  525. package/dist/plugin/provider/perplexity.js +2 -2
  526. package/dist/plugin/provider/poe.js +79 -79
  527. package/dist/plugin/provider/prompt-cache-key.js +90 -90
  528. package/dist/plugin/provider/sap-ai-core.js +91 -91
  529. package/dist/plugin/provider/sdk-factory.js +1 -1
  530. package/dist/plugin/provider/snowflake-cortex.js +115 -122
  531. package/dist/plugin/provider/vercel.js +90 -90
  532. package/dist/plugin/provider/vllm.js +115 -122
  533. package/dist/plugin/provider/xai.js +91 -91
  534. package/dist/plugin/provider/zenmux.js +1 -1
  535. package/dist/plugin/provider.js +155 -163
  536. package/dist/plugin/sdk.js +72 -72
  537. package/dist/plugin/service.js +3 -3
  538. package/dist/plugin/skill.js +134 -141
  539. package/dist/plugin/source-directory.js +1 -1
  540. package/dist/plugin/supervisor.js +345 -354
  541. package/dist/plugin/tool-input-repair.js +4 -4
  542. package/dist/plugin/update.js +4 -4
  543. package/dist/plugin/vcs/git.js +86 -86
  544. package/dist/plugin/vcs/hg.js +86 -86
  545. package/dist/plugin/verbosity.js +93 -93
  546. package/dist/plugin/warming.js +114 -121
  547. package/dist/plugin/websearch/exa.js +5 -5
  548. package/dist/plugin/websearch/firecrawl.js +8 -8
  549. package/dist/plugin/websearch/index.js +9 -9
  550. package/dist/plugin/websearch/mcp.js +4 -4
  551. package/dist/plugin/websearch/parallel.js +6 -6
  552. package/dist/plugin/websearch/tavily.js +6 -6
  553. package/dist/plugin/websearch/tinyfish.js +8 -8
  554. package/dist/plugin.js +214 -222
  555. package/dist/project/schema.js +4 -4
  556. package/dist/project/sql.js +4 -4
  557. package/dist/project.js +82 -82
  558. package/dist/provider.js +104 -98
  559. package/dist/pty/protocol.js +1 -1
  560. package/dist/pty/ticket.js +1 -1
  561. package/dist/pty.js +97 -97
  562. package/dist/reference/instructions.js +87 -87
  563. package/dist/reference.js +89 -89
  564. package/dist/repository-cache.js +81 -81
  565. package/dist/repository.js +1 -1
  566. package/dist/ripgrep/binary.js +2 -2
  567. package/dist/ripgrep.js +97 -97
  568. package/dist/rpc.js +86 -86
  569. package/dist/schema.js +2 -4
  570. package/dist/session/affinity.js +1 -1
  571. package/dist/session/command.js +74 -74
  572. package/dist/session/compaction.js +133 -133
  573. package/dist/session/context.js +153 -153
  574. package/dist/session/diff.js +88 -88
  575. package/dist/session/environment.js +5 -5
  576. package/dist/session/error.js +7 -7
  577. package/dist/session/event.js +1 -1
  578. package/dist/session/execution/restart.js +214 -222
  579. package/dist/session/execution.js +127 -128
  580. package/dist/session/generate.js +154 -154
  581. package/dist/session/history.js +15 -15
  582. package/dist/session/inbox.js +90 -90
  583. package/dist/session/info.js +3 -3
  584. package/dist/session/instruction-entry.js +79 -79
  585. package/dist/session/instruction-state.js +8 -8
  586. package/dist/session/instructions.js +97 -97
  587. package/dist/session/message-updater.js +2 -2
  588. package/dist/session/message.js +1 -1
  589. package/dist/session/model-request.js +120 -120
  590. package/dist/session/model-transport.js +9 -9
  591. package/dist/session/move.js +129 -130
  592. package/dist/session/projector.js +86 -86
  593. package/dist/session/prompt.js +105 -105
  594. package/dist/session/provider-context.js +3 -3
  595. package/dist/session/revert.js +90 -93
  596. package/dist/session/run-coordinator.js +3 -3
  597. package/dist/session/runner/index.js +3 -3
  598. package/dist/session/runner/llm.js +224 -232
  599. package/dist/session/runner/max-steps.js +1 -1
  600. package/dist/session/runner/model.js +98 -98
  601. package/dist/session/runner/publish-llm-event.js +113 -3
  602. package/dist/session/runner/retry.js +4 -4
  603. package/dist/session/runner/step.js +125 -126
  604. package/dist/session/runner/to-llm-message.js +2 -2
  605. package/dist/session/schema.js +5 -5
  606. package/dist/session/session.js +162 -170
  607. package/dist/session/shell.js +130 -138
  608. package/dist/session/skill.js +103 -103
  609. package/dist/session/sql.js +5 -5
  610. package/dist/session/stats.js +73 -73
  611. package/dist/session/store.js +85 -85
  612. package/dist/session/subagent-completion.js +1 -1
  613. package/dist/session/subagent-job.js +203 -211
  614. package/dist/session/system-prompt.js +1 -1
  615. package/dist/session/title.js +157 -157
  616. package/dist/session/to-session-error.js +114 -112
  617. package/dist/session/transfer.js +207 -215
  618. package/dist/session/usage.js +1 -1
  619. package/dist/session.js +211 -219
  620. package/dist/shell/parse.js +6 -6
  621. package/dist/shell/result.js +1 -1
  622. package/dist/shell/scan.js +1 -1
  623. package/dist/shell/select.js +15 -15
  624. package/dist/shell.js +132 -140
  625. package/dist/skill/discovery.js +6 -6
  626. package/dist/skill/instructions.js +107 -107
  627. package/dist/skill.js +112 -112
  628. package/dist/snapshot.js +93 -93
  629. package/dist/state.js +1 -1
  630. package/dist/tool/html-markdown.js +1 -1
  631. package/dist/tool/http-body.js +1 -1
  632. package/dist/tool/mcp.js +126 -126
  633. package/dist/tool/plugin/edit.js +120 -120
  634. package/dist/tool/plugin/file-diff.js +1 -1
  635. package/dist/tool/plugin/glob.js +124 -124
  636. package/dist/tool/plugin/grep.js +124 -124
  637. package/dist/tool/plugin/mcp-resource.js +117 -117
  638. package/dist/tool/plugin/opencode.js +3 -3
  639. package/dist/tool/plugin/patch.js +122 -122
  640. package/dist/tool/plugin/question.js +101 -101
  641. package/dist/tool/plugin/read.js +125 -125
  642. package/dist/tool/plugin/shell.js +208 -216
  643. package/dist/tool/plugin/skill.js +107 -107
  644. package/dist/tool/plugin/subagent.js +210 -218
  645. package/dist/tool/plugin/webfetch.js +106 -106
  646. package/dist/tool/plugin/websearch.js +112 -112
  647. package/dist/tool/plugin/write.js +122 -122
  648. package/dist/tool/read-filesystem.js +100 -100
  649. package/dist/tool/runtime.js +1 -1
  650. package/dist/tool-output.js +9 -8
  651. package/dist/tool.js +14 -14
  652. package/dist/types/agent.d.ts +2 -1
  653. package/dist/types/filesystem.d.ts +15 -1
  654. package/dist/types/github-copilot/copilot-provider.d.ts +0 -1
  655. package/dist/types/instance/service.d.ts +2 -2
  656. package/dist/types/instance.d.ts +3 -3
  657. package/dist/types/job.d.ts +1 -1
  658. package/dist/types/location-service-map.d.ts +3 -3
  659. package/dist/types/mcp/client.d.ts +2 -2
  660. package/dist/types/model-resolver.d.ts +2 -2
  661. package/dist/types/model.d.ts +6 -0
  662. package/dist/types/persistent-pty/binary.bun.d.ts +1 -0
  663. package/dist/types/persistent-pty/binary.node.d.ts +1 -0
  664. package/dist/types/persistent-pty/binary.workerd.d.ts +1 -0
  665. package/dist/types/persistent-pty/daemon.d.ts +4 -4
  666. package/dist/types/persistent-pty/index.d.ts +3 -0
  667. package/dist/types/plugin/internal.d.ts +1 -1
  668. package/dist/types/plugin/provider/azure.d.ts +7 -1
  669. package/dist/types/plugin/supervisor.d.ts +1 -1
  670. package/dist/types/provider.d.ts +19 -5
  671. package/dist/types/schema.d.ts +0 -21
  672. package/dist/types/session/command.d.ts +1 -1
  673. package/dist/types/session/compaction.d.ts +4 -1
  674. package/dist/types/session/diff.d.ts +2 -2
  675. package/dist/types/session/generate.d.ts +3 -2
  676. package/dist/types/session/model-transport.d.ts +1 -1
  677. package/dist/types/session/prompt.d.ts +1 -1
  678. package/dist/types/session/revert.d.ts +2 -3
  679. package/dist/types/session/runner/index.d.ts +2 -1
  680. package/dist/types/session/session.d.ts +5 -5
  681. package/dist/types/session/shell.d.ts +1 -1
  682. package/dist/types/session/skill.d.ts +1 -1
  683. package/dist/types/session/to-session-error.d.ts +2 -0
  684. package/dist/types/session/transfer.d.ts +2 -3
  685. package/dist/types/session.d.ts +5 -4
  686. package/dist/types/tool-output.d.ts +1 -0
  687. package/dist/types/v1/config/error.d.ts +48 -1433
  688. package/dist/types/v1/config/migrate.d.ts +15 -318
  689. package/dist/types/vcs.d.ts +6 -0
  690. package/dist/types/worktree.d.ts +2 -1
  691. package/dist/util/error-summary.js +1 -1
  692. package/dist/util/error.js +1 -1
  693. package/dist/util/git-executable.js +2 -2
  694. package/dist/util/iife.js +1 -1
  695. package/dist/util/lazy.js +1 -1
  696. package/dist/util/slug.js +1 -1
  697. package/dist/util/token.js +1 -1
  698. package/dist/util/which.js +1 -1
  699. package/dist/util/wildcard.js +1 -1
  700. package/dist/v1/config/agent.js +7 -7
  701. package/dist/v1/config/command.js +5 -5
  702. package/dist/v1/config/error.js +5 -13
  703. package/dist/v1/config/mcp.js +4 -4
  704. package/dist/v1/config/migrate.js +96 -96
  705. package/dist/v1/config/permission.js +7 -7
  706. package/dist/v1/config/plugin.js +3 -3
  707. package/dist/v1/config/provider-options.js +1 -1
  708. package/dist/v1/config/provider.js +4 -4
  709. package/dist/variant.js +93 -93
  710. package/dist/vcs/patch.js +1 -1
  711. package/dist/vcs.js +91 -89
  712. package/dist/websearch.js +78 -78
  713. package/dist/wellknown/plugin.js +76 -76
  714. package/dist/wellknown.js +79 -79
  715. package/dist/workspace/driver.js +5 -5
  716. package/dist/workspace/sql.js +1 -1
  717. package/dist/workspace.js +78 -78
  718. package/dist/worktree/directory.js +2 -2
  719. package/dist/worktree/git.js +10 -10
  720. package/dist/worktree/sql.js +5 -5
  721. package/dist/worktree/strategies.js +89 -89
  722. package/dist/worktree.js +96 -96
  723. package/package.json +10 -11
  724. package/dist/chunks/job-00z3vp5f.js +0 -21
  725. package/dist/chunks/job-21r38tys.js +0 -14
  726. package/dist/chunks/job-23pqda6t.js +0 -84
  727. package/dist/chunks/job-3e147rt9.js +0 -21
  728. package/dist/chunks/job-3v8rp85y.js +0 -252
  729. package/dist/chunks/job-8db6vkjt.js +0 -223
  730. package/dist/chunks/job-8dbeyrdc.js +0 -26
  731. package/dist/chunks/job-ht5y0zrb.js +0 -18
  732. package/dist/chunks/job-jmvgh3qv.js +0 -194
  733. package/dist/chunks/job-tn0aqsam.js +0 -34
  734. package/dist/chunks/job-tvtrv512.js +0 -51
  735. package/dist/chunks/job-yrhqyw5v.js +0 -15
  736. package/dist/chunks/job-z63w68vq.js +0 -46
  737. package/dist/chunks/job-zeh9ct20.js +0 -29
  738. package/dist/filesystem/ignore.js +0 -58
  739. package/dist/id/id.js +0 -14
  740. package/dist/plugin/provider/venice.js +0 -7
  741. package/dist/types/filesystem/ignore.d.ts +0 -2
  742. package/dist/types/id/id.d.ts +0 -19
  743. package/dist/types/plugin/provider/venice.d.ts +0 -1
  744. package/dist/types/util/identifier.d.ts +0 -1
  745. package/dist/types/v1/config/attachment.d.ts +0 -18
  746. package/dist/types/v1/config/config.d.ts +0 -1243
  747. package/dist/types/v1/config/formatter.d.ts +0 -15
  748. package/dist/types/v1/config/layout.d.ts +0 -4
  749. package/dist/types/v1/config/lsp.d.ts +0 -38
  750. package/dist/types/v1/config/server.d.ts +0 -10
  751. package/dist/types/v1/config/skills.d.ts +0 -7
  752. package/dist/types/v1/permission.d.ts +0 -27
  753. package/dist/util/identifier.js +0 -5
  754. package/dist/v1/config/attachment.js +0 -11
  755. package/dist/v1/config/config.js +0 -23
  756. package/dist/v1/config/formatter.js +0 -10
  757. package/dist/v1/config/layout.js +0 -8
  758. package/dist/v1/config/lsp.js +0 -16
  759. package/dist/v1/config/server.js +0 -9
  760. package/dist/v1/config/skills.js +0 -8
  761. package/dist/v1/permission.js +0 -51
  762. /package/dist/chunks/{job-0qkdqm5v.js → generate-0qkdqm5v.js} +0 -0
  763. /package/dist/chunks/{job-0zkw76rk.js → generate-0zkw76rk.js} +0 -0
  764. /package/dist/chunks/{job-17cy0kzp.js → generate-17cy0kzp.js} +0 -0
  765. /package/dist/chunks/{job-1cnp2v09.js → generate-1cnp2v09.js} +0 -0
  766. /package/dist/chunks/{job-1kg9ymc8.js → generate-1kg9ymc8.js} +0 -0
  767. /package/dist/chunks/{job-24dcb14g.js → generate-24dcb14g.js} +0 -0
  768. /package/dist/chunks/{job-2710q6r3.js → generate-2710q6r3.js} +0 -0
  769. /package/dist/chunks/{job-2axfhc9x.js → generate-2axfhc9x.js} +0 -0
  770. /package/dist/chunks/{job-2c3vjs8z.js → generate-2c3vjs8z.js} +0 -0
  771. /package/dist/chunks/{job-34c7v6d4.js → generate-34c7v6d4.js} +0 -0
  772. /package/dist/chunks/{job-359p4xyc.js → generate-359p4xyc.js} +0 -0
  773. /package/dist/chunks/{job-3asan66x.js → generate-3asan66x.js} +0 -0
  774. /package/dist/chunks/{job-3v8g72cx.js → generate-3v8g72cx.js} +0 -0
  775. /package/dist/chunks/{job-3w5fmr99.js → generate-3w5fmr99.js} +0 -0
  776. /package/dist/chunks/{job-3wcehsnq.js → generate-3wcehsnq.js} +0 -0
  777. /package/dist/chunks/{job-43n2bw4t.js → generate-43n2bw4t.js} +0 -0
  778. /package/dist/chunks/{job-4knz6hnm.js → generate-4knz6hnm.js} +0 -0
  779. /package/dist/chunks/{job-4vcrnpx2.js → generate-4vcrnpx2.js} +0 -0
  780. /package/dist/chunks/{job-4y7fprxs.js → generate-4y7fprxs.js} +0 -0
  781. /package/dist/chunks/{job-53557ph1.js → generate-53557ph1.js} +0 -0
  782. /package/dist/chunks/{job-550bvhaj.js → generate-550bvhaj.js} +0 -0
  783. /package/dist/chunks/{job-6prwharc.js → generate-6prwharc.js} +0 -0
  784. /package/dist/chunks/{job-7akdwqpd.js → generate-7akdwqpd.js} +0 -0
  785. /package/dist/chunks/{job-7m9af43g.js → generate-7m9af43g.js} +0 -0
  786. /package/dist/chunks/{job-822emrt2.js → generate-822emrt2.js} +0 -0
  787. /package/dist/chunks/{job-88xbtdfr.js → generate-88xbtdfr.js} +0 -0
  788. /package/dist/chunks/{job-8n3pysct.js → generate-8n3pysct.js} +0 -0
  789. /package/dist/chunks/{job-8wj87zfr.js → generate-8wj87zfr.js} +0 -0
  790. /package/dist/chunks/{job-9a4afbnw.js → generate-9a4afbnw.js} +0 -0
  791. /package/dist/chunks/{job-9rqn6x4v.js → generate-9rqn6x4v.js} +0 -0
  792. /package/dist/chunks/{job-a6k6eb26.js → generate-a6k6eb26.js} +0 -0
  793. /package/dist/chunks/{job-af5trqkr.js → generate-af5trqkr.js} +0 -0
  794. /package/dist/chunks/{job-afrmfg78.js → generate-afrmfg78.js} +0 -0
  795. /package/dist/chunks/{job-aqzs7mqg.js → generate-aqzs7mqg.js} +0 -0
  796. /package/dist/chunks/{job-atq7p7m5.js → generate-atq7p7m5.js} +0 -0
  797. /package/dist/chunks/{job-bkyjaxrp.js → generate-bkyjaxrp.js} +0 -0
  798. /package/dist/chunks/{job-bmr6ed5q.js → generate-bmr6ed5q.js} +0 -0
  799. /package/dist/chunks/{job-cf4snx6d.js → generate-cf4snx6d.js} +0 -0
  800. /package/dist/chunks/{job-cvy3z8tj.js → generate-cvy3z8tj.js} +0 -0
  801. /package/dist/chunks/{job-d9fn303g.js → generate-d9fn303g.js} +0 -0
  802. /package/dist/chunks/{job-d9jj8t3e.js → generate-d9jj8t3e.js} +0 -0
  803. /package/dist/chunks/{job-dajrwvna.js → generate-dajrwvna.js} +0 -0
  804. /package/dist/chunks/{job-dap0rakb.js → generate-dap0rakb.js} +0 -0
  805. /package/dist/chunks/{job-df08tz66.js → generate-df08tz66.js} +0 -0
  806. /package/dist/chunks/{job-dy18nga0.js → generate-dy18nga0.js} +0 -0
  807. /package/dist/chunks/{job-e5kj55wp.js → generate-e5kj55wp.js} +0 -0
  808. /package/dist/chunks/{job-e73j6tqm.js → generate-e73j6tqm.js} +0 -0
  809. /package/dist/chunks/{job-ec1grn59.js → generate-ec1grn59.js} +0 -0
  810. /package/dist/chunks/{job-eh3zwz77.js → generate-eh3zwz77.js} +0 -0
  811. /package/dist/chunks/{job-emrn6kk6.js → generate-emrn6kk6.js} +0 -0
  812. /package/dist/chunks/{job-f0mxakyp.js → generate-f0mxakyp.js} +0 -0
  813. /package/dist/chunks/{job-f6n9ztr4.js → generate-f6n9ztr4.js} +0 -0
  814. /package/dist/chunks/{job-faypxj3z.js → generate-faypxj3z.js} +0 -0
  815. /package/dist/chunks/{job-fd410y7t.js → generate-fd410y7t.js} +0 -0
  816. /package/dist/chunks/{job-fxgpk5d8.js → generate-fxgpk5d8.js} +0 -0
  817. /package/dist/chunks/{job-g4wezp1m.js → generate-g4wezp1m.js} +0 -0
  818. /package/dist/chunks/{job-g86h250q.js → generate-g86h250q.js} +0 -0
  819. /package/dist/chunks/{job-gebd4c9n.js → generate-gebd4c9n.js} +0 -0
  820. /package/dist/chunks/{job-gftt206x.js → generate-gftt206x.js} +0 -0
  821. /package/dist/chunks/{job-hjbc5kem.js → generate-hjbc5kem.js} +0 -0
  822. /package/dist/chunks/{job-hk9envan.js → generate-hk9envan.js} +0 -0
  823. /package/dist/chunks/{job-j2ntwpah.js → generate-j2ntwpah.js} +0 -0
  824. /package/dist/chunks/{job-j5zkgpj8.js → generate-j5zkgpj8.js} +0 -0
  825. /package/dist/chunks/{job-jjkms2e6.js → generate-jjkms2e6.js} +0 -0
  826. /package/dist/chunks/{job-jr7sbwjy.js → generate-jr7sbwjy.js} +0 -0
  827. /package/dist/chunks/{job-jwfs4k6c.js → generate-jwfs4k6c.js} +0 -0
  828. /package/dist/chunks/{job-jzg6c2d5.js → generate-jzg6c2d5.js} +0 -0
  829. /package/dist/chunks/{job-mp448xyj.js → generate-mp448xyj.js} +0 -0
  830. /package/dist/chunks/{job-msx8hqn2.js → generate-msx8hqn2.js} +0 -0
  831. /package/dist/chunks/{job-n05xt0ee.js → generate-n05xt0ee.js} +0 -0
  832. /package/dist/chunks/{job-n3j8tn72.js → generate-n3j8tn72.js} +0 -0
  833. /package/dist/chunks/{job-njntx4h6.js → generate-njntx4h6.js} +0 -0
  834. /package/dist/chunks/{job-q3sfg36h.js → generate-q3sfg36h.js} +0 -0
  835. /package/dist/chunks/{job-q74kybfr.js → generate-q74kybfr.js} +0 -0
  836. /package/dist/chunks/{job-qaymkmh1.js → generate-qaymkmh1.js} +0 -0
  837. /package/dist/chunks/{job-qb87gjwd.js → generate-qb87gjwd.js} +0 -0
  838. /package/dist/chunks/{job-qfa1cgps.js → generate-qfa1cgps.js} +0 -0
  839. /package/dist/chunks/{job-qg3g05ea.js → generate-qg3g05ea.js} +0 -0
  840. /package/dist/chunks/{job-qrg20bc0.js → generate-qrg20bc0.js} +0 -0
  841. /package/dist/chunks/{job-rcb2kzg1.js → generate-rcb2kzg1.js} +0 -0
  842. /package/dist/chunks/{job-sdp7kfr6.js → generate-sdp7kfr6.js} +0 -0
  843. /package/dist/chunks/{job-ssg3fenm.js → generate-ssg3fenm.js} +0 -0
  844. /package/dist/chunks/{job-w803qqfp.js → generate-w803qqfp.js} +0 -0
  845. /package/dist/chunks/{job-wc3fc9cn.js → generate-wc3fc9cn.js} +0 -0
  846. /package/dist/chunks/{job-wer8tq1h.js → generate-wer8tq1h.js} +0 -0
  847. /package/dist/chunks/{job-wtztk69x.js → generate-wtztk69x.js} +0 -0
  848. /package/dist/chunks/{job-x0ckcb58.js → generate-x0ckcb58.js} +0 -0
  849. /package/dist/chunks/{job-x61499pn.js → generate-x61499pn.js} +0 -0
  850. /package/dist/chunks/{job-y44na4kk.js → generate-y44na4kk.js} +0 -0
  851. /package/dist/chunks/{job-y8cydn3q.js → generate-y8cydn3q.js} +0 -0
  852. /package/dist/chunks/{job-y8f7s663.js → generate-y8f7s663.js} +0 -0
  853. /package/dist/chunks/{job-ygaqb7jw.js → generate-ygaqb7jw.js} +0 -0
  854. /package/dist/chunks/{job-ym463w8f.js → generate-ym463w8f.js} +0 -0
  855. /package/dist/chunks/{job-z9919s4g.js → generate-z9919s4g.js} +0 -0
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  Service83,
3
3
  node87
4
- } from "./job-vdqv4tww.js";
4
+ } from "./generate-z8hrkqzq.js";
5
5
  import {
6
6
  __export
7
- } from "./job-9rqn6x4v.js";
7
+ } from "./generate-9rqn6x4v.js";
8
8
 
9
9
  // src/form.ts
10
10
  var exports_form = {};
@@ -12,31 +12,31 @@ __export(exports_form, {
12
12
  AlreadyExistsError: () => AlreadyExistsError2,
13
13
  AlreadySettledError: () => AlreadySettledError2,
14
14
  Answer: () => Answer2,
15
- Event: () => Event19,
15
+ Event: () => Event20,
16
16
  Field: () => Field2,
17
17
  Fields: () => Fields2,
18
18
  Form: () => exports_form,
19
- ID: () => ID14,
20
- Info: () => Info29,
19
+ ID: () => ID16,
20
+ Info: () => Info26,
21
21
  InvalidAnswerError: () => InvalidAnswerError2,
22
22
  InvalidFormError: () => InvalidFormError2,
23
23
  NotFoundError: () => NotFoundError10,
24
24
  Reply: () => Reply3,
25
- Service: () => Service75,
25
+ Service: () => Service79,
26
26
  State: () => State3,
27
27
  When: () => When2,
28
28
  layer: () => layer25,
29
- node: () => node79,
29
+ node: () => node83,
30
30
  validateAnswer: () => validateAnswer2,
31
31
  validateFields: () => validateFields2
32
32
  });
33
33
  import { Form } from "@opencode/schema/form";
34
34
  import { Cache, Context, Deferred, Duration, Effect, Exit, Layer, Option, Schema } from "effect";
35
35
  import { makeLocationNode } from "@opencode/util/effect/app-node";
36
- import { Event as Event19 } from "@opencode/schema/form";
36
+ import { Event as Event20 } from "@opencode/schema/form";
37
37
  var RETENTION = Duration.minutes(10);
38
- var ID14 = Form.ID;
39
- var Info29 = Form.Info;
38
+ var ID16 = Form.ID;
39
+ var Info26 = Form.Info;
40
40
  var Field2 = Form.Field;
41
41
  var Fields2 = Form.Fields;
42
42
  var When2 = Form.When;
@@ -45,7 +45,7 @@ var Answer2 = Form.Answer;
45
45
  var Reply3 = Form.Reply;
46
46
 
47
47
  class NotFoundError10 extends Schema.TaggedError()("Form.NotFoundError", {
48
- id: ID14
48
+ id: ID16
49
49
  }) {
50
50
  get message() {
51
51
  return `Form not found: ${this.id}`;
@@ -53,7 +53,7 @@ class NotFoundError10 extends Schema.TaggedError()("Form.NotFoundError", {
53
53
  }
54
54
 
55
55
  class AlreadySettledError2 extends Schema.TaggedError()("Form.AlreadySettledError", {
56
- id: ID14
56
+ id: ID16
57
57
  }) {
58
58
  get message() {
59
59
  return `Form already settled: ${this.id}`;
@@ -61,7 +61,7 @@ class AlreadySettledError2 extends Schema.TaggedError()("Form.AlreadySettledErro
61
61
  }
62
62
 
63
63
  class AlreadyExistsError2 extends Schema.TaggedError()("Form.AlreadyExistsError", {
64
- id: ID14
64
+ id: ID16
65
65
  }) {
66
66
  get message() {
67
67
  return `Form already exists: ${this.id}`;
@@ -69,7 +69,7 @@ class AlreadyExistsError2 extends Schema.TaggedError()("Form.AlreadyExistsError"
69
69
  }
70
70
 
71
71
  class InvalidAnswerError2 extends Schema.TaggedError()("Form.InvalidAnswerError", {
72
- id: ID14,
72
+ id: ID16,
73
73
  message: Schema.String
74
74
  }) {
75
75
  }
@@ -79,9 +79,9 @@ class InvalidFormError2 extends Schema.TaggedError()("Form.InvalidFormError", {
79
79
  }) {
80
80
  }
81
81
 
82
- class Service75 extends Context.Service()("@opencode/Form") {
82
+ class Service79 extends Context.Service()("@opencode/Form") {
83
83
  }
84
- var layer25 = Layer.effect(Service75, Effect.gen(function* () {
84
+ var layer25 = Layer.effect(Service79, Effect.gen(function* () {
85
85
  const bus = yield* Service83;
86
86
  let closed = false;
87
87
  const forms = yield* Cache.makeWith(() => Effect.die(new Error("Form cache must be used via set/getSuccess, never get")), {
@@ -90,7 +90,7 @@ var layer25 = Layer.effect(Service75, Effect.gen(function* () {
90
90
  });
91
91
  const requireEntry = Effect.fn("Form.requireEntry")((id) => Cache.getSuccess(forms, id).pipe(Effect.flatMap((entry) => Effect.fromOption(entry, () => new NotFoundError10({ id })))));
92
92
  const create = Effect.fn("Form.create")((input) => Effect.uninterruptible(Effect.gen(function* () {
93
- const id = input.id ?? ID14.create();
93
+ const id = input.id ?? ID16.create();
94
94
  const existing = yield* Cache.getSuccess(forms, id);
95
95
  if (Option.isSome(existing))
96
96
  return yield* new AlreadyExistsError2({ id });
@@ -162,9 +162,9 @@ var layer25 = Layer.effect(Service75, Effect.gen(function* () {
162
162
  closed = true;
163
163
  }).pipe(Effect.andThen(Cache.values(forms)), Effect.flatMap((entries) => Effect.forEach(Array.from(entries).filter((entry) => entry.state.status === "pending"), (entry) => cancel(entry.form.id).pipe(Effect.ignore), { discard: true })));
164
164
  yield* Effect.addFinalizer(() => close);
165
- return Service75.of({ create, ask, get, list, state, reply, cancel, close });
165
+ return Service79.of({ create, ask, get, list, state, reply, cancel, close });
166
166
  }));
167
- var node79 = makeLocationNode({ service: Service75, layer: layer25, deps: [node87] });
167
+ var node83 = makeLocationNode({ service: Service79, layer: layer25, deps: [node87] });
168
168
  function validateAnswer2(form, answer) {
169
169
  const fields = new Map(form.map((field) => [field.key, field]));
170
170
  for (const key of Object.keys(answer)) {
@@ -316,4 +316,4 @@ function isDateTime(value) {
316
316
  return !Number.isNaN(new Date(value).getTime());
317
317
  }
318
318
 
319
- export { ID14, Info29, Field2, Fields2, When2, State3, Answer2, Reply3, NotFoundError10, AlreadySettledError2, AlreadyExistsError2, InvalidAnswerError2, InvalidFormError2, Service75, layer25, node79, validateAnswer2, validateFields2, exports_form, Event19 };
319
+ export { ID16, Info26, Field2, Fields2, When2, State3, Answer2, Reply3, NotFoundError10, AlreadySettledError2, AlreadyExistsError2, InvalidAnswerError2, InvalidFormError2, Service79, layer25, node83, validateAnswer2, validateFields2, exports_form, Event20 };
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  Service84,
3
3
  node88
4
- } from "./job-vsq07z0a.js";
4
+ } from "./generate-6zp854ra.js";
5
5
  import {
6
6
  EventSequenceTable2,
7
7
  EventTable2
8
- } from "./job-2710q6r3.js";
8
+ } from "./generate-2710q6r3.js";
9
9
  import {
10
10
  makeUnsafe2
11
- } from "./job-y71avatq.js";
11
+ } from "./generate-dpkg50ah.js";
12
12
  import {
13
13
  __export
14
- } from "./job-9rqn6x4v.js";
14
+ } from "./generate-9rqn6x4v.js";
15
15
 
16
16
  // src/bus.ts
17
17
  var exports_bus = {};
@@ -1,30 +1,30 @@
1
1
  import {
2
2
  latest2,
3
- Service51
4
- } from "./job-f09mb087.js";
3
+ Service63
4
+ } from "./generate-t3cgces8.js";
5
5
  import {
6
- Service50
7
- } from "./job-95f1p06x.js";
6
+ Service68
7
+ } from "./generate-jb9mn43j.js";
8
8
  import {
9
9
  observe2
10
- } from "./job-qsdy395h.js";
10
+ } from "./generate-qsdy395h.js";
11
11
  import {
12
12
  __export
13
- } from "./job-9rqn6x4v.js";
13
+ } from "./generate-9rqn6x4v.js";
14
14
 
15
15
  // src/config/plugin/shell.ts
16
16
  var exports_shell = {};
17
17
  __export(exports_shell, {
18
18
  ConfigShellPlugin: () => exports_shell,
19
- Plugin: () => Plugin19
19
+ Plugin: () => Plugin35
20
20
  });
21
21
  import { define } from "@opencode/plugin/effect/plugin";
22
22
  import { Effect } from "effect";
23
- var Plugin19 = define({
23
+ var Plugin35 = define({
24
24
  id: "opencode.config.shell",
25
25
  effect: Effect.fn(function* (ctx) {
26
- const config = yield* Service51;
27
- const shell = yield* Service50;
26
+ const config = yield* Service63;
27
+ const shell = yield* Service68;
28
28
  const loaded = yield* observe2(config, ctx.event, shell.reload());
29
29
  yield* shell.transform((editor) => {
30
30
  const configured = latest2(loaded.entries, "shell");
@@ -34,4 +34,4 @@ var Plugin19 = define({
34
34
  })
35
35
  });
36
36
 
37
- export { Plugin19, exports_shell };
37
+ export { Plugin35, exports_shell };
@@ -5,17 +5,17 @@ import {
5
5
  renderInitial2,
6
6
  renderUpdate2,
7
7
  applyHashDelta2
8
- } from "./job-rhjbct0v.js";
8
+ } from "./generate-s8d7rejh.js";
9
9
  import {
10
10
  SessionEvent2
11
- } from "./job-ec1grn59.js";
11
+ } from "./generate-ec1grn59.js";
12
12
  import {
13
13
  InstructionBlobTable2,
14
14
  InstructionStateTable2
15
- } from "./job-z07pqspn.js";
15
+ } from "./generate-9e5bzkjp.js";
16
16
  import {
17
17
  __export
18
- } from "./job-9rqn6x4v.js";
18
+ } from "./generate-9rqn6x4v.js";
19
19
 
20
20
  // src/session/instruction-state.ts
21
21
  var exports_instruction_state = {};
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  PositiveInt2
3
- } from "./job-922hggd3.js";
3
+ } from "./generate-z5v4ffb3.js";
4
4
  import {
5
5
  __export
6
- } from "./job-9rqn6x4v.js";
6
+ } from "./generate-9rqn6x4v.js";
7
7
 
8
8
  // src/v1/config/provider.ts
9
9
  var exports_provider2 = {};
10
10
  __export(exports_provider2, {
11
11
  ConfigProviderV1: () => exports_provider2,
12
- Info: () => Info12,
12
+ Info: () => Info18,
13
13
  Model: () => Model2,
14
14
  ModelStatus: () => ModelStatus2
15
15
  });
@@ -61,7 +61,7 @@ var Model2 = Schema.Struct({
61
61
  disabled: Schema.optional(Schema.Boolean).annotate({ description: "Disable this variant for the model" })
62
62
  }), [Schema.Record(Schema.String, Schema.Any)])).annotate({ description: "Variant-specific configuration" }))
63
63
  });
64
- var Info12 = Schema.Struct({
64
+ var Info18 = Schema.Struct({
65
65
  api: Schema.optional(Schema.String),
66
66
  name: Schema.optional(Schema.String),
67
67
  env: Schema.optional(Schema.mutable(Schema.Array(Schema.String))),
@@ -95,4 +95,4 @@ var Info12 = Schema.Struct({
95
95
  models: Schema.optional(Schema.Record(Schema.String, Model2))
96
96
  }).annotate({ identifier: "ProviderConfig" });
97
97
 
98
- export { ModelStatus2, Model2, Info12, exports_provider2 };
98
+ export { ModelStatus2, Model2, Info18, exports_provider2 };
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  isCheckpoint2,
3
3
  decode2
4
- } from "./job-f29mbr7f.js";
4
+ } from "./generate-h9wp8z5w.js";
5
5
 
6
6
  // src/session/runner/to-llm-message.ts
7
7
  import {
@@ -0,0 +1,381 @@
1
+ import {
2
+ useragent2
3
+ } from "./generate-gk28ph79.js";
4
+ import {
5
+ Service83
6
+ } from "./generate-z8hrkqzq.js";
7
+ import {
8
+ ID15,
9
+ OAuth3,
10
+ Event19,
11
+ Service78
12
+ } from "./generate-spja3q52.js";
13
+ import {
14
+ key2
15
+ } from "./generate-addxnjmp.js";
16
+ import {
17
+ ID14,
18
+ MethodID2
19
+ } from "./generate-r7pm0y1x.js";
20
+ import {
21
+ which2
22
+ } from "./generate-qaymkmh1.js";
23
+ import {
24
+ ID13,
25
+ Service76
26
+ } from "./generate-3edgjjmd.js";
27
+ import {
28
+ ID12
29
+ } from "./generate-94jj38jg.js";
30
+ import {
31
+ iife2
32
+ } from "./generate-1kg9ymc8.js";
33
+ import {
34
+ configuredSettings2
35
+ } from "./generate-0at0q6bk.js";
36
+
37
+ // src/plugin/provider/azure.ts
38
+ import { Clock, Effect, FiberHandle, Option, Schema, Semaphore, Stream } from "effect";
39
+ import { HttpClient, HttpClientRequest, HttpClientResponse } from "effect/unstable/http";
40
+ import { ChildProcess } from "effect/unstable/process";
41
+ import { define } from "@opencode/plugin/effect/plugin";
42
+ import { Form } from "@opencode/schema/form";
43
+ import { AppProcess } from "@opencode/util/process";
44
+ var cognitiveScope = "https://cognitiveservices.azure.com/.default";
45
+ var foundryScope = "https://ai.azure.com/.default";
46
+ var managementScope = "https://management.azure.com/.default";
47
+ var methodID = MethodID2.make("azure-cli");
48
+ var resourcePattern = /^[a-zA-Z0-9][a-zA-Z0-9-]*$/;
49
+ var decodeJSON = Schema.decodeUnknownEffect(Schema.fromJsonString(Schema.Unknown));
50
+ var decodeToken = Schema.decodeUnknownEffect(Schema.Struct({
51
+ accessToken: Schema.NonEmptyString,
52
+ expires_on: Schema.optional(Schema.Number),
53
+ expiresOn: Schema.optional(Schema.NonEmptyString)
54
+ }));
55
+ var ResourceDeployments = Schema.Struct({ data: Schema.Array(Schema.Unknown) });
56
+ var decodeResourceDeployment = Schema.decodeUnknownOption(Schema.Struct({ id: Schema.NonEmptyString, model: Schema.NonEmptyString, status: Schema.String }));
57
+ var ManagementDeployments = Schema.Struct({
58
+ value: Schema.Array(Schema.Unknown),
59
+ nextLink: Schema.optional(Schema.NonEmptyString)
60
+ });
61
+ var decodeManagementDeployment = Schema.decodeUnknownOption(Schema.Struct({
62
+ name: Schema.NonEmptyString,
63
+ properties: Schema.Struct({
64
+ model: Schema.Struct({ name: Schema.NonEmptyString }),
65
+ provisioningState: Schema.String
66
+ })
67
+ }));
68
+ var ResourceQuery = Schema.Struct({ query: Schema.String });
69
+ var Resources = Schema.Struct({ data: Schema.Array(Schema.Struct({ id: Schema.NonEmptyString })) });
70
+ function make8(endpoints = {
71
+ resource: (name) => `https://${name}.openai.azure.com/openai`,
72
+ management: "https://management.azure.com"
73
+ }) {
74
+ return define({
75
+ id: "opencode.provider.azure",
76
+ effect: Effect.fn(function* (ctx) {
77
+ const configured = yield* configuredSettings2(ID13.azure);
78
+ const processes = yield* AppProcess.Service;
79
+ const bus = yield* Service83;
80
+ const credentials = yield* Service78;
81
+ const providers = yield* Service76;
82
+ const http = HttpClient.filterStatusOk(yield* HttpClient.HttpClient);
83
+ const tokens = new Map;
84
+ const resourceIDs = new Map;
85
+ const loading = Semaphore.makeUnsafe(1);
86
+ const discovery = yield* FiberHandle.make();
87
+ const loaded = {};
88
+ const command = (args) => processes.run(ChildProcess.make("az", args, { extendEnv: true, stdin: "ignore" }), { timeout: "10 seconds" }).pipe(Effect.flatMap(AppProcess.requireSuccess), Effect.flatMap((result) => decodeJSON(result.stdout.toString("utf8"))));
89
+ const token = Effect.fn("AzurePlugin.token")(function* (scope) {
90
+ const now = yield* Clock.currentTimeMillis;
91
+ const cached = tokens.get(scope);
92
+ if (cached && cached.expires - now > 5 * 60000)
93
+ return cached;
94
+ const result = yield* command(["account", "get-access-token", "--scope", scope, "--output", "json"]).pipe(Effect.flatMap(decodeToken));
95
+ const expires = result.expires_on !== undefined ? result.expires_on * 1000 : Date.parse(result.expiresOn ?? "");
96
+ if (!Number.isFinite(expires))
97
+ return yield* Effect.fail(new Error("Azure CLI returned an invalid token expiration"));
98
+ const refreshed = { access: result.accessToken, expires };
99
+ tokens.set(scope, refreshed);
100
+ return refreshed;
101
+ });
102
+ const management = (request) => token(managementScope).pipe(Effect.flatMap((current) => http.execute(request.pipe(HttpClientRequest.bearerToken(current.access), HttpClientRequest.acceptJson, HttpClientRequest.setHeader("User-Agent", useragent2(ctx.app))))));
103
+ const available = Boolean(which2("az"));
104
+ const form = () => iife2(() => {
105
+ if (resolveResourceName(configured) || typeof configured?.baseURL === "string")
106
+ return;
107
+ return Form.Fields.make([
108
+ {
109
+ type: "string",
110
+ key: "resourceName",
111
+ title: "Enter Azure Resource Name",
112
+ placeholder: "e.g. my-models",
113
+ required: true
114
+ }
115
+ ]);
116
+ });
117
+ yield* ctx.integration.transform((editor) => {
118
+ editor.method.update({
119
+ integrationID: ID13.azure,
120
+ method: { type: "key", label: "API key", form: form() }
121
+ });
122
+ if (!available)
123
+ return;
124
+ editor.method.update({
125
+ integrationID: ID13.azure,
126
+ method: {
127
+ id: methodID,
128
+ type: "oauth",
129
+ label: "Microsoft Entra ID (Azure CLI)",
130
+ form: form()
131
+ },
132
+ authorize: (answer) => Effect.succeed({
133
+ mode: "auto",
134
+ url: "",
135
+ instructions: "Sign in with `az login` before continuing.",
136
+ callback: Effect.gen(function* () {
137
+ const resourceName = (typeof answer.resourceName === "string" ? answer.resourceName.trim() : "") || resolveResourceName(configured);
138
+ if (!resourceName)
139
+ return yield* Effect.fail(new Error("Azure resource name is required"));
140
+ const current = yield* token(cognitiveScope);
141
+ return OAuth3.make({
142
+ type: "oauth",
143
+ methodID,
144
+ access: current.access,
145
+ refresh: "azure-cli",
146
+ expires: current.expires,
147
+ metadata: { resourceName }
148
+ });
149
+ })
150
+ }),
151
+ refresh: (credential) => token(cognitiveScope).pipe(Effect.map((current) => OAuth3.make({ ...credential, access: current.access, expires: current.expires })))
152
+ });
153
+ });
154
+ const load = Effect.fn("AzurePlugin.load")(function* () {
155
+ const connection = yield* ctx.integration.connection.active(ID13.azure);
156
+ const stored = connection?.type === "credential" ? yield* credentials.get(ID15.make(connection.id)) : undefined;
157
+ return { connection, resource: credentialResource(stored?.value) };
158
+ });
159
+ const findResource = Effect.fn("AzurePlugin.findResource")(function* (resource) {
160
+ const response = yield* HttpClientRequest.post(`${endpoints.management}/providers/Microsoft.ResourceGraph/resources?api-version=2022-10-01`).pipe(HttpClientRequest.schemaBodyJson(ResourceQuery)({ query: resourceQuery(resource) }), Effect.flatMap(management), Effect.flatMap(HttpClientResponse.schemaBodyJson(Resources)), Effect.timeout("10 seconds"));
161
+ const id = response.data[0]?.id;
162
+ if (!id)
163
+ return yield* Effect.fail(new Error(`Azure resource "${resource}" was not found`));
164
+ return id;
165
+ });
166
+ const managementDeployments = Effect.fn("AzurePlugin.managementDeployments")(function* (resource) {
167
+ const key = resource.toLowerCase();
168
+ const id = resourceIDs.get(key) ?? (yield* findResource(resource));
169
+ resourceIDs.set(key, id);
170
+ const origin = new URL(endpoints.management).origin;
171
+ return yield* Stream.paginate(`${endpoints.management}${id}/deployments?api-version=2024-10-01`, (url) => management(HttpClientRequest.get(url)).pipe(Effect.flatMap(HttpClientResponse.schemaBodyJson(ManagementDeployments)), Effect.timeout("10 seconds"), Effect.flatMap((response) => response.nextLink !== undefined && URL.parse(response.nextLink)?.origin !== origin ? Effect.fail(new Error("Azure returned a deployment page outside the management endpoint")) : Effect.succeed([
172
+ response.value.flatMap((raw) => {
173
+ const item = Option.getOrUndefined(decodeManagementDeployment(raw));
174
+ return item?.properties.provisioningState === "Succeeded" ? [{ name: item.name, model: item.properties.model.name }] : [];
175
+ }),
176
+ Option.fromNullishOr(response.nextLink)
177
+ ])))).pipe(Stream.runCollect, Effect.tapError(() => Effect.sync(() => resourceIDs.delete(key))));
178
+ });
179
+ const resourceDeployments = Effect.fn("AzurePlugin.resourceDeployments")(function* (url, credential) {
180
+ return yield* http.execute(HttpClientRequest.get(url).pipe(HttpClientRequest.acceptJson, HttpClientRequest.setHeader("User-Agent", useragent2(ctx.app)), credential.type === "key" ? HttpClientRequest.setHeader("api-key", credential.key) : HttpClientRequest.bearerToken(credential.access))).pipe(Effect.flatMap(HttpClientResponse.schemaBodyJson(ResourceDeployments)), Effect.timeout("10 seconds"), Effect.map((response) => response.data.flatMap((raw) => {
181
+ const item = Option.getOrUndefined(decodeResourceDeployment(raw));
182
+ return item?.status === "succeeded" ? [{ name: item.id, model: item.model }] : [];
183
+ })));
184
+ });
185
+ const deployments = (url, resource, credential) => credential.type === "oauth" ? managementDeployments(resource).pipe(Effect.catch(() => resourceDeployments(url, credential))) : resourceDeployments(url, credential);
186
+ const rebind = () => loading.withPermit(Effect.gen(function* () {
187
+ const current = yield* load();
188
+ if (key2(current.connection) === key2(loaded.connection) && current.resource === loaded.resource)
189
+ return;
190
+ Object.assign(loaded, current, { url: undefined, deployments: undefined });
191
+ yield* ctx.provider.reload();
192
+ }));
193
+ const discover = Effect.fn("AzurePlugin.discover")(function* () {
194
+ const connection = loaded.connection;
195
+ const settings = (yield* providers.get(ID13.azure))?.settings;
196
+ const name = loaded.resource ?? resolveResourceName(settings);
197
+ const url = connection && name !== undefined && resourcePattern.test(name) && typeof settings?.baseURL !== "string" ? `${endpoints.resource(name)}/deployments?api-version=2022-12-01` : undefined;
198
+ if (loaded.connection !== connection)
199
+ return;
200
+ if (loaded.url !== url) {
201
+ loaded.url = url;
202
+ if (loaded.deployments) {
203
+ loaded.deployments = undefined;
204
+ yield* ctx.model.reload();
205
+ }
206
+ }
207
+ if (!connection || !name || !url)
208
+ return;
209
+ const credential = yield* ctx.integration.connection.resolve(connection).pipe(Effect.orElseSucceed(() => {
210
+ return;
211
+ }));
212
+ if (!credential || credential.type === "oauth" && credential.methodID !== methodID)
213
+ return;
214
+ const found = yield* deployments(url, name, credential).pipe(Effect.map((list) => list.toSorted((a, b) => a.name.localeCompare(b.name))), Effect.catch((cause) => Effect.logWarning("failed to sync Azure deployments", { cause }).pipe(Effect.as(undefined))));
215
+ if (!found)
216
+ return;
217
+ if (loaded.connection !== connection || key2(connection) !== key2(yield* ctx.integration.connection.active(ID13.azure)))
218
+ return;
219
+ if (JSON.stringify(found) === JSON.stringify(loaded.deployments))
220
+ return;
221
+ const catalog = new Map(Array.from((yield* providers.snapshot()).records.get(ID13.azure)?.models.keys() ?? [], (id) => [
222
+ id.toLowerCase(),
223
+ id
224
+ ]));
225
+ const unmatched = found.filter((deployment) => !catalogModel(catalog, deployment));
226
+ if (unmatched.length > 0)
227
+ yield* Effect.logWarning("Azure deployments of models outside the catalog need explicit configuration", {
228
+ deployments: unmatched.map((deployment) => deployment.name)
229
+ });
230
+ loaded.deployments = found;
231
+ yield* ctx.model.reload();
232
+ });
233
+ const refresh = () => rebind().pipe(Effect.andThen(FiberHandle.run(discovery, discover())));
234
+ const resourceFor = (provider) => provider.id === ID13.azure ? loaded.resource ?? resolveResourceName(provider.settings) : resolveResourceName(provider.settings, loaded.resource);
235
+ Object.assign(loaded, yield* load());
236
+ yield* ctx.provider.transform((evt) => {
237
+ for (const item of evt.list()) {
238
+ if (item.provider.id !== ID13.azure && !item.provider.package.startsWith("@opencode/ai/providers/azure/"))
239
+ continue;
240
+ const resourceName = resourceFor(item.provider);
241
+ const websocket = responsesWebSocketCapable(item.provider);
242
+ if (!resourceName && !websocket)
243
+ continue;
244
+ evt.update(item.provider.id, (provider) => {
245
+ provider.settings = {
246
+ ...provider.settings,
247
+ ...resourceName === undefined ? {} : { resourceName },
248
+ ...websocket ? { transport: provider.settings?.transport ?? "websocket" } : {},
249
+ ...resourceName !== undefined && typeof provider.settings?.baseURL === "string" ? { baseURL: expandResourceName(provider.settings.baseURL, resourceName) } : {}
250
+ };
251
+ });
252
+ }
253
+ const item = evt.get(ID13.azure);
254
+ if (!item)
255
+ return;
256
+ evt.add({
257
+ info: item.provider,
258
+ models: Array.from(item.models.values()),
259
+ sourceConnection: loaded.connection
260
+ });
261
+ });
262
+ yield* ctx.model.transform((models) => {
263
+ for (const item of models.provider.list()) {
264
+ if (item.provider.id !== ID13.azure && !item.provider.package.startsWith("@opencode/ai/providers/azure/"))
265
+ continue;
266
+ const resourceName = resourceFor(item.provider);
267
+ for (const model of models.list(item.provider.id)) {
268
+ models.update(item.provider.id, model.id, (draft) => {
269
+ if (resourceName && typeof draft.settings?.baseURL === "string")
270
+ draft.settings.baseURL = expandResourceName(draft.settings.baseURL, resolveResourceName(draft.settings, resourceName) ?? resourceName);
271
+ });
272
+ }
273
+ }
274
+ if (!loaded.deployments)
275
+ return;
276
+ const catalog = models.list(ID13.azure);
277
+ const deployed = deployedModels(loaded.deployments, catalog);
278
+ for (const model of catalog) {
279
+ if (!deployed.has(model.id))
280
+ models.remove(ID13.azure, model.id);
281
+ }
282
+ for (const [id, model] of deployed) {
283
+ models.update(ID13.azure, id, (draft) => Object.assign(draft, model));
284
+ }
285
+ });
286
+ yield* bus.subscribe(Event19.Switched).pipe(Stream.filter((event) => event.data.integrationID === ID14.make("azure")), Stream.runForEach(() => refresh()), Effect.forkScoped({ startImmediately: true }));
287
+ yield* refresh().pipe(Effect.forkScoped);
288
+ const bearer = Effect.fn("AzurePlugin.bearer")(function* (url) {
289
+ const connection = yield* ctx.integration.connection.active(ID13.azure);
290
+ const credential = connection ? yield* ctx.integration.connection.resolve(connection).pipe(Effect.orElseSucceed(() => {
291
+ return;
292
+ })) : undefined;
293
+ if (credential?.type !== "oauth" || credential.methodID !== methodID)
294
+ return;
295
+ const target = new URL(url);
296
+ const scope = target.hostname.endsWith(".services.ai.azure.com") && !target.pathname.startsWith("/models") ? foundryScope : cognitiveScope;
297
+ const current = yield* token(scope).pipe(Effect.orDie);
298
+ return `Bearer ${current.access}`;
299
+ });
300
+ yield* ctx.session.hook("http.request", (evt) => Effect.gen(function* () {
301
+ if (evt.model.providerID !== ID13.azure)
302
+ return;
303
+ const authorization = yield* bearer(evt.request.url);
304
+ if (!authorization)
305
+ return;
306
+ evt.request.headers.delete("api-key");
307
+ evt.request.headers.delete("x-api-key");
308
+ evt.request.headers.set("authorization", authorization);
309
+ evt.request.headers.set("user-agent", useragent2(ctx.app));
310
+ }), { providerID: ID13.azure });
311
+ yield* ctx.session.hook("experimental.ws.handshake", (evt) => Effect.gen(function* () {
312
+ if (evt.model.providerID !== ID13.azure)
313
+ return;
314
+ const authorization = yield* bearer(evt.url);
315
+ if (!authorization)
316
+ return;
317
+ delete evt.headers["api-key"];
318
+ delete evt.headers["x-api-key"];
319
+ evt.headers.authorization = authorization;
320
+ evt.headers["user-agent"] = useragent2(ctx.app);
321
+ }), { providerID: ID13.azure });
322
+ })
323
+ });
324
+ }
325
+ var AzurePlugin2 = make8();
326
+ function resolveResourceName(settings, fallback) {
327
+ const configured = settings?.resourceName;
328
+ if (typeof configured === "string" && configured.trim() !== "")
329
+ return configured;
330
+ return fallback ?? process.env.AZURE_RESOURCE_NAME ?? process.env.AZURE_COGNITIVE_SERVICES_RESOURCE_NAME;
331
+ }
332
+ function expandResourceName(baseURL, resourceName) {
333
+ return baseURL.replaceAll("${AZURE_RESOURCE_NAME}", resourceName).replaceAll("${AZURE_COGNITIVE_SERVICES_RESOURCE_NAME}", resourceName);
334
+ }
335
+ function credentialResource(credential) {
336
+ const resource = credential?.type === "key" ? credential.configuration?.resourceName : credential?.methodID === methodID ? credential.metadata?.resourceName : undefined;
337
+ return typeof resource === "string" && resource.trim() !== "" ? resource : undefined;
338
+ }
339
+ function resourceQuery(resource) {
340
+ return [
341
+ "resources",
342
+ "| where type =~ 'microsoft.cognitiveservices/accounts' and kind in~ ('AIServices', 'OpenAI')",
343
+ "| extend resourceName = tostring(properties.customSubDomainName)",
344
+ `| where resourceName =~ '${resource}'`,
345
+ "| project id",
346
+ "| take 1"
347
+ ].join(" ");
348
+ }
349
+ function deployedModels(deployments, catalog) {
350
+ const models = new Map(catalog.map((model) => [model.id.toLowerCase(), model]));
351
+ return new Map(deployments.flatMap((deployment) => {
352
+ const model = catalogModel(models, deployment);
353
+ if (!model)
354
+ return [];
355
+ const id = ID12.make(deployment.name.toLowerCase());
356
+ const info = {
357
+ ...structuredClone(model),
358
+ id,
359
+ modelID: ID12.make(deployment.name),
360
+ name: id === model.id.toLowerCase() ? model.name : `${model.name} (${deployment.name})`
361
+ };
362
+ return [[id, info]];
363
+ }));
364
+ }
365
+ function catalogModel(models, deployment) {
366
+ return models.get(deployment.model.toLowerCase()) ?? models.get(deployment.name.toLowerCase());
367
+ }
368
+ function responsesWebSocketCapable(provider) {
369
+ if (provider.package !== "@opencode/ai/providers/azure/responses")
370
+ return false;
371
+ const settings = provider.settings;
372
+ if (settings?.useDeploymentBasedUrls === true)
373
+ return false;
374
+ if (settings?.apiVersion !== undefined && settings.apiVersion !== "v1")
375
+ return false;
376
+ if (typeof settings?.baseURL !== "string")
377
+ return true;
378
+ return /^https:\/\/[^/]+\.openai\.azure\.com(?:\/|$)/i.test(settings.baseURL);
379
+ }
380
+
381
+ export { make8, AzurePlugin2 };