moai-adk 0.4.5__py3-none-any.whl → 0.20.1__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 (433) hide show
  1. moai_adk/__init__.py +1 -1
  2. moai_adk/__main__.py +74 -1
  3. moai_adk/cli/commands/__init__.py +1 -1
  4. moai_adk/cli/commands/analyze.py +119 -0
  5. moai_adk/cli/commands/backup.py +25 -1
  6. moai_adk/cli/commands/doctor.py +31 -5
  7. moai_adk/cli/commands/improve_user_experience.py +307 -0
  8. moai_adk/cli/commands/init.py +111 -10
  9. moai_adk/cli/commands/status.py +33 -3
  10. moai_adk/cli/commands/update.py +921 -130
  11. moai_adk/cli/commands/validate_links.py +120 -0
  12. moai_adk/cli/prompts/init_prompts.py +22 -87
  13. moai_adk/core/analysis/__init__.py +9 -0
  14. moai_adk/core/analysis/session_analyzer.py +388 -0
  15. moai_adk/core/analysis/tag_chain_analyzer.py +344 -0
  16. moai_adk/core/analysis/tag_chain_repair.py +879 -0
  17. moai_adk/core/config/__init__.py +19 -0
  18. moai_adk/core/config/migration.py +235 -0
  19. moai_adk/core/git/__init__.py +1 -1
  20. moai_adk/core/git/branch.py +1 -1
  21. moai_adk/core/git/commit.py +1 -1
  22. moai_adk/core/git/manager.py +1 -1
  23. moai_adk/core/issue_creator.py +313 -0
  24. moai_adk/core/mcp/setup.py +56 -0
  25. moai_adk/core/mcp/setup_old.py +296 -0
  26. moai_adk/core/project/backup_utils.py +1 -1
  27. moai_adk/core/project/checker.py +2 -2
  28. moai_adk/core/project/detector.py +211 -12
  29. moai_adk/core/project/initializer.py +85 -15
  30. moai_adk/core/project/phase_executor.py +76 -13
  31. moai_adk/core/project/validator.py +13 -13
  32. moai_adk/core/quality/__init__.py +1 -1
  33. moai_adk/core/quality/trust_checker.py +1 -1
  34. moai_adk/core/quality/validators/__init__.py +1 -1
  35. moai_adk/core/quality/validators/base_validator.py +1 -1
  36. moai_adk/core/tags/__init__.py +86 -0
  37. moai_adk/core/tags/auto_corrector.py +693 -0
  38. moai_adk/core/tags/ci_validator.py +463 -0
  39. moai_adk/core/tags/cli.py +283 -0
  40. moai_adk/core/tags/generator.py +109 -0
  41. moai_adk/core/tags/inserter.py +99 -0
  42. moai_adk/core/tags/mapper.py +126 -0
  43. moai_adk/core/tags/parser.py +76 -0
  44. moai_adk/core/tags/policy_validator.py +580 -0
  45. moai_adk/core/tags/pre_commit_validator.py +421 -0
  46. moai_adk/core/tags/reporter.py +956 -0
  47. moai_adk/core/tags/rollback_manager.py +525 -0
  48. moai_adk/core/tags/tags.py +149 -0
  49. moai_adk/core/tags/validator.py +897 -0
  50. moai_adk/core/template/__init__.py +1 -1
  51. moai_adk/core/template/backup.py +1 -1
  52. moai_adk/core/template/merger.py +50 -1
  53. moai_adk/core/template/processor.py +119 -13
  54. moai_adk/core/template_engine.py +268 -0
  55. moai_adk/templates/.claude/agents/alfred/backend-expert.md +348 -0
  56. moai_adk/templates/.claude/agents/alfred/cc-manager.md +209 -944
  57. moai_adk/templates/.claude/agents/alfred/database-expert.md +352 -0
  58. moai_adk/templates/.claude/agents/alfred/debug-helper.md +34 -5
  59. moai_adk/templates/.claude/agents/alfred/devops-expert.md +464 -0
  60. moai_adk/templates/.claude/agents/alfred/doc-syncer.md +38 -8
  61. moai_adk/templates/.claude/agents/alfred/format-expert.md +469 -0
  62. moai_adk/templates/.claude/agents/alfred/frontend-expert.md +357 -0
  63. moai_adk/templates/.claude/agents/alfred/git-manager.md +128 -9
  64. moai_adk/templates/.claude/agents/alfred/implementation-planner.md +104 -6
  65. moai_adk/templates/.claude/agents/alfred/project-manager.md +88 -16
  66. moai_adk/templates/.claude/agents/alfred/quality-gate.md +36 -9
  67. moai_adk/templates/.claude/agents/alfred/security-expert.md +270 -0
  68. moai_adk/templates/.claude/agents/alfred/skill-factory.md +865 -0
  69. moai_adk/templates/.claude/agents/alfred/spec-builder.md +214 -43
  70. moai_adk/templates/.claude/agents/alfred/tag-agent.md +111 -9
  71. moai_adk/templates/.claude/agents/alfred/tdd-implementer.md +309 -160
  72. moai_adk/templates/.claude/agents/alfred/trust-checker.md +36 -7
  73. moai_adk/templates/.claude/agents/alfred/ui-ux-expert.md +605 -0
  74. moai_adk/templates/.claude/commands/alfred/0-project.md +393 -966
  75. moai_adk/templates/.claude/commands/alfred/1-plan.md +651 -367
  76. moai_adk/templates/.claude/commands/alfred/2-run.md +388 -241
  77. moai_adk/templates/.claude/commands/alfred/3-sync.md +1921 -410
  78. moai_adk/templates/.claude/commands/alfred/9-feedback.md +153 -0
  79. moai_adk/templates/.claude/commands/alfred/release-new.md +3604 -0
  80. moai_adk/templates/.claude/hooks/alfred/core/project.py +484 -20
  81. moai_adk/templates/.claude/hooks/alfred/core/timeout.py +136 -0
  82. moai_adk/templates/.claude/hooks/alfred/core/ttl_cache.py +108 -0
  83. moai_adk/templates/.claude/hooks/alfred/core/version_cache.py +198 -0
  84. moai_adk/templates/.claude/hooks/alfred/handlers/__init__.py +14 -6
  85. moai_adk/templates/.claude/hooks/alfred/post_tool__enable_streaming_ui.py +50 -0
  86. moai_adk/templates/.claude/hooks/alfred/post_tool__log_changes.py +93 -0
  87. moai_adk/templates/.claude/hooks/alfred/post_tool__tag_auto_corrector.py +407 -0
  88. moai_adk/templates/.claude/hooks/alfred/pre_tool__auto_checkpoint.py +99 -0
  89. moai_adk/templates/.claude/hooks/alfred/pre_tool__realtime_tag_monitor.py +335 -0
  90. moai_adk/templates/.claude/hooks/alfred/pre_tool__tag_policy_validator.py +325 -0
  91. moai_adk/templates/.claude/hooks/alfred/session_end__cleanup.py +93 -0
  92. moai_adk/templates/.claude/hooks/alfred/session_start__auto_cleanup.py +580 -0
  93. moai_adk/templates/.claude/hooks/alfred/session_start__show_project_info.py +298 -0
  94. moai_adk/templates/.claude/hooks/alfred/shared/core/__init__.py +170 -0
  95. moai_adk/templates/.claude/hooks/alfred/{core → shared/core}/checkpoint.py +3 -3
  96. moai_adk/templates/.claude/hooks/alfred/{core → shared/core}/context.py +5 -5
  97. moai_adk/templates/.claude/hooks/alfred/shared/core/project.py +749 -0
  98. moai_adk/templates/.claude/hooks/alfred/shared/core/tags.py +230 -0
  99. moai_adk/templates/.claude/hooks/alfred/shared/core/version_cache.py +198 -0
  100. moai_adk/templates/.claude/hooks/alfred/shared/handlers/__init__.py +21 -0
  101. moai_adk/templates/.claude/hooks/alfred/shared/handlers/daily_analysis.py +351 -0
  102. moai_adk/templates/.claude/hooks/alfred/shared/handlers/notification.py +154 -0
  103. moai_adk/templates/.claude/hooks/alfred/shared/handlers/session.py +174 -0
  104. moai_adk/templates/.claude/hooks/alfred/shared/handlers/tool.py +87 -0
  105. moai_adk/templates/.claude/hooks/alfred/shared/handlers/user.py +61 -0
  106. moai_adk/templates/.claude/hooks/alfred/user_prompt__jit_load_docs.py +111 -0
  107. moai_adk/templates/.claude/hooks/alfred/utils/__init__.py +1 -0
  108. moai_adk/templates/.claude/hooks/alfred/utils/hook_config.py +94 -0
  109. moai_adk/templates/.claude/hooks/alfred/utils/timeout.py +161 -0
  110. moai_adk/templates/.claude/output-styles/alfred/alfred-moai-adk-beginner.md +267 -0
  111. moai_adk/templates/.claude/output-styles/alfred/keating-personal-tutor.md +440 -0
  112. moai_adk/templates/.claude/output-styles/alfred/r2d2-agentic-coding.md +583 -0
  113. moai_adk/templates/.claude/settings.json +96 -14
  114. moai_adk/templates/.claude/skills/moai-alfred-agent-guide/SKILL.md +70 -0
  115. moai_adk/templates/.claude/skills/moai-alfred-agent-guide/examples.md +62 -0
  116. moai_adk/templates/.claude/skills/moai-alfred-agent-guide/reference.md +242 -0
  117. moai_adk/templates/.claude/skills/moai-alfred-ask-user-questions/SKILL.md +237 -0
  118. moai_adk/templates/.claude/skills/moai-alfred-ask-user-questions/examples.md +871 -0
  119. moai_adk/templates/.claude/skills/moai-alfred-ask-user-questions/reference.md +653 -0
  120. moai_adk/templates/.claude/skills/moai-alfred-clone-pattern/README.md +162 -0
  121. moai_adk/templates/.claude/skills/moai-alfred-clone-pattern/SKILL.md +227 -0
  122. moai_adk/templates/.claude/skills/moai-alfred-clone-pattern/examples.md +354 -0
  123. moai_adk/templates/.claude/skills/moai-alfred-clone-pattern/reference.md +158 -0
  124. moai_adk/templates/.claude/skills/moai-alfred-code-reviewer/SKILL.md +179 -79
  125. moai_adk/templates/.claude/skills/moai-alfred-code-reviewer/examples.md +117 -0
  126. moai_adk/templates/.claude/skills/moai-alfred-code-reviewer/scripts/pre-review-check.sh +62 -0
  127. moai_adk/templates/.claude/skills/moai-alfred-config-schema/SKILL.md +132 -0
  128. moai_adk/templates/.claude/skills/moai-alfred-config-schema/examples.md +28 -0
  129. moai_adk/templates/.claude/skills/moai-alfred-config-schema/reference.md +444 -0
  130. moai_adk/templates/.claude/skills/moai-alfred-context-budget/SKILL.md +62 -0
  131. moai_adk/templates/.claude/skills/moai-alfred-context-budget/examples.md +28 -0
  132. moai_adk/templates/.claude/skills/moai-alfred-context-budget/reference.md +405 -0
  133. moai_adk/templates/.claude/skills/moai-alfred-dev-guide/SKILL.md +51 -0
  134. moai_adk/templates/.claude/skills/moai-alfred-dev-guide/examples.md +355 -0
  135. moai_adk/templates/.claude/skills/moai-alfred-dev-guide/reference.md +239 -0
  136. moai_adk/templates/.claude/skills/moai-alfred-expertise-detection/SKILL.md +323 -0
  137. moai_adk/templates/.claude/skills/moai-alfred-expertise-detection/examples.md +286 -0
  138. moai_adk/templates/.claude/skills/moai-alfred-expertise-detection/reference.md +126 -0
  139. moai_adk/templates/.claude/skills/moai-alfred-issue-labels/SKILL.md +229 -0
  140. moai_adk/templates/.claude/skills/moai-alfred-issue-labels/examples.md +4 -0
  141. moai_adk/templates/.claude/skills/moai-alfred-issue-labels/reference.md +150 -0
  142. moai_adk/templates/.claude/skills/moai-alfred-language-detection/SKILL.md +87 -73
  143. moai_adk/templates/.claude/skills/moai-alfred-language-detection/examples.md +29 -0
  144. moai_adk/templates/.claude/skills/moai-alfred-language-detection/reference.md +28 -0
  145. moai_adk/templates/.claude/skills/moai-alfred-personas/README.md +42 -0
  146. moai_adk/templates/.claude/skills/moai-alfred-personas/SKILL.md +429 -0
  147. moai_adk/templates/.claude/skills/moai-alfred-personas/examples.md +520 -0
  148. moai_adk/templates/.claude/skills/moai-alfred-personas/reference.md +405 -0
  149. moai_adk/templates/.claude/skills/moai-alfred-practices/SKILL.md +89 -0
  150. moai_adk/templates/.claude/skills/moai-alfred-practices/examples.md +122 -0
  151. moai_adk/templates/.claude/skills/moai-alfred-practices/reference.md +369 -0
  152. moai_adk/templates/.claude/skills/moai-alfred-proactive-suggestions/SKILL.md +508 -0
  153. moai_adk/templates/.claude/skills/moai-alfred-proactive-suggestions/examples.md +481 -0
  154. moai_adk/templates/.claude/skills/moai-alfred-proactive-suggestions/reference.md +100 -0
  155. moai_adk/templates/.claude/skills/moai-alfred-rules/SKILL.md +77 -0
  156. moai_adk/templates/.claude/skills/moai-alfred-rules/examples.md +265 -0
  157. moai_adk/templates/.claude/skills/moai-alfred-rules/reference.md +539 -0
  158. moai_adk/templates/.claude/skills/moai-alfred-session-state/SKILL.md +320 -0
  159. moai_adk/templates/.claude/skills/moai-alfred-session-state/examples.md +4 -0
  160. moai_adk/templates/.claude/skills/moai-alfred-session-state/reference.md +84 -0
  161. moai_adk/templates/.claude/skills/moai-alfred-spec-authoring/README.md +137 -0
  162. moai_adk/templates/.claude/skills/moai-alfred-spec-authoring/SKILL.md +219 -0
  163. moai_adk/templates/.claude/skills/moai-alfred-spec-authoring/examples/validate-spec.sh +161 -0
  164. moai_adk/templates/.claude/skills/moai-alfred-spec-authoring/examples.md +541 -0
  165. moai_adk/templates/.claude/skills/moai-alfred-spec-authoring/reference.md +622 -0
  166. moai_adk/templates/.claude/skills/moai-alfred-todowrite-pattern/SKILL.md +19 -0
  167. moai_adk/templates/.claude/skills/moai-alfred-todowrite-pattern/examples.md +4 -0
  168. moai_adk/templates/.claude/skills/moai-alfred-todowrite-pattern/reference.md +211 -0
  169. moai_adk/templates/.claude/skills/moai-alfred-workflow/SKILL.md +288 -0
  170. moai_adk/templates/.claude/skills/moai-cc-agents/SKILL.md +269 -0
  171. moai_adk/templates/.claude/skills/moai-cc-agents/templates/agent-template.md +32 -0
  172. moai_adk/templates/.claude/skills/moai-cc-claude-md/SKILL.md +298 -0
  173. moai_adk/templates/.claude/skills/moai-cc-claude-md/templates/CLAUDE-template.md +26 -0
  174. moai_adk/templates/.claude/skills/moai-cc-commands/SKILL.md +307 -0
  175. moai_adk/templates/.claude/skills/moai-cc-commands/templates/command-template.md +21 -0
  176. moai_adk/templates/.claude/skills/moai-cc-hooks/SKILL.md +252 -0
  177. moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/pre-bash-check.sh +19 -0
  178. moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/preserve-permissions.sh +19 -0
  179. moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/validate-bash-command.py +24 -0
  180. moai_adk/templates/.claude/skills/moai-cc-mcp-plugins/SKILL.md +199 -0
  181. moai_adk/templates/.claude/skills/moai-cc-mcp-plugins/templates/settings-mcp-template.json +39 -0
  182. moai_adk/templates/.claude/skills/moai-cc-memory/SKILL.md +316 -0
  183. moai_adk/templates/.claude/skills/moai-cc-memory/templates/session-summary-template.md +18 -0
  184. moai_adk/templates/.claude/skills/moai-cc-settings/SKILL.md +263 -0
  185. moai_adk/templates/.claude/skills/moai-cc-settings/templates/settings-complete-template.json +30 -0
  186. moai_adk/templates/.claude/skills/moai-cc-skill-factory/CHECKLIST.md +482 -0
  187. moai_adk/templates/.claude/skills/moai-cc-skill-factory/EXAMPLES.md +303 -0
  188. moai_adk/templates/.claude/skills/moai-cc-skill-factory/INTERACTIVE-DISCOVERY.md +524 -0
  189. moai_adk/templates/.claude/skills/moai-cc-skill-factory/METADATA.md +477 -0
  190. moai_adk/templates/.claude/skills/moai-cc-skill-factory/PARALLEL-ANALYSIS-REPORT.md +429 -0
  191. moai_adk/templates/.claude/skills/moai-cc-skill-factory/PYTHON-VERSION-MATRIX.md +391 -0
  192. moai_adk/templates/.claude/skills/moai-cc-skill-factory/SKILL-FACTORY-WORKFLOW.md +431 -0
  193. moai_adk/templates/.claude/skills/moai-cc-skill-factory/SKILL-UPDATE-ADVISOR.md +577 -0
  194. moai_adk/templates/.claude/skills/moai-cc-skill-factory/SKILL.md +273 -0
  195. moai_adk/templates/.claude/skills/moai-cc-skill-factory/STEP-BY-STEP-GUIDE.md +466 -0
  196. moai_adk/templates/.claude/skills/moai-cc-skill-factory/STRUCTURE.md +583 -0
  197. moai_adk/templates/.claude/skills/moai-cc-skill-factory/WEB-RESEARCH.md +526 -0
  198. moai_adk/templates/.claude/skills/moai-cc-skill-factory/reference.md +608 -0
  199. moai_adk/templates/.claude/skills/moai-cc-skill-factory/scripts/generate-structure.sh +328 -0
  200. moai_adk/templates/.claude/skills/moai-cc-skill-factory/scripts/validate-skill.sh +312 -0
  201. moai_adk/templates/.claude/skills/moai-cc-skill-factory/templates/SKILL_TEMPLATE.md +245 -0
  202. moai_adk/templates/.claude/skills/moai-cc-skill-factory/templates/examples-template.md +285 -0
  203. moai_adk/templates/.claude/skills/moai-cc-skill-factory/templates/reference-template.md +278 -0
  204. moai_adk/templates/.claude/skills/moai-cc-skill-factory/templates/scripts-template.sh +303 -0
  205. moai_adk/templates/.claude/skills/moai-cc-skills/SKILL.md +291 -0
  206. moai_adk/templates/.claude/skills/moai-cc-skills/templates/SKILL-template.md +15 -0
  207. moai_adk/templates/.claude/skills/moai-change-logger/SKILL.md +563 -0
  208. moai_adk/templates/.claude/skills/moai-design-systems/SKILL.md +802 -0
  209. moai_adk/templates/.claude/skills/moai-design-systems/examples.md +1238 -0
  210. moai_adk/templates/.claude/skills/moai-design-systems/reference.md +673 -0
  211. moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +234 -43
  212. moai_adk/templates/.claude/skills/moai-domain-backend/examples.md +1633 -0
  213. moai_adk/templates/.claude/skills/moai-domain-backend/reference.md +660 -0
  214. moai_adk/templates/.claude/skills/moai-domain-cli-tool/SKILL.md +97 -69
  215. moai_adk/templates/.claude/skills/moai-domain-cli-tool/examples.md +29 -0
  216. moai_adk/templates/.claude/skills/moai-domain-cli-tool/reference.md +30 -0
  217. moai_adk/templates/.claude/skills/moai-domain-data-science/SKILL.md +97 -72
  218. moai_adk/templates/.claude/skills/moai-domain-data-science/examples.md +29 -0
  219. moai_adk/templates/.claude/skills/moai-domain-data-science/reference.md +30 -0
  220. moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +97 -74
  221. moai_adk/templates/.claude/skills/moai-domain-database/examples.md +29 -0
  222. moai_adk/templates/.claude/skills/moai-domain-database/reference.md +30 -0
  223. moai_adk/templates/.claude/skills/moai-domain-devops/SKILL.md +98 -74
  224. moai_adk/templates/.claude/skills/moai-domain-devops/examples.md +29 -0
  225. moai_adk/templates/.claude/skills/moai-domain-devops/reference.md +31 -0
  226. moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +102 -73
  227. moai_adk/templates/.claude/skills/moai-domain-frontend/examples.md +29 -0
  228. moai_adk/templates/.claude/skills/moai-domain-frontend/reference.md +31 -0
  229. moai_adk/templates/.claude/skills/moai-domain-ml/SKILL.md +97 -73
  230. moai_adk/templates/.claude/skills/moai-domain-ml/examples.md +29 -0
  231. moai_adk/templates/.claude/skills/moai-domain-ml/reference.md +30 -0
  232. moai_adk/templates/.claude/skills/moai-domain-mobile-app/SKILL.md +97 -67
  233. moai_adk/templates/.claude/skills/moai-domain-mobile-app/examples.md +29 -0
  234. moai_adk/templates/.claude/skills/moai-domain-mobile-app/reference.md +30 -0
  235. moai_adk/templates/.claude/skills/moai-domain-security/SKILL.md +97 -79
  236. moai_adk/templates/.claude/skills/moai-domain-security/examples.md +29 -0
  237. moai_adk/templates/.claude/skills/moai-domain-security/reference.md +30 -0
  238. moai_adk/templates/.claude/skills/moai-domain-web-api/SKILL.md +97 -71
  239. moai_adk/templates/.claude/skills/moai-domain-web-api/examples.md +29 -0
  240. moai_adk/templates/.claude/skills/moai-domain-web-api/reference.md +30 -0
  241. moai_adk/templates/.claude/skills/moai-essentials-debug/SKILL.md +265 -64
  242. moai_adk/templates/.claude/skills/moai-essentials-debug/examples.md +1064 -0
  243. moai_adk/templates/.claude/skills/moai-essentials-debug/reference.md +1047 -0
  244. moai_adk/templates/.claude/skills/moai-essentials-perf/SKILL.md +87 -78
  245. moai_adk/templates/.claude/skills/moai-essentials-perf/examples.md +29 -0
  246. moai_adk/templates/.claude/skills/moai-essentials-perf/reference.md +28 -0
  247. moai_adk/templates/.claude/skills/moai-essentials-refactor/SKILL.md +87 -70
  248. moai_adk/templates/.claude/skills/moai-essentials-refactor/examples.md +29 -0
  249. moai_adk/templates/.claude/skills/moai-essentials-refactor/reference.md +28 -0
  250. moai_adk/templates/.claude/skills/moai-essentials-review/SKILL.md +87 -86
  251. moai_adk/templates/.claude/skills/moai-essentials-review/examples.md +29 -0
  252. moai_adk/templates/.claude/skills/moai-essentials-review/reference.md +28 -0
  253. moai_adk/templates/.claude/skills/moai-foundation-ears/SKILL.md +80 -62
  254. moai_adk/templates/.claude/skills/moai-foundation-ears/examples.md +29 -0
  255. moai_adk/templates/.claude/skills/moai-foundation-ears/reference.md +28 -0
  256. moai_adk/templates/.claude/skills/moai-foundation-git/SKILL.md +207 -50
  257. moai_adk/templates/.claude/skills/moai-foundation-git/examples.md +29 -0
  258. moai_adk/templates/.claude/skills/moai-foundation-git/reference.md +29 -0
  259. moai_adk/templates/.claude/skills/moai-foundation-langs/SKILL.md +90 -71
  260. moai_adk/templates/.claude/skills/moai-foundation-langs/examples.md +29 -0
  261. moai_adk/templates/.claude/skills/moai-foundation-langs/reference.md +28 -0
  262. moai_adk/templates/.claude/skills/moai-foundation-specs/SKILL.md +78 -58
  263. moai_adk/templates/.claude/skills/moai-foundation-specs/examples.md +29 -0
  264. moai_adk/templates/.claude/skills/moai-foundation-specs/reference.md +28 -0
  265. moai_adk/templates/.claude/skills/moai-foundation-tags/SKILL.md +78 -51
  266. moai_adk/templates/.claude/skills/moai-foundation-tags/examples.md +29 -0
  267. moai_adk/templates/.claude/skills/moai-foundation-tags/reference.md +28 -0
  268. moai_adk/templates/.claude/skills/moai-foundation-trust/.!11330!examples.md +0 -0
  269. moai_adk/templates/.claude/skills/moai-foundation-trust/SKILL.md +253 -32
  270. moai_adk/templates/.claude/skills/moai-foundation-trust/examples.md +0 -0
  271. moai_adk/templates/.claude/skills/moai-foundation-trust/reference.md +1099 -0
  272. moai_adk/templates/.claude/skills/moai-jit-docs-enhanced/SKILL.md +460 -0
  273. moai_adk/templates/.claude/skills/moai-lang-c/SKILL.md +98 -74
  274. moai_adk/templates/.claude/skills/moai-lang-c/examples.md +29 -0
  275. moai_adk/templates/.claude/skills/moai-lang-c/reference.md +31 -0
  276. moai_adk/templates/.claude/skills/moai-lang-cpp/SKILL.md +98 -76
  277. moai_adk/templates/.claude/skills/moai-lang-cpp/examples.md +29 -0
  278. moai_adk/templates/.claude/skills/moai-lang-cpp/reference.md +31 -0
  279. moai_adk/templates/.claude/skills/moai-lang-csharp/SKILL.md +2358 -70
  280. moai_adk/templates/.claude/skills/moai-lang-csharp/examples.md +29 -0
  281. moai_adk/templates/.claude/skills/moai-lang-csharp/reference.md +30 -0
  282. moai_adk/templates/.claude/skills/moai-lang-dart/SKILL.md +2962 -68
  283. moai_adk/templates/.claude/skills/moai-lang-dart/examples.md +29 -0
  284. moai_adk/templates/.claude/skills/moai-lang-dart/reference.md +30 -0
  285. moai_adk/templates/.claude/skills/moai-lang-go/SKILL.md +1898 -70
  286. moai_adk/templates/.claude/skills/moai-lang-go/examples.md +29 -0
  287. moai_adk/templates/.claude/skills/moai-lang-go/reference.md +31 -0
  288. moai_adk/templates/.claude/skills/moai-lang-java/SKILL.md +1465 -68
  289. moai_adk/templates/.claude/skills/moai-lang-java/examples.md +29 -0
  290. moai_adk/templates/.claude/skills/moai-lang-java/reference.md +31 -0
  291. moai_adk/templates/.claude/skills/moai-lang-javascript/SKILL.md +2364 -66
  292. moai_adk/templates/.claude/skills/moai-lang-javascript/examples.md +29 -0
  293. moai_adk/templates/.claude/skills/moai-lang-javascript/reference.md +32 -0
  294. moai_adk/templates/.claude/skills/moai-lang-kotlin/SKILL.md +1630 -69
  295. moai_adk/templates/.claude/skills/moai-lang-kotlin/examples.md +29 -0
  296. moai_adk/templates/.claude/skills/moai-lang-kotlin/reference.md +31 -0
  297. moai_adk/templates/.claude/skills/moai-lang-php/SKILL.md +89 -61
  298. moai_adk/templates/.claude/skills/moai-lang-php/examples.md +29 -0
  299. moai_adk/templates/.claude/skills/moai-lang-php/reference.md +30 -0
  300. moai_adk/templates/.claude/skills/moai-lang-python/SKILL.md +735 -66
  301. moai_adk/templates/.claude/skills/moai-lang-python/examples.md +624 -0
  302. moai_adk/templates/.claude/skills/moai-lang-python/reference.md +316 -0
  303. moai_adk/templates/.claude/skills/moai-lang-r/SKILL.md +97 -73
  304. moai_adk/templates/.claude/skills/moai-lang-r/examples.md +29 -0
  305. moai_adk/templates/.claude/skills/moai-lang-r/reference.md +30 -0
  306. moai_adk/templates/.claude/skills/moai-lang-ruby/SKILL.md +98 -73
  307. moai_adk/templates/.claude/skills/moai-lang-ruby/examples.md +29 -0
  308. moai_adk/templates/.claude/skills/moai-lang-ruby/reference.md +31 -0
  309. moai_adk/templates/.claude/skills/moai-lang-rust/SKILL.md +1834 -70
  310. moai_adk/templates/.claude/skills/moai-lang-rust/examples.md +29 -0
  311. moai_adk/templates/.claude/skills/moai-lang-rust/reference.md +31 -0
  312. moai_adk/templates/.claude/skills/moai-lang-scala/SKILL.md +99 -74
  313. moai_adk/templates/.claude/skills/moai-lang-scala/examples.md +29 -0
  314. moai_adk/templates/.claude/skills/moai-lang-scala/reference.md +30 -0
  315. moai_adk/templates/.claude/skills/moai-lang-shell/SKILL.md +97 -74
  316. moai_adk/templates/.claude/skills/moai-lang-shell/examples.md +29 -0
  317. moai_adk/templates/.claude/skills/moai-lang-shell/reference.md +30 -0
  318. moai_adk/templates/.claude/skills/moai-lang-sql/SKILL.md +98 -74
  319. moai_adk/templates/.claude/skills/moai-lang-sql/examples.md +29 -0
  320. moai_adk/templates/.claude/skills/moai-lang-sql/reference.md +31 -0
  321. moai_adk/templates/.claude/skills/moai-lang-swift/SKILL.md +1959 -69
  322. moai_adk/templates/.claude/skills/moai-lang-swift/examples.md +29 -0
  323. moai_adk/templates/.claude/skills/moai-lang-swift/reference.md +30 -0
  324. moai_adk/templates/.claude/skills/moai-lang-template/SKILL.md +348 -0
  325. moai_adk/templates/.claude/skills/moai-lang-template/VARIABLES.md +98 -0
  326. moai_adk/templates/.claude/skills/moai-lang-typescript/SKILL.md +1230 -66
  327. moai_adk/templates/.claude/skills/moai-lang-typescript/examples.md +29 -0
  328. moai_adk/templates/.claude/skills/moai-lang-typescript/reference.md +34 -0
  329. moai_adk/templates/.claude/skills/moai-learning-optimizer/SKILL.md +575 -0
  330. moai_adk/templates/.claude/skills/moai-project-batch-questions/README.md +50 -0
  331. moai_adk/templates/.claude/skills/moai-project-batch-questions/SKILL.md +304 -0
  332. moai_adk/templates/.claude/skills/moai-project-batch-questions/examples.md +417 -0
  333. moai_adk/templates/.claude/skills/moai-project-batch-questions/reference.md +704 -0
  334. moai_adk/templates/.claude/skills/moai-project-config-manager/README.md +87 -0
  335. moai_adk/templates/.claude/skills/moai-project-config-manager/SKILL.md +552 -0
  336. moai_adk/templates/.claude/skills/moai-project-config-manager/examples.md +1109 -0
  337. moai_adk/templates/.claude/skills/moai-project-config-manager/reference.md +514 -0
  338. moai_adk/templates/.claude/skills/moai-project-config-manager/validate.py +106 -0
  339. moai_adk/templates/.claude/skills/moai-project-documentation/README.md +11 -0
  340. moai_adk/templates/.claude/skills/moai-project-documentation/SKILL.md +622 -0
  341. moai_adk/templates/.claude/skills/moai-project-documentation/examples.md +20 -0
  342. moai_adk/templates/.claude/skills/moai-project-documentation/reference.md +12 -0
  343. moai_adk/templates/.claude/skills/moai-project-language-initializer/README.md +152 -0
  344. moai_adk/templates/.claude/skills/moai-project-language-initializer/SKILL.md +285 -0
  345. moai_adk/templates/.claude/skills/moai-project-language-initializer/examples.md +333 -0
  346. moai_adk/templates/.claude/skills/moai-project-language-initializer/reference.md +386 -0
  347. moai_adk/templates/.claude/skills/moai-project-template-optimizer/README.md +49 -0
  348. moai_adk/templates/.claude/skills/moai-project-template-optimizer/SKILL.md +319 -0
  349. moai_adk/templates/.claude/skills/moai-project-template-optimizer/examples.md +58 -0
  350. moai_adk/templates/.claude/skills/moai-project-template-optimizer/reference.md +123 -0
  351. moai_adk/templates/.claude/skills/moai-session-info/SKILL.md +314 -0
  352. moai_adk/templates/.claude/skills/moai-streaming-ui/SKILL.md +552 -0
  353. moai_adk/templates/.claude/skills/moai-tag-policy-validator/SKILL.md +570 -0
  354. moai_adk/templates/.git-hooks/pre-commit +66 -0
  355. moai_adk/templates/.git-hooks/pre-push +255 -0
  356. moai_adk/templates/.github/workflows/c-tag-validation.yml +11 -0
  357. moai_adk/templates/.github/workflows/cpp-tag-validation.yml +11 -0
  358. moai_adk/templates/.github/workflows/csharp-tag-validation.yml +11 -0
  359. moai_adk/templates/.github/workflows/dart-tag-validation.yml +11 -0
  360. moai_adk/templates/.github/workflows/go-tag-validation.yml +130 -0
  361. moai_adk/templates/.github/workflows/java-tag-validation.yml +11 -0
  362. moai_adk/templates/.github/workflows/javascript-tag-validation.yml +135 -0
  363. moai_adk/templates/.github/workflows/kotlin-tag-validation.yml +11 -0
  364. moai_adk/templates/.github/workflows/moai-gitflow.yml +166 -3
  365. moai_adk/templates/.github/workflows/moai-release-create.yml +100 -0
  366. moai_adk/templates/.github/workflows/moai-release-pipeline.yml +188 -0
  367. moai_adk/templates/.github/workflows/php-tag-validation.yml +11 -0
  368. moai_adk/templates/.github/workflows/python-tag-validation.yml +118 -0
  369. moai_adk/templates/.github/workflows/release.yml +118 -0
  370. moai_adk/templates/.github/workflows/ruby-tag-validation.yml +11 -0
  371. moai_adk/templates/.github/workflows/rust-tag-validation.yml +11 -0
  372. moai_adk/templates/.github/workflows/shell-tag-validation.yml +11 -0
  373. moai_adk/templates/.github/workflows/spec-issue-sync.yml +338 -0
  374. moai_adk/templates/.github/workflows/swift-tag-validation.yml +11 -0
  375. moai_adk/templates/.github/workflows/tag-report.yml +269 -0
  376. moai_adk/templates/.github/workflows/tag-validation.yml +186 -0
  377. moai_adk/templates/.github/workflows/typescript-tag-validation.yml +154 -0
  378. moai_adk/templates/.mcp.json +31 -0
  379. moai_adk/templates/.moai/config.json +80 -7
  380. moai_adk/templates/CLAUDE.md +562 -546
  381. moai_adk/utils/banner.py +5 -5
  382. moai_adk/utils/common.py +294 -0
  383. moai_adk/utils/link_validator.py +235 -0
  384. moai_adk/utils/logger.py +8 -8
  385. moai_adk/utils/user_experience.py +451 -0
  386. moai_adk-0.20.1.dist-info/METADATA +233 -0
  387. moai_adk-0.20.1.dist-info/RECORD +404 -0
  388. moai_adk/templates/.claude/hooks/alfred/README.md +0 -230
  389. moai_adk/templates/.claude/hooks/alfred/alfred_hooks.py +0 -156
  390. moai_adk/templates/.claude/hooks/alfred/core/__init__.py +0 -85
  391. moai_adk/templates/.claude/hooks/alfred/handlers/notification.py +0 -25
  392. moai_adk/templates/.claude/hooks/alfred/handlers/session.py +0 -92
  393. moai_adk/templates/.claude/hooks/alfred/handlers/tool.py +0 -70
  394. moai_adk/templates/.claude/hooks/alfred/handlers/user.py +0 -41
  395. moai_adk/templates/.claude/output-styles/alfred/agentic-coding.md +0 -636
  396. moai_adk/templates/.claude/output-styles/alfred/moai-adk-learning.md +0 -692
  397. moai_adk/templates/.claude/output-styles/alfred/study-with-alfred.md +0 -470
  398. moai_adk/templates/.claude/skills/moai-alfred-debugger-pro/SKILL.md +0 -103
  399. moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/SKILL.md +0 -103
  400. moai_adk/templates/.claude/skills/moai-alfred-git-workflow/SKILL.md +0 -95
  401. moai_adk/templates/.claude/skills/moai-alfred-performance-optimizer/SKILL.md +0 -105
  402. moai_adk/templates/.claude/skills/moai-alfred-refactoring-coach/SKILL.md +0 -97
  403. moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/SKILL.md +0 -97
  404. moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/SKILL.md +0 -90
  405. moai_adk/templates/.claude/skills/moai-alfred-trust-validation/SKILL.md +0 -99
  406. moai_adk/templates/.claude/skills/moai-alfred-tui-survey/SKILL.md +0 -87
  407. moai_adk/templates/.claude/skills/moai-alfred-tui-survey/examples.md +0 -62
  408. moai_adk/templates/.claude/skills/moai-claude-code/SKILL.md +0 -94
  409. moai_adk/templates/.claude/skills/moai-claude-code/examples.md +0 -513
  410. moai_adk/templates/.claude/skills/moai-claude-code/reference.md +0 -433
  411. moai_adk/templates/.claude/skills/moai-claude-code/templates/agent-full.md +0 -332
  412. moai_adk/templates/.claude/skills/moai-claude-code/templates/command-full.md +0 -384
  413. moai_adk/templates/.claude/skills/moai-claude-code/templates/plugin-full.json +0 -363
  414. moai_adk/templates/.claude/skills/moai-claude-code/templates/settings-full.json +0 -595
  415. moai_adk/templates/.claude/skills/moai-claude-code/templates/skill-full.md +0 -496
  416. moai_adk/templates/.claude/skills/moai-lang-clojure/SKILL.md +0 -100
  417. moai_adk/templates/.claude/skills/moai-lang-elixir/SKILL.md +0 -99
  418. moai_adk/templates/.claude/skills/moai-lang-haskell/SKILL.md +0 -100
  419. moai_adk/templates/.claude/skills/moai-lang-julia/SKILL.md +0 -98
  420. moai_adk/templates/.claude/skills/moai-lang-lua/SKILL.md +0 -98
  421. moai_adk/templates/.github/PULL_REQUEST_TEMPLATE.md +0 -69
  422. moai_adk/templates/.moai/memory/development-guide.md +0 -344
  423. moai_adk/templates/.moai/memory/gitflow-protection-policy.md +0 -220
  424. moai_adk/templates/.moai/memory/spec-metadata.md +0 -356
  425. moai_adk/templates/.moai/project/product.md +0 -161
  426. moai_adk/templates/.moai/project/structure.md +0 -156
  427. moai_adk/templates/.moai/project/tech.md +0 -227
  428. moai_adk/templates/__init__.py +0 -2
  429. moai_adk-0.4.5.dist-info/METADATA +0 -369
  430. moai_adk-0.4.5.dist-info/RECORD +0 -152
  431. {moai_adk-0.4.5.dist-info → moai_adk-0.20.1.dist-info}/WHEEL +0 -0
  432. {moai_adk-0.4.5.dist-info → moai_adk-0.20.1.dist-info}/entry_points.txt +0 -0
  433. {moai_adk-0.4.5.dist-info → moai_adk-0.20.1.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,307 @@
1
+ ---
2
+ name: moai-cc-commands
3
+ description: "Designing Slash Commands for Claude Code. Create and optimize slash commands with proper argument parsing, tool permissions, and agent orchestration. Use when building workflow entry points, automation commands, or user-facing shortcuts."
4
+ allowed-tools: "Read, Write, Edit, Glob, Bash"
5
+ ---
6
+
7
+ ## Skill Metadata
8
+
9
+ | Field | Value |
10
+ | ----- | ----- |
11
+ | Version | 1.0.0 |
12
+ | Tier | Ops |
13
+ | Auto-load | When designing slash commands |
14
+
15
+ ## What It Does
16
+
17
+ Slash command 설계 및 최적화 방법을 제공합니다. Argument parsing, tool permissions, agent orchestration을 포함한 command 구조를 다룹니다.
18
+
19
+ ## When to Use
20
+
21
+ - 새로운 slash command를 생성할 때
22
+ - 기존 command를 최적화하거나 리팩토링할 때
23
+ - Workflow entry point를 설계할 때
24
+ - User-facing automation을 구축할 때
25
+
26
+
27
+ # Designing Slash Commands
28
+
29
+ Slash commands are user-facing entry points that orchestrate sub-agents, manage approvals, and coordinate multi-step workflows. They follow the Plan → Execute → Sync cadence.
30
+
31
+ ## Command File Structure
32
+
33
+ **Location**: `.claude/commands/`
34
+
35
+ ```yaml
36
+ ---
37
+ name: command-name
38
+ description: Brief description of what the command does
39
+ argument-hint: "[param1] [param2] [optional-param]"
40
+ tools: Read, Write, Task, Bash(git:*)
41
+ model: sonnet
42
+ ---
43
+
44
+ # Command Title
45
+
46
+ Brief description of functionality.
47
+
48
+ ## Usage
49
+
50
+ - `/command-name param1 param2` — Basic usage
51
+ - Parameter descriptions
52
+ - Expected behavior
53
+
54
+ ## Agent Orchestration
55
+
56
+ 1. Call specific agent for task
57
+ 2. Handle results
58
+ 3. Provide user feedback
59
+ ```
60
+
61
+ ## Command Design Patterns
62
+
63
+ ### Pattern 1: Planning Command
64
+ ```yaml
65
+ ---
66
+ name: /alfred:1-plan
67
+ description: Write SPEC requirements in EARS syntax
68
+ argument-hint: "[title]"
69
+ tools: Read, Write, Task
70
+ model: sonnet
71
+ ---
72
+
73
+ # SPEC Planning Command
74
+
75
+ Initiates SPEC authoring via spec-builder sub-agent.
76
+
77
+ ## Usage
78
+
79
+ `/alfred:1-plan "User authentication system"`
80
+
81
+ ## Agent Orchestration
82
+
83
+ 1. Invoke spec-builder agent
84
+ 2. Gather requirements via EARS patterns
85
+ 3. Create SPEC file in `.moai/specs/`
86
+ 4. Suggest next step: `/alfred:2-run`
87
+ ```
88
+
89
+ ### Pattern 2: Code Review Command
90
+ ```yaml
91
+ ---
92
+ name: /review-code
93
+ description: Trigger automated code review with quality analysis
94
+ argument-hint: "[file-pattern] [--strict]"
95
+ tools: Read, Glob, Grep, Task
96
+ model: sonnet
97
+ ---
98
+
99
+ # Code Review Command
100
+
101
+ Analyzes code quality against TRUST 5 principles.
102
+
103
+ ## Usage
104
+
105
+ - `/review-code src/**/*.ts` — Review TypeScript files
106
+ - `/review-code . --strict` — Strict mode (fail on warnings)
107
+
108
+ ## Agent Orchestration
109
+
110
+ 1. Scan files matching pattern
111
+ 2. Invoke code-reviewer agent
112
+ 3. Generate report with findings
113
+ 4. Suggest fixes with severity levels
114
+ ```
115
+
116
+ ### Pattern 3: Deployment Command
117
+ ```yaml
118
+ ---
119
+ name: /deploy
120
+ description: Deploy application with safety gates
121
+ argument-hint: "[env] [--force]"
122
+ tools: Read, Write, Task, Bash(git:*)
123
+ model: haiku
124
+ ---
125
+
126
+ # Deployment Command
127
+
128
+ Orchestrates multi-step deployment with approval gates.
129
+
130
+ ## Usage
131
+
132
+ - `/deploy staging` — Deploy to staging
133
+ - `/deploy production --force` — Force production deploy
134
+
135
+ ## Agent Orchestration
136
+
137
+ 1. Validate deployment readiness
138
+ 2. Run pre-deployment checks
139
+ 3. Ask for user approval
140
+ 4. Execute deployment
141
+ 5. Monitor post-deployment
142
+ ```
143
+
144
+ ## Argument Parsing Pattern
145
+
146
+ ```bash
147
+ # Inside command execution
148
+ $ARGUMENTS # Entire argument string
149
+ $1, $2, $3 # Individual arguments
150
+ $@ # All arguments as array
151
+
152
+ # Example: /my-command arg1 arg2 --flag
153
+ # $ARGUMENTS = "arg1 arg2 --flag"
154
+ # $1 = "arg1"
155
+ # $2 = "arg2"
156
+ # $3 = "--flag"
157
+ ```
158
+
159
+ ## High-Freedom: Orchestration Strategies
160
+
161
+ ### Sequential Execution
162
+ ```
163
+ Command: /plan-and-implement
164
+ ├─ Phase 1: spec-builder (SPEC creation)
165
+ └─ Phase 2: code-builder (TDD implementation)
166
+ ```
167
+
168
+ ### Parallel Execution
169
+ ```
170
+ Command: /analyze-project
171
+ ├─ Agent 1: security-auditor (vulnerability scan)
172
+ ├─ Agent 2: performance-analyzer (bottleneck detection)
173
+ └─ Agent 3: architecture-reviewer (design review)
174
+ ```
175
+
176
+ ### Conditional Branching
177
+ ```
178
+ Command: /fix-errors
179
+ ├─ Check: Are tests failing?
180
+ │ ├─ YES → debug-helper agent
181
+ │ └─ NO → suggest next steps
182
+ ```
183
+
184
+ ## Medium-Freedom: Command Templates
185
+
186
+ ### Status Check Command
187
+ ```yaml
188
+ name: /status
189
+ description: Show project status summary
190
+ argument-hint: "[--verbose]"
191
+ tools: Read, Bash(git:*)
192
+ model: haiku
193
+ ---
194
+
195
+ # Status Check
196
+
197
+ Displays project health: SPEC status, test results, Git state.
198
+
199
+ ## Checks
200
+
201
+ 1. SPEC completeness
202
+ 2. Test coverage
203
+ 3. Git branch status
204
+ 4. Recent commits
205
+ 5. TODO items
206
+ ```
207
+
208
+ ### Bulk Operation Command
209
+ ```yaml
210
+ name: /migrate
211
+ description: Run migration across multiple files
212
+ argument-hint: "[from] [to] [--preview]"
213
+ tools: Read, Glob, Bash
214
+ model: sonnet
215
+ ---
216
+
217
+ # Migration Command
218
+
219
+ Migrates code patterns across project.
220
+
221
+ ## Usage
222
+
223
+ - `/migrate v1-api v2-api --preview` — Show changes without applying
224
+ - `/migrate v1-api v2-api` — Apply migration
225
+ ```
226
+
227
+ ## Low-Freedom: Safety & Approval Patterns
228
+
229
+ ### Approval Gate Pattern
230
+ ```bash
231
+ # Inside command execution
232
+
233
+ echo "🔴 This action is destructive. Review carefully:"
234
+ echo " • Will delete 10 files"
235
+ echo " • Cannot be undone"
236
+ echo ""
237
+ read -p "Type 'yes' to confirm: " confirm
238
+
239
+ if [[ "$confirm" != "yes" ]]; then
240
+ echo "❌ Cancelled"
241
+ exit 1
242
+ fi
243
+
244
+ # Execute dangerous operation
245
+ ```
246
+
247
+ ### Dry-Run Pattern
248
+ ```bash
249
+ if [[ "${3:-}" == "--preview" ]]; then
250
+ echo "🔍 Preview mode (no changes)"
251
+ # Show what would happen
252
+ exit 0
253
+ fi
254
+
255
+ # Execute actual changes
256
+ ```
257
+
258
+ ## Command Registry
259
+
260
+ ```bash
261
+ # List all commands
262
+ /commands
263
+
264
+ # View command details
265
+ /commands view /deploy
266
+
267
+ # Create new command
268
+ /commands create
269
+
270
+ # Edit command
271
+ /commands edit /deploy
272
+
273
+ # Delete command
274
+ /commands delete /deploy
275
+ ```
276
+
277
+ ## Command Validation Checklist
278
+
279
+ - [ ] `name` is kebab-case (e.g., `/review-code`)
280
+ - [ ] `description` clearly explains purpose
281
+ - [ ] `argument-hint` shows expected parameters
282
+ - [ ] `tools` list is minimal and justified
283
+ - [ ] `model` is `haiku` or `sonnet`
284
+ - [ ] Agent orchestration is clearly defined
285
+ - [ ] Arguments are properly parsed
286
+ - [ ] Safety gates are in place for dangerous operations
287
+ - [ ] Feedback to user is clear and actionable
288
+
289
+ ## Best Practices
290
+
291
+ ✅ **DO**:
292
+ - Design commands around workflows, not tools
293
+ - Use agents for complex logic
294
+ - Include preview/dry-run modes for risky operations
295
+ - Provide clear feedback at each step
296
+ - Link to next command in suggestions
297
+
298
+ ❌ **DON'T**:
299
+ - Make commands do too much (limit to 1 coherent workflow)
300
+ - Require multiple parameters without defaults
301
+ - Skip approval gates for destructive operations
302
+ - Leave users guessing what happened
303
+
304
+ ---
305
+
306
+ **Reference**: Claude Code Slash Commands documentation
307
+ **Version**: 1.0.0
@@ -0,0 +1,21 @@
1
+ ---
2
+ name: command-name
3
+ description: Brief description of what the command does
4
+ argument-hint: "[param1] [param2]"
5
+ tools: Read, Write, Task
6
+ model: sonnet
7
+ ---
8
+
9
+ # Command Title
10
+
11
+ Brief description of functionality.
12
+
13
+ ## Usage
14
+
15
+ `/command-name param1 param2` — Basic usage
16
+
17
+ ## Agent Orchestration
18
+
19
+ 1. Call specific agent for task
20
+ 2. Handle results
21
+ 3. Provide user feedback
@@ -0,0 +1,252 @@
1
+ ---
2
+ name: moai-cc-hooks
3
+ description: "Configuring Claude Code Hooks System. Design, implement, and manage PreToolUse/PostToolUse/SessionStart/Notification/Stop hooks. Use when enforcing safety checks, auto-formatting, running linters, or triggering automated workflows based on development events."
4
+ allowed-tools: "Read, Write, Edit, Glob, Bash"
5
+ ---
6
+
7
+ ## Skill Metadata
8
+
9
+ | Field | Value |
10
+ | ----- | ----- |
11
+ | Version | 1.0.0 |
12
+ | Tier | Ops |
13
+ | Auto-load | When configuring hook system |
14
+
15
+ ## What It Does
16
+
17
+ Hook system 설정 및 관리를 위한 전체 가이드를 제공합니다. PreToolUse, PostToolUse, SessionStart 등 다양한 hook type의 설계와 구현 방법을 다룹니다.
18
+
19
+ ## When to Use
20
+
21
+ - Safety check나 validation hook을 추가할 때
22
+ - Auto-formatting이나 linting을 자동화할 때
23
+ - Session lifecycle event에 응답하는 로직을 작성할 때
24
+ - 개발 이벤트 기반 workflow를 트리거할 때
25
+
26
+
27
+ # Configuring Claude Code Hooks System
28
+
29
+ Hooks are lightweight (<100ms) automated scripts triggered by Claude Code lifecycle events. They enforce guardrails, run quality checks, and seed context without blocking user workflow.
30
+
31
+ ## Hook Types & Events
32
+
33
+ | Hook Type | Trigger Event | Execution Time | Use Cases |
34
+ |-----------|---------------|-----------------|-----------|
35
+ | **PreToolUse** | Before tool execution (Read, Edit, Bash, etc.) | <100ms | Command validation, permission checks, safety gates |
36
+ | **PostToolUse** | After tool execution succeeds | <100ms | Auto-formatting, linting, permission restoration |
37
+ | **SessionStart** | Session initialization | <500ms | Project summary, context seeding, status card |
38
+ | **Notification** | User notification event | N/A | macOS notifications, alerts, wait status |
39
+ | **Stop** | Session termination | N/A | Cleanup, final checks, task summary |
40
+
41
+ ## Hook Configuration in settings.json
42
+
43
+ ### High-Freedom Approach: Events-Driven Hooks
44
+
45
+ ```json
46
+ {
47
+ "hooks": {
48
+ "PreToolUse": [
49
+ {
50
+ "matcher": "Bash",
51
+ "hooks": [
52
+ {
53
+ "type": "command",
54
+ "command": "node ~/.claude/hooks/pre-bash-validator.js"
55
+ }
56
+ ]
57
+ },
58
+ {
59
+ "matcher": "Edit|Write",
60
+ "hooks": [
61
+ {
62
+ "type": "command",
63
+ "command": "bash ~/.claude/hooks/pre-edit-guard.sh"
64
+ }
65
+ ]
66
+ }
67
+ ],
68
+ "PostToolUse": [
69
+ {
70
+ "matcher": "Edit",
71
+ "hooks": [
72
+ {
73
+ "type": "command",
74
+ "command": "bash ~/.claude/hooks/post-edit-lint.sh"
75
+ }
76
+ ]
77
+ }
78
+ ],
79
+ "SessionStart": [
80
+ {
81
+ "matcher": "*",
82
+ "hooks": [
83
+ {
84
+ "type": "command",
85
+ "command": "node ~/.claude/hooks/session-status-card.js"
86
+ }
87
+ ]
88
+ }
89
+ ]
90
+ }
91
+ }
92
+ ```
93
+
94
+ ## Medium-Freedom: Hook Patterns
95
+
96
+ ### Pattern 1: Pre-Command Validation
97
+ ```bash
98
+ #!/bin/bash
99
+ # pre-bash-validator.sh: Block dangerous patterns
100
+
101
+ FORBIDDEN_PATTERNS=(
102
+ "rm -rf /"
103
+ "sudo rm"
104
+ "chmod 777 /"
105
+ "eval \$(curl"
106
+ )
107
+
108
+ COMMAND="$1"
109
+ for pattern in "${FORBIDDEN_PATTERNS[@]}"; do
110
+ if [[ "$COMMAND" =~ $pattern ]]; then
111
+ echo "🔴 Blocked: $pattern detected" >&2
112
+ exit 2 # Block execution
113
+ fi
114
+ done
115
+
116
+ exit 0 # Allow execution
117
+ ```
118
+
119
+ ### Pattern 2: Post-Edit Auto-Formatting
120
+ ```bash
121
+ #!/bin/bash
122
+ # post-edit-format.sh: Auto-format after edits
123
+
124
+ FILE="$1"
125
+ EXT="${FILE##*.}"
126
+
127
+ case "$EXT" in
128
+ js|ts)
129
+ npx prettier --write "$FILE" 2>/dev/null
130
+ ;;
131
+ py)
132
+ python3 -m black "$FILE" 2>/dev/null
133
+ ;;
134
+ go)
135
+ gofmt -w "$FILE" 2>/dev/null
136
+ ;;
137
+ esac
138
+
139
+ exit 0
140
+ ```
141
+
142
+ ### Pattern 3: SessionStart Status Card
143
+ ```bash
144
+ #!/bin/bash
145
+ # session-status-card.sh: Show project status
146
+
147
+ echo "🚀 Claude Code Session Started"
148
+ echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
149
+
150
+ if [ -f ".moai/config.json" ]; then
151
+ PROJECT=$(jq -r '.name' .moai/config.json 2>/dev/null || echo "Unknown")
152
+ echo "📦 Project: $PROJECT"
153
+ echo "🏗️ Framework: $(jq -r '.tech_stack' .moai/config.json 2>/dev/null || echo "Auto-detect")"
154
+ fi
155
+
156
+ echo "📋 Recent SPECS:"
157
+ ls .moai/specs/ 2>/dev/null | head -3 | sed 's/^/ ✓ /'
158
+
159
+ echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
160
+ ```
161
+
162
+ ## Low-Freedom: Security-Focused Hook Scripts
163
+
164
+ ### Permission Preservation Hook
165
+ ```bash
166
+ #!/bin/bash
167
+ set -euo pipefail
168
+ # preserve-permissions.sh: Save/restore file permissions
169
+
170
+ HOOK_TYPE="${1:-pre}" # 'pre' or 'post'
171
+ FILE="${2:-.}"
172
+
173
+ PERMS_FILE="/tmp/perms_${FILE//\//_}.txt"
174
+
175
+ if [[ "$HOOK_TYPE" == "pre" ]]; then
176
+ stat -c "%a %u:%g" "$FILE" > "$PERMS_FILE" 2>/dev/null || true
177
+ exit 0
178
+ elif [[ "$HOOK_TYPE" == "post" ]]; then
179
+ if [[ -f "$PERMS_FILE" ]]; then
180
+ SAVED_PERMS=$(cat "$PERMS_FILE")
181
+ chmod ${SAVED_PERMS%% *} "$FILE" 2>/dev/null || true
182
+ rm "$PERMS_FILE"
183
+ fi
184
+ exit 0
185
+ fi
186
+ ```
187
+
188
+ ### Dangerous Command Blocker
189
+ ```python
190
+ #!/usr/bin/env python3
191
+ import json
192
+ import sys
193
+ import re
194
+
195
+ BLOCKED_PATTERNS = [
196
+ (r"rm\s+-rf\s+/", "Blocking rm -rf /"),
197
+ (r"sudo\s+rm", "Blocking sudo rm without confirmation"),
198
+ (r">\s*/etc/\w+", "Blocking writes to system files"),
199
+ (r"curl.*\|\s*bash", "Blocking curl | bash (code injection risk)"),
200
+ ]
201
+
202
+ try:
203
+ data = json.load(sys.stdin)
204
+ command = data.get("tool_input", {}).get("command", "")
205
+
206
+ for pattern, msg in BLOCKED_PATTERNS:
207
+ if re.search(pattern, command):
208
+ print(f"🔴 BLOCKED: {msg}", file=sys.stderr)
209
+ sys.exit(2) # Block
210
+
211
+ sys.exit(0) # Allow
212
+ except Exception as e:
213
+ print(f"Hook error: {e}", file=sys.stderr)
214
+ sys.exit(0) # Allow on error (fail open)
215
+ ```
216
+
217
+ ## Hook Exit Codes
218
+
219
+ | Code | Meaning | Behavior |
220
+ |------|---------|----------|
221
+ | `0` | Success | Tool proceeds normally |
222
+ | `1` | Warning + Stderr | Warning logged, tool proceeds |
223
+ | `2` | Blocked + Error | Tool execution blocked |
224
+
225
+ ## Best Practices
226
+
227
+ ✅ **DO**:
228
+ - Keep hook scripts < 100ms execution time
229
+ - Use specific matchers (not wildcard `*` unless necessary)
230
+ - Log errors clearly to stderr
231
+ - Test hooks before deploying to team
232
+
233
+ ❌ **DON'T**:
234
+ - Make network calls in PreToolUse hooks
235
+ - Block common operations (use warnings instead)
236
+ - Write to user files from hooks
237
+ - Create complex logic (delegate to sub-agents)
238
+
239
+ ## Hook Validation Checklist
240
+
241
+ - [ ] All scripts have proper shebang (`#!/bin/bash` or `#!/usr/bin/env python3`)
242
+ - [ ] Scripts are executable: `chmod +x hook.sh`
243
+ - [ ] Exit codes are correct (0, 1, or 2)
244
+ - [ ] Paths are absolute (not relative)
245
+ - [ ] Tested for < 100ms latency
246
+ - [ ] Error messages are user-friendly
247
+ - [ ] No hardcoded secrets or credentials
248
+
249
+ ---
250
+
251
+ **Reference**: Context7 Claude Code Hooks documentation
252
+ **Version**: 1.0.0
@@ -0,0 +1,19 @@
1
+ #!/bin/bash
2
+ # Pre-Bash Command Validator (from Context7 official docs)
3
+ set -euo pipefail
4
+
5
+ FORBIDDEN=(
6
+ "rm -rf /"
7
+ "sudo rm"
8
+ "chmod 777"
9
+ "eval.*curl"
10
+ )
11
+
12
+ COMMAND="${1:-}"
13
+ for pattern in "${FORBIDDEN[@]}"; do
14
+ if [[ "$COMMAND" =~ $pattern ]]; then
15
+ echo "🔴 BLOCKED: $pattern" >&2
16
+ exit 2
17
+ fi
18
+ done
19
+ exit 0
@@ -0,0 +1,19 @@
1
+ #!/bin/bash
2
+ # Preserve file permissions (from Context7 official docs)
3
+ set -euo pipefail
4
+
5
+ HOOK_TYPE="${1:-pre}"
6
+ FILE="${2:-.}"
7
+ PERMS_FILE="/tmp/perms_${FILE//\//_}.txt"
8
+
9
+ if [[ "$HOOK_TYPE" == "pre" ]]; then
10
+ stat -c "%a %u:%g" "$FILE" > "$PERMS_FILE" 2>/dev/null || true
11
+ exit 0
12
+ elif [[ "$HOOK_TYPE" == "post" ]]; then
13
+ if [[ -f "$PERMS_FILE" ]]; then
14
+ SAVED=$(cat "$PERMS_FILE")
15
+ chmod ${SAVED%% *} "$FILE" 2>/dev/null || true
16
+ rm "$PERMS_FILE"
17
+ fi
18
+ exit 0
19
+ fi
@@ -0,0 +1,24 @@
1
+ #!/usr/bin/env python3
2
+ # @CODE:HOOK-BASH-001 | SPEC: TBD | TEST: tests/hooks/test_bash_validation.py
3
+ # Bash command validator (from Context7 official docs)
4
+ import json
5
+ import re
6
+ import sys
7
+
8
+ BLOCKED = [
9
+ (r"rm\s+-rf\s+/", "Blocking rm -rf /"),
10
+ (r"sudo\s+rm", "Blocking sudo rm"),
11
+ (r">\s*/etc/\w+", "Blocking writes to /etc"),
12
+ (r"curl.*\|\s*bash", "Blocking curl | bash"),
13
+ ]
14
+
15
+ try:
16
+ data = json.load(sys.stdin)
17
+ cmd = data.get("tool_input", {}).get("command", "")
18
+ for pattern, msg in BLOCKED:
19
+ if re.search(pattern, cmd):
20
+ print(f"🔴 {msg}", file=sys.stderr)
21
+ sys.exit(2)
22
+ sys.exit(0)
23
+ except Exception:
24
+ sys.exit(0)