@qwen-code/qwen-code 0.18.4 → 0.18.5-preview.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (179) hide show
  1. package/bundled/qc-helper/SKILL.md +13 -5
  2. package/bundled/qc-helper/docs/configuration/_meta.ts +1 -0
  3. package/bundled/qc-helper/docs/configuration/auth.md +75 -54
  4. package/bundled/qc-helper/docs/configuration/model-providers.md +221 -185
  5. package/bundled/qc-helper/docs/configuration/qwen-ignore.md +31 -15
  6. package/bundled/qc-helper/docs/configuration/settings.md +70 -53
  7. package/bundled/qc-helper/docs/configuration/themes.md +7 -4
  8. package/bundled/qc-helper/docs/extension/extension-releasing.md +1 -1
  9. package/bundled/qc-helper/docs/extension/introduction.md +27 -21
  10. package/bundled/qc-helper/docs/features/approval-mode.md +2 -0
  11. package/bundled/qc-helper/docs/features/arena.md +3 -3
  12. package/bundled/qc-helper/docs/features/channels/overview.md +1 -1
  13. package/bundled/qc-helper/docs/features/channels/plugins.md +1 -1
  14. package/bundled/qc-helper/docs/features/commands.md +6 -1
  15. package/bundled/qc-helper/docs/features/headless.md +1 -1
  16. package/bundled/qc-helper/docs/features/mcp.md +78 -10
  17. package/bundled/qc-helper/docs/features/sandbox.md +2 -2
  18. package/bundled/qc-helper/docs/features/tool-use-summaries.md +1 -1
  19. package/bundled/qc-helper/docs/integration-github-action.md +2 -2
  20. package/bundled/qc-helper/docs/overview.md +1 -1
  21. package/bundled/qc-helper/docs/quickstart.md +9 -5
  22. package/bundled/qc-helper/docs/qwen-serve.md +14 -2
  23. package/bundled/qc-helper/docs/support/tos-privacy.md +1 -1
  24. package/chunks/{agent-LYTC56HT.js → agent-P4KSTVXX.js} +24 -22
  25. package/chunks/{agent-headless-FPUP5WHP.js → agent-headless-QUAPWF55.js} +24 -22
  26. package/chunks/{anthropicContentGenerator-OLOGBVLP.js → anthropicContentGenerator-7352A7I5.js} +17 -14
  27. package/chunks/artifact-tool-5J4HUZAV.js +675 -0
  28. package/chunks/{askUserQuestion-ANRVSBIJ.js → askUserQuestion-HF7HCWDD.js} +20 -7
  29. package/chunks/{ca-K6MD665I.js → ca-7WC7ELX6.js} +1 -0
  30. package/chunks/chunk-22IFUCVR.js +291 -0
  31. package/chunks/{chunk-M5VYHAHT.js → chunk-2BIF2NVV.js} +2 -2
  32. package/chunks/{chunk-AQDPHFDZ.js → chunk-2QDQTWCI.js} +1 -1
  33. package/chunks/{chunk-2ES3D3TW.js → chunk-3BR4OIOE.js} +3 -3
  34. package/chunks/{chunk-N5QHMPZU.js → chunk-3UALQ56H.js} +1 -1
  35. package/chunks/{chunk-5RVEAAD2.js → chunk-BC5POO46.js} +8 -7
  36. package/chunks/{chunk-DZCZZPCY.js → chunk-BGUDAULQ.js} +11 -290
  37. package/chunks/{chunk-FPZF3BNV.js → chunk-BNXANYLH.js} +1 -1
  38. package/chunks/{chunk-IKOWINH4.js → chunk-C4K3FEQ2.js} +42 -2
  39. package/chunks/{chunk-PTGKSUUJ.js → chunk-CGEGHF2C.js} +2 -207
  40. package/chunks/chunk-EEEZIVFJ.js +908 -0
  41. package/chunks/{chunk-GBTJHKQ6.js → chunk-EIJYMXXX.js} +619 -135
  42. package/chunks/chunk-EJYJYJZ2.js +3703 -0
  43. package/chunks/{chunk-F6FP3URI.js → chunk-EW6C27XX.js} +1 -1
  44. package/chunks/{chunk-HU3RKEK2.js → chunk-F6XNTYNE.js} +216 -1
  45. package/chunks/{chunk-4HMWGHPP.js → chunk-GZCJS5WH.js} +2 -2
  46. package/chunks/{chunk-E5SRTXRG.js → chunk-HGNSRCRB.js} +1 -1
  47. package/chunks/{chunk-IUEQOXOI.js → chunk-KBXLIVWQ.js} +2 -2
  48. package/chunks/{chunk-JJHY7NAD.js → chunk-L7U2RI5O.js} +59 -57
  49. package/chunks/{chunk-JN6FVOPP.js → chunk-NKJ6LRCR.js} +2 -2
  50. package/chunks/{chunk-7OCZ77KA.js → chunk-NWLUISRA.js} +1 -1
  51. package/chunks/{chunk-JIJBNW4A.js → chunk-OTBK43JR.js} +1 -1
  52. package/chunks/{chunk-WWU2KUSR.js → chunk-PRYMDRBV.js} +1 -1
  53. package/chunks/{chunk-KQIKOTQJ.js → chunk-RYLJU2DY.js} +60 -5
  54. package/chunks/{chunk-VWPDSQZY.js → chunk-T2VDEFUU.js} +2 -2
  55. package/chunks/{chunk-LXUQBWQA.js → chunk-T336V435.js} +93 -45
  56. package/chunks/{chunk-4TW2JM5Q.js → chunk-TXVGVZYR.js} +3 -3
  57. package/chunks/{chunk-6Z2MVJIJ.js → chunk-UMRZ7XCR.js} +172 -5017
  58. package/chunks/{chunk-7GX7XYZU.js → chunk-XU5P23GN.js} +3 -3
  59. package/chunks/{chunk-SZWDOOGV.js → chunk-ZC675NGC.js} +11 -11
  60. package/chunks/{chunk-32SSXBMG.js → chunk-ZXNEOCW2.js} +8049 -5520
  61. package/chunks/{computer-use-P4WQBATW.js → computer-use-4TLHI3UR.js} +26 -23
  62. package/chunks/contextCommand-HFEITKSR.js +56 -0
  63. package/chunks/{cron-create-OKGQO6GX.js → cron-create-A5637KCI.js} +12 -9
  64. package/chunks/{cron-delete-DTJP7L6O.js → cron-delete-AADOSEOZ.js} +4 -4
  65. package/chunks/{cron-list-VKZUASFG.js → cron-list-OFCPTT2Y.js} +4 -4
  66. package/chunks/{de-K2F3T3TR.js → de-ACHALDED.js} +1 -0
  67. package/chunks/{dist-OLC6NBSB.js → dist-DZ6AJDX4.js} +1 -1
  68. package/chunks/{dist-QUSDBLAK.js → dist-ZBX7LPJZ.js} +6 -1
  69. package/chunks/{edit-CS7DSS4Z.js → edit-B7H73V6O.js} +24 -22
  70. package/chunks/{en-KGSAKBJP.js → en-7OGNWWME.js} +49 -0
  71. package/chunks/{enter-worktree-PA4HPHJK.js → enter-worktree-GG7ZHYPS.js} +24 -22
  72. package/chunks/{enterPlanMode-SFE5AFKZ.js → enterPlanMode-RHTAKG52.js} +32 -28
  73. package/chunks/{exit-worktree-FR3AZTC6.js → exit-worktree-U7VQZRMG.js} +24 -22
  74. package/chunks/{exitPlanMode-AHOUO44D.js → exitPlanMode-S35A36II.js} +36 -28
  75. package/chunks/{fr-2CAQEOK6.js → fr-GVKZ27MF.js} +1 -0
  76. package/chunks/{geminiContentGenerator-AXCVDKGI.js → geminiContentGenerator-W7KVATBA.js} +4 -4
  77. package/chunks/{glob-BQPAW3IW.js → glob-WOFF7ECI.js} +26 -23
  78. package/chunks/{grep-2F7BL5TQ.js → grep-MWNYWYWQ.js} +24 -22
  79. package/chunks/{ja-QWL7V6OJ.js → ja-FKZ2WZ4D.js} +1 -0
  80. package/chunks/{keychain-token-storage-ALKQXYJQ.js → keychain-token-storage-CSYMNRPP.js} +2 -2
  81. package/chunks/{loop-wakeup-RX6YIUSG.js → loop-wakeup-DGSMT4N6.js} +5 -5
  82. package/chunks/{ls-6PLNWHMU.js → ls-UGRZ4ZOM.js} +6 -6
  83. package/chunks/{lsp-3HFQU4OF.js → lsp-72IJURW3.js} +2 -2
  84. package/chunks/{monitor-YTTMDFW2.js → monitor-AYUINLYN.js} +24 -22
  85. package/chunks/{notebook-edit-7TNZMTBR.js → notebook-edit-EP4D4WFD.js} +25 -23
  86. package/chunks/{openaiContentGenerator-JA6YXXPI.js → openaiContentGenerator-SLYYF7AM.js} +12 -13
  87. package/chunks/{pt-2SPOLMAY.js → pt-SY5NCFGR.js} +1 -0
  88. package/chunks/{qwenContentGenerator-NBOVGW7B.js → qwenContentGenerator-VZ7JYU4A.js} +27 -25
  89. package/chunks/{qwenOAuth2-XWC5SU63.js → qwenOAuth2-K4AASPCV.js} +5 -4
  90. package/chunks/{read-file-RUBU3KUA.js → read-file-65EQ53KS.js} +9 -8
  91. package/chunks/{ripGrep-TPFC7KZF.js → ripGrep-5XLHJDDM.js} +24 -22
  92. package/chunks/{ru-35IVJTEH.js → ru-FWNXJG4F.js} +1 -0
  93. package/chunks/{scheduler-NTVF45LR.js → scheduler-5GLJSA2H.js} +73 -27
  94. package/chunks/{send-message-IIT3SHA7.js → send-message-URUZ7PLA.js} +24 -4
  95. package/chunks/{serve-J6VG37OX.js → serve-MUROZGCG.js} +7575 -6916
  96. package/chunks/{shell-EQQEHEFI.js → shell-ET3BQWKB.js} +24 -22
  97. package/chunks/{skill-QWRWJCQJ.js → skill-YEYABCAF.js} +11 -10
  98. package/chunks/{src-LNADIG5P.js → src-POVOI65Y.js} +165 -66
  99. package/chunks/{syntheticOutput-H67FYXU7.js → syntheticOutput-65FRJGWM.js} +3 -3
  100. package/chunks/{task-create-OVXHSHAI.js → task-create-IH45HOFT.js} +6 -6
  101. package/chunks/{task-list-QUUCQJ3U.js → task-list-FUB6JWSX.js} +5 -5
  102. package/chunks/{task-stop-WA5DMTKK.js → task-stop-P6IOHQM3.js} +2 -2
  103. package/chunks/{task-update-PC5427TI.js → task-update-RTUT7LJV.js} +6 -6
  104. package/chunks/{team-create-TXWQL777.js → team-create-EFZFKQFP.js} +28 -26
  105. package/chunks/{team-delete-ZTEMYRJ3.js → team-delete-RXGYRMHC.js} +5 -5
  106. package/chunks/{todoWrite-J6L6ELD6.js → todoWrite-O6JK24G6.js} +4 -4
  107. package/chunks/{tool-search-JAVM7ABF.js → tool-search-BRJC42TE.js} +9 -8
  108. package/chunks/{web-fetch-6XLPPTP7.js → web-fetch-KUMBROUI.js} +4 -4
  109. package/chunks/{workflow-7LN3L6KK.js → workflow-UDRBNFTT.js} +557 -97
  110. package/chunks/{write-file-DAKE7YKB.js → write-file-F7TAHAHF.js} +24 -22
  111. package/chunks/{zh-X4KM6MTW.js → zh-3RMSEO5M.js} +49 -0
  112. package/chunks/{zh-TW-BSG6BUWK.js → zh-TW-R7WRLTJS.js} +49 -0
  113. package/cli.js +9205 -5426
  114. package/locales/ca.js +2 -1
  115. package/locales/de.js +1 -0
  116. package/locales/en.js +70 -0
  117. package/locales/fr.js +1 -0
  118. package/locales/ja.js +1 -0
  119. package/locales/pt.js +1 -0
  120. package/locales/ru.js +1 -0
  121. package/locales/zh-TW.js +67 -0
  122. package/locales/zh.js +67 -0
  123. package/package.json +3 -2
  124. package/web-shell/assets/{arc-CRFN10gD.js → arc-DHUeMnnj.js} +1 -1
  125. package/web-shell/assets/{architectureDiagram-3BPJPVTR-IRlu1CpH.js → architectureDiagram-3BPJPVTR-DlX12yyj.js} +1 -1
  126. package/web-shell/assets/{blockDiagram-GPEHLZMM-htIZ6iw8.js → blockDiagram-GPEHLZMM-DTFUXMUT.js} +1 -1
  127. package/web-shell/assets/{c4Diagram-AAUBKEIU-A2GoRq3O.js → c4Diagram-AAUBKEIU-CWdB54fk.js} +1 -1
  128. package/web-shell/assets/channel-C3WhMjjP.js +1 -0
  129. package/web-shell/assets/{chunk-2J33WTMH-CdP2AC6u.js → chunk-2J33WTMH-CF5C5jNR.js} +1 -1
  130. package/web-shell/assets/{chunk-4BX2VUAB-DrA07nW2.js → chunk-4BX2VUAB-Cw7Ydfji.js} +1 -1
  131. package/web-shell/assets/{chunk-55IACEB6-CFGnVU2f.js → chunk-55IACEB6-CnbI1ZCw.js} +1 -1
  132. package/web-shell/assets/{chunk-727SXJPM-BTMkq3Tk.js → chunk-727SXJPM-DmSy00Pe.js} +1 -1
  133. package/web-shell/assets/{chunk-AQP2D5EJ-C9sYg04Z.js → chunk-AQP2D5EJ-DgNgXqBu.js} +1 -1
  134. package/web-shell/assets/{chunk-FMBD7UC4-Cag-cj6I.js → chunk-FMBD7UC4-tz2IvOXv.js} +1 -1
  135. package/web-shell/assets/{chunk-ND2GUHAM-CDSTFoR7.js → chunk-ND2GUHAM-DaBLEBPa.js} +1 -1
  136. package/web-shell/assets/{chunk-QZHKN3VN-CN9Z6oOs.js → chunk-QZHKN3VN-DVCQST3O.js} +1 -1
  137. package/web-shell/assets/classDiagram-4FO5ZUOK-CQ6TXPif.js +1 -0
  138. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CQ6TXPif.js +1 -0
  139. package/web-shell/assets/{cose-bilkent-S5V4N54A-DuN9j8Du.js → cose-bilkent-S5V4N54A-CAKTcdCQ.js} +1 -1
  140. package/web-shell/assets/{dagre-BM42HDAG-ByCWe45f.js → dagre-BM42HDAG-BdkBwlKg.js} +1 -1
  141. package/web-shell/assets/{diagram-2AECGRRQ-eWyU_pKZ.js → diagram-2AECGRRQ-DYt3G65F.js} +1 -1
  142. package/web-shell/assets/{diagram-5GNKFQAL-0Bfu3Fq5.js → diagram-5GNKFQAL-BWvROWjY.js} +1 -1
  143. package/web-shell/assets/{diagram-KO2AKTUF-B6KBKkQP.js → diagram-KO2AKTUF-BvvgwIaQ.js} +1 -1
  144. package/web-shell/assets/{diagram-LMA3HP47-TToDmeA_.js → diagram-LMA3HP47-E7NLSNKg.js} +1 -1
  145. package/web-shell/assets/{diagram-OG6HWLK6-CQCkC2Yx.js → diagram-OG6HWLK6-CYmUBgpE.js} +1 -1
  146. package/web-shell/assets/{erDiagram-TEJ5UH35-Cm9ls1iB.js → erDiagram-TEJ5UH35-BU5gY30h.js} +1 -1
  147. package/web-shell/assets/{flowDiagram-I6XJVG4X-Dyoz80Pv.js → flowDiagram-I6XJVG4X-V_ZssSZ9.js} +1 -1
  148. package/web-shell/assets/{ganttDiagram-6RSMTGT7-Cfut9yaU.js → ganttDiagram-6RSMTGT7-QIShlsdI.js} +1 -1
  149. package/web-shell/assets/{gitGraphDiagram-PVQCEYII-BCuJdlfD.js → gitGraphDiagram-PVQCEYII-DJxdu2YS.js} +1 -1
  150. package/web-shell/assets/index-BPnhI7gl.css +1 -0
  151. package/web-shell/assets/index-De4rqTsW.js +706 -0
  152. package/web-shell/assets/{infoDiagram-5YYISTIA-CXKxF2VL.js → infoDiagram-5YYISTIA-BqjdrFeO.js} +1 -1
  153. package/web-shell/assets/{ishikawaDiagram-YF4QCWOH-DE7HWSU8.js → ishikawaDiagram-YF4QCWOH-BP_a2YZ2.js} +1 -1
  154. package/web-shell/assets/{journeyDiagram-JHISSGLW-D__YUfds.js → journeyDiagram-JHISSGLW-BXg-S3Lk.js} +1 -1
  155. package/web-shell/assets/{kanban-definition-UN3LZRKU-D82R169M.js → kanban-definition-UN3LZRKU-BksAkdEJ.js} +1 -1
  156. package/web-shell/assets/{linear-DpyMbKqT.js → linear-D2m9-ODE.js} +1 -1
  157. package/web-shell/assets/{mermaid.core-D1KEFDhn.js → mermaid.core-dTtkZp2F.js} +5 -5
  158. package/web-shell/assets/{mindmap-definition-RKZ34NQL-BwVUFGFE.js → mindmap-definition-RKZ34NQL-Bft9my8O.js} +1 -1
  159. package/web-shell/assets/{pieDiagram-4H26LBE5-BO_qoEGx.js → pieDiagram-4H26LBE5-Cw8S-alZ.js} +1 -1
  160. package/web-shell/assets/{quadrantDiagram-W4KKPZXB-Cx0ZaWPo.js → quadrantDiagram-W4KKPZXB-DaDoTMts.js} +1 -1
  161. package/web-shell/assets/{requirementDiagram-4Y6WPE33-BJPXejOA.js → requirementDiagram-4Y6WPE33-Cp5kSpwj.js} +1 -1
  162. package/web-shell/assets/{sankeyDiagram-5OEKKPKP-C1xeIL9i.js → sankeyDiagram-5OEKKPKP-CW8RsJJZ.js} +1 -1
  163. package/web-shell/assets/{sequenceDiagram-3UESZ5HK-CSYKQUjf.js → sequenceDiagram-3UESZ5HK-DTfpIiJK.js} +1 -1
  164. package/web-shell/assets/{stateDiagram-AJRCARHV-d9hiHlAW.js → stateDiagram-AJRCARHV-DixFVzEs.js} +1 -1
  165. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DZgE04s3.js +1 -0
  166. package/web-shell/assets/{timeline-definition-PNZ67QCA-BhCBkq8k.js → timeline-definition-PNZ67QCA-DYsbXn5l.js} +1 -1
  167. package/web-shell/assets/{vennDiagram-CIIHVFJN-DPPFWp_y.js → vennDiagram-CIIHVFJN-HUpRpuUp.js} +1 -1
  168. package/web-shell/assets/{wardley-L42UT6IY-CcOUIgXY.js → wardley-L42UT6IY-cT3nQH_T.js} +1 -1
  169. package/web-shell/assets/{wardleyDiagram-YWT4CUSO-p7oR5X7r.js → wardleyDiagram-YWT4CUSO-Dmm7J6Qc.js} +1 -1
  170. package/web-shell/assets/{xychartDiagram-2RQKCTM6-Dfr7-SEy.js → xychartDiagram-2RQKCTM6-CX0L5p9C.js} +1 -1
  171. package/web-shell/index.html +3 -3
  172. package/chunks/chunk-77WXWU44.js +0 -26
  173. package/chunks/contextCommand-POQ6GYN3.js +0 -54
  174. package/web-shell/assets/channel-WwImfsc7.js +0 -1
  175. package/web-shell/assets/classDiagram-4FO5ZUOK-CJKQYFeJ.js +0 -1
  176. package/web-shell/assets/classDiagram-v2-Q7XG4LA2-CJKQYFeJ.js +0 -1
  177. package/web-shell/assets/index-BDZiTAkl.css +0 -1
  178. package/web-shell/assets/index-DaebdpHq.js +0 -516
  179. package/web-shell/assets/stateDiagram-v2-BHNVJYJU-DgReoybQ.js +0 -1
