openmatrix 0.1.11 → 0.1.13
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 +26 -0
- package/dist/cli/commands/check.d.ts +2 -0
- package/dist/cli/commands/check.js +330 -0
- package/dist/cli/commands/install-skills.js +7 -7
- package/dist/cli/commands/upgrade.d.ts +2 -0
- package/dist/cli/commands/upgrade.js +329 -0
- package/dist/cli/index.js +2 -0
- package/dist/orchestrator/upgrade-detector.d.ts +159 -0
- package/dist/orchestrator/upgrade-detector.js +1184 -0
- package/package.json +1 -1
- package/skills/om-check.md +237 -0
- package/skills/{openmatrix-auto.md → openmatrix.md} +1 -1
package/package.json
CHANGED
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: om:check
|
|
3
|
+
description: 自动检测项目可改进点并提供升级建议,支持交互式确认
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<NO-OTHER-SKILLS>
|
|
7
|
+
执行此技能时,不得调用 superpowers、gsd 或其他任务编排相关的技能。OpenMatrix 独立运行,不依赖外部任务编排系统。
|
|
8
|
+
</NO-OTHER-SKILLS>
|
|
9
|
+
|
|
10
|
+
<objective>
|
|
11
|
+
自动扫描项目代码,检测可改进点,生成升级建议列表供用户确认后执行。支持用户提示聚焦检测方向。
|
|
12
|
+
</objective>
|
|
13
|
+
|
|
14
|
+
<trigger-conditions>
|
|
15
|
+
## 何时使用
|
|
16
|
+
|
|
17
|
+
**当用户想要:**
|
|
18
|
+
- 改进项目代码质量
|
|
19
|
+
- 查找潜在问题
|
|
20
|
+
- 升级项目功能
|
|
21
|
+
- 优化代码结构
|
|
22
|
+
- 检查 AI 项目配置
|
|
23
|
+
|
|
24
|
+
**用户输入示例:**
|
|
25
|
+
- `/om:check` - 自动扫描当前项目
|
|
26
|
+
- `/om:check 性能优化` - 聚焦性能相关改进
|
|
27
|
+
- `/om:check 安全` - 聚焦安全问题
|
|
28
|
+
</trigger-conditions>
|
|
29
|
+
|
|
30
|
+
<process>
|
|
31
|
+
1. **执行检测命令**
|
|
32
|
+
|
|
33
|
+
调用 CLI 获取检测结果:
|
|
34
|
+
```bash
|
|
35
|
+
openmatrix check --json
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
如果用户提供了提示,传入参数:
|
|
39
|
+
```bash
|
|
40
|
+
openmatrix check "用户提示" --json
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
2. **解析检测结果**
|
|
44
|
+
|
|
45
|
+
结果格式:
|
|
46
|
+
```json
|
|
47
|
+
{
|
|
48
|
+
"projectType": "openmatrix|ai-project|nodejs|typescript|python|go|rust|java|csharp|cpp|php|dart",
|
|
49
|
+
"projectName": "项目名称",
|
|
50
|
+
"scanPath": "/path/to/project",
|
|
51
|
+
"timestamp": "2025-01-01T00:00:00.000Z",
|
|
52
|
+
"suggestions": [
|
|
53
|
+
{
|
|
54
|
+
"id": "UPG-001",
|
|
55
|
+
"category": "bug|quality|capability|ux|style|security|common|prompt|skill|agent",
|
|
56
|
+
"priority": "critical|high|medium|low",
|
|
57
|
+
"title": "建议标题",
|
|
58
|
+
"description": "详细描述",
|
|
59
|
+
"location": {
|
|
60
|
+
"file": "src/example.ts",
|
|
61
|
+
"line": 42
|
|
62
|
+
},
|
|
63
|
+
"suggestion": "改进建议",
|
|
64
|
+
"autoFixable": true|false,
|
|
65
|
+
"impact": "影响说明",
|
|
66
|
+
"effort": "trivial|small|medium|large"
|
|
67
|
+
}
|
|
68
|
+
],
|
|
69
|
+
"summary": {
|
|
70
|
+
"total": 10,
|
|
71
|
+
"byCategory": { ... },
|
|
72
|
+
"byPriority": { ... },
|
|
73
|
+
"autoFixable": 3
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
3. **展示检测结果**
|
|
79
|
+
|
|
80
|
+
使用 AskUserQuestion 展示结果并询问用户选择:
|
|
81
|
+
|
|
82
|
+
```
|
|
83
|
+
📋 检测到 X 个改进建议
|
|
84
|
+
|
|
85
|
+
🚨 关键问题 (Y 个)
|
|
86
|
+
─────────────────────
|
|
87
|
+
[UPG-001] 🔒 硬编码密钥
|
|
88
|
+
位置: src/config.ts:15
|
|
89
|
+
建议: 使用环境变量存储敏感信息
|
|
90
|
+
|
|
91
|
+
⚠️ 高优先级 (Z 个)
|
|
92
|
+
─────────────────────
|
|
93
|
+
...
|
|
94
|
+
|
|
95
|
+
💡 请选择要执行的改进:
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
4. **用户选择** (使用 AskUserQuestion)
|
|
99
|
+
|
|
100
|
+
**选择模式:**
|
|
101
|
+
```typescript
|
|
102
|
+
AskUserQuestion({
|
|
103
|
+
questions: [{
|
|
104
|
+
question: "请选择要执行的改进:",
|
|
105
|
+
header: "改进选择",
|
|
106
|
+
options: [
|
|
107
|
+
{ label: "🔴 全部执行", description: "执行所有检测到的改进" },
|
|
108
|
+
{ label: "🟡 仅关键+高优先级", description: "执行 critical 和 high 优先级" },
|
|
109
|
+
{ label: "🟢 仅可自动修复", description: "只执行 autoFixable=true 的改进" },
|
|
110
|
+
{ label: "📋 逐项确认", description: "每个改进单独确认" }
|
|
111
|
+
],
|
|
112
|
+
multiSelect: false
|
|
113
|
+
}]
|
|
114
|
+
})
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
5. **执行改进**
|
|
118
|
+
|
|
119
|
+
根据用户选择,生成任务并调用 `/om:start` 执行:
|
|
120
|
+
|
|
121
|
+
**方式一: 批量执行**
|
|
122
|
+
- 将选中的改进转换为任务列表
|
|
123
|
+
- 调用 `/om:start` 并传递任务
|
|
124
|
+
|
|
125
|
+
**方式二: 逐项确认**
|
|
126
|
+
- 使用 AskUserQuestion 逐个询问
|
|
127
|
+
- 用户确认后执行
|
|
128
|
+
|
|
129
|
+
6. **BYPASS 模式支持**
|
|
130
|
+
|
|
131
|
+
如果用户选择了"全部执行",进入 BYPASS 模式:
|
|
132
|
+
- 不再请求用户确认
|
|
133
|
+
- 自动批准所有操作
|
|
134
|
+
- 快速完成所有改进
|
|
135
|
+
|
|
136
|
+
</process>
|
|
137
|
+
|
|
138
|
+
<arguments>
|
|
139
|
+
$ARGUMENTS
|
|
140
|
+
</arguments>
|
|
141
|
+
|
|
142
|
+
<examples>
|
|
143
|
+
/om:check # 自动扫描当前项目
|
|
144
|
+
/om:check 性能优化 # 聚焦性能相关改进
|
|
145
|
+
/om:check 安全问题 # 聚焦安全相关改进
|
|
146
|
+
/om:check --auto # 全自动执行 (无需确认)
|
|
147
|
+
</examples>
|
|
148
|
+
|
|
149
|
+
<notes>
|
|
150
|
+
## 检测类别说明
|
|
151
|
+
|
|
152
|
+
| 类别 | 说明 | 示例 |
|
|
153
|
+
|------|------|------|
|
|
154
|
+
| bug | 代码缺陷 | TODO, FIXME, 潜在bug |
|
|
155
|
+
| quality | 代码质量 | 过长函数, 复杂度, 重复代码 |
|
|
156
|
+
| capability | 缺失能力 | 缺少测试, 文档, 类型定义 |
|
|
157
|
+
| ux | 用户体验 | 错误提示, 帮助信息 |
|
|
158
|
+
| style | 代码风格 | 命名, 格式, 一致性 |
|
|
159
|
+
| security | 安全问题 | 硬编码密钥, SQL注入 |
|
|
160
|
+
| common | 常见问题 | 魔法数字, 硬编码路径 |
|
|
161
|
+
| prompt | Prompt 问题 | 注入风险, 缺少格式说明 |
|
|
162
|
+
| skill | Skill 问题 | 缺少 frontmatter, objective |
|
|
163
|
+
| agent | Agent 配置 | CLAUDE.md 缺少构建命令 |
|
|
164
|
+
|
|
165
|
+
## 优先级说明
|
|
166
|
+
|
|
167
|
+
| 优先级 | 说明 | 处理建议 |
|
|
168
|
+
|--------|------|----------|
|
|
169
|
+
| critical | 严重问题 | 立即处理 |
|
|
170
|
+
| high | 重要问题 | 优先处理 |
|
|
171
|
+
| medium | 一般问题 | 计划处理 |
|
|
172
|
+
| low | 轻微问题 | 有空再处理 |
|
|
173
|
+
|
|
174
|
+
## 项目类型识别
|
|
175
|
+
|
|
176
|
+
系统自动识别以下项目类型:
|
|
177
|
+
- **openmatrix**: OpenMatrix 项目自身
|
|
178
|
+
- **ai-project**: AI 项目 (包含 prompts/skills/agents)
|
|
179
|
+
- **nodejs**: Node.js 项目
|
|
180
|
+
- **typescript**: TypeScript 项目
|
|
181
|
+
- **python**: Python 项目
|
|
182
|
+
- **go**: Go 项目
|
|
183
|
+
- **rust**: Rust 项目
|
|
184
|
+
- **java**: Java 项目
|
|
185
|
+
- **csharp**: C# 项目
|
|
186
|
+
- **cpp**: C/C++ 项目
|
|
187
|
+
- **php**: PHP 项目
|
|
188
|
+
- **dart**: Dart 项目
|
|
189
|
+
|
|
190
|
+
根据项目类型,检测器会调整检测策略和建议。
|
|
191
|
+
|
|
192
|
+
## 与 /om:start 的关系
|
|
193
|
+
|
|
194
|
+
`/om:check` 检测完成后,可以选择将改进项传递给 `/om:start` 执行:
|
|
195
|
+
|
|
196
|
+
```
|
|
197
|
+
/om:check
|
|
198
|
+
│
|
|
199
|
+
├── 检测项目 ──→ 生成建议列表
|
|
200
|
+
│
|
|
201
|
+
├── 用户选择 ──→ 筛选建议
|
|
202
|
+
│
|
|
203
|
+
└── 执行改进 ──→ 调用 /om:start
|
|
204
|
+
│
|
|
205
|
+
└── 正常的任务执行流程
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
## 使用场景
|
|
209
|
+
|
|
210
|
+
### 场景 1: 日常维护
|
|
211
|
+
```
|
|
212
|
+
用户: /om:check
|
|
213
|
+
系统: 扫描项目...
|
|
214
|
+
发现 15 个改进建议
|
|
215
|
+
用户选择: 仅关键+高优先级
|
|
216
|
+
系统: 开始执行 5 个改进...
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
### 场景 2: 安全审计
|
|
220
|
+
```
|
|
221
|
+
用户: /om:check 安全
|
|
222
|
+
系统: 扫描安全问题...
|
|
223
|
+
发现 3 个安全隐患
|
|
224
|
+
用户选择: 全部执行
|
|
225
|
+
系统: 自动修复安全问题...
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
### 场景 3: AI 项目检查
|
|
229
|
+
```
|
|
230
|
+
用户: /om:check
|
|
231
|
+
系统: 检测到 AI 项目
|
|
232
|
+
扫描 prompts/skills/agent 配置...
|
|
233
|
+
发现 5 个 AI 相关建议
|
|
234
|
+
用户选择: 全部执行
|
|
235
|
+
系统: 优化 AI 配置...
|
|
236
|
+
```
|
|
237
|
+
</notes>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: openmatrix
|
|
2
|
+
name: openmatrix
|
|
3
3
|
description: "Invoke /om:start for any implementation task - adding features, fixing bugs, refactoring, creating commands, writing code, building systems. Use this when user describes work to be done, not for questions or information requests."
|
|
4
4
|
---
|
|
5
5
|
|