@qwen-code/qwen-code 0.0.1-alpha.7 → 0.0.1-alpha.8
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/README.md +9 -1
- package/bundle/gemini.js +30 -13
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|

|
|
4
4
|
|
|
5
|
-
Qwen Code is a command-line AI workflow tool adapted from [**Gemini CLI**](https://github.com/google-gemini/gemini-cli)(Please refer to [this document](./README.gemini.md) for more details), optimized for
|
|
5
|
+
Qwen Code is a command-line AI workflow tool adapted from [**Gemini CLI**](https://github.com/google-gemini/gemini-cli)(Please refer to [this document](./README.gemini.md) for more details), optimized for [Qwen3-Coder](https://github.com/QwenLM/Qwen3-Coder) models with enhanced parser support & tool support.
|
|
6
6
|
|
|
7
7
|
## Key Features
|
|
8
8
|
|
|
@@ -104,6 +104,14 @@ qwen
|
|
|
104
104
|
> Create API documentation
|
|
105
105
|
```
|
|
106
106
|
|
|
107
|
+
## Benchmark Results
|
|
108
|
+
|
|
109
|
+
### Terminal-Bench
|
|
110
|
+
|
|
111
|
+
| Agent | Model | Accuracy |
|
|
112
|
+
|-----------|--------------------|----------|
|
|
113
|
+
| Qwen Code | Qwen3-Coder-480A35 | 37.5 |
|
|
114
|
+
|
|
107
115
|
## Project Structure
|
|
108
116
|
|
|
109
117
|
```
|
package/bundle/gemini.js
CHANGED
|
@@ -154790,7 +154790,7 @@ async function createContentGeneratorConfig(model, authType) {
|
|
|
154790
154790
|
return contentGeneratorConfig;
|
|
154791
154791
|
}
|
|
154792
154792
|
async function createContentGenerator(config2, gcConfig, sessionId2) {
|
|
154793
|
-
const version = "0.0.1-alpha.
|
|
154793
|
+
const version = "0.0.1-alpha.8";
|
|
154794
154794
|
const httpOptions = {
|
|
154795
154795
|
headers: {
|
|
154796
154796
|
"User-Agent": `GeminiCLI/${version} (${process.platform}; ${process.arch})`
|
|
@@ -258539,7 +258539,7 @@ import { promises as fs36 } from "fs";
|
|
|
258539
258539
|
import path41 from "path";
|
|
258540
258540
|
|
|
258541
258541
|
// packages/cli/src/generated/git-commit.ts
|
|
258542
|
-
var GIT_COMMIT_INFO = "
|
|
258542
|
+
var GIT_COMMIT_INFO = "1732467 (local modifications)";
|
|
258543
258543
|
|
|
258544
258544
|
// node_modules/read-package-up/index.js
|
|
258545
258545
|
import path39 from "node:path";
|
|
@@ -258752,7 +258752,7 @@ async function getPackageJson() {
|
|
|
258752
258752
|
// packages/cli/src/utils/version.ts
|
|
258753
258753
|
async function getCliVersion() {
|
|
258754
258754
|
const pkgJson = await getPackageJson();
|
|
258755
|
-
return "0.0.1-alpha.
|
|
258755
|
+
return "0.0.1-alpha.8";
|
|
258756
258756
|
}
|
|
258757
258757
|
|
|
258758
258758
|
// packages/cli/src/ui/commands/memoryCommand.ts
|
|
@@ -261599,6 +261599,13 @@ function RadioButtonSelect({
|
|
|
261599
261599
|
}) {
|
|
261600
261600
|
const [activeIndex, setActiveIndex] = (0, import_react48.useState)(initialIndex);
|
|
261601
261601
|
const [scrollOffset, setScrollOffset] = (0, import_react48.useState)(0);
|
|
261602
|
+
(0, import_react48.useEffect)(() => {
|
|
261603
|
+
if (items.length === 0) {
|
|
261604
|
+
setActiveIndex(0);
|
|
261605
|
+
} else if (activeIndex >= items.length) {
|
|
261606
|
+
setActiveIndex(Math.max(0, items.length - 1));
|
|
261607
|
+
}
|
|
261608
|
+
}, [items.length, activeIndex]);
|
|
261602
261609
|
(0, import_react48.useEffect)(() => {
|
|
261603
261610
|
const newScrollOffset = Math.max(
|
|
261604
261611
|
0,
|
|
@@ -261613,17 +261620,27 @@ function RadioButtonSelect({
|
|
|
261613
261620
|
use_input_default(
|
|
261614
261621
|
(input, key) => {
|
|
261615
261622
|
if (input === "k" || key.upArrow) {
|
|
261616
|
-
|
|
261617
|
-
|
|
261618
|
-
|
|
261623
|
+
if (items.length > 0) {
|
|
261624
|
+
const newIndex = activeIndex > 0 ? activeIndex - 1 : items.length - 1;
|
|
261625
|
+
setActiveIndex(newIndex);
|
|
261626
|
+
if (items[newIndex]) {
|
|
261627
|
+
onHighlight?.(items[newIndex].value);
|
|
261628
|
+
}
|
|
261629
|
+
}
|
|
261619
261630
|
}
|
|
261620
261631
|
if (input === "j" || key.downArrow) {
|
|
261621
|
-
|
|
261622
|
-
|
|
261623
|
-
|
|
261632
|
+
if (items.length > 0) {
|
|
261633
|
+
const newIndex = activeIndex < items.length - 1 ? activeIndex + 1 : 0;
|
|
261634
|
+
setActiveIndex(newIndex);
|
|
261635
|
+
if (items[newIndex]) {
|
|
261636
|
+
onHighlight?.(items[newIndex].value);
|
|
261637
|
+
}
|
|
261638
|
+
}
|
|
261624
261639
|
}
|
|
261625
261640
|
if (key.return) {
|
|
261626
|
-
|
|
261641
|
+
if (activeIndex >= 0 && activeIndex < items.length && items[activeIndex]) {
|
|
261642
|
+
onSelect(items[activeIndex].value);
|
|
261643
|
+
}
|
|
261627
261644
|
}
|
|
261628
261645
|
if (/^[1-9]$/.test(input)) {
|
|
261629
261646
|
const targetIndex = Number.parseInt(input, 10) - 1;
|
|
@@ -261635,7 +261652,7 @@ function RadioButtonSelect({
|
|
|
261635
261652
|
}
|
|
261636
261653
|
}
|
|
261637
261654
|
},
|
|
261638
|
-
{ isActive: isFocused && items.length > 0 }
|
|
261655
|
+
{ isActive: isFocused && items.length > 0 && activeIndex >= 0 && activeIndex < items.length }
|
|
261639
261656
|
);
|
|
261640
261657
|
const visibleItems = items.slice(scrollOffset, scrollOffset + maxItemsToShow);
|
|
261641
261658
|
return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)(Box_default, { flexDirection: "column", children: [
|
|
@@ -276509,7 +276526,7 @@ function AuthDialog({
|
|
|
276509
276526
|
);
|
|
276510
276527
|
const [showOpenAIKeyPrompt, setShowOpenAIKeyPrompt] = (0, import_react54.useState)(false);
|
|
276511
276528
|
const items = [{ label: "OpenAI", value: AuthType2.USE_OPENAI }];
|
|
276512
|
-
const initialAuthIndex = items.findIndex((item) => {
|
|
276529
|
+
const initialAuthIndex = Math.max(0, items.findIndex((item) => {
|
|
276513
276530
|
if (settings.merged.selectedAuthType) {
|
|
276514
276531
|
return item.value === settings.merged.selectedAuthType;
|
|
276515
276532
|
}
|
|
@@ -276523,7 +276540,7 @@ function AuthDialog({
|
|
|
276523
276540
|
return item.value === AuthType2.USE_GEMINI;
|
|
276524
276541
|
}
|
|
276525
276542
|
return item.value === AuthType2.LOGIN_WITH_GOOGLE;
|
|
276526
|
-
});
|
|
276543
|
+
}));
|
|
276527
276544
|
const handleAuthSelect = (authMethod) => {
|
|
276528
276545
|
const error = validateAuthMethod(authMethod);
|
|
276529
276546
|
if (error) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@qwen-code/qwen-code",
|
|
3
|
-
"version": "0.0.1-alpha.
|
|
3
|
+
"version": "0.0.1-alpha.8",
|
|
4
4
|
"engines": {
|
|
5
5
|
"node": ">=20"
|
|
6
6
|
},
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"url": "git+http://gitlab.alibaba-inc.com/Qwen-Coder/qwen-code.git"
|
|
14
14
|
},
|
|
15
15
|
"config": {
|
|
16
|
-
"sandboxImageUri": "us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox:0.0.1-alpha.
|
|
16
|
+
"sandboxImageUri": "us-docker.pkg.dev/gemini-code-dev/gemini-cli/sandbox:0.0.1-alpha.8"
|
|
17
17
|
},
|
|
18
18
|
"scripts": {
|
|
19
19
|
"start": "node scripts/start.js",
|