@qwen-code/qwen-code 0.21.10 → 0.21.11-nightly.20260815.c396fe3d12

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 (386) hide show
  1. package/bundled/coordinate/SKILL.md +52 -0
  2. package/bundled/qc-helper/docs/configuration/model-providers.md +10 -8
  3. package/bundled/qc-helper/docs/configuration/settings.md +10 -0
  4. package/bundled/qc-helper/docs/extension/_meta.ts +1 -0
  5. package/bundled/qc-helper/docs/extension/agent-plugins.md +50 -0
  6. package/bundled/qc-helper/docs/extension/extension-releasing.md +3 -3
  7. package/bundled/qc-helper/docs/extension/introduction.md +17 -3
  8. package/bundled/qc-helper/docs/features/_meta.ts +1 -0
  9. package/bundled/qc-helper/docs/features/arena.md +4 -3
  10. package/bundled/qc-helper/docs/features/channels/overview.md +1 -1
  11. package/bundled/qc-helper/docs/features/channels/plugins.md +11 -11
  12. package/bundled/qc-helper/docs/features/code-review.md +1 -1
  13. package/bundled/qc-helper/docs/features/commands.md +7 -6
  14. package/bundled/qc-helper/docs/features/dual-output.md +5 -0
  15. package/bundled/qc-helper/docs/features/headless.md +8 -0
  16. package/bundled/qc-helper/docs/features/multi-agent-coordination.md +30 -0
  17. package/bundled/qc-helper/docs/qwen-serve.md +105 -40
  18. package/bundled/review/SKILL.md +72 -43
  19. package/chunks/{MaxSizedBox-FKXYULMW.js → MaxSizedBox-RRYY7LE5.js} +45 -44
  20. package/chunks/{StandaloneSessionPicker-OQS3M7AY.js → StandaloneSessionPicker-CK3O3N7F.js} +68 -67
  21. package/chunks/{acp-startup-profiler-VNTFWYAC.js → acp-startup-profiler-SVPUHLXV.js} +2 -2
  22. package/chunks/{acpAgent-AGS6HLQQ.js → acpAgent-DXUWYWDM.js} +1889 -640
  23. package/chunks/{agent-4NCVO27U.js → agent-DEPG4BP7.js} +42 -41
  24. package/chunks/agent-headless-VLBUWGPP.js +87 -0
  25. package/chunks/{anthropicContentGenerator-D3Y4RFT4.js → anthropicContentGenerator-YDT4EOKO.js} +8 -8
  26. package/chunks/{artifact-tool-N652YE4L.js → artifact-tool-4GCQQDZI.js} +2 -2
  27. package/chunks/{askUserQuestion-ONW74PKJ.js → askUserQuestion-HZJJLR3Z.js} +2 -2
  28. package/chunks/bridge-U7LETTTF.js +104 -0
  29. package/chunks/{ca-ZLKAB4K3.js → ca-4CQ6MYNQ.js} +2 -1
  30. package/chunks/{channel-management-service-PHELKOW2.js → channel-management-service-OADNGQM3.js} +6 -6
  31. package/chunks/channel-settings-store-B2GRIZ2D.js +102 -0
  32. package/chunks/{channel-worker-group-WQP4RCDO.js → channel-worker-group-IHBIHQ45.js} +9 -8
  33. package/chunks/{channel-worker-manager-MRDFAKIM.js → channel-worker-manager-GEHYJ5AE.js} +9 -8
  34. package/chunks/{channel-worker-supervisor-IVSDIMI4.js → channel-worker-supervisor-ZJIIWM4I.js} +7 -6
  35. package/chunks/{chunk-26CXSA6V.js → chunk-25VWCPYE.js} +2 -2
  36. package/chunks/{chunk-DP3IHZGG.js → chunk-2AUM35J5.js} +59 -7
  37. package/chunks/{chunk-URKIBIFC.js → chunk-2QHWLRQ2.js} +3 -3
  38. package/chunks/{chunk-4PYCZH2V.js → chunk-2ZWH53I4.js} +3 -3
  39. package/chunks/{chunk-UVX4Y6IN.js → chunk-3AEKDXKT.js} +1 -1
  40. package/chunks/{chunk-ABVRJU3D.js → chunk-3ER3FWZM.js} +9 -9
  41. package/chunks/{chunk-DZUO626D.js → chunk-3GM5DLBI.js} +3 -3
  42. package/chunks/{chunk-VSFKIRRW.js → chunk-3NBTNFNC.js} +4 -4
  43. package/chunks/{chunk-NEOXOWYH.js → chunk-3QZY3JSR.js} +7 -7
  44. package/chunks/{chunk-BKHCW2BI.js → chunk-3VUENPWF.js} +10 -0
  45. package/chunks/{chunk-67EWJE77.js → chunk-45NQKMYB.js} +1 -1
  46. package/chunks/{chunk-KKBPOU75.js → chunk-4AOVQPJU.js} +1 -1
  47. package/chunks/{chunk-OONWZLFK.js → chunk-4EB5GRRC.js} +4 -4
  48. package/chunks/{chunk-YGT2AUJ7.js → chunk-4KM2SYK5.js} +39 -19
  49. package/chunks/{chunk-Y3OVRWRY.js → chunk-4N4JVRZA.js} +1 -1
  50. package/chunks/{chunk-VNNWAZSI.js → chunk-56HVDG3M.js} +6 -6
  51. package/chunks/{chunk-TRRF5BSP.js → chunk-5C42HXEX.js} +1 -1
  52. package/chunks/{chunk-J6SZID63.js → chunk-5RUCD4ED.js} +2 -2
  53. package/chunks/{chunk-WAUGQKUU.js → chunk-63FNZTWG.js} +9 -5
  54. package/chunks/{chunk-F6WDTQ3M.js → chunk-655DWW7X.js} +5 -5
  55. package/chunks/{chunk-AAE6SR4Q.js → chunk-7P5NK5EI.js} +1 -1
  56. package/chunks/{chunk-MZSJ43WV.js → chunk-7U5G6JXI.js} +24 -2
  57. package/chunks/{chunk-GWVUR3QZ.js → chunk-7WROZ3E6.js} +3 -3
  58. package/chunks/{chunk-PBRVUF5B.js → chunk-A6NRNRKE.js} +1 -1
  59. package/chunks/{chunk-IBUGFUXC.js → chunk-A6TJ7QUA.js} +13 -13
  60. package/chunks/{chunk-DCZEPFB4.js → chunk-ADM4C4TX.js} +3 -3
  61. package/chunks/{chunk-UBX6NL47.js → chunk-AGWK35OJ.js} +47 -3
  62. package/chunks/{chunk-4MKXUHXY.js → chunk-AGWZRQJJ.js} +5 -5
  63. package/chunks/{chunk-GNPNYXJB.js → chunk-AKBFSOC5.js} +2 -2
  64. package/chunks/{chunk-YWPSGJFI.js → chunk-ARSQPRYL.js} +2 -2
  65. package/chunks/{chunk-IWTMYQ32.js → chunk-AVKPDOQZ.js} +12 -11
  66. package/chunks/{chunk-DX3RGJMS.js → chunk-AW27A43Y.js} +76 -19
  67. package/chunks/{chunk-MIKXJYZB.js → chunk-AZPFLLFR.js} +315 -299
  68. package/chunks/{chunk-2PLNY5TN.js → chunk-BBCGHZ4S.js} +4 -4
  69. package/chunks/{chunk-KID7K6H2.js → chunk-BP5VZBVK.js} +6 -6
  70. package/chunks/{chunk-LLCWZQCU.js → chunk-BRQR2FJ5.js} +3 -3
  71. package/chunks/{chunk-LHEC5V6G.js → chunk-BSR5AXZR.js} +4 -3
  72. package/chunks/{chunk-ONSZH6VM.js → chunk-CGM3E75C.js} +2 -2
  73. package/chunks/{chunk-SEZ556DZ.js → chunk-CPFFU46D.js} +1 -1
  74. package/chunks/{chunk-H6XPXXMH.js → chunk-CQ35AJ4Z.js} +252 -254
  75. package/chunks/{chunk-7MH4J33A.js → chunk-D2RNVVH6.js} +2 -2
  76. package/chunks/{chunk-M6HMMKVG.js → chunk-D7QGE3RT.js} +1 -1
  77. package/chunks/{chunk-UMD7WQTR.js → chunk-D7VALEOK.js} +13 -9
  78. package/chunks/chunk-DAV4QFD5.js +1280 -0
  79. package/chunks/{chunk-B2GJNDTV.js → chunk-DD6O3ZRD.js} +1 -1
  80. package/chunks/{chunk-HUWENAHO.js → chunk-DEDESZDL.js} +1 -1
  81. package/chunks/{chunk-3P2LV43B.js → chunk-DG4IQ6JG.js} +3 -3
  82. package/chunks/{chunk-QUI267ZP.js → chunk-DPTMKFIH.js} +492 -63
  83. package/chunks/{chunk-Q3JQ7OSU.js → chunk-EJOGLSNJ.js} +1 -1
  84. package/chunks/{chunk-NRLFZWCT.js → chunk-EQHCHTHC.js} +48 -5
  85. package/chunks/{chunk-P3BJLFSZ.js → chunk-EQR7YDXY.js} +3 -3
  86. package/chunks/{chunk-4WL6SY4F.js → chunk-EQUXHAFW.js} +1 -1
  87. package/chunks/{chunk-Q3AL4JQ3.js → chunk-F5BD3RNA.js} +2 -2
  88. package/chunks/{chunk-A7XMDZRI.js → chunk-FJYUSD2N.js} +5 -5
  89. package/chunks/{chunk-JT7XS4YW.js → chunk-FMIH5KMQ.js} +1 -1
  90. package/chunks/{chunk-ZBVS26BY.js → chunk-FPGTNKCP.js} +7 -5
  91. package/chunks/{chunk-W5UC37EE.js → chunk-FQDCO3CJ.js} +12 -1
  92. package/chunks/{chunk-EQL65XGA.js → chunk-FRHQQC2Z.js} +47 -21
  93. package/chunks/{chunk-FVKHVJZQ.js → chunk-G6MUFRNI.js} +1 -1
  94. package/chunks/{chunk-D27I6YJT.js → chunk-GB245X4Z.js} +129 -26
  95. package/chunks/{chunk-WCG5O7IP.js → chunk-GZDWTBT3.js} +2 -2
  96. package/chunks/{chunk-AOHJKPKL.js → chunk-H7TMVHKE.js} +1 -1
  97. package/chunks/{chunk-ZJ4W6SUY.js → chunk-HDRTQ5DH.js} +3 -3
  98. package/chunks/{chunk-ZZCWJWTF.js → chunk-HG3UBTJ4.js} +31 -11
  99. package/chunks/chunk-HHJLM3WQ.js +41 -0
  100. package/chunks/{chunk-6LP743KE.js → chunk-HHZU6ZZM.js} +79 -113
  101. package/chunks/{chunk-OIVKILPI.js → chunk-HOSVOUDK.js} +74 -0
  102. package/chunks/{chunk-DA4HRSBW.js → chunk-HTYND72J.js} +1 -1
  103. package/chunks/{chunk-ZRBMO3C7.js → chunk-IKFHTAQW.js} +1 -1
  104. package/chunks/{chunk-KZ22NXBY.js → chunk-IVROQYG5.js} +4 -4
  105. package/chunks/{chunk-UDXSXLER.js → chunk-IW6RQPQB.js} +14 -4
  106. package/chunks/{chunk-F24A2JBM.js → chunk-J6JVP7ZZ.js} +1180 -254
  107. package/chunks/{chunk-ECWR5LQR.js → chunk-JB6IM2TJ.js} +3 -3
  108. package/chunks/{chunk-MVUQRLOH.js → chunk-JRIVMPD2.js} +3 -3
  109. package/chunks/{chunk-Q7YDKOGY.js → chunk-JVEGA3MM.js} +1 -1
  110. package/chunks/{chunk-4TRQPFDP.js → chunk-K34GJQOZ.js} +140 -20
  111. package/chunks/{chunk-W4RQUHY3.js → chunk-K5IDV3PC.js} +184 -22
  112. package/chunks/{chunk-NDU63YLI.js → chunk-KD6FGI2Q.js} +4 -4
  113. package/chunks/{chunk-HV76SFIA.js → chunk-KEC5FHLM.js} +3 -3
  114. package/chunks/{chunk-IIJEYBNH.js → chunk-KLOMACIR.js} +197 -60
  115. package/chunks/{chunk-Z4JX4NSH.js → chunk-KSPRBJJ3.js} +50 -50
  116. package/chunks/{chunk-KONVMRK7.js → chunk-KX5TNFCJ.js} +1 -1
  117. package/chunks/{chunk-QGNOFE5E.js → chunk-KX7PC5QG.js} +1 -1
  118. package/chunks/{chunk-OJUQF2PL.js → chunk-LEKKQEQW.js} +5 -5
  119. package/chunks/{chunk-COBO5EBO.js → chunk-LSRI3ND3.js} +1 -1
  120. package/chunks/{chunk-BSI645OU.js → chunk-LUISTZXI.js} +3 -3
  121. package/chunks/{chunk-YTFDX4PR.js → chunk-M6NDLY2T.js} +1 -1
  122. package/chunks/{chunk-EBZ6BJTF.js → chunk-MNUKNVYQ.js} +1 -1
  123. package/chunks/{chunk-VFMASYQA.js → chunk-MS7GNABG.js} +3 -0
  124. package/chunks/{chunk-EI3NWELG.js → chunk-MSSNVG2G.js} +6430 -4463
  125. package/chunks/{chunk-L2AFWWJE.js → chunk-N4SVADAV.js} +351 -144
  126. package/chunks/{chunk-URK542T4.js → chunk-NF5J2WFA.js} +15 -2
  127. package/chunks/{chunk-EI3HZX6C.js → chunk-NLFLYSS4.js} +1 -1
  128. package/chunks/{chunk-NV3F44FL.js → chunk-NW2GIPG3.js} +2 -2
  129. package/chunks/{chunk-OQTXYMKW.js → chunk-NX4A23LY.js} +3 -3
  130. package/chunks/{chunk-E2FPSSKP.js → chunk-OK47XBYH.js} +97 -10
  131. package/chunks/{chunk-EKPKKXY2.js → chunk-OWGRUU7F.js} +1 -1
  132. package/chunks/{chunk-CTJLZLB5.js → chunk-OYWVIXHT.js} +1 -1
  133. package/chunks/{chunk-47PEPJO7.js → chunk-P7PSGVWP.js} +3 -3
  134. package/chunks/{chunk-6Q5ABMTU.js → chunk-PTSEETCO.js} +23 -19
  135. package/chunks/{chunk-6ZRFAKXK.js → chunk-PVXEJB66.js} +1 -1
  136. package/chunks/{chunk-EUNWC2VS.js → chunk-PZW46OTB.js} +2 -2
  137. package/chunks/{chunk-QSWDGAIC.js → chunk-QILD6R27.js} +1 -1
  138. package/chunks/{chunk-CKASRHZI.js → chunk-QLTATTPS.js} +1 -1
  139. package/chunks/{chunk-2UUMVNYT.js → chunk-QPBFRWCP.js} +3 -3
  140. package/chunks/{chunk-QJMOAMXT.js → chunk-QQSXM3FE.js} +8 -8
  141. package/chunks/{chunk-AEL7KN2O.js → chunk-RN7GFREP.js} +2 -2
  142. package/chunks/{chunk-AQAJJMRR.js → chunk-RYSBWLLV.js} +1 -1
  143. package/chunks/{chunk-MFDYOYZZ.js → chunk-SYHXR6WM.js} +26 -3
  144. package/chunks/{chunk-SR7RZ4MS.js → chunk-TB4YFWXG.js} +2 -2
  145. package/chunks/{chunk-IRZ2ZH72.js → chunk-TCMU4ZUE.js} +4 -4
  146. package/chunks/{chunk-OWMAZHIX.js → chunk-TMFWI4RC.js} +1 -1
  147. package/chunks/{chunk-TZEZYNYD.js → chunk-TQDFSQQF.js} +1 -1
  148. package/chunks/{chunk-IA7TGCN2.js → chunk-TTRH3RTQ.js} +4 -4
  149. package/chunks/{chunk-PJRW65JO.js → chunk-TXP5NGG3.js} +1 -1
  150. package/chunks/{chunk-VWKER4ZH.js → chunk-ULJGMSG5.js} +3 -3
  151. package/chunks/{chunk-2FRY5CRX.js → chunk-ULNWG62W.js} +3 -3
  152. package/chunks/{chunk-XVHYA33G.js → chunk-URYJYT5W.js} +4 -4
  153. package/chunks/{chunk-7GTMV7UE.js → chunk-US7J7LJT.js} +10786 -4462
  154. package/chunks/{chunk-HGCQ5SE7.js → chunk-UXEO7E3V.js} +21 -0
  155. package/chunks/{chunk-NV65ZUVM.js → chunk-VKT2R3NB.js} +1 -1
  156. package/chunks/{chunk-CPG6P4GG.js → chunk-VPV7WBVT.js} +1 -1
  157. package/chunks/{chunk-QG3FFJYU.js → chunk-VXSD4AGT.js} +1 -1
  158. package/chunks/{chunk-XCGIMOLN.js → chunk-WCCLLK7X.js} +14 -1
  159. package/chunks/{chunk-VJNBRRZG.js → chunk-WZMH7II3.js} +1 -1
  160. package/chunks/{chunk-5MZCSWI4.js → chunk-WZRLXVLJ.js} +1185 -1451
  161. package/chunks/{chunk-YF5MALI4.js → chunk-X5QJFMLY.js} +21 -17
  162. package/chunks/{chunk-DREZZAZM.js → chunk-XDRXOSAD.js} +13 -5
  163. package/chunks/{chunk-FOGU3LJX.js → chunk-YBHUXEC6.js} +1 -1
  164. package/chunks/{chunk-GM463R2B.js → chunk-YBVVOSOH.js} +1 -1
  165. package/chunks/{chunk-PYQADEFD.js → chunk-YIGGWOJE.js} +1 -1
  166. package/chunks/{chunk-XCWO3SMQ.js → chunk-YILJKX2T.js} +3 -3
  167. package/chunks/{chunk-Y4R47ZUH.js → chunk-YM3I6VW5.js} +7 -7
  168. package/chunks/{chunk-OCSFNUU4.js → chunk-YMALTWIZ.js} +13 -11
  169. package/chunks/{chunk-WOJZWRAZ.js → chunk-YRLW2MSX.js} +1 -1
  170. package/chunks/{chunk-UEOKWYGY.js → chunk-YYIOFWVH.js} +11 -11
  171. package/chunks/chunk-Z7B6SRPM.js +32 -0
  172. package/chunks/{chunk-S6HYI3MF.js → chunk-ZBB5EZZV.js} +2 -2
  173. package/chunks/{chunk-VKJ4KTPJ.js → chunk-ZLCT4C5A.js} +1 -1
  174. package/chunks/{chunk-O3EU6GMH.js → chunk-ZO37CAQH.js} +27 -4
  175. package/chunks/{computer-use-WQFK33Z3.js → computer-use-TMDO6TEC.js} +42 -41
  176. package/chunks/{config-utils-ULCSRMWD.js → config-utils-Z3OW3IQG.js} +6 -6
  177. package/chunks/{contextCommand-7EOZND7C.js → contextCommand-IUQ6G5ES.js} +44 -43
  178. package/chunks/{core-runtime-FGMQRM6E.js → core-runtime-HAZLPQXI.js} +42 -41
  179. package/chunks/{create-sub-session-QM2K5HLZ.js → create-sub-session-GREIOIZU.js} +42 -41
  180. package/chunks/{create-sub-session-QIDZUOPU.js → create-sub-session-XT6DLYOE.js} +2 -2
  181. package/chunks/{cron-create-VONA5JYY.js → cron-create-2JZ2TWTF.js} +4 -4
  182. package/chunks/{cron-delete-5JXSP2MI.js → cron-delete-CTPD2P26.js} +4 -4
  183. package/chunks/{cron-list-KE4F2CIR.js → cron-list-V44KHAF6.js} +4 -4
  184. package/chunks/{daemon-GWD7BT6E.js → daemon-GED37WOX.js} +216 -9
  185. package/chunks/daemon-git-worktree-guard-BSKVBYPM.js +2062 -0
  186. package/chunks/daemon-status-provider-7UK2DVVN.js +102 -0
  187. package/chunks/daemon-trust-policy-BZEALQSM.js +99 -0
  188. package/chunks/{daemon-trust-policy-monitor-6UKEABN5.js → daemon-trust-policy-monitor-P7OM342T.js} +49 -48
  189. package/chunks/{de-LIW4XVLN.js → de-UBEBKG6V.js} +2 -1
  190. package/chunks/{deferred-core-runtime-67GJXHXS.js → deferred-core-runtime-MTDXZT6B.js} +42 -41
  191. package/chunks/{display-image-NQRSIBXM.js → display-image-M2ELAVN4.js} +4 -4
  192. package/chunks/{dist-OTUO3AS2.js → dist-4ZPG4BY6.js} +13 -5
  193. package/chunks/{dist-B2CGTW6T.js → dist-BROOP2EG.js} +3 -3
  194. package/chunks/{dist-EZE3V3Q7.js → dist-IYYN3RUT.js} +3 -3
  195. package/chunks/{dist-3NTTUAHT.js → dist-JWMKPWT5.js} +5 -3
  196. package/chunks/{dist-Z3CS4OVP.js → dist-K7IQB53U.js} +11 -5
  197. package/chunks/{dist-J47AXBZC.js → dist-MAQXAQ2Y.js} +3 -3
  198. package/chunks/{dist-6BMOAE3Z.js → dist-WJ4BHIEW.js} +4 -4
  199. package/chunks/{dist-EWW3J4HQ.js → dist-YEPL4RAW.js} +3 -3
  200. package/chunks/{earlyInputCapture-IWMYR6OB.js → earlyInputCapture-BGZYFN2F.js} +43 -42
  201. package/chunks/{edit-ZFGROCAF.js → edit-ASQVJARF.js} +45 -43
  202. package/chunks/{en-SY5GTIGX.js → en-X6YV7GME.js} +2 -1
  203. package/chunks/{enter-worktree-TZZZCDM5.js → enter-worktree-WIUNMC64.js} +42 -41
  204. package/chunks/{enterPlanMode-U77BI3R6.js → enterPlanMode-TUBB2L7O.js} +42 -41
  205. package/chunks/{environment-HC37DS2I.js → environment-RWSNEY4T.js} +45 -44
  206. package/chunks/{errors-6AG54JPD.js → errors-44QVVNGT.js} +44 -43
  207. package/chunks/{exit-worktree-UYYWFPNK.js → exit-worktree-WPBRPIRR.js} +42 -41
  208. package/chunks/exitPlanMode-AP7J626M.js +85 -0
  209. package/chunks/{external-tool-guard-provider-5HTGOPGU.js → external-tool-guard-provider-TE4DRY36.js} +1 -1
  210. package/chunks/{fast-path-F5FSZ3O7.js → fast-path-XG5KXXLS.js} +6 -6
  211. package/chunks/{fast-path-settings-RPAVBD7P.js → fast-path-settings-LNOFM2YP.js} +2 -2
  212. package/chunks/{fr-RQFO7U4P.js → fr-VENTC2BS.js} +2 -1
  213. package/chunks/{gemini-NKQHYM36.js → gemini-PGXORAFF.js} +112 -103
  214. package/chunks/{geminiContentGenerator-HCWZOUX3.js → geminiContentGenerator-ZQVVD4J4.js} +6 -6
  215. package/chunks/{glob-3PDXKBAO.js → glob-Q6LWKMBU.js} +42 -41
  216. package/chunks/{goal-tools-SWNB6GP4.js → goal-tools-M4UDAZXP.js} +4 -4
  217. package/chunks/{grep-5HZKZYVD.js → grep-C67Z35I4.js} +42 -41
  218. package/chunks/handleAutoUpdate-75L74MB4.js +94 -0
  219. package/chunks/{i18n-Q27KKNDL.js → i18n-GYUC23UJ.js} +43 -42
  220. package/chunks/{image-gen-2Z2RJ6W7.js → image-gen-XE56S4MG.js} +10 -10
  221. package/chunks/initializer-V7XZVY35.js +100 -0
  222. package/chunks/{installationInfo-XXB75T7O.js → installationInfo-S5PPSD7T.js} +43 -42
  223. package/chunks/{ja-KOZKHJHZ.js → ja-QHT4EQTO.js} +2 -1
  224. package/chunks/{keychain-token-storage-TVAMTNP7.js → keychain-token-storage-NKKCUHI2.js} +2 -2
  225. package/chunks/list-JJ2FB7SP.js +103 -0
  226. package/chunks/{list-agents-Z4WABFDZ.js → list-agents-O6WSY4CT.js} +2 -2
  227. package/chunks/loadedSettingsAdapter-LNUDRGW5.js +97 -0
  228. package/chunks/{loggingContentGenerator-6NTFBM7Q.js → loggingContentGenerator-HCJ2DX2S.js} +162 -112
  229. package/chunks/{loop-wakeup-UZ5RL5Y2.js → loop-wakeup-GVQRMUKS.js} +5 -5
  230. package/chunks/{ls-TVHDGIES.js → ls-6W2D7TKU.js} +4 -4
  231. package/chunks/{lsp-CVN6OQPI.js → lsp-NJ4KFBI2.js} +2 -2
  232. package/chunks/{managed-npm-update-SPHYQUWZ.js → managed-npm-update-MDF2JDTH.js} +45 -44
  233. package/chunks/mcp-M5OML5FI.js +97 -0
  234. package/chunks/{monitor-ZBBPAA54.js → monitor-U5NM5ONC.js} +42 -41
  235. package/chunks/nonInteractiveCli-TX3QP7JT.js +163 -0
  236. package/chunks/{notebook-edit-5W3FW7Z2.js → notebook-edit-Q7SUR44R.js} +42 -41
  237. package/chunks/{openaiContentGenerator-TQANPEVZ.js → openaiContentGenerator-2H5CYLXP.js} +29 -29
  238. package/chunks/{pidfile-EQOBLH4E.js → pidfile-SHSMSAZR.js} +43 -42
  239. package/chunks/{processUtils-7XQG7EHS.js → processUtils-GZAP6EYW.js} +2 -2
  240. package/chunks/{pt-U6AOCTMF.js → pt-VL3I5RNY.js} +2 -1
  241. package/chunks/{qwenContentGenerator-BKCPHHXU.js → qwenContentGenerator-2624VVZH.js} +48 -48
  242. package/chunks/{qwenOAuth2-BJ6PQKE6.js → qwenOAuth2-AAWH3C7N.js} +9 -9
  243. package/chunks/read-file-ZWGQE2TE.js +32 -0
  244. package/chunks/{read-mcp-resource-PZ4ZF6YL.js → read-mcp-resource-GWCP23WG.js} +2 -2
  245. package/chunks/{read-package-up-TCM6I7S2.js → read-package-up-K6RKTL5D.js} +1 -1
  246. package/chunks/{record-artifact-P4HFMS7X.js → record-artifact-IYQDEYMV.js} +3 -3
  247. package/chunks/{resumeHistoryUtils-6N6XGJJW.js → resumeHistoryUtils-7N2H4QCU.js} +50 -49
  248. package/chunks/ripGrep-6JGJDWYB.js +85 -0
  249. package/chunks/{ru-CMX4UMYP.js → ru-4RCKL4PY.js} +2 -1
  250. package/chunks/{run-qwen-serve-BCKBCAMX.js → run-qwen-serve-2A6RHHI7.js} +197 -90
  251. package/chunks/{runtime-E2437YKL.js → runtime-NPYVZVRI.js} +55 -54
  252. package/chunks/{scheduler-K3D5Z655.js → scheduler-UMKTEQAM.js} +44 -43
  253. package/chunks/{sdk-exporters-http-XVTZQRCE.js → sdk-exporters-http-NHBYB5FZ.js} +11 -7
  254. package/chunks/{sdk-impl-7W7AKCS4.js → sdk-impl-SK4P5WON.js} +13 -10
  255. package/chunks/{send-message-CAMSLG2L.js → send-message-O7FO63UK.js} +6 -6
  256. package/chunks/serve-LYADPWRV.js +107 -0
  257. package/chunks/{server-UD6INW7J.js → server-WMVPH4G4.js} +1137 -382
  258. package/chunks/{session-GR4ZEVW4.js → session-LE6O62ZE.js} +122 -102
  259. package/chunks/{settings-5O24D3OJ.js → settings-2IPZYYGS.js} +48 -47
  260. package/chunks/{shell-UTLWLG5G.js → shell-VOBAZFFI.js} +42 -41
  261. package/chunks/{skill-QQAZL4VO.js → skill-6LKOWJV4.js} +19 -19
  262. package/chunks/{skill-settings-P3YHJVBZ.js → skill-settings-J5IHQA7L.js} +48 -47
  263. package/chunks/spawnChannel-TLW7N3SM.js +98 -0
  264. package/chunks/{standalone-update-QP742MGP.js → standalone-update-6OFPUBEM.js} +44 -43
  265. package/chunks/{startInteractiveUI-YCS6AEPN.js → startInteractiveUI-KVHNCR2L.js} +836 -444
  266. package/chunks/{syntheticOutput-PEBJQYJV.js → syntheticOutput-DVHJMUGV.js} +3 -3
  267. package/chunks/{task-create-5NWCQSJF.js → task-create-4NC7PDI4.js} +10 -10
  268. package/chunks/{task-list-53265TRZ.js → task-list-LBSRMOC7.js} +5 -5
  269. package/chunks/{task-stop-FPCOIRYX.js → task-stop-YFNATTIM.js} +2 -2
  270. package/chunks/{task-update-5HN577LS.js → task-update-BPLM52GD.js} +10 -10
  271. package/chunks/{team-create-WFH7OCDQ.js → team-create-INCC7G74.js} +44 -43
  272. package/chunks/{team-delete-MMQB4OSC.js → team-delete-MKYMYBFM.js} +5 -5
  273. package/chunks/{team-plan-approval-EGTT53MV.js → team-plan-approval-6DCWGZQ4.js} +42 -41
  274. package/chunks/{terminal-image-renderer-BWRESAQ7.js → terminal-image-renderer-O5EDW64G.js} +44 -43
  275. package/chunks/theme-manager-NZZO4SWE.js +89 -0
  276. package/chunks/{todoWrite-JGV6VLOX.js → todoWrite-K5K7NRE5.js} +4 -4
  277. package/chunks/{tool-search-TI5PTIBF.js → tool-search-JB2PXD5P.js} +19 -19
  278. package/chunks/total-session-admission-NWNMU6AW.js +99 -0
  279. package/chunks/{trustedFolders-4KYHA4IG.js → trustedFolders-A5ZWRRSP.js} +43 -42
  280. package/chunks/{update-relaunch-WB6LGIF2.js → update-relaunch-GG7EDBEA.js} +5 -5
  281. package/chunks/{updateCheck-LOS5GYFC.js → updateCheck-P6JJ4MBU.js} +48 -47
  282. package/chunks/{useAutoAcceptIndicator-MHAPY52L.js → useAutoAcceptIndicator-KV2AANVG.js} +53 -52
  283. package/chunks/{validateNonInterActiveAuth-QV22HNQU.js → validateNonInterActiveAuth-HXRCYXY7.js} +89 -88
  284. package/chunks/{version-DALWZHKQ.js → version-HH5V762G.js} +2 -2
  285. package/chunks/{web-fetch-JMJVMYFE.js → web-fetch-LVXPFB5O.js} +19 -19
  286. package/chunks/{web-search-DNDUIPU5.js → web-search-4E234FSM.js} +11 -11
  287. package/chunks/{workflow-JGNN64PM.js → workflow-GUE6WIMP.js} +117 -50
  288. package/chunks/workspace-providers-status-TUWLGJOF.js +100 -0
  289. package/chunks/{workspace-registration-store-LRJG7QA4.js → workspace-registration-store-22XXHPKR.js} +1 -1
  290. package/chunks/{workspace-registry-KVXIFM36.js → workspace-registry-HUFJF5W5.js} +50 -49
  291. package/chunks/{workspace-service-PO4AAKKT.js → workspace-service-NAGTBJXJ.js} +54 -53
  292. package/chunks/workspace-skills-status-LWDBXAQI.js +100 -0
  293. package/chunks/{workspace-trust-reconciler-DOZPCVHG.js → workspace-trust-reconciler-DLWV2ZO6.js} +57 -56
  294. package/chunks/write-file-QVHVOKKR.js +87 -0
  295. package/chunks/{zh-AGL2FVBI.js → zh-LMSTK4WD.js} +2 -1
  296. package/chunks/{zh-TW-KI66MHQY.js → zh-TW-SQ4HTSCW.js} +2 -1
  297. package/chunks/{zoom-image-CNC77ZMA.js → zoom-image-CJDXYWJH.js} +15 -15
  298. package/cli.js +18 -17
  299. package/locales/ca.js +1 -0
  300. package/locales/de.js +1 -0
  301. package/locales/en.js +1 -0
  302. package/locales/fr.js +1 -0
  303. package/locales/ja.js +1 -0
  304. package/locales/pt.js +1 -0
  305. package/locales/ru.js +1 -0
  306. package/locales/zh-TW.js +1 -0
  307. package/locales/zh.js +1 -0
  308. package/package.json +4 -4
  309. package/web-shell/assets/{arc-CDk0d60K.js → arc-DagtOPoO.js} +1 -1
  310. package/web-shell/assets/{architectureDiagram-3BPJPVTR-h-W3I2lP.js → architectureDiagram-3BPJPVTR-Dc3kGCBm.js} +1 -1
  311. package/web-shell/assets/{blockDiagram-GPEHLZMM-D1pvSmZg.js → blockDiagram-GPEHLZMM-BUZvQLL_.js} +1 -1
  312. package/web-shell/assets/{c4Diagram-AAUBKEIU-ByAm5ZNf.js → c4Diagram-AAUBKEIU-BbBgCu9K.js} +1 -1
  313. package/web-shell/assets/channel-aMHKHCQ2.js +1 -0
  314. package/web-shell/assets/{chunk-2J33WTMH-VrGPPOGV.js → chunk-2J33WTMH-CZ4miMNB.js} +1 -1
  315. package/web-shell/assets/{chunk-4BX2VUAB-B7hTowgG.js → chunk-4BX2VUAB-B2_qQSGx.js} +1 -1
  316. package/web-shell/assets/{chunk-55IACEB6-j1Fq8DpE.js → chunk-55IACEB6-EdmTwZW7.js} +1 -1
  317. package/web-shell/assets/{chunk-727SXJPM-UjABYpF2.js → chunk-727SXJPM-l2EpyrLV.js} +1 -1
  318. package/web-shell/assets/{chunk-AQP2D5EJ-D4uBItrs.js → chunk-AQP2D5EJ-0q9sx5lV.js} +1 -1
  319. package/web-shell/assets/{chunk-FMBD7UC4-DeFbKlb8.js → chunk-FMBD7UC4-CbGnA4Dp.js} +1 -1
  320. package/web-shell/assets/{chunk-ND2GUHAM-rQJ8TIgT.js → chunk-ND2GUHAM-D8JBELgZ.js} +1 -1
  321. package/web-shell/assets/{chunk-QZHKN3VN-DAGcRxvq.js → chunk-QZHKN3VN-DQMpGGOO.js} +1 -1
  322. package/web-shell/assets/classDiagram-4FO5ZUOK-zASpLzDx.js +1 -0
  323. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-zASpLzDx.js +1 -0
  324. package/web-shell/assets/{cose-bilkent-S5V4N54A-MaE7MJSt.js → cose-bilkent-S5V4N54A-DzM-ZRsM.js} +1 -1
  325. package/web-shell/assets/{dagre-BM42HDAG-DzijYGSb.js → dagre-BM42HDAG-uxLS-TtN.js} +1 -1
  326. package/web-shell/assets/{diagram-2AECGRRQ-WdbG7WnX.js → diagram-2AECGRRQ-DH7Gnqzr.js} +1 -1
  327. package/web-shell/assets/{diagram-5GNKFQAL-NYutsBnw.js → diagram-5GNKFQAL-B2TngKRK.js} +1 -1
  328. package/web-shell/assets/{diagram-KO2AKTUF-Dqg0eBY0.js → diagram-KO2AKTUF-DQ61-HiV.js} +1 -1
  329. package/web-shell/assets/{diagram-LMA3HP47-C7vRP2Lb.js → diagram-LMA3HP47-By6qvgAT.js} +1 -1
  330. package/web-shell/assets/{diagram-OG6HWLK6-B2sEPpPt.js → diagram-OG6HWLK6-ClVSEz-3.js} +1 -1
  331. package/web-shell/assets/{erDiagram-TEJ5UH35-a4zIbzm8.js → erDiagram-TEJ5UH35-C9gFc5Fg.js} +1 -1
  332. package/web-shell/assets/{flowDiagram-I6XJVG4X-BK9y89ya.js → flowDiagram-I6XJVG4X-BWPLLJ5-.js} +1 -1
  333. package/web-shell/assets/{ganttDiagram-6RSMTGT7-wUQTSNvV.js → ganttDiagram-6RSMTGT7-C6RMacQQ.js} +1 -1
  334. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-Dnzt4SAi.js → gitGraphDiagram-PVQCEYII-LnqiWuka.js} +1 -1
  335. package/web-shell/assets/index---fOcMdS.js +1789 -0
  336. package/web-shell/assets/{index-BA3wUcKL.js → index-B9iqcrv0.js} +1 -1
  337. package/web-shell/assets/index-BIGQygTL.css +5 -0
  338. package/web-shell/assets/{infoDiagram-5YYISTIA-DcaoToij.js → infoDiagram-5YYISTIA-Bc4iS8YB.js} +1 -1
  339. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-DzduqhP2.js → ishikawaDiagram-YF4QCWOH-9pH4Dpnd.js} +1 -1
  340. package/web-shell/assets/{journeyDiagram-JHISSGLW-BvviZR_O.js → journeyDiagram-JHISSGLW-C-YMnw2W.js} +1 -1
  341. package/web-shell/assets/{kanban-definition-UN3LZRKU-Efm2JxY3.js → kanban-definition-UN3LZRKU-D-PaAIp-.js} +1 -1
  342. package/web-shell/assets/{linear-DtY3IbOs.js → linear-DpLgI2kt.js} +1 -1
  343. package/web-shell/assets/{mermaid.core-PzpFqoMe.js → mermaid.core-nZbOHGxx.js} +5 -5
  344. package/web-shell/assets/{mindmap-definition-RKZ34NQL-BLlTkHS0.js → mindmap-definition-RKZ34NQL-Dq0xxnET.js} +1 -1
  345. package/web-shell/assets/{pieDiagram-4H26LBE5-D-mKF-jE.js → pieDiagram-4H26LBE5-ctqG2eeF.js} +1 -1
  346. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-DYCzslGm.js → quadrantDiagram-W4KKPZXB-MivToddn.js} +1 -1
  347. package/web-shell/assets/{requirementDiagram-4Y6WPE33-Dfpxlk7R.js → requirementDiagram-4Y6WPE33-DrLLnkpQ.js} +1 -1
  348. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-D5cRaaxh.js → sankeyDiagram-5OEKKPKP-sYdYhdpV.js} +1 -1
  349. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-s04DReiS.js → sequenceDiagram-3UESZ5HK-CuvhxDOs.js} +1 -1
  350. package/web-shell/assets/{stateDiagram-AJRCARHV-01UNFgnb.js → stateDiagram-AJRCARHV-BLZgbV7Q.js} +1 -1
  351. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DR_gXrIC.js +1 -0
  352. package/web-shell/assets/{timeline-definition-PNZ67QCA-DX8_wZBC.js → timeline-definition-PNZ67QCA-lNr2Uz_Q.js} +1 -1
  353. package/web-shell/assets/{vennDiagram-CIIHVFJN-BK0FlBme.js → vennDiagram-CIIHVFJN-CoaexGVO.js} +1 -1
  354. package/web-shell/assets/{wardley-L42UT6IY-DkPc9UlD.js → wardley-L42UT6IY-DG1vhGKA.js} +1 -1
  355. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-DNKkpDAo.js → wardleyDiagram-YWT4CUSO-CqNjF5xC.js} +1 -1
  356. package/web-shell/assets/{xychartDiagram-2RQKCTM6-CiPwg8QG.js → xychartDiagram-2RQKCTM6-BXg1gx3C.js} +1 -1
  357. package/web-shell/index.html +2 -2
  358. package/chunks/agent-headless-HYEHZFH6.js +0 -86
  359. package/chunks/bridge-FHINXZMN.js +0 -103
  360. package/chunks/channel-settings-store-OXYG5S5X.js +0 -101
  361. package/chunks/chunk-I5VM3SKY.js +0 -451
  362. package/chunks/chunk-PDPFQ2FO.js +0 -156
  363. package/chunks/daemon-status-provider-L3J6GKCT.js +0 -102
  364. package/chunks/daemon-trust-policy-4PHPY23S.js +0 -98
  365. package/chunks/exitPlanMode-RWJR2KGB.js +0 -84
  366. package/chunks/handleAutoUpdate-NHFSGYTF.js +0 -93
  367. package/chunks/initializer-Y5DJLT43.js +0 -99
  368. package/chunks/list-YHNQ32CS.js +0 -102
  369. package/chunks/loadedSettingsAdapter-GHUQK7H4.js +0 -96
  370. package/chunks/mcp-EA3KO6FS.js +0 -96
  371. package/chunks/nonInteractiveCli-NNOR56HU.js +0 -162
  372. package/chunks/read-file-KKTXGIZD.js +0 -32
  373. package/chunks/ripGrep-SJVAAYDV.js +0 -84
  374. package/chunks/serve-IH4XR5IL.js +0 -106
  375. package/chunks/spawnChannel-UAQMH6Y6.js +0 -94
  376. package/chunks/theme-manager-ZNDGAHJN.js +0 -88
  377. package/chunks/total-session-admission-66UDSOHO.js +0 -98
  378. package/chunks/workspace-providers-status-K22B3Z6B.js +0 -99
  379. package/chunks/workspace-skills-status-DDYCBVSH.js +0 -99
  380. package/chunks/write-file-TT6MWIKC.js +0 -86
  381. package/web-shell/assets/channel-DPFUV4oi.js +0 -1
  382. package/web-shell/assets/classDiagram-4FO5ZUOK-CLm0hVvw.js +0 -1
  383. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CLm0hVvw.js +0 -1
  384. package/web-shell/assets/index-BjC3yjjL.css +0 -5
  385. package/web-shell/assets/index-QzFq6w7o.js +0 -1775
  386. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DXb5olqv.js +0 -1
