@qwen-code/qwen-code 0.19.9 → 0.19.10-nightly.20260716.506ce0a1a

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 (323) hide show
  1. package/bundled/qc-helper/docs/configuration/settings.md +14 -6
  2. package/bundled/qc-helper/docs/features/approval-mode.md +2 -2
  3. package/bundled/qc-helper/docs/features/channels/dingtalk.md +33 -0
  4. package/bundled/qc-helper/docs/features/channels/overview.md +64 -20
  5. package/bundled/qc-helper/docs/features/channels/wecom.md +8 -7
  6. package/bundled/qc-helper/docs/features/code-review.md +88 -44
  7. package/bundled/qc-helper/docs/features/commands.md +6 -6
  8. package/bundled/qc-helper/docs/features/hooks.md +29 -0
  9. package/bundled/qc-helper/docs/features/sandbox.md +2 -0
  10. package/bundled/qc-helper/docs/features/sub-agents.md +21 -0
  11. package/bundled/qc-helper/docs/qwen-serve.md +49 -20
  12. package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +1 -1
  13. package/bundled/review/DESIGN.md +219 -33
  14. package/bundled/review/SKILL.md +429 -382
  15. package/chunks/{MaxSizedBox-6HYJ3ZPJ.js → MaxSizedBox-WOC3YDWA.js} +31 -32
  16. package/chunks/{StandaloneSessionPicker-WS4GXYOG.js → StandaloneSessionPicker-H5HZCAFD.js} +49 -48
  17. package/chunks/{acpAgent-5FWSOZL5.js → acpAgent-55YDJDNM.js} +922 -550
  18. package/chunks/{agent-HOLHB3RT.js → agent-H6VE5W3L.js} +26 -27
  19. package/chunks/{agent-headless-SXL6H56A.js → agent-headless-T4XJOCRU.js} +26 -27
  20. package/chunks/{anthropicContentGenerator-L73TO3DB.js → anthropicContentGenerator-HBRXJSP4.js} +78 -16
  21. package/chunks/{artifact-tool-U7IRTLIV.js → artifact-tool-MIZLXBLF.js} +2 -2
  22. package/chunks/{askUserQuestion-2DLUUZZG.js → askUserQuestion-XMJVPNWM.js} +2 -2
  23. package/chunks/{bridge-BCJQ7BBB.js → bridge-FTB6ZP3R.js} +31 -34
  24. package/chunks/{ca-UJ6HC4H2.js → ca-CODEN7TD.js} +9 -1
  25. package/chunks/channel-worker-group-K7QKH6IG.js +13 -0
  26. package/chunks/channel-worker-manager-CUDPU4CN.js +418 -0
  27. package/chunks/channel-worker-supervisor-4XTO2ZD3.js +20 -0
  28. package/chunks/{chunk-LXNEJD34.js → chunk-2FO5GFKZ.js} +1 -1
  29. package/chunks/{chunk-VA4KQY6V.js → chunk-2JNR4VP2.js} +3 -3
  30. package/chunks/{chunk-L36P3NBD.js → chunk-2W3OOD4W.js} +2 -0
  31. package/chunks/{chunk-7R3CZA3Q.js → chunk-2Z5UX4KI.js} +1 -1
  32. package/chunks/{chunk-CUMMSHH6.js → chunk-3DWIFU7L.js} +1 -1
  33. package/chunks/chunk-3MX7D6QN.js +516 -0
  34. package/chunks/{chunk-SJHDYNHF.js → chunk-4BJVSIS3.js} +3 -3
  35. package/chunks/{chunk-TO6QE22P.js → chunk-5CNYZ7TN.js} +26 -22
  36. package/chunks/{chunk-N3EMS75V.js → chunk-5DEJ4T6C.js} +1333 -1232
  37. package/chunks/chunk-5HBA2Z7V.js +28 -0
  38. package/chunks/{chunk-ZJE7NSL3.js → chunk-5M6IDOMF.js} +34 -97
  39. package/chunks/{chunk-SCGXUJBT.js → chunk-6LI3L22E.js} +3 -3
  40. package/chunks/{chunk-K434OPES.js → chunk-6WPJRYLZ.js} +3 -3
  41. package/chunks/{chunk-YAUFFXDS.js → chunk-7GM2RWCR.js} +12 -11
  42. package/chunks/{chunk-OQ4DRIOA.js → chunk-7HWE2W74.js} +2 -2
  43. package/chunks/{chunk-J4TSQ5EQ.js → chunk-7NFB7LBQ.js} +8 -1
  44. package/chunks/{chunk-MC23XKFE.js → chunk-A2HWMJVO.js} +37 -3
  45. package/chunks/{chunk-3G7CIHVV.js → chunk-ABNYOMDG.js} +4 -4
  46. package/chunks/{chunk-3AHXV67U.js → chunk-AGZLXLBY.js} +1 -1
  47. package/chunks/{chunk-RDJSGHZE.js → chunk-ALGGS7UH.js} +1 -38
  48. package/chunks/{chunk-Q4YQW46J.js → chunk-AMRZVQUY.js} +43 -40
  49. package/chunks/{chunk-W3JHSWRP.js → chunk-AN6C2U46.js} +4 -4
  50. package/chunks/{chunk-GWHYEOV2.js → chunk-ARKANCNX.js} +2 -1
  51. package/chunks/{chunk-5SFOMFG4.js → chunk-AVEOWVOM.js} +36 -2
  52. package/chunks/{chunk-34MW4KTI.js → chunk-BA5JGE5F.js} +2 -2
  53. package/chunks/{chunk-5HOMWMCL.js → chunk-BSJAQUFD.js} +5492 -1336
  54. package/chunks/{chunk-L6P4KPHR.js → chunk-BWJKL5DB.js} +58 -38
  55. package/chunks/{chunk-PVZM22CK.js → chunk-C32JFRGV.js} +5 -5
  56. package/chunks/{chunk-AKIVHSJR.js → chunk-CZIHPO7L.js} +163 -782
  57. package/chunks/chunk-DL7RCO6V.js +493 -0
  58. package/chunks/{chunk-KKNMOEZH.js → chunk-E2UVIFI2.js} +185 -398
  59. package/chunks/{chunk-5VXNZWGF.js → chunk-ENUQSKEY.js} +1 -1
  60. package/chunks/{chunk-PDZ7MBDG.js → chunk-EWILX3BM.js} +27 -6
  61. package/chunks/{chunk-BMGVRZN4.js → chunk-EZWX232B.js} +1 -1
  62. package/chunks/{chunk-4GORAUCN.js → chunk-F333XEAU.js} +1 -1
  63. package/chunks/{chunk-YLV3XXFB.js → chunk-FBU7WRZI.js} +17 -1
  64. package/chunks/chunk-FEOZBUMT.js +77 -0
  65. package/chunks/{chunk-5U27BZ72.js → chunk-FKEGVMPX.js} +269 -83
  66. package/chunks/chunk-FNX3LGAK.js +34 -0
  67. package/chunks/{chunk-LK7KUE55.js → chunk-FSA7ERJ2.js} +1 -1
  68. package/chunks/{chunk-PODM4SZ4.js → chunk-G3BIBPI7.js} +5 -5
  69. package/chunks/{chunk-A3XKDTSH.js → chunk-GA65O2TB.js} +4 -4
  70. package/chunks/{chunk-3BTRNWWD.js → chunk-GOXKNSDZ.js} +1 -64
  71. package/chunks/{channel-worker-supervisor-WSOAAYUO.js → chunk-GXGIM7QP.js} +67 -35
  72. package/chunks/{chunk-6PESIEKJ.js → chunk-GXUWGPYX.js} +68 -6
  73. package/chunks/chunk-GYTKQYDB.js +23 -0
  74. package/chunks/{chunk-GZRTYZ2R.js → chunk-H3XMJV7T.js} +218 -1
  75. package/chunks/{chunk-WQUQVGTF.js → chunk-HGRXW4HQ.js} +467 -106
  76. package/chunks/{chunk-YVEDCAUE.js → chunk-HGT6JR3U.js} +19 -0
  77. package/chunks/{chunk-ECNYL4AA.js → chunk-HUEWOHKV.js} +1 -1
  78. package/chunks/chunk-IDS7MSUP.js +74 -0
  79. package/chunks/{chunk-KHUQZZJ6.js → chunk-IHDRJLLR.js} +382 -36
  80. package/chunks/{chunk-CLFKOZEK.js → chunk-J4SEAF4X.js} +114 -4
  81. package/chunks/{chunk-B5ORX3FG.js → chunk-JGUT3LWZ.js} +6 -1
  82. package/chunks/{chunk-P67PFTUT.js → chunk-KEYEYCHZ.js} +4 -4
  83. package/chunks/{chunk-ORBGV7NJ.js → chunk-KKRTYONM.js} +6 -4
  84. package/chunks/{chunk-7PU4FYLG.js → chunk-KOXFAG6P.js} +4 -18
  85. package/chunks/{chunk-EGYZ275M.js → chunk-KWLVWNF5.js} +55 -7
  86. package/chunks/{chunk-XLA62MYB.js → chunk-KXECVZPD.js} +2 -2
  87. package/chunks/{chunk-IAVB3HM3.js → chunk-L4Y55KIS.js} +33 -1
  88. package/chunks/{chunk-4QLQE5WJ.js → chunk-L5U3ELZX.js} +1 -1
  89. package/chunks/{chunk-4ZVWQHEQ.js → chunk-LQIDP6K5.js} +1 -1
  90. package/chunks/{chunk-DC5Z3DU6.js → chunk-LXLTBIDP.js} +43 -6
  91. package/chunks/chunk-LXXMOYPL.js +22 -0
  92. package/chunks/{chunk-Q6I5QHMH.js → chunk-MFNKBXYH.js} +1 -1
  93. package/chunks/chunk-MR3PXB6E.js +48 -0
  94. package/chunks/{chunk-JZETEN3Z.js → chunk-N45S36AH.js} +3 -3
  95. package/chunks/{chunk-GWLSNBG4.js → chunk-NA3IG6XG.js} +748 -27
  96. package/chunks/{chunk-D5SKC4YG.js → chunk-O3M25JXE.js} +213 -29
  97. package/chunks/{chunk-EAXLGSFP.js → chunk-O6XGHDS5.js} +11 -11
  98. package/chunks/{chunk-WL4L7EZH.js → chunk-OA4JVLSA.js} +27 -1
  99. package/chunks/{chunk-X4NKFGFJ.js → chunk-OJAMDVF5.js} +0 -15
  100. package/chunks/{chunk-BZIFY5TF.js → chunk-OKAIGAYW.js} +3 -3
  101. package/chunks/{chunk-CNEIYWSA.js → chunk-OVIV236K.js} +5 -5
  102. package/chunks/{chunk-3SJSQXNS.js → chunk-PEJWA3QQ.js} +12 -8
  103. package/chunks/{chunk-E2IY465S.js → chunk-PWNOAWXB.js} +59 -12
  104. package/chunks/{chunk-B4G2WOFA.js → chunk-Q5MKHNIR.js} +28 -5
  105. package/chunks/{chunk-MXL5UP4X.js → chunk-Q6TUALBE.js} +1 -1
  106. package/chunks/{chunk-QYMQSECS.js → chunk-QAW7PIHT.js} +2 -2
  107. package/chunks/{chunk-HKMAENAO.js → chunk-QDTGDM2T.js} +14 -9
  108. package/chunks/{chunk-LUODI7WD.js → chunk-RCEEXIOO.js} +6 -4
  109. package/chunks/{chunk-W2UIXQDL.js → chunk-RTV5TUYB.js} +12 -4
  110. package/chunks/chunk-RW7DUKFO.js +91 -0
  111. package/chunks/{chunk-NVYTCB5Z.js → chunk-SA6QVLWI.js} +17325 -16259
  112. package/chunks/chunk-SJSI7PXU.js +59 -0
  113. package/chunks/{chunk-HVY356M2.js → chunk-SMGBWLNU.js} +3 -3
  114. package/chunks/{chunk-CEA3E3JB.js → chunk-SPJQO2CE.js} +2 -2
  115. package/chunks/{chunk-CC2ITGCF.js → chunk-STZQCNN3.js} +49 -6
  116. package/chunks/{chunk-HPDUL5MF.js → chunk-T2ZDAER2.js} +1 -1
  117. package/chunks/{chunk-XUOOWUZS.js → chunk-T3TQ3ACP.js} +1 -1
  118. package/chunks/{chunk-4C5BQ2D2.js → chunk-TIKDHS6V.js} +100 -17
  119. package/chunks/chunk-TV6K2FB4.js +224 -0
  120. package/chunks/{chunk-5XUCZNSY.js → chunk-TYLOFD2U.js} +1 -1
  121. package/chunks/{chunk-D2GFWEXB.js → chunk-UCUUH2JV.js} +6 -6
  122. package/chunks/{chunk-BAPGSC7U.js → chunk-UZP7K33Y.js} +23 -9
  123. package/chunks/{chunk-77XJ3SWN.js → chunk-VDAR6UO2.js} +8 -6
  124. package/chunks/{chunk-XYQSMABS.js → chunk-VKLVGA2D.js} +4 -4
  125. package/chunks/{chunk-JSG7ZSBC.js → chunk-VRR65QYW.js} +251 -3
  126. package/chunks/{chunk-U2NNEY4R.js → chunk-VT5AWJN4.js} +1 -1
  127. package/chunks/{chunk-ZLXQN2QS.js → chunk-WIEO4CWB.js} +1 -1
  128. package/chunks/{chunk-X6TJ3YZV.js → chunk-WKEO3GLZ.js} +160 -60
  129. package/chunks/{chunk-J3JA76CF.js → chunk-WTNZ6DXB.js} +1 -1
  130. package/chunks/{chunk-VWPVHAMO.js → chunk-XIWQ5QST.js} +8 -1
  131. package/chunks/{chunk-TDEXZKMT.js → chunk-Y66VOBRP.js} +2 -2
  132. package/chunks/{chunk-3VAGG5T5.js → chunk-YYBZUIPL.js} +1015 -100
  133. package/chunks/{chunk-CCDMCZPP.js → chunk-YZ3SBNP7.js} +1 -1
  134. package/chunks/{chunk-ATAKVRIF.js → chunk-Z3XA2TNG.js} +7 -7
  135. package/chunks/{chunk-EMDMPBJ4.js → chunk-Z7SVC7PJ.js} +10 -3
  136. package/chunks/{chunk-AURZZYMD.js → chunk-ZIVSSTUG.js} +4 -4
  137. package/chunks/{chunk-UOZWKTQG.js → chunk-ZPAHLFZU.js} +2 -2
  138. package/chunks/{chunk-34Z3U5RQ.js → chunk-ZQIYGQCG.js} +765 -168
  139. package/chunks/{computer-use-HM37RX6A.js → computer-use-NADT7ULB.js} +26 -27
  140. package/chunks/{config-utils-NV2SVGPB.js → config-utils-IQQT3GCI.js} +3 -2
  141. package/chunks/{contextCommand-OF5SFGH2.js → contextCommand-U7NEJYJ7.js} +28 -29
  142. package/chunks/{create-sub-session-INX7TXJI.js → create-sub-session-EAB2U5XW.js} +2 -2
  143. package/chunks/{create-sub-session-KPRT7ECJ.js → create-sub-session-SUN33INC.js} +26 -27
  144. package/chunks/{cron-create-AMBKGZX6.js → cron-create-GMVKSXZT.js} +4 -4
  145. package/chunks/{cron-delete-LRU4OJYG.js → cron-delete-VDZKUAVK.js} +4 -4
  146. package/chunks/{cron-list-WVP2JXER.js → cron-list-UG7C7RAR.js} +4 -4
  147. package/chunks/{daemon-ARHTSTXP.js → daemon-SJXEKP3H.js} +773 -126
  148. package/chunks/daemon-status-provider-WIIYLGZJ.js +74 -0
  149. package/chunks/{de-EBJN3OVN.js → de-NOXPCSYN.js} +9 -1
  150. package/chunks/{dist-XKU3ABM5.js → dist-4WCQEZIN.js} +4 -51
  151. package/chunks/{dist-QYCAEZIT.js → dist-DOPL5LSQ.js} +5 -1
  152. package/chunks/{dist-WKPOYU7O.js → dist-GXJVCOS7.js} +1 -1
  153. package/chunks/{dist-R7LN5AZE.js → dist-PX2ERZ6I.js} +2 -2
  154. package/chunks/{dist-PNVLTKTL.js → dist-V2YVLYOW.js} +215 -33
  155. package/chunks/{dist-VHV4EVHG.js → dist-VYWUKURL.js} +1 -1
  156. package/chunks/{earlyInputCapture-3VTHRC4C.js → earlyInputCapture-6FRM6UMU.js} +27 -28
  157. package/chunks/{edit-VNI4NJ73.js → edit-7GOIQTCZ.js} +27 -28
  158. package/chunks/{en-5A6LA7RK.js → en-JFVULHTB.js} +11 -1
  159. package/chunks/{enter-worktree-IYYBKPZT.js → enter-worktree-476E6WIK.js} +26 -27
  160. package/chunks/{enterPlanMode-GMC5FD5A.js → enterPlanMode-IRJM6W3C.js} +42 -28
  161. package/chunks/{environment-5HSSRMJ7.js → environment-ROMULS2X.js} +30 -30
  162. package/chunks/{errors-HMFCJJ7P.js → errors-OUIWPUDY.js} +28 -29
  163. package/chunks/{exit-worktree-6BHCMP5G.js → exit-worktree-PPSFK753.js} +26 -27
  164. package/chunks/{exitPlanMode-CJW7G74W.js → exitPlanMode-YKQMD4D7.js} +26 -27
  165. package/chunks/{fast-path-FRDMDVHG.js → fast-path-CNK2HHKH.js} +3 -3
  166. package/chunks/{fast-path-settings-5QZE64HR.js → fast-path-settings-DAOVFADC.js} +6 -4
  167. package/chunks/{fr-YXRABLYZ.js → fr-HVFNU42H.js} +9 -1
  168. package/chunks/{gemini-QYSEGHAX.js → gemini-WQNFT6TR.js} +216 -90
  169. package/chunks/{geminiContentGenerator-J7YNZDYP.js → geminiContentGenerator-4QJH2JDP.js} +4 -4
  170. package/chunks/{glob-BRCSGFOT.js → glob-36TVLBWW.js} +28 -28
  171. package/chunks/{grep-EE2DUOSY.js → grep-QTYLNO2M.js} +26 -27
  172. package/chunks/{handleAutoUpdate-5NWTLR67.js → handleAutoUpdate-36FQFODK.js} +30 -31
  173. package/chunks/{i18n-BASPENNQ.js → i18n-JUGYPVSP.js} +27 -28
  174. package/chunks/initializer-OBBJUS25.js +72 -0
  175. package/chunks/{installationInfo-W6V4DT7W.js → installationInfo-MCKTPX64.js} +27 -28
  176. package/chunks/{ja-7VQOANVG.js → ja-PY5AF544.js} +10 -2
  177. package/chunks/{keychain-token-storage-VKUBNCP4.js → keychain-token-storage-AU22CQI6.js} +2 -2
  178. package/chunks/list-VW5QY4VJ.js +75 -0
  179. package/chunks/loadedSettingsAdapter-IELOOXG6.js +69 -0
  180. package/chunks/{loop-wakeup-WX7BLWWP.js → loop-wakeup-QXWZSCYM.js} +5 -5
  181. package/chunks/{ls-ZB2BDP6T.js → ls-2OUTG3IZ.js} +4 -4
  182. package/chunks/{lsp-V5DN4YUJ.js → lsp-4VMNXZW6.js} +2 -2
  183. package/chunks/mcp-Q3EC37ZS.js +69 -0
  184. package/chunks/{monitor-X5Z3H4FY.js → monitor-DCZ27AFR.js} +26 -27
  185. package/chunks/nonInteractiveCli-KXD7PFO4.js +128 -0
  186. package/chunks/{notebook-edit-TRM2QIJK.js → notebook-edit-YU4XF5LI.js} +27 -28
  187. package/chunks/{openaiContentGenerator-AAYONPMF.js → openaiContentGenerator-KL5WER2D.js} +13 -13
  188. package/chunks/{pidfile-D4I4FTVA.js → pidfile-WBOD7EJV.js} +27 -28
  189. package/chunks/processUtils-AOV4R34M.js +29 -0
  190. package/chunks/{pt-2C6YCSHL.js → pt-A3PRQXMU.js} +9 -1
  191. package/chunks/{qwenContentGenerator-K3HZ2H76.js → qwenContentGenerator-YIGBHYE3.js} +28 -29
  192. package/chunks/{qwenOAuth2-PJQ27GSO.js → qwenOAuth2-LEYOU7RU.js} +5 -5
  193. package/chunks/{read-file-7SZSIZOL.js → read-file-WVL4Y76X.js} +9 -9
  194. package/chunks/{read-mcp-resource-SM5DA4RG.js → read-mcp-resource-JUFHCKSC.js} +2 -2
  195. package/chunks/{record-artifact-4XKZX3UW.js → record-artifact-DWSMBXYY.js} +2 -2
  196. package/chunks/{ripGrep-YNPFVCZP.js → ripGrep-6GSWJERP.js} +26 -27
  197. package/chunks/{ru-6BBHVZZV.js → ru-IBCWUTOC.js} +9 -1
  198. package/chunks/{run-qwen-serve-DMWV5N6L.js → run-qwen-serve-QYUQMEDT.js} +1233 -371
  199. package/chunks/{runtime-57WWRVHN.js → runtime-K2YZCNB3.js} +42 -38
  200. package/chunks/{scheduler-YBLGWSIL.js → scheduler-EQCSN7QV.js} +26 -27
  201. package/chunks/{send-message-F36YD6KQ.js → send-message-JZ752NWD.js} +3 -3
  202. package/chunks/{serve-R63NK3CV.js → serve-DX5UGZD4.js} +36 -35
  203. package/chunks/{server-Z22GCAXP.js → server-T6HJH3DR.js} +5869 -1398
  204. package/chunks/{session-HKAAI7BN.js → session-SNU6ACY6.js} +299 -100
  205. package/chunks/{settings-3EYN66GK.js → settings-AKHZZNEL.js} +34 -33
  206. package/chunks/{shell-6YXINTWJ.js → shell-EY74IEZK.js} +28 -27
  207. package/chunks/{skill-OO57P4X6.js → skill-DPU62O3H.js} +11 -11
  208. package/chunks/{spawnChannel-JD7G4VU6.js → spawnChannel-RQZRWJ2V.js} +28 -30
  209. package/chunks/{src-G5UPLZSZ.js → src-7FITDSVC.js} +164 -52
  210. package/chunks/{standalone-update-OB7F4JPZ.js → standalone-update-XO3RK6DO.js} +28 -29
  211. package/chunks/{startInteractiveUI-73EGLIIH.js → startInteractiveUI-DVWZRHYQ.js} +728 -382
  212. package/chunks/{syntheticOutput-34H7LGA7.js → syntheticOutput-LELY6HAI.js} +3 -3
  213. package/chunks/{task-create-FRGOEIKY.js → task-create-QY3BIMNM.js} +8 -7
  214. package/chunks/{task-list-OW766BXZ.js → task-list-D2U47WBJ.js} +6 -5
  215. package/chunks/{task-stop-SIR5SNBN.js → task-stop-N6E5IYLH.js} +2 -2
  216. package/chunks/{task-update-YRA532MT.js → task-update-HJCQILLB.js} +8 -7
  217. package/chunks/{team-create-PECAAPXK.js → team-create-FOSRT62K.js} +26 -27
  218. package/chunks/{team-delete-6OSECUZC.js → team-delete-RCWYDRF4.js} +6 -5
  219. package/chunks/{team-plan-approval-L6F434RY.js → team-plan-approval-6VUDV27J.js} +26 -27
  220. package/chunks/{theme-manager-ZG4RY6GU.js → theme-manager-6UT6IO5T.js} +27 -28
  221. package/chunks/{todoWrite-YDMFEV4G.js → todoWrite-FKCGATPJ.js} +4 -4
  222. package/chunks/{tool-search-THVIWAPB.js → tool-search-ASSFMMN5.js} +10 -10
  223. package/chunks/{total-session-admission-JOKNRIIA.js → total-session-admission-YYWUO23H.js} +32 -35
  224. package/chunks/tree-sitter-YJVE2ZUK.js +2980 -0
  225. package/chunks/{trustedFolders-EOGT3UVS.js → trustedFolders-4BWV2IBK.js} +29 -29
  226. package/chunks/types-ML3TRJQ5.js +16 -0
  227. package/chunks/update-relaunch-74DLGH73.js +87 -0
  228. package/chunks/{updateCheck-2KYEYVSB.js → updateCheck-CRFCGFO5.js} +31 -30
  229. package/chunks/{validateNonInterActiveAuth-EN6ZQSR2.js → validateNonInterActiveAuth-BTTEPBGQ.js} +76 -73
  230. package/chunks/{version-3UEA6ZIR.js → version-Y5JE5Q63.js} +1 -1
  231. package/chunks/{web-fetch-PAAEQKBW.js → web-fetch-CFCWTCAP.js} +5 -6
  232. package/chunks/{workflow-QCCCMYP3.js → workflow-6WC7VPQN.js} +27 -28
  233. package/chunks/workspace-providers-status-RVG2C5ZS.js +72 -0
  234. package/chunks/workspace-registration-store-SLEU3D3X.js +27 -0
  235. package/chunks/{workspace-registry-24QFLQYH.js → workspace-registry-QMWGVOTF.js} +32 -35
  236. package/chunks/workspace-service-G572JSEU.js +84 -0
  237. package/chunks/workspace-skills-status-VSSMSMNK.js +71 -0
  238. package/chunks/{write-file-I3MUDRIE.js → write-file-5XVDRORP.js} +27 -28
  239. package/chunks/{zh-RQE7I22T.js → zh-PAUNIMHQ.js} +12 -2
  240. package/chunks/{zh-TW-TBPQGHKH.js → zh-TW-GNEUIUFF.js} +12 -2
  241. package/cli-entry.js +92 -8
  242. package/cli.js +11 -11
  243. package/locales/ca.js +16 -0
  244. package/locales/de.js +16 -0
  245. package/locales/en.js +19 -0
  246. package/locales/fr.js +16 -0
  247. package/locales/ja.js +17 -1
  248. package/locales/pt.js +16 -0
  249. package/locales/ru.js +16 -0
  250. package/locales/zh-TW.js +20 -1
  251. package/locales/zh.js +20 -1
  252. package/package.json +3 -3
  253. package/web-shell/assets/{arc-C15hqnJe.js → arc-vx1tRwnX.js} +1 -1
  254. package/web-shell/assets/{architectureDiagram-3BPJPVTR-B-At37J_.js → architectureDiagram-3BPJPVTR-DBi6iUA1.js} +1 -1
  255. package/web-shell/assets/{blockDiagram-GPEHLZMM-B51wjcU7.js → blockDiagram-GPEHLZMM-Ga9JJ4Ak.js} +1 -1
  256. package/web-shell/assets/{c4Diagram-AAUBKEIU-xBK7BAwN.js → c4Diagram-AAUBKEIU-D8Vi5FYw.js} +1 -1
  257. package/web-shell/assets/channel-B29zQDTL.js +1 -0
  258. package/web-shell/assets/{chunk-2J33WTMH-xKmLg7Yr.js → chunk-2J33WTMH-CSV6yQpU.js} +1 -1
  259. package/web-shell/assets/{chunk-4BX2VUAB-BfkdKZCM.js → chunk-4BX2VUAB-toYlppdI.js} +1 -1
  260. package/web-shell/assets/{chunk-55IACEB6-DT713sZf.js → chunk-55IACEB6-DbjzuyAr.js} +1 -1
  261. package/web-shell/assets/{chunk-727SXJPM-CYEeAamv.js → chunk-727SXJPM-IkkSjSkk.js} +1 -1
  262. package/web-shell/assets/{chunk-AQP2D5EJ-DBN-5CFd.js → chunk-AQP2D5EJ-D5wUL6Zm.js} +1 -1
  263. package/web-shell/assets/{chunk-FMBD7UC4-CGZKk4PH.js → chunk-FMBD7UC4-C3o2DXG0.js} +1 -1
  264. package/web-shell/assets/{chunk-ND2GUHAM-qQbC2O-y.js → chunk-ND2GUHAM-CutIi14T.js} +1 -1
  265. package/web-shell/assets/{chunk-QZHKN3VN-B3zeXwsX.js → chunk-QZHKN3VN-DZ0NRHH-.js} +1 -1
  266. package/web-shell/assets/classDiagram-4FO5ZUOK-BNGI2SvC.js +1 -0
  267. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BNGI2SvC.js +1 -0
  268. package/web-shell/assets/{cose-bilkent-S5V4N54A-BKsl1Wvy.js → cose-bilkent-S5V4N54A-B3Dl88UJ.js} +1 -1
  269. package/web-shell/assets/{dagre-BM42HDAG-CuuuLiBK.js → dagre-BM42HDAG-DfTxfF6-.js} +1 -1
  270. package/web-shell/assets/{diagram-2AECGRRQ-CG4_eKiV.js → diagram-2AECGRRQ-CJyH98yO.js} +1 -1
  271. package/web-shell/assets/{diagram-5GNKFQAL-DSFTmZB1.js → diagram-5GNKFQAL-EbOiJNmW.js} +1 -1
  272. package/web-shell/assets/{diagram-KO2AKTUF-BxwlEHn8.js → diagram-KO2AKTUF-AYNqpqqA.js} +1 -1
  273. package/web-shell/assets/{diagram-LMA3HP47-BUAg-jMG.js → diagram-LMA3HP47-BY5VPa4H.js} +1 -1
  274. package/web-shell/assets/{diagram-OG6HWLK6-BFM2jlO5.js → diagram-OG6HWLK6-BhMYAKlk.js} +1 -1
  275. package/web-shell/assets/{erDiagram-TEJ5UH35-CerbFPa2.js → erDiagram-TEJ5UH35-Bp8S_F9l.js} +1 -1
  276. package/web-shell/assets/{flowDiagram-I6XJVG4X-BNeZz5Zz.js → flowDiagram-I6XJVG4X-az3TE9PU.js} +1 -1
  277. package/web-shell/assets/{ganttDiagram-6RSMTGT7-CTOogLaM.js → ganttDiagram-6RSMTGT7-CfkAEpCe.js} +3 -3
  278. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-yxSFkXPj.js → gitGraphDiagram-PVQCEYII-D1QmjMCy.js} +1 -1
  279. package/web-shell/assets/index-C8sDwQUv.js +1130 -0
  280. package/web-shell/assets/index-CaBoc5bb.js +3 -0
  281. package/web-shell/assets/index-Dpg5Wymg.css +5 -0
  282. package/web-shell/assets/{infoDiagram-5YYISTIA-DYdAUevm.js → infoDiagram-5YYISTIA-D3ompLrG.js} +1 -1
  283. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-CNuijZ90.js → ishikawaDiagram-YF4QCWOH-D3MRWp9I.js} +1 -1
  284. package/web-shell/assets/{journeyDiagram-JHISSGLW-BTyiuonf.js → journeyDiagram-JHISSGLW-DVkKCa44.js} +1 -1
  285. package/web-shell/assets/{kanban-definition-UN3LZRKU-DPJo0Uow.js → kanban-definition-UN3LZRKU-BLif81wF.js} +1 -1
  286. package/web-shell/assets/{linear-C8wKCbIC.js → linear-BDU96EGS.js} +1 -1
  287. package/web-shell/assets/{mermaid.core-BV5o7nW5.js → mermaid.core-B-CwC26B.js} +5 -5
  288. package/web-shell/assets/{mindmap-definition-RKZ34NQL-BtLcBmSt.js → mindmap-definition-RKZ34NQL-CS1WOJ4G.js} +1 -1
  289. package/web-shell/assets/{pieDiagram-4H26LBE5-C22J7A9Q.js → pieDiagram-4H26LBE5-BzgtNXVP.js} +1 -1
  290. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-DSL10wiL.js → quadrantDiagram-W4KKPZXB-BRfGC8MA.js} +1 -1
  291. package/web-shell/assets/{requirementDiagram-4Y6WPE33-feqh0UpX.js → requirementDiagram-4Y6WPE33-CPBZkC7g.js} +1 -1
  292. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-Z4OVaWaZ.js → sankeyDiagram-5OEKKPKP-nqNvinIk.js} +1 -1
  293. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-DIluIcb1.js → sequenceDiagram-3UESZ5HK-CM_Wdjh3.js} +1 -1
  294. package/web-shell/assets/{stateDiagram-AJRCARHV-hlhnuoYH.js → stateDiagram-AJRCARHV-L0y-48VE.js} +1 -1
  295. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BX1DdF8s.js +1 -0
  296. package/web-shell/assets/{timeline-definition-PNZ67QCA-Dqf_CqgL.js → timeline-definition-PNZ67QCA-B_n5rb3A.js} +1 -1
  297. package/web-shell/assets/{vennDiagram-CIIHVFJN-DD2QhaTX.js → vennDiagram-CIIHVFJN-C9NmLV5e.js} +1 -1
  298. package/web-shell/assets/{wardley-L42UT6IY-B2uI85U_.js → wardley-L42UT6IY-CrefK9gt.js} +1 -1
  299. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-U1aJX71g.js → wardleyDiagram-YWT4CUSO-BUccf-bC.js} +1 -1
  300. package/web-shell/assets/{xychartDiagram-2RQKCTM6-C0ODHUee.js → xychartDiagram-2RQKCTM6-DM6ef92l.js} +1 -1
  301. package/web-shell/index.html +2 -2
  302. package/chunks/chunk-524RQP4Q.js +0 -305
  303. package/chunks/chunk-CARU2RR2.js +0 -24
  304. package/chunks/chunk-CU3L64TP.js +0 -93
  305. package/chunks/chunk-OCPBI7J5.js +0 -18
  306. package/chunks/chunk-TEGEBB2I.js +0 -122
  307. package/chunks/chunk-VTU57BWZ.js +0 -30
  308. package/chunks/daemon-status-provider-B2UTZUJ2.js +0 -76
  309. package/chunks/initializer-UTQ7FB7G.js +0 -71
  310. package/chunks/list-DEICDL65.js +0 -74
  311. package/chunks/loadedSettingsAdapter-NOWEGDYJ.js +0 -68
  312. package/chunks/mcp-L5JXEEIA.js +0 -68
  313. package/chunks/nonInteractiveCli-LS2K4X6A.js +0 -124
  314. package/chunks/types-JNKGKUJT.js +0 -12
  315. package/chunks/workspace-providers-status-4KMGETOJ.js +0 -71
  316. package/chunks/workspace-service-RVLBMSMZ.js +0 -80
  317. package/chunks/workspace-skills-status-DS4ZVFTO.js +0 -70
  318. package/web-shell/assets/channel-CLiQD50f.js +0 -1
  319. package/web-shell/assets/classDiagram-4FO5ZUOK-D3sYqow5.js +0 -1
  320. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-D3sYqow5.js +0 -1
  321. package/web-shell/assets/index-D5IWFVk1.css +0 -5
  322. package/web-shell/assets/index-KFJRDhX7.js +0 -783
  323. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BhQMwgpl.js +0 -1
