@qwen-code/qwen-code 0.23.5-preview.0 → 0.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (480) hide show
  1. package/bundled/qc-helper/docs/features/_meta.ts +1 -0
  2. package/bundled/qc-helper/docs/features/goals.md +4 -2
  3. package/bundled/qc-helper/docs/features/omni-fixed-policies-preset.json +242 -0
  4. package/bundled/qc-helper/docs/features/omni-media-policies.md +443 -0
  5. package/bundled/qc-helper/docs/overview.md +1 -1
  6. package/bundled/qc-helper/docs/quickstart.md +2 -3
  7. package/chunks/MaxSizedBox-I5COUCHZ.js +148 -0
  8. package/chunks/{StandaloneSessionPicker-V635V72I.js → StandaloneSessionPicker-KUGOBVEW.js} +114 -90
  9. package/chunks/acp-subagent-executor-PRPMLKVJ.js +164 -0
  10. package/chunks/{acpAgent-3DPWZTNC.js → acpAgent-EHXZXVUB.js} +269 -194
  11. package/chunks/{agent-KIHGINKN.js → agent-FWPNJI6N.js} +59 -49
  12. package/chunks/agent-headless-M5Z7WIDL.js +104 -0
  13. package/chunks/{anthropicContentGenerator-4FGOM5LK.js → anthropicContentGenerator-FLTEUSIQ.js} +30 -27
  14. package/chunks/{artifact-tool-MUTNH4NI.js → artifact-tool-3MWM6SN2.js} +11 -7
  15. package/chunks/{askUserQuestion-AKIRLVB5.js → askUserQuestion-YFFBB4K3.js} +6 -4
  16. package/chunks/bridge-EWCKRGWY.js +156 -0
  17. package/chunks/{build-5KWQBWEQ.js → build-5OQN7CDU.js} +1 -1
  18. package/chunks/caption-audio-UXXLI3JZ.js +443 -0
  19. package/chunks/caption-image-B7O4TUFP.js +247 -0
  20. package/chunks/{channel-management-service-RRILWSXX.js → channel-management-service-GRJG5R46.js} +1 -1
  21. package/chunks/channel-settings-store-NXZNLT5L.js +158 -0
  22. package/chunks/{channel-worker-group-3DUJFZJR.js → channel-worker-group-SCSKCSBJ.js} +4 -4
  23. package/chunks/{channel-worker-manager-E5UW2VLA.js → channel-worker-manager-AHCZCKON.js} +4 -4
  24. package/chunks/{channel-worker-supervisor-VN33GSEC.js → channel-worker-supervisor-BGUAVITB.js} +3 -3
  25. package/chunks/{chunk-3LLEB5CU.js → chunk-24ZB2JNI.js} +2 -2
  26. package/chunks/{chunk-5NUKK2DT.js → chunk-25FMWESU.js} +47 -8
  27. package/chunks/{chunk-3WWPEFMX.js → chunk-2FQM443D.js} +82 -4
  28. package/chunks/{chunk-VEXUA6DX.js → chunk-2FRZ4ZP2.js} +13 -11
  29. package/chunks/{chunk-WBSJ6VPZ.js → chunk-2GNZTJRK.js} +3 -3
  30. package/chunks/{chunk-YP2K3WOS.js → chunk-2VWXODMY.js} +7 -4
  31. package/chunks/{chunk-L2A5VBDL.js → chunk-2ZCLSPE4.js} +9 -9
  32. package/chunks/{chunk-KEM7MWS7.js → chunk-366JNNY7.js} +6 -4
  33. package/chunks/{chunk-TKF4JINY.js → chunk-3FEGERVL.js} +1 -1
  34. package/chunks/{chunk-TDKUXSJO.js → chunk-3MW6PPA5.js} +1 -1
  35. package/chunks/{chunk-4LIPOIXS.js → chunk-3NHJLWOD.js} +1 -1
  36. package/chunks/{chunk-3UGMLA4V.js → chunk-3V7RNGLC.js} +10 -10
  37. package/chunks/{chunk-XICCGDWF.js → chunk-3WIPATJX.js} +2 -2
  38. package/chunks/chunk-43QUA4MC.js +135 -0
  39. package/chunks/{chunk-Q2SAQTEJ.js → chunk-4B7U3KQP.js} +1 -1
  40. package/chunks/{chunk-SFL6U7U7.js → chunk-4JFRCIMW.js} +2 -2
  41. package/chunks/{chunk-TPY6HW55.js → chunk-4OZY6LN2.js} +12 -6
  42. package/chunks/{chunk-IVFTLUZD.js → chunk-4SZ2636R.js} +3 -3
  43. package/chunks/{chunk-7CLLH5TI.js → chunk-4YS7RMCB.js} +6 -4
  44. package/chunks/{chunk-NQ272MQG.js → chunk-5XK2YELE.js} +7 -5
  45. package/chunks/{chunk-HX4WXX3H.js → chunk-65YADOPT.js} +89 -74
  46. package/chunks/chunk-6C3D7BKK.js +153 -0
  47. package/chunks/{chunk-DC4ZNGH4.js → chunk-6DB6UHY3.js} +3 -3
  48. package/chunks/{chunk-WZWTY7SG.js → chunk-6IW6SX75.js} +6 -6
  49. package/chunks/{chunk-HYHSMTRA.js → chunk-6XRR4RYH.js} +4 -4
  50. package/chunks/{chunk-AXPOOQAW.js → chunk-736AZVPL.js} +2 -2
  51. package/chunks/{chunk-UQGRJTDK.js → chunk-7JWD2EML.js} +3 -3
  52. package/chunks/{chunk-BUQN5LTI.js → chunk-7PQ65Z5F.js} +2 -2
  53. package/chunks/{chunk-43Y26NPF.js → chunk-A5EWSUYT.js} +3 -3
  54. package/chunks/{chunk-VQDWCQOE.js → chunk-ANKISCKU.js} +1 -0
  55. package/chunks/{chunk-NXUZFW3G.js → chunk-AUFTA63J.js} +1 -1
  56. package/chunks/{chunk-4QPVZA5J.js → chunk-AVVSSP4R.js} +3 -3
  57. package/chunks/{chunk-36SDZ2Q4.js → chunk-B3HGO6BB.js} +7 -5
  58. package/chunks/{chunk-6USYH3EU.js → chunk-B3XJFEEH.js} +5 -3
  59. package/chunks/{chunk-GSKX53AN.js → chunk-BA6AXQDA.js} +1 -1
  60. package/chunks/{chunk-FBY32737.js → chunk-BHHR5MEI.js} +4 -4
  61. package/chunks/{chunk-FX6PZBOV.js → chunk-BJ2TJY7V.js} +4 -4
  62. package/chunks/chunk-BKVPLSEI.js +133 -0
  63. package/chunks/chunk-BQMSZSG6.js +21 -0
  64. package/chunks/{chunk-BW2SMO6L.js → chunk-BXAU2UKM.js} +1 -1
  65. package/chunks/{chunk-3LMDSCLU.js → chunk-C4FISGDN.js} +2 -2
  66. package/chunks/{chunk-XFFRI3WM.js → chunk-CA63HYHU.js} +4 -2
  67. package/chunks/{chunk-IXO2OCIP.js → chunk-CKNBSVBC.js} +12 -8
  68. package/chunks/{chunk-347O2YZJ.js → chunk-CNG7ILRW.js} +39 -61
  69. package/chunks/chunk-CQULG2GJ.js +1330 -0
  70. package/chunks/{chunk-VVI7MK3V.js → chunk-CTGMXP4A.js} +9 -7
  71. package/chunks/{chunk-QT6Z2IBF.js → chunk-CYFQLCCG.js} +2 -2
  72. package/chunks/chunk-DBDJRURL.js +42 -0
  73. package/chunks/{chunk-X7AYIXC7.js → chunk-DJLCK66M.js} +5 -3
  74. package/chunks/chunk-DJYHML3Y.js +121 -0
  75. package/chunks/{chunk-MO4XID7S.js → chunk-DNDECZXY.js} +3 -3
  76. package/chunks/{chunk-D7JMO2GP.js → chunk-DNHL4S5B.js} +1 -1
  77. package/chunks/{chunk-WL36KHUQ.js → chunk-DTSG4EHA.js} +11 -9
  78. package/chunks/{chunk-M23GFJ5B.js → chunk-EHMLJKF5.js} +1 -1
  79. package/chunks/{chunk-TIGXX4PA.js → chunk-EKBQJ627.js} +2 -2
  80. package/chunks/{chunk-RSWBT7AZ.js → chunk-ERIBG3BX.js} +35 -551
  81. package/chunks/{chunk-PPJSG2PU.js → chunk-EVZT24AF.js} +6 -142
  82. package/chunks/{chunk-E2VSBAFA.js → chunk-FL2EJUOY.js} +5 -5
  83. package/chunks/{chunk-2C5TR6HN.js → chunk-FSNLTHNG.js} +1 -1
  84. package/chunks/chunk-FTKXJMQV.js +255 -0
  85. package/chunks/{chunk-TRZ22SG5.js → chunk-FXPP7VLM.js} +6 -4
  86. package/chunks/{chunk-CDDP4ONL.js → chunk-G3PBYAGM.js} +60 -134
  87. package/chunks/{chunk-AEWCOE64.js → chunk-GACWUBXV.js} +2 -2
  88. package/chunks/{chunk-OWUAZXXN.js → chunk-GHG4PQY2.js} +3 -3
  89. package/chunks/{chunk-VU3XMZ5I.js → chunk-GHZJQCSZ.js} +3 -3
  90. package/chunks/{chunk-FIJODK52.js → chunk-GJHAV2F7.js} +3 -3
  91. package/chunks/{chunk-36NRLIR6.js → chunk-GQZA7EYC.js} +11 -11
  92. package/chunks/{chunk-4JFLRHNE.js → chunk-GVHYY2RS.js} +1 -1
  93. package/chunks/{chunk-H6L4NEAT.js → chunk-GVMXFXQG.js} +1 -1
  94. package/chunks/{chunk-G45B3INR.js → chunk-GVTAFLWB.js} +2 -2
  95. package/chunks/{chunk-GJKP6XOB.js → chunk-GW5SJ3II.js} +16 -19
  96. package/chunks/{chunk-AQP3H22J.js → chunk-GY7FOHQP.js} +1 -1
  97. package/chunks/chunk-GZ5MEGA3.js +44 -0
  98. package/chunks/{chunk-FCPJXKDG.js → chunk-HA6DKD44.js} +9 -9
  99. package/chunks/{chunk-FEDFZBGR.js → chunk-HR4OWLKI.js} +3 -3
  100. package/chunks/{chunk-CXY6BICQ.js → chunk-HWKWZSZY.js} +162 -109
  101. package/chunks/{chunk-K4XMAIRX.js → chunk-I3NKMMHS.js} +12 -12
  102. package/chunks/{chunk-QMENOK5T.js → chunk-IH4TNUVS.js} +9 -7
  103. package/chunks/{chunk-FASYATAZ.js → chunk-IHUOMYBO.js} +1 -1
  104. package/chunks/{chunk-IZ2U57NY.js → chunk-IITTKFWM.js} +4 -2
  105. package/chunks/{chunk-M22WLKLI.js → chunk-IQGEZOGN.js} +7 -7
  106. package/chunks/chunk-IVPSLX4P.js +578 -0
  107. package/chunks/{chunk-BTICBRPL.js → chunk-IWMYX5LB.js} +3 -3
  108. package/chunks/{chunk-V4JJAVHQ.js → chunk-JCIDHFSB.js} +2 -2
  109. package/chunks/{chunk-PF7GAP6K.js → chunk-JENFAGVX.js} +65 -54
  110. package/chunks/{chunk-LO2UWNO5.js → chunk-JFEWKEKG.js} +3 -3
  111. package/chunks/{chunk-BHG3H6OZ.js → chunk-JJVDKHQU.js} +1 -1
  112. package/chunks/chunk-JYGESWZM.js +149 -0
  113. package/chunks/{chunk-KVC7HZWK.js → chunk-JYTJ5FCM.js} +1 -1
  114. package/chunks/{chunk-KVQ3QL4K.js → chunk-KCL6OMCX.js} +3 -3
  115. package/chunks/{chunk-3HTUE6ZR.js → chunk-KCRV4F3G.js} +4 -4
  116. package/chunks/{chunk-3WILPKTJ.js → chunk-KKPIFWTZ.js} +11 -6
  117. package/chunks/{chunk-CXONOVBN.js → chunk-KS6F6LZQ.js} +8 -6
  118. package/chunks/chunk-KSEKRQJO.js +253 -0
  119. package/chunks/{chunk-P42KMMU6.js → chunk-KWTLCPYY.js} +19 -6
  120. package/chunks/{chunk-U4AASWUQ.js → chunk-L4GF4IK2.js} +3 -3
  121. package/chunks/{chunk-5FK4MSHB.js → chunk-LADOQIYQ.js} +6 -4
  122. package/chunks/{chunk-DJXSOEFB.js → chunk-LAE6RY3L.js} +1 -1
  123. package/chunks/{chunk-CQPM66MG.js → chunk-LG475XAV.js} +4 -4
  124. package/chunks/{chunk-3BZI5GDP.js → chunk-M5YIHMXP.js} +6 -4
  125. package/chunks/{chunk-6WXVEDT2.js → chunk-MC2RYJMU.js} +5 -3
  126. package/chunks/chunk-MNU36NGH.js +233 -0
  127. package/chunks/{chunk-M4U2LTD2.js → chunk-MS4SXNJ6.js} +1 -1
  128. package/chunks/{chunk-ZFHKUQZ4.js → chunk-NEVUE35Z.js} +5 -5
  129. package/chunks/{chunk-DRAX5YAI.js → chunk-NFC4WTY2.js} +6 -4
  130. package/chunks/{chunk-SOLRBF7L.js → chunk-NSKNTJHU.js} +10 -10
  131. package/chunks/{chunk-B5TJK7B3.js → chunk-NZRX5WYI.js} +1 -1
  132. package/chunks/{chunk-YM6KUQ2S.js → chunk-O4A2B6V2.js} +3 -3
  133. package/chunks/{chunk-DX6JTDMR.js → chunk-OB57Y2WH.js} +1 -1
  134. package/chunks/{chunk-INN5ORKX.js → chunk-OLFTIODD.js} +1 -1
  135. package/chunks/chunk-PF3RVYRK.js +108 -0
  136. package/chunks/{chunk-WSJI6ODG.js → chunk-PGMF3LSO.js} +29 -27
  137. package/chunks/{chunk-OALXNGUA.js → chunk-PJ3GAHED.js} +10 -10
  138. package/chunks/{chunk-XWJFDJZK.js → chunk-PJSZXERN.js} +1 -1
  139. package/chunks/{chunk-GSAOVDTH.js → chunk-POMFSBEC.js} +4 -4
  140. package/chunks/{chunk-EWNKP4V4.js → chunk-PPVM7YLS.js} +1 -1
  141. package/chunks/{chunk-WK6DEH3Q.js → chunk-PQQV3OBW.js} +6 -4
  142. package/chunks/{chunk-BHVF3R6B.js → chunk-PZT2654P.js} +4 -4
  143. package/chunks/{chunk-ZSTCM3MX.js → chunk-Q5N5NEVT.js} +1 -1
  144. package/chunks/{chunk-KFFCDLKV.js → chunk-QE36VXWP.js} +1 -1
  145. package/chunks/{chunk-V545KI73.js → chunk-QPTE6BKL.js} +1 -1
  146. package/chunks/{chunk-5VQR2DD7.js → chunk-QQPRTJOM.js} +5 -3
  147. package/chunks/{chunk-QIPLWW6Q.js → chunk-QU7T5PKF.js} +1 -1
  148. package/chunks/{chunk-Y2KJC55Y.js → chunk-QYT7J3UM.js} +4 -4
  149. package/chunks/{chunk-SFHX5G2S.js → chunk-R34ALEH5.js} +14 -14
  150. package/chunks/{chunk-TXTCM3TC.js → chunk-R4DAJXOV.js} +18 -14
  151. package/chunks/{chunk-2GP6BQ2J.js → chunk-RA6PKQVM.js} +2 -2
  152. package/chunks/{chunk-HXUI5D4H.js → chunk-RDN5ITXF.js} +1 -1
  153. package/chunks/{chunk-G6UUOCUT.js → chunk-RMI3DKMV.js} +1 -1
  154. package/chunks/chunk-RSFNJ6UU.js +1252 -0
  155. package/chunks/{chunk-EDIDYZBT.js → chunk-RVT5L74D.js} +1 -1
  156. package/chunks/{chunk-GI7SLDOI.js → chunk-RXP5FVC4.js} +6 -6
  157. package/chunks/chunk-S34QJ6IR.js +290 -0
  158. package/chunks/chunk-S5BHLTHK.js +190 -0
  159. package/chunks/{chunk-2XRE4KE4.js → chunk-S7BE3FMA.js} +1 -1
  160. package/chunks/{chunk-7O5PYQ3M.js → chunk-SBP43AO6.js} +1 -1
  161. package/chunks/chunk-SLHYLVRW.js +1377 -0
  162. package/chunks/{chunk-HNFKYKHH.js → chunk-SMAAYU3F.js} +16 -16
  163. package/chunks/{chunk-KAYC5FBN.js → chunk-SNPYTKXI.js} +825 -234
  164. package/chunks/{chunk-IKBEIDOH.js → chunk-SOZJODVX.js} +13 -13
  165. package/chunks/{chunk-Y4NNIGYO.js → chunk-SSFOFDNL.js} +1 -1
  166. package/chunks/{chunk-WNQIJTOP.js → chunk-SSGVTJ2W.js} +243 -17
  167. package/chunks/{chunk-NFXXBWSE.js → chunk-SU64336V.js} +2 -2
  168. package/chunks/chunk-TFDCK56Y.js +154 -0
  169. package/chunks/{chunk-JRHKM3YQ.js → chunk-TS4JJ7NN.js} +2 -2
  170. package/chunks/{chunk-C4HBZQNH.js → chunk-U3MTHCJF.js} +1 -1
  171. package/chunks/{chunk-AUX2FL5T.js → chunk-UBQVV7MX.js} +625 -6
  172. package/chunks/{chunk-B6RMK4ED.js → chunk-UHBYCY7U.js} +9 -7
  173. package/chunks/{chunk-Y53DG2HA.js → chunk-UIWUFHRJ.js} +1 -1
  174. package/chunks/chunk-UQRDQCWF.js +102 -0
  175. package/chunks/{chunk-NKTMUPHJ.js → chunk-UVMU7DDP.js} +5 -3
  176. package/chunks/chunk-UXEI7POA.js +273 -0
  177. package/chunks/chunk-V2XJJTAB.js +228 -0
  178. package/chunks/chunk-VDNCKE2O.js +24 -0
  179. package/chunks/{chunk-YQQ2U7AS.js → chunk-VISF4MEY.js} +1 -1
  180. package/chunks/{chunk-RRI764F7.js → chunk-VPFKSRAB.js} +13 -11
  181. package/chunks/chunk-VPGRGNNH.js +578 -0
  182. package/chunks/{chunk-SYMXYRM5.js → chunk-W7JWIIRC.js} +1 -1
  183. package/chunks/{chunk-AZCTY64Z.js → chunk-WEUQIY3Q.js} +1 -1
  184. package/chunks/{chunk-SSWTA7CH.js → chunk-WIKUMTAB.js} +12 -12
  185. package/chunks/chunk-WL2CTQGT.js +1625 -0
  186. package/chunks/chunk-WL2V7PTE.js +78 -0
  187. package/chunks/{chunk-Q54O3EIA.js → chunk-WSZ6VS24.js} +45 -30
  188. package/chunks/{chunk-UZSB57EV.js → chunk-WX4W3FCV.js} +5 -5
  189. package/chunks/{chunk-OSG23MR3.js → chunk-X3T5IOX6.js} +2 -2
  190. package/chunks/{chunk-EIBECN2J.js → chunk-XGHVF5DC.js} +5 -5
  191. package/chunks/{chunk-D3KVGQUV.js → chunk-XJ52OCCN.js} +4 -4
  192. package/chunks/{chunk-YZXSDPOQ.js → chunk-XMAIUTED.js} +84 -40
  193. package/chunks/{chunk-QGEISOJ2.js → chunk-XQBZZVJA.js} +3 -3
  194. package/chunks/{chunk-OZEV3R3S.js → chunk-XYAB5R6E.js} +3 -3
  195. package/chunks/chunk-XZA32HII.js +19 -0
  196. package/chunks/{chunk-4FLUQWJ4.js → chunk-Y3Q5OK4D.js} +1 -1
  197. package/chunks/chunk-YDERQ7ZV.js +248 -0
  198. package/chunks/{chunk-AKRSSKUT.js → chunk-YFHX6MOF.js} +10 -10
  199. package/chunks/{chunk-ZMYKNKET.js → chunk-YPJZDZMP.js} +3 -3
  200. package/chunks/{chunk-3XBUCOWS.js → chunk-YSD6IY6F.js} +2 -2
  201. package/chunks/{chunk-CH2YDT6X.js → chunk-YVYK3JYU.js} +5 -3
  202. package/chunks/{chunk-YL3UJML3.js → chunk-YWDVNBGE.js} +4 -4
  203. package/chunks/{chunk-C3T6HPNM.js → chunk-ZGADNVME.js} +5 -5
  204. package/chunks/{chunk-M3JGHRMQ.js → chunk-ZJ7KIWG5.js} +1 -1
  205. package/chunks/{chunk-QHSOINX6.js → chunk-ZJBYZN5D.js} +2 -2
  206. package/chunks/{chunk-SYROIHU7.js → chunk-ZRQGTRHA.js} +4 -2
  207. package/chunks/{chunk-NCPFOLM2.js → chunk-ZTBP4SFC.js} +78 -18
  208. package/chunks/{chunk-ZAFYHRVY.js → chunk-ZYDMQCQP.js} +4 -274
  209. package/chunks/clip-audio-SH4L7AEY.js +255 -0
  210. package/chunks/clip-image-BQRPECIS.js +239 -0
  211. package/chunks/clip-video-JIRMV5IH.js +277 -0
  212. package/chunks/{codex-subagent-executor-AEAIQZDC.js → codex-subagent-executor-Y5ILNWG6.js} +92 -68
  213. package/chunks/config-3X4AXU45.js +21 -0
  214. package/chunks/config-T5RO4NJV.js +17 -0
  215. package/chunks/config-utils-3YNEDKT4.js +151 -0
  216. package/chunks/contextCommand-7JVXVYN4.js +144 -0
  217. package/chunks/convert-image-D52K2FFB.js +231 -0
  218. package/chunks/{core-runtime-ZI4RTOJQ.js → core-runtime-6IZNPJUN.js} +92 -67
  219. package/chunks/{create-sub-session-BBWFQARJ.js → create-sub-session-5XHUO2PW.js} +90 -66
  220. package/chunks/{create-sub-session-MSGNIM37.js → create-sub-session-6EDEANCD.js} +7 -5
  221. package/chunks/{cron-create-U2JJ5CCF.js → cron-create-GS7ORRO6.js} +8 -5
  222. package/chunks/{cron-delete-7DM4LJWD.js → cron-delete-3GGDNNXD.js} +8 -5
  223. package/chunks/{cron-list-VCUSZK2Y.js → cron-list-EX27DW4H.js} +8 -5
  224. package/chunks/{daemon-git-worktree-guard-KECEMV6A.js → daemon-git-worktree-guard-BULXRIDA.js} +90 -66
  225. package/chunks/daemon-status-provider-VSVXVY4O.js +155 -0
  226. package/chunks/daemon-trust-policy-WVSDS2WT.js +150 -0
  227. package/chunks/{daemon-trust-policy-monitor-546N5ZVL.js → daemon-trust-policy-monitor-HXQ2GLTX.js} +95 -71
  228. package/chunks/deferred-core-runtime-EXI7LXLE.js +153 -0
  229. package/chunks/{display-image-QTHALY6N.js → display-image-FTWDRBOP.js} +10 -7
  230. package/chunks/{dist-BNW423XT.js → dist-CXDHIHN4.js} +5 -0
  231. package/chunks/downsample-audio-LPDWX6GF.js +217 -0
  232. package/chunks/downsample-image-A5JEYIV5.js +249 -0
  233. package/chunks/downscale-video-4W5BX5KO.js +249 -0
  234. package/chunks/{earlyInputCapture-BXP7V2P3.js → earlyInputCapture-UJ3KFVZQ.js} +3 -2
  235. package/chunks/{edit-CMSQB7NP.js → edit-JJ34NKRC.js} +68 -56
  236. package/chunks/{en-56QLKXS2.js → en-FCK6MBTI.js} +16 -0
  237. package/chunks/{enter-worktree-DA6A4XC5.js → enter-worktree-QK7DR5EF.js} +12 -9
  238. package/chunks/{enterPlanMode-UDPMNESD.js → enterPlanMode-H6FBPVLB.js} +62 -51
  239. package/chunks/environment-7DMLANWW.js +167 -0
  240. package/chunks/errors-OH3DYEDL.js +151 -0
  241. package/chunks/{exec-RPKEY6HP.js → exec-7CFNHYCV.js} +31 -9
  242. package/chunks/{exit-worktree-4H6Z2VQI.js → exit-worktree-62COYIHF.js} +14 -10
  243. package/chunks/exitPlanMode-5YR5VWXS.js +102 -0
  244. package/chunks/extract-audio-GSSZQV6G.js +229 -0
  245. package/chunks/extract-keyframes-Q6DRMQAJ.js +621 -0
  246. package/chunks/{fast-path-F2CYDDZ4.js → fast-path-4DS2GR5O.js} +5 -5
  247. package/chunks/ffmpeg-N4LIIVNR.js +21 -0
  248. package/chunks/{glob-Z2JMJKKN.js → glob-GFID3F3R.js} +63 -51
  249. package/chunks/{goal-tools-HXVVLGCV.js → goal-tools-2OB5WPNH.js} +59 -49
  250. package/chunks/{grep-H2I33VAO.js → grep-JB5DGQ3B.js} +13 -9
  251. package/chunks/handleAutoUpdate-5OQL4YBU.js +147 -0
  252. package/chunks/i18n-TV5G7SXO.js +164 -0
  253. package/chunks/{image-gen-HIAZCB5T.js → image-gen-LX3C4V3R.js} +16 -11
  254. package/chunks/initializer-R2EI4UJ6.js +151 -0
  255. package/chunks/installationInfo-HYOWC3BN.js +145 -0
  256. package/chunks/{keychain-token-storage-NQ5XWIPX.js → keychain-token-storage-ZZNRE6D4.js} +3 -2
  257. package/chunks/list-ORJQQUNR.js +154 -0
  258. package/chunks/{list-agents-EWDCEPIW.js → list-agents-HS6HH4DJ.js} +10 -7
  259. package/chunks/{llm-LSUBOJAR.js → llm-YKBQVN7S.js} +159 -134
  260. package/chunks/{llm-content-generator-MLIONRXE.js → llm-content-generator-QJBXJRKT.js} +11 -9
  261. package/chunks/loadedSettingsAdapter-4FQH6Y3D.js +148 -0
  262. package/chunks/{loggingContentGenerator-TUPEXFMM.js → loggingContentGenerator-DEOANG3F.js} +74 -63
  263. package/chunks/{loop-wakeup-ZBVRI6VH.js → loop-wakeup-4B7OY3TV.js} +9 -6
  264. package/chunks/{ls-6ZB3BEIR.js → ls-EZ5PSWU2.js} +8 -5
  265. package/chunks/{lsp-M54FQARP.js → lsp-DYFFHKB3.js} +6 -3
  266. package/chunks/{managed-npm-update-WEA5XMFZ.js → managed-npm-update-36U25ZEZ.js} +91 -67
  267. package/chunks/mcp-ZI7LXLAQ.js +148 -0
  268. package/chunks/memory-side-query-DRV7FXK4.js +221 -0
  269. package/chunks/model-call-collection-RX7C24YP.js +171 -0
  270. package/chunks/model-configuration-3JIO6IRV.js +161 -0
  271. package/chunks/modelConfigUtils-2BJQI2S4.js +140 -0
  272. package/chunks/{monitor-CI7YE7MT.js → monitor-LXQRI2IF.js} +63 -51
  273. package/chunks/nonInteractiveCli-HRXVUV2H.js +235 -0
  274. package/chunks/nonInteractiveToolExecutor-QPAIKNPL.js +101 -0
  275. package/chunks/{notebook-edit-3WCVRNGL.js → notebook-edit-5CM3VYNK.js} +63 -52
  276. package/chunks/ocr-image-Q4HYJ3U7.js +252 -0
  277. package/chunks/omni-A5XLPNSH.js +147 -0
  278. package/chunks/{openaiContentGenerator-OGILGUZE.js → openaiContentGenerator-O5G3QCHX.js} +36 -31
  279. package/chunks/{openaiResponsesContentGenerator-NXOXUPFM.js → openaiResponsesContentGenerator-W2V7AYVE.js} +12 -10
  280. package/chunks/pidfile-MI5FGYF5.js +151 -0
  281. package/chunks/{processUtils-O4II3RYH.js → processUtils-EWKUPVJH.js} +2 -2
  282. package/chunks/prompt-terminal-ledger-5HEXZMWT.js +143 -0
  283. package/chunks/{qwenContentGenerator-I4LRYADV.js → qwenContentGenerator-HHNDIW2Q.js} +70 -60
  284. package/chunks/{qwenOAuth2-3J66TOT5.js → qwenOAuth2-GD3UIYUP.js} +9 -8
  285. package/chunks/reactive-degrade-KWCJUHXH.js +375 -0
  286. package/chunks/read-file-ZQKBXJSH.js +37 -0
  287. package/chunks/{read-mcp-resource-LPSWXVOD.js → read-mcp-resource-INJIV3UC.js} +8 -4
  288. package/chunks/recall-media-memory-tool-PEE2BWRY.js +198 -0
  289. package/chunks/{record-artifact-L3CFJOMA.js → record-artifact-KKW3AIMJ.js} +6 -4
  290. package/chunks/record-source-2VSQINX6.js +24 -0
  291. package/chunks/{report-findings-LY5HQY4K.js → report-findings-OZSLWYAS.js} +7 -5
  292. package/chunks/{request-shutdown-53SNYGVR.js → request-shutdown-3RUGTWRR.js} +12 -9
  293. package/chunks/resumeHistoryUtils-5V3KISJ6.js +156 -0
  294. package/chunks/ripGrep-F5MM4HGA.js +43 -0
  295. package/chunks/{run-qwen-serve-ZVEKGS7Y.js → run-qwen-serve-3K3D5MSR.js} +70 -70
  296. package/chunks/{runtime-SJCRYNPA.js → runtime-FAWN3GQH.js} +98 -74
  297. package/chunks/sandbox-BPRE7KYF.js +170 -0
  298. package/chunks/sandboxConfig-V3OHETXW.js +138 -0
  299. package/chunks/scheduled-tasks-LB2PINB3.js +167 -0
  300. package/chunks/scheduler-NHAWKARI.js +160 -0
  301. package/chunks/{sdk-exporters-http-DR4G663K.js → sdk-exporters-http-SWXTEEVT.js} +3 -2
  302. package/chunks/{sdk-impl-SJR26MQF.js → sdk-impl-FK4JY6LX.js} +5 -4
  303. package/chunks/{send-message-DN76MXDX.js → send-message-TLF36UW2.js} +16 -13
  304. package/chunks/serve-UQL5X5K7.js +156 -0
  305. package/chunks/{server-UHMKPCAZ.js → server-3HUUEDUC.js} +286 -261
  306. package/chunks/{session-ZLUK7E4P.js → session-XODWSTJ3.js} +151 -127
  307. package/chunks/session-attachments-root-BENUIMZM.js +141 -0
  308. package/chunks/{session-pr-refresh-3OMTQWCZ.js → session-pr-refresh-CSRULMTI.js} +95 -71
  309. package/chunks/{settings-P4DHIIUP.js → settings-42FFX5TK.js} +94 -70
  310. package/chunks/{shell-IMFUVQQ5.js → shell-NLNU2TPF.js} +59 -49
  311. package/chunks/{skill-NB5RJGZW.js → skill-KIRNNJMK.js} +22 -17
  312. package/chunks/skill-settings-MPHPE43F.js +164 -0
  313. package/chunks/spawnChannel-TXNLXP2R.js +152 -0
  314. package/chunks/standalone-update-XAC364AM.js +156 -0
  315. package/chunks/{start-opentui-ui-JKAIWGF7.js → start-opentui-ui-3OLDXRMX.js} +223 -189
  316. package/chunks/{startInteractiveUI-YRPOT6GH.js → startInteractiveUI-UB2HRTV7.js} +339 -295
  317. package/chunks/storage-VZECDJNX.js +17 -0
  318. package/chunks/{syntheticOutput-EX5L5GYI.js → syntheticOutput-SSXJ2NEY.js} +5 -3
  319. package/chunks/task-create-EEMYF6LY.js +30 -0
  320. package/chunks/{task-list-ZLJSMRFA.js → task-list-GA5GOR74.js} +9 -6
  321. package/chunks/{task-stop-MD7P6QGK.js → task-stop-3MXTDL7H.js} +6 -3
  322. package/chunks/{task-update-3LSYQDRW.js → task-update-JSBHKL4L.js} +16 -13
  323. package/chunks/{team-create-2XTBYRJF.js → team-create-VES6TOBA.js} +62 -51
  324. package/chunks/{team-delete-RIDINW6I.js → team-delete-V2CROTI6.js} +9 -6
  325. package/chunks/{team-plan-approval-CFNWW7ZQ.js → team-plan-approval-ZMCHBBUM.js} +61 -50
  326. package/chunks/terminal-image-renderer-73NDY7OJ.js +156 -0
  327. package/chunks/theme-manager-YG3L7BV6.js +140 -0
  328. package/chunks/{todoWrite-XSTG2VT5.js → todoWrite-CMBHPR66.js} +8 -5
  329. package/chunks/tool-result-media-V3LNDB5Q.js +45 -0
  330. package/chunks/{tool-search-ZHTJU2MV.js → tool-search-7XR7RHMB.js} +43 -21
  331. package/chunks/total-session-admission-QUZYGACG.js +151 -0
  332. package/chunks/transcribe-audio-AJQZPNEV.js +30 -0
  333. package/chunks/trustedFolders-QRII2BL7.js +160 -0
  334. package/chunks/understand-video-segments-5TMRDQUB.js +438 -0
  335. package/chunks/{update-relaunch-LI7GRP36.js → update-relaunch-735DXN5P.js} +5 -5
  336. package/chunks/updateCheck-FXXOM4YS.js +156 -0
  337. package/chunks/upload-cache-5YULQVZZ.js +17 -0
  338. package/chunks/upload-config-CKDIXTPK.js +25 -0
  339. package/chunks/useAutoAcceptIndicator-KXXTKOGD.js +158 -0
  340. package/chunks/{validateNonInterActiveAuth-YFPCYYNL.js → validateNonInterActiveAuth-DXCBDHIX.js} +143 -119
  341. package/chunks/{version-4MTL4JVU.js → version-76T4NBMQ.js} +1 -1
  342. package/chunks/{web-fetch-O6RG6ISB.js → web-fetch-UIDZX5RN.js} +27 -20
  343. package/chunks/{web-search-JHAXVEMD.js → web-search-VETWDOUJ.js} +14 -11
  344. package/chunks/{web-shell-static-FFWCUUZS.js → web-shell-static-XSCCMXKQ.js} +3 -3
  345. package/chunks/{workflow-O7L6VDYU.js → workflow-MHYBJHPP.js} +63 -52
  346. package/chunks/workspace-providers-status-WFBT3LS5.js +154 -0
  347. package/chunks/{workspace-registration-store-7G4E7YPY.js → workspace-registration-store-M3WKKBJQ.js} +1 -1
  348. package/chunks/workspace-registry-FIUB7MGD.js +160 -0
  349. package/chunks/workspace-runtime-coordinator-5Z7M36W7.js +163 -0
  350. package/chunks/workspace-service-TP4VRTZF.js +165 -0
  351. package/chunks/workspace-skills-status-CILWVQHU.js +151 -0
  352. package/chunks/{workspace-trust-reconciler-XEBW5FUL.js → workspace-trust-reconciler-2OPSTQNS.js} +98 -74
  353. package/chunks/write-file-N7NBKIYD.js +107 -0
  354. package/chunks/{zh-TW-S3YTQ4DS.js → zh-TW-SRB5QSER.js} +16 -0
  355. package/chunks/{zh-F76MZTL3.js → zh-UBQIFP4A.js} +16 -0
  356. package/chunks/{zoom-image-RDPRTP4B.js → zoom-image-3GHVMYEW.js} +18 -13
  357. package/cli.js +14 -14
  358. package/export-transcript-document.js +3 -3
  359. package/locales/en.js +18 -0
  360. package/locales/zh-TW.js +17 -0
  361. package/locales/zh.js +17 -0
  362. package/package.json +3 -3
  363. package/web-shell/assets/{abnfDiagram-VCTEODGH-RxykUDmi.js → abnfDiagram-VCTEODGH-vfbwxn7H.js} +1 -1
  364. package/web-shell/assets/{arc-CZpgGCJC.js → arc-BT0KMrP5.js} +1 -1
  365. package/web-shell/assets/{architectureDiagram-5GKGNRK7-BHSMzNDT.js → architectureDiagram-5GKGNRK7-B3TlGgP4.js} +1 -1
  366. package/web-shell/assets/{blockDiagram-NRAW4CY4-Bn4mF9SZ.js → blockDiagram-NRAW4CY4-DnwF5xi-.js} +1 -1
  367. package/web-shell/assets/{c4Diagram-UCG6FXSJ-CBM-Bj6t.js → c4Diagram-UCG6FXSJ-8qvMMfFg.js} +1 -1
  368. package/web-shell/assets/channel-CTm0xByY.js +1 -0
  369. package/web-shell/assets/{chunk-2Q5K7J3B-D5Fin58O.js → chunk-2Q5K7J3B-CHM51UX6.js} +1 -1
  370. package/web-shell/assets/{chunk-5VM5RSS4-CY05weF7.js → chunk-5VM5RSS4-BNXaOtyN.js} +1 -1
  371. package/web-shell/assets/{chunk-F27PBJKO-3neZnj5Y.js → chunk-F27PBJKO-DT-vcF3X.js} +1 -1
  372. package/web-shell/assets/{chunk-G27WJ6UU-Cd7EU4BE.js → chunk-G27WJ6UU-BXz8438J.js} +1 -1
  373. package/web-shell/assets/{chunk-JWPE2WC7-DwK1mqFw.js → chunk-JWPE2WC7-CP2ozL3M.js} +1 -1
  374. package/web-shell/assets/{chunk-LCL6LL3I-Sl7vY22C.js → chunk-LCL6LL3I-DTAWXvja.js} +1 -1
  375. package/web-shell/assets/{chunk-POPQ4Y6H-BXNzpbVg.js → chunk-POPQ4Y6H-DZENJpGx.js} +1 -1
  376. package/web-shell/assets/{chunk-SVP7TREG-DjjButcp.js → chunk-SVP7TREG-Dl8djRwv.js} +1 -1
  377. package/web-shell/assets/{chunk-XXDRQBXY-DNOiCjOJ.js → chunk-XXDRQBXY-B3lJllMA.js} +1 -1
  378. package/web-shell/assets/classDiagram-DTDB5LWJ-DhMuMK_E.js +1 -0
  379. package/web-shell/assets/classDiagram-v2-JRS7N3AN-DhMuMK_E.js +1 -0
  380. package/web-shell/assets/{cose-bilkent-JH36ORCC-BUnker7a.js → cose-bilkent-JH36ORCC-DeosJDcB.js} +1 -1
  381. package/web-shell/assets/{cynefin-OW5HDTMX-DcUgdWE5.js → cynefin-OW5HDTMX-BvqcLoHm.js} +1 -1
  382. package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-CvDKsZsL.js → cynefinDiagram-5FMLGOSQ-BYS0pmSs.js} +1 -1
  383. package/web-shell/assets/{dagre-3AP2YEHR-jpCmUbr1.js → dagre-3AP2YEHR-IDScuL-R.js} +1 -1
  384. package/web-shell/assets/{diagram-S7CK7UJ4-DBe_bKE5.js → diagram-S7CK7UJ4-EYNlkkKJ.js} +1 -1
  385. package/web-shell/assets/{diagram-UQ7AKVKN-oXvPpDgs.js → diagram-UQ7AKVKN-D3x9g8Ep.js} +1 -1
  386. package/web-shell/assets/{diagram-VSXAHHWV-BD7-_SGh.js → diagram-VSXAHHWV-C35O1dtR.js} +1 -1
  387. package/web-shell/assets/{diagram-VX7I27RA-DOJL0wub.js → diagram-VX7I27RA-XvMv2aCN.js} +1 -1
  388. package/web-shell/assets/{diagram-Z3DM3KII-DRIiodDD.js → diagram-Z3DM3KII-CeryNvru.js} +1 -1
  389. package/web-shell/assets/{ebnfDiagram-PWID7BFC-Db31Ulmb.js → ebnfDiagram-PWID7BFC-DAmepjvB.js} +1 -1
  390. package/web-shell/assets/{erDiagram-SSCWMZ5O-CVHhwI2_.js → erDiagram-SSCWMZ5O-BkGfBZt_.js} +1 -1
  391. package/web-shell/assets/{flowDiagram-A5DVABFB-DWOFy1FK.js → flowDiagram-A5DVABFB-CzUCgun9.js} +1 -1
  392. package/web-shell/assets/{ganttDiagram-EL5Y4UJY-C0sxQtPd.js → ganttDiagram-EL5Y4UJY-BIFST90r.js} +1 -1
  393. package/web-shell/assets/{gitGraphDiagram-WWUBYQGX-CNituBYC.js → gitGraphDiagram-WWUBYQGX-jVvRSGcu.js} +1 -1
  394. package/web-shell/assets/{index-B15NlwB8.js → index-M1TfOjx2.js} +457 -457
  395. package/web-shell/assets/{index-gm9tLk7h.js → index-krCDFzE6.js} +1 -1
  396. package/web-shell/assets/{infoDiagram-RXCK75RN-CxhJYtIR.js → infoDiagram-RXCK75RN-DsU7vA4Q.js} +1 -1
  397. package/web-shell/assets/{ishikawaDiagram-5VMMS53U-By2mchUy.js → ishikawaDiagram-5VMMS53U-K9mTNAbN.js} +1 -1
  398. package/web-shell/assets/{journeyDiagram-EYS64GPL-CVH-OweI.js → journeyDiagram-EYS64GPL-BKuHLGxv.js} +1 -1
  399. package/web-shell/assets/{kanban-definition-3QL26DDD-Cc9dQXLy.js → kanban-definition-3QL26DDD-CXG9frQ_.js} +1 -1
  400. package/web-shell/assets/{layout-C_60ysHw.js → layout-6G_l7UoH.js} +1 -1
  401. package/web-shell/assets/{linear-BvAVfqwu.js → linear-DYpvB2mh.js} +1 -1
  402. package/web-shell/assets/{mermaid.core-C3CoBKAc.js → mermaid.core-Sj3dJttQ.js} +6 -6
  403. package/web-shell/assets/{mindmap-definition-FBJOCRG2-Cuu8Q8LM.js → mindmap-definition-FBJOCRG2-DNJ1e6qd.js} +1 -1
  404. package/web-shell/assets/{pegDiagram-XKGWAZYB-DmAeyDO2.js → pegDiagram-XKGWAZYB-D-KPklHv.js} +1 -1
  405. package/web-shell/assets/{pieDiagram-E7YTZNPT-B7vbB_xv.js → pieDiagram-E7YTZNPT-BQPm03g2.js} +1 -1
  406. package/web-shell/assets/{quadrantDiagram-AXDQQJYC-BqOBkRR7.js → quadrantDiagram-AXDQQJYC-BubBXSqD.js} +1 -1
  407. package/web-shell/assets/{railroadDiagram-O6MQD6OU-sI06lZIu.js → railroadDiagram-O6MQD6OU-DatD6KIT.js} +1 -1
  408. package/web-shell/assets/{requirementDiagram-EFPCY7ZU-Bg13d10S.js → requirementDiagram-EFPCY7ZU-DiQ6jsZY.js} +1 -1
  409. package/web-shell/assets/{sankeyDiagram-P5KCCOFB-WFOzZHrR.js → sankeyDiagram-P5KCCOFB-C07fyxbH.js} +1 -1
  410. package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-CCdRbA4E.js → sequenceDiagram-WJ2MYXX4-DWXtsWzI.js} +1 -1
  411. package/web-shell/assets/{sizeCapture-X5ZJPWSS-BH5F3bGg.js → sizeCapture-X5ZJPWSS-B0cQ1v0l.js} +1 -1
  412. package/web-shell/assets/{stateDiagram-HBIQ2CUA-NwS2X3QB.js → stateDiagram-HBIQ2CUA-zHgWc00n.js} +1 -1
  413. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-C-3ZC2nf.js +1 -0
  414. package/web-shell/assets/{swimlanes-XN3QIQJK-Bm38pM28.js → swimlanes-XN3QIQJK-Dnrrhu0H.js} +1 -1
  415. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-Ded1L5cw.js +8 -0
  416. package/web-shell/assets/{timeline-definition-24CTP7MA-Do-agLSo.js → timeline-definition-24CTP7MA-8BV7W2Xq.js} +1 -1
  417. package/web-shell/assets/{vennDiagram-4TSXK5OY-aggLfZzl.js → vennDiagram-4TSXK5OY-tmBBtlnj.js} +1 -1
  418. package/web-shell/assets/{wardleyDiagram-VM6X3IG4-D5JR3mXX.js → wardleyDiagram-VM6X3IG4-Cq96T3gb.js} +1 -1
  419. package/web-shell/assets/{xychartDiagram-S5SC5T6Z-DhtLDuXs.js → xychartDiagram-S5SC5T6Z-Dpzx_ZGQ.js} +1 -1
  420. package/web-shell/index.html +1 -1
  421. package/chunks/MaxSizedBox-FCF6M53W.js +0 -124
  422. package/chunks/acp-subagent-executor-TND6W2O5.js +0 -140
  423. package/chunks/agent-headless-EJ4QOUSM.js +0 -94
  424. package/chunks/bridge-MUX5YJZT.js +0 -132
  425. package/chunks/channel-settings-store-7CBIRZER.js +0 -134
  426. package/chunks/config-utils-KX2YS725.js +0 -127
  427. package/chunks/contextCommand-RV6Y5LNJ.js +0 -120
  428. package/chunks/daemon-status-provider-NULJNAEV.js +0 -131
  429. package/chunks/daemon-trust-policy-S4KWGPV3.js +0 -126
  430. package/chunks/deferred-core-runtime-T23ZT443.js +0 -128
  431. package/chunks/environment-TSQJUTPV.js +0 -143
  432. package/chunks/errors-RIVYJS6T.js +0 -127
  433. package/chunks/exitPlanMode-BYBBFN2T.js +0 -92
  434. package/chunks/handleAutoUpdate-FZP45KOR.js +0 -123
  435. package/chunks/i18n-OTB62AKW.js +0 -140
  436. package/chunks/initializer-4JXZEC4B.js +0 -127
  437. package/chunks/installationInfo-2IJV5QKC.js +0 -121
  438. package/chunks/list-KQSQ4A5G.js +0 -130
  439. package/chunks/loadedSettingsAdapter-TZTTNRHI.js +0 -124
  440. package/chunks/mcp-TFDTUPIA.js +0 -124
  441. package/chunks/model-configuration-ZCAKKIOF.js +0 -137
  442. package/chunks/modelConfigUtils-J3ZPW7ZK.js +0 -116
  443. package/chunks/nonInteractiveCli-GPT3TVOK.js +0 -211
  444. package/chunks/pidfile-GBTBIGHF.js +0 -127
  445. package/chunks/prompt-terminal-ledger-ILIXZI3E.js +0 -119
  446. package/chunks/read-file-G4XKW2CS.js +0 -31
  447. package/chunks/record-source-2GSY5JD5.js +0 -22
  448. package/chunks/resumeHistoryUtils-YPJU4XFE.js +0 -132
  449. package/chunks/ripGrep-AAKMALLM.js +0 -39
  450. package/chunks/sandbox-UIXL423Z.js +0 -146
  451. package/chunks/sandboxConfig-CY343YNJ.js +0 -114
  452. package/chunks/scheduled-tasks-5UGBEVNZ.js +0 -143
  453. package/chunks/scheduler-GCZYLZ2P.js +0 -136
  454. package/chunks/serve-2XXQLVK2.js +0 -132
  455. package/chunks/session-attachments-root-DHQM5IEZ.js +0 -117
  456. package/chunks/skill-settings-IXG5CTQO.js +0 -140
  457. package/chunks/spawnChannel-Q3YALTCJ.js +0 -128
  458. package/chunks/standalone-update-H5OJ7MM7.js +0 -132
  459. package/chunks/task-create-75HVPEAH.js +0 -28
  460. package/chunks/terminal-image-renderer-UDPJPGPQ.js +0 -132
  461. package/chunks/theme-manager-SK57EKMO.js +0 -116
  462. package/chunks/total-session-admission-UUZBDQCG.js +0 -127
  463. package/chunks/trustedFolders-4LDBLNTS.js +0 -136
  464. package/chunks/updateCheck-PKSSORPO.js +0 -132
  465. package/chunks/useAutoAcceptIndicator-I32UEQPI.js +0 -134
  466. package/chunks/workspace-providers-status-WRX6CJM4.js +0 -130
  467. package/chunks/workspace-registry-SXIMGT4D.js +0 -136
  468. package/chunks/workspace-runtime-coordinator-7DOEHXYT.js +0 -139
  469. package/chunks/workspace-service-HDXOZMYC.js +0 -141
  470. package/chunks/workspace-skills-status-VN4L37CA.js +0 -127
  471. package/chunks/write-file-LKX4ETIO.js +0 -97
  472. package/web-shell/assets/channel-DFYs_LlK.js +0 -1
  473. package/web-shell/assets/classDiagram-DTDB5LWJ-DnGrKXoM.js +0 -1
  474. package/web-shell/assets/classDiagram-v2-JRS7N3AN-DnGrKXoM.js +0 -1
  475. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-1aU2JZXO.js +0 -1
  476. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-Dp-u6kQG.js +0 -8
  477. package/chunks/{chunk-XAJZFGD2.js → chunk-PXXYQOZO.js} +8 -8
  478. package/chunks/{chunk-WVURIAEE.js → chunk-SVWWF5TZ.js} +3 -3
  479. package/chunks/{dist-G5UMXIGF.js → dist-I6D6XOWV.js} +1 -1
  480. package/chunks/{dist-UXVNLQHG.js → dist-VIKOMAGG.js} +3 -3
