moai-adk 0.10.1__tar.gz → 0.11.0__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 (310) hide show
  1. {moai_adk-0.10.1 → moai_adk-0.11.0}/.gitignore +2 -1
  2. {moai_adk-0.10.1 → moai_adk-0.11.0}/PKG-INFO +28 -13
  3. {moai_adk-0.10.1 → moai_adk-0.11.0}/README.md +22 -11
  4. {moai_adk-0.10.1 → moai_adk-0.11.0}/pyproject.toml +8 -4
  5. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/project/phase_executor.py +4 -0
  6. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/tags/ci_validator.py +33 -3
  7. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/template_engine.py +6 -2
  8. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/templates/.github/workflows/moai-gitflow.yml +6 -1
  9. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/templates/.github/workflows/release.yml +6 -2
  10. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/templates/.github/workflows/tag-validation.yml +53 -8
  11. moai_adk-0.11.0/src/moai_adk/templates/CLAUDE.md +763 -0
  12. moai_adk-0.10.1/src/moai_adk/templates/.claude/agents/alfred/cc-manager.md +0 -316
  13. moai_adk-0.10.1/src/moai_adk/templates/.claude/agents/alfred/debug-helper.md +0 -208
  14. moai_adk-0.10.1/src/moai_adk/templates/.claude/agents/alfred/doc-syncer.md +0 -214
  15. moai_adk-0.10.1/src/moai_adk/templates/.claude/agents/alfred/git-manager.md +0 -406
  16. moai_adk-0.10.1/src/moai_adk/templates/.claude/agents/alfred/implementation-planner.md +0 -350
  17. moai_adk-0.10.1/src/moai_adk/templates/.claude/agents/alfred/project-manager.md +0 -273
  18. moai_adk-0.10.1/src/moai_adk/templates/.claude/agents/alfred/quality-gate.md +0 -343
  19. moai_adk-0.10.1/src/moai_adk/templates/.claude/agents/alfred/skill-factory.md +0 -865
  20. moai_adk-0.10.1/src/moai_adk/templates/.claude/agents/alfred/spec-builder.md +0 -287
  21. moai_adk-0.10.1/src/moai_adk/templates/.claude/agents/alfred/tag-agent.md +0 -287
  22. moai_adk-0.10.1/src/moai_adk/templates/.claude/agents/alfred/tdd-implementer.md +0 -326
  23. moai_adk-0.10.1/src/moai_adk/templates/.claude/agents/alfred/trust-checker.md +0 -375
  24. moai_adk-0.10.1/src/moai_adk/templates/.claude/commands/alfred/0-project.md +0 -1189
  25. moai_adk-0.10.1/src/moai_adk/templates/.claude/commands/alfred/1-plan.md +0 -728
  26. moai_adk-0.10.1/src/moai_adk/templates/.claude/commands/alfred/2-run.md +0 -545
  27. moai_adk-0.10.1/src/moai_adk/templates/.claude/commands/alfred/3-sync.md +0 -683
  28. moai_adk-0.10.1/src/moai_adk/templates/.claude/commands/alfred/9-feedback.md +0 -149
  29. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/alfred_hooks.py +0 -209
  30. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/core/project.py +0 -750
  31. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/core/version_cache.py +0 -198
  32. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/notification__handle_events.py +0 -102
  33. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/post_tool__log_changes.py +0 -102
  34. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/pre_tool__auto_checkpoint.py +0 -108
  35. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/session_end__cleanup.py +0 -102
  36. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/session_start__show_project_info.py +0 -102
  37. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/shared/core/__init__.py +0 -170
  38. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/shared/core/checkpoint.py +0 -271
  39. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/shared/core/context.py +0 -67
  40. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/shared/core/project.py +0 -756
  41. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/shared/core/tags.py +0 -198
  42. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/shared/core/version_cache.py +0 -198
  43. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/shared/handlers/__init__.py +0 -21
  44. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/shared/handlers/notification.py +0 -25
  45. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/shared/handlers/session.py +0 -175
  46. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/shared/handlers/tool.py +0 -90
  47. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/shared/handlers/user.py +0 -61
  48. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/stop__handle_interrupt.py +0 -102
  49. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/subagent_stop__handle_subagent_end.py +0 -102
  50. moai_adk-0.10.1/src/moai_adk/templates/.claude/hooks/alfred/user_prompt__jit_load_docs.py +0 -120
  51. moai_adk-0.10.1/src/moai_adk/templates/.claude/output-styles/alfred/agentic-coding.md +0 -640
  52. moai_adk-0.10.1/src/moai_adk/templates/.claude/output-styles/alfred/moai-adk-learning.md +0 -696
  53. moai_adk-0.10.1/src/moai_adk/templates/.claude/output-styles/alfred/study-with-alfred.md +0 -474
  54. moai_adk-0.10.1/src/moai_adk/templates/.claude/settings.json +0 -144
  55. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/SKILL.md +0 -113
  56. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/examples.md +0 -29
  57. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/reference.md +0 -28
  58. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-git-workflow/SKILL.md +0 -122
  59. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-git-workflow/examples.md +0 -29
  60. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-git-workflow/reference.md +0 -29
  61. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/SKILL.md +0 -237
  62. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/examples.md +0 -615
  63. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/reference.md +0 -653
  64. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-language-detection/SKILL.md +0 -113
  65. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-language-detection/examples.md +0 -29
  66. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-language-detection/reference.md +0 -28
  67. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/SKILL.md +0 -113
  68. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/examples.md +0 -29
  69. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/reference.md +0 -28
  70. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/SKILL.md +0 -113
  71. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/examples.md +0 -29
  72. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/reference.md +0 -28
  73. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-trust-validation/SKILL.md +0 -113
  74. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-trust-validation/examples.md +0 -29
  75. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-alfred-trust-validation/reference.md +0 -28
  76. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-agents/SKILL.md +0 -269
  77. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-agents/templates/agent-template.md +0 -32
  78. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-claude-md/SKILL.md +0 -298
  79. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-claude-md/templates/CLAUDE-template.md +0 -26
  80. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-commands/SKILL.md +0 -307
  81. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-commands/templates/command-template.md +0 -21
  82. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-hooks/SKILL.md +0 -252
  83. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/pre-bash-check.sh +0 -19
  84. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/preserve-permissions.sh +0 -19
  85. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/validate-bash-command.py +0 -24
  86. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-mcp-plugins/SKILL.md +0 -199
  87. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-mcp-plugins/templates/settings-mcp-template.json +0 -39
  88. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-memory/SKILL.md +0 -316
  89. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-memory/templates/session-summary-template.md +0 -18
  90. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-settings/SKILL.md +0 -263
  91. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-settings/templates/settings-complete-template.json +0 -30
  92. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-skills/SKILL.md +0 -291
  93. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-cc-skills/templates/SKILL-template.md +0 -15
  94. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +0 -290
  95. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-backend/examples.md +0 -1633
  96. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-backend/reference.md +0 -660
  97. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-cli-tool/SKILL.md +0 -123
  98. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-cli-tool/examples.md +0 -29
  99. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-cli-tool/reference.md +0 -30
  100. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-data-science/SKILL.md +0 -123
  101. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-data-science/examples.md +0 -29
  102. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-data-science/reference.md +0 -30
  103. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +0 -123
  104. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-database/examples.md +0 -29
  105. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-database/reference.md +0 -30
  106. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-devops/SKILL.md +0 -124
  107. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-devops/examples.md +0 -29
  108. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-devops/reference.md +0 -31
  109. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +0 -124
  110. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-frontend/examples.md +0 -29
  111. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-frontend/reference.md +0 -31
  112. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-ml/SKILL.md +0 -123
  113. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-ml/examples.md +0 -29
  114. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-ml/reference.md +0 -30
  115. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-mobile-app/SKILL.md +0 -123
  116. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-mobile-app/examples.md +0 -29
  117. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-mobile-app/reference.md +0 -30
  118. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-security/SKILL.md +0 -123
  119. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-security/examples.md +0 -29
  120. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-security/reference.md +0 -30
  121. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-web-api/SKILL.md +0 -123
  122. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-web-api/examples.md +0 -29
  123. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-domain-web-api/reference.md +0 -30
  124. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-essentials-debug/SKILL.md +0 -303
  125. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-essentials-debug/examples.md +0 -1064
  126. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-essentials-debug/reference.md +0 -1047
  127. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-essentials-perf/SKILL.md +0 -113
  128. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-essentials-perf/examples.md +0 -29
  129. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-essentials-perf/reference.md +0 -28
  130. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-essentials-refactor/SKILL.md +0 -113
  131. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-essentials-refactor/examples.md +0 -29
  132. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-essentials-refactor/reference.md +0 -28
  133. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-essentials-review/SKILL.md +0 -113
  134. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-essentials-review/examples.md +0 -29
  135. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-essentials-review/reference.md +0 -28
  136. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-ears/SKILL.md +0 -116
  137. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-ears/examples.md +0 -29
  138. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-ears/reference.md +0 -28
  139. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-git/SKILL.md +0 -122
  140. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-git/examples.md +0 -29
  141. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-git/reference.md +0 -29
  142. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-langs/SKILL.md +0 -113
  143. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-langs/examples.md +0 -29
  144. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-langs/reference.md +0 -28
  145. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-specs/SKILL.md +0 -113
  146. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-specs/examples.md +0 -29
  147. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-specs/reference.md +0 -28
  148. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-tags/SKILL.md +0 -113
  149. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-tags/examples.md +0 -29
  150. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-tags/reference.md +0 -28
  151. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-trust/SKILL.md +0 -307
  152. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-trust/examples.md +0 -0
  153. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-foundation-trust/reference.md +0 -1099
  154. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-c/SKILL.md +0 -124
  155. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-c/examples.md +0 -29
  156. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-c/reference.md +0 -31
  157. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-cpp/SKILL.md +0 -124
  158. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-cpp/examples.md +0 -29
  159. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-cpp/reference.md +0 -31
  160. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-csharp/SKILL.md +0 -123
  161. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-csharp/examples.md +0 -29
  162. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-csharp/reference.md +0 -30
  163. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-dart/SKILL.md +0 -123
  164. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-dart/examples.md +0 -29
  165. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-dart/reference.md +0 -30
  166. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-go/SKILL.md +0 -124
  167. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-go/examples.md +0 -29
  168. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-go/reference.md +0 -31
  169. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-java/SKILL.md +0 -124
  170. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-java/examples.md +0 -29
  171. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-java/reference.md +0 -31
  172. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-javascript/SKILL.md +0 -125
  173. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-javascript/examples.md +0 -29
  174. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-javascript/reference.md +0 -32
  175. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-kotlin/SKILL.md +0 -124
  176. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-kotlin/examples.md +0 -29
  177. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-kotlin/reference.md +0 -31
  178. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-php/SKILL.md +0 -123
  179. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-php/examples.md +0 -29
  180. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-php/reference.md +0 -30
  181. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-python/SKILL.md +0 -431
  182. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-python/examples.md +0 -624
  183. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-python/reference.md +0 -316
  184. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-r/SKILL.md +0 -123
  185. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-r/examples.md +0 -29
  186. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-r/reference.md +0 -30
  187. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-ruby/SKILL.md +0 -124
  188. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-ruby/examples.md +0 -29
  189. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-ruby/reference.md +0 -31
  190. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-rust/SKILL.md +0 -124
  191. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-rust/examples.md +0 -29
  192. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-rust/reference.md +0 -31
  193. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-scala/SKILL.md +0 -123
  194. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-scala/examples.md +0 -29
  195. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-scala/reference.md +0 -30
  196. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-shell/SKILL.md +0 -123
  197. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-shell/examples.md +0 -29
  198. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-shell/reference.md +0 -30
  199. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-sql/SKILL.md +0 -124
  200. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-sql/examples.md +0 -29
  201. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-sql/reference.md +0 -31
  202. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-swift/SKILL.md +0 -123
  203. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-swift/examples.md +0 -29
  204. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-swift/reference.md +0 -30
  205. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-typescript/SKILL.md +0 -127
  206. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-typescript/examples.md +0 -29
  207. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-lang-typescript/reference.md +0 -34
  208. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/CHECKLIST.md +0 -482
  209. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/EXAMPLES.md +0 -278
  210. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/INTERACTIVE-DISCOVERY.md +0 -524
  211. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/METADATA.md +0 -477
  212. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/PARALLEL-ANALYSIS-REPORT.md +0 -429
  213. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/PYTHON-VERSION-MATRIX.md +0 -391
  214. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/SKILL-FACTORY-WORKFLOW.md +0 -431
  215. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/SKILL-UPDATE-ADVISOR.md +0 -577
  216. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/SKILL.md +0 -271
  217. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/STEP-BY-STEP-GUIDE.md +0 -466
  218. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/STRUCTURE.md +0 -583
  219. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/WEB-RESEARCH.md +0 -526
  220. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/reference.md +0 -465
  221. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/scripts/generate-structure.sh +0 -328
  222. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/scripts/validate-skill.sh +0 -312
  223. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/templates/SKILL_TEMPLATE.md +0 -245
  224. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/templates/examples-template.md +0 -285
  225. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/templates/reference-template.md +0 -278
  226. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-skill-factory/templates/scripts-template.sh +0 -303
  227. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-spec-authoring/README.md +0 -137
  228. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-spec-authoring/SKILL.md +0 -219
  229. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-spec-authoring/examples/validate-spec.sh +0 -161
  230. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-spec-authoring/examples.md +0 -541
  231. moai_adk-0.10.1/src/moai_adk/templates/.claude/skills/moai-spec-authoring/reference.md +0 -622
  232. moai_adk-0.10.1/src/moai_adk/templates/.moai/config.json +0 -113
  233. moai_adk-0.10.1/src/moai_adk/templates/.moai/memory/CLAUDE-AGENTS-GUIDE.md +0 -208
  234. moai_adk-0.10.1/src/moai_adk/templates/.moai/memory/CLAUDE-PRACTICES.md +0 -369
  235. moai_adk-0.10.1/src/moai_adk/templates/.moai/memory/CLAUDE-RULES.md +0 -539
  236. moai_adk-0.10.1/src/moai_adk/templates/.moai/memory/DEVELOPMENT-GUIDE.md +0 -344
  237. moai_adk-0.10.1/src/moai_adk/templates/.moai/memory/ISSUE-LABEL-MAPPING.md +0 -150
  238. moai_adk-0.10.1/src/moai_adk/templates/.moai/memory/SKILLS-DESCRIPTION-POLICY.md +0 -218
  239. moai_adk-0.10.1/src/moai_adk/templates/.moai/memory/gitflow-protection-policy.md +0 -330
  240. moai_adk-0.10.1/src/moai_adk/templates/.moai/memory/spec-metadata.md +0 -356
  241. moai_adk-0.10.1/src/moai_adk/templates/.moai/project/product.md +0 -161
  242. moai_adk-0.10.1/src/moai_adk/templates/.moai/project/structure.md +0 -156
  243. moai_adk-0.10.1/src/moai_adk/templates/.moai/project/tech.md +0 -227
  244. moai_adk-0.10.1/src/moai_adk/templates/CLAUDE.md +0 -372
  245. {moai_adk-0.10.1 → moai_adk-0.11.0}/LICENSE +0 -0
  246. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/__init__.py +0 -0
  247. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/__main__.py +0 -0
  248. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/cli/__init__.py +0 -0
  249. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/cli/commands/__init__.py +0 -0
  250. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/cli/commands/backup.py +0 -0
  251. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/cli/commands/doctor.py +0 -0
  252. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/cli/commands/init.py +0 -0
  253. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/cli/commands/status.py +0 -0
  254. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/cli/commands/update.py +0 -0
  255. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/cli/main.py +0 -0
  256. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/cli/prompts/__init__.py +0 -0
  257. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/cli/prompts/init_prompts.py +0 -0
  258. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/__init__.py +0 -0
  259. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/config/__init__.py +0 -0
  260. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/config/migration.py +0 -0
  261. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/diagnostics/__init__.py +0 -0
  262. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/diagnostics/slash_commands.py +0 -0
  263. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/git/__init__.py +0 -0
  264. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/git/branch.py +0 -0
  265. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/git/branch_manager.py +0 -0
  266. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/git/checkpoint.py +0 -0
  267. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/git/commit.py +0 -0
  268. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/git/event_detector.py +0 -0
  269. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/git/manager.py +0 -0
  270. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/issue_creator.py +0 -0
  271. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/project/__init__.py +0 -0
  272. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/project/backup_utils.py +0 -0
  273. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/project/checker.py +0 -0
  274. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/project/detector.py +0 -0
  275. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/project/initializer.py +0 -0
  276. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/project/validator.py +0 -0
  277. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/quality/__init__.py +0 -0
  278. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/quality/trust_checker.py +0 -0
  279. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/quality/validators/__init__.py +0 -0
  280. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/quality/validators/base_validator.py +0 -0
  281. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/tags/__init__.py +0 -0
  282. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/tags/cli.py +0 -0
  283. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/tags/generator.py +0 -0
  284. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/tags/inserter.py +0 -0
  285. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/tags/mapper.py +0 -0
  286. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/tags/parser.py +0 -0
  287. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/tags/pre_commit_validator.py +0 -0
  288. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/tags/reporter.py +0 -0
  289. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/tags/tags.py +0 -0
  290. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/tags/validator.py +0 -0
  291. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/template/__init__.py +0 -0
  292. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/template/backup.py +0 -0
  293. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/template/config.py +0 -0
  294. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/template/languages.py +0 -0
  295. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/template/merger.py +0 -0
  296. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/core/template/processor.py +0 -0
  297. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/templates/.git-hooks/pre-push +0 -0
  298. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/templates/.github/ISSUE_TEMPLATE/spec.yml +0 -0
  299. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/templates/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  300. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/templates/.github/workflows/moai-release-create.yml +0 -0
  301. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/templates/.github/workflows/moai-release-pipeline.yml +0 -0
  302. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/templates/.github/workflows/spec-issue-sync.yml +0 -0
  303. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/templates/.gitignore +0 -0
  304. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/templates/README.md +0 -0
  305. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/templates/__init__.py +0 -0
  306. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/templates/src/moai_adk/core/tags/pre_commit_validator.py +0 -0
  307. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/templates/src/moai_adk/core/tags/reporter.py +0 -0
  308. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/utils/__init__.py +0 -0
  309. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/utils/banner.py +0 -0
  310. {moai_adk-0.10.1 → moai_adk-0.11.0}/src/moai_adk/utils/logger.py +0 -0
