sdd-full 5.0.6 → 5.0.7

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.
Files changed (91) hide show
  1. package/.claude/agents/orchestrator.md +81 -122
  2. package/.claude/commands/bug.md +2 -5
  3. package/.claude/commands/dev.md +2 -5
  4. package/.claude/commands/env.md +2 -5
  5. package/.claude/commands/flow.md +4 -8
  6. package/.claude/commands/full.md +2 -5
  7. package/.claude/commands/git.md +1 -4
  8. package/.claude/commands/release.md +2 -5
  9. package/.claude/commands/review.md +2 -5
  10. package/.claude/commands/save.md +2 -5
  11. package/.claude/commands/sdd.md +2 -5
  12. package/.claude/commands/ui.md +2 -5
  13. package/.claude/rules/project_rules.md +21 -17
  14. package/.claude/rules/trae-rules.md +50 -0
  15. package/.claude/settings.json +40 -0
  16. package/.claude/skills/README.md +31 -11
  17. package/.claude/skills/ai-coding-rules/SKILL.md +5 -1
  18. package/.claude/skills/bdd-acceptance/SKILL.md +5 -1
  19. package/.claude/skills/brainstorming/SKILL.md +5 -1
  20. package/.claude/skills/bug-reproduction-confirm/SKILL.md +5 -1
  21. package/.claude/skills/claudeception/SKILL.md +4 -51
  22. package/.claude/skills/competitive-brief/SKILL.md +5 -1
  23. package/.claude/skills/design-to-code/SKILL.md +5 -1
  24. package/.claude/skills/env-check/SKILL.md +5 -1
  25. package/.claude/skills/finishing-a-development-branch/SKILL.md +5 -1
  26. package/.claude/skills/flutter-add-integration-test/SKILL.md +5 -1
  27. package/.claude/skills/flutter-add-widget-preview/SKILL.md +5 -1
  28. package/.claude/skills/flutter-add-widget-test/SKILL.md +5 -1
  29. package/.claude/skills/flutter-apply-architecture-best-practices/SKILL.md +5 -1
  30. package/.claude/skills/flutter-build-responsive-layout/SKILL.md +5 -1
  31. package/.claude/skills/flutter-errors/SKILL.md +5 -1
  32. package/.claude/skills/flutter-fix-layout-issues/SKILL.md +5 -1
  33. package/.claude/skills/flutter-implement-json-serialization/SKILL.md +5 -1
  34. package/.claude/skills/flutter-setup-declarative-routing/SKILL.md +5 -1
  35. package/.claude/skills/flutter-setup-localization/SKILL.md +5 -1
  36. package/.claude/skills/flutter-test/SKILL.md +5 -1
  37. package/.claude/skills/flutter-use-http-package/SKILL.md +5 -1
  38. package/.claude/skills/ios-full-auto-debug/SKILL.md +5 -1
  39. package/.claude/skills/market-research/SKILL.md +5 -1
  40. package/.claude/skills/mempalace-auto-saver/SKILL.md +5 -1
  41. package/.claude/skills/performance-optimize/SKILL.md +5 -1
  42. package/.claude/skills/prd-write/SKILL.md +5 -1
  43. package/.claude/skills/quality-gate/SKILL.md +5 -1
  44. package/.claude/skills/receiving-code-review/SKILL.md +5 -1
  45. package/.claude/skills/release-flow/SKILL.md +5 -1
  46. package/.claude/skills/requesting-code-review/SKILL.md +5 -1
  47. package/.claude/skills/requirement-completion-officer/SKILL.md +5 -1
  48. package/.claude/skills/role-roundtable-review/SKILL.md +5 -1
  49. package/.claude/skills/sdd/SKILL.md +6 -94
  50. package/.claude/skills/sdd-add/SKILL.md +5 -1
  51. package/.claude/skills/sdd-code/SKILL.md +5 -1
  52. package/.claude/skills/sdd-deploy/SKILL.md +5 -1
  53. package/.claude/skills/sdd-full/SKILL.md +3 -17
  54. package/.claude/skills/sdd-test/SKILL.md +5 -1
  55. package/.claude/skills/security-audit/SKILL.md +5 -1
  56. package/.claude/skills/systematic-debugging/SKILL.md +5 -1
  57. package/.claude/skills/templates/API-SDD.md +4 -3
  58. package/.claude/skills/templates/Andrej Karpathy AI/347/274/226/347/240/201/350/247/204/345/210/231/350/220/275/345/234/260SDD.md" +0 -1
  59. package/.claude/skills/templates/BDD/351/243/216/346/240/274/351/252/214/346/224/266/346/240/207/345/207/206SDD.md +0 -1
  60. package/.claude/skills/templates/Base-SDD.md +4 -3
  61. package/.claude/skills/templates/Brain-SDD.md +4 -3
  62. package/.claude/skills/templates/BugReproduction-SDD.md +4 -2
  63. package/.claude/skills/templates/Code-SDD.md +4 -3
  64. package/.claude/skills/templates/Competitor-SDD.md +4 -3
  65. package/.claude/skills/templates/Env-SDD.md +4 -3
  66. package/.claude/skills/templates/Flutter/345/205/250/347/261/273/345/236/213/346/265/213/350/257/225/347/255/226/347/225/245SDD.md +0 -1
  67. package/.claude/skills/templates/Flutter/345/234/260/345/233/276/345/257/274/350/210/252/344/270/232/345/212/241SDD.md +0 -1
  68. package/.claude/skills/templates/Flutter/345/270/270/350/247/201/345/274/202/345/270/270/344/270/223/351/241/271SDD.md +0 -1
  69. package/.claude/skills/templates/Flutter/351/237/263/350/247/206/351/242/221/345/205/250/346/240/210SDD.md +0 -1
  70. package/.claude/skills/templates/PRD-SDD.md +4 -3
  71. package/.claude/skills/templates/Performance-SDD.md +4 -2
  72. package/.claude/skills/templates/SKILL.md +5 -1
  73. package/.claude/skills/templates/Test-SDD.md +4 -3
  74. package/.claude/skills/templates/UI-SDD.md +4 -3
  75. package/.claude/skills/templates/UI-SDD/344/270/223/347/224/250/346/250/241/346/235/277.md +0 -1
  76. package/.claude/skills/templates/UI/350/265/204/346/272/220/346/217/220/347/244/272/350/257/215/347/224/237/346/210/220SDD.md +0 -1
  77. package/.claude/skills/templates//344/274/201/344/270/232/347/272/247/345/205/250/346/240/210/345/267/245/347/250/213/350/247/204/350/214/203SDD.md +0 -1
  78. package/.claude/skills/templates//345/205/250/346/265/201/347/250/213SDD/350/236/215/345/220/210/344/275/223/347/263/273.md +4 -3
  79. package/.claude/skills/templates//345/212/237/350/203/275SDD/344/270/223/347/224/250/346/250/241/346/235/277.md +0 -1
  80. package/.claude/skills/templates//347/216/257/345/242/203/351/242/204/346/243/200/346/240/207/345/207/206/345/214/226SDD.md +0 -1
  81. package/.claude/skills/templates//351/253/230/344/277/235/347/234/237/350/256/276/350/256/241/350/275/254/344/273/243/347/240/201SDD.md +0 -1
  82. package/.claude/skills/test-driven-development/SKILL.md +5 -1
  83. package/.claude/skills/ui-motion-interaction-standard/SKILL.md +5 -1
  84. package/.claude/skills/ui-sdd/SKILL.md +5 -1
  85. package/.claude/skills/verification-before-completion/SKILL.md +5 -1
  86. package/.claude/skills/writing-plans/SKILL.md +5 -1
  87. package/bin.js +123 -29
  88. package/package.json +1 -1
  89. package/.claude/commands/debug.md +0 -21
  90. package/.claude/commands/iter.md +0 -22
  91. package/.claude/commands/new.md +0 -25
