openmatrix 0.2.26 → 0.2.27

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/skills/deploy.md CHANGED
@@ -36,7 +36,7 @@ description: "Triggers on DEPLOYMENT intent: user wants to deploy, publish, set
36
36
  </INTENT-JUDGMENT>
37
37
 
38
38
  <NO-OTHER-SKILLS>
39
- 执行此技能时,不得调用 superpowers、gsd 或其他任务编排相关的技能。
39
+ skill 与其他任务编排技能功能重叠,请勿同时使用。
40
40
  </NO-OTHER-SKILLS>
41
41
 
42
42
  <objective>
package/skills/feature.md CHANGED
@@ -36,13 +36,11 @@ priority: high
36
36
  </INTENT-JUDGMENT>
37
37
 
38
38
  <NO-OTHER-SKILLS>
39
- **绝对禁止**调用以下技能:
40
- - ❌ superpowers:brainstorming → 用 /om:brainstorm 代替
41
- - ❌ superpowers:* → 全部被 OpenMatrix 替代
42
- - ❌ gsd:* → 全部被 OpenMatrix 替代
43
- - ❌ /om:start / /om:auto → 本 skill 是轻量版,不调用完整流程
39
+ 本 skill 与其他任务编排技能功能重叠,请勿同时使用。
44
40
 
45
- **任务执行阶段只能使用 Agent 工具** 直接调用 Agent,不通过任何中间层。
41
+ skill 是轻量版,不调用 /om:start /om:auto 完整流程。
42
+
43
+ **任务执行阶段使用 Agent 工具。**
46
44
 
47
45
  **相关技能**: `/om` (主入口) | `/om:start` (标准任务) | `/om:brainstorm` (复杂任务)
48
46
  </NO-OTHER-SKILLS>
@@ -585,17 +583,22 @@ $ARGUMENTS
585
583
  - 不得跳过任务边界确认
586
584
  - 不得在 Agent 内部执行任何 Git 操作(commit/checkout/merge/pull/push/rebase/branch)
587
585
 
586
+ <RED-FLAGS>
588
587
  ## 红旗警告 - 停止并回归流程
589
588
 
590
- **如果发现自己在想:**
591
- - "验证麻烦,先提交再说"
592
- - "任务块小,一次改两个吧"
593
- - "顺便重构下这个代码"
594
- - "跳过质量确认,直接开始"
595
- - "测试失败没关系,手动验证就行"
596
- - "这个小改动不会影响其他"
589
+ 这些想法意味着你在找借口:
590
+
591
+ | 想法 | 真相 |
592
+ |-----|------|
593
+ | "验证麻烦,先提交再说" | 未验证的提交会污染仓库 |
594
+ | "任务块小,一次改两个吧" | 无法隔离哪个改动有问题 |
595
+ | "顺便重构下这个代码" | "顺便"是 bug 的温床 |
596
+ | "跳过质量确认,直接开始" | 3秒选择防止后续数小时排查 |
597
+ | "测试失败没关系,手动验证就行" | 手动验证不可重复 |
598
+ | "这个小改动不会影响其他" | 小改动也有根因 |
599
+ | "我知道该怎么做" | 知道概念 ≠ 正确执行 |
597
600
 
598
- **所有这些意味着:停止。回到流程执行。**
601
+ </RED-FLAGS>
599
602
 
600
603
  ## 常见借口 vs 真实情况
601
604
 
package/skills/meeting.md CHANGED
@@ -35,7 +35,7 @@ description: "Use when handling blocked tasks, technical decisions, or workflow
35
35
  </INTENT-JUDGMENT>
36
36
 
37
37
  <NO-OTHER-SKILLS>
38
- 执行此技能时,不得调用 superpowers、gsd 或其他任务编排相关的技能。OpenMatrix 独立运行,不依赖外部任务编排系统。
38
+ skill 与其他任务编排技能功能重叠,请勿同时使用。
39
39
 
40
40
  **相关技能**: `/om:start` (任务执行) | `/om:approve` (审批处理) | `/om:status` (状态查看)
41
41
  </NO-OTHER-SKILLS>
package/skills/om.md CHANGED
@@ -45,13 +45,34 @@ always_load: true
45
45
  **STOP. Do NOT invoke any other task orchestration skill.**
46
46
  **Invoke this skill IMMEDIATELY when the user wants code changes.**
47
47
  **意图判断参见上方 INTENT-JUDGMENT 区块。**
