@qwen-code/qwen-code 0.19.12 → 0.20.0-nightly.20260721.cda0e0348

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 (280) hide show
  1. package/bundled/qc-helper/docs/configuration/settings.md +1 -1
  2. package/bundled/qc-helper/docs/features/commands.md +54 -0
  3. package/bundled/qc-helper/docs/integration-github-action.md +1 -1
  4. package/bundled/qc-helper/docs/qwen-serve.md +44 -6
  5. package/bundled/review/DESIGN.md +2 -2
  6. package/bundled/review/SKILL.md +13 -9
  7. package/chunks/{MaxSizedBox-QOXLJGAF.js → MaxSizedBox-EE76OHAP.js} +30 -27
  8. package/chunks/{StandaloneSessionPicker-FLV6CGYJ.js → StandaloneSessionPicker-WZH4PC3K.js} +50 -45
  9. package/chunks/{acpAgent-OB2CTF3P.js → acpAgent-2ATF4LMP.js} +437 -156
  10. package/chunks/{agent-CKSI7BTR.js → agent-KTOOFWMV.js} +22 -22
  11. package/chunks/{agent-headless-U36LIYTU.js → agent-headless-WVJCQ27D.js} +22 -22
  12. package/chunks/{anthropicContentGenerator-ZZRGFEES.js → anthropicContentGenerator-W4JLNYWQ.js} +6 -5
  13. package/chunks/{artifact-tool-PHO5XEGZ.js → artifact-tool-WBCAMD3O.js} +2 -2
  14. package/chunks/{askUserQuestion-CEPBT47X.js → askUserQuestion-6DZC4UV5.js} +2 -2
  15. package/chunks/{bridge-AIKTINJG.js → bridge-T4TLAZSJ.js} +25 -25
  16. package/chunks/build-SSCNEHZZ.js +62 -0
  17. package/chunks/{ca-2SL2BXTK.js → ca-ISKASTR5.js} +606 -200
  18. package/chunks/{channel-worker-group-NEUVTPB2.js → channel-worker-group-QZV2SP5U.js} +4 -4
  19. package/chunks/{channel-worker-manager-7CQVOVWV.js → channel-worker-manager-3GMAU45H.js} +4 -4
  20. package/chunks/{channel-worker-supervisor-3BU2KNCZ.js → channel-worker-supervisor-QCXSXCRY.js} +3 -3
  21. package/chunks/{chunk-6ETOSWAO.js → chunk-246TW4IX.js} +3 -3
  22. package/chunks/{chunk-2CCDMJM7.js → chunk-25Y6JSH2.js} +3 -3
  23. package/chunks/{chunk-XSEWNUMZ.js → chunk-2CWOJ2FA.js} +8 -8
  24. package/chunks/{chunk-UZC5VPOJ.js → chunk-2GFRA3MN.js} +3 -3
  25. package/chunks/chunk-2GOPPEHK.js +442 -0
  26. package/chunks/{chunk-MRE77ST5.js → chunk-2ITGJJE2.js} +69 -2216
  27. package/chunks/{chunk-BABX5XRO.js → chunk-2LI23QA6.js} +1 -1
  28. package/chunks/{chunk-EFAXBOQO.js → chunk-32F7BZSK.js} +7 -7
  29. package/chunks/chunk-43T5WDQ7.js +127 -0
  30. package/chunks/{chunk-DJ4VHAFJ.js → chunk-4CWPMWCD.js} +7 -3
  31. package/chunks/{chunk-GMUPIMHF.js → chunk-4RA7PWIY.js} +3 -3
  32. package/chunks/{chunk-6IITZE7O.js → chunk-5JX5EWR5.js} +7 -7
  33. package/chunks/{chunk-OBSLEYCD.js → chunk-5PZ6R37W.js} +29 -2
  34. package/chunks/{chunk-HTHUX2T5.js → chunk-5QWWOFGG.js} +0 -1
  35. package/chunks/{chunk-3DJY4IFO.js → chunk-5SCI6E3E.js} +1 -1
  36. package/chunks/{chunk-GSPWDTYY.js → chunk-5WG2K5RH.js} +53 -16
  37. package/chunks/{chunk-NPMVLWYL.js → chunk-5YVZ2XLV.js} +6 -6
  38. package/chunks/{chunk-TKASNYDS.js → chunk-6DHWO5ZF.js} +3 -3
  39. package/chunks/{chunk-4CHDYDG3.js → chunk-6EFTQYW7.js} +1 -1
  40. package/chunks/{chunk-RKUMFUFM.js → chunk-6MC5ASQK.js} +4 -4
  41. package/chunks/{chunk-HZ4M2UQD.js → chunk-6RVJRVQR.js} +1 -1
  42. package/chunks/{chunk-W6CQPLWM.js → chunk-6ZBPS62S.js} +1 -1
  43. package/chunks/chunk-7KGXAXF7.js +114 -0
  44. package/chunks/{chunk-PK7COE5O.js → chunk-ABIL4ZQU.js} +1 -1
  45. package/chunks/{chunk-OEHCAWUA.js → chunk-ACW3VNUE.js} +2 -2
  46. package/chunks/{chunk-APOFULHK.js → chunk-AWVS63WA.js} +7 -6
  47. package/chunks/{chunk-KGWA7XYL.js → chunk-AY3CSB6F.js} +6 -226
  48. package/chunks/{chunk-XAAEDML2.js → chunk-AYCDXHZB.js} +1 -1
  49. package/chunks/{chunk-42VIHAYT.js → chunk-B452RETY.js} +1 -1
  50. package/chunks/{chunk-VAJS2E2D.js → chunk-BDBMYST4.js} +1 -1
  51. package/chunks/{chunk-5N7M4XYN.js → chunk-BUKOHGBE.js} +5 -5
  52. package/chunks/{chunk-F2RR4HO2.js → chunk-BVLROR2T.js} +1 -1
  53. package/chunks/{chunk-WIYV7CSF.js → chunk-BWK3FX3K.js} +3 -3
  54. package/chunks/{chunk-UE5TZ55T.js → chunk-C27BYUX6.js} +29 -2
  55. package/chunks/{chunk-KRMARA3A.js → chunk-CG2HPAVD.js} +29 -13
  56. package/chunks/{chunk-UOA2IHRI.js → chunk-CPCVCKKF.js} +1 -1
  57. package/chunks/{chunk-HD6EGS5K.js → chunk-CUJX3F4X.js} +31 -6
  58. package/chunks/{chunk-4RPARQ5D.js → chunk-D2VIDMVM.js} +2 -2
  59. package/chunks/{chunk-PUKUUASO.js → chunk-DMRO4GU2.js} +1 -1
  60. package/chunks/{chunk-64GC5EMF.js → chunk-DZZIOIVF.js} +1 -1
  61. package/chunks/{chunk-FUSMC3SZ.js → chunk-E5QFCC4X.js} +13 -8
  62. package/chunks/{chunk-LKR7QQ63.js → chunk-EAUYY7SS.js} +3 -3
  63. package/chunks/{chunk-NE6HHLL3.js → chunk-EDMGFJ3E.js} +2 -2
  64. package/chunks/{chunk-J2MKYJKZ.js → chunk-EIAK6Q2B.js} +2 -2
  65. package/chunks/{chunk-WEPXQKGP.js → chunk-EZVDJFZ7.js} +1 -1
  66. package/chunks/{chunk-NALRQ3SG.js → chunk-FCUUJKZF.js} +394 -128
  67. package/chunks/{chunk-4XCVGEEX.js → chunk-FSL5W5TI.js} +3 -3
  68. package/chunks/{chunk-CHPQFLW6.js → chunk-FYA3Y5JR.js} +5 -5
  69. package/chunks/{chunk-V4PCIS25.js → chunk-FZVSFBNW.js} +69 -7
  70. package/chunks/{chunk-4MPYGENG.js → chunk-G45NOBV7.js} +6 -6
  71. package/chunks/{chunk-OSSDHJDU.js → chunk-G45X5TRN.js} +1 -1
  72. package/chunks/{chunk-3B6PSWHE.js → chunk-GH7OEOYU.js} +4 -4
  73. package/chunks/{chunk-KANTXY7B.js → chunk-GKY2OJ7R.js} +2 -2
  74. package/chunks/chunk-GMGDLUC7.js +37 -0
  75. package/chunks/{chunk-2476XGOU.js → chunk-GPILFVPY.js} +1 -1
  76. package/chunks/{chunk-EISVEV45.js → chunk-H24SOJIQ.js} +2 -2
  77. package/chunks/{chunk-J6NT5YTN.js → chunk-H2XVO6NE.js} +1 -289
  78. package/chunks/{chunk-QIFTJDBY.js → chunk-IM2A6YO3.js} +1 -1
  79. package/chunks/{chunk-R3EDIMYZ.js → chunk-IYZENXFW.js} +1 -1
  80. package/chunks/{chunk-LPHGXXZX.js → chunk-JD3MKVKL.js} +1 -1
  81. package/chunks/{chunk-NUHSLBJZ.js → chunk-JNWZQ27S.js} +15 -9
  82. package/chunks/{chunk-ETN2G32U.js → chunk-JPRLCXAO.js} +4 -4
  83. package/chunks/{chunk-WHQNBBWW.js → chunk-JQMBPGOU.js} +2 -2
  84. package/chunks/{chunk-5QSVANRT.js → chunk-JR6UJ24K.js} +2 -2
  85. package/chunks/{chunk-VLHQMOZK.js → chunk-JRW46GQX.js} +3 -3
  86. package/chunks/{chunk-DUR7BZYK.js → chunk-KRI4VCHX.js} +53 -28
  87. package/chunks/{chunk-PR5XQ73G.js → chunk-KTNIZG2C.js} +2 -2
  88. package/chunks/{chunk-QSG4ZFG4.js → chunk-KTUQMDEP.js} +1 -1
  89. package/chunks/{chunk-HVGJWOR6.js → chunk-L4YSPHR4.js} +2 -2
  90. package/chunks/{chunk-BEZPRKD3.js → chunk-LC5CAVMS.js} +160 -2
  91. package/chunks/{chunk-67Q33DQY.js → chunk-LLDGOZMJ.js} +4 -4
  92. package/chunks/{chunk-UCTCDLDS.js → chunk-LWQ4IAOJ.js} +136 -4
  93. package/chunks/{chunk-GEHSF7MS.js → chunk-NEEB7UEN.js} +2545 -1974
  94. package/chunks/{chunk-GCY7QTCE.js → chunk-NO6XTCYT.js} +1822 -424
  95. package/chunks/{chunk-JCJPZMJV.js → chunk-OOCI5VVU.js} +1 -1
  96. package/chunks/{chunk-XSPFQQRE.js → chunk-OONJNQ42.js} +3 -3
  97. package/chunks/{chunk-ANRANWVE.js → chunk-OP4MOGXF.js} +1 -1
  98. package/chunks/{chunk-GW7BONBU.js → chunk-OV2KB55J.js} +5 -5
  99. package/chunks/{chunk-CPU6I5YV.js → chunk-P64HXIC5.js} +115 -32
  100. package/chunks/{chunk-SGPFJMRP.js → chunk-PBATSWUQ.js} +1 -1
  101. package/chunks/{chunk-GXFYV7MP.js → chunk-PFKNXN67.js} +1106 -592
  102. package/chunks/{chunk-KNGZ5EYL.js → chunk-PYNCSQSI.js} +198 -120
  103. package/chunks/{chunk-I7RRHHYG.js → chunk-QKTHJXCS.js} +1 -1
  104. package/chunks/chunk-QKYTTBYW.js +624 -0
  105. package/chunks/{chunk-76BFY7AF.js → chunk-QTERJVPZ.js} +1 -6
  106. package/chunks/{chunk-W4UN42YP.js → chunk-R3VZNHRX.js} +85 -21
  107. package/chunks/chunk-R5N7NF5D.js +1187 -0
  108. package/chunks/{chunk-ZSDFNE6Y.js → chunk-RF34V75B.js} +3 -3
  109. package/chunks/{chunk-HCCR43AY.js → chunk-RFIAR4YL.js} +1 -1
  110. package/chunks/chunk-RS7MT2QG.js +305 -0
  111. package/chunks/{chunk-BKNPMEN6.js → chunk-RVLZCXEE.js} +162 -17
  112. package/chunks/chunk-SV5PQVQE.js +71 -0
  113. package/chunks/{chunk-3ESL7JXA.js → chunk-U4VGYZN7.js} +3 -3
  114. package/chunks/{chunk-4CA4WUMS.js → chunk-UEY4AYUL.js} +2 -2
  115. package/chunks/{chunk-ZGT623SG.js → chunk-USTF7LPI.js} +12 -12
  116. package/chunks/chunk-V7RNNPGC.js +44 -0
  117. package/chunks/{chunk-VEFR4XJQ.js → chunk-W3BKN3LO.js} +1 -1
  118. package/chunks/{chunk-4SJJT466.js → chunk-WQQDJE2P.js} +94 -177
  119. package/chunks/{chunk-KMJOMWHE.js → chunk-WRRF6TEQ.js} +1 -1
  120. package/chunks/{chunk-GLH2NTPB.js → chunk-XCHUDLER.js} +1 -1
  121. package/chunks/{chunk-7SX6WZNO.js → chunk-XVVH63JG.js} +3 -3
  122. package/chunks/{chunk-N47VAEAJ.js → chunk-XZOBDSDG.js} +2379 -1291
  123. package/chunks/chunk-YGIUIIIF.js +125 -0
  124. package/chunks/{chunk-335ECZTA.js → chunk-ZEOZL37W.js} +1 -1
  125. package/chunks/{computer-use-4PUGCUQK.js → computer-use-M6MGRJF2.js} +22 -22
  126. package/chunks/{config-utils-6PJUXHLI.js → config-utils-MOGE4EVB.js} +3 -3
  127. package/chunks/{contextCommand-C57KTWFV.js → contextCommand-HTRJJYNE.js} +25 -26
  128. package/chunks/{create-sub-session-5Q42XR6I.js → create-sub-session-MB35IHCR.js} +22 -22
  129. package/chunks/{create-sub-session-DIJOV6HV.js → create-sub-session-P26FE5GG.js} +2 -2
  130. package/chunks/{cron-create-X462ERYA.js → cron-create-JWFHBDRQ.js} +4 -4
  131. package/chunks/{cron-delete-SL5UJUM3.js → cron-delete-GDX4E26G.js} +4 -4
  132. package/chunks/{cron-list-3MD6SVXI.js → cron-list-USMAIWPT.js} +4 -4
  133. package/chunks/{daemon-ZW6LHOXT.js → daemon-KLPTQIE4.js} +287 -143
  134. package/chunks/{daemon-status-provider-YPV3UXHT.js → daemon-status-provider-67EKK6S3.js} +29 -29
  135. package/chunks/{dist-NUXRQHC5.js → dist-OAV7LJGJ.js} +1 -1
  136. package/chunks/{dist-XLE6ODMB.js → dist-OMW6WDEO.js} +1 -1
  137. package/chunks/{dist-J2H4KTLB.js → dist-PJLG2XYX.js} +1 -1
  138. package/chunks/{dist-IEQSDXS7.js → dist-UIFWIFRO.js} +2 -2
  139. package/chunks/{dist-IGZMVS5R.js → dist-VGJTZL4E.js} +33 -22
  140. package/chunks/{dist-3DQNQJ6H.js → dist-XBJVSWS2.js} +1 -1
  141. package/chunks/{earlyInputCapture-5VDWSYAM.js → earlyInputCapture-7QJX25AC.js} +23 -23
  142. package/chunks/{edit-GORZTX2U.js → edit-BTPQWGAA.js} +23 -23
  143. package/chunks/{enter-worktree-LJB2AW4L.js → enter-worktree-N3SEYKOO.js} +22 -22
  144. package/chunks/{enterPlanMode-LIIPP37T.js → enterPlanMode-TN2JV5MY.js} +28 -23
  145. package/chunks/{environment-HQ2UHJ35.js → environment-HP6RK262.js} +24 -24
  146. package/chunks/{errors-6JD5VMVQ.js → errors-VHGRDDOQ.js} +24 -24
  147. package/chunks/{exit-worktree-IEP2WHOV.js → exit-worktree-FI3SQY3U.js} +22 -22
  148. package/chunks/{exitPlanMode-U5Z6XBLO.js → exitPlanMode-NZWRVIIY.js} +22 -22
  149. package/chunks/{fast-path-HFKNMP23.js → fast-path-EGP7AXNR.js} +3 -2
  150. package/chunks/{gemini-C2SCJH3N.js → gemini-AN5YMD5O.js} +70 -68
  151. package/chunks/{geminiContentGenerator-ADZTXEKV.js → geminiContentGenerator-ABTMU4FE.js} +4 -4
  152. package/chunks/{glob-GOAPGD6G.js → glob-5YABOPJB.js} +22 -22
  153. package/chunks/{grep-HZLSTX7D.js → grep-U67FKUJT.js} +22 -22
  154. package/chunks/{handleAutoUpdate-UF74WGFE.js → handleAutoUpdate-OOKBP5VD.js} +27 -28
  155. package/chunks/{i18n-FMXIYUOC.js → i18n-GMQV324P.js} +23 -23
  156. package/chunks/{initializer-ERDBM3DU.js → initializer-NWALZGQ5.js} +28 -28
  157. package/chunks/{installationInfo-LROMXYLX.js → installationInfo-Y3M433E7.js} +25 -23
  158. package/chunks/{keychain-token-storage-K23CFKGN.js → keychain-token-storage-DWRJMNH3.js} +2 -2
  159. package/chunks/{list-6JPJROU5.js → list-CQDDWHTS.js} +30 -30
  160. package/chunks/{loadedSettingsAdapter-QCWYUBBF.js → loadedSettingsAdapter-I5KG37EI.js} +27 -27
  161. package/chunks/{loop-wakeup-6H7OENTB.js → loop-wakeup-5GLTUBHA.js} +5 -5
  162. package/chunks/{ls-APTSOOS5.js → ls-FHBY3Y7I.js} +4 -4
  163. package/chunks/{lsp-HPACPJAN.js → lsp-B6VMEW6Y.js} +2 -2
  164. package/chunks/{mcp-3P3KWYWO.js → mcp-24HHCBSP.js} +27 -27
  165. package/chunks/{monitor-LMYKCF6R.js → monitor-Z7NZNNRC.js} +22 -22
  166. package/chunks/nonInteractiveCli-GVF2XDJT.js +126 -0
  167. package/chunks/{notebook-edit-IBEOVZ6A.js → notebook-edit-GFOYAQAZ.js} +23 -23
  168. package/chunks/{openaiContentGenerator-42PZKET5.js → openaiContentGenerator-XAAYV6WR.js} +11 -11
  169. package/chunks/{pidfile-VTBDIGOH.js → pidfile-ILI37KRQ.js} +23 -23
  170. package/chunks/{processUtils-L7ZKOGDG.js → processUtils-LIPJMLVZ.js} +2 -2
  171. package/chunks/{qwenContentGenerator-VR2CNFGI.js → qwenContentGenerator-DLJ3KKGZ.js} +24 -24
  172. package/chunks/{qwenOAuth2-6LS2T3Q6.js → qwenOAuth2-J47FU5PW.js} +11 -11
  173. package/chunks/react-SG7JAQSZ.js +8 -0
  174. package/chunks/{read-file-VSKOE22I.js → read-file-LCQ2KNNP.js} +8 -8
  175. package/chunks/{read-mcp-resource-C6NT52T6.js → read-mcp-resource-AKCL7I43.js} +2 -2
  176. package/chunks/{record-artifact-ENCU7QCL.js → record-artifact-PEUB7727.js} +2 -2
  177. package/chunks/resumeHistoryUtils-PSCSAKA6.js +78 -0
  178. package/chunks/{ripGrep-5V5FLW2A.js → ripGrep-Y2XW4EFC.js} +22 -22
  179. package/chunks/{run-qwen-serve-LSOPP4R2.js → run-qwen-serve-DQ5ZIR36.js} +1459 -148
  180. package/chunks/{runtime-LT7R4CS5.js → runtime-6MQFF2A6.js} +33 -31
  181. package/chunks/{scheduler-YOWQ7KZP.js → scheduler-K4S7NY3G.js} +22 -22
  182. package/chunks/{send-message-5GZ4FX2V.js → send-message-3RHE7HSM.js} +3 -3
  183. package/chunks/{serve-VWLBXKGK.js → serve-JFAAPC5J.js} +27 -27
  184. package/chunks/{server-3RW3FYOH.js → server-QB6CHRZN.js} +866 -271
  185. package/chunks/{session-ZONXFOBQ.js → session-FKPVXAAB.js} +79 -163
  186. package/chunks/{settings-JC3VC53L.js → settings-CADELKSU.js} +26 -26
  187. package/chunks/{shell-2NGEMAVM.js → shell-EON6WVVH.js} +22 -22
  188. package/chunks/{skill-3U2T6H3E.js → skill-FKSYXJ5U.js} +10 -10
  189. package/chunks/{spawnChannel-QEAUPARQ.js → spawnChannel-VM5IHLJO.js} +24 -24
  190. package/chunks/{src-75ZPXO7B.js → src-Q4XB6SVD.js} +66 -22
  191. package/chunks/{standalone-update-UUJWJWYY.js → standalone-update-KGZHPBMA.js} +24 -24
  192. package/chunks/{startInteractiveUI-V7XISPQ6.js → startInteractiveUI-EYDJIIIZ.js} +5484 -2045
  193. package/chunks/{syntheticOutput-ULOVVLY4.js → syntheticOutput-FG5PQKIR.js} +3 -3
  194. package/chunks/{task-create-DUE2PMNI.js → task-create-HX32YXO7.js} +7 -7
  195. package/chunks/{task-list-WVPNX7BZ.js → task-list-QWSY4ZIU.js} +5 -5
  196. package/chunks/{task-stop-CPEQWOT6.js → task-stop-GWC6UWAL.js} +2 -2
  197. package/chunks/{task-update-HY2LNFFB.js → task-update-NCTAB73Q.js} +7 -7
  198. package/chunks/{team-create-R6AXDYPG.js → team-create-CYP3YKYT.js} +22 -22
  199. package/chunks/{team-delete-JJV6IUOA.js → team-delete-KK37HTOG.js} +5 -5
  200. package/chunks/{team-plan-approval-O2ZPPT64.js → team-plan-approval-5LXIFKNV.js} +22 -22
  201. package/chunks/{theme-manager-YIX2IC2D.js → theme-manager-QOUMDWMP.js} +23 -23
  202. package/chunks/{todoWrite-JHHIDOIV.js → todoWrite-ERCAMLFS.js} +4 -4
  203. package/chunks/{tool-search-5IE2VO7X.js → tool-search-Q27QHQU3.js} +9 -9
  204. package/chunks/{total-session-admission-K6APQYEF.js → total-session-admission-HWVCZ2WR.js} +25 -25
  205. package/chunks/{trustedFolders-GPSSPVBF.js → trustedFolders-C6664IQC.js} +23 -23
  206. package/chunks/{update-relaunch-4BVAPX6Y.js → update-relaunch-QC3E4FZW.js} +9 -9
  207. package/chunks/{updateCheck-AHTHWLAM.js → updateCheck-MVUKJMBX.js} +33 -26
  208. package/chunks/useAutoAcceptIndicator-J234IFIS.js +80 -0
  209. package/chunks/{validateNonInterActiveAuth-UKAPCWDM.js → validateNonInterActiveAuth-YPPEKX4N.js} +61 -63
  210. package/chunks/{version-EXGWKKQE.js → version-5IXFQ4PT.js} +1 -1
  211. package/chunks/{web-fetch-ZDNE6FF2.js → web-fetch-L62NQVKN.js} +10 -10
  212. package/chunks/{workflow-G7U6OQWS.js → workflow-6MHBBFQU.js} +23 -23
  213. package/chunks/{workspace-providers-status-W6CEA6YM.js → workspace-providers-status-ZTW2B5QU.js} +30 -30
  214. package/chunks/{workspace-registration-store-OGBMWCLC.js → workspace-registration-store-P6QHCSMU.js} +7 -1
  215. package/chunks/{workspace-registry-ZUWQM44P.js → workspace-registry-R54M5O3W.js} +25 -25
  216. package/chunks/{workspace-service-UXX5P7GU.js → workspace-service-WYLRGM4A.js} +32 -32
  217. package/chunks/{workspace-skills-status-635B5R7N.js → workspace-skills-status-NN5QFU3A.js} +28 -28
  218. package/chunks/{write-file-DR3HN7IH.js → write-file-EAT3CHUK.js} +23 -23
  219. package/cli.js +11 -11
  220. package/locales/ca.js +763 -201
  221. package/package.json +3 -3
  222. package/web-shell/assets/{arc-_dVIKMdB.js → arc-B0iTWRo2.js} +1 -1
  223. package/web-shell/assets/{architectureDiagram-3BPJPVTR-MuN3nKpL.js → architectureDiagram-3BPJPVTR-DSQP4-9D.js} +1 -1
  224. package/web-shell/assets/{blockDiagram-GPEHLZMM-BtmvJjzx.js → blockDiagram-GPEHLZMM-BNPVXVT3.js} +1 -1
  225. package/web-shell/assets/{c4Diagram-AAUBKEIU-Dvi58_BU.js → c4Diagram-AAUBKEIU-DEHfJFiD.js} +1 -1
  226. package/web-shell/assets/channel-tVz-qNSq.js +1 -0
  227. package/web-shell/assets/{chunk-2J33WTMH-YqxOVhS1.js → chunk-2J33WTMH-VZ0uL1p9.js} +1 -1
  228. package/web-shell/assets/{chunk-4BX2VUAB-DoBgbC9z.js → chunk-4BX2VUAB-D5TKmvwG.js} +1 -1
  229. package/web-shell/assets/{chunk-55IACEB6-3NEQrBAr.js → chunk-55IACEB6-BDW1Lcq-.js} +1 -1
  230. package/web-shell/assets/{chunk-727SXJPM-DrCZQxp0.js → chunk-727SXJPM-Cj4h85iM.js} +1 -1
  231. package/web-shell/assets/{chunk-AQP2D5EJ-m_g3zjgv.js → chunk-AQP2D5EJ-5LeqiOhZ.js} +1 -1
  232. package/web-shell/assets/{chunk-FMBD7UC4-D1_crABJ.js → chunk-FMBD7UC4-BaTgsco7.js} +1 -1
  233. package/web-shell/assets/{chunk-ND2GUHAM-BdhgVtBx.js → chunk-ND2GUHAM-t3uGlIUk.js} +1 -1
  234. package/web-shell/assets/{chunk-QZHKN3VN-BlmThhm-.js → chunk-QZHKN3VN-rOnNXL2Q.js} +1 -1
  235. package/web-shell/assets/classDiagram-4FO5ZUOK-CWuaBxYV.js +1 -0
  236. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CWuaBxYV.js +1 -0
  237. package/web-shell/assets/{cose-bilkent-S5V4N54A-Cbjm_00Z.js → cose-bilkent-S5V4N54A-CcqXykgA.js} +1 -1
  238. package/web-shell/assets/{dagre-BM42HDAG-C39QNVgC.js → dagre-BM42HDAG-Dkjrchoy.js} +1 -1
  239. package/web-shell/assets/{diagram-2AECGRRQ-DNXSAixC.js → diagram-2AECGRRQ-B6lcra9M.js} +1 -1
  240. package/web-shell/assets/{diagram-5GNKFQAL-BCbGUPEA.js → diagram-5GNKFQAL-bAIzq3PT.js} +1 -1
  241. package/web-shell/assets/{diagram-KO2AKTUF-1eujKSDC.js → diagram-KO2AKTUF-G9MAZDNW.js} +1 -1
  242. package/web-shell/assets/{diagram-LMA3HP47-DUMKXgql.js → diagram-LMA3HP47-DVLF1uWZ.js} +1 -1
  243. package/web-shell/assets/{diagram-OG6HWLK6-BFktU3_u.js → diagram-OG6HWLK6-Cf7y20Tc.js} +1 -1
  244. package/web-shell/assets/{erDiagram-TEJ5UH35-BvJC7DLk.js → erDiagram-TEJ5UH35-C7ETZB3o.js} +1 -1
  245. package/web-shell/assets/{flowDiagram-I6XJVG4X-Cgu3PlOt.js → flowDiagram-I6XJVG4X-Cl2xgL6J.js} +1 -1
  246. package/web-shell/assets/{ganttDiagram-6RSMTGT7-DLNXN5Xh.js → ganttDiagram-6RSMTGT7-BgjbMs3q.js} +1 -1
  247. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-BQFRDv6R.js → gitGraphDiagram-PVQCEYII-JVX34Omm.js} +1 -1
  248. package/web-shell/assets/index-48bIcdqF.js +1197 -0
  249. package/web-shell/assets/{index-CdC3pjP3.js → index-BG7Zc4f_.js} +1 -1
  250. package/web-shell/assets/index-BI-JAO07.css +5 -0
  251. package/web-shell/assets/{infoDiagram-5YYISTIA-DT2mOSvp.js → infoDiagram-5YYISTIA-3NYyMeZU.js} +1 -1
  252. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-9fy_K4bd.js → ishikawaDiagram-YF4QCWOH-C03VCu-U.js} +1 -1
  253. package/web-shell/assets/{journeyDiagram-JHISSGLW-CoGSEuhE.js → journeyDiagram-JHISSGLW-C9PuBRZW.js} +1 -1
  254. package/web-shell/assets/{kanban-definition-UN3LZRKU-BP9hHYIj.js → kanban-definition-UN3LZRKU-C3LvioWR.js} +1 -1
  255. package/web-shell/assets/{linear-uIroDsmp.js → linear-Du6Yw8N_.js} +1 -1
  256. package/web-shell/assets/{mermaid.core-BUwoStsA.js → mermaid.core-BXY5D2-X.js} +5 -5
  257. package/web-shell/assets/{mindmap-definition-RKZ34NQL-DZB-FWim.js → mindmap-definition-RKZ34NQL-2UrHLaDp.js} +1 -1
  258. package/web-shell/assets/{pieDiagram-4H26LBE5-YPptloKl.js → pieDiagram-4H26LBE5-dC03ml45.js} +1 -1
  259. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-dgk3DSzm.js → quadrantDiagram-W4KKPZXB-CD6jARrp.js} +1 -1
  260. package/web-shell/assets/{requirementDiagram-4Y6WPE33-BH2En2i9.js → requirementDiagram-4Y6WPE33-BrK8aXfv.js} +1 -1
  261. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-BB98feeI.js → sankeyDiagram-5OEKKPKP-B5Vitki_.js} +1 -1
  262. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-CunAIGh8.js → sequenceDiagram-3UESZ5HK-CBy2t6Bo.js} +1 -1
  263. package/web-shell/assets/{stateDiagram-AJRCARHV-DTJs_-I2.js → stateDiagram-AJRCARHV-Enrka6T2.js} +1 -1
  264. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DUtYfXpW.js +1 -0
  265. package/web-shell/assets/{timeline-definition-PNZ67QCA-Cd4AN7O0.js → timeline-definition-PNZ67QCA-CwFq78ss.js} +1 -1
  266. package/web-shell/assets/{vennDiagram-CIIHVFJN-xIG-rUU9.js → vennDiagram-CIIHVFJN-BkOidM0g.js} +1 -1
  267. package/web-shell/assets/{wardley-L42UT6IY-D1UyjIcG.js → wardley-L42UT6IY-D_j13hQW.js} +1 -1
  268. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-BVM0Mb99.js → wardleyDiagram-YWT4CUSO-7EveB1w6.js} +1 -1
  269. package/web-shell/assets/{xychartDiagram-2RQKCTM6-BX31JDSz.js → xychartDiagram-2RQKCTM6-DRkBhMXr.js} +1 -1
  270. package/web-shell/index.html +2 -2
  271. package/chunks/chunk-EDFD7VOX.js +0 -368
  272. package/chunks/chunk-GFYFLDEG.js +0 -709
  273. package/chunks/chunk-LUJQUNKY.js +0 -3288
  274. package/chunks/nonInteractiveCli-YURFHZV5.js +0 -129
  275. package/web-shell/assets/channel-Bi5TehaT.js +0 -1
  276. package/web-shell/assets/classDiagram-4FO5ZUOK-BKhhRdd1.js +0 -1
  277. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-BKhhRdd1.js +0 -1
  278. package/web-shell/assets/index-C_ouplMQ.js +0 -1187
  279. package/web-shell/assets/index-XGDFJE-X.css +0 -5
  280. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DrfFMYta.js +0 -1
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  createDebugLogger
5
- } from "./chunk-UE5TZ55T.js";
5
+ } from "./chunk-C27BYUX6.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
  getTasksDir
