@qwen-code/qwen-code 0.19.6 → 0.19.7-nightly.20260708.394c1a289

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 (267) hide show
  1. package/bundled/qc-helper/docs/configuration/model-providers.md +5 -1
  2. package/bundled/qc-helper/docs/configuration/settings.md +33 -1
  3. package/bundled/qc-helper/docs/features/channels/_meta.ts +1 -0
  4. package/bundled/qc-helper/docs/features/channels/overview.md +41 -31
  5. package/bundled/qc-helper/docs/features/channels/wecom.md +111 -0
  6. package/bundled/qc-helper/docs/features/code-review.md +16 -6
  7. package/bundled/qc-helper/docs/features/commands.md +1 -1
  8. package/bundled/qc-helper/docs/features/hooks.md +6 -0
  9. package/bundled/qc-helper/docs/features/skills.md +5 -3
  10. package/bundled/qc-helper/docs/integration-github-action.md +1 -1
  11. package/bundled/review/DESIGN.md +50 -18
  12. package/bundled/review/SKILL.md +102 -12
  13. package/chunks/{MaxSizedBox-SK7CUWZQ.js → MaxSizedBox-XS37LWTD.js} +31 -29
  14. package/chunks/{StandaloneSessionPicker-G44HGSAP.js → StandaloneSessionPicker-LPALJTKN.js} +44 -41
  15. package/chunks/{acpAgent-PKCTYWJV.js → acpAgent-4VE3FGJX.js} +769 -366
  16. package/chunks/{agent-IYMHUXWB.js → agent-CCHERW6L.js} +24 -24
  17. package/chunks/{agent-headless-L2DAW6I5.js → agent-headless-55N6UBUU.js} +24 -24
  18. package/chunks/{anthropicContentGenerator-H5ZOEENQ.js → anthropicContentGenerator-AKYPSZIV.js} +7 -7
  19. package/chunks/{artifact-tool-SLYPWG3C.js → artifact-tool-D233YJFH.js} +27 -8
  20. package/chunks/{askUserQuestion-OKPTECON.js → askUserQuestion-MKL5ZTMC.js} +2 -2
  21. package/chunks/{bridge-DF3IJQ5V.js → bridge-U6HXOHE7.js} +34 -32
  22. package/chunks/{channel-worker-supervisor-JUYQ5Z4R.js → channel-worker-supervisor-CRCVYQIE.js} +1 -1
  23. package/chunks/{chunk-AVQDCKNF.js → chunk-22MNNNXE.js} +4 -0
  24. package/chunks/chunk-2DYY5XUZ.js +8223 -0
  25. package/chunks/chunk-2FHWCKWA.js +262 -0
  26. package/chunks/{chunk-6BEOH4KK.js → chunk-2NPS2UDH.js} +767 -122
  27. package/chunks/{chunk-N2IJLN2L.js → chunk-2SWMCXVR.js} +13 -5
  28. package/chunks/{chunk-OBVBTAX5.js → chunk-2YELHTUE.js} +2 -2
  29. package/chunks/chunk-332PWN27.js +19 -0
  30. package/chunks/{chunk-CLQPBI4H.js → chunk-3B26UVCX.js} +132 -26
  31. package/chunks/{chunk-HCFSKO6K.js → chunk-3QDZDAJG.js} +1 -1
  32. package/chunks/{chunk-G7OQ3RFJ.js → chunk-42XGFRJS.js} +3 -3
  33. package/chunks/{chunk-SL2P3JUA.js → chunk-43W4YSO6.js} +1 -12
  34. package/chunks/{chunk-JA5KWZTJ.js → chunk-44NROQYV.js} +5 -3
  35. package/chunks/{chunk-BOAWGUY6.js → chunk-4AFOWB47.js} +121 -49
  36. package/chunks/{chunk-MOUXUCXQ.js → chunk-4KJ2BPIT.js} +1 -1
  37. package/chunks/{chunk-YTWX5TT2.js → chunk-5FL2K3ZB.js} +1 -1
  38. package/chunks/{chunk-UNXGEDX2.js → chunk-5OSSOBZC.js} +133 -25
  39. package/chunks/{chunk-JN2VJ33O.js → chunk-7I4MGFBN.js} +966 -121
  40. package/chunks/{chunk-T42ACHFI.js → chunk-7LTB54MK.js} +1 -1
  41. package/chunks/chunk-A2X3KLC3.js +3807 -0
  42. package/chunks/{chunk-EWALXUAD.js → chunk-AGHU5VRK.js} +8 -0
  43. package/chunks/{chunk-GLPV75ES.js → chunk-AHNJGLFV.js} +2 -2
  44. package/chunks/{chunk-IUSKVKH5.js → chunk-AXTPFMRS.js} +1 -1
  45. package/chunks/{chunk-T22H4V4R.js → chunk-B34OV7K2.js} +1 -1
  46. package/chunks/{chunk-FZ5NVRVK.js → chunk-B5FOCTEZ.js} +3 -3
  47. package/chunks/{chunk-3UC7ZC43.js → chunk-B6WUEODT.js} +7 -7
  48. package/chunks/{chunk-MJKEQSZI.js → chunk-BGL43SJ3.js} +1 -1
  49. package/chunks/{chunk-OAYOHSGP.js → chunk-BHRU4SDF.js} +4 -4
  50. package/chunks/{chunk-YPCPZSZB.js → chunk-CCGOFQV3.js} +56 -4
  51. package/chunks/{chunk-FDY3XOTM.js → chunk-CR5IU2RX.js} +4 -4
  52. package/chunks/{chunk-LWGLBVWA.js → chunk-CSOTA7KX.js} +1 -1
  53. package/chunks/{chunk-AGZF43UV.js → chunk-E7HM76PR.js} +7153 -4406
  54. package/chunks/{chunk-NIOPRZNN.js → chunk-E7KNELIZ.js} +1 -1
  55. package/chunks/{chunk-YSU33ACT.js → chunk-ELMPRVCB.js} +5 -13
  56. package/chunks/{chunk-SEZC2725.js → chunk-ER3BKOLB.js} +13 -0
  57. package/chunks/{chunk-3VJ7MT3N.js → chunk-EXPMGZZV.js} +14 -3
  58. package/chunks/{chunk-DBF3HTLT.js → chunk-FB2ULV4M.js} +4 -4
  59. package/chunks/{chunk-RZORUN6X.js → chunk-FEJ2FZ3U.js} +1 -1
  60. package/chunks/chunk-FK77ILF5.js +2477 -0
  61. package/chunks/{chunk-DMSNJDWG.js → chunk-FV7425LN.js} +38 -3
  62. package/chunks/{chunk-ALX6BUYW.js → chunk-G7ZG7CA6.js} +186 -27
  63. package/chunks/{chunk-2INJBYLJ.js → chunk-GIY6JTTC.js} +6 -6
  64. package/chunks/{chunk-D5KISTLW.js → chunk-H6EMK6QK.js} +1 -1
  65. package/chunks/{chunk-KYTQOCDE.js → chunk-HW4N45EE.js} +17 -46
  66. package/chunks/{chunk-VXGPYF7U.js → chunk-IFEWJXFS.js} +1 -1
  67. package/chunks/chunk-II73RK2S.js +158 -0
  68. package/chunks/{chunk-TENOUWY2.js → chunk-IJRL2S3D.js} +3 -3
  69. package/chunks/{chunk-GQBRGBLS.js → chunk-J43WPR6U.js} +9 -9
  70. package/chunks/{chunk-SRNPMG7J.js → chunk-JYOWO2F7.js} +16 -10
  71. package/chunks/{chunk-57NRQM3P.js → chunk-K34DD7FH.js} +2 -2
  72. package/chunks/{chunk-O2RJARYU.js → chunk-KKWO4IX2.js} +1409 -4088
  73. package/chunks/{chunk-SOT7OMGL.js → chunk-KT3SI3CQ.js} +2 -2
  74. package/chunks/{chunk-NUK2PFSU.js → chunk-L7IWK7JY.js} +1 -1
  75. package/chunks/{chunk-MHQKYQDS.js → chunk-LC4SMGYY.js} +158 -3
  76. package/chunks/chunk-LGFAYIKX.js +115 -0
  77. package/chunks/{chunk-MBWLP5OT.js → chunk-LKXDC3AW.js} +162 -40
  78. package/chunks/{chunk-7Z6UEJA4.js → chunk-ME344634.js} +5 -2
  79. package/chunks/{chunk-V6NH3CUC.js → chunk-MOQOAH7N.js} +3 -3
  80. package/chunks/{chunk-FPHA7WIZ.js → chunk-MYZWWRVW.js} +3 -3
  81. package/chunks/{chunk-YHTNWGRR.js → chunk-MZ7BABX3.js} +1 -1
  82. package/chunks/chunk-N74BA4VP.js +949 -0
  83. package/chunks/{chunk-B236XPGF.js → chunk-NQKLOAVJ.js} +29 -2
  84. package/chunks/{chunk-LXFCHX4X.js → chunk-OU6FPTJZ.js} +312 -25
  85. package/chunks/{chunk-HTWHAN44.js → chunk-PC4ZXHU2.js} +1 -1
  86. package/chunks/{chunk-3X76L4UF.js → chunk-PLGONYEL.js} +5 -5
  87. package/chunks/{chunk-WXUDZHOJ.js → chunk-PVXPDMGP.js} +10 -2
  88. package/chunks/{chunk-ZO5EA3XJ.js → chunk-QCSLZO6J.js} +1 -1
  89. package/chunks/{chunk-CEYA7K7C.js → chunk-QHT5USLK.js} +62 -12
  90. package/chunks/{chunk-NPQWQYU6.js → chunk-QYNNN7BK.js} +1 -1
  91. package/chunks/{chunk-N4YJQTRL.js → chunk-RFIL6REB.js} +71 -2
  92. package/chunks/{chunk-KSPVDFE4.js → chunk-SAIILPQ3.js} +0 -3
  93. package/chunks/{chunk-OIFSBXSP.js → chunk-SJHAUELE.js} +3 -3
  94. package/chunks/{chunk-BZHLWC6T.js → chunk-SUAKHHK7.js} +2 -2
  95. package/chunks/{chunk-QOKV6AO4.js → chunk-T2EJHSE3.js} +184 -147
  96. package/chunks/{chunk-ZI4MGBB5.js → chunk-TBAZMRW3.js} +1 -1
  97. package/chunks/{chunk-6QVRLKTZ.js → chunk-TBLJNMI7.js} +7 -7
  98. package/chunks/{chunk-J6ABRKAB.js → chunk-TDGF35EN.js} +2 -2
  99. package/chunks/chunk-TEYGKLIZ.js +167 -0
  100. package/chunks/{chunk-TOAUDIS7.js → chunk-TLWA7TPR.js} +6 -2
  101. package/chunks/chunk-UIDXQNMV.js +13 -0
  102. package/chunks/{chunk-MX7CTJHR.js → chunk-UZCT5OLN.js} +9 -9
  103. package/chunks/{chunk-LM3YCCZJ.js → chunk-VEB3NYSO.js} +1 -1
  104. package/chunks/{chunk-UTL7KABL.js → chunk-VQJ64BIQ.js} +7 -7
  105. package/chunks/{chunk-C2QKQZEQ.js → chunk-VTCPREC7.js} +3 -3
  106. package/chunks/{chunk-5ES5YPED.js → chunk-VZ7HY3YU.js} +1 -1
  107. package/chunks/{chunk-QOMAHFYI.js → chunk-W7EEOR7D.js} +3 -3
  108. package/chunks/{chunk-NVFJSIAX.js → chunk-WMPVYQ4P.js} +1 -1
  109. package/chunks/{chunk-V5VTULL5.js → chunk-X265R5C6.js} +3 -3
  110. package/chunks/{chunk-LKWAVAB5.js → chunk-X2XNQQJI.js} +2 -2
  111. package/chunks/{chunk-MJKMIQMK.js → chunk-X3YGAX7V.js} +1 -1
  112. package/chunks/{chunk-5WQF27GW.js → chunk-XQ2GVLNJ.js} +1 -1
  113. package/chunks/chunk-XUSONNJ4.js +28 -0
  114. package/chunks/{chunk-DXXNMPJH.js → chunk-YMWIKAEE.js} +460 -93
  115. package/chunks/{chunk-A34EPIUV.js → chunk-YYU6H66M.js} +18 -15
  116. package/chunks/{chunk-XH7H6YG4.js → chunk-ZK5EI6NR.js} +4 -107
  117. package/chunks/{computer-use-5S3NVXRA.js → computer-use-4CTF6WS3.js} +24 -24
  118. package/chunks/{contextCommand-DPBALZFK.js → contextCommand-Z3XWQCY6.js} +28 -27
  119. package/chunks/{cron-create-7JYUDTUY.js → cron-create-JSXEIPVS.js} +4 -4
  120. package/chunks/{cron-delete-YPULQQAK.js → cron-delete-OIFVEPGU.js} +4 -4
  121. package/chunks/{cron-list-HJIW5MHP.js → cron-list-D4ZX4IOE.js} +11 -7
  122. package/chunks/{daemon-7XYW4BC3.js → daemon-F3I2RXP6.js} +208 -63
  123. package/chunks/daemon-status-provider-6A4QCG6Q.js +74 -0
  124. package/chunks/dist-573HNSVO.js +3217 -0
  125. package/chunks/{dist-ABQ7VWRR.js → dist-FQ5WRJPL.js} +2 -2
  126. package/chunks/{dist-JPSVN367.js → dist-IMFFBMAT.js} +6 -3792
  127. package/chunks/{dist-BV56HW3W.js → dist-OT7G2WNM.js} +250 -1
  128. package/chunks/{dist-AW5ZYMUI.js → dist-PKFTNUHO.js} +10 -11
  129. package/chunks/{dist-AAO65DPC.js → dist-YTRKAVUB.js} +1 -1
  130. package/chunks/{earlyInputCapture-GGPV4IFT.js → earlyInputCapture-7O47HW62.js} +25 -25
  131. package/chunks/{edit-HJ7ISN4C.js → edit-E32KWLF2.js} +25 -25
  132. package/chunks/{en-XR3S5VWY.js → en-GA2RMXY5.js} +6 -1
  133. package/chunks/{enter-worktree-2BQT675D.js → enter-worktree-ZKFFMHUD.js} +24 -24
  134. package/chunks/{enterPlanMode-SJXHJ3WD.js → enterPlanMode-HLDC6NGX.js} +24 -24
  135. package/chunks/{errors-EVGER4AZ.js → errors-MTIDDXX7.js} +26 -26
  136. package/chunks/{exit-worktree-RPDDOSPM.js → exit-worktree-YHY72XA2.js} +24 -24
  137. package/chunks/{exitPlanMode-BQEROAJ7.js → exitPlanMode-JNXKBZ2C.js} +24 -24
  138. package/chunks/{fast-path-FX2ICJ2O.js → fast-path-DVAGBROV.js} +5 -2
  139. package/chunks/{fr-MBMNQSQ6.js → fr-GWNQG4XH.js} +4 -0
  140. package/chunks/{gemini-EHUXCOUI.js → gemini-2TMHJVRC.js} +444 -256
  141. package/chunks/{geminiContentGenerator-YDUUKAM2.js → geminiContentGenerator-WCH4GWD3.js} +4 -4
  142. package/chunks/{glob-3VIGV2DL.js → glob-I6Y4AGKO.js} +52 -28
  143. package/chunks/{grep-4D3S4NUC.js → grep-3P2J3LU5.js} +24 -24
  144. package/chunks/handleAutoUpdate-4IVRMRG4.js +65 -0
  145. package/chunks/{initializer-QZTZSSLW.js → initializer-DVNCPVTC.js} +31 -29
  146. package/chunks/{ja-HFV5QCHR.js → ja-2HOTA47X.js} +4 -0
  147. package/chunks/{keychain-token-storage-GPAKRDKQ.js → keychain-token-storage-UJV5XP4Z.js} +2 -2
  148. package/chunks/{list-WQ24EAMK.js → list-4D6QK2KZ.js} +30 -30
  149. package/chunks/{loadedSettingsAdapter-XV74KOSR.js → loadedSettingsAdapter-GNGELH6Q.js} +28 -28
  150. package/chunks/{loop-wakeup-34YK7T7O.js → loop-wakeup-OHWEMFP5.js} +5 -5
  151. package/chunks/{ls-MPD5OJUX.js → ls-L654WOAT.js} +4 -4
  152. package/chunks/{lsp-72PWTDW7.js → lsp-M35KE54Y.js} +2 -2
  153. package/chunks/{mcp-CO3MKM7N.js → mcp-2IL72YJP.js} +28 -28
  154. package/chunks/{monitor-GB56T65A.js → monitor-BLVCZAVX.js} +32 -27
  155. package/chunks/nonInteractiveCli-UD3V7UOO.js +116 -0
  156. package/chunks/{notebook-edit-VMXAAE3R.js → notebook-edit-5TVMWIWY.js} +25 -25
  157. package/chunks/{openaiContentGenerator-GM77FLII.js → openaiContentGenerator-5LJ5A7YY.js} +12 -12
  158. package/chunks/{pidfile-HFXSHR64.js → pidfile-AN5JQJ2T.js} +25 -25
  159. package/chunks/{qwenContentGenerator-QSCXQIKJ.js → qwenContentGenerator-E2JSB4FJ.js} +26 -26
  160. package/chunks/{qwenOAuth2-LWLA6MQG.js → qwenOAuth2-ZV7YLMND.js} +5 -5
  161. package/chunks/{read-file-SVH6CGQY.js → read-file-N5DEFUDU.js} +8 -8
  162. package/chunks/{read-mcp-resource-OWOBJY72.js → read-mcp-resource-CNQHBSJM.js} +2 -2
  163. package/chunks/{record-artifact-URK3YUDJ.js → record-artifact-PP3LKHTS.js} +2 -2
  164. package/chunks/{ripGrep-JD5O2FLX.js → ripGrep-BLJHTHKE.js} +24 -24
  165. package/chunks/{run-qwen-serve-FADLRJUN.js → run-qwen-serve-4JDO64RN.js} +785 -35
  166. package/chunks/{scheduler-Q65SB7DJ.js → scheduler-FQR4XA7J.js} +24 -24
  167. package/chunks/{send-message-L7OLQEKH.js → send-message-OA6MV4EU.js} +3 -3
  168. package/chunks/{serve-6ZXAMQ4M.js → serve-ZOCFC7YM.js} +29 -29
  169. package/chunks/{server-WKDQA6XR.js → server-GEOYEPYT.js} +2504 -439
  170. package/chunks/{session-STWOX7RA.js → session-NJCONHGX.js} +66 -61
  171. package/chunks/{settings-LC4CCWQQ.js → settings-QBGGXANI.js} +27 -27
  172. package/chunks/{shell-FEG3RLPW.js → shell-2DVPSEKT.js} +24 -24
  173. package/chunks/{skill-XTXAMDAP.js → skill-HIPXUHV7.js} +24 -12
  174. package/chunks/{spawnChannel-B6JJPBPV.js → spawnChannel-3JYXY52G.js} +27 -27
  175. package/chunks/{src-HITDGVRM.js → src-NLEX4CUC.js} +91 -36
  176. package/chunks/{startInteractiveUI-IT423PW4.js → startInteractiveUI-TYGZIU27.js} +6213 -14273
  177. package/chunks/{syntheticOutput-J3MLCQAR.js → syntheticOutput-F7LSDCAR.js} +3 -3
  178. package/chunks/{task-create-ELEBZ7H2.js → task-create-RPFZNB4B.js} +7 -7
  179. package/chunks/{task-list-IEUZLF3Y.js → task-list-TGGJX7EA.js} +5 -5
  180. package/chunks/{task-stop-QEZW3UDY.js → task-stop-W7NGTMYQ.js} +2 -2
  181. package/chunks/{task-update-DW36J5P5.js → task-update-5WUG5MVQ.js} +7 -7
  182. package/chunks/{team-create-DAG6SNHZ.js → team-create-MGX57SZJ.js} +24 -24
  183. package/chunks/{team-delete-SVITIMBO.js → team-delete-UHQQ2QQX.js} +5 -5
  184. package/chunks/{team-plan-approval-DRDY5OPC.js → team-plan-approval-BO2N7J3E.js} +24 -24
  185. package/chunks/{theme-manager-N67EZC6B.js → theme-manager-WU7LOA64.js} +25 -25
  186. package/chunks/{todoWrite-SFFQHZYY.js → todoWrite-C4ZAMSR3.js} +4 -4
  187. package/chunks/{tool-search-CMDJ5HGM.js → tool-search-CLBKVEVK.js} +11 -28
  188. package/chunks/{trustedFolders-JD4QX6UJ.js → trustedFolders-GAQM2GHB.js} +25 -25
  189. package/chunks/updateCheck-RIK2YIQE.js +65 -0
  190. package/chunks/{validateNonInterActiveAuth-ADDCGZ6A.js → validateNonInterActiveAuth-NS3GBIJZ.js} +61 -56
  191. package/chunks/{version-VAONYVE5.js → version-B3RSLP54.js} +2 -1
  192. package/chunks/{web-fetch-SXAXJHIO.js → web-fetch-UYGMOHW4.js} +5 -5
  193. package/chunks/{workflow-DG2BR42M.js → workflow-7APPIGND.js} +25 -25
  194. package/chunks/{workspace-providers-status-XGW5OZTD.js → workspace-providers-status-SC67GLMY.js} +30 -30
  195. package/chunks/{workspace-service-GX3GGZLU.js → workspace-service-ZJHF22WA.js} +35 -35
  196. package/chunks/{workspace-skills-status-LFK5WV2V.js → workspace-skills-status-NJEK6P6Y.js} +29 -29
  197. package/chunks/{write-file-UR7FXWOU.js → write-file-R6Z3VLRY.js} +25 -25
  198. package/chunks/{zh-FSVJTXA4.js → zh-7XVVRTDH.js} +6 -1
  199. package/chunks/{zh-TW-66MG4LWL.js → zh-TW-DPH554OG.js} +6 -1
  200. package/cli.js +19 -11
  201. package/locales/en.js +9 -2
  202. package/locales/fr.js +6 -0
  203. package/locales/ja.js +6 -0
  204. package/locales/zh-TW.js +9 -2
  205. package/locales/zh.js +9 -2
  206. package/node_modules/@qwen-code/audio-capture/package.json +1 -1
  207. package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-arm64/@qwen-code+audio-capture.node +0 -0
  208. package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-x64/@qwen-code+audio-capture.node +0 -0
  209. package/node_modules/@qwen-code/audio-capture/prebuilds/win32-x64/@qwen-code+audio-capture.node +0 -0
  210. package/package.json +3 -3
  211. package/web-shell/assets/{arc-CUpe0ibu.js → arc-C7hjaa7g.js} +1 -1
  212. package/web-shell/assets/{architectureDiagram-3BPJPVTR-JvyrY_mK.js → architectureDiagram-3BPJPVTR-pm9KtMZY.js} +1 -1
  213. package/web-shell/assets/{blockDiagram-GPEHLZMM-CK3Y_vom.js → blockDiagram-GPEHLZMM-CApElKsU.js} +1 -1
  214. package/web-shell/assets/{c4Diagram-AAUBKEIU-DprSnyrf.js → c4Diagram-AAUBKEIU-BeDe0-9N.js} +1 -1
  215. package/web-shell/assets/channel-BNf1dW-j.js +1 -0
  216. package/web-shell/assets/{chunk-2J33WTMH-DJtRJPmu.js → chunk-2J33WTMH-DJEkmLdl.js} +1 -1
  217. package/web-shell/assets/{chunk-4BX2VUAB-ON6Q2-BG.js → chunk-4BX2VUAB-DXX8gdpe.js} +1 -1
  218. package/web-shell/assets/{chunk-55IACEB6-c60ou5HZ.js → chunk-55IACEB6-DORmk1kQ.js} +1 -1
  219. package/web-shell/assets/{chunk-727SXJPM-BamtPKxx.js → chunk-727SXJPM-DWmO4mCZ.js} +1 -1
  220. package/web-shell/assets/{chunk-AQP2D5EJ-CsVgpu-T.js → chunk-AQP2D5EJ-C7LRaYw2.js} +1 -1
  221. package/web-shell/assets/{chunk-FMBD7UC4-vZrpjAx4.js → chunk-FMBD7UC4-CCdXgyC5.js} +1 -1
  222. package/web-shell/assets/{chunk-ND2GUHAM-qxyNOd5t.js → chunk-ND2GUHAM-SyL_xvWc.js} +1 -1
  223. package/web-shell/assets/{chunk-QZHKN3VN-BvTJSM_S.js → chunk-QZHKN3VN-BzOuCKxa.js} +1 -1
  224. package/web-shell/assets/classDiagram-4FO5ZUOK-uOIGlzgi.js +1 -0
  225. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-uOIGlzgi.js +1 -0
  226. package/web-shell/assets/{cose-bilkent-S5V4N54A-1tXB4pju.js → cose-bilkent-S5V4N54A-BMPWyDKc.js} +1 -1
  227. package/web-shell/assets/{dagre-BM42HDAG-DglBzme8.js → dagre-BM42HDAG-B_GnPWik.js} +1 -1
  228. package/web-shell/assets/{diagram-2AECGRRQ-DEJpqsWz.js → diagram-2AECGRRQ-fJqMc3S_.js} +1 -1
  229. package/web-shell/assets/{diagram-5GNKFQAL-CsQ1NrMG.js → diagram-5GNKFQAL-ximV3O9D.js} +1 -1
  230. package/web-shell/assets/{diagram-KO2AKTUF-Z-3codAi.js → diagram-KO2AKTUF-2vVyjzqw.js} +1 -1
  231. package/web-shell/assets/{diagram-LMA3HP47-mBuPTA2i.js → diagram-LMA3HP47-Dckcx1sT.js} +1 -1
  232. package/web-shell/assets/{diagram-OG6HWLK6-tcA3K3s9.js → diagram-OG6HWLK6-BAVv47ga.js} +1 -1
  233. package/web-shell/assets/{erDiagram-TEJ5UH35-D9bXFRyZ.js → erDiagram-TEJ5UH35-Bn3nf5J0.js} +1 -1
  234. package/web-shell/assets/{flowDiagram-I6XJVG4X-Ck0Py04s.js → flowDiagram-I6XJVG4X-BIbGF9JT.js} +1 -1
  235. package/web-shell/assets/{ganttDiagram-6RSMTGT7-rOevCekE.js → ganttDiagram-6RSMTGT7-CDbhb3AH.js} +1 -1
  236. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-CoPQaLj0.js → gitGraphDiagram-PVQCEYII-CbKG1a_w.js} +1 -1
  237. package/web-shell/assets/index-CnE2ur2L.js +779 -0
  238. package/web-shell/assets/index-hSKXrlSE.css +5 -0
  239. package/web-shell/assets/{infoDiagram-5YYISTIA-a77CUKoI.js → infoDiagram-5YYISTIA-DUFxTy8m.js} +1 -1
  240. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-DlLgUAO-.js → ishikawaDiagram-YF4QCWOH-D69hrBG8.js} +1 -1
  241. package/web-shell/assets/{journeyDiagram-JHISSGLW-BXR5kVAZ.js → journeyDiagram-JHISSGLW-DsvEw51Y.js} +1 -1
  242. package/web-shell/assets/{kanban-definition-UN3LZRKU-h5CoHZg7.js → kanban-definition-UN3LZRKU-lFFjZEYd.js} +1 -1
  243. package/web-shell/assets/{linear-BkaREbyD.js → linear-Bo5bWzvo.js} +1 -1
  244. package/web-shell/assets/{mermaid.core-Bkagz0ng.js → mermaid.core-C_HKMJx5.js} +5 -5
  245. package/web-shell/assets/{mindmap-definition-RKZ34NQL-D7EMKR_5.js → mindmap-definition-RKZ34NQL-DlV-NUTs.js} +1 -1
  246. package/web-shell/assets/{pieDiagram-4H26LBE5-DAmPOjsL.js → pieDiagram-4H26LBE5-B2e6FH2a.js} +1 -1
  247. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-e4WFQkQu.js → quadrantDiagram-W4KKPZXB-D75kSk-b.js} +1 -1
  248. package/web-shell/assets/{requirementDiagram-4Y6WPE33-v1zo7OiV.js → requirementDiagram-4Y6WPE33-CQ6xakhM.js} +1 -1
  249. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-Bstm4aW_.js → sankeyDiagram-5OEKKPKP-J_XTKrcY.js} +1 -1
  250. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-DzcZy6xN.js → sequenceDiagram-3UESZ5HK-D7jTcBtf.js} +1 -1
  251. package/web-shell/assets/{stateDiagram-AJRCARHV-BEJH6YbH.js → stateDiagram-AJRCARHV-CrlM_OT3.js} +1 -1
  252. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-Bs4TK_84.js +1 -0
  253. package/web-shell/assets/{timeline-definition-PNZ67QCA-TI1wH-Pm.js → timeline-definition-PNZ67QCA-5oZi76Ef.js} +1 -1
  254. package/web-shell/assets/{vennDiagram-CIIHVFJN-YaH8VDMS.js → vennDiagram-CIIHVFJN-DO5YptPK.js} +1 -1
  255. package/web-shell/assets/{wardley-L42UT6IY-B80co7OP.js → wardley-L42UT6IY-4t1eJDvM.js} +1 -1
  256. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-4fHNDEMl.js → wardleyDiagram-YWT4CUSO-DKZc661S.js} +1 -1
  257. package/web-shell/assets/{xychartDiagram-2RQKCTM6-DT3q4Z3J.js → xychartDiagram-2RQKCTM6-su9hp08G.js} +1 -1
  258. package/web-shell/index.html +2 -2
  259. package/chunks/chunk-L7QPM2YD.js +0 -481
  260. package/chunks/daemon-status-provider-2EWTHT7Y.js +0 -73
  261. package/chunks/nonInteractiveCli-HNZRIM5I.js +0 -111
  262. package/web-shell/assets/channel-BAxQ2-aZ.js +0 -1
  263. package/web-shell/assets/classDiagram-4FO5ZUOK-Cvd_xhZI.js +0 -1
  264. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-Cvd_xhZI.js +0 -1
  265. package/web-shell/assets/index-Cr7MYW6T.css +0 -5
  266. package/web-shell/assets/index-DCHPAUp3.js +0 -730
  267. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BopifCBI.js +0 -1