@@ -181,6 +181,29 @@ var DaemonHttpError = class extends Error {
181
181
  this.body = body;
182
182
  }
183
183
  };
184
+ function getErrorBodyRecord(body) {
185
+ return typeof body === "object" && body !== null && !Array.isArray(body) ? body : void 0;
186
+ }
187
+ __name(getErrorBodyRecord, "getErrorBodyRecord");
188
+ function isSubagentSessionNotFound(error, toolCallId) {
189
+ if (!(error instanceof DaemonHttpError) || error.status !== 404) {
190
+ return false;
191
+ }
192
+ const body = getErrorBodyRecord(error.body);
193
+ if (body?.["code"] !== "session_not_found") return false;
194
+ return toolCallId === void 0 || body["toolCallId"] === toolCallId;
195
+ }
196
+ __name(isSubagentSessionNotFound, "isSubagentSessionNotFound");
197
+ function isSessionLevelNotFound(error) {
198
+ if (!(error instanceof DaemonHttpError) || error.status !== 404) {
199
+ return false;
200
+ }
201
+ const body = getErrorBodyRecord(error.body);
202
+ if (body?.["code"] !== "session_not_found") return false;
203
+ const toolCallId = body["toolCallId"];
204
+ return toolCallId === void 0 || toolCallId === null;
205
+ }
206
+ __name(isSessionLevelNotFound, "isSessionLevelNotFound");
184
207
 
