@qwen-code/qwen-code 0.21.14 → 0.21.15

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 (318) hide show
  1. package/bundled/qc-helper/docs/features/channels/dingtalk.md +1 -1
  2. package/bundled/qc-helper/docs/features/code-review.md +20 -2
  3. package/bundled/qc-helper/docs/qwen-serve.md +1 -1
  4. package/bundled/review/SKILL.md +66 -36
  5. package/chunks/{MaxSizedBox-67IDQILY.js → MaxSizedBox-E7CUU3UN.js} +43 -43
  6. package/chunks/{StandaloneSessionPicker-G4QJIRMH.js → StandaloneSessionPicker-XYUB75AQ.js} +63 -63
  7. package/chunks/{acp-startup-profiler-HUYGO57H.js → acp-startup-profiler-DDVSJKJK.js} +2 -2
  8. package/chunks/{acpAgent-BS3YYO33.js → acpAgent-5QZS4VMN.js} +507 -176
  9. package/chunks/{agent-EHHEXKWN.js → agent-242BTA6Q.js} +40 -40
  10. package/chunks/{agent-headless-UT2ZF76T.js → agent-headless-4BF7W4TJ.js} +40 -40
  11. package/chunks/{anthropicContentGenerator-M7XRJMSK.js → anthropicContentGenerator-CU3G53RX.js} +7 -7
  12. package/chunks/{artifact-tool-GEXTOPVO.js → artifact-tool-LIUSI4XK.js} +3 -3
  13. package/chunks/{askUserQuestion-B33XRSB7.js → askUserQuestion-454X3UIV.js} +3 -3
  14. package/chunks/{bridge-WQ4IL2RF.js → bridge-MG4F5NOH.js} +46 -45
  15. package/chunks/{channel-management-service-X6LCQUAD.js → channel-management-service-KHPAWCX7.js} +1 -1
  16. package/chunks/{channel-settings-store-ZDFXY7VY.js → channel-settings-store-GQUCL2YM.js} +47 -47
  17. package/chunks/{channel-worker-group-TJ35JDPE.js → channel-worker-group-IN2UPYHP.js} +6 -5
  18. package/chunks/{channel-worker-manager-G5LKWGOG.js → channel-worker-manager-4CQPHVD4.js} +6 -5
  19. package/chunks/{channel-worker-supervisor-OEVWBHGT.js → channel-worker-supervisor-CPPSL7ZH.js} +4 -3
  20. package/chunks/{chunk-3EZLLVDF.js → chunk-263JC66E.js} +3 -3
  21. package/chunks/{chunk-OO4FKHLO.js → chunk-2GM44E7D.js} +10 -298
  22. package/chunks/{chunk-LSO6EL4Y.js → chunk-2MDUS4XE.js} +2 -2
  23. package/chunks/{chunk-WGHHA7ZH.js → chunk-3C55EUJX.js} +1 -1
  24. package/chunks/{chunk-47L5MLB5.js → chunk-3EAGKRLN.js} +5 -5
  25. package/chunks/{chunk-WPVUOVYX.js → chunk-3EQHT3IC.js} +2 -2
  26. package/chunks/{chunk-OEZCXK7Y.js → chunk-3JZ2AZC6.js} +4 -4
  27. package/chunks/{chunk-PCETXVVV.js → chunk-3X6KVX37.js} +1 -1
  28. package/chunks/{chunk-J63PKMYA.js → chunk-435GZDTF.js} +2 -2
  29. package/chunks/{chunk-I3N2Z25H.js → chunk-47VTGCYK.js} +3 -3
  30. package/chunks/{chunk-3PWNVF6N.js → chunk-4APB4SP2.js} +1 -1
  31. package/chunks/{chunk-MA2HEDVP.js → chunk-4CKU5K2R.js} +1 -1
  32. package/chunks/{chunk-OJB5FYVK.js → chunk-4IOBHNV2.js} +1 -1
  33. package/chunks/{chunk-MIPFDQAF.js → chunk-4W4BROUS.js} +1 -1
  34. package/chunks/{chunk-ZIGC3MUS.js → chunk-55P2ESI6.js} +1 -1
  35. package/chunks/{chunk-CHHABXPE.js → chunk-5AAW6E3C.js} +1 -1
  36. package/chunks/{chunk-J6YS7Z25.js → chunk-5I2U4PDY.js} +12 -12
  37. package/chunks/{chunk-NWNEANAT.js → chunk-5M7YKTYX.js} +6 -6
  38. package/chunks/{chunk-RXHBTKMG.js → chunk-5MA4E4EG.js} +3 -3
  39. package/chunks/{chunk-CEXU72GE.js → chunk-5NAJDTVP.js} +3 -3
  40. package/chunks/{chunk-U657UZJN.js → chunk-5WEMSDPR.js} +5 -5
  41. package/chunks/{chunk-73JUK3ZW.js → chunk-63AIQ2IZ.js} +96 -15
  42. package/chunks/{chunk-E5WQMF3K.js → chunk-67L6PVD6.js} +2 -2
  43. package/chunks/{chunk-CZK622ZK.js → chunk-6IFWBM24.js} +3 -3
  44. package/chunks/{chunk-CPHEPGAO.js → chunk-722JBVVW.js} +1 -1
  45. package/chunks/chunk-7NLDU6J2.js +367 -0
  46. package/chunks/{chunk-AKBOLMUF.js → chunk-7S22SX2L.js} +2 -2
  47. package/chunks/{chunk-SCZU65AI.js → chunk-7VRNXKKK.js} +8 -8
  48. package/chunks/{chunk-XUJNK7Y6.js → chunk-7WVB4FMG.js} +1 -1
  49. package/chunks/{chunk-55VKMB7X.js → chunk-A7MIUCUQ.js} +6 -6
  50. package/chunks/{chunk-NVRMCWTP.js → chunk-A7NBZBGQ.js} +3 -3
  51. package/chunks/{chunk-N6RSOOWJ.js → chunk-AAG7I5CR.js} +7 -7
  52. package/chunks/{chunk-EOPBFLA5.js → chunk-AKN26LMT.js} +3 -3
  53. package/chunks/{chunk-UC67T4SF.js → chunk-AQFWV4YF.js} +2 -1
  54. package/chunks/{chunk-DVR7XKO5.js → chunk-B5LEKTE7.js} +2 -2
  55. package/chunks/{chunk-V6WEMZPD.js → chunk-B72KNVKO.js} +3 -3
  56. package/chunks/{chunk-544KT7X4.js → chunk-BBMVUTXO.js} +1 -1
  57. package/chunks/{chunk-DHUPMYMC.js → chunk-BORX4PBQ.js} +12 -12
  58. package/chunks/{chunk-5IJSFWQO.js → chunk-BUZESYJT.js} +4 -4
  59. package/chunks/{chunk-Y4RVDOXV.js → chunk-DF7KFKCL.js} +4 -4
  60. package/chunks/{chunk-K2Y45XXS.js → chunk-DFOKBPH5.js} +108 -26
  61. package/chunks/{chunk-3SL2P3WX.js → chunk-DIHJXVT4.js} +1 -1
  62. package/chunks/{chunk-WAO53ZQF.js → chunk-DITDNF3D.js} +22 -2
  63. package/chunks/{chunk-2A6VQJYK.js → chunk-DK4HL3IB.js} +7 -7
  64. package/chunks/{chunk-6BJSYAML.js → chunk-DPXZUGDQ.js} +46 -21
  65. package/chunks/{chunk-MVHJZ3FZ.js → chunk-DZNQHKZZ.js} +2 -2
  66. package/chunks/{chunk-SNQZZ765.js → chunk-EB27VF5Z.js} +2 -2
  67. package/chunks/{chunk-KC4WMLZO.js → chunk-EXY6APEA.js} +81 -50
  68. package/chunks/{chunk-7VNHO4MN.js → chunk-F3FRTY4Q.js} +16 -7
  69. package/chunks/{chunk-FS5NGKWC.js → chunk-F5JZDC4O.js} +3 -3
  70. package/chunks/{chunk-6QFDQMQX.js → chunk-F7ZK5VMA.js} +1 -1
  71. package/chunks/{chunk-2B2BF7P7.js → chunk-FAIJ5UIU.js} +3 -3
  72. package/chunks/{chunk-G6KI5UOJ.js → chunk-FQ6G527Y.js} +3 -3
  73. package/chunks/{chunk-WSSH2BNO.js → chunk-FQZBD3PY.js} +1 -1
  74. package/chunks/{chunk-OVY67CYC.js → chunk-G32ESUUC.js} +1 -1
  75. package/chunks/{chunk-OBJYN4MX.js → chunk-G64PEZZ5.js} +2 -2
  76. package/chunks/{chunk-QRVHGEVY.js → chunk-GCWILQKA.js} +3 -3
  77. package/chunks/{chunk-QUGAUQGJ.js → chunk-GX2THELY.js} +1 -0
  78. package/chunks/{chunk-L3T4V5GZ.js → chunk-GYVB4P5B.js} +721 -331
  79. package/chunks/{chunk-FAAUPSY2.js → chunk-HEMFCAHG.js} +1 -1
  80. package/chunks/{chunk-AZQ3DT76.js → chunk-HGGMEDDY.js} +2 -2
  81. package/chunks/{chunk-SG7ZP5PG.js → chunk-HHNSO2Y4.js} +4 -4
  82. package/chunks/{chunk-YHXQK4SR.js → chunk-HSCPOEBL.js} +3 -3
  83. package/chunks/{chunk-H3SHU2XU.js → chunk-I3AB5DOZ.js} +3 -3
  84. package/chunks/{chunk-SFJMFZT5.js → chunk-IBUXQJHH.js} +1 -1
  85. package/chunks/{chunk-FN6M5WUL.js → chunk-IFOR6I5C.js} +4 -4
  86. package/chunks/{chunk-PHN4R2ZV.js → chunk-IU2XWUSI.js} +1 -1
  87. package/chunks/{chunk-OJOP26ET.js → chunk-J2LZ5OCH.js} +3 -3
  88. package/chunks/{chunk-4ZMS3JCR.js → chunk-JBSW7JA6.js} +83 -4
  89. package/chunks/{chunk-QAVTWAHL.js → chunk-JIR6JDGE.js} +3 -3
  90. package/chunks/{chunk-UGK4K2N2.js → chunk-JS73NNWF.js} +8 -0
  91. package/chunks/{chunk-2M55OBEB.js → chunk-JV443R5X.js} +1 -1
  92. package/chunks/{chunk-QEHH23OM.js → chunk-K6GQS2WN.js} +1 -1
  93. package/chunks/{chunk-6LAPGPVA.js → chunk-KCUGOZPL.js} +2 -2
  94. package/chunks/{chunk-KV27IEHM.js → chunk-L5JHSPET.js} +1 -1
  95. package/chunks/{chunk-OFTPCOGR.js → chunk-L7RG5PVT.js} +2902 -1393
  96. package/chunks/{chunk-TSMPNGBC.js → chunk-LBQBFRFN.js} +2 -2
  97. package/chunks/chunk-LJZSMWOH.js +18 -0
  98. package/chunks/{chunk-IA2K2HJE.js → chunk-M53UJS6H.js} +2 -2
  99. package/chunks/{chunk-KBXKR5R2.js → chunk-M5AIO24H.js} +1 -1
  100. package/chunks/{chunk-ROIYNTHJ.js → chunk-MD7XDTW7.js} +3 -3
  101. package/chunks/{chunk-3PWCMXIR.js → chunk-MGEWDLRO.js} +1 -1
  102. package/chunks/{chunk-4ZS3BLER.js → chunk-NAGJPIPW.js} +22 -7
  103. package/chunks/{chunk-3YRVPHT3.js → chunk-NCTHX2Z3.js} +14 -14
  104. package/chunks/{chunk-YP5KH5Y7.js → chunk-ND7NOI4P.js} +1 -1
  105. package/chunks/{chunk-4W5U2TUT.js → chunk-NGY7B7VF.js} +1 -1
  106. package/chunks/{chunk-S7N3HUIB.js → chunk-NMSSH43P.js} +6 -6
  107. package/chunks/{chunk-UYDGFWIJ.js → chunk-NYN4RD3K.js} +66 -7
  108. package/chunks/{chunk-DGJ7O55J.js → chunk-O327G3QW.js} +3 -3
  109. package/chunks/{chunk-2C6HJMG3.js → chunk-O75QDGQF.js} +3 -3
  110. package/chunks/{chunk-SFTKAX4O.js → chunk-OFJ6OFIT.js} +1 -1
  111. package/chunks/{chunk-6HY6IF3Z.js → chunk-OUYRA764.js} +1 -1
  112. package/chunks/{chunk-OEYAK5O6.js → chunk-OVS33JJM.js} +5 -5
  113. package/chunks/{chunk-VFP5YOHJ.js → chunk-PRIX4D6T.js} +6 -6
  114. package/chunks/{chunk-H4A72DE5.js → chunk-PTMVPFCZ.js} +1 -1
  115. package/chunks/{chunk-W7EYJGN7.js → chunk-PWQPWISR.js} +8 -8
  116. package/chunks/{chunk-QFJ5JHQR.js → chunk-PXOIRYE5.js} +1 -1
  117. package/chunks/{chunk-4SR45OM4.js → chunk-Q5QDZXKL.js} +1 -1
  118. package/chunks/{chunk-YECDICIO.js → chunk-Q6ETBOWF.js} +1 -1
  119. package/chunks/{chunk-WP4WIUOJ.js → chunk-QQUVPMMZ.js} +2 -2
  120. package/chunks/{chunk-C3T6M24E.js → chunk-RLYXWNS3.js} +3 -3
  121. package/chunks/{chunk-XT4RKHVE.js → chunk-RZ4PE3ER.js} +512 -24
  122. package/chunks/{chunk-6RDZLBSJ.js → chunk-SGKUVDBX.js} +80 -44
  123. package/chunks/{chunk-YZHRN3CF.js → chunk-SWOKDPS5.js} +2 -2
  124. package/chunks/{chunk-SLILKYV2.js → chunk-T2LUUKRI.js} +3 -3
  125. package/chunks/{chunk-5CVO7YES.js → chunk-U4GL4WDY.js} +1 -1
  126. package/chunks/{chunk-QEJZUXSK.js → chunk-U53XZHAE.js} +1 -1
  127. package/chunks/{chunk-XYRBK56E.js → chunk-U7U3CX4K.js} +3353 -1306
  128. package/chunks/{chunk-HIBNSEJE.js → chunk-UDG5EZJI.js} +0 -2
  129. package/chunks/{chunk-BQWNIPTE.js → chunk-V4UBYT3Y.js} +1 -1
  130. package/chunks/{chunk-XITLNXLX.js → chunk-VWS7DWY6.js} +3 -3
  131. package/chunks/{chunk-PT4I7NBA.js → chunk-VX7TFATF.js} +1 -1
  132. package/chunks/{chunk-VTOLYFWM.js → chunk-W3M6P3UR.js} +2 -2
  133. package/chunks/{chunk-CH5OFRV7.js → chunk-W4MLKRZD.js} +3 -3
  134. package/chunks/chunk-W5YD3QRT.js +367 -0
  135. package/chunks/{chunk-5IYS4WWR.js → chunk-WAPL2PHU.js} +1 -1
  136. package/chunks/{chunk-NRPXRNN4.js → chunk-WXFFCRKG.js} +1 -1
  137. package/chunks/{chunk-E3DYKPYZ.js → chunk-X7EQHW5L.js} +3 -3
  138. package/chunks/{chunk-BUQDLC2G.js → chunk-XFRYCCVC.js} +3 -3
  139. package/chunks/{chunk-DRAONPUW.js → chunk-XZ3J6E5Z.js} +2 -2
  140. package/chunks/{chunk-P3AA6S7O.js → chunk-Y7JGWFTK.js} +1 -1
  141. package/chunks/{chunk-SXCOEJO4.js → chunk-YLFFVY3G.js} +1 -1
  142. package/chunks/{chunk-YZOSNW4R.js → chunk-YO7PNVBJ.js} +1 -1
  143. package/chunks/{chunk-MDIGJH5X.js → chunk-ZL3HKVEQ.js} +4 -4
  144. package/chunks/{chunk-Y7QY6DKW.js → chunk-ZTLSYXFY.js} +4 -4
  145. package/chunks/{chunk-RWDNJBWN.js → chunk-ZUISK67X.js} +2 -2
  146. package/chunks/{chunk-PJSD2FOR.js → chunk-ZVJ5R5LM.js} +33 -33
  147. package/chunks/{chunk-XLLKYULU.js → chunk-ZWWU6KNS.js} +2 -2
  148. package/chunks/{computer-use-YORZJQE5.js → computer-use-34X5XJMV.js} +40 -40
  149. package/chunks/{config-utils-NJQA5YLJ.js → config-utils-XJTGZVY3.js} +2 -2
  150. package/chunks/{contextCommand-PACHGIF4.js → contextCommand-Q54VMGPA.js} +42 -42
  151. package/chunks/{core-runtime-6HD5DSPX.js → core-runtime-TIWTFHOR.js} +45 -44
  152. package/chunks/{create-sub-session-IQFIPUQA.js → create-sub-session-DPEBT657.js} +40 -40
  153. package/chunks/{create-sub-session-KRQULJE6.js → create-sub-session-TCKWBXEM.js} +6 -4
  154. package/chunks/{cron-create-NFRZEOQX.js → cron-create-PUCRMWQ6.js} +5 -5
  155. package/chunks/{cron-delete-GFVSVO7C.js → cron-delete-EOQR5CXU.js} +5 -5
  156. package/chunks/{cron-list-NRW34CLU.js → cron-list-7O22SQBF.js} +5 -5
  157. package/chunks/{daemon-XH76IXOC.js → daemon-JE2UIWSY.js} +304 -160
  158. package/chunks/{daemon-git-worktree-guard-6P27GKSU.js → daemon-git-worktree-guard-XSZ3362V.js} +40 -40
  159. package/chunks/daemon-status-provider-JBEST4SF.js +104 -0
  160. package/chunks/{daemon-trust-policy-5QJHAS3N.js → daemon-trust-policy-S6LBG4WN.js} +46 -46
  161. package/chunks/{daemon-trust-policy-monitor-JA2WZRZ3.js → daemon-trust-policy-monitor-NFO3OIBN.js} +46 -46
  162. package/chunks/{deferred-core-runtime-R2VWOVG3.js → deferred-core-runtime-Z2TLD2L7.js} +40 -40
  163. package/chunks/{display-image-ON3EYFRD.js → display-image-6FCICTXS.js} +5 -5
  164. package/chunks/{dist-IYYN3RUT.js → dist-IELOWDOT.js} +81 -17
  165. package/chunks/{earlyInputCapture-PQEEOFKJ.js → earlyInputCapture-KCZDAQWY.js} +41 -41
  166. package/chunks/{edit-RASZHTU2.js → edit-3UADXGNC.js} +41 -41
  167. package/chunks/{enter-worktree-CH5OMHJE.js → enter-worktree-J66YDAJE.js} +40 -40
  168. package/chunks/{enterPlanMode-AQKR3CAH.js → enterPlanMode-YUZUKY5F.js} +40 -40
  169. package/chunks/{environment-7QRYIEBA.js → environment-6IEK2353.js} +42 -42
  170. package/chunks/{errors-P2LL5452.js → errors-RVLRX7XI.js} +42 -42
  171. package/chunks/{exit-worktree-WUDL26CY.js → exit-worktree-SNMPATZE.js} +40 -40
  172. package/chunks/{exitPlanMode-JM75SAUI.js → exitPlanMode-DP4TURUC.js} +40 -40
  173. package/chunks/{fast-path-KVNSOHVA.js → fast-path-5CC6RKES.js} +2 -2
  174. package/chunks/{gemini-ADMD2EOS.js → gemini-F64ZP4SG.js} +83 -82
  175. package/chunks/{geminiContentGenerator-CS3M7SOS.js → geminiContentGenerator-KAFSMFA6.js} +7 -7
  176. package/chunks/{getMachineId-bsd-FG7IUY6U.js → getMachineId-bsd-LSY4WMOF.js} +1 -1
  177. package/chunks/{getMachineId-darwin-GLCJI2RA.js → getMachineId-darwin-JOFR4UIT.js} +1 -1
  178. package/chunks/{getMachineId-linux-O6OPPAKO.js → getMachineId-linux-QEDBS6GI.js} +1 -1
  179. package/chunks/{getMachineId-unsupported-S6CKYVGC.js → getMachineId-unsupported-IPZ3YRKP.js} +1 -1
  180. package/chunks/{getMachineId-win-X5SRNEH7.js → getMachineId-win-TJ2OZ7AA.js} +1 -1
  181. package/chunks/{glob-WIJOGYVV.js → glob-OE27ZGK4.js} +40 -40
  182. package/chunks/{goal-tools-K5OHOJ6B.js → goal-tools-YIADM4RZ.js} +5 -5
  183. package/chunks/{grep-CIFRQBR7.js → grep-VBV6BWSP.js} +40 -40
  184. package/chunks/{handleAutoUpdate-KJ4SN7DM.js → handleAutoUpdate-YDMS57ZN.js} +46 -44
  185. package/chunks/{i18n-36SZUO4C.js → i18n-JIW77MSO.js} +41 -41
  186. package/chunks/{image-gen-R4B5VUYB.js → image-gen-L4A2ISEH.js} +11 -11
  187. package/chunks/{initializer-CW5YCAOL.js → initializer-F7I7QDHK.js} +47 -47
  188. package/chunks/{installationInfo-NMQIOUGY.js → installationInfo-KOUBU7MH.js} +43 -41
  189. package/chunks/{keychain-token-storage-3XFJ5ZB2.js → keychain-token-storage-7SL4ZWQQ.js} +3 -3
  190. package/chunks/{list-HHGT3S4P.js → list-AJ5BRB7C.js} +49 -49
  191. package/chunks/{list-agents-OSVDFI6S.js → list-agents-XO4EONWC.js} +6 -6
  192. package/chunks/{loadedSettingsAdapter-SJ2MJF35.js → loadedSettingsAdapter-X7FC5332.js} +46 -46
  193. package/chunks/{loggingContentGenerator-GR2QQ2C5.js → loggingContentGenerator-5G4ZR5D5.js} +22 -22
  194. package/chunks/{loop-wakeup-HWVUU5CF.js → loop-wakeup-HWSTFUTQ.js} +6 -6
  195. package/chunks/{ls-D3HUFHDP.js → ls-52HUW4B6.js} +5 -5
  196. package/chunks/{lsp-3QDDJTCS.js → lsp-VJESYEC6.js} +3 -3
  197. package/chunks/{managed-npm-update-ADQJHKTO.js → managed-npm-update-ZR2T2ST3.js} +41 -41
  198. package/chunks/{mcp-QW3OTL5W.js → mcp-TZNHG7CF.js} +46 -46
  199. package/chunks/{monitor-RJKPVERH.js → monitor-TN6Z4SXF.js} +40 -40
  200. package/chunks/{nonInteractiveCli-MROMHSTL.js → nonInteractiveCli-I7K6KH5U.js} +81 -80
  201. package/chunks/{notebook-edit-2ENWDBZO.js → notebook-edit-77V2IP3Y.js} +40 -40
  202. package/chunks/{openaiContentGenerator-Z3GPWJU4.js → openaiContentGenerator-2S2UT4RR.js} +25 -26
  203. package/chunks/{pidfile-5G42YSTP.js → pidfile-WDSDXBY3.js} +41 -41
  204. package/chunks/{processUtils-ZDMXYKQY.js → processUtils-JOJNZOW4.js} +2 -2
  205. package/chunks/prompt-terminal-ledger-RW62JIPP.js +93 -0
  206. package/chunks/{qwenContentGenerator-NLEMBZVU.js → qwenContentGenerator-G3H2TCXF.js} +45 -45
  207. package/chunks/{qwenOAuth2-EBV52DWJ.js → qwenOAuth2-UI2OC2RN.js} +10 -10
  208. package/chunks/{read-file-5BYIF53O.js → read-file-DI64TNOE.js} +13 -14
  209. package/chunks/{read-mcp-resource-XD54ZQMC.js → read-mcp-resource-6VFF47Z3.js} +3 -3
  210. package/chunks/{record-artifact-GLU3UWBV.js → record-artifact-TJTN2GBV.js} +5 -5
  211. package/chunks/{resumeHistoryUtils-AFTBRS3G.js → resumeHistoryUtils-3FIDQ6YQ.js} +46 -46
  212. package/chunks/{ripGrep-NN7AOLQY.js → ripGrep-EUTGRCN3.js} +40 -40
  213. package/chunks/{run-qwen-serve-UR3DYDAF.js → run-qwen-serve-SQBF7QZM.js} +505 -161
  214. package/chunks/{runtime-PR5RKGNH.js → runtime-7QGB6SY4.js} +49 -49
  215. package/chunks/{scheduler-GPMLVKJM.js → scheduler-V6AZCQVU.js} +42 -42
  216. package/chunks/{sdk-exporters-grpc-54L4LS5L.js → sdk-exporters-grpc-P3LA24AV.js} +3 -3
  217. package/chunks/{sdk-exporters-http-NC746HLT.js → sdk-exporters-http-K3LH2SD7.js} +9 -11
  218. package/chunks/{sdk-impl-YVL7BP6Y.js → sdk-impl-WCUNMLVX.js} +11 -6
  219. package/chunks/{send-message-TNBG5EVA.js → send-message-NUK5DTTI.js} +7 -7
  220. package/chunks/{serve-E7V2JVA2.js → serve-WVNAO2NA.js} +46 -46
  221. package/chunks/{server-YXB3DBN7.js → server-ZMZPHJEC.js} +992 -271
  222. package/chunks/{session-DZEAUT7S.js → session-JV74G6EZ.js} +82 -81
  223. package/chunks/{settings-ESZ3NWAP.js → settings-GBBVKBQ2.js} +45 -45
  224. package/chunks/{shell-JMSK5WIL.js → shell-JNNRUZPA.js} +40 -40
  225. package/chunks/{skill-5K5CSUJV.js → skill-JRGRCWD5.js} +18 -18
  226. package/chunks/{skill-settings-V64NIOTI.js → skill-settings-VEC7C44Z.js} +45 -45
  227. package/chunks/{spawnChannel-S63APBZZ.js → spawnChannel-TVKIFXXA.js} +42 -42
  228. package/chunks/{standalone-update-P42HDFXX.js → standalone-update-OSHF2CX3.js} +42 -42
  229. package/chunks/{startInteractiveUI-LFBLFHJ4.js → startInteractiveUI-2HTUHVQO.js} +310 -156
  230. package/chunks/{syntheticOutput-7GWFIDXT.js → syntheticOutput-GZV6O6UL.js} +4 -4
  231. package/chunks/{task-create-EILHJJB7.js → task-create-BXGKNND4.js} +11 -11
  232. package/chunks/{task-list-WGJR6YL5.js → task-list-4ZMIDYGD.js} +6 -6
  233. package/chunks/{task-stop-X37KYTKB.js → task-stop-WBO7LWTS.js} +3 -3
  234. package/chunks/{task-update-XZAHVXJ5.js → task-update-UFO3BI7O.js} +11 -11
  235. package/chunks/{team-create-EDNOUM2U.js → team-create-DTPGJ6RH.js} +40 -40
  236. package/chunks/{team-delete-UEP4QOOT.js → team-delete-OCFJS444.js} +6 -6
  237. package/chunks/{team-plan-approval-QRSNK2DX.js → team-plan-approval-4433RWHB.js} +40 -40
  238. package/chunks/{terminal-image-renderer-6J2NPL32.js → terminal-image-renderer-QZLIKIVA.js} +42 -42
  239. package/chunks/{theme-manager-WJMLRBXS.js → theme-manager-RM7C7Q3L.js} +41 -41
  240. package/chunks/{todoWrite-ATS62CAP.js → todoWrite-BGM5MCPY.js} +5 -5
  241. package/chunks/{tool-search-MZ6WU7DM.js → tool-search-4NQJASFC.js} +17 -18
  242. package/chunks/{total-session-admission-DQVW2LIP.js → total-session-admission-NZNCU5NU.js} +46 -45
  243. package/chunks/{trustedFolders-QMH25GOX.js → trustedFolders-FDJ2Q4ZK.js} +41 -41
  244. package/chunks/{update-relaunch-EG75LLW5.js → update-relaunch-HZMDPRTF.js} +5 -5
  245. package/chunks/{updateCheck-MTZIVGT5.js → updateCheck-ZB2CRVVG.js} +43 -43
  246. package/chunks/{useAutoAcceptIndicator-IGCW5EPO.js → useAutoAcceptIndicator-O3JI4KTR.js} +48 -48
  247. package/chunks/{validateNonInterActiveAuth-D5FPAB2C.js → validateNonInterActiveAuth-7Z4KG4N5.js} +78 -77
  248. package/chunks/{version-UOLDLLRB.js → version-RFVS6QDY.js} +1 -1
  249. package/chunks/{web-fetch-QKKW6CWH.js → web-fetch-RAN377BH.js} +17 -18
  250. package/chunks/{web-search-JYRBZMCW.js → web-search-XKS6ZPY7.js} +10 -10
  251. package/chunks/{workflow-SR7SEAU7.js → workflow-HF6G5XNX.js} +232 -73
  252. package/chunks/{workspace-providers-status-OXGV4EFF.js → workspace-providers-status-LNMP7NED.js} +49 -49
  253. package/chunks/{workspace-registration-store-V5EGKLBH.js → workspace-registration-store-QZ3P3ILN.js} +1 -1
  254. package/chunks/{workspace-registry-KJVIYTF5.js → workspace-registry-KWPGC2LG.js} +46 -45
  255. package/chunks/{workspace-service-6RLSGUB5.js → workspace-service-RWB4KMY3.js} +51 -51
  256. package/chunks/{workspace-skills-status-BHFEPDGH.js → workspace-skills-status-P3XXZY7C.js} +47 -47
  257. package/chunks/{workspace-trust-reconciler-DB5ERSUN.js → workspace-trust-reconciler-XU6WB2MF.js} +52 -51
  258. package/chunks/{write-file-IUP4GTZ4.js → write-file-V7Y6KUPR.js} +40 -40
  259. package/chunks/{zoom-image-SRBDTIVA.js → zoom-image-N4RSASH7.js} +13 -14
  260. package/cli.js +13 -13
  261. package/package.json +3 -3
  262. package/web-shell/assets/{arc-DItbX0DI.js → arc-CN-xeqBM.js} +1 -1
  263. package/web-shell/assets/{architectureDiagram-3BPJPVTR-CmnIlH8y.js → architectureDiagram-3BPJPVTR-XQJ6hBnv.js} +1 -1
  264. package/web-shell/assets/{blockDiagram-GPEHLZMM-pObnB9kw.js → blockDiagram-GPEHLZMM-n35AKogw.js} +1 -1
  265. package/web-shell/assets/{c4Diagram-AAUBKEIU-BNBmMS0Y.js → c4Diagram-AAUBKEIU-DXeDVokb.js} +1 -1
  266. package/web-shell/assets/channel-BdTBh3qf.js +1 -0
  267. package/web-shell/assets/{chunk-2J33WTMH-Dz4JBOO6.js → chunk-2J33WTMH-BYcmYjz_.js} +1 -1
  268. package/web-shell/assets/{chunk-4BX2VUAB-Cz2GnvAR.js → chunk-4BX2VUAB-w3UyeGtt.js} +1 -1
  269. package/web-shell/assets/{chunk-55IACEB6-CC6kOQYx.js → chunk-55IACEB6-Td3JbOH_.js} +1 -1
  270. package/web-shell/assets/{chunk-727SXJPM-Z4lY4gbh.js → chunk-727SXJPM-gC_NR7u6.js} +1 -1
  271. package/web-shell/assets/{chunk-AQP2D5EJ-Yz0hZr3D.js → chunk-AQP2D5EJ-aD7bI3c3.js} +1 -1
  272. package/web-shell/assets/{chunk-FMBD7UC4-nKmTWTv9.js → chunk-FMBD7UC4-sHMhD16X.js} +1 -1
  273. package/web-shell/assets/{chunk-ND2GUHAM-CjZz0f6Y.js → chunk-ND2GUHAM-DiV49BLl.js} +1 -1
  274. package/web-shell/assets/{chunk-QZHKN3VN-Bab3FpuS.js → chunk-QZHKN3VN-Dnoagqin.js} +1 -1
  275. package/web-shell/assets/classDiagram-4FO5ZUOK-qVxLMMuK.js +1 -0
  276. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-qVxLMMuK.js +1 -0
  277. package/web-shell/assets/{cose-bilkent-S5V4N54A-BuSAGFox.js → cose-bilkent-S5V4N54A-K6l_zsrZ.js} +1 -1
  278. package/web-shell/assets/{dagre-BM42HDAG-CRZXTg3g.js → dagre-BM42HDAG-Chh9hQ0a.js} +1 -1
  279. package/web-shell/assets/{diagram-2AECGRRQ-BFx1Ayrz.js → diagram-2AECGRRQ-Clrbd8SB.js} +1 -1
  280. package/web-shell/assets/{diagram-5GNKFQAL-B2hMZ3gS.js → diagram-5GNKFQAL-BkNExywD.js} +1 -1
  281. package/web-shell/assets/{diagram-KO2AKTUF-DKxAQLmc.js → diagram-KO2AKTUF-kTX14ngI.js} +1 -1
  282. package/web-shell/assets/{diagram-LMA3HP47-Bo1xGqVY.js → diagram-LMA3HP47-Ba1QOCJy.js} +1 -1
  283. package/web-shell/assets/{diagram-OG6HWLK6-B9NG78d-.js → diagram-OG6HWLK6-CtH5BVYm.js} +1 -1
  284. package/web-shell/assets/{erDiagram-TEJ5UH35-DltQKiqQ.js → erDiagram-TEJ5UH35-DCxSIC83.js} +1 -1
  285. package/web-shell/assets/{flowDiagram-I6XJVG4X-5xXGmS4I.js → flowDiagram-I6XJVG4X-C4rNAypQ.js} +1 -1
  286. package/web-shell/assets/{ganttDiagram-6RSMTGT7-bhGL5n0l.js → ganttDiagram-6RSMTGT7-s3P5tBwL.js} +1 -1
  287. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-ZYnz9hgh.js → gitGraphDiagram-PVQCEYII-C7Eg-1ok.js} +1 -1
  288. package/web-shell/assets/index-BXoIYIJg.css +5 -0
  289. package/web-shell/assets/{index-CBBeUArD.js → index-CszoC8cN.js} +1 -1
  290. package/web-shell/assets/index-Dxj7Naa0.js +1788 -0
  291. package/web-shell/assets/{infoDiagram-5YYISTIA-Cg-jamQf.js → infoDiagram-5YYISTIA-BDKsgMt6.js} +1 -1
  292. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-CcmvKlyq.js → ishikawaDiagram-YF4QCWOH-CkcSHbvL.js} +1 -1
  293. package/web-shell/assets/{journeyDiagram-JHISSGLW-BRsOQZp1.js → journeyDiagram-JHISSGLW-CDWt-t81.js} +1 -1
  294. package/web-shell/assets/{kanban-definition-UN3LZRKU-xW-dmEHK.js → kanban-definition-UN3LZRKU-FI2owcEa.js} +1 -1
  295. package/web-shell/assets/{linear-ClBfEZH2.js → linear-BQzLqkJi.js} +1 -1
  296. package/web-shell/assets/{mermaid.core-D65NDkzc.js → mermaid.core-CvV91DP1.js} +5 -5
  297. package/web-shell/assets/{mindmap-definition-RKZ34NQL-CyvFslYa.js → mindmap-definition-RKZ34NQL-Dx2kLUpN.js} +1 -1
  298. package/web-shell/assets/{pieDiagram-4H26LBE5-BwSefMyG.js → pieDiagram-4H26LBE5-CMXOmBrj.js} +1 -1
  299. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-GqBJspFS.js → quadrantDiagram-W4KKPZXB-Bziww7Co.js} +1 -1
  300. package/web-shell/assets/{requirementDiagram-4Y6WPE33-B137PlTJ.js → requirementDiagram-4Y6WPE33-DMOXAxzp.js} +1 -1
  301. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-maHkkt8i.js → sankeyDiagram-5OEKKPKP-B3y1cfVV.js} +1 -1
  302. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-DJ1mRaG3.js → sequenceDiagram-3UESZ5HK-ChrV1jiM.js} +1 -1
  303. package/web-shell/assets/{stateDiagram-AJRCARHV-aRmP7Q4i.js → stateDiagram-AJRCARHV-CWuLzLFE.js} +1 -1
  304. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DEDPMLgq.js +1 -0
  305. package/web-shell/assets/{timeline-definition-PNZ67QCA-CIQ3BRPA.js → timeline-definition-PNZ67QCA-Cl6am_to.js} +1 -1
  306. package/web-shell/assets/{vennDiagram-CIIHVFJN-DR9VPd5h.js → vennDiagram-CIIHVFJN-OuocxGAu.js} +1 -1
  307. package/web-shell/assets/{wardley-L42UT6IY-ZcfIbT4D.js → wardley-L42UT6IY-DLYdvSJW.js} +1 -1
  308. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-D0jgPi4T.js → wardleyDiagram-YWT4CUSO-7a3DreXX.js} +1 -1
  309. package/web-shell/assets/{xychartDiagram-2RQKCTM6-BGWU4s5o.js → xychartDiagram-2RQKCTM6-CgfjUxW_.js} +1 -1
  310. package/web-shell/index.html +2 -2
  311. package/chunks/chunk-D34RDOLP.js +0 -529
  312. package/chunks/daemon-status-provider-SXS66ZIR.js +0 -103
  313. package/web-shell/assets/channel-hZnMfWA9.js +0 -1
  314. package/web-shell/assets/classDiagram-4FO5ZUOK-BRnxm8DX.js +0 -1
  315. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BRnxm8DX.js +0 -1
  316. package/web-shell/assets/index-CbgU-jUo.css +0 -5
  317. package/web-shell/assets/index-_nhzXqab.js +0 -1750
  318. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-Db39gvZ_.js +0 -1
