@tinkcarlos/skillora 0.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.
Files changed (234) hide show
  1. package/.claude/skills/.temp-skill-index.md +245 -0
  2. package/.claude/skills/SKILL.md +264 -0
  3. package/.claude/skills/api-scaffolding/SKILL.md +431 -0
  4. package/.claude/skills/api-scaffolding/agents/backend-architect.md +282 -0
  5. package/.claude/skills/api-scaffolding/agents/django-pro.md +144 -0
  6. package/.claude/skills/api-scaffolding/agents/fastapi-pro.md +156 -0
  7. package/.claude/skills/api-scaffolding/agents/graphql-architect.md +146 -0
  8. package/.claude/skills/api-scaffolding/skills/fastapi-templates/SKILL.md +171 -0
  9. package/.claude/skills/api-testing-observability/SKILL.md +583 -0
  10. package/.claude/skills/api-testing-observability/agents/api-documenter.md +146 -0
  11. package/.claude/skills/api-testing-observability/commands/api-mock.md +1320 -0
  12. package/.claude/skills/brainstorming/SKILL.md +283 -0
  13. package/.claude/skills/bug-fixing/SKILL.md +382 -0
  14. package/.claude/skills/bug-fixing/references/backend-guide.md +132 -0
  15. package/.claude/skills/bug-fixing/references/bug-guide.md +354 -0
  16. package/.claude/skills/bug-fixing/references/bug-record-template.md +134 -0
  17. package/.claude/skills/bug-fixing/references/bug-records.md +88 -0
  18. package/.claude/skills/bug-fixing/references/code-review-gate.md +81 -0
  19. package/.claude/skills/bug-fixing/references/common-bugs.md +140 -0
  20. package/.claude/skills/bug-fixing/references/complete-workflow.md +361 -0
  21. package/.claude/skills/bug-fixing/references/config-driven-fixes.md +136 -0
  22. package/.claude/skills/bug-fixing/references/context-isolation-protocol.md +268 -0
  23. package/.claude/skills/bug-fixing/references/cross-surface-regression.md +120 -0
  24. package/.claude/skills/bug-fixing/references/database-investigation.md +129 -0
  25. package/.claude/skills/bug-fixing/references/dependency-and-integrity-protocol.md +369 -0
  26. package/.claude/skills/bug-fixing/references/fix-completeness-checklist.md +239 -0
  27. package/.claude/skills/bug-fixing/references/frontend-guide.md +219 -0
  28. package/.claude/skills/bug-fixing/references/fullstack-joint-guide.md +123 -0
  29. package/.claude/skills/bug-fixing/references/functional-breakage.md +117 -0
  30. package/.claude/skills/bug-fixing/references/ide-lint-errors-guide.md +176 -0
  31. package/.claude/skills/bug-fixing/references/impact-analysis.md +511 -0
  32. package/.claude/skills/bug-fixing/references/investigation-checklist.md +263 -0
  33. package/.claude/skills/bug-fixing/references/knowledge-extraction-guide.md +531 -0
  34. package/.claude/skills/bug-fixing/references/knowledge-workflow.md +212 -0
  35. package/.claude/skills/bug-fixing/references/post-edit-quality-gate.md +30 -0
  36. package/.claude/skills/bug-fixing/references/python-env-and-testing.md +126 -0
  37. package/.claude/skills/bug-fixing/references/rca-guide.md +428 -0
  38. package/.claude/skills/bug-fixing/references/similar-bug-patterns.md +113 -0
  39. package/.claude/skills/bug-fixing/references/skill-delegation-guide.md +350 -0
  40. package/.claude/skills/bug-fixing/references/skill-orchestration.md +155 -0
  41. package/.claude/skills/bug-fixing/references/testing-strategy.md +350 -0
  42. package/.claude/skills/bug-fixing/references/tooling-build-scripts.md +162 -0
  43. package/.claude/skills/bug-fixing/references/user-input-validation.md +77 -0
  44. package/.claude/skills/bug-fixing/references/ux-patterns.md +158 -0
  45. package/.claude/skills/bug-fixing/references/windows-terminal-hygiene.md +106 -0
  46. package/.claude/skills/bug-fixing/references/zero-regression-matrix.md +239 -0
  47. package/.claude/skills/bug-fixing/references/zero-risk-protocol.md +102 -0
  48. package/.claude/skills/bug-fixing/scripts/format_code.py +611 -0
  49. package/.claude/skills/bug-fixing/scripts/generate_report_template.py +74 -0
  50. package/.claude/skills/bug-fixing/scripts/lint_check.py +816 -0
  51. package/.claude/skills/bug-fixing/scripts/requirements.txt +36 -0
  52. package/.claude/skills/cicd-pipeline/SKILL.md +300 -0
  53. package/.claude/skills/code-review/SKILL.md +535 -0
  54. package/.claude/skills/code-review/references/anti-pattern-scan.md +102 -0
  55. package/.claude/skills/code-review/references/automated-analysis.md +456 -0
  56. package/.claude/skills/code-review/references/backend-common-issues.md +589 -0
  57. package/.claude/skills/code-review/references/backend-expert-guide.md +415 -0
  58. package/.claude/skills/code-review/references/backend-review.md +868 -0
  59. package/.claude/skills/code-review/references/batch-processing-strategy.md +198 -0
  60. package/.claude/skills/code-review/references/call-chain-analysis-protocol.md +166 -0
  61. package/.claude/skills/code-review/references/common-patterns.md +321 -0
  62. package/.claude/skills/code-review/references/configuration-review.md +425 -0
  63. package/.claude/skills/code-review/references/control-flow-completeness.md +114 -0
  64. package/.claude/skills/code-review/references/database-review.md +298 -0
  65. package/.claude/skills/code-review/references/dependency-and-integrity-protocol.md +313 -0
  66. package/.claude/skills/code-review/references/external-standards.md +51 -0
  67. package/.claude/skills/code-review/references/feature-review.md +329 -0
  68. package/.claude/skills/code-review/references/file-review-template.md +326 -0
  69. package/.claude/skills/code-review/references/frontend-advanced.md +654 -0
  70. package/.claude/skills/code-review/references/frontend-common-issues.md +482 -0
  71. package/.claude/skills/code-review/references/frontend-expert-guide.md +342 -0
  72. package/.claude/skills/code-review/references/frontend-review.md +783 -0
  73. package/.claude/skills/code-review/references/fullstack-consistency.md +418 -0
  74. package/.claude/skills/code-review/references/fullstack-review.md +477 -0
  75. package/.claude/skills/code-review/references/functional-completeness.md +386 -0
  76. package/.claude/skills/code-review/references/hidden-bugs-detection.md +473 -0
  77. package/.claude/skills/code-review/references/ide-lint-errors-guide.md +173 -0
  78. package/.claude/skills/code-review/references/infrastructure-review.md +453 -0
  79. package/.claude/skills/code-review/references/iteration-review.md +264 -0
  80. package/.claude/skills/code-review/references/job-review.md +335 -0
  81. package/.claude/skills/code-review/references/layered-checklist-protocol.md +157 -0
  82. package/.claude/skills/code-review/references/logic-completeness.md +535 -0
  83. package/.claude/skills/code-review/references/mandatory-checklist.md +288 -0
  84. package/.claude/skills/code-review/references/multi-language-guide.md +800 -0
  85. package/.claude/skills/code-review/references/new-project-review.md +226 -0
  86. package/.claude/skills/code-review/references/non-code-files-review.md +451 -0
  87. package/.claude/skills/code-review/references/overlooked-issues.md +657 -0
  88. package/.claude/skills/code-review/references/platform-specific-review.md +195 -0
  89. package/.claude/skills/code-review/references/precision-analysis-protocol.md +260 -0
  90. package/.claude/skills/code-review/references/python-patterns.md +494 -0
  91. package/.claude/skills/code-review/references/rca-techniques.md +362 -0
  92. package/.claude/skills/code-review/references/report-template.md +430 -0
  93. package/.claude/skills/code-review/references/resource-limits-and-degradation.md +137 -0
  94. package/.claude/skills/code-review/references/review-dimensions.md +311 -0
  95. package/.claude/skills/code-review/references/review-guide.md +202 -0
  96. package/.claude/skills/code-review/references/review-knowledge-workflow.md +257 -0
  97. package/.claude/skills/code-review/references/review-progress-tracker-protocol.md +172 -0
  98. package/.claude/skills/code-review/references/review-record-template.md +195 -0
  99. package/.claude/skills/code-review/references/skill-orchestration.md +143 -0
  100. package/.claude/skills/code-review/references/ui-ux-review.md +470 -0
  101. package/.claude/skills/containerization/SKILL.md +313 -0
  102. package/.claude/skills/database-migrations/agents/database-admin.md +142 -0
  103. package/.claude/skills/database-migrations/agents/database-optimizer.md +144 -0
  104. package/.claude/skills/database-migrations/commands/migration-observability.md +408 -0
  105. package/.claude/skills/database-migrations/commands/sql-migrations.md +492 -0
  106. package/.claude/skills/finishing-a-development-branch/SKILL.md +319 -0
  107. package/.claude/skills/frontend-design/LICENSE.txt +177 -0
  108. package/.claude/skills/frontend-design/SKILL.md +587 -0
  109. package/.claude/skills/frontend-design/references/color-consistency.md +487 -0
  110. package/.claude/skills/frontend-design/references/color-palettes-full.md +657 -0
  111. package/.claude/skills/frontend-design/references/design-system-generator.md +285 -0
  112. package/.claude/skills/frontend-design/references/font-pairings-full.md +705 -0
  113. package/.claude/skills/frontend-design/references/industry-anti-patterns.md +281 -0
  114. package/.claude/skills/frontend-design/references/layout-anti-patterns.md +582 -0
  115. package/.claude/skills/frontend-design/references/motion-patterns.md +659 -0
  116. package/.claude/skills/frontend-design/references/pre-delivery-checklist.md +153 -0
  117. package/.claude/skills/frontend-design/references/responsive-design.md +555 -0
  118. package/.claude/skills/frontend-design/references/style-modification-rules.md +335 -0
  119. package/.claude/skills/frontend-design/references/ui-styles-full.md +383 -0
  120. package/.claude/skills/frontend-design/references/ui-styles-rating.md +191 -0
  121. package/.claude/skills/frontend-design/references/ux-guidelines.md +640 -0
  122. package/.claude/skills/fullstack-developer/SKILL.md +512 -0
  123. package/.claude/skills/fullstack-developer/references/api-contract-guide.md +312 -0
  124. package/.claude/skills/fullstack-developer/references/api-response-patterns.md +223 -0
  125. package/.claude/skills/fullstack-developer/references/async-patterns.md +220 -0
  126. package/.claude/skills/fullstack-developer/references/bug-prevention.md +914 -0
  127. package/.claude/skills/fullstack-developer/references/code-quality-checklist.md +271 -0
  128. package/.claude/skills/fullstack-developer/references/complete-development-workflow.md +278 -0
  129. package/.claude/skills/fullstack-developer/references/context-isolation-protocol.md +256 -0
  130. package/.claude/skills/fullstack-developer/references/database-migration.md +331 -0
  131. package/.claude/skills/fullstack-developer/references/dependency-and-integrity-protocol.md +390 -0
  132. package/.claude/skills/fullstack-developer/references/development-phases.md +333 -0
  133. package/.claude/skills/fullstack-developer/references/expert-guide.md +214 -0
  134. package/.claude/skills/fullstack-developer/references/file-import-patterns.md +114 -0
  135. package/.claude/skills/fullstack-developer/references/graceful-degradation-patterns.md +78 -0
  136. package/.claude/skills/fullstack-developer/references/ide-lint-errors-guide.md +183 -0
  137. package/.claude/skills/fullstack-developer/references/integration-testing.md +301 -0
  138. package/.claude/skills/fullstack-developer/references/mock-api-patterns.md +307 -0
  139. package/.claude/skills/fullstack-developer/references/phase-gate-template.md +249 -0
  140. package/.claude/skills/fullstack-developer/references/post-edit-quality-gate.md +30 -0
  141. package/.claude/skills/fullstack-developer/references/python-engineering.md +79 -0
  142. package/.claude/skills/fullstack-developer/references/skill-orchestration.md +214 -0
  143. package/.claude/skills/fullstack-developer/references/skill-router-table.md +304 -0
  144. package/.claude/skills/fullstack-developer/references/state-sync.md +217 -0
  145. package/.claude/skills/fullstack-developer/references/ui-testing-checklist.md +292 -0
  146. package/.claude/skills/fullstack-developer/scripts/format_code.py +611 -0
  147. package/.claude/skills/fullstack-developer/scripts/lint_check.py +816 -0
  148. package/.claude/skills/fullstack-developer/scripts/requirements.txt +36 -0
  149. package/.claude/skills/performance-optimization/SKILL.md +250 -0
  150. package/.claude/skills/product-requirements/SKILL.md +357 -0
  151. package/.claude/skills/product-requirements/references/acceptance-criteria.md +335 -0
  152. package/.claude/skills/product-requirements/references/answer-first-questioning-protocol.md +299 -0
  153. package/.claude/skills/product-requirements/references/competitive-analysis-guide.md +183 -0
  154. package/.claude/skills/product-requirements/references/document-accuracy-protocol.md +253 -0
  155. package/.claude/skills/product-requirements/references/document-management-protocol.md +278 -0
  156. package/.claude/skills/product-requirements/references/external-standards.md +62 -0
  157. package/.claude/skills/product-requirements/references/feature-spec-template.md +359 -0
  158. package/.claude/skills/product-requirements/references/knowledge-acquisition-protocol.md +251 -0
  159. package/.claude/skills/product-requirements/references/plan-execution-protocol.md +334 -0
  160. package/.claude/skills/product-requirements/references/plan-generation-protocol.md +264 -0
  161. package/.claude/skills/product-requirements/references/prioritization-frameworks.md +80 -0
  162. package/.claude/skills/product-requirements/references/requirement-decomposition-protocol.md +291 -0
  163. package/.claude/skills/product-requirements/references/user-story-examples.md +297 -0
  164. package/.claude/skills/product-requirements/references/workflow-templates.md +266 -0
  165. package/.claude/skills/react-best-practices/SKILL.md +198 -0
  166. package/.claude/skills/react-best-practices/references/advanced-patterns.md +94 -0
  167. package/.claude/skills/react-best-practices/references/bundle-optimization.md +182 -0
  168. package/.claude/skills/react-best-practices/references/client-data-fetching.md +112 -0
  169. package/.claude/skills/react-best-practices/references/complete-guide.md +2249 -0
  170. package/.claude/skills/react-best-practices/references/eliminating-waterfalls.md +169 -0
  171. package/.claude/skills/react-best-practices/references/javascript-performance.md +256 -0
  172. package/.claude/skills/react-best-practices/references/rendering-performance.md +230 -0
  173. package/.claude/skills/react-best-practices/references/rerender-optimization.md +214 -0
  174. package/.claude/skills/react-best-practices/references/server-performance.md +182 -0
  175. package/.claude/skills/security-audit/SKILL.md +226 -0
  176. package/.claude/skills/shared-references/advanced-debugging-techniques.md +186 -0
  177. package/.claude/skills/shared-references/code-quality-checklist.md +218 -0
  178. package/.claude/skills/shared-references/code-review-efficiency-guide.md +125 -0
  179. package/.claude/skills/shared-references/mcp-dependency-compatibility-protocol.md +276 -0
  180. package/.claude/skills/shared-references/skill-call-graph.md +230 -0
  181. package/.claude/skills/shared-references/skill-orchestration-protocol.md +281 -0
  182. package/.claude/skills/shared-references/subagent-dispatch-templates.md +199 -0
  183. package/.claude/skills/skill-expert-skills/LICENSE.txt +204 -0
  184. package/.claude/skills/skill-expert-skills/QUICK_NAVIGATION.md +374 -0
  185. package/.claude/skills/skill-expert-skills/SKILL.md +247 -0
  186. package/.claude/skills/skill-expert-skills/docs/_index.md +91 -0
  187. package/.claude/skills/skill-expert-skills/references/deep-research-methodology.md +389 -0
  188. package/.claude/skills/skill-expert-skills/references/docs-generation-workflow.md +398 -0
  189. package/.claude/skills/skill-expert-skills/references/domain-expertise-protocol.md +343 -0
  190. package/.claude/skills/skill-expert-skills/references/domain-knowledge/_index.md +54 -0
  191. package/.claude/skills/skill-expert-skills/references/domain-knowledge/backend-expertise.md +517 -0
  192. package/.claude/skills/skill-expert-skills/references/domain-knowledge/bug-fixing-expertise.md +363 -0
  193. package/.claude/skills/skill-expert-skills/references/domain-knowledge/code-review-expertise.md +392 -0
  194. package/.claude/skills/skill-expert-skills/references/domain-knowledge/frontend-expertise.md +410 -0
  195. package/.claude/skills/skill-expert-skills/references/domain-knowledge-template.md +503 -0
  196. package/.claude/skills/skill-expert-skills/references/examples.md +782 -0
  197. package/.claude/skills/skill-expert-skills/references/integration-examples.md +655 -0
  198. package/.claude/skills/skill-expert-skills/references/knowledge-validation-checklist.md +246 -0
  199. package/.claude/skills/skill-expert-skills/references/latest-knowledge-acquisition.md +461 -0
  200. package/.claude/skills/skill-expert-skills/references/mcp-tools-guide.md +439 -0
  201. package/.claude/skills/skill-expert-skills/references/official-best-practices.md +616 -0
  202. package/.claude/skills/skill-expert-skills/references/patterns.md +218 -0
  203. package/.claude/skills/skill-expert-skills/references/plugin-skills-guide.md +432 -0
  204. package/.claude/skills/skill-expert-skills/references/requirement-elicitation-protocol.md +290 -0
  205. package/.claude/skills/skill-expert-skills/references/skill-creator-SKILL.md +353 -0
  206. package/.claude/skills/skill-expert-skills/references/skill-templates.md +583 -0
  207. package/.claude/skills/skill-expert-skills/references/skills-knowledge-base.md +561 -0
  208. package/.claude/skills/skill-expert-skills/references/tools-guide.md +379 -0
  209. package/.claude/skills/skill-expert-skills/references/troubleshooting.md +378 -0
  210. package/.claude/skills/skill-expert-skills/references/universality-guide.md +205 -0
  211. package/.claude/skills/skill-expert-skills/references/writing-style-guide.md +466 -0
  212. package/.claude/skills/skill-expert-skills/scripts/__pycache__/quick_validate.cpython-313.pyc +0 -0
  213. package/.claude/skills/skill-expert-skills/scripts/__pycache__/universal_validate.cpython-313.pyc +0 -0
  214. package/.claude/skills/skill-expert-skills/scripts/analyze_trigger.py +425 -0
  215. package/.claude/skills/skill-expert-skills/scripts/diff_with_official.py +188 -0
  216. package/.claude/skills/skill-expert-skills/scripts/init_skill.py +349 -0
  217. package/.claude/skills/skill-expert-skills/scripts/package_skill.py +156 -0
  218. package/.claude/skills/skill-expert-skills/scripts/quick_validate.py +493 -0
  219. package/.claude/skills/skill-expert-skills/scripts/requirements.txt +2 -0
  220. package/.claude/skills/skill-expert-skills/scripts/universal_validate.py +182 -0
  221. package/.claude/skills/skill-expert-skills/scripts/upgrade_skill.py +431 -0
  222. package/.claude/skills/subagent-driven-development/SKILL.md +268 -0
  223. package/.claude/skills/test-driven-development/SKILL.md +246 -0
  224. package/.claude/skills/test-driven-development/references/testing-anti-patterns.md +192 -0
  225. package/.claude/skills/using-git-worktrees/SKILL.md +266 -0
  226. package/.claude/skills/using-skillstack/SKILL.md +127 -0
  227. package/.claude/skills/vercel-deploy/SKILL.md +166 -0
  228. package/.claude/skills/vercel-deploy/scripts/deploy.sh +249 -0
  229. package/.claude/skills/verification-before-completion/SKILL.md +305 -0
  230. package/.claude/skills/writing-plans/SKILL.md +259 -0
  231. package/README.md +69 -0
  232. package/bin/cli.js +468 -0
  233. package/lib/init.js +333 -0
  234. package/package.json +29 -0
