@qwen-code/qwen-code 0.22.1 → 0.22.2-nightly.20260828.7357136dd1

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 (418) hide show
  1. package/bundled/goal-draft/SKILL.md +109 -0
  2. package/bundled/qc-helper/docs/configuration/settings.md +13 -13
  3. package/bundled/qc-helper/docs/features/_meta.ts +1 -0
  4. package/bundled/qc-helper/docs/features/channels/overview.md +34 -3
  5. package/bundled/qc-helper/docs/features/code-review.md +3 -3
  6. package/bundled/qc-helper/docs/features/commands.md +2 -1
  7. package/bundled/qc-helper/docs/features/goals.md +58 -0
  8. package/bundled/qc-helper/docs/features/headless.md +13 -11
  9. package/bundled/qc-helper/docs/features/status-line.md +3 -3
  10. package/bundled/review/SKILL.md +70 -22
  11. package/bundled/review/references/persistence.md +7 -3
  12. package/bundled/review/references/posting.md +2 -0
  13. package/chunks/MaxSizedBox-LMWXCLDV.js +110 -0
  14. package/chunks/{StandaloneSessionPicker-XF2TVJFK.js → StandaloneSessionPicker-W3F7U3JL.js} +79 -81
  15. package/chunks/{acpAgent-GY53MJIW.js → acpAgent-EYZ6EEHD.js} +1132 -339
  16. package/chunks/{agent-7U6CC5KF.js → agent-RBLGBY65.js} +44 -46
  17. package/chunks/agent-headless-L5T4Y4OZ.js +85 -0
  18. package/chunks/{anthropicContentGenerator-U76GTVB6.js → anthropicContentGenerator-GMHML35Q.js} +10 -11
  19. package/chunks/{artifact-tool-XDJCZZCF.js → artifact-tool-XSMPHZBT.js} +11 -3
  20. package/chunks/{askUserQuestion-ZXXERLEV.js → askUserQuestion-4SWJY65V.js} +2 -2
  21. package/chunks/bridge-5LR2F2ND.js +119 -0
  22. package/chunks/{channel-management-service-HXXS3HOZ.js → channel-management-service-KHR3N6CH.js} +6 -6
  23. package/chunks/channel-settings-store-4FOAZW72.js +120 -0
  24. package/chunks/{channel-worker-group-EVDC2P4K.js → channel-worker-group-6NA6BBZV.js} +8 -7
  25. package/chunks/{channel-worker-manager-IJJZHGEI.js → channel-worker-manager-NEZ2J6RK.js} +10 -8
  26. package/chunks/{channel-worker-supervisor-YSKB5GVB.js → channel-worker-supervisor-FKU7DIHJ.js} +6 -5
  27. package/chunks/{chunk-7QGEJI7M.js → chunk-23RFD54N.js} +1 -1
  28. package/chunks/{chunk-LJP2BBMK.js → chunk-2SXSLSQE.js} +4 -4
  29. package/chunks/chunk-2TNL5KPM.js +49 -0
  30. package/chunks/chunk-335CJSNF.js +2320 -0
  31. package/chunks/chunk-36LGBEM6.js +130 -0
  32. package/chunks/{chunk-ZWKGZB2K.js → chunk-3JXM2CVW.js} +3 -3
  33. package/chunks/{chunk-ICWGPK23.js → chunk-3K6TUZHS.js} +7 -7
  34. package/chunks/{chunk-43C2II2G.js → chunk-3OOXT6CR.js} +5 -5
  35. package/chunks/{chunk-ILPXSKGQ.js → chunk-3WK3QDNV.js} +2 -2
  36. package/chunks/{chunk-2YDYDDE2.js → chunk-3XOKEVII.js} +3 -3
  37. package/chunks/chunk-3Y34Q3JV.js +1584 -0
  38. package/chunks/{chunk-ZLTEQYNC.js → chunk-42IDLQWS.js} +26 -20
  39. package/chunks/{chunk-5MK32KJV.js → chunk-454XFGH4.js} +3 -3
  40. package/chunks/chunk-4CMJKUND.js +95 -0
  41. package/chunks/{chunk-77TOMRBG.js → chunk-4K7KNVWH.js} +3 -3
  42. package/chunks/{chunk-V3GINY6K.js → chunk-4QHPPXK2.js} +16 -8
  43. package/chunks/{chunk-UCSV2IZW.js → chunk-62GQFYID.js} +3 -3
  44. package/chunks/{chunk-SLEWBQWM.js → chunk-6DIGWMGT.js} +2 -2
  45. package/chunks/{chunk-I6YW3T3W.js → chunk-6JCGO55P.js} +723 -3399
  46. package/chunks/{chunk-PVBT5QPD.js → chunk-6PJOTWAN.js} +1 -1
  47. package/chunks/{chunk-5Y2JCJAH.js → chunk-6W2IK5KC.js} +956 -17
  48. package/chunks/{chunk-A7X32SCT.js → chunk-6ZZBRRKQ.js} +5 -5
  49. package/chunks/{chunk-ELY4QVIB.js → chunk-7EQQR46F.js} +1 -1
  50. package/chunks/{chunk-4DCP3362.js → chunk-7GWQW5ID.js} +4 -4
  51. package/chunks/chunk-7J6OTNGO.js +424 -0
  52. package/chunks/{chunk-CITGRGCM.js → chunk-7TUBJBBJ.js} +4 -1
  53. package/chunks/{chunk-L436XFLJ.js → chunk-7VD6IPQM.js} +1 -1
  54. package/chunks/{chunk-E4I5MVBR.js → chunk-ABS25QER.js} +1 -1
  55. package/chunks/{chunk-2ZV3CZKI.js → chunk-AJGR6E6Z.js} +49 -32
  56. package/chunks/{chunk-HJOWQUE2.js → chunk-AU3MMVJF.js} +31 -14
  57. package/chunks/{chunk-I32QCIK7.js → chunk-AXC26UCQ.js} +1 -1
  58. package/chunks/{chunk-7AS7QX72.js → chunk-AY3BNYEQ.js} +1 -1
  59. package/chunks/{chunk-FVDQ5E67.js → chunk-B466ZSHZ.js} +3 -3
  60. package/chunks/{chunk-OI2DR6QB.js → chunk-B5OUL5EL.js} +2 -2
  61. package/chunks/{chunk-6US7BF3G.js → chunk-B5PHIJGI.js} +183 -5
  62. package/chunks/{chunk-5T4LWWNX.js → chunk-B7CDU2SL.js} +2 -2
  63. package/chunks/{chunk-4TPAG3O7.js → chunk-BFPESSTR.js} +1 -1
  64. package/chunks/{chunk-WBT3STGU.js → chunk-BKWNKLZB.js} +20 -20
  65. package/chunks/{chunk-73WFGVIZ.js → chunk-BOWFGCEU.js} +3 -3
  66. package/chunks/{chunk-EMGAVCBZ.js → chunk-BPAKYXQ3.js} +2 -2
  67. package/chunks/{chunk-IPQA4SR5.js → chunk-BWORX6FA.js} +1 -1
  68. package/chunks/{chunk-BKDAF7ES.js → chunk-BXDAPVQU.js} +2 -2
  69. package/chunks/{chunk-ZEADBZLO.js → chunk-C2X7KY45.js} +3 -3
  70. package/chunks/{chunk-T2HMXHYA.js → chunk-C3KURPP7.js} +6 -6
  71. package/chunks/{chunk-JUIJ3FXC.js → chunk-CAJTKR6W.js} +5 -5
  72. package/chunks/{chunk-2FN2HNTI.js → chunk-CFJY4DGX.js} +2 -2
  73. package/chunks/{chunk-DP7LABIB.js → chunk-CMHFCLBU.js} +1 -1
  74. package/chunks/{chunk-LRKMQPMD.js → chunk-CQH5KTKC.js} +1 -1
  75. package/chunks/{chunk-J7MLXFC5.js → chunk-CRKKHXTI.js} +185 -174
  76. package/chunks/{chunk-XNXWEGKB.js → chunk-CYAUBK46.js} +3 -3
  77. package/chunks/{chunk-JECO75XD.js → chunk-D5LUXLUH.js} +2 -2
  78. package/chunks/{chunk-SRGENTPF.js → chunk-DFDWJE6Z.js} +48 -31
  79. package/chunks/chunk-DJBQCO2E.js +842 -0
  80. package/chunks/{chunk-2CRNTW2B.js → chunk-DP4MWIM3.js} +2 -2
  81. package/chunks/{chunk-EB4VDXNI.js → chunk-DYXFD5RO.js} +182 -3
  82. package/chunks/{chunk-ODXCSIH5.js → chunk-E3XVSVKK.js} +26 -4
  83. package/chunks/{chunk-ZKAZP2ZG.js → chunk-EB6QRGHM.js} +3 -3
  84. package/chunks/{chunk-GNRVKN76.js → chunk-EKNBU2X7.js} +4 -4
  85. package/chunks/{chunk-3UZCLCXR.js → chunk-EKSCLBBF.js} +3 -3
  86. package/chunks/{chunk-624NHDGB.js → chunk-ERFDKH32.js} +11 -0
  87. package/chunks/chunk-EW5VVLJT.js +3525 -0
  88. package/chunks/{chunk-XYX474JQ.js → chunk-EWIQ3NAE.js} +2522 -2030
  89. package/chunks/{chunk-O5YGAEQS.js → chunk-FALBWZF4.js} +6 -6
  90. package/chunks/{chunk-GZJUCMH4.js → chunk-FEHMA4RO.js} +542 -654
  91. package/chunks/{chunk-2YEZNBSD.js → chunk-FMFBLTLY.js} +320 -86
  92. package/chunks/{chunk-MZS7GEC7.js → chunk-FTF2YIZ5.js} +1 -1
  93. package/chunks/{chunk-ZJG323IA.js → chunk-G6FECKTJ.js} +7 -5
  94. package/chunks/{chunk-6KS24S3X.js → chunk-GGNE3JAW.js} +1 -1
  95. package/chunks/{chunk-BQBUZDDH.js → chunk-H33EQVMG.js} +4 -4
  96. package/chunks/chunk-H72BQNM3.js +645 -0
  97. package/chunks/{chunk-5ZYZPDDF.js → chunk-HGIMWQVT.js} +30 -25
  98. package/chunks/{chunk-DCSAVGDJ.js → chunk-HOCJDUFY.js} +2 -2
  99. package/chunks/{chunk-MDZO5V2O.js → chunk-HPXV655A.js} +9 -7
  100. package/chunks/{chunk-7JPW6IYH.js → chunk-HVC3PNVC.js} +1 -1
  101. package/chunks/{chunk-2MHGD7EE.js → chunk-HYDJDQGJ.js} +1 -1
  102. package/chunks/{chunk-BDHLBR46.js → chunk-IB7FQJRY.js} +34 -11
  103. package/chunks/{chunk-E55H6BZ7.js → chunk-ICURCKIU.js} +1335 -119
  104. package/chunks/{chunk-PAJGKZAA.js → chunk-ISKH4QX3.js} +14 -12
  105. package/chunks/{chunk-3B5DCAQU.js → chunk-J6S24ZJE.js} +34 -34
  106. package/chunks/{chunk-AYVIGUUK.js → chunk-JB4JIVTJ.js} +1 -1
  107. package/chunks/{chunk-C4WBKZJT.js → chunk-JN4IWWMN.js} +4 -4
  108. package/chunks/{chunk-6HTMIKXZ.js → chunk-JUUBLSZU.js} +4 -4
  109. package/chunks/{chunk-T6OODF2U.js → chunk-JWALNCLT.js} +1 -1
  110. package/chunks/{chunk-SKNVVYIJ.js → chunk-K5KXUXWC.js} +3 -3
  111. package/chunks/{chunk-IRIX323G.js → chunk-KTJFDCX4.js} +2 -2
  112. package/chunks/{chunk-FK4H3V6S.js → chunk-LEFCFTEX.js} +6 -6
  113. package/chunks/{chunk-OQ6LTSX3.js → chunk-LEGTMYAE.js} +1 -1
  114. package/chunks/{chunk-NY3IJYAV.js → chunk-LLZA2IK3.js} +15 -9
  115. package/chunks/{chunk-5CI4AXDD.js → chunk-LNETQKBE.js} +4 -4
  116. package/chunks/{chunk-TOF4UZHH.js → chunk-LUEHOUHM.js} +3 -3
  117. package/chunks/{chunk-62PXFOK4.js → chunk-LVPZO674.js} +4 -4
  118. package/chunks/{chunk-EEQYTWGU.js → chunk-M4ORUPYI.js} +5 -5
  119. package/chunks/{chunk-GNMJNDZE.js → chunk-M6FOJXW3.js} +1 -1
  120. package/chunks/{chunk-MYLXL7F6.js → chunk-MAYHGRP4.js} +9 -9
  121. package/chunks/{chunk-K3LPAED5.js → chunk-MQM5PJML.js} +24 -4
  122. package/chunks/{chunk-SM7ZVKTF.js → chunk-MTJN7FOT.js} +7 -7
  123. package/chunks/{chunk-BGXZBI5B.js → chunk-N4X7G4J2.js} +2 -1
  124. package/chunks/{chunk-27ONXAFY.js → chunk-NIFYWDYN.js} +1 -1
  125. package/chunks/{chunk-IJVDHPKD.js → chunk-NU7RKEZR.js} +2 -2
  126. package/chunks/{chunk-R2ZJH3FV.js → chunk-NXMBRVMQ.js} +3 -3
  127. package/chunks/{chunk-JLGFGPZJ.js → chunk-OI4NY7RA.js} +2 -2
  128. package/chunks/{chunk-RRKNX553.js → chunk-PDQGMSZK.js} +1 -1
  129. package/chunks/{chunk-GTUKW3I6.js → chunk-PPKZ7JOE.js} +1 -1
  130. package/chunks/{chunk-SAH4BD2J.js → chunk-PQEISIKS.js} +67 -0
  131. package/chunks/{chunk-MW5AHWOZ.js → chunk-PWIGAMA4.js} +93 -14
  132. package/chunks/{chunk-WEGXPP5E.js → chunk-QFCDF5PL.js} +1 -1
  133. package/chunks/{chunk-EAV3TENS.js → chunk-QPTRRPZU.js} +44 -7
  134. package/chunks/{chunk-SQPOJ4ZI.js → chunk-RFI4YGMR.js} +21 -266
  135. package/chunks/{chunk-JVPFTDBK.js → chunk-RFIDDFAL.js} +1 -1
  136. package/chunks/chunk-RKFGE7JH.js +93 -0
  137. package/chunks/chunk-RNVFRIOO.js +275 -0
  138. package/chunks/{chunk-CPPYZHBN.js → chunk-RU7BK6B3.js} +1 -1
  139. package/chunks/{chunk-OT26ITEY.js → chunk-RVXDXY6I.js} +3 -3
  140. package/chunks/{chunk-W2WRNJKX.js → chunk-RWZB422L.js} +5 -5
  141. package/chunks/{chunk-6YAR6ZU3.js → chunk-RYNZQGXN.js} +19 -2
  142. package/chunks/{chunk-EKP3M4RF.js → chunk-SJ5ERAW3.js} +1 -1
  143. package/chunks/{chunk-DEYPMJPD.js → chunk-SMPR7SPO.js} +1 -1
  144. package/chunks/{chunk-3BV7TZNQ.js → chunk-SRZZY4IY.js} +3 -3
  145. package/chunks/{chunk-7CWEZQ6T.js → chunk-STUJ7IMZ.js} +0 -77
  146. package/chunks/{chunk-TKO4TLT6.js → chunk-SUX7HDNA.js} +3 -3
  147. package/chunks/{chunk-76WGY6LW.js → chunk-SVNO44PF.js} +3 -3
  148. package/chunks/{chunk-UX3IFLJM.js → chunk-SZLBBZH4.js} +150 -23
  149. package/chunks/{chunk-K63NK3KL.js → chunk-T2NKRHZZ.js} +13 -13
  150. package/chunks/{chunk-4K7NQDCG.js → chunk-T4EFG2P5.js} +18 -9
  151. package/chunks/{chunk-2NCVUT3C.js → chunk-TLHUNMO7.js} +4 -4
  152. package/chunks/{chunk-EC5BONC3.js → chunk-TPI7O7HR.js} +1 -1
  153. package/chunks/{chunk-ZXDM7DYV.js → chunk-TQHGJYR3.js} +2029 -616
  154. package/chunks/{chunk-T2CRBIDJ.js → chunk-TTX2JUE6.js} +1 -1
  155. package/chunks/{chunk-OX44MOAN.js → chunk-TW3E6YNO.js} +3 -3
  156. package/chunks/chunk-U54AYGEC.js +337 -0
  157. package/chunks/{chunk-2NNTE2ED.js → chunk-UHQFIS7N.js} +15 -0
  158. package/chunks/{chunk-KOJ6MHD5.js → chunk-UTLCH2FK.js} +1 -1
  159. package/chunks/{chunk-KCOXDRQL.js → chunk-UY3PBNY3.js} +17 -29
  160. package/chunks/{chunk-7DPKPBOQ.js → chunk-V2NDP3I4.js} +2 -2
  161. package/chunks/{chunk-47SIHHPL.js → chunk-V2QDDC5J.js} +19 -9
  162. package/chunks/{chunk-BVE5EMIG.js → chunk-V5J4J5TP.js} +2 -2
  163. package/chunks/{chunk-X2UOOG5V.js → chunk-VQUGEVGR.js} +1 -1
  164. package/chunks/{chunk-XJS54K4A.js → chunk-VTHREBQM.js} +2 -2
  165. package/chunks/{chunk-VMDURMFY.js → chunk-W6DUQ5GA.js} +11307 -10424
  166. package/chunks/{chunk-BX2BZPFJ.js → chunk-WALC5VJH.js} +4 -4
  167. package/chunks/{chunk-FPH6TXD3.js → chunk-WAOIHTJS.js} +1 -1
  168. package/chunks/{chunk-LI2HEMKO.js → chunk-WBHKK3CU.js} +4 -4
  169. package/chunks/{chunk-O3BUXIPM.js → chunk-WXEA74YB.js} +3 -3
  170. package/chunks/{chunk-NER3H7PI.js → chunk-X3ZRTCJD.js} +1 -1
  171. package/chunks/{chunk-YRLW2MSX.js → chunk-XBVNNDPK.js} +11 -4
  172. package/chunks/{chunk-VL4YX3FH.js → chunk-XF63PKEN.js} +1 -1
  173. package/chunks/{chunk-FN5C6C7G.js → chunk-XLLQJRAH.js} +190 -478
  174. package/chunks/{chunk-3FSBMAYD.js → chunk-XQFT3QUF.js} +1 -1
  175. package/chunks/{chunk-FJWICLG7.js → chunk-Y3QL45LS.js} +1 -1
  176. package/chunks/{chunk-IKN3IUJP.js → chunk-Y4TPOUEV.js} +17 -9
  177. package/chunks/{chunk-NVK4HJYQ.js → chunk-YRZX2PHA.js} +1 -1
  178. package/chunks/{chunk-2SERYG4T.js → chunk-YTDVNSUQ.js} +1 -1
  179. package/chunks/{chunk-KWFP3WV6.js → chunk-YWQ237GX.js} +4 -193
  180. package/chunks/{chunk-6E4WHQJV.js → chunk-ZTP35P4B.js} +1 -1
  181. package/chunks/{chunk-E6FGMDFQ.js → chunk-ZU4UDIWX.js} +19 -1
  182. package/chunks/config-utils-JVGAP34H.js +113 -0
  183. package/chunks/contextCommand-XDB7OSO7.js +106 -0
  184. package/chunks/{core-runtime-PKNQ63VL.js → core-runtime-XHYA2RH7.js} +59 -61
  185. package/chunks/{create-sub-session-RVHSWVAP.js → create-sub-session-23ITIELI.js} +3 -3
  186. package/chunks/{create-sub-session-PLGPY6TV.js → create-sub-session-MHYCFNCM.js} +163 -84
  187. package/chunks/{cron-create-IJGVR5R2.js → cron-create-KJ4IY6PP.js} +57 -10
  188. package/chunks/{cron-delete-4N5BI6GL.js → cron-delete-MBLQCAYY.js} +4 -4
  189. package/chunks/{cron-list-2CATIPUX.js → cron-list-DWH2PQ47.js} +4 -4
  190. package/chunks/{daemon-NAYK4XXU.js → daemon-K5XS42ID.js} +516 -3
  191. package/chunks/{daemon-git-worktree-guard-LDBJXH2U.js → daemon-git-worktree-guard-V3P5XLHB.js} +56 -58
  192. package/chunks/daemon-status-provider-KKU7ZTLM.js +117 -0
  193. package/chunks/daemon-trust-policy-TZGK34DW.js +112 -0
  194. package/chunks/{daemon-trust-policy-monitor-IGEJPHQ4.js → daemon-trust-policy-monitor-F23DD2M4.js} +62 -64
  195. package/chunks/deferred-core-runtime-LKLGBCGZ.js +114 -0
  196. package/chunks/{display-image-DR55LL6M.js → display-image-BE7I6ZB6.js} +5 -5
  197. package/chunks/{dist-DJBNNPLN.js → dist-4WXLCBDR.js} +1 -1
  198. package/chunks/{dist-TJUDJTCB.js → dist-5VXFRTWU.js} +280 -48
  199. package/chunks/{dist-6H6RZ5H6.js → dist-6BPYWHVD.js} +89 -65
  200. package/chunks/{dist-ZBVOXSKF.js → dist-GFN5DCBX.js} +74 -65
  201. package/chunks/{dist-SATKXKUR.js → dist-HZNT6GQS.js} +1 -1
  202. package/chunks/{dist-FVJZSIO4.js → dist-LVZCXVPF.js} +72 -20
  203. package/chunks/{dist-7CKN54NL.js → dist-N6W6E753.js} +71 -64
  204. package/chunks/{dist-4Q7NTUNB.js → dist-QDLFKWOL.js} +2 -2
  205. package/chunks/{dist-UQUFZDIY.js → dist-SWQMYP2Q.js} +18 -16
  206. package/chunks/earlyInputCapture-NERYFYTR.js +107 -0
  207. package/chunks/{edit-KSPVUEAS.js → edit-ACCATIXB.js} +45 -47
  208. package/chunks/{en-6MDBWMTG.js → en-YLXBXM4Z.js} +2 -1
  209. package/chunks/{enter-worktree-UOZ6ZTP7.js → enter-worktree-35QCAAFP.js} +7 -7
  210. package/chunks/{enterPlanMode-DZTABSKN.js → enterPlanMode-NEN6EPVM.js} +44 -46
  211. package/chunks/{environment-JXOSW25V.js → environment-CKWHBC5T.js} +58 -60
  212. package/chunks/errors-XTZPNQ77.js +113 -0
  213. package/chunks/{exit-worktree-G2QATUCV.js → exit-worktree-XQD6D543.js} +7 -7
  214. package/chunks/exitPlanMode-CY344X5J.js +83 -0
  215. package/chunks/{fast-path-EBS7NAVL.js → fast-path-YSOX4PAM.js} +5 -5
  216. package/chunks/{gemini-JELEKOVS.js → gemini-VQY2YCPH.js} +110 -108
  217. package/chunks/{geminiContentGenerator-I2CKP7XI.js → geminiContentGenerator-PAPXNIGU.js} +8 -8
  218. package/chunks/{glob-TDVEVPQZ.js → glob-GVCUSBBF.js} +44 -46
  219. package/chunks/{goal-tools-CNVXMSZD.js → goal-tools-5STK6OXW.js} +10 -8
  220. package/chunks/{grep-3NLSS32D.js → grep-5GPICQBU.js} +6 -6
  221. package/chunks/handleAutoUpdate-ZJPJN42W.js +109 -0
  222. package/chunks/i18n-BZYKOST7.js +124 -0
  223. package/chunks/{image-gen-63NN2H5N.js → image-gen-J6FDGUZP.js} +8 -10
  224. package/chunks/initializer-GO2C5HE3.js +113 -0
  225. package/chunks/installationInfo-WM2GXQZ6.js +107 -0
  226. package/chunks/{keychain-token-storage-3MGFRYGM.js → keychain-token-storage-37XPR34V.js} +2 -2
  227. package/chunks/list-ERDJB7PQ.js +116 -0
  228. package/chunks/{list-agents-EXRSHIDJ.js → list-agents-DI3YFTDT.js} +2 -2
  229. package/chunks/loadedSettingsAdapter-7JOCVOKV.js +110 -0
  230. package/chunks/{loggingContentGenerator-CZWUAHAI.js → loggingContentGenerator-3ONLU3BS.js} +321 -30
  231. package/chunks/{loop-wakeup-XBPB2BRO.js → loop-wakeup-XJFONSQ7.js} +5 -5
  232. package/chunks/{ls-WFONAND2.js → ls-3VAT2J7A.js} +4 -4
  233. package/chunks/{lsp-DUKPDUXN.js → lsp-5W7IRUBH.js} +2 -2
  234. package/chunks/{managed-npm-update-54W23SP5.js → managed-npm-update-TLRCC2GE.js} +57 -59
  235. package/chunks/mcp-2LH3QXR2.js +110 -0
  236. package/chunks/{monitor-A4J5QRGJ.js → monitor-P7LDAL4W.js} +44 -46
  237. package/chunks/nonInteractiveCli-E5T7PZ27.js +184 -0
  238. package/chunks/{notebook-edit-4ANFZON5.js → notebook-edit-F7KSG4WQ.js} +45 -47
  239. package/chunks/{openaiContentGenerator-JCCJJQZC.js → openaiContentGenerator-2EXCZUGN.js} +26 -28
  240. package/chunks/pidfile-P25DWA5Q.js +111 -0
  241. package/chunks/process-registry-OAEG6WGC.js +662 -0
  242. package/chunks/{processUtils-JJAR56SO.js → processUtils-PVDKBL35.js} +2 -2
  243. package/chunks/prompt-terminal-ledger-AJ7T7OIV.js +105 -0
  244. package/chunks/{qwenContentGenerator-5JM44ZSA.js → qwenContentGenerator-TBBRLWIT.js} +49 -51
  245. package/chunks/{qwenOAuth2-JIYAWXTW.js → qwenOAuth2-OF5WRBQT.js} +7 -9
  246. package/chunks/{read-file-N3E5DY7N.js → read-file-6IIY4RLJ.js} +13 -13
  247. package/chunks/{read-mcp-resource-7A7NFSFL.js → read-mcp-resource-XD257PGJ.js} +2 -2
  248. package/chunks/{record-artifact-CPJ4IJSD.js → record-artifact-VW23GS4F.js} +4 -4
  249. package/chunks/{report-findings-VFM5DENC.js → report-findings-XA3FJG3N.js} +5 -5
  250. package/chunks/{request-shutdown-AXVOFN5C.js → request-shutdown-BCLA3JV2.js} +7 -7
  251. package/chunks/resumeHistoryUtils-44IETXDY.js +118 -0
  252. package/chunks/ripGrep-E7ESZ7SS.js +39 -0
  253. package/chunks/{run-qwen-serve-IWGPZADI.js → run-qwen-serve-DXBCYW7V.js} +356 -331
  254. package/chunks/{runtime-I76HPFUE.js → runtime-RUSPD35D.js} +67 -69
  255. package/chunks/scheduled-tasks-DVRJZO6I.js +127 -0
  256. package/chunks/{scheduler-M6YL4K4I.js → scheduler-TDRB2NSY.js} +58 -60
  257. package/chunks/{sdk-exporters-http-XXSKBD2C.js → sdk-exporters-http-TTU2CHBU.js} +2 -2
  258. package/chunks/{sdk-impl-VPNBLV7I.js → sdk-impl-UUMVYMAL.js} +11 -5
  259. package/chunks/{send-message-A2GXDX3B.js → send-message-AJ4OCUBV.js} +25 -9
  260. package/chunks/serve-KITOM7OR.js +118 -0
  261. package/chunks/{server-TWXRRREO.js → server-THCOMUC2.js} +5476 -4771
  262. package/chunks/{session-IT5ZXU7A.js → session-XKR5MPXE.js} +105 -106
  263. package/chunks/session-pr-refresh-KRBH7KDA.js +278 -0
  264. package/chunks/{settings-IX5HOOCG.js → settings-YXZ4XBKK.js} +61 -63
  265. package/chunks/{shell-LZ55AAJB.js → shell-5FJ2DZ3W.js} +44 -46
  266. package/chunks/{skill-WSZ53D2R.js → skill-VMMJZ6CJ.js} +71 -26
  267. package/chunks/skill-settings-7SG4YA2W.js +118 -0
  268. package/chunks/spawnChannel-BPMIXRBI.js +112 -0
  269. package/chunks/standalone-update-QN5HFRIC.js +118 -0
  270. package/chunks/{startInteractiveUI-O6BI2OSA.js → startInteractiveUI-5A7RQFRP.js} +2902 -2289
  271. package/chunks/{syntheticOutput-5AJ444QT.js → syntheticOutput-ML43GEFN.js} +3 -3
  272. package/chunks/{task-create-CDJSOEQD.js → task-create-QN4LYRSE.js} +11 -11
  273. package/chunks/{task-list-BELMPA75.js → task-list-JPLGK45U.js} +5 -5
  274. package/chunks/{task-stop-U3S3KZG2.js → task-stop-CXEH5L2D.js} +2 -2
  275. package/chunks/{task-update-77VCFDDZ.js → task-update-IWEOJFV2.js} +11 -11
  276. package/chunks/{team-create-UF4TMQEH.js → team-create-HVGVUL2L.js} +44 -46
  277. package/chunks/{team-delete-YWFXX77L.js → team-delete-RZVVSGCY.js} +5 -5
  278. package/chunks/{team-plan-approval-U57NSR6C.js → team-plan-approval-S5A5FQWU.js} +44 -46
  279. package/chunks/terminal-image-renderer-SIVPPXDI.js +114 -0
  280. package/chunks/theme-manager-TA33UZZX.js +102 -0
  281. package/chunks/{todoWrite-435EO2CS.js → todoWrite-WDJNQEMW.js} +43 -25
  282. package/chunks/{tool-search-SV35UV72.js → tool-search-NX7IPDKP.js} +18 -18
  283. package/chunks/total-session-admission-PWXZBOVX.js +114 -0
  284. package/chunks/{trustedFolders-YKK67IP3.js → trustedFolders-V6Y4CU3F.js} +57 -59
  285. package/chunks/{update-relaunch-DX7LVA4P.js → update-relaunch-CGSX3R37.js} +5 -5
  286. package/chunks/updateCheck-T5O2WGIB.js +118 -0
  287. package/chunks/useAutoAcceptIndicator-ULBJJWPY.js +120 -0
  288. package/chunks/{validateNonInterActiveAuth-B26O4YJP.js → validateNonInterActiveAuth-E5S2JSRC.js} +101 -102
  289. package/chunks/{version-K5D7VJ4B.js → version-LS5JPU36.js} +1 -1
  290. package/chunks/{web-fetch-VFHZLLNZ.js → web-fetch-RLMFZTS3.js} +16 -18
  291. package/chunks/{web-search-AQE5A4J5.js → web-search-LMCIC4N5.js} +9 -11
  292. package/chunks/{workflow-XL6AEUZ7.js → workflow-JBXU3IGA.js} +128 -94
  293. package/chunks/workspace-providers-status-525ORQBH.js +114 -0
  294. package/chunks/{workspace-registration-store-I4U3V5LL.js → workspace-registration-store-7Y44R4LV.js} +1 -1
  295. package/chunks/workspace-registry-HS4RWUSQ.js +123 -0
  296. package/chunks/workspace-service-7PXDM6EB.js +129 -0
  297. package/chunks/workspace-skills-status-FMJGC2XI.js +113 -0
  298. package/chunks/{workspace-trust-reconciler-GJ466KCE.js → workspace-trust-reconciler-3YTWSQBY.js} +70 -70
  299. package/chunks/write-file-BVQRYQQO.js +88 -0
  300. package/chunks/{zh-TW-MV4FWFB6.js → zh-TW-RPTMRTHG.js} +2 -1
  301. package/chunks/{zh-X3WGU6SI.js → zh-UNY63FR3.js} +2 -1
  302. package/chunks/{zoom-image-NYJPC3NI.js → zoom-image-FGCELNS4.js} +13 -13
  303. package/cli.js +14 -14
  304. package/locales/en.js +2 -0
  305. package/locales/zh-TW.js +2 -0
  306. package/locales/zh.js +2 -0
  307. package/package.json +3 -3
  308. package/web-shell/assets/{abnfDiagram-VCTEODGH-yq7z7Anb.js → abnfDiagram-VCTEODGH-2XZDeWYO.js} +1 -1
  309. package/web-shell/assets/{arc-CbJO0xnT.js → arc-B6UgMh90.js} +1 -1
  310. package/web-shell/assets/{architectureDiagram-5GKGNRK7-CRh89421.js → architectureDiagram-5GKGNRK7-DZgNFeN1.js} +1 -1
  311. package/web-shell/assets/{blockDiagram-NRAW4CY4-C75KAhKv.js → blockDiagram-NRAW4CY4-DQ2wvBFN.js} +1 -1
  312. package/web-shell/assets/{c4Diagram-UCG6FXSJ-BzlMveFB.js → c4Diagram-UCG6FXSJ-DMmQMrc4.js} +1 -1
  313. package/web-shell/assets/channel-D_TyfiTx.js +1 -0
  314. package/web-shell/assets/{chunk-2Q5K7J3B-DA8QDX3a.js → chunk-2Q5K7J3B-C8Zh2e9y.js} +1 -1
  315. package/web-shell/assets/{chunk-5VM5RSS4-Bgu7gQ7Y.js → chunk-5VM5RSS4-C3LTenP8.js} +1 -1
  316. package/web-shell/assets/{chunk-F27PBJKO-BOew7pIK.js → chunk-F27PBJKO-CxABOc8n.js} +1 -1
  317. package/web-shell/assets/{chunk-G27WJ6UU-DHx1I-hO.js → chunk-G27WJ6UU-CD_JxHDC.js} +1 -1
  318. package/web-shell/assets/{chunk-JWPE2WC7-SarFW0WU.js → chunk-JWPE2WC7-BdmZPmce.js} +1 -1
  319. package/web-shell/assets/{chunk-LCL6LL3I-BLzP083Z.js → chunk-LCL6LL3I-80bcHmfK.js} +1 -1
  320. package/web-shell/assets/{chunk-POPQ4Y6H-Bmkv_iKm.js → chunk-POPQ4Y6H-CNpLZyQF.js} +1 -1
  321. package/web-shell/assets/{chunk-SVP7TREG-MPx9r1N2.js → chunk-SVP7TREG-CXlKgMv3.js} +1 -1
  322. package/web-shell/assets/{chunk-XXDRQBXY-Ck-09rKG.js → chunk-XXDRQBXY-CivyYyvL.js} +1 -1
  323. package/web-shell/assets/classDiagram-DTDB5LWJ-Bw_H3xMd.js +1 -0
  324. package/web-shell/assets/classDiagram-v2-JRS7N3AN-Bw_H3xMd.js +1 -0
  325. package/web-shell/assets/{cose-bilkent-JH36ORCC-DWm6lfOG.js → cose-bilkent-JH36ORCC-COAjRH3w.js} +1 -1
  326. package/web-shell/assets/{cynefin-OW5HDTMX-DcBUyr5R.js → cynefin-OW5HDTMX-DqU1JHO6.js} +1 -1
  327. package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-Df8qmd_p.js → cynefinDiagram-5FMLGOSQ-BCLI1Bvj.js} +1 -1
  328. package/web-shell/assets/{dagre-3AP2YEHR-DDmGspD7.js → dagre-3AP2YEHR-DmAz8nqF.js} +1 -1
  329. package/web-shell/assets/{diagram-S7CK7UJ4-BK_qFvbi.js → diagram-S7CK7UJ4-Ck-5QLT5.js} +1 -1
  330. package/web-shell/assets/{diagram-UQ7AKVKN-Uw3AP_bi.js → diagram-UQ7AKVKN-C0ljX0mW.js} +1 -1
  331. package/web-shell/assets/{diagram-VSXAHHWV-CJOQKxY7.js → diagram-VSXAHHWV-DPgvT24v.js} +1 -1
  332. package/web-shell/assets/{diagram-VX7I27RA-DhdvZna5.js → diagram-VX7I27RA-D7hWr1LR.js} +1 -1
  333. package/web-shell/assets/{diagram-Z3DM3KII-edQU0nlP.js → diagram-Z3DM3KII-D59tlOta.js} +1 -1
  334. package/web-shell/assets/{ebnfDiagram-PWID7BFC-4kugBEsO.js → ebnfDiagram-PWID7BFC-CY2DDx00.js} +1 -1
  335. package/web-shell/assets/{erDiagram-SSCWMZ5O-BMkFivWO.js → erDiagram-SSCWMZ5O-AR4h8Q8k.js} +1 -1
  336. package/web-shell/assets/{flowDiagram-A5DVABFB-BM1ea8g-.js → flowDiagram-A5DVABFB-DbF0HqBz.js} +1 -1
  337. package/web-shell/assets/{ganttDiagram-EL5Y4UJY-CXj_cKRf.js → ganttDiagram-EL5Y4UJY-J52mrIhc.js} +1 -1
  338. package/web-shell/assets/{gitGraphDiagram-WWUBYQGX-D0nEqwqu.js → gitGraphDiagram-WWUBYQGX-CcgMY5EV.js} +1 -1
  339. package/web-shell/assets/index-BjUg3vPr.css +5 -0
  340. package/web-shell/assets/index-CFwYYVFU.js +1873 -0
  341. package/web-shell/assets/{index-B6JN54Pd.js → index-MQs7l15A.js} +1 -1
  342. package/web-shell/assets/{infoDiagram-RXCK75RN-DF7aGGbQ.js → infoDiagram-RXCK75RN-Buu3ibp2.js} +1 -1
  343. package/web-shell/assets/{ishikawaDiagram-5VMMS53U-CZYNX1lL.js → ishikawaDiagram-5VMMS53U-CoKQxnF3.js} +1 -1
  344. package/web-shell/assets/{journeyDiagram-EYS64GPL-CvrqMUz1.js → journeyDiagram-EYS64GPL-CxK35mTC.js} +1 -1
  345. package/web-shell/assets/{kanban-definition-3QL26DDD-BZNJQZBj.js → kanban-definition-3QL26DDD-tk2CHTQ1.js} +1 -1
  346. package/web-shell/assets/{layout-Bf83x7D6.js → layout-DEpMwb4u.js} +1 -1
  347. package/web-shell/assets/{linear-Bkc3ES2f.js → linear-DSQsLh53.js} +1 -1
  348. package/web-shell/assets/{mermaid.core-C6xuovwz.js → mermaid.core-DIZuPBQT.js} +6 -6
  349. package/web-shell/assets/{mindmap-definition-FBJOCRG2-DzH6gVRg.js → mindmap-definition-FBJOCRG2-CCAvk8r_.js} +1 -1
  350. package/web-shell/assets/{pegDiagram-XKGWAZYB-DCvLh2fa.js → pegDiagram-XKGWAZYB-CpJ28jxz.js} +1 -1
  351. package/web-shell/assets/{pieDiagram-E7YTZNPT-BtjVlx_6.js → pieDiagram-E7YTZNPT-ziJR2R32.js} +1 -1
  352. package/web-shell/assets/{quadrantDiagram-AXDQQJYC-IbroqxFe.js → quadrantDiagram-AXDQQJYC-B60zE3Mh.js} +1 -1
  353. package/web-shell/assets/{railroadDiagram-O6MQD6OU-BvMykiWW.js → railroadDiagram-O6MQD6OU-M3GqQ_g1.js} +1 -1
  354. package/web-shell/assets/{requirementDiagram-EFPCY7ZU-D-HHMyrh.js → requirementDiagram-EFPCY7ZU-ntCtYqTk.js} +1 -1
  355. package/web-shell/assets/{sankeyDiagram-P5KCCOFB-C0XXhB6d.js → sankeyDiagram-P5KCCOFB-AYLoItcZ.js} +1 -1
  356. package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-DseAXj5d.js → sequenceDiagram-WJ2MYXX4-DEWk4Mlj.js} +1 -1
  357. package/web-shell/assets/{sizeCapture-X5ZJPWSS-Cek2EweK.js → sizeCapture-X5ZJPWSS-OOWvzPay.js} +1 -1
  358. package/web-shell/assets/{stateDiagram-HBIQ2CUA-yLv8wafW.js → stateDiagram-HBIQ2CUA-BcMmvxem.js} +1 -1
  359. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-DRLLqPWO.js +1 -0
  360. package/web-shell/assets/{swimlanes-XN3QIQJK-Cwz-opvE.js → swimlanes-XN3QIQJK-DuZTWWvh.js} +1 -1
  361. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-DOfLQQYt.js +8 -0
  362. package/web-shell/assets/{timeline-definition-24CTP7MA-BJuFD7OG.js → timeline-definition-24CTP7MA-CjqtZXEd.js} +1 -1
  363. package/web-shell/assets/{vennDiagram-4TSXK5OY-CNAavdoV.js → vennDiagram-4TSXK5OY-knVCVkQ4.js} +1 -1
  364. package/web-shell/assets/{wardleyDiagram-VM6X3IG4-DaIjAidq.js → wardleyDiagram-VM6X3IG4-yoWhw0a2.js} +1 -1
  365. package/web-shell/assets/{xychartDiagram-S5SC5T6Z-DkcQXjTy.js → xychartDiagram-S5SC5T6Z-ue14E_gL.js} +1 -1
  366. package/web-shell/index.html +3 -3
  367. package/chunks/MaxSizedBox-UUTUE42J.js +0 -112
  368. package/chunks/agent-headless-32O4L2CT.js +0 -87
  369. package/chunks/bridge-DFX2FFH4.js +0 -119
  370. package/chunks/channel-settings-store-ELLH2M4M.js +0 -117
  371. package/chunks/chunk-I6VVOZDK.js +0 -202
  372. package/chunks/chunk-JS73NNWF.js +0 -30
  373. package/chunks/chunk-K2OJUPOE.js +0 -78
  374. package/chunks/chunk-P3QQPMQA.js +0 -19
  375. package/chunks/chunk-SDVF6A42.js +0 -945
  376. package/chunks/chunk-VGHZT6JR.js +0 -51
  377. package/chunks/config-utils-7M6PCTLT.js +0 -113
  378. package/chunks/contextCommand-G4QG3TW6.js +0 -108
  379. package/chunks/daemon-status-provider-F5FEHVVG.js +0 -118
  380. package/chunks/daemon-trust-policy-C6YTU5CQ.js +0 -114
  381. package/chunks/deferred-core-runtime-GHT3GDOR.js +0 -116
  382. package/chunks/earlyInputCapture-HOSJTLWP.js +0 -109
  383. package/chunks/errors-IOXFDE4J.js +0 -115
  384. package/chunks/exitPlanMode-PZG4FXRB.js +0 -85
  385. package/chunks/handleAutoUpdate-AWAGHKOX.js +0 -111
  386. package/chunks/i18n-CYA25C5F.js +0 -126
  387. package/chunks/initializer-JD2FLNLO.js +0 -115
  388. package/chunks/installationInfo-N3DCWVWR.js +0 -109
  389. package/chunks/list-XDQAUET5.js +0 -118
  390. package/chunks/loadedSettingsAdapter-IK7H5JRK.js +0 -112
  391. package/chunks/mcp-2E7ZLMEE.js +0 -112
  392. package/chunks/nonInteractiveCli-ZNDXB62Y.js +0 -185
  393. package/chunks/pidfile-DHV2Y7UD.js +0 -113
  394. package/chunks/process-registry-PMJOA5CO.js +0 -172
  395. package/chunks/prompt-terminal-ledger-LDZ6QVYA.js +0 -107
  396. package/chunks/resumeHistoryUtils-YQRITQAG.js +0 -120
  397. package/chunks/ripGrep-NEIHKBKB.js +0 -39
  398. package/chunks/serve-XY5S63GN.js +0 -120
  399. package/chunks/skill-settings-5U7FTJIK.js +0 -120
  400. package/chunks/spawnChannel-TMC6VXGN.js +0 -113
  401. package/chunks/standalone-update-CUYGWTR4.js +0 -120
  402. package/chunks/terminal-image-renderer-DRL3BROJ.js +0 -116
  403. package/chunks/theme-manager-HHJPUDRN.js +0 -104
  404. package/chunks/total-session-admission-TQI7TCTL.js +0 -114
  405. package/chunks/updateCheck-6JRTKTUF.js +0 -120
  406. package/chunks/useAutoAcceptIndicator-MYXYSKSL.js +0 -122
  407. package/chunks/workspace-providers-status-H6TG34YV.js +0 -116
  408. package/chunks/workspace-registry-2PWNIYNI.js +0 -123
  409. package/chunks/workspace-service-4FGTUJLA.js +0 -131
  410. package/chunks/workspace-skills-status-7VOLUDT6.js +0 -115
  411. package/chunks/write-file-PWOYCT2K.js +0 -90
  412. package/web-shell/assets/channel-B3sGR79J.js +0 -1
  413. package/web-shell/assets/classDiagram-DTDB5LWJ-sTGo0K3v.js +0 -1
  414. package/web-shell/assets/classDiagram-v2-JRS7N3AN-sTGo0K3v.js +0 -1
  415. package/web-shell/assets/index-C-XlQn24.css +0 -5
  416. package/web-shell/assets/index-DLjXM0dn.js +0 -1860
  417. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-DeThXnol.js +0 -1
  418. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-GW0R1ZSv.js +0 -8
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-NYWWQ437.js";
6
6
  import {
7
7
  SessionNotFoundError
8
- } from "./chunk-624NHDGB.js";
8
+ } from "./chunk-ERFDKH32.js";
9
9
  import {
10
10
  init_esbuild_shims
11
11
  } from "./chunk-5O2XNYP6.js";
