@qwen-code/qwen-code 0.19.7 → 0.19.8

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 (228) hide show
  1. package/bundled/qc-helper/docs/features/channels/overview.md +15 -8
  2. package/bundled/qc-helper/docs/features/channels/plugins.md +1 -0
  3. package/bundled/qc-helper/docs/features/hooks.md +36 -34
  4. package/bundled/qc-helper/docs/features/memory.md +1 -1
  5. package/bundled/qc-helper/docs/qwen-serve.md +17 -10
  6. package/bundled/review/SKILL.md +6 -2
  7. package/chunks/{MaxSizedBox-XY5LIO5O.js → MaxSizedBox-5DT2SD7B.js} +7 -7
  8. package/chunks/{StandaloneSessionPicker-APISIRJZ.js → StandaloneSessionPicker-EYRGH6PJ.js} +23 -21
  9. package/chunks/{acpAgent-MMOSC2YA.js → acpAgent-GRFTTRHW.js} +74 -69
  10. package/chunks/{agent-TKIBLLQT.js → agent-H2DGKS77.js} +4 -4
  11. package/chunks/{agent-headless-VLX4C7KX.js → agent-headless-KFMFIT6J.js} +4 -4
  12. package/chunks/{anthropicContentGenerator-AKYPSZIV.js → anthropicContentGenerator-CPF22MA7.js} +28 -1
  13. package/chunks/{bridge-BCU73DZO.js → bridge-NA3ZQQKJ.js} +11 -10
  14. package/chunks/{ca-HCMB2I54.js → ca-MKD32FQL.js} +26 -1
  15. package/chunks/{channel-worker-supervisor-CRCVYQIE.js → channel-worker-supervisor-NZQUOEFJ.js} +3 -3
  16. package/chunks/{chunk-B4U2M63D.js → chunk-27BHARDE.js} +8 -8
  17. package/chunks/{chunk-OWVIH4HY.js → chunk-2EM7ECZD.js} +251 -71
  18. package/chunks/{chunk-YEGT55NW.js → chunk-3GNOQZDC.js} +1562 -1025
  19. package/chunks/{chunk-G7ZG7CA6.js → chunk-3UP777ZS.js} +8 -7
  20. package/chunks/{chunk-VEB3NYSO.js → chunk-5MBO76SL.js} +5 -0
  21. package/chunks/{chunk-ALZ75L2X.js → chunk-6VK6FIMQ.js} +1 -1
  22. package/chunks/{chunk-SD4N3QJ2.js → chunk-A5JOJ77H.js} +35 -14
  23. package/chunks/{chunk-NZEGNV4V.js → chunk-AYNCLGTW.js} +5 -5
  24. package/chunks/{chunk-AJBEAUIS.js → chunk-BOBOCR5H.js} +4 -3
  25. package/chunks/chunk-BOBRZZKD.js +468 -0
  26. package/chunks/{chunk-GMOWQOQQ.js → chunk-BUZ6HGL4.js} +5 -5
  27. package/chunks/{chunk-PRDFOIZF.js → chunk-BVYU3ZTI.js} +2 -2
  28. package/chunks/{chunk-TBAZMRW3.js → chunk-CD6USWHZ.js} +1 -1
  29. package/chunks/{chunk-YDSYD7UI.js → chunk-CHB5SLZZ.js} +2 -2
  30. package/chunks/{chunk-FRFFNYUY.js → chunk-DCZWC4PF.js} +2 -2
  31. package/chunks/{chunk-XSAFNANZ.js → chunk-DHOLNQLC.js} +11 -11
  32. package/chunks/{chunk-MIG5SQNL.js → chunk-DICGXFAI.js} +1 -1
  33. package/chunks/{chunk-4ZJIPVPB.js → chunk-DIWVZ3VM.js} +8 -8
  34. package/chunks/{chunk-VQWAZSXN.js → chunk-E7EMCSUG.js} +1 -1
  35. package/chunks/{chunk-Q6OEPOOC.js → chunk-EEN2TKST.js} +1 -1
  36. package/chunks/{chunk-DNV4FSN5.js → chunk-FBET5XZ2.js} +6 -4
  37. package/chunks/{chunk-QZF5U5KA.js → chunk-FQNC62B2.js} +4 -4
  38. package/chunks/{chunk-B34OV7K2.js → chunk-GGQQA4JW.js} +13 -0
  39. package/chunks/chunk-GLE2YUPU.js +34 -0
  40. package/chunks/{chunk-X265R5C6.js → chunk-GN3F6PIU.js} +1 -1
  41. package/chunks/{chunk-FTFXDZYI.js → chunk-GSHQYYIV.js} +45 -9
  42. package/chunks/{chunk-MJI36HER.js → chunk-HDOH3QYE.js} +1 -1
  43. package/chunks/{chunk-CISB3IQF.js → chunk-I6WGFJJ3.js} +63 -4
  44. package/chunks/{chunk-2NPS2UDH.js → chunk-IBY3Q3HG.js} +390 -9
  45. package/chunks/{chunk-LEIJKM7Q.js → chunk-J7RCB6N5.js} +1 -1
  46. package/chunks/{chunk-4UCTWSTP.js → chunk-JCH35JB3.js} +1 -1
  47. package/chunks/{chunk-CNSF3WO5.js → chunk-JPALE3PA.js} +3 -3
  48. package/chunks/{chunk-P7I3D7FM.js → chunk-JRQ7EVGE.js} +1 -1
  49. package/chunks/{chunk-24XYI5EI.js → chunk-JZHIQJOE.js} +3 -3
  50. package/chunks/{chunk-7JGISHHZ.js → chunk-L46XKEGM.js} +14 -153
  51. package/chunks/{chunk-HJ3GX3Y3.js → chunk-L4AMBVQG.js} +9 -9
  52. package/chunks/{chunk-JF7DFPQ5.js → chunk-LAXNEOBG.js} +1 -1
  53. package/chunks/{chunk-STAZRKOT.js → chunk-M7S4GK5Z.js} +66 -445
  54. package/chunks/{chunk-4RQIB5UZ.js → chunk-O2YT7VB4.js} +0 -34
  55. package/chunks/{chunk-QAKFYMJI.js → chunk-O33TBKDC.js} +10 -10
  56. package/chunks/chunk-O7FIRWJV.js +168 -0
  57. package/chunks/{chunk-4KJ2BPIT.js → chunk-OACJLMLD.js} +2 -38
  58. package/chunks/{chunk-6BN7NZ5Z.js → chunk-ON3JA3RU.js} +2 -2
  59. package/chunks/{chunk-IUE7YWC3.js → chunk-OQXDAMKY.js} +3 -3
  60. package/chunks/{chunk-DGHJTO2K.js → chunk-P3XEEI3X.js} +1 -1
  61. package/chunks/{chunk-U4FRHCLA.js → chunk-PMFULMLX.js} +296 -81
  62. package/chunks/{chunk-XISQIIT7.js → chunk-PUVCVELY.js} +1 -1
  63. package/chunks/{chunk-PUQLHSQ2.js → chunk-RMLZAUWH.js} +4 -4
  64. package/chunks/{chunk-JD33UY7E.js → chunk-SQ2UATK7.js} +14 -8
  65. package/chunks/{chunk-4O344UEE.js → chunk-TI3BWD4D.js} +1 -1
  66. package/chunks/{chunk-AIY5UTFI.js → chunk-TSPB77TG.js} +57 -35
  67. package/chunks/{chunk-XPJH4PKR.js → chunk-UX6OTBVD.js} +1 -1
  68. package/chunks/{chunk-GD236YPV.js → chunk-UXEW557D.js} +1 -1
  69. package/chunks/chunk-V35MD7KN.js +13 -0
  70. package/chunks/{chunk-RYFZCUJO.js → chunk-VGGOPZUL.js} +6 -5
  71. package/chunks/{chunk-65CFHNSE.js → chunk-WF4FAXDL.js} +2 -2
  72. package/chunks/{chunk-ME3YSROJ.js → chunk-WHJQ3JUS.js} +20 -8
  73. package/chunks/{chunk-BWVQN2HV.js → chunk-WQTHLB5T.js} +3 -3
  74. package/chunks/chunk-XNXVCNAT.js +88 -0
  75. package/chunks/{chunk-TDGF35EN.js → chunk-XOHNA2S6.js} +1 -1
  76. package/chunks/{chunk-GL5TV7B5.js → chunk-XYR5RUA5.js} +14 -5
  77. package/chunks/{chunk-I4A4K72C.js → chunk-YDOXPLYL.js} +244 -47
  78. package/chunks/{chunk-AFOLR6YL.js → chunk-YHKAK72D.js} +11 -11
  79. package/chunks/{chunk-RFIL6REB.js → chunk-YKZIAK7C.js} +119 -29
  80. package/chunks/chunk-Z3I3QJK3.js +47 -0
  81. package/chunks/{chunk-ADZG46HR.js → chunk-ZE6E424U.js} +1 -1
  82. package/chunks/chunk-ZL5HN75Q.js +61 -0
  83. package/chunks/{computer-use-X4KUU3NM.js → computer-use-WMY3UOBX.js} +4 -4
  84. package/chunks/{contextCommand-LAYJZF7H.js → contextCommand-LXFZRP4L.js} +6 -6
  85. package/chunks/{daemon-F3I2RXP6.js → daemon-WPAENEBW.js} +48 -0
  86. package/chunks/{daemon-status-provider-XSAFKVDS.js → daemon-status-provider-GJRXY5EN.js} +15 -13
  87. package/chunks/{de-PLLFDERI.js → de-ZFPPQVSF.js} +26 -1
  88. package/chunks/{dist-IMFFBMAT.js → dist-BEXOZXLQ.js} +1 -1
  89. package/chunks/{dist-OT7G2WNM.js → dist-E6UANPIM.js} +1 -1
  90. package/chunks/{dist-FQ5WRJPL.js → dist-H2AEJCZ5.js} +2 -2
  91. package/chunks/{dist-YTRKAVUB.js → dist-O2IRTRPP.js} +1 -1
  92. package/chunks/{dist-573HNSVO.js → dist-SCFLLYMK.js} +1 -1
  93. package/chunks/{dist-PKFTNUHO.js → dist-Z34QPAQW.js} +1 -1
  94. package/chunks/{earlyInputCapture-AERYYGXE.js → earlyInputCapture-KNOYZ4MJ.js} +4 -4
  95. package/chunks/{edit-WZTZDGCI.js → edit-OTYWAXGP.js} +5 -5
  96. package/chunks/{en-GA2RMXY5.js → en-N4EPZAQI.js} +26 -1
  97. package/chunks/{enter-worktree-DEPXBJEL.js → enter-worktree-HNYBDVCX.js} +4 -4
  98. package/chunks/{enterPlanMode-JFGXZHHJ.js → enterPlanMode-CJCNGT63.js} +4 -4
  99. package/chunks/environment-ATFTYMLZ.js +88 -0
  100. package/chunks/{errors-GMZL4QV7.js → errors-A54HAADA.js} +6 -6
  101. package/chunks/{exit-worktree-Y7XBK3VV.js → exit-worktree-DUUKOE3X.js} +4 -4
  102. package/chunks/{exitPlanMode-WQQER65F.js → exitPlanMode-AMMSXOAJ.js} +4 -4
  103. package/chunks/{fast-path-W2U6XDNO.js → fast-path-OV6NIP3K.js} +12 -3
  104. package/chunks/{fast-path-settings-RCRXH2JG.js → fast-path-settings-7RIFI3PK.js} +3 -2
  105. package/chunks/{fr-GWNQG4XH.js → fr-5WWMY53B.js} +26 -1
  106. package/chunks/{gemini-T4WX6SRW.js → gemini-NQ3WWBKB.js} +431 -135
  107. package/chunks/{geminiContentGenerator-MKQACXEJ.js → geminiContentGenerator-CDUNEJQE.js} +1 -1
  108. package/chunks/{glob-4KKSHZDF.js → glob-ROV3YS4R.js} +4 -4
  109. package/chunks/{grep-GHRYXSLZ.js → grep-NRITKDCD.js} +4 -4
  110. package/chunks/{handleAutoUpdate-HN7ZOSXY.js → handleAutoUpdate-CEZJAARW.js} +6 -6
  111. package/chunks/{initializer-SRN3IM42.js → initializer-BRFJKRRX.js} +11 -9
  112. package/chunks/{ja-2HOTA47X.js → ja-CUHZOLEJ.js} +26 -1
  113. package/chunks/{list-INTVXUPA.js → list-KVHF7O4X.js} +13 -11
  114. package/chunks/{loadedSettingsAdapter-QVHHQPGM.js → loadedSettingsAdapter-LL5PSFKX.js} +11 -9
  115. package/chunks/{ls-L654WOAT.js → ls-7MFU2QYW.js} +1 -1
  116. package/chunks/{lsp-M35KE54Y.js → lsp-XHDTPTGV.js} +2 -4
  117. package/chunks/{mcp-7V4T46RG.js → mcp-3GCXRTOQ.js} +11 -9
  118. package/chunks/{monitor-464OY2UE.js → monitor-FL2ZO33W.js} +4 -4
  119. package/chunks/{nonInteractiveCli-LJEEODU2.js → nonInteractiveCli-PTQI3DV6.js} +44 -41
  120. package/chunks/{notebook-edit-BLJYCNDO.js → notebook-edit-6PULTHL5.js} +5 -5
  121. package/chunks/{openaiContentGenerator-PFF6HYB2.js → openaiContentGenerator-YE42PKCY.js} +3 -3
  122. package/chunks/{pidfile-LIBUENIV.js → pidfile-NZYSCFRK.js} +4 -4
  123. package/chunks/{pt-2THT3YHA.js → pt-OLYN42DS.js} +26 -1
  124. package/chunks/{qwenContentGenerator-SUUHZ6CR.js → qwenContentGenerator-NX2E7PB7.js} +5 -5
  125. package/chunks/{read-file-L7TBQVX7.js → read-file-33XGP5HF.js} +2 -2
  126. package/chunks/{record-artifact-PP3LKHTS.js → record-artifact-SQ2OKRJW.js} +3 -3
  127. package/chunks/{ripGrep-CKKX3GRB.js → ripGrep-QWZLGTAN.js} +4 -4
  128. package/chunks/{ru-Z67YJHBG.js → ru-LDM3GWVQ.js} +26 -1
  129. package/chunks/{run-qwen-serve-5OKADVLE.js → run-qwen-serve-JK2DL7PI.js} +596 -143
  130. package/chunks/{scheduler-ZRW3AIDU.js → scheduler-O4IGVZKK.js} +4 -4
  131. package/chunks/{send-message-OA6MV4EU.js → send-message-76GT3JMC.js} +1 -1
  132. package/chunks/{serve-36WS32W6.js → serve-JTMIGANH.js} +13 -10
  133. package/chunks/{server-M372UENX.js → server-SGNPKX2O.js} +667 -243
  134. package/chunks/{session-F5KSNP2N.js → session-5BNM25EZ.js} +45 -42
  135. package/chunks/{settings-WFLNS3WT.js → settings-3MI4XXP6.js} +20 -16
  136. package/chunks/{shell-DEDSWN56.js → shell-YJKBE67T.js} +4 -4
  137. package/chunks/{skill-A2TL2NPC.js → skill-I22QK5XS.js} +2 -2
  138. package/chunks/{spawnChannel-RQHUWTCL.js → spawnChannel-UNV6W4DU.js} +6 -6
  139. package/chunks/{src-XKZMNHXS.js → src-BBQSM46M.js} +8 -4
  140. package/chunks/{startInteractiveUI-REKSTOHU.js → startInteractiveUI-JII36UGN.js} +619 -288
  141. package/chunks/{task-create-RPFZNB4B.js → task-create-WCHTB435.js} +2 -2
  142. package/chunks/{task-update-5WUG5MVQ.js → task-update-XYWMHJGJ.js} +2 -2
  143. package/chunks/{team-create-TBQVWAG7.js → team-create-A7NUU5AQ.js} +4 -4
  144. package/chunks/{team-plan-approval-FZPGUSHJ.js → team-plan-approval-TOQRJ2KI.js} +4 -4
  145. package/chunks/{theme-manager-DQZVNSOC.js → theme-manager-WZ4RRMMB.js} +4 -4
  146. package/chunks/{tool-search-FDQ3SLNJ.js → tool-search-SZ4EFS2T.js} +3 -3
  147. package/chunks/total-session-admission-ULXJWXFV.js +72 -0
  148. package/chunks/{trustedFolders-Z475EIHL.js → trustedFolders-LAZZPZ3D.js} +5 -5
  149. package/chunks/{updateCheck-E2ZX7RL7.js → updateCheck-KONLM73X.js} +5 -5
  150. package/chunks/{validateNonInterActiveAuth-O4ECBHQL.js → validateNonInterActiveAuth-MPKSRCXD.js} +41 -38
  151. package/chunks/{version-CEDD6ZZR.js → version-NO2XSNNP.js} +1 -1
  152. package/chunks/{workflow-CQQ4J4I6.js → workflow-WO2H6NRI.js} +5 -5
  153. package/chunks/{workspace-providers-status-MVYXMYDG.js → workspace-providers-status-3W7E7DFW.js} +14 -11
  154. package/chunks/workspace-registry-SXJZNN3O.js +74 -0
  155. package/chunks/{workspace-service-OMBR6ZLG.js → workspace-service-CZRQZ4Q4.js} +17 -15
  156. package/chunks/{workspace-skills-status-IMMQ7CAY.js → workspace-skills-status-K7WFREPD.js} +12 -10
  157. package/chunks/{write-file-VWGY7AJP.js → write-file-PX2Z7IBE.js} +5 -5
  158. package/chunks/{zh-7XVVRTDH.js → zh-J4F6QWQV.js} +26 -1
  159. package/chunks/{zh-TW-DPH554OG.js → zh-TW-XVDWOLSW.js} +26 -1
  160. package/cli.js +11 -11
  161. package/locales/ca.js +30 -0
  162. package/locales/de.js +30 -0
  163. package/locales/en.js +30 -0
  164. package/locales/fr.js +30 -0
  165. package/locales/ja.js +30 -0
  166. package/locales/pt.js +30 -0
  167. package/locales/ru.js +30 -0
  168. package/locales/zh-TW.js +30 -0
  169. package/locales/zh.js +30 -0
  170. package/node_modules/@qwen-code/audio-capture/package.json +1 -1
  171. package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-arm64/@qwen-code+audio-capture.node +0 -0
  172. package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-x64/@qwen-code+audio-capture.node +0 -0
  173. package/node_modules/@qwen-code/audio-capture/prebuilds/win32-x64/@qwen-code+audio-capture.node +0 -0
  174. package/package.json +3 -3
  175. package/web-shell/assets/{arc-C7hjaa7g.js → arc-BWyoJpY2.js} +1 -1
  176. package/web-shell/assets/{architectureDiagram-3BPJPVTR-pm9KtMZY.js → architectureDiagram-3BPJPVTR-BT0mGrz2.js} +1 -1
  177. package/web-shell/assets/{blockDiagram-GPEHLZMM-CApElKsU.js → blockDiagram-GPEHLZMM-BLgUWvyf.js} +1 -1
  178. package/web-shell/assets/{c4Diagram-AAUBKEIU-BeDe0-9N.js → c4Diagram-AAUBKEIU-DYx9M7oU.js} +1 -1
  179. package/web-shell/assets/channel-wmPUGHtg.js +1 -0
  180. package/web-shell/assets/{chunk-2J33WTMH-DJEkmLdl.js → chunk-2J33WTMH-CfMHWbuZ.js} +1 -1
  181. package/web-shell/assets/{chunk-4BX2VUAB-DXX8gdpe.js → chunk-4BX2VUAB-B1URoqEV.js} +1 -1
  182. package/web-shell/assets/{chunk-55IACEB6-DORmk1kQ.js → chunk-55IACEB6-DAIaM4QF.js} +1 -1
  183. package/web-shell/assets/{chunk-727SXJPM-DWmO4mCZ.js → chunk-727SXJPM-B2X34knw.js} +1 -1
  184. package/web-shell/assets/{chunk-AQP2D5EJ-C7LRaYw2.js → chunk-AQP2D5EJ-Cif-zLTQ.js} +1 -1
  185. package/web-shell/assets/{chunk-FMBD7UC4-CCdXgyC5.js → chunk-FMBD7UC4-H18WCXdY.js} +1 -1
  186. package/web-shell/assets/{chunk-ND2GUHAM-SyL_xvWc.js → chunk-ND2GUHAM-YFtetHi0.js} +1 -1
  187. package/web-shell/assets/{chunk-QZHKN3VN-BzOuCKxa.js → chunk-QZHKN3VN-By2hiH3r.js} +1 -1
  188. package/web-shell/assets/classDiagram-4FO5ZUOK-BA2ljEjW.js +1 -0
  189. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BA2ljEjW.js +1 -0
  190. package/web-shell/assets/{cose-bilkent-S5V4N54A-BMPWyDKc.js → cose-bilkent-S5V4N54A-VrcnnLZu.js} +1 -1
  191. package/web-shell/assets/{dagre-BM42HDAG-B_GnPWik.js → dagre-BM42HDAG-CGo-IaVV.js} +1 -1
  192. package/web-shell/assets/{diagram-2AECGRRQ-fJqMc3S_.js → diagram-2AECGRRQ-Dl4QjzIB.js} +1 -1
  193. package/web-shell/assets/{diagram-5GNKFQAL-ximV3O9D.js → diagram-5GNKFQAL-qMLmsO0u.js} +1 -1
  194. package/web-shell/assets/{diagram-KO2AKTUF-2vVyjzqw.js → diagram-KO2AKTUF-CHlmuxPI.js} +1 -1
  195. package/web-shell/assets/{diagram-LMA3HP47-Dckcx1sT.js → diagram-LMA3HP47-BUwU3GwT.js} +1 -1
  196. package/web-shell/assets/{diagram-OG6HWLK6-BAVv47ga.js → diagram-OG6HWLK6-HEhwPDUM.js} +1 -1
  197. package/web-shell/assets/{erDiagram-TEJ5UH35-Bn3nf5J0.js → erDiagram-TEJ5UH35-1n0llBmM.js} +1 -1
  198. package/web-shell/assets/{flowDiagram-I6XJVG4X-BIbGF9JT.js → flowDiagram-I6XJVG4X-BN74uMnt.js} +1 -1
  199. package/web-shell/assets/{ganttDiagram-6RSMTGT7-CDbhb3AH.js → ganttDiagram-6RSMTGT7-BoOq78i3.js} +1 -1
  200. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-CbKG1a_w.js → gitGraphDiagram-PVQCEYII-CN8b00c8.js} +1 -1
  201. package/web-shell/assets/index-CNwoO1Cn.js +783 -0
  202. package/web-shell/assets/index-CWQ0z6kZ.css +5 -0
  203. package/web-shell/assets/{infoDiagram-5YYISTIA-DUFxTy8m.js → infoDiagram-5YYISTIA-CCurnIna.js} +1 -1
  204. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-D69hrBG8.js → ishikawaDiagram-YF4QCWOH-AwuRqdUP.js} +1 -1
  205. package/web-shell/assets/{journeyDiagram-JHISSGLW-DsvEw51Y.js → journeyDiagram-JHISSGLW-B7IICk-E.js} +1 -1
  206. package/web-shell/assets/{kanban-definition-UN3LZRKU-lFFjZEYd.js → kanban-definition-UN3LZRKU-BYF0OKhx.js} +1 -1
  207. package/web-shell/assets/{linear-Bo5bWzvo.js → linear-GWWguGfD.js} +1 -1
  208. package/web-shell/assets/{mermaid.core-C_HKMJx5.js → mermaid.core-JqtkxvCl.js} +5 -5
  209. package/web-shell/assets/{mindmap-definition-RKZ34NQL-DlV-NUTs.js → mindmap-definition-RKZ34NQL-B0MmHsZ6.js} +1 -1
  210. package/web-shell/assets/{pieDiagram-4H26LBE5-B2e6FH2a.js → pieDiagram-4H26LBE5-DhImUZLQ.js} +1 -1
  211. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-D75kSk-b.js → quadrantDiagram-W4KKPZXB-DGeSC3DT.js} +1 -1
  212. package/web-shell/assets/{requirementDiagram-4Y6WPE33-CQ6xakhM.js → requirementDiagram-4Y6WPE33-DkspY6Re.js} +1 -1
  213. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-J_XTKrcY.js → sankeyDiagram-5OEKKPKP-CaOofS2x.js} +1 -1
  214. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-D7jTcBtf.js → sequenceDiagram-3UESZ5HK-DFQ_kFnN.js} +1 -1
  215. package/web-shell/assets/{stateDiagram-AJRCARHV-CrlM_OT3.js → stateDiagram-AJRCARHV-D3snw0Tz.js} +1 -1
  216. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BbSm_9d0.js +1 -0
  217. package/web-shell/assets/{timeline-definition-PNZ67QCA-5oZi76Ef.js → timeline-definition-PNZ67QCA-l4zH8nLM.js} +1 -1
  218. package/web-shell/assets/{vennDiagram-CIIHVFJN-DO5YptPK.js → vennDiagram-CIIHVFJN-BnRlA98M.js} +1 -1
  219. package/web-shell/assets/{wardley-L42UT6IY-4t1eJDvM.js → wardley-L42UT6IY-BS0xUdmd.js} +1 -1
  220. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-DKZc661S.js → wardleyDiagram-YWT4CUSO-DKGBUWyQ.js} +1 -1
  221. package/web-shell/assets/{xychartDiagram-2RQKCTM6-su9hp08G.js → xychartDiagram-2RQKCTM6-DVb2HuOB.js} +1 -1
  222. package/web-shell/index.html +2 -2
  223. package/web-shell/assets/channel-BNf1dW-j.js +0 -1
  224. package/web-shell/assets/classDiagram-4FO5ZUOK-uOIGlzgi.js +0 -1
  225. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-uOIGlzgi.js +0 -1
  226. package/web-shell/assets/index-CnE2ur2L.js +0 -779
  227. package/web-shell/assets/index-hSKXrlSE.css +0 -5
  228. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-Bs4TK_84.js +0 -1
