@modus-ai/modus 0.2.5 → 0.2.7
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 +62 -45
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +37 -6
- package/dist/commands/init.js.map +1 -1
- package/dist/generators/claude.js +1 -1
- package/dist/generators/claude.js.map +1 -1
- package/dist/generators/codebuddy.d.ts.map +1 -1
- package/dist/generators/codebuddy.js +3 -1
- package/dist/generators/codebuddy.js.map +1 -1
- package/dist/generators/codex.d.ts +10 -0
- package/dist/generators/codex.d.ts.map +1 -0
- package/dist/generators/codex.js +178 -0
- package/dist/generators/codex.js.map +1 -0
- package/dist/generators/cursor.d.ts.map +1 -1
- package/dist/generators/cursor.js +36 -7
- package/dist/generators/cursor.js.map +1 -1
- package/dist/generators/custom.d.ts +55 -0
- package/dist/generators/custom.d.ts.map +1 -0
- package/dist/generators/custom.js +166 -0
- package/dist/generators/custom.js.map +1 -0
- package/dist/generators/index.d.ts +1 -0
- package/dist/generators/index.d.ts.map +1 -1
- package/dist/generators/index.js +10 -0
- package/dist/generators/index.js.map +1 -1
- package/dist/utils/config.d.ts +6 -1
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js.map +1 -1
- package/package.json +1 -1
- package/schemas/harness-schema.yaml +178 -53
- package/templates/agents/modus-analyst.md +1 -1
- package/templates/commands/auto.md +61 -27
- package/templates/commands/harness.md +94 -34
- package/templates/commands/init.md +43 -10
- package/templates/commands/modus.md +55 -28
- package/templates/commands/plan.md +60 -18
- package/templates/commands/spec.md +69 -25
- package/templates/commands/upgrade.md +54 -0
- package/templates/commands/vibe.md +55 -5
- package/templates/knowledge-catalog.md +23 -10
- package/templates/skills/modus-agents/analyst/SKILL.md +11 -12
- package/templates/skills/modus-agents/developer/SKILL.md +14 -12
- package/templates/skills/modus-agents/reviewer/SKILL.md +50 -23
- package/templates/skills/modus-auto/SKILL.md +580 -123
- package/templates/skills/modus-design-brief/SKILL.md +17 -9
- package/templates/skills/modus-harness/SKILL.md +95 -96
- package/templates/skills/modus-init/SKILL.md +403 -188
- package/templates/skills/modus-plan/SKILL.md +16 -5
- package/templates/skills/modus-platform/SKILL.md +271 -0
- package/templates/skills/modus-vibe/SKILL.md +285 -187
|
@@ -8,8 +8,8 @@ disable: false
|
|
|
8
8
|
# modus-reviewer(代码评审 SubAgent)
|
|
9
9
|
|
|
10
10
|
**调用方:** Harness Orchestrator(Gate B 通过后触发)
|
|
11
|
-
**输入:** 全部产出物(01-analysis.md 至
|
|
12
|
-
**产出物:** `modus/
|
|
11
|
+
**输入:** 全部产出物(01-analysis.md 至 06-security-report.md)+ 代码变更
|
|
12
|
+
**产出物:** `modus/stories/{story-id}/harness/cr-report.md`
|
|
13
13
|
|
|
14
14
|
## 职责
|
|
15
15
|
|
|
@@ -56,15 +56,26 @@ disable: false
|
|
|
56
56
|
- 金额字段是否符合项目宪法的规范(以 `constitution.hard_rules` 为准,如规则为「金额字段使用 Long(单位:分)」则检查 Long 类型,如规则为「使用 BigDecimal」则检查 BigDecimal;**不得硬编码检查某一具体类型**)
|
|
57
57
|
- 若 `constitution.hard_rules` 未明确金额规范,则默认检查是否使用 BigDecimal,并在报告中标注「未找到金额规范配置,使用默认规则」
|
|
58
58
|
|
|
59
|
-
### 维度 3:测试覆盖(参考
|
|
59
|
+
### 维度 3:测试覆盖(参考 04-test-report.md)
|
|
60
60
|
|
|
61
61
|
- 核心业务逻辑是否有测试
|
|
62
62
|
- 测试是否覆盖了重要异常路径
|
|
63
63
|
|
|
64
|
-
### 维度 4:性能与安全(参考
|
|
64
|
+
### 维度 4:性能与安全(参考 05/06 报告)
|
|
65
65
|
|
|
66
|
-
|
|
67
|
-
|
|
66
|
+
**分级映射规则(将 05/06 报告分级转换为 CR 分级):**
|
|
67
|
+
|
|
68
|
+
| 来源报告 | 原始级别 | CR 级别 | 处理 |
|
|
69
|
+
|---------|---------|--------|------|
|
|
70
|
+
| 06-security-report | 严重 | P1 | 必须修复,触发 Loop 2 重入 |
|
|
71
|
+
| 06-security-report | 高风险 | P2 | 必须修复,触发 Loop 2 重入 |
|
|
72
|
+
| 06-security-report | 低风险 | P3 | 建议修复,不阻塞 |
|
|
73
|
+
| 05-perf-report | 高风险 | P2(若影响 SLA 则升为 P1)| 必须修复 |
|
|
74
|
+
| 05-perf-report | 中风险 | P3 | 建议修复,不阻塞 |
|
|
75
|
+
| 05-perf-report | 低风险 | P3 | 建议修复,不阻塞 |
|
|
76
|
+
|
|
77
|
+
- 06(安全)报告中「严重」和「高风险」问题是否已在代码中修复
|
|
78
|
+
- 05(性能)报告中「高风险」问题是否已修复
|
|
68
79
|
|
|
69
80
|
---
|
|
70
81
|
|
|
@@ -81,22 +92,33 @@ disable: false
|
|
|
81
92
|
## 产出物格式(cr-report.md)
|
|
82
93
|
|
|
83
94
|
```markdown
|
|
84
|
-
|
|
85
|
-
|
|
95
|
+
---
|
|
96
|
+
schema_version: "1.1"
|
|
97
|
+
agent: "07-review"
|
|
98
|
+
run_id: "{YYYYMMDD}-{story_id_prefix}"
|
|
86
99
|
story_id: "{story-id}"
|
|
100
|
+
task_id: ""
|
|
101
|
+
domains: ["{domain1}", "{domain2}"]
|
|
87
102
|
gate_status: "{passed|failed}"
|
|
103
|
+
artifact_status: "complete"
|
|
88
104
|
issues:
|
|
89
|
-
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
105
|
+
- level: "P1"
|
|
106
|
+
code: "P1-01"
|
|
107
|
+
agent: "07-review"
|
|
108
|
+
location: "{文件名}.java:{行号}"
|
|
93
109
|
summary: "{一句话问题摘要,供 Orchestrator 定位重入范围}"
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
110
|
+
suggestion: "{修复建议}"
|
|
111
|
+
affected_sprint: "{受影响的 Sprint 编号,如 Sprint 2}"
|
|
112
|
+
- level: "P2"
|
|
113
|
+
code: "P2-01"
|
|
114
|
+
agent: "07-review"
|
|
115
|
+
location: "{文件名}.java:{行号}"
|
|
98
116
|
summary: "{一句话问题摘要}"
|
|
99
|
-
|
|
117
|
+
suggestion: "{修复建议}"
|
|
118
|
+
affected_sprint: "{N}"
|
|
119
|
+
skill_refs:
|
|
120
|
+
- "modus-biz-{domain}@{version}"
|
|
121
|
+
---
|
|
100
122
|
|
|
101
123
|
# 代码评审报告
|
|
102
124
|
|
|
@@ -133,21 +155,26 @@ issues:
|
|
|
133
155
|
{如无 P1/P2 → "通过评审,可进入 Final Review"}
|
|
134
156
|
```
|
|
135
157
|
|
|
136
|
-
**HANDOFF
|
|
158
|
+
**HANDOFF 块填写规则(YAML frontmatter 格式,v1.1):**
|
|
137
159
|
- `gate_status`:无 P1/P2 → `passed`;有 P1/P2 → `failed`
|
|
138
160
|
- `issues`:仅列 P1/P2 问题(P3 不阻塞,Orchestrator 不读取);无 P1/P2 时写空列表 `issues: []`
|
|
139
|
-
- 每条 issue 的 `
|
|
140
|
-
-
|
|
161
|
+
- 每条 issue 的 `affected_sprint` 字段:填写受影响代码所属的 Sprint 编号(如「Sprint 2」),供 Orchestrator 精准定位重入范围
|
|
162
|
+
- 每条 issue 的 `code` 字段:填写问题编码(如 `P1-01`、`P2-03`),用于精准重入定位
|
|
163
|
+
- HANDOFF 块**必须位于文件最顶部(`---...---` YAML frontmatter)**,Orchestrator 仅读此块(≤ 25 行)以决策是否触发 Loop 2
|
|
141
164
|
|
|
142
165
|
---
|
|
143
166
|
|
|
144
167
|
## 创建 Bug 单(可选)
|
|
145
168
|
|
|
146
|
-
|
|
169
|
+
> **前置条件:** 需在 `{project}/modus/config.yaml` 中配置 `tapdProjectId`(非空)才能触发 Bug 创建。当前 `tapdProjectId: ""` 时跳过此步骤。
|
|
170
|
+
|
|
171
|
+
> **协调说明:** 如果 workspace 中已安装独立的 `tapd-bug-creator` Skill,**优先使用外部 Skill** 创建 Bug 单(职责更单一),本节逻辑作为降级兜底(外部 Skill 不可用时才启用)。两者不应同时执行。
|
|
172
|
+
|
|
173
|
+
如果满足前置条件,对于 P1/P2 问题自动创建 TAPD Bug 单:
|
|
147
174
|
|
|
148
175
|
- Bug 标题:`[Modus CR] {问题标题}`
|
|
149
176
|
- 关联 Story ID:`{当前 story-id}`
|
|
150
|
-
-
|
|
177
|
+
- 描述:包含代码位置(`location` 字段)、问题代码片段、修复方案(`suggestion` 字段)
|
|
151
178
|
- 严重程度:P1 → 严重,P2 → 一般
|
|
152
179
|
|
|
153
|
-
创建完成后将 Bug ID 写入 cr-report.md
|
|
180
|
+
创建完成后将 Bug ID 写入 cr-report.md 末尾的 `tapd_bugs` 列表。
|