@qwen-code/qwen-code 0.21.9 → 0.21.10

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 (218) hide show
  1. package/bundled/qc-helper/docs/configuration/settings.md +1 -1
  2. package/bundled/qc-helper/docs/features/status-line.md +13 -13
  3. package/bundled/qc-helper/docs/integration-jetbrains.md +1 -0
  4. package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +14 -10
  5. package/bundled/review/SKILL.md +2 -2
  6. package/chunks/{MaxSizedBox-6BZANW7X.js → MaxSizedBox-FKXYULMW.js} +5 -5
  7. package/chunks/{StandaloneSessionPicker-VDC5KE7T.js → StandaloneSessionPicker-OQS3M7AY.js} +19 -19
  8. package/chunks/{acp-startup-profiler-B5BYAMYQ.js → acp-startup-profiler-VNTFWYAC.js} +2 -2
  9. package/chunks/{acpAgent-F2NSBCUF.js → acpAgent-AGS6HLQQ.js} +95 -43
  10. package/chunks/{agent-VOHJOEBB.js → agent-4NCVO27U.js} +5 -5
  11. package/chunks/{agent-headless-J5NFOPHP.js → agent-headless-HYEHZFH6.js} +5 -5
  12. package/chunks/{anthropicContentGenerator-SSFE2753.js → anthropicContentGenerator-D3Y4RFT4.js} +1 -1
  13. package/chunks/{bridge-NQIZZLAS.js → bridge-FHINXZMN.js} +8 -8
  14. package/chunks/{channel-settings-store-VIY2OENO.js → channel-settings-store-OXYG5S5X.js} +11 -11
  15. package/chunks/{channel-worker-group-MSHT6CWR.js → channel-worker-group-WQP4RCDO.js} +3 -3
  16. package/chunks/{channel-worker-manager-XXD3GDSK.js → channel-worker-manager-MRDFAKIM.js} +3 -3
  17. package/chunks/{chunk-7AEPJGL4.js → chunk-26CXSA6V.js} +1 -1
  18. package/chunks/{chunk-KTQGGPGV.js → chunk-2PLNY5TN.js} +4 -4
  19. package/chunks/{chunk-G2TX5ZXC.js → chunk-47PEPJO7.js} +3 -3
  20. package/chunks/{chunk-3XVDTHBJ.js → chunk-4MKXUHXY.js} +2 -2
  21. package/chunks/{chunk-D7BXVKSF.js → chunk-4WL6SY4F.js} +1 -1
  22. package/chunks/{chunk-P3RBMQ4P.js → chunk-5MZCSWI4.js} +4 -4
  23. package/chunks/{chunk-LP2QGNSP.js → chunk-624NHDGB.js} +3 -1
  24. package/chunks/{chunk-FBMCDU63.js → chunk-6LP743KE.js} +4 -4
  25. package/chunks/{chunk-II6G3EY6.js → chunk-7GTMV7UE.js} +339 -213
  26. package/chunks/{chunk-4XQNB3KN.js → chunk-A7XMDZRI.js} +2 -2
  27. package/chunks/{chunk-PNBBJOCP.js → chunk-AAE6SR4Q.js} +1 -1
  28. package/chunks/{chunk-JUWS2Z5K.js → chunk-ABVRJU3D.js} +5 -5
  29. package/chunks/{chunk-IOEZE2YT.js → chunk-AEL7KN2O.js} +1 -1
  30. package/chunks/{chunk-OGDIJKHK.js → chunk-AQAJJMRR.js} +1 -1
  31. package/chunks/{chunk-AKJQSWV4.js → chunk-BSI645OU.js} +2 -2
  32. package/chunks/{chunk-FCLHHEUK.js → chunk-D27I6YJT.js} +11 -11
  33. package/chunks/{chunk-P2FK2HBV.js → chunk-DCZEPFB4.js} +2 -2
  34. package/chunks/{chunk-GAKGOXTC.js → chunk-EBZ6BJTF.js} +1 -1
  35. package/chunks/{chunk-KSAFZ5TA.js → chunk-ECWR5LQR.js} +1 -1
  36. package/chunks/{chunk-XX7QFP34.js → chunk-EI3NWELG.js} +116 -62
  37. package/chunks/{chunk-P4ZEZSJZ.js → chunk-F24A2JBM.js} +260 -65
  38. package/chunks/{chunk-DH5YXSIF.js → chunk-F6WDTQ3M.js} +2 -2
  39. package/chunks/{chunk-ZOSTTOUJ.js → chunk-GWVUR3QZ.js} +1 -1
  40. package/chunks/{chunk-BZP4QPNK.js → chunk-IBUGFUXC.js} +9 -9
  41. package/chunks/{chunk-SCAZZ3Q4.js → chunk-IRZ2ZH72.js} +4 -4
  42. package/chunks/{chunk-OGNFHGIG.js → chunk-IWTMYQ32.js} +4 -4
  43. package/chunks/{chunk-CG3WBKJK.js → chunk-JT7XS4YW.js} +1 -1
  44. package/chunks/{chunk-MTCYGTWH.js → chunk-KID7K6H2.js} +4 -4
  45. package/chunks/{chunk-DGEIYUC3.js → chunk-KM73TBQ4.js} +7 -1
  46. package/chunks/{chunk-TZ6KJ44L.js → chunk-KONVMRK7.js} +1 -1
  47. package/chunks/{scheduler-YNQNOU2E.js → chunk-KZ22NXBY.js} +238 -110
  48. package/chunks/{chunk-RBHQXGDK.js → chunk-LLCWZQCU.js} +1 -1
  49. package/chunks/{chunk-UJUM2SRN.js → chunk-MIKXJYZB.js} +27 -26
  50. package/chunks/{chunk-THIKWITR.js → chunk-NDU63YLI.js} +2 -2
  51. package/chunks/{chunk-ATMO54WE.js → chunk-NEOXOWYH.js} +2 -2
  52. package/chunks/{chunk-QSNSL4R4.js → chunk-NRLFZWCT.js} +1 -1
  53. package/chunks/{chunk-TQCYNLNJ.js → chunk-NV65ZUVM.js} +1 -1
  54. package/chunks/{chunk-HZGBKOX3.js → chunk-O3EU6GMH.js} +2 -2
  55. package/chunks/{chunk-46YJDYCU.js → chunk-OCSFNUU4.js} +7 -7
  56. package/chunks/{chunk-T5RLUXWJ.js → chunk-OJUQF2PL.js} +2 -2
  57. package/chunks/{chunk-ZTQSOV56.js → chunk-OONWZLFK.js} +3 -3
  58. package/chunks/{chunk-23VQTELM.js → chunk-P3BJLFSZ.js} +1 -1
  59. package/chunks/{chunk-BIRWP6LU.js → chunk-Q3AL4JQ3.js} +1 -1
  60. package/chunks/{chunk-CMOBWHWW.js → chunk-QBJYSIQ4.js} +1 -1
  61. package/chunks/{chunk-XTY5DN4Y.js → chunk-QG3FFJYU.js} +1 -1
  62. package/chunks/{chunk-W3FSZSF2.js → chunk-QGNOFE5E.js} +1 -1
  63. package/chunks/{chunk-3WDYBTTI.js → chunk-QJMOAMXT.js} +4 -4
  64. package/chunks/{chunk-67N6HB5H.js → chunk-QUI267ZP.js} +1 -0
  65. package/chunks/{chunk-K4ADGWHU.js → chunk-TRRF5BSP.js} +1 -1
  66. package/chunks/{chunk-7GOYZQPR.js → chunk-UBX6NL47.js} +3 -3
  67. package/chunks/{chunk-WP5VOXF7.js → chunk-UEOKWYGY.js} +1 -1
  68. package/chunks/{chunk-HADWBW5R.js → chunk-UMD7WQTR.js} +4 -4
  69. package/chunks/{chunk-RVSTTOJ4.js → chunk-URKIBIFC.js} +2 -2
  70. package/chunks/{chunk-7S4JBJLU.js → chunk-VSFKIRRW.js} +3 -3
  71. package/chunks/{chunk-ZBXGWQ4S.js → chunk-VWKER4ZH.js} +2 -2
  72. package/chunks/{chunk-M2PNLYGY.js → chunk-W5UC37EE.js} +2 -0
  73. package/chunks/{chunk-BT6GQIEJ.js → chunk-X2UOOG5V.js} +1 -1
  74. package/chunks/{chunk-WGK4TSB7.js → chunk-XVHYA33G.js} +3 -3
  75. package/chunks/{chunk-BAMN6XSD.js → chunk-Y3OVRWRY.js} +1 -1
  76. package/chunks/{chunk-PVOGHGSF.js → chunk-Y4R47ZUH.js} +6 -6
  77. package/chunks/{chunk-LZZLUCRS.js → chunk-YF5MALI4.js} +3 -3
  78. package/chunks/{chunk-5RBDAGC6.js → chunk-YWPSGJFI.js} +2 -2
  79. package/chunks/{chunk-MHP476D3.js → chunk-Z4JX4NSH.js} +52 -39
  80. package/chunks/{chunk-T6HEQR2Q.js → chunk-ZJ4W6SUY.js} +1 -1
  81. package/chunks/{chunk-UYAUA63Q.js → chunk-ZRBMO3C7.js} +1 -1
  82. package/chunks/{chunk-KTKYGS2P.js → chunk-ZZCWJWTF.js} +8 -1
  83. package/chunks/{computer-use-PMZ7ICGY.js → computer-use-WQFK33Z3.js} +5 -5
  84. package/chunks/{contextCommand-GEZU7YHE.js → contextCommand-7EOZND7C.js} +7 -7
  85. package/chunks/{core-runtime-HRJI2MN6.js → core-runtime-FGMQRM6E.js} +5 -5
  86. package/chunks/{create-sub-session-VBNVI4YU.js → create-sub-session-QM2K5HLZ.js} +6 -6
  87. package/chunks/{daemon-POSQPD3G.js → daemon-GWD7BT6E.js} +46 -5
  88. package/chunks/{daemon-status-provider-N4CRQKFI.js → daemon-status-provider-L3J6GKCT.js} +12 -12
  89. package/chunks/{daemon-trust-policy-BHO3JUHM.js → daemon-trust-policy-4PHPY23S.js} +11 -11
  90. package/chunks/{daemon-trust-policy-monitor-YEKJ2726.js → daemon-trust-policy-monitor-6UKEABN5.js} +11 -11
  91. package/chunks/{deferred-core-runtime-SH57E3J3.js → deferred-core-runtime-67GJXHXS.js} +5 -5
  92. package/chunks/{earlyInputCapture-B2JJ2HME.js → earlyInputCapture-IWMYR6OB.js} +5 -5
  93. package/chunks/{edit-7FTXENAN.js → edit-ZFGROCAF.js} +5 -5
  94. package/chunks/{enter-worktree-JPHV2PBG.js → enter-worktree-TZZZCDM5.js} +5 -5
  95. package/chunks/{enterPlanMode-CGBJ3AHJ.js → enterPlanMode-U77BI3R6.js} +5 -5
  96. package/chunks/{environment-LXASZAHD.js → environment-HC37DS2I.js} +7 -7
  97. package/chunks/{errors-XIGVT2AD.js → errors-6AG54JPD.js} +7 -7
  98. package/chunks/{exit-worktree-DKSGXW65.js → exit-worktree-UYYWFPNK.js} +5 -5
  99. package/chunks/{exitPlanMode-THFL2HYN.js → exitPlanMode-RWJR2KGB.js} +5 -5
  100. package/chunks/{fast-path-4NXAT5UL.js → fast-path-F5FSZ3O7.js} +2 -2
  101. package/chunks/{gemini-B3N6FACU.js → gemini-NKQHYM36.js} +76 -52
  102. package/chunks/{geminiContentGenerator-YYFE2HIE.js → geminiContentGenerator-HCWZOUX3.js} +1 -1
  103. package/chunks/{glob-BPHSCFJP.js → glob-3PDXKBAO.js} +5 -5
  104. package/chunks/{goal-tools-PXWN5VK3.js → goal-tools-SWNB6GP4.js} +1 -1
  105. package/chunks/{grep-ROZIRFLU.js → grep-5HZKZYVD.js} +5 -5
  106. package/chunks/{handleAutoUpdate-WV6SPZQB.js → handleAutoUpdate-NHFSGYTF.js} +9 -9
  107. package/chunks/{i18n-YWJWPQKD.js → i18n-Q27KKNDL.js} +6 -6
  108. package/chunks/{image-gen-SISRZ6FS.js → image-gen-2Z2RJ6W7.js} +1 -1
  109. package/chunks/{initializer-66OAD6GO.js → initializer-Y5DJLT43.js} +11 -11
  110. package/chunks/{installationInfo-3YUGIP36.js → installationInfo-XXB75T7O.js} +6 -6
  111. package/chunks/{list-VEYR66XB.js → list-YHNQ32CS.js} +14 -14
  112. package/chunks/{loadedSettingsAdapter-V2JCPCYD.js → loadedSettingsAdapter-GHUQK7H4.js} +11 -11
  113. package/chunks/{loggingContentGenerator-RBLNDREC.js → loggingContentGenerator-6NTFBM7Q.js} +1 -1
  114. package/chunks/{managed-npm-update-C5ID5R4R.js → managed-npm-update-SPHYQUWZ.js} +6 -6
  115. package/chunks/{mcp-OZ54NZJQ.js → mcp-EA3KO6FS.js} +11 -11
  116. package/chunks/{monitor-7Y4TVFTK.js → monitor-ZBBPAA54.js} +5 -5
  117. package/chunks/{nonInteractiveCli-QEK4LHAC.js → nonInteractiveCli-NNOR56HU.js} +35 -35
  118. package/chunks/{notebook-edit-OG35EBGY.js → notebook-edit-5W3FW7Z2.js} +5 -5
  119. package/chunks/{openaiContentGenerator-443BNRPJ.js → openaiContentGenerator-TQANPEVZ.js} +1 -1
  120. package/chunks/{pidfile-ZK4OLRZA.js → pidfile-EQOBLH4E.js} +5 -5
  121. package/chunks/{processUtils-4YGB4RUZ.js → processUtils-7XQG7EHS.js} +2 -2
  122. package/chunks/{qwenContentGenerator-D5C2LCSZ.js → qwenContentGenerator-BKCPHHXU.js} +5 -5
  123. package/chunks/{qwenOAuth2-Z4YQBMYN.js → qwenOAuth2-BJ6PQKE6.js} +1 -1
  124. package/chunks/{read-file-EXTJLWMU.js → read-file-KKTXGIZD.js} +1 -1
  125. package/chunks/{resumeHistoryUtils-UPCGRJUL.js → resumeHistoryUtils-6N6XGJJW.js} +8 -8
  126. package/chunks/{ripGrep-QBVIRCU4.js → ripGrep-SJVAAYDV.js} +5 -5
  127. package/chunks/{run-qwen-serve-ZYGJNE3E.js → run-qwen-serve-BCKBCAMX.js} +34 -34
  128. package/chunks/{runtime-BZZ4LWCP.js → runtime-E2437YKL.js} +12 -12
  129. package/chunks/scheduler-K3D5Z655.js +108 -0
  130. package/chunks/{serve-LJHAXDCH.js → serve-IH4XR5IL.js} +11 -11
  131. package/chunks/{server-ADMLELR6.js → server-UD6INW7J.js} +616 -245
  132. package/chunks/{session-YKZXFFTM.js → session-GR4ZEVW4.js} +43 -44
  133. package/chunks/{settings-EQBUAQ7Y.js → settings-5O24D3OJ.js} +10 -10
  134. package/chunks/{shell-3QZOJGTT.js → shell-UTLWLG5G.js} +5 -5
  135. package/chunks/{skill-UWSSMXE7.js → skill-QQAZL4VO.js} +1 -1
  136. package/chunks/{skill-settings-T6MLB7NU.js → skill-settings-P3YHJVBZ.js} +10 -10
  137. package/chunks/{spawnChannel-VS7ZFUFP.js → spawnChannel-UAQMH6Y6.js} +5 -5
  138. package/chunks/{standalone-update-2W26SRRO.js → standalone-update-QP742MGP.js} +7 -7
  139. package/chunks/{startInteractiveUI-CVS7K3D6.js → startInteractiveUI-YCS6AEPN.js} +1209 -926
  140. package/chunks/{team-create-4WFTNNUL.js → team-create-WFH7OCDQ.js} +5 -5
  141. package/chunks/{team-plan-approval-DBYI33S3.js → team-plan-approval-EGTT53MV.js} +5 -5
  142. package/chunks/{terminal-image-renderer-S5WPPQKH.js → terminal-image-renderer-BWRESAQ7.js} +5 -5
  143. package/chunks/{theme-manager-LI2RIOVR.js → theme-manager-ZNDGAHJN.js} +5 -5
  144. package/chunks/{tool-search-4773EUQ4.js → tool-search-TI5PTIBF.js} +1 -1
  145. package/chunks/{total-session-admission-PAY5CH2Z.js → total-session-admission-66UDSOHO.js} +9 -9
  146. package/chunks/{trustedFolders-FRSLE674.js → trustedFolders-4KYHA4IG.js} +6 -6
  147. package/chunks/{update-relaunch-ZSFQTU6M.js → update-relaunch-WB6LGIF2.js} +5 -5
  148. package/chunks/{updateCheck-AXWSO7KA.js → updateCheck-LOS5GYFC.js} +8 -8
  149. package/chunks/{useAutoAcceptIndicator-VHLXIA7U.js → useAutoAcceptIndicator-MHAPY52L.js} +11 -11
  150. package/chunks/{validateNonInterActiveAuth-PDJECMFU.js → validateNonInterActiveAuth-QV22HNQU.js} +32 -32
  151. package/chunks/{version-RBN764QS.js → version-DALWZHKQ.js} +1 -1
  152. package/chunks/{web-fetch-7BJK42AF.js → web-fetch-JMJVMYFE.js} +1 -1
  153. package/chunks/{web-search-L2CILQXV.js → web-search-DNDUIPU5.js} +2 -2
  154. package/chunks/{workflow-5VH2R74I.js → workflow-JGNN64PM.js} +6 -6
  155. package/chunks/{workspace-providers-status-OZTQ6JFH.js → workspace-providers-status-K22B3Z6B.js} +13 -13
  156. package/chunks/{workspace-registration-store-IX5RJQS5.js → workspace-registration-store-LRJG7QA4.js} +1 -1
  157. package/chunks/{workspace-registry-73N4BGG4.js → workspace-registry-KVXIFM36.js} +9 -9
  158. package/chunks/{workspace-service-I5RUPSNV.js → workspace-service-PO4AAKKT.js} +15 -15
  159. package/chunks/{workspace-skills-status-DMK6VYDO.js → workspace-skills-status-DDYCBVSH.js} +11 -11
  160. package/chunks/{workspace-trust-reconciler-QX4RL3TC.js → workspace-trust-reconciler-DOZPCVHG.js} +15 -15
  161. package/chunks/{write-file-UGDD5UTS.js → write-file-TT6MWIKC.js} +5 -5
  162. package/chunks/{zoom-image-ZAHEO3YP.js → zoom-image-CNC77ZMA.js} +1 -1
  163. package/cli.js +13 -13
  164. package/package.json +3 -3
  165. package/web-shell/assets/{arc-CHY4saMJ.js → arc-CDk0d60K.js} +1 -1
  166. package/web-shell/assets/{architectureDiagram-3BPJPVTR-Bu6CwvHj.js → architectureDiagram-3BPJPVTR-h-W3I2lP.js} +1 -1
  167. package/web-shell/assets/{blockDiagram-GPEHLZMM-XGt6iGf_.js → blockDiagram-GPEHLZMM-D1pvSmZg.js} +1 -1
  168. package/web-shell/assets/{c4Diagram-AAUBKEIU-CBbYl19W.js → c4Diagram-AAUBKEIU-ByAm5ZNf.js} +1 -1
  169. package/web-shell/assets/channel-DPFUV4oi.js +1 -0
  170. package/web-shell/assets/{chunk-2J33WTMH-BEhmVrdx.js → chunk-2J33WTMH-VrGPPOGV.js} +1 -1
  171. package/web-shell/assets/{chunk-4BX2VUAB-fQLyE0Bg.js → chunk-4BX2VUAB-B7hTowgG.js} +1 -1
  172. package/web-shell/assets/{chunk-55IACEB6-yGdtyx4a.js → chunk-55IACEB6-j1Fq8DpE.js} +1 -1
  173. package/web-shell/assets/{chunk-727SXJPM-DYbX2GLo.js → chunk-727SXJPM-UjABYpF2.js} +1 -1
  174. package/web-shell/assets/{chunk-AQP2D5EJ-DyKTEsYn.js → chunk-AQP2D5EJ-D4uBItrs.js} +1 -1
  175. package/web-shell/assets/{chunk-FMBD7UC4-D8Uy_GzX.js → chunk-FMBD7UC4-DeFbKlb8.js} +1 -1
  176. package/web-shell/assets/{chunk-ND2GUHAM-C8wNR2K7.js → chunk-ND2GUHAM-rQJ8TIgT.js} +1 -1
  177. package/web-shell/assets/{chunk-QZHKN3VN-BnybNxnt.js → chunk-QZHKN3VN-DAGcRxvq.js} +1 -1
  178. package/web-shell/assets/classDiagram-4FO5ZUOK-CLm0hVvw.js +1 -0
  179. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CLm0hVvw.js +1 -0
  180. package/web-shell/assets/{cose-bilkent-S5V4N54A-jq4uiFRp.js → cose-bilkent-S5V4N54A-MaE7MJSt.js} +1 -1
  181. package/web-shell/assets/{dagre-BM42HDAG-Bs7oye1U.js → dagre-BM42HDAG-DzijYGSb.js} +1 -1
  182. package/web-shell/assets/{diagram-2AECGRRQ-BHGGJNyM.js → diagram-2AECGRRQ-WdbG7WnX.js} +1 -1
  183. package/web-shell/assets/{diagram-5GNKFQAL-BJezVLGT.js → diagram-5GNKFQAL-NYutsBnw.js} +1 -1
  184. package/web-shell/assets/{diagram-KO2AKTUF-5JzQN_rL.js → diagram-KO2AKTUF-Dqg0eBY0.js} +1 -1
  185. package/web-shell/assets/{diagram-LMA3HP47-BlPYOgY9.js → diagram-LMA3HP47-C7vRP2Lb.js} +1 -1
  186. package/web-shell/assets/{diagram-OG6HWLK6-CtMHEaFK.js → diagram-OG6HWLK6-B2sEPpPt.js} +1 -1
  187. package/web-shell/assets/{erDiagram-TEJ5UH35-CRNdq2AB.js → erDiagram-TEJ5UH35-a4zIbzm8.js} +1 -1
  188. package/web-shell/assets/{flowDiagram-I6XJVG4X-De1WwLzu.js → flowDiagram-I6XJVG4X-BK9y89ya.js} +1 -1
  189. package/web-shell/assets/{ganttDiagram-6RSMTGT7-YbWfL5Zn.js → ganttDiagram-6RSMTGT7-wUQTSNvV.js} +1 -1
  190. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-DzCN8bmd.js → gitGraphDiagram-PVQCEYII-Dnzt4SAi.js} +1 -1
  191. package/web-shell/assets/{index-CocPvF9Q.js → index-BA3wUcKL.js} +1 -1
  192. package/web-shell/assets/{index-BDOGGGaN.css → index-BjC3yjjL.css} +2 -2
  193. package/web-shell/assets/index-QzFq6w7o.js +1775 -0
  194. package/web-shell/assets/{infoDiagram-5YYISTIA-DLHoopnE.js → infoDiagram-5YYISTIA-DcaoToij.js} +1 -1
  195. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-XnbU04SS.js → ishikawaDiagram-YF4QCWOH-DzduqhP2.js} +1 -1
  196. package/web-shell/assets/{journeyDiagram-JHISSGLW-CipPyEeJ.js → journeyDiagram-JHISSGLW-BvviZR_O.js} +1 -1
  197. package/web-shell/assets/{kanban-definition-UN3LZRKU-DrSeyE5d.js → kanban-definition-UN3LZRKU-Efm2JxY3.js} +1 -1
  198. package/web-shell/assets/{linear-LrBKnAo_.js → linear-DtY3IbOs.js} +1 -1
  199. package/web-shell/assets/{mermaid.core-C3U9UVmf.js → mermaid.core-PzpFqoMe.js} +5 -5
  200. package/web-shell/assets/{mindmap-definition-RKZ34NQL-DqRWgC9H.js → mindmap-definition-RKZ34NQL-BLlTkHS0.js} +1 -1
  201. package/web-shell/assets/{pieDiagram-4H26LBE5-BNXY5p6H.js → pieDiagram-4H26LBE5-D-mKF-jE.js} +1 -1
  202. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-Ccj9QzE4.js → quadrantDiagram-W4KKPZXB-DYCzslGm.js} +1 -1
  203. package/web-shell/assets/{requirementDiagram-4Y6WPE33-CjPM2_gx.js → requirementDiagram-4Y6WPE33-Dfpxlk7R.js} +1 -1
  204. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-C0RsvKbj.js → sankeyDiagram-5OEKKPKP-D5cRaaxh.js} +1 -1
  205. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-ClN1P5z7.js → sequenceDiagram-3UESZ5HK-s04DReiS.js} +1 -1
  206. package/web-shell/assets/{stateDiagram-AJRCARHV-By0eiB2Y.js → stateDiagram-AJRCARHV-01UNFgnb.js} +1 -1
  207. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DXb5olqv.js +1 -0
  208. package/web-shell/assets/{timeline-definition-PNZ67QCA-g_iaSQgv.js → timeline-definition-PNZ67QCA-DX8_wZBC.js} +1 -1
  209. package/web-shell/assets/{vennDiagram-CIIHVFJN-y9ZqJ-TD.js → vennDiagram-CIIHVFJN-BK0FlBme.js} +1 -1
  210. package/web-shell/assets/{wardley-L42UT6IY-BVVfaxpF.js → wardley-L42UT6IY-DkPc9UlD.js} +1 -1
  211. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-D3ooZKZT.js → wardleyDiagram-YWT4CUSO-DNKkpDAo.js} +1 -1
  212. package/web-shell/assets/{xychartDiagram-2RQKCTM6-6GXrY6M1.js → xychartDiagram-2RQKCTM6-CiPwg8QG.js} +1 -1
  213. package/web-shell/index.html +2 -2
  214. package/web-shell/assets/channel-B40srHOa.js +0 -1
  215. package/web-shell/assets/classDiagram-4FO5ZUOK-qumcXQW_.js +0 -1
  216. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-qumcXQW_.js +0 -1
  217. package/web-shell/assets/index-DSH2KrMc.js +0 -1771
  218. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-Ds0WlK3F.js +0 -1
