@qwen-code/qwen-code 0.22.3-nightly.20260831.3a0c4c6108 → 0.23.0

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 (381) hide show
  1. package/README.md +30 -0
  2. package/bundled/computer-use/SKILL.md +116 -180
  3. package/bundled/goal-draft/SKILL.md +5 -1
  4. package/bundled/qc-helper/docs/configuration/model-providers.md +4 -0
  5. package/bundled/qc-helper/docs/configuration/settings.md +53 -50
  6. package/bundled/qc-helper/docs/features/_meta.ts +1 -0
  7. package/bundled/qc-helper/docs/features/channels/dingtalk.md +4 -2
  8. package/bundled/qc-helper/docs/features/channels/dws.md +6 -2
  9. package/bundled/qc-helper/docs/features/channels/overview.md +1 -0
  10. package/bundled/qc-helper/docs/features/commands.md +38 -1
  11. package/bundled/qc-helper/docs/features/computer-use.md +2 -2
  12. package/bundled/qc-helper/docs/features/goals.md +9 -3
  13. package/bundled/qc-helper/docs/features/headless.md +16 -1
  14. package/bundled/qc-helper/docs/features/hooks.md +2 -1
  15. package/bundled/qc-helper/docs/features/output-styles.md +38 -0
  16. package/bundled/qc-helper/docs/qwen-serve.md +15 -0
  17. package/bundled/review/SKILL.md +5 -5
  18. package/bundled/review/references/posting.md +2 -2
  19. package/chunks/{MaxSizedBox-IHRTWGSY.js → MaxSizedBox-B3D7545A.js} +41 -45
  20. package/chunks/{StandaloneSessionPicker-TLVWVTJ7.js → StandaloneSessionPicker-QUMO4LLQ.js} +64 -67
  21. package/chunks/{acpAgent-7I5LLPP3.js → acpAgent-2GTFCIEP.js} +771 -248
  22. package/chunks/{agent-4Z4NTJXD.js → agent-XKF5SZWU.js} +26 -30
  23. package/chunks/{agent-headless-TVUJXQWU.js → agent-headless-OC2IB55D.js} +26 -30
  24. package/chunks/{anthropicContentGenerator-VSSPG7XV.js → anthropicContentGenerator-L76MR5OR.js} +14 -14
  25. package/chunks/{artifact-tool-TEYW6I4A.js → artifact-tool-MYCL2QCS.js} +2 -3
  26. package/chunks/{askUserQuestion-PYNBWV63.js → askUserQuestion-THQZMG44.js} +2 -2
  27. package/chunks/{bridge-EVURP4NO.js → bridge-IHSBI2YJ.js} +42 -46
  28. package/chunks/{build-INBK7IXX.js → build-63BIOYWK.js} +1 -1
  29. package/chunks/{channel-management-service-IDBNYSFW.js → channel-management-service-4MTCEGJB.js} +4 -4
  30. package/chunks/{channel-settings-store-MZNXRKVI.js → channel-settings-store-BVKWAI2T.js} +50 -54
  31. package/chunks/{channel-worker-group-ZLP5SJHT.js → channel-worker-group-47F4ISUZ.js} +6 -6
  32. package/chunks/{channel-worker-manager-FG5377T2.js → channel-worker-manager-I5Y44GYR.js} +50 -9
  33. package/chunks/{channel-worker-supervisor-HDVE4ADS.js → channel-worker-supervisor-6VCLUXFE.js} +4 -4
  34. package/chunks/{chunk-3452WXOK.js → chunk-2M3EWQNG.js} +17 -0
  35. package/chunks/{chunk-HDMKCJHI.js → chunk-32LU3APX.js} +1 -1
  36. package/chunks/{chunk-BSJOBW4U.js → chunk-37JFWFCD.js} +1 -1
  37. package/chunks/{chunk-AN3KFCNH.js → chunk-3JQZVCBI.js} +2 -2
  38. package/chunks/{chunk-RGEV5AUD.js → chunk-3L724BJ5.js} +11 -8
  39. package/chunks/{chunk-GCUR24KK.js → chunk-47RYEQW5.js} +2 -2
  40. package/chunks/{chunk-CM4F4JBB.js → chunk-4BGDFKQE.js} +5 -5
  41. package/chunks/{chunk-ZBDYI7VM.js → chunk-4F7GQGXB.js} +10961 -4033
  42. package/chunks/{chunk-JMRE4WJQ.js → chunk-4HVH57J3.js} +81 -17
  43. package/chunks/{chunk-26SIKQIC.js → chunk-4LIFGNI4.js} +1 -1
  44. package/chunks/{chunk-U5RTYI7D.js → chunk-4M24B5J5.js} +13 -13
  45. package/chunks/{chunk-7XICSE62.js → chunk-4PSDSCW3.js} +3 -3
  46. package/chunks/{chunk-AYYKUUKP.js → chunk-4UANMABT.js} +73 -19
  47. package/chunks/{chunk-GS7XT345.js → chunk-54C6PIGT.js} +3 -3
  48. package/chunks/{chunk-UKB2TZAO.js → chunk-5EIOJGCR.js} +4 -4
  49. package/chunks/{chunk-64REQJJ2.js → chunk-5H5S4UY5.js} +3 -3
  50. package/chunks/chunk-5IENVM7Z.js +35 -0
  51. package/chunks/{chunk-JOWQD4LO.js → chunk-5Q5RC2WE.js} +1 -1
  52. package/chunks/{chunk-3NQCZMUB.js → chunk-5RTTI4GE.js} +73 -73
  53. package/chunks/{chunk-J4Y3QJHF.js → chunk-64QH2UC6.js} +11 -1
  54. package/chunks/{chunk-I75VKFCJ.js → chunk-65HWLGA7.js} +1 -1
  55. package/chunks/{chunk-W7KWB6AH.js → chunk-6A2D4QSO.js} +8 -5
  56. package/chunks/{chunk-OTTNXUT5.js → chunk-7IKXTGZT.js} +1 -1
  57. package/chunks/{chunk-LYSZVCCD.js → chunk-7JMGTOH7.js} +427 -129
  58. package/chunks/{chunk-YOFULAHO.js → chunk-7RB56BRJ.js} +3 -3
  59. package/chunks/{chunk-6VHIWUJP.js → chunk-ADYN7P2Y.js} +2 -2
  60. package/chunks/{chunk-7DDTI7Q3.js → chunk-AHYTURFB.js} +1 -1
  61. package/chunks/{chunk-TNMOFNT4.js → chunk-ALUYNJPM.js} +1395 -2079
  62. package/chunks/{chunk-H2A2GJGL.js → chunk-AZJLY2XZ.js} +5 -5
  63. package/chunks/{chunk-BE5FGT5Z.js → chunk-BA4WJC4L.js} +1 -1
  64. package/chunks/{chunk-H5GPPDGY.js → chunk-BFY33IB4.js} +16 -8
  65. package/chunks/{chunk-RY7DL5IF.js → chunk-BJXCYUGM.js} +1 -1
  66. package/chunks/{chunk-ND7TQQPE.js → chunk-C2VWOXHS.js} +6 -6
  67. package/chunks/{chunk-T4RMUTTT.js → chunk-C4TIXFDZ.js} +2 -2
  68. package/chunks/{chunk-B2RIIK3K.js → chunk-CVX63TFJ.js} +3 -1
  69. package/chunks/{chunk-SMJYTKTB.js → chunk-DQCKVAF5.js} +1 -1
  70. package/chunks/{chunk-RLSPPTWH.js → chunk-DSX7KQPM.js} +438 -181
  71. package/chunks/{chunk-PNIGAVY6.js → chunk-DTVQSSNM.js} +2 -2
  72. package/chunks/{chunk-67AY5D3M.js → chunk-DYTW3QVG.js} +23 -8
  73. package/chunks/{chunk-3CZGSTZX.js → chunk-EBDGRBZX.js} +22 -14
  74. package/chunks/{chunk-DJBQCO2E.js → chunk-EFTPIZIC.js} +412 -3
  75. package/chunks/{chunk-QE7DTCLX.js → chunk-EIY7SUPZ.js} +1 -1
  76. package/chunks/{chunk-6OO7QEWV.js → chunk-EVFDRBUM.js} +97 -77
  77. package/chunks/{chunk-QTMPM6RC.js → chunk-EWRW2WQC.js} +3 -3
  78. package/chunks/{chunk-IIFL7QDN.js → chunk-F33GFWPR.js} +34 -11
  79. package/chunks/{chunk-YPISTYEI.js → chunk-F47DITLZ.js} +11 -1
  80. package/chunks/{chunk-OE5AQVNB.js → chunk-F7NF2IOE.js} +6 -6
  81. package/chunks/{chunk-RT4QNQ5P.js → chunk-FD5SJOWT.js} +8 -5
  82. package/chunks/{chunk-ACZ4YRYK.js → chunk-FRICLXCZ.js} +3 -3
  83. package/chunks/{chunk-IBMUI5EV.js → chunk-FUO5V5KI.js} +11 -4
  84. package/chunks/{chunk-T3TL6S3B.js → chunk-G5PBOQWI.js} +8 -5
  85. package/chunks/{chunk-D7D3HSYQ.js → chunk-G7HBEEX7.js} +12 -7
  86. package/chunks/{chunk-FXUSWLBF.js → chunk-GH2S4GD5.js} +133 -8
  87. package/chunks/{chunk-XPDKSOVW.js → chunk-GXUTFQXK.js} +42 -44
  88. package/chunks/{chunk-OSTQZIOY.js → chunk-H43PSPYS.js} +2 -2
  89. package/chunks/{chunk-UVYKCRJZ.js → chunk-HJBHMANB.js} +11 -13
  90. package/chunks/{chunk-WLEYH7CD.js → chunk-HRPFBHW7.js} +4 -0
  91. package/chunks/{chunk-DBTMP3P4.js → chunk-I2TMJPCV.js} +1 -1
  92. package/chunks/{chunk-EU2B4P3D.js → chunk-I4NRYS6A.js} +4 -4
  93. package/chunks/{chunk-JPKTAQS3.js → chunk-I5N4EAS6.js} +1 -1
  94. package/chunks/{chunk-W4BDHLRT.js → chunk-IG4W5SJR.js} +2 -2
  95. package/chunks/{chunk-BXNKREX7.js → chunk-IPATA3T2.js} +2 -2
  96. package/chunks/{chunk-NKLP3DCK.js → chunk-IQAFKVXS.js} +1 -1
  97. package/chunks/{chunk-AYHQZBJ4.js → chunk-IRKQ4YYX.js} +3 -3
  98. package/chunks/{chunk-J3NNHTV6.js → chunk-J5TTWBZK.js} +6 -0
  99. package/chunks/{chunk-AVNATYLY.js → chunk-JJKNYRFY.js} +1 -1
  100. package/chunks/{chunk-ERHAMGAA.js → chunk-JR42V4UY.js} +1 -1
  101. package/chunks/{chunk-NT7LXVV5.js → chunk-JUARRUMA.js} +362 -1084
  102. package/chunks/{chunk-OKMDOATP.js → chunk-KEVYJSI4.js} +11 -11
  103. package/chunks/{chunk-AF3QB6OL.js → chunk-KGV55H53.js} +1 -1
  104. package/chunks/{chunk-SDCHI64N.js → chunk-KM3XVTMO.js} +10 -4
  105. package/chunks/{chunk-ERRJA23L.js → chunk-KMU3ZHH4.js} +1 -1
  106. package/chunks/chunk-KOGW3YWJ.js +2054 -0
  107. package/chunks/{chunk-6NWPR2EB.js → chunk-L26ONV2Y.js} +5 -5
  108. package/chunks/chunk-L34XSHIZ.js +28 -0
  109. package/chunks/{chunk-UXEW7TQS.js → chunk-LB3WQQJK.js} +1 -1
  110. package/chunks/{chunk-YNG7XAJU.js → chunk-LEPCWS5A.js} +1 -1
  111. package/chunks/{chunk-XLENZQXH.js → chunk-LHBNR6EU.js} +2 -2
  112. package/chunks/{chunk-AKNQMSL2.js → chunk-LOBDDFYK.js} +4 -28
  113. package/chunks/{chunk-L6CUJZDG.js → chunk-LU77UT4D.js} +2 -2
  114. package/chunks/{chunk-3EGEBDTW.js → chunk-M4KFODIP.js} +1 -1
  115. package/chunks/{chunk-JLSZT354.js → chunk-M4LBBSVP.js} +2 -0
  116. package/chunks/{chunk-YOMKOM7E.js → chunk-MP6YZ4RK.js} +6580 -5992
  117. package/chunks/chunk-N2TNM3QB.js +9 -0
  118. package/chunks/{chunk-GDXSXL3H.js → chunk-NFIDVZND.js} +1 -1
  119. package/chunks/{chunk-NT5XIL5H.js → chunk-NQ4L2CMD.js} +51 -6
  120. package/chunks/{chunk-OQYXJK2V.js → chunk-NRL5CUZT.js} +1 -1
  121. package/chunks/{chunk-FIWZOMBF.js → chunk-NSUKQ4DN.js} +6 -0
  122. package/chunks/chunk-NUHOLAQ6.js +59 -0
  123. package/chunks/{chunk-BBYTY46C.js → chunk-NVVJTUSL.js} +266 -105
  124. package/chunks/{chunk-CAZADEU7.js → chunk-NXKOVOM5.js} +9 -9
  125. package/chunks/{chunk-5Q372OFJ.js → chunk-O4KNCAX4.js} +57 -10
  126. package/chunks/{chunk-GOXKNSDZ.js → chunk-O5CD7T4T.js} +40 -9
  127. package/chunks/{chunk-XIQ5HQ2F.js → chunk-OBTWL6ZW.js} +1 -1
  128. package/chunks/{chunk-5MK45KZ3.js → chunk-OHOO527W.js} +1 -1
  129. package/chunks/{chunk-CETB5XY4.js → chunk-ORFIYTI2.js} +1 -1
  130. package/chunks/{chunk-7E7UCJHS.js → chunk-OSHQMOBS.js} +18 -17
  131. package/chunks/{chunk-YDQ4OCDK.js → chunk-OSSTATJF.js} +89 -1
  132. package/chunks/chunk-P6UIF2OW.js +400 -0
  133. package/chunks/{chunk-V4HN35IF.js → chunk-PCRBLMIN.js} +16 -2
  134. package/chunks/{chunk-L2OKAIUK.js → chunk-QI27MKNQ.js} +23 -15
  135. package/chunks/{chunk-FHPYRXRH.js → chunk-QJGYU5PG.js} +1 -1
  136. package/chunks/{chunk-IVUWTA2D.js → chunk-QJVZLILI.js} +1 -1
  137. package/chunks/{chunk-TBJ3SNS3.js → chunk-QKDNS6FU.js} +1 -1
  138. package/chunks/{chunk-YKADANK6.js → chunk-QQD2GART.js} +10 -3
  139. package/chunks/{chunk-ED7DD7MV.js → chunk-RAFQIHN2.js} +1 -1
  140. package/chunks/{chunk-TV7BJ7TX.js → chunk-RJUVTJEZ.js} +1 -1
  141. package/chunks/{chunk-RVCGAHC7.js → chunk-RM4WT2XB.js} +4 -4
  142. package/chunks/{chunk-6YXNJXQW.js → chunk-RN3YGDCA.js} +3 -3
  143. package/chunks/{chunk-SMRDCANI.js → chunk-S6H3ELPG.js} +1 -1
  144. package/chunks/{chunk-MBZ5ORJB.js → chunk-SI7WDR3U.js} +281 -2
  145. package/chunks/{chunk-5FGWVPCM.js → chunk-SRF4KTAG.js} +4 -4
  146. package/chunks/{chunk-LFAR7CPW.js → chunk-STCVJXQB.js} +23 -23
  147. package/chunks/{chunk-JDIO45X7.js → chunk-SULZPKTA.js} +1 -1
  148. package/chunks/{chunk-KUDI54QQ.js → chunk-SX2QIMJV.js} +5 -5
  149. package/chunks/{chunk-VYSZUQGU.js → chunk-TJYRTS4S.js} +2 -2
  150. package/chunks/{chunk-JOTYTYYW.js → chunk-TMKTOTMQ.js} +3 -3
  151. package/chunks/{chunk-FPMQT2YY.js → chunk-TQHPVKO6.js} +4 -4
  152. package/chunks/{chunk-GN422P4J.js → chunk-TSZSGQ3N.js} +1 -1
  153. package/chunks/{chunk-IXEZHTDR.js → chunk-U4DJ5XB3.js} +292 -38
  154. package/chunks/{chunk-MZ5A5PQW.js → chunk-UAKRDON5.js} +4 -4
  155. package/chunks/{chunk-NGKLMNWN.js → chunk-UM2FFKXN.js} +2 -2
  156. package/chunks/{chunk-5ICKESC3.js → chunk-UPFRILIL.js} +2 -2
  157. package/chunks/{chunk-RAEEQEC5.js → chunk-UUASLXHW.js} +54 -5
  158. package/chunks/chunk-V5U2NZNJ.js +29 -0
  159. package/chunks/{chunk-P5Y23G2L.js → chunk-V7RNNPGC.js} +1 -18
  160. package/chunks/{chunk-ZYPJ7HVZ.js → chunk-VBWD6C27.js} +1 -1
  161. package/chunks/{chunk-MJBHSZEJ.js → chunk-VNAYZAFX.js} +3 -3
  162. package/chunks/chunk-VPSIC437.js +780 -0
  163. package/chunks/{chunk-AAX236AR.js → chunk-VWTSRH6C.js} +52 -11
  164. package/chunks/{chunk-PDXYZBBQ.js → chunk-VYIUNFEA.js} +2 -2
  165. package/chunks/{chunk-BY24DZ4J.js → chunk-WP4AX3XD.js} +5 -7
  166. package/chunks/{chunk-X7C7KFWA.js → chunk-XLXAZLDR.js} +1 -1
  167. package/chunks/{chunk-ZQ3FKEWA.js → chunk-YPWZTR7F.js} +3 -3
  168. package/chunks/{chunk-IXHV5MIC.js → chunk-ZDFQGHZH.js} +1 -1
  169. package/chunks/chunk-ZJ2LM2SI.js +198 -0
  170. package/chunks/{chunk-PWR2NQBS.js → chunk-ZKFTS3OV.js} +3 -3
  171. package/chunks/{chunk-HMJ2P3SV.js → chunk-ZL4HFSL6.js} +91 -29
  172. package/chunks/{chunk-ID33ZRWH.js → chunk-ZTPGUFQV.js} +28 -6
  173. package/chunks/chunk-bdqvmfwv-ZTSOWAFE.js +17446 -0
  174. package/chunks/{config-utils-NNUPVGEC.js → config-utils-LVSYDLHZ.js} +42 -46
  175. package/chunks/{contextCommand-S3TPCDM5.js → contextCommand-TZD7UAJK.js} +40 -44
  176. package/chunks/{core-runtime-NASPCSQX.js → core-runtime-B4UKKIAQ.js} +42 -46
  177. package/chunks/{create-sub-session-36TNCHCP.js → create-sub-session-LUPWEUHR.js} +2 -2
  178. package/chunks/{create-sub-session-DS4BJLYZ.js → create-sub-session-NJ24B4US.js} +41 -44
  179. package/chunks/{cron-create-QXHTYUTO.js → cron-create-CRSPET3H.js} +1 -1
  180. package/chunks/{cron-delete-WV2BM42M.js → cron-delete-DB77SZTU.js} +1 -1
  181. package/chunks/{cron-list-7KVNBLZ7.js → cron-list-U2JNYWV6.js} +1 -1
  182. package/chunks/{daemon-UCVUHPJD.js → daemon-RKDGBFLK.js} +385 -19
  183. package/chunks/{daemon-git-worktree-guard-ATXVQPS3.js → daemon-git-worktree-guard-O2HPOBAB.js} +40 -44
  184. package/chunks/{daemon-status-provider-UI3GBTMO.js → daemon-status-provider-GRRVCJFW.js} +47 -51
  185. package/chunks/{daemon-trust-policy-SUCBJ2CA.js → daemon-trust-policy-YJL442BK.js} +46 -50
  186. package/chunks/{daemon-trust-policy-monitor-3LM5RQNS.js → daemon-trust-policy-monitor-JL7F4Y4Q.js} +46 -50
  187. package/chunks/{deferred-core-runtime-SCOJLVYG.js → deferred-core-runtime-S32AYVZI.js} +39 -43
  188. package/chunks/{devtools-JCG4K2NZ.js → devtools-VDRJYPZF.js} +1 -1
  189. package/chunks/{discovery-X2NV535U.js → discovery-TUM3ZQ6U.js} +2 -2
  190. package/chunks/{display-image-Z4VBQDEJ.js → display-image-73C7XNRK.js} +3 -3
  191. package/chunks/{dist-7WDZYMWV.js → dist-62OZ7QXB.js} +2 -2
  192. package/chunks/{dist-FLJLHASF.js → dist-EDHQIBYD.js} +7 -7
  193. package/chunks/{dist-S3BKCTWF.js → dist-GT64AAUR.js} +1 -1
  194. package/chunks/{dist-GPSRNVVP.js → dist-JVXT4VUJ.js} +2 -2
  195. package/chunks/{dist-LY66XNUL.js → dist-L6URO6CK.js} +3 -3
  196. package/chunks/{dist-5423MG3D.js → dist-LXFYIJNG.js} +734 -128
  197. package/chunks/{dist-SDKHGH5O.js → dist-PDGNRVPY.js} +4 -4
  198. package/chunks/{dist-WAUO5OMN.js → dist-QAF5DO3Y.js} +363 -73
  199. package/chunks/{dist-WIVVPE7M.js → dist-ZCJLKQSP.js} +1 -1
  200. package/chunks/{earlyInputCapture-INWJ2STR.js → earlyInputCapture-BBPCIVZG.js} +38 -42
  201. package/chunks/{edit-B7ZRRGAE.js → edit-SUGXY63Y.js} +26 -30
  202. package/chunks/{en-E4AYTX6H.js → en-2RATMNX7.js} +2 -0
  203. package/chunks/{enter-worktree-SPZHEETQ.js → enter-worktree-B6USKSIK.js} +5 -5
  204. package/chunks/{enterPlanMode-S554IKJ2.js → enterPlanMode-MDX4RVVL.js} +26 -30
  205. package/chunks/{environment-25ADH4Y6.js → environment-VN6RXDVN.js} +41 -45
  206. package/chunks/{errors-G2I6LFTW.js → errors-UEY36PIT.js} +40 -44
  207. package/chunks/{exit-worktree-AWUXAMAM.js → exit-worktree-DLQ73SJH.js} +8 -6
  208. package/chunks/{exitPlanMode-ZFH4OYPM.js → exitPlanMode-EPHIEDAA.js} +26 -30
  209. package/chunks/{fast-path-WZHVZ2ER.js → fast-path-Y73R42LV.js} +3 -3
  210. package/chunks/{fast-path-settings-NILM6QZL.js → fast-path-settings-MFUR3IWK.js} +3 -3
  211. package/chunks/{glob-UOVDMBUP.js → glob-DMGH7EZN.js} +27 -31
  212. package/chunks/goal-tools-3RF3PXCL.js +99 -0
  213. package/chunks/{grep-LHYJ5V2N.js → grep-AJVLCVXC.js} +2 -2
  214. package/chunks/{handleAutoUpdate-4MZ45DZY.js → handleAutoUpdate-HVWQT2AU.js} +42 -46
  215. package/chunks/{i18n-KWUEI4DS.js → i18n-5OR7NTRZ.js} +39 -43
  216. package/chunks/{image-gen-YZDVO5YS.js → image-gen-VOIDOHOB.js} +1 -1
  217. package/chunks/{initializer-2NBROGMG.js → initializer-JE5RQSOE.js} +46 -50
  218. package/chunks/{installationInfo-YKUSY3ZB.js → installationInfo-KO3CCSCK.js} +38 -42
  219. package/chunks/{list-W2WV3COM.js → list-3IORSFIY.js} +49 -53
  220. package/chunks/{list-agents-PMVMHNY7.js → list-agents-SBMONIUK.js} +3 -3
  221. package/chunks/{llm-NPPHLIJI.js → llm-K26SUDVK.js} +155 -99
  222. package/chunks/{llm-content-generator-YK3WN6XW.js → llm-content-generator-TT6EAUD4.js} +5 -6
  223. package/chunks/{loadedSettingsAdapter-2P7DFWUR.js → loadedSettingsAdapter-KLLFZF3M.js} +46 -50
  224. package/chunks/{loggingContentGenerator-QYYYGU6V.js → loggingContentGenerator-EYQBA4M4.js} +43 -47
  225. package/chunks/{loop-wakeup-EBM4F5MZ.js → loop-wakeup-QA6SHCZT.js} +2 -2
  226. package/chunks/{ls-F6TRX3DD.js → ls-HEJNCEYO.js} +1 -1
  227. package/chunks/{lsp-QYTOS2FI.js → lsp-WOQKNZP6.js} +1 -1
  228. package/chunks/{managed-npm-update-UMC4NBWW.js → managed-npm-update-HIJTODQT.js} +38 -42
  229. package/chunks/{mcp-OFI6XDP2.js → mcp-A2UEHETW.js} +46 -50
  230. package/chunks/{monitor-QX3BM3JY.js → monitor-DKNZQAB2.js} +28 -32
  231. package/chunks/{node-QKLNSZMX.js → node-UETAYMMO.js} +3 -3
  232. package/chunks/{nonInteractiveCli-NVRMD5MN.js → nonInteractiveCli-YA47F2F4.js} +86 -89
  233. package/chunks/{notebook-edit-AAILDPSV.js → notebook-edit-MGHTRL2D.js} +26 -30
  234. package/chunks/{openaiContentGenerator-53PB3CMN.js → openaiContentGenerator-ZJIEQ3ZJ.js} +15 -17
  235. package/chunks/{pidfile-5ACKG2LI.js → pidfile-ETHAZNMY.js} +38 -42
  236. package/chunks/{processUtils-2BCDO3DZ.js → processUtils-UY3SAJJZ.js} +2 -2
  237. package/chunks/{prompt-terminal-ledger-3RKW73A2.js → prompt-terminal-ledger-GZ747VYE.js} +39 -43
  238. package/chunks/{qwenContentGenerator-N4LLWDPH.js → qwenContentGenerator-VI4KATRY.js} +39 -43
  239. package/chunks/{read-file-DPAKXHYE.js → read-file-P7F4P7LV.js} +6 -8
  240. package/chunks/{read-mcp-resource-R4NO75DW.js → read-mcp-resource-GLAGB6R7.js} +1 -1
  241. package/chunks/{record-artifact-2EAYLAL5.js → record-artifact-SWVR7NSU.js} +3 -3
  242. package/chunks/renderer-selection-M4UN63VJ.js +99 -0
  243. package/chunks/{report-findings-Y4MSHDS3.js → report-findings-AL5YW3KI.js} +4 -4
  244. package/chunks/{request-shutdown-DWRMGTMB.js → request-shutdown-5YK4IZ54.js} +5 -5
  245. package/chunks/{resumeHistoryUtils-3JQORXAK.js → resumeHistoryUtils-DPZKFW24.js} +44 -48
  246. package/chunks/{ripGrep-AHF5QCI7.js → ripGrep-C7LJKUPZ.js} +9 -11
  247. package/chunks/{run-qwen-serve-3LKV7KDC.js → run-qwen-serve-OGTEEUR2.js} +132 -81
  248. package/chunks/{runtime-66F4W3IA.js → runtime-LNBLEMZS.js} +51 -55
  249. package/chunks/{scheduled-tasks-2NVKS5Q2.js → scheduled-tasks-FLDYZQOF.js} +44 -48
  250. package/chunks/{scheduler-JNV7T3ZO.js → scheduler-73YXGUGW.js} +40 -44
  251. package/chunks/{sdk-exporters-grpc-G5IT4XS4.js → sdk-exporters-grpc-MXTVSE3C.js} +2 -2
  252. package/chunks/{sdk-exporters-http-MFIWD23D.js → sdk-exporters-http-3JO5TJNU.js} +3 -3
  253. package/chunks/{sdk-impl-2RXJ4Q6X.js → sdk-impl-HZAUUTHJ.js} +5 -5
  254. package/chunks/{send-message-WPZRCJOB.js → send-message-JC7NJTY6.js} +7 -7
  255. package/chunks/{serve-GP2UNRP7.js → serve-3UR2H4CV.js} +46 -50
  256. package/chunks/{server-7W6C3SOW.js → server-AOYZVVOM.js} +1736 -502
  257. package/chunks/{session-PZLBAQGG.js → session-UAWFNFGI.js} +90 -93
  258. package/chunks/session-attachments-root-ZCGXQQTR.js +104 -0
  259. package/chunks/{session-pr-refresh-OIVL3U3Z.js → session-pr-refresh-CT2INROL.js} +131 -65
  260. package/chunks/{settings-ZOHIQWYK.js → settings-BHRGDASJ.js} +45 -49
  261. package/chunks/{shell-FWZT6IUR.js → shell-YHOGC7TO.js} +26 -30
  262. package/chunks/{skill-RTQC2YGA.js → skill-ZGBKNCHQ.js} +71 -49
  263. package/chunks/{skill-settings-AKMIXFSJ.js → skill-settings-AKSP665O.js} +45 -49
  264. package/chunks/{spawnChannel-ZP23JL6O.js → spawnChannel-N25MBB6F.js} +40 -44
  265. package/chunks/{standalone-update-P2Q5H4ZU.js → standalone-update-XGPWJDRN.js} +40 -44
  266. package/chunks/start-opentui-ui-FZ4USOU7.js +55342 -0
  267. package/chunks/{startInteractiveUI-NSA6QPQZ.js → startInteractiveUI-E2WQJUOA.js} +2920 -4542
  268. package/chunks/{syntheticOutput-5URSQLIS.js → syntheticOutput-HJNZSEHN.js} +2 -2
  269. package/chunks/{task-create-3EXVDG3G.js → task-create-6RSD54S5.js} +7 -7
  270. package/chunks/{task-list-PIBYNSE7.js → task-list-IQSACPOM.js} +31 -7
  271. package/chunks/{task-stop-IV3BYWJC.js → task-stop-HE2LRQNW.js} +1 -1
  272. package/chunks/{task-update-H5BPDS5Y.js → task-update-XAJ2NYOA.js} +7 -7
  273. package/chunks/{team-create-53T42W37.js → team-create-SOKMYSQU.js} +28 -32
  274. package/chunks/{team-delete-X3WPELS6.js → team-delete-NGNNKGMG.js} +1 -1
  275. package/chunks/{team-plan-approval-D45ZC5OE.js → team-plan-approval-U7ZWXYAY.js} +26 -30
  276. package/chunks/{terminal-image-renderer-FCRUWT6C.js → terminal-image-renderer-KKM4OBLO.js} +40 -44
  277. package/chunks/{theme-manager-MHNPEDP7.js → theme-manager-GQHF3A7T.js} +38 -42
  278. package/chunks/{todoWrite-A5IOZZ3P.js → todoWrite-5UTVUXHA.js} +36 -6
  279. package/chunks/{tool-search-6RPBGGUX.js → tool-search-IAI2RVWT.js} +10 -12
  280. package/chunks/{total-session-admission-MGV56XDK.js → total-session-admission-G4CGCSTG.js} +43 -47
  281. package/chunks/{trustedFolders-QJYEFMTU.js → trustedFolders-D2I3FDPB.js} +39 -43
  282. package/chunks/{update-relaunch-ZDMQX63C.js → update-relaunch-5RWKZAL3.js} +5 -5
  283. package/chunks/{updateCheck-4QZWCGP6.js → updateCheck-ZXOQDFEI.js} +42 -46
  284. package/chunks/{useAutoAcceptIndicator-DLIQN256.js → useAutoAcceptIndicator-6EK4QGAH.js} +49 -53
  285. package/chunks/{validateNonInterActiveAuth-HGTG7AEK.js → validateNonInterActiveAuth-QPFEKATS.js} +82 -86
  286. package/chunks/{version-CPAZMC4B.js → version-JKNG7YDH.js} +1 -1
  287. package/chunks/{web-fetch-N4K5M3M4.js → web-fetch-X3AHIIHW.js} +8 -11
  288. package/chunks/{web-search-4VZKM5SF.js → web-search-K2FMOGS5.js} +6 -7
  289. package/chunks/{web-shell-static-PW7OEDQO.js → web-shell-static-POZHGGXE.js} +4 -4
  290. package/chunks/{workflow-2ALQKTHG.js → workflow-TOLPAK5G.js} +38 -38
  291. package/chunks/{workspace-providers-status-5JM4CB6R.js → workspace-providers-status-PCJK3RC7.js} +50 -54
  292. package/chunks/{workspace-registration-store-RNMFVCH7.js → workspace-registration-store-KQWVVW4Y.js} +1 -1
  293. package/chunks/{workspace-registry-6EULAPZC.js → workspace-registry-YNIOB6HJ.js} +43 -47
  294. package/chunks/{workspace-runtime-coordinator-IRI2DRCJ.js → workspace-runtime-coordinator-WG2RNEN7.js} +43 -47
  295. package/chunks/{workspace-service-SETHN4WE.js → workspace-service-G4ZNBOFH.js} +51 -55
  296. package/chunks/{workspace-skills-status-4D4EUEQU.js → workspace-skills-status-FMTPPMWC.js} +47 -51
  297. package/chunks/{workspace-trust-reconciler-4LR3CDL4.js → workspace-trust-reconciler-IBDFQBQS.js} +53 -57
  298. package/chunks/wrapper-JH3IFHT2.js +35 -0
  299. package/chunks/{write-file-45GWPSOI.js → write-file-YTLFY2S5.js} +28 -32
  300. package/chunks/{zh-2BQ7P6OD.js → zh-25DF7OGK.js} +2 -0
  301. package/chunks/{zh-TW-UFXRZTXX.js → zh-TW-5EDMZVGK.js} +2 -0
  302. package/chunks/{zoom-image-K6IQUKRC.js → zoom-image-IFXSN74N.js} +6 -8
  303. package/cli.js +17 -13
  304. package/locales/en.js +3 -0
  305. package/locales/zh-TW.js +3 -0
  306. package/locales/zh.js +3 -0
  307. package/package.json +3 -3
  308. package/web-shell/assets/{abnfDiagram-VCTEODGH-C80OZcPP.js → abnfDiagram-VCTEODGH-Cxf7xE_Z.js} +1 -1
  309. package/web-shell/assets/{arc-AUqStYgf.js → arc-ESi1eNkE.js} +1 -1
  310. package/web-shell/assets/{architectureDiagram-5GKGNRK7-CQYOdYla.js → architectureDiagram-5GKGNRK7-D9l7-bDo.js} +1 -1
  311. package/web-shell/assets/{blockDiagram-NRAW4CY4-lYKlFysy.js → blockDiagram-NRAW4CY4-Bc8DEasw.js} +1 -1
  312. package/web-shell/assets/{c4Diagram-UCG6FXSJ-BoS23iIp.js → c4Diagram-UCG6FXSJ-Dimb2Hmh.js} +1 -1
  313. package/web-shell/assets/channel-B7ohGDil.js +1 -0
  314. package/web-shell/assets/{chunk-2Q5K7J3B-DLLooL1E.js → chunk-2Q5K7J3B-jVDmOpAQ.js} +1 -1
  315. package/web-shell/assets/{chunk-5VM5RSS4-kPfJxScY.js → chunk-5VM5RSS4-DbG_SwdB.js} +1 -1
  316. package/web-shell/assets/{chunk-F27PBJKO-CVGFBqkD.js → chunk-F27PBJKO-QEc4cY1v.js} +1 -1
  317. package/web-shell/assets/{chunk-G27WJ6UU-CnM_kOVV.js → chunk-G27WJ6UU-iJ36lQ3X.js} +1 -1
  318. package/web-shell/assets/{chunk-JWPE2WC7-Cj-ajOkT.js → chunk-JWPE2WC7-DuArnVtF.js} +1 -1
  319. package/web-shell/assets/{chunk-LCL6LL3I-8L5c-wFo.js → chunk-LCL6LL3I-DxOf1zwL.js} +1 -1
  320. package/web-shell/assets/{chunk-POPQ4Y6H-DsXTxpvL.js → chunk-POPQ4Y6H-lVLu9Ild.js} +1 -1
  321. package/web-shell/assets/{chunk-SVP7TREG-DU5GE1_z.js → chunk-SVP7TREG-C6XYlIer.js} +1 -1
  322. package/web-shell/assets/{chunk-XXDRQBXY-D2IIWZKt.js → chunk-XXDRQBXY-CiG2j2Ji.js} +1 -1
  323. package/web-shell/assets/classDiagram-DTDB5LWJ-DdFpqpfD.js +1 -0
  324. package/web-shell/assets/classDiagram-v2-JRS7N3AN-DdFpqpfD.js +1 -0
  325. package/web-shell/assets/{cose-bilkent-JH36ORCC-CF_txUJr.js → cose-bilkent-JH36ORCC-DGVHMMVm.js} +1 -1
  326. package/web-shell/assets/{cynefin-OW5HDTMX-DEZ-My-Z.js → cynefin-OW5HDTMX-D6cgpCnH.js} +1 -1
  327. package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-BV7EKUS6.js → cynefinDiagram-5FMLGOSQ-BKv4Z-UX.js} +1 -1
  328. package/web-shell/assets/{dagre-3AP2YEHR-JGIX0G4H.js → dagre-3AP2YEHR-B4ABMIG-.js} +1 -1
  329. package/web-shell/assets/{diagram-S7CK7UJ4-DdUY7q6A.js → diagram-S7CK7UJ4-DgCkp_Lm.js} +1 -1
  330. package/web-shell/assets/{diagram-UQ7AKVKN-fhzRZ19v.js → diagram-UQ7AKVKN-FG0FNokz.js} +1 -1
  331. package/web-shell/assets/{diagram-VSXAHHWV-BOgOex6q.js → diagram-VSXAHHWV-JgkP9qg-.js} +1 -1
  332. package/web-shell/assets/{diagram-VX7I27RA-C0NknIz6.js → diagram-VX7I27RA-ADh2x83l.js} +1 -1
  333. package/web-shell/assets/{diagram-Z3DM3KII-C__3mUBX.js → diagram-Z3DM3KII-yXqoYF1J.js} +1 -1
  334. package/web-shell/assets/{ebnfDiagram-PWID7BFC-BvPhqycH.js → ebnfDiagram-PWID7BFC-Duk83Ek_.js} +1 -1
  335. package/web-shell/assets/{erDiagram-SSCWMZ5O-BqzoNoL9.js → erDiagram-SSCWMZ5O-DMdvxySG.js} +1 -1
  336. package/web-shell/assets/{flowDiagram-A5DVABFB-CJKOre47.js → flowDiagram-A5DVABFB-DHjVgSji.js} +1 -1
  337. package/web-shell/assets/{ganttDiagram-EL5Y4UJY-C5xZjrp0.js → ganttDiagram-EL5Y4UJY-DMM9DkCE.js} +1 -1
  338. package/web-shell/assets/{gitGraphDiagram-WWUBYQGX-C0EjwuPK.js → gitGraphDiagram-WWUBYQGX-t_ug9vO8.js} +1 -1
  339. package/web-shell/assets/index-BGZRqbRo.css +36 -0
  340. package/web-shell/assets/index-DRri_6_x.js +2067 -0
  341. package/web-shell/assets/{index-C5M93syE.js → index-zqvnpGHv.js} +1 -1
  342. package/web-shell/assets/{infoDiagram-RXCK75RN-BUwzsYOs.js → infoDiagram-RXCK75RN-eT1fANNm.js} +1 -1
  343. package/web-shell/assets/{ishikawaDiagram-5VMMS53U-EDJ_DH3V.js → ishikawaDiagram-5VMMS53U-k3evzZNn.js} +1 -1
  344. package/web-shell/assets/{journeyDiagram-EYS64GPL-BnfcOsS0.js → journeyDiagram-EYS64GPL-CGim3EAi.js} +1 -1
  345. package/web-shell/assets/{kanban-definition-3QL26DDD-D_ofTVGu.js → kanban-definition-3QL26DDD-WHfJo-22.js} +1 -1
  346. package/web-shell/assets/{layout-CBuQFdfZ.js → layout-DkqIaFlJ.js} +1 -1
  347. package/web-shell/assets/{linear-DRIHtmGv.js → linear-Bdkd3mCz.js} +1 -1
  348. package/web-shell/assets/{mermaid.core-CmR5wZH6.js → mermaid.core-CGw0LkT_.js} +6 -6
  349. package/web-shell/assets/{mindmap-definition-FBJOCRG2-BV374olC.js → mindmap-definition-FBJOCRG2-C9V4rBvo.js} +1 -1
  350. package/web-shell/assets/{pegDiagram-XKGWAZYB-Bpy1SplK.js → pegDiagram-XKGWAZYB-CwoI2T5G.js} +1 -1
  351. package/web-shell/assets/{pieDiagram-E7YTZNPT-CeZx4hR2.js → pieDiagram-E7YTZNPT-DaTmBmPG.js} +1 -1
  352. package/web-shell/assets/{quadrantDiagram-AXDQQJYC-COYKs14h.js → quadrantDiagram-AXDQQJYC-plh6MyGI.js} +1 -1
  353. package/web-shell/assets/{railroadDiagram-O6MQD6OU-5g2pOeTs.js → railroadDiagram-O6MQD6OU-D_b-S0iK.js} +1 -1
  354. package/web-shell/assets/{requirementDiagram-EFPCY7ZU-Yn8uPGtF.js → requirementDiagram-EFPCY7ZU-zUzTN7VE.js} +1 -1
  355. package/web-shell/assets/{sankeyDiagram-P5KCCOFB-CTayAGq6.js → sankeyDiagram-P5KCCOFB-m6AhoD0l.js} +1 -1
  356. package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-BFWDKzUU.js → sequenceDiagram-WJ2MYXX4-Cwhzsine.js} +1 -1
  357. package/web-shell/assets/{sizeCapture-X5ZJPWSS-CtErUbj4.js → sizeCapture-X5ZJPWSS-CcZuKIae.js} +1 -1
  358. package/web-shell/assets/{stateDiagram-HBIQ2CUA-Co3HFzOd.js → stateDiagram-HBIQ2CUA-CFoiJwD_.js} +1 -1
  359. package/web-shell/assets/stateDiagram-v2-4QOOHH4V--H8HdEmk.js +1 -0
  360. package/web-shell/assets/{swimlanes-XN3QIQJK-CDZuxzOj.js → swimlanes-XN3QIQJK-CgS9hcaV.js} +1 -1
  361. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-ShE9OIgf.js +8 -0
  362. package/web-shell/assets/{timeline-definition-24CTP7MA-UcNHj8At.js → timeline-definition-24CTP7MA-Dzzc05t9.js} +1 -1
  363. package/web-shell/assets/{vennDiagram-4TSXK5OY-JKR9pVFG.js → vennDiagram-4TSXK5OY-DemK0f7Y.js} +1 -1
  364. package/web-shell/assets/{wardleyDiagram-VM6X3IG4-C4SU-yIW.js → wardleyDiagram-VM6X3IG4-CquLxtMr.js} +1 -1
  365. package/web-shell/assets/{xychartDiagram-S5SC5T6Z-D_yoWGZ4.js → xychartDiagram-S5SC5T6Z-BTBKTM5g.js} +1 -1
  366. package/web-shell/index.html +2 -2
  367. package/chunks/chunk-4P7PPAHN.js +0 -3097
  368. package/chunks/chunk-7J6OTNGO.js +0 -424
  369. package/chunks/chunk-LMMHS3RS.js +0 -135
  370. package/chunks/chunk-MZYWNU66.js +0 -149
  371. package/chunks/chunk-T4EFG2P5.js +0 -113
  372. package/chunks/chunk-XZA32HII.js +0 -19
  373. package/chunks/goal-tools-7TNK5ZHC.js +0 -411
  374. package/web-shell/assets/channel-B0ovOJeK.js +0 -1
  375. package/web-shell/assets/classDiagram-DTDB5LWJ-DMll2-6_.js +0 -1
  376. package/web-shell/assets/classDiagram-v2-JRS7N3AN-DMll2-6_.js +0 -1
  377. package/web-shell/assets/index-B_IPzA0h.js +0 -2020
  378. package/web-shell/assets/index-D1OKGQlM.css +0 -36
  379. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-C3gdRjPm.js +0 -1
  380. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-C34TGCPZ.js +0 -8
  381. /package/chunks/{chunk-FOGQO4FG.js → chunk-JA5CBKRP.js} +0 -0
