@qwen-code/qwen-code 0.22.0 → 0.22.2-preview.0

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 (449) hide show
  1. package/bundled/computer-use/SKILL.md +229 -0
  2. package/bundled/computer-use/agents/openai.yaml +4 -0
  3. package/bundled/coordinate/SKILL.md +5 -5
  4. package/bundled/qc-helper/docs/configuration/auth.md +7 -7
  5. package/bundled/qc-helper/docs/configuration/model-providers.md +70 -9
  6. package/bundled/qc-helper/docs/configuration/settings.md +40 -40
  7. package/bundled/qc-helper/docs/extension/introduction.md +3 -1
  8. package/bundled/qc-helper/docs/features/channels/_meta.ts +1 -0
  9. package/bundled/qc-helper/docs/features/channels/dingtalk.md +12 -0
  10. package/bundled/qc-helper/docs/features/channels/dws.md +120 -0
  11. package/bundled/qc-helper/docs/features/channels/overview.md +3 -3
  12. package/bundled/qc-helper/docs/features/code-review.md +25 -21
  13. package/bundled/qc-helper/docs/features/commands.md +2 -2
  14. package/bundled/qc-helper/docs/features/computer-use.md +57 -51
  15. package/bundled/qc-helper/docs/features/mcp.md +35 -12
  16. package/bundled/qc-helper/docs/features/sub-agents.md +1 -1
  17. package/bundled/qc-helper/docs/features/worktree.md +1 -1
  18. package/bundled/qc-helper/docs/overview.md +1 -1
  19. package/bundled/qc-helper/docs/quickstart.md +1 -1
  20. package/bundled/qc-helper/docs/qwen-serve.md +29 -6
  21. package/bundled/review/SKILL.md +119 -417
  22. package/bundled/review/references/aone.md +18 -0
  23. package/bundled/review/references/persistence.md +105 -0
  24. package/bundled/review/references/posting.md +270 -0
  25. package/chunks/MaxSizedBox-XYQOMOBE.js +112 -0
  26. package/chunks/{StandaloneSessionPicker-KTHPCSR6.js → StandaloneSessionPicker-KFMJILVY.js} +87 -86
  27. package/chunks/{acp-startup-profiler-T4GEAPLX.js → acp-startup-profiler-GNYAL6LI.js} +2 -2
  28. package/chunks/{acpAgent-CRY3JZ5O.js → acpAgent-KNFTTDWL.js} +2216 -1931
  29. package/chunks/agent-6V6MZOA7.js +97 -0
  30. package/chunks/agent-headless-3ZC4LX3E.js +87 -0
  31. package/chunks/{anthropicContentGenerator-Y2OX6LS4.js → anthropicContentGenerator-U76GTVB6.js} +128 -58
  32. package/chunks/{artifact-tool-SBXMTVCB.js → artifact-tool-XDJCZZCF.js} +2 -2
  33. package/chunks/{askUserQuestion-KEQJRFD6.js → askUserQuestion-ZXXERLEV.js} +2 -2
  34. package/chunks/bridge-LFFLHLU5.js +119 -0
  35. package/chunks/{ca-D3F4S6NG.js → ca-7HPYOYSZ.js} +3 -0
  36. package/chunks/{channel-management-service-IRTT7RNE.js → channel-management-service-HXXS3HOZ.js} +4 -4
  37. package/chunks/channel-settings-store-CAL2HWAH.js +117 -0
  38. package/chunks/{channel-worker-group-BJNMR2MP.js → channel-worker-group-EVDC2P4K.js} +8 -7
  39. package/chunks/{channel-worker-manager-EMA7CQDJ.js → channel-worker-manager-IJJZHGEI.js} +8 -7
  40. package/chunks/{channel-worker-supervisor-F6I6WSWW.js → channel-worker-supervisor-YSKB5GVB.js} +12 -7
  41. package/chunks/{chunk-2TRNCJK4.js → chunk-27ONXAFY.js} +1 -1
  42. package/chunks/{read-package-up-UXSW3YPB.js → chunk-2EAZ43JQ.js} +1 -0
  43. package/chunks/{chunk-DB2OKNTU.js → chunk-2FN2HNTI.js} +2 -2
  44. package/chunks/{chunk-KM73TBQ4.js → chunk-2LD5U7Q3.js} +31 -0
  45. package/chunks/{chunk-QJHPWLZC.js → chunk-2MHGD7EE.js} +1 -1
  46. package/chunks/{chunk-A5F2YNO6.js → chunk-2NNTE2ED.js} +245 -10
  47. package/chunks/{chunk-Z3JMO2CH.js → chunk-2SERYG4T.js} +1 -1
  48. package/chunks/{chunk-4J7OPYNS.js → chunk-2YDYDDE2.js} +6 -6
  49. package/chunks/{chunk-SE55HQGF.js → chunk-3B5DCAQU.js} +74 -52
  50. package/chunks/{chunk-UIRLQ3N7.js → chunk-3BV7TZNQ.js} +3 -3
  51. package/chunks/{chunk-2Z6LSQMF.js → chunk-3FSBMAYD.js} +1 -1
  52. package/chunks/{chunk-S4C4JJKE.js → chunk-3UXJFOB3.js} +5 -5
  53. package/chunks/{chunk-DJEHYM4H.js → chunk-3UZCLCXR.js} +3 -3
  54. package/chunks/{chunk-BUGYW6FB.js → chunk-4IDJQOCO.js} +1 -1
  55. package/chunks/chunk-4K7NQDCG.js +104 -0
  56. package/chunks/{chunk-WS7PAXXR.js → chunk-4N6UAPD3.js} +18 -13
  57. package/chunks/{chunk-VYC7XFYV.js → chunk-4PLAO7FS.js} +5 -5
  58. package/chunks/{chunk-UZPYR3EV.js → chunk-4TPAG3O7.js} +1 -1
  59. package/chunks/{chunk-2E3V7G6Y.js → chunk-4X5GYZFO.js} +55 -50
  60. package/chunks/{chunk-XYQHT3AW.js → chunk-4Z3PSHN4.js} +2 -2
  61. package/chunks/{chunk-PDL6LKB5.js → chunk-5AFPOEY3.js} +1 -1
  62. package/chunks/{chunk-BB5IMQCV.js → chunk-5CW26JIE.js} +2 -2
  63. package/chunks/{chunk-7KOFLDEP.js → chunk-5JTIYALA.js} +1 -1
  64. package/chunks/{chunk-U2UYQMM6.js → chunk-5NV2AN56.js} +3 -3
  65. package/chunks/{chunk-CXJHQVEK.js → chunk-5PA6UEYA.js} +4 -0
  66. package/chunks/{chunk-IBJ5S45N.js → chunk-5T4LWWNX.js} +2 -2
  67. package/chunks/{chunk-VUMLT7E5.js → chunk-5Y2JCJAH.js} +2 -2
  68. package/chunks/{chunk-BEGIBJAZ.js → chunk-6HOU52QX.js} +4 -4
  69. package/chunks/{chunk-GAHYKJPV.js → chunk-6US7BF3G.js} +7 -59
  70. package/chunks/{chunk-3CLIDIVQ.js → chunk-73WFGVIZ.js} +3 -3
  71. package/chunks/{chunk-ZZUVC6RI.js → chunk-76WGY6LW.js} +3 -3
  72. package/chunks/{chunk-XLDFW44M.js → chunk-77TOMRBG.js} +3 -3
  73. package/chunks/{chunk-ND7NOI4P.js → chunk-7CWEZQ6T.js} +0 -15
  74. package/chunks/{chunk-DWCKACFL.js → chunk-7DPKPBOQ.js} +2 -2
  75. package/chunks/{chunk-X7V3N6YH.js → chunk-7JJUFI36.js} +218 -37
  76. package/chunks/{chunk-45NQKMYB.js → chunk-7JPW6IYH.js} +1 -1
  77. package/chunks/{chunk-HDKCKCYO.js → chunk-7QGEJI7M.js} +1 -1
  78. package/chunks/{chunk-PHJJ3RVO.js → chunk-7XKW4CVK.js} +7 -15
  79. package/chunks/{chunk-O5Z7EB6Y.js → chunk-AYHQZBJ4.js} +170 -207
  80. package/chunks/{chunk-7DYNJFES.js → chunk-AYVIGUUK.js} +6 -1
  81. package/chunks/{chunk-43T5WDQ7.js → chunk-BFSFJR3D.js} +1 -1
  82. package/chunks/{chunk-OARZJFZX.js → chunk-BGWT7VBV.js} +4 -4
  83. package/chunks/{chunk-AP3B7LKD.js → chunk-BKDAF7ES.js} +2 -2
  84. package/chunks/{chunk-B6UBOIFE.js → chunk-BQBUZDDH.js} +14 -11
  85. package/chunks/{chunk-6PCOVQO2.js → chunk-BU7OUDQB.js} +8 -8
  86. package/chunks/{chunk-VLRBJ24J.js → chunk-BVE5EMIG.js} +2 -2
  87. package/chunks/{chunk-6UQSU7CQ.js → chunk-C2BAEV64.js} +58 -107
  88. package/chunks/{chunk-QKBYFU2Q.js → chunk-CFKIH3D3.js} +21 -1
  89. package/chunks/{chunk-URN2JIAQ.js → chunk-CITGRGCM.js} +2 -1
  90. package/chunks/{chunk-WU5E4HMO.js → chunk-CPPYZHBN.js} +1 -1
  91. package/chunks/{chunk-T6XLJRQY.js → chunk-D6XO27Z5.js} +36509 -5182
  92. package/chunks/{chunk-Q54XG7IX.js → chunk-DEYPMJPD.js} +1 -1
  93. package/chunks/{chunk-KSPRQSB4.js → chunk-DIMEPKCW.js} +52 -12
  94. package/chunks/{chunk-I432KXWD.js → chunk-DP7LABIB.js} +1 -1
  95. package/chunks/{chunk-P47E4SJC.js → chunk-DWRFOH3G.js} +3 -3
  96. package/chunks/{chunk-J5ZDDUKM.js → chunk-DX5FZGHZ.js} +4 -4
  97. package/chunks/{chunk-36OF5PRW.js → chunk-E4I5MVBR.js} +7 -3
  98. package/chunks/{chunk-AW27A43Y.js → chunk-E55H6BZ7.js} +93 -1
  99. package/chunks/{chunk-K623ENWT.js → chunk-E6FGMDFQ.js} +4 -0
  100. package/chunks/{chunk-YZBDKFRQ.js → chunk-EADEZDPO.js} +993 -895
  101. package/chunks/{chunk-5XUTPXQU.js → chunk-EAV3TENS.js} +6 -9
  102. package/chunks/{chunk-LI4YHTQK.js → chunk-EB4VDXNI.js} +1 -1
  103. package/chunks/{chunk-JOLJTKIG.js → chunk-EC5BONC3.js} +1 -1
  104. package/chunks/{chunk-W4CRPSC5.js → chunk-ELY4QVIB.js} +1 -1
  105. package/chunks/{chunk-AVCCKIZ6.js → chunk-EWBY3PFB.js} +1 -1
  106. package/chunks/chunk-FBX2SDQ4.js +48 -0
  107. package/chunks/{chunk-C72BXMJ5.js → chunk-FJWICLG7.js} +1 -1
  108. package/chunks/{chunk-LDGWX737.js → chunk-FN5C6C7G.js} +160 -59
  109. package/chunks/{chunk-3ZFJUBTP.js → chunk-FPH6TXD3.js} +1 -1
  110. package/chunks/{chunk-WRT324N6.js → chunk-FVDQ5E67.js} +3 -3
  111. package/chunks/{chunk-2A4C2MEG.js → chunk-FY62MBPS.js} +35 -12
  112. package/chunks/{chunk-VFACN2CE.js → chunk-GNMJNDZE.js} +1 -1
  113. package/chunks/{chunk-6QSA4JHL.js → chunk-GQAIZL3H.js} +2772 -814
  114. package/chunks/{chunk-PZRUV52H.js → chunk-GTUKW3I6.js} +20 -2
  115. package/chunks/{chunk-7DMTAQJ6.js → chunk-GXWY24QS.js} +132 -49
  116. package/chunks/chunk-GYTKQYDB.js +23 -0
  117. package/chunks/{chunk-VMJL7RH6.js → chunk-GZJUCMH4.js} +4 -4
  118. package/chunks/{chunk-2GXYDNXP.js → chunk-H2MDBYLL.js} +8 -8
  119. package/chunks/{chunk-RDG44S5I.js → chunk-H4JK2A2V.js} +2 -2
  120. package/chunks/{chunk-FVBVJEBG.js → chunk-HOANA6GC.js} +10 -8
  121. package/chunks/{chunk-AO4M6NMD.js → chunk-I6HWGOWD.js} +60 -20
  122. package/chunks/{chunk-7IV52LTO.js → chunk-I6VVOZDK.js} +2 -2
  123. package/chunks/{chunk-SQS55KR4.js → chunk-IJVDHPKD.js} +2 -2
  124. package/chunks/{chunk-QS4ENGVF.js → chunk-IKN3IUJP.js} +9 -8
  125. package/chunks/{chunk-2UZJWSVD.js → chunk-ILPXSKGQ.js} +2 -2
  126. package/chunks/{chunk-OVH5Y7KS.js → chunk-IN66KO3N.js} +19 -3
  127. package/chunks/{chunk-ZRYQMWEP.js → chunk-IPQA4SR5.js} +2 -2
  128. package/chunks/{chunk-AZF6SME3.js → chunk-JECO75XD.js} +3 -3
  129. package/chunks/{chunk-MQP3MHWN.js → chunk-JJJD6QCC.js} +21 -15
  130. package/chunks/chunk-JLGFGPZJ.js +346 -0
  131. package/chunks/{chunk-WZDM44SB.js → chunk-JUIJ3FXC.js} +7 -7
  132. package/chunks/{chunk-A6NRNRKE.js → chunk-JVPFTDBK.js} +1 -1
  133. package/chunks/{chunk-2J3OJGTL.js → chunk-K2OJUPOE.js} +1 -21
  134. package/chunks/{chunk-GHY5OIYP.js → chunk-K5PNJ6VL.js} +13 -13
  135. package/chunks/{chunk-NW35NVFN.js → chunk-K6FURWIX.js} +4 -4
  136. package/chunks/{chunk-6NFAEG54.js → chunk-KOJ6MHD5.js} +24 -13
  137. package/chunks/{chunk-A5F63FEW.js → chunk-L436XFLJ.js} +1 -1
  138. package/chunks/{chunk-GIWB5QLV.js → chunk-LJP2BBMK.js} +4 -4
  139. package/chunks/{chunk-FYZMB6DB.js → chunk-LKOSBI2M.js} +11 -11
  140. package/chunks/{create-sub-session-XBCVGNFU.js → chunk-LRKMQPMD.js} +4 -6
  141. package/chunks/{chunk-5HJUPACR.js → chunk-LRLMDV5X.js} +2 -2
  142. package/chunks/{chunk-MHG6NDS6.js → chunk-MB4OCRQ2.js} +2 -2
  143. package/chunks/{chunk-IIWGSX4L.js → chunk-MI7CMXPU.js} +1 -1
  144. package/chunks/{chunk-ZLCT4C5A.js → chunk-MZS7GEC7.js} +1 -1
  145. package/chunks/{chunk-WWUSHZ7M.js → chunk-N4B7VPXK.js} +5 -5
  146. package/chunks/{chunk-BMCSKS37.js → chunk-NUHCXGAD.js} +6 -6
  147. package/chunks/{chunk-XZJKSETB.js → chunk-O3BUXIPM.js} +3 -3
  148. package/chunks/{chunk-4XPSVIED.js → chunk-O5YGAEQS.js} +6 -6
  149. package/chunks/{chunk-ZRFUT5VV.js → chunk-OAAPGZVH.js} +7 -7
  150. package/chunks/{chunk-UU4WC7DK.js → chunk-OGZAQWJP.js} +82 -12
  151. package/chunks/{chunk-5XHAOUWD.js → chunk-OI2DR6QB.js} +3 -3
  152. package/chunks/{chunk-EFB657PR.js → chunk-OX44MOAN.js} +3 -3
  153. package/chunks/{chunk-LURJYO2T.js → chunk-OZ6KS6KW.js} +4 -0
  154. package/chunks/{chunk-4F5WV4RF.js → chunk-PAJGKZAA.js} +281 -10
  155. package/chunks/{chunk-HIK2OF33.js → chunk-PVBT5QPD.js} +1 -1
  156. package/chunks/{chunk-MPHLIJYL.js → chunk-QB5DD75E.js} +14 -8
  157. package/chunks/chunk-QHMLYMMS.js +32 -0
  158. package/chunks/{chunk-4CWDWDL6.js → chunk-RCDXSEJ5.js} +1 -1
  159. package/chunks/{chunk-L4HVF7LM.js → chunk-RQ5ASDFQ.js} +3 -3
  160. package/chunks/{chunk-PXOJLJ5W.js → chunk-RQAMNZ4Y.js} +333 -184
  161. package/chunks/{chunk-K52PZNU4.js → chunk-RRKNX553.js} +2 -2
  162. package/chunks/{chunk-RPJQ3O4M.js → chunk-RUJTCU46.js} +31 -41
  163. package/chunks/{chunk-62JOGZL5.js → chunk-RUQBJS34.js} +199 -87
  164. package/chunks/chunk-RXFQM6FQ.js +42 -0
  165. package/chunks/{chunk-SJ4HB27T.js → chunk-SDVF6A42.js} +3 -3
  166. package/chunks/{chunk-TBVSALA3.js → chunk-SKNVVYIJ.js} +3 -3
  167. package/chunks/{chunk-JGUBDRBC.js → chunk-SLEWBQWM.js} +3 -3
  168. package/chunks/{chunk-UUQFJILB.js → chunk-SQPOJ4ZI.js} +15 -3
  169. package/chunks/{chunk-ISJMN3ML.js → chunk-T2CRBIDJ.js} +1 -1
  170. package/chunks/{chunk-MZKWFWVG.js → chunk-T2HMXHYA.js} +6 -6
  171. package/chunks/{chunk-FEMQ6Y7W.js → chunk-T6OODF2U.js} +47 -126
  172. package/chunks/{chunk-KVGR4MCF.js → chunk-TOF4UZHH.js} +3 -3
  173. package/chunks/{chunk-7HFULI45.js → chunk-TQYZG5DU.js} +3 -3
  174. package/chunks/{chunk-LD5VIJ7S.js → chunk-TWSKM647.js} +1 -1
  175. package/chunks/{chunk-25NESM4G.js → chunk-TWUA5EIL.js} +29 -5
  176. package/chunks/{chunk-6FRJEE2S.js → chunk-U66FXEH2.js} +5 -5
  177. package/chunks/{chunk-7NBVNAJJ.js → chunk-UCSV2IZW.js} +3 -3
  178. package/chunks/chunk-UVDOONRU.js +20 -0
  179. package/chunks/{chunk-FDD2IUEL.js → chunk-UX3IFLJM.js} +229 -21
  180. package/chunks/{chunk-YDJRMQU4.js → chunk-V3GINY6K.js} +3 -3
  181. package/chunks/{chunk-XL5K4SVK.js → chunk-VL4YX3FH.js} +1 -1
  182. package/chunks/{chunk-ZS5BHEPD.js → chunk-VLY6XOBY.js} +1 -1
  183. package/chunks/{chunk-KIVGVFMM.js → chunk-VUZY6MEQ.js} +16 -4
  184. package/chunks/{chunk-OE52YHCZ.js → chunk-W2WRNJKX.js} +11 -11
  185. package/chunks/{chunk-YLFLHKDL.js → chunk-W3N5XAZ6.js} +1 -1
  186. package/chunks/{chunk-IWOWEENB.js → chunk-WBT3STGU.js} +385 -25
  187. package/chunks/{chunk-S3G6YFQC.js → chunk-WEGXPP5E.js} +1 -1
  188. package/chunks/{chunk-RDQ7QB4Y.js → chunk-XJS54K4A.js} +2 -2
  189. package/chunks/{chunk-7JBHIQS2.js → chunk-XO4NGYRP.js} +7 -13
  190. package/chunks/{chunk-F6WFNA7U.js → chunk-XZA32HII.js} +3 -6
  191. package/chunks/{chunk-VEND4KA4.js → chunk-YT5XN3HV.js} +1 -1
  192. package/chunks/{chunk-NUGZAFR2.js → chunk-ZEADBZLO.js} +147 -6
  193. package/chunks/chunk-ZELCTN6Y.js +29 -0
  194. package/chunks/{chunk-TQOF5KBL.js → chunk-ZEZKIS2K.js} +0 -31
  195. package/chunks/{chunk-IOSEW6KP.js → chunk-ZJG323IA.js} +5 -4
  196. package/chunks/{chunk-VSNPOSDN.js → chunk-ZKAZP2ZG.js} +107 -12
  197. package/chunks/{chunk-YMVFIYHV.js → chunk-ZLTEQYNC.js} +2 -2
  198. package/chunks/{chunk-O5BDEWBC.js → chunk-ZWKGZB2K.js} +3 -3
  199. package/chunks/chunk-ZYNTSXWK.js +32 -0
  200. package/chunks/config-utils-YMJNA25D.js +113 -0
  201. package/chunks/contextCommand-WMPSNKPG.js +108 -0
  202. package/chunks/{core-runtime-CES6JSVV.js → core-runtime-6TBMEULI.js} +63 -58
  203. package/chunks/create-sub-session-RVHSWVAP.js +17 -0
  204. package/chunks/{create-sub-session-UJTPMVOG.js → create-sub-session-SAOMTP62.js} +60 -58
  205. package/chunks/{cron-create-IKA56DAF.js → cron-create-IJGVR5R2.js} +4 -4
  206. package/chunks/{cron-delete-K5Q62EGH.js → cron-delete-4N5BI6GL.js} +4 -4
  207. package/chunks/{cron-list-QBFGAMP7.js → cron-list-2CATIPUX.js} +4 -4
  208. package/chunks/{daemon-RZZUPGOJ.js → daemon-NAYK4XXU.js} +51 -24
  209. package/chunks/{daemon-git-worktree-guard-3QY2BQYB.js → daemon-git-worktree-guard-TYLESM6G.js} +338 -92
  210. package/chunks/daemon-status-provider-YBQAZD3G.js +118 -0
  211. package/chunks/daemon-trust-policy-O75ZSIJN.js +114 -0
  212. package/chunks/{daemon-trust-policy-monitor-TK4K7M63.js → daemon-trust-policy-monitor-WWX7I7P6.js} +68 -66
  213. package/chunks/{de-RYUHH2C6.js → de-X6HLSIFE.js} +1 -0
  214. package/chunks/deferred-core-runtime-MGCCR6LA.js +116 -0
  215. package/chunks/{display-image-OEJMJV3S.js → display-image-DR55LL6M.js} +5 -5
  216. package/chunks/dist-4Q7NTUNB.js +2512 -0
  217. package/chunks/{dist-ESS34DHC.js → dist-6H6RZ5H6.js} +2 -2
  218. package/chunks/{dist-LZO24N3E.js → dist-7CKN54NL.js} +1 -1
  219. package/chunks/{dist-5EV2G6MC.js → dist-DJBNNPLN.js} +1 -1
  220. package/chunks/{dist-J6P3C52Z.js → dist-FVJZSIO4.js} +28 -7
  221. package/chunks/{dist-K7IQB53U.js → dist-SATKXKUR.js} +1 -1
  222. package/chunks/{dist-ES6HNUW2.js → dist-TJUDJTCB.js} +246 -17
  223. package/chunks/{dist-VVQBOKDH.js → dist-UQUFZDIY.js} +1 -1
  224. package/chunks/{dist-2OG3PGKO.js → dist-ZBVOXSKF.js} +3 -3
  225. package/chunks/earlyInputCapture-2EJKJET3.js +109 -0
  226. package/chunks/{edit-A2633SLR.js → edit-GBDKI5DZ.js} +48 -48
  227. package/chunks/{en-3RHLPITS.js → en-6MDBWMTG.js} +3 -0
  228. package/chunks/{enter-worktree-OIAHE2TB.js → enter-worktree-UOZ6ZTP7.js} +7 -8
  229. package/chunks/{enterPlanMode-SUGIKLR7.js → enterPlanMode-2KTIPPM3.js} +47 -47
  230. package/chunks/environment-XJ75LJ6N.js +131 -0
  231. package/chunks/errors-XEI3SJRV.js +115 -0
  232. package/chunks/{exit-worktree-3UT3SSWT.js → exit-worktree-G2QATUCV.js} +7 -8
  233. package/chunks/exitPlanMode-AUMYTFIQ.js +85 -0
  234. package/chunks/{fast-path-3AVP3G35.js → fast-path-TU7U2ETU.js} +28 -7
  235. package/chunks/{fast-path-settings-WHX3J3ZI.js → fast-path-settings-XMFBYFUH.js} +2 -2
  236. package/chunks/{fr-4PL5GHG4.js → fr-FTZWF462.js} +1 -0
  237. package/chunks/{gemini-7PVQWHTH.js → gemini-FKMYDP64.js} +129 -123
  238. package/chunks/{geminiContentGenerator-B2FOJJDJ.js → geminiContentGenerator-WSHP7CSR.js} +16 -13
  239. package/chunks/{glob-7YGXE6OV.js → glob-EOM6XK7H.js} +47 -47
  240. package/chunks/{goal-tools-TLJCE7YZ.js → goal-tools-CNVXMSZD.js} +72 -28
  241. package/chunks/{grep-6DV6LTON.js → grep-3NLSS32D.js} +6 -6
  242. package/chunks/handleAutoUpdate-S4CLP36D.js +111 -0
  243. package/chunks/i18n-XX7U2Q3X.js +126 -0
  244. package/chunks/{image-gen-7CSCJ73T.js → image-gen-63NN2H5N.js} +9 -11
  245. package/chunks/initializer-D3CA3272.js +115 -0
  246. package/chunks/installationInfo-HVDQOSIE.js +109 -0
  247. package/chunks/{ja-HZ7X7PQO.js → ja-2GL5FKYJ.js} +1 -0
  248. package/chunks/{keychain-token-storage-MTFTAESK.js → keychain-token-storage-3MGFRYGM.js} +2 -2
  249. package/chunks/list-XUDSTGT3.js +118 -0
  250. package/chunks/{list-agents-43XUEXJV.js → list-agents-EXRSHIDJ.js} +2 -2
  251. package/chunks/loadedSettingsAdapter-ZOJ4QEID.js +112 -0
  252. package/chunks/{loggingContentGenerator-RNE66CKK.js → loggingContentGenerator-TUDGCVUG.js} +27 -30
  253. package/chunks/{loop-wakeup-E54KDUXC.js → loop-wakeup-XBPB2BRO.js} +5 -5
  254. package/chunks/{ls-CGL2UC3H.js → ls-WFONAND2.js} +4 -4
  255. package/chunks/{lsp-5IKUO5DX.js → lsp-DUKPDUXN.js} +2 -2
  256. package/chunks/{managed-npm-update-Y3SC3GLJ.js → managed-npm-update-5K4FWFX2.js} +61 -59
  257. package/chunks/mcp-QJ6AUYE5.js +112 -0
  258. package/chunks/{monitor-PXYSGSUN.js → monitor-UUHIAGT7.js} +47 -47
  259. package/chunks/nonInteractiveCli-PAWO75YO.js +185 -0
  260. package/chunks/{notebook-edit-ISIBJVBR.js → notebook-edit-GZPB3Q57.js} +48 -48
  261. package/chunks/open-with-auth-4UI3KHUR.js +55 -0
  262. package/chunks/{openaiContentGenerator-6TBOPEGT.js → openaiContentGenerator-RPP6YBS3.js} +29 -30
  263. package/chunks/pidfile-RF3WUFKR.js +113 -0
  264. package/chunks/{processUtils-YK2TDTTU.js → processUtils-ENAY2GSA.js} +2 -2
  265. package/chunks/prompt-terminal-ledger-4CCXZ2LF.js +107 -0
  266. package/chunks/{pt-QT5N2Q6Q.js → pt-XN2YWJVM.js} +1 -0
  267. package/chunks/{qwenContentGenerator-CLDMA2Y4.js → qwenContentGenerator-GLUZVJAU.js} +53 -59
  268. package/chunks/{qwenOAuth2-DLDR6UC5.js → qwenOAuth2-JIYAWXTW.js} +8 -10
  269. package/chunks/{read-file-2HOD2ATO.js → read-file-75R5LUWQ.js} +13 -14
  270. package/chunks/{read-mcp-resource-XYES2B42.js → read-mcp-resource-7A7NFSFL.js} +2 -2
  271. package/chunks/read-package-up-6T6ICKR7.js +13 -0
  272. package/chunks/{record-artifact-W3IBTGL7.js → record-artifact-CPJ4IJSD.js} +4 -5
  273. package/chunks/report-findings-VFM5DENC.js +33 -0
  274. package/chunks/request-shutdown-AXVOFN5C.js +133 -0
  275. package/chunks/resumeHistoryUtils-GFPJD2XB.js +120 -0
  276. package/chunks/ripGrep-FNLXQYBS.js +39 -0
  277. package/chunks/{ru-STMG5BPD.js → ru-OLTMFJEW.js} +1 -0
  278. package/chunks/{run-qwen-serve-XJHOW2NY.js → run-qwen-serve-FJD4VMI2.js} +622 -79
  279. package/chunks/{runtime-J4SPTJRQ.js → runtime-INDSJB4K.js} +73 -71
  280. package/chunks/{scheduler-VRAEZZ4E.js → scheduler-Z52TCSUG.js} +62 -60
  281. package/chunks/{sdk-exporters-http-RSIOP3G2.js → sdk-exporters-http-XXSKBD2C.js} +5 -5
  282. package/chunks/{sdk-impl-CB3KARSK.js → sdk-impl-VPNBLV7I.js} +7 -7
  283. package/chunks/{send-message-J4VT46OI.js → send-message-A2GXDX3B.js} +10 -31
  284. package/chunks/serve-GVD2WXVL.js +120 -0
  285. package/chunks/{server-74ONDK62.js → server-PSN5OOSX.js} +965 -405
  286. package/chunks/{session-BO6VBWJP.js → session-JPE34X6Q.js} +151 -140
  287. package/chunks/{settings-35QZNFDG.js → settings-IVGC4UYK.js} +71 -69
  288. package/chunks/shell-A5PZGPBR.js +95 -0
  289. package/chunks/{skill-DKEMQSNJ.js → skill-UUXQPDEH.js} +108 -25
  290. package/chunks/skill-settings-WVRXLTK4.js +120 -0
  291. package/chunks/spawnChannel-KTURLD4B.js +113 -0
  292. package/chunks/standalone-update-IRFRNGAA.js +120 -0
  293. package/chunks/{startInteractiveUI-J2QSGWPU.js → startInteractiveUI-MC4GLL6G.js} +381 -293
  294. package/chunks/{syntheticOutput-JAXMIMZP.js → syntheticOutput-5AJ444QT.js} +3 -3
  295. package/chunks/{task-create-I2H322E4.js → task-create-CDJSOEQD.js} +11 -11
  296. package/chunks/{task-list-3OLIWFTQ.js → task-list-BELMPA75.js} +5 -5
  297. package/chunks/{task-stop-JAUY6MSY.js → task-stop-U3S3KZG2.js} +2 -2
  298. package/chunks/{task-update-B3XO4CPI.js → task-update-77VCFDDZ.js} +11 -11
  299. package/chunks/{team-create-W534PMGX.js → team-create-WO5ZBCFW.js} +48 -48
  300. package/chunks/{team-delete-Q7GE7RRI.js → team-delete-YWFXX77L.js} +5 -5
  301. package/chunks/{team-plan-approval-WNV6P6NG.js → team-plan-approval-KAVKRN7U.js} +47 -47
  302. package/chunks/terminal-image-renderer-SMRRNI6Z.js +116 -0
  303. package/chunks/theme-manager-A7CPN7F4.js +104 -0
  304. package/chunks/{todoWrite-FJJTY2TI.js → todoWrite-435EO2CS.js} +4 -4
  305. package/chunks/{tool-search-Y4KL3LRE.js → tool-search-FBN6OC6U.js} +18 -19
  306. package/chunks/total-session-admission-B7U6UWKQ.js +114 -0
  307. package/chunks/trustedFolders-B4LPJBFK.js +124 -0
  308. package/chunks/{update-relaunch-OHVFN6KF.js → update-relaunch-X5TJVKVG.js} +6 -6
  309. package/chunks/updateCheck-JCLP5JFT.js +120 -0
  310. package/chunks/useAutoAcceptIndicator-VBT3NKDM.js +122 -0
  311. package/chunks/{validateNonInterActiveAuth-WJXH426F.js → validateNonInterActiveAuth-W7HYH5ZN.js} +113 -106
  312. package/chunks/{version-QMDRADXM.js → version-JG4J76GL.js} +2 -2
  313. package/chunks/{web-fetch-ROS6P4LP.js → web-fetch-SPLMEDWF.js} +25 -242
  314. package/chunks/{web-search-JS3E76O6.js → web-search-PNW6OEH6.js} +11 -11
  315. package/chunks/{web-shell-static-3NUTRHAH.js → web-shell-static-A6QMUNNV.js} +11 -4
  316. package/chunks/webapi-Z5OM224P.js +4118 -0
  317. package/chunks/{workflow-2FCMBTBZ.js → workflow-QHOIIXJO.js} +635 -94
  318. package/chunks/workspace-providers-status-653DTR35.js +116 -0
  319. package/chunks/{workspace-registration-store-SU4EJKSD.js → workspace-registration-store-H375IYR2.js} +1 -1
  320. package/chunks/workspace-registry-XTLCD7Z2.js +123 -0
  321. package/chunks/workspace-service-KVJWACCS.js +131 -0
  322. package/chunks/workspace-skills-status-TRJ2VWGU.js +115 -0
  323. package/chunks/{workspace-trust-reconciler-4Y4F7XIX.js → workspace-trust-reconciler-6SC6RKQE.js} +74 -73
  324. package/chunks/write-file-EAZSJZKR.js +90 -0
  325. package/chunks/{zh-TW-NX43Z2S2.js → zh-TW-MV4FWFB6.js} +3 -0
  326. package/chunks/{zh-3JQ75KFU.js → zh-X3WGU6SI.js} +3 -0
  327. package/chunks/{zoom-image-DNBKCGGF.js → zoom-image-WGNPZ572.js} +13 -14
  328. package/cli.js +15 -15
  329. package/locales/ca.js +3 -0
  330. package/locales/de.js +1 -0
  331. package/locales/en.js +3 -0
  332. package/locales/fr.js +1 -0
  333. package/locales/ja.js +1 -0
  334. package/locales/pt.js +1 -0
  335. package/locales/ru.js +1 -0
  336. package/locales/zh-TW.js +3 -0
  337. package/locales/zh.js +3 -0
  338. package/package.json +3 -3
  339. package/web-shell/assets/{abnfDiagram-VCTEODGH-DWHXEVlf.js → abnfDiagram-VCTEODGH-yq7z7Anb.js} +1 -1
  340. package/web-shell/assets/{arc-CXKjm86V.js → arc-CbJO0xnT.js} +1 -1
  341. package/web-shell/assets/{architectureDiagram-5GKGNRK7-B_ynI0cX.js → architectureDiagram-5GKGNRK7-CRh89421.js} +1 -1
  342. package/web-shell/assets/{blockDiagram-NRAW4CY4-DMebd9X0.js → blockDiagram-NRAW4CY4-C75KAhKv.js} +1 -1
  343. package/web-shell/assets/{c4Diagram-UCG6FXSJ-BZ5BlxS-.js → c4Diagram-UCG6FXSJ-BzlMveFB.js} +1 -1
  344. package/web-shell/assets/channel-B3sGR79J.js +1 -0
  345. package/web-shell/assets/{chunk-2Q5K7J3B-CluJKopE.js → chunk-2Q5K7J3B-DA8QDX3a.js} +1 -1
  346. package/web-shell/assets/{chunk-5VM5RSS4-hzDAPFOo.js → chunk-5VM5RSS4-Bgu7gQ7Y.js} +1 -1
  347. package/web-shell/assets/{chunk-F27PBJKO-6vHioKJe.js → chunk-F27PBJKO-BOew7pIK.js} +1 -1
  348. package/web-shell/assets/{chunk-G27WJ6UU-B_5hKTGo.js → chunk-G27WJ6UU-DHx1I-hO.js} +1 -1
  349. package/web-shell/assets/{chunk-JWPE2WC7-CO9VoFCH.js → chunk-JWPE2WC7-SarFW0WU.js} +1 -1
  350. package/web-shell/assets/{chunk-LCL6LL3I-7L5JpxYu.js → chunk-LCL6LL3I-BLzP083Z.js} +1 -1
  351. package/web-shell/assets/{chunk-POPQ4Y6H-DHLJMAqj.js → chunk-POPQ4Y6H-Bmkv_iKm.js} +1 -1
  352. package/web-shell/assets/{chunk-SVP7TREG-Dt-4Cqdl.js → chunk-SVP7TREG-MPx9r1N2.js} +1 -1
  353. package/web-shell/assets/{chunk-XXDRQBXY-QlSQ3ssG.js → chunk-XXDRQBXY-Ck-09rKG.js} +1 -1
  354. package/web-shell/assets/classDiagram-DTDB5LWJ-sTGo0K3v.js +1 -0
  355. package/web-shell/assets/classDiagram-v2-JRS7N3AN-sTGo0K3v.js +1 -0
  356. package/web-shell/assets/{cose-bilkent-JH36ORCC-DMw3EOxl.js → cose-bilkent-JH36ORCC-DWm6lfOG.js} +1 -1
  357. package/web-shell/assets/{cynefin-OW5HDTMX-s6vEA7RQ.js → cynefin-OW5HDTMX-DcBUyr5R.js} +1 -1
  358. package/web-shell/assets/{cynefinDiagram-5FMLGOSQ-AOKsvYLt.js → cynefinDiagram-5FMLGOSQ-Df8qmd_p.js} +1 -1
  359. package/web-shell/assets/{dagre-3AP2YEHR-9QAZn3m7.js → dagre-3AP2YEHR-DDmGspD7.js} +1 -1
  360. package/web-shell/assets/{diagram-S7CK7UJ4-CWpnu4FN.js → diagram-S7CK7UJ4-BK_qFvbi.js} +1 -1
  361. package/web-shell/assets/{diagram-UQ7AKVKN-9l0jXD8q.js → diagram-UQ7AKVKN-Uw3AP_bi.js} +1 -1
  362. package/web-shell/assets/{diagram-VSXAHHWV-BMUHroj4.js → diagram-VSXAHHWV-CJOQKxY7.js} +1 -1
  363. package/web-shell/assets/{diagram-VX7I27RA-Co9x27vm.js → diagram-VX7I27RA-DhdvZna5.js} +1 -1
  364. package/web-shell/assets/{diagram-Z3DM3KII-BKnTeOER.js → diagram-Z3DM3KII-edQU0nlP.js} +1 -1
  365. package/web-shell/assets/{ebnfDiagram-PWID7BFC-QBZD9CKG.js → ebnfDiagram-PWID7BFC-4kugBEsO.js} +1 -1
  366. package/web-shell/assets/{erDiagram-SSCWMZ5O-dKWAEGun.js → erDiagram-SSCWMZ5O-BMkFivWO.js} +1 -1
  367. package/web-shell/assets/{flowDiagram-A5DVABFB-CR_UgVqj.js → flowDiagram-A5DVABFB-BM1ea8g-.js} +1 -1
  368. package/web-shell/assets/{ganttDiagram-EL5Y4UJY-DQUnjWO6.js → ganttDiagram-EL5Y4UJY-CXj_cKRf.js} +1 -1
  369. package/web-shell/assets/{gitGraphDiagram-WWUBYQGX-C4j59wPL.js → gitGraphDiagram-WWUBYQGX-D0nEqwqu.js} +1 -1
  370. package/web-shell/assets/{index-tYXRIPz4.js → index-B6JN54Pd.js} +1 -1
  371. package/web-shell/assets/{index-BN_m_uHJ.css → index-C-XlQn24.css} +1 -1
  372. package/web-shell/assets/index-DLjXM0dn.js +1860 -0
  373. package/web-shell/assets/{infoDiagram-RXCK75RN-mzqbt50w.js → infoDiagram-RXCK75RN-DF7aGGbQ.js} +1 -1
  374. package/web-shell/assets/{ishikawaDiagram-5VMMS53U-ChLOqhGl.js → ishikawaDiagram-5VMMS53U-CZYNX1lL.js} +1 -1
  375. package/web-shell/assets/{journeyDiagram-EYS64GPL-SifZE-R8.js → journeyDiagram-EYS64GPL-CvrqMUz1.js} +1 -1
  376. package/web-shell/assets/{kanban-definition-3QL26DDD-Sft2qlbc.js → kanban-definition-3QL26DDD-BZNJQZBj.js} +1 -1
  377. package/web-shell/assets/{layout-O2uHVkPd.js → layout-Bf83x7D6.js} +1 -1
  378. package/web-shell/assets/{linear-BVqYgjSc.js → linear-Bkc3ES2f.js} +1 -1
  379. package/web-shell/assets/{mermaid.core-CZ9MQaJ6.js → mermaid.core-C6xuovwz.js} +6 -6
  380. package/web-shell/assets/{mindmap-definition-FBJOCRG2-BNQYjBqM.js → mindmap-definition-FBJOCRG2-DzH6gVRg.js} +1 -1
  381. package/web-shell/assets/{pegDiagram-XKGWAZYB-rh1J8uv6.js → pegDiagram-XKGWAZYB-DCvLh2fa.js} +1 -1
  382. package/web-shell/assets/{pieDiagram-E7YTZNPT-BQHR5mn9.js → pieDiagram-E7YTZNPT-BtjVlx_6.js} +1 -1
  383. package/web-shell/assets/{quadrantDiagram-AXDQQJYC-CLCbP7mK.js → quadrantDiagram-AXDQQJYC-IbroqxFe.js} +1 -1
  384. package/web-shell/assets/{railroadDiagram-O6MQD6OU-CDQhrkbm.js → railroadDiagram-O6MQD6OU-BvMykiWW.js} +1 -1
  385. package/web-shell/assets/{requirementDiagram-EFPCY7ZU-BdP9uswg.js → requirementDiagram-EFPCY7ZU-D-HHMyrh.js} +1 -1
  386. package/web-shell/assets/{sankeyDiagram-P5KCCOFB-CFZDFBXF.js → sankeyDiagram-P5KCCOFB-C0XXhB6d.js} +1 -1
  387. package/web-shell/assets/{sequenceDiagram-WJ2MYXX4-BW9WOJXI.js → sequenceDiagram-WJ2MYXX4-DseAXj5d.js} +1 -1
  388. package/web-shell/assets/{sizeCapture-X5ZJPWSS-CPMia32z.js → sizeCapture-X5ZJPWSS-Cek2EweK.js} +1 -1
  389. package/web-shell/assets/{stateDiagram-HBIQ2CUA-BANp9p7F.js → stateDiagram-HBIQ2CUA-yLv8wafW.js} +1 -1
  390. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-DeThXnol.js +1 -0
  391. package/web-shell/assets/{swimlanes-XN3QIQJK-JroXksK-.js → swimlanes-XN3QIQJK-Cwz-opvE.js} +1 -1
  392. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-GW0R1ZSv.js +8 -0
  393. package/web-shell/assets/{timeline-definition-24CTP7MA-DfuVIfYY.js → timeline-definition-24CTP7MA-BJuFD7OG.js} +1 -1
  394. package/web-shell/assets/{vennDiagram-4TSXK5OY-BZXoSjRB.js → vennDiagram-4TSXK5OY-CNAavdoV.js} +1 -1
  395. package/web-shell/assets/{wardleyDiagram-VM6X3IG4-BdiY8avC.js → wardleyDiagram-VM6X3IG4-DaIjAidq.js} +1 -1
  396. package/web-shell/assets/{xychartDiagram-S5SC5T6Z-DcXh_U4H.js → xychartDiagram-S5SC5T6Z-DkcQXjTy.js} +1 -1
  397. package/web-shell/index.html +19 -4
  398. package/chunks/MaxSizedBox-3OZJCC3J.js +0 -110
  399. package/chunks/agent-BFE3DQM3.js +0 -93
  400. package/chunks/agent-headless-LLVKZZ4P.js +0 -87
  401. package/chunks/bridge-EBYO4SYM.js +0 -118
  402. package/chunks/channel-settings-store-5VP2Y2YM.js +0 -115
  403. package/chunks/chunk-AXMWHKXA.js +0 -42
  404. package/chunks/chunk-IO257NUD.js +0 -623
  405. package/chunks/chunk-YHC2EYYG.js +0 -125
  406. package/chunks/computer-use-EGPWFEX6.js +0 -2142
  407. package/chunks/config-utils-WZ43VOBS.js +0 -25
  408. package/chunks/contextCommand-5DSEQI6S.js +0 -106
  409. package/chunks/daemon-status-provider-EYMLPYJU.js +0 -116
  410. package/chunks/daemon-trust-policy-CQYKZ7VO.js +0 -112
  411. package/chunks/deferred-core-runtime-WFEPUXZR.js +0 -114
  412. package/chunks/earlyInputCapture-PN4PP7V5.js +0 -107
  413. package/chunks/environment-WUPHLPKZ.js +0 -127
  414. package/chunks/errors-WPMPVIAT.js +0 -113
  415. package/chunks/exitPlanMode-MLFHYZNB.js +0 -85
  416. package/chunks/handleAutoUpdate-F5OTWUT5.js +0 -109
  417. package/chunks/i18n-C562S6KN.js +0 -124
  418. package/chunks/initializer-7YPGOFP4.js +0 -113
  419. package/chunks/installationInfo-ARU5Q2H7.js +0 -107
  420. package/chunks/list-KTSK275C.js +0 -116
  421. package/chunks/loadedSettingsAdapter-F3T2EQ5J.js +0 -110
  422. package/chunks/mcp-6ONTVPAY.js +0 -110
  423. package/chunks/nonInteractiveCli-KZDWFAN6.js +0 -178
  424. package/chunks/pidfile-IO7ALSZF.js +0 -111
  425. package/chunks/prompt-terminal-ledger-TCE7PMCE.js +0 -105
  426. package/chunks/resumeHistoryUtils-DDSBAQJS.js +0 -118
  427. package/chunks/ripGrep-E7P6K4QR.js +0 -40
  428. package/chunks/serve-KEAWV4TI.js +0 -118
  429. package/chunks/shell-H6K63WG3.js +0 -95
  430. package/chunks/skill-settings-TCKLXIXM.js +0 -118
  431. package/chunks/spawnChannel-2K6NKWM5.js +0 -111
  432. package/chunks/standalone-update-LSCGOEFP.js +0 -118
  433. package/chunks/terminal-image-renderer-UHX3UD66.js +0 -114
  434. package/chunks/theme-manager-6B47ZPIF.js +0 -102
  435. package/chunks/total-session-admission-NSCFWGJH.js +0 -113
  436. package/chunks/trustedFolders-7XMJWGQ3.js +0 -122
  437. package/chunks/updateCheck-EOVLHD4T.js +0 -118
  438. package/chunks/useAutoAcceptIndicator-ZNMIGBTN.js +0 -120
  439. package/chunks/workspace-providers-status-GPGU5YMT.js +0 -113
  440. package/chunks/workspace-registry-BQISXT6Y.js +0 -122
  441. package/chunks/workspace-service-LLY6HCUC.js +0 -129
  442. package/chunks/workspace-skills-status-L5N2Y3ZP.js +0 -113
  443. package/chunks/write-file-EJHU2Z3E.js +0 -90
  444. package/web-shell/assets/channel-Zg3WHgq_.js +0 -1
  445. package/web-shell/assets/classDiagram-DTDB5LWJ-C16l9jQz.js +0 -1
  446. package/web-shell/assets/classDiagram-v2-JRS7N3AN-C16l9jQz.js +0 -1
  447. package/web-shell/assets/index-DrlJu79f.js +0 -1792
  448. package/web-shell/assets/stateDiagram-v2-4QOOHH4V-NZYAoQLU.js +0 -1
  449. package/web-shell/assets/swimlanesDiagram-VK2B7HYN-3YdVX3vj.js +0 -8