@@ -42,6 +42,7 @@ function createWorkspaceGenerationGuard() {
42
42
  __name(createWorkspaceGenerationGuard, "createWorkspaceGenerationGuard");
43
43
  function createWorkspaceSessionOwnerIndex() {
44
44
  const bySessionId = /* @__PURE__ */ new Map();
45
+ const unavailableWorkspaces = /* @__PURE__ */ new Set();
45
46
  const register = /* @__PURE__ */ __name((sessionId, workspaceCwd) => {
46
47
  let owners = bySessionId.get(sessionId);
47
48
  if (!owners) {
@@ -52,9 +53,15 @@ function createWorkspaceSessionOwnerIndex() {
52
53
  }, "register");
53
54
  const remove = /* @__PURE__ */ __name((sessionId, workspaceCwd) => {
54
55
  if (workspaceCwd === void 0) {
55
- bySessionId.delete(sessionId);
56
+ const owners2 = bySessionId.get(sessionId);
57
+ if (!owners2) return;
58
+ for (const owner of owners2) {
59
+ if (!unavailableWorkspaces.has(owner)) owners2.delete(owner);
60
+ }
61
+ if (owners2.size === 0) bySessionId.delete(sessionId);
56
62
  return;
57
63
  }
64
+ if (unavailableWorkspaces.has(workspaceCwd)) return;
58
65
  const owners = bySessionId.get(sessionId);
59
66
  if (!owners) return;
60
67
  owners.delete(workspaceCwd);
@@ -66,7 +73,12 @@ function createWorkspaceSessionOwnerIndex() {
66
73
  register,
67
74
  remove,
68
75
  getWorkspaceCwds: /* @__PURE__ */ __name((sessionId) => [...bySessionId.get(sessionId) ?? []], "getWorkspaceCwds"),
76
+ markWorkspaceUnavailable: /* @__PURE__ */ __name((workspaceCwd) => {
77
+ unavailableWorkspaces.add(workspaceCwd);
78
+ }, "markWorkspaceUnavailable"),
79
+ isWorkspaceUnavailable: /* @__PURE__ */ __name((workspaceCwd) => unavailableWorkspaces.has(workspaceCwd), "isWorkspaceUnavailable"),
69
80
  removeWorkspace: /* @__PURE__ */ __name((workspaceCwd) => {
81
+ if (unavailableWorkspaces.has(workspaceCwd)) return;
70
82
  for (const [sessionId, owners] of bySessionId) {
71
83
  owners.delete(workspaceCwd);
72
84
  if (owners.size === 0) bySessionId.delete(sessionId);
@@ -345,7 +357,9 @@ function createWorkspaceRegistry(inputRuntimes, options = {}) {
345
357
  const entry = entryForRuntime(runtime);
346
358
  if (!entry || runtime.primary || entry.state !== "draining") return;
347
359
  entry.current?.guard.close();
348
- if (!entry.internal) {
360
+ if (entry.internal) {
361
+ sessionOwnerIndex?.markWorkspaceUnavailable(runtime.workspaceCwd);
362
+ } else {
349
363
  sessionOwnerIndex?.removeWorkspace(runtime.workspaceCwd);
350
364
  }
351
365
  }, "commitDrain"),
@@ -358,7 +372,9 @@ function createWorkspaceRegistry(inputRuntimes, options = {}) {
358
372
  byId.delete(runtime.workspaceId);
359
373
  const index = entries.indexOf(entry);
360
374
  if (index >= 0) entries.splice(index, 1);
361
- sessionOwnerIndex?.removeWorkspace(runtime.workspaceCwd);
375
+ if (!entry.internal) {
376
+ sessionOwnerIndex?.removeWorkspace(runtime.workspaceCwd);
377
+ }
362
378
  }, "completeDrain"),
363
379
  resolveLiveSessionOwner: /* @__PURE__ */ __name((sessionId) => {
364
380
  const indexedCwds = sessionOwnerIndex?.getWorkspaceCwds(sessionId) ?? [];
@@ -369,6 +385,10 @@ function createWorkspaceRegistry(inputRuntimes, options = {}) {
369
385
  const entry = byCwd.get(workspaceCwd);
370
386
  const runtime = entry?.current?.runtime;
371
387
  if (!entry || !runtime || entry.state === "removed") {
388
+ if (sessionOwnerIndex?.isWorkspaceUnavailable(workspaceCwd)) {
389
+ internalUnavailable = true;
390
+ continue;
391
+ }
372
392
  sessionOwnerIndex?.remove(sessionId, workspaceCwd);
373
393
  continue;
374
394
  }
@@ -2,26 +2,26 @@
2
2
  "use strict";
3
3
  import {
4
4
  getExtensionManager
5
- } from "./chunk-A7X32SCT.js";
5
+ } from "./chunk-6ZZBRRKQ.js";
6
6
  import {
7
7
  parseChannelConfig
8
- } from "./chunk-EAV3TENS.js";
8
+ } from "./chunk-QPTRRPZU.js";
9
9
  import {
10
10
  getPlugin,
11
11
  registerPlugin
12
- } from "./chunk-IKN3IUJP.js";
12
+ } from "./chunk-Y4TPOUEV.js";
13
13
  import {
14
14
  sanitizeLogText
15
- } from "./chunk-E55H6BZ7.js";
15
+ } from "./chunk-ICURCKIU.js";
16
16
  import {
17
17
  loadSettings
18
- } from "./chunk-MDZO5V2O.js";
18
+ } from "./chunk-HPXV655A.js";
19
19
  import {
20
20
  hashDaemonWorkspace
21
- } from "./chunk-ILPXSKGQ.js";
21
+ } from "./chunk-3WK3QDNV.js";
22
22
  import {
23
23
  Storage
24
- } from "./chunk-2NNTE2ED.js";
24
+ } from "./chunk-UHQFIS7N.js";
25
25
  import {
26
26
  writeStderrLine,
27
27
  writeStdoutLine
@@ -26,7 +26,8 @@ function mapSkillConfigToStatus(skill, disablements = /* @__PURE__ */ new Map(),
26
26
  installedPath: skill.filePath,
27
27
  ...skill.argumentHint ? { argumentHint: skill.argumentHint } : {},
28
28
  ...skill.model ? { model: skill.model } : {},
29
- ...skill.extensionName ? { extensionName: skill.extensionName } : {}
29
+ ...skill.level === "extension" && skill.extensionName ? { extensionName: skill.extensionName } : {},
30
+ ...skill.level === "extension" && skill.extensionDisplayName ? { extensionDisplayName: skill.extensionDisplayName } : {}
30
31
  };
31
32
  }
32
33
  __name(mapSkillConfigToStatus, "mapSkillConfigToStatus");
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  createDebugLogger
5
- } from "./chunk-2NNTE2ED.js";
5
+ } from "./chunk-UHQFIS7N.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
  theme
5
- } from "./chunk-FPH6TXD3.js";
5
+ } from "./chunk-WAOIHTJS.js";
6
6
  import {
7
7
  require_jsx_runtime
8
8
  } from "./chunk-SV5PQVQE.js";
@@ -21,7 +21,7 @@ import {
21
21
  } from "./chunk-2MIN6GRR.js";
22
22
  import {
23
23
  createDebugLogger
24
- } from "./chunk-2NNTE2ED.js";
24
+ } from "./chunk-UHQFIS7N.js";
25
25
  import {
26
26
  init_esbuild_shims
27
27
  } from "./chunk-5O2XNYP6.js";