@@ -1,5 +1,21 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
+ import {
4
+ escapeAnsiCtrlCodes,
5
+ stringWidth
6
+ } from "./chunk-XYR5RUA5.js";
7
+ import {
8
+ require_undici
9
+ } from "./chunk-54YZOP7P.js";
10
+ import {
11
+ findCliEntryPath
12
+ } from "./chunk-AHNXYU4O.js";
13
+ import {
14
+ isLoopbackBind
15
+ } from "./chunk-RNBYOUGV.js";
16
+ import {
17
+ serveCommand
18
+ } from "./chunk-WHJQ3JUS.js";
3
19
  import {
4
20
  getExtensionManager,
5
21
  listCommand,
@@ -7,56 +23,33 @@ import {
7
23
  requestConsentNonInteractive,
8
24
  requestConsentOrFail,
9
25
  resolveExtensionCommandScope
10
- } from "./chunk-NZEGNV4V.js";
26
+ } from "./chunk-AYNCLGTW.js";
11
27
  import {
12
28
  getErrorMessage as getErrorMessage2
13
- } from "./chunk-FRFFNYUY.js";
29
+ } from "./chunk-DCZWC4PF.js";
14
30
  import {
15
31
  DEFAULT_BASE_URL,
16
32
  buildHeaders,
17
33
  clearAccount,
18
34
  loadAccount,
19
35
  saveAccount
20
- } from "./chunk-TBAZMRW3.js";
21
- import {
22
- escapeAnsiCtrlCodes,
23
- stringWidth
24
- } from "./chunk-GL5TV7B5.js";
25
- import {
26
- require_undici
27
- } from "./chunk-54YZOP7P.js";
36
+ } from "./chunk-CD6USWHZ.js";
28
37
  import {
29
38
  collectProviderModelsForProtocol,
30
39
  getAuthTypeFromEnv,
31
40
  resolveCliGenerationConfig
32
- } from "./chunk-4ZJIPVPB.js";
41
+ } from "./chunk-DIWVZ3VM.js";
33
42
  import {
34
43
  resolvePath as resolvePath2
35
44
  } from "./chunk-E7KNELIZ.js";
