moai-adk 0.25.4__py3-none-any.whl → 0.32.8__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


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

Files changed (378) hide show
  1. moai_adk/__init__.py +2 -5
  2. moai_adk/__main__.py +114 -82
  3. moai_adk/cli/__init__.py +6 -1
  4. moai_adk/cli/commands/__init__.py +1 -3
  5. moai_adk/cli/commands/analyze.py +5 -16
  6. moai_adk/cli/commands/doctor.py +6 -18
  7. moai_adk/cli/commands/init.py +56 -125
  8. moai_adk/cli/commands/language.py +14 -35
  9. moai_adk/cli/commands/status.py +9 -15
  10. moai_adk/cli/commands/update.py +1555 -190
  11. moai_adk/cli/prompts/init_prompts.py +112 -56
  12. moai_adk/cli/spec_status.py +263 -0
  13. moai_adk/cli/ui/__init__.py +44 -0
  14. moai_adk/cli/ui/progress.py +422 -0
  15. moai_adk/cli/ui/prompts.py +389 -0
  16. moai_adk/cli/ui/theme.py +129 -0
  17. moai_adk/cli/worktree/__init__.py +27 -0
  18. moai_adk/cli/worktree/__main__.py +31 -0
  19. moai_adk/cli/worktree/cli.py +672 -0
  20. moai_adk/cli/worktree/exceptions.py +89 -0
  21. moai_adk/cli/worktree/manager.py +490 -0
  22. moai_adk/cli/worktree/models.py +65 -0
  23. moai_adk/cli/worktree/registry.py +128 -0
  24. moai_adk/core/PHASE2_OPTIMIZATIONS.md +467 -0
  25. moai_adk/core/analysis/session_analyzer.py +17 -56
  26. moai_adk/core/claude_integration.py +26 -54
  27. moai_adk/core/command_helpers.py +10 -10
  28. moai_adk/core/comprehensive_monitoring_system.py +1183 -0
  29. moai_adk/core/config/auto_spec_config.py +5 -11
  30. moai_adk/core/config/migration.py +19 -9
  31. moai_adk/core/config/unified.py +436 -0
  32. moai_adk/core/context_manager.py +6 -12
  33. moai_adk/core/enterprise_features.py +1404 -0
  34. moai_adk/core/error_recovery_system.py +725 -112
  35. moai_adk/core/event_driven_hook_system.py +1371 -0
  36. moai_adk/core/git/__init__.py +8 -0
  37. moai_adk/core/git/branch_manager.py +3 -11
  38. moai_adk/core/git/checkpoint.py +1 -3
  39. moai_adk/core/git/conflict_detector.py +413 -0
  40. moai_adk/core/git/manager.py +91 -1
  41. moai_adk/core/hooks/post_tool_auto_spec_completion.py +56 -80
  42. moai_adk/core/input_validation_middleware.py +1006 -0
  43. moai_adk/core/integration/engine.py +6 -18
  44. moai_adk/core/integration/integration_tester.py +10 -9
  45. moai_adk/core/integration/utils.py +1 -1
  46. moai_adk/core/issue_creator.py +10 -28
  47. moai_adk/core/jit_context_loader.py +956 -0
  48. moai_adk/core/jit_enhanced_hook_manager.py +1987 -0
  49. moai_adk/core/language_config_resolver.py +485 -0
  50. moai_adk/core/language_validator.py +28 -41
  51. moai_adk/core/mcp/setup.py +15 -12
  52. moai_adk/core/merge/__init__.py +9 -0
  53. moai_adk/core/merge/analyzer.py +481 -0
  54. moai_adk/core/migration/alfred_to_moai_migrator.py +383 -0
  55. moai_adk/core/migration/backup_manager.py +78 -9
  56. moai_adk/core/migration/custom_element_scanner.py +358 -0
  57. moai_adk/core/migration/file_migrator.py +8 -17
  58. moai_adk/core/migration/interactive_checkbox_ui.py +488 -0
  59. moai_adk/core/migration/selective_restorer.py +470 -0
  60. moai_adk/core/migration/template_utils.py +74 -0
  61. moai_adk/core/migration/user_selection_ui.py +338 -0
  62. moai_adk/core/migration/version_detector.py +6 -10
  63. moai_adk/core/migration/version_migrator.py +3 -3
  64. moai_adk/core/performance/cache_system.py +8 -10
  65. moai_adk/core/phase_optimized_hook_scheduler.py +879 -0
  66. moai_adk/core/project/checker.py +2 -4
  67. moai_adk/core/project/detector.py +1 -3
  68. moai_adk/core/project/initializer.py +135 -23
  69. moai_adk/core/project/phase_executor.py +54 -81
  70. moai_adk/core/project/validator.py +6 -12
  71. moai_adk/core/quality/trust_checker.py +9 -27
  72. moai_adk/core/realtime_monitoring_dashboard.py +1724 -0
  73. moai_adk/core/robust_json_parser.py +611 -0
  74. moai_adk/core/rollback_manager.py +73 -148
  75. moai_adk/core/session_manager.py +10 -26
  76. moai_adk/core/skill_loading_system.py +579 -0
  77. moai_adk/core/spec/confidence_scoring.py +31 -100
  78. moai_adk/core/spec/ears_template_engine.py +351 -286
  79. moai_adk/core/spec/quality_validator.py +35 -69
  80. moai_adk/core/spec_status_manager.py +64 -74
  81. moai_adk/core/template/backup.py +45 -20
  82. moai_adk/core/template/config.py +112 -39
  83. moai_adk/core/template/merger.py +11 -19
  84. moai_adk/core/template/processor.py +253 -149
  85. moai_adk/core/template_engine.py +73 -40
  86. moai_adk/core/template_variable_synchronizer.py +417 -0
  87. moai_adk/core/unified_permission_manager.py +745 -0
  88. moai_adk/core/user_behavior_analytics.py +851 -0
  89. moai_adk/core/version_sync.py +429 -0
  90. moai_adk/foundation/__init__.py +56 -0
  91. moai_adk/foundation/backend.py +1027 -0
  92. moai_adk/foundation/database.py +1115 -0
  93. moai_adk/foundation/devops.py +1585 -0
  94. moai_adk/foundation/ears.py +431 -0
  95. moai_adk/foundation/frontend.py +870 -0
  96. moai_adk/foundation/git/commit_templates.py +4 -12
  97. moai_adk/foundation/git.py +376 -0
  98. moai_adk/foundation/langs.py +484 -0
  99. moai_adk/foundation/ml_ops.py +1162 -0
  100. moai_adk/foundation/testing.py +1524 -0
  101. moai_adk/foundation/trust/trust_principles.py +23 -72
  102. moai_adk/foundation/trust/validation_checklist.py +57 -162
  103. moai_adk/project/__init__.py +0 -0
  104. moai_adk/project/configuration.py +1084 -0
  105. moai_adk/project/documentation.py +566 -0
  106. moai_adk/project/schema.py +447 -0
  107. moai_adk/statusline/alfred_detector.py +1 -3
  108. moai_adk/statusline/config.py +13 -4
  109. moai_adk/statusline/enhanced_output_style_detector.py +23 -15
  110. moai_adk/statusline/main.py +51 -15
  111. moai_adk/statusline/renderer.py +104 -48
  112. moai_adk/statusline/update_checker.py +3 -9
  113. moai_adk/statusline/version_reader.py +140 -46
  114. moai_adk/templates/.claude/agents/moai/ai-nano-banana.md +549 -0
  115. moai_adk/templates/.claude/agents/moai/builder-agent.md +445 -0
  116. moai_adk/templates/.claude/agents/moai/builder-command.md +1132 -0
  117. moai_adk/templates/.claude/agents/moai/builder-skill.md +601 -0
  118. moai_adk/templates/.claude/agents/moai/expert-backend.md +831 -0
  119. moai_adk/templates/.claude/agents/moai/expert-database.md +774 -0
  120. moai_adk/templates/.claude/agents/moai/expert-debug.md +396 -0
  121. moai_adk/templates/.claude/agents/moai/expert-devops.md +711 -0
  122. moai_adk/templates/.claude/agents/moai/expert-frontend.md +666 -0
  123. moai_adk/templates/.claude/agents/moai/expert-security.md +474 -0
  124. moai_adk/templates/.claude/agents/moai/expert-uiux.md +1038 -0
  125. moai_adk/templates/.claude/agents/moai/manager-claude-code.md +429 -0
  126. moai_adk/templates/.claude/agents/moai/manager-docs.md +570 -0
  127. moai_adk/templates/.claude/agents/moai/manager-git.md +937 -0
  128. moai_adk/templates/.claude/agents/moai/manager-project.md +891 -0
  129. moai_adk/templates/.claude/agents/moai/manager-quality.md +598 -0
  130. moai_adk/templates/.claude/agents/moai/manager-spec.md +713 -0
  131. moai_adk/templates/.claude/agents/moai/manager-strategy.md +600 -0
  132. moai_adk/templates/.claude/agents/moai/manager-tdd.md +603 -0
  133. moai_adk/templates/.claude/agents/moai/mcp-context7.md +369 -0
  134. moai_adk/templates/.claude/agents/moai/mcp-figma.md +1567 -0
  135. moai_adk/templates/.claude/agents/moai/mcp-notion.md +749 -0
  136. moai_adk/templates/.claude/agents/moai/mcp-playwright.md +427 -0
  137. moai_adk/templates/.claude/agents/moai/mcp-sequential-thinking.md +994 -0
  138. moai_adk/templates/.claude/commands/moai/0-project.md +1143 -0
  139. moai_adk/templates/.claude/commands/moai/1-plan.md +1435 -0
  140. moai_adk/templates/.claude/commands/moai/2-run.md +883 -0
  141. moai_adk/templates/.claude/commands/moai/3-sync.md +993 -0
  142. moai_adk/templates/.claude/commands/moai/9-feedback.md +314 -0
  143. moai_adk/templates/.claude/hooks/__init__.py +8 -0
  144. moai_adk/templates/.claude/hooks/moai/__init__.py +8 -0
  145. moai_adk/templates/.claude/hooks/moai/lib/__init__.py +85 -0
  146. moai_adk/templates/.claude/hooks/moai/lib/checkpoint.py +244 -0
  147. moai_adk/templates/.claude/hooks/moai/lib/common.py +131 -0
  148. moai_adk/templates/.claude/hooks/moai/lib/config_manager.py +446 -0
  149. moai_adk/templates/.claude/hooks/moai/lib/config_validator.py +639 -0
  150. moai_adk/templates/.claude/hooks/moai/lib/example_config.json +104 -0
  151. moai_adk/templates/.claude/hooks/moai/lib/git_operations_manager.py +590 -0
  152. moai_adk/templates/.claude/hooks/moai/lib/language_validator.py +317 -0
  153. moai_adk/templates/.claude/hooks/moai/lib/models.py +102 -0
  154. moai_adk/templates/.claude/hooks/moai/lib/path_utils.py +28 -0
  155. moai_adk/templates/.claude/hooks/moai/lib/project.py +768 -0
  156. moai_adk/templates/.claude/hooks/moai/lib/test_hooks_improvements.py +443 -0
  157. moai_adk/templates/.claude/hooks/moai/lib/timeout.py +160 -0
  158. moai_adk/templates/.claude/hooks/moai/lib/unified_timeout_manager.py +530 -0
  159. moai_adk/templates/.claude/hooks/moai/session_end__auto_cleanup.py +862 -0
  160. moai_adk/templates/.claude/hooks/moai/session_start__show_project_info.py +921 -0
  161. moai_adk/templates/.claude/output-styles/moai/r2d2.md +380 -0
  162. moai_adk/templates/.claude/output-styles/moai/yoda.md +338 -0
  163. moai_adk/templates/.claude/settings.json +172 -0
  164. moai_adk/templates/.claude/skills/moai-docs-generation/SKILL.md +247 -0
  165. moai_adk/templates/.claude/skills/moai-docs-generation/modules/README.md +44 -0
  166. moai_adk/templates/.claude/skills/moai-docs-generation/modules/api-documentation.md +130 -0
  167. moai_adk/templates/.claude/skills/moai-docs-generation/modules/code-documentation.md +152 -0
  168. moai_adk/templates/.claude/skills/moai-docs-generation/modules/multi-format-output.md +178 -0
  169. moai_adk/templates/.claude/skills/moai-docs-generation/modules/user-guides.md +147 -0
  170. moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +319 -0
  171. moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +320 -0
  172. moai_adk/templates/.claude/skills/moai-domain-database/modules/README.md +53 -0
  173. moai_adk/templates/.claude/skills/moai-domain-database/modules/mongodb.md +231 -0
  174. moai_adk/templates/.claude/skills/moai-domain-database/modules/postgresql.md +169 -0
  175. moai_adk/templates/.claude/skills/moai-domain-database/modules/redis.md +262 -0
  176. moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +496 -0
  177. moai_adk/templates/.claude/skills/moai-domain-uiux/SKILL.md +453 -0
  178. moai_adk/templates/.claude/skills/moai-domain-uiux/examples.md +560 -0
  179. moai_adk/templates/.claude/skills/moai-domain-uiux/modules/accessibility-wcag.md +260 -0
  180. moai_adk/templates/.claude/skills/moai-domain-uiux/modules/component-architecture.md +228 -0
  181. moai_adk/templates/.claude/skills/moai-domain-uiux/modules/design-system-tokens.md +405 -0
  182. moai_adk/templates/.claude/skills/moai-domain-uiux/modules/icon-libraries.md +401 -0
  183. moai_adk/templates/.claude/skills/moai-domain-uiux/modules/theming-system.md +373 -0
  184. moai_adk/templates/.claude/skills/moai-domain-uiux/reference.md +243 -0
  185. moai_adk/templates/.claude/skills/moai-formats-data/SKILL.md +491 -0
  186. moai_adk/templates/.claude/skills/moai-formats-data/modules/README.md +98 -0
  187. moai_adk/templates/.claude/skills/moai-formats-data/modules/SKILL-MODULARIZATION-TEMPLATE.md +278 -0
  188. moai_adk/templates/.claude/skills/moai-formats-data/modules/caching-performance.md +459 -0
  189. moai_adk/templates/.claude/skills/moai-formats-data/modules/data-validation.md +485 -0
  190. moai_adk/templates/.claude/skills/moai-formats-data/modules/json-optimization.md +374 -0
  191. moai_adk/templates/.claude/skills/moai-formats-data/modules/toon-encoding.md +308 -0
  192. moai_adk/templates/.claude/skills/moai-foundation-claude/SKILL.md +201 -0
  193. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/best-practices-checklist.md +616 -0
  194. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-custom-slash-commands-official.md +729 -0
  195. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-hooks-official.md +560 -0
  196. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-iam-official.md +635 -0
  197. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-memory-official.md +543 -0
  198. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-settings-official.md +663 -0
  199. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-skills-official.md +113 -0
  200. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-sub-agents-official.md +238 -0
  201. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/complete-configuration-guide.md +175 -0
  202. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/skill-examples.md +1674 -0
  203. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/skill-formatting-guide.md +729 -0
  204. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/sub-agents/sub-agent-examples.md +1513 -0
  205. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/sub-agents/sub-agent-formatting-guide.md +1086 -0
  206. moai_adk/templates/.claude/skills/moai-foundation-claude/reference/sub-agents/sub-agent-integration-patterns.md +1100 -0
  207. moai_adk/templates/.claude/skills/moai-foundation-context/SKILL.md +438 -0
  208. moai_adk/templates/.claude/skills/moai-foundation-core/SKILL.md +515 -0
  209. moai_adk/templates/.claude/skills/moai-foundation-core/modules/README.md +296 -0
  210. moai_adk/templates/.claude/skills/moai-foundation-core/modules/agents-reference.md +346 -0
  211. moai_adk/templates/.claude/skills/moai-foundation-core/modules/commands-reference.md +432 -0
  212. moai_adk/templates/.claude/skills/moai-foundation-core/modules/delegation-patterns.md +757 -0
  213. moai_adk/templates/.claude/skills/moai-foundation-core/modules/execution-rules.md +687 -0
  214. moai_adk/templates/.claude/skills/moai-foundation-core/modules/modular-system.md +665 -0
  215. moai_adk/templates/.claude/skills/moai-foundation-core/modules/progressive-disclosure.md +649 -0
  216. moai_adk/templates/.claude/skills/moai-foundation-core/modules/spec-first-tdd.md +864 -0
  217. moai_adk/templates/.claude/skills/moai-foundation-core/modules/token-optimization.md +708 -0
  218. moai_adk/templates/.claude/skills/moai-foundation-core/modules/trust-5-framework.md +981 -0
  219. moai_adk/templates/.claude/skills/moai-foundation-quality/SKILL.md +362 -0
  220. moai_adk/templates/.claude/skills/moai-foundation-quality/examples.md +1232 -0
  221. moai_adk/templates/.claude/skills/moai-foundation-quality/modules/best-practices.md +261 -0
  222. moai_adk/templates/.claude/skills/moai-foundation-quality/modules/integration-patterns.md +194 -0
  223. moai_adk/templates/.claude/skills/moai-foundation-quality/modules/proactive-analysis.md +229 -0
  224. moai_adk/templates/.claude/skills/moai-foundation-quality/modules/trust5-validation.md +169 -0
  225. moai_adk/templates/.claude/skills/moai-foundation-quality/reference.md +1266 -0
  226. moai_adk/templates/.claude/skills/moai-foundation-quality/scripts/quality-gate.sh +668 -0
  227. moai_adk/templates/.claude/skills/moai-foundation-quality/templates/github-actions-quality.yml +481 -0
  228. moai_adk/templates/.claude/skills/moai-foundation-quality/templates/quality-config.yaml +519 -0
  229. moai_adk/templates/.claude/skills/moai-integration-mcp/SKILL.md +352 -0
  230. moai_adk/templates/.claude/skills/moai-integration-mcp/modules/README.md +52 -0
  231. moai_adk/templates/.claude/skills/moai-integration-mcp/modules/error-handling.md +334 -0
  232. moai_adk/templates/.claude/skills/moai-integration-mcp/modules/integration-patterns.md +310 -0
  233. moai_adk/templates/.claude/skills/moai-integration-mcp/modules/security-authentication.md +256 -0
  234. moai_adk/templates/.claude/skills/moai-integration-mcp/modules/server-architecture.md +253 -0
  235. moai_adk/templates/.claude/skills/moai-lang-unified/README.md +133 -0
  236. moai_adk/templates/.claude/skills/moai-lang-unified/SKILL.md +296 -0
  237. moai_adk/templates/.claude/skills/moai-lang-unified/examples.md +1269 -0
  238. moai_adk/templates/.claude/skills/moai-lang-unified/reference.md +331 -0
  239. moai_adk/templates/.claude/skills/moai-library-mermaid/SKILL.md +298 -0
  240. moai_adk/templates/.claude/skills/moai-library-mermaid/advanced-patterns.md +465 -0
  241. moai_adk/templates/.claude/skills/moai-library-mermaid/examples.md +270 -0
  242. moai_adk/templates/.claude/skills/moai-library-mermaid/optimization.md +440 -0
  243. moai_adk/templates/.claude/skills/moai-library-mermaid/reference.md +228 -0
  244. moai_adk/templates/.claude/skills/moai-library-nextra/SKILL.md +316 -0
  245. moai_adk/templates/.claude/skills/moai-library-nextra/advanced-patterns.md +336 -0
  246. moai_adk/templates/.claude/skills/moai-library-nextra/modules/advanced-deployment-patterns.md +182 -0
  247. moai_adk/templates/.claude/skills/moai-library-nextra/modules/advanced-patterns.md +17 -0
  248. moai_adk/templates/.claude/skills/moai-library-nextra/modules/configuration.md +57 -0
  249. moai_adk/templates/.claude/skills/moai-library-nextra/modules/content-architecture-optimization.md +162 -0
  250. moai_adk/templates/.claude/skills/moai-library-nextra/modules/deployment.md +52 -0
  251. moai_adk/templates/.claude/skills/moai-library-nextra/modules/framework-core-configuration.md +186 -0
  252. moai_adk/templates/.claude/skills/moai-library-nextra/modules/i18n-setup.md +55 -0
  253. moai_adk/templates/.claude/skills/moai-library-nextra/modules/mdx-components.md +52 -0
  254. moai_adk/templates/.claude/skills/moai-library-nextra/optimization.md +303 -0
  255. moai_adk/templates/.claude/skills/moai-library-shadcn/SKILL.md +370 -0
  256. moai_adk/templates/.claude/skills/moai-library-shadcn/examples.md +575 -0
  257. moai_adk/templates/.claude/skills/moai-library-shadcn/modules/advanced-patterns.md +394 -0
  258. moai_adk/templates/.claude/skills/moai-library-shadcn/modules/optimization.md +278 -0
  259. moai_adk/templates/.claude/skills/moai-library-shadcn/modules/shadcn-components.md +457 -0
  260. moai_adk/templates/.claude/skills/moai-library-shadcn/modules/shadcn-theming.md +373 -0
  261. moai_adk/templates/.claude/skills/moai-library-shadcn/reference.md +74 -0
  262. moai_adk/templates/.claude/skills/moai-platform-baas/README.md +186 -0
  263. moai_adk/templates/.claude/skills/moai-platform-baas/SKILL.md +290 -0
  264. moai_adk/templates/.claude/skills/moai-platform-baas/examples.md +1225 -0
  265. moai_adk/templates/.claude/skills/moai-platform-baas/reference.md +567 -0
  266. moai_adk/templates/.claude/skills/moai-platform-baas/scripts/provider-selector.py +323 -0
  267. moai_adk/templates/.claude/skills/moai-platform-baas/templates/stack-config.yaml +204 -0
  268. moai_adk/templates/.claude/skills/moai-workflow-jit-docs/SKILL.md +446 -0
  269. moai_adk/templates/.claude/skills/moai-workflow-jit-docs/advanced-patterns.md +379 -0
  270. moai_adk/templates/.claude/skills/moai-workflow-jit-docs/optimization.md +286 -0
  271. moai_adk/templates/.claude/skills/moai-workflow-project/README.md +190 -0
  272. moai_adk/templates/.claude/skills/moai-workflow-project/SKILL.md +387 -0
  273. moai_adk/templates/.claude/skills/moai-workflow-project/__init__.py +520 -0
  274. moai_adk/templates/.claude/skills/moai-workflow-project/complete_workflow_demo_fixed.py +574 -0
  275. moai_adk/templates/.claude/skills/moai-workflow-project/examples/complete_project_setup.py +317 -0
  276. moai_adk/templates/.claude/skills/moai-workflow-project/examples/complete_workflow_demo.py +663 -0
  277. moai_adk/templates/.claude/skills/moai-workflow-project/examples/config-migration-example.json +190 -0
  278. moai_adk/templates/.claude/skills/moai-workflow-project/examples/question-examples.json +135 -0
  279. moai_adk/templates/.claude/skills/moai-workflow-project/examples/quick_start.py +196 -0
  280. moai_adk/templates/.claude/skills/moai-workflow-project/modules/__init__.py +17 -0
  281. moai_adk/templates/.claude/skills/moai-workflow-project/modules/advanced-patterns.md +158 -0
  282. moai_adk/templates/.claude/skills/moai-workflow-project/modules/ask_user_integration.py +340 -0
  283. moai_adk/templates/.claude/skills/moai-workflow-project/modules/batch_questions.py +713 -0
  284. moai_adk/templates/.claude/skills/moai-workflow-project/modules/config_manager.py +538 -0
  285. moai_adk/templates/.claude/skills/moai-workflow-project/modules/documentation_manager.py +1336 -0
  286. moai_adk/templates/.claude/skills/moai-workflow-project/modules/language_initializer.py +730 -0
  287. moai_adk/templates/.claude/skills/moai-workflow-project/modules/migration_manager.py +608 -0
  288. moai_adk/templates/.claude/skills/moai-workflow-project/modules/template_optimizer.py +1005 -0
  289. moai_adk/templates/.claude/skills/moai-workflow-project/schemas/config-schema.json +316 -0
  290. moai_adk/templates/.claude/skills/moai-workflow-project/schemas/tab_schema.json +1362 -0
  291. moai_adk/templates/.claude/skills/moai-workflow-project/templates/config-template.json +71 -0
  292. moai_adk/templates/.claude/skills/moai-workflow-project/templates/doc-templates/product-template.md +44 -0
  293. moai_adk/templates/.claude/skills/moai-workflow-project/templates/doc-templates/structure-template.md +48 -0
  294. moai_adk/templates/.claude/skills/moai-workflow-project/templates/doc-templates/tech-template.md +71 -0
  295. moai_adk/templates/.claude/skills/moai-workflow-project/templates/question-templates/config-manager-setup.json +109 -0
  296. moai_adk/templates/.claude/skills/moai-workflow-project/templates/question-templates/language-initializer.json +228 -0
  297. moai_adk/templates/.claude/skills/moai-workflow-project/templates/question-templates/menu-project-config.json +130 -0
  298. moai_adk/templates/.claude/skills/moai-workflow-project/templates/question-templates/project-batch-questions.json +97 -0
  299. moai_adk/templates/.claude/skills/moai-workflow-project/templates/question-templates/spec-workflow-setup.json +150 -0
  300. moai_adk/templates/.claude/skills/moai-workflow-project/test_integration_simple.py +436 -0
  301. moai_adk/templates/.claude/skills/moai-workflow-templates/SKILL.md +374 -0
  302. moai_adk/templates/.claude/skills/moai-workflow-templates/modules/code-templates.md +124 -0
  303. moai_adk/templates/.claude/skills/moai-workflow-templates/modules/feedback-templates.md +100 -0
  304. moai_adk/templates/.claude/skills/moai-workflow-templates/modules/template-optimizer.md +138 -0
  305. moai_adk/templates/.claude/skills/moai-workflow-testing/LICENSE.txt +202 -0
  306. moai_adk/templates/.claude/skills/moai-workflow-testing/SKILL.md +453 -0
  307. moai_adk/templates/.claude/skills/moai-workflow-testing/advanced-patterns.md +576 -0
  308. moai_adk/templates/.claude/skills/moai-workflow-testing/examples/ai-powered-testing.py +294 -0
  309. moai_adk/templates/.claude/skills/moai-workflow-testing/examples/console_logging.py +35 -0
  310. moai_adk/templates/.claude/skills/moai-workflow-testing/examples/element_discovery.py +40 -0
  311. moai_adk/templates/.claude/skills/moai-workflow-testing/examples/static_html_automation.py +34 -0
  312. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/README.md +220 -0
  313. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/ai-debugging.md +845 -0
  314. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review.md +1416 -0
  315. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization.md +1234 -0
  316. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/smart-refactoring.md +1243 -0
  317. moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7.md +1260 -0
  318. moai_adk/templates/.claude/skills/moai-workflow-testing/optimization.md +505 -0
  319. moai_adk/templates/.claude/skills/moai-workflow-testing/reference/playwright-best-practices.md +57 -0
  320. moai_adk/templates/.claude/skills/moai-workflow-testing/scripts/with_server.py +218 -0
  321. moai_adk/templates/.claude/skills/moai-workflow-testing/templates/alfred-integration.md +376 -0
  322. moai_adk/templates/.claude/skills/moai-workflow-testing/workflows/enterprise-testing-workflow.py +571 -0
  323. moai_adk/templates/.claude/skills/moai-worktree/SKILL.md +410 -0
  324. moai_adk/templates/.claude/skills/moai-worktree/examples.md +606 -0
  325. moai_adk/templates/.claude/skills/moai-worktree/modules/integration-patterns.md +982 -0
  326. moai_adk/templates/.claude/skills/moai-worktree/modules/parallel-development.md +778 -0
  327. moai_adk/templates/.claude/skills/moai-worktree/modules/worktree-commands.md +646 -0
  328. moai_adk/templates/.claude/skills/moai-worktree/modules/worktree-management.md +782 -0
  329. moai_adk/templates/.claude/skills/moai-worktree/reference.md +357 -0
  330. moai_adk/templates/.git-hooks/pre-commit +103 -41
  331. moai_adk/templates/.git-hooks/pre-push +116 -21
  332. moai_adk/templates/.github/workflows/ci-universal.yml +513 -0
  333. moai_adk/templates/.github/workflows/security-secrets-check.yml +179 -0
  334. moai_adk/templates/.gitignore +184 -44
  335. moai_adk/templates/.mcp.json +7 -9
  336. moai_adk/templates/.moai/cache/personalization.json +10 -0
  337. moai_adk/templates/.moai/config/config.yaml +344 -0
  338. moai_adk/templates/.moai/config/presets/manual.yaml +28 -0
  339. moai_adk/templates/.moai/config/presets/personal.yaml +30 -0
  340. moai_adk/templates/.moai/config/presets/team.yaml +33 -0
  341. moai_adk/templates/.moai/config/questions/_schema.yaml +79 -0
  342. moai_adk/templates/.moai/config/questions/tab1-user.yaml +108 -0
  343. moai_adk/templates/.moai/config/questions/tab2-project.yaml +122 -0
  344. moai_adk/templates/.moai/config/questions/tab3-git.yaml +542 -0
  345. moai_adk/templates/.moai/config/questions/tab4-quality.yaml +167 -0
  346. moai_adk/templates/.moai/config/questions/tab5-system.yaml +152 -0
  347. moai_adk/templates/.moai/config/sections/git-strategy.yaml +40 -0
  348. moai_adk/templates/.moai/config/sections/language.yaml +11 -0
  349. moai_adk/templates/.moai/config/sections/project.yaml +13 -0
  350. moai_adk/templates/.moai/config/sections/quality.yaml +15 -0
  351. moai_adk/templates/.moai/config/sections/system.yaml +14 -0
  352. moai_adk/templates/.moai/config/sections/user.yaml +5 -0
  353. moai_adk/templates/.moai/config/statusline-config.yaml +86 -0
  354. moai_adk/templates/.moai/scripts/setup-glm.py +136 -0
  355. moai_adk/templates/CLAUDE.md +382 -501
  356. moai_adk/utils/__init__.py +24 -1
  357. moai_adk/utils/banner.py +7 -10
  358. moai_adk/utils/common.py +16 -30
  359. moai_adk/utils/link_validator.py +4 -12
  360. moai_adk/utils/safe_file_reader.py +2 -6
  361. moai_adk/utils/timeout.py +160 -0
  362. moai_adk/utils/toon_utils.py +256 -0
  363. moai_adk/version.py +22 -0
  364. moai_adk-0.32.8.dist-info/METADATA +2478 -0
  365. moai_adk-0.32.8.dist-info/RECORD +396 -0
  366. {moai_adk-0.25.4.dist-info → moai_adk-0.32.8.dist-info}/WHEEL +1 -1
  367. {moai_adk-0.25.4.dist-info → moai_adk-0.32.8.dist-info}/entry_points.txt +1 -0
  368. moai_adk/cli/commands/backup.py +0 -82
  369. moai_adk/cli/commands/improve_user_experience.py +0 -348
  370. moai_adk/cli/commands/migrate.py +0 -158
  371. moai_adk/cli/commands/validate_links.py +0 -118
  372. moai_adk/templates/.github/workflows/moai-gitflow.yml +0 -413
  373. moai_adk/templates/.github/workflows/moai-release-create.yml +0 -100
  374. moai_adk/templates/.github/workflows/moai-release-pipeline.yml +0 -188
  375. moai_adk/utils/user_experience.py +0 -531
  376. moai_adk-0.25.4.dist-info/METADATA +0 -2279
  377. moai_adk-0.25.4.dist-info/RECORD +0 -112
  378. {moai_adk-0.25.4.dist-info → moai_adk-0.32.8.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,178 @@
1
+ # Multi-Format Output Generation
2
+
3
+ ## Overview
4
+ Comprehensive documentation generation supporting HTML sites, PDF documents, static sites, and various output formats with responsive design and professional styling.
5
+
6
+ ## Quick Implementation
7
+
8
+ ```python
9
+ from jinja2 import Template
10
+ import markdown
11
+
12
+ class HTMLDocGenerator:
13
+ def __init__(self):
14
+ self.templates = self.load_templates()
15
+
16
+ def generate_html_site(self, documentation: Dict, output_dir: str):
17
+ """Generate a complete HTML documentation site."""
18
+
19
+ # Generate index page
20
+ index_html = self.generate_index_page(documentation)
21
+ self.write_file(output_dir, "index.html", index_html)
22
+
23
+ # Generate API reference pages
24
+ self.generate_api_pages(documentation, output_dir)
25
+
26
+ # Generate tutorial pages
27
+ self.generate_tutorial_pages(documentation, output_dir)
28
+
29
+ # Generate CSS and assets
30
+ self.generate_assets(output_dir)
31
+
32
+ def generate_index_page(self, documentation: Dict) -> str:
33
+ """Generate the main index page."""
34
+
35
+ template = Template("""
36
+ <!DOCTYPE html>
37
+ <html lang="en">
38
+ <head>
39
+ <meta charset="UTF-8">
40
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
41
+ <title>{{ title }}</title>
42
+ <link rel="stylesheet" href="assets/style.css">
43
+ </head>
44
+ <body>
45
+ <nav class="sidebar">
46
+ <div class="logo">
47
+ <h2>{{ title }}</h2>
48
+ </div>
49
+ <ul class="nav-menu">
50
+ <li><a href="index.html" class="active">Home</a></li>
51
+ <li><a href="api/index.html">API Reference</a></li>
52
+ <li><a href="tutorials/index.html">Tutorials</a></li>
53
+ <li><a href="cookbook.html">Cookbook</a></li>
54
+ </ul>
55
+ </nav>
56
+
57
+ <main class="content">
58
+ <section class="hero">
59
+ <h1>{{ title }}</h1>
60
+ <p>{{ description }}</p>
61
+ <div class="cta-buttons">
62
+ <a href="tutorials/getting-started.html" class="btn primary">Get Started</a>
63
+ <a href="api/index.html" class="btn secondary">API Docs</a>
64
+ </div>
65
+ </section>
66
+
67
+ <section class="features">
68
+ <h2>Key Features</h2>
69
+ <div class="feature-grid">
70
+ {% for feature in features %}
71
+ <div class="feature-card">
72
+ <h3>{{ feature.name }}</h3>
73
+ <p>{{ feature.description }}</p>
74
+ </div>
75
+ {% endfor %}
76
+ </div>
77
+ </section>
78
+
79
+ <section class="quick-start">
80
+ <h2>Quick Start</h2>
81
+ <pre><code>{{ quick_start_example }}</code></pre>
82
+ </section>
83
+ </main>
84
+
85
+ <script src="assets/script.js"></script>
86
+ </body>
87
+ </html>
88
+ """)
89
+
90
+ return template.render(
91
+ title=documentation.get("title", "API Documentation"),
92
+ description=documentation.get("description", ""),
93
+ features=documentation.get("features", []),
94
+ quick_start_example=documentation.get("quick_start", "")
95
+ )
96
+
97
+ def generate_pdf_documentation(self, markdown_content: str, output_path: str):
98
+ """Generate PDF from Markdown content."""
99
+ try:
100
+ import weasyprint
101
+
102
+ # Convert Markdown to HTML
103
+ html_content = markdown.markdown(
104
+ markdown_content,
105
+ extensions=['tables', 'fenced_code', 'toc']
106
+ )
107
+
108
+ # Add CSS styling
109
+ styled_html = f"""
110
+ <!DOCTYPE html>
111
+ <html>
112
+ <head>
113
+ <style>
114
+ body {{ font-family: Arial, sans-serif; line-height: 1.6; margin: 40px; }}
115
+ h1 {{ color: #333; border-bottom: 2px solid #333; }}
116
+ h2 {{ color: #666; }}
117
+ code {{ background: #f4f4f4; padding: 2px 4px; border-radius: 3px; }}
118
+ pre {{ background: #f4f4f4; padding: 10px; border-radius: 5px; overflow-x: auto; }}
119
+ table {{ border-collapse: collapse; width: 100%; }}
120
+ th, td {{ border: 1px solid #ddd; padding: 8px; text-align: left; }}
121
+ </style>
122
+ </head>
123
+ <body>
124
+ {html_content}
125
+ </body>
126
+ </html>
127
+ """
128
+
129
+ # Generate PDF
130
+ weasyprint.HTML(string=styled_html).write_pdf(output_path)
131
+
132
+ except ImportError:
133
+ raise ImportError("weasyprint is required for PDF generation. Install with: pip install weasyprint")
134
+ ```
135
+
136
+ ## Output Formats
137
+
138
+ ### 1. HTML Documentation Sites
139
+ - Responsive design with sidebar navigation
140
+ - Interactive code examples
141
+ - Search functionality
142
+ - Dark/light theme support
143
+ - Mobile-optimized layouts
144
+
145
+ ### 2. PDF Documentation
146
+ - Professional print-ready formatting
147
+ - Table of contents generation
148
+ - Code syntax highlighting
149
+ - Header/footer customization
150
+ - Page numbering and bookmarks
151
+
152
+ ### 3. Static Site Generation
153
+ - Jekyll/Hugo compatible output
154
+ - SEO optimization
155
+ - Fast loading times
156
+ - GitHub Pages deployment
157
+ - Custom domain support
158
+
159
+ ### 4. Markdown Variants
160
+ - GitHub Flavored Markdown
161
+ - CommonMark compliance
162
+ - Extension support (tables, footnotes)
163
+ - Cross-reference linking
164
+ - Image optimization
165
+
166
+ ## Template System
167
+ - Jinja2-based templating
168
+ - Customizable themes
169
+ - Component-based design
170
+ - Asset management
171
+ - Multi-language support
172
+
173
+ ## Integration Points
174
+ - Documentation platforms (GitBook, Docusaurus)
175
+ - CI/CD pipelines
176
+ - Static site hosting
177
+ - Content management systems
178
+ - Version control workflows
@@ -0,0 +1,147 @@
1
+ # User Guide Generation
2
+
3
+ ## Overview
4
+ Automated creation of comprehensive user guides, tutorials, getting started documentation, and cookbooks with AI-powered content generation.
5
+
6
+ ## Quick Implementation
7
+
8
+ ```python
9
+ class UserGuideGenerator:
10
+ def __init__(self, ai_client=None):
11
+ self.ai_client = ai_client
12
+
13
+ def generate_getting_started_guide(self, project_info: Dict) -> str:
14
+ """Generate comprehensive getting started guide."""
15
+
16
+ guide_structure = [
17
+ "# Getting Started",
18
+ "",
19
+ "## Prerequisites",
20
+ self.generate_prerequisites_section(project_info),
21
+ "",
22
+ "## Installation",
23
+ self.generate_installation_section(project_info),
24
+ "",
25
+ "## Quick Start",
26
+ self.generate_quick_start_section(project_info),
27
+ "",
28
+ "## Basic Usage",
29
+ self.generate_basic_usage_section(project_info),
30
+ "",
31
+ "## Next Steps",
32
+ self.generate_next_steps_section(project_info)
33
+ ]
34
+
35
+ return "\n".join(guide_structure)
36
+
37
+ def generate_tutorial_series(self, features: List[Dict]) -> List[str]:
38
+ """Generate a series of tutorials for different features."""
39
+ tutorials = []
40
+
41
+ for feature in features:
42
+ tutorial = self.generate_feature_tutorial(feature)
43
+ tutorials.append(tutorial)
44
+
45
+ return tutorials
46
+
47
+ def generate_feature_tutorial(self, feature: Dict) -> str:
48
+ """Generate a single tutorial for a specific feature."""
49
+
50
+ if self.ai_client:
51
+ prompt = f"""
52
+ Create a step-by-step tutorial for this feature:
53
+
54
+ Feature Name: {feature['name']}
55
+ Description: {feature['description']}
56
+ Key Functions: {', '.join(feature.get('functions', []))}
57
+ Example Usage: {feature.get('example', '')}
58
+
59
+ Please include:
60
+ 1. Clear introduction explaining what the feature does
61
+ 2. Prerequisites and setup requirements
62
+ 3. Step-by-step implementation guide
63
+ 4. Complete code example
64
+ 5. Common use cases and variations
65
+ 6. Troubleshooting tips
66
+ 7. Related features and next steps
67
+
68
+ Format as a comprehensive tutorial with clear sections and code blocks.
69
+ """
70
+
71
+ response = self.ai_client.generate_content(prompt)
72
+ return response["content"]
73
+
74
+ else:
75
+ return self.generate_basic_tutorial(feature)
76
+
77
+ def generate_cookbook(self, use_cases: List[Dict]) -> str:
78
+ """Generate a cookbook of common patterns and solutions."""
79
+
80
+ cookbook_content = ["# Cookbook", "", "## Common Patterns and Solutions"]
81
+
82
+ for use_case in use_cases:
83
+ recipe = self.generate_recipe(use_case)
84
+ cookbook_content.extend(["", recipe])
85
+
86
+ return "\n".join(cookbook_content)
87
+
88
+ def generate_recipe(self, use_case: Dict) -> str:
89
+ """Generate a single recipe for the cookbook."""
90
+
91
+ return f"""
92
+ ### {use_case['title']}
93
+
94
+ Problem: {use_case['problem']}
95
+
96
+ Solution: {use_case['solution']}
97
+
98
+ Code Example:
99
+ ```python
100
+ {use_case.get('example_code', '# Example implementation')}
101
+ ```
102
+
103
+ Explanation: {use_case.get('explanation', 'Detailed explanation of the solution')}
104
+
105
+ Variations: {use_case.get('variations', 'Common variations and adaptations')}
106
+
107
+ Related Patterns: {', '.join(use_case.get('related_patterns', []))}
108
+ """
109
+ ```
110
+
111
+ ## Guide Types
112
+
113
+ ### 1. Getting Started Guides
114
+ - Prerequisites and requirements
115
+ - Installation and setup
116
+ - Quick start examples
117
+ - Basic usage patterns
118
+ - Next steps and resources
119
+
120
+ ### 2. Feature Tutorials
121
+ - Step-by-step implementation
122
+ - Complete working examples
123
+ - Common use cases
124
+ - Troubleshooting tips
125
+ - Advanced variations
126
+
127
+ ### 3. Cookbooks
128
+ - Problem-solution format
129
+ - Code-first examples
130
+ - Common patterns
131
+ - Best practices
132
+ - Performance tips
133
+
134
+ ## Content Generation Features
135
+ - AI-powered tutorial creation
136
+ - Structured content templates
137
+ - Code example generation
138
+ - Progressive difficulty scaling
139
+ - Cross-references and links
140
+ - Troubleshooting sections
141
+
142
+ ## Integration Points
143
+ - Project documentation systems
144
+ - Developer onboarding workflows
145
+ - Knowledge base platforms
146
+ - Customer support systems
147
+ - Educational platforms
@@ -0,0 +1,319 @@
1
+ ---
2
+ name: moai-domain-backend
3
+ description: Backend development specialist covering API design, database integration, microservices architecture, and modern backend patterns
4
+ version: 1.0.0
5
+ category: domain
6
+ tags:
7
+ - backend
8
+ - api
9
+ - database
10
+ - microservices
11
+ - architecture
12
+ updated: 2025-11-30
13
+ status: active
14
+ author: MoAI-ADK Team
15
+ ---
16
+
17
+ # Backend Development Specialist
18
+
19
+ ## Quick Reference (30 seconds)
20
+
21
+ Backend Development Mastery - Comprehensive backend development patterns covering API design, database integration, microservices, and modern architecture patterns.
22
+
23
+ Core Capabilities:
24
+ - API Design: REST, GraphQL, gRPC with OpenAPI 3.1
25
+ - Database Integration: PostgreSQL, MongoDB, Redis, caching strategies
26
+ - Microservices: Service mesh, distributed patterns, event-driven architecture
27
+ - Security: Authentication, authorization, OWASP compliance
28
+ - Performance: Caching, optimization, monitoring, scaling
29
+
30
+ When to Use:
31
+ - Backend API development and architecture
32
+ - Database design and optimization
33
+ - Microservices implementation
34
+ - Performance optimization and scaling
35
+ - Security integration for backend systems
36
+
37
+ ---
38
+
39
+ ## Implementation Guide
40
+
41
+ ### API Design Patterns
42
+
43
+ RESTful API Architecture:
44
+ ```python
45
+ from fastapi import FastAPI, Depends, HTTPException
46
+ from fastapi.security import HTTPBearer
47
+ from pydantic import BaseModel
48
+ from typing import List, Optional
49
+
50
+ app = FastAPI(title="Modern API", version="2.0.0")
51
+ security = HTTPBearer()
52
+
53
+ class UserResponse(BaseModel):
54
+ id: int
55
+ email: str
56
+ name: str
57
+
58
+ @app.get("/users", response_model=List[UserResponse])
59
+ async def list_users(token: str = Depends(security)):
60
+ """List users with authentication."""
61
+ return await user_service.get_all_users()
62
+
63
+ @app.post("/users", response_model=UserResponse)
64
+ async def create_user(user: UserCreate):
65
+ """Create new user with validation."""
66
+ return await user_service.create(user)
67
+ ```
68
+
69
+ GraphQL Implementation:
70
+ ```python
71
+ import strawberry
72
+ from typing import List
73
+
74
+ @strawberry.type
75
+ class User:
76
+ id: int
77
+ email: str
78
+ name: str
79
+
80
+ @strawberry.type
81
+ class Query:
82
+ @strawberry.field
83
+ async def users(self) -> List[User]:
84
+ return await user_service.get_all_users()
85
+
86
+ schema = strawberry.Schema(query=Query)
87
+ ```
88
+
89
+ ### Database Integration Patterns
90
+
91
+ PostgreSQL with SQLAlchemy:
92
+ ```python
93
+ from sqlalchemy import create_engine, Column, Integer, String
94
+ from sqlalchemy.ext.declarative import declarative_base
95
+ from sqlalchemy.orm import sessionmaker
96
+
97
+ Base = declarative_base()
98
+
99
+ class User(Base):
100
+ __tablename__ = "users"
101
+
102
+ id = Column(Integer, primary_key=True)
103
+ email = Column(String, unique=True)
104
+ name = Column(String)
105
+
106
+ # Connection pooling and optimization
107
+ engine = create_engine(
108
+ DATABASE_URL,
109
+ pool_size=20,
110
+ max_overflow=30,
111
+ pool_pre_ping=True
112
+ )
113
+ ```
114
+
115
+ MongoDB with Motor:
116
+ ```python
117
+ from motor.motor_asyncio import AsyncIOMotorClient
118
+ from pymongo import IndexModel
119
+
120
+ class UserService:
121
+ def __init__(self, client: AsyncIOMotorClient):
122
+ self.db = client.myapp
123
+ self.users = self.db.users
124
+
125
+ # Index optimization
126
+ self.users.create_indexes([
127
+ IndexModel("email", unique=True),
128
+ IndexModel("created_at")
129
+ ])
130
+
131
+ async def create_user(self, user_data: dict) -> str:
132
+ result = await self.users.insert_one(user_data)
133
+ return str(result.inserted_id)
134
+ ```
135
+
136
+ ### Microservices Architecture
137
+
138
+ Service Discovery with Consul:
139
+ ```python
140
+ import consul
141
+
142
+ class ServiceRegistry:
143
+ def __init__(self, consul_host="localhost", consul_port=8500):
144
+ self.consul = consul.Consul(host=consul_host, port=consul_port)
145
+
146
+ def register_service(self, service_name: str, service_id: str, port: int):
147
+ self.consul.agent.service.register(
148
+ name=service_name,
149
+ service_id=service_id,
150
+ port=port,
151
+ check=consul.Check.http(f"http://localhost:{port}/health", interval="10s")
152
+ )
153
+
154
+ def discover_service(self, service_name: str) -> List[str]:
155
+ _, services = self.consul.health.service(service_name, passing=True)
156
+ return [f"{s['Service']['Address']}:{s['Service']['Port']}" for s in services]
157
+ ```
158
+
159
+ Event-Driven Architecture:
160
+ ```python
161
+ import asyncio
162
+ from aio_pika import connect_robust
163
+
164
+ class EventBus:
165
+ def __init__(self, amqp_url: str):
166
+ self.connection = None
167
+ self.channel = None
168
+ self.amqp_url = amqp_url
169
+
170
+ async def connect(self):
171
+ self.connection = await connect_robust(self.amqp_url)
172
+ self.channel = await self.connection.channel()
173
+
174
+ async def publish_event(self, event_type: str, data: dict):
175
+ await self.channel.default_exchange.publish(
176
+ aio_pika.Message(
177
+ json.dumps({"type": event_type, "data": data}).encode(),
178
+ content_type="application/json"
179
+ ),
180
+ routing_key=event_type
181
+ )
182
+ ```
183
+
184
+ ---
185
+
186
+ ## Advanced Patterns
187
+
188
+ ### Caching Strategies
189
+
190
+ Redis Integration:
191
+ ```python
192
+ import redis.asyncio as redis
193
+ from functools import wraps
194
+ import json
195
+ import hashlib
196
+
197
+ class CacheManager:
198
+ def __init__(self, redis_url: str):
199
+ self.redis = redis.from_url(redis_url)
200
+
201
+ def cache_result(self, ttl: int = 3600):
202
+ def decorator(func):
203
+ @wraps(func)
204
+ async def wrapper(*args, kwargs):
205
+ cache_key = self._generate_cache_key(func.__name__, args, kwargs)
206
+
207
+ # Try to get from cache
208
+ cached = await self.redis.get(cache_key)
209
+ if cached:
210
+ return json.loads(cached)
211
+
212
+ # Execute function and cache result
213
+ result = await func(*args, kwargs)
214
+ await self.redis.setex(
215
+ cache_key,
216
+ ttl,
217
+ json.dumps(result, default=str)
218
+ )
219
+ return result
220
+ return wrapper
221
+ return decorator
222
+ ```
223
+
224
+ ### Security Implementation
225
+
226
+ JWT Authentication:
227
+ ```python
228
+ import jwt
229
+ from datetime import datetime, timedelta
230
+ from passlib.context import CryptContext
231
+
232
+ class SecurityManager:
233
+ def __init__(self, secret_key: str):
234
+ self.secret_key = secret_key
235
+ self.pwd_context = CryptContext(schemes=["bcrypt"], deprecated="auto")
236
+
237
+ def hash_password(self, password: str) -> str:
238
+ return self.pwd_context.hash(password)
239
+
240
+ def verify_password(self, plain_password: str, hashed_password: str) -> bool:
241
+ return self.pwd_context.verify(plain_password, hashed_password)
242
+
243
+ def create_access_token(self, data: dict, expires_delta: timedelta = None) -> str:
244
+ to_encode = data.copy()
245
+ if expires_delta:
246
+ expire = datetime.utcnow() + expires_delta
247
+ else:
248
+ expire = datetime.utcnow() + timedelta(minutes=15)
249
+
250
+ to_encode.update({"exp": expire})
251
+ return jwt.encode(to_encode, self.secret_key, algorithm="HS256")
252
+ ```
253
+
254
+ ### Performance Optimization
255
+
256
+ Database Connection Pooling:
257
+ ```python
258
+ from sqlalchemy.pool import QueuePool
259
+ from sqlalchemy import event
260
+
261
+ def create_optimized_engine(database_url: str):
262
+ engine = create_engine(
263
+ database_url,
264
+ poolclass=QueuePool,
265
+ pool_size=20,
266
+ max_overflow=30,
267
+ pool_pre_ping=True,
268
+ pool_recycle=3600,
269
+ echo=False
270
+ )
271
+
272
+ @event.listens_for(engine, "before_cursor_execute")
273
+ def receive_before_cursor_execute(conn, cursor, statement, parameters, context, executemany):
274
+ context._query_start_time = time.time()
275
+
276
+ @event.listens_for(engine, "after_cursor_execute")
277
+ def receive_after_cursor_execute(conn, cursor, statement, parameters, context, executemany):
278
+ total = time.time() - context._query_start_time
279
+ if total > 0.1: # Log slow queries
280
+ logger.warning(f"Slow query: {total:.2f}s - {statement[:100]}")
281
+
282
+ return engine
283
+ ```
284
+
285
+ ---
286
+
287
+ ## Works Well With
288
+
289
+ - moai-domain-frontend - Full-stack development integration
290
+ - moai-domain-database - Advanced database patterns
291
+ - moai-integration-mcp - MCP server development for backend services
292
+ - moai-quality-security - Security validation and compliance
293
+ - moai-foundation-core - Core architectural principles
294
+
295
+ ---
296
+
297
+ ## Technology Stack
298
+
299
+ Primary Technologies:
300
+ - Languages: Python 3.13+, Node.js 20+, Go 1.23
301
+ - Frameworks: FastAPI, Django, Express.js, Gin
302
+ - Databases: PostgreSQL 16+, MongoDB 7+, Redis 7+
303
+ - Message Queues: RabbitMQ, Apache Kafka, Redis Pub/Sub
304
+ - Containerization: Docker, Kubernetes
305
+ - Monitoring: Prometheus, Grafana, OpenTelemetry
306
+
307
+ Integration Patterns:
308
+ - RESTful APIs with OpenAPI 3.1
309
+ - GraphQL with Apollo Federation
310
+ - gRPC for high-performance services
311
+ - Event-driven architecture with CQRS
312
+ - API Gateway patterns
313
+ - Circuit breakers and resilience patterns
314
+
315
+ ---
316
+
317
+ Status: Production Ready
318
+ Last Updated: 2025-11-30
319
+ Maintained by: MoAI-ADK Backend Team