@@ -0,0 +1,253 @@
1
+ // Force strict mode and setup for ESM
2
+ "use strict";
3
+ import {
4
+ FatalConfigError
5
+ } from "./chunk-S34QJ6IR.js";
6
+ import {
7
+ init_esbuild_shims
8
+ } from "./chunk-5O2XNYP6.js";
9
+ import {
10
+ __name
11
+ } from "./chunk-J2S4EL5Y.js";
12
+
13
+ // packages/core/src/omni/ffmpeg.ts
14
+ init_esbuild_shims();
15
+ import { execFile } from "node:child_process";
16
+ import path from "node:path";
17
+ function execCommand(command, args, options = {}) {
18
+ return new Promise((resolve) => {
19
+ execFile(
20
+ command,
21
+ args,
22
+ { encoding: "utf8", ...options },
23
+ (error, stdout, stderr) => {
24
+ if (error) {
25
+ resolve({
26
+ stdout: String(stdout ?? ""),
27
+ stderr: String(stderr ?? ""),
28
+ code: typeof error.code === "number" ? error.code : 1
29
+ });
30
+ return;
31
+ }
32
+ resolve({
33
+ stdout: String(stdout ?? ""),
34
+ stderr: String(stderr ?? ""),
35
+ code: 0
36
+ });
37
+ }
38
+ );
39
+ });
40
+ }
41
+ __name(execCommand, "execCommand");
42
+ var availabilityCache = /* @__PURE__ */ new Map();
43
+ async function probeBinary(binary) {
44
+ const cached = availabilityCache.get(binary);
45
+ if (typeof cached === "boolean") return cached;
46
+ if (cached) return cached;
47
+ const probe = (async () => {
48
+ try {
49
+ const { code } = await execCommand(binary, ["-version"], {
50
+ timeout: 5e3
51
+ });
52
+ return code === 0;
53
+ } catch {
54
+ return false;
55
+ }
56
+ })().then(
57
+ (result) => {
58
+ availabilityCache.set(binary, result);
59
+ return result;
60
+ },
61
+ () => {
62
+ availabilityCache.delete(binary);
63
+ return false;
64
+ }
65
+ );
66
+ availabilityCache.set(binary, probe);
67
+ return probe;
68
+ }
69
+ __name(probeBinary, "probeBinary");
70
+ async function isFfmpegAvailable() {
71
+ return probeBinary("ffmpeg");
72
+ }
73
+ __name(isFfmpegAvailable, "isFfmpegAvailable");
74
+ async function isFfprobeAvailable() {
75
+ return probeBinary("ffprobe");
76
+ }
77
+ __name(isFfprobeAvailable, "isFfprobeAvailable");
78
+ function resetFfmpegCachesForTests() {
79
+ availabilityCache.clear();
80
+ }
81
+ __name(resetFfmpegCachesForTests, "resetFfmpegCachesForTests");
82
+ async function assertOmniRuntimeDependencies() {
83
+ const [ffmpeg, ffprobe] = await Promise.all([
84
+ isFfmpegAvailable(),
85
+ isFfprobeAvailable()
86
+ ]);
87
+ if (ffmpeg && ffprobe) return;
88
+ const missing = [
89
+ ...ffmpeg ? [] : ["ffmpeg"],
90
+ ...ffprobe ? [] : ["ffprobe"]
91
+ ].join(" and ");
92
+ throw new FatalConfigError(
93
+ `Omni multimodal support is enabled (omni.enabled / QWEN_CODE_ENABLE_OMNI=1) but ${missing} was not found on PATH. Install ffmpeg (e.g. "brew install ffmpeg" on macOS, "apt-get install ffmpeg" on Debian/Ubuntu) or disable omni support.`
94
+ );
95
+ }
96
+ __name(assertOmniRuntimeDependencies, "assertOmniRuntimeDependencies");
97
+ async function runFfmpeg(args, options) {
98
+ const { code, stderr } = await execCommand("ffmpeg", args, {
99
+ // Transcodes are long-running; stderr carries progress lines, so give
100
+ // it more headroom than the probe calls.
101
+ maxBuffer: 16 * 1024 * 1024,
102
+ ...options?.timeoutMs !== void 0 && { timeout: options.timeoutMs },
103
+ ...options?.signal && { signal: options.signal }
104
+ });
105
+ return { code, stderr };
106
+ }
107
+ __name(runFfmpeg, "runFfmpeg");
108
+ function parseFrameRate(raw) {
109
+ if (!raw) return void 0;
110
+ const parts = raw.split("/");
111
+ const num = Number(parts[0]);
112
+ const den = parts.length > 1 ? Number(parts[1]) : 1;
113
+ if (!Number.isFinite(num) || !Number.isFinite(den) || den === 0) {
114
+ return void 0;
115
+ }
116
+ const fps = num / den;
117
+ return Number.isFinite(fps) && fps > 0 ? fps : void 0;
118
+ }
119
+ __name(parseFrameRate, "parseFrameRate");
120
+ function isAnimationCapableImage(formatName, codecName) {
121
+ const tokens = /* @__PURE__ */ new Set([
122
+ ...formatName?.split(",").map((t) => t.trim()) ?? [],
123
+ ...codecName ? [codecName] : []
124
+ ]);
125
+ return ["gif", "webp", "png", "apng"].some((t) => tokens.has(t));
126
+ }
127
+ __name(isAnimationCapableImage, "isAnimationCapableImage");
128
+ async function countImageFrames(filePath, signal) {
129
+ try {
130
+ const { stdout, code } = await execCommand(
131
+ "ffprobe",
132
+ [
133
+ "-v",
134
+ "error",
135
+ "-count_frames",
136
+ "-select_streams",
137
+ "v:0",
138
+ "-show_entries",
139
+ "stream=nb_read_frames",
140
+ "-print_format",
141
+ "json",
142
+ filePath
143
+ ],
144
+ {
145
+ timeout: 15e3,
146
+ maxBuffer: 4 * 1024 * 1024,
147
+ ...signal && { signal }
148
+ }
149
+ );
150
+ if (signal?.aborted || code !== 0) return NaN;
151
+ const parsed = JSON.parse(stdout);
152
+ return Number(parsed.streams?.[0]?.nb_read_frames);
153
+ } catch {
154
+ return NaN;
155
+ }
156
+ }
157
+ __name(countImageFrames, "countImageFrames");
158
+ async function probeMediaMetadata(filePath, modality, signal) {
159
+ const { stdout, code, stderr } = await execCommand(
160
+ "ffprobe",
161
+ [
162
+ "-v",
163
+ "error",
164
+ "-print_format",
165
+ "json",
166
+ "-show_format",
167
+ "-show_streams",
168
+ filePath
169
+ ],
170
+ { timeout: 15e3, maxBuffer: 4 * 1024 * 1024, ...signal && { signal } }
171
+ );
172
+ if (signal?.aborted) {
173
+ throw new Error(`ffprobe aborted for ${path.basename(filePath)}`);
174
+ }
175
+ if (code !== 0) {
176
+ throw new Error(
177
+ `ffprobe failed (exit ${code}) for ${path.basename(filePath)}: ${stderr.slice(0, 300)}`
178
+ );
179
+ }
180
+ let parsed;
181
+ try {
182
+ parsed = JSON.parse(stdout);
183
+ } catch {
184
+ throw new Error(
185
+ `ffprobe produced unparseable output for ${path.basename(filePath)}`
186
+ );
187
+ }
188
+ const videoStream = parsed.streams?.find((s) => s.codec_type === "video");
189
+ const audioStream = parsed.streams?.find((s) => s.codec_type === "audio");
190
+ const durationSeconds = Number(parsed.format?.duration);
191
+ const durationMs = Number.isFinite(durationSeconds) && durationSeconds >= 0 ? Math.round(durationSeconds * 1e3) : void 0;
192
+ const parsePositiveInt = /* @__PURE__ */ __name((raw) => {
193
+ const n = Number(raw);
194
+ return Number.isFinite(n) && n > 0 ? Math.round(n) : void 0;
195
+ }, "parsePositiveInt");
196
+ const bitRateFor = /* @__PURE__ */ __name((stream) => parsePositiveInt(parsed.format?.bit_rate) ?? parsePositiveInt(stream?.bit_rate), "bitRateFor");
197
+ const base = { formatName: parsed.format?.format_name };
198
+ switch (modality) {
199
+ case "image": {
200
+ let nbFrames = Number(videoStream?.nb_frames);
201
+ if (!(Number.isFinite(nbFrames) && nbFrames > 0) && isAnimationCapableImage(
202
+ parsed.format?.format_name,
203
+ videoStream?.codec_name
204
+ )) {
205
+ nbFrames = await countImageFrames(filePath, signal);
206
+ }
207
+ return {
208
+ ...base,
209
+ width: videoStream?.width,
210
+ height: videoStream?.height,
211
+ codec: videoStream?.codec_name,
212
+ ...Number.isFinite(nbFrames) && nbFrames > 0 ? { frameCount: nbFrames } : {}
213
+ };
214
+ }
215
+ case "audio": {
216
+ const channels = audioStream?.channels;
217
+ return {
218
+ ...base,
219
+ durationMs,
220
+ codec: audioStream?.codec_name,
221
+ bitRate: bitRateFor(audioStream),
222
+ sampleRateHz: parsePositiveInt(audioStream?.sample_rate),
223
+ ...typeof channels === "number" && channels > 0 ? { channels } : {}
224
+ };
225
+ }
226
+ case "video":
227
+ default:
228
+ return {
229
+ ...base,
230
+ durationMs,
231
+ width: videoStream?.width,
232
+ height: videoStream?.height,
233
+ frameRate: parseFrameRate(videoStream?.avg_frame_rate) ?? parseFrameRate(videoStream?.r_frame_rate),
234
+ codec: videoStream?.codec_name,
235
+ bitRate: bitRateFor(videoStream)
236
+ };
237
+ }
238
+ }
239
+ __name(probeMediaMetadata, "probeMediaMetadata");
240
+
241
+ export {
242
+ isFfmpegAvailable,
243
+ isFfprobeAvailable,
244
+ resetFfmpegCachesForTests,
245
+ assertOmniRuntimeDependencies,
246
+ runFfmpeg,
247
+ probeMediaMetadata
248
+ };
249
+ /**
250
+ * @license
251
+ * Copyright 2025 Google LLC
252
+ * SPDX-License-Identifier: Apache-2.0
253
+ */
@@ -5,14 +5,14 @@ import {
5
5
  } from "./chunk-MLXTMF7H.js";