@@ -4,46 +4,48 @@ import {
4
4
  Client,
5
5
  StdioClientTransport,
6
6
  extract
7
- } from "./chunk-32SSXBMG.js";
7
+ } from "./chunk-ZXNEOCW2.js";
8
8
  import "./chunk-K5PGHDBN.js";
9
- import "./chunk-7GX7XYZU.js";
10
- import "./chunk-7OCZ77KA.js";
11
- import "./chunk-2ES3D3TW.js";
9
+ import "./chunk-TXVGVZYR.js";
10
+ import "./chunk-XU5P23GN.js";
11
+ import "./chunk-2BIF2NVV.js";
12
+ import "./chunk-NWLUISRA.js";
13
+ import "./chunk-3BR4OIOE.js";
12
14
  import "./chunk-2MPVVENX.js";
13
15
  import "./chunk-ZTQ26VBE.js";
14
- import "./chunk-4HMWGHPP.js";
15
- import "./chunk-4TW2JM5Q.js";
16
- import "./chunk-M5VYHAHT.js";
16
+ import "./chunk-GZCJS5WH.js";
17
17
  import "./chunk-MLZQVCF3.js";
18
18
  import "./chunk-LD2XBG6Z.js";
19
- import "./chunk-JIJBNW4A.js";
20
- import "./chunk-E5SRTXRG.js";
21
- import "./chunk-77WXWU44.js";
22
- import "./chunk-WWU2KUSR.js";
19
+ import "./chunk-OTBK43JR.js";
20
+ import "./chunk-HGNSRCRB.js";
21
+ import "./chunk-EEEZIVFJ.js";
22
+ import "./chunk-PRYMDRBV.js";
23
23
  import {
24
24
  safeJsonStringify
25
- } from "./chunk-6Z2MVJIJ.js";
25
+ } from "./chunk-UMRZ7XCR.js";
26
26
  import "./chunk-3PJXIDKI.js";
