@qwen-code/qwen-code 0.17.1 → 0.18.0-preview.1

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 (120) hide show
  1. package/README.md +4 -6
  2. package/bundled/qc-helper/SKILL.md +30 -24
  3. package/bundled/qc-helper/docs/features/auto-mode.md +54 -9
  4. package/bundled/qc-helper/docs/features/commands.md +11 -11
  5. package/bundled/qc-helper/docs/features/markdown-rendering.md +21 -1
  6. package/bundled/qc-helper/docs/overview.md +4 -4
  7. package/bundled/qc-helper/docs/quickstart.md +4 -4
  8. package/bundled/qc-helper/docs/support/Uninstall.md +19 -1
  9. package/bundled/qc-helper/docs/support/troubleshooting.md +2 -1
  10. package/chunks/{agent-ZJHHICAC.js → agent-SXS4NQWS.js} +18 -22
  11. package/chunks/{anthropicContentGenerator-M45RXZVS.js → anthropicContentGenerator-4QBVSFSJ.js} +5 -5
  12. package/chunks/{askUserQuestion-TGRD7FNQ.js → askUserQuestion-NOOLRWCJ.js} +5 -7
  13. package/chunks/{ca-6RSCDYUS.js → ca-WRHFBIDH.js} +38 -3
  14. package/chunks/{chunk-SOGUPKP6.js → chunk-5RNZ2QKF.js} +3 -5
  15. package/chunks/{chunk-2KEXT6RB.js → chunk-6KH2Q7XN.js} +91245 -78527
  16. package/chunks/{chunk-GVWPJCXU.js → chunk-6VFG3EUJ.js} +1 -1
  17. package/chunks/{chunk-NQ3E7YLD.js → chunk-AVLOK27J.js} +42 -8
  18. package/chunks/{chunk-JBSYXHJF.js → chunk-BBTV54KB.js} +2 -2
  19. package/chunks/{chunk-3BJBCG2K.js → chunk-C6WMLUNB.js} +1 -1
  20. package/chunks/{chunk-TDZCEIK6.js → chunk-D46KOV3C.js} +1 -1
  21. package/chunks/{chunk-NJJER6E2.js → chunk-ERREX2ES.js} +10 -6
  22. package/chunks/{chunk-HX3JRTWL.js → chunk-F5ORN4YO.js} +1 -1
  23. package/chunks/{chunk-C5CUHYSM.js → chunk-F6FLCHCS.js} +895 -490
  24. package/chunks/{chunk-JKUAX6UT.js → chunk-G763GDO6.js} +125 -12
  25. package/chunks/{chunk-OIL7KDWV.js → chunk-GBEPNWYB.js} +1 -1
  26. package/chunks/{chunk-G4K6P5KN.js → chunk-JMLIPZUU.js} +3 -3
  27. package/chunks/{chunk-OJFMTECH.js → chunk-JSYEZAYV.js} +2 -2
  28. package/chunks/{chunk-AKBFRR6J.js → chunk-K5PGHDBN.js} +132 -112
  29. package/chunks/{chunk-5JBZM7FZ.js → chunk-KOA52UTF.js} +6 -6
  30. package/chunks/{chunk-QVJ33ZBG.js → chunk-MVX64PNU.js} +1 -1
  31. package/chunks/{chunk-PLYRQYKC.js → chunk-NQZ33PWX.js} +11 -11
  32. package/chunks/{chunk-EY6BDW7Y.js → chunk-PLYZAP4W.js} +45 -9
  33. package/chunks/{chunk-ACBGEKB7.js → chunk-R5PDRHEF.js} +2 -1
  34. package/chunks/{chunk-6O244QKR.js → chunk-SCHRFI7O.js} +1 -1
  35. package/chunks/{chunk-GJHMAWS7.js → chunk-SHUT5MQY.js} +1 -1
  36. package/chunks/{chunk-RQW7WUJR.js → chunk-UABFCMPA.js} +34 -6
  37. package/chunks/{chunk-33RDTIU6.js → chunk-UFC57OYT.js} +3 -5
  38. package/chunks/{chunk-NP3ICQCN.js → chunk-USE2VQ5P.js} +1 -1
  39. package/chunks/{chunk-QWSRH265.js → chunk-WFVXF3OM.js} +776 -776
  40. package/chunks/{chunk-X2474BTT.js → chunk-ZW7GBCRE.js} +147 -10
  41. package/chunks/{computer-use-NAHQPV2L.js → computer-use-CT6MU6P3.js} +51 -18
  42. package/chunks/contextCommand-YODJQYIV.js +46 -0
  43. package/chunks/{cron-create-V3UK2SJN.js → cron-create-PIPMXQN4.js} +5 -7
  44. package/chunks/{cron-delete-MANALPCP.js → cron-delete-6Y5XIDMS.js} +5 -7
  45. package/chunks/{cron-list-UDIYK3B3.js → cron-list-A4WNRUWZ.js} +5 -7
  46. package/chunks/{de-APURNJ3I.js → de-M5RPB2NB.js} +38 -3
  47. package/chunks/{dist-XTTPOFAH.js → dist-BXDUQ2QY.js} +3 -4
  48. package/chunks/{dist-AHZNZWRI.js → dist-R2SXPG74.js} +4 -5
  49. package/chunks/{dist-ATAKC63R.js → dist-TE5QKMGR.js} +3 -4
  50. package/chunks/{dist-6RUZ2JD6.js → dist-ZMQ4TXD5.js} +3 -4
  51. package/chunks/{edit-JWXCQ4KK.js → edit-A4YK7AIB.js} +22 -27
  52. package/chunks/{en-FYO57HJW.js → en-UMYKQAZE.js} +46 -3
  53. package/chunks/{enter-worktree-G4CJXPT4.js → enter-worktree-VNEQINLC.js} +20 -25
  54. package/chunks/{exit-worktree-MYZ2FGU2.js → exit-worktree-AVSMXC33.js} +20 -25
  55. package/chunks/{exitPlanMode-ELJ6FSMU.js → exitPlanMode-5SQYVROD.js} +20 -25
  56. package/chunks/{fr-32YHQZIS.js → fr-MPYXXXPW.js} +38 -3
  57. package/chunks/{geminiContentGenerator-3LR7MKCQ.js → geminiContentGenerator-CR2WGARL.js} +5 -5
  58. package/chunks/{getMachineId-bsd-GS3V2GK7.js → getMachineId-bsd-F7GNPTER.js} +1 -1
  59. package/chunks/{getMachineId-darwin-ZQB4Q7EW.js → getMachineId-darwin-T73DJL27.js} +1 -1
  60. package/chunks/{getMachineId-linux-JQ4NN4DN.js → getMachineId-linux-MKQTFPQM.js} +1 -1
  61. package/chunks/{getMachineId-unsupported-U7H4V4HJ.js → getMachineId-unsupported-MUR5KOQE.js} +1 -1
  62. package/chunks/{getMachineId-win-VHUZGBQ3.js → getMachineId-win-CDYFC6ZM.js} +1 -1
  63. package/chunks/{glob-CANUAUTC.js → glob-5V32KOG5.js} +20 -25
  64. package/chunks/{grep-WZWNJRDX.js → grep-PUTEPBR4.js} +20 -25
  65. package/chunks/{ja-PEUXN4XT.js → ja-NFZ32AB3.js} +38 -3
  66. package/chunks/{keychain-token-storage-3552ENXE.js → keychain-token-storage-UHGOCDD6.js} +3 -3
  67. package/chunks/{ls-T4SVZWR6.js → ls-34DLNYCD.js} +6 -8
  68. package/chunks/{lsp-U4ZQLNIS.js → lsp-NCDEHH3V.js} +5 -7
  69. package/chunks/{monitor-CCKNOUFG.js → monitor-EJBR5VCR.js} +20 -25
  70. package/chunks/{notebook-edit-XDUY5Q4I.js → notebook-edit-DZHGPP2L.js} +21 -26
  71. package/chunks/{openaiContentGenerator-N3O3MYIT.js → openaiContentGenerator-4QNV3CHM.js} +12 -14
  72. package/chunks/{pt-2INS7YVC.js → pt-BR43FRBA.js} +38 -3
  73. package/chunks/{qwenContentGenerator-DEOIWKVH.js → qwenContentGenerator-3XOCEMQO.js} +20 -24
  74. package/chunks/{qwenOAuth2-LKXG7XVO.js → qwenOAuth2-KRJT35QH.js} +5 -5
  75. package/chunks/{read-file-BRNXGILN.js → read-file-VZ2SQQIX.js} +9 -11
  76. package/chunks/ripGrep-SBIZCPOL.js +42 -0
  77. package/chunks/{ru-6CQ5HNHB.js → ru-DQCW2KHD.js} +38 -3
  78. package/chunks/{scheduler-SSFABMN5.js → scheduler-H32DZVDV.js} +18 -22
  79. package/chunks/{send-message-GFYV7WLL.js → send-message-YYF56TS7.js} +5 -7
  80. package/chunks/{serve-B5O72CRN.js → serve-56G4B5W6.js} +21 -25
  81. package/chunks/{shell-SGYNBVMK.js → shell-Q77KNP4N.js} +18 -22
  82. package/chunks/{skill-V7Y6DOFB.js → skill-CLWFJYBG.js} +88 -25
  83. package/chunks/{src-OKFFQGXB.js → src-47L2LUOU.js} +90 -33
  84. package/chunks/{syntheticOutput-DM43O6TY.js → syntheticOutput-T5SWX3YF.js} +4 -5
  85. package/chunks/{task-stop-WKP5OB3V.js → task-stop-3VHAQMYM.js} +5 -7
  86. package/chunks/{todoWrite-GHL6DCLP.js → todoWrite-EAGJGKO5.js} +7 -9
  87. package/chunks/{tool-search-7MHT3HGM.js → tool-search-Q75AYDTP.js} +27 -15
  88. package/chunks/{web-fetch-SZIV74ZX.js → web-fetch-SS6IKK6N.js} +7 -9
  89. package/chunks/{write-file-ARS2Z6BJ.js → write-file-RENGC25N.js} +23 -28
  90. package/chunks/{zh-ZHZCMIRG.js → zh-6VFXOAR5.js} +49 -3
  91. package/chunks/{zh-TW-SSL3ATVZ.js → zh-TW-IQZ4AD5M.js} +45 -3
  92. package/cli.js +8153 -4156
  93. package/examples/agent/agents/diary.md +86 -0
  94. package/examples/agent/qwen-extension.json +4 -0
  95. package/examples/commands/commands/fs/grep-code.md +3 -0
  96. package/examples/commands/qwen-extension.json +4 -0
  97. package/examples/context/QWEN.md +8 -0
  98. package/examples/context/qwen-extension.json +4 -0
  99. package/examples/mcp-server/example.ts +60 -0
  100. package/examples/mcp-server/package.json +18 -0
  101. package/examples/mcp-server/qwen-extension.json +11 -0
  102. package/examples/mcp-server/tsconfig.json +13 -0
  103. package/examples/skills/qwen-extension.json +4 -0
  104. package/examples/skills/skills/synonyms/SKILL.md +48 -0
  105. package/locales/ca.js +64 -4
  106. package/locales/de.js +63 -4
  107. package/locales/en.js +75 -4
  108. package/locales/fr.js +65 -4
  109. package/locales/ja.js +61 -4
  110. package/locales/pt.js +64 -4
  111. package/locales/ru.js +62 -4
  112. package/locales/zh-TW.js +70 -4
  113. package/locales/zh.js +74 -4
  114. package/package.json +3 -2
  115. package/chunks/chunk-24YKA2DA.js +0 -233
  116. package/chunks/chunk-6RQTH7UQ.js +0 -115
  117. package/chunks/chunk-7TQVELRB.js +0 -10412
  118. package/chunks/chunk-W57YDFU5.js +0 -41
  119. package/chunks/contextCommand-7KJT3UJS.js +0 -50
  120. package/chunks/ripGrep-ZRY5PKUZ.js +0 -46
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
  import {
4
4
  createDebugLogger
5
- } from "./chunk-ACBGEKB7.js";
5
+ } from "./chunk-R5PDRHEF.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-A4BMJM77.js";
@@ -3,8 +3,9 @@
3
3
  import {
4
4
  QWEN_DIR,
5
5
  Storage,
6
+ resolvePath,
6
7
  sanitizeCwd
7
- } from "./chunk-ACBGEKB7.js";
8
+ } from "./chunk-R5PDRHEF.js";
8
9
  import {
9
10
  init_esbuild_shims
10
11
  } from "./chunk-A4BMJM77.js";