@@ -2,14 +2,14 @@
2
2
  "use strict";
3
3
  import {
4
4
  STATUS_SCHEMA_VERSION
5
- } from "./chunk-CITGRGCM.js";
5
+ } from "./chunk-7TUBJBBJ.js";
6
6
  import {
7
7
  formatMemoryUsage
8
- } from "./chunk-XYX474JQ.js";
8
+ } from "./chunk-EWIQ3NAE.js";
9
9
  import {
10
10
  detectRuntime,
11
11
  redactProxyCredentials
12
- } from "./chunk-GTUKW3I6.js";
12
+ } from "./chunk-PPKZ7JOE.js";
13
13
  import {
14
14
  init_esbuild_shims
15
15
  } from "./chunk-5O2XNYP6.js";
@@ -2,13 +2,13 @@
2
2
  "use strict";
3
3
  import {
4
4
  hasControlCharacter
5
- } from "./chunk-SKNVVYIJ.js";
5
+ } from "./chunk-K5KXUXWC.js";
6
6
  import {
7
7
  BaseDeclarativeTool,
8
8
  BaseToolInvocation,
9
9
  ToolDisplayNames,
10
10
  ToolNames
11
- } from "./chunk-KOJ6MHD5.js";
11
+ } from "./chunk-UTLCH2FK.js";
12
12
  import {
13
13
  init_esbuild_shims
14
14
  } from "./chunk-5O2XNYP6.js";
