sdd-full 3.2.0 → 4.2.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/bin.js +63 -31
- package/package.json +1 -1
- package/skills/brainstorming/SKILL.md +164 -0
- package/skills/brainstorming/scripts/frame-template.html +214 -0
- package/skills/brainstorming/scripts/helper.js +88 -0
- package/skills/brainstorming/scripts/server.cjs +338 -0
- package/skills/brainstorming/scripts/start-server.sh +153 -0
- package/skills/brainstorming/scripts/stop-server.sh +55 -0
- package/skills/brainstorming/spec-document-reviewer-prompt.md +48 -0
- package/skills/brainstorming/visual-companion.md +286 -0
- package/skills/chinese-code-review/SKILL.md +277 -0
- package/skills/chinese-commit-conventions/SKILL.md +364 -0
- package/skills/chinese-documentation/SKILL.md +448 -0
- package/skills/chinese-git-workflow/SKILL.md +510 -0
- package/skills/design-planning/enterprise-spec/SKILL.md +3 -52
- package/skills/design-planning/flutter-av/SKILL.md +34 -44
- package/skills/design-planning/flutter-map/SKILL.md +31 -41
- package/skills/design-planning/ui-sdd-specialized/SKILL.md +40 -46
- package/skills/development-execution/flutter-errors/SKILL.md +34 -44
- package/skills/dispatching-parallel-agents/SKILL.md +182 -0
- package/skills/executing-plans/SKILL.md +175 -0
- package/skills/finishing-a-development-branch/SKILL.md +200 -0
- package/skills/mcp-builder/SKILL.md +255 -0
- package/skills/quality-assurance/bdd-acceptance/SKILL.md +37 -44
- package/skills/receiving-code-review/SKILL.md +213 -0
- package/skills/requesting-code-review/SKILL.md +105 -0
- package/skills/requesting-code-review/code-reviewer.md +146 -0
- package/skills/requirement-analysis/sdd-full/SKILL.md +36 -717
- package/skills/requirement-analysis/unified-flow/SKILL.md +26 -128
- package/skills/rules/skill-map.md +97 -0
- package/skills/rules/user_rules.md +69 -223
- package/skills/special-tools/env-check/SKILL.md +34 -40
- package/skills/subagent-driven-development/SKILL.md +277 -0
- package/skills/subagent-driven-development/code-quality-reviewer-prompt.md +26 -0
- package/skills/subagent-driven-development/implementer-prompt.md +113 -0
- package/skills/subagent-driven-development/spec-reviewer-prompt.md +61 -0
- package/skills/systematic-debugging/CREATION-LOG.md +119 -0
- package/skills/systematic-debugging/SKILL.md +296 -0
- package/skills/systematic-debugging/condition-based-waiting-example.ts +158 -0
- package/skills/systematic-debugging/condition-based-waiting.md +115 -0
- package/skills/systematic-debugging/defense-in-depth.md +122 -0
- package/skills/systematic-debugging/find-polluter.sh +63 -0
- package/skills/systematic-debugging/root-cause-tracing.md +169 -0
- package/skills/systematic-debugging/test-academic.md +14 -0
- package/skills/systematic-debugging/test-pressure-1.md +58 -0
- package/skills/systematic-debugging/test-pressure-2.md +68 -0
- package/skills/systematic-debugging/test-pressure-3.md +69 -0
- package/skills/test-driven-development/SKILL.md +371 -0
- package/skills/test-driven-development/testing-anti-patterns.md +299 -0
- package/skills/using-git-worktrees/SKILL.md +218 -0
- package/skills/using-superpowers/SKILL.md +134 -0
- package/skills/using-superpowers/references/codex-tools.md +25 -0
- package/skills/using-superpowers/references/gemini-tools.md +33 -0
- package/skills/verification-before-completion/SKILL.md +139 -0
- package/skills/workflow-runner/SKILL.md +172 -0
- package/skills/writing-plans/SKILL.md +152 -0
- package/skills/writing-plans/plan-document-reviewer-prompt.md +49 -0
- package/skills/writing-skills/SKILL.md +654 -0
- package/skills/writing-skills/anthropic-best-practices.md +1149 -0
- package/skills/writing-skills/examples/CLAUDE_MD_TESTING.md +189 -0
- package/skills/writing-skills/graphviz-conventions.dot +172 -0
- package/skills/writing-skills/persuasion-principles.md +187 -0
- package/skills/writing-skills/render-graphs.js +168 -0
- package/skills/writing-skills/testing-skills-with-subagents.md +384 -0
- package/skills/README.md +0 -97
- package/skills/call-adaptation/SKILL.md +0 -23
- package/skills/call-adaptation/call-adaptation-guide.md +0 -136
- package/skills/call-adaptation/claude-code-call-spec.md +0 -50
- package/skills/call-adaptation/trae-call-spec.md +0 -56
- package/skills/checklist.md +0 -154
- package/skills/design-planning/ai-coding-rules/SKILL.md +0 -52
- package/skills/design-planning/design-to-code/SKILL.md +0 -53
- package/skills/design-planning/function-sdd/SKILL.md +0 -54
- package/skills/design-planning/sdd-code/SKILL.md +0 -347
- package/skills/design-planning/sdd-deploy/SKILL.md +0 -501
- package/skills/design-planning/sdd-ops/SKILL.md +0 -306
- package/skills/design-planning/sdd-test/SKILL.md +0 -383
- package/skills/design-planning/ui-sdd/SKILL.md +0 -291
- package/skills/design-planning/writing-plans/SKILL.md +0 -144
- package/skills/development-execution/sdd-add/SKILL.md +0 -540
- package/skills/development-execution/systematic-debugging/SKILL.md +0 -298
- package/skills/development-execution/test-driven-development/SKILL.md +0 -373
- package/skills/development-execution/verification-before-completion/SKILL.md +0 -141
- package/skills/knowledge-precipitation/claudeception/SKILL.md +0 -96
- package/skills/knowledge-precipitation/mempalace-auto-saver/SKILL.md +0 -302
- package/skills/quality-assurance/flutter-test/SKILL.md +0 -56
- package/skills/quality-assurance/quality-gate/SKILL.md +0 -350
- package/skills/quality-assurance/security-audit/SKILL.md +0 -386
- package/skills/release-ops/finishing-a-development-branch/SKILL.md +0 -202
- package/skills/release-ops/release-flow/SKILL.md +0 -404
- package/skills/requirement-analysis/brainstorming/SKILL.md +0 -166
- package/skills/requirement-analysis/competitive-brief/SKILL.md +0 -121
- package/skills/requirement-analysis/market-research/SKILL.md +0 -143
- package/skills/requirement-analysis/prd-write/SKILL.md +0 -111
- package/skills/requirement-analysis/requirement-completion-officer/SKILL.md +0 -124
- package/skills/requirement-analysis/sdd/SKILL.md +0 -1044
- package/skills/rules/project_rules.md +0 -167
- package/skills/sdd-framework/SKILL.md +0 -90
- package/skills/special-tools/receiving-code-review/SKILL.md +0 -215
- package/skills/special-tools/requesting-code-review/SKILL.md +0 -107
- package/skills/special-tools/using-superpowers/SKILL.md +0 -117
- package/skills/templates/API-SDD.md +0 -31
- 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" +0 -117
- package/skills/templates/BDD/351/243/216/346/240/274/351/252/214/346/224/266/346/240/207/345/207/206SDD.md +0 -147
- package/skills/templates/Base-SDD.md +0 -38
- package/skills/templates/Brain-SDD.md +0 -36
- package/skills/templates/Code-SDD.md +0 -41
- package/skills/templates/Competitor-SDD.md +0 -34
- package/skills/templates/Env-SDD.md +0 -37
- 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 +0 -162
- package/skills/templates/Flutter/345/234/260/345/233/276/345/257/274/350/210/252/344/270/232/345/212/241SDD.md +0 -136
- package/skills/templates/Flutter/345/270/270/350/247/201/345/274/202/345/270/270/344/270/223/351/241/271SDD.md +0 -159
- package/skills/templates/Flutter/351/237/263/350/247/206/351/242/221/345/205/250/346/240/210SDD.md +0 -121
- package/skills/templates/PRD-SDD.md +0 -45
- package/skills/templates/SKILL.md +0 -29
- package/skills/templates/Test-SDD.md +0 -34
- package/skills/templates/UI-SDD.md +0 -38
- package/skills/templates/UI-SDD/344/270/223/347/224/250/346/250/241/346/235/277.md +0 -141
- 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 +0 -67
- 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 +0 -152
- package/skills/templates//345/212/237/350/203/275SDD/344/270/223/347/224/250/346/250/241/346/235/277.md +0 -132
- 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 +0 -153
- 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 +0 -119
- 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 +0 -408
- 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 +0 -305
- package/skills//346/212/200/350/203/275/344/275/277/347/224/250/346/214/207/345/215/227.md +0 -265
- package/skills//346/212/200/350/203/275/345/206/263/347/255/226/346/240/221.md +0 -294
|
@@ -0,0 +1,510 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: chinese-git-workflow
|
|
3
|
+
description: 适配国内 Git 平台和团队习惯的工作流规范——Gitee、Coding、极狐 GitLab 全覆盖
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# 国内 Git 工作流规范
|
|
7
|
+
|
|
8
|
+
## 概述
|
|
9
|
+
|
|
10
|
+
国内团队用 Git 经常踩的坑:GitHub 访问不稳定、CI/CD 方案照搬国外水土不服、commit message 中英混杂没有规范。本技能提供一套**完整适配国内平台和团队习惯的 Git 工作流**。
|
|
11
|
+
|
|
12
|
+
**核心原则:** 工作流服务于团队效率,不是为了流程而流程。选适合团队规模的,别硬套大厂方案。
|
|
13
|
+
|
|
14
|
+
## 国内 Git 平台适配
|
|
15
|
+
|
|
16
|
+
### 平台对比
|
|
17
|
+
|
|
18
|
+
| 特性 | Gitee | Coding.net | 极狐 GitLab | GitHub |
|
|
19
|
+
|------|-------|------------|-------------|--------|
|
|
20
|
+
| 国内访问 | 快 | 快 | 快 | 不稳定 |
|
|
21
|
+
| 免费私有仓库 | 有 | 有 | 有 | 有 |
|
|
22
|
+
| CI/CD | Gitee Go | Coding CI | 内置 GitLab CI | GitHub Actions |
|
|
23
|
+
| 代码审查 | PR | MR | MR | PR |
|
|
24
|
+
| 制品库 | 有限 | 完整 | 完整 | Packages |
|
|
25
|
+
| 适合场景 | 开源/小团队 | 中大型团队 | 企业私有化 | 国际项目 |
|
|
26
|
+
|
|
27
|
+
### Gitee 特有配置
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
# 设置 Gitee 远程仓库
|
|
31
|
+
git remote add origin https://gitee.com/<org>/<repo>.git
|
|
32
|
+
|
|
33
|
+
# Gitee 的 SSH 配置
|
|
34
|
+
# ~/.ssh/config
|
|
35
|
+
Host gitee.com
|
|
36
|
+
HostName gitee.com
|
|
37
|
+
User git
|
|
38
|
+
IdentityFile ~/.ssh/gitee_rsa
|
|
39
|
+
PreferredAuthentications publickey
|
|
40
|
+
|
|
41
|
+
# 同时推送到 Gitee 和 GitHub(镜像同步)
|
|
42
|
+
git remote set-url --add --push origin https://gitee.com/<org>/<repo>.git
|
|
43
|
+
git remote set-url --add --push origin https://github.com/<org>/<repo>.git
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### Coding.net 特有配置
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
# Coding 的仓库地址格式
|
|
50
|
+
git remote add origin https://e.coding.net/<team>/<project>/<repo>.git
|
|
51
|
+
|
|
52
|
+
# Coding 支持的 SSH 地址
|
|
53
|
+
git remote add origin git@e.coding.net:<team>/<project>/<repo>.git
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
### 极狐 GitLab 特有配置
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
# 极狐 GitLab 私有化部署常见地址格式
|
|
60
|
+
git remote add origin https://jihulab.com/<group>/<repo>.git
|
|
61
|
+
|
|
62
|
+
# 或者企业内部部署
|
|
63
|
+
git remote add origin https://gitlab.yourcompany.com/<group>/<repo>.git
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## 工作流选择
|
|
67
|
+
|
|
68
|
+
### 方案一:主干开发(Trunk-Based Development)
|
|
69
|
+
|
|
70
|
+
**适合:** 小团队(2-8 人)、迭代速度快、有完善的自动化测试。
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
main ──●──●──●──●──●──●──●──●──●──
|
|
74
|
+
\ / \ / \ /
|
|
75
|
+
feat/x ●─● ●─● fix/y ●─●
|
|
76
|
+
(短命分支,1-2 天内合回)
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
**规则:**
|
|
80
|
+
- 主干(main)始终保持可发布状态
|
|
81
|
+
- 功能分支生命周期不超过 2 天
|
|
82
|
+
- 每天至少合并一次到主干
|
|
83
|
+
- 用 Feature Flag 控制未完成功能的可见性
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
# 从 main 拉分支
|
|
87
|
+
git checkout -b feat/user-login main
|
|
88
|
+
|
|
89
|
+
# 开发完成后,rebase 到最新 main
|
|
90
|
+
git fetch origin
|
|
91
|
+
git rebase origin/main
|
|
92
|
+
|
|
93
|
+
# 提交 PR/MR,合并后删除分支
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### 方案二:Git Flow(经典分支模型)
|
|
97
|
+
|
|
98
|
+
**适合:** 中大团队、版本发布节奏固定(如双周迭代)、需要维护多个版本。
|
|
99
|
+
|
|
100
|
+
```
|
|
101
|
+
main ──●────────────────●────────────── 生产环境
|
|
102
|
+
\ / \
|
|
103
|
+
release ●──●──●──●──● ●──●──●──●── 发布分支
|
|
104
|
+
\ /
|
|
105
|
+
develop ──●──●──●──●──●──●──●──●──●──●── 开发主线
|
|
106
|
+
\ / \ /
|
|
107
|
+
feat/x ●─● ●─────● 功能分支
|
|
108
|
+
\ /
|
|
109
|
+
fix/y ●─● 修复分支
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
**分支说明:**
|
|
113
|
+
- `main` — 生产环境代码,只接受 release 和 hotfix 的合并
|
|
114
|
+
- `develop` — 开发主线,功能分支从这里拉出,合回这里
|
|
115
|
+
- `release/*` — 发布分支,从 develop 拉出,只修 bug 不加功能
|
|
116
|
+
- `feat/*` — 功能分支
|
|
117
|
+
- `hotfix/*` — 紧急修复,从 main 拉出,同时合回 main 和 develop
|
|
118
|
+
|
|
119
|
+
### 方案三:国内团队常用简化流程
|
|
120
|
+
|
|
121
|
+
**适合:** 大多数国内中小团队的实际情况。
|
|
122
|
+
|
|
123
|
+
```
|
|
124
|
+
main ──●──────●──────●──── 生产环境(受保护)
|
|
125
|
+
\ / \ /
|
|
126
|
+
dev ──●──●─●──●──●─●──── 开发/测试环境
|
|
127
|
+
\ / \ /
|
|
128
|
+
feat/x ●● ●● 功能分支
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
**规则:**
|
|
132
|
+
- `main` 分支受保护,只能通过 PR/MR 合并
|
|
133
|
+
- `dev` 分支对应测试环境,自动部署
|
|
134
|
+
- 功能分支从 `dev` 拉出,合回 `dev`
|
|
135
|
+
- `dev` 测试通过后,合并到 `main` 进行发布
|
|
136
|
+
|
|
137
|
+
## 分支命名规范
|
|
138
|
+
|
|
139
|
+
### 国内团队常用命名
|
|
140
|
+
|
|
141
|
+
```bash
|
|
142
|
+
# 功能分支
|
|
143
|
+
feat/user-login # 新功能
|
|
144
|
+
feat/JIRA-1234-order-refund # 关联任务编号
|
|
145
|
+
|
|
146
|
+
# 修复分支
|
|
147
|
+
fix/payment-callback # Bug 修复
|
|
148
|
+
fix/JIRA-5678-null-pointer # 关联 Bug 编号
|
|
149
|
+
|
|
150
|
+
# 发布分支
|
|
151
|
+
release/v2.1.0 # 版本发布
|
|
152
|
+
release/2024-03-sprint # 按迭代命名
|
|
153
|
+
|
|
154
|
+
# 紧急修复
|
|
155
|
+
hotfix/v2.0.1 # 线上紧急修复
|
|
156
|
+
hotfix/fix-login-crash # 描述性命名
|
|
157
|
+
|
|
158
|
+
# 个人分支(部分团队使用)
|
|
159
|
+
dev/zhangsan/feat-login # 个人开发分支
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
### 命名规则
|
|
163
|
+
|
|
164
|
+
1. 全部小写,用 `-` 连接单词(不用下划线或驼峰)
|
|
165
|
+
2. 前缀明确分支类型:`feat/`、`fix/`、`hotfix/`、`release/`
|
|
166
|
+
3. 关联任务管理平台的编号(如有):`feat/TAPD-12345-description`
|
|
167
|
+
4. 长度适中,能看出分支目的即可
|
|
168
|
+
|
|
169
|
+
## 中文 Commit Message 规范
|
|
170
|
+
|
|
171
|
+
### 约定式提交(Conventional Commits)中文版
|
|
172
|
+
|
|
173
|
+
```
|
|
174
|
+
<类型>(<范围>): <简要描述>
|
|
175
|
+
← 空行
|
|
176
|
+
<正文(可选)>
|
|
177
|
+
← 空行
|
|
178
|
+
<脚注(可选)>
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
### 类型清单
|
|
182
|
+
|
|
183
|
+
| 类型 | 说明 | emoji(可选) |
|
|
184
|
+
|------|------|--------------|
|
|
185
|
+
| feat | 新增功能 | ✨ |
|
|
186
|
+
| fix | 修复 Bug | 🐛 |
|
|
187
|
+
| docs | 文档更新 | 📝 |
|
|
188
|
+
| style | 代码格式(不影响逻辑) | 💄 |
|
|
189
|
+
| refactor | 重构(不是新功能也不是修 Bug) | ♻️ |
|
|
190
|
+
| perf | 性能优化 | ⚡ |
|
|
191
|
+
| test | 测试相关 | ✅ |
|
|
192
|
+
| build | 构建系统或外部依赖 | 📦 |
|
|
193
|
+
| ci | CI/CD 配置 | 👷 |
|
|
194
|
+
| chore | 其他杂项 | 🔧 |
|
|
195
|
+
| revert | 回滚 | ⏪ |
|
|
196
|
+
|
|
197
|
+
### 好的 commit message
|
|
198
|
+
|
|
199
|
+
```
|
|
200
|
+
feat(购物车): 支持批量删除商品
|
|
201
|
+
|
|
202
|
+
- 新增全选/反选功能
|
|
203
|
+
- 删除操作增加二次确认弹窗
|
|
204
|
+
- 批量删除接口使用 POST /cart/batch-delete
|
|
205
|
+
|
|
206
|
+
关联需求:TAPD-12345
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
```
|
|
210
|
+
fix(支付): 修复微信支付在 iOS 16 上无法唤起的问题
|
|
211
|
+
|
|
212
|
+
原因:微信 SDK 8.0.33 版本在 iOS 16 上 Universal Links 校验逻辑变更,
|
|
213
|
+
导致 openURL 回调失败。
|
|
214
|
+
|
|
215
|
+
方案:升级 SDK 至 8.0.38,并更新 Associated Domains 配置。
|
|
216
|
+
|
|
217
|
+
Closes #567
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
### 不好的 commit message
|
|
221
|
+
|
|
222
|
+
```
|
|
223
|
+
# 太笼统
|
|
224
|
+
update code
|
|
225
|
+
fix bug
|
|
226
|
+
修改了一些东西
|
|
227
|
+
|
|
228
|
+
# 没有上下文
|
|
229
|
+
fix: 修复问题
|
|
230
|
+
feat: 新增功能
|
|
231
|
+
|
|
232
|
+
# 中英混杂无规范
|
|
233
|
+
fix:修复了一个bug,因为user login的时候会crash
|
|
234
|
+
```
|
|
235
|
+
|
|
236
|
+
## CI/CD 平台适配
|
|
237
|
+
|
|
238
|
+
### Gitee Go
|
|
239
|
+
|
|
240
|
+
```yaml
|
|
241
|
+
# .gitee/pipelines/pipeline.yml
|
|
242
|
+
name: 构建与测试
|
|
243
|
+
displayName: '构建与测试流水线'
|
|
244
|
+
|
|
245
|
+
triggers:
|
|
246
|
+
push:
|
|
247
|
+
branches:
|
|
248
|
+
include:
|
|
249
|
+
- main
|
|
250
|
+
- dev
|
|
251
|
+
|
|
252
|
+
stages:
|
|
253
|
+
- name: 测试
|
|
254
|
+
jobs:
|
|
255
|
+
- name: 单元测试
|
|
256
|
+
steps:
|
|
257
|
+
- step: npmbuild@1
|
|
258
|
+
name: install_and_test
|
|
259
|
+
displayName: '安装依赖并执行测试'
|
|
260
|
+
inputs:
|
|
261
|
+
nodeVersion: 20
|
|
262
|
+
commands:
|
|
263
|
+
- npm ci
|
|
264
|
+
- npm test
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
### Coding CI
|
|
268
|
+
|
|
269
|
+
```groovy
|
|
270
|
+
// Jenkinsfile(Coding CI 支持 Jenkinsfile 语法)
|
|
271
|
+
pipeline {
|
|
272
|
+
agent any
|
|
273
|
+
|
|
274
|
+
stages {
|
|
275
|
+
stage('安装依赖') {
|
|
276
|
+
steps {
|
|
277
|
+
sh 'npm ci'
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
stage('单元测试') {
|
|
282
|
+
steps {
|
|
283
|
+
sh 'npm test'
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
stage('构建') {
|
|
288
|
+
steps {
|
|
289
|
+
sh 'npm run build'
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
stage('部署到测试环境') {
|
|
294
|
+
when {
|
|
295
|
+
branch 'dev'
|
|
296
|
+
}
|
|
297
|
+
steps {
|
|
298
|
+
sh './scripts/deploy-staging.sh'
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
stage('部署到生产环境') {
|
|
303
|
+
when {
|
|
304
|
+
branch 'main'
|
|
305
|
+
}
|
|
306
|
+
steps {
|
|
307
|
+
sh './scripts/deploy-production.sh'
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
post {
|
|
313
|
+
failure {
|
|
314
|
+
// 企业微信/钉钉通知
|
|
315
|
+
sh './scripts/notify-failure.sh'
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
### 极狐 GitLab CI
|
|
322
|
+
|
|
323
|
+
```yaml
|
|
324
|
+
# .gitlab-ci.yml
|
|
325
|
+
stages:
|
|
326
|
+
- test
|
|
327
|
+
- build
|
|
328
|
+
- deploy
|
|
329
|
+
|
|
330
|
+
variables:
|
|
331
|
+
NODE_IMAGE: node:20-alpine
|
|
332
|
+
# 使用国内镜像加速
|
|
333
|
+
NPM_REGISTRY: https://registry.npmmirror.com
|
|
334
|
+
|
|
335
|
+
单元测试:
|
|
336
|
+
stage: test
|
|
337
|
+
image: $NODE_IMAGE
|
|
338
|
+
script:
|
|
339
|
+
- npm config set registry $NPM_REGISTRY
|
|
340
|
+
- npm ci
|
|
341
|
+
- npm test
|
|
342
|
+
coverage: '/Lines\s*:\s*(\d+\.?\d*)%/'
|
|
343
|
+
|
|
344
|
+
构建:
|
|
345
|
+
stage: build
|
|
346
|
+
image: $NODE_IMAGE
|
|
347
|
+
script:
|
|
348
|
+
- npm config set registry $NPM_REGISTRY
|
|
349
|
+
- npm ci
|
|
350
|
+
- npm run build
|
|
351
|
+
artifacts:
|
|
352
|
+
paths:
|
|
353
|
+
- dist/
|
|
354
|
+
|
|
355
|
+
部署测试环境:
|
|
356
|
+
stage: deploy
|
|
357
|
+
script:
|
|
358
|
+
- ./scripts/deploy-staging.sh
|
|
359
|
+
only:
|
|
360
|
+
- dev
|
|
361
|
+
environment:
|
|
362
|
+
name: staging
|
|
363
|
+
|
|
364
|
+
部署生产环境:
|
|
365
|
+
stage: deploy
|
|
366
|
+
script:
|
|
367
|
+
- ./scripts/deploy-production.sh
|
|
368
|
+
only:
|
|
369
|
+
- main
|
|
370
|
+
environment:
|
|
371
|
+
name: production
|
|
372
|
+
when: manual # 生产环境手动触发
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
### GitHub Actions 国内替代方案对照
|
|
376
|
+
|
|
377
|
+
| GitHub Actions 功能 | Gitee Go | Coding CI | 极狐 GitLab CI |
|
|
378
|
+
|---------------------|----------|-----------|----------------|
|
|
379
|
+
| 触发条件 | triggers | Jenkinsfile triggers | only/rules |
|
|
380
|
+
| 缓存依赖 | cache step | stash/unstash | cache |
|
|
381
|
+
| 制品存储 | artifacts | 制品库 | artifacts |
|
|
382
|
+
| 环境变量 | env | environment | variables |
|
|
383
|
+
| 密钥管理 | 环境变量配置 | 凭据管理 | CI/CD Variables |
|
|
384
|
+
| 手动触发 | 手动运行 | 手动触发 | when: manual |
|
|
385
|
+
|
|
386
|
+
## PR/MR 描述模板
|
|
387
|
+
|
|
388
|
+
### 中文模板
|
|
389
|
+
|
|
390
|
+
在仓库中创建 PR/MR 模板文件:
|
|
391
|
+
|
|
392
|
+
**Gitee:** `.gitee/PULL_REQUEST_TEMPLATE.md`
|
|
393
|
+
|
|
394
|
+
**Coding / GitLab:** `.gitlab/merge_request_templates/default.md`
|
|
395
|
+
|
|
396
|
+
```markdown
|
|
397
|
+
## 变更说明
|
|
398
|
+
|
|
399
|
+
<!-- 简要描述这次改动做了什么,解决了什么问题 -->
|
|
400
|
+
|
|
401
|
+
## 变更类型
|
|
402
|
+
|
|
403
|
+
- [ ] 新功能(feat)
|
|
404
|
+
- [ ] Bug 修复(fix)
|
|
405
|
+
- [ ] 重构(refactor)
|
|
406
|
+
- [ ] 性能优化(perf)
|
|
407
|
+
- [ ] 文档更新(docs)
|
|
408
|
+
- [ ] 其他:
|
|
409
|
+
|
|
410
|
+
## 关联信息
|
|
411
|
+
|
|
412
|
+
- 需求/Bug 链接:
|
|
413
|
+
- 设计文档:
|
|
414
|
+
|
|
415
|
+
## 改动范围
|
|
416
|
+
|
|
417
|
+
<!-- 列出主要改动的模块和文件 -->
|
|
418
|
+
|
|
419
|
+
## 测试情况
|
|
420
|
+
|
|
421
|
+
- [ ] 单元测试通过
|
|
422
|
+
- [ ] 手动测试通过
|
|
423
|
+
- [ ] 相关模块回归测试通过
|
|
424
|
+
|
|
425
|
+
## 测试方法
|
|
426
|
+
|
|
427
|
+
<!-- 描述如何验证这次改动 -->
|
|
428
|
+
|
|
429
|
+
## 影响范围
|
|
430
|
+
|
|
431
|
+
<!-- 这次改动可能影响哪些功能?是否需要通知其他团队? -->
|
|
432
|
+
|
|
433
|
+
## 部署注意事项
|
|
434
|
+
|
|
435
|
+
- [ ] 需要执行数据库迁移
|
|
436
|
+
- [ ] 需要更新配置文件
|
|
437
|
+
- [ ] 需要更新环境变量
|
|
438
|
+
- [ ] 无特殊注意事项
|
|
439
|
+
|
|
440
|
+
## 截图/录屏
|
|
441
|
+
|
|
442
|
+
<!-- 如果涉及 UI 变更,贴截图或录屏 -->
|
|
443
|
+
```
|
|
444
|
+
|
|
445
|
+
## 常用 Git 配置
|
|
446
|
+
|
|
447
|
+
### 国内环境优化
|
|
448
|
+
|
|
449
|
+
```bash
|
|
450
|
+
# 设置用户信息
|
|
451
|
+
git config --global user.name "张三"
|
|
452
|
+
git config --global user.email "zhangsan@company.com"
|
|
453
|
+
|
|
454
|
+
# commit message 编辑器设置为 VS Code
|
|
455
|
+
git config --global core.editor "code --wait"
|
|
456
|
+
|
|
457
|
+
# 解决中文文件名显示为转义字符的问题
|
|
458
|
+
git config --global core.quotepath false
|
|
459
|
+
|
|
460
|
+
# 设置默认分支名
|
|
461
|
+
git config --global init.defaultBranch main
|
|
462
|
+
|
|
463
|
+
# 代理设置(如果需要同时使用 GitHub)
|
|
464
|
+
git config --global http.https://github.com.proxy socks5://127.0.0.1:7890
|
|
465
|
+
|
|
466
|
+
# NPM 使用国内镜像
|
|
467
|
+
npm config set registry https://registry.npmmirror.com
|
|
468
|
+
```
|
|
469
|
+
|
|
470
|
+
### .gitignore 国内项目常见配置
|
|
471
|
+
|
|
472
|
+
```gitignore
|
|
473
|
+
# IDE
|
|
474
|
+
.idea/
|
|
475
|
+
.vscode/
|
|
476
|
+
*.swp
|
|
477
|
+
|
|
478
|
+
# 依赖
|
|
479
|
+
node_modules/
|
|
480
|
+
vendor/
|
|
481
|
+
|
|
482
|
+
# 构建产物
|
|
483
|
+
dist/
|
|
484
|
+
build/
|
|
485
|
+
*.exe
|
|
486
|
+
|
|
487
|
+
# 环境配置
|
|
488
|
+
.env
|
|
489
|
+
.env.local
|
|
490
|
+
.env.*.local
|
|
491
|
+
|
|
492
|
+
# 系统文件
|
|
493
|
+
.DS_Store
|
|
494
|
+
Thumbs.db
|
|
495
|
+
desktop.ini
|
|
496
|
+
|
|
497
|
+
# 国内平台特有
|
|
498
|
+
.coding/
|
|
499
|
+
```
|
|
500
|
+
|
|
501
|
+
## 检查清单
|
|
502
|
+
|
|
503
|
+
在推送代码前,确认:
|
|
504
|
+
|
|
505
|
+
- [ ] 分支命名符合团队规范
|
|
506
|
+
- [ ] commit message 格式正确,类型和范围准确
|
|
507
|
+
- [ ] 关联了对应的需求/Bug 编号
|
|
508
|
+
- [ ] PR/MR 描述填写完整
|
|
509
|
+
- [ ] CI 流水线通过
|
|
510
|
+
- [ ] 已请求相关同事 Review
|
|
@@ -1,54 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
description: 环境预检前置、项目目录、版本管理、交付物统一标准
|
|
3
|
-
author:
|
|
4
|
-
version: 1.0.0
|
|
5
|
-
trigger:
|
|
6
|
-
- 企业级工程规范
|
|
7
|
-
- 项目规范
|
|
8
|
-
- 工程标准
|
|
9
|
-
tags:
|
|
10
|
-
- 工程规范
|
|
11
|
-
- 项目管理
|
|
12
|
-
- 交付标准
|
|
1
|
+
# enterprise-spec - 企业级全栈工程规范
|
|
13
2
|
|
|
14
|
-
|
|
3
|
+
## 功能说明
|
|
15
4
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
本技能提供企业级全栈工程规范SDD模板,包含环境预检前置、项目目录结构、版本管理和交付物统一标准。
|
|
19
|
-
|
|
20
|
-
## 调用方式
|
|
21
|
-
|
|
22
|
-
### Claude Code调用
|
|
23
|
-
```
|
|
24
|
-
调用 企业级全栈工程规范SDD 项目名称=电商平台
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
### Trae调用
|
|
28
|
-
```
|
|
29
|
-
trae调用 企业级全栈工程规范SDD 项目名称=电商平台 项目类型=企业级 流程场景=从零开始新项目
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
## 参数说明
|
|
33
|
-
|
|
34
|
-
| 参数名 | 类型 | 必填 | 说明 |
|
|
35
|
-
|--------|------|------|------|
|
|
36
|
-
| 项目名称 | string | 是 | 项目名称 |
|
|
37
|
-
| 项目类型 | string | 否 | 企业级/中小型/个人 |
|
|
38
|
-
| 团队规模 | string | 否 | 团队人数 |
|
|
39
|
-
|
|
40
|
-
## 输出内容
|
|
41
|
-
|
|
42
|
-
1. 环境预检前置(本机配置、依赖工具、网络环境)
|
|
43
|
-
2. 项目目录结构(标准结构、命名规范)
|
|
44
|
-
3. 版本管理(分支策略、提交规范、版本命名)
|
|
45
|
-
4. 交付物统一标准(代码交付、文档交付、部署交付)
|
|
46
|
-
5. 质量保障(代码审查、安全审计)
|
|
47
|
-
6. 验收标准(工程规范验证、交付物验证)
|
|
48
|
-
|
|
49
|
-
## 适用场景
|
|
50
|
-
|
|
51
|
-
- 新项目初始化
|
|
52
|
-
- 团队规范制定
|
|
53
|
-
- 项目重构
|
|
54
|
-
- 质量保障
|
|
5
|
+
环境预检前置、
|
|
@@ -1,54 +1,44 @@
|
|
|
1
|
-
|
|
2
|
-
description: 离线ASR语音转写、TTS语音合成、OCR文字识别接入规范
|
|
3
|
-
author:
|
|
4
|
-
version: 1.0.0
|
|
5
|
-
trigger:
|
|
6
|
-
- Flutter音视频
|
|
7
|
-
- ASR语音转写
|
|
8
|
-
- TTS语音合成
|
|
9
|
-
- OCR识别
|
|
10
|
-
tags:
|
|
11
|
-
- Flutter
|
|
12
|
-
- 音视频
|
|
13
|
-
- ASR
|
|
14
|
-
- TTS
|
|
15
|
-
- OCR
|
|
16
|
-
|
|
17
|
-
【claude code调用标识:Flutter音视频全栈SDD】【trae调用标识:Flutter音视频全栈SDD+音视频集成】【流程场景:1.完整3阶段SDD流程、2.从零开始新项目、3.小型功能迭代】
|
|
18
|
-
|
|
19
|
-
## 功能描述
|
|
20
|
-
|
|
21
|
-
本技能提供Flutter音视频全栈SDD模板,包含离线ASR语音转写、TTS语音合成、OCR文字识别的接入规范,帮助团队规范音视频功能开发。
|
|
22
|
-
|
|
23
|
-
## 调用方式
|
|
24
|
-
|
|
25
|
-
### Claude Code调用
|
|
26
|
-
```
|
|
27
|
-
调用 Flutter音视频全栈SDD 项目名称=语音助手APP
|
|
28
|
-
```
|
|
1
|
+
# flutter-av - Flutter音视频全栈SDD
|
|
29
2
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
3
|
+
## 功能说明
|
|
4
|
+
|
|
5
|
+
离线ASR语音转写、TTS语音合成、OCR文字识别接入规范。
|
|
6
|
+
|
|
7
|
+
## 触发词
|
|
8
|
+
|
|
9
|
+
`Flutter音视频`、`ASR`、`TTS`、`OCR`、`语音识别`
|
|
34
10
|
|
|
35
11
|
## 参数说明
|
|
36
12
|
|
|
37
13
|
| 参数名 | 类型 | 必填 | 说明 |
|
|
38
14
|
|--------|------|------|------|
|
|
39
|
-
|
|
|
40
|
-
|
|
|
15
|
+
| project_name | string | 是 | 项目名称 |
|
|
16
|
+
| modules | string | 否 | 模块列表:asr/tts/ocr |
|
|
41
17
|
|
|
42
|
-
##
|
|
18
|
+
## 核心内容
|
|
43
19
|
|
|
44
|
-
1. 离线ASR
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
20
|
+
### 1. 离线ASR
|
|
21
|
+
- 语音识别引擎选择
|
|
22
|
+
- 模型下载与更新
|
|
23
|
+
- 实时识别优化
|
|
24
|
+
|
|
25
|
+
### 2. TTS语音合成
|
|
26
|
+
- 语音引擎配置
|
|
27
|
+
- 音色选择
|
|
28
|
+
- 语速语调控制
|
|
29
|
+
|
|
30
|
+
### 3. OCR文字识别
|
|
31
|
+
- 图像预处理
|
|
32
|
+
- 识别精度优化
|
|
33
|
+
- 多语言支持
|
|
34
|
+
|
|
35
|
+
## 使用示例
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
trae调用 Flutter音视频全栈SDD 项目名称=智能助手APP
|
|
39
|
+
trae调用 Flutter音视频全栈SDD 项目名称=教育平台 模块=asr,tts
|
|
40
|
+
```
|
|
48
41
|
|
|
49
|
-
##
|
|
42
|
+
## 版本
|
|
50
43
|
|
|
51
|
-
|
|
52
|
-
- 文字识别应用
|
|
53
|
-
- 音视频功能集成
|
|
54
|
-
- 多媒体应用开发
|
|
44
|
+
v4.1.0
|