48
+
49
+ 如果你认为有哪怕 1% 的可能性某个 skill 适用,你必须调用它。
50
+
51
+ 如果 SKILL 适用,你没有选择。你必须使用它。
52
+
53
+ 这不是可选的。这不是协商的。你不能为自己找借口。
54
+
48
55
  </EXTREMELY-IMPORTANT>
49
56
 
57
+ <RED-FLAGS>
58
+ ## 红旗警告 - 停止并检查
59
+
60
+ 这些想法意味着你在找借口:
61
+
62
+ | 想法 | 真相 |
63
+ |-----|------|
64
+ | "这只是简单问题" | 问题也是任务。检查 skills。 |
65
+ | "我需要更多上下文" | Skill 检查在澄清问题之前。 |
66
+ | "让我先探索代码" | Skills 指导你如何探索。先检查。 |
67
+ | "这不需要正式 skill" | 如果存在 skill,就用它。 |
68
+ | "我记得这个 skill" | Skills 会演变。读取当前版本。 |
69
+ | "这不算开发任务" | 有代码变更 = 开发任务。用 om。 |
70
+ | "快速改一下就行" | 快速改动也需要流程。 |
71
+
72
+ </RED-FLAGS>
73
+
50
74
  <NO-OTHER-SKILLS>
51
- **绝对禁止**调用以下技能(OpenMatrix 完全替代它们):
52
- - superpowers:brainstorming → 用 /om:brainstorm 代替
53
- - superpowers:write-plan / execute-plan → OpenMatrix 有自己的流程
54
- - superpowers:* / gsd:* → 全部被 OpenMatrix 替代
75
+ skill 与其他任务编排技能功能重叠,请勿同时使用。
55
76
  </NO-OTHER-SKILLS>
56
77
 
57
78
  <objective>
@@ -192,7 +213,52 @@ $ARGUMENTS
192
213
 
193
214
  **推荐倾向:** 标准流程需要"任务足够明确"才推荐,不明确时先澄清。
194
215
 
195
- **brainstorm 后自动路由:** 澄清完成后,AI 根据澄清结果自动判断是 feature 还是 start,不再让用户二次选择。
216
+ ## brainstorm 后自动路由
217
+
218
+ 澄清完成后,AI 根据澄清结果的复杂度自动判断是 feature 还是 start,不再让用户二次选择。
219
+
220
+ ### 判断规则(基于澄清后的 goals 数量)
221
+
222
+ | 条件 | 路由 | 理由 |
223
+ |------|------|------|
224
+ | goals ≤ 2 | **feature** | 任务块少,轻量追踪足够 |
225
+ | goals > 2 | **start** | 需要完整追踪和质量门禁 |
226
+ | 涉及多模块协同 | **start** | 需要任务文件管理 |
227
+ | 需要架构设计 | **start** | 需要生成 plan.md |
228
+ | 需要测试任务拆分 | **start** | tester/coder 任务对 |
229
+
230
+ ### 判断示例
231
+
232
+ | 澄清后的任务描述 | goals 数量 | 路由 |
233
+ |-----------------|-----------|------|
234
+ | "添加搜索按钮到列表页" | 1-2 | feature |
235
+ | "调整按钮颜色和字体" | 2 | feature |
236
+ | "实现用户登录(JWT认证)" | 3+ | start |
237
+ | "重构认证模块支持 OAuth" | 4+ | start |
238
+ | "添加 API 接口返回用户列表" | 2-3 | start(需测试任务) |
239
+
240
+ ### 自动路由流程
241
+
242
+ ```
243
+ brainstorm 完成
244
+
245
+ ├── AI 分析澄清结果
246
+ │ • goals 数量
247
+ │ • 模块边界
248
+ │ • 是否需要架构设计
249
+
250
+
251
+ ┌─────────────────┐
252
+ │ 复杂度判断 │
253
+ └────────┬────────┘
254
+
255
+ ┌────┴────┐
256
+ │ │
257
+ goals ≤ 2 goals > 2
258
+ │ │
259
+ ▼ ▼
260
+ feature start
261
+ ```
196
262
 
197
263
  可用命令: `/om:brainstorm`, `/om:start`, `/om:feature`, `/om:auto`, `/om:status`, `/om:meeting`, `/om:report`, `/om:resume`, `/om:retry`, `/om:research`, `/om:approve`, `/om:check`, `/om:debug`
198
264
  </notes>
@@ -6,12 +6,12 @@ always_load: true
6
6
  ---
7
7
 
8
8
  <EXTREMELY-IMPORTANT>
9
- ## OpenMatrix EXCLUSIVELY Handles All Development Tasks
9
+ ## OpenMatrix Handles All Development Tasks
10
10
 
