@qwen-code/qwen-code 0.19.4 → 0.19.5

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 (224) hide show
  1. package/bundled/qc-helper/docs/configuration/settings.md +22 -6
  2. package/bundled/qc-helper/docs/features/commands.md +41 -34
  3. package/bundled/qc-helper/docs/features/headless.md +19 -18
  4. package/bundled/qc-helper/docs/qwen-serve.md +34 -0
  5. package/bundled/qc-helper/docs/support/troubleshooting.md +5 -0
  6. package/chunks/{MaxSizedBox-ERTNFI22.js → MaxSizedBox-5JV77KRA.js} +11 -10
  7. package/chunks/{StandaloneSessionPicker-Y5NGRLRY.js → StandaloneSessionPicker-MGUGB6PH.js} +21 -20
  8. package/chunks/{acpAgent-UMN6OYTR.js → acpAgent-4F36XM3X.js} +75 -73
  9. package/chunks/{agent-56DZU4ZU.js → agent-IWBUZI6A.js} +8 -7
  10. package/chunks/{agent-headless-SR7N2IJG.js → agent-headless-JUTICAYO.js} +8 -7
  11. package/chunks/{anthropicContentGenerator-5OZFO6WQ.js → anthropicContentGenerator-WL3LJOUB.js} +99 -23
  12. package/chunks/{artifact-tool-JVZMHA4B.js → artifact-tool-W76WC2JX.js} +1 -1
  13. package/chunks/{askUserQuestion-CMJZ2F3D.js → askUserQuestion-J3P6TH3V.js} +1 -1
  14. package/chunks/{bridge-AUHNFOUS.js → bridge-DHZHQ4UV.js} +14 -12
  15. package/chunks/{ca-RYOETBUW.js → ca-HCMB2I54.js} +1 -0
  16. package/chunks/channel-worker-supervisor-EVPAYNZ5.js +665 -0
  17. package/chunks/{chunk-HRZB5CSC.js → chunk-2CAII5HD.js} +1 -1
  18. package/chunks/{chunk-FYKX6XOT.js → chunk-2YH27UNF.js} +1 -1
  19. package/chunks/chunk-2Z43HUXT.js +99 -0
  20. package/chunks/{chunk-ZXCVPMIK.js → chunk-4MCC4XHH.js} +167 -54
  21. package/chunks/{chunk-J3F7X3LW.js → chunk-5B2WNM6V.js} +1 -1
  22. package/chunks/{chunk-VKGG724L.js → chunk-6KPZJJ6U.js} +9 -8
  23. package/chunks/{chunk-BFG6OZN7.js → chunk-6QTCOQX7.js} +3470 -2654
  24. package/chunks/{chunk-QAFQLTXG.js → chunk-6QVQZAW6.js} +1 -1
  25. package/chunks/{chunk-HI55Z6PR.js → chunk-7DMQRPC7.js} +401 -58
  26. package/chunks/{chunk-MKHC4BYZ.js → chunk-BC4R5C5R.js} +20 -4
  27. package/chunks/chunk-BPFJQGY7.js +193 -0
  28. package/chunks/{chunk-FNLXLI4I.js → chunk-CBJE2PLG.js} +2 -2
  29. package/chunks/{chunk-HJDF3ZVU.js → chunk-CHY5C5T4.js} +6 -6
  30. package/chunks/{chunk-UT5JU5DJ.js → chunk-CSPSJU5R.js} +40 -13
  31. package/chunks/chunk-CXBG27SF.js +35 -0
  32. package/chunks/{chunk-UQFP2FEF.js → chunk-DG573EOO.js} +1 -1
  33. package/chunks/{chunk-UQYOMM6J.js → chunk-DM4E337C.js} +10 -10
  34. package/chunks/{chunk-CS5XYDBO.js → chunk-DRS2HTNT.js} +5 -5
  35. package/chunks/{chunk-MVZXZWGT.js → chunk-EJ7BN3EN.js} +125 -52
  36. package/chunks/{chunk-YBDZ63KI.js → chunk-EROWZQN7.js} +8 -4
  37. package/chunks/{chunk-CUGEBAKG.js → chunk-G4M7FPNY.js} +1 -1
  38. package/chunks/{chunk-ND25GXEU.js → chunk-HISPEX42.js} +11 -3
  39. package/chunks/{chunk-TTFNVEO5.js → chunk-IMAMNLY6.js} +3 -3
  40. package/chunks/{chunk-7VPC7D7O.js → chunk-J3ERRYYI.js} +2 -2
  41. package/chunks/{chunk-OAFUMTWW.js → chunk-JJ6B3ZD3.js} +2 -2
  42. package/chunks/{chunk-W2ZOAX7F.js → chunk-JKGCBO3O.js} +3 -3
  43. package/chunks/{chunk-BQNJBEUA.js → chunk-K4I4STSL.js} +16 -2
  44. package/chunks/{chunk-MEQWZGK5.js → chunk-L7OJ3ZO3.js} +1 -1
  45. package/chunks/{chunk-GICCHL2Q.js → chunk-LHMZCIKL.js} +1 -1
  46. package/chunks/{chunk-XCUFHOAD.js → chunk-M5ITDKSM.js} +1 -1
  47. package/chunks/{chunk-7KPI4LAI.js → chunk-MDBNFHIO.js} +3 -3
  48. package/chunks/{chunk-BNJLLAQ7.js → chunk-MNOXKSM2.js} +1 -1
  49. package/chunks/{chunk-4VZH35PN.js → chunk-MTNTVOJR.js} +2 -0
  50. package/chunks/{chunk-CG7SVARK.js → chunk-NDY7OENU.js} +2 -2
  51. package/chunks/{chunk-DQ74W65K.js → chunk-NNEJEBCF.js} +49 -22
  52. package/chunks/{chunk-L7VH7HQA.js → chunk-NSSVORTQ.js} +29 -4
  53. package/chunks/{chunk-6CIIP6OE.js → chunk-OQHLUA2Y.js} +3 -3
  54. package/chunks/{chunk-6TLY5W3B.js → chunk-QHYITL6P.js} +127 -23
  55. package/chunks/{chunk-73H73ASU.js → chunk-R3UWLLRQ.js} +1 -1
  56. package/chunks/{chunk-UANCYOOQ.js → chunk-R6RI2HIC.js} +1 -1
  57. package/chunks/{chunk-PIYV6COW.js → chunk-RNGAT2Y2.js} +1 -1
  58. package/chunks/{chunk-W6X4FGWX.js → chunk-RSBQS6M4.js} +1 -1
  59. package/chunks/{chunk-EDAGQADF.js → chunk-S6RLAIUR.js} +2 -0
  60. package/chunks/{chunk-C2IHHGBZ.js → chunk-SBMHB6N5.js} +12 -12
  61. package/chunks/chunk-SIUQ3YYX.js +78 -0
  62. package/chunks/{chunk-MNDTD5E5.js → chunk-SJVPSHXU.js} +4 -4
  63. package/chunks/chunk-TN6RT6EJ.js +86 -0
  64. package/chunks/{chunk-75X2VLSH.js → chunk-UJT42DB6.js} +26 -5
  65. package/chunks/{chunk-QMIND2AS.js → chunk-UY2TCIZS.js} +15 -1
  66. package/chunks/{chunk-6AQR7732.js → chunk-WALEWZ44.js} +1 -1
  67. package/chunks/{chunk-SFN4TEHY.js → chunk-WZ724G6K.js} +4 -4
  68. package/chunks/{chunk-2X2JUE47.js → chunk-XKZXGIRM.js} +2 -2
  69. package/chunks/{chunk-Q7VHIRDD.js → chunk-Y4UQT3PM.js} +1 -1
  70. package/chunks/{chunk-B7KGXIPZ.js → chunk-YCU7QV7Q.js} +11 -4
  71. package/chunks/{chunk-OJCECIJA.js → chunk-YHTNWGRR.js} +5 -4
  72. package/chunks/{chunk-ZJP5T7IA.js → chunk-Z7XNVNPM.js} +1 -1
  73. package/chunks/{chunk-KVPFPC4J.js → chunk-ZISMVA6U.js} +14 -14
  74. package/chunks/{computer-use-VWN5HH6A.js → computer-use-ON3JQUHW.js} +8 -7
  75. package/chunks/{contextCommand-DFFG5KDJ.js → contextCommand-OGCG7W6N.js} +10 -9
  76. package/chunks/{cron-create-CSSWJ67I.js → cron-create-6YTCOX6P.js} +1 -1
  77. package/chunks/{cron-delete-E56CFQ7A.js → cron-delete-E3NIFSUK.js} +1 -1
  78. package/chunks/{cron-list-BKSINY6Y.js → cron-list-Q64MNQNE.js} +1 -1
  79. package/chunks/{daemon-5T6IHWJV.js → daemon-EEB2RYOL.js} +23 -0
  80. package/chunks/{daemon-status-provider-V5UY7O7J.js → daemon-status-provider-P72STMLB.js} +17 -15
  81. package/chunks/{de-HB5NJXGB.js → de-PLLFDERI.js} +1 -0
  82. package/chunks/{dist-TAVAGZU6.js → dist-AP5V4WYU.js} +54 -14
  83. package/chunks/{dist-XBOVZ3R5.js → dist-IZP2VV4C.js} +156 -57
  84. package/chunks/{dist-B7SSDVWT.js → dist-SNXOUPYS.js} +201 -7
  85. package/chunks/{dist-2HDL5SHQ.js → dist-X4ZDE726.js} +43 -8
  86. package/chunks/{dist-BL3SL665.js → dist-Z57Q4YF5.js} +1 -1
  87. package/chunks/{earlyInputCapture-VVYU4FDO.js → earlyInputCapture-DAFHSGVW.js} +8 -7
  88. package/chunks/{edit-F35PTMBA.js → edit-3QFNCSZH.js} +13 -16
  89. package/chunks/{en-FZREZFPO.js → en-M4EBUBNU.js} +2 -0
  90. package/chunks/{enter-worktree-3DIW7EGJ.js → enter-worktree-62EQQMLD.js} +8 -7
  91. package/chunks/{enterPlanMode-QNXT77KP.js → enterPlanMode-VUQSE4EG.js} +10 -9
  92. package/chunks/{errors-M53YG76R.js → errors-PW75PZXE.js} +10 -9
  93. package/chunks/{exit-worktree-BSDWNWHZ.js → exit-worktree-VVNH7OVY.js} +8 -7
  94. package/chunks/{exitPlanMode-EL7AY327.js → exitPlanMode-RUYRCYZW.js} +106 -11
  95. package/chunks/{fast-path-DUCSMUFW.js → fast-path-TFRJRTTR.js} +5 -3
  96. package/chunks/{fr-XY3NQFCM.js → fr-MBMNQSQ6.js} +1 -0
  97. package/chunks/{gemini-F3IERB37.js → gemini-XW7ZDUVR.js} +50 -47
  98. package/chunks/{geminiContentGenerator-6OULAKFQ.js → geminiContentGenerator-MZDVHVZH.js} +39 -3
  99. package/chunks/{glob-ZMLFTD4T.js → glob-WAY2PUWA.js} +8 -7
  100. package/chunks/{grep-H5X66EI7.js → grep-W6CBKSYC.js} +8 -7
  101. package/chunks/{initializer-LEOT2OLH.js → initializer-HK2XE6P2.js} +12 -11
  102. package/chunks/{ja-J7YAG7SA.js → ja-HFV5QCHR.js} +1 -0
  103. package/chunks/{list-M3DKXML6.js → list-RVLIIKKL.js} +14 -13
  104. package/chunks/{loadedSettingsAdapter-OKMQFGGG.js → loadedSettingsAdapter-C63OUYZC.js} +12 -11
  105. package/chunks/{loop-wakeup-FPBAVVPR.js → loop-wakeup-G2EHBRGR.js} +2 -2
  106. package/chunks/{ls-UGWQXPTY.js → ls-IDHUVSAG.js} +1 -1
  107. package/chunks/{lsp-24WV7NXB.js → lsp-FSRYXGFT.js} +1 -1
  108. package/chunks/{monitor-ARL5P45R.js → monitor-FOG36ABM.js} +10 -9
  109. package/chunks/{nonInteractiveCli-NUVLF3YR.js → nonInteractiveCli-6BYQSJTB.js} +40 -39
  110. package/chunks/{notebook-edit-ANTZ2DDY.js → notebook-edit-GC6NXRCX.js} +13 -15
  111. package/chunks/{openaiContentGenerator-TFGMKGHN.js → openaiContentGenerator-EXR3ZL3Z.js} +4 -4
  112. package/chunks/{pidfile-AWTL4C63.js → pidfile-FNZM2DDH.js} +9 -8
  113. package/chunks/{pt-6RTAA6SS.js → pt-2THT3YHA.js} +1 -0
  114. package/chunks/{qwenContentGenerator-6QWAYTWS.js → qwenContentGenerator-A7B6J4U7.js} +9 -8
  115. package/chunks/{read-file-EJY73XQ3.js → read-file-6JL4ULMY.js} +3 -3
  116. package/chunks/{read-mcp-resource-NCBTPP7X.js → read-mcp-resource-PIJF24RO.js} +1 -1
  117. package/chunks/{ripGrep-HC4SA6CQ.js → ripGrep-DIUGLJE5.js} +8 -7
  118. package/chunks/{ru-AUBGJ2C4.js → ru-Z67YJHBG.js} +1 -0
  119. package/chunks/{run-qwen-serve-AGLZ642J.js → run-qwen-serve-CME3AKM4.js} +123 -30
  120. package/chunks/{scheduler-TURO7NGY.js → scheduler-L7F6GDDT.js} +8 -7
  121. package/chunks/{send-message-3S2NYS3O.js → send-message-33PYFMCT.js} +15 -1
  122. package/chunks/{serve-5DAMOIDW.js → serve-SRCBOJGP.js} +12 -11
  123. package/chunks/{server-4AGEK2HC.js → server-QSQ45QFR.js} +184 -170
  124. package/chunks/{session-7ZOQUC4Y.js → session-5DG6NXHZ.js} +41 -40
  125. package/chunks/{settings-DR4V6L5Y.js → settings-3EEQI4MN.js} +11 -10
  126. package/chunks/{shell-H5WFKUXH.js → shell-B7FNYF5S.js} +8 -7
  127. package/chunks/{skill-ANHU5ZCR.js → skill-AAOGHD5O.js} +3 -3
  128. package/chunks/{spawnChannel-VN5LJV7Z.js → spawnChannel-3CBN3ZLK.js} +11 -9
  129. package/chunks/{src-OVZLTVVM.js → src-T5A7P7FS.js} +20 -9
  130. package/chunks/{startInteractiveUI-OA22V32P.js → startInteractiveUI-2FGEQ6AS.js} +2648 -2500
  131. package/chunks/{syntheticOutput-SV7GBHZ5.js → syntheticOutput-YOSWIHDJ.js} +2 -2
  132. package/chunks/{task-create-W2H2UJCH.js → task-create-NHS2NGB3.js} +3 -2
  133. package/chunks/{task-list-THBOPV4G.js → task-list-5UIB564R.js} +1 -1
  134. package/chunks/{task-stop-33FVCNCJ.js → task-stop-HGXZ2VZ3.js} +1 -1
  135. package/chunks/{task-update-LVFQLXEI.js → task-update-IYYWUILG.js} +34 -2
  136. package/chunks/{team-create-OYL5CAQO.js → team-create-KDF6W6PV.js} +8 -7
  137. package/chunks/{team-delete-NTUQ25UY.js → team-delete-FEKJCU4P.js} +1 -1
  138. package/chunks/team-plan-approval-PSFKQX7M.js +202 -0
  139. package/chunks/{theme-manager-XCMPF2SI.js → theme-manager-5XOA2AO7.js} +8 -7
  140. package/chunks/{todoWrite-SEPO2RI3.js → todoWrite-TKMVZ2HT.js} +1 -1
  141. package/chunks/{tool-search-YXW55X6Z.js → tool-search-LFRILZXC.js} +8 -6
  142. package/chunks/{trustedFolders-TEPGM5YL.js → trustedFolders-7HQY6T6X.js} +9 -8
  143. package/chunks/{validateNonInterActiveAuth-OQIS7WUE.js → validateNonInterActiveAuth-UC27B7BA.js} +37 -36
  144. package/chunks/{web-fetch-OE7LHURA.js → web-fetch-J4PIW36Q.js} +2 -2
  145. package/chunks/{workflow-RTUWORAP.js → workflow-KUTESS6L.js} +11 -10
  146. package/chunks/{workspace-providers-status-DM2XANVB.js → workspace-providers-status-LJT5AQDS.js} +14 -13
  147. package/chunks/{workspace-service-VKBI2KZD.js → workspace-service-YOBYVDXH.js} +16 -15
  148. package/chunks/workspace-skills-status-ONEPXJV6.js +62 -0
  149. package/chunks/{write-file-WGALQ53L.js → write-file-FJYBZUHP.js} +13 -17
  150. package/chunks/{zh-V3B4TFWL.js → zh-SLZNSSZB.js} +2 -0
  151. package/chunks/{zh-TW-6GIKXEAN.js → zh-TW-P53C2SL5.js} +2 -0
  152. package/cli.js +6 -6
  153. package/locales/ca.js +2 -0
  154. package/locales/de.js +2 -0
  155. package/locales/en.js +3 -0
  156. package/locales/fr.js +2 -0
  157. package/locales/ja.js +2 -0
  158. package/locales/pt.js +2 -0
  159. package/locales/ru.js +2 -0
  160. package/locales/zh-TW.js +3 -0
  161. package/locales/zh.js +3 -0
  162. package/node_modules/@qwen-code/audio-capture/package.json +1 -1
  163. package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-arm64/@qwen-code+audio-capture.node +0 -0
  164. package/node_modules/@qwen-code/audio-capture/prebuilds/darwin-x64/@qwen-code+audio-capture.node +0 -0
  165. package/node_modules/@qwen-code/audio-capture/prebuilds/win32-x64/@qwen-code+audio-capture.node +0 -0
  166. package/package.json +6 -15
  167. package/web-shell/assets/{arc-Det5Ccum.js → arc-D_rAuMDd.js} +1 -1
  168. package/web-shell/assets/{architectureDiagram-3BPJPVTR-DqNWVFpl.js → architectureDiagram-3BPJPVTR-DUCzbHVo.js} +1 -1
  169. package/web-shell/assets/{blockDiagram-GPEHLZMM-CYl7tYBi.js → blockDiagram-GPEHLZMM-BEEBt1LL.js} +1 -1
  170. package/web-shell/assets/{c4Diagram-AAUBKEIU-DaAEi0NQ.js → c4Diagram-AAUBKEIU-5ZJ_DeFL.js} +1 -1
  171. package/web-shell/assets/channel-B5ynH0q8.js +1 -0
  172. package/web-shell/assets/{chunk-2J33WTMH-Df2CDEE2.js → chunk-2J33WTMH-Cfw7EiLn.js} +1 -1
  173. package/web-shell/assets/{chunk-4BX2VUAB-DNBFcyL2.js → chunk-4BX2VUAB-FGuZNCZY.js} +1 -1
  174. package/web-shell/assets/{chunk-55IACEB6-BKjF-0HI.js → chunk-55IACEB6-CaBwYPBF.js} +1 -1
  175. package/web-shell/assets/{chunk-727SXJPM-DYwAwfIM.js → chunk-727SXJPM-BlR04OFz.js} +1 -1
  176. package/web-shell/assets/{chunk-AQP2D5EJ-C6FswLqy.js → chunk-AQP2D5EJ-D3_mYJH5.js} +1 -1
  177. package/web-shell/assets/{chunk-FMBD7UC4-DRWAcZSY.js → chunk-FMBD7UC4-7D4q4SbB.js} +1 -1
  178. package/web-shell/assets/{chunk-ND2GUHAM-AoL16mNR.js → chunk-ND2GUHAM-BjX_Iwmr.js} +1 -1
  179. package/web-shell/assets/{chunk-QZHKN3VN-a8PtLMck.js → chunk-QZHKN3VN-C3Hz_ZQh.js} +1 -1
  180. package/web-shell/assets/classDiagram-4FO5ZUOK-CK3ibywp.js +1 -0
  181. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CK3ibywp.js +1 -0
  182. package/web-shell/assets/{cose-bilkent-S5V4N54A-C4Aeu5qf.js → cose-bilkent-S5V4N54A-Ax4UycaT.js} +1 -1
  183. package/web-shell/assets/{dagre-BM42HDAG-BOulamjo.js → dagre-BM42HDAG-C6hmPtGt.js} +1 -1
  184. package/web-shell/assets/{diagram-2AECGRRQ-D1wt2ykO.js → diagram-2AECGRRQ-tXZnxjmw.js} +1 -1
  185. package/web-shell/assets/{diagram-5GNKFQAL-BRseus-O.js → diagram-5GNKFQAL-99dwIzQG.js} +1 -1
  186. package/web-shell/assets/{diagram-KO2AKTUF-XSMkNzpZ.js → diagram-KO2AKTUF-Bqhn0-2s.js} +1 -1
  187. package/web-shell/assets/{diagram-LMA3HP47-21KNLqoi.js → diagram-LMA3HP47-DzThVSvo.js} +1 -1
  188. package/web-shell/assets/{diagram-OG6HWLK6-DnUI8F5G.js → diagram-OG6HWLK6-DPE8vjln.js} +1 -1
  189. package/web-shell/assets/{erDiagram-TEJ5UH35-BVSOMuM2.js → erDiagram-TEJ5UH35-KzUKgQCV.js} +1 -1
  190. package/web-shell/assets/{flowDiagram-I6XJVG4X-fYtDPJsW.js → flowDiagram-I6XJVG4X-DBN-DXw5.js} +1 -1
  191. package/web-shell/assets/{ganttDiagram-6RSMTGT7-CmRXosW_.js → ganttDiagram-6RSMTGT7-DuBsP9u8.js} +1 -1
  192. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-DPrmySxO.js → gitGraphDiagram-PVQCEYII-BjWHMyKR.js} +1 -1
  193. package/web-shell/assets/index-9qfvU0_r.css +5 -0
  194. package/web-shell/assets/index-CWzDaQT5.js +717 -0
  195. package/web-shell/assets/{infoDiagram-5YYISTIA-x3VbEuCV.js → infoDiagram-5YYISTIA-BVux0vP6.js} +1 -1
  196. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-SmitHRMC.js → ishikawaDiagram-YF4QCWOH-2qzw7f--.js} +1 -1
  197. package/web-shell/assets/{journeyDiagram-JHISSGLW-BxvA551S.js → journeyDiagram-JHISSGLW-Dnl65sxL.js} +1 -1
  198. package/web-shell/assets/{kanban-definition-UN3LZRKU-DNHC16jY.js → kanban-definition-UN3LZRKU-BElSQYtY.js} +1 -1
  199. package/web-shell/assets/{linear-CQ6irBL9.js → linear-BjoycSSY.js} +1 -1
  200. package/web-shell/assets/{mermaid.core-DtB6NO1e.js → mermaid.core-xe6bvMRz.js} +5 -5
  201. package/web-shell/assets/{mindmap-definition-RKZ34NQL-QKMAgV2v.js → mindmap-definition-RKZ34NQL-D8DQgI4U.js} +1 -1
  202. package/web-shell/assets/{pieDiagram-4H26LBE5-bvb6dGn6.js → pieDiagram-4H26LBE5-Dwh7Gp7c.js} +1 -1
  203. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-DLgdlG4D.js → quadrantDiagram-W4KKPZXB-BXKNBln2.js} +1 -1
  204. package/web-shell/assets/{requirementDiagram-4Y6WPE33-2M9YH4GF.js → requirementDiagram-4Y6WPE33-BzaC3cIA.js} +1 -1
  205. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-DzwfclTH.js → sankeyDiagram-5OEKKPKP-DP2t7eZk.js} +1 -1
  206. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-BvPmTuy2.js → sequenceDiagram-3UESZ5HK-XlFiWEYv.js} +1 -1
  207. package/web-shell/assets/{stateDiagram-AJRCARHV-BjwUmrJF.js → stateDiagram-AJRCARHV-CupgUMJO.js} +1 -1
  208. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-By3E4QwN.js +1 -0
  209. package/web-shell/assets/{timeline-definition-PNZ67QCA-CXzS6qqz.js → timeline-definition-PNZ67QCA-DstuGywa.js} +1 -1
  210. package/web-shell/assets/{vennDiagram-CIIHVFJN-yRSolF5B.js → vennDiagram-CIIHVFJN-CnbNp6zu.js} +1 -1
  211. package/web-shell/assets/{wardley-L42UT6IY-ClLJjHPG.js → wardley-L42UT6IY-DnvoHq6R.js} +1 -1
  212. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-VIa6t2p2.js → wardleyDiagram-YWT4CUSO-Cz0xHEWB.js} +1 -1
  213. package/web-shell/assets/{xychartDiagram-2RQKCTM6-CtmrkezW.js → xychartDiagram-2RQKCTM6-p36gfo88.js} +1 -1
  214. package/web-shell/index.html +28 -3
  215. package/chunks/channel-worker-supervisor-A74FV522.js +0 -308
  216. package/chunks/chunk-S5EQPDTM.js +0 -91
  217. package/patches/chrome-devtools-mcp+1.4.0.patch +0 -31
  218. package/postinstall.js +0 -50
  219. package/web-shell/assets/channel-Bm0bFauD.js +0 -1
  220. package/web-shell/assets/classDiagram-4FO5ZUOK--NgUfb55.js +0 -1
  221. package/web-shell/assets/classDiagram-v2-Q7XG4LA2--NgUfb55.js +0 -1
  222. package/web-shell/assets/index-BpKnmyFV.js +0 -717
  223. package/web-shell/assets/index-fLrtxpOG.css +0 -5
  224. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-C4L8zXeL.js +0 -1
