@k2works/claude-code-booster 6.4.0 → 6.5.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 (297) 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/apply-okf-workspace/iteration-1/benchmark.json +20 -0
  33. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/benchmark.md +13 -0
  34. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/eval_metadata.json +14 -0
  35. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/grading.json +39 -0
  36. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/adr/001-db.md +12 -0
  37. 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 +20 -0
  38. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/adr/index.md +4 -0
  39. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/design/data-model.md +12 -0
  40. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/design/index.md +3 -0
  41. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/index.md +10 -0
  42. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/log.md +7 -0
  43. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/operation/deploy-old.md +12 -0
  44. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/operation/deploy.md +12 -0
  45. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/docs_after/operation/index.md +4 -0
  46. 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 +965 -0
  47. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/with_skill/outputs/report.md +76 -0
  48. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/grading.json +39 -0
  49. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/adr/001-db.md +12 -0
  50. 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 +20 -0
  51. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/adr/index.md +4 -0
  52. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/design/data-model.md +12 -0
  53. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/design/index.md +3 -0
  54. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/index.md +10 -0
  55. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/log.md +7 -0
  56. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/operation/deploy-old.md +12 -0
  57. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/operation/deploy.md +12 -0
  58. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/docs_after/operation/index.md +4 -0
  59. 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 +965 -0
  60. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-1-register-new-adr/without_skill/outputs/report.md +22 -0
  61. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/eval_metadata.json +13 -0
  62. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/grading.json +34 -0
  63. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/adr/001-db.md +12 -0
  64. 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 +11 -0
  65. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/adr/index.md +3 -0
  66. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/design/data-model.md +14 -0
  67. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/design/index.md +3 -0
  68. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/index.md +10 -0
  69. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/log.md +7 -0
  70. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/operation/deploy-old.md +12 -0
  71. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/operation/deploy.md +12 -0
  72. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/docs_after/operation/index.md +4 -0
  73. 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 +965 -0
  74. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/with_skill/outputs/report.md +61 -0
  75. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/grading.json +34 -0
  76. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/adr/001-db.md +12 -0
  77. 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 +11 -0
  78. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/adr/index.md +3 -0
  79. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/design/data-model.md +13 -0
  80. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/design/index.md +3 -0
  81. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/index.md +10 -0
  82. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/log.md +7 -0
  83. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/operation/deploy-old.md +12 -0
  84. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/operation/deploy.md +12 -0
  85. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/docs_after/operation/index.md +4 -0
  86. 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 +965 -0
  87. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-2-verify-reviewed-doc/without_skill/outputs/report.md +18 -0
  88. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/eval_metadata.json +13 -0
  89. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/grading.json +34 -0
  90. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/adr/001-db.md +12 -0
  91. 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 +11 -0
  92. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/adr/index.md +3 -0
  93. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/design/data-model.md +12 -0
  94. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/design/index.md +3 -0
  95. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/index.md +10 -0
  96. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/log.md +7 -0
  97. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/operation/deploy-old.md +13 -0
  98. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/operation/deploy.md +12 -0
  99. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/docs_after/operation/index.md +7 -0
  100. 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 +965 -0
  101. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/with_skill/outputs/report.md +83 -0
  102. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/grading.json +34 -0
  103. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/adr/001-db.md +12 -0
  104. 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 +11 -0
  105. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/adr/index.md +3 -0
  106. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/design/data-model.md +12 -0
  107. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/design/index.md +3 -0
  108. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/index.md +10 -0
  109. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/log.md +7 -0
  110. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/operation/deploy-old.md +14 -0
  111. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/operation/deploy.md +12 -0
  112. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/docs_after/operation/index.md +4 -0
  113. 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 +965 -0
  114. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/eval-3-deprecate-replaced-doc/without_skill/outputs/report.md +15 -0
  115. package/lib/assets/.claude/skills/apply-okf-workspace/iteration-1/review.html +1325 -0
  116. package/lib/assets/.claude/skills/closing-iteration/SKILL.md +176 -176
  117. package/lib/assets/.claude/skills/creating-adr/SKILL.md +117 -117
  118. package/lib/assets/.claude/skills/creating-development-strategy/SKILL.md +187 -151
  119. package/lib/assets/.claude/skills/creating-iteration-report/SKILL.md +210 -210
  120. package/lib/assets/.claude/skills/creating-journal/SKILL.md +140 -140
  121. package/lib/assets/.claude/skills/creating-manual/SKILL.md +199 -199
  122. package/lib/assets/.claude/skills/creating-release-report/SKILL.md +161 -161
  123. package/lib/assets/.claude/skills/creating-slides/SKILL.md +86 -86
  124. package/lib/assets/.claude/skills/creating-slides/agents/openai.yaml +4 -4
  125. package/lib/assets/.claude/skills/creating-slides/references/manga-css.md +45 -45
  126. package/lib/assets/.claude/skills/creating-slides/scripts/slide_tools.py +239 -239
  127. package/lib/assets/.claude/skills/developing-backend/SKILL.md +138 -100
  128. package/lib/assets/.claude/skills/developing-frontend/SKILL.md +131 -93
  129. package/lib/assets/.claude/skills/developing-release/SKILL.md +120 -120
  130. package/lib/assets/.claude/skills/developing-review/SKILL.md +175 -175
  131. package/lib/assets/.claude/skills/developing-uiux-review/SKILL.md +207 -207
  132. package/lib/assets/.claude/skills/generating-bmc/SKILL.md +123 -123
  133. package/lib/assets/.claude/skills/generating-slides/SKILL.md +94 -94
  134. package/lib/assets/.claude/skills/git-commit/SKILL.md +81 -81
  135. package/lib/assets/.claude/skills/killing-processes/SKILL.md +44 -44
  136. package/lib/assets/.claude/skills/migrating-ai-dlc/evals/evals.json +59 -59
  137. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/benchmark.json +20 -0
  138. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/benchmark.md +13 -0
  139. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/eval_metadata.json +15 -0
  140. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/grading.json +44 -0
  141. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/adr/index.md +10 -0
  142. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/index.md +15 -0
  143. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/log.md +5 -0
  144. 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 +966 -0
  145. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/docs_after/reference/index.md +6 -0
  146. 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 +261 -0
  147. 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 +480 -0
  148. 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 +681 -0
  149. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/with_skill/outputs/report.md +85 -0
  150. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/grading.json +44 -0
  151. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/adr/index.md +8 -0
  152. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/index.md +11 -0
  153. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/log.md +7 -0
  154. 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 +964 -0
  155. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/docs_after/reference/index.md +9 -0
  156. 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 +250 -0
  157. 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 +469 -0
  158. 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 +677 -0
  159. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-1-migrate-docs/without_skill/outputs/report.md +49 -0
  160. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/eval_metadata.json +13 -0
  161. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/grading.json +34 -0
  162. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/outputs/knowledge_after/index.md +7 -0
  163. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/outputs/knowledge_after/log.md +7 -0
  164. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/outputs/knowledge_after/metrics/churn.md +9 -0
  165. 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 +15 -0
  166. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/eval-2-upgrade-v01-to-v02/with_skill/outputs/report.md +147 -0
  167. package/lib/assets/.claude/skills/migrating-okf-workspace/iteration-1/review.html +1325 -0
  168. package/lib/assets/.claude/skills/opening-iteration/SKILL.md +124 -124
  169. package/lib/assets/.claude/skills/operating-backup/SKILL.md +59 -59
  170. package/lib/assets/.claude/skills/operating-cicd/SKILL.md +54 -54
  171. package/lib/assets/.claude/skills/operating-deploy/SKILL.md +67 -67
  172. package/lib/assets/.claude/skills/operating-docs/SKILL.md +219 -219
  173. package/lib/assets/.claude/skills/operating-provision/SKILL.md +77 -77
  174. package/lib/assets/.claude/skills/operating-qt/SKILL.md +147 -147
  175. package/lib/assets/.claude/skills/operating-review/SKILL.md +171 -171
  176. package/lib/assets/.claude/skills/operating-script/SKILL.md +145 -145
  177. package/lib/assets/.claude/skills/operating-setup/SKILL.md +63 -63
  178. package/lib/assets/.claude/skills/orchestrating-analysis/SKILL.md +110 -110
  179. package/lib/assets/.claude/skills/orchestrating-development/SKILL.md +208 -172
  180. package/lib/assets/.claude/skills/orchestrating-operation/SKILL.md +161 -161
  181. package/lib/assets/.claude/skills/orchestrating-project/SKILL.md +149 -149
  182. package/lib/assets/.claude/skills/planning-releases/SKILL.md +121 -121
  183. package/lib/assets/.claude/skills/practicing-getting-start-tdd/SKILL.md +262 -262
  184. package/lib/assets/.claude/skills/syncing-github-project/SKILL.md +151 -151
  185. package/lib/assets/.claude/skills/tracking-progress/SKILL.md +91 -91
  186. package/lib/assets/.claude/skills/validating-design/SKILL.md +130 -130
  187. package/lib/assets/.claude/skills/validating-iteration-plan/SKILL.md +238 -238
  188. package/lib/assets/.claude/skills/validating-operating-setup/SKILL.md +118 -118
  189. package/lib/assets/.devcontainer/devcontainer.json +37 -37
  190. package/lib/assets/.env.example +32 -32
  191. package/lib/assets/.gitattributes +4 -4
  192. package/lib/assets/.github/workflows/docker-publish.yml +77 -77
  193. package/lib/assets/.github/workflows/mkdocs.yml +39 -39
  194. package/lib/assets/AGENTS.md +102 -102
  195. package/lib/assets/README.md +304 -304
  196. package/lib/assets/docker-compose.yml +33 -33
  197. package/lib/assets/docs/adr/index.md +10 -10
  198. package/lib/assets/docs/article/index.md +1 -0
  199. package/lib/assets/docs/assets/css/extra.css +29 -29
  200. package/lib/assets/docs/assets/js/extra.js +48 -48
  201. package/lib/assets/docs/assets/js/mathjax.js +27 -27
  202. package/lib/assets/docs/design/index.md +44 -44
  203. package/lib/assets/docs/development/index.md +39 -39
  204. package/lib/assets/docs/index.md +37 -37
  205. package/lib/assets/docs/log.md +28 -28
  206. package/lib/assets/docs/operation/index.md +41 -41
  207. package/lib/assets/docs/reference/BDD/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211.md +766 -766
  208. 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
  209. 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
  210. 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
  211. package/lib/assets/docs/reference/LivingDocumentation/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211.md +400 -0
  212. 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
  213. 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
  214. 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
  215. package/lib/assets/docs/reference/UI/350/250/255/350/250/210/343/202/254/343/202/244/343/203/211.md +460 -460
  216. 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
  217. package/lib/assets/docs/reference/images/Ansoff.drawio.svg +3 -3
  218. package/lib/assets/docs/reference/images/BMC.drawio.svg +3 -3
  219. package/lib/assets/docs/reference/images/BrandBasicStrategy.drawio.svg +3 -3
  220. package/lib/assets/docs/reference/images/BrandCategorization.drawio.svg +3 -3
  221. package/lib/assets/docs/reference/images/BrandRecurutementStrategy.drawio.svg +3 -3
  222. package/lib/assets/docs/reference/images/BrandValue.drawio.svg +3 -3
  223. package/lib/assets/docs/reference/images/BusinessActivitiy.svg +3 -3
  224. package/lib/assets/docs/reference/images/HRM.drawio.svg +3 -3
  225. package/lib/assets/docs/reference/images/MarketingStructure.drawio.svg +3 -3
  226. package/lib/assets/docs/reference/images/OrganizationElemnts.svg +3 -3
  227. package/lib/assets/docs/reference/images/PPM.drawio.svg +3 -3
  228. package/lib/assets/docs/reference/images/PositioningMap.drawio.svg +3 -3
  229. package/lib/assets/docs/reference/images/ProductLayer.drawio.svg +3 -3
  230. package/lib/assets/docs/reference/images/ProductMix.drawio.svg +3 -3
  231. package/lib/assets/docs/reference/images/SWOT.drawio.svg +3 -3
  232. package/lib/assets/docs/reference/images/TargetMarket.drawio.svg +3 -3
  233. package/lib/assets/docs/reference/images/ThreeGenericStrategies.drawio.svg +3 -3
  234. package/lib/assets/docs/reference/images/VRIO.drawio.svg +3 -3
  235. package/lib/assets/docs/reference/images/ValueChain.drawio.svg +3 -3
  236. package/lib/assets/docs/reference/index.md +66 -62
  237. 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
  238. package/lib/assets/docs/reference//343/202/242/343/203/216/343/203/206/343/203/274/343/202/267/343/203/247/343/203/263/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211.md +268 -0
  239. 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
  240. 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
  241. 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
  242. package/lib/assets/docs/reference//343/202/254/343/202/244/343/203/211/343/203/204/343/202/242/343/203/274/343/203/273/343/202/265/343/202/244/343/203/210/343/202/267/343/203/274/343/202/244/343/203/263/343/202/260/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211.md +192 -0
  243. 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
  244. package/lib/assets/docs/reference//343/203/200/343/202/244/343/203/212/343/203/237/343/203/203/343/202/257/343/202/255/343/203/245/343/203/254/343/203/274/343/202/267/343/203/247/343/203/263/345/260/216/345/205/245/343/202/254/343/202/244/343/203/211.md +191 -0
  245. 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
  246. 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
  247. 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
  248. 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
  249. 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
  250. 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
  251. 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
  252. 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
  253. package/lib/assets/docs/reference//344/274/201/346/245/255/347/265/214/345/226/266/350/253/226.md +2647 -2647
  254. 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
  255. 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
  256. 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
  257. 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
  258. package/lib/assets/docs/reference//351/201/213/345/226/266/347/256/241/347/220/206.md +1492 -1492
  259. 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
  260. 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
  261. package/lib/assets/docs/reference//351/226/213/347/231/272/343/202/254/343/202/244/343/203/211.md +314 -314
  262. 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
  263. package/lib/assets/docs/requirements/index.md +17 -17
  264. package/lib/assets/docs/review/index.md +5 -5
  265. package/lib/assets/docs/strategy/index.md +17 -17
  266. package/lib/assets/docs/template/ADR.md +39 -39
  267. 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
  268. 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
  269. package/lib/assets/docs/template/README.md +59 -59
  270. package/lib/assets/docs/template/index.md +24 -24
  271. 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
  272. 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
  273. 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
  274. 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
  275. 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
  276. 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
  277. 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
  278. 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
  279. package/lib/assets/docs/template//344/272/213/344/276/213/345/210/206/346/236/220.md +522 -522
  280. package/lib/assets/docs/template//344/274/201/346/245/255/345/210/206/346/236/220.md +582 -582
  281. 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
  282. package/lib/assets/docs/template//350/246/201/344/273/266/345/256/232/347/276/251.md +669 -669
  283. package/lib/assets/docs/template//350/250/255/350/250/210.md +183 -183
  284. 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
  285. package/lib/assets/gulpfile.js +29 -29
  286. package/lib/assets/mkdocs.yml +151 -147
  287. package/lib/assets/ops/docker/sonarqube-local/docker-compose.yml +57 -57
  288. package/lib/assets/ops/scripts/journal.js +180 -180
  289. package/lib/assets/ops/scripts/mkdocs.js +82 -82
  290. package/lib/assets/ops/scripts/release.js +431 -431
  291. package/lib/assets/ops/scripts/sonar_local.js +726 -726
  292. package/lib/assets/ops/scripts/ssh.js +190 -190
  293. package/lib/assets/ops/scripts/vault.js +299 -299
  294. package/lib/assets/package-lock.json +1673 -1673
  295. package/lib/assets/package.json +45 -45
  296. package/lib/gulpfile.js +37 -37
  297. package/package.json +41 -41
@@ -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 アプリケーション開発が可能になります。