sdd-full 5.0.7 → 5.0.8
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/.claude/SDD_ORCHESTRATOR_PROMPT.md +301 -0
- package/.claude/agents/orchestrator.md +9 -9
- package/.claude/skills/claudeception/SKILL.md +31 -9
- package/.claude/skills/sdd/SKILL.md +95 -73
- package/bin.js +1 -1
- package/package.json +1 -1
- package/.claude/skills/mempalace-auto-saver/SKILL.md +0 -306
- package/README.md +0 -94
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
# SDD Orchestrator - 调度提示词示例
|
|
2
|
+
|
|
3
|
+
## 快速开始
|
|
4
|
+
|
|
5
|
+
### 方式一:直接启动调度器
|
|
6
|
+
```
|
|
7
|
+
@Orchestrator 帮我启动SDD全流程,我要创建一个新项目
|
|
8
|
+
```
|
|
9
|
+
|
|
10
|
+
### 方式二:指定任务类型
|
|
11
|
+
```
|
|
12
|
+
@Orchestrator 任务类型:new_project
|
|
13
|
+
项目名称:个人备忘录APP
|
|
14
|
+
需求描述:一个简单的个人备忘录应用,支持增删改查
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## 场景一:从零开始新项目
|
|
20
|
+
|
|
21
|
+
### 完整提示词
|
|
22
|
+
```
|
|
23
|
+
@Orchestrator
|
|
24
|
+
|
|
25
|
+
任务类型:new_project
|
|
26
|
+
项目名称:[你的项目名称]
|
|
27
|
+
需求描述:[详细描述你的项目需求]
|
|
28
|
+
|
|
29
|
+
请按SDD全流程执行,包括:
|
|
30
|
+
1. 需求分析阶段
|
|
31
|
+
2. 设计规划阶段
|
|
32
|
+
3. MVP验证阶段(可选)
|
|
33
|
+
4. 开发执行阶段
|
|
34
|
+
5. 质量保障阶段
|
|
35
|
+
6. 发布运维阶段
|
|
36
|
+
7. 知识沉淀阶段
|
|
37
|
+
|
|
38
|
+
每个阶段完成后请确认是否继续下一阶段。
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### 简化提示词
|
|
42
|
+
```
|
|
43
|
+
@Orchestrator 我要从零开始创建一个[项目名称]项目,需求是:[需求描述]
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## 场景二:小型功能迭代
|
|
49
|
+
|
|
50
|
+
### 完整提示词
|
|
51
|
+
```
|
|
52
|
+
@Orchestrator
|
|
53
|
+
|
|
54
|
+
任务类型:feature_iteration
|
|
55
|
+
项目名称:[现有项目名称]
|
|
56
|
+
功能描述:[要添加/修改的功能描述]
|
|
57
|
+
|
|
58
|
+
请按小型迭代流程执行:
|
|
59
|
+
1. 需求澄清
|
|
60
|
+
2. 快速SDD补充
|
|
61
|
+
3. 开发实现
|
|
62
|
+
4. 完成前验证
|
|
63
|
+
5. 质量门禁
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
### 简化提示词
|
|
67
|
+
```
|
|
68
|
+
@Orchestrator 帮我在[项目名称]中添加一个[功能描述]功能,走快速迭代流程
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## 场景三:Bug修复
|
|
74
|
+
|
|
75
|
+
### 通用Bug修复提示词
|
|
76
|
+
```
|
|
77
|
+
@Orchestrator
|
|
78
|
+
|
|
79
|
+
任务类型:bug_fix
|
|
80
|
+
项目名称:[项目名称]
|
|
81
|
+
Bug描述:[详细描述Bug现象]
|
|
82
|
+
Bug类型:[simple|complex|performance|security|regression|flutter_ios]
|
|
83
|
+
|
|
84
|
+
请调用对应的Bug处理Agent来修复这个问题。
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### 简单Bug修复
|
|
88
|
+
```
|
|
89
|
+
@Orchestrator 帮我修复这个简单Bug:[Bug描述]
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### 复杂Bug调试
|
|
93
|
+
```
|
|
94
|
+
@Orchestrator 这个Bug比较复杂,原因不明:[Bug描述],请调用Bug Agent进行系统化调试
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### 性能问题
|
|
98
|
+
```
|
|
99
|
+
@Orchestrator 我发现性能问题:[性能问题描述],请调用Perf Agent进行优化
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### 安全漏洞
|
|
103
|
+
```
|
|
104
|
+
@Orchestrator 发现安全问题:[安全问题描述],请调用Security Agent进行审计和修复
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### 回归Bug
|
|
108
|
+
```
|
|
109
|
+
@Orchestrator 发现回归问题:[回归问题描述],之前在版本[版本号]是正常的,请调用Regression Agent处理
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
### Flutter iOS真机问题
|
|
113
|
+
```
|
|
114
|
+
@Orchestrator Flutter iOS真机出现问题:[问题描述],请调用Flutter Agent处理
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
## 场景四:代码发布
|
|
120
|
+
|
|
121
|
+
### 完整提示词
|
|
122
|
+
```
|
|
123
|
+
@Orchestrator
|
|
124
|
+
|
|
125
|
+
任务类型:code_release
|
|
126
|
+
项目名称:[项目名称]
|
|
127
|
+
版本号:[版本号]
|
|
128
|
+
发布范围:[发布内容描述]
|
|
129
|
+
|
|
130
|
+
请执行发布流程:
|
|
131
|
+
1. 质量门禁检查
|
|
132
|
+
2. 完成开发分支
|
|
133
|
+
3. 版本发布
|
|
134
|
+
4. 知识沉淀
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
### 简化提示词
|
|
138
|
+
```
|
|
139
|
+
@Orchestrator 我要发布[项目名称]的[版本号]版本
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## 场景五:单独调用某个Agent
|
|
145
|
+
|
|
146
|
+
### 调用需求分析Agent
|
|
147
|
+
```
|
|
148
|
+
@Requirement Agent
|
|
149
|
+
帮我做[项目名称]的需求分析,包括:
|
|
150
|
+
- 市场调研
|
|
151
|
+
- 竞品分析
|
|
152
|
+
- 头脑风暴
|
|
153
|
+
- PRD编写
|
|
154
|
+
- SDD拆分
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
### 调用设计规划Agent
|
|
158
|
+
```
|
|
159
|
+
@Design Agent
|
|
160
|
+
基于已有SDD,帮我完成:
|
|
161
|
+
- UI交互SDD
|
|
162
|
+
- 功能实现SDD
|
|
163
|
+
- 测试SDD
|
|
164
|
+
- 部署SDD
|
|
165
|
+
- 运维SDD
|
|
166
|
+
- 实现计划
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
### 调用开发执行Agent
|
|
170
|
+
```
|
|
171
|
+
@Dev Agent
|
|
172
|
+
按SDD实现以下功能:[功能描述]
|
|
173
|
+
要求:
|
|
174
|
+
- TDD开发
|
|
175
|
+
- 完整测试
|
|
176
|
+
- 完成前验证
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
### 调用质量保障Agent
|
|
180
|
+
```
|
|
181
|
+
@QA Agent
|
|
182
|
+
请执行质量门禁检查,包括:
|
|
183
|
+
- 代码质量
|
|
184
|
+
- 测试覆盖率
|
|
185
|
+
- 性能基准
|
|
186
|
+
- 安全审计
|
|
187
|
+
- 代码审查
|
|
188
|
+
- 文档完整性
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
### 调用发布运维Agent
|
|
192
|
+
```
|
|
193
|
+
@Release Agent
|
|
194
|
+
请帮我完成:
|
|
195
|
+
- 代码合并
|
|
196
|
+
- 版本发布
|
|
197
|
+
- 部署执行
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
### 调用知识沉淀Agent
|
|
201
|
+
```
|
|
202
|
+
@Knowledge Agent
|
|
203
|
+
请帮我总结本次[项目/迭代/Bug修复]的经验教训,记录技术债务
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
---
|
|
207
|
+
|
|
208
|
+
## 场景六:MVP验证
|
|
209
|
+
|
|
210
|
+
### 提示词
|
|
211
|
+
```
|
|
212
|
+
@Orchestrator
|
|
213
|
+
|
|
214
|
+
项目名称:[项目名称]
|
|
215
|
+
MVP范围:[描述MVP要包含的核心功能]
|
|
216
|
+
|
|
217
|
+
请执行MVP验证流程:
|
|
218
|
+
1. MVP功能筛选
|
|
219
|
+
2. MVP开发
|
|
220
|
+
3. 用户介入测试
|
|
221
|
+
4. 迭代优化
|
|
222
|
+
5. 用户确认
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## 常用技巧
|
|
228
|
+
|
|
229
|
+
### 1. 指定跳过某些阶段
|
|
230
|
+
```
|
|
231
|
+
@Orchestrator
|
|
232
|
+
任务类型:new_project
|
|
233
|
+
项目名称:[项目名称]
|
|
234
|
+
跳过:市场调研、竞品分析
|
|
235
|
+
直接从:PRD编写开始
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
### 2. 指定使用某些技能
|
|
239
|
+
```
|
|
240
|
+
@Orchestrator
|
|
241
|
+
请确保使用以下技能:
|
|
242
|
+
- brainstorming
|
|
243
|
+
- prd-write
|
|
244
|
+
- sdd-full
|
|
245
|
+
- quality-gate
|
|
246
|
+
- claudeception
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
### 3. 要求输出特定格式
|
|
250
|
+
```
|
|
251
|
+
@Orchestrator
|
|
252
|
+
请按以下格式输出每个阶段的结果:
|
|
253
|
+
1. 阶段名称
|
|
254
|
+
2. 完成内容
|
|
255
|
+
3. 输出文档
|
|
256
|
+
4. 下一步建议
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
### 4. 多人协作场景
|
|
260
|
+
```
|
|
261
|
+
@Orchestrator
|
|
262
|
+
这个项目由以下角色协作:
|
|
263
|
+
- 产品经理:负责需求
|
|
264
|
+
- 设计师:负责UI
|
|
265
|
+
- 前端开发:负责前端
|
|
266
|
+
- 后端开发:负责后端
|
|
267
|
+
- 测试:负责质量
|
|
268
|
+
|
|
269
|
+
请为每个角色分配相应的Agent任务。
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
---
|
|
273
|
+
|
|
274
|
+
## Agent职责速查
|
|
275
|
+
|
|
276
|
+
| Agent | 职责 | 主要技能 |
|
|
277
|
+
|-------|------|---------|
|
|
278
|
+
| Orchestrator | 中心调度、流程管理 | 全流程协调 |
|
|
279
|
+
| Requirement Agent | 需求分析、PRD、SDD拆分 | brainstorming, market-research, prd-write, sdd |
|
|
280
|
+
| Design Agent | UI设计、架构设计、测试设计 | ui-sdd, sdd-code, sdd-test, sdd-deploy, sdd-ops |
|
|
281
|
+
| Dev Agent | 开发实现、TDD、调试 | test-driven-development, systematic-debugging, sdd-add |
|
|
282
|
+
| QA Agent | 测试、代码审查、质量门禁 | quality-gate, security-audit, bdd-acceptance |
|
|
283
|
+
| Release Agent | 分支管理、发布、部署 | finishing-a-development-branch, release-flow, sdd-deploy |
|
|
284
|
+
| Knowledge Agent | 经验记录、技术债务 | claudeception, mempalace-auto-saver |
|
|
285
|
+
| Bug Agent | 复杂Bug调试 | bug-reproduction-confirm, systematic-debugging |
|
|
286
|
+
| Perf Agent | 性能优化 | performance-optimize |
|
|
287
|
+
| Security Agent | 安全审计 | security-audit |
|
|
288
|
+
| Regression Agent | 回归Bug修复 | sdd-test, systematic-debugging |
|
|
289
|
+
| Flutter Agent | Flutter iOS调试 | ios-full-auto-debug, flutter-errors |
|
|
290
|
+
|
|
291
|
+
---
|
|
292
|
+
|
|
293
|
+
## 强制规则
|
|
294
|
+
|
|
295
|
+
⚠️ **重要:所有流程必须遵守以下强制规则**
|
|
296
|
+
|
|
297
|
+
1. **所有发布必须经过质量门禁(quality-gate)**
|
|
298
|
+
2. **所有开发完成必须经过完成前验证(verification-before-completion)**
|
|
299
|
+
3. **所有流程结束必须进行知识沉淀(claudeception)**
|
|
300
|
+
4. **Bug修复必须先复现确认(bug-reproduction-confirm)**
|
|
301
|
+
5. **测试必须覆盖安全测试(security-audit)**
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: sdd-
|
|
3
|
-
description:
|
|
2
|
+
name: sdd-flow
|
|
3
|
+
description: Main entry point for SDD workflow - automatically identify intent and route to appropriate development paths
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# SDD
|
|
6
|
+
# SDD Flow - 一站式开发入口
|
|
7
7
|
|
|
8
|
-
>
|
|
8
|
+
> **快捷入口**:在 Claude Code 中使用 `/full` 命令或直接描述需求,自动触发
|
|
9
9
|
|
|
10
10
|
## 核心职责
|
|
11
|
-
|
|
11
|
+
一站式开发入口,负责:
|
|
12
12
|
1. 识别用户意图和任务类型
|
|
13
13
|
2. 根据SDD全流程规则判断执行路径
|
|
14
14
|
3. 调用对应技能完成任务
|
|
@@ -108,7 +108,7 @@ description: Use as the default entry point in Claude Code to automatically iden
|
|
|
108
108
|
### 示例1:从零开始新项目
|
|
109
109
|
```
|
|
110
110
|
用户:我要创建一个个人备忘录APP
|
|
111
|
-
|
|
111
|
+
SDD Flow:识别为新项目
|
|
112
112
|
↓
|
|
113
113
|
market-research(市场调研)
|
|
114
114
|
↓
|
|
@@ -128,7 +128,7 @@ sdd(需求拆分)
|
|
|
128
128
|
### 示例2:新增功能
|
|
129
129
|
```
|
|
130
130
|
用户:新增一个分享功能
|
|
131
|
-
|
|
131
|
+
SDD Flow:识别为小型功能迭代
|
|
132
132
|
↓
|
|
133
133
|
sdd-add(快速开发)
|
|
134
134
|
↓
|
|
@@ -140,7 +140,7 @@ quality-gate(质量检查)
|
|
|
140
140
|
### 示例3:修复性能问题
|
|
141
141
|
```
|
|
142
142
|
用户:APP响应很慢,需要优化性能
|
|
143
|
-
|
|
143
|
+
SDD Flow:识别为性能问题
|
|
144
144
|
↓
|
|
145
145
|
performance-optimize(性能优化)
|
|
146
146
|
↓
|
|
@@ -154,7 +154,7 @@ claudeception(知识沉淀)
|
|
|
154
154
|
### 示例4:发布上线
|
|
155
155
|
```
|
|
156
156
|
用户:准备发布v1.0版本
|
|
157
|
-
|
|
157
|
+
SDD Flow:识别为代码发布
|
|
158
158
|
↓
|
|
159
159
|
verification-before-completion(验证)
|
|
160
160
|
↓
|
|
@@ -1,14 +1,29 @@
|
|
|
1
|
+
【claude code调用标识:claudeception】
|
|
2
|
+
【trae调用标识:claudeception+知识提取】
|
|
3
|
+
【流程场景:1.完整3阶段SDD流程、2.功能迭代、3.Bug处理结束后】
|
|
4
|
+
|
|
1
5
|
---
|
|
2
6
|
name: claudeception
|
|
3
|
-
description:
|
|
7
|
+
description: 持续学习系统,从工作会话中提取可复用知识,并将其编码为标准化的技能
|
|
8
|
+
trigger_words:
|
|
9
|
+
- 提取技能
|
|
10
|
+
- 保存经验
|
|
11
|
+
- 知识沉淀
|
|
12
|
+
- claudeception
|
|
13
|
+
- 把这个保存为技能
|
|
4
14
|
---
|
|
5
15
|
|
|
6
|
-
# Claudeception
|
|
16
|
+
# Claudeception - 持续学习系统
|
|
7
17
|
|
|
8
|
-
|
|
18
|
+
## 核心职责
|
|
19
|
+
从工作会话中提取可复用知识,并将其编码为标准化的技能,实现自主改进。
|
|
9
20
|
|
|
10
|
-
##
|
|
21
|
+
## 与其他技能的协作
|
|
22
|
+
- **mempalace-auto-saver**:保存原始对话历史
|
|
23
|
+
- **claudeception**:从历史中提炼可复用技能
|
|
24
|
+
- 两者配合:mempalace-auto-saver → claudeception(可选)
|
|
11
25
|
|
|
26
|
+
## 何时提取技能
|
|
12
27
|
遇到以下情况时提取:
|
|
13
28
|
1. **非显而易见的解决方案** - 调试、变通方案、难以发现的修复
|
|
14
29
|
2. **项目特定模式** - 未在其他地方记录的约定
|
|
@@ -17,7 +32,6 @@ description: Use when encountering non-obvious debugging solutions, workarounds,
|
|
|
17
32
|
5. **工作流优化** - 简化的多步骤流程
|
|
18
33
|
|
|
19
34
|
## 技能质量标准
|
|
20
|
-
|
|
21
35
|
- 可在未来任务中复用
|
|
22
36
|
- 非琐碎(需要发现,而不只是文档)
|
|
23
37
|
- 具体的触发条件和清晰的解决方案
|
|
@@ -26,10 +40,18 @@ description: Use when encountering non-obvious debugging solutions, workarounds,
|
|
|
26
40
|
## 提取流程
|
|
27
41
|
|
|
28
42
|
### 1. 检查现有技能
|
|
29
|
-
|
|
43
|
+
搜索现有技能以避免重复。
|
|
30
44
|
|
|
31
|
-
|
|
45
|
+
### 2. 识别知识价值
|
|
46
|
+
评估是否符合技能质量标准。
|
|
32
47
|
|
|
33
|
-
|
|
48
|
+
### 3. 提炼技能内容
|
|
49
|
+
- 明确触发条件
|
|
50
|
+
- 定义清晰步骤
|
|
51
|
+
- 包含完整示例
|
|
34
52
|
|
|
35
|
-
|
|
53
|
+
### 4. 编码为标准格式
|
|
54
|
+
使用标准SKILL.md格式保存。
|
|
55
|
+
|
|
56
|
+
## 安装说明
|
|
57
|
+
此技能已包含在 `sdd-full` npm 包中,通过 `npx sdd-full install` 自动安装!
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
***
|
|
2
|
+
|
|
2
3
|
name: sdd
|
|
3
4
|
description: Use when splitting requirements into user stories, architecture boundaries, database/API contracts, and producing SDD specifications for implementation
|
|
4
|
-
|
|
5
|
+
--------------------------------------------------------------------------------------------------------------------------------------------------------------------
|
|
5
6
|
|
|
6
7
|
# SDD 需求拆分(需求层核心技能)
|
|
7
8
|
|
|
@@ -12,23 +13,24 @@ description: Use when splitting requirements into user stories, architecture bou
|
|
|
12
13
|
**大需求 → Epic拆分(超大需求适用)→ 用户故事拆分(INVEST原则)→ 前后端架构拆分 → 数据库+接口拆分 → SDD垂直切片**
|
|
13
14
|
|
|
14
15
|
核心目的:
|
|
16
|
+
|
|
15
17
|
- 产出符合INVEST原则的用户故事
|
|
16
18
|
- 明确前后端权责边界与协作契约
|
|
17
19
|
- 生成子代理可直接消费的SDD功能规格
|
|
18
20
|
|
|
19
|
-
|
|
21
|
+
***
|
|
20
22
|
|
|
21
23
|
## 职责边界
|
|
22
24
|
|
|
23
|
-
| 技能
|
|
24
|
-
|
|
25
|
-
| sdd
|
|
26
|
-
| ui-sdd
|
|
27
|
-
| sdd-code | 实现层·功能实现设计 | 代码实现SDD
|
|
25
|
+
| 技能 | 职责 | 产出 |
|
|
26
|
+
| -------- | ---------- | -------------- |
|
|
27
|
+
| sdd | 需求层·业务拆分 | 用户故事、架构边界、接口契约 |
|
|
28
|
+
| ui-sdd | 架构层·UI交互设计 | UI页面/组件/弹窗SDD |
|
|
29
|
+
| sdd-code | 实现层·功能实现设计 | 代码实现SDD |
|
|
28
30
|
|
|
29
31
|
**注意**:本技能不负责详细UI设计和代码实现设计,相关工作请分别调用 **ui-sdd** 和 **sdd-code**。
|
|
30
32
|
|
|
31
|
-
|
|
33
|
+
***
|
|
32
34
|
|
|
33
35
|
## 何时使用
|
|
34
36
|
|
|
@@ -37,7 +39,7 @@ description: Use when splitting requirements into user stories, architecture bou
|
|
|
37
39
|
- 在完整全流程开发中进行需求分析阶段工作
|
|
38
40
|
- 需要为子代理驱动开发准备可执行的SDD规格
|
|
39
41
|
|
|
40
|
-
|
|
42
|
+
***
|
|
41
43
|
|
|
42
44
|
## 核心流程
|
|
43
45
|
|
|
@@ -74,7 +76,7 @@ digraph requirement_splitting {
|
|
|
74
76
|
流程本质:**先垂直切片(用户价值维度),再水平分层(技术栈维度)**
|
|
75
77
|
优势:**既保证独立交付价值,又确保技术架构规范**
|
|
76
78
|
|
|
77
|
-
|
|
79
|
+
***
|
|
78
80
|
|
|
79
81
|
## 个人敏捷工作流
|
|
80
82
|
|
|
@@ -86,14 +88,14 @@ digraph requirement_splitting {
|
|
|
86
88
|
|
|
87
89
|
### 2. 关键实践
|
|
88
90
|
|
|
89
|
-
| 实践
|
|
90
|
-
|
|
91
|
-
| 分批交付
|
|
92
|
-
| 并行开发
|
|
93
|
-
| 契约版本化 | 每批故事对应一个契约版本,变更只影响当前批次
|
|
94
|
-
| 子代理适配 | 每个SDD对应一个子代理任务,完成后自动审查
|
|
91
|
+
| 实践 | 具体做法 | 优势 |
|
|
92
|
+
| ----- | ------------------------------- | ------------------ |
|
|
93
|
+
| 分批交付 | 按用户故事优先级分组,每批1–3个故事,分批完成水平拆分与开发 | 避免全量冻结,支持快速迭代,降低风险 |
|
|
94
|
+
| 并行开发 | 前端按Mock数据开发,后端按契约开发,互不依赖 | 缩短迭代周期,提高开发效率 |
|
|
95
|
+
| 契约版本化 | 每批故事对应一个契约版本,变更只影响当前批次 | 控制变更范围,减少返工成本 |
|
|
96
|
+
| 子代理适配 | 每个SDD对应一个子代理任务,完成后自动审查 | 适配工作流,保证质量 |
|
|
95
97
|
|
|
96
|
-
|
|
98
|
+
***
|
|
97
99
|
|
|
98
100
|
## 第0步:Epic拆分(超大需求适用)
|
|
99
101
|
|
|
@@ -104,6 +106,7 @@ digraph requirement_splitting {
|
|
|
104
106
|
### Epic定义与识别标准
|
|
105
107
|
|
|
106
108
|
什么是Epic?
|
|
109
|
+
|
|
107
110
|
- **范围**:预计超过2周完成
|
|
108
111
|
- **价值**:代表宏观用户价值或业务目标
|
|
109
112
|
- **特点**:模糊性高,细节不明确,需要进一步拆解
|
|
@@ -138,15 +141,15 @@ digraph requirement_splitting {
|
|
|
138
141
|
|
|
139
142
|
### 6种Epic拆分模式(按场景选择)
|
|
140
143
|
|
|
141
|
-
| 拆分模式
|
|
142
|
-
|
|
143
|
-
| **按用户旅程拆分**
|
|
144
|
-
| **按功能模块拆分**
|
|
145
|
-
| **按平台适配拆分**
|
|
146
|
-
| **按复杂度分层拆分** | 功能复杂度差异大的功能
|
|
147
|
-
| **按时间阶段拆分**
|
|
144
|
+
| 拆分模式 | 适用场景 | 示例 |
|
|
145
|
+
| ------------ | ------------ | -------------------- |
|
|
146
|
+
| **按用户旅程拆分** | 有明确用户操作流程的功能 | 购物流程:浏览→详情→加购→结算→订单 |
|
|
147
|
+
| **按功能模块拆分** | 模块化强的系统 | 电商系统:用户→商品→订单→支付 |
|
|
148
|
+
| **按平台适配拆分** | 跨平台开发 | 登录功能:Web→iOS→Android |
|
|
149
|
+
| **按复杂度分层拆分** | 功能复杂度差异大的功能 | 搜索功能:基础搜索→高级筛选→智能推荐 |
|
|
150
|
+
| **按时间阶段拆分** | 有明确时间节点的功能 | 会员系统:MVP版→高级版→尊享版 |
|
|
148
151
|
|
|
149
|
-
|
|
152
|
+
***
|
|
150
153
|
|
|
151
154
|
## 第0.5步:拆用户故事
|
|
152
155
|
|
|
@@ -223,6 +226,7 @@ digraph requirement_splitting {
|
|
|
223
226
|
### 三种验收标准格式
|
|
224
227
|
|
|
225
228
|
#### 1. BDD场景格式(推荐)
|
|
229
|
+
|
|
226
230
|
```markdown
|
|
227
231
|
### 主场景
|
|
228
232
|
Given [初始状态/前置条件]
|
|
@@ -232,6 +236,7 @@ And [附加验证点1]
|
|
|
232
236
|
```
|
|
233
237
|
|
|
234
238
|
#### 2. 规则列表格式(适合简单功能)
|
|
239
|
+
|
|
235
240
|
```markdown
|
|
236
241
|
- ✅ 必须支持用户名/邮箱/手机号三种登录方式
|
|
237
242
|
- ✅ 密码输入框必须隐藏明文显示
|
|
@@ -239,18 +244,19 @@ And [附加验证点1]
|
|
|
239
244
|
```
|
|
240
245
|
|
|
241
246
|
#### 3. 多平台矩阵格式(适合复杂跨平台功能)
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
|
247
|
+
|
|
248
|
+
| 场景 | 操作 | 预期结果(Web) | 预期结果(iOS) |
|
|
249
|
+
| ---- | -------- | --------- | --------- |
|
|
250
|
+
| 正常登录 | 输入正确账号密码 | 跳转首页 | 跳转首页 |
|
|
245
251
|
|
|
246
252
|
### 敏捷故事拆分方法
|
|
247
253
|
|
|
248
|
-
| 方法
|
|
249
|
-
|
|
254
|
+
| 方法 | 适用场景 | 示例 |
|
|
255
|
+
| ------- | ------------ | ------------------- |
|
|
250
256
|
| 按用户旅程拆分 | 有明确用户操作流程的功能 | 购物流程:浏览→详情→加购→结算→订单 |
|
|
251
|
-
| 按数据边界拆分 | 包含多数据实体的功能
|
|
252
|
-
| 按操作路径拆分 | 有多种执行路径的功能
|
|
253
|
-
| 按优先级拆分
|
|
257
|
+
| 按数据边界拆分 | 包含多数据实体的功能 | 简历功能:基本信息→工作经历→教育背景 |
|
|
258
|
+
| 按操作路径拆分 | 有多种执行路径的功能 | 登录功能:正常登录→忘记密码→注册 |
|
|
259
|
+
| 按优先级拆分 | 大型复杂功能 | 支付功能:基础支付→优惠券→积分抵扣 |
|
|
254
260
|
|
|
255
261
|
### 故事拆分原则
|
|
256
262
|
|
|
@@ -260,7 +266,7 @@ And [附加验证点1]
|
|
|
260
266
|
4. 优先拆分**核心价值**故事,再拆分边缘功能
|
|
261
267
|
5. 每个故事必须有明确的**验收标准**和**优先级**
|
|
262
268
|
|
|
263
|
-
|
|
269
|
+
***
|
|
264
270
|
|
|
265
271
|
## 第1步:拆UI设计
|
|
266
272
|
|
|
@@ -311,7 +317,7 @@ And [附加验证点1]
|
|
|
311
317
|
- **严禁**出现接口字段、表结构、技术选型
|
|
312
318
|
- 覆盖**核心用户旅程**,边缘页面可后续补充
|
|
313
319
|
|
|
314
|
-
|
|
320
|
+
***
|
|
315
321
|
|
|
316
322
|
## 第2步:拆前后端分离架构
|
|
317
323
|
|
|
@@ -370,7 +376,7 @@ And [附加验证点1]
|
|
|
370
376
|
- **边界刚性**:不允许前端写复杂业务、不允许后端渲染页面
|
|
371
377
|
- **敏捷适配**:支持按用户故事分批交付,不要求全量完成后再上线
|
|
372
378
|
|
|
373
|
-
|
|
379
|
+
***
|
|
374
380
|
|
|
375
381
|
## 第3步:拆数据库+接口
|
|
376
382
|
|
|
@@ -454,7 +460,7 @@ And [附加验证点1]
|
|
|
454
460
|
|
|
455
461
|
### 接口契约模板
|
|
456
462
|
|
|
457
|
-
|
|
463
|
+
````markdown
|
|
458
464
|
# 接口契约(RESTful,JSON,版本 v1)
|
|
459
465
|
|
|
460
466
|
## 通用规则
|
|
@@ -471,13 +477,14 @@ And [附加验证点1]
|
|
|
471
477
|
"message": "success",
|
|
472
478
|
"data": {}
|
|
473
479
|
}
|
|
474
|
-
|
|
480
|
+
````
|
|
475
481
|
|
|
476
482
|
## 用户模块(关联故事1)
|
|
477
483
|
|
|
478
484
|
### POST /api/v1/auth/login - 用户登录
|
|
479
485
|
|
|
480
486
|
请求:
|
|
487
|
+
|
|
481
488
|
```json
|
|
482
489
|
{
|
|
483
490
|
"username": "string",
|
|
@@ -487,6 +494,7 @@ And [附加验证点1]
|
|
|
487
494
|
```
|
|
488
495
|
|
|
489
496
|
响应成功(200):
|
|
497
|
+
|
|
490
498
|
```json
|
|
491
499
|
{
|
|
492
500
|
"code": 0,
|
|
@@ -504,6 +512,7 @@ And [附加验证点1]
|
|
|
504
512
|
```
|
|
505
513
|
|
|
506
514
|
响应失败(401):
|
|
515
|
+
|
|
507
516
|
```json
|
|
508
517
|
{
|
|
509
518
|
"code": 401,
|
|
@@ -515,6 +524,7 @@ And [附加验证点1]
|
|
|
515
524
|
### POST /api/v1/auth/register - 用户注册
|
|
516
525
|
|
|
517
526
|
请求:
|
|
527
|
+
|
|
518
528
|
```json
|
|
519
529
|
{
|
|
520
530
|
"username": "string",
|
|
@@ -528,6 +538,7 @@ And [附加验证点1]
|
|
|
528
538
|
需要认证。
|
|
529
539
|
|
|
530
540
|
响应:
|
|
541
|
+
|
|
531
542
|
```json
|
|
532
543
|
{
|
|
533
544
|
"code": 0,
|
|
@@ -547,12 +558,14 @@ And [附加验证点1]
|
|
|
547
558
|
### GET /api/v1/goods/list - 商品列表(分页)
|
|
548
559
|
|
|
549
560
|
请求参数(Query):
|
|
561
|
+
|
|
550
562
|
- page(INT,页码,默认1)
|
|
551
563
|
- pageSize(INT,每页数量,默认20)
|
|
552
564
|
- categoryId(INT,分类ID,可选)
|
|
553
565
|
- keyword(STRING,搜索关键词,可选)
|
|
554
566
|
|
|
555
567
|
响应:
|
|
568
|
+
|
|
556
569
|
```json
|
|
557
570
|
{
|
|
558
571
|
"code": 0,
|
|
@@ -579,6 +592,7 @@ And [附加验证点1]
|
|
|
579
592
|
### GET /api/v1/goods/detail/:id - 商品详情
|
|
580
593
|
|
|
581
594
|
响应:
|
|
595
|
+
|
|
582
596
|
```json
|
|
583
597
|
{
|
|
584
598
|
"code": 0,
|
|
@@ -605,6 +619,7 @@ And [附加验证点1]
|
|
|
605
619
|
需要认证。
|
|
606
620
|
|
|
607
621
|
请求:
|
|
622
|
+
|
|
608
623
|
```json
|
|
609
624
|
{
|
|
610
625
|
"goodsId": 1,
|
|
@@ -617,6 +632,7 @@ And [附加验证点1]
|
|
|
617
632
|
需要认证。
|
|
618
633
|
|
|
619
634
|
响应:
|
|
635
|
+
|
|
620
636
|
```json
|
|
621
637
|
{
|
|
622
638
|
"code": 0,
|
|
@@ -642,6 +658,7 @@ And [附加验证点1]
|
|
|
642
658
|
需要认证。
|
|
643
659
|
|
|
644
660
|
请求:
|
|
661
|
+
|
|
645
662
|
```json
|
|
646
663
|
{
|
|
647
664
|
"addressId": 1,
|
|
@@ -650,6 +667,7 @@ And [附加验证点1]
|
|
|
650
667
|
```
|
|
651
668
|
|
|
652
669
|
响应:
|
|
670
|
+
|
|
653
671
|
```json
|
|
654
672
|
{
|
|
655
673
|
"code": 0,
|
|
@@ -668,6 +686,7 @@ And [附加验证点1]
|
|
|
668
686
|
### GET /api/v1/order/detail/:id - 订单详情
|
|
669
687
|
|
|
670
688
|
需要认证。
|
|
689
|
+
|
|
671
690
|
```
|
|
672
691
|
|
|
673
692
|
### 拆分原则
|
|
@@ -694,18 +713,20 @@ SDD 是**给子代理的最小可执行单元**:一个 SDD = 一个用户故
|
|
|
694
713
|
### SDD 目录结构
|
|
695
714
|
|
|
696
715
|
```
|
|
716
|
+
|
|
697
717
|
specs/
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
718
|
+
story1-login/
|
|
719
|
+
login-frontend.md
|
|
720
|
+
login-backend.md
|
|
721
|
+
story2-goods/
|
|
722
|
+
goods-list-frontend.md
|
|
723
|
+
goods-list-backend.md
|
|
724
|
+
goods-detail-frontend.md
|
|
725
|
+
goods-detail-backend.md
|
|
726
|
+
story3-order/
|
|
727
|
+
...
|
|
728
|
+
|
|
729
|
+
````
|
|
709
730
|
|
|
710
731
|
### 单个 SDD 模板
|
|
711
732
|
|
|
@@ -777,7 +798,7 @@ specs/
|
|
|
777
798
|
1. 遵循 TDD 流程:先写测试 → 再写代码 → 重构
|
|
778
799
|
2. 完成后通过两阶段审查:spec合规性审查 → 代码质量审查
|
|
779
800
|
3. 审查通过后提交,进入下一个子任务
|
|
780
|
-
|
|
801
|
+
````
|
|
781
802
|
|
|
782
803
|
### 拆分原则
|
|
783
804
|
|
|
@@ -786,19 +807,19 @@ specs/
|
|
|
786
807
|
- **依赖显式化**:所有依赖必须引用已固化的设计文档
|
|
787
808
|
- **验收标准可测试**:采用 BDD 风格,输入输出明确,无模糊描述
|
|
788
809
|
|
|
789
|
-
|
|
810
|
+
***
|
|
790
811
|
|
|
791
812
|
## 非功能需求处理指南
|
|
792
813
|
|
|
793
814
|
### 非功能需求分类与处理方式
|
|
794
815
|
|
|
795
|
-
| 分类
|
|
796
|
-
|
|
797
|
-
| **性能**
|
|
798
|
-
| **安全性**
|
|
799
|
-
| **可用性**
|
|
800
|
-
| **兼容性**
|
|
801
|
-
| **可维护性** | 代码覆盖率≥80%
|
|
816
|
+
| 分类 | 示例 | 处理方式 | 优先级 |
|
|
817
|
+
| -------- | --------------------- | ------------ | --- |
|
|
818
|
+
| **性能** | 响应时间≤2秒,并发用户≥100 | 融入Story验收标准 | 高 |
|
|
819
|
+
| **安全性** | 数据加密,权限控制,防SQL注入 | 融入DoD + 独立测试 | 最高 |
|
|
820
|
+
| **可用性** | 系统可用性≥99.9% | 架构设计 | 高 |
|
|
821
|
+
| **兼容性** | 适配iOS 14+,Android 10+ | 平台适配Story | 中 |
|
|
822
|
+
| **可维护性** | 代码覆盖率≥80% | 融入DoD | 中 |
|
|
802
823
|
|
|
803
824
|
### 个人DoD(完成的定义)
|
|
804
825
|
|
|
@@ -826,16 +847,16 @@ specs/
|
|
|
826
847
|
4. 兼容性:在所有目标平台显示一致
|
|
827
848
|
```
|
|
828
849
|
|
|
829
|
-
|
|
850
|
+
***
|
|
830
851
|
|
|
831
852
|
## 故事估算方法指南
|
|
832
853
|
|
|
833
854
|
### 两种核心估算方法对比
|
|
834
855
|
|
|
835
|
-
| 估算方法
|
|
836
|
-
|
|
837
|
-
| **理想人天** | 无中断情况下完成任务的时间(人天) | 直观易懂,适合个人开发
|
|
838
|
-
| **故事点**
|
|
856
|
+
| 估算方法 | 定义 | 优点 | 缺点 | 适用场景 |
|
|
857
|
+
| -------- | ----------------- | ------------ | -------- | -------- |
|
|
858
|
+
| **理想人天** | 无中断情况下完成任务的时间(人天) | 直观易懂,适合个人开发 | 受个人能力影响大 | 个人开发、小项目 |
|
|
859
|
+
| **故事点** | 相对工作量单位,基于复杂度综合评估 | 不依赖个人能力,长期稳定 | 需要历史数据校准 | 长期项目 |
|
|
839
860
|
|
|
840
861
|
### 理想人天估算方法(推荐个人开发使用)
|
|
841
862
|
|
|
@@ -876,7 +897,7 @@ specs/
|
|
|
876
897
|
3. **缓冲预留**:计划时预留30-50%缓冲时间应对突发情况
|
|
877
898
|
4. **回顾校准**:每个迭代后回顾估算准确性,调整方法
|
|
878
899
|
|
|
879
|
-
|
|
900
|
+
***
|
|
880
901
|
|
|
881
902
|
## 最终目录结构
|
|
882
903
|
|
|
@@ -900,7 +921,7 @@ specs/
|
|
|
900
921
|
└── story3-order/
|
|
901
922
|
```
|
|
902
923
|
|
|
903
|
-
|
|
924
|
+
***
|
|
904
925
|
|
|
905
926
|
## 操作指南
|
|
906
927
|
|
|
@@ -911,7 +932,7 @@ specs/
|
|
|
911
932
|
5. 批次内所有 SDD 完成后,进行**集成测试**
|
|
912
933
|
6. 验收通过后上线,进入下一批故事开发
|
|
913
934
|
|
|
914
|
-
|
|
935
|
+
***
|
|
915
936
|
|
|
916
937
|
## 常见错误与修复
|
|
917
938
|
|
|
@@ -935,7 +956,7 @@ specs/
|
|
|
935
956
|
- **问题**:功能完成后发现性能、安全等问题
|
|
936
957
|
- **修复**:**将非功能需求融入DoD或Story验收标准**
|
|
937
958
|
|
|
938
|
-
|
|
959
|
+
***
|
|
939
960
|
|
|
940
961
|
## 合理性、边界与适应场景
|
|
941
962
|
|
|
@@ -957,11 +978,12 @@ specs/
|
|
|
957
978
|
- **非Web系统**(移动端原生、IoT、强实时系统)
|
|
958
979
|
- **纯瀑布项目**(要求全量设计完成后再开发)
|
|
959
980
|
|
|
960
|
-
|
|
981
|
+
***
|
|
961
982
|
|
|
962
983
|
## 快速参考表
|
|
963
984
|
|
|
964
|
-
| 步骤 | 产出文件
|
|
965
|
-
|
|
966
|
-
| 0
|
|
967
|
-
| 1
|
|
985
|
+
| 步骤 | 产出文件 | 核心关注点 |
|
|
986
|
+
| -- | ----------------------------- | --------- |
|
|
987
|
+
| 0 | docs/stories/user\_stories.md | 用户价值、垂直切片 |
|
|
988
|
+
| 1 | docs/ui/pages.md | <br /> |
|
|
989
|
+
|
package/bin.js
CHANGED
package/package.json
CHANGED
|
@@ -1,306 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: mempalace-auto-saver
|
|
3
|
-
description: Use when automatically saving session context and memories
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
name: mempalace-auto-saver
|
|
9
|
-
description: AI自动识别项目上下文,生成标准化目录名并完成MemPalace分类存储,支持MCP等多项目自动识别。Invoke when user asks for autosave, 自动保存记忆, or 对话结束保存.
|
|
10
|
-
---
|
|
11
|
-
|
|
12
|
-
# 记忆宫殿自动保存器(MemPalace Auto-Saver)
|
|
13
|
-
|
|
14
|
-
## 触发词
|
|
15
|
-
|
|
16
|
-
- autosave
|
|
17
|
-
- 自动保存记忆
|
|
18
|
-
- 对话结束保存
|
|
19
|
-
- 任务完成
|
|
20
|
-
|
|
21
|
-
## 功能描述
|
|
22
|
-
|
|
23
|
-
AI驱动的MemPalace全流程管理,自动完成:
|
|
24
|
-
|
|
25
|
-
1. 项目上下文分析 → 2. 标准化分类生成 → 3. 上下文提取 → 4. 内容预处理 → 5. 配置文件创建 → 6. 内容扫描存储
|
|
26
|
-
彻底解决手动操作复杂、分类错误、搜索困难等问题。
|
|
27
|
-
|
|
28
|
-
## 使用场景
|
|
29
|
-
|
|
30
|
-
- 多项目并行开发时(如MCP+树莓派+前端项目)
|
|
31
|
-
- 频繁创建新模块/子项目,需要统一分类规范
|
|
32
|
-
- 不想记忆复杂命令参数,追求"零输入"操作体验
|
|
33
|
-
- 需要快速搜索和访问历史项目资料
|
|
34
|
-
- 需要保存完整的对话上下文和决策过程
|
|
35
|
-
|
|
36
|
-
## 规则
|
|
37
|
-
|
|
38
|
-
- 当单次对话结束(用户未输入新内容达30秒或主动结束对话)时触发
|
|
39
|
-
- 保存内容包含:完整对话历史、关键决策、代码片段、任务结果、项目MD文件
|
|
40
|
-
- 扫描操作后台异步执行,不阻塞当前流程
|
|
41
|
-
- 每次对话开始自动搜索知识库,无需额外指令
|
|
42
|
-
- AI自动识别项目类型,生成标准化分类
|
|
43
|
-
- 支持多项目自动识别与分类存储
|
|
44
|
-
- 执行过程完全自动化,无任何交互提示
|
|
45
|
-
- 不使用rm命令,依赖系统自动清理临时文件
|
|
46
|
-
|
|
47
|
-
## 执行步骤
|
|
48
|
-
|
|
49
|
-
### 1. AI项目上下文分析
|
|
50
|
-
|
|
51
|
-
自动分析当前项目的:
|
|
52
|
-
|
|
53
|
-
- 项目类型(MCP/前端/嵌入式/其他)
|
|
54
|
-
- 技术栈(Node.js/Python/C/C++等)
|
|
55
|
-
- 项目规模和复杂度
|
|
56
|
-
- 相关文件和目录结构
|
|
57
|
-
|
|
58
|
-
### 2. 记忆宫殿存储机制
|
|
59
|
-
|
|
60
|
-
MemPalace 使用向量数据库存储内容,支持语义搜索:
|
|
61
|
-
|
|
62
|
-
```
|
|
63
|
-
~/.mempalace/
|
|
64
|
-
├── config.json # 配置文件
|
|
65
|
-
└── palace/ # 记忆宫殿存储目录
|
|
66
|
-
├── chroma.sqlite3 # 向量数据库(核心存储)
|
|
67
|
-
└── {uuid}/ # 临时工作目录
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
**重要说明**:
|
|
71
|
-
- MemPalace 使用 `chroma.sqlite3` 向量数据库存储内容,不创建传统文件系统目录
|
|
72
|
-
- 无法通过文件系统直接查看保存的文件,只能通过 `mempalace search` 命令访问
|
|
73
|
-
- 向量数据库支持语义搜索,能够理解自然语言查询
|
|
74
|
-
|
|
75
|
-
### 3. 标准化分类生成
|
|
76
|
-
|
|
77
|
-
基于AI分析结果,生成符合以下规范的分类:
|
|
78
|
-
|
|
79
|
-
#### 项目分类规范
|
|
80
|
-
|
|
81
|
-
- **MCP项目** → wing: "wing_mcp"
|
|
82
|
-
- **前端项目** → wing: "wing_frontend"
|
|
83
|
-
- **嵌入式项目** → wing: "wing_embedded"
|
|
84
|
-
- **通用项目** → wing: "wing_general"
|
|
85
|
-
|
|
86
|
-
### 4. 完整上下文保存流程
|
|
87
|
-
|
|
88
|
-
#### 自动化保存脚本(无rm命令)
|
|
89
|
-
|
|
90
|
-
```bash
|
|
91
|
-
#!/bin/bash
|
|
92
|
-
# 自动保存完整上下文到记忆库(无rm命令)
|
|
93
|
-
|
|
94
|
-
# 项目目录
|
|
95
|
-
PROJECT_DIR=$(pwd)
|
|
96
|
-
|
|
97
|
-
# 创建临时目录(使用系统临时目录,系统会自动清理)
|
|
98
|
-
TMP_DIR=$(mktemp -d "/private/tmp/context_save_$(date +%s)")
|
|
99
|
-
|
|
100
|
-
# 1. 保存对话历史
|
|
101
|
-
cat > "$TMP_DIR/conversation.md" << EOF
|
|
102
|
-
# 对话历史
|
|
103
|
-
$(date +"%Y-%m-%d %H:%M:%S")
|
|
104
|
-
|
|
105
|
-
[完整对话历史将由AI助手自动填充]
|
|
106
|
-
EOF
|
|
107
|
-
|
|
108
|
-
# 2. 保存关键决策
|
|
109
|
-
cat > "$TMP_DIR/decisions.md" << EOF
|
|
110
|
-
# 关键决策
|
|
111
|
-
$(date +"%Y-%m-%d %H:%M:%S")
|
|
112
|
-
|
|
113
|
-
[关键决策将由AI助手自动提取]
|
|
114
|
-
EOF
|
|
115
|
-
|
|
116
|
-
# 3. 保存代码片段
|
|
117
|
-
mkdir -p "$TMP_DIR/code_snippets"
|
|
118
|
-
cat > "$TMP_DIR/code_snippets/summary.md" << EOF
|
|
119
|
-
# 代码片段汇总
|
|
120
|
-
$(date +"%Y-%m-%d %H:%M:%S")
|
|
121
|
-
|
|
122
|
-
[代码片段将由AI助手自动收集]
|
|
123
|
-
EOF
|
|
124
|
-
|
|
125
|
-
# 4. 复制MD文件
|
|
126
|
-
find "$PROJECT_DIR" -name "*.md" -exec cp {} "$TMP_DIR" \;
|
|
127
|
-
|
|
128
|
-
# 5. 保存任务结果
|
|
129
|
-
cat > "$TMP_DIR/task_results.md" << EOF
|
|
130
|
-
# 任务结果
|
|
131
|
-
$(date +"%Y-%m-%d %H:%M:%S")
|
|
132
|
-
|
|
133
|
-
[任务结果将由AI助手自动记录]
|
|
134
|
-
EOF
|
|
135
|
-
|
|
136
|
-
# 创建配置文件(使用printf确保YAML格式正确)
|
|
137
|
-
printf "wing: wing_general\nrooms:\n- name: general\n description: Complete context including conversations, decisions, code, and MD files\n" > "$TMP_DIR/mempal.yaml"
|
|
138
|
-
|
|
139
|
-
# 扫描并保存
|
|
140
|
-
cd "$TMP_DIR" && mempalace mine --wing wing_general --agent 'Trae AI' .
|
|
141
|
-
|
|
142
|
-
# 验证保存结果
|
|
143
|
-
mempalace status
|
|
144
|
-
|
|
145
|
-
# 不需要rm命令,系统会自动清理/private/tmp目录
|
|
146
|
-
```
|
|
147
|
-
|
|
148
|
-
### 5. 精准搜索内容
|
|
149
|
-
|
|
150
|
-
使用 `mempalace search` 命令进行精准搜索:
|
|
151
|
-
|
|
152
|
-
#### 搜索特定分类内容
|
|
153
|
-
|
|
154
|
-
```bash
|
|
155
|
-
# 搜索特定分类的内容(必须使用--wing参数)
|
|
156
|
-
mempalace search --wing wing_general "关键词"
|
|
157
|
-
|
|
158
|
-
# 搜索对话历史
|
|
159
|
-
mempalace search --wing wing_general "对话历史"
|
|
160
|
-
|
|
161
|
-
# 搜索关键决策
|
|
162
|
-
mempalace search --wing wing_general "关键决策"
|
|
163
|
-
|
|
164
|
-
# 搜索代码片段
|
|
165
|
-
mempalace search --wing wing_general "代码片段"
|
|
166
|
-
|
|
167
|
-
# 搜索任务结果
|
|
168
|
-
mempalace search --wing wing_general "任务结果"
|
|
169
|
-
|
|
170
|
-
# 搜索MD文件
|
|
171
|
-
mempalace search --wing wing_general "文件名"
|
|
172
|
-
```
|
|
173
|
-
|
|
174
|
-
#### 搜索所有分类
|
|
175
|
-
|
|
176
|
-
```bash
|
|
177
|
-
# 搜索所有分类的内容
|
|
178
|
-
mempalace search "关键词"
|
|
179
|
-
```
|
|
180
|
-
|
|
181
|
-
### 6. 查看分类状态
|
|
182
|
-
|
|
183
|
-
使用 `mempalace status` 命令查看整体分类状态:
|
|
184
|
-
|
|
185
|
-
```bash
|
|
186
|
-
# 查看记忆库整体状态
|
|
187
|
-
mempalace status
|
|
188
|
-
```
|
|
189
|
-
|
|
190
|
-
### 7. 异步执行记忆扫描
|
|
191
|
-
|
|
192
|
-
使用 memory-palace MCP 的 save 工具保存会话记忆,参数配置:
|
|
193
|
-
|
|
194
|
-
- session_name: AI生成的标准化会话名称
|
|
195
|
-
- agent: "产品通"
|
|
196
|
-
- status: "对话已保存并分类"
|
|
197
|
-
- outcome: "succeeded"
|
|
198
|
-
- built: 本次对话构建的内容
|
|
199
|
-
- decisions: 关键决策点
|
|
200
|
-
- next_steps: 下一步建议
|
|
201
|
-
- files: 相关文件路径
|
|
202
|
-
- blockers: 遇到的阻碍
|
|
203
|
-
- conversation_context: 完整对话上下文 + AI分类信息
|
|
204
|
-
|
|
205
|
-
### 8. Wing分类映射
|
|
206
|
-
|
|
207
|
-
根据项目类型自动映射到相应的wing分类:
|
|
208
|
-
|
|
209
|
-
- MCP项目 → wing: "wing_mcp"
|
|
210
|
-
- 前端项目 → wing: "wing_frontend"
|
|
211
|
-
- 嵌入式项目 → wing: "wing_embedded"
|
|
212
|
-
- 通用项目 → wing: "wing_general"
|
|
213
|
-
|
|
214
|
-
### 9. 知识库自动搜索
|
|
215
|
-
|
|
216
|
-
每次新对话开始时,自动调用 memory-palace MCP 的 recover 工具搜索相关历史记忆。
|
|
217
|
-
|
|
218
|
-
## 使用示例
|
|
219
|
-
|
|
220
|
-
1. 用户说:"autosave" → 立即触发记忆保存和AI分类
|
|
221
|
-
2. 用户说:"自动保存记忆" → 执行保存流程和智能分类
|
|
222
|
-
3. 对话结束60秒后 → 自动保存上下文并分类存储
|
|
223
|
-
4. MCP项目开发 → 自动识别为MCP类型,执行自动化保存流程
|
|
224
|
-
5. 多项目并行 → 自动区分不同项目类型,独立分类存储
|
|
225
|
-
6. 搜索对话历史 → 执行mempalace search --wing wing_general "对话历史"
|
|
226
|
-
7. 搜索关键决策 → 执行mempalace search --wing wing_general "关键决策"
|
|
227
|
-
8. 查看状态 → 执行mempalace status
|
|
228
|
-
|
|
229
|
-
## 快速命令参考
|
|
230
|
-
|
|
231
|
-
### 完整自动化工作流程(复制即可执行)
|
|
232
|
-
|
|
233
|
-
```bash
|
|
234
|
-
#!/bin/bash
|
|
235
|
-
# 自动保存完整上下文到记忆库
|
|
236
|
-
|
|
237
|
-
# 项目目录
|
|
238
|
-
PROJECT_DIR=$(pwd)
|
|
239
|
-
|
|
240
|
-
# 创建临时目录
|
|
241
|
-
TMP_DIR=$(mktemp -d "/private/tmp/context_save_$(date +%s)")
|
|
242
|
-
|
|
243
|
-
# 1. 保存对话历史
|
|
244
|
-
cat > "$TMP_DIR/conversation.md" << EOF
|
|
245
|
-
# 对话历史
|
|
246
|
-
$(date +"%Y-%m-%d %H:%M:%S")
|
|
247
|
-
|
|
248
|
-
[完整对话历史将由AI助手自动填充]
|
|
249
|
-
EOF
|
|
250
|
-
|
|
251
|
-
# 2. 保存关键决策
|
|
252
|
-
cat > "$TMP_DIR/decisions.md" << EOF
|
|
253
|
-
# 关键决策
|
|
254
|
-
$(date +"%Y-%m-%d %H:%M:%S")
|
|
255
|
-
|
|
256
|
-
[关键决策将由AI助手自动提取]
|
|
257
|
-
EOF
|
|
258
|
-
|
|
259
|
-
# 3. 保存代码片段
|
|
260
|
-
mkdir -p "$TMP_DIR/code_snippets"
|
|
261
|
-
cat > "$TMP_DIR/code_snippets/summary.md" << EOF
|
|
262
|
-
# 代码片段汇总
|
|
263
|
-
$(date +"%Y-%m-%d %H:%M:%S")
|
|
264
|
-
|
|
265
|
-
[代码片段将由AI助手自动收集]
|
|
266
|
-
EOF
|
|
267
|
-
|
|
268
|
-
# 4. 复制MD文件
|
|
269
|
-
find "$PROJECT_DIR" -name "*.md" -exec cp {} "$TMP_DIR" \;
|
|
270
|
-
|
|
271
|
-
# 5. 保存任务结果
|
|
272
|
-
cat > "$TMP_DIR/task_results.md" << EOF
|
|
273
|
-
# 任务结果
|
|
274
|
-
$(date +"%Y-%m-%d %H:%M:%S")
|
|
275
|
-
|
|
276
|
-
[任务结果将由AI助手自动记录]
|
|
277
|
-
EOF
|
|
278
|
-
|
|
279
|
-
# 创建配置文件
|
|
280
|
-
printf "wing: wing_general\nrooms:\n- name: general\n description: Complete context including conversations, decisions, code, and MD files\n" > "$TMP_DIR/mempal.yaml"
|
|
281
|
-
|
|
282
|
-
# 扫描并保存
|
|
283
|
-
cd "$TMP_DIR" && mempalace mine --wing wing_general --agent 'Trae AI' .
|
|
284
|
-
|
|
285
|
-
# 验证
|
|
286
|
-
mempalace status
|
|
287
|
-
```
|
|
288
|
-
|
|
289
|
-
## 注意事项
|
|
290
|
-
|
|
291
|
-
- 确保 `~/.mempalace/` 目录存在且可写
|
|
292
|
-
- mempalace 命令需要先安装并配置好环境变量
|
|
293
|
-
- 首次使用时会自动创建向量数据库 `chroma.sqlite3`
|
|
294
|
-
- 保存的文件会被转换为向量存储,支持语义搜索
|
|
295
|
-
- 无法通过文件系统直接查看保存的文件,只能通过 `mempalace search` 命令访问
|
|
296
|
-
- 搜索特定分类的内容时必须使用 `--wing` 参数
|
|
297
|
-
- 定期备份 `~/.mempalace/palace/chroma.sqlite3` 文件,确保数据安全
|
|
298
|
-
- 保存操作异步执行,不会阻塞当前对话
|
|
299
|
-
- AI分类基于项目文件和上下文进行智能识别
|
|
300
|
-
- 支持自定义分类规则和wing命名规范
|
|
301
|
-
- 使用系统临时目录 `/private/tmp` 避免权限问题
|
|
302
|
-
- 完全自动化执行,无任何交互提示
|
|
303
|
-
- 不使用 `rm` 命令,依赖系统自动清理临时文件
|
|
304
|
-
- 保存完整的对话上下文,包括对话历史、关键决策、代码片段和任务结果
|
|
305
|
-
- 使用 `printf` 命令创建YAML配置文件,确保格式正确
|
|
306
|
-
- 临时目录使用时间戳命名,确保唯一性
|
package/README.md
DELETED
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
# sdd-full
|
|
2
|
-
|
|
3
|
-
完整的软件设计开发技能包
|
|
4
|
-
|
|
5
|
-
## 概述
|
|
6
|
-
|
|
7
|
-
`sdd-full` 是一个全面的软件开发技能包,包含了从需求分析到发布上线的完整开发流程技能。
|
|
8
|
-
|
|
9
|
-
## 安装
|
|
10
|
-
|
|
11
|
-
```bash
|
|
12
|
-
npm install sdd-full
|
|
13
|
-
```
|
|
14
|
-
|
|
15
|
-
## 使用
|
|
16
|
-
|
|
17
|
-
### JavaScript API 使用
|
|
18
|
-
|
|
19
|
-
```javascript
|
|
20
|
-
const sdd = require('sdd-full');
|
|
21
|
-
|
|
22
|
-
// 获取所有技能列表
|
|
23
|
-
console.log(sdd.getSkills());
|
|
24
|
-
|
|
25
|
-
// 获取特定技能的内容
|
|
26
|
-
console.log(sdd.getSkill('sdd-full'));
|
|
27
|
-
|
|
28
|
-
// 获取技能决策树文档
|
|
29
|
-
console.log(sdd.getDecisionTree());
|
|
30
|
-
|
|
31
|
-
// 获取完整开发流程手册
|
|
32
|
-
console.log(sdd.getDevGuide());
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
### 命令行使用
|
|
36
|
-
|
|
37
|
-
```bash
|
|
38
|
-
# 直接运行查看技能包
|
|
39
|
-
node node_modules/sdd-full/index.js
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
## 包含的技能
|
|
43
|
-
|
|
44
|
-
### 需求分析类
|
|
45
|
-
- brainstorming - 创意头脑风暴
|
|
46
|
-
- market-research - 市场调研
|
|
47
|
-
- competitive-brief - 竞品简报
|
|
48
|
-
- prd-write - PRD 文档编写
|
|
49
|
-
- requirement-completion-officer - 需求补全
|
|
50
|
-
- sdd - 基础 SDD 拆分
|
|
51
|
-
- sdd-full - 完整 SDD 流程
|
|
52
|
-
|
|
53
|
-
### 设计规划类
|
|
54
|
-
- ui-sdd - UI 交互 SDD
|
|
55
|
-
- sdd-code - 功能实现 SDD
|
|
56
|
-
- sdd-test - 测试 SDD
|
|
57
|
-
- sdd-deploy - 部署 SDD
|
|
58
|
-
- sdd-ops - 运维 SDD
|
|
59
|
-
- writing-plans - 编写计划
|
|
60
|
-
|
|
61
|
-
### 开发执行类
|
|
62
|
-
- sdd-add - 快速迭代
|
|
63
|
-
- test-driven-development - TDD 开发
|
|
64
|
-
- systematic-debugging - 系统化调试
|
|
65
|
-
- verification-before-completion - 完成前验证
|
|
66
|
-
|
|
67
|
-
### 质量保障类
|
|
68
|
-
- quality-gate - 质量门禁
|
|
69
|
-
- security-audit - 安全审计
|
|
70
|
-
|
|
71
|
-
### 发布运维类
|
|
72
|
-
- finishing-a-development-branch - 完成开发分支
|
|
73
|
-
- release-flow - 发布流程管理
|
|
74
|
-
|
|
75
|
-
### 知识沉淀类
|
|
76
|
-
- claudeception - 持续学习
|
|
77
|
-
- mempalace-auto-saver - 记忆宫殿自动保存
|
|
78
|
-
|
|
79
|
-
### 专项工具类
|
|
80
|
-
- using-superpowers - Superpowers 全流程
|
|
81
|
-
- requesting-code-review - 请求代码审查
|
|
82
|
-
- receiving-code-review - 接收代码审查
|
|
83
|
-
|
|
84
|
-
## 版本历史
|
|
85
|
-
|
|
86
|
-
### v1.0.0 (2026-05-04)
|
|
87
|
-
- 初始版本发布
|
|
88
|
-
- 包含完整的技能体系
|
|
89
|
-
- 包含技能决策树
|
|
90
|
-
- 包含完整开发流程手册
|
|
91
|
-
|
|
92
|
-
## 许可证
|
|
93
|
-
|
|
94
|
-
MIT
|