185
208
  // packages/sdk-typescript/src/daemon/RestSseTransport.ts
186
209
  init_esbuild_shims();
@@ -559,7 +582,9 @@ var DAEMON_ERROR_KINDS = [
559
582
  // writer-idle deadline.
560
583
  "writer_idle_timeout",
561
584
  // The model response stream ended before a complete turn could be read.
562
- "model_stream_interrupted"
585
+ "model_stream_interrupted",
586
+ // Tool-call loop protection stopped the current turn.
587
+ "loop_detected"
563
588
  ];
564
589
  var DAEMON_CONTENT_HASH_RE = /^sha256:[0-9a-f]{64}$/;
565
590
  function isDaemonContentHash(value) {
@@ -1620,6 +1645,146 @@ var DaemonClient = class {
1620
1645
  }
1621
1646
  );
1622
1647
  }
1648
+ /**
1649
+ * Upload binary bytes to the workspace. Shared raw-POST core used by both
1650
+ * the legacy-primary `uploadWorkspaceFile` and the workspace-qualified
1651
+ * variant, parameterized by URL path + route label. Keeps auth headers,
1652
+ * timeout/abort composition, progress transport, and `DaemonHttpError`
1653
+ * construction in one place.
1654
+ *
1655
+ * Uses `XMLHttpRequest` when `req.onProgress` is provided (`fetch` exposes
1656
+ * no upload progress); plain `fetch` otherwise. Progress is browser-only:
1657
+ * requesting it where `XMLHttpRequest` is unavailable fails before sending.
1658
+ *
1659
+ * @internal
1660
+ */
1661
+ async uploadFileToPath(uploadPath, label, req, clientId) {
1662
+ const target = new URL(`${this.baseUrl}${uploadPath}`);
1663
+ target.searchParams.set("path", req.path);
1664
+ const url = target.toString();
1665
+ const headers = this.headers(
1666
+ { "Content-Type": "application/octet-stream" },
1667
+ clientId
1668
+ );
1669
+ if (req.onProgress) {
1670
+ return await this.uploadWithProgress(url, label, req, headers);
1671
+ }
1672
+ return await this.fetchWithTimeout(
1673
+ url,
1674
+ {
1675
+ method: "POST",
1676
+ headers,
1677
+ body: req.data,
1678
+ ...req.signal ? { signal: req.signal } : {}
1679
+ },
1680
+ async (res) => {
1681
+ if (!res.ok) throw await this.failOnError(res, label);
1682
+ const text = await res.text();
1683
+ let body;
1684
+ try {
1685
+ body = text ? JSON.parse(text) : void 0;
1686
+ } catch {
1687
+ body = text;
1688
+ }
1689
+ if (!body || typeof body !== "object" || !("path" in body)) {
1690
+ throw new Error(`${label}: invalid upload response body`);
1691
+ }
1692
+ return body;
1693
+ },
1694
+ req.timeoutMs,
1695
+ "rest"
1696
+ );
1697
+ }
1698
+ async uploadWithProgress(url, label, req, headers) {
1699
+ if (typeof XMLHttpRequest === "undefined") {
1700
+ throw new Error(
1701
+ `${label}: upload progress requires XMLHttpRequest (browser only)`
1702
+ );
1703
+ }
1704
+ let effectiveTimeoutMs = this.fetchTimeoutMs;
1705
+ if (req.timeoutMs !== void 0 && Number.isFinite(req.timeoutMs) && req.timeoutMs >= 0) {
1706
+ effectiveTimeoutMs = req.timeoutMs;
1707
+ }
1708
+ const onProgress = req.onProgress;
1709
+ return await new Promise(
1710
+ (resolve, reject) => {
1711
+ if (req.signal?.aborted) {
1712
+ reject(
1713
+ req.signal.reason ?? new DOMException("The operation was aborted.", "AbortError")
1714
+ );
1715
+ return;
1716
+ }
1717
+ const xhr = new XMLHttpRequest();
1718
+ let abortListener;
1719
+ const cleanup = /* @__PURE__ */ __name(() => {
1720
+ if (abortListener && req.signal) {
1721
+ req.signal.removeEventListener("abort", abortListener);
1722
+ }
1723
+ }, "cleanup");
1724
+ xhr.open("POST", url);
1725
+ for (const [name, value] of Object.entries(headers)) {
1726
+ xhr.setRequestHeader(name, value);
1727
+ }
1728
+ if (effectiveTimeoutMs > 0) xhr.timeout = effectiveTimeoutMs;
1729
+ xhr.upload.onprogress = (event) => {
1730
+ if (event.lengthComputable && onProgress) {
1731
+ onProgress({ loaded: event.loaded, total: event.total });
1732
+ }
1733
+ };
1734
+ xhr.onload = () => {
1735
+ cleanup();
1736
+ let body;
1737
+ try {
1738
+ body = xhr.responseText ? JSON.parse(xhr.responseText) : void 0;
1739
+ } catch {
1740
+ body = xhr.responseText;
1741
+ }
1742
+ if (xhr.status >= 200 && xhr.status < 300) {
1743
+ if (!body || typeof body !== "object" || !("path" in body)) {
1744
+ reject(new Error(`${label}: invalid upload response body`));
1745
+ return;
1746
+ }
1747
+ resolve(body);
1748
+ return;
1749
+ }
1750
+ const detail = body && typeof body === "object" && "error" in body ? String(body.error) : `HTTP ${xhr.status}`;
1751
+ reject(new DaemonHttpError(xhr.status, body, `${label}: ${detail}`));
1752
+ };
1753
+ xhr.onerror = () => {
1754
+ cleanup();
1755
+ reject(new Error(`${label}: network request failed`));
1756
+ };
1757
+ xhr.ontimeout = () => {
1758
+ cleanup();
1759
+ reject(new DOMException("timeout", "TimeoutError"));
1760
+ };
1761
+ xhr.onabort = () => {
1762
+ cleanup();
1763
+ reject(
1764
+ req.signal?.reason ?? new DOMException("The operation was aborted.", "AbortError")
1765
+ );
1766
+ };
1767
+ if (req.signal) {
1768
+ abortListener = /* @__PURE__ */ __name(() => xhr.abort(), "abortListener");
1769
+ req.signal.addEventListener("abort", abortListener, { once: true });
1770
+ }
1771
+ try {
1772
+ xhr.send(req.data);
1773
+ } catch (error) {
1774
+ cleanup();
1775
+ reject(error);
1776
+ }
1777
+ }
1778
+ );
1779
+ }
1780
+ async uploadWorkspaceFile(req, clientId) {
1781
+ return await this.uploadFileToPath(
1782
+ "/file/upload",
1783
+ "POST /file/upload",
1784
+ req,
1785
+ clientId
1786
+ );
1787
+ }
1623
1788
  // -- Workspace memory (workspace memory/agents) ------------------------------