@@ -37,6 +37,8 @@ import {
37
37
  installSelfOriginStripMiddleware,
38
38
  isBrowserAutomationMcpAvailable,
39
39
  isDeepHealthQuery,
40
+ isLocalPathOpenAvailable,
41
+ isLocalTerminalAvailable,
40
42
  isManagedScratchChild,
41
43
  isNativeDirectoryPickerAvailable,
42
44
  isTrustedLoopbackMode,
@@ -47,7 +49,7 @@ import {
47
49
  prepareManagedScratchRoot,
48
50
  resolveAcpHttpEnabled,
49
51
  toDaemonStatusMemoryLimits
50
- } from "./chunk-MBZ5ORJB.js";
52
+ } from "./chunk-SI7WDR3U.js";
51
53
  import "./chunk-VGHZT6JR.js";
52
54
  import {
53
55
  ConversationDirectoryIdentityError,
@@ -90,7 +92,7 @@ import {
90
92
  } from "./chunk-WCCLLK7X.js";
91
93
  import {
92
94
  require_express
93
- } from "./chunk-AYHQZBJ4.js";
95
+ } from "./chunk-IRKQ4YYX.js";
94
96
  import {
95
97
  resolveWebShellDir
96
98
  } from "./chunk-FBX2SDQ4.js";
