moai-adk 0.34.0__py3-none-any.whl → 1.1.0__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.
Files changed (524) hide show
  1. moai_adk/__main__.py +136 -5
  2. moai_adk/astgrep/__init__.py +37 -0
  3. moai_adk/astgrep/analyzer.py +522 -0
  4. moai_adk/astgrep/models.py +124 -0
  5. moai_adk/astgrep/rules.py +179 -0
  6. moai_adk/cli/commands/analyze.py +11 -2
  7. moai_adk/cli/commands/doctor.py +7 -1
  8. moai_adk/cli/commands/init.py +321 -11
  9. moai_adk/cli/commands/language.py +7 -1
  10. moai_adk/cli/commands/rank.py +449 -0
  11. moai_adk/cli/commands/status.py +7 -1
  12. moai_adk/cli/commands/switch.py +325 -0
  13. moai_adk/cli/commands/update.py +296 -23
  14. moai_adk/cli/prompts/init_prompts.py +362 -66
  15. moai_adk/cli/prompts/translations/__init__.py +573 -0
  16. moai_adk/cli/ui/prompts.py +61 -2
  17. moai_adk/cli/worktree/cli.py +106 -1
  18. moai_adk/cli/worktree/manager.py +155 -0
  19. moai_adk/core/config/unified.py +244 -63
  20. moai_adk/core/credentials.py +264 -0
  21. moai_adk/core/error_recovery_system.py +22 -4
  22. moai_adk/core/git/conflict_detector.py +10 -1
  23. moai_adk/core/git/event_detector.py +16 -5
  24. moai_adk/core/integration/engine.py +2 -2
  25. moai_adk/core/integration/integration_tester.py +5 -5
  26. moai_adk/core/language_config_resolver.py +9 -3
  27. moai_adk/core/merge/analyzer.py +509 -324
  28. moai_adk/core/migration/alfred_to_moai_migrator.py +7 -1
  29. moai_adk/core/migration/backup_manager.py +54 -4
  30. moai_adk/core/migration/file_migrator.py +174 -2
  31. moai_adk/core/migration/interactive_checkbox_ui.py +42 -31
  32. moai_adk/core/migration/version_detector.py +123 -19
  33. moai_adk/core/migration/version_migrator.py +44 -9
  34. moai_adk/core/model_allocator.py +241 -0
  35. moai_adk/core/project/backup_utils.py +12 -2
  36. moai_adk/core/project/initializer.py +44 -87
  37. moai_adk/core/project/phase_executor.py +95 -33
  38. moai_adk/core/project/validator.py +16 -1
  39. moai_adk/core/quality/trust_checker.py +30 -10
  40. moai_adk/core/rollback_manager.py +60 -25
  41. moai_adk/core/template/backup.py +88 -6
  42. moai_adk/core/template/config.py +33 -9
  43. moai_adk/core/template/merger.py +34 -8
  44. moai_adk/core/template/processor.py +334 -11
  45. moai_adk/core/template_engine.py +10 -1
  46. moai_adk/core/template_variable_synchronizer.py +16 -2
  47. moai_adk/core/version_sync.py +54 -6
  48. moai_adk/foundation/__init__.py +1 -20
  49. moai_adk/foundation/testing.py +1 -1
  50. moai_adk/loop/__init__.py +54 -0
  51. moai_adk/loop/controller.py +305 -0
  52. moai_adk/loop/feedback.py +230 -0
  53. moai_adk/loop/state.py +209 -0
  54. moai_adk/loop/storage.py +220 -0
  55. moai_adk/lsp/__init__.py +70 -0
  56. moai_adk/lsp/client.py +320 -0
  57. moai_adk/lsp/models.py +261 -0
  58. moai_adk/lsp/protocol.py +404 -0
  59. moai_adk/lsp/server_manager.py +248 -0
  60. moai_adk/project/configuration.py +8 -1
  61. moai_adk/py.typed +0 -0
  62. moai_adk/ralph/__init__.py +37 -0
  63. moai_adk/ralph/engine.py +307 -0
  64. moai_adk/rank/__init__.py +21 -0
  65. moai_adk/rank/auth.py +425 -0
  66. moai_adk/rank/client.py +557 -0
  67. moai_adk/rank/config.py +147 -0
  68. moai_adk/rank/hook.py +1503 -0
  69. moai_adk/rank/py.typed +0 -0
  70. moai_adk/statusline/__init__.py +3 -0
  71. moai_adk/statusline/enhanced_output_style_detector.py +5 -5
  72. moai_adk/statusline/main.py +20 -1
  73. moai_adk/statusline/memory_collector.py +268 -0
  74. moai_adk/statusline/renderer.py +54 -38
  75. moai_adk/tag_system/__init__.py +48 -0
  76. moai_adk/tag_system/atomic_ops.py +117 -0
  77. moai_adk/tag_system/linkage.py +335 -0
  78. moai_adk/tag_system/parser.py +176 -0
  79. moai_adk/tag_system/validator.py +200 -0
  80. moai_adk/templates/.claude/agents/moai/builder-agent.md +19 -3
  81. moai_adk/templates/.claude/agents/moai/builder-command.md +62 -16
  82. moai_adk/templates/.claude/agents/moai/builder-plugin.md +763 -0
  83. moai_adk/templates/.claude/agents/moai/builder-skill.md +21 -5
  84. moai_adk/templates/.claude/agents/moai/expert-backend.md +103 -39
  85. moai_adk/templates/.claude/agents/moai/expert-debug.md +9 -3
  86. moai_adk/templates/.claude/agents/moai/expert-devops.md +16 -14
  87. moai_adk/templates/.claude/agents/moai/expert-frontend.md +45 -31
  88. moai_adk/templates/.claude/agents/moai/expert-performance.md +13 -9
  89. moai_adk/templates/.claude/agents/moai/expert-refactoring.md +228 -0
  90. moai_adk/templates/.claude/agents/moai/expert-security.md +19 -3
  91. moai_adk/templates/.claude/agents/moai/expert-testing.md +13 -9
  92. moai_adk/templates/.claude/agents/moai/manager-claude-code.md +8 -2
  93. moai_adk/templates/.claude/agents/moai/manager-docs.md +10 -5
  94. moai_adk/templates/.claude/agents/moai/manager-git.md +99 -27
  95. moai_adk/templates/.claude/agents/moai/manager-project.md +87 -7
  96. moai_adk/templates/.claude/agents/moai/manager-quality.md +22 -5
  97. moai_adk/templates/.claude/agents/moai/manager-spec.md +8 -2
  98. moai_adk/templates/.claude/agents/moai/manager-strategy.md +45 -14
  99. moai_adk/templates/.claude/agents/moai/manager-tdd.md +16 -3
  100. moai_adk/templates/.claude/commands/moai/0-project.md +239 -1185
  101. moai_adk/templates/.claude/commands/moai/1-plan.md +383 -363
  102. moai_adk/templates/.claude/commands/moai/2-run.md +254 -347
  103. moai_adk/templates/.claude/commands/moai/3-sync.md +174 -100
  104. moai_adk/templates/.claude/commands/moai/9-feedback.md +49 -33
  105. moai_adk/templates/.claude/commands/moai/alfred.md +339 -0
  106. moai_adk/templates/.claude/commands/moai/cancel-loop.md +163 -0
  107. moai_adk/templates/.claude/commands/moai/fix.md +264 -0
  108. moai_adk/templates/.claude/commands/moai/loop.md +363 -0
  109. moai_adk/templates/.claude/hooks/moai/lib/README.md +143 -0
  110. moai_adk/templates/.claude/hooks/moai/lib/__init__.py +37 -81
  111. moai_adk/templates/.claude/hooks/moai/lib/alfred_detector.py +105 -0
  112. moai_adk/templates/.claude/hooks/moai/lib/atomic_write.py +122 -0
  113. moai_adk/templates/.claude/hooks/moai/lib/checkpoint.py +4 -1
  114. moai_adk/templates/.claude/hooks/moai/lib/common.py +35 -5
  115. moai_adk/templates/.claude/hooks/moai/lib/config.py +376 -0
  116. moai_adk/templates/.claude/hooks/moai/lib/config_manager.py +24 -28
  117. moai_adk/templates/.claude/hooks/moai/lib/config_validator.py +14 -14
  118. moai_adk/templates/.claude/hooks/moai/lib/enhanced_output_style_detector.py +372 -0
  119. moai_adk/templates/.claude/hooks/moai/lib/exceptions.py +171 -0
  120. moai_adk/templates/.claude/hooks/moai/lib/file_utils.py +95 -0
  121. moai_adk/templates/.claude/hooks/moai/lib/git_collector.py +190 -0
  122. moai_adk/templates/.claude/hooks/moai/lib/git_operations_manager.py +15 -13
  123. moai_adk/templates/.claude/hooks/moai/lib/language_detector.py +298 -0
  124. moai_adk/templates/.claude/hooks/moai/lib/language_validator.py +125 -25
  125. moai_adk/templates/.claude/hooks/moai/lib/main.py +341 -0
  126. moai_adk/templates/.claude/hooks/moai/lib/memory_collector.py +268 -0
  127. moai_adk/templates/.claude/hooks/moai/lib/metrics_tracker.py +78 -0
  128. moai_adk/templates/.claude/hooks/moai/lib/models.py +9 -7
  129. moai_adk/templates/.claude/hooks/moai/lib/path_utils.py +204 -13
  130. moai_adk/templates/.claude/hooks/moai/lib/project.py +23 -14
  131. moai_adk/templates/.claude/hooks/moai/lib/renderer.py +359 -0
  132. moai_adk/templates/.claude/hooks/moai/lib/tag_linkage.py +333 -0
  133. moai_adk/templates/.claude/hooks/moai/lib/tag_parser.py +176 -0
  134. moai_adk/templates/.claude/hooks/moai/lib/tag_validator.py +200 -0
  135. moai_adk/templates/.claude/hooks/moai/lib/timeout.py +5 -5
  136. moai_adk/templates/.claude/hooks/moai/lib/tool_registry.py +896 -0
  137. moai_adk/templates/.claude/hooks/moai/lib/unified_timeout_manager.py +30 -18
  138. moai_adk/templates/.claude/hooks/moai/lib/update_checker.py +129 -0
  139. moai_adk/templates/.claude/hooks/moai/lib/version_reader.py +741 -0
  140. moai_adk/templates/.claude/hooks/moai/post_tool__ast_grep_scan.py +276 -0
  141. moai_adk/templates/.claude/hooks/moai/post_tool__code_formatter.py +255 -0
  142. moai_adk/templates/.claude/hooks/moai/post_tool__coverage_guard.py +325 -0
  143. moai_adk/templates/.claude/hooks/moai/post_tool__linter.py +315 -0
  144. moai_adk/templates/.claude/hooks/moai/post_tool__lsp_diagnostic.py +508 -0
  145. moai_adk/templates/.claude/hooks/moai/pre_commit__tag_validator.py +287 -0
  146. moai_adk/templates/.claude/hooks/moai/pre_tool__security_guard.py +268 -0
  147. moai_adk/templates/.claude/hooks/moai/pre_tool__tdd_enforcer.py +208 -0
  148. moai_adk/templates/.claude/hooks/moai/session_end__auto_cleanup.py +93 -61
  149. moai_adk/templates/.claude/hooks/moai/session_end__rank_submit.py +69 -0
  150. moai_adk/templates/.claude/hooks/moai/session_start__show_project_info.py +165 -70
  151. moai_adk/templates/.claude/hooks/moai/shared/utils/announcement_translator.py +206 -0
  152. moai_adk/templates/.claude/hooks/moai/stop__loop_controller.py +621 -0
  153. moai_adk/templates/.claude/output-styles/moai/alfred.md +758 -0
  154. moai_adk/templates/.claude/output-styles/moai/r2d2.md +86 -3
  155. moai_adk/templates/.claude/output-styles/moai/yoda.md +2 -2
  156. moai_adk/templates/.claude/settings.json +154 -77
  157. moai_adk/templates/.claude/skills/moai-docs-generation/SKILL.md +252 -198
  158. moai_adk/templates/.claude/skills/moai-docs-generation/examples.md +169 -323
  159. moai_adk/templates/.claude/skills/moai-docs-generation/modules/README.md +39 -27
  160. moai_adk/templates/.claude/skills/moai-docs-generation/modules/api-documentation.md +115 -125
  161. moai_adk/templates/.claude/skills/moai-docs-generation/modules/code-documentation.md +150 -150
  162. moai_adk/templates/.claude/skills/moai-docs-generation/modules/multi-format-output.md +182 -175
  163. moai_adk/templates/.claude/skills/moai-docs-generation/modules/user-guides.md +198 -138
  164. moai_adk/templates/.claude/skills/moai-docs-generation/reference.md +226 -320
  165. moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +43 -222
  166. moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +75 -219
  167. moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +103 -463
  168. moai_adk/templates/.claude/skills/moai-domain-frontend/modules/component-architecture.md +723 -0
  169. moai_adk/templates/.claude/skills/moai-domain-frontend/modules/nextjs16-patterns.md +713 -0
  170. moai_adk/templates/.claude/skills/moai-domain-frontend/modules/performance-optimization.md +694 -0
  171. moai_adk/templates/.claude/skills/moai-domain-frontend/modules/react19-patterns.md +591 -0
  172. moai_adk/templates/.claude/skills/moai-domain-frontend/modules/state-management.md +680 -0
  173. moai_adk/templates/.claude/skills/moai-domain-frontend/modules/vue35-patterns.md +802 -0
  174. moai_adk/templates/.claude/skills/moai-domain-uiux/SKILL.md +118 -339
  175. moai_adk/templates/.claude/skills/moai-formats-data/SKILL.md +74 -377
  176. moai_adk/templates/.claude/skills/moai-formats-data/modules/README.md +299 -70
  177. moai_adk/templates/.claude/skills/moai-foundation-claude/SKILL.md +205 -182
  178. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/advanced-agent-patterns.md +370 -0
  179. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-cli-reference-official.md +420 -0
  180. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-custom-slash-commands-official.md +32 -22
  181. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-devcontainers-official.md +381 -0
  182. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-discover-plugins-official.md +379 -0
  183. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-headless-official.md +378 -0
  184. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-hooks-official.md +110 -0
  185. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-plugin-marketplaces-official.md +308 -0
  186. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-plugins-official.md +640 -0
  187. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-sandboxing-official.md +282 -0
  188. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-skills-official.md +425 -71
  189. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-statusline-official.md +293 -0
  190. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-sub-agents-official.md +325 -143
  191. moai_adk/templates/.claude/skills/moai-foundation-context/SKILL.md +96 -316
  192. moai_adk/templates/.claude/skills/moai-foundation-core/SKILL.md +116 -294
  193. moai_adk/templates/.claude/skills/moai-foundation-core/modules/delegation-advanced.md +279 -0
  194. moai_adk/templates/.claude/skills/moai-foundation-core/modules/delegation-implementation.md +267 -0
  195. moai_adk/templates/.claude/skills/moai-foundation-core/modules/delegation-patterns.md +121 -650
  196. moai_adk/templates/.claude/skills/moai-foundation-core/modules/patterns.md +22 -0
  197. moai_adk/templates/.claude/skills/moai-foundation-core/modules/spec-ears-format.md +200 -0
  198. moai_adk/templates/.claude/skills/moai-foundation-core/modules/spec-first-tdd.md +37 -730
  199. moai_adk/templates/.claude/skills/moai-foundation-core/modules/spec-tdd-implementation.md +275 -0
  200. moai_adk/templates/.claude/skills/moai-foundation-core/modules/trust-5-framework.md +77 -819
  201. moai_adk/templates/.claude/skills/moai-foundation-core/modules/trust-5-implementation.md +244 -0
  202. moai_adk/templates/.claude/skills/moai-foundation-core/modules/trust-5-validation.md +219 -0
  203. moai_adk/templates/.claude/skills/moai-foundation-philosopher/SKILL.md +14 -18
  204. moai_adk/templates/.claude/skills/moai-foundation-quality/SKILL.md +86 -270
  205. moai_adk/templates/.claude/skills/moai-framework-electron/SKILL.md +288 -0
  206. moai_adk/templates/.claude/skills/moai-framework-electron/examples.md +2082 -0
  207. moai_adk/templates/.claude/skills/moai-framework-electron/reference.md +1649 -0
  208. moai_adk/templates/.claude/skills/moai-lang-cpp/SKILL.md +76 -582
  209. moai_adk/templates/.claude/skills/moai-lang-cpp/examples.md +1239 -0
  210. moai_adk/templates/.claude/skills/moai-lang-cpp/modules/advanced-patterns.md +401 -0
  211. moai_adk/templates/.claude/skills/moai-lang-cpp/reference.md +1136 -0
  212. moai_adk/templates/.claude/skills/moai-lang-csharp/SKILL.md +82 -436
  213. moai_adk/templates/.claude/skills/moai-lang-csharp/examples.md +585 -0
  214. moai_adk/templates/.claude/skills/moai-lang-csharp/modules/aspnet-core.md +627 -0
  215. moai_adk/templates/.claude/skills/moai-lang-csharp/modules/blazor-components.md +767 -0
  216. moai_adk/templates/.claude/skills/moai-lang-csharp/modules/cqrs-validation.md +626 -0
  217. moai_adk/templates/.claude/skills/moai-lang-csharp/modules/csharp12-features.md +580 -0
  218. moai_adk/templates/.claude/skills/moai-lang-csharp/modules/efcore-patterns.md +622 -0
  219. moai_adk/templates/.claude/skills/moai-lang-csharp/reference.md +403 -0
  220. moai_adk/templates/.claude/skills/moai-lang-elixir/SKILL.md +65 -542
  221. moai_adk/templates/.claude/skills/moai-lang-elixir/examples.md +1171 -0
  222. moai_adk/templates/.claude/skills/moai-lang-elixir/modules/advanced-patterns.md +531 -0
  223. moai_adk/templates/.claude/skills/moai-lang-elixir/reference.md +889 -0
  224. moai_adk/templates/.claude/skills/moai-lang-flutter/SKILL.md +32 -405
  225. moai_adk/templates/.claude/skills/moai-lang-go/SKILL.md +114 -293
  226. moai_adk/templates/.claude/skills/moai-lang-java/SKILL.md +83 -307
  227. moai_adk/templates/.claude/skills/moai-lang-javascript/SKILL.md +179 -0
  228. moai_adk/templates/.claude/skills/moai-lang-javascript/examples.md +973 -0
  229. moai_adk/templates/.claude/skills/moai-lang-javascript/reference.md +1543 -0
  230. moai_adk/templates/.claude/skills/moai-lang-kotlin/SKILL.md +42 -279
  231. moai_adk/templates/.claude/skills/moai-lang-php/SKILL.md +94 -556
  232. moai_adk/templates/.claude/skills/moai-lang-php/examples.md +1608 -0
  233. moai_adk/templates/.claude/skills/moai-lang-php/modules/advanced-patterns.md +538 -0
  234. moai_adk/templates/.claude/skills/moai-lang-php/reference.md +1323 -0
  235. moai_adk/templates/.claude/skills/moai-lang-python/SKILL.md +108 -358
  236. moai_adk/templates/.claude/skills/moai-lang-r/SKILL.md +84 -482
  237. moai_adk/templates/.claude/skills/moai-lang-r/examples.md +1154 -0
  238. moai_adk/templates/.claude/skills/moai-lang-r/modules/advanced-patterns.md +489 -0
  239. moai_adk/templates/.claude/skills/moai-lang-r/reference.md +1087 -0
  240. moai_adk/templates/.claude/skills/moai-lang-ruby/SKILL.md +106 -610
  241. moai_adk/templates/.claude/skills/moai-lang-ruby/examples.md +1106 -0
  242. moai_adk/templates/.claude/skills/moai-lang-ruby/modules/advanced-patterns.md +309 -0
  243. moai_adk/templates/.claude/skills/moai-lang-ruby/modules/testing-patterns.md +306 -0
  244. moai_adk/templates/.claude/skills/moai-lang-ruby/reference.md +1024 -0
  245. moai_adk/templates/.claude/skills/moai-lang-rust/SKILL.md +51 -265
  246. moai_adk/templates/.claude/skills/moai-lang-scala/SKILL.md +106 -442
  247. moai_adk/templates/.claude/skills/moai-lang-scala/modules/akka-actors.md +479 -0
  248. moai_adk/templates/.claude/skills/moai-lang-scala/modules/cats-effect.md +489 -0
  249. moai_adk/templates/.claude/skills/moai-lang-scala/modules/functional-programming.md +460 -0
  250. moai_adk/templates/.claude/skills/moai-lang-scala/modules/spark-data.md +498 -0
  251. moai_adk/templates/.claude/skills/moai-lang-scala/modules/zio-patterns.md +541 -0
  252. moai_adk/templates/.claude/skills/moai-lang-swift/SKILL.md +88 -457
  253. moai_adk/templates/.claude/skills/moai-lang-swift/modules/combine-reactive.md +256 -0
  254. moai_adk/templates/.claude/skills/moai-lang-swift/modules/concurrency.md +270 -0
  255. moai_adk/templates/.claude/skills/moai-lang-swift/modules/swift6-features.md +265 -0
  256. moai_adk/templates/.claude/skills/moai-lang-swift/modules/swiftui-patterns.md +314 -0
  257. moai_adk/templates/.claude/skills/moai-lang-typescript/SKILL.md +75 -283
  258. moai_adk/templates/.claude/skills/moai-library-mermaid/SKILL.md +97 -252
  259. moai_adk/templates/.claude/skills/moai-library-nextra/SKILL.md +64 -240
  260. moai_adk/templates/.claude/skills/moai-library-nextra/modules/advanced-patterns.md +331 -12
  261. moai_adk/templates/.claude/skills/moai-library-nextra/modules/configuration.md +330 -37
  262. moai_adk/templates/.claude/skills/moai-library-shadcn/SKILL.md +90 -287
  263. moai_adk/templates/.claude/skills/moai-platform-auth0/SKILL.md +200 -206
  264. moai_adk/templates/.claude/skills/moai-platform-auth0/examples.md +2446 -0
  265. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/adaptive-mfa.md +233 -0
  266. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/akamai-integration.md +214 -0
  267. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/application-credentials.md +280 -0
  268. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/attack-protection-log-events.md +224 -0
  269. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/attack-protection-overview.md +140 -0
  270. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/bot-detection.md +144 -0
  271. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/breached-password-detection.md +187 -0
  272. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/brute-force-protection.md +189 -0
  273. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/certifications.md +282 -0
  274. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/compliance-overview.md +263 -0
  275. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/continuous-session-protection.md +307 -0
  276. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/customize-mfa.md +177 -0
  277. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/dpop-implementation.md +283 -0
  278. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/fapi-implementation.md +259 -0
  279. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/gdpr-compliance.md +313 -0
  280. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/guardian-configuration.md +269 -0
  281. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/highly-regulated-identity.md +272 -0
  282. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/jwt-fundamentals.md +248 -0
  283. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/mdl-verification.md +210 -0
  284. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/mfa-api-management.md +278 -0
  285. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/mfa-factors.md +226 -0
  286. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/mfa-overview.md +174 -0
  287. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/mtls-sender-constraining.md +316 -0
  288. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/ropg-flow-mfa.md +216 -0
  289. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/security-center.md +325 -0
  290. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/security-guidance.md +277 -0
  291. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/state-parameters.md +177 -0
  292. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/step-up-authentication.md +251 -0
  293. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/suspicious-ip-throttling.md +240 -0
  294. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/tenant-access-control.md +179 -0
  295. moai_adk/templates/.claude/skills/moai-platform-auth0/modules/webauthn-fido.md +235 -0
  296. moai_adk/templates/.claude/skills/moai-platform-auth0/reference.md +224 -0
  297. moai_adk/templates/.claude/skills/moai-platform-clerk/SKILL.md +75 -330
  298. moai_adk/templates/.claude/skills/moai-platform-clerk/examples.md +1426 -0
  299. moai_adk/templates/.claude/skills/moai-platform-clerk/modules/advanced-patterns.md +417 -0
  300. moai_adk/templates/.claude/skills/moai-platform-clerk/reference.md +273 -0
  301. moai_adk/templates/.claude/skills/moai-platform-convex/SKILL.md +100 -340
  302. moai_adk/templates/.claude/skills/moai-platform-convex/examples.md +506 -0
  303. moai_adk/templates/.claude/skills/moai-platform-convex/modules/auth-integration.md +421 -0
  304. moai_adk/templates/.claude/skills/moai-platform-convex/modules/file-storage.md +474 -0
  305. moai_adk/templates/.claude/skills/moai-platform-convex/modules/reactive-queries.md +302 -0
  306. moai_adk/templates/.claude/skills/moai-platform-convex/modules/server-functions.md +452 -0
  307. moai_adk/templates/.claude/skills/moai-platform-convex/reference.md +385 -0
  308. moai_adk/templates/.claude/skills/moai-platform-firebase-auth/SKILL.md +113 -326
  309. moai_adk/templates/.claude/skills/moai-platform-firebase-auth/examples.md +514 -0
  310. moai_adk/templates/.claude/skills/moai-platform-firebase-auth/modules/custom-claims.md +374 -0
  311. moai_adk/templates/.claude/skills/moai-platform-firebase-auth/modules/phone-auth.md +372 -0
  312. moai_adk/templates/.claude/skills/moai-platform-firebase-auth/modules/social-auth.md +339 -0
  313. moai_adk/templates/.claude/skills/moai-platform-firebase-auth/reference.md +382 -0
  314. moai_adk/templates/.claude/skills/moai-platform-firestore/SKILL.md +71 -302
  315. moai_adk/templates/.claude/skills/moai-platform-firestore/examples.md +445 -0
  316. moai_adk/templates/.claude/skills/moai-platform-firestore/modules/offline-cache.md +392 -0
  317. moai_adk/templates/.claude/skills/moai-platform-firestore/modules/realtime-listeners.md +441 -0
  318. moai_adk/templates/.claude/skills/moai-platform-firestore/modules/security-rules.md +352 -0
  319. moai_adk/templates/.claude/skills/moai-platform-firestore/modules/transactions.md +452 -0
  320. moai_adk/templates/.claude/skills/moai-platform-firestore/reference.md +322 -0
  321. moai_adk/templates/.claude/skills/moai-platform-neon/SKILL.md +101 -412
  322. moai_adk/templates/.claude/skills/moai-platform-neon/examples.md +470 -0
  323. moai_adk/templates/.claude/skills/moai-platform-neon/modules/auto-scaling.md +349 -0
  324. moai_adk/templates/.claude/skills/moai-platform-neon/modules/branching-workflows.md +354 -0
  325. moai_adk/templates/.claude/skills/moai-platform-neon/modules/connection-pooling.md +412 -0
  326. moai_adk/templates/.claude/skills/moai-platform-neon/modules/pitr-backups.md +458 -0
  327. moai_adk/templates/.claude/skills/moai-platform-neon/reference.md +272 -0
  328. moai_adk/templates/.claude/skills/moai-platform-railway/SKILL.md +96 -327
  329. moai_adk/templates/.claude/skills/moai-platform-railway/examples.md +539 -0
  330. moai_adk/templates/.claude/skills/moai-platform-railway/modules/docker-deployment.md +261 -0
  331. moai_adk/templates/.claude/skills/moai-platform-railway/modules/multi-service.md +291 -0
  332. moai_adk/templates/.claude/skills/moai-platform-railway/modules/networking-domains.md +338 -0
  333. moai_adk/templates/.claude/skills/moai-platform-railway/modules/volumes-storage.md +353 -0
  334. moai_adk/templates/.claude/skills/moai-platform-railway/reference.md +374 -0
  335. moai_adk/templates/.claude/skills/moai-platform-supabase/SKILL.md +103 -428
  336. moai_adk/templates/.claude/skills/moai-platform-supabase/examples.md +502 -0
  337. moai_adk/templates/.claude/skills/moai-platform-supabase/modules/auth-integration.md +384 -0
  338. moai_adk/templates/.claude/skills/moai-platform-supabase/modules/edge-functions.md +371 -0
  339. moai_adk/templates/.claude/skills/moai-platform-supabase/modules/postgresql-pgvector.md +231 -0
  340. moai_adk/templates/.claude/skills/moai-platform-supabase/modules/realtime-presence.md +354 -0
  341. moai_adk/templates/.claude/skills/moai-platform-supabase/modules/row-level-security.md +286 -0
  342. moai_adk/templates/.claude/skills/moai-platform-supabase/modules/storage-cdn.md +319 -0
  343. moai_adk/templates/.claude/skills/moai-platform-supabase/modules/typescript-patterns.md +453 -0
  344. moai_adk/templates/.claude/skills/moai-platform-supabase/reference.md +284 -0
  345. moai_adk/templates/.claude/skills/moai-platform-vercel/SKILL.md +96 -446
  346. moai_adk/templates/.claude/skills/moai-platform-vercel/examples.md +502 -0
  347. moai_adk/templates/.claude/skills/moai-platform-vercel/modules/analytics-speed.md +348 -0
  348. moai_adk/templates/.claude/skills/moai-platform-vercel/modules/deployment-config.md +344 -0
  349. moai_adk/templates/.claude/skills/moai-platform-vercel/modules/edge-functions.md +222 -0
  350. moai_adk/templates/.claude/skills/moai-platform-vercel/modules/isr-caching.md +306 -0
  351. moai_adk/templates/.claude/skills/moai-platform-vercel/modules/kv-storage.md +399 -0
  352. moai_adk/templates/.claude/skills/moai-platform-vercel/reference.md +360 -0
  353. moai_adk/templates/.claude/skills/moai-tool-ast-grep/SKILL.md +193 -0
  354. moai_adk/templates/.claude/skills/moai-tool-ast-grep/examples.md +1099 -0
  355. moai_adk/templates/.claude/skills/moai-tool-ast-grep/modules/language-specific.md +307 -0
  356. moai_adk/templates/.claude/skills/moai-tool-ast-grep/modules/pattern-syntax.md +237 -0
  357. moai_adk/templates/.claude/skills/moai-tool-ast-grep/modules/refactoring-patterns.md +260 -0
  358. moai_adk/templates/.claude/skills/moai-tool-ast-grep/modules/security-rules.md +239 -0
  359. moai_adk/templates/.claude/skills/moai-tool-ast-grep/reference.md +288 -0
  360. moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/languages/go.yml +90 -0
  361. moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/languages/python.yml +101 -0
  362. moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/languages/typescript.yml +83 -0
  363. moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/quality/complexity-check.yml +94 -0
  364. moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/quality/deprecated-apis.yml +84 -0
  365. moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/security/secrets-detection.yml +89 -0
  366. moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/security/sql-injection.yml +45 -0
  367. moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/security/xss-prevention.yml +50 -0
  368. moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/sgconfig.yml +54 -0
  369. moai_adk/templates/.claude/skills/moai-workflow-jit-docs/SKILL.md +225 -423
  370. moai_adk/templates/.claude/skills/moai-workflow-loop/SKILL.md +197 -0
  371. moai_adk/templates/.claude/skills/moai-workflow-loop/examples.md +1063 -0
  372. moai_adk/templates/.claude/skills/moai-workflow-loop/reference.md +1414 -0
  373. moai_adk/templates/.claude/skills/moai-workflow-project/SKILL.md +211 -314
  374. moai_adk/templates/.claude/skills/moai-workflow-project/schemas/tab_schema.json +15 -43
  375. moai_adk/templates/.claude/skills/moai-workflow-spec/SKILL.md +119 -316
  376. moai_adk/templates/.claude/skills/moai-workflow-spec/modules/advanced-patterns.md +237 -0
  377. moai_adk/templates/.claude/skills/moai-workflow-templates/SKILL.md +96 -203
  378. moai_adk/templates/.claude/skills/moai-workflow-testing/SKILL.md +201 -388
  379. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/README.md +52 -3
  380. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/ai-debugging.md +263 -806
  381. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/context7-integration.md +286 -0
  382. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/review-workflows.md +500 -0
  383. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/relevance-analysis.md +154 -0
  384. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/safety-analysis.md +148 -0
  385. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/scoring-algorithms.md +196 -0
  386. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/timeliness-analysis.md +168 -0
  387. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/truthfulness-analysis.md +136 -0
  388. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/usability-analysis.md +153 -0
  389. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework.md +257 -0
  390. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review.md +191 -1344
  391. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/code-review/analysis-patterns.md +340 -0
  392. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/code-review/core-classes.md +299 -0
  393. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/code-review/tool-integration.md +380 -0
  394. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/debugging/debugging-workflows.md +451 -0
  395. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/debugging/error-analysis.md +442 -0
  396. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance/optimization-patterns.md +473 -0
  397. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance/profiling-techniques.md +481 -0
  398. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization/ai-optimization.md +241 -0
  399. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization/bottleneck-detection.md +397 -0
  400. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization/optimization-plan.md +315 -0
  401. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization/profiler-core.md +277 -0
  402. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization/real-time-monitoring.md +187 -0
  403. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization.md +287 -1194
  404. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/quality-metrics.md +415 -0
  405. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/refactoring/ai-workflows.md +620 -0
  406. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/refactoring/patterns.md +692 -0
  407. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/security-analysis.md +429 -0
  408. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/smart-refactoring.md +262 -1192
  409. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/static-analysis.md +438 -0
  410. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd/core-classes.md +397 -0
  411. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7/advanced-features.md +494 -0
  412. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7/red-green-refactor.md +316 -0
  413. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7/test-generation.md +471 -0
  414. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7/test-patterns.md +371 -0
  415. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7.md +227 -1222
  416. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/trust5-validation.md +428 -0
  417. moai_adk/templates/.claude/skills/moai-workflow-worktree/SKILL.md +228 -0
  418. moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/integration-patterns.md +149 -0
  419. moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/moai-adk-integration.md +245 -0
  420. moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/parallel-advanced.md +310 -0
  421. moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/parallel-development.md +202 -0
  422. moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/parallel-workflows.md +302 -0
  423. moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/registry-architecture.md +271 -0
  424. moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/resource-optimization.md +300 -0
  425. moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/tools-integration.md +280 -0
  426. moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/troubleshooting.md +397 -0
  427. moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/worktree-commands.md +296 -0
  428. moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/worktree-management.md +217 -0
  429. moai_adk/templates/.git-hooks/pre-push +162 -59
  430. moai_adk/templates/.github/workflows/ci-universal.yml +934 -133
  431. moai_adk/templates/.gitignore +65 -107
  432. moai_adk/templates/.lsp.json +152 -0
  433. moai_adk/templates/.mcp.json +2 -20
  434. moai_adk/templates/.moai/announcements/en.json +18 -0
  435. moai_adk/templates/.moai/announcements/ja.json +18 -0
  436. moai_adk/templates/.moai/announcements/ko.json +18 -0
  437. moai_adk/templates/.moai/announcements/zh.json +18 -0
  438. moai_adk/templates/.moai/config/config.yaml +8 -2
  439. moai_adk/templates/.moai/config/multilingual-triggers.yaml +213 -0
  440. moai_adk/templates/.moai/config/sections/language.yaml +2 -2
  441. moai_adk/templates/.moai/config/sections/llm.yaml +41 -0
  442. moai_adk/templates/.moai/config/sections/pricing.yaml +30 -0
  443. moai_adk/templates/.moai/config/sections/project.yaml +2 -2
  444. moai_adk/templates/.moai/config/sections/quality.yaml +43 -5
  445. moai_adk/templates/.moai/config/sections/ralph.yaml +55 -0
  446. moai_adk/templates/.moai/config/sections/system.yaml +46 -1
  447. moai_adk/templates/.moai/config/sections/user.yaml +1 -1
  448. moai_adk/templates/.moai/config/statusline-config.yaml +2 -2
  449. moai_adk/templates/.moai/llm-configs/glm.json +22 -0
  450. moai_adk/templates/CLAUDE.ja.md +343 -0
  451. moai_adk/templates/CLAUDE.ko.md +343 -0
  452. moai_adk/templates/CLAUDE.md +200 -499
  453. moai_adk/templates/CLAUDE.zh.md +343 -0
  454. moai_adk/utils/common.py +37 -0
  455. moai_adk/version.py +1 -1
  456. moai_adk-1.1.0.dist-info/METADATA +2443 -0
  457. moai_adk-1.1.0.dist-info/RECORD +701 -0
  458. {moai_adk-0.34.0.dist-info → moai_adk-1.1.0.dist-info}/entry_points.txt +2 -0
  459. moai_adk-1.1.0.dist-info/licenses/LICENSE +99 -0
  460. moai_adk/core/config/auto_spec_config.py +0 -340
  461. moai_adk/core/hooks/post_tool_auto_spec_completion.py +0 -901
  462. moai_adk/core/spec/confidence_scoring.py +0 -680
  463. moai_adk/core/spec/ears_template_engine.py +0 -1247
  464. moai_adk/core/spec/quality_validator.py +0 -687
  465. moai_adk/templates/.claude/agents/moai/ai-nano-banana.md +0 -670
  466. moai_adk/templates/.claude/agents/moai/expert-database.md +0 -777
  467. moai_adk/templates/.claude/agents/moai/expert-uiux.md +0 -1041
  468. moai_adk/templates/.claude/agents/moai/mcp-context7.md +0 -458
  469. moai_adk/templates/.claude/agents/moai/mcp-figma.md +0 -1607
  470. moai_adk/templates/.claude/agents/moai/mcp-notion.md +0 -789
  471. moai_adk/templates/.claude/agents/moai/mcp-playwright.md +0 -469
  472. moai_adk/templates/.claude/agents/moai/mcp-sequential-thinking.md +0 -1032
  473. moai_adk/templates/.claude/skills/moai-ai-nano-banana/SKILL.md +0 -438
  474. moai_adk/templates/.claude/skills/moai-ai-nano-banana/examples.md +0 -431
  475. moai_adk/templates/.claude/skills/moai-domain-uiux/modules/design-system-tokens.md +0 -405
  476. moai_adk/templates/.claude/skills/moai-library-nextra/advanced-patterns.md +0 -336
  477. moai_adk/templates/.claude/skills/moai-mcp-figma/SKILL.md +0 -402
  478. moai_adk/templates/.claude/skills/moai-mcp-figma/advanced-patterns.md +0 -607
  479. moai_adk/templates/.claude/skills/moai-mcp-notion/SKILL.md +0 -300
  480. moai_adk/templates/.claude/skills/moai-mcp-notion/advanced-patterns.md +0 -537
  481. moai_adk/templates/.claude/skills/moai-workflow-project/__init__.py +0 -520
  482. moai_adk/templates/.claude/skills/moai-workflow-project/complete_workflow_demo_fixed.py +0 -574
  483. moai_adk/templates/.claude/skills/moai-workflow-project/examples/complete_project_setup.py +0 -317
  484. moai_adk/templates/.claude/skills/moai-workflow-project/examples/complete_workflow_demo.py +0 -663
  485. moai_adk/templates/.claude/skills/moai-workflow-project/examples/config-migration-example.json +0 -190
  486. moai_adk/templates/.claude/skills/moai-workflow-project/examples/question-examples.json +0 -175
  487. moai_adk/templates/.claude/skills/moai-workflow-project/examples/quick_start.py +0 -196
  488. moai_adk/templates/.claude/skills/moai-workflow-project/modules/__init__.py +0 -17
  489. moai_adk/templates/.claude/skills/moai-workflow-project/modules/advanced-patterns.md +0 -158
  490. moai_adk/templates/.claude/skills/moai-workflow-project/modules/ask_user_integration.py +0 -340
  491. moai_adk/templates/.claude/skills/moai-workflow-project/modules/batch_questions.py +0 -713
  492. moai_adk/templates/.claude/skills/moai-workflow-project/modules/config_manager.py +0 -538
  493. moai_adk/templates/.claude/skills/moai-workflow-project/modules/documentation_manager.py +0 -1336
  494. moai_adk/templates/.claude/skills/moai-workflow-project/modules/language_initializer.py +0 -730
  495. moai_adk/templates/.claude/skills/moai-workflow-project/modules/migration_manager.py +0 -608
  496. moai_adk/templates/.claude/skills/moai-workflow-project/modules/template_optimizer.py +0 -1005
  497. moai_adk/templates/.claude/skills/moai-workflow-project/test_integration_simple.py +0 -436
  498. moai_adk/templates/.claude/skills/moai-worktree/SKILL.md +0 -411
  499. moai_adk/templates/.claude/skills/moai-worktree/modules/integration-patterns.md +0 -982
  500. moai_adk/templates/.claude/skills/moai-worktree/modules/parallel-development.md +0 -778
  501. moai_adk/templates/.claude/skills/moai-worktree/modules/worktree-commands.md +0 -646
  502. moai_adk/templates/.claude/skills/moai-worktree/modules/worktree-management.md +0 -782
  503. moai_adk/templates/.moai/config/questions/_schema.yaml +0 -151
  504. moai_adk/templates/.moai/config/questions/tab0-init.yaml +0 -251
  505. moai_adk/templates/.moai/config/questions/tab1-user.yaml +0 -108
  506. moai_adk/templates/.moai/config/questions/tab2-project.yaml +0 -81
  507. moai_adk/templates/.moai/config/questions/tab3-git.yaml +0 -634
  508. moai_adk/templates/.moai/config/questions/tab4-quality.yaml +0 -170
  509. moai_adk/templates/.moai/config/questions/tab5-system.yaml +0 -87
  510. moai_adk/templates/.moai/scripts/setup-glm.py +0 -136
  511. moai_adk-0.34.0.dist-info/METADATA +0 -2999
  512. moai_adk-0.34.0.dist-info/RECORD +0 -463
  513. moai_adk-0.34.0.dist-info/licenses/LICENSE +0 -21
  514. /moai_adk/foundation/{git.py → git/__init__.py} +0 -0
  515. /moai_adk/templates/.claude/skills/moai-library-mermaid/{advanced-patterns.md → modules/advanced-patterns.md} +0 -0
  516. /moai_adk/templates/.claude/skills/moai-library-mermaid/{optimization.md → modules/optimization.md} +0 -0
  517. /moai_adk/templates/.claude/skills/moai-library-nextra/{optimization.md → modules/optimization.md} +0 -0
  518. /moai_adk/templates/.claude/skills/moai-workflow-jit-docs/{advanced-patterns.md → modules/advanced-patterns.md} +0 -0
  519. /moai_adk/templates/.claude/skills/moai-workflow-jit-docs/{optimization.md → modules/optimization.md} +0 -0
  520. /moai_adk/templates/.claude/skills/moai-workflow-testing/{advanced-patterns.md → modules/advanced-patterns.md} +0 -0
  521. /moai_adk/templates/.claude/skills/moai-workflow-testing/{optimization.md → modules/optimization.md} +0 -0
  522. /moai_adk/templates/.claude/skills/{moai-worktree → moai-workflow-worktree}/examples.md +0 -0
  523. /moai_adk/templates/.claude/skills/{moai-worktree → moai-workflow-worktree}/reference.md +0 -0
  524. {moai_adk-0.34.0.dist-info → moai_adk-1.1.0.dist-info}/WHEEL +0 -0
@@ -8,7 +8,9 @@ which migrations are needed.
8
8
  import json
9
9
  import logging
10
10
  from pathlib import Path
11
- from typing import Any, Dict
11
+ from typing import Any, Dict, Optional
12
+
13
+ import yaml
12
14
 
13
15
  logger = logging.getLogger(__name__)
14
16
 
@@ -24,26 +26,79 @@ class VersionDetector:
24
26
  project_root: Root directory of the project
25
27
  """
26
28
  self.project_root = Path(project_root)
29
+ # Legacy config paths (pre-v0.24.0)
27
30
  self.old_config = self.project_root / ".moai" / "config.json"
28
- self.new_config = self.project_root / ".moai" / "config" / "config.json"
31
+ # Intermediate config path (v0.24.0)
32
+ self.intermediate_config = self.project_root / ".moai" / "config" / "config.json"
33
+ # New section YAML paths (v0.36.0+)
34
+ self.sections_dir = self.project_root / ".moai" / "config" / "sections"
35
+ self.system_yaml = self.sections_dir / "system.yaml"
36
+ # Statusline config paths
29
37
  self.old_statusline = self.project_root / ".claude" / "statusline-config.yaml"
30
38
  self.new_statusline = self.project_root / ".moai" / "config" / "statusline-config.yaml"
31
39
 
40
+ def _read_yaml_file(self, file_path: Path) -> Optional[Dict[str, Any]]:
41
+ """
42
+ Read a YAML file safely
43
+
44
+ Args:
45
+ file_path: Path to the YAML file
46
+
47
+ Returns:
48
+ Dictionary with file contents, or None if read failed
49
+ """
50
+ try:
51
+ if file_path.exists():
52
+ with open(file_path, "r", encoding="utf-8") as f:
53
+ return yaml.safe_load(f)
54
+ except Exception as e:
55
+ logger.warning(f"Failed to read YAML file {file_path}: {e}")
56
+ return None
57
+
58
+ def _get_version_from_section_yaml(self) -> Optional[str]:
59
+ """
60
+ Get version from section YAML files (new format)
61
+
62
+ Returns:
63
+ Version string from system.yaml, or None if not found
64
+ """
65
+ system_data = self._read_yaml_file(self.system_yaml)
66
+ if system_data and "moai" in system_data:
67
+ version = system_data["moai"].get("version")
68
+ if version:
69
+ return str(version)
70
+ return None
71
+
32
72
  def detect_version(self) -> str:
33
73
  """
34
74
  Detect current project version based on file structure
35
75
 
36
76
  Returns:
37
- Version string (e.g., "0.23.0", "0.24.0+", "unknown")
77
+ Version string (e.g., "0.23.0", "0.24.0+", "0.36.0+", "unknown")
38
78
  """
39
- # Check if already migrated to v0.24.0+
40
- if self.new_config.exists():
41
- return "0.24.0+"
79
+ # Check if using new section YAML format (v0.36.0+)
80
+ if self.sections_dir.exists() and self.system_yaml.exists():
81
+ version = self._get_version_from_section_yaml()
82
+ if version:
83
+ return version
84
+ return "0.36.0+"
85
+
86
+ # Check if already migrated to v0.24.0+ (intermediate config.json)
87
+ if self.intermediate_config.exists():
88
+ try:
89
+ with open(self.intermediate_config, "r", encoding="utf-8") as f:
90
+ config_data = json.load(f)
91
+ if "moai_version" in config_data:
92
+ return config_data["moai_version"]
93
+ return "0.24.0+"
94
+ except Exception as e:
95
+ logger.warning(f"Failed to read intermediate config: {e}")
96
+ return "0.24.0+"
42
97
 
43
- # Check if v0.23.0 or earlier
98
+ # Check if v0.23.0 or earlier (old config.json at .moai/config.json)
44
99
  if self.old_config.exists():
45
100
  try:
46
- with open(self.old_config, "r") as f:
101
+ with open(self.old_config, "r", encoding="utf-8") as f:
47
102
  config_data = json.load(f)
48
103
  # Try to get version from config
49
104
  if "moai_version" in config_data:
@@ -67,10 +122,16 @@ class VersionDetector:
67
122
  logger.info("Unknown version, assuming no migration needed")
68
123
  return False
69
124
 
70
- if version == "0.24.0+":
71
- logger.info("Project already on v0.24.0+")
125
+ # Check if using new section YAML format (v0.36.0+)
126
+ if self.sections_dir.exists() and self.system_yaml.exists():
127
+ logger.info("Project already using section YAML format (v0.36.0+)")
72
128
  return False
73
129
 
130
+ if version == "0.24.0+":
131
+ logger.info("Project on v0.24.0+, may need migration to section YAML format")
132
+ # Could still need migration to section YAML format
133
+ return not self.sections_dir.exists()
134
+
74
135
  # Version 0.23.0 or earlier needs migration
75
136
  return True
76
137
 
@@ -83,24 +144,46 @@ class VersionDetector:
83
144
  {
84
145
  "move": [{"from": "...", "to": "..."}],
85
146
  "create": ["directory1", "directory2"],
86
- "cleanup": ["old_file1", "old_file2"]
147
+ "cleanup": ["old_file1", "old_file2"],
148
+ "convert": [{"from": "...", "to_dir": "...", "description": "..."}]
87
149
  }
88
150
  """
89
- plan: Dict[str, Any] = {"move": [], "create": [], "cleanup": []}
151
+ plan: Dict[str, Any] = {"move": [], "create": [], "cleanup": [], "convert": []}
90
152
 
91
153
  if not self.needs_migration():
92
154
  return plan
93
155
 
94
- # Create config directory
95
- plan["create"].append(str(self.project_root / ".moai" / "config"))
156
+ # Create config directory structure
157
+ config_dir = self.project_root / ".moai" / "config"
158
+ plan["create"].append(str(config_dir))
96
159
 
97
- # Move config.json
98
- if self.old_config.exists() and not self.new_config.exists():
160
+ # Create sections directory for new YAML format
161
+ if not self.sections_dir.exists():
162
+ plan["create"].append(str(self.sections_dir))
163
+
164
+ # Handle old config.json migration (pre-v0.24.0)
165
+ if self.old_config.exists() and not self.intermediate_config.exists():
99
166
  plan["move"].append(
100
167
  {
101
168
  "from": str(self.old_config.relative_to(self.project_root)),
102
- "to": str(self.new_config.relative_to(self.project_root)),
103
- "description": "Main configuration file",
169
+ "to": str(self.intermediate_config.relative_to(self.project_root)),
170
+ "description": "Main configuration file (legacy)",
171
+ }
172
+ )
173
+
174
+ # Mark config.json files for conversion to section YAML
175
+ config_json_to_convert = None
176
+ if self.intermediate_config.exists():
177
+ config_json_to_convert = self.intermediate_config
178
+ elif self.old_config.exists():
179
+ config_json_to_convert = self.old_config
180
+
181
+ if config_json_to_convert and not self.system_yaml.exists():
182
+ plan["convert"].append(
183
+ {
184
+ "from": str(config_json_to_convert.relative_to(self.project_root)),
185
+ "to_dir": str(self.sections_dir.relative_to(self.project_root)),
186
+ "description": "Convert config.json to section YAML files",
104
187
  }
105
188
  )
106
189
 
@@ -119,6 +202,9 @@ class VersionDetector:
119
202
  plan["cleanup"].append(str(self.old_config.relative_to(self.project_root)))
120
203
  if self.old_statusline.exists():
121
204
  plan["cleanup"].append(str(self.old_statusline.relative_to(self.project_root)))
205
+ # Also cleanup intermediate config.json after conversion to YAML
206
+ if self.intermediate_config.exists() and self.sections_dir.exists():
207
+ plan["cleanup"].append(str(self.intermediate_config.relative_to(self.project_root)))
122
208
 
123
209
  return plan
124
210
 
@@ -133,7 +219,25 @@ class VersionDetector:
133
219
  "detected_version": self.detect_version(),
134
220
  "needs_migration": self.needs_migration(),
135
221
  "has_old_config": self.old_config.exists(),
136
- "has_new_config": self.new_config.exists(),
222
+ "has_intermediate_config": self.intermediate_config.exists(),
223
+ "has_sections_dir": self.sections_dir.exists(),
224
+ "has_system_yaml": self.system_yaml.exists(),
137
225
  "has_old_statusline": self.old_statusline.exists(),
138
226
  "has_new_statusline": self.new_statusline.exists(),
227
+ "config_format": self._get_config_format(),
139
228
  }
229
+
230
+ def _get_config_format(self) -> str:
231
+ """
232
+ Determine the current configuration format
233
+
234
+ Returns:
235
+ One of: "section_yaml", "intermediate_json", "legacy_json", "none"
236
+ """
237
+ if self.sections_dir.exists() and self.system_yaml.exists():
238
+ return "section_yaml"
239
+ elif self.intermediate_config.exists():
240
+ return "intermediate_json"
241
+ elif self.old_config.exists():
242
+ return "legacy_json"
243
+ return "none"
@@ -3,12 +3,20 @@ Main version migration orchestrator for MoAI-ADK
3
3
 
4
4
  Coordinates version detection, backup creation, file migration,
5
5
  and cleanup processes for automatic project upgrades.
6
+
7
+ Supports migration from:
8
+ - Legacy config.json (.moai/config.json) - pre-v0.24.0
9
+ - Intermediate config.json (.moai/config/config.json) - v0.24.0
10
+ - Section YAML files (.moai/config/sections/*.yaml) - v0.36.0+
6
11
  """
7
12
 
13
+ import json
8
14
  import logging
9
15
  from pathlib import Path
10
16
  from typing import Any, Dict
11
17
 
18
+ import yaml
19
+
12
20
  from .backup_manager import BackupManager
13
21
  from .file_migrator import FileMigrator
14
22
  from .version_detector import VersionDetector
@@ -165,6 +173,13 @@ class VersionMigrator:
165
173
  print(f" • {move_op['description']}")
166
174
  print(f" {move_op['from']} → {move_op['to']}")
167
175
 
176
+ # Show conversion operations (config.json to section YAML)
177
+ if plan.get("convert"):
178
+ print("\n🔄 Files to convert:")
179
+ for convert_op in plan.get("convert", []):
180
+ print(f" • {convert_op['description']}")
181
+ print(f" {convert_op['from']} → {convert_op['to_dir']}/")
182
+
168
183
  print("\n🗑️ Files to cleanup after migration:")
169
184
  for cleanup_file in plan.get("cleanup", []):
170
185
  print(f" - {cleanup_file}")
@@ -176,20 +191,40 @@ class VersionMigrator:
176
191
  Returns:
177
192
  True if verification passed
178
193
  """
179
- # Check that new config exists
180
- new_config = self.project_root / ".moai" / "config" / "config.json"
181
- if not new_config.exists():
182
- logger.error("Verification failed: new config.json not found")
183
- return False
184
-
185
- # Check that new config directory exists
194
+ # Check that config directory exists
186
195
  config_dir = self.project_root / ".moai" / "config"
187
196
  if not config_dir.is_dir():
188
197
  logger.error("Verification failed: config directory not found")
189
198
  return False
190
199
 
191
- logger.debug("All verification checks passed")
192
- return True
200
+ # Check for section YAML format (preferred v0.36.0+)
201
+ sections_dir = self.project_root / ".moai" / "config" / "sections"
202
+ system_yaml = sections_dir / "system.yaml"
203
+
204
+ if sections_dir.exists() and system_yaml.exists():
205
+ # Verify system.yaml is valid
206
+ try:
207
+ with open(system_yaml, "r", encoding="utf-8") as f:
208
+ data = yaml.safe_load(f)
209
+ if data and "moai" in data:
210
+ logger.debug("Section YAML format verification passed")
211
+ return True
212
+ except Exception as e:
213
+ logger.warning(f"Failed to verify system.yaml: {e}")
214
+
215
+ # Fallback: check for intermediate config.json (v0.24.0 format)
216
+ intermediate_config = self.project_root / ".moai" / "config" / "config.json"
217
+ if intermediate_config.exists():
218
+ try:
219
+ with open(intermediate_config, "r", encoding="utf-8") as f:
220
+ json.load(f)
221
+ logger.debug("Intermediate config.json verification passed")
222
+ return True
223
+ except Exception as e:
224
+ logger.warning(f"Failed to verify config.json: {e}")
225
+
226
+ logger.error("Verification failed: no valid configuration found")
227
+ return False
193
228
 
194
229
  def check_status(self) -> Dict[str, Any]:
195
230
  """
@@ -0,0 +1,241 @@
1
+ """Model allocation based on pricing plan.
2
+
3
+ Assigns appropriate models (opus/sonnet/haiku) to agents based on
4
+ the user's selected service and pricing plan.
5
+ """
6
+
7
+ from typing import TypedDict
8
+
9
+
10
+ class ModelAllocation(TypedDict):
11
+ """Model allocation for different agent types."""
12
+
13
+ # High-complexity agents (reasoning, architecture)
14
+ plan: str
15
+ expert_security: str
16
+ expert_refactoring: str
17
+ manager_strategy: str
18
+
19
+ # Medium-complexity agents (implementation)
20
+ expert_backend: str
21
+ expert_frontend: str
22
+ expert_database: str
23
+ manager_tdd: str
24
+ manager_spec: str
25
+ manager_docs: str
26
+ manager_quality: str
27
+
28
+ # Low-complexity agents (exploration, quick tasks)
29
+ explore: str
30
+ expert_debug: str
31
+ general_purpose: str
32
+
33
+
34
+ # Claude subscription model allocations by pricing plan
35
+ CLAUDE_SUBSCRIPTION_ALLOCATIONS: dict[str, ModelAllocation] = {
36
+ # Pro ($20/mo) - sonnet-focused, limited opus
37
+ "pro": {
38
+ # High-complexity: sonnet (opus limited)
39
+ "plan": "sonnet",
40
+ "expert_security": "sonnet",
41
+ "expert_refactoring": "sonnet",
42
+ "manager_strategy": "sonnet",
43
+ # Medium-complexity: sonnet
44
+ "expert_backend": "sonnet",
45
+ "expert_frontend": "sonnet",
46
+ "expert_database": "sonnet",
47
+ "manager_tdd": "sonnet",
48
+ "manager_spec": "sonnet",
49
+ "manager_docs": "sonnet",
50
+ "manager_quality": "sonnet",
51
+ # Low-complexity: haiku for speed
52
+ "explore": "haiku",
53
+ "expert_debug": "haiku",
54
+ "general_purpose": "sonnet",
55
+ },
56
+ # Max5 ($100/mo) - opus for complex, sonnet for standard
57
+ "max5": {
58
+ # High-complexity: opus
59
+ "plan": "opus",
60
+ "expert_security": "opus",
61
+ "expert_refactoring": "opus",
62
+ "manager_strategy": "opus",
63
+ # Medium-complexity: sonnet
64
+ "expert_backend": "sonnet",
65
+ "expert_frontend": "sonnet",
66
+ "expert_database": "sonnet",
67
+ "manager_tdd": "sonnet",
68
+ "manager_spec": "sonnet",
69
+ "manager_docs": "sonnet",
70
+ "manager_quality": "sonnet",
71
+ # Low-complexity: haiku for speed
72
+ "explore": "haiku",
73
+ "expert_debug": "haiku",
74
+ "general_purpose": "sonnet",
75
+ },
76
+ # Max20 ($200/mo) - opus freely available
77
+ "max20": {
78
+ # High-complexity: opus
79
+ "plan": "opus",
80
+ "expert_security": "opus",
81
+ "expert_refactoring": "opus",
82
+ "manager_strategy": "opus",
83
+ # Medium-complexity: opus or sonnet based on preference
84
+ "expert_backend": "opus",
85
+ "expert_frontend": "opus",
86
+ "expert_database": "opus",
87
+ "manager_tdd": "opus",
88
+ "manager_spec": "opus",
89
+ "manager_docs": "sonnet", # Docs don't need opus
90
+ "manager_quality": "opus",
91
+ # Low-complexity: haiku for speed
92
+ "explore": "haiku",
93
+ "expert_debug": "sonnet",
94
+ "general_purpose": "opus",
95
+ },
96
+ }
97
+
98
+ # Claude API model allocations (same as subscription)
99
+ CLAUDE_API_ALLOCATIONS = CLAUDE_SUBSCRIPTION_ALLOCATIONS.copy()
100
+
101
+ # GLM CodePlan model allocations
102
+ GLM_ALLOCATIONS: dict[str, ModelAllocation] = {
103
+ # Basic - equivalent to sonnet
104
+ "basic": {
105
+ "plan": "glm-basic",
106
+ "expert_security": "glm-basic",
107
+ "expert_refactoring": "glm-basic",
108
+ "manager_strategy": "glm-basic",
109
+ "expert_backend": "glm-basic",
110
+ "expert_frontend": "glm-basic",
111
+ "expert_database": "glm-basic",
112
+ "manager_tdd": "glm-basic",
113
+ "manager_spec": "glm-basic",
114
+ "manager_docs": "glm-basic",
115
+ "manager_quality": "glm-basic",
116
+ "explore": "glm-basic",
117
+ "expert_debug": "glm-basic",
118
+ "general_purpose": "glm-basic",
119
+ },
120
+ # Pro - equivalent to sonnet~opus
121
+ "glm_pro": {
122
+ "plan": "glm-pro",
123
+ "expert_security": "glm-pro",
124
+ "expert_refactoring": "glm-pro",
125
+ "manager_strategy": "glm-pro",
126
+ "expert_backend": "glm-pro",
127
+ "expert_frontend": "glm-pro",
128
+ "expert_database": "glm-pro",
129
+ "manager_tdd": "glm-pro",
130
+ "manager_spec": "glm-pro",
131
+ "manager_docs": "glm-basic",
132
+ "manager_quality": "glm-pro",
133
+ "explore": "glm-basic",
134
+ "expert_debug": "glm-basic",
135
+ "general_purpose": "glm-pro",
136
+ },
137
+ # Enterprise - equivalent to opus
138
+ "enterprise": {
139
+ "plan": "glm-enterprise",
140
+ "expert_security": "glm-enterprise",
141
+ "expert_refactoring": "glm-enterprise",
142
+ "manager_strategy": "glm-enterprise",
143
+ "expert_backend": "glm-enterprise",
144
+ "expert_frontend": "glm-enterprise",
145
+ "expert_database": "glm-enterprise",
146
+ "manager_tdd": "glm-enterprise",
147
+ "manager_spec": "glm-enterprise",
148
+ "manager_docs": "glm-pro",
149
+ "manager_quality": "glm-enterprise",
150
+ "explore": "glm-basic",
151
+ "expert_debug": "glm-pro",
152
+ "general_purpose": "glm-enterprise",
153
+ },
154
+ }
155
+
156
+
157
+ def get_model_allocation(
158
+ service_type: str,
159
+ pricing_plan: str | None = None,
160
+ ) -> ModelAllocation:
161
+ """Get model allocation based on service type and pricing plan.
162
+
163
+ Args:
164
+ service_type: Service type (claude_subscription, claude_api, glm, hybrid)
165
+ pricing_plan: Pricing plan (pro, max5, max20, basic, glm_pro, enterprise)
166
+
167
+ Returns:
168
+ ModelAllocation dictionary mapping agent types to model names
169
+ """
170
+ if service_type == "claude_subscription":
171
+ plan = pricing_plan or "pro"
172
+ return CLAUDE_SUBSCRIPTION_ALLOCATIONS.get(plan, CLAUDE_SUBSCRIPTION_ALLOCATIONS["pro"])
173
+
174
+ if service_type == "claude_api":
175
+ plan = pricing_plan or "pro"
176
+ return CLAUDE_API_ALLOCATIONS.get(plan, CLAUDE_API_ALLOCATIONS["pro"])
177
+
178
+ if service_type == "glm":
179
+ plan = pricing_plan or "basic"
180
+ return GLM_ALLOCATIONS.get(plan, GLM_ALLOCATIONS["basic"])
181
+
182
+ if service_type == "hybrid":
183
+ # Hybrid uses Claude allocation with GLM fallback for simple tasks
184
+ plan = pricing_plan or "pro"
185
+ base = CLAUDE_SUBSCRIPTION_ALLOCATIONS.get(plan, CLAUDE_SUBSCRIPTION_ALLOCATIONS["pro"])
186
+ # Override exploration agents to use GLM for cost optimization
187
+ return {
188
+ **base,
189
+ "explore": "glm-basic",
190
+ "expert_debug": "glm-basic",
191
+ }
192
+
193
+ # Default fallback
194
+ return CLAUDE_SUBSCRIPTION_ALLOCATIONS["pro"]
195
+
196
+
197
+ def get_agent_model(
198
+ agent_name: str,
199
+ service_type: str,
200
+ pricing_plan: str | None = None,
201
+ ) -> str:
202
+ """Get the model for a specific agent.
203
+
204
+ Args:
205
+ agent_name: Agent name (e.g., "Plan", "expert-backend", "Explore")
206
+ service_type: Service type
207
+ pricing_plan: Pricing plan
208
+
209
+ Returns:
210
+ Model name (opus, sonnet, haiku, or glm-*)
211
+ """
212
+ allocation = get_model_allocation(service_type, pricing_plan)
213
+
214
+ # Normalize agent name to key format
215
+ key = agent_name.lower().replace("-", "_")
216
+
217
+ # Try direct lookup
218
+ value = allocation.get(key)
219
+ if isinstance(value, str):
220
+ return value
221
+
222
+ # Try category-based lookup
223
+ if key.startswith("expert_"):
224
+ return allocation.get("expert_backend", "sonnet")
225
+ if key.startswith("manager_"):
226
+ return allocation.get("manager_tdd", "sonnet")
227
+ if key.startswith("builder_"):
228
+ return allocation.get("general_purpose", "sonnet")
229
+
230
+ # Default to sonnet
231
+ return "sonnet"
232
+
233
+
234
+ __all__ = [
235
+ "ModelAllocation",
236
+ "get_model_allocation",
237
+ "get_agent_model",
238
+ "CLAUDE_SUBSCRIPTION_ALLOCATIONS",
239
+ "CLAUDE_API_ALLOCATIONS",
240
+ "GLM_ALLOCATIONS",
241
+ ]
@@ -8,19 +8,29 @@ Selective backup strategy:
8
8
  from pathlib import Path
9
9
 
10
10
  # Backup targets (OR condition - back up when any exist)
11
+ # Note: Both YAML and JSON config files are checked for backward compatibility
11
12
  BACKUP_TARGETS = [
12
- ".moai/config/config.json",
13
+ ".moai/config/config.yaml",
14
+ ".moai/config/config.json", # Legacy support
15
+ ".moai/config/sections/", # Section-based config files
13
16
  ".moai/project/",
14
17
  ".moai/memory/",
15
18
  ".claude/",
16
19
  ".github/",
17
20
  "CLAUDE.md",
21
+ # MCP/LSP configuration (v2.0.0)
22
+ ".mcp.json", # MCP server configuration
23
+ ".lsp.json", # LSP server configuration
24
+ # Git hooks (v2.0.0)
25
+ ".git-hooks/", # Custom git hooks
18
26
  ]
19
27
 
20
- # User data protection paths (excluded from backups)
28
+ # User data protection paths (excluded from backups) - MUST match TemplateProcessor.PROTECTED_PATHS
21
29
  PROTECTED_PATHS = [
22
30
  ".moai/specs/",
23
31
  ".moai/reports/",
32
+ ".moai/project/",
33
+ ".moai/config/sections/",
24
34
  ]
25
35
 
26
36