1624
1789
  /**
1625
1790
  * Fetch the daemon's `QWEN.md` / `AGENTS.md` snapshot. Read-only;
@@ -2085,17 +2250,17 @@ var DaemonClient = class {
2085
2250
  }
2086
2251
  );
2087
2252
  }
2088
- async resolveSubagentSession(sessionId, toolCallId, clientId) {
2253
+ async resolveSubagentSession(sessionId, subagentRef, clientId) {
2089
2254
  return await this.jsonRequest(
2090
- `/session/${urlEncode(sessionId)}/subagents/${urlEncode(toolCallId)}`,
2091
- "GET /session/:id/subagents/:toolCallId",
2255
+ `/session/${urlEncode(sessionId)}/subagents/${urlEncode(subagentRef)}`,
2256
+ "GET /session/:id/subagents/:subagentRef",
2092
2257
  { clientId, mode: "rest" }
2093
2258
  );
2094
2259
  }
2095
- async cancelSubagentSession(sessionId, toolCallId, clientId) {
2260
+ async cancelSubagentSession(sessionId, subagentRef, clientId) {
2096
2261
  return await this.jsonRequest(
2097
- `/session/${urlEncode(sessionId)}/subagents/${urlEncode(toolCallId)}/cancel`,
2098
- "POST /session/:id/subagents/:toolCallId/cancel",
2262
+ `/session/${urlEncode(sessionId)}/subagents/${urlEncode(subagentRef)}/cancel`,
2263
+ "POST /session/:id/subagents/:subagentRef/cancel",
2099
2264
  { clientId, mode: "rest", method: "POST" }
2100
2265
  );
2101
2266
  }
@@ -2299,7 +2464,8 @@ var DaemonClient = class {
2299
2464
  body: JSON.stringify({
2300
2465
  cwd: req.workspaceCwd,
2301
2466
  ...req.approvalMode !== void 0 ? { approvalMode: req.approvalMode } : {},
2302
- ...action === "load" && req.historyPageSize !== void 0 ? { historyPageSize: req.historyPageSize } : {}
2467
+ ...action === "load" && req.historyPageSize !== void 0 ? { historyPageSize: req.historyPageSize } : {},
2468
+ ...action === "load" && req.liveReplayMode !== void 0 ? { liveReplayMode: req.liveReplayMode } : {}
2303
2469
  })
2304
2470
  },
2305
2471
  async (res) => {
@@ -3382,6 +3548,13 @@ var DaemonClient = class {
3382
3548
  }
3383
3549
  );
3384
3550
  }
3551
+ async setSessionConfigOption(sessionId, configId, value, clientId) {
3552
+ return await this.jsonRequest(
3553
+ `/session/${urlEncode(sessionId)}/config-option`,
3554
+ "POST /session/:id/config-option",
3555
+ { method: "POST", body: { configId, value }, clientId }
3556
+ );
3557
+ }
3385
3558
  async setSessionLanguage(sessionId, language, opts) {
3386
3559
  return await this.fetchWithTimeout(
3387
3560
  `${this.baseUrl}/session/${urlEncode(sessionId)}/language`,
@@ -4575,6 +4748,14 @@ var WorkspaceDaemonClient = class {
4575
4748
  clientId
4576
4749
  );
4577
4750
  }
4751
+ uploadWorkspaceFile(req, clientId) {
4752
+ return this.client.uploadFileToPath(
4753
+ `/workspaces/${this.workspaceSelector}/file/upload`,
4754
+ "POST /workspaces/:workspace/file/upload",
4755
+ req,
4756
+ clientId
4757
+ );
4758
+ }
4578
4759
  workspaceSettings(opts) {
4579
4760
  return this.get(
4580
4761
  "/settings",
@@ -4794,6 +4975,9 @@ var DaemonSessionClient = class _DaemonSessionClient {
4794
4975
  session;
4795
4976
  state;
4796
4977
  replaySnapshot;
4978
+ replaySnapshotComplete;
4979
+ replayPartial;
4980
+ replayError;
4797
4981
  hasActivePrompt;
4798
4982
  historyHasMore;
4799
4983
  /**
@@ -4837,6 +5021,9 @@ var DaemonSessionClient = class _DaemonSessionClient {
4837
5021
  compactedReplay: [],
4838
5022
  liveJournal: []
4839
5023
  };
5024
+ this.replaySnapshotComplete = opts.replaySnapshotComplete ?? false;
5025
+ this.replayPartial = opts.replayPartial ?? false;
5026
+ this.replayError = opts.replayError;
4840
5027
  this.lastSeenEventId = validateLastEventId(opts.lastEventId);
4841
5028
  this.lastSeenEpoch = opts.eventEpoch;
4842
5029
  this.promptLimit = opts.maxPendingPromptsPerSession === void 0 ? opts.client.maxPendingPromptsPerSession : normalizePendingPromptLimit(opts.maxPendingPromptsPerSession);
@@ -4864,6 +5051,8 @@ var DaemonSessionClient = class _DaemonSessionClient {
4864
5051
  * during `session/load` are visible to this client.
4865
5052
  */