@@ -0,0 +1,418 @@
1
+ // Force strict mode and setup for ESM
2
+ "use strict";
3
+ import {
4
+ ChannelWorkerReconcileError
5
+ } from "./chunk-3MX7D6QN.js";
6
+ import {
7
+ ChannelWorkerStopError
8
+ } from "./chunk-GXGIM7QP.js";
9
+ import "./chunk-GYTKQYDB.js";
10
+ import "./chunk-TJTKSVIV.js";
11
+ import "./chunk-M5GB774H.js";
12
+ import "./chunk-5HBA2Z7V.js";
13
+ import {
14
+ ChannelWebhookEnqueueError
15
+ } from "./chunk-OJAMDVF5.js";
16
+ import "./chunk-ZQIYGQCG.js";
17
+ import "./chunk-UDXSXLER.js";
18
+ import "./chunk-H6XPXXMH.js";
19
+ import {
20
+ init_esbuild_shims
21
+ } from "./chunk-5O2XNYP6.js";
22
+ import {
23
+ __name
24
+ } from "./chunk-J2S4EL5Y.js";
25
+
26
+ // packages/cli/src/serve/channel-worker-manager.ts
27
+ init_esbuild_shims();
28
+ var ChannelWorkerControlError = class extends Error {
29
+ static {
30
+ __name(this, "ChannelWorkerControlError");
31
+ }
32
+ code;
33
+ rolledBack;
34
+ rollbackError;
35
+ constructor(code, message, details = {}) {
36
+ super(message);
37
+ this.name = "ChannelWorkerControlError";
38
+ this.code = code;
39
+ this.rolledBack = details.rolledBack;
40
+ this.rollbackError = details.rollbackError;
41
+ }
42
+ };
43
+ var DISABLED_SNAPSHOT = {
44
+ enabled: false,
45
+ state: "disabled",
46
+ channels: []
47
+ };
48
+ function cloneSelection(selection) {
49
+ return selection.mode === "all" ? { mode: "all" } : { mode: "names", names: [...selection.names] };
50
+ }
51
+ __name(cloneSelection, "cloneSelection");
52
+ function selectionsEqual(left, right) {
53
+ if (!left || left.mode !== right.mode) return false;
54
+ if (left.mode === "all") return true;
55
+ if (right.mode === "all" || left.names.length !== right.names.length) {
56
+ return false;
57
+ }
58
+ return left.names.every((name, index) => name === right.names[index]);
59
+ }
60
+ __name(selectionsEqual, "selectionsEqual");
61
+ function isPartial(workers) {
62
+ return workers.some((worker) => {
63
+ if (!worker.requestedChannels) return false;
64
+ const connected = new Set(worker.channels);
65
+ return worker.requestedChannels.some((name) => !connected.has(name));
66
+ });
67
+ }
68
+ __name(isPartial, "isPartial");
69
+ function errorMessage(error) {
70
+ return error instanceof Error ? error.message : String(error);
71
+ }
72
+ __name(errorMessage, "errorMessage");
73
+ function createChannelWorkerManager(opts) {
74
+ let committedSelection;
75
+ let pendingSelection;
76
+ let transition = "idle";
77
+ let group;
78
+ let leaseReserved = opts.initialLeaseReserved === true;
79
+ let draining = false;
80
+ let hardKilled = false;
81
+ let lane = Promise.resolve();
82
+ const workspaceDrains = /* @__PURE__ */ new Set();
83
+ const snapshot = /* @__PURE__ */ __name(() => ({
84
+ enabled: committedSelection !== void 0 || group !== void 0 || leaseReserved,
85
+ selection: committedSelection ? cloneSelection(committedSelection) : null,
86
+ ...pendingSelection ? { pendingSelection: cloneSelection(pendingSelection) } : {},
87
+ transition,
88
+ workers: group?.snapshots() ?? []
89
+ }), "snapshot");
90
+ const notify = /* @__PURE__ */ __name(() => {
91
+ opts.onStateChange?.(snapshot());
92
+ }, "notify");
93
+ const enqueue = /* @__PURE__ */ __name((operation) => {
94
+ const result = lane.then(operation, operation);
95
+ lane = result.then(
96
+ () => void 0,
97
+ () => void 0
98
+ );
99
+ return result;
100
+ }, "enqueue");
101
+ const drainingError = /* @__PURE__ */ __name(() => new ChannelWorkerControlError(
102
+ "daemon_draining",
103
+ "Daemon is shutting down."
104
+ ), "drainingError");
105
+ const reserve = /* @__PURE__ */ __name((selection) => {
106
+ if (leaseReserved) return;
107
+ opts.reserveLease(selection);
108
+ leaseReserved = true;
109
+ }, "reserve");
110
+ const release = /* @__PURE__ */ __name(() => {
111
+ if (!leaseReserved) return;
112
+ opts.releaseLease();
113
+ leaseReserved = false;
114
+ }, "release");
115
+ const setTransition = /* @__PURE__ */ __name((next, pending) => {
116
+ transition = next;
117
+ pendingSelection = pending ? cloneSelection(pending) : void 0;
118
+ notify();
119
+ }, "setTransition");
120
+ const commit = /* @__PURE__ */ __name((selection, groups) => {
121
+ committedSelection = selection ? cloneSelection(selection) : void 0;
122
+ transition = "idle";
123
+ pendingSelection = void 0;
124
+ opts.onCommittedSelection?.(committedSelection, groups);
125
+ notify();
126
+ }, "commit");
127
+ const classifyFailure = /* @__PURE__ */ __name((error, fallbackCode) => {
128
+ if (error instanceof ChannelWorkerReconcileError) {
129
+ return new ChannelWorkerControlError(
130
+ error.stopFailed ? "channel_worker_stop_failed" : fallbackCode,
131
+ error.message,
132
+ {
133
+ rolledBack: error.rolledBack,
134
+ ...error.rollbackError ? { rollbackError: error.rollbackError } : {}
135
+ }
136
+ );
137
+ }
138
+ return new ChannelWorkerControlError(
139
+ error instanceof ChannelWorkerStopError ? "channel_worker_stop_failed" : fallbackCode,
140
+ errorMessage(error)
141
+ );
142
+ }, "classifyFailure");
143
+ const applySelection = /* @__PURE__ */ __name(async (selection, initial) => {
144
+ if (hardKilled) throw drainingError();
145
+ const enabling = !snapshot().enabled;
146
+ const replacing = committedSelection !== void 0;
147
+ const sameSelection = selectionsEqual(committedSelection, selection);
148
+ if (sameSelection && group?.isHealthy()) {
149
+ return {
150
+ changed: false,
151
+ replaced: false,
152
+ partial: isPartial(group.snapshots()),
153
+ state: snapshot(),
154
+ created: false
155
+ };
156
+ }
157
+ setTransition(replacing ? "reconciling" : "starting", selection);
158
+ let targetGroups;
159
+ try {
160
+ targetGroups = await opts.resolveGroups(
161
+ selection,
162
+ initial ? "initial" : "set"
163
+ );
164
+ if (hardKilled) throw drainingError();
165
+ reserve(selection);
166
+ } catch (error) {
167
+ setTransition("idle");
168
+ throw error;
169
+ }
170
+ if (!group) {
171
+ let candidate;
172
+ try {
173
+ candidate = opts.createGroup(targetGroups);
174
+ } catch (error) {
175
+ let cleanupError;
176
+ if (!initial) {
177
+ try {
178
+ release();
179
+ } catch (releaseError) {
180
+ cleanupError = releaseError;
181
+ }
182
+ }
183
+ setTransition("idle");
184
+ throw new ChannelWorkerControlError(
185
+ "channel_worker_start_failed",
186
+ errorMessage(error),
187
+ cleanupError ? { rolledBack: false, rollbackError: errorMessage(cleanupError) } : { rolledBack: !initial }
188
+ );
189
+ }
190
+ group = candidate;
191
+ for (const workspaceCwd of workspaceDrains) {
192
+ candidate.beginWorkspaceDrain(workspaceCwd);
193
+ }
194
+ notify();
195
+ try {
196
+ await candidate.start();
197
+ } catch (error) {
198
+ let cleanupError;
199
+ try {
200
+ await candidate.stop();
201
+ } catch (stopError) {
202
+ cleanupError = stopError;
203
+ }
204
+ if (!cleanupError) {
205
+ if (!initial) {
206
+ try {
207
+ release();
208
+ } catch (releaseError) {
209
+ cleanupError = releaseError;
210
+ }
211
+ }
212
+ if (!cleanupError) group = void 0;
213
+ }
214
+ setTransition("idle");
215
+ throw new ChannelWorkerControlError(
216
+ "channel_worker_start_failed",
217
+ errorMessage(error),
218
+ cleanupError ? { rolledBack: false, rollbackError: errorMessage(cleanupError) } : { rolledBack: true }
219
+ );
220
+ }
221
+ commit(selection, targetGroups);
222
+ return {
223
+ changed: true,
224
+ replaced: false,
225
+ partial: isPartial(candidate.snapshots()),
226
+ state: snapshot(),
227
+ created: enabling
228
+ };
229
+ }
230
+ try {
231
+ const result = await group.reconcile(targetGroups, {
232
+ onRollingBack: /* @__PURE__ */ __name(() => setTransition("rolling_back", selection), "onRollingBack")
233
+ });
234
+ commit(selection, targetGroups);
235
+ return {
236
+ changed: result.changed || !sameSelection,
237
+ replaced: !sameSelection,
238
+ partial: isPartial(result.workers),
239
+ state: snapshot(),
240
+ created: enabling
241
+ };
242
+ } catch (error) {
243
+ setTransition("idle");
244
+ throw classifyFailure(error, "channel_worker_start_failed");
245
+ }
246
+ }, "applySelection");
247
+ const manager = {
248
+ async startInitial(selection) {
249
+ if (draining) throw drainingError();
250
+ await enqueue(async () => {
251
+ await applySelection(selection, true);
252
+ });
253
+ },
254
+ setSelection(selection) {
255
+ if (draining) {
256
+ return Promise.reject(drainingError());
257
+ }
258
+ return enqueue(() => applySelection(selection, false));
259
+ },
260
+ stopSelection() {
261
+ if (draining) {
262
+ return Promise.reject(drainingError());
263
+ }
264
+ return enqueue(async () => {
265
+ const hadState = group !== void 0 || leaseReserved;
266
+ if (!hadState) {
267
+ return { changed: false, state: snapshot() };
268
+ }
269
+ setTransition("stopping");
270
+ try {
271
+ if (group) {
272
+ await group.stop();
273
+ group = void 0;
274
+ }
275
+ release();
276
+ } catch (error) {
277
+ setTransition("idle");
278
+ throw classifyFailure(error, "channel_worker_stop_failed");
279
+ }
280
+ commit(void 0, []);
281
+ return { changed: hadState, state: snapshot() };
282
+ });
283
+ },
284
+ reload() {
285
+ if (draining) {
286
+ return Promise.reject(drainingError());
287
+ }
288
+ return enqueue(async () => {
289
+ if (!group || !committedSelection) {
290
+ throw new ChannelWorkerControlError(
291
+ "channel_worker_not_enabled",
292
+ "This daemon has no channel worker to reload."
293
+ );
294
+ }
295
+ setTransition("reconciling", committedSelection);
296
+ let targetGroups;
297
+ try {
298
+ targetGroups = await opts.resolveGroups(committedSelection, "reload");
299
+ } catch (error) {
300
+ setTransition("idle");
301
+ throw error;
302
+ }
303
+ if (hardKilled) throw drainingError();
304
+ try {
305
+ await group.reconcile(targetGroups, {
306
+ force: true,
307
+ onRollingBack: /* @__PURE__ */ __name(() => setTransition("rolling_back", committedSelection), "onRollingBack")
308
+ });
309
+ } catch (error) {
310
+ setTransition("idle");
311
+ throw classifyFailure(error, "channel_worker_start_failed");
312
+ }
313
+ commit(committedSelection, targetGroups);
314
+ const snapshots = group.snapshots();
315
+ return snapshots.find((worker) => worker.primary) ?? snapshots[0] ?? { ...DISABLED_SNAPSHOT };
316
+ });
317
+ },
318
+ state: snapshot,
319
+ primarySnapshot: /* @__PURE__ */ __name(() => group?.primarySnapshot() ?? { ...DISABLED_SNAPSHOT }, "primarySnapshot"),
320
+ snapshots: /* @__PURE__ */ __name(() => group?.snapshots() ?? [], "snapshots"),
321
+ enqueueWebhookTask(task) {
322
+ if (!group || draining) {
323
+ return Promise.reject(
324
+ new ChannelWebhookEnqueueError(
325
+ "channel_worker_unavailable",
326
+ draining ? "Daemon is shutting down." : "Channel worker is not running."
327
+ )
328
+ );
329
+ }
330
+ return group.enqueueWebhookTask(task);
331
+ },
332
+ beginWorkspaceDrain(workspaceCwd) {
333
+ workspaceDrains.add(workspaceCwd);
334
+ group?.beginWorkspaceDrain(workspaceCwd);
335
+ },
336
+ cancelWorkspaceDrain(workspaceCwd) {
337
+ workspaceDrains.delete(workspaceCwd);
338
+ group?.cancelWorkspaceDrain(workspaceCwd);
339
+ },
340
+ workspaceActivity(workspaceCwd) {
341
+ return group?.workspaceActivity(workspaceCwd) ?? 0;
342
+ },
343
+ removeWorkspace(workspaceCwd) {
344
+ return enqueue(async () => {
345
+ try {
346
+ await group?.removeWorkspace(workspaceCwd);
347
+ notify();
348
+ } finally {
349
+ workspaceDrains.delete(workspaceCwd);
350
+ }
351
+ });
352
+ },
353
+ restoreWorkspace(workspaceCwd) {
354
+ return enqueue(async () => {
355
+ await group?.restoreWorkspace(workspaceCwd);
356
+ notify();
357
+ });
358
+ },
359
+ refreshWorkspaces() {
360
+ return enqueue(async () => {
361
+ if (!group || !committedSelection) return;
362
+ setTransition("reconciling", committedSelection);
363
+ let targetGroups;
364
+ try {
365
+ targetGroups = await opts.resolveGroups(committedSelection, "reload");
366
+ } catch (error) {
367
+ setTransition("idle");
368
+ throw error;
369
+ }
370
+ if (hardKilled) throw drainingError();
371
+ try {
372
+ await group.reconcile(targetGroups);
373
+ } catch (error) {
374
+ setTransition("idle");
375
+ throw classifyFailure(error, "channel_worker_start_failed");
376
+ }
377
+ commit(committedSelection, targetGroups);
378
+ });
379
+ },
380
+ workerChanged: notify,
381
+ shutdown() {
382
+ draining = true;
383
+ return enqueue(async () => {
384
+ if (group || leaseReserved) setTransition("stopping");
385
+ try {
386
+ if (group) {
387
+ await group.stop();
388
+ group = void 0;
389
+ }
390
+ release();
391
+ } catch (error) {
392
+ setTransition("idle");
393
+ throw classifyFailure(error, "channel_worker_stop_failed");
394
+ }
395
+ commit(void 0, []);
396
+ });
397
+ },
398
+ killAllSync() {
399
+ draining = true;
400
+ hardKilled = true;
401
+ group?.killAllSync();
402
+ pendingSelection = void 0;
403
+ transition = "idle";
404
+ notify();
405
+ }
406
+ };
407
+ return manager;
408
+ }
409
+ __name(createChannelWorkerManager, "createChannelWorkerManager");
410
+ export {
411
+ ChannelWorkerControlError,
412
+ createChannelWorkerManager
413
+ };
414
+ /**
415
+ * @license
416
+ * Copyright 2026 Qwen Team
417
+ * SPDX-License-Identifier: Apache-2.0
418
+ */
@@ -0,0 +1,20 @@
1
+ // Force strict mode and setup for ESM
2
+ "use strict";
3
+ import {
4
+ ChannelWorkerStopError,
5
+ createChannelWorkerSupervisor
6
+ } from "./chunk-GXGIM7QP.js";
7
+ import "./chunk-GYTKQYDB.js";
8
+ import "./chunk-TJTKSVIV.js";
9
+ import "./chunk-M5GB774H.js";
10
+ import "./chunk-5HBA2Z7V.js";
11
+ import "./chunk-OJAMDVF5.js";
12
+ import "./chunk-ZQIYGQCG.js";
13
+ import "./chunk-UDXSXLER.js";
14
+ import "./chunk-H6XPXXMH.js";
15
+ import "./chunk-5O2XNYP6.js";
16
+ import "./chunk-J2S4EL5Y.js";
17
+ export {
18
+ ChannelWorkerStopError,
19
+ createChannelWorkerSupervisor
20
+ };
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  createDebugLogger
5
- } from "./chunk-J4TSQ5EQ.js";
5
+ } from "./chunk-7NFB7LBQ.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -6,16 +6,16 @@ import {
6
6
  import {
7
7
  JsonFormatter,
8
8
  parseAndFormatApiError
9
- } from "./chunk-NVYTCB5Z.js";
9
+ } from "./chunk-SA6QVLWI.js";
10
10
  import {
11
11
  FatalBudgetExceededError,
12
12
  FatalCancellationError,
13
13
  FatalTurnLimitedError,
14
14
  createDebugLogger
15
- } from "./chunk-J4TSQ5EQ.js";
15
+ } from "./chunk-7NFB7LBQ.js";
16
16
  import {
17
17
  runExitCleanup
18
- } from "./chunk-ECNYL4AA.js";
18
+ } from "./chunk-HUEWOHKV.js";
19
19
  import {
20
20
  init_esbuild_shims
21
21
  } from "./chunk-5O2XNYP6.js";
@@ -19,6 +19,8 @@ function mapSkillConfigToStatus(skill, disabledSkillNames = /* @__PURE__ */ new
19
19
  description: skill.description,
20
20
  level: skill.level,
21
21
  modelInvocable,
22
+ ...skill.userInvocable === false ? { userInvocable: false } : {},
23
+ installedPath: skill.filePath,
22
24
  ...skill.argumentHint ? { argumentHint: skill.argumentHint } : {},
23
25
  ...skill.model ? { model: skill.model } : {},
24
26
  ...skill.extensionName ? { extensionName: skill.extensionName } : {}
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  createDebugLogger
5
- } from "./chunk-J4TSQ5EQ.js";
5
+ } from "./chunk-7NFB7LBQ.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
  getGlobalQwenDir
5
- } from "./chunk-34Z3U5RQ.js";
5
+ } from "./chunk-ZQIYGQCG.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";