27
27
  import "./chunk-UWCTAVOD.js";
28
28
  import "./chunk-OFEVLU4C.js";
29
29
  import "./chunk-OMX7CUOE.js";
30
- import "./chunk-FPZF3BNV.js";
31
- import "./chunk-VWPDSQZY.js";
32
- import "./chunk-AQDPHFDZ.js";
30
+ import "./chunk-BNXANYLH.js";
31
+ import "./chunk-T2VDEFUU.js";
32
+ import "./chunk-2QDQTWCI.js";
33
33
  import {
34
34
  BaseDeclarativeTool,
35
35
  BaseToolInvocation
36
- } from "./chunk-JJHY7NAD.js";
37
- import "./chunk-DZCZZPCY.js";
38
- import "./chunk-F6FP3URI.js";
36
+ } from "./chunk-L7U2RI5O.js";
37
+ import "./chunk-BGUDAULQ.js";
38
+ import "./chunk-EW6C27XX.js";
39
+ import "./chunk-22IFUCVR.js";
39
40
  import "./chunk-64WXLC72.js";
40
- import "./chunk-N5QHMPZU.js";
41
- import "./chunk-HU3RKEK2.js";
42
- import "./chunk-PTGKSUUJ.js";
41
+ import "./chunk-3UALQ56H.js";
42
+ import "./chunk-F6XNTYNE.js";
43
+ import "./chunk-CGEGHF2C.js";
44
+ import "./chunk-EJYJYJZ2.js";
43
45
  import "./chunk-55ZMG67I.js";