36
45
  import {
37
- findCliEntryPath
38
- } from "./chunk-AHNXYU4O.js";
39
- import {
40
- isLoopbackBind
41
- } from "./chunk-RNBYOUGV.js";
42
- import {
43
- serveCommand
44
- } from "./chunk-ME3YSROJ.js";
46
+ canonicalizeWorkspace
47
+ } from "./chunk-ER3BKOLB.js";
45
48
  import {
46
49
  assembleMcpServers,
47
50
  getPendingGatedMcpServers,
48
51
  mcpCommand
49
- } from "./chunk-QZF5U5KA.js";
50
- import {
51
- AcpBridge,
52
- ChannelLoopScheduler,
53
- ChannelLoopStore,
54
- DaemonChannelBridge,
55
- PairingStore,
56
- SessionRouter,
57
- resolvePath,
58
- sanitizeLogText
59
- } from "./chunk-2NPS2UDH.js";
52
+ } from "./chunk-FQNC62B2.js";
60
53
  import {
61
54
  CHANNEL_DAEMON_WORKER_SENTINEL,
62
55
  CHANNEL_WORKER_HEARTBEAT_INTERVAL_MS,
@@ -68,6 +61,16 @@ import {
68
61
  import {
69
62
  normalizeServeChannelSelection
70
63
  } from "./chunk-MX2YXRER.js";
64
+ import {
65
+ AcpBridge,
66
+ ChannelLoopScheduler,
67
+ ChannelLoopStore,
68
+ DaemonChannelBridge,
69
+ PairingStore,
70
+ SessionRouter,
71
+ resolvePath,
72
+ sanitizeLogText
73
+ } from "./chunk-IBY3Q3HG.js";
71
74
  import {
72
75
  readServiceInfo,
73
76
  removeServiceInfo,
@@ -76,30 +79,29 @@ import {
76
79
  writeServiceInfo
77
80
  } from "./chunk-MZ7BABX3.js";
78
81
  import {
79
- loadEnvironment,
80
82
  loadSettings
81
- } from "./chunk-STAZRKOT.js";
83
+ } from "./chunk-M7S4GK5Z.js";
82
84
  import {
83
85
  detectSystemLanguage,
84
86
  getCurrentLanguage,
85
87
  t
86
- } from "./chunk-QAKFYMJI.js";
88
+ } from "./chunk-O33TBKDC.js";
87
89
  import {
88
- canonicalizeWorkspace
89
- } from "./chunk-ER3BKOLB.js";
90
+ loadEnvironment
91
+ } from "./chunk-BOBRZZKD.js";
90
92
  import {
91
93
  hideBin,
92
94
  yargs_default
93
95
  } from "./chunk-3RW4AZJV.js";
