@zeyue0329/xiaoma-cli 6.0.0-alpha.16 → 6.0.0-alpha.17
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/package.json
CHANGED
|
@@ -6,6 +6,24 @@
|
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
+
## 智能体命令快速参考
|
|
10
|
+
|
|
11
|
+
> **重要**: 本工作流通过唤醒专业智能体并执行其特定命令来完成各阶段任务。
|
|
12
|
+
|
|
13
|
+
### 智能体命令汇总表
|
|
14
|
+
|
|
15
|
+
| 智能体 | 唤醒命令 | 核心工作流命令 | 用途 |
|
|
16
|
+
|--------|---------|---------------|------|
|
|
17
|
+
| Mary (Analyst) | `/analyst` | `*product-brief`, `*research` | 需求分析、业务规则匹配 |
|
|
18
|
+
| John (PM) | `/pm` | `*create-prd`, `*create-epics-and-stories` | PRD 创建、史诗故事定义 |
|
|
19
|
+
| Winston (Architect) | `/architect` | `*create-architecture`, `*validate-architecture` | 架构设计、技术决策 |
|
|
20
|
+
| Bob (SM) | `/sm` | `*sprint-planning`, `*create-story` | Sprint 规划、故事准备 |
|
|
21
|
+
| Amelia (DEV) | `/dev` | `*develop-story`, `*code-review` | TDD 开发、代码审查 |
|
|
22
|
+
| Murat (TEA) | `/tea` | `*trace`, `*test-review`, `*nfr-assess` | 测试追溯、质量验证 |
|
|
23
|
+
| Phoenix (Orchestrator) | `/phoenix` | `*auto-iterate`, `*phase-*` | 全自动编排 |
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
9
27
|
## 知识库集成
|
|
10
28
|
|
|
11
29
|
### 知识库配置
|
|
@@ -237,20 +255,83 @@ confidence: "high"
|
|
|
237
255
|
|
|
238
256
|
**角色激活**: Analyst (需求分析师)
|
|
239
257
|
|
|
258
|
+
---
|
|
259
|
+
|
|
260
|
+
#### 🤖 智能体执行指令
|
|
261
|
+
|
|
262
|
+
```
|
|
263
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
264
|
+
│ Phase 1: 需求分析 │
|
|
265
|
+
│ 智能体: Mary (Analyst) │
|
|
266
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
267
|
+
│ │
|
|
268
|
+
│ Step 1.1: 唤醒 Analyst 智能体 │
|
|
269
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
270
|
+
│ │ 执行命令: /analyst ││
|
|
271
|
+
│ │ 说明: 唤醒业务分析师 Mary,准备进行需求分析工作 ││
|
|
272
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
273
|
+
│ │
|
|
274
|
+
│ Step 1.2: 执行产品简报/调研工作流 │
|
|
275
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
276
|
+
│ │ 执行命令: *product-brief ││
|
|
277
|
+
│ │ 说明: 基于迭代需求文档,创建结构化的产品简报 ││
|
|
278
|
+
│ │ 输入: 迭代需求文档内容 ││
|
|
279
|
+
│ │ 输出: product-brief.md ││
|
|
280
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
281
|
+
│ │
|
|
282
|
+
│ Step 1.3: (可选) 执行深度调研 │
|
|
283
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
284
|
+
│ │ 执行命令: *research ││
|
|
285
|
+
│ │ 说明: 针对复杂需求进行市场/竞品/技术调研 ││
|
|
286
|
+
│ │ 触发条件: 需求涉及新业务领域或技术栈 ││
|
|
287
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
288
|
+
│ │
|
|
289
|
+
│ Step 1.4: 生成需求分析报告 │
|
|
290
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
291
|
+
│ │ 基于 *product-brief 输出,整理为 requirement-analysis.md ││
|
|
292
|
+
│ │ 确保包含: 功能点清单、业务规则、隐含需求、约束和风险 ││
|
|
293
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
294
|
+
│ │
|
|
295
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
**完整执行序列**:
|
|
299
|
+
```bash
|
|
300
|
+
# 1. 唤醒 Analyst 智能体
|
|
301
|
+
/analyst
|
|
302
|
+
|
|
303
|
+
# 2. 执行产品简报工作流
|
|
304
|
+
*product-brief
|
|
305
|
+
|
|
306
|
+
# 3. (可选) 执行深度调研
|
|
307
|
+
*research
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
---
|
|
311
|
+
|
|
240
312
|
**自动执行内容**:
|
|
241
313
|
|
|
242
314
|
```yaml
|
|
243
315
|
phase: 1
|
|
244
316
|
name: 需求分析
|
|
245
|
-
role: Analyst
|
|
317
|
+
role: Analyst (Mary)
|
|
318
|
+
agent_activation:
|
|
319
|
+
command: "/analyst"
|
|
320
|
+
workflows:
|
|
321
|
+
- trigger: "*product-brief"
|
|
322
|
+
purpose: "创建产品简报,提取核心需求"
|
|
323
|
+
- trigger: "*research"
|
|
324
|
+
purpose: "深度调研(可选)"
|
|
325
|
+
condition: "需求涉及新业务领域时执行"
|
|
246
326
|
inputs:
|
|
247
327
|
- 迭代需求文档
|
|
248
328
|
- 业务知识库
|
|
249
329
|
outputs:
|
|
250
|
-
- requirement-analysis.md
|
|
330
|
+
- requirement-analysis.md (基于 product-brief 整理)
|
|
251
331
|
|
|
252
332
|
tasks:
|
|
253
333
|
- name: 解析需求文档
|
|
334
|
+
agent_command: "/analyst → *product-brief"
|
|
254
335
|
action: |
|
|
255
336
|
1. 读取需求文档全文
|
|
256
337
|
2. 提取功能点列表
|
|
@@ -314,22 +395,94 @@ tasks:
|
|
|
314
395
|
|
|
315
396
|
**角色激活**: PM (产品经理) + PO (产品负责人)
|
|
316
397
|
|
|
398
|
+
---
|
|
399
|
+
|
|
400
|
+
#### 🤖 智能体执行指令
|
|
401
|
+
|
|
402
|
+
```
|
|
403
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
404
|
+
│ Phase 2: 需求规划 │
|
|
405
|
+
│ 智能体: John (PM) │
|
|
406
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
407
|
+
│ │
|
|
408
|
+
│ Step 2.1: 唤醒 PM 智能体 │
|
|
409
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
410
|
+
│ │ 执行命令: /pm ││
|
|
411
|
+
│ │ 说明: 唤醒产品经理 John,准备进行需求规划工作 ││
|
|
412
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
413
|
+
│ │
|
|
414
|
+
│ Step 2.2: 创建 PRD 文档 │
|
|
415
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
416
|
+
│ │ 执行命令: *create-prd ││
|
|
417
|
+
│ │ 说明: 基于需求分析报告,创建完整的产品需求文档 ││
|
|
418
|
+
│ │ 输入: requirement-analysis.md / product-brief.md ││
|
|
419
|
+
│ │ 输出: prd.md ││
|
|
420
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
421
|
+
│ │
|
|
422
|
+
│ Step 2.3: (推荐) 验证 PRD │
|
|
423
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
424
|
+
│ │ 执行命令: *validate-prd ││
|
|
425
|
+
│ │ 说明: 使用全新上下文和不同 LLM 验证 PRD 质量 ││
|
|
426
|
+
│ │ 建议: 使用不同的 LLM 以获得更客观的评估 ││
|
|
427
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
428
|
+
│ │
|
|
429
|
+
│ Step 2.4: 创建史诗和故事定义 │
|
|
430
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
431
|
+
│ │ 执行命令: *create-epics-and-stories ││
|
|
432
|
+
│ │ 说明: 从 PRD 创建史诗和用户故事(在架构完成后执行) ││
|
|
433
|
+
│ │ 输入: prd.md + architecture.md ││
|
|
434
|
+
│ │ 输出: epics/epic-XXX.md ││
|
|
435
|
+
│ │ ⚠️ 注意: 故事定义写在 Epic 文件中,独立故事文件在 Phase 4 ││
|
|
436
|
+
│ │ 由 SM 的 *create-story 创建 ││
|
|
437
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
438
|
+
│ │
|
|
439
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
440
|
+
```
|
|
441
|
+
|
|
442
|
+
**完整执行序列**:
|
|
443
|
+
```bash
|
|
444
|
+
# 1. 唤醒 PM 智能体
|
|
445
|
+
/pm
|
|
446
|
+
|
|
447
|
+
# 2. 创建 PRD 文档
|
|
448
|
+
*create-prd
|
|
449
|
+
|
|
450
|
+
# 3. (推荐) 验证 PRD
|
|
451
|
+
*validate-prd
|
|
452
|
+
|
|
453
|
+
# 4. 创建史诗和故事定义 (需在架构设计后执行)
|
|
454
|
+
*create-epics-and-stories
|
|
455
|
+
```
|
|
456
|
+
|
|
457
|
+
---
|
|
458
|
+
|
|
317
459
|
**自动执行内容**:
|
|
318
460
|
|
|
319
461
|
```yaml
|
|
320
462
|
phase: 2
|
|
321
463
|
name: 需求规划
|
|
322
|
-
role: PM + PO
|
|
464
|
+
role: PM (John) + PO
|
|
465
|
+
agent_activation:
|
|
466
|
+
command: "/pm"
|
|
467
|
+
workflows:
|
|
468
|
+
- trigger: "*create-prd"
|
|
469
|
+
purpose: "创建产品需求文档"
|
|
470
|
+
- trigger: "*validate-prd"
|
|
471
|
+
purpose: "验证 PRD 质量(推荐)"
|
|
472
|
+
- trigger: "*create-epics-and-stories"
|
|
473
|
+
purpose: "创建史诗和故事定义"
|
|
474
|
+
prerequisite: "需在架构设计完成后执行"
|
|
323
475
|
inputs:
|
|
324
476
|
- requirement-analysis.md
|
|
325
477
|
- 业务知识库
|
|
326
478
|
outputs:
|
|
327
479
|
- prd.md
|
|
328
|
-
- epics/
|
|
329
|
-
-
|
|
480
|
+
- epics/epic-XXX.md # 包含故事定义的 Epic 文件
|
|
481
|
+
# 注意: 独立故事文件将在 Phase 4 由 *create-story 创建
|
|
330
482
|
|
|
331
483
|
tasks:
|
|
332
484
|
- name: 创建 PRD
|
|
485
|
+
agent_command: "/pm → *create-prd"
|
|
333
486
|
action: |
|
|
334
487
|
1. 基于需求分析报告创建 PRD
|
|
335
488
|
2. 定义产品目标和成功指标
|
|
@@ -337,20 +490,22 @@ tasks:
|
|
|
337
490
|
4. 定义非功能需求 (NFR)
|
|
338
491
|
output: prd.md
|
|
339
492
|
|
|
340
|
-
- name:
|
|
493
|
+
- name: 创建史诗文件(包含故事定义)
|
|
494
|
+
agent_command: "/pm → *create-epics-and-stories"
|
|
341
495
|
action: |
|
|
342
496
|
1. 将功能需求按模块分组为史诗
|
|
343
497
|
2. 定义每个史诗的业务价值
|
|
344
498
|
3. 确定史诗间的依赖关系
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
499
|
+
4. ⚠️ 重要: 故事定义写在 Epic 文件中,不单独创建故事文件
|
|
500
|
+
5. 故事文件将在 Phase 4 由 SM *create-story 工作流创建
|
|
501
|
+
output: epics/epic-XXX.md
|
|
502
|
+
note: |
|
|
503
|
+
⚠️ Phase 2 不创建独立的故事文件!
|
|
504
|
+
故事的详细定义(用户故事、接受标准、任务分解)应写在 Epic 文件中。
|
|
505
|
+
Phase 4 的 *create-story 工作流会:
|
|
506
|
+
1. 从 Epic 文件提取故事定义
|
|
507
|
+
2. 创建符合 DEV 智能体格式的故事文件
|
|
508
|
+
3. 自动设置正确的 Status: drafted
|
|
354
509
|
|
|
355
510
|
- name: PO 验收标准审核
|
|
356
511
|
action: |
|
|
@@ -401,12 +556,98 @@ tasks:
|
|
|
401
556
|
|
|
402
557
|
**角色激活**: Architect (架构师)
|
|
403
558
|
|
|
559
|
+
---
|
|
560
|
+
|
|
561
|
+
#### 🤖 智能体执行指令
|
|
562
|
+
|
|
563
|
+
```
|
|
564
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
565
|
+
│ Phase 3: 架构设计 │
|
|
566
|
+
│ 智能体: Winston (Architect) │
|
|
567
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
568
|
+
│ │
|
|
569
|
+
│ Step 3.1: 唤醒 Architect 智能体 │
|
|
570
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
571
|
+
│ │ 执行命令: /architect ││
|
|
572
|
+
│ │ 说明: 唤醒架构师 Winston,准备进行架构设计工作 ││
|
|
573
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
574
|
+
│ │
|
|
575
|
+
│ Step 3.2: 创建架构文档 │
|
|
576
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
577
|
+
│ │ 执行命令: *create-architecture ││
|
|
578
|
+
│ │ 说明: 基于 PRD 创建完整的架构设计文档 ││
|
|
579
|
+
│ │ 输入: prd.md + 现有代码库 ││
|
|
580
|
+
│ │ 输出: architecture.md + adr/ ││
|
|
581
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
582
|
+
│ │
|
|
583
|
+
│ Step 3.3: (推荐) 验证架构 │
|
|
584
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
585
|
+
│ │ 执行命令: *validate-architecture ││
|
|
586
|
+
│ │ 说明: 使用全新上下文和不同 LLM 验证架构设计 ││
|
|
587
|
+
│ │ 建议: 使用不同的 LLM 以获得更客观的评估 ││
|
|
588
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
589
|
+
│ │
|
|
590
|
+
│ Step 3.4: (可选) 实现准备验证 │
|
|
591
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
592
|
+
│ │ 执行命令: *implementation-readiness ││
|
|
593
|
+
│ │ 说明: 验证 PRD、UX、架构、史诗和故事是否对齐 ││
|
|
594
|
+
│ │ 建议: 在进入 Phase 4 开发前执行此验证 ││
|
|
595
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
596
|
+
│ │
|
|
597
|
+
│ Step 3.5: (可选) 创建架构图 │
|
|
598
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
599
|
+
│ │ 执行命令: *create-excalidraw-diagram ││
|
|
600
|
+
│ │ 说明: 创建系统架构图或技术图表 ││
|
|
601
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
602
|
+
│ │
|
|
603
|
+
│ Step 3.6: (可选) 创建数据流图 │
|
|
604
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
605
|
+
│ │ 执行命令: *create-excalidraw-dataflow ││
|
|
606
|
+
│ │ 说明: 创建数据流图 ││
|
|
607
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
608
|
+
│ │
|
|
609
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
610
|
+
```
|
|
611
|
+
|
|
612
|
+
**完整执行序列**:
|
|
613
|
+
```bash
|
|
614
|
+
# 1. 唤醒 Architect 智能体
|
|
615
|
+
/architect
|
|
616
|
+
|
|
617
|
+
# 2. 创建架构文档
|
|
618
|
+
*create-architecture
|
|
619
|
+
|
|
620
|
+
# 3. (推荐) 验证架构
|
|
621
|
+
*validate-architecture
|
|
622
|
+
|
|
623
|
+
# 4. (可选) 实现准备验证
|
|
624
|
+
*implementation-readiness
|
|
625
|
+
|
|
626
|
+
# 5. (可选) 创建架构图
|
|
627
|
+
*create-excalidraw-diagram
|
|
628
|
+
```
|
|
629
|
+
|
|
630
|
+
---
|
|
631
|
+
|
|
404
632
|
**自动执行内容**:
|
|
405
633
|
|
|
406
634
|
```yaml
|
|
407
635
|
phase: 3
|
|
408
636
|
name: 架构设计
|
|
409
|
-
role: Architect
|
|
637
|
+
role: Architect (Winston)
|
|
638
|
+
agent_activation:
|
|
639
|
+
command: "/architect"
|
|
640
|
+
workflows:
|
|
641
|
+
- trigger: "*create-architecture"
|
|
642
|
+
purpose: "创建架构设计文档"
|
|
643
|
+
- trigger: "*validate-architecture"
|
|
644
|
+
purpose: "验证架构设计(推荐)"
|
|
645
|
+
- trigger: "*implementation-readiness"
|
|
646
|
+
purpose: "实现准备验证(可选)"
|
|
647
|
+
- trigger: "*create-excalidraw-diagram"
|
|
648
|
+
purpose: "创建架构图(可选)"
|
|
649
|
+
- trigger: "*create-excalidraw-dataflow"
|
|
650
|
+
purpose: "创建数据流图(可选)"
|
|
410
651
|
inputs:
|
|
411
652
|
- prd.md
|
|
412
653
|
- epics/
|
|
@@ -418,6 +659,7 @@ outputs:
|
|
|
418
659
|
|
|
419
660
|
tasks:
|
|
420
661
|
- name: 分析现有架构
|
|
662
|
+
agent_command: "/architect → *create-architecture (Step 1)"
|
|
421
663
|
action: |
|
|
422
664
|
1. 扫描目标代码库结构
|
|
423
665
|
2. 识别现有技术栈
|
|
@@ -425,6 +667,7 @@ tasks:
|
|
|
425
667
|
4. 识别可复用组件
|
|
426
668
|
|
|
427
669
|
- name: 设计技术方案
|
|
670
|
+
agent_command: "/architect → *create-architecture (Step 2)"
|
|
428
671
|
action: |
|
|
429
672
|
1. 基于 PRD 设计技术实现方案
|
|
430
673
|
2. 匹配技术知识库中的最佳实践
|
|
@@ -432,12 +675,14 @@ tasks:
|
|
|
432
675
|
4. 设计 API 接口
|
|
433
676
|
|
|
434
677
|
- name: 数据模型设计
|
|
678
|
+
agent_command: "/architect → *create-architecture (Step 3)"
|
|
435
679
|
action: |
|
|
436
680
|
1. 设计新增/变更的数据表
|
|
437
681
|
2. 创建 ER 图
|
|
438
682
|
3. 设计数据迁移策略
|
|
439
683
|
|
|
440
684
|
- name: 技术决策记录
|
|
685
|
+
agent_command: "/architect → *create-architecture (Step 4)"
|
|
441
686
|
action: |
|
|
442
687
|
1. 记录关键技术选型
|
|
443
688
|
2. 记录选型理由和权衡
|
|
@@ -491,6 +736,92 @@ tasks:
|
|
|
491
736
|
|
|
492
737
|
> **重要**: 本阶段严格遵循项目智能体的标准工作流,确保与 SM 和 DEV 智能体的完全兼容。
|
|
493
738
|
|
|
739
|
+
---
|
|
740
|
+
|
|
741
|
+
#### 🤖 智能体执行指令概览
|
|
742
|
+
|
|
743
|
+
```
|
|
744
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
745
|
+
│ Phase 4: 开发实现 │
|
|
746
|
+
│ 智能体: Bob (SM) + Amelia (DEV) │
|
|
747
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
748
|
+
│ │
|
|
749
|
+
│ 阶段流程概览: │
|
|
750
|
+
│ │
|
|
751
|
+
│ ┌──────────────────────────────────────────────────────────────┐
|
|
752
|
+
│ │ Step 4.1: Sprint 规划 (SM) │
|
|
753
|
+
│ │ ┌────────────────────────────────────────────────────────┐ │
|
|
754
|
+
│ │ │ 执行: /sm → *sprint-planning │ │
|
|
755
|
+
│ │ │ 输出: sprint-status.yaml │ │
|
|
756
|
+
│ │ └────────────────────────────────────────────────────────┘ │
|
|
757
|
+
│ └──────────────────────────────────────────────────────────────┘
|
|
758
|
+
│ ↓ │
|
|
759
|
+
│ ┌──────────────────────────────────────────────────────────────┐
|
|
760
|
+
│ │ Step 4.2: For Each Story 循环 │
|
|
761
|
+
│ │ │
|
|
762
|
+
│ │ Step 4.2.1: 故事准备 (SM) │
|
|
763
|
+
│ │ ┌────────────────────────────────────────────────────┐ │
|
|
764
|
+
│ │ │ 执行: /sm → *create-story │ │
|
|
765
|
+
│ │ │ 状态: backlog → drafted → ready-for-dev │ │
|
|
766
|
+
│ │ └────────────────────────────────────────────────────┘ │
|
|
767
|
+
│ │ ↓ │
|
|
768
|
+
│ │ Step 4.2.2: 故事开发 (DEV) │
|
|
769
|
+
│ │ ┌────────────────────────────────────────────────────┐ │
|
|
770
|
+
│ │ │ 执行: /dev → *develop-story │ │
|
|
771
|
+
│ │ │ 状态: ready-for-dev → in-progress → review │ │
|
|
772
|
+
│ │ └────────────────────────────────────────────────────┘ │
|
|
773
|
+
│ │ ↓ │
|
|
774
|
+
│ │ Step 4.2.3: 代码审查 (DEV) │
|
|
775
|
+
│ │ ┌────────────────────────────────────────────────────┐ │
|
|
776
|
+
│ │ │ 执行: /dev → *code-review │ │
|
|
777
|
+
│ │ │ 状态: review → done (通过) 或 返回修复 │ │
|
|
778
|
+
│ │ └────────────────────────────────────────────────────┘ │
|
|
779
|
+
│ │ │
|
|
780
|
+
│ └──────────────────────────────────────────────────────────────┘
|
|
781
|
+
│ │
|
|
782
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
783
|
+
```
|
|
784
|
+
|
|
785
|
+
**完整执行序列**:
|
|
786
|
+
```bash
|
|
787
|
+
# === Step 4.1: Sprint 规划 ===
|
|
788
|
+
# 1. 唤醒 SM 智能体
|
|
789
|
+
/sm
|
|
790
|
+
|
|
791
|
+
# 2. 执行 Sprint 规划
|
|
792
|
+
*sprint-planning
|
|
793
|
+
|
|
794
|
+
# === Step 4.2: 故事开发循环 (对每个故事重复) ===
|
|
795
|
+
|
|
796
|
+
# --- Step 4.2.1: 故事准备 (SM) ---
|
|
797
|
+
# 3. 唤醒 SM 智能体 (如果不在当前上下文)
|
|
798
|
+
/sm
|
|
799
|
+
|
|
800
|
+
# 4. 创建故事文件
|
|
801
|
+
*create-story
|
|
802
|
+
|
|
803
|
+
# 5. (推荐) 验证故事
|
|
804
|
+
*validate-create-story
|
|
805
|
+
|
|
806
|
+
# --- Step 4.2.2: 故事开发 (DEV) ---
|
|
807
|
+
# 6. 唤醒 DEV 智能体
|
|
808
|
+
/dev
|
|
809
|
+
|
|
810
|
+
# 7. 执行故事开发
|
|
811
|
+
*develop-story
|
|
812
|
+
|
|
813
|
+
# --- Step 4.2.3: 代码审查 (DEV) ---
|
|
814
|
+
# 8. 唤醒 DEV 智能体 (建议使用全新上下文)
|
|
815
|
+
/dev
|
|
816
|
+
|
|
817
|
+
# 9. 执行代码审查
|
|
818
|
+
*code-review
|
|
819
|
+
|
|
820
|
+
# --- 重复 Step 4.2 直到所有故事完成 ---
|
|
821
|
+
```
|
|
822
|
+
|
|
823
|
+
---
|
|
824
|
+
|
|
494
825
|
**故事状态定义** (与 SM 智能体一致):
|
|
495
826
|
|
|
496
827
|
```yaml
|
|
@@ -548,9 +879,52 @@ workflows_invoked:
|
|
|
548
879
|
|
|
549
880
|
**调用工作流**: `{xiaoma_folder}/xmc/workflows/4-implementation/sprint-planning/workflow.yaml`
|
|
550
881
|
|
|
882
|
+
---
|
|
883
|
+
|
|
884
|
+
##### 🤖 智能体执行指令
|
|
885
|
+
|
|
886
|
+
```
|
|
887
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
888
|
+
│ Step 4.1: Sprint 规划 │
|
|
889
|
+
│ 智能体: Bob (SM) │
|
|
890
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
891
|
+
│ │
|
|
892
|
+
│ 执行步骤: │
|
|
893
|
+
│ │
|
|
894
|
+
│ 1. 唤醒 SM 智能体 │
|
|
895
|
+
│ ┌─────────────────────────────────────────────────────────┐ │
|
|
896
|
+
│ │ 执行命令: /sm │ │
|
|
897
|
+
│ │ 说明: 唤醒 Scrum Master Bob,准备进行 Sprint 规划 │ │
|
|
898
|
+
│ └─────────────────────────────────────────────────────────┘ │
|
|
899
|
+
│ │
|
|
900
|
+
│ 2. 执行 Sprint 规划工作流 │
|
|
901
|
+
│ ┌─────────────────────────────────────────────────────────┐ │
|
|
902
|
+
│ │ 执行命令: *sprint-planning │ │
|
|
903
|
+
│ │ 说明: 分析 Epic 文件,生成 sprint-status.yaml │ │
|
|
904
|
+
│ │ 输入: epics/*.md │ │
|
|
905
|
+
│ │ 输出: sprint-status.yaml │ │
|
|
906
|
+
│ └─────────────────────────────────────────────────────────┘ │
|
|
907
|
+
│ │
|
|
908
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
909
|
+
```
|
|
910
|
+
|
|
911
|
+
**执行命令**:
|
|
912
|
+
```bash
|
|
913
|
+
# 唤醒 SM 智能体
|
|
914
|
+
/sm
|
|
915
|
+
|
|
916
|
+
# 执行 Sprint 规划
|
|
917
|
+
*sprint-planning
|
|
918
|
+
```
|
|
919
|
+
|
|
920
|
+
---
|
|
921
|
+
|
|
551
922
|
```yaml
|
|
552
923
|
task: sprint_planning
|
|
553
924
|
role: SM (Bob)
|
|
925
|
+
agent_activation:
|
|
926
|
+
command: "/sm"
|
|
927
|
+
workflow: "*sprint-planning"
|
|
554
928
|
invoke_workflow: "*sprint-planning"
|
|
555
929
|
actions:
|
|
556
930
|
- name: 分析 Epic 文件
|
|
@@ -623,9 +997,67 @@ actions:
|
|
|
623
997
|
|
|
624
998
|
**调用工作流**: `{xiaoma_folder}/xmc/workflows/4-implementation/create-story/workflow.yaml`
|
|
625
999
|
|
|
1000
|
+
---
|
|
1001
|
+
|
|
1002
|
+
##### 🤖 智能体执行指令
|
|
1003
|
+
|
|
1004
|
+
```
|
|
1005
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
1006
|
+
│ Step 4.2.1: 故事准备 │
|
|
1007
|
+
│ 智能体: Bob (SM) │
|
|
1008
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
1009
|
+
│ │
|
|
1010
|
+
│ 执行步骤: │
|
|
1011
|
+
│ │
|
|
1012
|
+
│ 1. 唤醒 SM 智能体 │
|
|
1013
|
+
│ ┌─────────────────────────────────────────────────────────┐ │
|
|
1014
|
+
│ │ 执行命令: /sm │ │
|
|
1015
|
+
│ │ 说明: 唤醒 Scrum Master Bob,准备创建故事文件 │ │
|
|
1016
|
+
│ └─────────────────────────────────────────────────────────┘ │
|
|
1017
|
+
│ │
|
|
1018
|
+
│ 2. 创建故事文件 │
|
|
1019
|
+
│ ┌─────────────────────────────────────────────────────────┐ │
|
|
1020
|
+
│ │ 执行命令: *create-story │ │
|
|
1021
|
+
│ │ 说明: 从 Epic 中提取故事定义,创建独立的故事文件 │ │
|
|
1022
|
+
│ │ 输入: sprint-status.yaml + epics/*.md │ │
|
|
1023
|
+
│ │ 输出: stories/{story-key}.md │ │
|
|
1024
|
+
│ │ 状态: backlog → drafted → ready-for-dev │ │
|
|
1025
|
+
│ └─────────────────────────────────────────────────────────┘ │
|
|
1026
|
+
│ │
|
|
1027
|
+
│ 3. (推荐) 验证故事文件 │
|
|
1028
|
+
│ ┌─────────────────────────────────────────────────────────┐ │
|
|
1029
|
+
│ │ 执行命令: *validate-create-story │ │
|
|
1030
|
+
│ │ 说明: 使用全新上下文验证故事质量 │ │
|
|
1031
|
+
│ │ 建议: 使用不同的 LLM 以获得更客观的评估 │ │
|
|
1032
|
+
│ └─────────────────────────────────────────────────────────┘ │
|
|
1033
|
+
│ │
|
|
1034
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
1035
|
+
```
|
|
1036
|
+
|
|
1037
|
+
**执行命令**:
|
|
1038
|
+
```bash
|
|
1039
|
+
# 唤醒 SM 智能体
|
|
1040
|
+
/sm
|
|
1041
|
+
|
|
1042
|
+
# 创建故事文件
|
|
1043
|
+
*create-story
|
|
1044
|
+
|
|
1045
|
+
# (推荐) 验证故事文件
|
|
1046
|
+
*validate-create-story
|
|
1047
|
+
```
|
|
1048
|
+
|
|
1049
|
+
---
|
|
1050
|
+
|
|
626
1051
|
```yaml
|
|
627
1052
|
task: prepare_story
|
|
628
1053
|
role: SM (Bob)
|
|
1054
|
+
agent_activation:
|
|
1055
|
+
command: "/sm"
|
|
1056
|
+
workflows:
|
|
1057
|
+
- trigger: "*create-story"
|
|
1058
|
+
purpose: "创建故事文件"
|
|
1059
|
+
- trigger: "*validate-create-story"
|
|
1060
|
+
purpose: "验证故事(推荐)"
|
|
629
1061
|
invoke_workflow: "*create-story"
|
|
630
1062
|
|
|
631
1063
|
for_each: story in sprint_status.development_status
|
|
@@ -664,9 +1096,13 @@ actions:
|
|
|
664
1096
|
|
|
665
1097
|
**故事文件格式** (符合 DEV 智能体要求):
|
|
666
1098
|
|
|
1099
|
+
> ⚠️ **关键**: 必须包含 `Status:` 行,且位于标题之后!
|
|
1100
|
+
|
|
667
1101
|
```markdown
|
|
668
1102
|
# Story: {story-key}
|
|
669
1103
|
|
|
1104
|
+
Status: drafted
|
|
1105
|
+
|
|
670
1106
|
## Story
|
|
671
1107
|
As a [用户角色],
|
|
672
1108
|
I want [功能],
|
|
@@ -707,20 +1143,77 @@ So that [价值].
|
|
|
707
1143
|
|
|
708
1144
|
## Change Log
|
|
709
1145
|
[变更日志]
|
|
710
|
-
|
|
711
|
-
## Status
|
|
712
|
-
drafted <!-- 将更新为: ready-for-dev → in-progress → review → done -->
|
|
713
1146
|
```
|
|
714
1147
|
|
|
1148
|
+
> **注意**: `Status:` 行位于文件顶部(标题之后),不是在底部!
|
|
1149
|
+
> 状态值将随开发进度更新: `drafted → ready-for-dev → in-progress → review → done`
|
|
1150
|
+
|
|
715
1151
|
---
|
|
716
1152
|
|
|
717
1153
|
#### Step 4.2.2: 故事开发 (develop-story)
|
|
718
1154
|
|
|
719
1155
|
**调用工作流**: `{xiaoma_folder}/xmc/workflows/4-implementation/dev-story/workflow.yaml`
|
|
720
1156
|
|
|
1157
|
+
---
|
|
1158
|
+
|
|
1159
|
+
##### 🤖 智能体执行指令
|
|
1160
|
+
|
|
1161
|
+
```
|
|
1162
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
1163
|
+
│ Step 4.2.2: 故事开发 │
|
|
1164
|
+
│ 智能体: Amelia (DEV) │
|
|
1165
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
1166
|
+
│ │
|
|
1167
|
+
│ 执行步骤: │
|
|
1168
|
+
│ │
|
|
1169
|
+
│ 1. 唤醒 DEV 智能体 │
|
|
1170
|
+
│ ┌─────────────────────────────────────────────────────────┐ │
|
|
1171
|
+
│ │ 执行命令: /dev │ │
|
|
1172
|
+
│ │ 说明: 唤醒开发者 Amelia,准备进行 TDD 开发 │ │
|
|
1173
|
+
│ └─────────────────────────────────────────────────────────┘ │
|
|
1174
|
+
│ │
|
|
1175
|
+
│ 2. 执行故事开发工作流 │
|
|
1176
|
+
│ ┌─────────────────────────────────────────────────────────┐ │
|
|
1177
|
+
│ │ 执行命令: *develop-story │ │
|
|
1178
|
+
│ │ 说明: 执行 TDD 驱动的故事开发 │ │
|
|
1179
|
+
│ │ 前置条件: 故事状态为 ready-for-dev │ │
|
|
1180
|
+
│ │ 执行流程: │ │
|
|
1181
|
+
│ │ - Step 4: 标记为 in-progress │ │
|
|
1182
|
+
│ │ - Step 5: TDD 实现 (红-绿-重构) │ │
|
|
1183
|
+
│ │ - Step 6: 编写全面测试 │ │
|
|
1184
|
+
│ │ - Step 7: 运行验证和测试 │ │
|
|
1185
|
+
│ │ - Step 8: 验证并标记任务完成 │ │
|
|
1186
|
+
│ │ - Step 9: 标记为 review │ │
|
|
1187
|
+
│ │ 状态: ready-for-dev → in-progress → review │ │
|
|
1188
|
+
│ └─────────────────────────────────────────────────────────┘ │
|
|
1189
|
+
│ │
|
|
1190
|
+
│ ⚠️ 关键规则: │
|
|
1191
|
+
│ - 故事文件是唯一的事实来源 │
|
|
1192
|
+
│ - 严格按照 Tasks/Subtasks 顺序执行 │
|
|
1193
|
+
│ - 绝不实现故事文件中未定义的内容 │
|
|
1194
|
+
│ - 每个任务完成前必须有测试覆盖 │
|
|
1195
|
+
│ - 所有测试必须 100% 通过才能继续 │
|
|
1196
|
+
│ │
|
|
1197
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
1198
|
+
```
|
|
1199
|
+
|
|
1200
|
+
**执行命令**:
|
|
1201
|
+
```bash
|
|
1202
|
+
# 唤醒 DEV 智能体
|
|
1203
|
+
/dev
|
|
1204
|
+
|
|
1205
|
+
# 执行故事开发
|
|
1206
|
+
*develop-story
|
|
1207
|
+
```
|
|
1208
|
+
|
|
1209
|
+
---
|
|
1210
|
+
|
|
721
1211
|
```yaml
|
|
722
1212
|
task: develop_story
|
|
723
1213
|
role: DEV (Amelia)
|
|
1214
|
+
agent_activation:
|
|
1215
|
+
command: "/dev"
|
|
1216
|
+
workflow: "*develop-story"
|
|
724
1217
|
invoke_workflow: "*develop-story"
|
|
725
1218
|
|
|
726
1219
|
precondition:
|
|
@@ -762,6 +1255,15 @@ critical_rules:
|
|
|
762
1255
|
status_transitions:
|
|
763
1256
|
on_start: "ready-for-dev → in-progress"
|
|
764
1257
|
on_complete: "in-progress → review"
|
|
1258
|
+
|
|
1259
|
+
# ⚠️ 强制状态更新操作 - 必须执行!
|
|
1260
|
+
mandatory_updates:
|
|
1261
|
+
on_start:
|
|
1262
|
+
- action: "编辑故事文件: Status: ready-for-dev → Status: in-progress"
|
|
1263
|
+
- action: "编辑 sprint-status.yaml: story_key: ready-for-dev → story_key: in-progress"
|
|
1264
|
+
on_complete:
|
|
1265
|
+
- action: "编辑故事文件: Status: in-progress → Status: review"
|
|
1266
|
+
- action: "编辑 sprint-status.yaml: story_key: in-progress → story_key: review"
|
|
765
1267
|
```
|
|
766
1268
|
|
|
767
1269
|
---
|
|
@@ -770,9 +1272,63 @@ status_transitions:
|
|
|
770
1272
|
|
|
771
1273
|
**调用工作流**: `{xiaoma_folder}/xmc/workflows/4-implementation/code-review/workflow.yaml`
|
|
772
1274
|
|
|
1275
|
+
---
|
|
1276
|
+
|
|
1277
|
+
##### 🤖 智能体执行指令
|
|
1278
|
+
|
|
1279
|
+
```
|
|
1280
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
1281
|
+
│ Step 4.2.3: 代码审查 │
|
|
1282
|
+
│ 智能体: Amelia (DEV) │
|
|
1283
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
1284
|
+
│ │
|
|
1285
|
+
│ 执行步骤: │
|
|
1286
|
+
│ │
|
|
1287
|
+
│ 1. 唤醒 DEV 智能体 (建议全新上下文) │
|
|
1288
|
+
│ ┌─────────────────────────────────────────────────────────┐ │
|
|
1289
|
+
│ │ 执行命令: /dev │ │
|
|
1290
|
+
│ │ 说明: 唤醒开发者 Amelia,准备进行代码审查 │ │
|
|
1291
|
+
│ │ 建议: 使用全新上下文和不同 LLM 以获得更客观的评估 │ │
|
|
1292
|
+
│ └─────────────────────────────────────────────────────────┘ │
|
|
1293
|
+
│ │
|
|
1294
|
+
│ 2. 执行代码审查工作流 │
|
|
1295
|
+
│ ┌─────────────────────────────────────────────────────────┐ │
|
|
1296
|
+
│ │ 执行命令: *code-review │ │
|
|
1297
|
+
│ │ 说明: 执行彻底的代码审查 │ │
|
|
1298
|
+
│ │ 前置条件: 故事状态为 review │ │
|
|
1299
|
+
│ │ 审查维度: │ │
|
|
1300
|
+
│ │ - 功能正确性: 是否满足所有接受标准 │ │
|
|
1301
|
+
│ │ - 代码质量: 清晰可读、命名规范、遵循项目规范 │ │
|
|
1302
|
+
│ │ - 安全性: 注入风险、敏感数据处理、认证授权 │ │
|
|
1303
|
+
│ │ - 性能: 性能问题、数据库查询、内存泄漏 │ │
|
|
1304
|
+
│ │ - 测试覆盖: 测试充分性、边界情况覆盖 │ │
|
|
1305
|
+
│ │ │ │
|
|
1306
|
+
│ │ 审查结果: │ │
|
|
1307
|
+
│ │ - APPROVED: review → done │ │
|
|
1308
|
+
│ │ - CHANGES_REQUESTED: review → in-progress (返回修复) │ │
|
|
1309
|
+
│ └─────────────────────────────────────────────────────────┘ │
|
|
1310
|
+
│ │
|
|
1311
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
1312
|
+
```
|
|
1313
|
+
|
|
1314
|
+
**执行命令**:
|
|
1315
|
+
```bash
|
|
1316
|
+
# 唤醒 DEV 智能体 (建议全新上下文)
|
|
1317
|
+
/dev
|
|
1318
|
+
|
|
1319
|
+
# 执行代码审查
|
|
1320
|
+
*code-review
|
|
1321
|
+
```
|
|
1322
|
+
|
|
1323
|
+
---
|
|
1324
|
+
|
|
773
1325
|
```yaml
|
|
774
1326
|
task: code_review
|
|
775
1327
|
role: DEV (Amelia)
|
|
1328
|
+
agent_activation:
|
|
1329
|
+
command: "/dev"
|
|
1330
|
+
workflow: "*code-review"
|
|
1331
|
+
recommendation: "使用全新上下文和不同 LLM 以获得更客观的评估"
|
|
776
1332
|
invoke_workflow: "*code-review"
|
|
777
1333
|
|
|
778
1334
|
precondition:
|
|
@@ -809,11 +1365,19 @@ review_outcome:
|
|
|
809
1365
|
action: "更新状态为 done"
|
|
810
1366
|
update_sprint_status:
|
|
811
1367
|
story_key: "review → done"
|
|
1368
|
+
# ⚠️ 强制执行以下操作!
|
|
1369
|
+
mandatory_updates:
|
|
1370
|
+
- "编辑故事文件: Status: review → Status: done"
|
|
1371
|
+
- "编辑 sprint-status.yaml: story_key: review → story_key: done"
|
|
812
1372
|
|
|
813
1373
|
CHANGES_REQUESTED:
|
|
814
1374
|
action: "生成修复任务,返回开发"
|
|
815
1375
|
insert_review_followups: true
|
|
816
1376
|
# DEV 智能体会在下次执行时处理审查反馈
|
|
1377
|
+
# ⚠️ 强制执行以下操作!
|
|
1378
|
+
mandatory_updates:
|
|
1379
|
+
- "编辑故事文件: Status: review → Status: in-progress"
|
|
1380
|
+
- "编辑 sprint-status.yaml: story_key: review → story_key: in-progress"
|
|
817
1381
|
|
|
818
1382
|
best_practice: |
|
|
819
1383
|
建议使用不同的 LLM 执行代码审查以获得更客观的评估
|
|
@@ -895,12 +1459,113 @@ For Each Task in Story:
|
|
|
895
1459
|
|
|
896
1460
|
> **重要**: 本阶段集成 TEA 智能体的专用测试工作流,提供全面的测试验证能力。
|
|
897
1461
|
|
|
1462
|
+
---
|
|
1463
|
+
|
|
1464
|
+
#### 🤖 智能体执行指令
|
|
1465
|
+
|
|
1466
|
+
```
|
|
1467
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
1468
|
+
│ Phase 5: 测试验证 │
|
|
1469
|
+
│ 智能体: Murat (TEA) │
|
|
1470
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
1471
|
+
│ │
|
|
1472
|
+
│ Step 5.1: 唤醒 TEA 智能体 │
|
|
1473
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
1474
|
+
│ │ 执行命令: /tea ││
|
|
1475
|
+
│ │ 说明: 唤醒测试架构师 Murat,准备进行测试验证工作 ││
|
|
1476
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
1477
|
+
│ │
|
|
1478
|
+
│ Step 5.2: 需求追溯验证 │
|
|
1479
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
1480
|
+
│ │ 执行命令: *trace ││
|
|
1481
|
+
│ │ 说明: 构建需求到测试的追溯矩阵 ││
|
|
1482
|
+
│ │ 输出: traceability-matrix.md ││
|
|
1483
|
+
│ │ 验证: FR → Stories → Tests 映射完整性 ││
|
|
1484
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
1485
|
+
│ │
|
|
1486
|
+
│ Step 5.3: 测试质量评审 │
|
|
1487
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
1488
|
+
│ │ 执行命令: *test-review ││
|
|
1489
|
+
│ │ 说明: 评审测试质量和充分性 ││
|
|
1490
|
+
│ │ 检查: 测试充分性、测试质量、测试模式 ││
|
|
1491
|
+
│ │ 输出: test-review-report.md ││
|
|
1492
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
1493
|
+
│ │
|
|
1494
|
+
│ Step 5.4: NFR 验证 │
|
|
1495
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
1496
|
+
│ │ 执行命令: *nfr-assess ││
|
|
1497
|
+
│ │ 说明: 验证非功能性需求 (性能、安全、可用性) ││
|
|
1498
|
+
│ │ 输出: nfr-assessment-report.md ││
|
|
1499
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
1500
|
+
│ │
|
|
1501
|
+
│ Step 5.5: (可选) 测试设计 │
|
|
1502
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
1503
|
+
│ │ 执行命令: *test-design ││
|
|
1504
|
+
│ │ 说明: 创建全面的测试场景 ││
|
|
1505
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
1506
|
+
│ │
|
|
1507
|
+
│ Step 5.6: (可选) 测试自动化 │
|
|
1508
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
1509
|
+
│ │ 执行命令: *automate ││
|
|
1510
|
+
│ │ 说明: 生成全面的测试自动化代码 ││
|
|
1511
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
1512
|
+
│ │
|
|
1513
|
+
│ Step 5.7: (可选) CI/CD 流水线 │
|
|
1514
|
+
│ ┌─────────────────────────────────────────────────────────────┐│
|
|
1515
|
+
│ │ 执行命令: *ci ││
|
|
1516
|
+
│ │ 说明: 搭建 CI/CD 质量流水线脚手架 ││
|
|
1517
|
+
│ └─────────────────────────────────────────────────────────────┘│
|
|
1518
|
+
│ │
|
|
1519
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
1520
|
+
```
|
|
1521
|
+
|
|
1522
|
+
**完整执行序列**:
|
|
1523
|
+
```bash
|
|
1524
|
+
# 1. 唤醒 TEA 智能体
|
|
1525
|
+
/tea
|
|
1526
|
+
|
|
1527
|
+
# 2. 需求追溯验证
|
|
1528
|
+
*trace
|
|
1529
|
+
|
|
1530
|
+
# 3. 测试质量评审
|
|
1531
|
+
*test-review
|
|
1532
|
+
|
|
1533
|
+
# 4. NFR 验证
|
|
1534
|
+
*nfr-assess
|
|
1535
|
+
|
|
1536
|
+
# 5. (可选) 测试设计
|
|
1537
|
+
*test-design
|
|
1538
|
+
|
|
1539
|
+
# 6. (可选) 测试自动化
|
|
1540
|
+
*automate
|
|
1541
|
+
|
|
1542
|
+
# 7. (可选) CI/CD 流水线
|
|
1543
|
+
*ci
|
|
1544
|
+
```
|
|
1545
|
+
|
|
1546
|
+
---
|
|
1547
|
+
|
|
898
1548
|
**自动执行内容**:
|
|
899
1549
|
|
|
900
1550
|
```yaml
|
|
901
1551
|
phase: 5
|
|
902
1552
|
name: 测试验证
|
|
903
1553
|
role: TEA (Murat)
|
|
1554
|
+
agent_activation:
|
|
1555
|
+
command: "/tea"
|
|
1556
|
+
workflows:
|
|
1557
|
+
- trigger: "*trace"
|
|
1558
|
+
purpose: "需求到测试的追踪映射"
|
|
1559
|
+
- trigger: "*test-review"
|
|
1560
|
+
purpose: "测试质量评审"
|
|
1561
|
+
- trigger: "*nfr-assess"
|
|
1562
|
+
purpose: "非功能性需求验证"
|
|
1563
|
+
- trigger: "*test-design"
|
|
1564
|
+
purpose: "测试场景设计(可选)"
|
|
1565
|
+
- trigger: "*automate"
|
|
1566
|
+
purpose: "测试自动化(可选)"
|
|
1567
|
+
- trigger: "*ci"
|
|
1568
|
+
purpose: "CI/CD 流水线(可选)"
|
|
904
1569
|
inputs:
|
|
905
1570
|
- 实现的代码
|
|
906
1571
|
- 测试代码
|
|
@@ -917,12 +1582,15 @@ outputs:
|
|
|
917
1582
|
workflows_invoked:
|
|
918
1583
|
- agent: TEA (Murat)
|
|
919
1584
|
workflow: trace
|
|
1585
|
+
command: "/tea → *trace"
|
|
920
1586
|
purpose: "需求到测试的追踪映射"
|
|
921
1587
|
- agent: TEA (Murat)
|
|
922
1588
|
workflow: test-review
|
|
1589
|
+
command: "/tea → *test-review"
|
|
923
1590
|
purpose: "测试质量评审"
|
|
924
1591
|
- agent: TEA (Murat)
|
|
925
1592
|
workflow: nfr-assess
|
|
1593
|
+
command: "/tea → *nfr-assess"
|
|
926
1594
|
purpose: "非功能性需求验证"
|
|
927
1595
|
```
|
|
928
1596
|
|
|
@@ -932,9 +1600,12 @@ workflows_invoked:
|
|
|
932
1600
|
|
|
933
1601
|
**调用工作流**: `{xiaoma_folder}/xmc/workflows/testarch/trace/workflow.yaml`
|
|
934
1602
|
|
|
1603
|
+
**执行命令**: `/tea → *trace`
|
|
1604
|
+
|
|
935
1605
|
```yaml
|
|
936
1606
|
task: requirement_traceability
|
|
937
1607
|
role: TEA (Murat)
|
|
1608
|
+
agent_command: "/tea → *trace"
|
|
938
1609
|
invoke_workflow: "*trace"
|
|
939
1610
|
|
|
940
1611
|
actions:
|
|
@@ -989,9 +1660,12 @@ actions:
|
|
|
989
1660
|
|
|
990
1661
|
**调用工作流**: `{xiaoma_folder}/xmc/workflows/testarch/test-review/workflow.yaml`
|
|
991
1662
|
|
|
1663
|
+
**执行命令**: `/tea → *test-review`
|
|
1664
|
+
|
|
992
1665
|
```yaml
|
|
993
1666
|
task: test_quality_review
|
|
994
1667
|
role: TEA (Murat)
|
|
1668
|
+
agent_command: "/tea → *test-review"
|
|
995
1669
|
invoke_workflow: "*test-review"
|
|
996
1670
|
|
|
997
1671
|
review_criteria:
|
|
@@ -1026,9 +1700,12 @@ output:
|
|
|
1026
1700
|
|
|
1027
1701
|
**调用工作流**: `{xiaoma_folder}/xmc/workflows/testarch/nfr-assess/workflow.yaml`
|
|
1028
1702
|
|
|
1703
|
+
**执行命令**: `/tea → *nfr-assess`
|
|
1704
|
+
|
|
1029
1705
|
```yaml
|
|
1030
1706
|
task: nfr_validation
|
|
1031
1707
|
role: TEA (Murat)
|
|
1708
|
+
agent_command: "/tea → *nfr-assess"
|
|
1032
1709
|
invoke_workflow: "*nfr-assess"
|
|
1033
1710
|
|
|
1034
1711
|
validations:
|
|
@@ -1309,6 +1986,100 @@ status_sync:
|
|
|
1309
1986
|
note: "DEV 智能体会处理审查反馈"
|
|
1310
1987
|
```
|
|
1311
1988
|
|
|
1989
|
+
### 4. 强制状态更新操作 (MANDATORY)
|
|
1990
|
+
|
|
1991
|
+
> ⚠️ **关键**: 以下操作是**必须执行**的,不是可选的描述!
|
|
1992
|
+
|
|
1993
|
+
#### 4.1 Phase 4 开始前 - 创建 sprint-status.yaml
|
|
1994
|
+
|
|
1995
|
+
**必须首先执行** `*sprint-planning` 或手动创建:
|
|
1996
|
+
|
|
1997
|
+
```bash
|
|
1998
|
+
# 在 {sprint_artifacts} 目录创建 sprint-status.yaml
|
|
1999
|
+
# 示例路径: docs/sprint-artifacts/sprint-status.yaml
|
|
2000
|
+
```
|
|
2001
|
+
|
|
2002
|
+
```yaml
|
|
2003
|
+
# sprint-status.yaml - 必须创建此文件
|
|
2004
|
+
generated: "{date}"
|
|
2005
|
+
project: "{project_name}"
|
|
2006
|
+
tracking_system: file-system
|
|
2007
|
+
story_location: "{sprint_artifacts}"
|
|
2008
|
+
|
|
2009
|
+
development_status:
|
|
2010
|
+
epic-1: backlog
|
|
2011
|
+
1-1-story-name: backlog
|
|
2012
|
+
1-2-story-name: backlog
|
|
2013
|
+
# ... 列出所有故事
|
|
2014
|
+
```
|
|
2015
|
+
|
|
2016
|
+
#### 4.2 状态更新文件编辑操作
|
|
2017
|
+
|
|
2018
|
+
**每次状态变化时,必须执行以下两个更新**:
|
|
2019
|
+
|
|
2020
|
+
##### 更新 1: sprint-status.yaml
|
|
2021
|
+
|
|
2022
|
+
```yaml
|
|
2023
|
+
# 编辑 sprint-status.yaml 中的 development_status
|
|
2024
|
+
# 将故事状态从旧值改为新值
|
|
2025
|
+
|
|
2026
|
+
# 示例: 1-1-user-auth 从 backlog 变为 drafted
|
|
2027
|
+
development_status:
|
|
2028
|
+
1-1-user-auth: drafted # 原来是 backlog
|
|
2029
|
+
```
|
|
2030
|
+
|
|
2031
|
+
##### 更新 2: 故事文件
|
|
2032
|
+
|
|
2033
|
+
故事文件必须使用以下格式(符合 SM/DEV 智能体要求):
|
|
2034
|
+
|
|
2035
|
+
```markdown
|
|
2036
|
+
# Story 1.1: User Authentication
|
|
2037
|
+
|
|
2038
|
+
Status: drafted
|
|
2039
|
+
|
|
2040
|
+
## Story
|
|
2041
|
+
As a user,
|
|
2042
|
+
I want to authenticate,
|
|
2043
|
+
so that I can access the system.
|
|
2044
|
+
|
|
2045
|
+
## Acceptance Criteria
|
|
2046
|
+
...
|
|
2047
|
+
```
|
|
2048
|
+
|
|
2049
|
+
**状态行位置**: 在标题之后,第一个 `## ` 节之前
|
|
2050
|
+
|
|
2051
|
+
**允许的状态值**:
|
|
2052
|
+
- `drafted` - 故事文件已创建
|
|
2053
|
+
- `ready-for-dev` - 准备开发
|
|
2054
|
+
- `in-progress` - 开发中
|
|
2055
|
+
- `review` - 等待审查
|
|
2056
|
+
- `done` - 已完成
|
|
2057
|
+
|
|
2058
|
+
#### 4.3 状态更新检查点
|
|
2059
|
+
|
|
2060
|
+
在以下时间点**必须**更新状态:
|
|
2061
|
+
|
|
2062
|
+
| 时间点 | 触发动作 | 更新内容 |
|
|
2063
|
+
|--------|---------|---------|
|
|
2064
|
+
| `*create-story` 完成 | 故事文件创建 | `backlog → drafted` (或 `ready-for-dev`) |
|
|
2065
|
+
| `*develop-story` Step 4 | 开始开发 | `ready-for-dev → in-progress` |
|
|
2066
|
+
| `*develop-story` Step 9 | 开发完成 | `in-progress → review` |
|
|
2067
|
+
| `*code-review` APPROVED | 审查通过 | `review → done` |
|
|
2068
|
+
|
|
2069
|
+
#### 4.4 验证状态更新
|
|
2070
|
+
|
|
2071
|
+
每个阶段完成后,验证状态一致性:
|
|
2072
|
+
|
|
2073
|
+
```bash
|
|
2074
|
+
# 检查 sprint-status.yaml 中的状态
|
|
2075
|
+
grep "story-key" sprint-status.yaml
|
|
2076
|
+
|
|
2077
|
+
# 检查故事文件中的状态
|
|
2078
|
+
head -5 stories/story-key.md | grep "Status:"
|
|
2079
|
+
```
|
|
2080
|
+
|
|
2081
|
+
**状态必须同步**: `sprint-status.yaml` 和故事文件中的状态必须一致!
|
|
2082
|
+
|
|
1312
2083
|
---
|
|
1313
2084
|
|
|
1314
2085
|
## 执行完成
|