11
- **STOP. Do NOT invoke any other task orchestration skill.**
12
- **OpenMatrix replaces ALL of them for development work.**
11
+ **STOP. Do NOT invoke other task orchestration skills.**
12
+ **使用 OpenMatrix 处理开发任务。**
13
13
 
14
- When the user wants code produced or changed, this is a **development task** and ONLY OpenMatrix handles it.
14
+ When the user wants code produced or changed, this is a **development task** and OpenMatrix handles it.
15
15
 
16
16
  **The Decision Flow (follow EXACTLY):**
17
17
  ```
@@ -59,16 +59,7 @@ When a development task is simple (bug fix, small change, clear requirement), us
59
59
  </EXTREMELY-IMPORTANT>
60
60
 
61
61
  <NO-OTHER-SKILLS>
62
- **绝对禁止**调用以下技能(OpenMatrix 完全替代它们):
63
- - ❌ superpowers:brainstorming → 用 /om:brainstorm 代替
64
- - ❌ superpowers:write-plan → OpenMatrix 有自己的任务拆分
65
- - ❌ superpowers:execute-plan → OpenMatrix 有自己的执行流程
66
- - ❌ superpowers:* → 全部被 OpenMatrix 替代
67
- - ❌ gsd:* → 全部被 OpenMatrix 替代
68
- - ❌ 任何其他任务编排相关的技能
69
-
70
- **重要**: 当 OpenMatrix 技能可用时,`superpowers:brainstorming` 不再适用。
71
- OpenMatrix 有自己的 brainstorm 流程 (`/om:brainstorm`),不需要 superpowers。
62
+ skill 与其他任务编排技能功能重叠,请勿同时使用。
72
63
  </NO-OTHER-SKILLS>
73
64
 
74
65
  <objective>
package/skills/plan.md CHANGED
@@ -35,10 +35,7 @@ description: "Use when user needs to generate a technical plan before task execu
35
35
  </INTENT-JUDGMENT>
36
36
 
37
37
  <NO-OTHER-SKILLS>
38
- **绝对禁止**调用以下任何技能或工具:
39
- - gsd-executor、gsd:* 等 GSD 相关技能
40
- - superpowers:* 等 superpowers 相关技能
41
- - 任何其他任务编排相关的 Agent 或工具
38
+ 本 skill 与其他任务编排技能功能重叠,请勿同时使用。
42
39
 
43
40
  **相关技能**: `/om:brainstorm` (需求探索) | `/om:start` (标准执行) | `/om:feature` (轻量执行) | `/om:auto` (全自动)
44
41
  </NO-OTHER-SKILLS>
@@ -47,15 +44,17 @@ description: "Use when user needs to generate a technical plan before task execu
47
44
  ## 执行顺序 - 必须严格按此顺序,不得跳过任何步骤
48
45
 
49
46
  ```
47
+ Step 0: 获取当前 runId(读取 .openmatrix/current.json)
50
48
  Step 1: 读取输入(brainstorm 设计文档 / 用户描述 / 研究上下文)
51
- Step 2: 生成技术方案,写入 .openmatrix/plan.md <- 独立阶段
49
+ Step 2: 生成技术方案,写入 .openmatrix/{runId}/plan.md <- 独立阶段
52
50
  Step 3: 提取结构化元数据(goals/goalTypes/goalComplexity)
53
- Step 4: 写入 .openmatrix/tasks-input.json <- 必须完成
51
+ Step 4: 写入 .openmatrix/{runId}/tasks-input.json <- 必须完成
54
52
  Step 5: 展示执行计划,确认后路由到 start/feature