@@ -23,11 +23,11 @@ import {
23
23
  } from "./chunk-BKHCW2BI.js";
24
24
  import {
25
25
  loadSettings
26
- } from "./chunk-JUWS2Z5K.js";
26
+ } from "./chunk-ABVRJU3D.js";
27
27
  import {
28
28
  MCP_BUDGET_WARN_FRACTION,
29
29
  sleepInhibitor
30
- } from "./chunk-XX7QFP34.js";
30
+ } from "./chunk-EI3NWELG.js";
31
31
  import {
32
32
  parsePositiveIntegerEnv
33
33
  } from "./chunk-6PVPNMXU.js";
@@ -421,7 +421,7 @@ var serveCommand = {
421
421
  }
422
422
  const externalToolGuardToken = process.env[EXTERNAL_TOOL_GUARD_TOKEN_ENV] ?? "";
423
423
  delete process.env[EXTERNAL_TOOL_GUARD_TOKEN_ENV];
424
- const { runQwenServe } = await import("./run-qwen-serve-ZYGJNE3E.js");
424
+ const { runQwenServe } = await import("./run-qwen-serve-BCKBCAMX.js");
425
425
  try {
426
426
  const localControlToken = argv["local-control"] ? randomBytes(32).toString("base64url") : void 0;
427
427
  const localControlPairing = localControlToken ? localControlUrls(
@@ -5,12 +5,12 @@ import {
5
5
  } from "./chunk-4NFY2S7N.js";
6
6
  import {
7
7
  t
8
- } from "./chunk-WP5VOXF7.js";
8
+ } from "./chunk-UEOKWYGY.js";
9
9
  import {
10
10
  fetchGitDiff,
11
11
  findProviderByCredentials,
12
12
  resolveMetadataKey
13
- } from "./chunk-XX7QFP34.js";
13
+ } from "./chunk-EI3NWELG.js";
14
14
  import {
15
15
  init_esbuild_shims
16
16
  } from "./chunk-5O2XNYP6.js";
