@qwen-code/qwen-code 0.22.0 → 0.22.2-nightly.20260828.7357136dd1

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 (483) hide show
  1. package/bundled/computer-use/SKILL.md +229 -0
  2. package/bundled/computer-use/agents/openai.yaml +4 -0
  3. package/bundled/coordinate/SKILL.md +5 -5
  4. package/bundled/goal-draft/SKILL.md +109 -0
  5. package/bundled/qc-helper/docs/configuration/auth.md +7 -7
  6. package/bundled/qc-helper/docs/configuration/model-providers.md +70 -9
  7. package/bundled/qc-helper/docs/configuration/settings.md +48 -48
  8. package/bundled/qc-helper/docs/extension/introduction.md +3 -1
  9. package/bundled/qc-helper/docs/features/_meta.ts +1 -0
  10. package/bundled/qc-helper/docs/features/channels/_meta.ts +1 -0
  11. package/bundled/qc-helper/docs/features/channels/dingtalk.md +12 -0
  12. package/bundled/qc-helper/docs/features/channels/dws.md +120 -0
  13. package/bundled/qc-helper/docs/features/channels/overview.md +37 -6
  14. package/bundled/qc-helper/docs/features/code-review.md +27 -23
  15. package/bundled/qc-helper/docs/features/commands.md +4 -3
  16. package/bundled/qc-helper/docs/features/computer-use.md +57 -51
  17. package/bundled/qc-helper/docs/features/goals.md +58 -0
  18. package/bundled/qc-helper/docs/features/headless.md +13 -11
  19. package/bundled/qc-helper/docs/features/mcp.md +35 -12
  20. package/bundled/qc-helper/docs/features/status-line.md +3 -3
  21. package/bundled/qc-helper/docs/features/sub-agents.md +1 -1
  22. package/bundled/qc-helper/docs/features/worktree.md +1 -1
  23. package/bundled/qc-helper/docs/overview.md +1 -1
  24. package/bundled/qc-helper/docs/quickstart.md +1 -1
  25. package/bundled/qc-helper/docs/qwen-serve.md +29 -6
  26. package/bundled/review/SKILL.md +185 -435
  27. package/bundled/review/references/aone.md +18 -0
  28. package/bundled/review/references/persistence.md +109 -0
  29. package/bundled/review/references/posting.md +272 -0
  30. package/chunks/MaxSizedBox-LMWXCLDV.js +110 -0
  31. package/chunks/{StandaloneSessionPicker-KTHPCSR6.js → StandaloneSessionPicker-W3F7U3JL.js} +87 -88
  32. package/chunks/{acp-startup-profiler-T4GEAPLX.js → acp-startup-profiler-GNYAL6LI.js} +2 -2
  33. package/chunks/{acpAgent-CRY3JZ5O.js → acpAgent-EYZ6EEHD.js} +3223 -2145
  34. package/chunks/agent-RBLGBY65.js +95 -0
  35. package/chunks/agent-headless-L5T4Y4OZ.js +85 -0
  36. package/chunks/{anthropicContentGenerator-Y2OX6LS4.js → anthropicContentGenerator-GMHML35Q.js} +128 -59
  37. package/chunks/{artifact-tool-SBXMTVCB.js → artifact-tool-XSMPHZBT.js} +11 -3
  38. package/chunks/{askUserQuestion-KEQJRFD6.js → askUserQuestion-4SWJY65V.js} +2 -2
  39. package/chunks/bridge-5LR2F2ND.js +119 -0
  40. package/chunks/{ca-D3F4S6NG.js → ca-7HPYOYSZ.js} +3 -0
  41. package/chunks/{channel-management-service-IRTT7RNE.js → channel-management-service-KHR3N6CH.js} +6 -6
  42. package/chunks/channel-settings-store-4FOAZW72.js +120 -0
  43. package/chunks/{channel-worker-group-BJNMR2MP.js → channel-worker-group-6NA6BBZV.js} +9 -7
  44. package/chunks/{channel-worker-manager-EMA7CQDJ.js → channel-worker-manager-NEZ2J6RK.js} +11 -8
  45. package/chunks/{channel-worker-supervisor-F6I6WSWW.js → channel-worker-supervisor-FKU7DIHJ.js} +12 -6
  46. package/chunks/{chunk-HDKCKCYO.js → chunk-23RFD54N.js} +1 -1
  47. package/chunks/{read-package-up-UXSW3YPB.js → chunk-2EAZ43JQ.js} +1 -0
  48. package/chunks/{chunk-KM73TBQ4.js → chunk-2LD5U7Q3.js} +31 -0
  49. package/chunks/{chunk-GIWB5QLV.js → chunk-2SXSLSQE.js} +4 -4
  50. package/chunks/chunk-2TNL5KPM.js +49 -0
  51. package/chunks/chunk-335CJSNF.js +2320 -0
  52. package/chunks/chunk-36LGBEM6.js +130 -0
  53. package/chunks/{chunk-O5BDEWBC.js → chunk-3JXM2CVW.js} +3 -3
  54. package/chunks/{chunk-2E3V7G6Y.js → chunk-3K6TUZHS.js} +55 -50
  55. package/chunks/{chunk-WWUSHZ7M.js → chunk-3OOXT6CR.js} +5 -5
  56. package/chunks/{chunk-2UZJWSVD.js → chunk-3WK3QDNV.js} +2 -2
  57. package/chunks/{chunk-4J7OPYNS.js → chunk-3XOKEVII.js} +6 -6
  58. package/chunks/chunk-3Y34Q3JV.js +1584 -0
  59. package/chunks/{chunk-YMVFIYHV.js → chunk-42IDLQWS.js} +26 -20
  60. package/chunks/{chunk-7HFULI45.js → chunk-454XFGH4.js} +3 -3
  61. package/chunks/chunk-4CMJKUND.js +95 -0
  62. package/chunks/{chunk-XLDFW44M.js → chunk-4K7KNVWH.js} +3 -3
  63. package/chunks/{chunk-YDJRMQU4.js → chunk-4QHPPXK2.js} +16 -8
  64. package/chunks/{chunk-7KOFLDEP.js → chunk-5JTIYALA.js} +1 -1
  65. package/chunks/{chunk-CXJHQVEK.js → chunk-5PA6UEYA.js} +4 -0
  66. package/chunks/{chunk-7NBVNAJJ.js → chunk-62GQFYID.js} +3 -3
  67. package/chunks/{chunk-JGUBDRBC.js → chunk-6DIGWMGT.js} +3 -3
  68. package/chunks/{chunk-X7V3N6YH.js → chunk-6JCGO55P.js} +885 -3380
  69. package/chunks/{chunk-HIK2OF33.js → chunk-6PJOTWAN.js} +1 -1
  70. package/chunks/{chunk-VUMLT7E5.js → chunk-6W2IK5KC.js} +956 -17
  71. package/chunks/{chunk-S4C4JJKE.js → chunk-6ZZBRRKQ.js} +5 -5
  72. package/chunks/{chunk-W4CRPSC5.js → chunk-7EQQR46F.js} +1 -1
  73. package/chunks/{chunk-PHJJ3RVO.js → chunk-7GWQW5ID.js} +7 -15
  74. package/chunks/chunk-7J6OTNGO.js +424 -0
  75. package/chunks/{chunk-URN2JIAQ.js → chunk-7TUBJBBJ.js} +5 -1
  76. package/chunks/{chunk-A5F63FEW.js → chunk-7VD6IPQM.js} +1 -1
  77. package/chunks/{chunk-36OF5PRW.js → chunk-ABS25QER.js} +7 -3
  78. package/chunks/{chunk-UU4WC7DK.js → chunk-AJGR6E6Z.js} +117 -30
  79. package/chunks/{chunk-MQP3MHWN.js → chunk-AU3MMVJF.js} +43 -20
  80. package/chunks/{chunk-ZS5BHEPD.js → chunk-AXC26UCQ.js} +1 -1
  81. package/chunks/{chunk-PDL6LKB5.js → chunk-AY3BNYEQ.js} +1 -1
  82. package/chunks/{chunk-O5Z7EB6Y.js → chunk-AYHQZBJ4.js} +170 -207
  83. package/chunks/{chunk-WRT324N6.js → chunk-B466ZSHZ.js} +3 -3
  84. package/chunks/{chunk-5XHAOUWD.js → chunk-B5OUL5EL.js} +3 -3
  85. package/chunks/{chunk-GAHYKJPV.js → chunk-B5PHIJGI.js} +186 -60
  86. package/chunks/{chunk-IBJ5S45N.js → chunk-B7CDU2SL.js} +2 -2
  87. package/chunks/{chunk-UZPYR3EV.js → chunk-BFPESSTR.js} +1 -1
  88. package/chunks/{chunk-43T5WDQ7.js → chunk-BFSFJR3D.js} +1 -1
  89. package/chunks/{chunk-IWOWEENB.js → chunk-BKWNKLZB.js} +404 -44
  90. package/chunks/{chunk-3CLIDIVQ.js → chunk-BOWFGCEU.js} +3 -3
  91. package/chunks/{chunk-BB5IMQCV.js → chunk-BPAKYXQ3.js} +2 -2
  92. package/chunks/{chunk-ZRYQMWEP.js → chunk-BWORX6FA.js} +2 -2
  93. package/chunks/{chunk-AP3B7LKD.js → chunk-BXDAPVQU.js} +2 -2
  94. package/chunks/{chunk-NUGZAFR2.js → chunk-C2X7KY45.js} +147 -6
  95. package/chunks/{chunk-MZKWFWVG.js → chunk-C3KURPP7.js} +6 -6
  96. package/chunks/{chunk-WZDM44SB.js → chunk-CAJTKR6W.js} +7 -7
  97. package/chunks/{chunk-DB2OKNTU.js → chunk-CFJY4DGX.js} +2 -2
  98. package/chunks/{chunk-QKBYFU2Q.js → chunk-CFKIH3D3.js} +21 -1
  99. package/chunks/{chunk-I432KXWD.js → chunk-CMHFCLBU.js} +1 -1
  100. package/chunks/{create-sub-session-XBCVGNFU.js → chunk-CQH5KTKC.js} +4 -6
  101. package/chunks/{chunk-5HJUPACR.js → chunk-CRKKHXTI.js} +185 -174
  102. package/chunks/{chunk-L4HVF7LM.js → chunk-CYAUBK46.js} +3 -3
  103. package/chunks/{chunk-AZF6SME3.js → chunk-D5LUXLUH.js} +3 -3
  104. package/chunks/{chunk-RPJQ3O4M.js → chunk-DFDWJE6Z.js} +60 -53
  105. package/chunks/{chunk-KSPRQSB4.js → chunk-DIMEPKCW.js} +52 -12
  106. package/chunks/chunk-DJBQCO2E.js +842 -0
  107. package/chunks/{chunk-OVH5Y7KS.js → chunk-DP4MWIM3.js} +19 -3
  108. package/chunks/{chunk-LI4YHTQK.js → chunk-DYXFD5RO.js} +182 -3
  109. package/chunks/{chunk-NW35NVFN.js → chunk-E3XVSVKK.js} +26 -4
  110. package/chunks/{chunk-VSNPOSDN.js → chunk-EB6QRGHM.js} +108 -13
  111. package/chunks/{chunk-FVBVJEBG.js → chunk-EKNBU2X7.js} +10 -8
  112. package/chunks/{chunk-DJEHYM4H.js → chunk-EKSCLBBF.js} +3 -3
  113. package/chunks/{chunk-624NHDGB.js → chunk-ERFDKH32.js} +11 -0
  114. package/chunks/chunk-EW5VVLJT.js +3525 -0
  115. package/chunks/{chunk-T6XLJRQY.js → chunk-EWIQ3NAE.js} +38774 -6955
  116. package/chunks/{chunk-4XPSVIED.js → chunk-FALBWZF4.js} +6 -6
  117. package/chunks/chunk-FBX2SDQ4.js +48 -0
  118. package/chunks/{chunk-VMJL7RH6.js → chunk-FEHMA4RO.js} +539 -651
  119. package/chunks/{chunk-PXOJLJ5W.js → chunk-FMFBLTLY.js} +606 -223
  120. package/chunks/{chunk-ZLCT4C5A.js → chunk-FTF2YIZ5.js} +1 -1
  121. package/chunks/{chunk-IOSEW6KP.js → chunk-G6FECKTJ.js} +9 -6
  122. package/chunks/{chunk-RDG44S5I.js → chunk-GGNE3JAW.js} +2 -2
  123. package/chunks/chunk-GYTKQYDB.js +23 -0
  124. package/chunks/{chunk-B6UBOIFE.js → chunk-H33EQVMG.js} +14 -11
  125. package/chunks/chunk-H72BQNM3.js +645 -0
  126. package/chunks/{chunk-YZBDKFRQ.js → chunk-HGIMWQVT.js} +995 -892
  127. package/chunks/chunk-HOCJDUFY.js +20 -0
  128. package/chunks/{chunk-6UQSU7CQ.js → chunk-HPXV655A.js} +60 -107
  129. package/chunks/{chunk-45NQKMYB.js → chunk-HVC3PNVC.js} +1 -1
  130. package/chunks/{chunk-QJHPWLZC.js → chunk-HYDJDQGJ.js} +1 -1
  131. package/chunks/{chunk-7DMTAQJ6.js → chunk-IB7FQJRY.js} +163 -57
  132. package/chunks/{chunk-AW27A43Y.js → chunk-ICURCKIU.js} +1428 -120
  133. package/chunks/{chunk-4F5WV4RF.js → chunk-ISKH4QX3.js} +288 -15
  134. package/chunks/{chunk-SE55HQGF.js → chunk-J6S24ZJE.js} +92 -70
  135. package/chunks/{chunk-7DYNJFES.js → chunk-JB4JIVTJ.js} +6 -1
  136. package/chunks/{chunk-OARZJFZX.js → chunk-JN4IWWMN.js} +4 -4
  137. package/chunks/{chunk-6PCOVQO2.js → chunk-JUUBLSZU.js} +8 -8
  138. package/chunks/{chunk-FEMQ6Y7W.js → chunk-JWALNCLT.js} +47 -126
  139. package/chunks/{chunk-TBVSALA3.js → chunk-K5KXUXWC.js} +3 -3
  140. package/chunks/{chunk-XYQHT3AW.js → chunk-KTJFDCX4.js} +2 -2
  141. package/chunks/{chunk-6FRJEE2S.js → chunk-LEFCFTEX.js} +6 -6
  142. package/chunks/{chunk-BUGYW6FB.js → chunk-LEGTMYAE.js} +1 -1
  143. package/chunks/{chunk-MPHLIJYL.js → chunk-LLZA2IK3.js} +20 -8
  144. package/chunks/{chunk-BEGIBJAZ.js → chunk-LNETQKBE.js} +4 -4
  145. package/chunks/{chunk-KVGR4MCF.js → chunk-LUEHOUHM.js} +3 -3
  146. package/chunks/{chunk-2A4C2MEG.js → chunk-LVPZO674.js} +35 -12
  147. package/chunks/{chunk-25NESM4G.js → chunk-M4ORUPYI.js} +29 -5
  148. package/chunks/{chunk-VFACN2CE.js → chunk-M6FOJXW3.js} +1 -1
  149. package/chunks/{chunk-FYZMB6DB.js → chunk-MAYHGRP4.js} +12 -12
  150. package/chunks/{chunk-K3LPAED5.js → chunk-MQM5PJML.js} +24 -4
  151. package/chunks/{chunk-ZRFUT5VV.js → chunk-MTJN7FOT.js} +7 -7
  152. package/chunks/{chunk-BGXZBI5B.js → chunk-N4X7G4J2.js} +2 -1
  153. package/chunks/{chunk-2TRNCJK4.js → chunk-NIFYWDYN.js} +1 -1
  154. package/chunks/{chunk-SQS55KR4.js → chunk-NU7RKEZR.js} +2 -2
  155. package/chunks/{chunk-U2UYQMM6.js → chunk-NXMBRVMQ.js} +3 -3
  156. package/chunks/chunk-OI4NY7RA.js +346 -0
  157. package/chunks/{chunk-LURJYO2T.js → chunk-OZ6KS6KW.js} +4 -0
  158. package/chunks/{chunk-K52PZNU4.js → chunk-PDQGMSZK.js} +2 -2
  159. package/chunks/{chunk-PZRUV52H.js → chunk-PPKZ7JOE.js} +20 -2
  160. package/chunks/{chunk-SAH4BD2J.js → chunk-PQEISIKS.js} +67 -0
  161. package/chunks/{chunk-AO4M6NMD.js → chunk-PWIGAMA4.js} +146 -27
  162. package/chunks/{chunk-S3G6YFQC.js → chunk-QFCDF5PL.js} +1 -1
  163. package/chunks/chunk-QHMLYMMS.js +32 -0
  164. package/chunks/{chunk-5XUTPXQU.js → chunk-QPTRRPZU.js} +47 -13
  165. package/chunks/{chunk-UUQFJILB.js → chunk-RFI4YGMR.js} +34 -267
  166. package/chunks/{chunk-A6NRNRKE.js → chunk-RFIDDFAL.js} +1 -1
  167. package/chunks/chunk-RKFGE7JH.js +93 -0
  168. package/chunks/chunk-RNVFRIOO.js +275 -0
  169. package/chunks/{chunk-WU5E4HMO.js → chunk-RU7BK6B3.js} +1 -1
  170. package/chunks/{chunk-J5ZDDUKM.js → chunk-RVXDXY6I.js} +4 -4
  171. package/chunks/{chunk-OE52YHCZ.js → chunk-RWZB422L.js} +11 -11
  172. package/chunks/chunk-RXFQM6FQ.js +42 -0
  173. package/chunks/{chunk-MHG6NDS6.js → chunk-RYNZQGXN.js} +19 -2
  174. package/chunks/{chunk-4CWDWDL6.js → chunk-SJ5ERAW3.js} +1 -1
  175. package/chunks/{chunk-Q54XG7IX.js → chunk-SMPR7SPO.js} +1 -1
  176. package/chunks/{chunk-UIRLQ3N7.js → chunk-SRZZY4IY.js} +3 -3
  177. package/chunks/{chunk-ND7NOI4P.js → chunk-STUJ7IMZ.js} +0 -92
  178. package/chunks/{chunk-VYC7XFYV.js → chunk-SUX7HDNA.js} +5 -5
  179. package/chunks/{chunk-ZZUVC6RI.js → chunk-SVNO44PF.js} +3 -3
  180. package/chunks/{chunk-FDD2IUEL.js → chunk-SZLBBZH4.js} +370 -35
  181. package/chunks/{chunk-GHY5OIYP.js → chunk-T2NKRHZZ.js} +13 -13
  182. package/chunks/chunk-T4EFG2P5.js +113 -0
  183. package/chunks/{chunk-BMCSKS37.js → chunk-TLHUNMO7.js} +6 -6
  184. package/chunks/{chunk-JOLJTKIG.js → chunk-TPI7O7HR.js} +1 -1
  185. package/chunks/{chunk-6QSA4JHL.js → chunk-TQHGJYR3.js} +4492 -1121
  186. package/chunks/{chunk-ISJMN3ML.js → chunk-TTX2JUE6.js} +1 -1
  187. package/chunks/{chunk-EFB657PR.js → chunk-TW3E6YNO.js} +3 -3
  188. package/chunks/{chunk-LD5VIJ7S.js → chunk-TWSKM647.js} +1 -1
  189. package/chunks/chunk-U54AYGEC.js +337 -0
  190. package/chunks/{chunk-A5F2YNO6.js → chunk-UHQFIS7N.js} +260 -10
  191. package/chunks/{chunk-6NFAEG54.js → chunk-UTLCH2FK.js} +24 -13
  192. package/chunks/{chunk-7JBHIQS2.js → chunk-UY3PBNY3.js} +19 -37
  193. package/chunks/{chunk-DWCKACFL.js → chunk-V2NDP3I4.js} +2 -2
  194. package/chunks/{chunk-2GXYDNXP.js → chunk-V2QDDC5J.js} +19 -9
  195. package/chunks/{chunk-VLRBJ24J.js → chunk-V5J4J5TP.js} +2 -2
  196. package/chunks/{chunk-X2UOOG5V.js → chunk-VQUGEVGR.js} +1 -1
  197. package/chunks/{chunk-RDQ7QB4Y.js → chunk-VTHREBQM.js} +2 -2
  198. package/chunks/{chunk-YLFLHKDL.js → chunk-W3N5XAZ6.js} +1 -1
  199. package/chunks/{chunk-62JOGZL5.js → chunk-W6DUQ5GA.js} +11497 -10502
  200. package/chunks/{chunk-P47E4SJC.js → chunk-WALC5VJH.js} +4 -4
  201. package/chunks/{chunk-3ZFJUBTP.js → chunk-WAOIHTJS.js} +1 -1
  202. package/chunks/{chunk-KIVGVFMM.js → chunk-WBHKK3CU.js} +16 -4
  203. package/chunks/{chunk-XZJKSETB.js → chunk-WXEA74YB.js} +3 -3
  204. package/chunks/{chunk-VEND4KA4.js → chunk-X3ZRTCJD.js} +1 -1
  205. package/chunks/{chunk-YRLW2MSX.js → chunk-XBVNNDPK.js} +11 -4
  206. package/chunks/{chunk-XL5K4SVK.js → chunk-XF63PKEN.js} +1 -1
  207. package/chunks/{chunk-LDGWX737.js → chunk-XLLQJRAH.js} +323 -510
  208. package/chunks/{chunk-2Z6LSQMF.js → chunk-XQFT3QUF.js} +1 -1
  209. package/chunks/{chunk-P3QQPMQA.js → chunk-XZA32HII.js} +4 -4
  210. package/chunks/{chunk-C72BXMJ5.js → chunk-Y3QL45LS.js} +1 -1
  211. package/chunks/{chunk-QS4ENGVF.js → chunk-Y4TPOUEV.js} +17 -8
  212. package/chunks/{chunk-AVCCKIZ6.js → chunk-YRZX2PHA.js} +1 -1
  213. package/chunks/{chunk-Z3JMO2CH.js → chunk-YTDVNSUQ.js} +1 -1
  214. package/chunks/{chunk-WS7PAXXR.js → chunk-YWQ237GX.js} +15 -199
  215. package/chunks/chunk-ZELCTN6Y.js +29 -0
  216. package/chunks/{chunk-TQOF5KBL.js → chunk-ZEZKIS2K.js} +0 -31
  217. package/chunks/{chunk-IIWGSX4L.js → chunk-ZTP35P4B.js} +1 -1
  218. package/chunks/{chunk-K623ENWT.js → chunk-ZU4UDIWX.js} +23 -1
  219. package/chunks/chunk-ZYNTSXWK.js +32 -0
  220. package/chunks/config-utils-JVGAP34H.js +113 -0
  221. package/chunks/contextCommand-XDB7OSO7.js +106 -0
  222. package/chunks/{core-runtime-CES6JSVV.js → core-runtime-XHYA2RH7.js} +66 -63
  223. package/chunks/create-sub-session-23ITIELI.js +17 -0
  224. package/chunks/{create-sub-session-UJTPMVOG.js → create-sub-session-MHYCFNCM.js} +168 -87
  225. package/chunks/{cron-create-IKA56DAF.js → cron-create-KJ4IY6PP.js} +57 -10
  226. package/chunks/{cron-delete-K5Q62EGH.js → cron-delete-MBLQCAYY.js} +4 -4
  227. package/chunks/{cron-list-QBFGAMP7.js → cron-list-DWH2PQ47.js} +4 -4
  228. package/chunks/{daemon-RZZUPGOJ.js → daemon-K5XS42ID.js} +567 -27
  229. package/chunks/{daemon-git-worktree-guard-3QY2BQYB.js → daemon-git-worktree-guard-V3P5XLHB.js} +339 -95
  230. package/chunks/daemon-status-provider-KKU7ZTLM.js +117 -0
  231. package/chunks/daemon-trust-policy-TZGK34DW.js +112 -0
  232. package/chunks/{daemon-trust-policy-monitor-TK4K7M63.js → daemon-trust-policy-monitor-F23DD2M4.js} +69 -69
  233. package/chunks/{de-RYUHH2C6.js → de-X6HLSIFE.js} +1 -0
  234. package/chunks/deferred-core-runtime-LKLGBCGZ.js +114 -0
  235. package/chunks/{display-image-OEJMJV3S.js → display-image-BE7I6ZB6.js} +5 -5
  236. package/chunks/{dist-5EV2G6MC.js → dist-4WXLCBDR.js} +1 -1
  237. package/chunks/{dist-ES6HNUW2.js → dist-5VXFRTWU.js} +525 -64
  238. package/chunks/{dist-ESS34DHC.js → dist-6BPYWHVD.js} +89 -65
  239. package/chunks/{dist-2OG3PGKO.js → dist-GFN5DCBX.js} +76 -67
  240. package/chunks/{dist-K7IQB53U.js → dist-HZNT6GQS.js} +1 -1
  241. package/chunks/{dist-J6P3C52Z.js → dist-LVZCXVPF.js} +99 -26
  242. package/chunks/{dist-LZO24N3E.js → dist-N6W6E753.js} +71 -64
  243. package/chunks/dist-QDLFKWOL.js +2512 -0
  244. package/chunks/{dist-VVQBOKDH.js → dist-SWQMYP2Q.js} +18 -16
  245. package/chunks/earlyInputCapture-NERYFYTR.js +107 -0
  246. package/chunks/{edit-A2633SLR.js → edit-ACCATIXB.js} +49 -51
  247. package/chunks/{en-3RHLPITS.js → en-YLXBXM4Z.js} +5 -1
  248. package/chunks/{enter-worktree-OIAHE2TB.js → enter-worktree-35QCAAFP.js} +7 -8
  249. package/chunks/{enterPlanMode-SUGIKLR7.js → enterPlanMode-NEN6EPVM.js} +48 -50
  250. package/chunks/environment-CKWHBC5T.js +129 -0
  251. package/chunks/errors-XTZPNQ77.js +113 -0
  252. package/chunks/{exit-worktree-3UT3SSWT.js → exit-worktree-XQD6D543.js} +7 -8
  253. package/chunks/exitPlanMode-CY344X5J.js +83 -0
  254. package/chunks/{fast-path-3AVP3G35.js → fast-path-YSOX4PAM.js} +31 -10
  255. package/chunks/{fast-path-settings-WHX3J3ZI.js → fast-path-settings-XMFBYFUH.js} +2 -2
  256. package/chunks/{fr-4PL5GHG4.js → fr-FTZWF462.js} +1 -0
  257. package/chunks/{gemini-7PVQWHTH.js → gemini-VQY2YCPH.js} +137 -129
  258. package/chunks/{geminiContentGenerator-B2FOJJDJ.js → geminiContentGenerator-PAPXNIGU.js} +16 -13
  259. package/chunks/{glob-7YGXE6OV.js → glob-GVCUSBBF.js} +48 -50
  260. package/chunks/{goal-tools-TLJCE7YZ.js → goal-tools-5STK6OXW.js} +77 -31
  261. package/chunks/{grep-6DV6LTON.js → grep-5GPICQBU.js} +6 -6
  262. package/chunks/handleAutoUpdate-ZJPJN42W.js +109 -0
  263. package/chunks/i18n-BZYKOST7.js +124 -0
  264. package/chunks/{image-gen-7CSCJ73T.js → image-gen-J6FDGUZP.js} +8 -12
  265. package/chunks/initializer-GO2C5HE3.js +113 -0
  266. package/chunks/installationInfo-WM2GXQZ6.js +107 -0
  267. package/chunks/{ja-HZ7X7PQO.js → ja-2GL5FKYJ.js} +1 -0
  268. package/chunks/{keychain-token-storage-MTFTAESK.js → keychain-token-storage-37XPR34V.js} +2 -2
  269. package/chunks/list-ERDJB7PQ.js +116 -0
  270. package/chunks/{list-agents-43XUEXJV.js → list-agents-DI3YFTDT.js} +2 -2
  271. package/chunks/loadedSettingsAdapter-7JOCVOKV.js +110 -0
  272. package/chunks/{loggingContentGenerator-RNE66CKK.js → loggingContentGenerator-3ONLU3BS.js} +327 -39
  273. package/chunks/{loop-wakeup-E54KDUXC.js → loop-wakeup-XJFONSQ7.js} +5 -5
  274. package/chunks/{ls-CGL2UC3H.js → ls-3VAT2J7A.js} +4 -4
  275. package/chunks/{lsp-5IKUO5DX.js → lsp-5W7IRUBH.js} +2 -2
  276. package/chunks/{managed-npm-update-Y3SC3GLJ.js → managed-npm-update-TLRCC2GE.js} +62 -62
  277. package/chunks/mcp-2LH3QXR2.js +110 -0
  278. package/chunks/{monitor-PXYSGSUN.js → monitor-P7LDAL4W.js} +48 -50
  279. package/chunks/nonInteractiveCli-E5T7PZ27.js +184 -0
  280. package/chunks/{notebook-edit-ISIBJVBR.js → notebook-edit-F7KSG4WQ.js} +49 -51
  281. package/chunks/open-with-auth-4UI3KHUR.js +55 -0
  282. package/chunks/{openaiContentGenerator-6TBOPEGT.js → openaiContentGenerator-2EXCZUGN.js} +29 -32
  283. package/chunks/pidfile-P25DWA5Q.js +111 -0
  284. package/chunks/process-registry-OAEG6WGC.js +662 -0
  285. package/chunks/{processUtils-YK2TDTTU.js → processUtils-PVDKBL35.js} +2 -2
  286. package/chunks/prompt-terminal-ledger-AJ7T7OIV.js +105 -0
  287. package/chunks/{pt-QT5N2Q6Q.js → pt-XN2YWJVM.js} +1 -0
  288. package/chunks/{qwenContentGenerator-CLDMA2Y4.js → qwenContentGenerator-TBBRLWIT.js} +54 -62
  289. package/chunks/{qwenOAuth2-DLDR6UC5.js → qwenOAuth2-OF5WRBQT.js} +7 -11
  290. package/chunks/read-file-6IIY4RLJ.js +32 -0
  291. package/chunks/{read-mcp-resource-XYES2B42.js → read-mcp-resource-XD257PGJ.js} +2 -2
  292. package/chunks/read-package-up-6T6ICKR7.js +13 -0
  293. package/chunks/{record-artifact-W3IBTGL7.js → record-artifact-VW23GS4F.js} +4 -5
  294. package/chunks/report-findings-XA3FJG3N.js +33 -0
  295. package/chunks/request-shutdown-BCLA3JV2.js +133 -0
  296. package/chunks/resumeHistoryUtils-44IETXDY.js +118 -0
  297. package/chunks/ripGrep-E7ESZ7SS.js +39 -0
  298. package/chunks/{ru-STMG5BPD.js → ru-OLTMFJEW.js} +1 -0
  299. package/chunks/{run-qwen-serve-XJHOW2NY.js → run-qwen-serve-DXBCYW7V.js} +924 -356
  300. package/chunks/runtime-RUSPD35D.js +148 -0
  301. package/chunks/scheduled-tasks-DVRJZO6I.js +127 -0
  302. package/chunks/scheduler-TDRB2NSY.js +122 -0
  303. package/chunks/{sdk-exporters-http-RSIOP3G2.js → sdk-exporters-http-TTU2CHBU.js} +5 -5
  304. package/chunks/{sdk-impl-CB3KARSK.js → sdk-impl-UUMVYMAL.js} +12 -6
  305. package/chunks/{send-message-J4VT46OI.js → send-message-AJ4OCUBV.js} +24 -29
  306. package/chunks/serve-KITOM7OR.js +118 -0
  307. package/chunks/{server-74ONDK62.js → server-THCOMUC2.js} +5814 -4549
  308. package/chunks/{session-BO6VBWJP.js → session-XKR5MPXE.js} +152 -142
  309. package/chunks/session-pr-refresh-KRBH7KDA.js +278 -0
  310. package/chunks/{settings-35QZNFDG.js → settings-YXZ4XBKK.js} +72 -72
  311. package/chunks/shell-5FJ2DZ3W.js +93 -0
  312. package/chunks/{skill-DKEMQSNJ.js → skill-VMMJZ6CJ.js} +161 -33
  313. package/chunks/skill-settings-7SG4YA2W.js +118 -0
  314. package/chunks/spawnChannel-BPMIXRBI.js +112 -0
  315. package/chunks/standalone-update-QN5HFRIC.js +118 -0
  316. package/chunks/{startInteractiveUI-J2QSGWPU.js → startInteractiveUI-5A7RQFRP.js} +3139 -2438
  317. package/chunks/{syntheticOutput-JAXMIMZP.js → syntheticOutput-ML43GEFN.js} +3 -3
  318. package/chunks/{task-create-I2H322E4.js → task-create-QN4LYRSE.js} +11 -11
  319. package/chunks/{task-list-3OLIWFTQ.js → task-list-JPLGK45U.js} +5 -5
  320. package/chunks/{task-stop-JAUY6MSY.js → task-stop-CXEH5L2D.js} +2 -2
  321. package/chunks/{task-update-B3XO4CPI.js → task-update-IWEOJFV2.js} +11 -11
  322. package/chunks/{team-create-W534PMGX.js → team-create-HVGVUL2L.js} +49 -51
  323. package/chunks/{team-delete-Q7GE7RRI.js → team-delete-RZVVSGCY.js} +5 -5
  324. package/chunks/{team-plan-approval-WNV6P6NG.js → team-plan-approval-S5A5FQWU.js} +48 -50
  325. package/chunks/terminal-image-renderer-SIVPPXDI.js +114 -0
  326. package/chunks/theme-manager-TA33UZZX.js +102 -0
  327. package/chunks/{todoWrite-FJJTY2TI.js → todoWrite-WDJNQEMW.js} +43 -25
  328. package/chunks/{tool-search-Y4KL3LRE.js → tool-search-NX7IPDKP.js} +19 -20
  329. package/chunks/total-session-admission-PWXZBOVX.js +114 -0
  330. package/chunks/trustedFolders-V6Y4CU3F.js +122 -0
  331. package/chunks/{update-relaunch-OHVFN6KF.js → update-relaunch-CGSX3R37.js} +6 -6
  332. package/chunks/updateCheck-T5O2WGIB.js +118 -0
  333. package/chunks/useAutoAcceptIndicator-ULBJJWPY.js +120 -0
  334. package/chunks/{validateNonInterActiveAuth-WJXH426F.js → validateNonInterActiveAuth-E5S2JSRC.js} +114 -108
  335. package/chunks/{version-QMDRADXM.js → version-LS5JPU36.js} +2 -2
  336. package/chunks/{web-fetch-ROS6P4LP.js → web-fetch-RLMFZTS3.js} +25 -244
  337. package/chunks/{web-search-JS3E76O6.js → web-search-LMCIC4N5.js} +11 -13
  338. package/chunks/{web-shell-static-3NUTRHAH.js → web-shell-static-A6QMUNNV.js} +11 -4
  339. package/chunks/webapi-Z5OM224P.js +4118 -0
  340. package/chunks/{workflow-2FCMBTBZ.js → workflow-JBXU3IGA.js} +713 -138
  341. package/chunks/workspace-providers-status-525ORQBH.js +114 -0
  342. package/chunks/{workspace-registration-store-SU4EJKSD.js → workspace-registration-store-7Y44R4LV.js} +1 -1
  343. package/chunks/workspace-registry-HS4RWUSQ.js +123 -0
  344. package/chunks/workspace-service-7PXDM6EB.js +129 -0
  345. package/chunks/workspace-skills-status-FMJGC2XI.js +113 -0
  346. package/chunks/{workspace-trust-reconciler-4Y4F7XIX.js → workspace-trust-reconciler-3YTWSQBY.js} +78 -77
  347. package/chunks/write-file-BVQRYQQO.js +88 -0
  348. package/chunks/{zh-TW-NX43Z2S2.js → zh-TW-RPTMRTHG.js} +5 -1
  349. package/chunks/{zh-3JQ75KFU.js → zh-UNY63FR3.js} +5 -1
  350. package/chunks/{zoom-image-DNBKCGGF.js → zoom-image-FGCELNS4.js} +14 -15
  351. package/cli.js +13 -13
  352. package/locales/ca.js +3 -0
  353. package/locales/de.js +1 -0
  354. package/locales/en.js +5 -0
  355. package/locales/fr.js +1 -0
  356. package/locales/ja.js +1 -0
  357. package/locales/pt.js +1 -0
  358. package/locales/ru.js +1 -0
  359. package/locales/zh-TW.js +5 -0
  360. package/locales/zh.js +5 -0
  361. package/package.json +3 -3
  362. package/web-shell/assets/{abnfDiagram-VCTEODGH-DWHXEVlf.js → abnfDiagram-VCTEODGH-2XZDeWYO.js} +1 -1
  363. package/web-shell/assets/{arc-CXKjm86V.js → arc-B6UgMh90.js} +1 -1
  364. package/web-shell/assets/{architectureDiagram-5GKGNRK7-B_ynI0cX.js → architectureDiagram-5GKGNRK7-DZgNFeN1.js} +1 -1
  365. package/web-shell/assets/{blockDiagram-NRAW4CY4-DMebd9X0.js → blockDiagram-NRAW4CY4-DQ2wvBFN.js} +1 -1
  366. package/web-shell/assets/{c4Diagram-UCG6FXSJ-BZ5BlxS-.js → c4Diagram-UCG6FXSJ-DMmQMrc4.js} +1 -1
  367. package/web-shell/assets/channel-D_TyfiTx.js +1 -0
  368. package/web-shell/assets/{chunk-2Q5K7J3B-CluJKopE.js → chunk-2Q5K7J3B-C8Zh2e9y.js} +1 -1
  369. package/web-shell/assets/{chunk-5VM5RSS4-hzDAPFOo.js → chunk-5VM5RSS4-C3LTenP8.js} +1 -1
  370. package/web-shell/assets/{chunk-F27PBJKO-6vHioKJe.js → chunk-F27PBJKO-CxABOc8n.js} +1 -1
  371. package/web-shell/assets/{chunk-G27WJ6UU-B_5hKTGo.js → chunk-G27WJ6UU-CD_JxHDC.js} +1 -1
  372. package/web-shell/assets/{chunk-JWPE2WC7-CO9VoFCH.js → chunk-JWPE2WC7-BdmZPmce.js} +1 -1
  373. package/web-shell/assets/{chunk-LCL6LL3I-7L5JpxYu.js → chunk-LCL6LL3I-80bcHmfK.js} +1 -1
  374. package/web-shell/assets/{chunk-POPQ4Y6H-DHLJMAqj.js → chunk-POPQ4Y6H-CNpLZyQF.js} +1 -1
  375. package/web-shell/assets/{chunk-SVP7TREG-Dt-4Cqdl.js → chunk-SVP7TREG-CXlKgMv3.js} +1 -1
  376. package/web-shell/assets/{chunk-XXDRQBXY-QlSQ3ssG.js → chunk-XXDRQBXY-CivyYyvL.js} +1 -1
  377. package/web-shell/assets/classDiagram-DTDB5LWJ-Bw_H3xMd.js +1 -0
  378. package/web-shell/assets/classDiagram-v2-JRS7N3AN-Bw_H3xMd.js +1 -0
  379. package/web-shell/assets/{cose-bilkent-JH36ORCC-DMw3EOxl.js → cose-bilkent-JH36ORCC-COAjRH3w.js} +1 -1
  380. package/web-shell/assets/{cynefin-OW5HDTMX-s6vEA7RQ.js → cynefin-OW5HDTMX-DqU1JHO6.js} +1 -1
  381. package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-AOKsvYLt.js → cynefinDiagram-5FMLGOSQ-BCLI1Bvj.js} +1 -1
  382. package/web-shell/assets/{dagre-3AP2YEHR-9QAZn3m7.js → dagre-3AP2YEHR-DmAz8nqF.js} +1 -1
  383. package/web-shell/assets/{diagram-S7CK7UJ4-CWpnu4FN.js → diagram-S7CK7UJ4-Ck-5QLT5.js} +1 -1
  384. package/web-shell/assets/{diagram-UQ7AKVKN-9l0jXD8q.js → diagram-UQ7AKVKN-C0ljX0mW.js} +1 -1
  385. package/web-shell/assets/{diagram-VSXAHHWV-BMUHroj4.js → diagram-VSXAHHWV-DPgvT24v.js} +1 -1
  386. package/web-shell/assets/{diagram-VX7I27RA-Co9x27vm.js → diagram-VX7I27RA-D7hWr1LR.js} +1 -1
  387. package/web-shell/assets/{diagram-Z3DM3KII-BKnTeOER.js → diagram-Z3DM3KII-D59tlOta.js} +1 -1
  388. package/web-shell/assets/{ebnfDiagram-PWID7BFC-QBZD9CKG.js → ebnfDiagram-PWID7BFC-CY2DDx00.js} +1 -1
  389. package/web-shell/assets/{erDiagram-SSCWMZ5O-dKWAEGun.js → erDiagram-SSCWMZ5O-AR4h8Q8k.js} +1 -1
  390. package/web-shell/assets/{flowDiagram-A5DVABFB-CR_UgVqj.js → flowDiagram-A5DVABFB-DbF0HqBz.js} +1 -1
  391. package/web-shell/assets/{ganttDiagram-EL5Y4UJY-DQUnjWO6.js → ganttDiagram-EL5Y4UJY-J52mrIhc.js} +1 -1
  392. package/web-shell/assets/{gitGraphDiagram-WWUBYQGX-C4j59wPL.js → gitGraphDiagram-WWUBYQGX-CcgMY5EV.js} +1 -1
  393. package/web-shell/assets/index-BjUg3vPr.css +5 -0
  394. package/web-shell/assets/index-CFwYYVFU.js +1873 -0
  395. package/web-shell/assets/{index-tYXRIPz4.js → index-MQs7l15A.js} +1 -1
  396. package/web-shell/assets/{infoDiagram-RXCK75RN-mzqbt50w.js → infoDiagram-RXCK75RN-Buu3ibp2.js} +1 -1
  397. package/web-shell/assets/{ishikawaDiagram-5VMMS53U-ChLOqhGl.js → ishikawaDiagram-5VMMS53U-CoKQxnF3.js} +1 -1
  398. package/web-shell/assets/{journeyDiagram-EYS64GPL-SifZE-R8.js → journeyDiagram-EYS64GPL-CxK35mTC.js} +1 -1
  399. package/web-shell/assets/{kanban-definition-3QL26DDD-Sft2qlbc.js → kanban-definition-3QL26DDD-tk2CHTQ1.js} +1 -1
  400. package/web-shell/assets/{layout-O2uHVkPd.js → layout-DEpMwb4u.js} +1 -1
  401. package/web-shell/assets/{linear-BVqYgjSc.js → linear-DSQsLh53.js} +1 -1
  402. package/web-shell/assets/{mermaid.core-CZ9MQaJ6.js → mermaid.core-DIZuPBQT.js} +6 -6
  403. package/web-shell/assets/{mindmap-definition-FBJOCRG2-BNQYjBqM.js → mindmap-definition-FBJOCRG2-CCAvk8r_.js} +1 -1
  404. package/web-shell/assets/{pegDiagram-XKGWAZYB-rh1J8uv6.js → pegDiagram-XKGWAZYB-CpJ28jxz.js} +1 -1
  405. package/web-shell/assets/{pieDiagram-E7YTZNPT-BQHR5mn9.js → pieDiagram-E7YTZNPT-ziJR2R32.js} +1 -1
  406. package/web-shell/assets/{quadrantDiagram-AXDQQJYC-CLCbP7mK.js → quadrantDiagram-AXDQQJYC-B60zE3Mh.js} +1 -1
  407. package/web-shell/assets/{railroadDiagram-O6MQD6OU-CDQhrkbm.js → railroadDiagram-O6MQD6OU-M3GqQ_g1.js} +1 -1
  408. package/web-shell/assets/{requirementDiagram-EFPCY7ZU-BdP9uswg.js → requirementDiagram-EFPCY7ZU-ntCtYqTk.js} +1 -1
  409. package/web-shell/assets/{sankeyDiagram-P5KCCOFB-CFZDFBXF.js → sankeyDiagram-P5KCCOFB-AYLoItcZ.js} +1 -1
  410. package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-BW9WOJXI.js → sequenceDiagram-WJ2MYXX4-DEWk4Mlj.js} +1 -1
  411. package/web-shell/assets/{sizeCapture-X5ZJPWSS-CPMia32z.js → sizeCapture-X5ZJPWSS-OOWvzPay.js} +1 -1
  412. package/web-shell/assets/{stateDiagram-HBIQ2CUA-BANp9p7F.js → stateDiagram-HBIQ2CUA-BcMmvxem.js} +1 -1
  413. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-DRLLqPWO.js +1 -0
  414. package/web-shell/assets/{swimlanes-XN3QIQJK-JroXksK-.js → swimlanes-XN3QIQJK-DuZTWWvh.js} +1 -1
  415. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-DOfLQQYt.js +8 -0
  416. package/web-shell/assets/{timeline-definition-24CTP7MA-DfuVIfYY.js → timeline-definition-24CTP7MA-CjqtZXEd.js} +1 -1
  417. package/web-shell/assets/{vennDiagram-4TSXK5OY-BZXoSjRB.js → vennDiagram-4TSXK5OY-knVCVkQ4.js} +1 -1
  418. package/web-shell/assets/{wardleyDiagram-VM6X3IG4-BdiY8avC.js → wardleyDiagram-VM6X3IG4-yoWhw0a2.js} +1 -1
  419. package/web-shell/assets/{xychartDiagram-S5SC5T6Z-DcXh_U4H.js → xychartDiagram-S5SC5T6Z-ue14E_gL.js} +1 -1
  420. package/web-shell/index.html +20 -5
  421. package/chunks/MaxSizedBox-3OZJCC3J.js +0 -110
  422. package/chunks/agent-BFE3DQM3.js +0 -93
  423. package/chunks/agent-headless-LLVKZZ4P.js +0 -87
  424. package/chunks/bridge-EBYO4SYM.js +0 -118
  425. package/chunks/channel-settings-store-5VP2Y2YM.js +0 -115
  426. package/chunks/chunk-2J3OJGTL.js +0 -98
  427. package/chunks/chunk-7IV52LTO.js +0 -202
  428. package/chunks/chunk-AXMWHKXA.js +0 -42
  429. package/chunks/chunk-F6WFNA7U.js +0 -22
  430. package/chunks/chunk-IO257NUD.js +0 -623
  431. package/chunks/chunk-JS73NNWF.js +0 -30
  432. package/chunks/chunk-SJ4HB27T.js +0 -945
  433. package/chunks/chunk-VGHZT6JR.js +0 -51
  434. package/chunks/chunk-YHC2EYYG.js +0 -125
  435. package/chunks/computer-use-EGPWFEX6.js +0 -2142
  436. package/chunks/config-utils-WZ43VOBS.js +0 -25
  437. package/chunks/contextCommand-5DSEQI6S.js +0 -106
  438. package/chunks/daemon-status-provider-EYMLPYJU.js +0 -116
  439. package/chunks/daemon-trust-policy-CQYKZ7VO.js +0 -112
  440. package/chunks/deferred-core-runtime-WFEPUXZR.js +0 -114
  441. package/chunks/earlyInputCapture-PN4PP7V5.js +0 -107
  442. package/chunks/environment-WUPHLPKZ.js +0 -127
  443. package/chunks/errors-WPMPVIAT.js +0 -113
  444. package/chunks/exitPlanMode-MLFHYZNB.js +0 -85
  445. package/chunks/handleAutoUpdate-F5OTWUT5.js +0 -109
  446. package/chunks/i18n-C562S6KN.js +0 -124
  447. package/chunks/initializer-7YPGOFP4.js +0 -113
  448. package/chunks/installationInfo-ARU5Q2H7.js +0 -107
  449. package/chunks/list-KTSK275C.js +0 -116
  450. package/chunks/loadedSettingsAdapter-F3T2EQ5J.js +0 -110
  451. package/chunks/mcp-6ONTVPAY.js +0 -110
  452. package/chunks/nonInteractiveCli-KZDWFAN6.js +0 -178
  453. package/chunks/pidfile-IO7ALSZF.js +0 -111
  454. package/chunks/process-registry-PMJOA5CO.js +0 -172
  455. package/chunks/prompt-terminal-ledger-TCE7PMCE.js +0 -105
  456. package/chunks/read-file-2HOD2ATO.js +0 -33
  457. package/chunks/resumeHistoryUtils-DDSBAQJS.js +0 -118
  458. package/chunks/ripGrep-E7P6K4QR.js +0 -40
  459. package/chunks/runtime-J4SPTJRQ.js +0 -148
  460. package/chunks/scheduler-VRAEZZ4E.js +0 -122
  461. package/chunks/serve-KEAWV4TI.js +0 -118
  462. package/chunks/shell-H6K63WG3.js +0 -95
  463. package/chunks/skill-settings-TCKLXIXM.js +0 -118
  464. package/chunks/spawnChannel-2K6NKWM5.js +0 -111
  465. package/chunks/standalone-update-LSCGOEFP.js +0 -118
  466. package/chunks/terminal-image-renderer-UHX3UD66.js +0 -114
  467. package/chunks/theme-manager-6B47ZPIF.js +0 -102
  468. package/chunks/total-session-admission-NSCFWGJH.js +0 -113
  469. package/chunks/trustedFolders-7XMJWGQ3.js +0 -122
  470. package/chunks/updateCheck-EOVLHD4T.js +0 -118
  471. package/chunks/useAutoAcceptIndicator-ZNMIGBTN.js +0 -120
  472. package/chunks/workspace-providers-status-GPGU5YMT.js +0 -113
  473. package/chunks/workspace-registry-BQISXT6Y.js +0 -122
  474. package/chunks/workspace-service-LLY6HCUC.js +0 -129
  475. package/chunks/workspace-skills-status-L5N2Y3ZP.js +0 -113
  476. package/chunks/write-file-EJHU2Z3E.js +0 -90
  477. package/web-shell/assets/channel-Zg3WHgq_.js +0 -1
  478. package/web-shell/assets/classDiagram-DTDB5LWJ-C16l9jQz.js +0 -1
  479. package/web-shell/assets/classDiagram-v2-JRS7N3AN-C16l9jQz.js +0 -1
  480. package/web-shell/assets/index-BN_m_uHJ.css +0 -5
  481. package/web-shell/assets/index-DrlJu79f.js +0 -1792
  482. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-NZYAoQLU.js +0 -1
  483. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-3YdVX3vj.js +0 -8