@@ -1,18 +1,93 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
+ import {
4
+ useAutoAcceptIndicator
5
+ } from "./chunk-3BV7TZNQ.js";
6
+ import {
7
+ classifyApiError,
8
+ fireSessionDeleteHook
9
+ } from "./chunk-P5Y23G2L.js";
3
10
  import {
4
11
  buildPermissionSuggestions
5
- } from "./chunk-43T5WDQ7.js";
12
+ } from "./chunk-BFSFJR3D.js";
6
13
  import {
7
14
  TUI_CHAT_RECORDING_FAILURE_MESSAGE,
8
15
  reportChatRecordingFailureToAdapter
9
- } from "./chunk-5XHAOUWD.js";
16
+ } from "./chunk-OI2DR6QB.js";
17
+ import {
18
+ MAX_SUGGESTIONS_TO_SHOW,
19
+ SESSION_MENTION_PREFIX,
20
+ buildMcpResourceRef,
21
+ buildMcpServerRef,
22
+ buildSessionRef,
23
+ getExtensionSuggestions,
24
+ handleAtCommand,
25
+ matchMcpServerPrefix,
26
+ normalizePartList,
27
+ resolveAtCommandQuery,
28
+ sanitizeDisplayText
29
+ } from "./chunk-TWUA5EIL.js";
10
30
  import {
11
31
  StreamJsonOutputAdapter
12
- } from "./chunk-KIVGVFMM.js";
32
+ } from "./chunk-VUZY6MEQ.js";
33
+ import {
34
+ BuiltinCommandLoader,
35
+ BundledSkillLoader,
36
+ CONTEXT_FILES_ANNOUNCEMENT_PREFIX,
37
+ CommandService,
38
+ DISPLAY_HOOK_EVENTS,
39
+ FileCommandLoader,
40
+ MAX_STACKED_SKILLS,
41
+ McpPromptLoader,
42
+ SLASH_COMMANDS_SKIP_RECORDING,
43
+ SavedWorkflowLoader,
44
+ SkillCommandLoader,
45
+ addConfigToMatcherGroup,
46
+ appendUserPromptExpansionAdditionalContext,
47
+ buildBackgroundWorkBlockedMessage,
48
+ consumesContextAnnouncementLatch,
49
+ copyToClipboard,
50
+ createEmptyHookEventInfo,
51
+ dayKey,
52
+ findMidInputSlashCommand,
53
+ findSlashCommandTokens,
54
+ formatApprovalModeDescription,
55
+ formatApprovalModeName,
56
+ formatEffortChangeMessage,
57
+ formatUserPromptExpansionBlockedMessage,
58
+ getAllConfigs,
59
+ getBestSlashCommandMatch,
60
+ getTranslatedSourceDisplayMap,
61
+ hasBlockingBackgroundWork,
62
+ hasSlashCommandPathSeparator,
63
+ isAtCommand,
64
+ isBtwCommand,
65
+ isContextFilesAnnouncement,
66
+ isMidInputCompletableCommand,
67
+ isPickerOnlyModelInvocation,
68
+ isSlashCommand,
69
+ isStackedSkillCompletableCommand,
70
+ isValidStackedSkillPrefix,
71
+ parseDayKey,
72
+ parseSlashCommand,
73
+ parseStackedSlashCommands,
74
+ recordAutoSkillCommandUsage,
75
+ refreshExtensionContentRuntime,
76
+ resetBackgroundStateForSessionSwitch,
77
+ serializeUserPromptExpansionPrompt,
78
+ supportsMatchers
79
+ } from "./chunk-RQAMNZ4Y.js";
80
+ import "./chunk-XO4NGYRP.js";
13
81
  import {
14
82
  startPostRenderPrefetches
15
- } from "./chunk-GHY5OIYP.js";
83
+ } from "./chunk-K5PNJ6VL.js";
84
+ import {
85
+ EXTENSION_RELOAD_FAILED_REASON,
86
+ ExtensionRefreshState,
87
+ appEvents,
88
+ cleanupReviewWorktreeLeases,
89
+ loadHierarchicalGeminiMemory
90
+ } from "./chunk-GQAIZL3H.js";
16
91
  import {
17
92
  AboutBox,
18
93
  BaseSelectionList,
@@ -90,126 +165,21 @@ import {
90
165
  useUIActions,
91
166
  useUIState,
92
167
  useVirtualViewport
93
- } from "./chunk-YZBDKFRQ.js";
94
- import {
95
- GeminiRespondingSpinner,
96
- GeminiSpinner,
97
- ICON,
98
- SCREEN_READER_USER_PREFIX,
99
- SHELL_COMMAND_NAME,
100
- StreamingContext,
101
- applyCollapsePolicyAndSummary,
102
- buildResumedHistoryItems,
103
- build_default,
104
- expandCollapsedHistory,
105
- isCollapsibleTool,
106
- shouldDisplayGoalStateCause,
107
- useStreamingContext,
108
- waitForGoalRuntime,
109
- wrapAnsi
110
- } from "./chunk-UU4WC7DK.js";
111
- import {
112
- stopAndGetCapturedInput
113
- } from "./chunk-VFACN2CE.js";
114
- import {
115
- useAutoAcceptIndicator
116
- } from "./chunk-UIRLQ3N7.js";
168
+ } from "./chunk-EADEZDPO.js";
117
169
  import {
118
170
  KeypressProvider,
119
171
  useFocus,
120
172
  useKeypress,
121
173
  useKeypressContext
122
- } from "./chunk-4XPSVIED.js";
123
- import {
124
- classifyApiError,
125
- fireSessionDeleteHook
126
- } from "./chunk-P5Y23G2L.js";
127
- import {
128
- MAX_SUGGESTIONS_TO_SHOW,
129
- SESSION_MENTION_PREFIX,
130
- buildMcpResourceRef,
131
- buildMcpServerRef,
132
- buildSessionRef,
133
- getExtensionSuggestions,
134
- handleAtCommand,
135
- matchMcpServerPrefix,
136
- resolveAtCommandQuery,
137
- sanitizeDisplayText
138
- } from "./chunk-25NESM4G.js";
139
- import {
140
- BuiltinCommandLoader,
141
- BundledSkillLoader,
142
- CONTEXT_FILES_ANNOUNCEMENT_PREFIX,
143
- CommandService,
144
- DISPLAY_HOOK_EVENTS,
145
- FileCommandLoader,
146
- MAX_STACKED_SKILLS,
147
- McpPromptLoader,
148
- SLASH_COMMANDS_SKIP_RECORDING,
149
- SavedWorkflowLoader,
150
- SkillCommandLoader,
151
- addConfigToMatcherGroup,
152
- appendUserPromptExpansionAdditionalContext,
153
- buildBackgroundWorkBlockedMessage,
154
- consumesContextAnnouncementLatch,
155
- copyToClipboard,
156
- createEmptyHookEventInfo,
157
- dayKey,
158
- findMidInputSlashCommand,
159
- findSlashCommandTokens,
160
- formatApprovalModeDescription,
161
- formatApprovalModeName,
162
- formatEffortChangeMessage,
163
- formatUserPromptExpansionBlockedMessage,
164
- getAllConfigs,
165
- getBestSlashCommandMatch,
166
- getTranslatedSourceDisplayMap,
167
- hasBlockingBackgroundWork,
168
- hasSlashCommandPathSeparator,
169
- isAtCommand,
170
- isBtwCommand,
171
- isContextFilesAnnouncement,
172
- isMidInputCompletableCommand,
173
- isPickerOnlyModelInvocation,
174
- isSlashCommand,
175
- isStackedSkillCompletableCommand,
176
- isValidStackedSkillPrefix,
177
- normalizePartList,
178
- parseDayKey,
179
- parseSlashCommand,
180
- parseStackedSlashCommands,
181
- recordAutoSkillCommandUsage,
182
- refreshExtensionContentRuntime,
183
- resetBackgroundStateForSessionSwitch,
184
- serializeUserPromptExpansionPrompt,
185
- supportsMatchers
186
- } from "./chunk-PXOJLJ5W.js";
187
- import {
188
- EXTENSION_RELOAD_FAILED_REASON,
189
- ExtensionRefreshState,
190
- appEvents,
191
- cleanupReviewWorktreeLeases,
192
- loadHierarchicalGeminiMemory
193
- } from "./chunk-6QSA4JHL.js";
174
+ } from "./chunk-O5YGAEQS.js";
194
175
  import {
195
176
  getCommandDisplayName,
196
177
  getCommandSourceBadge
197
- } from "./chunk-IIWGSX4L.js";
178
+ } from "./chunk-MI7CMXPU.js";
198
179
  import {
199
180
  computeSessionStats,
200
181
  levelLabel
201
- } from "./chunk-J5ZDDUKM.js";
202
- import {
203
- formatDuration,
204
- formatRelativeTime,
205
- formatTokenCount
206
- } from "./chunk-3SH53ANB.js";
207
- import {
208
- disableKittyProtocol,
209
- isKittyProtocolEnabled,
210
- isKittyProtocolSupported,
211
- pushKittyProtocolFlags
212
- } from "./chunk-NYX53SV4.js";
182
+ } from "./chunk-DX5FZGHZ.js";
213
183
  import {
214
184
  BEL,
215
185
  OSC_PREFIX,
@@ -222,19 +192,39 @@ import {
222
192
  oscKittyNotify,
223
193
  saveClipboardImage,
224
194
  writeOsc52
225
- } from "./chunk-DB2OKNTU.js";
226
- import "./chunk-7JBHIQS2.js";
195
+ } from "./chunk-2FN2HNTI.js";
227
196
  import "./chunk-4WGODMVR.js";