5
- } from "./chunk-4RPARQ5D.js";
5
+ } from "./chunk-D2VIDMVM.js";
6
6
  import {
7
7
  require_proper_lockfile
8
8
  } from "./chunk-E2UVIFI2.js";
@@ -11,11 +11,11 @@ import {
11
11
  } from "./chunk-VGC4I5JJ.js";
12
12
  import {
13
13
  atomicWriteJSON
14
- } from "./chunk-VAJS2E2D.js";
14
+ } from "./chunk-BDBMYST4.js";
15
15
  import {
16
16
  createDebugLogger,
17
17
  isNodeError
18
- } from "./chunk-UE5TZ55T.js";
18
+ } from "./chunk-C27BYUX6.js";
19
19
  import {
20
20
  init_esbuild_shims
21
21
  } from "./chunk-5O2XNYP6.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  createDebugLogger
5
- } from "./chunk-UE5TZ55T.js";
5
+ } from "./chunk-C27BYUX6.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";
@@ -2,21 +2,21 @@
2
2
  "use strict";
3
3
  import {
4
4
  appEvents
5
- } from "./chunk-NALRQ3SG.js";
5
+ } from "./chunk-FCUUJKZF.js";
6
6
  import {
7
7
  assembleMcpServers,
8
8
  getPendingGatedMcpServers,
9
9
  getPromptableMcpServers
10
- } from "./chunk-4MPYGENG.js";
10
+ } from "./chunk-G45NOBV7.js";
11
11
  import {
12
12
  getMCPServerStatus
13
- } from "./chunk-CPU6I5YV.js";
13
+ } from "./chunk-P64HXIC5.js";
14
14
  import {
15
15
  require_fast_deep_equal
16
- } from "./chunk-ANRANWVE.js";
16
+ } from "./chunk-OP4MOGXF.js";
17
17
  import {
18
18
  createDebugLogger
19
- } from "./chunk-UE5TZ55T.js";
19
+ } from "./chunk-C27BYUX6.js";
20
20
  import {
21
21
  init_esbuild_shims
22
22
  } from "./chunk-5O2XNYP6.js";