@@ -100,28 +102,28 @@ import {
100
102
  } from "./chunk-DMEUXLSS.js";
101
103
  import {
102
104
  resolveChannelCwd
103
- } from "./chunk-GN422P4J.js";
105
+ } from "./chunk-TSZSGQ3N.js";
104
106
  import {
105
107
  LIVE_HOST_PROTOCOL_VERSION
106
- } from "./chunk-NKLP3DCK.js";
108
+ } from "./chunk-IQAFKVXS.js";
109
+ import "./chunk-ZL4HFSL6.js";
107
110
  import "./chunk-K6KS3LTN.js";
108
- import "./chunk-HMJ2P3SV.js";
109
- import "./chunk-7E7UCJHS.js";
111
+ import "./chunk-OSHQMOBS.js";
110
112
  import {
111
113
  consumeServeFastPathRejectedLoaderKeys,
112
114
  loadServeFastPathSettings,
113
115
  preResolveServeFastPathHomeEnvOverrides
114
- } from "./chunk-6VHIWUJP.js";
116
+ } from "./chunk-ADYN7P2Y.js";
115
117
  import {
116
118
  MAX_REGISTERED_WORKSPACES,
117
119
  resolveWorkspaceInputs,
118
120
  workspaceRegistrationId
119
- } from "./chunk-RY7DL5IF.js";
120
- import "./chunk-T3TL6S3B.js";
121
+ } from "./chunk-BJXCYUGM.js";
122
+ import "./chunk-G5PBOQWI.js";
121
123
  import {
122
124
  LOAD_REPLAY_META_KEY
123
125
  } from "./chunk-ZGCKTAL5.js";