228
- import "./chunk-6FRJEE2S.js";
229
- import "./chunk-KW7NOTN6.js";
230
197
  import {
231
198
  MaxSizedBox,
232
199
  OverflowProvider,
233
200
  useOverflowState
234
- } from "./chunk-SQS55KR4.js";
201
+ } from "./chunk-IJVDHPKD.js";
202
+ import {
203
+ GeminiRespondingSpinner,
204
+ GeminiSpinner,
205
+ ICON,
206
+ SCREEN_READER_USER_PREFIX,
207
+ SHELL_COMMAND_NAME,
208
+ StreamingContext,
209
+ applyCollapsePolicyAndSummary,
210
+ buildResumedHistoryItems,
211
+ build_default,
212
+ expandCollapsedHistory,
213
+ isCollapsibleTool,
214
+ recoalesceFindingsHistoryItems,
215
+ shouldDisplayGoalStateCause,
216
+ useStreamingContext,
217
+ waitForGoalRuntime,
218
+ wrapAnsi
219
+ } from "./chunk-OGZAQWJP.js";
220
+ import {
221
+ formatDuration,
222
+ formatRelativeTime,
223
+ formatTokenCount
224
+ } from "./chunk-3SH53ANB.js";
235
225
  import {
236
226
  theme
237
- } from "./chunk-3ZFJUBTP.js";
227
+ } from "./chunk-FPH6TXD3.js";
238
228
  import {
239
229
  require_jsx_runtime
240
230
  } from "./chunk-SV5PQVQE.js";
@@ -253,45 +243,55 @@ import {
253
243
  use_stdout_default
254
244
  } from "./chunk-5Q372OFJ.js";
255
245
  import {
256
- require_react
257
- } from "./chunk-5QWWOFGG.js";
258
- import "./chunk-4J7OPYNS.js";
259
- import "./chunk-AP3B7LKD.js";
246
+ stopAndGetCapturedInput
247
+ } from "./chunk-GNMJNDZE.js";
248
+ import {
249
+ disableKittyProtocol,
250
+ isKittyProtocolEnabled,
251
+ isKittyProtocolSupported,
252
+ pushKittyProtocolFlags
253
+ } from "./chunk-NYX53SV4.js";
254
+ import "./chunk-BKDAF7ES.js";
260
255
  import {
261
256
  MAX_INLINE_IMAGES_PER_ITEM,
262
257
  collectInlineImages,
263
258
  getInlineImageData
264
- } from "./chunk-JOLJTKIG.js";
265
- import {
266
- relaunchApp
267
- } from "./chunk-AVCCKIZ6.js";
259
+ } from "./chunk-EC5BONC3.js";
268
260
  import {
269
261
  setUpdateHandler
270
- } from "./chunk-6PCOVQO2.js";
262
+ } from "./chunk-BU7OUDQB.js";
271
263
  import {
272
264
  isHistoryItemVisibleAfterRestore
273
265
  } from "./chunk-EKTCKZV5.js";
