@qwen-code/qwen-code 0.23.1-preview.2 → 0.23.1

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 (297) hide show
  1. package/bundled/computer-use/SKILL.md +189 -116
  2. package/bundled/goal-draft/SKILL.md +23 -13
  3. package/bundled/qc-helper/docs/_meta.ts +1 -0
  4. package/bundled/qc-helper/docs/configuration/model-providers.md +47 -1
  5. package/bundled/qc-helper/docs/configuration/settings.md +50 -0
  6. package/bundled/qc-helper/docs/conversations-recovery.md +102 -0
  7. package/bundled/qc-helper/docs/features/channels/overview.md +1 -1
  8. package/bundled/qc-helper/docs/features/computer-use.md +9 -7
  9. package/bundled/qc-helper/docs/features/followup-suggestions.md +2 -2
  10. package/bundled/qc-helper/docs/features/goals.md +15 -3
  11. package/bundled/qc-helper/docs/qwen-serve.md +19 -1
  12. package/chunks/{MaxSizedBox-IYIQ43IZ.js → MaxSizedBox-UDO6Y7RB.js} +20 -20
  13. package/chunks/{StandaloneSessionPicker-AWB2OHX6.js → StandaloneSessionPicker-D4CUOO4H.js} +38 -38
  14. package/chunks/{acp-startup-profiler-BAL4LJTN.js → acp-startup-profiler-KEU6VAYR.js} +2 -2
  15. package/chunks/{acpAgent-ZC57OLS4.js → acpAgent-KWLJFADK.js} +118 -91
  16. package/chunks/{agent-GEBPAEJS.js → agent-GSUPGEOL.js} +13 -13
  17. package/chunks/{agent-headless-63ZEYAJK.js → agent-headless-HNYCQUJB.js} +13 -13
  18. package/chunks/{anthropicContentGenerator-6XDHXIII.js → anthropicContentGenerator-I7LQZH26.js} +30 -7
  19. package/chunks/{askUserQuestion-3KAYLLMM.js → askUserQuestion-I5W5S3D6.js} +1 -1
  20. package/chunks/{bridge-MHWO5I5T.js → bridge-B7CV6RVI.js} +23 -23
  21. package/chunks/{channel-management-service-NFRZXQFO.js → channel-management-service-TRTLQTSV.js} +4 -4
  22. package/chunks/{channel-settings-store-T7PMIHKC.js → channel-settings-store-FW45IRUP.js} +31 -31
  23. package/chunks/{channel-worker-group-O2BWK5F7.js → channel-worker-group-PIYPVCTF.js} +6 -6
  24. package/chunks/{channel-worker-manager-4WP7VJOD.js → channel-worker-manager-FQHEDTD2.js} +6 -6
  25. package/chunks/{channel-worker-supervisor-CCUXD6J5.js → channel-worker-supervisor-XJPZZ3VK.js} +3 -3
  26. package/chunks/{chunk-KTLT7VCX.js → chunk-25CBAK3H.js} +2 -2
  27. package/chunks/{chunk-SHX2HIE7.js → chunk-27LTEY6D.js} +1 -1
  28. package/chunks/{chunk-ZT3XUGSU.js → chunk-2TMJRF46.js} +86 -9
  29. package/chunks/{chunk-HWZOOSEB.js → chunk-2YS3NU4A.js} +3 -3
  30. package/chunks/chunk-2Z3T52OC.js +82 -0
  31. package/chunks/{chunk-QW7BUOSI.js → chunk-2ZFO5JD7.js} +20 -3
  32. package/chunks/{chunk-RH344FKI.js → chunk-3BTHHXXE.js} +1 -1
  33. package/chunks/{chunk-OFB36ZBA.js → chunk-3LPJ776W.js} +1 -1
  34. package/chunks/{chunk-GEV66YGE.js → chunk-3VDLQUR2.js} +1 -1
  35. package/chunks/{chunk-RRCNEW2A.js → chunk-3VWPPK5Q.js} +58 -4
  36. package/chunks/{chunk-L36LLVA5.js → chunk-3YQMUBTS.js} +3 -3
  37. package/chunks/{chunk-LTCI6ZOJ.js → chunk-45ROPFQY.js} +1 -1
  38. package/chunks/{chunk-W4LL5RZO.js → chunk-4ALNJDHL.js} +52 -13
  39. package/chunks/{chunk-4OCYWXKF.js → chunk-5CVY5Q2P.js} +3 -3
  40. package/chunks/{chunk-ZRVFHLLK.js → chunk-5DQ4YTIZ.js} +1 -1
  41. package/chunks/{chunk-FWH4736Q.js → chunk-5IL2BZHW.js} +3 -3
  42. package/chunks/{chunk-537SQ2AI.js → chunk-5WC2ECUK.js} +104 -16
  43. package/chunks/{chunk-3K65MUKD.js → chunk-65I7S4Z3.js} +2 -1
  44. package/chunks/{chunk-RUMSY4ES.js → chunk-66JBCTJF.js} +8 -7
  45. package/chunks/{chunk-YLFICBYK.js → chunk-6JXHO7LG.js} +3 -3
  46. package/chunks/{chunk-TDHVOZ65.js → chunk-6QILGINT.js} +2 -2
  47. package/chunks/{chunk-WQBR7LN5.js → chunk-6QV7Z74P.js} +1 -1
  48. package/chunks/{chunk-RSU3I6UL.js → chunk-6SADVYQQ.js} +1 -1
  49. package/chunks/{chunk-AIMZIXZM.js → chunk-6TPVIESH.js} +5 -7
  50. package/chunks/{chunk-2LD5U7Q3.js → chunk-6YEOCHSE.js} +29 -1
  51. package/chunks/{chunk-7PMKXGRP.js → chunk-75LBC7SV.js} +66 -9
  52. package/chunks/{chunk-B5FF3LRF.js → chunk-7SL55L5H.js} +22 -15
  53. package/chunks/{chunk-I7UNCY24.js → chunk-ARYNBBBM.js} +3 -3
  54. package/chunks/{chunk-QQGAR64U.js → chunk-B3EL44K3.js} +4 -4
  55. package/chunks/{chunk-KAZWXVI3.js → chunk-CABDNUJ4.js} +2 -2
  56. package/chunks/{chunk-R7TKFIQO.js → chunk-CALNF3Z3.js} +1 -1
  57. package/chunks/{chunk-75UQFGFE.js → chunk-CHVU543W.js} +1 -1
  58. package/chunks/{chunk-C4NXRR7T.js → chunk-CIKL2DQP.js} +2 -2
  59. package/chunks/{chunk-LD53HMPV.js → chunk-CRZBDVP2.js} +1 -0
  60. package/chunks/{chunk-SHK2SIR5.js → chunk-D6AQNMUA.js} +4 -4
  61. package/chunks/{chunk-EPZWBYQI.js → chunk-DO5SMV52.js} +8 -6
  62. package/chunks/{chunk-P5Z7VD23.js → chunk-DXQ6Z7AH.js} +106 -39
  63. package/chunks/{chunk-3RMVM33U.js → chunk-DZ6D4B3K.js} +5 -5
  64. package/chunks/{chunk-T7TP5UQL.js → chunk-E7XSUYCZ.js} +4 -4
  65. package/chunks/{chunk-2C3XDBGL.js → chunk-EEKU6COG.js} +4 -4
  66. package/chunks/{chunk-AX23QSX3.js → chunk-EHTKOO6W.js} +4 -4
  67. package/chunks/{chunk-XNC2TCUO.js → chunk-ENZDGHGJ.js} +4 -4
  68. package/chunks/{chunk-733KQL63.js → chunk-EOET4H7C.js} +3 -3
  69. package/chunks/{chunk-37SOBIA3.js → chunk-ERXNTINK.js} +1 -1
  70. package/chunks/{chunk-F47DITLZ.js → chunk-FAWTMDX7.js} +14 -0
  71. package/chunks/{chunk-5JLQWQK6.js → chunk-FV4DM2M4.js} +2 -2
  72. package/chunks/{chunk-UTVIIA7N.js → chunk-FW4E4QPG.js} +1 -1
  73. package/chunks/{chunk-REDVV5NC.js → chunk-FWRRUITH.js} +7 -7
  74. package/chunks/{chunk-5V4B3EWA.js → chunk-GM44O6F7.js} +1 -1
  75. package/chunks/{chunk-Z6DDPSGJ.js → chunk-GNY7B3CA.js} +1 -1
  76. package/chunks/{chunk-ERMAXPXA.js → chunk-HIXUUCGY.js} +187 -12
  77. package/chunks/{chunk-EJNYBDYC.js → chunk-HNLMYDQE.js} +1 -1
  78. package/chunks/{chunk-XX4MBBFW.js → chunk-HUX2DOTF.js} +3 -3
  79. package/chunks/{chunk-RCUWMVN3.js → chunk-HZ2HUXX7.js} +1 -1
  80. package/chunks/{chunk-RD3VPM4E.js → chunk-IKG2YVRZ.js} +2 -2
  81. package/chunks/{chunk-IMWCUWQT.js → chunk-J3TJH52D.js} +1 -1
  82. package/chunks/{chunk-ZJ2LM2SI.js → chunk-JGDRB4FP.js} +104 -33
  83. package/chunks/{chunk-ANVC5CSK.js → chunk-L7V52QEZ.js} +10 -10
  84. package/chunks/{chunk-MFCWL4LI.js → chunk-LNCNUMJ5.js} +451 -396
  85. package/chunks/{chunk-AUJOWIT5.js → chunk-LZGFVUWZ.js} +3 -3
  86. package/chunks/{chunk-6KYWU726.js → chunk-M73KHGNR.js} +13 -66
  87. package/chunks/{chunk-ADJD4LZF.js → chunk-MA5OUNN6.js} +1 -1
  88. package/chunks/{chunk-I67KJGM6.js → chunk-MFYH2VXV.js} +3 -3
  89. package/chunks/{chunk-PLUAIHZO.js → chunk-N7YQEKGX.js} +6 -6
  90. package/chunks/{chunk-JOV46WGX.js → chunk-NB3NDQQK.js} +1 -1
  91. package/chunks/chunk-NOO4QFXM.js +171 -0
  92. package/chunks/{chunk-VYCJITND.js → chunk-O2JBJQCF.js} +1 -1
  93. package/chunks/{chunk-RQNAO42A.js → chunk-OESZTXTG.js} +1 -1
  94. package/chunks/{chunk-UKADFFL2.js → chunk-OFVAS4AR.js} +1 -1
  95. package/chunks/{chunk-Y3C5COGI.js → chunk-OPMKGOLD.js} +1 -1
  96. package/chunks/{chunk-TSLRORQR.js → chunk-PDUMGZ2P.js} +1467 -1323
  97. package/chunks/{chunk-Z6KFLEG7.js → chunk-PSPAM24S.js} +1 -0
  98. package/chunks/{chunk-5FYGZ7E3.js → chunk-QK4K76T6.js} +2 -2
  99. package/chunks/{chunk-NUQFUXOG.js → chunk-QTNCGZHQ.js} +2 -0
  100. package/chunks/{chunk-WFXD5OZH.js → chunk-QZOXVQPK.js} +1 -1
  101. package/chunks/{chunk-QJVZLILI.js → chunk-R7OO56VZ.js} +1 -1
  102. package/chunks/{chunk-KP5QK3FB.js → chunk-RNYENHN5.js} +397 -54
  103. package/chunks/{chunk-22QOQKG4.js → chunk-RXT4QBDX.js} +1 -1
  104. package/chunks/{chunk-LYHYXJJ3.js → chunk-S6QVI3MV.js} +3 -3
  105. package/chunks/{chunk-NXWYCSPL.js → chunk-SOA4HKRJ.js} +1 -1
  106. package/chunks/{chunk-IGOIYZBG.js → chunk-T2IHCZLS.js} +2 -2
  107. package/chunks/{chunk-C55CR5I4.js → chunk-TGC4264Q.js} +6 -6
  108. package/chunks/{chunk-EGRFCIXD.js → chunk-TWAMIEQ2.js} +79 -18
  109. package/chunks/{chunk-PMGWY6ZP.js → chunk-TWWS7XUW.js} +13 -10
  110. package/chunks/{chunk-RGAQDQ3Z.js → chunk-UHUT4IDM.js} +18 -9
  111. package/chunks/{chunk-HPE4LEWX.js → chunk-USN6VNTO.js} +1 -1
  112. package/chunks/{chunk-BNWIX6BM.js → chunk-UXDVUFKU.js} +3 -3
  113. package/chunks/{chunk-HY3DXYZK.js → chunk-UYDQYDW2.js} +1 -1
  114. package/chunks/{chunk-3K456UJF.js → chunk-VF6D6EGV.js} +12 -4
  115. package/chunks/{chunk-ZNI3V2XA.js → chunk-WAASYFPK.js} +2 -2
  116. package/chunks/{chunk-OHOO527W.js → chunk-WG7BL3FY.js} +52 -2
  117. package/chunks/{chunk-C7M445SS.js → chunk-WJDXKQIO.js} +1 -1
  118. package/chunks/{chunk-HZS3JRQW.js → chunk-WNISCNTA.js} +40 -2
  119. package/chunks/{chunk-AWDF462I.js → chunk-WQMUGQ6G.js} +2 -2
  120. package/chunks/{chunk-VU7O7CGQ.js → chunk-XDNFODER.js} +1 -1
  121. package/chunks/{chunk-65GHQ4FX.js → chunk-XVTCSVBK.js} +514 -47
  122. package/chunks/{chunk-SI6Q52UI.js → chunk-XZ3Z43XL.js} +3 -3
  123. package/chunks/{chunk-SD7Y2PMC.js → chunk-YAC7H4K3.js} +2 -2
  124. package/chunks/{chunk-FXYNIZPW.js → chunk-YCEKI7QX.js} +51 -10
  125. package/chunks/{chunk-7IKXTGZT.js → chunk-YI2YCNSP.js} +1 -1
  126. package/chunks/{chunk-E4VX6LXB.js → chunk-YZTGGCEE.js} +10 -2
  127. package/chunks/{chunk-VMFPZXRT.js → chunk-ZNO5BUAD.js} +43 -31
  128. package/chunks/{chunk-WLZRMF3C.js → chunk-ZPL2TZNA.js} +353 -11
  129. package/chunks/{chunk-TXAEXF2B.js → chunk-ZU2T5JIS.js} +21 -8
  130. package/chunks/{config-utils-F4CFJ4MW.js → config-utils-KTDSQ4MU.js} +24 -24
  131. package/chunks/{contextCommand-OIIGGOMU.js → contextCommand-UQ3KRYGK.js} +22 -22
  132. package/chunks/{core-runtime-JEHLOGMB.js → core-runtime-JR34JAFH.js} +20 -20
  133. package/chunks/{create-sub-session-MVFBE5RA.js → create-sub-session-RGPJOI4S.js} +21 -21
  134. package/chunks/{daemon-LCUELM6E.js → daemon-UI6SQSBV.js} +1 -1
  135. package/chunks/{daemon-git-worktree-guard-5FTKLJOU.js → daemon-git-worktree-guard-H3OA26KQ.js} +20 -20
  136. package/chunks/{daemon-status-provider-P6A5MPMW.js → daemon-status-provider-6WZLKSZU.js} +27 -27
  137. package/chunks/{daemon-trust-policy-ZJ3NFYUO.js → daemon-trust-policy-3EDP2BYD.js} +27 -27
  138. package/chunks/{daemon-trust-policy-monitor-6SDLEW7S.js → daemon-trust-policy-monitor-CRHZPK52.js} +27 -27
  139. package/chunks/{deferred-core-runtime-DWOXIU5S.js → deferred-core-runtime-LO5NTQQ4.js} +20 -20
  140. package/chunks/{discovery-TUM3ZQ6U.js → discovery-XP4RMDUM.js} +4 -2
  141. package/chunks/{dist-NXW4DUUX.js → dist-24TCWK5H.js} +1 -1
  142. package/chunks/{dist-I74QLLQS.js → dist-5I4HLUTO.js} +1 -1
  143. package/chunks/{dist-XINEKB5A.js → dist-FDISN4AK.js} +1 -1
  144. package/chunks/{dist-VCAS67N5.js → dist-M4CBX53H.js} +1 -1
  145. package/chunks/{dist-AI25RVRA.js → dist-NQ2636VT.js} +1 -1
  146. package/chunks/{dist-3H3WODVS.js → dist-OR2ZQTXZ.js} +1 -1
  147. package/chunks/{dist-P6YWBITG.js → dist-STAGIFNB.js} +430 -51
  148. package/chunks/{dist-YNQU4CKC.js → dist-WZTUKIDR.js} +2 -2
  149. package/chunks/{dist-T4PRA5EZ.js → dist-XJ25G6OH.js} +1 -1
  150. package/chunks/{edit-WPVXLL3T.js → edit-LB7Z7XK5.js} +13 -13
  151. package/chunks/{enter-worktree-5A6VW6BN.js → enter-worktree-YFTKHXHZ.js} +2 -2
  152. package/chunks/{enterPlanMode-JSODW7E2.js → enterPlanMode-P6TVUFIY.js} +13 -13
  153. package/chunks/{environment-5LLJ3I3W.js → environment-QATJNNKI.js} +23 -23
  154. package/chunks/{errors-IQT3YZEP.js → errors-3XJ37PS2.js} +22 -22
  155. package/chunks/{exit-worktree-QV7E7KP6.js → exit-worktree-NF2XEMES.js} +3 -3
  156. package/chunks/{exitPlanMode-DDVFYNW4.js → exitPlanMode-A3OKL5UO.js} +13 -13
  157. package/chunks/{fast-path-PAUQQEVU.js → fast-path-DBIT5YQQ.js} +3 -3
  158. package/chunks/{fast-path-settings-ISEJPRYE.js → fast-path-settings-SATXY3PD.js} +3 -3
  159. package/chunks/{glob-SQ7CTZ7F.js → glob-73EDTXUE.js} +13 -13
  160. package/chunks/{goal-tools-UWZRCLQB.js → goal-tools-DFI6YMSD.js} +13 -13
  161. package/chunks/{handleAutoUpdate-RUPZZTSG.js → handleAutoUpdate-2FUNJO3B.js} +23 -23
  162. package/chunks/{i18n-SF5MPWEB.js → i18n-FDIA6KFI.js} +23 -21
  163. package/chunks/{image-gen-Q3RUTVKR.js → image-gen-XP4NNIYG.js} +4 -4
  164. package/chunks/{initializer-CK4WPYZG.js → initializer-4MJTJOTW.js} +27 -27
  165. package/chunks/{installationInfo-IRPQEYRF.js → installationInfo-232RA2OK.js} +20 -20
  166. package/chunks/{list-E3PS3EBJ.js → list-WN6WSGEB.js} +30 -30
  167. package/chunks/{llm-JQKBOYAF.js → llm-UDFWQWZA.js} +62 -62
  168. package/chunks/{llm-content-generator-2QWGBW42.js → llm-content-generator-VLMZ2A7A.js} +23 -8
  169. package/chunks/{loadedSettingsAdapter-DGXGVYZS.js → loadedSettingsAdapter-OBQEIXM7.js} +27 -27
  170. package/chunks/{loggingContentGenerator-ZYURLJKK.js → loggingContentGenerator-RGVUMUVX.js} +14 -14
  171. package/chunks/{managed-npm-update-HTHR63EA.js → managed-npm-update-QBAJYCFU.js} +20 -20
  172. package/chunks/{mcp-I7G2AEWS.js → mcp-OTIZZCPY.js} +27 -27
  173. package/chunks/{monitor-4R76BCRZ.js → monitor-BV5XF6LL.js} +13 -13
  174. package/chunks/{nonInteractiveCli-24OQ3VP2.js → nonInteractiveCli-W6MUKDVJ.js} +64 -61
  175. package/chunks/{notebook-edit-PPSH7FEX.js → notebook-edit-HGBEKGTE.js} +13 -13
  176. package/chunks/{openaiContentGenerator-K7V5EO7F.js → openaiContentGenerator-NSU3ERBH.js} +8 -8
  177. package/chunks/{pidfile-TGIUY2GG.js → pidfile-LE3TU4GE.js} +20 -20
  178. package/chunks/{processUtils-3USXUQWX.js → processUtils-YFBGJK67.js} +2 -2
  179. package/chunks/{prompt-terminal-ledger-XHVZRXJI.js → prompt-terminal-ledger-4W4W7DSO.js} +21 -21
  180. package/chunks/{qwenContentGenerator-MPBOQB64.js → qwenContentGenerator-HTA57WFC.js} +16 -16
  181. package/chunks/{qwenOAuth2-BS5D2LYV.js → qwenOAuth2-KX6LVYQ3.js} +4 -4
  182. package/chunks/{read-file-R256LDWQ.js → read-file-KHPQ2MB6.js} +2 -2
  183. package/chunks/{resumeHistoryUtils-S43LTFHD.js → resumeHistoryUtils-K7RV3QBN.js} +23 -23
  184. package/chunks/{ripGrep-L7HPZ75Y.js → ripGrep-NBBVCMG4.js} +3 -3
  185. package/chunks/{run-qwen-serve-CTFL5R6U.js → run-qwen-serve-A3JBOZCM.js} +58 -60
  186. package/chunks/{runtime-FS5TL6P7.js → runtime-7YOU2KJ3.js} +32 -32
  187. package/chunks/{scheduled-tasks-QXPV3Q35.js → scheduled-tasks-52LXK7LN.js} +25 -25
  188. package/chunks/{scheduler-EXU5HMVK.js → scheduler-J44M72VM.js} +22 -22
  189. package/chunks/{send-message-GQKXGMPI.js → send-message-AWKUDJBH.js} +1 -1
  190. package/chunks/{serve-ITJC7WNN.js → serve-TRC6XJUB.js} +27 -27
  191. package/chunks/{server-6JQY3PTU.js → server-YPNTJLX2.js} +1296 -822
  192. package/chunks/{session-PJDEKXD4.js → session-FMMIBFYX.js} +63 -62
  193. package/chunks/{session-attachments-root-L37ORSST.js → session-attachments-root-LDJMNK7K.js} +20 -20
  194. package/chunks/{session-pr-refresh-WIFD52YL.js → session-pr-refresh-NLR4EK2J.js} +24 -24
  195. package/chunks/{settings-LO6J5SAZ.js → settings-A46L577J.js} +26 -26
  196. package/chunks/{shell-ANAFVYGR.js → shell-Q5LSQPPY.js} +13 -13
  197. package/chunks/{skill-SHJWKSPH.js → skill-75KPJRCM.js} +2 -2
  198. package/chunks/{skill-settings-GX3XHZ5Q.js → skill-settings-775YT4YR.js} +26 -26
  199. package/chunks/{spawnChannel-WE42VBKM.js → spawnChannel-XY73I5CU.js} +20 -20
  200. package/chunks/{standalone-update-CWDIKJRP.js → standalone-update-L46XXNQ2.js} +22 -22
  201. package/chunks/{start-opentui-ui-BBHGFOTF.js → start-opentui-ui-WLV43247.js} +1991 -986
  202. package/chunks/{startInteractiveUI-FQX7LUYP.js → startInteractiveUI-F5DKMLOV.js} +1119 -1478
  203. package/chunks/{team-create-WKTPCH6D.js → team-create-2PATB77U.js} +13 -13
  204. package/chunks/{team-plan-approval-Y23DL7WR.js → team-plan-approval-QTANEWOS.js} +13 -13
  205. package/chunks/{terminal-image-renderer-B646HBDW.js → terminal-image-renderer-OGULCFNF.js} +20 -20
  206. package/chunks/{theme-manager-BNWESY26.js → theme-manager-CNO3QERP.js} +20 -20
  207. package/chunks/{tool-search-PVQ5O5Y2.js → tool-search-VXWEOZE7.js} +2 -2
  208. package/chunks/{total-session-admission-P5Z43KNW.js → total-session-admission-4KAADZPB.js} +24 -24
  209. package/chunks/{trustedFolders-FH2LT2MZ.js → trustedFolders-PPJSOPOT.js} +21 -21
  210. package/chunks/{update-relaunch-WOWTKJSN.js → update-relaunch-4PT4MW7B.js} +5 -5
  211. package/chunks/{updateCheck-3MYFMM35.js → updateCheck-WAVFLWNG.js} +22 -22
  212. package/chunks/{useAutoAcceptIndicator-Q7ZRRRKO.js → useAutoAcceptIndicator-XNED4NRB.js} +29 -29
  213. package/chunks/{validateNonInterActiveAuth-MYEWJX3G.js → validateNonInterActiveAuth-J676DUQ2.js} +59 -58
  214. package/chunks/{version-RO2FPO76.js → version-J6SRRQB2.js} +1 -1
  215. package/chunks/{web-fetch-QAKY2LUA.js → web-fetch-FMZZYX44.js} +5 -5
  216. package/chunks/{web-search-XA5Z4ZCD.js → web-search-3G2KXCX5.js} +18 -7
  217. package/chunks/{workflow-QFIOCMDM.js → workflow-PPZZICQ7.js} +15 -15
  218. package/chunks/{workspace-providers-status-B2UD7RAG.js → workspace-providers-status-IIYTAQST.js} +29 -29
  219. package/chunks/{workspace-registration-store-VZLRTI3Q.js → workspace-registration-store-VHCDXAV7.js} +1 -1
  220. package/chunks/{workspace-registry-GYOGG6TM.js → workspace-registry-I7VQIPS2.js} +24 -24
  221. package/chunks/{workspace-runtime-coordinator-7KRXGQ4V.js → workspace-runtime-coordinator-DBGNY32G.js} +24 -24
  222. package/chunks/{workspace-service-DJEYGJE4.js → workspace-service-QSKB2T54.js} +31 -31
  223. package/chunks/{workspace-skills-status-MOKNESUC.js → workspace-skills-status-T7GPT65J.js} +27 -27
  224. package/chunks/{workspace-trust-reconciler-AXOSUTQW.js → workspace-trust-reconciler-2PKRDAU4.js} +31 -31
  225. package/chunks/{write-file-QOYVHAKK.js → write-file-L76CGFTQ.js} +14 -14
  226. package/chunks/{zoom-image-UCCLGFNC.js → zoom-image-TDJJY2VZ.js} +2 -2
  227. package/cli.js +13 -13
  228. package/export-transcript-document.js +126 -122
  229. package/package.json +3 -3
  230. package/web-shell/assets/{abnfDiagram-VCTEODGH-CTstZpXw.js → abnfDiagram-VCTEODGH-DHc6plZn.js} +1 -1
  231. package/web-shell/assets/{arc-DKW0mbPo.js → arc-BQ9m8TDV.js} +1 -1
  232. package/web-shell/assets/{architectureDiagram-5GKGNRK7-DkMpJ42t.js → architectureDiagram-5GKGNRK7-D5ap3oVB.js} +1 -1
  233. package/web-shell/assets/{blockDiagram-NRAW4CY4-7Cp1_4i3.js → blockDiagram-NRAW4CY4-BIbnyNph.js} +1 -1
  234. package/web-shell/assets/{c4Diagram-UCG6FXSJ-BfaoSlBK.js → c4Diagram-UCG6FXSJ-BRsdx_iG.js} +1 -1
  235. package/web-shell/assets/channel-uMMdTrYk.js +1 -0
  236. package/web-shell/assets/{chunk-2Q5K7J3B-_n1qzAio.js → chunk-2Q5K7J3B-3lf1fNlx.js} +1 -1
  237. package/web-shell/assets/{chunk-5VM5RSS4-0cira5ZV.js → chunk-5VM5RSS4-DP8VNRc4.js} +1 -1
  238. package/web-shell/assets/{chunk-F27PBJKO-DseRXSHC.js → chunk-F27PBJKO-DrohDmZ6.js} +1 -1
  239. package/web-shell/assets/{chunk-G27WJ6UU-BehQWin0.js → chunk-G27WJ6UU-UZ2QhSx6.js} +1 -1
  240. package/web-shell/assets/{chunk-JWPE2WC7-B5ftg1Bb.js → chunk-JWPE2WC7-BIMHVcZK.js} +1 -1
  241. package/web-shell/assets/{chunk-LCL6LL3I-D7rnbVdk.js → chunk-LCL6LL3I-izRxdSDd.js} +1 -1
  242. package/web-shell/assets/{chunk-POPQ4Y6H-2Bp-Orju.js → chunk-POPQ4Y6H-CXADD4PP.js} +1 -1
  243. package/web-shell/assets/{chunk-SVP7TREG-CD2goGva.js → chunk-SVP7TREG-B96d8Y_1.js} +1 -1
  244. package/web-shell/assets/{chunk-XXDRQBXY-DzQt-Rji.js → chunk-XXDRQBXY-CF2sVQpv.js} +1 -1
  245. package/web-shell/assets/classDiagram-DTDB5LWJ-DcY-26Ig.js +1 -0
  246. package/web-shell/assets/classDiagram-v2-JRS7N3AN-DcY-26Ig.js +1 -0
  247. package/web-shell/assets/{cose-bilkent-JH36ORCC-C-BZXSUn.js → cose-bilkent-JH36ORCC-CT6tXVAS.js} +1 -1
  248. package/web-shell/assets/csv-CX7rUNeC.svg +1 -0
  249. package/web-shell/assets/{cynefin-OW5HDTMX-BTcvowe1.js → cynefin-OW5HDTMX-X1NS4vtV.js} +1 -1
  250. package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-BoUE6K81.js → cynefinDiagram-5FMLGOSQ-DNsKNOT4.js} +1 -1
  251. package/web-shell/assets/{dagre-3AP2YEHR-BHxy9xeB.js → dagre-3AP2YEHR-9-AHKqsb.js} +1 -1
  252. package/web-shell/assets/{diagram-S7CK7UJ4-DMiJIvDT.js → diagram-S7CK7UJ4-Bjgms7j6.js} +1 -1
  253. package/web-shell/assets/{diagram-UQ7AKVKN-DXV09Aes.js → diagram-UQ7AKVKN-h6bCprbE.js} +1 -1
  254. package/web-shell/assets/{diagram-VSXAHHWV-CocpRomV.js → diagram-VSXAHHWV-4SbQXVLt.js} +1 -1
  255. package/web-shell/assets/{diagram-VX7I27RA-DL7nqtb4.js → diagram-VX7I27RA-B5gPCzzB.js} +1 -1
  256. package/web-shell/assets/{diagram-Z3DM3KII-CPZ2Jux_.js → diagram-Z3DM3KII-DFJXIA3A.js} +1 -1
  257. package/web-shell/assets/{ebnfDiagram-PWID7BFC-BX-eVNsX.js → ebnfDiagram-PWID7BFC-FwyaU7VY.js} +1 -1
  258. package/web-shell/assets/{erDiagram-SSCWMZ5O-CPy_Ir6y.js → erDiagram-SSCWMZ5O-8vJQh2te.js} +1 -1
  259. package/web-shell/assets/{flowDiagram-A5DVABFB-eknAOte9.js → flowDiagram-A5DVABFB-BzA_1gMN.js} +1 -1
  260. package/web-shell/assets/{ganttDiagram-EL5Y4UJY-crAxw_t7.js → ganttDiagram-EL5Y4UJY-Co-ABbVX.js} +1 -1
  261. package/web-shell/assets/{gitGraphDiagram-WWUBYQGX-M29pa3Tc.js → gitGraphDiagram-WWUBYQGX-DW_FcyrX.js} +1 -1
  262. package/web-shell/assets/{index-C9R-iojE.js → index-BbMXfhNG.js} +1 -1
  263. package/web-shell/assets/{index-B4TLaxWs.js → index-Bu-rZoJ-.js} +462 -454
  264. package/web-shell/assets/index-CsPwZ1ut.css +36 -0
  265. package/web-shell/assets/{infoDiagram-RXCK75RN-XqspXdOU.js → infoDiagram-RXCK75RN-BEgfhUFN.js} +1 -1
  266. package/web-shell/assets/{ishikawaDiagram-5VMMS53U-C5KFS-7j.js → ishikawaDiagram-5VMMS53U-DCsMxQmc.js} +1 -1
  267. package/web-shell/assets/{journeyDiagram-EYS64GPL-Cc57LVRo.js → journeyDiagram-EYS64GPL-DyIEYoHz.js} +1 -1
  268. package/web-shell/assets/{kanban-definition-3QL26DDD-C81OG-AI.js → kanban-definition-3QL26DDD-CkxjqCNr.js} +1 -1
  269. package/web-shell/assets/{layout-CFVu37BB.js → layout-BEWc0Al9.js} +1 -1
  270. package/web-shell/assets/{linear-ChBxdtWf.js → linear-CNuNxirL.js} +1 -1
  271. package/web-shell/assets/{mermaid.core-CMLfue0w.js → mermaid.core-DZBre674.js} +6 -6
  272. package/web-shell/assets/{mindmap-definition-FBJOCRG2-DFsvJThp.js → mindmap-definition-FBJOCRG2-CpafFz_F.js} +1 -1
  273. package/web-shell/assets/{pegDiagram-XKGWAZYB-BzpRzM4F.js → pegDiagram-XKGWAZYB-DfZqk_dq.js} +1 -1
  274. package/web-shell/assets/{pieDiagram-E7YTZNPT-Cv0Kankl.js → pieDiagram-E7YTZNPT-S0UWXlgC.js} +1 -1
  275. package/web-shell/assets/{quadrantDiagram-AXDQQJYC-Bh2BJ3Ay.js → quadrantDiagram-AXDQQJYC-dd37_Ohj.js} +1 -1
  276. package/web-shell/assets/{railroadDiagram-O6MQD6OU-y8rNDdDS.js → railroadDiagram-O6MQD6OU-CH8NJZ7u.js} +1 -1
  277. package/web-shell/assets/{requirementDiagram-EFPCY7ZU-C0m2DKJ_.js → requirementDiagram-EFPCY7ZU-CFdqWYih.js} +1 -1
  278. package/web-shell/assets/{sankeyDiagram-P5KCCOFB-BzdGnSF4.js → sankeyDiagram-P5KCCOFB-CsddcEGD.js} +1 -1
  279. package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-DPzAVmzz.js → sequenceDiagram-WJ2MYXX4-BZ270mGw.js} +1 -1
  280. package/web-shell/assets/{sizeCapture-X5ZJPWSS-LcHG28Zh.js → sizeCapture-X5ZJPWSS-CGaS4DBV.js} +1 -1
  281. package/web-shell/assets/{stateDiagram-HBIQ2CUA-C1Bzy3IT.js → stateDiagram-HBIQ2CUA-COpIzMu6.js} +1 -1
  282. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-D6qEVAji.js +1 -0
  283. package/web-shell/assets/{swimlanes-XN3QIQJK-Bftk8V64.js → swimlanes-XN3QIQJK-CMF889m3.js} +1 -1
  284. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-mem5Jj4m.js +8 -0
  285. package/web-shell/assets/{timeline-definition-24CTP7MA-BfXHcN1A.js → timeline-definition-24CTP7MA-BelnxYz5.js} +1 -1
  286. package/web-shell/assets/{vennDiagram-4TSXK5OY-DRSlI9-V.js → vennDiagram-4TSXK5OY-CU-NRqIB.js} +1 -1
  287. package/web-shell/assets/{wardleyDiagram-VM6X3IG4-CaLmqGau.js → wardleyDiagram-VM6X3IG4-CDNKqWh-.js} +1 -1
  288. package/web-shell/assets/{xychartDiagram-S5SC5T6Z-8lgUT6e8.js → xychartDiagram-S5SC5T6Z-CLqguL5D.js} +1 -1
  289. package/web-shell/index.html +2 -2
  290. package/chunks/chunk-3UMWOKJC.js +0 -78
  291. package/chunks/chunk-IQAFKVXS.js +0 -22
  292. package/web-shell/assets/channel-CQx7VSAp.js +0 -1
  293. package/web-shell/assets/classDiagram-DTDB5LWJ-C-Uz8hHk.js +0 -1
  294. package/web-shell/assets/classDiagram-v2-JRS7N3AN-C-Uz8hHk.js +0 -1
  295. package/web-shell/assets/index-CCrkEbzz.css +0 -36
  296. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-LuuL5byY.js +0 -1
  297. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-COmnNq8s.js +0 -8
