@xiaozhi-client/cli 1.9.4-beta.5
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/LICENSE +21 -0
- package/README.md +98 -0
- package/fix-imports.js +32 -0
- package/package.json +26 -0
- package/project.json +75 -0
- package/src/Constants.ts +105 -0
- package/src/Container.ts +212 -0
- package/src/Types.ts +79 -0
- package/src/commands/CommandHandlerFactory.ts +98 -0
- package/src/commands/ConfigCommandHandler.ts +279 -0
- package/src/commands/EndpointCommandHandler.ts +158 -0
- package/src/commands/McpCommandHandler.ts +778 -0
- package/src/commands/ProjectCommandHandler.ts +254 -0
- package/src/commands/ServiceCommandHandler.ts +182 -0
- package/src/commands/__tests__/CommandHandlerFactory.test.ts +323 -0
- package/src/commands/__tests__/CommandRegistry.test.ts +287 -0
- package/src/commands/__tests__/ConfigCommandHandler.test.ts +844 -0
- package/src/commands/__tests__/EndpointCommandHandler.test.ts +426 -0
- package/src/commands/__tests__/McpCommandHandler.test.ts +753 -0
- package/src/commands/__tests__/ProjectCommandHandler.test.ts +230 -0
- package/src/commands/__tests__/ServiceCommands.integration.test.ts +408 -0
- package/src/commands/index.ts +351 -0
- package/src/errors/ErrorHandlers.ts +141 -0
- package/src/errors/ErrorMessages.ts +121 -0
- package/src/errors/__tests__/index.test.ts +186 -0
- package/src/errors/index.ts +163 -0
- package/src/global.d.ts +19 -0
- package/src/index.ts +53 -0
- package/src/interfaces/Command.ts +128 -0
- package/src/interfaces/CommandTypes.ts +95 -0
- package/src/interfaces/Config.ts +25 -0
- package/src/interfaces/Service.ts +99 -0
- package/src/services/DaemonManager.ts +318 -0
- package/src/services/ProcessManager.ts +235 -0
- package/src/services/ServiceManager.ts +319 -0
- package/src/services/TemplateManager.ts +382 -0
- package/src/services/__tests__/DaemonManager.test.ts +378 -0
- package/src/services/__tests__/DaemonMode.integration.test.ts +321 -0
- package/src/services/__tests__/ProcessManager.test.ts +296 -0
- package/src/services/__tests__/ServiceManager.test.ts +774 -0
- package/src/services/__tests__/TemplateManager.test.ts +337 -0
- package/src/types/backend.d.ts +48 -0
- package/src/utils/FileUtils.ts +320 -0
- package/src/utils/FormatUtils.ts +198 -0
- package/src/utils/PathUtils.ts +255 -0
- package/src/utils/PlatformUtils.ts +217 -0
- package/src/utils/Validation.ts +274 -0
- package/src/utils/VersionUtils.ts +141 -0
- package/src/utils/__tests__/FileUtils.test.ts +728 -0
- package/src/utils/__tests__/FormatUtils.test.ts +243 -0
- package/src/utils/__tests__/PathUtils.test.ts +1165 -0
- package/src/utils/__tests__/PlatformUtils.test.ts +723 -0
- package/src/utils/__tests__/Validation.test.ts +560 -0
- package/src/utils/__tests__/VersionUtils.test.ts +410 -0
- package/tsconfig.json +32 -0
- package/tsconfig.tsbuildinfo +1 -0
- package/tsup.config.ts +107 -0
- package/vitest.config.ts +97 -0
package/vitest.config.ts
ADDED
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { resolve } from "node:path";
|
|
2
|
+
import { dirname } from "node:path";
|
|
3
|
+
import { fileURLToPath } from "node:url";
|
|
4
|
+
import tsconfigPaths from "vite-tsconfig-paths";
|
|
5
|
+
import { defineConfig } from "vitest/config";
|
|
6
|
+
|
|
7
|
+
// ESM 兼容的 __dirname
|
|
8
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
9
|
+
const __dirname = dirname(__filename);
|
|
10
|
+
|
|
11
|
+
export default defineConfig({
|
|
12
|
+
plugins: [
|
|
13
|
+
// 添加 tsconfig 路径解析插件
|
|
14
|
+
tsconfigPaths(),
|
|
15
|
+
],
|
|
16
|
+
test: {
|
|
17
|
+
globals: true,
|
|
18
|
+
environment: "node",
|
|
19
|
+
testTimeout: 10000,
|
|
20
|
+
hookTimeout: 10000,
|
|
21
|
+
include: ["**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"],
|
|
22
|
+
exclude: ["node_modules", "dist"],
|
|
23
|
+
coverage: {
|
|
24
|
+
enabled: true,
|
|
25
|
+
provider: "v8",
|
|
26
|
+
reporter: ["text", "json", "html", "lcov"],
|
|
27
|
+
reportsDirectory: resolve(__dirname, "../coverage"),
|
|
28
|
+
exclude: [
|
|
29
|
+
"node_modules/**",
|
|
30
|
+
"dist/**",
|
|
31
|
+
"**/*.d.ts",
|
|
32
|
+
"**/*.config.{js,ts}",
|
|
33
|
+
"coverage/**",
|
|
34
|
+
],
|
|
35
|
+
include: [resolve(__dirname, "src/**/*.ts")],
|
|
36
|
+
all: true,
|
|
37
|
+
thresholds: {
|
|
38
|
+
global: {
|
|
39
|
+
branches: 80,
|
|
40
|
+
functions: 80,
|
|
41
|
+
lines: 80,
|
|
42
|
+
statements: 80,
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
resolve: {
|
|
48
|
+
alias: {
|
|
49
|
+
// CLI 内部路径别名(__dirname 是 packages/cli,所以使用相对路径)
|
|
50
|
+
"@cli/commands": resolve(__dirname, "./src/commands"),
|
|
51
|
+
"@cli/commands/*": resolve(__dirname, "./src/commands/*"),
|
|
52
|
+
"@cli/services": resolve(__dirname, "./src/services"),
|
|
53
|
+
"@cli/services/*": resolve(__dirname, "./src/services/*"),
|
|
54
|
+
"@cli/utils": resolve(__dirname, "./src/utils"),
|
|
55
|
+
"@cli/utils/*": resolve(__dirname, "./src/utils/*"),
|
|
56
|
+
"@cli/errors": resolve(__dirname, "./src/errors"),
|
|
57
|
+
"@cli/errors/*": resolve(__dirname, "./src/errors/*"),
|
|
58
|
+
"@cli/interfaces": resolve(__dirname, "./src/interfaces"),
|
|
59
|
+
"@cli/interfaces/*": resolve(__dirname, "./src/interfaces/*"),
|
|
60
|
+
// Backend 路径别名(从 packages/cli 向上到项目根目录)
|
|
61
|
+
"@handlers": resolve(__dirname, "../../apps/backend/handlers"),
|
|
62
|
+
"@handlers/*": resolve(__dirname, "../../apps/backend/handlers/*"),
|
|
63
|
+
"@middlewares": resolve(__dirname, "../../apps/backend/middlewares"),
|
|
64
|
+
"@middlewares/*": resolve(__dirname, "../../apps/backend/middlewares/*"),
|
|
65
|
+
"@services": resolve(__dirname, "../../apps/backend/services"),
|
|
66
|
+
"@services/*": resolve(__dirname, "../../apps/backend/services/*"),
|
|
67
|
+
"@errors": resolve(__dirname, "../../apps/backend/errors"),
|
|
68
|
+
"@errors/*": resolve(__dirname, "../../apps/backend/errors/*"),
|
|
69
|
+
"@utils": resolve(__dirname, "../../apps/backend/utils"),
|
|
70
|
+
"@utils/*": resolve(__dirname, "../../apps/backend/utils/*"),
|
|
71
|
+
"@core": resolve(__dirname, "../../apps/backend/core"),
|
|
72
|
+
"@core/*": resolve(__dirname, "../../apps/backend/core/*"),
|
|
73
|
+
"@transports": resolve(
|
|
74
|
+
__dirname,
|
|
75
|
+
"../../apps/backend/lib/mcp/transports"
|
|
76
|
+
),
|
|
77
|
+
"@transports/*": resolve(
|
|
78
|
+
__dirname,
|
|
79
|
+
"../../apps/backend/lib/mcp/transports/*"
|
|
80
|
+
),
|
|
81
|
+
"@adapters": resolve(__dirname, "../../apps/backend/adapters"),
|
|
82
|
+
"@adapters/*": resolve(__dirname, "../../apps/backend/adapters/*"),
|
|
83
|
+
"@managers": resolve(__dirname, "../../apps/backend/managers"),
|
|
84
|
+
"@managers/*": resolve(__dirname, "../../apps/backend/managers/*"),
|
|
85
|
+
"@types": resolve(__dirname, "../../apps/backend/types"),
|
|
86
|
+
"@types/*": resolve(__dirname, "../../apps/backend/types/*"),
|
|
87
|
+
"@/lib": resolve(__dirname, "../../apps/backend/lib"),
|
|
88
|
+
"@/lib/*": resolve(__dirname, "../../apps/backend/lib/*"),
|
|
89
|
+
"@root": resolve(__dirname, "../../apps/backend"),
|
|
90
|
+
"@root/*": resolve(__dirname, "../../apps/backend/*"),
|
|
91
|
+
"@routes": resolve(__dirname, "../../apps/backend/routes"),
|
|
92
|
+
"@routes/*": resolve(__dirname, "../../apps/backend/routes/*"),
|
|
93
|
+
"@constants": resolve(__dirname, "../../apps/backend/constants"),
|
|
94
|
+
"@constants/*": resolve(__dirname, "../../apps/backend/constants/*"),
|
|
95
|
+
},
|
|
96
|
+
},
|
|
97
|
+
});
|