6
6
  import {
7
7
  stringifyGenAiJson
8
- } from "./chunk-KFFCDLKV.js";
8
+ } from "./chunk-QE36VXWP.js";
9
9
  import {
10
10
  GOAL_STATE_EVENT_CAUSES,
11
11
  makeGoalStateEvent
12
- } from "./chunk-CDDP4ONL.js";
12
+ } from "./chunk-G3PBYAGM.js";
13
13
  import {
14
14
  atomicWriteJSON
15
- } from "./chunk-XFFRI3WM.js";
15
+ } from "./chunk-CA63HYHU.js";
16
16
  import {
17
17
  DEFAULT_SENSITIVE_SPAN_ATTRIBUTE_MAX_LENGTH,
18
18
  SENSITIVE_SPAN_ATTRIBUTE_MAX_LENGTH_LIMIT,
@@ -20,12 +20,14 @@ import {
20
20
  getMeter,
21
21
  isTelemetrySdkInitialized,
22
22
  isValidSensitiveSpanAttributeMaxLength
23
- } from "./chunk-6USYH3EU.js";
23
+ } from "./chunk-B3XJFEEH.js";
24
24
  import {
25
- FatalConfigError,
26
25
  QWEN_DIR,
27
26
  createDebugLogger
28
- } from "./chunk-ZAFYHRVY.js";
27
+ } from "./chunk-ZYDMQCQP.js";
28
+ import {
29
+ FatalConfigError
30
+ } from "./chunk-S34QJ6IR.js";
29
31
  import {
30
32
  ValueType,
31
33
  diag,
@@ -7854,6 +7856,16 @@ __name(goalPauseReasonForRunBudget, "goalPauseReasonForRunBudget");
7854
7856
 
7855
7857
  // packages/core/src/goals/goal-reducer.ts
7856
7858
  var MAX_BLOCKED_AUDIT_COUNT = 3;
7859
+ function reduceGoalSpend(goal, tokens, now) {
7860
+ if (!Number.isFinite(tokens) || tokens <= 0) return goal;
7861
+ return {
7862
+ ...goal,
7863
+ tokensUsed: goal.tokensUsed + tokens,
7864
+ activeTimeMs: elapsedActiveTime(goal, now),
7865
+ updatedAt: now
7866
+ };
7867
+ }
7868
+ __name(reduceGoalSpend, "reduceGoalSpend");
7857
7869
  var GoalConflictError = class extends Error {
7858
7870
  constructor(current) {
7859
7871
  super("Goal version does not match the current session Goal");
@@ -10412,6 +10424,7 @@ export {
10412
10424
  goalPauseReasonForFailure,
10413
10425
  goalPauseReasonForHeadlessFailure,
10414
10426
  goalPauseReasonForRunBudget,
10427
+ reduceGoalSpend,
10415
10428
  GoalConflictError,
10416
10429
  GoalInvalidTransitionError,
10417
10430
  elapsedActiveTime,
@@ -258,12 +258,12 @@ function ensureBuiltins() {
258
258
  if (!builtinsPromise) {
259
259
  builtinsPromise = (async () => {
260
260
  const labelled = [
261
- { name: "telegram", promise: import("./dist-G5UMXIGF.js") },
261
+ { name: "telegram", promise: import("./dist-I6D6XOWV.js") },
262
262
  { name: "weixin", promise: import("./dist-VA4LREAQ.js") },
263
- { name: "dingtalk", promise: import("./dist-BNW423XT.js") },
263
+ { name: "dingtalk", promise: import("./dist-CXDHIHN4.js") },
264
264
  { name: "dws", promise: import("./dist-4P3ZJYGI.js") },
265
265
  { name: "wecom", promise: import("./dist-XDRTR4QP.js") },
266
- { name: "feishu", promise: import("./dist-UXVNLQHG.js") },
266
+ { name: "feishu", promise: import("./dist-VIKOMAGG.js") },
267
267
  { name: "qqbot", promise: import("./dist-CESMUYGN.js") },
268
268
  { name: "github", promise: import("./dist-DBBOFWSC.js") },
269
269
  { name: "gitlab", promise: import("./dist-7MGRENQ5.js") }
@@ -2,20 +2,22 @@
2
2
  "use strict";
3
3
  import {
4
4
  createTask
5
- } from "./chunk-WK6DEH3Q.js";
5
+ } from "./chunk-PQQV3OBW.js";
6
6
  import {
7
7
  getPlanRequiredTeammatePreApprovalMessage,
8
8
  isPlanRequiredTeammateAwaitingApproval
9
- } from "./chunk-AEWCOE64.js";
9
+ } from "./chunk-GACWUBXV.js";
10
10
  import {
11
11
  resolveActiveTeamName
12
12
  } from "./chunk-S6LOFUVP.js";
13
13
  import {
14
14
  BaseDeclarativeTool,
15
- BaseToolInvocation,
15
+ BaseToolInvocation
16
+ } from "./chunk-VPGRGNNH.js";
17
+ import {
16
18
  ToolDisplayNames,
17
19
  ToolNames
18
- } from "./chunk-RSWBT7AZ.js";
20
+ } from "./chunk-ERIBG3BX.js";
19
21
  import {
20
22
  init_esbuild_shims
21
23
  } from "./chunk-5O2XNYP6.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  createDebugLogger
5
- } from "./chunk-ZAFYHRVY.js";
5
+ } from "./chunk-ZYDMQCQP.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -3,17 +3,17 @@
3
3
  import {
4
4
  getGitVersion,
5
5
  getNpmVersion
6
- } from "./chunk-FX6PZBOV.js";
6
+ } from "./chunk-BJ2TJY7V.js";
7
7
  import {
8
8
  buildEnvStatusFromEnv,
9
9
  snapshotProcessEnv
10
- } from "./chunk-XICCGDWF.js";
10
+ } from "./chunk-3WIPATJX.js";
11
11
  import {
12
12
  mapDomainErrorToErrorKind
13
- } from "./chunk-M23GFJ5B.js";
13
+ } from "./chunk-EHMLJKF5.js";
14
14
  import {
15
15
  canUseRipgrep
16
- } from "./chunk-BTICBRPL.js";
16
+ } from "./chunk-IWMYX5LB.js";
17
17
  import {
18
18
  init_esbuild_shims
19
19
  } from "./chunk-5O2XNYP6.js";
