@qwen-code/qwen-code 0.23.2-preview.0 → 0.23.3-nightly.20260910.c46cb85cf2

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 (409) hide show
  1. package/README.md +35 -15
  2. package/bundled/computer-use/SKILL.md +1 -1
  3. package/bundled/goal-draft/SKILL.md +2 -2
  4. package/bundled/qc-helper/docs/configuration/auth.md +1 -1
  5. package/bundled/qc-helper/docs/configuration/model-providers.md +76 -34
  6. package/bundled/qc-helper/docs/configuration/settings.md +5 -3
  7. package/bundled/qc-helper/docs/features/_meta.ts +1 -0
  8. package/bundled/qc-helper/docs/features/channels/dingtalk.md +1 -21
  9. package/bundled/qc-helper/docs/features/channels/dws.md +7 -1
  10. package/bundled/qc-helper/docs/features/channels/github.md +1 -9
  11. package/bundled/qc-helper/docs/features/channels/overview.md +30 -56
  12. package/bundled/qc-helper/docs/features/channels/qqbot.md +1 -2
  13. package/bundled/qc-helper/docs/features/commands.md +105 -18
  14. package/bundled/qc-helper/docs/features/computer-use.md +1 -1
  15. package/bundled/qc-helper/docs/features/cross-session-protocol.md +320 -0
  16. package/bundled/qc-helper/docs/features/goals.md +5 -3
  17. package/bundled/qc-helper/docs/features/hooks.md +14 -13
  18. package/bundled/qc-helper/docs/features/sub-agents.md +8 -0
  19. package/bundled/qc-helper/docs/qwen-serve.md +84 -53
  20. package/bundled/review/SKILL.md +82 -79
  21. package/bundled/review/references/posting.md +31 -14
  22. package/chunks/{MaxSizedBox-ZZJT3PJF.js → MaxSizedBox-UZW24XUX.js} +63 -55
  23. package/chunks/{StandaloneSessionPicker-DIOSZTMX.js → StandaloneSessionPicker-IDK7NAZL.js} +85 -77
  24. package/chunks/{acp-startup-profiler-KEU6VAYR.js → acp-startup-profiler-ARO4II44.js} +2 -2
  25. package/chunks/acp-subagent-executor-7TLJGISS.js +919 -0
  26. package/chunks/{acpAgent-62JUP5A7.js → acpAgent-YRCNNIIU.js} +939 -306
  27. package/chunks/{agent-NLPEQQDZ.js → agent-SGU5EE7U.js} +47 -41
  28. package/chunks/{agent-headless-Y2GR5F2Q.js → agent-headless-JVYBLNLT.js} +47 -41
  29. package/chunks/{anthropicContentGenerator-I7LQZH26.js → anthropicContentGenerator-SGIR5IKF.js} +68 -36
  30. package/chunks/{artifact-tool-P52OKKEF.js → artifact-tool-PMYZCYNH.js} +2 -2
  31. package/chunks/{askUserQuestion-I5W5S3D6.js → askUserQuestion-4M4YYIB4.js} +2 -2
  32. package/chunks/{bridge-Q66BD62H.js → bridge-YF6NYRPZ.js} +68 -60
  33. package/chunks/{ca-KC2AISNS.js → ca-MX3WCEEG.js} +1 -1
  34. package/chunks/{channel-management-service-TRTLQTSV.js → channel-management-service-E4HTMU7T.js} +9 -9
  35. package/chunks/{channel-settings-store-R5STFWUW.js → channel-settings-store-FZ5VKHQD.js} +74 -66
  36. package/chunks/{channel-worker-group-PIYPVCTF.js → channel-worker-group-X6WH4XWF.js} +9 -9
  37. package/chunks/{channel-worker-manager-FQHEDTD2.js → channel-worker-manager-SICFJDPJ.js} +19 -10
  38. package/chunks/{channel-worker-supervisor-XJPZZ3VK.js → channel-worker-supervisor-HSFAKML6.js} +6 -6
  39. package/chunks/{chunk-CLKE4IY3.js → chunk-2SZH22YO.js} +1 -1
  40. package/chunks/{chunk-OIPUQE3S.js → chunk-34ZYDM3F.js} +27 -12
  41. package/chunks/{chunk-HIXUUCGY.js → chunk-36HCNKDS.js} +1 -1
  42. package/chunks/{chunk-6YEOCHSE.js → chunk-3FPYT6QC.js} +101 -31
  43. package/chunks/{chunk-NFIDVZND.js → chunk-3I7W2POO.js} +3 -22
  44. package/chunks/{chunk-W3ONSAYO.js → chunk-3VPFA6L2.js} +3 -3
  45. package/chunks/chunk-532WHF4F.js +127 -0
  46. package/chunks/{chunk-J3TJH52D.js → chunk-5FFAUU4T.js} +1 -1
  47. package/chunks/{chunk-G5QLLD53.js → chunk-5FKZ7KFQ.js} +1864 -35
  48. package/chunks/{chunk-B44JBZBB.js → chunk-5GLDOLNQ.js} +132 -27
  49. package/chunks/{chunk-ORREXWOM.js → chunk-5ZJ3KK5J.js} +5 -5
  50. package/chunks/{chunk-2OR32P5M.js → chunk-6EDWSKN4.js} +125 -10
  51. package/chunks/{chunk-EA4NFWVG.js → chunk-6EOMQPTS.js} +4 -4
  52. package/chunks/{chunk-45ROPFQY.js → chunk-6NONRGYX.js} +1 -1
  53. package/chunks/{chunk-EHTKOO6W.js → chunk-6UK77U7D.js} +46 -3
  54. package/chunks/{chunk-QXXBW2G4.js → chunk-72BGC7RT.js} +4 -4
  55. package/chunks/{chunk-CRZBDVP2.js → chunk-74JEYK2C.js} +10 -10
  56. package/chunks/{chunk-B54PFQS5.js → chunk-7CLLH5TI.js} +1 -1
  57. package/chunks/{chunk-CG2PDIGD.js → chunk-7XM6KEVW.js} +1 -1
  58. package/chunks/{chunk-CALNF3Z3.js → chunk-7XVQNDFB.js} +1 -1
  59. package/chunks/{chunk-TK4XHPKW.js → chunk-7ZKDPTYO.js} +2 -2
  60. package/chunks/{chunk-ZIPYCXQP.js → chunk-7ZVIGDZF.js} +1 -1
  61. package/chunks/chunk-AEY27Z35.js +1411 -0
  62. package/chunks/{chunk-WIRYFL2L.js → chunk-ATH66AEU.js} +64 -59
  63. package/chunks/{chunk-33MLFMCL.js → chunk-AW2SIT3B.js} +3 -3
  64. package/chunks/{chunk-4BLTSTF6.js → chunk-AWMJRE5N.js} +4 -4
  65. package/chunks/chunk-AYEJOTIU.js +43 -0
  66. package/chunks/{chunk-M73KHGNR.js → chunk-B2TGBZXY.js} +420 -227
  67. package/chunks/{chunk-XDNFODER.js → chunk-B6BDT4RX.js} +1 -1
  68. package/chunks/{chunk-WZ4YULVF.js → chunk-BHR6IN2X.js} +3251 -974
  69. package/chunks/{chunk-GXIHBIHC.js → chunk-BI3WSRQE.js} +61 -72
  70. package/chunks/{chunk-NVS4Z6GT.js → chunk-BQOP3K76.js} +1 -1
  71. package/chunks/{chunk-R2266LQ5.js → chunk-BTWGOKHU.js} +2 -2
  72. package/chunks/{process-registry-OAEG6WGC.js → chunk-BYUAT5OC.js} +1 -0
  73. package/chunks/{chunk-XVTCSVBK.js → chunk-C4NLHK7X.js} +227 -298
  74. package/chunks/{chunk-NOO4QFXM.js → chunk-C75BXMPM.js} +1 -3
  75. package/chunks/chunk-CAAMI77K.js +937 -0
  76. package/chunks/chunk-CF5KXZZX.js +150 -0
  77. package/chunks/{chunk-SOA4HKRJ.js → chunk-CGKEUUYG.js} +2 -2
  78. package/chunks/{chunk-BF3RUIVP.js → chunk-CH2YDT6X.js} +36 -38
  79. package/chunks/{chunk-5HBA2Z7V.js → chunk-CJ3DHN5I.js} +3 -3
  80. package/chunks/{chunk-3BTHHXXE.js → chunk-CSHX5ZC4.js} +1 -1
  81. package/chunks/{chunk-UYDQYDW2.js → chunk-CUK6F5UF.js} +1 -1
  82. package/chunks/{chunk-RPFJJ33Z.js → chunk-DLH7YIX6.js} +3 -3
  83. package/chunks/{chunk-L6ZME3W7.js → chunk-DMX7RF6E.js} +1 -1
  84. package/chunks/{chunk-TRWQQBVH.js → chunk-DTNV6UZY.js} +1 -1
  85. package/chunks/{chunk-FDOGGKAA.js → chunk-E4UEO3XM.js} +5 -2
  86. package/chunks/{chunk-RN6V5HKE.js → chunk-E5GQNSJY.js} +3 -3
  87. package/chunks/chunk-ELRMZTPF.js +374 -0
  88. package/chunks/chunk-ERU3SDXT.js +27 -0
  89. package/chunks/{chunk-O2FEO2CB.js → chunk-EUURTIV6.js} +18 -2
  90. package/chunks/{chunk-4HOEU2OR.js → chunk-EWJTAP3Y.js} +1 -19
  91. package/chunks/{chunk-ZELCTN6Y.js → chunk-F23YN37B.js} +10 -0
  92. package/chunks/{chunk-BL6B2QS2.js → chunk-F2RKL5I2.js} +809 -1195
  93. package/chunks/{chunk-J4ECGDA3.js → chunk-F45SKYIQ.js} +3 -3
  94. package/chunks/{chunk-5WC2ECUK.js → chunk-FCQJLMA2.js} +114 -8
  95. package/chunks/{chunk-4JKLPTV6.js → chunk-FGRDUDCI.js} +13 -6
  96. package/chunks/{chunk-ZUNWKOAP.js → chunk-FGV2QEAO.js} +5 -27
  97. package/chunks/{chunk-4VY3ITHR.js → chunk-FN3JNDRU.js} +3 -3
  98. package/chunks/{chunk-XI7RST4D.js → chunk-FRVV5SSD.js} +2 -2
  99. package/chunks/{chunk-UXDVUFKU.js → chunk-FYZ5NZ3V.js} +2 -20
  100. package/chunks/{chunk-ALMR3E6Q.js → chunk-GDWE23OR.js} +3 -3
  101. package/chunks/{chunk-W7PXLIZJ.js → chunk-GP47UR3M.js} +6 -6
  102. package/chunks/{chunk-LNYV4GXX.js → chunk-GSKX53AN.js} +0 -139
  103. package/chunks/{chunk-MA5OUNN6.js → chunk-HG46TTAG.js} +1 -1
  104. package/chunks/{chunk-FETY36NQ.js → chunk-HGEUHUEV.js} +1 -1
  105. package/chunks/{chunk-UULHYZ4W.js → chunk-HL2DQG3Y.js} +148 -23
  106. package/chunks/{chunk-E6TI726I.js → chunk-HUXPEUFL.js} +1 -1
  107. package/chunks/{chunk-5DQ4YTIZ.js → chunk-HZTXKVSV.js} +1 -1
  108. package/chunks/{chunk-LYT2OU7D.js → chunk-IAEXTMED.js} +1 -1
  109. package/chunks/{chunk-CPJRFFPH.js → chunk-IFHJIEMN.js} +576 -169
  110. package/chunks/{chunk-IW6RQPQB.js → chunk-IJOS26LH.js} +1 -3
  111. package/chunks/{chunk-ORFIYTI2.js → chunk-IK2MWJP5.js} +1 -1
  112. package/chunks/{chunk-MWEF5MUK.js → chunk-IOUBOANU.js} +42 -13
  113. package/chunks/{chunk-KA5HR3G2.js → chunk-IUVIBDKU.js} +2 -2
  114. package/chunks/{chunk-PQWM4SX2.js → chunk-J2RNOJRV.js} +2 -2
  115. package/chunks/{chunk-VHPG7BH6.js → chunk-J5PYQVD2.js} +2 -2
  116. package/chunks/{chunk-JDPBJIKI.js → chunk-JDEW3V5B.js} +1 -1
  117. package/chunks/{chunk-RX3FYFCN.js → chunk-JEMDIKGQ.js} +7 -7
  118. package/chunks/chunk-JL6APGBX.js +43 -0
  119. package/chunks/{chunk-UHUT4IDM.js → chunk-JOMCZWX7.js} +9 -15
  120. package/chunks/{chunk-43CI6YWJ.js → chunk-JV5YASQA.js} +2777 -2151
  121. package/chunks/{chunk-N6S3NUYJ.js → chunk-JXNIF2O5.js} +1 -1
  122. package/chunks/chunk-K2OJUPOE.js +78 -0
  123. package/chunks/{chunk-QLM7D7W3.js → chunk-KFGPNCCY.js} +8 -8
  124. package/chunks/{chunk-7RXOEUFF.js → chunk-KHIBLKNK.js} +1 -1
  125. package/chunks/{chunk-5GD7LYOH.js → chunk-KVBNJ4K2.js} +5 -5
  126. package/chunks/{chunk-QJAFSFYA.js → chunk-KZ2CU2LH.js} +1 -1
  127. package/chunks/{chunk-DCPRCDSR.js → chunk-L2KF7HUE.js} +6 -6
  128. package/chunks/{chunk-4ALNJDHL.js → chunk-L3DTX6U4.js} +3 -1
  129. package/chunks/{chunk-3SH53ANB.js → chunk-LAP7X6EC.js} +12 -0
  130. package/chunks/{chunk-GM44O6F7.js → chunk-LEGNDA46.js} +1 -1
  131. package/chunks/{chunk-WXFCI3O5.js → chunk-LG5Y4OWO.js} +2 -2
  132. package/chunks/{chunk-3LPJ776W.js → chunk-LILGKQ4B.js} +10 -7
  133. package/chunks/{chunk-LBKYQ33T.js → chunk-LIR7YS2O.js} +18 -12
  134. package/chunks/{chunk-5Z4FCEPY.js → chunk-LK2WUCDQ.js} +625 -119
  135. package/chunks/{chunk-W673V2H3.js → chunk-LY2GK2PR.js} +4 -4
  136. package/chunks/{chunk-PQSCGZT2.js → chunk-MOS5OAOG.js} +36 -10
  137. package/chunks/chunk-MXOALJIL.js +691 -0
  138. package/chunks/chunk-NFXXBWSE.js +463 -0
  139. package/chunks/chunk-NUQ4GK5I.js +315 -0
  140. package/chunks/{chunk-J3VZF2AL.js → chunk-NUQVB25K.js} +2 -2
  141. package/chunks/{chunk-GNY7B3CA.js → chunk-NVIBH7WS.js} +1 -1
  142. package/chunks/{chunk-M6YLOETP.js → chunk-O3MKRN2I.js} +4 -4
  143. package/chunks/{chunk-ISPBBKJN.js → chunk-ONGZNOIP.js} +7 -2
  144. package/chunks/{chunk-Q2F43WTJ.js → chunk-OOLSYRZ7.js} +36 -19
  145. package/chunks/{chunk-63ACHB2H.js → chunk-PIGUW2U2.js} +197 -28
  146. package/chunks/{chunk-QAZ2MGYT.js → chunk-PLLIWEM3.js} +2 -2
  147. package/chunks/{chunk-ULY4ISY2.js → chunk-PMS4FVLY.js} +23 -8
  148. package/chunks/{chunk-NB3NDQQK.js → chunk-Q2XLNLAV.js} +1 -1
  149. package/chunks/{chunk-6GRDHIVI.js → chunk-Q6HXLBZF.js} +12 -12
  150. package/chunks/{chunk-EUXF6URV.js → chunk-QPWZX4ZV.js} +32 -34
  151. package/chunks/{chunk-DTB5BXRG.js → chunk-RJZTX2OF.js} +30 -17
  152. package/chunks/{chunk-PQEISIKS.js → chunk-SAH4BD2J.js} +0 -67
  153. package/chunks/{chunk-LUVXLLMS.js → chunk-SAWPURIU.js} +2 -2
  154. package/chunks/{chunk-WZS3X663.js → chunk-SNZWDV67.js} +43 -18
  155. package/chunks/{chunk-IRKQ4YYX.js → chunk-SVWWF5TZ.js} +29 -1
  156. package/chunks/{chunk-5VZFJTL2.js → chunk-SXEE6PND.js} +2 -2
  157. package/chunks/{chunk-743XE7N7.js → chunk-T4JVQR7Z.js} +2 -2
  158. package/chunks/{chunk-6RZX2HIH.js → chunk-TBEXLLAO.js} +2 -2
  159. package/chunks/{chunk-LN3WBOKU.js → chunk-TP2DUOB6.js} +8 -8
  160. package/chunks/{chunk-MWIO7MF6.js → chunk-TP6FYVQT.js} +2 -0
  161. package/chunks/{chunk-HRPFBHW7.js → chunk-TPKQIA7G.js} +1 -0
  162. package/chunks/{chunk-VH764G6B.js → chunk-TWC3FHUI.js} +4 -4
  163. package/chunks/{chunk-H3Q3RSKZ.js → chunk-U7O65WKL.js} +1 -1
  164. package/chunks/{chunk-IUJLW6ZI.js → chunk-UBEYS536.js} +7 -7
  165. package/chunks/{chunk-VEQBVJYH.js → chunk-UGS62IR2.js} +3 -3
  166. package/chunks/{chunk-VF6D6EGV.js → chunk-UKMWZ5NS.js} +109 -842
  167. package/chunks/{chunk-7GZCCHJL.js → chunk-VHKOULAI.js} +6 -5
  168. package/chunks/{chunk-ODBNTMZW.js → chunk-VID4BW52.js} +97 -86
  169. package/chunks/{chunk-7L35FKPF.js → chunk-VLZOU6UH.js} +7 -7
  170. package/chunks/{chunk-XBLG564H.js → chunk-VTBPMLRO.js} +12 -12
  171. package/chunks/{chunk-QTNCGZHQ.js → chunk-VX63RJXE.js} +9 -0
  172. package/chunks/{chunk-7VEYUF3N.js → chunk-W5ZQMAEM.js} +1 -1
  173. package/chunks/{chunk-XQ4RDO5B.js → chunk-WBCPROWX.js} +1 -1
  174. package/chunks/{chunk-RDV4NLI3.js → chunk-WS7MOFK6.js} +3 -3
  175. package/chunks/{chunk-FV4DM2M4.js → chunk-WXFK4MH7.js} +32 -12
  176. package/chunks/{chunk-XAXTQURR.js → chunk-WY4N6KS7.js} +4 -4
  177. package/chunks/{chunk-CABDNUJ4.js → chunk-XDQUDARC.js} +11 -14
  178. package/chunks/{chunk-YHDGABDC.js → chunk-XKBFYTCD.js} +1 -1
  179. package/chunks/{chunk-2EKVPSIJ.js → chunk-Y2MYW47X.js} +1 -1
  180. package/chunks/{chunk-Y6ZWXM44.js → chunk-YIU5PEAT.js} +2 -2
  181. package/chunks/{chunk-PSPAM24S.js → chunk-YKK2XXHF.js} +4 -0
  182. package/chunks/{chunk-HZ2HUXX7.js → chunk-YS2ZJSOA.js} +29 -12
  183. package/chunks/{chunk-OFVAS4AR.js → chunk-ZGQIIGNQ.js} +2 -2
  184. package/chunks/{chunk-HNLMYDQE.js → chunk-ZHECLGA6.js} +2 -4
  185. package/chunks/{chunk-XBVNNDPK.js → chunk-ZHKTKHMO.js} +8 -1
  186. package/chunks/{chunk-OWCFKIFQ.js → chunk-ZKYR7QS4.js} +1 -1
  187. package/chunks/{chunk-YZTGGCEE.js → chunk-ZKZHSB5W.js} +1 -1
  188. package/chunks/{chunk-ERXNTINK.js → chunk-ZT6EPPBY.js} +1 -1
  189. package/chunks/{chunk-565U2ANU.js → chunk-ZTTC7T4X.js} +1 -1
  190. package/chunks/{chunk-MMMA36MN.js → chunk-ZUQVZTWG.js} +3 -3
  191. package/chunks/{chunk-7OCIQNKX.js → chunk-ZW2EUO2A.js} +1 -1
  192. package/chunks/{config-utils-37FHWPTP.js → config-utils-S5LFS4RN.js} +67 -59
  193. package/chunks/{contextCommand-R4JUBV5N.js → contextCommand-XXKZMMSQ.js} +64 -56
  194. package/chunks/{core-runtime-6U4OXU5C.js → core-runtime-YGUA42AZ.js} +68 -59
  195. package/chunks/{create-sub-session-LLUYAGZN.js → create-sub-session-SEK6KCYR.js} +64 -56
  196. package/chunks/{create-sub-session-TGIX63YU.js → create-sub-session-TIGCFGCS.js} +2 -2
  197. package/chunks/{cron-create-GTPVMJCF.js → cron-create-AKWX67FO.js} +1 -1
  198. package/chunks/{cron-delete-ZBK27Z4K.js → cron-delete-XPB6IYZJ.js} +1 -1
  199. package/chunks/{cron-list-KTFKFDKC.js → cron-list-XBKO4WU5.js} +1 -1
  200. package/chunks/{daemon-UI6SQSBV.js → daemon-G5TYKZD6.js} +2 -2
  201. package/chunks/{daemon-git-worktree-guard-O2UTNFJC.js → daemon-git-worktree-guard-3AWINPPX.js} +65 -57
  202. package/chunks/{daemon-status-provider-7GMAKSTX.js → daemon-status-provider-RTKHKUFJ.js} +73 -65
  203. package/chunks/{daemon-trust-policy-VNP76VMO.js → daemon-trust-policy-6YQOC7B6.js} +69 -61
  204. package/chunks/{daemon-trust-policy-monitor-TD5O3BZA.js → daemon-trust-policy-monitor-EN5L23GS.js} +69 -61
  205. package/chunks/{de-UU2YTO37.js → de-OOLZAU2U.js} +1 -1
  206. package/chunks/{deferred-core-runtime-NJM63YJS.js → deferred-core-runtime-JPLQRVZO.js} +62 -54
  207. package/chunks/{display-image-CTNHJRZC.js → display-image-NAH3AZ63.js} +3 -3
  208. package/chunks/{dist-STAGIFNB.js → dist-3BJVSJ7D.js} +389 -724
  209. package/chunks/{dist-OR2ZQTXZ.js → dist-65Q3TRLH.js} +16 -36
  210. package/chunks/{dist-24TCWK5H.js → dist-HX2LG76F.js} +233 -35
  211. package/chunks/{dist-XJ25G6OH.js → dist-J7PDFK53.js} +13 -38
  212. package/chunks/{dist-WZTUKIDR.js → dist-JCXKXRH6.js} +3 -6
  213. package/chunks/{dist-M4CBX53H.js → dist-LHGMHIDK.js} +2 -6
  214. package/chunks/{dist-5I4HLUTO.js → dist-QPTIRE3U.js} +4 -13
  215. package/chunks/{dist-FDISN4AK.js → dist-SBK33YLC.js} +5 -40
  216. package/chunks/{dist-NQ2636VT.js → dist-WMFHZG3R.js} +2 -5
  217. package/chunks/{edit-GL7OA6RV.js → edit-QXJZIWRQ.js} +50 -44
  218. package/chunks/{en-YJNRUQG4.js → en-7BZ2OZKH.js} +2 -1
  219. package/chunks/{enter-worktree-YFTKHXHZ.js → enter-worktree-54L5QJ3N.js} +4 -4
  220. package/chunks/{enterPlanMode-VC4BCSZE.js → enterPlanMode-2ITCVQ5N.js} +47 -41
  221. package/chunks/{environment-BI6IBAZJ.js → environment-URPO5ORZ.js} +65 -57
  222. package/chunks/{errors-D6G2ZM2R.js → errors-TDUYLEKI.js} +64 -56
  223. package/chunks/{exit-worktree-NF2XEMES.js → exit-worktree-EORJDKDS.js} +4 -4
  224. package/chunks/{exitPlanMode-DX446CA6.js → exitPlanMode-RA7KMUEW.js} +47 -41
  225. package/chunks/{fast-path-MAYDLJIP.js → fast-path-Q2JYP64P.js} +7 -7
  226. package/chunks/{fast-path-settings-SATXY3PD.js → fast-path-settings-GTHZLVSS.js} +2 -2
  227. package/chunks/{fr-HKNWVXRJ.js → fr-JJWM2HUS.js} +1 -1
  228. package/chunks/{glob-TVKRFY36.js → glob-VHSV4BKE.js} +50 -44
  229. package/chunks/{goal-tools-CA6YANRN.js → goal-tools-5FIE56CK.js} +53 -43
  230. package/chunks/{grep-BLHF2S5D.js → grep-3PKFKLCA.js} +2 -2
  231. package/chunks/{handleAutoUpdate-AW4ZAHON.js → handleAutoUpdate-7FZFLKNZ.js} +65 -57
  232. package/chunks/{i18n-IH5CRAY7.js → i18n-NTFQDWKR.js} +63 -55
  233. package/chunks/{image-gen-XP4NNIYG.js → image-gen-TF3IQWSH.js} +7 -6
  234. package/chunks/{initializer-UBR37ZNM.js → initializer-LB3T635H.js} +69 -61
  235. package/chunks/{installationInfo-Y52756EC.js → installationInfo-KRO433ZG.js} +62 -54
  236. package/chunks/{ja-GJS5RZGU.js → ja-L67TXFDJ.js} +1 -1
  237. package/chunks/{list-7V5JDZPO.js → list-NEP3WPZ7.js} +72 -64
  238. package/chunks/{list-agents-I5TRH3J7.js → list-agents-QLDXS5OD.js} +18 -8
  239. package/chunks/{llm-QDB6JVF5.js → llm-AZEJEIAD.js} +141 -128
  240. package/chunks/{llm-content-generator-EO6MZCEO.js → llm-content-generator-KWXFHBR3.js} +6 -5
  241. package/chunks/{loadedSettingsAdapter-I3YQKMC4.js → loadedSettingsAdapter-NZORJLSD.js} +69 -61
  242. package/chunks/{loggingContentGenerator-MNXYUGDG.js → loggingContentGenerator-NGHVU6AK.js} +69 -62
  243. package/chunks/{loop-wakeup-HL6XOWI4.js → loop-wakeup-HHMYIC7Z.js} +2 -2
  244. package/chunks/{ls-YV7RKLKY.js → ls-N7ABR6HI.js} +4 -4
  245. package/chunks/{lsp-NO3AMRZT.js → lsp-LTOFWG5P.js} +1 -1
  246. package/chunks/{managed-npm-update-EA3EXPTO.js → managed-npm-update-3LHNBEAG.js} +62 -54
  247. package/chunks/{mcp-QTAJ544Y.js → mcp-4SWJKDX7.js} +69 -61
  248. package/chunks/{monitor-6FQKQOTP.js → monitor-V5EFBZC7.js} +49 -43
  249. package/chunks/{nonInteractiveCli-MRCTZL5X.js → nonInteractiveCli-5UFUBUAT.js} +117 -109
  250. package/chunks/{notebook-edit-BQQCKI7K.js → notebook-edit-ATV46KWD.js} +48 -42
  251. package/chunks/{open-with-auth-D6JD6LDS.js → open-with-auth-6MVIHMXB.js} +1 -1
  252. package/chunks/openai-WX26N5OJ.js +47 -0
  253. package/chunks/{openaiContentGenerator-TTSKXNVH.js → openaiContentGenerator-BKTO5QJK.js} +31 -25
  254. package/chunks/openaiResponsesContentGenerator-RTCAJ5V5.js +1658 -0
  255. package/chunks/{pidfile-KPIS6RIT.js → pidfile-JAIOWPI3.js} +65 -55
  256. package/chunks/process-registry-X6ZCASEN.js +10 -0
  257. package/chunks/{processUtils-ZCASPKK4.js → processUtils-TCQH3LVD.js} +2 -2
  258. package/chunks/{prompt-terminal-ledger-D6HM6TV7.js → prompt-terminal-ledger-BYXHEUHX.js} +63 -55
  259. package/chunks/{pt-FXMYXEUV.js → pt-77SBDL4B.js} +1 -1
  260. package/chunks/{qwenContentGenerator-GGZEFLBD.js → qwenContentGenerator-K5TJK75P.js} +60 -52
  261. package/chunks/{qwenOAuth2-KX6LVYQ3.js → qwenOAuth2-NOXRK323.js} +6 -5
  262. package/chunks/{read-file-VE5GDFLP.js → read-file-DL7GNZD5.js} +11 -9
  263. package/chunks/{read-mcp-resource-D3N75DGF.js → read-mcp-resource-B37WANAQ.js} +1 -1
  264. package/chunks/{record-artifact-Q5CRGJTP.js → record-artifact-OAXWXZ5D.js} +2 -2
  265. package/chunks/record-source-D7R7X3GT.js +22 -0
  266. package/chunks/{report-findings-TJ34R7QK.js → report-findings-AR3VC6EQ.js} +3 -3
  267. package/chunks/{request-shutdown-LRKMTBAD.js → request-shutdown-IKNWTX5M.js} +5 -5
  268. package/chunks/{resumeHistoryUtils-HSSGMYDC.js → resumeHistoryUtils-OYKXZ4YO.js} +68 -60
  269. package/chunks/{ripGrep-SEJE7AA6.js → ripGrep-EOUMIU4K.js} +15 -13
  270. package/chunks/{ru-RMHURE5U.js → ru-UYWHKWF2.js} +1 -1
  271. package/chunks/{run-qwen-serve-OJYVH7N6.js → run-qwen-serve-PPTGWC5B.js} +471 -152
  272. package/chunks/{runtime-KGMQQFJD.js → runtime-5RO22P2N.js} +77 -67
  273. package/chunks/{scheduled-tasks-7H5HWHYD.js → scheduled-tasks-YGERFWLZ.js} +70 -62
  274. package/chunks/{scheduler-BE42AKDG.js → scheduler-S6WU6M3C.js} +64 -56
  275. package/chunks/{sdk-exporters-grpc-MXTVSE3C.js → sdk-exporters-grpc-Y2ZUQDUQ.js} +2 -2
  276. package/chunks/{sdk-exporters-http-7R2ARBPV.js → sdk-exporters-http-VWTF4W6K.js} +3 -3
  277. package/chunks/{sdk-impl-YOLO7LV4.js → sdk-impl-G6FVTBQZ.js} +9 -9
  278. package/chunks/{send-message-AWKUDJBH.js → send-message-TWOGWCBG.js} +13 -10
  279. package/chunks/{serve-KZVKYMSL.js → serve-HT4WOCWS.js} +70 -62
  280. package/chunks/{server-PJRALPJQ.js → server-SWXVPRCS.js} +2977 -617
  281. package/chunks/{session-IHITXU2S.js → session-6DSFUOMO.js} +154 -119
  282. package/chunks/{session-attachments-root-GQ2TUI3Y.js → session-attachments-root-SOZCTQWW.js} +62 -54
  283. package/chunks/{session-pr-refresh-H43LULTE.js → session-pr-refresh-F7XUBQBH.js} +70 -62
  284. package/chunks/{settings-RKEQQDFC.js → settings-SWQH36PO.js} +74 -66
  285. package/chunks/{shell-6PJ444U5.js → shell-XUQL6EYV.js} +47 -41
  286. package/chunks/{skill-Q3UP7B5V.js → skill-HNRDD54C.js} +33 -23
  287. package/chunks/{skill-settings-LZR5YRRW.js → skill-settings-JU72PCII.js} +68 -60
  288. package/chunks/{spawnChannel-WM3DT2BF.js → spawnChannel-7ZVM3GBU.js} +65 -57
  289. package/chunks/{standalone-update-E5474IBI.js → standalone-update-64JQY2LX.js} +64 -56
  290. package/chunks/{start-opentui-ui-WLWZNQ2I.js → start-opentui-ui-RSLBXESU.js} +554 -297
  291. package/chunks/{startInteractiveUI-FBQSGWGO.js → startInteractiveUI-ZDPHD7XE.js} +1282 -1915
  292. package/chunks/{syntheticOutput-D2P5V6RG.js → syntheticOutput-F6F27JMK.js} +2 -2
  293. package/chunks/{task-create-PMAFST2T.js → task-create-Y623TBHB.js} +10 -10
  294. package/chunks/{task-list-R2HSY2NC.js → task-list-FCPEEGWL.js} +3 -3
  295. package/chunks/{task-stop-BFSKRTGV.js → task-stop-QTKZXLPH.js} +1 -1
  296. package/chunks/{task-update-JYC57USF.js → task-update-YLSXF25N.js} +10 -10
  297. package/chunks/{team-create-VIGUFUT4.js → team-create-U52VYSNO.js} +49 -43
  298. package/chunks/{team-delete-CBHVBTPB.js → team-delete-S7TLHZCF.js} +3 -3
  299. package/chunks/{team-plan-approval-HQVZA3MD.js → team-plan-approval-IQ4ADQIK.js} +47 -41
  300. package/chunks/{terminal-image-renderer-LUKNCOVM.js → terminal-image-renderer-ZEMF7LB2.js} +64 -56
  301. package/chunks/{theme-manager-LOENKYLY.js → theme-manager-DK2S2SOX.js} +62 -54
  302. package/chunks/{todoWrite-5ERKFWAK.js → todoWrite-5QI2H2FW.js} +4 -4
  303. package/chunks/{tool-search-ZIFAQCE2.js → tool-search-6U4OQG7K.js} +21 -15
  304. package/chunks/{total-session-admission-FUUJH3QH.js → total-session-admission-BOARHBZU.js} +68 -60
  305. package/chunks/{trustedFolders-C76KYROP.js → trustedFolders-GKQZXZSV.js} +63 -55
  306. package/chunks/{update-relaunch-4G2SRXKX.js → update-relaunch-GLACF7PX.js} +5 -5
  307. package/chunks/{updateCheck-EIZIO7HI.js → updateCheck-NLBSZB4Q.js} +64 -56
  308. package/chunks/{useAutoAcceptIndicator-EAA6KSY4.js → useAutoAcceptIndicator-3X3BYU7H.js} +72 -64
  309. package/chunks/{validateNonInterActiveAuth-BRX22QCN.js → validateNonInterActiveAuth-NE3JLOIR.js} +114 -106
  310. package/chunks/{version-E56RU7PR.js → version-6H5YAT4N.js} +3 -1
  311. package/chunks/{web-fetch-AAUCD7RM.js → web-fetch-RWSO7TTN.js} +15 -13
  312. package/chunks/{web-search-HFUQF44Q.js → web-search-DADI3LV5.js} +560 -322
  313. package/chunks/{web-shell-static-POZHGGXE.js → web-shell-static-CCN4JZEE.js} +5 -4
  314. package/chunks/workflow-LPGCZCIT.js +1224 -0
  315. package/chunks/workspace-providers-status-QBRBEFTO.js +127 -0
  316. package/chunks/{workspace-registration-store-YL7HLYYI.js → workspace-registration-store-WUKTMJPW.js} +3 -2
  317. package/chunks/{workspace-registry-BNRP2ELW.js → workspace-registry-CJV7KVGF.js} +68 -60
  318. package/chunks/{workspace-runtime-coordinator-WKGF7VHS.js → workspace-runtime-coordinator-7LYMFMFF.js} +71 -61
  319. package/chunks/{workspace-service-4MYO72MM.js → workspace-service-HWXZSA4J.js} +75 -67
  320. package/chunks/{workspace-skills-status-SU66TJLZ.js → workspace-skills-status-D6QXUWCC.js} +70 -62
  321. package/chunks/{workspace-trust-reconciler-D5QT7WQB.js → workspace-trust-reconciler-VZX7G7CZ.js} +75 -67
  322. package/chunks/{write-file-NVPQE2AZ.js → write-file-KKHV26YV.js} +49 -43
  323. package/chunks/{zh-VBFCRQBL.js → zh-J2GLI64H.js} +2 -1
  324. package/chunks/{zh-TW-N2TBF2F2.js → zh-TW-TBAICUJQ.js} +2 -1
  325. package/chunks/{zoom-image-RJHC66WG.js → zoom-image-OG7X7KAA.js} +12 -10
  326. package/cli.js +14 -14
  327. package/export-transcript-document.css +1 -0
  328. package/export-transcript-document.js +164 -165
  329. package/locales/ca.js +2 -2
  330. package/locales/de.js +2 -2
  331. package/locales/en.js +3 -2
  332. package/locales/fr.js +2 -2
  333. package/locales/ja.js +2 -2
  334. package/locales/pt.js +2 -2
  335. package/locales/ru.js +2 -2
  336. package/locales/zh-TW.js +3 -2
  337. package/locales/zh.js +3 -2
  338. package/package.json +6 -5
  339. package/web-shell/assets/{abnfDiagram-VCTEODGH-DHc6plZn.js → abnfDiagram-VCTEODGH-NT0lTLRG.js} +1 -1
  340. package/web-shell/assets/{arc-BQ9m8TDV.js → arc-DDqnIMMx.js} +1 -1
  341. package/web-shell/assets/{architectureDiagram-5GKGNRK7-D5ap3oVB.js → architectureDiagram-5GKGNRK7-DfYghE3W.js} +1 -1
  342. package/web-shell/assets/{blockDiagram-NRAW4CY4-BIbnyNph.js → blockDiagram-NRAW4CY4-DlqJIx5c.js} +1 -1
  343. package/web-shell/assets/{c4Diagram-UCG6FXSJ-BRsdx_iG.js → c4Diagram-UCG6FXSJ-CinqLGU4.js} +1 -1
  344. package/web-shell/assets/channel-BHGoSkEv.js +1 -0
  345. package/web-shell/assets/{chunk-2Q5K7J3B-3lf1fNlx.js → chunk-2Q5K7J3B-CsjJX5M7.js} +1 -1
  346. package/web-shell/assets/{chunk-5VM5RSS4-DP8VNRc4.js → chunk-5VM5RSS4-CaVb2tdH.js} +1 -1
  347. package/web-shell/assets/{chunk-F27PBJKO-DrohDmZ6.js → chunk-F27PBJKO-CRyErlzW.js} +1 -1
  348. package/web-shell/assets/{chunk-G27WJ6UU-UZ2QhSx6.js → chunk-G27WJ6UU-7I79DZCf.js} +1 -1
  349. package/web-shell/assets/{chunk-JWPE2WC7-BIMHVcZK.js → chunk-JWPE2WC7-Dz4cac5F.js} +1 -1
  350. package/web-shell/assets/{chunk-LCL6LL3I-izRxdSDd.js → chunk-LCL6LL3I-Ls24Derb.js} +1 -1
  351. package/web-shell/assets/{chunk-POPQ4Y6H-CXADD4PP.js → chunk-POPQ4Y6H-JzYe4qx7.js} +1 -1
  352. package/web-shell/assets/{chunk-SVP7TREG-B96d8Y_1.js → chunk-SVP7TREG-BxDwesA-.js} +1 -1
  353. package/web-shell/assets/{chunk-XXDRQBXY-CF2sVQpv.js → chunk-XXDRQBXY-CW4hjgWc.js} +1 -1
  354. package/web-shell/assets/classDiagram-DTDB5LWJ-E47Xnn15.js +1 -0
  355. package/web-shell/assets/classDiagram-v2-JRS7N3AN-E47Xnn15.js +1 -0
  356. package/web-shell/assets/{cose-bilkent-JH36ORCC-CT6tXVAS.js → cose-bilkent-JH36ORCC-DxikE9iF.js} +1 -1
  357. package/web-shell/assets/{cynefin-OW5HDTMX-X1NS4vtV.js → cynefin-OW5HDTMX-CvVsIkVN.js} +1 -1
  358. package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-DNsKNOT4.js → cynefinDiagram-5FMLGOSQ-CDHkk3wq.js} +1 -1
  359. package/web-shell/assets/{dagre-3AP2YEHR-9-AHKqsb.js → dagre-3AP2YEHR-BgLdkVLT.js} +1 -1
  360. package/web-shell/assets/{diagram-S7CK7UJ4-Bjgms7j6.js → diagram-S7CK7UJ4-DP43cGhe.js} +1 -1
  361. package/web-shell/assets/{diagram-UQ7AKVKN-h6bCprbE.js → diagram-UQ7AKVKN-BWrZYhoT.js} +1 -1
  362. package/web-shell/assets/{diagram-VSXAHHWV-4SbQXVLt.js → diagram-VSXAHHWV-B80wjH_n.js} +1 -1
  363. package/web-shell/assets/{diagram-VX7I27RA-B5gPCzzB.js → diagram-VX7I27RA-DPpKmDsY.js} +1 -1
  364. package/web-shell/assets/{diagram-Z3DM3KII-DFJXIA3A.js → diagram-Z3DM3KII-kaEBNbNU.js} +1 -1
  365. package/web-shell/assets/{ebnfDiagram-PWID7BFC-FwyaU7VY.js → ebnfDiagram-PWID7BFC-1-qbEZvk.js} +1 -1
  366. package/web-shell/assets/{erDiagram-SSCWMZ5O-8vJQh2te.js → erDiagram-SSCWMZ5O-CrK2gMkV.js} +1 -1
  367. package/web-shell/assets/{flowDiagram-A5DVABFB-BzA_1gMN.js → flowDiagram-A5DVABFB-Dic2xofW.js} +1 -1
  368. package/web-shell/assets/{ganttDiagram-EL5Y4UJY-Co-ABbVX.js → ganttDiagram-EL5Y4UJY-DJko8vT7.js} +1 -1
  369. package/web-shell/assets/{gitGraphDiagram-WWUBYQGX-DW_FcyrX.js → gitGraphDiagram-WWUBYQGX-DxsQ-bHT.js} +1 -1
  370. package/web-shell/assets/index-DY8CxdBr.js +2173 -0
  371. package/web-shell/assets/index-eBxK3rs2.css +36 -0
  372. package/web-shell/assets/{index-BbMXfhNG.js → index-t7VBrUeD.js} +1 -1
  373. package/web-shell/assets/{infoDiagram-RXCK75RN-BEgfhUFN.js → infoDiagram-RXCK75RN-DcRUJbNi.js} +1 -1
  374. package/web-shell/assets/{ishikawaDiagram-5VMMS53U-DCsMxQmc.js → ishikawaDiagram-5VMMS53U-CUPw-2_e.js} +1 -1
  375. package/web-shell/assets/{journeyDiagram-EYS64GPL-DyIEYoHz.js → journeyDiagram-EYS64GPL-yOHhZxkW.js} +1 -1
  376. package/web-shell/assets/{kanban-definition-3QL26DDD-CkxjqCNr.js → kanban-definition-3QL26DDD-CFUGBbqz.js} +1 -1
  377. package/web-shell/assets/{layout-BEWc0Al9.js → layout-BoilNfBU.js} +1 -1
  378. package/web-shell/assets/{linear-CNuNxirL.js → linear-DOuHaPrl.js} +1 -1
  379. package/web-shell/assets/{mermaid.core-DZBre674.js → mermaid.core-1G1fXWda.js} +6 -6
  380. package/web-shell/assets/{mindmap-definition-FBJOCRG2-CpafFz_F.js → mindmap-definition-FBJOCRG2-B8BhkrOX.js} +1 -1
  381. package/web-shell/assets/{pegDiagram-XKGWAZYB-DfZqk_dq.js → pegDiagram-XKGWAZYB-CipC5K1D.js} +1 -1
  382. package/web-shell/assets/{pieDiagram-E7YTZNPT-S0UWXlgC.js → pieDiagram-E7YTZNPT-CHBDFDUJ.js} +1 -1
  383. package/web-shell/assets/{quadrantDiagram-AXDQQJYC-dd37_Ohj.js → quadrantDiagram-AXDQQJYC-_iiBkoZO.js} +1 -1
  384. package/web-shell/assets/{railroadDiagram-O6MQD6OU-CH8NJZ7u.js → railroadDiagram-O6MQD6OU-Cx1peHDi.js} +1 -1
  385. package/web-shell/assets/{requirementDiagram-EFPCY7ZU-CFdqWYih.js → requirementDiagram-EFPCY7ZU-CBRiPbdQ.js} +1 -1
  386. package/web-shell/assets/{sankeyDiagram-P5KCCOFB-CsddcEGD.js → sankeyDiagram-P5KCCOFB-TT6GcHaZ.js} +1 -1
  387. package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-BZ270mGw.js → sequenceDiagram-WJ2MYXX4-CWP42PNb.js} +1 -1
  388. package/web-shell/assets/{sizeCapture-X5ZJPWSS-CGaS4DBV.js → sizeCapture-X5ZJPWSS-Bp94roEG.js} +1 -1
  389. package/web-shell/assets/{stateDiagram-HBIQ2CUA-COpIzMu6.js → stateDiagram-HBIQ2CUA-0ftrzTAy.js} +1 -1
  390. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-PgAST0dK.js +1 -0
  391. package/web-shell/assets/{swimlanes-XN3QIQJK-CMF889m3.js → swimlanes-XN3QIQJK-D-FsenYJ.js} +1 -1
  392. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-BcWcB5bj.js +8 -0
  393. package/web-shell/assets/{timeline-definition-24CTP7MA-BelnxYz5.js → timeline-definition-24CTP7MA-Ctvrj28y.js} +1 -1
  394. package/web-shell/assets/{vennDiagram-4TSXK5OY-CU-NRqIB.js → vennDiagram-4TSXK5OY-5DZncjOt.js} +1 -1
  395. package/web-shell/assets/{wardleyDiagram-VM6X3IG4-CDNKqWh-.js → wardleyDiagram-VM6X3IG4-jZjYwPY7.js} +1 -1
  396. package/web-shell/assets/{xychartDiagram-S5SC5T6Z-CLqguL5D.js → xychartDiagram-S5SC5T6Z-Ci6Q2C2_.js} +1 -1
  397. package/web-shell/index.html +29 -5
  398. package/chunks/chunk-V7RNNPGC.js +0 -44
  399. package/chunks/chunk-X35VIWWJ.js +0 -276
  400. package/chunks/workflow-3MABM53N.js +0 -2771
  401. package/chunks/workspace-providers-status-2FRLBZ5I.js +0 -119
  402. package/web-shell/assets/channel-uMMdTrYk.js +0 -1
  403. package/web-shell/assets/classDiagram-DTDB5LWJ-DcY-26Ig.js +0 -1
  404. package/web-shell/assets/classDiagram-v2-JRS7N3AN-DcY-26Ig.js +0 -1
  405. package/web-shell/assets/index-Bu-rZoJ-.js +0 -2150
  406. package/web-shell/assets/index-CsPwZ1ut.css +0 -36
  407. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-D6qEVAji.js +0 -1
  408. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-mem5Jj4m.js +0 -8
  409. /package/chunks/{chunk-JA5CBKRP.js → chunk-7NXSVSFB.js} +0 -0