94
96
  import {
95
97
  getCliVersion
96
- } from "./chunk-GD236YPV.js";
98
+ } from "./chunk-UXEW557D.js";
97
99
  import {
98
100
  getPackageJson
99
101
  } from "./chunk-43W4YSO6.js";
100
102
  import {
101
103
  isWorkspaceTrusted
102
- } from "./chunk-MIG5SQNL.js";
104
+ } from "./chunk-DICGXFAI.js";
103
105
  import {
104
106
  writeStderrLine,
105
107
  writeStdoutLine
@@ -131,7 +133,7 @@ import {
131
133
  redactUrlCredentials,
132
134
  resolveBundleDir,
133
135
  updateSetting
134
- } from "./chunk-YEGT55NW.js";
136
+ } from "./chunk-3GNOQZDC.js";
135
137
  import {
136
138
  nextFireTime,
137
139
  parseCron
@@ -140,7 +142,7 @@ import {
140
142
  getAllGeminiMdFilenames,
141
143
  resolveTelemetrySettings,
142
144
  setGeminiMdFilename
143
- } from "./chunk-GMOWQOQQ.js";
145
+ } from "./chunk-BUZ6HGL4.js";
144
146
  import {
145
147
  DEFAULT_QWEN_EMBEDDING_MODEL
146
148
  } from "./chunk-OFEVLU4C.js";