274
- import "./chunk-VYC7XFYV.js";
275
- import "./chunk-YAF2MQZ6.js";
266
+ import "./chunk-4PLAO7FS.js";
267
+ import "./chunk-U66FXEH2.js";
276
268
  import {
277
269
  AUTO_THEME_NAME,
278
270
  DEFAULT_THEME,
279
271
  themeManager
280
- } from "./chunk-S3G6YFQC.js";
281
- import "./chunk-2A4C2MEG.js";
282
- import "./chunk-6H67XLET.js";
283
- import "./chunk-BEGIBJAZ.js";
272
+ } from "./chunk-WEGXPP5E.js";
273
+ import "./chunk-KW7NOTN6.js";
274
+ import {
275
+ require_react
276
+ } from "./chunk-5QWWOFGG.js";
277
+ import "./chunk-6HOU52QX.js";
284
278
  import {
285
279
  getErrorMessage as getErrorMessage2
286
- } from "./chunk-OARZJFZX.js";
280
+ } from "./chunk-BGWT7VBV.js";
281
+ import {
282
+ relaunchApp
283
+ } from "./chunk-EWBY3PFB.js";
284
+ import "./chunk-2YDYDDE2.js";
285
+ import "./chunk-YAF2MQZ6.js";
286
+ import "./chunk-FY62MBPS.js";
287
+ import "./chunk-6H67XLET.js";
287
288
  import {
288
289
  openQwenAsrRealtimeStream,
289
290
  openVoiceStream,
290
291
  openVoiceStreamWithRetry
291
- } from "./chunk-WU5E4HMO.js";
292
- import "./chunk-MQP3MHWN.js";
293
- import "./chunk-UZPYR3EV.js";
294
- import "./chunk-A5F63FEW.js";
292
+ } from "./chunk-CPPYZHBN.js";
293
+ import "./chunk-JJJD6QCC.js";
294
+ import "./chunk-4TPAG3O7.js";
295
295
  import {
296
296
  cpLen,
297
297
  cpSlice,
@@ -302,8 +302,10 @@ import {
302
302
  sanitizeMultilineForDisplay,
303
303
  sanitizeTerminalText,
304
304
  stripUnsafeCharacters,
305
- toCodePoints
305
+ toCodePoints,
306
+ truncateToWidth
306
307
  } from "./chunk-E7REAOTN.js";
308
+ import "./chunk-L436XFLJ.js";
307
309
  import {
308
310
  stringWidth
309
311
  } from "./chunk-2MIN6GRR.js";
@@ -311,7 +313,8 @@ import "./chunk-QHTIBUWB.js";
311
313
  import "./chunk-TXASDT2M.js";
312
314
  import {
313
315
  isValidSessionId
314
- } from "./chunk-TQOF5KBL.js";
316
+ } from "./chunk-ZEZKIS2K.js";
317
+ import "./chunk-RXFQM6FQ.js";
315
318
  import "./chunk-UXEO7E3V.js";
316
319
  import {
317
320
  assertVoiceBaseUrlNetworkAllowed,
@@ -319,54 +322,57 @@ import {
319
322
  isStreamingVoiceModel,
320
323
  resolveVoiceStreamConfig,
321
324
  transcribeVoiceAudio
322
- } from "./chunk-ZZUVC6RI.js";
325
+ } from "./chunk-76WGY6LW.js";
323
326
  import {
324
327
  formatUnsupportedVoiceModelMessage,
325
328
  isSelectableVoiceModel
326
- } from "./chunk-QJHPWLZC.js";
327
- import "./chunk-Z3JMO2CH.js";
328
- import {
329
- computeWorkspaceSkillListUpdates,
330
- resolveSkillSettings,
331
- skillSettingStrings
332
- } from "./chunk-Z4X5MTRT.js";
333
- import {
334
- createLoadedSettingsAdapter
335
- } from "./chunk-PDL6LKB5.js";
329
+ } from "./chunk-2MHGD7EE.js";
330
+ import "./chunk-2SERYG4T.js";
336
331
  import {
337
332
  getExtendedSystemInfo
338
- } from "./chunk-PHJJ3RVO.js";
333
+ } from "./chunk-7XKW4CVK.js";
334
+ import "./chunk-UVDOONRU.js";
339
335
  import "./chunk-7U5G6JXI.js";
340
336
  import "./chunk-WCCLLK7X.js";
341
337
  import {
342
338
  isInlineModelOverrideAllowed
343
- } from "./chunk-FVBVJEBG.js";
344
- import "./chunk-ZRFUT5VV.js";
339
+ } from "./chunk-HOANA6GC.js";
340
+ import {
341
+ computeWorkspaceSkillListUpdates,
342
+ resolveSkillSettings,
343
+ skillSettingStrings
344
+ } from "./chunk-Z4X5MTRT.js";
345
+ import "./chunk-OAAPGZVH.js";
345
346
  import {
346
347
  requestConsentInteractive,
347
348
  requestConsentOrFail
348
- } from "./chunk-S4C4JJKE.js";
349
+ } from "./chunk-3UXJFOB3.js";
349
350
  import "./chunk-57OAHC2Y.js";
350
- import "./chunk-5XUTPXQU.js";
351
- import "./chunk-45NQKMYB.js";
352
- import "./chunk-QS4ENGVF.js";
351
+ import "./chunk-EAV3TENS.js";
352
+ import "./chunk-7JPW6IYH.js";
353
+ import "./chunk-IKN3IUJP.js";
353
354
  import "./chunk-V6WHFGST.js";
354
- import "./chunk-LURJYO2T.js";
355
+ import {
356
+ createLoadedSettingsAdapter
357
+ } from "./chunk-5AFPOEY3.js";
358
+ import "./chunk-MZS7GEC7.js";
359
+ import "./chunk-2AUM35J5.js";
360
+ import "./chunk-OZ6KS6KW.js";
355
361
  import "./chunk-6PLDPT2C.js";
356
362
  import "./chunk-FYJ7W2PI.js";
357
- import "./chunk-ND7NOI4P.js";
358
- import "./chunk-A6NRNRKE.js";
363
+ import "./chunk-7CWEZQ6T.js";
364
+ import "./chunk-JVPFTDBK.js";
365
+ import "./chunk-GYTKQYDB.js";
359
366
  import "./chunk-ALMR3E6Q.js";
360
367
  import "./chunk-UDG5EZJI.js";
361
- import "./chunk-3VUENPWF.js";
362
368
  import "./chunk-M5GB774H.js";
363
- import "./chunk-W4CRPSC5.js";
364
- import "./chunk-ZLCT4C5A.js";
365
- import "./chunk-AW27A43Y.js";
369
+ import "./chunk-3VUENPWF.js";
370
+ import "./chunk-ELY4QVIB.js";
371
+ import "./chunk-E55H6BZ7.js";
366
372
  import "./chunk-IW6RQPQB.js";
367
373
  import {
368
374
  loadMcpApprovals
369
- } from "./chunk-AO4M6NMD.js";
375
+ } from "./chunk-I6HWGOWD.js";
370
376
  import {
371
377
  CORRUPTED_SUFFIX,
372
378
  SettingScope,
@@ -388,34 +394,31 @@ import {
388
394
  settingExistsInScope,
389
395
  validateSettingValue,
390
396
  writeOutputLanguageAndRegisterPath
391
- } from "./chunk-6UQSU7CQ.js";
397
+ } from "./chunk-C2BAEV64.js";
398
+ import "./chunk-RKUWKYED.js";
392
399
  import {
393
400
  TOGGLE_TYPES
394
- } from "./chunk-7DMTAQJ6.js";
395
- import "./chunk-RKUWKYED.js";
401
+ } from "./chunk-GXWY24QS.js";
402
+ import "./chunk-GOXKNSDZ.js";
403
+ import "./chunk-IDS7MSUP.js";
396
404
  import {
397
405
  getCurrentLanguage,
398
406
  localizeToolDisplayName,
399
407
  t,
400
408
  ta
401
- } from "./chunk-OE52YHCZ.js";
409
+ } from "./chunk-W2WRNJKX.js";
402
410
  import "./chunk-5EJZE3FP.js";
403
- import "./chunk-OVH5Y7KS.js";
404
- import "./chunk-2AUM35J5.js";
405
- import "./chunk-DWCKACFL.js";
406
- import "./chunk-GOXKNSDZ.js";
407
- import "./chunk-IDS7MSUP.js";
408
- import "./chunk-CXJHQVEK.js";
409
- import "./chunk-XFSFZCM5.js";
410
- import "./chunk-NF5J2WFA.js";
411
+ import "./chunk-IN66KO3N.js";
412
+ import "./chunk-5PA6UEYA.js";
413
+ import "./chunk-7DPKPBOQ.js";
411
414
  import {
412
415
  getCliVersion
413
- } from "./chunk-RDG44S5I.js";
414
- import "./chunk-YLFLHKDL.js";
416
+ } from "./chunk-H4JK2A2V.js";
417
+ import "./chunk-W3N5XAZ6.js";
415
418
  import {
416
419
  isWorkspaceTrusted,
417
420
  loadTrustedFolders
418
- } from "./chunk-L4HVF7LM.js";
421
+ } from "./chunk-RQ5ASDFQ.js";
419
422
  import {
420
423
  require_strip_json_comments
421
424
  } from "./chunk-NPQ5ZKRP.js";
