@qwen-code/qwen-code 0.21.7 → 0.21.8-nightly.20260810.55e20db328

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 (334) hide show
  1. package/README.md +2 -0
  2. package/bundled/qc-helper/docs/configuration/settings.md +73 -59
  3. package/bundled/qc-helper/docs/extension/introduction.md +15 -1
  4. package/bundled/qc-helper/docs/features/channels/dingtalk.md +40 -2
  5. package/bundled/qc-helper/docs/features/channels/feishu.md +13 -2
  6. package/bundled/qc-helper/docs/features/channels/github.md +13 -11
  7. package/bundled/qc-helper/docs/features/channels/gitlab.md +13 -11
  8. package/bundled/qc-helper/docs/features/channels/overview.md +49 -31
  9. package/bundled/qc-helper/docs/features/channels/plugins.md +2 -2
  10. package/bundled/qc-helper/docs/features/channels/qqbot.md +4 -2
  11. package/bundled/qc-helper/docs/features/channels/telegram.md +4 -2
  12. package/bundled/qc-helper/docs/features/channels/wecom.md +1 -1
  13. package/bundled/qc-helper/docs/features/code-review.md +4 -0
  14. package/bundled/qc-helper/docs/features/commands.md +1 -1
  15. package/bundled/qc-helper/docs/features/hooks.md +52 -0
  16. package/bundled/qc-helper/docs/integration-jetbrains.md +1 -0
  17. package/bundled/qc-helper/docs/qwen-serve-deploy-local.md +1 -1
  18. package/bundled/qc-helper/docs/qwen-serve.md +10 -5
  19. package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +50 -36
  20. package/bundled/review/SKILL.md +32 -5
  21. package/chunks/{MaxSizedBox-ANWZBPTS.js → MaxSizedBox-A52T4GEU.js} +29 -25
  22. package/chunks/{StandaloneSessionPicker-XKS3VU3A.js → StandaloneSessionPicker-4J654SOB.js} +48 -44
  23. package/chunks/{acp-startup-profiler-ORIQ2CCQ.js → acp-startup-profiler-B5BYAMYQ.js} +2 -2
  24. package/chunks/{acpAgent-KUAZ3GCZ.js → acpAgent-65AM4AOR.js} +1833 -843
  25. package/chunks/{agent-T6PTGX5R.js → agent-SVQ7U7NJ.js} +28 -24
  26. package/chunks/{agent-headless-PR7YCB7S.js → agent-headless-XXGY2SQO.js} +28 -24
  27. package/chunks/{artifact-tool-U4VOZIK5.js → artifact-tool-N652YE4L.js} +1 -1
  28. package/chunks/{askUserQuestion-XOBQLPFA.js → askUserQuestion-ONW74PKJ.js} +1 -1
  29. package/chunks/{bridge-NU6YEEHK.js → bridge-Y32B5S3G.js} +34 -30
  30. package/chunks/{ca-NYKNH222.js → ca-ZLKAB4K3.js} +6 -0
  31. package/chunks/{channel-management-service-FSQ7SHYI.js → channel-management-service-PHELKOW2.js} +19 -10
  32. package/chunks/{channel-settings-store-35VQVUVV.js → channel-settings-store-OW43U6VB.js} +36 -32
  33. package/chunks/{channel-worker-group-JWQK224X.js → channel-worker-group-MSHT6CWR.js} +7 -7
  34. package/chunks/{channel-worker-manager-77E3OXRQ.js → channel-worker-manager-XXD3GDSK.js} +7 -7
  35. package/chunks/{channel-worker-supervisor-62YWUGP2.js → channel-worker-supervisor-IVSDIMI4.js} +4 -4
  36. package/chunks/{chunk-HYRDKNUY.js → chunk-2545EHZR.js} +1 -1
  37. package/chunks/{chunk-SPMY6CX6.js → chunk-2ASQDZSJ.js} +3 -3
  38. package/chunks/{chunk-CJXIIILK.js → chunk-2FRY5CRX.js} +1 -1
  39. package/chunks/{chunk-CNIID3TV.js → chunk-2UUMVNYT.js} +1 -1
  40. package/chunks/{chunk-KXSDEOFU.js → chunk-3KJQZEN3.js} +1 -1
  41. package/chunks/{chunk-22NBYCPD.js → chunk-3P2LV43B.js} +1 -1
  42. package/chunks/{chunk-Y7E5LNLO.js → chunk-47ZUMGGY.js} +2634 -2114
  43. package/chunks/{chunk-LA7YLSR6.js → chunk-4EOURKA4.js} +839 -153
  44. package/chunks/chunk-4JRM2BSM.js +48 -0
  45. package/chunks/{chunk-BGG4MBYD.js → chunk-4PYCZH2V.js} +4 -187
  46. package/chunks/{chunk-L4N6TIP7.js → chunk-4TRQPFDP.js} +4 -2
  47. package/chunks/{chunk-6XJMFJ4D.js → chunk-5WZL724W.js} +177 -120
  48. package/chunks/{chunk-23RZCH76.js → chunk-5ZTS3OQ3.js} +3 -3
  49. package/chunks/{chunk-VWOVHOTT.js → chunk-67EWJE77.js} +1 -1
  50. package/chunks/{chunk-3K7FH2KQ.js → chunk-67N6HB5H.js} +1310 -171
  51. package/chunks/{chunk-CXE7E23H.js → chunk-6Q5ABMTU.js} +45 -17
  52. package/chunks/{chunk-NG2R4N5O.js → chunk-6ZRFAKXK.js} +1 -1
  53. package/chunks/{chunk-RERATVSK.js → chunk-7XX5IBXL.js} +145 -10
  54. package/chunks/{chunk-S7CV4KO6.js → chunk-AKJQSWV4.js} +4 -4
  55. package/chunks/{chunk-5KH532V7.js → chunk-AUWN7BAG.js} +1 -1
  56. package/chunks/{chunk-DBOFL3LQ.js → chunk-BL65MO72.js} +10 -10
  57. package/chunks/{chunk-AKA24BGO.js → chunk-BT6GQIEJ.js} +1 -1
  58. package/chunks/{chunk-W7U4ESW2.js → chunk-CG3WBKJK.js} +1 -1
  59. package/chunks/{chunk-2M5N3DHY.js → chunk-CMOBWHWW.js} +1 -1
  60. package/chunks/chunk-COBO5EBO.js +135 -0
  61. package/chunks/chunk-CPG6P4GG.js +82 -0
  62. package/chunks/{chunk-3NB7TSE2.js → chunk-D2D7J3EW.js} +1 -1
  63. package/chunks/{chunk-NLREQJFK.js → chunk-DA4HRSBW.js} +15 -0
  64. package/chunks/{chunk-RNVQB725.js → chunk-DPMJLKUP.js} +2 -2
  65. package/chunks/{chunk-DIEFUBV6.js → chunk-DX3RGJMS.js} +218 -37
  66. package/chunks/{chunk-33ACCIIY.js → chunk-DZUO626D.js} +1 -1
  67. package/chunks/chunk-E2FPSSKP.js +244 -0
  68. package/chunks/{chunk-72LNFGUY.js → chunk-E2N554HK.js} +3 -3
  69. package/chunks/{chunk-6EOI4HOK.js → chunk-E2T7FLDU.js} +12 -17
  70. package/chunks/{chunk-EUQTXRKZ.js → chunk-EISUQQPS.js} +6 -6
  71. package/chunks/{chunk-H2UQ2M5Z.js → chunk-EUVOKP6Y.js} +96 -22
  72. package/chunks/{chunk-RMH5OWLD.js → chunk-F3II4BTZ.js} +1 -1
  73. package/chunks/{chunk-P3LEG54R.js → chunk-F6TUUA2U.js} +3 -3
  74. package/chunks/chunk-F6WFNA7U.js +22 -0
  75. package/chunks/{chunk-RZHU3ILK.js → chunk-FAD7OC7V.js} +4 -4
  76. package/chunks/{chunk-OMKQH5C5.js → chunk-FWWQIFDT.js} +6 -23
  77. package/chunks/{chunk-TLV2IMHR.js → chunk-FYB4GIDW.js} +3 -3
  78. package/chunks/{chunk-ZJ3VGYHK.js → chunk-GY24H6IA.js} +40 -22
  79. package/chunks/{chunk-P2AJ7FTI.js → chunk-H4JC7LZX.js} +1 -1
  80. package/chunks/{chunk-55LYDVPU.js → chunk-HDYQYYWB.js} +1 -1
  81. package/chunks/{chunk-PQBHU2IA.js → chunk-HKI3KHAO.js} +11 -11
  82. package/chunks/{chunk-Y4NGLFGJ.js → chunk-HUWENAHO.js} +1 -1
  83. package/chunks/{chunk-3ULCB3NE.js → chunk-HV76SFIA.js} +1 -1
  84. package/chunks/{chunk-CSZEXZBE.js → chunk-HWXGX534.js} +3 -3
  85. package/chunks/{chunk-E33LOKRA.js → chunk-I5VM3SKY.js} +22 -5
  86. package/chunks/{chunk-LZC3B5N2.js → chunk-IA7TGCN2.js} +2 -2
  87. package/chunks/{chunk-RGSBTHSU.js → chunk-KMS57JDD.js} +137 -7
  88. package/chunks/{chunk-VOARQPTA.js → chunk-KP25NJNM.js} +65 -21
  89. package/chunks/{chunk-6M26GBKX.js → chunk-L2AFWWJE.js} +42 -3
  90. package/chunks/{chunk-ZXU5UHMI.js → chunk-LHEC5V6G.js} +2 -2
  91. package/chunks/{chunk-J26HHFI5.js → chunk-LP2QGNSP.js} +32 -2
  92. package/chunks/{chunk-R574ATRM.js → chunk-M2PNLYGY.js} +41 -0
  93. package/chunks/{chunk-MKVZE4ZJ.js → chunk-MFDYOYZZ.js} +3 -2
  94. package/chunks/{chunk-ALGGS7UH.js → chunk-NPQ5ZKRP.js} +82 -1
  95. package/chunks/{chunk-YHEEE624.js → chunk-NV3F44FL.js} +7 -3
  96. package/chunks/{chunk-6GONZVLS.js → chunk-NZMXUSKS.js} +1 -1
  97. package/chunks/{chunk-HQB2KUAN.js → chunk-O277O7U6.js} +1 -1
  98. package/chunks/{chunk-Y4EWSQF7.js → chunk-OBP6QWD5.js} +2 -2
  99. package/chunks/{chunk-CYR3HI5X.js → chunk-OQTXYMKW.js} +2 -2
  100. package/chunks/{chunk-TYKC75AX.js → chunk-OR6R3IUW.js} +2 -2
  101. package/chunks/{chunk-TRLYP7OF.js → chunk-OSVH4SMN.js} +16 -141
  102. package/chunks/{chunk-FPM27XN4.js → chunk-OW2BWT2P.js} +4 -4
  103. package/chunks/{chunk-TDXGKHDN.js → chunk-P5ULXPK5.js} +2 -2
  104. package/chunks/{chunk-24ER7UV4.js → chunk-PBRVUF5B.js} +1 -1
  105. package/chunks/{chunk-LKRMNRSN.js → chunk-PDPFQ2FO.js} +2 -0
  106. package/chunks/{chunk-2VSTGY6M.js → chunk-PJRW65JO.js} +1 -1
  107. package/chunks/{chunk-6HVUFDS2.js → chunk-PNVPFARW.js} +22 -13
  108. package/chunks/{chunk-IC4Z6LX6.js → chunk-PYQADEFD.js} +5 -0
  109. package/chunks/chunk-R4ZA6GBK.js +208 -0
  110. package/chunks/{chunk-KR4ZSC7K.js → chunk-RMPLEWF3.js} +3 -3
  111. package/chunks/{chunk-EORNAQDT.js → chunk-RQ6U2JJQ.js} +1 -1
  112. package/chunks/{chunk-AE77C5ZU.js → chunk-RYQMJCUO.js} +1 -1
  113. package/chunks/{chunk-6UWFTUQL.js → chunk-S5CULOHB.js} +75 -31
  114. package/chunks/{chunk-7UFKAV7Y.js → chunk-S6HYI3MF.js} +2 -2
  115. package/chunks/chunk-SAH4BD2J.js +92 -0
  116. package/chunks/chunk-SR7RZ4MS.js +202 -0
  117. package/chunks/{chunk-QETYKPMG.js → chunk-T2O6NIOY.js} +1 -1
  118. package/chunks/chunk-TQOF5KBL.js +71 -0
  119. package/chunks/{chunk-OHJLEW5J.js → chunk-TWFFY5BP.js} +4 -4
  120. package/chunks/{chunk-SCI7K3GM.js → chunk-TXO5BMR2.js} +19 -10
  121. package/chunks/{chunk-YJQCUTT2.js → chunk-UAB6J2IE.js} +4 -4
  122. package/chunks/{chunk-OFI7IGST.js → chunk-UGUKH3SU.js} +10 -10
  123. package/chunks/{chunk-SHZYHGQH.js → chunk-V2226RFW.js} +1 -1
  124. package/chunks/{chunk-KKJJB5X6.js → chunk-V47QNK5W.js} +1526 -833
  125. package/chunks/{chunk-W4B7UBUS.js → chunk-VHXPSL57.js} +6 -6
  126. package/chunks/{chunk-WUC6ZFXO.js → chunk-VKJ4KTPJ.js} +1 -1
  127. package/chunks/{chunk-MAJS7AT4.js → chunk-VNNWAZSI.js} +2 -2
  128. package/chunks/{chunk-BVWVWGLE.js → chunk-WAUGQKUU.js} +4 -64
  129. package/chunks/{chunk-OH2VKQXH.js → chunk-WH6QMLUW.js} +37 -30
  130. package/chunks/{chunk-PJOBIWUG.js → chunk-WQYWK4DG.js} +1 -1
  131. package/chunks/{chunk-LEMXGVEP.js → chunk-YFRFZCIP.js} +3 -3
  132. package/chunks/{chunk-2U3WZGZG.js → chunk-YGT2AUJ7.js} +103 -135
  133. package/chunks/{chunk-6XU3PH66.js → chunk-YR7ZQ4RD.js} +22 -69
  134. package/chunks/{chunk-OA4JVLSA.js → chunk-Z7VOMGDC.js} +22 -1
  135. package/chunks/{chunk-RUL4S3K3.js → chunk-ZCJBCKL5.js} +175 -60
  136. package/chunks/{chunk-GSS34377.js → chunk-ZI5IH2HP.js} +2 -2
  137. package/chunks/{chunk-CB2464BK.js → chunk-ZIKTCMQF.js} +117 -10
  138. package/chunks/chunk-ZLBIFIMV.js +1099 -0
  139. package/chunks/{chunk-D3UEZIQH.js → chunk-ZSNBQXMZ.js} +48 -55
  140. package/chunks/{chunk-FZBZSYKU.js → chunk-ZV7LTLFE.js} +1 -1
  141. package/chunks/{computer-use-KEAPATUY.js → computer-use-SLN7DV2E.js} +28 -24
  142. package/chunks/{config-utils-K7SCOWHD.js → config-utils-ULCSRMWD.js} +4 -4
  143. package/chunks/{contextCommand-ZJA6A5K5.js → contextCommand-EHFYX6FW.js} +30 -26
  144. package/chunks/{core-runtime-QMJPWHCI.js → core-runtime-FBSP5IIG.js} +33 -29
  145. package/chunks/{create-sub-session-E4PBYXV5.js → create-sub-session-QIDZUOPU.js} +1 -1
  146. package/chunks/{create-sub-session-DJE6XICH.js → create-sub-session-WC7YGVSL.js} +29 -25
  147. package/chunks/{cron-create-GRBWYMIJ.js → cron-create-VONA5JYY.js} +1 -1
  148. package/chunks/{cron-delete-4CMKBR2M.js → cron-delete-5JXSP2MI.js} +1 -1
  149. package/chunks/{cron-list-W7K4ASOA.js → cron-list-KE4F2CIR.js} +1 -1
  150. package/chunks/{daemon-SCTQMM7Z.js → daemon-VSX3FHTY.js} +119 -4
  151. package/chunks/{daemon-status-provider-FSWDPE2G.js → daemon-status-provider-WW2AD2T7.js} +39 -35
  152. package/chunks/{daemon-trust-policy-P5L5VFAY.js → daemon-trust-policy-E4MAYWPI.js} +35 -31
  153. package/chunks/{daemon-trust-policy-monitor-73JYN6ET.js → daemon-trust-policy-monitor-XVIDV6T4.js} +35 -31
  154. package/chunks/{de-VL76CPLV.js → de-LIW4XVLN.js} +5 -0
  155. package/chunks/{deferred-core-runtime-BWRCCFTE.js → deferred-core-runtime-5SVUC6UC.js} +28 -24
  156. package/chunks/{display-image-O2XFPQTC.js → display-image-NQRSIBXM.js} +2 -2
  157. package/chunks/{dist-HVBMEYWK.js → dist-3NTTUAHT.js} +1 -1
  158. package/chunks/{dist-7JGAAQSC.js → dist-6BMOAE3Z.js} +2 -2
  159. package/chunks/{dist-3BMEUGTG.js → dist-B2CGTW6T.js} +1 -1
  160. package/chunks/{dist-C5U4LJKW.js → dist-EWW3J4HQ.js} +5 -4
  161. package/chunks/{dist-K4WWQBHS.js → dist-EZE3V3Q7.js} +55 -15
  162. package/chunks/{dist-DPPHJAVL.js → dist-J47AXBZC.js} +918 -142
  163. package/chunks/{dist-SFQ34F4M.js → dist-OTUO3AS2.js} +8 -1091
  164. package/chunks/{dist-KS4O2NKE.js → dist-Z3CS4OVP.js} +14 -8
  165. package/chunks/{earlyInputCapture-L5ST23A6.js → earlyInputCapture-72FYHYRD.js} +28 -24
  166. package/chunks/{edit-LHHRFNFK.js → edit-SWVVWHXW.js} +28 -24
  167. package/chunks/{en-IRJ2WN5T.js → en-SY5GTIGX.js} +6 -0
  168. package/chunks/{enter-worktree-6NXCRZPF.js → enter-worktree-2HF6WQEO.js} +28 -24
  169. package/chunks/{enterPlanMode-ZVQT4U7D.js → enterPlanMode-OW6S7L4P.js} +28 -24
  170. package/chunks/{environment-GJ2HWJOS.js → environment-LRTBTDXH.js} +32 -28
  171. package/chunks/{errors-6RLH3XXC.js → errors-4CO2DME6.js} +30 -26
  172. package/chunks/{exit-worktree-I2YLUHHY.js → exit-worktree-GHJEIRGL.js} +28 -24
  173. package/chunks/{exitPlanMode-7CCWKO7I.js → exitPlanMode-JVP4FNNK.js} +28 -24
  174. package/chunks/{fast-path-DVFD4HQD.js → fast-path-HCCY7GR2.js} +24 -3
  175. package/chunks/{fast-path-settings-WQJU2LAT.js → fast-path-settings-MN5QQQET.js} +6 -3
  176. package/chunks/{fr-GK3HQYVB.js → fr-RQFO7U4P.js} +5 -0
  177. package/chunks/{gemini-7FWGOYD4.js → gemini-V3YVRKXU.js} +85 -72
  178. package/chunks/{geminiContentGenerator-V2WVLIXU.js → geminiContentGenerator-LVPMQUWX.js} +1 -1
  179. package/chunks/{glob-3N6GGI75.js → glob-7HRXHYDR.js} +28 -24
  180. package/chunks/{goal-tools-APOW6UXL.js → goal-tools-PXWN5VK3.js} +4 -2
  181. package/chunks/{grep-V43ILZVX.js → grep-BITQUON5.js} +28 -24
  182. package/chunks/{handleAutoUpdate-A5WFVWIA.js → handleAutoUpdate-DKFY454S.js} +32 -28
  183. package/chunks/{i18n-PLVQ4FBZ.js → i18n-53BQIQSH.js} +29 -25
  184. package/chunks/{image-gen-7C6IK6DC.js → image-gen-H62FLDFB.js} +7 -5
  185. package/chunks/{initializer-CVAIKZYL.js → initializer-Q7NUQRSU.js} +35 -31
  186. package/chunks/{installationInfo-J6QDHNTK.js → installationInfo-BWFHT7WU.js} +29 -25
  187. package/chunks/{ja-3FA46IKD.js → ja-KOZKHJHZ.js} +5 -0
  188. package/chunks/{list-ZZ4OUUWV.js → list-OWQKR6JK.js} +38 -34
  189. package/chunks/{list-agents-KFFIIS2G.js → list-agents-Z4WABFDZ.js} +1 -1
  190. package/chunks/{loadedSettingsAdapter-QRYRJSWL.js → loadedSettingsAdapter-HNPKQMFA.js} +35 -31
  191. package/chunks/{loggingContentGenerator-OJCO75HM.js → loggingContentGenerator-A5I3VQUC.js} +10 -8
  192. package/chunks/{loop-wakeup-TLMJPMMP.js → loop-wakeup-UZ5RL5Y2.js} +2 -2
  193. package/chunks/{ls-UVVE2XGE.js → ls-TVHDGIES.js} +1 -1
  194. package/chunks/{lsp-QMEA2VLB.js → lsp-CVN6OQPI.js} +1 -1
  195. package/chunks/main-PXAUXNF2.js +8 -0
  196. package/chunks/{managed-npm-update-PCOSCP2N.js → managed-npm-update-CUUJGUTV.js} +29 -25
  197. package/chunks/{mcp-M3WKKWKY.js → mcp-GJSC7ZPO.js} +35 -31
  198. package/chunks/{monitor-GN24FH6C.js → monitor-TZ2II7JM.js} +38 -30
  199. package/chunks/{nonInteractiveCli-KPTU3VSQ.js → nonInteractiveCli-22RS4EVH.js} +72 -66
  200. package/chunks/{notebook-edit-4YM65BBO.js → notebook-edit-YZC3YPY2.js} +36 -24
  201. package/chunks/{openaiContentGenerator-EDQT6GTV.js → openaiContentGenerator-OIGO5XNF.js} +21 -11
  202. package/chunks/{pidfile-JOIIRN2C.js → pidfile-QJQ65RJ2.js} +28 -24
  203. package/chunks/{process-registry-2CHQBXH5.js → process-registry-PMJOA5CO.js} +15 -0
  204. package/chunks/{processUtils-5SV4MX3Q.js → processUtils-V5VSDIKS.js} +2 -2
  205. package/chunks/{pt-3AOBKPIJ.js → pt-U6AOCTMF.js} +5 -0
  206. package/chunks/{qwenContentGenerator-ODRJSUGR.js → qwenContentGenerator-HXM25BGB.js} +35 -30
  207. package/chunks/{qwenOAuth2-NESCMZ47.js → qwenOAuth2-7MTMS2Z5.js} +7 -5
  208. package/chunks/{read-file-HPSODLPK.js → read-file-PMGXB3ZB.js} +8 -6
  209. package/chunks/{read-mcp-resource-2TNSJTC3.js → read-mcp-resource-PZ4ZF6YL.js} +1 -1
  210. package/chunks/{record-artifact-RAON52FC.js → record-artifact-P4HFMS7X.js} +2 -2
  211. package/chunks/{resumeHistoryUtils-TXCOFFMQ.js → resumeHistoryUtils-YUTPLHUH.js} +33 -29
  212. package/chunks/{ripGrep-ZKQGTQAO.js → ripGrep-XUS66YIV.js} +28 -24
  213. package/chunks/{ru-VJRAMC4W.js → ru-CMX4UMYP.js} +5 -0
  214. package/chunks/{run-qwen-serve-ZPKPKECF.js → run-qwen-serve-4NVSU75L.js} +261 -62
  215. package/chunks/{runtime-2FLNNM36.js → runtime-QLRVP6HM.js} +40 -36
  216. package/chunks/{scheduler-365PJHNR.js → scheduler-PBB2NSOP.js} +28 -24
  217. package/chunks/{sdk-exporters-http-KHAB5JSD.js → sdk-exporters-http-XVTZQRCE.js} +2 -2
  218. package/chunks/{sdk-impl-KD7FSTC3.js → sdk-impl-7W7AKCS4.js} +7 -3
  219. package/chunks/{send-message-ZM7MRUGP.js → send-message-CAMSLG2L.js} +4 -3
  220. package/chunks/{serve-QD2RNLKJ.js → serve-BWKTRX72.js} +37 -31
  221. package/chunks/{server-XLJVLTYM.js → server-E7CH7WPK.js} +1437 -593
  222. package/chunks/{session-3VTUHH4Q.js → session-QEKSJ6YU.js} +166 -105
  223. package/chunks/{settings-KULVPCQC.js → settings-BRAOSJIM.js} +34 -30
  224. package/chunks/{shell-3SWW22MH.js → shell-OF3CK4AT.js} +28 -24
  225. package/chunks/{skill-KDHWYS7W.js → skill-HLH2NO2H.js} +9 -7
  226. package/chunks/{skill-settings-NMY4JEJC.js → skill-settings-DRPU7YI5.js} +34 -30
  227. package/chunks/{spawnChannel-ZKS4Q5OU.js → spawnChannel-4KO7YTFM.js} +31 -27
  228. package/chunks/{standalone-update-7CXPGAQ4.js → standalone-update-DJN2R3YW.js} +30 -26
  229. package/chunks/{startInteractiveUI-2QQLEKM6.js → startInteractiveUI-O3WQQ2WC.js} +384 -173
  230. package/chunks/{syntheticOutput-ZLCUTKO2.js → syntheticOutput-PEBJQYJV.js} +2 -2
  231. package/chunks/{task-create-CQP5UEA3.js → task-create-5NWCQSJF.js} +5 -4
  232. package/chunks/{task-list-XLEZOJXP.js → task-list-53265TRZ.js} +1 -1
  233. package/chunks/{task-stop-7ZQM5CFF.js → task-stop-FPCOIRYX.js} +1 -1
  234. package/chunks/{task-update-JA75U2SN.js → task-update-5HN577LS.js} +5 -4
  235. package/chunks/{team-create-2WTNGAOX.js → team-create-2E4ACBJD.js} +28 -24
  236. package/chunks/{team-delete-MHY3UZGY.js → team-delete-MMQB4OSC.js} +1 -1
  237. package/chunks/{team-plan-approval-LZTYLEG4.js → team-plan-approval-LWIDXYOA.js} +28 -24
  238. package/chunks/{terminal-image-renderer-R5HHAFJN.js → terminal-image-renderer-PJM7663W.js} +30 -26
  239. package/chunks/{theme-manager-PAUCSJFF.js → theme-manager-FDQTM3RP.js} +28 -24
  240. package/chunks/{todoWrite-UPVOHYGD.js → todoWrite-JGV6VLOX.js} +1 -1
  241. package/chunks/{tool-search-2BFCGLI6.js → tool-search-TL5ZXBF4.js} +11 -8
  242. package/chunks/{total-session-admission-MK4SINFK.js → total-session-admission-LS6EY5KT.js} +37 -32
  243. package/chunks/{trustedFolders-TJ5S26N7.js → trustedFolders-5RWP5OB7.js} +32 -26
  244. package/chunks/{types-ML3TRJQ5.js → types-WYCFCEHR.js} +5 -3
  245. package/chunks/{update-relaunch-N7AYLARF.js → update-relaunch-HWQ4USKY.js} +5 -5
  246. package/chunks/{updateCheck-QRZ3DVT5.js → updateCheck-EZMBTEIR.js} +31 -27
  247. package/chunks/{useAutoAcceptIndicator-DBJ7Y5AF.js → useAutoAcceptIndicator-JDMI627A.js} +37 -33
  248. package/chunks/{validateNonInterActiveAuth-6ZQWUDS3.js → validateNonInterActiveAuth-RRUHC5RO.js} +67 -63
  249. package/chunks/{version-AJQGQWXC.js → version-XS4UTKUX.js} +1 -1
  250. package/chunks/{web-fetch-QWJYRXFL.js → web-fetch-2JV7H6OM.js} +14 -10
  251. package/chunks/{web-search-2AOXJGHU.js → web-search-RCTN2GAM.js} +10 -7
  252. package/chunks/{workflow-ERH3SJG2.js → workflow-6MKLKQ6R.js} +909 -273
  253. package/chunks/{workspace-providers-status-HZ474RA4.js → workspace-providers-status-YZ2IJ4DK.js} +38 -34
  254. package/chunks/{workspace-registration-store-6EUP4JXG.js → workspace-registration-store-IYN72LBS.js} +1 -1
  255. package/chunks/{workspace-registry-R4APRRNC.js → workspace-registry-7LFBZQLT.js} +37 -32
  256. package/chunks/{workspace-service-HFIFDMU7.js → workspace-service-2EHSPRJB.js} +45 -39
  257. package/chunks/{workspace-skills-status-HAHEIHGK.js → workspace-skills-status-5VJ2D5HN.js} +36 -32
  258. package/chunks/{workspace-trust-reconciler-65GTAGDK.js → workspace-trust-reconciler-X2LZ6XCI.js} +44 -39
  259. package/chunks/{write-file-B34CDELV.js → write-file-CJK6SCCF.js} +28 -24
  260. package/chunks/{zh-ARWDLDLR.js → zh-AGL2FVBI.js} +6 -0
  261. package/chunks/{zh-TW-Y4RGI3P7.js → zh-TW-KI66MHQY.js} +6 -0
  262. package/chunks/{zoom-image-HPRBZHSS.js → zoom-image-BVW4RFYW.js} +8 -6
  263. package/cli.js +13 -13
  264. package/locales/ca.js +10 -0
  265. package/locales/de.js +9 -0
  266. package/locales/en.js +10 -0
  267. package/locales/fr.js +9 -0
  268. package/locales/ja.js +9 -0
  269. package/locales/pt.js +9 -0
  270. package/locales/ru.js +9 -0
  271. package/locales/zh-TW.js +10 -0
  272. package/locales/zh.js +10 -0
  273. package/package.json +3 -3
  274. package/web-shell/assets/{arc-Ip-FFDJ0.js → arc-DDtoJrAW.js} +1 -1
  275. package/web-shell/assets/{architectureDiagram-3BPJPVTR-CChqgwIb.js → architectureDiagram-3BPJPVTR-BAInIW4O.js} +1 -1
  276. package/web-shell/assets/{blockDiagram-GPEHLZMM-BHN-Tfss.js → blockDiagram-GPEHLZMM-ChPDk7fP.js} +1 -1
  277. package/web-shell/assets/{c4Diagram-AAUBKEIU-BhyjzDjN.js → c4Diagram-AAUBKEIU-Cd9BJuUy.js} +1 -1
  278. package/web-shell/assets/channel-0OQklTfP.js +1 -0
  279. package/web-shell/assets/{chunk-2J33WTMH-BB9eyHrx.js → chunk-2J33WTMH-COQkLp56.js} +1 -1
  280. package/web-shell/assets/{chunk-4BX2VUAB-BeV7ce_J.js → chunk-4BX2VUAB-GUJshQ_l.js} +1 -1
  281. package/web-shell/assets/{chunk-55IACEB6-DO7kXDiV.js → chunk-55IACEB6-Boaa7c10.js} +1 -1
  282. package/web-shell/assets/{chunk-727SXJPM-B27MPznD.js → chunk-727SXJPM-CcRXaly2.js} +1 -1
  283. package/web-shell/assets/{chunk-AQP2D5EJ-DHIjqjD_.js → chunk-AQP2D5EJ-BY0OARHh.js} +1 -1
  284. package/web-shell/assets/{chunk-FMBD7UC4-DabMqyN2.js → chunk-FMBD7UC4-DLFQfv0S.js} +1 -1
  285. package/web-shell/assets/{chunk-ND2GUHAM-Dw7Nnnxc.js → chunk-ND2GUHAM-C_S0u-D2.js} +1 -1
  286. package/web-shell/assets/{chunk-QZHKN3VN-DdaZew1Q.js → chunk-QZHKN3VN-DP9m64hw.js} +1 -1
  287. package/web-shell/assets/classDiagram-4FO5ZUOK-CZ4-apsu.js +1 -0
  288. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CZ4-apsu.js +1 -0
  289. package/web-shell/assets/{cose-bilkent-S5V4N54A-CgBpCYH5.js → cose-bilkent-S5V4N54A-CGY6zGE1.js} +1 -1
  290. package/web-shell/assets/{dagre-BM42HDAG-BB4IU8G0.js → dagre-BM42HDAG-yB7whKNn.js} +1 -1
  291. package/web-shell/assets/{diagram-2AECGRRQ-BcUTHU37.js → diagram-2AECGRRQ-Bdlc59La.js} +1 -1
  292. package/web-shell/assets/{diagram-5GNKFQAL-B6Lyihyv.js → diagram-5GNKFQAL-BUClP18L.js} +1 -1
  293. package/web-shell/assets/{diagram-KO2AKTUF-CRIJOjpG.js → diagram-KO2AKTUF-aZm08kjn.js} +1 -1
  294. package/web-shell/assets/{diagram-LMA3HP47-DdNiwWWT.js → diagram-LMA3HP47-7DGwEkxC.js} +1 -1
  295. package/web-shell/assets/{diagram-OG6HWLK6-Dz4b32Do.js → diagram-OG6HWLK6-CAGKayxx.js} +1 -1
  296. package/web-shell/assets/{erDiagram-TEJ5UH35-D-8NGw77.js → erDiagram-TEJ5UH35-CptoHHQi.js} +1 -1
  297. package/web-shell/assets/{flowDiagram-I6XJVG4X-Dun26LyM.js → flowDiagram-I6XJVG4X-CNOH0s7Q.js} +1 -1
  298. package/web-shell/assets/{ganttDiagram-6RSMTGT7-F10Hu1Gc.js → ganttDiagram-6RSMTGT7-CCQuCU3y.js} +1 -1
  299. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-Bf8Ez6-D.js → gitGraphDiagram-PVQCEYII-B7gv9f4E.js} +1 -1
  300. package/web-shell/assets/{index-BXqw-nGq.js → index-BoUPVvpf.js} +1 -1
  301. package/web-shell/assets/index-D1YQXYsB.css +5 -0
  302. package/web-shell/assets/index-J4N7zCmU.js +1768 -0
  303. package/web-shell/assets/{infoDiagram-5YYISTIA-DVgTMLvj.js → infoDiagram-5YYISTIA-Bb3KYEbR.js} +1 -1
  304. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-uT-KepvK.js → ishikawaDiagram-YF4QCWOH-DWEzbAGi.js} +1 -1
  305. package/web-shell/assets/{journeyDiagram-JHISSGLW-Vg_XadQf.js → journeyDiagram-JHISSGLW-CmxwEqeb.js} +1 -1
  306. package/web-shell/assets/{kanban-definition-UN3LZRKU-Dyv1ESBE.js → kanban-definition-UN3LZRKU-Ci0gDD8O.js} +1 -1
  307. package/web-shell/assets/{linear-BMIepYX3.js → linear-BqxZqGhS.js} +1 -1
  308. package/web-shell/assets/{mermaid.core-zA8pJ9ag.js → mermaid.core-BDAFffHv.js} +5 -5
  309. package/web-shell/assets/{mindmap-definition-RKZ34NQL-BCW_BZ_5.js → mindmap-definition-RKZ34NQL-Btvx-xvS.js} +1 -1
  310. package/web-shell/assets/{pieDiagram-4H26LBE5-DseNEGp2.js → pieDiagram-4H26LBE5-CKAg7yG7.js} +1 -1
  311. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-6Z7wr1Fi.js → quadrantDiagram-W4KKPZXB-DIt8E1mC.js} +1 -1
  312. package/web-shell/assets/{requirementDiagram-4Y6WPE33-CVOlCRPf.js → requirementDiagram-4Y6WPE33-BA7mQWQJ.js} +1 -1
  313. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-CGhgrUJZ.js → sankeyDiagram-5OEKKPKP-D0JppnVU.js} +1 -1
  314. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-dlqmpLuQ.js → sequenceDiagram-3UESZ5HK-29DIQFjB.js} +1 -1
  315. package/web-shell/assets/{stateDiagram-AJRCARHV-B9EW10Xb.js → stateDiagram-AJRCARHV-iiXMdK--.js} +1 -1
  316. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-CEGK3l80.js +1 -0
  317. package/web-shell/assets/{timeline-definition-PNZ67QCA-BBRh0mgZ.js → timeline-definition-PNZ67QCA-CeF7ngSW.js} +1 -1
  318. package/web-shell/assets/{vennDiagram-CIIHVFJN-B8Gs-REP.js → vennDiagram-CIIHVFJN-Beilq8D6.js} +1 -1
  319. package/web-shell/assets/{wardley-L42UT6IY-D_y80Ur7.js → wardley-L42UT6IY-DOYjY4zO.js} +1 -1
  320. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-D-CNfHJ-.js → wardleyDiagram-YWT4CUSO-Dtqp8o18.js} +1 -1
  321. package/web-shell/assets/{xychartDiagram-2RQKCTM6-DQ5CvELo.js → xychartDiagram-2RQKCTM6-cdAc0Dfv.js} +1 -1
  322. package/web-shell/index.html +2 -2
  323. package/chunks/chunk-6PEXNQTX.js +0 -68
  324. package/chunks/chunk-IUFV6FYU.js +0 -81
  325. package/chunks/chunk-RXFQM6FQ.js +0 -42
  326. package/web-shell/assets/channel-Cu8qd6OB.js +0 -1
  327. package/web-shell/assets/classDiagram-4FO5ZUOK-BI3KrXhq.js +0 -1
  328. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BI3KrXhq.js +0 -1
  329. package/web-shell/assets/index-QQlUCJGg.css +0 -5
  330. package/web-shell/assets/index-hcgjV7vS.js +0 -1768
  331. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-CJTZJJ5X.js +0 -1
  332. package/chunks/{anthropicContentGenerator-DTMVEL5M.js → anthropicContentGenerator-SSFE2753.js} +9 -9
  333. /package/chunks/{chunk-VXZBKKQR.js → chunk-NTTBXH7U.js} +0 -0
  334. /package/chunks/{chunk-GRC5HGPI.js → chunk-OIBUG24X.js} +0 -0
