@sk8metal/michi-cli 0.0.9 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (388) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/README.md +236 -57
  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 +79 -0
  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 +109 -22
  24. package/dist/scripts/__tests__/validate-phase.test.js.map +1 -1
  25. package/dist/scripts/config/config-schema.d.ts +31 -0
  26. package/dist/scripts/config/config-schema.d.ts.map +1 -1
  27. package/dist/scripts/config/config-schema.js +64 -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.js +39 -5
  36. package/dist/scripts/constants/__tests__/environments.test.js.map +1 -1
  37. package/dist/scripts/constants/environments.d.ts +1 -1
  38. package/dist/scripts/constants/environments.d.ts.map +1 -1
  39. package/dist/scripts/constants/environments.js +22 -7
  40. package/dist/scripts/constants/environments.js.map +1 -1
  41. package/dist/scripts/constants/test-commands.d.ts +36 -0
  42. package/dist/scripts/constants/test-commands.d.ts.map +1 -0
  43. package/dist/scripts/constants/test-commands.js +70 -0
  44. package/dist/scripts/constants/test-commands.js.map +1 -0
  45. package/dist/scripts/jira-sync.d.ts +89 -3
  46. package/dist/scripts/jira-sync.d.ts.map +1 -1
  47. package/dist/scripts/jira-sync.js +366 -96
  48. package/dist/scripts/jira-sync.js.map +1 -1
  49. package/dist/scripts/markdown-to-confluence.js +1 -1
  50. package/dist/scripts/markdown-to-confluence.js.map +1 -1
  51. package/dist/scripts/phase-runner.d.ts +1 -1
  52. package/dist/scripts/phase-runner.d.ts.map +1 -1
  53. package/dist/scripts/phase-runner.js +809 -13
  54. package/dist/scripts/phase-runner.js.map +1 -1
  55. package/dist/scripts/pr-automation.d.ts.map +1 -1
  56. package/dist/scripts/pr-automation.js.map +1 -1
  57. package/dist/scripts/pre-flight-check.js +1 -1
  58. package/dist/scripts/pre-flight-check.js.map +1 -1
  59. package/dist/scripts/setup-existing-project.js +61 -29
  60. package/dist/scripts/setup-existing-project.js.map +1 -1
  61. package/dist/scripts/setup-interactive.js +3 -3
  62. package/dist/scripts/setup-interactive.js.map +1 -1
  63. package/dist/scripts/spec-impl-workflow.d.ts +94 -0
  64. package/dist/scripts/spec-impl-workflow.d.ts.map +1 -0
  65. package/dist/scripts/spec-impl-workflow.js +354 -0
  66. package/dist/scripts/spec-impl-workflow.js.map +1 -0
  67. package/dist/scripts/template/__tests__/renderer.test.js.map +1 -1
  68. package/dist/scripts/test-execution-generator.d.ts +52 -0
  69. package/dist/scripts/test-execution-generator.d.ts.map +1 -0
  70. package/dist/scripts/test-execution-generator.js +576 -0
  71. package/dist/scripts/test-execution-generator.js.map +1 -0
  72. package/dist/scripts/test-interactive.d.ts +10 -0
  73. package/dist/scripts/test-interactive.d.ts.map +1 -0
  74. package/dist/scripts/test-interactive.js +627 -0
  75. package/dist/scripts/test-interactive.js.map +1 -0
  76. package/dist/scripts/test-new-features.d.ts +5 -0
  77. package/dist/scripts/test-new-features.d.ts.map +1 -0
  78. package/dist/scripts/test-new-features.js +145 -0
  79. package/dist/scripts/test-new-features.js.map +1 -0
  80. package/dist/scripts/test-spec-generator.d.ts +29 -0
  81. package/dist/scripts/test-spec-generator.d.ts.map +1 -0
  82. package/dist/scripts/test-spec-generator.js +494 -0
  83. package/dist/scripts/test-spec-generator.js.map +1 -0
  84. package/dist/scripts/test-workflow-stages.d.ts +6 -0
  85. package/dist/scripts/test-workflow-stages.d.ts.map +1 -0
  86. package/dist/scripts/test-workflow-stages.js +43 -0
  87. package/dist/scripts/test-workflow-stages.js.map +1 -0
  88. package/dist/scripts/utils/__tests__/aidlc-parser.test.d.ts +5 -0
  89. package/dist/scripts/utils/__tests__/aidlc-parser.test.d.ts.map +1 -0
  90. package/dist/scripts/utils/__tests__/aidlc-parser.test.js +315 -0
  91. package/dist/scripts/utils/__tests__/aidlc-parser.test.js.map +1 -0
  92. package/dist/scripts/utils/__tests__/business-days.test.d.ts +5 -0
  93. package/dist/scripts/utils/__tests__/business-days.test.d.ts.map +1 -0
  94. package/dist/scripts/utils/__tests__/business-days.test.js +171 -0
  95. package/dist/scripts/utils/__tests__/business-days.test.js.map +1 -0
  96. package/dist/scripts/utils/__tests__/config-loader.test.js +1 -1
  97. package/dist/scripts/utils/__tests__/config-loader.test.js.map +1 -1
  98. package/dist/scripts/utils/__tests__/config-validator.test.js +164 -35
  99. package/dist/scripts/utils/__tests__/config-validator.test.js.map +1 -1
  100. package/dist/scripts/utils/__tests__/env-config.test.d.ts +5 -0
  101. package/dist/scripts/utils/__tests__/env-config.test.d.ts.map +1 -0
  102. package/dist/scripts/utils/__tests__/env-config.test.js +218 -0
  103. package/dist/scripts/utils/__tests__/env-config.test.js.map +1 -0
  104. package/dist/scripts/utils/__tests__/jira-issue-type-fetcher.test.d.ts +5 -0
  105. package/dist/scripts/utils/__tests__/jira-issue-type-fetcher.test.d.ts.map +1 -0
  106. package/dist/scripts/utils/__tests__/jira-issue-type-fetcher.test.js +202 -0
  107. package/dist/scripts/utils/__tests__/jira-issue-type-fetcher.test.js.map +1 -0
  108. package/dist/scripts/utils/__tests__/tasks-converter.test.d.ts +5 -0
  109. package/dist/scripts/utils/__tests__/tasks-converter.test.d.ts.map +1 -0
  110. package/dist/scripts/utils/__tests__/tasks-converter.test.js +500 -0
  111. package/dist/scripts/utils/__tests__/tasks-converter.test.js.map +1 -0
  112. package/dist/scripts/utils/__tests__/tasks-format-validator.test.d.ts +5 -0
  113. package/dist/scripts/utils/__tests__/tasks-format-validator.test.d.ts.map +1 -0
  114. package/dist/scripts/utils/__tests__/tasks-format-validator.test.js +314 -0
  115. package/dist/scripts/utils/__tests__/tasks-format-validator.test.js.map +1 -0
  116. package/dist/scripts/utils/__tests__/test-runner.test.d.ts +5 -0
  117. package/dist/scripts/utils/__tests__/test-runner.test.d.ts.map +1 -0
  118. package/dist/scripts/utils/__tests__/test-runner.test.js +64 -0
  119. package/dist/scripts/utils/__tests__/test-runner.test.js.map +1 -0
  120. package/dist/scripts/utils/aidlc-parser.d.ts +86 -0
  121. package/dist/scripts/utils/aidlc-parser.d.ts.map +1 -0
  122. package/dist/scripts/utils/aidlc-parser.js +208 -0
  123. package/dist/scripts/utils/aidlc-parser.js.map +1 -0
  124. package/dist/scripts/utils/business-days.d.ts +52 -0
  125. package/dist/scripts/utils/business-days.d.ts.map +1 -0
  126. package/dist/scripts/utils/business-days.js +98 -0
  127. package/dist/scripts/utils/business-days.js.map +1 -0
  128. package/dist/scripts/utils/ci-generator.d.ts +14 -0
  129. package/dist/scripts/utils/ci-generator.d.ts.map +1 -0
  130. package/dist/scripts/utils/ci-generator.js +61 -0
  131. package/dist/scripts/utils/ci-generator.js.map +1 -0
  132. package/dist/scripts/utils/config-loader.js +2 -2
  133. package/dist/scripts/utils/config-loader.js.map +1 -1
  134. package/dist/scripts/utils/config-validator.d.ts +7 -1
  135. package/dist/scripts/utils/config-validator.d.ts.map +1 -1
  136. package/dist/scripts/utils/config-validator.js +136 -23
  137. package/dist/scripts/utils/config-validator.js.map +1 -1
  138. package/dist/scripts/utils/confluence-approval.d.ts +46 -0
  139. package/dist/scripts/utils/confluence-approval.d.ts.map +1 -0
  140. package/dist/scripts/utils/confluence-approval.js +118 -0
  141. package/dist/scripts/utils/confluence-approval.js.map +1 -0
  142. package/dist/scripts/utils/confluence-hierarchy.d.ts.map +1 -1
  143. package/dist/scripts/utils/confluence-hierarchy.js +1 -1
  144. package/dist/scripts/utils/confluence-hierarchy.js.map +1 -1
  145. package/dist/scripts/utils/docker-generator.d.ts +9 -0
  146. package/dist/scripts/utils/docker-generator.d.ts.map +1 -0
  147. package/dist/scripts/utils/docker-generator.js +132 -0
  148. package/dist/scripts/utils/docker-generator.js.map +1 -0
  149. package/dist/scripts/utils/docker-requirement-detector.d.ts +15 -0
  150. package/dist/scripts/utils/docker-requirement-detector.d.ts.map +1 -0
  151. package/dist/scripts/utils/docker-requirement-detector.js +124 -0
  152. package/dist/scripts/utils/docker-requirement-detector.js.map +1 -0
  153. package/dist/scripts/utils/env-config.d.ts +54 -0
  154. package/dist/scripts/utils/env-config.d.ts.map +1 -0
  155. package/dist/scripts/utils/env-config.js +414 -0
  156. package/dist/scripts/utils/env-config.js.map +1 -0
  157. package/dist/scripts/utils/jira-issue-type-fetcher.d.ts +70 -0
  158. package/dist/scripts/utils/jira-issue-type-fetcher.d.ts.map +1 -0
  159. package/dist/scripts/utils/jira-issue-type-fetcher.js +147 -0
  160. package/dist/scripts/utils/jira-issue-type-fetcher.js.map +1 -0
  161. package/dist/scripts/utils/language-detector.d.ts +14 -0
  162. package/dist/scripts/utils/language-detector.d.ts.map +1 -0
  163. package/dist/scripts/utils/language-detector.js +119 -0
  164. package/dist/scripts/utils/language-detector.js.map +1 -0
  165. package/dist/scripts/utils/markdown-parser.d.ts +55 -0
  166. package/dist/scripts/utils/markdown-parser.d.ts.map +1 -0
  167. package/dist/scripts/utils/markdown-parser.js +289 -0
  168. package/dist/scripts/utils/markdown-parser.js.map +1 -0
  169. package/dist/scripts/utils/project-detector.d.ts +17 -0
  170. package/dist/scripts/utils/project-detector.d.ts.map +1 -0
  171. package/dist/scripts/utils/project-detector.js +166 -0
  172. package/dist/scripts/utils/project-detector.js.map +1 -0
  173. package/dist/scripts/utils/project-finder.js +2 -2
  174. package/dist/scripts/utils/project-finder.js.map +1 -1
  175. package/dist/scripts/utils/release-notes-generator.d.ts +56 -0
  176. package/dist/scripts/utils/release-notes-generator.d.ts.map +1 -0
  177. package/dist/scripts/utils/release-notes-generator.js +162 -0
  178. package/dist/scripts/utils/release-notes-generator.js.map +1 -0
  179. package/dist/scripts/utils/spec-loader.d.ts +79 -0
  180. package/dist/scripts/utils/spec-loader.d.ts.map +1 -0
  181. package/dist/scripts/utils/spec-loader.js +80 -0
  182. package/dist/scripts/utils/spec-loader.js.map +1 -0
  183. package/dist/scripts/utils/spec-updater.d.ts +7 -0
  184. package/dist/scripts/utils/spec-updater.d.ts.map +1 -1
  185. package/dist/scripts/utils/spec-updater.js.map +1 -1
  186. package/dist/scripts/utils/tasks-converter.d.ts +57 -0
  187. package/dist/scripts/utils/tasks-converter.d.ts.map +1 -0
  188. package/dist/scripts/utils/tasks-converter.js +322 -0
  189. package/dist/scripts/utils/tasks-converter.js.map +1 -0
  190. package/dist/scripts/utils/tasks-format-validator.d.ts +36 -0
  191. package/dist/scripts/utils/tasks-format-validator.d.ts.map +1 -0
  192. package/dist/scripts/utils/tasks-format-validator.js +158 -0
  193. package/dist/scripts/utils/tasks-format-validator.js.map +1 -0
  194. package/dist/scripts/utils/template-applier.d.ts +37 -0
  195. package/dist/scripts/utils/template-applier.d.ts.map +1 -0
  196. package/dist/scripts/utils/template-applier.js +129 -0
  197. package/dist/scripts/utils/template-applier.js.map +1 -0
  198. package/dist/scripts/utils/test-config-generator.d.ts +12 -0
  199. package/dist/scripts/utils/test-config-generator.d.ts.map +1 -0
  200. package/dist/scripts/utils/test-config-generator.js +185 -0
  201. package/dist/scripts/utils/test-config-generator.js.map +1 -0
  202. package/dist/scripts/utils/test-runner.d.ts +31 -0
  203. package/dist/scripts/utils/test-runner.d.ts.map +1 -0
  204. package/dist/scripts/utils/test-runner.js +103 -0
  205. package/dist/scripts/utils/test-runner.js.map +1 -0
  206. package/dist/scripts/validate-phase.d.ts +1 -1
  207. package/dist/scripts/validate-phase.d.ts.map +1 -1
  208. package/dist/scripts/validate-phase.js +171 -8
  209. package/dist/scripts/validate-phase.js.map +1 -1
  210. package/dist/scripts/workflow-orchestrator.d.ts +8 -0
  211. package/dist/scripts/workflow-orchestrator.d.ts.map +1 -1
  212. package/dist/scripts/workflow-orchestrator.js +108 -7
  213. package/dist/scripts/workflow-orchestrator.js.map +1 -1
  214. package/dist/src/__tests__/integration/internationalization.test.d.ts +8 -0
  215. package/dist/src/__tests__/integration/internationalization.test.d.ts.map +1 -0
  216. package/dist/src/__tests__/integration/internationalization.test.js +333 -0
  217. package/dist/src/__tests__/integration/internationalization.test.js.map +1 -0
  218. package/dist/src/__tests__/integration/setup/claude-agent.test.d.ts +1 -1
  219. package/dist/src/__tests__/integration/setup/claude-agent.test.js +17 -20
  220. package/dist/src/__tests__/integration/setup/claude-agent.test.js.map +1 -1
  221. package/dist/src/__tests__/integration/setup/claude.test.js +82 -0
  222. package/dist/src/__tests__/integration/setup/claude.test.js.map +1 -1
  223. package/dist/src/__tests__/integration/setup/cursor.test.js +23 -19
  224. package/dist/src/__tests__/integration/setup/cursor.test.js.map +1 -1
  225. package/dist/src/__tests__/integration/setup/validation.test.js +41 -58
  226. package/dist/src/__tests__/integration/setup/validation.test.js.map +1 -1
  227. package/dist/src/cli.d.ts.map +1 -1
  228. package/dist/src/cli.js +209 -18
  229. package/dist/src/cli.js.map +1 -1
  230. package/dist/src/commands/setup-existing.d.ts +4 -0
  231. package/dist/src/commands/setup-existing.d.ts.map +1 -1
  232. package/dist/src/commands/setup-existing.js +367 -47
  233. package/dist/src/commands/setup-existing.js.map +1 -1
  234. package/docs/README.md +3 -1
  235. package/docs/context.md +59 -0
  236. package/docs/design-issue-55.md +240 -0
  237. package/docs/design-issue-56.md +181 -0
  238. package/docs/michi-development/testing/manual-verification-flow.md +2242 -0
  239. package/docs/michi-development/testing/pre-publish-checklist.md +560 -0
  240. package/docs/plan.md +275 -0
  241. package/docs/user-guide/getting-started/github-token-setup.md +509 -0
  242. package/docs/{getting-started → user-guide/getting-started}/quick-start.md +16 -0
  243. package/docs/{getting-started → user-guide/getting-started}/setup.md +28 -1
  244. package/docs/user-guide/guides/agent-skills-integration.md +217 -0
  245. package/docs/{guides → user-guide/guides}/customization.md +2 -2
  246. package/docs/user-guide/guides/internationalization.md +540 -0
  247. package/docs/{guides → user-guide/guides}/multi-project.md +3 -3
  248. package/docs/{guides → user-guide/guides}/phase-automation.md +92 -34
  249. package/docs/user-guide/guides/workflow.md +570 -0
  250. package/docs/user-guide/hands-on/README.md +142 -0
  251. package/docs/user-guide/hands-on/claude-agent-setup.md +455 -0
  252. package/docs/user-guide/hands-on/claude-setup.md +398 -0
  253. package/docs/user-guide/hands-on/cursor-setup.md +352 -0
  254. package/docs/user-guide/hands-on/troubleshooting.md +964 -0
  255. package/docs/user-guide/hands-on/verification-checklist.md +438 -0
  256. package/docs/user-guide/hands-on/workflow-walkthrough.md +906 -0
  257. package/docs/user-guide/reference/config.md +564 -0
  258. package/docs/{reference → user-guide/reference}/quick-reference.md +53 -40
  259. package/docs/{reference → user-guide/reference}/tasks-template.md +2 -2
  260. package/docs/user-guide/release/ci-setup.md +541 -0
  261. package/docs/user-guide/release/release-flow.md +476 -0
  262. package/docs/user-guide/templates/test-specs/README.md +173 -0
  263. package/docs/user-guide/templates/test-specs/e2e-test-spec-template.md +547 -0
  264. package/docs/user-guide/templates/test-specs/integration-test-spec-template.md +435 -0
  265. package/docs/user-guide/templates/test-specs/performance-test-spec-template.md +454 -0
  266. package/docs/user-guide/templates/test-specs/security-test-spec-template.md +664 -0
  267. package/docs/user-guide/templates/test-specs/unit-test-spec-template.md +328 -0
  268. package/docs/{testing → user-guide/testing}/integration-tests.md +24 -9
  269. package/docs/user-guide/testing/tdd-cycle.md +349 -0
  270. package/docs/user-guide/testing/test-execution-flow.md +396 -0
  271. package/docs/user-guide/testing/test-failure-handling.md +521 -0
  272. package/docs/user-guide/testing/test-planning-flow.md +181 -0
  273. package/docs/user-guide/testing-strategy.md +185 -0
  274. package/docs/verification-guide.md +518 -0
  275. package/package.json +7 -2
  276. package/scripts/__tests__/create-project.test.ts +67 -49
  277. package/scripts/__tests__/jira-transitions.test.ts +225 -0
  278. package/scripts/__tests__/multi-project-estimate.test.ts +36 -30
  279. package/scripts/__tests__/setup-existing-project.test.ts +98 -1
  280. package/scripts/__tests__/setup-interactive.test.ts +52 -46
  281. package/scripts/__tests__/spec-impl-workflow.test.ts +429 -0
  282. package/scripts/__tests__/spec-loader.test.ts +199 -0
  283. package/scripts/__tests__/validate-phase.test.ts +178 -54
  284. package/scripts/config/config-schema.ts +100 -50
  285. package/scripts/config-interactive.ts +191 -136
  286. package/scripts/confluence-sync.ts +0 -12
  287. package/scripts/constants/__tests__/environments.test.ts +42 -6
  288. package/scripts/constants/environments.ts +33 -13
  289. package/scripts/constants/test-commands.ts +96 -0
  290. package/scripts/jira-sync.ts +767 -232
  291. package/scripts/markdown-to-confluence.ts +1 -1
  292. package/scripts/phase-runner.ts +1056 -63
  293. package/scripts/pr-automation.ts +0 -1
  294. package/scripts/pre-flight-check.ts +1 -1
  295. package/scripts/pre-publish-check.sh +311 -0
  296. package/scripts/quick-verify.sh +115 -0
  297. package/scripts/setup-existing-project.ts +201 -117
  298. package/scripts/setup-interactive.ts +4 -4
  299. package/scripts/spec-impl-workflow.ts +505 -0
  300. package/scripts/template/__tests__/renderer.test.ts +1 -2
  301. package/scripts/test-execution-generator.ts +695 -0
  302. package/scripts/test-interactive.ts +779 -0
  303. package/scripts/test-new-features.ts +168 -0
  304. package/scripts/test-npm-package.sh +345 -0
  305. package/scripts/test-spec-generator.ts +574 -0
  306. package/scripts/test-workflow-stages.ts +53 -0
  307. package/scripts/utils/__tests__/aidlc-parser.test.ts +349 -0
  308. package/scripts/utils/__tests__/business-days.test.ts +214 -0
  309. package/scripts/utils/__tests__/config-loader.test.ts +1 -1
  310. package/scripts/utils/__tests__/config-validator.test.ts +309 -88
  311. package/scripts/utils/__tests__/env-config.test.ts +259 -0
  312. package/scripts/utils/__tests__/jira-issue-type-fetcher.test.ts +272 -0
  313. package/scripts/utils/__tests__/tasks-converter.test.ts +582 -0
  314. package/scripts/utils/__tests__/tasks-format-validator.test.ts +338 -0
  315. package/scripts/utils/__tests__/test-runner.test.ts +77 -0
  316. package/scripts/utils/aidlc-parser.ts +289 -0
  317. package/scripts/utils/business-days.ts +115 -0
  318. package/scripts/utils/ci-generator.ts +84 -0
  319. package/scripts/utils/config-loader.ts +2 -2
  320. package/scripts/utils/config-validator.ts +304 -117
  321. package/scripts/utils/confluence-approval.ts +167 -0
  322. package/scripts/utils/confluence-hierarchy.ts +2 -4
  323. package/scripts/utils/docker-generator.ts +151 -0
  324. package/scripts/utils/docker-requirement-detector.ts +153 -0
  325. package/scripts/utils/env-config.ts +526 -0
  326. package/scripts/utils/jira-issue-type-fetcher.ts +199 -0
  327. package/scripts/utils/language-detector.ts +139 -0
  328. package/scripts/utils/markdown-parser.ts +376 -0
  329. package/scripts/utils/project-detector.ts +192 -0
  330. package/scripts/utils/project-finder.ts +2 -2
  331. package/scripts/utils/release-notes-generator.ts +210 -0
  332. package/scripts/utils/spec-loader.ts +125 -0
  333. package/scripts/utils/spec-updater.ts +8 -1
  334. package/scripts/utils/tasks-converter.ts +601 -0
  335. package/scripts/utils/tasks-format-validator.ts +193 -0
  336. package/scripts/utils/template-applier.ts +202 -0
  337. package/scripts/utils/test-config-generator.ts +210 -0
  338. package/scripts/utils/test-runner.ts +133 -0
  339. package/scripts/validate-phase.ts +207 -12
  340. package/scripts/workflow-orchestrator.ts +130 -12
  341. package/templates/ci/github-actions/java.yml +54 -0
  342. package/templates/ci/github-actions/nodejs.yml +46 -0
  343. package/templates/ci/github-actions/php.yml +52 -0
  344. package/templates/ci/screwdriver/java.yaml +17 -0
  345. package/templates/ci/screwdriver/nodejs.yaml +17 -0
  346. package/templates/ci/screwdriver/php.yaml +20 -0
  347. package/templates/claude/agents/design-reviewer/AGENT.md +497 -0
  348. package/templates/claude/agents/e2e-first-planner/AGENT.md +410 -0
  349. package/templates/claude/agents/oss-license-checker/AGENT.md +265 -0
  350. package/templates/claude/agents/pr-resolver/AGENT.md +196 -0
  351. package/templates/claude/agents/stable-version-auditor/AGENT.md +279 -0
  352. package/templates/claude/commands/kiro/kiro-spec-impl.md +253 -0
  353. package/templates/claude/commands/kiro/kiro-spec-tasks.md +368 -0
  354. package/templates/claude/commands/michi/design-review.md +66 -0
  355. package/templates/claude/commands/michi/e2e-plan.md +113 -0
  356. package/templates/claude/commands/michi/license-check.md +80 -0
  357. package/templates/claude/commands/michi/pr-resolve.md +153 -0
  358. package/templates/claude/commands/michi/version-audit.md +91 -0
  359. package/templates/claude/skills/design-review/SKILL.md +648 -0
  360. package/templates/claude/skills/e2e-first-planning/SKILL.md +360 -0
  361. package/templates/claude/skills/oss-license/SKILL.md +232 -0
  362. package/templates/claude/skills/stable-version/SKILL.md +252 -0
  363. package/templates/claude-agent/README.md +7 -1
  364. package/templates/claude-agent/agents/.gitkeep +0 -0
  365. package/templates/claude-agent/agents/designer.md +79 -0
  366. package/templates/claude-agent/agents/developer.md +68 -0
  367. package/templates/claude-agent/agents/manager-agent.md +59 -0
  368. package/templates/claude-agent/agents/tester.md +101 -0
  369. package/templates/claude-agent/commands/kiro/.gitkeep +0 -0
  370. package/templates/claude-agent/commands/kiro/kiro-spec-impl.md +244 -0
  371. package/templates/claude-agent/commands/kiro/kiro-spec-tasks.md +354 -0
  372. package/templates/cline/rules/atlassian-integration.md +36 -0
  373. package/templates/cline/rules/michi-core.md +56 -0
  374. package/templates/codex/AGENTS.override.md +277 -0
  375. package/templates/codex/prompts/confluence-sync.md +177 -0
  376. package/templates/codex/rules/README.md +210 -0
  377. package/templates/common/.kiro/project.json.template +21 -0
  378. package/templates/cursor/commands/kiro/kiro-spec-impl.md +244 -0
  379. package/templates/cursor/commands/kiro/kiro-spec-tasks.md +354 -0
  380. package/templates/gemini/commands/README.md +41 -0
  381. package/templates/gemini/rules/GEMINI.md +80 -0
  382. package/docs/guides/workflow.md +0 -342
  383. package/docs/reference/config.md +0 -545
  384. package/scripts/setup-existing.sh +0 -279
  385. /package/docs/{contributing → michi-development/contributing}/development.md +0 -0
  386. /package/docs/{contributing → michi-development/contributing}/release.md +0 -0
  387. /package/docs/{testing-strategy.md → michi-development/testing-strategy.md} +0 -0
  388. /package/docs/{getting-started → user-guide/getting-started}/new-repository-setup.md +0 -0
