@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
@@ -1605,6 +1605,7 @@ var SERVE_CAPABILITY_REGISTRY = {
1605
1605
  session_organization: { since: "v1" },
1606
1606
  session_export: { since: "v1" },
1607
1607
  standalone_sessions_v1: { since: "v1" },
1608
+ standalone_session_options_v1: { since: "v1" },
1608
1609
  session_transcript: { since: "v1" },
1609
1610
  session_transcript_pagination: { since: "v1" },
1610
1611
  // Daemon supports the MCP client guardrail surface: an in-process
@@ -1799,6 +1800,12 @@ var SERVE_CAPABILITY_REGISTRY = {
1799
1800
  writer_idle_timeout: { since: "v1" },
1800
1801
  non_blocking_prompt: { since: "v1" },
1801
1802
  session_language: { since: "v1" },
1803
+ // Sessionless user-level language sync (`POST /language`) for hosts that
1804
+ // switch language before any session exists (issue #10234). Advertised
1805
+ // CONDITIONALLY with `workspace_settings`: the route persists user-scope
1806
+ // settings, so daemons without settings persistence omit the tag and
1807
+ // return 404.
1808
+ user_language_sync: { since: "v1" },
1802
1809
  session_rewind: { since: "v1" },
1803
1810
  workspace_hooks: { since: "v1" },
1804
1811
  session_hooks: { since: "v1" },
@@ -1845,6 +1852,18 @@ var SERVE_CAPABILITY_REGISTRY = {
1845
1852
  native_directory_picker: { since: "v1" },
1846
1853
  // Workspace-owned runtime lifecycle status and explicit on-demand startup.
1847
1854
  workspace_runtime: { since: "v1" },
1855
+ // The daemon host can open a workspace directory in the host's OS file
1856
+ // manager (Finder via `open` on macOS, Explorer via `explorer.exe` on
1857
+ // Windows, xdg-open on a Linux host with a display). Headless hosts omit
1858
+ // the tag so clients hide the Open-locally affordance instead of
1859
+ // surfacing a guaranteed launch failure.
1860
+ workspace_local_open: { since: "v1" },
1861
+ // The daemon host can open a terminal window in a workspace directory
1862
+ // (`open -a Terminal` on macOS, wt.exe/cmd.exe on Windows, a common
1863
+ // terminal emulator on a Linux host with a display). Headless hosts omit
1864
+ // the tag so clients hide the Open-in-terminal affordance instead of
1865
+ // surfacing a guaranteed launch failure.
1866
+ workspace_local_terminal: { since: "v1" },
1848
1867
  // Workspace-qualified core REST routes under `/workspaces/:workspace/...`.
1849
1868
  // Covers core file read/write/upload, status/permissions/trust/lifecycle/MCP/tool,
1850
1869
  // memory, workspace agent CRUD, and persisted session organization surfaces.
@@ -1945,6 +1964,10 @@ var CONDITIONAL_SERVE_FEATURES = /* @__PURE__ */ new Map([
1945
1964
  "standalone_sessions_v1",
1946
1965
  (toggles) => toggles.standaloneSessionsAvailable === true
1947
1966
  ],
1967
+ [
1968
+ "standalone_session_options_v1",
1969
+ (toggles) => toggles.standaloneSessionsAvailable === true
1970
+ ],
1948
1971
  ["mcp_workspace_pool", (toggles) => toggles.mcpPoolActive === true],
1949
1972
  ["mcp_pool_restart", (toggles) => toggles.mcpPoolActive === true],
1950
1973
  [
@@ -1961,6 +1984,7 @@ var CONDITIONAL_SERVE_FEATURES = /* @__PURE__ */ new Map([
1961
1984
  (toggles) => typeof toggles.writerIdleTimeoutMs === "number" && toggles.writerIdleTimeoutMs > 0
1962
1985
  ],
1963
1986
  ["workspace_settings", (toggles) => toggles.persistSettingAvailable === true],
1987
+ ["user_language_sync", (toggles) => toggles.persistSettingAvailable === true],
1964
1988
  ["workspace_voice", (toggles) => toggles.persistSettingAvailable === true],
1965
1989
  [
1966
1990
  "workspace_voice_transcription",
@@ -2034,6 +2058,14 @@ var CONDITIONAL_SERVE_FEATURES = /* @__PURE__ */ new Map([
2034
2058
  "workspace_runtime",
2035
2059
  (toggles) => toggles.workspaceRuntimeAvailable === true
2036
2060
  ],
2061
+ [
2062
+ "workspace_local_open",
2063
+ (toggles) => toggles.localPathOpenAvailable === true
2064
+ ],
2065
+ [
2066
+ "workspace_local_terminal",
2067
+ (toggles) => toggles.localTerminalOpenAvailable === true
2068
+ ],
2037
2069
  [
2038
2070
  "workspace_qualified_acp",
2039
2071
  // The plural routes are pre-mounted for workspaces registered after app
@@ -2213,6 +2245,248 @@ async function pickNativeDirectory(signal) {
2213
2245
  }
2214
2246
  __name(pickNativeDirectory, "pickNativeDirectory");
2215
2247
 
2248
+ // packages/cli/src/serve/local-path-open.ts
2249
+ init_esbuild_shims();
2250
+ import { execFile as execFile2, spawn } from "node:child_process";
2251
+ import { accessSync as accessSync2, constants as constants2, statSync as statSync2 } from "node:fs";
2252
+ import { delimiter as delimiter2, join as join2 } from "node:path";
2253
+ import { promisify as promisify2 } from "node:util";
2254
+ var execFileAsync2 = promisify2(execFile2);
2255
+ var OPEN_TIMEOUT_MS = 1e4;
2256
+ var LINUX_TERMINAL_NAMES = ["gnome-terminal", "konsole", "xterm"];
2257
+ function linuxTerminalCandidates(env) {
2258
+ return env["DISPLAY"] ? LINUX_TERMINAL_NAMES : LINUX_TERMINAL_NAMES.filter((name) => name !== "xterm");
2259
+ }
2260
+ __name(linuxTerminalCandidates, "linuxTerminalCandidates");
2261
+ var LocalPathOpenUnavailableError = class extends Error {
2262
+ static {
2263
+ __name(this, "LocalPathOpenUnavailableError");
2264
+ }
2265
+ };
2266
+ var SpawnHangError = class extends Error {
2267
+ static {
2268
+ __name(this, "SpawnHangError");
2269
+ }
2270
+ };
2271
+ function defaultMacOsSessionUids() {
2272
+ return process.platform === "darwin" ? readMacOsSessionUids2() : void 0;
2273
+ }
2274
+ __name(defaultMacOsSessionUids, "defaultMacOsSessionUids");
2275
+ function hasGuiSession(env, macOsSessionUids) {
2276
+ if (process.platform === "darwin") {
2277
+ return macOsSessionUids?.processUid !== void 0 && macOsSessionUids.processUid > 0 && macOsSessionUids.consoleUid === macOsSessionUids.processUid && !env["SSH_CONNECTION"] && !env["SSH_TTY"];
2278
+ }
2279
+ if (process.platform === "win32") {
2280
+ const sessionName = env["SESSIONNAME"]?.trim();
2281
+ return Boolean(sessionName && sessionName.toLowerCase() !== "services");
2282
+ }
2283
+ return void 0;
2284
+ }
2285
+ __name(hasGuiSession, "hasGuiSession");
2286
+ function findExecutableOnPath(env, names) {
2287
+ for (const name of names) {
2288
+ for (const dir of (env["PATH"] ?? "").split(delimiter2)) {
2289
+ if (dir === "") continue;
2290
+ const candidate = join2(dir, name);
2291
+ if (isExecutableFile2(candidate)) return candidate;
2292
+ }
2293
+ }
2294
+ return void 0;
2295
+ }
2296
+ __name(findExecutableOnPath, "findExecutableOnPath");
2297
+ function isLocalPathOpenAvailable(env = process.env, macOsSessionUids = defaultMacOsSessionUids()) {
2298
+ const guiSession = hasGuiSession(env, macOsSessionUids);
2299
+ if (guiSession !== void 0) return guiSession;
2300
+ if (process.platform !== "linux") return false;
2301
+ if (!env["DISPLAY"] && !env["WAYLAND_DISPLAY"]) return false;
2302
+ return findExecutableOnPath(env, ["xdg-open"]) !== void 0;
2303
+ }
2304
+ __name(isLocalPathOpenAvailable, "isLocalPathOpenAvailable");
2305
+ function isLocalTerminalAvailable(env = process.env, macOsSessionUids = defaultMacOsSessionUids()) {
2306
+ const guiSession = hasGuiSession(env, macOsSessionUids);
2307
+ if (guiSession !== void 0) return guiSession;
2308
+ if (process.platform !== "linux") return false;
2309
+ if (!env["DISPLAY"] && !env["WAYLAND_DISPLAY"]) return false;
2310
+ return findExecutableOnPath(env, linuxTerminalCandidates(env)) !== void 0;
2311
+ }
2312
+ __name(isLocalTerminalAvailable, "isLocalTerminalAvailable");
2313
+ function readMacOsSessionUids2() {
2314
+ try {
2315
+ return {
2316
+ processUid: process.getuid?.(),
2317
+ consoleUid: statSync2("/dev/console").uid
2318
+ };
2319
+ } catch {
2320
+ return {};
2321
+ }
2322
+ }
2323
+ __name(readMacOsSessionUids2, "readMacOsSessionUids");
2324
+ function isExecutableFile2(file) {
2325
+ try {
2326
+ if (!statSync2(file).isFile()) return false;
2327
+ accessSync2(file, constants2.X_OK);
2328
+ return true;
2329
+ } catch {
2330
+ return false;
2331
+ }
2332
+ }
2333
+ __name(isExecutableFile2, "isExecutableFile");
2334
+ async function openPathLocally(path, timeoutMs) {
2335
+ try {
2336
+ if (process.platform === "darwin") {
2337
+ await execFileAsync2("open", [path], { timeout: OPEN_TIMEOUT_MS });
2338
+ return;
2339
+ }
2340
+ if (process.platform === "win32") {
2341
+ assertPathExists(path);
2342
+ await spawnAndIgnoreExitCode("explorer.exe", [path], { timeoutMs });
2343
+ return;
2344
+ }
2345
+ if (process.platform === "linux") {
2346
+ await execFileAsync2("xdg-open", [path], { timeout: OPEN_TIMEOUT_MS });
2347
+ return;
2348
+ }
2349
+ } catch (error) {
2350
+ throw new LocalPathOpenUnavailableError(
2351
+ error instanceof Error ? error.message : String(error)
2352
+ );
2353
+ }
2354
+ throw new LocalPathOpenUnavailableError(
2355
+ `Local path open is not supported on ${process.platform}`
2356
+ );
2357
+ }
2358
+ __name(openPathLocally, "openPathLocally");
2359
+ function assertPathExists(path) {
2360
+ try {
2361
+ statSync2(path);
2362
+ } catch {
2363
+ throw new LocalPathOpenUnavailableError(`Path does not exist: ${path}`);
2364
+ }
2365
+ }
2366
+ __name(assertPathExists, "assertPathExists");
2367
+ async function openTerminalLocally(path, timeoutMs) {
2368
+ try {
2369
+ if (process.platform === "darwin") {
2370
+ await execFileAsync2("open", ["-a", "Terminal", path], {
2371
+ timeout: OPEN_TIMEOUT_MS
2372
+ });
2373
+ return;
2374
+ }
2375
+ if (process.platform === "win32") {
2376
+ assertPathExists(path);
2377
+ await spawnWindowsTerminal(path, timeoutMs);
2378
+ return;
2379
+ }
2380
+ if (process.platform === "linux") {
2381
+ assertPathExists(path);
2382
+ await spawnLinuxTerminal(path, timeoutMs);
2383
+ return;
2384
+ }
2385
+ } catch (error) {
2386
+ if (error instanceof LocalPathOpenUnavailableError) throw error;
2387
+ throw new LocalPathOpenUnavailableError(
2388
+ error instanceof Error ? error.message : String(error)
2389
+ );
2390
+ }
2391
+ throw new LocalPathOpenUnavailableError(
2392
+ `Local terminal open is not supported on ${process.platform}`
2393
+ );
2394
+ }
2395
+ __name(openTerminalLocally, "openTerminalLocally");
2396
+ async function spawnWindowsTerminal(path, timeoutMs) {
2397
+ try {
2398
+ await spawnAndIgnoreExitCode("wt.exe", ["-d", path], { timeoutMs });
2399
+ } catch (error) {
2400
+ if (error instanceof SpawnHangError) throw error;
2401
+ await spawnAndIgnoreExitCode(
2402
+ "powershell.exe",
2403
+ [
2404
+ "-NoProfile",
2405
+ "-STA",
2406
+ "-Command",
2407
+ 'Start-Process cmd.exe -WorkingDirectory "$env:QWEN_LOCAL_OPEN_DIR"'
2408
+ ],
2409
+ { extraEnv: { QWEN_LOCAL_OPEN_DIR: path }, timeoutMs }
2410
+ );
2411
+ }
2412
+ }
2413
+ __name(spawnWindowsTerminal, "spawnWindowsTerminal");
2414
+ async function spawnLinuxTerminal(path, timeoutMs) {
2415
+ const env = process.env;
2416
+ if (!env["DISPLAY"] && !env["WAYLAND_DISPLAY"]) {
2417
+ throw new LocalPathOpenUnavailableError("No display server available");
2418
+ }
2419
+ const terminal = findExecutableOnPath(env, linuxTerminalCandidates(env));
2420
+ if (terminal === void 0) {
2421
+ throw new LocalPathOpenUnavailableError(
2422
+ "No terminal emulator found on PATH"
2423
+ );
2424
+ }
2425
+ const name = terminal.split(/[\\/]/).pop();
2426
+ if (name === "gnome-terminal") {
2427
+ await spawnLongLived(terminal, [`--working-directory=${path}`], timeoutMs);
2428
+ return;
2429
+ }
2430
+ if (name === "konsole") {
2431
+ await spawnLongLived(terminal, ["--workdir", path], timeoutMs);
2432
+ return;
2433
+ }
2434
+ await spawnLongLived(
2435
+ terminal,
2436
+ ["-e", "sh", "-c", 'cd "$1" && exec "${SHELL:-/bin/sh}"', "sh", path],
2437
+ timeoutMs
2438
+ );
2439
+ }
2440
+ __name(spawnLinuxTerminal, "spawnLinuxTerminal");
2441
+ function spawnAndIgnoreExitCode(command, args, options = {}) {
2442
+ const { extraEnv, timeoutMs = OPEN_TIMEOUT_MS } = options;
2443
+ return new Promise((resolve2, reject) => {
2444
+ const child = spawn(command, [...args], {
2445
+ stdio: "ignore",
2446
+ ...extraEnv ? { env: { ...process.env, ...extraEnv } } : {}
2447
+ });
2448
+ const timer = setTimeout(() => {
2449
+ child.kill();
2450
+ reject(
2451
+ new SpawnHangError(`${command} did not exit within ${timeoutMs}ms`)
2452
+ );
2453
+ }, timeoutMs);
2454
+ child.once("error", (error) => {
2455
+ clearTimeout(timer);
2456
+ reject(error);
2457
+ });
2458
+ child.once("close", () => {
2459
+ clearTimeout(timer);
2460
+ resolve2();
2461
+ });
2462
+ });
2463
+ }
2464
+ __name(spawnAndIgnoreExitCode, "spawnAndIgnoreExitCode");
2465
+ function spawnLongLived(command, args, timeoutMs = OPEN_TIMEOUT_MS) {
2466
+ return new Promise((resolve2, reject) => {
2467
+ const child = spawn(command, [...args], {
2468
+ stdio: "ignore",
2469
+ detached: true
2470
+ });
2471
+ const timer = setTimeout(() => {
2472
+ child.kill();
2473
+ reject(
2474
+ new SpawnHangError(`${command} did not spawn within ${timeoutMs}ms`)
2475
+ );
2476
+ }, timeoutMs);
2477
+ child.once("error", (error) => {
2478
+ clearTimeout(timer);
2479
+ reject(error);
2480
+ });
2481
+ child.once("spawn", () => {
2482
+ clearTimeout(timer);
2483
+ child.unref();
2484
+ resolve2();
2485
+ });
2486
+ });
2487
+ }
2488
+ __name(spawnLongLived, "spawnLongLived");
2489
+
2216
2490
  // packages/cli/src/serve/types.ts
2217
2491
  init_esbuild_shims();
2218
2492
  var CAPABILITIES_SCHEMA_VERSION = 1;
@@ -2225,7 +2499,7 @@ import {
2225
2499
  basename,
2226
2500
  dirname,
2227
2501
  isAbsolute,
2228
- join as join2,
2502
+ join as join3,
2229
2503
  relative,
2230
2504
  resolve
2231
2505
  } from "node:path";
@@ -2303,7 +2577,7 @@ async function revalidateManagedScratchRoot(root) {
2303
2577
  __name(revalidateManagedScratchRoot, "revalidateManagedScratchRoot");
2304
2578
  async function createManagedScratchDirectory(root) {
2305
2579
  await revalidateManagedScratchRoot(root);
2306
- const created = await mkdtemp(join2(root.canonicalRoot, "scratch-"));
2580
+ const created = await mkdtemp(join3(root.canonicalRoot, "scratch-"));
2307
2581
  const canonical = realpathSync.native(created);
2308
2582
  if (!isManagedScratchChild(canonical, root.canonicalRoot)) {
2309
2583
  throw new Error("Managed scratch directory escaped its accepted root");
@@ -4165,6 +4439,11 @@ export {
4165
4439
  NativeDirectoryPickerUnavailableError,
4166
4440
  isNativeDirectoryPickerAvailable,
4167
4441
  pickNativeDirectory,
4442
+ LocalPathOpenUnavailableError,
4443
+ isLocalPathOpenAvailable,
4444
+ isLocalTerminalAvailable,
4445
+ openPathLocally,
4446
+ openTerminalLocally,
4168
4447
  CAPABILITIES_SCHEMA_VERSION,
4169
4448
  isManagedScratchChild,
4170
4449
  isScratchRootCompatible,
@@ -2,21 +2,21 @@
2
2
  "use strict";
3
3
  import {
4
4
  performStandaloneUpdate
5
- } from "./chunk-NGKLMNWN.js";
5
+ } from "./chunk-UM2FFKXN.js";
6
6
  import {
7
7
  updateEventEmitter
8
8
  } from "./chunk-YAF2MQZ6.js";
9
9
  import {
10
10
  require_semver
11
11
  } from "./chunk-2AUM35J5.js";
12
- import {
13
- t
14
- } from "./chunk-EU2B4P3D.js";
15
12
  import {
16
13
  getHomebrewLatestVersion,
17
14
  getInstallationInfo,
18
15
  resolveUpdateCommand
19
16
  } from "./chunk-7XL4WRXM.js";
17
+ import {
18
+ t
19
+ } from "./chunk-I4NRYS6A.js";
20
20
  import {
21
21
  createDebugLogger
22
22
  } from "./chunk-EAHOJF6V.js";
@@ -3,17 +3,19 @@
3
3
  import {
4
4
  settleChatRecording,
5
5
  subscribeToHeadlessChatRecordingFailures
6
- } from "./chunk-JOWQD4LO.js";
7
- import {
8
- handleAtCommand,
9
- normalizePartList
10
- } from "./chunk-AKNQMSL2.js";
6
+ } from "./chunk-5Q5RC2WE.js";
11
7
  import {
12
8
  JsonOutputAdapter
13
- } from "./chunk-XLENZQXH.js";
9
+ } from "./chunk-LHBNR6EU.js";
14
10
  import {
15
11
  StreamJsonOutputAdapter
16
- } from "./chunk-MZ5A5PQW.js";
12
+ } from "./chunk-UAKRDON5.js";
13
+ import {
14
+ normalizePartList
15
+ } from "./chunk-5IENVM7Z.js";
16
+ import {
17
+ handleAtCommand
18
+ } from "./chunk-LOBDDFYK.js";
17
19
  import {
18
20
  buildInitialSystemReminders,
19
21
  buildSystemMessage,
@@ -24,11 +26,11 @@ import {
24
26
  handleSlashCommand,
25
27
  insertAfterFunctionResponses,
26
28
  isSlashCommand
27
- } from "./chunk-BBYTY46C.js";
29
+ } from "./chunk-NVVJTUSL.js";
28
30
  import {
29
31
  RunBudgetEnforcer,
30
32
  cleanupReviewWorktreeLeases
31
- } from "./chunk-YOMKOM7E.js";
33
+ } from "./chunk-MP6YZ4RK.js";
32
34
  import {
33
35
  AlreadyReportedError,
34
36
  handleBudgetExceededError,
@@ -36,21 +38,22 @@ import {
36
38
  handleError,
37
39
  handleMaxTurnsExceededError,
38
40
  handleToolError
39
- } from "./chunk-MJBHSZEJ.js";
41
+ } from "./chunk-VNAYZAFX.js";
40
42
  import {
41
43
  isInlineModelOverrideAllowed
42
- } from "./chunk-W7KWB6AH.js";
44
+ } from "./chunk-6A2D4QSO.js";
43
45
  import {
44
46
  buildGoalContinuationParts,
45
47
  buildSessionRecoveryPlanFromApiHistory,
46
48
  detectAutonomousSentinel,
47
49
  detectLoopSentinel,
48
50
  executeToolCall
49
- } from "./chunk-NT7LXVV5.js";
51
+ } from "./chunk-JUARRUMA.js";
50
52
  import {
51
53
  restoreWorktreeContext
52
- } from "./chunk-ED7DD7MV.js";
54
+ } from "./chunk-RAFQIHN2.js";
53
55
  import {
56
+ GoalPersistenceUnavailableError,
54
57
  PLAN_MODE_ENTRY_SIBLING_SKIP_MESSAGE,
55
58
  clampInlineMediaPart,
56
59
  createDuplicateProviderToolCallResponse,
@@ -65,7 +68,7 @@ import {
65
68
  parseAndFormatApiError,
66
69
  partitionByConcurrencySafety,
67
70
  recordHandledToolCall
68
- } from "./chunk-ZBDYI7VM.js";
71
+ } from "./chunk-4F7GQGXB.js";
69
72
  import {
70
73
  parsePositiveIntegerEnv
71
74
  } from "./chunk-6PVPNMXU.js";
@@ -74,10 +77,7 @@ import {
74
77
  } from "./chunk-O6GEWCJA.js";
75
78
  import {
76
79
  addAgentOutputMessageAttributes
77
- } from "./chunk-OSTQZIOY.js";
78
- import {
79
- GoalPersistenceUnavailableError
80
- } from "./chunk-4P7PPAHN.js";
80
+ } from "./chunk-H43PSPYS.js";
81
81
  import {
82
82
  formatFullTurnVisionNotice,
83
83
  formatVisionBridgeNotice,
@@ -87,20 +87,20 @@ import {
87
87
  shouldRunVisionBridge,
88
88
  splitImageParts,
89
89
  uiTelemetryService
90
- } from "./chunk-FXUSWLBF.js";
90
+ } from "./chunk-GH2S4GD5.js";
91
91
  import {
92
92
  endInteractionSpan,
93
93
  getActiveInteractionSpan,
94
94
  isTelemetrySdkInitialized,
95
95
  shutdownTelemetry
96
- } from "./chunk-TBJ3SNS3.js";
96
+ } from "./chunk-QKDNS6FU.js";
97
97
  import {
98
98
  isSystemReminderContent
99
- } from "./chunk-D7D3HSYQ.js";
99
+ } from "./chunk-G7HBEEX7.js";
100
100
  import {
101
101
  ToolNames,
102
102
  canonicalToolName
103
- } from "./chunk-LYSZVCCD.js";
103
+ } from "./chunk-7JMGTOH7.js";
104
104
  import {
105
105
  FatalInputError,
106
106
  createDebugLogger,
@@ -108,7 +108,7 @@ import {
108
108
  } from "./chunk-EAHOJF6V.js";
109
109
  import {
110
110
  registerCleanup
111
- } from "./chunk-TV7BJ7TX.js";
111
+ } from "./chunk-RJUVTJEZ.js";
112
112
  import {
113
113
  init_esbuild_shims
114
114
  } from "./chunk-5O2XNYP6.js";
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-S2T7H5MI.js";
6
6
  import {
7
7
  isInternalPromptId
8
- } from "./chunk-FXUSWLBF.js";
8
+ } from "./chunk-GH2S4GD5.js";
9
9
  import {
10
10
  createDebugLogger
11
11
  } from "./chunk-EAHOJF6V.js";
