speccore 5.25.1 → 5.26.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.
Files changed (65) hide show
  1. package/README.md +93 -77
  2. package/dist/cli.js +123 -45
  3. package/dist/cli.js.map +1 -1
  4. package/dist/commands/ask.d.ts +4 -5
  5. package/dist/commands/ask.d.ts.map +1 -1
  6. package/dist/commands/ask.js +257 -292
  7. package/dist/commands/ask.js.map +1 -1
  8. package/dist/commands/dashboard.d.ts +12 -0
  9. package/dist/commands/dashboard.d.ts.map +1 -1
  10. package/dist/commands/dashboard.js +442 -77
  11. package/dist/commands/dashboard.js.map +1 -1
  12. package/dist/commands/dev.d.ts +2 -0
  13. package/dist/commands/dev.d.ts.map +1 -1
  14. package/dist/commands/dev.js +282 -290
  15. package/dist/commands/dev.js.map +1 -1
  16. package/dist/commands/doc2spec.d.ts +2 -0
  17. package/dist/commands/doc2spec.d.ts.map +1 -1
  18. package/dist/commands/doc2spec.js +22 -6
  19. package/dist/commands/doc2spec.js.map +1 -1
  20. package/dist/commands/help.d.ts.map +1 -1
  21. package/dist/commands/help.js +39 -0
  22. package/dist/commands/help.js.map +1 -1
  23. package/dist/commands/init.js +19 -9
  24. package/dist/commands/init.js.map +1 -1
  25. package/dist/commands/spec2doc.d.ts +11 -0
  26. package/dist/commands/spec2doc.d.ts.map +1 -0
  27. package/dist/commands/spec2doc.js +183 -0
  28. package/dist/commands/spec2doc.js.map +1 -0
  29. package/dist/commands/status-panel.d.ts +1 -0
  30. package/dist/commands/status-panel.d.ts.map +1 -1
  31. package/dist/commands/status-panel.js +97 -3
  32. package/dist/commands/status-panel.js.map +1 -1
  33. package/dist/commands/welcome.d.ts +10 -0
  34. package/dist/commands/welcome.d.ts.map +1 -1
  35. package/dist/commands/welcome.js +77 -30
  36. package/dist/commands/welcome.js.map +1 -1
  37. package/dist/core/ai-context-generator.d.ts.map +1 -1
  38. package/dist/core/ai-context-generator.js +161 -1
  39. package/dist/core/ai-context-generator.js.map +1 -1
  40. package/dist/core/ask-engine.d.ts +45 -0
  41. package/dist/core/ask-engine.d.ts.map +1 -0
  42. package/dist/core/ask-engine.js +405 -0
  43. package/dist/core/ask-engine.js.map +1 -0
  44. package/dist/core/ask-host-ai.d.ts +33 -0
  45. package/dist/core/ask-host-ai.d.ts.map +1 -0
  46. package/dist/core/ask-host-ai.js +156 -0
  47. package/dist/core/ask-host-ai.js.map +1 -0
  48. package/dist/core/ask-llm.d.ts +12 -0
  49. package/dist/core/ask-llm.d.ts.map +1 -0
  50. package/dist/core/ask-llm.js +166 -0
  51. package/dist/core/ask-llm.js.map +1 -0
  52. package/dist/core/dev-llm.d.ts +34 -0
  53. package/dist/core/dev-llm.d.ts.map +1 -0
  54. package/dist/core/dev-llm.js +209 -0
  55. package/dist/core/dev-llm.js.map +1 -0
  56. package/dist/core/help-panel.d.ts +1 -1
  57. package/dist/core/help-panel.d.ts.map +1 -1
  58. package/dist/core/help-panel.js +6 -5
  59. package/dist/core/help-panel.js.map +1 -1
  60. package/dist/core/intent-recognition.js +3 -3
  61. package/dist/core/intent-recognition.js.map +1 -1
  62. package/dist/utils/logger.d.ts.map +1 -1
  63. package/dist/utils/logger.js +5 -2
  64. package/dist/utils/logger.js.map +1 -1
  65. package/package.json +1 -1
@@ -25,6 +25,13 @@ async function generateAIContext(input) {
25
25
  reqContents.push(`## 来源: ${reqPath}\n\n${content}`);
26
26
  }
27
27
  }