@@ -10,13 +10,13 @@ import {
10
10
  publishPendingCompileCache,
11
11
  reportRejectedLoaderKeys,
12
12
  resetLoaderKeyRejectionReportingForTesting
13
- } from "./chunk-NUQFUXOG.js";
13
+ } from "./chunk-QTNCGZHQ.js";
14
14
  import {
15
15
  isWorkspaceTrusted
16
- } from "./chunk-GEV66YGE.js";
16
+ } from "./chunk-3VDLQUR2.js";
17
17
  import {
18
18
  require_main
19
- } from "./chunk-3K65MUKD.js";
19
+ } from "./chunk-65I7S4Z3.js";
20
20
  import {
21
21
  QWEN_DIR,
22
22
  Storage,
@@ -8,7 +8,7 @@ import {
8
8
  } from "./chunk-N6VQ37ZZ.js";
9
9
  import {
10
10
  t
11
- } from "./chunk-LD53HMPV.js";
11
+ } from "./chunk-CRZBDVP2.js";
12
12
  import {
13
13
  getPackageJson
14
14
  } from "./chunk-W3N5XAZ6.js";
@@ -2,13 +2,13 @@
2
2
  "use strict";
3
3
  import {
4
4
  GIT_COMMIT_INFO
5
- } from "./chunk-TDHVOZ65.js";
5
+ } from "./chunk-6QILGINT.js";
6
6
  import {
7
7
  getCliVersion
8
- } from "./chunk-SHX2HIE7.js";
8
+ } from "./chunk-27LTEY6D.js";
9
9
  import {
10
10
  IdeClient
11
- } from "./chunk-TSLRORQR.js";
11
+ } from "./chunk-PDUMGZ2P.js";
12
12
  import {
13
13
  formatMemoryUsage
14
14
  } from "./chunk-CHEIIBT3.js";
