@qwen-code/qwen-code 0.18.0-preview.2 → 0.18.1-nightly.20260616.a68b2e1e7

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 (145) hide show
  1. package/bundled/loop/SKILL.md +2 -1
  2. package/bundled/qc-helper/docs/_meta.ts +1 -0
  3. package/bundled/qc-helper/docs/common-workflow.md +4 -4
  4. package/bundled/qc-helper/docs/configuration/auth.md +1 -1
  5. package/bundled/qc-helper/docs/configuration/model-providers.md +13 -6
  6. package/bundled/qc-helper/docs/configuration/settings.md +90 -89
  7. package/bundled/qc-helper/docs/features/approval-mode.md +10 -14
  8. package/bundled/qc-helper/docs/features/commands.md +33 -11
  9. package/bundled/qc-helper/docs/features/dual-output.md +37 -3
  10. package/bundled/qc-helper/docs/features/followup-suggestions.md +2 -2
  11. package/bundled/qc-helper/docs/features/skills.md +29 -3
  12. package/bundled/qc-helper/docs/features/sub-agents.md +34 -12
  13. package/bundled/qc-helper/docs/qwen-serve-deploy-local.md +221 -0
  14. package/bundled/qc-helper/docs/qwen-serve.md +250 -31
  15. package/bundled/qc-helper/docs/reference/keyboard-shortcuts.md +30 -30
  16. package/chunks/{agent-QB7TZ4HW.js → agent-PXMT2XR5.js} +25 -24
  17. package/chunks/agent-headless-SY7VJUHV.js +51 -0
  18. package/chunks/{anthropicContentGenerator-M45EVVRM.js → anthropicContentGenerator-DCI26OQF.js} +7 -7
  19. package/chunks/{askUserQuestion-WM2KHM3K.js → askUserQuestion-NDNFGC35.js} +45 -3
  20. package/chunks/{ca-BARBRL6N.js → ca-RK4QPLIX.js} +18 -1
  21. package/chunks/{chunk-CNSMKPK6.js → chunk-26QELEL2.js} +1 -1
  22. package/chunks/{chunk-CWV3SJZS.js → chunk-3NRO6NHX.js} +2 -2
  23. package/chunks/{chunk-BNESGOSJ.js → chunk-55ZMG67I.js} +1 -1
  24. package/chunks/{chunk-2ZTWI7KH.js → chunk-6WPY6ES3.js} +62 -22
  25. package/chunks/{chunk-ZK4AMNIU.js → chunk-A3OEZT2F.js} +1294 -314
  26. package/chunks/{chunk-HXJE7VOG.js → chunk-ABRZC6FA.js} +1074 -144
  27. package/chunks/{chunk-JUGRPQAB.js → chunk-B4ZF2KSI.js} +1 -1
  28. package/chunks/chunk-BJ5HQ23U.js +178 -0
  29. package/chunks/{chunk-ICOI4E4S.js → chunk-CPVI5J2L.js} +101 -23
  30. package/chunks/{chunk-GX7VH5JQ.js → chunk-FIQECJTQ.js} +1 -1
  31. package/chunks/{chunk-QCG6KPNM.js → chunk-H4ZDM3N6.js} +18039 -11622
  32. package/chunks/{chunk-SZOEIL6S.js → chunk-H6BD2ELD.js} +1 -0
  33. package/chunks/{chunk-JXAZUMDW.js → chunk-HA2UEYZP.js} +7 -4
  34. package/chunks/{chunk-MVIVIPCU.js → chunk-IDYDPBBN.js} +361 -583
  35. package/chunks/{chunk-JVQOQ3OU.js → chunk-IQHSD7K5.js} +1 -1
  36. package/chunks/{chunk-CNHFPN7T.js → chunk-JZFEL3RB.js} +1 -1
  37. package/chunks/{chunk-UAMOBVVW.js → chunk-LXYWINWF.js} +1 -1
  38. package/chunks/{chunk-P4J26VDS.js → chunk-LYRSMKLS.js} +2 -2
  39. package/chunks/{chunk-Y7R6H6FT.js → chunk-LYSND7KR.js} +9 -4
  40. package/chunks/{chunk-AVW55ZCO.js → chunk-M5PJ5QAF.js} +37 -16
  41. package/chunks/{chunk-LR62TEET.js → chunk-NNIYWQIS.js} +1 -1
  42. package/chunks/chunk-OMX7CUOE.js +356 -0
  43. package/chunks/{chunk-HV3ZZ7G4.js → chunk-OT6JA3KQ.js} +2 -2
  44. package/chunks/{chunk-C6WMLUNB.js → chunk-QP4R5FTG.js} +1 -1
  45. package/chunks/chunk-QQDPRDVW.js +25 -0
  46. package/chunks/chunk-SFRV6BGY.js +243 -0
  47. package/chunks/{chunk-NW5QBUYO.js → chunk-TSBXGR73.js} +14 -14
  48. package/chunks/{chunk-7YKXFA3D.js → chunk-UOB6KPGG.js} +11 -11
  49. package/chunks/{chunk-USE2VQ5P.js → chunk-VU6A2OBJ.js} +41 -6
  50. package/chunks/{chunk-PAEBHDIO.js → chunk-VXHYMZXW.js} +1 -1
  51. package/chunks/{chunk-HGJPQK33.js → chunk-WPTCDQN6.js} +188 -534
  52. package/chunks/{chunk-WFVXF3OM.js → chunk-Z2Z3GUXZ.js} +1 -0
  53. package/chunks/{chunk-KC6ZMJ5X.js → chunk-ZMIBJS45.js} +1 -1
  54. package/chunks/chunk-ZOFNJQNJ.js +607 -0
  55. package/chunks/computer-use-7SEQDSHB.js +2052 -0
  56. package/chunks/contextCommand-KM5OWV65.js +53 -0
  57. package/chunks/cron-create-7CXEAJ2K.js +184 -0
  58. package/chunks/{cron-delete-ZGUXWBTG.js → cron-delete-2FQYYNQ6.js} +28 -5
  59. package/chunks/{cron-list-QNNZGMN3.js → cron-list-QCAJ73XE.js} +40 -7
  60. package/chunks/{de-YGKK2BC4.js → de-FGPM4KW5.js} +18 -1
  61. package/chunks/{devtools-IXE4UP72.js → devtools-FM6GJPYG.js} +1 -1
  62. package/chunks/{dist-R2SXPG74.js → dist-2UCAYOX7.js} +2 -2
  63. package/chunks/{dist-TE5QKMGR.js → dist-33LHH26D.js} +1 -1
  64. package/chunks/{dist-BXDUQ2QY.js → dist-KF43SZZV.js} +1 -1
  65. package/chunks/{dist-ZMQ4TXD5.js → dist-PF2IYSMD.js} +2 -2
  66. package/chunks/{edit-6UBTS2J5.js → edit-BMUKPLA7.js} +27 -28
  67. package/chunks/{en-HSQQNQUB.js → en-VP6XPGEC.js} +9 -2
  68. package/chunks/{enter-worktree-NN7LIXCM.js → enter-worktree-LXJ5WJ5A.js} +25 -24
  69. package/chunks/enterPlanMode-QWRZ54ZF.js +159 -0
  70. package/chunks/{exit-worktree-GGSS5KIE.js → exit-worktree-5HTQPNZO.js} +25 -24
  71. package/chunks/exitPlanMode-5WQAXNDA.js +743 -0
  72. package/chunks/{fr-JXBKPJKQ.js → fr-ATYBVCLT.js} +18 -1
  73. package/chunks/{geminiContentGenerator-I4H2NLJG.js → geminiContentGenerator-CAKHT5YE.js} +7 -7
  74. package/chunks/{getMachineId-bsd-F7GNPTER.js → getMachineId-bsd-4CASPIU4.js} +1 -1
  75. package/chunks/{getMachineId-darwin-T73DJL27.js → getMachineId-darwin-HPQPEMZR.js} +1 -1
  76. package/chunks/{getMachineId-linux-MKQTFPQM.js → getMachineId-linux-AUARKYHL.js} +1 -1
  77. package/chunks/{getMachineId-unsupported-MUR5KOQE.js → getMachineId-unsupported-S32ZDA2T.js} +1 -1
  78. package/chunks/{getMachineId-win-CDYFC6ZM.js → getMachineId-win-4EFLHYIJ.js} +1 -1
  79. package/chunks/{glob-OLCX57MD.js → glob-5DN6NSCD.js} +25 -24
  80. package/chunks/{grep-7HXIMDOW.js → grep-BJILOLCD.js} +37 -30
  81. package/chunks/{ja-TGPZSP2B.js → ja-W2QEA2OI.js} +18 -1
  82. package/chunks/{keychain-token-storage-LB46DAEK.js → keychain-token-storage-QSTRHKKL.js} +3 -3
  83. package/chunks/{ls-6PEZUK6O.js → ls-XVGXRYWD.js} +4 -4
  84. package/chunks/{lsp-JZSJOVT7.js → lsp-S6SHPULC.js} +3 -3
  85. package/chunks/{monitor-SQO7MVAV.js → monitor-SUEMSRN3.js} +25 -24
  86. package/chunks/{notebook-edit-72L3EBAL.js → notebook-edit-6F6Z5P6U.js} +26 -25
  87. package/chunks/{openaiContentGenerator-FTR7CDWF.js → openaiContentGenerator-DO27LL6O.js} +15 -15
  88. package/chunks/{pt-TIBG6BIO.js → pt-ZKEWJFBW.js} +18 -1
  89. package/chunks/{qwenContentGenerator-U5UFQ566.js → qwenContentGenerator-DQLGLQSH.js} +27 -26
  90. package/chunks/{qwenOAuth2-EFSECGHF.js → qwenOAuth2-KK433U33.js} +6 -5
  91. package/chunks/{read-file-UA64EEQC.js → read-file-3TBLYTOQ.js} +11 -11
  92. package/chunks/ripGrep-3INYT3QV.js +49 -0
  93. package/chunks/{ru-JBCHCK4L.js → ru-VEKTPJ74.js} +18 -1
  94. package/chunks/{scheduler-VBASHOCA.js → scheduler-23KQW6CX.js} +25 -24
  95. package/chunks/{send-message-OYJZ5TPG.js → send-message-SMNR5DBG.js} +3 -3
  96. package/chunks/{serve-A7E2OJDR.js → serve-Y5E4LKUI.js} +13164 -3840
  97. package/chunks/{shell-3NFOT6F5.js → shell-4H6XQXVY.js} +25 -24
  98. package/chunks/{skill-RA5YUREY.js → skill-SE6FECZR.js} +64 -113
  99. package/chunks/{src-NFCMARMT.js → src-76DUBH3A.js} +176 -44
  100. package/chunks/{syntheticOutput-DETQ2YM6.js → syntheticOutput-KMNF7YG6.js} +4 -4
  101. package/chunks/{task-create-Y3ZKTJIG.js → task-create-LIJHK75G.js} +8 -7
  102. package/chunks/{task-list-ONXJ3I3A.js → task-list-S4GNSILM.js} +7 -6
  103. package/chunks/{task-stop-UHDC4N5B.js → task-stop-3GBRYJHM.js} +3 -3
  104. package/chunks/{task-update-TCNOU3P5.js → task-update-F3UTVJMS.js} +21 -9
  105. package/chunks/{team-create-6SR4OVRG.js → team-create-Q5DTDDH4.js} +28 -26
  106. package/chunks/{team-delete-EJ4U4DDP.js → team-delete-54434EB7.js} +9 -6
  107. package/chunks/{todoWrite-TEYDRS5L.js → todoWrite-4ENGSBUX.js} +5 -5
  108. package/chunks/{tool-search-OD435A3X.js → tool-search-ABZMSDTU.js} +11 -11
  109. package/chunks/{web-fetch-6W67H5PO.js → web-fetch-RHZMF3MP.js} +5 -5
  110. package/chunks/workflow-NEMDQB75.js +1414 -0
  111. package/chunks/{write-file-475L5OPP.js → write-file-VAEHZPSL.js} +26 -25
  112. package/chunks/{zh-VCLWO26Y.js → zh-OIXDDQHB.js} +10 -3
  113. package/chunks/{zh-TW-G3HFHVVT.js → zh-TW-6YFNCKTA.js} +10 -3
  114. package/cli-entry.js +19 -0
  115. package/cli.js +11155 -6656
  116. package/examples/starter/QWEN.md +30 -0
  117. package/examples/starter/README.md +59 -0
  118. package/examples/starter/agents/diary.md +86 -0
  119. package/examples/starter/commands/writing/polish.md +13 -0
  120. package/examples/starter/example.ts +64 -0
  121. package/examples/starter/package.json +18 -0
  122. package/examples/starter/qwen-extension.json +12 -0
  123. package/examples/starter/skills/synonyms/SKILL.md +48 -0
  124. package/examples/starter/tsconfig.json +13 -0
  125. package/fzfWorker.js +1083 -0
  126. package/locales/ca.js +20 -2
  127. package/locales/de.js +21 -2
  128. package/locales/en.js +13 -4
  129. package/locales/fr.js +22 -2
  130. package/locales/ja.js +22 -2
  131. package/locales/pt.js +21 -2
  132. package/locales/ru.js +20 -2
  133. package/locales/zh-TW.js +11 -4
  134. package/locales/zh.js +11 -4
  135. package/package.json +5 -3
  136. package/chunks/agent-headless-APVHH7QM.js +0 -50
  137. package/chunks/chunk-AJIR24J2.js +0 -59
  138. package/chunks/chunk-SKBPNJEW.js +0 -45
  139. package/chunks/chunk-XBFVXFB2.js +0 -216
  140. package/chunks/computer-use-B7VIUI7F.js +0 -825
  141. package/chunks/contextCommand-63RZ3O5R.js +0 -52
  142. package/chunks/cron-create-FI5LJVUS.js +0 -140
  143. package/chunks/exitPlanMode-H323NHB2.js +0 -235
  144. package/chunks/ripGrep-WSYCWZVK.js +0 -48
  145. package/chunks/workflow-62DHH4EO.js +0 -708