124
- import "./chunk-YPISTYEI.js";
126
+ import "./chunk-F47DITLZ.js";
125
127
  import {
126
128
  canonicalizeWorkspace,
127
129
  translateAndCheckAbsoluteWorkspacePath
@@ -129,7 +131,7 @@ import {
129
131
  import {
130
132
  ExtraCaInspectionError,
131
133
  loadableCertificates
132
- } from "./chunk-FPMQT2YY.js";
134
+ } from "./chunk-TQHPVKO6.js";
133
135
  import "./chunk-FYJ7W2PI.js";
134
136
  import "./chunk-Z7B6SRPM.js";
135
137
  import {
@@ -141,7 +143,7 @@ import {
141
143
  import {
142
144
  normalizeWorkerDiagnostic,
143
145
  sanitizeWorkerDiagnostic
144
- } from "./chunk-3EGEBDTW.js";
146
+ } from "./chunk-M4KFODIP.js";
145
147
  import {
146
148
  channelSelectionNames
147
149
  } from "./chunk-ALMR3E6Q.js";
@@ -158,14 +160,14 @@ import {
158
160
  PRIVATE_EXTERNAL_TOOL_GUARD_PROVIDER_ENV
159
161
  } from "./chunk-3VUENPWF.js";
160
162
  import "./chunk-M5GB774H.js";
161
- import {
162
- MAX_DAEMON_WORKSPACES
163
- } from "./chunk-5HBA2Z7V.js";
164
163
  import {
165
164
  sanitizeLogText
166
- } from "./chunk-IXEZHTDR.js";
165
+ } from "./chunk-U4DJ5XB3.js";
167
166
  import "./chunk-IW6RQPQB.js";
168
- import "./chunk-GOXKNSDZ.js";
167
+ import {
168
+ MAX_DAEMON_WORKSPACES
169
+ } from "./chunk-5HBA2Z7V.js";
170
+ import "./chunk-O5CD7T4T.js";
169
171
  import {
170
172
  getGlobalQwenDirLite,
171
173
  resolveConfigPathLite
@@ -175,10 +177,10 @@ import {
175
177
  clearLoaderKeyRejectionReporterIfCurrent,
176
178
  scrubInheritedLoaderEnv,
177
179
  setLoaderKeyRejectionReporter
178
- } from "./chunk-3452WXOK.js";
180
+ } from "./chunk-2M3EWQNG.js";
179
181
  import {
180
182
  getCliVersion
181
- } from "./chunk-ZYPJ7HVZ.js";
183
+ } from "./chunk-VBWD6C27.js";
182
184
  import "./chunk-W3N5XAZ6.js";