@@ -0,0 +1,256 @@
1
+ # Context Isolation Protocol
2
+
3
+ ## 核心原则
4
+
5
+ **多技能编排时,必须防止上下文污染,确保计划准确执行。**
6
+
7
+ ---
8
+
9
+ ## 上下文污染的表现
10
+
11
+ | 问题 | 表现 | 后果 |
12
+ |------|------|------|
13
+ | **目标漂移** | 调用 skill A 后,忘记原始任务目标 | 偏离用户需求 |
14
+ | **计划丢失** | 执行到一半,忘记后续步骤 | 任务不完整 |
15
+ | **状态混乱** | 多个 skill 输出混在一起 | 无法追踪进度 |
16
+ | **重复执行** | 忘记已完成的任务 | 浪费时间 |
17
+
18
+ ---
19
+
20
+ ## 隔离机制 (3 层防护)
21
+
22
+ ### Layer 1: Subagent 隔离
23
+
24
+ **每个 skill 在独立的 subagent 中执行,天然隔离上下文。**
25
+
26
+ ```
27
+ 主 Agent (fullstack-developer)
28
+
29
+ ├── Task(subagent_type="general-purpose") → product-requirements
30
+ │ └── 返回: 需求文档
31
+
32
+ ├── Task(subagent_type="general-purpose") → database-migrations
33
+ │ └── 返回: 迁移文件
34
+
35
+ ├── Task(subagent_type="general-purpose") → api-scaffolding
36
+ │ └── 返回: API 代码
37
+
38
+ └── Task(subagent_type="superpowers:code-reviewer") → code-review
39
+ └── 返回: 审查报告
40
+ ```
41
+
42
+ **调用模板**:
43
+ ```
44
+ Task(
45
+ subagent_type="general-purpose",
46
+ prompt="执行 [skill-name] 技能,任务: [具体任务描述]",
47
+ description="[3-5 字描述]"
48
+ )
49
+ ```
50
+
51
+ ### Layer 2: 计划锚点
52
+
53
+ **每次调用 skill 前后,重新读取计划文档。**
54
+
55
+ ```
56
+ ┌─────────────────────────────────────────────────────────────┐
57
+ │ Before Skill Call │
58
+ │ ───────────────────────────────────────────────────────── │
59
+ │ 1. 读取计划文档 (确认当前任务) │
60
+ │ 2. 读取进度追踪 (确认已完成任务) │
61
+ │ 3. 输出: "开始执行 Task X: [任务描述]" │
62
+ └─────────────────────────────────────────────────────────────┘
63
+
64
+ ┌─────────────────────────────────────────────────────────────┐
65
+ │ Skill Execution (in Subagent) │
66
+ │ ───────────────────────────────────────────────────────── │
67
+ │ 独立上下文,不受主 Agent 干扰 │
68
+ └─────────────────────────────────────────────────────────────┘
69
+
70
+ ┌─────────────────────────────────────────────────────────────┐
71
+ │ After Skill Call │
72
+ │ ───────────────────────────────────────────────────────── │
73
+ │ 1. 记录 skill 输出到进度追踪 │
74
+ │ 2. 重新读取计划文档 (确认下一任务) │
75
+ │ 3. 输出: "完成 Task X,下一步: Task Y" │
76
+ └─────────────────────────────────────────────────────────────┘
77
+ ```
78
+
79
+ ### Layer 3: 进度追踪文档
80
+
81
+ **维护一个进度追踪文档,记录每个 skill 的输入/输出。**
82
+
83
+ ```markdown
84
+ # Development Progress Tracker
85
+
86
+ ## Session Info
87
+ - **Session ID**: DEV-{YYYYMMDD}-{HHmm}
88
+ - **Original Goal**: [用户原始需求]
89
+ - **Plan File**: [计划文档路径]
90
+
91
+ ---
92
+
93
+ ## Task Progress
94
+
95
+ | # | Task | Skill | Status | Input | Output |
96
+ |---|------|-------|--------|-------|--------|
97
+ | 1 | 需求分析 | `product-requirements` | ✅ Done | 用户需求 | PRD 文档 |
98
+ | 2 | 数据库设计 | `database-migrations` | ✅ Done | PRD | 迁移文件 |
99
+ | 3 | API 开发 | `api-scaffolding` | 🔄 In Progress | - | - |
100
+ | 4 | 前端页面 | `frontend-design` | ⏳ Pending | - | - |
101
+
102
+ **Current Task**: 3 - API 开发
103
+ **Progress**: 2/4 (50%)
104
+
105
+ ---
106
+
107
+ ## Skill Outputs (Evidence)
108
+
109
+ ### Task 1: 需求分析
110
+ - **Skill**: `product-requirements`
111
+ - **Input**: 用户需求描述
112
+ - **Output**: `docs/prd/feature-x.md`
113
+ - **Key Points**: [核心需求摘要]
114
+
115
+ ### Task 2: 数据库设计
116
+ - **Skill**: `database-migrations`
117
+ - **Input**: PRD 文档
118
+ - **Output**: `migrations/001_create_users.py`
119
+ - **Key Points**: [表结构摘要]
120
+
121
+ ---
122
+
123
+ ## Goal Alignment Check
124
+
125
+ | Check | Status |
126
+ |-------|--------|
127
+ | 当前任务与原始目标一致 | ✅ |
128
+ | 已完成任务符合计划 | ✅ |
129
+ | 无遗漏任务 | ✅ |
130
+ ```
131
+
132
+ ---
133
+
134
+ ## 执行流程
135
+
136
+ ### Step 1: 创建进度追踪文档
137
+
138
+ ```markdown
139
+ 开始开发前:
140
+ 1. 创建 `.dev/progress-{timestamp}.md`
141
+ 2. 记录原始目标
142
+ 3. 记录计划文档路径
143
+ 4. 初始化任务列表
144
+ ```
145
+
146
+ ### Step 2: 每个任务执行前
147
+
148
+ ```markdown
149
+ 执行任务前:
150
+ 1. 读取进度追踪文档
151
+ 2. 确认当前任务
152
+ 3. 输出: "🔄 开始 Task X: [任务描述]"
153
+ 4. 输出: "📋 调用 Skill: [skill-name]"
154
+ ```
155
+
156
+ ### Step 3: 使用 Subagent 执行 Skill
157
+
158
+ ```markdown
159
+ 调用 Task 工具:
160
+ - subagent_type: "general-purpose" 或特定类型
161
+ - prompt: 包含完整任务描述 + 输入数据
162
+ - description: 简短描述
163
+ ```
164
+
165
+ ### Step 4: 每个任务执行后
166
+
167
+ ```markdown
168
+ 执行任务后:
169
+ 1. 记录 skill 输出到进度追踪
170
+ 2. 更新任务状态
171
+ 3. 输出: "✅ 完成 Task X"
172
+ 4. 读取计划,确认下一任务
173
+ 5. 输出: "📋 下一步: Task Y"
174
+ ```
175
+
176
+ ### Step 5: 目标对齐检查
177
+
178
+ ```markdown
179
+ 每 2-3 个任务后:
180
+ 1. 重新读取原始目标
181
+ 2. 检查已完成任务是否符合目标
182
+ 3. 检查是否有遗漏
183
+ 4. 输出: "🎯 目标对齐检查: ✅/⚠️"
184
+ ```
185
+
186
+ ---
187
+
188
+ ## Subagent 调用模板
189
+
190
+ ### 需求分析
191
+ ```
192
+ Task(
193
+ subagent_type="general-purpose",
194
+ prompt="执行 product-requirements 技能分析以下需求:\n\n[需求描述]\n\n输出需求文档。",
195
+ description="需求分析"
196
+ )
197
+ ```
198
+
199
+ ### 数据库设计
200
+ ```
201
+ Task(
202
+ subagent_type="general-purpose",
203
+ prompt="执行 database-migrations 技能,根据以下需求设计数据库:\n\n[需求摘要]\n\n输出迁移文件。",
204
+ description="数据库设计"
205
+ )
206
+ ```
207
+
208
+ ### API 开发
209
+ ```
210
+ Task(
211
+ subagent_type="general-purpose",
212
+ prompt="执行 api-scaffolding 技能,根据以下需求开发 API:\n\n[需求摘要]\n[数据库结构]\n\n输出 API 代码。",
213
+ description="API 开发"
214
+ )
215
+ ```
216
+
217
+ ### 代码审查
218
+ ```
219
+ Task(
220
+ subagent_type="superpowers:code-reviewer",
221
+ prompt="审查以下代码变更:\n\n[变更文件列表]\n\n按照 code-review 技能标准审查。",
222
+ description="代码审查"
223
+ )
224
+ ```
225
+
226
+ ---
227
+
228
+ ## 回归检查清单
229
+
230
+ 每个 skill 完成后,检查:
231
+
232
+ | 检查项 | 问题 |
233
+ |--------|------|
234
+ | 目标一致 | 当前任务是否与原始目标一致? |
235
+ | 计划符合 | 执行的是计划中的任务吗? |
236
+ | 无遗漏 | 是否跳过了任何任务? |
237
+ | 输出正确 | skill 输出是否符合预期? |
238
+ | 下一步明确 | 下一个任务是什么? |
239
+
240
+ ---
241
+
242
+ ## 与 SKILL.md 集成
243
+
244
+ 在 fullstack-developer 的 Phase 4 中添加:
245
+
246
+ ```markdown
247
+ ### Phase 4: 开发执行 (Context Isolated)
248
+
249
+ **每个任务使用 Subagent 隔离执行:**
250
+
251
+ 1. 读取进度追踪 → 确认当前任务
252
+ 2. Task(subagent) → 执行 skill
253
+ 3. 记录输出 → 更新进度
254
+ 4. 读取计划 → 确认下一任务
255
+ 5. 每 2-3 任务 → 目标对齐检查
256
+ ```
@@ -0,0 +1,331 @@
1
+ # Database Migration Guide
2
+
3
+ > Schema changes are the most dangerous operations. Handle with extreme care.
4
+
5
+ ## Core Principles
6
+
7
+ 1. **Migration before code** — Schema must exist before code that uses it
8
+ 2. **Always reversible** — Every migration must have a rollback
9
+ 3. **Zero downtime** — Production migrations should not lock tables
10
+ 4. **Verify after migrate** — Always check data integrity post-migration
11
+
12
+ ---
13
+
14
+ ## Migration Workflow
15
+
16
+ ```
17
+ ┌─────────────────────────────────────────────────────────────┐
18
+ │ MIGRATION FLOW │
19
+ ├─────────────────────────────────────────────────────────────┤
20
+ │ │
21
+ │ 1. Create migration file │
22
+ │ 2. Write up() and down() functions │
23
+ │ 3. Test locally (up + down + up) │
24
+ │ 4. Review ORM model matches schema │
25
+ │ 5. Test with production data snapshot │
26
+ │ 6. Deploy to staging, verify │
27
+ │ 7. Deploy to production with backup │
28
+ │ 8. Verify data integrity │
29
+ │ │
30
+ └─────────────────────────────────────────────────────────────┘
31
+ ```
32
+
33
+ ---
34
+
35
+ ## Common Migration Bugs
36
+
37
+ ### 1. Schema-Model Mismatch
38
+
39
+ ```python
40
+ # 🔴 BUG: ORM model has field, database doesn't
41
+ class User(Base):
42
+ __tablename__ = 'users'
43
+ id = Column(Integer, primary_key=True)
44
+ email = Column(String)
45
+ avatar_url = Column(String) # 💀 Not in database!
46
+
47
+ # Error: column "avatar_url" does not exist
48
+ ```
49
+
50
+ **Prevention**:
51
+ ```bash
52
+ # Always check schema matches model
53
+ # Python/SQLAlchemy
54
+ alembic check
55
+
56
+ # Compare ORM with actual DB
57
+ python -c "from app.models import *; Base.metadata.create_all(engine, checkfirst=True)"
58
+ ```
59
+
60
+ ### 2. Missing Migration
61
+
62
+ ```python
63
+ # 🔴 BUG: Added field to model, forgot migration
64
+ class User(Base):
65
+ phone = Column(String) # Added in code
66
+
67
+ # But no migration file exists
68
+ # Works locally (dev DB recreated), fails in production
69
+ ```
70
+
71
+ **Prevention**:
72
+ - Auto-generate migrations: `alembic revision --autogenerate`
73
+ - Never manually edit DB without migration
74
+ - CI check: Compare model with migration history
75
+
76
+ ### 3. Non-Reversible Migration
77
+
78
+ ```python
79
+ # 🔴 BUG: Can't rollback
80
+ def upgrade():
81
+ op.drop_column('users', 'legacy_field') # Data lost!
82
+
83
+ def downgrade():
84
+ op.add_column('users', sa.Column('legacy_field', sa.String))
85
+ # 💀 Data is gone, can't restore
86
+ ```
87
+
88
+ **Prevention**:
89
+ ```python
90
+ # ✅ CORRECT: Backup before destructive operations
91
+ def upgrade():
92
+ # 1. First migration: Add new column, copy data
93
+ op.add_column('users', sa.Column('new_field', sa.String))
94
+ op.execute("UPDATE users SET new_field = legacy_field")
95
+
96
+ def downgrade():
97
+ op.drop_column('users', 'new_field')
98
+
99
+ # 2. Second migration (after verification): Drop old column
100
+ ```
101
+
102
+ ### 4. Field Type Mismatch
103
+
104
+ ```python
105
+ # 🔴 BUG: Frontend expects number, DB stores string
106
+ # Migration
107
+ op.add_column('products', sa.Column('price', sa.String)) # String!
108
+
109
+ # Frontend
110
+ interface Product {
111
+ price: number; // Expects number
112
+ }
113
+
114
+ # Result: price = "99.99" not 99.99, calculations fail
115
+ ```
116
+
117
+ **Prevention**:
118
+ - Define types in API schema first (Swagger/OpenAPI)
119
+ - Generate types from schema for both ends
120
+ - Add conversion layer if needed
121
+
122
+ ### 5. Null Constraint on Existing Data
123
+
124
+ ```python
125
+ # 🔴 BUG: Adding NOT NULL to column with existing NULLs
126
+ def upgrade():
127
+ op.alter_column('users', 'email', nullable=False)
128
+ # 💀 Fails if any email is NULL
129
+
130
+ # ✅ CORRECT: Handle existing data first
131
+ def upgrade():
132
+ # 1. Update NULLs
133
+ op.execute("UPDATE users SET email = 'unknown@temp.com' WHERE email IS NULL")
134
+ # 2. Then add constraint
135
+ op.alter_column('users', 'email', nullable=False)
136
+ ```
137
+
138
+ ---
139
+
140
+ ## Field Consistency Checklist
141
+
142
+ ### Frontend-Backend-Database Alignment
143
+
144
+ ```markdown
145
+ ## Field: [field_name]
146
+
147
+ | Layer | Name | Type | Nullable | Default |
148
+ |-------|------|------|----------|---------|
149
+ | Database | created_at | TIMESTAMP | NO | NOW() |
150
+ | ORM Model | created_at | DateTime | NO | func.now() |
151
+ | API Schema | createdAt | string | NO | - |
152
+ | Frontend | createdAt | string | NO | - |
153
+
154
+ Issues:
155
+ - [ ] Naming: snake_case → camelCase (handled by serializer?)
156
+ - [ ] Type: DateTime → string (ISO format?)
157
+ - [ ] Nullable mismatch?
158
+ - [ ] Default mismatch?
159
+ ```
160
+
161
+ ### Detection Commands
162
+
163
+ ```bash
164
+ # Find all model fields
165
+ grep -rn "Column\|Field" --include="*.py" models/
166
+
167
+ # Find all API schema fields
168
+ grep -rn "class.*Schema\|Field(" --include="*.py" schemas/
169
+
170
+ # Find all frontend types
171
+ grep -rn "interface\|type " --include="*.ts" types/
172
+
173
+ # Compare (manual or script)
174
+ ```
175
+
176
+ ---
177
+
178
+ ## Migration Safety Checklist
179
+
180
+ ### Before Migration
181
+
182
+ - [ ] Migration file has both `up()` and `down()`
183
+ - [ ] Tested rollback locally: `migrate up` → `migrate down` → `migrate up`
184
+ - [ ] No data loss in destructive operations
185
+ - [ ] Large table? Use batched operations
186
+ - [ ] Adding NOT NULL? Default value provided
187
+ - [ ] Adding index? Will it lock table?
188
+ - [ ] ORM model updated to match schema
189
+
190
+ ### During Migration (Production)
191
+
192
+ - [ ] Database backup taken
193
+ - [ ] Maintenance window scheduled (if needed)
194
+ - [ ] Team notified
195
+ - [ ] Monitoring dashboard open
196
+ - [ ] Rollback command ready
197
+
198
+ ### After Migration
199
+
200
+ - [ ] Data integrity verified
201
+ - [ ] Application tested
202
+ - [ ] No errors in logs
203
+ - [ ] Performance acceptable
204
+ - [ ] Rollback tested (in staging)
205
+
206
+ ---
207
+
208
+ ## Common Patterns
209
+
210
+ ### Adding a New Field
211
+
212
+ ```python
213
+ # 1. Migration
214
+ def upgrade():
215
+ op.add_column('users', sa.Column('phone', sa.String, nullable=True))
216
+
217
+ def downgrade():
218
+ op.drop_column('users', 'phone')
219
+
220
+ # 2. ORM Model
221
+ class User(Base):
222
+ phone = Column(String, nullable=True)
223
+
224
+ # 3. API Schema
225
+ class UserSchema(BaseModel):
226
+ phone: Optional[str] = None
227
+
228
+ # 4. Frontend Type
229
+ interface User {
230
+ phone?: string;
231
+ }
232
+ ```
233
+
234
+ ### Renaming a Field (Zero Downtime)
235
+
236
+ ```python
237
+ # Phase 1: Add new column, copy data
238
+ def upgrade_phase1():
239
+ op.add_column('users', sa.Column('full_name', sa.String))
240
+ op.execute("UPDATE users SET full_name = name")
241
+
242
+ # Phase 2: Update code to use new column (deploy)
243
+
244
+ # Phase 3: Drop old column
245
+ def upgrade_phase3():
246
+ op.drop_column('users', 'name')
247
+ ```
248
+
249
+ ### Changing Field Type
250
+
251
+ ```python
252
+ # 🔴 DANGEROUS: Direct type change
253
+ op.alter_column('products', 'price', type_=sa.Integer) # Data loss!
254
+
255
+ # ✅ SAFE: Create new column, migrate data
256
+ def upgrade():
257
+ op.add_column('products', sa.Column('price_cents', sa.Integer))
258
+ op.execute("UPDATE products SET price_cents = CAST(price * 100 AS INTEGER)")
259
+ ```
260
+
261
+ ---
262
+
263
+ ## Framework-Specific Commands
264
+
265
+ ### Python (Alembic)
266
+
267
+ ```bash
268
+ # Generate migration
269
+ alembic revision --autogenerate -m "add phone to users"
270
+
271
+ # Apply migration
272
+ alembic upgrade head
273
+
274
+ # Rollback
275
+ alembic downgrade -1
276
+
277
+ # Check current version
278
+ alembic current
279
+
280
+ # Show history
281
+ alembic history
282
+ ```
283
+
284
+ ### Node.js (Prisma)
285
+
286
+ ```bash
287
+ # Generate migration
288
+ npx prisma migrate dev --name add_phone_to_users
289
+
290
+ # Apply to production
291
+ npx prisma migrate deploy
292
+
293
+ # Reset (DANGEROUS)
294
+ npx prisma migrate reset
295
+ ```
296
+
297
+ ### Node.js (TypeORM)
298
+
299
+ ```bash
300
+ # Generate migration
301
+ npm run typeorm migration:generate -- -n AddPhoneToUsers
302
+
303
+ # Run migrations
304
+ npm run typeorm migration:run
305
+
306
+ # Revert last
307
+ npm run typeorm migration:revert
308
+ ```
309
+
310
+ ---
311
+
312
+ ## Data Integrity Verification
313
+
314
+ ```sql
315
+ -- After migration, verify data
316
+
317
+ -- Check no NULLs where not expected
318
+ SELECT COUNT(*) FROM users WHERE email IS NULL;
319
+
320
+ -- Check type conversion worked
321
+ SELECT * FROM products WHERE price_cents IS NULL AND price IS NOT NULL;
322
+
323
+ -- Check no orphaned records
324
+ SELECT * FROM orders WHERE user_id NOT IN (SELECT id FROM users);
325
+
326
+ -- Check counts match
327
+ SELECT
328
+ (SELECT COUNT(*) FROM old_table) as old_count,
329
+ (SELECT COUNT(*) FROM new_table) as new_count;
330
+ ```
331
+