@@ -7,43 +7,44 @@ import {
7
7
  hasRebuiltToolRegistry,
8
8
  rebuildToolRegistryOnOverride,
9
9
  resolveSubagentApprovalMode
10
- } from "./chunk-QCG6KPNM.js";
10
+ } from "./chunk-H4ZDM3N6.js";
11
11
  import "./chunk-K5PGHDBN.js";
12
- import "./chunk-SKBPNJEW.js";
12
+ import "./chunk-VXHYMZXW.js";
13
13
  import "./chunk-O4PICXES.js";
14
14
  import "./chunk-TW522KN6.js";
15
- import "./chunk-AJIR24J2.js";
16
- import "./chunk-HGJPQK33.js";
17
- import "./chunk-XBFVXFB2.js";
15
+ import "./chunk-BJ5HQ23U.js";
16
+ import "./chunk-SFRV6BGY.js";
17
+ import "./chunk-ZOFNJQNJ.js";
18
+ import "./chunk-WPTCDQN6.js";
19
+ import "./chunk-OMX7CUOE.js";
18
20
  import "./chunk-MLZQVCF3.js";
19
- import "./chunk-PAEBHDIO.js";
20
21
  import "./chunk-LD2XBG6Z.js";
21
- import "./chunk-ICOI4E4S.js";
22
- import "./chunk-KC6ZMJ5X.js";
22
+ import "./chunk-CPVI5J2L.js";
23
+ import "./chunk-ZMIBJS45.js";
23
24
  import "./chunk-77WXWU44.js";
24
- import "./chunk-JUGRPQAB.js";
25
- import "./chunk-64WXLC72.js";
26
- import "./chunk-ZK4AMNIU.js";
25
+ import "./chunk-B4ZF2KSI.js";
26
+ import "./chunk-A3OEZT2F.js";
27
27
  import "./chunk-3PJXIDKI.js";
28
28
  import "./chunk-UWCTAVOD.js";
29
29
  import "./chunk-OFEVLU4C.js";
30
- import "./chunk-JVQOQ3OU.js";
31
- import "./chunk-P4J26VDS.js";
32
- import "./chunk-CNSMKPK6.js";
33
- import "./chunk-2ZTWI7KH.js";
34
- import "./chunk-MVIVIPCU.js";
35
- import "./chunk-GX7VH5JQ.js";
36
- import "./chunk-UAMOBVVW.js";
37
- import "./chunk-LR62TEET.js";
38
- import "./chunk-Y7R6H6FT.js";
39
- import "./chunk-BNESGOSJ.js";
40
- import "./chunk-SZOEIL6S.js";
30
+ import "./chunk-IQHSD7K5.js";
31
+ import "./chunk-LYRSMKLS.js";
32
+ import "./chunk-26QELEL2.js";
33
+ import "./chunk-6WPY6ES3.js";
34
+ import "./chunk-IDYDPBBN.js";
35
+ import "./chunk-FIQECJTQ.js";
36
+ import "./chunk-64WXLC72.js";
37
+ import "./chunk-LXYWINWF.js";
38
+ import "./chunk-NNIYWQIS.js";
39
+ import "./chunk-LYSND7KR.js";
40
+ import "./chunk-55ZMG67I.js";
41
+ import "./chunk-H6BD2ELD.js";
41
42
  import "./chunk-5IFG2VC4.js";