@@ -3,7 +3,7 @@
3
3
  import {
4
4
  createDebugLogger,
5
5
  isNodeError
6
- } from "./chunk-2NNTE2ED.js";
6
+ } from "./chunk-UHQFIS7N.js";
7
7
  import {
8
8
  init_esbuild_shims
9
9
  } from "./chunk-5O2XNYP6.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  createDebugLogger
5
- } from "./chunk-2NNTE2ED.js";
5
+ } from "./chunk-UHQFIS7N.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -7,6 +7,66 @@ import {
7
7
  __name
8
8
  } from "./chunk-J2S4EL5Y.js";
9
9
 
10
+ // packages/core/src/utils/thoughtUtils.ts
11
+ init_esbuild_shims();
12
+ var START_DELIMITER = "**";
13
+ var END_DELIMITER = "**";
14
+ var OPENAI_REASONING_THOUGHT_MARKER = Symbol("openaiReasoningThought");
15
+ function createOpenAIReasoningThoughtPart(text) {
16
+ const part = { text, thought: true };
17
+ Object.defineProperty(part, OPENAI_REASONING_THOUGHT_MARKER, {
18
+ value: true
19
+ });
20
+ return part;
21
+ }
22
+ __name(createOpenAIReasoningThoughtPart, "createOpenAIReasoningThoughtPart");
23
+ function isOpenAIReasoningThoughtPart(part) {
24
+ return Boolean(
25
+ part[OPENAI_REASONING_THOUGHT_MARKER]
26
+ );
27
+ }
28
+ __name(isOpenAIReasoningThoughtPart, "isOpenAIReasoningThoughtPart");
29
+ function parseThought(rawText) {
30
+ const startIndex = rawText.indexOf(START_DELIMITER);
31
+ if (startIndex === -1) {
32
+ return { subject: "", description: rawText };
33
+ }
34
+ const endIndex = rawText.indexOf(
35
+ END_DELIMITER,
36
+ startIndex + START_DELIMITER.length
37
+ );
38
+ if (endIndex === -1) {
39
+ return { subject: "", description: rawText };
40
+ }
41
+ const subject = rawText.substring(startIndex + START_DELIMITER.length, endIndex).trim();
42
+ const description = (rawText.substring(0, startIndex) + rawText.substring(endIndex + END_DELIMITER.length)).trim();
43
+ return { subject, description };
44
+ }
45
+ __name(parseThought, "parseThought");
46
+ function getThoughtSummary(response) {
47
+ if (response.candidates && response.candidates.length > 0) {
48
+ const candidate = response.candidates[0];
49
+ if (candidate.content && candidate.content.parts && candidate.content.parts.length > 0) {
50
+ const thoughtParts = candidate.content.parts.filter(
51
+ (part) => part.thought
52
+ );
53
+ if (thoughtParts.length === 0) {
54
+ return null;
55
+ }
56
+ const thoughtText = thoughtParts.map((part) => part.text ?? "").join("");
57
+ if (!thoughtText) {
58
+ return null;
59
+ }
60
+ if (thoughtParts.some(isOpenAIReasoningThoughtPart)) {
61
+ return { subject: "", description: thoughtText };
62
+ }
63
+ return parseThought(thoughtText);
64
+ }
65
+ }
66
+ return null;
67
+ }
68
+ __name(getThoughtSummary, "getThoughtSummary");
69
+
10
70
  // packages/core/src/core/openaiContentGenerator/prefix-caching.ts
