@qwen-code/qwen-code 0.17.1-nightly.20260608.aea34fa2c → 0.18.0-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 (95) hide show
  1. package/bundled/qc-helper/SKILL.md +30 -24
  2. package/bundled/qc-helper/docs/features/auto-mode.md +54 -9
  3. package/bundled/qc-helper/docs/features/commands.md +11 -11
  4. package/bundled/qc-helper/docs/features/markdown-rendering.md +21 -1
  5. package/chunks/{agent-CRCEWDXY.js → agent-6J2FFD7S.js} +16 -16
  6. package/chunks/{anthropicContentGenerator-CORCIHMT.js → anthropicContentGenerator-4QBVSFSJ.js} +4 -4
  7. package/chunks/{askUserQuestion-LXMRMFII.js → askUserQuestion-NOOLRWCJ.js} +2 -2
  8. package/chunks/{ca-AD47AV3M.js → ca-WRHFBIDH.js} +10 -1
  9. package/chunks/{chunk-MW6Z7JDT.js → chunk-3H7ENG2Q.js} +20 -18
  10. package/chunks/{chunk-UKQJ7G3U.js → chunk-5RNZ2QKF.js} +1 -1
  11. package/chunks/{chunk-LESSBSSE.js → chunk-6VFG3EUJ.js} +1 -1
  12. package/chunks/{chunk-2T34DNYQ.js → chunk-AVLOK27J.js} +42 -8
  13. package/chunks/{chunk-ZAHZV7IR.js → chunk-BBTV54KB.js} +2 -2
  14. package/chunks/{chunk-4XIYRIZ6.js → chunk-BPZQVC2P.js} +110 -9
  15. package/chunks/{chunk-MUMLIB4J.js → chunk-BUOJN3MM.js} +10481 -8589
  16. package/chunks/{chunk-OV5SE5JD.js → chunk-D46KOV3C.js} +1 -1
  17. package/chunks/{chunk-DU2ZAFA7.js → chunk-F5ORN4YO.js} +1 -1
  18. package/chunks/{chunk-UB3HGW3I.js → chunk-G763GDO6.js} +22 -11
  19. package/chunks/{chunk-7R5J5HSJ.js → chunk-GBEPNWYB.js} +1 -1
  20. package/chunks/{chunk-EYEDXJ2Z.js → chunk-IKOMHTCC.js} +6 -6
  21. package/chunks/{chunk-JAF4PLE7.js → chunk-JMLIPZUU.js} +3 -3
  22. package/chunks/{chunk-KSX2FIAZ.js → chunk-JSYEZAYV.js} +2 -2
  23. package/chunks/{chunk-R7WIF3BU.js → chunk-MVX64PNU.js} +1 -1
  24. package/chunks/{chunk-UEW42CYE.js → chunk-PLYZAP4W.js} +45 -9
  25. package/chunks/{chunk-S2HZQ4RC.js → chunk-R5PDRHEF.js} +1 -0
  26. package/chunks/{chunk-77UV3M62.js → chunk-SCHRFI7O.js} +1 -1
  27. package/chunks/{chunk-OCR7PXOA.js → chunk-SHUT5MQY.js} +1 -1
  28. package/chunks/{chunk-OPFJCRUK.js → chunk-UABFCMPA.js} +2 -1
  29. package/chunks/{chunk-DIO32KR5.js → chunk-UQZQP5PA.js} +11 -11
  30. package/chunks/{chunk-FCY4DV3R.js → chunk-UXBKX55L.js} +10 -6
  31. package/chunks/{computer-use-C5ZJRSKF.js → computer-use-6LZXL3UW.js} +16 -16
  32. package/chunks/{contextCommand-G54AJMCX.js → contextCommand-ZV5QQ2LA.js} +18 -18
  33. package/chunks/{cron-create-PJOVYSIF.js → cron-create-PIPMXQN4.js} +2 -2
  34. package/chunks/{cron-delete-7EYEJ44X.js → cron-delete-6Y5XIDMS.js} +2 -2
  35. package/chunks/{cron-list-LMUJOUDI.js → cron-list-A4WNRUWZ.js} +2 -2
  36. package/chunks/{de-GYJ2LJ32.js → de-M5RPB2NB.js} +10 -1
  37. package/chunks/{edit-JVUXZ6WE.js → edit-J7D6VMPQ.js} +19 -19
  38. package/chunks/{en-QEV466ZF.js → en-UMYKQAZE.js} +11 -1
  39. package/chunks/{enter-worktree-GOVBTJZR.js → enter-worktree-NDJTVGYJ.js} +16 -16
  40. package/chunks/{exit-worktree-YZAGLIWA.js → exit-worktree-UB6XYYAX.js} +16 -16
  41. package/chunks/{exitPlanMode-RY6DM3LO.js → exitPlanMode-V6X2KL4X.js} +16 -16
  42. package/chunks/{fr-GH7C66F4.js → fr-MPYXXXPW.js} +10 -1
  43. package/chunks/{geminiContentGenerator-BB4RL4HR.js → geminiContentGenerator-3AKHMB3P.js} +4 -4
  44. package/chunks/{glob-UZHZN5GU.js → glob-PBG5DRG4.js} +16 -16
  45. package/chunks/{grep-7N5SXCM2.js → grep-VQ56EWQ7.js} +16 -16
  46. package/chunks/{ja-ZXM3KE24.js → ja-NFZ32AB3.js} +10 -1
  47. package/chunks/{keychain-token-storage-25D5QXMC.js → keychain-token-storage-UHGOCDD6.js} +2 -2
  48. package/chunks/{ls-PPWEULT2.js → ls-34DLNYCD.js} +3 -3
  49. package/chunks/{lsp-2BY4ZXDL.js → lsp-NCDEHH3V.js} +2 -2
  50. package/chunks/{monitor-RUX4WCW6.js → monitor-J3YCSOEH.js} +16 -16
  51. package/chunks/{notebook-edit-QSHYIM2C.js → notebook-edit-AL3CBYJ6.js} +17 -17
  52. package/chunks/{openaiContentGenerator-557UCKMQ.js → openaiContentGenerator-3U6UARHS.js} +11 -11
  53. package/chunks/{pt-NHIAQIDQ.js → pt-BR43FRBA.js} +10 -1
  54. package/chunks/{qwenContentGenerator-QG4JMJH5.js → qwenContentGenerator-JRFHJRH6.js} +18 -18
  55. package/chunks/{qwenOAuth2-FUBP4U5T.js → qwenOAuth2-KRJT35QH.js} +4 -4
  56. package/chunks/{read-file-ROG4RM65.js → read-file-ZF6EIVE3.js} +8 -8
  57. package/chunks/{ripGrep-ADC4YGZN.js → ripGrep-N2ZT7M6Z.js} +16 -16
  58. package/chunks/{ru-PWPUZWMR.js → ru-DQCW2KHD.js} +10 -1
  59. package/chunks/{scheduler-SJAUHFQT.js → scheduler-OS37FUFT.js} +16 -16
  60. package/chunks/{send-message-OGMOM5PZ.js → send-message-YYF56TS7.js} +2 -2
  61. package/chunks/{serve-TDCSIUAA.js → serve-ABOLLDNN.js} +18 -18
  62. package/chunks/{shell-CHR54FUA.js → shell-XGN7IDUS.js} +16 -16
  63. package/chunks/{skill-XJVA5TG4.js → skill-YQQ6CR4U.js} +26 -18
  64. package/chunks/{src-7ACBXZIS.js → src-LORPPHWB.js} +65 -21
  65. package/chunks/{syntheticOutput-MS737GGZ.js → syntheticOutput-T5SWX3YF.js} +3 -3
  66. package/chunks/{task-stop-FBGBLI2N.js → task-stop-3VHAQMYM.js} +2 -2
  67. package/chunks/{todoWrite-4NAE33MV.js → todoWrite-EAGJGKO5.js} +4 -4
  68. package/chunks/{tool-search-TVX3HXW5.js → tool-search-PDOJPXJJ.js} +24 -9
  69. package/chunks/{web-fetch-YM7HKIWL.js → web-fetch-SS6IKK6N.js} +4 -4
  70. package/chunks/{write-file-FUPILDLW.js → write-file-VWWCN7LI.js} +19 -19
  71. package/chunks/{zh-CFLG2MJ5.js → zh-6VFXOAR5.js} +11 -1
  72. package/chunks/{zh-TW-7D4PSECL.js → zh-TW-IQZ4AD5M.js} +11 -1
  73. package/cli.js +3391 -959
  74. package/examples/agent/agents/diary.md +86 -0
  75. package/examples/agent/qwen-extension.json +4 -0
  76. package/examples/commands/commands/fs/grep-code.md +3 -0
  77. package/examples/commands/qwen-extension.json +4 -0
  78. package/examples/context/QWEN.md +8 -0
  79. package/examples/context/qwen-extension.json +4 -0
  80. package/examples/mcp-server/example.ts +60 -0
  81. package/examples/mcp-server/package.json +18 -0
  82. package/examples/mcp-server/qwen-extension.json +11 -0
  83. package/examples/mcp-server/tsconfig.json +13 -0
  84. package/examples/skills/qwen-extension.json +4 -0
  85. package/examples/skills/skills/synonyms/SKILL.md +48 -0
  86. package/locales/ca.js +20 -2
  87. package/locales/de.js +20 -2
  88. package/locales/en.js +21 -2
  89. package/locales/fr.js +20 -2
  90. package/locales/ja.js +20 -2
  91. package/locales/pt.js +20 -2
  92. package/locales/ru.js +20 -2
  93. package/locales/zh-TW.js +20 -2
  94. package/locales/zh.js +20 -2
  95. package/package.json +3 -2
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  createDebugLogger
5
- } from "./chunk-S2HZQ4RC.js";
5
+ } from "./chunk-R5PDRHEF.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-A4BMJM77.js";
@@ -3,7 +3,7 @@
3
3
  import {
4
4
  createDebugLogger,
5
5
  isNodeError
6
- } from "./chunk-S2HZQ4RC.js";
6
+ } from "./chunk-R5PDRHEF.js";
7
7
  import {
8
8
  init_esbuild_shims
9
9
  } from "./chunk-A4BMJM77.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  createDebugLogger
5
- } from "./chunk-S2HZQ4RC.js";
5
+ } from "./chunk-R5PDRHEF.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-A4BMJM77.js";
@@ -14282,7 +14282,10 @@ var SchemaValidator = class {
14282
14282
  }
14283
14283
  let valid = validate(data);
14284
14284
  if (!valid && validate.errors) {
14285
- fixBooleanValues(data);
14285
+ fixBooleanValues(
14286
+ data,
14287
+ anySchema
14288
+ );
14286
14289
  fixStringifiedJsonValues(
14287
14290
  data,
14288
14291
  anySchema
@@ -14346,19 +14349,27 @@ function fixStringifiedJsonValues(data, schema) {
14346
14349
  }
14347
14350
  }
14348
14351
  __name(fixStringifiedJsonValues, "fixStringifiedJsonValues");
14349
- function fixBooleanValues(data) {
14352
+ function fixBooleanValues(data, schema) {
14353
+ const properties = schema?.["properties"];
14354
+ const items = schema?.["items"];
14350
14355
  for (const key of Object.keys(data)) {
14351
14356
  if (!(key in data)) continue;
14352
14357
  const value = data[key];
14358
+ const childSchema = Array.isArray(data) ? items : properties?.[key];
14353
14359
  if (typeof value === "object" && value !== null) {
14354
- fixBooleanValues(value);
14355
- } else if (typeof value === "string") {
14356
- const lower = value.toLowerCase();
14357
- if (lower === "true") {
14358
- data[key] = true;
14359
- } else if (lower === "false") {
14360
- data[key] = false;
14361
- }
14360
+ fixBooleanValues(value, childSchema);
14361
+ continue;
14362
+ }
14363
+ if (typeof value !== "string") continue;
14364
+ const accepted = childSchema ? getAcceptedTypes(childSchema) : null;
14365
+ if (!accepted || accepted.has("string") || !accepted.has("boolean")) {
14366
+ continue;
14367
+ }
14368
+ const lower = value.toLowerCase();
14369
+ if (lower === "true") {
14370
+ data[key] = true;
14371
+ } else if (lower === "false") {
14372
+ data[key] = false;
14362
14373
  }
14363
14374
  }
14364
14375
  }
@@ -3,7 +3,7 @@
3
3
  import {
4
4
  getErrorMessage,
5
5
  isNodeError
6
- } from "./chunk-S2HZQ4RC.js";
6
+ } from "./chunk-R5PDRHEF.js";
7
7
  import {
8
8
  init_esbuild_shims
9
9
  } from "./chunk-A4BMJM77.js";
@@ -2,24 +2,24 @@
2
2
  "use strict";
3
3
  import {
4
4
  t
5
- } from "./chunk-DIO32KR5.js";
5
+ } from "./chunk-UQZQP5PA.js";
6
6
  import {
7
7
  computeThresholds,
8
8
  getCoreSystemPrompt
9
- } from "./chunk-MUMLIB4J.js";
9
+ } from "./chunk-BUOJN3MM.js";
10
10
  import {
11
11
  buildSkillLlmContent
12
- } from "./chunk-UEW42CYE.js";
12
+ } from "./chunk-PLYZAP4W.js";
13
13
  import {
14
14
  DiscoveredMCPTool,
15
15
  uiTelemetryService
16
- } from "./chunk-MW6Z7JDT.js";
16
+ } from "./chunk-3H7ENG2Q.js";
17
17
  import {
18
18
  ToolNames
19
- } from "./chunk-UB3HGW3I.js";
19
+ } from "./chunk-G763GDO6.js";
20
20
  import {
21
21
  DEFAULT_TOKEN_LIMIT
22
- } from "./chunk-OV5SE5JD.js";
22
+ } from "./chunk-D46KOV3C.js";
23
23
  import {
24
24
  init_esbuild_shims
25
25
  } from "./chunk-A4BMJM77.js";
