moai-adk 0.4.5__py3-none-any.whl → 0.4.8__py3-none-any.whl

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

Potentially problematic release.


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

Files changed (229) hide show
  1. moai_adk/__init__.py +1 -1
  2. moai_adk/core/project/initializer.py +12 -5
  3. moai_adk/templates/.claude/agents/alfred/cc-manager.md +188 -954
  4. moai_adk/templates/.claude/agents/alfred/debug-helper.md +4 -5
  5. moai_adk/templates/.claude/agents/alfred/doc-syncer.md +2 -2
  6. moai_adk/templates/.claude/agents/alfred/git-manager.md +2 -2
  7. moai_adk/templates/.claude/agents/alfred/implementation-planner.md +3 -3
  8. moai_adk/templates/.claude/agents/alfred/project-manager.md +6 -6
  9. moai_adk/templates/.claude/agents/alfred/quality-gate.md +4 -6
  10. moai_adk/templates/.claude/agents/alfred/skill-factory.md +829 -0
  11. moai_adk/templates/.claude/agents/alfred/spec-builder.md +2 -2
  12. moai_adk/templates/.claude/agents/alfred/tag-agent.md +2 -2
  13. moai_adk/templates/.claude/agents/alfred/tdd-implementer.md +3 -3
  14. moai_adk/templates/.claude/agents/alfred/trust-checker.md +5 -5
  15. moai_adk/templates/.claude/commands/alfred/0-project.md +98 -42
  16. moai_adk/templates/.claude/commands/alfred/1-plan.md +7 -7
  17. moai_adk/templates/.claude/commands/alfred/2-run.md +36 -36
  18. moai_adk/templates/.claude/commands/alfred/3-sync.md +10 -10
  19. moai_adk/templates/.claude/hooks/alfred/alfred_hooks.py +14 -1
  20. moai_adk/templates/.claude/hooks/alfred/core/__init__.py +115 -33
  21. moai_adk/templates/.claude/hooks/alfred/handlers/session.py +8 -9
  22. moai_adk/templates/.claude/hooks/alfred/handlers/tool.py +6 -6
  23. moai_adk/templates/.claude/hooks/alfred/handlers/user.py +5 -4
  24. moai_adk/templates/.claude/output-styles/alfred/agentic-coding.md +1 -1
  25. moai_adk/templates/.claude/output-styles/alfred/moai-adk-learning.md +1 -1
  26. moai_adk/templates/.claude/output-styles/alfred/study-with-alfred.md +1 -1
  27. moai_adk/templates/.claude/settings.json +42 -2
  28. moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/SKILL.md +76 -66
  29. moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/examples.md +29 -0
  30. moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/reference.md +28 -0
  31. moai_adk/templates/.claude/skills/moai-alfred-git-workflow/SKILL.md +86 -59
  32. moai_adk/templates/.claude/skills/moai-alfred-git-workflow/examples.md +29 -0
  33. moai_adk/templates/.claude/skills/moai-alfred-git-workflow/reference.md +29 -0
  34. moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/SKILL.md +480 -0
  35. moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/examples.md +257 -0
  36. moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/reference.md +120 -0
  37. moai_adk/templates/.claude/skills/moai-alfred-language-detection/SKILL.md +87 -73
  38. moai_adk/templates/.claude/skills/moai-alfred-language-detection/examples.md +29 -0
  39. moai_adk/templates/.claude/skills/moai-alfred-language-detection/reference.md +28 -0
  40. moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/SKILL.md +78 -62
  41. moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/examples.md +29 -0
  42. moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/reference.md +28 -0
  43. moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/SKILL.md +78 -55
  44. moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/examples.md +29 -0
  45. moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/reference.md +28 -0
  46. moai_adk/templates/.claude/skills/moai-alfred-trust-validation/SKILL.md +78 -64
  47. moai_adk/templates/.claude/skills/moai-alfred-trust-validation/examples.md +29 -0
  48. moai_adk/templates/.claude/skills/moai-alfred-trust-validation/reference.md +28 -0
  49. moai_adk/templates/.claude/skills/moai-cc-agents/SKILL.md +249 -0
  50. moai_adk/templates/.claude/skills/moai-cc-agents/templates/agent-template.md +32 -0
  51. moai_adk/templates/.claude/skills/moai-cc-claude-md/SKILL.md +278 -0
  52. moai_adk/templates/.claude/skills/moai-cc-claude-md/templates/CLAUDE-template.md +26 -0
  53. moai_adk/templates/.claude/skills/moai-cc-commands/SKILL.md +287 -0
  54. moai_adk/templates/.claude/skills/moai-cc-commands/templates/command-template.md +21 -0
  55. moai_adk/templates/.claude/skills/moai-cc-hooks/SKILL.md +232 -0
  56. moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/pre-bash-check.sh +19 -0
  57. moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/preserve-permissions.sh +19 -0
  58. moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/validate-bash-command.py +24 -0
  59. moai_adk/templates/.claude/skills/moai-cc-mcp-plugins/SKILL.md +179 -0
  60. moai_adk/templates/.claude/skills/moai-cc-mcp-plugins/templates/settings-mcp-template.json +39 -0
  61. moai_adk/templates/.claude/skills/moai-cc-memory/SKILL.md +296 -0
  62. moai_adk/templates/.claude/skills/moai-cc-memory/templates/session-summary-template.md +18 -0
  63. moai_adk/templates/.claude/skills/moai-cc-settings/SKILL.md +243 -0
  64. moai_adk/templates/.claude/skills/moai-cc-settings/templates/settings-complete-template.json +30 -0
  65. moai_adk/templates/.claude/skills/moai-cc-skills/SKILL.md +271 -0
  66. moai_adk/templates/.claude/skills/moai-cc-skills/templates/SKILL-template.md +15 -0
  67. moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +234 -43
  68. moai_adk/templates/.claude/skills/moai-domain-backend/examples.md +1633 -0
  69. moai_adk/templates/.claude/skills/moai-domain-backend/reference.md +660 -0
  70. moai_adk/templates/.claude/skills/moai-domain-cli-tool/SKILL.md +97 -69
  71. moai_adk/templates/.claude/skills/moai-domain-cli-tool/examples.md +29 -0
  72. moai_adk/templates/.claude/skills/moai-domain-cli-tool/reference.md +30 -0
  73. moai_adk/templates/.claude/skills/moai-domain-data-science/SKILL.md +97 -72
  74. moai_adk/templates/.claude/skills/moai-domain-data-science/examples.md +29 -0
  75. moai_adk/templates/.claude/skills/moai-domain-data-science/reference.md +30 -0
  76. moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +97 -74
  77. moai_adk/templates/.claude/skills/moai-domain-database/examples.md +29 -0
  78. moai_adk/templates/.claude/skills/moai-domain-database/reference.md +30 -0
  79. moai_adk/templates/.claude/skills/moai-domain-devops/SKILL.md +98 -74
  80. moai_adk/templates/.claude/skills/moai-domain-devops/examples.md +29 -0
  81. moai_adk/templates/.claude/skills/moai-domain-devops/reference.md +31 -0
  82. moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +98 -73
  83. moai_adk/templates/.claude/skills/moai-domain-frontend/examples.md +29 -0
  84. moai_adk/templates/.claude/skills/moai-domain-frontend/reference.md +31 -0
  85. moai_adk/templates/.claude/skills/moai-domain-ml/SKILL.md +97 -73
  86. moai_adk/templates/.claude/skills/moai-domain-ml/examples.md +29 -0
  87. moai_adk/templates/.claude/skills/moai-domain-ml/reference.md +30 -0
  88. moai_adk/templates/.claude/skills/moai-domain-mobile-app/SKILL.md +97 -67
  89. moai_adk/templates/.claude/skills/moai-domain-mobile-app/examples.md +29 -0
  90. moai_adk/templates/.claude/skills/moai-domain-mobile-app/reference.md +30 -0
  91. moai_adk/templates/.claude/skills/moai-domain-security/SKILL.md +97 -79
  92. moai_adk/templates/.claude/skills/moai-domain-security/examples.md +29 -0
  93. moai_adk/templates/.claude/skills/moai-domain-security/reference.md +30 -0
  94. moai_adk/templates/.claude/skills/moai-domain-web-api/SKILL.md +97 -71
  95. moai_adk/templates/.claude/skills/moai-domain-web-api/examples.md +29 -0
  96. moai_adk/templates/.claude/skills/moai-domain-web-api/reference.md +30 -0
  97. moai_adk/templates/.claude/skills/moai-essentials-debug/SKILL.md +656 -60
  98. moai_adk/templates/.claude/skills/moai-essentials-debug/examples.md +1107 -0
  99. moai_adk/templates/.claude/skills/moai-essentials-debug/reference.md +1533 -0
  100. moai_adk/templates/.claude/skills/moai-essentials-perf/SKILL.md +87 -78
  101. moai_adk/templates/.claude/skills/moai-essentials-perf/examples.md +29 -0
  102. moai_adk/templates/.claude/skills/moai-essentials-perf/reference.md +28 -0
  103. moai_adk/templates/.claude/skills/moai-essentials-refactor/SKILL.md +87 -70
  104. moai_adk/templates/.claude/skills/moai-essentials-refactor/examples.md +29 -0
  105. moai_adk/templates/.claude/skills/moai-essentials-refactor/reference.md +28 -0
  106. moai_adk/templates/.claude/skills/moai-essentials-review/SKILL.md +87 -86
  107. moai_adk/templates/.claude/skills/moai-essentials-review/examples.md +29 -0
  108. moai_adk/templates/.claude/skills/moai-essentials-review/reference.md +28 -0
  109. moai_adk/templates/.claude/skills/moai-foundation-ears/SKILL.md +77 -62
  110. moai_adk/templates/.claude/skills/moai-foundation-ears/examples.md +29 -0
  111. moai_adk/templates/.claude/skills/moai-foundation-ears/reference.md +28 -0
  112. moai_adk/templates/.claude/skills/moai-foundation-git/SKILL.md +88 -56
  113. moai_adk/templates/.claude/skills/moai-foundation-git/examples.md +29 -0
  114. moai_adk/templates/.claude/skills/moai-foundation-git/reference.md +29 -0
  115. moai_adk/templates/.claude/skills/moai-foundation-langs/SKILL.md +90 -71
  116. moai_adk/templates/.claude/skills/moai-foundation-langs/examples.md +29 -0
  117. moai_adk/templates/.claude/skills/moai-foundation-langs/reference.md +28 -0
  118. moai_adk/templates/.claude/skills/moai-foundation-specs/SKILL.md +78 -58
  119. moai_adk/templates/.claude/skills/moai-foundation-specs/examples.md +29 -0
  120. moai_adk/templates/.claude/skills/moai-foundation-specs/reference.md +28 -0
  121. moai_adk/templates/.claude/skills/moai-foundation-tags/SKILL.md +78 -51
  122. moai_adk/templates/.claude/skills/moai-foundation-tags/examples.md +29 -0
  123. moai_adk/templates/.claude/skills/moai-foundation-tags/reference.md +28 -0
  124. moai_adk/templates/.claude/skills/moai-foundation-trust/SKILL.md +253 -32
  125. moai_adk/templates/.claude/skills/moai-foundation-trust/examples.md +0 -0
  126. moai_adk/templates/.claude/skills/moai-foundation-trust/reference.md +1099 -0
  127. moai_adk/templates/.claude/skills/moai-lang-c/SKILL.md +98 -74
  128. moai_adk/templates/.claude/skills/moai-lang-c/examples.md +29 -0
  129. moai_adk/templates/.claude/skills/moai-lang-c/reference.md +31 -0
  130. moai_adk/templates/.claude/skills/moai-lang-cpp/SKILL.md +98 -76
  131. moai_adk/templates/.claude/skills/moai-lang-cpp/examples.md +29 -0
  132. moai_adk/templates/.claude/skills/moai-lang-cpp/reference.md +31 -0
  133. moai_adk/templates/.claude/skills/moai-lang-csharp/SKILL.md +97 -74
  134. moai_adk/templates/.claude/skills/moai-lang-csharp/examples.md +29 -0
  135. moai_adk/templates/.claude/skills/moai-lang-csharp/reference.md +30 -0
  136. moai_adk/templates/.claude/skills/moai-lang-dart/SKILL.md +86 -61
  137. moai_adk/templates/.claude/skills/moai-lang-dart/examples.md +29 -0
  138. moai_adk/templates/.claude/skills/moai-lang-dart/reference.md +30 -0
  139. moai_adk/templates/.claude/skills/moai-lang-go/SKILL.md +98 -74
  140. moai_adk/templates/.claude/skills/moai-lang-go/examples.md +29 -0
  141. moai_adk/templates/.claude/skills/moai-lang-go/reference.md +31 -0
  142. moai_adk/templates/.claude/skills/moai-lang-java/SKILL.md +87 -61
  143. moai_adk/templates/.claude/skills/moai-lang-java/examples.md +29 -0
  144. moai_adk/templates/.claude/skills/moai-lang-java/reference.md +31 -0
  145. moai_adk/templates/.claude/skills/moai-lang-javascript/SKILL.md +88 -59
  146. moai_adk/templates/.claude/skills/moai-lang-javascript/examples.md +29 -0
  147. moai_adk/templates/.claude/skills/moai-lang-javascript/reference.md +32 -0
  148. moai_adk/templates/.claude/skills/moai-lang-kotlin/SKILL.md +98 -73
  149. moai_adk/templates/.claude/skills/moai-lang-kotlin/examples.md +29 -0
  150. moai_adk/templates/.claude/skills/moai-lang-kotlin/reference.md +31 -0
  151. moai_adk/templates/.claude/skills/moai-lang-php/SKILL.md +86 -61
  152. moai_adk/templates/.claude/skills/moai-lang-php/examples.md +29 -0
  153. moai_adk/templates/.claude/skills/moai-lang-php/reference.md +30 -0
  154. moai_adk/templates/.claude/skills/moai-lang-python/SKILL.md +388 -53
  155. moai_adk/templates/.claude/skills/moai-lang-python/examples.md +624 -0
  156. moai_adk/templates/.claude/skills/moai-lang-python/reference.md +316 -0
  157. moai_adk/templates/.claude/skills/moai-lang-r/SKILL.md +97 -73
  158. moai_adk/templates/.claude/skills/moai-lang-r/examples.md +29 -0
  159. moai_adk/templates/.claude/skills/moai-lang-r/reference.md +30 -0
  160. moai_adk/templates/.claude/skills/moai-lang-ruby/SKILL.md +98 -73
  161. moai_adk/templates/.claude/skills/moai-lang-ruby/examples.md +29 -0
  162. moai_adk/templates/.claude/skills/moai-lang-ruby/reference.md +31 -0
  163. moai_adk/templates/.claude/skills/moai-lang-rust/SKILL.md +98 -74
  164. moai_adk/templates/.claude/skills/moai-lang-rust/examples.md +29 -0
  165. moai_adk/templates/.claude/skills/moai-lang-rust/reference.md +31 -0
  166. moai_adk/templates/.claude/skills/moai-lang-scala/SKILL.md +97 -74
  167. moai_adk/templates/.claude/skills/moai-lang-scala/examples.md +29 -0
  168. moai_adk/templates/.claude/skills/moai-lang-scala/reference.md +30 -0
  169. moai_adk/templates/.claude/skills/moai-lang-shell/SKILL.md +97 -74
  170. moai_adk/templates/.claude/skills/moai-lang-shell/examples.md +29 -0
  171. moai_adk/templates/.claude/skills/moai-lang-shell/reference.md +30 -0
  172. moai_adk/templates/.claude/skills/moai-lang-sql/SKILL.md +98 -74
  173. moai_adk/templates/.claude/skills/moai-lang-sql/examples.md +29 -0
  174. moai_adk/templates/.claude/skills/moai-lang-sql/reference.md +31 -0
  175. moai_adk/templates/.claude/skills/moai-lang-swift/SKILL.md +97 -73
  176. moai_adk/templates/.claude/skills/moai-lang-swift/examples.md +29 -0
  177. moai_adk/templates/.claude/skills/moai-lang-swift/reference.md +30 -0
  178. moai_adk/templates/.claude/skills/moai-lang-typescript/SKILL.md +90 -59
  179. moai_adk/templates/.claude/skills/moai-lang-typescript/examples.md +29 -0
  180. moai_adk/templates/.claude/skills/moai-lang-typescript/reference.md +34 -0
  181. moai_adk/templates/.claude/skills/moai-skill-factory/CHECKLIST.md +482 -0
  182. moai_adk/templates/.claude/skills/moai-skill-factory/EXAMPLES.md +278 -0
  183. moai_adk/templates/.claude/skills/moai-skill-factory/INTERACTIVE-DISCOVERY.md +524 -0
  184. moai_adk/templates/.claude/skills/moai-skill-factory/METADATA.md +477 -0
  185. moai_adk/templates/.claude/skills/moai-skill-factory/PARALLEL-ANALYSIS-REPORT.md +429 -0
  186. moai_adk/templates/.claude/skills/moai-skill-factory/PYTHON-VERSION-MATRIX.md +391 -0
  187. moai_adk/templates/.claude/skills/moai-skill-factory/SKILL-FACTORY-WORKFLOW.md +431 -0
  188. moai_adk/templates/.claude/skills/moai-skill-factory/SKILL-UPDATE-ADVISOR.md +577 -0
  189. moai_adk/templates/.claude/skills/moai-skill-factory/SKILL.md +560 -0
  190. moai_adk/templates/.claude/skills/moai-skill-factory/STEP-BY-STEP-GUIDE.md +466 -0
  191. moai_adk/templates/.claude/skills/moai-skill-factory/STRUCTURE.md +583 -0
  192. moai_adk/templates/.claude/skills/moai-skill-factory/WEB-RESEARCH.md +526 -0
  193. moai_adk/templates/.claude/skills/moai-skill-factory/reference.md +465 -0
  194. moai_adk/templates/.claude/skills/moai-skill-factory/scripts/generate-structure.sh +328 -0
  195. moai_adk/templates/.claude/skills/moai-skill-factory/scripts/validate-skill.sh +312 -0
  196. moai_adk/templates/.claude/skills/moai-skill-factory/templates/SKILL_TEMPLATE.md +245 -0
  197. moai_adk/templates/.claude/skills/moai-skill-factory/templates/examples-template.md +285 -0
  198. moai_adk/templates/.claude/skills/moai-skill-factory/templates/reference-template.md +278 -0
  199. moai_adk/templates/.claude/skills/moai-skill-factory/templates/scripts-template.sh +303 -0
  200. moai_adk/templates/.claude/skills/moai-spec-authoring/README.md +129 -0
  201. moai_adk/templates/.claude/skills/moai-spec-authoring/SKILL.md +1300 -0
  202. moai_adk/templates/.claude/skills/moai-spec-authoring/examples/validate-spec.sh +161 -0
  203. moai_adk/templates/CLAUDE.md +121 -81
  204. moai_adk-0.4.8.dist-info/METADATA +1553 -0
  205. moai_adk-0.4.8.dist-info/RECORD +265 -0
  206. moai_adk/templates/.claude/skills/moai-alfred-code-reviewer/SKILL.md +0 -112
  207. moai_adk/templates/.claude/skills/moai-alfred-debugger-pro/SKILL.md +0 -103
  208. moai_adk/templates/.claude/skills/moai-alfred-performance-optimizer/SKILL.md +0 -105
  209. moai_adk/templates/.claude/skills/moai-alfred-refactoring-coach/SKILL.md +0 -97
  210. moai_adk/templates/.claude/skills/moai-alfred-tui-survey/SKILL.md +0 -87
  211. moai_adk/templates/.claude/skills/moai-alfred-tui-survey/examples.md +0 -62
  212. moai_adk/templates/.claude/skills/moai-claude-code/SKILL.md +0 -94
  213. moai_adk/templates/.claude/skills/moai-claude-code/examples.md +0 -513
  214. moai_adk/templates/.claude/skills/moai-claude-code/reference.md +0 -433
  215. moai_adk/templates/.claude/skills/moai-claude-code/templates/agent-full.md +0 -332
  216. moai_adk/templates/.claude/skills/moai-claude-code/templates/command-full.md +0 -384
  217. moai_adk/templates/.claude/skills/moai-claude-code/templates/plugin-full.json +0 -363
  218. moai_adk/templates/.claude/skills/moai-claude-code/templates/settings-full.json +0 -595
  219. moai_adk/templates/.claude/skills/moai-claude-code/templates/skill-full.md +0 -496
  220. moai_adk/templates/.claude/skills/moai-lang-clojure/SKILL.md +0 -100
  221. moai_adk/templates/.claude/skills/moai-lang-elixir/SKILL.md +0 -99
  222. moai_adk/templates/.claude/skills/moai-lang-haskell/SKILL.md +0 -100
  223. moai_adk/templates/.claude/skills/moai-lang-julia/SKILL.md +0 -98
  224. moai_adk/templates/.claude/skills/moai-lang-lua/SKILL.md +0 -98
  225. moai_adk-0.4.5.dist-info/METADATA +0 -369
  226. moai_adk-0.4.5.dist-info/RECORD +0 -152
  227. {moai_adk-0.4.5.dist-info → moai_adk-0.4.8.dist-info}/WHEEL +0 -0
  228. {moai_adk-0.4.5.dist-info → moai_adk-0.4.8.dist-info}/entry_points.txt +0 -0
  229. {moai_adk-0.4.5.dist-info → moai_adk-0.4.8.dist-info}/licenses/LICENSE +0 -0