@@ -480,6 +480,7 @@ var GITHUB_SETUP_DEFAULT_TIMEOUT_MS = 9e4;
480
480
  var DEFAULT_MAX_PENDING_PROMPTS_PER_SESSION = 5;
481
481
  var MCP_RESTART_DEFAULT_TIMEOUT_MS = MCP_RESTART_SERVER_DEADLINE_MS + MCP_RESTART_CLIENT_HEADROOM_MS;
482
482
  var CLIENT_ID_HEADER = "X-Qwen-Client-Id";
483
+ var urlEncode = encodeURIComponent;
483
484
  function normalizePermissionRuleInput(rule) {
484
485
  const trimmed = rule.trim();
485
486
  if (!trimmed) {
@@ -706,6 +707,37 @@ var DaemonClient = class {
706
707
  }
707
708
  );
708
709
  }
710
+ /**
711
+ * Consolidated daemon status report (`GET /daemon/status`). The default
712
+ * `summary` detail reads cheap in-memory counters; `full` adds per-session,
713
+ * ACP-connection, auth, and workspace diagnostics sections.
714
+ */
715
+ async daemonStatus(detail = "summary") {
716
+ const query = detail === "summary" ? "" : `?detail=${detail}`;
717
+ return await this.jsonRequest(
718
+ `/daemon/status${query}`,
719
+ "GET /daemon/status"
720
+ );
721
+ }
722
+ /**
723
+ * Aggregate local token-usage dashboard (`GET /usage/dashboard`): the
724
+ * selected range's flattened totals plus a trailing per-day heatmap, read
725
+ * from the durable local usage history (global, cross-project). `range`
726
+ * scopes the summary (default `today`); `heatmapDays` sets the heatmap
727
+ * window (default ~6 months, server-clamped to 1..366).
728
+ */
729
+ async usageDashboard(opts = {}) {
730
+ const params = new URLSearchParams();
731
+ if (opts.range !== void 0) params.set("range", opts.range);
732
+ if (opts.heatmapDays !== void 0) {
733
+ params.set("heatmapDays", String(opts.heatmapDays));
734
+ }
735
+ const query = params.toString();
736
+ return await this.jsonRequest(
737
+ `/usage/dashboard${query ? `?${query}` : ""}`,
738
+ "GET /usage/dashboard"
739
+ );
740
+ }
709
741
  async workspaceMcp() {
710
742
  return await this.fetchWithTimeout(
711
743
  `${this.baseUrl}/workspace/mcp`,
@@ -718,7 +750,7 @@ var DaemonClient = class {
718
750
  }
719
751
  async workspaceMcpTools(serverName) {
720
752
  return await this.fetchWithTimeout(
721
- `${this.baseUrl}/workspace/mcp/${encodeURIComponent(serverName)}/tools`,
753
+ `${this.baseUrl}/workspace/mcp/${urlEncode(serverName)}/tools`,
722
754
  { headers: this.headers() },
723
755
  async (res) => {
724
756
  if (!res.ok) {
@@ -730,7 +762,7 @@ var DaemonClient = class {
730
762
  }
731
763
  async workspaceMcpResources(serverName) {
732
764
  return await this.fetchWithTimeout(
733
- `${this.baseUrl}/workspace/mcp/${encodeURIComponent(serverName)}/resources`,
765
+ `${this.baseUrl}/workspace/mcp/${urlEncode(serverName)}/resources`,
734
766
  { headers: this.headers() },
735
767
  async (res) => {
736
768
  if (!res.ok) {
@@ -779,7 +811,7 @@ var DaemonClient = class {
779
811
  }
780
812
  async sessionHooks(sessionId) {
781
813
  return await this.fetchWithTimeout(
782
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/hooks`,
814
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/hooks`,
783
815
  { headers: this.headers() },
784
816
  async (res) => {
785
817
  if (!res.ok)
@@ -803,7 +835,7 @@ var DaemonClient = class {
803
835
  }
804
836
  async extensionOperationStatus(operationId) {
805
837
  return await this.jsonRequest(
806
- `/workspace/extensions/operations/${encodeURIComponent(operationId)}`,
838
+ `/workspace/extensions/operations/${urlEncode(operationId)}`,
807
839
  "GET /workspace/extensions/operations/:operationId"
808
840
  );
809
841
  }
@@ -823,28 +855,28 @@ var DaemonClient = class {
823
855
  }
824
856
  async enableExtension(name, params, clientId) {
825
857
  return await this.jsonRequest(
826
- `/workspace/extensions/${encodeURIComponent(name)}/enable`,
858
+ `/workspace/extensions/${urlEncode(name)}/enable`,
827
859
  "POST /workspace/extensions/:name/enable",
828
860
  { method: "POST", body: params, clientId }
829
861
  );
830
862
  }
831
863
  async disableExtension(name, params, clientId) {
832
864
  return await this.jsonRequest(
833
- `/workspace/extensions/${encodeURIComponent(name)}/disable`,
865
+ `/workspace/extensions/${urlEncode(name)}/disable`,
834
866
  "POST /workspace/extensions/:name/disable",
835
867
  { method: "POST", body: params, clientId }
836
868
  );
837
869
  }
838
870
  async updateExtension(name, clientId) {
839
871
  return await this.jsonRequest(
840
- `/workspace/extensions/${encodeURIComponent(name)}/update`,
872
+ `/workspace/extensions/${urlEncode(name)}/update`,
841
873
  "POST /workspace/extensions/:name/update",
842
874
  { method: "POST", body: {}, clientId }
843
875
  );
844
876
  }
845
877
  async uninstallExtension(name, clientId) {
846
878
  return await this.jsonRequest(
847
- `/workspace/extensions/${encodeURIComponent(name)}`,
879
+ `/workspace/extensions/${urlEncode(name)}`,
848
880
  "DELETE /workspace/extensions/:name",
849
881
  { method: "DELETE", clientId }
850
882
  );
@@ -1024,7 +1056,7 @@ var DaemonClient = class {
1024
1056
  }
1025
1057
  async getWorkspaceMemoryRememberTask(taskId, opts) {
1026
1058
  return await this.jsonRequest(
1027
- `${WORKSPACE_MEMORY_REMEMBER_PATH}/${encodeURIComponent(taskId)}`,
1059
+ `${WORKSPACE_MEMORY_REMEMBER_PATH}/${urlEncode(taskId)}`,
1028
1060
  `GET ${WORKSPACE_MEMORY_REMEMBER_PATH}/:taskId`,
1029
1061
  { clientId: opts?.clientId }
1030
1062
  );
@@ -1042,7 +1074,7 @@ var DaemonClient = class {
1042
1074
  }
1043
1075
  async getWorkspaceMemoryForgetTask(taskId, opts) {
1044
1076
  return await this.jsonRequest(
1045
- `${WORKSPACE_MEMORY_FORGET_PATH}/${encodeURIComponent(taskId)}`,
1077
+ `${WORKSPACE_MEMORY_FORGET_PATH}/${urlEncode(taskId)}`,
1046
1078
  `GET ${WORKSPACE_MEMORY_FORGET_PATH}/:taskId`,
1047
1079
  { clientId: opts?.clientId }
1048
1080
  );
@@ -1060,7 +1092,7 @@ var DaemonClient = class {
1060
1092
  }
1061
1093
  async getWorkspaceMemoryDreamTask(taskId, opts) {
1062
1094
  return await this.jsonRequest(
1063
- `${WORKSPACE_MEMORY_DREAM_PATH}/${encodeURIComponent(taskId)}`,
1095
+ `${WORKSPACE_MEMORY_DREAM_PATH}/${urlEncode(taskId)}`,
1064
1096
  `GET ${WORKSPACE_MEMORY_DREAM_PATH}/:taskId`,
1065
1097
  { clientId: opts?.clientId }
1066
1098
  );
@@ -1118,7 +1150,7 @@ var DaemonClient = class {
1118
1150
  }
1119
1151
  async getWorkspaceAgent(agentType) {
1120
1152
  return await this.fetchWithTimeout(
1121
- `${this.baseUrl}/workspace/agents/${encodeURIComponent(agentType)}`,
1153
+ `${this.baseUrl}/workspace/agents/${urlEncode(agentType)}`,
1122
1154
  { headers: this.headers() },
1123
1155
  async (res) => {
1124
1156
  if (!res.ok) {
@@ -1140,7 +1172,7 @@ var DaemonClient = class {
1140
1172
  * default precedence (project > user) and updates the project entry.
1141
1173
  */
1142
1174
  async updateWorkspaceAgent(agentType, req, opts = {}, clientId) {
1143
- const url = opts.scope ? `${this.baseUrl}/workspace/agents/${encodeURIComponent(agentType)}?scope=${encodeURIComponent(opts.scope)}` : `${this.baseUrl}/workspace/agents/${encodeURIComponent(agentType)}`;
1175
+ const url = opts.scope ? `${this.baseUrl}/workspace/agents/${urlEncode(agentType)}?scope=${urlEncode(opts.scope)}` : `${this.baseUrl}/workspace/agents/${urlEncode(agentType)}`;
1144
1176
  return await this.fetchWithTimeout(
1145
1177
  url,
1146
1178
  {
@@ -1166,7 +1198,7 @@ var DaemonClient = class {
1166
1198
  * and 404 (already gone) resolve successfully.
1167
1199
  */
1168
1200
  async deleteWorkspaceAgent(agentType, opts = {}, clientId) {
1169
- const url = opts.scope ? `${this.baseUrl}/workspace/agents/${encodeURIComponent(agentType)}?scope=${encodeURIComponent(opts.scope)}` : `${this.baseUrl}/workspace/agents/${encodeURIComponent(agentType)}`;
1201
+ const url = opts.scope ? `${this.baseUrl}/workspace/agents/${urlEncode(agentType)}?scope=${urlEncode(opts.scope)}` : `${this.baseUrl}/workspace/agents/${urlEncode(agentType)}`;
1170
1202
  return await this.fetchWithTimeout(
1171
1203
  url,
1172
1204
  {
@@ -1261,6 +1293,10 @@ var DaemonClient = class {
1261
1293
  * UIs. Returns an empty list (not 404) when the workspace has no sessions.
1262
1294
  */
1263
1295
  async listWorkspaceSessions(workspaceCwd, options) {
1296
+ const page = await this.listWorkspaceSessionsPage(workspaceCwd, options);
1297
+ return page.sessions;
1298
+ }
1299
+ async listWorkspaceSessionsPage(workspaceCwd, options) {
1264
1300
  const requestedPageSize = options?.pageSize ?? DEFAULT_SESSION_LIST_PAGE_SIZE;
1265
1301
  const pageSize = Math.max(
1266
1302
  1,
@@ -1272,24 +1308,94 @@ var DaemonClient = class {
1272
1308
  )
1273
1309
  );
1274
1310
  const query = new URLSearchParams({ size: String(pageSize) });
1311
+ if (options?.cursor !== void 0) {
1312
+ query.set("cursor", options.cursor);
1313
+ }
1275
1314
  if (options?.archiveState !== void 0) {
1276
1315
  query.set("archiveState", options.archiveState);
1277
1316
  }
1278
- const body = await this.jsonRequest(
1279
- `/workspace/${encodeURIComponent(workspaceCwd)}/sessions?${query.toString()}`,
1317
+ if (options?.view !== void 0) {
1318
+ query.set("view", options.view);
1319
+ }
1320
+ if (options?.group !== void 0) {
1321
+ query.set("group", options.group);
1322
+ }
1323
+ return await this.jsonRequest(
1324
+ `/workspace/${urlEncode(workspaceCwd)}/sessions?${query.toString()}`,
1280
1325
  "GET /workspace/sessions"
1281
1326
  );
1282
- return body.sessions;
1327
+ }
1328
+ async listSessionGroups(workspaceCwd) {
1329
+ return await this.jsonRequest(
1330
+ `/workspace/${urlEncode(workspaceCwd)}/session-groups`,
1331
+ "GET /workspace/session-groups"
1332
+ );
1333
+ }
1334
+ async createSessionGroup(workspaceCwd, input) {
1335
+ const body = await this.jsonRequest(
1336
+ `/workspace/${urlEncode(workspaceCwd)}/session-groups`,
1337
+ "POST /workspace/session-groups",
1338
+ { method: "POST", body: input }
1339
+ );
1340
+ return body.group;
1341
+ }
1342
+ async updateSessionGroup(workspaceCwd, groupId, update) {
1343
+ const body = await this.jsonRequest(
1344
+ `/workspace/${urlEncode(workspaceCwd)}/session-groups/${urlEncode(groupId)}`,
1345
+ "PATCH /workspace/session-groups/:groupId",
1346
+ { method: "PATCH", body: update }
1347
+ );
1348
+ return body.group;
1349
+ }
1350
+ async deleteSessionGroup(workspaceCwd, groupId) {
1351
+ return await this.jsonRequest(
1352
+ `/workspace/${urlEncode(workspaceCwd)}/session-groups/${urlEncode(groupId)}`,
1353
+ "DELETE /workspace/session-groups/:groupId",
1354
+ { method: "DELETE" }
1355
+ );
1356
+ }
1357
+ async updateSessionOrganization(sessionId, update, clientId) {
1358
+ return await this.jsonRequest(
1359
+ `/session/${urlEncode(sessionId)}/organization`,
1360
+ "PATCH /session/:id/organization",
1361
+ { method: "PATCH", body: update, clientId }
1362
+ );
1283
1363
  }
1284
1364
  async loadSession(sessionId, req = {}, clientId) {
1285
1365
  return this.restoreSession("load", sessionId, req, clientId);
1286
1366
  }
1367
+ async exportSession(sessionId, opts = {}) {
1368
+ const format = opts.format ?? "html";
1369
+ const query = opts.format ? `?format=${urlEncode(opts.format)}` : "";
1370
+ return await this.fetchWithTimeout(
1371
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/export${query}`,
1372
+ { headers: this.headers({}, opts.clientId) },
1373
+ async (res) => {
1374
+ if (!res.ok) {
1375
+ throw await this.failOnError(res, "GET /session/:id/export");
1376
+ }
1377
+ const content = await res.text();
1378
+ const mimeType = res.headers.get("content-type") ?? "";
1379
+ const filename = /filename="([^"]+)"/i.exec(
1380
+ res.headers.get("content-disposition") ?? ""
1381
+ )?.[1] ?? `export.${format}`;
1382
+ return {
1383
+ content,
1384
+ filename,
1385
+ mimeType,
1386
+ format
1387
+ };
1388
+ },
1389
+ void 0,
1390
+ "rest"
1391
+ );
1392
+ }
1287
1393
  async resumeSession(sessionId, req = {}, clientId) {
1288
1394
  return this.restoreSession("resume", sessionId, req, clientId);
1289
1395
  }
1290
1396
  async branchSession(sessionId, req = {}, clientId) {
1291
1397
  return await this.fetchWithTimeout(
1292
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/branch`,
1398
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/branch`,
1293
1399
  {
1294
1400
  method: "POST",
1295
1401
  headers: this.headers({ "Content-Type": "application/json" }, clientId),
@@ -1305,7 +1411,7 @@ var DaemonClient = class {
1305
1411
  }
1306
1412
  async forkSession(sessionId, req, clientId) {
1307
1413
  return await this.fetchWithTimeout(
1308
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/fork`,
1414
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/fork`,
1309
1415
  {
1310
1416
  method: "POST",
1311
1417
  headers: this.headers({ "Content-Type": "application/json" }, clientId),
@@ -1321,7 +1427,7 @@ var DaemonClient = class {
1321
1427
  }
1322
1428
  async sessionContext(sessionId, clientId) {
1323
1429
  return await this.fetchWithTimeout(
1324
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/context`,
1430
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/context`,
1325
1431
  { headers: this.headers({}, clientId) },
1326
1432
  async (res) => {
1327
1433
  if (!res.ok) {
@@ -1336,7 +1442,7 @@ var DaemonClient = class {
1336
1442
  if (opts.detail === true) params.set("detail", "true");
1337
1443
  const query = params.toString();
1338
1444
  return await this.fetchWithTimeout(
1339
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/context-usage${query ? `?${query}` : ""}`,
1445
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/context-usage${query ? `?${query}` : ""}`,
1340
1446
  { headers: this.headers({}, clientId) },
1341
1447
  async (res) => {
1342
1448
  if (!res.ok) {
@@ -1348,7 +1454,7 @@ var DaemonClient = class {
1348
1454
  }
1349
1455
  async sessionSupportedCommands(sessionId, clientId) {
1350
1456
  return await this.fetchWithTimeout(
1351
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/supported-commands`,
1457
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/supported-commands`,
1352
1458
  { headers: this.headers({}, clientId) },
1353
1459
  async (res) => {
1354
1460
  if (!res.ok) {
@@ -1363,7 +1469,7 @@ var DaemonClient = class {
1363
1469
  }
1364
1470
  async sessionTasks(sessionId, clientId) {
1365
1471
  return await this.fetchWithTimeout(
1366
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/tasks`,
1472
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/tasks`,
1367
1473
  { headers: this.headers({}, clientId) },
1368
1474
  async (res) => {
1369
1475
  if (!res.ok) {
@@ -1375,7 +1481,7 @@ var DaemonClient = class {
1375
1481
  }
1376
1482
  async sessionLspStatus(sessionId, clientId) {
1377
1483
  return await this.fetchWithTimeout(
1378
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/lsp`,
1484
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/lsp`,
1379
1485
  { headers: this.headers({}, clientId) },
1380
1486
  async (res) => {
1381
1487
  if (!res.ok) {
@@ -1387,7 +1493,7 @@ var DaemonClient = class {
1387
1493
  }
1388
1494
  async sessionTaskCancel(sessionId, taskId, kind, clientId) {
1389
1495
  return await this.fetchWithTimeout(
1390
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/tasks/${encodeURIComponent(taskId)}/cancel`,
1496
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/tasks/${urlEncode(taskId)}/cancel`,
1391
1497
  {
1392
1498
  method: "POST",
1393
1499
  headers: this.headers({ "Content-Type": "application/json" }, clientId),
@@ -1406,7 +1512,7 @@ var DaemonClient = class {
1406
1512
  }
1407
1513
  async sessionGoalClear(sessionId, clientId) {
1408
1514
  return await this.fetchWithTimeout(
1409
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/goal/clear`,
1515
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/goal/clear`,
1410
1516
  {
1411
1517
  method: "POST",
1412
1518
  headers: this.headers({ "Content-Type": "application/json" }, clientId),
@@ -1422,7 +1528,7 @@ var DaemonClient = class {
1422
1528
  }
1423
1529
  async sessionStats(sessionId, clientId) {
1424
1530
  return await this.fetchWithTimeout(
1425
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/stats`,
1531
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/stats`,
1426
1532
  { headers: this.headers({}, clientId) },
1427
1533
  async (res) => {
1428
1534
  if (!res.ok) {
@@ -1441,7 +1547,7 @@ var DaemonClient = class {
1441
1547
  */
1442
1548
  async restoreSession(action, sessionId, req, clientId) {
1443
1549
  return await this.fetchWithTimeout(
1444
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/${action}`,
1550
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/${action}`,
1445
1551
  {
1446
1552
  method: "POST",
1447
1553
  headers: this.headers({ "Content-Type": "application/json" }, clientId),
@@ -1472,7 +1578,7 @@ var DaemonClient = class {
1472
1578
  */
1473
1579
  async setSessionApprovalMode(sessionId, mode, opts) {
1474
1580
  return await this.fetchWithTimeout(
1475
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/approval-mode`,
1581
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/approval-mode`,
1476
1582
  {
1477
1583
  method: "POST",
1478
1584
  headers: this.headers(
@@ -1494,7 +1600,7 @@ var DaemonClient = class {
1494
1600
  }
1495
1601
  async getRewindSnapshots(sessionId) {
1496
1602
  return await this.fetchWithTimeout(
1497
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/rewind/snapshots`,
1603
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/rewind/snapshots`,
1498
1604
  { method: "GET", headers: this.headers() },
1499
1605
  async (res) => {
1500
1606
  if (!res.ok) {
@@ -1509,7 +1615,7 @@ var DaemonClient = class {
1509
1615
  }
1510
1616
  async rewindSession(sessionId, promptId, opts) {
1511
1617
  return await this.fetchWithTimeout(
1512
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/rewind`,
1618
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/rewind`,
1513
1619
  {
1514
1620
  method: "POST",
1515
1621
  headers: this.headers(
@@ -1557,7 +1663,7 @@ var DaemonClient = class {
1557
1663
  */
1558
1664
  async recapSession(sessionId, opts) {
1559
1665
  const res = await this.transport.fetch(
1560
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/recap`,
1666
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/recap`,
1561
1667
  {
1562
1668
  method: "POST",
1563
1669
  headers: this.headers(
@@ -1573,7 +1679,7 @@ var DaemonClient = class {
1573
1679
  }
1574
1680
  async btwSession(sessionId, question, opts) {
1575
1681
  const res = await this.transport.fetch(
1576
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/btw`,
1682
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/btw`,
1577
1683
  {
1578
1684
  method: "POST",
1579
1685
  headers: this.headers(
@@ -1595,7 +1701,7 @@ var DaemonClient = class {
1595
1701
  */
1596
1702
  async enqueueMidTurnMessage(sessionId, message, opts) {
1597
1703
  return await this.fetchWithTimeout(
1598
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/mid-turn-message`,
1704
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/mid-turn-message`,
1599
1705
  {
1600
1706
  method: "POST",
1601
1707
  headers: this.headers(
@@ -1624,7 +1730,7 @@ var DaemonClient = class {
1624
1730
  */
1625
1731
  async getPendingPrompts(sessionId, opts) {
1626
1732
  return await this.fetchWithTimeout(
1627
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/pending-prompts`,
1733
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/pending-prompts`,
1628
1734
  {
1629
1735
  method: "GET",
1630
1736
  headers: this.headers({}, opts?.clientId)
@@ -1645,7 +1751,7 @@ var DaemonClient = class {
1645
1751
  */
1646
1752
  async removePendingPrompt(sessionId, promptId, opts) {
1647
1753
  return await this.fetchWithTimeout(
1648
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/pending-prompts/${encodeURIComponent(promptId)}`,
1754
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/pending-prompts/${urlEncode(promptId)}`,
1649
1755
  {
1650
1756
  method: "DELETE",
1651
1757
  headers: this.headers({}, opts?.clientId)
@@ -1670,7 +1776,7 @@ var DaemonClient = class {
1670
1776
  */
1671
1777
  async shellCommand(sessionId, command, opts) {
1672
1778
  const res = await this.transport.fetch(
1673
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/shell`,
1779
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/shell`,
1674
1780
  {
1675
1781
  method: "POST",
1676
1782
  headers: this.headers(
@@ -1701,7 +1807,7 @@ var DaemonClient = class {
1701
1807
  */
1702
1808
  async setWorkspaceToolEnabled(toolName, enabled, opts) {
1703
1809
  return await this.fetchWithTimeout(
1704
- `${this.baseUrl}/workspace/tools/${encodeURIComponent(toolName)}/enable`,
1810
+ `${this.baseUrl}/workspace/tools/${urlEncode(toolName)}/enable`,
1705
1811
  {
1706
1812
  method: "POST",
1707
1813
  headers: this.headers(
@@ -1898,9 +2004,9 @@ var DaemonClient = class {
1898
2004
  * Pre-flight `caps.features.workspace_mcp_restart` before calling.
1899
2005
  */
1900
2006
  async restartMcpServer(serverName, opts) {
1901
- const query = opts?.entryIndex === void 0 ? "" : `?entryIndex=${encodeURIComponent(String(opts.entryIndex))}`;
2007
+ const query = opts?.entryIndex === void 0 ? "" : `?entryIndex=${urlEncode(String(opts.entryIndex))}`;
1902
2008
  return await this.fetchWithTimeout(
1903
- `${this.baseUrl}/workspace/mcp/${encodeURIComponent(serverName)}/restart${query}`,
2009
+ `${this.baseUrl}/workspace/mcp/${urlEncode(serverName)}/restart${query}`,
1904
2010
  {
1905
2011
  method: "POST",
1906
2012
  headers: this.headers(
@@ -1943,7 +2049,7 @@ var DaemonClient = class {
1943
2049
  }
1944
2050
  async manageMcpServer(serverName, action, opts) {
1945
2051
  return await this.fetchWithTimeout(
1946
- `${this.baseUrl}/workspace/mcp/${encodeURIComponent(serverName)}/${encodeURIComponent(action)}`,
2052
+ `${this.baseUrl}/workspace/mcp/${urlEncode(serverName)}/${urlEncode(action)}`,
1947
2053
  {
1948
2054
  method: "POST",
1949
2055
  headers: this.headers(
@@ -2002,7 +2108,7 @@ var DaemonClient = class {
2002
2108
  */
2003
2109
  async removeRuntimeMcpServer(name, opts) {
2004
2110
  return await this.fetchWithTimeout(
2005
- `${this.baseUrl}/workspace/mcp/servers/${encodeURIComponent(name)}`,
2111
+ `${this.baseUrl}/workspace/mcp/servers/${urlEncode(name)}`,
2006
2112
  {
2007
2113
  method: "DELETE",
2008
2114
  headers: this.headers({}, opts?.clientId)
@@ -2070,7 +2176,7 @@ var DaemonClient = class {
2070
2176
  */
2071
2177
  async setSessionModel(sessionId, modelId, clientId) {
2072
2178
  return await this.fetchWithTimeout(
2073
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/model`,
2179
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/model`,
2074
2180
  {
2075
2181
  method: "POST",
2076
2182
  headers: this.headers({ "Content-Type": "application/json" }, clientId),
@@ -2086,7 +2192,7 @@ var DaemonClient = class {
2086
2192
  }
2087
2193
  async setSessionLanguage(sessionId, language, opts) {
2088
2194
  return await this.fetchWithTimeout(
2089
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/language`,
2195
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/language`,
2090
2196
  {
2091
2197
  method: "POST",
2092
2198
  headers: this.headers(
@@ -2123,7 +2229,7 @@ var DaemonClient = class {
2123
2229
  let releaseOnExit = true;
2124
2230
  try {
2125
2231
  const res = await this.transport.fetch(
2126
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/prompt`,
2232
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/prompt`,
2127
2233
  {
2128
2234
  method: "POST",
2129
2235
  headers: this.headers(
@@ -2181,7 +2287,7 @@ var DaemonClient = class {
2181
2287
  */
2182
2288
  async promptNonBlocking(sessionId, req, signal, clientId) {
2183
2289
  const res = await this.transport.fetch(
2184
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/prompt`,
2290
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/prompt`,
2185
2291
  {
2186
2292
  method: "POST",
2187
2293
  headers: this.headers({ "Content-Type": "application/json" }, clientId),
@@ -2231,7 +2337,7 @@ var DaemonClient = class {
2231
2337
  */
2232
2338
  async heartbeat(sessionId, clientId) {
2233
2339
  return await this.fetchWithTimeout(
2234
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/heartbeat`,
2340
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/heartbeat`,
2235
2341
  {
2236
2342
  method: "POST",
2237
2343
  headers: this.headers({ "Content-Type": "application/json" }, clientId),
@@ -2247,7 +2353,7 @@ var DaemonClient = class {
2247
2353
  }
2248
2354
  async cancel(sessionId, clientId) {
2249
2355
  await this.fetchWithTimeout(
2250
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/cancel`,
2356
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/cancel`,
2251
2357
  {
2252
2358
  method: "POST",
2253
2359
  headers: this.headers({ "Content-Type": "application/json" }, clientId),
@@ -2281,7 +2387,7 @@ var DaemonClient = class {
2281
2387
  */
2282
2388
  async respondToPermission(requestId, response, clientId) {
2283
2389
  return await this.fetchWithTimeout(
2284
- `${this.baseUrl}/permission/${encodeURIComponent(requestId)}`,
2390
+ `${this.baseUrl}/permission/${urlEncode(requestId)}`,
2285
2391
  {
2286
2392
  method: "POST",
2287
2393
  headers: this.headers({ "Content-Type": "application/json" }, clientId),
@@ -2314,7 +2420,7 @@ var DaemonClient = class {
2314
2420
  */
2315
2421
  async respondToSessionPermission(sessionId, requestId, response, clientId) {
2316
2422
  return await this.fetchWithTimeout(
2317
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/permission/${encodeURIComponent(requestId)}`,
2423
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/permission/${urlEncode(requestId)}`,
2318
2424
  {
2319
2425
  method: "POST",
2320
2426
  headers: this.headers({ "Content-Type": "application/json" }, clientId),
@@ -2349,7 +2455,7 @@ var DaemonClient = class {
2349
2455
  */
2350
2456
  async closeSession(sessionId, clientId) {
2351
2457
  return await this.fetchWithTimeout(
2352
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}`,
2458
+ `${this.baseUrl}/session/${urlEncode(sessionId)}`,
2353
2459
  {
2354
2460
  method: "DELETE",
2355
2461
  headers: this.headers({}, clientId)
@@ -2369,7 +2475,7 @@ var DaemonClient = class {
2369
2475
  async detachSession(sessionId, clientId) {
2370
2476
  if (!clientId) return;
2371
2477
  return await this.fetchWithTimeout(
2372
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/detach`,
2478
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/detach`,
2373
2479
  {
2374
2480
  method: "POST",
2375
2481
  headers: this.headers({}, clientId)
@@ -2466,7 +2572,7 @@ var DaemonClient = class {
2466
2572
  }
2467
2573
  async getDeviceFlow(deviceFlowId, opts = {}) {
2468
2574
  return await this.fetchWithTimeout(
2469
- `${this.baseUrl}/workspace/auth/device-flow/${encodeURIComponent(deviceFlowId)}`,
2575
+ `${this.baseUrl}/workspace/auth/device-flow/${urlEncode(deviceFlowId)}`,
2470
2576
  { headers: this.headers({}, opts.clientId), signal: opts.signal },
2471
2577
  async (res) => {
2472
2578
  if (!res.ok) {
@@ -2486,7 +2592,7 @@ var DaemonClient = class {
2486
2592
  */
2487
2593
  async cancelDeviceFlow(deviceFlowId, opts = {}) {
2488
2594
  return await this.fetchWithTimeout(
2489
- `${this.baseUrl}/workspace/auth/device-flow/${encodeURIComponent(deviceFlowId)}`,
2595
+ `${this.baseUrl}/workspace/auth/device-flow/${urlEncode(deviceFlowId)}`,
2490
2596
  {
2491
2597
  method: "DELETE",
2492
2598
  headers: this.headers({}, opts.clientId)
@@ -2559,14 +2665,14 @@ var DaemonClient = class {
2559
2665
  // -- Session artifacts ---------------------------------------------------
2560
2666
  async listSessionArtifacts(sessionId, clientId) {
2561
2667
  return await this.jsonRequest(
2562
- `/session/${encodeURIComponent(sessionId)}/artifacts`,
2668
+ `/session/${urlEncode(sessionId)}/artifacts`,
2563
2669
  "GET /session/:id/artifacts",
2564
2670
  { clientId }
2565
2671
  );
2566
2672
  }
2567
2673
  async addSessionArtifact(sessionId, artifact, clientId) {
2568
2674
  return await this.jsonRequest(
2569
- `/session/${encodeURIComponent(sessionId)}/artifacts`,
2675
+ `/session/${urlEncode(sessionId)}/artifacts`,
2570
2676
  "POST /session/:id/artifacts",
2571
2677
  {
2572
2678
  method: "POST",
@@ -2577,7 +2683,7 @@ var DaemonClient = class {
2577
2683
  }
2578
2684
  async removeSessionArtifact(sessionId, artifactId, clientId) {
2579
2685
  return await this.jsonRequest(
2580
- `/session/${encodeURIComponent(sessionId)}/artifacts/${encodeURIComponent(artifactId)}`,
2686
+ `/session/${urlEncode(sessionId)}/artifacts/${urlEncode(artifactId)}`,
2581
2687
  "DELETE /session/:id/artifacts/:artifactId",
2582
2688
  {
2583
2689
  method: "DELETE",
@@ -2592,7 +2698,7 @@ var DaemonClient = class {
2592
2698
  */
2593
2699
  async updateSessionMetadata(sessionId, metadata, clientId) {
2594
2700
  return await this.fetchWithTimeout(
2595
- `${this.baseUrl}/session/${encodeURIComponent(sessionId)}/metadata`,
2701
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/metadata`,
2596
2702
  {
2597
2703
  method: "PATCH",
2598
2704
  headers: this.headers({ "Content-Type": "application/json" }, clientId),
@@ -4023,7 +4129,7 @@ function isPendingPromptCompletedData(value) {
4023
4129
  }
4024
4130
  __name(isPendingPromptCompletedData, "isPendingPromptCompletedData");
4025
4131
  function isClientEvictedData(value) {
4026
- return isRecord(value) && isNonEmptyString(value["reason"]) && isOptionalNumber(value["droppedAfter"]);
4132
+ return isRecord(value) && isNonEmptyString(value["reason"]) && isOptionalNumber(value["droppedAfter"]) && isOptionalNumber(value["queueSize"]) && isOptionalNumber(value["maxQueued"]) && isOptionalNumber(value["queuedBytes"]) && isOptionalNumber(value["maxQueuedBytes"]) && isOptionalNumber(value["eventBytes"]);
4027
4133
  }
4028
4134
  __name(isClientEvictedData, "isClientEvictedData");
4029
4135
  function isStateResyncRequiredData(value) {
@@ -4031,7 +4137,9 @@ function isStateResyncRequiredData(value) {
4031
4137
  }
4032
4138
  __name(isStateResyncRequiredData, "isStateResyncRequiredData");
4033
4139
  function isSlowClientWarningData(value) {
4034
- return isRecord(value) && isFiniteNumber(value["queueSize"]) && isFiniteNumber(value["maxQueued"]) && isFiniteNumber(value["lastEventId"]);
4140
+ if (!isRecord(value)) return false;
4141
+ const threshold = value["threshold"];
4142
+ return isFiniteNumber(value["queueSize"]) && isFiniteNumber(value["maxQueued"]) && isFiniteNumber(value["lastEventId"]) && isOptionalNumber(value["queuedBytes"]) && isOptionalNumber(value["maxQueuedBytes"]) && (threshold === void 0 || threshold === "frames" || threshold === "bytes" || threshold === "frames_and_bytes");
4035
4143
  }
4036
4144
  __name(isSlowClientWarningData, "isSlowClientWarningData");
4037
4145
  function isStreamErrorData(value) {
@@ -4349,7 +4457,9 @@ var DAEMON_ERROR_KINDS = [
4349
4457
  "prompt_deadline_exceeded",
4350
4458
  // An SSE writer's last successful flush was older than the daemon's
4351
4459
  // writer-idle deadline.
4352
- "writer_idle_timeout"
4460
+ "writer_idle_timeout",
4461
+ // The model response stream ended before a complete turn could be read.
4462
+ "model_stream_interrupted"
4353
4463
  ];
4354
4464
  var DAEMON_CONTENT_HASH_RE = /^sha256:[0-9a-f]{64}$/;
4355
4465
  function isDaemonContentHash(value) {
@@ -4653,6 +4763,7 @@ function normalizeDaemonEvent(event, opts = {}) {
4653
4763
  }
4654
4764
  case "turn_error": {
4655
4765
  const code = getString2(event.data, "code");
4766
+ const errorKind = asDaemonErrorKind(getString2(event.data, "errorKind"));
4656
4767
  const promptId = getString2(event.data, "promptId");
4657
4768
  return [
4658
4769
  {
@@ -4661,6 +4772,7 @@ function normalizeDaemonEvent(event, opts = {}) {
4661
4772
  source: "turn_error",
4662
4773
  recoverable: true,
4663
4774
  ...code ? { code } : {},
4775
+ ...errorKind ? { errorKind } : {},
4664
4776
  ...promptId ? { promptId } : {},
4665
4777
  text: getString2(event.data, "message") ?? "Prompt failed (no details available)"
4666
4778
  }
@@ -4731,6 +4843,8 @@ function normalizeDaemonEvent(event, opts = {}) {
4731
4843
  return normalizeToolToggled(event, base);
4732
4844
  case "settings_changed":
4733
4845
  return normalizeSettingsChanged(event, base);
4846
+ case "settings_reloaded":
4847
+ return normalizeSettingsReloaded(event, base);
4734
4848
  case "trust_change_requested":
4735
4849
  return normalizeTrustChangeRequested(event, base);
4736
4850
  case "workspace_initialized":
@@ -4923,6 +5037,7 @@ function normalizeSessionUpdate(event, base, opts) {
4923
5037
  if (opts.suppressOwnUserEcho && opts.clientId && event.originatorClientId === opts.clientId) {
4924
5038
  return [];
4925
5039
  }
5040
+ const meta = extractUpdateMeta(update);
4926
5041
  const content = update["content"];
4927
5042
  const part = extractContentPart(content);
4928
5043
  if (part) {
@@ -4943,12 +5058,26 @@ function normalizeSessionUpdate(event, base, opts) {
4943
5058
  return [];
4944
5059
  }
4945
5060
  if (part.kind === "text") {
4946
- return part.text ? [{ ...base, type: "user.text.delta", text: part.text }] : [];
5061
+ return part.text ? [
5062
+ {
5063
+ ...base,
5064
+ type: "user.text.delta",
5065
+ text: part.text,
5066
+ ...meta ? { meta } : {}
5067
+ }
5068
+ ] : [];
4947
5069
  }
4948
5070
  return [];
4949
5071
  }
4950
5072
  const text = getTextContent(content);
4951
- return text ? [{ ...base, type: "user.text.delta", text }] : [];
5073
+ return text ? [
5074
+ {
5075
+ ...base,
5076
+ type: "user.text.delta",
5077
+ text,
5078
+ ...meta ? { meta } : {}
5079
+ }
5080
+ ] : [];
4952
5081
  }
4953
5082
  case "agent_message_chunk": {
4954
5083
  const text = getTextContent(update["content"]);
@@ -5423,6 +5552,21 @@ function normalizeSettingsChanged(event, base) {
5423
5552
  ];
5424
5553
  }
5425
5554
  __name(normalizeSettingsChanged, "normalizeSettingsChanged");
5555
+ function normalizeSettingsReloaded(event, base) {
5556
+ if (!isRecord2(event.data)) {
5557
+ return fallbackDebug(event, base, "malformed settings_reloaded payload");
5558
+ }
5559
+ return [
5560
+ {
5561
+ ...base,
5562
+ type: "workspace.settings.changed",
5563
+ key: "settings_reloaded",
5564
+ scope: "workspace",
5565
+ value: event.data
5566
+ }
5567
+ ];
5568
+ }
5569
+ __name(normalizeSettingsReloaded, "normalizeSettingsReloaded");
5426
5570
  function normalizeWorkspaceInitialized(event, base) {
5427
5571
  const path = getString2(event.data, "path");
5428
5572
  const action = getString2(event.data, "action");
@@ -6772,6 +6916,7 @@ function appendStatusBlock(state, kind, text, event, opts = {}) {
6772
6916
  ...event?.serverTimestamp !== void 0 ? { serverTimestamp: event.serverTimestamp } : {},
6773
6917
  ...event?.type === "error" && event.code ? { code: event.code } : {},
6774
6918
  ...event?.type === "error" && event.promptId ? { promptId: event.promptId } : {},
6919
+ ...event?.type === "error" && event.errorKind ? { errorKind: event.errorKind } : {},
6775
6920
  ...event?.type === "error" && event.source ? { source: event.source } : {},
6776
6921
  ...(event?.type === "status" || event?.type === "debug") && event.source ? { source: event.source } : {},
6777
6922
  ...(event?.type === "status" || event?.type === "debug") && event.data !== void 0 ? { data: event.data } : {},