@k2works/claude-code-booster 6.3.0 → 6.4.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 (293) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +61 -61
  3. package/bin/claude-code-booster +113 -113
  4. package/lib/assets/.claude/README.md +287 -287
  5. package/lib/assets/.claude/agents/xp-architect.md +250 -250
  6. package/lib/assets/.claude/agents/xp-executive.md +207 -207
  7. package/lib/assets/.claude/agents/xp-interaction-designer.md +239 -239
  8. package/lib/assets/.claude/agents/xp-product-manager.md +245 -245
  9. package/lib/assets/.claude/agents/xp-programmer.md +268 -268
  10. package/lib/assets/.claude/agents/xp-project-manager.md +229 -229
  11. package/lib/assets/.claude/agents/xp-technical-writer.md +224 -224
  12. package/lib/assets/.claude/agents/xp-tester.md +265 -265
  13. package/lib/assets/.claude/agents/xp-user-representative.md +204 -204
  14. package/lib/assets/.claude/scripts/generate-inception-deck.mjs +911 -911
  15. package/lib/assets/.claude/settings.json +11 -11
  16. package/lib/assets/.claude/skills/ai-agent-guidelines/SKILL.md +111 -111
  17. package/lib/assets/.claude/skills/analyzing-architecture/SKILL.md +83 -83
  18. package/lib/assets/.claude/skills/analyzing-business-architecture/SKILL.md +122 -122
  19. package/lib/assets/.claude/skills/analyzing-business-case/SKILL.md +148 -148
  20. package/lib/assets/.claude/skills/analyzing-business-strategy/SKILL.md +277 -277
  21. package/lib/assets/.claude/skills/analyzing-data-model/SKILL.md +77 -77
  22. package/lib/assets/.claude/skills/analyzing-domain-model/SKILL.md +117 -117
  23. package/lib/assets/.claude/skills/analyzing-inception-deck/SKILL.md +84 -84
  24. package/lib/assets/.claude/skills/analyzing-non-functional/SKILL.md +95 -95
  25. package/lib/assets/.claude/skills/analyzing-operation/SKILL.md +95 -95
  26. package/lib/assets/.claude/skills/analyzing-requirements/SKILL.md +91 -91
  27. package/lib/assets/.claude/skills/analyzing-review/SKILL.md +174 -174
  28. package/lib/assets/.claude/skills/analyzing-tech-stack/SKILL.md +101 -101
  29. package/lib/assets/.claude/skills/analyzing-test-strategy/SKILL.md +89 -89
  30. package/lib/assets/.claude/skills/analyzing-ui-design/SKILL.md +80 -80
  31. package/lib/assets/.claude/skills/analyzing-usecases/SKILL.md +72 -72
  32. package/lib/assets/.claude/skills/closing-iteration/SKILL.md +176 -176
  33. package/lib/assets/.claude/skills/creating-adr/SKILL.md +117 -117
  34. package/lib/assets/.claude/skills/creating-development-strategy/SKILL.md +151 -127
  35. package/lib/assets/.claude/skills/creating-iteration-report/SKILL.md +210 -210
  36. package/lib/assets/.claude/skills/creating-journal/SKILL.md +140 -140
  37. package/lib/assets/.claude/skills/creating-manual/SKILL.md +199 -199
  38. package/lib/assets/.claude/skills/creating-release-report/SKILL.md +161 -161
  39. package/lib/assets/.claude/skills/creating-slides/SKILL.md +86 -86
  40. package/lib/assets/.claude/skills/creating-slides/agents/openai.yaml +4 -4
  41. package/lib/assets/.claude/skills/creating-slides/references/manga-css.md +45 -45
  42. package/lib/assets/.claude/skills/creating-slides/scripts/slide_tools.py +239 -239
  43. package/lib/assets/.claude/skills/developing-backend/SKILL.md +100 -100
  44. package/lib/assets/.claude/skills/developing-frontend/SKILL.md +93 -93
  45. package/lib/assets/.claude/skills/developing-release/SKILL.md +120 -120
  46. package/lib/assets/.claude/skills/developing-review/SKILL.md +175 -175
  47. package/lib/assets/.claude/skills/developing-uiux-review/SKILL.md +207 -207
  48. package/lib/assets/.claude/skills/generating-bmc/SKILL.md +123 -123
  49. package/lib/assets/.claude/skills/generating-slides/SKILL.md +94 -94
  50. package/lib/assets/.claude/skills/git-commit/SKILL.md +81 -81
  51. package/lib/assets/.claude/skills/killing-processes/SKILL.md +44 -44
  52. package/lib/assets/.claude/skills/migrating-ai-dlc/evals/evals.json +59 -59
  53. package/lib/assets/.claude/skills/opening-iteration/SKILL.md +124 -124
  54. package/lib/assets/.claude/skills/operating-backup/SKILL.md +59 -59
  55. package/lib/assets/.claude/skills/operating-cicd/SKILL.md +54 -54
  56. package/lib/assets/.claude/skills/operating-deploy/SKILL.md +67 -67
  57. package/lib/assets/.claude/skills/operating-docs/SKILL.md +219 -219
  58. package/lib/assets/.claude/skills/operating-provision/SKILL.md +77 -77
  59. package/lib/assets/.claude/skills/operating-qt/SKILL.md +147 -147
  60. package/lib/assets/.claude/skills/operating-review/SKILL.md +171 -171
  61. package/lib/assets/.claude/skills/operating-script/SKILL.md +145 -145
  62. package/lib/assets/.claude/skills/operating-setup/SKILL.md +63 -63
  63. package/lib/assets/.claude/skills/orchestrating-analysis/SKILL.md +110 -110
  64. package/lib/assets/.claude/skills/orchestrating-development/SKILL.md +172 -172
  65. package/lib/assets/.claude/skills/orchestrating-operation/SKILL.md +161 -161
  66. package/lib/assets/.claude/skills/orchestrating-project/SKILL.md +149 -149
  67. package/lib/assets/.claude/skills/planning-releases/SKILL.md +121 -121
  68. package/lib/assets/.claude/skills/practicing-getting-start-tdd/SKILL.md +262 -262
  69. package/lib/assets/.claude/skills/syncing-github-project/SKILL.md +151 -151
  70. package/lib/assets/.claude/skills/tracking-progress/SKILL.md +91 -91
  71. package/lib/assets/.claude/skills/validating-design/SKILL.md +130 -130
  72. package/lib/assets/.claude/skills/validating-iteration-plan/SKILL.md +238 -238
  73. package/lib/assets/.claude/skills/validating-operating-setup/SKILL.md +118 -118
  74. package/lib/assets/.devcontainer/devcontainer.json +37 -37
  75. package/lib/assets/.env.example +32 -32
  76. package/lib/assets/.gitattributes +4 -4
  77. package/lib/assets/.github/workflows/docker-publish.yml +77 -77
  78. package/lib/assets/.github/workflows/mkdocs.yml +39 -39
  79. package/lib/assets/AGENTS.md +102 -102
  80. package/lib/assets/README.md +304 -304
  81. package/lib/assets/docker-compose.yml +33 -33
  82. package/lib/assets/docs/adr/index.md +10 -10
  83. package/lib/assets/docs/article/index.md +2 -1
  84. package/lib/assets/docs/assets/css/extra.css +29 -29
  85. package/lib/assets/docs/assets/js/extra.js +48 -48
  86. package/lib/assets/docs/assets/js/mathjax.js +27 -27
  87. package/lib/assets/docs/design/index.md +44 -44
  88. package/lib/assets/docs/development/index.md +39 -39
  89. package/lib/assets/docs/index.md +1 -1
  90. package/lib/assets/docs/log.md +3 -0
  91. package/lib/assets/docs/operation/index.md +41 -41
  92. package/lib/assets/docs/reference/BDD/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211.md +766 -0
  93. package/lib/assets/docs/reference/CodexCLIMCP/343/202/242/343/203/227/343/203/252/343/202/261/343/203/274/343/202/267/343/203/247/343/203/263/351/226/213/347/231/272/343/203/225/343/203/255/343/203/274.md +555 -555
  94. package/lib/assets/docs/reference/CodexCLIMCP/343/202/265/343/203/274/343/203/220/343/203/274/350/250/255/345/256/232/346/211/213/351/240/206.md +351 -351
  95. package/lib/assets/docs/reference/Java/343/202/242/343/203/227/343/203/252/343/202/261/343/203/274/343/202/267/343/203/247/343/203/263/347/222/260/345/242/203/346/247/213/347/257/211/343/202/254/343/202/244/343/203/211.md +592 -592
  96. package/lib/assets/docs/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +965 -965
  97. package/lib/assets/docs/reference/SonarQube/343/203/255/343/203/274/343/202/253/343/203/253/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +652 -652
  98. package/lib/assets/docs/reference/TypeScript/343/202/242/343/203/227/343/203/252/343/202/261/343/203/274/343/202/267/343/203/247/343/203/263/347/222/260/345/242/203/346/247/213/347/257/211/343/202/254/343/202/244/343/203/211.md +476 -476
  99. package/lib/assets/docs/reference/UI/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +460 -460
  100. package/lib/assets/docs/reference/Vim/346/223/215/344/275/234/343/203/236/343/203/213/343/203/245/343/202/242/343/203/253.md +177 -177
  101. package/lib/assets/docs/reference/images/Ansoff.drawio.svg +3 -3
  102. package/lib/assets/docs/reference/images/BMC.drawio.svg +3 -3
  103. package/lib/assets/docs/reference/images/BrandBasicStrategy.drawio.svg +3 -3
  104. package/lib/assets/docs/reference/images/BrandCategorization.drawio.svg +3 -3
  105. package/lib/assets/docs/reference/images/BrandRecurutementStrategy.drawio.svg +3 -3
  106. package/lib/assets/docs/reference/images/BrandValue.drawio.svg +3 -3
  107. package/lib/assets/docs/reference/images/BusinessActivitiy.svg +3 -3
  108. package/lib/assets/docs/reference/images/HRM.drawio.svg +3 -3
  109. package/lib/assets/docs/reference/images/MarketingStructure.drawio.svg +3 -3
  110. package/lib/assets/docs/reference/images/OrganizationElemnts.svg +3 -3
  111. package/lib/assets/docs/reference/images/PPM.drawio.svg +3 -3
  112. package/lib/assets/docs/reference/images/PositioningMap.drawio.svg +3 -3
  113. package/lib/assets/docs/reference/images/ProductLayer.drawio.svg +3 -3
  114. package/lib/assets/docs/reference/images/ProductMix.drawio.svg +3 -3
  115. package/lib/assets/docs/reference/images/SWOT.drawio.svg +3 -3
  116. package/lib/assets/docs/reference/images/TargetMarket.drawio.svg +3 -3
  117. package/lib/assets/docs/reference/images/ThreeGenericStrategies.drawio.svg +3 -3
  118. package/lib/assets/docs/reference/images/VRIO.drawio.svg +3 -3
  119. package/lib/assets/docs/reference/images/ValueChain.drawio.svg +3 -3
  120. package/lib/assets/docs/reference/index.md +1 -0
  121. package/lib/assets/docs/reference//343/202/210/343/201/204/343/202/275/343/203/225/343/203/210/343/202/246/343/202/247/343/202/242/343/201/250/343/201/257.md +250 -250
  122. package/lib/assets/docs/reference//343/202/242/343/203/274/343/202/255/343/203/206/343/202/257/343/203/201/343/203/243/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +2226 -2226
  123. package/lib/assets/docs/reference//343/202/244/343/203/263/343/203/225/343/203/251/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +1888 -1888
  124. package/lib/assets/docs/reference//343/202/250/343/202/257/343/202/271/343/203/210/343/203/252/343/203/274/343/203/240/343/203/227/343/203/255/343/202/260/343/203/251/343/203/237/343/203/263/343/202/260.md +549 -549
  125. package/lib/assets/docs/reference//343/202/263/343/203/274/343/203/207/343/202/243/343/203/263/343/202/260/343/201/250/343/203/206/343/202/271/343/203/210/343/202/254/343/202/244/343/203/211.md +715 -715
  126. package/lib/assets/docs/reference//343/203/206/343/202/271/343/203/210/346/210/246/347/225/245/343/202/254/343/202/244/343/203/211.md +1323 -1323
  127. package/lib/assets/docs/reference//343/203/207/343/203/274/343/202/277/343/203/242/343/203/207/343/203/253/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +321 -321
  128. package/lib/assets/docs/reference//343/203/211/343/203/241/343/202/244/343/203/263/343/203/242/343/203/207/343/203/253/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +609 -609
  129. package/lib/assets/docs/reference//343/203/223/343/202/270/343/203/215/343/202/271/343/202/242/343/203/274/343/202/255/343/203/206/343/202/257/343/203/201/343/203/243/345/210/206/346/236/220/343/202/254/343/202/244/343/203/211.md +537 -537
  130. package/lib/assets/docs/reference//343/203/246/343/203/274/343/202/271/343/202/261/343/203/274/343/202/271/344/275/234/346/210/220/343/202/254/343/202/244/343/203/211.md +699 -699
  131. package/lib/assets/docs/reference//343/203/252/343/203/252/343/203/274/343/202/271/343/202/254/343/202/244/343/203/211.md +470 -470
  132. package/lib/assets/docs/reference//343/203/252/343/203/252/343/203/274/343/202/271/343/203/273/343/202/244/343/203/206/343/203/254/343/203/274/343/202/267/343/203/247/343/203/263/350/250/210/347/224/273/343/202/254/343/202/244/343/203/211.md +580 -580
  133. package/lib/assets/docs/reference//343/203/255/343/202/270/343/202/253/343/203/253/343/202/267/343/203/263/343/202/255/343/203/263/343/202/260.md +1376 -1376
  134. package/lib/assets/docs/reference//344/274/201/346/245/255/347/265/214/345/226/266/350/253/226.md +2647 -2647
  135. package/lib/assets/docs/reference//347/222/260/345/242/203/345/244/211/346/225/260/347/256/241/347/220/206/343/202/254/343/202/244/343/203/211.md +675 -675
  136. package/lib/assets/docs/reference//347/265/214/345/226/266/346/210/246/347/225/245/345/210/206/346/236/220/343/202/254/343/202/244/343/203/211.md +575 -575
  137. package/lib/assets/docs/reference//350/246/201/344/273/266/345/256/232/347/276/251/343/202/254/343/202/244/343/203/211.md +1258 -1258
  138. package/lib/assets/docs/reference//350/250/200/350/252/236/345/210/245/351/226/213/347/231/272/343/202/254/343/202/244/343/203/211.md +527 -527
  139. package/lib/assets/docs/reference//351/201/213/345/226/266/347/256/241/347/220/206.md +1492 -1492
  140. package/lib/assets/docs/reference//351/201/213/347/224/250/343/202/271/343/202/257/343/203/252/343/203/227/343/203/210/344/275/234/346/210/220/343/202/254/343/202/244/343/203/211.md +430 -430
  141. package/lib/assets/docs/reference//351/201/213/347/224/250/350/246/201/344/273/266/345/256/232/347/276/251/343/202/254/343/202/244/343/203/211.md +402 -402
  142. package/lib/assets/docs/reference//351/226/213/347/231/272/343/202/254/343/202/244/343/203/211.md +314 -314
  143. package/lib/assets/docs/reference//351/235/236/346/251/237/350/203/275/350/246/201/344/273/266/345/256/232/347/276/251/343/202/254/343/202/244/343/203/211.md +1246 -1246
  144. package/lib/assets/docs/requirements/index.md +17 -17
  145. package/lib/assets/docs/review/index.md +5 -5
  146. package/lib/assets/docs/strategy/index.md +17 -17
  147. package/lib/assets/docs/template/ADR.md +39 -39
  148. package/lib/assets/docs/template/AWS/343/202/271/343/203/206/343/203/274/343/202/270/343/203/263/343/202/260/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +1375 -1375
  149. package/lib/assets/docs/template/AWS/343/203/227/343/203/255/343/203/200/343/202/257/343/202/267/343/203/247/343/203/263/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +643 -643
  150. package/lib/assets/docs/template/README.md +59 -59
  151. package/lib/assets/docs/template/index.md +24 -24
  152. package/lib/assets/docs/template//343/201/276/343/201/232/343/201/223/343/202/214/343/202/222/350/252/255/343/202/202/343/201/206/343/203/252/343/202/271/343/203/210.md +21 -21
  153. package/lib/assets/docs/template//343/202/242/343/203/227/343/203/252/343/202/261/343/203/274/343/202/267/343/203/247/343/203/263/351/226/213/347/231/272/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +556 -556
  154. package/lib/assets/docs/template//343/202/244/343/203/206/343/203/254/343/203/274/343/202/267/343/203/247/343/203/263/345/256/214/344/272/206/345/240/261/345/221/212/346/233/270.md +68 -68
  155. package/lib/assets/docs/template//343/202/244/343/203/206/343/203/254/343/203/274/343/202/267/343/203/247/343/203/263/350/250/210/347/224/273.md +336 -336
  156. package/lib/assets/docs/template//343/202/244/343/203/263/343/202/273/343/203/227/343/202/267/343/203/247/343/203/263/343/203/207/343/203/203/343/202/255.md +22 -22
  157. package/lib/assets/docs/template//343/203/223/343/202/270/343/203/215/343/202/271/343/202/242/343/203/274/343/202/255/343/203/206/343/202/257/343/203/201/343/203/243.md +388 -388
  158. package/lib/assets/docs/template//343/203/252/343/203/252/343/203/274/343/202/271/345/256/214/344/272/206/345/240/261/345/221/212/346/233/270.md +284 -284
  159. package/lib/assets/docs/template//343/203/252/343/203/252/343/203/274/343/202/271/350/250/210/347/224/273.md +289 -289
  160. package/lib/assets/docs/template//344/272/213/344/276/213/345/210/206/346/236/220.md +522 -522
  161. package/lib/assets/docs/template//344/274/201/346/245/255/345/210/206/346/236/220.md +582 -582
  162. package/lib/assets/docs/template//345/256/214/345/205/250/345/275/242/345/274/217/343/201/256/343/203/246/343/203/274/343/202/271/343/202/261/343/203/274/343/202/271.md +69 -69
  163. package/lib/assets/docs/template//350/246/201/344/273/266/345/256/232/347/276/251.md +669 -669
  164. package/lib/assets/docs/template//350/250/255/350/250/210.md +183 -183
  165. package/lib/assets/docs/template//351/226/213/347/231/272/347/222/260/345/242/203/343/202/273/343/203/203/343/203/210/343/202/242/343/203/203/343/203/227/346/211/213/351/240/206/346/233/270.md +697 -697
  166. package/lib/assets/gulpfile.js +29 -29
  167. package/lib/assets/mkdocs.yml +147 -138
  168. package/lib/assets/ops/docker/sonarqube-local/docker-compose.yml +57 -57
  169. package/lib/assets/ops/scripts/journal.js +180 -180
  170. package/lib/assets/ops/scripts/mkdocs.js +82 -82
  171. package/lib/assets/ops/scripts/release.js +431 -431
  172. package/lib/assets/ops/scripts/sonar_local.js +726 -726
  173. package/lib/assets/ops/scripts/ssh.js +190 -190
  174. package/lib/assets/ops/scripts/vault.js +299 -299
  175. package/lib/assets/package-lock.json +1673 -1673
  176. package/lib/assets/package.json +45 -45
  177. package/lib/gulpfile.js +37 -37
  178. package/package.json +41 -41
  179. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/benchmark.json +0 -20
  180. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/benchmark.md +0 -13
  181. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/eval_metadata.json +0 -14
  182. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/grading.json +0 -39
  183. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/adr/001-db.md +0 -12
  184. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/adr/002-cache-strategy.md +0 -20
  185. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/adr/index.md +0 -4
  186. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/design/data-model.md +0 -12
  187. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/design/index.md +0 -3
  188. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/index.md +0 -10
  189. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/log.md +0 -7
  190. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/operation/deploy-old.md +0 -12
  191. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/operation/deploy.md +0 -12
  192. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/operation/index.md +0 -4
  193. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +0 -965
  194. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/report.md +0 -76
  195. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/grading.json +0 -39
  196. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/adr/001-db.md +0 -12
  197. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/adr/002-cache-strategy.md +0 -20
  198. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/adr/index.md +0 -4
  199. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/design/data-model.md +0 -12
  200. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/design/index.md +0 -3
  201. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/index.md +0 -10
  202. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/log.md +0 -7
  203. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/operation/deploy-old.md +0 -12
  204. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/operation/deploy.md +0 -12
  205. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/operation/index.md +0 -4
  206. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +0 -965
  207. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/report.md +0 -22
  208. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/eval_metadata.json +0 -13
  209. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/grading.json +0 -34
  210. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/adr/001-db.md +0 -12
  211. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/adr/002-cache-strategy.md +0 -11
  212. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/adr/index.md +0 -3
  213. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/design/data-model.md +0 -14
  214. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/design/index.md +0 -3
  215. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/index.md +0 -10
  216. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/log.md +0 -7
  217. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/operation/deploy-old.md +0 -12
  218. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/operation/deploy.md +0 -12
  219. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/operation/index.md +0 -4
  220. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +0 -965
  221. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/report.md +0 -61
  222. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/grading.json +0 -34
  223. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/adr/001-db.md +0 -12
  224. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/adr/002-cache-strategy.md +0 -11
  225. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/adr/index.md +0 -3
  226. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/design/data-model.md +0 -13
  227. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/design/index.md +0 -3
  228. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/index.md +0 -10
  229. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/log.md +0 -7
  230. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/operation/deploy-old.md +0 -12
  231. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/operation/deploy.md +0 -12
  232. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/operation/index.md +0 -4
  233. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +0 -965
  234. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/report.md +0 -18
  235. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/eval_metadata.json +0 -13
  236. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/grading.json +0 -34
  237. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/adr/001-db.md +0 -12
  238. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/adr/002-cache-strategy.md +0 -11
  239. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/adr/index.md +0 -3
  240. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/design/data-model.md +0 -12
  241. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/design/index.md +0 -3
  242. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/index.md +0 -10
  243. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/log.md +0 -7
  244. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/operation/deploy-old.md +0 -13
  245. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/operation/deploy.md +0 -12
  246. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/operation/index.md +0 -7
  247. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +0 -965
  248. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/report.md +0 -83
  249. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/grading.json +0 -34
  250. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/adr/001-db.md +0 -12
  251. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/adr/002-cache-strategy.md +0 -11
  252. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/adr/index.md +0 -3
  253. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/design/data-model.md +0 -12
  254. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/design/index.md +0 -3
  255. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/index.md +0 -10
  256. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/log.md +0 -7
  257. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/operation/deploy-old.md +0 -14
  258. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/operation/deploy.md +0 -12
  259. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/operation/index.md +0 -4
  260. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +0 -965
  261. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/report.md +0 -15
  262. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/review.html +0 -1325
  263. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/benchmark.json +0 -20
  264. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/benchmark.md +0 -13
  265. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/eval_metadata.json +0 -15
  266. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/grading.json +0 -44
  267. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/adr/index.md +0 -10
  268. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/index.md +0 -15
  269. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/log.md +0 -5
  270. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +0 -966
  271. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/reference/index.md +0 -6
  272. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/reference//343/202/210/343/201/204/343/202/275/343/203/225/343/203/210/343/202/246/343/202/247/343/202/242/343/201/250/343/201/257.md +0 -261
  273. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/reference//343/203/252/343/203/252/343/203/274/343/202/271/343/202/254/343/202/244/343/203/211.md +0 -480
  274. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/reference//347/222/260/345/242/203/345/244/211/346/225/260/347/256/241/347/220/206/343/202/254/343/202/244/343/203/211.md +0 -681
  275. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/report.md +0 -85
  276. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/grading.json +0 -44
  277. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/adr/index.md +0 -8
  278. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/index.md +0 -11
  279. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/log.md +0 -7
  280. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/reference/OKF/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211_V0.2.md +0 -964
  281. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/reference/index.md +0 -9
  282. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/reference//343/202/210/343/201/204/343/202/275/343/203/225/343/203/210/343/202/246/343/202/247/343/202/242/343/201/250/343/201/257.md +0 -250
  283. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/reference//343/203/252/343/203/252/343/203/274/343/202/271/343/202/254/343/202/244/343/203/211.md +0 -469
  284. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/reference//347/222/260/345/242/203/345/244/211/346/225/260/347/256/241/347/220/206/343/202/254/343/202/244/343/203/211.md +0 -677
  285. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/report.md +0 -49
  286. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/eval_metadata.json +0 -13
  287. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/grading.json +0 -34
  288. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/outputs/knowledge_after/index.md +0 -7
  289. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/outputs/knowledge_after/log.md +0 -7
  290. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/outputs/knowledge_after/metrics/churn.md +0 -9
  291. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/outputs/knowledge_after/metrics/income-statement.md +0 -15
  292. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/outputs/report.md +0 -147
  293. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/review.html +0 -1325