28
+ // 1.5 读取 CONSTITUTION.md 获取工程配置映射
29
+ let constitutionInfo = '';
30
+ if (await (0, fs_extra_1.pathExists)((0, path_1.join)('.speccore', 'CONSTITUTION.md'))) {
31
+ constitutionInfo = await (0, fs_extra_1.readFile)((0, path_1.join)('.speccore', 'CONSTITUTION.md'), 'utf-8');
32
+ }
33
+ // 1.6 构建"端目录 ← → 工程源码"对应关系
34
+ const platformSourceMap = buildPlatformSourceMap(input);
28
35
  // 2. 读取代码索引
29
36
  let codeIndex = null;
30
37
  if (await (0, fs_extra_1.pathExists)(INDEX_PATH)) {
@@ -46,6 +53,8 @@ async function generateAIContext(input) {
46
53
  apiInventory,
47
54
  modules,
48
55
  codeIndex,
56
+ constitutionInfo,
57
+ platformSourceMap,
49
58
  });
50
59
  // 7. 写入文件
51
60
  const scopeName = input.scope === 'global'
@@ -64,7 +73,7 @@ async function generateAIContext(input) {
64
73
  }
65
74
  // ── 构建 Prompt ──
66
75
  function buildPrompt(params) {
67
- const { scope, iteration, taskId, depth, reqContents, fileTree, apiInventory, modules } = params;
76
+ const { scope, iteration, taskId, depth, reqContents, fileTree, apiInventory, modules, constitutionInfo, platformSourceMap } = params;
68
77
  const scopeLabel = scope === 'global' ? '全局' : scope === 'task' ? `任务 ${taskId}` : `期次 ${iteration || '当前'}`;
69
78
  return `# SpecCore AI 分析上下文
70
79
 
@@ -72,6 +81,24 @@ function buildPrompt(params) {
72
81
 
73
82
  ---
74
83
 
84
+ ${constitutionInfo ? `## 🏗 项目工程配置 (CONSTITUTION.md)
85
+
86
+ ${constitutionInfo.split('\n').filter(l => l.trim() && !l.startsWith('# ') && !l.startsWith('> ')).join('\n').slice(0, 2000)}
87
+
88
+ > 以上为项目配置信息。AI 应据此处配置判断各需求端(APP/H5/小程序/管理后台)对应哪个工程源码。
89
+
90
+ ---
91
+
92
+ ` : ''}
93
+ ${platformSourceMap ? `## 🔗 端 ↔ 工程对应关系
94
+
95
+ ${platformSourceMap}
96
+
97
+ > 以上为"产品需求端目录"与"工程源码路径"的对应关系。分析时请按此映射对标。
98
+
99
+ ---
100
+
101
+ ` : ''}
75
102
  ## 📋 需求文档
76
103
 
77
104
  ${reqContents.join('\n\n---\n\n') || '_无需求文档_'}
@@ -196,4 +223,137 @@ function groupByModule(files) {
196
223
  }
197
224
  return groups;
198
225
  }
226
+ // ── 端 ↔ 工程对应关系 ──
227
+ /**
228
+ * 构建产品需求端目录与工程源码路径的对应关系。
229
+ *
230
+ * 从两个来源推断(优先级从高到低):
231
+ * 1. CONSTITUTION.md 中「项目信息」表格的「对应需求端」列 → N:M 映射
232
+ * 2. 00-产品需求/ 下的子目录名 + 源码目录名 → 1:1 简单推断
233
+ *
234
+ * 用户可随时编辑 CONSTITUTION.md 中的「对应需求端」列来调整映射。
235
+ * 格式: "APP端, 管理后台" 表示该工程同时对应 APP端 和 管理后台 的需求。
236
+ */
237
+ function buildPlatformSourceMap(input) {
238
+ const lines = [];
239
+ // 1. 从 CONSTITUTION 读 N:M 映射
240
+ const constitutionMapping = readConstitutionPlatformMapping();
241
+ // 2. 提取产品需求端目录
242
+ const platformDirs = new Set();
243
+ for (const req of input.requirements) {
244
+ const parts = req.split('/');
245
+ const prdIdx = parts.indexOf('00-产品需求');
246
+ if (prdIdx >= 0 && prdIdx + 1 < parts.length) {
247
+ const platformDir = parts[prdIdx + 1];
248
+ if (platformDir && !platformDir.startsWith('_')) {
249
+ platformDirs.add(platformDir);
250
+ }
251
+ }
252
+ }
253
+ // 3. 从源码路径提取工程名
254
+ const sourceNames = input.sources.map(s => {
255
+ const parts = s.split('/');
256
+ return parts[parts.length - 1] || s;
257
+ });
258
+ const hasConstitution = Object.keys(constitutionMapping).length > 0;
259
+ if (hasConstitution) {
260
+ // — 使用 CONSTITUTION 中的 N:M 映射 —
261
+ lines.push('> 以下映射来自 CONSTITUTION.md「项目信息」表格的「对应需求端」列');
262
+ lines.push('');
263
+ lines.push('| 工程源码 | 默认分支 | 对应需求端 |');
264
+ lines.push('| :--- | :--- | :--- |');
265
+ // 先写出 CONSTITUTION 中明确配置的
266
+ for (const [src, info] of Object.entries(constitutionMapping)) {
267
+ const branches = info.branches.join(', ');
268
+ const platforms = info.platforms.length > 0 ? info.platforms.join(', ') : '—';
269
+ lines.push(`| \`${src}\` | ${branches} | ${platforms} |`);
270
+ }
271
+ // 再标注未在 CONSTITUTION 中配置的源码目录
272
+ const configured = new Set(Object.keys(constitutionMapping));
273
+ for (const src of sourceNames) {
274
+ if (!configured.has(src) && !configured.has(input.sources[sourceNames.indexOf(src)])) {
275
+ lines.push(`| \`${src}\` | — | ⚠️ 未配置,请补充 CONSTITUTION.md |`);
276
+ }
277
+ }
278
+ }
279
+ else {
280
+ // — 无 CONSTITUTION 时用简单推断 —
281
+ lines.push('> ⚠️ CONSTITUTION.md 未配置「对应需求端」,以下为自动推断。请编辑 CONSTITUTION 完善映射。');
282
+ lines.push('');
283
+ lines.push('| 产品需求端 | 工程源码 | 说明 |');
284
+ lines.push('| :--- | :--- | :--- |');
285
+ const platforms = [...platformDirs];
286
+ for (let i = 0; i < Math.max(platforms.length, sourceNames.length); i++) {
287
+ const p = platforms[i] || '—';
288
+ const s = sourceNames[i] || '—';
289
+ const note = p !== '—' && s !== '—'
290
+ ? `${p}需求 → 对应 \`${s}\` 工程`
291
+ : p !== '—'
292
+ ? `⚠️ ${p}需求(待指定工程)`
293
+ : `\`${s}\` 工程(待指定需求端)`;
294
+ lines.push(`| ${p} | \`${s}\` | ${note} |`);
295
+ }
296
+ }
297
+ // 标注跨端共用
298
+ lines.push('');
299
+ lines.push('> **跨端需求**: `_shared/` 或标记为多端共用的需求,AI 分析时应覆盖所有相关工程。');
300
+ lines.push('> **调整方式**: 编辑 CONSTITUTION.md → 「项目信息」表格的「对应需求端」列,用逗号分隔多个端。');
301
+ return lines.join('\n');
302
+ }
303
+ /**
304
+ * 解析 CONSTITUTION.md 中的项目信息表格,提取 N:M 工程↔需求端映射。
305
+ * 返回: { 工程源码路径: { platforms: ['APP端','H5端'], branches: ['main'] } }
306
+ */
307
+ function readConstitutionPlatformMapping() {
308
+ const result = {};
309
+ try {
310
+ const fs = require('fs');
311
+ const path = (0, path_1.join)('.speccore', 'CONSTITUTION.md');
312
+ if (!fs.existsSync(path))
313
+ return result;
314
+ const content = fs.readFileSync(path, 'utf-8');
315
+ // 找到「项目信息」下的表格
316
+ const tableStart = content.indexOf('| 工程 |');
317
+ if (tableStart < 0)
318
+ return result;
319
+ const lines = content.slice(tableStart).split('\n');
320
+ let headerParsed = false;
321
+ let platformColIdx = -1;
322
+ let pathColIdx = -1;
323
+ let branchColIdx = -1;
324
+ for (const line of lines) {
325
+ const trimmed = line.trim();
326
+ if (!trimmed.startsWith('|'))
327
+ continue;
328
+ const cols = trimmed.split('|').map((c) => c.trim()).filter(Boolean);
329
+ if (!headerParsed) {
330
+ // 解析表头: 找到「对应需求端」「路径」「默认分支」的列索引
331
+ platformColIdx = cols.findIndex((c) => c.includes('需求端'));
332
+ pathColIdx = cols.findIndex((c) => c.includes('路径'));
333
+ branchColIdx = cols.findIndex((c) => c.includes('分支'));
334
+ headerParsed = true;
335
+ continue;
336
+ }
337
+ // 跳过分隔行
338
+ if (cols[0].startsWith(':'))
339
+ continue;
340
+ if (cols.length >= 2 && platformColIdx >= 0) {
341
+ const srcPath = pathColIdx >= 0 && cols[pathColIdx] ? cols[pathColIdx].replace(/`/g, '') : '';
342
+ const platforms = platformColIdx < cols.length && cols[platformColIdx]
343
+ ? cols[platformColIdx].split(/[,,]/).map((p) => p.trim()).filter(Boolean)
344
+ : [];
345
+ const branches = branchColIdx >= 0 && branchColIdx < cols.length && cols[branchColIdx]
346
+ ? [cols[branchColIdx].trim()]
347
+ : ['main'];
348
+ // 用工程名或路径作为 key
349
+ const key = srcPath || cols[0].replace(/`/g, '');
350
+ if (key && key !== '—') {
351
+ result[key] = { platforms, branches };
352
+ }
353
+ }
354
+ }
355
+ }
356
+ catch { }
357
+ return result;
358
+ }
199
359
  //# sourceMappingURL=ai-context-generator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai-context-generator.js","sourceRoot":"","sources":["../../src/core/ai-context-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-context-generator.js","sourceRoot":"","sources":["../../src/core/ai-context-generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * ask — SpecCore 万能 AI 入口引擎