@@ -19,32 +19,37 @@ import {
19
19
  } from "./chunk-VGC4I5JJ.js";
20
20
  import {
21
21
  isAnyAutoMemPath
22
- } from "./chunk-LPHGXXZX.js";
22
+ } from "./chunk-JD3MKVKL.js";
23
23
  import {
24
24
  InstallationManager
25
- } from "./chunk-4CA4WUMS.js";
25
+ } from "./chunk-UEY4AYUL.js";
26
26
  import {
27
27
  atomicWriteFile,
28
28
  atomicWriteFileSync
29
- } from "./chunk-VAJS2E2D.js";
29
+ } from "./chunk-BDBMYST4.js";
30
30
  import {
31
31
  STRUCTURED_OUTPUT_REDACTED_ARGS
32
- } from "./chunk-WEPXQKGP.js";
32
+ } from "./chunk-EZVDJFZ7.js";
33
33
  import {
34
34
  BaseDeclarativeTool,
35
35
  BaseToolInvocation,
36
36
  SchemaValidator,
37
37
  ToolDisplayNames,
38
38
  ToolNames
39
- } from "./chunk-ANRANWVE.js";
39
+ } from "./chunk-OP4MOGXF.js";
40
40
  import {
41
+ TOKEN_ESTIMATE_UNITS_PER_TOKEN,
41
42
  convertSchema,
43
+ estimateTextTokenUnits,
42
44
  estimateTextTokens,
45
+ generateLegacyMcpToolName,
43
46
  normalize,
47
+ normalizeMcpToolName,
48
+ normalizeToolNameForProvider,
44
49
  runtimeDiagnostics,
45
50
  safeJsonParse,
46
51
  setToolCallPreparations
47
- } from "./chunk-V4PCIS25.js";
52
+ } from "./chunk-FZVSFBNW.js";
48
53
  import {
49
54
  require_lib
50
55
  } from "./chunk-A4UCTEB5.js";
