@zubriq/code 0.19.8-2 → 0.19.9-2

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 (245) hide show
  1. package/README.md +5 -1
  2. package/dist/README.md +5 -1
  3. package/dist/bundled/qc-helper/docs/features/channels/_meta.ts +1 -0
  4. package/dist/bundled/qc-helper/docs/features/channels/overview.md +23 -12
  5. package/dist/bundled/qc-helper/docs/features/channels/plugins.md +1 -0
  6. package/dist/bundled/qc-helper/docs/features/channels/wecom.md +111 -0
  7. package/dist/bundled/qc-helper/docs/features/hooks.md +36 -34
  8. package/dist/bundled/qc-helper/docs/features/memory.md +1 -1
  9. package/dist/bundled/qc-helper/docs/qwen-serve.md +17 -10
  10. package/dist/bundled/review/SKILL.md +6 -2
  11. package/dist/chunks/{MaxSizedBox-DTQF2MAY.js → MaxSizedBox-DAULPOB3.js} +13 -11
  12. package/dist/chunks/{StandaloneSessionPicker-XYO5V6IL.js → StandaloneSessionPicker-5Z7LVQ7F.js} +28 -23
  13. package/dist/chunks/{acpAgent-STMSDYGP.js → acpAgent-7JXXVE6B.js} +110 -80
  14. package/dist/chunks/{agent-C6YBZNSA.js → agent-S52M66XP.js} +8 -8
  15. package/dist/chunks/{agent-headless-65TQRHOY.js → agent-headless-47CB7RWZ.js} +8 -8
  16. package/dist/chunks/{anthropicContentGenerator-FZQAEMYK.js → anthropicContentGenerator-52G6ZA3D.js} +31 -4
  17. package/dist/chunks/{artifact-tool-H2TNPNP5.js → artifact-tool-D233YJFH.js} +25 -6
  18. package/dist/chunks/{bridge-GHGQNQRB.js → bridge-O6CZID6W.js} +17 -14
  19. package/dist/chunks/{ca-HCMB2I54.js → ca-MKD32FQL.js} +26 -1
  20. package/dist/chunks/{channel-worker-supervisor-B7MSMB5K.js → channel-worker-supervisor-NZQUOEFJ.js} +3 -3
  21. package/dist/chunks/{chunk-ZCMLUE4O.js → chunk-27A4SPWJ.js} +1 -1
  22. package/dist/chunks/{chunk-O3DVJ2JO.js → chunk-2DFYBHN4.js} +507 -64
  23. package/dist/chunks/{chunk-3SBUWSLI.js → chunk-2KQ42WGR.js} +2 -2
  24. package/dist/chunks/{chunk-PADAEB6D.js → chunk-2MZ4AYIT.js} +308 -81
  25. package/dist/chunks/chunk-332PWN27.js +19 -0
  26. package/dist/chunks/{chunk-FVMWEHWU.js → chunk-3B26UVCX.js} +114 -12
  27. package/dist/chunks/{chunk-W6RH6KHR.js → chunk-3GPVYALM.js} +4 -2
  28. package/dist/chunks/{chunk-SVK2TREP.js → chunk-3KV2TYC4.js} +1 -1
  29. package/dist/chunks/{chunk-G7ZG7CA6.js → chunk-3UP777ZS.js} +8 -7
  30. package/dist/chunks/{chunk-TYOF23VK.js → chunk-43W4YSO6.js} +1 -12
  31. package/dist/chunks/{chunk-3Y2SRVRF.js → chunk-4S7YIVL6.js} +3 -3
  32. package/dist/chunks/{chunk-VEB3NYSO.js → chunk-5MBO76SL.js} +5 -0
  33. package/dist/chunks/{chunk-6N76CE6T.js → chunk-65GWYZCU.js} +10 -5
  34. package/dist/chunks/{chunk-Z3VQSA4A.js → chunk-67JZ37FW.js} +1 -1
  35. package/dist/chunks/{chunk-FACTYQFS.js → chunk-72AW57IS.js} +5352 -4135
  36. package/dist/chunks/chunk-A2X3KLC3.js +3807 -0
  37. package/dist/chunks/chunk-A7JD2K4Z.js +28 -0
  38. package/dist/chunks/{chunk-3CRBBLJZ.js → chunk-BAC5H5F4.js} +9 -9
  39. package/dist/chunks/{chunk-46IFEQDM.js → chunk-BIO6D3EL.js} +1 -1
  40. package/dist/chunks/chunk-BLNH4ALH.js +283 -0
  41. package/dist/chunks/{chunk-GXQXFHYV.js → chunk-CBYHA7QC.js} +1 -1
  42. package/dist/chunks/{chunk-NCFY7PWS.js → chunk-CCGOFQV3.js} +51 -2
  43. package/dist/chunks/{chunk-66KNL43D.js → chunk-CD6USWHZ.js} +1 -1
  44. package/dist/chunks/{chunk-J6GMF2DO.js → chunk-CJGGW5FV.js} +66 -7
  45. package/dist/chunks/{chunk-LLVYPOQV.js → chunk-COUVVSMO.js} +2 -2
  46. package/dist/chunks/{chunk-A6XKBVOM.js → chunk-EHLC565U.js} +11 -11
  47. package/dist/chunks/{chunk-VKWGD42I.js → chunk-EKPIW37S.js} +10 -10
  48. package/dist/chunks/{chunk-DNV4FSN5.js → chunk-FBET5XZ2.js} +6 -4
  49. package/dist/chunks/{chunk-UMU5USBC.js → chunk-FNQ4NTFR.js} +14 -153
  50. package/dist/chunks/{chunk-2NL7ED5Q.js → chunk-FV7425LN.js} +22 -1
  51. package/dist/chunks/{chunk-6UBX2BIL.js → chunk-G2XMNE5I.js} +4 -4
  52. package/dist/chunks/{chunk-B34OV7K2.js → chunk-GGQQA4JW.js} +13 -0
  53. package/dist/chunks/chunk-GLE2YUPU.js +34 -0
  54. package/dist/chunks/{chunk-X265R5C6.js → chunk-GN3F6PIU.js} +1 -1
  55. package/dist/chunks/{chunk-TJS7CXNX.js → chunk-HY7JTIS2.js} +5 -5
  56. package/dist/chunks/{chunk-WSVZFWN4.js → chunk-IBY3Q3HG.js} +693 -104
  57. package/dist/chunks/{chunk-VEDR5V7H.js → chunk-ITIH3WEE.js} +8 -8
  58. package/dist/chunks/chunk-JGT7AZCW.js +168 -0
  59. package/dist/chunks/{chunk-PY6PG4BL.js → chunk-K6VOOZB4.js} +6 -5
  60. package/dist/chunks/chunk-LGFAYIKX.js +115 -0
  61. package/dist/chunks/chunk-LOJIM7ZB.js +487 -0
  62. package/dist/chunks/{chunk-FT5ASRN5.js → chunk-LRKOXGF6.js} +5 -5
  63. package/dist/chunks/{chunk-AXYGF5SX.js → chunk-LSB7QUTQ.js} +15 -9
  64. package/dist/chunks/{chunk-QUR23Z2Q.js → chunk-M6F3JCGI.js} +2 -2
  65. package/dist/chunks/{chunk-DH7XPKJV.js → chunk-MCAFUCA2.js} +5 -5
  66. package/dist/chunks/{chunk-SWHGVEH5.js → chunk-O2JNBKLL.js} +1 -1
  67. package/dist/chunks/{chunk-4RQIB5UZ.js → chunk-O2YT7VB4.js} +0 -34
  68. package/dist/chunks/{chunk-4KJ2BPIT.js → chunk-OACJLMLD.js} +2 -38
  69. package/dist/chunks/{chunk-VQZSRYKB.js → chunk-OFGYDQPN.js} +423 -61
  70. package/dist/chunks/{chunk-5XZ6FOTY.js → chunk-ONGYTDFO.js} +1 -1
  71. package/dist/chunks/{chunk-RTCBBRJK.js → chunk-PBLEEGVC.js} +20 -8
  72. package/dist/chunks/{chunk-4KMU5RWV.js → chunk-PJWMYPWC.js} +45 -9
  73. package/dist/chunks/{chunk-65A6UQDZ.js → chunk-QGNRRKJJ.js} +146 -54
  74. package/dist/chunks/{chunk-GSNACUDM.js → chunk-RBXWE376.js} +5 -13
  75. package/dist/chunks/{chunk-COPJASIO.js → chunk-RRI2ZIIA.js} +10 -10
  76. package/dist/chunks/{chunk-GKUVMLJH.js → chunk-RVBG4B2L.js} +3 -3
  77. package/dist/chunks/{chunk-KSPVDFE4.js → chunk-SAIILPQ3.js} +0 -3
  78. package/dist/chunks/{chunk-AKSRZ5BA.js → chunk-SBP3QB6S.js} +17 -111
  79. package/dist/chunks/{chunk-P42OA4GP.js → chunk-TBV35OBU.js} +14 -8
  80. package/dist/chunks/{chunk-HXVVCTID.js → chunk-TWKTKDO7.js} +1 -1
  81. package/dist/chunks/chunk-U3BZFGXZ.js +167 -0
  82. package/dist/chunks/chunk-UIDXQNMV.js +13 -0
  83. package/dist/chunks/{chunk-PIORL4OD.js → chunk-UKV3D7WB.js} +0 -44
  84. package/dist/chunks/{chunk-23TH7TAA.js → chunk-UNP2RK7B.js} +2 -2
  85. package/dist/chunks/{chunk-AGTU5PQ6.js → chunk-UWRIDCTO.js} +4 -4
  86. package/dist/chunks/chunk-V35MD7KN.js +13 -0
  87. package/dist/chunks/{chunk-OMO3UY57.js → chunk-VFGM47DK.js} +681 -1232
  88. package/dist/chunks/{chunk-PMMJS5AM.js → chunk-X4BBHJZ3.js} +4 -3
  89. package/dist/chunks/chunk-XMQOLL5Z.js +8223 -0
  90. package/dist/chunks/chunk-XNXVCNAT.js +88 -0
  91. package/dist/chunks/{chunk-TDGF35EN.js → chunk-XOHNA2S6.js} +1 -1
  92. package/dist/chunks/{chunk-PYWGOON5.js → chunk-XPS3UH2D.js} +1 -1
  93. package/dist/chunks/chunk-YBRZ3S2C.js +942 -0
  94. package/dist/chunks/{chunk-RFIL6REB.js → chunk-YKZIAK7C.js} +119 -29
  95. package/dist/chunks/{chunk-7SZJYZPR.js → chunk-YWRV5OJX.js} +92 -465
  96. package/dist/chunks/chunk-Z3I3QJK3.js +47 -0
  97. package/dist/chunks/{chunk-Z33V6JSK.js → chunk-ZF7UGIJ2.js} +1 -1
  98. package/dist/chunks/chunk-ZL5HN75Q.js +61 -0
  99. package/dist/chunks/{computer-use-BH6F7LI7.js → computer-use-AK2MPP4V.js} +8 -8
  100. package/dist/chunks/{contextCommand-URWDQXBJ.js → contextCommand-XXYJTFCX.js} +12 -11
  101. package/dist/chunks/{cron-create-DDYU4DIR.js → cron-create-JSXEIPVS.js} +1 -1
  102. package/dist/chunks/{cron-delete-DFKOUZWN.js → cron-delete-OIFVEPGU.js} +1 -1
  103. package/dist/chunks/{cron-list-ME5QGAR5.js → cron-list-D4ZX4IOE.js} +1 -1
  104. package/dist/chunks/{daemon-XWG2EGFX.js → daemon-WPAENEBW.js} +71 -3
  105. package/dist/chunks/{daemon-status-provider-CLNN2UY2.js → daemon-status-provider-DOBLLAUR.js} +20 -17
  106. package/dist/chunks/{de-PLLFDERI.js → de-ZFPPQVSF.js} +26 -1
  107. package/dist/chunks/{dist-LPVU3L2M.js → dist-BEXOZXLQ.js} +6 -3792
  108. package/dist/chunks/{dist-7GU63KI5.js → dist-E6UANPIM.js} +1 -1
  109. package/dist/chunks/{dist-VHBP2PIG.js → dist-H2AEJCZ5.js} +2 -2
  110. package/dist/chunks/{dist-3UDX5T4T.js → dist-O2IRTRPP.js} +1 -1
  111. package/dist/chunks/dist-SCFLLYMK.js +3217 -0
  112. package/dist/chunks/{dist-H4HHZYCI.js → dist-Z34QPAQW.js} +2 -2
  113. package/dist/chunks/{earlyInputCapture-SFINSVH2.js → earlyInputCapture-QX7FKEPY.js} +8 -8
  114. package/dist/chunks/{edit-5OJRPFGZ.js → edit-MNTA2GNC.js} +9 -9
  115. package/dist/chunks/{en-AXARKOWO.js → en-N4EPZAQI.js} +31 -2
  116. package/dist/chunks/{enter-worktree-HK54JBSR.js → enter-worktree-WAG3SZ2O.js} +8 -8
  117. package/dist/chunks/{enterPlanMode-5GXOH5PQ.js → enterPlanMode-THDBOOSG.js} +8 -8
  118. package/dist/chunks/environment-AE6MZDKE.js +90 -0
  119. package/dist/chunks/{errors-73SZF7O7.js → errors-ITLDJFFZ.js} +10 -10
  120. package/dist/chunks/{exit-worktree-CBX23VFX.js → exit-worktree-ENFBD2E5.js} +8 -8
  121. package/dist/chunks/{exitPlanMode-HADS7AAV.js → exitPlanMode-HOSNRC22.js} +8 -8
  122. package/dist/chunks/{fast-path-3QQW3W6W.js → fast-path-CDB4XPSL.js} +12 -3
  123. package/dist/chunks/{fast-path-settings-RCRXH2JG.js → fast-path-settings-7RIFI3PK.js} +3 -2
  124. package/dist/chunks/{fr-MBMNQSQ6.js → fr-5WWMY53B.js} +30 -1
  125. package/dist/chunks/{gemini-Q4KKJMFH.js → gemini-DR4ABGLP.js} +438 -265
  126. package/dist/chunks/{geminiContentGenerator-SBKWTYFU.js → geminiContentGenerator-GGRSUJG6.js} +1 -1
  127. package/dist/chunks/{glob-ORVXVDJJ.js → glob-S3ESYOFY.js} +8 -8
  128. package/dist/chunks/{grep-TMSN6VOF.js → grep-WVRBUHNE.js} +8 -8
  129. package/dist/chunks/handleAutoUpdate-K73DXUO2.js +65 -0
  130. package/dist/chunks/{initializer-NFO725XQ.js → initializer-O2E3RKOG.js} +17 -13
  131. package/dist/chunks/{ja-HFV5QCHR.js → ja-CUHZOLEJ.js} +30 -1
  132. package/dist/chunks/{list-NP6QTWKD.js → list-7HRANYR2.js} +17 -15
  133. package/dist/chunks/{loadedSettingsAdapter-5PXZC4ZO.js → loadedSettingsAdapter-DC3DUNGS.js} +15 -13
  134. package/dist/chunks/{loop-wakeup-ZW5P6VPY.js → loop-wakeup-OHWEMFP5.js} +2 -2
  135. package/dist/chunks/{ls-L654WOAT.js → ls-7MFU2QYW.js} +1 -1
  136. package/dist/chunks/{lsp-M35KE54Y.js → lsp-XHDTPTGV.js} +2 -4
  137. package/dist/chunks/{mcp-D3C75I47.js → mcp-T676RK3N.js} +15 -13
  138. package/dist/chunks/{monitor-YZFSN33Z.js → monitor-NDBNCHYZ.js} +16 -11
  139. package/dist/chunks/{nonInteractiveCli-U7ZDVLQD.js → nonInteractiveCli-TMB4TLML.js} +52 -44
  140. package/dist/chunks/{notebook-edit-LVCCTW65.js → notebook-edit-XNEWNIID.js} +9 -9
  141. package/dist/chunks/{openaiContentGenerator-G4JHCIGX.js → openaiContentGenerator-2GGVNH4J.js} +6 -6
  142. package/dist/chunks/{pidfile-O37JZBNN.js → pidfile-U6U3KDMU.js} +8 -8
  143. package/dist/chunks/{pt-2THT3YHA.js → pt-OLYN42DS.js} +26 -1
  144. package/dist/chunks/{qwenContentGenerator-SPHKYVJF.js → qwenContentGenerator-FZR3VYQW.js} +10 -10
  145. package/dist/chunks/{read-file-MBGSR77H.js → read-file-2P3MNXBM.js} +3 -3
  146. package/dist/chunks/{record-artifact-PP3LKHTS.js → record-artifact-SQ2OKRJW.js} +3 -3
  147. package/dist/chunks/{ripGrep-WMM4G6QB.js → ripGrep-W5DKLIC2.js} +8 -8
  148. package/dist/chunks/{ru-PER5I4OI.js → ru-MKM2HFDS.js} +26 -1
  149. package/dist/chunks/{run-qwen-serve-3BOGJBTS.js → run-qwen-serve-FGGLFPLG.js} +602 -143
  150. package/dist/chunks/{scheduler-KWPXUSJ4.js → scheduler-CTJIZOWI.js} +8 -8
  151. package/dist/chunks/{send-message-OA6MV4EU.js → send-message-76GT3JMC.js} +1 -1
  152. package/dist/chunks/{serve-6JXYVZRD.js → serve-2OBCBFXZ.js} +17 -14
  153. package/dist/chunks/{server-KOSHCREY.js → server-K5VEB225.js} +1394 -328
  154. package/dist/chunks/{session-5RI6JYZ6.js → session-7EVRNUXC.js} +53 -45
  155. package/dist/chunks/{settings-URS74H6Z.js → settings-7QGLUMUT.js} +24 -20
  156. package/dist/chunks/{shell-6VOD5NUH.js → shell-JSJCMSGS.js} +8 -8
  157. package/dist/chunks/{skill-MKIISOW7.js → skill-DSJPTMVO.js} +15 -5
  158. package/dist/chunks/{spawnChannel-GM7HIIDH.js → spawnChannel-ANPAH5LN.js} +10 -10
  159. package/dist/chunks/{src-X2S7YA5D.js → src-GMUN6GZG.js} +21 -9
  160. package/dist/chunks/{startInteractiveUI-REEHDN4Z.js → startInteractiveUI-ID2KOH7Z.js} +33759 -41620
  161. package/dist/chunks/{task-create-RPFZNB4B.js → task-create-WCHTB435.js} +2 -2
  162. package/dist/chunks/{task-update-5WUG5MVQ.js → task-update-XYWMHJGJ.js} +2 -2
  163. package/dist/chunks/{team-create-MQVOXIHZ.js → team-create-FNAI6F35.js} +8 -8
  164. package/dist/chunks/{team-plan-approval-H74NA3K2.js → team-plan-approval-GPAFPCI7.js} +8 -8
  165. package/dist/chunks/{theme-manager-YMC4EJQO.js → theme-manager-366AQFJU.js} +8 -8
  166. package/dist/chunks/{tool-search-VUJGWH7W.js → tool-search-GVSOY72G.js} +6 -23
  167. package/dist/chunks/total-session-admission-FUTVSIVT.js +72 -0
  168. package/dist/chunks/{trustedFolders-UMMVN4P2.js → trustedFolders-2J5VZVXS.js} +9 -9
  169. package/dist/chunks/updateCheck-BHMVBNNI.js +65 -0
  170. package/dist/chunks/{validateNonInterActiveAuth-ORA3KCZO.js → validateNonInterActiveAuth-6BNWQW3V.js} +49 -41
  171. package/dist/chunks/{version-II46VXNW.js → version-SI22TR43.js} +2 -1
  172. package/dist/chunks/{workflow-KYFPOWKK.js → workflow-EGCATP2M.js} +9 -9
  173. package/dist/chunks/{workspace-providers-status-QDQEYCHT.js → workspace-providers-status-NSB2VFSX.js} +18 -15
  174. package/dist/chunks/workspace-registry-B3YUZ2VM.js +74 -0
  175. package/dist/chunks/{workspace-service-YBVUOSP7.js → workspace-service-U23V3DKO.js} +21 -19
  176. package/dist/chunks/{workspace-skills-status-3ASS4VEE.js → workspace-skills-status-3OHN6C62.js} +16 -14
  177. package/dist/chunks/{write-file-7ZHZO4K5.js → write-file-YJHRI5NS.js} +9 -9
  178. package/dist/chunks/{zh-RS3HZHFH.js → zh-J4F6QWQV.js} +31 -2
  179. package/dist/chunks/{zh-TW-L5GRQ4S4.js → zh-TW-XVDWOLSW.js} +31 -2
  180. package/dist/cli.js +11 -11
  181. package/dist/locales/ca.js +30 -0
  182. package/dist/locales/de.js +30 -0
  183. package/dist/locales/en.js +38 -2
  184. package/dist/locales/fr.js +36 -0
  185. package/dist/locales/ja.js +36 -0
  186. package/dist/locales/pt.js +30 -0
  187. package/dist/locales/ru.js +30 -0
  188. package/dist/locales/zh-TW.js +38 -2
  189. package/dist/locales/zh.js +38 -2
  190. package/dist/package.json +3 -3
  191. package/dist/web-shell/assets/{arc-C6tzvtOa.js → arc-BWyoJpY2.js} +1 -1
  192. package/dist/web-shell/assets/{architectureDiagram-3BPJPVTR-DSYQFGn9.js → architectureDiagram-3BPJPVTR-BT0mGrz2.js} +1 -1
  193. package/dist/web-shell/assets/{blockDiagram-GPEHLZMM-CHjBdXAD.js → blockDiagram-GPEHLZMM-BLgUWvyf.js} +1 -1
  194. package/dist/web-shell/assets/{c4Diagram-AAUBKEIU-BQzK6Yyb.js → c4Diagram-AAUBKEIU-DYx9M7oU.js} +1 -1
  195. package/dist/web-shell/assets/channel-wmPUGHtg.js +1 -0
  196. package/dist/web-shell/assets/{chunk-2J33WTMH-hpP2p3Ij.js → chunk-2J33WTMH-CfMHWbuZ.js} +1 -1
  197. package/dist/web-shell/assets/{chunk-4BX2VUAB-B5KtK1JJ.js → chunk-4BX2VUAB-B1URoqEV.js} +1 -1
  198. package/dist/web-shell/assets/{chunk-55IACEB6-BDv6Mfr2.js → chunk-55IACEB6-DAIaM4QF.js} +1 -1
  199. package/dist/web-shell/assets/{chunk-727SXJPM-BevPWfrX.js → chunk-727SXJPM-B2X34knw.js} +1 -1
  200. package/dist/web-shell/assets/{chunk-AQP2D5EJ-ChDrz2ad.js → chunk-AQP2D5EJ-Cif-zLTQ.js} +1 -1
  201. package/dist/web-shell/assets/{chunk-FMBD7UC4-ClMdVSDs.js → chunk-FMBD7UC4-H18WCXdY.js} +1 -1
  202. package/dist/web-shell/assets/{chunk-ND2GUHAM-BceV8kZS.js → chunk-ND2GUHAM-YFtetHi0.js} +1 -1
  203. package/dist/web-shell/assets/{chunk-QZHKN3VN-DtyK2wwc.js → chunk-QZHKN3VN-By2hiH3r.js} +1 -1
  204. package/dist/web-shell/assets/classDiagram-4FO5ZUOK-BA2ljEjW.js +1 -0
  205. package/dist/web-shell/assets/classDiagram-v2-Q7XG4LA2-BA2ljEjW.js +1 -0
  206. package/dist/web-shell/assets/{cose-bilkent-S5V4N54A-BGMsqwmE.js → cose-bilkent-S5V4N54A-VrcnnLZu.js} +1 -1
  207. package/dist/web-shell/assets/{dagre-BM42HDAG-C-71clpF.js → dagre-BM42HDAG-CGo-IaVV.js} +1 -1
  208. package/dist/web-shell/assets/{diagram-2AECGRRQ-WIzzlkec.js → diagram-2AECGRRQ-Dl4QjzIB.js} +1 -1
  209. package/dist/web-shell/assets/{diagram-5GNKFQAL-CtnhZUP1.js → diagram-5GNKFQAL-qMLmsO0u.js} +1 -1
  210. package/dist/web-shell/assets/{diagram-KO2AKTUF-CS_IUezp.js → diagram-KO2AKTUF-CHlmuxPI.js} +1 -1
  211. package/dist/web-shell/assets/{diagram-LMA3HP47-BQnGRwN9.js → diagram-LMA3HP47-BUwU3GwT.js} +1 -1
  212. package/dist/web-shell/assets/{diagram-OG6HWLK6-By2VIocq.js → diagram-OG6HWLK6-HEhwPDUM.js} +1 -1
  213. package/dist/web-shell/assets/{erDiagram-TEJ5UH35-Dy8WeNkr.js → erDiagram-TEJ5UH35-1n0llBmM.js} +1 -1
  214. package/dist/web-shell/assets/{flowDiagram-I6XJVG4X-Diu_4y0w.js → flowDiagram-I6XJVG4X-BN74uMnt.js} +1 -1
  215. package/dist/web-shell/assets/{ganttDiagram-6RSMTGT7-CH8euujP.js → ganttDiagram-6RSMTGT7-BoOq78i3.js} +1 -1
  216. package/dist/web-shell/assets/{gitGraphDiagram-PVQCEYII-DHiObZq1.js → gitGraphDiagram-PVQCEYII-CN8b00c8.js} +1 -1
  217. package/dist/web-shell/assets/index-CNwoO1Cn.js +783 -0
  218. package/dist/web-shell/assets/index-CWQ0z6kZ.css +5 -0
  219. package/dist/web-shell/assets/{infoDiagram-5YYISTIA-CvC9A6fh.js → infoDiagram-5YYISTIA-CCurnIna.js} +1 -1
  220. package/dist/web-shell/assets/{ishikawaDiagram-YF4QCWOH-BK46kC4E.js → ishikawaDiagram-YF4QCWOH-AwuRqdUP.js} +1 -1
  221. package/dist/web-shell/assets/{journeyDiagram-JHISSGLW-B2TIiKq4.js → journeyDiagram-JHISSGLW-B7IICk-E.js} +1 -1
  222. package/dist/web-shell/assets/{kanban-definition-UN3LZRKU-Bh0WAulO.js → kanban-definition-UN3LZRKU-BYF0OKhx.js} +1 -1
  223. package/dist/web-shell/assets/{linear-Bxe9SHMk.js → linear-GWWguGfD.js} +1 -1
  224. package/dist/web-shell/assets/{mermaid.core-B1Pv6D5B.js → mermaid.core-JqtkxvCl.js} +5 -5
  225. package/dist/web-shell/assets/{mindmap-definition-RKZ34NQL-Bz0joLH8.js → mindmap-definition-RKZ34NQL-B0MmHsZ6.js} +1 -1
  226. package/dist/web-shell/assets/{pieDiagram-4H26LBE5-CnN4x-VS.js → pieDiagram-4H26LBE5-DhImUZLQ.js} +1 -1
  227. package/dist/web-shell/assets/{quadrantDiagram-W4KKPZXB-BYWD4xO4.js → quadrantDiagram-W4KKPZXB-DGeSC3DT.js} +1 -1
  228. package/dist/web-shell/assets/{requirementDiagram-4Y6WPE33-B4MEhI9h.js → requirementDiagram-4Y6WPE33-DkspY6Re.js} +1 -1
  229. package/dist/web-shell/assets/{sankeyDiagram-5OEKKPKP-Dk_FgKLp.js → sankeyDiagram-5OEKKPKP-CaOofS2x.js} +1 -1
  230. package/dist/web-shell/assets/{sequenceDiagram-3UESZ5HK-B4ksiBZQ.js → sequenceDiagram-3UESZ5HK-DFQ_kFnN.js} +1 -1
  231. package/dist/web-shell/assets/{stateDiagram-AJRCARHV-CYf0xSPl.js → stateDiagram-AJRCARHV-D3snw0Tz.js} +1 -1
  232. package/dist/web-shell/assets/stateDiagram-v2-BHNVJYJU-BbSm_9d0.js +1 -0
  233. package/dist/web-shell/assets/{timeline-definition-PNZ67QCA-0CXeWHNY.js → timeline-definition-PNZ67QCA-l4zH8nLM.js} +1 -1
  234. package/dist/web-shell/assets/{vennDiagram-CIIHVFJN-DHoYY9v2.js → vennDiagram-CIIHVFJN-BnRlA98M.js} +1 -1
  235. package/dist/web-shell/assets/{wardley-L42UT6IY-D_65qshr.js → wardley-L42UT6IY-BS0xUdmd.js} +1 -1
  236. package/dist/web-shell/assets/{wardleyDiagram-YWT4CUSO-Cv90x1sd.js → wardleyDiagram-YWT4CUSO-DKGBUWyQ.js} +1 -1
  237. package/dist/web-shell/assets/{xychartDiagram-2RQKCTM6-5FQCYJyh.js → xychartDiagram-2RQKCTM6-DVb2HuOB.js} +1 -1
  238. package/dist/web-shell/index.html +2 -2
  239. package/package.json +3 -2
  240. package/dist/web-shell/assets/channel-V-ZaJrA6.js +0 -1
  241. package/dist/web-shell/assets/classDiagram-4FO5ZUOK-s-H0snGT.js +0 -1
  242. package/dist/web-shell/assets/classDiagram-v2-Q7XG4LA2-s-H0snGT.js +0 -1
  243. package/dist/web-shell/assets/index-DW75jq0K.css +0 -5
  244. package/dist/web-shell/assets/index-tiCo0xbZ.js +0 -779
  245. package/dist/web-shell/assets/stateDiagram-v2-BHNVJYJU-CMtrFRUb.js +0 -1
