@qwen-code/qwen-code 0.21.1-simplify-system-prompt.0 → 0.21.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (422) hide show
  1. package/bundled/qc-helper/docs/configuration/model-providers.md +2 -0
  2. package/bundled/qc-helper/docs/configuration/settings.md +39 -28
  3. package/bundled/qc-helper/docs/features/channels/_meta.ts +2 -0
  4. package/bundled/qc-helper/docs/features/channels/github.md +139 -0
  5. package/bundled/qc-helper/docs/features/channels/gitlab.md +171 -0
  6. package/bundled/qc-helper/docs/features/channels/overview.md +61 -6
  7. package/bundled/qc-helper/docs/features/code-review.md +21 -1
  8. package/bundled/qc-helper/docs/features/hooks.md +72 -15
  9. package/bundled/qc-helper/docs/features/mcp.md +9 -1
  10. package/bundled/qc-helper/docs/features/scheduled-tasks.md +3 -1
  11. package/bundled/qc-helper/docs/features/sub-agents.md +42 -8
  12. package/bundled/qc-helper/docs/qwen-serve.md +11 -7
  13. package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +2 -2
  14. package/bundled/qc-helper/docs/support/troubleshooting.md +2 -1
  15. package/bundled/review/DESIGN.md +19 -0
  16. package/bundled/review/SKILL.md +120 -61
  17. package/chunks/MaxSizedBox-TQBQ247P.js +88 -0
  18. package/chunks/{StandaloneSessionPicker-O6RKBPU4.js → StandaloneSessionPicker-2HPTKCLX.js} +71 -69
  19. package/chunks/{acp-startup-profiler-RV3IV562.js → acp-startup-profiler-2C4A5ZTJ.js} +2 -2
  20. package/chunks/{acpAgent-HYFVXVDR.js → acpAgent-PS6EDGH3.js} +1628 -590
  21. package/chunks/agent-VDOUB35F.js +84 -0
  22. package/chunks/agent-headless-EO53EFS2.js +78 -0
  23. package/chunks/{anthropicContentGenerator-LXUXMOE7.js → anthropicContentGenerator-OFHSZJBF.js} +61 -20
  24. package/chunks/{artifact-tool-Y5T7GG7F.js → artifact-tool-RDN2W7ND.js} +4 -4
  25. package/chunks/{askUserQuestion-2H6747FR.js → askUserQuestion-OZERWH5R.js} +4 -4
  26. package/chunks/bridge-W7AZSRZQ.js +94 -0
  27. package/chunks/{build-RV63TIRH.js → build-GDBLPA24.js} +1 -1
  28. package/chunks/{ca-25EDXPFZ.js → ca-6W3SK7OQ.js} +6 -1
  29. package/chunks/{channel-management-service-G74LFADV.js → channel-management-service-5S7YCWX5.js} +20 -5
  30. package/chunks/channel-settings-store-JFVRSNER.js +91 -0
  31. package/chunks/{channel-worker-group-PTJIJSKC.js → channel-worker-group-OVWGYMZS.js} +9 -5
  32. package/chunks/{channel-worker-manager-WIMGM2FD.js → channel-worker-manager-H55GKOQA.js} +9 -5
  33. package/chunks/{channel-worker-supervisor-KUFTR6P5.js → channel-worker-supervisor-CABBXYHK.js} +5 -4
  34. package/chunks/{chunk-6GMVPFB2.js → chunk-2IIJTXYF.js} +45 -16
  35. package/chunks/{chunk-BPJSQIJX.js → chunk-2J3OJGTL.js} +0 -2
  36. package/chunks/{chunk-I7XZ3RY5.js → chunk-2KKCCLPT.js} +1 -1
  37. package/chunks/{chunk-MSLKI6C2.js → chunk-2LEOZTBT.js} +49 -26
  38. package/chunks/{chunk-3QMGYBFN.js → chunk-3APUUXRF.js} +1 -80
  39. package/chunks/{chunk-VV6XU5L7.js → chunk-3F2WDAV6.js} +16 -11
  40. package/chunks/{chunk-MUP3T3AD.js → chunk-3I6DUGQD.js} +1 -35
  41. package/chunks/{chunk-66RMLJHC.js → chunk-44F4LBWZ.js} +577 -208
  42. package/chunks/{chunk-VAK25FTU.js → chunk-45IOTAUS.js} +1 -1
  43. package/chunks/{chunk-JZA3JUDJ.js → chunk-4KP2F2TE.js} +1 -1
  44. package/chunks/{chunk-DM4Q4JJH.js → chunk-54YCNSK5.js} +36562 -45062
  45. package/chunks/{chunk-2Q3OT4OV.js → chunk-56Z7QEAQ.js} +200 -77
  46. package/chunks/{chunk-ZOIFNCKL.js → chunk-5NNHICSA.js} +3 -23
  47. package/chunks/{chunk-A4UCTEB5.js → chunk-5WV5S2GT.js} +0 -1
  48. package/chunks/{chunk-RHLZR4E5.js → chunk-675H6PLP.js} +1 -1
  49. package/chunks/{chunk-YAF5VNU7.js → chunk-6CQWRWUC.js} +4 -5
  50. package/chunks/chunk-6FMJLI5M.js +1591 -0
  51. package/chunks/{chunk-HV3G62R6.js → chunk-6MPDY6ZG.js} +1 -1
  52. package/chunks/{chunk-32MVHM4T.js → chunk-6PQPKTXP.js} +1 -1
  53. package/chunks/{chunk-LG4GZIVV.js → chunk-6TAASXWL.js} +4 -4
  54. package/chunks/{chunk-OJGCZBB7.js → chunk-77V3VIKL.js} +41 -36
  55. package/chunks/{chunk-2OM7GEXO.js → chunk-7KAXXBER.js} +3 -3
  56. package/chunks/{chunk-2JM6GZ5D.js → chunk-7SJN2IWT.js} +8 -13
  57. package/chunks/{chunk-UUUTRMI2.js → chunk-7ULQIS27.js} +1 -1
  58. package/chunks/{chunk-2YZJCM5T.js → chunk-A7Y5H4TX.js} +4 -4
  59. package/chunks/{chunk-TOFQCPDC.js → chunk-AOHY3QJ3.js} +14 -8
  60. package/chunks/chunk-AQ37AY7B.js +93 -0
  61. package/chunks/{chunk-B6ZJ7SI6.js → chunk-AUOULH6Q.js} +383 -320
  62. package/chunks/{chunk-PJIZUQVC.js → chunk-AZQ3DT76.js} +2 -2
  63. package/chunks/{chunk-UH3WSE5L.js → chunk-B4AJNNOL.js} +1 -6
  64. package/chunks/{chunk-7FZEBPKS.js → chunk-BBIQAX4V.js} +23 -18
  65. package/chunks/{chunk-L26JL52R.js → chunk-CBBP4BMC.js} +64 -67
  66. package/chunks/{chunk-ZD6UTE4A.js → chunk-CNTR4GR6.js} +1 -1
  67. package/chunks/{chunk-4M377AZG.js → chunk-CO2U743O.js} +6 -6
  68. package/chunks/{chunk-3SJ43L4W.js → chunk-CPZAH673.js} +6 -0
  69. package/chunks/{chunk-VFSJ5VRH.js → chunk-CU47KXB5.js} +3 -3
  70. package/chunks/{chunk-EPDRMGT4.js → chunk-D4HTUMGX.js} +4 -28
  71. package/chunks/{chunk-XHRTVPG2.js → chunk-D6MDRSZ6.js} +7 -7
  72. package/chunks/{chunk-BYFNTGKI.js → chunk-DEEABGH2.js} +3111 -989
  73. package/chunks/{chunk-XVNQMZ2I.js → chunk-DGEIYUC3.js} +0 -1
  74. package/chunks/{chunk-BPZALHVR.js → chunk-DI35ZN7T.js} +1 -1
  75. package/chunks/{chunk-B4UMZKMU.js → chunk-DQ2O5QOJ.js} +1 -1
  76. package/chunks/{chunk-DLWL3Z7A.js → chunk-DSFHVTWD.js} +3 -3
  77. package/chunks/{chunk-RWS5VYWC.js → chunk-DUNI4EBW.js} +950 -446
  78. package/chunks/{chunk-NL7LTRLR.js → chunk-E2BHWIDT.js} +48 -72
  79. package/chunks/{chunk-3MSHSCSN.js → chunk-E2FN6SM7.js} +93 -3
  80. package/chunks/{chunk-USTWD7QV.js → chunk-E6CJ2SMM.js} +26 -16
  81. package/chunks/{chunk-TF2X2WCT.js → chunk-EQNUDTL6.js} +2 -2
  82. package/chunks/{chunk-PANH4R3B.js → chunk-EU5TBFJI.js} +18 -12
  83. package/chunks/{chunk-W4CQXHT6.js → chunk-FANRZEAJ.js} +1 -1
  84. package/chunks/{chunk-WBL3FJEU.js → chunk-FC4KQFCS.js} +1 -1
  85. package/chunks/{chunk-N3FAY5CM.js → chunk-FCYYAB4S.js} +157 -4
  86. package/chunks/{chunk-OKY7HXPG.js → chunk-FJ5WUMUQ.js} +2 -2
  87. package/chunks/{chunk-M4UKFCZ2.js → chunk-FNDXMN7I.js} +231 -171
  88. package/chunks/{chunk-FQK6JAFG.js → chunk-FS674JW4.js} +4 -4
  89. package/chunks/chunk-FYJ7W2PI.js +194 -0
  90. package/chunks/{chunk-INADJJGW.js → chunk-G7XXKQYS.js} +2 -2
  91. package/chunks/{chunk-LNARWLZQ.js → chunk-GJ2GBPBD.js} +2 -2
  92. package/chunks/{chunk-E5WH5O3C.js → chunk-GL4JOZXU.js} +4 -4
  93. package/chunks/{chunk-LS77BEZP.js → chunk-GLCZKT5V.js} +1 -5
  94. package/chunks/{chunk-KU5XMLDK.js → chunk-GURGAJTX.js} +4 -1
  95. package/chunks/{chunk-5THCYPLO.js → chunk-H6I4PGRV.js} +15 -8
  96. package/chunks/{chunk-A5L3JMUA.js → chunk-HC45LTEN.js} +18 -4
  97. package/chunks/{chunk-U7TXFVUN.js → chunk-HIVKI6O6.js} +118 -95
  98. package/chunks/{chunk-QY5MMZ6O.js → chunk-HX6RLYUO.js} +3 -3
  99. package/chunks/{chunk-GZXCZHCT.js → chunk-I3G5JWBV.js} +1 -1
  100. package/chunks/{chunk-ER5LWJR6.js → chunk-I5BT7ADR.js} +3 -3
  101. package/chunks/{chunk-L5UHQJTJ.js → chunk-IGTHU3T4.js} +1 -1
  102. package/chunks/{chunk-BIQWWWJN.js → chunk-IIUGIWWY.js} +1 -1
  103. package/chunks/{chunk-ML52PL6O.js → chunk-JCJ7LKNA.js} +5856 -5334
  104. package/chunks/{chunk-B7QDM6Z7.js → chunk-JE2CEOBO.js} +2 -2
  105. package/chunks/{chunk-S3TWXGKA.js → chunk-JE7KQ2UP.js} +4 -2
  106. package/chunks/{chunk-P5V4T7NK.js → chunk-JJPKFJBT.js} +11 -3
  107. package/chunks/{chunk-J6D3VXCC.js → chunk-JLZ3RBQG.js} +18 -5
  108. package/chunks/{chunk-PWTZEM3C.js → chunk-JXVC2PL3.js} +3 -37
  109. package/chunks/chunk-JYBU6YUE.js +378 -0
  110. package/chunks/{chunk-JCW2R7WC.js → chunk-K623ENWT.js} +3 -79
  111. package/chunks/{chunk-T2NCM2ET.js → chunk-K6KS3LTN.js} +2 -749
  112. package/chunks/{chunk-Z5BLYMZM.js → chunk-KR32NIAN.js} +6 -6
  113. package/chunks/{chunk-MK7VQDN3.js → chunk-KWHKHSIS.js} +8 -6
  114. package/chunks/{chunk-5U4IPFBR.js → chunk-KXDONCPU.js} +4 -4
  115. package/chunks/{chunk-DHHOYAPR.js → chunk-L2E5GFAG.js} +7 -7
  116. package/chunks/{chunk-V6VRAM7B.js → chunk-L32VV3ZJ.js} +12 -12
  117. package/chunks/{chunk-2W3OOD4W.js → chunk-L55JWS76.js} +6 -3
  118. package/chunks/{chunk-E5TUC6CA.js → chunk-LHKCY7DY.js} +3 -3
  119. package/chunks/{chunk-NH6KE4JX.js → chunk-LOY7RWQG.js} +3 -3
  120. package/chunks/{chunk-CC4N4M36.js → chunk-LYI2PZDK.js} +1 -1
  121. package/chunks/{chunk-3JAQDSXN.js → chunk-MB32MS4U.js} +80 -9
  122. package/chunks/{chunk-PR75REBZ.js → chunk-MM7TH7ZM.js} +12 -82
  123. package/chunks/{chunk-FODK6UMO.js → chunk-MPHPFVKK.js} +0 -2
  124. package/chunks/{chunk-M5JM7OSF.js → chunk-N4ACHWNH.js} +2 -3
  125. package/chunks/{chunk-JESCGQM3.js → chunk-NAVJD2PQ.js} +8 -7
  126. package/chunks/{chunk-J56UI34H.js → chunk-NBD76HUW.js} +4 -2
  127. package/chunks/{chunk-C3NS4F2Q.js → chunk-NHFEMWAZ.js} +1 -1
  128. package/chunks/{chunk-6PSLCFQ2.js → chunk-NTDH4IML.js} +18 -9
  129. package/chunks/{chunk-6OUGMXDC.js → chunk-NWNEANAT.js} +7 -7
  130. package/chunks/chunk-O6GEWCJA.js +21 -0
  131. package/chunks/chunk-OCPBI7J5.js +18 -0
  132. package/chunks/{chunk-ZE5WPL4I.js → chunk-OFZKFPYG.js} +3 -3
  133. package/chunks/{chunk-KIUFNBHR.js → chunk-P5VC5USY.js} +1 -1
  134. package/chunks/chunk-P755N4CS.js +2196 -0
  135. package/chunks/{chunk-BRRAJXPA.js → chunk-PCK4B6LR.js} +1 -1
  136. package/chunks/{chunk-TQCBGUHN.js → chunk-PJOHNFIY.js} +5 -5
  137. package/chunks/{chunk-G4WFQUYQ.js → chunk-PVNQRENX.js} +1 -1
  138. package/chunks/{chunk-DM22XS4K.js → chunk-PZEXDV3H.js} +357 -13
  139. package/chunks/{chunk-2JZBVYTU.js → chunk-Q3T5KA2V.js} +1 -8
  140. package/chunks/{chunk-SASBXAQL.js → chunk-Q5WZTTWE.js} +4 -4
  141. package/chunks/{chunk-SRZ6DXVG.js → chunk-QARJNL2V.js} +44 -136
  142. package/chunks/{chunk-YH6G52F2.js → chunk-QCXGC7QB.js} +4 -4
  143. package/chunks/{chunk-SQBYH7PX.js → chunk-QDK4F2N5.js} +1 -1
  144. package/chunks/{chunk-VDDGDZMA.js → chunk-QHWCP53L.js} +14 -7
  145. package/chunks/{chunk-H5FFA6TH.js → chunk-QTHQ6Z5X.js} +16 -3
  146. package/chunks/{chunk-5I2IWRSH.js → chunk-R2XWGR75.js} +2 -2
  147. package/chunks/{chunk-PHVR5UUY.js → chunk-RDJOB6S3.js} +1 -1
  148. package/chunks/{chunk-GDIPH4JY.js → chunk-RG64CDT2.js} +6 -6
  149. package/chunks/{chunk-3HBZKBMQ.js → chunk-RSVPYAGK.js} +5 -5
  150. package/chunks/{chunk-6AM5D4ME.js → chunk-S6LOFUVP.js} +0 -12
  151. package/chunks/{chunk-K4XWPEWB.js → chunk-SHN4KHDK.js} +4 -33
  152. package/chunks/{chunk-VYPFXUCB.js → chunk-SZ3KHTDR.js} +1 -1
  153. package/chunks/chunk-T26EAKDL.js +13 -0
  154. package/chunks/chunk-T3CHYWJZ.js +758 -0
  155. package/chunks/{chunk-FNQ6T3CV.js → chunk-TEGJSJDF.js} +10 -7
  156. package/chunks/{chunk-OHNBB4XR.js → chunk-THVU3RNH.js} +1 -1
  157. package/chunks/{record-artifact-RQKFYO5B.js → chunk-TIRRPCFS.js} +22 -7
  158. package/chunks/chunk-TTJZAIFP.js +319 -0
  159. package/chunks/{chunk-63P4EL5V.js → chunk-TZTAV5RH.js} +1 -1
  160. package/chunks/{chunk-52O2CIUL.js → chunk-UV6KF7T3.js} +130 -5
  161. package/chunks/{chunk-QPDRAXDJ.js → chunk-V25K5ID7.js} +1 -1
  162. package/chunks/{chunk-3IXOIAKE.js → chunk-V4XNUDPE.js} +18 -6
  163. package/chunks/{chunk-WDSWXQU3.js → chunk-VEMNQMHA.js} +2 -2
  164. package/chunks/{chunk-LNURQEMZ.js → chunk-VMX5RZQH.js} +12 -10
  165. package/chunks/{chunk-JALU3ZDU.js → chunk-W3UKBMSI.js} +154 -16
  166. package/chunks/{chunk-DN6ZX5AY.js → chunk-WWCMSZII.js} +61 -14
  167. package/chunks/{chunk-COH43MRJ.js → chunk-XCGIMOLN.js} +27 -1
  168. package/chunks/{chunk-FY3M44RD.js → chunk-XP4L6KS3.js} +3 -3
  169. package/chunks/{chunk-6FGBXPWM.js → chunk-XQK4XXTN.js} +38 -44
  170. package/chunks/{chunk-A6UO2C7C.js → chunk-XUGZYLDH.js} +167 -81
  171. package/chunks/{chunk-LZEMEFKY.js → chunk-YANIWTRZ.js} +1 -1
  172. package/chunks/{chunk-IPUUTYMV.js → chunk-YDLJGZHL.js} +1 -1
  173. package/chunks/{chunk-HIJQF5B5.js → chunk-YGE3IXJP.js} +1 -1
  174. package/chunks/{chunk-BJX6ZSUK.js → chunk-YUFIEIWC.js} +2 -2
  175. package/chunks/{chunk-BO4XCS7P.js → chunk-Z3S5EMOW.js} +20 -85
  176. package/chunks/chunk-Z4X5MTRT.js +133 -0
  177. package/chunks/{chunk-UW5EOVUN.js → chunk-ZBVS26BY.js} +4 -4
  178. package/chunks/{chunk-PSWQZHEA.js → chunk-ZMOJ7ISP.js} +1 -1
  179. package/chunks/{chunk-HTO4JFDZ.js → chunk-ZPJWUGCS.js} +0 -1
  180. package/chunks/{chunk-MVS3NS2N.js → chunk-ZPZ7ZJEE.js} +28 -5
  181. package/chunks/{computer-use-DOFAHZAB.js → computer-use-5QWCFNKD.js} +52 -50
  182. package/chunks/{config-utils-VFQXVGNR.js → config-utils-WADIDWGG.js} +4 -4
  183. package/chunks/contextCommand-4Z7T7TUM.js +83 -0
  184. package/chunks/core-runtime-6N4EFC2Q.js +137 -0
  185. package/chunks/{create-sub-session-IWW2IZ2T.js → create-sub-session-62YZWVAY.js} +3 -3
  186. package/chunks/{create-sub-session-7543K2QA.js → create-sub-session-AEREHZBQ.js} +49 -47
  187. package/chunks/{cron-create-YIID5XAW.js → cron-create-6E7GIQTG.js} +6 -6
  188. package/chunks/{cron-delete-ZVHYCEP2.js → cron-delete-JD26XY3W.js} +5 -5
  189. package/chunks/{cron-list-XEGS463Q.js → cron-list-CUWFB44G.js} +6 -6
  190. package/chunks/{daemon-VOMQW7KZ.js → daemon-PCNCI5YU.js} +239 -18
  191. package/chunks/daemon-status-provider-DDF7C5M7.js +93 -0
  192. package/chunks/daemon-trust-policy-Q4KSOJTR.js +88 -0
  193. package/chunks/daemon-trust-policy-monitor-V6FTE3IY.js +175 -0
  194. package/chunks/{de-HGRCYDEJ.js → de-SY6O76BF.js} +6 -1
  195. package/chunks/deferred-core-runtime-GHJ5GQHK.js +92 -0
  196. package/chunks/dist-26BIMQT6.js +4487 -0
  197. package/chunks/{dist-KTYYJ2C5.js → dist-2PERFI23.js} +12 -9
  198. package/chunks/{dist-NNVBBOGU.js → dist-OAOC5OV4.js} +2 -2
  199. package/chunks/{dist-K6Y4E7FX.js → dist-PVEAFLHY.js} +5 -4
  200. package/chunks/{dist-RTJFMNEZ.js → dist-SL2LUMML.js} +1449 -14
  201. package/chunks/dist-ULIG4M5H.js +13415 -0
  202. package/chunks/{dist-ANLAT3GS.js → dist-WGMNT3JQ.js} +2 -1
  203. package/chunks/{dist-BRB6EXK4.js → dist-ZHXOBXDN.js} +3 -3
  204. package/chunks/earlyInputCapture-TQXLLISD.js +85 -0
  205. package/chunks/{edit-RIEOJWKB.js → edit-FJEUV6KZ.js} +51 -49
  206. package/chunks/{en-MTWBNGDO.js → en-NBK3JKCE.js} +9 -1
  207. package/chunks/{enter-worktree-OGK5FQ3R.js → enter-worktree-7GE3TZ4P.js} +51 -49
  208. package/chunks/{enterPlanMode-IWZYALIB.js → enterPlanMode-KR5TMPCJ.js} +51 -49
  209. package/chunks/environment-SWL3CMB3.js +105 -0
  210. package/chunks/errors-XQE7BGZV.js +91 -0
  211. package/chunks/esm-K5FARBNI.js +5548 -0
  212. package/chunks/{exit-worktree-4TEYVIVP.js → exit-worktree-CHKTYNCV.js} +51 -49
  213. package/chunks/exitPlanMode-QYAG6LWX.js +76 -0
  214. package/chunks/{fast-path-HYE7IFEV.js → fast-path-Z2K7W6DC.js} +13 -3
  215. package/chunks/{fr-45RLL55O.js → fr-4KG5V7UT.js} +6 -1
  216. package/chunks/{gemini-NGRQX3YJ.js → gemini-YU4XKEDG.js} +107 -103
  217. package/chunks/{geminiContentGenerator-FQHPFZSR.js → geminiContentGenerator-ZZX6NBO4.js} +7 -7
  218. package/chunks/{getMachineId-bsd-V7W3GODC.js → getMachineId-bsd-FG7IUY6U.js} +1 -1
  219. package/chunks/{getMachineId-darwin-TDO75DQP.js → getMachineId-darwin-GLCJI2RA.js} +1 -1
  220. package/chunks/{getMachineId-linux-TF43WQT2.js → getMachineId-linux-O6OPPAKO.js} +1 -1
  221. package/chunks/{getMachineId-unsupported-ZGUO3TXT.js → getMachineId-unsupported-S6CKYVGC.js} +1 -1
  222. package/chunks/{getMachineId-win-ECFYZZFQ.js → getMachineId-win-X5SRNEH7.js} +1 -1
  223. package/chunks/{glob-FRTM3X2E.js → glob-VYF5CXSX.js} +51 -49
  224. package/chunks/goal-tools-HGO6VXPB.js +335 -0
  225. package/chunks/{grep-RKWVROCW.js → grep-5DP5ZUTW.js} +53 -50
  226. package/chunks/handleAutoUpdate-UVBJ56DL.js +84 -0
  227. package/chunks/i18n-UQNYHEUD.js +100 -0
  228. package/chunks/{image-gen-WIEM7KZA.js → image-gen-WHPIZNWF.js} +12 -12
  229. package/chunks/initializer-GMIICF4W.js +89 -0
  230. package/chunks/installationInfo-4MGG4WVI.js +83 -0
  231. package/chunks/{ja-B7DF7DFG.js → ja-F3GSQXMF.js} +6 -1
  232. package/chunks/{keychain-token-storage-MDTG3WRM.js → keychain-token-storage-IKO4G53C.js} +3 -3
  233. package/chunks/lib-RUF3WZA6.js +9 -0
  234. package/chunks/list-CPN2W334.js +92 -0
  235. package/chunks/{list-agents-5KJJHR6I.js → list-agents-PXJ7ZUFB.js} +3 -3
  236. package/chunks/loadedSettingsAdapter-ZQAV5NDO.js +86 -0
  237. package/chunks/{loggingContentGenerator-WGM27QAW.js → loggingContentGenerator-5E7W4IEP.js} +31 -30
  238. package/chunks/{loop-wakeup-FXKNNYSY.js → loop-wakeup-Y26NQZ5I.js} +15 -8
  239. package/chunks/{ls-NTK6VOQJ.js → ls-ONQTTMQR.js} +5 -5
  240. package/chunks/{lsp-2JI24STP.js → lsp-YGHHRGMD.js} +3 -3
  241. package/chunks/{managed-npm-update-JQ2CG3RH.js → managed-npm-update-MKKAXYXA.js} +50 -48
  242. package/chunks/mcp-V5NTJF6X.js +86 -0
  243. package/chunks/{monitor-7FEWXX5F.js → monitor-CO3ASY6E.js} +51 -49
  244. package/chunks/nonInteractiveCli-ZJYEOO7U.js +148 -0
  245. package/chunks/{notebook-edit-JGJV2K6J.js → notebook-edit-Z7AEE6FM.js} +51 -49
  246. package/chunks/{openaiContentGenerator-JPVXDTAO.js → openaiContentGenerator-CA3MQOP3.js} +25 -27
  247. package/chunks/pidfile-NL7MKDRU.js +89 -0
  248. package/chunks/process-registry-2CHQBXH5.js +157 -0
  249. package/chunks/{processUtils-V2LCK6T6.js → processUtils-PB5K2DYH.js} +2 -2
  250. package/chunks/{pt-22Q3FP73.js → pt-EQ33KWEN.js} +6 -1
  251. package/chunks/{qwenContentGenerator-TICV2W2Z.js → qwenContentGenerator-JYFNDCOS.js} +55 -53
  252. package/chunks/{qwenOAuth2-XGFI5XJG.js → qwenOAuth2-W2ALKQDD.js} +10 -10
  253. package/chunks/read-file-IEOR5H5W.js +29 -0
  254. package/chunks/{read-mcp-resource-4DKQWGHD.js → read-mcp-resource-U2IJN5HM.js} +4 -4
  255. package/chunks/record-artifact-MGPJ7EG4.js +21 -0
  256. package/chunks/resumeHistoryUtils-BNBTP5AS.js +94 -0
  257. package/chunks/ripGrep-UMQODKEB.js +76 -0
  258. package/chunks/{ru-FZCNZHDC.js → ru-7OZAUKGG.js} +6 -1
  259. package/chunks/{run-qwen-serve-3VCV4I7E.js → run-qwen-serve-RN2R6QQW.js} +982 -263
  260. package/chunks/runtime-QFJ2MJF5.js +122 -0
  261. package/chunks/{scheduler-RS2I6RU5.js → scheduler-AMYUFOZI.js} +49 -47
  262. package/chunks/{sdk-exporters-grpc-AK3LGHNO.js → sdk-exporters-grpc-54L4LS5L.js} +4 -4
  263. package/chunks/{sdk-exporters-http-FS6ZV7MF.js → sdk-exporters-http-4BQANSJ6.js} +7 -7
  264. package/chunks/{sdk-impl-7FZSCSXB.js → sdk-impl-Z4VXWVFX.js} +10 -10
  265. package/chunks/{send-message-Q6OOR6BR.js → send-message-PMP4ATVM.js} +8 -13
  266. package/chunks/serve-EIIYJVX3.js +92 -0
  267. package/chunks/{server-HRZ23U7M.js → server-EP2LLAPD.js} +4816 -1298
  268. package/chunks/{session-7XHZKTVV.js → session-GMPZBLOW.js} +101 -97
  269. package/chunks/{settings-7ZGZDXAS.js → settings-LN7RNKBS.js} +53 -51
  270. package/chunks/shell-EM2OWU5X.js +86 -0
  271. package/chunks/{skill-LIWXNLDW.js → skill-T5VPSK73.js} +22 -23
  272. package/chunks/skill-settings-GMR3GMNY.js +94 -0
  273. package/chunks/spawnChannel-YPCU62DI.js +85 -0
  274. package/chunks/standalone-update-JAKIM2NF.js +95 -0
  275. package/chunks/{startInteractiveUI-IW3CSKHA.js → startInteractiveUI-YETQWGYF.js} +1240 -903
  276. package/chunks/{syntheticOutput-I3757IWH.js → syntheticOutput-D7E6ZFKR.js} +4 -4
  277. package/chunks/task-create-NFCYD43L.js +26 -0
  278. package/chunks/{task-list-FOPULZEP.js → task-list-TAVMGEVD.js} +7 -7
  279. package/chunks/{task-stop-H6RHXFVQ.js → task-stop-ZDF2UJRM.js} +3 -3
  280. package/chunks/{task-update-M57TFZJT.js → task-update-6L7LHGEX.js} +12 -11
  281. package/chunks/{team-create-O2FROQ4R.js → team-create-LFJ6HGNY.js} +53 -51
  282. package/chunks/{team-delete-QE2UXJL7.js → team-delete-DPGGRQBU.js} +7 -7
  283. package/chunks/{team-plan-approval-Q6WDBXTQ.js → team-plan-approval-C2KLSDGO.js} +51 -49
  284. package/chunks/theme-manager-JQ3ZGBP5.js +80 -0
  285. package/chunks/{todoWrite-VQ7FKOHL.js → todoWrite-2UO5G6G6.js} +34 -6
  286. package/chunks/{tool-search-APECNQ3Z.js → tool-search-FAZBFRJZ.js} +21 -22
  287. package/chunks/total-session-admission-5CALIVYO.js +88 -0
  288. package/chunks/{tree-sitter-FS4VPMZA.js → tree-sitter-4D7QS7F6.js} +1 -1
  289. package/chunks/{tree-sitter-bash-6B46JJCV.js → tree-sitter-bash-VEJGF5XF.js} +1 -1
  290. package/chunks/trustedFolders-KOPSP44S.js +98 -0
  291. package/chunks/{update-relaunch-ON5MDJQG.js → update-relaunch-6QL2TICS.js} +5 -5
  292. package/chunks/updateCheck-4Q6RIKFW.js +95 -0
  293. package/chunks/useAutoAcceptIndicator-Q5BMKZV3.js +96 -0
  294. package/chunks/{validateNonInterActiveAuth-JBLKBKRD.js → validateNonInterActiveAuth-GKOC5F6Z.js} +95 -91
  295. package/chunks/{version-LTNUBQJY.js → version-VSATY2LD.js} +1 -1
  296. package/chunks/{web-fetch-L5UTI53V.js → web-fetch-JCLKL6NL.js} +19 -21
  297. package/chunks/{web-search-KM33JOS3.js → web-search-DSQTFUBX.js} +13 -13
  298. package/chunks/{workflow-K7FAWV77.js → workflow-M6QAVKVJ.js} +52 -50
  299. package/chunks/workspace-providers-status-YKLTLMJA.js +89 -0
  300. package/chunks/{workspace-registration-store-6TGVDJV5.js → workspace-registration-store-5DMGKU64.js} +1 -1
  301. package/chunks/workspace-registry-PTYUSYXX.js +96 -0
  302. package/chunks/workspace-service-25ML3T47.js +103 -0
  303. package/chunks/workspace-skills-status-YKZWOYRX.js +89 -0
  304. package/chunks/workspace-trust-reconciler-5FI2S3OS.js +349 -0
  305. package/chunks/write-file-AY7VLP5X.js +78 -0
  306. package/chunks/xterm-headless-NTYVIBT3.js +3475 -0
  307. package/chunks/{zh-LUIGBD55.js → zh-H3YDK5QW.js} +9 -1
  308. package/chunks/{zh-TW-F5KG2IYD.js → zh-TW-JYCP7XUA.js} +9 -1
  309. package/chunks/zoom-image-S4LJZMD5.js +224 -0
  310. package/cli.js +50 -16
  311. package/locales/ca.js +7 -2
  312. package/locales/de.js +7 -2
  313. package/locales/en.js +10 -2
  314. package/locales/fr.js +7 -2
  315. package/locales/ja.js +7 -2
  316. package/locales/pt.js +7 -2
  317. package/locales/ru.js +7 -2
  318. package/locales/zh-TW.js +10 -2
  319. package/locales/zh.js +10 -2
  320. package/package.json +5 -4
  321. package/web-shell/assets/{arc-BbHijhiN.js → arc-xjArKHU2.js} +1 -1
  322. package/web-shell/assets/{architectureDiagram-3BPJPVTR-Cb4B_JD0.js → architectureDiagram-3BPJPVTR-BgrQDNYG.js} +1 -1
  323. package/web-shell/assets/{blockDiagram-GPEHLZMM-Dsjlh3H-.js → blockDiagram-GPEHLZMM-CXxWC-1_.js} +1 -1
  324. package/web-shell/assets/{c4Diagram-AAUBKEIU-Cp5AeR4U.js → c4Diagram-AAUBKEIU-Dx1tLm3v.js} +1 -1
  325. package/web-shell/assets/channel-B1cyk94G.js +1 -0
  326. package/web-shell/assets/{chunk-2J33WTMH-CLcY7W2e.js → chunk-2J33WTMH-CBxjogVR.js} +1 -1
  327. package/web-shell/assets/{chunk-4BX2VUAB-BUhvY2LR.js → chunk-4BX2VUAB-izb-rY5W.js} +1 -1
  328. package/web-shell/assets/{chunk-55IACEB6-kDIFC_71.js → chunk-55IACEB6-NzLyvSb8.js} +1 -1
  329. package/web-shell/assets/{chunk-727SXJPM-CIBO15f2.js → chunk-727SXJPM-DVyKb0dl.js} +1 -1
  330. package/web-shell/assets/{chunk-AQP2D5EJ-BJ_T_slV.js → chunk-AQP2D5EJ-BtqL7NzB.js} +1 -1
  331. package/web-shell/assets/{chunk-FMBD7UC4-BEkW35J8.js → chunk-FMBD7UC4-iNpdKIO0.js} +1 -1
  332. package/web-shell/assets/{chunk-ND2GUHAM-GGPxofay.js → chunk-ND2GUHAM-DI7cbFmX.js} +1 -1
  333. package/web-shell/assets/{chunk-QZHKN3VN-Bifllrb6.js → chunk-QZHKN3VN-3Y_-xFYs.js} +1 -1
  334. package/web-shell/assets/classDiagram-4FO5ZUOK-BpBYZoRE.js +1 -0
  335. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BpBYZoRE.js +1 -0
  336. package/web-shell/assets/{cose-bilkent-S5V4N54A-C-Add_Dp.js → cose-bilkent-S5V4N54A--raRatZn.js} +1 -1
  337. package/web-shell/assets/{dagre-BM42HDAG-B7MfwNq2.js → dagre-BM42HDAG-B8SU70mO.js} +1 -1
  338. package/web-shell/assets/{diagram-2AECGRRQ-CY_0zuDz.js → diagram-2AECGRRQ-ewgoakXo.js} +1 -1
  339. package/web-shell/assets/{diagram-5GNKFQAL-VyYSbCgA.js → diagram-5GNKFQAL-Bm_JLTnS.js} +1 -1
  340. package/web-shell/assets/{diagram-KO2AKTUF-CBiIZ2PL.js → diagram-KO2AKTUF-DEIUjUy9.js} +1 -1
  341. package/web-shell/assets/{diagram-LMA3HP47-BL3CrVOx.js → diagram-LMA3HP47-C2Wmrpj-.js} +1 -1
  342. package/web-shell/assets/{diagram-OG6HWLK6-CZUPx96P.js → diagram-OG6HWLK6-CtYe6bFx.js} +1 -1
  343. package/web-shell/assets/{erDiagram-TEJ5UH35-B81xHr1-.js → erDiagram-TEJ5UH35-DfpHcWLV.js} +1 -1
  344. package/web-shell/assets/{flowDiagram-I6XJVG4X-EZWhir-J.js → flowDiagram-I6XJVG4X-CAiUhio5.js} +1 -1
  345. package/web-shell/assets/{ganttDiagram-6RSMTGT7-CVFSuIAg.js → ganttDiagram-6RSMTGT7-CYc7ezr4.js} +1 -1
  346. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-C1H2uQDv.js → gitGraphDiagram-PVQCEYII-70lbkcRS.js} +1 -1
  347. package/web-shell/assets/index-C1k3PDuU.css +5 -0
  348. package/web-shell/assets/index-C2GE3DAF.js +74 -0
  349. package/web-shell/assets/index-DZLIXILO.js +1750 -0
  350. package/web-shell/assets/{index-BYo99NBH.js → index-Ww86nT9f.js} +1 -1
  351. package/web-shell/assets/{infoDiagram-5YYISTIA-BwyFMlF8.js → infoDiagram-5YYISTIA-C7e8DWPa.js} +1 -1
  352. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-CQ7Yhn2Y.js → ishikawaDiagram-YF4QCWOH-BYLr2op-.js} +1 -1
  353. package/web-shell/assets/{journeyDiagram-JHISSGLW-CJn2sf0l.js → journeyDiagram-JHISSGLW-hEibAHKX.js} +1 -1
  354. package/web-shell/assets/{kanban-definition-UN3LZRKU-DaNRqwVN.js → kanban-definition-UN3LZRKU-F2rt8Uhp.js} +1 -1
  355. package/web-shell/assets/{linear-DCKODZe2.js → linear-DPhyNezd.js} +1 -1
  356. package/web-shell/assets/{mermaid.core-CTGJOk27.js → mermaid.core-ZUtnug0n.js} +5 -5
  357. package/web-shell/assets/{mindmap-definition-RKZ34NQL-BKU3_3rg.js → mindmap-definition-RKZ34NQL-DDWcMoi8.js} +1 -1
  358. package/web-shell/assets/{pieDiagram-4H26LBE5-COcwBJ82.js → pieDiagram-4H26LBE5-CTRKzw1_.js} +1 -1
  359. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-CQnQ443x.js → quadrantDiagram-W4KKPZXB-CAEwYG_z.js} +1 -1
  360. package/web-shell/assets/{requirementDiagram-4Y6WPE33-CZ2oj5cD.js → requirementDiagram-4Y6WPE33-CRjnH9D9.js} +1 -1
  361. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-BxAv5mNu.js → sankeyDiagram-5OEKKPKP-LPQT_sOd.js} +1 -1
  362. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-CztaySPs.js → sequenceDiagram-3UESZ5HK-Ht2Iqvb0.js} +1 -1
  363. package/web-shell/assets/{stateDiagram-AJRCARHV-CTQT1oGD.js → stateDiagram-AJRCARHV-CIUdqOXu.js} +1 -1
  364. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BmqqQZ6w.js +1 -0
  365. package/web-shell/assets/{timeline-definition-PNZ67QCA-K9Mkex5A.js → timeline-definition-PNZ67QCA-BcilneZF.js} +1 -1
  366. package/web-shell/assets/{vennDiagram-CIIHVFJN-B2rVIw76.js → vennDiagram-CIIHVFJN-BljwiiH1.js} +1 -1
  367. package/web-shell/assets/{wardley-L42UT6IY-Z1w2JR4M.js → wardley-L42UT6IY-DeKjkYjq.js} +1 -1
  368. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-CIX9aKXf.js → wardleyDiagram-YWT4CUSO-L3U1H7KG.js} +1 -1
  369. package/web-shell/assets/{xychartDiagram-2RQKCTM6-CI9DLIKB.js → xychartDiagram-2RQKCTM6-IJnWsgMT.js} +1 -1
  370. package/web-shell/index.html +2 -2
  371. package/chunks/MaxSizedBox-INHRH72H.js +0 -86
  372. package/chunks/agent-VXDAN5JK.js +0 -82
  373. package/chunks/agent-headless-K4ZMMNBD.js +0 -76
  374. package/chunks/bridge-LGPZCFHO.js +0 -91
  375. package/chunks/channel-settings-store-CHCDRTPY.js +0 -89
  376. package/chunks/chunk-SZRN75WQ.js +0 -29
  377. package/chunks/chunk-UGYMA4EI.js +0 -219
  378. package/chunks/chunk-VCBZUOSI.js +0 -8575
  379. package/chunks/contextCommand-QIZYHDR5.js +0 -81
  380. package/chunks/daemon-status-provider-OS5UWBHV.js +0 -90
  381. package/chunks/earlyInputCapture-WQT24RWD.js +0 -83
  382. package/chunks/environment-VZ7BRI4Q.js +0 -103
  383. package/chunks/errors-PCX25DVP.js +0 -89
  384. package/chunks/exitPlanMode-GHPUHBZJ.js +0 -423
  385. package/chunks/handleAutoUpdate-2CZQRJ66.js +0 -82
  386. package/chunks/i18n-XEQVMRKN.js +0 -98
  387. package/chunks/initializer-OVGZ4FLY.js +0 -87
  388. package/chunks/installationInfo-5UUQJI6Y.js +0 -81
  389. package/chunks/list-HODU6RXD.js +0 -90
  390. package/chunks/loadedSettingsAdapter-TYNLBALY.js +0 -84
  391. package/chunks/mcp-J3DFWX4A.js +0 -84
  392. package/chunks/nonInteractiveCli-F4GYSMHT.js +0 -144
  393. package/chunks/pidfile-4VNAR3EP.js +0 -87
  394. package/chunks/read-file-LZXUR4TO.js +0 -31
  395. package/chunks/resumeHistoryUtils-65OX3SGJ.js +0 -92
  396. package/chunks/ripGrep-2U2FRGMV.js +0 -74
  397. package/chunks/runtime-AXJWIEDU.js +0 -120
  398. package/chunks/serve-W2GC47CM.js +0 -90
  399. package/chunks/shell-45IPBDP5.js +0 -84
  400. package/chunks/spawnChannel-PVXQ5AGV.js +0 -83
  401. package/chunks/src-AY65BYR7.js +0 -3166
  402. package/chunks/standalone-update-ZMFNKAEY.js +0 -93
  403. package/chunks/task-create-N7WQSGYA.js +0 -25
  404. package/chunks/theme-manager-YYPZFBAH.js +0 -78
  405. package/chunks/total-session-admission-JXES723M.js +0 -85
  406. package/chunks/trustedFolders-HVI7IXUH.js +0 -94
  407. package/chunks/updateCheck-WUJGHWZZ.js +0 -93
  408. package/chunks/useAutoAcceptIndicator-CHSTZLZD.js +0 -94
  409. package/chunks/workspace-providers-status-GAKSF4LL.js +0 -87
  410. package/chunks/workspace-registry-A7NQUONG.js +0 -89
  411. package/chunks/workspace-service-STGVSO4N.js +0 -99
  412. package/chunks/workspace-skills-status-66AK3DUA.js +0 -86
  413. package/chunks/write-file-HUUCEG4P.js +0 -74
  414. package/web-shell/assets/channel-Bzdx6E8P.js +0 -1
  415. package/web-shell/assets/classDiagram-4FO5ZUOK-Cd6wbiuK.js +0 -1
  416. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-Cd6wbiuK.js +0 -1
  417. package/web-shell/assets/index-B2bXx96W.js +0 -1249
  418. package/web-shell/assets/index-_8mKjx8q.css +0 -5
  419. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-BjMdT6E_.js +0 -1
  420. package/chunks/{chunk-TARRHLLG.js → chunk-QUGAUQGJ.js} +25 -25
  421. package/chunks/{chunk-U7ZFW55U.js → chunk-VOQXFAY5.js} +977 -977
  422. /package/chunks/{chunk-LXXMOYPL.js → chunk-VXZBKKQR.js} +0 -0
