@qwen-code/qwen-code 0.23.5-preview.0 → 0.24.0-nightly.20260916.b8def02aad

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-ODJ2ZO4K.js +148 -0
  8. package/chunks/{StandaloneSessionPicker-V635V72I.js → StandaloneSessionPicker-656SMZ4H.js} +114 -90
  9. package/chunks/acp-subagent-executor-CWS4CDET.js +164 -0
  10. package/chunks/{acpAgent-3DPWZTNC.js → acpAgent-RK2KSVEL.js} +273 -194
  11. package/chunks/{agent-KIHGINKN.js → agent-ZMH75CWL.js} +59 -49
  12. package/chunks/agent-headless-QE53TJVO.js +104 -0
  13. package/chunks/{anthropicContentGenerator-4FGOM5LK.js → anthropicContentGenerator-TYYEFLKU.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-BZHN5742.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-J426RZQR.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-5NUKK2DT.js → chunk-25FMWESU.js} +47 -8
  26. package/chunks/{chunk-WL36KHUQ.js → chunk-2CWJJ454.js} +11 -9
  27. package/chunks/{chunk-3WWPEFMX.js → chunk-2FQM443D.js} +82 -4
  28. package/chunks/{chunk-WBSJ6VPZ.js → chunk-2GNZTJRK.js} +3 -3
  29. package/chunks/chunk-2POYGFZZ.js +102 -0
  30. package/chunks/{chunk-CDDP4ONL.js → chunk-2RI3OGVU.js} +60 -134
  31. package/chunks/{chunk-YQQ2U7AS.js → chunk-3BHSQ4NZ.js} +1 -1
  32. package/chunks/{chunk-AUX2FL5T.js → chunk-3GVQOQXC.js} +625 -6
  33. package/chunks/{chunk-TXTCM3TC.js → chunk-3KANAJAZ.js} +18 -14
  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-SOLRBF7L.js → chunk-3NNETAYE.js} +10 -10
  37. package/chunks/{chunk-NKTMUPHJ.js → chunk-3SROTJFN.js} +5 -3
  38. package/chunks/{chunk-HNFKYKHH.js → chunk-43FJYK5F.js} +16 -16
  39. package/chunks/chunk-43QUA4MC.js +135 -0
  40. package/chunks/{chunk-Q2SAQTEJ.js → chunk-4B7U3KQP.js} +1 -1
  41. package/chunks/{chunk-GJKP6XOB.js → chunk-4EFJT6Q2.js} +16 -19
  42. package/chunks/{chunk-SFL6U7U7.js → chunk-4JFRCIMW.js} +2 -2
  43. package/chunks/{chunk-LO2UWNO5.js → chunk-4JOPMBTY.js} +3 -3
  44. package/chunks/{chunk-IVFTLUZD.js → chunk-4SZ2636R.js} +3 -3
  45. package/chunks/{chunk-7CLLH5TI.js → chunk-4YS7RMCB.js} +6 -4
  46. package/chunks/chunk-6C3D7BKK.js +153 -0
  47. package/chunks/{chunk-CXY6BICQ.js → chunk-6COTLZAO.js} +162 -109
  48. package/chunks/{chunk-DC4ZNGH4.js → chunk-6DB6UHY3.js} +3 -3
  49. package/chunks/{chunk-AQP3H22J.js → chunk-6TURA3O6.js} +1 -1
  50. package/chunks/{chunk-AXPOOQAW.js → chunk-736AZVPL.js} +2 -2
  51. package/chunks/{chunk-IKBEIDOH.js → chunk-7N5FYHCI.js} +13 -13
  52. package/chunks/{chunk-IXO2OCIP.js → chunk-7OHHC73V.js} +12 -8
  53. package/chunks/{chunk-BUQN5LTI.js → chunk-7PQ65Z5F.js} +2 -2
  54. package/chunks/{chunk-V4JJAVHQ.js → chunk-7SJX4EZ7.js} +2 -2
  55. package/chunks/{chunk-FBY32737.js → chunk-7W6S3INY.js} +4 -4
  56. package/chunks/{chunk-YP2K3WOS.js → chunk-A2DAL2S2.js} +7 -4
  57. package/chunks/{chunk-VQDWCQOE.js → chunk-ANKISCKU.js} +1 -0
  58. package/chunks/{chunk-NXUZFW3G.js → chunk-AUFTA63J.js} +1 -1
  59. package/chunks/{chunk-KAYC5FBN.js → chunk-B32X6MSB.js} +848 -254
  60. package/chunks/{chunk-36SDZ2Q4.js → chunk-B3HGO6BB.js} +7 -5
  61. package/chunks/{chunk-6USYH3EU.js → chunk-B3XJFEEH.js} +5 -3
  62. package/chunks/{chunk-GSKX53AN.js → chunk-BA6AXQDA.js} +1 -1
  63. package/chunks/{chunk-PF7GAP6K.js → chunk-BDIOI3QN.js} +65 -54
  64. package/chunks/chunk-BIHPE2VF.js +44 -0
  65. package/chunks/chunk-BKVPLSEI.js +133 -0
  66. package/chunks/chunk-BQMSZSG6.js +21 -0
  67. package/chunks/{chunk-BW2SMO6L.js → chunk-BXAU2UKM.js} +1 -1
  68. package/chunks/{chunk-HYHSMTRA.js → chunk-C2QNGQUQ.js} +4 -4
  69. package/chunks/{chunk-3LMDSCLU.js → chunk-C4FISGDN.js} +2 -2
  70. package/chunks/{chunk-XFFRI3WM.js → chunk-CA63HYHU.js} +4 -2
  71. package/chunks/{chunk-KVQ3QL4K.js → chunk-CICZXUAC.js} +3 -3
  72. package/chunks/{chunk-H6L4NEAT.js → chunk-CJWG3CV2.js} +1 -1
  73. package/chunks/{chunk-BHG3H6OZ.js → chunk-CQ2YILRV.js} +1 -1
  74. package/chunks/{chunk-VVI7MK3V.js → chunk-CTGMXP4A.js} +9 -7
  75. package/chunks/{chunk-QT6Z2IBF.js → chunk-CYFQLCCG.js} +2 -2
  76. package/chunks/{chunk-FIJODK52.js → chunk-D7DTZ5EZ.js} +3 -3
  77. package/chunks/{chunk-X7AYIXC7.js → chunk-DJLCK66M.js} +5 -3
  78. package/chunks/chunk-DJYHML3Y.js +121 -0
  79. package/chunks/chunk-DLOFGU67.js +42 -0
  80. package/chunks/{chunk-MO4XID7S.js → chunk-DNDECZXY.js} +3 -3
  81. package/chunks/{chunk-QIPLWW6Q.js → chunk-E5D56G3Q.js} +1 -1
  82. package/chunks/{chunk-WSJI6ODG.js → chunk-E5V2ZDCC.js} +29 -27
  83. package/chunks/{chunk-NQ272MQG.js → chunk-EHCS4AXA.js} +7 -5
  84. package/chunks/{chunk-TIGXX4PA.js → chunk-EKBQJ627.js} +2 -2
  85. package/chunks/{chunk-RSWBT7AZ.js → chunk-ERIBG3BX.js} +35 -551
  86. package/chunks/{chunk-GI7SLDOI.js → chunk-EVZM6227.js} +6 -6
  87. package/chunks/{chunk-PPJSG2PU.js → chunk-EVZT24AF.js} +6 -142
  88. package/chunks/{chunk-BHVF3R6B.js → chunk-EYZZYP77.js} +4 -4
  89. package/chunks/chunk-FTKXJMQV.js +255 -0
  90. package/chunks/{chunk-TRZ22SG5.js → chunk-FXPP7VLM.js} +6 -4
  91. package/chunks/{chunk-INN5ORKX.js → chunk-FXR3PTGC.js} +1 -1
  92. package/chunks/{chunk-QHSOINX6.js → chunk-FZTJEXGR.js} +2 -2
  93. package/chunks/{chunk-AEWCOE64.js → chunk-GACWUBXV.js} +2 -2
  94. package/chunks/{chunk-OWUAZXXN.js → chunk-GHG4PQY2.js} +3 -3
  95. package/chunks/{chunk-G45B3INR.js → chunk-GVTAFLWB.js} +2 -2
  96. package/chunks/{chunk-UZSB57EV.js → chunk-H235YPQE.js} +5 -5
  97. package/chunks/{chunk-M22WLKLI.js → chunk-HEXMFP3X.js} +7 -7
  98. package/chunks/{chunk-43Y26NPF.js → chunk-HQVJMK7X.js} +3 -3
  99. package/chunks/{chunk-B5TJK7B3.js → chunk-I4YPFEW7.js} +1 -1
  100. package/chunks/{chunk-FX6PZBOV.js → chunk-IISIZ3XH.js} +4 -4
  101. package/chunks/{chunk-IZ2U57NY.js → chunk-IITTKFWM.js} +4 -2
  102. package/chunks/{chunk-347O2YZJ.js → chunk-ILJQYK6B.js} +39 -61
  103. package/chunks/{chunk-YZXSDPOQ.js → chunk-IPCKGOOB.js} +84 -40
  104. package/chunks/{chunk-FEDFZBGR.js → chunk-IRST63MB.js} +3 -3
  105. package/chunks/chunk-IVPSLX4P.js +578 -0
  106. package/chunks/{chunk-BTICBRPL.js → chunk-IWMYX5LB.js} +3 -3
  107. package/chunks/{chunk-2C5TR6HN.js → chunk-J7ZTMOBY.js} +1 -1
  108. package/chunks/{chunk-AKRSSKUT.js → chunk-JLNOXUDP.js} +10 -10
  109. package/chunks/{chunk-EIBECN2J.js → chunk-JNPQQQ6E.js} +5 -5
  110. package/chunks/chunk-JYGESWZM.js +149 -0
  111. package/chunks/{chunk-KVC7HZWK.js → chunk-JYTJ5FCM.js} +1 -1
  112. package/chunks/{chunk-OALXNGUA.js → chunk-K4HB6ZZX.js} +10 -10
  113. package/chunks/{chunk-HX4WXX3H.js → chunk-K5K4JKKP.js} +89 -74
  114. package/chunks/{chunk-QGEISOJ2.js → chunk-KBLR3NWJ.js} +3 -3
  115. package/chunks/{chunk-FCPJXKDG.js → chunk-KHO4FMV7.js} +9 -9
  116. package/chunks/{chunk-3WILPKTJ.js → chunk-KKPIFWTZ.js} +11 -6
  117. package/chunks/chunk-KQIM65BX.js +1625 -0
  118. package/chunks/{chunk-3HTUE6ZR.js → chunk-KS2J6ZWV.js} +4 -4
  119. package/chunks/{chunk-CXONOVBN.js → chunk-KS6F6LZQ.js} +8 -6
  120. package/chunks/chunk-KSEKRQJO.js +253 -0
  121. package/chunks/{chunk-U4AASWUQ.js → chunk-L4GF4IK2.js} +3 -3
  122. package/chunks/{chunk-5FK4MSHB.js → chunk-LADOQIYQ.js} +6 -4
  123. package/chunks/{chunk-DJXSOEFB.js → chunk-LAE6RY3L.js} +1 -1
  124. package/chunks/{chunk-VEXUA6DX.js → chunk-LEHJSAR7.js} +13 -11
  125. package/chunks/{chunk-TKF4JINY.js → chunk-LGXRRUPM.js} +1 -1
  126. package/chunks/{chunk-D3KVGQUV.js → chunk-M24AT3XC.js} +4 -4
  127. package/chunks/{chunk-3BZI5GDP.js → chunk-M5YIHMXP.js} +6 -4
  128. package/chunks/{chunk-6WXVEDT2.js → chunk-MC2RYJMU.js} +5 -3
  129. package/chunks/{chunk-QMENOK5T.js → chunk-MMWRUOGE.js} +9 -7
  130. package/chunks/chunk-MNU36NGH.js +233 -0
  131. package/chunks/{chunk-M4U2LTD2.js → chunk-MS4SXNJ6.js} +1 -1
  132. package/chunks/{chunk-3UGMLA4V.js → chunk-NBIDOEGH.js} +10 -10
  133. package/chunks/{chunk-DRAX5YAI.js → chunk-NFC4WTY2.js} +6 -4
  134. package/chunks/{chunk-YM6KUQ2S.js → chunk-O4A2B6V2.js} +3 -3
  135. package/chunks/{chunk-DX6JTDMR.js → chunk-OB57Y2WH.js} +1 -1
  136. package/chunks/{chunk-SSWTA7CH.js → chunk-OJJGQYA2.js} +12 -12
  137. package/chunks/{chunk-B6RMK4ED.js → chunk-OT52F4LB.js} +9 -7
  138. package/chunks/chunk-PF3RVYRK.js +108 -0
  139. package/chunks/{chunk-XWJFDJZK.js → chunk-PJSZXERN.js} +1 -1
  140. package/chunks/{chunk-XICCGDWF.js → chunk-PLAFPUHS.js} +2 -2
  141. package/chunks/{chunk-GSAOVDTH.js → chunk-POMFSBEC.js} +4 -4
  142. package/chunks/{chunk-EWNKP4V4.js → chunk-PPVM7YLS.js} +1 -1
  143. package/chunks/{chunk-WK6DEH3Q.js → chunk-PQQV3OBW.js} +6 -4
  144. package/chunks/{chunk-E2VSBAFA.js → chunk-Q3K3ZIUA.js} +5 -5
  145. package/chunks/{chunk-ZSTCM3MX.js → chunk-Q5N5NEVT.js} +1 -1
  146. package/chunks/{chunk-KFFCDLKV.js → chunk-QE36VXWP.js} +1 -1
  147. package/chunks/{chunk-ZMYKNKET.js → chunk-QI4DYACQ.js} +3 -3
  148. package/chunks/{chunk-V545KI73.js → chunk-QPTE6BKL.js} +1 -1
  149. package/chunks/{chunk-5VQR2DD7.js → chunk-QQPRTJOM.js} +5 -3
  150. package/chunks/{chunk-HXUI5D4H.js → chunk-QUIPX5KO.js} +1 -1
  151. package/chunks/{chunk-2GP6BQ2J.js → chunk-RA6PKQVM.js} +2 -2
  152. package/chunks/{chunk-G6UUOCUT.js → chunk-RMI3DKMV.js} +1 -1
  153. package/chunks/chunk-RSFNJ6UU.js +1252 -0
  154. package/chunks/{chunk-EDIDYZBT.js → chunk-RVT5L74D.js} +1 -1
  155. package/chunks/{chunk-3LLEB5CU.js → chunk-RXINWZVO.js} +2 -2
  156. package/chunks/chunk-S34QJ6IR.js +290 -0
  157. package/chunks/chunk-S5BHLTHK.js +190 -0
  158. package/chunks/{chunk-2XRE4KE4.js → chunk-S7BE3FMA.js} +1 -1
  159. package/chunks/{chunk-7O5PYQ3M.js → chunk-SBP43AO6.js} +1 -1
  160. package/chunks/{chunk-M23GFJ5B.js → chunk-SFMK2FKS.js} +1 -1
  161. package/chunks/chunk-SLHYLVRW.js +1377 -0
  162. package/chunks/{chunk-Y4NNIGYO.js → chunk-SSFOFDNL.js} +1 -1
  163. package/chunks/{chunk-NFXXBWSE.js → chunk-SU64336V.js} +2 -2
  164. package/chunks/{chunk-4JFLRHNE.js → chunk-TCLL7TLV.js} +1 -1
  165. package/chunks/{chunk-WNQIJTOP.js → chunk-TDXKVETS.js} +243 -17
  166. package/chunks/chunk-TFDCK56Y.js +154 -0
  167. package/chunks/{chunk-4QPVZA5J.js → chunk-THTU6UKH.js} +3 -3
  168. package/chunks/{chunk-K4XMAIRX.js → chunk-TJKC4NSH.js} +12 -12
  169. package/chunks/{chunk-L2A5VBDL.js → chunk-TND5YXCH.js} +9 -9
  170. package/chunks/{chunk-WZWTY7SG.js → chunk-TPULGHGS.js} +6 -6
  171. package/chunks/{chunk-36NRLIR6.js → chunk-TQOUJQC5.js} +11 -11
  172. package/chunks/{chunk-JRHKM3YQ.js → chunk-TS4JJ7NN.js} +2 -2
  173. package/chunks/{chunk-CQPM66MG.js → chunk-TWMHM24K.js} +4 -4
  174. package/chunks/{chunk-C4HBZQNH.js → chunk-U3MTHCJF.js} +1 -1
  175. package/chunks/{chunk-Y53DG2HA.js → chunk-UIWUFHRJ.js} +1 -1
  176. package/chunks/chunk-UXEI7POA.js +273 -0
  177. package/chunks/chunk-UZLAFIZY.js +1330 -0
  178. package/chunks/chunk-V2XJJTAB.js +228 -0
  179. package/chunks/chunk-VDNCKE2O.js +24 -0
  180. package/chunks/chunk-VPGRGNNH.js +578 -0
  181. package/chunks/{chunk-KEM7MWS7.js → chunk-VZQDBPCD.js} +6 -4
  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-FASYATAZ.js → chunk-WKUWZTQQ.js} +1 -1
  185. package/chunks/chunk-WL2V7PTE.js +78 -0
  186. package/chunks/{chunk-TPY6HW55.js → chunk-WVA7RUOL.js} +12 -6
  187. package/chunks/{chunk-OSG23MR3.js → chunk-X3T5IOX6.js} +2 -2
  188. package/chunks/{chunk-D7JMO2GP.js → chunk-XCP5Y2RZ.js} +1 -1
  189. package/chunks/{chunk-VU3XMZ5I.js → chunk-XEVYHNTL.js} +3 -3
  190. package/chunks/{chunk-UQGRJTDK.js → chunk-XWYDOF7F.js} +3 -3
  191. package/chunks/{chunk-OZEV3R3S.js → chunk-XYAB5R6E.js} +3 -3
  192. package/chunks/{chunk-P42KMMU6.js → chunk-XYJNMSMV.js} +19 -6
  193. package/chunks/chunk-XZA32HII.js +19 -0
  194. package/chunks/{chunk-4FLUQWJ4.js → chunk-Y3Q5OK4D.js} +1 -1
  195. package/chunks/{chunk-ZFHKUQZ4.js → chunk-Y45AQRB2.js} +5 -5
  196. package/chunks/{chunk-SFHX5G2S.js → chunk-Y5KOKTSF.js} +14 -14
  197. package/chunks/chunk-YDERQ7ZV.js +248 -0
  198. package/chunks/{chunk-Y2KJC55Y.js → chunk-YGYIGZQC.js} +4 -4
  199. package/chunks/{chunk-3XBUCOWS.js → chunk-YSD6IY6F.js} +2 -2
  200. package/chunks/{chunk-CH2YDT6X.js → chunk-YVYK3JYU.js} +5 -3
  201. package/chunks/{chunk-YL3UJML3.js → chunk-YWDVNBGE.js} +4 -4
  202. package/chunks/{chunk-Q54O3EIA.js → chunk-Z7U5NAH3.js} +45 -30
  203. package/chunks/{chunk-RRI764F7.js → chunk-ZA5CZSKV.js} +13 -11
  204. package/chunks/{chunk-C3T6HPNM.js → chunk-ZGADNVME.js} +5 -5
  205. package/chunks/{chunk-M3JGHRMQ.js → chunk-ZJ7KIWG5.js} +1 -1
  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-AGNPIZYL.js} +92 -68
  213. package/chunks/config-3X4AXU45.js +21 -0
  214. package/chunks/config-T5RO4NJV.js +17 -0
  215. package/chunks/config-utils-76U5HPBP.js +151 -0
  216. package/chunks/contextCommand-CFMZHCTM.js +144 -0
  217. package/chunks/convert-image-D52K2FFB.js +231 -0
  218. package/chunks/{core-runtime-ZI4RTOJQ.js → core-runtime-VHCAZDBR.js} +92 -67
  219. package/chunks/{create-sub-session-MSGNIM37.js → create-sub-session-6EDEANCD.js} +7 -5
  220. package/chunks/{create-sub-session-BBWFQARJ.js → create-sub-session-POV5XE4I.js} +90 -66
  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-Z2GQ6QW6.js} +90 -66
  225. package/chunks/daemon-status-provider-G7BJECSB.js +155 -0
  226. package/chunks/daemon-trust-policy-TD267HHP.js +150 -0
  227. package/chunks/{daemon-trust-policy-monitor-546N5ZVL.js → daemon-trust-policy-monitor-K6QYIN7B.js} +95 -71
  228. package/chunks/deferred-core-runtime-OERC66CC.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-FHINX46M.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-7HVHC2M6.js} +62 -51
  239. package/chunks/environment-ZAJDBJFL.js +167 -0
  240. package/chunks/errors-SPWW3U3R.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-KWDS22DD.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-CXHD7A4P.js} +5 -5
  247. package/chunks/ffmpeg-N4LIIVNR.js +21 -0
  248. package/chunks/{glob-Z2JMJKKN.js → glob-5NAEEBJM.js} +63 -51
  249. package/chunks/{goal-tools-HXVVLGCV.js → goal-tools-MRDETEDG.js} +59 -49
  250. package/chunks/{grep-H2I33VAO.js → grep-JB5DGQ3B.js} +13 -9
  251. package/chunks/handleAutoUpdate-N2T63HMK.js +147 -0
  252. package/chunks/i18n-GQ3PEGDB.js +164 -0
  253. package/chunks/{image-gen-HIAZCB5T.js → image-gen-LX3C4V3R.js} +16 -11
  254. package/chunks/initializer-HYCHOA63.js +151 -0
  255. package/chunks/installationInfo-H67OERL5.js +145 -0
  256. package/chunks/{keychain-token-storage-NQ5XWIPX.js → keychain-token-storage-ZZNRE6D4.js} +3 -2
  257. package/chunks/list-WUDALMI6.js +154 -0
  258. package/chunks/{list-agents-EWDCEPIW.js → list-agents-HS6HH4DJ.js} +10 -7
  259. package/chunks/{llm-LSUBOJAR.js → llm-OTRJ45DB.js} +159 -134
  260. package/chunks/{llm-content-generator-MLIONRXE.js → llm-content-generator-VH7TSU5O.js} +11 -9
  261. package/chunks/loadedSettingsAdapter-MRBBULY4.js +148 -0
  262. package/chunks/{loggingContentGenerator-TUPEXFMM.js → loggingContentGenerator-E24CSJDN.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-CQZ7WZUE.js} +91 -67
  267. package/chunks/mcp-S6QKGBL3.js +148 -0
  268. package/chunks/memory-side-query-DRV7FXK4.js +221 -0
  269. package/chunks/model-call-collection-T2WST3W7.js +171 -0
  270. package/chunks/model-configuration-BFP6IJW4.js +161 -0
  271. package/chunks/modelConfigUtils-QNLPI7WM.js +140 -0
  272. package/chunks/{monitor-CI7YE7MT.js → monitor-WPWA2VK6.js} +63 -51
  273. package/chunks/nonInteractiveCli-CFAWUMVN.js +235 -0
  274. package/chunks/nonInteractiveToolExecutor-EEJDCV3C.js +101 -0
  275. package/chunks/{notebook-edit-3WCVRNGL.js → notebook-edit-RE7KXCQT.js} +63 -52
  276. package/chunks/ocr-image-Q4HYJ3U7.js +252 -0
  277. package/chunks/omni-UFBJCHP7.js +147 -0
  278. package/chunks/{openaiContentGenerator-OGILGUZE.js → openaiContentGenerator-JYFBMORW.js} +36 -31
  279. package/chunks/{openaiResponsesContentGenerator-NXOXUPFM.js → openaiResponsesContentGenerator-FGELG6EW.js} +12 -10
  280. package/chunks/pidfile-6LNYQUZE.js +151 -0
  281. package/chunks/{processUtils-O4II3RYH.js → processUtils-X7C3BNWU.js} +2 -2
  282. package/chunks/prompt-terminal-ledger-ZYGHRNQY.js +143 -0
  283. package/chunks/{qwenContentGenerator-I4LRYADV.js → qwenContentGenerator-CH4HG37W.js} +70 -60
  284. package/chunks/{qwenOAuth2-3J66TOT5.js → qwenOAuth2-GD3UIYUP.js} +9 -8
  285. package/chunks/reactive-degrade-WIXKA5US.js +375 -0
  286. package/chunks/read-file-AHNTRU2Y.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-RSBLRG55.js +156 -0
  294. package/chunks/ripGrep-PA6WLO2B.js +43 -0
  295. package/chunks/{run-qwen-serve-ZVEKGS7Y.js → run-qwen-serve-DJQA22AG.js} +70 -70
  296. package/chunks/{runtime-SJCRYNPA.js → runtime-DGF7GEH2.js} +98 -74
  297. package/chunks/sandbox-M4OQ536E.js +170 -0
  298. package/chunks/sandboxConfig-T3RKQDML.js +138 -0
  299. package/chunks/scheduled-tasks-RULBPOY2.js +167 -0
  300. package/chunks/scheduler-EQ6PIS66.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-B2TSOKZX.js +156 -0
  305. package/chunks/{server-UHMKPCAZ.js → server-HLICSB5F.js} +286 -261
  306. package/chunks/{session-ZLUK7E4P.js → session-HF2QJCBX.js} +151 -127
  307. package/chunks/session-attachments-root-YUGVNI3F.js +141 -0
  308. package/chunks/{session-pr-refresh-3OMTQWCZ.js → session-pr-refresh-XD7ZEKFM.js} +95 -71
  309. package/chunks/{settings-P4DHIIUP.js → settings-J6CQPQ7M.js} +94 -70
  310. package/chunks/{shell-IMFUVQQ5.js → shell-2JR3IYUR.js} +59 -49
  311. package/chunks/{skill-NB5RJGZW.js → skill-PSCALOSL.js} +22 -17
  312. package/chunks/skill-settings-325FWVKM.js +164 -0
  313. package/chunks/spawnChannel-6EAC64JF.js +152 -0
  314. package/chunks/standalone-update-NBXU45YC.js +156 -0
  315. package/chunks/{start-opentui-ui-JKAIWGF7.js → start-opentui-ui-5SOY6WFI.js} +223 -189
  316. package/chunks/{startInteractiveUI-YRPOT6GH.js → startInteractiveUI-RZBNVVL3.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-OAYVDCOC.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-MHGCYWEQ.js} +61 -50
  326. package/chunks/terminal-image-renderer-3LHWGXWO.js +156 -0
  327. package/chunks/theme-manager-Q7H3CNNS.js +140 -0
  328. package/chunks/{todoWrite-XSTG2VT5.js → todoWrite-CMBHPR66.js} +8 -5
  329. package/chunks/tool-result-media-AR44HFUC.js +45 -0
  330. package/chunks/{tool-search-ZHTJU2MV.js → tool-search-TPW5GFWD.js} +43 -21
  331. package/chunks/total-session-admission-5VK2OGC4.js +151 -0
  332. package/chunks/transcribe-audio-AJQZPNEV.js +30 -0
  333. package/chunks/trustedFolders-2FGBBUNJ.js +160 -0
  334. package/chunks/understand-video-segments-5TMRDQUB.js +438 -0
  335. package/chunks/{update-relaunch-LI7GRP36.js → update-relaunch-YTKNCGR2.js} +5 -5
  336. package/chunks/updateCheck-4EONU2IK.js +156 -0
  337. package/chunks/upload-cache-5YULQVZZ.js +17 -0
  338. package/chunks/upload-config-D2T4TIP5.js +25 -0
  339. package/chunks/useAutoAcceptIndicator-E4FH67W5.js +158 -0
  340. package/chunks/{validateNonInterActiveAuth-YFPCYYNL.js → validateNonInterActiveAuth-UAI34FC4.js} +143 -119
  341. package/chunks/{version-4MTL4JVU.js → version-WNPEU54H.js} +1 -1
  342. package/chunks/{web-fetch-O6RG6ISB.js → web-fetch-YBLB4I6G.js} +27 -20
  343. package/chunks/{web-search-JHAXVEMD.js → web-search-2QJZ4B5R.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-JBGBS74U.js} +63 -52
  346. package/chunks/workspace-providers-status-IWJNIEJR.js +154 -0
  347. package/chunks/{workspace-registration-store-7G4E7YPY.js → workspace-registration-store-E4QEFBOU.js} +1 -1
  348. package/chunks/workspace-registry-LM2HKVI6.js +160 -0
  349. package/chunks/workspace-runtime-coordinator-4AVW6OVM.js +163 -0
  350. package/chunks/workspace-service-T4NLFH2L.js +165 -0
  351. package/chunks/workspace-skills-status-LQXSKEGV.js +151 -0
  352. package/chunks/{workspace-trust-reconciler-XEBW5FUL.js → workspace-trust-reconciler-FDG7FSBK.js} +98 -74
  353. package/chunks/write-file-SDHMCIGH.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-AAZNBSUC.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-DqHRkAE1.js} +1 -1
  364. package/web-shell/assets/{arc-CZpgGCJC.js → arc-BHKq8qaG.js} +1 -1
  365. package/web-shell/assets/{architectureDiagram-5GKGNRK7-BHSMzNDT.js → architectureDiagram-5GKGNRK7-Lg-9rutX.js} +1 -1
  366. package/web-shell/assets/{blockDiagram-NRAW4CY4-Bn4mF9SZ.js → blockDiagram-NRAW4CY4-CHcBhbcO.js} +1 -1
  367. package/web-shell/assets/{c4Diagram-UCG6FXSJ-CBM-Bj6t.js → c4Diagram-UCG6FXSJ-D-6hCd2C.js} +1 -1
  368. package/web-shell/assets/channel-DDjJVjL9.js +1 -0
  369. package/web-shell/assets/{chunk-2Q5K7J3B-D5Fin58O.js → chunk-2Q5K7J3B-CYtNR-Vl.js} +1 -1
  370. package/web-shell/assets/{chunk-5VM5RSS4-CY05weF7.js → chunk-5VM5RSS4-CEnKLqcL.js} +1 -1
  371. package/web-shell/assets/{chunk-F27PBJKO-3neZnj5Y.js → chunk-F27PBJKO-CK94Xha-.js} +1 -1
  372. package/web-shell/assets/{chunk-G27WJ6UU-Cd7EU4BE.js → chunk-G27WJ6UU-CAM8QyWG.js} +1 -1
  373. package/web-shell/assets/{chunk-JWPE2WC7-DwK1mqFw.js → chunk-JWPE2WC7-CO8inmxi.js} +1 -1
  374. package/web-shell/assets/{chunk-LCL6LL3I-Sl7vY22C.js → chunk-LCL6LL3I-DUFXHMBU.js} +1 -1
  375. package/web-shell/assets/{chunk-POPQ4Y6H-BXNzpbVg.js → chunk-POPQ4Y6H-C99vPJ-a.js} +1 -1
  376. package/web-shell/assets/{chunk-SVP7TREG-DjjButcp.js → chunk-SVP7TREG-D7VNFvPL.js} +1 -1
  377. package/web-shell/assets/{chunk-XXDRQBXY-DNOiCjOJ.js → chunk-XXDRQBXY-CO9l-S49.js} +1 -1
  378. package/web-shell/assets/classDiagram-DTDB5LWJ-DaCNi1zi.js +1 -0
  379. package/web-shell/assets/classDiagram-v2-JRS7N3AN-DaCNi1zi.js +1 -0
  380. package/web-shell/assets/{cose-bilkent-JH36ORCC-BUnker7a.js → cose-bilkent-JH36ORCC-DwQ3txE8.js} +1 -1
  381. package/web-shell/assets/{cynefin-OW5HDTMX-DcUgdWE5.js → cynefin-OW5HDTMX-mOQHcKhD.js} +1 -1
  382. package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-CvDKsZsL.js → cynefinDiagram-5FMLGOSQ-NGsX4TeC.js} +1 -1
  383. package/web-shell/assets/{dagre-3AP2YEHR-jpCmUbr1.js → dagre-3AP2YEHR-Dj55BeBS.js} +1 -1
  384. package/web-shell/assets/{diagram-S7CK7UJ4-DBe_bKE5.js → diagram-S7CK7UJ4-CPwRFdTc.js} +1 -1
  385. package/web-shell/assets/{diagram-UQ7AKVKN-oXvPpDgs.js → diagram-UQ7AKVKN-nrj7K5j3.js} +1 -1
  386. package/web-shell/assets/{diagram-VSXAHHWV-BD7-_SGh.js → diagram-VSXAHHWV-BiA6Pr0M.js} +1 -1
  387. package/web-shell/assets/{diagram-VX7I27RA-DOJL0wub.js → diagram-VX7I27RA-Db-gMI9R.js} +1 -1
  388. package/web-shell/assets/{diagram-Z3DM3KII-DRIiodDD.js → diagram-Z3DM3KII-BAp5ON3z.js} +1 -1
  389. package/web-shell/assets/{ebnfDiagram-PWID7BFC-Db31Ulmb.js → ebnfDiagram-PWID7BFC-W_87MzTe.js} +1 -1
  390. package/web-shell/assets/{erDiagram-SSCWMZ5O-CVHhwI2_.js → erDiagram-SSCWMZ5O-7fE6uNGz.js} +1 -1
  391. package/web-shell/assets/{flowDiagram-A5DVABFB-DWOFy1FK.js → flowDiagram-A5DVABFB-BJAJnEq3.js} +1 -1
  392. package/web-shell/assets/{ganttDiagram-EL5Y4UJY-C0sxQtPd.js → ganttDiagram-EL5Y4UJY-B9S2uBJm.js} +1 -1
  393. package/web-shell/assets/{gitGraphDiagram-WWUBYQGX-CNituBYC.js → gitGraphDiagram-WWUBYQGX-BsQARCt-.js} +1 -1
  394. package/web-shell/assets/{index-B15NlwB8.js → index-16ouFJf8.js} +457 -457
  395. package/web-shell/assets/{index-gm9tLk7h.js → index-Bx8zi_fs.js} +1 -1
  396. package/web-shell/assets/{infoDiagram-RXCK75RN-CxhJYtIR.js → infoDiagram-RXCK75RN-BZqBFKFh.js} +1 -1
  397. package/web-shell/assets/{ishikawaDiagram-5VMMS53U-By2mchUy.js → ishikawaDiagram-5VMMS53U-CyKwdHhZ.js} +1 -1
  398. package/web-shell/assets/{journeyDiagram-EYS64GPL-CVH-OweI.js → journeyDiagram-EYS64GPL-o9nctnp2.js} +1 -1
  399. package/web-shell/assets/{kanban-definition-3QL26DDD-Cc9dQXLy.js → kanban-definition-3QL26DDD-DjMGronB.js} +1 -1
  400. package/web-shell/assets/{layout-C_60ysHw.js → layout-DdQUSjyG.js} +1 -1
  401. package/web-shell/assets/{linear-BvAVfqwu.js → linear-kShNlFcy.js} +1 -1
  402. package/web-shell/assets/{mermaid.core-C3CoBKAc.js → mermaid.core-xQK2CR6g.js} +6 -6
  403. package/web-shell/assets/{mindmap-definition-FBJOCRG2-Cuu8Q8LM.js → mindmap-definition-FBJOCRG2-BViTXSM7.js} +1 -1
  404. package/web-shell/assets/{pegDiagram-XKGWAZYB-DmAeyDO2.js → pegDiagram-XKGWAZYB-GrAhR2qU.js} +1 -1
  405. package/web-shell/assets/{pieDiagram-E7YTZNPT-B7vbB_xv.js → pieDiagram-E7YTZNPT-fKiBTWA3.js} +1 -1
  406. package/web-shell/assets/{quadrantDiagram-AXDQQJYC-BqOBkRR7.js → quadrantDiagram-AXDQQJYC-BrgGf72j.js} +1 -1
  407. package/web-shell/assets/{railroadDiagram-O6MQD6OU-sI06lZIu.js → railroadDiagram-O6MQD6OU-CQ1FixvV.js} +1 -1
  408. package/web-shell/assets/{requirementDiagram-EFPCY7ZU-Bg13d10S.js → requirementDiagram-EFPCY7ZU-DsD3dKVY.js} +1 -1
  409. package/web-shell/assets/{sankeyDiagram-P5KCCOFB-WFOzZHrR.js → sankeyDiagram-P5KCCOFB-D97--egE.js} +1 -1
  410. package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-CCdRbA4E.js → sequenceDiagram-WJ2MYXX4-C5FTa0Aq.js} +1 -1
  411. package/web-shell/assets/{sizeCapture-X5ZJPWSS-BH5F3bGg.js → sizeCapture-X5ZJPWSS-CDSWcmKE.js} +1 -1
  412. package/web-shell/assets/{stateDiagram-HBIQ2CUA-NwS2X3QB.js → stateDiagram-HBIQ2CUA-CpReN3Pj.js} +1 -1
  413. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-DUFSbkLI.js +1 -0
  414. package/web-shell/assets/{swimlanes-XN3QIQJK-Bm38pM28.js → swimlanes-XN3QIQJK-Dh1QUCNn.js} +1 -1
  415. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-hNayxM-g.js +8 -0
  416. package/web-shell/assets/{timeline-definition-24CTP7MA-Do-agLSo.js → timeline-definition-24CTP7MA-BaQTxI4c.js} +1 -1
  417. package/web-shell/assets/{vennDiagram-4TSXK5OY-aggLfZzl.js → vennDiagram-4TSXK5OY-CCsDsiZ0.js} +1 -1
  418. package/web-shell/assets/{wardleyDiagram-VM6X3IG4-D5JR3mXX.js → wardleyDiagram-VM6X3IG4-DxqzuE9J.js} +1 -1
  419. package/web-shell/assets/{xychartDiagram-S5SC5T6Z-DhtLDuXs.js → xychartDiagram-S5SC5T6Z-BfzOe1fx.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
@@ -45,12 +45,6 @@ import {
45
45
  unknown,
46
46
  url
47
47
  } from "./chunk-CQ35AJ4Z.js";
48
- import {
49
- CronScheduler,
50
- DEFAULT_RECURRING_MAX_AGE_DAYS,
51
- closeFileWatcher,
52
- normalizeRecurringMaxAge
53
- } from "./chunk-IVFTLUZD.js";
54
48
  import {
55
49
  consumeUnread,
56
50
  forwardApproval,
@@ -59,20 +53,13 @@ import {
59
53
  sendStructuredMessage,
60
54
  wrapConfirmWithBadge,
61
55
  writeMessage
62
- } from "./chunk-7CLLH5TI.js";
56
+ } from "./chunk-4YS7RMCB.js";
63
57
  import {
64
58
  claimTask,
65
59
  listTasks,
66
60
  onTasksUpdated,
67
61
  unassignTeammateTasks
68
- } from "./chunk-WK6DEH3Q.js";
69
- import {
70
- parsePositiveIntegerEnv
71
- } from "./chunk-6PVPNMXU.js";
72
- import {
73
- buildModelIdContext,
74
- resolveModelId
75
- } from "./chunk-DX6JTDMR.js";
62
+ } from "./chunk-PQQV3OBW.js";
76
63
  import {
77
64
  SessionArtifactSnapshotAccumulator,
78
65
  aggregateTranscriptRecordFragments,
@@ -92,11 +79,13 @@ import {
92
79
  validateTranscriptRecord,
93
80
  walkTranscriptUuidChain,
94
81
  wrapUserPromptSubmitContext
95
- } from "./chunk-VQDWCQOE.js";
82
+ } from "./chunk-ANKISCKU.js";
96
83
  import {
97
- glob,
98
- globSync
99
- } from "./chunk-QJNDUTOL.js";
84
+ CronScheduler,
85
+ DEFAULT_RECURRING_MAX_AGE_DAYS,
86
+ closeFileWatcher,
87
+ normalizeRecurringMaxAge
88
+ } from "./chunk-4SZ2636R.js";
100
89
  import {
101
90
  promptIdContext,
102
91
  todoWorkChainContext
@@ -111,26 +100,14 @@ import {
111
100
  worktreeBranchForSlug,
112
101
  writeRuntimeStatus,
113
102
  writeWorktreeSessionMarker
114
- } from "./chunk-CXONOVBN.js";
103
+ } from "./chunk-KS6F6LZQ.js";
115
104
  import {
116
- SHARED_RECORD_SLOT,
117
- deriveSessionName,
118
- patchSessionRecord,
119
- unregisterSession
120
- } from "./chunk-OWUAZXXN.js";
105
+ parsePositiveIntegerEnv
106
+ } from "./chunk-6PVPNMXU.js";
121
107
  import {
122
- LEADER_NAME,
123
- MAX_TEAMMATES,
124
- assignTeammateColor,
125
- classifyShutdownResponse,
126
- findMemberByName,
127
- formatAgentId,
128
- generateUniqueTeammateName,
129
- readLocalBootId,
130
- readPidNamespaceId,
131
- sanitizeName,
132
- writeTeamFile
133
- } from "./chunk-CH2YDT6X.js";
108
+ buildModelIdContext,
109
+ resolveModelId
110
+ } from "./chunk-OB57Y2WH.js";
134
111
  import {
135
112
  AgentOutputMessageCapture,
136
113
  DEFAULT_OTLP_ENDPOINT,
@@ -193,6 +170,7 @@ import {
193
170
  parseUserInvocableField,
194
171
  qualifySkillName,
195
172
  reduceGoalControl,
173
+ reduceGoalSpend,
196
174
  reduceGoalTurnFinished,
197
175
  require_dist as require_dist2,
198
176
  skillRestrictionNames,
@@ -202,10 +180,14 @@ import {
202
180
  truncateNotificationLabel,
203
181
  validateGoalProposalReason,
204
182
  validateSkillName
205
- } from "./chunk-P42KMMU6.js";
183
+ } from "./chunk-XYJNMSMV.js";
206
184
  import {
207
185
  canUseRipgrep
208
- } from "./chunk-BTICBRPL.js";
186
+ } from "./chunk-IWMYX5LB.js";
187
+ import {
188
+ glob,
189
+ globSync
190
+ } from "./chunk-QJNDUTOL.js";
209
191
  import {
210
192
  SHELL_SELF_KILL_REJECTION,
211
193
  buildShellExecWarnings,
@@ -224,17 +206,7 @@ import {
224
206
  shouldDefaultToNodePty,
225
207
  splitCommands,
226
208
  stripShellWrapper
227
- } from "./chunk-V545KI73.js";
228
- import {
229
- isSafeModeEnv
230
- } from "./chunk-ADN5KESB.js";
231
- import {
232
- normalizeImageGenerationBaseUrl,
233
- resolveNetworkTarget
234
- } from "./chunk-PPJSG2PU.js";
235
- import {
236
- restoreSessionSources
237
- } from "./chunk-ELRMZTPF.js";
209
+ } from "./chunk-QPTE6BKL.js";
238
210
  import {
239
211
  CODE_MODE_MAX_MEDIA_BYTES,
240
212
  CODE_MODE_MAX_MEDIA_ITEMS
@@ -246,6 +218,38 @@ import {
246
218
  escapeJsonTagCharacters,
247
219
  formatMemoryUsage
248
220
  } from "./chunk-CHEIIBT3.js";
221
+ import {
222
+ SHARED_RECORD_SLOT,
223
+ deriveSessionName,
224
+ patchSessionRecord,
225
+ unregisterSession
226
+ } from "./chunk-GHG4PQY2.js";
227
+ import {
228
+ LEADER_NAME,
229
+ MAX_TEAMMATES,
230
+ assignTeammateColor,
231
+ classifyShutdownResponse,
232
+ findMemberByName,
233
+ formatAgentId,
234
+ generateUniqueTeammateName,
235
+ readLocalBootId,
236
+ readPidNamespaceId,
237
+ sanitizeName,
238
+ writeTeamFile
239
+ } from "./chunk-YVYK3JYU.js";
240
+ import {
241
+ BaseTokenStorage,
242
+ KeychainTokenStorage
243
+ } from "./chunk-Q5N5NEVT.js";
244
+ import {
245
+ isSafeModeEnv
246
+ } from "./chunk-ADN5KESB.js";
247
+ import {
248
+ normalizeImageGenerationBaseUrl
249
+ } from "./chunk-EVZT24AF.js";
250
+ import {
251
+ restoreSessionSources
252
+ } from "./chunk-ELRMZTPF.js";
249
253
  import {
250
254
  READ_ONLY_INSPECTION_TOOLS,
251
255
  SUBAGENT_PLAN_LIFECYCLE_TOOLS,
@@ -260,17 +264,22 @@ import {
260
264
  isPlanRequiredTeammatePreApprovalAllowedTool,
261
265
  isSubagentLikeExecutionContext,
262
266
  shouldUsePlanOnlyReminderInSubagentContext
263
- } from "./chunk-AEWCOE64.js";
267
+ } from "./chunk-GACWUBXV.js";
264
268
  import {
265
269
  APPROVAL_MODES
266
270
  } from "./chunk-JX6XHPTX.js";
267
271
  import {
268
- BaseTokenStorage,
269
- KeychainTokenStorage
270
- } from "./chunk-ZSTCM3MX.js";
272
+ resolveNetworkTarget
273
+ } from "./chunk-6C3D7BKK.js";
271
274
  import {
272
- require_proper_lockfile
273
- } from "./chunk-MLXTMF7H.js";
275
+ isOmniDeliveryActive
276
+ } from "./chunk-DLOFGU67.js";
277
+ import {
278
+ MediaResourceRegistry,
279
+ evaluateMediaPolicyToolCall,
280
+ isMediaPolicyToolHiddenFromModel,
281
+ resolveMediaPolicyModelAccess
282
+ } from "./chunk-MNU36NGH.js";
274
283
  import {
275
284
  AskUserQuestionTool,
276
285
  TrustedUserAnswers,
@@ -285,7 +294,7 @@ import {
285
294
  resolveEffectiveOutputStyle,
286
295
  resolveInteractionMode,
287
296
  resolveMainSessionOutputStyle
288
- } from "./chunk-36SDZ2Q4.js";
297
+ } from "./chunk-B3HGO6BB.js";
289
298
  import {
290
299
  NO_EXEC_CONFIG,
291
300
  findGitRoot,
@@ -294,7 +303,10 @@ import {
294
303
  getRecentGitStatus,
295
304
  isGitRepository,
296
305
  readFirstLineNoFollow
297
- } from "./chunk-NXUZFW3G.js";
306
+ } from "./chunk-AUFTA63J.js";
307
+ import {
308
+ require_proper_lockfile
309
+ } from "./chunk-MLXTMF7H.js";
298
310
  import {
299
311
  InMemoryImagePayloadStore,
300
312
  buildReattachParts,
@@ -303,10 +315,6 @@ import {
303
315
  replaceImagePayloadsInPlace,
304
316
  supportsOpenAIPrefixCaching
305
317
  } from "./chunk-WFNEY5G7.js";
306
- import {
307
- DashScopeOpenAICompatibleProvider,
308
- selectDashScopeThinkingKnob
309
- } from "./chunk-YP2K3WOS.js";
310
318
  import {
311
319
  childLaunchDepth,
312
320
  getCurrentAgentDepth,
@@ -317,12 +325,31 @@ import {
317
325
  runWithAgentContext,
318
326
  runWithRuntimeContentGenerator,
319
327
  spawnBlockReason
320
- } from "./chunk-BW2SMO6L.js";
328
+ } from "./chunk-BXAU2UKM.js";
321
329
  import {
322
330
  getTeammateContext,
323
331
  isTeammate,
324
332
  runWithTeammateIdentity
325
333
  } from "./chunk-S6LOFUVP.js";
334
+ import {
335
+ OMNI_DISCLOSURE_TEXT_PREFIX,
336
+ OMNI_OMISSION_TEXT_PREFIX,
337
+ OMNI_RESOURCE_HANDLE_TEXT_PREFIX,
338
+ OMNI_RESOURCE_PATH_TEXT_PREFIX,
339
+ OMNI_TRANSCRIPT_TEXT_PREFIX
340
+ } from "./chunk-BKVPLSEI.js";
341
+ import {
342
+ DashScopeOpenAICompatibleProvider,
343
+ selectDashScopeThinkingKnob
344
+ } from "./chunk-A2DAL2S2.js";
345
+ import {
346
+ InvalidStreamError,
347
+ getToolCallPreparations,
348
+ isFlushedToolCallPark,
349
+ isRetryableStatuslessUpstreamError,
350
+ isRetryableStreamTransportError,
351
+ setToolCallPreparations
352
+ } from "./chunk-S7UQ3V2H.js";
326
353
  import {
327
354
  BUBBLE_APPROVAL_MODE,
328
355
  FORK_AGENT,
@@ -357,12 +384,12 @@ import {
357
384
  stripSystemReminderBlocks,
358
385
  validateForkToolList,
359
386
  wrapSystemReminder
360
- } from "./chunk-VVI7MK3V.js";
387
+ } from "./chunk-CTGMXP4A.js";
361
388
  import {
362
389
  clearLoadedSkillTracking,
363
390
  collectAvailableSkillEntries,
364
391
  renderAvailableSkillsBlock
365
- } from "./chunk-WBSJ6VPZ.js";
392
+ } from "./chunk-2GNZTJRK.js";
366
393
  import {
367
394
  DefaultHookOutput,
368
395
  HOOKS_CONFIG_FIELDS,
@@ -380,7 +407,7 @@ import {
380
407
  escapeXmlElementText,
381
408
  getHookKey,
382
409
  isToolArtifactLike
383
- } from "./chunk-G6UUOCUT.js";
410
+ } from "./chunk-RMI3DKMV.js";
384
411
  import {
385
412
  DEFAULT_QWEN_CUSTOM_IGNORE_FILE_NAMES,
386
413
  QwenIgnoreParser,
@@ -388,7 +415,7 @@ import {
388
415
  formatQwenIgnoreFileNames,
389
416
  isPathWithinRoot,
390
417
  require_ignore
391
- } from "./chunk-IZ2U57NY.js";
418
+ } from "./chunk-IITTKFWM.js";
392
419
  import {
393
420
  getResponsesMessage,
394
421
  sameResponsesMessage
@@ -403,6 +430,20 @@ import {
403
430
  sanitizeMimeForPlaceholder,
404
431
  slimCompactionInput
405
432
  } from "./chunk-NUQ4GK5I.js";
433
+ import {
434
+ getThoughtSummary
435
+ } from "./chunk-KP2FHIFR.js";
436
+ import {
437
+ DEFAULT_STREAM_MAX_LIFETIME_MS,
438
+ ModelsConfig,
439
+ captureReasoningSnapshot,
440
+ isImageGenerationCapable,
441
+ resolveProviderProtocol,
442
+ resolveReasoningCapabilities,
443
+ resolveReasoningForModel,
444
+ stripRuntimeSnapshotPrefix,
445
+ validateReasoningCapabilities
446
+ } from "./chunk-VZQDBPCD.js";
406
447
  import {
407
448
  openBrowserSecurely,
408
449
  shouldAttemptBrowserLaunch
@@ -411,20 +452,7 @@ import {
411
452
  delay,
412
453
  isUnattendedMode,
413
454
  retryWithBackoff
414
- } from "./chunk-DRAX5YAI.js";
415
- import {
416
- InvalidStreamError,
417
- getToolCallPreparations,
418
- isFlushedToolCallPark,
419
- isRetryableStatuslessUpstreamError,
420
- isRetryableStreamTransportError,
421
- setToolCallPreparations
422
- } from "./chunk-S7UQ3V2H.js";
423
- import {
424
- combineAbortSignals,
425
- createAbortController,
426
- createChildAbortController
427
- } from "./chunk-DJ2GSRLV.js";
455
+ } from "./chunk-NFC4WTY2.js";
428
456
  import {
429
457
  QUOTA_EXHAUSTED_PREFIX,
430
458
  classifyRetryError,
@@ -437,27 +465,18 @@ import {
437
465
  isRateLimitError,
438
466
  isRetryableUpstreamError,
439
467
  isStructuredError
440
- } from "./chunk-3XBUCOWS.js";
468
+ } from "./chunk-YSD6IY6F.js";
441
469
  import {
442
- ResponsesHttpError
443
- } from "./chunk-M4U2LTD2.js";
444
- import {
445
- getThoughtSummary
446
- } from "./chunk-KP2FHIFR.js";
470
+ combineAbortSignals,
471
+ createAbortController,
472
+ createChildAbortController
473
+ } from "./chunk-DJ2GSRLV.js";
447
474
  import {
448
- DEFAULT_STREAM_MAX_LIFETIME_MS,
449
- ModelsConfig,
450
- captureReasoningSnapshot,
451
- isImageGenerationCapable,
452
- resolveProviderProtocol,
453
- resolveReasoningCapabilities,
454
- resolveReasoningForModel,
455
- stripRuntimeSnapshotPrefix,
456
- validateReasoningCapabilities
457
- } from "./chunk-KEM7MWS7.js";
475
+ ResponsesHttpError
476
+ } from "./chunk-MS4SXNJ6.js";
458
477
  import {
459
478
  addDaemonRequestAttribute
460
- } from "./chunk-G45B3INR.js";
479
+ } from "./chunk-GVTAFLWB.js";
461
480
  import {
462
481
  ApiRetryEvent,
463
482
  COMBINED_PASS_TOLERANCE_FACTOR,
@@ -538,7 +557,6 @@ import {
538
557
  readLinesWithIntegrity,
539
558
  recordMCPServerLastError,
540
559
  removeMCPServerStatus,
541
- runSideQuery,
542
560
  runVisionBridge,
543
561
  runWithChatRecordingSuppressed,
544
562
  selectVisionBridgeModel,
@@ -551,7 +569,7 @@ import {
551
569
  updateMCPServerStatus,
552
570
  writeLine,
553
571
  writeLineSync
554
- } from "./chunk-CDDP4ONL.js";
572
+ } from "./chunk-2RI3OGVU.js";
555
573
  import {
556
574
  getInvocationContext,
557
575
  runWithInvocationContext
@@ -559,19 +577,6 @@ import {
559
577
  import {
560
578
  Mutex
561
579
  } from "./chunk-VGC4I5JJ.js";
562
- import {
563
- FileExclusions,
564
- LOCAL_CONTEXT_FILENAME,
565
- getAllMemoryFilenames,
566
- getCachedEncodingForBuffer,
567
- getSystemEncoding,
568
- isUtf8CompatibleEncoding,
569
- loadIconvLite,
570
- readFileWithLineAndLimit,
571
- readTextCursorWindowFromHandle,
572
- readTextRangeFromHandle,
573
- setMemoryFilename
574
- } from "./chunk-5NUKK2DT.js";
575
580
  import {
576
581
  AUTO_MEMORY_INDEX_FILENAME,
577
582
  AUTO_MEMORY_PINNED_DIRNAME,
@@ -591,7 +596,20 @@ import {
591
596
  isManagedMemoryPath,
592
597
  isTeamAutoMemPath,
593
598
  isUserAutoMemPath
594
- } from "./chunk-EDIDYZBT.js";
599
+ } from "./chunk-RVT5L74D.js";
600
+ import {
601
+ FileExclusions,
602
+ LOCAL_CONTEXT_FILENAME,
603
+ getAllMemoryFilenames,
604
+ getCachedEncodingForBuffer,
605
+ getSystemEncoding,
606
+ isUtf8CompatibleEncoding,
607
+ loadIconvLite,
608
+ readFileWithLineAndLimit,
609
+ readTextCursorWindowFromHandle,
610
+ readTextRangeFromHandle,
611
+ setMemoryFilename
612
+ } from "./chunk-25FMWESU.js";
595
613
  import {
596
614
  extractCodeModeImageContent,
597
615
  getCurrentToolCallSource,
@@ -599,21 +617,17 @@ import {
599
617
  runWithToolCallSource,
600
618
  runWithoutToolCallRuntime
601
619
  } from "./chunk-CFMZLE3L.js";
620
+ import {
621
+ runSideQuery
622
+ } from "./chunk-43QUA4MC.js";
602
623
  import {
603
624
  normalizeMcpToolName,
604
625
  sanitizeToolNameForProvider
605
626
  } from "./chunk-WZAD4ZNJ.js";
606
- import {
607
- atomicWriteFile,
608
- atomicWriteFileSync,
609
- atomicWriteJSON,
610
- renameWithRetry
611
- } from "./chunk-XFFRI3WM.js";
612
627
  import {
613
628
  AUTH_ENV_MAPPINGS,
614
629
  DEFAULT_MODELS,
615
630
  DEFAULT_QWEN_EMBEDDING_MODEL,
616
- DEFAULT_QWEN_MODEL,
617
631
  DEFAULT_TOKEN_LIMIT,
618
632
  MODEL_GENERATION_CONFIG_FIELDS,
619
633
  OUTPUT_TOKEN_CEILING,
@@ -634,14 +648,23 @@ import {
634
648
  resolveContentGeneratorConfigWithSources,
635
649
  setGeneratorReasoningEffort,
636
650
  tokenLimit
637
- } from "./chunk-GJKP6XOB.js";
651
+ } from "./chunk-4EFJT6Q2.js";
652
+ import {
653
+ DEFAULT_QWEN_MODEL
654
+ } from "./chunk-XZA32HII.js";
655
+ import {
656
+ atomicWriteFile,
657
+ atomicWriteFileSync,
658
+ atomicWriteJSON,
659
+ renameWithRetry
660
+ } from "./chunk-CA63HYHU.js";
638
661
  import {
639
662
  getOrCreateMcpDispatcher,
640
663
  loadUndici,
641
664
  preloadRuntimeFetchModule,
642
665
  redactProxyError,
643
666
  setResolvedProxyUrlForRuntimeFetch
644
- } from "./chunk-7O5PYQ3M.js";
667
+ } from "./chunk-SBP43AO6.js";
645
668
  import {
646
669
  safeJsonStringify
647
670
  } from "./chunk-HHJLM3WQ.js";
@@ -692,49 +715,44 @@ import {
692
715
  stripAnsiAndControl,
693
716
  stripHtmlComments,
694
717
  truncateSpanError
695
- } from "./chunk-6USYH3EU.js";
718
+ } from "./chunk-B3XJFEEH.js";
696
719
  import {
697
720
  STRUCTURED_OUTPUT_REDACTED_ARGS
698
- } from "./chunk-SYROIHU7.js";
721
+ } from "./chunk-ZRQGTRHA.js";
699
722
  import {
700
723
  AgentStatistics,
701
724
  BaseDeclarativeTool,
702
725
  BaseToolInvocation,
703
726
  CONCURRENCY_SAFE_KINDS,
704
727
  StructuredToolError,
728
+ hasCycleInSchema,
729
+ isShellProgressData
730
+ } from "./chunk-VPGRGNNH.js";
731
+ import {
705
732
  ToolDisplayNames,
706
733
  ToolDisplayNamesMigration,
707
734
  ToolNames,
708
735
  ToolNamesMigration,
709
736
  canonicalToolName,
710
- hasCycleInSchema,
711
- isShellProgressData,
712
737
  require_dist,
713
738
  require_fast_deep_equal,
714
739
  require_fast_uri,
715
740
  resolveBuiltinToolName
716
- } from "./chunk-RSWBT7AZ.js";
741
+ } from "./chunk-ERIBG3BX.js";
717
742
  import {
718
- FatalConfigError,
719
743
  PATH_ARG_KEYS,
720
744
  QWEN_DIR,
721
745
  SKILL_PROVIDER_CONFIG_DIRS,
722
746
  Storage,
723
- UnauthorizedError,
724
747
  createDebugLogger,
725
748
  expandHomeDir,
726
749
  formatTraceparent,
727
- getErrorMessage,
728
- getErrorStatus,
729
- getErrorType,
730
750
  getProjectHash,
731
751
  getSessionModel,
732
752
  getSessionModelIdentity,
733
753
  getSessionProjectDir,
734
754
  getTraceContext,
735
- isAbortError,
736
755
  isDebugLogFileEnabled,
737
- isNodeError,
738
756
  isShellTracePropagationEnabled,
739
757
  isSubpath,
740
758
  isSubpaths,
@@ -745,11 +763,20 @@ import {
745
763
  setDebugLogSession,
746
764
  shortenPath,
747
765
  tildeifyPath,
748
- toFriendlyError,
749
766
  unescapePath,
750
767
  unregisterSessionModel,
751
768
  unregisterSessionProjectDir
752
- } from "./chunk-ZAFYHRVY.js";
769
+ } from "./chunk-ZYDMQCQP.js";
770
+ import {
771
+ FatalConfigError,
772
+ UnauthorizedError,
773
+ getErrorMessage,
774
+ getErrorStatus,
775
+ getErrorType,
776
+ isAbortError,
777
+ isNodeError,
778
+ toFriendlyError
779
+ } from "./chunk-S34QJ6IR.js";
753
780
  import {
754
781
  SpanStatusCode,
755
782
  context,
@@ -20456,7 +20483,7 @@ var InvalidGoalCheckpointError = class extends Error {
20456
20483
  }
20457
20484
  };
20458
20485
  function materializeGoalEvidenceCheckpoint(input) {
20459
- if (!isRecord2(input.result) || !hasOnlyKeys2(input.result, ["claims"])) {
20486
+ if (!isRecord2(input.result) || !hasOnlyKeys2(input.result, ["claims", "usage"])) {
20460
20487
  throw new InvalidGoalCheckpointError(
20461
20488
  "Goal checkpoint verifier returned an invalid result"
20462
20489
  );
@@ -20923,6 +20950,7 @@ function createGoalCheckpointVerifier(config3, options2 = {}) {
20923
20950
  const sources = checkpointSources(input);
20924
20951
  let retry;
20925
20952
  let retryCause;
20953
+ let totalTokens = 0;
20926
20954
  for (; ; ) {
20927
20955
  const contents = retryContents(input, retry?.note, retryCause);
20928
20956
  const result = await runSideQuery(config3, {
@@ -20949,8 +20977,13 @@ function createGoalCheckpointVerifier(config3, options2 = {}) {
20949
20977
  // failures into plain Errors, erasing the InvalidGoalCheckpointError
20950
20978
  // class and message the verifier's own tests assert on.
20951
20979
  });
20980
+ const tokens = result.usage?.totalTokenCount ?? 0;
20981
+ if (Number.isFinite(tokens) && tokens > 0) totalTokens += tokens;
20952
20982
  try {
20953
- return parseGoalCheckpointVerifierText(result.text, sources);
20983
+ return {
20984
+ ...parseGoalCheckpointVerifierText(result.text, sources),
20985
+ ...totalTokens > 0 ? { usage: { totalTokenCount: totalTokens } } : {}
20986
+ };
20954
20987
  } catch (error3) {
20955
20988
  const corrective = retry === void 0 ? correctiveRetryFor(error3) : void 0;
20956
20989
  if (!corrective) throw error3;
@@ -21579,9 +21612,14 @@ function createGoalRuntime(options2) {
21579
21612
  const recordVerificationOutcome = /* @__PURE__ */ __name(async (attempt, outcome) => enqueue(async () => {
21580
21613
  if (!isCurrentVerificationAttempt(attempt) || !snapshot.goal) return;
21581
21614
  const now = Date.now();
21615
+ const meteredGoal = reduceGoalSpend(
21616
+ snapshot.goal,
21617
+ outcome.kind === "decision" ? outcome.result.usage?.totalTokenCount ?? 0 : 0,
21618
+ now
21619
+ );
21582
21620
  if (outcome.kind === "decision" && outcome.result.decision === "accept") {
21583
21621
  const acceptedGoal = {
21584
- ...snapshot.goal,
21622
+ ...meteredGoal,
21585
21623
  activeTimeMs: elapsedActiveTime(snapshot.goal, now),
21586
21624
  updatedAt: now,
21587
21625
  lastReason: attempt.proposal.blockerKind === "infeasible" ? `${outcome.result.reason} ${GOAL_INFEASIBLE_NEXT_STEP}` : outcome.result.reason
@@ -21641,7 +21679,7 @@ function createGoalRuntime(options2) {
21641
21679
  const rejectedSnapshot = {
21642
21680
  v: GOAL_STATE_VERSION,
21643
21681
  goal: {
21644
- ...snapshot.goal,
21682
+ ...meteredGoal,
21645
21683
  activeTimeMs: elapsedActiveTime(snapshot.goal, now),
21646
21684
  updatedAt: now,
21647
21685
  lastReason: outcome.result.reason
@@ -21818,15 +21856,16 @@ function createGoalRuntime(options2) {
21818
21856
  );
21819
21857
  });
21820
21858
  }, "recordCheckpointFailure");
21821
- const recordCheckpoint = /* @__PURE__ */ __name(async (attempt, checkpoint, stalled, replay) => {
21859
+ const recordCheckpoint = /* @__PURE__ */ __name(async (attempt, checkpoint, stalled, replay, tokens) => {
21822
21860
  if (!checkpoint) return;
21823
21861
  await enqueue(async () => {
21824
21862
  if (!isCurrentCheckpointAttempt(attempt) || !snapshot.goal) return;
21863
+ const meteredGoal = reduceGoalSpend(snapshot.goal, tokens, Date.now());
21825
21864
  const checkpointStalls = stalled ? (snapshot.goal.checkpointStalls ?? 0) + (replay ? 0 : 1) : 0;
21826
21865
  const health = stalled ? FULL_CLAIM_LIST_FAILURE : "clear";
21827
21866
  if (await settleIfCheckpointStalled(
21828
21867
  attempt,
21829
- snapshot.goal,
21868
+ meteredGoal,
21830
21869
  checkpointStalls,
21831
21870
  health
21832
21871
  )) {
@@ -21837,7 +21876,7 @@ function createGoalRuntime(options2) {
21837
21876
  const checkpointSnapshot = {
21838
21877
  v: GOAL_STATE_VERSION,
21839
21878
  goal: {
21840
- ...withCheckpointHealth(snapshot.goal, checkpointStalls, health),
21879
+ ...withCheckpointHealth(meteredGoal, checkpointStalls, health),
21841
21880
  evidenceCursor: { recordId: attempt.recordUuid },
21842
21881
  evidenceCheckpoint: checkpoint,
21843
21882
  activeTimeMs: elapsedActiveTime(snapshot.goal, now),
@@ -21902,6 +21941,7 @@ function createGoalRuntime(options2) {
21902
21941
  );
21903
21942
  let checkpoint;
21904
21943
  let batchIndex = 0;
21944
+ let checkpointTokens = 0;
21905
21945
  try {
21906
21946
  let previousClaims = window2.previousClaims;
21907
21947
  for (; batchIndex < batches.length; batchIndex++) {
@@ -21919,6 +21959,8 @@ function createGoalRuntime(options2) {
21919
21959
  attempt.controller.signal
21920
21960
  );
21921
21961
  if (attempt.controller.signal.aborted) return;
21962
+ const tokens = result.usage?.totalTokenCount ?? 0;
21963
+ if (Number.isFinite(tokens) && tokens > 0) checkpointTokens += tokens;
21922
21964
  checkpoint = materializeGoalEvidenceCheckpoint({
21923
21965
  // An intermediate batch gets its own id segment, so the claim ids
21924
21966
  // the next batch cites cannot collide with the kept checkpoint's
@@ -21962,7 +22004,8 @@ function createGoalRuntime(options2) {
21962
22004
  attempt,
21963
22005
  checkpoint,
21964
22006
  isGoalCheckpointStalled(window2, checkpoint),
21965
- replay
22007
+ replay,
22008
+ checkpointTokens
21966
22009
  );
21967
22010
  } catch (error3) {
21968
22011
  if (attempt.controller.signal.aborted) return;
@@ -40362,7 +40405,9 @@ var ChatRecordingService = class {
40362
40405
  */
40363
40406
  goalTurnSpend;
40364
40407
  accumulateGoalTurnTokens(turnId, usage) {
40365
- const total = usage.totalTokenCount;
40408
+ this.billGoalTurnTokens(turnId, usage.totalTokenCount ?? 0);
40409
+ }
40410
+ billGoalTurnTokens(turnId, total) {
40366
40411
  if (typeof total !== "number" || !Number.isFinite(total) || total <= 0) {
40367
40412
  return;
40368
40413
  }
@@ -40628,6 +40673,26 @@ var ChatRecordingService = class {
40628
40673
  debugLogger19.error("Error saving slash command record:", error3);
40629
40674
  }
40630
40675
  }
40676
+ /**
40677
+ * Records the omni passive media-memory recall payload injected into the
40678
+ * model-bound request (memory design M §9.3, D10 sideQuery mode). The
40679
+ * reminder is assembled AFTER the user record is persisted, so without
40680
+ * this record the transcript would never show what memory the model was
40681
+ * given — the trajectory exporter reads it back as `turn.recall`.
40682
+ */
40683
+ recordOmniRecallReminder(payload) {
40684
+ try {
40685
+ const record4 = {
40686
+ ...this.createBaseRecord("system"),
40687
+ type: "system",
40688
+ subtype: "omni_recall",
40689
+ systemPayload: payload
40690
+ };
40691
+ this.appendRecord(record4);
40692
+ } catch (error3) {
40693
+ debugLogger19.error("Error saving omni recall record:", error3);
40694
+ }
40695
+ }
40631
40696
  /**
40632
40697
  * Records a chat compression checkpoint as a system record. This keeps the UI
40633
40698
  * history immutable while allowing resume/continue flows to reconstruct the
@@ -42962,6 +43027,14 @@ function parseTokenCounts(text) {
42962
43027
  limitTokens: parseInteger(inputExceedsMatch[2])
42963
43028
  };
42964
43029
  }
43030
+ const rangeMatch = text.match(
43031
+ /range of input length should be\s*\[\s*\d[\d,]*\s*,\s*(\d[\d,]*)\s*\]/i
43032
+ );
43033
+ if (rangeMatch) {
43034
+ return {
43035
+ limitTokens: parseInteger(rangeMatch[1])
43036
+ };
43037
+ }
42965
43038
  return {};
42966
43039
  }
42967
43040
  __name(parseTokenCounts, "parseTokenCounts");
@@ -44884,6 +44957,7 @@ var LlmChat = class {
44884
44957
  let transportAttemptParts = [];
44885
44958
  let transportContinuationPrefix = [];
44886
44959
  let reactiveCompressionAttempted = false;
44960
+ let omniMediaDegradeAttempts = 0;
44887
44961
  let suppressNextRetryEvent = false;
44888
44962
  let streamYieldedAnyChunk = false;
44889
44963
  const cgConfig = exactRoute?.contentGeneratorConfig ?? self2.config.getContentGeneratorConfig();
@@ -45172,6 +45246,46 @@ var LlmChat = class {
45172
45246
  );
45173
45247
  }
45174
45248
  if (contextOverflow.isExceeded || requestPayloadOverflow.isTooLarge) {
45249
+ const omniDegradeMaxAttempts = self2.config.getOmniProcessingConfig?.()?.limits.maxTransportPasses ?? 0;
45250
+ if (contextOverflow.isExceeded && !exactRoute && omniMediaDegradeAttempts < omniDegradeMaxAttempts) {
45251
+ const degradeAttempt = omniMediaDegradeAttempts++;
45252
+ let degradeOutcome;
45253
+ try {
45254
+ const { degradeOmniMediaAfterServerReject } = await import("./reactive-degrade-WIXKA5US.js");
45255
+ degradeOutcome = await degradeOmniMediaAfterServerReject(
45256
+ self2.config,
45257
+ self2.history,
45258
+ degradeAttempt,
45259
+ {
45260
+ signal: params.config?.abortSignal,
45261
+ observedLimitTokens: contextOverflow.limitTokens
45262
+ }
45263
+ );
45264
+ } catch (degradeError) {
45265
+ if (params.config?.abortSignal?.aborted || isAbortError(degradeError)) {
45266
+ throw degradeError;
45267
+ }
45268
+ debugLogger23.warn(
45269
+ "Omni media degradation fallback failed.",
45270
+ degradeError
45271
+ );
45272
+ }
45273
+ if (degradeOutcome && degradeOutcome.replacedParts > 0) {
45274
+ self2.popPendingPartialAssistantTurn();
45275
+ requestContents = self2.getRequestHistoryForRoute(
45276
+ currentUserContent,
45277
+ requestModalities
45278
+ );
45279
+ debugLogger23.warn(
45280
+ `Server input limit exceeded; degraded ${degradeOutcome.degradedResources} omni media resource(s) in place (attempt ${degradeAttempt + 1}/${omniDegradeMaxAttempts}); retrying.`
45281
+ );
45282
+ resetTransportContinuation();
45283
+ yield { type: "retry" /* RETRY */ };
45284
+ suppressNextRetryEvent = true;
45285
+ rearmQuietAcceptanceIfBudgetSpent();
45286
+ continue;
45287
+ }
45288
+ }
45175
45289
  let attemptedPayloadRecovery = false;
45176
45290
  let payloadRecoveryNoop = false;
45177
45291
  let payloadRecoveryThrew = false;
@@ -46775,6 +46889,102 @@ function lastHistoryContentFromRecords(records) {
46775
46889
  }
46776
46890
  __name(lastHistoryContentFromRecords, "lastHistoryContentFromRecords");
46777
46891
 
46892
+ // packages/core/src/omni/media-guidance.ts
46893
+ init_esbuild_shims();
46894
+ var MEDIA_TOOL_CAPABILITIES = [
46895
+ [
46896
+ ToolNames.OMNI_CLIP_VIDEO,
46897
+ "cut a specific time range out of a video (startSec/durationSec) \u2014 the primary way to inspect parts of a long video that were not delivered"
46898
+ ],
46899
+ [
46900
+ ToolNames.OMNI_UNDERSTAND_VIDEO_SEGMENTS,
46901
+ "understand a long video end to end: fixed-length segments described in parallel by an omni model, assembled into a time-labeled text summary"
46902
+ ],
46903
+ [
46904
+ ToolNames.OMNI_EXTRACT_KEYFRAMES,
46905
+ "extract still frames from a video (clip a range first to sample frames from a specific segment)"
46906
+ ],
46907
+ [
46908
+ ToolNames.OMNI_DOWNSCALE_VIDEO,
46909
+ "re-encode a video at lower resolution / frame rate to fit transport limits"
46910
+ ],
46911
+ [
46912
+ ToolNames.OMNI_EXTRACT_AUDIO,
46913
+ "extract the audio track from a video for listening or transcription"
46914
+ ],
46915
+ [
46916
+ ToolNames.OMNI_TRANSCRIBE_AUDIO,
46917
+ "transcribe speech in an audio file to text"
46918
+ ],
46919
+ [
46920
+ ToolNames.OMNI_CAPTION_AUDIO,
46921
+ "describe an audio file semantically (speech gist, timbre, sound events, mood) \u2014 understanding, not verbatim transcription"
46922
+ ],
46923
+ [
46924
+ ToolNames.OMNI_CLIP_AUDIO,
46925
+ "cut a specific time range out of an audio file (startMs/durationMs)"
46926
+ ],
46927
+ [
46928
+ ToolNames.OMNI_DOWNSAMPLE_AUDIO,
46929
+ "re-encode audio at a lower bitrate/sample rate"
46930
+ ],
46931
+ [ToolNames.OMNI_DOWNSAMPLE_IMAGE, "shrink an image to a smaller resolution"],
46932
+ [ToolNames.OMNI_CONVERT_IMAGE, "convert an image to another format"],
46933
+ [
46934
+ ToolNames.OMNI_CLIP_IMAGE,
46935
+ "crop a pixel rectangle (x/y/width/height) out of an image"
46936
+ ],
46937
+ [
46938
+ ToolNames.OMNI_CAPTION_IMAGE,
46939
+ "describe an image with a VL model under a custom prompt, turning visual content into text"
46940
+ ],
46941
+ [
46942
+ ToolNames.OMNI_OCR_IMAGE,
46943
+ "extract the text visible in an image (OCR), with automatic language detection"
46944
+ ]
46945
+ ];
46946
+ function collectPolicyDescriptions(config3) {
46947
+ const policies = config3.getOmniProcessingConfig?.()?.fixedPolicies;
46948
+ if (!policies) return [];
46949
+ return [...policies].sort((a, b2) => b2.priority - a.priority || a.id.localeCompare(b2.id)).map((p2) => p2.description).filter((d) => typeof d === "string" && d.length > 0);
46950
+ }
46951
+ __name(collectPolicyDescriptions, "collectPolicyDescriptions");
46952
+ function buildOmniMediaGuidanceSection(config3) {
46953
+ if (!isOmniDeliveryActive(config3)) return null;
46954
+ const enabledTools = MEDIA_TOOL_CAPABILITIES.filter(
46955
+ ([name]) => resolveMediaPolicyModelAccess(config3, name).enabled
46956
+ );
46957
+ const referenceGuidance = `
46958
+ - ${OMNI_RESOURCE_PATH_TEXT_PREFIX}<absolute path>: how a local file you read is referenced. The path is shown VERBATIM \u2014 byte-for-byte the real on-disk path \u2014 so you can re-read it or point the media tools at it directly.
46959
+ - ${OMNI_RESOURCE_HANDLE_TEXT_PREFIX}<name>\uFF1A<handle>: how media with no path you can see (tool results, URLs, recalled memory) is referenced \u2014 <handle> is an opaque session handle.
46960
+ - Pass whichever reference you were shown to the media tools below: an absolute path as \`inputPath\`, an opaque session handle as \`resourceId\`.`;
46961
+ const recallGuidance = config3.getOmniMemoryConfig?.()?.recall.mode === "active" ? `
46962
+ - BEFORE reprocessing media (extracting frames, transcribing, clipping), call \`${ToolNames.OMNI_RECALL_MEDIA_MEMORY}\` with that <ref>: earlier sessions may already have produced the transcript, keyframes or excerpt you need, and it returns instantly. It also reports honest gaps \u2014 which channels were never processed \u2014 and can suggest which tool closes them.` : "";
46963
+ const policyDescriptions = collectPolicyDescriptions(config3);
46964
+ const policyGuidance = policyDescriptions.length > 0 ? `
46965
+
46966
+ The media reaching you is shaped by these automatic preprocessing policies (they run in this order):
46967
+ ${policyDescriptions.map((d) => `- ${d}`).join("\n")}` : "";
46968
+ const toolGuidance = enabledTools.length > 0 ? `- When the task needs evidence beyond what was delivered \u2014 later time ranges, finer visual detail, more frames, a fuller transcript \u2014 do not stop at the delivered subset: fetch the evidence yourself with the media tools below, then read the produced file(s) to bring them into context. Work in targeted excerpts (a specific time range or region at a time) so each request stays within limits, and iterate until you have seen enough to complete the task.
46969
+ - Available media tools:
46970
+ ${enabledTools.map(([name, capability]) => ` - ${name}: ${capability}`).join("\n")}` : `- No media tools are enabled in this session. When the delivered evidence does not cover what the task needs, say explicitly which part of the media you could not observe instead of extrapolating from the delivered subset.`;
46971
+ return `# Media Delivery (Progressive Understanding)
46972
+
46973
+ Media files in this session reach you through a preprocessing pipeline that must fit them into transport and context-window limits. Large or long media is therefore delivered in reduced form on purpose: this is a progressive-understanding strategy \u2014 you first get an affordable overview, then fetch the specific higher-fidelity evidence the task needs. Every transformation is disclosed in a text part placed immediately BEFORE the media it describes:
46974
+
46975
+ - ${OMNI_DISCLOSURE_TEXT_PREFIX}<file>: the adjacent media is a degraded derivative (clipped, downscaled, resampled, or keyframes); the marker states exactly what was reduced.
46976
+ - ${OMNI_OMISSION_TEXT_PREFIX}<file>: the media could not be delivered at all; the notice stands in its place.
46977
+ - ${OMNI_TRANSCRIPT_TEXT_PREFIX}<file>: text derived from the media (e.g. a speech transcript), possibly delivered instead of the media itself.
46978
+ ${referenceGuidance}${recallGuidance}
46979
+
46980
+ Interpret delivered media under this contract:
46981
+
46982
+ - A degraded delivery is an OVERVIEW or entry point, not the complete content. The original file on disk is untouched and remains fully available for further processing.
46983
+ - Never conclude that content outside the delivered portion does not exist, and never present conclusions drawn from a partial delivery as covering the whole file. Read each disclosure quantitatively: a clip marker covering [0s\u2013600s] of a 4882s video means 4282s exist that you have NOT seen; a keyframe marker tells you which timestamps you actually saw.${policyGuidance}
46984
+ ${toolGuidance}`;
46985
+ }
46986
+ __name(buildOmniMediaGuidanceSection, "buildOmniMediaGuidanceSection");
46987
+
46778
46988
  // packages/core/src/services/loopDetectionService.ts
46779
46989
  init_esbuild_shims();
46780
46990
  import { createHash as createHash4 } from "node:crypto";
@@ -48593,6 +48803,13 @@ init_esbuild_shims();
48593
48803
 
48594
48804
  // packages/core/src/tools/agent/agent.ts
48595
48805
  init_esbuild_shims();
48806
+
48807
+ // packages/core/src/goals/goal-turn-context.ts
48808
+ init_esbuild_shims();
48809
+ import { AsyncLocalStorage as AsyncLocalStorage2 } from "node:async_hooks";
48810
+ var goalTurnContext = new AsyncLocalStorage2();
48811
+
48812
+ // packages/core/src/tools/agent/agent.ts
48596
48813
  import { randomUUID as randomUUID8 } from "node:crypto";
48597
48814
 
48598
48815
  // packages/core/src/agents/runtime/agent-core.ts
@@ -48914,6 +49131,23 @@ function appendAdditionalContext(content, additionalContext) {
48914
49131
  if (typeof content === "string") {
48915
49132
  return content + "\n\n" + additionalContext;
48916
49133
  }
49134
+ const single = Array.isArray(content) && content.length === 1 ? content[0] : content;
49135
+ if (typeof single === "object" && !Array.isArray(single) && single.functionResponse) {
49136
+ const response = single.functionResponse;
49137
+ const updated = {
49138
+ ...single,
49139
+ functionResponse: {
49140
+ ...response,
49141
+ response: {
49142
+ ...response.response,
49143
+ output: `${response.response?.["output"] ?? ""}
49144
+
49145
+ ${additionalContext}`
49146
+ }
49147
+ }
49148
+ };
49149
+ return Array.isArray(content) ? [updated] : updated;
49150
+ }
48917
49151
  if (Array.isArray(content)) {
48918
49152
  return [...content, { text: additionalContext }];
48919
49153
  }
@@ -49097,6 +49331,37 @@ var TOOL_NAME_ALIASES = {
49097
49331
  image_gen: "image_gen",
49098
49332
  ImageGen: "image_gen",
49099
49333
  ImageGenTool: "image_gen",
49334
+ // Omni media tools
49335
+ omni_downsample_image: "omni_downsample_image",
49336
+ DownsampleImage: "omni_downsample_image",
49337
+ omni_downscale_video: "omni_downscale_video",
49338
+ DownscaleVideo: "omni_downscale_video",
49339
+ omni_downsample_audio: "omni_downsample_audio",
49340
+ DownsampleAudio: "omni_downsample_audio",
49341
+ omni_extract_keyframes: "omni_extract_keyframes",
49342
+ ExtractKeyframes: "omni_extract_keyframes",
49343
+ omni_extract_audio: "omni_extract_audio",
49344
+ ExtractAudio: "omni_extract_audio",
49345
+ omni_clip_video: "omni_clip_video",
49346
+ ClipVideo: "omni_clip_video",
49347
+ omni_convert_image: "omni_convert_image",
49348
+ ConvertImage: "omni_convert_image",
49349
+ omni_transcribe_audio: "omni_transcribe_audio",
49350
+ TranscribeAudio: "omni_transcribe_audio",
49351
+ omni_clip_image: "omni_clip_image",
49352
+ ClipImage: "omni_clip_image",
49353
+ omni_clip_audio: "omni_clip_audio",
49354
+ ClipAudio: "omni_clip_audio",
49355
+ omni_caption_image: "omni_caption_image",
49356
+ CaptionImage: "omni_caption_image",
49357
+ omni_caption_audio: "omni_caption_audio",
49358
+ CaptionAudio: "omni_caption_audio",
49359
+ omni_ocr_image: "omni_ocr_image",
49360
+ OcrImage: "omni_ocr_image",
49361
+ omni_understand_video_segments: "omni_understand_video_segments",
49362
+ UnderstandVideoSegments: "omni_understand_video_segments",
49363
+ omni_recall_media_memory: "omni_recall_media_memory",
49364
+ RecallMediaMemory: "omni_recall_media_memory",
49100
49365
  // Tool search tool
49101
49366
  tool_search: "tool_search",
49102
49367
  ToolSearch: "tool_search",
@@ -68131,11 +68396,6 @@ async function evaluateToolInvocationGuard(guard, context2) {
68131
68396
  }
68132
68397
  __name(evaluateToolInvocationGuard, "evaluateToolInvocationGuard");
68133
68398
 
68134
- // packages/core/src/goals/goal-turn-context.ts
68135
- init_esbuild_shims();
68136
- import { AsyncLocalStorage as AsyncLocalStorage2 } from "node:async_hooks";
68137
- var goalTurnContext = new AsyncLocalStorage2();
68138
-
68139
68399
  // packages/core/src/goals/goal-tool-result-provenance.ts
68140
68400
  init_esbuild_shims();
68141
68401
  function goalToolResultProvenance(request) {
@@ -68301,13 +68561,13 @@ function buildExecDescription(plan) {
68301
68561
 
68302
68562
  Use async/await and call registered tools through tools.<name>(args). Calls use the same validation, permissions, approvals, hooks, telemetry, cancellation, concurrency, and output limits as direct tool calls. Tool calls can be composed with Promise.all. Await every tool promise; unawaited calls are cancelled when the script finishes. The exec tool, direct control tools, tool_search, and tool_call are not callable through tools.
68303
68563
 
68304
- Results from skill, update_goal, and capture_screen_context are automatically retained in the exec response; text() is not required to preserve their context. Read loaded skill instructions before taking dependent actions in a later exec call. A terminal update_goal result ends the script and prevents further tool calls.
68564
+ Results from skill, update_goal, and capture_screen_context are automatically retained in the exec response; text() is not required to preserve their context. Read loaded skill instructions before taking dependent actions in a later exec call. A terminal update_goal result ends the script and prevents further tool calls. When Omni is enabled, uploaded media and its resource metadata are also automatically retained; a result without content needs no image() call.
68305
68565
 
68306
68566
  Available globals:
68307
68567
  - tools: the code-mode-callable tool functions declared below.
68308
68568
  - ALL_TOOLS: frozen metadata for every function in tools.
68309
68569
  - text(value): append bounded text output. Non-string values are JSON-stringified when possible.
68310
- - image(imageUrlOrItem: string | ImageContent): append an image from a base64 data URL or Qwen MCP ImageContent. To return a nested MCP image, pass an item such as image(result.content[0]).
68570
+ - image(imageUrlOrItem: string | ImageContent): append an image from a base64 data URL or Qwen MCP ImageContent. To return a nested MCP image, emit available items with result.content?.forEach(image).
68311
68571
  - audio(dataUrl: string): append audio from a base64 data URL with an audio MIME type.
68312
68572
  - generatedImage(result: CodeModeToolResult): append the image and saved-path hint returned by Qwen's built-in image_gen tool, for example generatedImage(await tools.image_gen({ prompt: '...' })).
68313
68573
  - setTimeout(callback: () => void, delayMs?: number): schedule a callback to run later and return a timeout id. Pending timeouts do not keep exec alive by themselves; await an explicit promise if you need to wait for one.
@@ -69231,12 +69491,24 @@ var CoreToolScheduler = class _CoreToolScheduler {
69231
69491
  compactResultDisplayForInteractiveHistory(resultDisplay) {
69232
69492
  return typeof this.config.isInteractive === "function" && this.config.isInteractive() ? compactToolResultDisplayForHistory(resultDisplay) : resultDisplay;
69233
69493
  }
69234
- async processToolResultImages(responseParts, signal) {
69494
+ async processToolResultImages(responseParts, signal, executionOrigin) {
69495
+ if (executionOrigin?.kind === "fixed_policy") {
69496
+ return { responseParts };
69497
+ }
69235
69498
  let modelOverride;
69236
69499
  const notices = [];
69500
+ let omniProcessed = responseParts;
69501
+ if (this.config.isOmniEnabled?.()) {
69502
+ const { processToolResultOmniMedia } = await import("./tool-result-media-AR44HFUC.js");
69503
+ omniProcessed = await processToolResultOmniMedia(
69504
+ responseParts,
69505
+ this.config,
69506
+ signal
69507
+ );
69508
+ }
69237
69509
  const processedParts = await bridgeToolResultImages({
69238
69510
  config: this.config,
69239
- responseParts,
69511
+ responseParts: omniProcessed,
69240
69512
  signal,
69241
69513
  onFullTurnModel: /* @__PURE__ */ __name((model) => {
69242
69514
  if (!this.onToolResultFullTurnModel?.(model)) return false;
@@ -69924,7 +70196,7 @@ var CoreToolScheduler = class _CoreToolScheduler {
69924
70196
  continue;
69925
70197
  }
69926
70198
  const canonicalName = canonicalToolName(reqInfo.name);
69927
- if (this.config.getToolMode?.() === ToolMode.CodeModeOnly && !isCodeModeToolCallAllowed(canonicalName, reqInfo.source ?? "model")) {
70199
+ if (this.config.getToolMode?.() === ToolMode.CodeModeOnly && reqInfo.executionOrigin?.kind !== "fixed_policy" && !isCodeModeToolCallAllowed(canonicalName, reqInfo.source ?? "model")) {
69928
70200
  newToolCalls.push({
69929
70201
  status: "error",
69930
70202
  request: reqInfo,
@@ -70052,11 +70324,32 @@ var CoreToolScheduler = class _CoreToolScheduler {
70052
70324
  });
70053
70325
  continue;
70054
70326
  }
70327
+ const policyGate = evaluateMediaPolicyToolCall({
70328
+ config: this.config,
70329
+ tool: toolInstance,
70330
+ args: reqInfo.args,
70331
+ executionOrigin: reqInfo.executionOrigin
70332
+ });
70333
+ if (policyGate.outcome === "reject") {
70334
+ newToolCalls.push({
70335
+ status: "error",
70336
+ request: reqInfo,
70337
+ tool: toolInstance,
70338
+ response: createErrorResponse(
70339
+ reqInfo,
70340
+ new Error(policyGate.message),
70341
+ policyGate.reason === "invalid_params" ? "invalid_tool_params" /* INVALID_TOOL_PARAMS */ : "execution_denied" /* EXECUTION_DENIED */,
70342
+ "not_started"
70343
+ ),
70344
+ durationMs: 0
70345
+ });
70346
+ continue;
70347
+ }
70055
70348
  const invocationOrError = runInRequestGoalContext(
70056
70349
  reqInfo,
70057
70350
  () => this.buildInvocation(
70058
70351
  toolInstance,
70059
- reqInfo.args,
70352
+ policyGate.args,
70060
70353
  reqInfo.callId,
70061
70354
  reqInfo.prompt_id
70062
70355
  )
@@ -70171,6 +70464,14 @@ var CoreToolScheduler = class _CoreToolScheduler {
70171
70464
  if (this.cancelPreExecutionIfAborted(reqInfo.callId, signal, toolSpan)) {
70172
70465
  continue;
70173
70466
  }
70467
+ if (reqInfo.executionOrigin?.kind === "fixed_policy") {
70468
+ this.setToolCallOutcome(
70469
+ reqInfo.callId,
70470
+ "proceed_always" /* ProceedAlways */
70471
+ );
70472
+ this.setStatusInternal(reqInfo.callId, "scheduled");
70473
+ continue;
70474
+ }
70174
70475
  let toolParams = invocation.params;
70175
70476
  const flowResult = await runInRequestGoalContext(
70176
70477
  reqInfo,
@@ -71555,7 +71856,7 @@ var CoreToolScheduler = class _CoreToolScheduler {
71555
71856
  }
71556
71857
  );
71557
71858
  if (!signal.aborted && !preHookResult.shouldProceed) {
71558
- if (preHookResult.blockType === "ask" && !signal.aborted && this.canPromptForAskBounce()) {
71859
+ if (preHookResult.blockType === "ask" && !signal.aborted && scheduledCall.request.executionOrigin?.kind !== "fixed_policy" && this.canPromptForAskBounce()) {
71559
71860
  this.bouncedToolUseId.set(callId, toolUseId);
71560
71861
  await this.bounceToAwaitingApprovalForAsk(
71561
71862
  scheduledCall,
@@ -72194,7 +72495,8 @@ ${body}
72194
72495
  );
72195
72496
  const processedImages = await this.processToolResultImages(
72196
72497
  convertedResponse,
72197
- signal
72498
+ signal,
72499
+ scheduledCall.request.executionOrigin
72198
72500
  );
72199
72501
  const response = processedImages.responseParts;
72200
72502
  if (response !== convertedResponse) {
@@ -72207,6 +72509,28 @@ ${body}
72207
72509
  ...toolResult.artifacts ?? [],
72208
72510
  ...postToolUseArtifacts ?? []
72209
72511
  ];
72512
+ const policyArtifacts = scheduledCall.tool.mediaPolicyDescriptor && toolResult.artifacts && toolResult.artifacts.length > 0 ? {
72513
+ toolName: canonicalName,
72514
+ invocationId: callId,
72515
+ executionOrigin: scheduledCall.request.executionOrigin ?? {
72516
+ kind: "model"
72517
+ },
72518
+ artifacts: toolResult.artifacts
72519
+ } : void 0;
72520
+ if (policyArtifacts && policyArtifacts.executionOrigin.kind !== "fixed_policy" && scheduledCall.tool.mediaPolicyDescriptor) {
72521
+ const { collectModelPolicyCall } = await import("./model-call-collection-T2WST3W7.js");
72522
+ await collectModelPolicyCall({
72523
+ config: this.config,
72524
+ batch: policyArtifacts,
72525
+ descriptor: scheduledCall.tool.mediaPolicyDescriptor,
72526
+ args: scheduledCall.invocation.params,
72527
+ // The REAL execution window (approval wait excluded). Without
72528
+ // it the record would hold the collection window instead, and
72529
+ // a 98-minute audio extraction reads as 0.6s.
72530
+ ..."executionStartTime" in scheduledCall && typeof scheduledCall.executionStartTime === "number" ? { startedAt: scheduledCall.executionStartTime } : {},
72531
+ signal
72532
+ });
72533
+ }
72210
72534
  const successResponse = {
72211
72535
  callId,
72212
72536
  responseParts: response,
@@ -72223,7 +72547,8 @@ ${body}
72223
72547
  ...processedImages.modelOverride !== void 0 ? { modelOverride: processedImages.modelOverride } : "modelOverride" in toolResult ? { modelOverride: toolResult.modelOverride } : {},
72224
72548
  ...toolResult.terminateTurn ? { terminateTurn: true } : {},
72225
72549
  ...processedImages.visionBridgeNotice !== void 0 ? { visionBridgeNotice: processedImages.visionBridgeNotice } : {},
72226
- ...artifacts.length > 0 ? { artifacts } : {}
72550
+ ...artifacts.length > 0 ? { artifacts } : {},
72551
+ ...policyArtifacts ? { policyArtifacts } : {}
72227
72552
  };
72228
72553
  if (canonicalName === ToolNames.EXIT_PLAN_MODE && typeof toolResult.llmContent === "string" && PLAN_EXIT_APPROVED_LLM_CONTENT_PREFIXES.some(
72229
72554
  (prefix) => toolResult.llmContent.startsWith(prefix)
@@ -72356,7 +72681,8 @@ ${failureHookResult.additionalContext}`;
72356
72681
  }
72357
72682
  const processedImages = await this.processToolResultImages(
72358
72683
  responseParts,
72359
- signal
72684
+ signal,
72685
+ scheduledCall.request.executionOrigin
72360
72686
  );
72361
72687
  responseParts = processedImages.responseParts;
72362
72688
  const contentLength = responseParts.reduce((total, part) => {
@@ -72456,7 +72782,8 @@ ${failureHookResult.additionalContext}`;
72456
72782
  ] : errorResponse.responseParts;
72457
72783
  const processedImages = await this.processToolResultImages(
72458
72784
  imageErrorParts,
72459
- signal
72785
+ signal,
72786
+ scheduledCall.request.executionOrigin
72460
72787
  );
72461
72788
  const bridgedErrorParts = processedImages.responseParts;
72462
72789
  if (bridgedErrorParts !== imageErrorParts || this.config.getEffectiveInputModalities?.()?.image === true) {
@@ -78989,6 +79316,7 @@ output_file: ${jsonlPath} (for review after the completion notification, not for
78989
79316
  signal?.addEventListener("abort", onParentAbort, { once: true });
78990
79317
  }
78991
79318
  const fgHookOpts = { ...hookOpts, signal: fgAbortController.signal };
79319
+ const goalPermit = getCurrentAgentId() ? void 0 : goalTurnContext.getStore();
78992
79320
  const runFramed = /* @__PURE__ */ __name(() => this.runWithSubagentSpan(
78993
79321
  this.buildSubagentSpanSpec(hookOpts, subagentConfig, "foreground"),
78994
79322
  fgAbortController.signal,
@@ -79158,6 +79486,12 @@ ${partial3}${wtSuffix}`
79158
79486
  returnDisplay: this.currentDisplay
79159
79487
  };
79160
79488
  } finally {
79489
+ if (goalPermit && subagentConfig.executor === void 0) {
79490
+ this.config.getChatRecordingService()?.billGoalTurnTokens(
79491
+ goalPermit.turnId,
79492
+ subagent.getExecutionSummary().totalTokens
79493
+ );
79494
+ }
79161
79495
  try {
79162
79496
  await cleanupWorktreeIsolation();
79163
79497
  } catch {
@@ -89829,7 +90163,10 @@ var MemoryManager = class {
89829
90163
  }
89830
90164
  track(taskId, promise) {
89831
90165
  this.inFlight.set(taskId, promise);
89832
- void promise.finally(() => this.inFlight.delete(taskId));
90166
+ void promise.then(
90167
+ () => this.inFlight.delete(taskId),
90168
+ () => this.inFlight.delete(taskId)
90169
+ );
89833
90170
  return promise;
89834
90171
  }
89835
90172
  // ─── Extract ──────────────────────────────────────────────────────────────────
@@ -91627,6 +91964,24 @@ var LlmClient = class _LlmClient {
91627
91964
  }
91628
91965
  }
91629
91966
  /** @internal */
91967
+ captureCacheSafeParams() {
91968
+ try {
91969
+ const chat = this.getChat();
91970
+ const historyForCache = this.getHistoryTailShallow(40, true);
91971
+ const cachedHistory = slimCompactionInput(
91972
+ historyForCache,
91973
+ this.config.getEffectiveInputModalities()
91974
+ ).slimmedHistory;
91975
+ saveCacheSafeParams(
91976
+ chat.getGenerationConfig(),
91977
+ cachedHistory,
91978
+ this.config.getModel(),
91979
+ this.config.getSessionId()
91980
+ );
91981
+ } catch {
91982
+ }
91983
+ }
91984
+ /** @internal */
91630
91985
  consumeManagedAutoMemoryRecall(deliveryPoint) {
91631
91986
  return this.tryConsumeMemoryPrefetch(
91632
91987
  deliveryPoint,
@@ -91804,6 +92159,11 @@ var LlmClient = class _LlmClient {
91804
92159
  const base = getMainSessionBaseSystemPrompt(this.config);
91805
92160
  const stableLayers = {
91806
92161
  base,
92162
+ // Progressive media understanding contract: WHY deliveries carry
92163
+ // 【媒体降质】/【媒体省略】/【媒体转写】 markers and how to fetch
92164
+ // fuller evidence. Stable — omni config/provider don't change
92165
+ // in-session — so it belongs inside the cached static prefix.
92166
+ mediaGuidance: buildOmniMediaGuidanceSection(this.config),
91807
92167
  contextFiles: this.config.getUserMemory(),
91808
92168
  appendPrompt: this.config.getAppendSystemPrompt()
91809
92169
  };
@@ -93459,6 +93819,25 @@ The current date is: ${today}. Note: This is the authoritative current date \u20
93459
93819
  if (userQueryMemory?.prompt) {
93460
93820
  systemReminders.unshift(userQueryMemory.prompt);
93461
93821
  }
93822
+ if (this.config.isOmniEnabled?.()) {
93823
+ const { runOmniMemorySideQuery, formatOmniMemorySideQueryReminder } = await import("./memory-side-query-DRV7FXK4.js");
93824
+ const omniRecall = await runOmniMemorySideQuery({
93825
+ config: this.config,
93826
+ requestParts: requestToSend,
93827
+ promptId: prompt_id,
93828
+ ...signal !== void 0 ? { signal } : {}
93829
+ });
93830
+ if (omniRecall?.result) {
93831
+ systemReminders.push(
93832
+ formatOmniMemorySideQueryReminder(omniRecall.result)
93833
+ );
93834
+ this.config.getChatRecordingService()?.recordOmniRecallReminder(omniRecall.result);
93835
+ } else if (omniRecall?.reason) {
93836
+ debugLogger63.debug(
93837
+ `omni passive media-memory recall degraded (${omniRecall.reason}) for ${omniRecall.resourceIds.length} resource(s)`
93838
+ );
93839
+ }
93840
+ }
93462
93841
  requestToSend = [...systemReminders, ...requestToSend];
93463
93842
  }
93464
93843
  if (messageType === "retry" /* Retry */ || messageType === "cron" /* Cron */ || messageType === "notification" /* Notification */ || messageType === "teammate" /* Teammate */) {
@@ -93965,25 +94344,7 @@ The current date is: ${today}. Note: This is the authoritative current date \u20
93965
94344
  return turn;
93966
94345
  }
93967
94346
  if (!turn.pendingToolCalls.length && signal && !signal.aborted) {
93968
- try {
93969
- const chat = this.getChat();
93970
- const maxHistoryForCache = 40;
93971
- const historyForCache = this.getHistoryTailShallow(
93972
- maxHistoryForCache,
93973
- true
93974
- );
93975
- const cachedHistory = slimCompactionInput(
93976
- historyForCache,
93977
- this.config.getEffectiveInputModalities()
93978
- ).slimmedHistory;
93979
- saveCacheSafeParams(
93980
- chat.getGenerationConfig(),
93981
- cachedHistory,
93982
- this.config.getModel(),
93983
- this.config.getSessionId()
93984
- );
93985
- } catch {
93986
- }
94347
+ this.captureCacheSafeParams();
93987
94348
  if (this.config.getSkipNextSpeakerCheck()) {
93988
94349
  if (!isGoalRuntimeTurn) {
93989
94350
  this.runManagedAutoMemoryBackgroundTasks(messageType);
@@ -125896,7 +126257,7 @@ var HybridTokenStorage = class extends BaseTokenStorage {
125896
126257
  const forceFileStorage = process.env[FORCE_FILE_STORAGE_ENV_VAR] === "true";
125897
126258
  if (!forceFileStorage) {
125898
126259
  try {
125899
- const { KeychainTokenStorage: KeychainTokenStorage2 } = await import("./keychain-token-storage-NQ5XWIPX.js");
126260
+ const { KeychainTokenStorage: KeychainTokenStorage2 } = await import("./keychain-token-storage-ZZNRE6D4.js");
125900
126261
  const keychainStorage = new KeychainTokenStorage2(this.serviceName);
125901
126262
  const isAvailable = await keychainStorage.isAvailable();
125902
126263
  if (isAvailable) {
@@ -131483,6 +131844,10 @@ var ToolRegistry = class _ToolRegistry {
131483
131844
  return declarations;
131484
131845
  }
131485
131846
  isToolDeclared(name) {
131847
+ const tool = this.tools.get(name);
131848
+ if (tool && isMediaPolicyToolHiddenFromModel(this.config, tool)) {
131849
+ return false;
131850
+ }
131486
131851
  return name !== ToolNames.PROPOSE_GOAL || this.config.isGoalProposalAvailable();
131487
131852
  }
131488
131853
  /**
@@ -159820,7 +160185,10 @@ function createGoalVerifier(config3, options2 = {}) {
159820
160185
  },
159821
160186
  validate: validateGoalVerifierText
159822
160187
  });
159823
- return parseGoalVerifierText(result.text);
160188
+ return {
160189
+ ...parseGoalVerifierText(result.text),
160190
+ ...result.usage?.totalTokenCount !== void 0 ? { usage: { totalTokenCount: result.usage.totalTokenCount } } : {}
160191
+ };
159824
160192
  } finally {
159825
160193
  clearTimeout(timer);
159826
160194
  }
@@ -164303,6 +164671,35 @@ var Config = class _Config {
164303
164671
  artifactPublisher = "local";
164304
164672
  artifactHost;
164305
164673
  artifactOss;
164674
+ omniEnabled = false;
164675
+ omniMaxUploadFileBytes;
164676
+ omniMaxEstimatedTokens;
164677
+ omniMaxDurationSeconds;
164678
+ omniUrlDownloadMaxFileBytes;
164679
+ omniUploadUrlTtlHours;
164680
+ omniUploadBaseUrl;
164681
+ omniUploadApiKeyEnv;
164682
+ omniUploadModel;
164683
+ omniUploadConfig;
164684
+ omniPolicyTools;
164685
+ omniFixedPolicies;
164686
+ omniTransportGuardPolicies;
164687
+ omniProcessingLimits;
164688
+ omniQuarantineRetentionDays;
164689
+ omniStorageRetentionDays;
164690
+ omniStorageMaxTotalBytes;
164691
+ omniQuarantineMaxBytes;
164692
+ omniMemory;
164693
+ /** Normalized `omni.processing` view; set once during initialize()
164694
+ * (after the tool registry exists) when omni is enabled. */
164695
+ omniProcessingConfig;
164696
+ /** Normalized `omni.memory` view; set once during initialize() when
164697
+ * omni is enabled. */
164698
+ omniMemoryConfig;
164699
+ /** Session-lifetime binder between persistent media-memory identities
164700
+ * and the opaque resource handles the model sees (M §5.2); created
164701
+ * lazily on first use, never persisted. */
164702
+ omniMediaResourceRegistry;
164306
164703
  workflowsEnabled;
164307
164704
  sessionWorkflowEnabled;
164308
164705
  sessionWorkflowEnabledProvider;
@@ -164618,6 +165015,24 @@ var Config = class _Config {
164618
165015
  this.artifactPublisher = params.artifactPublisher ?? "local";
164619
165016
  this.artifactHost = params.artifactHost;
164620
165017
  this.artifactOss = params.artifactOss;
165018
+ this.omniEnabled = params.omniEnabled ?? false;
165019
+ this.omniMaxUploadFileBytes = params.omniMaxUploadFileBytes;
165020
+ this.omniMaxEstimatedTokens = params.omniMaxEstimatedTokens;
165021
+ this.omniMaxDurationSeconds = params.omniMaxDurationSeconds;
165022
+ this.omniUrlDownloadMaxFileBytes = params.omniUrlDownloadMaxFileBytes;
165023
+ this.omniUploadUrlTtlHours = params.omniUploadUrlTtlHours;
165024
+ this.omniUploadBaseUrl = params.omniUploadBaseUrl;
165025
+ this.omniUploadApiKeyEnv = params.omniUploadApiKeyEnv;
165026
+ this.omniUploadModel = params.omniUploadModel;
165027
+ this.omniPolicyTools = params.omniPolicyTools;
165028
+ this.omniFixedPolicies = params.omniFixedPolicies;
165029
+ this.omniTransportGuardPolicies = params.omniTransportGuardPolicies;
165030
+ this.omniProcessingLimits = params.omniProcessingLimits;
165031
+ this.omniQuarantineRetentionDays = params.omniQuarantineRetentionDays;
165032
+ this.omniQuarantineMaxBytes = params.omniQuarantineMaxBytes;
165033
+ this.omniStorageRetentionDays = params.omniStorageRetentionDays;
165034
+ this.omniStorageMaxTotalBytes = params.omniStorageMaxTotalBytes;
165035
+ this.omniMemory = params.omniMemory;
164621
165036
  this.workflowsEnabled = params.workflowsEnabled;
164622
165037
  this.sessionWorkflowEnabled = params.sessionWorkflowEnabled ?? false;
164623
165038
  this.modelProposedGoals = params.modelProposedGoals ?? "alwaysAsk";
@@ -164842,12 +165257,31 @@ var Config = class _Config {
164842
165257
  this.getFileService();
164843
165258
  await this.llmClient.initialize();
164844
165259
  await this.toolRegistry.warmAll({ strict: true });
165260
+ await this.initializeOmniPolicies();
164845
165261
  logStartSession(this, new StartSessionEvent(this));
164846
165262
  this.provisionalWorkspaceActivated = true;
164847
165263
  })();
164848
165264
  this.provisionalWorkspaceActivation = activation;
164849
165265
  return activation;
164850
165266
  }
165267
+ async initializeOmniPolicies() {
165268
+ if (this.isOmniEnabled()) {
165269
+ const { normalizeOmniProcessingConfig } = await import("./config-3X4AXU45.js");
165270
+ this.omniProcessingConfig = normalizeOmniProcessingConfig(
165271
+ {
165272
+ fixedPolicies: this.omniFixedPolicies,
165273
+ transportGuardPolicies: this.omniTransportGuardPolicies,
165274
+ limits: this.omniProcessingLimits,
165275
+ policyTools: this.omniPolicyTools,
165276
+ maxUploadFileBytes: this.omniMaxUploadFileBytes,
165277
+ maxEstimatedTokens: this.omniMaxEstimatedTokens,
165278
+ urlTtlHours: this.omniUploadUrlTtlHours
165279
+ },
165280
+ this.toolRegistry
165281
+ );
165282
+ await this.ensureOmniMemoryConfig();
165283
+ }
165284
+ }
164851
165285
  isProvisionalWorkspace() {
164852
165286
  return this.provisionalWorkspace;
164853
165287
  }
@@ -164899,6 +165333,16 @@ var Config = class _Config {
164899
165333
  this.debugLogger.info("Config initialization started");
164900
165334
  await this.proxyDispatcherReady;
164901
165335
  options2?.signal?.throwIfAborted();
165336
+ if (this.isOmniEnabled()) {
165337
+ const { normalizeDedicatedOmniUploadConfig } = await import("./upload-config-D2T4TIP5.js");
165338
+ this.omniUploadConfig = normalizeDedicatedOmniUploadConfig({
165339
+ baseUrl: this.omniUploadBaseUrl,
165340
+ apiKeyEnv: this.omniUploadApiKeyEnv,
165341
+ model: this.omniUploadModel
165342
+ });
165343
+ const { assertOmniRuntimeDependencies } = await import("./ffmpeg-N4LIIVNR.js");
165344
+ await assertOmniRuntimeDependencies();
165345
+ }
164902
165346
  if (options2?.skipFileCheckpointing === true) {
164903
165347
  this.fileCheckpointingEnabled = false;
164904
165348
  this.fileHistoryService = void 0;
@@ -165327,6 +165771,10 @@ var Config = class _Config {
165327
165771
  options2?.signal?.throwIfAborted();
165328
165772
  recordStartupEvent("config_initialize_tool_warmup_end");
165329
165773
  }
165774
+ if (!this.provisionalWorkspace) {
165775
+ await this.initializeOmniPolicies();
165776
+ options2?.signal?.throwIfAborted();
165777
+ }
165330
165778
  const hasMcpServers = Object.keys(this.getMcpServers() ?? {}).length > 0;
165331
165779
  if (skipInlineMcpDiscovery && (!(this.getBareMode() || this.isSafeMode()) || hasMcpServers) && !this.provisionalWorkspace && !options2?.skipMcpDiscovery) {
165332
165780
  this.startMcpDiscoveryInBackground();
@@ -168713,6 +169161,82 @@ var Config = class _Config {
168713
169161
  getArtifactOssConfig() {
168714
169162
  return this.artifactOss;
168715
169163
  }
169164
+ isOmniEnabled() {
169165
+ if (this.bareMode) return false;
169166
+ if (process8.env["QWEN_CODE_ENABLE_OMNI"] === "1") return true;
169167
+ return this.omniEnabled;
169168
+ }
169169
+ getOmniMaxUploadFileBytes() {
169170
+ return this.omniMaxUploadFileBytes;
169171
+ }
169172
+ getOmniMaxEstimatedTokens() {
169173
+ return this.omniMaxEstimatedTokens;
169174
+ }
169175
+ getOmniMaxDurationSeconds() {
169176
+ return this.omniMaxDurationSeconds;
169177
+ }
169178
+ getOmniUrlDownloadMaxFileBytes() {
169179
+ return this.omniUrlDownloadMaxFileBytes;
169180
+ }
169181
+ getOmniUploadUrlTtlHours() {
169182
+ return this.omniUploadUrlTtlHours;
169183
+ }
169184
+ getOmniUploadConfig() {
169185
+ return this.omniUploadConfig;
169186
+ }
169187
+ getOmniPolicyToolsSettings() {
169188
+ return this.omniPolicyTools;
169189
+ }
169190
+ async loadOmniMediaReader() {
169191
+ return import("./omni-UFBJCHP7.js");
169192
+ }
169193
+ /** Normalized `omni.processing` view. Undefined until tool warmup
169194
+ * completes (or when omni is disabled). */
169195
+ getOmniProcessingConfig() {
169196
+ return this.omniProcessingConfig;
169197
+ }
169198
+ /** Normalized `omni.memory` view. Undefined until initialize()
169199
+ * completes (or when omni is disabled). */
169200
+ getOmniMemoryConfig() {
169201
+ return this.omniMemoryConfig;
169202
+ }
169203
+ /** Normalize `omni.memory` on first use (idempotent). Called from
169204
+ * createToolRegistry — which runs BEFORE initialize()'s omni
169205
+ * normalization block and needs `recall.mode` to gate the recall
169206
+ * tool's registration (D10) — and again from initialize() as a
169207
+ * no-op backstop. Invalid settings throw OmniMemoryConfigError:
169208
+ * startup-fatal on both paths. */
169209
+ async ensureOmniMemoryConfig() {
169210
+ if (!this.omniMemoryConfig) {
169211
+ const { normalizeOmniMemoryConfig } = await import("./config-T5RO4NJV.js");
169212
+ this.omniMemoryConfig = normalizeOmniMemoryConfig(this.omniMemory);
169213
+ }
169214
+ return this.omniMemoryConfig;
169215
+ }
169216
+ /** Session registry binding persistent media-memory identities to the
169217
+ * opaque `resourceId` handles the model references (M §5.2). One
169218
+ * instance per session; a handle is only meaningful in the session
169219
+ * that minted it. */
169220
+ getOmniMediaResourceRegistry() {
169221
+ this.omniMediaResourceRegistry ??= new MediaResourceRegistry();
169222
+ return this.omniMediaResourceRegistry;
169223
+ }
169224
+ getOmniQuarantineRetentionDays() {
169225
+ const days = this.omniQuarantineRetentionDays;
169226
+ return typeof days === "number" && Number.isFinite(days) && days > 0 ? days : 7;
169227
+ }
169228
+ getOmniQuarantineMaxBytes() {
169229
+ const bytes = this.omniQuarantineMaxBytes;
169230
+ return typeof bytes === "number" && Number.isFinite(bytes) && bytes > 0 ? bytes : 5 * 1024 * 1024 * 1024;
169231
+ }
169232
+ getOmniStorageRetentionDays() {
169233
+ const days = this.omniStorageRetentionDays;
169234
+ return typeof days === "number" && Number.isFinite(days) && days >= 1 ? days : 14;
169235
+ }
169236
+ getOmniStorageMaxTotalBytes() {
169237
+ const bytes = this.omniStorageMaxTotalBytes;
169238
+ return typeof bytes === "number" && Number.isFinite(bytes) && bytes > 0 ? bytes : 20 * 1024 * 1024 * 1024;
169239
+ }
168716
169240
  resolveImageGenerationModel(setting) {
168717
169241
  const parsedSetting = parseVisionModelSetting(setting);
168718
169242
  if (!parsedSetting) return void 0;
@@ -170057,7 +170581,7 @@ var Config = class _Config {
170057
170581
  async registerWorkflowTool(registry3) {
170058
170582
  if (registry3.getAllToolNames().includes(ToolNames.WORKFLOW)) return true;
170059
170583
  await this.registerLazyTool(registry3, ToolNames.WORKFLOW, async () => {
170060
- const { WorkflowTool } = await import("./workflow-O7L6VDYU.js");
170584
+ const { WorkflowTool } = await import("./workflow-JBGBS74U.js");
170061
170585
  return new WorkflowTool(this);
170062
170586
  });
170063
170587
  return registry3.getAllToolNames().includes(ToolNames.WORKFLOW);
@@ -170079,7 +170603,7 @@ var Config = class _Config {
170079
170603
  }
170080
170604
  if (status === "disabled") return;
170081
170605
  const factory = /* @__PURE__ */ __name(async () => {
170082
- const { ImageGenTool } = await import("./image-gen-HIAZCB5T.js");
170606
+ const { ImageGenTool } = await import("./image-gen-LX3C4V3R.js");
170083
170607
  return new ImageGenTool(this);
170084
170608
  }, "factory");
170085
170609
  if (status === "deferred") {
@@ -170106,7 +170630,7 @@ var Config = class _Config {
170106
170630
  return;
170107
170631
  }
170108
170632
  const factory = /* @__PURE__ */ __name(async () => {
170109
- const { RecordSourceTool } = await import("./record-source-2GSY5JD5.js");
170633
+ const { RecordSourceTool } = await import("./record-source-2VSQINX6.js");
170110
170634
  return new RecordSourceTool(this);
170111
170635
  }, "factory");
170112
170636
  if (status === "deferred") {
@@ -170130,23 +170654,23 @@ var Config = class _Config {
170130
170654
  if (options2?.forSubAgent) return;
170131
170655
  const schema = this.jsonSchema;
170132
170656
  await registerLazy(ToolNames.STRUCTURED_OUTPUT, async () => {
170133
- const { SyntheticOutputTool } = await import("./syntheticOutput-EX5L5GYI.js");
170657
+ const { SyntheticOutputTool } = await import("./syntheticOutput-SSXJ2NEY.js");
170134
170658
  return new SyntheticOutputTool(schema);
170135
170659
  });
170136
170660
  }, "registerStructuredOutputIfRequested");
170137
170661
  const registerGoalWorkerTools = /* @__PURE__ */ __name(async () => {
170138
170662
  if (options2?.forSubAgent) return;
170139
170663
  await registerLazy(ToolNames.GET_GOAL, async () => {
170140
- const { GetGoalTool: GetGoalTool2 } = await import("./goal-tools-HXVVLGCV.js");
170664
+ const { GetGoalTool: GetGoalTool2 } = await import("./goal-tools-MRDETEDG.js");
170141
170665
  return new GetGoalTool2(this);
170142
170666
  });
170143
170667
  await registerLazy(ToolNames.UPDATE_GOAL, async () => {
170144
- const { UpdateGoalTool: UpdateGoalTool2 } = await import("./goal-tools-HXVVLGCV.js");
170668
+ const { UpdateGoalTool: UpdateGoalTool2 } = await import("./goal-tools-MRDETEDG.js");
170145
170669
  return new UpdateGoalTool2(this);
170146
170670
  });
170147
170671
  if (this.getModelProposedGoals() !== "disabled" && (resolveInteractionMode(this) === "interactive" || this.goalProposalHostSupported)) {
170148
170672
  await registerLazy(ToolNames.PROPOSE_GOAL, async () => {
170149
- const { ProposeGoalTool: ProposeGoalTool2 } = await import("./goal-tools-HXVVLGCV.js");
170673
+ const { ProposeGoalTool: ProposeGoalTool2 } = await import("./goal-tools-MRDETEDG.js");
170150
170674
  return new ProposeGoalTool2(this);
170151
170675
  });
170152
170676
  }
@@ -170154,25 +170678,25 @@ var Config = class _Config {
170154
170678
  const registerExecIfEnabled = /* @__PURE__ */ __name(async () => {
170155
170679
  if (this.getToolMode() !== ToolMode.CodeModeOnly) return;
170156
170680
  await registerLazy(ToolNames.EXEC, async () => {
170157
- const { ExecTool } = await import("./exec-RPKEY6HP.js");
170681
+ const { ExecTool } = await import("./exec-7CFNHYCV.js");
170158
170682
  return new ExecTool(this);
170159
170683
  });
170160
170684
  }, "registerExecIfEnabled");
170161
170685
  if (this.getBareMode()) {
170162
170686
  await registerLazy(ToolNames.READ_FILE, async () => {
170163
- const { ReadFileTool } = await import("./read-file-G4XKW2CS.js");
170687
+ const { ReadFileTool } = await import("./read-file-AHNTRU2Y.js");
170164
170688
  return new ReadFileTool(this);
170165
170689
  });
170166
170690
  await registerLazy(ToolNames.EDIT, async () => {
170167
- const { EditTool } = await import("./edit-CMSQB7NP.js");
170691
+ const { EditTool } = await import("./edit-FHINX46M.js");
170168
170692
  return new EditTool(this);
170169
170693
  });
170170
170694
  await registerLazy(ToolNames.NOTEBOOK_EDIT, async () => {
170171
- const { NotebookEditTool } = await import("./notebook-edit-3WCVRNGL.js");
170695
+ const { NotebookEditTool } = await import("./notebook-edit-RE7KXCQT.js");
170172
170696
  return new NotebookEditTool(this);
170173
170697
  });
170174
170698
  await registerLazy(ToolNames.SHELL, async () => {
170175
- const { ShellTool: ShellTool2 } = await import("./shell-IMFUVQQ5.js");
170699
+ const { ShellTool: ShellTool2 } = await import("./shell-2JR3IYUR.js");
170176
170700
  return new ShellTool2(this);
170177
170701
  });
170178
170702
  await registerGoalWorkerTools();
@@ -170186,45 +170710,45 @@ var Config = class _Config {
170186
170710
  await registerExecIfEnabled();
170187
170711
  await registerGoalWorkerTools();
170188
170712
  await registerLazy(ToolNames.TOOL_SEARCH, async () => {
170189
- const { ToolSearchTool } = await import("./tool-search-ZHTJU2MV.js");
170713
+ const { ToolSearchTool } = await import("./tool-search-TPW5GFWD.js");
170190
170714
  return new ToolSearchTool(this);
170191
170715
  });
170192
170716
  await registerLazy(ToolNames.READ_MCP_RESOURCE, async () => {
170193
- const { ReadMcpResourceTool } = await import("./read-mcp-resource-LPSWXVOD.js");
170717
+ const { ReadMcpResourceTool } = await import("./read-mcp-resource-INJIV3UC.js");
170194
170718
  return new ReadMcpResourceTool(this);
170195
170719
  });
170196
170720
  await registerLazy(ToolNames.AGENT, async () => {
170197
- const { AgentTool: AgentTool2 } = await import("./agent-KIHGINKN.js");
170721
+ const { AgentTool: AgentTool2 } = await import("./agent-ZMH75CWL.js");
170198
170722
  return new AgentTool2(this);
170199
170723
  });
170200
170724
  await registerLazy(ToolNames.LIST_AGENTS, async () => {
170201
- const { ListAgentsTool } = await import("./list-agents-EWDCEPIW.js");
170725
+ const { ListAgentsTool } = await import("./list-agents-HS6HH4DJ.js");
170202
170726
  return new ListAgentsTool(this);
170203
170727
  });
170204
170728
  await registerLazy(ToolNames.TASK_STOP, async () => {
170205
- const { TaskStopTool } = await import("./task-stop-MD7P6QGK.js");
170729
+ const { TaskStopTool } = await import("./task-stop-3MXTDL7H.js");
170206
170730
  return new TaskStopTool(this);
170207
170731
  });
170208
170732
  await registerLazy(ToolNames.SEND_MESSAGE, async () => {
170209
- const { SendMessageTool } = await import("./send-message-DN76MXDX.js");
170733
+ const { SendMessageTool } = await import("./send-message-TLF36UW2.js");
170210
170734
  return new SendMessageTool(this);
170211
170735
  });
170212
170736
  await registerLazy(ToolNames.SKILL, async () => {
170213
- const { SkillTool } = await import("./skill-NB5RJGZW.js");
170737
+ const { SkillTool } = await import("./skill-PSCALOSL.js");
170214
170738
  return new SkillTool(this);
170215
170739
  });
170216
170740
  if (this.isLsToolEnabled()) {
170217
170741
  await registerLazy(ToolNames.LS, async () => {
170218
- const { LSTool } = await import("./ls-6ZB3BEIR.js");
170742
+ const { LSTool } = await import("./ls-EZ5PSWU2.js");
170219
170743
  return new LSTool(this);
170220
170744
  });
170221
170745
  }
170222
170746
  await registerLazy(ToolNames.READ_FILE, async () => {
170223
- const { ReadFileTool } = await import("./read-file-G4XKW2CS.js");
170747
+ const { ReadFileTool } = await import("./read-file-AHNTRU2Y.js");
170224
170748
  return new ReadFileTool(this);
170225
170749
  });
170226
170750
  await registerLazy(ToolNames.ZOOM_IMAGE, async () => {
170227
- const { ZoomImageTool } = await import("./zoom-image-RDPRTP4B.js");
170751
+ const { ZoomImageTool } = await import("./zoom-image-AAZNBSUC.js");
170228
170752
  return new ZoomImageTool(this);
170229
170753
  });
170230
170754
  if (this.getUseRipgrep()) {
@@ -170239,7 +170763,7 @@ var Config = class _Config {
170239
170763
  recordStartupEvent("config_initialize_ripgrep_probe_end");
170240
170764
  if (useRipgrep) {
170241
170765
  await registerLazy(ToolNames.GREP, async () => {
170242
- const { RipGrepTool } = await import("./ripGrep-AAKMALLM.js");
170766
+ const { RipGrepTool } = await import("./ripGrep-PA6WLO2B.js");
170243
170767
  return new RipGrepTool(this);
170244
170768
  });
170245
170769
  } else {
@@ -170252,7 +170776,7 @@ var Config = class _Config {
170252
170776
  )
170253
170777
  );
170254
170778
  await registerLazy(ToolNames.GREP, async () => {
170255
- const { GrepTool } = await import("./grep-H2I33VAO.js");
170779
+ const { GrepTool } = await import("./grep-JB5DGQ3B.js");
170256
170780
  return new GrepTool(this);
170257
170781
  });
170258
170782
  }
@@ -170260,84 +170784,84 @@ var Config = class _Config {
170260
170784
  recordStartupEvent("config_initialize_ripgrep_probe_start");
170261
170785
  recordStartupEvent("config_initialize_ripgrep_probe_end");
170262
170786
  await registerLazy(ToolNames.GREP, async () => {
170263
- const { GrepTool } = await import("./grep-H2I33VAO.js");
170787
+ const { GrepTool } = await import("./grep-JB5DGQ3B.js");
170264
170788
  return new GrepTool(this);
170265
170789
  });
170266
170790
  }
170267
170791
  await registerLazy(ToolNames.GLOB, async () => {
170268
- const { GlobTool } = await import("./glob-Z2JMJKKN.js");
170792
+ const { GlobTool } = await import("./glob-5NAEEBJM.js");
170269
170793
  return new GlobTool(this);
170270
170794
  });
170271
170795
  await registerLazy(ToolNames.EDIT, async () => {
170272
- const { EditTool } = await import("./edit-CMSQB7NP.js");
170796
+ const { EditTool } = await import("./edit-FHINX46M.js");
170273
170797
  return new EditTool(this);
170274
170798
  });
170275
170799
  await registerLazy(ToolNames.NOTEBOOK_EDIT, async () => {
170276
- const { NotebookEditTool } = await import("./notebook-edit-3WCVRNGL.js");
170800
+ const { NotebookEditTool } = await import("./notebook-edit-RE7KXCQT.js");
170277
170801
  return new NotebookEditTool(this);
170278
170802
  });
170279
170803
  await registerLazy(ToolNames.WRITE_FILE, async () => {
170280
- const { WriteFileTool } = await import("./write-file-LKX4ETIO.js");
170804
+ const { WriteFileTool } = await import("./write-file-SDHMCIGH.js");
170281
170805
  return new WriteFileTool(this);
170282
170806
  });
170283
170807
  await registerLazy(ToolNames.SHELL, async () => {
170284
- const { ShellTool: ShellTool2 } = await import("./shell-IMFUVQQ5.js");
170808
+ const { ShellTool: ShellTool2 } = await import("./shell-2JR3IYUR.js");
170285
170809
  return new ShellTool2(this);
170286
170810
  });
170287
170811
  if (this.isTodoWriteEnabled()) {
170288
170812
  await registerLazy(ToolNames.TODO_WRITE, async () => {
170289
- const { TodoWriteTool } = await import("./todoWrite-XSTG2VT5.js");
170813
+ const { TodoWriteTool } = await import("./todoWrite-CMBHPR66.js");
170290
170814
  return new TodoWriteTool(this);
170291
170815
  });
170292
170816
  }
170293
170817
  await registerLazy(ToolNames.REPORT_FINDINGS, async () => {
170294
- const { ReportFindingsTool } = await import("./report-findings-LY5HQY4K.js");
170818
+ const { ReportFindingsTool } = await import("./report-findings-OZSLWYAS.js");
170295
170819
  return new ReportFindingsTool();
170296
170820
  });
170297
170821
  const supportsUserInteraction = resolveInteractionMode(this) !== "headless";
170298
170822
  if (supportsUserInteraction) {
170299
170823
  await registerLazy(ToolNames.ASK_USER_QUESTION, async () => {
170300
- const { AskUserQuestionTool: AskUserQuestionTool2 } = await import("./askUserQuestion-AKIRLVB5.js");
170824
+ const { AskUserQuestionTool: AskUserQuestionTool2 } = await import("./askUserQuestion-YFFBB4K3.js");
170301
170825
  return new AskUserQuestionTool2(this);
170302
170826
  });
170303
170827
  }
170304
170828
  if (!this.sdkMode && (supportsUserInteraction || options2?.forSubAgent)) {
170305
170829
  await registerLazy(ToolNames.EXIT_PLAN_MODE, async () => {
170306
- const { ExitPlanModeTool: ExitPlanModeTool2 } = await import("./exitPlanMode-BYBBFN2T.js");
170830
+ const { ExitPlanModeTool: ExitPlanModeTool2 } = await import("./exitPlanMode-KWDS22DD.js");
170307
170831
  return new ExitPlanModeTool2(this);
170308
170832
  });
170309
170833
  }
170310
170834
  if (!this.sdkMode && supportsUserInteraction) {
170311
170835
  await registerLazy(ToolNames.ENTER_PLAN_MODE, async () => {
170312
- const { EnterPlanModeTool } = await import("./enterPlanMode-UDPMNESD.js");
170836
+ const { EnterPlanModeTool } = await import("./enterPlanMode-7HVHC2M6.js");
170313
170837
  return new EnterPlanModeTool(this);
170314
170838
  });
170315
170839
  }
170316
170840
  await registerLazy(ToolNames.ENTER_WORKTREE, async () => {
170317
- const { EnterWorktreeTool } = await import("./enter-worktree-DA6A4XC5.js");
170841
+ const { EnterWorktreeTool } = await import("./enter-worktree-QK7DR5EF.js");
170318
170842
  return new EnterWorktreeTool(this);
170319
170843
  });
170320
170844
  await registerLazy(ToolNames.EXIT_WORKTREE, async () => {
170321
- const { ExitWorktreeTool } = await import("./exit-worktree-4H6Z2VQI.js");
170845
+ const { ExitWorktreeTool } = await import("./exit-worktree-62COYIHF.js");
170322
170846
  return new ExitWorktreeTool(this);
170323
170847
  });
170324
170848
  await registerLazy(ToolNames.WEB_FETCH, async () => {
170325
- const { WebFetchTool } = await import("./web-fetch-O6RG6ISB.js");
170849
+ const { WebFetchTool } = await import("./web-fetch-YBLB4I6G.js");
170326
170850
  return new WebFetchTool(this);
170327
170851
  });
170328
170852
  if (resolveInteractionMode(this) === "interactive" && !this.sdkMode && !this.getScreenReader() && !options2?.forSubAgent) {
170329
170853
  await registerLazy(ToolNames.DISPLAY_IMAGE, async () => {
170330
- const { DisplayImageTool } = await import("./display-image-QTHALY6N.js");
170854
+ const { DisplayImageTool } = await import("./display-image-FTWDRBOP.js");
170331
170855
  return new DisplayImageTool(this);
170332
170856
  });
170333
170857
  }
170334
170858
  const hasExplicitWebSearchBackend = !!this.webSearchSettings?.model?.trim() || !!this.webSearchSettings?.baseUrl;
170335
170859
  if (!this.getBareMode() && !this.isSafeMode() && this.webSearchSettings?.enabled !== false && (this.webSearchSettings?.enabled === true || !hasExplicitWebSearchBackend)) {
170336
- const { evaluateWebSearchGate } = await import("./web-search-JHAXVEMD.js");
170860
+ const { evaluateWebSearchGate } = await import("./web-search-2QJZ4B5R.js");
170337
170861
  const gate = evaluateWebSearchGate(this);
170338
170862
  if (gate.ok) {
170339
170863
  await registerLazy(ToolNames.WEB_SEARCH, async () => {
170340
- const { WebSearchTool } = await import("./web-search-JHAXVEMD.js");
170864
+ const { WebSearchTool } = await import("./web-search-2QJZ4B5R.js");
170341
170865
  return new WebSearchTool(this);
170342
170866
  });
170343
170867
  } else if (!gate.silent && !this.webSearchNoticeEmitted && !options2?.forSubAgent) {
@@ -170348,7 +170872,7 @@ var Config = class _Config {
170348
170872
  await this.registerImageGenerationTool(registry3);
170349
170873
  if (this.isArtifactEnabled()) {
170350
170874
  await registerLazy(ToolNames.ARTIFACT, async () => {
170351
- const { ArtifactTool } = await import("./artifact-tool-MUTNH4NI.js");
170875
+ const { ArtifactTool } = await import("./artifact-tool-3MWM6SN2.js");
170352
170876
  return new ArtifactTool(this);
170353
170877
  });
170354
170878
  }
@@ -170357,78 +170881,148 @@ var Config = class _Config {
170357
170881
  }
170358
170882
  if (this.isRecordArtifactEnabled()) {
170359
170883
  await registerLazy(ToolNames.RECORD_ARTIFACT, async () => {
170360
- const { RecordArtifactTool } = await import("./record-artifact-L3CFJOMA.js");
170884
+ const { RecordArtifactTool } = await import("./record-artifact-KKW3AIMJ.js");
170361
170885
  return new RecordArtifactTool(this);
170362
170886
  });
170363
170887
  }
170364
170888
  if (this.isLspEnabled() && this.getLspClient()) {
170365
170889
  await registerLazy(ToolNames.LSP, async () => {
170366
- const { LspTool } = await import("./lsp-M54FQARP.js");
170890
+ const { LspTool } = await import("./lsp-DYFFHKB3.js");
170367
170891
  return new LspTool(this);
170368
170892
  });
170369
170893
  }
170370
170894
  await registerStructuredOutputIfRequested();
170371
170895
  if (this.isCronEnabled()) {
170372
170896
  await registerLazy(ToolNames.CRON_CREATE, async () => {
170373
- const { CronCreateTool } = await import("./cron-create-U2JJ5CCF.js");
170897
+ const { CronCreateTool } = await import("./cron-create-GS7ORRO6.js");
170374
170898
  return new CronCreateTool(this);
170375
170899
  });
170376
170900
  await registerLazy(ToolNames.CRON_LIST, async () => {
170377
- const { CronListTool } = await import("./cron-list-VCUSZK2Y.js");
170901
+ const { CronListTool } = await import("./cron-list-EX27DW4H.js");
170378
170902
  return new CronListTool(this);
170379
170903
  });
170380
170904
  await registerLazy(ToolNames.CRON_DELETE, async () => {
170381
- const { CronDeleteTool } = await import("./cron-delete-7DM4LJWD.js");
170905
+ const { CronDeleteTool } = await import("./cron-delete-3GGDNNXD.js");
170382
170906
  return new CronDeleteTool(this);
170383
170907
  });
170384
170908
  await registerLazy(ToolNames.LOOP_WAKEUP, async () => {
170385
- const { LoopWakeupTool } = await import("./loop-wakeup-ZBVRI6VH.js");
170909
+ const { LoopWakeupTool } = await import("./loop-wakeup-4B7OY3TV.js");
170386
170910
  return new LoopWakeupTool(this);
170387
170911
  });
170388
170912
  }
170389
170913
  if (this.getSubSessionSpawner()) {
170390
170914
  await registerLazy(ToolNames.CREATE_SUB_SESSION, async () => {
170391
- const { CreateSubSessionTool } = await import("./create-sub-session-MSGNIM37.js");
170915
+ const { CreateSubSessionTool } = await import("./create-sub-session-6EDEANCD.js");
170392
170916
  return new CreateSubSessionTool(this);
170393
170917
  });
170394
170918
  }
170395
170919
  if (this.isAgentTeamEnabled()) {
170396
170920
  await registerLazy(ToolNames.TEAM_CREATE, async () => {
170397
- const { TeamCreateTool } = await import("./team-create-2XTBYRJF.js");
170921
+ const { TeamCreateTool } = await import("./team-create-OAYVDCOC.js");
170398
170922
  return new TeamCreateTool(this);
170399
170923
  });
170400
170924
  await registerLazy(ToolNames.TEAM_DELETE, async () => {
170401
- const { TeamDeleteTool } = await import("./team-delete-RIDINW6I.js");
170925
+ const { TeamDeleteTool } = await import("./team-delete-V2CROTI6.js");
170402
170926
  return new TeamDeleteTool(this);
170403
170927
  });
170404
170928
  await registerLazy(ToolNames.TEAM_PLAN_APPROVAL, async () => {
170405
- const { TeamPlanApprovalTool } = await import("./team-plan-approval-CFNWW7ZQ.js");
170929
+ const { TeamPlanApprovalTool } = await import("./team-plan-approval-MHGCYWEQ.js");
170406
170930
  return new TeamPlanApprovalTool(this);
170407
170931
  });
170408
170932
  if (!options2?.forSubAgent) {
170409
170933
  await registerLazy(ToolNames.REQUEST_SHUTDOWN, async () => {
170410
- const { RequestShutdownTool } = await import("./request-shutdown-53SNYGVR.js");
170934
+ const { RequestShutdownTool } = await import("./request-shutdown-3RUGTWRR.js");
170411
170935
  return new RequestShutdownTool(this);
170412
170936
  });
170413
170937
  }
170414
170938
  await registerLazy(ToolNames.TASK_CREATE, async () => {
170415
- const { TaskCreateTool } = await import("./task-create-75HVPEAH.js");
170939
+ const { TaskCreateTool } = await import("./task-create-EEMYF6LY.js");
170416
170940
  return new TaskCreateTool(this);
170417
170941
  });
170418
170942
  await registerLazy(ToolNames.TASK_UPDATE, async () => {
170419
- const { TaskUpdateTool } = await import("./task-update-3LSYQDRW.js");
170943
+ const { TaskUpdateTool } = await import("./task-update-JSBHKL4L.js");
170420
170944
  return new TaskUpdateTool(this);
170421
170945
  });
170422
170946
  await registerLazy(ToolNames.TASK_LIST, async () => {
170423
- const { TaskListTool } = await import("./task-list-ZLJSMRFA.js");
170947
+ const { TaskListTool } = await import("./task-list-GA5GOR74.js");
170424
170948
  return new TaskListTool(this);
170425
170949
  });
170426
170950
  }
170427
170951
  if (this.isWorkflowsEnabled()) {
170428
170952
  await this.registerWorkflowTool(registry3);
170429
170953
  }
170954
+ if (this.isOmniEnabled()) {
170955
+ const omniPolicyToolFactories = [
170956
+ [
170957
+ ToolNames.OMNI_DOWNSAMPLE_IMAGE,
170958
+ async () => new (await import("./downsample-image-A5JEYIV5.js")).OmniDownsampleImageTool(this)
170959
+ ],
170960
+ [
170961
+ ToolNames.OMNI_DOWNSCALE_VIDEO,
170962
+ async () => new (await import("./downscale-video-4W5BX5KO.js")).OmniDownscaleVideoTool(this)
170963
+ ],
170964
+ [
170965
+ ToolNames.OMNI_DOWNSAMPLE_AUDIO,
170966
+ async () => new (await import("./downsample-audio-LPDWX6GF.js")).OmniDownsampleAudioTool(this)
170967
+ ],
170968
+ [
170969
+ ToolNames.OMNI_EXTRACT_KEYFRAMES,
170970
+ async () => new (await import("./extract-keyframes-Q6DRMQAJ.js")).OmniExtractKeyframesTool(this)
170971
+ ],
170972
+ [
170973
+ ToolNames.OMNI_EXTRACT_AUDIO,
170974
+ async () => new (await import("./extract-audio-GSSZQV6G.js")).OmniExtractAudioTool(this)
170975
+ ],
170976
+ [
170977
+ ToolNames.OMNI_CLIP_VIDEO,
170978
+ async () => new (await import("./clip-video-JIRMV5IH.js")).OmniClipVideoTool(this)
170979
+ ],
170980
+ [
170981
+ ToolNames.OMNI_CONVERT_IMAGE,
170982
+ async () => new (await import("./convert-image-D52K2FFB.js")).OmniConvertImageTool(this)
170983
+ ],
170984
+ [
170985
+ ToolNames.OMNI_TRANSCRIBE_AUDIO,
170986
+ async () => new (await import("./transcribe-audio-AJQZPNEV.js")).OmniTranscribeAudioTool(this)
170987
+ ],
170988
+ [
170989
+ ToolNames.OMNI_CLIP_IMAGE,
170990
+ async () => new (await import("./clip-image-BQRPECIS.js")).OmniClipImageTool(this)
170991
+ ],
170992
+ [
170993
+ ToolNames.OMNI_CLIP_AUDIO,
170994
+ async () => new (await import("./clip-audio-SH4L7AEY.js")).OmniClipAudioTool(this)
170995
+ ],
170996
+ [
170997
+ ToolNames.OMNI_CAPTION_IMAGE,
170998
+ async () => new (await import("./caption-image-B7O4TUFP.js")).OmniCaptionImageTool(this)
170999
+ ],
171000
+ [
171001
+ ToolNames.OMNI_CAPTION_AUDIO,
171002
+ async () => new (await import("./caption-audio-UXXLI3JZ.js")).OmniCaptionAudioTool(this)
171003
+ ],
171004
+ [
171005
+ ToolNames.OMNI_OCR_IMAGE,
171006
+ async () => new (await import("./ocr-image-Q4HYJ3U7.js")).OmniOcrImageTool(this)
171007
+ ],
171008
+ [
171009
+ ToolNames.OMNI_UNDERSTAND_VIDEO_SEGMENTS,
171010
+ async () => new (await import("./understand-video-segments-5TMRDQUB.js")).OmniUnderstandVideoSegmentsTool(this)
171011
+ ]
171012
+ ];
171013
+ for (const [name, factory] of omniPolicyToolFactories) {
171014
+ await registerLazy(name, factory);
171015
+ }
171016
+ const memoryConfig = await this.ensureOmniMemoryConfig();
171017
+ if (memoryConfig.recall.mode === "active") {
171018
+ await registerLazy(ToolNames.OMNI_RECALL_MEDIA_MEMORY, async () => {
171019
+ const { OmniRecallMediaMemoryTool } = await import("./recall-media-memory-tool-PEE2BWRY.js");
171020
+ return new OmniRecallMediaMemoryTool(this);
171021
+ });
171022
+ }
171023
+ }
170430
171024
  await registerLazy(ToolNames.MONITOR, async () => {
170431
- const { MonitorTool } = await import("./monitor-CI7YE7MT.js");
171025
+ const { MonitorTool } = await import("./monitor-WPWA2VK6.js");
170432
171026
  return new MonitorTool(this);
170433
171027
  });
170434
171028
  if (this.pendingMcpBudgetCallback) {
@@ -171329,19 +171923,6 @@ export {
171329
171923
  isTurnResultRecordPayload,
171330
171924
  sleepInhibitor,
171331
171925
  acquireSleepInhibitor,
171332
- ORPHAN_TOOL_USE_REPAIR_REASON,
171333
- repairOrphanedToolUseTurns,
171334
- findRestorableAskUserQuestion,
171335
- restorableAskUserQuestionCallIds,
171336
- lastHistoryContentFromRecords,
171337
- GLOBAL_DUPLICATE_THRESHOLD,
171338
- DEFAULT_MAX_TOOL_CALLS_PER_TURN,
171339
- shouldHaltOnTurnToolCallCap,
171340
- CommitAttributionService,
171341
- ensureAutoMemoryScaffold,
171342
- readAutoMemoryIndex,
171343
- ensureUserAutoMemoryScaffold,
171344
- readUserAutoMemoryIndex,
171345
171926
  generateToolUseId,
171346
171927
  firePreToolUseHook,
171347
171928
  firePostToolUseHook,
@@ -171393,6 +171974,7 @@ export {
171393
171974
  isEditorAvailable,
171394
171975
  createPatchSmart,
171395
171976
  getDiffStat,
171977
+ CommitAttributionService,
171396
171978
  loadPty,
171397
171979
  loadXtermHeadless,
171398
171980
  isUnusableScriptEntry,
@@ -171435,6 +172017,18 @@ export {
171435
172017
  isToolCallConcurrencySafe,
171436
172018
  partitionByConcurrencySafety,
171437
172019
  CoreToolScheduler,
172020
+ ORPHAN_TOOL_USE_REPAIR_REASON,
172021
+ repairOrphanedToolUseTurns,
172022
+ findRestorableAskUserQuestion,
172023
+ restorableAskUserQuestionCallIds,
172024
+ lastHistoryContentFromRecords,
172025
+ GLOBAL_DUPLICATE_THRESHOLD,
172026
+ DEFAULT_MAX_TOOL_CALLS_PER_TURN,
172027
+ shouldHaltOnTurnToolCallCap,
172028
+ ensureAutoMemoryScaffold,
172029
+ readAutoMemoryIndex,
172030
+ ensureUserAutoMemoryScaffold,
172031
+ readUserAutoMemoryIndex,
171438
172032
  AgentEventEmitter,
171439
172033
  ContextState,
171440
172034
  templateString,