@@ -1,5 +1,9 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
+ import {
4
+ getPathComparisonVariants,
5
+ isWithinRoot
6
+ } from "./chunk-MR3PXB6E.js";
3
7
  import {
4
8
  init_esbuild_shims
5
9
  } from "./chunk-5O2XNYP6.js";
@@ -81,6 +85,83 @@ var require_strip_json_comments = __commonJS({
81
85
  }
82
86
  });
83
87
 
88
+ // packages/cli/src/config/trust-precedence.ts
89
+ init_esbuild_shims();
90
+ import * as path from "node:path";
91
+ function pathDepth(value) {
92
+ const root = path.parse(value).root;
93
+ const relative2 = path.relative(root, value);
94
+ return relative2 === "" ? 0 : relative2.split(path.sep).filter(Boolean).length;
95
+ }
96
+ __name(pathDepth, "pathDepth");
97
+ function matchingDepth(rule, locationVariants) {
98
+ let deepestMatch = -1;
99
+ for (const locationVariant of locationVariants) {
100
+ for (const ruleVariant of rule.variants) {
101
+ if (isWithinRoot(locationVariant, ruleVariant)) {
102
+ deepestMatch = Math.max(deepestMatch, pathDepth(ruleVariant));
103
+ }
104
+ }
105
+ }
106
+ return deepestMatch;
107
+ }
108
+ __name(matchingDepth, "matchingDepth");
109
+ function buildTrustPrecedenceRules(rules) {
110
+ const result = [];
111
+ for (const rule of rules) {
112
+ let level;
113
+ let rulePath = rule.path;
114
+ switch (rule.trustLevel) {
115
+ case "TRUST_FOLDER":
116
+ level = "trusted";
117
+ break;
118
+ case "TRUST_PARENT":
119
+ level = "trusted";
120
+ rulePath = path.dirname(rule.path);
121
+ break;
122
+ case "DO_NOT_TRUST":
123
+ level = "untrusted";
124
+ break;
125
+ default:
126
+ continue;
127
+ }
128
+ result.push({
129
+ level,
130
+ variants: getPathComparisonVariants(rulePath),
131
+ payload: rule.trustLevel
132
+ });
133
+ }
134
+ return result;
135
+ }
136
+ __name(buildTrustPrecedenceRules, "buildTrustPrecedenceRules");
137
+ function resolveTrustRule(rules, locationVariants) {
138
+ let winner;
139
+ let winnerDepth = -1;
140
+ for (const rule of rules) {
141
+ const depth = matchingDepth(rule, locationVariants);
142
+ if (depth < 0) continue;
143
+ if (depth > winnerDepth || depth === winnerDepth && rule.level === "untrusted" && winner?.level !== "untrusted") {
144
+ winner = rule;
145
+ winnerDepth = depth;
146
+ }
147
+ }
148
+ return winner;
149
+ }
150
+ __name(resolveTrustRule, "resolveTrustRule");
151
+ function resolveTrustDecision(rules, locationVariants) {
152
+ const winner = resolveTrustRule(rules, locationVariants);
153
+ return winner?.level === "trusted" ? true : winner?.level === "untrusted" ? false : void 0;
154
+ }
155
+ __name(resolveTrustDecision, "resolveTrustDecision");
156
+
84
157
  export {
85
- require_strip_json_comments
158
+ require_strip_json_comments,
159
+ buildTrustPrecedenceRules,
160
+ resolveTrustRule,
161
+ resolveTrustDecision
86
162
  };