@@ -2,26 +2,26 @@
2
2
  "use strict";
3
3
  import {
4
4
  t
5
- } from "./chunk-EU2B4P3D.js";
5
+ } from "./chunk-I4NRYS6A.js";
6
6
  import {
7
7
  computeThresholds,
8
8
  estimateContextTextTokens,
9
9
  formatContextFileDisplayPath,
10
10
  getMainSessionBaseSystemPrompt
11
- } from "./chunk-ZBDYI7VM.js";
11
+ } from "./chunk-4F7GQGXB.js";
12
12
  import {
13
13
  DiscoveredMCPTool,
14
14
  uiTelemetryService
15
- } from "./chunk-FXUSWLBF.js";
15
+ } from "./chunk-GH2S4GD5.js";
16
16
  import {
17
17
  DEFAULT_TOKEN_LIMIT
18
18
  } from "./chunk-FPGTNKCP.js";
19
19
  import {
20
20
  buildSkillLlmContent
21
- } from "./chunk-YKADANK6.js";
21
+ } from "./chunk-QQD2GART.js";
22
22
  import {
23
23
  ToolNames
24
- } from "./chunk-LYSZVCCD.js";
24
+ } from "./chunk-7JMGTOH7.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
  getCurrentAgentId
5
- } from "./chunk-26SIKQIC.js";
5
+ } from "./chunk-4LIFGNI4.js";
6
6
  import {
7
7
  getTeammateContext,
8
8
  isTeammate
9
9
  } from "./chunk-S6LOFUVP.js";
