@qwen-code/qwen-code 0.20.0 → 0.20.1-nightly.20260724.7d17c44a3

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 (388) hide show
  1. package/bundled/qc-helper/docs/configuration/settings.md +1 -1
  2. package/bundled/qc-helper/docs/features/auto-mode.md +19 -16
  3. package/bundled/qc-helper/docs/features/commands.md +54 -0
  4. package/bundled/qc-helper/docs/features/sub-agents.md +16 -7
  5. package/bundled/qc-helper/docs/integration-github-action.md +1 -1
  6. package/bundled/qc-helper/docs/qwen-serve.md +2 -1
  7. package/bundled/review/DESIGN.md +2 -2
  8. package/bundled/review/SKILL.md +7 -5
  9. package/chunks/MaxSizedBox-LGRTXB47.js +84 -0
  10. package/chunks/{StandaloneSessionPicker-CEGO2AZX.js → StandaloneSessionPicker-H3TBU3C3.js} +68 -56
  11. package/chunks/{acp-startup-profiler-N3RHHXJ3.js → acp-startup-profiler-RV3IV562.js} +2 -2
  12. package/chunks/{acpAgent-YUR43TLG.js → acpAgent-5D7P4BB5.js} +2061 -556
  13. package/chunks/agent-W7UAHCCI.js +80 -0
  14. package/chunks/agent-headless-KTBMPRSC.js +74 -0
  15. package/chunks/{anthropicContentGenerator-HVKLXOOU.js → anthropicContentGenerator-ZLQ3X2HI.js} +112 -45
  16. package/chunks/{artifact-tool-WBCAMD3O.js → artifact-tool-OKMWONT6.js} +3 -3
  17. package/chunks/{askUserQuestion-6DZC4UV5.js → askUserQuestion-V6FUS23G.js} +3 -3
  18. package/chunks/bridge-FFC4C6VD.js +89 -0
  19. package/chunks/{build-SSCNEHZZ.js → build-RV63TIRH.js} +2 -3
  20. package/chunks/{ca-2SL2BXTK.js → ca-GKRQZ7AM.js} +612 -201
  21. package/chunks/{channel-worker-group-53CMOPFT.js → channel-worker-group-MA3WXWYX.js} +7 -6
  22. package/chunks/{channel-worker-manager-UTXILKC2.js → channel-worker-manager-TIYYYBCT.js} +189 -29
  23. package/chunks/{channel-worker-supervisor-ZGO2W2MD.js → channel-worker-supervisor-CXRCDA4Y.js} +6 -5
  24. package/chunks/{chunk-TYQMGACW.js → chunk-22C7BQ6D.js} +508 -10967
  25. package/chunks/{chunk-4EP2PYYL.js → chunk-2G6QIHYL.js} +5 -5
  26. package/chunks/{chunk-H2XVO6NE.js → chunk-2MIN6GRR.js} +1 -1
  27. package/chunks/chunk-2RFKHEXL.js +74 -0
  28. package/chunks/{chunk-7SXZC7ID.js → chunk-2WTVWAKT.js} +7 -6
  29. package/chunks/{chunk-TIH2ZTOC.js → chunk-32A4PI3E.js} +2 -2
  30. package/chunks/chunk-36HSVBBU.js +469 -0
  31. package/chunks/{chunk-IR46U7RB.js → chunk-3FB2Y2OE.js} +3 -3
  32. package/chunks/{chunk-QR6U5QPP.js → chunk-3SJ43L4W.js} +4 -0
  33. package/chunks/chunk-3Z43GZUQ.js +32 -0
  34. package/chunks/chunk-43T5WDQ7.js +127 -0
  35. package/chunks/chunk-46UV252V.js +128 -0
  36. package/chunks/{chunk-JD3MKVKL.js → chunk-4K56OJFJ.js} +1 -1
  37. package/chunks/{chunk-KTUQMDEP.js → chunk-4K7VDKAD.js} +1 -1
  38. package/chunks/{chunk-QKYTTBYW.js → chunk-4LVZNIDO.js} +1 -1
  39. package/chunks/{chunk-OWCALFEG.js → chunk-54R2CV2G.js} +1 -1
  40. package/chunks/{chunk-ZEOZL37W.js → chunk-57FIIFJN.js} +1 -1
  41. package/chunks/chunk-5BS3KLRP.js +6194 -0
  42. package/chunks/{chunk-NEEB7UEN.js → chunk-6GMVPFB2.js} +153 -72
  43. package/chunks/{chunk-GMGDLUC7.js → chunk-6IL7KRLE.js} +1 -1
  44. package/chunks/chunk-6PVPNMXU.js +29 -0
  45. package/chunks/chunk-6QHAUJUE.js +293 -0
  46. package/chunks/chunk-6VK3IRTX.js +10017 -0
  47. package/chunks/{chunk-BDBMYST4.js → chunk-6X4GWOPW.js} +1 -1
  48. package/chunks/{chunk-AYCDXHZB.js → chunk-7Z6JQEL6.js} +1 -1
  49. package/chunks/{chunk-FSL5W5TI.js → chunk-AFFGGOF6.js} +4 -4
  50. package/chunks/chunk-AMDSOFFV.js +10860 -0
  51. package/chunks/chunk-AXUW635Q.js +934 -0
  52. package/chunks/{chunk-A5LYNIW7.js → chunk-BJBUDCM3.js} +8 -8
  53. package/chunks/chunk-BK2UNYWD.js +29 -0
  54. package/chunks/{chunk-6RLROE6G.js → chunk-BLFVGB7D.js} +30 -4
  55. package/chunks/chunk-BPJSQIJX.js +100 -0
  56. package/chunks/{chunk-FLSVD6BS.js → chunk-BRTR7S7O.js} +3 -3
  57. package/chunks/{chunk-KG3XV6FH.js → chunk-BSNWBC33.js} +32 -2
  58. package/chunks/chunk-BULDBTYC.js +153 -0
  59. package/chunks/{chunk-PBWEWI4N.js → chunk-BW5Z5NOG.js} +83 -74
  60. package/chunks/{chunk-EIAK6Q2B.js → chunk-C3VHAXP2.js} +20 -3
  61. package/chunks/{chunk-6AFUCL3D.js → chunk-CEZB3XFD.js} +1 -1
  62. package/chunks/chunk-CHMENNJV.js +1832 -0
  63. package/chunks/{chunk-TMQ6XQCX.js → chunk-CK3IEEHR.js} +416 -291
  64. package/chunks/{chunk-OYZWQNWG.js → chunk-CK6UABV2.js} +2 -2
  65. package/chunks/{chunk-VZQUV7VK.js → chunk-CKTMY3EP.js} +1 -1
  66. package/chunks/{chunk-VDWBQ5AW.js → chunk-CUPAVLRY.js} +5 -2
  67. package/chunks/{chunk-I2PYAYFM.js → chunk-CXUFILV3.js} +3 -3
  68. package/chunks/chunk-DP3IHZGG.js +1498 -0
  69. package/chunks/{chunk-BMWMT5Y2.js → chunk-DP5GT2MW.js} +7 -375
  70. package/chunks/{chunk-D22SX43D.js → chunk-DWNZ6PVQ.js} +1 -1
  71. package/chunks/{chunk-5SCI6E3E.js → chunk-E4IMU4Y5.js} +1 -1
  72. package/chunks/{chunk-DP5GXXNZ.js → chunk-EL2IQ2S5.js} +5 -1
  73. package/chunks/{chunk-EZVDJFZ7.js → chunk-ERLGR7GI.js} +1 -1
  74. package/chunks/{chunk-IVPSS6EL.js → chunk-F5MBYZSU.js} +4 -4
  75. package/chunks/{chunk-AQIEINAY.js → chunk-F6IYL66A.js} +28 -1766
  76. package/chunks/{chunk-FEOZBUMT.js → chunk-FODK6UMO.js} +0 -27
  77. package/chunks/{chunk-PGEPSDJI.js → chunk-FWNZ7CVN.js} +24 -20
  78. package/chunks/{chunk-5JBR5XIK.js → chunk-G7EFBBVF.js} +220 -141
  79. package/chunks/chunk-GLNBDYUX.js +38 -0
  80. package/chunks/{chunk-ANPINBOF.js → chunk-H4YKEV2X.js} +5 -5
  81. package/chunks/{chunk-TDKQP3M6.js → chunk-HIJQF5B5.js} +1 -1
  82. package/chunks/{chunk-FQD7GFSV.js → chunk-HJJDKFL5.js} +3 -3
  83. package/chunks/{chunk-4N3KMAIL.js → chunk-HPWHDJID.js} +152 -35
  84. package/chunks/{chunk-KQNM4EO7.js → chunk-HQCSRJ3P.js} +138 -6
  85. package/chunks/chunk-HTR4WV6U.js +327 -0
  86. package/chunks/{chunk-YWEW33JY.js → chunk-HVO55LUD.js} +7 -7
  87. package/chunks/{chunk-MJ6S23WZ.js → chunk-HZEWYOVI.js} +5 -5
  88. package/chunks/chunk-IFG6TYJ2.js +16577 -0
  89. package/chunks/{chunk-B3KGZCQN.js → chunk-IJTOWOD7.js} +322 -202
  90. package/chunks/{chunk-RS7MT2QG.js → chunk-IPUUTYMV.js} +2 -4
  91. package/chunks/{chunk-4ILMYHEI.js → chunk-IRDZJSCL.js} +3 -3
  92. package/chunks/{chunk-XU457J4V.js → chunk-IRH27ZC2.js} +2 -2
  93. package/chunks/{chunk-33XUAINQ.js → chunk-J5UKQEFG.js} +69 -9
  94. package/chunks/{chunk-G45X5TRN.js → chunk-JCW2R7WC.js} +1 -72
  95. package/chunks/{chunk-S2XVRHDN.js → chunk-JDFBBGRD.js} +1 -1
  96. package/chunks/{chunk-4XNLIGVA.js → chunk-JKCALGYN.js} +1023 -383
  97. package/chunks/{chunk-TJTKSVIV.js → chunk-JLU636DO.js} +5 -1
  98. package/chunks/{chunk-VEXFOTEO.js → chunk-JYUSL2V4.js} +3 -3
  99. package/chunks/{chunk-S2PD3EZD.js → chunk-KJEMJWNH.js} +1 -1
  100. package/chunks/{chunk-E2UVIFI2.js → chunk-KRXPRVGL.js} +0 -1
  101. package/chunks/{chunk-CZF3E5GF.js → chunk-LA5H3LM5.js} +1 -1
  102. package/chunks/{chunk-NDMQLV4Y.js → chunk-LBAO2XRA.js} +4 -4
  103. package/chunks/{chunk-7RMOXZTC.js → chunk-LDPP5VTZ.js} +4 -4
  104. package/chunks/{chunk-KDC6GNQR.js → chunk-LEEWLFHW.js} +4 -4
  105. package/chunks/{chunk-KX6UK4VJ.js → chunk-LI4I37W4.js} +22152 -18007
  106. package/chunks/{chunk-OOCI5VVU.js → chunk-LIZRAKPB.js} +1 -1
  107. package/chunks/{chunk-AJSJ5TTU.js → chunk-LP2E4MQG.js} +1 -1
  108. package/chunks/chunk-LS77BEZP.js +405 -0
  109. package/chunks/{chunk-BRRF37CO.js → chunk-LYTBLSSW.js} +5 -5
  110. package/chunks/{chunk-DBE4QFZS.js → chunk-MB7ENXPR.js} +39 -37
  111. package/chunks/{chunk-GKY2OJ7R.js → chunk-MOHAWVLH.js} +4 -4
  112. package/chunks/chunk-NABLFI57.js +82 -0
  113. package/chunks/chunk-NBQDBANR.js +411 -0
  114. package/chunks/{chunk-EAUYY7SS.js → chunk-NOAAFNTJ.js} +43 -10
  115. package/chunks/chunk-NXS53EA7.js +1462 -0
  116. package/chunks/{chunk-C27BYUX6.js → chunk-OQB4EXO4.js} +14 -11
  117. package/chunks/{chunk-NHDKSOEY.js → chunk-P3QQPMQA.js} +5 -5
  118. package/chunks/{chunk-OP4MOGXF.js → chunk-P5RRUHL7.js} +23 -1
  119. package/chunks/{chunk-KOR3XKCA.js → chunk-PBII2NFX.js} +12 -6
  120. package/chunks/{chunk-O3OCNYY5.js → chunk-PDYB7HG2.js} +2 -2
  121. package/chunks/{chunk-2HOVDT7W.js → chunk-PFSUKTZH.js} +1 -1
  122. package/chunks/chunk-PKL3HGNZ.js +2299 -0
  123. package/chunks/{chunk-5DTTYNB7.js → chunk-PQNHRFJC.js} +16 -3
  124. package/chunks/{chunk-OLMETXLX.js → chunk-PXHK5ONM.js} +41 -9
  125. package/chunks/{chunk-PF4CHQOJ.js → chunk-Q6GU6TKM.js} +11 -10
  126. package/chunks/{chunk-4ODB7WIB.js → chunk-QAFKR7WR.js} +1 -1
  127. package/chunks/{chunk-PBATSWUQ.js → chunk-QBUDF33N.js} +1 -1
  128. package/chunks/{chunk-BVLROR2T.js → chunk-QLJUC7TG.js} +1 -1
  129. package/chunks/{chunk-UEY4AYUL.js → chunk-QNLNLENL.js} +2 -2
  130. package/chunks/{chunk-333CXMNJ.js → chunk-QXZTZJLX.js} +5 -5
  131. package/chunks/chunk-R6D2CTQR.js +289 -0
  132. package/chunks/{chunk-7PZ2ATFZ.js → chunk-R6SKHK3T.js} +54 -29
  133. package/chunks/{chunk-OONJNQ42.js → chunk-RGG6M2WF.js} +4 -4
  134. package/chunks/{chunk-RFIAR4YL.js → chunk-RV4C2ZFG.js} +1 -1
  135. package/chunks/{chunk-O3Z73NBP.js → chunk-RW2NEXYJ.js} +15 -11
  136. package/chunks/{chunk-HZPN55E5.js → chunk-SJEDL7DI.js} +1 -1
  137. package/chunks/{chunk-AKX4WPPP.js → chunk-SWBJRDYC.js} +866 -183
  138. package/chunks/{chunk-NBMIC7DR.js → chunk-SX4PK3FC.js} +145 -5
  139. package/chunks/chunk-T3452DP5.js +246 -0
  140. package/chunks/{chunk-TB6UDU4T.js → chunk-THJNPLI4.js} +16 -16
  141. package/chunks/{chunk-T4TZQJ7W.js → chunk-TWPJO254.js} +5 -16
  142. package/chunks/chunk-U7ZFW55U.js +2098 -0
  143. package/chunks/{chunk-JNWZQ27S.js → chunk-UCOJC6EB.js} +72 -23
  144. package/chunks/{chunk-W7H223ZZ.js → chunk-UGYMA4EI.js} +1 -1
  145. package/chunks/{chunk-X6YQWCIJ.js → chunk-UH3WSE5L.js} +13 -1
  146. package/chunks/{chunk-2LL7TXB4.js → chunk-UH7242DI.js} +3 -3
  147. package/chunks/{chunk-CB2HFGRV.js → chunk-UJV643E2.js} +31 -6
  148. package/chunks/chunk-UO7DCGEV.js +121 -0
  149. package/chunks/{chunk-Y2ENGUD6.js → chunk-UPF7PTBI.js} +79 -2
  150. package/chunks/chunk-UW5EOVUN.js +249 -0
  151. package/chunks/{chunk-SJMV7ZBK.js → chunk-VLVO52KC.js} +8 -8
  152. package/chunks/{chunk-R3VWUU2E.js → chunk-VYPFXUCB.js} +1 -1
  153. package/chunks/{chunk-S2W2LVDU.js → chunk-WHFK6G6U.js} +8 -9
  154. package/chunks/chunk-WI3KCKZ5.js +391 -0
  155. package/chunks/{chunk-NGFEPAE6.js → chunk-WLEFWSSC.js} +8 -6
  156. package/chunks/{chunk-XVVH63JG.js → chunk-WUJXJ34P.js} +3 -3
  157. package/chunks/{chunk-MAQQGNQ5.js → chunk-WYLPWQHJ.js} +56 -717
  158. package/chunks/{chunk-D2VIDMVM.js → chunk-X6N25LXS.js} +2 -2
  159. package/chunks/chunk-XAWJ2526.js +1049 -0
  160. package/chunks/{chunk-CV63PP6U.js → chunk-YCIM6O3I.js} +1 -1
  161. package/chunks/{chunk-OEO2ERWK.js → chunk-Z44CVEUF.js} +54 -33
  162. package/chunks/{chunk-TKLLK6XQ.js → chunk-ZT4POVWC.js} +11 -11
  163. package/chunks/{chunk-NIJEXGV6.js → chunk-ZXYUQXY5.js} +148 -10
  164. package/chunks/{computer-use-NIWQNUZF.js → computer-use-UJ5T34TE.js} +50 -37
  165. package/chunks/{config-utils-AHQ6YZ66.js → config-utils-XQRXHAN3.js} +3 -3
  166. package/chunks/contextCommand-CSCB4E5M.js +79 -0
  167. package/chunks/{create-sub-session-MGNX52P3.js → create-sub-session-55F3GOLK.js} +46 -33
  168. package/chunks/{create-sub-session-P26FE5GG.js → create-sub-session-JPCSYZAJ.js} +3 -3
  169. package/chunks/{cron-create-JWFHBDRQ.js → cron-create-CUMELMPL.js} +6 -6
  170. package/chunks/{cron-delete-GDX4E26G.js → cron-delete-QZFV6U3P.js} +5 -5
  171. package/chunks/{cron-list-USMAIWPT.js → cron-list-IDKO7ZO2.js} +5 -5
  172. package/chunks/{daemon-RG2MAI6T.js → daemon-7LP7R6IU.js} +500 -133
  173. package/chunks/daemon-status-provider-6YNZ3UAE.js +88 -0
  174. package/chunks/{de-I7ZIYXZC.js → de-4IBXM7CN.js} +5 -1
  175. package/chunks/{dist-WGTQO7F2.js → dist-376652EZ.js} +114 -28
  176. package/chunks/{dist-53PZYC5B.js → dist-3YCTE6HD.js} +2 -2
  177. package/chunks/{dist-2BHAYBKP.js → dist-D7Z3HOO7.js} +14 -2
  178. package/chunks/{dist-FUTEXY6A.js → dist-MEGJFGAI.js} +40 -9
  179. package/chunks/{dist-2MIU4UUH.js → dist-NQ436QEX.js} +1 -1
  180. package/chunks/{dist-AU7NQQRP.js → dist-NQNTOIEN.js} +26 -2
  181. package/chunks/earlyInputCapture-HPUVJ2KH.js +81 -0
  182. package/chunks/{edit-3QV3JZJL.js → edit-7CMAN3F4.js} +50 -39
  183. package/chunks/{en-XE34GKAA.js → en-SALLIJS7.js} +6 -1
  184. package/chunks/{enter-worktree-4GMMF7EG.js → enter-worktree-3PH4YTY2.js} +49 -36
  185. package/chunks/{enterPlanMode-L5UWBAUC.js → enterPlanMode-MSXLSWLI.js} +55 -37
  186. package/chunks/{environment-3OV7UQOT.js → environment-KS36ZHBE.js} +48 -35
  187. package/chunks/errors-LCPFS62A.js +87 -0
  188. package/chunks/{exit-worktree-DDP57JLV.js → exit-worktree-ARA4C3CK.js} +49 -36
  189. package/chunks/{exitPlanMode-CJBLGPIP.js → exitPlanMode-GCDIQPB7.js} +49 -36
  190. package/chunks/{fast-path-M6RP2ING.js → fast-path-IDHBVIT6.js} +3 -2
  191. package/chunks/{fr-X7KDVZIY.js → fr-WVHEBDDB.js} +5 -1
  192. package/chunks/{gemini-H4PHBJTL.js → gemini-2AFQJMX5.js} +141 -105
  193. package/chunks/{geminiContentGenerator-VURJYPWP.js → geminiContentGenerator-UDIH3YI6.js} +9 -8
  194. package/chunks/{getMachineId-bsd-EXV7SWPA.js → getMachineId-bsd-QFVLPUPT.js} +1 -1
  195. package/chunks/{getMachineId-darwin-IUOMFXU3.js → getMachineId-darwin-DGMQQE2E.js} +1 -1
  196. package/chunks/{getMachineId-linux-K7XJYFHL.js → getMachineId-linux-R4Z6CSWC.js} +1 -1
  197. package/chunks/{getMachineId-unsupported-EA5FDRJ6.js → getMachineId-unsupported-Z3SBVBUV.js} +1 -1
  198. package/chunks/{getMachineId-win-KBA6RAI5.js → getMachineId-win-SCK5UFDT.js} +1 -1
  199. package/chunks/{glob-2KUSRAVQ.js → glob-HCL7HZ67.js} +49 -36
  200. package/chunks/{grep-B5RXVESV.js → grep-CJLBSCTV.js} +49 -36
  201. package/chunks/handleAutoUpdate-Q572P3FL.js +80 -0
  202. package/chunks/i18n-OBB4R7SR.js +96 -0
  203. package/chunks/initializer-LXEY6V3C.js +85 -0
  204. package/chunks/installationInfo-XUAOVMEE.js +79 -0
  205. package/chunks/{ja-2ICT3KXF.js → ja-KY4ROZTE.js} +5 -1
  206. package/chunks/{keychain-token-storage-DWRJMNH3.js → keychain-token-storage-6ACJDYIB.js} +3 -3
  207. package/chunks/{kittyProtocolDetector-HCNNKJTI.js → kittyProtocolDetector-MBRTDRBK.js} +5 -3
  208. package/chunks/list-WAXY7QOU.js +88 -0
  209. package/chunks/list-agents-AH3P5NB7.js +80 -0
  210. package/chunks/loadedSettingsAdapter-OZFNBRHE.js +82 -0
  211. package/chunks/loggingContentGenerator-7WDTTE6G.js +1068 -0
  212. package/chunks/{loop-wakeup-5GLTUBHA.js → loop-wakeup-IHRW6TNB.js} +7 -7
  213. package/chunks/{ls-FHBY3Y7I.js → ls-ZAXZ2G2W.js} +5 -5
  214. package/chunks/{lsp-B6VMEW6Y.js → lsp-R4ZG3UGQ.js} +3 -3
  215. package/chunks/managed-npm-update-N42DO5QW.js +339 -0
  216. package/chunks/mcp-6SOORKTY.js +82 -0
  217. package/chunks/{monitor-GLJZDNPS.js → monitor-4PSVNVU4.js} +51 -37
  218. package/chunks/node-UUDY34IG.js +305 -0
  219. package/chunks/nonInteractiveCli-FBR5S7IZ.js +140 -0
  220. package/chunks/{notebook-edit-AVCIWS4F.js → notebook-edit-QK26632S.js} +50 -39
  221. package/chunks/{openaiContentGenerator-B7W24G3D.js → openaiContentGenerator-IXJS6C2U.js} +33 -20
  222. package/chunks/pidfile-UCFCJOAP.js +85 -0
  223. package/chunks/{processUtils-XZPY2PBB.js → processUtils-YL2LXON2.js} +2 -2
  224. package/chunks/{pt-JJ4XPIBP.js → pt-OK455PLH.js} +5 -1
  225. package/chunks/{qwenContentGenerator-6GUTWJIC.js → qwenContentGenerator-H6WZPJKC.js} +56 -36
  226. package/chunks/{qwenOAuth2-GASEEWGU.js → qwenOAuth2-HTROHKXO.js} +10 -23
  227. package/chunks/read-file-FOYTMUNL.js +31 -0
  228. package/chunks/{read-mcp-resource-AKCL7I43.js → read-mcp-resource-65BWNF3F.js} +3 -3
  229. package/chunks/{record-artifact-PEUB7727.js → record-artifact-2RLSOP6U.js} +3 -3
  230. package/chunks/resumeHistoryUtils-ZNHTWBXS.js +90 -0
  231. package/chunks/ripGrep-K4K4QLNJ.js +72 -0
  232. package/chunks/{ru-STR4KTW7.js → ru-7SPDGMGD.js} +5 -1
  233. package/chunks/{run-qwen-serve-OZGR3FQA.js → run-qwen-serve-XI4MCAFV.js} +343 -88
  234. package/chunks/runtime-4CTBU5WX.js +115 -0
  235. package/chunks/{scheduler-Z7QLMUWA.js → scheduler-TTEITHBF.js} +46 -33
  236. package/chunks/sdk-exporters-grpc-N3OLDF63.js +23214 -0
  237. package/chunks/sdk-exporters-http-AOHAEOMC.js +563 -0
  238. package/chunks/sdk-impl-TLQOC7P4.js +9193 -0
  239. package/chunks/{send-message-3RHE7HSM.js → send-message-GEY4CNPS.js} +47 -8
  240. package/chunks/serve-W7UKJTQT.js +88 -0
  241. package/chunks/{server-SO64U3X5.js → server-JD5PIE7A.js} +3069 -517
  242. package/chunks/{session-2KL2WQAH.js → session-R4BDHLYR.js} +112 -177
  243. package/chunks/{settings-KITVOUSV.js → settings-BXZHA6TZ.js} +50 -37
  244. package/chunks/shell-XYMFCGN5.js +82 -0
  245. package/chunks/{skill-SOQHY455.js → skill-YKXYEPOF.js} +25 -20
  246. package/chunks/spawnChannel-IO4HQLFS.js +81 -0
  247. package/chunks/{src-43LM7JLB.js → src-LKKTJ4NG.js} +382 -235
  248. package/chunks/standalone-update-76JG7DVN.js +91 -0
  249. package/chunks/{startInteractiveUI-3RGTGEX5.js → startInteractiveUI-BXWQUXAS.js} +1314 -958
  250. package/chunks/{syntheticOutput-FG5PQKIR.js → syntheticOutput-2WNMXEU5.js} +4 -4
  251. package/chunks/task-create-R5H74Y76.js +25 -0
  252. package/chunks/{task-list-QWSY4ZIU.js → task-list-WXAFDSRY.js} +7 -7
  253. package/chunks/{task-stop-GWC6UWAL.js → task-stop-CHFZP23W.js} +4 -4
  254. package/chunks/{task-update-NCTAB73Q.js → task-update-Z44A4GAR.js} +11 -9
  255. package/chunks/{team-create-FXN3PEBP.js → team-create-5Y3MCAIM.js} +49 -36
  256. package/chunks/{team-delete-KK37HTOG.js → team-delete-YDCMRSI4.js} +7 -7
  257. package/chunks/{team-plan-approval-GEIZ356Q.js → team-plan-approval-HYJJZ76T.js} +49 -36
  258. package/chunks/theme-manager-3YF2SUZL.js +76 -0
  259. package/chunks/{todoWrite-ERCAMLFS.js → todoWrite-ED2IVZJL.js} +5 -5
  260. package/chunks/{tool-search-XKK7DNOK.js → tool-search-3ZO2XMEP.js} +21 -17
  261. package/chunks/total-session-admission-NDF7EVG7.js +83 -0
  262. package/chunks/trustedFolders-Q7RALK4T.js +92 -0
  263. package/chunks/{chunk-6EFTQYW7.js → undici-3FJYTMOF.js} +24 -399
  264. package/chunks/{chunk-L573Z2QZ.js → undici-PYHBDDPN.js} +1 -5
  265. package/chunks/{update-relaunch-FMVZK6XF.js → update-relaunch-BTW5XGVT.js} +17 -17
  266. package/chunks/updateCheck-MXIU6DWQ.js +91 -0
  267. package/chunks/useAutoAcceptIndicator-BJXHJW77.js +92 -0
  268. package/chunks/{validateNonInterActiveAuth-PRVEB6GG.js → validateNonInterActiveAuth-FLEPF3QQ.js} +90 -76
  269. package/chunks/{version-AZMG6KWL.js → version-75VRONIL.js} +1 -1
  270. package/chunks/{web-fetch-EPGJ5OQQ.js → web-fetch-5X27LYHB.js} +101 -41
  271. package/chunks/web-search-IDMTBJUP.js +718 -0
  272. package/chunks/{workflow-UTNVPW22.js → workflow-JOD2OPFQ.js} +54 -40
  273. package/chunks/workspace-providers-status-WDLBDLPG.js +85 -0
  274. package/chunks/{workspace-registration-store-F3ZX3YHT.js → workspace-registration-store-26Z6J6P5.js} +9 -3
  275. package/chunks/workspace-registry-IABDATX3.js +87 -0
  276. package/chunks/workspace-service-BI4KDYPD.js +97 -0
  277. package/chunks/workspace-skills-status-OVB4LPHA.js +84 -0
  278. package/chunks/write-file-276AJ7KE.js +72 -0
  279. package/chunks/{zh-6ANG2HTL.js → zh-Q54GA5SV.js} +6 -1
  280. package/chunks/{zh-TW-4RR3YHNN.js → zh-TW-VOBNFOPU.js} +6 -1
  281. package/cli-entry.js +164 -12
  282. package/cli.js +19 -12
  283. package/locales/ca.js +773 -203
  284. package/locales/de.js +8 -2
  285. package/locales/en.js +9 -2
  286. package/locales/fr.js +8 -2
  287. package/locales/ja.js +8 -2
  288. package/locales/pt.js +8 -2
  289. package/locales/ru.js +8 -2
  290. package/locales/zh-TW.js +9 -2
  291. package/locales/zh.js +9 -2
  292. package/package.json +3 -3
  293. package/web-shell/assets/{arc-Buk1besA.js → arc-CMb7lr2P.js} +1 -1
  294. package/web-shell/assets/{architectureDiagram-3BPJPVTR-B1aUKYDC.js → architectureDiagram-3BPJPVTR-D6KQ5Kwm.js} +1 -1
  295. package/web-shell/assets/{blockDiagram-GPEHLZMM-CRTdg3Zx.js → blockDiagram-GPEHLZMM-Ce7YYSf8.js} +1 -1
  296. package/web-shell/assets/{c4Diagram-AAUBKEIU-DFdRMp5g.js → c4Diagram-AAUBKEIU-DaStHfor.js} +1 -1
  297. package/web-shell/assets/channel-Dg4f-Kry.js +1 -0
  298. package/web-shell/assets/{chunk-2J33WTMH-4rYQdkEI.js → chunk-2J33WTMH-CPaqadg9.js} +1 -1
  299. package/web-shell/assets/{chunk-4BX2VUAB-Coi-pQJy.js → chunk-4BX2VUAB-Veh9ZGKg.js} +1 -1
  300. package/web-shell/assets/{chunk-55IACEB6-BtBjz02t.js → chunk-55IACEB6-BPTX5n4q.js} +1 -1
  301. package/web-shell/assets/{chunk-727SXJPM-CGYOWorl.js → chunk-727SXJPM-CtXsE_ca.js} +1 -1
  302. package/web-shell/assets/{chunk-AQP2D5EJ-CH5AKhqx.js → chunk-AQP2D5EJ-D8DDCJ8h.js} +1 -1
  303. package/web-shell/assets/{chunk-FMBD7UC4-Cd50-w85.js → chunk-FMBD7UC4-cjMDGzHz.js} +1 -1
  304. package/web-shell/assets/{chunk-ND2GUHAM-C2wF3KCK.js → chunk-ND2GUHAM-BaZ1hNhV.js} +1 -1
  305. package/web-shell/assets/{chunk-QZHKN3VN-pCeRTaWi.js → chunk-QZHKN3VN-C7w-9w5-.js} +1 -1
  306. package/web-shell/assets/classDiagram-4FO5ZUOK-CT7Fo2aW.js +1 -0
  307. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CT7Fo2aW.js +1 -0
  308. package/web-shell/assets/{cose-bilkent-S5V4N54A-B-_fAB6D.js → cose-bilkent-S5V4N54A-DqvBEEIe.js} +1 -1
  309. package/web-shell/assets/{dagre-BM42HDAG-ChSPNHpL.js → dagre-BM42HDAG-RkPyoMAk.js} +1 -1
  310. package/web-shell/assets/{diagram-2AECGRRQ-BX7cFOF3.js → diagram-2AECGRRQ-D9b6nNyg.js} +1 -1
  311. package/web-shell/assets/{diagram-5GNKFQAL-BQUTW92n.js → diagram-5GNKFQAL-CiiNKUIy.js} +1 -1
  312. package/web-shell/assets/{diagram-KO2AKTUF-BkYPh3e4.js → diagram-KO2AKTUF-CP1qizXd.js} +1 -1
  313. package/web-shell/assets/{diagram-LMA3HP47-Cl6jsNyx.js → diagram-LMA3HP47-BGe30TWx.js} +1 -1
  314. package/web-shell/assets/{diagram-OG6HWLK6-DRWoHz8n.js → diagram-OG6HWLK6-CvoEPARH.js} +1 -1
  315. package/web-shell/assets/{erDiagram-TEJ5UH35-CGvFcZco.js → erDiagram-TEJ5UH35-DWfLzVkV.js} +1 -1
  316. package/web-shell/assets/{flowDiagram-I6XJVG4X-vms6oVdv.js → flowDiagram-I6XJVG4X-D-dTQmo6.js} +1 -1
  317. package/web-shell/assets/{ganttDiagram-6RSMTGT7-ukT_sfmi.js → ganttDiagram-6RSMTGT7-CYPHKaGY.js} +1 -1
  318. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-Bn2ZE2Ut.js → gitGraphDiagram-PVQCEYII-DA7_aQYD.js} +1 -1
  319. package/web-shell/assets/index-B0i-TOYM.css +5 -0
  320. package/web-shell/assets/index-CgCHD46L.js +1225 -0
  321. package/web-shell/assets/{index-wFXp7W68.js → index-DqHNAB8C.js} +1 -1
  322. package/web-shell/assets/{infoDiagram-5YYISTIA-DHJdSi7x.js → infoDiagram-5YYISTIA-B87ljDPa.js} +1 -1
  323. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-DOvd2Wph.js → ishikawaDiagram-YF4QCWOH-CYSpyjaN.js} +1 -1
  324. package/web-shell/assets/{journeyDiagram-JHISSGLW-CH_urMCT.js → journeyDiagram-JHISSGLW-DAL6Js6f.js} +1 -1
  325. package/web-shell/assets/{kanban-definition-UN3LZRKU-FKiBdgbH.js → kanban-definition-UN3LZRKU-_zufKGJv.js} +1 -1
  326. package/web-shell/assets/{linear-0ZVQFVKf.js → linear-DidhMgku.js} +1 -1
  327. package/web-shell/assets/{mermaid.core-DJ05ZZIK.js → mermaid.core-DAkX3h3a.js} +5 -5
  328. package/web-shell/assets/{mindmap-definition-RKZ34NQL-BPuUhkUm.js → mindmap-definition-RKZ34NQL-DbZxUBEH.js} +1 -1
  329. package/web-shell/assets/{pieDiagram-4H26LBE5-yLFKcXyG.js → pieDiagram-4H26LBE5-Du9uoqrf.js} +1 -1
  330. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-irWqc1pE.js → quadrantDiagram-W4KKPZXB-DwjELuKm.js} +1 -1
  331. package/web-shell/assets/{requirementDiagram-4Y6WPE33-B_4uMoIV.js → requirementDiagram-4Y6WPE33-BAqfVtBL.js} +1 -1
  332. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-ciA4GPwk.js → sankeyDiagram-5OEKKPKP--hm2VpmK.js} +1 -1
  333. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-CRdZvy0U.js → sequenceDiagram-3UESZ5HK-R5MUQaIt.js} +1 -1
  334. package/web-shell/assets/{stateDiagram-AJRCARHV-DaYIkCCn.js → stateDiagram-AJRCARHV-VsX032xQ.js} +1 -1
  335. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-uPWLcSfy.js +1 -0
  336. package/web-shell/assets/{timeline-definition-PNZ67QCA-oBUKv6iH.js → timeline-definition-PNZ67QCA-BqjVRXzg.js} +1 -1
  337. package/web-shell/assets/{vennDiagram-CIIHVFJN-CGW9Sdmb.js → vennDiagram-CIIHVFJN-i2tkvlkg.js} +1 -1
  338. package/web-shell/assets/{wardley-L42UT6IY-CvwKJOCm.js → wardley-L42UT6IY-Ch8G49EM.js} +1 -1
  339. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-Ipc260sN.js → wardleyDiagram-YWT4CUSO-bYpWeQNy.js} +1 -1
  340. package/web-shell/assets/{xychartDiagram-2RQKCTM6-D6-CM7pK.js → xychartDiagram-2RQKCTM6-C9NhuBqB.js} +1 -1
  341. package/web-shell/index.html +17 -13
  342. package/chunks/MaxSizedBox-B5YGZSYE.js +0 -72
  343. package/chunks/agent-H4JIDL7S.js +0 -67
  344. package/chunks/agent-headless-TTBEREQV.js +0 -61
  345. package/chunks/bridge-VL7ITBU5.js +0 -75
  346. package/chunks/chunk-542SK7KV.js +0 -8293
  347. package/chunks/chunk-CPCVCKKF.js +0 -358
  348. package/chunks/chunk-SEKHYHMS.js +0 -45
  349. package/chunks/chunk-W7FJ3N32.js +0 -49
  350. package/chunks/chunk-ZFKNWQGQ.js +0 -74639
  351. package/chunks/contextCommand-L2COEUHS.js +0 -66
  352. package/chunks/daemon-status-provider-NL4IAG7B.js +0 -74
  353. package/chunks/earlyInputCapture-L6I2A22T.js +0 -68
  354. package/chunks/errors-LEOF5QG4.js +0 -74
  355. package/chunks/handleAutoUpdate-QQVIWXKT.js +0 -67
  356. package/chunks/i18n-N6OBDORT.js +0 -83
  357. package/chunks/initializer-6WCFNDLL.js +0 -72
  358. package/chunks/installationInfo-6J3WPXNS.js +0 -64
  359. package/chunks/list-HOWQSWP6.js +0 -75
  360. package/chunks/loadedSettingsAdapter-AO4YBRXZ.js +0 -69
  361. package/chunks/mcp-QH7QNXOH.js +0 -69
  362. package/chunks/nonInteractiveCli-TI7EMPXD.js +0 -126
  363. package/chunks/pidfile-UEHAT6DH.js +0 -72
  364. package/chunks/read-file-SQJONF6A.js +0 -29
  365. package/chunks/resumeHistoryUtils-PFQ2A23X.js +0 -78
  366. package/chunks/ripGrep-QCK22GDU.js +0 -59
  367. package/chunks/runtime-SNVAP6EH.js +0 -100
  368. package/chunks/serve-BT7KS6SC.js +0 -75
  369. package/chunks/shell-BITUVH2R.js +0 -69
  370. package/chunks/spawnChannel-2BU3AULL.js +0 -68
  371. package/chunks/standalone-update-YG5JUYCM.js +0 -78
  372. package/chunks/task-create-HX32YXO7.js +0 -23
  373. package/chunks/theme-manager-IAETOI25.js +0 -63
  374. package/chunks/total-session-admission-BJLDHKJN.js +0 -69
  375. package/chunks/trustedFolders-5XCVNEUU.js +0 -79
  376. package/chunks/updateCheck-YZZB7YBU.js +0 -70
  377. package/chunks/useAutoAcceptIndicator-ZSQX4I2H.js +0 -80
  378. package/chunks/workspace-providers-status-EADV364W.js +0 -72
  379. package/chunks/workspace-registry-W6VMFYZU.js +0 -73
  380. package/chunks/workspace-service-F3KIN2UN.js +0 -84
  381. package/chunks/workspace-skills-status-YVICUR5Y.js +0 -71
  382. package/chunks/write-file-CVGF2OKV.js +0 -596
  383. package/web-shell/assets/channel-04R0vLbG.js +0 -1
  384. package/web-shell/assets/classDiagram-4FO5ZUOK-Bw9SOwAV.js +0 -1
  385. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-Bw9SOwAV.js +0 -1
  386. package/web-shell/assets/index-DgkKrjw3.js +0 -1187
  387. package/web-shell/assets/index-Rv6mOAN9.css +0 -5
  388. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DWBoO4UY.js +0 -1