163
+ /**
164
+ * @license
165
+ * Copyright 2026 Qwen Team
166
+ * SPDX-License-Identifier: Apache-2.0
167
+ */
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  wrapForMultiplexer
5
- } from "./chunk-22NBYCPD.js";
5
+ } from "./chunk-3P2LV43B.js";
6
6
  import {
7
7
  createDebugLogger
8
8
  } from "./chunk-OIVKILPI.js";
@@ -168,13 +168,16 @@ async function getClipboardModule() {
168
168
  return clipboardModulePromise;
169
169
  }
170
170
  __name(getClipboardModule, "getClipboardModule");
171
+ function isWaylandSession() {
172
+ return process.env["XDG_SESSION_TYPE"]?.toLowerCase() === "wayland" || Boolean(process.env["WAYLAND_DISPLAY"]);
173
+ }
174
+ __name(isWaylandSession, "isWaylandSession");
171
175
  function getLinuxClipboardTool() {
172
176
  if (linuxClipboardTool !== void 0) return linuxClipboardTool;
173
177
  const sessionType = process.env["XDG_SESSION_TYPE"];
174
- const waylandDisplay = process.env["WAYLAND_DISPLAY"];
175
178
  const display = process.env["DISPLAY"];
176
179
  let toolName = null;
177
- if (sessionType === "wayland" || waylandDisplay) {
180
+ if (isWaylandSession()) {
178
181
  toolName = "wl-paste";
179
182
  } else if (sessionType === "x11" || display) {
180
183
  toolName = "xclip";
@@ -601,6 +604,7 @@ export {
601
604
  oscGhosttyNotify,
602
605
  generateKittyId,
603
606
  writeOsc52,
607
+ isWaylandSession,
604
608
  clipboardHasImage,
605
609
  saveClipboardImage,
606
610
  cleanupOldClipboardImages
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  parseRule
5
- } from "./chunk-Y7E5LNLO.js";
5
+ } from "./chunk-47ZUMGGY.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  runExitCleanup
5
- } from "./chunk-EORNAQDT.js";
5
+ } from "./chunk-RQ6U2JJQ.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -5,10 +5,10 @@ import {
5
5
  } from "./chunk-DP3IHZGG.js";
