@xiaozhi-client/cli 1.9.8-beta.0 → 1.9.8-beta.2
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
CHANGED
|
@@ -49,7 +49,7 @@ packages/cli/
|
|
|
49
49
|
|
|
50
50
|
CLI 包通过 external 配置引用 backend 模块:
|
|
51
51
|
|
|
52
|
-
-
|
|
52
|
+
- `@/WebServer` → `dist/backend/WebServer.js` (通过 WebServerLauncher)
|
|
53
53
|
- `@/lib/config/manager` → `dist/backend/lib/config/manager.js`
|
|
54
54
|
|
|
55
55
|
## 导入方式
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xiaozhi-client/cli",
|
|
3
|
-
"version": "1.9.8-beta.
|
|
3
|
+
"version": "1.9.8-beta.2",
|
|
4
4
|
"private": false,
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"consola": "^3.4.2",
|
|
21
|
-
"@xiaozhi-client/config": "1.9.8-beta.
|
|
21
|
+
"@xiaozhi-client/config": "1.9.8-beta.2"
|
|
22
22
|
},
|
|
23
23
|
"devDependencies": {
|
|
24
24
|
"@types/node": "^24.3.0",
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import type { ChildProcess } from "node:child_process";
|
|
6
6
|
import { spawn } from "node:child_process";
|
|
7
7
|
import fs from "node:fs";
|
|
8
|
-
import type { WebServer } from "
|
|
8
|
+
import type { WebServer } from "@/WebServer";
|
|
9
9
|
import consola from "consola";
|
|
10
10
|
import { ProcessError, ServiceError } from "../errors/index";
|
|
11
11
|
import type {
|
|
@@ -264,7 +264,7 @@ export class ServiceManagerImpl implements IServiceManager {
|
|
|
264
264
|
process.exit(0);
|
|
265
265
|
} else {
|
|
266
266
|
// 前台模式 - 直接启动 Web Server
|
|
267
|
-
const { WebServer } = await import("
|
|
267
|
+
const { WebServer } = await import("@/WebServer.js");
|
|
268
268
|
const server = new WebServer(port);
|
|
269
269
|
|
|
270
270
|
// 处理退出信号
|
|
@@ -323,7 +323,7 @@ export class ServiceManagerImpl implements IServiceManager {
|
|
|
323
323
|
* 前台模式启动 WebServer
|
|
324
324
|
*/
|
|
325
325
|
private async startWebServerInForeground(): Promise<void> {
|
|
326
|
-
const { WebServer } = await import("
|
|
326
|
+
const { WebServer } = await import("@/WebServer.js");
|
|
327
327
|
const server = new WebServer();
|
|
328
328
|
|
|
329
329
|
// 处理退出信号
|
|
@@ -40,7 +40,7 @@ const mockMCPServerInstance = {
|
|
|
40
40
|
stop: vi.fn().mockResolvedValue(undefined),
|
|
41
41
|
};
|
|
42
42
|
|
|
43
|
-
vi.mock("
|
|
43
|
+
vi.mock("@/WebServer.js", () => ({
|
|
44
44
|
WebServer: vi.fn().mockImplementation(() => mockWebServerInstance),
|
|
45
45
|
}));
|
|
46
46
|
|
|
@@ -184,7 +184,7 @@ describe("ServiceManagerImpl 服务管理器实现", () => {
|
|
|
184
184
|
);
|
|
185
185
|
|
|
186
186
|
// Mock dynamic import for WebServer
|
|
187
|
-
vi.doMock("
|
|
187
|
+
vi.doMock("@/WebServer.js", () => ({
|
|
188
188
|
WebServer: vi.fn().mockImplementation(() => mockWebServerInstance),
|
|
189
189
|
}));
|
|
190
190
|
});
|
package/src/types/backend.d.ts
CHANGED
|
@@ -39,10 +39,10 @@ declare module "@/lib/config/manager.js" {
|
|
|
39
39
|
export const configManager: any;
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
declare module "
|
|
42
|
+
declare module "@/WebServer" {
|
|
43
43
|
export class WebServer {}
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
-
declare module "
|
|
46
|
+
declare module "@/WebServer.js" {
|
|
47
47
|
export class WebServer {}
|
|
48
48
|
}
|
package/tsup.config.ts
CHANGED
|
@@ -66,8 +66,8 @@ export default defineConfig({
|
|
|
66
66
|
"@xiaozhi-client/version",
|
|
67
67
|
"@xiaozhi-client/version.js",
|
|
68
68
|
// Backend 模块(运行时从 dist/backend 读取)
|
|
69
|
-
"
|
|
70
|
-
"
|
|
69
|
+
"@/WebServer",
|
|
70
|
+
"@/WebServer.js",
|
|
71
71
|
],
|
|
72
72
|
outExtension: () => ({
|
|
73
73
|
js: ".js",
|
|
@@ -77,24 +77,21 @@ export default defineConfig({
|
|
|
77
77
|
const filePath = resolve("../../dist/cli/index.js");
|
|
78
78
|
let content = readFileSync(filePath, "utf-8");
|
|
79
79
|
|
|
80
|
-
// 替换
|
|
80
|
+
// 替换 @/* 为指向正确位置的相对路径
|
|
81
81
|
// 注意:@xiaozhi-client/config 现在从 node_modules 解析,不需要替换
|
|
82
82
|
content = content
|
|
83
83
|
.replace(
|
|
84
|
-
/from\s*["']
|
|
84
|
+
/from\s*["']@\/WebServer\.js["']/g,
|
|
85
85
|
'from "../backend/WebServer.js"'
|
|
86
86
|
)
|
|
87
|
+
.replace(/from\s*["']@\/WebServer["']/g, 'from "../backend/WebServer.js"')
|
|
88
|
+
// 替换动态导入中的 @/WebServer.js
|
|
87
89
|
.replace(
|
|
88
|
-
/
|
|
89
|
-
'from "../backend/WebServer.js"'
|
|
90
|
-
)
|
|
91
|
-
// 替换动态导入中的 @root/WebServer.js
|
|
92
|
-
.replace(
|
|
93
|
-
/import\(["']@root\/WebServer\.js["']\)/g,
|
|
90
|
+
/import\(["']@\/WebServer\.js["']\)/g,
|
|
94
91
|
'import("../backend/WebServer.js")'
|
|
95
92
|
)
|
|
96
93
|
.replace(
|
|
97
|
-
/import\(["']
|
|
94
|
+
/import\(["']@\/WebServer["']\)/g,
|
|
98
95
|
'import("../backend/WebServer.js")'
|
|
99
96
|
);
|
|
100
97
|
|
package/vitest.config.ts
CHANGED
|
@@ -54,8 +54,6 @@ export default defineConfig({
|
|
|
54
54
|
// Backend 路径别名(从 packages/cli 向上到项目根目录)
|
|
55
55
|
"@handlers": resolve(__dirname, "../../apps/backend/handlers"),
|
|
56
56
|
"@handlers/*": resolve(__dirname, "../../apps/backend/handlers/*"),
|
|
57
|
-
"@middlewares": resolve(__dirname, "../../apps/backend/middlewares"),
|
|
58
|
-
"@middlewares/*": resolve(__dirname, "../../apps/backend/middlewares/*"),
|
|
59
57
|
"@services": resolve(__dirname, "../../apps/backend/services"),
|
|
60
58
|
"@services/*": resolve(__dirname, "../../apps/backend/services/*"),
|
|
61
59
|
"@errors": resolve(__dirname, "../../apps/backend/errors"),
|
|
@@ -80,8 +78,8 @@ export default defineConfig({
|
|
|
80
78
|
"@types/*": resolve(__dirname, "../../apps/backend/types/*"),
|
|
81
79
|
"@/lib": resolve(__dirname, "../../apps/backend/lib"),
|
|
82
80
|
"@/lib/*": resolve(__dirname, "../../apps/backend/lib/*"),
|
|
83
|
-
"@
|
|
84
|
-
"
|
|
81
|
+
"@": resolve(__dirname, "../../apps/backend"),
|
|
82
|
+
"@/*": resolve(__dirname, "../../apps/backend/*"),
|
|
85
83
|
"@routes": resolve(__dirname, "../../apps/backend/routes"),
|
|
86
84
|
"@routes/*": resolve(__dirname, "../../apps/backend/routes/*"),
|
|
87
85
|
"@constants": resolve(__dirname, "../../apps/backend/constants"),
|