@@ -3012,6 +3012,62 @@ var DaemonClient = class {
3012
3012
  async resumeSession(sessionId, req = {}, clientId) {
3013
3013
  return this.restoreSession("resume", sessionId, req, clientId);
3014
3014
  }
3015
+ /**
3016
+ * Transfer a worktree session's checkout ownership to a fresh replacement
3017
+ * session (`POST /session/:id/worktree-reset`, capability
3018
+ * `session_worktree_reset_v1`). Resolves 200 with the replacement
3019
+ * session's create-shape response. The route never reads a caller-supplied
3020
+ * client id, so this method takes none — but the response is not
3021
+ * registration-free: a fresh transfer mints an owner-style `clientId` for
3022
+ * the spawn it performs, registers it on the replacement, and returns it in
3023
+ * the body, while an idempotent resume of a committed transfer returns
3024
+ * none. That registration is not an attachment (the replacement's attach
3025
+ * count is unaffected), and nothing detaches it for you — pass a minted id
3026
+ * you do not keep using to `detachSession`, or the replacement never
3027
+ * reaches the daemon's idle cleanup. Typed 409 bodies carry the reset
3028
+ * taxonomy: `worktree_reset_unsupported` (not a worktree session),
3029
+ * `worktree_reset_active` (a session involved is busy), and
3030
+ * `worktree_reset_invalid_state` (corrupt or ambiguous ownership state; a
3031
+ * partial transfer this request started is rolled back, while a
3032
+ * pre-existing interrupted state is left untouched for operator repair).
3033
+ * A crashed transfer whose sidecar links agree is self-healed here: a
3034
+ * pre-commit one (the marker still names this session, or is absent while
3035
+ * the replacement is dormant) is rolled back and re-run in the same
3036
+ * request, and a committed one (the marker names the replacement) is
3037
+ * finished idempotently. Every other interrupted shape — disagreeing links,
3038
+ * an invalid marker, a marker naming a third session, a replacement still
3039
+ * live with no marker — is reported as `worktree_reset_invalid_state` (or
3040
+ * `worktree_reset_active` when the committed replacement is busy) and left
3041
+ * untouched: a retry re-reads the same state and returns the same 409, so
3042
+ * it does not converge and needs operator repair rather than a retry loop.
3043
+ * `worktree_reset_interrupted`, `worktree_session_superseded`, and
3044
+ * `worktree_marker_missing` belong to the restore surface (`loadSession` /
3045
+ * `resumeSession`) instead; for `worktree_reset_interrupted` — the
3046
+ * agreeing-links shape — retrying this reset against the superseded session
3047
+ * is the repair.
3048
+ */
3049
+ async resetWorktreeSession(sessionId, req = {}) {
3050
+ return await this.fetchWithTimeout(
3051
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/worktree-reset`,
3052
+ {
3053
+ method: "POST",
3054
+ headers: this.headers({ "Content-Type": "application/json" }),
3055
+ body: JSON.stringify({
3056
+ ...req.workspaceCwd !== void 0 ? { cwd: req.workspaceCwd } : {},
3057
+ ...req.modelServiceId !== void 0 ? { modelServiceId: req.modelServiceId } : {},
3058
+ ...req.approvalMode !== void 0 ? { approvalMode: req.approvalMode } : {},
3059
+ ...req.sourceType !== void 0 ? { sourceType: req.sourceType } : {},
3060
+ ...req.sourceId !== void 0 ? { sourceId: req.sourceId } : {}
3061
+ })
3062
+ },
3063
+ async (res) => {
3064
+ if (!res.ok) {
3065
+ throw await this.failOnError(res, "POST /session/:id/worktree-reset");
3066
+ }
3067
+ return await res.json();
3068
+ }
3069
+ );
3070
+ }
3015
3071
  async branchSession(sessionId, req = {}, clientId) {
3016
3072
  return await this.fetchWithTimeout(
3017
3073
  `${this.baseUrl}/session/${urlEncode(sessionId)}/branch`,
@@ -6437,6 +6493,36 @@ var DaemonSessionClient = class _DaemonSessionClient {
6437
6493
  eventEpoch
6438
6494
  });
6439
6495
  }
6496
+ /**
6497
+ * Transfer a worktree session's checkout ownership to a fresh replacement
6498
+ * session and return a client bound to the replacement's identity. That
6499
+ * client carries whatever `clientId` the response had: a fresh transfer
6500
+ * mints and registers an owner-style one for the spawn it performs, while
6501
+ * an idempotent resume of a committed transfer returns none. The
6502
+ * registration is not an attachment (the replacement's attach count is
6503
+ * unaffected), but it is a client registration, and a non-empty one is what
6504
+ * holds the daemon's idle cleanup off — so detach a minted id you do not
6505
+ * keep using, or the replacement stays live indefinitely. A registered
6506
+ * attachment still requires the normal restore surface: load or resume the
6507
+ * replacement, passing the minted id to reuse that registration instead of
6508
+ * adding a second one. The replacement is a brand-new conversation; the
6509
+ * superseded session keeps its transcript on the daemon and is never
6510
+ * restored again (its restore surfaces `worktree_session_superseded`). The
6511
+ * existing reattach identity guard applies to the replacement client
6512
+ * unchanged.
6513
+ */
6514
+ static async resetWorktree(client, sessionId, req = {}) {
6515
+ const session = await client.resetWorktreeSession(sessionId, req);
6516
+ return new _DaemonSessionClient({
6517
+ client,
6518
+ session,
6519
+ hasActivePrompt: session.hasActivePrompt,
6520
+ // The replacement is freshly created: seed from the start of its bus
6521
+ // so events fired during the transfer window are not skipped.
6522
+ lastEventId: 0,
6523
+ eventEpoch: session.eventEpoch
6524
+ });
6525
+ }
6440
6526
  static async createStandalone(client, options = {}) {
6441
6527
  const session = await client.createStandaloneSession(options);
6442
6528
  return new _DaemonSessionClient({
@@ -6672,16 +6758,21 @@ var DaemonSessionClient = class _DaemonSessionClient {
6672
6758
  });
6673
6759
  this.reattaching = resume.then(async (session) => {
6674
6760
  if (this.session.worktreeState === "persisted-v1") {
6675
- const sameWorktree = session.worktreeState === "persisted-v1" && session.worktree?.path === this.session.worktree?.path;
6676
- if (!sameWorktree) {
6677
- await this.client.detachSession(session.sessionId, session.clientId).catch(() => {
6678
- });
6679
- throw new Error(
6680
- `Daemon lost durable worktree identity for session ${this.sessionId}`
6681
- );
6761
+ if (!session.worktree) {
6762
+ this.session.worktree = void 0;
6763
+ this.session.worktreeState = void 0;
6764
+ } else {
6765
+ const sameWorktree = session.worktreeState === "persisted-v1" && session.worktree.path === this.session.worktree?.path;
6766
+ if (!sameWorktree) {
6767
+ await this.client.detachSession(session.sessionId, session.clientId).catch(() => {
6768
+ });
6769
+ throw new Error(
6770
+ `Daemon lost durable worktree identity for session ${this.sessionId}`
6771
+ );
6772
+ }
6773
+ this.session.worktree = session.worktree;
6774
+ this.session.worktreeState = session.worktreeState;
6682
6775
  }
6683
- this.session.worktree = session.worktree;
6684
- this.session.worktreeState = session.worktreeState;
6685
6776
  }
6686
6777
  this.session.clientId = session.clientId;
6687
6778
  });
@@ -9369,13 +9460,10 @@ function normalizeDaemonEvent(event, opts = {}) {
9369
9460
  }
9370
9461
  ];
9371
9462
  case "slow_client_warning":
9372
- return [
9373
- {
9374
- ...base,
9375
- type: "status",
9376
- text: "SSE stream is lagging"
9377
- }
9378
- ];
9463
+ if (typeof console !== "undefined") {
9464
+ console.warn?.("[daemon-ui] SSE stream is lagging", event.data);
9465
+ }
9466
+ return [];
9379
9467
  case "stream_error": {
9380
9468
  const errorKind = asDaemonErrorKind(getString2(event.data, "errorKind"));
9381
9469
  return [
@@ -382,7 +382,8 @@ function resolveEnvVarsInString(value, customEnv) {
382
382
  const envVarRegex = /\$(?:(\w+)|{([^}]+)})/g;
383
383
  return value.replace(envVarRegex, (match, varName1, varName2) => {
384
384
  const varName = varName1 || varName2;
385
- if (isInternalSecretEnvVar(varName)) {
385
+ const normalizedVarName = varName.toUpperCase();
386
+ if (normalizedVarName === "SESSION_ID" || normalizedVarName === "QWEN_CODE_SESSION_ID" || isInternalSecretEnvVar(varName)) {
386
387
  return match;
387
388
  }
388
389
  if (customEnv && typeof customEnv[varName] === "string") {
@@ -3,7 +3,7 @@
3
3
  import {
4
4
  customDeepMerge,
5
5
  getSettingsSchema
6
- } from "./chunk-QW7BUOSI.js";
6
+ } from "./chunk-2ZFO5JD7.js";
7
7
  import {
8
8
  DEFAULT_DARK_THEME_NAME,
9
9
  DEFAULT_LIGHT_THEME_NAME
@@ -21,7 +21,7 @@ import {
21
21
  } from "./chunk-IDS7MSUP.js";
22
22
  import {
23
23
  t
24
- } from "./chunk-LD53HMPV.js";
24
+ } from "./chunk-CRZBDVP2.js";
25
25
  import {
26
26
  SUPPORTED_LANGUAGES,
27
27
  getLanguageNameFromLocale
@@ -30,21 +30,21 @@ import {
30
30
  getHomeEnvFallbackVars,
31
31
  loadEnvironment,
32
32
  preResolveHomeEnvOverrides
33
- } from "./chunk-4OCYWXKF.js";
33
+ } from "./chunk-5CVY5Q2P.js";
34
34
  import {
35
35
  ENV_CORRUPTED_PATH,
36
36
  ENV_WAS_RECOVERED
37
- } from "./chunk-NUQFUXOG.js";
37
+ } from "./chunk-QTNCGZHQ.js";
38
38
  import {
39
39
  isWorkspaceTrusted,
40
40
  updateSettingsFilePreservingFormat
41
- } from "./chunk-GEV66YGE.js";
41
+ } from "./chunk-3VDLQUR2.js";
42
42
  import {
43
43
  require_strip_json_comments
44
44
  } from "./chunk-NPQ5ZKRP.js";
45
45
  import {
46
46
  resolveEnvVarsInObject
47
- } from "./chunk-3K65MUKD.js";
47
+ } from "./chunk-65I7S4Z3.js";
48
48
  import {
49
49
  stripRuntimeSnapshotPrefix
50
50
  } from "./chunk-565U2ANU.js";
@@ -439,7 +439,8 @@ var WORKSPACE_RESTRICTED_SETTINGS = [
439
439
  { section: "tools", key: "workflowsEnabled" },
440
440
  { section: "security", key: "allowPrivateNetworkHooks" },
441
441
  { section: "security", key: "allowedInsecureVoiceBaseUrls" },
442
- { section: "goals", key: "modelProposed" }
442
+ { section: "goals", key: "modelProposed" },
443
+ { section: "outboundCorrelation", key: "allowDynamicHeaderValues" }
443
444
  ];
444
445
  var WORKSPACE_TIGHTEN_ONLY_SETTINGS = [
445
446
  {
@@ -2,10 +2,10 @@
2
2
  "use strict";
3
3
  import {
4
4
  JsonFormatter
5
- } from "./chunk-TXAEXF2B.js";
5
+ } from "./chunk-ZU2T5JIS.js";
6
6
  import {
7
7
  parseAndFormatApiError
8
- } from "./chunk-TSLRORQR.js";
8
+ } from "./chunk-PDUMGZ2P.js";
9
9
  import {
10
10
  FatalBudgetExceededError,
11
11
  FatalCancellationError,
@@ -14,7 +14,7 @@ import {
14
14
  } from "./chunk-ZAFYHRVY.js";
15
15
  import {
16
16
  runExitCleanup
17
- } from "./chunk-HPE4LEWX.js";
17
+ } from "./chunk-USN6VNTO.js";
18
18
  import {
19
19
  writeStderrLine
20
20
  } from "./chunk-7FA2II6K.js";
@@ -6,8 +6,8 @@ import {
6
6
 
7
7
  // packages/cli/src/generated/git-commit.ts
8
8
  init_esbuild_shims();
9
- var GIT_COMMIT_INFO = "4bfa3f93d3";
10
- var CLI_VERSION = "0.23.1-preview.2";
9
+ var GIT_COMMIT_INFO = "d9331e6fcf";
10
+ var CLI_VERSION = "0.23.1";
11
11
 
12
12
  export {
13
13
  GIT_COMMIT_INFO,
@@ -31,7 +31,7 @@ import {
31
31
  } from "./chunk-TIGXX4PA.js";
32
32
  import {
33
33
  DEFAULT_QWEN_MODEL
34
- } from "./chunk-PLUAIHZO.js";
34
+ } from "./chunk-N7YQEKGX.js";
35
35
  import {
36
36
  atomicWriteFile
37
37
  } from "./chunk-XFFRI3WM.js";
@@ -9,7 +9,7 @@ import {
9
9
  import {
10
10
  RipgrepRuntimeRecoveryEvent,
11
11
  logRipgrepRuntimeRecovery
12
- } from "./chunk-WQBR7LN5.js";
12
+ } from "./chunk-6QV7Z74P.js";
13
13
  import {
14
14
  DEFAULT_FILE_FILTERING_OPTIONS,
15
15
  QwenIgnoreParser,
@@ -5,14 +5,14 @@ import {
5
5
  } from "./chunk-KW7NOTN6.js";
6
6
  import {
7
7
  DEFAULT_OPENAI_LOG_RETENTION_DAYS
8
- } from "./chunk-QW7BUOSI.js";
8
+ } from "./chunk-2ZFO5JD7.js";
9
9
  import {
10
10
  resolveOpenAILogDir
11
- } from "./chunk-SD7Y2PMC.js";
11
+ } from "./chunk-YAC7H4K3.js";
12
12
  import {
13
13
  FILE_HISTORY_DIR,
14
14
  getSubagentsRootDir
15
- } from "./chunk-TSLRORQR.js";
15
+ } from "./chunk-PDUMGZ2P.js";
16
16
  import {
17
17
  Storage,
18
18
  createDebugLogger,
@@ -169,10 +169,8 @@ var STALE_LOCK_MS = 60 * 60 * 1e3;
169
169
  async function runThrottledOnce(opts, task) {
170
170
  const minIntervalMs = opts.minIntervalMs ?? ONE_DAY_MS;
171
171
  const staleLockMs = opts.staleLockMs ?? STALE_LOCK_MS;
172
- await mkdir(dirname(opts.lockPath), { recursive: true, mode: 448 }).catch(
173
- () => {
174
- }
175
- );
172
+ await mkdir(dirname(opts.lockPath), { mode: 448 }).catch(() => {
173
+ });
176
174
  const firstFreshForMs = await markerFreshForMs(
177
175
  opts.markerPath,
178
176
  minIntervalMs,
@@ -90,6 +90,33 @@ function applyReasoningEffort(config, effort) {
90
90
  return config.getReasoningEffort() === effort;
91
91
  }
92
92
  __name(applyReasoningEffort, "applyReasoningEffort");
93
+ function parseModelReasoningCapabilities(value) {
94
+ if (!value || typeof value !== "object") return void 0;
95
+ const candidate = value;
96
+ if (candidate["thinking"] !== true) return void 0;
97
+ const disableField = candidate["disableField"];
98
+ if (disableField !== "enable_thinking" && disableField !== "reasoning_effort" && disableField !== "thinking") {
99
+ return void 0;
100
+ }
101
+ if ("toggleOnly" in candidate && typeof candidate["toggleOnly"] !== "boolean" || "canDisable" in candidate && candidate["canDisable"] !== false) {
102
+ return void 0;
103
+ }
104
+ if (candidate["toggleOnly"] === true) {
105
+ return candidate;
106
+ }
107
+ const efforts = candidate["efforts"];
108
+ if (!Array.isArray(efforts) || efforts.length === 0 || !efforts.every(
109
+ (effort) => typeof effort === "string" && REASONING_EFFORT_TIERS.includes(effort)
110
+ ) || new Set(efforts).size !== efforts.length) {
111
+ return void 0;
112
+ }
113
+ const defaultEffort = candidate["defaultEffort"];
114
+ if (defaultEffort !== void 0 && !efforts.includes(defaultEffort)) {
115
+ return void 0;
116
+ }
117
+ return candidate;
118
+ }
119
+ __name(parseModelReasoningCapabilities, "parseModelReasoningCapabilities");
93
120
 
94
121
  export {
95
122
  resolveRequestTimeout,
@@ -105,7 +132,8 @@ export {
105
132
  REASONING_EFFORT_TIERS,
106
133
  normalizeReasoningEffort,
107
134
  clampReasoningEffort,
108
- applyReasoningEffort
135
+ applyReasoningEffort,
136
+ parseModelReasoningCapabilities
109
137
  };
110
138
  /**
111
139
  * @license
@@ -7,7 +7,7 @@ import {
7
7
  resolveStreamIdleTimeoutMs,
8
8
  resolveStreamMaxLifetimeMs,
9
9
  withStreamGuards
10
- } from "./chunk-ADJD4LZF.js";
10
+ } from "./chunk-MA5OUNN6.js";
11
11
  import {
12
12
  OpenAIContentConverter,
13
13
  TaggedThinkingParser,
@@ -31,7 +31,7 @@ import {
31
31
  import {
32
32
  DashScopeOpenAICompatibleProvider,
33
33
  DefaultOpenAICompatibleProvider
34
- } from "./chunk-3K456UJF.js";
34
+ } from "./chunk-VF6D6EGV.js";
35
35
  import {
36
36
  getCurrentAgentId
37
37
  } from "./chunk-H3Q3RSKZ.js";
@@ -40,19 +40,20 @@ import {
40
40
  getToolCallPreparations
41
41
  } from "./chunk-CFKIH3D3.js";
42
42
  import {
43
- REASONING_EFFORT_TIERS
44
- } from "./chunk-2LD5U7Q3.js";
43
+ REASONING_EFFORT_TIERS,
44
+ parseModelReasoningCapabilities
45
+ } from "./chunk-6YEOCHSE.js";
45
46
  import {
46
47
  createChildAbortController
47
48
  } from "./chunk-DJ2GSRLV.js";
48
49
  import {
49
50
  getRateLimitErrorDetails,
50
51
  getTransportCode
51
- } from "./chunk-W4LL5RZO.js";
52
+ } from "./chunk-4ALNJDHL.js";
52
53
  import {
53
54
  ProtocolTagSanitizedEvent,
54
55
  logProtocolTagSanitized
55
- } from "./chunk-WQBR7LN5.js";
56
+ } from "./chunk-6QV7Z74P.js";
56
57
  import {
57
58
  isQwenFamilyWireModel,
58
59
  isTieredEffortWireModel
@@ -1016,6 +1017,26 @@ function asObject(value) {
1016
1017
  return value;
1017
1018
  }
1018
1019
  __name(asObject, "asObject");
1020
+ function applyConfiguredReasoningEffort(request, capabilities) {
1021
+ if (!capabilities || capabilities.toggleOnly || !Array.isArray(capabilities.efforts)) {
1022
+ return request;
1023
+ }
1024
+ const loose = request;
1025
+ const reasoning = asObject(loose["reasoning"]);
1026
+ if (!reasoning || !("effort" in reasoning)) return request;
1027
+ const effort = capabilities.efforts.find(
1028
+ (candidate) => candidate === reasoning["effort"]
1029
+ );
1030
+ const { effort: _drop, ...rest } = reasoning;
1031
+ const next = { ...loose };
1032
+ if (Object.keys(rest).length > 0) next["reasoning"] = rest;
1033
+ else delete next["reasoning"];
1034
+ if (effort && next["reasoning_effort"] === void 0) {
1035
+ next["reasoning_effort"] = effort;
1036
+ }
1037
+ return next;
1038
+ }
1039
+ __name(applyConfiguredReasoningEffort, "applyConfiguredReasoningEffort");
1019
1040
  function normalizeSchemaType(value) {
1020
1041
  if (typeof value !== "string") return void 0;
1021
1042
  const normalized = value.toLowerCase();
@@ -1467,7 +1488,7 @@ var ContentGenerationPipeline = class {
1467
1488
  request,
1468
1489
  context
1469
1490
  );
1470
- const baseRequest = {
1491
+ let baseRequest = {
1471
1492
  model: context.model,
1472
1493
  messages,
1473
1494
  ...this.buildGenerateContentConfig(request),
@@ -1479,6 +1500,26 @@ var ContentGenerationPipeline = class {
1479
1500
  } else {
1480
1501
  baseRequest.stream = false;
1481
1502
  }
1503
+ const authType = this.contentGeneratorConfig.authType;
1504
+ const reasoningCapabilities = authType ? parseModelReasoningCapabilities(
1505
+ this.config.cliConfig.getResolvedModelConfig?.(
1506
+ authType,
1507
+ context.model,
1508
+ this.contentGeneratorConfig.baseUrl
1509
+ )?.capabilities.reasoning
1510
+ ) : void 0;
1511
+ if (reasoningCapabilities && !("reasoning" in baseRequest) && this.contentGeneratorConfig.reasoning) {
1512
+ baseRequest = {
1513
+ ...baseRequest,
1514
+ reasoning: this.contentGeneratorConfig.reasoning
1515
+ };
1516
+ }
1517
+ if (this.contentGeneratorConfig.samplingParams?.["reasoning"] === void 0 && !isOpenRouterHostname(this.contentGeneratorConfig)) {
1518
+ baseRequest = applyConfiguredReasoningEffort(
1519
+ baseRequest,
1520
+ reasoningCapabilities
1521
+ );
1522
+ }
1482
1523
  if (request.config?.tools && request.config.tools.length > 0) {
1483
1524
  baseRequest.tools = await OpenAIContentConverter.convertLlmToolsToOpenAI(
1484
1525
  request.config.tools,
@@ -1507,7 +1548,7 @@ var ContentGenerationPipeline = class {
1507
1548
  const isDashScope = DashScopeOpenAICompatibleProvider.isDashScopeProvider(
1508
1549
  this.contentGeneratorConfig
1509
1550
  );
1510
- const thinkingMandatory = this.requiresThinking(model);
1551
+ const thinkingMandatory = reasoningCapabilities?.canDisable === false || this.requiresThinking(model);
1511
1552
  const reasoningDisabled = request.config?.thinkingConfig?.includeThoughts === false || this.contentGeneratorConfig.reasoning === false;
1512
1553
  if (reasoningDisabled) {
1513
1554
  const typed2 = providerRequest;
@@ -1529,13 +1570,22 @@ var ContentGenerationPipeline = class {
1529
1570
  };
1530
1571
  }
1531
1572
  }
1573
+ if (!thinkingMandatory) {
1574
+ if (reasoningCapabilities?.disableField === "reasoning_effort") {
1575
+ delete typed2["enable_thinking"];
1576
+ delete typed2["thinking_budget"];
1577
+ typed2["reasoning_effort"] = "none";
1578
+ } else if (reasoningCapabilities?.disableField === "enable_thinking") {
1579
+ typed2["enable_thinking"] = false;
1580
+ }
1581
+ }
1532
1582
  if ("reasoning" in typed2) {
1533
1583
  delete typed2["reasoning"];
1534
1584
  }
1535
1585
  if ("reasoning_effort" in typed2 && typed2["reasoning_effort"] !== "none") {
1536
1586
  delete typed2["reasoning_effort"];
1537
1587
  }
1538
- if (isDeepSeekHostname(this.contentGeneratorConfig)) {
1588
+ if (isDeepSeekHostname(this.contentGeneratorConfig) || reasoningCapabilities?.disableField === "thinking") {
1539
1589
  typed2["thinking"] = { type: "disabled" };
1540
1590
  }
1541
1591
  if (!thinkingMandatory && isOpenRouterHostname(this.contentGeneratorConfig)) {
@@ -1550,6 +1600,13 @@ var ContentGenerationPipeline = class {
1550
1600
  if (typed2["reasoning_effort"] === "none") {
1551
1601
  delete typed2["reasoning_effort"];
1552
1602
  }
1603
+ const thinking = asObject(typed2["thinking"]);
1604
+ if (thinking?.["type"] === "disabled") {
1605
+ const remaining = { ...thinking };
1606
+ delete remaining["type"];
1607
+ if (Object.keys(remaining).length > 0) typed2["thinking"] = remaining;
1608
+ else delete typed2["thinking"];
1609
+ }
1553
1610
  const chatTemplateKwargs = typed2["chat_template_kwargs"];
1554
1611
  if (chatTemplateKwargs?.["enable_thinking"] === false) {
1555
1612
  const remaining = { ...chatTemplateKwargs };
@@ -11,6 +11,7 @@ import {
11
11
  USER_AGREEMENT_RATE_MEDIUM,
12
12
  flattenModelsBySource,
13
13
  formatDuration as formatDuration2,
14
+ formatTokenCount as formatTokenCount2,
14
15
  getArenaStatusLabel,
15
16
  getStatusColor,
16
17
  isSafeOscScheme,
@@ -21,7 +22,7 @@ import {
21
22
  shouldWrapMarkdownLink,
22
23
  trimTrailingUrlPunctuation,
23
24
  useSessionStats
24
- } from "./chunk-KP5QK3FB.js";
25
+ } from "./chunk-RNYENHN5.js";
25
26
  import {
26
27
  CompactToolGroupDisplay,
27
28
  ICON,
@@ -39,20 +40,20 @@ import {
39
40
  isCollapsibleTool,
40
41
  isFindingsListDisplay,
41
42
  wrapAnsi
42
- } from "./chunk-T7TP5UQL.js";
43
+ } from "./chunk-E7XSUYCZ.js";
43
44
  import {
44
45
  disableMouseEvents,
45
46
  enableMouseEvents,
46
47
  useKeypress,
47
48
  useKeypressContext
48
- } from "./chunk-AWDF462I.js";
49
+ } from "./chunk-WQMUGQ6G.js";
49
50
  import {
50
51
  formatSupportedModes,
51
52
  getCommandDisplayName,
52
53
  getCommandSourceBadge,
53
54
  getCommandSourceGroup,
54
55
  getCommandSubcommandNames
55
- } from "./chunk-VYCJITND.js";
56
+ } from "./chunk-O2JBJQCF.js";
56
57
  import {
57
58
  INLINE_CODE_SPAN_PATTERN_SOURCE,
58
59
  calculateAverageLatency,
@@ -68,7 +69,7 @@ import {
68
69
  readInlineMathSpanAt,
69
70
  unescapeMarkdownBeforeMath,
70
71
  unescapeMarkdownDollars
71
- } from "./chunk-I67KJGM6.js";
72
+ } from "./chunk-MFYH2VXV.js";
72
73
  import {
73
74
  formatDuration,
74
75
  formatRelativeTime,
@@ -103,10 +104,10 @@ import {
103
104
  } from "./chunk-5QWWOFGG.js";
104
105
  import {
105
106
  getErrorMessage
106
- } from "./chunk-YLFICBYK.js";
107
+ } from "./chunk-6JXHO7LG.js";
107
108
  import {
108
109
  relaunchApp
109
- } from "./chunk-22QOQKG4.js";
110
+ } from "./chunk-RXT4QBDX.js";
110
111
  import {
111
112
  markKittyImageWritten,
112
113
  prepareInlineTerminalImage,
@@ -142,18 +143,18 @@ import {
142
143
  } from "./chunk-57OAHC2Y.js";
143
144
  import {
144
145
  createLoadedSettingsAdapter
145
- } from "./chunk-UTVIIA7N.js";
146
+ } from "./chunk-FW4E4QPG.js";
146
147
  import {
147
148
  getPersistScopeForModelSelection
148
- } from "./chunk-RUMSY4ES.js";
149
+ } from "./chunk-66JBCTJF.js";
149
150
  import {
150
151
  getCurrentLanguage,
151
152
  localizeToolDisplayName,
152
153
  t
153
- } from "./chunk-LD53HMPV.js";
154
+ } from "./chunk-CRZBDVP2.js";
154
155
  import {
155
156
  isWorkspaceTrusted
156
- } from "./chunk-GEV66YGE.js";
157
+ } from "./chunk-3VDLQUR2.js";
157
158
  import {
158
159
  ALL_PROVIDERS,
159
160
  PROVIDER_METADATA_NS,
@@ -166,11 +167,11 @@ import {
166
167
  resolveBaseUrl,
167
168
  resolveMetadataKey,
168
169
  resolveOwnsModel
169
- } from "./chunk-TXAEXF2B.js";
170
+ } from "./chunk-ZU2T5JIS.js";
170
171
  import {
171
172
  sanitizeForOsc,
172
173
  supportsHyperlinks
173
- } from "./chunk-VU7O7CGQ.js";
174
+ } from "./chunk-XDNFODER.js";
174
175
  import {
175
176
  IdeClient,
176
177
  ShellExecutionService,
@@ -181,7 +182,7 @@ import {
181
182
  getExternalEditorCommand,
182
183
  ideContextStore,
183
184
  isValidEditorType
184
- } from "./chunk-TSLRORQR.js";
185
+ } from "./chunk-PDUMGZ2P.js";
185
186
  import {
186
187
  stripAnsi
187
188
  } from "./chunk-TWPJO254.js";
@@ -192,7 +193,7 @@ import {
192
193
  formatVisionBridgeNoticeDisplay,
193
194
  getMCPServerStatus,
194
195
  isVisionBridgeNoticeDisplay
195
- } from "./chunk-WQBR7LN5.js";
196
+ } from "./chunk-6QV7Z74P.js";
196
197
  import {
197
198
  ToolNames,
198
199
  ToolNamesMigration,
@@ -16592,6 +16593,12 @@ var GoalStateCard = /* @__PURE__ */ __name(({
16592
16593
  if (goal.activeTimeMs > 0) {
16593
16594
  stats.push(formatDuration(goal.activeTimeMs, { hideTrailingZeros: true }));
16594
16595
  }
16596
+ if (goal.tokensUsed > 0) {
16597
+ const used = formatTokenCount2(goal.tokensUsed);
16598
+ stats.push(
16599
+ goal.tokenBudget === void 0 ? `${used} tokens` : `${used}/${formatTokenCount2(goal.tokenBudget)} tokens`
16600
+ );
16601
+ }
16595
16602
  const subtitle = stats.length > 0 ? stats.join(" \xB7 ") : null;
16596
16603
  const reason = goal.status !== "active" || snapshot.activity === "verifying" ? goal.lastReason?.trim() : void 0;
16597
16604
  return /* @__PURE__ */ (0, import_jsx_runtime50.jsxs)(Box_default, { flexDirection: "row", children: [