6
6
  import {
7
7
  t
8
- } from "./chunk-DBOFL3LQ.js";
8
+ } from "./chunk-BL65MO72.js";
9
9
  import {
10
10
  getNpmCliPath
11
- } from "./chunk-HYRDKNUY.js";
11
+ } from "./chunk-2545EHZR.js";
12
12
  import {
13
13
  getPackageJson
14
14
  } from "./chunk-VJNBRRZG.js";
@@ -6,7 +6,7 @@ import {
6
6
  import {
7
7
  getPlanRequiredTeammatePreApprovalMessage,
8
8
  isPlanRequiredTeammateAwaitingApproval
9
- } from "./chunk-BVWVWGLE.js";
9
+ } from "./chunk-WAUGQKUU.js";
10
10
  import {
11
11
  resolveActiveTeamName
12
12
  } from "./chunk-S6LOFUVP.js";
@@ -15,7 +15,7 @@ import {
15
15
  BaseToolInvocation,
16
16
  ToolDisplayNames,
17
17
  ToolNames
18
- } from "./chunk-IC4Z6LX6.js";
18
+ } from "./chunk-PYQADEFD.js";
19
19
  import {
20
20
  init_esbuild_shims
21
21
  } from "./chunk-5O2XNYP6.js";
@@ -2,10 +2,10 @@
2
2
  "use strict";