@@ -12,6 +12,13 @@ init_esbuild_shims();
12
12
  var detectionComplete = false;
13
13
  var protocolSupported = false;
14
14
  var protocolEnabled = false;
15
+ var KITTY_KEYBOARD_PUSH = "\x1B[>1u";
16
+ var KITTY_KEYBOARD_POP = "\x1B[<u";
17
+ function enableProtocol() {
18
+ process.stdout.write(KITTY_KEYBOARD_PUSH);
19
+ protocolEnabled = true;
20
+ }
21
+ __name(enableProtocol, "enableProtocol");
15
22
  async function detectAndEnableKittyProtocol() {
16
23
  if (detectionComplete) {
17
24
  return protocolSupported;
@@ -62,9 +69,8 @@ async function detectAndEnableKittyProtocol() {
62
69
  process.stdin.setRawMode(false);
63
70
  }
64
71
  if (progressiveEnhancementReceived) {
65
- process.stdout.write("\x1B[>1u");
66
72
  protocolSupported = true;
67
- protocolEnabled = true;
73
+ enableProtocol();
68
74
  process.on("exit", disableProtocol);
69
75
  process.on("SIGTERM", disableProtocol);
70
76
  process.on("SIGINT", disableProtocol);
@@ -82,11 +88,17 @@ async function detectAndEnableKittyProtocol() {
82
88
  __name(detectAndEnableKittyProtocol, "detectAndEnableKittyProtocol");
83
89
  function disableProtocol() {
84
90
  if (protocolEnabled) {
85
- process.stdout.write("\x1B[<u");
91
+ process.stdout.write(KITTY_KEYBOARD_POP);
86
92
  protocolEnabled = false;
87
93
  }
88
94
  }
89
95
  __name(disableProtocol, "disableProtocol");
96
+ function pushKittyProtocolFlags() {
97
+ if (protocolSupported) {
98
+ enableProtocol();
99
+ }
100
+ }
101
+ __name(pushKittyProtocolFlags, "pushKittyProtocolFlags");
90
102
  function disableKittyProtocol() {
91
103
  disableProtocol();
92
104
  }
@@ -102,6 +114,7 @@ __name(isKittyProtocolSupported, "isKittyProtocolSupported");
102
114
 
103
115
  export {
104
116
  detectAndEnableKittyProtocol,
117
+ pushKittyProtocolFlags,
105
118
  disableKittyProtocol,
106
119
  isKittyProtocolEnabled,
107
120
  isKittyProtocolSupported
@@ -2,10 +2,11 @@
2
2
  "use strict";
3
3
  import {
4
4
  ChannelWorkerStartupError
5
- } from "./chunk-NBMIC7DR.js";
5
+ } from "./chunk-SX4PK3FC.js";
6
6
  import {
7
+ ChannelDeliveryError,
7
8
  ChannelWebhookEnqueueError
8
- } from "./chunk-Y2ENGUD6.js";
9
+ } from "./chunk-UPF7PTBI.js";
9
10
  import {
10
11
  init_esbuild_shims
11
12
  } from "./chunk-5O2XNYP6.js";
@@ -224,7 +225,14 @@ function createChannelWorkerGroup(opts) {
224
225
  }
225
226
  return firstError ? { rolledBack: false, rollbackError: firstError } : { rolledBack: true };
226
227
  }, "restoreEntries");
227
- const routeEntry = /* @__PURE__ */ __name((channelName) => {
228
+ const routeEntry = /* @__PURE__ */ __name((channelName, workspaceCwd) => {
229
+ if (workspaceCwd !== void 0) {
230
+ const entry = entries.get(workspaceCwd);
231
+ if (entry && (entry.selection.mode === "all" || entry.selection.names.includes(channelName))) {
232
+ return entry;
233
+ }
234
+ return void 0;
235
+ }
228
236
  for (const entry of entries.values()) {
229
237
  if (entry.selection.mode === "all" || entry.selection.names.includes(channelName)) {
230
238
  return entry;
@@ -298,13 +306,27 @@ function createChannelWorkerGroup(opts) {
298
306
  const targets = new Map(
299
307
  targetGroups.map((target) => [target.workspaceCwd, target])
300
308
  );
309
+ if (reconcileOptions?.forceWorkspaceCwd) {
310
+ for (const workspaceCwd of targets.keys()) {
311
+ if (workspaceCwd !== reconcileOptions.forceWorkspaceCwd) {
312
+ targets.delete(workspaceCwd);
313
+ }
314
+ }
315
+ }
301
316
  const unchanged = /* @__PURE__ */ new Map();
302
317
  const oldAffected = [];
303
318
  const newEntries = [];
304
319
  for (const [workspaceCwd, entry] of entries) {
305
320
  const target = targets.get(workspaceCwd);
306
321
  const healthy = entry.supervisor.snapshot().state === "running";
307
- if (target && !reconcileOptions?.force && healthy && selectionsEqual(entry.selection, target.selection)) {
322
+ const forceWorkspace = reconcileOptions?.forceWorkspaceCwd === workspaceCwd;
323
+ const preserveOtherWorkspace = reconcileOptions?.forceWorkspaceCwd !== void 0 && !forceWorkspace;
324
+ if (preserveOtherWorkspace) {
325
+ unchanged.set(workspaceCwd, entry);
326
+ targets.delete(workspaceCwd);
327
+ continue;
328
+ }
329
+ if (target && !reconcileOptions?.force && !forceWorkspace && healthy && selectionsEqual(entry.selection, target.selection)) {
308
330
  unchanged.set(workspaceCwd, entry);
309
331
  targets.delete(workspaceCwd);
310
332
  } else {
@@ -392,16 +414,17 @@ function createChannelWorkerGroup(opts) {
392
414
  committed.set(entry.workspaceCwd, entry);
393
415
  }
394
416
  entries = committed;
395
- const targetWorkspaceCwds = new Set(
396
- targetGroups.map((target) => target.workspaceCwd)
397
- );
417
+ const targetWorkspaceCwds = new Set(committed.keys());
398
418
  for (const workspaceCwd of groupsByWorkspace.keys()) {
399
419
  if (!targetWorkspaceCwds.has(workspaceCwd)) {
400
420
  groupsByWorkspace.delete(workspaceCwd);
401
421
  }
402
422
  }
403
- for (const target of targetGroups) {
404
- groupsByWorkspace.set(target.workspaceCwd, target);
423
+ for (const entry of committed.values()) {
424
+ groupsByWorkspace.set(entry.workspaceCwd, {
425
+ workspaceCwd: entry.workspaceCwd,
426
+ selection: entry.selection
427
+ });
405
428
  }
406
429
  return { changed: true, workers: entrySnapshots() };
407
430
  })().finally(() => {
@@ -518,6 +541,15 @@ function createChannelWorkerGroup(opts) {
518
541
  throw err;
519
542
  }
520
543
  },
544
+ async deliverChannelMessage(request, workspaceCwd) {
545
+ const entry = routeEntry(request.channelName, workspaceCwd);
546
+ const deliver = entry?.supervisor.deliverChannelMessage;
547
+ if (!entry || drainingWorkspaces.has(entry.workspaceCwd) || !deliver) {
548
+ const hint = workspaceCwd ? `No channel worker for the selected workspace owns channel "${request.channelName}".` : `No channel worker owns channel "${request.channelName}".`;
549
+ throw new ChannelDeliveryError("channel_worker_unavailable", hint);
550
+ }
551
+ return deliver.call(entry.supervisor, request);
552
+ },
521
553
  async enqueueWebhookTask(task) {
522
554
  const entry = routeEntry(task.channelName);
523
555
  if (!entry || drainingWorkspaces.has(entry.workspaceCwd)) {
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  theme
5
- } from "./chunk-GMGDLUC7.js";
5
+ } from "./chunk-6IL7KRLE.js";
6
6
  import {
7
7
  require_jsx_runtime
8
8
  } from "./chunk-SV5PQVQE.js";
@@ -10,17 +10,17 @@ import {
10
10
  Box_default,
11
11
  Text,
12
12
  use_is_screen_reader_enabled_default
13
- } from "./chunk-NEEB7UEN.js";
13
+ } from "./chunk-6GMVPFB2.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-D22SX43D.js";
20
+ } from "./chunk-DWNZ6PVQ.js";
21
21
  import {
22
22
  stringWidth
23
- } from "./chunk-H2XVO6NE.js";
23
+ } from "./chunk-2MIN6GRR.js";
24
24
  import {
25
25
  eastAsianWidth
26
26
  } from "./chunk-QHTIBUWB.js";
@@ -29,16 +29,16 @@ import {
29
29
  } from "./chunk-E5Z2AVNV.js";
30
30
  import {
31
31
  t
32
- } from "./chunk-TKLLK6XQ.js";
32
+ } from "./chunk-ZT4POVWC.js";
33
33
  import {
34
34
  getToolResponseDisplayText
35
- } from "./chunk-KX6UK4VJ.js";
35
+ } from "./chunk-LI4I37W4.js";
36
36
  import {
37
37
  stripAnsi
38
- } from "./chunk-T4TZQJ7W.js";
38
+ } from "./chunk-TWPJO254.js";
39
39
  import {
40
40
  ToolDisplayNames
41
- } from "./chunk-OP4MOGXF.js";
41
+ } from "./chunk-P5RRUHL7.js";
42
42
  import {
43
43
  init_esbuild_shims
44
44
  } from "./chunk-5O2XNYP6.js";
@@ -3023,7 +3023,7 @@ function convertToHistoryItems(conversation, config, historyGaps) {
3023
3023
  const payload = record.systemPayload;
3024
3024
  const text2 = payload?.displayText || extractTextFromParts(record.message?.parts);
3025
3025
  if (text2) {
3026
- items.push({ type: "notification", text: text2 });
3026
+ items.push({ type: "user" /* USER */, text: text2, sentToModel: false });
3027
3027
  }
3028
3028
  break;
3029
3029
  }
@@ -3217,7 +3217,8 @@ function applyCollapsePolicyAndSummary(rawItems, collapseOnResume, collapsePrevi
3217
3217
  if (collapsePreviewCount > 0) {
3218
3218
  let userTurnCount = 0;
3219
3219
  for (let i = rawItems.length - 1; i >= 0; i--) {
3220
- if (rawItems[i].type === "user" /* USER */) {
3220
+ const item = rawItems[i];
3221
+ if (item.type === "user" /* USER */ && item.sentToModel !== false) {
3221
3222
  userTurnCount++;
3222
3223
  if (userTurnCount === collapsePreviewCount) {
3223
3224
  boundary = i;
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  resolvePath
5
- } from "./chunk-NIJEXGV6.js";
5
+ } from "./chunk-ZXYUQXY5.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  createDebugLogger
5
- } from "./chunk-C27BYUX6.js";
5
+ } from "./chunk-OQB4EXO4.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  expandHomeDir
5
- } from "./chunk-C27BYUX6.js";
5
+ } from "./chunk-OQB4EXO4.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -2,11 +2,11 @@
2
2
  "use strict";
3
3
  import {
4
4
  atomicWriteFileSync
5
- } from "./chunk-BDBMYST4.js";
5
+ } from "./chunk-6X4GWOPW.js";
6
6
  import {
7
7
  Storage,
8
8
  createDebugLogger
9
- } from "./chunk-C27BYUX6.js";
9
+ } from "./chunk-OQB4EXO4.js";
10
10
  import {
11
11
  init_esbuild_shims
12
12
  } from "./chunk-5O2XNYP6.js";
@@ -2,21 +2,21 @@
2
2
  "use strict";
3
3
  import {
4
4
  appEvents
5
- } from "./chunk-4XNLIGVA.js";
5
+ } from "./chunk-JKCALGYN.js";
6
6
  import {
7
7
  assembleMcpServers,
8
8
  getPendingGatedMcpServers,
9
9
  getPromptableMcpServers
10
- } from "./chunk-7SXZC7ID.js";
10
+ } from "./chunk-2WTVWAKT.js";
11
11
  import {
12
12
  getMCPServerStatus
13
- } from "./chunk-ZFKNWQGQ.js";
13
+ } from "./chunk-IFG6TYJ2.js";
14
14
  import {
15
15
  require_fast_deep_equal
16
- } from "./chunk-OP4MOGXF.js";
16
+ } from "./chunk-P5RRUHL7.js";
17
17
  import {
18
18
  createDebugLogger
19
- } from "./chunk-C27BYUX6.js";
19
+ } from "./chunk-OQB4EXO4.js";
20
20
  import {
21
21
  init_esbuild_shims
22
22
  } from "./chunk-5O2XNYP6.js";
