@sk8metal/michi-cli 0.0.8 → 0.1.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 (433) hide show
  1. package/CHANGELOG.md +60 -0
  2. package/README.md +420 -49
  3. package/dist/scripts/__tests__/create-project.test.js +24 -28
  4. package/dist/scripts/__tests__/create-project.test.js.map +1 -1
  5. package/dist/scripts/__tests__/jira-transitions.test.d.ts +5 -0
  6. package/dist/scripts/__tests__/jira-transitions.test.d.ts.map +1 -0
  7. package/dist/scripts/__tests__/jira-transitions.test.js +172 -0
  8. package/dist/scripts/__tests__/jira-transitions.test.js.map +1 -0
  9. package/dist/scripts/__tests__/multi-project-estimate.test.js +14 -15
  10. package/dist/scripts/__tests__/multi-project-estimate.test.js.map +1 -1
  11. package/dist/scripts/__tests__/setup-existing-project.test.js +146 -5
  12. package/dist/scripts/__tests__/setup-existing-project.test.js.map +1 -1
  13. package/dist/scripts/__tests__/setup-interactive.test.js +23 -17
  14. package/dist/scripts/__tests__/setup-interactive.test.js.map +1 -1
  15. package/dist/scripts/__tests__/spec-impl-workflow.test.d.ts +5 -0
  16. package/dist/scripts/__tests__/spec-impl-workflow.test.d.ts.map +1 -0
  17. package/dist/scripts/__tests__/spec-impl-workflow.test.js +321 -0
  18. package/dist/scripts/__tests__/spec-impl-workflow.test.js.map +1 -0
  19. package/dist/scripts/__tests__/spec-loader.test.d.ts +5 -0
  20. package/dist/scripts/__tests__/spec-loader.test.d.ts.map +1 -0
  21. package/dist/scripts/__tests__/spec-loader.test.js +153 -0
  22. package/dist/scripts/__tests__/spec-loader.test.js.map +1 -0
  23. package/dist/scripts/__tests__/validate-phase.test.js +26 -22
  24. package/dist/scripts/__tests__/validate-phase.test.js.map +1 -1
  25. package/dist/scripts/config/config-schema.d.ts +17 -0
  26. package/dist/scripts/config/config-schema.d.ts.map +1 -1
  27. package/dist/scripts/config/config-schema.js +55 -26
  28. package/dist/scripts/config/config-schema.js.map +1 -1
  29. package/dist/scripts/config-interactive.d.ts.map +1 -1
  30. package/dist/scripts/config-interactive.js +53 -38
  31. package/dist/scripts/config-interactive.js.map +1 -1
  32. package/dist/scripts/confluence-sync.d.ts.map +1 -1
  33. package/dist/scripts/confluence-sync.js +0 -11
  34. package/dist/scripts/confluence-sync.js.map +1 -1
  35. package/dist/scripts/constants/__tests__/environments.test.d.ts +2 -0
  36. package/dist/scripts/constants/__tests__/environments.test.d.ts.map +1 -0
  37. package/dist/scripts/constants/__tests__/environments.test.js +125 -0
  38. package/dist/scripts/constants/__tests__/environments.test.js.map +1 -0
  39. package/dist/scripts/constants/__tests__/languages.test.d.ts +2 -0
  40. package/dist/scripts/constants/__tests__/languages.test.d.ts.map +1 -0
  41. package/dist/scripts/constants/__tests__/languages.test.js +82 -0
  42. package/dist/scripts/constants/__tests__/languages.test.js.map +1 -0
  43. package/dist/scripts/constants/environments.d.ts +33 -0
  44. package/dist/scripts/constants/environments.d.ts.map +1 -0
  45. package/dist/scripts/constants/environments.js +64 -0
  46. package/dist/scripts/constants/environments.js.map +1 -0
  47. package/dist/scripts/constants/languages.d.ts +23 -0
  48. package/dist/scripts/constants/languages.d.ts.map +1 -0
  49. package/dist/scripts/constants/languages.js +53 -0
  50. package/dist/scripts/constants/languages.js.map +1 -0
  51. package/dist/scripts/constants/test-commands.d.ts +36 -0
  52. package/dist/scripts/constants/test-commands.d.ts.map +1 -0
  53. package/dist/scripts/constants/test-commands.js +70 -0
  54. package/dist/scripts/constants/test-commands.js.map +1 -0
  55. package/dist/scripts/create-project.d.ts +4 -0
  56. package/dist/scripts/create-project.d.ts.map +1 -1
  57. package/dist/scripts/create-project.js +51 -22
  58. package/dist/scripts/create-project.js.map +1 -1
  59. package/dist/scripts/jira-sync.d.ts +89 -3
  60. package/dist/scripts/jira-sync.d.ts.map +1 -1
  61. package/dist/scripts/jira-sync.js +366 -96
  62. package/dist/scripts/jira-sync.js.map +1 -1
  63. package/dist/scripts/markdown-to-confluence.js +1 -1
  64. package/dist/scripts/markdown-to-confluence.js.map +1 -1
  65. package/dist/scripts/phase-runner.d.ts +1 -1
  66. package/dist/scripts/phase-runner.d.ts.map +1 -1
  67. package/dist/scripts/phase-runner.js +809 -13
  68. package/dist/scripts/phase-runner.js.map +1 -1
  69. package/dist/scripts/pr-automation.d.ts.map +1 -1
  70. package/dist/scripts/pr-automation.js.map +1 -1
  71. package/dist/scripts/pre-flight-check.js +1 -1
  72. package/dist/scripts/pre-flight-check.js.map +1 -1
  73. package/dist/scripts/setup-existing-project.d.ts +3 -1
  74. package/dist/scripts/setup-existing-project.d.ts.map +1 -1
  75. package/dist/scripts/setup-existing-project.js +165 -78
  76. package/dist/scripts/setup-existing-project.js.map +1 -1
  77. package/dist/scripts/setup-interactive.js +3 -3
  78. package/dist/scripts/setup-interactive.js.map +1 -1
  79. package/dist/scripts/spec-impl-workflow.d.ts +94 -0
  80. package/dist/scripts/spec-impl-workflow.d.ts.map +1 -0
  81. package/dist/scripts/spec-impl-workflow.js +354 -0
  82. package/dist/scripts/spec-impl-workflow.js.map +1 -0
  83. package/dist/scripts/template/__tests__/renderer.test.d.ts +2 -0
  84. package/dist/scripts/template/__tests__/renderer.test.d.ts.map +1 -0
  85. package/dist/scripts/template/__tests__/renderer.test.js +165 -0
  86. package/dist/scripts/template/__tests__/renderer.test.js.map +1 -0
  87. package/dist/scripts/template/renderer.d.ts +70 -0
  88. package/dist/scripts/template/renderer.d.ts.map +1 -0
  89. package/dist/scripts/template/renderer.js +99 -0
  90. package/dist/scripts/template/renderer.js.map +1 -0
  91. package/dist/scripts/test-execution-generator.d.ts +52 -0
  92. package/dist/scripts/test-execution-generator.d.ts.map +1 -0
  93. package/dist/scripts/test-execution-generator.js +576 -0
  94. package/dist/scripts/test-execution-generator.js.map +1 -0
  95. package/dist/scripts/test-interactive.d.ts +10 -0
  96. package/dist/scripts/test-interactive.d.ts.map +1 -0
  97. package/dist/scripts/test-interactive.js +627 -0
  98. package/dist/scripts/test-interactive.js.map +1 -0
  99. package/dist/scripts/test-new-features.d.ts +5 -0
  100. package/dist/scripts/test-new-features.d.ts.map +1 -0
  101. package/dist/scripts/test-new-features.js +145 -0
  102. package/dist/scripts/test-new-features.js.map +1 -0
  103. package/dist/scripts/test-spec-generator.d.ts +29 -0
  104. package/dist/scripts/test-spec-generator.d.ts.map +1 -0
  105. package/dist/scripts/test-spec-generator.js +494 -0
  106. package/dist/scripts/test-spec-generator.js.map +1 -0
  107. package/dist/scripts/test-workflow-stages.d.ts +6 -0
  108. package/dist/scripts/test-workflow-stages.d.ts.map +1 -0
  109. package/dist/scripts/test-workflow-stages.js +43 -0
  110. package/dist/scripts/test-workflow-stages.js.map +1 -0
  111. package/dist/scripts/utils/__tests__/aidlc-parser.test.d.ts +5 -0
  112. package/dist/scripts/utils/__tests__/aidlc-parser.test.d.ts.map +1 -0
  113. package/dist/scripts/utils/__tests__/aidlc-parser.test.js +315 -0
  114. package/dist/scripts/utils/__tests__/aidlc-parser.test.js.map +1 -0
  115. package/dist/scripts/utils/__tests__/business-days.test.d.ts +5 -0
  116. package/dist/scripts/utils/__tests__/business-days.test.d.ts.map +1 -0
  117. package/dist/scripts/utils/__tests__/business-days.test.js +171 -0
  118. package/dist/scripts/utils/__tests__/business-days.test.js.map +1 -0
  119. package/dist/scripts/utils/__tests__/config-loader.test.js +1 -1
  120. package/dist/scripts/utils/__tests__/config-loader.test.js.map +1 -1
  121. package/dist/scripts/utils/__tests__/config-validator.test.js +164 -35
  122. package/dist/scripts/utils/__tests__/config-validator.test.js.map +1 -1
  123. package/dist/scripts/utils/__tests__/env-config.test.d.ts +5 -0
  124. package/dist/scripts/utils/__tests__/env-config.test.d.ts.map +1 -0
  125. package/dist/scripts/utils/__tests__/env-config.test.js +218 -0
  126. package/dist/scripts/utils/__tests__/env-config.test.js.map +1 -0
  127. package/dist/scripts/utils/__tests__/jira-issue-type-fetcher.test.d.ts +5 -0
  128. package/dist/scripts/utils/__tests__/jira-issue-type-fetcher.test.d.ts.map +1 -0
  129. package/dist/scripts/utils/__tests__/jira-issue-type-fetcher.test.js +202 -0
  130. package/dist/scripts/utils/__tests__/jira-issue-type-fetcher.test.js.map +1 -0
  131. package/dist/scripts/utils/__tests__/tasks-converter.test.d.ts +5 -0
  132. package/dist/scripts/utils/__tests__/tasks-converter.test.d.ts.map +1 -0
  133. package/dist/scripts/utils/__tests__/tasks-converter.test.js +500 -0
  134. package/dist/scripts/utils/__tests__/tasks-converter.test.js.map +1 -0
  135. package/dist/scripts/utils/__tests__/tasks-format-validator.test.d.ts +5 -0
  136. package/dist/scripts/utils/__tests__/tasks-format-validator.test.d.ts.map +1 -0
  137. package/dist/scripts/utils/__tests__/tasks-format-validator.test.js +314 -0
  138. package/dist/scripts/utils/__tests__/tasks-format-validator.test.js.map +1 -0
  139. package/dist/scripts/utils/__tests__/test-runner.test.d.ts +5 -0
  140. package/dist/scripts/utils/__tests__/test-runner.test.d.ts.map +1 -0
  141. package/dist/scripts/utils/__tests__/test-runner.test.js +64 -0
  142. package/dist/scripts/utils/__tests__/test-runner.test.js.map +1 -0
  143. package/dist/scripts/utils/aidlc-parser.d.ts +86 -0
  144. package/dist/scripts/utils/aidlc-parser.d.ts.map +1 -0
  145. package/dist/scripts/utils/aidlc-parser.js +208 -0
  146. package/dist/scripts/utils/aidlc-parser.js.map +1 -0
  147. package/dist/scripts/utils/business-days.d.ts +52 -0
  148. package/dist/scripts/utils/business-days.d.ts.map +1 -0
  149. package/dist/scripts/utils/business-days.js +98 -0
  150. package/dist/scripts/utils/business-days.js.map +1 -0
  151. package/dist/scripts/utils/ci-generator.d.ts +14 -0
  152. package/dist/scripts/utils/ci-generator.d.ts.map +1 -0
  153. package/dist/scripts/utils/ci-generator.js +61 -0
  154. package/dist/scripts/utils/ci-generator.js.map +1 -0
  155. package/dist/scripts/utils/config-loader.js +2 -2
  156. package/dist/scripts/utils/config-loader.js.map +1 -1
  157. package/dist/scripts/utils/config-validator.d.ts +7 -1
  158. package/dist/scripts/utils/config-validator.d.ts.map +1 -1
  159. package/dist/scripts/utils/config-validator.js +136 -23
  160. package/dist/scripts/utils/config-validator.js.map +1 -1
  161. package/dist/scripts/utils/confluence-approval.d.ts +46 -0
  162. package/dist/scripts/utils/confluence-approval.d.ts.map +1 -0
  163. package/dist/scripts/utils/confluence-approval.js +118 -0
  164. package/dist/scripts/utils/confluence-approval.js.map +1 -0
  165. package/dist/scripts/utils/confluence-hierarchy.d.ts.map +1 -1
  166. package/dist/scripts/utils/confluence-hierarchy.js +1 -1
  167. package/dist/scripts/utils/confluence-hierarchy.js.map +1 -1
  168. package/dist/scripts/utils/docker-generator.d.ts +9 -0
  169. package/dist/scripts/utils/docker-generator.d.ts.map +1 -0
  170. package/dist/scripts/utils/docker-generator.js +132 -0
  171. package/dist/scripts/utils/docker-generator.js.map +1 -0
  172. package/dist/scripts/utils/docker-requirement-detector.d.ts +15 -0
  173. package/dist/scripts/utils/docker-requirement-detector.d.ts.map +1 -0
  174. package/dist/scripts/utils/docker-requirement-detector.js +124 -0
  175. package/dist/scripts/utils/docker-requirement-detector.js.map +1 -0
  176. package/dist/scripts/utils/env-config.d.ts +54 -0
  177. package/dist/scripts/utils/env-config.d.ts.map +1 -0
  178. package/dist/scripts/utils/env-config.js +414 -0
  179. package/dist/scripts/utils/env-config.js.map +1 -0
  180. package/dist/scripts/utils/jira-issue-type-fetcher.d.ts +70 -0
  181. package/dist/scripts/utils/jira-issue-type-fetcher.d.ts.map +1 -0
  182. package/dist/scripts/utils/jira-issue-type-fetcher.js +147 -0
  183. package/dist/scripts/utils/jira-issue-type-fetcher.js.map +1 -0
  184. package/dist/scripts/utils/language-detector.d.ts +14 -0
  185. package/dist/scripts/utils/language-detector.d.ts.map +1 -0
  186. package/dist/scripts/utils/language-detector.js +119 -0
  187. package/dist/scripts/utils/language-detector.js.map +1 -0
  188. package/dist/scripts/utils/markdown-parser.d.ts +55 -0
  189. package/dist/scripts/utils/markdown-parser.d.ts.map +1 -0
  190. package/dist/scripts/utils/markdown-parser.js +289 -0
  191. package/dist/scripts/utils/markdown-parser.js.map +1 -0
  192. package/dist/scripts/utils/project-detector.d.ts +17 -0
  193. package/dist/scripts/utils/project-detector.d.ts.map +1 -0
  194. package/dist/scripts/utils/project-detector.js +166 -0
  195. package/dist/scripts/utils/project-detector.js.map +1 -0
  196. package/dist/scripts/utils/project-finder.js +2 -2
  197. package/dist/scripts/utils/project-finder.js.map +1 -1
  198. package/dist/scripts/utils/release-notes-generator.d.ts +56 -0
  199. package/dist/scripts/utils/release-notes-generator.d.ts.map +1 -0
  200. package/dist/scripts/utils/release-notes-generator.js +162 -0
  201. package/dist/scripts/utils/release-notes-generator.js.map +1 -0
  202. package/dist/scripts/utils/spec-loader.d.ts +79 -0
  203. package/dist/scripts/utils/spec-loader.d.ts.map +1 -0
  204. package/dist/scripts/utils/spec-loader.js +80 -0
  205. package/dist/scripts/utils/spec-loader.js.map +1 -0
  206. package/dist/scripts/utils/spec-updater.d.ts +7 -0
  207. package/dist/scripts/utils/spec-updater.d.ts.map +1 -1
  208. package/dist/scripts/utils/spec-updater.js.map +1 -1
  209. package/dist/scripts/utils/tasks-converter.d.ts +57 -0
  210. package/dist/scripts/utils/tasks-converter.d.ts.map +1 -0
  211. package/dist/scripts/utils/tasks-converter.js +322 -0
  212. package/dist/scripts/utils/tasks-converter.js.map +1 -0
  213. package/dist/scripts/utils/tasks-format-validator.d.ts +36 -0
  214. package/dist/scripts/utils/tasks-format-validator.d.ts.map +1 -0
  215. package/dist/scripts/utils/tasks-format-validator.js +158 -0
  216. package/dist/scripts/utils/tasks-format-validator.js.map +1 -0
  217. package/dist/scripts/utils/template-applier.d.ts +37 -0
  218. package/dist/scripts/utils/template-applier.d.ts.map +1 -0
  219. package/dist/scripts/utils/template-applier.js +129 -0
  220. package/dist/scripts/utils/template-applier.js.map +1 -0
  221. package/dist/scripts/utils/template-finder.d.ts +37 -0
  222. package/dist/scripts/utils/template-finder.d.ts.map +1 -0
  223. package/dist/scripts/utils/template-finder.js +63 -0
  224. package/dist/scripts/utils/template-finder.js.map +1 -0
  225. package/dist/scripts/utils/test-config-generator.d.ts +12 -0
  226. package/dist/scripts/utils/test-config-generator.d.ts.map +1 -0
  227. package/dist/scripts/utils/test-config-generator.js +185 -0
  228. package/dist/scripts/utils/test-config-generator.js.map +1 -0
  229. package/dist/scripts/utils/test-runner.d.ts +31 -0
  230. package/dist/scripts/utils/test-runner.d.ts.map +1 -0
  231. package/dist/scripts/utils/test-runner.js +103 -0
  232. package/dist/scripts/utils/test-runner.js.map +1 -0
  233. package/dist/scripts/validate-phase.d.ts +1 -1
  234. package/dist/scripts/validate-phase.d.ts.map +1 -1
  235. package/dist/scripts/validate-phase.js +153 -5
  236. package/dist/scripts/validate-phase.js.map +1 -1
  237. package/dist/scripts/workflow-orchestrator.d.ts +8 -0
  238. package/dist/scripts/workflow-orchestrator.d.ts.map +1 -1
  239. package/dist/scripts/workflow-orchestrator.js +108 -7
  240. package/dist/scripts/workflow-orchestrator.js.map +1 -1
  241. package/dist/src/__tests__/integration/internationalization.test.d.ts +8 -0
  242. package/dist/src/__tests__/integration/internationalization.test.d.ts.map +1 -0
  243. package/dist/src/__tests__/integration/internationalization.test.js +333 -0
  244. package/dist/src/__tests__/integration/internationalization.test.js.map +1 -0
  245. package/dist/src/__tests__/integration/setup/claude-agent.test.d.ts +5 -0
  246. package/dist/src/__tests__/integration/setup/claude-agent.test.d.ts.map +1 -0
  247. package/dist/src/__tests__/integration/setup/claude-agent.test.js +122 -0
  248. package/dist/src/__tests__/integration/setup/claude-agent.test.js.map +1 -0
  249. package/dist/src/__tests__/integration/setup/claude.test.d.ts +5 -0
  250. package/dist/src/__tests__/integration/setup/claude.test.d.ts.map +1 -0
  251. package/dist/src/__tests__/integration/setup/claude.test.js +111 -0
  252. package/dist/src/__tests__/integration/setup/claude.test.js.map +1 -0
  253. package/dist/src/__tests__/integration/setup/cursor.test.d.ts +5 -0
  254. package/dist/src/__tests__/integration/setup/cursor.test.d.ts.map +1 -0
  255. package/dist/src/__tests__/integration/setup/cursor.test.js +166 -0
  256. package/dist/src/__tests__/integration/setup/cursor.test.js.map +1 -0
  257. package/dist/src/__tests__/integration/setup/helpers/fs-assertions.d.ts +32 -0
  258. package/dist/src/__tests__/integration/setup/helpers/fs-assertions.d.ts.map +1 -0
  259. package/dist/src/__tests__/integration/setup/helpers/fs-assertions.js +72 -0
  260. package/dist/src/__tests__/integration/setup/helpers/fs-assertions.js.map +1 -0
  261. package/dist/src/__tests__/integration/setup/helpers/test-project.d.ts +38 -0
  262. package/dist/src/__tests__/integration/setup/helpers/test-project.d.ts.map +1 -0
  263. package/dist/src/__tests__/integration/setup/helpers/test-project.js +83 -0
  264. package/dist/src/__tests__/integration/setup/helpers/test-project.js.map +1 -0
  265. package/dist/src/__tests__/integration/setup/validation.test.d.ts +5 -0
  266. package/dist/src/__tests__/integration/setup/validation.test.d.ts.map +1 -0
  267. package/dist/src/__tests__/integration/setup/validation.test.js +301 -0
  268. package/dist/src/__tests__/integration/setup/validation.test.js.map +1 -0
  269. package/dist/src/cli.d.ts.map +1 -1
  270. package/dist/src/cli.js +228 -18
  271. package/dist/src/cli.js.map +1 -1
  272. package/dist/src/commands/setup-existing.d.ts +25 -0
  273. package/dist/src/commands/setup-existing.d.ts.map +1 -0
  274. package/dist/src/commands/setup-existing.js +695 -0
  275. package/dist/src/commands/setup-existing.js.map +1 -0
  276. package/dist/vitest.config.d.ts.map +1 -1
  277. package/dist/vitest.config.js +4 -3
  278. package/dist/vitest.config.js.map +1 -1
  279. package/docs/README.md +3 -1
  280. package/docs/context.md +59 -0
  281. package/docs/design-issue-55.md +240 -0
  282. package/docs/design-issue-56.md +181 -0
  283. package/docs/michi-development/testing/manual-verification-flow.md +2242 -0
  284. package/docs/michi-development/testing/pre-publish-checklist.md +560 -0
  285. package/docs/plan.md +275 -0
  286. package/docs/user-guide/getting-started/github-token-setup.md +509 -0
  287. package/docs/{getting-started → user-guide/getting-started}/new-repository-setup.md +108 -28
  288. package/docs/{getting-started → user-guide/getting-started}/quick-start.md +73 -6
  289. package/docs/{getting-started → user-guide/getting-started}/setup.md +278 -3
  290. package/docs/{guides → user-guide/guides}/customization.md +3 -3
  291. package/docs/user-guide/guides/internationalization.md +540 -0
  292. package/docs/{guides → user-guide/guides}/multi-project.md +2 -2
  293. package/docs/{guides → user-guide/guides}/phase-automation.md +67 -9
  294. package/docs/user-guide/guides/workflow.md +582 -0
  295. package/docs/user-guide/hands-on/README.md +142 -0
  296. package/docs/user-guide/hands-on/claude-agent-setup.md +455 -0
  297. package/docs/user-guide/hands-on/claude-setup.md +398 -0
  298. package/docs/user-guide/hands-on/cursor-setup.md +352 -0
  299. package/docs/user-guide/hands-on/troubleshooting.md +964 -0
  300. package/docs/user-guide/hands-on/verification-checklist.md +438 -0
  301. package/docs/user-guide/hands-on/workflow-walkthrough.md +906 -0
  302. package/docs/user-guide/reference/config.md +564 -0
  303. package/docs/{reference → user-guide/reference}/quick-reference.md +75 -53
  304. package/docs/user-guide/release/ci-setup.md +541 -0
  305. package/docs/user-guide/release/release-flow.md +476 -0
  306. package/docs/user-guide/templates/test-specs/README.md +173 -0
  307. package/docs/user-guide/templates/test-specs/e2e-test-spec-template.md +547 -0
  308. package/docs/user-guide/templates/test-specs/integration-test-spec-template.md +435 -0
  309. package/docs/user-guide/templates/test-specs/performance-test-spec-template.md +454 -0
  310. package/docs/user-guide/templates/test-specs/security-test-spec-template.md +664 -0
  311. package/docs/user-guide/templates/test-specs/unit-test-spec-template.md +328 -0
  312. package/docs/user-guide/testing/integration-tests.md +312 -0
  313. package/docs/user-guide/testing/tdd-cycle.md +349 -0
  314. package/docs/user-guide/testing/test-execution-flow.md +396 -0
  315. package/docs/user-guide/testing/test-failure-handling.md +521 -0
  316. package/docs/user-guide/testing/test-planning-flow.md +181 -0
  317. package/docs/user-guide/testing-strategy.md +185 -0
  318. package/docs/verification-guide.md +518 -0
  319. package/package.json +13 -3
  320. package/scripts/__tests__/create-project.test.ts +67 -49
  321. package/scripts/__tests__/jira-transitions.test.ts +225 -0
  322. package/scripts/__tests__/multi-project-estimate.test.ts +36 -30
  323. package/scripts/__tests__/setup-existing-project.test.ts +171 -6
  324. package/scripts/__tests__/setup-interactive.test.ts +52 -46
  325. package/scripts/__tests__/spec-impl-workflow.test.ts +429 -0
  326. package/scripts/__tests__/spec-loader.test.ts +199 -0
  327. package/scripts/__tests__/validate-phase.test.ts +78 -54
  328. package/scripts/config/config-schema.ts +89 -50
  329. package/scripts/config-interactive.ts +191 -136
  330. package/scripts/confluence-sync.ts +0 -12
  331. package/scripts/constants/__tests__/environments.test.ts +146 -0
  332. package/scripts/constants/__tests__/languages.test.ts +100 -0
  333. package/scripts/constants/environments.ts +81 -0
  334. package/scripts/constants/languages.ts +70 -0
  335. package/scripts/constants/test-commands.ts +96 -0
  336. package/scripts/create-project.ts +52 -22
  337. package/scripts/jira-sync.ts +767 -232
  338. package/scripts/markdown-to-confluence.ts +1 -1
  339. package/scripts/phase-runner.ts +1056 -63
  340. package/scripts/pr-automation.ts +0 -1
  341. package/scripts/pre-flight-check.ts +1 -1
  342. package/scripts/pre-publish-check.sh +311 -0
  343. package/scripts/quick-verify.sh +115 -0
  344. package/scripts/setup-existing-project.ts +306 -143
  345. package/scripts/setup-interactive.ts +4 -4
  346. package/scripts/spec-impl-workflow.ts +505 -0
  347. package/scripts/template/__tests__/renderer.test.ts +206 -0
  348. package/scripts/template/renderer.ts +133 -0
  349. package/scripts/test-execution-generator.ts +695 -0
  350. package/scripts/test-interactive.ts +779 -0
  351. package/scripts/test-new-features.ts +168 -0
  352. package/scripts/test-npm-package.sh +345 -0
  353. package/scripts/test-spec-generator.ts +574 -0
  354. package/scripts/test-workflow-stages.ts +53 -0
  355. package/scripts/utils/__tests__/aidlc-parser.test.ts +349 -0
  356. package/scripts/utils/__tests__/business-days.test.ts +214 -0
  357. package/scripts/utils/__tests__/config-loader.test.ts +1 -1
  358. package/scripts/utils/__tests__/config-validator.test.ts +309 -88
  359. package/scripts/utils/__tests__/env-config.test.ts +259 -0
  360. package/scripts/utils/__tests__/jira-issue-type-fetcher.test.ts +272 -0
  361. package/scripts/utils/__tests__/tasks-converter.test.ts +582 -0
  362. package/scripts/utils/__tests__/tasks-format-validator.test.ts +338 -0
  363. package/scripts/utils/__tests__/test-runner.test.ts +77 -0
  364. package/scripts/utils/aidlc-parser.ts +289 -0
  365. package/scripts/utils/business-days.ts +115 -0
  366. package/scripts/utils/ci-generator.ts +84 -0
  367. package/scripts/utils/config-loader.ts +2 -2
  368. package/scripts/utils/config-validator.ts +304 -117
  369. package/scripts/utils/confluence-approval.ts +167 -0
  370. package/scripts/utils/confluence-hierarchy.ts +2 -4
  371. package/scripts/utils/docker-generator.ts +151 -0
  372. package/scripts/utils/docker-requirement-detector.ts +153 -0
  373. package/scripts/utils/env-config.ts +526 -0
  374. package/scripts/utils/jira-issue-type-fetcher.ts +199 -0
  375. package/scripts/utils/language-detector.ts +139 -0
  376. package/scripts/utils/markdown-parser.ts +376 -0
  377. package/scripts/utils/project-detector.ts +192 -0
  378. package/scripts/utils/project-finder.ts +2 -2
  379. package/scripts/utils/release-notes-generator.ts +210 -0
  380. package/scripts/utils/spec-loader.ts +125 -0
  381. package/scripts/utils/spec-updater.ts +8 -1
  382. package/scripts/utils/tasks-converter.ts +601 -0
  383. package/scripts/utils/tasks-format-validator.ts +193 -0
  384. package/scripts/utils/template-applier.ts +202 -0
  385. package/scripts/utils/template-finder.ts +75 -0
  386. package/scripts/utils/test-config-generator.ts +210 -0
  387. package/scripts/utils/test-runner.ts +133 -0
  388. package/scripts/validate-phase.ts +186 -9
  389. package/scripts/workflow-orchestrator.ts +130 -12
  390. package/templates/ci/github-actions/java.yml +54 -0
  391. package/templates/ci/github-actions/nodejs.yml +46 -0
  392. package/templates/ci/github-actions/php.yml +52 -0
  393. package/templates/ci/screwdriver/java.yaml +17 -0
  394. package/templates/ci/screwdriver/nodejs.yaml +17 -0
  395. package/templates/ci/screwdriver/php.yaml +20 -0
  396. package/templates/claude/commands/kiro/kiro-spec-impl.md +244 -0
  397. package/templates/claude/commands/kiro/kiro-spec-tasks.md +354 -0
  398. package/templates/claude/commands/michi/confluence-sync.md +38 -0
  399. package/templates/claude/commands/michi/project-switch.md +36 -0
  400. package/templates/claude/rules/atlassian-integration.md +35 -0
  401. package/templates/claude/rules/michi-core.md +54 -0
  402. package/templates/claude-agent/README.md +31 -0
  403. package/templates/claude-agent/agents/.gitkeep +0 -0
  404. package/templates/claude-agent/agents/designer.md +79 -0
  405. package/templates/claude-agent/agents/developer.md +68 -0
  406. package/templates/claude-agent/agents/manager-agent.md +59 -0
  407. package/templates/claude-agent/agents/tester.md +101 -0
  408. package/templates/claude-agent/commands/kiro/.gitkeep +0 -0
  409. package/templates/claude-agent/commands/kiro/kiro-spec-impl.md +244 -0
  410. package/templates/claude-agent/commands/kiro/kiro-spec-tasks.md +354 -0
  411. package/templates/cline/rules/atlassian-integration.md +36 -0
  412. package/templates/cline/rules/michi-core.md +56 -0
  413. package/templates/codex/AGENTS.override.md +277 -0
  414. package/templates/codex/prompts/confluence-sync.md +177 -0
  415. package/templates/codex/rules/README.md +210 -0
  416. package/templates/common/.kiro/project.json.template +21 -0
  417. package/templates/cursor/commands/kiro/kiro-spec-impl.md +244 -0
  418. package/templates/cursor/commands/kiro/kiro-spec-tasks.md +354 -0
  419. package/templates/cursor/commands/michi/confluence-sync.md +76 -0
  420. package/templates/cursor/commands/michi/project-switch.md +69 -0
  421. package/templates/cursor/rules/atlassian-mcp.mdc +188 -0
  422. package/templates/cursor/rules/github-ssot.mdc +151 -0
  423. package/templates/cursor/rules/multi-project.mdc +81 -0
  424. package/templates/gemini/commands/README.md +41 -0
  425. package/templates/gemini/rules/GEMINI.md +80 -0
  426. package/docs/guides/workflow.md +0 -342
  427. package/docs/reference/config.md +0 -545
  428. package/scripts/setup-env.sh +0 -52
  429. package/scripts/setup-existing.sh +0 -152
  430. /package/docs/{contributing → michi-development/contributing}/development.md +0 -0
  431. /package/docs/{contributing → michi-development/contributing}/release.md +0 -0
  432. /package/docs/{testing-strategy.md → michi-development/testing-strategy.md} +0 -0
  433. /package/docs/{reference → user-guide/reference}/tasks-template.md +0 -0