3
3
  import {
4
4
  STATUS_SCHEMA_VERSION
5
- } from "./chunk-NLREQJFK.js";
5
+ } from "./chunk-DA4HRSBW.js";
6
6
  import {
7
7
  formatMemoryUsage
8
- } from "./chunk-Y7E5LNLO.js";
8
+ } from "./chunk-47ZUMGGY.js";
9
9
  import {
10
10
  detectRuntime,
11
11
  redactProxyCredentials
@@ -2,10 +2,10 @@
2
2
  "use strict";
3
3
  import {
4
4
  HistoryReplayer
5
- } from "./chunk-6XJMFJ4D.js";
5
+ } from "./chunk-5WZL724W.js";
6
6
  import {
7
7
  isA2uiToolMeta
8
- } from "./chunk-LA7YLSR6.js";
8
+ } from "./chunk-4EOURKA4.js";
9
9
  import {
10
10
  ChannelDeliveryError,
11
11
  MAX_CHANNEL_DELIVERY_TEXT_LENGTH
@@ -14,32 +14,16 @@ import {
14
14
  redactLogCredentials
15
15
  } from "./chunk-M5GB774H.js";
16
16
  import {
17
- getUserSettingsPath,
18
- loadSettings
19
- } from "./chunk-PQBHU2IA.js";
20
- import {
21
- getSystemDefaultsPath,
22
- getSystemSettingsPath
23
- } from "./chunk-IDS7MSUP.js";
24
- import {
25
- findEnvFiles,
26
- preResolveHomeEnvOverrides
27
- } from "./chunk-VOARQPTA.js";
28
- import {
29
- getResponseText,
30
- ideContextStore
31
- } from "./chunk-Y7E5LNLO.js";
17
+ getResponseText
18
+ } from "./chunk-47ZUMGGY.js";
32
19
  import {
33
20
  MAX_CHANNEL_DELIVERY_NAME_LENGTH,
34
21
  MAX_CHANNEL_DELIVERY_TARGET_ID_LENGTH
35
22
  } from "./chunk-GNPNYXJB.js";