@@ -0,0 +1,289 @@
1
+ // Force strict mode and setup for ESM
2
+ "use strict";
3
+ import {
4
+ getRateLimitErrorDetails
5
+ } from "./chunk-6QHAUJUE.js";
6
+ import {
7
+ isInternalPromptId
8
+ } from "./chunk-IFG6TYJ2.js";
9
+ import {
10
+ createDebugLogger
11
+ } from "./chunk-OQB4EXO4.js";
12
+ import {
13
+ init_esbuild_shims
14
+ } from "./chunk-5O2XNYP6.js";
15
+ import {
16
+ __name
17
+ } from "./chunk-J2S4EL5Y.js";
18
+
19
+ // packages/core/src/utils/openaiLogger.ts
20
+ init_esbuild_shims();
21
+ import * as path from "node:path";
22
+ import { promises as fs } from "node:fs";
23
+
24
+ // node_modules/uuid/dist/esm-node/index.js
25
+ init_esbuild_shims();
26
+
27
+ // node_modules/uuid/dist/esm-node/rng.js
28
+ init_esbuild_shims();
29
+ import crypto from "crypto";
30
+ var rnds8Pool = new Uint8Array(256);
31
+ var poolPtr = rnds8Pool.length;
32
+ function rng() {
33
+ if (poolPtr > rnds8Pool.length - 16) {
34
+ crypto.randomFillSync(rnds8Pool);
35
+ poolPtr = 0;
36
+ }
37
+ return rnds8Pool.slice(poolPtr, poolPtr += 16);
38
+ }
39
+ __name(rng, "rng");
40
+
41
+ // node_modules/uuid/dist/esm-node/stringify.js
42
+ init_esbuild_shims();
43
+ var byteToHex = [];
44
+ for (let i = 0; i < 256; ++i) {
45
+ byteToHex.push((i + 256).toString(16).slice(1));
46
+ }
47
+ function unsafeStringify(arr, offset = 0) {
48
+ return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + "-" + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + "-" + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + "-" + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + "-" + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];
49
+ }
50
+ __name(unsafeStringify, "unsafeStringify");
51
+
52
+ // node_modules/uuid/dist/esm-node/v4.js
53
+ init_esbuild_shims();
54
+
55
+ // node_modules/uuid/dist/esm-node/native.js
56
+ init_esbuild_shims();
57
+ import crypto2 from "crypto";
58
+ var native_default = {
59
+ randomUUID: crypto2.randomUUID
60
+ };
61
+
62
+ // node_modules/uuid/dist/esm-node/v4.js
63
+ function v4(options, buf, offset) {
64
+ if (native_default.randomUUID && !buf && !options) {
65
+ return native_default.randomUUID();
66
+ }
67
+ options = options || {};
68
+ const rnds = options.random || (options.rng || rng)();
69
+ rnds[6] = rnds[6] & 15 | 64;
70
+ rnds[8] = rnds[8] & 63 | 128;
71
+ if (buf) {
72
+ offset = offset || 0;
73
+ for (let i = 0; i < 16; ++i) {
74
+ buf[offset + i] = rnds[i];
75
+ }
76
+ return buf;
77
+ }
78
+ return unsafeStringify(rnds);
79
+ }
80
+ __name(v4, "v4");
81
+ var v4_default = v4;
82
+
83
+ // packages/core/src/utils/openaiLogger.ts
84
+ import * as os from "os";
85
+ var debugLogger = createDebugLogger("OPENAI_LOGGER");
86
+ var MAIN_SESSION_PROMPT_ID_DELIMITER = "########";
87
+ var UUID_PATTERN = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
88
+ function resolveOpenAILogDir(customLogDir, cwd) {
89
+ const baseCwd = cwd || process.cwd();
90
+ if (!customLogDir) {
91
+ return path.join(baseCwd, "logs", "openai");
92
+ }
93
+ let resolvedPath = customLogDir;
94
+ if (customLogDir === "~" || customLogDir.startsWith("~/")) {
95
+ resolvedPath = path.join(os.homedir(), customLogDir.slice(1));
96
+ } else if (!path.isAbsolute(customLogDir)) {
97
+ resolvedPath = path.resolve(baseCwd, customLogDir);
98
+ }
99
+ return path.normalize(resolvedPath);
100
+ }
101
+ __name(resolveOpenAILogDir, "resolveOpenAILogDir");
102
+ function sanitizeDiagnosticSuffix(suffix) {
103
+ if (!suffix) return void 0;
104
+ const sanitized = suffix.replace(/[^a-zA-Z0-9._-]+/g, "-").replace(/^-+|-+$/g, "");
105
+ return sanitized || void 0;
106
+ }
107
+ __name(sanitizeDiagnosticSuffix, "sanitizeDiagnosticSuffix");
108
+ function extractSubagentSuffix(promptId) {
109
+ const parts = promptId.split("#");
110
+ if (parts.length !== 3) return void 0;
111
+ const [, subagentId, turn] = parts;
112
+ if (!subagentId || !turn || !/^\d+$/.test(turn)) {
113
+ return void 0;
114
+ }
115
+ return `subagent-${subagentId}`;
116
+ }
117
+ __name(extractSubagentSuffix, "extractSubagentSuffix");
118
+ function promptIdSuffixForFilename(promptId) {
119
+ if (!promptId) return void 0;
120
+ if (isInternalPromptId(promptId)) {
121
+ return sanitizeDiagnosticSuffix(promptId);
122
+ }
123
+ return sanitizeDiagnosticSuffix(extractSubagentSuffix(promptId));
124
+ }
125
+ __name(promptIdSuffixForFilename, "promptIdSuffixForFilename");
126
+ function sessionIdFromPromptId(promptId) {
127
+ if (!promptId) return void 0;
128
+ const mainSessionDelimiterIndex = promptId.indexOf(
129
+ MAIN_SESSION_PROMPT_ID_DELIMITER
130
+ );
131
+ if (mainSessionDelimiterIndex > 0) {
132
+ return promptId.slice(0, mainSessionDelimiterIndex);
133
+ }
134
+ if (UUID_PATTERN.test(promptId)) {
135
+ return promptId;
136
+ }
137
+ const parts = promptId.split("#");
138
+ if (parts.length >= 3 && parts[0]) {
139
+ return parts[0];
140
+ }
141
+ return void 0;
142
+ }
143
+ __name(sessionIdFromPromptId, "sessionIdFromPromptId");
144
+ function contextForPromptId(promptId) {
145
+ const trimmedPromptId = promptId?.trim();
146
+ const sessionId = sessionIdFromPromptId(trimmedPromptId);
147
+ if (!trimmedPromptId && !sessionId) {
148
+ return null;
149
+ }
150
+ return {
151
+ ...trimmedPromptId ? { promptId: trimmedPromptId } : {},
152
+ ...sessionId ? { sessionId } : {}
153
+ };
154
+ }
155
+ __name(contextForPromptId, "contextForPromptId");
156
+ function getString(value) {
157
+ return typeof value === "string" && value ? value : void 0;
158
+ }
159
+ __name(getString, "getString");
160
+ function getErrorRequestId(error) {
161
+ const source = error;
162
+ return getString(source.requestID) ?? getString(source.request_id) ?? getString(source.requestId) ?? getString(source.response_id) ?? getRateLimitErrorDetails(error).requestId;
163
+ }
164
+ __name(getErrorRequestId, "getErrorRequestId");
165
+ function serializeError(error) {
166
+ const requestId = getErrorRequestId(error);
167
+ return {
168
+ message: error.message,
169
+ stack: error.stack,
170
+ ...requestId ? { requestId } : {}
171
+ };
172
+ }
173
+ __name(serializeError, "serializeError");
174
+ var OpenAILogger = class {
175
+ static {
176
+ __name(this, "OpenAILogger");
177
+ }
178
+ logDir;
179
+ initialized = false;
180
+ /**
181
+ * Creates a new OpenAI logger
182
+ * @param customLogDir Optional custom log directory path (supports relative paths, absolute paths, and ~ expansion)
183
+ * @param cwd Optional working directory for resolving relative paths. Defaults to process.cwd().
184
+ * In ACP mode, process.cwd() may be '/' (filesystem root), so callers should
185
+ * pass the project working directory from Config.getWorkingDir().
186
+ */
187
+ constructor(customLogDir, cwd) {
188
+ this.logDir = resolveOpenAILogDir(customLogDir, cwd);
189
+ }
190
+ /**
191
+ * Initialize the logger by creating the log directory if it doesn't exist
192
+ */
193
+ async initialize() {
194
+ if (this.initialized) return;
195
+ try {
196
+ await fs.mkdir(this.logDir, { recursive: true });
197
+ this.initialized = true;
198
+ } catch (error) {
199
+ debugLogger.error("Failed to initialize OpenAI logger:", error);
200
+ throw new Error(`Failed to initialize OpenAI logger: ${error}`);
201
+ }
202
+ }
203
+ /**
204
+ * Logs an OpenAI API request and its response
205
+ * @param request The request sent to OpenAI
206
+ * @param response The response received from OpenAI
207
+ * @param error Optional error if the request failed
208
+ * @param promptId Optional prompt id; internal and subagent prompt ids are
209
+ * appended to the filename after timestamp and id.
210
+ * @returns The file path where the log was written
211
+ */
212
+ async logInteraction(request, response, error, promptId) {
213
+ if (!this.initialized) {
214
+ await this.initialize();
215
+ }
216
+ const timestamp = (/* @__PURE__ */ new Date()).toISOString().replace(/:/g, "-");
217
+ const id = v4_default().slice(0, 8);
218
+ const promptIdSuffix = promptIdSuffixForFilename(promptId);
219
+ const filename = promptIdSuffix ? `openai-${timestamp}-${id}-${promptIdSuffix}.json` : `openai-${timestamp}-${id}.json`;
220
+ const filePath = path.join(this.logDir, filename);
221
+ const logData = {
222
+ timestamp: (/* @__PURE__ */ new Date()).toISOString(),
223
+ request,
224
+ response: response || null,
225
+ error: error ? serializeError(error) : null,
226
+ context: contextForPromptId(promptId),
227
+ system: {
228
+ hostname: os.hostname(),
229
+ platform: os.platform(),
230
+ release: os.release(),
231
+ nodeVersion: process.version
232
+ }
233
+ };
234
+ try {
235
+ await fs.writeFile(filePath, JSON.stringify(logData, null, 2), "utf-8");
236
+ return filePath;
237
+ } catch (writeError) {
238
+ debugLogger.error("Failed to write OpenAI log file:", writeError);
239
+ throw new Error(`Failed to write OpenAI log file: ${writeError}`);
240
+ }
241
+ }
242
+ /**
243
+ * Get all logged interactions
244
+ * @param limit Optional limit on the number of log files to return (sorted by most recent first)
245
+ * @returns Array of log file paths
246
+ */
247
+ async getLogFiles(limit) {
248
+ if (!this.initialized) {
249
+ await this.initialize();
250
+ }
251
+ try {
252
+ const files = await fs.readdir(this.logDir);
253
+ const logFiles = files.filter((file) => file.startsWith("openai-") && file.endsWith(".json")).map((file) => path.join(this.logDir, file)).sort().reverse();
254
+ return limit === void 0 ? logFiles : logFiles.slice(0, limit);
255
+ } catch (error) {
256
+ if (error.code === "ENOENT") {
257
+ return [];
258
+ }
259
+ debugLogger.error("Failed to read OpenAI log directory:", error);
260
+ return [];
261
+ }
262
+ }
263
+ /**
264
+ * Read a specific log file
265
+ * @param filePath The path to the log file
266
+ * @returns The log file content
267
+ */
268
+ async readLogFile(filePath) {
269
+ try {
270
+ const content = await fs.readFile(filePath, "utf-8");
271
+ return JSON.parse(content);
272
+ } catch (error) {
273
+ debugLogger.error(`Failed to read log file ${filePath}:`, error);
274
+ throw new Error(`Failed to read log file: ${error}`);
275
+ }
276
+ }
277
+ };
278
+ var openaiLogger = new OpenAILogger();
279
+
280
+ export {
281
+ resolveOpenAILogDir,
282
+ OpenAILogger,
283
+ openaiLogger
284
+ };
285
+ /**
286
+ * @license
287
+ * Copyright 2025 Google LLC
288
+ * SPDX-License-Identifier: Apache-2.0
289
+ */