@@ -70,7 +75,7 @@ import {
70
75
  setShellTracePropagation,
71
76
  shortenPath,
72
77
  unescapePath
73
- } from "./chunk-UE5TZ55T.js";
78
+ } from "./chunk-C27BYUX6.js";
74
79
  import {
75
80
  require_dist
76
81
  } from "./chunk-75DOP5OR.js";
@@ -61453,6 +61458,9 @@ var MEMORY_DREAM_COUNT = `${SERVICE_NAME}.memory.dream.count`;
61453
61458
  var MEMORY_DREAM_DURATION = `${SERVICE_NAME}.memory.dream.duration`;
61454
61459
  var MEMORY_RECALL_COUNT = `${SERVICE_NAME}.memory.recall.count`;
61455
61460
  var MEMORY_RECALL_DURATION = `${SERVICE_NAME}.memory.recall.duration`;
61461
+ var CHANNEL_MEMORY_RECALL_COUNT = `${SERVICE_NAME}.channel.memory.recall.count`;
61462
+ var CHANNEL_MEMORY_RECALL_DURATION = `${SERVICE_NAME}.channel.memory.recall.duration`;
61463
+ var CHANNEL_MEMORY_RECALL_SELECTED_COUNT = `${SERVICE_NAME}.channel.memory.recall.selected_count`;
61456
61464
  var baseMetricDefinition = {
61457
61465
  // session.id on metrics is opt-in: each session is a new value, so
61458
61466
  // attaching it by default would create unbounded time-series fan-out on
@@ -61706,6 +61714,9 @@ var memoryDreamCounter;
61706
61714
  var memoryDreamDurationHistogram;
61707
61715
  var memoryRecallCounter;
61708
61716
  var memoryRecallDurationHistogram;
61717
+ var channelMemoryRecallCounter;
61718
+ var channelMemoryRecallDurationHistogram;
61719
+ var channelMemoryRecallSelectedCountHistogram;
61709
61720
  var isMetricsInitialized = false;
61710
61721
  var isPerformanceMonitoringEnabled = false;
61711
61722
  function getMeter() {
@@ -61796,6 +61807,31 @@ function initializeMetrics(config) {
61796
61807
  valueType: ValueType.INT
61797
61808
  }
61798
61809
  );
61810
+ channelMemoryRecallCounter = meter.createCounter(
61811
+ CHANNEL_MEMORY_RECALL_COUNT,
61812
+ {
61813
+ description: "Counts channel memory recall attempts by cache path and bounded result.",
61814
+ valueType: ValueType.INT
61815
+ }
61816
+ );
61817
+ channelMemoryRecallDurationHistogram = meter.createHistogram(
61818
+ CHANNEL_MEMORY_RECALL_DURATION,
61819
+ {
61820
+ description: "Duration of channel memory recall attempts.",
61821
+ unit: "ms",
61822
+ valueType: ValueType.DOUBLE,
61823
+ advice: {
61824
+ explicitBucketBoundaries: [0.1, 0.5, 1, 2, 5, 10, 25, 50, 100, 250]
61825
+ }
61826
+ }
61827
+ );
61828
+ channelMemoryRecallSelectedCountHistogram = meter.createHistogram(
61829
+ CHANNEL_MEMORY_RECALL_SELECTED_COUNT,
61830
+ {
61831
+ description: "Number of channel memory entries selected per attempt.",
61832
+ valueType: ValueType.INT
61833
+ }
61834
+ );
61799
61835
  initializePerformanceMonitoring(config);
61800
61836
  isMetricsInitialized = true;
61801
61837
  }