36
23
  import {
37
- parseGoalSnapshotV2
38
- } from "./chunk-3K7FH2KQ.js";
39
- import {
40
- Storage,
41
- createDebugLogger
42
- } from "./chunk-OIVKILPI.js";
24
+ parseGoalSnapshotV2,
25
+ parseGoalStateCause
26
+ } from "./chunk-67N6HB5H.js";
43
27
  import {
44
28
  init_esbuild_shims
45
29
  } from "./chunk-5O2XNYP6.js";
@@ -481,121 +465,6 @@ async function executeGeneration(config, requestId, prompt, signal, emit) {
481
465
  }
482
466
  __name(executeGeneration, "executeGeneration");
483
467
 
484
- // packages/cli/src/config/settings-cache.ts
485
- init_esbuild_shims();
486
- import * as fs from "node:fs";
487
- import * as os from "node:os";
488
- import * as path from "node:path";
489
- var MAX_CACHE_ENTRIES = 64;
490
- var debugLogger = createDebugLogger("SETTINGS_CACHE");
491
- var cache = /* @__PURE__ */ new Map();
492
- function statSig(filePath) {
493
- const st = fs.statSync(filePath, { throwIfNoEntry: false });
494
- return st ? `${st.mtimeMs}:${st.size}:${st.ino}` : "missing";
495
- }
496
- __name(statSig, "statSig");
497
- function realpathOr(p) {
498
- try {
499
- return fs.realpathSync(p);
500
- } catch {
501
- return path.resolve(p);
502
- }
503
- }
504
- __name(realpathOr, "realpathOr");
505
- function settingsFileSigs(workspaceDir) {
506
- const filePaths = [
507
- getSystemSettingsPath(),
508
- getSystemDefaultsPath(),
509
- getUserSettingsPath(),
510
- new Storage(workspaceDir).getWorkspaceSettingsPath()
511
- ];
512
- return filePaths.map((filePath) => ({ filePath, sig: statSig(filePath) }));
513
- }
514
- __name(settingsFileSigs, "settingsFileSigs");
515
- function envFileSigs(settings, workspaceDir) {
516
- return findEnvFiles(settings.merged, workspaceDir).map((filePath) => ({
517
- filePath,
518
- sig: statSig(filePath)
519
- }));
520
- }
521
- __name(envFileSigs, "envFileSigs");
522
- function sameFileSigs(a, b) {
523
- if (a.length !== b.length) {
524
- return false;
525
- }
526
- return a.every(
527
- (sig, i) => sig.filePath === b[i].filePath && sig.sig === b[i].sig
528
- );
529
- }
530
- __name(sameFileSigs, "sameFileSigs");
531
- function isEntryFresh(key, entry) {
532
- const fp = entry.fingerprint;
533
- return ideContextStore.get()?.workspaceState?.isTrusted === fp.ideTrust && realpathOr(key) === fp.realCwd && // homeDir guards the corner where nothing else moves: QWEN_HOME set (so
534
- // settings paths don't follow HOME), no .env files anywhere, and the new
535
- // home equals the workspace dir — which flips workspaceSettingsActive.
536
- realpathOr(os.homedir()) === fp.homeDir && sameFileSigs(settingsFileSigs(key), fp.settingsFiles) && sameFileSigs(envFileSigs(entry.settings, key), fp.envFiles);
537
- }
538
- __name(isEntryFresh, "isEntryFresh");
539
- function loadSettingsCached(workspaceDir) {
540
- preResolveHomeEnvOverrides();
541
- const key = path.resolve(workspaceDir);
542
- const entry = cache.get(key);
543
- if (entry) {
544
- let isFresh = false;
545
- try {
546
- isFresh = isEntryFresh(key, entry);
547
- } catch (error) {
548
- debugLogger.warn(
549
- `fingerprint check failed for ${key}; reloading:`,
550
- error
551
- );
552
- }
553
- if (isFresh) {
554
- cache.delete(key);
555
- cache.set(key, entry);
556
- debugLogger.debug(`hit ${key}`);
557
- return entry.settings;
558
- }
559
- cache.delete(key);
560
- }
561
- debugLogger.debug(`miss ${key}`);
562
- let preLoadSigs;
563
- try {
564
- preLoadSigs = settingsFileSigs(key);
565
- } catch (error) {
566
- debugLogger.warn(`pre-load signing failed for ${key}; not caching:`, error);
567
- }
568
- const settings = loadSettings(key);
569
- if (preLoadSigs) {
570
- try {
571
- cache.set(key, {
572
- settings,
573
- fingerprint: {
574
- settingsFiles: preLoadSigs,
575
- // .env discovery needs the merged settings (trust), so it can only
576
- // be signed after the load — see difference (2) in the module doc.
577
- envFiles: envFileSigs(settings, key),
578
- ideTrust: ideContextStore.get()?.workspaceState?.isTrusted,
579
- realCwd: realpathOr(key),
580
- homeDir: realpathOr(os.homedir())
581
- }
582
- });
583
- if (cache.size > MAX_CACHE_ENTRIES) {
584
- const oldest = cache.keys().next().value;
585
- if (oldest !== void 0) {
586
- cache.delete(oldest);
587
- debugLogger.debug(`evicted LRU entry ${oldest}`);
588
- }
589
- }
590
- } catch (error) {
591
- cache.delete(key);
592
- debugLogger.warn(`caching failed for ${key}; serving uncached:`, error);
593
- }
594
- }
595
- return settings;
596
- }
597
- __name(loadSettingsCached, "loadSettingsCached");
598
-
599
468
  // packages/cli/src/acp-integration/session/history-replay-page.ts
