sdd-skills 1.1.0 → 1.1.2

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 (2) hide show
  1. package/package.json +1 -1
  2. package/skills/sae/SKILL.md +139 -85
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sdd-skills",
3
- "version": "1.1.0",
3
+ "version": "1.1.2",
4
4
  "description": "Spec-Driven Development Skills for Claude Code - SAE/ADE workflow automation",
5
5
  "type": "module",
6
6
  "main": "install.js",
@@ -30,104 +30,156 @@ description: 软件架构工程师,负责需求分析、架构设计和技术
30
30
  - 当存在多个可行方案时,提供对比分析
31
31
  - 考虑团队技术栈熟悉度
32
32
 
33
- ### 4. 编写需求规格文档
33
+ ### 4. 编写 Spec 文档
34
34
 
35
- 需求规格文档应保存在 `specs/requirements/[feature-name].md`,包含以下结构:
35
+ 每个功能需求应拆分为小的 Spec 文档,保存在 `openspec/changes/[change-id]/specs/[capability]/spec.md`。
36
+
37
+ **重要原则**:
38
+ - 每个 Spec 应聚焦一个小需求,保持简洁
39
+ - DESIGN 部分不要过于复杂,能让前后端及 AI 正确理解意图即可
40
+ - 避免歧义,使用明确的描述和示例
41
+
42
+ #### Spec 文档格式
43
+
44
+ ```markdown
45
+ # [Capability Name]
46
+
47
+ ## DESCRIPTION
48
+
49
+ ### 需求背景
50
+ [1-2 句话说明为什么需要这个功能]
51
+
52
+ ### 目标
53
+ - [具体目标 1]
54
+ - [具体目标 2]
55
+
56
+ ### 验收标准
57
+ - [ ] 标准 1:具体可验证的条件
58
+ - [ ] 标准 2:具体可验证的条件
59
+
60
+ ## DESIGN
61
+
62
+ ### 前后端分工
63
+
64
+ **后端职责**:
65
+ - [具体职责 1]
66
+ - [具体职责 2]
67
+
68
+ **前端职责**:
69
+ - [具体职责 1]
70
+ - [具体职责 2]
71
+
72
+ ### 接口设计
73
+
74
+ ```
75
+ [HTTP Method] /api/v1/[resource]
76
+ Request:
77
+ {
78
+ "field1": "类型和说明",
79
+ "field2": "类型和说明"
80
+ }
81
+ Response:
82
+ {
83
+ "field1": "类型和说明"
84
+ }
85
+ ```
86
+
87
+ ### 数据模型(如有)
88
+
89
+ | 字段名 | 类型 | 说明 |
90
+ |--------|------|------|
91
+ | field1 | string | 说明 |
92
+
93
+ ### 核心逻辑
94
+
95
+ [用简洁的步骤描述实现逻辑,避免歧义]
96
+
97
+ 1. 步骤 1:具体操作
98
+ 2. 步骤 2:具体操作
99
+ 3. 步骤 3:具体操作
100
+
101
+ ### 边界情况
102
+
103
+ - 情况 1:如何处理
104
+ - 情况 2:如何处理
105
+ ```
106
+
107
+ #### 示例:用户登录 Spec
36
108
 
37
109
  ```markdown
38
- # [功能名称] 需求规格
110
+ # User Login
111
+
112
+ ## DESCRIPTION
113
+
114
+ ### 需求背景
115
+ 用户需要通过账号密码登录系统以访问受保护的资源。
39
116
 
40
- ## 1. 需求概述
41
- - **业务背景**: 为什么需要这个功能
42
- - **目标用户**: 谁会使用这个功能
43
- - **核心价值**: 解决什么问题,带来什么价值
117
+ ### 目标
118
+ - 支持邮箱+密码登录
119
+ - 返回 JWT Token 用于后续认证
120
+ - 登录失败时返回明确错误信息
44
121
 
45
- ## 2. 功能需求
122
+ ### 验收标准
123
+ - [ ] 正确的邮箱和密码可以成功登录并获取 Token
124
+ - [ ] 错误的密码返回 401 和提示信息
125
+ - [ ] 不存在的邮箱返回 401(不透露邮箱是否存在)
126
+ - [ ] Token 有效期为 24 小时
46
127
 
47
- ### 2.1 功能列表
48
- - [ ] 功能点 1:具体描述
49
- - [ ] 功能点 2:具体描述
50
- - [ ] 功能点 3:具体描述
128
+ ## DESIGN
51
129
 
52
- ### 2.2 用户故事
53
- - 作为 [角色],我想要 [功能],以便 [价值]
54
- - 作为 [角色],我想要 [功能],以便 [价值]
130
+ ### 前后端分工
55
131
 
56
- ## 3. 技术方案
132
+ **后端职责**:
133
+ - 实现 `/api/v1/auth/login` 接口
134
+ - 验证用户凭证
135
+ - 生成 JWT Token
57
136
 
58
- ### 3.1 系统架构
59
- - **前后端分工**:
60
- - 后端职责:API 提供、业务逻辑、数据持久化
61
- - 前端职责:用户界面、交互逻辑、状态管理
62
- - **模块划分**: 列出主要模块及其职责
137
+ **前端职责**:
138
+ - 登录表单页面
139
+ - 调用登录接口
140
+ - 存储 Token 到 localStorage
63
141
 
64
- ### 3.2 技术选型
65
- | 技术点 | 选择方案 | 选择理由 |
66
- |--------|----------|----------|
67
- | 后端框架 | Gin / Echo | 高性能、团队熟悉 |
68
- | 前端框架 | Vue 3 | Composition API、生态成熟 |
69
- | 数据库 | PostgreSQL / MySQL | 根据数据特点选择 |
70
- | 缓存 | Redis | 高性能键值存储 |
142
+ ### 接口设计
71
143
 
72
- ### 3.3 接口设计(前后端契约)
73
144
  ```