@@ -1,476 +1,476 @@
1
- ---
2
- type: Reference
3
- title: "TypeScript アプリケーション環境構築ガイド"
4
- description: "本ガイドは、TypeScript アプリケーション開発環境をゼロから構築し、ソフトウェア開発の三種の神器(バージョン管理、テスティング、自動化)を実践するための手順書です。"
5
- tags: [reference]
6
- status: stable
7
- generated: { by: human:kakimomokuri, at: 2026-01-17T02:53:38Z }
8
- stale_after: 2027-02-23T00:00:00Z
9
- ---
10
-
11
- # TypeScript アプリケーション環境構築ガイド
12
-
13
- ## 概要
14
-
15
- 本ガイドは、TypeScript アプリケーション開発環境をゼロから構築し、ソフトウェア開発の三種の神器(バージョン管理、テスティング、自動化)を実践するための手順書です。テスト駆動開発(TDD)により「動作するきれいなコード」を継続的に作成できる開発環境を整備します。
16
-
17
- ## 前提条件
18
-
19
- - Node.js 18 以降がインストールされていること
20
- - npm または yarn がインストールされていること
21
- - Git がインストールされていること
22
- - VS Code または WebStorm がインストールされていること(推奨)
23
-
24
- ## ソフトウェア開発の三種の神器
25
-
26
- ### 1. バージョン管理
27
-
28
- #### Git の基本設定
29
-
30
- ```bash
31
- # ユーザー設定
32
- git config --global user.name "Your Name"
33
- git config --global user.email "your.email@example.com"
34
-
35
- # リポジトリの初期化
36
- git init
37
-
38
- # .gitignore の作成
39
- echo "node_modules/" >> .gitignore
40
- echo "dist/" >> .gitignore
41
- echo "coverage/" >> .gitignore
42
- echo ".env" >> .gitignore
43
- echo ".DS_Store" >> .gitignore
44
- ```
45
-
46
- #### コミットメッセージ規約(Conventional Commits)
47
-
48
- ```text
49
- <タイプ>(<スコープ>): <タイトル>
50
- <空行>
51
- <ボディ>
52
- <空行>
53
- <フッタ>
54
- ```
55
-
56
- **タイプの種類:**
57
-
58
- - `feat`: 新機能の追加
59
- - `fix`: バグ修正
60
- - `docs`: ドキュメント変更のみ
61
- - `style`: コードに影響を与えない変更(フォーマット等)
62
- - `refactor`: 機能追加でもバグ修正でもないコード変更
63
- - `perf`: パフォーマンスを改善するコード変更
64
- - `test`: テストの追加や修正
65
- - `chore`: ビルドプロセスやツール、ライブラリの変更
66
-
67
- **例:**
68
- ```bash
69
- git commit -m 'feat: ユーザー認証機能を追加'
70
- git commit -m 'fix: ログイン時のバリデーションエラーを修正'
71
- git commit -m 'refactor: FizzBuzz クラスのメソッド抽出'
72
- ```
73
-
74
- ### 2. テスティング
75
-
76
- #### プロジェクトの初期化
77
-
78
- ```bash
79
- # プロジェクトの初期化
80
- npm init -y
81
-
82
- # TypeScript の設定
83
- npm install -D typescript @types/node
84
- npx tsc --init
85
- ```
86
-
87
- #### テストフレームワークのセットアップ
88
-
89
- ```bash
90
- # Vitest とテスト関連パッケージのインストール
91
- npm install -D vitest @vitest/coverage-v8 @types/node
92
- ```
93
-
94
- #### package.json の設定
95
-
96
- ```json
97
- {
98
- "name": "typescript-app",
99
- "private": true,
100
- "version": "0.0.0",
101
- "type": "module",
102
- "scripts": {
103
- "dev": "vite",
104
- "build": "tsc && vite build",
105
- "preview": "vite preview",
106
- "test": "vitest run",
107
- "test:watch": "vitest",
108
- "test:coverage": "vitest run --coverage",
109
- "lint": "eslint . --ext .ts,.tsx",
110
- "lint:fix": "eslint . --ext .ts,.tsx --fix",
111
- "format": "prettier --write .",
112
- "format:check": "prettier --check .",
113
- "gulp": "gulp",
114
- "watch": "gulp watch",
115
- "guard": "gulp guard",
116
- "check": "gulp checkAndFix",
117
- "commit": "git add . && git commit",
118
- "setup": "npm install && npm run check"
119
- }
120
- }
121
- ```
122
-
123
- #### テストの基本構造
124
-
125
- ```typescript
126
- // src/fizz-buzz.ts
127
- export class FizzBuzz {
128
- private static readonly MAX_NUMBER = 100
129
-
130
- public static generate(number: number): string {
131
- const isFizz = number % 3 === 0
132
- const isBuzz = number % 5 === 0
133
-
134
- if (isFizz && isBuzz) return 'FizzBuzz'
135
- if (isFizz) return 'Fizz'
136
- if (isBuzz) return 'Buzz'
137
-
138
- return number.toString()
139
- }
140
-
141
- public static generateList(): string[] {
142
- return Array.from({ length: this.MAX_NUMBER }, (_, i) => this.generate(i + 1))
143
- }
144
- }
145
- ```
146
-
147
- ```typescript
148
- // src/fizz-buzz.test.ts
149
- import { describe, it, expect } from 'vitest'
150
- import { FizzBuzz } from './fizz-buzz'
151
-
152
- describe('FizzBuzz', () => {
153
- describe('三の倍数の場合', () => {
154
- it('3を渡したら文字列Fizzを返す', () => {
155
- expect(FizzBuzz.generate(3)).toBe('Fizz')
156
- })
157
- })
158
-
159
- describe('五の倍数の場合', () => {
160
- it('5を渡したら文字列Buzzを返す', () => {
161
- expect(FizzBuzz.generate(5)).toBe('Buzz')
162
- })
163
- })
164
-
165
- describe('三と五の倍数の場合', () => {
166
- it('15を渡したら文字列FizzBuzzを返す', () => {
167
- expect(FizzBuzz.generate(15)).toBe('FizzBuzz')
168
- })
169
- })
170
- })
171
- ```
172
-
173
- #### TDD のサイクル
174
-
175
- ```bash
176
- # Red: 失敗するテストを書く
177
- npm run test
178
-
179
- # Green: テストを通す最小限の実装
180
- # コードを修正
181
-
182
- # Refactor: リファクタリング
183
- npm run test
184
-
185
- # コミット
186
- git add .
187
- git commit -m 'feat: FizzBuzz 基本機能を実装'
188
- ```
189
-
190
- ### 3. 自動化
191
-
192
- #### 静的コード解析(ESLint)
193
-
194
- ```bash
195
- # ESLint のインストール
196
- npm install -D eslint @typescript-eslint/parser @typescript-eslint/eslint-plugin eslint-config-prettier eslint-plugin-prettier
197
- ```
198
-
199
- #### eslint.config.js の設定
200
-
201
- ```javascript
202
- export default [
203
- {
204
- files: ['**/*.ts', '**/*.tsx'],
205
- languageOptions: {
206
- parser: '@typescript-eslint/parser',
207
- parserOptions: {
208
- ecmaVersion: 2020,
209
- sourceType: 'module'
210
- }
211
- },
212
- plugins: {
213
- '@typescript-eslint': require('@typescript-eslint/eslint-plugin'),
214
- 'prettier': require('eslint-plugin-prettier')
215
- },
216
- rules: {
217
- // 基本的なルール
218
- '@typescript-eslint/no-unused-vars': 'error',
219
- '@typescript-eslint/no-explicit-any': 'warn',
220
-
221
- // 循環的複雑度の制限(7以下を推奨)
222
- 'complexity': ['error', { max: 7 }],
223
-
224
- // Prettier 統合
225
- 'prettier/prettier': 'error'
226
- }
227
- },
228
- {
229
- files: ['**/*.test.{ts,tsx}'],
230
- rules: {
231
- '@typescript-eslint/no-unused-expressions': 'off',
232
- '@typescript-eslint/no-unused-vars': 'warn'
233
- }
234
- }
235
- ]
236
- ```
237
-
238
- #### コードフォーマッタ(Prettier)
239
-
240
- ```bash
241
- # Prettier のインストール
242
- npm install -D prettier eslint-config-prettier eslint-plugin-prettier
243
- ```
244
-
245
- #### .prettierrc の設定
246
-
247
- ```json
248
- {
249
- "semi": false,
250
- "singleQuote": true,
251
- "tabWidth": 2,
252
- "trailingComma": "es5",
253
- "printWidth": 100,
254
- "endOfLine": "lf"
255
- }
256
- ```
257
-
258
- #### コードカバレッジ
259
-
260
- Vitest に組み込まれたカバレッジ機能を使用:
261
-
262
- ```bash
263
- # カバレッジの実行
264
- npm run test:coverage
265
- ```
266
-
267
- #### vitest.config.ts の設定
268
-
269
- ```typescript
270
- import { defineConfig } from 'vitest/config'
271
-
272
- export default defineConfig({
273
- test: {
274
- coverage: {
275
- reporter: ['text', 'html', 'json'],
276
- reportsDirectory: 'coverage',
277
- exclude: [
278
- 'node_modules/**',
279
- 'dist/**',
280
- '**/*.test.ts',
281
- '**/*.config.js',
282
- '**/*.config.ts',
283
- 'src/main.ts'
284
- ],
285
- all: true,
286
- thresholds: {
287
- global: {
288
- branches: 80,
289
- functions: 80,
290
- lines: 80,
291
- statements: 80
292
- }
293
- }
294
- }
295
- }
296
- })
297
- ```
298
-
299
- #### タスクランナー(Gulp)
300
-
301
- ```bash
302
- # Gulp のインストール
303
- npm install -D gulp gulp-shell
304
- ```
305
-
306
- #### gulpfile.js の設定
307
-
308
- ```javascript
309
- import { watch, series } from 'gulp'
310
- import shell from 'gulp-shell'
311
-
312
- // 基本タスク
313
- export const test = shell.task(['npm run test'])
314
- export const coverage = shell.task(['npm run test:coverage'])
315
- export const lint = shell.task(['npm run lint'])
316
- export const lintFix = shell.task(['npm run lint:fix'])
317
- export const format = shell.task(['npm run format'])
318
- export const formatCheck = shell.task(['npm run format:check'])
319
- export const build = shell.task(['npm run build'])
320
- export const dev = shell.task(['npm run dev'])
321
-
322
- // 複合タスク
323
- export const checkAndFix = series(lintFix, format, test)
324
-
325
- // ファイル監視タスク(Guard機能)
326
- export function guard() {
327
- console.log('🔍 Guard is watching for file changes...')
328
- console.log('Files will be automatically linted, formatted, and tested on change.')
329
- watch('src/**/*.ts', series(lintFix, format, test))
330
- watch('**/*.test.ts', series(test))
331
- }
332
-
333
- // ファイル監視タスク
334
- export function watchFiles() {
335
- watch('src/**/*.ts', series(formatCheck, lint, test))
336
- watch('**/*.test.ts', series(test))
337
- }
338
-
339
- // デフォルトタスク
340
- export default series(checkAndFix, guard)
341
-
342
- // ウォッチタスクのエイリアス
343
- export { watchFiles as watch }
344
- ```
345
-
346
- ## 開発ワークフロー
347
-
348
- ### 1. 環境のセットアップ
349
-
350
- ```bash
351
- # プロジェクトの初期化
352
- npm init -y
353
-
354
- # 依存関係のインストール
355
- npm install
356
-
357
- # 初期チェック実行
358
- npm run setup
359
- ```
360
-
361
- ### 2. 開発の開始
362
-
363
- ```bash
364
- # Guard を起動(自動テスト・リント・フォーマット)
365
- npm run guard
366
-
367
- # 別ターミナルで開発サーバーを起動
368
- npm run dev
369
- ```
370
-
371
- ### 3. TDD サイクルの実践
372
-
373
- 1. **Red**: 失敗するテストを作成
374
- ```bash
375
- # テストファイル作成・編集
376
- # Guard が自動でテスト実行し、失敗を確認
377
- ```
378
-
379
- 2. **Green**: テストを通す最小限の実装
380
- ```bash
381
- # 実装コードを作成
382
- # Guard が自動でテスト実行し、成功を確認
383
- ```
384
-
385
- 3. **Refactor**: コードをリファクタリング
386
- ```bash
387
- # コードを改善
388
- # Guard が自動でリント・フォーマット・テスト実行
389
- ```
390
-
391
- 4. **Commit**: 作業をコミット
392
- ```bash
393
- git add .
394
- git commit -m 'feat: 新機能を実装'
395
- ```
396
-
397
- ### 4. 品質チェック
398
-
399
- ```bash
400
- # 全体的な品質チェック
401
- npm run check
402
-
403
- # カバレッジ確認
404
- npm run test:coverage
405
-
406
- # 静的解析
407
- npm run lint
408
-
409
- # フォーマットチェック
410
- npm run format:check
411
- ```
412
-
413
- ## ベストプラクティス
414
-
415
- ### 1. テスト戦略
416
-
417
- - **単体テスト**: 各機能の動作を検証
418
- - **統合テスト**: 複数のコンポーネント間の協調を検証
419
- - **E2E テスト**: ユーザーの視点から全体的な動作を検証
420
-
421
- ### 2. コード品質
422
-
423
- - **循環的複雑度**: 7以下を維持
424
- - **テストカバレッジ**: 80%以上を目標
425
- - **ESLint ルール**: プロジェクトに応じてカスタマイズ
426
-
427
- ### 3. 継続的改善
428
-
429
- - **定期的なリファクタリング**: 技術的負債の蓄積を防ぐ
430
- - **コードレビュー**: チーム全体のコード品質向上
431
- - **ツールのアップデート**: セキュリティと性能の維持
432
-
433
- ## トラブルシューティング
434
-
435
- ### よくある問題と解決法
436
-
437
- #### 1. テストが実行されない
438
-
439
- ```bash
440
- # node_modules を再インストール
441
- rm -rf node_modules package-lock.json
442
- npm install
443
-
444
- # キャッシュをクリア
445
- npm cache clean --force
446
- ```
447
-
448
- #### 2. ESLint エラーが発生
449
-
450
- ```bash
451
- # 自動修正を試行
452
- npm run lint:fix
453
-
454
- # 設定ファイルを確認
455
- cat eslint.config.js
456
- ```
457
-
458
- #### 3. TypeScript コンパイルエラー
459
-
460
- ```bash
461
- # TypeScript 設定を確認
462
- cat tsconfig.json
463
-
464
- # 型定義を再インストール
465
- npm install -D @types/node
466
- ```
467
-
468
- ## 参考資料
469
-
470
- - [Conventional Commits](https://www.conventionalcommits.org/ja/)
471
- - [Vitest 公式ドキュメント](https://vitest.dev/)
472
- - [ESLint 公式ドキュメント](https://eslint.org/)
473
- - [Prettier 公式ドキュメント](https://prettier.io/)
474
- - [TypeScript 公式ドキュメント](https://www.typescriptlang.org/)
475
-
476
- このガイドに従って環境を構築することで、効率的で品質の高い TypeScript アプリケーション開発が可能になります。
1
+ ---
2
+ type: Reference
3
+ title: "TypeScript アプリケーション環境構築ガイド"
4
+ description: "本ガイドは、TypeScript アプリケーション開発環境をゼロから構築し、ソフトウェア開発の三種の神器(バージョン管理、テスティング、自動化)を実践するための手順書です。"
5
+ tags: [reference]
6
+ status: stable
7
+ generated: { by: human:kakimomokuri, at: 2026-01-17T02:53:38Z }
8
+ stale_after: 2027-02-23T00:00:00Z
9
+ ---
10
+
11
+ # TypeScript アプリケーション環境構築ガイド
12
+
13
+ ## 概要
14
+
15
+ 本ガイドは、TypeScript アプリケーション開発環境をゼロから構築し、ソフトウェア開発の三種の神器(バージョン管理、テスティング、自動化)を実践するための手順書です。テスト駆動開発(TDD)により「動作するきれいなコード」を継続的に作成できる開発環境を整備します。
16
+
17
+ ## 前提条件
18
+
19
+ - Node.js 18 以降がインストールされていること
20
+ - npm または yarn がインストールされていること
21
+ - Git がインストールされていること
22
+ - VS Code または WebStorm がインストールされていること(推奨)
23
+
24
+ ## ソフトウェア開発の三種の神器
25
+
26
+ ### 1. バージョン管理
27
+
28
+ #### Git の基本設定
29
+
30
+ ```bash
31
+ # ユーザー設定
32
+ git config --global user.name "Your Name"
33
+ git config --global user.email "your.email@example.com"
34
+
35
+ # リポジトリの初期化
36
+ git init
37
+
38
+ # .gitignore の作成
39
+ echo "node_modules/" >> .gitignore
40
+ echo "dist/" >> .gitignore
41
+ echo "coverage/" >> .gitignore
42
+ echo ".env" >> .gitignore
43
+ echo ".DS_Store" >> .gitignore
44
+ ```
45
+
46
+ #### コミットメッセージ規約(Conventional Commits)
47
+
48
+ ```text
49
+ <タイプ>(<スコープ>): <タイトル>
50
+ <空行>
51
+ <ボディ>
52
+ <空行>
53
+ <フッタ>
54
+ ```
55
+
56
+ **タイプの種類:**
57
+
58
+ - `feat`: 新機能の追加
59
+ - `fix`: バグ修正
60
+ - `docs`: ドキュメント変更のみ
61
+ - `style`: コードに影響を与えない変更(フォーマット等)
62
+ - `refactor`: 機能追加でもバグ修正でもないコード変更
63
+ - `perf`: パフォーマンスを改善するコード変更
64
+ - `test`: テストの追加や修正
65
+ - `chore`: ビルドプロセスやツール、ライブラリの変更
66
+
67
+ **例:**
68
+ ```bash
69
+ git commit -m 'feat: ユーザー認証機能を追加'
70
+ git commit -m 'fix: ログイン時のバリデーションエラーを修正'
71
+ git commit -m 'refactor: FizzBuzz クラスのメソッド抽出'
72
+ ```
73
+
74
+ ### 2. テスティング
75
+
76
+ #### プロジェクトの初期化
77
+
78
+ ```bash
79
+ # プロジェクトの初期化
80
+ npm init -y
81
+
82
+ # TypeScript の設定
83
+ npm install -D typescript @types/node
84
+ npx tsc --init
85
+ ```
86
+
87
+ #### テストフレームワークのセットアップ
88
+
89
+ ```bash
90
+ # Vitest とテスト関連パッケージのインストール
91
+ npm install -D vitest @vitest/coverage-v8 @types/node
92
+ ```
93
+
94
+ #### package.json の設定
95
+
96
+ ```json
97
+ {
98
+ "name": "typescript-app",
99
+ "private": true,
100
+ "version": "0.0.0",
101
+ "type": "module",
102
+ "scripts": {
103
+ "dev": "vite",
104
+ "build": "tsc && vite build",
105
+ "preview": "vite preview",
106
+ "test": "vitest run",
107
+ "test:watch": "vitest",
108
+ "test:coverage": "vitest run --coverage",
109
+ "lint": "eslint . --ext .ts,.tsx",
110
+ "lint:fix": "eslint . --ext .ts,.tsx --fix",
111
+ "format": "prettier --write .",
112
+ "format:check": "prettier --check .",
113
+ "gulp": "gulp",
114
+ "watch": "gulp watch",
115
+ "guard": "gulp guard",
116
+ "check": "gulp checkAndFix",
117
+ "commit": "git add . && git commit",
118
+ "setup": "npm install && npm run check"
119
+ }
120
+ }
121
+ ```
122
+
123
+ #### テストの基本構造
124
+
125
+ ```typescript
126
+ // src/fizz-buzz.ts
127
+ export class FizzBuzz {
128
+ private static readonly MAX_NUMBER = 100
129
+
130
+ public static generate(number: number): string {
131
+ const isFizz = number % 3 === 0
132
+ const isBuzz = number % 5 === 0
133
+
134
+ if (isFizz && isBuzz) return 'FizzBuzz'
135
+ if (isFizz) return 'Fizz'
136
+ if (isBuzz) return 'Buzz'
137
+
138
+ return number.toString()
139
+ }
140
+
141
+ public static generateList(): string[] {
142
+ return Array.from({ length: this.MAX_NUMBER }, (_, i) => this.generate(i + 1))
143
+ }
144
+ }
145
+ ```
146
+
147
+ ```typescript
148
+ // src/fizz-buzz.test.ts
149
+ import { describe, it, expect } from 'vitest'
150
+ import { FizzBuzz } from './fizz-buzz'
151
+
152
+ describe('FizzBuzz', () => {
153
+ describe('三の倍数の場合', () => {
154
+ it('3を渡したら文字列Fizzを返す', () => {
155
+ expect(FizzBuzz.generate(3)).toBe('Fizz')
156
+ })
157
+ })
158
+
159
+ describe('五の倍数の場合', () => {
160
+ it('5を渡したら文字列Buzzを返す', () => {
161
+ expect(FizzBuzz.generate(5)).toBe('Buzz')
162
+ })
163
+ })
164
+
165
+ describe('三と五の倍数の場合', () => {
166
+ it('15を渡したら文字列FizzBuzzを返す', () => {
167
+ expect(FizzBuzz.generate(15)).toBe('FizzBuzz')
168
+ })
169
+ })
170
+ })
171
+ ```
172
+
173
+ #### TDD のサイクル
174
+
175
+ ```bash
176
+ # Red: 失敗するテストを書く
177
+ npm run test
178
+
179
+ # Green: テストを通す最小限の実装
180
+ # コードを修正
181
+
182
+ # Refactor: リファクタリング
183
+ npm run test
184
+
185
+ # コミット
186
+ git add .
187
+ git commit -m 'feat: FizzBuzz 基本機能を実装'
188
+ ```
189
+
190
+ ### 3. 自動化
191
+
192
+ #### 静的コード解析(ESLint)
193
+
194
+ ```bash
195
+ # ESLint のインストール
196
+ npm install -D eslint @typescript-eslint/parser @typescript-eslint/eslint-plugin eslint-config-prettier eslint-plugin-prettier
197
+ ```
198
+
199
+ #### eslint.config.js の設定
200
+
201
+ ```javascript
202
+ export default [
203
+ {
204
+ files: ['**/*.ts', '**/*.tsx'],
205
+ languageOptions: {
206
+ parser: '@typescript-eslint/parser',
207
+ parserOptions: {
208
+ ecmaVersion: 2020,
209
+ sourceType: 'module'
210
+ }
211
+ },
212
+ plugins: {
213
+ '@typescript-eslint': require('@typescript-eslint/eslint-plugin'),
214
+ 'prettier': require('eslint-plugin-prettier')
215
+ },
216
+ rules: {
217
+ // 基本的なルール
218
+ '@typescript-eslint/no-unused-vars': 'error',
219
+ '@typescript-eslint/no-explicit-any': 'warn',
220
+
221
+ // 循環的複雑度の制限(7以下を推奨)
222
+ 'complexity': ['error', { max: 7 }],
223
+
224
+ // Prettier 統合
225
+ 'prettier/prettier': 'error'
226
+ }
227
+ },
228
+ {
229
+ files: ['**/*.test.{ts,tsx}'],
230
+ rules: {
231
+ '@typescript-eslint/no-unused-expressions': 'off',
232
+ '@typescript-eslint/no-unused-vars': 'warn'
233
+ }
234
+ }
235
+ ]
236
+ ```
237
+
238
+ #### コードフォーマッタ(Prettier)
239
+
240
+ ```bash
241
+ # Prettier のインストール
242
+ npm install -D prettier eslint-config-prettier eslint-plugin-prettier
243
+ ```
244
+
245
+ #### .prettierrc の設定
246
+
247
+ ```json
248
+ {
249
+ "semi": false,
250
+ "singleQuote": true,
251
+ "tabWidth": 2,
252
+ "trailingComma": "es5",
253
+ "printWidth": 100,
254
+ "endOfLine": "lf"
255
+ }
256
+ ```
257
+
258
+ #### コードカバレッジ
259
+
260
+ Vitest に組み込まれたカバレッジ機能を使用:
261
+
262
+ ```bash
263
+ # カバレッジの実行
264
+ npm run test:coverage
265
+ ```
266
+
267
+ #### vitest.config.ts の設定
268
+
269
+ ```typescript
270
+ import { defineConfig } from 'vitest/config'
271
+
272
+ export default defineConfig({
273
+ test: {
274
+ coverage: {
275
+ reporter: ['text', 'html', 'json'],
276
+ reportsDirectory: 'coverage',
277
+ exclude: [
278
+ 'node_modules/**',
279
+ 'dist/**',
280
+ '**/*.test.ts',
281
+ '**/*.config.js',
282
+ '**/*.config.ts',
283
+ 'src/main.ts'
284
+ ],
285
+ all: true,
286
+ thresholds: {
287
+ global: {
288
+ branches: 80,
289
+ functions: 80,
290
+ lines: 80,
291
+ statements: 80
292
+ }
293
+ }
294
+ }
295
+ }
296
+ })
297
+ ```
298
+
299
+ #### タスクランナー(Gulp)
300
+
301
+ ```bash
302
+ # Gulp のインストール
303
+ npm install -D gulp gulp-shell
304
+ ```
305
+
306
+ #### gulpfile.js の設定
307
+
308
+ ```javascript
309
+ import { watch, series } from 'gulp'
310
+ import shell from 'gulp-shell'
311
+
312
+ // 基本タスク
313
+ export const test = shell.task(['npm run test'])
314
+ export const coverage = shell.task(['npm run test:coverage'])
315
+ export const lint = shell.task(['npm run lint'])
316
+ export const lintFix = shell.task(['npm run lint:fix'])
317
+ export const format = shell.task(['npm run format'])
318
+ export const formatCheck = shell.task(['npm run format:check'])
319
+ export const build = shell.task(['npm run build'])
320
+ export const dev = shell.task(['npm run dev'])
321
+
322
+ // 複合タスク
323
+ export const checkAndFix = series(lintFix, format, test)
324
+
325
+ // ファイル監視タスク(Guard機能)
326
+ export function guard() {
327
+ console.log('🔍 Guard is watching for file changes...')
328
+ console.log('Files will be automatically linted, formatted, and tested on change.')
329
+ watch('src/**/*.ts', series(lintFix, format, test))
330
+ watch('**/*.test.ts', series(test))
331
+ }
332
+
333
+ // ファイル監視タスク
334
+ export function watchFiles() {
335
+ watch('src/**/*.ts', series(formatCheck, lint, test))
336
+ watch('**/*.test.ts', series(test))
337
+ }
338
+
339
+ // デフォルトタスク
340
+ export default series(checkAndFix, guard)
341
+
342
+ // ウォッチタスクのエイリアス
343
+ export { watchFiles as watch }
344
+ ```
345
+
346
+ ## 開発ワークフロー
347
+
348
+ ### 1. 環境のセットアップ
349
+
350
+ ```bash
351
+ # プロジェクトの初期化
352
+ npm init -y
353
+
354
+ # 依存関係のインストール
355
+ npm install
356
+
357
+ # 初期チェック実行
358
+ npm run setup
359
+ ```
360
+
361
+ ### 2. 開発の開始
362
+
363
+ ```bash
364
+ # Guard を起動(自動テスト・リント・フォーマット)
365
+ npm run guard
366
+
367
+ # 別ターミナルで開発サーバーを起動
368
+ npm run dev
369
+ ```
370
+
371
+ ### 3. TDD サイクルの実践
372
+
373
+ 1. **Red**: 失敗するテストを作成
374
+ ```bash
375
+ # テストファイル作成・編集
376
+ # Guard が自動でテスト実行し、失敗を確認
377
+ ```
378
+
379
+ 2. **Green**: テストを通す最小限の実装
380
+ ```bash
381
+ # 実装コードを作成
382
+ # Guard が自動でテスト実行し、成功を確認
383
+ ```
384
+
385
+ 3. **Refactor**: コードをリファクタリング
386
+ ```bash
387
+ # コードを改善
388
+ # Guard が自動でリント・フォーマット・テスト実行
389
+ ```
390
+
391
+ 4. **Commit**: 作業をコミット
392
+ ```bash
393
+ git add .
394
+ git commit -m 'feat: 新機能を実装'
395
+ ```
396
+
397
+ ### 4. 品質チェック
398
+
399
+ ```bash
400
+ # 全体的な品質チェック
401
+ npm run check
402
+
403
+ # カバレッジ確認
404
+ npm run test:coverage
405
+
406
+ # 静的解析
407
+ npm run lint
408
+
409
+ # フォーマットチェック
410
+ npm run format:check
411
+ ```
412
+
413
+ ## ベストプラクティス
414
+
415
+ ### 1. テスト戦略
416
+
417
+ - **単体テスト**: 各機能の動作を検証
418
+ - **統合テスト**: 複数のコンポーネント間の協調を検証
419
+ - **E2E テスト**: ユーザーの視点から全体的な動作を検証
420
+
421
+ ### 2. コード品質
422
+
423
+ - **循環的複雑度**: 7以下を維持
424
+ - **テストカバレッジ**: 80%以上を目標
425
+ - **ESLint ルール**: プロジェクトに応じてカスタマイズ
426
+
427
+ ### 3. 継続的改善
428
+
429
+ - **定期的なリファクタリング**: 技術的負債の蓄積を防ぐ
430
+ - **コードレビュー**: チーム全体のコード品質向上
431
+ - **ツールのアップデート**: セキュリティと性能の維持
432
+
433
+ ## トラブルシューティング
434
+
435
+ ### よくある問題と解決法
436
+
437
+ #### 1. テストが実行されない
438
+
439
+ ```bash
440
+ # node_modules を再インストール
441
+ rm -rf node_modules package-lock.json
442
+ npm install
443
+
444
+ # キャッシュをクリア
445
+ npm cache clean --force
446
+ ```
447
+
448
+ #### 2. ESLint エラーが発生
449
+
450
+ ```bash
451
+ # 自動修正を試行
452
+ npm run lint:fix
453
+
454
+ # 設定ファイルを確認
455
+ cat eslint.config.js
456
+ ```
457
+
458
+ #### 3. TypeScript コンパイルエラー
459
+
460
+ ```bash
461
+ # TypeScript 設定を確認
462
+ cat tsconfig.json
463
+
464
+ # 型定義を再インストール
465
+ npm install -D @types/node
466
+ ```
467
+
468
+ ## 参考資料
469
+
470
+ - [Conventional Commits](https://www.conventionalcommits.org/ja/)
471
+ - [Vitest 公式ドキュメント](https://vitest.dev/)
472
+ - [ESLint 公式ドキュメント](https://eslint.org/)
473
+ - [Prettier 公式ドキュメント](https://prettier.io/)
474
+ - [TypeScript 公式ドキュメント](https://www.typescriptlang.org/)
475
+
476
+ このガイドに従って環境を構築することで、効率的で品質の高い TypeScript アプリケーション開発が可能になります。