moai-adk 0.3.13__tar.gz → 0.4.1__tar.gz

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 (187) hide show
  1. moai_adk-0.4.1/PKG-INFO +303 -0
  2. moai_adk-0.4.1/README.md +264 -0
  3. {moai_adk-0.3.13 → moai_adk-0.4.1}/pyproject.toml +3 -2
  4. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/__init__.py +1 -1
  5. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/__main__.py +1 -1
  6. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/cli/commands/__init__.py +1 -1
  7. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/cli/commands/doctor.py +2 -2
  8. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/cli/commands/init.py +10 -5
  9. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/cli/commands/status.py +1 -1
  10. moai_adk-0.4.1/src/moai_adk/cli/commands/update.py +354 -0
  11. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/cli/prompts/init_prompts.py +15 -19
  12. moai_adk-0.4.1/src/moai_adk/core/__init__.py +2 -0
  13. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/diagnostics/slash_commands.py +1 -1
  14. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/git/branch.py +1 -1
  15. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/git/manager.py +1 -1
  16. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/project/backup_utils.py +1 -0
  17. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/project/phase_executor.py +3 -1
  18. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/project/validator.py +3 -2
  19. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/quality/__init__.py +1 -1
  20. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/quality/trust_checker.py +1 -1
  21. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/quality/validators/__init__.py +1 -1
  22. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/quality/validators/base_validator.py +1 -1
  23. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/template/__init__.py +1 -1
  24. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/template/backup.py +12 -3
  25. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/template/config.py +24 -0
  26. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/template/languages.py +1 -1
  27. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/template/merger.py +74 -4
  28. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/template/processor.py +62 -14
  29. moai_adk-0.4.1/src/moai_adk/templates/.claude/agents/alfred/cc-manager.md +1048 -0
  30. moai_adk-0.4.1/src/moai_adk/templates/.claude/agents/alfred/debug-helper.md +179 -0
  31. moai_adk-0.4.1/src/moai_adk/templates/.claude/agents/alfred/doc-syncer.md +189 -0
  32. moai_adk-0.4.1/src/moai_adk/templates/.claude/agents/alfred/git-manager.md +339 -0
  33. moai_adk-0.4.1/src/moai_adk/templates/.claude/agents/alfred/implementation-planner.md +325 -0
  34. moai_adk-0.4.1/src/moai_adk/templates/.claude/agents/alfred/project-manager.md +232 -0
  35. moai_adk-0.4.1/src/moai_adk/templates/.claude/agents/alfred/quality-gate.md +316 -0
  36. moai_adk-0.4.1/src/moai_adk/templates/.claude/agents/alfred/spec-builder.md +255 -0
  37. moai_adk-0.4.1/src/moai_adk/templates/.claude/agents/alfred/tag-agent.md +259 -0
  38. moai_adk-0.4.1/src/moai_adk/templates/.claude/agents/alfred/tdd-implementer.md +293 -0
  39. moai_adk-0.4.1/src/moai_adk/templates/.claude/agents/alfred/trust-checker.md +346 -0
  40. moai_adk-0.4.1/src/moai_adk/templates/.claude/commands/alfred/0-project.md +1024 -0
  41. moai_adk-0.4.1/src/moai_adk/templates/.claude/commands/alfred/1-plan.md +572 -0
  42. moai_adk-0.4.1/src/moai_adk/templates/.claude/commands/alfred/2-run.md +470 -0
  43. moai_adk-0.4.1/src/moai_adk/templates/.claude/commands/alfred/3-sync.md +564 -0
  44. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/templates/.claude/hooks/alfred/README.md +52 -52
  45. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/templates/.claude/hooks/alfred/alfred_hooks.py +44 -48
  46. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/templates/.claude/hooks/alfred/core/__init__.py +17 -17
  47. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/templates/.claude/hooks/alfred/core/checkpoint.py +59 -59
  48. moai_adk-0.4.1/src/moai_adk/templates/.claude/hooks/alfred/core/context.py +67 -0
  49. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/templates/.claude/hooks/alfred/core/project.py +52 -52
  50. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/templates/.claude/hooks/alfred/handlers/__init__.py +1 -1
  51. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/templates/.claude/hooks/alfred/handlers/notification.py +4 -4
  52. moai_adk-0.4.1/src/moai_adk/templates/.claude/hooks/alfred/handlers/session.py +92 -0
  53. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/templates/.claude/hooks/alfred/handlers/tool.py +16 -17
  54. moai_adk-0.4.1/src/moai_adk/templates/.claude/hooks/alfred/handlers/user.py +41 -0
  55. moai_adk-0.4.1/src/moai_adk/templates/.claude/output-styles/alfred/agentic-coding.md +636 -0
  56. moai_adk-0.4.1/src/moai_adk/templates/.claude/output-styles/alfred/moai-adk-learning.md +692 -0
  57. moai_adk-0.4.1/src/moai_adk/templates/.claude/output-styles/alfred/study-with-alfred.md +470 -0
  58. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-alfred-code-reviewer/SKILL.md +112 -0
  59. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-alfred-debugger-pro/SKILL.md +103 -0
  60. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/SKILL.md +103 -0
  61. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-alfred-git-workflow/SKILL.md +95 -0
  62. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-alfred-language-detection/SKILL.md +99 -0
  63. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-alfred-performance-optimizer/SKILL.md +105 -0
  64. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-alfred-refactoring-coach/SKILL.md +97 -0
  65. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/SKILL.md +97 -0
  66. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/SKILL.md +90 -0
  67. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-alfred-trust-validation/SKILL.md +99 -0
  68. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-alfred-tui-survey/SKILL.md +87 -0
  69. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-alfred-tui-survey/examples.md +62 -0
  70. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-claude-code/SKILL.md +94 -0
  71. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-claude-code/examples.md +513 -0
  72. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-claude-code/reference.md +433 -0
  73. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-claude-code/templates/agent-full.md +332 -0
  74. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-claude-code/templates/command-full.md +384 -0
  75. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-claude-code/templates/plugin-full.json +363 -0
  76. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-claude-code/templates/settings-full.json +595 -0
  77. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-claude-code/templates/skill-full.md +496 -0
  78. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +99 -0
  79. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-domain-cli-tool/SKILL.md +95 -0
  80. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-domain-data-science/SKILL.md +98 -0
  81. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +100 -0
  82. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-domain-devops/SKILL.md +100 -0
  83. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +99 -0
  84. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-domain-ml/SKILL.md +99 -0
  85. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-domain-mobile-app/SKILL.md +93 -0
  86. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-domain-security/SKILL.md +105 -0
  87. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-domain-web-api/SKILL.md +97 -0
  88. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-essentials-debug/SKILL.md +102 -0
  89. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-essentials-perf/SKILL.md +104 -0
  90. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-essentials-refactor/SKILL.md +96 -0
  91. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-essentials-review/SKILL.md +112 -0
  92. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-foundation-ears/SKILL.md +98 -0
  93. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-foundation-git/SKILL.md +90 -0
  94. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-foundation-langs/SKILL.md +94 -0
  95. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-foundation-specs/SKILL.md +93 -0
  96. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-foundation-tags/SKILL.md +86 -0
  97. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-foundation-trust/SKILL.md +86 -0
  98. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-c/SKILL.md +100 -0
  99. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-clojure/SKILL.md +100 -0
  100. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-cpp/SKILL.md +102 -0
  101. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-csharp/SKILL.md +100 -0
  102. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-dart/SKILL.md +98 -0
  103. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-elixir/SKILL.md +99 -0
  104. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-go/SKILL.md +100 -0
  105. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-haskell/SKILL.md +100 -0
  106. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-java/SKILL.md +98 -0
  107. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-javascript/SKILL.md +96 -0
  108. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-julia/SKILL.md +98 -0
  109. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-kotlin/SKILL.md +99 -0
  110. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-lua/SKILL.md +98 -0
  111. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-php/SKILL.md +98 -0
  112. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-python/SKILL.md +96 -0
  113. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-r/SKILL.md +99 -0
  114. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-ruby/SKILL.md +99 -0
  115. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-rust/SKILL.md +100 -0
  116. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-scala/SKILL.md +100 -0
  117. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-shell/SKILL.md +100 -0
  118. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-sql/SKILL.md +100 -0
  119. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-swift/SKILL.md +99 -0
  120. moai_adk-0.4.1/src/moai_adk/templates/.claude/skills/moai-lang-typescript/SKILL.md +96 -0
  121. moai_adk-0.4.1/src/moai_adk/templates/.github/PULL_REQUEST_TEMPLATE.md +69 -0
  122. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/templates/.github/workflows/moai-gitflow.yml +36 -35
  123. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/templates/.moai/config.json +9 -6
  124. moai_adk-0.4.1/src/moai_adk/templates/.moai/memory/development-guide.md +344 -0
  125. moai_adk-0.4.1/src/moai_adk/templates/.moai/memory/gitflow-protection-policy.md +220 -0
  126. moai_adk-0.4.1/src/moai_adk/templates/.moai/memory/spec-metadata.md +276 -0
  127. moai_adk-0.4.1/src/moai_adk/templates/.moai/project/product.md +161 -0
  128. moai_adk-0.4.1/src/moai_adk/templates/.moai/project/structure.md +156 -0
  129. moai_adk-0.4.1/src/moai_adk/templates/.moai/project/tech.md +227 -0
  130. moai_adk-0.4.1/src/moai_adk/templates/CLAUDE.md +508 -0
  131. moai_adk-0.4.1/src/moai_adk/templates/__init__.py +2 -0
  132. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/utils/__init__.py +1 -1
  133. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/utils/banner.py +7 -7
  134. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/utils/logger.py +1 -1
  135. moai_adk-0.3.13/PKG-INFO +0 -1586
  136. moai_adk-0.3.13/README.md +0 -1548
  137. moai_adk-0.3.13/src/moai_adk/cli/commands/update.py +0 -152
  138. moai_adk-0.3.13/src/moai_adk/core/__init__.py +0 -2
  139. moai_adk-0.3.13/src/moai_adk/templates/.claude/agents/alfred/cc-manager.md +0 -474
  140. moai_adk-0.3.13/src/moai_adk/templates/.claude/agents/alfred/debug-helper.md +0 -166
  141. moai_adk-0.3.13/src/moai_adk/templates/.claude/agents/alfred/doc-syncer.md +0 -175
  142. moai_adk-0.3.13/src/moai_adk/templates/.claude/agents/alfred/git-manager.md +0 -327
  143. moai_adk-0.3.13/src/moai_adk/templates/.claude/agents/alfred/implementation-planner.md +0 -311
  144. moai_adk-0.3.13/src/moai_adk/templates/.claude/agents/alfred/project-manager.md +0 -152
  145. moai_adk-0.3.13/src/moai_adk/templates/.claude/agents/alfred/quality-gate.md +0 -301
  146. moai_adk-0.3.13/src/moai_adk/templates/.claude/agents/alfred/spec-builder.md +0 -241
  147. moai_adk-0.3.13/src/moai_adk/templates/.claude/agents/alfred/tag-agent.md +0 -247
  148. moai_adk-0.3.13/src/moai_adk/templates/.claude/agents/alfred/tdd-implementer.md +0 -280
  149. moai_adk-0.3.13/src/moai_adk/templates/.claude/agents/alfred/trust-checker.md +0 -332
  150. moai_adk-0.3.13/src/moai_adk/templates/.claude/commands/alfred/0-project.md +0 -523
  151. moai_adk-0.3.13/src/moai_adk/templates/.claude/commands/alfred/1-spec.md +0 -532
  152. moai_adk-0.3.13/src/moai_adk/templates/.claude/commands/alfred/2-build.md +0 -432
  153. moai_adk-0.3.13/src/moai_adk/templates/.claude/commands/alfred/3-sync.md +0 -554
  154. moai_adk-0.3.13/src/moai_adk/templates/.claude/hooks/alfred/core/context.py +0 -67
  155. moai_adk-0.3.13/src/moai_adk/templates/.claude/hooks/alfred/handlers/session.py +0 -113
  156. moai_adk-0.3.13/src/moai_adk/templates/.claude/hooks/alfred/handlers/user.py +0 -41
  157. moai_adk-0.3.13/src/moai_adk/templates/.claude/output-styles/alfred/agentic-coding.md +0 -635
  158. moai_adk-0.3.13/src/moai_adk/templates/.claude/output-styles/alfred/moai-adk-learning.md +0 -691
  159. moai_adk-0.3.13/src/moai_adk/templates/.claude/output-styles/alfred/study-with-alfred.md +0 -469
  160. moai_adk-0.3.13/src/moai_adk/templates/.github/PULL_REQUEST_TEMPLATE.md +0 -68
  161. moai_adk-0.3.13/src/moai_adk/templates/.moai/hooks/pre-push.sample +0 -88
  162. moai_adk-0.3.13/src/moai_adk/templates/.moai/memory/development-guide.md +0 -345
  163. moai_adk-0.3.13/src/moai_adk/templates/.moai/memory/gitflow-protection-policy.md +0 -220
  164. moai_adk-0.3.13/src/moai_adk/templates/.moai/memory/spec-metadata.md +0 -277
  165. moai_adk-0.3.13/src/moai_adk/templates/.moai/project/product.md +0 -161
  166. moai_adk-0.3.13/src/moai_adk/templates/.moai/project/structure.md +0 -156
  167. moai_adk-0.3.13/src/moai_adk/templates/.moai/project/tech.md +0 -227
  168. moai_adk-0.3.13/src/moai_adk/templates/CLAUDE.md +0 -727
  169. moai_adk-0.3.13/src/moai_adk/templates/__init__.py +0 -2
  170. {moai_adk-0.3.13 → moai_adk-0.4.1}/.gitignore +0 -0
  171. {moai_adk-0.3.13 → moai_adk-0.4.1}/LICENSE +0 -0
  172. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/cli/__init__.py +0 -0
  173. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/cli/commands/backup.py +0 -0
  174. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/cli/main.py +0 -0
  175. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/cli/prompts/__init__.py +0 -0
  176. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/diagnostics/__init__.py +0 -0
  177. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/git/__init__.py +0 -0
  178. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/git/branch_manager.py +0 -0
  179. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/git/checkpoint.py +0 -0
  180. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/git/commit.py +0 -0
  181. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/git/event_detector.py +0 -0
  182. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/project/__init__.py +0 -0
  183. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/project/checker.py +0 -0
  184. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/project/detector.py +0 -0
  185. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/core/project/initializer.py +0 -0
  186. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/templates/.claude/settings.json +0 -0
  187. {moai_adk-0.3.13 → moai_adk-0.4.1}/src/moai_adk/templates/.gitignore +0 -0