@@ -1,15 +1,11 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
- import {
4
- PIPELINE_IMAGE_MIME_TYPES,
5
- estimateTextTokens
6
- } from "./chunk-YHC2EYYG.js";
7
3
  import {
8
4
  createDebugLogger,
9
5
  getErrorMessage,
10
6
  isAbortError,
11
7
  isNodeError
12
- } from "./chunk-A5F2YNO6.js";
8
+ } from "./chunk-UHQFIS7N.js";
13
9
  import {
14
10
  init_esbuild_shims
15
11
  } from "./chunk-5O2XNYP6.js";
@@ -5746,45 +5742,45 @@ var require_lib = __commonJS({
5746
5742
  }
5747
5743
  });
5748
5744
 
5749
- // packages/core/src/memory/const.ts
5745
+ // packages/core/src/utils/memory-constants.ts
5750
5746
  init_esbuild_shims();
5751
5747
  var DEFAULT_CONTEXT_FILENAME = "QWEN.md";
5752
5748
  var AGENT_CONTEXT_FILENAME = "AGENTS.md";
5753
5749
  var LOCAL_CONTEXT_FILENAME = "QWEN.local.md";
5754
5750
  var MEMORY_SECTION_HEADER = "## Qwen Added Memories";
5755
- var currentGeminiMdFilename = [
5751
+ var currentMemoryFilename = [
5756
5752
  DEFAULT_CONTEXT_FILENAME,
5757
5753
  AGENT_CONTEXT_FILENAME
5758
5754
  ];
5759
- function setGeminiMdFilename(newFilename) {
5755
+ function setMemoryFilename(newFilename) {
5760
5756
  if (Array.isArray(newFilename)) {
5761
5757
  if (newFilename.length > 0) {
5762
- currentGeminiMdFilename = newFilename.map((name) => name.trim());
5758
+ currentMemoryFilename = newFilename.map((name) => name.trim());
5763
5759
  }
5764
5760
  } else if (newFilename && newFilename.trim() !== "") {
5765
- currentGeminiMdFilename = newFilename.trim();
5761
+ currentMemoryFilename = newFilename.trim();
5766
5762
  }
5767
5763
  }
5768
- __name(setGeminiMdFilename, "setGeminiMdFilename");
5769
- function getCurrentGeminiMdFilename() {
5770
- if (Array.isArray(currentGeminiMdFilename)) {
5771
- for (const entry of currentGeminiMdFilename) {
5764
+ __name(setMemoryFilename, "setMemoryFilename");
5765
+ function getCurrentMemoryFilename() {
5766
+ if (Array.isArray(currentMemoryFilename)) {
5767
+ for (const entry of currentMemoryFilename) {
5772
5768
  if (typeof entry === "string" && entry.trim() !== "") {
5773
5769
  return entry.trim();
5774
5770
  }
5775
5771
  }
5776
5772
  return DEFAULT_CONTEXT_FILENAME;
5777
5773
  }
5778
- return currentGeminiMdFilename;
5774
+ return currentMemoryFilename;
5779
5775
  }
5780
- __name(getCurrentGeminiMdFilename, "getCurrentGeminiMdFilename");
5781
- function getAllGeminiMdFilenames() {
5782
- if (Array.isArray(currentGeminiMdFilename)) {
5783
- return currentGeminiMdFilename;
5776
+ __name(getCurrentMemoryFilename, "getCurrentMemoryFilename");
5777
+ function getAllMemoryFilenames() {
5778
+ if (Array.isArray(currentMemoryFilename)) {
5779
+ return currentMemoryFilename;
5784
5780
  }
5785
- return [currentGeminiMdFilename];
5781
+ return [currentMemoryFilename];
5786
5782
  }
5787
- __name(getAllGeminiMdFilenames, "getAllGeminiMdFilenames");
5783
+ __name(getAllMemoryFilenames, "getAllMemoryFilenames");
5788
5784
 
5789
5785
  // packages/core/src/utils/pdf.ts
5790
5786
  init_esbuild_shims();
@@ -5792,6 +5788,47 @@ import { execFile } from "node:child_process";
5792
5788
  import { mkdtemp, readdir, readFile, rm } from "node:fs/promises";
5793
5789
  import { tmpdir } from "node:os";
5794
5790
  import { join } from "node:path";
5791
+
5792
+ // packages/core/src/utils/request-tokenizer/textTokenizer.ts
5793
+ init_esbuild_shims();
5794
+ var NON_ASCII_RE = /[\u0080-\uffff]/;
5795
+ var TOKEN_ESTIMATE_UNITS_PER_TOKEN = 20;
5796
+ function estimateTextTokens(text) {
5797
+ if (!text || text.length === 0) {
5798
+ return 0;
5799
+ }
5800
+ if (!NON_ASCII_RE.test(text)) {
5801
+ return Math.ceil(text.length / 4);
5802
+ }
5803
+ const nonAsciiChars = countNonAsciiChars(text);
5804
+ const asciiChars = text.length - nonAsciiChars;
5805
+ return Math.ceil(asciiChars / 4 + nonAsciiChars * 1.1);
5806
+ }
5807
+ __name(estimateTextTokens, "estimateTextTokens");
5808
+ function estimateTextTokenUnits(text) {
5809
+ if (!text || text.length === 0) {
5810
+ return 0;
5811
+ }
5812
+ if (!NON_ASCII_RE.test(text)) {
5813
+ return text.length * 5;
5814
+ }
5815
+ const nonAsciiChars = countNonAsciiChars(text);
5816
+ const asciiChars = text.length - nonAsciiChars;
5817
+ return asciiChars * 5 + nonAsciiChars * 22;
5818
+ }
5819
+ __name(estimateTextTokenUnits, "estimateTextTokenUnits");
5820
+ function countNonAsciiChars(text) {
5821
+ let count = 0;
5822
+ for (let i = 0; i < text.length; i++) {
5823
+ if (text.charCodeAt(i) >= 128) {
5824
+ count++;
5825
+ }
5826
+ }
5827
+ return count;
5828
+ }
5829
+ __name(countNonAsciiChars, "countNonAsciiChars");
5830
+
5831
+ // packages/core/src/utils/pdf.ts
5795
5832
  var MAX_PDF_TEXT_OUTPUT_CHARS = 1e5;
5796
5833
  var PDF_FULL_TEXT_PAGE_LIMIT = 10;
5797
5834
  var PDF_MAX_PAGES_PER_READ = 20;
@@ -6147,6 +6184,227 @@ async function renderPDFPagesToImages(filePath, options) {
6147
6184
  }
6148
6185
  __name(renderPDFPagesToImages, "renderPDFPagesToImages");
6149
6186
 
6187
+ // packages/core/src/utils/binary-content.ts
6188
+ init_esbuild_shims();
6189
+ import { mkdir, writeFile } from "node:fs/promises";
6190
+ import * as path from "node:path";
6191
+ var BINARY_APPLICATION_TYPES = /* @__PURE__ */ new Set([
6192
+ "application/pdf",
6193
+ "application/zip",
6194
+ "application/gzip",
6195
+ "application/x-gzip",
6196
+ "application/octet-stream",
6197
+ "application/msword",
6198
+ "application/vnd.ms-excel",
6199
+ "application/vnd.ms-powerpoint",
6200
+ "application/x-tar",
6201
+ "application/x-7z-compressed",
6202
+ "application/x-rar-compressed",
6203
+ "application/vnd.rar",
6204
+ "application/wasm",
6205
+ "application/java-archive"
6206
+ ]);
6207
+ function isBinaryContentType(contentType) {
6208
+ if (!contentType) return false;
6209
+ const mt = (contentType.split(";")[0] ?? "").trim().toLowerCase();
6210
+ if (mt.startsWith("text/")) return false;
6211
+ if (mt.endsWith("+json") || mt.endsWith("+xml")) return false;
6212
+ if (mt.startsWith("image/") || mt.startsWith("audio/") || mt.startsWith("video/") || mt.startsWith("font/")) {
6213
+ return true;
6214
+ }
6215
+ if (BINARY_APPLICATION_TYPES.has(mt)) return true;
6216
+ if (mt.startsWith("application/vnd.openxmlformats")) return true;
6217
+ if (mt.startsWith("application/vnd.oasis.opendocument")) return true;
6218
+ return false;
6219
+ }
6220
+ __name(isBinaryContentType, "isBinaryContentType");
6221
+ var MIME_EXTENSIONS = /* @__PURE__ */ new Map([
6222
+ ["application/pdf", "pdf"],
6223
+ ["application/zip", "zip"],
6224
+ [
6225
+ "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
6226
+ "docx"
6227
+ ],
6228
+ ["application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "xlsx"],
6229
+ [
6230
+ "application/vnd.openxmlformats-officedocument.presentationml.presentation",
6231
+ "pptx"
6232
+ ],
6233
+ ["application/msword", "doc"],
6234
+ ["application/vnd.ms-excel", "xls"],
6235
+ ["application/vnd.ms-powerpoint", "ppt"],
6236
+ ["application/gzip", "gz"],
6237
+ ["application/x-gzip", "gz"],
6238
+ ["application/x-tar", "tar"],
6239
+ ["application/x-7z-compressed", "7z"],
6240
+ ["application/x-rar-compressed", "rar"],
6241
+ ["application/vnd.rar", "rar"],
6242
+ ["application/wasm", "wasm"],
6243
+ ["application/java-archive", "jar"],
6244
+ ["audio/mpeg", "mp3"],
6245
+ ["audio/wav", "wav"],
6246
+ ["audio/ogg", "ogg"],
6247
+ ["video/mp4", "mp4"],
6248
+ ["video/webm", "webm"],
6249
+ ["image/png", "png"],
6250
+ ["image/jpeg", "jpg"],
6251
+ ["image/gif", "gif"],
6252
+ ["image/webp", "webp"],
6253
+ ["image/svg+xml", "svg"]
6254
+ ]);
6255
+ function extensionForMimeType(mimeType) {
6256
+ if (!mimeType) return "bin";
6257
+ const mt = (mimeType.split(";")[0] ?? "").trim().toLowerCase();
6258
+ return MIME_EXTENSIONS.get(mt) ?? "bin";
6259
+ }
6260
+ __name(extensionForMimeType, "extensionForMimeType");
6261
+ var KNOWN_EXTENSIONS = /* @__PURE__ */ new Set([...MIME_EXTENSIONS.values(), "jpeg", "bin"]);
6262
+ function extensionFromFilename(name) {
6263
+ if (!name) return void 0;
6264
+ const ext = name.split(".").pop()?.trim().toLowerCase();
6265
+ return ext && ext !== name && KNOWN_EXTENSIONS.has(ext) ? ext : void 0;
6266
+ }
6267
+ __name(extensionFromFilename, "extensionFromFilename");
6268
+ function filenameFromContentDisposition(contentDisposition) {
6269
+ const star = /filename\*\s*=\s*[^']*'[^']*'([^;]+)/i.exec(contentDisposition);
6270
+ if (star?.[1]) {
6271
+ try {
6272
+ return decodeURIComponent(star[1].trim());
6273
+ } catch {
6274
+ return star[1].trim();
6275
+ }
6276
+ }
6277
+ const plain = /filename\s*=\s*"?([^";]+)"?/i.exec(contentDisposition);
6278
+ return plain?.[1]?.trim();
6279
+ }
6280
+ __name(filenameFromContentDisposition, "filenameFromContentDisposition");
6281
+ function sniffFileKind(bytes, contentType, contentDisposition, url) {
6282
+ const dispositionExt = extensionFromFilename(
6283
+ filenameFromContentDisposition(contentDisposition)
6284
+ );
6285
+ let urlExt;
6286
+ try {
6287
+ urlExt = extensionFromFilename(new URL(url).pathname.split("/").pop());
6288
+ } catch {
6289
+ urlExt = void 0;
6290
+ }
6291
+ if (bytes.length >= 5 && bytes.subarray(0, 5).toString("latin1") === "%PDF-") {
6292
+ return {
6293
+ extension: "pdf",
6294
+ mimeType: "application/pdf",
6295
+ magicMatched: true,
6296
+ extensionSource: "magic"
6297
+ };
6298
+ }
6299
+ if (bytes.length >= 4 && bytes[0] === 80 && bytes[1] === 75 && bytes[2] === 3 && bytes[3] === 4) {
6300
+ const zipHint = dispositionExt ?? urlExt ?? extensionForMimeType(contentType);
6301
+ const refined = zipHint && ["docx", "xlsx", "pptx", "jar"].includes(zipHint) ? zipHint : "zip";
6302
+ return {
6303
+ extension: refined,
6304
+ mimeType: contentType || "application/zip",
6305
+ magicMatched: true,
6306
+ extensionSource: "magic"
6307
+ };
6308
+ }
6309
+ if (bytes.length >= 2 && bytes[0] === 31 && bytes[1] === 139) {
6310
+ return {
6311
+ extension: "gz",
6312
+ mimeType: "application/gzip",
6313
+ magicMatched: true,
6314
+ extensionSource: "magic"
6315
+ };
6316
+ }
6317
+ if (bytes.length >= 7 && bytes.subarray(0, 4).toString("latin1") === "Rar!" && bytes[4] === 26 && bytes[5] === 7) {
6318
+ return {
6319
+ extension: "rar",
6320
+ mimeType: "application/vnd.rar",
6321
+ magicMatched: true,
6322
+ extensionSource: "magic"
6323
+ };
6324
+ }
6325
+ if (bytes.length >= 8 && bytes[0] === 137 && bytes.subarray(1, 4).toString("latin1") === "PNG") {
6326
+ return {
6327
+ extension: "png",
6328
+ mimeType: "image/png",
6329
+ magicMatched: true,
6330
+ extensionSource: "magic"
6331
+ };
6332
+ }
6333
+ if (bytes.length >= 3 && bytes[0] === 255 && bytes[1] === 216 && bytes[2] === 255) {
6334
+ return {
6335
+ extension: "jpg",
6336
+ mimeType: "image/jpeg",
6337
+ magicMatched: true,
6338
+ extensionSource: "magic"
6339
+ };
6340
+ }
6341
+ if (bytes.length >= 4 && bytes.subarray(0, 4).toString("latin1") === "GIF8") {
6342
+ return {
6343
+ extension: "gif",
6344
+ mimeType: "image/gif",
6345
+ magicMatched: true,
6346
+ extensionSource: "magic"
6347
+ };
6348
+ }
6349
+ if (bytes.length >= 12 && bytes.subarray(0, 4).toString("latin1") === "RIFF" && bytes.subarray(8, 12).toString("latin1") === "WEBP") {
6350
+ return {
6351
+ extension: "webp",
6352
+ mimeType: "image/webp",
6353
+ magicMatched: true,
6354
+ extensionSource: "magic"
6355
+ };
6356
+ }
6357
+ const nameExt = dispositionExt ?? urlExt;
6358
+ if (nameExt) {
6359
+ return {
6360
+ extension: nameExt,
6361
+ mimeType: contentType,
6362
+ magicMatched: false,
6363
+ extensionSource: "name"
6364
+ };
6365
+ }
6366
+ const mimeExt = extensionForMimeType(contentType);
6367
+ return {
6368
+ extension: mimeExt,
6369
+ mimeType: contentType,
6370
+ magicMatched: false,
6371
+ extensionSource: mimeExt !== "bin" ? "mime" : "fallback"
6372
+ };
6373
+ }
6374
+ __name(sniffFileKind, "sniffFileKind");
6375
+ function looksLikeText(bytes) {
6376
+ const window = bytes.subarray(0, 8192);
6377
+ if (window.includes(0)) return false;
6378
+ const decoded = new TextDecoder("utf-8").decode(window);
6379
+ let bad = 0;
6380
+ for (let i = 0; i < decoded.length; i++) {
6381
+ if (decoded[i] === "\uFFFD" && ++bad > 2) return false;
6382
+ }
6383
+ return true;
6384
+ }
6385
+ __name(looksLikeText, "looksLikeText");
6386
+ async function persistBinaryContent(bytes, ext, dir, persistId) {
6387
+ const filepath = path.join(dir, `${persistId}.${ext}`);
6388
+ try {
6389
+ await mkdir(dir, { recursive: true, mode: 448 });
6390
+ await writeFile(filepath, bytes, { mode: 384 });
6391
+ } catch (error) {
6392
+ return { error: error instanceof Error ? error.message : String(error) };
6393
+ }
6394
+ return { filepath, size: bytes.length, ext };
6395
+ }
6396
+ __name(persistBinaryContent, "persistBinaryContent");
6397
+ function formatByteSize(sizeInBytes) {
6398
+ const kb = sizeInBytes / 1024;
6399
+ if (kb < 1) return `${sizeInBytes} bytes`;
6400
+ const fmt = /* @__PURE__ */ __name((n) => n.toFixed(1).replace(/\.0$/, ""), "fmt");
6401
+ if (kb < 1024) return `${fmt(kb)}KB`;
6402
+ const mb = kb / 1024;
6403
+ if (mb < 1024) return `${fmt(mb)}MB`;
6404
+ return `${fmt(mb / 1024)}GB`;
6405
+ }
6406
+ __name(formatByteSize, "formatByteSize");
6407
+
6150
6408
  // packages/core/src/utils/notebook.ts
6151
6409
  init_esbuild_shims();
6152
6410
  import fs from "node:fs";
@@ -6639,7 +6897,7 @@ __name(renderNormalizedImageCrop, "renderNormalizedImageCrop");
6639
6897
  init_esbuild_shims();
6640
6898
  import fs3 from "node:fs";
6641
6899
  import fsPromises from "node:fs/promises";
6642
- import path2 from "node:path";
6900
+ import path3 from "node:path";
6643
6901
 
6644
6902
  // packages/core/node_modules/mime/dist/src/index_lite.js
6645
6903
  init_esbuild_shims();
@@ -7063,12 +7321,12 @@ var Mime = class {
7063
7321
  }
7064
7322
  return this;
7065
7323
  }
7066
- getType(path3) {
7067
- if (typeof path3 !== "string")
7324
+ getType(path4) {
7325
+ if (typeof path4 !== "string")
7068
7326
  return null;
7069
- const last = path3.replace(/^.*[/\\]/s, "").toLowerCase();
7327
+ const last = path4.replace(/^.*[/\\]/s, "").toLowerCase();
7070
7328
  const ext = last.replace(/^.*\./s, "").toLowerCase();
7071
- const hasPath = last.length < path3.length;
7329
+ const hasPath = last.length < path4.length;
7072
7330
  const hasDot = ext.length < last.length - 1;
7073
7331
  if (!hasDot && hasPath)
7074
7332
  return null;
@@ -7138,7 +7396,7 @@ __name(loadIconvLite, "loadIconvLite");
7138
7396
 
7139
7397
  // packages/core/src/utils/ignorePatterns.ts
7140
7398
  init_esbuild_shims();
7141
- import path from "node:path";
7399
+ import path2 from "node:path";
7142
7400
  var COMMON_IGNORE_PATTERNS = [
7143
7401
  "**/node_modules/**",
7144
7402
  "**/.git/**",
@@ -7228,7 +7486,7 @@ var FileExclusions = class {
7228
7486
  patterns.push(...DEFAULT_FILE_EXCLUDES);
7229
7487
  }
7230
7488
  if (includeDynamicPatterns) {
7231
- for (const filename of getAllGeminiMdFilenames()) {
7489
+ for (const filename of getAllMemoryFilenames()) {
7232
7490
  patterns.push(`**/${filename}`);
7233
7491
  }
7234
7492
  }
@@ -7277,7 +7535,7 @@ function extractExtensionsFromPatterns(patterns) {
7277
7535
  return inner.split(",").map((ext) => `.${ext.trim()}`).filter((ext) => ext !== ".");
7278
7536
  }
7279
7537
  if (extPart.startsWith(".") && !extPart.includes("/") && !extPart.includes("{") && !extPart.includes("}")) {
7280
- const extracted = path.extname(`dummy${extPart}`);
7538
+ const extracted = path2.extname(`dummy${extPart}`);
7281
7539
  const result = extracted || extPart;
7282
7540
  return result && result !== "." && !result.substring(1).includes(".") ? [result] : [];
7283
7541
  }
@@ -7411,7 +7669,7 @@ function detectEncodingFromBuffer(buffer) {
7411
7669
  }
7412
7670
  __name(detectEncodingFromBuffer, "detectEncodingFromBuffer");
7413
7671
 
7414
- // packages/core/src/services/visionBridge/vision-bridge-constants.ts
7672
+ // packages/core/src/utils/vision-bridge-constants.ts
7415
7673
  init_esbuild_shims();
7416
7674
  var VISION_BRIDGE_MAX_IMAGES = 4;
7417
7675
  var VISION_BRIDGE_MAX_IMAGE_BASE64_BYTES = Math.floor(
@@ -7907,6 +8165,43 @@ function detectLineEndingFromContent(content) {
7907
8165
  }
7908
8166
  __name(detectLineEndingFromContent, "detectLineEndingFromContent");
7909
8167
 
8168
+ // packages/core/src/utils/request-tokenizer/supportedImageFormats.ts
8169
+ init_esbuild_shims();
8170
+ var SUPPORTED_IMAGE_MIME_TYPES = [
8171
+ "image/bmp",
8172
+ "image/gif",
8173
+ "image/jpeg",
8174
+ "image/jpg",
8175
+ // Alternative MIME type for JPEG
8176
+ "image/png",
8177
+ "image/tiff",
8178
+ "image/webp",
8179
+ "image/heic"
8180
+ ];
8181
+ var PIPELINE_IMAGE_MIME_TYPES = [
8182
+ "image/gif",
8183
+ "image/jpeg",
8184
+ "image/jpg",
8185
+ "image/png",
8186
+ "image/webp"
8187
+ ];
8188
+ function isSupportedImageMimeType(mimeType) {
8189
+ return SUPPORTED_IMAGE_MIME_TYPES.includes(
8190
+ mimeType
8191
+ );
8192
+ }
8193
+ __name(isSupportedImageMimeType, "isSupportedImageMimeType");
8194
+ function getSupportedImageFormatsString() {
8195
+ return PIPELINE_IMAGE_MIME_TYPES.map(
8196
+ (type) => type.replace("image/", "").toUpperCase()
8197
+ ).join(", ");
8198
+ }
8199
+ __name(getSupportedImageFormatsString, "getSupportedImageFormatsString");
8200
+ function getUnsupportedImageFormatWarning() {
8201
+ return `Only the following image formats are supported: ${getSupportedImageFormatsString()}. Other formats may not work as expected.`;
8202
+ }
8203
+ __name(getUnsupportedImageFormatWarning, "getUnsupportedImageFormatWarning");
8204
+
7910
8205
  // packages/core/src/utils/fileUtils.ts
7911
8206
  var debugLogger2 = createDebugLogger("FILE_UTILS");
7912
8207
  var CANONICAL_IMAGE_MIME_TYPES = /* @__PURE__ */ new Set([
@@ -7914,6 +8209,18 @@ var CANONICAL_IMAGE_MIME_TYPES = /* @__PURE__ */ new Set([
7914
8209
  "image/png",
7915
8210
  "image/webp"
7916
8211
  ]);
8212
+ var CANONICAL_IMAGE_EXTENSIONS = new Set(
8213
+ [...CANONICAL_IMAGE_MIME_TYPES].map(
8214
+ (mimeType) => extensionForMimeType(mimeType)
8215
+ )
8216
+ );
8217
+ var SNIFFABLE_IMAGE_MIME_TYPES = /* @__PURE__ */ new Set([
8218
+ "image/gif",
8219
+ "image/jpeg",
8220
+ "image/png",
8221
+ "image/webp"
8222
+ ]);
8223
+ var IMAGE_SNIFF_BYTES = 8192;
7917
8224
  var PROVIDER_SAFE_IMAGE_MIME_TYPES = new Set(
7918
8225
  PIPELINE_IMAGE_MIME_TYPES
7919
8226
  );
@@ -8139,9 +8446,9 @@ function getSpecificMimeType(filePath) {
8139
8446
  }
8140
8447
  __name(getSpecificMimeType, "getSpecificMimeType");
8141
8448
  function isWithinRoot(pathToCheck, rootDirectory) {
8142
- const normalizedPathToCheck = path2.resolve(pathToCheck);
8143
- const normalizedRootDirectory = path2.resolve(rootDirectory);
8144
- const rootWithSeparator = normalizedRootDirectory === path2.sep || normalizedRootDirectory.endsWith(path2.sep) ? normalizedRootDirectory : normalizedRootDirectory + path2.sep;
8449
+ const normalizedPathToCheck = path3.resolve(pathToCheck);
8450
+ const normalizedRootDirectory = path3.resolve(rootDirectory);
8451
+ const rootWithSeparator = normalizedRootDirectory === path3.sep || normalizedRootDirectory.endsWith(path3.sep) ? normalizedRootDirectory : normalizedRootDirectory + path3.sep;
8145
8452
  return normalizedPathToCheck === normalizedRootDirectory || normalizedPathToCheck.startsWith(rootWithSeparator);
8146
8453
  }
8147
8454
  __name(isWithinRoot, "isWithinRoot");
@@ -8352,8 +8659,45 @@ __name(isTextMime, "isTextMime");
8352
8659
  var MIME_LITE_MISSING_VIDEO_TYPES = /* @__PURE__ */ new Map([
8353
8660
  [".m4v", "video/x-m4v"]
8354
8661
  ]);
8662
+ async function classifyImageContent(filePath, mimeType) {
8663
+ if (!SNIFFABLE_IMAGE_MIME_TYPES.has(mimeType)) return "image";
8664
+ let handle;
8665
+ try {
8666
+ handle = await fs3.promises.open(
8667
+ filePath,
8668
+ (fs3.constants?.O_RDONLY ?? 0) | (fs3.constants?.O_NONBLOCK ?? 0)
8669
+ );
8670
+ if ((await handle.stat()).size > IMAGE_MAX_SOURCE_BYTES) return "image";
8671
+ const sample = Buffer.alloc(IMAGE_SNIFF_BYTES);
8672
+ const { bytesRead } = await handle.read(sample, 0, sample.length, 0);
8673
+ const bytes = sample.subarray(0, bytesRead);
8674
+ if (bytes.length === 0) return "image";
8675
+ const sniffed = sniffFileKind(bytes, mimeType, "", `file://${filePath}`);
8676
+ let result;
8677
+ if (sniffed.magicMatched) {
8678
+ result = sniffed.extension === extensionForMimeType(mimeType) || CANONICAL_IMAGE_EXTENSIONS.has(sniffed.extension) ? "image" : "binary";
8679
+ } else {
8680
+ result = bytes.length < 3 || !(detectBOM(bytes) || looksLikeText(bytes)) ? "binary" : "text";
8681
+ }
8682
+ if (result !== "image") {
8683
+ debugLogger2.debug(
8684
+ `classifyImageContent: ${filePath} -> ${result} (mime ${mimeType})`
8685
+ );
8686
+ }
8687
+ return result;
8688
+ } catch (error) {
8689
+ debugLogger2.debug(
8690
+ `Unable to sniff image content for ${filePath}; preserving extension classification`,
8691
+ error instanceof Error ? error.message : String(error)
8692
+ );
8693
+ return "image";
8694
+ } finally {
8695
+ await handle?.close().catch(() => void 0);
8696
+ }
8697
+ }
8698
+ __name(classifyImageContent, "classifyImageContent");
8355
8699
  async function detectFileType(filePath) {
8356
- const ext = path2.extname(filePath).toLowerCase();
8700
+ const ext = path3.extname(filePath).toLowerCase();
8357
8701
  if ([".ts", ".mts", ".cts", ".tsx"].includes(ext)) {
8358
8702
  return "text";
8359
8703
  }
@@ -8366,7 +8710,7 @@ async function detectFileType(filePath) {
8366
8710
  const lookedUpMimeType = index_lite_default.getType(filePath) ?? MIME_LITE_MISSING_VIDEO_TYPES.get(ext) ?? null;
8367
8711
  if (lookedUpMimeType) {
8368
8712
  if (lookedUpMimeType.startsWith("image/")) {
8369
- return "image";
8713
+ return classifyImageContent(filePath, lookedUpMimeType);
8370
8714
  }
8371
8715
  if (lookedUpMimeType.startsWith("audio/")) {
8372
8716
  return "audio";
@@ -8393,7 +8737,7 @@ async function detectFileType(filePath) {
8393
8737
  );
8394
8738
  return "text";
8395
8739
  }
8396
- if (KNOWN_TEXT_BASENAMES.has(path2.basename(filePath))) {
8740
+ if (KNOWN_TEXT_BASENAMES.has(path3.basename(filePath))) {
8397
8741
  debugLogger2.debug(
8398
8742
  `detectFileType: ${filePath} \u2192 text (basename-override, mime ${lookedUpMimeType ?? "null"})`
8399
8743
  );
@@ -8438,7 +8782,7 @@ async function processSingleFileContent(filePath, config, optionsOrOffset, legac
8438
8782
  displayPath = filePath
8439
8783
  } = options;
8440
8784
  const rootDirectory = config.getTargetDir();
8441
- const relativePathForDisplay = (path2.isAbsolute(displayPath) ? path2.relative(rootDirectory, displayPath) : displayPath).replace(/\\/g, "/");
8785
+ const relativePathForDisplay = (path3.isAbsolute(displayPath) ? path3.relative(rootDirectory, displayPath) : displayPath).replace(/\\/g, "/");
8442
8786
  try {
8443
8787
  signal?.throwIfAborted();
8444
8788
  let stats;
@@ -8465,16 +8809,17 @@ async function processSingleFileContent(filePath, config, optionsOrOffset, legac
8465
8809
  }
8466
8810
  if (!stats.isFile()) {
8467
8811
  return {
8468
- llmContent: `Cannot read file: ${path2.basename(filePath)} is not a regular file (e.g. device, socket, or pipe).`,
8812
+ llmContent: `Cannot read file: ${path3.basename(filePath)} is not a regular file (e.g. device, socket, or pipe).`,
8469
8813
  returnDisplay: "Not a regular file.",
8470
8814
  error: `Not a regular file: ${displayPath}`,
8471
8815
  errorType: "read_content_failure" /* READ_CONTENT_FAILURE */
8472
8816
  };
8473
8817
  }
8474
- const fileType = options.textFileHandle ? "text" : await detectFileType(filePath);
8475
- const mediaMimeType = index_lite_default.getType(filePath) ?? MIME_LITE_MISSING_VIDEO_TYPES.get(path2.extname(filePath).toLowerCase()) ?? "application/octet-stream";
8818
+ const mediaMimeType = index_lite_default.getType(filePath) ?? MIME_LITE_MISSING_VIDEO_TYPES.get(path3.extname(filePath).toLowerCase()) ?? "application/octet-stream";
8819
+ const bridgePreservesImage = preserveUnsupportedImage && mediaMimeType.startsWith("image/") && SNIFFABLE_IMAGE_MIME_TYPES.has(mediaMimeType);
8820
+ const fileType = options.textFileHandle ? "text" : options.fileType ?? (bridgePreservesImage ? "image" : await detectFileType(filePath));
8476
8821
  const shouldRenderImageOverview = fileType === "image" && CANONICAL_IMAGE_MIME_TYPES.has(mediaMimeType);
8477
- const displayName = path2.basename(displayPath);
8822
+ const displayName = path3.basename(displayPath);
8478
8823
  const modalities = config.getContentGeneratorConfig?.()?.modalities ?? {};
8479
8824
  const willRenderPdfImages = fileType === "pdf" && !!modalities.image && largePdfBehavior !== "reference";
8480
8825
  const renderForBridge = fileType === "pdf" && !modalities.image && !modalities.pdf && (preserveUnsupportedImage || preparePdfForVisionBridge);
@@ -9105,19 +9450,27 @@ __name(fileExists, "fileExists");
9105
9450
  export {
9106
9451
  VISION_BRIDGE_MAX_IMAGES,
9107
9452
  VISION_BRIDGE_MAX_IMAGE_BASE64_BYTES,
9453
+ TOKEN_ESTIMATE_UNITS_PER_TOKEN,
9454
+ estimateTextTokens,
9455
+ estimateTextTokenUnits,
9108
9456
  isUtf8CompatibleEncoding,
9109
9457
  loadIconvLite,
9110
9458
  LOCAL_CONTEXT_FILENAME,
9111
9459
  MEMORY_SECTION_HEADER,
9112
- setGeminiMdFilename,
9113
- getCurrentGeminiMdFilename,
9114
- getAllGeminiMdFilenames,
9460
+ setMemoryFilename,
9461
+ getCurrentMemoryFilename,
9462
+ getAllMemoryFilenames,
9115
9463
  FileExclusions,
9116
9464
  getCachedEncodingForBuffer,
9117
9465
  getSystemEncoding,
9118
9466
  PDF_MAX_PAGES_PER_READ,
9119
9467
  parsePDFPageRange,
9120
9468
  extractPDFText,
9469
+ isBinaryContentType,
9470
+ sniffFileKind,
9471
+ looksLikeText,
9472
+ persistBinaryContent,
9473
+ formatByteSize,
9121
9474
  normalizeSource,
9122
9475
  parseNotebook,
9123
9476
  inferNotebookJsonFormat,
@@ -9138,6 +9491,8 @@ export {
9138
9491
  readTextCursorWindowFromHandle,
9139
9492
  ImageViewError,
9140
9493
  renderNormalizedImageCrop,
9494
+ isSupportedImageMimeType,
9495
+ getUnsupportedImageFormatWarning,
9141
9496
  decodeBufferWithEncodingInfoAsync,
9142
9497
  readFileWithLineAndLimit,
9143
9498
  getSpecificMimeType,
@@ -9152,6 +9507,11 @@ export {
9152
9507
  * Copyright 2025 Google LLC
9153
9508
  * SPDX-License-Identifier: Apache-2.0
9154
9509
  */
9510
+ /**
9511
+ * @license
9512
+ * Copyright 2025 Qwen
9513
+ * SPDX-License-Identifier: Apache-2.0
9514
+ */
9155
9515
  /**
9156
9516
  * @license
9157
9517
  * Copyright 2025 Qwen Team
@@ -2,11 +2,11 @@
2
2
  "use strict";
3
3
  import {
4
4
  createTask
5
- } from "./chunk-XZJKSETB.js";
5
+ } from "./chunk-WXEA74YB.js";
6
6
  import {
7
7
  getPlanRequiredTeammatePreApprovalMessage,
8
8
  isPlanRequiredTeammateAwaitingApproval
9
- } from "./chunk-VLRBJ24J.js";
9
+ } from "./chunk-V5J4J5TP.js";
10
10
  import {
11
11
  resolveActiveTeamName
12
12
  } from "./chunk-S6LOFUVP.js";
@@ -15,7 +15,7 @@ import {
15
15
  BaseToolInvocation,
16
16
  ToolDisplayNames,
17
17
  ToolNames
18
- } from "./chunk-6NFAEG54.js";
18
+ } from "./chunk-UTLCH2FK.js";
19
19
  import {
20
20
  init_esbuild_shims
21
21
  } from "./chunk-5O2XNYP6.js";
@@ -2,10 +2,10 @@
2
2
  "use strict";
3
3
  import {
4
4
  BaseJsonOutputAdapter
5
- } from "./chunk-KIVGVFMM.js";
5
+ } from "./chunk-WBHKK3CU.js";
6
6
  import {
7
7
  observeHeadlessJsonToolResultWire
8
- } from "./chunk-MQP3MHWN.js";
8
+ } from "./chunk-AU3MMVJF.js";
9
9
  import {
10
10
  init_esbuild_shims
11
11
  } from "./chunk-5O2XNYP6.js";
@@ -2,10 +2,10 @@
2
2
  "use strict";
3
3
  import {
4
4
  DEFAULT_QWEN_MODEL
5
- } from "./chunk-F6WFNA7U.js";
5
+ } from "./chunk-XZA32HII.js";
6
6
  import {
7
7
  SchemaValidator
8
- } from "./chunk-6NFAEG54.js";
8
+ } from "./chunk-UTLCH2FK.js";
9
9
  import {
10
10
  init_esbuild_shims
11
11
  } from "./chunk-5O2XNYP6.js";