@@ -448,6 +451,8 @@ import {
448
451
  getDefaultModelIds,
449
452
  getProjectSummaryInfo,
450
453
  getWelcomeBackState,
454
+ isWsl,
455
+ renderGoalContinuationPrompt,
451
456
  resolveBaseUrl,
452
457
  resolveBranchName,
453
458
  resolveMetadataKey,
@@ -456,23 +461,28 @@ import {
456
461
  startSpeculation,
457
462
  subagentGenerator,
458
463
  watchRepoBranch
459
- } from "./chunk-62JOGZL5.js";
460
- import "./chunk-LJZSMWOH.js";
464
+ } from "./chunk-RUQBJS34.js";
461
465
  import {
462
466
  saveWorkflowScript,
463
467
  validateWorkflowName
464
- } from "./chunk-5HJUPACR.js";
465
- import "./chunk-2GXYDNXP.js";
466
- import "./chunk-TBVSALA3.js";
468
+ } from "./chunk-LRLMDV5X.js";
469
+ import "./chunk-XFSFZCM5.js";
470
+ import "./chunk-2EAZ43JQ.js";
471
+ import "./chunk-NF5J2WFA.js";
472
+ import "./chunk-LRKMQPMD.js";
473
+ import "./chunk-LJZSMWOH.js";
474
+ import "./chunk-H2MDBYLL.js";
475
+ import "./chunk-JLGFGPZJ.js";
476
+ import "./chunk-SKNVVYIJ.js";
467
477
  import {
468
478
  clearWorktreeSession,
469
479
  isSessionRuntimeActive,
470
480
  readWorktreeSession,
471
481
  restoreWorktreeContext
472
- } from "./chunk-7NBVNAJJ.js";
473
- import "./chunk-MZKWFWVG.js";
474
- import "./chunk-2Z6LSQMF.js";
475
- import "./chunk-RDQ7QB4Y.js";
482
+ } from "./chunk-UCSV2IZW.js";
483
+ import "./chunk-T2HMXHYA.js";
484
+ import "./chunk-3FSBMAYD.js";
485
+ import "./chunk-XJS54K4A.js";
476
486
  import "./chunk-ZPJWUGCS.js";
477
487
  import {
478
488
  osc8Hyperlink,
@@ -480,12 +490,8 @@ import {
480
490
  sanitizeForOsc,
481
491
  supportsHyperlinks,
482
492
  wrapForMultiplexer
483
- } from "./chunk-O5BDEWBC.js";
484
- import {
485
- REASONING_EFFORT_TIERS,
486
- applyReasoningEffort
487
- } from "./chunk-KM73TBQ4.js";
488
- import "./chunk-EFB657PR.js";
493
+ } from "./chunk-ZWKGZB2K.js";
494
+ import "./chunk-OX44MOAN.js";
489
495
  import {
490
496
  ConditionalRulesRegistry,
491
497
  CoreToolScheduler,
@@ -530,6 +536,7 @@ import {
530
536
  isEditorAvailable,
531
537
  isExtensionCommittedWithWarningsError,
532
538
  isGatedMcpScope,
539
+ isImageGenerationCapable,
533
540
  isReplayOfHandledToolCall,
534
541
  isSettledStatus,
535
542
  isSignalTermination,
@@ -541,6 +548,7 @@ import {
541
548
  matchesAnyServerPattern,
542
549
  mcpServerRequiresOAuth,
543
550
  metricsToUsageRecord,
551
+ normalizeDerivedBranchTitle,
544
552
  parseAndFormatApiError,
545
553
  parseInstallSource,
546
554
  parseRule,
@@ -550,24 +558,24 @@ import {
550
558
  refreshMemoryInstruction,
551
559
  registerSession,
552
560
  stripTerminalControlSequences
553
- } from "./chunk-T6XLJRQY.js";
561
+ } from "./chunk-D6XO27Z5.js";
554
562
  import "./chunk-GOFAQQZA.js";
563
+ import "./chunk-5M6IDOMF.js";
555
564
  import {
556
565
  stripAnsi
557
566
  } from "./chunk-TWPJO254.js";
558
567
  import "./chunk-CQ35AJ4Z.js";
559
- import "./chunk-5M6IDOMF.js";
560
- import "./chunk-KVGR4MCF.js";
561
- import "./chunk-XZJKSETB.js";
562
- import "./chunk-YMVFIYHV.js";
568
+ import "./chunk-3UZCLCXR.js";
569
+ import "./chunk-TOF4UZHH.js";
570
+ import "./chunk-O3BUXIPM.js";
571
+ import "./chunk-ZLTEQYNC.js";
563
572
  import "./chunk-6PVPNMXU.js";
564
573
  import {
565
574
  resolveModelId
566
- } from "./chunk-7DYNJFES.js";
567
- import "./chunk-DJEHYM4H.js";
575
+ } from "./chunk-AYVIGUUK.js";
568
576
  import "./chunk-IRH27ZC2.js";
569
577
  import "./chunk-QHWCP53L.js";
570
- import "./chunk-AZF6SME3.js";
578
+ import "./chunk-JECO75XD.js";
571
579
  import {
572
580
  promptIdContext
573
581
  } from "./chunk-O6GEWCJA.js";
@@ -576,48 +584,52 @@ import {
576
584
  GitWorktreeService,
577
585
  readWorktreeSessionMarker,
578
586
  writeRuntimeStatus
579
- } from "./chunk-GIWB5QLV.js";
587
+ } from "./chunk-LJP2BBMK.js";
580
588
  import "./chunk-CPBF7KYF.js";
581
- import "./chunk-VUMLT7E5.js";
589
+ import "./chunk-5Y2JCJAH.js";
582
590
  import {
583
591
  HOOKS_CONFIG_FIELDS
584
- } from "./chunk-ISJMN3ML.js";
585
- import "./chunk-XLDFW44M.js";
592
+ } from "./chunk-T2CRBIDJ.js";
593
+ import "./chunk-77TOMRBG.js";
586
594
  import {
587
595
  getGitBranch,
588
596
  glob
589
- } from "./chunk-Q54XG7IX.js";
590
- import "./chunk-FEMQ6Y7W.js";
591
- import "./chunk-2TRNCJK4.js";
592
- import "./chunk-NUGZAFR2.js";
597
+ } from "./chunk-DEYPMJPD.js";
598
+ import "./chunk-T6OODF2U.js";
599
+ import "./chunk-27ONXAFY.js";
600
+ import "./chunk-ZEADBZLO.js";
593
601
  import {
594
602
  elapsedActiveTime,
595
603
  goalRequiresExactPermit
596
- } from "./chunk-LDGWX737.js";
604
+ } from "./chunk-FN5C6C7G.js";
597
605
  import {
598
606
  APPROVAL_MODES
599
- } from "./chunk-VLRBJ24J.js";
607
+ } from "./chunk-BVE5EMIG.js";
600
608
  import "./chunk-MLXTMF7H.js";
601
609
  import "./chunk-NAVJD2PQ.js";
602
- import "./chunk-WRT324N6.js";
603
- import "./chunk-YDJRMQU4.js";
604
- import "./chunk-SJ4HB27T.js";
610
+ import "./chunk-FVDQ5E67.js";
611
+ import "./chunk-V3GINY6K.js";
612
+ import "./chunk-QHMLYMMS.js";
613
+ import "./chunk-SDVF6A42.js";
605
614
  import "./chunk-P3QQPMQA.js";
606
- import "./chunk-2UZJWSVD.js";
615
+ import "./chunk-ILPXSKGQ.js";
607
616
  import "./chunk-VNOVK4I7.js";
608
617
  import "./chunk-SAH4BD2J.js";
609
- import "./chunk-VSNPOSDN.js";
618
+ import "./chunk-ZKAZP2ZG.js";
610
619
  import {
611
620
  runOutsideAgentContext
612
- } from "./chunk-I432KXWD.js";
621
+ } from "./chunk-DP7LABIB.js";
613
622
  import "./chunk-S6LOFUVP.js";
614
- import "./chunk-7IV52LTO.js";
615
- import "./chunk-AXMWHKXA.js";
623
+ import {
624
+ REASONING_EFFORT_TIERS,
625
+ applyReasoningEffort
626
+ } from "./chunk-2LD5U7Q3.js";
616
627
  import "./chunk-DJ2GSRLV.js";
617
- import "./chunk-2J3OJGTL.js";
618
- import "./chunk-LI4YHTQK.js";
619
- import "./chunk-QKBYFU2Q.js";
620
- import "./chunk-C72BXMJ5.js";
628
+ import "./chunk-I6VVOZDK.js";
629
+ import "./chunk-K2OJUPOE.js";
630
+ import "./chunk-CFKIH3D3.js";
631
+ import "./chunk-EB4VDXNI.js";
632
+ import "./chunk-FJWICLG7.js";
621
633
  import {
622
634
  ApiCancelEvent,
623
635
  AuthEvent,
@@ -656,61 +668,59 @@ import {
656
668
  runVisionBridge,
657
669
  shouldRunVisionBridge,
658
670
  splitImageParts
659
- } from "./chunk-FDD2IUEL.js";
671
+ } from "./chunk-UX3IFLJM.js";
660
672
  import "./chunk-YRLW2MSX.js";
661
673
  import "./chunk-VGC4I5JJ.js";
662
674
  import {
663
- getAllGeminiMdFilenames
664
- } from "./chunk-IWOWEENB.js";
675
+ getAllGeminiMdFilenames,
676
+ getUnsupportedImageFormatWarning,
677
+ isSupportedImageMimeType
678
+ } from "./chunk-WBT3STGU.js";
665
679
  import {
666
680
  AUTO_MEMORY_INDEX_FILENAME,
667
681
  getAutoMemoryProjectStateDir,
668
682
  getAutoMemoryRoot,
669
683
  getUserAutoMemoryRoot,
670
684
  isAnyAutoMemPath
671
- } from "./chunk-HIK2OF33.js";
685
+ } from "./chunk-PVBT5QPD.js";
672
686
  import {
673
687
  runSideQuery
674
- } from "./chunk-ZRYQMWEP.js";
675
- import "./chunk-2E3V7G6Y.js";
676
- import {
677
- MAINLINE_CODER_MODEL
678
- } from "./chunk-F6WFNA7U.js";
688
+ } from "./chunk-IPQA4SR5.js";
679
689
  import "./chunk-WZAD4ZNJ.js";
680
690
  import {
681
691
  DEFAULT_TOKEN_LIMIT
682
692
  } from "./chunk-FPGTNKCP.js";
693
+ import "./chunk-SLEWBQWM.js";
683
694
  import {
684
- getUnsupportedImageFormatWarning,
685
- isSupportedImageMimeType
686
- } from "./chunk-YHC2EYYG.js";
687
- import "./chunk-PZRUV52H.js";
688
- import "./chunk-JGUBDRBC.js";
695
+ MAINLINE_CODER_MODEL
696
+ } from "./chunk-4X5GYZFO.js";
697
+ import "./chunk-XZA32HII.js";
689
698
  import {
690
699
  atomicWriteFileSync
691
- } from "./chunk-HDKCKCYO.js";
700
+ } from "./chunk-7QGEJI7M.js";
701
+ import "./chunk-GTUKW3I6.js";
692
702
  import "./chunk-HHJLM3WQ.js";
693
703
  import {
694
704
  endInteractionSpan,
695
705
  getActiveInteractionSpan,
696
706
  isBinary,
697
707
  redactUrlCredentials
698
- } from "./chunk-GAHYKJPV.js";
708
+ } from "./chunk-6US7BF3G.js";
699
709
  import "./chunk-74TONY4F.js";
700
- import "./chunk-XL5K4SVK.js";
710
+ import "./chunk-VL4YX3FH.js";
701
711
  import {
702
712
  getStartupContextLength,
703
713
  isSystemReminderContent
704
- } from "./chunk-WZDM44SB.js";
705
- import "./chunk-K623ENWT.js";
714
+ } from "./chunk-JUIJ3FXC.js";
715
+ import "./chunk-E6FGMDFQ.js";
706
716
  import "./chunk-AQ37AY7B.js";
707
717
  import {
708
718
  isPathWithinRoot
709
- } from "./chunk-K52PZNU4.js";
719
+ } from "./chunk-RRKNX553.js";
710
720
  import {
711
721
  ToolNames,
712
722
  isShellProgressData
713
- } from "./chunk-6NFAEG54.js";
723
+ } from "./chunk-KOJ6MHD5.js";
714
724
  import {
715
725
  Storage,
716
726
  UnauthorizedError,
@@ -722,17 +732,17 @@ import {
722
732
  isNodeError,
723
733
  shortenPath,
724
734
  tildeifyPath
725
- } from "./chunk-A5F2YNO6.js";
726
- import "./chunk-VEND4KA4.js";
735
+ } from "./chunk-2NNTE2ED.js";
736
+ import "./chunk-YT5XN3HV.js";
737
+ import {
738
+ registerCleanup,
739
+ runExitCleanup
740
+ } from "./chunk-RCDXSEJ5.js";
727
741
  import {
728
742
  finalizeStartupProfile,
729
743
  profileCheckpoint
730
744
  } from "./chunk-QILD6R27.js";
731
745
  import "./chunk-JVEGA3MM.js";