@@ -0,0 +1,2242 @@
1
+ # Michi 手動検証フロー
2
+
3
+ NPMパッケージpublish前の完全な手動検証フローガイド
4
+
5
+ ## 目次
6
+
7
+ - [概要](#概要)
8
+ - [ツールサポート状況](#ツールサポート状況)
9
+ - [前提条件](#前提条件)
10
+ - [Part 1: 実ユーザーワークフロー](#part-1-実ユーザーワークフロー)
11
+ - [1.1 Cursor IDE](#11-cursor-ide)
12
+ - [1.2 Claude Code](#12-claude-code)
13
+ - [1.3 Claude Agent SDK](#13-claude-agent-sdk)
14
+ - [1.4 Cline](#14-cline)
15
+ - [1.5 Gemini](#15-gemini)
16
+ - [1.6 Codex](#16-codex)
17
+ - [Part 2: 自動テストワークフロー](#part-2-自動テストワークフロー)
18
+ - [トラブルシューティング](#トラブルシューティング)
19
+
20
+ ---
21
+
22
+ ## 概要
23
+
24
+ このドキュメントは、Michiパッケージのpublish前に実施する手動検証の完全なフローを記載しています。
25
+
26
+ ### 検証の目的
27
+
28
+ 1. **実環境での動作確認**: NPMパッケージとしてインストールした状態での動作を確認
29
+ 2. **全ツール対応確認**: 6つのAI開発ツールすべてでセットアップと基本機能が動作することを確認
30
+ 3. **2段階セットアップの検証**: cc-sdd → Michi の順序でのセットアップが正しく動作することを確認
31
+
32
+ ### 2つのコマンド実行パターン
33
+
34
+ このガイドでは、各ツールに対して2つのコマンド実行パターンを提供します:
35
+
36
+ - **Pattern A (NPM Package)**: NPMパッケージとしてインストールした状態での実行
37
+ - 実ユーザーの使用方法に最も近い
38
+ - `npx @sk8metal/michi-cli <command>` を使用
39
+
40
+ - **Pattern B (Development)**: 開発環境から直接実行
41
+ - 開発者が開発中のコードをテストする場合に使用
42
+ - `npx tsx ~/Work/git/michi/src/cli.ts <command>` を使用
43
+
44
+ ---
45
+
46
+ ## ツールサポート状況
47
+
48
+ | AI開発ツール | cc-sdd対応 | Michi対応 | 検証状況 |
49
+ | -------------------- | ----------- | ----------------- | --------------- |
50
+ | **Cursor IDE** | ✅ 完全対応 | ✅ 完全対応 | ✅ 動作確認済み |
51
+ | **Claude Code** | ✅ 完全対応 | ✅ 完全対応 | ✅ 動作確認済み |
52
+ | **Claude Agent SDK** | ⚠️ 暫定対応 | ⚠️ 暫定対応 | ⚠️ 要検証 |
53
+ | **Cline** | ❓ 未確認 | ✅ テンプレート有 | ❓ 要検証 |
54
+ | **Gemini** | 🚧 準備中 | 🚧 準備中 | 🚧 未対応 |
55
+ | **Codex** | 🚧 準備中 | 🚧 準備中 | 🚧 未対応 |
56
+
57
+ ### サポート状況の詳細
58
+
59
+ - ✅ **完全対応**: すべての機能が動作確認済み
60
+ - ⚠️ **暫定対応**: 基本機能は動作するが、一部制限あり
61
+ - ❓ **未確認**: テンプレートは存在するが動作未検証
62
+ - 🚧 **準備中**: 現在開発中
63
+
64
+ ---
65
+
66
+ ## 前提条件
67
+
68
+ ### システム要件
69
+
70
+ - Node.js >= 20.0.0
71
+ - npm >= 10.0.0
72
+ - Git
73
+ - 各AI開発ツールのインストール(検証対象のツール)
74
+
75
+ ### 事前準備
76
+
77
+ 1. **Michiプロジェクトのビルド**(Pattern B使用時のみ)
78
+
79
+ ```bash
80
+ cd ~/Work/git/michi
81
+ npm run build
82
+ ```
83
+
84
+ 2. **NPMパッケージの作成**(Pattern A使用時のみ)
85
+ ```bash
86
+ cd ~/Work/git/michi
87
+ npm pack
88
+ # 出力: sk8metal-michi-cli-X.X.X.tgz
89
+ ```
90
+
91
+ ---
92
+
93
+ ## Part 1: 実ユーザーワークフロー
94
+
95
+ このセクションでは、各AI開発ツールごとに、実際のユーザーが行うセットアップから基本機能の確認までの完全なフローを記載します。
96
+
97
+ ### 重要な原則
98
+
99
+ 1. **2段階セットアップが必須**
100
+ - Phase 1: cc-sddのインストール(AIコマンド `/kiro:spec-*` を提供)
101
+ - Phase 2: Michiのセットアップ(CLIコマンドとチャットコマンド `/michi:*` を提供)
102
+
103
+ 2. **絶対パスの使用**
104
+ - すべてのコマンドは絶対パスで記載
105
+ - テストディレクトリ `/tmp/michi-manual-test-<tool>` からでも実行可能
106
+
107
+ 3. **feature名の統一**
108
+ - すべての検証で `java-calculator-webapp` を使用
109
+
110
+ ---
111
+
112
+ ## 1.1 Cursor IDE
113
+
114
+ ### サポート状況
115
+
116
+ - ✅ cc-sdd: 完全対応
117
+ - ✅ Michi: 完全対応
118
+
119
+ ### Step 0: テストディレクトリの準備
120
+
121
+ ```bash
122
+ # テストディレクトリを作成
123
+ mkdir -p /tmp/michi-manual-test-cursor
124
+ cd /tmp/michi-manual-test-cursor
125
+
126
+ # Gitリポジトリとして初期化
127
+ git init
128
+ git config user.name "Test User"
129
+ git config user.email "test@example.com"
130
+
131
+ # 初期コミット
132
+ touch README.md
133
+ git add README.md
134
+ git commit -m "Initial commit"
135
+ ```
136
+
137
+ ### Step 1: Phase 1 - cc-sddのインストール
138
+
139
+ #### Pattern A: NPM Package(推奨)
140
+
141
+ ```bash
142
+ cd /tmp/michi-manual-test-cursor
143
+
144
+ # cc-sddをインストール(Cursor IDE用、日本語)
145
+ npx cc-sdd@latest --cursor --lang ja
146
+ ```
147
+
148
+ #### Pattern B: Development(開発環境)
149
+
150
+ cc-sddは外部パッケージのため、Pattern Bは適用外です。常にNPMから最新版をインストールしてください。
151
+
152
+ #### 確認事項
153
+
154
+ 実行後、以下のファイルが生成されることを確認:
155
+
156
+ ```bash
157
+ ls -la /tmp/michi-manual-test-cursor/.cursor/
158
+ # 出力例:
159
+ # .cursor/
160
+ # .cursorrules
161
+ # commands/
162
+ # kiro-spec-init.md
163
+ # kiro-spec-requirements.md
164
+ # kiro-spec-design.md
165
+ # ... (cc-sdd提供の10個のコマンド)
166
+ ```
167
+
168
+ ### Step 2: Phase 2 - Michiのセットアップ
169
+
170
+ #### Pattern A: NPM Package(推奨)
171
+
172
+ ```bash
173
+ cd /tmp/michi-manual-test-cursor
174
+
175
+ # Michiパッケージをグローバルインストール
176
+ npm install -g @sk8metal/michi-cli
177
+
178
+ # Michiセットアップ(Cursor IDE用)
179
+ michi setup-existing --cursor --lang ja
180
+ ```
181
+
182
+ #### Pattern B: Development(開発環境)
183
+
184
+ ```bash
185
+ cd /tmp/michi-manual-test-cursor
186
+
187
+ # 開発環境のMichiを使用してセットアップ
188
+ npx tsx ~/Work/git/michi/src/cli.ts setup-existing --cursor --lang ja
189
+ ```
190
+
191
+ #### 確認事項
192
+
193
+ 実行後、以下のファイルが追加されることを確認:
194
+
195
+ ```bash
196
+ ls -la /tmp/michi-manual-test-cursor/.cursor/commands/
197
+ # cc-sddのコマンドに加えて、Michiのコマンドが追加されている:
198
+ # michi-confluence-sync.md
199
+ # michi-project-switch.md
200
+ ```
201
+
202
+ ### Step 3: フェーズ実行
203
+
204
+ 各フェーズごとに、AIコマンド(該当する場合)とCLIコマンドを順番に実行します。
205
+
206
+ #### 3.0 初期化
207
+
208
+ Cursor IDEを開き、AIコマンドを実行:
209
+
210
+ ```
211
+ /kiro:spec-init マニュアルテスト機能
212
+ ```
213
+
214
+ **期待される動作:**
215
+
216
+ - `.kiro/specs/java-calculator-webapp/` ディレクトリが作成される
217
+ - `spec.json` が初期化される
218
+
219
+ #### 3.1 Phase 0.1: 要件定義(必須)
220
+
221
+ **AIコマンド:**
222
+
223
+ ```
224
+ /kiro:spec-requirements java-calculator-webapp
225
+ ```
226
+
227
+ **期待される動作:**
228
+
229
+ - `requirements.md` が生成される
230
+ - AIが要件を整理して記載
231
+
232
+ **CLIコマンド - Pattern A (NPM Package):**
233
+
234
+ ```bash
235
+ cd /tmp/michi-manual-test-cursor
236
+ michi phase:run java-calculator-webapp requirements
237
+ ```
238
+
239
+ **CLIコマンド - Pattern B (Development):**
240
+
241
+ ```bash
242
+ cd /tmp/michi-manual-test-cursor
243
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp requirements
244
+ ```
245
+
246
+ **期待される結果:**
247
+
248
+ - Confluenceページが作成される
249
+ - バリデーションが成功する
250
+
251
+ #### 3.2 Phase 0.2: 設計(必須)
252
+
253
+ **AIコマンド:**
254
+
255
+ ```
256
+ /kiro:spec-design java-calculator-webapp
257
+ ```
258
+
259
+ **期待される動作:**
260
+
261
+ - `design.md` が生成される
262
+ - AIが設計内容を記載
263
+
264
+ **CLIコマンド - Pattern A (NPM Package):**
265
+
266
+ ```bash
267
+ cd /tmp/michi-manual-test-cursor
268
+ michi phase:run java-calculator-webapp design
269
+ ```
270
+
271
+ **CLIコマンド - Pattern B (Development):**
272
+
273
+ ```bash
274
+ cd /tmp/michi-manual-test-cursor
275
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp design
276
+ ```
277
+
278
+ **期待される結果:**
279
+
280
+ - Confluenceページが作成される
281
+ - バリデーションが成功する
282
+
283
+ #### 3.3 Phase 0.3: テストタイプ選択(任意)
284
+
285
+ **AIコマンド:** なし(このフェーズにはAIコマンドは不要)
286
+
287
+ **CLIコマンド - Pattern A (NPM Package):**
288
+
289
+ ```bash
290
+ cd /tmp/michi-manual-test-cursor
291
+ michi phase:run java-calculator-webapp test-type-selection
292
+ ```
293
+
294
+ **CLIコマンド - Pattern B (Development):**
295
+
296
+ ```bash
297
+ cd /tmp/michi-manual-test-cursor
298
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp test-type-selection
299
+ ```
300
+
301
+ **期待される結果:**
302
+
303
+ - テストタイプの選択が完了する
304
+ - バリデーションが成功する
305
+
306
+ #### 3.4 Phase 0.4: テスト仕様書作成(任意)
307
+
308
+ **AIコマンド:** なし(このフェーズにはAIコマンドは不要)
309
+
310
+ **CLIコマンド - Pattern A (NPM Package):**
311
+
312
+ ```bash
313
+ cd /tmp/michi-manual-test-cursor
314
+ michi phase:run java-calculator-webapp test-spec
315
+ ```
316
+
317
+ **CLIコマンド - Pattern B (Development):**
318
+
319
+ ```bash
320
+ cd /tmp/michi-manual-test-cursor
321
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp test-spec
322
+ ```
323
+
324
+ **期待される結果:**
325
+
326
+ - テスト仕様書が作成される
327
+ - バリデーションが成功する
328
+
329
+ #### 3.5 Phase 0.5-0.6: タスク分割・JIRA同期(必須)
330
+
331
+ **AIコマンド:**
332
+
333
+ ```
334
+ /kiro:spec-tasks java-calculator-webapp
335
+ ```
336
+
337
+ **期待される動作:**
338
+
339
+ - `tasks.md` が生成される
340
+ - ストーリー、タスク、工数が記載される
341
+
342
+ **CLIコマンド - Pattern A (NPM Package):**
343
+
344
+ ```bash
345
+ cd /tmp/michi-manual-test-cursor
346
+ michi phase:run java-calculator-webapp tasks
347
+ ```
348
+
349
+ **CLIコマンド - Pattern B (Development):**
350
+
351
+ ```bash
352
+ cd /tmp/michi-manual-test-cursor
353
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp tasks
354
+ ```
355
+
356
+ **期待される結果:**
357
+
358
+ - JIRAチケットが作成される
359
+ - バリデーションが成功する
360
+
361
+ #### 3.6 Phase 1: 環境構築(任意)
362
+
363
+ **AIコマンド:** なし(このフェーズにはAIコマンドは不要)
364
+
365
+ **CLIコマンド - Pattern A (NPM Package):**
366
+
367
+ ```bash
368
+ cd /tmp/michi-manual-test-cursor
369
+ michi phase:run java-calculator-webapp environment-setup
370
+ ```
371
+
372
+ **CLIコマンド - Pattern B (Development):**
373
+
374
+ ```bash
375
+ cd /tmp/michi-manual-test-cursor
376
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp environment-setup
377
+ ```
378
+
379
+ **期待される結果:**
380
+
381
+ - 環境構築プロセスが完了する
382
+ - バリデーションが成功する
383
+
384
+ #### 3.7 Phase 2: TDD実装(必須)
385
+
386
+ **AIコマンド:**
387
+
388
+ ```
389
+ /kiro:spec-impl java-calculator-webapp
390
+ ```
391
+
392
+ **期待される動作:**
393
+
394
+ - TDD(RED-GREEN-REFACTOR)サイクルで実装
395
+ - 各タスクの実装とテストが完了
396
+
397
+ **注意:** 実際の実装は行わず、コマンドの動作確認のみ
398
+
399
+ **JIRA連携について:**
400
+ JIRA連携は `/kiro:spec-impl` コマンド実行時に自動で行われます:
401
+
402
+ - spec.json から JIRA 情報(Epic + Story)を自動取得
403
+ - Epic と最初の Story を「進行中」に移動
404
+ - TDD 実装
405
+ - PR 作成
406
+ - Epic と最初の Story を「レビュー待ち」に移動
407
+ - JIRA に PR リンクをコメント
408
+
409
+ **CLIコマンド - 個別JIRA操作(任意)- Pattern A (NPM Package):**
410
+
411
+ ```bash
412
+ cd /tmp/michi-manual-test-cursor
413
+ # ステータス変更
414
+ michi jira:transition DEMO-103 "In Progress"
415
+
416
+ # コメント追加
417
+ michi jira:comment DEMO-103 "テストコメント"
418
+ ```
419
+
420
+ **CLIコマンド - 個別JIRA操作(任意)- Pattern B (Development):**
421
+
422
+ ```bash
423
+ cd /tmp/michi-manual-test-cursor
424
+ # ステータス変更
425
+ npx tsx ~/Work/git/michi/src/cli.ts jira:transition DEMO-103 "In Progress"
426
+
427
+ # コメント追加
428
+ npx tsx ~/Work/git/michi/src/cli.ts jira:comment DEMO-103 "テストコメント"
429
+ ```
430
+
431
+ **期待される結果:**
432
+
433
+ - JIRAステータスが変更される
434
+ - JIRAにコメントが追加される
435
+
436
+ #### 3.8 Phase A: PR前自動テスト(任意)
437
+
438
+ **AIコマンド:** なし(このフェーズにはAIコマンドは不要)
439
+
440
+ **CLIコマンド - Pattern A (NPM Package):**
441
+
442
+ ```bash
443
+ cd /tmp/michi-manual-test-cursor
444
+ michi phase:run java-calculator-webapp phase-a
445
+ ```
446
+
447
+ **CLIコマンド - Pattern B (Development):**
448
+
449
+ ```bash
450
+ cd /tmp/michi-manual-test-cursor
451
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp phase-a
452
+ ```
453
+
454
+ **期待される結果:**
455
+
456
+ - PR前自動テストが実行される
457
+ - バリデーションが成功する
458
+
459
+ #### 3.10 Phase B: リリース準備テスト(任意)
460
+
461
+ **AIコマンド:** なし(このフェーズにはAIコマンドは不要)
462
+
463
+ **前提条件:**
464
+
465
+ - Phase 0.3 (test-type-selection) でテストタイプが選択済みであること
466
+ - アプリケーションの実装が完了していること
467
+
468
+ **CLIコマンド - Pattern A (NPM Package):**
469
+
470
+ ```bash
471
+ cd /tmp/michi-manual-test-cursor
472
+ michi phase:run java-calculator-webapp phase-b
473
+ ```
474
+
475
+ **CLIコマンド - Pattern B (Development):**
476
+
477
+ ```bash
478
+ cd /tmp/michi-manual-test-cursor
479
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp phase-b
480
+ ```
481
+
482
+ **期待される結果:**
483
+
484
+ - `test-type-selection.json`から選択されたテストタイプを読み込む
485
+ - Phase Bに該当するテスト(performance, security, integration, e2e)の実行ファイルを生成
486
+ - `.kiro/specs/<feature>/test-execution/` 配下にテスト実行ファイルが作成される
487
+
488
+ **生成されるファイル例:**
489
+
490
+ | テストタイプ | 生成ファイル |
491
+ | ------------ | ------------------------------------------------------------------------------------- |
492
+ | performance | `test-execution/performance/locustfile.py`, `load-test-plan.md` |
493
+ | security | `test-execution/security/zap-config.yaml`, `run-zap-scan.sh`, `security-test-plan.md` |
494
+ | integration | `test-execution/integration/integration-checklist.md` |
495
+ | e2e | `test-execution/e2e/e2e-checklist.md` |
496
+
497
+ **注意:** 生成されるファイルはテンプレートとガイドです。実際のテストツール(Locust, k6, OWASP ZAP等)の選定と設定は、プロジェクトの要件に応じて行ってください。
498
+
499
+ #### 3.11 Phase 4: リリース準備(任意)
500
+
501
+ **注意:** 手動検証では実際のリリース準備は行わず、フローの確認のみ
502
+
503
+ #### 3.12 Phase 5: リリース(任意)
504
+
505
+ **注意:** 手動検証では実際のリリースは行わず、フローの確認のみ
506
+
507
+ ### Step 4: 成功確認
508
+
509
+ すべてのコマンドが正常に完了し、以下のファイル構造が作成されていることを確認:
510
+
511
+ ```
512
+ /tmp/michi-manual-test-cursor/
513
+ ├── .cursor/
514
+ │ ├── .cursorrules
515
+ │ └── commands/
516
+ │ ├── kiro-spec-init.md (cc-sdd)
517
+ │ ├── kiro-spec-requirements.md (cc-sdd)
518
+ │ ├── kiro-spec-design.md (cc-sdd)
519
+ │ ├── kiro-spec-tasks.md (cc-sdd)
520
+ │ ├── ... (cc-sdd提供の他のコマンド)
521
+ │ ├── michi-confluence-sync.md (Michi)
522
+ │ └── michi-project-switch.md (Michi)
523
+ └── .kiro/
524
+ └── specs/
525
+ └── java-calculator-webapp/
526
+ ├── spec.json
527
+ ├── requirements.md (Step 3.2 AIで作成)
528
+ ├── design.md (Step 3.3 AIで作成)
529
+ ├── tasks.md (Step 3.4 AIで作成)
530
+ ├── test-type-selection.json (Step 3.6 CLIで作成)
531
+ ├── test-specs/ (Step 3.7 CLIで作成)
532
+ │ └── *.md
533
+ └── test-execution/ (Step 3.10 Phase Bで作成、任意)
534
+ ├── performance/
535
+ ├── security/
536
+ ├── integration/
537
+ └── e2e/
538
+ ```
539
+
540
+ **重要な注意事項:**
541
+
542
+ Phase 0.1 (requirements)、Phase 0.2 (design)、Phase 0.5-0.6 (tasks) のCLIコマンド実行により、以下が作成されます:
543
+
544
+ - Confluenceページ(requirements、design用)
545
+ - JIRAチケット(tasks用)
546
+
547
+ これらはConfluence/JIRA上に作成されるため、ローカルファイルシステムには追加ファイルは生成されません。
548
+
549
+ ---
550
+
551
+ ## 1.2 Claude Code
552
+
553
+ ### サポート状況
554
+
555
+ - ✅ cc-sdd: 完全対応
556
+ - ✅ Michi: 完全対応
557
+
558
+ ### Step 0: テストディレクトリの準備
559
+
560
+ ```bash
561
+ # テストディレクトリを作成
562
+ mkdir -p /tmp/michi-manual-test-claude-code
563
+ cd /tmp/michi-manual-test-claude-code
564
+
565
+ # Gitリポジトリとして初期化
566
+ git init
567
+ git config user.name "Test User"
568
+ git config user.email "test@example.com"
569
+
570
+ # 初期コミット
571
+ touch README.md
572
+ git add README.md
573
+ git commit -m "Initial commit"
574
+ ```
575
+
576
+ ### Step 1: Phase 1 - cc-sddのインストール
577
+
578
+ ```bash
579
+ cd /tmp/michi-manual-test-claude-code
580
+
581
+ # cc-sddをインストール(Claude Code用、日本語)
582
+ npx cc-sdd@latest --claude --lang ja
583
+ ```
584
+
585
+ #### 確認事項
586
+
587
+ 実行後、以下のファイルが生成されることを確認:
588
+
589
+ ```bash
590
+ ls -la /tmp/michi-manual-test-claude-code/.claude/
591
+ # 出力例:
592
+ # .claude/
593
+ # CLAUDE.md
594
+ # commands/kiro
595
+ # kiro-spec-init.md
596
+ # kiro-spec-requirements.md
597
+ # ... (cc-sdd提供の10個のコマンド)
598
+ ```
599
+
600
+ ### Step 2: Phase 2 - Michiのセットアップ
601
+
602
+ #### Pattern A: NPM Package(推奨)
603
+
604
+ ```bash
605
+ cd /tmp/michi-manual-test-claude-code
606
+
607
+ # Michiパッケージをグローバルインストール(まだの場合)
608
+ npm install -g @sk8metal/michi-cli
609
+
610
+ # Michiセットアップ(Claude Code用)
611
+ michi setup-existing --claude --lang ja
612
+ ```
613
+
614
+ #### Pattern B: Development(開発環境)
615
+
616
+ ```bash
617
+ cd /tmp/michi-manual-test-claude-code
618
+
619
+ # 開発環境のMichiを使用してセットアップ
620
+ npx tsx ~/Work/git/michi/src/cli.ts setup-existing --claude --lang ja
621
+ ```
622
+
623
+ #### 確認事項
624
+
625
+ 実行後、Michiのコマンドが追加されることを確認:
626
+
627
+ ```bash
628
+ ls -la /tmp/michi-manual-test-claude-code/.claude/commands/kiro/michi
629
+ # Michiのコマンドが追加されている:
630
+ # michi-confluence-sync.md
631
+ # michi-project-switch.md
632
+ ```
633
+
634
+ ### Step 3: フェーズ実行
635
+
636
+ 各フェーズごとに、スラッシュコマンド(該当する場合)とCLIコマンドを順番に実行します。
637
+
638
+ #### 3.0 初期化
639
+
640
+ Claude Codeを起動し、スラッシュコマンドを実行:
641
+
642
+ ```
643
+ /kiro:spec-init Java電卓webアプリ
644
+ ```
645
+
646
+ **期待される動作:**
647
+
648
+ - `.kiro/specs/java-calculator-webapp/` ディレクトリが作成される
649
+ - `spec.json` が初期化される
650
+
651
+ #### 3.1 Phase 0.1: 要件定義(必須)
652
+
653
+ **スラッシュコマンド:**
654
+
655
+ ```
656
+ /kiro:spec-requirements java-calculator-webapp
657
+ ```
658
+
659
+ **期待される動作:**
660
+
661
+ - `requirements.md` が生成される
662
+ - AIが要件を整理して記載
663
+
664
+ **CLIコマンド - Pattern A (NPM Package):**
665
+
666
+ ```bash
667
+ cd /tmp/michi-manual-test-claude-code
668
+ michi phase:run java-calculator-webapp requirements
669
+ ```
670
+
671
+ **CLIコマンド - Pattern B (Development):**
672
+
673
+ ```bash
674
+ cd /tmp/michi-manual-test-claude-code
675
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp requirements
676
+ ```
677
+
678
+ **期待される結果:**
679
+
680
+ - Confluenceページが作成される
681
+ - バリデーションが成功する
682
+
683
+ #### 3.2 Phase 0.2: 設計(必須)
684
+
685
+ **スラッシュコマンド:**
686
+
687
+ ```
688
+ /kiro:spec-design java-calculator-webapp
689
+ ```
690
+
691
+ **期待される動作:**
692
+
693
+ - `design.md` が生成される
694
+ - AIが設計内容を記載
695
+
696
+ **CLIコマンド - Pattern A (NPM Package):**
697
+
698
+ ```bash
699
+ cd /tmp/michi-manual-test-claude-code
700
+ michi phase:run java-calculator-webapp design
701
+ ```
702
+
703
+ **CLIコマンド - Pattern B (Development):**
704
+
705
+ ```bash
706
+ cd /tmp/michi-manual-test-claude-code
707
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp design
708
+ ```
709
+
710
+ **期待される結果:**
711
+
712
+ - Confluenceページが作成される
713
+ - バリデーションが成功する
714
+
715
+ #### 3.3 Phase 0.3: テストタイプ選択(任意)
716
+
717
+ **スラッシュコマンド:** なし(このフェーズにはスラッシュコマンドは不要)
718
+
719
+ **CLIコマンド - Pattern A (NPM Package):**
720
+
721
+ ```bash
722
+ cd /tmp/michi-manual-test-claude-code
723
+ michi phase:run java-calculator-webapp test-type-selection
724
+ ```
725
+
726
+ **CLIコマンド - Pattern B (Development):**
727
+
728
+ ```bash
729
+ cd /tmp/michi-manual-test-claude-code
730
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp test-type-selection
731
+ ```
732
+
733
+ **期待される結果:**
734
+
735
+ - テストタイプの選択が完了する
736
+ - バリデーションが成功する
737
+
738
+ #### 3.4 Phase 0.4: テスト仕様書作成(任意)
739
+
740
+ **スラッシュコマンド:** なし(このフェーズにはスラッシュコマンドは不要)
741
+
742
+ **CLIコマンド - Pattern A (NPM Package):**
743
+
744
+ ```bash
745
+ cd /tmp/michi-manual-test-claude-code
746
+ michi phase:run java-calculator-webapp test-spec
747
+ ```
748
+
749
+ **CLIコマンド - Pattern B (Development):**
750
+
751
+ ```bash
752
+ cd /tmp/michi-manual-test-claude-code
753
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp test-spec
754
+ ```
755
+
756
+ **期待される結果:**
757
+
758
+ - テスト仕様書が作成される
759
+ - バリデーションが成功する
760
+
761
+ #### 3.5 Phase 0.5-0.6: タスク分割・JIRA同期(必須)
762
+
763
+ **スラッシュコマンド:**
764
+
765
+ ```
766
+ /kiro:spec-tasks java-calculator-webapp
767
+ ```
768
+
769
+ **期待される動作:**
770
+
771
+ - `tasks.md` が生成される
772
+ - ストーリー、タスク、工数が記載される
773
+
774
+ **CLIコマンド - Pattern A (NPM Package):**
775
+
776
+ ```bash
777
+ cd /tmp/michi-manual-test-claude-code
778
+ michi phase:run java-calculator-webapp tasks
779
+ ```
780
+
781
+ **CLIコマンド - Pattern B (Development):**
782
+
783
+ ```bash
784
+ cd /tmp/michi-manual-test-claude-code
785
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp tasks
786
+ ```
787
+
788
+ **期待される結果:**
789
+
790
+ - JIRAチケットが作成される
791
+ - バリデーションが成功する
792
+
793
+ #### 3.6 Phase 1: 環境構築(任意)
794
+
795
+ **スラッシュコマンド:** なし(このフェーズにはスラッシュコマンドは不要)
796
+
797
+ **CLIコマンド - Pattern A (NPM Package):**
798
+
799
+ ```bash
800
+ cd /tmp/michi-manual-test-claude-code
801
+ michi phase:run java-calculator-webapp environment-setup
802
+ ```
803
+
804
+ **CLIコマンド - Pattern B (Development):**
805
+
806
+ ```bash
807
+ cd /tmp/michi-manual-test-claude-code
808
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp environment-setup
809
+ ```
810
+
811
+ **期待される結果:**
812
+
813
+ - 環境構築プロセスが完了する
814
+ - バリデーションが成功する
815
+
816
+ #### 3.7 Phase 2: TDD実装(必須)
817
+
818
+ **スラッシュコマンド:**
819
+
820
+ ```
821
+ /kiro:spec-impl java-calculator-webapp
822
+ ```
823
+
824
+ **期待される動作:**
825
+
826
+ - TDD(RED-GREEN-REFACTOR)サイクルで実装
827
+ - 各タスクの実装とテストが完了
828
+
829
+ **注意:** 実際の実装は行わず、コマンドの動作確認のみ
830
+
831
+ **JIRA連携について:**
832
+ JIRA連携は `/kiro:spec-impl` コマンド実行時に自動で行われます:
833
+
834
+ - spec.json から JIRA 情報(Epic + Story)を自動取得
835
+ - Epic と最初の Story を「進行中」に移動
836
+ - TDD 実装
837
+ - PR 作成
838
+ - Epic と最初の Story を「レビュー待ち」に移動
839
+ - JIRA に PR リンクをコメント
840
+
841
+ **CLIコマンド - 個別JIRA操作(任意)- Pattern A (NPM Package):**
842
+
843
+ ```bash
844
+ cd /tmp/michi-manual-test-claude-code
845
+ # ステータス変更
846
+ michi jira:transition DEMO-103 "In Progress"
847
+
848
+ # コメント追加
849
+ michi jira:comment DEMO-103 "テストコメント"
850
+ ```
851
+
852
+ **CLIコマンド - 個別JIRA操作(任意)- Pattern B (Development):**
853
+
854
+ ```bash
855
+ cd /tmp/michi-manual-test-claude-code
856
+ # ステータス変更
857
+ npx tsx ~/Work/git/michi/src/cli.ts jira:transition DEMO-103 "In Progress"
858
+
859
+ # コメント追加
860
+ npx tsx ~/Work/git/michi/src/cli.ts jira:comment DEMO-103 "テストコメント"
861
+ ```
862
+
863
+ **期待される結果:**
864
+
865
+ - JIRAステータスが変更される
866
+ - JIRAにコメントが追加される
867
+
868
+ #### 3.8 Phase A: PR前自動テスト(任意)
869
+
870
+ **スラッシュコマンド:** なし(このフェーズにはスラッシュコマンドは不要)
871
+
872
+ **CLIコマンド - Pattern A (NPM Package):**
873
+
874
+ ```bash
875
+ cd /tmp/michi-manual-test-claude-code
876
+ michi phase:run java-calculator-webapp phase-a
877
+ ```
878
+
879
+ **CLIコマンド - Pattern B (Development):**
880
+
881
+ ```bash
882
+ cd /tmp/michi-manual-test-claude-code
883
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp phase-a
884
+ ```
885
+
886
+ **期待される結果:**
887
+
888
+ - PR前自動テストが実行される
889
+ - バリデーションが成功する
890
+
891
+ #### 3.9 Phase 3: 追加QA(任意)
892
+
893
+ **注意:** 手動検証では実際のQAは行わず、フローの確認のみ
894
+
895
+ #### 3.10 Phase B: リリース準備テスト(任意)
896
+
897
+ **スラッシュコマンド:** なし(このフェーズにはスラッシュコマンドは不要)
898
+
899
+ **前提条件:**
900
+
901
+ - Phase 0.3 (test-type-selection) でテストタイプが選択済みであること
902
+ - アプリケーションの実装が完了していること
903
+
904
+ **CLIコマンド - Pattern A (NPM Package):**
905
+
906
+ ```bash
907
+ cd /tmp/michi-manual-test-claude-code
908
+ michi phase:run java-calculator-webapp phase-b
909
+ ```
910
+
911
+ **CLIコマンド - Pattern B (Development):**
912
+
913
+ ```bash
914
+ cd /tmp/michi-manual-test-claude-code
915
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp phase-b
916
+ ```
917
+
918
+ **期待される結果:**
919
+
920
+ - `test-type-selection.json`から選択されたテストタイプを読み込む
921
+ - Phase Bに該当するテスト(performance, security, integration, e2e)の実行ファイルを生成
922
+ - `.kiro/specs/<feature>/test-execution/` 配下にテスト実行ファイルが作成される
923
+
924
+ **生成されるファイル例:**
925
+
926
+ | テストタイプ | 生成ファイル |
927
+ | ------------ | ------------------------------------------------------------------------------------- |
928
+ | performance | `test-execution/performance/locustfile.py`, `load-test-plan.md` |
929
+ | security | `test-execution/security/zap-config.yaml`, `run-zap-scan.sh`, `security-test-plan.md` |
930
+ | integration | `test-execution/integration/integration-checklist.md` |
931
+ | e2e | `test-execution/e2e/e2e-checklist.md` |
932
+
933
+ **注意:** 生成されるファイルはテンプレートとガイドです。実際のテストツール(Locust, k6, OWASP ZAP等)の選定と設定は、プロジェクトの要件に応じて行ってください。
934
+
935
+ #### 3.11 Phase 4: リリース準備(任意)
936
+
937
+ **注意:** 手動検証では実際のリリース準備は行わず、フローの確認のみ
938
+
939
+ #### 3.12 Phase 5: リリース(任意)
940
+
941
+ **注意:** 手動検証では実際のリリースは行わず、フローの確認のみ
942
+
943
+ ### Step 4: 成功確認
944
+
945
+ すべてのコマンドが正常に完了し、ファイル構造が作成されていることを確認:
946
+
947
+ ```
948
+ /tmp/michi-manual-test-claude-code/
949
+ ├── .claude/
950
+ │ ├── CLAUDE.md
951
+ │ └── commands/
952
+ │ ├── kiro-spec-init.md (cc-sdd)
953
+ │ ├── kiro-spec-requirements.md (cc-sdd)
954
+ │ ├── kiro-spec-design.md (cc-sdd)
955
+ │ ├── kiro-spec-tasks.md (cc-sdd)
956
+ │ ├── ... (cc-sdd提供の他のコマンド)
957
+ │ ├── michi-confluence-sync.md (Michi)
958
+ │ └── michi-project-switch.md (Michi)
959
+ └── .kiro/
960
+ └── specs/
961
+ └── java-calculator-webapp/
962
+ ├── spec.json
963
+ ├── requirements.md (Step 3.2 AIで作成)
964
+ ├── design.md (Step 3.3 AIで作成)
965
+ ├── tasks.md (Step 3.4 AIで作成)
966
+ ├── test-type-selection.json (Step 3.6 CLIで作成)
967
+ ├── test-specs/ (Step 3.7 CLIで作成)
968
+ │ └── *.md
969
+ └── test-execution/ (Step 3.10 Phase Bで作成、任意)
970
+ ├── performance/
971
+ ├── security/
972
+ ├── integration/
973
+ └── e2e/
974
+ ```
975
+
976
+ **重要な注意事項:**
977
+
978
+ Phase 0.1 (requirements)、Phase 0.2 (design)、Phase 0.5-0.6 (tasks) のCLIコマンド実行により、以下が作成されます:
979
+
980
+ - Confluenceページ(requirements、design用)
981
+ - JIRAチケット(tasks用)
982
+
983
+ これらはConfluence/JIRA上に作成されるため、ローカルファイルシステムには追加ファイルは生成されません。
984
+
985
+ ---
986
+
987
+ ## 1.3 Claude Agent SDK
988
+
989
+ ### サポート状況
990
+
991
+ - ⚠️ cc-sdd: 暫定対応(`--claude` フラグを使用)
992
+ - ⚠️ Michi: 暫定対応(`--claude-agent` フラグを使用)
993
+
994
+ ### 注意事項
995
+
996
+ Claude Agent SDKは正式なcc-sdd対応が未完了です。現在は以下の制限があります:
997
+
998
+ 1. cc-sddインストール時は `--claude` フラグを使用(`--claude-agent` フラグは存在しない)
999
+ 2. Michiセットアップ時は `--claude-agent` フラグを使用
1000
+ 3. 一部機能が正常に動作しない可能性あり
1001
+
1002
+ ### Step 0: テストディレクトリの準備
1003
+
1004
+ ```bash
1005
+ # テストディレクトリを作成
1006
+ mkdir -p /tmp/michi-manual-test-claude-agent
1007
+ cd /tmp/michi-manual-test-claude-agent
1008
+
1009
+ # Gitリポジトリとして初期化
1010
+ git init
1011
+ git config user.name "Test User"
1012
+ git config user.email "test@example.com"
1013
+
1014
+ # 初期コミット
1015
+ touch README.md
1016
+ git add README.md
1017
+ git commit -m "Initial commit"
1018
+ ```
1019
+
1020
+ ### Step 1: Phase 1 - cc-sddのインストール
1021
+
1022
+ ⚠️ **重要**: `--claude-agent` フラグは存在しないため、`--claude` を使用
1023
+
1024
+ ```bash
1025
+ cd /tmp/michi-manual-test-claude-agent
1026
+
1027
+ # cc-sddをインストール(Claudeフラグを使用)
1028
+ npx cc-sdd@latest --claude --lang ja
1029
+ ```
1030
+
1031
+ #### 確認事項
1032
+
1033
+ ```bash
1034
+ ls -la /tmp/michi-manual-test-claude-agent/.claude/
1035
+ # .claude/CLAUDE.md と commands/ が生成される
1036
+ ```
1037
+
1038
+ ### Step 2: Phase 2 - Michiのセットアップ
1039
+
1040
+ #### Pattern A: NPM Package(推奨)
1041
+
1042
+ ```bash
1043
+ cd /tmp/michi-manual-test-claude-agent
1044
+
1045
+ # Michiパッケージをグローバルインストール(まだの場合)
1046
+ npm install -g @sk8metal/michi-cli
1047
+
1048
+ # Michiセットアップ(Claude Agent SDK用)
1049
+ michi setup-existing --claude-agent --lang ja
1050
+ ```
1051
+
1052
+ #### Pattern B: Development(開発環境)
1053
+
1054
+ ```bash
1055
+ cd /tmp/michi-manual-test-claude-agent
1056
+
1057
+ # 開発環境のMichiを使用してセットアップ
1058
+ npx tsx ~/Work/git/michi/src/cli.ts setup-existing --claude-agent --lang ja
1059
+ ```
1060
+
1061
+ #### 確認事項
1062
+
1063
+ Michiは `.claude/agents/` ディレクトリにサブエージェント定義を追加します:
1064
+
1065
+ ```bash
1066
+ ls -la /tmp/michi-manual-test-claude-agent/.claude/agents/
1067
+ # 出力例:
1068
+ # .claude/agents/
1069
+ # manager-agent.md
1070
+ # developer.md
1071
+ # designer.md
1072
+ # tester.md
1073
+ ```
1074
+
1075
+ ### Step 3: フェーズ実行
1076
+
1077
+ 各フェーズごとに、スラッシュコマンド(該当する場合)とCLIコマンドを順番に実行します。
1078
+
1079
+ #### 3.0 初期化
1080
+
1081
+ Claude Agent SDKを起動し、スラッシュコマンドを実行:
1082
+
1083
+ ```
1084
+ /kiro:spec-init マニュアルテスト機能
1085
+ ```
1086
+
1087
+ **期待される動作:**
1088
+
1089
+ - `.kiro/specs/java-calculator-webapp/` ディレクトリが作成される
1090
+ - `spec.json` が初期化される
1091
+
1092
+ #### 3.1 Phase 0.1: 要件定義(必須)
1093
+
1094
+ **スラッシュコマンド:**
1095
+
1096
+ ```
1097
+ /kiro:spec-requirements java-calculator-webapp
1098
+ ```
1099
+
1100
+ **期待される動作:**
1101
+
1102
+ - `requirements.md` が生成される
1103
+ - AIが要件を整理して記載
1104
+
1105
+ **CLIコマンド - Pattern A (NPM Package):**
1106
+
1107
+ ```bash
1108
+ cd /tmp/michi-manual-test-claude-agent
1109
+ michi phase:run java-calculator-webapp requirements
1110
+ ```
1111
+
1112
+ **CLIコマンド - Pattern B (Development):**
1113
+
1114
+ ```bash
1115
+ cd /tmp/michi-manual-test-claude-agent
1116
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp requirements
1117
+ ```
1118
+
1119
+ **期待される結果:**
1120
+
1121
+ - Confluenceページが作成される
1122
+ - バリデーションが成功する
1123
+
1124
+ #### 3.2 Phase 0.2: 設計(必須)
1125
+
1126
+ **スラッシュコマンド:**
1127
+
1128
+ ```
1129
+ /kiro:spec-design java-calculator-webapp
1130
+ ```
1131
+
1132
+ **期待される動作:**
1133
+
1134
+ - `design.md` が生成される
1135
+ - AIが設計内容を記載
1136
+
1137
+ **CLIコマンド - Pattern A (NPM Package):**
1138
+
1139
+ ```bash
1140
+ cd /tmp/michi-manual-test-claude-agent
1141
+ michi phase:run java-calculator-webapp design
1142
+ ```
1143
+
1144
+ **CLIコマンド - Pattern B (Development):**
1145
+
1146
+ ```bash
1147
+ cd /tmp/michi-manual-test-claude-agent
1148
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp design
1149
+ ```
1150
+
1151
+ **期待される結果:**
1152
+
1153
+ - Confluenceページが作成される
1154
+ - バリデーションが成功する
1155
+
1156
+ #### 3.3 Phase 0.3: テストタイプ選択(任意)
1157
+
1158
+ **スラッシュコマンド:** なし(このフェーズにはスラッシュコマンドは不要)
1159
+
1160
+ **CLIコマンド - Pattern A (NPM Package):**
1161
+
1162
+ ```bash
1163
+ cd /tmp/michi-manual-test-claude-agent
1164
+ michi phase:run java-calculator-webapp test-type-selection
1165
+ ```
1166
+
1167
+ **CLIコマンド - Pattern B (Development):**
1168
+
1169
+ ```bash
1170
+ cd /tmp/michi-manual-test-claude-agent
1171
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp test-type-selection
1172
+ ```
1173
+
1174
+ **期待される結果:**
1175
+
1176
+ - テストタイプの選択が完了する
1177
+ - バリデーションが成功する
1178
+
1179
+ #### 3.4 Phase 0.4: テスト仕様書作成(任意)
1180
+
1181
+ **スラッシュコマンド:** なし(このフェーズにはスラッシュコマンドは不要)
1182
+
1183
+ **CLIコマンド - Pattern A (NPM Package):**
1184
+
1185
+ ```bash
1186
+ cd /tmp/michi-manual-test-claude-agent
1187
+ michi phase:run java-calculator-webapp test-spec
1188
+ ```
1189
+
1190
+ **CLIコマンド - Pattern B (Development):**
1191
+
1192
+ ```bash
1193
+ cd /tmp/michi-manual-test-claude-agent
1194
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp test-spec
1195
+ ```
1196
+
1197
+ **期待される結果:**
1198
+
1199
+ - テスト仕様書が作成される
1200
+ - バリデーションが成功する
1201
+
1202
+ #### 3.5 Phase 0.5-0.6: タスク分割・JIRA同期(必須)
1203
+
1204
+ **スラッシュコマンド:**
1205
+
1206
+ ```
1207
+ /kiro:spec-tasks java-calculator-webapp
1208
+ ```
1209
+
1210
+ **期待される動作:**
1211
+
1212
+ - `tasks.md` が生成される
1213
+ - ストーリー、タスク、工数が記載される
1214
+
1215
+ **CLIコマンド - Pattern A (NPM Package):**
1216
+
1217
+ ```bash
1218
+ cd /tmp/michi-manual-test-claude-agent
1219
+ michi phase:run java-calculator-webapp tasks
1220
+ ```
1221
+
1222
+ **CLIコマンド - Pattern B (Development):**
1223
+
1224
+ ```bash
1225
+ cd /tmp/michi-manual-test-claude-agent
1226
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp tasks
1227
+ ```
1228
+
1229
+ **期待される結果:**
1230
+
1231
+ - JIRAチケットが作成される
1232
+ - バリデーションが成功する
1233
+
1234
+ #### 3.6 Phase 1: 環境構築(任意)
1235
+
1236
+ **スラッシュコマンド:** なし(このフェーズにはスラッシュコマンドは不要)
1237
+
1238
+ **CLIコマンド - Pattern A (NPM Package):**
1239
+
1240
+ ```bash
1241
+ cd /tmp/michi-manual-test-claude-agent
1242
+ michi phase:run java-calculator-webapp environment-setup
1243
+ ```
1244
+
1245
+ **CLIコマンド - Pattern B (Development):**
1246
+
1247
+ ```bash
1248
+ cd /tmp/michi-manual-test-claude-agent
1249
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp environment-setup
1250
+ ```
1251
+
1252
+ **期待される結果:**
1253
+
1254
+ - 環境構築プロセスが完了する
1255
+ - バリデーションが成功する
1256
+
1257
+ #### 3.7 Phase 2: TDD実装(必須)
1258
+
1259
+ **スラッシュコマンド:**
1260
+
1261
+ ```
1262
+ /kiro:spec-impl java-calculator-webapp
1263
+ ```
1264
+
1265
+ **期待される動作:**
1266
+
1267
+ - TDD(RED-GREEN-REFACTOR)サイクルで実装
1268
+ - 各タスクの実装とテストが完了
1269
+
1270
+ **注意:** 実際の実装は行わず、コマンドの動作確認のみ
1271
+
1272
+ **JIRA連携について:**
1273
+ JIRA連携は `/kiro:spec-impl` コマンド実行時に自動で行われます:
1274
+
1275
+ - spec.json から JIRA 情報(Epic + Story)を自動取得
1276
+ - Epic と最初の Story を「進行中」に移動
1277
+ - TDD 実装
1278
+ - PR 作成
1279
+ - Epic と最初の Story を「レビュー待ち」に移動
1280
+ - JIRA に PR リンクをコメント
1281
+
1282
+ **CLIコマンド - 個別JIRA操作(任意)- Pattern A (NPM Package):**
1283
+
1284
+ ```bash
1285
+ cd /tmp/michi-manual-test-claude-agent
1286
+ # ステータス変更
1287
+ michi jira:transition DEMO-103 "In Progress"
1288
+
1289
+ # コメント追加
1290
+ michi jira:comment DEMO-103 "テストコメント"
1291
+ ```
1292
+
1293
+ **CLIコマンド - 個別JIRA操作(任意)- Pattern B (Development):**
1294
+
1295
+ ```bash
1296
+ cd /tmp/michi-manual-test-claude-agent
1297
+ # ステータス変更
1298
+ npx tsx ~/Work/git/michi/src/cli.ts jira:transition DEMO-103 "In Progress"
1299
+
1300
+ # コメント追加
1301
+ npx tsx ~/Work/git/michi/src/cli.ts jira:comment DEMO-103 "テストコメント"
1302
+ ```
1303
+
1304
+ **期待される結果:**
1305
+
1306
+ - JIRAステータスが変更される
1307
+ - JIRAにコメントが追加される
1308
+
1309
+ #### 3.8 Phase A: PR前自動テスト(任意)
1310
+
1311
+ **スラッシュコマンド:** なし(このフェーズにはスラッシュコマンドは不要)
1312
+
1313
+ **CLIコマンド - Pattern A (NPM Package):**
1314
+
1315
+ ```bash
1316
+ cd /tmp/michi-manual-test-claude-agent
1317
+ michi phase:run java-calculator-webapp phase-a
1318
+ ```
1319
+
1320
+ **CLIコマンド - Pattern B (Development):**
1321
+
1322
+ ```bash
1323
+ cd /tmp/michi-manual-test-claude-agent
1324
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp phase-a
1325
+ ```
1326
+
1327
+ **期待される結果:**
1328
+
1329
+ - PR前自動テストが実行される
1330
+ - バリデーションが成功する
1331
+
1332
+ #### 3.9 Phase 3: 追加QA(任意)
1333
+
1334
+ **注意:** 手動検証では実際のQAは行わず、フローの確認のみ
1335
+
1336
+ #### 3.10 Phase B: リリース準備テスト(任意)
1337
+
1338
+ **スラッシュコマンド:** なし(このフェーズにはスラッシュコマンドは不要)
1339
+
1340
+ **前提条件:**
1341
+
1342
+ - Phase 0.3 (test-type-selection) でテストタイプが選択済みであること
1343
+ - アプリケーションの実装が完了していること
1344
+
1345
+ **CLIコマンド - Pattern A (NPM Package):**
1346
+
1347
+ ```bash
1348
+ cd /tmp/michi-manual-test-claude-agent
1349
+ michi phase:run java-calculator-webapp phase-b
1350
+ ```
1351
+
1352
+ **CLIコマンド - Pattern B (Development):**
1353
+
1354
+ ```bash
1355
+ cd /tmp/michi-manual-test-claude-agent
1356
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp phase-b
1357
+ ```
1358
+
1359
+ **期待される結果:**
1360
+
1361
+ - `test-type-selection.json`から選択されたテストタイプを読み込む
1362
+ - Phase Bに該当するテスト(performance, security, integration, e2e)の実行ファイルを生成
1363
+ - `.kiro/specs/<feature>/test-execution/` 配下にテスト実行ファイルが作成される
1364
+
1365
+ **生成されるファイル例:**
1366
+
1367
+ | テストタイプ | 生成ファイル |
1368
+ | ------------ | ------------------------------------------------------------------------------------- |
1369
+ | performance | `test-execution/performance/locustfile.py`, `load-test-plan.md` |
1370
+ | security | `test-execution/security/zap-config.yaml`, `run-zap-scan.sh`, `security-test-plan.md` |
1371
+ | integration | `test-execution/integration/integration-checklist.md` |
1372
+ | e2e | `test-execution/e2e/e2e-checklist.md` |
1373
+
1374
+ **注意:** 生成されるファイルはテンプレートとガイドです。実際のテストツール(Locust, k6, OWASP ZAP等)の選定と設定は、プロジェクトの要件に応じて行ってください。
1375
+
1376
+ #### 3.11 Phase 4: リリース準備(任意)
1377
+
1378
+ **注意:** 手動検証では実際のリリース準備は行わず、フローの確認のみ
1379
+
1380
+ #### 3.12 Phase 5: リリース(任意)
1381
+
1382
+ **注意:** 手動検証では実際のリリースは行わず、フローの確認のみ
1383
+
1384
+ ### Step 4: 成功確認
1385
+
1386
+ ⚠️ **検証が必要**: Claude Agent SDK環境でのcc-sddコマンドとMichi CLIコマンドの動作は未検証です。
1387
+
1388
+ ---
1389
+
1390
+ ## 1.4 Cline
1391
+
1392
+ ### サポート状況
1393
+
1394
+ - ❓ cc-sdd: 未確認(テンプレートは存在)
1395
+ - ✅ Michi: テンプレート対応
1396
+
1397
+ ### 注意事項
1398
+
1399
+ Clineのcc-sdd対応は未確認です。以下の手順は理論上の実行手順であり、実際の動作検証が必要です。
1400
+
1401
+ ### Step 0: テストディレクトリの準備
1402
+
1403
+ ```bash
1404
+ # テストディレクトリを作成
1405
+ mkdir -p /tmp/michi-manual-test-cline
1406
+ cd /tmp/michi-manual-test-cline
1407
+
1408
+ # Gitリポジトリとして初期化
1409
+ git init
1410
+ git config user.name "Test User"
1411
+ git config user.email "test@example.com"
1412
+
1413
+ # 初期コミット
1414
+ touch README.md
1415
+ git add README.md
1416
+ git commit -m "Initial commit"
1417
+ ```
1418
+
1419
+ ### Step 1: Phase 1 - cc-sddのインストール(未確認)
1420
+
1421
+ ❓ **未確認**: Cline用のcc-sddフラグが存在するか不明
1422
+
1423
+ ```bash
1424
+ cd /tmp/michi-manual-test-cline
1425
+
1426
+ # cc-sddをインストール(Cline用フラグが存在すると仮定)
1427
+ npx cc-sdd@latest --cline --lang ja
1428
+ ```
1429
+
1430
+ ⚠️ **エラーが発生する場合**: `--cline` フラグが存在しない可能性があります。その場合、Clineでのcc-sdd使用は現時点で非対応です。
1431
+
1432
+ ### Step 2: Phase 2 - Michiのセットアップ
1433
+
1434
+ Michiは Cline のテンプレートを提供しています。
1435
+
1436
+ #### Pattern A: NPM Package(推奨)
1437
+
1438
+ ```bash
1439
+ cd /tmp/michi-manual-test-cline
1440
+
1441
+ # Michiパッケージをグローバルインストール(まだの場合)
1442
+ npm install -g @sk8metal/michi-cli
1443
+
1444
+ # Michiセットアップ(Cline用)
1445
+ michi setup-existing --cline --lang ja
1446
+ ```
1447
+
1448
+ #### Pattern B: Development(開発環境)
1449
+
1450
+ ```bash
1451
+ cd /tmp/michi-manual-test-cline
1452
+
1453
+ # 開発環境のMichiを使用してセットアップ
1454
+ npx tsx ~/Work/git/michi/src/cli.ts setup-existing --cline --lang ja
1455
+ ```
1456
+
1457
+ #### 確認事項
1458
+
1459
+ Michiは `.clinerules` ファイルを作成します:
1460
+
1461
+ ```bash
1462
+ ls -la /tmp/michi-manual-test-cline/.clinerules
1463
+ ```
1464
+
1465
+ ### Step 3: フェーズ実行(要検証)
1466
+
1467
+ ❓ **未確認**: Clineでのcc-sddコマンド実行は未検証です。以下は理論上の手順です。
1468
+
1469
+ 各フェーズごとに、スラッシュコマンド(該当する場合)とCLIコマンドを順番に実行します。
1470
+
1471
+ #### 3.0 初期化
1472
+
1473
+ Clineを起動し、スラッシュコマンドを実行:
1474
+
1475
+ ```
1476
+ /kiro:spec-init マニュアルテスト機能
1477
+ ```
1478
+
1479
+ **期待される動作:**
1480
+
1481
+ - `.kiro/specs/java-calculator-webapp/` ディレクトリが作成される
1482
+ - `spec.json` が初期化される
1483
+
1484
+ #### 3.1 Phase 0.1: 要件定義(必須)
1485
+
1486
+ **スラッシュコマンド:**
1487
+
1488
+ ```
1489
+ /kiro:spec-requirements java-calculator-webapp
1490
+ ```
1491
+
1492
+ **期待される動作:**
1493
+
1494
+ - `requirements.md` が生成される
1495
+ - AIが要件を整理して記載
1496
+
1497
+ **CLIコマンド - Pattern A (NPM Package):**
1498
+
1499
+ ```bash
1500
+ cd /tmp/michi-manual-test-cline
1501
+ michi phase:run java-calculator-webapp requirements
1502
+ ```
1503
+
1504
+ **CLIコマンド - Pattern B (Development):**
1505
+
1506
+ ```bash
1507
+ cd /tmp/michi-manual-test-cline
1508
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp requirements
1509
+ ```
1510
+
1511
+ **期待される結果:**
1512
+
1513
+ - Confluenceページが作成される
1514
+ - バリデーションが成功する
1515
+
1516
+ #### 3.2 Phase 0.2: 設計(必須)
1517
+
1518
+ **スラッシュコマンド:**
1519
+
1520
+ ```
1521
+ /kiro:spec-design java-calculator-webapp
1522
+ ```
1523
+
1524
+ **期待される動作:**
1525
+
1526
+ - `design.md` が生成される
1527
+ - AIが設計内容を記載
1528
+
1529
+ **CLIコマンド - Pattern A (NPM Package):**
1530
+
1531
+ ```bash
1532
+ cd /tmp/michi-manual-test-cline
1533
+ michi phase:run java-calculator-webapp design
1534
+ ```
1535
+
1536
+ **CLIコマンド - Pattern B (Development):**
1537
+
1538
+ ```bash
1539
+ cd /tmp/michi-manual-test-cline
1540
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp design
1541
+ ```
1542
+
1543
+ **期待される結果:**
1544
+
1545
+ - Confluenceページが作成される
1546
+ - バリデーションが成功する
1547
+
1548
+ #### 3.3 Phase 0.3: テストタイプ選択(任意)
1549
+
1550
+ **スラッシュコマンド:** なし(このフェーズにはスラッシュコマンドは不要)
1551
+
1552
+ **CLIコマンド - Pattern A (NPM Package):**
1553
+
1554
+ ```bash
1555
+ cd /tmp/michi-manual-test-cline
1556
+ michi phase:run java-calculator-webapp test-type-selection
1557
+ ```
1558
+
1559
+ **CLIコマンド - Pattern B (Development):**
1560
+
1561
+ ```bash
1562
+ cd /tmp/michi-manual-test-cline
1563
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp test-type-selection
1564
+ ```
1565
+
1566
+ **期待される結果:**
1567
+
1568
+ - テストタイプの選択が完了する
1569
+ - バリデーションが成功する
1570
+
1571
+ #### 3.4 Phase 0.4: テスト仕様書作成(任意)
1572
+
1573
+ **スラッシュコマンド:** なし(このフェーズにはスラッシュコマンドは不要)
1574
+
1575
+ **CLIコマンド - Pattern A (NPM Package):**
1576
+
1577
+ ```bash
1578
+ cd /tmp/michi-manual-test-cline
1579
+ michi phase:run java-calculator-webapp test-spec
1580
+ ```
1581
+
1582
+ **CLIコマンド - Pattern B (Development):**
1583
+
1584
+ ```bash
1585
+ cd /tmp/michi-manual-test-cline
1586
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp test-spec
1587
+ ```
1588
+
1589
+ **期待される結果:**
1590
+
1591
+ - テスト仕様書が作成される
1592
+ - バリデーションが成功する
1593
+
1594
+ #### 3.5 Phase 0.5-0.6: タスク分割・JIRA同期(必須)
1595
+
1596
+ **スラッシュコマンド:**
1597
+
1598
+ ```
1599
+ /kiro:spec-tasks java-calculator-webapp
1600
+ ```
1601
+
1602
+ **期待される動作:**
1603
+
1604
+ - `tasks.md` が生成される
1605
+ - ストーリー、タスク、工数が記載される
1606
+
1607
+ **CLIコマンド - Pattern A (NPM Package):**
1608
+
1609
+ ```bash
1610
+ cd /tmp/michi-manual-test-cline
1611
+ michi phase:run java-calculator-webapp tasks
1612
+ ```
1613
+
1614
+ **CLIコマンド - Pattern B (Development):**
1615
+
1616
+ ```bash
1617
+ cd /tmp/michi-manual-test-cline
1618
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp tasks
1619
+ ```
1620
+
1621
+ **期待される結果:**
1622
+
1623
+ - JIRAチケットが作成される
1624
+ - バリデーションが成功する
1625
+
1626
+ #### 3.6 Phase 1: 環境構築(任意)
1627
+
1628
+ **スラッシュコマンド:** なし(このフェーズにはスラッシュコマンドは不要)
1629
+
1630
+ **CLIコマンド - Pattern A (NPM Package):**
1631
+
1632
+ ```bash
1633
+ cd /tmp/michi-manual-test-cline
1634
+ michi phase:run java-calculator-webapp environment-setup
1635
+ ```
1636
+
1637
+ **CLIコマンド - Pattern B (Development):**
1638
+
1639
+ ```bash
1640
+ cd /tmp/michi-manual-test-cline
1641
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp environment-setup
1642
+ ```
1643
+
1644
+ **期待される結果:**
1645
+
1646
+ - 環境構築プロセスが完了する
1647
+ - バリデーションが成功する
1648
+
1649
+ #### 3.7 Phase 2: TDD実装(必須)
1650
+
1651
+ **スラッシュコマンド:**
1652
+
1653
+ ```
1654
+ /kiro:spec-impl java-calculator-webapp
1655
+ ```
1656
+
1657
+ **期待される動作:**
1658
+
1659
+ - TDD(RED-GREEN-REFACTOR)サイクルで実装
1660
+ - 各タスクの実装とテストが完了
1661
+
1662
+ **注意:** 実際の実装は行わず、コマンドの動作確認のみ
1663
+
1664
+ **JIRA連携について:**
1665
+ JIRA連携は `/kiro:spec-impl` コマンド実行時に自動で行われます:
1666
+
1667
+ - spec.json から JIRA 情報(Epic + Story)を自動取得
1668
+ - Epic と最初の Story を「進行中」に移動
1669
+ - TDD 実装
1670
+ - PR 作成
1671
+ - Epic と最初の Story を「レビュー待ち」に移動
1672
+ - JIRA に PR リンクをコメント
1673
+
1674
+ **CLIコマンド - 個別JIRA操作(任意)- Pattern A (NPM Package):**
1675
+
1676
+ ```bash
1677
+ cd /tmp/michi-manual-test-cline
1678
+ # ステータス変更
1679
+ michi jira:transition DEMO-103 "In Progress"
1680
+
1681
+ # コメント追加
1682
+ michi jira:comment DEMO-103 "テストコメント"
1683
+ ```
1684
+
1685
+ **CLIコマンド - 個別JIRA操作(任意)- Pattern B (Development):**
1686
+
1687
+ ```bash
1688
+ cd /tmp/michi-manual-test-cline
1689
+ # ステータス変更
1690
+ npx tsx ~/Work/git/michi/src/cli.ts jira:transition DEMO-103 "In Progress"
1691
+
1692
+ # コメント追加
1693
+ npx tsx ~/Work/git/michi/src/cli.ts jira:comment DEMO-103 "テストコメント"
1694
+ ```
1695
+
1696
+ **期待される結果:**
1697
+
1698
+ - JIRAステータスが変更される
1699
+ - JIRAにコメントが追加される
1700
+
1701
+ #### 3.8 Phase A: PR前自動テスト(任意)
1702
+
1703
+ **スラッシュコマンド:** なし(このフェーズにはスラッシュコマンドは不要)
1704
+
1705
+ **CLIコマンド - Pattern A (NPM Package):**
1706
+
1707
+ ```bash
1708
+ cd /tmp/michi-manual-test-cline
1709
+ michi phase:run java-calculator-webapp phase-a
1710
+ ```
1711
+
1712
+ **CLIコマンド - Pattern B (Development):**
1713
+
1714
+ ```bash
1715
+ cd /tmp/michi-manual-test-cline
1716
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp phase-a
1717
+ ```
1718
+
1719
+ **期待される結果:**
1720
+
1721
+ - PR前自動テストが実行される
1722
+ - バリデーションが成功する
1723
+
1724
+ #### 3.9 Phase 3: 追加QA(任意)
1725
+
1726
+ **注意:** 手動検証では実際のQAは行わず、フローの確認のみ
1727
+
1728
+ #### 3.10 Phase B: リリース準備テスト(任意)
1729
+
1730
+ **スラッシュコマンド:** なし(このフェーズにはスラッシュコマンドは不要)
1731
+
1732
+ **前提条件:**
1733
+
1734
+ - Phase 0.3 (test-type-selection) でテストタイプが選択済みであること
1735
+ - アプリケーションの実装が完了していること
1736
+
1737
+ **CLIコマンド - Pattern A (NPM Package):**
1738
+
1739
+ ```bash
1740
+ cd /tmp/michi-manual-test-cline
1741
+ michi phase:run java-calculator-webapp phase-b
1742
+ ```
1743
+
1744
+ **CLIコマンド - Pattern B (Development):**
1745
+
1746
+ ```bash
1747
+ cd /tmp/michi-manual-test-cline
1748
+ npx tsx ~/Work/git/michi/src/cli.ts phase:run java-calculator-webapp phase-b
1749
+ ```
1750
+
1751
+ **期待される結果:**
1752
+
1753
+ - `test-type-selection.json`から選択されたテストタイプを読み込む
1754
+ - Phase Bに該当するテスト(performance, security, integration, e2e)の実行ファイルを生成
1755
+ - `.kiro/specs/<feature>/test-execution/` 配下にテスト実行ファイルが作成される
1756
+
1757
+ **生成されるファイル例:**
1758
+
1759
+ | テストタイプ | 生成ファイル |
1760
+ | ------------ | ------------------------------------------------------------------------------------- |
1761
+ | performance | `test-execution/performance/locustfile.py`, `load-test-plan.md` |
1762
+ | security | `test-execution/security/zap-config.yaml`, `run-zap-scan.sh`, `security-test-plan.md` |
1763
+ | integration | `test-execution/integration/integration-checklist.md` |
1764
+ | e2e | `test-execution/e2e/e2e-checklist.md` |
1765
+
1766
+ **注意:** 生成されるファイルはテンプレートとガイドです。実際のテストツール(Locust, k6, OWASP ZAP等)の選定と設定は、プロジェクトの要件に応じて行ってください。
1767
+
1768
+ #### 3.11 Phase 4: リリース準備(任意)
1769
+
1770
+ **注意:** 手動検証では実際のリリース準備は行わず、フローの確認のみ
1771
+
1772
+ #### 3.12 Phase 5: リリース(任意)
1773
+
1774
+ **注意:** 手動検証では実際のリリースは行わず、フローの確認のみ
1775
+
1776
+ ### Step 4: 成功確認(要検証)
1777
+
1778
+ ❓ **未確認**: ClineでのMichi CLIコマンドの動作は未検証です。
1779
+
1780
+ ---
1781
+
1782
+ ## 1.5 Gemini
1783
+
1784
+ ### サポート状況
1785
+
1786
+ - 🚧 cc-sdd: 準備中
1787
+ - 🚧 Michi: 準備中
1788
+
1789
+ ### 現状
1790
+
1791
+ Gemini用のテンプレートは現在開発中です。対応予定時期は未定です。
1792
+
1793
+ ### 今後の対応予定
1794
+
1795
+ 1. cc-sddにGemini用フラグの追加
1796
+ 2. MichiにGemini用テンプレートの追加
1797
+ 3. 動作検証
1798
+
1799
+ ---
1800
+
1801
+ ## 1.6 Codex
1802
+
1803
+ ### サポート状況
1804
+
1805
+ - 🚧 cc-sdd: 準備中
1806
+ - 🚧 Michi: 準備中
1807
+
1808
+ ### 現状
1809
+
1810
+ Codex用のテンプレートは現在開発中です。対応予定時期は未定です。
1811
+
1812
+ ### 今後の対応予定
1813
+
1814
+ 1. cc-sddにCodex用フラグの追加
1815
+ 2. MichiにCodex用テンプレートの追加
1816
+ 3. 動作検証
1817
+
1818
+ ---
1819
+
1820
+ ## Part 2: 自動テストワークフロー
1821
+
1822
+ 手動検証が完了した後、または手動検証の代わりに、自動テストワークフローを実行できます。
1823
+
1824
+ ### 2.1 開発環境での自動検証
1825
+
1826
+ 開発環境でMichiの機能を自動でテストします。
1827
+
1828
+ ```bash
1829
+ cd ~/Work/git/michi
1830
+
1831
+ # ビルド
1832
+ npm run build
1833
+
1834
+ # 自動検証スクリプトを実行
1835
+ npm run pre-publish
1836
+ ```
1837
+
1838
+ #### pre-publish-check.sh の実行内容
1839
+
1840
+ 1. TypeScriptビルド確認
1841
+ 2. テスト実行(回帰確認)
1842
+ 3. テスト用featureの初期化
1843
+ 4. 新フェーズの動作確認(0.3-0.4, 1, A, B)
1844
+ 5. バリデーションの確認
1845
+ 6. 既存フェーズの動作確認(回帰テスト)
1846
+ 7. CLIヘルプ表示確認
1847
+
1848
+ ### 2.2 NPMパッケージとしての自動検証
1849
+
1850
+ 実際のNPMパッケージとしてインストールした状態での動作を自動でテストします。
1851
+
1852
+ ```bash
1853
+ cd ~/Work/git/michi
1854
+
1855
+ # ビルド
1856
+ npm run build
1857
+
1858
+ # パッケージテストスクリプトを実行
1859
+ npm run test:package
1860
+ ```
1861
+
1862
+ #### test-npm-package.sh の実行内容
1863
+
1864
+ 1. パッケージのビルド
1865
+ 2. npm pack でパッケージを作成
1866
+ 3. テストディレクトリの作成(`/tmp/michi-test-*`)
1867
+ 4. パッケージのインストール
1868
+ 5. `.kiro` ディレクトリ構造の準備
1869
+ 6. CLIコマンドの動作確認(phase:run)
1870
+ 7. バリデーションの確認(validate:phase)
1871
+ 8. CLIヘルプの確認
1872
+ 9. 自動クリーンアップ
1873
+
1874
+ ### 2.3 カスタムテストディレクトリの指定
1875
+
1876
+ デフォルトでは `/tmp/michi-test-*` が使用されますが、カスタムディレクトリを指定することもできます:
1877
+
1878
+ ```bash
1879
+ # カスタムディレクトリでテスト
1880
+ bash scripts/test-npm-package.sh /tmp/my-custom-test-dir
1881
+ ```
1882
+
1883
+ ---
1884
+
1885
+ ## トラブルシューティング
1886
+
1887
+ ### 問題1: cc-sddのインストールが失敗する
1888
+
1889
+ **症状:**
1890
+
1891
+ ```
1892
+ Error: Unknown option: --cline
1893
+ ```
1894
+
1895
+ **原因:**
1896
+ 指定したAI開発ツール用のフラグがcc-sddに存在しない
1897
+
1898
+ **解決方法:**
1899
+
1900
+ 1. cc-sddの最新版を確認: `npm info cc-sdd`
1901
+ 2. サポートされているフラグを確認: `npx cc-sdd@latest --help`
1902
+ 3. 対応していない場合は、他のツール(Cursor または Claude Code)を使用
1903
+
1904
+ ### 問題2: Michiセットアップが既存ファイルと競合する
1905
+
1906
+ **症状:**
1907
+
1908
+ ```
1909
+ Warning: File already exists: .cursor/commands/michi-confluence-sync.md
1910
+ ```
1911
+
1912
+ **原因:**
1913
+ 既にMichiがセットアップされている、または手動で同名ファイルが作成されている
1914
+
1915
+ **解決方法:**
1916
+
1917
+ ```bash
1918
+ # 既存のMichiファイルを削除してから再セットアップ
1919
+ rm -rf .cursor/commands/michi-*.md
1920
+ michi setup-existing --cursor --lang ja
1921
+ ```
1922
+
1923
+ ### 問題3: phase:run コマンドが feature を見つけられない
1924
+
1925
+ **症状:**
1926
+
1927
+ ```
1928
+ Error: Feature 'java-calculator-webapp' not found
1929
+ ```
1930
+
1931
+ **原因:**
1932
+ `.kiro/specs/java-calculator-webapp/` ディレクトリまたは `spec.json` が存在しない
1933
+
1934
+ **解決方法:**
1935
+
1936
+ 1. AIコマンドで初期化されているか確認
1937
+ ```bash
1938
+ ls -la .kiro/specs/java-calculator-webapp/spec.json
1939
+ ```
1940
+ 2. 存在しない場合は、AIコマンド `/kiro:spec-init` を再実行
1941
+
1942
+ ### 問題4: validate:phase が失敗する
1943
+
1944
+ **症状:**
1945
+
1946
+ ```
1947
+ Error: Validation failed for phase test-type-selection
1948
+ ```
1949
+
1950
+ **原因:**
1951
+ 必要なファイルが生成されていない、またはフォーマットが不正
1952
+
1953
+ **解決方法:**
1954
+
1955
+ 1. 該当フェーズの出力ファイルを確認
1956
+ ```bash
1957
+ cat .kiro/specs/java-calculator-webapp/test-types.md
1958
+ ```
1959
+ 2. ファイルが空または不正な場合は、フェーズを再実行
1960
+ ```bash
1961
+ michi phase:run java-calculator-webapp test-type-selection
1962
+ ```
1963
+
1964
+ ### 問題5: 絶対パスコマンドが動作しない(Pattern B)
1965
+
1966
+ **症状:**
1967
+
1968
+ ```
1969
+ Error: Cannot find module '~/Work/git/michi/src/cli.ts'
1970
+ ```
1971
+
1972
+ **原因:**
1973
+ シェルがチルダ `~` を展開していない
1974
+
1975
+ **解決方法:**
1976
+
1977
+ ```bash
1978
+ # チルダの代わりに $HOME を使用
1979
+ npx tsx $HOME/Work/git/michi/src/cli.ts phase:run java-calculator-webapp test-type-selection
1980
+
1981
+ # または完全な絶対パスを使用
1982
+ npx tsx /Users/yourusername/Work/git/michi/src/cli.ts phase:run java-calculator-webapp test-type-selection
1983
+ ```
1984
+
1985
+ ### 問題6: 自動テストスクリプトが途中で失敗する
1986
+
1987
+ **症状:**
1988
+ 自動テストスクリプト(pre-publish または test:package)が途中でエラーで終了する
1989
+
1990
+ **原因:**
1991
+ スクリプトは `set -e` を使用しており、最初のエラーで即座に終了する
1992
+
1993
+ **解決方法:**
1994
+
1995
+ 1. エラーメッセージを確認
1996
+ 2. 該当するコマンドを手動で実行して詳細を確認
1997
+ 3. 問題を修正してから再実行
1998
+
1999
+ ---
2000
+
2001
+ ## まとめ
2002
+
2003
+ ### 検証が必要な項目
2004
+
2005
+ 1. ✅ **Cursor IDE** - 完全に動作確認済み
2006
+ 2. ✅ **Claude Code** - 完全に動作確認済み
2007
+ 3. ⚠️ **Claude Agent SDK** - 暫定対応、詳細な検証が必要
2008
+ 4. ❓ **Cline** - cc-sdd対応が不明、検証が必要
2009
+ 5. 🚧 **Gemini** - 開発中、対応待ち
2010
+ 6. 🚧 **Codex** - 開発中、対応待ち
2011
+
2012
+ ### 推奨される検証順序
2013
+
2014
+ 1. **自動テスト(必須)**
2015
+
2016
+ ```bash
2017
+ npm run pre-publish
2018
+ npm run test:package
2019
+ ```
2020
+
2021
+ 2. **Cursor IDEでの手動検証(推奨)**
2022
+ - 最も安定した環境での動作確認
2023
+
2024
+ 3. **Claude Codeでの手動検証(推奨)**
2025
+ - もう1つの主要ツールでの動作確認
2026
+
2027
+ 4. **その他のツール(任意)**
2028
+ - 時間とリソースがあれば、Claude Agent SDK、Clineでも検証
2029
+
2030
+ ### チェックリスト
2031
+
2032
+ publish前に以下をすべて確認してください:
2033
+
2034
+ - [ ] `npm run pre-publish` が成功
2035
+ - [ ] `npm run test:package` が成功
2036
+ - [ ] Cursor IDEでの手動検証が成功(推奨)
2037
+ - [ ] Claude Codeでの手動検証が成功(推奨)
2038
+ - [ ] package.jsonのバージョンが更新されている
2039
+ - [ ] CHANGELOG.mdが更新されている
2040
+ - [ ] すべてのコミットがプッシュされている
2041
+ - [ ] GitHubでCIが成功している
2042
+
2043
+ ---
2044
+
2045
+ ---
2046
+
2047
+ ## Part 3: Phase Bテストの対話的作成フロー
2048
+
2049
+ このセクションでは、AIとの対話を通じて手動回帰テスト、負荷テスト、セキュリティテストを作成する方法を説明します。
2050
+
2051
+ ### 3.1 対話フロー概要
2052
+
2053
+ ```
2054
+ [開始] ユーザーがテスト作成を依頼
2055
+
2056
+ [ヒアリング] AIが必須項目を確認
2057
+ - テスト対象(エンドポイント、機能)
2058
+ - テストタイプ(手動回帰/負荷/セキュリティ)
2059
+ - 成功基準(応答時間、エラー率など)
2060
+
2061
+ [テンプレート選択] AIが適切なテンプレートを参照
2062
+
2063
+ [生成] AIがテストを作成
2064
+
2065
+ [レビュー] ユーザーがレビュー
2066
+
2067
+ [修正] 必要に応じて修正
2068
+
2069
+ [完了] テスト成果物の確定
2070
+ ```
2071
+
2072
+ ### 3.2 手動回帰テストの作成
2073
+
2074
+ #### 初期ヒアリング
2075
+
2076
+ AIに手動回帰テストの作成を依頼する際、以下の情報を提供してください:
2077
+
2078
+ | 項目 | 説明 | 例 |
2079
+ | ------------------------ | ---------------------- | --------------------------- |
2080
+ | テスト対象エンドポイント | APIのURL | `/api/calculator/evaluate` |
2081
+ | HTTPメソッド | GET, POST, PUT, DELETE | `POST` |
2082
+ | リクエストボディ形式 | JSON, XML, Form | `JSON` |
2083
+ | 期待するHTTPステータス | 成功/エラー時 | `200 OK`, `400 Bad Request` |
2084
+ | 期待するレスポンス形式 | レスポンスの構造 | `{"result": number}` |
2085
+
2086
+ #### サンプルプロンプト
2087
+
2088
+ ```
2089
+ Calculator APIの手動回帰テストを作成してください。
2090
+
2091
+ テスト対象:
2092
+ - エンドポイント: POST /api/calculator/evaluate
2093
+ - リクエストボディ: {"expression": "計算式"}
2094
+ - 期待レスポンス: {"result": 計算結果} または {"error": "エラーメッセージ"}
2095
+
2096
+ テストケースの種類:
2097
+ - 正常系: 基本的な四則演算、優先順位、小数点計算
2098
+ - 異常系: ゼロ除算、構文エラー、空の式
2099
+ - セキュリティ: SQLインジェクション風入力、長大入力
2100
+ ```
2101
+
2102
+ #### 生成されるファイル
2103
+
2104
+ - `docs/testing/manual-regression-guide.md`
2105
+ - または `tests/manual/regression-tests.md`
2106
+
2107
+ ### 3.3 負荷テストの作成
2108
+
2109
+ #### 初期ヒアリング
2110
+
2111
+ AIに負荷テストの作成を依頼する際、以下の情報を提供してください:
2112
+
2113
+ | 項目 | 説明 | 例 |
2114
+ | ---------------- | ----------------------- | ----------------------- |
2115
+ | テスト対象URL | APIのベースURL | `http://localhost:8080` |
2116
+ | 同時ユーザー数 | 最大同時接続数 | `100` |
2117
+ | Spawn rate | ユーザー増加率 | `10/秒` |
2118
+ | テスト時間 | 実行時間 | `60秒` |
2119
+ | 目標スループット | 1秒あたりのリクエスト数 | `100 req/s` |
2120
+ | 目標応答時間 | 平均応答時間 | `< 100ms` |
2121
+
2122
+ #### サンプルプロンプト
2123
+
2124
+ ```
2125
+ Calculator APIの負荷テストをLocustで作成してください。
2126
+
2127
+ テスト対象:
2128
+ - URL: http://localhost:8080
2129
+ - エンドポイント: POST /api/calculator/evaluate
2130
+
2131
+ テスト要件:
2132
+ - 同時ユーザー数: 100
2133
+ - Spawn rate: 10ユーザー/秒
2134
+ - テスト時間: 60秒
2135
+
2136
+ 成功基準:
2137
+ - 平均応答時間: < 100ms
2138
+ - 95パーセンタイル: < 200ms
2139
+ - エラー率: < 1%
2140
+ - スループット: > 100 req/s
2141
+
2142
+ シナリオ:
2143
+ - 基本的な計算(重み5)
2144
+ - 複雑な計算(重み3)
2145
+ - 小数点計算(重み2)
2146
+ ```
2147
+
2148
+ #### 生成されるファイル
2149
+
2150
+ - `tests/load/locustfile.py`
2151
+ - `tests/load/requirements.txt`
2152
+ - `tests/load/README.md`
2153
+
2154
+ ### 3.4 セキュリティテストの作成
2155
+
2156
+ #### 初期ヒアリング
2157
+
2158
+ AIにセキュリティテストの作成を依頼する際、以下の情報を提供してください:
2159
+
2160
+ | 項目 | 説明 | 例 |
2161
+ | -------------- | ------------------------ | -------------------------- |
2162
+ | テスト対象URL | APIのベースURL | `http://localhost:8080` |
2163
+ | スキャンタイプ | Baseline/Quick/Full | `Quick` |
2164
+ | 認証の有無 | 認証が必要か | `なし` |
2165
+ | 検出対象 | 重点的に検出したい脆弱性 | `SQLインジェクション, XSS` |
2166
+
2167
+ #### サンプルプロンプト
2168
+
2169
+ ```
2170
+ Calculator APIのセキュリティテストをOWASP ZAPで作成してください。
2171
+
2172
+ テスト対象:
2173
+ - URL: http://localhost:8080
2174
+ - エンドポイント: /api/calculator/evaluate
2175
+ - 認証: なし
2176
+
2177
+ スキャン要件:
2178
+ - スキャンタイプ: Quick(API向け)
2179
+ - 実行環境: Docker
2180
+
2181
+ 検出対象:
2182
+ - SQLインジェクション
2183
+ - XSS(クロスサイトスクリプティング)
2184
+ - コマンドインジェクション
2185
+ - 情報漏洩
2186
+
2187
+ レポート形式:
2188
+ - HTML(ブラウザ閲覧用)
2189
+ - JSON(CI/CD連携用)
2190
+ ```
2191
+
2192
+ #### 生成されるファイル
2193
+
2194
+ - `tests/security/zap-config.yaml`
2195
+ - `tests/security/run-zap-scan.sh`
2196
+ - `tests/security/README.md`
2197
+
2198
+ ### 3.5 テスト修正の依頼方法
2199
+
2200
+ 生成されたテストを修正する場合、以下のようにAIに依頼します:
2201
+
2202
+ #### 修正依頼の例
2203
+
2204
+ ```
2205
+ # テストケースの追加
2206
+ 負荷テストに以下のシナリオを追加してください:
2207
+ - ランダムな数式を生成するテスト(重み1)
2208
+ - エラーハンドリングのテスト(重み1)
2209
+
2210
+ # パラメータの変更
2211
+ 同時ユーザー数を100から500に変更してください。
2212
+
2213
+ # 成功基準の変更
2214
+ 95パーセンタイルの目標を200msから150msに変更してください。
2215
+
2216
+ # ツールの変更
2217
+ 負荷テストをLocustからk6に変更してください。
2218
+ ```
2219
+
2220
+ ### 3.6 対話的作成のベストプラクティス
2221
+
2222
+ 1. **段階的に作成**: まず基本的なテストを生成し、レビュー後に追加・修正
2223
+ 2. **具体的な数値を提供**: 「高負荷」ではなく「同時100ユーザー」のように具体的に
2224
+ 3. **成功基準を明確に**: 何をもって成功とするか事前に定義
2225
+ 4. **既存テストを参照**: 既存のテストファイルがあれば、それを元に拡張
2226
+ 5. **テンプレートを活用**: AIにテンプレートを参照させることで一貫性を確保
2227
+
2228
+ ### 3.7 使用ツール一覧
2229
+
2230
+ | テストタイプ | 推奨ツール | 代替ツール |
2231
+ | ------------------ | --------------- | --------------------- |
2232
+ | 手動回帰テスト | curl + Markdown | Postman, Insomnia |
2233
+ | 負荷テスト | Locust | k6, JMeter, Artillery |
2234
+ | セキュリティテスト | OWASP ZAP | Burp Suite, Nikto |
2235
+
2236
+ ---
2237
+
2238
+ ## 参考リンク
2239
+
2240
+ - [Pre-Publish Checklist](./pre-publish-checklist.md) - 詳細なチェックリスト
2241
+ - [Michi User Guide](../../user-guide/README.md) - ユーザーガイド
2242
+ - [cc-sdd Documentation](https://github.com/example/cc-sdd) - cc-sddフレームワークのドキュメント