74
- POST /api/v1/[resource]
75
- GET /api/v1/[resource]/{id}
76
- PUT /api/v1/[resource]/{id}
77
- DELETE /api/v1/[resource]/{id}
145
+ POST /api/v1/auth/login
146
+ Request:
147
+ {
148
+ "email": "string, 必填, 邮箱格式",
149
+ "password": "string, 必填, 6-32位"
150
+ }
151
+ Response (200):
152
+ {
153
+ "token": "string, JWT Token",
154
+ "expires_at": "int64, Unix 时间戳"
155
+ }
156
+ Response (401):
157
+ {
158
+ "error": "string, 错误信息"
159
+ }
78
160
  ```
79
161
 
80
- ### 3.4 数据模型
81
- - 数据库表结构设计
82
- - 关键字段说明
83
- - 索引设计
84
- - 数据关系
85
-
86
- ### 3.5 核心流程
87
- 使用 Mermaid 图或文字描述关键业务流程
88
-
89
- ## 4. 非功能需求
90
- - **性能要求**: 响应时间 < 200ms (P95)
91
- - **安全要求**: 认证授权机制、数据加密
92
- - **可用性**: 目标可用性(如 99.9%)
93
- - **扩展性**: 预期用户规模和增长
94
-
95
- ## 5. 验收标准
96
- - [ ] 标准 1:用户可以成功完成核心操作
97
- - [ ] 标准 2:错误情况下有友好提示
98
- - [ ] 标准 3:性能满足要求
99
- - [ ] 标准 4:通过安全测试
100
-
101
- ## 6. 实施计划
102
-
103
- ### 6.1 关键文件
104
- **后端需要修改/新建的文件:**
105
- - `backend/api/[resource]_handler.go`
106
- - `backend/service/[resource]_service.go`
107
- - `backend/repository/[resource]_repository.go`
108
- - `backend/model/[resource].go`
109
-
110
- **前端需要修改/新建的文件:**
111
- - `frontend/src/views/[Feature]View.vue`
112
- - `frontend/src/components/[Feature]Component.vue`
113
- - `frontend/src/stores/[resource]Store.ts`
114
- - `frontend/src/api/[resource].ts`
115
-
116
- ### 6.2 技术风险
117
- | 风险 | 影响 | 缓解措施 |
118
- |------|------|----------|
119
- | 风险 1 | 中/高 | 具体措施 |
120
-
121
- ## 7. 测试策略
122
- - **单元测试**: 后端覆盖率 >= 90%,前端 >= 90%
123
- - **集成测试**: API 接口测试
124
- - **E2E 测试**: 关键用户流程
162
+ ### 核心逻辑
163
+
164
+ 1. 校验请求参数格式
165
+ 2. 根据 email 查询用户
166
+ 3. 比对密码哈希(bcrypt)
167
+ 4. 生成 JWT Token(包含 user_id, 过期时间)
168
+ 5. 返回 Token
169
+
170
+ ### 边界情况
171
+
172
+ - 邮箱格式错误:返回 400,提示格式不正确
173
+ - 密码长度不符:返回 400,提示长度要求
174
+ - 账号被锁定:返回 403,提示联系管理员
125
175
  ```
126
176
 
127
177
  ## 输出工件
128
178
 
129
179
  完成需求分析后,应生成:
130
- - **需求规格文档**: `specs/requirements/[feature-name].md`
180
+ - **Spec 文档**: `openspec/changes/[change-id]/specs/[capability]/spec.md`(包含 DESCRIPTION 和 DESIGN)
181
+ - **Proposal 文档**: `openspec/changes/[change-id]/proposal.md`(变更说明)
182
+ - **Tasks 文档**: `openspec/changes/[change-id]/tasks.md`(实施任务清单)
131
183
  - **明确的待办事项**: 下一步交给 Backend Engineer 和 Frontend Engineer
132
184
 
133
185
  ## 决策原则
@@ -212,12 +264,14 @@ DELETE /api/v1/[resource]/{id}
212
264
 
213
265
  明白了。我将设计一个基于 JWT 的认证系统...
214
266
 
215
- 已生成需求规格:specs/requirements/user-login.md
267
+ 已生成以下文件:
268
+ - Spec 文档: openspec/changes/add-user-login/specs/auth/spec.md
269
+ - Proposal: openspec/changes/add-user-login/proposal.md
270
+ - Tasks: openspec/changes/add-user-login/tasks.md
216
271
 
217
- 主要包含:
218
- - 后端:JWT 认证 API (Gin框架)
219
- - 前端:登录表单组件 (Vue 3)
220
- - 验收标准:10 个测试场景
272
+ Spec 概要:
273
+ - DESCRIPTION: 邮箱+密码登录,JWT 认证,24小时有效期
274
+ - DESIGN: 后端 Gin API,前端 Vue 登录表单,bcrypt 密码验证
221
275
 
222
- 下一步请 Backend Engineer 和 Frontend Engineer 分别生成 OpenSpec。
276
+ 下一步请 Backend Engineer 和 Frontend Engineer 分别实现各自部分。
223
277
  ```