@zhin.js/scaffold-wizard 0.1.5 → 0.1.7
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/lib/adapter.d.ts.map +1 -1
- package/lib/adapter.js +2 -1
- package/lib/adapter.js.map +1 -1
- package/lib/ai.d.ts +6 -0
- package/lib/ai.d.ts.map +1 -1
- package/lib/ai.js +64 -34
- package/lib/ai.js.map +1 -1
- package/lib/apply.js +2 -2
- package/lib/apply.js.map +1 -1
- package/lib/index.d.ts +10 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +5 -1
- package/lib/index.js.map +1 -1
- package/lib/optional-peers.d.ts +21 -0
- package/lib/optional-peers.d.ts.map +1 -0
- package/lib/optional-peers.js +105 -0
- package/lib/optional-peers.js.map +1 -0
- package/lib/project-config-plan.d.ts +53 -0
- package/lib/project-config-plan.d.ts.map +1 -0
- package/lib/project-config-plan.js +337 -0
- package/lib/project-config-plan.js.map +1 -0
- package/lib/project-deps.d.ts +26 -3
- package/lib/project-deps.d.ts.map +1 -1
- package/lib/project-deps.js +211 -26
- package/lib/project-deps.js.map +1 -1
- package/lib/upgrade-l4.d.ts +15 -0
- package/lib/upgrade-l4.d.ts.map +1 -0
- package/lib/upgrade-l4.js +68 -0
- package/lib/upgrade-l4.js.map +1 -0
- package/lib/zhin-stack-deps.d.ts +66 -0
- package/lib/zhin-stack-deps.d.ts.map +1 -0
- package/lib/zhin-stack-deps.js +202 -0
- package/lib/zhin-stack-deps.js.map +1 -0
- package/package.json +7 -5
- package/src/adapter.ts +2 -1
- package/src/ai.ts +76 -32
- package/src/apply.ts +2 -2
- package/src/index.ts +53 -0
- package/src/optional-peers.ts +149 -0
- package/src/project-config-plan.ts +400 -0
- package/src/project-deps.ts +228 -27
- package/src/stack-versions.generated.json +48 -0
- package/src/upgrade-l4.ts +103 -0
- package/src/zhin-stack-deps.ts +252 -0
package/lib/project-deps.js
CHANGED
|
@@ -1,26 +1,193 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';
|
|
2
2
|
import fs from 'fs-extra';
|
|
3
3
|
import path from 'node:path';
|
|
4
|
-
/**
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
|
|
4
|
+
/**
|
|
5
|
+
* User project dependency policy: scaffolded dependencies intentionally float to latest.
|
|
6
|
+
*/
|
|
7
|
+
export const AI_STACK_VERSIONS = {
|
|
8
|
+
'@zhin.js/agent': 'latest',
|
|
9
|
+
zod: 'latest',
|
|
10
|
+
ai: 'latest',
|
|
11
|
+
'@modelcontextprotocol/sdk': 'latest',
|
|
12
|
+
'@ai-sdk/openai': 'latest',
|
|
13
|
+
'@ai-sdk/anthropic': 'latest',
|
|
14
|
+
'@ai-sdk/google': 'latest',
|
|
15
|
+
'@ai-sdk/deepseek': 'latest',
|
|
16
|
+
'@ai-sdk/openai-compatible': 'latest',
|
|
17
|
+
};
|
|
18
|
+
/** @deprecated 使用 AI_STACK_VERSIONS['@modelcontextprotocol/sdk'] */
|
|
19
|
+
export const MCP_SDK_VERSION = AI_STACK_VERSIONS['@modelcontextprotocol/sdk'];
|
|
20
|
+
const WIZARD_ALIAS_TO_SDK = {
|
|
21
|
+
openai: 'openai',
|
|
22
|
+
anthropic: 'anthropic',
|
|
23
|
+
deepseek: 'deepseek',
|
|
24
|
+
google: 'google',
|
|
25
|
+
gemini: 'google',
|
|
26
|
+
ollama: 'ollama',
|
|
27
|
+
moonshot: 'openai-compatible',
|
|
28
|
+
zhipu: 'openai-compatible',
|
|
29
|
+
};
|
|
30
|
+
const SDK_TO_NPM_PACKAGE = {
|
|
31
|
+
openai: '@ai-sdk/openai',
|
|
32
|
+
anthropic: '@ai-sdk/anthropic',
|
|
33
|
+
google: '@ai-sdk/google',
|
|
34
|
+
deepseek: '@ai-sdk/deepseek',
|
|
35
|
+
ollama: '@ai-sdk/openai-compatible',
|
|
36
|
+
'openai-compatible': '@ai-sdk/openai-compatible',
|
|
37
|
+
};
|
|
9
38
|
const PROVIDER_SDK_PACKAGES = {
|
|
10
|
-
openai: { pkg: '@ai-sdk/openai', version: '
|
|
11
|
-
anthropic: { pkg: '@ai-sdk/anthropic', version: '
|
|
12
|
-
google: { pkg: '@ai-sdk/google', version: '
|
|
13
|
-
gemini: { pkg: '@ai-sdk/google', version: '
|
|
14
|
-
deepseek: { pkg: '@ai-sdk/deepseek', version: '
|
|
15
|
-
ollama: { pkg: '@ai-sdk/openai-compatible', version: '
|
|
16
|
-
moonshot: { pkg: '@ai-sdk/openai-compatible', version: '
|
|
17
|
-
zhipu: { pkg: '@ai-sdk/openai-compatible', version: '
|
|
39
|
+
openai: { pkg: '@ai-sdk/openai', version: AI_STACK_VERSIONS['@ai-sdk/openai'] },
|
|
40
|
+
anthropic: { pkg: '@ai-sdk/anthropic', version: AI_STACK_VERSIONS['@ai-sdk/anthropic'] },
|
|
41
|
+
google: { pkg: '@ai-sdk/google', version: AI_STACK_VERSIONS['@ai-sdk/google'] },
|
|
42
|
+
gemini: { pkg: '@ai-sdk/google', version: AI_STACK_VERSIONS['@ai-sdk/google'] },
|
|
43
|
+
deepseek: { pkg: '@ai-sdk/deepseek', version: AI_STACK_VERSIONS['@ai-sdk/deepseek'] },
|
|
44
|
+
ollama: { pkg: '@ai-sdk/openai-compatible', version: AI_STACK_VERSIONS['@ai-sdk/openai-compatible'] },
|
|
45
|
+
moonshot: { pkg: '@ai-sdk/openai-compatible', version: AI_STACK_VERSIONS['@ai-sdk/openai-compatible'] },
|
|
46
|
+
zhipu: { pkg: '@ai-sdk/openai-compatible', version: AI_STACK_VERSIONS['@ai-sdk/openai-compatible'] },
|
|
47
|
+
};
|
|
48
|
+
/** @ai-sdk/* 主版本 ≥ threshold 时需 ai@7 */
|
|
49
|
+
const AI7_REQUIRED_SDK_MAJOR = {
|
|
50
|
+
'@ai-sdk/openai-compatible': 3,
|
|
51
|
+
'@ai-sdk/openai': 4,
|
|
52
|
+
'@ai-sdk/anthropic': 4,
|
|
53
|
+
'@ai-sdk/google': 4,
|
|
54
|
+
'@ai-sdk/deepseek': 3,
|
|
18
55
|
};
|
|
19
56
|
function providerSdkPackage(provider) {
|
|
20
57
|
if (!provider)
|
|
21
58
|
return undefined;
|
|
22
59
|
return PROVIDER_SDK_PACKAGES[provider];
|
|
23
60
|
}
|
|
61
|
+
function inferSdkId(providerAlias, entry) {
|
|
62
|
+
const explicit = entry?.sdk?.trim();
|
|
63
|
+
if (explicit)
|
|
64
|
+
return explicit;
|
|
65
|
+
if (WIZARD_ALIAS_TO_SDK[providerAlias])
|
|
66
|
+
return WIZARD_ALIAS_TO_SDK[providerAlias];
|
|
67
|
+
if (SDK_TO_NPM_PACKAGE[providerAlias])
|
|
68
|
+
return providerAlias;
|
|
69
|
+
return undefined;
|
|
70
|
+
}
|
|
71
|
+
function packagesForSdkIds(sdkIds) {
|
|
72
|
+
const deps = {};
|
|
73
|
+
for (const sdkId of sdkIds) {
|
|
74
|
+
const npmName = SDK_TO_NPM_PACKAGE[sdkId];
|
|
75
|
+
if (!npmName)
|
|
76
|
+
continue;
|
|
77
|
+
deps[npmName] = AI_STACK_VERSIONS[npmName];
|
|
78
|
+
}
|
|
79
|
+
return deps;
|
|
80
|
+
}
|
|
81
|
+
function collectSdkPackagesFromSetup(ai) {
|
|
82
|
+
const sdkIds = new Set();
|
|
83
|
+
const agentProvider = ai.agentProvider ?? ai.defaultProvider;
|
|
84
|
+
if (agentProvider) {
|
|
85
|
+
const id = inferSdkId(agentProvider, ai.providers?.[agentProvider]);
|
|
86
|
+
if (id)
|
|
87
|
+
sdkIds.add(id);
|
|
88
|
+
}
|
|
89
|
+
for (const [alias, entry] of Object.entries(ai.providers ?? {})) {
|
|
90
|
+
const id = inferSdkId(alias, entry);
|
|
91
|
+
if (id)
|
|
92
|
+
sdkIds.add(id);
|
|
93
|
+
}
|
|
94
|
+
return packagesForSdkIds(sdkIds);
|
|
95
|
+
}
|
|
96
|
+
function collectSdkPackagesFromConfig(config) {
|
|
97
|
+
const ai = config.ai;
|
|
98
|
+
if (!ai || typeof ai !== 'object' || Array.isArray(ai))
|
|
99
|
+
return {};
|
|
100
|
+
const rec = ai;
|
|
101
|
+
const providers = rec.providers;
|
|
102
|
+
const sdkIds = new Set();
|
|
103
|
+
if (providers) {
|
|
104
|
+
for (const [alias, entry] of Object.entries(providers)) {
|
|
105
|
+
const id = inferSdkId(alias, entry);
|
|
106
|
+
if (id)
|
|
107
|
+
sdkIds.add(id);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
const agents = rec.agents;
|
|
111
|
+
if (agents && providers) {
|
|
112
|
+
for (const agent of Object.values(agents)) {
|
|
113
|
+
if (!agent?.provider)
|
|
114
|
+
continue;
|
|
115
|
+
const id = inferSdkId(agent.provider, providers[agent.provider]);
|
|
116
|
+
if (id)
|
|
117
|
+
sdkIds.add(id);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
if (sdkIds.size === 0) {
|
|
121
|
+
const alias = resolveDefaultProviderFromConfig(config);
|
|
122
|
+
if (alias) {
|
|
123
|
+
const id = inferSdkId(alias, providers?.[alias]);
|
|
124
|
+
if (id)
|
|
125
|
+
sdkIds.add(id);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
return packagesForSdkIds(sdkIds);
|
|
129
|
+
}
|
|
130
|
+
function parseMajor(versionSpec) {
|
|
131
|
+
if (!versionSpec?.trim())
|
|
132
|
+
return undefined;
|
|
133
|
+
const match = versionSpec.trim().replace(/^[\^~>=<]+/, '').match(/^(\d+)/);
|
|
134
|
+
return match ? Number(match[1]) : undefined;
|
|
135
|
+
}
|
|
136
|
+
function getDeclaredPackageVersion(pkg, name) {
|
|
137
|
+
return pkg.dependencies?.[name] ?? pkg.devDependencies?.[name];
|
|
138
|
+
}
|
|
139
|
+
function readInstalledMajor(cwd, packageName) {
|
|
140
|
+
const pkgJson = path.join(cwd, 'package.json');
|
|
141
|
+
if (!fs.existsSync(pkgJson))
|
|
142
|
+
return undefined;
|
|
143
|
+
try {
|
|
144
|
+
const req = createRequire(pkgJson);
|
|
145
|
+
const installed = req(`${packageName}/package.json`);
|
|
146
|
+
return parseMajor(installed.version);
|
|
147
|
+
}
|
|
148
|
+
catch {
|
|
149
|
+
return undefined;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
function resolvePackageMajor(cwd, pkg, packageName) {
|
|
153
|
+
return readInstalledMajor(cwd, packageName) ?? parseMajor(getDeclaredPackageVersion(pkg, packageName));
|
|
154
|
+
}
|
|
155
|
+
export function findOutdatedAiStackInPackageJson(pkg, required) {
|
|
156
|
+
const outdated = [];
|
|
157
|
+
for (const [name, minSpec] of Object.entries(required)) {
|
|
158
|
+
const declared = getDeclaredPackageVersion(pkg, name);
|
|
159
|
+
if (!declared)
|
|
160
|
+
continue;
|
|
161
|
+
const declaredMajor = parseMajor(declared);
|
|
162
|
+
const minMajor = parseMajor(minSpec);
|
|
163
|
+
if (declaredMajor != null && minMajor != null && declaredMajor < minMajor) {
|
|
164
|
+
outdated.push(name);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
return outdated;
|
|
168
|
+
}
|
|
169
|
+
export function findInstalledAiStackIncompatibilities(cwd, pkg) {
|
|
170
|
+
const aiMajor = resolvePackageMajor(cwd, pkg, 'ai');
|
|
171
|
+
if (aiMajor == null || aiMajor >= 7)
|
|
172
|
+
return [];
|
|
173
|
+
const issues = [];
|
|
174
|
+
if (aiMajor < 7) {
|
|
175
|
+
issues.push({
|
|
176
|
+
package: 'ai',
|
|
177
|
+
reason: 'ai@6 与 @ai-sdk/openai-compatible@3(v4 model spec)不兼容,请升级 ai 至 ^7.0.0',
|
|
178
|
+
});
|
|
179
|
+
}
|
|
180
|
+
for (const [name, threshold] of Object.entries(AI7_REQUIRED_SDK_MAJOR)) {
|
|
181
|
+
const major = resolvePackageMajor(cwd, pkg, name);
|
|
182
|
+
if (major == null || major < threshold)
|
|
183
|
+
continue;
|
|
184
|
+
issues.push({
|
|
185
|
+
package: name,
|
|
186
|
+
reason: `${name}@${major} 需要 ai@7(当前 ai@${aiMajor})`,
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
return issues;
|
|
190
|
+
}
|
|
24
191
|
/** 启用 AI 时将写入 package.json 的依赖名(用于向导提示与 CLI 输出) */
|
|
25
192
|
export function listAIDependencyNames(provider, options) {
|
|
26
193
|
const names = ['@zhin.js/agent', 'zod', 'ai'];
|
|
@@ -93,10 +260,14 @@ export function getRequiredAIDependenciesForConfig(config) {
|
|
|
93
260
|
const ai = config.ai;
|
|
94
261
|
const setup = {
|
|
95
262
|
enabled: true,
|
|
96
|
-
|
|
263
|
+
agentProvider: resolveDefaultProviderFromConfig(config),
|
|
264
|
+
providers: ai.providers,
|
|
97
265
|
memoryMcp: aiConfigNeedsMcp(ai),
|
|
98
266
|
};
|
|
99
|
-
const deps =
|
|
267
|
+
const deps = {
|
|
268
|
+
...getAIDependencies(setup),
|
|
269
|
+
...collectSdkPackagesFromConfig(config),
|
|
270
|
+
};
|
|
100
271
|
if (!aiConfigNeedsMcp(ai)) {
|
|
101
272
|
delete deps['@modelcontextprotocol/sdk'];
|
|
102
273
|
}
|
|
@@ -125,6 +296,19 @@ export function findUnresolvedPackageInstalls(cwd, packageNames) {
|
|
|
125
296
|
}
|
|
126
297
|
return missing;
|
|
127
298
|
}
|
|
299
|
+
export function packagesNeedingAiStackFix(diagnosis) {
|
|
300
|
+
const names = new Set([
|
|
301
|
+
...diagnosis.missingFromPackageJson,
|
|
302
|
+
...diagnosis.outdatedInPackageJson,
|
|
303
|
+
]);
|
|
304
|
+
for (const issue of diagnosis.incompatibleInstalled) {
|
|
305
|
+
names.add(issue.package);
|
|
306
|
+
}
|
|
307
|
+
if (diagnosis.incompatibleInstalled.some((issue) => issue.package !== 'ai')) {
|
|
308
|
+
names.add('ai');
|
|
309
|
+
}
|
|
310
|
+
return [...names];
|
|
311
|
+
}
|
|
128
312
|
export function diagnoseAIDependencies(cwd, config, pkg) {
|
|
129
313
|
if (!isAiEnabledInConfig(config))
|
|
130
314
|
return null;
|
|
@@ -132,6 +316,8 @@ export function diagnoseAIDependencies(cwd, config, pkg) {
|
|
|
132
316
|
const packageJsonPath = path.join(cwd, 'package.json');
|
|
133
317
|
const packageJson = pkg ?? (fs.existsSync(packageJsonPath) ? fs.readJsonSync(packageJsonPath) : {});
|
|
134
318
|
const missingFromPackageJson = findMissingPackageDependencies(packageJson, required);
|
|
319
|
+
const outdatedInPackageJson = findOutdatedAiStackInPackageJson(packageJson, required);
|
|
320
|
+
const incompatibleInstalled = findInstalledAiStackIncompatibilities(cwd, packageJson);
|
|
135
321
|
const declared = Object.keys(required).filter((name) => !missingFromPackageJson.includes(name));
|
|
136
322
|
const notInstalled = findUnresolvedPackageInstalls(cwd, declared);
|
|
137
323
|
return {
|
|
@@ -139,13 +325,15 @@ export function diagnoseAIDependencies(cwd, config, pkg) {
|
|
|
139
325
|
provider: resolveDefaultProviderFromConfig(config),
|
|
140
326
|
required,
|
|
141
327
|
missingFromPackageJson,
|
|
328
|
+
outdatedInPackageJson,
|
|
329
|
+
incompatibleInstalled,
|
|
142
330
|
notInstalled,
|
|
143
331
|
};
|
|
144
332
|
}
|
|
145
|
-
export function formatAIDependencyFixCommand(
|
|
146
|
-
if (
|
|
333
|
+
export function formatAIDependencyFixCommand(packages, required) {
|
|
334
|
+
if (packages.length === 0)
|
|
147
335
|
return 'pnpm install';
|
|
148
|
-
const specs =
|
|
336
|
+
const specs = packages.map((name) => `${name}@${required[name] ?? 'latest'}`);
|
|
149
337
|
return `pnpm add ${specs.join(' ')}`;
|
|
150
338
|
}
|
|
151
339
|
/**
|
|
@@ -155,15 +343,12 @@ export function getAIDependencies(ai) {
|
|
|
155
343
|
if (!ai?.enabled)
|
|
156
344
|
return {};
|
|
157
345
|
const deps = {
|
|
158
|
-
'@zhin.js/agent':
|
|
159
|
-
zod:
|
|
160
|
-
ai:
|
|
161
|
-
'@modelcontextprotocol/sdk':
|
|
346
|
+
'@zhin.js/agent': AI_STACK_VERSIONS['@zhin.js/agent'],
|
|
347
|
+
zod: AI_STACK_VERSIONS.zod,
|
|
348
|
+
ai: AI_STACK_VERSIONS.ai,
|
|
349
|
+
'@modelcontextprotocol/sdk': AI_STACK_VERSIONS['@modelcontextprotocol/sdk'],
|
|
350
|
+
...collectSdkPackagesFromSetup(ai),
|
|
162
351
|
};
|
|
163
|
-
const sdk = providerSdkPackage(ai.defaultProvider);
|
|
164
|
-
if (sdk) {
|
|
165
|
-
deps[sdk.pkg] = sdk.version;
|
|
166
|
-
}
|
|
167
352
|
return deps;
|
|
168
353
|
}
|
|
169
354
|
/**
|
package/lib/project-deps.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-deps.js","sourceRoot":"","sources":["../src/project-deps.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"project-deps.js","sourceRoot":"","sources":["../src/project-deps.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { PackageJsonLike } from './project-deps.js';
|
|
2
|
+
import { diagnoseAIDependencies } from './project-deps.js';
|
|
3
|
+
import { diagnoseOptionalPeers } from './optional-peers.js';
|
|
4
|
+
export interface UpgradeToL4Diagnosis {
|
|
5
|
+
ai: ReturnType<typeof diagnoseAIDependencies>;
|
|
6
|
+
optionalPeers: ReturnType<typeof diagnoseOptionalPeers>;
|
|
7
|
+
missingAiDeps: string[];
|
|
8
|
+
missingOptionalPeers: string[];
|
|
9
|
+
fixCommand: string;
|
|
10
|
+
configSnippets: string[];
|
|
11
|
+
}
|
|
12
|
+
/** minimal-bot → full-bot / L4 升级诊断 */
|
|
13
|
+
export declare function diagnoseUpgradeToL4(cwd: string, config: Record<string, unknown>, pkg?: PackageJsonLike): UpgradeToL4Diagnosis;
|
|
14
|
+
export declare function getUpgradeToL4Dependencies(config: Record<string, unknown>): Record<string, string>;
|
|
15
|
+
//# sourceMappingURL=upgrade-l4.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upgrade-l4.d.ts","sourceRoot":"","sources":["../src/upgrade-l4.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EACL,sBAAsB,EAOvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,qBAAqB,EAA6D,MAAM,qBAAqB,CAAC;AAEvH,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC;IAC9C,aAAa,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;IACxD,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAkBD,uCAAuC;AACvC,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,GAAG,CAAC,EAAE,eAAe,GACpB,oBAAoB,CAqDtB;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGlG"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import fs from 'fs-extra';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { diagnoseAIDependencies, formatAIDependencyFixCommand, getRequiredAIDependenciesForConfig, isAiEnabledInConfig, findMissingPackageDependencies, findUnresolvedPackageInstalls, packagesNeedingAiStackFix, } from './project-deps.js';
|
|
4
|
+
import { diagnoseOptionalPeers, formatOptionalPeerFixCommand, getOptionalPeerDependencies } from './optional-peers.js';
|
|
5
|
+
const L4_CONFIG_SNIPPETS = [
|
|
6
|
+
'# --- L4 可选多模态(取消注释并安装 optional peer)---',
|
|
7
|
+
'# ai:',
|
|
8
|
+
'# multimodal:',
|
|
9
|
+
'# audio:',
|
|
10
|
+
'# strategy: transcribe # 需 @zhin.js/speech',
|
|
11
|
+
'# speech:',
|
|
12
|
+
'# stt:',
|
|
13
|
+
'# provider: ollama',
|
|
14
|
+
'# model: whisper',
|
|
15
|
+
'# tts:',
|
|
16
|
+
'# provider: edge',
|
|
17
|
+
'# htmlRenderer:',
|
|
18
|
+
'# width: 540',
|
|
19
|
+
];
|
|
20
|
+
/** minimal-bot → full-bot / L4 升级诊断 */
|
|
21
|
+
export function diagnoseUpgradeToL4(cwd, config, pkg) {
|
|
22
|
+
const packageJsonPath = path.join(cwd, 'package.json');
|
|
23
|
+
const packageJson = pkg ?? (fs.existsSync(packageJsonPath)
|
|
24
|
+
? fs.readJsonSync(packageJsonPath)
|
|
25
|
+
: {});
|
|
26
|
+
const aiEnabled = isAiEnabledInConfig(config);
|
|
27
|
+
const ai = aiEnabled ? diagnoseAIDependencies(cwd, config, packageJson) : null;
|
|
28
|
+
const optionalPeers = diagnoseOptionalPeers(cwd, config, packageJson);
|
|
29
|
+
const missingAiDeps = ai
|
|
30
|
+
? [...new Set([...packagesNeedingAiStackFix(ai), ...ai.notInstalled])]
|
|
31
|
+
: [...Object.keys(getRequiredAIDependenciesForConfig({ ai: { enabled: true } }))];
|
|
32
|
+
if (!aiEnabled) {
|
|
33
|
+
const required = getRequiredAIDependenciesForConfig({ ai: { enabled: true } });
|
|
34
|
+
const fromPkg = findMissingPackageDependencies(packageJson, required);
|
|
35
|
+
const declared = Object.keys(required).filter((n) => !fromPkg.includes(n));
|
|
36
|
+
const notInstalled = findUnresolvedPackageInstalls(cwd, declared);
|
|
37
|
+
missingAiDeps.push(...fromPkg, ...notInstalled);
|
|
38
|
+
}
|
|
39
|
+
const missingOptionalPeers = [];
|
|
40
|
+
for (const peer of [optionalPeers.speech, optionalPeers.htmlRenderer]) {
|
|
41
|
+
if (!peer?.required)
|
|
42
|
+
continue;
|
|
43
|
+
missingOptionalPeers.push(...peer.missingFromPackageJson, ...peer.notInstalled.filter((n) => !peer.missingFromPackageJson.includes(n)));
|
|
44
|
+
}
|
|
45
|
+
const fixParts = [];
|
|
46
|
+
if (!aiEnabled || missingAiDeps.length > 0) {
|
|
47
|
+
const required = ai?.required ?? getRequiredAIDependenciesForConfig({ ai: { enabled: true } });
|
|
48
|
+
fixParts.push(formatAIDependencyFixCommand([...new Set(missingAiDeps)], required));
|
|
49
|
+
}
|
|
50
|
+
for (const peer of [optionalPeers.speech, optionalPeers.htmlRenderer]) {
|
|
51
|
+
if (peer && (peer.missingFromPackageJson.length > 0 || peer.notInstalled.length > 0)) {
|
|
52
|
+
fixParts.push(formatOptionalPeerFixCommand(peer));
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return {
|
|
56
|
+
ai,
|
|
57
|
+
optionalPeers,
|
|
58
|
+
missingAiDeps: [...new Set(missingAiDeps)],
|
|
59
|
+
missingOptionalPeers: [...new Set(missingOptionalPeers)],
|
|
60
|
+
fixCommand: fixParts.join(' && '),
|
|
61
|
+
configSnippets: L4_CONFIG_SNIPPETS,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
export function getUpgradeToL4Dependencies(config) {
|
|
65
|
+
const deps = getRequiredAIDependenciesForConfig({ ai: { enabled: true } });
|
|
66
|
+
return { ...deps, ...getOptionalPeerDependencies(config) };
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=upgrade-l4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upgrade-l4.js","sourceRoot":"","sources":["../src/upgrade-l4.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import type { PackageJsonLike } from './project-deps.js';
|
|
2
|
+
/**
|
|
3
|
+
* User project dependency policy: scaffolded dependencies intentionally float to latest.
|
|
4
|
+
*/
|
|
5
|
+
export declare const ZHIN_STACK_VERSIONS: {
|
|
6
|
+
readonly 'zhin.js': "latest";
|
|
7
|
+
readonly '@zhin.js/cli': "latest";
|
|
8
|
+
readonly '@zhin.js/agent': "latest";
|
|
9
|
+
readonly '@zhin.js/database': "latest";
|
|
10
|
+
readonly '@zhin.js/host-router': "latest";
|
|
11
|
+
readonly '@zhin.js/host-api': "latest";
|
|
12
|
+
readonly '@zhin.js/client': "latest";
|
|
13
|
+
readonly '@zhin.js/contract': "latest";
|
|
14
|
+
readonly '@zhin.js/satori': "latest";
|
|
15
|
+
readonly '@zhin.js/speech': "latest";
|
|
16
|
+
readonly '@zhin.js/html-renderer': "latest";
|
|
17
|
+
readonly '@zhin.js/mcp': "latest";
|
|
18
|
+
readonly '@zhin.js/adapter-sandbox': "latest";
|
|
19
|
+
readonly '@zhin.js/adapter-dingtalk': "latest";
|
|
20
|
+
readonly '@zhin.js/adapter-discord': "latest";
|
|
21
|
+
readonly '@zhin.js/adapter-email': "latest";
|
|
22
|
+
readonly '@zhin.js/adapter-github': "latest";
|
|
23
|
+
readonly '@zhin.js/adapter-icqq': "latest";
|
|
24
|
+
readonly '@zhin.js/adapter-kook': "latest";
|
|
25
|
+
readonly '@zhin.js/adapter-lark': "latest";
|
|
26
|
+
readonly '@zhin.js/adapter-line': "latest";
|
|
27
|
+
readonly '@zhin.js/adapter-milky': "latest";
|
|
28
|
+
readonly '@zhin.js/adapter-napcat': "latest";
|
|
29
|
+
readonly '@zhin.js/adapter-onebot11': "latest";
|
|
30
|
+
readonly '@zhin.js/adapter-onebot12': "latest";
|
|
31
|
+
readonly '@zhin.js/adapter-qq': "latest";
|
|
32
|
+
readonly '@zhin.js/adapter-satori': "latest";
|
|
33
|
+
readonly '@zhin.js/adapter-slack': "latest";
|
|
34
|
+
readonly '@zhin.js/adapter-telegram': "latest";
|
|
35
|
+
readonly '@zhin.js/adapter-wechat-mp': "latest";
|
|
36
|
+
readonly '@zhin.js/adapter-wecom': "latest";
|
|
37
|
+
readonly '@zhin.js/adapter-weixin-ilink': "latest";
|
|
38
|
+
};
|
|
39
|
+
export type ZhinStackPackage = keyof typeof ZHIN_STACK_VERSIONS;
|
|
40
|
+
/** create-zhin / minimal-bot 默认 Host 端口(避免与常见 8086 占用冲突) */
|
|
41
|
+
export declare const DEFAULT_CREATE_BOT_HTTP_PORT = 8068;
|
|
42
|
+
/** create-zhin 生成项目的 .npmrc(避免全局 strict-peer-dependencies 阻断 AI 栈安装) */
|
|
43
|
+
export declare const CREATE_BOT_NPMRC = "strict-peer-dependencies=false\n";
|
|
44
|
+
/** create-zhin 生成项目的 pnpm 配置 */
|
|
45
|
+
export declare function getCreateBotPnpmConfig(_aiEnabled?: boolean): Record<string, unknown>;
|
|
46
|
+
/** create-zhin-app 默认 bot 骨架依赖(不含适配器 / AI / 数据库驱动) */
|
|
47
|
+
export declare function getCreateBotBaseDependencies(): Record<string, string>;
|
|
48
|
+
/** 根据 zhin.config 推导应声明的 @zhin.js/* / zhin.js 依赖 */
|
|
49
|
+
export declare function getRequiredZhinDependenciesForConfig(config: Record<string, unknown>): Record<string, string>;
|
|
50
|
+
export interface ZhinStackIncompatibility {
|
|
51
|
+
package: string;
|
|
52
|
+
reason: string;
|
|
53
|
+
}
|
|
54
|
+
export declare function findOutdatedZhinStackInPackageJson(pkg: PackageJsonLike, required: Record<string, string>): string[];
|
|
55
|
+
export declare function findInstalledZhinStackIncompatibilities(cwd: string, pkg: PackageJsonLike, config: Record<string, unknown>): ZhinStackIncompatibility[];
|
|
56
|
+
export interface ZhinStackDiagnosis {
|
|
57
|
+
required: Record<string, string>;
|
|
58
|
+
missingFromPackageJson: string[];
|
|
59
|
+
outdatedInPackageJson: string[];
|
|
60
|
+
incompatibleInstalled: ZhinStackIncompatibility[];
|
|
61
|
+
notInstalled: string[];
|
|
62
|
+
}
|
|
63
|
+
export declare function packagesNeedingZhinStackFix(diagnosis: ZhinStackDiagnosis): string[];
|
|
64
|
+
export declare function diagnoseZhinStackDependencies(cwd: string, config: Record<string, unknown>, pkg?: PackageJsonLike): ZhinStackDiagnosis;
|
|
65
|
+
export declare function formatZhinStackFixCommand(packages: string[], required: Record<string, string>): string;
|
|
66
|
+
//# sourceMappingURL=zhin-stack-deps.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"zhin-stack-deps.d.ts","sourceRoot":"","sources":["../src/zhin-stack-deps.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAOzD;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiCtB,CAAC;AAEX,MAAM,MAAM,gBAAgB,GAAG,MAAM,OAAO,mBAAmB,CAAC;AA6ChE,4DAA4D;AAC5D,eAAO,MAAM,4BAA4B,OAAO,CAAC;AAEjD,wEAAwE;AACxE,eAAO,MAAM,gBAAgB,qCAAqC,CAAC;AAEnE,gCAAgC;AAChC,wBAAgB,sBAAsB,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAIpF;AAED,sDAAsD;AACtD,wBAAgB,4BAA4B,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAUrE;AAED,oDAAoD;AACpD,wBAAgB,oCAAoC,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA2B5G;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,kCAAkC,CAChD,GAAG,EAAE,eAAe,EACpB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,MAAM,EAAE,CAYV;AAED,wBAAgB,uCAAuC,CACrD,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,eAAe,EACpB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,wBAAwB,EAAE,CA0B5B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC,qBAAqB,EAAE,wBAAwB,EAAE,CAAC;IAClD,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,kBAAkB,GAAG,MAAM,EAAE,CASnF;AAED,wBAAgB,6BAA6B,CAC3C,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,GAAG,CAAC,EAAE,eAAe,GACpB,kBAAkB,CAkBpB;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAItG"}
|