732
- import {
733
- registerCleanup,
734
- runExitCleanup
735
- } from "./chunk-4CWDWDL6.js";
736
746
  import {
737
747
  clearScreen,
738
748
  writeStderrLine,
@@ -4870,7 +4880,7 @@ var PluginChoicePrompt = /* @__PURE__ */ __name((props) => {
4870
4880
  init_esbuild_shims();
4871
4881
  var import_react19 = __toESM(require_react(), 1);
4872
4882
 
4873
- // packages/cli/src/utils/dialogScopeUtils.ts
4883
+ // packages/cli/src/config/dialogScopeUtils.ts
4874
4884
  init_esbuild_shims();
4875
4885
  var SCOPE_LABELS = {
4876
4886
  ["User" /* User */]: "User Settings",
@@ -6854,7 +6864,9 @@ function SettingsDialog({
6854
6864
  setModifiedSettings(newModified);
6855
6865
  }, [selectedScope, settings, globalPendingChanges]);
6856
6866
  const generateSettingsItems = /* @__PURE__ */ __name(() => {
6857
- const settingKeys = getDialogSettingKeys();
6867
+ const settingKeys = getDialogSettingKeys({
6868
+ excludeWorkspaceRestricted: selectedScope === "Workspace" /* Workspace */
6869
+ });
6858
6870
  return settingKeys.map((key) => {
6859
6871
  const definition = getSettingDefinition(key);
6860
6872
  return {
@@ -11360,8 +11372,8 @@ function ModelDialog({
11360
11372
  const imageModelSelector = encodeVisionModelSelector(
11361
11373
  buildModelSelectionKey(m.authType, m.id, m.baseUrl)
11362
11374
  );
11363
- const isSelectableImageModel = isImageModelMode ? m.imageOnly === true && config?.resolveImageGenerationModel(imageModelSelector) !== void 0 : m.imageOnly !== true;
11364
- return !m.isRuntimeModel && (m.authType !== "qwen-oauth" /* QWEN_OAUTH */ || authType === "qwen-oauth" /* QWEN_OAUTH */) && isSelectableImageModel && (isFastModelMode || !m.fastOnly) && (isVoiceModelMode || !m.voiceOnly) && (isVisionModelMode || !m.visionOnly);
11375
+ const isSelectableImageModel = isImageModelMode ? isImageGenerationCapable(m) && config?.resolveImageGenerationModel(imageModelSelector) !== void 0 : m.imageOnly !== true;
11376
+ return !m.isRuntimeModel && (m.authType !== "qwen-oauth" /* QWEN_OAUTH */ || authType === "qwen-oauth" /* QWEN_OAUTH */) && isSelectableImageModel && (isFastModelMode || !m.fastOnly) && (isVoiceModelMode || !m.voiceOnly) && (isVisionModelMode || isImageModelMode || !m.visionOnly);
11365
11377
  });
11366
11378
  const modelsByAuthTypeMap = /* @__PURE__ */ new Map();
11367
11379
  for (const model of registryModels) {
@@ -15638,7 +15650,7 @@ function isInsideContainer() {
15638
15650
  __name(isInsideContainer, "isInsideContainer");
15639
15651
 
15640
15652
  // node_modules/is-wsl/index.js
15641
- var isWsl = /* @__PURE__ */ __name(() => {
15653
+ var isWsl2 = /* @__PURE__ */ __name(() => {
15642
15654
  if (process4.platform !== "linux") {
15643
15655
  return false;
15644
15656
  }
@@ -15654,7 +15666,7 @@ var isWsl = /* @__PURE__ */ __name(() => {
15654
15666
  return false;
15655
15667
  }
15656
15668
  }, "isWsl");
15657
- var is_wsl_default = process4.env.__IS_WSL_TEST__ ? isWsl : isWsl();
15669
+ var is_wsl_default = process4.env.__IS_WSL_TEST__ ? isWsl2 : isWsl2();
15658
15670
 
15659
15671
  // node_modules/wsl-utils/index.js
15660
15672
  var wslDrivesMountPoint = /* @__PURE__ */ (() => {
@@ -23834,7 +23846,7 @@ function elapsedFor(entry) {
23834
23846
  return formatDuration(wholeSeconds * 1e3, { hideTrailingZeros: true });
23835
23847
  }
23836
23848
  __name(elapsedFor, "elapsedFor");
23837
- function truncateToWidth(text, maxWidth) {
23849
+ function truncateToWidth2(text, maxWidth) {
23838
23850
  if (maxWidth <= 0) return "";
23839
23851
  if (getCachedStringWidth(text) <= maxWidth) return text;
23840
23852
  const ellipsis = "\u2026";
@@ -23850,7 +23862,7 @@ function truncateToWidth(text, maxWidth) {
23850
23862
  }
23851
23863
  return result + ellipsis;
23852
23864
  }
23853
- __name(truncateToWidth, "truncateToWidth");
23865
+ __name(truncateToWidth2, "truncateToWidth");
23854
23866
  var ListBody = /* @__PURE__ */ __name(({ entries, selectedIndex, maxRows }) => {
23855
23867
  if (entries.length === 0) {
23856
23868
  return /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Box_default, { flexDirection: "column", children: [
@@ -24149,7 +24161,7 @@ var AgentDetailBody = /* @__PURE__ */ __name(({ entry, maxHeight, maxWidth }) =>
24149
24161
  const fullLabel = sanitizeMultilineForDisplay(
24150
24162
  formatActivityLabel(a.name, a.description)
24151
24163
  );
24152
- const label = truncateToWidth(
24164
+ const label = truncateToWidth2(
24153
24165
  fullLabel,
24154
24166
  Math.max(0, maxWidth - getCachedStringWidth(prefix))
24155
24167
  );
@@ -24438,7 +24450,8 @@ var BackgroundTasksDialog = /* @__PURE__ */ __name(({
24438
24450
  selectedApproval.ownerId,
24439
24451
  selectedApproval.approval.callId,
24440
24452
  outcome,
24441
- payload
24453
+ payload,
24454
+ selectedApproval.approval.subagentId
24442
24455
  );
24443
24456
  return;
24444
24457
  }
@@ -24701,6 +24714,12 @@ var BackgroundTasksDialog = /* @__PURE__ */ __name(({
24701
24714
  ) : /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Box_default, { paddingX: 1, children: /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Text, { color: theme.text.secondary, children: t("No entry to show.") }) }),
24702
24715
  approvalActive && approvalConfirmationDetails && /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Box_default, { flexDirection: "column", marginTop: 1, paddingX: 1, children: [
24703
24716
  /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(Text, { bold: true, color: theme.status.warning, children: selectedApproval?.kind === "workflow" ? `[workflow] ${t("needs approval")}` : t("Background agent needs approval") }),
24717
+ selectedApproval?.kind === "agent" && selectedApproval.approval.subagentId !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime99.jsxs)(Text, { color: theme.text.secondary, children: [
24718
+ t("from nested agent"),
24719
+ ":",
24720
+ " ",
24721
+ selectedApproval.approval.subagentId
24722
+ ] }),
24704
24723
  /* @__PURE__ */ (0, import_jsx_runtime99.jsx)(
24705
24724
  ToolConfirmationMessage,
24706
24725
  {
@@ -28251,6 +28270,8 @@ __name(TextInputMouseController, "TextInputMouseController");
28251
28270
 
28252
28271
  // packages/cli/src/ui/components/BaseTextInput.tsx
28253
28272
  var import_jsx_runtime106 = __toESM(require_jsx_runtime(), 1);
28273
+ var TOP_BORDER_LABEL_DECORATION_WIDTH = 4;
28274
+ var TOP_BORDER_MIN_LEADING_DASHES = 1;
28254
28275
  function defaultRenderLine({
28255
28276
  lineText,
28256
28277
  isOnCursorLine,
@@ -28417,9 +28438,11 @@ var BaseTextInput = /* @__PURE__ */ __name(({
28417
28438
  const resolvedBorderColor = borderColor ?? theme.border.focused;
28418
28439
  const resolvedPrefix = prefix ?? /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(Text, { color: theme.text.accent, children: "> " });
28419
28440
  const columns = process.stdout.columns || 80;
28420
- const labelWidth = topRightLabel ? stringWidth(topRightLabel) + 4 : 0;
28421
- const dashCount = Math.max(1, columns - labelWidth);
28422
- const topBorderLine = topRightLabel ? `${"\u2500".repeat(dashCount)} ${topRightLabel} ${"\u2500".repeat(2)}` : "\u2500".repeat(columns);
28441
+ const labelBudget = columns - TOP_BORDER_LABEL_DECORATION_WIDTH - TOP_BORDER_MIN_LEADING_DASHES;
28442
+ const renderedLabel = topRightLabel ? truncateToWidth(topRightLabel, labelBudget) : "";
28443
+ const labelWidth = renderedLabel ? stringWidth(renderedLabel) + TOP_BORDER_LABEL_DECORATION_WIDTH : 0;
28444
+ const dashCount = columns - labelWidth;
28445
+ const topBorderLine = renderedLabel ? `${"\u2500".repeat(dashCount)} ${renderedLabel} ${"\u2500".repeat(2)}` : "\u2500".repeat(columns);
28423
28446
  return /* @__PURE__ */ (0, import_jsx_runtime106.jsxs)(Box_default, { ref: boxRef, flexDirection: "column", children: [
28424
28447
  mouseEnabled && isActive && /* @__PURE__ */ (0, import_jsx_runtime106.jsx)(
28425
28448
  TextInputMouseController,
@@ -28555,6 +28578,7 @@ function useVoiceInput({
28555
28578
  refine,
28556
28579
  onSubmit,
28557
28580
  warmup,
28581
+ checkMicrophonePermission,
28558
28582
  streaming,
28559
28583
  openStream
28560
28584
  }) {
@@ -28667,6 +28691,7 @@ function useVoiceInput({
28667
28691
  );
28668
28692
  const startRecording = (0, import_react97.useCallback)(
28669
28693
  (silenceDetection) => {
28694
+ checkMicrophonePermission?.();
28670
28695
  const recorder = createRecorder();
28671
28696
  const sessionId = ++sessionIdRef.current;
28672
28697
  recorderRef.current = recorder;
@@ -28770,6 +28795,7 @@ function useVoiceInput({
28770
28795
  });
28771
28796
  },
28772
28797
  [
28798
+ checkMicrophonePermission,
28773
28799
  clearPump,
28774
28800
  clearReleaseTimer,
28775
28801
  createRecorder,
@@ -29693,7 +29719,8 @@ var InputPrompt = /* @__PURE__ */ __name(({
29693
29719
  isEmbeddedShellFocused,
29694
29720
  promptSuggestion,
29695
29721
  onPromptSuggestionDismiss,
29696
- clipboardUnavailableShownRef: sessionClipboardUnavailableShownRef
29722
+ clipboardUnavailableShownRef: sessionClipboardUnavailableShownRef,
29723
+ voiceMicWarnedStatusRef: sessionVoiceMicWarnedStatusRef
29697
29724
  }) => {
29698
29725
  const isShellFocused = useShellFocusState();
29699
29726
  const uiState = useUIState();
@@ -29833,7 +29860,10 @@ var InputPrompt = /* @__PURE__ */ __name(({
29833
29860
  (raw, signal) => refineVoiceTranscript(config, raw, signal),
29834
29861
  [config]
29835
29862
  );
29836
- const voiceMicWarnedStatusRef = (0, import_react98.useRef)(null);
29863
+ const localVoiceMicWarnedStatusRef = (0, import_react98.useRef)(
29864
+ null
29865
+ );
29866
+ const voiceMicWarnedStatusRef = sessionVoiceMicWarnedStatusRef ?? localVoiceMicWarnedStatusRef;
29837
29867
  const voiceRecorderRef = (0, import_react98.useRef)(null);
29838
29868
  const getVoiceRecorder = (0, import_react98.useCallback)(() => {
29839
29869
  voiceRecorderRef.current ??= createVoiceRecorder();
@@ -29843,6 +29873,9 @@ var InputPrompt = /* @__PURE__ */ __name(({
29843
29873
  const recorder = getVoiceRecorder();
29844
29874
  void Promise.resolve(recorder.warmup?.()).catch(() => {
29845
29875
  });
29876
+ }, [getVoiceRecorder]);
29877
+ const checkVoiceMicPermission = (0, import_react98.useCallback)(() => {
29878
+ const recorder = getVoiceRecorder();
29846
29879
  void Promise.resolve(recorder.microphoneStatus?.()).then((status) => {
29847
29880
  if (voiceMicWarnedStatusRef.current === status) {
29848
29881
  return;
@@ -29872,7 +29905,7 @@ var InputPrompt = /* @__PURE__ */ __name(({
29872
29905
  }
29873
29906
  }).catch(() => {
29874
29907
  });
29875
- }, [getVoiceRecorder, uiState.historyManager]);
29908
+ }, [getVoiceRecorder, uiState.historyManager, voiceMicWarnedStatusRef]);
29876
29909
  const voiceStreaming = voiceModel ? isStreamingVoiceModel(voiceModel) : false;
29877
29910
  const openVoiceStreamSession = (0, import_react98.useCallback)(
29878
29911
  (callbacks) => {
@@ -29909,6 +29942,7 @@ var InputPrompt = /* @__PURE__ */ __name(({
29909
29942
  refine: voiceRefineEnabled ? refineVoice : void 0,
29910
29943
  onSubmit: /* @__PURE__ */ __name((text) => voiceSubmitRef.current(text), "onSubmit"),
29911
29944
  warmup: warmupVoice,
29945
+ checkMicrophonePermission: checkVoiceMicPermission,
29912
29946
  streaming: voiceStreaming,
29913
29947
  openStream: voiceStreaming ? openVoiceStreamSession : void 0
29914
29948
  });
@@ -32319,7 +32353,8 @@ var Composer = /* @__PURE__ */ __name(({ footerRef }) => {
32319
32353
  placeholder: vimEnabled ? " " + t("Press 'i' for INSERT mode and 'Esc' for NORMAL mode.") : " " + t("Type your message or @path/to/file"),
32320
32354
  promptSuggestion: uiState.promptSuggestion,
32321
32355
  onPromptSuggestionDismiss: uiState.abortPromptSuggestion,
32322
- clipboardUnavailableShownRef
32356
+ clipboardUnavailableShownRef,
32357
+ voiceMicWarnedStatusRef: uiState.voiceMicWarnedStatusRef
32323
32358
  }
32324
32359
  ),
32325
32360
  uiState.isInputActive && !showSuggestions && (showShortcuts ? /* @__PURE__ */ (0, import_jsx_runtime119.jsx)(KeyboardShortcuts, {}) : !isScreenReaderEnabled && /* @__PURE__ */ (0, import_jsx_runtime119.jsx)(Footer, { containerRef: footerRef }))
@@ -33916,8 +33951,12 @@ function optimizeMultilineEraseLinesWithCount(output) {
33916
33951
  return { output: optimizedOutput, optimizedSequenceCount };
33917
33952
  }
33918
33953
  __name(optimizeMultilineEraseLinesWithCount, "optimizeMultilineEraseLinesWithCount");
33919
- function installTerminalRedrawOptimizer(stdout) {
33920
- if (process.env["QWEN_CODE_LEGACY_ERASE_LINES"] === "1") {
33954
+ function installTerminalRedrawOptimizer(stdout, env = process.env) {
33955
+ if (env["QWEN_CODE_LEGACY_ERASE_LINES"] === "1") {
33956
+ return () => {
33957
+ };
33958
+ }
33959
+ if (env["QWEN_CODE_LEGACY_ERASE_LINES"] !== "0" && isWsl(env)) {
33921
33960
  return () => {
33922
33961
  };
33923
33962
  }
@@ -34727,17 +34766,28 @@ function useBranchCommand(options) {
34727
34766
  );
34728
34767
  return;
34729
34768
  }
34730
- const oldSessionId = config.getSessionId();
34731
34769
  const newSessionId = randomUUID();
34732
34770
  const sessionService = config.getSessionService();
34771
+ let oldSessionId = config.getSessionId();
34733
34772
  let coreSwapped = false;
34734
34773
  let uiSwapped = false;
34735
34774
  let forkCreated = false;
34775
+ let swapOpened = false;
34736
34776
  let prevSessionData;
34737
34777
  try {
34778
+ const telemetrySwapOpened = config.getGeminiClient()?.beginTelemetrySwap?.() ?? true;
34779
+ if (!telemetrySwapOpened) {
34780
+ throw new Error(
34781
+ "A session switch is already in progress. Try again in a moment."
34782
+ );
34783
+ }
34784
+ swapOpened = true;
34785
+ oldSessionId = config.getSessionId();
34738
34786
  const outgoingRecording = config.getChatRecordingService();
34787
+ const sourceCustomTitle = outgoingRecording?.getCurrentCustomTitle();
34739
34788
  outgoingRecording?.finalize();
34740
34789
  await outgoingRecording?.flush();
34790
+ const sourceDisplayName = name === void 0 && sourceCustomTitle === void 0 ? await sessionService.getSessionDisplayName(oldSessionId) : void 0;
34741
34791
  try {
34742
34792
  prevSessionData = await sessionService.loadSession(oldSessionId);
34743
34793
  } catch {
@@ -34748,7 +34798,7 @@ function useBranchCommand(options) {
34748
34798
  if (!provisional) {
34749
34799
  throw new Error("Failed to load newly forked session");
34750
34800
  }
34751
- const baseName = name ?? deriveFirstPrompt(provisional.conversation.messages);
34801
+ const baseName = name ?? (sourceCustomTitle ? normalizeDerivedBranchTitle(sourceCustomTitle) : sourceDisplayName?.trim() || void 0) ?? deriveFirstPrompt(provisional.conversation.messages);
34752
34802
  const effectiveTitle = await computeUniqueBranchTitle(
34753
34803
  baseName,
34754
34804
  sessionService
@@ -34778,10 +34828,11 @@ function useBranchCommand(options) {
34778
34828
  collapsePreviewCount
34779
34829
  );
34780
34830
  startNewSession(newSessionId);
34831
+ uiSwapped = true;
34832
+ config.getGeminiClient()?.commitTelemetrySwap?.();
34781
34833
  clearPendingState?.();
34782
34834
  historyManager.clearItems();
34783
34835
  historyManager.loadHistory(uiHistoryItems);
34784
- uiSwapped = true;
34785
34836
  resetBackgroundStateForSessionSwitch(config);
34786
34837
  setSessionName?.(effectiveTitle);
34787
34838
  remount?.();
@@ -34815,6 +34866,9 @@ function useBranchCommand(options) {
34815
34866
  `Rollback after failed /branch init failed: ${rollbackErr}`
34816
34867
  );
34817
34868
  }
34869
+ config.getGeminiClient()?.abortTelemetrySwap?.();
34870
+ } else if (swapOpened) {
34871
+ config.getGeminiClient()?.commitTelemetrySwap?.();
34818
34872
  }
34819
34873
  if (forkCreated && !uiSwapped) {
34820
34874
  try {
@@ -34897,6 +34951,19 @@ function useResumeCommand(options) {
34897
34951
  return;
34898
34952
  }
34899
34953
  closeResumeDialog();
34954
+ let swapOpened = false;
34955
+ const telemetrySwapOpened = config.getGeminiClient()?.beginTelemetrySwap?.() ?? true;
34956
+ if (!telemetrySwapOpened) {
34957
+ addItem(
34958
+ {
34959
+ type: "error" /* ERROR */,
34960
+ text: "A session switch is already in progress. Try again in a moment."
34961
+ },
34962
+ Date.now()
34963
+ );
34964
+ return;
34965
+ }
34966
+ swapOpened = true;
34900
34967
  const oldSessionId = config.getSessionId();
34901
34968
  let coreSwapped = false;
34902
34969
  let uiSwapped = false;
@@ -34906,6 +34973,7 @@ function useResumeCommand(options) {
34906
34973
  const sessionService = new SessionService(cwd3);
34907
34974
  const sessionData = await sessionService.loadSession(sessionId);
34908
34975
  if (!sessionData) {
34976
+ config.getGeminiClient()?.commitTelemetrySwap?.();
34909
34977
  return;
34910
34978
  }
34911
34979
  const customTitle = sessionService.getSessionTitle(sessionId);
@@ -34941,6 +35009,8 @@ function useResumeCommand(options) {
34941
35009
  recoveredBackgroundAgentsNotice = config.getBackgroundAgentResumeService().buildRecoveredBackgroundAgentsNotice(recovered.length);
34942
35010
  }
34943
35011
  startNewSession(sessionId);
35012
+ uiSwapped = true;
35013
+ config.getGeminiClient()?.commitTelemetrySwap?.();
34944
35014
  setSessionName?.(customTitle ?? null);
34945
35015
  clearPendingState?.();
34946
35016
  clearItems();
@@ -34954,13 +35024,20 @@ function useResumeCommand(options) {
34954
35024
  Date.now()
34955
35025
  );
34956
35026
  }
34957
- uiSwapped = true;
34958
35027
  remount?.();
34959
35028
  } catch (error) {
34960
35029
  if (coreSwapped && !uiSwapped) {
34961
35030
  try {
34962
35031
  resetBackgroundStateForSessionSwitch(config);
34963
- config.startNewSession(oldSessionId, void 0);
35032
+ let prevSessionData;
35033
+ try {
35034
+ prevSessionData = await new SessionService(
35035
+ config.getTargetDir()
35036
+ ).loadSession(oldSessionId);
35037
+ } catch {
35038
+ }
35039
+ config.startNewSession(oldSessionId, prevSessionData);
35040
+ await config.getGeminiClient()?.initialize?.();
34964
35041
  await config.loadPausedBackgroundAgents(oldSessionId).catch(() => {
34965
35042
  });
34966
35043
  } catch (rollbackErr) {
@@ -34968,6 +35045,9 @@ function useResumeCommand(options) {
34968
35045
  `Rollback after failed /resume init failed: ${rollbackErr}`
34969
35046
  );
34970
35047
  }
35048
+ config.getGeminiClient()?.abortTelemetrySwap?.();
35049
+ } else if (swapOpened) {
35050
+ config.getGeminiClient()?.commitTelemetrySwap?.();
34971
35051
  }
34972
35052
  addItem(
34973
35053
  {
@@ -37791,7 +37871,11 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
37791
37871
  const [toolCalls, scheduleToolCalls, markToolsAsSubmitted] = useReactToolScheduler(
37792
37872
  async (completedToolCallsFromScheduler) => {
37793
37873
  if (completedToolCallsFromScheduler.length > 0) {
37794
- const releaseToolCompletionActivity = isSubmittingQueryRef.current ? retainSubmissionActivity(submissionLeaseGenerationRef.current) : void 0;
37874
+ setSubmissionInFlight(true);
37875
+ setIsResponding(true);
37876
+ const releaseToolCompletionActivity = retainSubmissionActivity(
37877
+ submissionLeaseGenerationRef.current
37878
+ );
37795
37879
  const batchId = getToolBatchId(
37796
37880
  completedToolCallsFromScheduler[0].request.callId
37797
37881
  );
@@ -37807,7 +37891,7 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
37807
37891
  completedToolCallsFromScheduler
37808
37892
  );
37809
37893
  } finally {
37810
- releaseToolCompletionActivity?.();
37894
+ releaseToolCompletionActivity();
37811
37895
  for (const tc of completedToolCallsFromScheduler) {
37812
37896
  if (toolBatchIdByCallIdRef.current.get(tc.request.callId) === batchId) {
37813
37897
  toolBatchIdByCallIdRef.current.delete(tc.request.callId);
@@ -38682,10 +38766,11 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
38682
38766
  const reasonClause = eventValue?.triggerReason === "image_overflow" ? `accumulated enough tool screenshots to trigger compaction for ${activeModel}` : `approached the input token limit for ${activeModel}`;
38683
38767
  const warningSuffix = eventValue?.warning ? `
38684
38768
  \u26A0\uFE0F ${eventValue.warning}` : "";
38769
+ const formatCount2 = /* @__PURE__ */ __name((count, isEstimated) => count === void 0 ? "unknown" : isEstimated ? `~${count}` : String(count), "formatCount");
38685
38770
  return addItem(
38686
38771
  {
38687
38772
  type: "info",
38688
- text: `IMPORTANT: This conversation ${reasonClause}. A compressed context will be sent for future messages (compressed from: ${eventValue?.originalTokenCount ?? "unknown"} to ${eventValue?.newTokenCount ?? "unknown"} tokens).` + warningSuffix
38773
+ text: `IMPORTANT: This conversation ${reasonClause}. A compressed context will be sent for future messages (compressed from: ${formatCount2(eventValue?.originalTokenCount, eventValue?.originalTokenCountIsEstimated)} to ${formatCount2(eventValue?.newTokenCount, eventValue?.newTokenCountIsEstimated)} tokens).` + warningSuffix
38689
38774
  },
38690
38775
  Date.now()
38691
38776
  );
@@ -39671,15 +39756,12 @@ var useGeminiStream = /* @__PURE__ */ __name((geminiClient, history, addItem, co
39671
39756
  let preparedQuery;
39672
39757
  try {
39673
39758
  preparedQuery = submitType === "goal" /* Goal */ ? queuedGoal ? {
39674
- queryToSend: [
39675
- "Continue working on the active Goal.",
39676
- "Use get_goal for the authoritative objective and evidence state.",
39677
- "Follow the objective's requested output format exactly. Do not add progress, status, or completion commentary unless the objective asks for it.",
39678
- "If completion depends on content delivered in this turn, deliver only that content and call get_goal in the same response before update_goal.",
39679
- "This is a synthetic continuation turn. It contains no new real user input and cannot satisfy an objective condition that requires the user to send, confirm, choose, approve, or provide something.",
39680
- "A phrase mentioned in the objective or this prompt is not evidence that the user supplied it.",
39681
- ...queuedGoal.verifierFeedback ? [`Verifier feedback: ${queuedGoal.verifierFeedback}`] : []
39682
- ].join("\n"),
39759
+ queryToSend: renderGoalContinuationPrompt({
39760
+ goalId: queuedGoal.permit.goalId,
39761
+ revision: queuedGoal.permit.revision,
39762
+ objective: queuedGoal.continuationContext,
39763
+ verifierFeedback: queuedGoal.verifierFeedback
39764
+ }),
39683
39765
  shouldProceed: true
39684
39766
  } : { queryToSend: null, shouldProceed: false } : submitType === "retry" /* Retry */ ? { queryToSend: query, shouldProceed: true } : await prepareQueryForGemini(
39685
39767
  query,
@@ -44955,6 +45037,7 @@ var AppContainer = /* @__PURE__ */ __name((props) => {
44955
45037
  [worktreeSession]
44956
45038
  );
44957
45039
  const mainControlsRef = (0, import_react162.useRef)(null);
45040
+ const voiceMicWarnedStatusRef = (0, import_react162.useRef)(null);
44958
45041
  const lastTitleRef = (0, import_react162.useRef)(null);
44959
45042
  const [startupWarnings, setStartupWarnings] = (0, import_react162.useState)(
44960
45043
  () => props.startupWarnings || []
@@ -46868,8 +46951,10 @@ ${currentText}` : popped.modelText
46868
46951
  if (isRealUserTurn(h)) targetTurnIndex++;
46869
46952
  }
46870
46953
  geminiClient2.truncateHistory(apiTruncateIndex);
46871
- const truncatedUi = expandCollapsedHistory(
46872
- originalHistory.filter((h) => h.id < userItem.id)
46954
+ const truncatedUi = recoalesceFindingsHistoryItems(
46955
+ expandCollapsedHistory(
46956
+ originalHistory.filter((h) => h.id < userItem.id)
46957
+ )
46873
46958
  );
46874
46959
  clearPendingStateRef.current();
46875
46960
  loadHistoryWithLatchReconciliation(truncatedUi);
@@ -47478,6 +47563,7 @@ ${migrationResult.failedFiles.map((f) => ` \u2022 ${f.file}: ${f.error}`).join(
47478
47563
  terminalWidth,
47479
47564
  terminalHeight,
47480
47565
  mainControlsRef,
47566
+ voiceMicWarnedStatusRef,
47481
47567
  currentIDE,
47482
47568
  startupIdeConnectionStatus,
47483
47569
  updateInfo,
@@ -47622,6 +47708,7 @@ ${migrationResult.failedFiles.map((f) => ` \u2022 ${f.file}: ${f.error}`).join(
47622
47708
  terminalWidth,
47623
47709
  terminalHeight,
47624
47710
  mainControlsRef,
47711
+ voiceMicWarnedStatusRef,
47625
47712
  currentIDE,
47626
47713
  startupIdeConnectionStatus,
47627
47714
  updateInfo,
@@ -48091,7 +48178,8 @@ ${error.stack ?? ""}`
48091
48178
  {
48092
48179
  exitOnCtrlC: false,
48093
48180
  isScreenReaderEnabled: config.getScreenReader(),
48094
- alternateScreen: useVP
48181
+ alternateScreen: useVP,
48182
+ ...useVP ? { maxFps: 60 } : {}
48095
48183
  }
48096
48184
  );
48097
48185
  if (useVP) {