moai-adk 0.11.0__py3-none-any.whl → 0.12.1__py3-none-any.whl

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.

Potentially problematic release.


This version of moai-adk might be problematic. Click here for more details.

Files changed (265) hide show
  1. moai_adk/core/issue_creator.py +2 -2
  2. moai_adk/core/project/detector.py +285 -12
  3. moai_adk/templates/.claude/agents/alfred/cc-manager.md +316 -0
  4. moai_adk/templates/.claude/agents/alfred/debug-helper.md +208 -0
  5. moai_adk/templates/.claude/agents/alfred/doc-syncer.md +214 -0
  6. moai_adk/templates/.claude/agents/alfred/git-manager.md +406 -0
  7. moai_adk/templates/.claude/agents/alfred/implementation-planner.md +350 -0
  8. moai_adk/templates/.claude/agents/alfred/project-manager.md +273 -0
  9. moai_adk/templates/.claude/agents/alfred/quality-gate.md +343 -0
  10. moai_adk/templates/.claude/agents/alfred/skill-factory.md +865 -0
  11. moai_adk/templates/.claude/agents/alfred/spec-builder.md +287 -0
  12. moai_adk/templates/.claude/agents/alfred/tag-agent.md +287 -0
  13. moai_adk/templates/.claude/agents/alfred/tdd-implementer.md +326 -0
  14. moai_adk/templates/.claude/agents/alfred/trust-checker.md +375 -0
  15. moai_adk/templates/.claude/commands/alfred/0-project.md +1187 -0
  16. moai_adk/templates/.claude/commands/alfred/1-plan.md +734 -0
  17. moai_adk/templates/.claude/commands/alfred/2-run.md +551 -0
  18. moai_adk/templates/.claude/commands/alfred/3-sync.md +689 -0
  19. moai_adk/templates/.claude/commands/alfred/9-feedback.md +149 -0
  20. moai_adk/templates/.claude/hooks/alfred/alfred_hooks.py +208 -0
  21. moai_adk/templates/.claude/hooks/alfred/core/project.py +744 -0
  22. moai_adk/templates/.claude/hooks/alfred/core/timeout.py +136 -0
  23. moai_adk/templates/.claude/hooks/alfred/core/ttl_cache.py +109 -0
  24. moai_adk/templates/.claude/hooks/alfred/core/version_cache.py +198 -0
  25. moai_adk/templates/.claude/hooks/alfred/notification__handle_events.py +94 -0
  26. moai_adk/templates/.claude/hooks/alfred/post_tool__log_changes.py +94 -0
  27. moai_adk/templates/.claude/hooks/alfred/pre_tool__auto_checkpoint.py +100 -0
  28. moai_adk/templates/.claude/hooks/alfred/session_end__cleanup.py +94 -0
  29. moai_adk/templates/.claude/hooks/alfred/session_start__show_project_info.py +94 -0
  30. moai_adk/templates/.claude/hooks/alfred/shared/core/__init__.py +170 -0
  31. moai_adk/templates/.claude/hooks/alfred/shared/core/checkpoint.py +271 -0
  32. moai_adk/templates/.claude/hooks/alfred/shared/core/context.py +67 -0
  33. moai_adk/templates/.claude/hooks/alfred/shared/core/project.py +749 -0
  34. moai_adk/templates/.claude/hooks/alfred/shared/core/tags.py +230 -0
  35. moai_adk/templates/.claude/hooks/alfred/shared/core/version_cache.py +198 -0
  36. moai_adk/templates/.claude/hooks/alfred/shared/handlers/__init__.py +21 -0
  37. moai_adk/templates/.claude/hooks/alfred/shared/handlers/notification.py +156 -0
  38. moai_adk/templates/.claude/hooks/alfred/shared/handlers/session.py +174 -0
  39. moai_adk/templates/.claude/hooks/alfred/shared/handlers/tool.py +87 -0
  40. moai_adk/templates/.claude/hooks/alfred/shared/handlers/user.py +61 -0
  41. moai_adk/templates/.claude/hooks/alfred/stop__handle_interrupt.py +94 -0
  42. moai_adk/templates/.claude/hooks/alfred/subagent_stop__handle_subagent_end.py +94 -0
  43. moai_adk/templates/.claude/hooks/alfred/user_prompt__jit_load_docs.py +111 -0
  44. moai_adk/templates/.claude/hooks/alfred/utils/__init__.py +1 -0
  45. moai_adk/templates/.claude/hooks/alfred/utils/timeout.py +136 -0
  46. moai_adk/templates/.claude/output-styles/alfred/agentic-coding.md +640 -0
  47. moai_adk/templates/.claude/output-styles/alfred/moai-adk-learning.md +696 -0
  48. moai_adk/templates/.claude/output-styles/alfred/study-with-alfred.md +474 -0
  49. moai_adk/templates/.claude/settings.json +144 -0
  50. moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/SKILL.md +113 -0
  51. moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/examples.md +29 -0
  52. moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/reference.md +28 -0
  53. moai_adk/templates/.claude/skills/moai-alfred-git-workflow/SKILL.md +122 -0
  54. moai_adk/templates/.claude/skills/moai-alfred-git-workflow/examples.md +29 -0
  55. moai_adk/templates/.claude/skills/moai-alfred-git-workflow/reference.md +29 -0
  56. moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/SKILL.md +237 -0
  57. moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/examples.md +615 -0
  58. moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/reference.md +653 -0
  59. moai_adk/templates/.claude/skills/moai-alfred-language-detection/SKILL.md +113 -0
  60. moai_adk/templates/.claude/skills/moai-alfred-language-detection/examples.md +29 -0
  61. moai_adk/templates/.claude/skills/moai-alfred-language-detection/reference.md +28 -0
  62. moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/SKILL.md +113 -0
  63. moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/examples.md +29 -0
  64. moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/reference.md +28 -0
  65. moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/SKILL.md +113 -0
  66. moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/examples.md +29 -0
  67. moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/reference.md +28 -0
  68. moai_adk/templates/.claude/skills/moai-alfred-trust-validation/SKILL.md +113 -0
  69. moai_adk/templates/.claude/skills/moai-alfred-trust-validation/examples.md +29 -0
  70. moai_adk/templates/.claude/skills/moai-alfred-trust-validation/reference.md +28 -0
  71. moai_adk/templates/.claude/skills/moai-cc-agents/SKILL.md +269 -0
  72. moai_adk/templates/.claude/skills/moai-cc-agents/templates/agent-template.md +32 -0
  73. moai_adk/templates/.claude/skills/moai-cc-claude-md/SKILL.md +298 -0
  74. moai_adk/templates/.claude/skills/moai-cc-claude-md/templates/CLAUDE-template.md +26 -0
  75. moai_adk/templates/.claude/skills/moai-cc-commands/SKILL.md +307 -0
  76. moai_adk/templates/.claude/skills/moai-cc-commands/templates/command-template.md +21 -0
  77. moai_adk/templates/.claude/skills/moai-cc-hooks/SKILL.md +252 -0
  78. moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/pre-bash-check.sh +19 -0
  79. moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/preserve-permissions.sh +19 -0
  80. moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/validate-bash-command.py +24 -0
  81. moai_adk/templates/.claude/skills/moai-cc-mcp-plugins/SKILL.md +199 -0
  82. moai_adk/templates/.claude/skills/moai-cc-mcp-plugins/templates/settings-mcp-template.json +39 -0
  83. moai_adk/templates/.claude/skills/moai-cc-memory/SKILL.md +316 -0
  84. moai_adk/templates/.claude/skills/moai-cc-memory/templates/session-summary-template.md +18 -0
  85. moai_adk/templates/.claude/skills/moai-cc-settings/SKILL.md +263 -0
  86. moai_adk/templates/.claude/skills/moai-cc-settings/templates/settings-complete-template.json +30 -0
  87. moai_adk/templates/.claude/skills/moai-cc-skills/SKILL.md +291 -0
  88. moai_adk/templates/.claude/skills/moai-cc-skills/templates/SKILL-template.md +15 -0
  89. moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +290 -0
  90. moai_adk/templates/.claude/skills/moai-domain-backend/examples.md +1633 -0
  91. moai_adk/templates/.claude/skills/moai-domain-backend/reference.md +660 -0
  92. moai_adk/templates/.claude/skills/moai-domain-cli-tool/SKILL.md +123 -0
  93. moai_adk/templates/.claude/skills/moai-domain-cli-tool/examples.md +29 -0
  94. moai_adk/templates/.claude/skills/moai-domain-cli-tool/reference.md +30 -0
  95. moai_adk/templates/.claude/skills/moai-domain-data-science/SKILL.md +123 -0
  96. moai_adk/templates/.claude/skills/moai-domain-data-science/examples.md +29 -0
  97. moai_adk/templates/.claude/skills/moai-domain-data-science/reference.md +30 -0
  98. moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +123 -0
  99. moai_adk/templates/.claude/skills/moai-domain-database/examples.md +29 -0
  100. moai_adk/templates/.claude/skills/moai-domain-database/reference.md +30 -0
  101. moai_adk/templates/.claude/skills/moai-domain-devops/SKILL.md +124 -0
  102. moai_adk/templates/.claude/skills/moai-domain-devops/examples.md +29 -0
  103. moai_adk/templates/.claude/skills/moai-domain-devops/reference.md +31 -0
  104. moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +124 -0
  105. moai_adk/templates/.claude/skills/moai-domain-frontend/examples.md +29 -0
  106. moai_adk/templates/.claude/skills/moai-domain-frontend/reference.md +31 -0
  107. moai_adk/templates/.claude/skills/moai-domain-ml/SKILL.md +123 -0
  108. moai_adk/templates/.claude/skills/moai-domain-ml/examples.md +29 -0
  109. moai_adk/templates/.claude/skills/moai-domain-ml/reference.md +30 -0
  110. moai_adk/templates/.claude/skills/moai-domain-mobile-app/SKILL.md +123 -0
  111. moai_adk/templates/.claude/skills/moai-domain-mobile-app/examples.md +29 -0
  112. moai_adk/templates/.claude/skills/moai-domain-mobile-app/reference.md +30 -0
  113. moai_adk/templates/.claude/skills/moai-domain-security/SKILL.md +123 -0
  114. moai_adk/templates/.claude/skills/moai-domain-security/examples.md +29 -0
  115. moai_adk/templates/.claude/skills/moai-domain-security/reference.md +30 -0
  116. moai_adk/templates/.claude/skills/moai-domain-web-api/SKILL.md +123 -0
  117. moai_adk/templates/.claude/skills/moai-domain-web-api/examples.md +29 -0
  118. moai_adk/templates/.claude/skills/moai-domain-web-api/reference.md +30 -0
  119. moai_adk/templates/.claude/skills/moai-essentials-debug/SKILL.md +303 -0
  120. moai_adk/templates/.claude/skills/moai-essentials-debug/examples.md +1064 -0
  121. moai_adk/templates/.claude/skills/moai-essentials-debug/reference.md +1047 -0
  122. moai_adk/templates/.claude/skills/moai-essentials-perf/SKILL.md +113 -0
  123. moai_adk/templates/.claude/skills/moai-essentials-perf/examples.md +29 -0
  124. moai_adk/templates/.claude/skills/moai-essentials-perf/reference.md +28 -0
  125. moai_adk/templates/.claude/skills/moai-essentials-refactor/SKILL.md +113 -0
  126. moai_adk/templates/.claude/skills/moai-essentials-refactor/examples.md +29 -0
  127. moai_adk/templates/.claude/skills/moai-essentials-refactor/reference.md +28 -0
  128. moai_adk/templates/.claude/skills/moai-essentials-review/SKILL.md +113 -0
  129. moai_adk/templates/.claude/skills/moai-essentials-review/examples.md +29 -0
  130. moai_adk/templates/.claude/skills/moai-essentials-review/reference.md +28 -0
  131. moai_adk/templates/.claude/skills/moai-foundation-ears/SKILL.md +116 -0
  132. moai_adk/templates/.claude/skills/moai-foundation-ears/examples.md +29 -0
  133. moai_adk/templates/.claude/skills/moai-foundation-ears/reference.md +28 -0
  134. moai_adk/templates/.claude/skills/moai-foundation-git/SKILL.md +122 -0
  135. moai_adk/templates/.claude/skills/moai-foundation-git/examples.md +29 -0
  136. moai_adk/templates/.claude/skills/moai-foundation-git/reference.md +29 -0
  137. moai_adk/templates/.claude/skills/moai-foundation-langs/SKILL.md +113 -0
  138. moai_adk/templates/.claude/skills/moai-foundation-langs/examples.md +29 -0
  139. moai_adk/templates/.claude/skills/moai-foundation-langs/reference.md +28 -0
  140. moai_adk/templates/.claude/skills/moai-foundation-specs/SKILL.md +113 -0
  141. moai_adk/templates/.claude/skills/moai-foundation-specs/examples.md +29 -0
  142. moai_adk/templates/.claude/skills/moai-foundation-specs/reference.md +28 -0
  143. moai_adk/templates/.claude/skills/moai-foundation-tags/SKILL.md +113 -0
  144. moai_adk/templates/.claude/skills/moai-foundation-tags/examples.md +29 -0
  145. moai_adk/templates/.claude/skills/moai-foundation-tags/reference.md +28 -0
  146. moai_adk/templates/.claude/skills/moai-foundation-trust/SKILL.md +307 -0
  147. moai_adk/templates/.claude/skills/moai-foundation-trust/examples.md +0 -0
  148. moai_adk/templates/.claude/skills/moai-foundation-trust/reference.md +1099 -0
  149. moai_adk/templates/.claude/skills/moai-lang-c/SKILL.md +124 -0
  150. moai_adk/templates/.claude/skills/moai-lang-c/examples.md +29 -0
  151. moai_adk/templates/.claude/skills/moai-lang-c/reference.md +31 -0
  152. moai_adk/templates/.claude/skills/moai-lang-cpp/SKILL.md +124 -0
  153. moai_adk/templates/.claude/skills/moai-lang-cpp/examples.md +29 -0
  154. moai_adk/templates/.claude/skills/moai-lang-cpp/reference.md +31 -0
  155. moai_adk/templates/.claude/skills/moai-lang-csharp/SKILL.md +123 -0
  156. moai_adk/templates/.claude/skills/moai-lang-csharp/examples.md +29 -0
  157. moai_adk/templates/.claude/skills/moai-lang-csharp/reference.md +30 -0
  158. moai_adk/templates/.claude/skills/moai-lang-dart/SKILL.md +123 -0
  159. moai_adk/templates/.claude/skills/moai-lang-dart/examples.md +29 -0
  160. moai_adk/templates/.claude/skills/moai-lang-dart/reference.md +30 -0
  161. moai_adk/templates/.claude/skills/moai-lang-go/SKILL.md +124 -0
  162. moai_adk/templates/.claude/skills/moai-lang-go/examples.md +29 -0
  163. moai_adk/templates/.claude/skills/moai-lang-go/reference.md +31 -0
  164. moai_adk/templates/.claude/skills/moai-lang-java/SKILL.md +124 -0
  165. moai_adk/templates/.claude/skills/moai-lang-java/examples.md +29 -0
  166. moai_adk/templates/.claude/skills/moai-lang-java/reference.md +31 -0
  167. moai_adk/templates/.claude/skills/moai-lang-javascript/SKILL.md +125 -0
  168. moai_adk/templates/.claude/skills/moai-lang-javascript/examples.md +29 -0
  169. moai_adk/templates/.claude/skills/moai-lang-javascript/reference.md +32 -0
  170. moai_adk/templates/.claude/skills/moai-lang-kotlin/SKILL.md +124 -0
  171. moai_adk/templates/.claude/skills/moai-lang-kotlin/examples.md +29 -0
  172. moai_adk/templates/.claude/skills/moai-lang-kotlin/reference.md +31 -0
  173. moai_adk/templates/.claude/skills/moai-lang-php/SKILL.md +123 -0
  174. moai_adk/templates/.claude/skills/moai-lang-php/examples.md +29 -0
  175. moai_adk/templates/.claude/skills/moai-lang-php/reference.md +30 -0
  176. moai_adk/templates/.claude/skills/moai-lang-python/SKILL.md +431 -0
  177. moai_adk/templates/.claude/skills/moai-lang-python/examples.md +624 -0
  178. moai_adk/templates/.claude/skills/moai-lang-python/reference.md +316 -0
  179. moai_adk/templates/.claude/skills/moai-lang-r/SKILL.md +123 -0
  180. moai_adk/templates/.claude/skills/moai-lang-r/examples.md +29 -0
  181. moai_adk/templates/.claude/skills/moai-lang-r/reference.md +30 -0
  182. moai_adk/templates/.claude/skills/moai-lang-ruby/SKILL.md +124 -0
  183. moai_adk/templates/.claude/skills/moai-lang-ruby/examples.md +29 -0
  184. moai_adk/templates/.claude/skills/moai-lang-ruby/reference.md +31 -0
  185. moai_adk/templates/.claude/skills/moai-lang-rust/SKILL.md +124 -0
  186. moai_adk/templates/.claude/skills/moai-lang-rust/examples.md +29 -0
  187. moai_adk/templates/.claude/skills/moai-lang-rust/reference.md +31 -0
  188. moai_adk/templates/.claude/skills/moai-lang-scala/SKILL.md +123 -0
  189. moai_adk/templates/.claude/skills/moai-lang-scala/examples.md +29 -0
  190. moai_adk/templates/.claude/skills/moai-lang-scala/reference.md +30 -0
  191. moai_adk/templates/.claude/skills/moai-lang-shell/SKILL.md +123 -0
  192. moai_adk/templates/.claude/skills/moai-lang-shell/examples.md +29 -0
  193. moai_adk/templates/.claude/skills/moai-lang-shell/reference.md +30 -0
  194. moai_adk/templates/.claude/skills/moai-lang-sql/SKILL.md +124 -0
  195. moai_adk/templates/.claude/skills/moai-lang-sql/examples.md +29 -0
  196. moai_adk/templates/.claude/skills/moai-lang-sql/reference.md +31 -0
  197. moai_adk/templates/.claude/skills/moai-lang-swift/SKILL.md +123 -0
  198. moai_adk/templates/.claude/skills/moai-lang-swift/examples.md +29 -0
  199. moai_adk/templates/.claude/skills/moai-lang-swift/reference.md +30 -0
  200. moai_adk/templates/.claude/skills/moai-lang-typescript/SKILL.md +127 -0
  201. moai_adk/templates/.claude/skills/moai-lang-typescript/examples.md +29 -0
  202. moai_adk/templates/.claude/skills/moai-lang-typescript/reference.md +34 -0
  203. moai_adk/templates/.claude/skills/moai-skill-factory/CHECKLIST.md +482 -0
  204. moai_adk/templates/.claude/skills/moai-skill-factory/EXAMPLES.md +278 -0
  205. moai_adk/templates/.claude/skills/moai-skill-factory/INTERACTIVE-DISCOVERY.md +524 -0
  206. moai_adk/templates/.claude/skills/moai-skill-factory/METADATA.md +477 -0
  207. moai_adk/templates/.claude/skills/moai-skill-factory/PARALLEL-ANALYSIS-REPORT.md +429 -0
  208. moai_adk/templates/.claude/skills/moai-skill-factory/PYTHON-VERSION-MATRIX.md +391 -0
  209. moai_adk/templates/.claude/skills/moai-skill-factory/SKILL-FACTORY-WORKFLOW.md +431 -0
  210. moai_adk/templates/.claude/skills/moai-skill-factory/SKILL-UPDATE-ADVISOR.md +577 -0
  211. moai_adk/templates/.claude/skills/moai-skill-factory/SKILL.md +271 -0
  212. moai_adk/templates/.claude/skills/moai-skill-factory/STEP-BY-STEP-GUIDE.md +466 -0
  213. moai_adk/templates/.claude/skills/moai-skill-factory/STRUCTURE.md +583 -0
  214. moai_adk/templates/.claude/skills/moai-skill-factory/WEB-RESEARCH.md +526 -0
  215. moai_adk/templates/.claude/skills/moai-skill-factory/reference.md +465 -0
  216. moai_adk/templates/.claude/skills/moai-skill-factory/scripts/generate-structure.sh +328 -0
  217. moai_adk/templates/.claude/skills/moai-skill-factory/scripts/validate-skill.sh +312 -0
  218. moai_adk/templates/.claude/skills/moai-skill-factory/templates/SKILL_TEMPLATE.md +245 -0
  219. moai_adk/templates/.claude/skills/moai-skill-factory/templates/examples-template.md +285 -0
  220. moai_adk/templates/.claude/skills/moai-skill-factory/templates/reference-template.md +278 -0
  221. moai_adk/templates/.claude/skills/moai-skill-factory/templates/scripts-template.sh +303 -0
  222. moai_adk/templates/.claude/skills/moai-spec-authoring/README.md +137 -0
  223. moai_adk/templates/.claude/skills/moai-spec-authoring/SKILL.md +219 -0
  224. moai_adk/templates/.claude/skills/moai-spec-authoring/examples/validate-spec.sh +161 -0
  225. moai_adk/templates/.claude/skills/moai-spec-authoring/examples.md +541 -0
  226. moai_adk/templates/.claude/skills/moai-spec-authoring/reference.md +622 -0
  227. moai_adk/templates/.github/workflows/c-tag-validation.yml +83 -0
  228. moai_adk/templates/.github/workflows/cpp-tag-validation.yml +79 -0
  229. moai_adk/templates/.github/workflows/csharp-tag-validation.yml +65 -0
  230. moai_adk/templates/.github/workflows/dart-tag-validation.yml +82 -0
  231. moai_adk/templates/.github/workflows/java-tag-validation.yml +75 -0
  232. moai_adk/templates/.github/workflows/kotlin-tag-validation.yml +67 -0
  233. moai_adk/templates/.github/workflows/php-tag-validation.yml +56 -0
  234. moai_adk/templates/.github/workflows/ruby-tag-validation.yml +68 -0
  235. moai_adk/templates/.github/workflows/rust-tag-validation.yml +73 -0
  236. moai_adk/templates/.github/workflows/shell-tag-validation.yml +65 -0
  237. moai_adk/templates/.github/workflows/swift-tag-validation.yml +79 -0
  238. moai_adk/templates/.moai/config.json +113 -0
  239. moai_adk/templates/.moai/memory/CLAUDE-AGENTS-GUIDE.md +208 -0
  240. moai_adk/templates/.moai/memory/CLAUDE-PRACTICES.md +369 -0
  241. moai_adk/templates/.moai/memory/CLAUDE-RULES.md +539 -0
  242. moai_adk/templates/.moai/memory/DEVELOPMENT-GUIDE.md +344 -0
  243. moai_adk/templates/.moai/memory/GITFLOW-PROTECTION-POLICY.md +330 -0
  244. moai_adk/templates/.moai/memory/ISSUE-LABEL-MAPPING.md +150 -0
  245. moai_adk/templates/.moai/memory/SKILLS-DESCRIPTION-POLICY.md +218 -0
  246. moai_adk/templates/.moai/memory/SPEC-METADATA.md +356 -0
  247. moai_adk/templates/.moai/memory/gitflow-protection-policy.md +330 -0
  248. moai_adk/templates/.moai/memory/spec-metadata.md +356 -0
  249. moai_adk/templates/.moai/project/product.md +161 -0
  250. moai_adk/templates/.moai/project/structure.md +156 -0
  251. moai_adk/templates/.moai/project/tech.md +227 -0
  252. moai_adk/templates/CLAUDE.md +90 -10
  253. moai_adk/templates/workflows/go-tag-validation.yml +130 -0
  254. moai_adk/templates/workflows/javascript-tag-validation.yml +135 -0
  255. moai_adk/templates/workflows/python-tag-validation.yml +118 -0
  256. moai_adk/templates/workflows/typescript-tag-validation.yml +154 -0
  257. {moai_adk-0.11.0.dist-info → moai_adk-0.12.1.dist-info}/METADATA +43 -1
  258. moai_adk-0.12.1.dist-info/RECORD +330 -0
  259. moai_adk-0.11.0.dist-info/RECORD +0 -77
  260. /moai_adk/templates/.github/workflows/{release.yml → moai-adk-release.yml} +0 -0
  261. /moai_adk/templates/.github/workflows/{spec-issue-sync.yml → moai-adk-spec-issue-sync.yml} +0 -0
  262. /moai_adk/templates/.github/workflows/{tag-validation.yml → moai-adk-tag-validation.yml} +0 -0
  263. {moai_adk-0.11.0.dist-info → moai_adk-0.12.1.dist-info}/WHEEL +0 -0
  264. {moai_adk-0.11.0.dist-info → moai_adk-0.12.1.dist-info}/entry_points.txt +0 -0
  265. {moai_adk-0.11.0.dist-info → moai_adk-0.12.1.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,734 @@
1
+ ---
2
+ name: alfred:1-plan
3
+ description: "Planning (brainstorming, plan writing, design discussion) + Branch/PR creation"
4
+ # Translations:
5
+ # - ko: "계획 수립 (브레인스토밍, 설계 논의) + 브랜치/PR 생성"
6
+ # - ja: "計画策定(ブレインストーミング、設計議論)+ ブランチ/PR作成"
7
+ # - zh: "规划(头脑风暴、设计讨论)+ 分支/PR创建"
8
+ argument-hint: Title 1 Title 2 ... | SPEC-ID modifications
9
+ allowed-tools:
10
+ - Read
11
+ - Write
12
+ - Edit
13
+ - MultiEdit
14
+ - Grep
15
+ - Glob
16
+ - TodoWrite
17
+ - Bash(git:*)
18
+ - Bash(gh:*)
19
+ - Bash(rg:*)
20
+ - Bash(mkdir:*)
21
+ ---
22
+
23
+ # 🏗️ MoAI-ADK Step 1: Establish a plan (Plan) - Always make a plan first and then proceed.
24
+ > **Note**: Interactive prompts use `AskUserQuestion tool (documented in moai-alfred-interactive-questions skill)` for TUI selection menus. The skill is loaded on-demand when user interaction is required.
25
+ >
26
+ > **Batched Design**: All AskUserQuestion calls follow batched design principles (1-4 questions per call) to minimize user interaction turns. See CLAUDE.md section "Alfred Command Completion Pattern" for details.
27
+
28
+ <!-- @CODE:ALF-WORKFLOW-001:CMD-PLAN -->
29
+
30
+ **4-Step Workflow Integration**: This command implements Steps 1-2 of Alfred's workflow (Intent Understanding → Plan Creation). See CLAUDE.md for full workflow details.
31
+
32
+ ## 🎯 Command Purpose
33
+
34
+ **"Plan → Run → Sync"** As the first step in the workflow, it supports the entire planning process from ideation to plan creation.
35
+
36
+ **Plan for**: $ARGUMENTS
37
+
38
+ ## 🤖 CodeRabbit AI Integration (Local Only)
39
+
40
+ This local environment includes CodeRabbit AI review integration for SPEC documents:
41
+
42
+ **Automatic workflows:**
43
+ - ✅ SPEC review: CodeRabbit analyzes SPEC metadata and EARS structure
44
+ - ✅ GitHub Issue sync: SPEC files automatically create/update GitHub Issues
45
+ - ✅ Auto-approval: Draft PRs are approved when quality meets standards (80%+)
46
+ - ✅ SPEC quality validation: Checklist for metadata, structure, and content
47
+
48
+ **Scope:**
49
+ - 🏠 **Local environment**: Full CodeRabbit integration with auto-approval
50
+ - 📦 **Published packages**: Users get GitHub Issue sync only (no CodeRabbit)
51
+
52
+ > See `.coderabbit.yaml` for detailed review rules and SPEC validation checklist
53
+
54
+ ## 💡 Planning philosophy: "Always make a plan first and then proceed."
55
+
56
+ `/alfred:1-plan` is a general-purpose command that **creates a plan**, rather than simply “creating” a SPEC document.
57
+
58
+ ### 3 main scenarios
59
+
60
+ #### Scenario 1: Creating a Plan (Primary Method) ⭐
61
+ ```bash
62
+ /alfred:1-plan "User authentication function"
63
+ → Refine idea
64
+ → Requirements specification using EARS syntax
65
+ → Create feature/SPEC-XXX branch
66
+ → Create Draft PR
67
+ ```
68
+
69
+ #### Scenario 2: Brainstorming
70
+ ```bash
71
+ /alfred:1-plan "Payment system improvement idea"
72
+ → Organizing and structuring ideas
73
+ → Deriving requirements candidates
74
+ → Technical review and risk analysis
75
+ ```
76
+
77
+ #### Scenario 3: Improve existing SPEC
78
+ ```bash
79
+ /alfred:1-plan "SPEC-AUTH-001 Security Enhancement"
80
+ → Analyze existing plan
81
+ → Establish improvement direction
82
+ → Create new version plan
83
+ ```
84
+
85
+ > **Standard two-step workflow** (see `CLAUDE.md` - "Alfred Command Execution Pattern" for details)
86
+
87
+ ## 📋 Execution flow
88
+
89
+ 1. **Project Analysis**: In-depth analysis of product/structure/tech.md
90
+ 2. **SPEC candidate discovery**: Prioritization based on business requirements
91
+ 3. **User Verification**: Review and approve writing plan
92
+ 4. **Plan creation**: Generate specifications of EARS structure (spec.md, plan.md, acceptance.md)
93
+ 5. **Git operations**: Create branches/PRs via git-manager
94
+
95
+ ## 🧠 Associated Skills & Agents
96
+
97
+ | Agent | Core Skill | Purpose |
98
+ | ------------ | -------------------------- | --------------------------- |
99
+ | spec-builder | `moai-foundation-ears` | Write SPEC with EARS syntax |
100
+ | git-manager | `moai-alfred-git-workflow` | Create branch and PR |
101
+
102
+ **Note**: TUI Survey Skill is used for user confirmations during the plan phase and is shared across all interactive prompts.
103
+
104
+ ## 🔗 Associated Agent
105
+
106
+ - **Primary**: spec-builder (🏗️ System Architect) - Dedicated to writing SPEC documents
107
+ - **Secondary**: git-manager (🚀 Release Engineer) - Dedicated to creating Git branches/PRs
108
+
109
+ ## 💡 Example of use
110
+
111
+ Users can run commands like this:
112
+ - `/alfred:1-plan` - Auto-suggestion based on project documents
113
+ - `/alfred:1-plan "JWT authentication system"` - Manually create a single SPEC
114
+ - `/alfred:1-plan SPEC-001 "Security hardening"` - Supplementation of existing SPEC
115
+
116
+ ## 🔍 STEP 1: Project analysis and planning
117
+
118
+ STEP 1 consists of **two independent phases** to provide flexible workflow based on user request clarity:
119
+
120
+ ### 📋 STEP 1 Workflow Overview
121
+
122
+ ```
123
+ ┌─────────────────────────────────────────────────────────────┐
124
+ │ STEP 1: Project Analysis & Planning │
125
+ ├─────────────────────────────────────────────────────────────┤
126
+ │ │
127
+ │ Phase A (OPTIONAL) │
128
+ │ ┌─────────────────────────────────────────┐ │
129
+ │ │ 🔍 Explore Agent │ │
130
+ │ │ • Find relevant files by keywords │ │
131
+ │ │ • Locate existing SPEC documents │ │
132
+ │ │ • Identify implementation patterns │ │
133
+ │ └─────────────────────────────────────────┘ │
134
+ │ ↓ │
135
+ │ (exploration results) │
136
+ │ ↓ │
137
+ │ Phase B (REQUIRED) │
138
+ │ ┌─────────────────────────────────────────┐ │
139
+ │ │ ⚙️ spec-builder Agent │ │
140
+ │ │ • Analyze project documents │ │
141
+ │ │ • Propose SPEC candidates │ │
142
+ │ │ • Design EARS structure │ │
143
+ │ │ • Request user approval │ │
144
+ │ └─────────────────────────────────────────┘ │
145
+ │ ↓ │
146
+ │ (user approval via AskUserQuestion) │
147
+ │ ↓ │
148
+ │ PROCEED TO STEP 2 │
149
+ └─────────────────────────────────────────────────────────────┘
150
+ ```
151
+
152
+ **Key Points**:
153
+ - **Phase A is optional** - Skip if user provides clear SPEC title
154
+ - **Phase B is required** - Always runs to analyze project and create SPEC
155
+ - **Results flow forward** - Exploration results (if any) are passed to spec-builder
156
+
157
+ ---
158
+
159
+ ### 🔍 Phase A: Codebase Exploration (OPTIONAL)
160
+
161
+ **Use the Explore agent when user request is unclear or needs context.**
162
+
163
+ #### When to use Phase A:
164
+
165
+ - ✅ User uses vague keywords ("where is...", "find me...", "related to...")
166
+ - ✅ Need to understand existing code structure before planning
167
+ - ✅ Feature spans multiple files or modules
168
+ - ❌ User provides clear SPEC title (skip to Phase B)
169
+
170
+ #### How to invoke Explore agent:
171
+
172
+ ```
173
+ Invoking the Task tool (Explore agent):
174
+ - subagent_type: "Explore"
175
+ - description: "Explore related files in the codebase"
176
+ - prompt: "Please find all files related to the following keywords: $ARGUMENTS
177
+ - File location (src/, tests/, docs/)
178
+ - Relevant SPEC document (.moai/specs/)
179
+ - Existing implementation code
180
+ thoroughness level: medium"
181
+ ```
182
+
183
+ **Note**: If user provides clear SPEC title, skip Phase A and proceed directly to Phase B.
184
+
185
+ ---
186
+
187
+ ### ⚙️ Phase B: SPEC Planning (REQUIRED)
188
+
189
+ **Call the spec-builder agent to analyze project and create SPEC documents.**
190
+
191
+ This phase is **always required** regardless of whether Phase A was executed.
192
+
193
+ #### How to invoke spec-builder:
194
+
195
+ ```
196
+ Call the Task tool:
197
+ - subagent_type: "spec-builder"
198
+ - description: "Analyze the plan and establish a plan"
199
+ - prompt: """You are spec-builder agent.
200
+
201
+ LANGUAGE CONFIGURATION:
202
+ - conversation_language: {{CONVERSATION_LANGUAGE}}
203
+ - language_name: {{CONVERSATION_LANGUAGE_NAME}}
204
+
205
+ CRITICAL INSTRUCTION:
206
+ All SPEC documents and analysis must be generated in conversation_language.
207
+ - If conversation_language is 'ko' (Korean): Generate ALL analysis, plans, and SPEC documents in Korean
208
+ - If conversation_language is 'ja' (Japanese): Generate ALL analysis, plans, and SPEC documents in Japanese
209
+ - If conversation_language is other language: Follow the specified language
210
+
211
+ SKILL INVOCATION:
212
+ Use explicit Skill() calls when needed:
213
+ - Skill("moai-foundation-specs") for SPEC structure guidance
214
+ - Skill("moai-foundation-ears") for EARS syntax requirements
215
+ - Skill("moai-alfred-spec-metadata-validation") for metadata validation
216
+
217
+ TASK:
218
+ Please analyze the project document and suggest SPEC candidates.
219
+ Run in analysis mode, and must include the following:
220
+ 1. In-depth analysis of product/structure/tech.md
221
+ 2. Identify SPEC candidates and Determine priorities
222
+ 3. Design EARS structure
223
+ 4. Wait for user approval
224
+
225
+ User input: $ARGUMENTS
226
+ (Optional) Explore results: $EXPLORE_RESULTS"""
227
+ ```
228
+
229
+ **Note**: If Phase A was executed, pass the exploration results via `$EXPLORE_RESULTS` variable.
230
+
231
+ ### Plan analysis progress
232
+
233
+ 1. **Project document analysis**
234
+ - In-depth analysis of product/structure/tech.md
235
+ - Review existing SPEC list and priorities (.moai/specs/ scan)
236
+ - Evaluate implementation feasibility and complexity
237
+ - (Optional) Identify existing code structure by reflecting the Explore results
238
+
239
+ 2. **Discovering SPEC candidates**
240
+ - Extracting core business requirements
241
+ - Reflecting technical constraints
242
+ - Creating a list of SPEC candidates by priority
243
+
244
+ 3. **Implementation plan report**
245
+ - Present step-by-step plan creation plan
246
+ - Estimated scope of work and dependency analysis
247
+ - Design EARS structure and Acceptance Criteria
248
+
249
+ ### User verification steps
250
+
251
+ After reviewing your implementation plan, Alfred invokes `AskUserQuestion tool (documented in moai-alfred-interactive-questions skill)` to present the following options:
252
+ - **"Go"** or **"Start"**: Start writing the plan as planned
253
+ - **"Modify [Content]"**: Request modifications to the plan
254
+ - **"Stop"**: Stop writing the plan
255
+
256
+ ---
257
+
258
+ ## 🚀 STEP 2: Create plan document (after user approval)
259
+
260
+ After user approval (collected via `AskUserQuestion tool (documented in moai-alfred-interactive-questions skill)`), call the spec-builder and git-manager agents using the **Task tool**.
261
+
262
+ ### ⚙️ How to call an agent
263
+
264
+ ```
265
+ 1. Call spec-builder (create plan):
266
+ - subagent_type: "spec-builder"
267
+ - description: "Create SPEC document"
268
+ - prompt: """You are spec-builder agent.
269
+
270
+ LANGUAGE CONFIGURATION:
271
+ - conversation_language: {{CONVERSATION_LANGUAGE}}
272
+ - language_name: {{CONVERSATION_LANGUAGE_NAME}}
273
+
274
+ CRITICAL INSTRUCTION:
275
+ ALL SPEC documents MUST be generated in conversation_language:
276
+ - spec.md: Full document in conversation_language
277
+ - plan.md: Full document in conversation_language
278
+ - acceptance.md: Full document in conversation_language
279
+
280
+ YAML frontmatter and @TAG identifiers MUST remain in English.
281
+ Code examples and technical keywords can be mixed (code in English, narrative in user language).
282
+
283
+ SKILL INVOCATION:
284
+ Use explicit Skill() calls when needed:
285
+ - Skill("moai-foundation-specs") for SPEC structure guidance
286
+ - Skill("moai-foundation-ears") for EARS syntax requirements
287
+ - Skill("moai-alfred-spec-metadata-validation") for metadata validation
288
+ - Skill("moai-alfred-tag-scanning") for TAG chain references
289
+
290
+ TASK:
291
+ Please fill out the SPEC document according to the plan approved in STEP 1.
292
+ Create a specification for the EARS structure."""
293
+
294
+ 2. Invoke git-manager (Git task):
295
+ - subagent_type: "git-manager"
296
+ - description: "Create Git branch/PR"
297
+ - prompt: "After completing the plan, please create a branch and Draft PR."
298
+ ```
299
+
300
+ ## function
301
+
302
+ - **Project document analysis**: Analyzes `.moai/project/{product,structure,tech}.md` to suggest implementation candidates and generates SPEC after user approval.
303
+ - **Personal mode**: Create a `.moai/specs/SPEC-{ID}/` directory and a template document (**Directory name format required**: `SPEC-` prefix + TAG ID).
304
+ - **Team mode**: Create a GitHub Issue (or Discussion) Associate it with a branch template.
305
+
306
+ ## How to use
307
+
308
+ The user executes the command in the form:
309
+ - `/alfred:1-plan` - Auto-suggestion based on project documents (recommended)
310
+ - `/alfred:1-plan "JWT Authentication System"` - Manually create a single SPEC
311
+ - `/alfred:1-plan SPEC-001 "Security Reinforcement"` - Supplementation of existing SPEC
312
+
313
+ If not entered, 3 to 5 priorities will be suggested based on the Q&A results, and only the approved items will be confirmed as actual SPECs.
314
+
315
+ ## Summary of processing by mode
316
+
317
+ | mode | output | Branch Strategy | Additional Actions |
318
+ | -------- | -------------------------------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- |
319
+ | Personal | Templates `.moai/specs/SPEC-XXX/spec.md`, `plan.md`, `acceptance.md`, etc. | Branch from `main` or `develop` (based on settings) | git-manager agent automatically creates checkpoints |
320
+ | Team | GitHub Issue (`[SPEC-XXX] Title`), Draft PR (optional) | **Always branch from `develop`** (GitFlow standard) | `gh` CLI stay logged in, Draft PR → develop created |
321
+
322
+ ## Input options
323
+
324
+ - **Automatic suggestion**: `/alfred:1-plan` → Create a list of candidates based on the core bullet of the project document
325
+ - **Manual creation**: Pass the title as an argument → Create only 1 case, Acceptance template is supplemented after reply
326
+ - **Supplementation mode**: `SPEC-ID Delivered in “memo” format → Update existing SPEC document/Issue
327
+
328
+ ## 📋 STEP 1 Execution Guide: Project Analysis and Planning
329
+
330
+ ### ⚠️ Essential rules: Directory naming convention
331
+
332
+ **Format that must be followed**: `.moai/specs/SPEC-{ID}/`
333
+
334
+ **Correct Example**:
335
+ - ✅ `SPEC-AUTH-001/`
336
+ - ✅ `SPEC-REFACTOR-001/`
337
+ - ✅ `SPEC-UPDATE-REFACTOR-001/`
338
+
339
+ **Incorrect example**:
340
+ - ❌ `AUTH-001/` (missing SPEC- prefix)
341
+ - ❌ `SPEC-001-auth/` (additional text after ID)
342
+ - ❌ `SPEC-AUTH-001-jwt/` (additional text after ID)
343
+
344
+ **Duplicate check required**: Before creating a new SPEC ID, be sure to search the existing TAG ID to prevent duplication.
345
+
346
+ **Composite Domain Rules**:
347
+ - ✅ Allow: `UPDATE-REFACTOR-001` (2 domains)
348
+ - ⚠️ Caution: `UPDATE-REFACTOR-FIX-001` (3+ domains, simplification recommended)
349
+
350
+ ---
351
+
352
+ ### 1. Analysis of project documents
353
+
354
+ Alfred calls the spec-builder agent to perform project document-based planning analysis and planning.
355
+
356
+ #### Analysis Checklist
357
+
358
+ - [ ] **Requirements extraction**: Identify key business requirements in product.md
359
+ - [ ] **Architectural constraints**: Identify system design constraints in structure.md
360
+ - [ ] **Technical constraints**: Technology stack and quality policy in tech.md
361
+ - [ ] **Existing SPEC**: Review current SPEC list and priorities
362
+
363
+ ### 2. SPEC candidate discovery strategy
364
+
365
+ #### Prioritization criteria
366
+
367
+ | Priority | standards | SPEC Candidate Type |
368
+ | ---------- | --------------------------- | ------------------------------------------- |
369
+ | **High** | Core Business Values ​​ | User core functions, API design |
370
+ | **Medium** | System Stability | Authentication/Security, Data Management |
371
+ | **Low** | Improvements and expansions | UI/UX improvement, performance optimization |
372
+
373
+ #### Approach by SPEC type
374
+
375
+ - **API/Backend**: Endpoint design, data model, authentication
376
+ - **Frontend**: User interface, state management, routing
377
+ - **Infrastructure**: Deployment, monitoring, security policy
378
+ - **Quality**: Test strategy, performance criteria, documentation
379
+
380
+ ### 3. Create a plan Create a plan report
381
+
382
+ Present your plan in the following format:
383
+
384
+ ```
385
+ ## Plan Creation Plan Report: [TARGET]
386
+
387
+ ### 📊 Analysis Results
388
+ - **Discovered SPEC Candidates**: [Number and Category]
389
+ - **High Priority**: [List of Core SPECs]
390
+ - **Estimated Work Time**: [Time Estimation]
391
+
392
+ ### 🎯 Writing Strategy
393
+ - **Selected SPEC**: [SPEC ID and Title to Write]
394
+ - **EARS Structure**: [Event-Action-Response-State Design]
395
+ - **Acceptance Criteria**: [Given-When-Then Scenario]
396
+
397
+ ### 📦 Technology stack and library versions (optional)
398
+ **Included only if technology stack is determined during planning stage**:
399
+ - **Web search**: Use `WebSearch` to find the latest stable versions of key libraries to use
400
+ - **Specify versions**: Specify exact versions for each library, e.g. `fastapi>=0.118.3`)
401
+ - **Stability priority**: Exclude beta/alpha versions, select only production stable versions
402
+ - **Note**: Detailed version is finalized in `/alfred:2-run` stage
403
+
404
+ ### ⚠️ Precautions
405
+ - **Technical constraints**: [Restraints to consider]
406
+ - **Dependency**: [Relevance with other SPECs]
407
+ - **Branch strategy**: [Processing by Personal/Team mode]
408
+
409
+ ### ✅ Expected deliverables
410
+ - **spec.md**: [Core specifications of the EARS structure]
411
+ - **plan.md**: [Implementation plan]
412
+ - **acceptance.md**: [Acceptance criteria]
413
+ - **Branches/PR**: [Git operations by mode]
414
+
415
+ ---
416
+ **Approval Request**: Would you like to proceed with creating a plan with the above plan?
417
+ (Choose between “Proceed,” “Modify [Content],” or “Abort”)
418
+ ```
419
+
420
+ ---
421
+
422
+ ## 🚀 STEP 2 Implementation Guide: Create a Plan (After Approval)
423
+
424
+ Only if the user selects **"Proceed"** or **"Start"** will Alfred call the spec-builder agent to begin building the SPEC document.
425
+
426
+ ### EARS specification writing guide
427
+
428
+ 1. **Event**: Define trigger events that occur in the system
429
+ 2. **Action**: Specification of the system's action for an event
430
+ 3. **Response**: Defining a response as a result of an action
431
+ 4. **State**: Specifies system state changes and side effects
432
+
433
+ **Example** (see `development-guide.md` for details):
434
+ ```markdown
435
+ ### Ubiquitous Requirements
436
+ - The system must provide user authentication functionality
437
+
438
+ ### Event-driven Requirements
439
+ - WHEN the user logs in with valid credentials, the system must issue a JWT token
440
+
441
+ ### State-driven Requirements
442
+ - When the WHILE token is in an unexpired state, the system must allow access to the protected resource.
443
+
444
+ ### Unwanted Behaviors
445
+ - If the IF token has expired, the system must return a 401 Unauthorized response.
446
+ ```
447
+
448
+ ### 📄 SPEC Document Template
449
+
450
+ #### YAML Front Matter Schema
451
+
452
+ > **📋 SPEC Metadata Standard (SSOT)**: `.moai/memory/spec-metadata.md`
453
+
454
+ **Metadata that must be included** at the top of the spec.md file:
455
+ - **7 required fields**: id, version, status, created, updated, author, priority
456
+ - **9 optional fields**: category, labels, depends_on, blocks, related_specs, related_issue, scope
457
+
458
+ **Simple reference example**:
459
+ ```yaml
460
+ ---
461
+ id: AUTH-001
462
+ version: 0.0.1
463
+ status: draft
464
+ created: 2025-09-15
465
+ updated: 2025-09-15
466
+ author: @Goos
467
+ priority: high
468
+ ---
469
+ ```
470
+
471
+ **Core rules**:
472
+ - **id**: Same as TAG ID (`<domain>-<3 digits>`) - Never change after creation
473
+ - **Directory name**: `.moai/specs/SPEC-{ID}/` (e.g. `SPEC-AUTH-001/`)
474
+ - **Duplicate Check**: `rg "@SPEC:{ID}" -n .moai/specs/` Required
475
+ - **version**: v0.0.1 (INITIAL) → v0.1.0 (Implementation Completed) → v1.0.0 (Stable)
476
+ - **author**: GitHub @ prefix is required before ID (e.g. `@Goos`)
477
+ - **priority**: critical | high | medium | low
478
+
479
+ **Full field description and validation methods**: see `.moai/memory/spec-metadata.md`
480
+
481
+ #### HISTORY section (required)
482
+
483
+ You must include a HISTORY section **right after the YAML Front Matter**:
484
+
485
+ ```markdown
486
+ # @SPEC:DOMAIN-NNN: JWT-based authentication system
487
+
488
+ ## HISTORY
489
+
490
+ ### v0.0.1 (2025-09-15)
491
+ - **INITIAL**: Initial creation of JWT-based authentication system specification
492
+ - **AUTHOR**: @Goos
493
+ - **SCOPE**: Token issuance, verification, and renewal logic
494
+ - **CONTEXT**: Reflects requirements for strengthening user authentication
495
+
496
+ ### v0.0.2 (2025-09-20)
497
+ - **ADDED**: Added social login requirements (Draft modification)
498
+ - **AUTHOR**: @Goos
499
+ - **REVIEW**: @security-team (approved)
500
+ - **CHANGES**:
501
+ - OAuth2 integration requirements
502
+ - Google/GitHub login support
503
+
504
+ ### v0.1.0 (2025-10-01)
505
+ - **IMPLEMENTATION COMPLETED**: TDD implementation completed (status: draft → completed)
506
+ - **TDD CYCLE**: RED → GREEN → REFACTOR
507
+ - **COMMITS**: [Implementation commit hash list]
508
+ - **FILES**: [Created/modified file list]
509
+ ```
510
+
511
+ **HISTORY writing rules**:
512
+ - **Version system**: v0.0.1 (INITIAL) → v0.1.0 (implementation complete) → v1.0.0 (stabilization)
513
+ - Detailed version system: See `.moai/memory/spec-metadata.md#version-system`
514
+ - **Version order**: Latest version on top (reverse order)
515
+ - **Change type tag**: INITIAL, ADDED, CHANGED, IMPLEMENTATION COMPLETED, BREAKING, DEPRECATED, REMOVED, FIXED
516
+ - Detailed description: See `.moai/memory/spec-metadata.md#history-writing-guide`
517
+ - **Required items**: Version, date, AUTHOR, changes
518
+ - **Optional items**: REVIEW, SCOPE, CONTEXT, MIGRATION
519
+
520
+ #### SPEC document overall structure
521
+
522
+ ```markdown
523
+ ---
524
+ id: AUTH-001
525
+ version: 1.0.0
526
+ status: draft
527
+ created: 2025-09-15
528
+ updated: 2025-09-15
529
+ author: @username
530
+ ---
531
+
532
+ # @SPEC:DOMAIN-NNN: [SPEC title]
533
+
534
+ ## HISTORY
535
+ [Change history by version – see example above]
536
+
537
+ ## Environment
538
+ [System environment and prerequisites]
539
+
540
+ ## Assumptions
541
+ [Design assumptions]
542
+
543
+ ## Requirements
544
+ ### Ubiquitous
545
+ - The system must provide [feature]
546
+
547
+ ### Event-driven (event-driven)
548
+ - WHEN [condition], the system must [operate]
549
+
550
+ ### State-driven
551
+ - WHILE When in [state], the system must [operate]
552
+
553
+ ### Optional (Optional function)
554
+ - If WHERE [condition], the system can [operate]
555
+
556
+ ### Unwanted Behaviors
557
+ - IF [condition], the system must [respond appropriately with error handling or quality gates]
558
+
559
+ ## Traceability (@TAG)
560
+ - **SPEC**: @SPEC:DOMAIN-NNN
561
+ - **TEST**: tests/auth/test_service.py
562
+ - **CODE**: src/auth/service.py
563
+ - **DOC**: docs/api/authentication.md
564
+ ```
565
+
566
+ ### Agent collaboration structure
567
+
568
+ - **Step 1**: The `spec-builder` agent is dedicated to analyzing project documents and creating SPEC documents.
569
+ - **Step 2**: The `git-manager` agent is dedicated to branch creation and GitHub Issue/PR creation.
570
+ - **Single Responsibility Principle**: spec-builder only writes plans, git-manager only performs Git/GitHub operations.
571
+ - **Sequential execution**: Executes in the order spec-builder → git-manager to maintain clear dependencies.
572
+ - **No inter-agent calls**: Each agent calls the other agents. It is not called directly, but is executed sequentially only at the command level.
573
+
574
+ ## 🚀 Optimized workflow execution order
575
+
576
+ ### Phase 1: Parallel project analysis (performance optimization)
577
+
578
+ **Perform simultaneously**:
579
+
580
+ ```
581
+ Task 1 (haiku): Scan project structure
582
+ ├── Detect languages/frameworks
583
+ ├── Collect list of existing SPECs
584
+ └── Draft priority backlog
585
+
586
+ Task 2 (sonnet): In-depth document analysis
587
+ ├── product.md requirements extraction
588
+ ├── structure.md architecture analysis
589
+ └── tech.md technical constraints
590
+ ```
591
+
592
+ **Performance improvements**: Parallelize basic scans and deep analysis to minimize latency
593
+
594
+ ### Phase 2: Create SPEC document integration
595
+
596
+ The `spec-builder` agent (sonnet) integrates the results of the parallel analysis:
597
+
598
+ - Proposal of function candidates based on project document
599
+ - Creation of SPEC document after user approval (using MultiEdit)
600
+ - Simultaneous creation of 3 files (spec.md, plan.md, acceptance.md)
601
+
602
+ ### Phase 3: Git task processing
603
+
604
+ Final processing by the `git-manager` agent (haiku):
605
+
606
+ - **Branch creation**: Apply strategy for each mode
607
+ - **Personal mode**: Branch from `main` or `develop` (based on project settings)
608
+ - **Team mode**: **Always branch from `develop`** (GitFlow standard)
609
+ - Branch name: `feature/SPEC-{ID}` format
610
+ - **Create GitHub Issue**: Create SPEC Issue in Team mode
611
+ - **Create Draft PR**: `feature/SPEC-{ID}` → `develop` in Team mode Create PR
612
+ - **Initial Commit**: Commit SPEC document and create tags
613
+
614
+ **Important**: Each agent runs independently, and direct calls between agents are prohibited.
615
+
616
+ ## Agent role separation
617
+
618
+ ### spec-builder dedicated area
619
+
620
+ - Analysis of project documents and discovery of SPEC candidates
621
+ - Preparation of EARS structure specifications
622
+ - Preparation of Acceptance Criteria (Given-When-Then)
623
+ - Verification of SPEC document quality
624
+ - Application of @TAG system
625
+
626
+ ### git-manager dedicated area
627
+
628
+ - Create and manage all Git branches
629
+ - **Apply branch strategy for each mode**
630
+ - Personal: Branch from `main` or `develop`
631
+ - Team: **Always branch from `develop`** (GitFlow)
632
+ - Create GitHub Issue/PR
633
+ - Team Mode: Create Draft PR (`feature/SPEC-{ID}` → `develop`)
634
+ - Create initial commit and tags
635
+ - Handle remote synchronization
636
+
637
+ ## Step 2 workflow execution sequence
638
+
639
+ ### Phase 1: Analysis and planning phase
640
+
641
+ **Plan Analyzer** does the following:
642
+
643
+ 1. **Loading project document**: In-depth analysis of product/structure/tech.md
644
+ 2. **SPEC candidate discovery**: Prioritization based on business requirements
645
+ 3. **Establishment of implementation strategy**: EARS structure and acceptance design
646
+ 4. **Creating a Writing Plan**: Presents a step-by-step approach to writing a plan
647
+ 5. **Awaiting user approval**: Review plan and gather feedback
648
+
649
+ ### Phase 2: Plan preparation phase (after approval)
650
+
651
+ The `spec-builder` agent **continuously** performs after user approval:
652
+
653
+ 1. **Writing EARS specification**: Event-Action-Response-State structuring
654
+ 2. **Acceptance Criteria**: Given-When-Then Scenario Writing
655
+ 3. **Document quality verification**: Apply TRUST principles and @TAG
656
+ 4. **Template creation**: Simultaneous creation of spec.md, plan.md, acceptance.md
657
+
658
+ ### Phase 3: Git operations (git-manager)
659
+
660
+ The `git-manager` agent does **all at once** after the SPEC is complete:
661
+
662
+ 1. **Create branch**: Apply branch strategy for each mode
663
+ 2. **GitHub Issue**: Create SPEC Issue in Team mode
664
+ 3. **Initial commit**: Commit SPEC document and create tags
665
+ 4. **Remote Sync**: Apply synchronization strategy for each mode
666
+
667
+ ### Phase 3.5: CodeRabbit SPEC Review (Local Only)
668
+
669
+ **After Draft PR is created, CodeRabbit automatically:**
670
+
671
+ ```bash
672
+ echo "🤖 Waiting for CodeRabbit SPEC review..."
673
+
674
+ # CodeRabbit triggers automatically on Draft PR creation
675
+ # Review includes:
676
+ # - SPEC metadata validation (YAML frontmatter)
677
+ # - EARS structure completeness check
678
+ # - Acceptance criteria quality (Given-When-Then)
679
+ # - @TAG system traceability
680
+ # - Documentation clarity
681
+
682
+ # Expected time: 1-2 minutes
683
+ for i in {1..12}; do
684
+ sleep 10
685
+
686
+ # Check PR review status
687
+ approval=$(gh pr view $pr_num --json reviewDecision --jq '.reviewDecision')
688
+
689
+ if [ "$approval" = "APPROVED" ]; then
690
+ echo "✅ CodeRabbit approved SPEC PR!"
691
+ echo "→ Ready for development with /alfred:2-run SPEC-$spec_id"
692
+ break
693
+ fi
694
+
695
+ echo "⏳ CodeRabbit reviewing... ($i/12)"
696
+ done
697
+ ```
698
+
699
+ **CodeRabbit review includes:**
700
+ - ✅ YAML frontmatter validation (7 required fields)
701
+ - ✅ HISTORY section structure and completeness
702
+ - ✅ EARS requirements clarity (Ubiquitous/Event-driven/State-driven/Optional/Unwanted Behaviors)
703
+ - ✅ Acceptance criteria quality (Given-When-Then scenarios)
704
+ - ✅ @TAG system compliance (SPEC/TEST/CODE/DOC traceability)
705
+ - ✅ Documentation and formatting
706
+
707
+ See `.coderabbit.yaml` for detailed SPEC review checklist.
708
+
709
+ ## Writing Tips
710
+
711
+ - Information that is not in the product/structure/tech document is supplemented by asking a new question.
712
+ - Acceptance Criteria is encouraged to be written at least 2 times in 3 columns Given/When/Then.
713
+ - The number of modules is reduced due to the relaxation of the Readable standard among the TRUST principles. If the recommended value (default 5) is exceeded, please include justification in the SPEC `context` section.
714
+
715
+ ---
716
+
717
+ ## 🧠 Context Management
718
+
719
+ > For more information: `.moai/memory/development-guide.md` - see section "Context Engineering"
720
+
721
+ ### Core strategy of this command
722
+
723
+ **Load first**: `.moai/project/product.md` (business requirement)
724
+
725
+ **Recommendation**: The plan is complete. You can experience better performance and context management by starting a new chat session with the `/clear` or `/new` command before proceeding to the next step (`/alfred:2-run`).
726
+
727
+ ---
728
+
729
+ ## Next steps
730
+
731
+ **Recommendation**: For better performance and context management, start a new chat session with the `/clear` or `/new` command before proceeding to the next step.
732
+
733
+ - Start implementing TDD with `/alfred:2-run SPEC-XXX`
734
+ - Team mode: After creating an issue, the git-manager agent automatically creates a branch.