@@ -7,27 +7,29 @@ import {
7
7
  DEFAULT_RING_SIZE
8
8
  } from "./chunk-GLWP3FDB.js";
9
9
  import {
10
- DEFAULT_COMPACTED_REPLAY_MAX_BYTES
11
- } from "./chunk-COH43MRJ.js";
10
+ DEFAULT_COMPACTED_REPLAY_MAX_BYTES,
11
+ DEFAULT_MAX_JOURNAL_BYTES,
12
+ DEFAULT_MAX_JOURNAL_EVENTS
13
+ } from "./chunk-XCGIMOLN.js";
12
14
  import {
13
15
  normalizeServeChannelSelection
14
16
  } from "./chunk-ALMR3E6Q.js";
15
17
  import {
16
18
  loadSettings
17
- } from "./chunk-JALU3ZDU.js";
19
+ } from "./chunk-W3UKBMSI.js";
18
20
  import {
19
21
  writeStderrLine
20
22
  } from "./chunk-OWAK7LMW.js";
21
23
  import {
22
24
  MCP_BUDGET_WARN_FRACTION
23
- } from "./chunk-DM4Q4JJH.js";
25
+ } from "./chunk-54YCNSK5.js";
24
26
  import {
25
27
  parsePositiveIntegerEnv
26
28
  } from "./chunk-6PVPNMXU.js";