11
71
  init_esbuild_shims();
12
72
  var CACHE_KEY_PREFIX = "qwen-code:";
@@ -81,10 +141,17 @@ function applyOfficialOpenAIPromptCaching(request, sessionId, cacheSharing, cach
81
141
  __name(applyOfficialOpenAIPromptCaching, "applyOfficialOpenAIPromptCaching");
82
142
 
83
143
  export {
144
+ createOpenAIReasoningThoughtPart,
145
+ getThoughtSummary,
84
146
  supportsOpenAIPrefixCaching,
85
147
  isOfficialOpenAIEndpoint,
86
148
  applyOfficialOpenAIPromptCaching
87
149
  };
150
+ /**
151
+ * @license
152
+ * Copyright 2025 Google LLC
153
+ * SPDX-License-Identifier: Apache-2.0
154
+ */
88
155
  /**
89
156
  * @license
90
157
  * Copyright 2025 Qwen
@@ -2,19 +2,19 @@
2
2
  "use strict";
3
3
  import {
4
4
  loadSettings
5
- } from "./chunk-MDZO5V2O.js";
5
+ } from "./chunk-HPXV655A.js";
6
6
  import {
7
7
  getCurrentLanguage
8
- } from "./chunk-W2WRNJKX.js";
8
+ } from "./chunk-RWZB422L.js";
9
9
  import {
10
10
  isWorkspaceTrusted
11
- } from "./chunk-XNXWEGKB.js";
11
+ } from "./chunk-CYAUBK46.js";
12
12
  import {
13
13
  require_strip_json_comments
14
14
  } from "./chunk-NPQ5ZKRP.js";
15
15
  import {
16
16
  hashMcpServerConfig
17
- } from "./chunk-VMDURMFY.js";
17
+ } from "./chunk-W6DUQ5GA.js";
18
18
  import {
19
19
  Config,
20
20
  ExtensionManager,
@@ -25,14 +25,18 @@ import {
25
25
  isGatedMcpScope,
26
26
  normalizeClaudeMcpServer,
27
27
  runWithTimeout
28
- } from "./chunk-XYX474JQ.js";
28
+ } from "./chunk-EWIQ3NAE.js";
29
+ import {
30
+ getMCPServerLastError,
31
+ getMCPServerStatus
32
+ } from "./chunk-SZLBBZH4.js";
29
33
  import {
30
34
  atomicWriteFile
31
- } from "./chunk-7QGEJI7M.js";
35
+ } from "./chunk-23RFD54N.js";
32
36
  import {
33
37
  Storage,
34
38
  getErrorMessage
35
- } from "./chunk-2NNTE2ED.js";
39
+ } from "./chunk-UHQFIS7N.js";
36
40
  import {
37
41
  writeStderrLine,
38
42
  writeStdoutLine
@@ -770,6 +774,8 @@ async function createMinimalConfig() {
770
774
  fileFiltering?.customIgnoreFiles
771
775
  );
772
776
  const mcpServers = await getMcpServersFromConfig2();
777
+ const allowedMcpServers = settings.merged.mcp?.allowed ? new Set(settings.merged.mcp.allowed.filter(Boolean)) : void 0;
778
+ const excludedMcpServers = settings.merged.mcp?.excluded ? new Set(settings.merged.mcp.excluded.filter(Boolean)) : void 0;
773
779
  const config = new Config({
774
780
  sessionId: "mcp-reconnect",
775
781
  targetDir: cwd,
@@ -780,18 +786,74 @@ async function createMinimalConfig() {
780
786
  pendingMcpServers: getPendingGatedMcpServers(mcpServers, cwd),
781
787
  fileDiscoveryService: fileService,
782
788
  mcpServerCommand: settings.merged.mcp?.serverCommand,
789
+ allowedMcpServers: allowedMcpServers ? Array.from(allowedMcpServers) : void 0,
790
+ excludedMcpServers: excludedMcpServers ? Array.from(excludedMcpServers) : void 0,
791
+ // Mirror a real session's trust gate: discovery skips MCP servers in an
792
+ // untrusted workspace, so the throwaway Config must carry the same trust
793
+ // state. Without it `isTrustedFolder()` defaults to true here, the
794
+ // untrusted-skip reporting below becomes unreachable, and this command
795
+ // would attempt connections a normal session would not (issue #9944).
796
+ trustedFolder: isWorkspaceTrusted(settings.merged).isTrusted ?? true,
783
797
  ...fileFiltering !== void 0 ? { fileFiltering } : {}
784
798
  });
785
- await config.initialize();
799
+ await config.initialize({ skipMcpDiscovery: true });
786
800
  return config;
787
801
  }
788
802
  __name(createMinimalConfig, "createMinimalConfig");
803
+ var SkippedConnectionError = class extends Error {
804
+ static {
805
+ __name(this, "SkippedConnectionError");
806
+ }
807
+ skipReason;
808
+ constructor(skipReason) {
809
+ super(`no connection attempt was made: ${skipReason}`);
810
+ this.name = "SkippedConnectionError";
811
+ this.skipReason = skipReason;
812
+ }
813
+ };
814
+ var SESSION_SCOPE_NOTE = "Note: this command reconnects in a separate process; it cannot refresh the MCP tools of an already-running Qwen Code session. Restart that session if its tools remain unavailable.";
789
815
  function createReconnectError(message, exitCode = 1) {
790
816
  const error = new Error(message);
791
817
  error.exitCode = exitCode;
792
818
  return error;
793
819
  }
794
820
  __name(createReconnectError, "createReconnectError");
821
+ function describeSkippedConnectionReason(config, serverName) {
822
+ const unavailableReason = config.getMcpServerUnavailableReason(serverName);
823
+ if (unavailableReason === "excluded") {
824
+ return "server is excluded in settings (mcp.excluded)";
825
+ }
826
+ if (unavailableReason === "not_allowed") {
827
+ return "server is not in the mcp.allowed list";
828
+ }
829
+ if (config.isMcpServerDisabled(serverName)) {
830
+ return "server is disabled in settings";
831
+ }
832
+ if (config.isMcpServerPendingApproval(serverName)) {
833
+ return "server is pending approval (.mcp.json)";
834
+ }
835
+ if (config.isTrustedFolder() === false) {
836
+ return "workspace folder is not trusted";
837
+ }
838
+ return void 0;
839
+ }
840
+ __name(describeSkippedConnectionReason, "describeSkippedConnectionReason");
841
+ async function discoverAndVerifyConnection(config, serverName) {
842
+ const toolRegistry = config.getToolRegistry();
843
+ await toolRegistry.discoverToolsForServer(serverName);
844
+ const status = getMCPServerStatus(serverName);
845
+ if (status !== "connected" /* CONNECTED */) {
846
+ const skippedReason = describeSkippedConnectionReason(config, serverName);
847
+ if (skippedReason) {
848
+ throw new SkippedConnectionError(skippedReason);
849
+ }
850
+ const lastError = getMCPServerLastError(serverName);
851
+ throw new Error(
852
+ `connection attempt finished without a live connection (status: ${status})` + (lastError ? `: ${lastError}` : "")
853
+ );
854
+ }
855
+ }
856
+ __name(discoverAndVerifyConnection, "discoverAndVerifyConnection");
795
857
  async function reconnectMcpServer(serverName) {
796
858
  const mcpServers = await getMcpServersFromConfig2();
797
859
  if (!mcpServers[serverName]) {
@@ -800,17 +862,22 @@ async function reconnectMcpServer(serverName) {
800
862
  );
801
863
  }
802
864
  writeStdoutLine(`Reconnecting to server "${serverName}"...`);
865
+ let config;
803
866
  try {
804
- const config = await createMinimalConfig();
805
- const toolRegistry = config.getToolRegistry();
806
- await toolRegistry.discoverToolsForServer(serverName);
867
+ config = await createMinimalConfig();
868
+ await discoverAndVerifyConnection(config, serverName);
807
869
  writeStdoutLine(`Successfully reconnected to server "${serverName}".`);
808
- await config.shutdown();
870
+ writeStdoutLine(SESSION_SCOPE_NOTE);
809
871
  } catch (error) {
810
872
  const message = error instanceof Error ? error.message : String(error);
873
+ writeStdoutLine(SESSION_SCOPE_NOTE);
811
874
  throw createReconnectError(
812
875
  `Failed to reconnect to server "${serverName}": ${message}`
813
876
  );
877
+ } finally {
878
+ if (config) {
879
+ await config.shutdown();
880
+ }
814
881
  }
815
882
  }