package/bin.js CHANGED
@@ -6,11 +6,32 @@ const fs = require('fs');
6
6
  const path = require('path');
7
7
 
8
8
  const SDD = {
9
- version: '5.0.6',
9
+ version: '5.0.7',
10
10
  name: 'sdd-full',
11
11
  description: '完整的软件设计开发技能包'
12
12
  };
13
13
 
14
+ const CORE_SKILLS = [
15
+ 'ai-coding-rules', 'architecture-refactor', 'bdd-acceptance', 'brainstorming',
16
+ 'bug-reproduction-confirm', 'claudeception', 'code-review-standard', 'code-split-spec',
17
+ 'competitive-brief', 'component-split', 'data-fetching', 'design-contract-expert',
18
+ 'design-to-code', 'env-check', 'finishing-a-development-branch', 'market-research',
19
+ 'mempalace-auto-saver', 'performance-optimize', 'prd-write', 'quality-gate',
20
+ 'receiving-code-review', 'release-flow', 'requesting-code-review', 'requirement-completion-officer',
21
+ 'role-roundtable-review', 'sdd', 'sdd-add', 'sdd-code', 'sdd-common', 'sdd-deploy',
22
+ 'sdd-full', 'sdd-test', 'security-audit', 'state-management', 'systematic-debugging',
23
+ 'templates', 'test-driven-development', 'ui-motion-interaction-standard', 'ui-sdd',
24
+ 'verification-before-completion', 'writing-plans', 'writing-skills'
25
+ ];
26
+
27
+ const FLUTTER_SKILLS = [
28
+ 'flutter-add-integration-test', 'flutter-add-widget-preview', 'flutter-add-widget-test',
29
+ 'flutter-apply-architecture-best-practices', 'flutter-build-responsive-layout',
30
+ 'flutter-errors', 'flutter-fix-layout-issues', 'flutter-implement-json-serialization',
31
+ 'flutter-setup-declarative-routing', 'flutter-setup-localization', 'flutter-test',
32
+ 'flutter-use-http-package', 'ios-full-auto-debug'
33
+ ];
34
+
14
35
  let VERBOSE = false;