@@ -16668,6 +16668,9 @@ var SERVE_CAPABILITY_REGISTRY = {
16668
16668
  session_branch: { since: "v1" },
16669
16669
  rate_limit: { since: "v1" },
16670
16670
  workspace_reload: { since: "v1" },
16671
+ // Multi-workspace sessions closed loop (issue #6378 Phase 2a). Advertised
16672
+ // only when one daemon hosts more than one registered workspace runtime.
16673
+ multi_workspace_sessions: { since: "v1" },
16671
16674
  // Phase 2 "reverse tool channel" (issue #5626). A connected WS client (e.g.
16672
16675
  // the Chrome extension) can host an MCP server that the daemon's agent
16673
16676
  // calls by carrying `mcp_message` JSON-RPC frames over the daemon WS,
@@ -16720,6 +16723,10 @@ var CONDITIONAL_SERVE_FEATURES = /* @__PURE__ */ new Map([
16720
16723
  ],
16721
16724
  ["rate_limit", (toggles) => toggles.rateLimit === true],
16722
16725
  ["workspace_reload", (toggles) => toggles.reloadAvailable === true],
16726
+ [
16727
+ "multi_workspace_sessions",
16728
+ (toggles) => toggles.multiWorkspaceSessionsEnabled === true
16729
+ ],
16723
16730
  ["client_mcp_over_ws", (toggles) => toggles.clientMcpOverWsEnabled === true],
16724
16731
  ["cdp_tunnel_over_ws", (toggles) => toggles.cdpTunnelOverWsEnabled === true],
16725
16732
  [
@@ -17231,35 +17238,78 @@ __name(parseDaemonStatusDetail, "parseDaemonStatusDetail");
17231
17238
  async function buildDaemonStatusResponse(detail, input) {
17232
17239
  const bridgeSnapshot = input.bridge.getDaemonStatusSnapshot();
17233
17240
  const lastActivity = input.bridge.lastActivityAt ?? null;
17241
+ const workspaceRuntimes = input.workspaceRegistry?.list();
17242
+ const workspaceSnapshots = workspaceRuntimes?.map((runtime) => ({
17243
+ workspaceCwd: runtime.workspaceCwd,
17244
+ snapshot: runtime.bridge === input.bridge ? bridgeSnapshot : runtime.bridge.getDaemonStatusSnapshot(),
17245
+ lastActivity: runtime.bridge === input.bridge ? lastActivity : runtime.bridge.lastActivityAt ?? null
17246
+ })) ?? [
17247
+ {
17248
+ workspaceCwd: input.boundWorkspace,
17249
+ snapshot: bridgeSnapshot,
17250
+ lastActivity
17251
+ }
17252
+ ];
17253
+ const aggregatedSessionCount = workspaceSnapshots.reduce(
17254
+ (sum, item) => sum + item.snapshot.sessionCount,
17255
+ 0
17256
+ );
17257
+ const aggregatedPendingPermissionCount = workspaceSnapshots.reduce(
17258
+ (sum, item) => sum + item.snapshot.pendingPermissionCount,
17259
+ 0
17260
+ );
17261
+ const aggregatedChannelLive = workspaceSnapshots.some(
17262
+ (item) => item.snapshot.channelLive
17263
+ );
17264
+ const aggregatedLastActivity = workspaceSnapshots.reduce(
17265
+ (latest, item) => item.lastActivity !== null && (latest === null || item.lastActivity > latest) ? item.lastActivity : latest,
17266
+ null
17267
+ );
17234
17268
  const acpSnapshot = input.acpHandle?.registry.getSnapshot();
17235
17269
  const rateLimitHits = input.rateLimiter?.getHitCounts() ?? zeroRateHits();
17236
17270
  let pendingPrompts = 0;
17237
17271
  let derivedQueuedPrompts = 0;
17238
- for (const session of bridgeSnapshot.sessions) {
17239
- pendingPrompts += session.pendingPromptCount;
17240
- derivedQueuedPrompts += Math.max(
17241
- 0,
17242
- session.pendingPromptCount - (session.hasActivePrompt ? 1 : 0)
17243
- );
17272
+ const derivedQueuedPromptsByWorkspace = [];
17273
+ for (const [index, { snapshot }] of workspaceSnapshots.entries()) {
17274
+ let derivedQueuedPromptsForWorkspace = 0;
17275
+ for (const session of snapshot.sessions) {
17276
+ pendingPrompts += session.pendingPromptCount;
17277
+ const sessionQueuedPrompts = Math.max(
17278
+ 0,
17279
+ session.pendingPromptCount - (session.hasActivePrompt ? 1 : 0)
17280
+ );
17281
+ derivedQueuedPrompts += sessionQueuedPrompts;
17282
+ derivedQueuedPromptsForWorkspace += sessionQueuedPrompts;
17283
+ }
17284
+ derivedQueuedPromptsByWorkspace[index] = derivedQueuedPromptsForWorkspace;
17244
17285
  }
17245
- const queuedPrompts = input.bridge.pendingPromptTotal ?? derivedQueuedPrompts;
17286
+ const queuedPrompts = workspaceRuntimes?.reduce(
17287
+ (sum, runtime, index) => sum + (runtime.bridge.pendingPromptTotal ?? derivedQueuedPromptsByWorkspace[index] ?? 0),
17288
+ 0
17289
+ ) ?? input.bridge.pendingPromptTotal ?? derivedQueuedPrompts;
17246
17290
  const channelWorker = input.getChannelWorkerSnapshot?.() ?? {
17247
17291
  enabled: false,
17248
17292
  state: "disabled",
17249
17293
  channels: []
17250
17294
  };
17295
+ const totalAdmissionSnapshot = input.getTotalSessionAdmissionSnapshot?.();
17251
17296
  const issues = [];
17252
17297
  let full;
17253
17298
  pushRuntimeIssues(
17254
17299
  issues,
17255
- bridgeSnapshot,
17256
17300
  acpSnapshot,
17257
17301
  rateLimitHits,
17258
17302
  input,
17259
- channelWorker
17303
+ channelWorker,
17304
+ totalAdmissionSnapshot,
17305
+ workspaceSnapshots
17260
17306
  );
17261
17307
  if (detail === "full") {
17262
- full = await buildFullStatus(input, bridgeSnapshot, acpSnapshot);
17308
+ full = await buildFullStatus(
17309
+ input,
17310
+ acpSnapshot,
17311
+ workspaceSnapshots.flatMap((item) => item.snapshot.sessions)
17312
+ );
17263
17313
  pushFullIssues(issues, full);
17264
17314
  }
17265
17315
  return {
@@ -17288,26 +17338,39 @@ async function buildDaemonStatusResponse(detail, input) {
17288
17338
  },
17289
17339
  limits: {
17290
17340
  maxSessions: bridgeSnapshot.limits.maxSessions,
17341
+ maxTotalSessions: positiveFiniteOrNull(input.opts.maxTotalSessions),
17291
17342
  maxPendingPromptsPerSession: bridgeSnapshot.limits.maxPendingPromptsPerSession,
17292
17343
  listenerMaxConnections: listenerMaxConnections(input.opts.maxConnections),
17293
17344
  eventRingSize: bridgeSnapshot.limits.eventRingSize,
17345
+ compactedReplayMaxBytes: bridgeSnapshot.limits.compactedReplayMaxBytes,
17294
17346
  promptDeadlineMs: positiveFiniteOrNull(input.opts.promptDeadlineMs),
17295
17347
  writerIdleTimeoutMs: positiveFiniteOrNull(input.opts.writerIdleTimeoutMs),
17296
17348
  channelIdleTimeoutMs: bridgeSnapshot.limits.channelIdleTimeoutMs,
17297
17349
  sessionIdleTimeoutMs: bridgeSnapshot.limits.sessionIdleTimeoutMs,
17298
17350
  acpConnectionCap: acpSnapshot?.connectionCap ?? null
17299
17351
  },
17352
+ ...workspaceRuntimes && workspaceRuntimes.length > 1 ? {
17353
+ workspaces: workspaceRuntimes.map((runtime) => ({
17354
+ id: runtime.workspaceId,
17355
+ cwd: runtime.workspaceCwd,
17356
+ primary: runtime.primary,
17357
+ trusted: runtime.trusted
17358
+ }))
17359
+ } : {},
17300
17360
  capabilities: {
17301
17361
  protocolVersions: input.protocolVersions,
17302
17362
  features: [...input.features]
17303
17363
  },
17304
17364
  runtime: {
17305
- sessions: { active: bridgeSnapshot.sessionCount },
17365
+ sessions: {
17366
+ active: aggregatedSessionCount,
17367
+ ...totalAdmissionSnapshot ? { admissionInFlight: totalAdmissionSnapshot.inFlight } : {}
17368
+ },
17306
17369
  permissions: {
17307
- pending: bridgeSnapshot.pendingPermissionCount,
17370
+ pending: aggregatedPendingPermissionCount,
17308
17371
  policy: bridgeSnapshot.permissionPolicy
17309
17372
  },
17310
- channel: { live: bridgeSnapshot.channelLive },
17373
+ channel: { live: aggregatedChannelLive },
17311
17374
  channelWorker,
17312
17375
  transport: {
17313
17376
  restSseActive: input.getRestSseActive(),
@@ -17328,11 +17391,14 @@ async function buildDaemonStatusResponse(detail, input) {
17328
17391
  ...input.getPerfSnapshot ? { perf: input.getPerfSnapshot() } : {},
17329
17392
  ...input.getMetricsSeries ? { metrics: { series: input.getMetricsSeries() } } : {},
17330
17393
  activity: {
17331
- activePrompts: input.bridge.activePromptCount ?? 0,
17394
+ activePrompts: workspaceRuntimes?.reduce(
17395
+ (sum, runtime) => sum + (runtime.bridge.activePromptCount ?? 0),
17396
+ 0
17397
+ ) ?? input.bridge.activePromptCount ?? 0,
17332
17398
  pendingPrompts,
17333
17399
  queuedPrompts,
17334
- lastActivityAt: lastActivity !== null ? new Date(lastActivity).toISOString() : null,
17335
- idleSinceMs: lastActivity !== null ? Date.now() - lastActivity : null
17400
+ lastActivityAt: aggregatedLastActivity !== null ? new Date(aggregatedLastActivity).toISOString() : null,
17401
+ idleSinceMs: aggregatedLastActivity !== null ? Date.now() - aggregatedLastActivity : null
17336
17402
  },
17337
17403
  process: process.memoryUsage()
17338
17404
  },
@@ -17354,7 +17420,7 @@ function cloneStartup(startup) {
17354
17420
  };
17355
17421
  }
17356
17422
  __name(cloneStartup, "cloneStartup");
17357
- async function buildFullStatus(input, bridgeSnapshot, acpSnapshot) {
17423
+ async function buildFullStatus(input, acpSnapshot, sessions) {
17358
17424
  const ctx = {
17359
17425
  route: "GET /daemon/status",
17360
17426
  workspaceCwd: input.boundWorkspace
@@ -17394,7 +17460,7 @@ async function buildFullStatus(input, bridgeSnapshot, acpSnapshot) {
17394
17460
  )
17395
17461
  ]);
17396
17462
  return {
17397
- sessions: bridgeSnapshot.sessions,
17463
+ sessions,
17398
17464
  acpConnections: acpSnapshot?.connections ?? [],
17399
17465
  workspace: {
17400
17466
  mcp,
@@ -17452,13 +17518,30 @@ async function withTimeout(promise, section, timeoutMs) {
17452
17518
  }
17453
17519
  }
17454
17520
  __name(withTimeout, "withTimeout");
17455
- function pushRuntimeIssues(issues, bridgeSnapshot, acpSnapshot, rateLimitHits, input, channelWorker) {
17456
- if (bridgeSnapshot.limits.maxSessions !== null && bridgeSnapshot.limits.maxSessions > 0 && bridgeSnapshot.sessionCount / bridgeSnapshot.limits.maxSessions >= CAPACITY_WARNING_RATIO) {
17457
- issues.push({
17458
- code: "session_capacity_high",
17459
- severity: "warning",
17460
- message: `Active sessions are at ${bridgeSnapshot.sessionCount}/${bridgeSnapshot.limits.maxSessions}.`
17461
- });
17521
+ function pushRuntimeIssues(issues, acpSnapshot, rateLimitHits, input, channelWorker, totalAdmissionSnapshot, workspaceSnapshots) {
17522
+ for (const { workspaceCwd, snapshot } of workspaceSnapshots) {
17523
+ if (snapshot.limits.maxSessions !== null && snapshot.limits.maxSessions > 0 && snapshot.sessionCount / snapshot.limits.maxSessions >= CAPACITY_WARNING_RATIO) {
17524
+ issues.push({
17525
+ code: "session_capacity_high",
17526
+ severity: "warning",
17527
+ message: workspaceSnapshots.length > 1 ? `Workspace ${workspaceCwd} active sessions are at ${snapshot.sessionCount}/${snapshot.limits.maxSessions}.` : `Active sessions are at ${snapshot.sessionCount}/${snapshot.limits.maxSessions}.`
17528
+ });
17529
+ }
17530
+ }
17531
+ const maxTotalSessions = positiveFiniteOrNull(input.opts.maxTotalSessions);
17532
+ if (maxTotalSessions !== null) {
17533
+ const fallbackLiveCount = workspaceSnapshots.reduce(
17534
+ (sum, item) => sum + item.snapshot.sessionCount,
17535
+ 0
17536
+ );
17537
+ const totalActive = (totalAdmissionSnapshot?.liveCount ?? fallbackLiveCount) + (totalAdmissionSnapshot?.inFlight ?? 0);
17538
+ if (totalActive / maxTotalSessions >= CAPACITY_WARNING_RATIO) {
17539
+ issues.push({
17540
+ code: "total_session_capacity_high",
17541
+ severity: "warning",
17542
+ message: `Total active and in-flight sessions are at ${totalActive}/${maxTotalSessions}.`
17543
+ });
17544
+ }
17462
17545
  }
17463
17546
  if (acpSnapshot !== void 0 && acpSnapshot.connectionCap !== null && acpSnapshot.connectionCap > 0 && acpSnapshot.connectionCount / acpSnapshot.connectionCap >= CAPACITY_WARNING_RATIO) {
17464
17547
  issues.push({
@@ -17467,18 +17550,25 @@ function pushRuntimeIssues(issues, bridgeSnapshot, acpSnapshot, rateLimitHits, i
17467
17550
  message: `ACP connections are at ${acpSnapshot.connectionCount}/${acpSnapshot.connectionCap}.`
17468
17551
  });
17469
17552
  }
17470
- if (bridgeSnapshot.pendingPermissionCount > 0) {
17553
+ const pendingPermissionCount = workspaceSnapshots.reduce(
17554
+ (sum, item) => sum + item.snapshot.pendingPermissionCount,
17555
+ 0
17556
+ );
17557
+ if (pendingPermissionCount > 0) {
17471
17558
  issues.push({
17472
17559
  code: "pending_permissions",
17473
17560
  severity: "warning",
17474
- message: `${bridgeSnapshot.pendingPermissionCount} permission request(s) are pending.`
17561
+ message: `${pendingPermissionCount} permission request(s) are pending.`
17475
17562
  });
17476
17563
  }
17477
- if (bridgeSnapshot.sessionCount > 0 && !bridgeSnapshot.channelLive) {
17564
+ const downWorkspaces = workspaceSnapshots.filter(
17565
+ (item) => item.snapshot.sessionCount > 0 && !item.snapshot.channelLive
17566
+ );
17567
+ if (downWorkspaces.length > 0) {
17478
17568
  issues.push({
17479
17569
  code: "acp_channel_down",
17480
17570
  severity: "error",
17481
- message: "Active sessions exist but the ACP channel is not live."
17571
+ message: downWorkspaces.length === 1 ? `Active sessions exist but the ACP channel is not live for ${downWorkspaces[0].workspaceCwd}.` : `Active sessions exist but the ACP channel is not live for ${downWorkspaces.length} workspace(s).`
17482
17572
  });
17483
17573
  }
17484
17574
  if (input.opts.rateLimit === true && sumRateHits(rateLimitHits) > 0) {