@@ -2,14 +2,16 @@
2
2
  "use strict";
3
3
  import {
4
4
  readRuntimeStatus
5
- } from "./chunk-CXONOVBN.js";
5
+ } from "./chunk-KS6F6LZQ.js";
6
6
  import {
7
7
  atomicWriteJSON
8
- } from "./chunk-XFFRI3WM.js";
8
+ } from "./chunk-CA63HYHU.js";
9
+ import {
10
+ Storage
11
+ } from "./chunk-ZYDMQCQP.js";
9
12
  import {
10
- Storage,
11
13
  isNodeError
12
- } from "./chunk-ZAFYHRVY.js";
14
+ } from "./chunk-S34QJ6IR.js";
13
15
  import {
14
16
  init_esbuild_shims
15
17
  } from "./chunk-5O2XNYP6.js";
@@ -6,13 +6,15 @@ import {
6
6
  import {
7
7
  MAX_CRON_TASK_ROUTING_ID_LENGTH,
8
8
  isValidCronTaskRoutingId
9
- } from "./chunk-3LMDSCLU.js";
9
+ } from "./chunk-C4FISGDN.js";
10
10
  import {
11
11
  BaseDeclarativeTool,
12
- BaseToolInvocation,
12
+ BaseToolInvocation
13
+ } from "./chunk-VPGRGNNH.js";
14
+ import {
13
15
  ToolDisplayNames,
14
16
  ToolNames
15
- } from "./chunk-RSWBT7AZ.js";
17
+ } from "./chunk-ERIBG3BX.js";
16
18
  import {
17
19
  init_esbuild_shims
18
20
  } from "./chunk-5O2XNYP6.js";
