@localsummer/incspec 0.0.6 → 0.0.8

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 (38) hide show
  1. package/README.md +76 -15
  2. package/commands/analyze.mjs +28 -12
  3. package/commands/apply.mjs +78 -33
  4. package/commands/archive.mjs +25 -3
  5. package/commands/collect-dep.mjs +2 -2
  6. package/commands/collect-req.mjs +10 -2
  7. package/commands/design.mjs +2 -2
  8. package/commands/help.mjs +20 -11
  9. package/commands/list.mjs +2 -1
  10. package/commands/merge.mjs +64 -33
  11. package/commands/reset.mjs +166 -0
  12. package/commands/status.mjs +30 -7
  13. package/commands/sync.mjs +210 -0
  14. package/commands/update.mjs +2 -1
  15. package/index.mjs +13 -6
  16. package/lib/agents.mjs +1 -1
  17. package/lib/claude.mjs +144 -0
  18. package/lib/config.mjs +13 -10
  19. package/lib/cursor.mjs +20 -5
  20. package/lib/terminal.mjs +108 -0
  21. package/lib/workflow.mjs +123 -29
  22. package/package.json +1 -1
  23. package/templates/AGENTS.md +89 -36
  24. package/templates/INCSPEC_BLOCK.md +1 -1
  25. package/templates/WORKFLOW.md +1 -0
  26. package/templates/cursor-commands/analyze-codeflow.md +12 -1
  27. package/templates/cursor-commands/apply-increment-code.md +129 -1
  28. package/templates/cursor-commands/merge-to-baseline.md +87 -1
  29. package/templates/cursor-commands/structured-requirements-collection.md +6 -0
  30. package/templates/inc-spec-skill/SKILL.md +286 -0
  31. package/templates/inc-spec-skill/references/analyze-codeflow.md +368 -0
  32. package/templates/inc-spec-skill/references/analyze-increment-codeflow.md +246 -0
  33. package/templates/inc-spec-skill/references/apply-increment-code.md +520 -0
  34. package/templates/inc-spec-skill/references/inc-archive.md +278 -0
  35. package/templates/inc-spec-skill/references/merge-to-baseline.md +415 -0
  36. package/templates/inc-spec-skill/references/structured-requirements-collection.md +129 -0
  37. package/templates/inc-spec-skill/references/ui-dependency-collection.md +143 -0
  38. package/commands/cursor-sync.mjs +0 -116
@@ -6,6 +6,14 @@ allowed-tools: Read, Write, Edit, Bash, Grep, Glob
6
6
 
7
7
  ## CLI 同步 (自动)
8
8
 
9
+ **检测工作流模式:**
10
+
11
+ ```bash
12
+ incspec status
13
+ ```
14
+
15
+ ### 完整模式 (7步)
16
+
9
17
  开始执行前,先用 Bash 执行:
10
18
 