3
+ * 四种模式:命令解释(explain) / 任务指引(guide) / 意图匹配(match) / 复杂编排(pipeline)
4
+ */
5
+ /** ask 模式 */
6
+ export type AskMode = 'explain' | 'guide' | 'match' | 'pipeline';
7
+ /** 命令知识条目 */
8
+ export interface CommandKnowledge {
9
+ name: string;
10
+ aliases: string[];
11
+ description: string;
12
+ usage: string;
13
+ examples: string[];
14
+ related: string[];
15
+ triggers: string[];
16
+ }
17
+ /** Pipeline 步骤 */
18
+ export interface PipelineStep {
19
+ order: number;
20
+ command: string;
21
+ args: string;
22
+ explanation: string;
23
+ dependsOn?: number;
24
+ }
25
+ /** Pipeline 计划 */
26
+ export interface PipelinePlan {
27
+ steps: PipelineStep[];
28
+ input: string;
29
+ confirm: boolean;
30
+ }
31
+ /** Ask 结果 */
32
+ export interface AskResult {
33
+ mode: AskMode;
34
+ summary: string;
35
+ detail: string;
36
+ commands: string[];
37
+ pipeline?: PipelinePlan;
38
+ }
39
+ declare const COMMAND_KB: CommandKnowledge[];
40
+ declare const WORKFLOWS: Record<string, PipelineStep[]>;
41
+ /** 判断问句属于哪种模式 */
42
+ export declare function classifyMode(input: string): AskMode;
43
+ export declare function askEngine(input: string): Promise<AskResult>;
44
+ export { COMMAND_KB, WORKFLOWS };
45
+ //# sourceMappingURL=ask-engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ask-engine.d.ts","sourceRoot":"","sources":["../../src/core/ask-engine.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAWH,aAAa;AACb,MAAM,MAAM,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,UAAU,CAAC;AAEjE,aAAa;AACb,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,kBAAkB;AAClB,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,kBAAkB;AAClB,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,aAAa;AACb,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAMD,QAAA,MAAM,UAAU,EAAE,gBAAgB,EAuCjC,CAAC;AAMF,QAAA,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,CA6B7C,CAAC;AAMF,iBAAiB;AACjB,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAyCnD;AA+KD,wBAAsB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAqCjE;AAgFD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC"}