44
46
  import "./chunk-H6BD2ELD.js";
45
47
  import "./chunk-5IFG2VC4.js";
46
- import "./chunk-IKOWINH4.js";
48
+ import "./chunk-C4K3FEQ2.js";
47
49
  import "./chunk-ZERZSAZL.js";
48
50
  import "./chunk-QN5NZ3UQ.js";
49
51
  import "./chunk-BR4QREVK.js";
@@ -1970,7 +1972,8 @@ function coerceTypes(params, schema) {
1970
1972
  const fieldType = properties[key]?.type;
1971
1973
  if ((fieldType === "integer" || fieldType === "number") && typeof value === "string") {
1972
1974
  const trimmed = value.trim();
1973
- if (/^-?\d+(\.\d+)?$/.test(trimmed)) {
1975
+ const matchesType = fieldType === "integer" ? /^-?\d+$/.test(trimmed) : /^-?\d+(\.\d+)?$/.test(trimmed);
1976
+ if (matchesType) {
1974
1977
  const parsed = fieldType === "integer" ? parseInt(trimmed, 10) : parseFloat(trimmed);
1975
1978
  if (Number.isFinite(parsed)) {
1976
1979
  result[key] = parsed;
@@ -0,0 +1,56 @@
1
+ // Force strict mode and setup for ESM
2
+ "use strict";
3
+ import {
4
+ collectContextData,
5
+ contextCommand,
6
+ formatContextUsageText
7
+ } from "./chunk-BC5POO46.js";
8
+ import "./chunk-ZC675NGC.js";
9
+ import "./chunk-ZXNEOCW2.js";
10
+ import "./chunk-K5PGHDBN.js";
11
+ import "./chunk-TXVGVZYR.js";
12
+ import "./chunk-XU5P23GN.js";
13
+ import "./chunk-2BIF2NVV.js";
14
+ import "./chunk-NWLUISRA.js";
15
+ import "./chunk-3BR4OIOE.js";
16
+ import "./chunk-2MPVVENX.js";
17
+ import "./chunk-ZTQ26VBE.js";
18
+ import "./chunk-GZCJS5WH.js";
19
+ import "./chunk-MLZQVCF3.js";
20
+ import "./chunk-LD2XBG6Z.js";
21
+ import "./chunk-OTBK43JR.js";
22
+ import "./chunk-HGNSRCRB.js";
23
+ import "./chunk-EEEZIVFJ.js";
24
+ import "./chunk-PRYMDRBV.js";
25
+ import "./chunk-UMRZ7XCR.js";
26
+ import "./chunk-3PJXIDKI.js";
27
+ import "./chunk-UWCTAVOD.js";
28
+ import "./chunk-OFEVLU4C.js";
29
+ import "./chunk-OMX7CUOE.js";
30
+ import "./chunk-BNXANYLH.js";
31
+ import "./chunk-T2VDEFUU.js";
32
+ import "./chunk-2QDQTWCI.js";
33
+ import "./chunk-L7U2RI5O.js";
34
+ import "./chunk-BGUDAULQ.js";
35
+ import "./chunk-EW6C27XX.js";
36
+ import "./chunk-22IFUCVR.js";
37
+ import "./chunk-64WXLC72.js";
38
+ import "./chunk-3UALQ56H.js";
39
+ import "./chunk-F6XNTYNE.js";
40
+ import "./chunk-CGEGHF2C.js";
41
+ import "./chunk-EJYJYJZ2.js";
42
+ import "./chunk-55ZMG67I.js";
43
+ import "./chunk-H6BD2ELD.js";
44
+ import "./chunk-5IFG2VC4.js";
45
+ import "./chunk-C4K3FEQ2.js";
46
+ import "./chunk-ZERZSAZL.js";
47
+ import "./chunk-QN5NZ3UQ.js";
48
+ import "./chunk-BR4QREVK.js";
49
+ import "./chunk-Z2Z3GUXZ.js";
50
+ import "./chunk-A4BMJM77.js";
51
+ import "./chunk-J2S4EL5Y.js";
52
+ export {
53
+ collectContextData,
54
+ contextCommand,
55
+ formatContextUsageText
56
+ };
@@ -9,16 +9,16 @@ import {
9
9
  } from "./chunk-ZTQ26VBE.js";
10
10
  import {
11
11
  CRON_TASKS_DISPLAY_PATH
12
- } from "./chunk-4HMWGHPP.js";
12
+ } from "./chunk-GZCJS5WH.js";
13
13
  import "./chunk-OMX7CUOE.js";
14
14
  import {
15
15
  BaseDeclarativeTool,
16
16
  BaseToolInvocation,
17
17
  ToolDisplayNames,
18
18
  ToolNames
19
- } from "./chunk-JJHY7NAD.js";
20
- import "./chunk-N5QHMPZU.js";
21
- import "./chunk-IKOWINH4.js";
19
+ } from "./chunk-L7U2RI5O.js";
20
+ import "./chunk-3UALQ56H.js";
21
+ import "./chunk-C4K3FEQ2.js";
22
22
  import "./chunk-Z2Z3GUXZ.js";
23
23
  import {
24
24
  init_esbuild_shims
@@ -55,14 +55,11 @@ var CronCreateInvocation = class extends BaseToolInvocation {
55
55
  const scheduler = this.config.getCronScheduler();
56
56
  const recurring = this.params.recurring !== false;
57
57
  const durable = this.params.durable === true;
58
+ const prompt = this.params.prompt.trim();
58
59
  try {
59
60
  parseCron(this.params.cron);
60
61
  nextFireTime(this.params.cron, /* @__PURE__ */ new Date());
61
- const job = durable ? await scheduler.createDurable(
62
- this.params.cron,
63
- this.params.prompt,
64
- recurring
65
- ) : scheduler.create(this.params.cron, this.params.prompt, recurring);
62
+ const job = durable ? await scheduler.createDurable(this.params.cron, prompt, recurring) : scheduler.create(this.params.cron, prompt, recurring);
66
63
  const display = humanReadableCron(job.cronExpr);
67
64
  const returnDisplay = `Scheduled ${job.id} (${display})${durable ? " [durable]" : ""}`;
68
65
  const where = durable ? `Persisted to ${CRON_TASKS_DISPLAY_PATH}` : "Session-only (not written to disk, dies when Qwen Code exits)";
@@ -162,6 +159,12 @@ Returns a job ID you can pass to CronDelete.`,
162
159
  createInvocation(params) {
163
160
  return new CronCreateInvocation(this.config, params);
164
161
  }
162
+ validateToolParamValues(params) {
163
+ if (!params.prompt || params.prompt.trim() === "") {
164
+ return 'Parameter "prompt" must be a non-empty string.';
165
+ }
166
+ return null;
167
+ }
165
168
  /**
166
169
  * Forward the prompt and cadence to the classifier. The scheduled
167
170
  * prompt will be enqueued and executed against the agent at fire-time,
@@ -3,18 +3,18 @@
3
3
  import {
4
4
  CRON_TASKS_DISPLAY_PATH,
5
5
  removeCronTasks
6
- } from "./chunk-4HMWGHPP.js";
6
+ } from "./chunk-GZCJS5WH.js";
7
7
  import "./chunk-OMX7CUOE.js";
8
8
  import {
9
9
  BaseDeclarativeTool,
10
10
  BaseToolInvocation,
11
11
  ToolDisplayNames,
12
12
  ToolNames
13
- } from "./chunk-JJHY7NAD.js";
14
- import "./chunk-N5QHMPZU.js";
13
+ } from "./chunk-L7U2RI5O.js";
14
+ import "./chunk-3UALQ56H.js";
15
15
  import {
16
16
  getErrorMessage
17
- } from "./chunk-IKOWINH4.js";
17
+ } from "./chunk-C4K3FEQ2.js";
18
18
  import "./chunk-Z2Z3GUXZ.js";
19
19
  import {
20
20
  init_esbuild_shims
@@ -6,16 +6,16 @@ import {
6
6
  import {
7
7
  CRON_TASKS_DISPLAY_PATH,
8
8
  readCronTasks
9
- } from "./chunk-4HMWGHPP.js";
9
+ } from "./chunk-GZCJS5WH.js";
10
10
  import "./chunk-OMX7CUOE.js";
11
11
  import {
12
12
  BaseDeclarativeTool,
13
13
  BaseToolInvocation,
14
14
  ToolDisplayNames,
15
15
  ToolNames
16
- } from "./chunk-JJHY7NAD.js";
17
- import "./chunk-N5QHMPZU.js";
18
- import "./chunk-IKOWINH4.js";
16
+ } from "./chunk-L7U2RI5O.js";
17
+ import "./chunk-3UALQ56H.js";
18
+ import "./chunk-C4K3FEQ2.js";
19
19
  import "./chunk-Z2Z3GUXZ.js";
20
20
  import {
21
21
  init_esbuild_shims
@@ -1517,6 +1517,7 @@ var de_default = {
1517
1517
  "Agents:": "Agenten:",
1518
1518
  Prompt: "Eingabe",
1519
1519
  "Prompts:": "Eingaben:",
1520
+ "Resources:": "Ressourcen:",
1520
1521
  "Ref:": "Referenz:",
1521
1522
  "Skills:": "F\xE4higkeiten:",
1522
1523
  remote: "entfernt",
@@ -4613,7 +4613,7 @@ var DingtalkChannel = class extends ChannelBase {
4613
4613
  * conversation ID — skip the webhook-URL fallback case.
4614
4614
  */
4615
4615
  isConversationId(chatId) {
4616
- return !!chatId && !chatId.startsWith("http");
4616
+ return !!chatId && !/^https?:\/\//i.test(chatId);
4617
4617
  }
4618
4618
  onPromptStart(chatId, _sessionId, messageId) {
4619
4619
  if (!messageId || !this.isConversationId(chatId))
@@ -3,12 +3,13 @@
3
3
  import {
4
4
  require_abort_controller,
5
5
  require_lib
6
- } from "./chunk-KQIKOTQJ.js";
6
+ } from "./chunk-RYLJU2DY.js";
7
7
  import {
8
8
  ChannelBase
9
9
  } from "./chunk-JXQ23SNT.js";
10
10
  import "./chunk-UFC57OYT.js";
11
11
  import "./chunk-K5PGHDBN.js";
12
+ import "./chunk-EJYJYJZ2.js";
12
13
  import {
13
14
  require_dist
14
15
  } from "./chunk-ZERZSAZL.js";
@@ -9833,6 +9834,10 @@ var TelegramChannel = class extends ChannelBase {
9833
9834
  }
9834
9835
  }
9835
9836
  disconnect() {
9837
+ for (const interval of this.typingIntervals.values()) {
9838
+ clearInterval(interval);
9839
+ }
9840
+ this.typingIntervals.clear();
9836
9841
  this.bot.stop();
9837
9842
  }
9838
9843
  buildEnvelope(msg, text, entities) {
@@ -11,22 +11,22 @@ import {
11
11
  getDiffStat,
12
12
  needsUtf8Bom,
13
13
  safeLiteralReplace
14
- } from "./chunk-32SSXBMG.js";
14
+ } from "./chunk-ZXNEOCW2.js";
15
15
  import "./chunk-K5PGHDBN.js";
16
- import "./chunk-7GX7XYZU.js";
17
- import "./chunk-7OCZ77KA.js";
18
- import "./chunk-2ES3D3TW.js";
16
+ import "./chunk-TXVGVZYR.js";
17
+ import "./chunk-XU5P23GN.js";
18
+ import "./chunk-2BIF2NVV.js";
19
+ import "./chunk-NWLUISRA.js";
20
+ import "./chunk-3BR4OIOE.js";
19
21
  import "./chunk-2MPVVENX.js";
20
22
  import "./chunk-ZTQ26VBE.js";
21
- import "./chunk-4HMWGHPP.js";
22
- import "./chunk-4TW2JM5Q.js";
23
- import "./chunk-M5VYHAHT.js";
23
+ import "./chunk-GZCJS5WH.js";
24
24
  import "./chunk-MLZQVCF3.js";
25
25
  import "./chunk-LD2XBG6Z.js";
26
- import "./chunk-JIJBNW4A.js";
27
- import "./chunk-E5SRTXRG.js";
28
- import "./chunk-77WXWU44.js";
29
- import "./chunk-WWU2KUSR.js";
26
+ import "./chunk-OTBK43JR.js";
27
+ import "./chunk-HGNSRCRB.js";
28
+ import "./chunk-EEEZIVFJ.js";
29
+ import "./chunk-PRYMDRBV.js";
30
30
  import {
31
31
  FileOperationEvent,
32
32
  ReadFileTool,
@@ -34,27 +34,29 @@ import {
34
34
  getLanguageFromFilePath,
35
35
  getSpecificMimeType,
36
36
  logFileOperation
37
- } from "./chunk-6Z2MVJIJ.js";
37
+ } from "./chunk-UMRZ7XCR.js";
38
38
  import "./chunk-3PJXIDKI.js";
39
39
  import "./chunk-UWCTAVOD.js";
40
40
  import "./chunk-OFEVLU4C.js";
41
41
  import "./chunk-OMX7CUOE.js";
42
42
  import {
43
43
  isAnyAutoMemPath
44
- } from "./chunk-FPZF3BNV.js";
45
- import "./chunk-VWPDSQZY.js";
46
- import "./chunk-AQDPHFDZ.js";
44
+ } from "./chunk-BNXANYLH.js";
45
+ import "./chunk-T2VDEFUU.js";
46
+ import "./chunk-2QDQTWCI.js";
47
47
  import {
48
48
  BaseDeclarativeTool,
49
49
  ToolDisplayNames,
50
50
  ToolNames
51
- } from "./chunk-JJHY7NAD.js";
52
- import "./chunk-DZCZZPCY.js";
53
- import "./chunk-F6FP3URI.js";
51
+ } from "./chunk-L7U2RI5O.js";
52
+ import "./chunk-BGUDAULQ.js";
53
+ import "./chunk-EW6C27XX.js";
54
+ import "./chunk-22IFUCVR.js";
54
55
  import "./chunk-64WXLC72.js";
55
- import "./chunk-N5QHMPZU.js";
56
- import "./chunk-HU3RKEK2.js";
57
- import "./chunk-PTGKSUUJ.js";
56
+ import "./chunk-3UALQ56H.js";
57
+ import "./chunk-F6XNTYNE.js";
58
+ import "./chunk-CGEGHF2C.js";
59
+ import "./chunk-EJYJYJZ2.js";
58
60
  import "./chunk-55ZMG67I.js";
59
61
  import "./chunk-H6BD2ELD.js";
60
62
  import "./chunk-5IFG2VC4.js";
@@ -64,7 +66,7 @@ import {
64
66
  makeRelative,
65
67
  shortenPath,
66
68
  unescapePath
67
- } from "./chunk-IKOWINH4.js";
69
+ } from "./chunk-C4K3FEQ2.js";
68
70
  import "./chunk-ZERZSAZL.js";
69
71
  import "./chunk-QN5NZ3UQ.js";
70
72
  import "./chunk-BR4QREVK.js";
@@ -152,6 +152,7 @@ var en_default = {
152
152
  "toolDisplayName.TodoList": "toolDisplayName.TodoList",
153
153
  "toolDisplayName.SaveMemory": "toolDisplayName.SaveMemory",
154
154
  "toolDisplayName.Agent": "toolDisplayName.Agent",
155
+ "toolDisplayName.Artifact": "toolDisplayName.Artifact",
155
156
  "toolDisplayName.Skill": "toolDisplayName.Skill",
156
157
  "toolDisplayName.EnterPlanMode": "toolDisplayName.EnterPlanMode",
157
158
  "toolDisplayName.ExitPlanMode": "toolDisplayName.ExitPlanMode",
@@ -993,6 +994,7 @@ var en_default = {
993
994
  "Select where to add the server to the exclude list:": "Select where to add the server to the exclude list:",
994
995
  "Press Enter to confirm, Esc to cancel": "Press Enter to confirm, Esc to cancel",
995
996
  "View tools": "View tools",
997
+ "View resources": "View resources",
996
998
  Reconnect: "Reconnect",
997
999
  Enable: "Enable",
998
1000
  Disable: "Disable",
@@ -1007,6 +1009,8 @@ var en_default = {
1007
1009
  "Error:": "Error:",
1008
1010
  tool: "tool",
1009
1011
  tools: "tools",
1012
+ resource: "resource",
1013
+ resources: "resources",
1010
1014
  connected: "connected",
1011
1015
  connecting: "connecting",
1012
1016
  disconnected: "disconnected",
@@ -1038,6 +1042,17 @@ var en_default = {
1038
1042
  Parameters: "Parameters",
1039
1043
  "No tool selected": "No tool selected",
1040
1044
  Server: "Server",
1045
+ // MCP Resource List/Detail
1046
+ "No resources available for this server.": "No resources available for this server.",
1047
+ "Resources for {{serverName}}": "Resources for {{serverName}}",
1048
+ "No resource selected": "No resource selected",
1049
+ "Resource Detail": "Resource Detail",
1050
+ "URI:": "URI:",
1051
+ "MIME Type:": "MIME Type:",
1052
+ "Size:": "Size:",
1053
+ "{{count}} bytes": "{{count}} bytes",
1054
+ "Reference in chat": "Reference in chat",
1055
+ "MCP resource server": "MCP resource server",
1041
1056
  // Invalid tool related translations
1042
1057
  "{{count}} invalid tools": "{{count}} invalid tools",
1043
1058
  invalid: "invalid",
@@ -1067,7 +1082,38 @@ var en_default = {
1067
1082
  // Commands - Model
1068
1083
  // ============================================================================
1069
1084
  "Switch the model for this session (--fast for suggestion model, [model-id] to switch immediately).": "Switch the model for this session (--fast for suggestion model, [model-id] to switch immediately).",
1085
+ "Switch the model for this session (--fast for suggestion model, --voice for voice transcription model, [model-id] to switch immediately).": "Switch the model for this session (--fast for suggestion model, --voice for voice transcription model, [model-id] to switch immediately).",
1070
1086
  "Set a lighter model for prompt suggestions and speculative execution": "Set a lighter model for prompt suggestions and speculative execution",
1087
+ "Toggle voice dictation input": "Toggle voice dictation input",
1088
+ "Set the model for voice transcription": "Set the model for voice transcription",
1089
+ "Select Fast Model": "Select Fast Model",
1090
+ "Select Voice Model": "Select Voice Model",
1091
+ "Voice Model": "Voice Model",
1092
+ "Selected voice model is unavailable.": "Selected voice model is unavailable.",
1093
+ "Voice model '{{model}}' is configured more than once. Remove duplicate model ids before selecting it for voice transcription.": "Voice model '{{model}}' is configured more than once. Remove duplicate model ids before selecting it for voice transcription.",
1094
+ "Voice dictation: {{status}} (mode: {{mode}}, {{modelText}}).": "Voice dictation: {{status}} (mode: {{mode}}, {{modelText}}).",
1095
+ "model: {{voiceModel}}": "model: {{voiceModel}}",
1096
+ "no voice model selected": "no voice model selected",
1097
+ "Voice dictation disabled.": "Voice dictation disabled.",
1098
+ "Usage: /voice [hold|tap|off|status]": "Usage: /voice [hold|tap|off|status]",
1099
+ "No voice model selected. Run /model --voice to choose one before enabling voice dictation.": "No voice model selected. Run /model --voice to choose one before enabling voice dictation.",
1100
+ "Voice dictation enabled (tap mode). Tap Space at an empty prompt to start, tap again or pause to stop and submit, using {{voiceModel}}.": "Voice dictation enabled (tap mode). Tap Space at an empty prompt to start, tap again or pause to stop and submit, using {{voiceModel}}.",
1101
+ "Voice dictation enabled (hold mode). Hold Space at an empty prompt to dictate with {{voiceModel}}.": "Voice dictation enabled (hold mode). Hold Space at an empty prompt to dictate with {{voiceModel}}.",
1102
+ "No models are configured.": "No models are configured.",
1103
+ "Configured models: {{models}}.": "Configured models: {{models}}.",
1104
+ "Configure a unique model id in settings.modelProviders or run /model --voice to select an available model.": "Configure a unique model id in settings.modelProviders or run /model --voice to select an available model.",
1105
+ "Voice model '{{modelName}}' is not configured.": "Voice model '{{modelName}}' is not configured.",
1106
+ "Voice model '{{modelName}}' cannot be used for transcription.": "Voice model '{{modelName}}' cannot be used for transcription.",
1107
+ "Voice model '{{modelName}}' cannot be used for transcription. Configure an OpenAI-compatible model with baseUrl in settings.modelProviders.": "Voice model '{{modelName}}' cannot be used for transcription. Configure an OpenAI-compatible model with baseUrl in settings.modelProviders.",
1108
+ "Configure an OpenAI-compatible model with baseUrl in settings.modelProviders.": "Configure an OpenAI-compatible model with baseUrl in settings.modelProviders.",
1109
+ "Microphone access is denied. Enable it for your terminal in System Settings \u2192 Privacy & Security \u2192 Microphone, then restart voice dictation.": "Microphone access is denied. Enable it for your terminal in System Settings \u2192 Privacy & Security \u2192 Microphone, then restart voice dictation.",
1110
+ "Voice dictation is not supported on {{platform}}.": "Voice dictation is not supported on {{platform}}.",
1111
+ "Voice dictation needs microphone access, which is unavailable in this WSL session. Use WSLg/PulseAudio, or run Qwen Code on a host with a microphone.": "Voice dictation needs microphone access, which is unavailable in this WSL session. Use WSLg/PulseAudio, or run Qwen Code on a host with a microphone.",
1112
+ "Voice dictation needs microphone access. macOS will ask the first time you record \u2014 approve it, then start again. Your first recording may be empty while the dialog is open.": "Voice dictation needs microphone access. macOS will ask the first time you record \u2014 approve it, then start again. Your first recording may be empty while the dialog is open.",
1113
+ "Voice: recording": "Voice: recording",
1114
+ "Voice: transcribing": "Voice: transcribing",
1115
+ "listening\u2026": "listening\u2026",
1116
+ "transcribing\u2026": "transcribing\u2026",
1071
1117
  "Content generator configuration not available.": "Content generator configuration not available.",
1072
1118
  "Authentication type not available.": "Authentication type not available.",
1073
1119
  "No models available for the current authentication type ({{authType}}).": "No models available for the current authentication type ({{authType}}).",
@@ -1210,6 +1256,8 @@ var en_default = {
1210
1256
  audio: "audio",
1211
1257
  video: "video",
1212
1258
  "not set": "not set",
1259
+ 'Current voice model: {{voiceModel}}\nUse "/model --voice <model-id>" to set voice model.': 'Current voice model: {{voiceModel}}\nUse "/model --voice <model-id>" to set voice model.',
1260
+ "Voice model '{{modelName}}' is ambiguous. Configure a unique model id before using /model --voice.": "Voice model '{{modelName}}' is ambiguous. Configure a unique model id before using /model --voice.",
1213
1261
  none: "none",
1214
1262
  unknown: "unknown",
1215
1263
  // ============================================================================
@@ -1306,6 +1354,7 @@ var en_default = {
1306
1354
  "Tools:": "Tools:",
1307
1355
  "Parameters:": "Parameters:",
1308
1356
  "Prompts:": "Prompts:",
1357
+ "Resources:": "Resources:",
1309
1358
  Blocked: "Blocked",
1310
1359
  "\u{1F4A1} Tips:": "\u{1F4A1} Tips:",
1311
1360
  Use: "Use",
@@ -4,48 +4,50 @@ import {
4
4
  GitWorktreeService,
5
5
  writeWorktreeSession,
6
6
  writeWorktreeSessionMarker
7
- } from "./chunk-32SSXBMG.js";
7
+ } from "./chunk-ZXNEOCW2.js";
8
8
  import "./chunk-K5PGHDBN.js";
9
- import "./chunk-7GX7XYZU.js";
10
- import "./chunk-7OCZ77KA.js";
11
- import "./chunk-2ES3D3TW.js";
9
+ import "./chunk-TXVGVZYR.js";
10
+ import "./chunk-XU5P23GN.js";
11
+ import "./chunk-2BIF2NVV.js";
12
+ import "./chunk-NWLUISRA.js";
13
+ import "./chunk-3BR4OIOE.js";
12
14
  import "./chunk-2MPVVENX.js";
13
15
  import "./chunk-ZTQ26VBE.js";
14
- import "./chunk-4HMWGHPP.js";
15
- import "./chunk-4TW2JM5Q.js";
16
- import "./chunk-M5VYHAHT.js";
16
+ import "./chunk-GZCJS5WH.js";
17
17
  import "./chunk-MLZQVCF3.js";
18
18
  import "./chunk-LD2XBG6Z.js";
19
- import "./chunk-JIJBNW4A.js";
20
- import "./chunk-E5SRTXRG.js";
21
- import "./chunk-77WXWU44.js";
22
- import "./chunk-WWU2KUSR.js";
23
- import "./chunk-6Z2MVJIJ.js";
19
+ import "./chunk-OTBK43JR.js";
20
+ import "./chunk-HGNSRCRB.js";
21
+ import "./chunk-EEEZIVFJ.js";
22
+ import "./chunk-PRYMDRBV.js";
23
+ import "./chunk-UMRZ7XCR.js";
24
24
  import "./chunk-3PJXIDKI.js";
25
25
  import "./chunk-UWCTAVOD.js";
26
26
  import "./chunk-OFEVLU4C.js";
27
27
  import "./chunk-OMX7CUOE.js";
28
- import "./chunk-FPZF3BNV.js";
29
- import "./chunk-VWPDSQZY.js";
30
- import "./chunk-AQDPHFDZ.js";
28
+ import "./chunk-BNXANYLH.js";
29
+ import "./chunk-T2VDEFUU.js";
30
+ import "./chunk-2QDQTWCI.js";
31
31
  import {
32
32
  BaseDeclarativeTool,
33
33
  BaseToolInvocation,
34
34
  ToolDisplayNames,
35
35
  ToolNames
36
- } from "./chunk-JJHY7NAD.js";
37
- import "./chunk-DZCZZPCY.js";
38
- import "./chunk-F6FP3URI.js";
36
+ } from "./chunk-L7U2RI5O.js";
37
+ import "./chunk-BGUDAULQ.js";
38
+ import "./chunk-EW6C27XX.js";
39
+ import "./chunk-22IFUCVR.js";
39
40
  import "./chunk-64WXLC72.js";
40
- import "./chunk-N5QHMPZU.js";
41
- import "./chunk-HU3RKEK2.js";
42
- import "./chunk-PTGKSUUJ.js";
41
+ import "./chunk-3UALQ56H.js";
42
+ import "./chunk-F6XNTYNE.js";
43
+ import "./chunk-CGEGHF2C.js";
44
+ import "./chunk-EJYJYJZ2.js";
43
45
  import "./chunk-55ZMG67I.js";
44
46
  import "./chunk-H6BD2ELD.js";
45
47
  import "./chunk-5IFG2VC4.js";
46
48
  import {
47
49
  createDebugLogger
48
- } from "./chunk-IKOWINH4.js";
50
+ } from "./chunk-C4K3FEQ2.js";
49
51
  import "./chunk-ZERZSAZL.js";
50
52
  import "./chunk-QN5NZ3UQ.js";
51
53
  import "./chunk-BR4QREVK.js";
@@ -1,47 +1,49 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
- import "./chunk-32SSXBMG.js";
3
+ import "./chunk-ZXNEOCW2.js";
4
4
  import "./chunk-K5PGHDBN.js";
5
- import "./chunk-7GX7XYZU.js";
6
- import "./chunk-7OCZ77KA.js";
7
- import "./chunk-2ES3D3TW.js";
5
+ import "./chunk-TXVGVZYR.js";
6
+ import "./chunk-XU5P23GN.js";
7
+ import "./chunk-2BIF2NVV.js";
8
+ import "./chunk-NWLUISRA.js";
9
+ import "./chunk-3BR4OIOE.js";
8
10
  import "./chunk-2MPVVENX.js";
9
11
  import "./chunk-ZTQ26VBE.js";
10
- import "./chunk-4HMWGHPP.js";
11
- import "./chunk-4TW2JM5Q.js";
12
- import "./chunk-M5VYHAHT.js";
12
+ import "./chunk-GZCJS5WH.js";
13
13
  import "./chunk-MLZQVCF3.js";
14
14
  import "./chunk-LD2XBG6Z.js";
15
- import "./chunk-JIJBNW4A.js";
16
- import "./chunk-E5SRTXRG.js";
17
- import "./chunk-77WXWU44.js";
18
- import "./chunk-WWU2KUSR.js";
19
- import "./chunk-6Z2MVJIJ.js";
15
+ import "./chunk-OTBK43JR.js";
16
+ import "./chunk-HGNSRCRB.js";
17
+ import "./chunk-EEEZIVFJ.js";
18
+ import "./chunk-PRYMDRBV.js";
19
+ import "./chunk-UMRZ7XCR.js";
20
20
  import "./chunk-3PJXIDKI.js";
21
21
  import "./chunk-UWCTAVOD.js";
22
22
  import "./chunk-OFEVLU4C.js";
23
23
  import "./chunk-OMX7CUOE.js";
24
- import "./chunk-FPZF3BNV.js";
25
- import "./chunk-VWPDSQZY.js";
26
- import "./chunk-AQDPHFDZ.js";
24
+ import "./chunk-BNXANYLH.js";
25
+ import "./chunk-T2VDEFUU.js";
26
+ import "./chunk-2QDQTWCI.js";
27
27
  import {
28
28
  BaseDeclarativeTool,
29
29
  BaseToolInvocation,
30
30
  ToolDisplayNames,
31
31
  ToolNames
32
- } from "./chunk-JJHY7NAD.js";
33
- import "./chunk-DZCZZPCY.js";
34
- import "./chunk-F6FP3URI.js";
32
+ } from "./chunk-L7U2RI5O.js";
33
+ import "./chunk-BGUDAULQ.js";
34
+ import "./chunk-EW6C27XX.js";
35
+ import "./chunk-22IFUCVR.js";
35
36
  import "./chunk-64WXLC72.js";
36
- import "./chunk-N5QHMPZU.js";
37
- import "./chunk-HU3RKEK2.js";
38
- import "./chunk-PTGKSUUJ.js";
37
+ import "./chunk-3UALQ56H.js";
38
+ import "./chunk-F6XNTYNE.js";
39
+ import "./chunk-CGEGHF2C.js";
40
+ import "./chunk-EJYJYJZ2.js";
39
41
  import "./chunk-55ZMG67I.js";
40
42
  import "./chunk-H6BD2ELD.js";
41
43
  import "./chunk-5IFG2VC4.js";
42
44
  import {
43
45
  createDebugLogger
44
- } from "./chunk-IKOWINH4.js";
46
+ } from "./chunk-C4K3FEQ2.js";
45
47
  import "./chunk-ZERZSAZL.js";
46
48
  import "./chunk-QN5NZ3UQ.js";
47
49
  import "./chunk-BR4QREVK.js";
@@ -56,16 +58,16 @@ import {
56
58
  // packages/core/src/tools/enterPlanMode.ts
57
59
  init_esbuild_shims();
58
60
  var debugLogger = createDebugLogger("ENTER_PLAN_MODE");
59
- var enterPlanModeToolDescription = `Use this tool to lower into plan mode before doing uncertain or complex work. Entering plan mode is a privilege reduction, so it does not require user confirmation.
61
+ var enterPlanModeToolDescription = `Use this tool only after the user explicitly asks to switch into plan mode or confirms they want plan mode. Entering plan mode is a privilege reduction, so it does not require user confirmation at execution time.
60
62
 
61
63
  ## When to Use This Tool
62
- Use this tool when the task is not yet clear enough to safely execute, for example when it requires multi-file changes, design choices, investigation before a plan can be summarized, or when requirements are ambiguous. While investigating, if complexity rises or you find yourself repeatedly needing to ask the user, enter plan mode and consolidate a plan.
64
+ Use this tool when the user has opted into plan mode for a task that should be read-only while the plan is formed, such as multi-file changes, design choices, or ambiguous requirements.
63
65
 
64
66
  ## When NOT to Use This Tool
65
- If the request is already clear, small, and low-risk, you may execute directly without entering plan mode. Do not make speculative small edits before you have thought the change through.
67
+ Do not use this tool just because a task involves planning, is complex, or requires investigation. In the current mode, you can still think, inspect files, ask clarifying questions, and present a plan without switching modes.
66
68
 
67
69
  ## Important
68
- Do NOT use this tool if the user has explicitly asked you not to use plan mode.`;
70
+ If plan mode seems helpful but the user has not asked for it, ask first. Do NOT use this tool if the user has explicitly asked you not to use plan mode.`;
69
71
  var enterPlanModeToolSchemaData = {
70
72
  name: "enter_plan_mode",
71
73
  description: enterPlanModeToolDescription,
@@ -104,7 +106,9 @@ var EnterPlanModeToolInvocation = class extends BaseToolInvocation {
104
106
  }
105
107
  try {
106
108
  if (this.config.getApprovalMode() !== "plan" /* PLAN */) {
107
- this.config.setApprovalMode("plan" /* PLAN */);
109
+ this.config.setApprovalMode("plan" /* PLAN */, {
110
+ enteredByModel: true
111
+ });
108
112
  }
109
113
  } catch (error) {
110
114
  const errorMessage = error instanceof Error ? error.message : String(error);
@@ -158,7 +162,7 @@ var EnterPlanModeTool = class _EnterPlanModeTool extends BaseDeclarativeTool {
158
162
  false,
159
163
  // canUpdateOutput
160
164
  false,
161
- // shouldDefer — always visible so the model can enter plan mode
165
+ // shouldDefer — always visible so explicit plan-mode requests work
162
166
  false,
163
167
  // alwaysLoad
164
168
  "plan mode enter start"