@@ -21,6 +22,7 @@ var AUTO_MEMORY_INDEX_FILENAME = "MEMORY.md";
21
22
  var AUTO_MEMORY_METADATA_FILENAME = "meta.json";
22
23
  var AUTO_MEMORY_EXTRACT_CURSOR_FILENAME = "extract-cursor.json";
23
24
  var AUTO_MEMORY_CONSOLIDATION_LOCK_FILENAME = "consolidation.lock";
25
+ var USER_AUTO_MEMORY_DIRNAME = "memories";
24
26
  function findGitRoot(startPath) {
25
27
  let current = path.resolve(startPath);
26
28
  while (true) {
@@ -74,28 +76,31 @@ function findCanonicalGitRoot(startPath) {
74
76
  __name(findCanonicalGitRoot, "findCanonicalGitRoot");
75
77
  function getMemoryBaseDir() {
76
78
  if (process.env["QWEN_CODE_MEMORY_BASE_DIR"]) {
77
- return process.env["QWEN_CODE_MEMORY_BASE_DIR"];
79
+ return resolvePath(void 0, process.env["QWEN_CODE_MEMORY_BASE_DIR"]);
78
80
  }
79
- return Storage.getGlobalQwenDir();
81
+ return Storage.getRuntimeBaseDir();
80
82
  }
81
83
  __name(getMemoryBaseDir, "getMemoryBaseDir");
82
84
  var _autoMemoryRootCache = /* @__PURE__ */ new Map();
83
85
  function getAutoMemoryRoot(projectRoot) {
84
- const cached = _autoMemoryRootCache.get(projectRoot);
86
+ const useLocalMemory = process.env["QWEN_CODE_MEMORY_LOCAL"] === "1";
87
+ const memoryBaseDir = useLocalMemory ? "" : getMemoryBaseDir();
88
+ const cacheKey = `${useLocalMemory ? "local" : memoryBaseDir}\0${projectRoot}`;
89
+ const cached = _autoMemoryRootCache.get(cacheKey);
85
90
  if (cached !== void 0) return cached;
86
91
  let result;
87
- if (process.env["QWEN_CODE_MEMORY_LOCAL"] === "1") {
92
+ if (useLocalMemory) {
88
93
  result = path.join(projectRoot, QWEN_DIR, AUTO_MEMORY_DIRNAME);
89
94
  } else {
90
95
  const canonicalRoot = findCanonicalGitRoot(projectRoot) ?? path.resolve(projectRoot);
91
96
  result = path.join(
92
- getMemoryBaseDir(),
97
+ memoryBaseDir,
93
98
  "projects",
94
99
  sanitizeCwd(canonicalRoot),
95
100
  AUTO_MEMORY_DIRNAME
96
101
  );
97
102
  }
98
- _autoMemoryRootCache.set(projectRoot, result);
103
+ _autoMemoryRootCache.set(cacheKey, result);
99
104
  return result;
100
105
  }
101
106
  __name(getAutoMemoryRoot, "getAutoMemoryRoot");
@@ -154,6 +159,29 @@ function getAutoMemoryFilePath(projectRoot, relativePath) {
154
159
  return path.join(getAutoMemoryRoot(projectRoot), relativePath);
155
160
  }
156
161
  __name(getAutoMemoryFilePath, "getAutoMemoryFilePath");
162
+ function getUserAutoMemoryRoot() {
163
+ return path.join(getMemoryBaseDir(), USER_AUTO_MEMORY_DIRNAME);
164
+ }
165
+ __name(getUserAutoMemoryRoot, "getUserAutoMemoryRoot");
166
+ function getUserAutoMemoryIndexPath() {
167
+ return path.join(getUserAutoMemoryRoot(), AUTO_MEMORY_INDEX_FILENAME);
168
+ }
169
+ __name(getUserAutoMemoryIndexPath, "getUserAutoMemoryIndexPath");
170
+ function getUserAutoMemoryTopicPath(type) {
171
+ return path.join(getUserAutoMemoryRoot(), getAutoMemoryTopicFilename(type));
172
+ }
173
+ __name(getUserAutoMemoryTopicPath, "getUserAutoMemoryTopicPath");
174
+ function isUserAutoMemPath(absolutePath) {
175
+ const normalizedPath = path.normalize(absolutePath);
176
+ const memRoot = path.normalize(getUserAutoMemoryRoot());
177
+ const rel = path.relative(memRoot, normalizedPath);
178
+ return rel === "" || !rel.startsWith("..") && !path.isAbsolute(rel);
179
+ }
180
+ __name(isUserAutoMemPath, "isUserAutoMemPath");
181
+ function isAnyAutoMemPath(absolutePath, projectRoot) {
182
+ return isAutoMemPath(absolutePath, projectRoot) || isUserAutoMemPath(absolutePath);
183
+ }
184
+ __name(isAnyAutoMemPath, "isAnyAutoMemPath");
157
185
 
158
186
  export {
159
187
  AUTO_MEMORY_DIRNAME,
@@ -161,6 +189,7 @@ export {
161
189
  AUTO_MEMORY_METADATA_FILENAME,
162
190
  AUTO_MEMORY_EXTRACT_CURSOR_FILENAME,
163
191
  AUTO_MEMORY_CONSOLIDATION_LOCK_FILENAME,
192
+ USER_AUTO_MEMORY_DIRNAME,
164
193
  getMemoryBaseDir,
165
194
  getAutoMemoryRoot,
166
195
  clearAutoMemoryRootCache,
@@ -172,7 +201,12 @@ export {
172
201
  getAutoMemoryConsolidationLockPath,
173
202
  getAutoMemoryTopicFilename,
174
203
  getAutoMemoryTopicPath,
175
- getAutoMemoryFilePath
204
+ getAutoMemoryFilePath,
205
+ getUserAutoMemoryRoot,
206
+ getUserAutoMemoryIndexPath,
207
+ getUserAutoMemoryTopicPath,
208
+ isUserAutoMemPath,
209
+ isAnyAutoMemPath
176
210
  };
177
211
  /**
178
212
  * @license
@@ -3,10 +3,10 @@
3
3
  import {
4
4
  TextTokenizer,
5
5
  isSupportedImageMimeType
6
- } from "./chunk-QVJ33ZBG.js";
6
+ } from "./chunk-MVX64PNU.js";
7
7
  import {
8
8
  createDebugLogger
9
- } from "./chunk-ACBGEKB7.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
  getGlobalQwenDir
5
- } from "./chunk-NP3ICQCN.js";
5
+ } from "./chunk-USE2VQ5P.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-ACBGEKB7.js";
5
+ } from "./chunk-R5PDRHEF.js";
6
6
  import {
7
7
  init_esbuild_shims
8
8
  } from "./chunk-A4BMJM77.js";
@@ -2,16 +2,16 @@
2
2
  "use strict";
3
3
  import {
4
4
  RequestTokenizer
5
- } from "./chunk-JBSYXHJF.js";
5
+ } from "./chunk-BBTV54KB.js";
6
6
  import {
7
7
  OpenAIContentConverter,
8
8
  TaggedThinkingParser,
9
9
  openaiRequestCaptureContext
10
- } from "./chunk-C5CUHYSM.js";
10
+ } from "./chunk-F6FLCHCS.js";
11
11
  import {
12
12
  buildRuntimeFetchOptions,
13
13
  redactProxyError
14
- } from "./chunk-QVJ33ZBG.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-TDZCEIK6.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-ACBGEKB7.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,7 +3,7 @@
3
3
  import {
4
4
  createDebugLogger,
5
5
  isNodeError
6
- } from "./chunk-ACBGEKB7.js";
6
+ } from "./chunk-R5PDRHEF.js";
7
7
  import {
8
8
  init_esbuild_shims
9
9
  } from "./chunk-A4BMJM77.js";