sdd-full 4.2.0 → 4.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/bin.js +98 -80
- package/package.json +1 -1
- package/skills/README.md +97 -0
- package/skills/call-adaptation/SKILL.md +23 -0
- package/skills/call-adaptation/call-adaptation-guide.md +136 -0
- package/skills/call-adaptation/claude-code-call-spec.md +50 -0
- package/skills/call-adaptation/trae-call-spec.md +56 -0
- package/skills/checklist.md +154 -0
- package/skills/design-planning/ai-coding-rules/SKILL.md +52 -0
- package/skills/design-planning/design-to-code/SKILL.md +53 -0
- package/skills/design-planning/enterprise-spec/SKILL.md +52 -3
- package/skills/design-planning/flutter-av/SKILL.md +44 -34
- package/skills/design-planning/flutter-map/SKILL.md +41 -31
- package/skills/design-planning/function-sdd/SKILL.md +54 -0
- package/skills/design-planning/sdd-code/SKILL.md +347 -0
- package/skills/design-planning/sdd-deploy/SKILL.md +501 -0
- package/skills/design-planning/sdd-ops/SKILL.md +306 -0
- package/skills/design-planning/sdd-test/SKILL.md +383 -0
- package/skills/design-planning/ui-sdd/SKILL.md +291 -0
- package/skills/design-planning/ui-sdd-specialized/SKILL.md +46 -40
- package/skills/design-planning/writing-plans/SKILL.md +144 -0
- package/skills/development-execution/flutter-errors/SKILL.md +44 -34
- package/skills/development-execution/sdd-add/SKILL.md +540 -0
- package/skills/development-execution/systematic-debugging/SKILL.md +298 -0
- package/skills/development-execution/test-driven-development/SKILL.md +373 -0
- package/skills/development-execution/verification-before-completion/SKILL.md +141 -0
- package/skills/knowledge-precipitation/claudeception/SKILL.md +96 -0
- package/skills/knowledge-precipitation/mempalace-auto-saver/SKILL.md +302 -0
- package/skills/quality-assurance/bdd-acceptance/SKILL.md +44 -37
- package/skills/quality-assurance/flutter-test/SKILL.md +56 -0
- package/skills/quality-assurance/quality-gate/SKILL.md +350 -0
- package/skills/quality-assurance/security-audit/SKILL.md +386 -0
- package/skills/release-ops/finishing-a-development-branch/SKILL.md +202 -0
- package/skills/release-ops/release-flow/SKILL.md +404 -0
- package/skills/requirement-analysis/brainstorming/SKILL.md +166 -0
- package/skills/requirement-analysis/competitive-brief/SKILL.md +121 -0
- package/skills/requirement-analysis/market-research/SKILL.md +143 -0
- package/skills/requirement-analysis/prd-write/SKILL.md +111 -0
- package/skills/requirement-analysis/requirement-completion-officer/SKILL.md +124 -0
- package/skills/requirement-analysis/sdd/SKILL.md +1044 -0
- package/skills/requirement-analysis/sdd-full/SKILL.md +717 -36
- package/skills/requirement-analysis/unified-flow/SKILL.md +128 -26
- package/skills/rules/project_rules.md +167 -0
- package/skills/rules/user_rules.md +254 -69
- package/skills/special-tools/env-check/SKILL.md +40 -34
- package/skills/special-tools/receiving-code-review/SKILL.md +215 -0
- package/skills/special-tools/requesting-code-review/SKILL.md +107 -0
- package/skills/special-tools/using-superpowers/SKILL.md +117 -0
- package/skills/templates/API-SDD.md +31 -0
- package/skills/templates/Andrej Karpathy AI/347/274/226/347/240/201/350/247/204/345/210/231/350/220/275/345/234/260SDD.md" +117 -0
- package/skills/templates/BDD/351/243/216/346/240/274/351/252/214/346/224/266/346/240/207/345/207/206SDD.md +147 -0
- package/skills/templates/Base-SDD.md +38 -0
- package/skills/templates/Brain-SDD.md +36 -0
- package/skills/templates/Code-SDD.md +41 -0
- package/skills/templates/Competitor-SDD.md +34 -0
- package/skills/templates/Env-SDD.md +37 -0
- package/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 +162 -0
- package/skills/templates/Flutter/345/234/260/345/233/276/345/257/274/350/210/252/344/270/232/345/212/241SDD.md +136 -0
- package/skills/templates/Flutter/345/270/270/350/247/201/345/274/202/345/270/270/344/270/223/351/241/271SDD.md +159 -0
- package/skills/templates/Flutter/351/237/263/350/247/206/351/242/221/345/205/250/346/240/210SDD.md +121 -0
- package/skills/templates/PRD-SDD.md +45 -0
- package/skills/templates/SKILL.md +91 -0
- package/skills/templates/Test-SDD.md +34 -0
- package/skills/templates/UI-SDD.md +38 -0
- package/skills/templates/UI-SDD/344/270/223/347/224/250/346/250/241/346/235/277.md +141 -0
- package/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 +67 -0
- package/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 +152 -0
- package/skills/templates//345/205/250/346/265/201/347/250/213SDD/350/236/215/345/220/210/344/275/223/347/263/273.md +198 -0
- package/skills/templates//345/212/237/350/203/275SDD/344/270/223/347/224/250/346/250/241/346/235/277.md +132 -0
- package/skills/templates//347/216/257/345/242/203/351/242/204/346/243/200/346/240/207/345/207/206/345/214/226SDD.md +153 -0
- package/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 +119 -0
- package/skills//345/256/214/346/225/264/345/274/200/345/217/221/346/265/201/347/250/213/346/211/213/345/206/214.md +408 -0
- package/skills//346/212/200/350/203/275/344/275/223/347/263/273/345/256/214/345/226/204/345/273/272/350/256/256.md +305 -0
- package/skills//346/212/200/350/203/275/344/275/277/347/224/250/346/214/207/345/215/227.md +285 -0
- package/skills//346/212/200/350/203/275/345/206/263/347/255/226/346/240/221.md +320 -0
- package/skills/brainstorming/SKILL.md +0 -164
- package/skills/brainstorming/scripts/frame-template.html +0 -214
- package/skills/brainstorming/scripts/helper.js +0 -88
- package/skills/brainstorming/scripts/server.cjs +0 -338
- package/skills/brainstorming/scripts/start-server.sh +0 -153
- package/skills/brainstorming/scripts/stop-server.sh +0 -55
- package/skills/brainstorming/spec-document-reviewer-prompt.md +0 -48
- package/skills/brainstorming/visual-companion.md +0 -286
- package/skills/chinese-code-review/SKILL.md +0 -277
- package/skills/chinese-commit-conventions/SKILL.md +0 -364
- package/skills/chinese-documentation/SKILL.md +0 -448
- package/skills/chinese-git-workflow/SKILL.md +0 -510
- package/skills/dispatching-parallel-agents/SKILL.md +0 -182
- package/skills/executing-plans/SKILL.md +0 -175
- package/skills/finishing-a-development-branch/SKILL.md +0 -200
- package/skills/mcp-builder/SKILL.md +0 -255
- package/skills/receiving-code-review/SKILL.md +0 -213
- package/skills/requesting-code-review/SKILL.md +0 -105
- package/skills/requesting-code-review/code-reviewer.md +0 -146
- package/skills/rules/skill-map.md +0 -97
- package/skills/subagent-driven-development/SKILL.md +0 -277
- package/skills/subagent-driven-development/code-quality-reviewer-prompt.md +0 -26
- package/skills/subagent-driven-development/implementer-prompt.md +0 -113
- package/skills/subagent-driven-development/spec-reviewer-prompt.md +0 -61
- package/skills/systematic-debugging/CREATION-LOG.md +0 -119
- package/skills/systematic-debugging/SKILL.md +0 -296
- package/skills/systematic-debugging/condition-based-waiting-example.ts +0 -158
- package/skills/systematic-debugging/condition-based-waiting.md +0 -115
- package/skills/systematic-debugging/defense-in-depth.md +0 -122
- package/skills/systematic-debugging/find-polluter.sh +0 -63
- package/skills/systematic-debugging/root-cause-tracing.md +0 -169
- package/skills/systematic-debugging/test-academic.md +0 -14
- package/skills/systematic-debugging/test-pressure-1.md +0 -58
- package/skills/systematic-debugging/test-pressure-2.md +0 -68
- package/skills/systematic-debugging/test-pressure-3.md +0 -69
- package/skills/test-driven-development/SKILL.md +0 -371
- package/skills/test-driven-development/testing-anti-patterns.md +0 -299
- package/skills/using-git-worktrees/SKILL.md +0 -218
- package/skills/using-superpowers/SKILL.md +0 -134
- package/skills/using-superpowers/references/codex-tools.md +0 -25
- package/skills/using-superpowers/references/gemini-tools.md +0 -33
- package/skills/verification-before-completion/SKILL.md +0 -139
- package/skills/workflow-runner/SKILL.md +0 -172
- package/skills/writing-plans/SKILL.md +0 -152
- package/skills/writing-plans/plan-document-reviewer-prompt.md +0 -49
- package/skills/writing-skills/SKILL.md +0 -654
- package/skills/writing-skills/anthropic-best-practices.md +0 -1149
- package/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +0 -189
- package/skills/writing-skills/graphviz-conventions.dot +0 -172
- package/skills/writing-skills/persuasion-principles.md +0 -187
- package/skills/writing-skills/render-graphs.js +0 -168
- package/skills/writing-skills/testing-skills-with-subagents.md +0 -384
package/bin.js
CHANGED
|
@@ -6,7 +6,7 @@ const fs = require('fs');
|
|
|
6
6
|
const path = require('path');
|
|
7
7
|
|
|
8
8
|
const SDD = {
|
|
9
|
-
version: '3.
|
|
9
|
+
version: '4.3.1',
|
|
10
10
|
name: 'sdd-full',
|
|
11
11
|
description: '完整的软件设计开发技能包'
|
|
12
12
|
};
|
|
@@ -81,114 +81,132 @@ function install(targetDir, environment) {
|
|
|
81
81
|
console.log(` 版本: ${SDD.version}`);
|
|
82
82
|
console.log('========================================');
|
|
83
83
|
|
|
84
|
-
const
|
|
85
|
-
const
|
|
86
|
-
debug(`技能源目录: ${
|
|
87
|
-
debug(`规则源目录: ${
|
|
84
|
+
const skillsSourceDir = path.join(__dirname, 'skills');
|
|
85
|
+
const rulesSourceDir = path.join(__dirname, 'skills', 'rules');
|
|
86
|
+
debug(`技能源目录: ${skillsSourceDir}`);
|
|
87
|
+
debug(`规则源目录: ${rulesSourceDir}`);
|
|
88
|
+
debug(`技能源目录存在: ${fs.existsSync(skillsSourceDir)}`);
|
|
89
|
+
debug(`规则源目录存在: ${fs.existsSync(rulesSourceDir)}`);
|
|
88
90
|
|
|
89
91
|
// 根据环境选择安装目录
|
|
90
|
-
let
|
|
92
|
+
let installConfig;
|
|
91
93
|
|
|
92
94
|
if (environment === 'cc') {
|
|
93
|
-
|
|
94
|
-
{ name: 'Claude Code
|
|
95
|
-
{ name: 'Claude Code 规则', path: path.join(baseDir, '.claude', 'rules') }
|
|
95
|
+
installConfig = [
|
|
96
|
+
{ name: 'Claude Code', skillsPath: path.join(baseDir, '.claude', 'skills'), rulesPath: path.join(baseDir, '.claude', 'rules') }
|
|
96
97
|
];
|
|
97
98
|
} else if (environment === 'all') {
|
|
98
|
-
|
|
99
|
-
{ name: 'Trae / Solo
|
|
100
|
-
{ name: '
|
|
101
|
-
{ name: '
|
|
102
|
-
{ name: 'Claude Code 规则', path: path.join(baseDir, '.claude', 'rules') },
|
|
103
|
-
{ name: '通用 sdd-full', path: path.join(baseDir, '.sdd-full', 'skills') }
|
|
99
|
+
installConfig = [
|
|
100
|
+
{ name: 'Trae / Solo', skillsPath: path.join(baseDir, '.trae', 'skills'), rulesPath: path.join(baseDir, '.trae', 'rules') },
|
|
101
|
+
{ name: 'Claude Code', skillsPath: path.join(baseDir, '.claude', 'skills'), rulesPath: path.join(baseDir, '.claude', 'rules') },
|
|
102
|
+
{ name: '通用 sdd-full', skillsPath: path.join(baseDir, '.sdd-full', 'skills'), rulesPath: path.join(baseDir, '.sdd-full', 'rules') }
|
|
104
103
|
];
|
|
105
104
|
} else {
|
|
106
105
|
// 默认:Trae / Solo
|
|
107
|
-
|
|
108
|
-
{ name: 'Trae / Solo
|
|
109
|
-
{ name: 'Trae / Solo 规则', path: path.join(baseDir, '.trae', 'rules') }
|
|
106
|
+
installConfig = [
|
|
107
|
+
{ name: 'Trae / Solo', skillsPath: path.join(baseDir, '.trae', 'skills'), rulesPath: path.join(baseDir, '.trae', 'rules') }
|
|
110
108
|
];
|
|
111
109
|
}
|
|
112
110
|
|
|
113
|
-
let
|
|
114
|
-
let
|
|
111
|
+
let totalSkillsCount = 0;
|
|
112
|
+
let totalRulesCount = 0;
|
|
115
113
|
|
|
116
|
-
|
|
117
|
-
const
|
|
118
|
-
|
|
114
|
+
installConfig.forEach(config => {
|
|
115
|
+
const skillsDestDir = config.skillsPath;
|
|
116
|
+
const rulesDestDir = config.rulesPath;
|
|
117
|
+
debug(`安装目标: ${config.name}`);
|
|
118
|
+
debug(` 技能目录: ${skillsDestDir}`);
|
|
119
|
+
debug(` 规则目录: ${rulesDestDir}`);
|
|
119
120
|
|
|
120
|
-
console.log(`\n正在安装到: ${
|
|
121
|
+
console.log(`\n正在安装到: ${config.name}`);
|
|
121
122
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
123
|
+
// 安装技能(不含rules目录)
|
|
124
|
+
console.log(` 📦 安装技能到: ${skillsDestDir}`);
|
|
125
|
+
if (!fs.existsSync(skillsDestDir)) {
|
|
126
|
+
debug(`创建技能目录: ${skillsDestDir}`);
|
|
127
|
+
fs.mkdirSync(skillsDestDir, { recursive: true });
|
|
125
128
|
}
|
|
126
129
|
|
|
127
|
-
let
|
|
128
|
-
if (
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
130
|
+
let skillsCount = 0;
|
|
131
|
+
if (fs.existsSync(skillsSourceDir)) {
|
|
132
|
+
const items = fs.readdirSync(skillsSourceDir);
|
|
133
|
+
debug(`技能源目录内容: ${items.join(', ')}`);
|
|
134
|
+
|
|
135
|
+
items.forEach(item => {
|
|
136
|
+
// 跳过rules目录,它将单独安装
|
|
137
|
+
if (item === 'rules') {
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
133
140
|
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
const stat = fs.statSync(srcItem);
|
|
138
|
-
|
|
139
|
-
if (stat.isDirectory()) {
|
|
140
|
-
// 跳过 rules 目录,单独处理
|
|
141
|
-
if (item === 'rules') return;
|
|
142
|
-
debug(`复制技能目录: ${item}`);
|
|
143
|
-
copyDirectory(srcItem, destItem);
|
|
144
|
-
count++;
|
|
145
|
-
} else if (stat.isFile() && item.endsWith('.md')) {
|
|
146
|
-
debug(`复制技能文件: ${item}`);
|
|
147
|
-
fs.copyFileSync(srcItem, destItem);
|
|
148
|
-
}
|
|
149
|
-
});
|
|
150
|
-
}
|
|
151
|
-
totalSkillCount += count;
|
|
152
|
-
} else if (dirInfo.name.includes('规则')) {
|
|
153
|
-
// 安装规则
|
|
154
|
-
if (fs.existsSync(sourceRulesDir)) {
|
|
155
|
-
const items = fs.readdirSync(sourceRulesDir);
|
|
156
|
-
debug(`规则源目录内容: ${items.join(', ')}`);
|
|
141
|
+
const srcItem = path.join(skillsSourceDir, item);
|
|
142
|
+
const destItem = path.join(skillsDestDir, item);
|
|
143
|
+
const stat = fs.statSync(srcItem);
|
|
157
144
|
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
145
|
+
if (stat.isDirectory()) {
|
|
146
|
+
debug(`复制技能目录: ${item}`);
|
|
147
|
+
copyDirectory(srcItem, destItem);
|
|
148
|
+
skillsCount++;
|
|
149
|
+
} else if (stat.isFile() && item.endsWith('.md')) {
|
|
150
|
+
debug(`复制技能文件: ${item}`);
|
|
151
|
+
fs.copyFileSync(srcItem, destItem);
|
|
152
|
+
}
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
totalSkillsCount += skillsCount;
|
|
157
|
+
console.log(` ✅ ${skillsCount} 个技能`);
|
|
158
|
+
|
|
159
|
+
// 安装规则到.trae根目录下
|
|
160
|
+
console.log(` 📋 安装规则到: ${rulesDestDir}`);
|
|
161
|
+
if (!fs.existsSync(rulesDestDir)) {
|
|
162
|
+
debug(`创建规则目录: ${rulesDestDir}`);
|
|
163
|
+
fs.mkdirSync(rulesDestDir, { recursive: true });
|
|
171
164
|
}
|
|
172
165
|
|
|
173
|
-
|
|
166
|
+
let rulesCount = 0;
|
|
167
|
+
if (fs.existsSync(rulesSourceDir)) {
|
|
168
|
+
const items = fs.readdirSync(rulesSourceDir);
|
|
169
|
+
debug(`规则源目录内容: ${items.join(', ')}`);
|
|
170
|
+
|
|
171
|
+
items.forEach(item => {
|
|
172
|
+
const srcItem = path.join(rulesSourceDir, item);
|
|
173
|
+
const destItem = path.join(rulesDestDir, item);
|
|
174
|
+
const stat = fs.statSync(srcItem);
|
|
175
|
+
|
|
176
|
+
if (stat.isFile() && item.endsWith('.md')) {
|
|
177
|
+
debug(`复制规则文件: ${item}`);
|
|
178
|
+
fs.copyFileSync(srcItem, destItem);
|
|
179
|
+
rulesCount++;
|
|
180
|
+
}
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
totalRulesCount += rulesCount;
|
|
185
|
+
console.log(` ✅ ${rulesCount} 个规则文件`);
|
|
174
186
|
|
|
175
187
|
// 验证安装结果
|
|
176
|
-
if (fs.existsSync(
|
|
177
|
-
const
|
|
178
|
-
debug(
|
|
179
|
-
console.log(`
|
|
188
|
+
if (fs.existsSync(skillsDestDir)) {
|
|
189
|
+
const installedSkills = fs.readdirSync(skillsDestDir);
|
|
190
|
+
debug(`技能目录内容: ${installedSkills.join(', ')}`);
|
|
191
|
+
console.log(` 📁 技能内容: ${installedSkills.length} 项`);
|
|
192
|
+
}
|
|
193
|
+
if (fs.existsSync(rulesDestDir)) {
|
|
194
|
+
const installedRules = fs.readdirSync(rulesDestDir);
|
|
195
|
+
debug(`规则目录内容: ${installedRules.join(', ')}`);
|
|
196
|
+
console.log(` 📁 规则内容: ${installedRules.length} 项`);
|
|
180
197
|
}
|
|
181
198
|
});
|
|
182
199
|
|
|
183
200
|
console.log('\n========================================');
|
|
184
201
|
console.log(`✅ 安装完成!`);
|
|
185
|
-
console.log(` 技能: ${
|
|
186
|
-
console.log(` 规则: ${
|
|
202
|
+
console.log(` - 技能: ${totalSkillsCount} 个`);
|
|
203
|
+
console.log(` - 规则: ${totalRulesCount} 个文件`);
|
|
187
204
|
console.log('========================================');
|
|
188
205
|
console.log('\n现在您可以在以下环境中使用这些技能和规则:');
|
|
189
|
-
|
|
190
|
-
console.log(` - ${
|
|
191
|
-
console.log(`
|
|
206
|
+
installConfig.forEach(config => {
|
|
207
|
+
console.log(` - ${config.name}`);
|
|
208
|
+
console.log(` 技能位置: ${config.skillsPath}`);
|
|
209
|
+
console.log(` 规则位置: ${config.rulesPath}`);
|
|
192
210
|
});
|
|
193
211
|
console.log('\n🎉 开始使用吧!\n');
|
|
194
212
|
}
|
|
@@ -254,4 +272,4 @@ function main() {
|
|
|
254
272
|
}
|
|
255
273
|
|
|
256
274
|
// 运行主函数
|
|
257
|
-
main();
|
|
275
|
+
main();
|
package/package.json
CHANGED
package/skills/README.md
ADDED
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
【claude code调用标识:技能文档目录索引】【trae调用标识:技能文档目录索引+文档导航】【流程场景:1.完整3阶段SDD流程、2.从零开始新项目、3.小型功能迭代、4.Bug处理、5.代码发布】
|
|
2
|
+
|
|
3
|
+
# 技能文档目录索引
|
|
4
|
+
|
|
5
|
+
## 概述
|
|
6
|
+
|
|
7
|
+
本目录包含所有技能体系相关的文档,帮助你快速了解和使用整个技能体系。
|
|
8
|
+
|
|
9
|
+
## 文档列表
|
|
10
|
+
|
|
11
|
+
### 核心文档
|
|
12
|
+
|
|
13
|
+
| 文档名称 | 路径 | 说明 |
|
|
14
|
+
|---------|------|------|
|
|
15
|
+
| **技能使用指南.md** | `技能使用指南.md` | 所有技能的使用场景、功能特点、与其他技能的关系,快速选择和使用合适的技能 |
|
|
16
|
+
| **完整开发流程手册.md** | `完整开发流程手册.md` | 从需求想法到上线发布的完整端到端开发流程,包含每个阶段的目标、使用技能、产出物、检查清单 |
|
|
17
|
+
| **技能决策树.md** | `技能决策树.md` | 什么场景用什么技能,快速决策选择 |
|
|
18
|
+
| **技能体系完善建议.md** | `技能体系完善建议.md` | 技能体系的现状分析、完整技能列表、最佳实践 |
|
|
19
|
+
|
|
20
|
+
## 快速开始
|
|
21
|
+
|
|
22
|
+
### 新手入门
|
|
23
|
+
1. 先看 **技能决策树.md** - 了解什么场景用什么技能
|
|
24
|
+
2. 再看 **技能使用指南.md** - 了解所有技能的功能
|
|
25
|
+
3. 最后看 **完整开发流程手册.md** - 了解端到端流程
|
|
26
|
+
|
|
27
|
+
### 新项目
|
|
28
|
+
1. 查看 **完整开发流程手册.md** - 了解完整流程
|
|
29
|
+
2. 根据场景使用 **技能决策树.md** - 选择合适的技能
|
|
30
|
+
3. 需要时参考 **技能使用指南.md** - 了解技能详情
|
|
31
|
+
|
|
32
|
+
## 现有技能列表
|
|
33
|
+
|
|
34
|
+
### 需求分析类
|
|
35
|
+
- brainstorming - 创意头脑风暴
|
|
36
|
+
- market-research - 市场调研
|
|
37
|
+
- competitive-brief - 竞品简报
|
|
38
|
+
- prd-write - PRD文档编写
|
|
39
|
+
- requirement-completion-officer - 需求补全
|
|
40
|
+
- sdd - 基础SDD拆分
|
|
41
|
+
- sdd-full - 完整SDD流程
|
|
42
|
+
|
|
43
|
+
### 设计规划类
|
|
44
|
+
- ui-sdd - UI交互SDD
|
|
45
|
+
- sdd-code - 功能实现SDD
|
|
46
|
+
- sdd-test - 测试SDD
|
|
47
|
+
- sdd-deploy - 部署SDD
|
|
48
|
+
- sdd-ops - 运维SDD
|
|
49
|
+
- writing-plans - 编写计划
|
|
50
|
+
|
|
51
|
+
### 开发执行类
|
|
52
|
+
- sdd-add - 快速迭代
|
|
53
|
+
- test-driven-development - TDD开发
|
|
54
|
+
- systematic-debugging - 系统化调试
|
|
55
|
+
- verification-before-completion - 完成前验证
|
|
56
|
+
|
|
57
|
+
### 质量保障类
|
|
58
|
+
- quality-gate - 质量门禁
|
|
59
|
+
- security-audit - 安全审计
|
|
60
|
+
|
|
61
|
+
### 发布运维类
|
|
62
|
+
- finishing-a-development-branch - 完成开发分支
|
|
63
|
+
- release-flow - 发布流程
|
|
64
|
+
|
|
65
|
+
### 知识沉淀类
|
|
66
|
+
- claudeception - 持续学习
|
|
67
|
+
- mempalace-auto-saver - 自动保存记忆
|
|
68
|
+
|
|
69
|
+
### 专项工具类
|
|
70
|
+
- using-superpowers - Superpowers全流程
|
|
71
|
+
- requesting-code-review - 请求代码审查
|
|
72
|
+
- receiving-code-review - 接收代码审查
|
|
73
|
+
|
|
74
|
+
## 快速安装
|
|
75
|
+
### 使用npm包安装(推荐)
|
|
76
|
+
```bash
|
|
77
|
+
# 默认安装到Trae环境
|
|
78
|
+
npx sdd-full
|
|
79
|
+
|
|
80
|
+
# 安装到Claude Code
|
|
81
|
+
npx sdd-full cc
|
|
82
|
+
|
|
83
|
+
# 安装到所有环境
|
|
84
|
+
npx sdd-full all
|
|
85
|
+
|
|
86
|
+
# 查看帮助
|
|
87
|
+
npx sdd-full --help
|
|
88
|
+
|
|
89
|
+
# 显示详细信息
|
|
90
|
+
npx sdd-full --verbose
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
## 更新日志
|
|
94
|
+
|
|
95
|
+
- 2026-05-05: 发布到npm包,新增npx安装方式,支持Trae/Trae-cn/Claude Code多环境安装
|
|
96
|
+
- 2026-05-04: 更新技能列表,匹配当前实际存在的技能
|
|
97
|
+
- 2024-05-04: 创建目录索引,整理技能文档
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
【claude code调用标识:call-adaptation】【trae调用标识:call-adaptation+调用机制适配】【流程场景:1.完整3阶段SDD流程、2.从零开始新项目、3.小型功能迭代、4.Bug处理、5.代码发布】
|
|
2
|
+
|
|
3
|
+
---
|
|
4
|
+
name: call-adaptation
|
|
5
|
+
description: 调用机制适配技能 - 处理Trae与Claude Code两种调用机制的差异,提供调用指南和规范说明
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# 调用机制适配
|
|
9
|
+
|
|
10
|
+
## 功能说明
|
|
11
|
+
本技能用于处理Trae与Claude Code两种调用机制的适配,提供:
|
|
12
|
+
- Trae调用规范
|
|
13
|
+
- Claude Code调用规范
|
|
14
|
+
- 调用方式切换指南
|
|
15
|
+
|
|
16
|
+
## 核心文档
|
|
17
|
+
- trae-call-spec.md - Trae调用规范
|
|
18
|
+
- claude-code-call-spec.md - Claude Code调用规范
|
|
19
|
+
- call-adaptation-guide.md - 调用适配指南
|
|
20
|
+
|
|
21
|
+
## 调用方式
|
|
22
|
+
- **Claude Code**: 调用 call-adaptation
|
|
23
|
+
- **Trae**: trae调用 call-adaptation
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
# 两种调用机制切换指南及异常处理
|
|
2
|
+
|
|
3
|
+
## 一、切换逻辑
|
|
4
|
+
|
|
5
|
+
### 1.1 使用claude code调用
|
|
6
|
+
- 直接通过关键词触发,无需额外操作
|
|
7
|
+
- 示例:"调用brainstorming技能,项目名称:XX"
|
|
8
|
+
|
|
9
|
+
### 1.2 使用trae调用
|
|
10
|
+
|
|
11
|
+
#### 方式1:完整路径调用(标准)
|
|
12
|
+
- 需按固定格式输入调用指令,包含技能文档路径、必传参数、流程场景
|
|
13
|
+
- 格式:trae调用 skills/对应分类目录/技能名称.md 参数1=值1 参数2=值2 流程场景=场景名称
|
|
14
|
+
- 示例:trae调用 skills/requirement-analysis/brainstorming.md 项目名称=XX 触发场景=需求分析 流程场景=从零开始新项目
|
|
15
|
+
|
|
16
|
+
#### 方式2:模板快捷调用(推荐)
|
|
17
|
+
- 无需填写完整路径,系统自动匹配templates目录及流程适配逻辑
|
|
18
|
+
- 格式:trae调用 模板名称 必传参数 流程场景=场景名称
|
|
19
|
+
- 示例:trae调用 Brain-SDD 项目名称=个人备忘录APP 阶段=初期想法收集 流程场景=从零开始新项目
|
|
20
|
+
|
|
21
|
+
#### 方式3:简称快捷调用(最快捷)
|
|
22
|
+
- 使用预设的模板简称,输入更简洁
|
|
23
|
+
- 格式:trae快捷 模板简称 必传参数 流程场景=场景名称
|
|
24
|
+
- 示例:trae快捷 Brain 项目名称=个人备忘录APP 阶段=初期想法收集 流程场景=从零开始新项目
|
|
25
|
+
|
|
26
|
+
### 1.3 快捷指令映射表
|
|
27
|
+
|
|
28
|
+
| 模板简称 | 完整模板名称 | 对应目录 |
|
|
29
|
+
|---------|------------|---------|
|
|
30
|
+
| Base | Base-SDD.md | skills/templates/ |
|
|
31
|
+
| Brain | Brain-SDD.md | skills/templates/ |
|
|
32
|
+
| Competitor | Competitor-SDD.md | skills/templates/ |
|
|
33
|
+
| PRD | PRD-SDD.md | skills/templates/ |
|
|
34
|
+
| UI | UI-SDD.md | skills/templates/ |
|
|
35
|
+
| Code | Code-SDD.md | skills/templates/ |
|
|
36
|
+
| API | API-SDD.md | skills/templates/ |
|
|
37
|
+
| Env | Env-SDD.md | skills/templates/ |
|
|
38
|
+
| Test | Test-SDD.md | skills/templates/ |
|
|
39
|
+
|
|
40
|
+
### 1.4 SDD全流程场景说明
|
|
41
|
+
|
|
42
|
+
| 流程场景 | 场景编号 | 适用范围 | 核心技能 |
|
|
43
|
+
|---------|---------|---------|---------|
|
|
44
|
+
| 完整3阶段SDD流程 | 1 | 大型项目、完整迭代 | sdd, brainstorming, prd-write, ui-sdd, sdd-code, sdd-test |
|
|
45
|
+
| 从零开始新项目 | 2 | 新项目启动 | brainstorming, market-research, competitive-brief, prd-write |
|
|
46
|
+
| 小型功能迭代 | 3 | 功能新增/优化 | sdd-add, sdd-code, sdd-test |
|
|
47
|
+
| Bug处理 | 4 | Bug修复 | systematic-debugging, sdd-add, sdd-test |
|
|
48
|
+
| 代码发布 | 5 | 版本发布 | quality-gate, release-flow, finishing-a-development-branch |
|
|
49
|
+
|
|
50
|
+
### 1.5 按需加载优化逻辑
|
|
51
|
+
|
|
52
|
+
基于流程场景拆分技能/模板加载范围,确保加载体积≤30k:
|
|
53
|
+
|
|
54
|
+
| 流程场景 | 加载范围 | 排除技能 |
|
|
55
|
+
|---------|---------|---------|
|
|
56
|
+
| Bug处理 | systematic-debugging, sdd-add, sdd-test | market-research, competitive-brief, ui-sdd |
|
|
57
|
+
| 代码发布 | quality-gate, release-flow, security-audit | brainstorming, ui-sdd, market-research |
|
|
58
|
+
| 小型功能迭代 | sdd-add, sdd-code, sdd-test | competitive-brief, market-research |
|
|
59
|
+
| 从零开始新项目 | brainstorming, market-research, competitive-brief, prd-write | sdd-deploy, sdd-ops |
|
|
60
|
+
| 完整3阶段SDD流程 | 全部技能 | 无 |
|
|
61
|
+
|
|
62
|
+
### 1.6 流程场景缓存策略
|
|
63
|
+
|
|
64
|
+
- 高频流程(如小型功能迭代、Bug处理):首次加载后缓存,后续调用无需重复加载
|
|
65
|
+
- 低频流程(如完整3阶段SDD流程):不缓存,每次调用重新加载
|
|
66
|
+
- 缓存清理:定期清理过期缓存(建议每周一次)
|
|
67
|
+
|
|
68
|
+
## 二、异常处理方案
|
|
69
|
+
|
|
70
|
+
### 2.1 trae调用失败
|
|
71
|
+
优先核对以下4点:
|
|
72
|
+
1. 技能文档路径是否正确
|
|
73
|
+
2. 文档头部是否有trae调用标识
|
|
74
|
+
3. 必传参数是否完整
|
|
75
|
+
4. 流程场景参数是否正确
|
|
76
|
+
|
|
77
|
+
核对后重新触发调用,仍失败则检查缓存和加载配置。
|
|
78
|
+
|
|
79
|
+
### 2.2 claude code调用失败
|
|
80
|
+
- 无需额外核对,直接重试或手动选择技能选项
|
|
81
|
+
- 简单流程场景可使用原生触发(/命令)提升效率
|
|
82
|
+
|
|
83
|
+
### 2.3 两种机制均调用失败
|
|
84
|
+
- 查看本指南及相关适配文档
|
|
85
|
+
- 检查技能文档是否符合统一规范
|
|
86
|
+
- 清除trae本地缓存后重试
|
|
87
|
+
|
|
88
|
+
### 2.4 流程场景适配失败
|
|
89
|
+
- 检查流程场景参数是否在允许范围内(场景编号1-5)
|
|
90
|
+
- 核对call-adaptation中的场景适配逻辑
|
|
91
|
+
- 检查按需加载配置是否正确
|
|
92
|
+
|
|
93
|
+
## 三、技能文档规范检查清单
|
|
94
|
+
|
|
95
|
+
| 检查项 | 说明 |
|
|
96
|
+
|--------|------|
|
|
97
|
+
| 双调用标识 | 文档头部是否包含【claude code调用标识】和【trae调用标识】 |
|
|
98
|
+
| 流程场景标识 | 文档头部是否包含【流程场景:对应全流程场景(1-5)】 |
|
|
99
|
+
| 命名规范 | 文件名是否与原始技能列表一致,无特殊字符 |
|
|
100
|
+
| 选项式设计 | 是否每个模块都有可选项和自定义补充入口 |
|
|
101
|
+
| 参数说明 | 是否包含trae调用参数说明(调用路径、必传/可选参数、流程场景参数) |
|
|
102
|
+
| 路径匹配 | 调用路径是否与实际目录结构一致 |
|
|
103
|
+
| 流程衔接 | 是否包含流程衔接说明(前后步骤关联) |
|
|
104
|
+
|
|
105
|
+
## 四、技能目录结构参考
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
skills/
|
|
109
|
+
├─ requirement-analysis/ # 需求分析类(brainstorming, market-research, competitive-brief, prd-write, requirement-completion-officer, sdd, sdd-full, unified-flow)
|
|
110
|
+
├─ design-planning/ # 设计规划类(ui-sdd, sdd-code, sdd-test, sdd-deploy, sdd-ops, writing-plans)
|
|
111
|
+
├─ development-execution/ # 开发执行类(sdd-add, test-driven-development, systematic-debugging, verification-before-completion)
|
|
112
|
+
├─ quality-assurance/ # 质量保障类(quality-gate, security-audit)
|
|
113
|
+
├─ release-ops/ # 发布运维类(finishing-a-development-branch, release-flow)
|
|
114
|
+
├─ knowledge-precipitation/ # 知识沉淀类(claudeception, mempalace-auto-saver)
|
|
115
|
+
├─ special-tools/ # 专项工具类(using-superpowers, requesting-code-review, receiving-code-review)
|
|
116
|
+
├─ call-adaptation/ # 调用机制适配
|
|
117
|
+
├─ sdd-framework/ # SDD框架模板
|
|
118
|
+
└─ templates/ # SDD模板
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## 五、调用标识格式规范
|
|
122
|
+
|
|
123
|
+
### 5.1 统一标识格式
|
|
124
|
+
```
|
|
125
|
+
【claude code调用标识:技能/模板名称】【trae调用标识:技能/模板名称+关联项】【流程场景:对应全流程场景(1-5)】
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
### 5.2 示例
|
|
129
|
+
```
|
|
130
|
+
【claude code调用标识:Brain-SDD】【trae调用标识:Brain-SDD+头脑风暴】【流程场景:1.完整3阶段SDD流程、2.从零开始新项目】
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
**版本**: v2.0
|
|
136
|
+
**适用场景**: 两种调用机制切换与异常处理、SDD全流程适配
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# claude code调用机制说明及技能文档适配规范
|
|
2
|
+
|
|
3
|
+
## 一、claude code调用机制核心特性
|
|
4
|
+
|
|
5
|
+
### 1.1 调用触发方式
|
|
6
|
+
- 支持关键词触发、主动调用两种方式
|
|
7
|
+
- 可直接读取技能文档中的选项式内容,自动匹配调用逻辑
|
|
8
|
+
|
|
9
|
+
### 1.2 文档解析逻辑
|
|
10
|
+
- 可自动解析技能文档中的层级结构(标题、列表、选项)
|
|
11
|
+
- 无需额外标注,直接提取核心调用信息
|
|
12
|
+
|
|
13
|
+
### 1.3 异常处理
|
|
14
|
+
- 调用失败时可自动重试,或提示手动选择技能选项
|
|
15
|
+
|
|
16
|
+
## 二、技能文档适配规范
|
|
17
|
+
|
|
18
|
+
### 2.1 调用标识要求
|
|
19
|
+
所有技能文档头部添加claude code调用标识(可选但推荐):
|
|
20
|
+
```markdown
|
|
21
|
+
【claude code调用标识:技能名称】
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
### 2.2 选项式设计要求
|
|
25
|
+
技能文档采用选项式设计,便于AI调用:
|
|
26
|
+
- 每个模块提供明确可选项
|
|
27
|
+
- 保留自定义补充入口
|
|
28
|
+
- 支持多选
|
|
29
|
+
|
|
30
|
+
### 2.3 命名规范
|
|
31
|
+
- 技能文档命名格式:技能名称.md(与原始技能列表一致)
|
|
32
|
+
- 禁止使用特殊字符、空格
|
|
33
|
+
|
|
34
|
+
## 三、调用示例
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
调用brainstorming技能,项目名称:个人备忘录APP
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## 四、常见问题排查
|
|
41
|
+
|
|
42
|
+
| 问题现象 | 可能原因 | 排查方法 |
|
|
43
|
+
|---------|---------|---------|
|
|
44
|
+
| 调用失败 | 技能名称不匹配 | 核对技能名称是否与原始列表一致 |
|
|
45
|
+
| 选项缺失 | 选项式设计不完整 | 检查是否每个模块都有可选项 |
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
**版本**: v1.0
|
|
50
|
+
**适用场景**: claude code平台技能调用
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# trae调用机制说明及技能文档适配规范
|
|
2
|
+
|
|
3
|
+
## 一、trae调用机制核心特性
|
|
4
|
+
|
|
5
|
+
### 1.1 调用触发方式
|
|
6
|
+
- 仅支持指定格式触发,需明确技能文档路径、调用参数
|
|
7
|
+
- 不支持关键词触发、不支持模糊匹配
|
|
8
|
+
|
|
9
|
+
### 1.2 文档解析逻辑
|
|
10
|
+
- 需在技能文档头部添加固定格式的调用标识
|
|
11
|
+
- 调用标识格式:【trae调用标识:技能名称+关联SDD】
|
|
12
|
+
- 示例:【trae调用标识:brainstorming+Brain-SDD】
|
|
13
|
+
|
|
14
|
+
### 1.3 异常处理
|
|
15
|
+
- 调用失败后直接返回错误提示
|
|
16
|
+
- 需手动核对技能文档格式、调用路径后重新触发
|
|
17
|
+
|
|
18
|
+
## 二、技能文档适配规范
|
|
19
|
+
|
|
20
|
+
### 2.1 调用标识要求
|
|
21
|
+
所有技能文档头部必须添加trae调用标识:
|
|
22
|
+
```markdown
|
|
23
|
+
【trae调用标识:技能名称+关联SDD模板名称】
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
### 2.2 参数说明要求
|
|
27
|
+
在文档末尾补充trae调用参数说明:
|
|
28
|
+
```markdown
|
|
29
|
+
## trae调用参数说明(仅trae触发时使用)
|
|
30
|
+
- 调用路径:skills/对应分类目录/技能名称.md
|
|
31
|
+
- 必传参数:项目名称、技能触发场景
|
|
32
|
+
- 可选参数:自定义选项补充内容
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### 2.3 命名规范
|
|
36
|
+
- 技能文档命名格式:技能名称.md(与原始技能列表一致)
|
|
37
|
+
- 禁止使用特殊字符、空格
|
|
38
|
+
|
|
39
|
+
## 三、调用示例
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
trae调用 skills/requirement-analysis/brainstorming.md 项目名称=个人备忘录APP 触发场景=需求分析阶段
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## 四、常见问题排查
|
|
46
|
+
|
|
47
|
+
| 问题现象 | 可能原因 | 排查方法 |
|
|
48
|
+
|---------|---------|---------|
|
|
49
|
+
| 调用失败 | 文档路径错误 | 核对skills目录结构 |
|
|
50
|
+
| 解析失败 | 缺少调用标识 | 检查文档头部是否有trae调用标识 |
|
|
51
|
+
| 参数错误 | 必传参数缺失 | 确认必传参数是否完整 |
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
**版本**: v1.0
|
|
56
|
+
**适用场景**: trae平台技能调用
|