Skip to content

Commit 2971cea

Browse files
committed
feat: 修改启动脚本
1 parent bdd764d commit 2971cea

11 files changed

Lines changed: 103 additions & 58 deletions

File tree

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
11
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
22

33
# dependencies
4+
*.log
5+
node_modules
46
gui/node_modules
57
/.pnp
68
.pnp.js
79
/.idea
810

911
# IDE
10-
.vscode
12+
/.vscode # Only ignore .vscode in root directory
1113
*.code-workspace
1214
.history/
1315

README.md

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -50,13 +50,15 @@ VoidMuse致力于通过**开源组件整合**的方式,以**最低的开发成
5050
1. 打开VS Code扩展商店 (Ctrl+Shift+X)
5151
2. 搜索 "VoidMuse"
5252
3. 点击安装并重启编辑器
53+
![vscode-plugin](doc/img/run/vscode-plugin.jpg)
5354

5455
**IntelliJ IDEA安装**
5556
1. 打开 Settings → Plugins
5657
2. 搜索 "VoidMuse"
5758
3. 点击安装并重启IDE
59+
![intellij-plugin](doc/img/run/intellij-plugin.jpg)
5860

59-
作为学习者 - 本地开发学习【另外一个系列讲】
61+
作为学习者 - 本地开发启动详见 [开发指南](doc/DEVELOPMENT_GUIDE.md)
6062

6163

6264
### 🎯 三分钟快速上手
@@ -137,7 +139,6 @@ VoidMuse致力于通过**开源组件整合**的方式,以**最低的开发成
137139
- 本地化向量数据库
138140
- 语义相似度检索
139141
- 智能代码上下文提取
140-
- **深度文档**: [Codebase技术原理](doc/codebase-deep-dive.md)
141142

142143
### 💬 多模型AI对话 (AI Chat)
143144

@@ -181,21 +182,21 @@ VoidMuse致力于通过**开源组件整合**的方式,以**最低的开发成
181182

182183
#### 初级路径 (AI概念入门)
183184
1. [什么是Embedding?](doc/tutorial/embedding-basics.md)
184-
2. [向量数据库基础]()
185+
2. 向量数据库基础
185186

186187
#### 高级路径 (工程实践)
187188
1. [Codebase索引原理与实现](doc/tutorial/codebase-implementation.md)
188-
2. [提高检索准确率的策略]()
189-
3. [多模型适配架构设计]()
190-
4. [MCP协议深度解析]()
189+
2. 提高检索准确率的策略
190+
3. 多模型适配架构设计
191+
4. MCP协议深度解析
191192

192193
### 🛠️ 实践项目
193194

194195
- [实现深度搜索](doc/tutorial/function%20call的实践-实现深度搜索.md)
195-
- [Embedding模型踩坑合集]()
196-
- [自定义Embedding模型集成]()
197-
- [扩展MCP协议支持]()
198-
- [实现自定义搜索引擎]()
196+
- Embedding模型踩坑合集
197+
- 自定义Embedding模型集成
198+
- 扩展MCP协议支持
199+
- 实现自定义搜索引擎
199200

200201
---
201202

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip
4+
networkTimeout=10000
5+
validateDistributionUrl=true
46
zipStoreBase=GRADLE_USER_HOME
57
zipStorePath=wrapper/dists

extensions/intellij/gradlew

Lines changed: 31 additions & 13 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

extensions/intellij/gradlew.bat

Lines changed: 21 additions & 16 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

extensions/intellij/src/main/java/com/voidmuse/idea/plugin/factory/AIToolTabFactory.java

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import com.voidmuse.idea.plugin.service.ProjectBeanService;
1212
import com.voidmuse.idea.plugin.service.ProtocDispatchService;
1313
import com.voidmuse.idea.plugin.util.StateUtils;
14+
import org.cef.CefApp;
1415
import org.cef.browser.CefBrowser;
1516
import org.cef.browser.CefFrame;
1617
import org.cef.browser.CefMessageRouter;
@@ -46,6 +47,23 @@ public void createToolWindowContent(@NotNull Project project, @NotNull ToolWindo
4647
ProtocDispatchService.getInstance(project));
4748
jbCefClient.getCefClient().addMessageRouter(messageRouter);
4849

50+
// Check if development mode is enabled via environment variable or system property
51+
boolean isDevelopmentMode = "true".equals(System.getenv("VOIDMUSE_DEV_MODE"))
52+
|| "true".equals(System.getProperty("voidmuse.dev.mode"));
53+
54+
String targetUrl;
55+
if (isDevelopmentMode) {
56+
// Development mode: use localhost server
57+
targetUrl = "http://localhost:3002/";
58+
LOG.info("VoidMuse running in development mode, using: " + targetUrl);
59+
} else {
60+
// Production mode: use static resources
61+
CefApp.getInstance()
62+
.registerSchemeHandlerFactory("http", "voidmuse", new DataSchemeHandlerFactory());
63+
targetUrl = "http://voidmuse/index.html";
64+
LOG.info("VoidMuse running in production mode, using static resources");
65+
}
66+
4967
//添加一个监听,页面加载完成后再注册一次事件,防止丢失
5068
jbCefClient.addLoadHandler(new CefLoadHandler() {
5169
@Override
@@ -68,7 +86,6 @@ public void onLoadError(CefBrowser browser, CefFrame frame, ErrorCode errorCode,
6886
}
6987
}, browser.getCefBrowser());
7088

71-
// browser.loadURL(StateUtils.getWebHost());
72-
browser.loadURL("http://localhost:3002/");
89+
browser.loadURL(targetUrl);
7390
}
7491
}

extensions/vscode/package.json

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,13 @@
138138
"watch": "tsc -watch -p ./",
139139
"pretest": "npm run compile && npm run lint",
140140
"lint": "eslint src",
141-
"test": "vscode-test"
141+
"test": "vscode-test",
142+
"dev": "node dev.js dev",
143+
"debug": "node dev.js debug",
144+
"build": "node dev.js build",
145+
"build-gui": "node dev.js build-gui",
146+
"install-deps": "node dev.js install",
147+
"package": "npx vsce package"
142148
},
143149
"devDependencies": {
144150
"@types/mocha": "^10.0.10",

gui/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,8 +68,8 @@
6868
"zod": "^3.25.76"
6969
},
7070
"scripts": {
71-
"start:dev": "vite --mode development --port 3002",
72-
"start:prod": "vite --mode production --port 3002",
71+
"dev": "vite --mode development --port 3002",
72+
"prod": "vite --mode production --port 3002",
7373
"build:test": "vite build --mode development",
7474
"build:prod": "vite build --mode production",
7575
"build:static": "vite build --mode production && cp -R dist/* ../extensions/intellij/src/main/resources/web/",

gui/src/i18n/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ i18n
1818
fallbackLng: 'zh-CN',
1919
defaultNS: 'common',
2020
ns: ['common', 'components', 'pages', 'errors'],
21-
debug: process.env.NODE_ENV === 'development',
21+
debug: import.meta.env.DEV,
2222
returnNull: false,
2323
returnEmptyString: false,
2424
returnObjects: false,

gui/src/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import ReactDOM from 'react-dom/client';
33
import App from './App';
44
import VConsole from 'vconsole';
55

6-
const vConsole = new VConsole();
6+
// const vConsole = new VConsole();
77
const root = ReactDOM.createRoot(document.getElementById('root') as HTMLElement);
88
root.render(
99
<React.StrictMode>

0 commit comments

Comments
 (0)