27
29
  import {
28
30
  openBrowserSecurely,
29
31
  shouldLaunchBrowser
30
- } from "./chunk-JESCGQM3.js";
32
+ } from "./chunk-NAVJD2PQ.js";
31
33
  import {
32
34
  init_esbuild_shims
33
35
  } from "./chunk-5O2XNYP6.js";
@@ -151,6 +153,14 @@ var serveCommand = {
151
153
  type: "number",
152
154
  default: DEFAULT_COMPACTED_REPLAY_MAX_BYTES,
153
155
  description: "Per-session in-memory compacted replay snapshot byte cap for `POST /session/:id/load` late attaches. Larger = more recent history in load snapshots at higher heap cost. Must be a positive safe integer no larger than 256 MiB."
156
+ }).option("max-journal-events", {
157
+ type: "number",
158
+ default: DEFAULT_MAX_JOURNAL_EVENTS,
159
+ description: "Per-session cap on raw events retained in the in-flight live journal (current unfinished turn). When exceeded, the oldest entries are dropped. Must be a positive safe integer."
160
+ }).option("max-journal-bytes", {
161
+ type: "number",
162
+ default: DEFAULT_MAX_JOURNAL_BYTES,
163
+ description: "Per-session byte cap on the in-flight live journal. When exceeded, the oldest entries are dropped (at least one is always kept). Must be a positive safe integer."
154
164
  }).option("http-bridge", {
155
165
  type: "boolean",
156
166
  default: true,
@@ -302,7 +312,7 @@ var serveCommand = {
302
312
  process.exit(1);
303
313
  }
304
314
  }
305
- const { runQwenServe } = await import("./run-qwen-serve-3VCV4I7E.js");
315
+ const { runQwenServe } = await import("./run-qwen-serve-RN2R6QQW.js");
306
316
  try {
307
317
  const handle = await runQwenServe({
308
318
  port: argv.port,
@@ -315,6 +325,8 @@ var serveCommand = {
315
325
  maxConnections: argv["max-connections"],
316
326
  eventRingSize: argv["event-ring-size"],
317
327
  compactedReplayMaxBytes: argv["compacted-replay-max-bytes"],
328
+ maxJournalEvents: argv["max-journal-events"],
329
+ maxJournalBytes: argv["max-journal-bytes"],
318
330
  workspace: argv.workspace,
319
331
  requireAuth: argv["require-auth"],
320
332
  enableSessionShell: argv["enable-session-shell"],
@@ -2,11 +2,11 @@
2
2
  "use strict";
3
3
  import {
4
4
  STATUS_SCHEMA_VERSION
5
- } from "./chunk-KU5XMLDK.js";
5
+ } from "./chunk-GURGAJTX.js";
6
6
  import {
7
7
  detectRuntime,
8
8
  redactProxyCredentials
9
- } from "./chunk-2JZBVYTU.js";
9
+ } from "./chunk-Q3T5KA2V.js";
10
10
  import {
11
11
  init_esbuild_shims
12
12
  } from "./chunk-5O2XNYP6.js";
@@ -14,28 +14,29 @@ import {
14
14
  MODIFIER_ALT_BIT,
15
15
  MODIFIER_CTRL_BIT,
16
16
  MODIFIER_SHIFT_BIT,
17
+ MODIFIER_SUPER_BIT,
17
18
  clipboardHasImage
18
- } from "./chunk-J56UI34H.js";
19
+ } from "./chunk-NBD76HUW.js";
19
20
  import {
20
21
  require_jsx_runtime
21
22
  } from "./chunk-SV5PQVQE.js";
22
23
  import {
23
24
  use_stdin_default,
24
25
  use_stdout_default
25
- } from "./chunk-6GMVPFB2.js";
26
- import {
27
- require_react
28
- } from "./chunk-5QWWOFGG.js";
26
+ } from "./chunk-2IIJTXYF.js";
29
27
  import {
30
28
  noteInteraction
31
29
  } from "./chunk-KW7NOTN6.js";
30
+ import {
31
+ require_react
32
+ } from "./chunk-5QWWOFGG.js";
32
33
  import {
33
34
  KittySequenceOverflowEvent,
34
35
  logKittySequenceOverflow
35
- } from "./chunk-RWS5VYWC.js";
36
+ } from "./chunk-DUNI4EBW.js";
36
37
  import {
37
38
  createDebugLogger
38
- } from "./chunk-NL7LTRLR.js";
39
+ } from "./chunk-E2BHWIDT.js";
39
40
  import {
40
41
  init_esbuild_shims
41
42
  } from "./chunk-5O2XNYP6.js";
