mirror of
https://github.com/QwenLM/qwen-code.git
synced 2025-12-19 09:33:53 +00:00
- 新增 session/list 方法支持 - 改进 session/load 方法兼容性 - 优化代理环境变量设置 - 调整 CLI 安装流程 - 移除未使用的随机加载消息功能
208 lines
5.5 KiB
JSON
208 lines
5.5 KiB
JSON
{
|
|
"name": "qwen-code-vscode-ide-companion",
|
|
"displayName": "Qwen Code Companion",
|
|
"description": "Enable Qwen Code with direct access to your VS Code workspace.",
|
|
"version": "0.3.0",
|
|
"publisher": "qwenlm",
|
|
"icon": "assets/icon.png",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/QwenLM/qwen-code.git",
|
|
"directory": "packages/vscode-ide-companion"
|
|
},
|
|
"engines": {
|
|
"vscode": "^1.99.0"
|
|
},
|
|
"license": "LICENSE",
|
|
"preview": true,
|
|
"categories": [
|
|
"AI"
|
|
],
|
|
"keywords": [
|
|
"qwen-code",
|
|
"qwen code",
|
|
"qwen",
|
|
"qwen code",
|
|
"cli",
|
|
"ide integration",
|
|
"ide companion"
|
|
],
|
|
"activationEvents": [
|
|
"onStartupFinished"
|
|
],
|
|
"contributes": {
|
|
"languages": [
|
|
{
|
|
"id": "qwen-diff-editable"
|
|
}
|
|
],
|
|
"commands": [
|
|
{
|
|
"command": "qwen.diff.accept",
|
|
"title": "Qwen Code: Accept Current Diff",
|
|
"icon": "$(check)"
|
|
},
|
|
{
|
|
"command": "qwen.diff.cancel",
|
|
"title": "Qwen Code: Close Diff Editor",
|
|
"icon": "$(close)"
|
|
},
|
|
{
|
|
"command": "qwen-code.runQwenCode",
|
|
"title": "Qwen Code: Run"
|
|
},
|
|
{
|
|
"command": "qwen-code.showNotices",
|
|
"title": "Qwen Code: View Third-Party Notices"
|
|
},
|
|
{
|
|
"command": "qwenCode.openChat",
|
|
"title": "Qwen Code: Open Chat",
|
|
"icon": "./assets/icon.png"
|
|
},
|
|
{
|
|
"command": "qwenCode.clearAuthCache",
|
|
"title": "Qwen Code: Clear Authentication Cache"
|
|
},
|
|
{
|
|
"command": "qwenCode.login",
|
|
"title": "Qwen Code: Login"
|
|
}
|
|
],
|
|
"configuration": {
|
|
"title": "Qwen Code",
|
|
"properties": {
|
|
"qwenCode.qwen.enabled": {
|
|
"type": "boolean",
|
|
"default": true,
|
|
"description": "Enable Qwen agent integration"
|
|
},
|
|
"qwenCode.qwen.cliPath": {
|
|
"type": "string",
|
|
"default": "qwen",
|
|
"description": "Path to Qwen CLI executable"
|
|
},
|
|
"qwenCode.qwen.openaiApiKey": {
|
|
"type": "string",
|
|
"default": "",
|
|
"description": "OpenAI API key for Qwen (optional, if not using Code Assist)"
|
|
},
|
|
"qwenCode.qwen.openaiBaseUrl": {
|
|
"type": "string",
|
|
"default": "",
|
|
"description": "OpenAI base URL for custom endpoints (optional)"
|
|
},
|
|
"qwenCode.qwen.model": {
|
|
"type": "string",
|
|
"default": "",
|
|
"description": "Model to use (optional)"
|
|
},
|
|
"qwenCode.qwen.proxy": {
|
|
"type": "string",
|
|
"default": "",
|
|
"description": "Proxy for Qwen client (format: schema://user:password@host:port, e.g., http://127.0.0.1:7890)"
|
|
}
|
|
}
|
|
},
|
|
"menus": {
|
|
"commandPalette": [
|
|
{
|
|
"command": "qwen.diff.accept",
|
|
"when": "qwen.diff.isVisible"
|
|
},
|
|
{
|
|
"command": "qwen.diff.cancel",
|
|
"when": "qwen.diff.isVisible"
|
|
},
|
|
{
|
|
"command": "qwenCode.login",
|
|
"when": "false"
|
|
}
|
|
],
|
|
"editor/title": [
|
|
{
|
|
"command": "qwen.diff.accept",
|
|
"when": "qwen.diff.isVisible",
|
|
"group": "navigation"
|
|
},
|
|
{
|
|
"command": "qwen.diff.cancel",
|
|
"when": "qwen.diff.isVisible",
|
|
"group": "navigation"
|
|
},
|
|
{
|
|
"command": "qwenCode.openChat",
|
|
"group": "navigation"
|
|
}
|
|
]
|
|
},
|
|
"keybindings": [
|
|
{
|
|
"command": "qwen.diff.accept",
|
|
"key": "ctrl+s",
|
|
"when": "qwen.diff.isVisible"
|
|
},
|
|
{
|
|
"command": "qwen.diff.accept",
|
|
"key": "cmd+s",
|
|
"when": "qwen.diff.isVisible"
|
|
},
|
|
{
|
|
"command": "qwenCode.openChat",
|
|
"key": "ctrl+shift+a",
|
|
"mac": "cmd+shift+a"
|
|
}
|
|
]
|
|
},
|
|
"main": "./dist/extension.cjs",
|
|
"type": "module",
|
|
"scripts": {
|
|
"prepackage": "npm run generate:notices && npm run check-types && npm run lint && npm run build:prod",
|
|
"build": "npm run build:dev",
|
|
"build:dev": "node esbuild.js",
|
|
"build:prod": "node esbuild.js --production",
|
|
"generate:notices": "node ./scripts/generate-notices.js",
|
|
"prepare": "npm run generate:notices",
|
|
"check-types": "tsc --noEmit",
|
|
"lint": "eslint src",
|
|
"watch": "npm-run-all2 -p watch:*",
|
|
"watch:esbuild": "node esbuild.js --watch",
|
|
"watch:tsc": "tsc --noEmit --watch --project tsconfig.json",
|
|
"package": "vsce package --no-dependencies",
|
|
"test": "vitest run",
|
|
"test:ci": "vitest run --coverage",
|
|
"validate:notices": "node ./scripts/validate-notices.js"
|
|
},
|
|
"devDependencies": {
|
|
"@cfworker/json-schema": "^4.1.1",
|
|
"@types/cors": "^2.8.19",
|
|
"@types/express": "^5.0.3",
|
|
"@types/node": "20.x",
|
|
"@types/react": "^18.2.0",
|
|
"@types/react-dom": "^18.2.0",
|
|
"@types/semver": "^7.7.1",
|
|
"@types/vscode": "^1.99.0",
|
|
"@typescript-eslint/eslint-plugin": "^8.31.1",
|
|
"@typescript-eslint/parser": "^8.31.1",
|
|
"@vscode/vsce": "^3.6.0",
|
|
"autoprefixer": "^10.4.22",
|
|
"esbuild": "^0.25.3",
|
|
"eslint": "^9.25.1",
|
|
"npm-run-all2": "^8.0.2",
|
|
"postcss": "^8.5.6",
|
|
"sass": "^1.94.1",
|
|
"tailwindcss": "^3.4.18",
|
|
"typescript": "^5.8.3",
|
|
"vitest": "^3.2.4"
|
|
},
|
|
"dependencies": {
|
|
"@modelcontextprotocol/sdk": "^1.15.1",
|
|
"@qwen-code/qwen-code-core": "file:../core",
|
|
"cors": "^2.8.5",
|
|
"express": "^5.1.0",
|
|
"react": "^18.2.0",
|
|
"react-dom": "^18.2.0",
|
|
"zod": "^3.25.76"
|
|
}
|
|
}
|