@@ -83,4 +83,5 @@ CURSOR_INTEGRATION_PLAN.md
83
83
  .moai/reports/
84
84
  .moai/scripts/
85
85
  .moai/cache/
86
-
86
+ .claude/
87
+ .moai/
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: moai-adk
3
- Version: 0.10.1
3
+ Version: 0.11.0
4
4
  Summary: MoAI Agentic Development Kit - SPEC-First TDD with Alfred SuperAgent & Complete Skills v2.0
5
5
  Project-URL: Homepage, https://github.com/modu-ai/moai-adk
6
6
  Project-URL: Repository, https://github.com/modu-ai/moai-adk
@@ -14,17 +14,21 @@ Classifier: Development Status :: 4 - Beta
14
14
  Classifier: Intended Audience :: Developers
15
15
  Classifier: License :: OSI Approved :: MIT License
16
16
  Classifier: Programming Language :: Python :: 3
17
+ Classifier: Programming Language :: Python :: 3.11
18
+ Classifier: Programming Language :: Python :: 3.12
17
19
  Classifier: Programming Language :: Python :: 3.13
18
20
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
19
21
  Classifier: Topic :: Software Development :: Quality Assurance
20
22
  Classifier: Topic :: Software Development :: Testing
21
- Requires-Python: >=3.13
23
+ Requires-Python: >=3.11
22
24
  Requires-Dist: click>=8.1.0
