@qwen-code/qwen-code 0.18.2 → 0.18.3-nightly.20260618.bc3e0b405
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.
- package/chunks/{agent-P5U6QLWL.js → agent-ACIWYWX7.js} +2 -2
- package/chunks/{agent-headless-24356DC7.js → agent-headless-3OQZEB2S.js} +2 -2
- package/chunks/{chunk-JZEKEWO5.js → chunk-753BG2JJ.js} +3 -3
- package/chunks/{chunk-25FFAMED.js → chunk-BPJAFPPD.js} +3 -3
- package/chunks/{chunk-EQ5NHJBY.js → chunk-RMFCNRER.js} +110575 -109595
- package/chunks/{chunk-M7OBURJM.js → chunk-SWMGBYC2.js} +1 -1
- package/chunks/{chunk-NGDXHX3A.js → chunk-UIH54N5X.js} +1 -1
- package/chunks/{chunk-QFJ67S5R.js → chunk-XFUQS3BO.js} +5 -5
- package/chunks/{computer-use-EGW2I2HZ.js → computer-use-Y3INMFGQ.js} +2 -2
- package/chunks/{contextCommand-HI2X2Y7I.js → contextCommand-4AF56TE5.js} +4 -4
- package/chunks/{edit-FJSOCDO2.js → edit-MO45GCL7.js} +4 -6
- package/chunks/{enter-worktree-X6MVFDLR.js → enter-worktree-Z3JI6PAT.js} +2 -2
- package/chunks/{enterPlanMode-MZAEQZH3.js → enterPlanMode-IK6VOFTA.js} +2 -2
- package/chunks/{exit-worktree-RM2UPOYQ.js → exit-worktree-N7VFZX2L.js} +2 -2
- package/chunks/{exitPlanMode-7BVY3CWJ.js → exitPlanMode-I3KHESPG.js} +6 -5
- package/chunks/{geminiContentGenerator-A6JHLUHK.js → geminiContentGenerator-SCL4XVAS.js} +1 -1
- package/chunks/{glob-L3AZLCV6.js → glob-F2B2SE3K.js} +2 -2
- package/chunks/{grep-SNCPCXIP.js → grep-4KQWN26D.js} +2 -2
- package/chunks/{monitor-TS6WL6DN.js → monitor-JLANELR3.js} +2 -2
- package/chunks/{notebook-edit-26RNH24J.js → notebook-edit-HDRKPHHG.js} +3 -5
- package/chunks/{openaiContentGenerator-7CA63X5G.js → openaiContentGenerator-BKTFJC2S.js} +2 -2
- package/chunks/{qwenContentGenerator-4WJTJXFZ.js → qwenContentGenerator-62BVT57E.js} +3 -3
- package/chunks/{read-file-EUIHK6HD.js → read-file-SFLRS3OC.js} +1 -1
- package/chunks/{ripGrep-7J5B22W2.js → ripGrep-H2MU4MC3.js} +2 -2
- package/chunks/{scheduler-J3OUGTTS.js → scheduler-2GZTWP5S.js} +2 -2
- package/chunks/{serve-VF4ZNUJP.js → serve-SYMKDBDG.js} +4 -4
- package/chunks/{shell-G6XCJAG3.js → shell-U46KHTLY.js} +2 -2
- package/chunks/{skill-7OVC6JIH.js → skill-VQMJOXNY.js} +1 -1
- package/chunks/{src-XV5MLRND.js → src-YBSBZZEL.js} +2 -2
- package/chunks/{team-create-JXSC7ROC.js → team-create-OA3IGBCE.js} +2 -2
- package/chunks/{tool-search-YRWSWA2H.js → tool-search-A57VE2JF.js} +1 -1
- package/chunks/{workflow-ZN3DYFMU.js → workflow-RWXT7YIU.js} +3 -3
- package/chunks/{write-file-355M4V7Z.js → write-file-46RW6BV4.js} +4 -6
- package/cli.js +246 -61
- package/package.json +2 -2
- package/chunks/chunk-C64WAJOC.js +0 -117
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@qwen-code/qwen-code",
|
|
3
|
-
"version": "0.18.
|
|
3
|
+
"version": "0.18.3-nightly.20260618.bc3e0b405",
|
|
4
4
|
"description": "Qwen Code - AI-powered coding assistant",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"bundled"
|
|
26
26
|
],
|
|
27
27
|
"config": {
|
|
28
|
-
"sandboxImageUri": "ghcr.io/qwenlm/qwen-code:0.18.
|
|
28
|
+
"sandboxImageUri": "ghcr.io/qwenlm/qwen-code:0.18.3-nightly.20260618.bc3e0b405"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {},
|
|
31
31
|
"optionalDependencies": {
|
package/chunks/chunk-C64WAJOC.js
DELETED
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
// Force strict mode and setup for ESM
|
|
2
|
-
"use strict";
|
|
3
|
-
import {
|
|
4
|
-
ToolNames
|
|
5
|
-
} from "./chunk-ZNUMXPNK.js";
|
|
6
|
-
import {
|
|
7
|
-
init_esbuild_shims
|
|
8
|
-
} from "./chunk-A4BMJM77.js";
|
|
9
|
-
import {
|
|
10
|
-
__name
|
|
11
|
-
} from "./chunk-J2S4EL5Y.js";
|
|
12
|
-
|
|
13
|
-
// packages/core/src/tools/priorReadEnforcement.ts
|
|
14
|
-
init_esbuild_shims();
|
|
15
|
-
import * as fs from "node:fs";
|
|
16
|
-
var StructuredToolError = class extends Error {
|
|
17
|
-
constructor(message, errorType) {
|
|
18
|
-
super(message);
|
|
19
|
-
this.errorType = errorType;
|
|
20
|
-
}
|
|
21
|
-
static {
|
|
22
|
-
__name(this, "StructuredToolError");
|
|
23
|
-
}
|
|
24
|
-
name = "StructuredToolError";
|
|
25
|
-
};
|
|
26
|
-
async function checkPriorRead(cache, filePath, verb, options = {}) {
|
|
27
|
-
let stats;
|
|
28
|
-
try {
|
|
29
|
-
stats = await fs.promises.stat(filePath);
|
|
30
|
-
} catch (err) {
|
|
31
|
-
const code = err?.code;
|
|
32
|
-
if (code === "ENOENT") {
|
|
33
|
-
if (options.expectExisting) {
|
|
34
|
-
const raw3 = `File ${filePath} disappeared after the model read it (stat now returns ENOENT). Re-read with the ${ToolNames.READ_FILE} tool \u2014 the path may have been deleted or moved \u2014 before retrying ${verb} it.`;
|
|
35
|
-
return {
|
|
36
|
-
ok: false,
|
|
37
|
-
type: "file_changed_since_read" /* FILE_CHANGED_SINCE_READ */,
|
|
38
|
-
rawMessage: raw3,
|
|
39
|
-
displayMessage: `file disappeared after last read; re-run ${ToolNames.READ_FILE} first.`
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
return { ok: true };
|
|
43
|
-
}
|
|
44
|
-
const raw2 = `Could not stat ${filePath} to verify prior read (${code ?? "unknown error"}). Re-read with the ${ToolNames.READ_FILE} tool, then retry ${verb} it.`;
|
|
45
|
-
const verbDisplay2 = verb === "editing" ? "editing this file" : "overwriting this file";
|
|
46
|
-
return {
|
|
47
|
-
ok: false,
|
|
48
|
-
type: "prior_read_verification_failed" /* PRIOR_READ_VERIFICATION_FAILED */,
|
|
49
|
-
rawMessage: raw2,
|
|
50
|
-
displayMessage: `cannot verify prior read of ${filePath}; re-run ${ToolNames.READ_FILE} before ${verbDisplay2}.`
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
if (stats.isDirectory()) {
|
|
54
|
-
const verbBare2 = verb === "editing" ? "edit" : "overwrite";
|
|
55
|
-
const raw2 = `${filePath} is a directory. The Edit / WriteFile tools only operate on regular files. Use a different mechanism (e.g. the shell tool) if you need to ${verbBare2} the contents of this directory.`;
|
|
56
|
-
return {
|
|
57
|
-
ok: false,
|
|
58
|
-
type: "target_is_directory" /* TARGET_IS_DIRECTORY */,
|
|
59
|
-
rawMessage: raw2,
|
|
60
|
-
displayMessage: `path is a directory; cannot ${verbBare2} via this tool.`
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
if (!stats.isFile()) {
|
|
64
|
-
const verbBare2 = verb === "editing" ? "edit" : "overwrite";
|
|
65
|
-
const raw2 = `${filePath} is a FIFO / socket / character or block device. The Edit / WriteFile tools only operate on regular files; the ${ToolNames.READ_FILE} tool also rejects these targets. Use a different mechanism (e.g. shell tool with the appropriate command) if you need to ${verbBare2} this path.`;
|
|
66
|
-
return {
|
|
67
|
-
ok: false,
|
|
68
|
-
type: "edit_requires_prior_read" /* EDIT_REQUIRES_PRIOR_READ */,
|
|
69
|
-
rawMessage: raw2,
|
|
70
|
-
displayMessage: `special file; cannot ${verbBare2} via this tool.`
|
|
71
|
-
};
|
|
72
|
-
}
|
|
73
|
-
const status = cache.check(stats);
|
|
74
|
-
if (status.state === "fresh" && status.entry.lastReadAt !== void 0 && status.entry.lastReadCacheable) {
|
|
75
|
-
return { ok: true };
|
|
76
|
-
}
|
|
77
|
-
if (status.state === "stale") {
|
|
78
|
-
const raw2 = `File ${filePath} has been modified since you last read it (mtime or size changed). Re-read it with the ${ToolNames.READ_FILE} tool before ${verb} it to ensure your changes are based on current content.`;
|
|
79
|
-
return {
|
|
80
|
-
ok: false,
|
|
81
|
-
type: "file_changed_since_read" /* FILE_CHANGED_SINCE_READ */,
|
|
82
|
-
rawMessage: raw2,
|
|
83
|
-
displayMessage: `file changed since last read; re-run ${ToolNames.READ_FILE} first.`
|
|
84
|
-
};
|
|
85
|
-
}
|
|
86
|
-
if (status.state === "fresh" && status.entry.lastReadAt !== void 0 && !status.entry.lastReadCacheable) {
|
|
87
|
-
const verbBare2 = verb === "editing" ? "edit" : "overwrite";
|
|
88
|
-
const raw2 = `File ${filePath} is a binary / image / audio / video / PDF / notebook payload that the ${ToolNames.READ_FILE} tool returns as a structured value rather than as plain text. The Edit / WriteFile tools cannot mutate that payload safely \u2014 re-reading it would not change this. If this is a Jupyter notebook (.ipynb), use the ${ToolNames.NOTEBOOK_EDIT} tool for cell-level edits after reading it. For other non-text files, use a different mechanism (e.g. shell tool with an appropriate writer) if you need to ${verbBare2} it.`;
|
|
89
|
-
return {
|
|
90
|
-
ok: false,
|
|
91
|
-
type: "edit_requires_prior_read" /* EDIT_REQUIRES_PRIOR_READ */,
|
|
92
|
-
rawMessage: raw2,
|
|
93
|
-
displayMessage: `non-text payload; cannot ${verbBare2} via this tool.`
|
|
94
|
-
};
|
|
95
|
-
}
|
|
96
|
-
const verbBare = verb === "editing" ? "edit" : "overwrite";
|
|
97
|
-
const verbDisplay = verb === "editing" ? "editing this file" : "overwriting this file";
|
|
98
|
-
const partialReadGuidance = verb === "editing" ? `(a partial read with offset / limit is fine \u2014 you only need to have seen the bytes you intend to ${verbBare})` : `(read the full file \u2014 overwriting replaces every byte, so any unseen bytes would be discarded)`;
|
|
99
|
-
const raw = `File ${filePath} has not been read in this session. Use the ${ToolNames.READ_FILE} tool first to load the current content ${partialReadGuidance} before ${verb} it.`;
|
|
100
|
-
return {
|
|
101
|
-
ok: false,
|
|
102
|
-
type: "edit_requires_prior_read" /* EDIT_REQUIRES_PRIOR_READ */,
|
|
103
|
-
rawMessage: raw,
|
|
104
|
-
displayMessage: `${ToolNames.READ_FILE} required before ${verbDisplay}.`
|
|
105
|
-
};
|
|
106
|
-
}
|
|
107
|
-
__name(checkPriorRead, "checkPriorRead");
|
|
108
|
-
|
|
109
|
-
export {
|
|
110
|
-
StructuredToolError,
|
|
111
|
-
checkPriorRead
|
|
112
|
-
};
|
|
113
|
-
/**
|
|
114
|
-
* @license
|
|
115
|
-
* Copyright 2026 Qwen Team
|
|
116
|
-
* SPDX-License-Identifier: Apache-2.0
|
|
117
|
-
*/
|