universal-dev-standards 3.5.1-beta.1 → 3.5.1-beta.11

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 (433) hide show
  1. package/bin/uds.js +2 -0
  2. package/bundled/core/ai-instruction-standards.md +205 -0
  3. package/bundled/core/anti-hallucination.md +684 -0
  4. package/bundled/core/changelog-standards.md +556 -0
  5. package/bundled/core/checkin-standards.md +935 -0
  6. package/bundled/core/code-review-checklist.md +684 -0
  7. package/bundled/core/commit-message-guide.md +915 -0
  8. package/bundled/core/documentation-structure.md +1117 -0
  9. package/bundled/core/documentation-writing-standards.md +487 -0
  10. package/bundled/core/error-code-standards.md +382 -0
  11. package/bundled/core/git-workflow.md +859 -0
  12. package/bundled/core/logging-standards.md +323 -0
  13. package/bundled/core/project-structure.md +354 -0
  14. package/bundled/core/refactoring-standards.md +636 -0
  15. package/bundled/core/spec-driven-development.md +207 -0
  16. package/bundled/core/test-completeness-dimensions.md +536 -0
  17. package/bundled/core/test-driven-development.md +995 -0
  18. package/bundled/core/testing-standards.md +3061 -0
  19. package/bundled/core/versioning.md +902 -0
  20. package/bundled/locales/README.md +88 -0
  21. package/bundled/locales/zh-CN/CHANGELOG.md +705 -0
  22. package/bundled/locales/zh-CN/CLAUDE.md +213 -0
  23. package/bundled/locales/zh-CN/MAINTENANCE.md +689 -0
  24. package/bundled/locales/zh-CN/README.md +707 -0
  25. package/bundled/locales/zh-CN/STANDARDS-MAPPING.md +177 -0
  26. package/bundled/locales/zh-CN/adoption/ADOPTION-GUIDE.md +392 -0
  27. package/bundled/locales/zh-CN/adoption/STATIC-DYNAMIC-GUIDE.md +302 -0
  28. package/bundled/locales/zh-CN/adoption/checklists/enterprise.md +332 -0
  29. package/bundled/locales/zh-CN/adoption/checklists/minimal.md +141 -0
  30. package/bundled/locales/zh-CN/adoption/checklists/recommended.md +272 -0
  31. package/bundled/locales/zh-CN/ai/MAINTENANCE.md +739 -0
  32. package/bundled/locales/zh-CN/ai/options/changelog/auto-generated.ai.yaml +76 -0
  33. package/bundled/locales/zh-CN/ai/options/changelog/keep-a-changelog.ai.yaml +99 -0
  34. package/bundled/locales/zh-CN/ai/options/code-review/automated-review.ai.yaml +120 -0
  35. package/bundled/locales/zh-CN/ai/options/code-review/pair-programming.ai.yaml +109 -0
  36. package/bundled/locales/zh-CN/ai/options/code-review/pr-review.ai.yaml +104 -0
  37. package/bundled/locales/zh-CN/ai/options/commit-message/bilingual.ai.yaml +105 -0
  38. package/bundled/locales/zh-CN/ai/options/commit-message/english.ai.yaml +79 -0
  39. package/bundled/locales/zh-CN/ai/options/commit-message/traditional-chinese.ai.yaml +100 -0
  40. package/bundled/locales/zh-CN/ai/options/documentation/api-docs.ai.yaml +140 -0
  41. package/bundled/locales/zh-CN/ai/options/documentation/markdown-docs.ai.yaml +89 -0
  42. package/bundled/locales/zh-CN/ai/options/documentation/wiki-style.ai.yaml +119 -0
  43. package/bundled/locales/zh-CN/ai/options/git-workflow/gitflow.ai.yaml +133 -0
  44. package/bundled/locales/zh-CN/ai/options/git-workflow/github-flow.ai.yaml +73 -0
  45. package/bundled/locales/zh-CN/ai/options/git-workflow/merge-commit.ai.yaml +88 -0
  46. package/bundled/locales/zh-CN/ai/options/git-workflow/rebase-ff.ai.yaml +113 -0
  47. package/bundled/locales/zh-CN/ai/options/git-workflow/squash-merge.ai.yaml +85 -0
  48. package/bundled/locales/zh-CN/ai/options/git-workflow/trunk-based.ai.yaml +117 -0
  49. package/bundled/locales/zh-CN/ai/options/project-structure/dotnet.ai.yaml +108 -0
  50. package/bundled/locales/zh-CN/ai/options/project-structure/go.ai.yaml +115 -0
  51. package/bundled/locales/zh-CN/ai/options/project-structure/java.ai.yaml +113 -0
  52. package/bundled/locales/zh-CN/ai/options/project-structure/kotlin.ai.yaml +123 -0
  53. package/bundled/locales/zh-CN/ai/options/project-structure/nodejs.ai.yaml +101 -0
  54. package/bundled/locales/zh-CN/ai/options/project-structure/php.ai.yaml +147 -0
  55. package/bundled/locales/zh-CN/ai/options/project-structure/python.ai.yaml +116 -0
  56. package/bundled/locales/zh-CN/ai/options/project-structure/ruby.ai.yaml +140 -0
  57. package/bundled/locales/zh-CN/ai/options/project-structure/rust.ai.yaml +117 -0
  58. package/bundled/locales/zh-CN/ai/options/project-structure/swift.ai.yaml +143 -0
  59. package/bundled/locales/zh-CN/ai/options/testing/contract-testing.ai.yaml +254 -0
  60. package/bundled/locales/zh-CN/ai/options/testing/e2e-testing.ai.yaml +116 -0
  61. package/bundled/locales/zh-CN/ai/options/testing/industry-pyramid.ai.yaml +144 -0
  62. package/bundled/locales/zh-CN/ai/options/testing/integration-testing.ai.yaml +90 -0
  63. package/bundled/locales/zh-CN/ai/options/testing/istqb-framework.ai.yaml +108 -0
  64. package/bundled/locales/zh-CN/ai/options/testing/performance-testing.ai.yaml +272 -0
  65. package/bundled/locales/zh-CN/ai/options/testing/security-testing.ai.yaml +160 -0
  66. package/bundled/locales/zh-CN/ai/options/testing/system-testing.ai.yaml +101 -0
  67. package/bundled/locales/zh-CN/ai/options/testing/unit-testing.ai.yaml +82 -0
  68. package/bundled/locales/zh-CN/ai/standards/anti-hallucination.ai.yaml +145 -0
  69. package/bundled/locales/zh-CN/ai/standards/changelog.ai.yaml +146 -0
  70. package/bundled/locales/zh-CN/ai/standards/checkin-standards.ai.yaml +170 -0
  71. package/bundled/locales/zh-CN/ai/standards/code-review.ai.yaml +148 -0
  72. package/bundled/locales/zh-CN/ai/standards/commit-message.ai.yaml +175 -0
  73. package/bundled/locales/zh-CN/ai/standards/documentation-structure.ai.yaml +124 -0
  74. package/bundled/locales/zh-CN/ai/standards/documentation-writing-standards.ai.yaml +190 -0
  75. package/bundled/locales/zh-CN/ai/standards/error-codes.ai.yaml +139 -0
  76. package/bundled/locales/zh-CN/ai/standards/git-workflow.ai.yaml +95 -0
  77. package/bundled/locales/zh-CN/ai/standards/logging.ai.yaml +128 -0
  78. package/bundled/locales/zh-CN/ai/standards/project-structure.ai.yaml +134 -0
  79. package/bundled/locales/zh-CN/ai/standards/spec-driven-development.ai.yaml +169 -0
  80. package/bundled/locales/zh-CN/ai/standards/test-completeness-dimensions.ai.yaml +220 -0
  81. package/bundled/locales/zh-CN/ai/standards/testing.ai.yaml +137 -0
  82. package/bundled/locales/zh-CN/ai/standards/versioning.ai.yaml +211 -0
  83. package/bundled/locales/zh-CN/core/ai-instruction-standards.md +213 -0
  84. package/bundled/locales/zh-CN/core/anti-hallucination.md +691 -0
  85. package/bundled/locales/zh-CN/core/changelog-standards.md +147 -0
  86. package/bundled/locales/zh-CN/core/checkin-standards.md +943 -0
  87. package/bundled/locales/zh-CN/core/code-review-guide.md +693 -0
  88. package/bundled/locales/zh-CN/core/commit-message-guide.md +129 -0
  89. package/bundled/locales/zh-CN/core/documentation-structure.md +173 -0
  90. package/bundled/locales/zh-CN/core/documentation-writing-standards.md +495 -0
  91. package/bundled/locales/zh-CN/core/error-code-standards.md +180 -0
  92. package/bundled/locales/zh-CN/core/git-workflow.md +193 -0
  93. package/bundled/locales/zh-CN/core/logging-standards.md +174 -0
  94. package/bundled/locales/zh-CN/core/project-structure.md +184 -0
  95. package/bundled/locales/zh-CN/core/refactoring-standards.md +642 -0
  96. package/bundled/locales/zh-CN/core/spec-driven-development.md +215 -0
  97. package/bundled/locales/zh-CN/core/test-completeness-dimensions.md +544 -0
  98. package/bundled/locales/zh-CN/core/test-driven-development.md +1002 -0
  99. package/bundled/locales/zh-CN/core/testing-standards.md +170 -0
  100. package/bundled/locales/zh-CN/core/versioning.md +177 -0
  101. package/bundled/locales/zh-CN/docs/AI-AGENT-ROADMAP.md +303 -0
  102. package/bundled/locales/zh-CN/docs/CLI-INIT-OPTIONS.md +990 -0
  103. package/bundled/locales/zh-CN/docs/OPERATION-WORKFLOW.md +1064 -0
  104. package/bundled/locales/zh-CN/docs/USAGE-MODES-COMPARISON.md +333 -0
  105. package/bundled/locales/zh-CN/docs/WINDOWS-GUIDE.md +215 -0
  106. package/bundled/locales/zh-CN/integrations/codex/AGENTS.md +115 -0
  107. package/bundled/locales/zh-CN/integrations/codex/README.md +67 -0
  108. package/bundled/locales/zh-CN/integrations/gemini-cli/GEMINI.md +102 -0
  109. package/bundled/locales/zh-CN/integrations/gemini-cli/README.md +140 -0
  110. package/bundled/locales/zh-CN/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +269 -0
  111. package/bundled/locales/zh-CN/integrations/github-copilot/README.md +167 -0
  112. package/bundled/locales/zh-CN/integrations/github-copilot/copilot-instructions.md +263 -0
  113. package/bundled/locales/zh-CN/integrations/github-copilot/skills-mapping.md +192 -0
  114. package/bundled/locales/zh-CN/integrations/google-antigravity/INSTRUCTIONS.md +61 -0
  115. package/bundled/locales/zh-CN/integrations/google-antigravity/README.md +84 -0
  116. package/bundled/locales/zh-CN/integrations/opencode/AGENTS.md +111 -0
  117. package/bundled/locales/zh-CN/integrations/opencode/README.md +176 -0
  118. package/bundled/locales/zh-CN/integrations/opencode/skills-mapping.md +396 -0
  119. package/bundled/locales/zh-CN/integrations/openspec/AGENTS.md +301 -0
  120. package/bundled/locales/zh-CN/integrations/openspec/README.md +43 -0
  121. package/bundled/locales/zh-CN/integrations/spec-kit/AGENTS.md +184 -0
  122. package/bundled/locales/zh-CN/integrations/spec-kit/README.md +43 -0
  123. package/bundled/locales/zh-CN/options/commit-message/bilingual.md +161 -0
  124. package/bundled/locales/zh-CN/options/commit-message/english.md +137 -0
  125. package/bundled/locales/zh-CN/options/commit-message/traditional-chinese.md +162 -0
  126. package/bundled/locales/zh-CN/options/git-workflow/gitflow.md +147 -0
  127. package/bundled/locales/zh-CN/options/git-workflow/github-flow.md +124 -0
  128. package/bundled/locales/zh-CN/options/git-workflow/merge-commit.md +124 -0
  129. package/bundled/locales/zh-CN/options/git-workflow/rebase-ff.md +160 -0
  130. package/bundled/locales/zh-CN/options/git-workflow/squash-merge.md +117 -0
  131. package/bundled/locales/zh-CN/options/git-workflow/trunk-based.md +125 -0
  132. package/bundled/locales/zh-CN/options/project-structure/dotnet.md +183 -0
  133. package/bundled/locales/zh-CN/options/project-structure/go.md +226 -0
  134. package/bundled/locales/zh-CN/options/project-structure/java.md +213 -0
  135. package/bundled/locales/zh-CN/options/project-structure/nodejs.md +185 -0
  136. package/bundled/locales/zh-CN/options/project-structure/python.md +229 -0
  137. package/bundled/locales/zh-CN/options/testing/e2e-testing.md +207 -0
  138. package/bundled/locales/zh-CN/options/testing/integration-testing.md +230 -0
  139. package/bundled/locales/zh-CN/options/testing/system-testing.md +183 -0
  140. package/bundled/locales/zh-CN/options/testing/unit-testing.md +165 -0
  141. package/bundled/locales/zh-CN/skills/INTEGRATION-GUIDE.md +218 -0
  142. package/bundled/locales/zh-CN/skills/README.md +134 -0
  143. package/bundled/locales/zh-CN/skills/_shared/README.md +68 -0
  144. package/bundled/locales/zh-CN/skills/claude-code/CONTRIBUTING.template.md +151 -0
  145. package/bundled/locales/zh-CN/skills/claude-code/README.md +174 -0
  146. package/bundled/locales/zh-CN/skills/claude-code/ai-collaboration-standards/SKILL.md +175 -0
  147. package/bundled/locales/zh-CN/skills/claude-code/ai-collaboration-standards/anti-hallucination.md +223 -0
  148. package/bundled/locales/zh-CN/skills/claude-code/ai-collaboration-standards/certainty-labels.md +132 -0
  149. package/bundled/locales/zh-CN/skills/claude-code/changelog-guide/SKILL.md +237 -0
  150. package/bundled/locales/zh-CN/skills/claude-code/checkin-assistant/SKILL.md +407 -0
  151. package/bundled/locales/zh-CN/skills/claude-code/code-review-assistant/SKILL.md +154 -0
  152. package/bundled/locales/zh-CN/skills/claude-code/code-review-assistant/checkin-checklist.md +257 -0
  153. package/bundled/locales/zh-CN/skills/claude-code/code-review-assistant/review-checklist.md +246 -0
  154. package/bundled/locales/zh-CN/skills/claude-code/commands/bdd.md +142 -0
  155. package/bundled/locales/zh-CN/skills/claude-code/commands/methodology.md +274 -0
  156. package/bundled/locales/zh-CN/skills/claude-code/commit-standards/SKILL.md +191 -0
  157. package/bundled/locales/zh-CN/skills/claude-code/commit-standards/conventional-commits.md +264 -0
  158. package/bundled/locales/zh-CN/skills/claude-code/commit-standards/language-options.md +172 -0
  159. package/bundled/locales/zh-CN/skills/claude-code/documentation-guide/SKILL.md +421 -0
  160. package/bundled/locales/zh-CN/skills/claude-code/documentation-guide/documentation-structure.md +357 -0
  161. package/bundled/locales/zh-CN/skills/claude-code/documentation-guide/readme-template.md +412 -0
  162. package/bundled/locales/zh-CN/skills/claude-code/error-code-guide/SKILL.md +269 -0
  163. package/bundled/locales/zh-CN/skills/claude-code/git-workflow-guide/SKILL.md +218 -0
  164. package/bundled/locales/zh-CN/skills/claude-code/git-workflow-guide/branch-naming.md +220 -0
  165. package/bundled/locales/zh-CN/skills/claude-code/git-workflow-guide/git-workflow.md +321 -0
  166. package/bundled/locales/zh-CN/skills/claude-code/logging-guide/SKILL.md +285 -0
  167. package/bundled/locales/zh-CN/skills/claude-code/methodology-system/SKILL.md +131 -0
  168. package/bundled/locales/zh-CN/skills/claude-code/methodology-system/create-methodology.md +350 -0
  169. package/bundled/locales/zh-CN/skills/claude-code/methodology-system/runtime.md +279 -0
  170. package/bundled/locales/zh-CN/skills/claude-code/project-structure-guide/SKILL.md +143 -0
  171. package/bundled/locales/zh-CN/skills/claude-code/project-structure-guide/language-patterns.md +271 -0
  172. package/bundled/locales/zh-CN/skills/claude-code/refactoring-assistant/SKILL.md +162 -0
  173. package/bundled/locales/zh-CN/skills/claude-code/release-standards/SKILL.md +191 -0
  174. package/bundled/locales/zh-CN/skills/claude-code/release-standards/changelog-format.md +247 -0
  175. package/bundled/locales/zh-CN/skills/claude-code/release-standards/release-workflow.md +345 -0
  176. package/bundled/locales/zh-CN/skills/claude-code/release-standards/semantic-versioning.md +250 -0
  177. package/bundled/locales/zh-CN/skills/claude-code/requirement-assistant/SKILL.md +227 -0
  178. package/bundled/locales/zh-CN/skills/claude-code/requirement-assistant/requirement-checklist.md +325 -0
  179. package/bundled/locales/zh-CN/skills/claude-code/requirement-assistant/requirement-writing.md +399 -0
  180. package/bundled/locales/zh-CN/skills/claude-code/spec-driven-dev/SKILL.md +243 -0
  181. package/bundled/locales/zh-CN/skills/claude-code/tdd-assistant/SKILL.md +332 -0
  182. package/bundled/locales/zh-CN/skills/claude-code/tdd-assistant/language-examples.md +639 -0
  183. package/bundled/locales/zh-CN/skills/claude-code/tdd-assistant/tdd-workflow.md +486 -0
  184. package/bundled/locales/zh-CN/skills/claude-code/test-coverage-assistant/SKILL.md +282 -0
  185. package/bundled/locales/zh-CN/skills/claude-code/testing-guide/SKILL.md +234 -0
  186. package/bundled/locales/zh-CN/skills/claude-code/testing-guide/testing-pyramid.md +448 -0
  187. package/bundled/locales/zh-CN/skills/cline/README.md +58 -0
  188. package/bundled/locales/zh-CN/skills/copilot/README.md +61 -0
  189. package/bundled/locales/zh-CN/skills/copilot/copilot-instructions.md +79 -0
  190. package/bundled/locales/zh-CN/skills/cursor/README.md +58 -0
  191. package/bundled/locales/zh-CN/skills/windsurf/README.md +59 -0
  192. package/bundled/locales/zh-TW/CHANGELOG.md +707 -0
  193. package/bundled/locales/zh-TW/CLAUDE.md +213 -0
  194. package/bundled/locales/zh-TW/MAINTENANCE.md +683 -0
  195. package/bundled/locales/zh-TW/README.md +687 -0
  196. package/bundled/locales/zh-TW/STANDARDS-MAPPING.md +177 -0
  197. package/bundled/locales/zh-TW/adoption/ADOPTION-GUIDE.md +392 -0
  198. package/bundled/locales/zh-TW/adoption/STATIC-DYNAMIC-GUIDE.md +299 -0
  199. package/bundled/locales/zh-TW/adoption/checklists/enterprise.md +332 -0
  200. package/bundled/locales/zh-TW/adoption/checklists/minimal.md +141 -0
  201. package/bundled/locales/zh-TW/adoption/checklists/recommended.md +272 -0
  202. package/bundled/locales/zh-TW/ai/MAINTENANCE.md +754 -0
  203. package/bundled/locales/zh-TW/ai/options/changelog/auto-generated.ai.yaml +76 -0
  204. package/bundled/locales/zh-TW/ai/options/changelog/keep-a-changelog.ai.yaml +99 -0
  205. package/bundled/locales/zh-TW/ai/options/code-review/automated-review.ai.yaml +120 -0
  206. package/bundled/locales/zh-TW/ai/options/code-review/pair-programming.ai.yaml +109 -0
  207. package/bundled/locales/zh-TW/ai/options/code-review/pr-review.ai.yaml +104 -0
  208. package/bundled/locales/zh-TW/ai/options/commit-message/bilingual.ai.yaml +105 -0
  209. package/bundled/locales/zh-TW/ai/options/commit-message/english.ai.yaml +79 -0
  210. package/bundled/locales/zh-TW/ai/options/commit-message/traditional-chinese.ai.yaml +100 -0
  211. package/bundled/locales/zh-TW/ai/options/documentation/api-docs.ai.yaml +140 -0
  212. package/bundled/locales/zh-TW/ai/options/documentation/markdown-docs.ai.yaml +89 -0
  213. package/bundled/locales/zh-TW/ai/options/documentation/wiki-style.ai.yaml +119 -0
  214. package/bundled/locales/zh-TW/ai/options/git-workflow/gitflow.ai.yaml +133 -0
  215. package/bundled/locales/zh-TW/ai/options/git-workflow/github-flow.ai.yaml +73 -0
  216. package/bundled/locales/zh-TW/ai/options/git-workflow/merge-commit.ai.yaml +88 -0
  217. package/bundled/locales/zh-TW/ai/options/git-workflow/rebase-ff.ai.yaml +113 -0
  218. package/bundled/locales/zh-TW/ai/options/git-workflow/squash-merge.ai.yaml +85 -0
  219. package/bundled/locales/zh-TW/ai/options/git-workflow/trunk-based.ai.yaml +117 -0
  220. package/bundled/locales/zh-TW/ai/options/project-structure/dotnet.ai.yaml +108 -0
  221. package/bundled/locales/zh-TW/ai/options/project-structure/go.ai.yaml +115 -0
  222. package/bundled/locales/zh-TW/ai/options/project-structure/java.ai.yaml +113 -0
  223. package/bundled/locales/zh-TW/ai/options/project-structure/kotlin.ai.yaml +123 -0
  224. package/bundled/locales/zh-TW/ai/options/project-structure/nodejs.ai.yaml +101 -0
  225. package/bundled/locales/zh-TW/ai/options/project-structure/php.ai.yaml +147 -0
  226. package/bundled/locales/zh-TW/ai/options/project-structure/python.ai.yaml +116 -0
  227. package/bundled/locales/zh-TW/ai/options/project-structure/ruby.ai.yaml +140 -0
  228. package/bundled/locales/zh-TW/ai/options/project-structure/rust.ai.yaml +117 -0
  229. package/bundled/locales/zh-TW/ai/options/project-structure/swift.ai.yaml +143 -0
  230. package/bundled/locales/zh-TW/ai/options/testing/contract-testing.ai.yaml +254 -0
  231. package/bundled/locales/zh-TW/ai/options/testing/e2e-testing.ai.yaml +116 -0
  232. package/bundled/locales/zh-TW/ai/options/testing/industry-pyramid.ai.yaml +144 -0
  233. package/bundled/locales/zh-TW/ai/options/testing/integration-testing.ai.yaml +90 -0
  234. package/bundled/locales/zh-TW/ai/options/testing/istqb-framework.ai.yaml +108 -0
  235. package/bundled/locales/zh-TW/ai/options/testing/performance-testing.ai.yaml +272 -0
  236. package/bundled/locales/zh-TW/ai/options/testing/security-testing.ai.yaml +160 -0
  237. package/bundled/locales/zh-TW/ai/options/testing/system-testing.ai.yaml +101 -0
  238. package/bundled/locales/zh-TW/ai/options/testing/unit-testing.ai.yaml +82 -0
  239. package/bundled/locales/zh-TW/ai/standards/anti-hallucination.ai.yaml +145 -0
  240. package/bundled/locales/zh-TW/ai/standards/changelog.ai.yaml +146 -0
  241. package/bundled/locales/zh-TW/ai/standards/checkin-standards.ai.yaml +170 -0
  242. package/bundled/locales/zh-TW/ai/standards/code-review.ai.yaml +148 -0
  243. package/bundled/locales/zh-TW/ai/standards/commit-message.ai.yaml +175 -0
  244. package/bundled/locales/zh-TW/ai/standards/documentation-structure.ai.yaml +124 -0
  245. package/bundled/locales/zh-TW/ai/standards/documentation-writing-standards.ai.yaml +190 -0
  246. package/bundled/locales/zh-TW/ai/standards/error-codes.ai.yaml +139 -0
  247. package/bundled/locales/zh-TW/ai/standards/git-workflow.ai.yaml +95 -0
  248. package/bundled/locales/zh-TW/ai/standards/logging.ai.yaml +128 -0
  249. package/bundled/locales/zh-TW/ai/standards/project-structure.ai.yaml +134 -0
  250. package/bundled/locales/zh-TW/ai/standards/spec-driven-development.ai.yaml +169 -0
  251. package/bundled/locales/zh-TW/ai/standards/test-completeness-dimensions.ai.yaml +220 -0
  252. package/bundled/locales/zh-TW/ai/standards/testing.ai.yaml +137 -0
  253. package/bundled/locales/zh-TW/ai/standards/versioning.ai.yaml +211 -0
  254. package/bundled/locales/zh-TW/core/ai-instruction-standards.md +213 -0
  255. package/bundled/locales/zh-TW/core/anti-hallucination.md +691 -0
  256. package/bundled/locales/zh-TW/core/changelog-standards.md +564 -0
  257. package/bundled/locales/zh-TW/core/checkin-standards.md +943 -0
  258. package/bundled/locales/zh-TW/core/code-review-checklist.md +693 -0
  259. package/bundled/locales/zh-TW/core/commit-message-guide.md +809 -0
  260. package/bundled/locales/zh-TW/core/documentation-structure.md +1125 -0
  261. package/bundled/locales/zh-TW/core/documentation-writing-standards.md +495 -0
  262. package/bundled/locales/zh-TW/core/error-code-standards.md +384 -0
  263. package/bundled/locales/zh-TW/core/git-workflow.md +860 -0
  264. package/bundled/locales/zh-TW/core/logging-standards.md +325 -0
  265. package/bundled/locales/zh-TW/core/project-structure.md +362 -0
  266. package/bundled/locales/zh-TW/core/refactoring-standards.md +642 -0
  267. package/bundled/locales/zh-TW/core/spec-driven-development.md +215 -0
  268. package/bundled/locales/zh-TW/core/test-completeness-dimensions.md +544 -0
  269. package/bundled/locales/zh-TW/core/test-driven-development.md +1004 -0
  270. package/bundled/locales/zh-TW/core/testing-standards.md +2158 -0
  271. package/bundled/locales/zh-TW/core/versioning.md +909 -0
  272. package/bundled/locales/zh-TW/docs/AI-AGENT-ROADMAP.md +303 -0
  273. package/bundled/locales/zh-TW/docs/CLI-INIT-OPTIONS.md +990 -0
  274. package/bundled/locales/zh-TW/docs/OPERATION-WORKFLOW.md +1064 -0
  275. package/bundled/locales/zh-TW/docs/USAGE-MODES-COMPARISON.md +333 -0
  276. package/bundled/locales/zh-TW/docs/WINDOWS-GUIDE.md +215 -0
  277. package/bundled/locales/zh-TW/integrations/codex/AGENTS.md +115 -0
  278. package/bundled/locales/zh-TW/integrations/codex/README.md +113 -0
  279. package/bundled/locales/zh-TW/integrations/gemini-cli/GEMINI.md +102 -0
  280. package/bundled/locales/zh-TW/integrations/gemini-cli/README.md +140 -0
  281. package/bundled/locales/zh-TW/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +269 -0
  282. package/bundled/locales/zh-TW/integrations/github-copilot/README.md +167 -0
  283. package/bundled/locales/zh-TW/integrations/github-copilot/copilot-instructions.md +263 -0
  284. package/bundled/locales/zh-TW/integrations/github-copilot/skills-mapping.md +192 -0
  285. package/bundled/locales/zh-TW/integrations/google-antigravity/INSTRUCTIONS.md +61 -0
  286. package/bundled/locales/zh-TW/integrations/google-antigravity/README.md +84 -0
  287. package/bundled/locales/zh-TW/integrations/opencode/AGENTS.md +111 -0
  288. package/bundled/locales/zh-TW/integrations/opencode/README.md +176 -0
  289. package/bundled/locales/zh-TW/integrations/opencode/skills-mapping.md +396 -0
  290. package/bundled/locales/zh-TW/integrations/openspec/AGENTS.md +301 -0
  291. package/bundled/locales/zh-TW/integrations/openspec/README.md +43 -0
  292. package/bundled/locales/zh-TW/integrations/spec-kit/AGENTS.md +184 -0
  293. package/bundled/locales/zh-TW/integrations/spec-kit/README.md +43 -0
  294. package/bundled/locales/zh-TW/options/commit-message/bilingual.md +161 -0
  295. package/bundled/locales/zh-TW/options/commit-message/english.md +137 -0
  296. package/bundled/locales/zh-TW/options/commit-message/traditional-chinese.md +162 -0
  297. package/bundled/locales/zh-TW/options/git-workflow/gitflow.md +147 -0
  298. package/bundled/locales/zh-TW/options/git-workflow/github-flow.md +124 -0
  299. package/bundled/locales/zh-TW/options/git-workflow/merge-commit.md +124 -0
  300. package/bundled/locales/zh-TW/options/git-workflow/rebase-ff.md +160 -0
  301. package/bundled/locales/zh-TW/options/git-workflow/squash-merge.md +117 -0
  302. package/bundled/locales/zh-TW/options/git-workflow/trunk-based.md +125 -0
  303. package/bundled/locales/zh-TW/options/project-structure/dotnet.md +183 -0
  304. package/bundled/locales/zh-TW/options/project-structure/go.md +226 -0
  305. package/bundled/locales/zh-TW/options/project-structure/java.md +213 -0
  306. package/bundled/locales/zh-TW/options/project-structure/nodejs.md +185 -0
  307. package/bundled/locales/zh-TW/options/project-structure/python.md +229 -0
  308. package/bundled/locales/zh-TW/options/testing/e2e-testing.md +207 -0
  309. package/bundled/locales/zh-TW/options/testing/integration-testing.md +230 -0
  310. package/bundled/locales/zh-TW/options/testing/system-testing.md +183 -0
  311. package/bundled/locales/zh-TW/options/testing/unit-testing.md +165 -0
  312. package/bundled/locales/zh-TW/skills/INTEGRATION-GUIDE.md +218 -0
  313. package/bundled/locales/zh-TW/skills/README.md +132 -0
  314. package/bundled/locales/zh-TW/skills/_shared/README.md +68 -0
  315. package/bundled/locales/zh-TW/skills/claude-code/CONTRIBUTING.template.md +151 -0
  316. package/bundled/locales/zh-TW/skills/claude-code/README.md +174 -0
  317. package/bundled/locales/zh-TW/skills/claude-code/ai-collaboration-standards/SKILL.md +175 -0
  318. package/bundled/locales/zh-TW/skills/claude-code/ai-collaboration-standards/anti-hallucination.md +223 -0
  319. package/bundled/locales/zh-TW/skills/claude-code/ai-collaboration-standards/certainty-labels.md +132 -0
  320. package/bundled/locales/zh-TW/skills/claude-code/changelog-guide/SKILL.md +237 -0
  321. package/bundled/locales/zh-TW/skills/claude-code/checkin-assistant/SKILL.md +407 -0
  322. package/bundled/locales/zh-TW/skills/claude-code/code-review-assistant/SKILL.md +154 -0
  323. package/bundled/locales/zh-TW/skills/claude-code/code-review-assistant/checkin-checklist.md +257 -0
  324. package/bundled/locales/zh-TW/skills/claude-code/code-review-assistant/review-checklist.md +246 -0
  325. package/bundled/locales/zh-TW/skills/claude-code/commands/bdd.md +142 -0
  326. package/bundled/locales/zh-TW/skills/claude-code/commands/methodology.md +274 -0
  327. package/bundled/locales/zh-TW/skills/claude-code/commit-standards/SKILL.md +191 -0
  328. package/bundled/locales/zh-TW/skills/claude-code/commit-standards/conventional-commits.md +264 -0
  329. package/bundled/locales/zh-TW/skills/claude-code/commit-standards/language-options.md +172 -0
  330. package/bundled/locales/zh-TW/skills/claude-code/documentation-guide/SKILL.md +421 -0
  331. package/bundled/locales/zh-TW/skills/claude-code/documentation-guide/documentation-structure.md +357 -0
  332. package/bundled/locales/zh-TW/skills/claude-code/documentation-guide/readme-template.md +412 -0
  333. package/bundled/locales/zh-TW/skills/claude-code/error-code-guide/SKILL.md +269 -0
  334. package/bundled/locales/zh-TW/skills/claude-code/git-workflow-guide/SKILL.md +218 -0
  335. package/bundled/locales/zh-TW/skills/claude-code/git-workflow-guide/branch-naming.md +220 -0
  336. package/bundled/locales/zh-TW/skills/claude-code/git-workflow-guide/git-workflow.md +321 -0
  337. package/bundled/locales/zh-TW/skills/claude-code/logging-guide/SKILL.md +285 -0
  338. package/bundled/locales/zh-TW/skills/claude-code/methodology-system/SKILL.md +131 -0
  339. package/bundled/locales/zh-TW/skills/claude-code/methodology-system/create-methodology.md +350 -0
  340. package/bundled/locales/zh-TW/skills/claude-code/methodology-system/runtime.md +279 -0
  341. package/bundled/locales/zh-TW/skills/claude-code/project-structure-guide/SKILL.md +143 -0
  342. package/bundled/locales/zh-TW/skills/claude-code/project-structure-guide/language-patterns.md +271 -0
  343. package/bundled/locales/zh-TW/skills/claude-code/refactoring-assistant/SKILL.md +162 -0
  344. package/bundled/locales/zh-TW/skills/claude-code/release-standards/SKILL.md +191 -0
  345. package/bundled/locales/zh-TW/skills/claude-code/release-standards/changelog-format.md +247 -0
  346. package/bundled/locales/zh-TW/skills/claude-code/release-standards/release-workflow.md +345 -0
  347. package/bundled/locales/zh-TW/skills/claude-code/release-standards/semantic-versioning.md +250 -0
  348. package/bundled/locales/zh-TW/skills/claude-code/requirement-assistant/SKILL.md +227 -0
  349. package/bundled/locales/zh-TW/skills/claude-code/requirement-assistant/requirement-checklist.md +325 -0
  350. package/bundled/locales/zh-TW/skills/claude-code/requirement-assistant/requirement-writing.md +399 -0
  351. package/bundled/locales/zh-TW/skills/claude-code/spec-driven-dev/SKILL.md +243 -0
  352. package/bundled/locales/zh-TW/skills/claude-code/tdd-assistant/SKILL.md +332 -0
  353. package/bundled/locales/zh-TW/skills/claude-code/tdd-assistant/language-examples.md +639 -0
  354. package/bundled/locales/zh-TW/skills/claude-code/tdd-assistant/tdd-workflow.md +486 -0
  355. package/bundled/locales/zh-TW/skills/claude-code/test-coverage-assistant/SKILL.md +282 -0
  356. package/bundled/locales/zh-TW/skills/claude-code/testing-guide/SKILL.md +234 -0
  357. package/bundled/locales/zh-TW/skills/claude-code/testing-guide/testing-pyramid.md +448 -0
  358. package/bundled/locales/zh-TW/skills/cline/README.md +58 -0
  359. package/bundled/locales/zh-TW/skills/copilot/README.md +61 -0
  360. package/bundled/locales/zh-TW/skills/copilot/copilot-instructions.md +79 -0
  361. package/bundled/locales/zh-TW/skills/cursor/README.md +58 -0
  362. package/bundled/locales/zh-TW/skills/windsurf/README.md +59 -0
  363. package/bundled/skills/claude-code/CONTRIBUTING.template.md +141 -0
  364. package/bundled/skills/claude-code/README.md +196 -0
  365. package/bundled/skills/claude-code/ai/standards/checkin.ai.yaml +21 -0
  366. package/bundled/skills/claude-code/ai/standards/commit.ai.yaml +20 -0
  367. package/bundled/skills/claude-code/ai/standards/refactoring.ai.yaml +34 -0
  368. package/bundled/skills/claude-code/ai/standards/testing.ai.yaml +41 -0
  369. package/bundled/skills/claude-code/ai-collaboration-standards/SKILL.md +175 -0
  370. package/bundled/skills/claude-code/ai-collaboration-standards/anti-hallucination.md +215 -0
  371. package/bundled/skills/claude-code/ai-collaboration-standards/certainty-labels.md +124 -0
  372. package/bundled/skills/claude-code/changelog-guide/SKILL.md +232 -0
  373. package/bundled/skills/claude-code/checkin-assistant/SKILL.md +402 -0
  374. package/bundled/skills/claude-code/code-review-assistant/SKILL.md +220 -0
  375. package/bundled/skills/claude-code/code-review-assistant/checkin-checklist.md +249 -0
  376. package/bundled/skills/claude-code/code-review-assistant/review-checklist.md +238 -0
  377. package/bundled/skills/claude-code/commands/README.md +78 -0
  378. package/bundled/skills/claude-code/commands/bdd.md +142 -0
  379. package/bundled/skills/claude-code/commands/changelog.md +57 -0
  380. package/bundled/skills/claude-code/commands/check.md +91 -0
  381. package/bundled/skills/claude-code/commands/commit.md +48 -0
  382. package/bundled/skills/claude-code/commands/config.md +97 -0
  383. package/bundled/skills/claude-code/commands/coverage.md +58 -0
  384. package/bundled/skills/claude-code/commands/docs.md +75 -0
  385. package/bundled/skills/claude-code/commands/init.md +88 -0
  386. package/bundled/skills/claude-code/commands/methodology.md +268 -0
  387. package/bundled/skills/claude-code/commands/release.md +50 -0
  388. package/bundled/skills/claude-code/commands/requirement.md +54 -0
  389. package/bundled/skills/claude-code/commands/review.md +50 -0
  390. package/bundled/skills/claude-code/commands/spec.md +69 -0
  391. package/bundled/skills/claude-code/commands/tdd.md +86 -0
  392. package/bundled/skills/claude-code/commands/update.md +122 -0
  393. package/bundled/skills/claude-code/commit-standards/SKILL.md +249 -0
  394. package/bundled/skills/claude-code/commit-standards/conventional-commits.md +256 -0
  395. package/bundled/skills/claude-code/commit-standards/language-options.md +164 -0
  396. package/bundled/skills/claude-code/documentation-guide/SKILL.md +416 -0
  397. package/bundled/skills/claude-code/documentation-guide/documentation-structure.md +349 -0
  398. package/bundled/skills/claude-code/documentation-guide/readme-template.md +404 -0
  399. package/bundled/skills/claude-code/error-code-guide/SKILL.md +264 -0
  400. package/bundled/skills/claude-code/git-workflow-guide/SKILL.md +226 -0
  401. package/bundled/skills/claude-code/git-workflow-guide/branch-naming.md +212 -0
  402. package/bundled/skills/claude-code/git-workflow-guide/git-workflow.md +313 -0
  403. package/bundled/skills/claude-code/logging-guide/SKILL.md +280 -0
  404. package/bundled/skills/claude-code/methodology-system/SKILL.md +215 -0
  405. package/bundled/skills/claude-code/methodology-system/create-methodology.md +450 -0
  406. package/bundled/skills/claude-code/methodology-system/runtime.md +271 -0
  407. package/bundled/skills/claude-code/project-structure-guide/SKILL.md +143 -0
  408. package/bundled/skills/claude-code/project-structure-guide/language-patterns.md +263 -0
  409. package/bundled/skills/claude-code/refactoring-assistant/SKILL.md +205 -0
  410. package/bundled/skills/claude-code/release-standards/SKILL.md +191 -0
  411. package/bundled/skills/claude-code/release-standards/changelog-format.md +239 -0
  412. package/bundled/skills/claude-code/release-standards/release-workflow.md +337 -0
  413. package/bundled/skills/claude-code/release-standards/semantic-versioning.md +242 -0
  414. package/bundled/skills/claude-code/requirement-assistant/SKILL.md +222 -0
  415. package/bundled/skills/claude-code/requirement-assistant/requirement-checklist.md +317 -0
  416. package/bundled/skills/claude-code/requirement-assistant/requirement-writing.md +391 -0
  417. package/bundled/skills/claude-code/spec-driven-dev/SKILL.md +238 -0
  418. package/bundled/skills/claude-code/tdd-assistant/SKILL.md +384 -0
  419. package/bundled/skills/claude-code/tdd-assistant/language-examples.md +1276 -0
  420. package/bundled/skills/claude-code/tdd-assistant/tdd-workflow.md +659 -0
  421. package/bundled/skills/claude-code/test-coverage-assistant/SKILL.md +277 -0
  422. package/bundled/skills/claude-code/testing-guide/SKILL.md +317 -0
  423. package/bundled/skills/claude-code/testing-guide/testing-pyramid.md +440 -0
  424. package/package.json +4 -2
  425. package/src/commands/check.js +38 -6
  426. package/src/commands/init.js +20 -6
  427. package/src/commands/list.js +7 -2
  428. package/src/commands/skills.js +0 -2
  429. package/src/commands/update.js +271 -0
  430. package/src/i18n/messages.js +161 -11
  431. package/src/utils/copier.js +63 -10
  432. package/src/utils/skills-installer.js +47 -11
  433. package/standards-registry.json +6 -3