@@ -8,9 +8,10 @@ import {
8
8
  import "./chunk-7RYW5LQV.js";
9
9
  import {
10
10
  ChannelBase,
11
+ isTerminalTaskLifecycleType,
11
12
  sanitizeLogText,
12
13
  sanitizeSenderName
13
- } from "./chunk-HI55Z6PR.js";
14
+ } from "./chunk-7DMQRPC7.js";
14
15
  import "./chunk-UFC57OYT.js";
15
16
  import "./chunk-K5PGHDBN.js";
16
17
  import "./chunk-UWCTAVOD.js";
@@ -4488,6 +4489,10 @@ var ACK_REACTION_NAME = "\u{1F440}";
4488
4489
  var ACK_EMOTION_ID = "2659900";
4489
4490
  var ACK_EMOTION_BG_ID = "im_bg_1";
4490
4491
  var EMOTION_API = "https://api.dingtalk.com/v1.0/robot/emotion";
4492
+ var GROUP_MSG_API = "https://api.dingtalk.com/v1.0/robot/groupMessages/send";
4493
+ var GROUP_MSG_KEY = "sampleMarkdown";
4494
+ var TOKEN_API = "https://oapi.dingtalk.com/gettoken";
4495
+ var PROACTIVE_FETCH_TIMEOUT_MS = 15e3;
4491
4496
  var DingtalkChannel = class _DingtalkChannel extends ChannelBase {
4492
4497
  static {
4493
4498
  __name(this, "DingtalkChannel");
@@ -4497,6 +4502,20 @@ var DingtalkChannel = class _DingtalkChannel extends ChannelBase {
4497
4502
  dedupTimer;
4498
4503
  /** Map conversationId → latest sessionWebhook URL for sending replies. */
4499
4504
  webhooks = /* @__PURE__ */ new Map();
4505
+ activeReactionKeys = /* @__PURE__ */ new Set();
4506
+ /** sessionId → reaction keys, so a dead session's reactions can be recalled. */
4507
+ sessionReactionKeys = /* @__PURE__ */ new Map();
4508
+ /**
4509
+ * Real inbound message ids (insertion-ordered, size-capped). Unlike the
4510
+ * TTL-swept seenMessages dedup map, entries survive long queue waits, so a
4511
+ * turn that starts minutes after its message arrived still gets a reaction.
4512
+ */
4513
+ inboundMessageIds = /* @__PURE__ */ new Set();
4514
+ /**
4515
+ * Token cache for proactive sends. The stream SDK only refreshes its token
4516
+ * on (re)connect, so a long-lived socket serves a stale one after ~2h.
4517
+ */
4518
+ proactiveToken;
4500
4519
  constructor(name, config, bridge, options) {
4501
4520
  super(name, config, bridge, options);
4502
4521
  if (!config.clientId || !config.clientSecret) {
@@ -4645,6 +4664,98 @@ var DingtalkChannel = class _DingtalkChannel extends ChannelBase {
4645
4664
  }
4646
4665
  }
4647
4666
  }
4667
+ supportsProactiveSend() {
4668
+ return true;
4669
+ }
4670
+ /**
4671
+ * The group-message API needs a real openConversationId — reject DMs
4672
+ * (a different API) and webhook-URL fallback chatIds.
4673
+ */
4674
+ supportsProactiveTarget(target) {
4675
+ return target.isGroup === true && target.threadId === void 0 && this.isConversationId(target.chatId);
4676
+ }
4677
+ /**
4678
+ * Single-shot cold send: a failed chunk aborts the remainder (already-sent
4679
+ * chunks are not recalled) and the error surfaces in the loop's lastError.
4680
+ */
4681
+ async pushProactive(target, text) {
4682
+ if (!text.trim())
4683
+ return;
4684
+ const chunks = normalizeDingTalkMarkdown(text);
4685
+ const title = extractTitle(text);
4686
+ for (let i = 0; i < chunks.length; i++) {
4687
+ await this.sendProactiveChunk(target.chatId, i === 0 ? title : `${title} (cont.)`, chunks[i], `chunk ${i + 1}/${chunks.length}`);
4688
+ }
4689
+ }
4690
+ async getProactiveToken() {
4691
+ const cached = this.proactiveToken;
4692
+ if (cached && Date.now() < cached.expiresAt)
4693
+ return cached.token;
4694
+ const url2 = `${TOKEN_API}?appkey=${encodeURIComponent(this.config.clientId)}&appsecret=${encodeURIComponent(this.config.clientSecret)}`;
4695
+ let data;
4696
+ try {
4697
+ const resp = await fetch(url2, {
4698
+ signal: AbortSignal.timeout(PROACTIVE_FETCH_TIMEOUT_MS)
4699
+ });
4700
+ data = await resp.json();
4701
+ } catch (err) {
4702
+ process.stderr.write(`[DingTalk:${this.name}] proactive send failed: token fetch error ${err}
4703
+ `);
4704
+ throw new Error("DingTalk proactive send failed: could not fetch access token");
4705
+ }
4706
+ if (!data.access_token) {
4707
+ const errmsg = sanitizeLogText(String(data.errmsg ?? ""), 200);
4708
+ process.stderr.write(`[DingTalk:${this.name}] proactive send failed: gettoken errcode=${data.errcode} ${errmsg}
4709
+ `);
4710
+ throw new Error(`DingTalk proactive send failed: gettoken errcode=${data.errcode}${errmsg ? ` ${errmsg}` : ""}`);
4711
+ }
4712
+ this.proactiveToken = {
4713
+ token: data.access_token,
4714
+ // Refresh a minute early so a fire mid-expiry doesn't race the TTL.
4715
+ expiresAt: Date.now() + Math.max(60, (data.expires_in ?? 7200) - 60) * 1e3
4716
+ };
4717
+ return data.access_token;
4718
+ }
4719
+ async sendProactiveChunk(conversationId, title, text, chunkLabel) {
4720
+ for (let attempt = 0; ; attempt++) {
4721
+ const token = await this.getProactiveToken();
4722
+ let resp;
4723
+ try {
4724
+ resp = await fetch(GROUP_MSG_API, {
4725
+ method: "POST",
4726
+ headers: {
4727
+ "x-acs-dingtalk-access-token": token,
4728
+ "Content-Type": "application/json"
4729
+ },
4730
+ body: JSON.stringify({
4731
+ robotCode: this.config.clientId,
4732
+ openConversationId: conversationId,
4733
+ msgKey: GROUP_MSG_KEY,
4734
+ msgParam: JSON.stringify({ title, text })
4735
+ }),
4736
+ signal: AbortSignal.timeout(PROACTIVE_FETCH_TIMEOUT_MS)
4737
+ });
4738
+ } catch (err) {
4739
+ const cause = err.cause;
4740
+ process.stderr.write(`[DingTalk:${this.name}] proactive send error (${chunkLabel}): ${err}${cause ? ` (${cause})` : ""}
4741
+ `);
4742
+ throw new Error(`DingTalk proactive send failed: ${err instanceof Error ? err.message : String(err)}`);
4743
+ }
4744
+ if (resp.status === 401 && attempt === 0) {
4745
+ this.proactiveToken = void 0;
4746
+ await resp.body?.cancel();
4747
+ continue;
4748
+ }
4749
+ if (!resp.ok) {
4750
+ const detail = sanitizeLogText(await resp.text().catch(() => ""), 300);
4751
+ process.stderr.write(`[DingTalk:${this.name}] proactive send failed (${chunkLabel}): HTTP ${resp.status} ${detail}
4752
+ `);
4753
+ throw new Error(`DingTalk proactive send failed: HTTP ${resp.status}${detail ? ` ${detail}` : ""}`);
4754
+ }
4755
+ await resp.body?.cancel();
4756
+ return;
4757
+ }
4758
+ }
4648
4759
  getAccessToken() {
4649
4760
  return this.client.getConfig().access_token;
4650
4761
  }
@@ -4694,30 +4805,112 @@ var DingtalkChannel = class _DingtalkChannel extends ChannelBase {
4694
4805
  if (this.dedupTimer) {
4695
4806
  clearInterval(this.dedupTimer);
4696
4807
  }
4808
+ this.activeReactionKeys.clear();
4809
+ this.sessionReactionKeys.clear();
4697
4810
  this.client.disconnect();
4698
4811
  process.stderr.write(`[DingTalk:${this.name}] Disconnected.
4699
4812
  `);
4700
4813
  }
4701
4814
  /**
4702
4815
  * The chatId passed to onPromptStart/onPromptEnd is `conversationId ||
4703
- * sessionWebhook` (see message handler below). Reactions require a real
4704
- * conversation ID — skip the webhook-URL fallback case.
4816
+ * sessionWebhook` (see message handler below). Reactions and proactive
4817
+ * sends require a real conversation ID — skip the webhook-URL fallback case.
4705
4818
  */
4706
4819
  isConversationId(chatId) {
4707
4820
  return !!chatId && !/^https?:\/\//i.test(chatId);
4708
4821
  }
4709
- onPromptStart(chatId, _sessionId, messageId) {
4822
+ reactionKey(messageId, conversationId) {
4823
+ return `${conversationId}:${messageId}`;
4824
+ }
4825
+ rememberInboundMessageId(msgId) {
4826
+ this.inboundMessageIds.delete(msgId);
4827
+ this.inboundMessageIds.add(msgId);
4828
+ if (this.inboundMessageIds.size > 1e3) {
4829
+ const oldest = this.inboundMessageIds.values().next().value;
4830
+ if (oldest !== void 0)
4831
+ this.inboundMessageIds.delete(oldest);
4832
+ }
4833
+ }
4834
+ logReactionFailure(action, err) {
4835
+ process.stderr.write(`[DingTalk:${this.name}] ${action} failed: ${err instanceof Error ? err.message : err}
4836
+ `);
4837
+ }
4838
+ startReaction(chatId, messageId, sessionId) {
4710
4839
  if (!messageId || !this.isConversationId(chatId))
4711
4840
  return;
4712
- this.attachReaction(messageId, chatId).catch(() => {
4841
+ if (!this.inboundMessageIds.has(messageId))
4842
+ return;
4843
+ const key = this.reactionKey(messageId, chatId);
4844
+ if (this.activeReactionKeys.has(key))
4845
+ return;
4846
+ this.activeReactionKeys.add(key);
4847
+ if (sessionId) {
4848
+ let keys = this.sessionReactionKeys.get(sessionId);
4849
+ if (!keys) {
4850
+ keys = /* @__PURE__ */ new Map();
4851
+ this.sessionReactionKeys.set(sessionId, keys);
4852
+ }
4853
+ keys.set(key, { messageId, chatId });
4854
+ }
4855
+ this.attachReaction(messageId, chatId).then(() => {
4856
+ if (!this.activeReactionKeys.has(key)) {
4857
+ void this.recallReaction(messageId, chatId).catch((err) => {
4858
+ this.logReactionFailure("late reaction recall", err);
4859
+ });
4860
+ }
4861
+ }).catch((err) => {
4862
+ this.activeReactionKeys.delete(key);
4863
+ this.logReactionFailure("reaction attach", err);
4713
4864
  });
4714
4865
  }
4715
- onPromptEnd(chatId, _sessionId, messageId) {
4866
+ stopReaction(chatId, messageId, sessionId) {
4716
4867
  if (!messageId || !this.isConversationId(chatId))
4717
4868
  return;
4718
- this.recallReaction(messageId, chatId).catch(() => {
4869
+ const key = this.reactionKey(messageId, chatId);
4870
+ if (sessionId) {
4871
+ const keys = this.sessionReactionKeys.get(sessionId);
4872
+ if (keys) {
4873
+ keys.delete(key);
4874
+ if (keys.size === 0)
4875
+ this.sessionReactionKeys.delete(sessionId);
4876
+ }
4877
+ }
4878
+ if (!this.activeReactionKeys.delete(key))
4879
+ return;
4880
+ this.recallReaction(messageId, chatId).catch((err) => {
4881
+ this.logReactionFailure("reaction recall", err);
4719
4882
  });
4720
4883
  }
4884
+ /** Recall reactions left behind when a session dies without terminal lifecycle events. */
4885
+ onSessionDied(sessionId) {
4886
+ const keys = this.sessionReactionKeys.get(sessionId);
4887
+ if (keys) {
4888
+ this.sessionReactionKeys.delete(sessionId);
4889
+ for (const [key, { messageId, chatId }] of keys) {
4890
+ if (this.activeReactionKeys.delete(key)) {
4891
+ void this.recallReaction(messageId, chatId).catch((err) => {
4892
+ this.logReactionFailure("session-death reaction recall", err);
4893
+ });
4894
+ }
4895
+ }
4896
+ }
4897
+ super.onSessionDied(sessionId);
4898
+ }
4899
+ onTaskLifecycle(event) {
4900
+ if (event.type === "started") {
4901
+ this.startReaction(event.chatId, event.messageId, event.sessionId);
4902
+ return;
4903
+ }
4904
+ if (isTerminalTaskLifecycleType(event.type)) {
4905
+ this.stopReaction(event.chatId, event.messageId, event.sessionId);
4906
+ }
4907
+ }
4908
+ onPromptStart(chatId, sessionId, messageId) {
4909
+ this.startReaction(chatId, messageId, sessionId);
4910
+ }
4911
+ onPromptEnd(chatId, sessionId, messageId) {
4912
+ this.stopReaction(chatId, messageId, sessionId);
4913
+ }
4721
4914
  /**
4722
4915
  * Extract quoted/referenced message context from a reply.
4723
4916
  * DingTalk provides this via text.repliedMsg (newer) or quoteMessage (legacy).
@@ -4897,6 +5090,7 @@ var DingtalkChannel = class _DingtalkChannel extends ChannelBase {
4897
5090
  }
4898
5091
  if (msgId) {
4899
5092
  this.seenMessages.set(msgId, Date.now());
5093
+ this.rememberInboundMessageId(msgId);
4900
5094
  }
4901
5095
  const isGroup = data.conversationType === "2";
4902
5096
  const sessionWebhook = typeof data.sessionWebhook === "string" ? data.sessionWebhook : void 0;
@@ -11,10 +11,11 @@ import {
11
11
  sendMessage,
12
12
  sendTyping,
13
13
  uploadToCdn
14
- } from "./chunk-J3F7X3LW.js";
14
+ } from "./chunk-5B2WNM6V.js";
15
15
  import {
16
- ChannelBase
17
- } from "./chunk-HI55Z6PR.js";
16
+ ChannelBase,
17
+ isTerminalTaskLifecycleType
18
+ } from "./chunk-7DMQRPC7.js";
18
19
  import "./chunk-UFC57OYT.js";
19
20
  import "./chunk-K5PGHDBN.js";
20
21
  import {
@@ -419,6 +420,7 @@ var WeixinChannel = class extends ChannelBase {
419
420
  __name(this, "WeixinChannel");
420
421
  }
421
422
  abortController = null;
423
+ activeTypingChats = /* @__PURE__ */ new Set();
422
424
  baseUrl;
423
425
  token = "";
424
426
  constructor(name, config, bridge, options) {
@@ -492,12 +494,19 @@ var WeixinChannel = class extends ChannelBase {
492
494
  `);
493
495
  }
494
496
  onPromptStart(chatId) {
495
- this.setTyping(chatId, true).catch(() => {
496
- });
497
+ this.startTyping(chatId);
497
498
  }
498
499
  onPromptEnd(chatId) {
499
- this.setTyping(chatId, false).catch(() => {
500
- });
500
+ this.stopTyping(chatId);
501
+ }
502
+ onTaskLifecycle(event) {
503
+ if (event.type === "started") {
504
+ this.startTyping(event.chatId);
505
+ return;
506
+ }
507
+ if (isTerminalTaskLifecycleType(event.type)) {
508
+ this.stopTyping(event.chatId);
509
+ }
501
510
  }
502
511
  async handleInboundWithMedia(envelope, image, file) {
503
512
  if (image) {
@@ -597,6 +606,30 @@ var WeixinChannel = class extends ChannelBase {
597
606
  this.abortController.abort();
598
607
  this.abortController = null;
599
608
  }
609
+ this.activeTypingChats.clear();
610
+ }
611
+ startTyping(chatId) {
612
+ if (this.activeTypingChats.has(chatId))
613
+ return;
614
+ this.activeTypingChats.add(chatId);
615
+ const controller = this.abortController;
616
+ void this.setTyping(chatId, true).then((started) => {
617
+ if (controller !== this.abortController || controller?.signal.aborted) {
618
+ return;
619
+ }
620
+ if (!started) {
621
+ this.activeTypingChats.delete(chatId);
622
+ return;
623
+ }
624
+ if (!this.activeTypingChats.has(chatId)) {
625
+ void this.setTyping(chatId, false);
626
+ }
627
+ });
628
+ }
629
+ stopTyping(chatId) {
630
+ if (!this.activeTypingChats.delete(chatId))
631
+ return;
632
+ void this.setTyping(chatId, false);
600
633
  }
601
634
  async setTyping(userId, typing) {
602
635
  try {
@@ -610,13 +643,15 @@ var WeixinChannel = class extends ChannelBase {
610
643
  }
611
644
  }
612
645
  if (!ticket)
613
- return;
646
+ return false;
614
647
  await sendTyping(this.baseUrl, this.token, {
615
648
  ilink_user_id: userId,
616
649
  typing_ticket: ticket,
617
650
  status: typing ? TypingStatus.TYPING : TypingStatus.CANCEL
618
651
  });
652
+ return true;
619
653
  } catch {
654
+ return false;
620
655
  }
621
656
  }
622
657
  };
@@ -7,7 +7,7 @@ import {
7
7
  sanitizeLogText,
8
8
  sanitizePromptText,
9
9
  sanitizeSenderName
10
- } from "./chunk-HI55Z6PR.js";
10
+ } from "./chunk-7DMQRPC7.js";
11
11
  import "./chunk-UFC57OYT.js";
12
12
  import "./chunk-K5PGHDBN.js";
13
13
  import {
@@ -8,40 +8,41 @@ import {
8
8
  stopAndGetCapturedInput,
9
9
  stopEarlyInputCapture
10
10
  } from "./chunk-LWGLBVWA.js";
11
- import "./chunk-BFG6OZN7.js";
11
+ import "./chunk-6QTCOQX7.js";
12
12
  import "./chunk-5P5XGNYH.js";
13
13
  import "./chunk-K5PGHDBN.js";
14
14
  import "./chunk-SKAZWEV5.js";
15
15
  import "./chunk-QOMAHFYI.js";
16
16
  import "./chunk-G7OQ3RFJ.js";
17
17
  import "./chunk-LKWAVAB5.js";
18
- import "./chunk-MEQWZGK5.js";
19
- import "./chunk-UANCYOOQ.js";
18
+ import "./chunk-L7OJ3ZO3.js";
19
+ import "./chunk-R6RI2HIC.js";
20
20
  import "./chunk-2MPVVENX.js";
21
21
  import "./chunk-ZTQ26VBE.js";
22
22
  import "./chunk-SJBIFVD2.js";
23
23
  import "./chunk-MLZQVCF3.js";
24
- import "./chunk-S5EQPDTM.js";
25
24
  import "./chunk-LQ7TMOCE.js";
26
25
  import "./chunk-E5A7LHNN.js";
26
+ import "./chunk-BPFJQGY7.js";
27
27
  import "./chunk-GO6LNQXT.js";
28
28
  import "./chunk-B236XPGF.js";
29
29
  import "./chunk-YXK4GPYO.js";
30
30
  import "./chunk-TOAUDIS7.js";
31
31
  import "./chunk-NPQWQYU6.js";
32
- import "./chunk-HJDF3ZVU.js";
32
+ import "./chunk-CHY5C5T4.js";
33
33
  import "./chunk-E6US47KI.js";
34
34
  import "./chunk-UWCTAVOD.js";
35
35
  import "./chunk-OFEVLU4C.js";
36
36
  import "./chunk-OMX7CUOE.js";
37
37
  import "./chunk-MOUXUCXQ.js";
38
38
  import "./chunk-BZHLWC6T.js";
39
- import "./chunk-UQFP2FEF.js";
40
- import "./chunk-4VZH35PN.js";
39
+ import "./chunk-DG573EOO.js";
40
+ import "./chunk-MTNTVOJR.js";
41
41
  import "./chunk-TENOUWY2.js";
42
42
  import "./chunk-GLPV75ES.js";
43
43
  import "./chunk-22IFUCVR.js";
44
44
  import "./chunk-T42ACHFI.js";
45
+ import "./chunk-SIUQ3YYX.js";
45
46
  import "./chunk-YTFBURQD.js";
46
47
  import "./chunk-YPCPZSZB.js";
47
48
  import "./chunk-IRJWHZWU.js";
@@ -5,31 +5,30 @@ import {
5
5
  } from "./chunk-XKSCTXPK.js";
6
6
  import {
7
7
  CommitAttributionService,
8
- DEFAULT_DIFF_OPTIONS,
9
8
  FileEncoding,
10
9
  StructuredToolError,
11
10
  checkPriorRead,
12
- createPatch,
11
+ createPatchSmart,
13
12
  detectLineEnding,
14
13
  getDiffStat,
15
14
  needsUtf8Bom,
16
15
  safeLiteralReplace
17
- } from "./chunk-BFG6OZN7.js";
16
+ } from "./chunk-6QTCOQX7.js";
18
17
  import "./chunk-5P5XGNYH.js";
19
18
  import "./chunk-K5PGHDBN.js";
20
19
  import "./chunk-SKAZWEV5.js";
21
20
  import "./chunk-QOMAHFYI.js";
22
21
  import "./chunk-G7OQ3RFJ.js";
23
22
  import "./chunk-LKWAVAB5.js";
24
- import "./chunk-MEQWZGK5.js";
25
- import "./chunk-UANCYOOQ.js";
23
+ import "./chunk-L7OJ3ZO3.js";
24
+ import "./chunk-R6RI2HIC.js";
26
25
  import "./chunk-2MPVVENX.js";
27
26
  import "./chunk-ZTQ26VBE.js";
28
27
  import "./chunk-SJBIFVD2.js";
29
28
  import "./chunk-MLZQVCF3.js";
30
- import "./chunk-S5EQPDTM.js";
31
29
  import "./chunk-LQ7TMOCE.js";
32
30
  import "./chunk-E5A7LHNN.js";
31
+ import "./chunk-BPFJQGY7.js";
33
32
  import "./chunk-GO6LNQXT.js";
34
33
  import "./chunk-B236XPGF.js";
35
34
  import "./chunk-YXK4GPYO.js";
@@ -42,7 +41,7 @@ import {
42
41
  getLanguageFromFilePath,
43
42
  getSpecificMimeType,
44
43
  logFileOperation
45
- } from "./chunk-HJDF3ZVU.js";
44
+ } from "./chunk-CHY5C5T4.js";
46
45
  import "./chunk-E6US47KI.js";
47
46
  import "./chunk-UWCTAVOD.js";
48
47
  import "./chunk-OFEVLU4C.js";
@@ -52,16 +51,17 @@ import {
52
51
  isTeamAutoMemPath
53
52
  } from "./chunk-MOUXUCXQ.js";
54
53
  import "./chunk-BZHLWC6T.js";
55
- import "./chunk-UQFP2FEF.js";
54
+ import "./chunk-DG573EOO.js";
56
55
  import {
57
56
  BaseDeclarativeTool,
58
57
  ToolDisplayNames,
59
58
  ToolNames
60
- } from "./chunk-4VZH35PN.js";
59
+ } from "./chunk-MTNTVOJR.js";
61
60
  import "./chunk-TENOUWY2.js";
62
61
  import "./chunk-GLPV75ES.js";
63
62
  import "./chunk-22IFUCVR.js";
64
63
  import "./chunk-T42ACHFI.js";
64
+ import "./chunk-SIUQ3YYX.js";
65
65
  import "./chunk-YTFBURQD.js";
66
66
  import "./chunk-YPCPZSZB.js";
67
67
  import "./chunk-IRJWHZWU.js";
@@ -641,13 +641,12 @@ var EditToolInvocation = class {
641
641
  throw new StructuredToolError(editData.error.raw, editData.error.type);
642
642
  }
643
643
  const fileName = path.basename(this.params.file_path);
644
- const fileDiff = createPatch(
644
+ const fileDiff = createPatchSmart(
645
645
  fileName,
646
646
  editData.currentContent ?? "",
647
647
  editData.newContent,
648
648
  "Current",
649
- "Proposed",
650
- DEFAULT_DIFF_OPTIONS
649
+ "Proposed"
651
650
  );
652
651
  const confirmationDetails = {
653
652
  type: "edit",
@@ -792,14 +791,12 @@ var EditToolInvocation = class {
792
791
  originallyProposedContent,
793
792
  editData.newContent
794
793
  );
795
- const fileDiff = createPatch(
794
+ const fileDiff = createPatchSmart(
796
795
  fileName,
797
796
  editData.currentContent ?? "",
798
- // Should not be null here if not isNewFile
799
797
  editData.newContent,
800
798
  "Current",
801
- "Proposed",
802
- DEFAULT_DIFF_OPTIONS
799
+ "Proposed"
803
800
  );
804
801
  const displayResult = {
805
802
  fileDiff,
@@ -171,6 +171,7 @@ var en_default = {
171
171
  "toolDisplayName.TaskStop": "toolDisplayName.TaskStop",
172
172
  "toolDisplayName.TeamCreate": "toolDisplayName.TeamCreate",
173
173
  "toolDisplayName.TeamDelete": "toolDisplayName.TeamDelete",
174
+ "toolDisplayName.TeamPlanApproval": "toolDisplayName.TeamPlanApproval",
174
175
  "toolDisplayName.SendMessage": "toolDisplayName.SendMessage",
175
176
  "toolDisplayName.StructuredOutput": "toolDisplayName.StructuredOutput",
176
177
  "toolDisplayName.Monitor": "toolDisplayName.Monitor",
@@ -1806,6 +1807,7 @@ var en_default = {
1806
1807
  "Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).": "Hide tool output and thinking for a cleaner view (toggle with Ctrl+O).",
1807
1808
  "Press Ctrl+O to show full tool output": "Press Ctrl+O to show full tool output",
1808
1809
  "Switch to plan mode or exit plan mode": "Switch to plan mode or exit plan mode",
1810
+ "Set how hard reasoning-capable models think ({{tiers}}); mapped and clamped per provider.": "Set how hard reasoning-capable models think ({{tiers}}); mapped and clamped per provider.",
1809
1811
  "Set a goal \u2014 keep working until the condition is met": "Set a goal \u2014 keep working until the condition is met",
1810
1812
  "Exited plan mode. Previous approval mode restored.": "Exited plan mode. Previous approval mode restored.",
1811
1813
  "Enabled plan mode. The agent will analyze and plan without executing tools.": "Enabled plan mode. The agent will analyze and plan without executing tools.",
@@ -4,45 +4,46 @@ import {
4
4
  GitWorktreeService,
5
5
  writeWorktreeSession,
6
6
  writeWorktreeSessionMarker
7
- } from "./chunk-BFG6OZN7.js";
7
+ } from "./chunk-6QTCOQX7.js";
8
8
  import "./chunk-5P5XGNYH.js";
9
9
  import "./chunk-K5PGHDBN.js";
10
10
  import "./chunk-SKAZWEV5.js";
11
11
  import "./chunk-QOMAHFYI.js";
12
12
  import "./chunk-G7OQ3RFJ.js";
13
13
  import "./chunk-LKWAVAB5.js";
14
- import "./chunk-MEQWZGK5.js";
15
- import "./chunk-UANCYOOQ.js";
14
+ import "./chunk-L7OJ3ZO3.js";
15
+ import "./chunk-R6RI2HIC.js";
16
16
  import "./chunk-2MPVVENX.js";
17
17
  import "./chunk-ZTQ26VBE.js";
18
18
  import "./chunk-SJBIFVD2.js";
19
19
  import "./chunk-MLZQVCF3.js";
20
- import "./chunk-S5EQPDTM.js";
21
20
  import "./chunk-LQ7TMOCE.js";
22
21
  import "./chunk-E5A7LHNN.js";
22
+ import "./chunk-BPFJQGY7.js";
23
23
  import "./chunk-GO6LNQXT.js";
24
24
  import "./chunk-B236XPGF.js";
25
25
  import "./chunk-YXK4GPYO.js";
26
26
  import "./chunk-TOAUDIS7.js";
27
27
  import "./chunk-NPQWQYU6.js";
28
- import "./chunk-HJDF3ZVU.js";
28
+ import "./chunk-CHY5C5T4.js";
29
29
  import "./chunk-E6US47KI.js";
30
30
  import "./chunk-UWCTAVOD.js";
31
31
  import "./chunk-OFEVLU4C.js";
32
32
  import "./chunk-OMX7CUOE.js";
33
33
  import "./chunk-MOUXUCXQ.js";
34
34
  import "./chunk-BZHLWC6T.js";
35
- import "./chunk-UQFP2FEF.js";
35
+ import "./chunk-DG573EOO.js";
36
36
  import {
37
37
  BaseDeclarativeTool,
38
38
  BaseToolInvocation,
39
39
  ToolDisplayNames,
40
40
  ToolNames
41
- } from "./chunk-4VZH35PN.js";
41
+ } from "./chunk-MTNTVOJR.js";
42
42
  import "./chunk-TENOUWY2.js";
43
43
  import "./chunk-GLPV75ES.js";
44
44
  import "./chunk-22IFUCVR.js";
45
45
  import "./chunk-T42ACHFI.js";
46
+ import "./chunk-SIUQ3YYX.js";
46
47
  import "./chunk-YTFBURQD.js";
47
48
  import "./chunk-YPCPZSZB.js";
48
49
  import "./chunk-IRJWHZWU.js";
@@ -1,47 +1,48 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
- import "./chunk-BFG6OZN7.js";
3
+ import "./chunk-6QTCOQX7.js";
4
4
  import "./chunk-5P5XGNYH.js";
5
5
  import "./chunk-K5PGHDBN.js";
6
6
  import "./chunk-SKAZWEV5.js";
7
7
  import "./chunk-QOMAHFYI.js";
8
8
  import "./chunk-G7OQ3RFJ.js";
9
9
  import "./chunk-LKWAVAB5.js";
10
- import "./chunk-MEQWZGK5.js";
11
- import "./chunk-UANCYOOQ.js";
10
+ import "./chunk-L7OJ3ZO3.js";
11
+ import "./chunk-R6RI2HIC.js";
12
12
  import "./chunk-2MPVVENX.js";
13
13
  import "./chunk-ZTQ26VBE.js";
14
14
  import "./chunk-SJBIFVD2.js";
15
15
  import "./chunk-MLZQVCF3.js";
16
+ import "./chunk-LQ7TMOCE.js";
17
+ import "./chunk-E5A7LHNN.js";
16
18
  import {
17
19
  buildSubagentPlanToolBlockedResult,
18
20
  isPlanLifecycleToolUnavailableInSubagent
19
- } from "./chunk-S5EQPDTM.js";
20
- import "./chunk-LQ7TMOCE.js";
21
- import "./chunk-E5A7LHNN.js";
21
+ } from "./chunk-BPFJQGY7.js";
22
22
  import "./chunk-GO6LNQXT.js";
23
23
  import "./chunk-B236XPGF.js";
24
24
  import "./chunk-YXK4GPYO.js";
25
25
  import "./chunk-TOAUDIS7.js";
26
26
  import "./chunk-NPQWQYU6.js";
27
- import "./chunk-HJDF3ZVU.js";
27
+ import "./chunk-CHY5C5T4.js";
28
28
  import "./chunk-E6US47KI.js";
29
29
  import "./chunk-UWCTAVOD.js";
30
30
  import "./chunk-OFEVLU4C.js";
31
31
  import "./chunk-OMX7CUOE.js";
32
32
  import "./chunk-MOUXUCXQ.js";
33
33
  import "./chunk-BZHLWC6T.js";
34
- import "./chunk-UQFP2FEF.js";
34
+ import "./chunk-DG573EOO.js";
35
35
  import {
36
36
  BaseDeclarativeTool,
37
37
  BaseToolInvocation,
38
38
  ToolDisplayNames,
39
39
  ToolNames
40
- } from "./chunk-4VZH35PN.js";
40
+ } from "./chunk-MTNTVOJR.js";
41
41
  import "./chunk-TENOUWY2.js";
42
42
  import "./chunk-GLPV75ES.js";
43
43
  import "./chunk-22IFUCVR.js";
44
44
  import "./chunk-T42ACHFI.js";
45
+ import "./chunk-SIUQ3YYX.js";
45
46
  import "./chunk-YTFBURQD.js";
46
47
  import "./chunk-YPCPZSZB.js";
47
48
  import "./chunk-IRJWHZWU.js";