@@ -1,100 +0,0 @@
1
- ---
2
-
3
- name: moai-lang-haskell
4
- description: Haskell best practices with HUnit, Stack/Cabal, and pure functional programming. Use when writing or reviewing Haskell code in project workflows.
5
- allowed-tools:
6
- - Read
7
- - Bash
8
- ---
9
-
10
- # Haskell Expert
11
-
12
- ## Skill Metadata
13
- | Field | Value |
14
- | ----- | ----- |
15
- | Allowed tools | Read (read_file), Bash (terminal) |
16
- | Auto-load | On demand when language keywords are detected |
17
- | Trigger cues | Haskell code discussions, framework guidance, or file extensions such as .hs. |
18
- | Tier | 3 |
19
-
20
- ## What it does
21
-
22
- Provides Haskell-specific expertise for TDD development, including HUnit testing, Stack/Cabal build tools, and pure functional programming with strong type safety.
23
-
24
- ## When to use
25
-
26
- - Engages when the conversation references Haskell work, frameworks, or files like .hs.
27
- - “Writing Haskell tests”, “How to use HUnit”, “Pure functional programming”
28
- - Automatically invoked when working with Haskell projects
29
- - Haskell SPEC implementation (`/alfred:2-run`)
30
-
31
- ## How it works
32
-
33
- **TDD Framework**:
34
- - **HUnit**: Unit testing framework
35
- - **QuickCheck**: Property-based testing
36
- - **Hspec**: BDD-style testing
37
- - Test coverage with hpc
38
-
39
- **Build Tools**:
40
- - **Stack**: Reproducible builds, dependency resolution
41
- - **Cabal**: Haskell package system
42
- - **hpack**: Alternative package description
43
-
44
- **Code Quality**:
45
- - **hlint**: Haskell linter
46
- - **stylish-haskell**: Code formatting
47
- - **GHC warnings**: Compiler-level checks
48
-
49
- **Functional Programming**:
50
- - **Pure functions**: No side effects
51
- - **Monads**: IO, Maybe, Either, State
52
- - **Functors/Applicatives**: Abstraction patterns
53
- - **Type classes**: Polymorphism
54
- - **Lazy evaluation**: Infinite data structures
55
-
56
- **Best Practices**:
57
- - File ≤300 LOC, function ≤50 LOC
58
- - Prefer total functions (avoid partial)
59
- - Type-driven development
60
- - Point-free style (when readable)
61
- - Avoid do-notation overuse
62
-
63
- ## Examples
64
- ```bash
65
- cabal test && hlint src
66
- ```
67
-
68
- ## Inputs
69
- - Language-specific source directories (e.g. `src/`, `app/`).
70
- - Language-specific build/test configuration files (e.g. `package.json`, `pyproject.toml`, `go.mod`).
71
- - Relevant test suites and sample data.
72
-
73
- ## Outputs
74
- - Test/lint execution plan tailored to the selected language.
75
- - List of key language idioms and review checkpoints.
76
-
77
- ## Failure Modes
78
- - When the language runtime or package manager is not installed.
79
- - When the main language cannot be determined in a multilingual project.
80
-
81
- ## Dependencies
82
- - Access to the project file is required using the Read/Grep tool.
83
- - When used with `Skill("moai-foundation-langs")`, it is easy to share cross-language conventions.
84
-
85
- ## References
86
- - Haskell.org. "Haskell Language Documentation." https://www.haskell.org/documentation/ (accessed 2025-03-29).
87
- - GitHub. "HLint." https://github.com/ndmitchell/hlint (accessed 2025-03-29).
88
-
89
- ## Changelog
90
- - 2025-03-29: Input/output/failure response/reference information for each language has been specified.
91
-
92
- ## Works well with
93
-
94
- - alfred-trust-validation (coverage verification)
95
- - alfred-code-reviewer (Haskell-specific review)
96
- - alfred-refactoring-coach (functional refactoring)
97
-
98
- ## Best Practices
99
- - Enable automatic validation by matching your linter with the language's official style guide.
100
- - Fix test/build pipelines with reproducible commands in CI.
@@ -1,98 +0,0 @@
1
- ---
2
-
3
- name: moai-lang-julia
4
- description: Julia best practices with Test stdlib, Pkg manager, and scientific computing patterns. Use when writing or reviewing Julia code in project workflows.
5
- allowed-tools:
6
- - Read
7
- - Bash
8
- ---
9
-
10
- # Julia Expert
11
-
12
- ## Skill Metadata
13
- | Field | Value |
14
- | ----- | ----- |
15
- | Allowed tools | Read (read_file), Bash (terminal) |
16
- | Auto-load | On demand when language keywords are detected |
17
- | Trigger cues | Julia code discussions, framework guidance, or file extensions such as .jl. |
18
- | Tier | 3 |
19
-
20
- ## What it does
21
-
22
- Provides Julia-specific expertise for TDD development, including Test standard library, Pkg package manager, and high-performance scientific computing patterns.
23
-
24
- ## When to use
25
-
26
- - Engages when the conversation references Julia work, frameworks, or files like .jl.
27
- - "Writing Julia tests", "How to use Test stdlib", "Scientific computing"
28
- - Automatically invoked when working with Julia projects
29
- - Julia SPEC implementation (`/alfred:2-run`)
30
-
31
- ## How it works
32
-
33
- **TDD Framework**:
34
- - **Test**: Built-in testing library (@test, @testset)
35
- - **Coverage.jl**: Test coverage analysis
36
- - **BenchmarkTools.jl**: Performance benchmarking
37
-
38
- **Package Management**:
39
- - **Pkg**: Built-in package manager
40
- - **Project.toml**: Package configuration
41
- - **Manifest.toml**: Dependency lock file
42
-
43
- **Code Quality**:
44
- - **JuliaFormatter.jl**: Code formatting
45
- - **Lint.jl**: Static analysis
46
- - **JET.jl**: Type inference analysis
47
-
48
- **Scientific Computing**:
49
- - **Multiple dispatch**: Method specialization on argument types
50
- - **Type stability**: Performance optimization
51
- - **Broadcasting**: Element-wise operations (. syntax)
52
- - **Linear algebra**: Built-in BLAS/LAPACK
53
-
54
- **Best Practices**:
55
- - File ≤300 LOC, function ≤50 LOC
56
- - Type annotations for performance-critical code
57
- - Prefer abstract types for function arguments
58
- - Use @inbounds for performance (after bounds checking)
59
- - Profile before optimizing
60
-
61
- ## Examples
62
- ```bash
63
- julia --project -e 'using Pkg; Pkg.test()'
64
- ```
65
-
66
- ## Inputs
67
- - Language-specific source directories (e.g. `src/`, `app/`).
68
- - Language-specific build/test configuration files (e.g. `package.json`, `pyproject.toml`, `go.mod`).
69
- - Relevant test suites and sample data.
70
-
71
- ## Outputs
72
- - Test/lint execution plan tailored to the selected language.
73
- - List of key language idioms and review checkpoints.
74
-
75
- ## Failure Modes
76
- - When the language runtime or package manager is not installed.
77
- - When the main language cannot be determined in a multilingual project.
78
-
79
- ## Dependencies
80
- - Access to the project file is required using the Read/Grep tool.
81
- - When used with `Skill("moai-foundation-langs")`, it is easy to share cross-language conventions.
82
-
83
- ## References
84
- - Julia Language. "Documentation." https://docs.julialang.org/en/v1/ (accessed 2025-03-29).
85
- - JuliaFormatter.jl. "JuliaFormatter Documentation." https://domluna.github.io/JuliaFormatter.jl/stable/ (accessed 2025-03-29).
86
-
87
- ## Changelog
88
- - 2025-03-29: Input/output/failure response/reference information for each language has been specified.
89
-
90
- ## Works well with
91
-
92
- - alfred-trust-validation (coverage verification)
93
- - alfred-code-reviewer (Julia-specific review)
94
- - alfred-performance-optimizer (Julia profiling)
95
-
96
- ## Best Practices
97
- - Enable automatic validation by matching your linter with the language's official style guide.
98
- - Fix test/build pipelines with reproducible commands in CI.
@@ -1,98 +0,0 @@
1
- ---
2
-
3
- name: moai-lang-lua
4
- description: Lua best practices with busted, luacheck, and embedded scripting patterns. Use when writing or reviewing Lua code in project workflows.
5
- allowed-tools:
6
- - Read
7
- - Bash
8
- ---
9
-
10
- # Lua Expert
11
-
12
- ## Skill Metadata
13
- | Field | Value |
14
- | ----- | ----- |
15
- | Allowed tools | Read (read_file), Bash (terminal) |
16
- | Auto-load | On demand when language keywords are detected |
17
- | Trigger cues | Lua code discussions, framework guidance, or file extensions such as .lua. |
18
- | Tier | 3 |
19
-
20
- ## What it does
21
-
22
- Provides Lua-specific expertise for TDD development, including busted testing framework, luacheck linting, and embedded scripting patterns for game development and system configuration.
23
-
24
- ## When to use
25
-
26
- - Engages when the conversation references Lua work, frameworks, or files like .lua.
27
- - "Writing Lua tests", "How to use busted", "Embedded scripting"
28
- - Automatically invoked when working with Lua projects
29
- - Lua SPEC implementation (`/alfred:2-run`)
30
-
31
- ## How it works
32
-
33
- **TDD Framework**:
34
- - **busted**: Elegant Lua testing framework
35
- - **luassert**: Assertion library
36
- - **lua-coveralls**: Coverage reporting
37
- - BDD-style test writing
38
-
39
- **Code Quality**:
40
- - **luacheck**: Lua linter and static analyzer
41
- - **StyLua**: Code formatting
42
- - **luadoc**: Documentation generation
43
-
44
- **Package Management**:
45
- - **LuaRocks**: Package manager
46
- - **rockspec**: Package specification
47
-
48
- **Lua Patterns**:
49
- - **Tables**: Versatile data structure
50
- - **Metatables**: Operator overloading
51
- - **Closures**: Function factories
52
- - **Coroutines**: Cooperative multitasking
53
-
54
- **Best Practices**:
55
- - File ≤300 LOC, function ≤50 LOC
56
- - Use `local` for all variables
57
- - Prefer tables over multiple return values
58
- - Document public APIs
59
- - Avoid global variables
60
-
61
- ## Examples
62
- ```bash
63
- luacheck src && busted
64
- ```
65
-
66
- ## Inputs
67
- - Language-specific source directories (e.g. `src/`, `app/`).
68
- - Language-specific build/test configuration files (e.g. `package.json`, `pyproject.toml`, `go.mod`).
69
- - Relevant test suites and sample data.
70
-
71
- ## Outputs
72
- - Test/lint execution plan tailored to the selected language.
73
- - List of key language idioms and review checkpoints.
74
-
75
- ## Failure Modes
76
- - When the language runtime or package manager is not installed.
77
- - When the main language cannot be determined in a multilingual project.
78
-
79
- ## Dependencies
80
- - Access to the project file is required using the Read/Grep tool.
81
- - When used with `Skill("moai-foundation-langs")`, it is easy to share cross-language conventions.
82
-
83
- ## References
84
- - Lua.org. "Programming in Lua." https://www.lua.org/pil/contents.html (accessed 2025-03-29).
85
- - Olivine Labs. "busted." https://olivinelabs.com/busted/ (accessed 2025-03-29).
86
-
87
- ## Changelog
88
- - 2025-03-29: Input/output/failure response/reference information for each language has been specified.
89
-
90
- ## Works well with
91
-
92
- - alfred-trust-validation (coverage verification)
93
- - alfred-code-reviewer (Lua-specific review)
94
- - cli-tool-expert (Lua scripting utilities)
95
-
96
- ## Best Practices
97
- - Enable automatic validation by matching your linter with the language's official style guide.
98
- - Fix test/build pipelines with reproducible commands in CI.
@@ -1,369 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: moai-adk
3
- Version: 0.4.5
4
- Summary: MoAI Agentic Development Kit - SPEC-First TDD with Alfred SuperAgent
5
- Project-URL: Homepage, https://github.com/modu-ai/moai-adk
6
- Project-URL: Repository, https://github.com/modu-ai/moai-adk
7
- Project-URL: Issues, https://github.com/modu-ai/moai-adk/issues
8
- Project-URL: Changelog, https://github.com/modu-ai/moai-adk/releases
9
- Author-email: MoAI Team <support@moduai.kr>
10
- License: MIT
11
- License-File: LICENSE
12
- Keywords: agentic,ai,alfred,claude,development,spec-first,tdd,toolkit
13
- Classifier: Development Status :: 4 - Beta
14
- Classifier: Intended Audience :: Developers
15
- Classifier: License :: OSI Approved :: MIT License
16
- Classifier: Programming Language :: Python :: 3
17
- Classifier: Programming Language :: Python :: 3.13
18
- Classifier: Topic :: Software Development :: Libraries :: Python Modules
19
- Classifier: Topic :: Software Development :: Quality Assurance
20
- Classifier: Topic :: Software Development :: Testing
21
- Requires-Python: >=3.13
22
- Requires-Dist: click>=8.1.0
23
- Requires-Dist: gitpython>=3.1.45
24
- Requires-Dist: packaging>=21.0
25
- Requires-Dist: pyfiglet>=1.0.2
26
- Requires-Dist: questionary>=2.0.0
27
- Requires-Dist: rich>=13.0.0
28
- Provides-Extra: dev
29
- Requires-Dist: mypy>=1.7.0; extra == 'dev'
30
- Requires-Dist: pytest-cov>=7.0.0; extra == 'dev'
31
- Requires-Dist: pytest-xdist>=3.8.0; extra == 'dev'
32
- Requires-Dist: pytest>=8.4.2; extra == 'dev'
33
- Requires-Dist: ruff>=0.1.0; extra == 'dev'
34
- Requires-Dist: types-pyyaml>=6.0.0; extra == 'dev'
35
- Provides-Extra: security
36
- Requires-Dist: bandit>=1.8.0; extra == 'security'
37
- Requires-Dist: pip-audit>=2.7.0; extra == 'security'
38
- Description-Content-Type: text/markdown
39
-
40
- # MoAI-ADK (Agentic Development Kit)
41
-
42
- [한국어](README.md) | [English](README.en.md) | [ไทย](README.th.md) | [日本語](README.ja.md) | [中文](README.zh.md) | [हिन्दी](README.hi.md)
43
-
44
- [![PyPI version](https://img.shields.io/pypi/v/moai-adk)](https://pypi.org/project/moai-adk/)
45
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
46
- [![Python](https://img.shields.io/badge/Python-3.13+-blue)](https://www.python.org/)
47
- [![Tests](https://github.com/modu-ai/moai-adk/actions/workflows/moai-gitflow.yml/badge.svg)](https://github.com/modu-ai/moai-adk/actions/workflows/moai-gitflow.yml)
48
- [![codecov](https://codecov.io/gh/modu-ai/moai-adk/branch/develop/graph/badge.svg)](https://codecov.io/gh/modu-ai/moai-adk)
49
- [![Coverage](https://img.shields.io/badge/coverage-87.66%25-brightgreen)](https://github.com/modu-ai/moai-adk)
50
-
51
- > **MoAI-ADK는 AI와 함께 명세(SPEC) → 테스트(TDD) → 코드 → 문서를 자연스럽게 잇는 개발 워크플로우를 제공합니다.**
52
-
53
- ---
54
-
55
- ## 1. MoAI-ADK 한눈에 보기
56
-
57
- | 질문 | 바로 보기 |
58
- | --- | --- |
59
- | 처음 접했는데 무엇인가요? | [MoAI-ADK란?](#moai-adk란) |
60
- | 어떻게 시작하나요? | [5분 Quick Start](#5-분-quick-start) |
61
- | 기본 흐름이 궁금해요 | [기본 워크플로우 (0 → 3)](#기본-워크플로우-0--3) |
62
- | Plan / Run / Sync 명령은 무엇을 하나요? | [핵심 명령 요약](#핵심-명령-요약) |
63
- | SPEC·TDD·TAG가 뭐죠? | [핵심 개념 쉽게 이해하기](#핵심-개념-쉽게-이해하기) |
64
- | 에이전트/Skills가 궁금해요 | [Sub-agent & Skills 개요](#sub-agent--skills-개요) |
65
- | 더 깊이 공부하고 싶어요 | [추가 자료](#추가-자료) |
66
-
67
- ---
68
-
69
- ## MoAI-ADK란?
70
-
71
- MoAI-ADK(MoAI Agentic Development Kit)는 **AI가 개발 과정 전체를 도와주는 오픈소스 툴킷**입니다. “먼저 SPEC(요구사항 명세)을 만들고, 테스트(TDD)로 확인한 뒤, 문서와 코드가 항상 동기화된다”는 원칙을 Alfred SuperAgent가 대신 지켜 줍니다.
72
-
73
- 입문자라도 다음 세 가지만 기억하면 됩니다.
74
-
75
- 1. **무엇을 만들지(SPEC)** 먼저 말한다.
76
- 2. **테스트 먼저 작성(TDD)** 후 코드를 채운다.
77
- 3. **문서/README/CHANGELOG**까지 자동으로 맞춰 둔다.
78
-
79
- 이 과정을 `/alfred` 명령 네 가지로 반복하면 전체 프로젝트가 일관되게 정리됩니다.
80
-
81
- ---
82
-
83
- ## 왜 필요한가요?
84
-
85
- | 고민 | MoAI-ADK가 도와주는 방법 |
86
- | --- | --- |
87
- | “AI가 만든 코드를 믿기 어렵다” | 명세 → 테스트 → 구현 → 문서가 한 TAG 체인으로 연결됩니다. |
88
- | “프로젝트 전체 맥락이 없어서 같은 질문을 반복한다” | Alfred가 핵심 문서와 히스토리를 기억하고 다시 안내합니다. |
89
- | “프롬프트 작성이 어렵다” | `/alfred` 명령과 준비된 Skills가 표준화된 프롬프트를 대신 제공합니다. |
90
- | “문서와 코드가 따로 놀아요” | `/alfred:3-sync`가 README/CHANGELOG/Living Doc을 자동으로 맞춥니다. |
91
-
92
- ---
93
-
94
- ## 5-분 Quick Start
95
-
96
- ```bash
97
- # 1. (선택) uv 설치 — pip보다 훨씬 빠른 Python 패키지 관리자
98
- curl -LsSf https://astral.sh/uv/install.sh | sh
99
-
100
- # 2. MoAI-ADK 설치 (tool 모드: 전역-격리 실행)
101
- uv tool install moai-adk
102
-
103
- # 3. 새 프로젝트 시작
104
- moai-adk init my-project
105
- cd my-project
106
-
107
- # 4. Claude Code(또는 CLI)에서 Alfred 호출
108
- claude # Claude Code 실행 후 아래 명령 사용
109
- /alfred:0-project "프로젝트 이름"
110
- ```
111
-
112
- > 🔍 확인용 명령: `moai-adk doctor` — Python/uv 버전, `.moai/` 구조, 에이전트/Skills 구성이 모두 준비됐는지 점검합니다.
113
-
114
- ---
115
-
116
- ## MoAI-ADK 최신 버전 유지하기
117
-
118
- ### 버전 확인
119
- ```bash
120
- # 현재 설치된 버전 확인
121
- moai-adk --version
122
-
123
- # PyPI에서 최신 버전 확인
124
- uv tool list # moai-adk의 현재 버전 확인
125
- ```
126
-
127
- ### 업그레이드 하기
128
-
129
- #### 방법 1: moai-adk 자체 업데이트 명령어 (가장 간단)
130
- ```bash
131
- # MoAI-ADK 자체 업데이트 명령어 - 에이전트/Skills 템플릿도 함께 업데이트
132
- moai-adk update
133
-
134
- # 업데이트 후 프로젝트에 새 템플릿 적용 (선택)
135
- moai-adk init .
136
- ```
137
-
138
- #### 방법 2: uv tool 명령어로 업그레이드
139
-
140
- **특정 도구만 업그레이드 (권장)**
141
- ```bash
142
- # moai-adk만 최신 버전으로 업그레이드
143
- uv tool upgrade moai-adk
144
- ```
145
-
146
- **모든 설치된 도구 업그레이드**
147
- ```bash
148
- # 모든 uv tool 도구를 최신 버전으로 업그레이트
149
- uv tool update
150
- ```
151
-
152
- **특정 버전으로 설치**
153
- ```bash
154
- # 특정 버전으로 재설치 (예: 0.4.2)
155
- uv tool install moai-adk==0.4.2
156
- ```
157
-
158
- ### 업데이트 후 확인
159
- ```bash
160
- # 1. 설치된 버전 확인
161
- moai-adk --version
162
-
163
- # 2. 프로젝트 정상 작동 확인
164
- moai-adk doctor
165
-
166
- # 3. 기존 프로젝트에 새 템플릿 적용 (필요한 경우)
167
- cd your-project
168
- moai-adk init . # 기존 코드는 유지, .moai/ 구조와 템플릿만 업데이트
169
-
170
- # 4. Alfred에서 업데이트된 기능 확인
171
- cd your-project
172
- claude
173
- /alfred:0-project # 새로운 언어 선택 기능 등을 확인
174
- ```
175
-
176
- > 💡 **Tip**:
177
- > - `moai-adk update`: MoAI-ADK 패키지 버전 업데이트 + 에이전트/Skills 템플릿 동기화
178
- > - `moai-adk init .`: 기존 프로젝트에 새 템플릿 적용 (코드는 안전하게 유지)
179
- > - 두 명령을 함께 실행하면 완전한 업데이트가 완료됩니다.
180
- > - 주요 업데이트(minor/major)가 나오면 위 절차를 실행하여 새로운 에이전트/Skills를 활용할 수 있습니다.
181
-
182
- ---
183
-
184
- ## 기본 워크플로우 (0 → 3)
185
-
186
- Alfred는 네 개의 명령으로 프로젝트를 반복 개발합니다.
187
-
188
- ```mermaid
189
- %%{init: {'theme':'neutral'}}%%
190
- graph TD
191
- Start([사용자 요청]) --> Init[0. Init<br/>/alfred:0-project]
192
- Init --> Plan[1. Plan & SPEC<br/>/alfred:1-plan]
193
- Plan --> Run[2. Run & TDD<br/>/alfred:2-run]
194
- Run --> Sync[3. Sync & Docs<br/>/alfred:3-sync]
195
- Sync --> Plan
196
- Sync -.-> End([릴리스])
197
- ```
198
-
199
- ### 0. INIT — 프로젝트 준비
200
- - 프로젝트 소개, 타깃, 언어, 모드(locale) 질문
201
- - `.moai/config.json`, `.moai/project/*` 문서 5종 자동 생성
202
- - 언어 감지 및 추천 Skill Pack 배치 (Foundation + Essentials + Domain/Language)
203
- - 템플릿 정리, 초깃 Git/백업 체크
204
-
205
- ### 1. PLAN — 무엇을 만들지 합의
206
- - EARS 템플릿으로 SPEC 작성 (`@SPEC:ID` 포함)
207
- - Plan Board, 구현 아이디어, 위험 요소 정리
208
- - Team 모드라면 브랜치/초기 Draft PR 자동 생성
209
-
210
- ### 2. RUN — 테스트 주도 개발(TDD)
211
- - Phase 1 `implementation-planner`: 라이브러리, 폴더, TAG 설계
212
- - Phase 2 `tdd-implementer`: RED(실패 테스트) → GREEN(최소 구현) → REFACTOR(정리)
213
- - quality-gate가 TRUST 5 원칙, 커버리지 변화를 검증
214
-
215
- ### 3. SYNC — 문서 & PR 정리
216
- - Living Document, README, CHANGELOG 등 문서 동기화
217
- - TAG 체인 검증 및 orphan TAG 복구
218
- - Sync Report 생성, Draft → Ready for Review 전환, `--auto-merge` 옵션 지원
219
-
220
- ---
221
-
222
- ## 핵심 명령 요약
223
-
224
- | 명령 | 무엇을 하나요? | 대표 산출물 |
225
- | --- | --- | --- |
226
- | `/alfred:0-project` | 프로젝트 설명 수집, 설정·문서 생성, Skill 추천 | `.moai/config.json`, `.moai/project/*`, 초기 보고서 |
227
- | `/alfred:1-plan <설명>` | 요구사항 분석, SPEC 초안, Plan Board 작성 | `.moai/specs/SPEC-*/spec.md`, plan/acceptance 문서, feature 브랜치 |
228
- | `/alfred:2-run <SPEC-ID>` | TDD 실행, 테스트/구현/리팩토링, 품질 검증 | `tests/`, `src/` 구현, 품질 리포트, TAG 연결 |
229
- | `/alfred:3-sync` | 문서/README/CHANGELOG 동기화, TAG/PR 상태 정리 | `docs/`, `.moai/reports/sync-report.md`, Ready PR |
230
-
231
- > ❗ 모든 명령은 **Phase 0(선택) → Phase 1 → Phase 2 → Phase 3** 순환 구조를 유지합니다. 실행 중 상태와 다음 단계 제안은 Alfred가 자동으로 보고합니다.
232
-
233
- ---
234
-
235
- ## 핵심 개념 쉽게 이해하기
236
-
237
- ### SPEC-First (요구사항 먼저)
238
- - **왜?** 집을 짓기 전에 설계도가 필요하듯, 구현 전에 무엇을 만들지 정리합니다.
239
- - **어떻게?** `/alfred:1-plan`이 EARS 형식으로 “WHEN… THEN…“ 구조를 갖춘 SPEC을 만들어 줍니다.
240
- - **결과**: `@SPEC:ID` 태그가 있는 문서 + Plan Board + Acceptance 기준.
241
-
242
- ### TDD (Test-Driven Development)
243
- - **RED**: 실패하는 테스트를 먼저 작성합니다.
244
- - **GREEN**: 테스트가 통과하도록 가장 단순한 코드를 작성합니다.
245
- - **REFACTOR**: 코드 구조를 다듬고 중복을 제거합니다.
246
- - `/alfred:2-run`이 이 과정을 자동으로 진행하며 RED/GREEN/REFACTOR 커밋 로그를 남깁니다.
247
-
248
- ### TAG 시스템
249
- - `@SPEC:ID` → `@TEST:ID` → `@CODE:ID` → `@DOC:ID` 순서로 연결됩니다.
250
- - 코드 어디에서든 TAG만 검색하면 관련 SPEC·테스트·문서를 한 번에 추적할 수 있습니다.
251
- - `/alfred:3-sync`가 TAG 인벤토리를 점검하고 orphan TAG를 알려줍니다.
252
-
253
- ### TRUST 5 원칙
254
- 1. **Test First** — 테스트는 항상 먼저 작성
255
- 2. **Readable** — 짧은 함수, 일관된 스타일 유지
256
- 3. **Unified** — 아키텍처와 타입/계약을 일관되게 유지
257
- 4. **Secured** — 입력 검증, 비밀정보 보호, 정적 분석 수행
258
- 5. **Trackable** — TAG, Git 히스토리, 문서가 함께 움직임
259
-
260
- > 더 자세한 규칙은 `.moai/memory/development-guide.md`에서 확인하세요.
261
-
262
- ---
263
-
264
- ## 첫 번째 실습: Todo API 예제
265
-
266
- 1. **Plan**
267
- ```bash
268
- /alfred:1-plan "할 일 추가, 조회, 수정, 삭제 API"
269
- ```
270
- Alfred가 SPEC(`.moai/specs/SPEC-TODO-001/spec.md`)과 plan/acceptance 문서를 만들어 줍니다.
271
-
272
- 2. **Run**
273
- ```bash
274
- /alfred:2-run TODO-001
275
- ```
276
- 테스트(`tests/test_todo_api.py`), 구현(`src/todo/`), 리포트가 자동 생성됩니다.
277
-
278
- 3. **Sync**
279
- ```bash
280
- /alfred:3-sync
281
- ```
282
- `docs/api/todo.md`, TAG 체인, Sync Report가 업데이트됩니다.
283
-
284
- 4. **검증 명령**
285
- ```bash
286
- rg '@(SPEC|TEST|CODE|DOC):TODO-001' -n
287
- pytest tests/test_todo_api.py -v
288
- cat docs/api/todo.md
289
- ```
290
-
291
- > 15분이면 SPEC → TDD → 문서가 모두 연결된 Todo API가 완성됩니다.
292
-
293
- ---
294
-
295
- ## Sub-agent & Skills 개요
296
-
297
- Alfred는 **19명의 팀**(SuperAgent 1 + Core Sub-agent 10 + 0-project Sub-agent 6 + Built-in 2)과 **44개의 Claude Skills**를 조합해 작업합니다.
298
-
299
- ### Core Sub-agents (Plan → Run → Sync)
300
-
301
- | Sub-agent | 모델 | 역할 |
302
- | --- | --- | --- |
303
- | project-manager 📋 | Sonnet | 프로젝트 초기화, 메타데이터 인터뷰 |
304
- | spec-builder 🏗️ | Sonnet | Plan 보드, EARS SPEC 작성 |
305
- | code-builder 💎 | Sonnet | `implementation-planner` + `tdd-implementer`로 TDD 전체 수행 |
306
- | doc-syncer 📖 | Haiku | Living Doc, README, CHANGELOG 동기화 |
307
- | tag-agent 🏷️ | Haiku | TAG 인벤토리, orphan 탐지 |
308
- | git-manager 🚀 | Haiku | GitFlow, Draft/Ready, Auto Merge |
309
- | debug-helper 🔍 | Sonnet | 실패 분석, fix-forward 전략 |
310
- | trust-checker ✅ | Haiku | TRUST 5 품질 게이트 |
311
- | quality-gate 🛡️ | Haiku | 커버리지 변화 및 릴리스 차단 조건 검토 |
312
- | cc-manager 🛠️ | Sonnet | Claude Code 세션 최적화, Skill 배포 |
313
-
314
- ### Skills (Progressive Disclosure)
315
- - **Foundation (6)**: TRUST, TAG, SPEC, EARS, Git, Language 감지
316
- - **Essentials (4)**: Debug, Refactor, Review, Performance
317
- - **Domain (10)**: Backend, Web API, Security, Data, Mobile 등
318
- - **Language (23)**: Python, TypeScript, Go, Rust, Java, Swift 등 주요 언어 패키지
319
- - **Claude Code Ops (1)**: 세션 설정, Output Style 관리
320
-
321
- > Skills는 `.claude/skills/` 디렉터리에 저장된 500단어 이하 가이드입니다. 필요할 때만 로드되어 컨텍스트 비용을 줄입니다.
322
-
323
- ---
324
-
325
- ## AI 모델 선택 가이드
326
-
327
- | 상황 | 기본 모델 | 이유 |
328
- | --- | --- | --- |
329
- | 명세/설계/리팩토링/문제 해결 | **Claude 4.5 Sonnet** | 깊은 추론과 구조화된 작성에 강함 |
330
- | 문서 동기화, TAG 검사, Git 자동화 | **Claude 4.5 Haiku** | 빠른 반복 작업, 문자열 처리에 강함 |
331
-
332
- - 패턴화된 작업은 Haiku로 시작하고, 복잡한 판단이 필요하면 Sonnet으로 전환하세요.
333
- - 수동으로 모델을 변경했다면 “왜 전환했는지” 로그에 남겨두면 협업에 도움이 됩니다.
334
-
335
- ---
336
-
337
- ## 자주 묻는 질문 (FAQ)
338
-
339
- - **Q. 기존 프로젝트에 설치해도 되나요?**
340
- - A. 가능합니다. `moai-adk init .` 을 실행하면 기존 코드를 건드리지 않고 `.moai/` 구조만 추가합니다.
341
- - **Q. 테스트 실행은 어떻게 하나요?**
342
- - A. `/alfred:2-run`이 먼저 실행하고, 필요하면 `pytest`, `pnpm test` 등 언어별 명령을 다시 실행하세요.
343
- - **Q. 문서가 항상 최신인지 확인하는 방법은?**
344
- - A. `/alfred:3-sync`가 Sync Report를 생성합니다. Pull Request에서 보고서를 확인하세요.
345
- - **Q. 수동으로 진행할 수도 있나요?**
346
- - A. 가능하지만, SPEC → TEST → CODE → DOC 순서를 지키고 TAG를 꼭 남겨야 합니다.
347
-
348
- ---
349
-
350
- ## 추가 자료
351
-
352
- | 목적 | 리소스 |
353
- | --- | --- |
354
- | Skills 세부 구조 | `docs/skills/overview.md` 및 Tier별 문서 |
355
- | Sub-agent 상세 | `docs/agents/overview.md` |
356
- | 워크플로우 가이드 | `docs/guides/workflow/` (Plan/Run/Sync) |
357
- | 개발 가드라인 | `.moai/memory/development-guide.md`, `.moai/memory/spec-metadata.md` |
358
- | 업데이트 계획 | `CHANGELOG.md`, `UPDATE-PLAN-0.4.0.md` |
359
-
360
- ---
361
-
362
- ## 커뮤니티 & 지원
363
-
364
- - GitHub Repo: <https://github.com/modu-ai/moai-adk>
365
- - Issues & Discussions: 버그, 기능 요청, 아이디어 공유 환영합니다.
366
- - PyPI: <https://pypi.org/project/moai-adk/>
367
- - 문의: 프로젝트 내 `CONTRIBUTING.md` 가이드를 참고하세요.
368
-
369
- > 🙌 “SPEC 없이는 CODE도 없다” — Alfred와 함께 일관된 AI 개발 문화를 경험해 보세요.