816
883
  __name(reconnectMcpServer, "reconnectMcpServer");
@@ -830,23 +897,35 @@ async function reconnectAllMcpServers() {
830
897
  }
831
898
  writeStdoutLine("Reconnecting to all MCP servers...\n");
832
899
  let config;
900
+ let failedCount = 0;
833
901
  try {
834
902
  config = await createMinimalConfig();
835
- const toolRegistry = config.getToolRegistry();
836
903
  for (const serverName of serverNames) {
837
904
  try {
838
- await toolRegistry.discoverToolsForServer(serverName);
905
+ await discoverAndVerifyConnection(config, serverName);
839
906
  writeStdoutLine(`\u2713 ${serverName}: Reconnected successfully`);
840
907
  } catch (error) {
908
+ if (error instanceof SkippedConnectionError) {
909
+ writeStdoutLine(`- ${serverName}: Skipped - ${error.skipReason}`);
910
+ continue;
911
+ }
912
+ failedCount++;
841
913
  const message = error instanceof Error ? error.message : String(error);
842
914
  writeStdoutLine(`\u2717 ${serverName}: Failed - ${message}`);
843
915
  }
844
916
  }
917
+ writeStdoutLine("");
918
+ writeStdoutLine(SESSION_SCOPE_NOTE);
845
919
  } finally {
846
920
  if (config) {
847
921
  await config.shutdown();
848
922
  }
849
923
  }