42
- import "./chunk-JXAZUMDW.js";
43
+ import "./chunk-HA2UEYZP.js";
43
44
  import "./chunk-ZERZSAZL.js";
44
45
  import "./chunk-QN5NZ3UQ.js";
45
46
  import "./chunk-BR4QREVK.js";
46
- import "./chunk-WFVXF3OM.js";
47
+ import "./chunk-Z2Z3GUXZ.js";
47
48
  import "./chunk-A4BMJM77.js";
48
49
  import "./chunk-J2S4EL5Y.js";
49
50
  export {
@@ -0,0 +1,51 @@
1
+ // Force strict mode and setup for ESM
2
+ "use strict";
3
+ import {
4
+ AgentHeadless,
5
+ ContextState,
6
+ templateString
7
+ } from "./chunk-H4ZDM3N6.js";
8
+ import "./chunk-K5PGHDBN.js";
9
+ import "./chunk-VXHYMZXW.js";
10
+ import "./chunk-O4PICXES.js";
11
+ import "./chunk-TW522KN6.js";
12
+ import "./chunk-BJ5HQ23U.js";
13
+ import "./chunk-SFRV6BGY.js";
14
+ import "./chunk-ZOFNJQNJ.js";
15
+ import "./chunk-WPTCDQN6.js";
16
+ import "./chunk-OMX7CUOE.js";
17
+ import "./chunk-MLZQVCF3.js";
18
+ import "./chunk-LD2XBG6Z.js";
19
+ import "./chunk-CPVI5J2L.js";
20
+ import "./chunk-ZMIBJS45.js";
21
+ import "./chunk-77WXWU44.js";
22
+ import "./chunk-B4ZF2KSI.js";
23
+ import "./chunk-A3OEZT2F.js";
24
+ import "./chunk-3PJXIDKI.js";
25
+ import "./chunk-UWCTAVOD.js";
26
+ import "./chunk-OFEVLU4C.js";
27
+ import "./chunk-IQHSD7K5.js";
28
+ import "./chunk-LYRSMKLS.js";
29
+ import "./chunk-26QELEL2.js";
30
+ import "./chunk-6WPY6ES3.js";
31
+ import "./chunk-IDYDPBBN.js";
32
+ import "./chunk-FIQECJTQ.js";
33
+ import "./chunk-64WXLC72.js";
34
+ import "./chunk-LXYWINWF.js";
35
+ import "./chunk-NNIYWQIS.js";
36
+ import "./chunk-LYSND7KR.js";
37
+ import "./chunk-55ZMG67I.js";
38
+ import "./chunk-H6BD2ELD.js";
39
+ import "./chunk-5IFG2VC4.js";
40
+ import "./chunk-HA2UEYZP.js";
41
+ import "./chunk-ZERZSAZL.js";
42
+ import "./chunk-QN5NZ3UQ.js";
43
+ import "./chunk-BR4QREVK.js";
44
+ import "./chunk-Z2Z3GUXZ.js";
45
+ import "./chunk-A4BMJM77.js";
46
+ import "./chunk-J2S4EL5Y.js";
47
+ export {
48
+ AgentHeadless,
49
+ ContextState,
50
+ templateString
51
+ };
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-KQIKOTQJ.js";
7
7
  import {
8
8
  RequestTokenizer
9
- } from "./chunk-CWV3SJZS.js";
9
+ } from "./chunk-3NRO6NHX.js";
10
10
  import {
11
11
  Blob,
12
12
  File,
@@ -16,7 +16,7 @@ import {
16
16
  import {
17
17
  buildRuntimeFetchOptions,
18
18
  redactProxyError
19
- } from "./chunk-LR62TEET.js";
19
+ } from "./chunk-NNIYWQIS.js";
20
20
  import {
21
21
  CAPPED_DEFAULT_MAX_TOKENS,
22
22
  DEFAULT_TIMEOUT,
@@ -25,20 +25,20 @@ import {
25
25
  runtimeDiagnostics,
26
26
  safeJsonParse,
27
27
  tokenLimit
28
- } from "./chunk-Y7R6H6FT.js";
28
+ } from "./chunk-LYSND7KR.js";
29
29
  import {
30
30
  FinishReason,
31
31
  GenerateContentResponse
32
- } from "./chunk-BNESGOSJ.js";
33
- import "./chunk-SZOEIL6S.js";
32
+ } from "./chunk-55ZMG67I.js";
33
+ import "./chunk-H6BD2ELD.js";
34
34
  import "./chunk-5IFG2VC4.js";