@@ -15,7 +15,7 @@ import {
15
15
  estimateCompactToolGroupHeight,
16
16
  isCollapsibleTool,
17
17
  wrapAnsi
18
- } from "./chunk-OGNFHGIG.js";
18
+ } from "./chunk-IWTMYQ32.js";
19
19
  import {
20
20
  disableMouseEvents,
21
21
  enableMouseEvents,
@@ -28,7 +28,7 @@ import {
28
28
  getCommandSourceBadge,
29
29
  getCommandSourceGroup,
30
30
  getCommandSubcommandNames
31
- } from "./chunk-XTY5DN4Y.js";
31
+ } from "./chunk-QG3FFJYU.js";
32
32
  import {
33
33
  INLINE_CODE_SPAN_PATTERN_SOURCE,
34
34
  calculateAverageLatency,
@@ -43,7 +43,7 @@ import {
43
43
  readInlineMathSpanAt,
44
44
  unescapeMarkdownBeforeMath,
45
45
  unescapeMarkdownDollars
46
- } from "./chunk-5RBDAGC6.js";
46
+ } from "./chunk-YWPSGJFI.js";
47
47
  import {
48
48
  MINIMUM_MAX_HEIGHT,
49
49
  MaxSizedBox
@@ -82,10 +82,10 @@ import {
82
82
  } from "./chunk-PJRW65JO.js";
83
83
  import {
84
84
  relaunchApp
85
- } from "./chunk-TZ6KJ44L.js";
85
+ } from "./chunk-KONVMRK7.js";
86
86
  import {
87
87
  getErrorMessage
88
- } from "./chunk-P2FK2HBV.js";
88
+ } from "./chunk-DCZEPFB4.js";
89
89
  import {
90
90
  cpLen,
91
91
  cpSlice,
@@ -116,18 +116,18 @@ import {
116
116
  } from "./chunk-57OAHC2Y.js";
117
117
  import {
118
118
  createLoadedSettingsAdapter
119
- } from "./chunk-D7BXVKSF.js";
119
+ } from "./chunk-4WL6SY4F.js";
120
120
  import {
121
121
  getPersistScopeForModelSelection
122
- } from "./chunk-JUWS2Z5K.js";
122
+ } from "./chunk-ABVRJU3D.js";
123
123
  import {
124
124
  getCurrentLanguage,
125
125
  localizeToolDisplayName,
126
126
  t
127
- } from "./chunk-WP5VOXF7.js";
127
+ } from "./chunk-UEOKWYGY.js";
128
128
  import {
129
129
  isWorkspaceTrusted
130
- } from "./chunk-ZOSTTOUJ.js";
130
+ } from "./chunk-GWVUR3QZ.js";
131
131
  import {
132
132
  ALL_PROVIDERS,
133
133
  IdeClient,
@@ -150,7 +150,7 @@ import {
150
150
  resolveBaseUrl,
151
151
  resolveMetadataKey,
152
152
  resolveOwnsModel
153
- } from "./chunk-XX7QFP34.js";
153
+ } from "./chunk-EI3NWELG.js";
154
154
  import {
155
155
  stripAnsi
156
156
  } from "./chunk-TWPJO254.js";
