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
@@ -0,0 +1,340 @@
1
+ # Automated Code Review - Analysis Patterns
2
+
3
+ > Sub-module: TRUST 5 analysis pattern implementations
4
+ > Parent: [Automated Code Review](../automated-code-review.md)
5
+
6
+ ## TRUST 5 Analysis Methods
7
+
8
+ ### Security Pattern Analysis
9
+
10
+ ```python
11
+ async def _analyze_security_patterns(
12
+ self, file_path: str, content: str
13
+ ) -> List[CodeIssue]:
14
+ """Analyze security patterns using Context7."""
15
+ issues = []
16
+ security_patterns = self.analysis_patterns.get('security', {})
17
+ lines = content.split('\n')
18
+
19
+ for category, patterns in security_patterns.items():
20
+ if isinstance(patterns, list):
21
+ for pattern in patterns:
22
+ try:
23
+ regex = re.compile(pattern, re.IGNORECASE)
24
+ for line_num, line in enumerate(lines, 1):
25
+ if regex.search(line):
26
+ issue = CodeIssue(
27
+ id=f"security_{category}_{line_num}_{len(issues)}",
28
+ category=TrustCategory.SAFETY,
29
+ severity=Severity.HIGH,
30
+ issue_type=IssueType.SECURITY_VULNERABILITY,
31
+ title=f"Security Issue: {category.replace('_', ' ').title()}",
32
+ description=f"Potential {category} vulnerability detected",
33
+ file_path=file_path,
34
+ line_number=line_num,
35
+ column_number=1,
36
+ code_snippet=line.strip(),
37
+ suggested_fix=self._get_security_fix_suggestion(category, line),
38
+ confidence=0.7,
39
+ rule_violated=f"SECURITY_{category.upper()}",
40
+ external_reference=self._get_security_reference(category)
41
+ )
42
+ issues.append(issue)
43
+ except re.error as e:
44
+ print(f"Invalid security pattern {pattern}: {e}")
45
+
46
+ return issues
47
+ ```
48
+
49
+ ### Performance Pattern Analysis
50
+
51
+ ```python
52
+ async def _analyze_performance_patterns(
53
+ self, file_path: str, content: str
54
+ ) -> List[CodeIssue]:
55
+ """Analyze performance patterns using Context7."""
56
+ issues = []
57
+ performance_patterns = self.analysis_patterns.get('performance', {})
58
+ lines = content.split('\n')
59
+
60
+ for category, patterns in performance_patterns.items():
61
+ if isinstance(patterns, list):
62
+ for pattern in patterns:
63
+ try:
64
+ regex = re.compile(pattern)
65
+ for line_num, line in enumerate(lines, 1):
66
+ if regex.search(line):
67
+ issue = CodeIssue(
68
+ id=f"perf_{category}_{line_num}_{len(issues)}",
69
+ category=TrustCategory.TIMELINESS,
70
+ severity=Severity.MEDIUM,
71
+ issue_type=IssueType.PERFORMANCE_ISSUE,
72
+ title=f"Performance Issue: {category.replace('_', ' ').title()}",
73
+ description=f"Performance anti-pattern detected: {category}",
74
+ file_path=file_path,
75
+ line_number=line_num,
76
+ column_number=1,
77
+ code_snippet=line.strip(),
78
+ suggested_fix=self._get_performance_fix_suggestion(category, line),
79
+ confidence=0.6,
80
+ rule_violated=f"PERF_{category.upper()}"
81
+ )
82
+ issues.append(issue)
83
+ except re.error as e:
84
+ print(f"Invalid performance pattern {pattern}: {e}")
85
+
86
+ return issues
87
+ ```
88
+
89
+ ### Quality Pattern Analysis
90
+
91
+ ```python
92
+ async def _analyze_quality_patterns(
93
+ self, file_path: str, tree: ast.AST
94
+ ) -> List[CodeIssue]:
95
+ """Analyze code quality patterns."""
96
+ issues = []
97
+ quality_patterns = self.analysis_patterns.get('quality', {})
98
+
99
+ # Analyze function length
100
+ if 'long_functions' in quality_patterns:
101
+ max_lines = quality_patterns['long_functions'].get('max_lines', 50)
102
+ function_issues = self._analyze_function_length(file_path, tree, max_lines)
103
+ issues.extend(function_issues)
104
+
105
+ # Analyze complexity
106
+ if 'complex_conditionals' in quality_patterns:
107
+ max_complexity = quality_patterns['complex_conditionals'].get('max_complexity', 10)
108
+ complexity_issues = self._analyze_complexity(file_path, tree, max_complexity)
109
+ issues.extend(complexity_issues)
110
+
111
+ # Analyze nesting depth
112
+ if 'deep_nesting' in quality_patterns:
113
+ max_depth = quality_patterns['deep_nesting'].get('max_depth', 4)
114
+ nesting_issues = self._analyze_nesting_depth(file_path, tree, max_depth)
115
+ issues.extend(nesting_issues)
116
+
117
+ return issues
118
+ ```
119
+
120
+ ## Truthfulness Analysis
121
+
122
+ ### Unreachable Code Detection
123
+
124
+ ```python
125
+ def _check_unreachable_code(
126
+ self, file_path: str, func_node: ast.AST
127
+ ) -> List[CodeIssue]:
128
+ """Check for unreachable code after return statements."""
129
+ issues = []
130
+
131
+ class UnreachableCodeVisitor(ast.NodeVisitor):
132
+ def __init__(self):
133
+ self.found_return = False
134
+ self.issues = []
135
+
136
+ def visit_Return(self, node):
137
+ self.found_return = True
138
+ self.generic_visit(node)
139
+
140
+ def generic_visit(self, node):
141
+ if self.found_return and hasattr(node, 'lineno'):
142
+ if isinstance(node, (ast.Expr, ast.Assign, ast.AugAssign)):
143
+ issue = CodeIssue(
144
+ id=f"unreachable_{node.lineno}",
145
+ category=TrustCategory.TRUTHFULNESS,
146
+ severity=Severity.LOW,
147
+ issue_type=IssueType.CODE_SMELL,
148
+ title="Unreachable Code",
149
+ description="Code after return statement is never executed",
150
+ file_path=file_path,
151
+ line_number=node.lineno,
152
+ column_number=1,
153
+ code_snippet=f"# Unreachable code at line {node.lineno}",
154
+ suggested_fix="Remove unreachable code or move before return",
155
+ confidence=0.7,
156
+ rule_violated="UNREACHABLE_CODE"
157
+ )
158
+ self.issues.append(issue)
159
+ super().generic_visit(node)
160
+
161
+ visitor = UnreachableCodeVisitor()
162
+ visitor.visit(func_node)
163
+ return visitor.issues
164
+ ```
165
+
166
+ ### Comparison Issue Detection
167
+
168
+ ```python
169
+ def _check_comparison_issues(
170
+ self, file_path: str, compare_node: ast.Compare
171
+ ) -> List[CodeIssue]:
172
+ """Check for comparison logic issues."""
173
+ issues = []
174
+
175
+ for op in compare_node.ops:
176
+ if isinstance(op, (ast.Eq, ast.NotEq)):
177
+ for comparator in compare_node.comparators:
178
+ if isinstance(comparator, ast.Constant) and comparator.value is None:
179
+ issue = CodeIssue(
180
+ id=f"none_comparison_{compare_node.lineno}",
181
+ category=TrustCategory.TRUTHFULNESS,
182
+ severity=Severity.LOW,
183
+ issue_type=IssueType.CODE_SMELL,
184
+ title="None Comparison",
185
+ description="Use 'is' or 'is not' for None comparison",
186
+ file_path=file_path,
187
+ line_number=compare_node.lineno,
188
+ column_number=1,
189
+ code_snippet="# Use 'is None' instead of '== None'",
190
+ suggested_fix="Replace '== None' with 'is None'",
191
+ confidence=0.8,
192
+ rule_violated="NONE_COMPARISON",
193
+ auto_fixable=True
194
+ )
195
+ issues.append(issue)
196
+
197
+ return issues
198
+ ```
199
+
200
+ ## Usability Analysis
201
+
202
+ ### Docstring Presence Check
203
+
204
+ ```python
205
+ def _analyze_usability(
206
+ self, file_path: str, content: str, tree: ast.AST
207
+ ) -> List[CodeIssue]:
208
+ """Analyze code for usability and maintainability."""
209
+ issues = []
210
+
211
+ for node in ast.walk(tree):
212
+ if isinstance(node, (ast.FunctionDef, ast.AsyncFunctionDef)):
213
+ if not ast.get_docstring(node):
214
+ issue = CodeIssue(
215
+ id=f"no_docstring_{node.lineno}",
216
+ category=TrustCategory.USABILITY,
217
+ severity=Severity.LOW,
218
+ issue_type=IssueType.DOCUMENTATION_ISSUE,
219
+ title="Missing Docstring",
220
+ description=f"Function '{node.name}' is missing a docstring",
221
+ file_path=file_path,
222
+ line_number=node.lineno,
223
+ column_number=1,
224
+ code_snippet=f"def {node.name}(...):",
225
+ suggested_fix=f"Add docstring explaining purpose and parameters",
226
+ confidence=0.7,
227
+ rule_violated="MISSING_DOCSTRING"
228
+ )
229
+ issues.append(issue)
230
+
231
+ return issues
232
+ ```
233
+
234
+ ## Safety Analysis
235
+
236
+ ### Bare Except Detection
237
+
238
+ ```python
239
+ def _analyze_safety(self, file_path: str, tree: ast.AST) -> List[CodeIssue]:
240
+ """Analyze code for safety and error handling."""
241
+ issues = []
242
+
243
+ for node in ast.walk(tree):
244
+ if isinstance(node, ast.ExceptHandler):
245
+ if node.type is None:
246
+ issue = CodeIssue(
247
+ id=f"bare_except_{node.lineno}",
248
+ category=TrustCategory.SAFETY,
249
+ severity=Severity.MEDIUM,
250
+ issue_type=IssueType.CODE_SMELL,
251
+ title="Bare Except Clause",
252
+ description="Bare except clause can hide unexpected errors",
253
+ file_path=file_path,
254
+ line_number=node.lineno,
255
+ column_number=1,
256
+ code_snippet="except:",
257
+ suggested_fix="Specify exception types or use 'except Exception:'",
258
+ confidence=0.8,
259
+ rule_violated="BARE_EXCEPT"
260
+ )
261
+ issues.append(issue)
262
+
263
+ return issues
264
+ ```
265
+
266
+ ## Complexity Metrics
267
+
268
+ ### Cyclomatic Complexity
269
+
270
+ ```python
271
+ def _calculate_cyclomatic_complexity(self, node: ast.AST) -> int:
272
+ """Calculate cyclomatic complexity for an AST node."""
273
+ complexity = 1 # Base complexity
274
+
275
+ for child in ast.walk(node):
276
+ if isinstance(child, (ast.If, ast.While, ast.For, ast.AsyncFor,
277
+ ast.ExceptHandler, ast.With, ast.AsyncWith)):
278
+ complexity += 1
279
+ elif isinstance(child, ast.BoolOp):
280
+ complexity += len(child.values) - 1
281
+
282
+ return complexity
283
+ ```
284
+
285
+ ### Nesting Depth
286
+
287
+ ```python
288
+ def _calculate_nesting_depth(self, node: ast.AST, current_depth: int = 0) -> int:
289
+ """Calculate maximum nesting depth for an AST node."""
290
+ max_depth = current_depth
291
+
292
+ for child in ast.walk(node):
293
+ if isinstance(child, (ast.If, ast.While, ast.For, ast.AsyncFor,
294
+ ast.With, ast.AsyncWith, ast.Try)):
295
+ if hasattr(child, 'lineno') and hasattr(node, 'lineno'):
296
+ if child.lineno > node.lineno:
297
+ child_depth = self._calculate_nesting_depth(child, current_depth + 1)
298
+ max_depth = max(max_depth, child_depth)
299
+
300
+ return max_depth
301
+ ```
302
+
303
+ ## Fix Suggestion Helpers
304
+
305
+ ```python
306
+ def _get_security_fix_suggestion(self, category: str, line: str) -> str:
307
+ """Get security fix suggestion."""
308
+ suggestions = {
309
+ 'sql_injection': "Use parameterized queries or ORM",
310
+ 'command_injection': "Use subprocess.run with argument lists",
311
+ 'path_traversal': "Validate and sanitize file paths"
312
+ }
313
+ return suggestions.get(category, "Review and fix security vulnerability")
314
+
315
+ def _get_performance_fix_suggestion(self, category: str, line: str) -> str:
316
+ """Get performance fix suggestion."""
317
+ suggestions = {
318
+ 'inefficient_loops': "Use list comprehensions or generators",
319
+ 'memory_leaks': "Review memory usage and ensure cleanup"
320
+ }
321
+ return suggestions.get(category, "Optimize for better performance")
322
+
323
+ def _get_security_reference(self, category: str) -> str:
324
+ """Get external security reference."""
325
+ references = {
326
+ 'sql_injection': "OWASP SQL Injection Prevention",
327
+ 'command_injection': "OWASP Command Injection Prevention",
328
+ 'path_traversal': "OWASP Path Traversal Prevention"
329
+ }
330
+ return references.get(category, "OWASP Top 10 Security Risks")
331
+ ```
332
+
333
+ ## Related Sub-modules
334
+
335
+ - [Core Classes](./core-classes.md) - Data structures and main classes
336
+ - [Tool Integration](./tool-integration.md) - Static analysis tools
337
+
338
+ ---
339
+
340
+ Sub-module: `modules/code-review/analysis-patterns.md`
@@ -0,0 +1,299 @@
1
+ # Automated Code Review - Core Classes
2
+
3
+ > Sub-module: Core class implementations for automated code review
4
+ > Parent: [Automated Code Review](../automated-code-review.md)
5
+
6
+ ## Enumerations and Data Classes
7
+
8
+ ### TrustCategory Enum
9
+
10
+ ```python
11
+ class TrustCategory(Enum):
12
+ """TRUST 5 framework categories."""
13
+ TRUTHFULNESS = "truthfulness" # Code correctness and logic accuracy
14
+ RELEVANCE = "relevance" # Code meets requirements and purpose
15
+ USABILITY = "usability" # Code is maintainable and understandable
16
+ SAFETY = "safety" # Code is secure and handles errors properly
17
+ TIMELINESS = "timeliness" # Code meets performance and delivery standards
18
+ ```
19
+
20
+ ### Severity Enum
21
+
22
+ ```python
23
+ class Severity(Enum):
24
+ """Issue severity levels."""
25
+ CRITICAL = "critical"
26
+ HIGH = "high"
27
+ MEDIUM = "medium"
28
+ LOW = "low"
29
+ INFO = "info"
30
+ ```
31
+
32
+ ### IssueType Enum
33
+
34
+ ```python
35
+ class IssueType(Enum):
36
+ """Types of code issues."""
37
+ SYNTAX_ERROR = "syntax_error"
38
+ LOGIC_ERROR = "logic_error"
39
+ SECURITY_VULNERABILITY = "security_vulnerability"
40
+ PERFORMANCE_ISSUE = "performance_issue"
41
+ CODE_SMELL = "code_smell"
42
+ STYLE_VIOLATION = "style_violation"
43
+ DOCUMENTATION_ISSUE = "documentation_issue"
44
+ TESTING_ISSUE = "testing_issue"
45
+ TYPE_ERROR = "type_error"
46
+ IMPORT_ISSUE = "import_issue"
47
+ ```
48
+
49
+ ### CodeIssue Dataclass
50
+
51
+ ```python
52
+ @dataclass
53
+ class CodeIssue:
54
+ """Individual code issue found during review."""
55
+ id: str
56
+ category: TrustCategory
57
+ severity: Severity
58
+ issue_type: IssueType
59
+ title: str
60
+ description: str
61
+ file_path: str
62
+ line_number: int
63
+ column_number: int
64
+ code_snippet: str
65
+ suggested_fix: str
66
+ confidence: float # 0.0 to 1.0
67
+ rule_violated: Optional[str] = None
68
+ external_reference: Optional[str] = None
69
+ auto_fixable: bool = False
70
+ fix_diff: Optional[str] = None
71
+ ```
72
+
73
+ ### FileReviewResult Dataclass
74
+
75
+ ```python
76
+ @dataclass
77
+ class FileReviewResult:
78
+ """Review results for a single file."""
79
+ file_path: str
80
+ issues: List[CodeIssue]
81
+ metrics: Dict[str, Any]
82
+ trust_score: float # 0.0 to 1.0
83
+ category_scores: Dict[TrustCategory, float]
84
+ lines_of_code: int
85
+ complexity_metrics: Dict[str, float]
86
+ review_timestamp: float
87
+ ```
88
+
89
+ ### CodeReviewReport Dataclass
90
+
91
+ ```python
92
+ @dataclass
93
+ class CodeReviewReport:
94
+ """Comprehensive code review report."""
95
+ project_path: str
96
+ files_reviewed: List[FileReviewResult]
97
+ overall_trust_score: float
98
+ overall_category_scores: Dict[TrustCategory, float]
99
+ summary_metrics: Dict[str, Any]
100
+ recommendations: List[str]
101
+ critical_issues: List[CodeIssue]
102
+ review_duration: float
103
+ context7_patterns_used: List[str]
104
+ ```
105
+
106
+ ## AutomatedCodeReviewer Class
107
+
108
+ ```python
109
+ class AutomatedCodeReviewer:
110
+ """Main automated code reviewer with TRUST 5 validation."""
111
+
112
+ def __init__(self, context7_client=None):
113
+ self.context7 = context7_client
114
+ self.context7_analyzer = Context7CodeAnalyzer(context7_client)
115
+ self.static_analyzer = StaticAnalysisTools()
116
+ self.analysis_patterns = {}
117
+ self.review_history = []
118
+
119
+ async def review_codebase(
120
+ self, project_path: str,
121
+ include_patterns: List[str] = None,
122
+ exclude_patterns: List[str] = None
123
+ ) -> CodeReviewReport:
124
+ """Perform comprehensive code review of entire codebase."""
125
+ start_time = time.time()
126
+
127
+ # Load analysis patterns
128
+ self.analysis_patterns = await self.context7_analyzer.load_analysis_patterns()
129
+
130
+ # Find files to review
131
+ files_to_review = self._find_files_to_review(
132
+ project_path, include_patterns, exclude_patterns
133
+ )
134
+
135
+ # Review each file
136
+ file_results = []
137
+ for file_path in files_to_review:
138
+ file_result = await self.review_single_file(file_path)
139
+ file_results.append(file_result)
140
+
141
+ # Generate comprehensive report
142
+ end_time = time.time()
143
+ return self._generate_comprehensive_report(
144
+ project_path, file_results, end_time - start_time
145
+ )
146
+
147
+ async def review_single_file(self, file_path: str) -> FileReviewResult:
148
+ """Review a single Python file."""
149
+ try:
150
+ with open(file_path, 'r', encoding='utf-8') as f:
151
+ content = f.read()
152
+ except Exception as e:
153
+ return self._create_error_result(file_path, str(e))
154
+
155
+ # Parse AST
156
+ try:
157
+ tree = ast.parse(content)
158
+ except SyntaxError as e:
159
+ return self._create_syntax_error_result(file_path, content, e)
160
+
161
+ # Run static analyses
162
+ static_results = await self.static_analyzer.run_all_analyses(file_path)
163
+
164
+ # Perform Context7-enhanced analysis
165
+ context7_issues = await self._perform_context7_analysis(file_path, content, tree)
166
+
167
+ # Perform custom analysis
168
+ custom_issues = await self._perform_custom_analysis(file_path, content, tree)
169
+
170
+ # Combine all issues
171
+ all_issues = []
172
+ all_issues.extend(self._convert_static_issues(static_results, file_path))
173
+ all_issues.extend(context7_issues)
174
+ all_issues.extend(custom_issues)
175
+
176
+ # Calculate metrics and scores
177
+ metrics = self._calculate_file_metrics(content, tree)
178
+ trust_scores = self._calculate_trust_scores(all_issues, metrics)
179
+
180
+ return FileReviewResult(
181
+ file_path=file_path,
182
+ issues=all_issues,
183
+ metrics=metrics,
184
+ trust_score=trust_scores['overall'],
185
+ category_scores=trust_scores['categories'],
186
+ lines_of_code=len(content.split('\n')),
187
+ complexity_metrics=self._calculate_complexity_metrics(content, tree),
188
+ review_timestamp=time.time()
189
+ )
190
+
191
+ def _find_files_to_review(
192
+ self, project_path: str,
193
+ include_patterns: List[str] = None,
194
+ exclude_patterns: List[str] = None
195
+ ) -> List[str]:
196
+ """Find Python files to review."""
197
+ if include_patterns is None:
198
+ include_patterns = ['**/*.py']
199
+
200
+ if exclude_patterns is None:
201
+ exclude_patterns = [
202
+ '/__pycache__/', '/venv/', '/env/',
203
+ '/node_modules/', '/.git/', '/migrations/', '/tests/'
204
+ ]
205
+
206
+ from pathlib import Path
207
+ import fnmatch
208
+
209
+ project_root = Path(project_path)
210
+ files = []
211
+
212
+ for pattern in include_patterns:
213
+ for file_path in project_root.glob(pattern):
214
+ if file_path.is_file():
215
+ excluded = any(
216
+ fnmatch.fnmatch(str(file_path.relative_to(project_root)), ep)
217
+ for ep in exclude_patterns
218
+ )
219
+ if not excluded:
220
+ files.append(str(file_path))
221
+
222
+ return sorted(files)
223
+ ```
224
+
225
+ ## Context7CodeAnalyzer Class
226
+
227
+ ```python
228
+ class Context7CodeAnalyzer:
229
+ """Integration with Context7 for code analysis patterns."""
230
+
231
+ def __init__(self, context7_client=None):
232
+ self.context7 = context7_client
233
+ self.analysis_patterns = {}
234
+ self.security_patterns = {}
235
+ self.performance_patterns = {}
236
+
237
+ async def load_analysis_patterns(self, language: str = "python") -> Dict[str, Any]:
238
+ """Load code analysis patterns from Context7."""
239
+ if not self.context7:
240
+ return self._get_default_analysis_patterns()
241
+
242
+ try:
243
+ security_patterns = await self.context7.get_library_docs(
244
+ context7_library_id="/security/semgrep",
245
+ topic="security vulnerability detection patterns 2025",
246
+ tokens=4000
247
+ )
248
+ self.security_patterns = security_patterns
249
+
250
+ performance_patterns = await self.context7.get_library_docs(
251
+ context7_library_id="/performance/python-profiling",
252
+ topic="performance anti-patterns code analysis 2025",
253
+ tokens=3000
254
+ )
255
+ self.performance_patterns = performance_patterns
256
+
257
+ quality_patterns = await self.context7.get_library_docs(
258
+ context7_library_id="/code-quality/sonarqube",
259
+ topic="code quality best practices smells detection 2025",
260
+ tokens=4000
261
+ )
262
+
263
+ return {
264
+ 'security': security_patterns,
265
+ 'performance': performance_patterns,
266
+ 'quality': quality_patterns
267
+ }
268
+ except Exception as e:
269
+ print(f"Failed to load Context7 patterns: {e}")
270
+ return self._get_default_analysis_patterns()
271
+
272
+ def _get_default_analysis_patterns(self) -> Dict[str, Any]:
273
+ """Get default analysis patterns when Context7 is unavailable."""
274
+ return {
275
+ 'security': {
276
+ 'sql_injection': [r"execute\([^)]*\+[^)]*\)", r"format\s*\("],
277
+ 'command_injection': [r"os\.system\(", r"subprocess\.call\(", r"eval\("],
278
+ 'path_traversal': [r"open\([^)]*\+[^)]*\)", r"\.\.\/"]
279
+ },
280
+ 'performance': {
281
+ 'inefficient_loops': [r"for.*in.*range\(len\(", r"while.*len\("],
282
+ 'memory_leaks': [r"global\s+", r"\.append\(.*\)\s*\.append\("]
283
+ },
284
+ 'quality': {
285
+ 'long_functions': {'max_lines': 50},
286
+ 'complex_conditionals': {'max_complexity': 10},
287
+ 'deep_nesting': {'max_depth': 4}
288
+ }
289
+ }
290
+ ```
291
+
292
+ ## Related Sub-modules
293
+
294
+ - [Analysis Patterns](./analysis-patterns.md) - TRUST 5 analysis implementation
295
+ - [Tool Integration](./tool-integration.md) - Static analysis tool wrappers
296
+
297
+ ---
298
+
299
+ Sub-module: `modules/code-review/core-classes.md`