@@ -2,32 +2,32 @@
2
2
  "use strict";
3
3
  import {
4
4
  appEvents
5
- } from "./chunk-XYRBK56E.js";
5
+ } from "./chunk-U7U3CX4K.js";
6
6
  import {
7
7
  CUSTOM_SANDBOX_IMAGE_ENV_VAR,
8
8
  HOST_UPDATE_RELAUNCH_ENV_VAR,
9
9
  SKIP_UPDATE_CHECK_ENV_VAR,
10
10
  requestUpdateOnExit
11
- } from "./chunk-P3AA6S7O.js";
11
+ } from "./chunk-Y7JGWFTK.js";
12
12
  import {
13
13
  loadUndici
14
14
  } from "./chunk-3Z43GZUQ.js";
15
15
  import {
16
16
  IdeClient,
17
17
  getAllProviderBaseUrls
18
- } from "./chunk-OFTPCOGR.js";
18
+ } from "./chunk-L7RG5PVT.js";
19
19
  import {
20
20
  detectRuntime,
21
21
  getOrCreateSharedDispatcher,
22
22
  preloadRuntimeFetchModule,
23
23
  redactProxyCredentials
24
- } from "./chunk-CPHEPGAO.js";
24
+ } from "./chunk-722JBVVW.js";
25
25
  import {
26
26
  initializeTelemetry
27
- } from "./chunk-XT4RKHVE.js";
27
+ } from "./chunk-RZ4PE3ER.js";
28
28
  import {
29
29
  createDebugLogger
30
- } from "./chunk-BUQDLC2G.js";
30
+ } from "./chunk-XFRYCCVC.js";
31
31
  import {
32
32
  recordStartupEvent
33
33
  } from "./chunk-QILD6R27.js";