15
36
 
16
37
  function debug(msg) {
@@ -71,62 +92,83 @@ function getSkills() {
71
92
  return skills;
72
93
  }
73
94
 
74
- function install(targetDir, environment) {
95
+ function install(targetDir, environment, skillSet) {
75
96
  const baseDir = targetDir || process.cwd();
76
97
  debug(`安装基准目录: ${baseDir}`);
77
98
  debug(`环境: ${environment}`);
99
+ debug(`技能集: ${skillSet}`);
78
100
 
79
101
  console.log('========================================');
80
102
  console.log(` ${SDD.name} - ${SDD.description}`);
81
103
  console.log(` 版本: ${SDD.version}`);
82
104
  console.log('========================================');
83
105
 
84
- const skillsSourceDir = path.join(__dirname, 'skills');
85
- const rulesSourceDir = path.join(__dirname, 'skills', 'rules');
106
+ const skillsSourceDir = path.join(__dirname, '.claude', 'skills');
107
+ const rulesSourceDir = path.join(__dirname, '.claude', 'rules');
108
+ const commandsSourceDir = path.join(__dirname, '.claude', 'commands');
109
+ const instructionsSourceDir = path.join(__dirname, '.claude', 'instructions');
110
+ const standardsSourceDir = path.join(__dirname, '.claude', 'standards');
111
+ const settingsSourcePath = path.join(__dirname, '.claude', 'settings.json');
112
+
86
113
  debug(`技能源目录: ${skillsSourceDir}`);
87
114
  debug(`规则源目录: ${rulesSourceDir}`);
88
- debug(`技能源目录存在: ${fs.existsSync(skillsSourceDir)}`);
89
- debug(`规则源目录存在: ${fs.existsSync(rulesSourceDir)}`);
115
+ debug(`命令源目录: ${commandsSourceDir}`);
90
116
 
91
- // 根据环境选择安装目录
92
117
  let installConfig;
93
118
 
94
119
  if (environment === 'cc') {
95
120
  installConfig = [
96
- { name: 'Claude Code', skillsPath: path.join(baseDir, '.claude', 'skills'), rulesPath: path.join(baseDir, '.claude', 'rules') }
121
+ { name: 'Claude Code', basePath: path.join(baseDir, '.claude'), skillsPath: path.join(baseDir, '.claude', 'skills'), rulesPath: path.join(baseDir, '.claude', 'rules') }
97
122
  ];
98
123
  } else if (environment === 'trae-cn') {
99
124
  installConfig = [
100
- { name: 'Trae-cn', skillsPath: path.join(baseDir, '.trae-cn', 'skills'), rulesPath: path.join(baseDir, '.trae-cn', 'rules') }
125
+ { name: 'Trae-cn', basePath: path.join(baseDir, '.trae-cn'), skillsPath: path.join(baseDir, '.trae-cn', 'skills'), rulesPath: path.join(baseDir, '.trae-cn', 'rules') }
101
126
  ];
102
127
  } else if (environment === 'all') {
103
128
  installConfig = [
104
- { name: 'Trae / Solo', skillsPath: path.join(baseDir, '.trae', 'skills'), rulesPath: path.join(baseDir, '.trae', 'rules') },
105
- { name: 'Trae-cn', skillsPath: path.join(baseDir, '.trae-cn', 'skills'), rulesPath: path.join(baseDir, '.trae-cn', 'rules') },
106
- { name: 'Claude Code', skillsPath: path.join(baseDir, '.claude', 'skills'), rulesPath: path.join(baseDir, '.claude', 'rules') },
107
- { name: '通用 sdd-full', skillsPath: path.join(baseDir, '.sdd-full', 'skills'), rulesPath: path.join(baseDir, '.sdd-full', 'rules') }
129
+ { name: 'Trae / Solo', basePath: path.join(baseDir, '.trae'), skillsPath: path.join(baseDir, '.trae', 'skills'), rulesPath: path.join(baseDir, '.trae', 'rules') },
130
+ { name: 'Trae-cn', basePath: path.join(baseDir, '.trae-cn'), skillsPath: path.join(baseDir, '.trae-cn', 'skills'), rulesPath: path.join(baseDir, '.trae-cn', 'rules') },
131
+ { name: 'Claude Code', basePath: path.join(baseDir, '.claude'), skillsPath: path.join(baseDir, '.claude', 'skills'), rulesPath: path.join(baseDir, '.claude', 'rules') },
132
+ { name: '通用 sdd-full', basePath: path.join(baseDir, '.sdd-full'), skillsPath: path.join(baseDir, '.sdd-full', 'skills'), rulesPath: path.join(baseDir, '.sdd-full', 'rules') }
108
133
  ];
109
134
  } else {
110
- // 默认:Trae / Solo
111
135
  installConfig = [
112
- { name: 'Trae / Solo', skillsPath: path.join(baseDir, '.trae', 'skills'), rulesPath: path.join(baseDir, '.trae', 'rules') }
136
+ { name: 'Trae / Solo', basePath: path.join(baseDir, '.trae'), skillsPath: path.join(baseDir, '.trae', 'skills'), rulesPath: path.join(baseDir, '.trae', 'rules') }
113
137
  ];
114
138
  }
115
139
 
140
+ let skillsToInstall = [];
141
+ if (skillSet === 'core') {
142
+ skillsToInstall = CORE_SKILLS;
143
+ console.log('\n🔸 安装模式: 核心技能集 (33个)');
144
+ } else if (skillSet === 'flutter') {
145
+ skillsToInstall = [...CORE_SKILLS, ...FLUTTER_SKILLS];
146
+ console.log('\n🔸 安装模式: 核心技能集 + Flutter扩展 (46个)');
147
+ } else {
148
+ skillsToInstall = [...CORE_SKILLS, ...FLUTTER_SKILLS];
149
+ console.log('\n🔸 安装模式: 完整技能集 (46个)');
150
+ }
151
+
116
152
  let totalSkillsCount = 0;
117
153
  let totalRulesCount = 0;
118
154
 
119
155
  installConfig.forEach(config => {
120
156
  const skillsDestDir = config.skillsPath;
121
157
  const rulesDestDir = config.rulesPath;
158
+ const baseDestDir = config.basePath;
159
+
122
160
  debug(`安装目标: ${config.name}`);
161
+ debug(` 基础目录: ${baseDestDir}`);
123
162
  debug(` 技能目录: ${skillsDestDir}`);
124
163
  debug(` 规则目录: ${rulesDestDir}`);
125
164
 
126
165
  console.log(`\n正在安装到: ${config.name}`);
127
166
 
128
- // 安装技能(不含rules目录)
129
- console.log(` 📦 安装技能到: ${skillsDestDir}`);
167
+ if (!fs.existsSync(baseDestDir)) {
168
+ debug(`创建基础目录: ${baseDestDir}`);
169
+ fs.mkdirSync(baseDestDir, { recursive: true });
170
+ }
171
+
130
172
  if (!fs.existsSync(skillsDestDir)) {
131
173
  debug(`创建技能目录: ${skillsDestDir}`);
132
174
  fs.mkdirSync(skillsDestDir, { recursive: true });
@@ -135,11 +177,9 @@ function install(targetDir, environment) {
135
177
  let skillsCount = 0;
136
178
  if (fs.existsSync(skillsSourceDir)) {
137
179
  const items = fs.readdirSync(skillsSourceDir);
138
- debug(`技能源目录内容: ${items.join(', ')}`);
139
180
 
140
181
  items.forEach(item => {
141
- // 跳过rules目录,它将单独安装
142
- if (item === 'rules') {
182
+ if (item === 'rules' || item === 'templates') {
143
183
  return;
144
184
  }
145
185
 
@@ -147,7 +187,7 @@ function install(targetDir, environment) {
147
187
  const destItem = path.join(skillsDestDir, item);
148
188
  const stat = fs.statSync(srcItem);
149
189
 
150
- if (stat.isDirectory()) {
190
+ if (stat.isDirectory() && skillsToInstall.includes(item)) {
151
191
  debug(`复制技能目录: ${item}`);
152
192
  copyDirectory(srcItem, destItem);
153
193
  skillsCount++;
@@ -156,11 +196,18 @@ function install(targetDir, environment) {
156
196
  fs.copyFileSync(srcItem, destItem);
157
197
  }
158
198
  });
199
+
200
+ const templatesSrc = path.join(skillsSourceDir, 'templates');
201
+ const templatesDest = path.join(skillsDestDir, 'templates');
202
+ if (fs.existsSync(templatesSrc)) {
203
+ debug(`复制模板目录`);
204
+ copyDirectory(templatesSrc, templatesDest);
205
+ skillsCount++;
206
+ }
159
207
  }
160
208
  totalSkillsCount += skillsCount;
161
209
  console.log(` ✅ ${skillsCount} 个技能`);
162
210
 
163
- // 安装规则到.trae根目录下
164
211
  console.log(` 📋 安装规则到: ${rulesDestDir}`);
165
212
  if (!fs.existsSync(rulesDestDir)) {
166
213
  debug(`创建规则目录: ${rulesDestDir}`);
@@ -170,7 +217,6 @@ function install(targetDir, environment) {
170
217
  let rulesCount = 0;
171
218
  if (fs.existsSync(rulesSourceDir)) {
172
219
  const items = fs.readdirSync(rulesSourceDir);
173
- debug(`规则源目录内容: ${items.join(', ')}`);
174
220
 
175
221
  items.forEach(item => {
176
222
  const srcItem = path.join(rulesSourceDir, item);
@@ -188,7 +234,43 @@ function install(targetDir, environment) {
188
234
  totalRulesCount += rulesCount;
189
235
  console.log(` ✅ ${rulesCount} 个规则文件`);
190
236
 
191
- // 验证安装结果
237
+ if (environment === 'cc' && fs.existsSync(commandsSourceDir)) {
238
+ const commandsDestDir = path.join(baseDestDir, 'commands');
239
+ console.log(` 📝 安装命令到: ${commandsDestDir}`);
240
+ if (!fs.existsSync(commandsDestDir)) {
241
+ fs.mkdirSync(commandsDestDir, { recursive: true });
242
+ }
243
+ copyDirectory(commandsSourceDir, commandsDestDir);
244
+ console.log(` ✅ 命令文件已安装`);
245
+ }
246
+
247
+ if (environment === 'cc' && fs.existsSync(instructionsSourceDir)) {
248
+ const instructionsDestDir = path.join(baseDestDir, 'instructions');
249
+ console.log(` 📋 安装指令到: ${instructionsDestDir}`);
250
+ if (!fs.existsSync(instructionsDestDir)) {
251
+ fs.mkdirSync(instructionsDestDir, { recursive: true });
252
+ }
253
+ copyDirectory(instructionsSourceDir, instructionsDestDir);
254
+ console.log(` ✅ 指令文件已安装`);
255
+ }
256
+
257
+ if (environment === 'cc' && fs.existsSync(standardsSourceDir)) {
258
+ const standardsDestDir = path.join(baseDestDir, 'standards');
259
+ console.log(` 📐 安装标准到: ${standardsDestDir}`);
260
+ if (!fs.existsSync(standardsDestDir)) {
261
+ fs.mkdirSync(standardsDestDir, { recursive: true });
262
+ }
263
+ copyDirectory(standardsSourceDir, standardsDestDir);
264
+ console.log(` ✅ 标准文件已安装`);
265
+ }
266
+
267
+ if (environment === 'cc' && fs.existsSync(settingsSourcePath)) {
268
+ const settingsDestPath = path.join(baseDestDir, 'settings.json');
269
+ console.log(` ⚙️ 安装配置到: ${settingsDestPath}`);
270
+ fs.copyFileSync(settingsSourcePath, settingsDestPath);
271
+ console.log(` ✅ 配置文件已安装`);
272
+ }
273
+
192
274
  if (fs.existsSync(skillsDestDir)) {
193
275
  const installedSkills = fs.readdirSync(skillsDestDir);
194
276
  debug(`技能目录内容: ${installedSkills.join(', ')}`);
@@ -239,13 +321,17 @@ function main() {
239
321
  console.log(` 版本: ${SDD.version}`);
240
322
  console.log('========================================');
241
323
  console.log('\n用法:');
242
- console.log(' npx sdd-full - 安装到 Trae / Solo(默认)');
324
+ console.log(' npx sdd-full - 安装到 Trae / Solo(默认,完整技能集)');
243
325
  console.log(' npx sdd-full cc - 安装到 Claude Code');
244
326
  console.log(' npx sdd-full trae-cn - 仅安装到 Trae-cn');
245
- console.log(' npx sdd-full all - 安装到所有环境(Trae + Trae-cn + Claude Code)');
327
+ console.log(' npx sdd-full all - 安装到所有环境');
246
328
  console.log(' npx sdd-full --help - 显示帮助');
247
329
  console.log(' npx sdd-full --dir ./myproj - 安装到指定目录');
248
330
  console.log(' npx sdd-full --verbose - 显示详细调试信息');
331
+ console.log('\n技能集选项:');
332
+ console.log(' --core - 仅安装核心技能集(33个,通用项目)');
333
+ console.log(' --flutter - 安装核心技能集 + Flutter扩展(46个)');
334
+ console.log(' (默认) - 安装完整技能集(46个)');
249
335
 
250
336
  const skills = getSkills();
251
337
  console.log('\n可用技能:');
@@ -255,7 +341,6 @@ function main() {
255
341
 
256
342
  console.log(`\n总计 ${skills.length} 个技能\n`);
257
343
  } else {
258
- // 否则,直接安装
259
344
  let targetDir;
260
345
  const targetIndex = args.indexOf('--dir');
261
346
  const targetIndexShort = args.indexOf('-d');
@@ -273,10 +358,19 @@ function main() {
273
358
  } else if (args.indexOf('all') !== -1) {
274
359
  environment = 'all';
275
360
  } else {
276
- environment = 'trae'; // 默认:Trae / Solo + Trae-cn
361
+ environment = 'trae';
362
+ }
363
+
364
+ let skillSet;
365
+ if (args.indexOf('--core') !== -1) {
366
+ skillSet = 'core';
367
+ } else if (args.indexOf('--flutter') !== -1) {
368
+ skillSet = 'flutter';
369
+ } else {
370
+ skillSet = 'full';
277
371
  }
278
372
 
279
- install(targetDir, environment);
373
+ install(targetDir, environment, skillSet);
280
374
  }
281
375
  }
282
376
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sdd-full",
3
- "version": "5.0.6",
3
+ "version": "5.0.7",
4
4
  "description": "SDD Full - 完整的软件设计开发技能包",
5
5
  "main": "index.js",
6
6
  "bin": "./bin.js",
@@ -1,21 +0,0 @@
1
- ---
2
- description: /debug command
3
- argument-hint:
4
- ---
5
-
6
- 当用户输入 /debug 命令时,执行以下流程:
7
-
8
- 1. 触发 systematic-debugging(系统化调试)
9
- - 分析错误信息或问题描述
10
- - 定位根因
11
- - 提出修复方案
12
-
13
- 2. 确认修复方案后,执行修复
14
-
15
- 3. 触发 verification-before-completion(提交前验证)
16
-
17
- 4. 验证通过后,触发 quality-gate(质量门禁检查)
18
-
19
- 5. 触发 claudeception 进行经验沉淀
20
-
21
- 6. 每个步骤完成后,等待用户确认再进入下一步
@@ -1,22 +0,0 @@
1
- ---
2
- description: /iter command
3
- argument-hint:
4
- ---
5
-
6
- 当用户输入 /iter 命令时,执行以下流程:
7
-
8
- 1. 确认需求是否明确:
9
- - 如果需求不明确,先触发 requirement-completion-officer(需求补全)
10
- - 如果需求已明确,直接进入下一步
11
-
12
- 2. 触发 sdd-add(快速开发落地)
13
- - 如果涉及UI设计,补充调用 ui-sdd
14
- - 如果需要制定计划,补充调用 writing-plans
15
-
16
- 3. 开发完成后,触发 verification-before-completion(提交前验证)
17
-
18
- 4. 验证通过后,触发 quality-gate(质量门禁检查)
19
-
20
- 5. 可选:触发 claudeception 进行经验沉淀
21
-
22
- 6. 每个步骤完成后,等待用户确认再进入下一步
@@ -1,25 +0,0 @@
1
- ---
2
- description: /new command
3
- argument-hint:
4
- ---
5
-
6
- 当用户输入 /new 命令时,执行以下流程:
7
-
8
- 1. 显示新项目启动选项,让用户选择是否需要:
9
- - **市场调研/头脑风暴**:如果需要,触发 brainstorming 或 market-research
10
- - **竞品分析**:如果需要,触发 competitive-brief
11
- - **PRD编写**:如果需要,触发 prd-write
12
-
13
- 2. 触发需求补全(requirement-completion-officer),确保需求明确
14
-
15
- 3. 触发 SDD拆分(sdd / sdd-full),按扩展需求和优先级拆分
16
-
17
- 4. 后续流程依次触发:
18
- - UI设计(ui-sdd)
19
- - 功能实现拆分(sdd-code,含代码规范、技术债务、重构计划)
20
- - 测试设计(sdd-test)
21
- - 部署设计(sdd-deploy,可选)
22
- - 制定计划(writing-plans,可选)
23
- - 开始开发(sdd-add / test-driven-development)
24
-
25
- 5. 每个步骤完成后,等待用户确认再进入下一步