@@ -62138,6 +62174,23 @@ function recordMemoryRecallMetrics(config, durationMs, attrs) {
62138
62174
  });
62139
62175
  }
62140
62176
  __name(recordMemoryRecallMetrics, "recordMemoryRecallMetrics");
62177
+ function recordChannelMemoryRecallMetrics(observation) {
62178
+ if (!isMetricsInitialized) return;
62179
+ const attributes = {
62180
+ cache: observation.cache,
62181
+ result: observation.result
62182
+ };
62183
+ channelMemoryRecallCounter?.add(1, attributes);
62184
+ channelMemoryRecallDurationHistogram?.record(
62185
+ observation.durationMs,
62186
+ attributes
62187
+ );
62188
+ channelMemoryRecallSelectedCountHistogram?.record(
62189
+ observation.selectedCount,
62190
+ attributes
62191
+ );
62192
+ }
62193
+ __name(recordChannelMemoryRecallMetrics, "recordChannelMemoryRecallMetrics");
62141
62194
 
62142
62195
  // packages/core/src/telemetry/telemetry-utils.ts
62143
62196
  init_esbuild_shims();
@@ -62703,12 +62756,14 @@ var MCP_CONNECTION_ERROR_PATTERNS = [
62703
62756
  /transport closed/i
62704
62757
  ];