@@ -2,14 +2,14 @@
2
2
  "use strict";
3
3
  import {
4
4
  formatFetchErrorForUser
5
- } from "./chunk-7R5J5HSJ.js";
5
+ } from "./chunk-GBEPNWYB.js";
6
6
  import {
7
7
  atomicWriteFile
8
- } from "./chunk-DU2ZAFA7.js";
8
+ } from "./chunk-F5ORN4YO.js";
9
9
  import {
10
10
  Storage,
11
11
  createDebugLogger
12
- } from "./chunk-S2HZQ4RC.js";
12
+ } from "./chunk-R5PDRHEF.js";
13
13
  import {
14
14
  init_esbuild_shims
15
15
  } from "./chunk-A4BMJM77.js";
@@ -2,11 +2,11 @@
2
2
  "use strict";
3
3
  import {
4
4
  atomicWriteFileSync
5
- } from "./chunk-DU2ZAFA7.js";
5
+ } from "./chunk-F5ORN4YO.js";
6
6
  import {
7
7
  Storage,
8
8
  createDebugLogger
9
- } from "./chunk-S2HZQ4RC.js";
9
+ } from "./chunk-R5PDRHEF.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
  createDebugLogger
5
- } from "./chunk-S2HZQ4RC.js";
5
+ } from "./chunk-R5PDRHEF.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-S2HZQ4RC.js";
5
+ } from "./chunk-R5PDRHEF.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-A4BMJM77.js";
@@ -16,10 +16,15 @@ function escapeXml(text) {
16
16
  return text.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&apos;");
17
17
  }
18
18
  __name(escapeXml, "escapeXml");
19
- var XML_TAG_CANDIDATE_RE = /<[^>]*>/g;
19
+ var XML_TAG_CANDIDATE_RE = /<[^<>]*>/g;
20
+ function isXmlWhitespace(char) {
21
+ return char !== void 0 && /\s/.test(char);
22
+ }
23
+ __name(isXmlWhitespace, "isXmlWhitespace");
20
24
  function isSystemReminderTagIgnorable(char) {
21
25
  const codePoint = char.codePointAt(0);
22
- return codePoint === 173 || codePoint === 65279 || codePoint !== void 0 && (codePoint >= 0 && codePoint <= 31 || codePoint >= 127 && codePoint <= 159 || codePoint >= 8203 && codePoint <= 8207 || codePoint >= 8234 && codePoint <= 8238 || codePoint >= 8288 && codePoint <= 8303 || codePoint >= 65024 && codePoint <= 65039);
26
+ if (codePoint === void 0) return false;
27
+ return codePoint === 173 || codePoint === 1564 || codePoint === 12644 || codePoint === 65279 || codePoint === 65440 || codePoint >= 0 && codePoint <= 31 || codePoint >= 127 && codePoint <= 159 || codePoint >= 4447 && codePoint <= 4448 || codePoint >= 6068 && codePoint <= 6069 || codePoint >= 6155 && codePoint <= 6159 || codePoint >= 8203 && codePoint <= 8207 || codePoint >= 8234 && codePoint <= 8238 || codePoint >= 8288 && codePoint <= 8303 || codePoint >= 65024 && codePoint <= 65039 || codePoint >= 65520 && codePoint <= 65528 || codePoint >= 113824 && codePoint <= 113827 || codePoint >= 119155 && codePoint <= 119162 || codePoint >= 917504 && codePoint <= 921599;
23
28
  }
24
29
  __name(isSystemReminderTagIgnorable, "isSystemReminderTagIgnorable");
25
30
  function normalizeSystemReminderCandidateTag(tag) {
@@ -34,13 +39,34 @@ function normalizeSystemReminderCandidateTag(tag) {
34
39
  __name(normalizeSystemReminderCandidateTag, "normalizeSystemReminderCandidateTag");
35
40
  function getSystemReminderTagKind(tag) {
36
41
  const normalized = normalizeSystemReminderCandidateTag(tag);
37
- const match = /^<\s*(\/?)\s*system-reminder(?:\s+[^>]*)?\s*(\/?)\s*>$/.exec(
38
- normalized
39
- );
40
- if (!match) {
42
+ const len = normalized.length;
43
+ if (len < 2 || normalized[0] !== "<" || normalized[len - 1] !== ">") {
44
+ return void 0;
45
+ }
46
+ let i = 1;
47
+ while (i < len && isXmlWhitespace(normalized[i])) i++;
48
+ let closing = false;
49
+ if (normalized[i] === "/") {
50
+ closing = true;
51
+ i++;
52
+ }
53
+ while (i < len && isXmlWhitespace(normalized[i])) i++;
54
+ const TAG_NAME = "system-reminder";
55
+ if (normalized.slice(i, i + TAG_NAME.length) !== TAG_NAME) {
56
+ return void 0;
57
+ }
58
+ i += TAG_NAME.length;
59
+ if (i < len - 1 && isXmlWhitespace(normalized[i])) {
60
+ while (i < len && isXmlWhitespace(normalized[i])) i++;
61
+ while (i < len && normalized[i] !== ">") i++;
62
+ }
63
+ while (i < len && isXmlWhitespace(normalized[i])) i++;
64
+ if (normalized[i] === "/") i++;
65
+ while (i < len && isXmlWhitespace(normalized[i])) i++;
66
+ if (i !== len - 1 || normalized[i] !== ">") {
41
67
  return void 0;
42
68
  }
43
- return match[1] ? "closing" : "other";
69
+ return closing ? "closing" : "other";
44
70
  }
45
71
  __name(getSystemReminderTagKind, "getSystemReminderTagKind");
46
72
  function escapeSystemReminderTag(tag) {
@@ -131,12 +157,22 @@ ${body}
131
157
  `;
132
158
  }
133
159
  __name(buildSkillLlmContent, "buildSkillLlmContent");
160
+ function applySkillAllowedTools(permissionManager, allowedTools) {
161
+ if (!permissionManager || !allowedTools?.length) {
162
+ return;
163
+ }
164
+ for (const rule of allowedTools) {
165
+ permissionManager.addSessionAllowRule(rule);
166
+ }
167
+ }
168
+ __name(applySkillAllowedTools, "applySkillAllowedTools");
134
169
 
135
170
  export {
136
171
  escapeXml,
137
172
  escapeSystemReminderTags,
138
173
  registerSkillHooks,
139
- buildSkillLlmContent
174
+ buildSkillLlmContent,
175
+ applySkillAllowedTools
140
176
  };
141
177
  /**
142
178
  * @license
@@ -884,6 +884,7 @@ function runWithDebugLogSession(session, fn) {
884
884
  __name(runWithDebugLogSession, "runWithDebugLogSession");
885
885
  function createDebugLogger(tag) {
886
886
  return {
887
+ isEnabled: /* @__PURE__ */ __name(() => getActiveSession() !== null, "isEnabled"),
887
888
  debug: /* @__PURE__ */ __name((...args) => {
888
889
  const session = getActiveSession();
889
890
  if (!session) return;
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-OFEVLU4C.js";
6
6
  import {
7
7
  SchemaValidator
8
- } from "./chunk-UB3HGW3I.js";
8
+ } from "./chunk-G763GDO6.js";
9
9
  import {
10
10
  init_esbuild_shims
11
11
  } from "./chunk-A4BMJM77.js";
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  ToolNames
5
- } from "./chunk-UB3HGW3I.js";
5
+ } from "./chunk-G763GDO6.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-S2HZQ4RC.js";
5
+ } from "./chunk-R5PDRHEF.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-A4BMJM77.js";
@@ -41,6 +41,7 @@ var HookEventName = /* @__PURE__ */ ((HookEventName2) => {
41
41
  HookEventName2["StopFailure"] = "StopFailure";
42
42
  HookEventName2["TodoCreated"] = "TodoCreated";
43
43
  HookEventName2["TodoCompleted"] = "TodoCompleted";
44
+ HookEventName2["InstructionsLoaded"] = "InstructionsLoaded";
44
45
  return HookEventName2;
45
46
  })(HookEventName || {});
46
47
  var HookPhase = /* @__PURE__ */ ((HookPhase2) => {
@@ -2,10 +2,10 @@
2
2
  "use strict";
3
3
  import {
4
4
  resolveBundleDir
5
- } from "./chunk-MUMLIB4J.js";
5
+ } from "./chunk-BUOJN3MM.js";
6
6
  import {
7
7
  Storage
8
- } from "./chunk-S2HZQ4RC.js";
8
+ } from "./chunk-R5PDRHEF.js";
9
9
  import {
10
10
  init_esbuild_shims
11
11
  } from "./chunk-A4BMJM77.js";
@@ -169,15 +169,15 @@ init_esbuild_shims();
169
169
 
170
170
  // import("./locales/**/*.js") in packages/cli/src/i18n/index.ts
171
171
  var globImport_locales_js = __glob({
172
- "./locales/ca.js": () => import("./ca-AD47AV3M.js"),
173
- "./locales/de.js": () => import("./de-GYJ2LJ32.js"),
174
- "./locales/en.js": () => import("./en-QEV466ZF.js"),
175
- "./locales/fr.js": () => import("./fr-GH7C66F4.js"),
176
- "./locales/ja.js": () => import("./ja-ZXM3KE24.js"),
177
- "./locales/pt.js": () => import("./pt-NHIAQIDQ.js"),
178
- "./locales/ru.js": () => import("./ru-PWPUZWMR.js"),
179
- "./locales/zh-TW.js": () => import("./zh-TW-7D4PSECL.js"),
180
- "./locales/zh.js": () => import("./zh-CFLG2MJ5.js")
172
+ "./locales/ca.js": () => import("./ca-WRHFBIDH.js"),
173
+ "./locales/de.js": () => import("./de-M5RPB2NB.js"),
174
+ "./locales/en.js": () => import("./en-UMYKQAZE.js"),
175
+ "./locales/fr.js": () => import("./fr-MPYXXXPW.js"),
176
+ "./locales/ja.js": () => import("./ja-NFZ32AB3.js"),
177
+ "./locales/pt.js": () => import("./pt-BR43FRBA.js"),
178
+ "./locales/ru.js": () => import("./ru-DQCW2KHD.js"),
179
+ "./locales/zh-TW.js": () => import("./zh-TW-IQZ4AD5M.js"),
180
+ "./locales/zh.js": () => import("./zh-6VFXOAR5.js")
181
181
  });
182
182
 
183
183
  // packages/cli/src/i18n/index.ts
@@ -2,16 +2,16 @@
2
2
  "use strict";
3
3
  import {
4
4
  RequestTokenizer
5
- } from "./chunk-ZAHZV7IR.js";
5
+ } from "./chunk-BBTV54KB.js";
6
6
  import {
7
7
  OpenAIContentConverter,
8
8
  TaggedThinkingParser,
9
9
  openaiRequestCaptureContext
10
- } from "./chunk-MW6Z7JDT.js";
10
+ } from "./chunk-3H7ENG2Q.js";
11
11
  import {
12
12
  buildRuntimeFetchOptions,
13
13
  redactProxyError
14
- } from "./chunk-R7WIF3BU.js";
14
+ } from "./chunk-MVX64PNU.js";
15
15
  import {
16
16
  CAPPED_DEFAULT_MAX_TOKENS,
17
17
  DASHSCOPE_PROXY_BASE_URL,
@@ -22,14 +22,14 @@ import {
22
22
  runtimeDiagnostics,
23
23
  safeJsonParse,
24
24
  tokenLimit
25
- } from "./chunk-OV5SE5JD.js";
25
+ } from "./chunk-D46KOV3C.js";
26
26
  import {
27
27
  GenerateContentResponse
28
28
  } from "./chunk-BNESGOSJ.js";
29
29
  import {
30
30
  createDebugLogger,
31
31
  isAbortError
32
- } from "./chunk-S2HZQ4RC.js";
32
+ } from "./chunk-R5PDRHEF.js";
33
33
  import {
34
34
  init_esbuild_shims
35
35
  } from "./chunk-A4BMJM77.js";
@@ -7287,8 +7287,12 @@ var DashScopeOpenAICompatibleProvider = class _DashScopeOpenAICompatibleProvider
7287
7287
  // qwen-vl-max, qwen-vl-max-latest, etc.
7288
7288
  "qwen3-vl-plus",
7289
7289
  // qwen3-vl-plus variants
7290
- "qwen3.5-plus"
7290
+ "qwen3.5-plus",
7291
7291
  // qwen3.5-plus (has built-in vision capabilities)
7292
+ "qwen3.6-plus",
7293
+ // qwen3.6-plus (multimodal)
7294
+ "qwen3.7-plus"
7295
+ // qwen3.7-plus (multimodal)
7292
7296
  ];
7293
7297
  isVisionModel(model) {
7294
7298
  if (!model) {
@@ -3,38 +3,38 @@
3
3
  import {
4
4
  Client,
5
5
  StdioClientTransport
6
- } from "./chunk-MUMLIB4J.js";
6
+ } from "./chunk-BUOJN3MM.js";
7
7
  import "./chunk-K5PGHDBN.js";
8
8
  import "./chunk-O4PICXES.js";
9
9
  import "./chunk-TW522KN6.js";
10
10
  import "./chunk-MLZQVCF3.js";
11
- import "./chunk-77UV3M62.js";
12
- import "./chunk-UEW42CYE.js";
13
- import "./chunk-OPFJCRUK.js";
11
+ import "./chunk-SCHRFI7O.js";
12
+ import "./chunk-PLYZAP4W.js";
13
+ import "./chunk-UABFCMPA.js";
14
14
  import "./chunk-77WXWU44.js";
15
- import "./chunk-LESSBSSE.js";
15
+ import "./chunk-6VFG3EUJ.js";
16
16
  import {
17
17
  safeJsonStringify
18
- } from "./chunk-MW6Z7JDT.js";
18
+ } from "./chunk-3H7ENG2Q.js";
19
19
  import "./chunk-3PJXIDKI.js";
20
20
  import "./chunk-UWCTAVOD.js";
21
21
  import "./chunk-OFEVLU4C.js";
22
- import "./chunk-2T34DNYQ.js";
23
- import "./chunk-KSX2FIAZ.js";
24
- import "./chunk-UKQJ7G3U.js";
22
+ import "./chunk-AVLOK27J.js";
23
+ import "./chunk-JSYEZAYV.js";
24
+ import "./chunk-5RNZ2QKF.js";
25
25
  import {
26
26
  BaseDeclarativeTool,
27
27
  BaseToolInvocation
28
- } from "./chunk-UB3HGW3I.js";
29
- import "./chunk-JAF4PLE7.js";
30
- import "./chunk-7R5J5HSJ.js";
31
- import "./chunk-DU2ZAFA7.js";
32
- import "./chunk-R7WIF3BU.js";
33
- import "./chunk-OV5SE5JD.js";
28
+ } from "./chunk-G763GDO6.js";
29
+ import "./chunk-JMLIPZUU.js";
30
+ import "./chunk-GBEPNWYB.js";
31
+ import "./chunk-F5ORN4YO.js";
32
+ import "./chunk-MVX64PNU.js";
33
+ import "./chunk-D46KOV3C.js";
34
34
  import "./chunk-BNESGOSJ.js";
35
35
  import "./chunk-SZOEIL6S.js";
36
36
  import "./chunk-5IFG2VC4.js";
37
- import "./chunk-S2HZQ4RC.js";
37
+ import "./chunk-R5PDRHEF.js";
38
38
  import "./chunk-ZERZSAZL.js";
39
39
  import "./chunk-QN5NZ3UQ.js";
40
40
  import "./chunk-BR4QREVK.js";
@@ -4,35 +4,35 @@ import {
4
4
  collectContextData,
5
5
  contextCommand,
6
6
  formatContextUsageText
7
- } from "./chunk-EYEDXJ2Z.js";
8
- import "./chunk-DIO32KR5.js";
9
- import "./chunk-MUMLIB4J.js";
7
+ } from "./chunk-IKOMHTCC.js";
8
+ import "./chunk-UQZQP5PA.js";
9
+ import "./chunk-BUOJN3MM.js";
10
10
  import "./chunk-K5PGHDBN.js";
11
11
  import "./chunk-O4PICXES.js";
12
12
  import "./chunk-TW522KN6.js";
13
13
  import "./chunk-MLZQVCF3.js";
14
- import "./chunk-77UV3M62.js";
15
- import "./chunk-UEW42CYE.js";
16
- import "./chunk-OPFJCRUK.js";
14
+ import "./chunk-SCHRFI7O.js";
15
+ import "./chunk-PLYZAP4W.js";
16
+ import "./chunk-UABFCMPA.js";
17
17
  import "./chunk-77WXWU44.js";
18
- import "./chunk-LESSBSSE.js";
19
- import "./chunk-MW6Z7JDT.js";
18
+ import "./chunk-6VFG3EUJ.js";
19
+ import "./chunk-3H7ENG2Q.js";
20
20
  import "./chunk-3PJXIDKI.js";
21
21
  import "./chunk-UWCTAVOD.js";
22
22
  import "./chunk-OFEVLU4C.js";
23
- import "./chunk-2T34DNYQ.js";
24
- import "./chunk-KSX2FIAZ.js";
25
- import "./chunk-UKQJ7G3U.js";
26
- import "./chunk-UB3HGW3I.js";
27
- import "./chunk-JAF4PLE7.js";
28
- import "./chunk-7R5J5HSJ.js";
29
- import "./chunk-DU2ZAFA7.js";
30
- import "./chunk-R7WIF3BU.js";
31
- import "./chunk-OV5SE5JD.js";
23
+ import "./chunk-AVLOK27J.js";
24
+ import "./chunk-JSYEZAYV.js";
25
+ import "./chunk-5RNZ2QKF.js";
26
+ import "./chunk-G763GDO6.js";
27
+ import "./chunk-JMLIPZUU.js";
28
+ import "./chunk-GBEPNWYB.js";
29
+ import "./chunk-F5ORN4YO.js";
30
+ import "./chunk-MVX64PNU.js";
31
+ import "./chunk-D46KOV3C.js";
32
32
  import "./chunk-BNESGOSJ.js";
33
33
  import "./chunk-SZOEIL6S.js";
34
34
  import "./chunk-5IFG2VC4.js";
35
- import "./chunk-S2HZQ4RC.js";
35
+ import "./chunk-R5PDRHEF.js";
36
36
  import "./chunk-ZERZSAZL.js";
37
37
  import "./chunk-QN5NZ3UQ.js";
38
38
  import "./chunk-BR4QREVK.js";
@@ -11,8 +11,8 @@ import {
11
11
  BaseToolInvocation,
12
12
  ToolDisplayNames,
13
13
  ToolNames
14
- } from "./chunk-UB3HGW3I.js";
15
- import "./chunk-S2HZQ4RC.js";
14
+ } from "./chunk-G763GDO6.js";
15
+ import "./chunk-R5PDRHEF.js";
16
16
  import "./chunk-WFVXF3OM.js";
17
17
  import {
18
18
  init_esbuild_shims
@@ -5,8 +5,8 @@ import {
5
5
  BaseToolInvocation,
6
6
  ToolDisplayNames,
7
7
  ToolNames
8
- } from "./chunk-UB3HGW3I.js";
9
- import "./chunk-S2HZQ4RC.js";
8
+ } from "./chunk-G763GDO6.js";
9
+ import "./chunk-R5PDRHEF.js";
10
10
  import "./chunk-WFVXF3OM.js";
11
11
  import {
12
12
  init_esbuild_shims
@@ -8,8 +8,8 @@ import {
8
8
  BaseToolInvocation,
9
9
  ToolDisplayNames,
10
10
  ToolNames
11
- } from "./chunk-UB3HGW3I.js";
12
- import "./chunk-S2HZQ4RC.js";
11
+ } from "./chunk-G763GDO6.js";
12
+ import "./chunk-R5PDRHEF.js";
13
13
  import "./chunk-WFVXF3OM.js";
14
14
  import {
15
15
  init_esbuild_shims
@@ -150,7 +150,7 @@ var de_default = {
150
150
  "open full Qwen Code documentation in your browser": "Vollst\xE4ndige Qwen Code Dokumentation im Browser \xF6ffnen",
151
151
  "Configuration not available.": "Konfiguration nicht verf\xFCgbar.",
152
152
  "Connect an LLM provider": "LLM-Anbieter verbinden",
153
- "Copy the last result or code snippet to clipboard": "Letztes Ergebnis oder Codeausschnitt in die Zwischenablage kopieren",
153
+ "Copy the last AI response to clipboard (/copy N for Nth-latest)": "Letzte KI-Antwort in die Zwischenablage kopieren (/copy N f\xFCr die N-letzte)",
154
154
  // ============================================================================
155
155
  // Commands - Agents
156
156
  // ============================================================================
@@ -578,6 +578,15 @@ var de_default = {
578
578
  // ============================================================================
579
579
  "Resume a previous session": "Eine vorherige Sitzung fortsetzen",
580
580
  "Fork the current conversation into a new session": "Die aktuelle Unterhaltung in eine neue Sitzung verzweigen",
581
+ "Spawn a background agent that inherits the full conversation": "Einen Hintergrund-Agenten starten, der die gesamte Unterhaltung \xFCbernimmt",
582
+ "Please provide a directive. Usage: /fork <directive>": "Bitte geben Sie eine Anweisung an. Verwendung: /fork <Anweisung>",
583
+ "Cannot fork while a response or tool call is in progress. Wait for it to finish or resolve the pending tool call.": "W\xE4hrend eine Antwort oder ein Tool-Aufruf l\xE4uft, kann kein Hintergrund-Fork erstellt werden. Warten Sie, bis der Vorgang abgeschlossen ist, oder bearbeiten Sie den ausstehenden Tool-Aufruf.",
584
+ "Cannot fork before the first conversation turn.": "Vor der ersten Gespr\xE4chsrunde kann kein Fork erstellt werden.",
585
+ "The /fork command requires the fork feature gate. Set QWEN_CODE_ENABLE_FORK_SUBAGENT=1 to enable it.": "Der Befehl /fork erfordert das Fork-Feature-Gate. Setzen Sie QWEN_CODE_ENABLE_FORK_SUBAGENT=1, um es zu aktivieren.",
586
+ "The agent tool is unavailable; cannot fork.": "Das Agent-Tool ist nicht verf\xFCgbar; Fork kann nicht gestartet werden.",
587
+ "Failed to launch fork: {{error}}": "Fork konnte nicht gestartet werden: {{error}}",
588
+ "User launched a background fork via /fork: {{directive}}": "Benutzer hat \xFCber /fork einen Hintergrund-Fork gestartet: {{directive}}",
589
+ "Forked into a background agent. It inherits this conversation and runs without blocking \u2014 track it in the background tasks panel; it reports back when done.": "In einen Hintergrund-Agenten verzweigt. Er \xFCbernimmt diese Unterhaltung und l\xE4uft ohne zu blockieren \u2014 verfolgen Sie ihn im Hintergrundaufgaben-Panel; er meldet sich nach Abschluss zur\xFCck.",
581
590
  "Cannot branch while a response or tool call is in progress. Wait for it to finish or resolve the pending tool call.": "W\xE4hrend eine Antwort oder ein Tool-Aufruf l\xE4uft, kann keine Verzweigung erstellt werden. Warten Sie, bis der Vorgang abgeschlossen ist, oder bearbeiten Sie den ausstehenden Tool-Aufruf.",
582
591
  "No conversation to branch.": "Keine Unterhaltung zum Verzweigen vorhanden.",
583
592
  "Restore a tool call. This will reset the conversation and file history to the state it was in when the tool call was suggested": "Einen Tool-Aufruf wiederherstellen. Dadurch werden Konversations- und Dateiverlauf auf den Zustand zur\xFCckgesetzt, in dem der Tool-Aufruf vorgeschlagen wurde",
@@ -3,7 +3,7 @@
3
3
  import {
4
4
  StructuredToolError,
5
5
  checkPriorRead
6
- } from "./chunk-OCR7PXOA.js";
6
+ } from "./chunk-SHUT5MQY.js";
7
7
  import {
8
8
  CommitAttributionService,
9
9
  DEFAULT_DIFF_OPTIONS,
@@ -13,16 +13,16 @@ import {
13
13
  getDiffStat,
14
14
  needsUtf8Bom,
15
15
  safeLiteralReplace
16
- } from "./chunk-MUMLIB4J.js";
16
+ } from "./chunk-BUOJN3MM.js";
17
17
  import "./chunk-K5PGHDBN.js";
18
18
  import "./chunk-O4PICXES.js";
19
19
  import "./chunk-TW522KN6.js";
20
20
  import "./chunk-MLZQVCF3.js";
21
- import "./chunk-77UV3M62.js";
22
- import "./chunk-UEW42CYE.js";
23
- import "./chunk-OPFJCRUK.js";
21
+ import "./chunk-SCHRFI7O.js";
22
+ import "./chunk-PLYZAP4W.js";
23
+ import "./chunk-UABFCMPA.js";
24
24
  import "./chunk-77WXWU44.js";
25
- import "./chunk-LESSBSSE.js";
25
+ import "./chunk-6VFG3EUJ.js";
26
26
  import {
27
27
  FileOperationEvent,
28
28
  ReadFileTool,
@@ -30,25 +30,25 @@ import {
30
30
  getLanguageFromFilePath,
31
31
  getSpecificMimeType,
32
32
  logFileOperation
33
- } from "./chunk-MW6Z7JDT.js";
33
+ } from "./chunk-3H7ENG2Q.js";
34
34
  import "./chunk-3PJXIDKI.js";
35
35
  import "./chunk-UWCTAVOD.js";
36
36
  import "./chunk-OFEVLU4C.js";
37
37
  import {
38
- isAutoMemPath
39
- } from "./chunk-2T34DNYQ.js";
40
- import "./chunk-KSX2FIAZ.js";
41
- import "./chunk-UKQJ7G3U.js";
38
+ isAnyAutoMemPath
39
+ } from "./chunk-AVLOK27J.js";
40
+ import "./chunk-JSYEZAYV.js";
41
+ import "./chunk-5RNZ2QKF.js";
42
42
  import {
43
43
  BaseDeclarativeTool,
44
44
  ToolDisplayNames,
45
45
  ToolNames
46
- } from "./chunk-UB3HGW3I.js";
47
- import "./chunk-JAF4PLE7.js";
48
- import "./chunk-7R5J5HSJ.js";
49
- import "./chunk-DU2ZAFA7.js";
50
- import "./chunk-R7WIF3BU.js";
51
- import "./chunk-OV5SE5JD.js";
46
+ } from "./chunk-G763GDO6.js";
47
+ import "./chunk-JMLIPZUU.js";
48
+ import "./chunk-GBEPNWYB.js";
49
+ import "./chunk-F5ORN4YO.js";
50
+ import "./chunk-MVX64PNU.js";
51
+ import "./chunk-D46KOV3C.js";
52
52
  import "./chunk-BNESGOSJ.js";
53
53
  import "./chunk-SZOEIL6S.js";
54
54
  import "./chunk-5IFG2VC4.js";
@@ -58,7 +58,7 @@ import {
58
58
  makeRelative,
59
59
  shortenPath,
60
60
  unescapePath
61
- } from "./chunk-S2HZQ4RC.js";
61
+ } from "./chunk-R5PDRHEF.js";
62
62
  import "./chunk-ZERZSAZL.js";
63
63
  import "./chunk-QN5NZ3UQ.js";
64
64
  import "./chunk-BR4QREVK.js";
@@ -570,7 +570,7 @@ var EditToolInvocation = class {
570
570
  */
571
571
  async getDefaultPermission() {
572
572
  const projectRoot = this.config.getProjectRoot();
573
- if (isAutoMemPath(path.resolve(this.params.file_path), projectRoot)) {
573
+ if (isAnyAutoMemPath(path.resolve(this.params.file_path), projectRoot)) {
574
574
  return "allow";
575
575
  }
576
576
  return "ask";