10
10
  import {
11
11
  ToolNames
12
- } from "./chunk-LYSZVCCD.js";
12
+ } from "./chunk-7JMGTOH7.js";
13
13
  import {
14
14
  init_esbuild_shims
15
15
  } from "./chunk-5O2XNYP6.js";
@@ -8,16 +8,16 @@ import {
8
8
  initializeI18n,
9
9
  resolveLanguageSetting,
10
10
  t
11
- } from "./chunk-EU2B4P3D.js";
11
+ } from "./chunk-I4NRYS6A.js";
12
12
  import {
13
13
  IdeClient
14
- } from "./chunk-ZBDYI7VM.js";
14
+ } from "./chunk-4F7GQGXB.js";
15
15
  import {
16
16
  AuthEvent,
17
17
  IdeConnectionEvent,
18
18
  logAuth,
19
19
  logIdeConnection
20
- } from "./chunk-FXUSWLBF.js";
20
+ } from "./chunk-GH2S4GD5.js";
21
21
  import {
22
22
  getErrorMessage
23
23
  } from "./chunk-EAHOJF6V.js";
@@ -36,7 +36,7 @@ import {
36
36
  createWorkerDiagnosticRedactor,
37
37
  normalizeWorkerDiagnostic,
38
38
  sanitizeWorkerDiagnostic
39
- } from "./chunk-3EGEBDTW.js";
39
+ } from "./chunk-M4KFODIP.js";
40
40
  import {
41
41
  channelSelectionNames
42
42
  } from "./chunk-ALMR3E6Q.js";
@@ -50,14 +50,14 @@ import {
50
50
  import {
51
51
  EXTERNAL_TOOL_GUARD_TOKEN_ENV
52
52
  } from "./chunk-3VUENPWF.js";
53
+ import {
54
+ sanitizeLogText
55
+ } from "./chunk-U4DJ5XB3.js";
53
56
  import {
54
57
  CHANNEL_WORKER_KILL_GRACE_MS,
55
58
  CHANNEL_WORKER_STARTUP_TIMEOUT_MS,
56
59
  CHANNEL_WORKER_STOP_GRACE_MS
57
60
  } from "./chunk-5HBA2Z7V.js";
58
- import {
59
- sanitizeLogText
60
- } from "./chunk-IXEZHTDR.js";
61
61
  import {
62
62
  init_esbuild_shims
63
63
  } from "./chunk-5O2XNYP6.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  resolvePath
5
- } from "./chunk-IXEZHTDR.js";
5
+ } from "./chunk-U4DJ5XB3.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";