@@ -0,0 +1,233 @@
1
+ // Force strict mode and setup for ESM
2
+ "use strict";
3
+ import {
4
+ isPlainRecord
5
+ } from "./chunk-BQMSZSG6.js";
6
+ import {
7
+ init_esbuild_shims
8
+ } from "./chunk-5O2XNYP6.js";
9
+ import {
10
+ __name
11
+ } from "./chunk-J2S4EL5Y.js";
12
+
13
+ // packages/core/src/services/media-memory/registry.ts
14
+ init_esbuild_shims();
15
+ import { randomBytes } from "node:crypto";
16
+ var MediaResourceRegistry = class {
17
+ static {
18
+ __name(this, "MediaResourceRegistry");
19
+ }
20
+ byResourceId = /* @__PURE__ */ new Map();
21
+ byVersionId = /* @__PURE__ */ new Map();
22
+ counter = 0;
23
+ /** Bind (or return the existing binding of) one file version. */
24
+ bind(input) {
25
+ const existing = this.byVersionId.get(input.fileVersionId);
26
+ if (existing) {
27
+ this.byVersionId.delete(input.fileVersionId);
28
+ this.byVersionId.set(input.fileVersionId, existing);
29
+ return existing;
30
+ }
31
+ const resourceId = `media-${++this.counter}-${randomBytes(4).toString("hex")}`;
32
+ const binding = { resourceId, ...input };
33
+ this.byResourceId.set(resourceId, binding);
34
+ this.byVersionId.set(input.fileVersionId, binding);
35
+ return binding;
36
+ }
37
+ /** Resolve a model-supplied handle. Undefined = never issued in this
38
+ * session (an unauthorized or fabricated id — callers must reject). */
39
+ resolve(resourceId) {
40
+ return this.byResourceId.get(resourceId);
41
+ }
42
+ /** Look up the binding already issued for a version, if any. */
43
+ resolveVersion(fileVersionId) {
44
+ return this.byVersionId.get(fileVersionId);
45
+ }
46
+ /** Look up a binding by its harness-side locator. Lets collection paths
47
+ * that only hold a resolved `inputPath` (a gated model call, where the
48
+ * gate already turned the handle back into a path) recover the memory
49
+ * identity without re-hashing the file, and lets recall reverse a
50
+ * path-form annotation back to its handle.
51
+ *
52
+ * When the same locator has been bound more than once this session (the
53
+ * same file re-read after its bytes changed, minting a distinct version),
54
+ * the LATEST-DELIVERED binding wins: a path names "the file at this path",
55
+ * and the most recently delivered version is the one the model is
56
+ * currently looking at — including after a revert to previously-seen bytes,
57
+ * because `bind` refreshes a re-delivered version's position. A path cannot
58
+ * name an older version — that ambiguity is the price of showing the path
59
+ * instead of the version-specific handle, and two path annotations for two
60
+ * versions in ONE request collapse to the latest. */
61
+ resolveByFileRef(fileRef) {
62
+ let latest;
63
+ for (const binding of this.byVersionId.values()) {
64
+ if (binding.fileRef === fileRef) latest = binding;
65
+ }
66
+ return latest;
67
+ }
68
+ /** Every locator this session currently has a handle for. GC treats
69
+ * these as roots alongside the memory snapshot: a resource delivered
70
+ * THIS turn may be bound here before its memory commit lands, and the
71
+ * sweep must not win that race. */
72
+ activeFileRefs() {
73
+ const refs = /* @__PURE__ */ new Set();
74
+ for (const binding of this.byVersionId.values()) {
75
+ refs.add(binding.fileRef);
76
+ }
77
+ return [...refs];
78
+ }
79
+ };
80
+ function resolveMediaReference(registry, reference) {
81
+ return registry.resolve(reference) ?? registry.resolveByFileRef(reference);
82
+ }
83
+ __name(resolveMediaReference, "resolveMediaReference");
84
+
85
+ // packages/core/src/omni/policy/model-access.ts
86
+ init_esbuild_shims();
87
+ function resolveMediaPolicyModelAccess(config, toolName) {
88
+ const entry = config.getOmniPolicyToolsSettings?.()?.[toolName];
89
+ const modelAccess = isPlainRecord(entry) && isPlainRecord(entry["modelAccess"]) ? entry["modelAccess"] : void 0;
90
+ return {
91
+ enabled: modelAccess?.enabled === true,
92
+ defaultArguments: isPlainRecord(modelAccess?.defaultArguments) ? modelAccess.defaultArguments : {},
93
+ lockedArguments: isPlainRecord(modelAccess?.lockedArguments) ? modelAccess.lockedArguments : {},
94
+ description: typeof modelAccess?.description === "string" && modelAccess.description !== "" ? modelAccess.description : void 0,
95
+ parameterSchema: isPlainRecord(modelAccess?.parameterSchema) ? modelAccess.parameterSchema : void 0
96
+ };
97
+ }
98
+ __name(resolveMediaPolicyModelAccess, "resolveMediaPolicyModelAccess");
99
+ function projectMediaPolicyToolDeclaration(config, native) {
100
+ const access = resolveMediaPolicyModelAccess(config, native.name);
101
+ const description = access.description ?? native.description;
102
+ const schema = isPlainRecord(native.parametersJsonSchema) ? native.parametersJsonSchema : void 0;
103
+ const nativeProps = schema && isPlainRecord(schema["properties"]) ? schema["properties"] : void 0;
104
+ if (!schema || !nativeProps) {
105
+ return {
106
+ name: native.name,
107
+ description,
108
+ parametersJsonSchema: native.parametersJsonSchema
109
+ };
110
+ }
111
+ const lockedKeys = /* @__PURE__ */ new Set([
112
+ ...Object.keys(access.lockedArguments),
113
+ ...native.operatorOnlyParams ?? []
114
+ ]);
115
+ const narrowProps = access.parameterSchema && isPlainRecord(access.parameterSchema["properties"]) ? access.parameterSchema["properties"] : void 0;
116
+ const properties = {};
117
+ for (const [key, value] of Object.entries(nativeProps)) {
118
+ if (lockedKeys.has(key)) continue;
119
+ if (narrowProps && !(key in narrowProps)) continue;
120
+ const override = narrowProps?.[key];
121
+ properties[key] = isPlainRecord(override) && isPlainRecord(value) ? { ...value, ...override } : value;
122
+ }
123
+ const required = Array.isArray(schema["required"]) ? schema["required"].filter(
124
+ (key) => typeof key === "string" && key in properties
125
+ ) : void 0;
126
+ return {
127
+ name: native.name,
128
+ description,
129
+ parametersJsonSchema: {
130
+ ...schema,
131
+ properties,
132
+ ...required !== void 0 ? { required } : {}
133
+ }
134
+ };
135
+ }
136
+ __name(projectMediaPolicyToolDeclaration, "projectMediaPolicyToolDeclaration");
137
+ function isMediaPolicyToolHiddenFromModel(config, tool) {
138
+ if (!tool.mediaPolicyDescriptor) return false;
139
+ return !resolveMediaPolicyModelAccess(config, tool.name).enabled;
140
+ }
141
+ __name(isMediaPolicyToolHiddenFromModel, "isMediaPolicyToolHiddenFromModel");
142
+ function evaluateMediaPolicyToolCall(params) {
143
+ const { config, tool } = params;
144
+ let args = params.args;
145
+ const origin = params.executionOrigin ?? { kind: "model" };
146
+ if (origin.kind === "fixed_policy") {
147
+ if (!tool.mediaPolicyDescriptor) {
148
+ return {
149
+ outcome: "reject",
150
+ reason: "execution_denied",
151
+ message: `Tool "${tool.name}" cannot run with a fixed-policy execution origin: it is not a media policy tool.`
152
+ };
153
+ }
154
+ return { outcome: "pass", args };
155
+ }
156
+ if (!tool.mediaPolicyDescriptor) {
157
+ return { outcome: "pass", args };
158
+ }
159
+ const access = resolveMediaPolicyModelAccess(config, tool.name);
160
+ if (!access.enabled) {
161
+ return {
162
+ outcome: "reject",
163
+ reason: "execution_denied",
164
+ message: `Tool "${tool.name}" is an omni media policy tool reserved for fixed-policy orchestration. Direct calls require "omni.processing.policyTools.${tool.name}.modelAccess.enabled": true.`
165
+ };
166
+ }
167
+ if (typeof args["resourceId"] === "string") {
168
+ if (args["inputPath"] !== void 0) {
169
+ return {
170
+ outcome: "reject",
171
+ reason: "invalid_params",
172
+ message: `Invalid parameters for tool "${tool.name}": provide exactly one of "inputPath" or "resourceId", not both.`
173
+ };
174
+ }
175
+ const registry = config.getOmniMediaResourceRegistry?.();
176
+ const binding = registry ? resolveMediaReference(registry, args["resourceId"]) : void 0;
177
+ if (!binding) {
178
+ return {
179
+ outcome: "reject",
180
+ reason: "invalid_params",
181
+ message: `Invalid parameters for tool "${tool.name}": resourceId "${args["resourceId"]}" matches no media delivered this session. Use a handle or the absolute path from a \u3010\u5A92\u4F53\u8D44\u6E90\u3011 annotation or a recall result.`
182
+ };
183
+ }
184
+ const accepted = tool.mediaPolicyDescriptor.inputMediaTypes;
185
+ if (accepted !== void 0 && !accepted.includes(binding.mediaType)) {
186
+ return {
187
+ outcome: "reject",
188
+ reason: "invalid_params",
189
+ message: `Invalid parameters for tool "${tool.name}": resourceId "${args["resourceId"]}" names ${binding.mediaType} media, but this tool accepts ${accepted.join(", ")}. Pass a handle whose media type matches.`
190
+ };
191
+ }
192
+ const { resourceId: _resourceId, ...rest } = args;
193
+ args = { ...rest, inputPath: binding.fileRef };
194
+ }
195
+ const lockedKeys = Object.keys(access.lockedArguments);
196
+ const violations = lockedKeys.filter(
197
+ (key) => Object.prototype.hasOwnProperty.call(args, key)
198
+ );
199
+ if (violations.length > 0) {
200
+ return {
201
+ outcome: "reject",
202
+ reason: "invalid_params",
203
+ message: `Invalid parameters for tool "${tool.name}": ${violations.map((k) => `"${k}"`).join(", ")} ${violations.length === 1 ? "is" : "are"} locked by configuration and must not be provided. Remove ${violations.length === 1 ? "it" : "them"} and retry.`
204
+ };
205
+ }
206
+ const operatorViolations = (tool.mediaPolicyDescriptor.operatorOnlyParams ?? []).filter((key) => Object.prototype.hasOwnProperty.call(args, key));
207
+ if (operatorViolations.length > 0) {
208
+ return {
209
+ outcome: "reject",
210
+ reason: "invalid_params",
211
+ message: `Invalid parameters for tool "${tool.name}": ${operatorViolations.map((k) => `"${k}"`).join(", ")} ${operatorViolations.length === 1 ? "is" : "are"} operator-only (set via omni.processing.policyTools.${tool.name} configuration) and must not be provided by the caller. Remove ${operatorViolations.length === 1 ? "it" : "them"} and retry.`
212
+ };
213
+ }
214
+ return {
215
+ outcome: "pass",
216
+ args: { ...access.defaultArguments, ...args, ...access.lockedArguments }
217
+ };
218
+ }
219
+ __name(evaluateMediaPolicyToolCall, "evaluateMediaPolicyToolCall");
220
+
221
+ export {
222
+ MediaResourceRegistry,
223
+ resolveMediaReference,
224
+ resolveMediaPolicyModelAccess,
225
+ projectMediaPolicyToolDeclaration,
226
+ isMediaPolicyToolHiddenFromModel,
227
+ evaluateMediaPolicyToolCall
228
+ };
229
+ /**
230
+ * @license
231
+ * Copyright 2025 Google LLC
232
+ * SPDX-License-Identifier: Apache-2.0
233
+ */
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  redactProxyCredentials
5
- } from "./chunk-7O5PYQ3M.js";
5
+ } from "./chunk-SBP43AO6.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";