11
19
  ```bash
@@ -22,17 +30,45 @@ incspec apply <increment-report-path> [--source-dir=<source-code-dir>] --complet
22
30
  - 若未提供 `source-code-dir`,省略 `--source-dir`
23
31
  - 若提示没有活跃工作流,请先完成步骤 1-4
24
32
 
33
+ ### 快速模式 (5步)
34
+
35
+ 快速模式下,输入文件为需求文档(而非增量设计文件):
36
+
37
+ ```bash
38
+ incspec apply --complete
39
+ ```
40
+
41
+ 说明:
42
+ - 输入文件自动使用 `incspec/requirements/structured-requirements.md`
43
+ - 无需提供增量设计文件路径
44
+ - 请先完成步骤 1-2
45
+
25
46
  # 角色定位
26
47
 
27
- 你是前端增量代码执行器。基于《增量需求融合快照》报告,在 source-code-dir 中直接创建新文件和修改现有文件,完成增量需求的代码实施。
48
+ 你是前端增量代码执行器。根据工作流模式,基于不同的输入文件在 source-code-dir 中直接创建新文件和修改现有文件,完成增量需求的代码实施。
49
+
50
+ ## 模式说明
51
+
52
+ - **完整模式**: 基于《增量需求融合快照》报告(步骤 4 产出)执行代码变更
53
+ - **快速模式**: 基于《结构化需求报告》(步骤 2 产出)直接执行代码变更,跳过增量设计步骤
28
54
 
29
55
  # 输入参数
30
56
 
57
+ ## 完整模式
58
+
31
59
  1. **increment-report-path** (必填): `increment-codeflow-v2.md` 报告的完整路径
32
60
  2. **source-code-dir** (可选): 源代码根目录,默认为当前工作目录
33
61
 
62
+ ## 快速模式
63
+
64
+ 1. **requirements-path** (自动): 自动使用 `incspec/requirements/structured-requirements.md`
65
+ 2. **baseline-path** (自动): 自动使用步骤 1 生成的基线报告
66
+ 3. **source-code-dir** (可选): 源代码根目录,默认为当前工作目录
67
+
34
68
  # 执行流程
35
69
 
70
+ > 以下为完整模式的执行流程。快速模式流程请参见 [快速模式执行流程](#快速模式执行流程) 部分。
71
+
36
72
  ## 步骤 1: 读取并解析报告
37
73
 
38
74
  读取 increment-report-path 指定的报告文件,提取以下关键信息:
@@ -390,3 +426,95 @@ old_string: `interface ListState {
390
426
  - Edit 工具修改: 在 JSX 中添加 BatchActions 组件
391
427
 
392
428
  执行完成后输出摘要。
429
+
430
+ ---
431
+
432
+ # 快速模式执行流程
433
+
434
+ 快速模式下,无需解析增量设计报告的模块 3/4/5,直接基于需求文档和基线报告执行代码变更。
435
+
436
+ ## 输入文件
437
+
438
+ 1. **基线报告**: 步骤 1 生成的 `{module}-baseline-v{n}.md`(理解现有代码结构)
439
+ 2. **需求文档**: 步骤 2 生成的 `structured-requirements.md`(明确变更目标)
440
+
441
+ ## 执行步骤
442
+
443
+ ### 步骤 1: 读取输入文件
444
+
445
+ 1. **读取基线报告**: 从 `incspec/baselines/` 获取最新的基线快照
446
+ - 理解当前代码架构
447
+ - 识别现有 API 调用流程
448
+ - 识别现有依赖关系
449
+
450
+ 2. **读取需求文档**: 从 `incspec/requirements/structured-requirements.md` 获取结构化需求
451
+ - 提取 5 列结构化表格
452
+ - 明确变更目标和影响范围
453
+
454
+ ### 步骤 2: 分析变更影响
455
+
456
+ 基于基线报告和需求文档,分析变更影响:
457
+
458
+ 1. **识别影响的组件**: 根据需求表格中的"涉及的 UI 组件"列
459
+ 2. **识别影响的状态**: 根据需求表格中的"影响的核心状态"列
460
+ 3. **理解数据流向**: 根据需求表格中的"预期数据流向"列
461
+ 4. **确定变更范围**: 结合基线报告中的依赖关系
462
+
463
+ ### 步骤 2.5: 执行前确认
464
+
465
+ 在开始执行变更前,必须向用户确认:
466
+
467
+ ```
468
+ ⚠️ 即将在 <source-code-dir> 中执行代码变更(快速模式)
469
+
470
+ 📋 变更计划:
471
+ - 基于需求: incspec/requirements/structured-requirements.md
472
+ - 参考基线: incspec/baselines/{module}-baseline-v{n}.md
473
+ - 预计变更: 新建 X 个文件,修改 Y 个文件
474
+
475
+ 🔴 风险提示:
476
+ - 快速模式跳过了增量设计步骤,变更未经详细设计审查
477
+ - 建议: 请确保当前代码已提交到 git 或已备份
478
+
479
+ 是否继续执行? (yes/no)
480
+ ```
481
+
482
+ 仅在用户明确同意后才开始执行。
483
+
484
+ ### 步骤 3: 直接执行代码变更
485
+
486
+ 按照需求文档的描述,直接在源代码目录执行变更:
487
+
488
+ 1. **搜索参考文件**: 在 source-code-dir 中查找同类型的现有文件
489
+ 2. **读取参考文件**: 学习项目代码风格和模式
490
+ 3. **执行变更**: 使用 Write/Edit 工具创建或修改文件
491
+ 4. **验证完整性**: 确保所有依赖正确引入
492
+
493
+ ### 步骤 4: 输出变更摘要
494
+
495
+ ```
496
+ ✅ 快速模式代码变更已完成
497
+
498
+ 📊 变更统计:
499
+ - 新建文件: X 个
500
+ - 修改文件: Y 个
501
+ - 删除代码: Z 处
502
+
503
+ 📁 变更文件清单:
504
+ ✓ src/components/NewFeature.tsx (新建)
505
+ ✓ src/store/featureStore.ts (修改)
506
+
507
+ 🧪 建议的后续操作:
508
+ 1. 运行 TypeScript 编译检查: npx tsc --noEmit
509
+ 2. 运行测试: npm test
510
+ 3. 手动验证功能是否正确实现
511
+ ```
512
+
513
+ ## 快速模式 vs 完整模式
514
+
515
+ | 对比项 | 完整模式 | 快速模式 |
516
+ |-------|---------|---------|
517
+ | 输入文件 | 增量设计报告 (模块 2-5) | 需求文档 + 基线报告 |
518
+ | 变更规划 | 详细的变更链条设计 | 基于需求直接分析 |
519
+ | 适用场景 | 复杂功能、多组件交互 | Bug 修复、简单功能 |
520
+ | 风险程度 | 低(经过详细设计) | 中(跳过设计阶段) |
@@ -6,6 +6,14 @@ allowed-tools: Read, Write, Bash
6
6
 
7
7
  ## CLI 同步 (自动)
8
8
 
9
+ **检测工作流模式:**
10
+
11
+ ```bash
12
+ incspec status
13
+ ```
14
+
15
+ ### 完整模式 (7步)
16
+
9
17
  开始执行前,先用 Bash 执行:
10
18
 
11
19
  ```bash
@@ -22,9 +30,27 @@ incspec merge <increment-report-path> --complete --output=<output-file>
22
30
  - `<output-file>` 必须与最终写入的文件名一致
23
31
  - 若提示没有活跃工作流,请先完成步骤 1-5
24
32
 
33
+ ### 快速模式 (5步)
34
+
35
+ 快速模式下,不依赖增量设计报告,直接重新分析当前代码生成新基线:
36
+
37
+ ```bash
38
+ incspec merge --complete --output=<output-file>
39
+ ```
40
+
41
+ 说明:
42
+ - 快速模式下无需提供增量设计报告路径
43
+ - 实际执行的是对当前代码的重新分析
44
+ - 请先完成步骤 1-2 和步骤 5 (应用代码变更)
45
+
25
46
  # 角色定位
26
47
 
27
- 你是增量基线融合专家。你的职责是将增量需求融合快照报告(包含新增、修改、删除标记)转换为干净的基线快照报告,作为下一轮增量迭代的起点。
48
+ 你是增量基线融合专家。根据工作流模式执行不同的融合策略。
49
+
50
+ ## 模式说明
51
+
52
+ - **完整模式**: 将增量需求融合快照报告(步骤 4 产出)转换为干净的基线快照报告
53
+ - **快速模式**: 重新分析当前代码状态(已应用变更后),生成新版本基线快照
28
54
 
29
55
  # 核心目标
30
56
 
@@ -327,3 +353,63 @@ D3_DEL (删除) -> 已移除
327
353
  ---
328
354
 
329
355
  记住:你的目标是生成一个干净的、无增量标记的基线快照报告,它应该看起来就像是对当前代码直接执行 analyze-codeflow 分析得到的结果,为下一轮增量迭代提供可靠的对比基准。
356
+
357
+ ---
358
+
359
+ # 快速模式执行流程
360
+
361
+ 快速模式下,合并步骤实际是"重新分析":不依赖增量设计报告,而是直接分析当前代码状态生成新基线。
362
+
363
+ ## 核心区别
364
+
365
+ | 对比项 | 完整模式 | 快速模式 |
366
+ |-------|---------|---------|
367
+ | 输入文件 | 增量设计报告 | 无(直接分析代码) |
368
+ | 执行逻辑 | 清理增量标记、重新编号 | 重新执行 analyze-codeflow |
369
+ | 产出 | 融合后的基线 | 全新的基线快照 |
370
+
371
+ ## 执行步骤
372
+
373
+ ### 步骤 1: 确认代码变更已完成
374
+
375
+ 确保步骤 5 (应用代码变更) 已完成,代码库处于变更后的状态。
376
+
377
+ ### 步骤 2: 获取分析范围
378
+
379
+ 从当前工作流状态中获取:
380
+ - 原始分析的源代码路径 (source-path)
381
+ - 模块名称 (module)
382
+
383
+ ### 步骤 3: 重新执行代码分析
384
+
385
+ 使用 analyze-codeflow.md 的分析方法,对当前代码状态进行完整分析:
386
+
387
+ 1. **扫描代码目录**: 识别所有组件、Store、API 调用
388
+ 2. **构建时序图**: 生成新的 API 调用时序图(S1, S2, S3...)
389
+ 3. **构建依赖图**: 生成新的依赖关系图(D1, D2, D3...)
390
+ 4. **总结依赖关系**: 生成新的依赖关系总结(R1, R2, R3...)
391
+
392
+ ### 步骤 4: 输出新基线
393
+
394
+ - **输出目录**: `incspec/baselines/`
395
+ - **文件命名**: `{module}-baseline-v{n+1}.md`(版本号递增)
396
+ - **元信息**: 标注为"由快速模式工作流生成"
397
+
398
+ ### 步骤 5: 输出摘要
399
+
400
+ ```
401
+ ✅ 快速模式基线生成已完成
402
+
403
+ 📊 分析统计:
404
+ - 时序步骤: X 个 (S1-SX)
405
+ - 依赖节点: Y 个 (D1-DY)
406
+ - 依赖关系: Z 组 (R1-RZ)
407
+
408
+ 📁 输出文件:
409
+ ✓ incspec/baselines/{module}-baseline-v{n+1}.md
410
+
411
+ 🔄 下一步操作:
412
+ 1. 检查新基线报告的完整性
413
+ 2. 运行 `incspec archive --yes` 归档当前工作流
414
+ 3. 此基线将作为下一轮增量分析的起点
415
+ ```
@@ -99,6 +99,12 @@ incspec collect-req --complete
99
99
  4. **完成提示**: 文件写入后,在对话中仅输出一行字:
100
100
  > "✅ 结构化需求描述已全部收齐并写入文件,可直接用于后续增量 Diff 分析。"
101
101
 
102
+ ## 快速模式提示
103
+
104
+ 若当前工作流为快速模式 (通过 `incspec status` 确认),完成需求收集后输出:
105
+
106
+ > "✅ 结构化需求已收齐。快速模式下,直接运行 `incspec apply` 进入代码应用阶段。"
107
+
102
108
  # 示例交互
103
109
 
104
110
  **用户**: "我想在简历列表的操作列加一个下载按钮。"
@@ -0,0 +1,286 @@
1
+ ---
2
+ name: inc-spec-skill
3
+ description: 设计优先的前端功能增量编码工作流。适用于实现新UI组件、修改现有功能,或当用户提及"增量编码"、"代码流程分析"、"需求收集",以及需要带有API/Store依赖追踪的结构化功能开发时使用。
4
+ ---
5
+
6
+ # AI增量编码
7
+
8
+ ## 目录
9
+
10
+ - [快速开始](#快速开始)
11
+ - [工作流概览](#工作流概览)
12
+ - [CLI集成](#cli集成)
13
+ - [步骤详情](#步骤详情)
14
+ - [最佳实践](#最佳实践)
15
+ - [参考资源](#参考资源)
16
+
17
+ ## 快速开始
18
+
19
+ **完整模式 (7步):**
20
+ ```
21
+ 1. 分析现有代码 → incspec analyze <path>
22
+ 2. 收集需求 → incspec collect-req
23
+ 3. 收集依赖 → incspec collect-dep
24
+ 4. 设计增量 → incspec design
25
+ 5. 应用代码变更 → incspec apply <report>
26
+ 6. 合并到基线 → incspec merge <report>
27
+ 7. 归档工作流 → incspec archive --yes
28
+ ```
29
+
30
+ **快速模式 (5步):**
31
+ ```
32
+ 1. 分析现有代码 → incspec analyze <path> --quick
33
+ 2. 收集需求 → incspec collect-req
34
+ 3. 应用代码变更 → incspec apply (基于需求文档)
35
+ 4. 合并到基线 → incspec merge (重新分析生成)
36
+ 5. 归档工作流 → incspec archive --yes
37
+ ```
38
+
39
+ 首次使用前初始化: `incspec init`
40
+
41
+ ## 执行规则
42
+
43
+ 当用户请求满足以下条件时,**直接开始执行**,无需搜索确认:
44
+ - 明确指定了模式(完整/快速)
45
+ - 提供了目标路径或基线文件
46
+ - 意图清晰无歧义
47
+
48
+ **默认行为**:
49
+ - 未指定模式时,默认使用完整模式
50
+ - 提供 `--baseline=<file>` 时,跳过步骤1的代码分析,直接使用已有基线
51
+ - 提供 `--quick` 时,启用快速模式流程
52
+ - 选项可自由组合,Agent 应根据用户意图推断最优组合
53
+
54
+ ## 工作流概览
55
+
56
+ ### 完整模式 (7步)
57
+
58
+ 适用于复杂功能开发,需要完整的 UI 依赖分析和增量设计。
59
+
60
+ | 步骤 | 目的 | 产出 |
61
+ |------|------|------|
62
+ | 1. 代码流程分析 | 记录当前API/Store/组件交互 | 基线快照 |
63
+ | 2. 需求收集 | 将模糊需求转换为结构化5列表格 | 需求报告 |
64
+ | 3. 依赖收集 | 识别所有API/Store/类型依赖 | 依赖报告 |
65
+ | 4. 增量设计 | 生成实现蓝图 | 增量快照 |
66
+ | 5. 代码应用 | 按蓝图创建/修改文件 | 更新后的代码库 |
67
+ | 6. 基线合并 | 将增量转换为干净基线 | 新基线 |
68
+ | 7. 归档 | 归档工作流产出到 `archives/YYYY-MM/` | 干净的工作区 |
69
+
70
+ ### 快速模式 (5步)
71
+
72
+ 适用于简单功能或不涉及复杂 UI 依赖的变更。
73
+
74
+ | 步骤 | 目的 | 产出 |
75
+ |------|------|------|
76
+ | 1. 代码流程分析 | 记录当前API/Store/组件交互 | 基线快照 |
77
+ | 2. 需求收集 | 将模糊需求转换为结构化5列表格 | 需求报告 |
78
+ | 5. 代码应用 | 基于需求直接创建/修改文件 | 更新后的代码库 |
79
+ | 6. 基线合并 | 重新分析生成新基线 | 新基线 |
80
+ | 7. 归档 | 归档工作流产出 | 干净的工作区 |
81
+
82
+ **模式选择建议:**
83
+ - **完整模式**: 复杂 UI 功能、多组件交互、需要详细设计审查
84
+ - **快速模式**: Bug 修复、简单功能、不涉及 UI 依赖变更
85
+
86
+ ## CLI集成
87
+
88
+ 每个步骤与 `incspec` CLI同步以跟踪工作流状态:
89
+
90
+ | 步骤 | 开始 | 完成 |
91
+ |------|------|------|
92
+ | 分析 | `incspec analyze <path> --module=<m>` 或 `--baseline=<file>` | `--complete --output=<file>` |
93
+ | 需求 | `incspec collect-req` | `--complete` |
94
+ | 依赖 | `incspec collect-dep` | `--complete` |
95
+ | 设计 | `incspec design --feature=<f>` | `--complete --output=<file>` |
96
+ | 应用 | `incspec apply <report>` | `--complete` |
97
+ | 合并 | `incspec merge <report>` | `--complete --output=<file>` |
98
+ | 归档 | `incspec archive --yes` | - |
99
+
100
+ 管理命令:
101
+ - `incspec status` - 查看工作流状态
102
+ - `incspec list` - 列出规范文件
103
+ - `incspec validate` - 验证项目健康状态
104
+
105
+ ## 步骤详情
106
+
107
+ ### 步骤1: 代码流程分析
108
+
109
+ 分析现有代码,创建API调用、依赖关系和组件交互的文档化基线。
110
+
111
+ **命令:** `incspec analyze <path> [--module=<m>] [--quick] [--baseline=<file>]`
112
+
113
+ **选项:**
114
+ - `--quick`: 启用快速模式 (5步流程)
115
+ - `--baseline=<file>`: 复用已有基线,跳过代码分析
116
+
117
+ **输入:** 源代码目录路径 (如 `src/pages/dashboard`) 或现有基线文件 (`--baseline=<file>`)
118
+
119
+ **输出:** 基线报告,包含:
120
+ - 编号的API调用序列图 (如 `[1]`、`[2]`)
121
+ - 组件/Store依赖关系图
122
+ - 数据流摘要
123
+
124
+ 详见 [references/analyze-codeflow.md](references/analyze-codeflow.md)。
125
+
126
+ ### 步骤2: 需求收集
127
+
128
+ 将模糊的用户需求转换为严格的5列结构化表格,消除所有歧义术语。
129
+
130
+ **输入:** 用户的非正式需求描述
131
+
132
+ **输出:** 结构化表格,包含以下列:
133
+ 1. 需求ID
134
+ 2. 详细描述 (不含"某些"、"相关"等模糊术语)
135
+ 3. 验收标准
136
+ 4. 依赖项
137
+ 5. 实现备注
138
+
139
+ 详见 [references/structured-requirements-collection.md](references/structured-requirements-collection.md)。
140
+
141
+ ### 步骤3: 依赖收集
142
+
143
+ 在代码生成前识别所有上下文依赖。
144
+
145
+ **输入:** 步骤2的结构化需求
146
+
147
+ **输出:** 完整的依赖清单:
148
+ - **API:** 端点、方法、请求/响应类型
149
+ - **Store:** 模块、状态属性、actions
150
+ - **类型:** 现有和新增的TypeScript接口
151
+ - **组件:** 共享组件、工具函数
152
+
153
+ 详见 [references/ui-dependency-collection.md](references/ui-dependency-collection.md)。
154
+
155
+ ### 步骤4: 增量设计
156
+
157
+ 基于当前状态、需求和依赖生成实现蓝图。**设计获批前不编写任何代码。**
158
+
159
+ **输入:** 基线(步骤1) + 需求(步骤2) + 依赖(步骤3)
160
+
161
+ **输出:** 增量快照,包含:
162
+ - 集成新调用的API序列图
163
+ - 文件修改计划 (新增/修改/删除)
164
+ - 分步实现指导
165
+
166
+ 详见 [references/analyze-increment-codeflow.md](references/analyze-increment-codeflow.md)。
167
+
168
+ ### 步骤5: 代码应用
169
+
170
+ 通过创建新文件和修改现有文件执行增量蓝图。
171
+
172
+ **输入:** 步骤4的增量快照 + 源代码目录
173
+
174
+ **输出:** 修改后的代码库:
175
+ - 按蓝图创建的新文件
176
+ - 更新的现有文件
177
+ - 正确的导入和类型定义
178
+
179
+ 详见 [references/apply-increment-code.md](references/apply-increment-code.md)。
180
+
181
+ ### 步骤6: 基线合并
182
+
183
+ 将增量快照(带有新增/修改/删除标记)转换为干净基线,为下次迭代做准备。
184
+
185
+ **输入:** 步骤4的增量快照
186
+
187
+ **输出:** 代表当前系统状态的干净基线(无增量标记)
188
+
189
+ 详见 [references/merge-to-baseline.md](references/merge-to-baseline.md)。
190
+
191
+ ### 步骤7: 归档
192
+
193
+ 将已完成的工作流产出归档到 `archives/YYYY-MM/{module}/` 目录。
194
+
195
+ **输入:** 要归档的文件(可选,默认为当前工作流)
196
+
197
+ **操作:**
198
+ ```bash
199
+ incspec archive --yes # 归档所有工作流产出
200
+ incspec archive <file> --yes # 归档指定文件
201
+ incspec archive <file> --keep # 复制而非移动
202
+ ```
203
+
204
+ 详见 [references/inc-archive.md](references/inc-archive.md)。
205
+
206
+ ## 最佳实践
207
+
208
+ **顺序执行:** 按步骤顺序执行。完整模式按 1-7 执行,快速模式按 1-2-5-6-7 执行。跳过步骤会导致集成问题。
209
+
210
+ **设计先于编码:** 完整模式下,步骤4设计获批前不编写任何代码。快速模式跳过设计步骤,适用于简单变更。
211
+
212
+ **不可跳过依赖:** 完整模式下,遗漏依赖(步骤3)是集成失败的首要原因。
213
+
214
+ **CLI同步:** 始终与 `incspec` CLI同步以保证工作流可追溯。
215
+
216
+ **模式选择:**
217
+ - 不确定时优先选择完整模式
218
+ - 仅在变更范围明确、不涉及复杂依赖时使用快速模式
219
+
220
+ **验证节点:**
221
+ - 步骤2后: 需求中无模糊术语
222
+ - 步骤4后 (完整模式): 编码前审查蓝图
223
+ - 步骤5后: 验证所有文件已正确创建/修改
224
+ - 步骤7后: 确认工作区已清理
225
+
226
+ **关键人工确认点:**
227
+ - 完整模式: 步骤2后 + 步骤4后
228
+ - 快速模式: 步骤2后 (需求确认后才能开始编码)
229
+
230
+ ## 常见陷阱
231
+
232
+ | 陷阱 | 后果 |
233
+ |------|------|
234
+ | 跳过代码流程分析 | 集成问题,返工 |
235
+ | 接受模糊需求 | 编码时发现歧义 |
236
+ | 遗漏依赖 | 导入错误,运行时失败 |
237
+ | 编码先于设计 | 在不符合架构的实现上浪费精力 |
238
+ | 跳过基线合并 | 对当前系统状态产生混淆 |
239
+ | 忽略归档 | 工作区杂乱,历史丢失 |
240
+
241
+ ## 参考资源
242
+
243
+ | 文件 | 用途 |
244
+ |------|------|
245
+ | [analyze-codeflow.md](references/analyze-codeflow.md) | 代码流程分析和API序列图 |
246
+ | [structured-requirements-collection.md](references/structured-requirements-collection.md) | 5列需求结构化 |
247
+ | [ui-dependency-collection.md](references/ui-dependency-collection.md) | API/Store/类型依赖收集 |
248
+ | [analyze-increment-codeflow.md](references/analyze-increment-codeflow.md) | 设计优先的增量蓝图 |
249
+ | [apply-increment-code.md](references/apply-increment-code.md) | 基于蓝图的代码应用 |
250
+ | [merge-to-baseline.md](references/merge-to-baseline.md) | 增量到基线转换 |
251
+ | [inc-archive.md](references/inc-archive.md) | 工作流产出归档 |
252
+
253
+ ## 使用示例
254
+
255
+ **任务:** 为产品仪表板添加筛选功能
256
+
257
+ ```
258
+ 步骤1: 分析产品仪表板代码流程
259
+ → 记录当前数据获取、store结构、API端点
260
+
261
+ 步骤2: 结构化筛选需求
262
+ → 将"添加一些筛选器"转换为具体筛选类型(类别、价格、评分)
263
+ → 定义确切行为和组合逻辑(AND/OR)
264
+
265
+ 步骤3: 收集依赖
266
+ → 识别筛选API端点、store扩展、共享筛选组件
267
+
268
+ 步骤4: 生成增量蓝图
269
+ → 规划FilterPanel集成、状态管理变更、文件修改
270
+
271
+ 步骤5: 应用增量
272
+ → 创建FilterPanel组件,修改ProductDashboard,更新store
273
+
274
+ 步骤6: 合并到基线
275
+ → 生成新仪表板状态的干净快照
276
+
277
+ 步骤7: 归档
278
+ → 归档工作流产出,为下次增量做准备(如添加排序功能)
279
+ ```
280
+
281
+ ## 开发工作流集成
282
+
283
+ - **版本控制:** 步骤7(完整周期)后提交
284
+ - **代码审查:** 在步骤4审查增量蓝图
285
+ - **测试:** 在步骤5添加测试
286
+ - **文档:** 在步骤6更新文档