600
469
  init_esbuild_shims();
601
470
 
@@ -969,10 +838,16 @@ function parseTranscriptReplayState(replay, logger) {
969
838
  if (logger && rawGoalState !== void 0 && !goalState) {
970
839
  logger.warn("[transcript] replay state dropped a malformed Goal state");
971
840
  }
841
+ const rawGoalCause = replay["goalCause"];
842
+ const goalCause = rawGoalCause === void 0 ? void 0 : parseGoalStateCause(rawGoalCause);
843
+ if (logger && rawGoalCause !== void 0 && !goalCause) {
844
+ logger.warn("[transcript] replay state dropped a malformed Goal cause");
845
+ }
972
846
  return {
973
847
  pendingToolCalls,
974
848
  cumulativeUsage,
975
- ...goalState ? { goalState } : {}
849
+ ...goalState ? { goalState } : {},
850
+ ...goalCause ? { goalCause } : {}
976
851
  };
977
852
  }
978
853
  __name(parseTranscriptReplayState, "parseTranscriptReplayState");
@@ -1058,7 +933,8 @@ async function replayTranscriptRecordPage({
1058
933
  pendingToolCalls: page.direction === "backward" ? [] : state.pendingToolCalls,
1059
934
  finalizeDangling: finalizeDangling && (page.direction === "backward" || !page.hasMore),
1060
935
  gaps: page.gaps,
1061
- ...state.goalState ? { goalState: state.goalState } : {}
936
+ ...state.goalState ? { goalState: state.goalState } : {},
937
+ ...state.goalCause ? { goalCause: state.goalCause } : {}
1062
938
  });
1063
939
  replayState = replayPageState.replay;