35
35
  import {
36
36
  createDebugLogger
37
- } from "./chunk-JXAZUMDW.js";
37
+ } from "./chunk-HA2UEYZP.js";
38
38
  import {
39
39
  require_ms
40
40
  } from "./chunk-BR4QREVK.js";
41
- import "./chunk-WFVXF3OM.js";
41
+ import "./chunk-Z2Z3GUXZ.js";
42
42
  import {
43
43
  init_esbuild_shims
44
44
  } from "./chunk-A4BMJM77.js";
@@ -1,16 +1,19 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
+ import {
4
+ CAP_ESCALATION_LABELS
5
+ } from "./chunk-QQDPRDVW.js";
3
6
  import "./chunk-MLZQVCF3.js";
4
7
  import {
5
8
  BaseDeclarativeTool,
6
9
  BaseToolInvocation,
7
10
  ToolDisplayNames,
8
11
  ToolNames
9
- } from "./chunk-2ZTWI7KH.js";
12
+ } from "./chunk-6WPY6ES3.js";
10
13
  import {
11
14
  createDebugLogger
12
- } from "./chunk-JXAZUMDW.js";
13
- import "./chunk-WFVXF3OM.js";
15
+ } from "./chunk-HA2UEYZP.js";
16
+ import "./chunk-Z2Z3GUXZ.js";
14
17
  import {
15
18
  init_esbuild_shims
16
19
  } from "./chunk-A4BMJM77.js";
@@ -177,6 +180,7 @@ var AskUserQuestionToolInvocation = class extends BaseToolInvocation {
177
180
  const question = this.params.questions[questionIndex];
178
181
  return `**${question?.header || `Question ${questionIndex + 1}`}**: ${value}`;
179
182
  }).join("\n");
183
+ this.applyPlanGateMetadata();
180
184
  const llmMessage = `User has provided the following answers:
181
185
 
182
186
  ${answersContent}`;