183
185
  import "./chunk-NPQ5ZKRP.js";
184
186
  import {
@@ -3798,12 +3800,12 @@ __name(hasRetryableChannelWorkerShutdownError, "hasRetryableChannelWorkerShutdow
3798
3800
  var channelWorkerRuntimePromise;
3799
3801
  async function loadChannelWorkerRuntime() {
3800
3802
  channelWorkerRuntimePromise ??= Promise.all([
3801
- import("./channel-worker-supervisor-HDVE4ADS.js"),
3802
- import("./pidfile-5ACKG2LI.js"),
3803
- import("./runtime-66F4W3IA.js"),
3803
+ import("./channel-worker-supervisor-6VCLUXFE.js"),
3804
+ import("./pidfile-ETHAZNMY.js"),
3805
+ import("./runtime-LNBLEMZS.js"),
3804
3806
  import("./cli-entry-path-4VJ3Y6T2.js"),
3805
- import("./channel-worker-group-ZLP5SJHT.js"),
3806
- import("./channel-worker-manager-FG5377T2.js")
3807
+ import("./channel-worker-group-47F4ISUZ.js"),
3808
+ import("./channel-worker-manager-I5Y44GYR.js")
3807
3809
  ]).then(
3808
3810
  ([
3809
3811
  supervisor,
@@ -3909,13 +3911,13 @@ function shouldPreheatBridge(deps) {
3909
3911
  __name(shouldPreheatBridge, "shouldPreheatBridge");
3910
3912
  var coreRuntimePromise;
3911
3913
  function loadCoreRuntime() {
3912
- coreRuntimePromise ??= import("./core-runtime-NASPCSQX.js");
3914
+ coreRuntimePromise ??= import("./core-runtime-B4UKKIAQ.js");
3913
3915
  return coreRuntimePromise;
3914
3916
  }
3915
3917
  __name(loadCoreRuntime, "loadCoreRuntime");
3916
3918
  var liveDiscoveryRuntimePromise;
3917
3919
  function loadLiveDiscoveryRuntime() {
3918
- liveDiscoveryRuntimePromise ??= import("./discovery-X2NV535U.js");
3920
+ liveDiscoveryRuntimePromise ??= import("./discovery-TUM3ZQ6U.js");
3919
3921
  return liveDiscoveryRuntimePromise;
3920
3922
  }
3921
3923
  __name(loadLiveDiscoveryRuntime, "loadLiveDiscoveryRuntime");
@@ -3945,10 +3947,10 @@ __name(resolveDaemonLogBaseDirForRun, "resolveDaemonLogBaseDirForRun");
3945
3947
  var settingsRuntimePromise;
3946
3948
  function loadSettingsRuntimeModules() {
3947
3949
  settingsRuntimePromise ??= Promise.all([
3948
- import("./settings-ZOHIQWYK.js"),
3949
- import("./environment-25ADH4Y6.js"),
3950
- import("./loadedSettingsAdapter-2P7DFWUR.js"),
3951
- import("./trustedFolders-QJYEFMTU.js")
3950
+ import("./settings-BHRGDASJ.js"),
3951
+ import("./environment-VN6RXDVN.js"),
3952
+ import("./loadedSettingsAdapter-KLLFZF3M.js"),
3953
+ import("./trustedFolders-D2I3FDPB.js")
3952
3954
  ]).then(([settings, environment, loadedSettingsAdapter, trustedFolders]) => ({
3953
3955
  settings,
3954
3956
  environment,
@@ -3961,8 +3963,8 @@ __name(loadSettingsRuntimeModules, "loadSettingsRuntimeModules");
3961
3963
  var channelWebhookConfigRuntimePromise;
3962
3964
  function loadChannelWebhookConfigRuntime() {
3963
3965
  channelWebhookConfigRuntimePromise ??= Promise.all([
3964
- import("./runtime-66F4W3IA.js"),
3965
- import("./config-utils-NNUPVGEC.js")
3966
+ import("./runtime-LNBLEMZS.js"),
3967
+ import("./config-utils-LVSYDLHZ.js")
3966
3968
  ]).then(([channelRuntime, configUtils]) => ({
3967
3969
  loadChannelsConfig: channelRuntime.loadChannelsConfig,
3968
3970
  parseChannelWebhookConfig: configUtils.parseChannelWebhookConfig
@@ -3989,19 +3991,19 @@ async function loadServeRuntimeModules() {
3989
3991
  workspaceRuntimeCoordinatorModule,
3990
3992
  promptLedgerModule
3991
3993
  ] = await Promise.all([
3992
- import("./server-7W6C3SOW.js"),
3993
- import("./bridge-EVURP4NO.js"),
3994
- import("./spawnChannel-ZP23JL6O.js"),
3994
+ import("./server-AOYZVVOM.js"),
3995
+ import("./bridge-IHSBI2YJ.js"),
3996
+ import("./spawnChannel-N25MBB6F.js"),
3995
3997
  import("./process-registry-OAEG6WGC.js"),
3996
- import("./workspace-service-SETHN4WE.js"),
3998
+ import("./workspace-service-G4ZNBOFH.js"),
3997
3999
  import("./types-HKLPXZB3.js"),
3998
- import("./daemon-status-provider-UI3GBTMO.js"),
3999
- import("./workspace-providers-status-5JM4CB6R.js"),
4000
- import("./workspace-skills-status-4D4EUEQU.js"),
4001
- import("./total-session-admission-MGV56XDK.js"),
4002
- import("./workspace-registry-6EULAPZC.js"),
4003
- import("./workspace-runtime-coordinator-IRI2DRCJ.js"),
4004
- import("./prompt-terminal-ledger-3RKW73A2.js")
4000
+ import("./daemon-status-provider-GRRVCJFW.js"),
4001
+ import("./workspace-providers-status-PCJK3RC7.js"),
4002
+ import("./workspace-skills-status-FMTPPMWC.js"),
4003
+ import("./total-session-admission-G4CGCSTG.js"),
4004
+ import("./workspace-registry-YNIOB6HJ.js"),
4005
+ import("./workspace-runtime-coordinator-WG2RNEN7.js"),
4006
+ import("./prompt-terminal-ledger-GZ747VYE.js")
4005
4007
  ]);
4006
4008
  return {
4007
4009
  createServeApp: serverModule.createServeApp,
@@ -4050,7 +4052,7 @@ function sessionPromptSettledCloseGraceMs(value) {
4050
4052
  return value !== void 0 ? channelIdleTimeoutMs(value) : DEFAULT_SESSION_PROMPT_SETTLED_CLOSE_GRACE_MS;
4051
4053
  }
4052
4054
  __name(sessionPromptSettledCloseGraceMs, "sessionPromptSettledCloseGraceMs");
4053
- function currentServeFeaturesForRunQwenServe(opts, sessionShellCommandEnabled, sessionArtifactsPersistenceAvailable, workspaceRuntimeAvailable, currentSessionSchedulingAvailable, env, nativeDirectoryPickerAvailable) {
4055
+ function currentServeFeaturesForRunQwenServe(opts, sessionShellCommandEnabled, sessionArtifactsPersistenceAvailable, workspaceRuntimeAvailable, currentSessionSchedulingAvailable, env, nativeDirectoryPickerAvailable, localPathOpenAvailable, localTerminalOpenAvailable) {
4054
4056
  return getAdvertisedServeFeatures(void 0, {
4055
4057
  requireAuth: opts.requireAuth === true,
4056
4058
  mcpPoolActive: opts.mcpPoolActive !== false,
@@ -4076,6 +4078,16 @@ function currentServeFeaturesForRunQwenServe(opts, sessionShellCommandEnabled, s
4076
4078
  // briefly under-report them.
4077
4079
  nativeDirectoryPickerAvailable,
4078
4080
  workspaceRuntimeAvailable,
4081
+ localPathOpenAvailable,
4082
+ localTerminalOpenAvailable,
4083
+ // The production wiring below always registers these, so the bootstrap
4084
+ // envelope must not under-report them either — the runtime envelope
4085
+ // serves all five once the app is up.
4086
+ dynamicWorkspaceRegistrationAvailable: true,
4087
+ scratchWorkspaceRegistrationAvailable: true,
4088
+ standaloneSessionsAvailable: true,
4089
+ workspaceTrustHotReloadAvailable: true,
4090
+ acpHttpEnabled: resolveAcpHttpEnabled(env),
4079
4091
  clientMcpOverWsEnabled: opts.clientMcpOverWs === true,
4080
4092
  cdpTunnelOverWsEnabled: opts.cdpTunnelOverWs === true,
4081
4093
  browserAutomationMcpAvailable: isBrowserAutomationMcpAvailable(opts, env)
@@ -4095,7 +4107,9 @@ function createBootstrapCapabilities(input) {
4095
4107
  input.workspaceRuntimeAvailable,
4096
4108
  input.currentSessionSchedulingAvailable,
4097
4109
  input.env,
4098
- input.nativeDirectoryPickerAvailable
4110
+ input.nativeDirectoryPickerAvailable,
4111
+ input.localPathOpenAvailable,
4112
+ input.localTerminalOpenAvailable
4099
4113
  ),
4100
4114
  modelServices: [],
4101
4115
  workspaceCwd: input.boundWorkspace,
@@ -4226,6 +4240,8 @@ function createBootstrapServeApp(input) {
4226
4240
  } = input;
4227
4241
  const app = (0, import_express.default)();
4228
4242
  const nativeDirectoryPickerAvailable = isNativeDirectoryPickerAvailable();
4243
+ const localPathOpenAvailable = isLocalPathOpenAvailable();
4244
+ const localTerminalOpenAvailable = isLocalTerminalAvailable();
4229
4245
  installSelfOriginStripMiddleware(app, getPort, opts.hostname);
4230
4246
  if (opts.allowOrigins && opts.allowOrigins.length > 0) {
4231
4247
  app.use(allowOriginCors(parseAllowOriginPatterns(opts.allowOrigins)));
@@ -4281,7 +4297,9 @@ function createBootstrapServeApp(input) {
4281
4297
  currentSessionSchedulingAvailable,
4282
4298
  permissionPolicy,
4283
4299
  env: process.env,
4284
- nativeDirectoryPickerAvailable
4300
+ nativeDirectoryPickerAvailable,
4301
+ localPathOpenAvailable,
4302
+ localTerminalOpenAvailable
4285
4303
  })
4286
4304
  );
4287
4305
  });
@@ -4403,7 +4421,9 @@ function createBootstrapServeApp(input) {
4403
4421
  workspaceRuntimeAvailable,
4404
4422
  currentSessionSchedulingAvailable,
4405
4423
  process.env,
4406
- nativeDirectoryPickerAvailable
4424
+ nativeDirectoryPickerAvailable,
4425
+ localPathOpenAvailable,
4426
+ localTerminalOpenAvailable
4407
4427
  )
4408
4428
  },
4409
4429
  runtime: {
@@ -5041,7 +5061,7 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
5041
5061
  }
5042
5062
  let workspaceRegistrationStore = deps.workspaceRegistrationStore;
5043
5063
  if (workspaceRegistrationStore === void 0 && process.env["QWEN_SERVE_NO_PERSISTENT_REGISTRATION"] !== "1") {
5044
- const { WorkspaceRegistrationStore } = await import("./workspace-registration-store-RNMFVCH7.js");
5064
+ const { WorkspaceRegistrationStore } = await import("./workspace-registration-store-KQWVVW4Y.js");
5045
5065
  workspaceRegistrationStore = new WorkspaceRegistrationStore(boundWorkspace);
5046
5066
  }
5047
5067
  if (workspaceRegistrationStore) {
@@ -5332,7 +5352,7 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
5332
5352
  "qwen serve: required external tool guard handshake succeeded."
5333
5353
  );
5334
5354
  }
5335
- const { createDaemonToolGuard } = await import("./daemon-git-worktree-guard-ATXVQPS3.js");
5355
+ const { createDaemonToolGuard } = await import("./daemon-git-worktree-guard-O2HPOBAB.js");
5336
5356
  const daemonToolGuardHandler = createDaemonToolGuard(
5337
5357
  externalToolGuardHandler
5338
5358
  );
@@ -5679,7 +5699,7 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
5679
5699
  loadCoreRuntime(),
5680
5700
  loadSettingsRuntimeModules(),
5681
5701
  cliVersionPromise,
5682
- import("./daemon-trust-policy-SUCBJ2CA.js")
5702
+ import("./daemon-trust-policy-YJL442BK.js")
5683
5703
  ]);
5684
5704
  getWorkspaceRuntimeCoordinatorIfSupported = runtime.getWorkspaceRuntimeCoordinatorIfSupported;
5685
5705
  cliVersion = resolvedCliVersion;
@@ -5777,10 +5797,6 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
5777
5797
  runtimeBootSettings,
5778
5798
  runtimeEnvSnapshot.effectiveEnv
5779
5799
  );
5780
- const sessionAttachmentsRoot = /* @__PURE__ */ __name((workspace, runtimeBaseDir) => path.join(
5781
- new core.Storage(workspace, runtimeBaseDir).getProjectTempDir(),
5782
- "attachments"
5783
- ), "sessionAttachmentsRoot");
5784
5800
  const runtimeEffectiveEnv = {
5785
5801
  ...runtimeEnvSnapshot.effectiveEnv,
5786
5802
  QWEN_RUNTIME_DIR: primarySessionRuntimeBaseDir
@@ -5863,6 +5879,15 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
5863
5879
  daemonLog,
5864
5880
  emitTelemetryLog: core.emitDaemonLog
5865
5881
  });
5882
+ const warnAcpQueueSaturated = /* @__PURE__ */ __name((info) => {
5883
+ daemonLog.warn("ACP NDJSON decoded queue saturated", {
5884
+ requiredBytes: info.requiredBytes,
5885
+ availableBytes: info.availableBytes,
5886
+ maxQueuedMessages: info.maxQueuedMessages,
5887
+ maxQueuedBytes: info.maxQueuedBytes,
5888
+ queueSaturationGraceMs: info.graceMs
5889
+ });
5890
+ }, "warnAcpQueueSaturated");
5866
5891
  const recordPromptQueueWait = /* @__PURE__ */ __name((durationMs) => {
5867
5892
  promptQueueWaitStats.count += 1;
5868
5893
  promptQueueWaitStats.totalMs += durationMs;
@@ -6005,7 +6030,8 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
6005
6030
  direction: daemonPipeDirection(direction),
6006
6031
  bytes,
6007
6032
  message
6008
- }), "onMessageObserved")
6033
+ }), "onMessageObserved"),
6034
+ onQueueSaturated: warnAcpQueueSaturated
6009
6035
  },
6010
6036
  ...acpChildExtraArgs(opts) ? { extraArgs: acpChildExtraArgs(opts) } : {}
6011
6037
  });
@@ -6034,6 +6060,17 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
6034
6060
  }
6035
6061
  return source;
6036
6062
  }, "runtimeEpochSourceFor");
6063
+ let mcpAuthenticationActive = false;
6064
+ const acquireMcpAuthentication = /* @__PURE__ */ __name(() => {
6065
+ if (mcpAuthenticationActive) return void 0;
6066
+ mcpAuthenticationActive = true;
6067
+ let released = false;
6068
+ return () => {
6069
+ if (released) return;
6070
+ released = true;
6071
+ mcpAuthenticationActive = false;
6072
+ };
6073
+ }, "acquireMcpAuthentication");
6037
6074
  const totalSessionAdmission = runtime.createTotalSessionAdmissionController(
6038
6075
  {
6039
6076
  maxTotalSessions: opts.maxTotalSessions,
@@ -6070,7 +6107,7 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
6070
6107
  }), "persistDisabledToolsFn");
6071
6108
  const persistDisabledSkillsFn = /* @__PURE__ */ __name((workspace, skillName, enabled, assertGenerationOpen) => withSettingsLock(workspace, async () => {
6072
6109
  assertGenerationOpen?.();
6073
- const { skillSettingStrings, updateWorkspaceSkillSettingLists } = await import("./skill-settings-AKMIXFSJ.js");
6110
+ const { skillSettingStrings, updateWorkspaceSkillSettingLists } = await import("./skill-settings-AKSP665O.js");
6074
6111
  const fresh = loadSettingsForPersistence(workspace);
6075
6112
  const workspaceDisabled = skillSettingStrings(
6076
6113
  fresh,
@@ -6120,7 +6157,7 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
6120
6157
  }), "persistDisabledSkillsFn");
6121
6158
  const persistDisabledSkillsBatchFn = /* @__PURE__ */ __name((workspace, skillNames, enabled, assertGenerationOpen) => withSettingsLock(workspace, async () => {
6122
6159
  assertGenerationOpen?.();
6123
- const { skillSettingStrings, updateWorkspaceSkillSettingLists } = await import("./skill-settings-AKMIXFSJ.js");
6160
+ const { skillSettingStrings, updateWorkspaceSkillSettingLists } = await import("./skill-settings-AKSP665O.js");
6124
6161
  const fresh = loadSettingsForPersistence(workspace);
6125
6162
  const initialDisabled = skillSettingStrings(
6126
6163
  fresh,
@@ -6211,9 +6248,10 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
6211
6248
  }
6212
6249
  }), "persistSettingsFn");
6213
6250
  const [{ createSubSessionLauncher }, scheduledTaskRoutes] = await Promise.all([
6214
- import("./create-sub-session-DS4BJLYZ.js"),
6215
- import("./scheduled-tasks-2NVKS5Q2.js")
6251
+ import("./create-sub-session-NJ24B4US.js"),
6252
+ import("./scheduled-tasks-FLDYZQOF.js")
6216
6253
  ]);
6254
+ const { sessionAttachmentsRoots } = await import("./session-attachments-root-ZCGXQQTR.js");
6217
6255
  const createCurrentSessionScheduledTaskHandler = /* @__PURE__ */ __name((workspaceCwd, runtimeBaseDir, getBridge, assertGenerationOpen) => async ({
6218
6256
  callerSessionId,
6219
6257
  cron,
@@ -6254,11 +6292,13 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
6254
6292
  runtimeBootSettings?.merged.serve ?? {}
6255
6293
  )
6256
6294
  });
6295
+ const attachmentsRoots = sessionAttachmentsRoots(
6296
+ boundWorkspace,
6297
+ primarySessionRuntimeBaseDir
6298
+ );
6257
6299
  const bridge = deps.bridge ?? runtime.createAcpSessionBridge({
6258
- sessionAttachmentsRoot: sessionAttachmentsRoot(
6259
- boundWorkspace,
6260
- primarySessionRuntimeBaseDir
6261
- ),
6300
+ sessionAttachmentsRoot: attachmentsRoots.root,
6301
+ sessionAttachmentsFallbackRoot: attachmentsRoots.fallback,
6262
6302
  // Reverse tool channel: let `BridgeClient.extMethod` reach the WS
6263
6303
  // connection that hosts a named client MCP server (#5626).
6264
6304
  clientMcpSender: clientMcpSenderRegistry.lookup,
@@ -6306,6 +6346,7 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
6306
6346
  ...opts.permissionResponseTimeoutMs !== void 0 ? { permissionResponseTimeoutMs: opts.permissionResponseTimeoutMs } : {},
6307
6347
  boundWorkspace,
6308
6348
  runtimeEpochSource: runtimeEpochSourceFor(boundWorkspace),
6349
+ acquireMcpAuthentication,
6309
6350
  // Prompt terminal ledger: persisted beside the transcript so a
6310
6351
  // restarted daemon can reconcile dangling prompts on cold load.
6311
6352
  promptLedger: runtime.createPromptLedgerSink(
@@ -6685,7 +6726,8 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
6685
6726
  direction: daemonPipeDirection(direction),
6686
6727
  bytes,
6687
6728
  message
6688
- }), "onMessageObserved")
6729
+ }), "onMessageObserved"),
6730
+ onQueueSaturated: warnAcpQueueSaturated
6689
6731
  },