1064
940
  } catch (error) {
@@ -1176,7 +1052,6 @@ export {
1176
1052
  GENERATION_MAX_PROMPT_BYTES,
1177
1053
  GENERATION_TIMEOUT_MS,
1178
1054
  executeGeneration,
1179
- loadSettingsCached,
1180
1055
  parseChannelDelivery,
1181
1056
  normalizeChannelDeliveryText,
1182
1057
  normalizeChannelDelivery,
@@ -2,19 +2,19 @@
2
2
  "use strict";
3
3
  import {
4
4
  getErrorMessage
5
- } from "./chunk-TDXGKHDN.js";
5
+ } from "./chunk-P5ULXPK5.js";
6
6
  import {
7
7
  extensionToOutputString,
8
8
  getExtensionManager
9
- } from "./chunk-OHJLEW5J.js";
9
+ } from "./chunk-TWFFY5BP.js";
10
10
  import {
11
11
  loadSettings
12
- } from "./chunk-PQBHU2IA.js";
12
+ } from "./chunk-HKI3KHAO.js";
13
13
  import {
14
14
  initializeI18n,
15
15
  resolveLanguageSetting,
16
16
  t
17
- } from "./chunk-DBOFL3LQ.js";
17
+ } from "./chunk-BL65MO72.js";
18
18
  import {
19
19
  writeStderrLine,
20
20
  writeStdoutLine
@@ -3,7 +3,7 @@
3
3
  import {
4
4
  JsonFormatter,
5
5
  parseAndFormatApiError
6
- } from "./chunk-Y7E5LNLO.js";
6
+ } from "./chunk-47ZUMGGY.js";
7
7
  import {
8
8
  FatalBudgetExceededError,
9
9
  FatalCancellationError,
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk-OIVKILPI.js";
13
13
  import {
14
14
  runExitCleanup
15
- } from "./chunk-EORNAQDT.js";
15
+ } from "./chunk-RQ6U2JJQ.js";
16
16
  import {
17
17
  writeStderrLine
18
18
  } from "./chunk-KGJGEEVR.js";
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-M5GB774H.js";
6
6
  import {
7
7
  sanitizeLogText
8
- } from "./chunk-DIEFUBV6.js";
8
+ } from "./chunk-DX3RGJMS.js";
9
9
  import {
10
10
  stripAnsi
11
11
  } from "./chunk-TWPJO254.js";
@@ -13,6 +13,7 @@ var SERVICE_NAME = "qwen-code";
13
13
  var EVENT_USER_PROMPT = "qwen-code.user_prompt";
14
14
  var EVENT_USER_RETRY = "qwen-code.user_retry";
15
15
  var EVENT_TOOL_CALL = "qwen-code.tool_call";
16
+ var EVENT_REPEATED_TOOL_FAILURE_GUARD = "qwen-code.repeated_tool_failure_guard";
16
17
  var EVENT_API_REQUEST = "qwen-code.api_request";
17
18
  var EVENT_API_ERROR = "qwen-code.api_error";
18
19
  var EVENT_API_CANCEL = "qwen-code.api_cancel";
@@ -84,6 +85,7 @@ export {
84
85
  EVENT_USER_PROMPT,
85
86
  EVENT_USER_RETRY,
86
87
  EVENT_TOOL_CALL,
88
+ EVENT_REPEATED_TOOL_FAILURE_GUARD,
87
89
  EVENT_API_REQUEST,
88
90
  EVENT_API_ERROR,
89
91
  EVENT_API_CANCEL,
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  MAX_TERMINAL_IMAGE_BYTES
5
- } from "./chunk-IC4Z6LX6.js";
5
+ } from "./chunk-PYQADEFD.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -2,16 +2,16 @@
2
2
  "use strict";
3
3
  import {
4
4
  loadSettings
5
- } from "./chunk-PQBHU2IA.js";
5
+ } from "./chunk-HKI3KHAO.js";
6
6
  import {
7
7
  getCurrentLanguage
8
- } from "./chunk-DBOFL3LQ.js";
8
+ } from "./chunk-BL65MO72.js";
9
9
  import {
10
10
  isWorkspaceTrusted
11
- } from "./chunk-6XU3PH66.js";
11
+ } from "./chunk-YR7ZQ4RD.js";
12
12
  import {
13
13
  require_strip_json_comments
14
- } from "./chunk-ALGGS7UH.js";
14
+ } from "./chunk-NPQ5ZKRP.js";
15
15
  import {
16
16
  Client,
17
17
  Config,
@@ -21,8 +21,9 @@ import {
21
21
  createTransport,
22
22
  hashMcpServerConfig,
23
23
  isGatedMcpScope,
24
- normalizeClaudeMcpServer
25
- } from "./chunk-Y7E5LNLO.js";
24
+ normalizeClaudeMcpServer,
25
+ runWithTimeout
26
+ } from "./chunk-47ZUMGGY.js";
26
27
  import {
27
28
  atomicWriteFile
28
29
  } from "./chunk-FOGU3LJX.js";
@@ -556,6 +557,7 @@ var COLOR_GREEN = "\x1B[32m";
556
557
  var COLOR_YELLOW = "\x1B[33m";
557
558
  var COLOR_RED = "\x1B[31m";
558
559
  var RESET_COLOR = "\x1B[0m";
560
+ var MCP_CONNECT_TIMEOUT_MS = 5e3;
559
561
  async function getMcpServersFromConfig() {
560
562
  const settings = loadSettings();
561
563
  const extensionManager = new ExtensionManager({
@@ -597,16 +599,23 @@ async function testMCPConnection(serverName, config) {
597
599
  transport = await createTransport(serverName, config, false);
598
600
  } catch (_error) {
599
601
  await client.close();
600
- return "disconnected" /* DISCONNECTED */;
602
+ return { status: "disconnected" /* DISCONNECTED */, timedOut: false };
601
603
  }
602
604
  try {
603
- await client.connect(transport, { timeout: 5e3 });
605
+ await runWithTimeout(
606
+ client.connect(transport, { timeout: MCP_CONNECT_TIMEOUT_MS }),
607
+ MCP_CONNECT_TIMEOUT_MS,
608
+ `MCP connection for ${serverName}`
609
+ );
604
610
  await client.ping();
605
611
  await client.close();
606
- return "connected" /* CONNECTED */;
607
- } catch (_error) {
612
+ return { status: "connected" /* CONNECTED */, timedOut: false };
613
+ } catch (error) {
608
614
  await transport.close();
609
- return "disconnected" /* DISCONNECTED */;
615
+ return {
616
+ status: "disconnected" /* DISCONNECTED */,
617
+ timedOut: error instanceof Error && error.message.startsWith("Timed out after ")
618
+ };
610
619
  }
611
620
  }
612
621
  __name(testMCPConnection, "testMCPConnection");
@@ -645,7 +654,7 @@ async function listMcpServers() {
645
654
  continue;
646
655
  }
647
656
  }
648
- const status = await getServerStatus(serverName, server);
657
+ const { status, timedOut } = await getServerStatus(serverName, server);
649
658
  let statusIndicator = "";
650
659
  let statusText = "";
651
660
  switch (status) {
@@ -660,7 +669,7 @@ async function listMcpServers() {
660
669
  case "disconnected" /* DISCONNECTED */:
661
670
  default:
662
671
  statusIndicator = COLOR_RED + "\u2717" + RESET_COLOR;
663
- statusText = "Disconnected";
672
+ statusText = timedOut ? `Disconnected (timed out after ${MCP_CONNECT_TIMEOUT_MS}ms)` : "Disconnected";
664
673
  break;
665
674
  }
666
675
  writeStdoutLine(`${statusIndicator} ${serverInfo} - ${statusText}`);
@@ -15686,6 +15686,10 @@ var ToolNamesMigration = {
15686
15686
  task: ToolNames.AGENT
15687
15687
  // Legacy name from agent tool (renamed from task)
15688
15688
  };
15689
+ function canonicalToolName(toolName) {
15690
+ return ToolNamesMigration[toolName] ?? toolName;
15691
+ }
15692
+ __name(canonicalToolName, "canonicalToolName");
15689
15693
  var ToolDisplayNamesMigration = {
15690
15694
  SearchFiles: ToolDisplayNames.GREP,
15691
15695
  // Old display name for Grep
@@ -15718,6 +15722,7 @@ export {
15718
15722
  ToolNames,
15719
15723
  ToolDisplayNames,
15720
15724
  ToolNamesMigration,
15725
+ canonicalToolName,
15721
15726
  ToolDisplayNamesMigration
15722
15727
  };
15723
15728
  /**