speccore 7.1.0 → 7.2.0
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 +24 -0
- package/dist/cli.js +4 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/analyze.d.ts +6 -0
- package/dist/commands/analyze.d.ts.map +1 -1
- package/dist/commands/analyze.js +505 -49
- package/dist/commands/analyze.js.map +1 -1
- package/dist/commands/config.js +2 -2
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/dev.js +30 -8
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/init.js +16 -276
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/iteration-from-global.js +2 -2
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +149 -0
- package/dist/commands/status.js.map +1 -1
- package/dist/core/change-impact-global.d.ts +20 -0
- package/dist/core/change-impact-global.d.ts.map +1 -0
- package/dist/core/change-impact-global.js +130 -0
- package/dist/core/change-impact-global.js.map +1 -0
- package/dist/core/dev-llm.d.ts +10 -0
- package/dist/core/dev-llm.d.ts.map +1 -1
- package/dist/core/dev-llm.js.map +1 -1
- package/dist/core/doc-cross-reference.d.ts +10 -0
- package/dist/core/doc-cross-reference.d.ts.map +1 -0
- package/dist/core/doc-cross-reference.js +108 -0
- package/dist/core/doc-cross-reference.js.map +1 -0
- package/dist/core/doc-quality-gate.d.ts +28 -0
- package/dist/core/doc-quality-gate.d.ts.map +1 -0
- package/dist/core/doc-quality-gate.js +209 -0
- package/dist/core/doc-quality-gate.js.map +1 -0
- package/dist/core/incremental-analyzer.js +1 -1
- package/dist/core/incremental-analyzer.js.map +1 -1
- package/dist/core/intent-recognition.d.ts.map +1 -1
- package/dist/core/intent-recognition.js +40 -0
- package/dist/core/intent-recognition.js.map +1 -1
- package/dist/core/iteration-cache.d.ts +48 -0
- package/dist/core/iteration-cache.d.ts.map +1 -0
- package/dist/core/iteration-cache.js +148 -0
- package/dist/core/iteration-cache.js.map +1 -0
- package/dist/core/platform-addition.js +3 -3
- package/dist/core/platform-addition.js.map +1 -1
- package/dist/core/semantic-locator.d.ts +42 -0
- package/dist/core/semantic-locator.d.ts.map +1 -0
- package/dist/core/semantic-locator.js +290 -0
- package/dist/core/semantic-locator.js.map +1 -0
- package/dist/core/structured-extractor.d.ts +89 -0
- package/dist/core/structured-extractor.d.ts.map +1 -0
- package/dist/core/structured-extractor.js +428 -0
- package/dist/core/structured-extractor.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/dev.js
CHANGED
|
@@ -363,13 +363,34 @@ async function renderDevHtml(options) {
|
|
|
363
363
|
const now = new Date().toISOString().split('T')[0];
|
|
364
364
|
const isInit = await (0, fs_extra_1.pathExists)('.speccore');
|
|
365
365
|
const phases = [
|
|
366
|
-
{ name: lang === 'en' ? I18N.en.stepInit : I18N.zh.stepInit, key: 'init', done: !!isInit, icon: '🏗️', cmd: 'init', description: '初始化 SpecCore 项目结构', args: ''
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
{ name: lang === 'en' ? I18N.en.
|
|
371
|
-
|
|
372
|
-
|
|
366
|
+
{ name: lang === 'en' ? I18N.en.stepInit : I18N.zh.stepInit, key: 'init', done: !!isInit, icon: '🏗️', cmd: 'init', description: '初始化 SpecCore 项目结构', args: '',
|
|
367
|
+
detail: '创建 .speccore/ 目录及配置文件(CONSTITUTION.md、SETTINGS.md 等),奠定项目规范基础。',
|
|
368
|
+
prerequisites: ['空目录或已有代码仓库'], outputs: ['.speccore/CONSTITUTION.md', '.speccore/SETTINGS.md', '.speccore/local/context.json'],
|
|
369
|
+
tips: '如果已有项目,init 会扫描现有工程结构自动填写技术栈。', examples: ['speccore init'] },
|
|
370
|
+
{ name: lang === 'en' ? I18N.en.stepDoc : I18N.zh.stepDoc, key: 'doc', done: false, icon: '📝', cmd: 'doc2spec', description: '导入 PRD 文档,AI 转换需求规格', args: '-f PRD.docx' + (iterName ? ' --iteration ' + iterName : ''),
|
|
371
|
+
detail: '将产品需求文档(Word / PDF / Markdown)导入迭代,AI 自动提取并转换为标准需求规格。也支持自然语言直接描述需求。',
|
|
372
|
+
prerequisites: ['已创建迭代', '需求文档或明确的功能描述'], outputs: ['Iteration-xxx/010-requirements/REQUIREMENT.md', 'Iteration-xxx/010-requirements/features/'],
|
|
373
|
+
tips: '如果文档格式复杂,可以先放到 .speccore/inbox/ 目录,AI 会自动识别并转换。', examples: ['/spec-ask "新增用户登录功能"', 'speccore doc2spec -f PRD.docx -i my-iter'] },
|
|
374
|
+
{ name: lang === 'en' ? I18N.en.stepAnalyze : I18N.zh.stepAnalyze, key: 'analyze', done: false, icon: '🧠', cmd: 'analyze', description: 'AI 分析需求文档,生成审计报告', args: iterName ? '--iteration=' + iterName : '',
|
|
375
|
+
detail: 'AI 深度分析需求文档,生成分端技术规格(ANALYSIS.md、TECH.md、UI_SPEC.md、TEST.md 等 7+ 份文档),并输出风险评估和依赖分析。',
|
|
376
|
+
prerequisites: ['需求文档已导入(REQUIREMENT.md 或 features/ 存在)'], outputs: ['Iteration-xxx/020-specs/global/ANALYSIS.md', 'Iteration-xxx/020-specs/{platform}/TECH.md', 'Iteration-xxx/020-specs/{platform}/UI_SPEC.md'],
|
|
377
|
+
tips: '分析时 AI 会读取 CONSTITUTION.md 中的技术栈配置,确保输出符合项目规范。分析产物包含 Mermaid 图表。', examples: ['/spec-ask "分析 my-iter 的需求"', 'speccore analyze --auto -I my-iter'] },
|
|
378
|
+
{ name: lang === 'en' ? I18N.en.stepSplit : I18N.zh.stepSplit, key: 'split', done: false, icon: '📦', cmd: 'split', description: '将需求拆分为独立开发任务', args: '-f REQUIREMENT.md',
|
|
379
|
+
detail: '基于 ANALYSIS.md 中的技术规格,AI 将需求拆分为独立的开发任务(Task-001 / Task-002 ...),每个任务包含 REQ/TECH/SCHEMA 规格和跨端依赖分析。',
|
|
380
|
+
prerequisites: ['analyze 已完成(ANALYSIS.md 存在)'], outputs: ['Iteration-xxx/030-tasks/Task-001/', 'Iteration-xxx/030-tasks/Task-002/'],
|
|
381
|
+
tips: '拆分粒度受 STAFFING.md 团队规模影响。≤3人粗粒度,4-8人中粒度(默认),>8人细粒度。', examples: ['/spec-ask "拆分 my-iter 的任务"', 'speccore iteration split -i my-iter'] },
|
|
382
|
+
{ name: lang === 'en' ? I18N.en.stepExec : I18N.zh.stepExec, key: 'execute', done: false, icon: '⚡', cmd: 'execute', description: '按计划分批执行开发任务', args: '--auto',
|
|
383
|
+
detail: '按执行计划(plan 生成)分批开发。AI 读取 Task 的 TECH.md 和 SCHEMA.md,生成代码并写入源码路径。支持断点续传和批量执行。',
|
|
384
|
+
prerequisites: ['任务已拆分(030-tasks/ 下有 Task-xxx 目录)', '可选:已执行 plan 生成执行计划'], outputs: ['源码路径中的新增/修改代码文件', 'Task 目录下的 src/ tests/ 子目录'],
|
|
385
|
+
tips: '推荐用 --batch-size 3 分批执行,每批完成后开新对话继续。失败任务会写入 .issues.md 和 .needs-retry。', examples: ['/spec-ask "开发 Task-001"', 'speccore execute --auto -i my-iter --batch-size 3'] },
|
|
386
|
+
{ name: lang === 'en' ? I18N.en.stepPr : I18N.zh.stepPr, key: 'pr', done: false, icon: '🔀', cmd: 'pr', description: '代码提交后创建 Pull Request', args: '--auto',
|
|
387
|
+
detail: '自动提交代码变更到 Git,创建 Pull Request 或 Merge Request。包含变更摘要、影响分析、测试建议。',
|
|
388
|
+
prerequisites: ['有未提交的代码变更', 'Git 仓库已配置'], outputs: ['Git commit', 'Pull Request / Merge Request'],
|
|
389
|
+
tips: '执行前会检查分支安全性(禁止直接提交到主分支)和未提交变更。支持 --auto 自动填写 PR 描述。', examples: ['/spec-ask "提交 my-iter 的代码"', 'speccore pr -i my-iter --auto'] },
|
|
390
|
+
{ name: lang === 'en' ? I18N.en.stepDone : I18N.zh.stepDone, key: 'done', done: false, icon: '✅', cmd: 'done', description: '校验、同步、审计,归档记录', args: '--all',
|
|
391
|
+
detail: '完成最终校验(validate)、双向同步(sync)、生成复盘报告(RETRO.md),标记迭代为完成状态。',
|
|
392
|
+
prerequisites: ['所有任务已执行完毕', '代码已提交'], outputs: ['Iteration-xxx/000-overview/RETRO.md', '迭代完成标记'],
|
|
393
|
+
tips: 'RETRO.md 包含需求完成度、任务回顾、问题清单、改进建议,可用于迭代复盘会议。', examples: ['/spec-ask "完成 my-iter"', 'speccore done --all -i my-iter'] },
|
|
373
394
|
];
|
|
374
395
|
if (iterDir) {
|
|
375
396
|
const reqDoc = (0, path_1.join)(iterDir, '010-requirements', 'REQUIREMENT.md');
|
|
@@ -419,7 +440,7 @@ async function renderDevHtml(options) {
|
|
|
419
440
|
}).join('\n');
|
|
420
441
|
// State data for JS
|
|
421
442
|
const stateJson = JSON.stringify(state).replace(/"/g, '"');
|
|
422
|
-
return `<!DOCTYPE html><html lang="zh-CN" data-theme="ocean"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1.0"><title>SpecCore Dev · Pipeline</title><style>@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@500;700;900&family=JetBrains+Mono:wght@400;600;700&display=swap');[data-theme="ocean"]{--cyan:#0ea5e9;--bg:#0b1929;--card:rgba(13,31,56,.95);--border:rgba(14,165,233,.15);--text:#bae6fd;--muted:#5b7fa5;--green:#14b8a6;--orange:#f97316;--purple:#6366f1}*{margin:0;padding:0;box-sizing:border-box}body{font-family:'JetBrains Mono',monospace;background:var(--bg);color:var(--text);min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;gap:20px}.scanlines{position:fixed;inset:0;pointer-events:none;z-index:99;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,240,255,.01) 2px,rgba(0,240,255,.01) 4px)}.card{max-width:680px;width:100%;background:var(--card);border:1px solid var(--border);border-radius:16px;padding:36px;position:relative;overflow:hidden}.card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);animation:scanX 3s linear infinite}.card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);animation:scanX-rev 3s linear infinite}@keyframes scanX{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}@keyframes scanX-rev{0%{transform:translateX(100%)}100%{transform:translateX(-100%)}}@keyframes scanY{0%{transform:translateY(-100%)}100%{transform:translateY(100%)}}@keyframes scanY-rev{0%{transform:translateY(100%)}100%{transform:translateY(-100%)}}.vline{position:absolute;top:0;width:1px;bottom:0;pointer-events:none}.vline.l{left:0;background:linear-gradient(180deg,transparent,var(--cyan),transparent);animation:scanY-rev 3s linear infinite}.vline.r{right:0;background:linear-gradient(180deg,transparent,var(--cyan),transparent);animation:scanY 3s linear infinite}h1{font-family:'Orbitron',sans-serif;font-size:22px;font-weight:900;background:linear-gradient(135deg,var(--cyan),var(--purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:2px;margin-bottom:4px}.subtitle{color:var(--muted);font-size:11px;margin-bottom:16px}.flow{display:flex;align-items:center;gap:16px;margin:16px 0;flex-wrap:wrap;justify-content:flex-start}.phase{display:flex;align-items:center;gap:12px;padding:10px 18px;border-radius:10px;font-size:12px;transition:all .3s;border:1px solid transparent}.phase.done{background:rgba(20,184,166,.1);border-color:rgba(20,184,166,.3);color:var(--green)}.phase.current{background:rgba(14,165,233,.15);border-color:rgba(14,165,233,.5);color:var(--cyan);box-shadow:0 0 16px rgba(14,165,233,.15);animation:glow 2s ease-in-out infinite}.phase.pending{background:rgba(255,255,255,.02);border-color:rgba(255,255,255,.05);color:var(--muted)}.phase-arrow{color:var(--muted);font-size:14px;margin:0 8px}@keyframes glow{0%,100%{box-shadow:0 0 16px rgba(14,165,233,.15)}50%{box-shadow:0 0 24px rgba(14,165,233,.3)}}.cur-section{padding:16px;background:rgba(14,165,233,.06);border:1px solid rgba(14,165,233,.15);border-radius:10px;margin:16px 0}.cur-label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:2px;margin-bottom:8px}.cur-cmd{font-family:'JetBrains Mono',monospace;font-size:14px;color:var(--cyan);background:rgba(14,165,233,.08);padding:6px 12px;border-radius:6px;display:inline-block}.action-btns{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.action-btns button,.phase-btn{padding:8px 16px;border-radius:8px;border:1px solid var(--border);background:var(--surface, rgba(255,255,255,.03));color:var(--text);cursor:pointer;font-size:11px;font-family:'JetBrains Mono',monospace;transition:all .2s}.action-btns button:hover,.phase-btn:hover{border-color:var(--cyan);color:var(--cyan);background:rgba(14,165,233,.08)}.action-btns button.primary{background:rgba(14,165,233,.12);border-color:rgba(14,165,233,.4);color:var(--cyan)}.action-btns button.danger{border-color:rgba(249,115,22,.3);color:var(--orange)}.action-btns button.danger:hover{border-color:var(--orange);background:rgba(249,115,22,.08)}.phase-btn{font-size:10px;padding:6px 10px}.phase-btn.done{opacity:.4;cursor:default}.input-row{display:flex;gap:8px;margin:16px 0}.input-row input{flex:1;padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:rgba(255,255,255,.03);color:var(--text);font-size:12px;font-family:'JetBrains Mono',monospace;outline:none;transition:all .2s}.input-row input:focus{border-color:var(--cyan);box-shadow:0 0 12px rgba(14,165,233,.1)}.input-row button{padding:10px 16px;border-radius:10px;border:1px solid var(--cyan);background:rgba(14,165,233,.1);color:var(--cyan);cursor:pointer;font-size:12px;font-family:'JetBrains Mono',monospace;transition:all .2s}.input-row button:hover{background:rgba(14,165,233,.2)}.result-box{margin-top:16px;padding:16px;background:rgba(14,165,233,.04);border:1px solid rgba(14,165,233,.1);border-radius:10px;display:none}.result-box.show{display:block}.result-cmd{font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--green);background:rgba(20,184,166,.08);padding:6px 10px;border-radius:4px;margin:4px 0;display:inline-block}.result-summary{font-size:12px;color:var(--text);margin-bottom:8px}..quick-phase{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px;justify-content:center}.footer{text-align:center;color:var(--muted);font-size:10px;margin-top:8px}</style></head><body><div class="scanlines"></div>
|
|
443
|
+
return `<!DOCTYPE html><html lang="zh-CN" data-theme="ocean"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width,initial-scale=1.0"><title>SpecCore Dev · Pipeline</title><style>@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@500;700;900&family=JetBrains+Mono:wght@400;600;700&display=swap');[data-theme="ocean"]{--cyan:#0ea5e9;--bg:#0b1929;--card:rgba(13,31,56,.95);--border:rgba(14,165,233,.15);--text:#bae6fd;--muted:#5b7fa5;--green:#14b8a6;--orange:#f97316;--purple:#6366f1}*{margin:0;padding:0;box-sizing:border-box}body{font-family:'JetBrains Mono',monospace;background:var(--bg);color:var(--text);min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;gap:20px}.scanlines{position:fixed;inset:0;pointer-events:none;z-index:99;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,240,255,.01) 2px,rgba(0,240,255,.01) 4px)}.card{max-width:680px;width:100%;background:var(--card);border:1px solid var(--border);border-radius:16px;padding:36px;position:relative;overflow:hidden}.card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);animation:scanX 3s linear infinite}.card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);animation:scanX-rev 3s linear infinite}@keyframes scanX{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}@keyframes scanX-rev{0%{transform:translateX(100%)}100%{transform:translateX(-100%)}}@keyframes scanY{0%{transform:translateY(-100%)}100%{transform:translateY(100%)}}@keyframes scanY-rev{0%{transform:translateY(100%)}100%{transform:translateY(-100%)}}.vline{position:absolute;top:0;width:1px;bottom:0;pointer-events:none}.vline.l{left:0;background:linear-gradient(180deg,transparent,var(--cyan),transparent);animation:scanY-rev 3s linear infinite}.vline.r{right:0;background:linear-gradient(180deg,transparent,var(--cyan),transparent);animation:scanY 3s linear infinite}h1{font-family:'Orbitron',sans-serif;font-size:22px;font-weight:900;background:linear-gradient(135deg,var(--cyan),var(--purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:2px;margin-bottom:4px}.subtitle{color:var(--muted);font-size:11px;margin-bottom:16px}.flow{display:flex;align-items:center;gap:16px;margin:16px 0;flex-wrap:wrap;justify-content:flex-start}.phase{display:flex;align-items:center;gap:12px;padding:10px 18px;border-radius:10px;font-size:12px;transition:all .3s;border:1px solid transparent}.phase.done{background:rgba(20,184,166,.1);border-color:rgba(20,184,166,.3);color:var(--green)}.phase.current{background:rgba(14,165,233,.15);border-color:rgba(14,165,233,.5);color:var(--cyan);box-shadow:0 0 16px rgba(14,165,233,.15);animation:glow 2s ease-in-out infinite}.phase.pending{background:rgba(255,255,255,.02);border-color:rgba(255,255,255,.05);color:var(--muted)}.phase-arrow{color:var(--muted);font-size:14px;margin:0 8px}@keyframes glow{0%,100%{box-shadow:0 0 16px rgba(14,165,233,.15)}50%{box-shadow:0 0 24px rgba(14,165,233,.3)}}.cur-section{padding:16px;background:rgba(14,165,233,.06);border:1px solid rgba(14,165,233,.15);border-radius:10px;margin:16px 0}.cur-label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:2px;margin-bottom:8px}.cur-cmd{font-family:'JetBrains Mono',monospace;font-size:14px;color:var(--cyan);background:rgba(14,165,233,.08);padding:6px 12px;border-radius:6px;display:inline-block}.action-btns{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.action-btns button,.phase-btn{padding:8px 16px;border-radius:8px;border:1px solid var(--border);background:var(--surface, rgba(255,255,255,.03));color:var(--text);cursor:pointer;font-size:11px;font-family:'JetBrains Mono',monospace;transition:all .2s}.action-btns button:hover,.phase-btn:hover{border-color:var(--cyan);color:var(--cyan);background:rgba(14,165,233,.08)}.action-btns button.primary{background:rgba(14,165,233,.12);border-color:rgba(14,165,233,.4);color:var(--cyan)}.action-btns button.danger{border-color:rgba(249,115,22,.3);color:var(--orange)}.action-btns button.danger:hover{border-color:var(--orange);background:rgba(249,115,22,.08)}.phase-btn{font-size:10px;padding:6px 10px}.phase-btn.done{opacity:.4;cursor:default}.input-row{display:flex;gap:8px;margin:16px 0}.input-row input{flex:1;padding:10px 14px;border-radius:10px;border:1px solid var(--border);background:rgba(255,255,255,.03);color:var(--text);font-size:12px;font-family:'JetBrains Mono',monospace;outline:none;transition:all .2s}.input-row input:focus{border-color:var(--cyan);box-shadow:0 0 12px rgba(14,165,233,.1)}.input-row button{padding:10px 16px;border-radius:10px;border:1px solid var(--cyan);background:rgba(14,165,233,.1);color:var(--cyan);cursor:pointer;font-size:12px;font-family:'JetBrains Mono',monospace;transition:all .2s}.input-row button:hover{background:rgba(14,165,233,.2)}.result-box{margin-top:16px;padding:16px;background:rgba(14,165,233,.04);border:1px solid rgba(14,165,233,.1);border-radius:10px;display:none}.result-box.show{display:block}.result-cmd{font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--green);background:rgba(20,184,166,.08);padding:6px 10px;border-radius:4px;margin:4px 0;display:inline-block}.result-summary{font-size:12px;color:var(--text);margin-bottom:8px}..quick-phase{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px;justify-content:center}.detail-panel{margin-top:12px;border-top:1px solid rgba(14,165,233,.1);padding-top:12px}.detail-toggle{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:11px;color:var(--muted);transition:color .2s}.detail-toggle:hover{color:var(--cyan)}.detail-toggle::before{content:'▸';font-size:10px;transition:transform .2s}.detail-toggle.open::before{transform:rotate(90deg)}.detail-content{display:none;margin-top:10px;font-size:11px;line-height:1.7;color:var(--text)}.detail-content.show{display:block}.detail-block{margin:8px 0;padding:8px 10px;border-radius:6px;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.04)}.detail-block-title{font-size:10px;font-weight:700;color:var(--cyan);margin-bottom:4px;text-transform:uppercase;letter-spacing:1px}.detail-block ul{margin:0;padding-left:16px;color:var(--muted);font-size:10px}.detail-block li{margin:2px 0}.detail-tip{margin:8px 0;padding:8px 10px;border-radius:6px;background:rgba(20,184,166,.04);border:1px solid rgba(20,184,166,.1);color:var(--green);font-size:10px}.detail-examples{margin:8px 0;padding:8px 10px;border-radius:6px;background:rgba(99,102,241,.04);border:1px solid rgba(99,102,241,.1)}.detail-examples code{display:block;font-size:10px;color:var(--purple);margin:3px 0;padding:2px 6px;background:rgba(0,0,0,.2);border-radius:3px;font-family:'JetBrains Mono',monospace}.footer{text-align:center;color:var(--muted);font-size:10px;margin-top:8px}</style></head><body><div class="scanlines"></div>
|
|
423
444
|
|
|
424
445
|
<div class="card"><div class="vline l"></div><div class="vline r"></div>
|
|
425
446
|
<h1>SPECCORE DEV</h1>
|
|
@@ -437,6 +458,7 @@ async function renderDevHtml(options) {
|
|
|
437
458
|
<button onclick="handleAction('skip-to','${currentIdx + 1 < phases.length ? phases[currentIdx + 1].key : current.key}')">⏭ 跳过当前</button>
|
|
438
459
|
<button class="danger" onclick="handleAction('restart','init')">🔄 重新开始</button>
|
|
439
460
|
</div>
|
|
461
|
+
${current.detail ? '<div class="detail-panel"><div class="detail-toggle" onclick="this.classList.toggle(\'open\');this.nextElementSibling.classList.toggle(\'show\')">📖 阶段详情</div><div class="detail-content">' + '<div class="detail-block"><div class="detail-block-title">📋 详细说明</div><div>' + current.detail + '</div></div>' + (current.prerequisites ? '<div class="detail-block"><div class="detail-block-title">📌 前置条件</div><ul>' + current.prerequisites.map(p => '<li>' + p + '</li>').join('') + '</ul></div>' : '') + (current.outputs ? '<div class="detail-block"><div class="detail-block-title">📤 产出物</div><ul>' + current.outputs.map(o => '<li>' + o + '</li>').join('') + '</ul></div>' : '') + (current.tips ? '<div class="detail-tip">💡 ' + current.tips + '</div>' : '') + (current.examples ? '<div class="detail-examples"><div class="detail-block-title">⌨️ 常用命令</div>' + current.examples.map(e => '<code>' + e + '</code>').join('') + '</div>' : '') + '</div></div>' : ''}
|
|
440
462
|
</div>
|
|
441
463
|
|
|
442
464
|
<div class="quick-phase">
|
package/dist/commands/dev.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/init.js
CHANGED
|
@@ -1931,286 +1931,26 @@ function detectGitUrl(root) {
|
|
|
1931
1931
|
}
|
|
1932
1932
|
/**
|
|
1933
1933
|
* 生成项目配置引导页 — 首次 init 后展示
|
|
1934
|
+
* v7.1.1+: 改为读取静态模板,只替换少量变量
|
|
1934
1935
|
* 指导用户填写 CONSTITUTION.md、配置团队、导入需求、开始流水线
|
|
1935
1936
|
*/
|
|
1936
|
-
async function writeSetupGuide(projectRoot,
|
|
1937
|
+
async function writeSetupGuide(projectRoot, _speccoreDir) {
|
|
1937
1938
|
const name = (0, path_1.basename)(projectRoot);
|
|
1938
|
-
const gitUrl = detectGitUrl(projectRoot) || '待配置';
|
|
1939
1939
|
const pkgVersion = await (0, fs_extra_1.readFile)((0, path_1.join)(projectRoot, 'package.json'), 'utf-8').then(s => JSON.parse(s).version).catch(() => '0.0.0');
|
|
1940
|
-
|
|
1941
|
-
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
|
|
1945
|
-
|
|
1946
|
-
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1952
|
-
.
|
|
1953
|
-
.
|
|
1954
|
-
.container::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);animation:scanX 3s linear infinite}
|
|
1955
|
-
.container::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);animation:scanX-rev 3s linear infinite}
|
|
1956
|
-
.container .vline{position:absolute;top:0;width:1px;bottom:0;pointer-events:none;z-index:2}
|
|
1957
|
-
.container .vline.l{left:0;background:linear-gradient(180deg,transparent,var(--cyan),transparent);animation:scanY-rev 3s linear infinite}
|
|
1958
|
-
.container .vline.r{right:0;background:linear-gradient(180deg,transparent,var(--cyan),transparent);animation:scanY 3s linear infinite}
|
|
1959
|
-
.card-bg{position:absolute;inset:0;pointer-events:none;z-index:5;background:radial-gradient(ellipse at 50% 10%,rgba(14,165,233,.2) 0%,transparent 70%);animation:cardGlow 3s ease-in-out infinite;transform-origin:top center}
|
|
1960
|
-
@keyframes cardGlow{0%,100%{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.6)}}
|
|
1961
|
-
@keyframes scanX{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}
|
|
1962
|
-
@keyframes scanX-rev{0%{transform:translateX(100%)}100%{transform:translateX(-100%)}}
|
|
1963
|
-
@keyframes scanY{0%{transform:translateY(-100%)}100%{transform:translateY(100%)}}
|
|
1964
|
-
@keyframes scanY-rev{0%{transform:translateY(100%)}100%{transform:translateY(-100%)}}
|
|
1965
|
-
.step{margin:16px 0;padding:18px;background:rgba(13,31,56,.75);border:1px solid var(--border);border-radius:12px;position:relative;overflow:hidden;box-shadow:0 0 20px rgba(14,165,233,.08),inset 0 1px 24px rgba(14,165,233,.04);transition:box-shadow .3s ease,border-color .3s ease}
|
|
1966
|
-
.step:hover{box-shadow:0 0 30px rgba(14,165,233,.15),inset 0 1px 30px rgba(14,165,233,.08);border-color:rgba(14,165,233,.3)}
|
|
1967
|
-
.step-num{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--cyan),var(--purple));color:#fff;font-weight:900;font-size:13px;margin-right:10px;flex-shrink:0}
|
|
1968
|
-
.step-header{display:flex;align-items:center;margin-bottom:12px}
|
|
1969
|
-
.step-title{font-size:15px;font-weight:700;color:var(--cyan)}
|
|
1970
|
-
.step-required{display:inline-block;padding:2px 8px;font-size:9px;border-radius:4px;background:rgba(239,68,68,.15);color:var(--red);margin-left:8px;font-weight:600}
|
|
1971
|
-
.step-optional{display:inline-block;padding:2px 8px;font-size:9px;border-radius:4px;background:rgba(14,165,233,.1);color:var(--cyan);margin-left:8px}
|
|
1972
|
-
.step-desc{font-size:11px;color:var(--muted);margin:8px 0;line-height:1.6}
|
|
1973
|
-
.file-box{background:rgba(14,165,233,.06);border:1px solid rgba(14,165,233,.12);border-radius:8px;padding:12px;margin:10px 0;font-size:11px}
|
|
1974
|
-
.file-path{color:var(--cyan);font-weight:600;font-size:12px}
|
|
1975
|
-
.field-list{margin:8px 0;padding-left:8px}
|
|
1976
|
-
.field-item{display:flex;align-items:flex-start;gap:8px;margin:6px 0;font-size:11px;line-height:1.5}
|
|
1977
|
-
.field-check{color:var(--green);flex-shrink:0;font-size:13px}
|
|
1978
|
-
.field-warn{color:var(--orange);flex-shrink:0;font-size:13px}
|
|
1979
|
-
.field-name{color:var(--text);font-weight:600;min-width:100px}
|
|
1980
|
-
.field-desc{color:var(--muted)}
|
|
1981
|
-
.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}
|
|
1982
|
-
.method-card{padding:12px;border-radius:8px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.02)}
|
|
1983
|
-
.method-title{font-size:11px;font-weight:700;margin-bottom:6px}
|
|
1984
|
-
.method-card.m1 .method-title{color:var(--green)}
|
|
1985
|
-
.method-card.m2 .method-title{color:var(--orange)}
|
|
1986
|
-
.method-card.m3 .method-title{color:var(--cyan)}
|
|
1987
|
-
.method-card.m4 .method-title{color:var(--purple)}
|
|
1988
|
-
.method-cmd{font-size:10px;color:var(--muted);background:rgba(0,0,0,.2);padding:4px 8px;border-radius:4px;margin-top:6px;word-break:break-all}
|
|
1989
|
-
.flow-bar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:center;padding:16px;margin:16px 0;background:var(--card);border:1px solid var(--border);border-radius:12px}
|
|
1990
|
-
.flow-node{padding:8px 14px;border-radius:8px;font-size:11px;font-weight:600;border:1px solid}
|
|
1991
|
-
.flow-node.n1{border-color:var(--green);color:var(--green);background:rgba(20,184,166,.08)}
|
|
1992
|
-
.flow-node.n2{border-color:var(--cyan);color:var(--cyan);background:rgba(14,165,233,.08)}
|
|
1993
|
-
.flow-node.n3{border-color:var(--orange);color:var(--orange);background:rgba(249,115,22,.08)}
|
|
1994
|
-
.flow-node.n4{border-color:var(--purple);color:var(--purple);background:rgba(99,102,241,.08)}
|
|
1995
|
-
.flow-arrow{color:var(--muted);font-size:14px}
|
|
1996
|
-
.kb-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin:10px 0}
|
|
1997
|
-
.kb-card{padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.02);text-align:center}
|
|
1998
|
-
.kb-icon{font-size:20px;margin-bottom:4px}
|
|
1999
|
-
.kb-name{font-size:11px;font-weight:600;color:var(--text)}
|
|
2000
|
-
.kb-desc{font-size:9px;color:var(--muted);margin-top:4px}
|
|
2001
|
-
.start-bar{display:block;text-align:center;padding:16px;margin:20px 0 8px;background:linear-gradient(135deg,var(--cyan) 0%,#0284c7 100%);border-radius:40px;color:#fff;font-weight:600;font-size:14px;box-shadow:0 0 30px rgba(14,165,233,.3);cursor:pointer;letter-spacing:1px;text-decoration:none;transition:all .3s;position:relative;z-index:1}
|
|
2002
|
-
.start-bar:hover{box-shadow:0 0 45px rgba(14,165,233,.5);transform:translateY(-1px)}
|
|
2003
|
-
.action-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin:20px 0}
|
|
2004
|
-
.action-card{padding:16px;border-radius:12px;border:1px solid var(--border);background:rgba(13,31,56,.7);text-align:center;cursor:pointer;text-decoration:none;transition:all .3s;position:relative;z-index:1}
|
|
2005
|
-
.action-card.primary{background:linear-gradient(135deg,var(--cyan) 0%,#0284c7 100%);border-color:var(--cyan);color:#fff}
|
|
2006
|
-
.action-card.secondary{border-color:rgba(14,165,233,.2);color:var(--text)}
|
|
2007
|
-
.action-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(14,165,233,.2)}
|
|
2008
|
-
.action-icon{font-size:28px;margin-bottom:8px}
|
|
2009
|
-
.action-title{font-size:13px;font-weight:700;margin-bottom:4px}
|
|
2010
|
-
.action-desc{font-size:10px;color:var(--muted);line-height:1.4}
|
|
2011
|
-
.action-card.primary .action-desc{color:rgba(255,255,255,.8)}
|
|
2012
|
-
.faq-section{margin:16px 0;padding:16px;background:rgba(13,31,56,.6);border:1px solid var(--border);border-radius:12px}
|
|
2013
|
-
.faq-title{font-size:13px;font-weight:700;color:var(--cyan);margin-bottom:12px}
|
|
2014
|
-
.faq-item{margin:10px 0;padding:10px 12px;border-radius:8px;background:rgba(14,165,233,.04);border:1px solid rgba(14,165,233,.1)}
|
|
2015
|
-
.faq-q{font-size:11px;font-weight:600;color:var(--text);margin-bottom:6px}
|
|
2016
|
-
.faq-a{font-size:10px;color:var(--muted);line-height:1.6}
|
|
2017
|
-
.footer{text-align:center;color:var(--muted);font-size:10px;margin-top:20px;padding-top:12px;border-top:1px solid rgba(255,255,255,.04)}
|
|
2018
|
-
</style></head><body>
|
|
2019
|
-
<div class="scanlines"></div><div class="grid-pattern"></div>
|
|
2020
|
-
<div class="container">
|
|
2021
|
-
<div class="vline l"></div><div class="vline r"></div><div class="card-bg"></div>
|
|
2022
|
-
<div class="header-card">
|
|
2023
|
-
<h1>SPECCORE</h1>
|
|
2024
|
-
<div class="sub">项目配置引导 · ${name}</div>
|
|
2025
|
-
</div>
|
|
2026
|
-
|
|
2027
|
-
<div class="step">
|
|
2028
|
-
<div class="step-header"><span class="step-num">1</span><span class="step-title">技术宪法</span><span class="step-required">必填</span></div>
|
|
2029
|
-
<div class="step-desc">AI 的「最高指令」—— 所有需求分析、任务拆分、代码生成全部据此执行。决定了生成代码的技术栈、命名规范、错误码体系。</div>
|
|
2030
|
-
<div class="file-box">
|
|
2031
|
-
<div class="file-path">📄 .speccore/CONSTITUTION.md</div>
|
|
2032
|
-
<div class="step-desc" style="color:var(--green);margin-bottom:8px">✅ init 已自动检测:工程名、Git 仓库地址。其余字段可通过以下方式完善:</div>
|
|
2033
|
-
<div class="method-grid" style="grid-template-columns:1fr 1fr;margin-bottom:10px">
|
|
2034
|
-
<div class="method-card m1"><div class="method-title">🤖 方式 1:AI 扫描工程代码(推荐)</div><div class="step-desc">AI 读取源码自动识别技术栈、框架、命名风格,直接写入。说不同的话,改不同的范围:</div><div class="method-cmd" style="margin-top:4px">/spec-ask "分析代码,完善技术宪法" <span style="color:var(--green)">← 只改宪法</span></div><div class="method-cmd">/spec-ask "分析项目,完善所有配置" <span style="color:var(--cyan)">← 宪法+团队+索引</span></div><div class="method-cmd">/spec-ask "扫描代码,生成代码索引" <span style="color:var(--orange)">← 只建索引</span></div></div>
|
|
2035
|
-
<div class="method-card m2"><div class="method-title">✍️ 方式 2:手动编辑</div><div class="step-desc">打开文件按注释提示填写,只填必填项即可,其余按需补充</div><div class="method-cmd">编辑 .speccore/CONSTITUTION.md</div></div>
|
|
2036
|
-
</div>
|
|
2037
|
-
<div style="margin:10px 0;padding:10px 12px;border-radius:8px;border:1px solid rgba(14,165,233,.15);background:rgba(14,165,233,.04)">
|
|
2038
|
-
<div style="font-size:12px;font-weight:700;color:var(--cyan);margin-bottom:4px">🔍 全局分析(了解现有项目推荐)</div>
|
|
2039
|
-
<div class="step-desc">一句话扫描所有工程源码,自动生成技术栈、接口清单、数据模型等 8 类文档。适合接手新项目时快速摸清全貌:</div>
|
|
2040
|
-
<div class="method-cmd">/spec-ask "全局分析所有工程代码" <span style="color:var(--green)">← 意图式</span></div>
|
|
2041
|
-
<div class="method-cmd">/spec-analyze --scope global <span style="color:var(--orange)">← 显式命令</span></div>
|
|
2042
|
-
<div style="font-size:10px;color:var(--muted);margin-top:4px">--scope global — 全项目范围(非迭代级),在 AI 对话框中输入</div>
|
|
2043
|
-
<div class="step-desc" style="margin-top:4px">📂 输出到 .speccore/GLOBAL/platforms/{端名}/,每端独立一套(TECH_STACK / API_INVENTORY / DATA_MODEL ...)<br>⏱ 与迭代分析不同:全局分析扫源码生成项目文档,迭代分析读需求生成技术规格(步骤 6 做的事)</div>
|
|
2044
|
-
</div>
|
|
2045
|
-
<div class="field-list">
|
|
2046
|
-
<div class="field-item"><span class="field-check">✅</span><span class="field-name">项目信息表</span><span class="field-desc">— 工程名 / 源码路径 / Git 仓库(init 已自动填写)</span></div>
|
|
2047
|
-
<div class="field-item"><span class="field-check">✅</span><span class="field-name">技术栈</span><span class="field-desc">— 后端语言+框架、前端框架、数据库、缓存</span></div>
|
|
2048
|
-
<div class="field-item"><span class="field-check">✅</span><span class="field-name">命名规范</span><span class="field-desc">— API 路径、错误码、数据库、代码命名风格</span></div>
|
|
2049
|
-
<div class="field-item"><span class="field-warn">⬜</span><span class="field-name">异常码体系</span><span class="field-desc">— 按模块定义错误码表(可选,按需补充)</span></div>
|
|
2050
|
-
<div class="field-item"><span class="field-warn">⬜</span><span class="field-name">Git 分支策略</span><span class="field-desc">— 默认分支、任务分支、保护分支规则(可选)</span></div>
|
|
2051
|
-
</div>
|
|
2052
|
-
<div class="step-desc" style="margin-top:8px;color:var(--cyan)">💡 作用:AI 生成代码时严格遵循这里的技术栈。例如写了 Spring Boot + MySQL,AI 就不会生成 NestJS + PostgreSQL 的代码。</div>
|
|
2053
|
-
</div>
|
|
2054
|
-
</div>
|
|
2055
|
-
|
|
2056
|
-
<div class="step">
|
|
2057
|
-
<div class="step-header"><span class="step-num">2</span><span class="step-title">配置团队排期</span><span class="step-optional">可选</span></div>
|
|
2058
|
-
<div class="step-desc">填写团队成员和可用天数。AI 拆分任务时会根据团队规模自动调整粒度,一个端可以有多个负责人,作为拆分时的默认责任人参考(后期可手动修改)。</div>
|
|
2059
|
-
<div class="file-box">
|
|
2060
|
-
<div class="file-path">📄 Iteration-xxx/STAFFING.md(步骤 3 创建迭代后生成)</div>
|
|
2061
|
-
<div class="step-desc">格式示例:<br>
|
|
2062
|
-
| 成员 | 角色 | 负责端 | 每周可用天数 |<br>
|
|
2063
|
-
| 张三 | 后端 | API 服务 | 5 |<br>
|
|
2064
|
-
| 李四 | 前端 | Web, H5 | 4 |<br>
|
|
2065
|
-
| 王五 | 全栈 | Admin | 3 |</div>
|
|
2066
|
-
<div class="step-desc" style="color:var(--green)">💡 联动:≤3人 → 粗粒度拆分 | 4-8人 → 中粒度(默认)| >8人 → 细粒度拆分</div>
|
|
2067
|
-
</div>
|
|
2068
|
-
</div>
|
|
2069
|
-
|
|
2070
|
-
<div class="step">
|
|
2071
|
-
<div class="step-header"><span class="step-num">3</span><span class="step-title">创建迭代</span><span class="step-required">必填</span></div>
|
|
2072
|
-
<div class="step-desc">迭代是一组需求的载体,包含需求文档、任务、代码等所有内容。先创建一个迭代,再把需求放进去。</div>
|
|
2073
|
-
<div class="file-box">
|
|
2074
|
-
<div class="file-path">📁 创建后生成的目录结构</div>
|
|
2075
|
-
<div class="step-desc">
|
|
2076
|
-
Iteration-xxx/<br>
|
|
2077
|
-
├── 010-requirements/ ← 放需求文档的地方<br>
|
|
2078
|
-
├── 020-specs/ ← AI 分析后生成的技术规格<br>
|
|
2079
|
-
└── 030-tasks/ ← AI 拆分后的开发任务
|
|
2080
|
-
</div>
|
|
2081
|
-
<div class="method-cmd" style="margin-top:8px">speccore iteration create -n <迭代短名> --topic <中文描述></div>
|
|
2082
|
-
<div style="margin-top:8px;font-size:10px;color:var(--muted)">-n <迭代短名> — 自定义英文名(如 login / Q1),后续命令用它引用<br>--topic <中文描述> — 迭代用途说明(如 "登录功能")</div>
|
|
2083
|
-
<div class="step-desc" style="color:var(--cyan);margin-top:8px">💡 这是 CLI 命令,在终端中执行。创建后在下方步骤导入需求时用这个短名引用。</div>
|
|
2084
|
-
</div>
|
|
2085
|
-
</div>
|
|
2086
|
-
|
|
2087
|
-
<div class="step">
|
|
2088
|
-
<div class="step-header"><span class="step-num">4</span><span class="step-title">导入需求</span><span class="step-required">必填</span></div>
|
|
2089
|
-
<div class="step-desc">把产品需求放进步骤 3 创建的迭代中。推荐直接用自然语言描述,AI 会帮你整理成标准需求文档:</div>
|
|
2090
|
-
<div class="method-grid" style="grid-template-columns:1fr 1fr">
|
|
2091
|
-
<div class="method-card m1"><div class="method-title">🤖 自然语言(推荐)</div><div class="step-desc">用口语描述需求 → AI 澄清 → 你确认 → 自动生成标准需求文档,支持反复修改</div><div class="method-cmd" style="margin-top:4px">/spec-ask "新增用户登录功能"</div></div>
|
|
2092
|
-
<div class="method-card m2"><div class="method-title">📎 文件导入</div><div class="step-desc">把 Word / PDF / Markdown 文档交给 AI,自动提取需求并转换</div><div class="method-cmd" style="margin-top:4px">/spec-ask "导入 PRD.docx 到 my-iter"</div></div>
|
|
2093
|
-
</div>
|
|
2094
|
-
<div class="step-desc" style="color:var(--muted);margin-top:4px">还有更多方式:📂 把文件丢到 .speccore/inbox/ 目录自动识别 | ✍️ 直接编辑迭代下 010-requirements/ 目录</div>
|
|
2095
|
-
<div class="step-desc" style="color:var(--green)">💡 导入后,下一步 AI 分析会自动读取这些需求文档,生成 ANALYSIS.md、TECH.md 等 7 份技术规格。</div>
|
|
2096
|
-
</div>
|
|
2097
|
-
|
|
2098
|
-
<div class="step">
|
|
2099
|
-
<div class="step-header"><span class="step-num">5</span><span class="step-title">知识库与规则</span><span class="step-optional">按需补充</span></div>
|
|
2100
|
-
<div class="step-desc">以下内容按需补充,AI 在工作时会读取作为参考:</div>
|
|
2101
|
-
<div class="kb-grid">
|
|
2102
|
-
<div class="kb-card"><div class="kb-icon">📐</div><div class="kb-name">PATTERNS/</div><div class="kb-desc">代码模式模板<br>定义组件/服务/中间件的标准写法</div></div>
|
|
2103
|
-
<div class="kb-card"><div class="kb-icon">📏</div><div class="kb-name">RULES/</div><div class="kb-desc">代码审查规则<br>定义 Code Review 的检查项</div></div>
|
|
2104
|
-
<div class="kb-card"><div class="kb-icon">🗺️</div><div class="kb-name">PROJECT/</div><div class="kb-desc">项目全景文档<br>架构/团队/依赖关系</div></div>
|
|
2105
|
-
</div>
|
|
2106
|
-
</div>
|
|
2107
|
-
|
|
2108
|
-
<div class="step">
|
|
2109
|
-
<div class="step-header"><span class="step-num">6</span><span class="step-title">开始开发</span></div>
|
|
2110
|
-
<div class="step-desc">一切就绪,按以下流程推进开发:</div>
|
|
2111
|
-
<div class="flow-bar">
|
|
2112
|
-
<span class="flow-node n2">需求分析</span><span class="flow-arrow">→</span>
|
|
2113
|
-
<span class="flow-node n3">任务拆分</span><span class="flow-arrow">→</span>
|
|
2114
|
-
<span class="flow-node n2">执行开发</span><span class="flow-arrow">→</span>
|
|
2115
|
-
<span class="flow-node n1">验证交付</span>
|
|
2116
|
-
</div>
|
|
2117
|
-
<div style="margin:12px 0;padding:12px;border-radius:8px;border:1px solid rgba(20,184,166,.2);background:rgba(20,184,166,.04)">
|
|
2118
|
-
<div style="font-size:12px;font-weight:700;color:var(--green);margin-bottom:8px">📋 完整示例流程</div>
|
|
2119
|
-
<div class="method-cmd" style="margin-bottom:4px"># 1. 创建迭代(终端执行)</div>
|
|
2120
|
-
<div class="method-cmd" style="margin-bottom:8px">speccore iteration create -n login --topic "登录功能"</div>
|
|
2121
|
-
<div class="method-cmd" style="margin-bottom:4px"># 2. 分析需求(AI 对话框)</div>
|
|
2122
|
-
<div class="method-cmd" style="margin-bottom:8px">/spec-ask "分析 login 的需求"</div>
|
|
2123
|
-
<div class="method-cmd" style="margin-bottom:4px"># 3. 拆分任务(AI 对话框)</div>
|
|
2124
|
-
<div class="method-cmd" style="margin-bottom:8px">/spec-ask "拆分 login 的任务"</div>
|
|
2125
|
-
<div class="method-cmd" style="margin-bottom:4px"># 4. 执行开发(AI 对话框)</div>
|
|
2126
|
-
<div class="method-cmd">/spec-ask "开发 Task-001"</div>
|
|
2127
|
-
</div>
|
|
2128
|
-
<div class="method-grid" style="grid-template-columns:1fr 1fr;margin-top:12px">
|
|
2129
|
-
<div class="method-card m1"><div class="method-title">🤖 方式 A:意图式(推荐)</div><div class="step-desc">用自然语言告诉 AI,每步自动判断:</div><div class="method-cmd" style="margin-top:4px">/spec-ask "分析 my-iter 的需求"</div><div class="method-cmd">/spec-ask "拆分任务"</div><div class="method-cmd">/spec-ask "开发 Task-001"</div><div class="method-cmd">/spec-ask "完成 Task-001"</div></div>
|
|
2130
|
-
<div class="method-card m2"><div class="method-title">⌨️ 方式 B:显式命令(也在 AI 对话框中使用)</div><div class="step-desc">命令模板,将 <参数> 替换为你的实际值:</div><div class="method-cmd" style="margin-top:4px">/spec-analyze -I <迭代名></div><div class="method-cmd">/spec-split -i <迭代名></div><div class="method-cmd">/spec-execute -t <任务名></div><div class="method-cmd">/spec-done -t <任务名></div><div style="margin-top:8px;font-size:10px;color:var(--muted)">-I <迭代名> — analyze 用大写 -I,其余用小写 -i<br>-t <任务名> — Task-001 / Task-002 ...<br>--prompt 已内置在 Skill 中,无需手动添加</div></div>
|
|
2131
|
-
</div>
|
|
2132
|
-
<div class="step-desc" style="color:var(--cyan)">💡 两种方式都在 AI 对话框中使用,可以混用。例如先用意图式分析,再用显式命令执行特定任务。</div>
|
|
2133
|
-
</div>
|
|
2134
|
-
|
|
2135
|
-
<div style="margin:16px 0 8px;font-size:13px;font-weight:700;color:var(--cyan)">⚡ 自动化模式</div>
|
|
2136
|
-
<div style="padding:12px;border-radius:8px;border:1px solid rgba(14,165,233,.15);background:rgba(14,165,233,.04)">
|
|
2137
|
-
<div style="font-size:11px;font-weight:700;color:var(--cyan);margin-bottom:8px">🎯 三种执行模式(按需选择)</div>
|
|
2138
|
-
<div style="display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px">
|
|
2139
|
-
<div style="padding:10px;border-radius:6px;border:1px solid rgba(20,184,166,.2);background:rgba(20,184,166,.04)">
|
|
2140
|
-
<div style="font-size:10px;font-weight:700;color:var(--green);margin-bottom:4px">🔒 全程确认</div>
|
|
2141
|
-
<div class="step-desc" style="font-size:9px">每步展示结果,等你确认后再继续。适合首次使用。</div>
|
|
2142
|
-
<div class="method-cmd" style="font-size:9px">/spec-ask "分析 my-iter 的需求"</div>
|
|
2143
|
-
</div>
|
|
2144
|
-
<div style="padding:10px;border-radius:6px;border:1px solid rgba(249,115,22,.2);background:rgba(249,115,22,.04)">
|
|
2145
|
-
<div style="font-size:10px;font-weight:700;color:var(--orange);margin-bottom:4px">⚡ 半自动</div>
|
|
2146
|
-
<div class="step-desc" style="font-size:9px">分析和拆分自动完成,执行开发前暂停。适合日常开发。</div>
|
|
2147
|
-
<div class="method-cmd" style="font-size:9px">/spec-ask "分析 my-iter 并拆分任务"</div>
|
|
2148
|
-
</div>
|
|
2149
|
-
<div style="padding:10px;border-radius:6px;border:1px solid rgba(99,102,241,.2);background:rgba(99,102,241,.04)">
|
|
2150
|
-
<div style="font-size:10px;font-weight:700;color:var(--purple);margin-bottom:4px">🚀 全自动</div>
|
|
2151
|
-
<div class="step-desc" style="font-size:9px">一键跑完整个流水线,不中途暂停。适合熟悉后批量推进。</div>
|
|
2152
|
-
<div class="method-cmd" style="font-size:9px">/spec-ask "全自动推进 my-iter"</div>
|
|
2153
|
-
</div>
|
|
2154
|
-
</div>
|
|
2155
|
-
<div class="step-desc" style="margin-top:8px;font-size:10px">💡 <code>speccore dev</code> 是流水线控制器:自动检测当前阶段 → 推荐下一步 → 执行。还可用 <code>--from analyze --to execute</code> 指定范围。</div>
|
|
2156
|
-
</div>
|
|
2157
|
-
|
|
2158
|
-
<div style="margin:16px 0 8px;font-size:13px;font-weight:700;color:var(--cyan)">📚 提示词库(快速上手)</div>
|
|
2159
|
-
<div style="padding:12px;border-radius:8px;border:1px solid rgba(99,102,241,.2);background:rgba(99,102,241,.04)">
|
|
2160
|
-
<div class="step-desc">内置常用操作模板,按场景分类(核心流程/迭代管理/分析文档/开发执行),复制即用:</div>
|
|
2161
|
-
<div class="method-cmd" style="margin-bottom:8px">speccore prompts</div>
|
|
2162
|
-
<div style="font-size:10px;color:var(--muted);margin-top:4px">打开提示词库页面,浏览预设模板,点击复制自动带上 /spec-ask 前缀</div>
|
|
2163
|
-
<div style="margin-top:8px;display:flex;gap:8px;flex-wrap:wrap">
|
|
2164
|
-
<span style="padding:4px 8px;border-radius:4px;background:rgba(14,165,233,.1);color:var(--cyan);font-size:9px">🔍 分析需求</span>
|
|
2165
|
-
<span style="padding:4px 8px;border-radius:4px;background:rgba(249,115,22,.1);color:var(--orange);font-size:9px">🧩 拆分任务</span>
|
|
2166
|
-
<span style="padding:4px 8px;border-radius:4px;background:rgba(20,184,166,.1);color:var(--green);font-size:9px">▶️ 执行任务</span>
|
|
2167
|
-
<span style="padding:4px 8px;border-radius:4px;background:rgba(99,102,241,.1);color:var(--purple);font-size:9px">📊 查看进度</span>
|
|
2168
|
-
</div>
|
|
2169
|
-
</div>
|
|
2170
|
-
|
|
2171
|
-
<div style="margin:16px 0 8px;font-size:13px;font-weight:700;color:var(--cyan)">📖 重新查看本指南</div>
|
|
2172
|
-
<div class="step-desc">本指南保存在 <code>outputs/speccore-setup-guide.html</code>,随时可在浏览器中打开查看。<br>也可以让 AI 重新展示:/spec-ask "打开配置引导"</div>
|
|
2173
|
-
|
|
2174
|
-
<div class="faq-section">
|
|
2175
|
-
<div class="faq-title">❓ 常见问题</div>
|
|
2176
|
-
<div class="faq-item">
|
|
2177
|
-
<div class="faq-q">Q: 我怎么知道 CONSTITUTION.md 填对了?</div>
|
|
2178
|
-
<div class="faq-a">A: 不用完美!init 已自动填写工程名和 Git 仓库。技术栈可以用 AI 扫描:<code>/spec-ask "分析代码,完善技术宪法"</code>。必填项只有技术栈(后端/前端/数据库),其他按需补充。</div>
|
|
2179
|
-
</div>
|
|
2180
|
-
<div class="faq-item">
|
|
2181
|
-
<div class="faq-q">Q: 团队排期不填会怎样?</div>
|
|
2182
|
-
<div class="faq-a">A: 不影响使用。AI 会用默认的中粒度拆分(4-8人规模)。后续需要时再编辑 Iteration-xxx/STAFFING.md 即可。</div>
|
|
2183
|
-
</div>
|
|
2184
|
-
<div class="faq-item">
|
|
2185
|
-
<div class="faq-q">Q: 我能改迭代名吗?</div>
|
|
2186
|
-
<div class="faq-a">A: 可以。用 <code>speccore rename --iteration 旧名 新名</code> 或在 AI 对话框说 <code>/spec-ask "把迭代 old-name 重命名为 new-name"</code>。</div>
|
|
2187
|
-
</div>
|
|
2188
|
-
<div class="faq-item">
|
|
2189
|
-
<div class="faq-q">Q: 需求文档放哪?</div>
|
|
2190
|
-
<div class="faq-a">A: 放到迭代目录下的 <code>010-requirements/</code> 文件夹。或者直接用自然语言描述:<code>/spec-ask "新增用户登录功能"</code>,AI 会自动生成标准需求文档。</div>
|
|
2191
|
-
</div>
|
|
2192
|
-
</div>
|
|
2193
|
-
|
|
2194
|
-
<div class="action-grid">
|
|
2195
|
-
<a class="action-card primary" href="#" onclick="alert('请在终端执行:\nspeccore iteration create -n xxx --topic \"xxx\"')">
|
|
2196
|
-
<div class="action-icon">🚀</div>
|
|
2197
|
-
<div class="action-title">创建第一个迭代</div>
|
|
2198
|
-
<div class="action-desc">开始你的第一个开发周期</div>
|
|
2199
|
-
</a>
|
|
2200
|
-
<a class="action-card secondary" href="speccore-prompts.html">
|
|
2201
|
-
<div class="action-icon">📚</div>
|
|
2202
|
-
<div class="action-title">查看提示词库</div>
|
|
2203
|
-
<div class="action-desc">浏览常用操作模板</div>
|
|
2204
|
-
</a>
|
|
2205
|
-
<a class="action-card secondary" href="speccore-setup-guide.html">
|
|
2206
|
-
<div class="action-icon">📖</div>
|
|
2207
|
-
<div class="action-title">重新看配置指南</div>
|
|
2208
|
-
<div class="action-desc">随时回顾初始化步骤</div>
|
|
2209
|
-
</a>
|
|
2210
|
-
</div>
|
|
2211
|
-
|
|
2212
|
-
<div class="footer">SpecCore v${pkgVersion} · 项目配置引导 · ${name}</div>
|
|
2213
|
-
</div></body></html>`;
|
|
1940
|
+
// 读取静态模板
|
|
1941
|
+
const templatePath = (0, path_1.join)(projectRoot, 'templates', 'html', 'speccore-setup-guide.html');
|
|
1942
|
+
let template;
|
|
1943
|
+
if (await (0, fs_extra_1.pathExists)(templatePath)) {
|
|
1944
|
+
template = await (0, fs_extra_1.readFile)(templatePath, 'utf-8');
|
|
1945
|
+
}
|
|
1946
|
+
else {
|
|
1947
|
+
// 降级:如果模板不存在,使用内置简短提示(不应该发生)
|
|
1948
|
+
template = '<!DOCTYPE html><html><body><h1>SpecCore 配置引导</h1><p>模板文件缺失,请检查 templates/html/speccore-setup-guide.html</p></body></html>';
|
|
1949
|
+
}
|
|
1950
|
+
// 替换变量
|
|
1951
|
+
const html = template
|
|
1952
|
+
.replace(/\{\{PROJECT_NAME\}\}/g, name)
|
|
1953
|
+
.replace(/\{\{VERSION\}\}/g, pkgVersion);
|
|
2214
1954
|
const outputPath = (0, path_1.join)(projectRoot, 'outputs', 'speccore-setup-guide.html');
|
|
2215
1955
|
await (0, fs_extra_1.ensureDir)((0, path_1.join)(projectRoot, 'outputs'));
|
|
2216
1956
|
await (0, fs_extra_1.writeFile)(outputPath, html);
|