23
25
  Requires-Dist: gitpython>=3.1.45
26
+ Requires-Dist: jinja2>=3.0.0
24
27
  Requires-Dist: packaging>=21.0
25
28
  Requires-Dist: pyfiglet>=1.0.2
26
29
  Requires-Dist: pyyaml>=6.0
27
30
  Requires-Dist: questionary>=2.0.0
31
+ Requires-Dist: requests>=2.28.0
28
32
  Requires-Dist: rich>=13.0.0
29
33
  Provides-Extra: dev
30
34
  Requires-Dist: mypy>=1.7.0; extra == 'dev'
@@ -158,6 +162,22 @@ From the moment you adopt MoAI-ADK, you'll feel:
158
162
 
159
163
  ---
160
164
 
165
+ ## 🖥️ Platform Support
166
+
167
+ ### Supported Platforms
168
+ - ✅ **macOS** (11.0+)
169
+ - ✅ **Linux** (Ubuntu 20.04+, Debian 11+, etc.)
170
+ - ✅ **Windows** (10/11) - Full support as of v0.11.0
171
+ - Note: Hooks system requires Python 3.11+
172
+ - All hook features work seamlessly on Windows with cross-platform timeout handling
173
+
174
+ ### System Requirements
175
+ - **Python**: 3.11 or higher
176
+ - **Git**: 2.30+
177
+ - **GitHub CLI** (`gh`): Optional, required for PR automation in team mode
178
+
179
+ ---
180
+
161
181
  ## ⚡ 3-Minute Lightning Start