@@ -0,0 +1,253 @@
1
+ # kiro:spec-impl - Spec Implementation Command
2
+
3
+ ## Overview
4
+
5
+ This command implements the specifications defined in `tasks.md` following TDD (Test-Driven Development) practices with automatic JIRA integration.
6
+
7
+ **Key Features:**
8
+
9
+ - Automatic JIRA info detection from `spec.json`
10
+ - Updates both Epic AND first Story status
11
+ - Creates PR and adds JIRA comments automatically
12
+
13
+ ## Arguments
14
+
15
+ - `$ARGUMENTS`: Feature name (e.g., "user-auth")
16
+
17
+ **Note:** JIRA ticket keys are automatically detected from `.kiro/specs/{feature}/spec.json`. No need to specify them manually.
18
+
19
+ ## Pre-requisites
20
+
21
+ 1. `.kiro/specs/{feature}/tasks.md` must exist
22
+ 2. `.kiro/specs/{feature}/spec.json` must contain JIRA info (run `michi jira:sync` first)
23
+ 3. Environment variables must be configured:
24
+ - `ATLASSIAN_URL`: JIRA instance URL
25
+ - `ATLASSIAN_EMAIL`: JIRA user email
26
+ - `ATLASSIAN_API_TOKEN`: JIRA API token
27
+ - `GITHUB_TOKEN`: GitHub API token
28
+ - `GITHUB_REPO`: GitHub repository (owner/repo format)
29
+
30
+ ## Execution Flow
31
+
32
+ ### 1. Parse Arguments
33
+
34
+ ```
35
+ Input: $ARGUMENTS
36
+ Expected format: "<feature-name>"
37
+ Example: "user-auth"
38
+ ```
39
+
40
+ Extract:
41
+
42
+ - `FEATURE_NAME`: Feature name from arguments
43
+
44
+ ### 2. JIRA Info Detection (Automatic)
45
+
46
+ Read JIRA information from `.kiro/specs/$FEATURE_NAME/spec.json`:
47
+
48
+ ```json
49
+ {
50
+ "jira": {
51
+ "epicKey": "PROJ-123",
52
+ "storyKeys": ["PROJ-124", "PROJ-125"],
53
+ "epicUrl": "https://..."
54
+ }
55
+ }
56
+ ```
57
+
58
+ **If JIRA info is missing:**
59
+
60
+ - Ask user: "JIRA info not found. Skip JIRA integration? (y/n)"
61
+ - If yes: Continue without JIRA integration
62
+ - If no: Stop and suggest running `michi jira:sync $FEATURE_NAME` first
63
+
64
+ ### 3. Start Processing (JIRA Status Update)
65
+
66
+ **Automatically move Epic AND first Story to "In Progress":**
67
+
68
+ This is handled internally. The workflow will:
69
+
70
+ 1. Transition Epic to "In Progress"
71
+ 2. Transition first Story to "In Progress"
72
+
73
+ ### 4. Implementation Phase (TDD)
74
+
75
+ Read the tasks from `.kiro/specs/$FEATURE_NAME/tasks.md` and implement each Story following TDD:
76
+
77
+ For each Story in tasks.md:
78
+
79
+ 1. **Read Story Requirements**
80
+ - Parse the Story section from tasks.md
81
+ - Identify acceptance criteria and subtasks
82
+
83
+ 2. **Write Tests First (Red)**
84
+ - Create test files based on acceptance criteria
85
+ - Run tests to verify they fail
86
+
87
+ 3. **Implement Code (Green)**
88
+ - Write minimal code to pass tests
89
+ - Follow the existing code patterns in the project
90
+
91
+ 4. **Refactor (Blue)**
92
+ - Clean up code while keeping tests green
93
+ - Apply project coding standards
94
+
95
+ 5. **Commit Changes**
96
+ - Create atomic commits for each Story
97
+ - Use conventional commit format: `feat($FEATURE_NAME): Story title`
98
+
99
+ ### 5. Code Review Phase (Automatic)
100
+
101
+ **Automatically review the implemented code:**
102
+
103
+ For each Story implementation:
104
+
105
+ 1. **Design Review (/michi:design-review)** - **Recommended for UI Components**
106
+ - **推奨**: UI/フロントエンドコードを実装した場合、`/michi:design-review` コマンドの使用を検討してください
107
+ - デザイン品質のレビュー(アクセシビリティ、レスポンシブ、UX)
108
+ - CSS、React、Vue、HTML、Tailwind の変更時に実行
109
+
110
+ ```bash
111
+ /michi:design-review
112
+ ```
113
+
114
+ 2. **Code Review (/review)**
115
+ - Execute `/review` command automatically
116
+ - Analyze the implementation for code quality issues
117
+ - Check for best practices and potential bugs
118
+
119
+ 3. **Fix Issues if Found**
120
+ - If review identifies issues, automatically fix them
121
+ - Commit the fixes
122
+ - Re-run `/review` to verify fixes
123
+ - Repeat until `/review` passes without critical issues
124
+
125
+ 4. **Security Review (/security-review)**
126
+ - Execute `/security-review` command automatically
127
+ - Scan for security vulnerabilities
128
+ - Check for common security issues (SQL injection, XSS, etc.)
129
+
130
+ 5. **Fix Security Issues if Found**
131
+ - If security issues are identified, automatically fix them
132
+ - Commit the security fixes
133
+ - Re-run `/security-review` to verify fixes
134
+ - Repeat until `/security-review` passes without critical issues
135
+
136
+ **Review Loop:**
137
+ - Maximum iterations: 3 per review type
138
+ - If issues persist after 3 iterations, report to user and ask for manual intervention
139
+
140
+ ### 6. PR Creation Confirmation
141
+
142
+ **Ask user before creating PR:**
143
+
144
+ After all reviews pass successfully, ask the user:
145
+
146
+ ```
147
+ ✅ All reviews completed successfully!
148
+ - Code Review: PASSED
149
+ - Security Review: PASSED
150
+
151
+ Would you like to create a Pull Request now? (y/n)
152
+ ```
153
+
154
+ - **If yes**: Proceed to End Processing (Step 7)
155
+ - **If no**: Stop workflow, save current state
156
+ - User can manually create PR later using:
157
+ - `jj git push --bookmark <branch-name>`
158
+ - `gh pr create --head <branch-name> --base main`
159
+
160
+ ### 7. End Processing (PR Creation & JIRA Update)
161
+
162
+ **Automatically complete the workflow:**
163
+
164
+ This is handled internally. The workflow will:
165
+
166
+ 1. Push the branch to remote
167
+ 2. Create a Pull Request on GitHub
168
+ 3. Move Epic AND first Story to "Ready for Review"
169
+ 4. Add PR link as a comment on the Epic
170
+
171
+ ## Usage Examples
172
+
173
+ ```
174
+ /kiro:spec-impl user-auth
175
+ ```
176
+
177
+ ```
178
+ /kiro:spec-impl payment-gateway
179
+ ```
180
+
181
+ ## Workflow Comparison
182
+
183
+ ### Before (3 steps with manual JIRA keys)
184
+
185
+ ```bash
186
+ michi spec-impl:start user-auth PROJ-123
187
+ /kiro:spec-impl user-auth PROJ-123
188
+ michi spec-impl:complete user-auth PROJ-123
189
+ ```
190
+
191
+ ### After (1 command with auto-detection)
192
+
193
+ ```
194
+ /kiro:spec-impl user-auth
195
+ # JIRA info auto-detected from spec.json
196
+ # Epic + first Story -> "In Progress"
197
+ # TDD implementation
198
+ # Automatic code review (/review)
199
+ # - Fix issues if found
200
+ # - Re-review until passed
201
+ # Automatic security review (/security-review)
202
+ # - Fix security issues if found
203
+ # - Re-review until passed
204
+ # Ask user: "Create PR now? (y/n)"
205
+ # - If yes:
206
+ # - PR creation
207
+ # - Epic + first Story -> "Ready for Review"
208
+ # - PR link commented on JIRA
209
+ # - If no:
210
+ # - Save state, exit workflow
211
+ ```
212
+
213
+ ## JIRA Status Mapping
214
+
215
+ Default status names (customizable in `.michi/config.json`):
216
+
217
+ | Phase | Default Status | Targets |
218
+ | ----- | ---------------- | ------------------ |
219
+ | Start | In Progress | Epic + First Story |
220
+ | End | Ready for Review | Epic + First Story |
221
+
222
+ To customize, add to `.michi/config.json`:
223
+
224
+ ```json
225
+ {
226
+ "jira": {
227
+ "statusMapping": {
228
+ "inProgress": "In Progress",
229
+ "readyForReview": "Ready for Review"
230
+ }
231
+ }
232
+ }
233
+ ```
234
+
235
+ ## Error Handling
236
+
237
+ - **JIRA info not found**: Interactive prompt to skip JIRA integration
238
+ - **JIRA transition fails**: Check available transitions for the current status
239
+ - **Review fails (max iterations exceeded)**: Report issues to user and ask for manual intervention
240
+ - **Security review fails (max iterations exceeded)**: Report vulnerabilities to user and ask for manual intervention
241
+ - **User declines PR creation**: Save current state, workflow stops (user can create PR manually later)
242
+ - **PR creation fails**: Ensure the branch is pushed to remote
243
+ - **JIRA comment fails**: The PR URL is still returned for manual update
244
+
245
+ ## Notes
246
+
247
+ - JIRA info is automatically detected from `spec.json` (populated by `michi jira:sync`)
248
+ - Both Epic AND first Story are updated together
249
+ - The branch name defaults to `feature/{feature-name}`
250
+ - Individual JIRA operations can still be done via `michi jira:transition` and `michi jira:comment`
251
+ - Code reviews (`/review` and `/security-review`) are executed automatically after implementation
252
+ - Review loop has a maximum of 3 iterations per review type to prevent infinite loops
253
+ - User can decline PR creation and manually create it later if needed
@@ -0,0 +1,368 @@
1
+ ---
2
+ name: /kiro:spec-tasks
3
+ description: Generate tasks.md from design specification in Michi workflow format
4
+ ---
5
+
6
+ # Generate Tasks from Design Specification
7
+
8
+ **Important**: Generate output in the language specified in `{{KIRO_DIR}}/project.json`.
9
+
10
+ ## Overview
11
+
12
+ This command generates a detailed task breakdown (`tasks.md`) from the design specification (`design.md`) following the **Michi Workflow Format**.
13
+
14
+ **Critical**: The generated tasks.md MUST follow the Michi Phase structure (Phase 0.1-5, A, B) with Story headers. DO NOT generate AI-DLC checkbox format (`- [ ] 1.`, `- [ ] 1.1`).
15
+
16
+ ## Usage
17
+
18
+ ```
19
+ /kiro:spec-tasks
20
+ ```
21
+
22
+ ## Input Files
23
+
24
+ 1. `{{KIRO_DIR}}/specs/{{FEATURE_NAME}}/design.md` - Design specification
25
+ 2. `{{KIRO_DIR}}/specs/{{FEATURE_NAME}}/requirements.md` - Requirements specification
26
+ 3. `{{KIRO_DIR}}/project.json` - Project metadata
27
+
28
+ ## Output File
29
+
30
+ `{{KIRO_DIR}}/specs/{{FEATURE_NAME}}/tasks.md`
31
+
32
+ ## Required Format: Michi Workflow Structure
33
+
34
+ ### Header Section
35
+
36
+ ```markdown
37
+ # Task Breakdown: {{FEATURE_NAME}}
38
+
39
+ ## Project Information
40
+
41
+ - **Feature Name**: {{FEATURE_NAME}}
42
+ - **Start Date**: YYYY-MM-DD (Day of week) Day 1
43
+ - **End Date**: YYYY-MM-DD (Day of week)
44
+ - **Total Business Days**: X business days (excluding weekends)
45
+ - **Total Effort Estimate**: X person-days
46
+ - **Holidays**: Excludes Saturdays and Sundays
47
+ - **Note**: This task breakdown is calculated in business days (excluding weekends and holidays)
48
+ ```
49
+
50
+ ### Phase Structure (Required)
51
+
52
+ The tasks.md MUST include these phases in order:
53
+
54
+ 1. **Phase 0.1: Requirements**
55
+ 2. **Phase 0.2: Design**
56
+ 3. **Phase 0.3: Test Type Selection** (optional)
57
+ 4. **Phase 0.4: Test Specification** (optional)
58
+ 5. **Phase 1: Environment Setup** (optional)
59
+ 6. **Phase 2: TDD Implementation** (required - main development phase)
60
+ 7. **Phase A: PR Pre-merge Tests** (optional - CI/CD automated)
61
+ 8. **Phase 3: Additional QA** (optional)
62
+ 9. **Phase B: Release Preparation Tests** (optional)
63
+ 10. **Phase 4: Release Preparation**
64
+ 11. **Phase 5: Release**
65
+
66
+ ### Phase Header Format
67
+
68
+ Each phase MUST use this header format:
69
+
70
+ ```markdown
71
+ ## Phase X.Y: Phase Name (Label)
72
+
73
+ **Period**: Day X-Y
74
+ **Effort**: X person-days
75
+ **Status**: Not Started
76
+ ```
77
+
78
+ ### Story Header Format
79
+
80
+ Each story within a phase MUST use this format:
81
+
82
+ ```markdown
83
+ ### Story X.Y.Z: Story Title
84
+
85
+ - **Assignee**: @Role
86
+ - **Effort**: X person-days
87
+ - **Description**: What this story accomplishes
88
+ - **Deliverables**:
89
+ - Deliverable 1
90
+ - Deliverable 2
91
+ - **Acceptance Criteria**:
92
+ - [ ] Criterion 1
93
+ - [ ] Criterion 2
94
+ - **Tasks**:
95
+ - [ ] Task X.Y.Z.1: Task description
96
+ - [ ] Task X.Y.Z.2: Task description
97
+ - **Dependencies**: Story X.Y.W (if applicable)
98
+ ```
99
+
100
+ ## Detailed Phase Guidelines
101
+
102
+ ### Phase 0.1: Requirements
103
+
104
+ ```markdown
105
+ ## Phase 0.1: Requirements (Requirements)
106
+
107
+ **Period**: Day 1
108
+ **Effort**: 0.5 person-days
109
+ **Status**: Not Started
110
+
111
+ ### Story 0.1.1: Requirements Document Creation
112
+
113
+ - **Assignee**: @PM
114
+ - **Effort**: 0.5 person-days
115
+ - **Description**: Create feature requirements document
116
+ - **Deliverables**:
117
+ - `.kiro/specs/{{FEATURE_NAME}}/requirements.md`
118
+ - Confluence page (Requirements)
119
+ - **Acceptance Criteria**:
120
+ - [ ] Functional requirements defined
121
+ - [ ] Non-functional requirements defined
122
+ - [ ] Use cases documented
123
+ - [ ] PM approved
124
+ ```
125
+
126
+ ### Phase 0.2: Design
127
+
128
+ ```markdown
129
+ ## Phase 0.2: Design (Design)
130
+
131
+ **Period**: Day 1-2
132
+ **Effort**: 0.5-1.0 person-days
133
+ **Status**: Not Started
134
+
135
+ ### Story 0.2.1: Basic Design
136
+
137
+ - **Assignee**: @Architect
138
+ - **Effort**: 0.5-1.0 person-days
139
+ - **Description**: Architecture design, API design, class design
140
+ - **Deliverables**:
141
+ - `.kiro/specs/{{FEATURE_NAME}}/design.md`
142
+ - Confluence page (Design Document)
143
+ - **Acceptance Criteria**:
144
+ - [ ] System architecture diagram created
145
+ - [ ] Layer structure defined
146
+ - [ ] API specifications detailed
147
+ - [ ] Class design completed
148
+ - [ ] Architect approved
149
+ ```
150
+
151
+ ### Phase 2: TDD Implementation (Main Development)
152
+
153
+ This is the most detailed phase. Break down into multiple stories based on the design.md:
154
+
155
+ ```markdown
156
+ ## Phase 2: TDD Implementation (Implementation)
157
+
158
+ **Period**: Day X-Y
159
+ **Effort**: X person-days
160
+ **Status**: Not Started
161
+
162
+ ### Story 2.1: Project Setup
163
+
164
+ - **Assignee**: @Developer
165
+ - **Effort**: 0.5 person-days
166
+ - **Description**: Project setup and dependency configuration
167
+ - **Tasks**:
168
+ - [ ] Task 2.1.1: Create project
169
+ - [ ] Task 2.1.2: Add dependencies
170
+ - [ ] Task 2.1.3: Create configuration files
171
+ - [ ] Task 2.1.4: Create package structure
172
+ - [ ] Task 2.1.5: Verify build
173
+ - **Deliverables**:
174
+ - Project configuration files
175
+ - Package structure
176
+ - **Acceptance Criteria**:
177
+ - [ ] Project builds successfully
178
+ - [ ] Application starts
179
+ - [ ] Package structure matches design
180
+
181
+ ### Story 2.2: [Feature Component] Implementation
182
+
183
+ - **Assignee**: @Developer
184
+ - **Effort**: X person-days
185
+ - **Description**: Implement [component] with TDD approach
186
+ - **Tasks**:
187
+ - [ ] Task 2.2.1: Write failing tests (RED)
188
+ - [ ] Task 2.2.2: Implement minimum code (GREEN)
189
+ - [ ] Task 2.2.3: Refactor (REFACTOR)
190
+ - [ ] Task 2.2.4: Integration tests
191
+ - **Acceptance Criteria**:
192
+ - [ ] All unit tests pass
193
+ - [ ] Code coverage >= 95%
194
+ - [ ] Design patterns followed
195
+
196
+ (Continue with Story 2.3, 2.4, etc. based on design.md components)
197
+ ```
198
+
199
+ ### Phase 4: Release Preparation
200
+
201
+ ```markdown
202
+ ## Phase 4: Release Preparation (Release Preparation)
203
+
204
+ **Period**: Day Y-Z
205
+ **Effort**: X person-days
206
+ **Status**: Not Started
207
+
208
+ ### Story 4.1: Production Environment Setup
209
+
210
+ - **Assignee**: @InfraEngineer
211
+ - **Effort**: X person-days
212
+ - **Description**: Production infrastructure setup and configuration
213
+ - **Acceptance Criteria**:
214
+ - [ ] Server provisioned
215
+ - [ ] Database configured
216
+ - [ ] SSL certificate configured
217
+ - [ ] Monitoring configured
218
+
219
+ ### Story 4.2: Release Documentation
220
+
221
+ - **Assignee**: @PM
222
+ - **Effort**: X person-days
223
+ - **Description**: Release notes, manual, operation procedures
224
+ - **Acceptance Criteria**:
225
+ - [ ] Release notes created
226
+ - [ ] User manual created
227
+ - [ ] Operation procedures created
228
+ ```
229
+
230
+ ### Phase 5: Release
231
+
232
+ ```markdown
233
+ ## Phase 5: Release (Release)
234
+
235
+ **Period**: Day Z
236
+ **Effort**: X person-days
237
+ **Status**: Not Started
238
+
239
+ ### Story 5.1: Staging Deployment
240
+
241
+ - **Assignee**: @InfraEngineer
242
+ - **Effort**: X person-days
243
+ - **Description**: Deploy to staging and final verification
244
+ - **Acceptance Criteria**:
245
+ - [ ] Staging deployment successful
246
+ - [ ] Smoke tests pass
247
+ - [ ] Final verification completed
248
+
249
+ ### Story 5.2: Production Release
250
+
251
+ - **Assignee**: @InfraEngineer, @PM
252
+ - **Effort**: X person-days
253
+ - **Description**: Production release execution
254
+ - **Acceptance Criteria**:
255
+ - [ ] Production deployment successful
256
+ - [ ] Smoke tests pass
257
+ - [ ] Monitoring verified
258
+ - [ ] Stakeholders notified
259
+ ```
260
+
261
+ ## Timeline Section
262
+
263
+ Include a timeline at the end:
264
+
265
+ ```markdown
266
+ ## Timeline (Business Days)
267
+
268
+ **Assumption**: Calculated in business days (excluding weekends)
269
+
270
+ ### Week 1: Specification Phase
271
+
272
+ Day 1 (Mon):
273
+
274
+ - Story 0.1.1: Requirements Document Creation
275
+ - Story 0.2.1: Basic Design (start)
276
+
277
+ Day 2-3 (Tue-Wed):
278
+
279
+ - Story 0.2.1: Basic Design (complete)
280
+ - Technical review and PM approval
281
+
282
+ ### Week 2-N: Implementation Phase
283
+
284
+ (Continue based on project scope)
285
+ ```
286
+
287
+ ## Estimate Summary Section
288
+
289
+ ```markdown
290
+ ## Estimate Summary
291
+
292
+ | Phase | Story Points | Effort (days) | Stories |
293
+ | ---------------------------- | ------------ | ------------- | ------- |
294
+ | Phase 0.1: Requirements | X SP | X days | X |
295
+ | Phase 0.2: Design | X SP | X days | X |
296
+ | Phase 2: TDD Implementation | X SP | X days | X |
297
+ | Phase 4: Release Preparation | X SP | X days | X |
298
+ | Phase 5: Release | X SP | X days | X |
299
+ | **Total** | **X SP** | **X days** | **X** |
300
+
301
+ **Conversion Rate**: 1 SP ≈ 0.5 person-days
302
+ ```
303
+
304
+ ## JIRA Labels Section
305
+
306
+ ```markdown
307
+ ## JIRA Labels
308
+
309
+ Each story is automatically assigned the following labels:
310
+
311
+ - `requirements` - Phase 0.1: Requirements
312
+ - `design` - Phase 0.2: Design
313
+ - `test-type-selection` - Phase 0.3: Test Type Selection
314
+ - `test-spec` - Phase 0.4: Test Specification
315
+ - `environment-setup` - Phase 1: Environment Setup
316
+ - `implementation` / `tdd-implementation` - Phase 2: TDD Implementation
317
+ - `phase-a` / `pr-tests` - Phase A: PR Pre-merge Tests
318
+ - `additional-qa` / `testing` - Phase 3: Additional QA
319
+ - `phase-b` / `release-tests` - Phase B: Release Preparation Tests
320
+ - `release-prep` / `release-preparation` - Phase 4: Release Preparation
321
+ - `release` - Phase 5: Release
322
+ ```
323
+
324
+ ## Important Notes
325
+
326
+ 1. **DO NOT** use AI-DLC checkbox format (`- [ ] 1.`, `- [ ] 1.1`)
327
+ 2. **MUST** use Phase headers (`## Phase X.Y:`)
328
+ 3. **MUST** use Story headers (`### Story X.Y.Z:`)
329
+ 4. **MUST** include day numbering (Day 1, Day 2, etc.)
330
+ 5. **MUST** include effort estimates in person-days
331
+ 6. **MUST** include acceptance criteria with checkboxes
332
+ 7. Break down Phase 2 stories based on the components in design.md
333
+ 8. Ensure each Story has clear dependencies documented
334
+
335
+ ## Recommended: E2E-First Planning
336
+
337
+ **推奨**: タスク分割を行う前に、`/michi:e2e-plan` コマンドの使用を検討してください。
338
+
339
+ E2Eファースト方式でタスクを計画することで、以下のメリットがあります:
340
+ - ミニマム動作確認可能な単位を優先
341
+ - 早期フィードバックの獲得
342
+ - リスクの早期発見
343
+
344
+ ```bash
345
+ /michi:e2e-plan
346
+ ```
347
+
348
+ ## Execution Steps
349
+
350
+ 1. Read `{{KIRO_DIR}}/specs/{{FEATURE_NAME}}/design.md`
351
+ 2. Read `{{KIRO_DIR}}/specs/{{FEATURE_NAME}}/requirements.md`
352
+ 3. **(推奨)** `/michi:e2e-plan` コマンドでE2Eファースト計画を作成
353
+ 4. Analyze design components and create Story breakdown
354
+ 5. Generate `tasks.md` following the Michi Workflow Format above
355
+ 6. Save to `{{KIRO_DIR}}/specs/{{FEATURE_NAME}}/tasks.md`
356
+
357
+ ## Validation Checklist
358
+
359
+ Before finalizing, verify:
360
+
361
+ - [ ] Phase headers exist (Phase 0.1, 0.2, 2, 4, 5 at minimum)
362
+ - [ ] Story headers follow format (`### Story X.Y.Z:`)
363
+ - [ ] Day numbering is present
364
+ - [ ] Effort estimates are included
365
+ - [ ] Acceptance criteria use checkboxes `- [ ]`
366
+ - [ ] No AI-DLC format (`- [ ] 1.`, `- [ ] 1.1`) is used
367
+ - [ ] Timeline section is included
368
+ - [ ] Estimate summary table is included
@@ -0,0 +1,66 @@
1
+ ---
2
+ name: /michi:design-review
3
+ description: UIコンポーネントのデザイン品質をレビューする
4
+ ---
5
+
6
+ # デザインレビュー
7
+
8
+ このコマンドは、UIコンポーネントやフロントエンドコードのデザイン品質をレビューします。
9
+
10
+ ## サブエージェント呼び出し
11
+
12
+ **重要**: このコマンドは `design-reviewer` サブエージェントを使用します。
13
+
14
+ design-reviewer サブエージェントを使用して、以下のデザイン品質をレビューしてください。
15
+
16
+ ## レビュー観点
17
+
18
+ ### 1. アクセシビリティ(a11y)
19
+ - WCAG 2.1 ガイドラインへの準拠
20
+ - キーボード操作のサポート
21
+ - スクリーンリーダー対応
22
+ - カラーコントラスト比の確認
23
+ - フォーカスインジケーターの視認性
24
+
25
+ ### 2. レスポンシブデザイン
26
+ - モバイル、タブレット、デスクトップでの表示確認
27
+ - ブレークポイントの適切性
28
+ - フレキシブルレイアウトの実装
29
+ - タッチターゲットのサイズ(最小44x44px)
30
+
31
+ ### 3. デザインシステムとの整合性
32
+ - カラーパレットの使用
33
+ - タイポグラフィの統一
34
+ - スペーシングの一貫性
35
+ - コンポーネントの再利用
36
+
37
+ ### 4. UXベストプラクティス
38
+ - ユーザーフィードバックの適切性
39
+ - エラーメッセージの明確性
40
+ - ローディング状態の表示
41
+ - 操作の直感性
42
+
43
+ ## 参照スキル
44
+
45
+ スキル `design-review` のガイドラインに従ってレビューを実施してください。
46
+
47
+ ## 使用例
48
+
49
+ ```
50
+ /michi:design-review
51
+ ```
52
+
53
+ コマンド実行後、現在のプロジェクトのUIコンポーネントをレビューし、改善提案を行います。
54
+
55
+ ## 出力
56
+
57
+ レビュー結果は以下の形式で出力されます:
58
+
59
+ 1. **レビューサマリー**: 全体的な評価
60
+ 2. **問題点**: 発見された問題のリスト(優先度付き)
61
+ 3. **改善提案**: 具体的な改善策
62
+ 4. **参考資料**: 関連するベストプラクティスへのリンク
63
+
64
+ ## 言語設定
65
+
66
+ 出力言語は {{KIRO_DIR}}/project.json の設定に従います。