@@ -199,6 +203,44 @@ ${answersContent}`;
199
203
  };
200
204
  }
201
205
  }
206
+ /**
207
+ * Updates Plan Approval Gate state based on the metadata.source field
208
+ * and the user's answer. Only acts on recognized gate metadata sources.
209
+ */
210
+ applyPlanGateMetadata() {
211
+ const source = this.params.metadata?.source;
212
+ if (!source) return;
213
+ const gateState = this._config.getPlanGateState();
214
+ if (!gateState) return;
215
+ if (source === "plan_gate_cap") {
216
+ if (!gateState.capEscalationPending) {
217
+ debugLogger.warn(
218
+ "[applyPlanGateMetadata] plan_gate_cap ignored: no cap escalation pending"
219
+ );
220
+ return;
221
+ }
222
+ const firstAnswer = Object.values(this.userAnswers)[0] ?? "";
223
+ if (firstAnswer === CAP_ESCALATION_LABELS.CONTINUE) {
224
+ gateState.gateMode = "uncapped";
225
+ } else if (firstAnswer === CAP_ESCALATION_LABELS.APPROVE) {
226
+ gateState.gateMode = "user_override";
227
+ } else {
228
+ gateState.gateMode = "user_takeover";
229
+ }
230
+ gateState.capEscalationPending = false;
231
+ } else if (source === "plan_gate_needs_user") {
232
+ if (!gateState.needsUserPending) {
233
+ debugLogger.warn(
234
+ "[applyPlanGateMetadata] plan_gate_needs_user ignored: no needs_user pending"
235
+ );
236
+ return;
237
+ }
238
+ if (gateState.gateMode === "capped" || gateState.gateMode === "uncapped") {
239
+ gateState.reviewCount = 0;
240
+ }
241
+ gateState.needsUserPending = false;
242
+ }
243
+ }
202
244
  };
203
245
  var AskUserQuestionTool = class _AskUserQuestionTool extends BaseDeclarativeTool {
204
246
  constructor(config) {
@@ -629,7 +629,6 @@ var ca_default = {
629
629
  "Please provide a directive. Usage: /fork <directive>": "Proporcioneu una directiva. \xDAs: /fork <directiva>",
630
630
  "Cannot fork while a response or tool call is in progress. Wait for it to finish or resolve the pending tool call.": "No es pot crear una bifurcaci\xF3 mentre hi ha una resposta o una crida a una eina en curs. Espereu que acabi o resolgueu la crida a l'eina pendent.",
631
631
  "Cannot fork before the first conversation turn.": "No es pot crear una bifurcaci\xF3 abans del primer torn de conversa.",
632
- "The /fork command requires the fork feature gate. Set QWEN_CODE_ENABLE_FORK_SUBAGENT=1 to enable it.": "L\u2019ordre /fork requereix el feature gate de fork. Definiu QWEN_CODE_ENABLE_FORK_SUBAGENT=1 per activar-lo.",
633
632
  "The agent tool is unavailable; cannot fork.": "L'eina d'agent no est\xE0 disponible; no es pot crear una bifurcaci\xF3.",
634
633
  "Failed to launch fork: {{error}}": "No s\u2019ha pogut iniciar la bifurcaci\xF3: {{error}}",
635
634
  "User launched a background fork via /fork: {{directive}}": "L'usuari ha iniciat una bifurcaci\xF3 en segon pla amb /fork: {{directive}}",
@@ -1109,6 +1108,24 @@ var ca_default = {
1109
1108
  "Found {{count}} TOML command file:": "S'ha trobat {{count}} fitxer d'ordres TOML:",
1110
1109
  "Found {{count}} TOML command files:": "S'han trobat {{count}} fitxers d'ordres TOML:",
1111
1110
  "Current tasks": "Tasques actuals",
1111
+ "Background tasks": "Tasques en segon pla",
1112
+ "No tasks currently running": "No hi ha cap tasca en execuci\xF3",
1113
+ "No entry to show.": "No hi ha cap entrada per mostrar.",
1114
+ "needs approval": "necessita aprovaci\xF3",
1115
+ "Background agent needs approval": "L'agent en segon pla necessita aprovaci\xF3",
1116
+ "Approve or deny the request above": "Aprova o denega la sol\xB7licitud de dalt",
1117
+ Running: "En execuci\xF3",
1118
+ Paused: "En pausa",
1119
+ Completed: "Completada",
1120
+ Failed: "Fallida",
1121
+ Stopped: "Aturada",
1122
+ Shell: "Shell",
1123
+ Monitor: "Monitor",
1124
+ Command: "Ordre",
1125
+ Dream: "Dream",
1126
+ "[dream] memory consolidation": "[dream] consolidaci\xF3 de mem\xF2ria",
1127
+ "[dream] memory consolidation (reviewing {{count}} session)": "[dream] consolidaci\xF3 de mem\xF2ria (revisant {{count}} sessi\xF3)",
1128
+ "[dream] memory consolidation (reviewing {{count}} sessions)": "[dream] consolidaci\xF3 de mem\xF2ria (revisant {{count}} sessions)",
1112
1129
  "... and {{count}} more": "... i {{count}} m\xE9s",
1113
1130
  "The TOML format is deprecated. Would you like to migrate them to Markdown format?": "El format TOML \xE9s obsolet. Voleu migrar-los al format Markdown?",
1114
1131
  "(Backups will be created and original files will be preserved)": "(Es crearan c\xF2pies de seguretat i els fitxers originals es conservaran)",
@@ -5,7 +5,7 @@ import {
5
5
  BaseToolInvocation,
6
6
  ToolDisplayNames,
7
7
  ToolNames
8
- } from "./chunk-2ZTWI7KH.js";
8
+ } from "./chunk-6WPY6ES3.js";
9
9
  import {
10
10
  init_esbuild_shims
11
11
  } from "./chunk-A4BMJM77.js";
@@ -3,10 +3,10 @@
3
3
  import {
4
4
  TextTokenizer,
5
5
  isSupportedImageMimeType
6
- } from "./chunk-LR62TEET.js";
6
+ } from "./chunk-NNIYWQIS.js";
7
7
  import {
8
8
  createDebugLogger
9
- } from "./chunk-JXAZUMDW.js";
9
+ } from "./chunk-HA2UEYZP.js";
10
10
  import {
11
11
  init_esbuild_shims
12
12
  } from "./chunk-A4BMJM77.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  import_websocket
5
- } from "./chunk-SZOEIL6S.js";
5
+ } from "./chunk-H6BD2ELD.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-A4BMJM77.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  createDebugLogger
5
- } from "./chunk-JXAZUMDW.js";
5
+ } from "./chunk-HA2UEYZP.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-A4BMJM77.js";
@@ -14290,6 +14290,10 @@ var SchemaValidator = class {
14290
14290
  data,
14291
14291
  anySchema
14292
14292
  );
14293
+ fixNumericValues(
14294
+ data,
14295
+ anySchema
14296
+ );
14293
14297
  valid = validate(data);
14294
14298
  if (!valid && validate.errors) {
14295
14299
  return validator.errorsText(validate.errors, { dataVar: "params" });
@@ -14349,6 +14353,34 @@ function fixStringifiedJsonValues(data, schema) {
14349
14353
  }
14350
14354
  }
14351
14355
  __name(fixStringifiedJsonValues, "fixStringifiedJsonValues");
14356
+ function fixNumericValues(data, schema) {
14357
+ const properties = schema["properties"];
14358
+ const items = schema["items"];
14359
+ for (const key of Object.keys(data)) {
14360
+ if (!(key in data)) continue;
14361
+ const value = data[key];
14362
+ const childSchema = Array.isArray(data) ? items : properties?.[key];
14363
+ if (typeof value === "object" && value !== null) {
14364
+ fixNumericValues(value, childSchema ?? {});
14365
+ continue;
14366
+ }
14367
+ if (typeof value !== "string") continue;
14368
+ const accepted = childSchema ? getAcceptedTypes(childSchema) : null;
14369
+ if (!accepted || accepted.has("string")) continue;
14370
+ const wantsInteger = accepted.has("integer");
14371
+ const wantsNumber = accepted.has("number");
14372
+ if (!wantsInteger && !wantsNumber) continue;
14373
+ const trimmed = value.trim();
14374
+ if (!/^-?\d+(\.\d+)?$/.test(trimmed)) continue;
14375
+ const num = parseFloat(trimmed);
14376
+ if (wantsInteger && !wantsNumber && num % 1 !== 0) continue;
14377
+ const parsed = wantsNumber ? num : parseInt(trimmed, 10);
14378
+ if (Number.isFinite(parsed)) {
14379
+ data[key] = parsed;
14380
+ }
14381
+ }
14382
+ }
14383
+ __name(fixNumericValues, "fixNumericValues");
14352
14384
  function fixBooleanValues(data, schema) {
14353
14385
  const properties = schema?.["properties"];
14354
14386
  const items = schema?.["items"];
@@ -14623,6 +14655,25 @@ var DeclarativeTool = class {
14623
14655
  parametersJsonSchema: this.parameterSchema
14624
14656
  };
14625
14657
  }
14658
+ /**
14659
+ * Max model-facing characters for this tool's output before the scheduler
14660
+ * spills it to disk (mirrors Claude Code's per-tool `maxResultSizeChars`).
14661
+ * - `undefined` → use the global truncation threshold.
14662
+ * - `Infinity` → self-managed (the tool does its own size control, e.g.
14663
+ * ReadFile's line-based paging), exempt from scheduler char truncation.
14664
+ * Override in subclasses to opt into a per-tool budget.
14665
+ */
14666
+ get maxOutputChars() {
14667
+ return void 0;
14668
+ }
14669
+ /**
14670
+ * Direction kept when this tool's oversized output is truncated: `'head'`
14671
+ * (beginning, e.g. shell), `'tail'` (end, e.g. background agents), or
14672
+ * `'both'` (first + last, the default).
14673
+ */
14674
+ get truncateKeep() {
14675
+ return "both";
14676
+ }
14626
14677
  /**
14627
14678
  * Projects tool params for the AUTO approval mode classifier.
14628
14679
  *
@@ -14832,6 +14883,7 @@ var Kind = /* @__PURE__ */ ((Kind2) => {
14832
14883
  Kind2["Execute"] = "execute";
14833
14884
  Kind2["Think"] = "think";
14834
14885
  Kind2["Fetch"] = "fetch";
14886
+ Kind2["Agent"] = "agent";
14835
14887
  Kind2["Other"] = "other";
14836
14888
  return Kind2;
14837
14889
  })(Kind || {});
@@ -14861,6 +14913,7 @@ var ToolNames = {
14861
14913
  AGENT: "agent",
14862
14914
  SKILL: "skill",
14863
14915
  EXIT_PLAN_MODE: "exit_plan_mode",
14916
+ ENTER_PLAN_MODE: "enter_plan_mode",
14864
14917
  WEB_FETCH: "web_fetch",
14865
14918
  LS: "list_directory",
14866
14919
  LSP: "lsp",
@@ -14881,18 +14934,12 @@ var ToolNames = {
14881
14934
  TOOL_SEARCH: "tool_search",
14882
14935
  ENTER_WORKTREE: "enter_worktree",
14883
14936
  EXIT_WORKTREE: "exit_worktree",
14884
- // Computer Use tools built-in but backed by an upstream MCP server.
14885
- // All deferred; revealed only when the user-initiated request triggers
14886
- // a computer-use action. See packages/core/src/tools/computer-use/.
14887
- COMPUTER_USE_LIST_APPS: "computer_use__list_apps",
14888
- COMPUTER_USE_GET_APP_STATE: "computer_use__get_app_state",
14889
- COMPUTER_USE_CLICK: "computer_use__click",
14890
- COMPUTER_USE_PERFORM_SECONDARY_ACTION: "computer_use__perform_secondary_action",
14891
- COMPUTER_USE_SCROLL: "computer_use__scroll",
14892
- COMPUTER_USE_DRAG: "computer_use__drag",
14893
- COMPUTER_USE_TYPE_TEXT: "computer_use__type_text",
14894
- COMPUTER_USE_PRESS_KEY: "computer_use__press_key",
14895
- COMPUTER_USE_SET_VALUE: "computer_use__set_value",
14937
+ // Computer Use tools (computer_use__*) are intentionally NOT enumerated here.
14938
+ // Their full 35-tool surface is generated into computer-use/schemas.ts and
14939
+ // registered via computer-use/index.ts (cast to ToolName). Duplicating a
14940
+ // subset here only goes stale on every cua-driver version bump — review
14941
+ // round 1 removed the old ocu-era 9-name list, which still carried
14942
+ // `get_app_state` / `perform_secondary_action` that no longer exist.
14896
14943
  WORKFLOW: "workflow"
14897
14944
  };
14898
14945
  var ToolDisplayNames = {
@@ -14907,6 +14954,7 @@ var ToolDisplayNames = {
14907
14954
  AGENT: "Agent",
14908
14955
  SKILL: "Skill",
14909
14956
  EXIT_PLAN_MODE: "ExitPlanMode",
14957
+ ENTER_PLAN_MODE: "EnterPlanMode",
14910
14958
  WEB_FETCH: "WebFetch",
14911
14959
  LS: "ListFiles",
14912
14960
  LSP: "Lsp",
@@ -14927,15 +14975,7 @@ var ToolDisplayNames = {
14927
14975
  TOOL_SEARCH: "ToolSearch",
14928
14976
  ENTER_WORKTREE: "EnterWorktree",
14929
14977
  EXIT_WORKTREE: "ExitWorktree",
14930
- COMPUTER_USE_LIST_APPS: "computer_use__list_apps",
14931
- COMPUTER_USE_GET_APP_STATE: "computer_use__get_app_state",
14932
- COMPUTER_USE_CLICK: "computer_use__click",
14933
- COMPUTER_USE_PERFORM_SECONDARY_ACTION: "computer_use__perform_secondary_action",
14934
- COMPUTER_USE_SCROLL: "computer_use__scroll",
14935
- COMPUTER_USE_DRAG: "computer_use__drag",
14936
- COMPUTER_USE_TYPE_TEXT: "computer_use__type_text",
14937
- COMPUTER_USE_PRESS_KEY: "computer_use__press_key",
14938
- COMPUTER_USE_SET_VALUE: "computer_use__set_value",
14978
+ // computer_use__* display names are not enumerated here (see ToolNames).
14939
14979
  WORKFLOW: "Workflow"
14940
14980
  };
14941
14981
  var ToolNamesMigration = {