@@ -5,14 +5,14 @@ import {
5
5
  } from "./chunk-KW7NOTN6.js";
6
6
  import {
7
7
  DEFAULT_OPENAI_LOG_RETENTION_DAYS
8
- } from "./chunk-MWEF5MUK.js";
8
+ } from "./chunk-IOUBOANU.js";
9
9
  import {
10
10
  resolveOpenAILogDir
11
- } from "./chunk-XI7RST4D.js";
11
+ } from "./chunk-FRVV5SSD.js";
12
12
  import {
13
13
  FILE_HISTORY_DIR,
14
14
  getSubagentsRootDir
15
- } from "./chunk-43CI6YWJ.js";
15
+ } from "./chunk-JV5YASQA.js";
16
16
  import {
17
17
  Storage,
18
18
  createDebugLogger,
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  CHANNEL_CONTROL_DEFAULT_TIMEOUT_MS
5
- } from "./chunk-5HBA2Z7V.js";
5
+ } from "./chunk-CJ3DHN5I.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -1415,6 +1415,28 @@ var DaemonClient = class {
1415
1415
  this.cachedSessionRestoreTimeoutMs = typeof restoreTimeoutMs === "number" && Number.isInteger(restoreTimeoutMs) && restoreTimeoutMs > 0 && restoreTimeoutMs <= MAX_TIMER_DELAY_MS ? restoreTimeoutMs : void 0;
