openmatrix 0.1.81 → 0.1.83
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.
|
@@ -58,13 +58,11 @@ export declare class GitCommitManager {
|
|
|
58
58
|
* 格式规范:
|
|
59
59
|
* <type>: (TASK-XXX) 简短描述
|
|
60
60
|
*
|
|
61
|
-
*
|
|
62
|
-
* - 改动点2
|
|
61
|
+
* <phase 描述>
|
|
63
62
|
*
|
|
64
63
|
* 影响范围: 模块/功能
|
|
65
|
-
* 文件改动: 文件1, 文件2
|
|
66
64
|
*
|
|
67
|
-
* Run: run-xxx
|
|
65
|
+
* Run: run-xxx
|
|
68
66
|
* Co-Authored-By: OpenMatrix <https://github.com/bigfish1913/openmatrix>
|
|
69
67
|
*/
|
|
70
68
|
generateCommitMessage(info: CommitInfo): string;
|
|
@@ -157,13 +157,11 @@ class GitCommitManager {
|
|
|
157
157
|
* 格式规范:
|
|
158
158
|
* <type>: (TASK-XXX) 简短描述
|
|
159
159
|
*
|
|
160
|
-
*
|
|
161
|
-
* - 改动点2
|
|
160
|
+
* <phase 描述>
|
|
162
161
|
*
|
|
163
162
|
* 影响范围: 模块/功能
|
|
164
|
-
* 文件改动: 文件1, 文件2
|
|
165
163
|
*
|
|
166
|
-
* Run: run-xxx
|
|
164
|
+
* Run: run-xxx
|
|
167
165
|
* Co-Authored-By: OpenMatrix <https://github.com/bigfish1913/openmatrix>
|
|
168
166
|
*/
|
|
169
167
|
generateCommitMessage(info) {
|
|
@@ -173,43 +171,32 @@ class GitCommitManager {
|
|
|
173
171
|
tdd: 'test',
|
|
174
172
|
develop: 'feat',
|
|
175
173
|
verify: 'test',
|
|
176
|
-
accept: '
|
|
174
|
+
accept: 'chore'
|
|
177
175
|
};
|
|
178
176
|
const commitType = phaseToType[info.phase] || 'feat';
|
|
179
|
-
// 标题行 - 限制
|
|
177
|
+
// 标题行 - 限制 72 字符
|
|
180
178
|
let title = info.taskTitle;
|
|
181
|
-
if (title.length >
|
|
182
|
-
title = title.slice(0,
|
|
179
|
+
if (title.length > 60) {
|
|
180
|
+
title = title.slice(0, 57) + '...';
|
|
183
181
|
}
|
|
184
|
-
// 格式: feat
|
|
185
|
-
lines.push(`${commitType}
|
|
182
|
+
// 格式: feat(TASK-001): 简短描述
|
|
183
|
+
lines.push(`${commitType}(${info.taskId}): ${title}`);
|
|
186
184
|
lines.push('');
|
|
187
|
-
//
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
lines.push('');
|
|
196
|
-
}
|
|
185
|
+
// Phase 描述
|
|
186
|
+
const phaseDescriptions = {
|
|
187
|
+
tdd: '编写测试用例',
|
|
188
|
+
develop: '实现功能代码',
|
|
189
|
+
verify: '运行测试验证',
|
|
190
|
+
accept: '验收检查通过'
|
|
191
|
+
};
|
|
192
|
+
lines.push(phaseDescriptions[info.phase] || '代码变更');
|
|
197
193
|
// 影响范围
|
|
198
194
|
if (info.impactScope.length > 0) {
|
|
195
|
+
lines.push('');
|
|
199
196
|
lines.push(`影响范围: ${info.impactScope.join('、')}`);
|
|
200
197
|
}
|
|
201
|
-
// 文件改动 - 简化显示
|
|
202
|
-
const changedFiles = info.changes.slice(0, 5).map(f => {
|
|
203
|
-
const parts = f.split('/');
|
|
204
|
-
return parts.length > 2 ? parts.slice(-2).join('/') : f;
|
|
205
|
-
});
|
|
206
|
-
if (changedFiles.length > 0) {
|
|
207
|
-
const fileSummary = changedFiles.join(', ');
|
|
208
|
-
const suffix = info.changes.length > 5 ? ` 等 ${info.changes.length} 个文件` : '';
|
|
209
|
-
lines.push(`文件改动: ${fileSummary}${suffix}`);
|
|
210
|
-
}
|
|
211
198
|
lines.push('');
|
|
212
|
-
// Run ID
|
|
199
|
+
// Run ID
|
|
213
200
|
if (info.runId) {
|
|
214
201
|
lines.push(`Run: ${info.runId}`);
|
|
215
202
|
}
|
package/package.json
CHANGED
package/skills/auto.md
CHANGED
|
@@ -152,7 +152,7 @@ openmatrix complete TASK-XXX --success # 标记完成 + 更新统计(含
|
|
|
152
152
|
# 提交验证(防止 commit 静默失败):
|
|
153
153
|
git status --porcelain # 检查是否有未提交的文件
|
|
154
154
|
# 如果有未提交文件 → 必须手动提交:
|
|
155
|
-
git add -A && git commit -m "feat
|
|
155
|
+
git add -A && git commit -m "feat(TASK-XXX): 任务标题"
|
|
156
156
|
|
|
157
157
|
openmatrix step --json # 获取下一个任务 + 检查是否全部完成
|
|
158
158
|
```
|
|
@@ -227,13 +227,9 @@ Agent-1 完成 → 写入 context.md → Agent-2 读取 Agent-1 的上下文 →
|
|
|
227
227
|
```
|
|
228
228
|
```bash
|
|
229
229
|
git add -A && git commit -m "$(cat <<'EOF'
|
|
230
|
-
feat
|
|
231
|
-
|
|
232
|
-
- 改动点1
|
|
233
|
-
- 改动点2
|
|
230
|
+
feat(TASK-XXX): 任务标题
|
|
234
231
|
|
|
235
232
|
影响范围: 模块名
|
|
236
|
-
文件改动: 文件1, 文件2
|
|
237
233
|
|
|
238
234
|
Run: run-XXX
|
|
239
235
|
Co-Authored-By: OpenMatrix <https://github.com/bigfish1913/openmatrix>
|
|
@@ -246,13 +242,9 @@ EOF
|
|
|
246
242
|
**Git 提交格式规范(所有提交必须遵守):**
|
|
247
243
|
|
|
248
244
|
```
|
|
249
|
-
<type
|
|
250
|
-
|
|
251
|
-
- 改动点1
|
|
252
|
-
- 改动点2
|
|
245
|
+
<type>(TASK-XXX): 简短描述
|
|
253
246
|
|
|
254
247
|
影响范围: 模块名
|
|
255
|
-
文件改动: 文件1, 文件2
|
|
256
248
|
|
|
257
249
|
Run: run-XXX
|
|
258
250
|
Co-Authored-By: OpenMatrix <https://github.com/bigfish1913/openmatrix>
|
package/skills/brainstorm.md
CHANGED
|
@@ -42,7 +42,9 @@ ls docs/ 2>/dev/null
|
|
|
42
42
|
- 了解技术栈、项目结构、最近变更
|
|
43
43
|
- 如果用户引用了文件(如 `docs/task.md`),读取该文件
|
|
44
44
|
|
|
45
|
-
## 步骤 2:
|
|
45
|
+
## 步骤 2: 评估范围与领域检测
|
|
46
|
+
|
|
47
|
+
**2.1 评估范围**
|
|
46
48
|
|
|
47
49
|
**如果任务涉及多个独立子系统**(如"构建一个包含聊天、文件存储、计费和分析的平台"),立即提出分解:
|
|
48
50
|
|
|
@@ -61,6 +63,31 @@ AskUserQuestion({
|
|
|
61
63
|
})
|
|
62
64
|
```
|
|
63
65
|
|
|
66
|
+
**2.2 领域检测与 Research 集成**
|
|
67
|
+
|
|
68
|
+
**如果任务涉及不熟悉的垂直领域**(如游戏开发、支付系统、区块链、AI 应用等),主动建议调用研究:
|
|
69
|
+
|
|
70
|
+
```typescript
|
|
71
|
+
AskUserQuestion({
|
|
72
|
+
questions: [{
|
|
73
|
+
question: `这个任务涉及「${domain}」领域,建议先进行领域调研。\n研究可以帮助我们:\n• 了解行业标准和最佳实践\n• 识别关键技术选型\n• 发现常见陷阱和解决方案`,
|
|
74
|
+
header: "领域调研",
|
|
75
|
+
options: [
|
|
76
|
+
{ label: "先调研 (推荐)", description: "调用 /om:research 深入了解领域" },
|
|
77
|
+
{ label: "直接头脑风暴", description: "我对这个领域比较熟悉" }
|
|
78
|
+
],
|
|
79
|
+
multiSelect: false
|
|
80
|
+
}]
|
|
81
|
+
})
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
用户选择「先调研」后:
|
|
85
|
+
```
|
|
86
|
+
Skill 工具: skill = "om:research", args = "任务描述"
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
研究完成后,研究结论会作为头脑风暴的输入上下文,继续后续步骤。
|
|
90
|
+
|
|
64
91
|
## 步骤 3: 逐一澄清需求
|
|
65
92
|
|
|
66
93
|
**核心原则:一次只问一个问题。每条消息只有一个问题。**
|
|
@@ -249,7 +276,69 @@ AskUserQuestion({
|
|
|
249
276
|
})
|
|
250
277
|
```
|
|
251
278
|
|
|
252
|
-
## 步骤 7:
|
|
279
|
+
## 步骤 7: 输出设计文档
|
|
280
|
+
|
|
281
|
+
总结确认后,将设计写入文档,便于后续执行时参考:
|
|
282
|
+
|
|
283
|
+
```bash
|
|
284
|
+
# 确保目录存在
|
|
285
|
+
mkdir -p docs/openmatrix
|
|
286
|
+
```
|
|
287
|
+
|
|
288
|
+
**写入设计文档到 `docs/openmatrix/YYYY-MM-DD-<topic>-design.md`:**
|
|
289
|
+
|
|
290
|
+
```markdown
|
|
291
|
+
# 设计方案: 任务标题
|
|
292
|
+
|
|
293
|
+
日期: YYYY-MM-DD
|
|
294
|
+
|
|
295
|
+
## 核心目标
|
|
296
|
+
- 目标 1
|
|
297
|
+
- 目标 2
|
|
298
|
+
|
|
299
|
+
## 架构设计
|
|
300
|
+
(从步骤 5 确认的内容)
|
|
301
|
+
|
|
302
|
+
## 数据模型 / 核心实体
|
|
303
|
+
(从步骤 5 确认的内容)
|
|
304
|
+
|
|
305
|
+
## 关键接口 / API
|
|
306
|
+
(从步骤 5 确认的内容)
|
|
307
|
+
|
|
308
|
+
## 技术方案
|
|
309
|
+
- 方案选择: 方案 X
|
|
310
|
+
- 理由: ...
|
|
311
|
+
|
|
312
|
+
## 错误处理策略
|
|
313
|
+
(从步骤 5 确认的内容)
|
|
314
|
+
|
|
315
|
+
## 测试策略
|
|
316
|
+
(从步骤 5 确认的内容)
|
|
317
|
+
|
|
318
|
+
## 约束与风险
|
|
319
|
+
- 约束 1
|
|
320
|
+
- 风险 1 及应对
|
|
321
|
+
|
|
322
|
+
## 验收标准
|
|
323
|
+
- 标准 1
|
|
324
|
+
- 标准 2
|
|
325
|
+
```
|
|
326
|
+
|
|
327
|
+
```typescript
|
|
328
|
+
AskUserQuestion({
|
|
329
|
+
questions: [{
|
|
330
|
+
question: `设计文档已写入 docs/openmatrix/${filename}\n\n下一步?`,
|
|
331
|
+
header: "下一步",
|
|
332
|
+
options: [
|
|
333
|
+
{ label: "开始执行 (推荐)", description: "写入 tasks-input.json 并调用 /om:start" },
|
|
334
|
+
{ label: "修改设计", description: "需要调整设计方案" }
|
|
335
|
+
],
|
|
336
|
+
multiSelect: false
|
|
337
|
+
}]
|
|
338
|
+
})
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
## 步骤 8: 写入 tasks-input.json 并调用 /om:start
|
|
253
342
|
|
|
254
343
|
用户选择"开始执行"后:
|
|
255
344
|
|
|
@@ -310,6 +399,20 @@ $ARGUMENTS
|
|
|
310
399
|
- **问题要贴合任务** — 不问泛泛的问题,而是针对具体任务深入
|
|
311
400
|
- **理解目的 > 理解实现** — 先搞清楚为什么做,再讨论怎么做
|
|
312
401
|
|
|
402
|
+
## 领域调研集成
|
|
403
|
+
|
|
404
|
+
- 检测到垂直领域(游戏、支付、区块链等)时,主动建议 `/om:research`
|
|
405
|
+
- 研究完成后,研究结论作为后续提问和设计的输入上下文
|
|
406
|
+
- 如果用户对领域熟悉,可以跳过研究直接进入头脑风暴
|
|
407
|
+
- 研究产出的文档可引用在设计文档中
|
|
408
|
+
|
|
409
|
+
## 设计文档
|
|
410
|
+
|
|
411
|
+
- 每次头脑风暴都会输出设计文档到 `docs/openmatrix/YYYY-MM-DD-<topic>-design.md`
|
|
412
|
+
- 文档包含:核心目标、架构、数据模型、接口、技术方案、错误处理、测试策略、风险、验收标准
|
|
413
|
+
- 设计文档是 `/om:start` 执行时的重要参考
|
|
414
|
+
- 文档内容来自步骤 5 逐节确认的设计
|
|
415
|
+
|
|
313
416
|
## 在已有代码库中工作
|
|
314
417
|
|
|
315
418
|
- 提出变更前,先探索现有结构,遵循现有模式
|
|
@@ -342,6 +445,12 @@ $ARGUMENTS
|
|
|
342
445
|
│
|
|
343
446
|
▼
|
|
344
447
|
┌─────────────────┐
|
|
448
|
+
│ 领域检测 │ YES → /om:research → 研究结论作为上下文
|
|
449
|
+
│ (是否需要调研) │──────────────────────────────────────────────┐
|
|
450
|
+
└────────┬────────┘ │
|
|
451
|
+
│ NO / 研究完成 │
|
|
452
|
+
▼ ◀────────────────────────────────────────────────────┘
|
|
453
|
+
┌─────────────────┐
|
|
345
454
|
│ 逐一澄清需求 │◀─────┐
|
|
346
455
|
│ (一次一个问题) │ │
|
|
347
456
|
│ 深入理解目的/ │ │
|
|
@@ -367,6 +476,12 @@ $ARGUMENTS
|
|
|
367
476
|
▼
|
|
368
477
|
┌─────────────────┐
|
|
369
478
|
│ 总结 + 确认 │
|
|
479
|
+
└────────┬────────┘
|
|
480
|
+
│
|
|
481
|
+
▼
|
|
482
|
+
┌─────────────────┐
|
|
483
|
+
│ 写入设计文档 │
|
|
484
|
+
│ (docs/openmatrix/) │
|
|
370
485
|
└────────┬────────┘
|
|
371
486
|
│
|
|
372
487
|
开始执行
|
package/skills/start.md
CHANGED
|
@@ -297,7 +297,7 @@ openmatrix complete TASK-XXX --success --summary "决策: xxx; 文件: xxx"
|
|
|
297
297
|
# 提交验证(防止 commit 静默失败):
|
|
298
298
|
git status --porcelain # 检查是否有未提交的文件
|
|
299
299
|
# 如果有未提交文件 → 必须手动提交:
|
|
300
|
-
git add -A && git commit -m "feat
|
|
300
|
+
git add -A && git commit -m "feat(TASK-XXX): 任务标题"
|
|
301
301
|
|
|
302
302
|
openmatrix step --json # 获取下一个任务 + 检查是否全部完成
|
|
303
303
|
```
|
|
@@ -420,14 +420,9 @@ openmatrix meeting --list
|
|
|
420
420
|
所有任务完成后,执行最终 Git 提交(**必须使用 HEREDOC 格式**):
|
|
421
421
|
```bash
|
|
422
422
|
git add -A && git commit -m "$(cat <<'EOF'
|
|
423
|
-
feat: 完成所有任务
|
|
424
|
-
|
|
425
|
-
- 任务1标题
|
|
426
|
-
- 任务2标题
|
|
427
|
-
- ...
|
|
423
|
+
feat: 完成所有任务 - 任务总标题
|
|
428
424
|
|
|
429
425
|
影响范围: 全部模块
|
|
430
|
-
文件改动: 统计变更文件数
|
|
431
426
|
|
|
432
427
|
Run: run-XXX
|
|
433
428
|
Co-Authored-By: OpenMatrix <https://github.com/bigfish1913/openmatrix>
|
|
@@ -438,13 +433,11 @@ EOF
|
|
|
438
433
|
**Git 提交格式规范(所有提交必须遵守):**
|
|
439
434
|
|
|
440
435
|
```
|
|
441
|
-
<type
|
|
436
|
+
<type>(TASK-XXX): 简短描述
|
|
442
437
|
|
|
443
|
-
|
|
444
|
-
- 改动点2
|
|
438
|
+
实现/修改内容一句话描述
|
|
445
439
|
|
|
446
440
|
影响范围: 模块名
|
|
447
|
-
文件改动: 文件1, 文件2
|
|
448
441
|
|
|
449
442
|
Run: run-XXX
|
|
450
443
|
Co-Authored-By: OpenMatrix <https://github.com/bigfish1913/openmatrix>
|