6690
6732
  ...acpChildExtraArgs(opts) ? { extraArgs: acpChildExtraArgs(opts) } : {}
6691
6733
  });
@@ -6698,11 +6740,13 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
6698
6740
  secondarySettings?.merged.serve ?? {}
6699
6741
  )
6700
6742
  });
6743
+ const secondaryAttachmentsRoots = sessionAttachmentsRoots(
6744
+ workspaceInput.cwd,
6745
+ secondaryEnv.sessionRuntimeBaseDir
6746
+ );
6701
6747
  const secondaryBridge = runtime.createAcpSessionBridge({
6702
- sessionAttachmentsRoot: sessionAttachmentsRoot(
6703
- workspaceInput.cwd,
6704
- secondaryEnv.sessionRuntimeBaseDir
6705
- ),
6748
+ sessionAttachmentsRoot: secondaryAttachmentsRoots.root,
6749
+ sessionAttachmentsFallbackRoot: secondaryAttachmentsRoots.fallback,
6706
6750
  clientMcpSender: secondaryClientMcpSenderRegistry.lookup,
6707
6751
  onCreateSubSession: secondarySubSessionLauncher.launch,
6708
6752
  onCreateCurrentSessionScheduledTask: createCurrentSessionScheduledTaskHandler(
@@ -6748,6 +6792,7 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
6748
6792
  ...opts.permissionResponseTimeoutMs !== void 0 ? { permissionResponseTimeoutMs: opts.permissionResponseTimeoutMs } : {},
6749
6793
  boundWorkspace: workspaceInput.cwd,
6750
6794
  runtimeEpochSource: runtimeEpochSourceFor(workspaceInput.cwd),
6795
+ acquireMcpAuthentication,
6751
6796
  promptLedger: runtime.createPromptLedgerSink(
6752
6797
  workspaceInput.cwd,
6753
6798
  secondaryEnv.sessionRuntimeBaseDir
@@ -7047,7 +7092,7 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
7047
7092
  };
7048
7093
  sessionPrRefreshTimer?.dispose();
7049
7094
  const refreshGeneration = ++sessionPrRefreshGeneration;
7050
- void import("./session-pr-refresh-OIVL3U3Z.js").then((mod) => {
7095
+ void import("./session-pr-refresh-CT2INROL.js").then((mod) => {
7051
7096
  if (refreshGeneration !== sessionPrRefreshGeneration) return;
7052
7097
  sessionPrRefreshTimer = mod.startSessionPrRefreshTimer({
7053
7098
  workspaceRegistry,
@@ -7121,7 +7166,8 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
7121
7166
  direction: daemonPipeDirection(direction),
7122
7167
  bytes,
7123
7168
  message
7124
- }), "onMessageObserved")
7169
+ }), "onMessageObserved"),
7170
+ onQueueSaturated: warnAcpQueueSaturated
7125
7171
  },
7126
7172
  ...acpChildExtraArgs(opts) ? { extraArgs: acpChildExtraArgs(opts) } : {}
7127
7173
  });