@@ -3362,7 +3362,9 @@ function isSafeOscScheme(url) {
3362
3362
  return SAFE_OSC8_SCHEMES.has(match[1].toLowerCase());
3363
3363
  }
3364
3364
  __name(isSafeOscScheme, "isSafeOscScheme");
3365
- function trimTrailingUrlPunctuation(url) {
3365
+ var BARE_URL_BREAK_CHARACTERS = String.raw`\u3001-\u3004\u3008-\u3020\u302e-\u3030\u3036-\u3037\u303d-\u303f\uff01-\uff0f\uff1a-\uff20\uff3b-\uff40\uff5b-\uff65\ufe10-\ufe1f\ufe30-\ufe32\ufe35-\ufe6f`;
3366
+ var BARE_URL_BREAK_PATTERN = new RegExp(`[${BARE_URL_BREAK_CHARACTERS}]`);
3367
+ function trimTrailingUrlPunctuation(url, nextCharacter = "") {
3366
3368
  let openParen = 0;
3367
3369
  let openBracket = 0;
3368
3370
  let openBrace = 0;
@@ -3379,6 +3381,9 @@ function trimTrailingUrlPunctuation(url) {
3379
3381
  else if (cc === 125) closeBrace++;
3380
3382
  }
3381
3383
  let end = url.length;
3384
+ if (url.charCodeAt(end - 1) === 95 && BARE_URL_BREAK_PATTERN.test(nextCharacter)) {
3385
+ end--;
3386
+ }
3382
3387
  while (end > 0) {
3383
3388
  const c = url.charCodeAt(end - 1);
3384
3389
  if (c === 46 || c === 44 || c === 59 || c === 58 || c === 33 || c === 63 || c === 39 || c === 34 || c === 96 || c === 62) {
@@ -3407,6 +3412,7 @@ function trimTrailingUrlPunctuation(url) {
3407
3412
  __name(trimTrailingUrlPunctuation, "trimTrailingUrlPunctuation");
3408
3413
  var MD_LINK_PATTERN = String.raw`\[.*?\]\((?:[^()]|\([^()]*\))*\)`;
3409
3414
  var MD_LINK_CAPTURE = /^\[(.*?)\]\(((?:[^()]|\([^()]*\))*)\)$/;
3415
+ var BARE_URL_PATTERN = String.raw`https?:\/\/[^\s${BARE_URL_BREAK_CHARACTERS}]+`;
3410
3416
  function shouldWrapMarkdownLink(url, canHyperlink) {
3411
3417
  return canHyperlink && isSafeOscScheme(url) && !/\s/.test(url);
3412
3418
  }
@@ -3449,7 +3455,7 @@ var MIN_COLUMN_WIDTH = 3;
3449
3455
  var ABSOLUTE_MIN_HORIZONTAL_TABLE_WIDTH = 24;
3450
3456
  var SAFETY_MARGIN = 4;
3451
3457
  var INLINE_MARKDOWN_REGEX = new RegExp(
3452
- String.raw`(\*\*.*?\*\*|\*.*?\*|_.*?_|~~.*?~~|${MD_LINK_PATTERN}|` + String.raw`${INLINE_CODE_SPAN_PATTERN_SOURCE}|<u>.*?<\/u>|https?:\/\/\S+)`,
3458
+ String.raw`(\*\*.*?\*\*|\*.*?\*|(?<![\w\u3400-\u9fff])_(?!_)[^_]*_(?![\w\u3400-\u9fff])|~~.*?~~|${MD_LINK_PATTERN}|` + String.raw`${INLINE_CODE_SPAN_PATTERN_SOURCE}|<u>.*?<\/u>|${BARE_URL_PATTERN})`,
3453
3459
  "g"
3454
3460
  );
3455
3461
  var INK_COLOR_TO_ANSI = {
@@ -3644,7 +3650,10 @@ function renderMarkdownToAnsi(text, enableInlineMath = false) {
3644
3650
  } else if (/^https?:\/\//.test(fullMatch)) {
3645
3651
  const visible = applyColor(fullMatch, theme.text.link);
3646
3652
  if (canHyperlink) {
3647
- const trimmedUrl = trimTrailingUrlPunctuation(fullMatch);
3653
+ const trimmedUrl = trimTrailingUrlPunctuation(
3654
+ fullMatch,
3655
+ text[index + fullMatch.length]
3656
+ );
3648
3657
  rendered = isSafeOscScheme(trimmedUrl) ? `${osc8Open(trimmedUrl)}${visible}${osc8Close()}` : visible;
3649
3658
  } else {
3650
3659
  rendered = visible;
@@ -3930,7 +3939,7 @@ var INLINE_CODE_MARKER_LENGTH = 1;
3930
3939
  var UNDERLINE_TAG_START_LENGTH = 3;
3931
3940
  var UNDERLINE_TAG_END_LENGTH = 4;
3932
3941
  var INLINE_MARKDOWN_REGEX2 = new RegExp(
3933
- String.raw`(\*\*.*?\*\*|\*.*?\*|_.*?_|~~.*?~~|${MD_LINK_PATTERN}|` + String.raw`${INLINE_CODE_SPAN_PATTERN_SOURCE}|<u>.*?<\/u>|https?:\/\/\S+)`,
3942
+ String.raw`(\*\*.*?\*\*|\*.*?\*|(?<![\w\u3400-\u9fff])_(?!_)[^_]*_(?![\w\u3400-\u9fff])|~~.*?~~|${MD_LINK_PATTERN}|` + String.raw`${INLINE_CODE_SPAN_PATTERN_SOURCE}|<u>.*?<\/u>|${BARE_URL_PATTERN})`,
3934
3943
  "g"
3935
3944
  );
3936
3945
  var debugLogger2 = createDebugLogger("INLINE_MARKDOWN");
@@ -4037,7 +4046,10 @@ var RenderInlineInternal = /* @__PURE__ */ __name(({
4037
4046
  )
4038
4047
  ) }, key);
4039
4048
  } else if (fullMatch.match(/^https?:\/\//)) {
4040
- const trimmedUrl = canHyperlink ? trimTrailingUrlPunctuation(fullMatch) : fullMatch;
4049
+ const trimmedUrl = canHyperlink ? trimTrailingUrlPunctuation(
4050
+ fullMatch,
4051
+ text[index + fullMatch.length]
4052
+ ) : fullMatch;
4041
4053
  const wrapOsc8 = canHyperlink && isSafeOscScheme(trimmedUrl);
4042
4054
  renderedNode = /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(Text, { color: theme.text.link, children: [
4043
4055
  wrapOsc8 ? osc8Open(trimmedUrl) : null,
@@ -7300,20 +7312,24 @@ var defaultKeyBindings = {
7300
7312
  { key: "n", ctrl: true }
7301
7313
  ],
7302
7314
  // Completion category tab switching (for the tabbed @ completion UI).
7303
- // Bound to Ctrl+arrows rather than plain arrows so the bare arrow keys keep
7304
- // moving the caret in the editable input buffer (plain arrows only switch
7305
- // tabs in modal dialogs, which have no text buffer). Alt/Option+arrows still
7306
- // perform word movement.
7307
- // Ctrl+←/→ is the primary binding but many terminals intercept it for
7308
- // word-jump. Ctrl+Tab / Ctrl+Shift+Tab are alternatives that are less
7309
- // commonly intercepted (#8069).
7315
+ // Bound to the BARE arrow keys: Ctrl+←/→ was the original binding but many
7316
+ // terminals intercept it for word-jump, and on macOS the system claims it
7317
+ // for Mission Control, so the documented gesture was unreachable for most
7318
+ // users (#8069).
7319
+ //
7320
+ // Tradeoff, accepted deliberately: while the `@` category tabs are visible,
7321
+ // the bare arrows no longer move the caret in the input buffer — press Esc
7322
+ // to dismiss the menu first. InputPrompt only renders and handles the tabs
7323
+ // when they own the arrows, so search and attachment navigation keep their
7324
+ // normal behavior.
7325
+ //
7326
+ // Modifiers are pinned false so Alt/Option+arrow word movement and any
7327
+ // Ctrl+arrow terminal binding fall through untouched.
7310
7328
  ["completionTabLeft" /* COMPLETION_TAB_LEFT */]: [
7311
- { key: "left", shift: false, ctrl: true, command: false },
7312
- { key: "tab", shift: true, ctrl: true, command: false }
7329
+ { key: "left", shift: false, ctrl: false, meta: false }
7313
7330
  ],
7314
7331
  ["completionTabRight" /* COMPLETION_TAB_RIGHT */]: [
7315
- { key: "right", shift: false, ctrl: true, command: false },
7316
- { key: "tab", shift: false, ctrl: true, command: false }
7332
+ { key: "right", shift: false, ctrl: false, meta: false }
7317
7333
  ],
7318
7334
  // Text input
7319
7335
  // Must also exclude shift to allow shift+enter for newline
@@ -15333,8 +15349,9 @@ function findAllPendingUpdates(settings, currentModel) {
15333
15349
  const metadata = getProviderMetadata(settings, metadataKey);
15334
15350
  if (!metadata.version) continue;
15335
15351
  const baseUrl = metadata.baseUrl || resolveBaseUrl(provider);
15336
- const currentTemplate = buildProviderTemplate(provider, baseUrl);
15337
- const currentVersion = computeModelListVersion(currentTemplate);
15352
+ const currentVersion = computeModelListVersion(
15353
+ buildProviderTemplate(provider, baseUrl)
15354
+ );
15338
15355
  if (metadata.version === currentVersion) continue;
15339
15356
  if (metadata.ignoredVersion === currentVersion) continue;
15340
15357
  if (metadata.postponedVersion === currentVersion && typeof metadata.postponedAt === "number" && Date.now() - metadata.postponedAt >= 0 && Date.now() - metadata.postponedAt < LATER_COOLDOWN_MS) {
@@ -15352,9 +15369,10 @@ function useProviderUpdates(settings, config, addItem) {
15352
15369
  const [updateRequest, setUpdateRequest] = (0, import_react39.useState)();
15353
15370
  const migrated = (0, import_react39.useRef)(false);
15354
15371
  const executeUpdate = (0, import_react39.useCallback)(
15355
- async (providerCfg, baseUrl) => {
15372
+ async (pending) => {
15356
15373
  try {
15357
- const resolved = resolveBaseUrl(providerCfg, baseUrl);
15374
+ const providerCfg = pending.provider;
15375
+ const resolved = resolveBaseUrl(providerCfg, pending.baseUrl);
15358
15376
  const defaultIds = getDefaultModelIds(providerCfg);
15359
15377
  const customIds = readInstalledOwnedIds(settings, providerCfg).filter(
15360
15378
  (id) => !defaultIds.includes(id)
@@ -15364,7 +15382,9 @@ function useProviderUpdates(settings, config, addItem) {
15364
15382
  apiKey: "",
15365
15383
  modelIds: [...defaultIds, ...customIds]
15366
15384
  });
15385
+ installPlan.providerState[`${PROVIDER_METADATA_NS}.${pending.metadataKey}`]["version"] = pending.currentVersion;
15367
15386
  delete installPlan.env;
15387
+ delete installPlan.modelSelection;
15368
15388
  const previousModel = config.getModel();
15369
15389
  const activeConfig = config.getContentGeneratorConfig();
15370
15390
  const updatesActiveProvider = activeConfig?.authType === providerCfg.protocol && providerMatchesCredentials(
@@ -15372,13 +15392,6 @@ function useProviderUpdates(settings, config, addItem) {
15372
15392
  activeConfig.baseUrl,
15373
15393
  activeConfig.apiKeyEnvKey
15374
15394
  );
15375
- const newConfigs = installPlan.modelProviders?.[0]?.models ?? [];
15376
- const previousModelStillAvailable = newConfigs.some(
15377
- (cfg) => cfg.id === previousModel
15378
- );
15379
- if (!updatesActiveProvider || previousModelStillAvailable) {
15380
- delete installPlan.modelSelection;
15381
- }
15382
15395
  const settingsAdapter = createLoadedSettingsAdapter(settings);
15383
15396
  await applyProviderInstallPlan(installPlan, {
15384
15397
  settings: {
@@ -15390,7 +15403,7 @@ function useProviderUpdates(settings, config, addItem) {
15390
15403
  }, "setValue")
15391
15404
  },
15392
15405
  reloadModelProviders: /* @__PURE__ */ __name((mp) => config.reloadModelProvidersConfig(mp), "reloadModelProviders"),
15393
- syncAuthState: /* @__PURE__ */ __name((authType, modelId, baseUrl2) => config.getModelsConfig().syncAfterAuthRefresh(authType, modelId, baseUrl2), "syncAuthState"),
15406
+ syncAuthState: /* @__PURE__ */ __name((authType, modelId, baseUrl) => config.getModelsConfig().syncAfterAuthRefresh(authType, modelId, baseUrl), "syncAuthState"),
15394
15407
  ...updatesActiveProvider && {
15395
15408
  refreshAuth: /* @__PURE__ */ __name((authType) => config.refreshAuth(authType), "refreshAuth")
15396
15409
  }
@@ -15463,7 +15476,7 @@ function useProviderUpdates(settings, config, addItem) {
15463
15476
  setUpdateRequest(void 0);
15464
15477
  if (choice === "update") {
15465
15478
  for (const p of pendingList) {
15466
- await executeUpdate(p.provider, p.baseUrl);
15479
+ await executeUpdate(p);
15467
15480
  }
15468
15481
  } else if (choice === "skip") {
15469
15482
  const persistScope = getPersistScopeForModelSelection(settings);
@@ -12,7 +12,7 @@ import {
12
12
  } from "./chunk-VFMASYQA.js";
13
13
  import {
14
14
  isWorkspaceTrusted
15
- } from "./chunk-ZOSTTOUJ.js";
15
+ } from "./chunk-GWVUR3QZ.js";
16
16
  import {
17
17
  require_main
18
18
  } from "./chunk-5M6IDOMF.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  t
5
- } from "./chunk-WP5VOXF7.js";
5
+ } from "./chunk-UEOKWYGY.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -14,7 +14,7 @@ import {
14
14
  } from "./chunk-HGCQ5SE7.js";
15
15
  import {
16
16
  CLIENT_MCP_OVER_WS_CONFIG_FLAG
17
- } from "./chunk-M2PNLYGY.js";
17
+ } from "./chunk-W5UC37EE.js";
18
18
  import {
19
19
  MAX_WORKSPACE_PATH_LENGTH,
20
20
  translateAndCheckAbsoluteWorkspacePath
@@ -1263,6 +1263,13 @@ var SERVE_CAPABILITY_REGISTRY = {
1263
1263
  session_side_task: { since: "v1" },
1264
1264
  session_prompt: { since: "v1" },
1265
1265
  session_mid_turn_message_mutation: { since: "v1" },
1266
+ // Daemon-owned reconciliation surface for mid-turn messages:
1267
+ // `GET /session/:id/mid-turn-messages` returns the messages still waiting
1268
+ // in the queue plus bounded settled/promoted id rings. Clients pre-flight
1269
+ // this tag before calling the route; an
1270
+ // older daemon without it leaves them on the legacy client-fallback
1271
+ // behavior. Client-generated message ids make retries idempotent.
1272
+ session_mid_turn_message_query: { since: "v1" },
1266
1273
  session_cancel: { since: "v1" },
1267
1274
  session_events: { since: "v1" },
1268
1275
  session_artifacts: { since: "v1" },
@@ -4,7 +4,7 @@ import {
4
4
  Client,
5
5
  So,
6
6
  StdioClientTransport
7
- } from "./chunk-XX7QFP34.js";
7
+ } from "./chunk-EI3NWELG.js";
8
8
  import "./chunk-GOFAQQZA.js";
9
9
  import "./chunk-5M6IDOMF.js";
10
10
  import "./chunk-TWPJO254.js";
@@ -14,7 +14,7 @@ import "./chunk-MVUQRLOH.js";
14
14
  import "./chunk-XCWO3SMQ.js";
15
15
  import "./chunk-7MH4J33A.js";
16
16
  import "./chunk-6PVPNMXU.js";
17
- import "./chunk-K4ADGWHU.js";
17
+ import "./chunk-TRRF5BSP.js";
18
18
  import "./chunk-IRH27ZC2.js";
19
19
  import "./chunk-QHWCP53L.js";
20
20
  import "./chunk-GNPNYXJB.js";
@@ -28,7 +28,7 @@ import "./chunk-KRXPRVGL.js";
28
28
  import "./chunk-GM463R2B.js";
29
29
  import "./chunk-SEZ556DZ.js";
30
30
  import "./chunk-2FRY5CRX.js";
31
- import "./chunk-67N6HB5H.js";
31
+ import "./chunk-QUI267ZP.js";
32
32
  import "./chunk-WAUGQKUU.js";
33
33
  import "./chunk-DZUO626D.js";
34
34
  import "./chunk-4TRQPFDP.js";
@@ -47,7 +47,7 @@ import "./chunk-4PYCZH2V.js";
47
47
  import "./chunk-P3QQPMQA.js";
48
48
  import "./chunk-SR7RZ4MS.js";
49
49
  import "./chunk-M6HMMKVG.js";
50
- import "./chunk-DGEIYUC3.js";
50
+ import "./chunk-KM73TBQ4.js";
51
51
  import "./chunk-MPHPFVKK.js";
52
52
  import "./chunk-AXMWHKXA.js";
53
53
  import "./chunk-GLCZKT5V.js";
@@ -63,7 +63,7 @@ import {
63
63
  BaseDeclarativeTool,
64
64
  BaseToolInvocation
65
65
  } from "./chunk-PYQADEFD.js";
66
- import "./chunk-PVOGHGSF.js";
66
+ import "./chunk-Y4R47ZUH.js";
67
67
  import "./chunk-F6WFNA7U.js";
68
68
  import "./chunk-46UV252V.js";
69
69
  import "./chunk-ZBVS26BY.js";
@@ -4,12 +4,12 @@ import {
4
4
  collectContextData,
5
5
  contextCommand,
6
6
  formatContextUsageText
7
- } from "./chunk-DH5YXSIF.js";
7
+ } from "./chunk-F6WDTQ3M.js";
8
8
  import "./chunk-4WGODMVR.js";
9
9
  import "./chunk-EKTCKZV5.js";
10
- import "./chunk-WP5VOXF7.js";
10
+ import "./chunk-UEOKWYGY.js";
11
11
  import "./chunk-5EJZE3FP.js";
12
- import "./chunk-XX7QFP34.js";
12
+ import "./chunk-EI3NWELG.js";
13
13
  import "./chunk-GOFAQQZA.js";
14
14
  import "./chunk-5M6IDOMF.js";
15
15
  import "./chunk-TWPJO254.js";
@@ -19,7 +19,7 @@ import "./chunk-MVUQRLOH.js";
19
19
  import "./chunk-XCWO3SMQ.js";
20
20
  import "./chunk-7MH4J33A.js";
21
21
  import "./chunk-6PVPNMXU.js";
22
- import "./chunk-K4ADGWHU.js";
22
+ import "./chunk-TRRF5BSP.js";
23
23
  import "./chunk-IRH27ZC2.js";
24
24
  import "./chunk-QHWCP53L.js";
25
25
  import "./chunk-GNPNYXJB.js";
@@ -33,7 +33,7 @@ import "./chunk-KRXPRVGL.js";
33
33
  import "./chunk-GM463R2B.js";
34
34
  import "./chunk-SEZ556DZ.js";
35
35
  import "./chunk-2FRY5CRX.js";
36
- import "./chunk-67N6HB5H.js";
36
+ import "./chunk-QUI267ZP.js";
37
37
  import "./chunk-WAUGQKUU.js";
38
38
  import "./chunk-DZUO626D.js";
39
39
  import "./chunk-4TRQPFDP.js";
@@ -52,7 +52,7 @@ import "./chunk-4PYCZH2V.js";
52
52
  import "./chunk-P3QQPMQA.js";
53
53
  import "./chunk-SR7RZ4MS.js";
54
54
  import "./chunk-M6HMMKVG.js";
55
- import "./chunk-DGEIYUC3.js";
55
+ import "./chunk-KM73TBQ4.js";
56
56
  import "./chunk-MPHPFVKK.js";
57
57
  import "./chunk-AXMWHKXA.js";
58
58
  import "./chunk-GLCZKT5V.js";
@@ -65,7 +65,7 @@ import "./chunk-FVKHVJZQ.js";
65
65
  import "./chunk-COBO5EBO.js";
66
66
  import "./chunk-6ZRFAKXK.js";
67
67
  import "./chunk-PYQADEFD.js";
68
- import "./chunk-PVOGHGSF.js";
68
+ import "./chunk-Y4R47ZUH.js";
69
69
  import "./chunk-F6WFNA7U.js";
70
70
  import "./chunk-46UV252V.js";
71
71
  import "./chunk-ZBVS26BY.js";
@@ -6,7 +6,7 @@ import {
6
6
  findProviderById,
7
7
  getDefaultModelIds,
8
8
  resolveBaseUrl
9
- } from "./chunk-XX7QFP34.js";
9
+ } from "./chunk-EI3NWELG.js";
10
10
  import "./chunk-GOFAQQZA.js";
11
11
  import "./chunk-5M6IDOMF.js";
12
12
  import "./chunk-TWPJO254.js";
@@ -16,7 +16,7 @@ import "./chunk-MVUQRLOH.js";
16
16
  import "./chunk-XCWO3SMQ.js";
17
17
  import "./chunk-7MH4J33A.js";
18
18
  import "./chunk-6PVPNMXU.js";
19
- import "./chunk-K4ADGWHU.js";
19
+ import "./chunk-TRRF5BSP.js";
20
20
  import "./chunk-IRH27ZC2.js";
21
21
  import "./chunk-QHWCP53L.js";
22
22
  import "./chunk-GNPNYXJB.js";
@@ -30,7 +30,7 @@ import "./chunk-KRXPRVGL.js";
30
30
  import "./chunk-GM463R2B.js";
31
31
  import "./chunk-SEZ556DZ.js";
32
32
  import "./chunk-2FRY5CRX.js";
33
- import "./chunk-67N6HB5H.js";
33
+ import "./chunk-QUI267ZP.js";
34
34
  import "./chunk-WAUGQKUU.js";
35
35
  import "./chunk-DZUO626D.js";
36
36
  import {
@@ -66,7 +66,7 @@ import "./chunk-4PYCZH2V.js";
66
66
  import "./chunk-P3QQPMQA.js";
67
67
  import "./chunk-SR7RZ4MS.js";
68
68
  import "./chunk-M6HMMKVG.js";
69
- import "./chunk-DGEIYUC3.js";
69
+ import "./chunk-KM73TBQ4.js";
70
70
  import "./chunk-MPHPFVKK.js";
71
71
  import "./chunk-AXMWHKXA.js";
72
72
  import "./chunk-GLCZKT5V.js";
@@ -79,7 +79,7 @@ import "./chunk-FVKHVJZQ.js";
79
79
  import "./chunk-COBO5EBO.js";
80
80
  import "./chunk-6ZRFAKXK.js";
81
81
  import "./chunk-PYQADEFD.js";
82
- import "./chunk-PVOGHGSF.js";
82
+ import "./chunk-Y4R47ZUH.js";
83
83
  import "./chunk-F6WFNA7U.js";
84
84
  import "./chunk-46UV252V.js";
85
85
  import "./chunk-ZBVS26BY.js";
@@ -2,12 +2,12 @@
2
2
  "use strict";
3
3
  import {
4
4
  SessionNotFoundError
5
- } from "./chunk-LP2QGNSP.js";
5
+ } from "./chunk-624NHDGB.js";
6
6
  import "./chunk-6PLDPT2C.js";
7
7
  import {
8
8
  SessionService,
9
9
  stripTerminalControlSequences
10
- } from "./chunk-XX7QFP34.js";
10
+ } from "./chunk-EI3NWELG.js";
11
11
  import "./chunk-GOFAQQZA.js";
12
12
  import "./chunk-5M6IDOMF.js";
13
13
  import "./chunk-TWPJO254.js";
@@ -17,7 +17,7 @@ import "./chunk-MVUQRLOH.js";
17
17
  import "./chunk-XCWO3SMQ.js";
18
18
  import "./chunk-7MH4J33A.js";
19
19
  import "./chunk-6PVPNMXU.js";
20
- import "./chunk-K4ADGWHU.js";
20
+ import "./chunk-TRRF5BSP.js";
21
21
  import "./chunk-IRH27ZC2.js";
22
22
  import "./chunk-QHWCP53L.js";
23
23
  import "./chunk-GNPNYXJB.js";
@@ -31,7 +31,7 @@ import "./chunk-KRXPRVGL.js";
31
31
  import "./chunk-GM463R2B.js";
32
32
  import "./chunk-SEZ556DZ.js";
33
33
  import "./chunk-2FRY5CRX.js";
34
- import "./chunk-67N6HB5H.js";
34
+ import "./chunk-QUI267ZP.js";
35
35
  import "./chunk-WAUGQKUU.js";
36
36
  import "./chunk-DZUO626D.js";
37
37
  import "./chunk-4TRQPFDP.js";
@@ -52,7 +52,7 @@ import "./chunk-4PYCZH2V.js";
52
52
  import "./chunk-P3QQPMQA.js";
53
53
  import "./chunk-SR7RZ4MS.js";
54
54
  import "./chunk-M6HMMKVG.js";
55
- import "./chunk-DGEIYUC3.js";
55
+ import "./chunk-KM73TBQ4.js";
56
56
  import "./chunk-MPHPFVKK.js";
57
57
  import "./chunk-AXMWHKXA.js";
58
58
  import "./chunk-GLCZKT5V.js";
@@ -65,7 +65,7 @@ import "./chunk-FVKHVJZQ.js";
65
65
  import "./chunk-COBO5EBO.js";
66
66
  import "./chunk-6ZRFAKXK.js";
67
67
  import "./chunk-PYQADEFD.js";
68
- import "./chunk-PVOGHGSF.js";
68
+ import "./chunk-Y4R47ZUH.js";
69
69
  import "./chunk-F6WFNA7U.js";
70
70
  import "./chunk-46UV252V.js";
71
71
  import "./chunk-ZBVS26BY.js";
@@ -2475,8 +2475,8 @@ var DaemonClient = class {
2475
2475
  /**
2476
2476
  * Queue a user message typed while the session's turn is still running. The
2477
2477
  * ACP child drains it between tool batches so the model sees it before the
2478
- * turn ends. Resolves `{ accepted: false }` when the session is idle — the
2479
- * caller should then send the message as a normal next-turn prompt.
2478
+ * turn ends. Every accepted request is daemon-owned; a caller-supplied id
2479
+ * makes ambiguous retries idempotent.
2480
2480
  */
2481
2481
  async enqueueMidTurnMessage(sessionId, message, opts) {
2482
2482
  return await this.fetchWithTimeout(
@@ -2487,7 +2487,7 @@ var DaemonClient = class {
2487
2487
  { "Content-Type": "application/json" },
2488
2488
  opts?.clientId
2489
2489
  ),
2490
- body: JSON.stringify({ message }),
2490
+ body: JSON.stringify({ message, messageId: opts?.messageId }),
2491
2491
  signal: opts?.signal
2492
2492
  },
2493
2493
  async (res) => {
@@ -2519,6 +2519,33 @@ var DaemonClient = class {
2519
2519
  }
2520
2520
  );
2521
2521
  }
2522
+ /**
2523
+ * Fetch the mid-turn reconciliation snapshot for a session: messages still
2524
+ * waiting in the daemon queue plus bounded terminal id rings.
2525
+ * Callers reconcile against this
2526
+ * instead of resending accepted messages at the idle boundary. Only available
2527
+ * when the daemon advertises `session_mid_turn_message_query` — older
2528
+ * daemons answer 404 and callers keep the legacy behavior.
2529
+ */
2530
+ async getMidTurnMessages(sessionId, opts) {
2531
+ return await this.fetchWithTimeout(
2532
+ `${this.baseUrl}/session/${urlEncode(sessionId)}/mid-turn-messages`,
2533
+ {
2534
+ method: "GET",
2535
+ headers: this.headers({}, opts?.clientId),
2536
+ signal: opts?.signal
2537
+ },
2538
+ async (res) => {
2539
+ if (!res.ok) {
2540
+ throw await this.failOnError(
2541
+ res,
2542
+ "GET /session/:id/mid-turn-messages"
2543
+ );
2544
+ }
2545
+ return await res.json();
2546
+ }
2547
+ );
2548
+ }
2522
2549
  /**
2523
2550
  * List prompts in the daemon's per-session pending queue. Includes the
2524
2551
  * currently running prompt (`state: 'running'`) and any FIFO-waiting
@@ -5122,12 +5149,13 @@ var DaemonSessionClient = class _DaemonSessionClient {
5122
5149
  /**
5123
5150
  * Queue a user message typed while this session's turn is still running so
5124
5151
  * the ACP child can drain it mid-turn. Forwards the client id bound at
5125
- * create/attach. Resolves `{ accepted: false }` when the session is idle —
5126
- * the caller should then send the message as a normal next-turn prompt.
5152
+ * create/attach. Accepted requests become daemon-owned even when the active
5153
+ * turn settles while the request is in flight.
5127
5154
  */
5128
5155
  async enqueueMidTurnMessage(message, opts) {
5129
5156
  return await this.client.enqueueMidTurnMessage(this.sessionId, message, {
5130
5157
  ...opts?.signal ? { signal: opts.signal } : {},
5158
+ ...opts?.messageId ? { messageId: opts.messageId } : {},
5131
5159
  ...this.clientId ? { clientId: this.clientId } : {}
5132
5160
  });
5133
5161
  }
@@ -5136,6 +5164,19 @@ var DaemonSessionClient = class _DaemonSessionClient {
5136
5164
  ...this.clientId ? { clientId: this.clientId } : {}
5137
5165
  });
5138
5166
  }
5167
+ /**
5168
+ * Fetch the mid-turn reconciliation snapshot (queue + delivery-state rings) for
5169
+ * this session. Forwards the bound client id. See
5170
+ * `DaemonClient.getMidTurnMessages` — requires the daemon to advertise
5171
+ * `session_mid_turn_message_query`; older daemons reject with 404 and
5172
+ * callers preserve their current state.
5173
+ */
5174
+ async getMidTurnMessages(opts) {
5175
+ return await this.client.getMidTurnMessages(this.sessionId, {
5176
+ ...opts?.signal ? { signal: opts.signal } : {},
5177
+ ...this.clientId ? { clientId: this.clientId } : {}
5178
+ });
5179
+ }
5139
5180
  async getPendingPrompts() {
5140
5181
  return await this.client.getPendingPrompts(this.sessionId, {
5141
5182
  ...this.clientId ? { clientId: this.clientId } : {}