@@ -0,0 +1,117 @@
1
+ ---
2
+ source: ../../../../options/git-workflow/squash-merge.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2025-12-30
6
+ status: current
7
+ ---
8
+
9
+ # Squash Merge 合併策略
10
+
11
+ > **語言**: [English](../../../../options/git-workflow/squash-merge.md) | 繁體中文
12
+
13
+ **上層標準**: [Git 工作流程](../../core/git-workflow.md)
14
+
15
+ ---
16
+
17
+ ## 概述
18
+
19
+ Squash merge 在合併時將功能分支的所有 commit 壓縮成單一 commit。這在主分支上建立乾淨、線性的歷史,每個合併代表一個完整的功能或變更。
20
+
21
+ ## 適用情境
22
+
23
+ - 重視主分支歷史整潔的團隊
24
+ - 開發過程中有許多小型 commit 的專案
25
+ - 程式碼審查流程中最終結果比過程重要
26
+ - 接受外部貢獻的開源專案
27
+
28
+ ## 運作方式
29
+
30
+ ```
31
+ 功能分支: 合併後的 main 分支:
32
+ A---B---C---D X---Y---Z(單一壓縮 commit)
33
+ \ |
34
+ E---F---G---H → S(包含 E+F+G+H)
35
+ (功能 commits)
36
+ ```
37
+
38
+ ## 工作流程
39
+
40
+ ### 透過 CLI 進行 Squash Merge
41
+
42
+ ```bash
43
+ # 切到 main 分支
44
+ git checkout main
45
+ git pull origin main
46
+
47
+ # Squash merge
48
+ git merge --squash feature/user-profile
49
+
50
+ # 建立有意義的單一 commit
51
+ git commit -m "feat(users): add user profile with avatar upload
52
+
53
+ - Add profile page component
54
+ - Implement avatar upload functionality
55
+ - Add comprehensive test coverage
56
+
57
+ Closes #123"
58
+
59
+ # 推送並清理
60
+ git push origin main
61
+ git branch -d feature/user-profile
62
+ git push origin --delete feature/user-profile
63
+ ```
64
+
65
+ ### 透過 GitHub 進行
66
+
67
+ 1. 開啟 Pull Request
68
+ 2. 點擊「Squash and merge」按鈕
69
+ 3. 編輯 commit 訊息使其有意義
70
+ 4. 確認合併
71
+ 5. 刪除功能分支
72
+
73
+ ## Commit 訊息最佳實踐
74
+
75
+ 進行 squash merge 時,撰寫完整的 commit 訊息:
76
+
77
+ ```
78
+ feat(scope): 簡潔描述
79
+
80
+ - 主要變更 1
81
+ - 主要變更 2
82
+ - 主要變更 3
83
+
84
+ Closes #issue-number
85
+ Co-authored-by: Name <email@example.com>
86
+ ```
87
+
88
+ ## 優點
89
+
90
+ | 優點 | 說明 |
91
+ |------|------|
92
+ | 乾淨的歷史 | 主分支每個功能一個 commit |
93
+ | 容易還原 | 單一 commit 還原整個功能 |
94
+ | 簡化 bisect | 較少 commit 需要搜尋 |
95
+ | 自由提交 | 開發者可頻繁提交不會雜亂 |
96
+
97
+ ## 缺點
98
+
99
+ | 缺點 | 說明 |
100
+ |------|------|
101
+ | 失去細節 | 個別 commit 歷史遺失 |
102
+ | 難以追蹤 | 無法追溯特定行到原始 commit |
103
+ | 大型 diff | 單一 commit 可能有大量變更 |
104
+ | 失去脈絡 | 開發過程不被保留 |
105
+
106
+ ## 相關選項
107
+
108
+ - [Merge Commit](./merge-commit.md) - 保留所有 commit 歷史
109
+ - [Rebase and Fast-Forward](./rebase-ff.md) - 線性歷史保留所有 commit
110
+
111
+ ---
112
+
113
+ ## 授權條款
114
+
115
+ 本文件採用 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 授權條款。
116
+
117
+ **來源**:[universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
@@ -0,0 +1,125 @@
1
+ ---
2
+ source: ../../../../options/git-workflow/trunk-based.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2025-12-30
6
+ status: current
7
+ ---
8
+
9
+ # Trunk-Based 開發
10
+
11
+ > **語言**: [English](../../../../options/git-workflow/trunk-based.md) | 繁體中文
12
+
13
+ **上層標準**: [Git 工作流程](../../core/git-workflow.md)
14
+
15
+ ---
16
+
17
+ ## 概述
18
+
19
+ Trunk-Based 開發是一種版本控制管理實踐,所有開發者在單一分支(稱為「trunk」或「main」)上進行小型、頻繁的更新。它最大化持續整合,減少合併問題。
20
+
21
+ ## 適用情境
22
+
23
+ - 經驗豐富的團隊
24
+ - 強大的 CI/CD 基礎設施
25
+ - 需要快速發布週期
26
+ - 高度自動化測試環境
27
+
28
+ ## 核心原則
29
+
30
+ | 原則 | 說明 |
31
+ |------|------|
32
+ | 單一主分支 | 所有開發在 main/trunk 進行 |
33
+ | 小型提交 | 頻繁提交小變更 |
34
+ | 功能標誌 | 使用 feature flags 控制功能 |
35
+ | 持續整合 | 頻繁合併到主分支 |
36
+
37
+ ## 工作流程
38
+
39
+ ### 直接在 trunk 工作
40
+
41
+ ```bash
42
+ # 更新本地 main
43
+ git checkout main
44
+ git pull origin main
45
+
46
+ # 進行小型變更
47
+ git add .
48
+ git commit -m "feat: add user avatar display"
49
+ git push origin main
50
+ ```
51
+
52
+ ### 短期功能分支(可選)
53
+
54
+ ```bash
55
+ # 建立短期分支(最長 1-2 天)
56
+ git checkout -b feat/quick-change
57
+ # 進行變更
58
+ git checkout main
59
+ git merge feat/quick-change
60
+ git push origin main
61
+ git branch -d feat/quick-change
62
+ ```
63
+
64
+ ## 功能標誌
65
+
66
+ 使用功能標誌在生產環境控制未完成功能:
67
+
68
+ ```javascript
69
+ // 功能標誌範例
70
+ if (featureFlags.isEnabled('new-checkout-flow')) {
71
+ return <NewCheckoutFlow />;
72
+ } else {
73
+ return <LegacyCheckoutFlow />;
74
+ }
75
+ ```
76
+
77
+ ### 功能標誌類型
78
+
79
+ | 類型 | 用途 | 生命週期 |
80
+ |------|------|----------|
81
+ | 發布標誌 | 隱藏未完成功能 | 短期 |
82
+ | 實驗標誌 | A/B 測試 | 中期 |
83
+ | 權限標誌 | 功能存取控制 | 長期 |
84
+ | 營運標誌 | 系統行為控制 | 長期 |
85
+
86
+ ## 前提條件
87
+
88
+ 使用 Trunk-Based 開發需要:
89
+
90
+ 1. **全面的自動化測試**
91
+ 2. **快速的 CI/CD 管線**
92
+ 3. **程式碼審查文化**
93
+ 4. **功能標誌系統**
94
+ 5. **即時監控能力**
95
+
96
+ ## 優點
97
+
98
+ | 優點 | 說明 |
99
+ |------|------|
100
+ | 最少合併衝突 | 頻繁整合減少衝突 |
101
+ | 持續整合 | 真正的 CI 實踐 |
102
+ | 快速反饋 | 問題快速浮現 |
103
+ | 簡化分支管理 | 無複雜分支策略 |
104
+
105
+ ## 缺點
106
+
107
+ | 缺點 | 說明 |
108
+ |------|------|
109
+ | 需要高度紀律 | 團隊必須遵守規則 |
110
+ | 需要強大的 CI | 測試和建置必須快速 |
111
+ | 功能標誌複雜性 | 需要管理標誌生命週期 |
112
+ | 不適合新手團隊 | 需要經驗和信任 |
113
+
114
+ ## 相關選項
115
+
116
+ - [GitHub Flow](./github-flow.md) - 帶有 PR 的簡化流程
117
+ - [GitFlow](./gitflow.md) - 適合有排程發布的專案
118
+
119
+ ---
120
+
121
+ ## 授權條款
122
+
123
+ 本文件採用 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 授權條款。
124
+
125
+ **來源**:[universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
@@ -0,0 +1,183 @@
1
+ ---
2
+ source: ../../../../options/project-structure/dotnet.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2025-12-30
6
+ status: current
7
+ ---
8
+
9
+ # .NET 專案結構
10
+
11
+ > **語言**: [English](../../../../options/project-structure/dotnet.md) | 繁體中文
12
+
13
+ **上層標準**: [專案結構](../../core/project-structure.md)
14
+
15
+ ---
16
+
17
+ ## 概述
18
+
19
+ 本文件定義遵循 Clean Architecture 原則的 .NET/C# 專案標準目錄結構。它促進關注點分離,相依性指向核心領域。
20
+
21
+ ## 適用情境
22
+
23
+ - ASP.NET Core Web API
24
+ - 企業級應用程式
25
+ - 微服務
26
+ - 領域驅動設計專案
27
+ - 大型應用程式
28
+
29
+ ## 目錄結構
30
+
31
+ ```
32
+ SolutionName/
33
+ ├── src/
34
+ │ ├── SolutionName.Api/ # Web API 專案
35
+ │ │ ├── Controllers/
36
+ │ │ ├── Middleware/
37
+ │ │ ├── Filters/
38
+ │ │ ├── Program.cs
39
+ │ │ └── appsettings.json
40
+ │ ├── SolutionName.Core/ # 核心業務邏輯
41
+ │ │ ├── Entities/
42
+ │ │ ├── Interfaces/
43
+ │ │ ├── Services/
44
+ │ │ └── Exceptions/
45
+ │ ├── SolutionName.Infrastructure/ # 外部服務實作
46
+ │ │ ├── Data/
47
+ │ │ │ ├── ApplicationDbContext.cs
48
+ │ │ │ └── Migrations/
49
+ │ │ ├── Repositories/
50
+ │ │ └── ExternalServices/
51
+ │ └── SolutionName.Shared/ # 共用程式碼
52
+ │ ├── DTOs/
53
+ │ ├── Extensions/
54
+ │ └── Utils/
55
+ ├── tests/
56
+ │ ├── SolutionName.UnitTests/
57
+ │ ├── SolutionName.IntegrationTests/
58
+ │ └── SolutionName.FunctionalTests/
59
+ ├── docs/
60
+ ├── SolutionName.sln
61
+ └── README.md
62
+ ```
63
+
64
+ ## Clean Architecture 層次
65
+
66
+ ```
67
+ ┌─────────────────────────────────────────┐
68
+ │ API 層 │
69
+ │ Controllers, Middleware, Filters │
70
+ ├─────────────────────────────────────────┤
71
+ │ Infrastructure 層 │
72
+ │ DbContext, Repositories, External APIs │
73
+ ├─────────────────────────────────────────┤
74
+ │ Core 層 │
75
+ │ Entities, Services, Interfaces │
76
+ └─────────────────────────────────────────┘
77
+ 相依性指向內部 ↓
78
+ ```
79
+
80
+ ## 命名慣例
81
+
82
+ | 類型 | 慣例 | 範例 |
83
+ |------|------|------|
84
+ | 檔案 | PascalCase.cs | `UserService.cs` |
85
+ | 目錄 | PascalCase | `Controllers/` |
86
+ | 類別 | PascalCase | `UserService` |
87
+ | 介面 | IPascalCase | `IUserService` |
88
+ | 方法 | PascalCase | `CreateUser()` |
89
+ | 私有欄位 | _camelCase | `_userRepository` |
90
+
91
+ ## 層次結構
92
+
93
+ ### Core 層(領域)
94
+
95
+ ```csharp
96
+ // src/SolutionName.Core/Entities/User.cs
97
+ namespace SolutionName.Core.Entities;
98
+
99
+ public class User
100
+ {
101
+ public Guid Id { get; private set; }
102
+ public string Email { get; private set; } = string.Empty;
103
+ public string Name { get; private set; } = string.Empty;
104
+
105
+ public static User Create(string email, string name)
106
+ {
107
+ return new User
108
+ {
109
+ Id = Guid.NewGuid(),
110
+ Email = email,
111
+ Name = name
112
+ };
113
+ }
114
+ }
115
+ ```
116
+
117
+ ```csharp
118
+ // src/SolutionName.Core/Interfaces/IUserRepository.cs
119
+ public interface IUserRepository
120
+ {
121
+ Task<User?> GetByIdAsync(Guid id, CancellationToken ct = default);
122
+ Task<User> AddAsync(User user, CancellationToken ct = default);
123
+ }
124
+ ```
125
+
126
+ ### API 層
127
+
128
+ ```csharp
129
+ // src/SolutionName.Api/Controllers/UsersController.cs
130
+ [ApiController]
131
+ [Route("api/[controller]")]
132
+ public class UsersController : ControllerBase
133
+ {
134
+ private readonly IUserService _userService;
135
+
136
+ public UsersController(IUserService userService)
137
+ {
138
+ _userService = userService;
139
+ }
140
+
141
+ [HttpPost]
142
+ [ProducesResponseType(typeof(UserDto), StatusCodes.Status201Created)]
143
+ public async Task<IActionResult> CreateUser(
144
+ [FromBody] CreateUserRequest request,
145
+ CancellationToken ct)
146
+ {
147
+ var user = await _userService.CreateUserAsync(request, ct);
148
+ return CreatedAtAction(nameof(GetUser), new { id = user.Id }, user.ToDto());
149
+ }
150
+ }
151
+ ```
152
+
153
+ ## 專案參考
154
+
155
+ | 專案 | 可參考 |
156
+ |------|--------|
157
+ | Api | Infrastructure, Core, Shared |
158
+ | Infrastructure | Core, Shared |
159
+ | Core | 僅 Shared(無外部相依)|
160
+ | Shared | 無 |
161
+
162
+ ## 最佳實踐
163
+
164
+ 1. **相依性指向內部** - Core 無外部相依
165
+ 2. **使用介面** - 在 Core 定義,在 Infrastructure 實作
166
+ 3. **建構子注入** - 永遠使用 DI
167
+ 4. **可為空參考類型** - 啟用並強制執行
168
+ 5. **全程非同步** - 使用 CancellationToken
169
+
170
+ ## 相關選項
171
+
172
+ - [Node.js](./nodejs.md) - Node.js 專案結構
173
+ - [Python](./python.md) - Python 專案結構
174
+ - [Java](./java.md) - Java/Spring 專案結構
175
+ - [Go](./go.md) - Go 專案結構
176
+
177
+ ---
178
+
179
+ ## 授權條款
180
+
181
+ 本文件採用 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 授權條款。
182
+
183
+ **來源**:[universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
@@ -0,0 +1,226 @@
1
+ ---
2
+ source: ../../../../options/project-structure/go.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2025-12-30
6
+ status: current
7
+ ---
8
+
9
+ # Go 專案結構
10
+
11
+ > **語言**: [English](../../../../options/project-structure/go.md) | 繁體中文
12
+
13
+ **上層標準**: [專案結構](../../core/project-structure.md)
14
+
15
+ ---
16
+
17
+ ## 概述
18
+
19
+ 本文件定義遵循社群最佳實踐的 Go 專案標準目錄結構。它在簡單性和可擴展性之間取得平衡,適用於小型服務和大型應用程式。
20
+
21
+ ## 適用情境
22
+
23
+ - HTTP 服務和 API
24
+ - CLI 應用程式
25
+ - 微服務
26
+ - 系統工具
27
+ - 函式庫和套件
28
+
29
+ ## 目錄結構
30
+
31
+ ```
32
+ project-root/
33
+ ├── cmd/ # 應用程式進入點
34
+ │ ├── api/
35
+ │ │ └── main.go
36
+ │ └── cli/
37
+ │ └── main.go
38
+ ├── internal/ # 私有應用程式碼
39
+ │ ├── config/
40
+ │ │ └── config.go
41
+ │ ├── domain/ # 業務邏輯
42
+ │ │ ├── user/
43
+ │ │ │ ├── user.go
44
+ │ │ │ ├── service.go
45
+ │ │ │ ├── repository.go
46
+ │ │ │ └── service_test.go
47
+ │ │ └── product/
48
+ │ ├── handler/ # HTTP 處理器
49
+ │ │ ├── user_handler.go
50
+ │ │ └── middleware/
51
+ │ ├── repository/ # 資料存取實作
52
+ │ │ ├── postgres/
53
+ │ │ └── redis/
54
+ │ └── server/
55
+ │ └── server.go
56
+ ├── pkg/ # 公開可重用套件
57
+ │ └── validator/
58
+ │ └── validator.go
59
+ ├── api/ # API 規格
60
+ │ └── openapi.yaml
61
+ ├── scripts/ # 建置/部署腳本
62
+ ├── docs/ # 文件
63
+ ├── go.mod
64
+ ├── go.sum
65
+ ├── Makefile
66
+ └── README.md
67
+ ```
68
+
69
+ ## 命名慣例
70
+
71
+ | 類型 | 慣例 | 範例 |
72
+ |------|------|------|
73
+ | 檔案 | snake_case.go | `user_service.go` |
74
+ | 套件 | lowercase | `user`, `httphandler` |
75
+ | 匯出 | PascalCase | `UserService`, `CreateUser` |
76
+ | 未匯出 | camelCase | `userRepository`, `validateEmail` |
77
+ | 常數 | PascalCase 或 ALL_CAPS | `MaxRetries`, `DB_TIMEOUT` |
78
+ | 介面 | PascalCase + "er" 後綴 | `Reader`, `UserRepository` |
79
+
80
+ ## 關鍵目錄
81
+
82
+ ### cmd/
83
+
84
+ 應用程式進入點。每個子目錄是一個獨立的二進位檔案:
85
+
86
+ ```go
87
+ // cmd/api/main.go
88
+ package main
89
+
90
+ import (
91
+ "log"
92
+ "myproject/internal/config"
93
+ "myproject/internal/server"
94
+ )
95
+
96
+ func main() {
97
+ cfg, err := config.Load()
98
+ if err != nil {
99
+ log.Fatal(err)
100
+ }
101
+
102
+ srv := server.New(cfg)
103
+ if err := srv.Run(); err != nil {
104
+ log.Fatal(err)
105
+ }
106
+ }
107
+ ```
108
+
109
+ ### internal/
110
+
111
+ 無法被其他專案匯入的私有程式碼。
112
+
113
+ ### pkg/
114
+
115
+ 可被其他專案匯入的公開套件。
116
+
117
+ ## 領域層
118
+
119
+ ### 實體
120
+
121
+ ```go
122
+ // internal/domain/user/user.go
123
+ package user
124
+
125
+ import (
126
+ "errors"
127
+ "time"
128
+ )
129
+
130
+ var (
131
+ ErrInvalidEmail = errors.New("invalid email format")
132
+ ErrUserNotFound = errors.New("user not found")
133
+ ErrEmailExists = errors.New("email already exists")
134
+ )
135
+
136
+ type User struct {
137
+ ID string
138
+ Email string
139
+ Name string
140
+ CreatedAt time.Time
141
+ }
142
+
143
+ func NewUser(email, name string) (*User, error) {
144
+ if !isValidEmail(email) {
145
+ return nil, ErrInvalidEmail
146
+ }
147
+ return &User{
148
+ Email: email,
149
+ Name: name,
150
+ CreatedAt: time.Now(),
151
+ }, nil
152
+ }
153
+ ```
154
+
155
+ ### Repository 介面
156
+
157
+ ```go
158
+ // internal/domain/user/repository.go
159
+ package user
160
+
161
+ import "context"
162
+
163
+ type Repository interface {
164
+ Create(ctx context.Context, user *User) error
165
+ GetByID(ctx context.Context, id string) (*User, error)
166
+ GetByEmail(ctx context.Context, email string) (*User, error)
167
+ }
168
+ ```
169
+
170
+ ### 服務
171
+
172
+ ```go
173
+ // internal/domain/user/service.go
174
+ package user
175
+
176
+ import "context"
177
+
178
+ type Service struct {
179
+ repo Repository
180
+ }
181
+
182
+ func NewService(repo Repository) *Service {
183
+ return &Service{repo: repo}
184
+ }
185
+
186
+ func (s *Service) CreateUser(ctx context.Context, input CreateUserInput) (*User, error) {
187
+ existing, _ := s.repo.GetByEmail(ctx, input.Email)
188
+ if existing != nil {
189
+ return nil, ErrEmailExists
190
+ }
191
+
192
+ user, err := NewUser(input.Email, input.Name)
193
+ if err != nil {
194
+ return nil, err
195
+ }
196
+
197
+ if err := s.repo.Create(ctx, user); err != nil {
198
+ return nil, err
199
+ }
200
+ return user, nil
201
+ }
202
+ ```
203
+
204
+ ## 最佳實踐
205
+
206
+ 1. **接受介面,回傳結構**
207
+ 2. **保持 `main.go` 最小化** - 連接相依性,呼叫 `Run()`
208
+ 3. **使用 `internal/` 存放私有程式碼**
209
+ 4. **在使用處定義介面** - 而非實作處
210
+ 5. **錯誤包裝** - 使用 `fmt.Errorf("context: %w", err)`
211
+ 6. **Context 傳播** - 所有層都傳遞 context
212
+
213
+ ## 相關選項
214
+
215
+ - [Node.js](./nodejs.md) - Node.js 專案結構
216
+ - [Python](./python.md) - Python 專案結構
217
+ - [.NET](./dotnet.md) - .NET/C# 專案結構
218
+ - [Java](./java.md) - Java/Spring 專案結構
219
+
220
+ ---
221
+
222
+ ## 授權條款
223
+
224
+ 本文件採用 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 授權條款。
225
+
226
+ **來源**:[universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)