mcp-probe-kit 2.3.0 → 2.3.1
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/build/tools/add_feature.js +82 -113
- package/package.json +1 -1
|
@@ -62,38 +62,27 @@ const PROMPT_TEMPLATE = `# 添加新功能指南
|
|
|
62
62
|
|
|
63
63
|
**功能描述**: {description}
|
|
64
64
|
|
|
65
|
-
**输出文件**:
|
|
66
|
-
- \`{docs_dir}/specs/{feature_name}/requirements.md\` - 需求文档
|
|
67
|
-
- \`{docs_dir}/specs/{feature_name}/design.md\` - 设计文档
|
|
68
|
-
- \`{docs_dir}/specs/{feature_name}/tasks.md\` - 任务清单
|
|
69
|
-
|
|
70
65
|
---
|
|
71
66
|
|
|
72
67
|
## 📋 前置检查
|
|
73
68
|
|
|
74
|
-
###
|
|
69
|
+
### 检查项目上下文
|
|
75
70
|
|
|
76
|
-
**操作**:
|
|
77
71
|
1. 检查文件 \`{docs_dir}/project-context.md\` 是否存在
|
|
78
|
-
2.
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
3. 如果不存在:
|
|
83
|
-
- 显示提示:"建议先运行 init_project_context 工具生成项目上下文"
|
|
84
|
-
- 可以继续生成文档,但内容会更通用
|
|
72
|
+
2. 如果存在,读取并参考其中的技术栈、架构模式、编码规范
|
|
73
|
+
3. 如果不存在,建议先运行 \`init_project_context\` 工具
|
|
74
|
+
|
|
75
|
+
---
|
|
85
76
|
|
|
86
|
-
|
|
77
|
+
## 📝 创建文档
|
|
87
78
|
|
|
88
|
-
|
|
89
|
-
1. 创建目录 \`{docs_dir}/specs/{feature_name}/\`
|
|
90
|
-
2. 如果目录已存在,询问用户是否覆盖
|
|
79
|
+
请在 \`{docs_dir}/specs/{feature_name}/\` 目录下创建以下三个文件:
|
|
91
80
|
|
|
92
|
-
|
|
81
|
+
### 文件 1: requirements.md
|
|
93
82
|
|
|
94
|
-
|
|
83
|
+
**文件路径**: \`{docs_dir}/specs/{feature_name}/requirements.md\`
|
|
95
84
|
|
|
96
|
-
|
|
85
|
+
**文件内容**(请将以下模板保存为该文件,并根据功能描述智能填充标记为 [填写] 的部分):
|
|
97
86
|
|
|
98
87
|
\`\`\`markdown
|
|
99
88
|
# 需求文档:{feature_name}
|
|
@@ -104,33 +93,33 @@ const PROMPT_TEMPLATE = `# 添加新功能指南
|
|
|
104
93
|
|
|
105
94
|
## 术语定义
|
|
106
95
|
|
|
107
|
-
- **[术语1]**: [
|
|
108
|
-
- **[术语2]**: [
|
|
96
|
+
- **[术语1]**: [填写:定义]
|
|
97
|
+
- **[术语2]**: [填写:定义]
|
|
109
98
|
|
|
110
99
|
---
|
|
111
100
|
|
|
112
101
|
## 需求列表
|
|
113
102
|
|
|
114
|
-
### 需求 1: [
|
|
103
|
+
### 需求 1: [填写:需求标题]
|
|
115
104
|
|
|
116
|
-
**用户故事:** 作为 [
|
|
105
|
+
**用户故事:** 作为 [填写:角色],我想要 [填写:功能],以便 [填写:目标]。
|
|
117
106
|
|
|
118
107
|
#### 验收标准
|
|
119
108
|
|
|
120
|
-
1. WHEN [
|
|
121
|
-
2. WHILE [
|
|
122
|
-
3. IF [
|
|
109
|
+
1. WHEN [填写:触发条件] THEN 系统 SHALL [填写:响应]
|
|
110
|
+
2. WHILE [填写:状态条件] THE 系统 SHALL [填写:响应]
|
|
111
|
+
3. IF [填写:异常条件] THEN 系统 SHALL [填写:处理方式]
|
|
123
112
|
|
|
124
113
|
---
|
|
125
114
|
|
|
126
|
-
### 需求 2: [
|
|
115
|
+
### 需求 2: [填写:需求标题]
|
|
127
116
|
|
|
128
|
-
**用户故事:** 作为 [
|
|
117
|
+
**用户故事:** 作为 [填写:角色],我想要 [填写:功能],以便 [填写:目标]。
|
|
129
118
|
|
|
130
119
|
#### 验收标准
|
|
131
120
|
|
|
132
|
-
1. THE 系统 SHALL [
|
|
133
|
-
2. WHEN [
|
|
121
|
+
1. THE 系统 SHALL [填写:响应]
|
|
122
|
+
2. WHEN [填写:触发条件] THE 系统 SHALL [填写:响应]
|
|
134
123
|
|
|
135
124
|
---
|
|
136
125
|
|
|
@@ -151,19 +140,19 @@ const PROMPT_TEMPLATE = `# 添加新功能指南
|
|
|
151
140
|
## 非功能需求
|
|
152
141
|
|
|
153
142
|
### 性能要求
|
|
154
|
-
- [
|
|
143
|
+
- [填写:性能相关需求]
|
|
155
144
|
|
|
156
145
|
### 安全要求
|
|
157
|
-
- [
|
|
146
|
+
- [填写:安全相关需求]
|
|
158
147
|
|
|
159
148
|
### 兼容性要求
|
|
160
|
-
- [
|
|
149
|
+
- [填写:兼容性相关需求]
|
|
161
150
|
|
|
162
151
|
---
|
|
163
152
|
|
|
164
153
|
## 依赖关系
|
|
165
154
|
|
|
166
|
-
- [
|
|
155
|
+
- [填写:列出与其他功能的依赖]
|
|
167
156
|
|
|
168
157
|
---
|
|
169
158
|
|
|
@@ -171,22 +160,13 @@ const PROMPT_TEMPLATE = `# 添加新功能指南
|
|
|
171
160
|
*创建时间: [当前时间]*
|
|
172
161
|
\`\`\`
|
|
173
162
|
|
|
174
|
-
### requirements.md 编写指南
|
|
175
|
-
|
|
176
|
-
1. **功能概述**: 用 2-3 句话描述功能的目的和价值
|
|
177
|
-
2. **术语定义**: 定义文档中使用的专业术语
|
|
178
|
-
3. **需求列表**:
|
|
179
|
-
- 每个需求有独立的标题
|
|
180
|
-
- 包含用户故事(As a... I want... So that...)
|
|
181
|
-
- 验收标准使用 EARS 格式
|
|
182
|
-
4. **非功能需求**: 性能、安全、兼容性等
|
|
183
|
-
5. **依赖关系**: 与其他功能或模块的依赖
|
|
184
|
-
|
|
185
163
|
---
|
|
186
164
|
|
|
187
|
-
|
|
165
|
+
### 文件 2: design.md
|
|
166
|
+
|
|
167
|
+
**文件路径**: \`{docs_dir}/specs/{feature_name}/design.md\`
|
|
188
168
|
|
|
189
|
-
|
|
169
|
+
**文件内容**(请将以下模板保存为该文件,并根据功能描述和项目上下文智能填充标记为 [填写] 的部分):
|
|
190
170
|
|
|
191
171
|
\`\`\`markdown
|
|
192
172
|
# 设计文档:{feature_name}
|
|
@@ -205,27 +185,27 @@ const PROMPT_TEMPLATE = `# 添加新功能指南
|
|
|
205
185
|
|
|
206
186
|
| 类别 | 选择 | 理由 |
|
|
207
187
|
|------|------|------|
|
|
208
|
-
| [
|
|
188
|
+
| [填写:类别] | [填写:技术] | [填写:选择理由] |
|
|
209
189
|
|
|
210
190
|
### 架构设计
|
|
211
191
|
|
|
212
|
-
[
|
|
192
|
+
[填写:描述功能的架构设计,参考项目现有架构]
|
|
213
193
|
|
|
214
194
|
\\\`\\\`\\\`
|
|
215
|
-
[
|
|
195
|
+
[填写:架构图或流程图,使用 ASCII 或 Mermaid]
|
|
216
196
|
\\\`\\\`\\\`
|
|
217
197
|
|
|
218
198
|
---
|
|
219
199
|
|
|
220
200
|
## 数据模型
|
|
221
201
|
|
|
222
|
-
[
|
|
202
|
+
[填写:如果功能涉及数据存储,描述数据模型]
|
|
223
203
|
|
|
224
204
|
### 数据结构
|
|
225
205
|
|
|
226
206
|
\\\`\\\`\\\`typescript
|
|
227
|
-
interface [ModelName] {
|
|
228
|
-
[field]: [type];
|
|
207
|
+
interface [填写:ModelName] {
|
|
208
|
+
[填写:field]: [填写:type];
|
|
229
209
|
}
|
|
230
210
|
\\\`\\\`\\\`
|
|
231
211
|
|
|
@@ -233,32 +213,32 @@ interface [ModelName] {
|
|
|
233
213
|
|
|
234
214
|
## API 设计
|
|
235
215
|
|
|
236
|
-
[
|
|
216
|
+
[填写:如果功能涉及 API,描述 API 设计]
|
|
237
217
|
|
|
238
218
|
### 接口定义
|
|
239
219
|
|
|
240
220
|
| 方法 | 路径 | 描述 |
|
|
241
221
|
|------|------|------|
|
|
242
|
-
| [GET/POST/...] | [
|
|
222
|
+
| [填写:GET/POST/...] | [填写:/path] | [填写:描述] |
|
|
243
223
|
|
|
244
224
|
---
|
|
245
225
|
|
|
246
226
|
## 文件结构
|
|
247
227
|
|
|
248
|
-
[
|
|
228
|
+
[填写:描述功能涉及的文件和目录]
|
|
249
229
|
|
|
250
230
|
\\\`\\\`\\\`
|
|
251
231
|
[项目目录]/
|
|
252
|
-
├── [
|
|
253
|
-
├── [
|
|
254
|
-
└── [
|
|
232
|
+
├── [填写:新增文件1]
|
|
233
|
+
├── [填写:新增文件2]
|
|
234
|
+
└── [填写:修改文件]
|
|
255
235
|
\\\`\\\`\\\`
|
|
256
236
|
|
|
257
237
|
### 文件说明
|
|
258
238
|
|
|
259
239
|
| 文件 | 用途 |
|
|
260
240
|
|------|------|
|
|
261
|
-
| [
|
|
241
|
+
| [填写:文件路径] | [填写:用途说明] |
|
|
262
242
|
|
|
263
243
|
---
|
|
264
244
|
|
|
@@ -268,27 +248,27 @@ interface [ModelName] {
|
|
|
268
248
|
|
|
269
249
|
| 依赖 | 版本 | 用途 |
|
|
270
250
|
|------|------|------|
|
|
271
|
-
| [
|
|
251
|
+
| [填写:依赖名] | [填写:版本] | [填写:用途] |
|
|
272
252
|
|
|
273
253
|
### 内部依赖
|
|
274
254
|
|
|
275
|
-
- [
|
|
255
|
+
- [填写:列出依赖的内部模块]
|
|
276
256
|
|
|
277
257
|
---
|
|
278
258
|
|
|
279
259
|
## 设计决策
|
|
280
260
|
|
|
281
|
-
### 决策 1: [
|
|
261
|
+
### 决策 1: [填写:决策标题]
|
|
282
262
|
|
|
283
|
-
**问题**: [
|
|
263
|
+
**问题**: [填写:描述面临的问题]
|
|
284
264
|
|
|
285
265
|
**选项**:
|
|
286
|
-
1. [
|
|
287
|
-
2. [
|
|
266
|
+
1. [填写:选项 A]: [填写:描述]
|
|
267
|
+
2. [填写:选项 B]: [填写:描述]
|
|
288
268
|
|
|
289
|
-
**决策**: 选择 [
|
|
269
|
+
**决策**: 选择 [填写:选项]
|
|
290
270
|
|
|
291
|
-
**理由**: [
|
|
271
|
+
**理由**: [填写:解释选择的理由]
|
|
292
272
|
|
|
293
273
|
---
|
|
294
274
|
|
|
@@ -296,7 +276,7 @@ interface [ModelName] {
|
|
|
296
276
|
|
|
297
277
|
| 风险 | 影响 | 缓解措施 |
|
|
298
278
|
|------|------|----------|
|
|
299
|
-
| [
|
|
279
|
+
| [填写:风险描述] | [填写:高/中/低] | [填写:缓解措施] |
|
|
300
280
|
|
|
301
281
|
---
|
|
302
282
|
|
|
@@ -304,20 +284,13 @@ interface [ModelName] {
|
|
|
304
284
|
*创建时间: [当前时间]*
|
|
305
285
|
\`\`\`
|
|
306
286
|
|
|
307
|
-
### design.md 编写指南
|
|
308
|
-
|
|
309
|
-
1. **技术方案**: 基于项目上下文选择合适的技术
|
|
310
|
-
2. **架构设计**: 遵循项目现有的架构模式
|
|
311
|
-
3. **数据模型**: 如果涉及数据,定义清晰的数据结构
|
|
312
|
-
4. **API 设计**: 如果涉及 API,遵循项目的 API 规范
|
|
313
|
-
5. **文件结构**: 遵循项目的目录组织方式
|
|
314
|
-
6. **设计决策**: 记录重要的技术决策和理由
|
|
315
|
-
|
|
316
287
|
---
|
|
317
288
|
|
|
318
|
-
|
|
289
|
+
### 文件 3: tasks.md
|
|
290
|
+
|
|
291
|
+
**文件路径**: \`{docs_dir}/specs/{feature_name}/tasks.md\`
|
|
319
292
|
|
|
320
|
-
|
|
293
|
+
**文件内容**(请将以下模板保存为该文件,并根据需求和设计智能生成任务清单):
|
|
321
294
|
|
|
322
295
|
\`\`\`markdown
|
|
323
296
|
# 任务清单:{feature_name}
|
|
@@ -332,42 +305,42 @@ interface [ModelName] {
|
|
|
332
305
|
|
|
333
306
|
### 阶段 1: 准备工作
|
|
334
307
|
|
|
335
|
-
- [ ] 1.1 [
|
|
336
|
-
- [
|
|
337
|
-
- _需求: [
|
|
308
|
+
- [ ] 1.1 [填写:任务标题]
|
|
309
|
+
- [填写:具体操作说明]
|
|
310
|
+
- _需求: [填写:对应的需求编号]_
|
|
338
311
|
|
|
339
|
-
- [ ] 1.2 [
|
|
340
|
-
- [
|
|
341
|
-
- _需求: [
|
|
312
|
+
- [ ] 1.2 [填写:任务标题]
|
|
313
|
+
- [填写:具体操作说明]
|
|
314
|
+
- _需求: [填写:对应的需求编号]_
|
|
342
315
|
|
|
343
316
|
---
|
|
344
317
|
|
|
345
318
|
### 阶段 2: 核心实现
|
|
346
319
|
|
|
347
|
-
- [ ] 2.1 [
|
|
348
|
-
- [
|
|
349
|
-
- _需求: [
|
|
320
|
+
- [ ] 2.1 [填写:任务标题]
|
|
321
|
+
- [填写:具体操作说明]
|
|
322
|
+
- _需求: [填写:对应的需求编号]_
|
|
350
323
|
|
|
351
|
-
- [ ] 2.2 [
|
|
352
|
-
- [
|
|
324
|
+
- [ ] 2.2 [填写:任务标题]
|
|
325
|
+
- [填写:具体操作说明]
|
|
353
326
|
- 依赖: 任务 2.1
|
|
354
|
-
- _需求: [
|
|
327
|
+
- _需求: [填写:对应的需求编号]_
|
|
355
328
|
|
|
356
329
|
---
|
|
357
330
|
|
|
358
331
|
### 阶段 3: 集成测试
|
|
359
332
|
|
|
360
|
-
- [ ] 3.1 [
|
|
361
|
-
- [
|
|
362
|
-
- _需求: [
|
|
333
|
+
- [ ] 3.1 [填写:任务标题]
|
|
334
|
+
- [填写:具体操作说明]
|
|
335
|
+
- _需求: [填写:对应的需求编号]_
|
|
363
336
|
|
|
364
337
|
---
|
|
365
338
|
|
|
366
339
|
## 检查点
|
|
367
340
|
|
|
368
|
-
- [ ] 阶段 1 完成后:[
|
|
369
|
-
- [ ] 阶段 2 完成后:[
|
|
370
|
-
- [ ] 阶段 3 完成后:[
|
|
341
|
+
- [ ] 阶段 1 完成后:[填写:验证内容]
|
|
342
|
+
- [ ] 阶段 2 完成后:[填写:验证内容]
|
|
343
|
+
- [ ] 阶段 3 完成后:[填写:验证内容]
|
|
371
344
|
|
|
372
345
|
---
|
|
373
346
|
|
|
@@ -375,13 +348,13 @@ interface [ModelName] {
|
|
|
375
348
|
|
|
376
349
|
| 文件 | 操作 | 说明 |
|
|
377
350
|
|------|------|------|
|
|
378
|
-
| [
|
|
351
|
+
| [填写:文件路径] | 新建/修改 | [填写:说明] |
|
|
379
352
|
|
|
380
353
|
---
|
|
381
354
|
|
|
382
355
|
## 依赖任务
|
|
383
356
|
|
|
384
|
-
- [
|
|
357
|
+
- [填写:列出依赖的其他任务或功能]
|
|
385
358
|
|
|
386
359
|
---
|
|
387
360
|
|
|
@@ -389,20 +362,16 @@ interface [ModelName] {
|
|
|
389
362
|
*创建时间: [当前时间]*
|
|
390
363
|
\`\`\`
|
|
391
364
|
|
|
392
|
-
### tasks.md 编写指南
|
|
393
|
-
|
|
394
|
-
1. **任务分阶段**: 按逻辑顺序组织任务
|
|
395
|
-
2. **任务粒度**: 每个任务应在 2-4 小时内完成
|
|
396
|
-
3. **依赖关系**: 明确标注任务之间的依赖
|
|
397
|
-
4. **需求追溯**: 每个任务关联对应的需求
|
|
398
|
-
5. **检查点**: 每个阶段结束后有验证点
|
|
399
|
-
6. **文件清单**: 列出所有涉及的文件变更
|
|
400
|
-
|
|
401
365
|
---
|
|
402
366
|
|
|
403
|
-
## ✅
|
|
367
|
+
## ✅ 完成后检查
|
|
368
|
+
|
|
369
|
+
**请确认以下文件已创建**:
|
|
370
|
+
- [ ] \`{docs_dir}/specs/{feature_name}/requirements.md\` - 需求文档已创建
|
|
371
|
+
- [ ] \`{docs_dir}/specs/{feature_name}/design.md\` - 设计文档已创建
|
|
372
|
+
- [ ] \`{docs_dir}/specs/{feature_name}/tasks.md\` - 任务清单已创建
|
|
404
373
|
|
|
405
|
-
|
|
374
|
+
**内容质量检查**:
|
|
406
375
|
|
|
407
376
|
### requirements.md 检查
|
|
408
377
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mcp-probe-kit",
|
|
3
|
-
"version": "2.3.
|
|
3
|
+
"version": "2.3.1",
|
|
4
4
|
"description": "AI-Powered Development Toolkit - MCP Server with 39 practical tools covering code quality, development efficiency, project management, and UI/UX design. Features: Structured Output, Workflow Orchestration, UI/UX Pro Max, and Requirements Interview.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "build/index.js",
|