@@ -1648,12 +1650,12 @@ function ensureBuiltins() {
1648
1650
  if (!builtinsPromise) {
1649
1651
  builtinsPromise = (async () => {
1650
1652
  const labelled = [
1651
- { name: "telegram", promise: import("./dist-YTRKAVUB.js") },
1652
- { name: "weixin", promise: import("./dist-FQ5WRJPL.js") },
1653
- { name: "dingtalk", promise: import("./dist-PKFTNUHO.js") },
1654
- { name: "wecom", promise: import("./dist-573HNSVO.js") },
1655
- { name: "feishu", promise: import("./dist-IMFFBMAT.js") },
1656
- { name: "qqbot", promise: import("./dist-OT7G2WNM.js") }
1653
+ { name: "telegram", promise: import("./dist-O2IRTRPP.js") },
1654
+ { name: "weixin", promise: import("./dist-H2AEJCZ5.js") },
1655
+ { name: "dingtalk", promise: import("./dist-Z34QPAQW.js") },
1656
+ { name: "wecom", promise: import("./dist-SCFLLYMK.js") },
1657
+ { name: "feishu", promise: import("./dist-BEXOZXLQ.js") },
1658
+ { name: "qqbot", promise: import("./dist-E6UANPIM.js") }
1657
1659
  ];
1658
1660
  const results = await Promise.allSettled(labelled.map((l) => l.promise));
1659
1661
  for (let i = 0; i < results.length; i++) {
@@ -1854,6 +1856,7 @@ async function parseChannelConfig(name, rawConfig, defaultCwd = process.cwd(), o
1854
1856
  memoryScope: parseMemoryScopeConfig(name, rawConfig),
1855
1857
  model: rawConfig["model"],
1856
1858
  groupPolicy: rawConfig["groupPolicy"] || "disabled",
1859
+ dmPolicy: rawConfig["dmPolicy"] || "open",
1857
1860
  groups: rawConfig["groups"] || {}
1858
1861
  };
1859
1862
  }
@@ -1986,6 +1989,49 @@ function registerToolCallDispatch(bridge, router, channels) {
1986
1989
  });
1987
1990
  }
1988
1991
  __name(registerToolCallDispatch, "registerToolCallDispatch");
1992
+ function cancelPermissionRequest(bridge, requestId) {
1993
+ if (!bridge.respondToPermission) {
1994
+ return;
1995
+ }
1996
+ void bridge.respondToPermission(requestId, { outcome: { outcome: "cancelled" } }).catch((err) => {
1997
+ writeStderrLine(
1998
+ `[Channel] Permission cancellation failed for ${sanitizeLogText(requestId, 128)}: ${err instanceof Error ? sanitizeLogText(err.message, 512) : sanitizeLogText(String(err), 512)}`
1999
+ );
2000
+ });
2001
+ }
2002
+ __name(cancelPermissionRequest, "cancelPermissionRequest");
2003
+ function registerPermissionRelay(bridge, router, channels) {
2004
+ bridge.on("permissionRequest", (event) => {
2005
+ const target = router.getTarget(event.sessionId);
2006
+ if (!target) {
2007
+ writeStderrLine(
2008
+ `[Channel] No route for session ${sanitizeLogText(event.sessionId, 128)}; cancelling permission ${sanitizeLogText(event.requestId, 128)}`
2009
+ );
2010
+ cancelPermissionRequest(bridge, event.requestId);
2011
+ return;
2012
+ }
2013
+ const channel = channels.get(target.channelName);
2014
+ if (!channel) {
2015
+ writeStderrLine(
2016
+ `[Channel] No channel "${sanitizeLogText(target.channelName, 64)}" for session ${sanitizeLogText(event.sessionId, 128)}; cancelling permission ${sanitizeLogText(event.requestId, 128)}`
2017
+ );
2018
+ cancelPermissionRequest(bridge, event.requestId);
2019
+ return;
2020
+ }
2021
+ channel.dispatchPermissionRequest(event).catch((err) => {
2022
+ writeStderrLine(
2023
+ `[Channel] Permission relay failed for ${sanitizeLogText(event.requestId, 128)}: ${err instanceof Error ? sanitizeLogText(err.message, 512) : sanitizeLogText(String(err), 512)}`
2024
+ );
2025
+ cancelPermissionRequest(bridge, event.requestId);
2026
+ });
2027
+ });
2028
+ bridge.on("permissionResolved", (event) => {
2029
+ for (const channel of channels.values()) {
2030
+ channel.dispatchPermissionResolved(event);
2031
+ }
2032
+ });
2033
+ }
2034
+ __name(registerPermissionRelay, "registerPermissionRelay");
1989
2035
  function registerSessionCleanup(bridge, router, channels) {
1990
2036
  bridge.on("sessionDied", (event) => {
1991
2037
  const safeId = sanitizeLogText(event.sessionId, 128);
@@ -2267,6 +2313,7 @@ async function startSingle(name, proxy, cronEnabled) {
2267
2313
  nextFireTime
2268
2314
  }) : void 0;
2269
2315
  registerToolCallDispatch(bridge, router, channels);
2316
+ registerPermissionRelay(bridge, router, channels);
2270
2317
  registerSessionCleanup(bridge, router, channels);
2271
2318
  try {
2272
2319
  await channel.connect();
@@ -2314,6 +2361,7 @@ async function startSingle(name, proxy, cronEnabled) {
2314
2361
  channel.disconnect();
2315
2362
  await channel.connect();
2316
2363
  registerToolCallDispatch(bridge, router, channels);
2364
+ registerPermissionRelay(bridge, router, channels);
2317
2365
  registerSessionCleanup(bridge, router, channels);
2318
2366
  attachDisconnectHandler(bridge);
2319
2367
  const result = await router.restoreSessions();
@@ -2402,6 +2450,7 @@ async function startAll(proxy, cronEnabled) {
2402
2450
  );
2403
2451
  }
2404
2452
  registerToolCallDispatch(bridge, router, channels);
2453
+ registerPermissionRelay(bridge, router, channels);
2405
2454
  registerSessionCleanup(bridge, router, channels);
2406
2455
  let connectedCount = 0;
2407
2456
  const connectedChannels = /* @__PURE__ */ new Map();
@@ -2489,6 +2538,7 @@ async function startAll(proxy, cronEnabled) {
2489
2538
  process.exit(1);
2490
2539
  }
2491
2540
  registerToolCallDispatch(bridge, router, channels);
2541
+ registerPermissionRelay(bridge, router, channels);
2492
2542
  registerSessionCleanup(bridge, router, channels);
2493
2543
  attachDisconnectHandler(bridge);
2494
2544
  const result = await router.restoreSessions();
@@ -2710,6 +2760,9 @@ function createDaemonChannelBridgeFacade(bridge, opts) {
2710
2760
  prompt: bridge.prompt.bind(bridge),
2711
2761
  cancelSession: bridge.cancelSession.bind(bridge)
2712
2762
  };
2763
+ if (bridge.respondToPermission) {
2764
+ facade.respondToPermission = bridge.respondToPermission.bind(bridge);
2765
+ }
2713
2766
  if (bridge.getAvailableCommands) {
2714
2767
  facade.getAvailableCommands = bridge.getAvailableCommands.bind(bridge);
2715
2768
  }
@@ -2723,7 +2776,7 @@ function createDaemonChannelBridgeFacade(bridge, opts) {
2723
2776
  }
2724
2777
  __name(createDaemonChannelBridgeFacade, "createDaemonChannelBridgeFacade");
2725
2778
  async function loadDaemonSdk() {
2726
- return await import("./daemon-F3I2RXP6.js");
2779
+ return await import("./daemon-WPAENEBW.js");
2727
2780
  }
2728
2781
  __name(loadDaemonSdk, "loadDaemonSdk");
2729
2782
  function selectedChannelNames(channelsConfig, selection) {
@@ -2890,6 +2943,7 @@ async function runChannelDaemonWorker(opts) {
2890
2943
  );
2891
2944
  }
2892
2945
  registerToolCallDispatch(bridgeFacade, createdRouter, channels);
2946
+ registerPermissionRelay(bridgeFacade, createdRouter, channels);
2893
2947
  registerSessionCleanup(bridgeFacade, createdRouter, channels);
2894
2948
  for (const [name, channel] of channels) {
2895
2949
  throwIfStartupAborted(startupSignal);
@@ -5800,6 +5854,147 @@ async function loadCliConfig(settings, argv, cwd = process.cwd(), overrideExtens
5800
5854
  }
5801
5855
  __name(loadCliConfig, "loadCliConfig");
5802
5856
 
5857
+ // packages/cli/src/config/extension-refresh-state.ts
5858
+ init_esbuild_shims();
5859
+ import { EventEmitter as EventEmitter2 } from "node:events";
5860
+ var SUPPRESS_AFTER_MS = 1e3;
5861
+ var EXTENSION_RELOAD_FAILED_REASON = "extension reload failed";
5862
+ var ExtensionRefreshState = class {
5863
+ constructor(events = new EventEmitter2()) {
5864
+ this.events = events;
5865
+ }
5866
+ static {
5867
+ __name(this, "ExtensionRefreshState");
5868
+ }
5869
+ extensionRefreshNeeded = false;
5870
+ reloadInProgress = false;
5871
+ changedDuringReload = false;
5872
+ contentChangedDuringReload = false;
5873
+ suppressionDepth = 0;
5874
+ suppressUntil = 0;
5875
+ on(event, listener) {
5876
+ this.events.on(event, listener);
5877
+ }
5878
+ off(event, listener) {
5879
+ this.events.off(event, listener);
5880
+ }
5881
+ markExtensionsChanged(reason) {
5882
+ if (this.isSuppressed()) {
5883
+ return false;
5884
+ }
5885
+ if (this.reloadInProgress) {
5886
+ this.changedDuringReload = true;
5887
+ return false;
5888
+ }
5889
+ if (this.extensionRefreshNeeded) {
5890
+ return false;
5891
+ }
5892
+ this.extensionRefreshNeeded = true;
5893
+ this.events.emit("extension-refresh-needed" /* ExtensionRefreshNeeded */, reason);
5894
+ return true;
5895
+ }
5896
+ markExtensionContentChanged(reason) {
5897
+ if (this.isSuppressed()) {
5898
+ return false;
5899
+ }
5900
+ if (this.reloadInProgress) {
5901
+ this.contentChangedDuringReload = true;
5902
+ return false;
5903
+ }
5904
+ if (this.extensionRefreshNeeded) {
5905
+ return false;
5906
+ }
5907
+ this.events.emit("extension-content-changed" /* ExtensionContentChanged */, reason);
5908
+ return true;
5909
+ }
5910
+ clearExtensionsChanged() {
5911
+ const changedDuringReload = this.changedDuringReload;
5912
+ const contentChangedDuringReload = this.contentChangedDuringReload;
5913
+ this.extensionRefreshNeeded = changedDuringReload;
5914
+ this.reloadInProgress = false;
5915
+ this.changedDuringReload = false;
5916
+ this.contentChangedDuringReload = false;
5917
+ this.suppressUntil = 0;
5918
+ this.events.emit("extensions-reloaded" /* ExtensionsReloaded */);
5919
+ if (changedDuringReload) {
5920
+ this.events.emit(
5921
+ "extension-refresh-needed" /* ExtensionRefreshNeeded */,
5922
+ "extension files changed during reload"
5923
+ );
5924
+ } else if (contentChangedDuringReload) {
5925
+ this.events.emit(
5926
+ "extension-content-changed" /* ExtensionContentChanged */,
5927
+ "extension content files changed during reload"
5928
+ );
5929
+ }
5930
+ }
5931
+ notifyExtensionsReloadStarted() {
5932
+ this.reloadInProgress = true;
5933
+ this.changedDuringReload = false;
5934
+ this.contentChangedDuringReload = false;
5935
+ this.events.emit("extensions-reload-started" /* ExtensionsReloadStarted */);
5936
+ }
5937
+ markExtensionsReloadFailed(reason = EXTENSION_RELOAD_FAILED_REASON) {
5938
+ const changedDuringReload = this.changedDuringReload;
5939
+ const contentChangedDuringReload = this.contentChangedDuringReload;
5940
+ this.extensionRefreshNeeded = true;
5941
+ this.reloadInProgress = false;
5942
+ this.changedDuringReload = changedDuringReload;
5943
+ this.contentChangedDuringReload = contentChangedDuringReload;
5944
+ this.suppressUntil = 0;
5945
+ this.events.emit("extensions-reloaded" /* ExtensionsReloaded */);
5946
+ this.events.emit("extension-refresh-needed" /* ExtensionRefreshNeeded */, reason);
5947
+ }
5948
+ needsExtensionRefresh() {
5949
+ return this.extensionRefreshNeeded;
5950
+ }
5951
+ isReloadInProgress() {
5952
+ return this.reloadInProgress;
5953
+ }
5954
+ beginSuppression(onSettle) {
5955
+ this.suppressionDepth++;
5956
+ let settled = false;
5957
+ return () => {
5958
+ if (settled) return;
5959
+ settled = true;
5960
+ this.suppressionDepth = Math.max(0, this.suppressionDepth - 1);
5961
+ this.suppressUntil = Date.now() + SUPPRESS_AFTER_MS;
5962
+ if (this.suppressionDepth === 0) {
5963
+ onSettle?.();
5964
+ }
5965
+ };
5966
+ }
5967
+ suppressNotifications(fn, onSettle) {
5968
+ const endSuppression = this.beginSuppression(onSettle);
5969
+ try {
5970
+ const result = fn();
5971
+ if (isPromiseLike(result)) {
5972
+ return Promise.resolve(result).finally(endSuppression);
5973
+ }
5974
+ endSuppression();
5975
+ return result;
5976
+ } catch (error) {
5977
+ endSuppression();
5978
+ throw error;
5979
+ }
5980
+ }
5981
+ resetForTesting() {
5982
+ this.extensionRefreshNeeded = false;
5983
+ this.reloadInProgress = false;
5984
+ this.changedDuringReload = false;
5985
+ this.contentChangedDuringReload = false;
5986
+ this.suppressionDepth = 0;
5987
+ this.suppressUntil = 0;
5988
+ }
5989
+ isSuppressed() {
5990
+ return this.suppressionDepth > 0 || Date.now() < this.suppressUntil;
5991
+ }
5992
+ };
5993
+ function isPromiseLike(value) {
5994
+ return typeof value === "object" && value !== null && "then" in value && typeof value.then === "function";
5995
+ }
5996
+ __name(isPromiseLike, "isPromiseLike");
5997
+
5803
5998
  export {
5804
5999
  validateAuthMethod,
5805
6000
  normalizeDisabledToolList,
@@ -5811,7 +6006,9 @@ export {
5811
6006
  loadHierarchicalGeminiMemory,
5812
6007
  isDebugMode,
5813
6008
  buildDisabledSkillNamesProvider,
5814
- loadCliConfig
6009
+ loadCliConfig,
6010
+ EXTENSION_RELOAD_FAILED_REASON,
6011
+ ExtensionRefreshState
5815
6012
  };
5816
6013
  /**
5817
6014
  * @license
@@ -2,12 +2,12 @@
2
2
  "use strict";
3
3
  import {
4
4
  buildPermissionSettings
5
- } from "./chunk-P7I3D7FM.js";
5
+ } from "./chunk-JRQ7EVGE.js";
6
6
  import {
7
7
  resolveVoiceStreamConfig,
8
8
  resolveVoiceTranscriptionConfig,
9
9
  transcribeVoiceAudio
10
- } from "./chunk-RYFZCUJO.js";
10
+ } from "./chunk-VGGOPZUL.js";
11
11
  import {
12
12
  getVoiceSettingsScope,
13
13
  isSelectableVoiceModel,
@@ -16,15 +16,11 @@ import {
16
16
  readVoiceMode,
17
17
  readVoiceModel,
18
18
  resolveVoiceTransport
19
- } from "./chunk-ADZG46HR.js";
19
+ } from "./chunk-ZE6E424U.js";
20
20
  import {
21
21
  WorkspacePermissionRulesSessionRequiredError,
22
22
  WorkspaceSettingsPartialPersistError
23
23
  } from "./chunk-BMFMJINR.js";
24
- import {
25
- getPersistScopeForModelSelection,
26
- loadSettings
27
- } from "./chunk-STAZRKOT.js";
28
24
  import {
29
25
  MCP_RESTART_SERVER_DEADLINE_MS
30
26
  } from "./chunk-P7M4GA57.js";
@@ -36,7 +32,11 @@ import {
36
32
  WorkspaceInitPathEscapeError,
37
33
  WorkspaceInitRaceError,
38
34
  WorkspaceInitSymlinkError
39
- } from "./chunk-B34OV7K2.js";
35
+ } from "./chunk-GGQQA4JW.js";
36
+ import {
37
+ getPersistScopeForModelSelection,
38
+ loadSettings
39
+ } from "./chunk-M7S4GK5Z.js";
40
40
  import {
41
41
  SERVE_CONTROL_EXT_METHODS,
42
42
  SERVE_STATUS_EXT_METHODS,
@@ -49,16 +49,16 @@ import {
49
49
  createIdleWorkspaceProvidersStatus,
50
50
  createIdleWorkspaceSkillsStatus,
51
51
  mapDomainErrorToErrorKind
52
- } from "./chunk-JF7DFPQ5.js";
52
+ } from "./chunk-LAXNEOBG.js";
53
53
  import {
54
54
  getWorkspaceTrustStatus
55
- } from "./chunk-MIG5SQNL.js";
55
+ } from "./chunk-DICGXFAI.js";
56
56
  import {
57
57
  writeStderrLine
58
58
  } from "./chunk-Y6Z2O3WR.js";
59
59
  import {
60
60
  ModelsConfig
61
- } from "./chunk-YEGT55NW.js";
61
+ } from "./chunk-3GNOQZDC.js";
62
62
  import {
63
63
  createDebugLogger
64
64
  } from "./chunk-22MNNNXE.js";