55
53
  ```
56
54
 
57
55
  **违反以下任一规则将导致方案质量下降:**
58
56
 
57
+ - **禁止跳过 Step 0** - runId 是文件隔离的关键
59
58
  - **禁止跳过 Step 2** - plan.md 是 Agent 执行的核心参考
60
59
  - **禁止跳过 Step 3** - goalTypes/goalComplexity 决定任务拆分策略
61
60
  - **禁止在 plan 阶段写任何业务代码** - 代码在 start/feature 阶段由 Agent 执行
@@ -65,29 +64,42 @@ Step 5: 展示执行计划,确认后路由到 start/feature
65
64
  基于需求分析(brainstorm 产出或用户描述),生成完整的技术方案(plan.md)和结构化元数据(tasks-input.json),为后续执行提供可操作的输入。
66
65
 
67
66
  plan 阶段只做方案设计和元数据提取,不写任何业务代码。
67
+
68
+ **文件隔离**: 所有文件写入 `.openmatrix/{runId}/` 目录,通过 current.json 获取 runId。
68
69
  </objective>
69
70
 
70
71
  <process>
71
72
 
73
+ ## Step 0: 获取当前 runId
74
+
75
+ **读取 current.json 获取当前运行 ID:**
76
+ ```bash
77
+ cat .openmatrix/current.json 2>/dev/null || echo '{"runId":"run-default"}'
78
+ ```
79
+
80
+ 从返回结果提取 `runId`,后续所有文件写入 `.openmatrix/{runId}/` 目录。
81
+
82
+ **如果没有 runId 或目录不存在:**
83
+ ```bash
84
+ openmatrix start --init-only --json
85
+ ```
86
+
87
+ CLI 返回当前 runId。
88
+
72
89
  ## Step 1: 读取输入
73
90
 
74
- **按优先级检测输入来源:**
91
+ **按优先级检测输入来源(从 {runId} 目录读取):**
75
92
 
76
93
  | 来源 | 检测方式 | 处理 |
77
94
  |------|---------|------|
78
95
  | brainstorm 设计文档 | `docs/openmatrix/YYYY-MM-DD-*-design.md` | 读取最新设计文档 |
79
- | 研究上下文 | `.openmatrix/research/context.json` | 读取研究目标和报告 |
96
+ | 研究上下文 | `.openmatrix/{runId}/research/context.json` | 读取研究目标和报告 |
80
97
  | `$ARGUMENTS` 直接描述 | 参数非空 | 直接使用 |
81
98
  | 无输入 | 以上都不存在 | AskUserQuestion 询问 |
82
99
 
83
- **检测 brainstorm 设计文档:**
84
- ```bash
85
- ls -t docs/openmatrix/*-design.md 2>/dev/null | head -1
86
- ```
87
-
88
- **检测研究上下文:**
100
+ **检测研究上下文(使用 runId):**
89
101
  ```bash
90
- cat .openmatrix/research/context.json 2>/dev/null || echo "NO_RESEARCH"
102
+ cat .openmatrix/${runId}/research/context.json 2>/dev/null || echo "NO_RESEARCH"
91
103
  ```
92
104
 
93
105
  如果检测到研究上下文,同时读取研究报告作为领域知识。
@@ -96,7 +108,13 @@ cat .openmatrix/research/context.json 2>/dev/null || echo "NO_RESEARCH"
96
108
 
97
109
  **独立阶段 — 产出供 Agent 执行时参考的技术方案文档。**
98
110
 
99
- AI 分析需求,生成完整的技术方案,用 Write 工具写入 `.openmatrix/plan.md`:
111
+ **写入路径: `.openmatrix/{runId}/plan.md`(使用 Step 0 获取的 runId)**
112
+
113
+ AI 分析需求,生成完整的技术方案,用 Write 工具写入:
114
+
115
+ ```
116
+ .openmatrix/{runId}/plan.md
117
+ ```
100
118
 
101
119
  ```markdown
102
120
  # 技术方案: 任务标题
@@ -154,7 +172,9 @@ AI 分析需求,生成完整的技术方案,用 Write 工具写入 `.openmat
154
172
 
155
173
  ## Step 4: 写入 tasks-input.json
156
174
 
157
- Write 工具写入 `.openmatrix/tasks-input.json`:
175
+ **写入路径: `.openmatrix/{runId}/tasks-input.json`(使用 Step 0 获取的 runId)**
176
+
177
+ 用 Write 工具写入:
158
178
 
159
179
  ```json
160
180
  {
@@ -189,7 +209,8 @@ Goals:
189
209
 
190
210
  质量配置、E2E、执行模式 将在执行阶段选择。
191
211
 
192
- 技术方案已写入: .openmatrix/plan.md
212
+ 技术方案已写入: .openmatrix/{runId}/plan.md
213
+ 任务输入已写入: .openmatrix/{runId}/tasks-input.json
193
214
  ```
194
215
 
195
216
  **路由判断:**
@@ -238,6 +259,15 @@ plan 是连接需求和执行的桥梁:
238
259
  - 输入: brainstorm 产出的设计文档 / 用户描述
239
260
  - 输出: plan.md (AI Agent 参考) + tasks-input.json (CLI 解析)
240
261
 
262
+ ## 文件隔离
263
+
264
+ 所有 plan 相关文件写入 `.openmatrix/{runId}/` 目录:
265
+ - `.openmatrix/{runId}/plan.md` - 技术方案
266
+ - `.openmatrix/{runId}/tasks-input.json` - 任务输入元数据
267
+ - `.openmatrix/{runId}/research/context.json` - 研究上下文(如果有)
268
+
269
+ runId 通过 `current.json` 获取,确保不同运行之间数据隔离。
270
+
241
271
  ## 与其他 Skill 的关系
242
272
 
243
273
  | Skill | plan 的角色 |
@@ -255,7 +285,12 @@ plan 是连接需求和执行的桥梁:
255
285
 
256
286
  ## 检测已有 plan
257
287
 
258
- 如果 `.openmatrix/plan.md` 已存在:
288
+ 如果 `.openmatrix/{runId}/plan.md` 已存在:
259
289
  - 询问用户:使用已有方案 / 重新生成
260
290
  - 使用已有方案时,跳过 Step 2,直接进入 Step 3 提取元数据
291
+
292
+ 通过 CLI 检查:
293
+ ```bash
294
+ openmatrix status --json | jq '.files.hasPlan'
295
+ ```
261
296
  </notes>
package/skills/report.md CHANGED
@@ -35,7 +35,7 @@ description: "Use when generating a task execution report with statistics, task
35
35
  </INTENT-JUDGMENT>
36
36
 
37
37
  <NO-OTHER-SKILLS>
38
- 执行此技能时,不得调用 superpowers、gsd 或其他任务编排相关的技能。OpenMatrix 独立运行,不依赖外部任务编排系统。
38
+ skill 与其他任务编排技能功能重叠,请勿同时使用。
39
39
  </NO-OTHER-SKILLS>
40
40
 
41
41
  <objective>
@@ -35,11 +35,26 @@ description: "Use when conducting domain research before implementing vertical-d
35
35
  </INTENT-JUDGMENT>
36
36
 
37
37
  <NO-OTHER-SKILLS>
38
- 执行此技能时,不得调用其他任务编排相关的技能。OpenMatrix 独立运行,不依赖外部任务编排系统。
38
+ skill 与其他任务编排技能功能重叠,请勿同时使用。
39
39
 
40
40
  **相关技能**: `/om:brainstorm` (需求探索) | `/om:start` (任务执行)
41
41
  </NO-OTHER-SKILLS>
42
42
 
43
+ <RED-FLAGS>
44
+ ## 红旗警告 - 停止并检查
45
+
46
+ 这些想法意味着你在找借口:
47
+
48
+ | 想法 | 真相 |
49
+ |-----|------|
50
+ | "直接开始,不用调研" | 垂直领域需要知识基础 |
51
+ | "我懂这个领域" | 领域知识 ≠ 实践细节 |
52
+ | "问太多问题浪费时间" | 缺信息导致返工更慢 |
53
+ | "研究报告不重要" | 报告是后续执行的参考 |
54
+ | "跳过用户确认直接研究" | 确认防止研究方向偏离 |
55
+
56
+ </RED-FLAGS>
57
+
43
58
  <objective>
44
59
  在执行垂直领域任务前,由 AI 分析主题、识别领域、引导用户补全信息、生成领域专属文档,为后续 start 提供扎实的知识基础。
45
60
  </objective>
package/skills/resume.md CHANGED
@@ -35,11 +35,9 @@ priority: high
35
35
  </INTENT-JUDGMENT>
36
36
 
37
37
  <NO-OTHER-SKILLS>
38
- **绝对禁止**调用以下技能:
39
- - ❌ superpowers:brainstorming → 用 /om:brainstorm 代替
40
- - superpowers:* 全部被 OpenMatrix 替代
41
- - ❌ gsd:* → 全部被 OpenMatrix 替代
42
- - ❌ /om:start / /om:auto → 本 skill 是恢复流程,不调用完整流程
38
+ 本 skill 与其他任务编排技能功能重叠,请勿同时使用。
39
+
40
+ skill 是恢复流程,不调用 /om:start /om:auto 完整流程。
43
41
  </NO-OTHER-SKILLS>
44
42
 
45
43
  <objective>
package/skills/retry.md CHANGED
@@ -34,7 +34,7 @@ description: "Use when retrying failed tasks after execution errors, test failur
34
34
  </INTENT-JUDGMENT>
35
35
 
36
36
  <NO-OTHER-SKILLS>
37
- 执行此技能时,不得调用 superpowers、gsd 或其他任务编排相关的技能。OpenMatrix 独立运行,不依赖外部任务编排系统。
37
+ skill 与其他任务编排技能功能重叠,请勿同时使用。
38
38
  </NO-OTHER-SKILLS>
39
39
 
40
40
  <objective>
package/skills/start.md CHANGED
@@ -37,14 +37,9 @@ description: "Use when starting a new development task cycle with interactive qu
37
37
  </INTENT-JUDGMENT>
38
38
 
39
39
  <NO-OTHER-SKILLS>
40
- **绝对禁止**调用以下任何技能或工具:
41
- - gsd-executor、gsd:* 等 GSD 相关技能
42
- - superpowers:* 等 superpowers 相关技能
43
- - 任何其他任务编排相关的 Agent 或工具
40
+ 本 skill 与其他任务编排技能功能重叠,请勿同时使用。
44
41
 
45
- **Step 9 只能使用 Agent 工具** — 直接调用 Agent,不通过任何中间层。
46
-
47
- 违规调用将导致执行失败。
42
+ **Step 9 使用 Agent 工具执行子任务。**
48
43
 
49
44
  **相关技能**: `/om:brainstorm` (需求探索) | `/om:plan` (方案生成) | `/om:auto` (全自动) | `/om:meeting` (阻塞处理) | `/om:status` (状态查看) | `/om:report` (报告)
50
45
  </NO-OTHER-SKILLS>
@@ -71,10 +66,36 @@ Step 9: 逐个执行 subagentTasks(调用 Agent 工具) <- 只有
71
66
  - **禁止跳过 Step 7** — 必须调用 CLI,不能用其他方式代替
72
67
  - **禁止自行规划 Phase** — 任务由 CLI 的 TaskPlanner 拆分,AI 只提取 goals
73
68
  - **禁止用 Bash/npm/write 直接写业务代码** — 业务代码只能通过 Step 9 的 Agent 执行
74
- - **禁止调用 gsd-executor 或其他编排技能** — 必须用原生 Agent 工具
75
69
  - **禁止在 start 中生成 plan** — plan 由 /om:plan 生成,start 只负责执行
70
+ - **使用 Agent 工具执行子任务** — 不通过其他编排系统
76
71
  </MANDATORY-EXECUTION-ORDER>
77
72
 
73
+ <IRON-LAW>
74
+
75
+ **NO PRODUCTION CODE WITHOUT QUALITY GATES FIRST**
76
+
77
+ 跳过了必选问题?停止。重新开始。
78
+ 写了代码但没跑测试?删除。重新开始。
79
+ 这不是建议。这是铁律。
80
+
81
+ </IRON-LAW>
82
+
83
+ <RED-FLAGS>
84
+
85
+ 这些想法意味着停止:
86
+
87
+ | 想法 | 真相 |
88
+ |-----|------|
89
+ | "先写代码,测试稍后" | 跳过铁律 = 质量无保证 |
90
+ | "这个任务很简单" | 简单任务也要质量门禁 |
91
+ | "手动验证就够了" | 手动验证不可重复 |
92
+ | "质量级别不重要" | 质量级别决定代码可信度 |
93
+ | "跳过问答更快" | 跳过问答 = 跳过铁律 |
94
+ | "我知道该选什么" | 必选问题不可跳过 |
95
+ | "执行模式无所谓" | 执行模式决定审批节点 |
96
+
97
+ </RED-FLAGS>
98
+
78
99
  <objective>
79
100
  读取已有的 plan.md + tasks-input.json,通过必选问答确定执行配置(开发任务还需确定质量等级、E2E测试),确认后通过 CLI 拆分任务并执行。
80
101
 
@@ -131,13 +152,27 @@ git init
131
152
 
132
153
  ### Step 2: 验证前置条件
133
154
 
134
- **检查 plan.md 和 tasks-input.json 是否已存在:**
155
+ **先获取当前 runId:**
156
+ ```bash
157
+ cat .openmatrix/current.json 2>/dev/null || echo '{"runId":"run-default"}'
158
+ ```
159
+
160
+ 从返回结果提取 `runId`,后续文件检测和读取都使用 `.openmatrix/{runId}/` 目录。
161
+
162
+ **检查 plan.md 和 tasks-input.json 是否已存在(使用 runId):**
135
163
 
136
164
  ```bash
137
- cat .openmatrix/tasks-input.json 2>/dev/null || echo "NOT_FOUND"
138
- cat .openmatrix/plan.md 2>/dev/null || echo "NOT_FOUND"
165
+ cat .openmatrix/${runId}/tasks-input.json 2>/dev/null || echo "NOT_FOUND"
166
+ cat .openmatrix/${runId}/plan.md 2>/dev/null || echo "NOT_FOUND"
139
167
  ```
140
168
 
169
+ **或通过 CLI 检查(推荐):**
170
+ ```bash
171
+ openmatrix status --json | jq '.files'
172
+ ```
173
+
174
+ 返回 `{hasPlan: true, hasTasksInput: true, hasResearchContext: false}` 等。
175
+
141
176
  | 情况 | 处理方式 |
142
177
  |------|---------|
143
178
  | 两个都存在 | 读取内容,继续 Step 3 |
@@ -149,7 +184,7 @@ cat .openmatrix/plan.md 2>/dev/null || echo "NOT_FOUND"
149
184
  **如果都存在,读取 tasks-input.json:**
150
185
 
151
186
  ```bash
152
- cat .openmatrix/tasks-input.json
187
+ cat .openmatrix/${runId}/tasks-input.json
153
188
  ```
154
189
 
155
190
  提取关键字段:`title`、`goals`、`goalTypes`、`goalComplexity`。
@@ -157,7 +192,7 @@ cat .openmatrix/tasks-input.json
157
192
  **检测研究上下文:**
158
193
 
159
194
  ```bash
160
- cat .openmatrix/research/context.json 2>/dev/null || echo "NO_RESEARCH"
195
+ cat .openmatrix/${runId}/research/context.json 2>/dev/null || echo "NO_RESEARCH"
161
196
  ```
162
197
 
163
198
  如果检测到研究上下文,告知用户并将 `--research-context` 参数传递给 CLI。
@@ -191,7 +226,8 @@ git ls-files --others --exclude-standard | grep -E '\.md$|^docs/' 2>/dev/null
191
226
  如果有文档变更(未追踪或未提交),执行提交:
192
227
 
193
228
  ```bash
194
- git add docs/ .openmatrix/*.md CLAUDE.md README.md README_EN.md
229
+ git add docs/ CLAUDE.md README.md README_EN.md
230
+ # 注意:plan.md 和 tasks-input.json 在 .openmatrix/{runId}/ 目录,被 gitignore,不提交
195
231
  git commit -m "$(cat <<'EOF'
196
232
  docs: 更新项目文档
197
233
 
@@ -260,6 +296,16 @@ AskUserQuestion: `header: "E2E 测试"`, `multiSelect: false`
260
296
 
261
297
  **非开发任务**(testing/documentation/other)默认使用「全自动执行」。
262
298
 
299
+ #### 常见借口
300
+
301
+ | 借口 | 真相 |
302
+ |-----|------|
303
+ | "只是个小功能,不用问这么多" | 小功能也要质量门禁 |
304
+ | "我知道该选什么级别" | 必选问题不可跳过 |
305
+ | "E2E测试浪费时间" | E2E测试由你决定,不是默认跳过 |
306
+ | "我会手动检查代码" | AI验收比手动检查更系统 |
307
+ | "这太复杂了,简化流程" | 流程设计有目的,简化=降低质量 |
308
+
263
309
  ### Step 6: 可选问题(仅复杂任务)
264
310
 
265
311
  根据任务类型,可能需要额外询问:
@@ -283,11 +329,13 @@ Goals:
283
329
  Goals: N 个(将生成 N个开发 + N个测试 + 审查)
284
330
  质量级别: xxx
285
331
  E2E 测试: 功能测试 / 视觉验证 / 不启用
286
- 技术方案: .openmatrix/plan.md
332
+ 技术方案: .openmatrix/{runId}/plan.md
287
333
  ```
288
334
 
289
335
  ### Step 7: 调用 CLI 创建任务(不可跳过)
290
336
 
337
+ **CLI 自动从当前 runId 目录读取 tasks-input.json 和 plan.md。**
338
+
291
339
  **根据质量等级自动设置执行参数:**
292
340
 
293
341
  | 质量等级 | CLI 参数 | 执行方式 |
@@ -298,34 +346,54 @@ Goals:
298
346
 
299
347
  **开发任务**(有质量等级选择):
300
348
  ```bash
301
- openmatrix start --tasks-json @.openmatrix/tasks-input.json --quality <质量等级> --mode auto --json
349
+ openmatrix start --tasks-json @tasks-input.json --quality <质量等级> --mode auto --json
302
350
  ```
303
351
 
304
- 如果存在 `.openmatrix/research/context.json`,增加 `--research-context` 参数:
352
+ 如果存在研究上下文(`.openmatrix/{runId}/research/context.json`),增加 `--research-context` 参数:
305
353
  ```bash
306
- openmatrix start --tasks-json @.openmatrix/tasks-input.json --research-context @.openmatrix/research/context.json --quality <质量等级> --mode auto --json
354
+ openmatrix start --tasks-json @tasks-input.json --research-context @research/context.json --quality <质量等级> --mode auto --json
307
355
  ```
308
356
 
309
357
  如果启用了 E2E 测试(功能测试),加上 `--e2e-tests`:
310
358
  ```bash
311
- openmatrix start --tasks-json @.openmatrix/tasks-input.json --quality strict --mode auto --e2e-tests --json
359
+ openmatrix start --tasks-json @tasks-input.json --quality strict --mode auto --e2e-tests --json
312
360
  ```
313
361
 
314
362
  如果选择了视觉验证,加上 `--e2e-tests --e2e-type visual`:
315
363
  ```bash
316
- openmatrix start --tasks-json @.openmatrix/tasks-input.json --quality strict --mode auto --e2e-tests --e2e-type visual --json
364
+ openmatrix start --tasks-json @tasks-input.json --quality strict --mode auto --e2e-tests --e2e-type visual --json
317
365
  ```
318
366
 
319
367
  **非开发任务**(无质量等级,默认全自动执行):
320
368
  ```bash
321
- openmatrix start --tasks-json @.openmatrix/tasks-input.json --mode auto --json
369
+ openmatrix start --tasks-json @tasks-input.json --mode auto --json
322
370
  ```
323
371
 
372
+ **注意**: `@tasks-input.json` 表示 CLI 自动从当前 runId 目录读取。CLI 会自动检测 `current.json` 定位 runId。
373
+
324
374
  此命令返回 JSON 包含 `subagentTasks` 列表。
325
375
 
326
376
  ### Step 8: 读取 subagentTasks
327
377
 
328
- CLI 返回 JSON 中 `subagentTasks` 数组包含待执行任务。
378
+ CLI 返回 JSON 中 `subagentTasks` 数组包含待执行任务:
379
+
380
+ ```json
381
+ {
382
+ "status": "tasks_ready",
383
+ "subagentTasks": [
384
+ {
385
+ "taskId": "TASK-001",
386
+ "agentType": "coder",
387
+ "title": "实现登录功能",
388
+ "description": "...",
389
+ "prompt": "完整任务提示词...",
390
+ "timeout": 300000
391
+ }
392
+ ]
393
+ }
394
+ ```
395
+
396
+ 提取每个任务的 `taskId`、`agentType`、`title`、`prompt`,供 Step 9 执行。
329
397
 
330
398
  ## === 执行阶段(只有此阶段才能写业务代码)===
331
399
 
@@ -467,7 +535,7 @@ Agent({
467
535
  openmatrix complete TASK-XXX --success --summary "关键决策: xxx; 创建文件: xxx"
468
536
  ```
469
537
 
470
- 2. **全局上下文文件** — 所有任务的上下文累积在 `.openmatrix/context.md`:
538
+ 2. **全局上下文文件** — 所有任务的上下文累积在 `.openmatrix/{runId}/context.md`:
471
539
  - 每次任务完成后,通过 `--summary` 参数追加写入
472
540
  - 后续 Agent 可读取此文件了解前序任务的决策和发现
473
541
 
@@ -577,8 +645,10 @@ $ARGUMENTS
577
645
  ```
578
646
 
579
647
  start 和 auto 在同一位置,区别在于 start 有交互审批,auto 零交互。前置条件:
580
- - `.openmatrix/plan.md` — 技术方案(由 /om:plan 生成)
581
- - `.openmatrix/tasks-input.json` — 结构化元数据(由 /om:plan 生成)
648
+ - `.openmatrix/{runId}/plan.md` — 技术方案(由 /om:plan 生成)
649
+ - `.openmatrix/{runId}/tasks-input.json` — 结构化元数据(由 /om:plan 生成)
650
+
651
+ CLI 自动通过 `current.json` 定位当前 runId。
582
652
 
583
653
  如果前置条件不满足,引导用户执行 `/om:plan`。
584
654
 
package/skills/status.md CHANGED
@@ -35,7 +35,7 @@ description: "Use when checking task execution progress, run status, completion
35
35
  </INTENT-JUDGMENT>
36
36
 
37
37
  <NO-OTHER-SKILLS>
38
- 执行此技能时,不得调用 superpowers、gsd 或其他任务编排相关的技能。OpenMatrix 独立运行,不依赖外部任务编排系统。
38
+ skill 与其他任务编排技能功能重叠,请勿同时使用。
39
39
  </NO-OTHER-SKILLS>
40
40
 
41
41
  <objective>