924
+ if (failedCount > 0) {
925
+ throw createReconnectError(
926
+ `Failed to reconnect ${failedCount} of ${serverNames.length} configured server(s).`
927
+ );
928
+ }
850
929
  }
851
930
  __name(reconnectAllMcpServers, "reconnectAllMcpServers");
852
931
  var reconnectCommand = {
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-RKUWKYED.js";
7
7
  import {
8
8
  createDebugLogger
9
- } from "./chunk-2NNTE2ED.js";
9
+ } from "./chunk-UHQFIS7N.js";
10
10
  import {
11
11
  init_esbuild_shims
12
12
  } from "./chunk-5O2XNYP6.js";
@@ -1,15 +1,15 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
- import {
4
- resolveChannelCwd
5
- } from "./chunk-7JPW6IYH.js";
6
3
  import {
7
4
  getPlugin,
8
5
  supportedTypes
9
- } from "./chunk-IKN3IUJP.js";
6
+ } from "./chunk-Y4TPOUEV.js";
7
+ import {
8
+ resolveChannelCwd
9
+ } from "./chunk-HVC3PNVC.js";
10
10
  import {
11
11
  APPROVAL_MODES
12
- } from "./chunk-BVE5EMIG.js";
12
+ } from "./chunk-V5J4J5TP.js";
13
13
  import {
14
14
  init_esbuild_shims
15
15
  } from "./chunk-5O2XNYP6.js";