@@ -7148,11 +7194,13 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
7148
7194
  });
7149
7195
  let wsBridge;
7150
7196
  try {
7197
+ const wsAttachmentsRoots = sessionAttachmentsRoots(
7198
+ cwd,
7199
+ wsEnv.sessionRuntimeBaseDir
7200
+ );
7151
7201
  wsBridge = runtime.createAcpSessionBridge({
7152
- sessionAttachmentsRoot: sessionAttachmentsRoot(
7153
- cwd,
7154
- wsEnv.sessionRuntimeBaseDir
7155
- ),
7202
+ sessionAttachmentsRoot: wsAttachmentsRoots.root,
7203
+ sessionAttachmentsFallbackRoot: wsAttachmentsRoots.fallback,
7156
7204
  clientMcpSender: wsClientMcpRegistry.lookup,
7157
7205
  onCreateSubSession: wsSubSessionLauncher.launch,
7158
7206
  onCreateCurrentSessionScheduledTask: createCurrentSessionScheduledTaskHandler(
@@ -7196,6 +7244,7 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
7196
7244
  ...opts.permissionResponseTimeoutMs !== void 0 ? { permissionResponseTimeoutMs: opts.permissionResponseTimeoutMs } : {},
7197
7245
  boundWorkspace: cwd,
7198
7246
  runtimeEpochSource: runtimeEpochSourceFor(cwd),
7247
+ acquireMcpAuthentication,
7199
7248
  // Live-conversation workspaces keep transcripts outside the
7200
7249
  // runtime storage layout, so no ledger sink is wired there.
7201
7250
  ...provenance === "live-conversation" ? {} : {
@@ -7575,7 +7624,9 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
7575
7624
  } catch {
7576
7625
  }
7577
7626
  if (reason !== "daemon_shutdown" && channelWorkerManager && runtimeToDrain.provenance !== "live-conversation") {
7578
- await channelWorkerManager.removeWorkspace(runtimeToDrain.workspaceCwd).catch((err) => {
7627
+ await channelWorkerManager.removeWorkspace(runtimeToDrain.workspaceCwd, {
7628
+ permanent: reason === "workspace_removed"
7629
+ }).catch((err) => {
7579
7630
  daemonLog.error(
7580
7631
  "workspace channel worker cleanup error",
7581
7632
  err instanceof Error ? err : null
@@ -7705,8 +7756,8 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
7705
7756
  { createChannelManagementService },
7706
7757
  { WorkspaceChannelSettingsStore }
7707
7758
  ] = await Promise.all([
7708
- import("./channel-management-service-IDBNYSFW.js"),
7709
- import("./channel-settings-store-MZNXRKVI.js")
7759
+ import("./channel-management-service-4MTCEGJB.js"),
7760
+ import("./channel-settings-store-BVKWAI2T.js")
7710
7761
  ]);
7711
7762
  return createChannelManagementService({
7712
7763
  workspaceCwd: targetRuntime.workspaceCwd,
@@ -7911,8 +7962,8 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
7911
7962
  { createWorkspaceTrustReconciler },
7912
7963
  { createDaemonTrustPolicyMonitor }
7913
7964
  ] = await Promise.all([
7914
- import("./workspace-trust-reconciler-4LR3CDL4.js"),
7915
- import("./daemon-trust-policy-monitor-3LM5RQNS.js")
7965
+ import("./workspace-trust-reconciler-IBDFQBQS.js"),
7966
+ import("./daemon-trust-policy-monitor-JL7F4Y4Q.js")
7916
7967
  ]);
7917
7968
  const materializationFor = /* @__PURE__ */ __name((entry, snapshot, decision) => {
7918
7969
  const boundWorkspaces2 = entry.primary && decision.targetTrusted ? runtime.resolveBoundWorkspacesFromIdeEnv(
@@ -8109,7 +8160,7 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
8109
8160
  // through (and start the runtime) exactly like the warm app would.
8110
8161
  // Dynamic import keeps web-shell-static out of the serve fast-path
8111
8162
  // static closure (see the import-boundary guards in fast-path.test.ts).
8112
- isPreAuthRequest: webShellMounted ? (req) => import("./web-shell-static-PW7OEDQO.js").then(
8163
+ isPreAuthRequest: webShellMounted ? (req) => import("./web-shell-static-POZHGGXE.js").then(
8113
8164
  (webShellStatic) => webShellStatic.isPreAuthWebShellRequest(req)
8114
8165
  ) : void 0
8115
8166
  });
@@ -8129,7 +8180,7 @@ async function runQwenServeImpl(optsIn, deps, loggerLifecycle) {
8129
8180
  );
8130
8181
  }
8131
8182
  const channelValidationSettingsRuntime = opts.channelSelection ? await loadSettingsRuntimeModules() : void 0;
8132
- const channelValidationTrustPolicy = opts.channelSelection ? await import("./daemon-trust-policy-SUCBJ2CA.js") : void 0;
8183
+ const channelValidationTrustPolicy = opts.channelSelection ? await import("./daemon-trust-policy-YJL442BK.js") : void 0;
8133
8184
  const channelValidationTrustSnapshot = channelValidationTrustPolicy ? await channelValidationTrustPolicy.readDaemonTrustPolicySnapshot() : void 0;
8134
8185
  const resolveChannelWorkspaceGroupsAtListen = /* @__PURE__ */ __name(() => {
8135
8186
  if (!opts.channelSelection || !channelValidationSettingsRuntime || !channelRuntime) {