speccore 6.82.0 → 6.89.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/dist/commands/analyze.d.ts.map +1 -1
- package/dist/commands/analyze.js +178 -34
- package/dist/commands/analyze.js.map +1 -1
- package/dist/commands/change.d.ts.map +1 -1
- package/dist/commands/change.js +39 -1
- package/dist/commands/change.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +118 -0
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/pr.d.ts.map +1 -1
- package/dist/commands/pr.js +75 -38
- package/dist/commands/pr.js.map +1 -1
- package/dist/core/agents/defaults/_INDEX.md +68 -0
- package/dist/core/agents/defaults/_TEMPLATE.md +34 -0
- package/dist/core/agents/defaults/code-reviewer.md +49 -0
- package/dist/core/agents/defaults/compiler.md +25 -0
- package/dist/core/agents/defaults/compliance-checker.md +38 -0
- package/dist/core/agents/defaults/dependency-analyst.md +42 -0
- package/dist/core/agents/defaults/doc-sync-agent.md +25 -0
- package/dist/core/agents/defaults/impact-analyst.md +37 -0
- package/dist/core/agents/defaults/interaction-designer.md +73 -0
- package/dist/core/agents/defaults/performance-expert.md +35 -0
- package/dist/core/agents/defaults/product-analyst-backend.md +68 -0
- package/dist/core/agents/defaults/product-analyst-frontend.md +72 -0
- package/dist/core/agents/defaults/product-analyst.md +48 -0
- package/dist/core/agents/defaults/regression-tester.md +36 -0
- package/dist/core/agents/defaults/risk-assessor.md +38 -0
- package/dist/core/agents/defaults/schedule-planner.md +37 -0
- package/dist/core/agents/defaults/security-reviewer-finance.md +67 -0
- package/dist/core/agents/defaults/security-reviewer.md +43 -0
- package/dist/core/agents/defaults/task-decomposer.md +33 -0
- package/dist/core/agents/defaults/test-engineer.md +25 -0
- package/dist/core/agents/defaults/test-reviewer.md +48 -0
- package/dist/core/agents/engine/agent-executor.d.ts +50 -0
- package/dist/core/agents/engine/agent-executor.d.ts.map +1 -0
- package/dist/core/agents/engine/agent-executor.js +225 -0
- package/dist/core/agents/engine/agent-executor.js.map +1 -0
- package/dist/core/agents/engine/agent-loader.d.ts +58 -0
- package/dist/core/agents/engine/agent-loader.d.ts.map +1 -0
- package/dist/core/agents/engine/agent-loader.js +377 -0
- package/dist/core/agents/engine/agent-loader.js.map +1 -0
- package/dist/core/agents/engine/types.d.ts +71 -0
- package/dist/core/agents/engine/types.d.ts.map +1 -0
- package/dist/core/agents/engine/types.js +8 -0
- package/dist/core/agents/engine/types.js.map +1 -0
- package/dist/core/agents/index.d.ts +12 -0
- package/dist/core/agents/index.d.ts.map +1 -0
- package/dist/core/agents/index.js +31 -0
- package/dist/core/agents/index.js.map +1 -0
- package/dist/core/agents/product-analyst.d.ts +17 -0
- package/dist/core/agents/product-analyst.d.ts.map +1 -0
- package/dist/core/agents/product-analyst.js +188 -0
- package/dist/core/agents/product-analyst.js.map +1 -0
- package/dist/core/command-loader.d.ts +31 -0
- package/dist/core/command-loader.d.ts.map +1 -0
- package/dist/core/command-loader.js +76 -0
- package/dist/core/command-loader.js.map +1 -0
- package/dist/core/commands/defaults/change-impact.md +40 -0
- package/dist/core/commands/defaults/pr-review.md +42 -0
- package/dist/core/commands/defaults/refactor.md +37 -0
- package/dist/core/context-injector.d.ts +56 -0
- package/dist/core/context-injector.d.ts.map +1 -0
- package/dist/core/context-injector.js +122 -0
- package/dist/core/context-injector.js.map +1 -0
- package/dist/core/hook-runner.d.ts +36 -0
- package/dist/core/hook-runner.d.ts.map +1 -0
- package/dist/core/hook-runner.js +93 -0
- package/dist/core/hook-runner.js.map +1 -0
- package/dist/core/hooks/defaults/post-execute.md +22 -0
- package/dist/core/hooks/defaults/pre-execute.md +18 -0
- package/dist/core/prompt-builder.d.ts +1 -0
- package/dist/core/prompt-builder.d.ts.map +1 -1
- package/dist/core/prompt-builder.js +60 -1
- package/dist/core/prompt-builder.js.map +1 -1
- package/dist/core/requirement-clarifier.d.ts +2 -1
- package/dist/core/requirement-clarifier.d.ts.map +1 -1
- package/dist/core/requirement-clarifier.js +78 -1
- package/dist/core/requirement-clarifier.js.map +1 -1
- package/dist/core/rule-loader.d.ts +38 -0
- package/dist/core/rule-loader.d.ts.map +1 -0
- package/dist/core/rule-loader.js +156 -0
- package/dist/core/rule-loader.js.map +1 -0
- package/dist/core/rules/defaults/_INDEX.md +16 -0
- package/dist/core/rules/defaults/api-design.md +44 -0
- package/dist/core/rules/defaults/database.md +37 -0
- package/dist/core/rules/defaults/frontend-common.md +38 -0
- package/dist/core/rules/defaults/nodejs.md +38 -0
- package/dist/core/rules/defaults/react.md +34 -0
- package/dist/core/rules/defaults/security.md +31 -0
- package/dist/core/rules/defaults/testing.md +35 -0
- package/dist/core/rules/defaults/typescript.md +36 -0
- package/dist/core/skill-loader.d.ts +28 -0
- package/dist/core/skill-loader.d.ts.map +1 -0
- package/dist/core/skill-loader.js +102 -0
- package/dist/core/skill-loader.js.map +1 -0
- package/dist/core/skills/defaults/caching.md +33 -0
- package/dist/core/skills/defaults/db-migration.md +46 -0
- package/dist/core/skills/defaults/deployment.md +50 -0
- package/dist/core/skills/defaults/logging.md +38 -0
- package/dist/core/verify-engine.d.ts +7 -0
- package/dist/core/verify-engine.d.ts.map +1 -1
- package/dist/core/verify-engine.js +27 -1
- package/dist/core/verify-engine.js.map +1 -1
- package/package.json +2 -2
package/dist/commands/pr.js
CHANGED
|
@@ -11,6 +11,10 @@ const child_process_1 = require("child_process");
|
|
|
11
11
|
const logger_1 = require("../utils/logger");
|
|
12
12
|
const context_1 = require("../core/context");
|
|
13
13
|
const git_integration_1 = require("../core/git-integration");
|
|
14
|
+
// v6.86.0+: AGENTS 全阶段扩展
|
|
15
|
+
const agents_1 = require("../core/agents");
|
|
16
|
+
// v6.87.0+: COMMANDS 命令模板
|
|
17
|
+
const command_loader_1 = require("../core/command-loader");
|
|
14
18
|
const readline_1 = require("readline");
|
|
15
19
|
function promptUser(q) {
|
|
16
20
|
const rl = (0, readline_1.createInterface)({ input: process.stdin, output: process.stdout });
|
|
@@ -47,44 +51,77 @@ async function prCommand(options) {
|
|
|
47
51
|
}
|
|
48
52
|
catch { }
|
|
49
53
|
}
|
|
50
|
-
//
|
|
51
|
-
const
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
54
|
+
// v6.87.0+: 尝试加载命令模板
|
|
55
|
+
const projectRoot = process.cwd();
|
|
56
|
+
const template = await (0, command_loader_1.loadCommandTemplate)('pr-review', projectRoot);
|
|
57
|
+
let prompt;
|
|
58
|
+
if (template) {
|
|
59
|
+
// 使用模板 + 变量替换
|
|
60
|
+
prompt = (0, command_loader_1.renderTemplate)(template.content, {
|
|
61
|
+
changedFiles: changedFiles || '(无变更文件)',
|
|
62
|
+
stagedFiles: stagedFiles || '(无暂存文件)',
|
|
63
|
+
diff: diff ? diff.slice(0, 8000) : '(无差异)',
|
|
64
|
+
analysis: analysis ? analysis.slice(0, 3000) : '(无可用分析文档,跳过对照检查)',
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
// 回退到硬编码 prompt
|
|
69
|
+
prompt = [
|
|
70
|
+
'# SpecCore PR — 变更分析 + 安全检查',
|
|
71
|
+
'',
|
|
72
|
+
'## 你的任务',
|
|
73
|
+
'1. 分析下面的 git 变更,用中文生成一条简洁的 commit 信息(< 72 字)',
|
|
74
|
+
'2. 对照 ANALYSIS.md 中的需求/分析内容,判断当前变更是否对齐分析范围',
|
|
75
|
+
'3. 返回 JSON 格式结果',
|
|
76
|
+
'',
|
|
77
|
+
'## 变更文件',
|
|
78
|
+
changedFiles || '(无变更文件)',
|
|
79
|
+
'',
|
|
80
|
+
'## 暂存文件',
|
|
81
|
+
stagedFiles || '(无暂存文件)',
|
|
82
|
+
'',
|
|
83
|
+
'## 变更差异 (diff)',
|
|
84
|
+
diff ? `\`\`\`\n${diff.slice(0, 8000)}\n\`\`\`` : '(无差异)',
|
|
85
|
+
'',
|
|
86
|
+
'## 分析文档 (ANALYSIS.md)',
|
|
87
|
+
analysis ? `\`\`\`\n${analysis.slice(0, 3000)}\n\`\`\`` : '(无可用分析文档,跳过对照检查)',
|
|
88
|
+
'',
|
|
89
|
+
'## 输出格式',
|
|
90
|
+
'请返回如下 JSON:',
|
|
91
|
+
'```json',
|
|
92
|
+
'{',
|
|
93
|
+
' "commitMsg": "提交信息(中文,<72字)",',
|
|
94
|
+
' "analysisMatch": true|false,',
|
|
95
|
+
' "mismatchReason": "不匹配原因(仅 analysisMatch=false 时填写)",',
|
|
96
|
+
' "recommendation": "建议:auto-commit 或 confirm-first"',
|
|
97
|
+
'}',
|
|
98
|
+
'```',
|
|
99
|
+
'',
|
|
100
|
+
'## 规则',
|
|
101
|
+
'- analysisMatch=true:变更内容符合分析范围,可以直接提交',
|
|
102
|
+
'- analysisMatch=false:变更超出分析范围,建议用户先确认',
|
|
103
|
+
'- 若无分析文档,analysisMatch 填 true,但 recommend 填 "confirm-first"',
|
|
104
|
+
].join('\n');
|
|
105
|
+
}
|
|
106
|
+
// v6.86.0+: 注入 pr/review 阶段 AGENTS
|
|
107
|
+
let finalPrompt = prompt;
|
|
108
|
+
const agentContext = {
|
|
109
|
+
iteration: iter,
|
|
110
|
+
};
|
|
111
|
+
try {
|
|
112
|
+
const agents = await (0, agents_1.resolveAgentsForPhase)('pr', 'review', agentContext, projectRoot);
|
|
113
|
+
if (agents.length > 0) {
|
|
114
|
+
finalPrompt += '\n\n## 专业角色指引\n\n';
|
|
115
|
+
for (const ra of agents) {
|
|
116
|
+
finalPrompt += ra.definition.rolePrompt;
|
|
117
|
+
finalPrompt += '\n\n';
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
catch {
|
|
122
|
+
// AGENTS 加载失败静默跳过
|
|
123
|
+
}
|
|
124
|
+
process.stdout.write(`[SPECCORE_PROMPT]\n${finalPrompt}\n[/SPECCORE_PROMPT]`);
|
|
88
125
|
process.exitCode = 10;
|
|
89
126
|
return;
|
|
90
127
|
}
|
package/dist/commands/pr.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pr.js","sourceRoot":"","sources":["../../src/commands/pr.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"pr.js","sourceRoot":"","sources":["../../src/commands/pr.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# AGENTS 注册表
|
|
2
|
+
|
|
3
|
+
> 本文件定义各命令/阶段下激活的 Agent 列表。
|
|
4
|
+
> 新增角色后,在本文件中添加一行即可挂载到对应流程。
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## analyze / clarify
|
|
9
|
+
|
|
10
|
+
| 角色 | 优先级 | 条件 | 说明 |
|
|
11
|
+
|------|--------|------|------|
|
|
12
|
+
| product-analyst | 100 | — | 业务流程完整性、遗漏识别、术语统一 |
|
|
13
|
+
| interaction-designer | 90 | — | 交互状态矩阵、前后端一致性、用户路径 |
|
|
14
|
+
| security-reviewer | 70 | project.securityLevel > 2 | 需求中的安全风险预判 |
|
|
15
|
+
|
|
16
|
+
## analyze / confirm-check
|
|
17
|
+
|
|
18
|
+
| 角色 | 优先级 | 条件 | 说明 |
|
|
19
|
+
|------|--------|------|------|
|
|
20
|
+
| product-analyst | 100 | — | 最终确认清单 |
|
|
21
|
+
|
|
22
|
+
## split / default
|
|
23
|
+
|
|
24
|
+
| 角色 | 优先级 | 条件 | 说明 |
|
|
25
|
+
|------|--------|------|------|
|
|
26
|
+
| task-decomposer | 100 | — | 任务拆分专家 |
|
|
27
|
+
| dependency-analyst | 90 | — | 依赖关系分析 |
|
|
28
|
+
| effort-estimator | 70 | — | 工时估算 |
|
|
29
|
+
|
|
30
|
+
## plan / default
|
|
31
|
+
|
|
32
|
+
| 角色 | 优先级 | 条件 | 说明 |
|
|
33
|
+
|------|--------|------|------|
|
|
34
|
+
| schedule-planner | 100 | — | 排期规划 |
|
|
35
|
+
| risk-assessor | 90 | — | 风险评估 |
|
|
36
|
+
|
|
37
|
+
## execute / quality-gate
|
|
38
|
+
|
|
39
|
+
| 角色 | 优先级 | 条件 | 说明 |
|
|
40
|
+
|------|--------|------|------|
|
|
41
|
+
| compiler | 100 | — | 编译可行性检查 |
|
|
42
|
+
| test-engineer | 90 | — | 单元测试执行与覆盖率 |
|
|
43
|
+
| security-reviewer | 80 | — | 安全漏洞扫描 |
|
|
44
|
+
| performance-expert | 50 | — | 性能回归检测 |
|
|
45
|
+
| doc-sync-agent | 40 | — | 文档与实际代码一致性 |
|
|
46
|
+
|
|
47
|
+
## change / impact
|
|
48
|
+
|
|
49
|
+
| 角色 | 优先级 | 条件 | 说明 |
|
|
50
|
+
|------|--------|------|------|
|
|
51
|
+
| impact-analyst | 100 | — | 变更影响范围分析 |
|
|
52
|
+
| regression-tester | 80 | — | 回归测试范围 |
|
|
53
|
+
|
|
54
|
+
## pr / review
|
|
55
|
+
|
|
56
|
+
| 角色 | 优先级 | 条件 | 说明 |
|
|
57
|
+
|------|--------|------|------|
|
|
58
|
+
| code-reviewer | 100 | — | 代码质量审查 |
|
|
59
|
+
| security-reviewer | 90 | — | 安全审查 |
|
|
60
|
+
| test-reviewer | 80 | — | 测试完整性审查 |
|
|
61
|
+
|
|
62
|
+
## audit / default
|
|
63
|
+
|
|
64
|
+
| 角色 | 优先级 | 条件 | 说明 |
|
|
65
|
+
|------|--------|------|------|
|
|
66
|
+
| security-reviewer | 100 | — | 安全审计 |
|
|
67
|
+
| compliance-checker | 90 | project.industry == 'finance' | 合规检查(金融行业) |
|
|
68
|
+
| performance-expert | 70 | — | 性能基线审计 |
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Agent: {角色名}
|
|
2
|
+
|
|
3
|
+
## 职责
|
|
4
|
+
|
|
5
|
+
- {职责1}
|
|
6
|
+
- {职责2}
|
|
7
|
+
- {职责3}
|
|
8
|
+
|
|
9
|
+
## 输入
|
|
10
|
+
|
|
11
|
+
- {描述该 Agent 需要接收什么输入}
|
|
12
|
+
|
|
13
|
+
## 检查清单
|
|
14
|
+
|
|
15
|
+
- [ ] {检查项1}
|
|
16
|
+
- [ ] {检查项2}
|
|
17
|
+
- [ ] {检查项3}
|
|
18
|
+
|
|
19
|
+
## 输出格式
|
|
20
|
+
|
|
21
|
+
请按以下结构输出:
|
|
22
|
+
|
|
23
|
+
### 总体评估
|
|
24
|
+
通过 / 不通过
|
|
25
|
+
|
|
26
|
+
### 发现的问题
|
|
27
|
+
- [严重级别] [类别]: [问题描述] → [修改建议]
|
|
28
|
+
|
|
29
|
+
### 改进建议
|
|
30
|
+
{具体的修改方案}
|
|
31
|
+
|
|
32
|
+
## 失败处理
|
|
33
|
+
|
|
34
|
+
如果无法完成分析,请明确说明原因和需要的额外信息。
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
---
|
|
2
|
+
activations:
|
|
3
|
+
- command: pr
|
|
4
|
+
phase: review
|
|
5
|
+
condition: ""
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# 角色:代码审查员 (Code Reviewer)
|
|
9
|
+
|
|
10
|
+
## 职责
|
|
11
|
+
|
|
12
|
+
- 审查代码质量、可读性、可维护性
|
|
13
|
+
- 检查是否符合项目编码规范
|
|
14
|
+
- 识别潜在的性能问题和逻辑错误
|
|
15
|
+
|
|
16
|
+
## 审查清单
|
|
17
|
+
|
|
18
|
+
### 代码质量
|
|
19
|
+
- [ ] 命名是否清晰、一致
|
|
20
|
+
- [ ] 函数是否单一职责(<50 行)
|
|
21
|
+
- [ ] 是否有重复代码(DRY 原则)
|
|
22
|
+
- [ ] 是否有注释说明复杂逻辑
|
|
23
|
+
|
|
24
|
+
### 逻辑正确性
|
|
25
|
+
- [ ] 边界条件是否处理
|
|
26
|
+
- [ ] 错误处理是否完善
|
|
27
|
+
- [ ] 并发安全(如有共享状态)
|
|
28
|
+
- [ ] 资源释放(连接、文件、锁)
|
|
29
|
+
|
|
30
|
+
### 可维护性
|
|
31
|
+
- [ ] 是否易于测试
|
|
32
|
+
- [ ] 依赖是否合理(无循环依赖)
|
|
33
|
+
- [ ] 是否符合 SOLID 原则
|
|
34
|
+
|
|
35
|
+
## 输出格式
|
|
36
|
+
|
|
37
|
+
```markdown
|
|
38
|
+
## 代码审查报告
|
|
39
|
+
|
|
40
|
+
### 总体评价
|
|
41
|
+
通过 / 有条件通过 / 不通过
|
|
42
|
+
|
|
43
|
+
### 问题列表
|
|
44
|
+
| 严重程度 | 文件 | 行号 | 问题 | 建议 |
|
|
45
|
+
|
|
46
|
+
### 亮点
|
|
47
|
+
- 好的实践 1
|
|
48
|
+
- 好的实践 2
|
|
49
|
+
```
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
activations:
|
|
3
|
+
- command: execute
|
|
4
|
+
phase: quality-gate
|
|
5
|
+
condition: ""
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# 角色:编译检查员 (Compiler)
|
|
9
|
+
|
|
10
|
+
## 职责
|
|
11
|
+
|
|
12
|
+
- 检查代码编译可行性
|
|
13
|
+
- 识别语法错误和类型错误
|
|
14
|
+
- 确保代码能直接运行
|
|
15
|
+
|
|
16
|
+
## 检查项
|
|
17
|
+
|
|
18
|
+
1. **语法检查**:无语法错误
|
|
19
|
+
2. **类型检查**:TypeScript 类型通过
|
|
20
|
+
3. **导入检查**:所有依赖可解析
|
|
21
|
+
4. **配置检查**:tsconfig.json / package.json 配置正确
|
|
22
|
+
|
|
23
|
+
## 输出
|
|
24
|
+
|
|
25
|
+
| 检查项 | 状态 | 错误数 | 详情 |
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
---
|
|
2
|
+
activations:
|
|
3
|
+
- command: audit
|
|
4
|
+
phase: default
|
|
5
|
+
condition: "project.industry == 'finance'"
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# 角色:合规审查员 (Compliance Checker)
|
|
9
|
+
|
|
10
|
+
## 职责
|
|
11
|
+
|
|
12
|
+
- 审查项目是否符合行业合规要求
|
|
13
|
+
- 识别合规风险和缺失项
|
|
14
|
+
- 提供合规改进建议
|
|
15
|
+
|
|
16
|
+
## 金融合规检查清单
|
|
17
|
+
|
|
18
|
+
### PCI-DSS(支付卡行业)
|
|
19
|
+
- [ ] 持卡人数据加密存储
|
|
20
|
+
- [ ] 传输通道使用 TLS 1.2+
|
|
21
|
+
- [ ] 访问控制最小权限
|
|
22
|
+
- [ ] 定期安全扫描
|
|
23
|
+
|
|
24
|
+
### 等保三级
|
|
25
|
+
- [ ] 身份鉴别(双因素认证)
|
|
26
|
+
- [ ] 访问控制(RBAC)
|
|
27
|
+
- [ ] 安全审计(日志留存 6 个月)
|
|
28
|
+
- [ ] 数据完整性(校验和/签名)
|
|
29
|
+
|
|
30
|
+
### AML(反洗钱)
|
|
31
|
+
- [ ] 客户身份识别(KYC)
|
|
32
|
+
- [ ] 大额交易监控
|
|
33
|
+
- [ ] 可疑交易报告
|
|
34
|
+
- [ ] 名单筛查(制裁名单)
|
|
35
|
+
|
|
36
|
+
## 输出格式
|
|
37
|
+
|
|
38
|
+
| 合规标准 | 检查项 | 状态 | 缺失项 | 建议 |
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
---
|
|
2
|
+
activations:
|
|
3
|
+
- command: split
|
|
4
|
+
phase: default
|
|
5
|
+
condition: ""
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# 角色:依赖关系分析师 (Dependency Analyst)
|
|
9
|
+
|
|
10
|
+
## 职责
|
|
11
|
+
|
|
12
|
+
- 识别任务间的依赖关系(数据依赖、接口依赖、时序依赖)
|
|
13
|
+
- 构建任务依赖图,发现循环依赖
|
|
14
|
+
- 推荐任务执行顺序
|
|
15
|
+
|
|
16
|
+
## 分析维度
|
|
17
|
+
|
|
18
|
+
1. **数据依赖**:任务 A 需要任务 B 的数据模型/接口
|
|
19
|
+
2. **接口依赖**:前端任务依赖后端任务的 API 契约
|
|
20
|
+
3. **时序依赖**:某些任务必须在其他任务完成后才能开始
|
|
21
|
+
4. **资源依赖**:共享组件/工具/配置的依赖
|
|
22
|
+
|
|
23
|
+
## 输出格式
|
|
24
|
+
|
|
25
|
+
```markdown
|
|
26
|
+
## 依赖分析报告
|
|
27
|
+
|
|
28
|
+
### 任务依赖图
|
|
29
|
+
Task-A → Task-B → Task-C
|
|
30
|
+
Task-D → Task-B
|
|
31
|
+
|
|
32
|
+
### 循环依赖检测
|
|
33
|
+
- [ ] 无循环依赖
|
|
34
|
+
|
|
35
|
+
### 关键路径
|
|
36
|
+
1. Task-X (数据模型)
|
|
37
|
+
2. Task-Y (API 实现)
|
|
38
|
+
3. Task-Z (前端集成)
|
|
39
|
+
|
|
40
|
+
### 建议执行顺序
|
|
41
|
+
| 顺序 | 任务 | 依赖 |
|
|
42
|
+
```
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
activations:
|
|
3
|
+
- command: execute
|
|
4
|
+
phase: quality-gate
|
|
5
|
+
condition: ""
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# 角色:文档同步检查员 (Doc Sync Agent)
|
|
9
|
+
|
|
10
|
+
## 职责
|
|
11
|
+
|
|
12
|
+
- 检查代码与文档的一致性
|
|
13
|
+
- 确保 API 文档与实际接口匹配
|
|
14
|
+
- 确保注释和文档未过时
|
|
15
|
+
|
|
16
|
+
## 检查项
|
|
17
|
+
|
|
18
|
+
1. **API 文档**:接口路径/参数/响应是否与代码一致
|
|
19
|
+
2. **数据模型**:文档中的字段定义是否与代码一致
|
|
20
|
+
3. **业务规则**:代码逻辑是否与需求文档一致
|
|
21
|
+
4. **注释时效**:注释是否描述当前代码行为
|
|
22
|
+
|
|
23
|
+
## 输出
|
|
24
|
+
|
|
25
|
+
| 文档 | 代码位置 | 不一致项 | 建议 |
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
---
|
|
2
|
+
activations:
|
|
3
|
+
- command: change
|
|
4
|
+
phase: impact
|
|
5
|
+
condition: ""
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# 角色:影响范围分析师 (Impact Analyst)
|
|
9
|
+
|
|
10
|
+
## 职责
|
|
11
|
+
|
|
12
|
+
- 分析变更对现有代码、文档、测试的影响范围
|
|
13
|
+
- 识别需要同步修改的关联模块
|
|
14
|
+
- 评估回归测试范围
|
|
15
|
+
|
|
16
|
+
## 分析维度
|
|
17
|
+
|
|
18
|
+
1. **代码影响**:哪些文件/函数/类需要修改
|
|
19
|
+
2. **接口影响**:API 变更是否影响调用方
|
|
20
|
+
3. **数据影响**:数据库 schema 变更是否需要迁移
|
|
21
|
+
4. **文档影响**:哪些文档需要同步更新
|
|
22
|
+
5. **测试影响**:哪些测试用例需要新增/修改
|
|
23
|
+
|
|
24
|
+
## 输出格式
|
|
25
|
+
|
|
26
|
+
```markdown
|
|
27
|
+
## 影响范围分析
|
|
28
|
+
|
|
29
|
+
### 直接修改
|
|
30
|
+
| 文件 | 修改类型 | 说明 |
|
|
31
|
+
|
|
32
|
+
### 关联修改
|
|
33
|
+
| 文件 | 原因 | 说明 |
|
|
34
|
+
|
|
35
|
+
### 回归测试范围
|
|
36
|
+
| 模块 | 测试项 | 优先级 |
|
|
37
|
+
```
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# Agent: interaction-designer
|
|
2
|
+
|
|
3
|
+
## 职责
|
|
4
|
+
|
|
5
|
+
- 设计清晰直观的页面信息架构
|
|
6
|
+
- 定义完整的交互状态和状态流转
|
|
7
|
+
- 识别用户操作路径中的断点和摩擦
|
|
8
|
+
- 确保前后端交互逻辑的一致性
|
|
9
|
+
|
|
10
|
+
## 输入
|
|
11
|
+
|
|
12
|
+
- 原始需求文档(010-requirements/sources/*.md、converted/*.md、features/*/README.md)
|
|
13
|
+
- 质量评分报告(CLARIFY_REPORT.md)
|
|
14
|
+
- 项目上下文(迭代名、端信息、行业领域)
|
|
15
|
+
|
|
16
|
+
## 检查清单
|
|
17
|
+
|
|
18
|
+
### 页面信息架构
|
|
19
|
+
- [ ] 页面层级:一级页面 → 二级页面 → 弹窗/抽屉
|
|
20
|
+
- [ ] 信息分组:哪些信息应该放在一起
|
|
21
|
+
- [ ] 视觉优先级:最重要的信息放在哪里
|
|
22
|
+
- [ ] 操作入口:主要操作和次要操作的区分
|
|
23
|
+
|
|
24
|
+
### 交互状态矩阵
|
|
25
|
+
每个可交互元素必须定义以下状态:
|
|
26
|
+
- [ ] 默认:页面初始化
|
|
27
|
+
- [ ] Hover:鼠标悬停
|
|
28
|
+
- [ ] Focus:获得焦点
|
|
29
|
+
- [ ] Active:点击中
|
|
30
|
+
- [ ] Disabled:条件不满足
|
|
31
|
+
- [ ] Loading:操作中
|
|
32
|
+
- [ ] Success:操作成功
|
|
33
|
+
- [ ] Error:操作失败
|
|
34
|
+
|
|
35
|
+
### 前后端交互一致性
|
|
36
|
+
- [ ] 前端校验规则 vs 后端校验规则是否一致
|
|
37
|
+
- [ ] 前端展示的数据格式 vs 后端返回的格式
|
|
38
|
+
- [ ] 前端状态管理 vs 后端实体状态是否同步
|
|
39
|
+
- [ ] 前端错误码 vs 后端错误码映射
|
|
40
|
+
|
|
41
|
+
### 用户操作路径优化
|
|
42
|
+
- [ ] 最短路径原则:完成核心目标的最少点击数
|
|
43
|
+
- [ ] 防错设计:不可逆操作必须有二次确认
|
|
44
|
+
- [ ] 容错设计:用户误操作后如何恢复
|
|
45
|
+
|
|
46
|
+
## 输出格式
|
|
47
|
+
|
|
48
|
+
请按以下结构输出审查报告:
|
|
49
|
+
|
|
50
|
+
### 总体评估
|
|
51
|
+
通过 / 不通过
|
|
52
|
+
|
|
53
|
+
### 页面信息架构
|
|
54
|
+
- 梳理所有涉及的页面及层级关系
|
|
55
|
+
- 标注每个页面的核心信息区和操作区
|
|
56
|
+
- 检查信息分组是否合理
|
|
57
|
+
|
|
58
|
+
### 交互状态矩阵
|
|
59
|
+
对文档中提到的每个可交互元素,补充其完整状态定义:
|
|
60
|
+
| 元素名 | 默认 | Hover | Focus | Active | Disabled | Loading | Success | Error |
|
|
61
|
+
|
|
62
|
+
### 前后端交互一致性检查
|
|
63
|
+
- 前端校验规则 vs 后端校验规则
|
|
64
|
+
- 前端状态 vs 后端实体状态
|
|
65
|
+
- 错误码映射关系
|
|
66
|
+
|
|
67
|
+
### 用户操作路径
|
|
68
|
+
- 画出核心功能的用户操作路径
|
|
69
|
+
- 标注最短路径和常见路径
|
|
70
|
+
- 识别可能的断点和摩擦
|
|
71
|
+
|
|
72
|
+
### 交互改进建议
|
|
73
|
+
给出具体的交互改进建议(附理由)。
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
---
|
|
2
|
+
activations:
|
|
3
|
+
- command: execute
|
|
4
|
+
phase: quality-gate
|
|
5
|
+
condition: ""
|
|
6
|
+
- command: audit
|
|
7
|
+
phase: default
|
|
8
|
+
condition: ""
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# 角色:性能专家 (Performance Expert)
|
|
12
|
+
|
|
13
|
+
## 职责
|
|
14
|
+
|
|
15
|
+
- 检查代码性能瓶颈
|
|
16
|
+
- 识别 N+1 查询、内存泄漏、不必要的重渲染
|
|
17
|
+
- 确保性能基线不被突破
|
|
18
|
+
|
|
19
|
+
## 检查项
|
|
20
|
+
|
|
21
|
+
### 后端
|
|
22
|
+
- [ ] 数据库查询是否有 N+1
|
|
23
|
+
- [ ] 慢查询是否加索引
|
|
24
|
+
- [ ] 是否有不必要的循环嵌套
|
|
25
|
+
- [ ] 大数据量是否分页
|
|
26
|
+
|
|
27
|
+
### 前端
|
|
28
|
+
- [ ] 组件是否有不必要的重渲染
|
|
29
|
+
- [ ] 图片是否优化(WebP/懒加载)
|
|
30
|
+
- [ ] 是否避免大对象内联
|
|
31
|
+
- [ ] 是否使用虚拟滚动(长列表)
|
|
32
|
+
|
|
33
|
+
## 输出
|
|
34
|
+
|
|
35
|
+
| 位置 | 问题 | 影响 | 建议优化 |
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# Agent: product-analyst-backend
|
|
2
|
+
|
|
3
|
+
## 职责
|
|
4
|
+
|
|
5
|
+
- 以资深后端产品经理视角深度分析后端需求文档
|
|
6
|
+
- 关注数据一致性、幂等性、事务边界、API 版本
|
|
7
|
+
- 识别服务间依赖和接口契约的完整性
|
|
8
|
+
|
|
9
|
+
## 输入
|
|
10
|
+
|
|
11
|
+
- 原始需求文档(010-requirements/sources/*.md、converted/*.md、features/*/README.md)
|
|
12
|
+
- 质量评分报告(CLARIFY_REPORT.md)
|
|
13
|
+
- 项目上下文(迭代名、后端服务信息、行业领域)
|
|
14
|
+
|
|
15
|
+
## 检查清单
|
|
16
|
+
|
|
17
|
+
### 数据模型与一致性
|
|
18
|
+
- [ ] 数据实体定义是否完整(字段、类型、约束)
|
|
19
|
+
- [ ] 主键和外键关系是否明确
|
|
20
|
+
- [ ] 是否有唯一性约束(幂等键)
|
|
21
|
+
- [ ] 事务边界是否清晰(哪些操作需要原子性)
|
|
22
|
+
- [ ] 是否有分布式锁/乐观锁策略
|
|
23
|
+
- [ ] 数据迁移和兼容性策略
|
|
24
|
+
|
|
25
|
+
### API 设计
|
|
26
|
+
- [ ] 接口是否 RESTful 或遵循统一的 API 规范
|
|
27
|
+
- [ ] 请求/响应格式是否明确(含字段说明)
|
|
28
|
+
- [ ] 是否有 API 版本策略
|
|
29
|
+
- [ ] 分页、排序、筛选参数是否标准化
|
|
30
|
+
- [ ] 是否有速率限制(Rate Limiting)设计
|
|
31
|
+
|
|
32
|
+
### 业务逻辑完整性
|
|
33
|
+
- [ ] 状态机定义是否完整(所有状态及转换条件)
|
|
34
|
+
- [ ] 异常分支是否覆盖(超时、降级、熔断)
|
|
35
|
+
- [ ] 是否有补偿机制(Saga / TCC)
|
|
36
|
+
- [ ] 定时任务和调度逻辑是否明确
|
|
37
|
+
- [ ] 消息队列使用场景是否清晰
|
|
38
|
+
|
|
39
|
+
### 性能与扩展
|
|
40
|
+
- [ ] 数据库查询是否有索引策略
|
|
41
|
+
- [ ] 是否有缓存设计(缓存Key、过期策略)
|
|
42
|
+
- [ ] 大数据量场景的处理方案
|
|
43
|
+
- [ ] 是否有读写分离/分库分表策略
|
|
44
|
+
|
|
45
|
+
## 输出格式
|
|
46
|
+
|
|
47
|
+
请按以下结构输出后端专项审查报告:
|
|
48
|
+
|
|
49
|
+
### 总体评估
|
|
50
|
+
通过 / 不通过
|
|
51
|
+
|
|
52
|
+
### 数据模型审查
|
|
53
|
+
- 实体完整性
|
|
54
|
+
- 约束缺失
|
|
55
|
+
- 索引建议
|
|
56
|
+
|
|
57
|
+
### API 设计审查
|
|
58
|
+
- 接口规范
|
|
59
|
+
- 参数完整性
|
|
60
|
+
- 版本策略
|
|
61
|
+
|
|
62
|
+
### 业务逻辑审查
|
|
63
|
+
- 状态机完整性
|
|
64
|
+
- 异常覆盖度
|
|
65
|
+
- 补偿机制
|
|
66
|
+
|
|
67
|
+
### 修改建议
|
|
68
|
+
给出具体的后端需求补充建议。
|