62705
62758
  var DiscoveredMCPToolInvocation = class _DiscoveredMCPToolInvocation extends BaseToolInvocation {
62706
- constructor(mcpTool, serverName, serverToolName, displayName, trust, params = {}, cliConfig, mcpClient, mcpTimeout, mcpToolIdleTimeoutMs, annotations, retryCount = 0) {
62759
+ constructor(mcpTool, serverName, serverToolName, displayName, registeredToolName, permissionAliases, trust, params = {}, cliConfig, mcpClient, mcpTimeout, mcpToolIdleTimeoutMs, annotations, retryCount = 0) {
62707
62760
  super(params);
62708
62761
  this.mcpTool = mcpTool;
62709
62762
  this.serverName = serverName;
62710
62763
  this.serverToolName = serverToolName;
62711
62764
  this.displayName = displayName;
62765
+ this.registeredToolName = registeredToolName;
62766
+ this.permissionAliases = permissionAliases;
62712
62767
  this.trust = trust;
62713
62768
  this.cliConfig = cliConfig;
62714
62769
  this.mcpClient = mcpClient;
@@ -62736,7 +62791,7 @@ var DiscoveredMCPToolInvocation = class _DiscoveredMCPToolInvocation extends Bas
62736
62791
  * Constructs confirmation dialog details for an MCP tool call.
62737
62792
  */
62738
62793
  async getConfirmationDetails(_abortSignal) {
62739
- const permissionRule = `mcp__${this.serverName}__${this.serverToolName}`;
62794
+ const permissionRule = this.registeredToolName;
62740
62795
  const confirmationDetails = {
62741
62796
  type: "mcp",
62742
62797
  title: "Confirm MCP Tool Execution",
@@ -62773,9 +62828,7 @@ var DiscoveredMCPToolInvocation = class _DiscoveredMCPToolInvocation extends Bas
62773
62828
  );
62774
62829
  const toolRegistry = this.cliConfig.getToolRegistry();
62775
62830
  await toolRegistry.discoverToolsForServer(this.serverName);
62776
- const newTool = await toolRegistry.ensureTool(
62777
- `mcp__${this.serverName}__${this.serverToolName}`
62778
- );
62831
+ const newTool = await toolRegistry.ensureTool(this.registeredToolName);
62779
62832
  if (newTool instanceof DiscoveredMCPTool) {
62780
62833
  debugLogger4.info(
62781
62834
  `Successfully reconnected to MCP server '${this.serverName}'`
@@ -62806,6 +62859,8 @@ var DiscoveredMCPToolInvocation = class _DiscoveredMCPToolInvocation extends Bas
62806
62859
  this.serverName,
62807
62860
  this.serverToolName,
62808
62861
  this.displayName,
62862
+ newTool.name,
62863
+ newTool.permissionAliases,
62809
62864
  this.trust,
62810
62865
  this.params,
62811
62866
  this.cliConfig,
@@ -63001,7 +63056,7 @@ var DiscoveredMCPToolInvocation = class _DiscoveredMCPToolInvocation extends Bas
63001
63056
  if (part.text && !part.inlineData) {
63002
63057
  const truncated = await truncateToolOutput(
63003
63058
  this.cliConfig,
63004
- `mcp__${this.serverName}__${this.serverToolName}`,
63059
+ this.registeredToolName,
63005
63060
  part.text,
63006
63061
  // Per-tool char budget; mirrors DiscoveredMCPTool.maxOutputChars
63007
63062
  // (10x the global default, since MCP servers return large structured
@@ -63062,6 +63117,13 @@ var DiscoveredMCPTool = class _DiscoveredMCPTool extends BaseDeclarativeTool {
63062
63117
  get maxOutputChars() {
63063
63118
  return 5e5;
63064
63119
  }
63120
+ /** Keeps pre-normalization permission and disabled-tool entries effective. */
63121
+ get permissionAliases() {
63122
+ const legacyName = generateLegacyMcpToolName(
63123
+ `mcp__${this.serverName}__${this.serverToolName}`
63124
+ );
63125
+ return legacyName === this.name ? [] : [legacyName];
63126
+ }
63065
63127
  asFullyQualifiedTool() {
63066
63128
  return new _DiscoveredMCPTool(
63067
63129
  this.mcpTool,
@@ -63121,6 +63183,8 @@ var DiscoveredMCPTool = class _DiscoveredMCPTool extends BaseDeclarativeTool {
63121
63183
  this.serverName,
63122
63184
  this.serverToolName,
63123
63185
  this.displayName,
63186
+ this.name,
63187
+ this.permissionAliases,
63124
63188
  this.trust,
63125
63189
  params,
63126
63190
  this.cliConfig,
@@ -63232,11 +63296,7 @@ function getDisplayFromParts(parts) {
63232
63296
  }
63233
63297
  __name(getDisplayFromParts, "getDisplayFromParts");
63234
63298
  function generateValidName(name) {
63235
- let validToolname = name.replace(/[^a-zA-Z0-9_.-]/g, "_");
63236
- if (validToolname.length > 63) {
63237
- validToolname = validToolname.slice(0, 28) + "___" + validToolname.slice(-32);
63238
- }
63239
- return validToolname;
63299
+ return normalizeToolNameForProvider(name);
63240
63300
  }
63241
63301
  __name(generateValidName, "generateValidName");
63242
63302
 
@@ -64816,7 +64876,7 @@ function processContent(content, messages, requestContext) {
64816
64876
  id: callId || `call_${toolCallIndex}`,
64817
64877
  type: "function",
64818
64878
  function: {
64819
- name: part.functionCall.name || "",
64879
+ name: normalizeMcpToolName(part.functionCall.name || ""),
64820
64880
  arguments: JSON.stringify(part.functionCall.args || {})
64821
64881
  }
64822
64882
  });
@@ -65225,11 +65285,12 @@ function throwProtocolTagLeak(requestContext) {
65225
65285
  __name(throwProtocolTagLeak, "throwProtocolTagLeak");
65226
65286
  function convertOpenAIResponseToGemini(openaiResponse, requestContext) {
65227
65287
  const choice = openaiResponse.choices?.[0];
65288
+ const message = choice?.message;
65289
+ const reasoningText = message?.reasoning_content ?? message?.reasoning;
65228
65290
  const response = new GenerateContentResponse();
65229
65291
  if (choice) {
65230
65292
  const parts = [];
65231
65293
  const textParts = choice.message.content ? convertOpenAITextToParts(choice.message.content, requestContext) : [];
65232
- const reasoningText = choice.message.reasoning_content ?? choice.message.reasoning;
65233
65294
  if (reasoningText && !hasThoughtPart(textParts)) {
65234
65295
  parts.push(createOpenAIReasoningThoughtPart(reasoningText));
65235
65296
  }
@@ -65278,7 +65339,17 @@ function convertOpenAIResponseToGemini(openaiResponse, requestContext) {
65278
65339
  const totalTokens = usage.total_tokens || 0;
65279
65340
  const extendedUsage = usage;
65280
65341
  const cachedTokens = usage.prompt_tokens_details?.cached_tokens ?? extendedUsage.cached_tokens ?? 0;
65281
- const thinkingTokens = usage.completion_tokens_details?.reasoning_tokens || 0;
65342
+ const providerReasoningTokens = usage.completion_tokens_details?.reasoning_tokens;
65343
+ let thinkingTokens = providerReasoningTokens;
65344
+ if (thinkingTokens == null) {
65345
+ const estimatedThinkingTokens = estimateTextTokens(reasoningText ?? "");
65346
+ thinkingTokens = completionTokens > 0 ? Math.min(estimatedThinkingTokens, completionTokens) : estimatedThinkingTokens;
65347
+ if (thinkingTokens > 0) {
65348
+ debugLogger6.debug(
65349
+ `convertOpenAIResponseToGemini: reasoning_tokens absent; estimated ${thinkingTokens} from text`
65350
+ );
65351
+ }
65352
+ }
65282
65353
  let finalPromptTokens = promptTokens;
65283
65354
  let finalCompletionTokens = completionTokens;
65284
65355
  if (totalTokens > 0 && promptTokens === 0 && completionTokens === 0) {
@@ -65344,15 +65415,17 @@ function convertOpenAIChunkToGemini(chunk, requestContext) {
65344
65415
  }
65345
65416
  }
65346
65417
  if (reasoningText && (!requestContext.responseParsingOptions?.taggedThinkingTags || !requestContext.hasTaggedThinkingThought)) {
65418
+ const reasoningDeltaState = requestContext.reasoningDeltaState ??= {
65419
+ emittedText: "",
65420
+ emittedLength: 0,
65421
+ cumulativeMode: false
65422
+ };
65347
65423
  const normalizedReasoningText = normalizeStreamingTextDelta(
65348
65424
  reasoningText,
65349
- requestContext.reasoningDeltaState ??= {
65350
- emittedText: "",
65351
- emittedLength: 0,
65352
- cumulativeMode: false
65353
- }
65425
+ reasoningDeltaState
65354
65426
  );
65355
65427
  if (normalizedReasoningText) {
65428
+ reasoningDeltaState.emittedTokenUnits = (reasoningDeltaState.emittedTokenUnits ?? 0) + estimateTextTokenUnits(normalizedReasoningText);
65356
65429
  requestContext.hasStructuredReasoningContent = true;
65357
65430
  if (THINKING_TAG_PATTERN.test(normalizedReasoningText)) {
65358
65431
  requestContext.hasThinkingTagInReasoning = true;
@@ -65564,7 +65637,16 @@ function convertOpenAIChunkToGemini(chunk, requestContext) {
65564
65637
  const promptTokens = usage.prompt_tokens || 0;
65565
65638
  const completionTokens = usage.completion_tokens || 0;
65566
65639
  const totalTokens = usage.total_tokens || 0;
65567
- const thinkingTokens = usage.completion_tokens_details?.reasoning_tokens || 0;
65640
+ const providerReasoningTokens = usage.completion_tokens_details?.reasoning_tokens;
65641
+ const estimatedThinkingTokens = Math.ceil(
65642
+ (requestContext.reasoningDeltaState?.emittedTokenUnits ?? 0) / TOKEN_ESTIMATE_UNITS_PER_TOKEN
65643
+ );
65644
+ const thinkingTokens = providerReasoningTokens ?? (completionTokens > 0 ? Math.min(estimatedThinkingTokens, completionTokens) : estimatedThinkingTokens);
65645
+ if (providerReasoningTokens == null && estimatedThinkingTokens > 0) {
65646
+ debugLogger6.debug(
65647
+ `convertOpenAIChunkToGemini: reasoning_tokens absent; estimated ${thinkingTokens} from streamed text`
65648
+ );
65649
+ }
65568
65650
  const extendedUsage = usage;
65569
65651
  const cachedTokens = usage.prompt_tokens_details?.cached_tokens ?? extendedUsage.cached_tokens ?? 0;
65570
65652
  let finalPromptTokens = promptTokens;
@@ -70652,11 +70734,11 @@ async function createContentGenerator(generatorConfig, config, isInitialAuth) {
70652
70734
  let baseGenerator;
70653
70735
  try {
70654
70736
  if (authType === "openai" /* USE_OPENAI */) {
70655
- const { createOpenAIContentGenerator } = await import("./openaiContentGenerator-42PZKET5.js");
70737
+ const { createOpenAIContentGenerator } = await import("./openaiContentGenerator-XAAYV6WR.js");
70656
70738
  baseGenerator = createOpenAIContentGenerator(generatorConfig, config);
70657
70739
  } else if (authType === "qwen-oauth" /* QWEN_OAUTH */) {
70658
- const { getQwenOAuthClient: getQwenOauthClient } = await import("./qwenOAuth2-6LS2T3Q6.js");
70659
- const { QwenContentGenerator } = await import("./qwenContentGenerator-VR2CNFGI.js");
70740
+ const { getQwenOAuthClient: getQwenOauthClient } = await import("./qwenOAuth2-J47FU5PW.js");
70741
+ const { QwenContentGenerator } = await import("./qwenContentGenerator-DLJ3KKGZ.js");
70660
70742
  try {
70661
70743
  const qwenClient = await getQwenOauthClient(
70662
70744
  config,
@@ -70674,10 +70756,10 @@ async function createContentGenerator(generatorConfig, config, isInitialAuth) {
70674
70756
  throw new Error(error instanceof Error ? error.message : String(error));
70675
70757
  }
70676
70758
  } else if (authType === "anthropic" /* USE_ANTHROPIC */) {
70677
- const { createAnthropicContentGenerator } = await import("./anthropicContentGenerator-ZZRGFEES.js");
70759
+ const { createAnthropicContentGenerator } = await import("./anthropicContentGenerator-W4JLNYWQ.js");
70678
70760
  baseGenerator = createAnthropicContentGenerator(generatorConfig, config);
70679
70761
  } else if (authType === "gemini" /* USE_GEMINI */ || authType === "vertex-ai" /* USE_VERTEX_AI */) {
70680
- const { createGeminiContentGenerator } = await import("./geminiContentGenerator-ADZTXEKV.js");
70762
+ const { createGeminiContentGenerator } = await import("./geminiContentGenerator-ABTMU4FE.js");
70681
70763
  baseGenerator = createGeminiContentGenerator(generatorConfig, config);
70682
70764
  } else {
70683
70765
  throw new Error(
@@ -74328,6 +74410,7 @@ export {
74328
74410
  recordMemoryExtractMetrics,
74329
74411
  recordMemoryDreamMetrics,
74330
74412
  recordMemoryRecallMetrics,
74413
+ recordChannelMemoryRecallMetrics,
74331
74414
  getLanguageFromFilePath,
74332
74415
  SemanticAttributes,
74333
74416
  sanitizeHookName,
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  createDebugLogger
5
- } from "./chunk-UE5TZ55T.js";
5
+ } from "./chunk-C27BYUX6.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-5O2XNYP6.js";