162
182
 
163
183
  Get your first MoAI-ADK project running in **3 simple steps**. Beginners can finish in under 5 minutes.
@@ -390,11 +410,6 @@ my-project/
390
410
  │ ├── hooks/ # Event-driven automation
391
411
  │ │ └── alfred/
392
412
  │ │ └── alfred_hooks.py # 5 hooks (Session, PreTool, etc.)
393
- │ ├── output-styles/ # Response styles
394
- │ │ └── alfred/
395
- │ │ ├── agentic-coding.md # Professional development mode
396
- │ │ ├── moai-adk-learning.md # Educational explanations mode
397
- │ │ └── study-with-alfred.md # Interactive learning mode
398
413
  │ └── settings.json # Claude Code settings
399
414
  ├── src/ # Implementation code
400
415
  ├── tests/ # Test code
@@ -1770,7 +1785,7 @@ The **implementation-planner** Sub-agent decides:
1770
1785
 
1771
1786
  ```python
1772
1787
  # tests/test_todo_api.py
1773
- # @TEST:TODO-001 | SPEC: SPEC-TODO-001.md
1788
+ # @TEST:README-EXAMPLE-TODO | SPEC: SPEC-TODO-001.md
1774
1789
 
1775
1790
  import pytest
1776
1791
  from src.todo.api import create_todo, get_todos
@@ -1911,7 +1926,7 @@ git commit -m "♻️ refactor(TODO-001): add database models and validation"
1911
1926
 
1912
1927
  ```bash
