speccore 8.3.189 → 8.3.191

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 (73) hide show
  1. package/README.en.md +1 -1
  2. package/README.md +2 -2
  3. package/dist/cli.js +21 -24
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/analyze.d.ts +1 -0
  6. package/dist/commands/analyze.d.ts.map +1 -1
  7. package/dist/commands/analyze.js +87 -24
  8. package/dist/commands/analyze.js.map +1 -1
  9. package/dist/commands/dev.js +38 -14
  10. package/dist/commands/dev.js.map +1 -1
  11. package/dist/commands/doc2spec.d.ts +5 -0
  12. package/dist/commands/doc2spec.d.ts.map +1 -1
  13. package/dist/commands/doc2spec.js +2 -0
  14. package/dist/commands/doc2spec.js.map +1 -1
  15. package/dist/commands/help.js +91 -15
  16. package/dist/commands/help.js.map +1 -1
  17. package/dist/commands/next.d.ts +5 -0
  18. package/dist/commands/next.d.ts.map +1 -0
  19. package/dist/commands/next.js +152 -0
  20. package/dist/commands/next.js.map +1 -0
  21. package/dist/commands/pipeline.d.ts.map +1 -1
  22. package/dist/commands/pipeline.js +3 -1
  23. package/dist/commands/pipeline.js.map +1 -1
  24. package/dist/commands/req-doc.d.ts +17 -0
  25. package/dist/commands/req-doc.d.ts.map +1 -0
  26. package/dist/commands/req-doc.js +388 -0
  27. package/dist/commands/req-doc.js.map +1 -0
  28. package/dist/commands/run.d.ts +13 -0
  29. package/dist/commands/run.d.ts.map +1 -0
  30. package/dist/commands/run.js +619 -0
  31. package/dist/commands/run.js.map +1 -0
  32. package/dist/commands/status-panel.js +3 -3
  33. package/dist/commands/verify.d.ts +8 -0
  34. package/dist/commands/verify.d.ts.map +1 -1
  35. package/dist/commands/verify.js +8 -0
  36. package/dist/commands/verify.js.map +1 -1
  37. package/dist/commands/welcome.js +2 -2
  38. package/dist/commands/welcome.js.map +1 -1
  39. package/dist/commands/workspace.js +2 -2
  40. package/dist/core/agent-adapter.d.ts.map +1 -1
  41. package/dist/core/agent-adapter.js +18 -0
  42. package/dist/core/agent-adapter.js.map +1 -1
  43. package/dist/core/agents/defaults/_INDEX.md +68 -0
  44. package/dist/core/ask-engine.d.ts.map +1 -1
  45. package/dist/core/ask-engine.js +120 -26
  46. package/dist/core/ask-engine.js.map +1 -1
  47. package/dist/core/handoff-generator.d.ts +1 -1
  48. package/dist/core/handoff-generator.d.ts.map +1 -1
  49. package/dist/core/handoff-generator.js +10 -10
  50. package/dist/core/handoff-generator.js.map +1 -1
  51. package/dist/core/help-panel.d.ts +1 -1
  52. package/dist/core/help-panel.d.ts.map +1 -1
  53. package/dist/core/help-panel.js +2 -1
  54. package/dist/core/help-panel.js.map +1 -1
  55. package/dist/core/intent-recognition.d.ts +1 -1
  56. package/dist/core/intent-recognition.d.ts.map +1 -1
  57. package/dist/core/intent-recognition.js +98 -15
  58. package/dist/core/intent-recognition.js.map +1 -1
  59. package/dist/core/requirement-clarifier.d.ts +7 -1
  60. package/dist/core/requirement-clarifier.d.ts.map +1 -1
  61. package/dist/core/requirement-clarifier.js +42 -10
  62. package/dist/core/requirement-clarifier.js.map +1 -1
  63. package/dist/core/spec-paths.d.ts +6 -0
  64. package/dist/core/spec-paths.d.ts.map +1 -1
  65. package/dist/core/spec-paths.js +66 -0
  66. package/dist/core/spec-paths.js.map +1 -1
  67. package/dist/core/spec-skeleton.js +2 -2
  68. package/dist/core/spec-skeleton.js.map +1 -1
  69. package/dist/core/unified-config.d.ts +16 -0
  70. package/dist/core/unified-config.d.ts.map +1 -1
  71. package/dist/core/unified-config.js +53 -94
  72. package/dist/core/unified-config.js.map +1 -1
  73. package/package.json +1 -1