1416
1416
  return capabilities;
1417
1417
  }
1418
+ /**
1419
+ * The Web Shell's product name and logo, resolved by the daemon from the
1420
+ * operator settings scopes (system defaults, user, system). Workspace
1421
+ * settings never contribute. An empty object means the client should use its
1422
+ * built-in brand.
1423
+ *
1424
+ * Separate from `capabilities()` because that envelope's contract is that
1425
+ * clients probe by connecting rather than reading ambient settings into it.
1426
+ * A daemon that supports it advertises the `web_shell_brand` feature tag, so
1427
+ * callers can preflight instead of relying on the 404 an older daemon returns;
1428
+ * either way, treat branding as optional and fall back rather than fail.
1429
+ */
1430
+ async brand() {
1431
+ return await this.fetchWithTimeout(
1432
+ `${this.baseUrl}/brand`,
1433
+ { headers: this.headers() },
1434
+ async (res) => {
1435
+ if (!res.ok) throw await this.failOnError(res, "GET /brand");
1436
+ return await res.json();
1437
+ }
1438
+ );
1439
+ }
1418
1440
  /**
1419
1441
  * Send text directly through the primary workspace's channel worker.
1420
1442
  * This does not create or prompt an Agent session. Pre-flight the
@@ -3409,6 +3431,7 @@ var DaemonClient = class {
3409
3431
  ),
3410
3432
  body: JSON.stringify({
3411
3433
  mode,
3434
+ ...opts?.planMode !== void 0 ? { planMode: opts.planMode } : {},
3412
3435
  ...opts?.persist === true ? { persist: true } : {}
3413
3436
  })
3414
3437
  },
@@ -5125,6 +5148,27 @@ var DaemonClient = class {
5125
5148
  dispose() {
5126
5149
  this.transport.dispose();
5127
5150
  }
5151
+ listSessionSources(sessionId, clientId) {
5152
+ return this.jsonRequest(
5153
+ `/session/${urlEncode(sessionId)}/sources`,
5154
+ "GET /session/:id/sources",
5155
+ { clientId, mode: "rest" }
5156
+ );
5157
+ }
5158
+ upsertSessionSource(sessionId, source, clientId) {
5159
+ return this.jsonRequest(
5160
+ `/session/${urlEncode(sessionId)}/sources`,
5161
+ "POST /session/:id/sources",
5162
+ { method: "POST", body: source, clientId, mode: "rest" }
5163
+ );
5164
+ }
5165
+ removeSessionSource(sessionId, sourceId, clientId) {
5166
+ return this.jsonRequest(
5167
+ `/session/${urlEncode(sessionId)}/sources/${urlEncode(sourceId)}`,
5168
+ "DELETE /session/:id/sources/:sourceId",
5169
+ { method: "DELETE", clientId, mode: "rest" }
5170
+ );
5171
+ }
5128
5172
  // -- Session artifacts ---------------------------------------------------
5129
5173
  async listSessionArtifacts(sessionId, clientId) {
5130
5174
  return await this.jsonRequest(
@@ -6803,6 +6847,23 @@ var DaemonSessionClient = class _DaemonSessionClient {
6803
6847
  heartbeat() {
6804
6848
  return this.client.heartbeat(this.sessionId, this.clientId);
6805
6849
  }
6850
+ listSources() {
6851
+ return this.client.listSessionSources(this.sessionId, this.clientId);
6852
+ }
6853
+ upsertSource(source) {
6854
+ return this.client.upsertSessionSource(
6855
+ this.sessionId,
6856
+ source,
6857
+ this.clientId
6858
+ );
6859
+ }
6860
+ removeSource(sourceId) {
6861
+ return this.client.removeSessionSource(
6862
+ this.sessionId,
6863
+ sourceId,
6864
+ this.clientId
6865
+ );
6866
+ }
6806
6867
  artifacts() {
6807
6868
  return this.client.listSessionArtifacts(this.sessionId, this.clientId);
6808
6869
  }
@@ -7337,6 +7398,7 @@ var DAEMON_KNOWN_EVENT_TYPE_VALUES = [
7337
7398
  "session_metadata_updated",
7338
7399
  "session_recording_degraded",
7339
7400
  "artifact_changed",
7401
+ "source_changed",
7340
7402
  MID_TURN_MESSAGE_INJECTED_EVENT,
7341
7403
  PENDING_PROMPT_ADDED_EVENT,
7342
7404
  PENDING_PROMPT_STARTED_EVENT,
@@ -7503,6 +7565,7 @@ function createDaemonSessionViewState(seed = {}) {
7503
7565
  lastWorkspaceMutation: seed.lastWorkspaceMutation,
7504
7566
  lastWorkspaceMutationType: seed.lastWorkspaceMutationType,
7505
7567
  approvalMode: seed.approvalMode,
7568
+ planExecutionMode: seed.planExecutionMode,
7506
7569
  approvalModeChangedCount: seed.approvalModeChangedCount ?? 0,
7507
7570
  lastApprovalModeChange: seed.lastApprovalModeChange,
7508
7571
  toolToggleCount: seed.toolToggleCount ?? 0,
@@ -7571,6 +7634,8 @@ function asKnownDaemonEvent(event) {
7571
7634
  return isSessionMetadataUpdatedData(event.data) ? event : void 0;
7572
7635
  case "session_recording_degraded":
7573
7636
  return isSessionRecordingDegradedData(event.data) ? event : void 0;
7637
+ case "source_changed":
7638
+ return isRecord(event.data) && typeof event.data["sessionId"] === "string" && Number.isInteger(event.data["revision"]) && Number(event.data["revision"]) >= 0 ? event : void 0;
7574
7639
  case "artifact_changed":
7575
7640
  return isArtifactChangedData(event.data) ? event : void 0;
7576
7641
  case MID_TURN_MESSAGE_INJECTED_EVENT: {
@@ -7887,6 +7952,7 @@ function reduceDaemonSessionEvent(state, rawEvent) {
7887
7952
  return {
7888
7953
  ...base,
7889
7954
  approvalMode: event.data.next,
7955
+ planExecutionMode: event.data.next === "plan" ? event.data.planExecutionMode : void 0,
7890
7956
  approvalModeChangedCount: base.approvalModeChangedCount + 1,
7891
7957
  lastApprovalModeChange: mergeOriginator(event.data, event)
7892
7958
  };
@@ -7944,6 +8010,7 @@ function reduceDaemonSessionEvent(state, rawEvent) {
7944
8010
  case "settings_reloaded":
7945
8011
  case "extensions_changed":
7946
8012
  case "artifact_changed":
8013
+ case "source_changed":
7947
8014
  case MID_TURN_MESSAGE_INJECTED_EVENT:
7948
8015
  case PENDING_PROMPT_ADDED_EVENT:
7949
8016
  case PENDING_PROMPT_STARTED_EVENT:
@@ -7961,7 +8028,10 @@ function reduceDaemonSessionEvent(state, rawEvent) {
7961
8028
  ...base,
7962
8029
  sessionId: event.data.sessionId,
7963
8030
  ...event.data.currentModelId != null ? { currentModelId: event.data.currentModelId } : {},
7964
- ...event.data.currentApprovalMode != null ? { approvalMode: event.data.currentApprovalMode } : {},
8031
+ ...event.data.currentApprovalMode != null ? {
8032
+ approvalMode: event.data.currentApprovalMode,
8033
+ planExecutionMode: event.data.currentApprovalMode === "plan" ? event.data.planExecutionMode : void 0
8034
+ } : {},
7965
8035
  ...event.data.recordingDegraded !== void 0 ? { recordingDegraded: event.data.recordingDegraded } : {}
7966
8036
  };
7967
8037
  case "session_recording_degraded":
@@ -8315,7 +8385,7 @@ function mergeOriginator(data, event) {
8315
8385
  }
8316
8386
  __name(mergeOriginator, "mergeOriginator");
8317
8387
  function isApprovalModeChangedData(value) {
8318
- return isRecord(value) && isNonEmptyString(value["sessionId"]) && isNonEmptyString(value["previous"]) && isNonEmptyString(value["next"]) && typeof value["persisted"] === "boolean";
8388
+ return isRecord(value) && isNonEmptyString(value["sessionId"]) && isNonEmptyString(value["previous"]) && isNonEmptyString(value["next"]) && (value["planExecutionMode"] === void 0 || isNonEmptyString(value["planExecutionMode"])) && typeof value["persisted"] === "boolean";
8319
8389
  }
8320
8390
  __name(isApprovalModeChangedData, "isApprovalModeChangedData");
8321
8391
  function isToolToggledData(value) {
@@ -8499,7 +8569,7 @@ function isSessionSnapshotData(value) {
8499
8569
  const model = value["currentModelId"];
8500
8570
  const mode = value["currentApprovalMode"];
8501
8571
  const recordingDegraded = value["recordingDegraded"];
8502
- return (model === null || typeof model === "string") && (mode === null || typeof mode === "string") && (recordingDegraded === void 0 || typeof recordingDegraded === "boolean");
8572
+ return (model === null || typeof model === "string") && (mode === null || typeof mode === "string") && (value["planExecutionMode"] === void 0 || isNonEmptyString(value["planExecutionMode"])) && (recordingDegraded === void 0 || typeof recordingDegraded === "boolean");
8503
8573
  }
8504
8574
  __name(isSessionSnapshotData, "isSessionSnapshotData");
8505
8575
  function isSessionRecordingDegradedData(value) {
@@ -8792,7 +8862,7 @@ var bidiControlPattern = /[\u200e\u200f\u202a-\u202e\u2066-\u2069]/g;
8792
8862
 
8793
8863
  // packages/sdk-typescript/src/daemon/ui/toolPreview.ts
8794
8864
  var MAX_TOOL_PREVIEW_DEPTH = 8;
8795
- var MAX_TODO_PREVIEW_ENTRIES = 1e3;
8865
+ var MAX_TOOL_PREVIEW_ENTRIES = 1e3;
8796
8866
  var MAX_TOOL_RESULT_PREVIEW_LENGTH = 1e5;
8797
8867
  var MAX_TODO_ID_LENGTH = 512;
8798
8868
  function createDaemonToolPreview(input, opts = {}, depth = 0) {
@@ -8860,6 +8930,27 @@ function createDaemonToolPreview(input, opts = {}, depth = 0) {
8860
8930
  }
8861
8931
  __name(createDaemonToolPreview, "createDaemonToolPreview");
8862
8932
  function createDaemonToolResultPreview(output, content, opts = {}) {
8933
+ if (isRecord2(output) && output["type"] === "ask_user_question_answers" && typeof output["text"] === "string") {
8934
+ const text = output["text"];
8935
+ const fallback = createDaemonToolResultTextPreview(text);
8936
+ const entries = output["answers"];
8937
+ if (!Array.isArray(entries) || entries.length > MAX_TOOL_PREVIEW_ENTRIES) {
8938
+ return fallback;
8939
+ }
8940
+ let remaining = MAX_TOOL_RESULT_PREVIEW_LENGTH - text.length;
8941
+ const answers = [];
8942
+ for (const entry of entries) {
8943
+ if (!isRecord2(entry) || typeof entry["question"] !== "string" || typeof entry["answer"] !== "string") {
8944
+ return fallback;
8945
+ }
8946
+ const question = entry["question"];
8947
+ const answer = entry["answer"];
8948
+ remaining -= question.length + answer.length;
8949
+ if (remaining < 0) return fallback;
8950
+ answers.push({ question, answer });
8951
+ }
8952
+ return remaining >= 0 ? { kind: "question_answers", text, answers } : fallback;
8953
+ }
8863
8954
  const todoList = detectTodoList(output, opts, false);
8864
8955
  if (todoList) return todoList;
8865
8956
  return createDaemonToolResultTextPreview(
@@ -8878,7 +8969,7 @@ function detectTodoList(input, opts, includeLegacySummary) {
8878
8969
  if (!entries || toolName !== "todo_write" && toolName !== "todowrite") {
8879
8970
  return void 0;
8880
8971
  }
8881
- const retainedEntries = entries.slice(0, MAX_TODO_PREVIEW_ENTRIES);
8972
+ const retainedEntries = entries.slice(0, MAX_TOOL_PREVIEW_ENTRIES);
8882
8973
  const authoredIds = /* @__PURE__ */ new Set();