@@ -0,0 +1,303 @@
1
+ Metadata-Version: 2.4
2
+ Name: moai-adk
3
+ Version: 0.4.1
4
+ Summary: MoAI Agentic Development Kit - SPEC-First TDD with Alfred SuperAgent
5
+ Project-URL: Homepage, https://github.com/modu-ai/moai-adk
6
+ Project-URL: Repository, https://github.com/modu-ai/moai-adk
7
+ Project-URL: Issues, https://github.com/modu-ai/moai-adk/issues
8
+ Project-URL: Changelog, https://github.com/modu-ai/moai-adk/releases
9
+ Author-email: MoAI Team <support@moduai.kr>
10
+ License: MIT
11
+ License-File: LICENSE
12
+ Keywords: agentic,ai,alfred,claude,development,spec-first,tdd,toolkit
13
+ Classifier: Development Status :: 4 - Beta
14
+ Classifier: Intended Audience :: Developers
15
+ Classifier: License :: OSI Approved :: MIT License
16
+ Classifier: Programming Language :: Python :: 3
17
+ Classifier: Programming Language :: Python :: 3.13
18
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
19
+ Classifier: Topic :: Software Development :: Quality Assurance
20
+ Classifier: Topic :: Software Development :: Testing
21
+ Requires-Python: >=3.13
22
+ Requires-Dist: click>=8.1.0
23
+ Requires-Dist: gitpython>=3.1.45
24
+ Requires-Dist: packaging>=21.0
25
+ Requires-Dist: pyfiglet>=1.0.2
26
+ Requires-Dist: questionary>=2.0.0
27
+ Requires-Dist: rich>=13.0.0
28
+ Provides-Extra: dev
29
+ Requires-Dist: mypy>=1.7.0; extra == 'dev'
30
+ Requires-Dist: pytest-cov>=7.0.0; extra == 'dev'
31
+ Requires-Dist: pytest-xdist>=3.8.0; extra == 'dev'
32
+ Requires-Dist: pytest>=8.4.2; extra == 'dev'
33
+ Requires-Dist: ruff>=0.1.0; extra == 'dev'
34
+ Requires-Dist: types-pyyaml>=6.0.0; extra == 'dev'
35
+ Provides-Extra: security
36
+ Requires-Dist: bandit>=1.8.0; extra == 'security'
37
+ Requires-Dist: pip-audit>=2.7.0; extra == 'security'
38
+ Description-Content-Type: text/markdown
39
+
40
+ # MoAI-ADK (Agentic Development Kit)
41
+
42
+ [![PyPI version](https://img.shields.io/pypi/v/moai-adk)](https://pypi.org/project/moai-adk/)
43
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
44
+ [![Python](https://img.shields.io/badge/Python-3.13+-blue)](https://www.python.org/)
45
+ [![Tests](https://github.com/modu-ai/moai-adk/actions/workflows/moai-gitflow.yml/badge.svg)](https://github.com/modu-ai/moai-adk/actions/workflows/moai-gitflow.yml)
46
+ [![codecov](https://codecov.io/gh/modu-ai/moai-adk/branch/develop/graph/badge.svg)](https://codecov.io/gh/modu-ai/moai-adk)
47
+ [![Coverage](https://img.shields.io/badge/coverage-87.66%25-brightgreen)](https://github.com/modu-ai/moai-adk)
48
+
49
+ > **MoAI-ADK는 AI와 함께 명세(SPEC) → 테스트(TDD) → 코드 → 문서를 자연스럽게 잇는 개발 워크플로우를 제공합니다.**
50
+
51
+ ---
52
+
53
+ ## 1. MoAI-ADK 한눈에 보기
54
+
55
+ | 질문 | 바로 보기 |
56
+ | --- | --- |
57
+ | 처음 접했는데 무엇인가요? | [MoAI-ADK란?](#moai-adk란) |
58
+ | 어떻게 시작하나요? | [5분 Quick Start](#5-분-quick-start) |
59
+ | 기본 흐름이 궁금해요 | [기본 워크플로우 (0 → 3)](#기본-워크플로우-0--3) |
60
+ | Plan / Run / Sync 명령은 무엇을 하나요? | [핵심 명령 요약](#핵심-명령-요약) |
61
+ | SPEC·TDD·TAG가 뭐죠? | [핵심 개념 쉽게 이해하기](#핵심-개념-쉽게-이해하기) |
62
+ | 에이전트/Skills가 궁금해요 | [Sub-agent & Skills 개요](#sub-agent--skills-개요) |
63
+ | 더 깊이 공부하고 싶어요 | [추가 자료](#추가-자료) |
64
+
65
+ ---
66
+
67
+ ## MoAI-ADK란?
68
+
69
+ MoAI-ADK(MoAI Agentic Development Kit)는 **AI가 개발 과정 전체를 도와주는 오픈소스 툴킷**입니다. “먼저 SPEC(요구사항 명세)을 만들고, 테스트(TDD)로 확인한 뒤, 문서와 코드가 항상 동기화된다”는 원칙을 Alfred SuperAgent가 대신 지켜 줍니다.
70
+
71
+ 입문자라도 다음 세 가지만 기억하면 됩니다.
72
+
73
+ 1. **무엇을 만들지(SPEC)** 먼저 말한다.
74
+ 2. **테스트 먼저 작성(TDD)** 후 코드를 채운다.
75
+ 3. **문서/README/CHANGELOG**까지 자동으로 맞춰 둔다.
76
+
77
+ 이 과정을 `/alfred` 명령 네 가지로 반복하면 전체 프로젝트가 일관되게 정리됩니다.
78
+
79
+ ---
80
+
81
+ ## 왜 필요한가요?
82
+
83
+ | 고민 | MoAI-ADK가 도와주는 방법 |
84
+ | --- | --- |
85
+ | “AI가 만든 코드를 믿기 어렵다” | 명세 → 테스트 → 구현 → 문서가 한 TAG 체인으로 연결됩니다. |
86
+ | “프로젝트 전체 맥락이 없어서 같은 질문을 반복한다” | Alfred가 핵심 문서와 히스토리를 기억하고 다시 안내합니다. |
87
+ | “프롬프트 작성이 어렵다” | `/alfred` 명령과 준비된 Skills가 표준화된 프롬프트를 대신 제공합니다. |
88
+ | “문서와 코드가 따로 놀아요” | `/alfred:3-sync`가 README/CHANGELOG/Living Doc을 자동으로 맞춥니다. |
89
+
90
+ ---
91
+
92
+ ## 5-분 Quick Start
93
+
94
+ ```bash
95
+ # 1. (선택) uv 설치 — pip보다 훨씬 빠른 Python 패키지 관리자
96
+ curl -LsSf https://astral.sh/uv/install.sh | sh
97
+
98
+ # 2. 가상환경 생성 (권장)
99
+ uv venv .venv
100
+ source .venv/bin/activate # Windows: .venv\Scripts\activate
101
+
102
+ # 3. MoAI-ADK 설치 (tool 모드: 전역-격리 실행)
103
+ uv tool install moai-adk
104
+
105
+ # 4. 새 프로젝트 시작
106
+ moai-adk init my-project
107
+ cd my-project
108
+
109
+ # 5. Claude Code(또는 CLI)에서 Alfred 호출
110
+ claude # Claude Code 실행 후 아래 명령 사용
111
+ /alfred:0-project "프로젝트 이름"
112
+ ```
113
+
114
+ > 🔍 확인용 명령: `moai-adk doctor` — Python/uv 버전, `.moai/` 구조, 에이전트/Skills 구성이 모두 준비됐는지 점검합니다.
115
+
116
+ ---
117
+
118
+ ## 기본 워크플로우 (0 → 3)
119
+
120
+ Alfred는 네 개의 명령으로 프로젝트를 반복 개발합니다.
121
+
122
+ ```mermaid
123
+ %%{init: {'theme':'neutral'}}%%
124
+ graph TD
125
+ Start([사용자 요청]) --> Init[0. Init<br/>/alfred:0-project]
126
+ Init --> Plan[1. Plan & SPEC<br/>/alfred:1-plan]
127
+ Plan --> Run[2. Run & TDD<br/>/alfred:2-run]
128
+ Run --> Sync[3. Sync & Docs<br/>/alfred:3-sync]
129
+ Sync --> Plan
130
+ Sync -.-> End([릴리스])
131
+ ```
132
+
133
+ ### 0. INIT — 프로젝트 준비
134
+ - 프로젝트 소개, 타깃, 언어, 모드(locale) 질문
135
+ - `.moai/config.json`, `.moai/project/*` 문서 5종 자동 생성
136
+ - 언어 감지 및 추천 Skill Pack 배치 (Foundation + Essentials + Domain/Language)
137
+ - 템플릿 정리, 초깃 Git/백업 체크
138
+
139
+ ### 1. PLAN — 무엇을 만들지 합의
140
+ - EARS 템플릿으로 SPEC 작성 (`@SPEC:ID` 포함)
141
+ - Plan Board, 구현 아이디어, 위험 요소 정리
142
+ - Team 모드라면 브랜치/초기 Draft PR 자동 생성
143
+
144
+ ### 2. RUN — 테스트 주도 개발(TDD)
145
+ - Phase 1 `implementation-planner`: 라이브러리, 폴더, TAG 설계
146
+ - Phase 2 `tdd-implementer`: RED(실패 테스트) → GREEN(최소 구현) → REFACTOR(정리)
147
+ - quality-gate가 TRUST 5 원칙, 커버리지 변화를 검증
148
+
149
+ ### 3. SYNC — 문서 & PR 정리
150
+ - Living Document, README, CHANGELOG 등 문서 동기화
151
+ - TAG 체인 검증 및 orphan TAG 복구
152
+ - Sync Report 생성, Draft → Ready for Review 전환, `--auto-merge` 옵션 지원
153
+
154
+ ---
155
+
156
+ ## 핵심 명령 요약
157
+
158
+ | 명령 | 무엇을 하나요? | 대표 산출물 |
159
+ | --- | --- | --- |
160
+ | `/alfred:0-project` | 프로젝트 설명 수집, 설정·문서 생성, Skill 추천 | `.moai/config.json`, `.moai/project/*`, 초기 보고서 |
161
+ | `/alfred:1-plan <설명>` | 요구사항 분석, SPEC 초안, Plan Board 작성 | `.moai/specs/SPEC-*/spec.md`, plan/acceptance 문서, feature 브랜치 |
162
+ | `/alfred:2-run <SPEC-ID>` | TDD 실행, 테스트/구현/리팩토링, 품질 검증 | `tests/`, `src/` 구현, 품질 리포트, TAG 연결 |
163
+ | `/alfred:3-sync` | 문서/README/CHANGELOG 동기화, TAG/PR 상태 정리 | `docs/`, `.moai/reports/sync-report.md`, Ready PR |
164
+
165
+ > ❗ 모든 명령은 **Phase 0(선택) → Phase 1 → Phase 2 → Phase 3** 순환 구조를 유지합니다. 실행 중 상태와 다음 단계 제안은 Alfred가 자동으로 보고합니다.
166
+
167
+ ---
168
+
169
+ ## 핵심 개념 쉽게 이해하기
170
+
171
+ ### SPEC-First (요구사항 먼저)
172
+ - **왜?** 집을 짓기 전에 설계도가 필요하듯, 구현 전에 무엇을 만들지 정리합니다.
173
+ - **어떻게?** `/alfred:1-plan`이 EARS 형식으로 “WHEN… THEN…“ 구조를 갖춘 SPEC을 만들어 줍니다.
174
+ - **결과**: `@SPEC:ID` 태그가 있는 문서 + Plan Board + Acceptance 기준.
175
+
176
+ ### TDD (Test-Driven Development)
177
+ - **RED**: 실패하는 테스트를 먼저 작성합니다.
178
+ - **GREEN**: 테스트가 통과하도록 가장 단순한 코드를 작성합니다.
179
+ - **REFACTOR**: 코드 구조를 다듬고 중복을 제거합니다.
180
+ - `/alfred:2-run`이 이 과정을 자동으로 진행하며 RED/GREEN/REFACTOR 커밋 로그를 남깁니다.
181
+
182
+ ### TAG 시스템
183
+ - `@SPEC:ID` → `@TEST:ID` → `@CODE:ID` → `@DOC:ID` 순서로 연결됩니다.
184
+ - 코드 어디에서든 TAG만 검색하면 관련 SPEC·테스트·문서를 한 번에 추적할 수 있습니다.
185
+ - `/alfred:3-sync`가 TAG 인벤토리를 점검하고 orphan TAG를 알려줍니다.
186
+
187
+ ### TRUST 5 원칙
188
+ 1. **Test First** — 테스트는 항상 먼저 작성
189
+ 2. **Readable** — 짧은 함수, 일관된 스타일 유지
190
+ 3. **Unified** — 아키텍처와 타입/계약을 일관되게 유지
191
+ 4. **Secured** — 입력 검증, 비밀정보 보호, 정적 분석 수행
192
+ 5. **Trackable** — TAG, Git 히스토리, 문서가 함께 움직임
193
+
194
+ > 더 자세한 규칙은 `.moai/memory/development-guide.md`에서 확인하세요.
195
+
196
+ ---
197
+
198
+ ## 첫 번째 실습: Todo API 예제
199
+
200
+ 1. **Plan**
201
+ ```bash
202
+ /alfred:1-plan "할 일 추가, 조회, 수정, 삭제 API"
203
+ ```
204
+ Alfred가 SPEC(`.moai/specs/SPEC-TODO-001/spec.md`)과 plan/acceptance 문서를 만들어 줍니다.
205
+
206
+ 2. **Run**
207
+ ```bash
208
+ /alfred:2-run TODO-001
209
+ ```
210
+ 테스트(`tests/test_todo_api.py`), 구현(`src/todo/`), 리포트가 자동 생성됩니다.
211
+
212
+ 3. **Sync**
213
+ ```bash
214
+ /alfred:3-sync
215
+ ```
216
+ `docs/api/todo.md`, TAG 체인, Sync Report가 업데이트됩니다.
217
+
218
+ 4. **검증 명령**
219
+ ```bash
220
+ rg '@(SPEC|TEST|CODE|DOC):TODO-001' -n
221
+ pytest tests/test_todo_api.py -v
222
+ cat docs/api/todo.md
223
+ ```
224
+
225
+ > 15분이면 SPEC → TDD → 문서가 모두 연결된 Todo API가 완성됩니다.
226
+
227
+ ---
228
+
229
+ ## Sub-agent & Skills 개요
230
+
231
+ Alfred는 **19명의 팀**(SuperAgent 1 + Core Sub-agent 10 + 0-project Sub-agent 6 + Built-in 2)과 **44개의 Claude Skills**를 조합해 작업합니다.
232
+
233
+ ### Core Sub-agents (Plan → Run → Sync)
234
+
235
+ | Sub-agent | 모델 | 역할 |
236
+ | --- | --- | --- |
237
+ | project-manager 📋 | Sonnet | 프로젝트 초기화, 메타데이터 인터뷰 |
238
+ | spec-builder 🏗️ | Sonnet | Plan 보드, EARS SPEC 작성 |
239
+ | code-builder 💎 | Sonnet | `implementation-planner` + `tdd-implementer`로 TDD 전체 수행 |
240
+ | doc-syncer 📖 | Haiku | Living Doc, README, CHANGELOG 동기화 |
241
+ | tag-agent 🏷️ | Haiku | TAG 인벤토리, orphan 탐지 |
242
+ | git-manager 🚀 | Haiku | GitFlow, Draft/Ready, Auto Merge |
243
+ | debug-helper 🔍 | Sonnet | 실패 분석, fix-forward 전략 |
244
+ | trust-checker ✅ | Haiku | TRUST 5 품질 게이트 |
245
+ | quality-gate 🛡️ | Haiku | 커버리지 변화 및 릴리스 차단 조건 검토 |
246
+ | cc-manager 🛠️ | Sonnet | Claude Code 세션 최적화, Skill 배포 |
247
+
248
+ ### Skills (Progressive Disclosure)
249
+ - **Foundation (6)**: TRUST, TAG, SPEC, EARS, Git, Language 감지
250
+ - **Essentials (4)**: Debug, Refactor, Review, Performance
251
+ - **Domain (10)**: Backend, Web API, Security, Data, Mobile 등
252
+ - **Language (23)**: Python, TypeScript, Go, Rust, Java, Swift 등 주요 언어 패키지
253
+ - **Claude Code Ops (1)**: 세션 설정, Output Style 관리
254
+
255
+ > Skills는 `.claude/skills/` 디렉터리에 저장된 500단어 이하 가이드입니다. 필요할 때만 로드되어 컨텍스트 비용을 줄입니다.
256
+
257
+ ---
258
+
259
+ ## AI 모델 선택 가이드
260
+
261
+ | 상황 | 기본 모델 | 이유 |
262
+ | --- | --- | --- |
263
+ | 명세/설계/리팩토링/문제 해결 | **Claude 4.5 Sonnet** | 깊은 추론과 구조화된 작성에 강함 |
264
+ | 문서 동기화, TAG 검사, Git 자동화 | **Claude 4.5 Haiku** | 빠른 반복 작업, 문자열 처리에 강함 |
265
+
266
+ - 패턴화된 작업은 Haiku로 시작하고, 복잡한 판단이 필요하면 Sonnet으로 전환하세요.
267
+ - 수동으로 모델을 변경했다면 “왜 전환했는지” 로그에 남겨두면 협업에 도움이 됩니다.
268
+
269
+ ---
270
+
271
+ ## 자주 묻는 질문 (FAQ)
272
+
273
+ - **Q. 기존 프로젝트에 설치해도 되나요?**
274
+ - A. 가능합니다. `moai-adk init .` 을 실행하면 기존 코드를 건드리지 않고 `.moai/` 구조만 추가합니다.
275
+ - **Q. 테스트 실행은 어떻게 하나요?**
276
+ - A. `/alfred:2-run`이 먼저 실행하고, 필요하면 `pytest`, `pnpm test` 등 언어별 명령을 다시 실행하세요.
277
+ - **Q. 문서가 항상 최신인지 확인하는 방법은?**
278
+ - A. `/alfred:3-sync`가 Sync Report를 생성합니다. Pull Request에서 보고서를 확인하세요.
279
+ - **Q. 수동으로 진행할 수도 있나요?**
280
+ - A. 가능하지만, SPEC → TEST → CODE → DOC 순서를 지키고 TAG를 꼭 남겨야 합니다.
281
+
282
+ ---
283
+
284
+ ## 추가 자료
285
+
286
+ | 목적 | 리소스 |
287
+ | --- | --- |
288
+ | Skills 세부 구조 | `docs/skills/overview.md` 및 Tier별 문서 |
289
+ | Sub-agent 상세 | `docs/agents/overview.md` |
290
+ | 워크플로우 가이드 | `docs/guides/workflow/` (Plan/Run/Sync) |
291
+ | 개발 가드라인 | `.moai/memory/development-guide.md`, `.moai/memory/spec-metadata.md` |
292
+ | 업데이트 계획 | `CHANGELOG.md`, `UPDATE-PLAN-0.4.0.md` |
293
+
294
+ ---
295
+
296
+ ## 커뮤니티 & 지원
297
+
298
+ - GitHub Repo: <https://github.com/modu-ai/moai-adk>
299
+ - Issues & Discussions: 버그, 기능 요청, 아이디어 공유 환영합니다.
300
+ - PyPI: <https://pypi.org/project/moai-adk/>
301
+ - 문의: 프로젝트 내 `CONTRIBUTING.md` 가이드를 참고하세요.
302
+
303
+ > 🙌 “SPEC 없이는 CODE도 없다” — Alfred와 함께 일관된 AI 개발 문화를 경험해 보세요.
@@ -0,0 +1,264 @@
1
+ # MoAI-ADK (Agentic Development Kit)
2
+
3
+ [![PyPI version](https://img.shields.io/pypi/v/moai-adk)](https://pypi.org/project/moai-adk/)
4
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
5
+ [![Python](https://img.shields.io/badge/Python-3.13+-blue)](https://www.python.org/)
6
+ [![Tests](https://github.com/modu-ai/moai-adk/actions/workflows/moai-gitflow.yml/badge.svg)](https://github.com/modu-ai/moai-adk/actions/workflows/moai-gitflow.yml)
7
+ [![codecov](https://codecov.io/gh/modu-ai/moai-adk/branch/develop/graph/badge.svg)](https://codecov.io/gh/modu-ai/moai-adk)
8
+ [![Coverage](https://img.shields.io/badge/coverage-87.66%25-brightgreen)](https://github.com/modu-ai/moai-adk)
9
+
10
+ > **MoAI-ADK는 AI와 함께 명세(SPEC) → 테스트(TDD) → 코드 → 문서를 자연스럽게 잇는 개발 워크플로우를 제공합니다.**
11
+
12
+ ---
13
+
14
+ ## 1. MoAI-ADK 한눈에 보기
15
+
16
+ | 질문 | 바로 보기 |
17
+ | --- | --- |
18
+ | 처음 접했는데 무엇인가요? | [MoAI-ADK란?](#moai-adk란) |
19
+ | 어떻게 시작하나요? | [5분 Quick Start](#5-분-quick-start) |
20
+ | 기본 흐름이 궁금해요 | [기본 워크플로우 (0 → 3)](#기본-워크플로우-0--3) |
21
+ | Plan / Run / Sync 명령은 무엇을 하나요? | [핵심 명령 요약](#핵심-명령-요약) |
22
+ | SPEC·TDD·TAG가 뭐죠? | [핵심 개념 쉽게 이해하기](#핵심-개념-쉽게-이해하기) |
23
+ | 에이전트/Skills가 궁금해요 | [Sub-agent & Skills 개요](#sub-agent--skills-개요) |
24
+ | 더 깊이 공부하고 싶어요 | [추가 자료](#추가-자료) |
25
+
26
+ ---
27
+
28
+ ## MoAI-ADK란?
29
+
30
+ MoAI-ADK(MoAI Agentic Development Kit)는 **AI가 개발 과정 전체를 도와주는 오픈소스 툴킷**입니다. “먼저 SPEC(요구사항 명세)을 만들고, 테스트(TDD)로 확인한 뒤, 문서와 코드가 항상 동기화된다”는 원칙을 Alfred SuperAgent가 대신 지켜 줍니다.
31
+
32
+ 입문자라도 다음 세 가지만 기억하면 됩니다.
33
+
34
+ 1. **무엇을 만들지(SPEC)** 먼저 말한다.
35
+ 2. **테스트 먼저 작성(TDD)** 후 코드를 채운다.
36
+ 3. **문서/README/CHANGELOG**까지 자동으로 맞춰 둔다.
37
+
38
+ 이 과정을 `/alfred` 명령 네 가지로 반복하면 전체 프로젝트가 일관되게 정리됩니다.
39
+
40
+ ---
41
+
42
+ ## 왜 필요한가요?
43
+
44
+ | 고민 | MoAI-ADK가 도와주는 방법 |
45
+ | --- | --- |
46
+ | “AI가 만든 코드를 믿기 어렵다” | 명세 → 테스트 → 구현 → 문서가 한 TAG 체인으로 연결됩니다. |
47
+ | “프로젝트 전체 맥락이 없어서 같은 질문을 반복한다” | Alfred가 핵심 문서와 히스토리를 기억하고 다시 안내합니다. |
48
+ | “프롬프트 작성이 어렵다” | `/alfred` 명령과 준비된 Skills가 표준화된 프롬프트를 대신 제공합니다. |
49
+ | “문서와 코드가 따로 놀아요” | `/alfred:3-sync`가 README/CHANGELOG/Living Doc을 자동으로 맞춥니다. |
50
+
51
+ ---
52
+
53
+ ## 5-분 Quick Start
54
+
55
+ ```bash
56
+ # 1. (선택) uv 설치 — pip보다 훨씬 빠른 Python 패키지 관리자
57
+ curl -LsSf https://astral.sh/uv/install.sh | sh
58
+
59
+ # 2. 가상환경 생성 (권장)
60
+ uv venv .venv
61
+ source .venv/bin/activate # Windows: .venv\Scripts\activate
62
+
63
+ # 3. MoAI-ADK 설치 (tool 모드: 전역-격리 실행)
64
+ uv tool install moai-adk
65
+
66
+ # 4. 새 프로젝트 시작
67
+ moai-adk init my-project
68
+ cd my-project
69
+
70
+ # 5. Claude Code(또는 CLI)에서 Alfred 호출
71
+ claude # Claude Code 실행 후 아래 명령 사용
72
+ /alfred:0-project "프로젝트 이름"
73
+ ```
74
+
75
+ > 🔍 확인용 명령: `moai-adk doctor` — Python/uv 버전, `.moai/` 구조, 에이전트/Skills 구성이 모두 준비됐는지 점검합니다.
76
+
77
+ ---
78
+
79
+ ## 기본 워크플로우 (0 → 3)
80
+
81
+ Alfred는 네 개의 명령으로 프로젝트를 반복 개발합니다.
82
+
83
+ ```mermaid
84
+ %%{init: {'theme':'neutral'}}%%
85
+ graph TD
86
+ Start([사용자 요청]) --> Init[0. Init<br/>/alfred:0-project]
87
+ Init --> Plan[1. Plan & SPEC<br/>/alfred:1-plan]
88
+ Plan --> Run[2. Run & TDD<br/>/alfred:2-run]
89
+ Run --> Sync[3. Sync & Docs<br/>/alfred:3-sync]
90
+ Sync --> Plan
91
+ Sync -.-> End([릴리스])
92
+ ```
93
+
94
+ ### 0. INIT — 프로젝트 준비
95
+ - 프로젝트 소개, 타깃, 언어, 모드(locale) 질문
96
+ - `.moai/config.json`, `.moai/project/*` 문서 5종 자동 생성
97
+ - 언어 감지 및 추천 Skill Pack 배치 (Foundation + Essentials + Domain/Language)
98
+ - 템플릿 정리, 초깃 Git/백업 체크
99
+
100
+ ### 1. PLAN — 무엇을 만들지 합의
101
+ - EARS 템플릿으로 SPEC 작성 (`@SPEC:ID` 포함)
102
+ - Plan Board, 구현 아이디어, 위험 요소 정리
103
+ - Team 모드라면 브랜치/초기 Draft PR 자동 생성
104
+
105
+ ### 2. RUN — 테스트 주도 개발(TDD)
106
+ - Phase 1 `implementation-planner`: 라이브러리, 폴더, TAG 설계
107
+ - Phase 2 `tdd-implementer`: RED(실패 테스트) → GREEN(최소 구현) → REFACTOR(정리)
108
+ - quality-gate가 TRUST 5 원칙, 커버리지 변화를 검증
109
+
110
+ ### 3. SYNC — 문서 & PR 정리
111
+ - Living Document, README, CHANGELOG 등 문서 동기화
112
+ - TAG 체인 검증 및 orphan TAG 복구
113
+ - Sync Report 생성, Draft → Ready for Review 전환, `--auto-merge` 옵션 지원
114
+
115
+ ---
116
+
117
+ ## 핵심 명령 요약
118
+
119
+ | 명령 | 무엇을 하나요? | 대표 산출물 |
120
+ | --- | --- | --- |
121
+ | `/alfred:0-project` | 프로젝트 설명 수집, 설정·문서 생성, Skill 추천 | `.moai/config.json`, `.moai/project/*`, 초기 보고서 |
122
+ | `/alfred:1-plan <설명>` | 요구사항 분석, SPEC 초안, Plan Board 작성 | `.moai/specs/SPEC-*/spec.md`, plan/acceptance 문서, feature 브랜치 |
123
+ | `/alfred:2-run <SPEC-ID>` | TDD 실행, 테스트/구현/리팩토링, 품질 검증 | `tests/`, `src/` 구현, 품질 리포트, TAG 연결 |
124
+ | `/alfred:3-sync` | 문서/README/CHANGELOG 동기화, TAG/PR 상태 정리 | `docs/`, `.moai/reports/sync-report.md`, Ready PR |
125
+
126
+ > ❗ 모든 명령은 **Phase 0(선택) → Phase 1 → Phase 2 → Phase 3** 순환 구조를 유지합니다. 실행 중 상태와 다음 단계 제안은 Alfred가 자동으로 보고합니다.
127
+
128
+ ---
129
+
130
+ ## 핵심 개념 쉽게 이해하기
131
+
132
+ ### SPEC-First (요구사항 먼저)
133
+ - **왜?** 집을 짓기 전에 설계도가 필요하듯, 구현 전에 무엇을 만들지 정리합니다.
134
+ - **어떻게?** `/alfred:1-plan`이 EARS 형식으로 “WHEN… THEN…“ 구조를 갖춘 SPEC을 만들어 줍니다.
135
+ - **결과**: `@SPEC:ID` 태그가 있는 문서 + Plan Board + Acceptance 기준.
136
+
137
+ ### TDD (Test-Driven Development)
138
+ - **RED**: 실패하는 테스트를 먼저 작성합니다.
139
+ - **GREEN**: 테스트가 통과하도록 가장 단순한 코드를 작성합니다.
140
+ - **REFACTOR**: 코드 구조를 다듬고 중복을 제거합니다.
141
+ - `/alfred:2-run`이 이 과정을 자동으로 진행하며 RED/GREEN/REFACTOR 커밋 로그를 남깁니다.
142
+
143
+ ### TAG 시스템
144
+ - `@SPEC:ID` → `@TEST:ID` → `@CODE:ID` → `@DOC:ID` 순서로 연결됩니다.
145
+ - 코드 어디에서든 TAG만 검색하면 관련 SPEC·테스트·문서를 한 번에 추적할 수 있습니다.
146
+ - `/alfred:3-sync`가 TAG 인벤토리를 점검하고 orphan TAG를 알려줍니다.
147
+
148
+ ### TRUST 5 원칙
149
+ 1. **Test First** — 테스트는 항상 먼저 작성
150
+ 2. **Readable** — 짧은 함수, 일관된 스타일 유지
151
+ 3. **Unified** — 아키텍처와 타입/계약을 일관되게 유지
152
+ 4. **Secured** — 입력 검증, 비밀정보 보호, 정적 분석 수행
153
+ 5. **Trackable** — TAG, Git 히스토리, 문서가 함께 움직임
154
+
155
+ > 더 자세한 규칙은 `.moai/memory/development-guide.md`에서 확인하세요.
156
+
157
+ ---
158
+
159
+ ## 첫 번째 실습: Todo API 예제
160
+
161
+ 1. **Plan**
162
+ ```bash
163
+ /alfred:1-plan "할 일 추가, 조회, 수정, 삭제 API"
164
+ ```
165
+ Alfred가 SPEC(`.moai/specs/SPEC-TODO-001/spec.md`)과 plan/acceptance 문서를 만들어 줍니다.
166
+
167
+ 2. **Run**
168
+ ```bash
169
+ /alfred:2-run TODO-001
170
+ ```
171
+ 테스트(`tests/test_todo_api.py`), 구현(`src/todo/`), 리포트가 자동 생성됩니다.
172
+
173
+ 3. **Sync**
174
+ ```bash
175
+ /alfred:3-sync
176
+ ```
177
+ `docs/api/todo.md`, TAG 체인, Sync Report가 업데이트됩니다.
178
+
179
+ 4. **검증 명령**
180
+ ```bash
181
+ rg '@(SPEC|TEST|CODE|DOC):TODO-001' -n
182
+ pytest tests/test_todo_api.py -v
183
+ cat docs/api/todo.md
184
+ ```
185
+
186
+ > 15분이면 SPEC → TDD → 문서가 모두 연결된 Todo API가 완성됩니다.
187
+
188
+ ---
189
+
190
+ ## Sub-agent & Skills 개요
191
+
192
+ Alfred는 **19명의 팀**(SuperAgent 1 + Core Sub-agent 10 + 0-project Sub-agent 6 + Built-in 2)과 **44개의 Claude Skills**를 조합해 작업합니다.
193
+
194
+ ### Core Sub-agents (Plan → Run → Sync)
195
+
196
+ | Sub-agent | 모델 | 역할 |
197
+ | --- | --- | --- |
198
+ | project-manager 📋 | Sonnet | 프로젝트 초기화, 메타데이터 인터뷰 |
199
+ | spec-builder 🏗️ | Sonnet | Plan 보드, EARS SPEC 작성 |
200
+ | code-builder 💎 | Sonnet | `implementation-planner` + `tdd-implementer`로 TDD 전체 수행 |
201
+ | doc-syncer 📖 | Haiku | Living Doc, README, CHANGELOG 동기화 |
202
+ | tag-agent 🏷️ | Haiku | TAG 인벤토리, orphan 탐지 |
203
+ | git-manager 🚀 | Haiku | GitFlow, Draft/Ready, Auto Merge |
204
+ | debug-helper 🔍 | Sonnet | 실패 분석, fix-forward 전략 |
205
+ | trust-checker ✅ | Haiku | TRUST 5 품질 게이트 |
206
+ | quality-gate 🛡️ | Haiku | 커버리지 변화 및 릴리스 차단 조건 검토 |
207
+ | cc-manager 🛠️ | Sonnet | Claude Code 세션 최적화, Skill 배포 |
208
+
209
+ ### Skills (Progressive Disclosure)
210
+ - **Foundation (6)**: TRUST, TAG, SPEC, EARS, Git, Language 감지
211
+ - **Essentials (4)**: Debug, Refactor, Review, Performance
212
+ - **Domain (10)**: Backend, Web API, Security, Data, Mobile 등
213
+ - **Language (23)**: Python, TypeScript, Go, Rust, Java, Swift 등 주요 언어 패키지
214
+ - **Claude Code Ops (1)**: 세션 설정, Output Style 관리
215
+
216
+ > Skills는 `.claude/skills/` 디렉터리에 저장된 500단어 이하 가이드입니다. 필요할 때만 로드되어 컨텍스트 비용을 줄입니다.
217
+
218
+ ---
219
+
220
+ ## AI 모델 선택 가이드
221
+
222
+ | 상황 | 기본 모델 | 이유 |
223
+ | --- | --- | --- |
224
+ | 명세/설계/리팩토링/문제 해결 | **Claude 4.5 Sonnet** | 깊은 추론과 구조화된 작성에 강함 |
225
+ | 문서 동기화, TAG 검사, Git 자동화 | **Claude 4.5 Haiku** | 빠른 반복 작업, 문자열 처리에 강함 |
226
+
227
+ - 패턴화된 작업은 Haiku로 시작하고, 복잡한 판단이 필요하면 Sonnet으로 전환하세요.
228
+ - 수동으로 모델을 변경했다면 “왜 전환했는지” 로그에 남겨두면 협업에 도움이 됩니다.
229
+
230
+ ---
231
+
232
+ ## 자주 묻는 질문 (FAQ)
233
+
234
+ - **Q. 기존 프로젝트에 설치해도 되나요?**
235
+ - A. 가능합니다. `moai-adk init .` 을 실행하면 기존 코드를 건드리지 않고 `.moai/` 구조만 추가합니다.
236
+ - **Q. 테스트 실행은 어떻게 하나요?**
237
+ - A. `/alfred:2-run`이 먼저 실행하고, 필요하면 `pytest`, `pnpm test` 등 언어별 명령을 다시 실행하세요.
238
+ - **Q. 문서가 항상 최신인지 확인하는 방법은?**
239
+ - A. `/alfred:3-sync`가 Sync Report를 생성합니다. Pull Request에서 보고서를 확인하세요.
240
+ - **Q. 수동으로 진행할 수도 있나요?**
241
+ - A. 가능하지만, SPEC → TEST → CODE → DOC 순서를 지키고 TAG를 꼭 남겨야 합니다.
242
+
243
+ ---
244
+
245
+ ## 추가 자료
246
+
247
+ | 목적 | 리소스 |
248
+ | --- | --- |
249
+ | Skills 세부 구조 | `docs/skills/overview.md` 및 Tier별 문서 |
250
+ | Sub-agent 상세 | `docs/agents/overview.md` |
251
+ | 워크플로우 가이드 | `docs/guides/workflow/` (Plan/Run/Sync) |
252
+ | 개발 가드라인 | `.moai/memory/development-guide.md`, `.moai/memory/spec-metadata.md` |
253
+ | 업데이트 계획 | `CHANGELOG.md`, `UPDATE-PLAN-0.4.0.md` |
254
+
255
+ ---
256
+
257
+ ## 커뮤니티 & 지원
258
+
259
+ - GitHub Repo: <https://github.com/modu-ai/moai-adk>
260
+ - Issues & Discussions: 버그, 기능 요청, 아이디어 공유 환영합니다.
261
+ - PyPI: <https://pypi.org/project/moai-adk/>
262
+ - 문의: 프로젝트 내 `CONTRIBUTING.md` 가이드를 참고하세요.
263
+
264
+ > 🙌 “SPEC 없이는 CODE도 없다” — Alfred와 함께 일관된 AI 개발 문화를 경험해 보세요.
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "moai-adk"
3
- version = "0.3.13"
3
+ version = "0.4.1"
4
4
  description = "MoAI Agentic Development Kit - SPEC-First TDD with Alfred SuperAgent"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.13"
@@ -34,7 +34,8 @@ dev = [
34
34
  "pytest-cov>=7.0.0",
35
35
  "pytest-xdist>=3.8.0",
36
36
  "ruff>=0.1.0",
37
- "mypy>=1.7.0"
37
+ "mypy>=1.7.0",
38
+ "types-PyYAML>=6.0.0"
38
39
  ]
39
40
  security = [
40
41
  "pip-audit>=2.7.0",
@@ -4,5 +4,5 @@
4
4
  SPEC-First TDD Framework with Alfred SuperAgent
5
5
  """
6
6
 
7
- __version__ = "0.3.13"
7
+ __version__ = "0.4.0"
8
8
  __all__ = ["__version__"]
@@ -1,4 +1,4 @@
1
- # @CODE:CLI-001 | SPEC: SPEC-CLI-001.md | TEST: tests/unit/test_cli_commands.py
1
+ # @CODE:CLI-001 | SPEC: SPEC-CLI-001/spec.md | TEST: tests/unit/test_cli_commands.py
2
2
  """MoAI-ADK CLI Entry Point
3
3
 
4
4
  Implements the CLI entry point:
@@ -1,4 +1,4 @@
1
- # @CODE:CLI-001 | SPEC: SPEC-CLI-001.md | TEST: tests/unit/test_cli_commands.py
1
+ # @CODE:CLI-001 | SPEC: SPEC-CLI-001/spec.md | TEST: tests/unit/test_cli_commands.py
2
2
  """CLI command module
3
3
 
4
4
  Core commands:
@@ -1,5 +1,5 @@
1
- # @CODE:CLI-001 | SPEC: SPEC-CLI-001.md | TEST: tests/unit/test_doctor.py
2
- # @CODE:CLAUDE-COMMANDS-001:CLI | SPEC: SPEC-CLAUDE-COMMANDS-001.md | TEST: tests/unit/test_slash_commands.py
1
+ # @CODE:CLI-001 | SPEC: SPEC-CLI-001/spec.md | TEST: tests/unit/test_doctor.py
2
+ # @CODE:CLAUDE-COMMANDS-001:CLI | SPEC: SPEC-CLAUDE-COMMANDS-001/spec.md | TEST: tests/unit/test_slash_commands.py
3
3
  """MoAI-ADK doctor command
4
4
 
5
5
  System diagnostics command:
@@ -66,9 +66,9 @@ def create_progress_callback(progress: Progress, task_ids: Sequence[TaskID]):
66
66
  )
67
67
  @click.option(
68
68
  "--locale",
69
- type=click.Choice(["ko", "en", "ja", "zh"]),
70
- default="ko",
71
- help="Preferred language",
69
+ type=click.Choice(["ko", "en"]),
70
+ default=None,
71
+ help="Preferred language (default: en)",
72
72
  )
73
73
  @click.option(
74
74
  "--language",
@@ -95,13 +95,13 @@ def init(
95
95
  path: Project directory path (default: current directory)
96
96
  non_interactive: Skip prompts and use defaults
97
97
  mode: Project mode (personal/team)
98
- locale: Preferred language (ko/en/ja/zh)
98
+ locale: Preferred language (ko/en). When omitted, defaults to en.
99
99
  language: Programming language
100
100
  force: Force reinitialize without confirmation
101
101
  """
102
102
  try:
103
103
  # 1. Print banner
104
- print_banner()
104
+ print_banner(__version__)
105
105
 
106
106
  # 2. Check current directory mode
107
107
  is_current_dir = path == "."
@@ -114,6 +114,7 @@ def init(
114
114
  f"\n[cyan]🚀 Initializing project at {project_path}...[/cyan]\n"
115
115
  )
116
116
  project_name = project_path.name if is_current_dir else path
117
+ locale = locale or "en"
117
118
  else:
118
119
  # Interactive Mode
119
120
  print_welcome_message()
@@ -123,6 +124,7 @@ def init(
123
124
  project_name=None if is_current_dir else path,
124
125
  is_current_dir=is_current_dir,
125
126
  project_path=project_path,
127
+ initial_locale=locale,
126
128
  )
127
129
 
128
130
  # Override with prompt answers
@@ -133,6 +135,9 @@ def init(
133
135
 
134
136
  console.print("\n[cyan]🚀 Starting installation...[/cyan]\n")
135
137
 
138
+ if locale is None:
139
+ locale = answers["locale"]
140
+
136
141
  # 4. Check for reinitialization (SPEC-INIT-003 v0.3.0) - DEFAULT TO FORCE MODE
137
142
  initializer = ProjectInitializer(project_path)
138
143
 
@@ -1,4 +1,4 @@
1
- # @CODE:CLI-001 | SPEC: SPEC-CLI-001.md | TEST: tests/unit/test_cli_commands.py
1
+ # @CODE:CLI-001 | SPEC: SPEC-CLI-001/spec.md | TEST: tests/unit/test_cli_commands.py
2
2
  """MoAI-ADK status command
3
3
 
4
4
  Project status display: