sdd-skills 1.0.0
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/LICENSE +21 -0
- package/README.md +204 -0
- package/config/dingtalk-config.template.json +5 -0
- package/docs/workflow-guide.md +836 -0
- package/install.js +272 -0
- package/package.json +42 -0
- package/skills/backend-engineer/SKILL.md +373 -0
- package/skills/code-reviewer/SKILL.md +535 -0
- package/skills/frontend-engineer/SKILL.md +551 -0
- package/skills/git-engineer/SKILL.md +556 -0
- package/skills/notifier/SKILL.md +462 -0
- package/skills/sae/SKILL.md +200 -0
- package/skills/tester/SKILL.md +466 -0
- package/uninstall.js +226 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Yusheng Wang
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
# SDD Skills for Claude Code
|
|
2
|
+
|
|
3
|
+
Spec-Driven Development (SDD) 工作流 Skills 包,支持 SAE/ADE 协同开发模式。
|
|
4
|
+
|
|
5
|
+
## 🚀 快速开始
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# 使用 npx 安装(推荐)
|
|
9
|
+
npx sdd-skills
|
|
10
|
+
|
|
11
|
+
# 或全局安装
|
|
12
|
+
npm install -g sdd-skills
|
|
13
|
+
sdd-skills
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
安装后,Skills 将自动加载到 Claude Code 中,您可以直接开始使用 SDD 工作流。
|
|
17
|
+
|
|
18
|
+
## 📦 包含的 Skills
|
|
19
|
+
|
|
20
|
+
| Skill | 角色 | 职责 |
|
|
21
|
+
|-------|------|------|
|
|
22
|
+
| **sae** | 架构师 | 需求分析、架构设计、技术方案 |
|
|
23
|
+
| **backend-engineer** | Golang 后端工程师 | API 设计、数据库、业务逻辑实现 |
|
|
24
|
+
| **frontend-engineer** | Vue 前端工程师 | 组件开发、状态管理、用户交互 |
|
|
25
|
+
| **tester** | 测试工程师 | 单元测试、E2E 测试、质量保障 |
|
|
26
|
+
| **code-reviewer** | 代码审查专家 | 代码质量、安全审查、规范检查 |
|
|
27
|
+
| **git-engineer** | Git 工程师 | 预检测、提交规范、MR 创建 |
|
|
28
|
+
| **notifier** | 钉钉通知 | 工作流事件通知、失败告警 |
|
|
29
|
+
|
|
30
|
+
## 🔄 工作流程
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
用户提供需求
|
|
34
|
+
↓
|
|
35
|
+
🗣️ Pre-Execution Review(多角色讨论)
|
|
36
|
+
├─ SAE 角度:需求清晰度、架构复杂度
|
|
37
|
+
├─ Backend Engineer 角度:技术可行性、性能评估
|
|
38
|
+
├─ Frontend Engineer 角度:用户体验、组件设计
|
|
39
|
+
├─ Tester 角度:测试策略、环境需求
|
|
40
|
+
├─ Code Reviewer 角度:潜在风险、安全关注
|
|
41
|
+
└─ Git Engineer 角度:CI/CD 兼容性
|
|
42
|
+
↓
|
|
43
|
+
汇总反馈 + 用户决策
|
|
44
|
+
↓
|
|
45
|
+
📐 SAE → 需求规格文档
|
|
46
|
+
↓
|
|
47
|
+
👨💻 Backend Engineer → 后端 OpenSpec → 代码实现
|
|
48
|
+
👩💻 Frontend Engineer → 前端 OpenSpec → 代码实现
|
|
49
|
+
↓
|
|
50
|
+
🧪 Tester → 测试验证
|
|
51
|
+
├─ 失败 → 📢 钉钉通知 → 返回开发
|
|
52
|
+
└─ 成功 ↓
|
|
53
|
+
👀 Code Reviewer → 代码审查
|
|
54
|
+
├─ 失败 → 📢 钉钉通知 → 返回开发
|
|
55
|
+
└─ 成功 ↓
|
|
56
|
+
🚀 Git Engineer → 预检测 + 提交 + MR
|
|
57
|
+
├─ 失败 → 📢 钉钉通知 → 返回开发
|
|
58
|
+
└─ 成功 ↓
|
|
59
|
+
✅ 完成(等待 MR 批准)
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
## 💡 使用示例
|
|
63
|
+
|
|
64
|
+
### 1. 开始一个新功能
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
你: 帮我实现用户登录功能,支持邮箱和手机号登录
|
|
68
|
+
|
|
69
|
+
Claude (自动激活 SAE Skill):
|
|
70
|
+
📍 Pre-Execution Review
|
|
71
|
+
|
|
72
|
+
🗣️ SAE 角度:
|
|
73
|
+
- 需求清晰度:⭐⭐⭐⭐
|
|
74
|
+
- 需要澄清:是否需要第三方登录?密码策略?
|
|
75
|
+
- 架构复杂度:中等
|
|
76
|
+
...
|
|
77
|
+
|
|
78
|
+
[各角色依次给出反馈]
|
|
79
|
+
|
|
80
|
+
📋 汇总反馈:整体可行,需澄清3个问题...
|
|
81
|
+
|
|
82
|
+
你: [回答问题后] 继续
|
|
83
|
+
|
|
84
|
+
Claude (SAE Skill):
|
|
85
|
+
✅ 已生成需求规格:specs/requirements/user-login.md
|
|
86
|
+
...
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### 2. 钉钉通知示例
|
|
90
|
+
|
|
91
|
+
当测试失败时,您将收到钉钉消息:
|
|
92
|
+
|
|
93
|
+
```
|
|
94
|
+
❌ SDD 工作流失败
|
|
95
|
+
|
|
96
|
+
- 工作流: user-login
|
|
97
|
+
- 失败阶段: Tester
|
|
98
|
+
- 错误信息: 3/10 测试用例失败
|
|
99
|
+
- 建议操作: 返回 Backend Engineer 修复
|
|
100
|
+
|
|
101
|
+
🕐 时间: 2026-01-06 14:30:00
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
## ⚙️ 配置钉钉通知
|
|
105
|
+
|
|
106
|
+
安装时可选配置,或手动创建配置文件:
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
# 全局配置
|
|
110
|
+
~/.claude/dingtalk-config.json
|
|
111
|
+
|
|
112
|
+
# 项目配置
|
|
113
|
+
<project>/.claude/dingtalk-config.json
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
配置内容:
|
|
117
|
+
```json
|
|
118
|
+
{
|
|
119
|
+
"webhook_url": "https://oapi.dingtalk.com/robot/send?access_token=YOUR_TOKEN",
|
|
120
|
+
"notify_on": ["failure", "success"]
|
|
121
|
+
}
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
**注意**: 钉钉消息必须包含 "SDD" 关键字(已内置)。
|
|
125
|
+
|
|
126
|
+
## 🛠️ 本地开发
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
# 克隆项目
|
|
130
|
+
git clone https://git.in.chaitin.net/yusheng.wang/sdd-skills.git
|
|
131
|
+
cd sdd-skills
|
|
132
|
+
|
|
133
|
+
# 安装依赖
|
|
134
|
+
npm install
|
|
135
|
+
|
|
136
|
+
# 本地测试
|
|
137
|
+
npm link
|
|
138
|
+
sdd-skills
|
|
139
|
+
|
|
140
|
+
# 卸载
|
|
141
|
+
npm unlink -g sdd-skills
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
## 📚 技术栈说明
|
|
145
|
+
|
|
146
|
+
### Backend Engineer Skill
|
|
147
|
+
- **语言**: Go 1.21+
|
|
148
|
+
- **框架**: Gin / Echo / Fiber
|
|
149
|
+
- **数据库**: PostgreSQL, MySQL, Redis
|
|
150
|
+
- **测试**: go test, testify, gomock
|
|
151
|
+
- **覆盖率要求**: >= 80%
|
|
152
|
+
|
|
153
|
+
### Frontend Engineer Skill
|
|
154
|
+
- **框架**: Vue 3 (Composition API)
|
|
155
|
+
- **状态管理**: Pinia
|
|
156
|
+
- **构建工具**: Vite
|
|
157
|
+
- **测试**: Vitest, Playwright
|
|
158
|
+
- **覆盖率要求**: >= 70%
|
|
159
|
+
|
|
160
|
+
### Git Engineer Skill
|
|
161
|
+
- **VCS**: GitLab (使用 glab CLI)
|
|
162
|
+
- **预检测**: lint, build, test
|
|
163
|
+
- **提交规范**: Conventional Commits
|
|
164
|
+
- **MR**: 手动指定审查人
|
|
165
|
+
|
|
166
|
+
## 🔧 卸载
|
|
167
|
+
|
|
168
|
+
```bash
|
|
169
|
+
# 使用 npx
|
|
170
|
+
npx sdd-skills uninstall
|
|
171
|
+
|
|
172
|
+
# 或如果全局安装
|
|
173
|
+
sdd-skills uninstall
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
## 📖 文档
|
|
177
|
+
|
|
178
|
+
- **完整文档**: [https://git.in.chaitin.net/yusheng.wang/sdd-skills](https://git.in.chaitin.net/yusheng.wang/sdd-skills)
|
|
179
|
+
- **问题反馈**: [https://git.in.chaitin.net/yusheng.wang/sdd-skills/-/issues](https://git.in.chaitin.net/yusheng.wang/sdd-skills/-/issues)
|
|
180
|
+
- **工作流指南**: [docs/workflow-guide.md](docs/workflow-guide.md)
|
|
181
|
+
|
|
182
|
+
## 🤝 贡献
|
|
183
|
+
|
|
184
|
+
欢迎贡献!请:
|
|
185
|
+
1. Fork 本项目
|
|
186
|
+
2. 创建特性分支 (`git checkout -b feature/amazing-feature`)
|
|
187
|
+
3. 提交更改 (`git commit -m 'Add amazing feature'`)
|
|
188
|
+
4. 推送到分支 (`git push origin feature/amazing-feature`)
|
|
189
|
+
5. 创建 Merge Request
|
|
190
|
+
|
|
191
|
+
## 📄 License
|
|
192
|
+
|
|
193
|
+
[MIT License](LICENSE) - 详见 LICENSE 文件
|
|
194
|
+
|
|
195
|
+
## 👥 作者
|
|
196
|
+
|
|
197
|
+
**Yusheng Wang** - 长亭科技研发负责人
|
|
198
|
+
|
|
199
|
+
- GitLab: [@yusheng.wang](https://git.in.chaitin.net/yusheng.wang)
|
|
200
|
+
- Email: yusheng.wang@chaitin.com
|
|
201
|
+
|
|
202
|
+
---
|
|
203
|
+
|
|
204
|
+
**SDD (Spec-Driven Development)** - 以规格书驱动开发,实现 AI × 人协同的高效研发模式
|