@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,16 +1,18 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
3
  import {
4
- require_strip_json_comments
5
- } from "./chunk-ALGGS7UH.js";
4
+ buildTrustPrecedenceRules,
5
+ require_strip_json_comments,
6
+ resolveTrustDecision,
7
+ resolveTrustRule
8
+ } from "./chunk-NPQ5ZKRP.js";
6
9
  import {
7
10
  arePathsEquivalent,
8
- getPathComparisonVariants,
9
- isWithinRoot
11
+ getPathComparisonVariants
10
12
  } from "./chunk-MR3PXB6E.js";
11
13
  import {
12
14
  ideContextStore
13
- } from "./chunk-Y7E5LNLO.js";
15
+ } from "./chunk-47ZUMGGY.js";
14
16
  import {
15
17
  require_proper_lockfile
16
18
  } from "./chunk-KRXPRVGL.js";
@@ -1893,45 +1895,10 @@ var LoadedTrustedFolders = class {
1893
1895
  * @returns
1894
1896
  */
1895
1897
  isPathTrusted(location) {
1896
- const trustedPaths = [];
1897
- const untrustedPaths = [];
1898
- for (const rule of this.rules) {
1899
- switch (rule.trustLevel) {
1900
- case "TRUST_FOLDER" /* TRUST_FOLDER */:
1901
- trustedPaths.push(rule.path);
1902
- break;
1903
- case "TRUST_PARENT" /* TRUST_PARENT */:
1904
- trustedPaths.push(path.dirname(rule.path));
1905
- break;
1906
- case "DO_NOT_TRUST" /* DO_NOT_TRUST */:
1907
- untrustedPaths.push(rule.path);
1908
- break;
1909
- default:
1910
- break;
1911
- }
1912
- }
1913
- const locationVariants = getPathComparisonVariants(location);
1914
- for (const trustedPath of trustedPaths) {
1915
- for (const locationVariant of locationVariants) {
1916
- for (const trustedVariant of getPathComparisonVariants(trustedPath)) {
1917
- if (isWithinRoot(locationVariant, trustedVariant)) {
1918
- return true;
1919
- }
1920
- }
1921
- }
1922
- }
1923
- for (const untrustedPath of untrustedPaths) {
1924
- for (const locationVariant of locationVariants) {
1925
- for (const untrustedVariant of getPathComparisonVariants(
1926
- untrustedPath
1927
- )) {
1928
- if (locationVariant === untrustedVariant) {
1929
- return false;
1930
- }
1931
- }
1932
- }
1933
- }
1934
- return void 0;
1898
+ return resolveTrustDecision(
1899
+ buildTrustPrecedenceRules(this.rules),
1900
+ getPathComparisonVariants(location)
1901
+ );
1935
1902
  }
1936
1903
  setValue(path2, trustLevel) {
1937
1904
  const committedConfig = writeTrustedFolders(
@@ -2060,32 +2027,17 @@ function isFolderTrustEnabled(settings) {
2060
2027
  return folderTrustSetting;
2061
2028
  }
2062
2029
  __name(isFolderTrustEnabled, "isFolderTrustEnabled");
2063
- function isWithinRootAcrossVariants(childPath, parentPath) {
2064
- for (const childVariant of getPathComparisonVariants(childPath)) {
2065
- for (const parentVariant of getPathComparisonVariants(parentPath)) {
2066
- if (isWithinRoot(childVariant, parentVariant)) {
2067
- return true;
2068
- }
2069
- }
2070
- }
2071
- return false;
2072
- }
2073
- __name(isWithinRootAcrossVariants, "isWithinRootAcrossVariants");
2074
2030
  function getExplicitTrustLevel(trustConfig, workspaceCwd) {
2075
- for (const [rulePath, trustLevel] of Object.entries(trustConfig)) {
2076
- if (trustLevel === "TRUST_FOLDER" /* TRUST_FOLDER */ && isWithinRootAcrossVariants(workspaceCwd, rulePath)) {
2077
- return trustLevel;
2078
- }
2079
- if (trustLevel === "TRUST_PARENT" /* TRUST_PARENT */ && isWithinRootAcrossVariants(workspaceCwd, path.dirname(rulePath))) {
2080
- return trustLevel;
2081
- }
2082
- }
2083
- for (const [rulePath, trustLevel] of Object.entries(trustConfig)) {
2084
- if (trustLevel === "DO_NOT_TRUST" /* DO_NOT_TRUST */ && arePathsEquivalent(workspaceCwd, rulePath)) {
2085
- return trustLevel;
2086
- }
2087
- }
2088
- return null;
2031
+ const winner = resolveTrustRule(
2032
+ buildTrustPrecedenceRules(
2033
+ Object.entries(trustConfig).map(([rulePath, trustLevel]) => ({
2034
+ path: rulePath,
2035
+ trustLevel
2036
+ }))
2037
+ ),
2038
+ getPathComparisonVariants(workspaceCwd)
2039
+ );
2040
+ return winner?.payload ?? null;
2089
2041
  }
2090
2042
  __name(getExplicitTrustLevel, "getExplicitTrustLevel");
2091
2043
  function loadTrustedFoldersWithOverrides(trustConfig) {
@@ -2191,6 +2143,7 @@ export {
2191
2143
  loadTrustedFolders,
2192
2144
  saveTrustedFolders,
2193
2145
  isFolderTrustEnabled,
2146
+ getExplicitTrustLevel,
2194
2147
  getWorkspaceTrustStatus,
2195
2148
  isWorkspaceTrusted
2196
2149
  };
@@ -57,12 +57,33 @@ var WorkspaceSkillNotToggleableError = class extends Error {
57
57
  __name(this, "WorkspaceSkillNotToggleableError");
58
58
  }
59
59
  };
60
+ function mapWorkspaceSkillToggleError(error) {
61
+ if (error instanceof WorkspaceSkillNotFoundError) {
62
+ return {
63
+ skillName: error.skillName,
64
+ code: "skill_not_found",
65
+ error: error.message
66
+ };
67
+ }
68
+ if (error instanceof WorkspaceSkillNotToggleableError) {
69
+ return {
70
+ skillName: error.skillName,
71
+ code: error.reason === "inactive_extension" ? "skill_inactive_extension" : "skill_not_toggleable",
72
+ error: error.message,
73
+ reason: error.reason,
74
+ ...error.lockedScope ? { lockedScope: error.lockedScope } : {}
75
+ };
76
+ }
77
+ return void 0;
78
+ }
79
+ __name(mapWorkspaceSkillToggleError, "mapWorkspaceSkillToggleError");
60
80
 
61
81
  export {
62
82
  WorkspaceSettingsPartialPersistError,
63
83
  WorkspacePermissionRulesSessionRequiredError,
64
84
  WorkspaceSkillNotFoundError,
65
- WorkspaceSkillNotToggleableError
85
+ WorkspaceSkillNotToggleableError,
86
+ mapWorkspaceSkillToggleError
66
87
  };
67
88
  /**
68
89
  * @license
@@ -3,13 +3,12 @@
3
3
  import {
4
4
  ExtensionRefreshState,
5
5
  clearSkillArgs,
6
- isValidSessionId,
7
6
  skillArgsNote,
8
7
  skillArgsPath,
9
8
  staleArgsWarning,
10
9
  validateAuthMethod,
11
10
  writeSkillArgs
12
- } from "./chunk-KKJJB5X6.js";
11
+ } from "./chunk-V47QNK5W.js";
13
12
  import {
14
13
  calculateCost,
15
14
  computeSessionStats,
@@ -18,26 +17,27 @@ import {
18
17
  findInlineMathExpressions,
19
18
  getSystemInfoFields,
20
19
  levelLabel
21
- } from "./chunk-RNVQB725.js";
20
+ } from "./chunk-DPMJLKUP.js";
22
21
  import {
23
22
  isKittyProtocolEnabled
24
23
  } from "./chunk-NYX53SV4.js";
25
24
  import {
26
25
  VSCODE_SHIFT_ENTER_SEQUENCE,
26
+ isWaylandSession,
27
27
  writeOsc52
28
- } from "./chunk-YHEEE624.js";
28
+ } from "./chunk-NV3F44FL.js";
29
29
  import {
30
30
  contextCommand
31
- } from "./chunk-SCI7K3GM.js";
32
- import {
33
- rollbackStandaloneUpdate
34
- } from "./chunk-GSS34377.js";
31
+ } from "./chunk-TXO5BMR2.js";
35
32
  import {
36
33
  themeManager
37
34
  } from "./chunk-CTJLZLB5.js";
35
+ import {
36
+ rollbackStandaloneUpdate
37
+ } from "./chunk-ZI5IH2HP.js";
38
38
  import {
39
39
  getErrorMessage as getErrorMessage2
40
- } from "./chunk-TDXGKHDN.js";
40
+ } from "./chunk-P5ULXPK5.js";
41
41
  import {
42
42
  GITHUB_WORKFLOW_PATHS,
43
43
  INSIGHT_CSS,
@@ -51,15 +51,14 @@ import {
51
51
  toJson,
52
52
  toJsonl,
53
53
  toMarkdown
54
- } from "./chunk-6XJMFJ4D.js";
54
+ } from "./chunk-5WZL724W.js";
55
55
  import {
56
56
  stripUnsafeCharacters,
57
57
  toCodePoints
58
58
  } from "./chunk-4NFY2S7N.js";
59
59
  import {
60
- isInlineModelOverrideAllowed,
61
- parseAcpModelOption
62
- } from "./chunk-CSZEXZBE.js";
60
+ isValidSessionId
61
+ } from "./chunk-TQOF5KBL.js";
63
62
  import {
64
63
  formatUnsupportedVoiceModelMessage,
65
64
  getVoiceSettingsScope,
@@ -67,16 +66,20 @@ import {
67
66
  isVoiceEnabled,
68
67
  readVoiceMode,
69
68
  readVoiceModel
70
- } from "./chunk-55LYDVPU.js";
69
+ } from "./chunk-HDYQYYWB.js";
71
70
  import {
72
71
  getExtendedSystemInfo,
73
72
  getGitVersion,
74
73
  getNpmVersion
75
- } from "./chunk-SPMY6CX6.js";
74
+ } from "./chunk-2ASQDZSJ.js";
76
75
  import {
77
76
  formatDuration,
78
77
  formatTokenCount
79
78
  } from "./chunk-3SH53ANB.js";
79
+ import {
80
+ isInlineModelOverrideAllowed,
81
+ parseAcpModelOption
82
+ } from "./chunk-HWXGX534.js";
80
83
  import {
81
84
  OUTPUT_LANGUAGE_AUTO,
82
85
  getAllSettingKeys,
@@ -88,7 +91,7 @@ import {
88
91
  resolveOutputLanguageOrPreserveAuto,
89
92
  validateSettingValue,
90
93
  writeOutputLanguageAndRegisterPath
91
- } from "./chunk-PQBHU2IA.js";
94
+ } from "./chunk-HKI3KHAO.js";
92
95
  import {
93
96
  SUPPORTED_LANGUAGES,
94
97
  getCurrentLanguage,
@@ -96,17 +99,17 @@ import {
96
99
  resolveSupportedLanguage,
97
100
  setLanguageAsync,
98
101
  t
99
- } from "./chunk-DBOFL3LQ.js";
102
+ } from "./chunk-BL65MO72.js";
100
103
  import {
101
104
  getInstallationInfo
102
- } from "./chunk-HYRDKNUY.js";
105
+ } from "./chunk-2545EHZR.js";
103
106
  import {
104
107
  isFolderTrustEnabled,
105
108
  loadTrustedFolders
106
- } from "./chunk-6XU3PH66.js";
109
+ } from "./chunk-YR7ZQ4RD.js";
107
110
  import {
108
111
  require_strip_json_comments
109
- } from "./chunk-ALGGS7UH.js";
112
+ } from "./chunk-NPQ5ZKRP.js";
110
113
  import {
111
114
  ArenaManager,
112
115
  BTW_MAX_INPUT_LENGTH,
@@ -153,9 +156,12 @@ import {
153
156
  glob,
154
157
  hookEventSupportsMatcher,
155
158
  ideContextStore,
159
+ isActiveWorkflowStatus,
156
160
  isExtensionCommittedWithWarningsError,
161
+ isSignalTermination,
157
162
  isSuccessStatus,
158
163
  isTerminalStatus,
164
+ isTerminalWorkflowStatus,
159
165
  listSavedWorkflows,
160
166
  listWorkflowSnapshots,
161
167
  loadServerHierarchicalMemory,
@@ -174,13 +180,13 @@ import {
174
180
  runForkedAgent,
175
181
  tryGenerateSessionTitle,
176
182
  unregisterGoalHook
177
- } from "./chunk-Y7E5LNLO.js";
183
+ } from "./chunk-47ZUMGGY.js";
178
184
  import {
179
185
  external_exports
180
186
  } from "./chunk-H6XPXXMH.js";
181
187
  import {
182
188
  resolveModelId
183
- } from "./chunk-RMH5OWLD.js";
189
+ } from "./chunk-F3II4BTZ.js";
184
190
  import {
185
191
  getAutoSkillCuratorStatus,
186
192
  parse,
@@ -193,13 +199,19 @@ import {
193
199
  HookEventName,
194
200
  sanitizeUserPromptExpansionAdditionalContext
195
201
  } from "./chunk-GM463R2B.js";
202
+ import {
203
+ projectUserTranscriptForDisplay
204
+ } from "./chunk-67N6HB5H.js";
196
205
  import {
197
206
  APPROVAL_MODES
198
- } from "./chunk-BVWVWGLE.js";
207
+ } from "./chunk-WAUGQKUU.js";
208
+ import {
209
+ resolveOpenAILogDir
210
+ } from "./chunk-DZUO626D.js";
199
211
  import {
200
212
  FORK_SUBAGENT_TYPE,
201
213
  stripStartupContext
202
- } from "./chunk-LZC3B5N2.js";
214
+ } from "./chunk-IA7TGCN2.js";
203
215
  import {
204
216
  applySkillAllowedTools,
205
217
  buildSkillLlmContent
@@ -211,9 +223,6 @@ import {
211
223
  REASONING_EFFORT_TIERS,
212
224
  normalizeReasoningEffort
213
225
  } from "./chunk-DGEIYUC3.js";
214
- import {
215
- resolveOpenAILogDir
216
- } from "./chunk-33ACCIIY.js";
217
226
  import {
218
227
  IdeConnectionEvent,
219
228
  formatTokenUsageSummaryAsCsv,
@@ -225,16 +234,18 @@ import {
225
234
  queryTokenUsage,
226
235
  read,
227
236
  recordSkillInvocation,
228
- runSideQuery,
229
237
  uiTelemetryService
230
- } from "./chunk-2U3WZGZG.js";
238
+ } from "./chunk-YGT2AUJ7.js";
231
239
  import {
232
240
  getAutoMemoryRoot
233
241
  } from "./chunk-FVKHVJZQ.js";
242
+ import {
243
+ runSideQuery
244
+ } from "./chunk-COBO5EBO.js";
234
245
  import {
235
246
  ToolNames,
236
247
  isShellProgressData
237
- } from "./chunk-IC4Z6LX6.js";
248
+ } from "./chunk-PYQADEFD.js";
238
249
  import {
239
250
  Storage,
240
251
  createDebugLogger,
@@ -248,7 +259,7 @@ import {
248
259
  isCpuProfileRecording,
249
260
  startCpuProfile,
250
261
  stopCpuProfile
251
- } from "./chunk-PJOBIWUG.js";
262
+ } from "./chunk-WQYWK4DG.js";
252
263
  import {
253
264
  init_esbuild_shims
254
265
  } from "./chunk-5O2XNYP6.js";
@@ -396,7 +407,9 @@ var isBtwCommand = /* @__PURE__ */ __name((query) => {
396
407
  return trimmed.length > 0 && BTW_COMMAND_RE.test(trimmed);
397
408
  }, "isBtwCommand");
398
409
  var debugLogger = createDebugLogger("COMMAND_UTILS");
410
+ var formatCommandFailure = /* @__PURE__ */ __name((error, command) => error instanceof Error && error.code === "ENOENT" ? `${command} not found` : error instanceof Error ? error.message : String(error), "formatCommandFailure");
399
411
  var copyToClipboard = /* @__PURE__ */ __name(async (text) => {
412
+ let wlCopyError;
400
413
  const run = /* @__PURE__ */ __name((cmd, args, options) => new Promise((resolve4, reject) => {
401
414
  const child = options ? spawn(cmd, args, options) : spawn(cmd, args);
402
415
  let stderr = "";
@@ -428,6 +441,20 @@ var copyToClipboard = /* @__PURE__ */ __name(async (text) => {
428
441
  case "darwin":
429
442
  return run("pbcopy", []);
430
443
  case "linux":
444
+ if (isWaylandSession()) {
445
+ try {
446
+ await run("wl-copy", ["-t", "text/plain"], {
447
+ stdio: ["pipe", "inherit", "ignore"]
448
+ });
449
+ return;
450
+ } catch (error) {
451
+ wlCopyError = error;
452
+ debugLogger.debug(
453
+ "wl-copy failed; falling back to other clipboard methods:",
454
+ error
455
+ );
456
+ }
457
+ }
431
458
  try {
432
459
  await run("xclip", ["-selection", "clipboard"], linuxOptions);
433
460
  } catch (primaryError) {
@@ -436,25 +463,20 @@ var copyToClipboard = /* @__PURE__ */ __name(async (text) => {
436
463
  } catch (fallbackError) {
437
464
  const xclipNotFound = primaryError instanceof Error && primaryError.code === "ENOENT";
438
465
  const xselNotFound = fallbackError instanceof Error && fallbackError.code === "ENOENT";
466
+ const wlCopyFailure = wlCopyError === void 0 ? "" : `wl-copy failed ("${formatCommandFailure(wlCopyError, "wl-copy")}"); `;
439
467
  if (xclipNotFound && xselNotFound) {
440
468
  if (!writeOsc52(text)) {
441
469
  throw new Error(
442
- "Clipboard unavailable: xclip/xsel not found and OSC 52 requires a TTY. Try running inside a terminal emulator."
470
+ `Clipboard unavailable: ${wlCopyFailure}xclip/xsel not found and OSC 52 requires a TTY. Try running inside a terminal emulator.`
443
471
  );
444
472
  }
445
473
  return;
446
474
  }
447
- let primaryMsg = primaryError instanceof Error ? primaryError.message : String(primaryError);
448
- if (xclipNotFound) {
449
- primaryMsg = `xclip not found`;
450
- }
451
- let fallbackMsg = fallbackError instanceof Error ? fallbackError.message : String(fallbackError);
452
- if (xselNotFound) {
453
- fallbackMsg = `xsel not found`;
454
- }
475
+ const primaryMsg = formatCommandFailure(primaryError, "xclip");
476
+ const fallbackMsg = formatCommandFailure(fallbackError, "xsel");
455
477
  if (writeOsc52(text)) return;
456
478
  throw new Error(
457
- `Clipboard unavailable: xclip/xsel failed ("${primaryMsg}", "${fallbackMsg}") and OSC 52 requires a TTY. Try running inside a terminal emulator.`
479
+ `Clipboard unavailable: ${wlCopyFailure}xclip/xsel failed ("${primaryMsg}", "${fallbackMsg}") and OSC 52 requires a TTY. Try running inside a terminal emulator.`
458
480
  );
459
481
  }
460
482
  }
@@ -1199,12 +1221,10 @@ __name(detailLines, "detailLines");
1199
1221
  var workflowsCommand = {
1200
1222
  name: "workflows",
1201
1223
  get description() {
1202
- return t(
1203
- "List active and completed workflow runs (text dump \u2014 interactive dialog opens via the footer pill)"
1204
- );
1224
+ return t("List workflow runs or cooperatively pause/resume a live run");
1205
1225
  },
1206
1226
  get argumentHint() {
1207
- return t("[runId]");
1227
+ return t("[runId | p <runId>]");
1208
1228
  },
1209
1229
  kind: "built-in" /* BUILT_IN */,
1210
1230
  // Same triple-mode coverage as `/tasks`: the dialog is richer in
@@ -1223,6 +1243,90 @@ var workflowsCommand = {
1223
1243
  const registry = config.getWorkflowRunRegistry();
1224
1244
  const allEntries = registry.list();
1225
1245
  const trimmedArgs = (args ?? "").trim();
1246
+ const tokens = trimmedArgs.split(/\s+/);
1247
+ if (tokens[0] === "p") {
1248
+ if (context.executionMode !== "interactive") {
1249
+ return {
1250
+ type: "message",
1251
+ messageType: "error",
1252
+ content: "Workflow pause controls are available only in the interactive TUI."
1253
+ };
1254
+ }
1255
+ if (tokens.length !== 2 || !tokens[1]) {
1256
+ return {
1257
+ type: "message",
1258
+ messageType: "error",
1259
+ content: "Usage: /workflows p <runId>"
1260
+ };
1261
+ }
1262
+ const runId = tokens[1];
1263
+ let target = registry.get(runId);
1264
+ let fromSnapshot = false;
1265
+ if (!target) {
1266
+ const snapshot = (await listWorkflowSnapshots(config)).find(
1267
+ (s) => s.runId === runId
1268
+ );
1269
+ if (snapshot) {
1270
+ target = snapshotToTask(snapshot);
1271
+ fromSnapshot = true;
1272
+ }
1273
+ }
1274
+ if (!target) {
1275
+ return {
1276
+ type: "message",
1277
+ messageType: "error",
1278
+ content: `Unknown live workflow runId: ${runId}`
1279
+ };
1280
+ }
1281
+ if (isTerminalWorkflowStatus(target.status)) {
1282
+ return {
1283
+ type: "message",
1284
+ messageType: "error",
1285
+ content: `Workflow ${runId} is ${target.status} and cannot be paused or resumed.`
1286
+ };
1287
+ }
1288
+ if (!fromSnapshot && !target.isBackgrounded) {
1289
+ return {
1290
+ type: "message",
1291
+ messageType: "error",
1292
+ content: "Foreground workflow runs cannot be paused or resumed; only background runs support cooperative pause."
1293
+ };
1294
+ }
1295
+ if (target.status === "pausing") {
1296
+ return {
1297
+ type: "message",
1298
+ messageType: "warning",
1299
+ content: `Workflow ${runId} is still pausing; wait until it reaches paused before resuming.`
1300
+ };
1301
+ }
1302
+ if (target.status === "running") {
1303
+ return registry.pause(runId) ? {
1304
+ type: "message",
1305
+ messageType: "info",
1306
+ content: `Cooperative pause requested for workflow ${runId}.`
1307
+ } : {
1308
+ type: "message",
1309
+ messageType: "error",
1310
+ content: `Workflow ${runId} could not be paused because its state changed.`
1311
+ };
1312
+ }
1313
+ if (target.status === "paused") {
1314
+ return registry.resume(runId) ? {
1315
+ type: "message",
1316
+ messageType: "info",
1317
+ content: `Resume requested for workflow ${runId}.`
1318
+ } : {
1319
+ type: "message",
1320
+ messageType: "error",
1321
+ content: `Workflow ${runId} could not be resumed because its state changed.`
1322
+ };
1323
+ }
1324
+ return {
1325
+ type: "message",
1326
+ messageType: "error",
1327
+ content: `Workflow ${runId} is ${target.status} and cannot be paused or resumed.`
1328
+ };
1329
+ }
1226
1330
  if (trimmedArgs.length > 0) {
1227
1331
  let target = registry.get(trimmedArgs);
1228
1332
  if (!target) {
@@ -1255,27 +1359,27 @@ var workflowsCommand = {
1255
1359
  };
1256
1360
  }
1257
1361
  const now = Date.now();
1258
- const running = allEntries.filter((e) => e.status === "running").sort((a, b) => a.startTime - b.startTime);
1362
+ const active = allEntries.filter((e) => isActiveWorkflowStatus(e.status)).sort((a, b) => a.startTime - b.startTime);
1259
1363
  const terminal = [
1260
- ...allEntries.filter((e) => e.status !== "running"),
1364
+ ...allEntries.filter((e) => !isActiveWorkflowStatus(e.status)),
1261
1365
  ...snapshotTasks
1262
1366
  ].sort((a, b) => (b.endTime ?? 0) - (a.endTime ?? 0));
1263
1367
  const lines = [];
1264
1368
  if (context.executionMode === "interactive") {
1265
1369
  lines.push(
1266
1370
  t(
1267
- "Tip: use `/workflows <runId>` for the per-run detail view (name, description, phase tree, recent logs)."
1371
+ "Tip: use `/workflows p <runId>` or Background tasks + p to cooperatively pause/resume; use `/workflows <runId>` for details."
1268
1372
  ),
1269
1373
  ""
1270
1374
  );
1271
1375
  }
1272
1376
  lines.push(
1273
- `Workflow runs (${running.length + terminal.length} total \xB7 ${running.length} running)`,
1377
+ `Workflow runs (${active.length + terminal.length} total \xB7 ${active.length} active)`,
1274
1378
  ""
1275
1379
  );
1276
- if (running.length > 0) {
1380
+ if (active.length > 0) {
1277
1381
  lines.push("Active");
1278
- for (const entry of running) lines.push(rowLine(entry, now));
1382
+ for (const entry of active) lines.push(rowLine(entry, now));
1279
1383
  lines.push("");
1280
1384
  }
1281
1385
  if (terminal.length > 0) {
@@ -1945,7 +2049,7 @@ var approvalModeCommand = {
1945
2049
  };
1946
2050
  }
1947
2051
  }
1948
- const autoModeNotices = mode === "auto" /* AUTO */ && priorMode !== "auto" /* AUTO */ && config ? await import("./useAutoAcceptIndicator-DBJ7Y5AF.js") : void 0;
2052
+ const autoModeNotices = mode === "auto" /* AUTO */ && priorMode !== "auto" /* AUTO */ && config ? await import("./useAutoAcceptIndicator-JDMI627A.js") : void 0;
1949
2053
  if (config) {
1950
2054
  try {
1951
2055
  config.setApprovalMode(mode);
@@ -2708,6 +2812,7 @@ function resetBackgroundStateForSessionSwitch(config) {
2708
2812
  config.getBackgroundTaskRegistry().reset();
2709
2813
  config.getMonitorRegistry().reset();
2710
2814
  config.getBackgroundShellRegistry().reset();
2815
+ config.getWorkflowRunRegistry().abortAll();
2711
2816
  config.getWorkflowRunRegistry().reset();
2712
2817
  }
2713
2818
  __name(resetBackgroundStateForSessionSwitch, "resetBackgroundStateForSessionSwitch");
@@ -6682,7 +6787,7 @@ var expandNowCommand = {
6682
6787
  content: t("History is already expanded in this session.")
6683
6788
  };
6684
6789
  }
6685
- const { expandCollapsedHistory } = await import("./resumeHistoryUtils-TXCOFFMQ.js");
6790
+ const { expandCollapsedHistory } = await import("./resumeHistoryUtils-YUTPLHUH.js");
6686
6791
  const updated = expandCollapsedHistory(history);
6687
6792
  loadHistory(updated);
6688
6793
  refreshStatic();
@@ -9524,7 +9629,8 @@ var rememberCommand = {
9524
9629
  }
9525
9630
  return {
9526
9631
  type: "submit_prompt",
9527
- content: buildBareRememberPrompt(fact)
9632
+ content: buildBareRememberPrompt(fact),
9633
+ refreshContextFilesOnWrite: true
9528
9634
  };
9529
9635
  }, "action")
9530
9636
  };
@@ -12462,7 +12568,10 @@ var DataProcessor = class {
12462
12568
  `;
12463
12569
  for (const record of records) {
12464
12570
  if (record.type === "user") {
12465
- const text = record.message?.parts?.map((p) => "text" in p ? p.text : "").join("") || "";
12571
+ const projection = projectUserTranscriptForDisplay(record);
12572
+ const text = projection.displayText ?? projection.parts.map(
12573
+ (part) => typeof part === "object" && part !== null && "text" in part && typeof part.text === "string" ? part.text : ""
12574
+ ).join("");
12466
12575
  output += `[User]: ${text}
12467
12576
  `;
12468
12577
  } else if (record.type === "assistant") {
@@ -13914,10 +14023,10 @@ var updateCommand = {
13914
14023
  { performStandaloneUpdate },
13915
14024
  installationInfo
13916
14025
  ] = await Promise.all([
13917
- import("./updateCheck-QRZ3DVT5.js"),
13918
- import("./processUtils-5SV4MX3Q.js"),
13919
- import("./standalone-update-7CXPGAQ4.js"),
13920
- import("./installationInfo-J6QDHNTK.js")
14026
+ import("./updateCheck-EZMBTEIR.js"),
14027
+ import("./processUtils-V5VSDIKS.js"),
14028
+ import("./standalone-update-DJN2R3YW.js"),
14029
+ import("./installationInfo-BWFHT7WU.js")
13921
14030
  ]);
13922
14031
  const { formatUpdateInstructions, getInstallationInfo: getInstallationInfo2 } = installationInfo;
13923
14032
  const settings = context.services.settings;
@@ -14507,7 +14616,7 @@ var ShellProcessor = class {
14507
14616
  } else if (executionResult.exitCode !== 0 && executionResult.exitCode !== null) {
14508
14617
  processedPrompt += `
14509
14618
  [Shell command '${injection.resolvedCommand}' exited with code ${executionResult.exitCode}]`;
14510
- } else if (executionResult.signal !== null) {
14619
+ } else if (isSignalTermination(executionResult.signal)) {
14511
14620
  processedPrompt += `
14512
14621
  [Shell command '${injection.resolvedCommand}' terminated by signal ${executionResult.signal}]`;
14513
14622
  }
@@ -15457,6 +15566,7 @@ function handleCommandResult(result, outputHistoryItems) {
15457
15566
  type: "submit_prompt",
15458
15567
  content: result.content,
15459
15568
  ...result.modelOverride ? { modelOverride: result.modelOverride } : {},
15569
+ ...result.refreshContextFilesOnWrite ? { refreshContextFilesOnWrite: true } : {},
15460
15570
  ...outputHistoryItems?.length ? { outputHistoryItems } : {}
15461
15571
  };
15462
15572
  case "message":
@@ -15666,6 +15776,7 @@ var handleSlashCommand = /* @__PURE__ */ __name(async (rawQuery, abortController
15666
15776
  if (stackedResult.skills.length >= 2) {
15667
15777
  const combinedContent = [];
15668
15778
  let firstModelOverride;
15779
+ let refreshContextFilesOnWrite = false;
15669
15780
  const onCompleteCallbacks = [];
15670
15781
  const successfulSkillCommands = [];
15671
15782
  for (const skill of stackedResult.skills) {
@@ -15683,6 +15794,9 @@ var handleSlashCommand = /* @__PURE__ */ __name(async (rawQuery, abortController
15683
15794
  if (skillResult?.type === "submit_prompt") {
15684
15795
  combinedContent.push(skillResult.content);
15685
15796
  firstModelOverride ??= skillResult.modelOverride;
15797
+ refreshContextFilesOnWrite ||= Boolean(
15798
+ skillResult.refreshContextFilesOnWrite
15799
+ );
15686
15800
  if (skillResult.onComplete) {
15687
15801
  onCompleteCallbacks.push(skillResult.onComplete);
15688
15802
  }
@@ -15717,6 +15831,7 @@ var handleSlashCommand = /* @__PURE__ */ __name(async (rawQuery, abortController
15717
15831
  type: "submit_prompt",
15718
15832
  content: hookResult.content,
15719
15833
  ...firstModelOverride ? { modelOverride: firstModelOverride } : {},
15834
+ ...refreshContextFilesOnWrite ? { refreshContextFilesOnWrite: true } : {},
15720
15835
  ...onCompleteCallbacks.length ? {
15721
15836
  onComplete: /* @__PURE__ */ __name(async () => {
15722
15837
  for (const cb of onCompleteCallbacks) await cb();
@@ -8,10 +8,10 @@ import {
8
8
  } from "./chunk-3Z43GZUQ.js";
9
9
  import {
10
10
  t
11
- } from "./chunk-DBOFL3LQ.js";
11
+ } from "./chunk-BL65MO72.js";
12
12
  import {
13
13
  So
14
- } from "./chunk-Y7E5LNLO.js";
14
+ } from "./chunk-47ZUMGGY.js";
15
15
  import {
16
16
  createDebugLogger
17
17
  } from "./chunk-OIVKILPI.js";