@@ -57,6 +57,26 @@ function resolveOptionalStringField(channelName, rawConfig, field, envResolution
57
57
  }
58
58
  __name(resolveOptionalStringField, "resolveOptionalStringField");
59
59
  var KNOWN_CREDENTIAL_FIELDS = /* @__PURE__ */ new Set(["token", "clientId", "clientSecret"]);
60
+ function multiSessionCompatibilityError(name, config) {
61
+ if (!config.multiSession) return void 0;
62
+ if (config.sessionScope !== "user") {
63
+ return `Channel "${name}" requires sessionScope "user" when multiSession is enabled.`;
64
+ }
65
+ if (typeof config.groupHistoryLimit === "number" && config.groupHistoryLimit !== 0) {
66
+ return `Channel "${name}" cannot use groupHistoryLimit when multiSession is enabled.`;
67
+ }
68
+ for (const [groupId, group] of Object.entries(config.groups ?? {})) {
69
+ const groupHistoryLimit = group !== null && typeof group === "object" && !Array.isArray(group) ? group["groupHistoryLimit"] : void 0;
70
+ if (typeof groupHistoryLimit === "number" && groupHistoryLimit !== 0) {
71
+ return `Channel "${name}" group "${groupId}" cannot use groupHistoryLimit when multiSession is enabled.`;
72
+ }
73
+ }
74
+ if (config.webhooks !== void 0 && config.webhooks !== null) {
75
+ return `Channel "${name}" cannot use webhooks when multiSession is enabled.`;
76
+ }
77
+ return void 0;
78
+ }
79
+ __name(multiSessionCompatibilityError, "multiSessionCompatibilityError");
60
80
  function resolveConfigEnvVar(value, mode) {
61
81
  if (mode === false) return value;
62
82
  if (value.startsWith("$$")) return value.substring(1);
@@ -359,6 +379,21 @@ async function parseChannelConfig(name, rawConfig, defaultCwd = process.cwd(), o
359
379
  envResolution
360
380
  );
361
381
  const configuredSessionScope = rawConfig["sessionScope"] || plugin.defaultSessionScope || "user";
382
+ const multiSession = optionalBooleanField(
383
+ name,
384
+ "multiSession",
385
+ rawConfig["multiSession"]
386
+ );
387
+ const groups = rawConfig["groups"] || {};
388
+ const webhooks = parseWebhookConfig(name, rawConfig);
389
+ const multiSessionError = multiSessionCompatibilityError(name, {
390
+ multiSession,
391
+ sessionScope: configuredSessionScope,
392
+ groupHistoryLimit: rawConfig["groupHistoryLimit"],
393
+ groups,
394
+ webhooks
395
+ });
396
+ if (multiSessionError) throw new Error(multiSessionError);
362
397
  return {
363
398
  ...resolvedRawConfig,
364
399
  type: channelType,
@@ -368,6 +403,7 @@ async function parseChannelConfig(name, rawConfig, defaultCwd = process.cwd(), o
368
403
  senderPolicy: rawConfig["senderPolicy"] || "allowlist",
369
404
  allowedUsers: rawConfig["allowedUsers"] || [],
370
405
  sessionScope: configuredSessionScope,
406
+ multiSession,
371
407
  cwd: resolveChannelCwd(rawConfig["cwd"], defaultCwd),
372
408
  approvalMode: parseApprovalModeConfig(name, rawConfig),
373
409
  instructions: rawConfig["instructions"],
@@ -380,14 +416,15 @@ async function parseChannelConfig(name, rawConfig, defaultCwd = process.cwd(), o
380
416
  model: rawConfig["model"],
381
417
  groupPolicy: rawConfig["groupPolicy"] || "disabled",
382
418
  dmPolicy: rawConfig["dmPolicy"] || "open",
383
- groups: rawConfig["groups"] || {},
384
- webhooks: parseWebhookConfig(name, rawConfig)
419
+ groups,
420
+ webhooks
385
421
  };
386
422
  }
387
423
  __name(parseChannelConfig, "parseChannelConfig");
388
424
 
389
425
  export {
390
426
  resolveEnvVars,
427
+ multiSessionCompatibilityError,
391
428
  parseChannelWebhookConfig,
392
429
  parseChannelWebhookConfigLenient,
393
430
  parseChannelConfig