@@ -0,0 +1,388 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.reqDocCommand = reqDocCommand;
37
+ /**
38
+ * req-doc — 需求文档化命令(原 clarify,v8.3.189 改名消除「澄清」歧义)
39
+ *
40
+ * 将用户原始需求描述(口语化/非专业)整理为 PRD 级专业需求文档,
41
+ * 写入 010-requirements/converted/,供 analyze 使用。
42
+ *
43
+ * v6.76.0+
44
+ *
45
+ * 用法:
46
+ * speccore req-doc "我要加个购物车功能,能加商品、改数量、算总价"
47
+ * speccore req-doc --from docs/raw-notes.md --to Iteration-001
48
+ * speccore req-doc --from docs/raw-notes.md --prompt # 输出 prompt 给 AI
49
+ * speccore req-doc --apply "<AI 返回的 PRD>" --to Iteration-001
50
+ */
51
+ const logger_1 = require("../utils/logger");
52
+ const context_1 = require("../core/context");
53
+ const fs_extra_1 = require("fs-extra");
54
+ const path_1 = require("path");
55
+ const requirement_clarifier_1 = require("../core/requirement-clarifier");
56
+ const workspace_manager_1 = require("../core/workspace-manager");
57
+ const agent_adapter_1 = require("../core/agent-adapter");
58
+ async function reqDocCommand(options) {
59
+ // ── v8.3.0+: --promote 模式:将工作区内容提升到迭代层 ──
60
+ if (options.promote) {
61
+ const iteration = options.to || await (0, context_1.getDefaultIteration)() || '';
62
+ if (!iteration) {
63
+ logger_1.logger.error('请指定目标迭代: --to <iteration>');
64
+ return;
65
+ }
66
+ const iterDir = await (0, context_1.getIterationDir)(iteration);
67
+ try {
68
+ const written = await (0, workspace_manager_1.promoteToIteration)(process.cwd(), options.promote, iteration, iterDir);
69
+ logger_1.logger.success(`✅ 已提升到迭代 ${iteration}:`);
70
+ for (const p of written) {
71
+ logger_1.logger.info(` ${(0, path_1.relative)(process.cwd(), p)}`);
72
+ }
73
+ }
74
+ catch (e) {
75
+ logger_1.logger.error(`提升失败: ${e.message}`);
76
+ }
77
+ return;
78
+ }
79
+ // ── 确定目标迭代(--local 模式下不强制要求) ──
80
+ const isLocal = options.local || false;
81
+ const iteration = isLocal ? '' : (options.to || await (0, context_1.getDefaultIteration)() || '');
82
+ if (!isLocal && !iteration) {
83
+ logger_1.logger.error('请指定目标迭代: --to <iteration> 或确保有默认迭代');
84
+ logger_1.logger.info(' 或使用 --local 保存到临时工作区(不绑定迭代)');
85
+ return;
86
+ }
87
+ const iterDir = iteration ? await (0, context_1.getIterationDir)(iteration) : '';
88
+ // ── 获取原始需求内容 ──
89
+ let rawContent = '';
90
+ let sourceName = 'direct-input';
91
+ if (options.from) {
92
+ // 从文件读取
93
+ if (!(await (0, fs_extra_1.pathExists)(options.from))) {
94
+ logger_1.logger.error(`文件不存在: ${options.from}`);
95
+ return;
96
+ }
97
+ rawContent = await (0, fs_extra_1.readFile)(options.from, 'utf-8');
98
+ sourceName = (0, path_1.basename)(options.from);
99
+ logger_1.logger.info(`📄 已读取: ${options.from} (${rawContent.length} 字符)`);
100
+ }
101
+ else if (options.input) {
102
+ // 直接输入
103
+ rawContent = options.input;
104
+ sourceName = 'cli-input';
105
+ }
106
+ else if (options.check) {
107
+ // 只检测专业度
108
+ if (!(await (0, fs_extra_1.pathExists)(options.check))) {
109
+ logger_1.logger.error(`文件不存在: ${options.check}`);
110
+ return;
111
+ }
112
+ const result = await (0, requirement_clarifier_1.assessRequirementDoc)(options.check);
113
+ logger_1.logger.info('');
114
+ logger_1.logger.info(`📊 专业度评估: ${result.level.toUpperCase()}`);
115
+ if (result.issues.length > 0) {
116
+ logger_1.logger.info('📝 发现的问题:');
117
+ for (const issue of result.issues) {
118
+ logger_1.logger.info(` • ${issue}`);
119
+ }
120
+ }
121
+ else {
122
+ logger_1.logger.info('✅ 文档质量良好');
123
+ }
124
+ return;
125
+ }
126
+ else {
127
+ logger_1.logger.error('请提供需求描述: clarify "描述" 或 --from <文件>');
128
+ return;
129
+ }
130
+ // ── v8.3.191+: 功能单元聚焦澄清模式(切分独立于澄清)──
131
+ // 切分由 doc2spec --split 完成(产出 features/),澄清只读已切分的单元,不再自己切分
132
+ if (options.extractUnits || options.unit || options.consolidate || options.resumeUnits) {
133
+ const units = await (0, requirement_clarifier_1.loadFeatureUnits)(iterDir);
134
+ if (options.extractUnits) {
135
+ if (units.length === 0) {
136
+ logger_1.logger.warn('⚠️ 未找到功能单元,请先切分: speccore doc2spec --split');
137
+ return;
138
+ }
139
+ logger_1.logger.info(`📋 已切分的功能单元: ${units.length} 个`);
140
+ for (const u of units) {
141
+ logger_1.logger.info(` ${u.id}`);
142
+ }
143
+ logger_1.logger.info('');
144
+ logger_1.logger.info('📋 下一步: 逐个澄清功能单元');
145
+ logger_1.logger.info(` speccore req-doc --to ${iteration} --unit ${units[0].id} --prompt`);
146
+ return;
147
+ }
148
+ // 汇总模式(--consolidate)
149
+ if (options.consolidate) {
150
+ // 从黄金需求目录读取已澄清的单元
151
+ const goldenDir = (0, path_1.join)(iterDir, '020-specs', 'requirements');
152
+ const clarifiedUnits = [];
153
+ for (const u of units) {
154
+ const unitFile = (0, path_1.join)(goldenDir, `unit-${u.id}.md`);
155
+ if (await (0, fs_extra_1.pathExists)(unitFile)) {
156
+ const content = await (0, fs_extra_1.readFile)(unitFile, 'utf-8');
157
+ clarifiedUnits.push({ id: u.id, name: u.name, clarifiedContent: content, timestamp: new Date().toISOString() });
158
+ }
159
+ }
160
+ if (clarifiedUnits.length === 0) {
161
+ logger_1.logger.warn('⚠️ 尚未完成任何单元澄清,请先运行 --unit 模式');
162
+ return;
163
+ }
164
+ const prd = (0, requirement_clarifier_1.consolidateClarifiedUnits)(clarifiedUnits, sourceName);
165
+ if (options.apply) {
166
+ const writtenPath = await (0, requirement_clarifier_1.writeClarifiedDoc)(prd, iterDir, sourceName);
167
+ logger_1.logger.success(`✅ 统一 PRD 已写入: ${(0, path_1.relative)(process.cwd(), writtenPath)}`);
168
+ return;
169
+ }
170
+ if (options.prompt) {
171
+ process.stdout.write(prd);
172
+ process.exitCode = 10;
173
+ return;
174
+ }
175
+ logger_1.logger.info(`📋 统一 PRD 已生成(${clarifiedUnits.length}/${units.length} 个单元)`);
176
+ return;
177
+ }
178
+ // 断点续跑(--resume-units)
179
+ let targetUnit;
180
+ if (options.resumeUnits) {
181
+ const goldenDir = (0, path_1.join)(iterDir, '020-specs', 'requirements');
182
+ const pending = [];
183
+ for (const u of units) {
184
+ const unitFile = (0, path_1.join)(goldenDir, `unit-${u.id}.md`);
185
+ if (!await (0, fs_extra_1.pathExists)(unitFile))
186
+ pending.push(u);
187
+ }
188
+ if (pending.length === 0) {
189
+ logger_1.logger.success('🎉 所有功能单元澄清已完成!');
190
+ logger_1.logger.info(' 运行 --consolidate 汇总为统一 PRD');
191
+ return;
192
+ }
193
+ targetUnit = pending[0];
194
+ logger_1.logger.info(`🔄 断点续跑: ${targetUnit.id} ${targetUnit.name}(剩余 ${pending.length} 个)`);
195
+ }
196
+ // 澄清单个单元(--unit M-01)
197
+ if (options.unit) {
198
+ targetUnit = units.find(u => u.id === options.unit);
199
+ if (!targetUnit) {
200
+ logger_1.logger.error(`未找到功能单元: ${options.unit}`);
201
+ logger_1.logger.info(` 可用单元: ${units.map(u => u.id).join(', ')}`);
202
+ return;
203
+ }
204
+ }
205
+ if (targetUnit && options.prompt) {
206
+ // v8.3.191+: 上下文用已切分单元拼接(替代 rawContent,澄清不依赖原始全文切分)
207
+ const allContent = units.map(u => u.content).join('\n\n');
208
+ const prompt = await (0, requirement_clarifier_1.buildUnitClarifyPrompt)(targetUnit, allContent, {
209
+ iteration, sourceFile: sourceName, iterDir, allUnits: units,
210
+ });
211
+ process.stdout.write(prompt);
212
+ process.exitCode = 10;
213
+ return;
214
+ }
215
+ if (targetUnit && options.apply) {
216
+ const goldenDir = (0, path_1.join)(iterDir, '020-specs', 'requirements');
217
+ await (0, fs_extra_1.ensureDir)(goldenDir);
218
+ const unitFile = (0, path_1.join)(goldenDir, `unit-${targetUnit.id}.md`);
219
+ let finalContent = options.apply;
220
+ // 提取 [UNIT:xxx] 标记中的内容
221
+ const markerMatch = finalContent.match(/\[UNIT:[^\]]+\]([\s\S]*?)(?=\[UNIT:|$)/);
222
+ if (markerMatch)
223
+ finalContent = markerMatch[1].trim();
224
+ if (!finalContent.startsWith('---'))
225
+ finalContent = (0, requirement_clarifier_1.buildClarifiedHeader)(`${sourceName}#${targetUnit.id}`) + finalContent;
226
+ await (0, fs_extra_1.writeFile)(unitFile, finalContent);
227
+ logger_1.logger.success(`✅ 单元澄清已写入: 020-specs/requirements/unit-${targetUnit.id}.md`);
228
+ return;
229
+ }
230
+ if (targetUnit) {
231
+ logger_1.logger.info(`📋 功能单元: ${targetUnit.id} ${targetUnit.name}`);
232
+ logger_1.logger.info(' 使用 --prompt 生成澄清 Prompt,或 --apply 写入澄清结果');
233
+ return;
234
+ }
235
+ }
236
+ // ── 检测专业度 ──
237
+ const level = (0, requirement_clarifier_1.detectProfessionalLevel)(rawContent);
238
+ logger_1.logger.info(`📊 专业度检测: ${level.toUpperCase()}`);
239
+ if (level === 'high' && !options.force) {
240
+ logger_1.logger.info('✅ 文档已足够专业,无需整理');
241
+ logger_1.logger.info(' 如仍要整理,加 --force');
242
+ return;
243
+ }
244
+ // ── Prompt 模式:输出整理 Prompt ──
245
+ if (options.prompt) {
246
+ const prompt = (0, requirement_clarifier_1.buildClarifyPrompt)(rawContent, {
247
+ iteration,
248
+ sourceFile: sourceName,
249
+ });
250
+ // v8.3.189+: 非 TTY 下尝试通过 Qoder SDK 直接调度 product-analyst 完成需求文档化
251
+ if (!process.stdout.isTTY) {
252
+ try {
253
+ const agentCtx = {
254
+ subagent: 'product-analyst',
255
+ iteration: iteration || '',
256
+ contextBudget: 10000,
257
+ contextType: 'full',
258
+ cwd: process.cwd(),
259
+ };
260
+ const dispatchResult = await (0, agent_adapter_1.dispatchSubagent)(agentCtx, prompt);
261
+ if (dispatchResult && dispatchResult.success) {
262
+ logger_1.logger.info(`[req-doc] 子 Agent product-analyst SDK 调度成功`);
263
+ process.stdout.write(`\n[SPECCORE_RESULT] 子 Agent product-analyst 通过 Qoder SDK 完成执行\n`);
264
+ if (dispatchResult.filesChanged && dispatchResult.filesChanged.length > 0) {
265
+ process.stdout.write(`📄 文件变更: ${dispatchResult.filesChanged.join(', ')}\n`);
266
+ }
267
+ if (dispatchResult.content) {
268
+ process.stdout.write(`\n--- 执行结果 ---\n${dispatchResult.content.slice(0, 3000)}${dispatchResult.content.length > 3000 ? '\n... (截断)' : ''}\n`);
269
+ }
270
+ process.stdout.write(`\n> 请审查上述结果,确认后执行 speccore req-doc --apply '<PRD内容>' 写入文档\n`);
271
+ process.exitCode = 0;
272
+ return;
273
+ }
274
+ }
275
+ catch (e) {
276
+ logger_1.logger.debug(`[req-doc] SDK 调度尝试失败: ${e.message},回退到 Prompt 模式`);
277
+ }
278
+ }
279
+ process.stdout.write(prompt);
280
+ process.exitCode = 10;
281
+ // v8.3.0+: local 模式下提示闭环命令
282
+ if (isLocal) {
283
+ const entryId = await (0, workspace_manager_1.stageContent)(process.cwd(), rawContent, {
284
+ type: 'clarify',
285
+ source: options.from ? 'file' : 'direct',
286
+ sourcePath: options.from,
287
+ });
288
+ logger_1.logger.info('');
289
+ logger_1.logger.info('📋 临时工作区条目已创建:');
290
+ logger_1.logger.info(` ID: ${entryId}`);
291
+ logger_1.logger.info('');
292
+ logger_1.logger.info('下一步:');
293
+ logger_1.logger.info(` 将 Prompt 发给 AI,获取整理后的 PRD`);
294
+ logger_1.logger.info(` 然后执行: speccore req-doc --apply '<PRD内容>' --local`);
295
+ }
296
+ return;
297
+ }
298
+ // ── Apply 模式:接收 AI 结果写入文件 ──
299
+ if (options.apply) {
300
+ const spinner = new logger_1.Spinner('正在写入整理后的需求文档...');
301
+ spinner.start();
302
+ try {
303
+ const { content, hasOriginalSection } = (0, requirement_clarifier_1.parseClarifiedRequirement)(options.apply);
304
+ // 如果 AI 没有附加原始输入章节,自动追加
305
+ let finalContent = content;
306
+ if (!hasOriginalSection) {
307
+ finalContent += '\n\n---\n\n## 原始输入\n\n';
308
+ finalContent += '> 以下内容为用户原始需求描述,保留用于溯源:\n\n';
309
+ finalContent += '```\n' + rawContent + '\n```\n';
310
+ }
311
+ // 添加 frontmatter 头部
312
+ finalContent = (0, requirement_clarifier_1.buildClarifiedHeader)(sourceName) + finalContent;
313
+ if (isLocal) {
314
+ // v8.3.0+: 临时工作区模式
315
+ const entryId = await (0, workspace_manager_1.stageContent)(process.cwd(), rawContent, {
316
+ type: 'clarify',
317
+ source: options.from ? 'file' : 'direct',
318
+ sourcePath: options.from,
319
+ });
320
+ await (0, workspace_manager_1.writeWorkspaceOutput)(process.cwd(), entryId, 'clarify', {
321
+ 'PRD.md': finalContent,
322
+ });
323
+ spinner.stop('✅ 需求文档已整理并写入临时工作区');
324
+ logger_1.logger.info('');
325
+ logger_1.logger.info(`📄 工作区条目: ${entryId}`);
326
+ logger_1.logger.info(`📁 位置: .speccore/local/workspace/clarify/${entryId}/`);
327
+ logger_1.logger.info('');
328
+ logger_1.logger.info('后续操作:');
329
+ logger_1.logger.info(` 1. 查看文档内容确认无误`);
330
+ logger_1.logger.info(` 2. 提升到迭代层: speccore req-doc --promote ${entryId} --to <iteration>`);
331
+ }
332
+ else {
333
+ const writtenPath = await (0, requirement_clarifier_1.writeClarifiedDoc)(finalContent, iterDir, sourceName);
334
+ spinner.stop('✅ 需求文档已整理并写入');
335
+ logger_1.logger.info('');
336
+ logger_1.logger.info(`📄 文件: ${(0, path_1.relative)(process.cwd(), writtenPath)}`);
337
+ logger_1.logger.info(`📁 位置: ${iteration}/020-specs/requirements/(黄金需求目录)`);
338
+ logger_1.logger.info('');
339
+ // v8.3.65+: 自动刷新知识图谱和 RAG 索引
340
+ try {
341
+ const { refreshKnowledgeGraph } = await Promise.resolve().then(() => __importStar(require('../core/knowledge-graph')));
342
+ await refreshKnowledgeGraph(process.cwd(), iteration);
343
+ logger_1.logger.info('🧠 知识图谱已刷新');
344
+ }
345
+ catch { }
346
+ try {
347
+ const { indexDirectoryDocuments } = await Promise.resolve().then(() => __importStar(require('../core/rag-engine')));
348
+ const specsDir = (0, path_1.join)(iterDir, '020-specs');
349
+ const reqDir = (0, path_1.join)(iterDir, '010-requirements');
350
+ const dirs = [];
351
+ if (await (0, fs_extra_1.pathExists)(specsDir))
352
+ dirs.push(specsDir);
353
+ if (await (0, fs_extra_1.pathExists)(reqDir))
354
+ dirs.push(reqDir);
355
+ if (dirs.length > 0) {
356
+ await indexDirectoryDocuments(process.cwd(), dirs, `${iteration}_iteration_all`, `rag-index-${iteration}.json`);
357
+ logger_1.logger.info('🔍 迭代 RAG 索引已刷新');
358
+ }
359
+ }
360
+ catch { }
361
+ logger_1.logger.info('下一步:');
362
+ logger_1.logger.info(` 1. 查看并确认文档内容`);
363
+ logger_1.logger.info(` 2. 如需调整,手动编辑或重新执行 clarify`);
364
+ logger_1.logger.info(` 3. 确认无误后: speccore analyze --auto -I ${iteration}`);
365
+ }
366
+ }
367
+ catch (error) {
368
+ spinner.fail(`写入失败: ${error}`);
369
+ throw error;
370
+ }
371
+ return;
372
+ }
373
+ // ── 默认模式:提示用户使用 prompt → AI → apply 流程 ──
374
+ logger_1.logger.info('');
375
+ logger_1.logger.info('📝 需求整理流程:');
376
+ logger_1.logger.info('');
377
+ logger_1.logger.info('Step 1: 生成整理 Prompt');
378
+ logger_1.logger.info(` speccore req-doc --from "${sourceName}" --to ${iteration} --prompt`);
379
+ logger_1.logger.info('');
380
+ logger_1.logger.info('Step 2: 将 Prompt 发给 AI,获取整理后的 PRD');
381
+ logger_1.logger.info('');
382
+ logger_1.logger.info('Step 3: 将 AI 返回的 PRD 写入文件');
383
+ logger_1.logger.info(` speccore req-doc --apply '<AI 返回的内容>' --to ${iteration}`);
384
+ logger_1.logger.info('');
385
+ logger_1.logger.info('💡 或直接一步完成(如果 AI 在你的环境中):');
386
+ logger_1.logger.info(` speccore req-doc "${rawContent.slice(0, 40)}..." --to ${iteration} --prompt | ai | speccore req-doc --apply - --to ${iteration}`);
387
+ }
388
+ //# sourceMappingURL=req-doc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"req-doc.js","sourceRoot":"","sources":["../../src/commands/req-doc.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export interface RunOptions {
2
+ iteration?: string;
3
+ force?: boolean;
4
+ auto?: boolean;
5
+ autoSteps?: string;
6
+ from?: string;
7
+ to?: string;
8
+ demo?: boolean;
9
+ demand?: string;
10
+ preset?: string;
11
+ }
12
+ export declare function runCommand(options: RunOptions): Promise<void>;
13
+ //# sourceMappingURL=run.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW,UAAU;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IACxE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAUD,wBAAsB,UAAU,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnE"}