4866
5053
  static async load(client, sessionId, req = {}, clientId) {
5054
+ const restored = await client.loadSession(sessionId, req, clientId);
5055
+ const replaySnapshotComplete = Array.isArray(restored.compactedReplay) && Array.isArray(restored.liveJournal);
4867
5056
  const {
4868
5057
  state,
4869
5058
  hasActivePrompt,
@@ -4872,10 +5061,12 @@ var DaemonSessionClient = class _DaemonSessionClient {
4872
5061
  historyHasMore,
4873
5062
  historyAnchorRecordId,
4874
5063
  replayDegraded,
5064
+ partial,
5065
+ replayError,
4875
5066
  lastEventId: serverLastEventId,
4876
5067
  eventEpoch,
4877
5068
  ...session
4878
- } = await client.loadSession(sessionId, req, clientId);
5069
+ } = restored;
4879
5070
  return new _DaemonSessionClient({
4880
5071
  client,
4881
5072
  session,
@@ -4887,6 +5078,9 @@ var DaemonSessionClient = class _DaemonSessionClient {
4887
5078
  compactedReplay: compactedReplay ?? [],
4888
5079
  liveJournal: liveJournal ?? []
4889
5080
  },
5081
+ replaySnapshotComplete,
5082
+ replayPartial: partial === true,
5083
+ replayError,
4890
5084
  historyHasMore,
4891
5085
  historyAnchorRecordId,
4892
5086
  replayDegraded
@@ -4936,6 +5130,9 @@ var DaemonSessionClient = class _DaemonSessionClient {
4936
5130
  get lastEventId() {
4937
5131
  return this.lastSeenEventId;
4938
5132
  }
5133
+ get eventEpoch() {
5134
+ return this.lastSeenEpoch;
5135
+ }
4939
5136
  setLastEventId(lastEventId) {
4940
5137
  this.lastSeenEventId = validateLastEventId(lastEventId);
4941
5138
  }
@@ -5104,6 +5301,14 @@ var DaemonSessionClient = class _DaemonSessionClient {
5104
5301
  this.clientId
5105
5302
  );
5106
5303
  }
5304
+ async setConfigOption(configId, value) {
5305
+ return await this.client.setSessionConfigOption(
5306
+ this.sessionId,
5307
+ configId,
5308
+ value,
5309
+ this.clientId
5310
+ );
5311
+ }
5107
5312
  async getRewindSnapshots() {
5108
5313
  return await this.client.getRewindSnapshots(this.sessionId);
5109
5314
  }
@@ -11260,7 +11465,9 @@ export {
11260
11465
  isSensitiveKey as isDaemonUiSensitiveKey,
11261
11466
  isKnownDaemonEvent,
11262
11467
  isNonBlockingAccepted,
11468
+ isSessionLevelNotFound,
11263
11469
  isSubagentChildBlock,
11470
+ isSubagentSessionNotFound,
11264
11471
  isWorkspaceScopedBudgetEvent,
11265
11472
  matchTurnEvent,
11266
11473
  normalizeDaemonEvent,