1913
1928
  ✅ @SPEC:TODO-001 → .moai/specs/SPEC-TODO-001/spec.md
1914
- ✅ @TEST:TODO-001 → tests/test_todo_api.py
1929
+ ✅ @TEST:README-EXAMPLE-TODO → tests/test_todo_api.py
1915
1930
  ✅ @CODE:TODO-001 → src/todo/ (3 files)
1916
1931
  ✅ @DOC:TODO-001 → docs/api/todo.md (auto-generated)
1917
1932
 
@@ -1937,7 +1952,7 @@ git commit -m "♻️ refactor(TODO-001): add database models and validation"
1937
1952
  - Request: {"title": "string (1-200 chars)"}
1938
1953
  - Response: 201 Created with todo object
1939
1954
  - Implemented in: @CODE:TODO-001:API
1940
- - Tested in: @TEST:TODO-001
1955
+ - Tested in: @TEST:README-EXAMPLE-TODO
1941
1956
 
1942
1957
  ### Get All Todos
1943
1958
 
@@ -1988,7 +2003,7 @@ rg '@(SPEC|TEST|CODE|DOC):TODO-001' -n
1988
2003
 
1989
2004
  # Output:
1990
2005
  # .moai/specs/SPEC-TODO-001/spec.md:1: # @SPEC:TODO-001: Todo Management API
1991
- # tests/test_todo_api.py:2: # @TEST:TODO-001 | SPEC: SPEC-TODO-001.md
2006
+ # tests/test_todo_api.py:2: # @TEST:README-EXAMPLE-TODO | SPEC: SPEC-TODO-001.md
1992
2007
  # src/todo/api.py:5: # @CODE:TODO-001:API | SPEC: SPEC-TODO-001.md
1993
2008
  # src/todo/models.py:5: # @CODE:TODO-001:MODEL | SPEC: SPEC-TODO-001.md
1994
2009
  # docs/api/todo.md:1: # @DOC:TODO-001: Todo Management API
@@ -2028,7 +2043,7 @@ git log --oneline | head -5
2028
2043
  └─ 🔴 RED: Tests written first
2029
2044
  └─ 🟢 GREEN: Minimal implementation
2030
2045
  └─ ♻️ REFACTOR: Quality improvement
2031
- └─ @TEST:TODO-001, @CODE:TODO-001 TAGs assigned
2046
+ └─ @TEST:README-EXAMPLE-TODO, @CODE:TODO-001 TAGs assigned
2032
2047
  └─ 87% coverage, TRUST 5 principles verified
2033
2048
 
2034
2049
  ✅ Documentation sync (1 minute)
@@ -2599,7 +2614,7 @@ rg '@SPEC:HELLO-001' -n .moai/specs/
2599
2614
  /alfred:1-plan "feature description"
2600
2615
 
2601
2616
  # Or fix TAG in test file
2602
- # Edit tests/test_hello.py: @TEST:HELLO-001 → @TEST:HELLO-002
2617
+ # Edit tests/test_hello.py: @TEST:HELLO-001 → @TEST:README-EXAMPLE-HELLO
2603
2618
 
2604
2619
  # 4. Sync
2605
2620
  /alfred:3-sync
@@ -118,6 +118,22 @@ From the moment you adopt MoAI-ADK, you'll feel:
118
118
 
119
119
  ---
120
120
 
121
+ ## 🖥️ Platform Support
122
+
123
+ ### Supported Platforms
124
+ - ✅ **macOS** (11.0+)
125
+ - ✅ **Linux** (Ubuntu 20.04+, Debian 11+, etc.)
126
+ - ✅ **Windows** (10/11) - Full support as of v0.11.0
127
+ - Note: Hooks system requires Python 3.11+
128
+ - All hook features work seamlessly on Windows with cross-platform timeout handling
129
+
130
+ ### System Requirements
131
+ - **Python**: 3.11 or higher
132
+ - **Git**: 2.30+
133
+ - **GitHub CLI** (`gh`): Optional, required for PR automation in team mode
134
+
135
+ ---
136
+
121
137
  ## ⚡ 3-Minute Lightning Start
122
138
 
123
139
  Get your first MoAI-ADK project running in **3 simple steps**. Beginners can finish in under 5 minutes.
@@ -350,11 +366,6 @@ my-project/
350
366
  │ ├── hooks/ # Event-driven automation
351
367
  │ │ └── alfred/
352
368
  │ │ └── alfred_hooks.py # 5 hooks (Session, PreTool, etc.)
353
- │ ├── output-styles/ # Response styles
354
- │ │ └── alfred/
355
- │ │ ├── agentic-coding.md # Professional development mode
356
- │ │ ├── moai-adk-learning.md # Educational explanations mode
357
- │ │ └── study-with-alfred.md # Interactive learning mode
358
369
  │ └── settings.json # Claude Code settings
359
370
  ├── src/ # Implementation code
360
371
  ├── tests/ # Test code
@@ -1730,7 +1741,7 @@ The **implementation-planner** Sub-agent decides:
1730
1741
 
1731
1742
  ```python
1732
1743
  # tests/test_todo_api.py
1733
- # @TEST:TODO-001 | SPEC: SPEC-TODO-001.md
1744
+ # @TEST:README-EXAMPLE-TODO | SPEC: SPEC-TODO-001.md
1734
1745
 
1735
1746
  import pytest
1736
1747
  from src.todo.api import create_todo, get_todos
@@ -1871,7 +1882,7 @@ git commit -m "♻️ refactor(TODO-001): add database models and validation"
1871
1882
 
1872
1883
  ```bash
1873
1884
  ✅ @SPEC:TODO-001 → .moai/specs/SPEC-TODO-001/spec.md
1874
- ✅ @TEST:TODO-001 → tests/test_todo_api.py
1885
+ ✅ @TEST:README-EXAMPLE-TODO → tests/test_todo_api.py
1875
1886
  ✅ @CODE:TODO-001 → src/todo/ (3 files)
1876
1887
  ✅ @DOC:TODO-001 → docs/api/todo.md (auto-generated)
1877
1888
 
@@ -1897,7 +1908,7 @@ git commit -m "♻️ refactor(TODO-001): add database models and validation"
1897
1908
  - Request: {"title": "string (1-200 chars)"}
1898
1909
  - Response: 201 Created with todo object
1899
1910
  - Implemented in: @CODE:TODO-001:API
1900
- - Tested in: @TEST:TODO-001
1911
+ - Tested in: @TEST:README-EXAMPLE-TODO
1901
1912
 
1902
1913
  ### Get All Todos
1903
1914
 
@@ -1948,7 +1959,7 @@ rg '@(SPEC|TEST|CODE|DOC):TODO-001' -n
1948
1959
 
1949
1960
  # Output:
1950
1961
  # .moai/specs/SPEC-TODO-001/spec.md:1: # @SPEC:TODO-001: Todo Management API
1951
- # tests/test_todo_api.py:2: # @TEST:TODO-001 | SPEC: SPEC-TODO-001.md
1962
+ # tests/test_todo_api.py:2: # @TEST:README-EXAMPLE-TODO | SPEC: SPEC-TODO-001.md
1952
1963
  # src/todo/api.py:5: # @CODE:TODO-001:API | SPEC: SPEC-TODO-001.md
1953
1964
  # src/todo/models.py:5: # @CODE:TODO-001:MODEL | SPEC: SPEC-TODO-001.md
1954
1965
  # docs/api/todo.md:1: # @DOC:TODO-001: Todo Management API
@@ -1988,7 +1999,7 @@ git log --oneline | head -5
1988
1999
  └─ 🔴 RED: Tests written first
1989
2000
  └─ 🟢 GREEN: Minimal implementation
1990
2001
  └─ ♻️ REFACTOR: Quality improvement
1991
- └─ @TEST:TODO-001, @CODE:TODO-001 TAGs assigned
2002
+ └─ @TEST:README-EXAMPLE-TODO, @CODE:TODO-001 TAGs assigned
1992
2003
  └─ 87% coverage, TRUST 5 principles verified
1993
2004
 
1994
2005
  ✅ Documentation sync (1 minute)
@@ -2559,7 +2570,7 @@ rg '@SPEC:HELLO-001' -n .moai/specs/
2559
2570
  /alfred:1-plan "feature description"
2560
2571
 
2561
2572
  # Or fix TAG in test file
2562
- # Edit tests/test_hello.py: @TEST:HELLO-001 → @TEST:HELLO-002
2573
+ # Edit tests/test_hello.py: @TEST:HELLO-001 → @TEST:README-EXAMPLE-HELLO
2563
2574
 
2564
2575
  # 4. Sync
2565
2576
  /alfred:3-sync
@@ -1,9 +1,9 @@
1
1
  [project]
2
2
  name = "moai-adk"
3
- version = "0.10.1"
3
+ version = "0.11.0"
4
4
  description = "MoAI Agentic Development Kit - SPEC-First TDD with Alfred SuperAgent & Complete Skills v2.0"
5
5
  readme = "README.md"
6
- requires-python = ">=3.13"
6
+ requires-python = ">=3.11"
7
7
  license = {text = "MIT"}
8
8
  authors = [
9
9
  {name = "MoAI Team", email = "support@moduai.kr"}
@@ -14,6 +14,8 @@ classifiers = [
14
14
  "Intended Audience :: Developers",
15
15
  "License :: OSI Approved :: MIT License",
16
16
  "Programming Language :: Python :: 3",
17
+ "Programming Language :: Python :: 3.11",
18
+ "Programming Language :: Python :: 3.12",
17
19
  "Programming Language :: Python :: 3.13",
18
20
  "Topic :: Software Development :: Libraries :: Python Modules",
19
21
  "Topic :: Software Development :: Quality Assurance",
@@ -26,7 +28,9 @@ dependencies = [
26
28
  "questionary>=2.0.0",
27
29
  "gitpython>=3.1.45",
28
30
  "packaging>=21.0",
29
- "pyyaml>=6.0"
31
+ "pyyaml>=6.0",
32
+ "jinja2>=3.0.0",
33
+ "requests>=2.28.0"
30
34
  ]
31
35
 
32
36
  [project.optional-dependencies]
@@ -64,7 +68,7 @@ fail_under = 85
64
68
 
65
69
  [tool.ruff]
66
70
  line-length = 120
67
- target-version = "py313"
71
+ target-version = "py311"
68
72
 
69
73
  [tool.ruff.lint]
70
74
  select = ["E", "F", "W", "I", "N"]
@@ -312,8 +312,12 @@ class PhaseExecutor:
312
312
  cwd=project_path,
313
313
  check=True,
314
314
  capture_output=True,
315
+ timeout=30, # Default timeout for git operations
315
316
  )
316
317
  # Intentionally avoid printing to keep progress output clean
318
+ except subprocess.TimeoutExpired:
319
+ # Timeout is non-fatal
320
+ pass
317
321
  except subprocess.CalledProcessError:
318
322
  # Only log on error; failures are non-fatal
319
323
  pass
@@ -16,6 +16,8 @@ import os
16
16
  from typing import Any, Dict, List, Optional
17
17
 
18
18
  import requests
19
+ from requests.adapters import HTTPAdapter
20
+ from urllib3.util import Retry
19
21
 
20
22
  from .pre_commit_validator import (
21
23
  PreCommitValidator,
@@ -87,16 +89,44 @@ class CIValidator(PreCommitValidator):
87
89
  'Accept': 'application/vnd.github.v3+json'
88
90
  }
89
91
 
92
+ # Create session with retry strategy
93
+ session = requests.Session()
94
+ retry = Retry(
95
+ total=3,
96
+ backoff_factor=0.5,
97
+ status_forcelist=[500, 502, 503, 504],
98
+ allowed_methods=["GET"]
99
+ )
100
+ adapter = HTTPAdapter(max_retries=retry)
101
+ session.mount("https://", adapter)
102
+
90
103
  try:
91
- response = requests.get(url, headers=headers, timeout=10)
104
+ # Dual timeout: (connect_timeout, read_timeout)
105
+ response = session.get(
106
+ url,
107
+ headers=headers,
108
+ timeout=(5, 10)
109
+ )
92
110
  response.raise_for_status()
93
111
 
94
112
  files_data = response.json()
95
113
  return [file_info['filename'] for file_info in files_data]
96
114
 
97
- except Exception:
98
- # Return empty list on any error (network, auth, etc.)
115
+ except requests.exceptions.Timeout:
116
+ # Network timeout - return empty list gracefully
117
+ return []
118
+ except requests.exceptions.HTTPError as e:
119
+ # HTTP error (4xx, 5xx)
120
+ if e.response.status_code == 404:
121
+ # PR not found
122
+ return []
123
+ # Other HTTP errors: log but continue
124
+ return []
125
+ except requests.exceptions.RequestException:
126
+ # Network/connection errors
99
127
  return []
128
+ finally:
129
+ session.close()
100
130
 
101
131
  def validate_pr_changes(
102
132
  self,
@@ -31,13 +31,17 @@ class TemplateEngine:
31
31
  - File-based and string-based template rendering
32
32
  """
33
33
 
34
- def __init__(self, strict_undefined: bool = False):
34
+ def __init__(self, strict_undefined: bool = True):
35
35
  """
36
36
  Initialize the template engine.
37
37
 
38
38
  Args:
39
- strict_undefined: If True, raise error on undefined variables.
39
+ strict_undefined: If True, raise error on undefined variables (default: True).
40
40
  If False, render undefined variables as empty strings.
41
+
42
+ Note:
43
+ Changed to strict_undefined=True (v0.10.2+) for safer template rendering.
44
+ Variables must be explicitly provided to avoid silent template failures.
41
45
  """
42
46
  self.strict_undefined = strict_undefined
43
47
  self.undefined_behavior = StrictUndefined if strict_undefined else None
@@ -13,6 +13,11 @@ jobs:
13
13
  moai-pipeline:
14
14
  name: "{{PROJECT_NAME}} Pipeline"
15
15
  runs-on: ubuntu-latest
16
+
17
+ strategy:
18
+ matrix:
19
+ python-version: ["3.11", "3.12", "3.13"]
20
+
16
21
  steps:
17
22
  - name: Checkout
18
23
  uses: actions/checkout@v4
@@ -22,7 +27,7 @@ jobs:
22
27
  if: ${{ hashFiles('requirements.txt') != '' || hashFiles('pyproject.toml') != '' || hashFiles('setup.py') != '' }}
23
28
  uses: actions/setup-python@v5
24
29
  with:
25
- python-version: "3.13"
30
+ python-version: ${{ matrix.python-version }}
26
31
 
27
32
  - name: Setup Node.js
28
33
  if: ${{ hashFiles('package.json') != '' }}
@@ -10,14 +10,18 @@ jobs:
10
10
  name: 📦 Deploy to PyPI
11
11
  runs-on: ubuntu-latest
12
12
 
13
+ strategy:
14
+ matrix:
15
+ python-version: ["3.11", "3.12", "3.13"]
16
+
13
17
  steps:
14
18
  - name: 📥 Checkout code
15
19
  uses: actions/checkout@v4
16
20
 
17
- - name: 🐍 Setup Python 3.13
21
+ - name: 🐍 Setup Python ${{ matrix.python-version }}
18
22
  uses: actions/setup-python@v5
19
23
  with:
20
- python-version: "3.13"
24
+ python-version: ${{ matrix.python-version }}
21
25
 
22
26
  - name: 📦 Install uv
23
27
  uses: astral-sh/setup-uv@v2
@@ -10,9 +10,39 @@ on:
10
10
  branches: [main, develop, "feature/**"]
11
11
 
12
12
  jobs:
13
+ detect-language:
14
+ name: 🔍 Detect Project Language
15
+ runs-on: ubuntu-latest
16
+ outputs:
17
+ language: ${{ steps.detect.outputs.language }}
18
+ is-python: ${{ steps.detect.outputs.is-python }}
19
+ is-javascript: ${{ steps.detect.outputs.is-javascript }}
20
+
21
+ steps:
22
+ - name: Checkout code
23
+ uses: actions/checkout@v4
24
+
25
+ - name: Detect language
26
+ id: detect
27
+ run: |
28
+ if [ -f "pyproject.toml" ] || [ -f "setup.py" ] || [ -f "requirements.txt" ]; then
29
+ echo "language=python" >> $GITHUB_OUTPUT
30
+ echo "is-python=true" >> $GITHUB_OUTPUT
31
+ echo "is-javascript=false" >> $GITHUB_OUTPUT
32
+ elif [ -f "package.json" ]; then
33
+ echo "language=javascript" >> $GITHUB_OUTPUT
34
+ echo "is-python=false" >> $GITHUB_OUTPUT
35
+ echo "is-javascript=true" >> $GITHUB_OUTPUT
36
+ else
37
+ echo "language=unknown" >> $GITHUB_OUTPUT
38
+ echo "is-python=false" >> $GITHUB_OUTPUT
39
+ echo "is-javascript=false" >> $GITHUB_OUTPUT
40
+ fi
41
+
13
42
  validate-tags:
14
43
  name: 🏷️ Validate TAG Annotations
15
44
  runs-on: ubuntu-latest
45
+ needs: detect-language
16
46
 
17
47
  # Skip validation on draft PRs (allow WIP)
18
48
  if: github.event.pull_request.draft == false || github.event_name == 'push'
@@ -21,26 +51,41 @@ jobs:
21
51
  contents: read
22
52
  pull-requests: write
23
53
 
54
+ strategy:
55
+ matrix:
56
+ python-version: ["3.11", "3.12", "3.13"]
57
+ node-version: ["18", "20"]
58
+
24
59
  steps:
25
60
  - name: Checkout code
26
61
  uses: actions/checkout@v4
27
62
  with:
28
63
  fetch-depth: 0 # Fetch all history for comprehensive validation
29
64
 
30
- - name: Setup Python
65
+ - name: Setup Python (if Python project)
66
+ if: needs.detect-language.outputs.is-python == 'true'
31
67
  uses: actions/setup-python@v5
32
68
  with:
33
- python-version: '3.13'
69
+ python-version: ${{ matrix.python-version }}
34
70
 
35
- - name: Install uv
36
- uses: astral-sh/setup-uv@v5
71
+ - name: Setup Node.js (if JavaScript project)
72
+ if: needs.detect-language.outputs.is-javascript == 'true'
73
+ uses: actions/setup-node@v4
37
74
  with:
38
- version: "latest"
75
+ node-version: ${{ matrix.node-version }}
76
+
77
+ - name: Install dependencies (Python)
78
+ if: needs.detect-language.outputs.is-python == 'true'
79
+ run: |
80
+ python -m pip install --upgrade pip
81
+ pip install -e .
82
+ pip install requests
39
83
 
40
- - name: Install dependencies
84
+ - name: Install dependencies (JavaScript)
85
+ if: needs.detect-language.outputs.is-javascript == 'true'
41
86
  run: |
42
- uv pip install --system -e .
43
- uv pip install --system requests
87
+ npm ci
88
+ npm install requests 2>/dev/null || true
44
89
 
45
90
  - name: Get PR number
46
91
  id: pr