@@ -231,11 +231,11 @@ function startPostRenderPrefetches(config, settings, options = {}) {
231
231
  { updateEventEmitter },
232
232
  { t }
233
233
  ] = await Promise.all([
234
- import("./updateCheck-MTZIVGT5.js"),
235
- import("./handleAutoUpdate-KJ4SN7DM.js"),
236
- import("./installationInfo-NMQIOUGY.js"),
234
+ import("./updateCheck-ZB2CRVVG.js"),
235
+ import("./handleAutoUpdate-YDMS57ZN.js"),
236
+ import("./installationInfo-KOUBU7MH.js"),
237
237
  import("./updateEventEmitter-5MKC7BLQ.js"),
238
- import("./i18n-36SZUO4C.js")
238
+ import("./i18n-JIW77MSO.js")
239
239
  ]);
240
240
  const updateCheckSkippedMessage = /* @__PURE__ */ __name((error) => t("Update check skipped ({{reason}}) \u2014 run /update to retry.", {
241
241
  reason: describeUpdateCheckFailure(error)
@@ -308,7 +308,7 @@ ${t(
308
308
  state: "connecting"
309
309
  });
310
310
  try {
311
- const { connectIdeForStartup } = await import("./initializer-CW5YCAOL.js");
311
+ const { connectIdeForStartup } = await import("./initializer-F7I7QDHK.js");
312
312
  await withTimeout(
313
313
  connectIdeForStartup(config),
314
314
  "ide_connect",
@@ -332,7 +332,7 @@ ${t(
332
332
  }
333
333
  if (config.isInteractive()) {
334
334
  runDeferredTask("background_housekeeping", async () => {
335
- const { startBackgroundHousekeeping } = await import("./scheduler-GPMLVKJM.js");
335
+ const { startBackgroundHousekeeping } = await import("./scheduler-V6AZCQVU.js");
336
336
  startBackgroundHousekeeping(config, settings);
337
337
  });
338
338
  }
@@ -2,19 +2,19 @@
2
2
  "use strict";
3
3
  import {
4
4
  getErrorMessage
5
- } from "./chunk-XITLNXLX.js";
5
+ } from "./chunk-VWS7DWY6.js";
6
6
  import {
7
7
  extensionToOutputString,
8
8
  getExtensionManager
9
- } from "./chunk-U657UZJN.js";
9
+ } from "./chunk-5WEMSDPR.js";
10
10
  import {
11
11
  loadSettings
12
- } from "./chunk-VFP5YOHJ.js";
12
+ } from "./chunk-PRIX4D6T.js";
13
13
  import {
14
14
  initializeI18n,
15
15
  resolveLanguageSetting,
16
16
  t
17
- } from "./chunk-VTOLYFWM.js";
17
+ } from "./chunk-W3M6P3UR.js";
18
18
  import {
19
19
  writeStderrLine,
20
20
  writeStdoutLine
@@ -2,20 +2,20 @@
2
2
  "use strict";
3
3
  import {
4
4
  functionResponsePartsToString
5
- } from "./chunk-6RDZLBSJ.js";
5
+ } from "./chunk-SGKUVDBX.js";
6
6
  import {
7
7
  observeHeadlessToolResultProjection,
8
8
  observeHeadlessToolResultWire,
9
9
  projectJsonStringToByteBudget
10
- } from "./chunk-K2Y45XXS.js";
10
+ } from "./chunk-DFOKBPH5.js";
11
11
  import {
12
12
  parseAndFormatApiError,
13
13
  toolResultBoundaryArtifact
14
- } from "./chunk-OFTPCOGR.js";
14
+ } from "./chunk-L7RG5PVT.js";
15
15
  import {
16
16
  formatVisionBridgeNoticeDisplay,
17
17
  isVisionBridgeNoticeDisplay
18
- } from "./chunk-KC4WMLZO.js";
18
+ } from "./chunk-EXY6APEA.js";
19
19
  import {
20
20
  init_esbuild_shims
21
21
  } from "./chunk-5O2XNYP6.js";
@@ -5,33 +5,33 @@ import {
5
5
  } from "./chunk-E7REAOTN.js";
6
6
  import {
7
7
  formatHistoryGapNotice
8
- } from "./chunk-4SR45OM4.js";
8
+ } from "./chunk-Q5QDZXKL.js";
9
9
  import {
10
10
  loadUndici
11
11
  } from "./chunk-3Z43GZUQ.js";
12
12
  import {
13
13
  LOAD_REPLAY_META_KEY
14
- } from "./chunk-WP4WIUOJ.js";
14
+ } from "./chunk-QQUVPMMZ.js";
15
15
  import {
16
16
  observeToolResultBoundary,
17
17
  projectGoalStateToLegacy,
18
18
  toolResultBoundaryArtifact
19
- } from "./chunk-OFTPCOGR.js";
19
+ } from "./chunk-L7RG5PVT.js";
20
20
  import {
21
21
  parseGoalSnapshotV2,
22
22
  parseGoalStateCause,
23
23
  projectUserTranscriptForDisplay
24
- } from "./chunk-4ZMS3JCR.js";
24
+ } from "./chunk-JBSW7JA6.js";
25
25
  import {
26
26
  formatVisionBridgeNoticeDisplay,
27
27
  isVisionBridgeNoticeDisplay
28
- } from "./chunk-KC4WMLZO.js";
28
+ } from "./chunk-EXY6APEA.js";
29
29
  import {
30
30
  ToolNames
31
- } from "./chunk-6HY6IF3Z.js";
31
+ } from "./chunk-OUYRA764.js";
32
32
  import {
33
33
  createDebugLogger
34
- } from "./chunk-BUQDLC2G.js";
34
+ } from "./chunk-XFRYCCVC.js";
35
35
  import {
36
36
  writeStderrLine,
37
37
  writeStderrLineSafe
@@ -324,20 +324,37 @@ function parseGoalStateRecordPayloadV2(value) {
324
324
  }
325
325
  __name(parseGoalStateRecordPayloadV2, "parseGoalStateRecordPayloadV2");
326
326
  function parseGoalSnapshotV22(value) {
327
- if (!isRecord(value) || !hasOnlyKeys(value, ["v", "goal", "activity"]) || value["v"] !== GOAL_STATE_VERSION || !isGoalActivity(value["activity"])) {
327
+ if (!isRecord(value) || !hasOnlyKeys(value, ["v", "goal", "activity", "clearedGoal"]) || value["v"] !== GOAL_STATE_VERSION || !isGoalActivity(value["activity"])) {
328
328
  return void 0;
329
329
  }
330
330
  if (value["goal"] === null) {
331
+ const clearedGoal = parseGoalOrder(value["clearedGoal"]);
332
+ if (value["clearedGoal"] !== void 0 && !clearedGoal)
333
+ return void 0;
331
334
  return {
332
335
  v: GOAL_STATE_VERSION,
333
336
  goal: null,
334
- activity: value["activity"]
337
+ activity: value["activity"],
338
+ ...clearedGoal ? { clearedGoal } : {}
335
339
  };
336
340
  }
341
+ if (value["clearedGoal"] !== void 0)
342
+ return void 0;
337
343
  const goal = parseGoalRecord(value["goal"]);
338
344
  return goal ? { v: GOAL_STATE_VERSION, goal, activity: value["activity"] } : void 0;
339
345
  }
340
346
  __name(parseGoalSnapshotV22, "parseGoalSnapshotV2");
347
+ function parseGoalOrder(value) {
348
+ if (!isRecord(value) || !hasOnlyKeys(value, ["goalId", "revision", "updatedAt"]) || typeof value["goalId"] !== "string" || !value["goalId"] || !isNonNegativeInteger(value["revision"]) || value["revision"] === 0 || !isFiniteNumber(value["updatedAt"])) {
349
+ return void 0;
350
+ }
351
+ return {
352
+ goalId: value["goalId"],
353
+ revision: value["revision"],
354
+ updatedAt: value["updatedAt"]
355
+ };
356
+ }
357
+ __name(parseGoalOrder, "parseGoalOrder");
341
358
  function parseGoalStateCause2(value) {
342
359
  return isGoalStateCause(value) ? value : void 0;
343
360
  }
@@ -578,6 +595,24 @@ function replaceTextPartsForDisplay(parts, displayText) {
578
595
  return projected;
579
596
  }
580
597
  __name(replaceTextPartsForDisplay, "replaceTextPartsForDisplay");
598
+ function stripGeneratedAttachmentTokens(displayText, payload) {
599
+ const references = payload?.["attachmentReferences"];
600
+ if (!Array.isArray(references)) return displayText;
601
+ const tokens = references.flatMap((reference) => {
602
+ if (!isObjectRecord(reference) || reference["type"] !== "resource" || typeof reference["attachmentId"] !== "string") {
603
+ return [];
604
+ }
605
+ return [`@attachment:///${encodeURIComponent(reference["attachmentId"])}`];
606
+ });
607
+ if (tokens.length === 0) return displayText;
608
+ const tokenText = tokens.join("\n");
609
+ if (displayText === tokenText) return "";
610
+ const suffix = `
611
+
612
+ ${tokenText}`;
613
+ return displayText.endsWith(suffix) ? displayText.slice(0, -suffix.length) : displayText;
614
+ }
615
+ __name(stripGeneratedAttachmentTokens, "stripGeneratedAttachmentTokens");
581
616
  function toTranscriptEpochMs(timestamp) {
582
617
  if (typeof timestamp === "number") {
583
618
  return Number.isFinite(timestamp) ? timestamp : void 0;
@@ -620,8 +655,8 @@ function createTranscriptImageUpdate(options) {
620
655
  };
621
656
  }
622
657
  __name(createTranscriptImageUpdate, "createTranscriptImageUpdate");
623
- function createTranscriptMediaReferenceUpdate(reference, options) {
624
- if (reference["type"] !== "image" && reference["type"] !== "audio" || typeof reference["mediaId"] !== "string" || typeof reference["mimeType"] !== "string" || typeof reference["size"] !== "number") {
658
+ function createTranscriptAttachmentReferenceUpdate(reference, options) {
659
+ if (reference["type"] !== "image" && reference["type"] !== "resource" || typeof reference["attachmentId"] !== "string" || typeof reference["mimeType"] !== "string" || typeof reference["size"] !== "number") {
625
660
  return void 0;
626
661
  }
627
662
  const meta = buildUpdateMeta(options);
@@ -629,14 +664,14 @@ function createTranscriptMediaReferenceUpdate(reference, options) {
629
664
  sessionUpdate: "user_message_chunk",
630
665
  content: {
631
666
  type: reference["type"],
632
- mediaId: reference["mediaId"],
667
+ attachmentId: reference["attachmentId"],
633
668
  mimeType: reference["mimeType"],
634
669
  size: reference["size"]
635
670
  },
636
671
  ...meta ? { _meta: meta } : {}
637
672
  };
638
673
  }
639
- __name(createTranscriptMediaReferenceUpdate, "createTranscriptMediaReferenceUpdate");
674
+ __name(createTranscriptAttachmentReferenceUpdate, "createTranscriptAttachmentReferenceUpdate");
640
675
  function createTranscriptUsageUpdate(usageMetadata, options = {}) {
641
676
  const usage = {
642
677
  inputTokens: finiteNumber(usageMetadata.promptTokenCount) ?? 0,
@@ -878,10 +913,10 @@ var DefaultTranscriptReplayMachine = class {
878
913
  }
879
914
  } : meta;
880
915
  if (record.subtype === "goal_runtime" || record.subtype === "notification" || record.subtype === "cron" || record.subtype === "mid_turn_user_message") {
881
- const displayText = payload && typeof payload["displayText"] === "string" ? payload["displayText"] : void 0;
916
+ const displayText = payload && typeof payload["displayText"] === "string" ? stripGeneratedAttachmentTokens(payload["displayText"], payload) : void 0;
882
917
  if (record.subtype === "mid_turn_user_message" && displayText === "") {
883
918
  const media = [
884
- ...this.projectUserMediaReferences(payload, emit, replayMeta)
919
+ ...this.projectUserAttachmentReferences(payload, emit, replayMeta)
885
920
  ];
886
921
  if (media.length > 0) {
887
922
  yield* media;
@@ -905,25 +940,26 @@ var DefaultTranscriptReplayMachine = class {
905
940
  } : record.subtype === "cron" ? { extra: { source: "cron" } } : {}
906
941
  })
907
942
  );
908
- yield* this.projectUserMediaReferences(payload, emit, replayMeta);
943
+ yield* this.projectUserAttachmentReferences(payload, emit, replayMeta);
909
944
  return;
910
945
  }
911
946
  if (record.subtype !== "mid_turn_user_message") return;
912
947
  }
913
948
  const projection = projectUserTranscriptForDisplay(record);
914
949
  if (projection.displayText !== void 0) {
950
+ const displayText = stripGeneratedAttachmentTokens(
951
+ projection.displayText,
952
+ payload
953
+ );
915
954
  yield* this.projectMessageParts(
916
955
  record,
917
956
  "user",
918
957
  emit,
919
958
  replayMeta,
920
959
  void 0,
921
- replaceTextPartsForDisplay(
922
- record.message?.parts,
923
- projection.displayText
924
- )
960
+ replaceTextPartsForDisplay(record.message?.parts, displayText)
925
961
  );
926
- yield* this.projectUserMediaReferences(payload, emit, replayMeta);
962
+ yield* this.projectUserAttachmentReferences(payload, emit, replayMeta);
927
963
  return;
928
964
  }
929
965
  yield* this.projectMessageParts(
@@ -934,14 +970,14 @@ var DefaultTranscriptReplayMachine = class {
934
970
  void 0,
935
971
  projection.parts
936
972
  );
937
- yield* this.projectUserMediaReferences(payload, emit, replayMeta);
973
+ yield* this.projectUserAttachmentReferences(payload, emit, replayMeta);
938
974
  }
939
- *projectUserMediaReferences(payload, emit, meta) {
940
- const references = payload?.["mediaReferences"];
975
+ *projectUserAttachmentReferences(payload, emit, meta) {
976
+ const references = payload?.["attachmentReferences"];
941
977
  if (!Array.isArray(references)) return;
942
978
  for (const reference of references) {
943
979
  if (!isObjectRecord(reference)) continue;
944
- const update = createTranscriptMediaReferenceUpdate(reference, meta);
980
+ const update = createTranscriptAttachmentReferenceUpdate(reference, meta);
945
981
  if (update) yield emit(update);
946
982
  }
947
983
  }
@@ -1129,9 +1165,26 @@ var DefaultTranscriptReplayMachine = class {
1129
1165
  payload2,
1130
1166
  this.goalState?.goal ?? null
1131
1167
  );
1168
+ const goalControlCommand = projectGoalControlCommand(
1169
+ payload2.cause,
1170
+ payload2.snapshot
1171
+ );
1132
1172
  this.goalState = payload2.snapshot;
1133
1173
  this.goalCause = payload2.cause;
1134
1174
  if (bookkeepingOnly) return;
1175
+ if (goalControlCommand) {
1176
+ yield emit(
1177
+ createTranscriptMessageUpdate({
1178
+ role: "user",
1179
+ text: goalControlCommand,
1180
+ ...meta,
1181
+ extra: {
1182
+ source: "goal_control",
1183
+ "qwen.session.recordId": record.uuid
1184
+ }
1185
+ })
1186
+ );
1187
+ }
1135
1188
  const { type: _type, ...goalStatus } = projection.goalStatus;
1136
1189
  yield emit(
1137
1190
  createTranscriptMessageUpdate({
@@ -1274,6 +1327,35 @@ var DefaultTranscriptReplayMachine = class {
1274
1327
  });
1275
1328
  }
1276
1329
  };
1330
+ function projectGoalControlCommand(cause, snapshot) {
1331
+ switch (cause) {
1332
+ case "create":
1333
+ case "replace":
1334
+ return snapshot.goal ? `/goal ${snapshot.goal.objective}` : void 0;
1335
+ case "edit":
1336
+ return snapshot.goal ? `/goal edit ${snapshot.goal.objective}` : void 0;
1337
+ case "pause":
1338
+ case "resume":
1339
+ case "clear":
1340
+ return `/goal ${cause}`;
1341
+ case "turn_finished":
1342
+ case "checkpoint":
1343
+ case "verifier_accept":
1344
+ case "verifier_reject":
1345
+ case "complete":
1346
+ case "blocked":
1347
+ case "usage_limited":
1348
+ case "migrated":
1349
+ return void 0;
1350
+ default:
1351
+ return assertNever2(cause);
1352
+ }
1353
+ }
1354
+ __name(projectGoalControlCommand, "projectGoalControlCommand");
1355
+ function assertNever2(value) {
1356
+ throw new Error(`Unsupported Goal state cause: ${String(value)}`);
1357
+ }
1358
+ __name(assertNever2, "assertNever");
1277
1359
  function parseTranscriptGoalStatus(value) {
1278
1360
  if (!isObjectRecord(value) || value["type"] !== "goal_status") {
1279
1361
  return void 0;
@@ -2853,7 +2935,7 @@ async function extractMetadata(conversation, config) {
2853
2935
  const gitBranch = firstRecord?.gitBranch;
2854
2936
  let gitRepo;
2855
2937
  if (cwd) {
2856
- const { getGitRepoName } = await import("./deferred-core-runtime-R2VWOVG3.js");
2938
+ const { getGitRepoName } = await import("./deferred-core-runtime-Z2TLD2L7.js");
2857
2939
  gitRepo = getGitRepoName(cwd);
2858
2940
  }
2859
2941
  let model;
@@ -64,7 +64,7 @@ async function runExitCleanup(options = {}) {
64
64
  }
65
65
  __name(runExitCleanup, "runExitCleanup");
66
66
  async function cleanupCheckpoints() {
67
- const { Storage } = await import("./deferred-core-runtime-R2VWOVG3.js");
67
+ const { Storage } = await import("./deferred-core-runtime-Z2TLD2L7.js");
68
68
  const storage = new Storage(process.cwd());
69
69
  const tempDir = storage.getProjectTempDir();
70
70
  const checkpointsDir = join(tempDir, "checkpoints");
@@ -2,10 +2,10 @@
2
2
  "use strict";
3
3
  import {
4
4
  isGitRepository
5
- } from "./chunk-OFTPCOGR.js";
5
+ } from "./chunk-L7RG5PVT.js";
6
6
  import {
7
7
  createDebugLogger
8
- } from "./chunk-BUQDLC2G.js";
8
+ } from "./chunk-XFRYCCVC.js";
9
9
  import {
10
10
  init_esbuild_shims
11
11
  } from "./chunk-5O2XNYP6.js";
@@ -18,6 +18,7 @@ init_esbuild_shims();
18
18
  import * as fs from "node:fs";
19
19
  import * as path from "node:path";
20
20
  import * as childProcess from "node:child_process";
21
+ import { promisify } from "node:util";
21
22
  var PackageManager = /* @__PURE__ */ ((PackageManager2) => {
22
23
  PackageManager2["NPM"] = "npm";
23
24
  PackageManager2["YARN"] = "yarn";
@@ -106,6 +107,24 @@ function formatUpdateMessage(updateMessage, latestVersion) {
106
107
  return [message];
107
108
  }
108
109
  __name(formatUpdateMessage, "formatUpdateMessage");
110
+ var execFileAsync = promisify(childProcess.execFile);
111
+ var HOMEBREW_INFO_TIMEOUT_MS = 5e3;
112
+ async function getHomebrewLatestVersion(formula = "qwen-code", run = execFileAsync) {
113
+ try {
114
+ const { stdout } = await run(
115
+ "brew",
116
+ ["info", "--json=v2", "--formula", formula],
117
+ { encoding: "utf8", timeout: HOMEBREW_INFO_TIMEOUT_MS }
118
+ );
119
+ const parsed = JSON.parse(String(stdout));
120
+ const stable = parsed.formulae?.[0]?.versions?.stable;
121
+ return typeof stable === "string" && stable.length > 0 ? stable : null;
122
+ } catch (error) {
123
+ debugLogger.warn("Failed to query Homebrew formula version:", error);
124
+ return null;
125
+ }
126
+ }
127
+ __name(getHomebrewLatestVersion, "getHomebrewLatestVersion");
109
128
  function getInstallationInfo(projectRoot, isAutoUpdateEnabled) {
110
129
  const cliPath = process.argv[1];
111
130
  if (!cliPath) {
@@ -317,6 +336,7 @@ export {
317
336
  getNpmCliPath,
318
337
  resolveUpdateCommand,
319
338
  formatUpdateInstructions,
339
+ getHomebrewLatestVersion,
320
340
  getInstallationInfo
321
341
  };
322
342
  /**
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-F6WFNA7U.js";
7
7
  import {
8
8
  preloadRuntimeFetchModule
9
- } from "./chunk-CPHEPGAO.js";
9
+ } from "./chunk-722JBVVW.js";
10
10
  import {
11
11
  init_esbuild_shims
12
12
  } from "./chunk-5O2XNYP6.js";
@@ -405,18 +405,18 @@ async function createContentGenerator(generatorConfig, config, isInitialAuth) {
405
405
  try {
406
406
  if (authType === "openai" /* USE_OPENAI */) {
407
407
  loadBaseGenerator = /* @__PURE__ */ __name(async () => {
408
- const { createOpenAIContentGenerator } = await import("./openaiContentGenerator-Z3GPWJU4.js");
408
+ const { createOpenAIContentGenerator } = await import("./openaiContentGenerator-2S2UT4RR.js");
409
409
  return createOpenAIContentGenerator(generatorConfig, config);
410
410
  }, "loadBaseGenerator");
411
411
  } else if (authType === "qwen-oauth" /* QWEN_OAUTH */) {
412
- const { getQwenOAuthClient: getQwenOauthClient } = await import("./qwenOAuth2-EBV52DWJ.js");
412
+ const { getQwenOAuthClient: getQwenOauthClient } = await import("./qwenOAuth2-UI2OC2RN.js");
413
413
  try {
414
414
  const qwenClient = await getQwenOauthClient(
415
415
  config,
416
416
  isInitialAuth ? { requireCachedCredentials: true } : void 0
417
417
  );
418
418
  loadBaseGenerator = /* @__PURE__ */ __name(async () => {
419
- const { QwenContentGenerator } = await import("./qwenContentGenerator-NLEMBZVU.js");
419
+ const { QwenContentGenerator } = await import("./qwenContentGenerator-G3H2TCXF.js");
420
420
  return new QwenContentGenerator(qwenClient, generatorConfig, config);
421
421
  }, "loadBaseGenerator");
422
422
  } catch (error) {
@@ -427,12 +427,12 @@ async function createContentGenerator(generatorConfig, config, isInitialAuth) {
427
427
  }
428
428
  } else if (authType === "anthropic" /* USE_ANTHROPIC */) {
429
429
  loadBaseGenerator = /* @__PURE__ */ __name(async () => {
430
- const { createAnthropicContentGenerator } = await import("./anthropicContentGenerator-M7XRJMSK.js");
430
+ const { createAnthropicContentGenerator } = await import("./anthropicContentGenerator-CU3G53RX.js");
431
431
  return createAnthropicContentGenerator(generatorConfig, config);
432
432
  }, "loadBaseGenerator");
433
433
  } else if (authType === "gemini" /* USE_GEMINI */ || authType === "vertex-ai" /* USE_VERTEX_AI */) {
434
434
  loadBaseGenerator = /* @__PURE__ */ __name(async () => {
435
- const { createGeminiContentGenerator } = await import("./geminiContentGenerator-CS3M7SOS.js");
435
+ const { createGeminiContentGenerator } = await import("./geminiContentGenerator-KAFSMFA6.js");
436
436
  return createGeminiContentGenerator(generatorConfig, config);
437
437
  }, "loadBaseGenerator");
438
438
  } else {
@@ -448,7 +448,7 @@ async function createContentGenerator(generatorConfig, config, isInitialAuth) {
448
448
  try {
449
449
  const [baseGenerator, { LoggingContentGenerator }] = await Promise.all([
450
450
  loadBaseGenerator(),
451
- import("./loggingContentGenerator-GR2QQ2C5.js")
451
+ import("./loggingContentGenerator-5G4ZR5D5.js")
452
452
  ]);
453
453
  return new LoggingContentGenerator(
454
454
  baseGenerator,
@@ -3,16 +3,16 @@
3
3
  import {
4
4
  settleChatRecording,
5
5
  subscribeToHeadlessChatRecordingFailures
6
- } from "./chunk-LSO6EL4Y.js";
6
+ } from "./chunk-2MDUS4XE.js";
7
7
  import {
8
8
  handleAtCommand
9
- } from "./chunk-SCZU65AI.js";
9
+ } from "./chunk-7VRNXKKK.js";
10
10
  import {
11
11
  JsonOutputAdapter
12
- } from "./chunk-TSMPNGBC.js";
12
+ } from "./chunk-LBQBFRFN.js";
13
13
  import {
14
14
  StreamJsonOutputAdapter
15
- } from "./chunk-Y4RVDOXV.js";
15
+ } from "./chunk-DF7KFKCL.js";
16
16
  import {
17
17
  buildInitialSystemReminders,
18
18
  buildSystemMessage,
@@ -24,11 +24,11 @@ import {
24
24
  insertAfterFunctionResponses,
25
25
  isSlashCommand,
26
26
  normalizePartList
27
- } from "./chunk-6RDZLBSJ.js";
27
+ } from "./chunk-SGKUVDBX.js";
28
28
  import {
29
29
  RunBudgetEnforcer,
30
30
  cleanupReviewWorktreeLeases
31
- } from "./chunk-XYRBK56E.js";
31
+ } from "./chunk-U7U3CX4K.js";
32
32
  import {
33
33
  AlreadyReportedError,
34
34
  handleBudgetExceededError,
@@ -36,10 +36,10 @@ import {
36
36
  handleError,
37
37
  handleMaxTurnsExceededError,
38
38
  handleToolError
39
- } from "./chunk-XITLNXLX.js";
39
+ } from "./chunk-VWS7DWY6.js";
40
40
  import {
41
41
  isInlineModelOverrideAllowed
42
- } from "./chunk-EOPBFLA5.js";
42
+ } from "./chunk-AKN26LMT.js";
43
43
  import {
44
44
  PLAN_MODE_ENTRY_SIBLING_SKIP_MESSAGE,
45
45
  buildSessionRecoveryPlanFromApiHistory,
@@ -51,12 +51,15 @@ import {
51
51
  finalizeToolResponses,
52
52
  findPlanModeEntryBatchBoundaryIndex,
53
53
  findRepeatedDuplicateProviderToolCall,
54
+ getCachedToolCallFingerprint,
55
+ isReplayOfHandledToolCall,
54
56
  isToolCallConcurrencySafe,
55
57
  markDuplicateProviderToolCallResponseSent,
56
58
  parseAndFormatApiError,
57
59
  partitionByConcurrencySafety,
60
+ recordHandledToolCall,
58
61
  restoreWorktreeContext
59
- } from "./chunk-OFTPCOGR.js";
62
+ } from "./chunk-L7RG5PVT.js";
60
63
  import {
61
64
  parsePositiveIntegerEnv
62
65
  } from "./chunk-6PVPNMXU.js";
@@ -65,13 +68,13 @@ import {
65
68
  } from "./chunk-O6GEWCJA.js";
66
69
  import {
67
70
  GoalPersistenceUnavailableError
68
- } from "./chunk-4ZMS3JCR.js";
71
+ } from "./chunk-JBSW7JA6.js";
69
72
  import {
70
73
  addAgentOutputMessageAttributes
71
- } from "./chunk-OO4FKHLO.js";
74
+ } from "./chunk-2GM44E7D.js";
72
75
  import {
73
76
  isSystemReminderContent
74
- } from "./chunk-SG7ZP5PG.js";
77
+ } from "./chunk-HHNSO2Y4.js";
75
78
  import {
76
79
  formatFullTurnVisionNotice,
77
80
  formatVisionBridgeNotice,
@@ -81,25 +84,25 @@ import {
81
84
  shouldRunVisionBridge,
82
85
  splitImageParts,
83
86
  uiTelemetryService
84
- } from "./chunk-KC4WMLZO.js";
87
+ } from "./chunk-EXY6APEA.js";
85
88
  import {
86
89
  ToolNames,
87
90
  canonicalToolName
88
- } from "./chunk-6HY6IF3Z.js";
91
+ } from "./chunk-OUYRA764.js";
89
92
  import {
90
93
  endInteractionSpan,
91
94
  getActiveInteractionSpan,
92
95
  isTelemetrySdkInitialized,
93
96
  shutdownTelemetry
94
- } from "./chunk-XT4RKHVE.js";
97
+ } from "./chunk-RZ4PE3ER.js";
95
98
  import {
96
99
  FatalInputError,
97
100
  createDebugLogger,
98
101
  getErrorType
99
- } from "./chunk-BUQDLC2G.js";
102
+ } from "./chunk-XFRYCCVC.js";
100
103
  import {
101
104
  registerCleanup
102
- } from "./chunk-3SL2P3WX.js";
105
+ } from "./chunk-DIHJXVT4.js";
103
106
  import {
104
107
  init_esbuild_shims
105
108
  } from "./chunk-5O2XNYP6.js";
@@ -1130,7 +1133,9 @@ ${text}
1130
1133
  });
1131
1134
  return 1;
1132
1135
  }, "emitLoopDetectedResult");
1133
- const handledProviderToolCallIds = geminiClient.getHistoryFunctionResponseIds();
1136
+ const handledToolCallFingerprints = new Map(
1137
+ geminiClient.getHistoryToolCallFingerprints()
1138
+ );
1134
1139
  const duplicateProviderToolCallResponseIds = /* @__PURE__ */ new Set();
1135
1140
  const processToolCallBatch = /* @__PURE__ */ __name(async (batchRequests, setModelOverride, runtimeView) => {
1136
1141
  let terminateTurn = false;
@@ -1156,10 +1161,22 @@ ${text}
1156
1161
  }
1157
1162
  return true;
1158
1163
  });
1164
+ const isReplayOfHandledRequest = /* @__PURE__ */ __name((request) => {
1165
+ const providerCallId = getProviderResponseId(request);
1166
+ return providerCallId ? isReplayOfHandledToolCall(
1167
+ handledToolCallFingerprints,
1168
+ providerCallId,
1169
+ getCachedToolCallFingerprint(
1170
+ request,
1171
+ request.name,
1172
+ request.args
1173
+ )
1174
+ ) : false;
1175
+ }, "isReplayOfHandledRequest");
1159
1176
  const repeatedDuplicateRequest = findRepeatedDuplicateProviderToolCall(
1160
1177
  [...uniqueBatchRequests, ...duplicateBatchRequests],
1161
1178
  getProviderResponseId,
1162
- handledProviderToolCallIds,
1179
+ isReplayOfHandledRequest,
1163
1180
  duplicateProviderToolCallResponseIds
1164
1181
  );
1165
1182
  if (repeatedDuplicateRequest) {
@@ -1181,8 +1198,16 @@ ${text}
1181
1198
  executableBatchRequests.push(requestInfo);
1182
1199
  continue;
1183
1200
  }
1184
- if (!handledProviderToolCallIds.has(providerCallId)) {
1185
- handledProviderToolCallIds.add(providerCallId);
1201
+ if (!isReplayOfHandledRequest(requestInfo)) {
1202
+ recordHandledToolCall(
1203
+ handledToolCallFingerprints,
1204
+ providerCallId,
1205
+ getCachedToolCallFingerprint(
1206
+ requestInfo,
1207
+ requestInfo.name,
1208
+ requestInfo.args
1209
+ )
1210
+ );
1186
1211
  executableBatchRequests.push(requestInfo);
1187
1212
  continue;
1188
1213
  }