8883
8974
  for (const entry of retainedEntries) {
8884
8975
  if (!isRecord2(entry)) continue;
@@ -8891,9 +8982,9 @@ function detectTodoList(input, opts, includeLegacySummary) {
8891
8982
  }
8892
8983
  const normalized = [];
8893
8984
  const usedIds = /* @__PURE__ */ new Set();
8894
- let truncated = entries.length > MAX_TODO_PREVIEW_ENTRIES;
8985
+ let truncated = entries.length > MAX_TOOL_PREVIEW_ENTRIES;
8895
8986
  let remainingText = MAX_TOOL_RESULT_PREVIEW_LENGTH;
8896
- let remainingDependencyInputs = MAX_TODO_PREVIEW_ENTRIES;
8987
+ let remainingDependencyInputs = MAX_TOOL_PREVIEW_ENTRIES;
8897
8988
  retainedEntries.forEach((entry, index) => {
8898
8989
  if (!isRecord2(entry)) {
8899
8990
  truncated = true;
@@ -9588,6 +9679,11 @@ function normalizeDaemonEvent(event, opts = {}) {
9588
9679
  return normalizeMcpServerChanged(event, base);
9589
9680
  case "extensions_changed":
9590
9681
  return normalizeExtensionsChanged(event, base);
9682
+ case "source_changed": {
9683
+ const sessionId = getString2(event.data, "sessionId");
9684
+ const revision = isRecord2(event.data) ? event.data["revision"] : void 0;
9685
+ return sessionId && typeof revision === "number" && Number.isInteger(revision) && revision >= 0 ? [{ ...base, type: "session.source.changed", sessionId, revision }] : [];
9686
+ }
9591
9687
  case "artifact_changed":
9592
9688
  return normalizeArtifactChanged(event, base);
9593
9689
  // ── Auth device-flow events (RFC 8628) ─────────────────
@@ -10111,6 +10207,7 @@ function normalizeToolUpdate(update, base) {
10111
10207
  text: `Tool update missing toolCallId${title ? ` (${title})` : ""}`
10112
10208
  };
10113
10209
  }
10210
+ const subagentSessionReady = isRecord2(rawOutput) && typeof rawOutput["subagentSessionReady"] === "boolean" ? rawOutput["subagentSessionReady"] : metadata?.["subagentSessionReady"];
10114
10211
  const { provenance, serverId } = extractToolProvenance(update, toolName);
10115
10212
  const rawParentToolCallId = getString2(update, "parentToolCallId") ?? (metadata ? getString2(metadata, "parentToolCallId") : void 0);
10116
10213
  const parentToolCallId = rawParentToolCallId && rawParentToolCallId !== toolCallId ? rawParentToolCallId : void 0;
@@ -10129,6 +10226,7 @@ function normalizeToolUpdate(update, base) {
10129
10226
  ...serverId ? { serverId } : {},
10130
10227
  ...parentToolCallId ? { parentToolCallId } : {},
10131
10228
  ...subagentType ? { subagentType } : {},
10229
+ ...typeof subagentSessionReady === "boolean" ? { subagentSessionReady } : {},
10132
10230
  ...rawInput !== void 0 ? { rawInput } : {},
10133
10231
  ...rawOutput !== void 0 ? { rawOutput } : {},
10134
10232
  ...resultPreview ? { resultPreview } : {},
@@ -11143,6 +11241,7 @@ function applyDaemonTranscriptEvent(next, event) {
11143
11241
  break;
11144
11242
  case "session.metadata.changed":
11145
11243
  case "session.artifact.changed":
11244
+ case "session.source.changed":
11146
11245
  case "session.available_commands":
11147
11246
  break;
11148
11247
  case "session.state_resync_required":
@@ -11478,6 +11577,9 @@ function upsertToolBlock(state, event) {
11478
11577
  const bytesBefore = retainedBefore ? estimateBlockBytes(retainedBefore) : 0;
11479
11578
  const existing = getWritableBlockById(state, existingId);
11480
11579
  if (existing?.kind === "tool") {
11580
+ if (event.subagentSessionReady !== void 0) {
11581
+ existing.subagentSessionReady = existing.subagentSessionReady === true || event.subagentSessionReady;
11582
+ }
11481
11583
  if (event.title !== void 0) existing.title = event.title;
11482
11584
  if (event.status !== void 0) existing.status = event.status;
11483
11585
  if (event.rawInput !== void 0) {
@@ -11586,6 +11688,7 @@ function upsertToolBlock(state, event) {
11586
11688
  }),
11587
11689
  ...resultPreview ? { resultPreview } : {},
11588
11690
  ...isBackgroundToolOutput(rawOutput) ? { background: true } : {},
11691
+ ...event.subagentSessionReady !== void 0 ? { subagentSessionReady: event.subagentSessionReady } : {},
11589
11692
  clientReceivedAt: state.now,
11590
11693
  createdAt: state.now,
11591
11694
  updatedAt: state.now,
@@ -11660,6 +11763,7 @@ function compactTaskExecutionOutput(rawOutput, retainSubagentBlocks) {
11660
11763
  "taskDescription",
11661
11764
  "status",
11662
11765
  "executionMode",
11766
+ "subagentSessionReady",
11663
11767
  "terminateReason",
11664
11768
  "tokenCount",
11665
11769
  "executionSummary",
@@ -12786,6 +12890,8 @@ function daemonUiEventToTerminalText(event) {
12786
12890
  `metadata: ${event.displayName ?? "(no display name)"}`,
12787
12891
  "36"
12788
12892
  );
12893
+ case "session.source.changed":
12894
+ return "";
12789
12895
  case "session.artifact.changed":
12790
12896
  return terminalLine(
12791
12897
  "artifact",
@@ -2,23 +2,23 @@
2
2
  "use strict";
3
3
  import {
4
4
  getExtensionManager
5
- } from "./chunk-ORREXWOM.js";
5
+ } from "./chunk-5ZJ3KK5J.js";
6
6
  import {
7
7
  parseChannelConfig
8
- } from "./chunk-UXDVUFKU.js";
8
+ } from "./chunk-FYZ5NZ3V.js";
9
9
  import {
10
10
  getPlugin,
11
11
  registerPlugin
12
- } from "./chunk-UHUT4IDM.js";
12
+ } from "./chunk-JOMCZWX7.js";
13
13
  import {
14
14
  sanitizeLogText
15
- } from "./chunk-XVTCSVBK.js";
15
+ } from "./chunk-C4NLHK7X.js";
16
16
  import {
17
17
  loadSettings
18
- } from "./chunk-Q2F43WTJ.js";
18
+ } from "./chunk-OOLSYRZ7.js";
19
19
  import {
20
20
  hashDaemonWorkspace
21
- } from "./chunk-7OCIQNKX.js";
21
+ } from "./chunk-ZW2EUO2A.js";
22
22
  import {
23
23
  Storage
24
24
  } from "./chunk-ZAFYHRVY.js";
@@ -38,6 +38,12 @@ init_esbuild_shims();
38
38
  import { createHash } from "node:crypto";
39
39
  import * as path from "node:path";
40
40
  import { pathToFileURL } from "node:url";
41
+ function resolveChannelLocale(value) {
42
+ if (typeof value !== "string") return "en";
43
+ const language = value.trim().replaceAll("_", "-").toLowerCase();
44
+ return language === "zh" || language.startsWith("zh-") || language === "chinese" || language === "\u4E2D\u6587" ? "zh" : "en";
45
+ }
46
+ __name(resolveChannelLocale, "resolveChannelLocale");
41
47
  function sessionsPath() {
42
48
  return path.join(Storage.getGlobalQwenDir(), "channels", "sessions.json");
43
49
  }
@@ -289,6 +295,7 @@ async function parseConfiguredChannels(channelsConfig, selectedNames, opts = {})
289
295
  __name(parseConfiguredChannels, "parseConfiguredChannels");
290
296
 
291
297
  export {
298
+ resolveChannelLocale,
292
299
  sessionsPath,
293
300
  daemonSessionRoutesPath,
294
301
  daemonObservedContactsPath,
@@ -2,15 +2,15 @@
2
2
  "use strict";
3
3
  import {
4
4
  multiSessionCompatibilityError
5
- } from "./chunk-UXDVUFKU.js";
5
+ } from "./chunk-FYZ5NZ3V.js";
6
6
  import {
7
7
  UNSAFE_OBJECT_KEYS,
8
8
  getPlugin
9
- } from "./chunk-UHUT4IDM.js";
9
+ } from "./chunk-JOMCZWX7.js";
10
10
  import {
11
11
  loadSettings,
12
12
  saveSettings
13
- } from "./chunk-Q2F43WTJ.js";
13
+ } from "./chunk-OOLSYRZ7.js";
14
14
  import {
15
15
  init_esbuild_shims
16
16
  } from "./chunk-5O2XNYP6.js";
@@ -96,17 +96,6 @@ function assertStringRecord(key, value, allowedKeys) {
96
96
  }
97
97
  }
98
98
  __name(assertStringRecord, "assertStringRecord");
99
- function assertNumberRecord(key, value, allowedKeys) {
100
- if (!isRecord(value)) {
101
- throw invalidConfig(`Channel field "${key}" must be an object.`);
102
- }
103
- for (const [nestedKey, nestedValue] of Object.entries(value)) {
104
- if (!allowedKeys.has(nestedKey) || typeof nestedValue !== "number" || !Number.isFinite(nestedValue)) {
105
- throw invalidConfig(`Channel field "${key}.${nestedKey}" is invalid.`);
106
- }
107
- }
108
- }
109
- __name(assertNumberRecord, "assertNumberRecord");
110
99
  function assertSharedField(key, value, previous) {
111
100
  if (key === "multiSession") {
112
101
  if (typeof value !== "boolean") {
@@ -119,8 +108,7 @@ function assertSharedField(key, value, previous) {
119
108
  dmPolicy: /* @__PURE__ */ new Set(["open", "disabled"]),
120
109
  groupPolicy: /* @__PURE__ */ new Set(["disabled", "allowlist", "pairing", "open"]),
121
110
  sessionScope: /* @__PURE__ */ new Set(["user", "thread", "chat_thread", "single"]),
122
- dispatchMode: /* @__PURE__ */ new Set(["steer", "followup", "collect"]),
123
- blockStreaming: /* @__PURE__ */ new Set(["on", "off"])
111
+ dispatchMode: /* @__PURE__ */ new Set(["steer", "followup", "collect"])
124
112
  };
125
113
  if (Object.hasOwn(enumValues, key)) {
126
114
  if (typeof value !== "string" || !enumValues[key].has(value)) {
@@ -128,9 +116,7 @@ function assertSharedField(key, value, previous) {
128
116
  }
129
117
  return true;
130
118
  }
131
- if (["model", "cwd", "approvalMode", "instructions", "messagePrefix"].includes(
132
- key
133
- )) {
119
+ if (["model", "cwd", "approvalMode", "instructions"].includes(key)) {
134
120
  if (typeof value !== "string") {
135
121
  throw invalidConfig(`Channel field "${key}" must be a string.`);
136
122
  }
@@ -193,14 +179,6 @@ function assertSharedField(key, value, previous) {
193
179
  );
194
180
  return true;
195
181
  }
196
- if (key === "blockStreamingChunk") {
197
- assertNumberRecord(key, value, /* @__PURE__ */ new Set(["minChars", "maxChars"]));
198
- return true;
199
- }
200
- if (key === "blockStreamingCoalesce") {
201
- assertNumberRecord(key, value, /* @__PURE__ */ new Set(["idleMs"]));
202
- return true;
203
- }
204
182
  if (key === "memoryScope") {
205
183
  if (!isRecord(value)) {
206
184
  throw invalidConfig(`Channel field "${key}" must be an object.`);
@@ -3,7 +3,7 @@
3
3
  import {
4
4
  collectAvailableSkillEntries,
5
5
  renderAvailableSkillsBlock
6
- } from "./chunk-O2FEO2CB.js";
6
+ } from "./chunk-EUURTIV6.js";
7
7
  import {
8
8
  escapeSystemReminderTags
9
9
  } from "./chunk-G6UUOCUT.js";
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk-IZ2U57NY.js";
13
13
  import {
14
14
  ToolNames
15
- } from "./chunk-MWIO7MF6.js";
15
+ } from "./chunk-TP6FYVQT.js";
16
16
  import {
17
17
  createDebugLogger,
18
18
  getErrorMessage,
@@ -696,7 +696,7 @@ __name(resolveForkExecutionAllowedTools, "resolveForkExecutionAllowedTools");
696
696
  function registerForkDisplayImageForCache(config, advertisedToolNames) {
697
697
  if (!advertisedToolNames.includes(ToolNames.DISPLAY_IMAGE)) return;
698
698
  config.getToolRegistry().registerFactory(ToolNames.DISPLAY_IMAGE, async () => {
699
- const { DisplayImageTool } = await import("./display-image-CTNHJRZC.js");
699
+ const { DisplayImageTool } = await import("./display-image-NAH3AZ63.js");
700
700
  return new DisplayImageTool(config);
701
701
  });
702
702
  }
@@ -2,10 +2,10 @@
2
2
  "use strict";
3
3
  import {
4
4
  getRateLimitErrorDetails
5
- } from "./chunk-4ALNJDHL.js";
5
+ } from "./chunk-L3DTX6U4.js";
6
6
  import {
7
7
  isInternalPromptId
8
- } from "./chunk-OIPUQE3S.js";
8
+ } from "./chunk-34ZYDM3F.js";
9
9
  import {
10
10
  createDebugLogger
11
11
  } from "./chunk-ZAFYHRVY.js";
@@ -3,10 +3,10 @@
3
3
  import {
4
4
  getPlugin,
5
5
  supportedTypes
6
- } from "./chunk-UHUT4IDM.js";
6
+ } from "./chunk-JOMCZWX7.js";
7
7
  import {
8
8
  resolveChannelCwd
9
- } from "./chunk-3BTHHXXE.js";
9
+ } from "./chunk-CSHX5ZC4.js";
10
10
  import {
11
11
  isInternalSecretEnvVar
12
12
  } from "./chunk-65I7S4Z3.js";
@@ -174,18 +174,6 @@ function optionalBooleanField(channelName, path, value) {
174
174
  return value;
175
175
  }
176
176
  __name(optionalBooleanField, "optionalBooleanField");
177
- function optionalPlainStringField(channelName, path, value) {
178
- if (value === void 0 || value === null || value === "") {
179
- return void 0;
180
- }
181
- if (typeof value !== "string") {
182
- throw new Error(
183
- `Channel "${channelName}" field "${path}" must be a string.`
184
- );
185
- }
186
- return value.trim() || void 0;
187
- }
188
- __name(optionalPlainStringField, "optionalPlainStringField");
189
177
  function requireObjectField(channelName, path, value) {
190
178
  if (typeof value !== "object" || value === null || Array.isArray(value)) {
191
179
  throw new Error(
@@ -410,11 +398,6 @@ async function parseChannelConfig(name, rawConfig, defaultCwd = process.cwd(), o
410
398
  "multiSession",
411
399
  rawConfig["multiSession"]
412
400
  );
413
- const messagePrefix = optionalPlainStringField(
414
- name,
415
- "messagePrefix",
416
- rawConfig["messagePrefix"]
417
- );
418
401
  const groups = rawConfig["groups"] || {};
419
402
  const webhooks = parseWebhookConfig(name, rawConfig);
420
403
  const multiSessionError = multiSessionCompatibilityError(name, {
@@ -438,7 +421,6 @@ async function parseChannelConfig(name, rawConfig, defaultCwd = process.cwd(), o
438
421
  cwd: resolveChannelCwd(rawConfig["cwd"], defaultCwd),
439
422
  approvalMode: parseApprovalModeConfig(name, rawConfig),
440
423
  instructions: rawConfig["instructions"],
441
- messagePrefix,
442
424
  identity: parseObjectStringFields(name, rawConfig, "identity", [
443
425
  "id",
444
426
  "displayName",
@@ -13,7 +13,7 @@ function isAllChannelSelectionName(name) {
13
13
  return name.trim() === "all";
14
14
  }
15
15
  __name(isAllChannelSelectionName, "isAllChannelSelectionName");
16
- function normalizeServeChannelSelection(rawChannels) {
16
+ function normalizeServeChannelSelection(rawChannels, label = "--channel") {
17
17
  if (rawChannels === void 0 || rawChannels.length === 0) {
18
18
  return void 0;
19
19
  }
@@ -22,7 +22,7 @@ function normalizeServeChannelSelection(rawChannels) {
22
22
  for (const raw of rawChannels) {
23
23
  const name = raw.trim();
24
24
  if (!name) {
25
- throw new Error("--channel requires a non-empty channel name.");
25
+ throw new Error(`${label} requires a non-empty channel name.`);
26
26
  }
27
27
  if (seen.has(name)) continue;
28
28
  seen.add(name);
@@ -30,7 +30,7 @@ function normalizeServeChannelSelection(rawChannels) {
30
30
  }
31
31
  if (names.some(isAllChannelSelectionName)) {
32
32
  if (names.length > 1) {
33
- throw new Error("--channel all cannot be combined with channel names.");
33
+ throw new Error(`${label} all cannot be combined with channel names.`);
34
34
  }
35
35
  return { mode: "all" };
36
36
  }
@@ -2,19 +2,19 @@
2
2
  "use strict";
3
3
  import {
4
4
  loadSettings
5
- } from "./chunk-Q2F43WTJ.js";
5
+ } from "./chunk-OOLSYRZ7.js";
6
6
  import {
7
7
  getCurrentLanguage
8
- } from "./chunk-CRZBDVP2.js";
8
+ } from "./chunk-74JEYK2C.js";
9
9
  import {
10
10
  isWorkspaceTrusted
11
- } from "./chunk-7RXOEUFF.js";
11
+ } from "./chunk-KHIBLKNK.js";
12
12
  import {
13
13
  require_strip_json_comments
14
14
  } from "./chunk-NPQ5ZKRP.js";
15
15
  import {
16
16
  hashMcpServerConfig
17
- } from "./chunk-BL6B2QS2.js";
17
+ } from "./chunk-F2RKL5I2.js";
18
18
  import {
19
19
  Config,
20
20
  ExtensionManager,
@@ -25,11 +25,11 @@ import {
25
25
  isGatedMcpScope,
26
26
  normalizeClaudeMcpServer,
27
27
  runWithTimeout
28
- } from "./chunk-43CI6YWJ.js";
28
+ } from "./chunk-JV5YASQA.js";
29
29
  import {
30
30
  getMCPServerLastError,
31
31
  getMCPServerStatus
32
- } from "./chunk-OIPUQE3S.js";
32
+ } from "./chunk-34ZYDM3F.js";
33
33
  import {
34
34
  atomicWriteFile
35
35
  } from "./chunk-XFFRI3WM.js";