@@ -420,7 +421,7 @@ function KeypressProvider({
420
421
  mods -= KITTY_MODIFIER_EVENT_TYPES_OFFSET;
421
422
  }
422
423
  const bits = mods - KITTY_MODIFIER_BASE;
423
- const alt = (bits & MODIFIER_ALT_BIT) === MODIFIER_ALT_BIT;
424
+ const alt = (bits & MODIFIER_ALT_BIT) === MODIFIER_ALT_BIT || (bits & MODIFIER_SUPER_BIT) === MODIFIER_SUPER_BIT;
424
425
  const ctrl = (bits & MODIFIER_CTRL_BIT) === MODIFIER_CTRL_BIT;
425
426
  return {
426
427
  key: {
@@ -445,7 +446,7 @@ function KeypressProvider({
445
446
  }
446
447
  const bits = mods - KITTY_MODIFIER_BASE;
447
448
  const shift = (bits & MODIFIER_SHIFT_BIT) === MODIFIER_SHIFT_BIT;
448
- const alt = (bits & MODIFIER_ALT_BIT) === MODIFIER_ALT_BIT;
449
+ const alt = (bits & MODIFIER_ALT_BIT) === MODIFIER_ALT_BIT || (bits & MODIFIER_SUPER_BIT) === MODIFIER_SUPER_BIT;
449
450
  const ctrl = (bits & MODIFIER_CTRL_BIT) === MODIFIER_CTRL_BIT;
450
451
  const sym = m[2];
451
452
  const symbolToName = {
@@ -487,7 +488,7 @@ function KeypressProvider({
487
488
  }
488
489
  const modifierBits = modifiers - KITTY_MODIFIER_BASE;
489
490
  const shift = (modifierBits & MODIFIER_SHIFT_BIT) === MODIFIER_SHIFT_BIT;
490
- const alt = (modifierBits & MODIFIER_ALT_BIT) === MODIFIER_ALT_BIT;
491
+ const alt = (modifierBits & MODIFIER_ALT_BIT) === MODIFIER_ALT_BIT || (modifierBits & MODIFIER_SUPER_BIT) === MODIFIER_SUPER_BIT;
491
492
  const ctrl = (modifierBits & MODIFIER_CTRL_BIT) === MODIFIER_CTRL_BIT;
492
493
  const terminator = m[4];
493
494
  if (keyCode === CHAR_CODE_ESC && terminator === "~" && m[3]) {
@@ -1003,6 +1004,7 @@ function KeypressProvider({
1003
1004
  sequence
1004
1005
  }), "createPasteKeyEvent");
1005
1006
  const shouldFlushRawDataAsPaste = /* @__PURE__ */ __name((data) => {
1007
+ if (data.includes(27)) return false;
1006
1008
  const hasReturn = data.includes(13);
1007
1009
  const hasEmbeddedTab = data.length > 1 && data.includes(9);
1008
1010
  const isSingleReturn = data.length <= 2 && hasReturn;
@@ -21,12 +21,12 @@ import {
21
21
  getLanguageNameFromLocale,
22
22
  getLanguageSettingsOptions,
23
23
  t
24
- } from "./chunk-VV6XU5L7.js";
24
+ } from "./chunk-3F2WDAV6.js";
25
25
  import {
26
26
  getHomeEnvFallbackVars,
27
27
  loadEnvironment,
28
28
  preResolveHomeEnvOverrides
29
- } from "./chunk-PANH4R3B.js";
29
+ } from "./chunk-EU5TBFJI.js";
30
30
  import {
31
31
  ENV_CORRUPTED_PATH,
32
32
  ENV_WAS_RECOVERED
@@ -34,7 +34,7 @@ import {
34
34
  import {
35
35
  isWorkspaceTrusted,
36
36
  updateSettingsFilePreservingFormat
37
- } from "./chunk-VCBZUOSI.js";
37
+ } from "./chunk-P755N4CS.js";
38
38
  import {
39
39
  require_strip_json_comments
40
40
  } from "./chunk-ALGGS7UH.js";
@@ -46,23 +46,23 @@ import {
46
46
  DEFAULT_TOOL_RESULTS_TOTAL_CHARS_THRESHOLD,
47
47
  DEFAULT_TRUNCATE_TOOL_OUTPUT_LINES,
48
48
  DEFAULT_TRUNCATE_TOOL_OUTPUT_THRESHOLD
49
- } from "./chunk-DM4Q4JJH.js";
49
+ } from "./chunk-54YCNSK5.js";
50
50
  import {
51
51
  stripRuntimeSnapshotPrefix
52
- } from "./chunk-PSWQZHEA.js";
52
+ } from "./chunk-ZMOJ7ISP.js";
53
53
  import {
54
54
  DEFAULT_QWEN_CUSTOM_IGNORE_FILE_NAMES
55
- } from "./chunk-M5JM7OSF.js";
55
+ } from "./chunk-N4ACHWNH.js";
56
56
  import {
57
57
  DEFAULT_SENSITIVE_SPAN_ATTRIBUTE_MAX_LENGTH,
58
58
  SENSITIVE_SPAN_ATTRIBUTE_MAX_LENGTH_LIMIT
59
- } from "./chunk-INADJJGW.js";
59
+ } from "./chunk-G7XXKQYS.js";
60
60
  import {
61
61
  FatalConfigError,
62
62
  Storage,
63
63
  createDebugLogger,
64
64
  getErrorMessage
65
- } from "./chunk-NL7LTRLR.js";
65
+ } from "./chunk-E2BHWIDT.js";
66
66
  import {
67
67
  init_esbuild_shims
68
68
  } from "./chunk-5O2XNYP6.js";
@@ -891,9 +891,9 @@ var SETTINGS_SCHEMA = {
891
891
  type: "boolean",
892
892
  label: "Virtualized History (reduces flicker on long sessions)",
893
893
  category: "UI",
894
- requiresRestart: false,
895
- default: false,
896
- description: "Render conversation history in an in-app scrollable viewport instead of the terminal scrollback buffer. Recommended if you see flicker, scroll-storm, or interface freeze on long sessions, after Ctrl+O, after Ctrl+E / Ctrl+F (expand), after window resize, or when alt-tabbing back. Scroll with Shift+\u2191/\u2193 (line), PgUp/PgDn (page), Ctrl+Home/End (top/bottom), or the mouse wheel. Also enables mouse interactions: click an option in a menu/dialog to select it, hover to highlight it, and click in the prompt to position the cursor. Does NOT use the host terminal scrollback while enabled. Drag to select text in the viewport (double/triple click selects a word/line), copied on release. To use the terminal\u2019s own selection instead, hold Shift (or Option on macOS) while dragging.",
894
+ requiresRestart: true,
895
+ default: true,
896
+ description: "Render conversation history in an in-app scrollable viewport instead of the terminal scrollback buffer. Enabled by default in compatible interactive terminals to avoid flicker, scroll-storm, and interface freeze on long sessions, after Ctrl+O, after Ctrl+E / Ctrl+F (expand), after window resize, or when alt-tabbing back. Screen reader mode and non-interactive output such as piped stdout or CI use append-only terminal output instead. Scroll with Shift+\u2191/\u2193 (line), PgUp/PgDn (page), Ctrl+Home/End (top/bottom), or the mouse wheel. Also enables mouse interactions: click an option in a menu/dialog to select it, hover to highlight it, and click in the prompt to position the cursor. Does NOT use the host terminal scrollback while enabled. Drag to select text in the viewport (double/triple click selects a word/line), copied on release. To use the terminal\u2019s own selection instead, hold Shift (or Option on macOS) while dragging.",
897
897
  showInDialog: true
898
898
  },
899
899
  showScrollbar: {
@@ -1064,6 +1064,10 @@ var SETTINGS_SCHEMA = {
1064
1064
  jsonSchemaOverride: {
1065
1065
  type: "object",
1066
1066
  properties: {
1067
+ userId: {
1068
+ description: "Stable end-user identifier written to GenAI spans as gen_ai.user.id for ARMS session analysis. This value is linkable personal data: prefer a pseudonymous ID, and configure it only when one process represents one user.",
1069
+ type: "string"
1070
+ },
1067
1071
  includeSensitiveSpanAttributes: {
1068
1072
  description: "When enabled, user prompts, system prompts, tool inputs/outputs, and model responses are written to native OTel span attributes in addition to the log-to-span bridge. Warning: this may expose sensitive data (file contents, shell commands, conversation history) to your OTLP backend.",
1069
1073
  type: "boolean",
@@ -1365,6 +1369,28 @@ var SETTINGS_SCHEMA = {
1365
1369
  parentKey: "generationConfig",
1366
1370
  showInDialog: false
1367
1371
  },
1372
+ retryInitialDelayMs: {
1373
+ type: "number",
1374
+ label: "Retry Initial Delay",
1375
+ category: "Generation Configuration",
1376
+ requiresRestart: false,
1377
+ default: void 0,
1378
+ description: "Initial delay in milliseconds for stream rate-limit retries.",
1379
+ minimum: 1,
1380
+ parentKey: "generationConfig",
1381
+ showInDialog: false
1382
+ },
1383
+ retryMaxDelayMs: {
1384
+ type: "number",
1385
+ label: "Retry Max Delay",
1386
+ category: "Generation Configuration",
1387
+ requiresRestart: false,
1388
+ default: void 0,
1389
+ description: "Maximum delay in milliseconds for stream rate-limit retries.",
1390
+ minimum: 1,
1391
+ parentKey: "generationConfig",
1392
+ showInDialog: false
1393
+ },
1368
1394
  enableCacheControl: {
1369
1395
  type: "boolean",
1370
1396
  label: "Enable Cache Control",
@@ -1733,6 +1759,26 @@ var SETTINGS_SCHEMA = {
1733
1759
  showInDialog: false,
1734
1760
  mergeStrategy: "union" /* UNION */
1735
1761
  },
1762
+ defaultDisabled: {
1763
+ type: "array",
1764
+ label: "Default Disabled Skills",
1765
+ category: "Advanced",
1766
+ requiresRestart: false,
1767
+ default: void 0,
1768
+ description: "Skill names disabled by default unless explicitly enabled through skills.enabled. Matched case-insensitively and UNION-merged across settings scopes. skills.disabled always wins.",
1769
+ showInDialog: false,
1770
+ mergeStrategy: "union" /* UNION */
1771
+ },
1772
+ enabled: {
1773
+ type: "array",
1774
+ label: "Enabled Skills",
1775
+ category: "Advanced",
1776
+ requiresRestart: false,
1777
+ default: void 0,
1778
+ description: "Explicit opt-ins that override matching skills.defaultDisabled entries. Matched case-insensitively and UNION-merged across settings scopes. Cannot override skills.disabled.",
1779
+ showInDialog: false,
1780
+ mergeStrategy: "union" /* UNION */
1781
+ },
1736
1782
  directories: {
1737
1783
  type: "array",
1738
1784
  label: "Skill Directories",
@@ -2012,6 +2058,25 @@ var SETTINGS_SCHEMA = {
2012
2058
  default: true,
2013
2059
  description: "When enabled, MCP tools are loaded on-demand via ToolSearch to reduce prompt size. Disable this for models that rely on prefix-based KV caching (e.g. DeepSeek) to keep the prompt prefix stable and maximize cache hit rates.",
2014
2060
  showInDialog: true
2061
+ },
2062
+ threshold: {
2063
+ type: "number",
2064
+ label: "Deferred Tool Preload Threshold (%)",
2065
+ category: "Tools",
2066
+ requiresRestart: true,
2067
+ default: 10,
2068
+ description: "Context-window percentage used as the session-start budget for preloading deferred tools (bundled built-ins and MCP alike). When every deferred tool schema fits within the budget, all are declared upfront instead of loaded on demand, keeping the prompt prefix stable for KV caching. Set 0 to always load deferred tools on demand.",
2069
+ showInDialog: true,
2070
+ // A percentage of the context window: values above 100 would set a
2071
+ // budget larger than the window and unconditionally preload every
2072
+ // deferred tool, defeating the point of the threshold. Bound it the
2073
+ // way autoCompactThreshold bounds its fraction.
2074
+ jsonSchemaOverride: {
2075
+ type: "number",
2076
+ minimum: 0,
2077
+ maximum: 100,
2078
+ default: 10
2079
+ }
2015
2080
  }
2016
2081
  }
2017
2082
  },
@@ -2454,6 +2519,15 @@ var SETTINGS_SCHEMA = {
2454
2519
  type: "string",
2455
2520
  description: "URL pattern (supports * wildcard)"
2456
2521
  }
2522
+ },
2523
+ allowPrivateNetworkHooks: {
2524
+ type: "boolean",
2525
+ label: "Allow Private Network Hooks",
2526
+ category: "Security",
2527
+ requiresRestart: false,
2528
+ default: false,
2529
+ description: "When true, HTTP hooks may target private/link-local IP ranges (the SSRF IP-range checks are skipped). Cloud metadata hostnames (e.g. 169.254.169.254, metadata.google.internal) remain blocked. Only honored from User, System, and SystemDefaults settings scopes; values set in Workspace settings are ignored so a cloned repository cannot self-grant this bypass. Enable only in trusted, managed environments, and pair with security.allowedHttpHookUrls.",
2530
+ showInDialog: false
2457
2531
  }
2458
2532
  }
2459
2533
  },
@@ -2547,6 +2621,30 @@ var SETTINGS_SCHEMA = {
2547
2621
  }
2548
2622
  }
2549
2623
  },
2624
+ modelGrades: {
2625
+ type: "object",
2626
+ label: "Model Grades",
2627
+ category: "Model",
2628
+ requiresRestart: true,
2629
+ default: void 0,
2630
+ description: "Maps semantic model grade names exposed to the Agent tool to concrete model selectors.",
2631
+ showInDialog: false,
2632
+ mergeStrategy: "shallow_merge" /* SHALLOW_MERGE */,
2633
+ jsonSchemaOverride: {
2634
+ type: "object",
2635
+ additionalProperties: { type: "string" }
2636
+ }
2637
+ },
2638
+ allowedGrades: {
2639
+ type: "array",
2640
+ label: "Allowed Model Grades",
2641
+ category: "Model",
2642
+ requiresRestart: true,
2643
+ default: void 0,
2644
+ description: "Optional whitelist of model grade names the Agent tool may use.",
2645
+ showInDialog: false,
2646
+ items: { type: "string" }
2647
+ },
2550
2648
  maxParallelAgents: {
2551
2649
  type: "number",
2552
2650
  label: "Max Parallel Agents",
@@ -2727,6 +2825,17 @@ var SETTINGS_SCHEMA = {
2727
2825
  mergeStrategy: "concat" /* CONCAT */,
2728
2826
  items: HOOK_DEFINITION_ITEMS
2729
2827
  },
2828
+ StopFailure: {
2829
+ type: "array",
2830
+ label: "After Agent Failure Hooks",
2831
+ category: "Advanced",
2832
+ requiresRestart: false,
2833
+ default: [],
2834
+ description: "Hooks that execute when a turn ends due to an API error or loop detection, instead of the normal Stop hooks. Receives error type and details.",
2835
+ showInDialog: false,
2836
+ mergeStrategy: "concat" /* CONCAT */,
2837
+ items: HOOK_DEFINITION_ITEMS
2838
+ },
2730
2839
  MessageDisplay: {
2731
2840
  type: "array",
2732
2841
  label: "Message Display Hooks",
@@ -2888,6 +2997,15 @@ var SETTINGS_SCHEMA = {
2888
2997
  description: "Allow daemon and ACP sessions to continue an unfinished top-level Todo list for at most two consecutive primary-model calls without new user input. Mid-turn user input starts a fresh two-attempt stage. Disabled in safe, bare, and Approval plan modes.",
2889
2998
  showInDialog: false
2890
2999
  },
3000
+ sessionWriterLease: {
3001
+ type: "boolean",
3002
+ label: "Enable ACP Session Writer Lease",
3003
+ category: "Experimental",
3004
+ requiresRestart: true,
3005
+ default: false,
3006
+ description: "Enable cross-process write fencing for persisted ACP and daemon sessions. The effective value is frozen when the ACP or daemon process starts. Every concurrent ACP or daemon writer must enable the setting; interactive and headless writers remain outside the protocol.",
3007
+ showInDialog: true
3008
+ },
2891
3009
  cronRecurringMaxAgeDays: {
2892
3010
  type: "number",
2893
3011
  label: "Recurring Cron Max Age (Days)",
@@ -4378,6 +4496,12 @@ function getSettingsWarnings(loadedSettings) {
4378
4496
  for (const warning of getModelProvidersOverrideWarnings(loadedSettings)) {
4379
4497
  warningSet.add(warning);
4380
4498
  }
4499
+ const workspaceFile = loadedSettings.forScope("Workspace" /* Workspace */);
4500
+ if (workspaceFile.rawJson !== void 0 && workspaceFile.originalSettings.security?.allowPrivateNetworkHooks !== void 0) {
4501
+ warningSet.add(
4502
+ `Warning: security.allowPrivateNetworkHooks in workspace settings (${workspaceFile.path}) is ignored. This setting is only honored from User, System, or SystemDefaults scope settings.`
4503
+ );
4504
+ }
4381
4505
  return [...warningSet];
4382
4506
  }
4383
4507
  __name(getSettingsWarnings, "getSettingsWarnings");
@@ -4393,8 +4517,19 @@ function tagMcpServerScope(settings, scope) {
4393
4517
  return { ...settings, mcpServers: tagged };
4394
4518
  }
4395
4519
  __name(tagMcpServerScope, "tagMcpServerScope");
4520
+ function stripWorkspacePrivateNetworkHooks(settings) {
4521
+ if (settings.security?.allowPrivateNetworkHooks === void 0) {
4522
+ return settings;
4523
+ }
4524
+ const { allowPrivateNetworkHooks: _stripped, ...restSecurity } = settings.security;
4525
+ return { ...settings, security: restSecurity };
4526
+ }
4527
+ __name(stripWorkspacePrivateNetworkHooks, "stripWorkspacePrivateNetworkHooks");
4396
4528
  function mergeSettings(system, systemDefaults, user, workspace, isTrusted) {
4397
- const safeWorkspace = isTrusted ? tagMcpServerScope(workspace, "workspace") : {};
4529
+ const safeWorkspace = isTrusted ? tagMcpServerScope(
4530
+ stripWorkspacePrivateNetworkHooks(workspace),
4531
+ "workspace"
4532
+ ) : {};
4398
4533
  return customDeepMerge(
4399
4534
  getMergeStrategyForPath,
4400
4535
  {},
@@ -4461,10 +4596,11 @@ var LoadedSettings = class {
4461
4596
  throw new Error(`Invalid scope: ${scope}`);
4462
4597
  }
4463
4598
  }
4464
- setValue(scope, key, value) {
4599
+ setValue(scope, key, value, assertCanCommit) {
4465
4600
  if (key === "model.name" && typeof value === "string") {
4466
4601
  value = stripRuntimeSnapshotPrefix(value);
4467
4602
  }
4603
+ assertCanCommit?.();
4468
4604
  const settingsFile = this.forScope(scope);
4469
4605
  setNestedPropertySafe(settingsFile.settings, key, value);
4470
4606
  setNestedPropertySafe(settingsFile.originalSettings, key, value);
@@ -4472,7 +4608,7 @@ var LoadedSettings = class {
4472
4608
  const replacePath = key === "mcpServers" ? key.split(".") : [];
4473
4609
  saveSettings(settingsFile, createSettingsUpdate(key, value), replacePath);
4474
4610
  }
4475
- setValues(writes, onScopeCommitted) {
4611
+ setValues(writes, onScopeCommitted, assertCanCommit) {
4476
4612
  const scopes = /* @__PURE__ */ new Set();
4477
4613
  for (const write of writes) {
4478
4614
  const value = write.key === "model.name" && typeof write.value === "string" ? stripRuntimeSnapshotPrefix(write.value) : write.value;
@@ -4486,6 +4622,7 @@ var LoadedSettings = class {
4486
4622
  for (let i = 0; i < scopeList.length; i++) {
4487
4623
  const scope = scopeList[i];
4488
4624
  try {
4625
+ assertCanCommit?.();
4489
4626
  saveSettings(this.forScope(scope), void 0, void 0, {
4490
4627
  throwOnWriteFailure: true
4491
4628
  });
@@ -4739,7 +4876,7 @@ function loadSettings(workspaceDir = process.cwd(), consumeCorruptionEnvVars = t
4739
4876
  settings: {},
4740
4877
  rawJson: void 0
4741
4878
  };
4742
- const workspaceSettingsActive = realWorkspaceDir !== realHomeDir;
4879
+ const workspaceSettingsActive = !opts.skipWorkspaceSettings && realWorkspaceDir !== realHomeDir;
4743
4880
  if (workspaceSettingsActive) {
4744
4881
  workspaceResult = loadAndMigrate(
4745
4882
  workspaceSettingsPath,
@@ -4784,7 +4921,7 @@ function loadSettings(workspaceDir = process.cwd(), consumeCorruptionEnvVars = t
4784
4921
  systemSettings,
4785
4922
  userSettings
4786
4923
  );
4787
- const isTrusted = isWorkspaceTrusted(
4924
+ const isTrusted = opts.workspaceTrusted ?? isWorkspaceTrusted(
4788
4925
  initialTrustCheckSettings,
4789
4926
  void 0,
4790
4927
  realWorkspaceDir
@@ -4915,6 +5052,7 @@ export {
4915
5052
  backupSettingsFile,
4916
5053
  restoreSettingsFromBackup,
4917
5054
  cleanupSettingsBackup,
5055
+ v1ToV2Migration,
4918
5056
  getUserSettingsPath,
4919
5057
  getUserSettingsDir,
4920
5058
  SETTINGS_VERSION,
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  theme
5
- } from "./chunk-VAK25FTU.js";
5
+ } from "./chunk-45IOTAUS.js";
6
6
  import {
7
7
  require_jsx_runtime
8
8
  } from "./chunk-SV5PQVQE.js";
@@ -10,14 +10,14 @@ import {
10
10
  Box_default,
11
11
  Text,
12
12
  use_is_screen_reader_enabled_default
13
- } from "./chunk-6GMVPFB2.js";
13
+ } from "./chunk-2IIJTXYF.js";
14
14
  import {
15
15
  require_react
16
16
  } from "./chunk-5QWWOFGG.js";
17
17
  import {
18
18
  formatHistoryGapNotice,
19
19
  indexGapsByChild
20
- } from "./chunk-BRRAJXPA.js";
20
+ } from "./chunk-PCK4B6LR.js";
21
21
  import {
22
22
  stringWidth
23
23
  } from "./chunk-2MIN6GRR.js";
@@ -29,16 +29,17 @@ import {
29
29
  } from "./chunk-E5Z2AVNV.js";
30
30
  import {
31
31
  t
32
- } from "./chunk-VV6XU5L7.js";
32
+ } from "./chunk-3F2WDAV6.js";
33
33
  import {
34
- getToolResponseDisplayText
35
- } from "./chunk-DM4Q4JJH.js";
34
+ getToolResponseDisplayText,
35
+ stripTrailingUserPromptSubmitContextPart
36
+ } from "./chunk-54YCNSK5.js";
36
37
  import {
37
38
  stripAnsi
38
39
  } from "./chunk-TWPJO254.js";
39
40
  import {
40
41
  ToolDisplayNames
41
- } from "./chunk-PR75REBZ.js";
42
+ } from "./chunk-MM7TH7ZM.js";
42
43
  import {
43
44
  init_esbuild_shims
44
45
  } from "./chunk-5O2XNYP6.js";
@@ -2741,6 +2742,16 @@ function safeDescription(raw) {
2741
2742
  return cleaned || void 0;
2742
2743
  }
2743
2744
  __name(safeDescription, "safeDescription");
2745
+ function categoryShowsDescriptionsInline(toolCalls, category) {
2746
+ const sameCategory = toolCalls.filter(
2747
+ (tc) => getToolCategory(tc.name) === category
2748
+ );
2749
+ if (sameCategory.length > DESCRIPTION_INLINE_LIMIT) return false;
2750
+ return sameCategory.every(
2751
+ (tc) => safeDescription(tc.description) !== void 0
2752
+ );
2753
+ }
2754
+ __name(categoryShowsDescriptionsInline, "categoryShowsDescriptionsInline");
2744
2755
  function getActiveToolHint(toolCalls) {
2745
2756
  if (toolCalls.length < 2) return void 0;
2746
2757
  const statuses = [
@@ -2753,16 +2764,21 @@ function getActiveToolHint(toolCalls) {
2753
2764
  const tool = toolCalls[index];
2754
2765
  if (tool.status === status) {
2755
2766
  const category = getToolCategory(tool.name);
2756
- const usesCountSummary = toolCalls.some(
2767
+ const hasCategoryPeers = toolCalls.some(
2757
2768
  (candidate, candidateIndex) => candidateIndex !== index && getToolCategory(candidate.name) === category
2758
2769
  );
2759
- return usesCountSummary ? safeDescription(tool.description) : void 0;
2770
+ if (!hasCategoryPeers) return void 0;
2771
+ if (categoryShowsDescriptionsInline(toolCalls, category))
2772
+ return void 0;
2773
+ return safeDescription(tool.description);
2760
2774
  }
2761
2775
  }
2762
2776
  }
2763
2777
  return void 0;
2764
2778
  }
2765
2779
  __name(getActiveToolHint, "getActiveToolHint");
2780
+ var DESCRIPTION_INLINE_LIMIT = 3;
2781
+ var DESCRIPTION_PREVIEW_COUNT = 2;
2766
2782
  function buildToolSummary(toolCalls, isActive) {
2767
2783
  if (toolCalls.length === 0) return "";
2768
2784
  const toolsByCategory = /* @__PURE__ */ new Map();
@@ -2777,20 +2793,37 @@ function buildToolSummary(toolCalls, isActive) {
2777
2793
  const tools = toolsByCategory.get(cat);
2778
2794
  if (!tools || tools.length === 0) continue;
2779
2795
  const template = CATEGORY_TEMPLATES[cat];
2796
+ const verb = isActive ? template.activeVerb : template.pastVerb;
2780
2797
  let part;
2781
2798
  if (tools.length === 1) {
2782
2799
  const safeDesc = safeDescription(tools[0].description);
2783
2800
  if (safeDesc !== void 0) {
2784
- const verb = isActive ? template.activeVerb : template.pastVerb;
2785
2801
  part = `${verb} ${safeDesc}`;
2786
2802
  } else {
2787
2803
  part = t(isActive ? template.active.one : template.past.one, {
2788
2804
  count: "1"
2789
2805
  });
2790
2806
  }
2807
+ } else if (tools.length <= DESCRIPTION_INLINE_LIMIT) {
2808
+ const descriptions = tools.map((tc) => safeDescription(tc.description)).filter((d) => d !== void 0);
2809
+ if (descriptions.length === tools.length) {
2810
+ part = `${verb} ${descriptions.join(", ")}`;
2811
+ } else {
2812
+ const forms = isActive ? template.active : template.past;
2813
+ part = t(forms.many, { count: String(tools.length) });
2814
+ }
2791
2815
  } else {
2792
- const forms = isActive ? template.active : template.past;
2793
- part = t(forms.many, { count: String(tools.length) });
2816
+ const previewDescs = tools.slice(0, DESCRIPTION_PREVIEW_COUNT).map((tc) => safeDescription(tc.description)).filter((d) => d !== void 0);
2817
+ if (previewDescs.length === DESCRIPTION_PREVIEW_COUNT) {
2818
+ const remaining = tools.length - DESCRIPTION_PREVIEW_COUNT;
2819
+ const morePhrase = t("... and {{count}} more", {
2820
+ count: String(remaining)
2821
+ });
2822
+ part = `${verb} ${previewDescs.join(", ")}, ${morePhrase}`;
2823
+ } else {
2824
+ const forms = isActive ? template.active : template.past;
2825
+ part = t(forms.many, { count: String(tools.length) });
2826
+ }
2794
2827
  }
2795
2828
  if (parts.length > 0) {
2796
2829
  part = part.charAt(0).toLowerCase() + part.slice(1);
@@ -2848,6 +2881,17 @@ var CompactToolGroupDisplay = /* @__PURE__ */ __name(({ toolCalls, contentWidth
2848
2881
  }, "CompactToolGroupDisplay");
2849
2882
 
2850
2883
  // packages/cli/src/ui/utils/resumeHistoryUtils.ts
2884
+ function extractUserRecordDisplayText(record) {
2885
+ const payload = record.systemPayload;
2886
+ if (payload?.displayText) {
2887
+ return payload.displayText;
2888
+ }
2889
+ const parts = record.message?.parts ?? [];
2890
+ return extractTextFromParts([
2891
+ ...stripTrailingUserPromptSubmitContextPart(parts)
2892
+ ]);
2893
+ }
2894
+ __name(extractUserRecordDisplayText, "extractUserRecordDisplayText");
2851
2895
  function extractTextFromParts(parts) {
2852
2896
  if (!parts) return "";
2853
2897
  const textParts = [];
@@ -3053,7 +3097,7 @@ function convertToHistoryItems(conversation, config, historyGaps) {
3053
3097
  currentToolGroup = [];
3054
3098
  }
3055
3099
  const payload = pendingAtCommands.shift();
3056
- const text2 = payload.userText || extractTextFromParts(record.message?.parts);
3100
+ const text2 = payload.userText || extractUserRecordDisplayText(record);
3057
3101
  if (text2) {
3058
3102
  items.push({ type: "user", text: text2 });
3059
3103
  }
@@ -3073,7 +3117,7 @@ function convertToHistoryItems(conversation, config, historyGaps) {
3073
3117
  });
3074
3118
  currentToolGroup = [];
3075
3119
  }
3076
- const text = extractTextFromParts(record.message?.parts);
3120
+ const text = extractUserRecordDisplayText(record);
3077
3121
  if (text) {
3078
3122
  items.push({ type: "user", text });
3079
3123
  }
@@ -3130,6 +3174,9 @@ function convertToHistoryItems(conversation, config, historyGaps) {
3130
3174
  if (toolCall) {
3131
3175
  const rawDisplay = record.toolCallResult.resultDisplay;
3132
3176
  toolCall.resultDisplay = rawDisplay;
3177
+ if (record.toolCallResult.visionBridgeNotice !== void 0) {
3178
+ toolCall.visionBridgeNotice = record.toolCallResult.visionBridgeNotice;
3179
+ }
3133
3180
  const rawStatus = record.toolCallResult["status"];
3134
3181
  toolCall.status = rawStatus === "error" ? "Error" /* Error */ : "Success" /* Success */;
3135
3182
  if (toolCall.status === "Success" /* Success */ && isCollapsibleTool(toolCall.name)) {