moai-adk 0.3.12__py3-none-any.whl → 0.4.0__py3-none-any.whl

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

Potentially problematic release.


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

Files changed (92) hide show
  1. moai_adk/__init__.py +8 -1
  2. moai_adk/__main__.py +1 -1
  3. moai_adk/cli/commands/__init__.py +1 -1
  4. moai_adk/cli/commands/doctor.py +2 -2
  5. moai_adk/cli/commands/status.py +1 -1
  6. moai_adk/cli/commands/update.py +136 -90
  7. moai_adk/cli/prompts/init_prompts.py +1 -1
  8. moai_adk/core/__init__.py +1 -1
  9. moai_adk/core/git/branch.py +1 -1
  10. moai_adk/core/git/manager.py +1 -1
  11. moai_adk/core/project/detector.py +14 -2
  12. moai_adk/core/quality/__init__.py +1 -1
  13. moai_adk/core/quality/trust_checker.py +1 -1
  14. moai_adk/core/quality/validators/__init__.py +1 -1
  15. moai_adk/core/quality/validators/base_validator.py +1 -1
  16. moai_adk/core/template/__init__.py +1 -1
  17. moai_adk/core/template/backup.py +2 -1
  18. moai_adk/core/template/config.py +24 -0
  19. moai_adk/core/template/languages.py +1 -1
  20. moai_adk/core/template/merger.py +58 -1
  21. moai_adk/core/template/processor.py +41 -12
  22. moai_adk/templates/.claude/agents/alfred/cc-manager.md +558 -3
  23. moai_adk/templates/.claude/commands/alfred/0-project.md +480 -12
  24. moai_adk/templates/.claude/commands/alfred/1-plan.md +563 -0
  25. moai_adk/templates/.claude/commands/alfred/1-spec.md +15 -516
  26. moai_adk/templates/.claude/commands/alfred/2-build.md +15 -417
  27. moai_adk/templates/.claude/commands/alfred/2-run.md +460 -0
  28. moai_adk/templates/.claude/hooks/alfred/handlers/session.py +12 -0
  29. moai_adk/templates/.claude/skills/moai-claude-code/SKILL.md +67 -0
  30. moai_adk/templates/.claude/skills/moai-claude-code/examples.md +513 -0
  31. moai_adk/templates/.claude/skills/moai-claude-code/reference.md +419 -0
  32. moai_adk/templates/.claude/skills/moai-claude-code/templates/agent-full.md +332 -0
  33. moai_adk/templates/.claude/skills/moai-claude-code/templates/command-full.md +384 -0
  34. moai_adk/templates/.claude/skills/moai-claude-code/templates/plugin-full.json +349 -0
  35. moai_adk/templates/.claude/skills/moai-claude-code/templates/settings-full.json +552 -0
  36. moai_adk/templates/.claude/skills/moai-claude-code/templates/skill-full.md +499 -0
  37. moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +68 -0
  38. moai_adk/templates/.claude/skills/moai-domain-cli-tool/SKILL.md +64 -0
  39. moai_adk/templates/.claude/skills/moai-domain-data-science/SKILL.md +67 -0
  40. moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +69 -0
  41. moai_adk/templates/.claude/skills/moai-domain-devops/SKILL.md +69 -0
  42. moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +68 -0
  43. moai_adk/templates/.claude/skills/moai-domain-ml/SKILL.md +67 -0
  44. moai_adk/templates/.claude/skills/moai-domain-mobile-app/SKILL.md +62 -0
  45. moai_adk/templates/.claude/skills/moai-domain-security/SKILL.md +74 -0
  46. moai_adk/templates/.claude/skills/moai-domain-web-api/SKILL.md +66 -0
  47. moai_adk/templates/.claude/skills/moai-essentials-debug/SKILL.md +66 -0
  48. moai_adk/templates/.claude/skills/moai-essentials-perf/SKILL.md +68 -0
  49. moai_adk/templates/.claude/skills/moai-essentials-refactor/SKILL.md +59 -0
  50. moai_adk/templates/.claude/skills/moai-essentials-review/SKILL.md +76 -0
  51. moai_adk/templates/.claude/skills/moai-foundation-ears/SKILL.md +61 -0
  52. moai_adk/templates/.claude/skills/moai-foundation-git/SKILL.md +63 -0
  53. moai_adk/templates/.claude/skills/moai-foundation-langs/SKILL.md +64 -0
  54. moai_adk/templates/.claude/skills/moai-foundation-specs/SKILL.md +61 -0
  55. moai_adk/templates/.claude/skills/moai-foundation-tags/SKILL.md +54 -0
  56. moai_adk/templates/.claude/skills/moai-foundation-trust/SKILL.md +46 -0
  57. moai_adk/templates/.claude/skills/moai-lang-c/SKILL.md +68 -0
  58. moai_adk/templates/.claude/skills/moai-lang-clojure/SKILL.md +68 -0
  59. moai_adk/templates/.claude/skills/moai-lang-cpp/SKILL.md +69 -0
  60. moai_adk/templates/.claude/skills/moai-lang-csharp/SKILL.md +67 -0
  61. moai_adk/templates/.claude/skills/moai-lang-dart/SKILL.md +66 -0
  62. moai_adk/templates/.claude/skills/moai-lang-elixir/SKILL.md +66 -0
  63. moai_adk/templates/.claude/skills/moai-lang-go/SKILL.md +67 -0
  64. moai_adk/templates/.claude/skills/moai-lang-haskell/SKILL.md +67 -0
  65. moai_adk/templates/.claude/skills/moai-lang-java/SKILL.md +66 -0
  66. moai_adk/templates/.claude/skills/moai-lang-javascript/SKILL.md +64 -0
  67. moai_adk/templates/.claude/skills/moai-lang-julia/SKILL.md +66 -0
  68. moai_adk/templates/.claude/skills/moai-lang-kotlin/SKILL.md +67 -0
  69. moai_adk/templates/.claude/skills/moai-lang-lua/SKILL.md +65 -0
  70. moai_adk/templates/.claude/skills/moai-lang-php/SKILL.md +65 -0
  71. moai_adk/templates/.claude/skills/moai-lang-python/SKILL.md +64 -0
  72. moai_adk/templates/.claude/skills/moai-lang-r/SKILL.md +66 -0
  73. moai_adk/templates/.claude/skills/moai-lang-ruby/SKILL.md +66 -0
  74. moai_adk/templates/.claude/skills/moai-lang-rust/SKILL.md +68 -0
  75. moai_adk/templates/.claude/skills/moai-lang-scala/SKILL.md +68 -0
  76. moai_adk/templates/.claude/skills/moai-lang-shell/SKILL.md +67 -0
  77. moai_adk/templates/.claude/skills/moai-lang-sql/SKILL.md +68 -0
  78. moai_adk/templates/.claude/skills/moai-lang-swift/SKILL.md +67 -0
  79. moai_adk/templates/.claude/skills/moai-lang-typescript/SKILL.md +64 -0
  80. moai_adk/templates/.claude/skills/scripts/standardize_skills.py +166 -0
  81. moai_adk/templates/.claude/skills/scripts/verify_standardization.sh +43 -0
  82. moai_adk/templates/CLAUDE.md +153 -0
  83. moai_adk/templates/__init__.py +1 -1
  84. moai_adk/utils/__init__.py +1 -1
  85. moai_adk/utils/banner.py +1 -1
  86. moai_adk/utils/logger.py +1 -1
  87. {moai_adk-0.3.12.dist-info → moai_adk-0.4.0.dist-info}/METADATA +244 -3
  88. moai_adk-0.4.0.dist-info/RECORD +145 -0
  89. moai_adk-0.3.12.dist-info/RECORD +0 -90
  90. {moai_adk-0.3.12.dist-info → moai_adk-0.4.0.dist-info}/WHEEL +0 -0
  91. {moai_adk-0.3.12.dist-info → moai_adk-0.4.0.dist-info}/entry_points.txt +0 -0
  92. {moai_adk-0.3.12.dist-info → moai_adk-0.4.0.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,76 @@
1
+ ---
2
+ name: moai-essentials-review
3
+ description: Automated code review with SOLID principles, code smells, and language-specific
4
+ best practices
5
+ allowed-tools:
6
+ - Read
7
+ - Bash
8
+ - Write
9
+ - Edit
10
+ - TodoWrite
11
+ ---
12
+
13
+ # Alfred Code Reviewer
14
+
15
+ ## What it does
16
+
17
+ Automated code review with language-specific best practices, SOLID principles verification, and code smell detection.
18
+
19
+ ## When to use
20
+
21
+ - "코드 리뷰해줘", "이 코드 개선점은?", "코드 품질 확인"
22
+ - Optionally invoked after `/alfred:3-sync`
23
+ - Before merging PR
24
+
25
+ ## How it works
26
+
27
+ **Code Constraints Check**:
28
+ - File ≤300 LOC
29
+ - Function ≤50 LOC
30
+ - Parameters ≤5
31
+ - Cyclomatic complexity ≤10
32
+
33
+ **SOLID Principles**:
34
+ - Single Responsibility
35
+ - Open/Closed
36
+ - Liskov Substitution
37
+ - Interface Segregation
38
+ - Dependency Inversion
39
+
40
+ **Code Smell Detection**:
41
+ - Long Method
42
+ - Large Class
43
+ - Duplicate Code
44
+ - Dead Code
45
+ - Magic Numbers
46
+
47
+ **Language-specific Best Practices**:
48
+ - Python: List comprehension, type hints, PEP 8
49
+ - TypeScript: Strict typing, async/await, error handling
50
+ - Java: Streams API, Optional, Design patterns
51
+
52
+ **Review Report**:
53
+ ```markdown
54
+ ## Code Review Report
55
+
56
+ ### 🔴 Critical Issues (3)
57
+ 1. **src/auth/service.py:45** - Function too long (85 > 50 LOC)
58
+ 2. **src/api/handler.ts:120** - Missing error handling
59
+ 3. **src/db/repository.java:200** - Magic number
60
+
61
+ ### ⚠️ Warnings (5)
62
+ 1. **src/utils/helper.py:30** - Unused import
63
+
64
+ ### ✅ Good Practices Found
65
+ - Test coverage: 92%
66
+ - Consistent naming
67
+ ```
68
+
69
+ ## Examples
70
+
71
+ User: "이 코드 리뷰해줘"
72
+ Claude: (analyzes code, detects issues, provides improvement suggestions)
73
+ ## Works well with
74
+
75
+ - moai-foundation-specs
76
+ - moai-essentials-refactor
@@ -0,0 +1,61 @@
1
+ ---
2
+ name: moai-foundation-ears
3
+ description: EARS requirement authoring guide (Ubiquitous/Event/State/Optional/Constraints)
4
+ allowed-tools:
5
+ - Read
6
+ - Bash
7
+ - Write
8
+ - Edit
9
+ - TodoWrite
10
+ ---
11
+
12
+ # Alfred EARS Authoring Guide
13
+
14
+ ## What it does
15
+
16
+ EARS (Easy Approach to Requirements Syntax) authoring guide for writing clear, testable requirements using 5 statement patterns.
17
+
18
+ ## When to use
19
+
20
+ - "SPEC 작성", "요구사항 정리", "EARS 구문"
21
+ - Automatically invoked by `/alfred:1-plan`
22
+ - When writing or refining SPEC documents
23
+
24
+ ## How it works
25
+
26
+ EARS provides 5 statement patterns for structured requirements:
27
+
28
+ ### 1. Ubiquitous (기본 요구사항)
29
+ **Format**: 시스템은 [기능]을 제공해야 한다
30
+ **Example**: 시스템은 사용자 인증 기능을 제공해야 한다
31
+
32
+ ### 2. Event-driven (이벤트 기반)
33
+ **Format**: WHEN [조건]이면, 시스템은 [동작]해야 한다
34
+ **Example**: WHEN 사용자가 로그인하면, 시스템은 JWT 토큰을 발급해야 한다
35
+
36
+ ### 3. State-driven (상태 기반)
37
+ **Format**: WHILE [상태]일 때, 시스템은 [동작]해야 한다
38
+ **Example**: WHILE 사용자가 인증된 상태일 때, 시스템은 보호된 리소스 접근을 허용해야 한다
39
+
40
+ ### 4. Optional (선택적 기능)
41
+ **Format**: WHERE [조건]이면, 시스템은 [동작]할 수 있다
42
+ **Example**: WHERE 리프레시 토큰이 제공되면, 시스템은 새로운 액세스 토큰을 발급할 수 있다
43
+
44
+ ### 5. Constraints (제약사항)
45
+ **Format**: IF [조건]이면, 시스템은 [제약]해야 한다
46
+ **Example**: IF 잘못된 토큰이 제공되면, 시스템은 접근을 거부해야 한다
47
+
48
+ ## Writing Tips
49
+
50
+ ✅ Be specific and measurable
51
+ ✅ Avoid vague terms ("적절한", "충분한", "빠른")
52
+ ✅ One requirement per statement
53
+ ✅ Make it testable
54
+
55
+ ## Examples
56
+
57
+ User: "JWT 인증 SPEC 작성해줘"
58
+ Claude: (applies EARS patterns to structure authentication requirements)
59
+ ## Works well with
60
+
61
+ - moai-foundation-specs
@@ -0,0 +1,63 @@
1
+ ---
2
+ name: moai-foundation-git
3
+ description: Git workflow automation (branching, TDD commits, PR management)
4
+ allowed-tools:
5
+ - Read
6
+ - Bash
7
+ - Write
8
+ - Edit
9
+ - TodoWrite
10
+ ---
11
+
12
+ # Alfred Git Workflow
13
+
14
+ ## What it does
15
+
16
+ Automates Git operations following MoAI-ADK conventions: branch creation, locale-based TDD commits, Draft PR creation, and PR Ready transition.
17
+
18
+ ## When to use
19
+
20
+ - "브랜치 생성", "PR 만들어줘", "커밋 생성"
21
+ - Automatically invoked by `/alfred:1-plan`, `/alfred:2-run`, `/alfred:3-sync`
22
+ - Git workflow automation needed
23
+
24
+ ## How it works
25
+
26
+ **1. Branch Creation**:
27
+ ```bash
28
+ git checkout develop
29
+ git checkout -b feature/SPEC-AUTH-001
30
+ ```
31
+
32
+ **2. Locale-based TDD Commits**:
33
+ - **Korean (ko)**: 🔴 RED: [테스트 설명]
34
+ - **English (en)**: 🔴 RED: [Test description]
35
+ - **Japanese (ja)**: 🔴 RED: [テスト説明]
36
+ - **Chinese (zh)**: 🔴 RED: [测试说明]
37
+
38
+ Configured via `.moai/config.json`:
39
+ ```json
40
+ {"project": {"locale": "ko"}}
41
+ ```
42
+
43
+ **3. Draft PR Creation**:
44
+ Creates Draft PR with SPEC reference and test checklist.
45
+
46
+ **4. PR Ready Transition** (via `/alfred:3-sync`):
47
+ - Updates PR from Draft → Ready
48
+ - Adds quality gate checklist
49
+ - Verifies TRUST 5-principles
50
+
51
+ ## Examples
52
+
53
+ ### Example 1: Create feature branch
54
+ User: "/alfred:1-plan JWT 인증"
55
+ Claude: (creates `feature/SPEC-AUTH-001` branch and Draft PR)
56
+
57
+ ### Example 2: TDD commit
58
+ User: "/alfred:2-run AUTH-001"
59
+ Claude: (commits with locale-specific format: 🔴 RED, 🟢 GREEN, ♻️ REFACTOR)
60
+
61
+ ### Example 3: Finalize PR
62
+ User: "/alfred:3-sync"
63
+ Claude: (transitions PR to Ready state with quality report)
@@ -0,0 +1,64 @@
1
+ ---
2
+ name: moai-foundation-langs
3
+ description: Auto-detects project language and framework (package.json, pyproject.toml,
4
+ etc)
5
+ allowed-tools:
6
+ - Read
7
+ - Bash
8
+ - Write
9
+ - Edit
10
+ - TodoWrite
11
+ ---
12
+
13
+ # Alfred Language Detection
14
+
15
+ ## What it does
16
+
17
+ Automatically detects project's primary language and framework by scanning configuration files, then recommends appropriate testing tools and linters.
18
+
19
+ ## When to use
20
+
21
+ - "언어 감지", "프로젝트 언어 확인", "테스트 도구 추천"
22
+ - Automatically invoked by `/alfred:0-project`, `/alfred:2-run`
23
+ - Setting up new project
24
+
25
+ ## How it works
26
+
27
+ **Configuration File Scanning**:
28
+ - `package.json` → TypeScript/JavaScript (Jest/Vitest, ESLint/Biome)
29
+ - `pyproject.toml` → Python (pytest, ruff, black)
30
+ - `Cargo.toml` → Rust (cargo test, clippy, rustfmt)
31
+ - `go.mod` → Go (go test, golint, gofmt)
32
+ - `Gemfile` → Ruby (RSpec, RuboCop)
33
+ - `pubspec.yaml` → Dart/Flutter (flutter test, dart analyze)
34
+ - `build.gradle` → Java/Kotlin (JUnit, Checkstyle)
35
+ - `Package.swift` → Swift (XCTest, SwiftLint)
36
+
37
+ **Toolchain Recommendation**:
38
+ ```json
39
+ {
40
+ "language": "Python",
41
+ "test_framework": "pytest",
42
+ "linter": "ruff",
43
+ "formatter": "black",
44
+ "type_checker": "mypy",
45
+ "package_manager": "uv"
46
+ }
47
+ ```
48
+
49
+ **Framework Detection**:
50
+ - **Python**: FastAPI, Django, Flask
51
+ - **TypeScript**: React, Next.js, Vue
52
+ - **Java**: Spring Boot, Quarkus
53
+
54
+ **Supported Languages**: Python, TypeScript, Java, Go, Rust, Ruby, Dart, Swift, Kotlin, PHP, C#, C++, Elixir, Scala, Clojure (20+ languages)
55
+
56
+ ## Examples
57
+
58
+ ### Example 1: Auto-detect project language
59
+ User: "/alfred:0-project"
60
+ Claude: (scans config files, detects Python, recommends pytest + ruff + black)
61
+
62
+ ### Example 2: Manual detection
63
+ User: "이 프로젝트는 무슨 언어?"
64
+ Claude: (analyzes config files and reports language + framework)
@@ -0,0 +1,61 @@
1
+ ---
2
+ name: moai-foundation-specs
3
+ description: Validates SPEC YAML frontmatter (7 required fields) and HISTORY section
4
+ allowed-tools:
5
+ - Read
6
+ - Bash
7
+ - Write
8
+ - Edit
9
+ - TodoWrite
10
+ ---
11
+
12
+ # Alfred SPEC Metadata Validation
13
+
14
+ ## What it does
15
+
16
+ Validates SPEC document structure including YAML frontmatter (7 required fields) and HISTORY section compliance.
17
+
18
+ ## When to use
19
+
20
+ - "SPEC 검증", "메타데이터 확인", "SPEC 구조 체크"
21
+ - Automatically invoked by `/alfred:1-plan`
22
+ - Before creating SPEC document
23
+
24
+ ## How it works
25
+
26
+ **YAML Frontmatter Validation (7 required fields)**:
27
+ - `id`: SPEC ID (e.g., AUTH-001)
28
+ - `version`: Semantic Version (e.g., 0.0.1)
29
+ - `status`: draft|active|completed|deprecated
30
+ - `created`: YYYY-MM-DD format
31
+ - `updated`: YYYY-MM-DD format
32
+ - `author`: @{GitHub ID} format
33
+ - `priority`: low|medium|high|critical
34
+
35
+ **HISTORY Section Validation**:
36
+ - Checks existence of HISTORY section
37
+ - Verifies version history (INITIAL/ADDED/CHANGED/FIXED tags)
38
+ - Validates author and date consistency
39
+
40
+ **Format Validation**:
41
+ ```bash
42
+ # Check required fields
43
+ rg "^(id|version|status|created|updated|author|priority):" .moai/specs/SPEC-*/spec.md
44
+
45
+ # Verify HISTORY section
46
+ rg "^## HISTORY" .moai/specs/SPEC-*/spec.md
47
+ ```
48
+
49
+ ## Examples
50
+
51
+ ### Example 1: Validate SPEC structure
52
+ User: "SPEC-AUTH-001 메타데이터 확인해줘"
53
+ Claude: (validates YAML frontmatter and HISTORY section, reports issues)
54
+
55
+ ### Example 2: Batch validation
56
+ User: "모든 SPEC 메타데이터 검증"
57
+ Claude: (validates all SPEC documents and generates report)
58
+ ## Works well with
59
+
60
+ - moai-foundation-ears
61
+ - moai-foundation-tags
@@ -0,0 +1,54 @@
1
+ ---
2
+ name: moai-foundation-tags
3
+ description: Scans @TAG markers directly from code and generates inventory (CODE-FIRST)
4
+ allowed-tools:
5
+ - Read
6
+ - Bash
7
+ - Write
8
+ - Edit
9
+ - TodoWrite
10
+ ---
11
+
12
+ # Alfred TAG Scanning
13
+
14
+ ## What it does
15
+
16
+ Scans all @TAG markers (SPEC/TEST/CODE/DOC) directly from codebase and generates TAG inventory without intermediate caching (CODE-FIRST principle).
17
+
18
+ ## When to use
19
+
20
+ - "TAG 스캔", "TAG 목록", "TAG 인벤토리"
21
+ - Automatically invoked by `/alfred:3-sync`
22
+ - "고아 TAG 찾아줘", "TAG 체인 확인"
23
+
24
+ ## How it works
25
+
26
+ **CODE-FIRST Scanning**:
27
+ ```bash
28
+ # Direct code scan without intermediate cache
29
+ rg '@(SPEC|TEST|CODE|DOC):' -n .moai/specs/ tests/ src/ docs/
30
+ ```
31
+
32
+ **TAG Inventory Generation**:
33
+ - Lists all TAGs with file locations
34
+ - Detects orphaned TAGs (no corresponding SPEC/TEST/CODE)
35
+ - Identifies broken links in TAG chain
36
+ - Reports duplicate IDs
37
+
38
+ **TAG Chain Verification**:
39
+ - @SPEC → @TEST → @CODE → @DOC connection check
40
+ - Ensures traceability across all artifacts
41
+
42
+ ## Examples
43
+
44
+ ### Example 1: Full TAG scan
45
+ User: "TAG 전체 스캔해줘"
46
+ Claude: (scans all files and generates TAG inventory report)
47
+
48
+ ### Example 2: Find orphaned TAGs
49
+ User: "고아 TAG 찾아줘"
50
+ Claude: (identifies TAGs without complete chain)
51
+ ## Works well with
52
+
53
+ - moai-foundation-trust
54
+ - moai-foundation-specs
@@ -0,0 +1,46 @@
1
+ ---
2
+ name: moai-foundation-trust
3
+ description: Validates TRUST 5-principles (Test 85%+, Readable, Unified, Secured,
4
+ Trackable)
5
+ allowed-tools:
6
+ - Read
7
+ - Write
8
+ - Edit
9
+ - Bash
10
+ - TodoWrite
11
+ ---
12
+
13
+ # Foundation: TRUST Validation
14
+
15
+ ## What it does
16
+
17
+ Validates MoAI-ADK's TRUST 5-principles compliance to ensure code quality, testability, security, and traceability.
18
+
19
+ ## When to use
20
+
21
+ - "TRUST 원칙 확인", "품질 검증", "코드 품질 체크"
22
+ - Automatically invoked by `/alfred:3-sync`
23
+ - Before merging PR or releasing
24
+
25
+ ## How it works
26
+
27
+ **T - Test First**:
28
+ - Checks test coverage ≥85% (pytest, vitest, go test, cargo test, etc.)
29
+ - Verifies TDD cycle compliance (RED → GREEN → REFACTOR)
30
+
31
+ **R - Readable**:
32
+ - File ≤300 LOC, Function ≤50 LOC, Parameters ≤5, Complexity ≤10
33
+
34
+ **U - Unified**:
35
+ - SPEC-driven architecture consistency, Clear module boundaries
36
+
37
+ **S - Secured**:
38
+ - Input validation, No hardcoded secrets, Access control
39
+
40
+ **T - Trackable**:
41
+ - TAG chain integrity (@SPEC → @TEST → @CODE → @DOC)
42
+
43
+ ## Works well with
44
+
45
+ - moai-foundation-tags (TAG traceability)
46
+ - moai-foundation-specs (SPEC validation)
@@ -0,0 +1,68 @@
1
+ ---
2
+ name: moai-lang-c
3
+ description: C best practices with Unity test framework, cppcheck, and Make build
4
+ system
5
+ allowed-tools:
6
+ - Read
7
+ - Bash
8
+ ---
9
+
10
+ # C Expert
11
+
12
+ ## What it does
13
+
14
+ Provides C-specific expertise for TDD development, including Unity test framework, cppcheck static analysis, and Make build system for system programming.
15
+
16
+ ## When to use
17
+
18
+ - "C 테스트 작성", "Unity 테스트 프레임워크", "임베디드 C"
19
+ - Automatically invoked when working with C projects
20
+ - C SPEC implementation (`/alfred:2-build`)
21
+
22
+ ## How it works
23
+
24
+ **TDD Framework**:
25
+ - **Unity**: Lightweight C test framework
26
+ - **CMock**: Mocking framework for C
27
+ - **Ceedling**: Build automation for C
28
+ - Test coverage with gcov
29
+
30
+ **Build Tools**:
31
+ - **Make**: Standard build automation
32
+ - **CMake**: Modern build system
33
+ - **GCC/Clang**: C compilers
34
+
35
+ **Code Quality**:
36
+ - **cppcheck**: Static code analysis
37
+ - **Valgrind**: Memory leak detection
38
+ - **splint**: Secure programming lint
39
+
40
+ **C Patterns**:
41
+ - **Opaque pointers**: Information hiding
42
+ - **Function pointers**: Callback mechanisms
43
+ - **Error codes**: Integer return values
44
+ - **Manual memory management**: malloc/free discipline
45
+
46
+ **Best Practices**:
47
+ - File ≤300 LOC, function ≤50 LOC
48
+ - Always check malloc return values
49
+ - Free every malloc
50
+ - Avoid buffer overflows (use strncpy, snprintf)
51
+ - Use const for read-only parameters
52
+ - Initialize all variables
53
+
54
+ ## Examples
55
+
56
+ ### Example 1: TDD with Unity
57
+ User: "/alfred:2-build DRIVER-001"
58
+ Claude: (creates RED test with Unity, GREEN implementation, REFACTOR with error handling)
59
+
60
+ ### Example 2: Memory leak check
61
+ User: "Valgrind 메모리 체크"
62
+ Claude: (runs valgrind --leak-check=full and reports leaks)
63
+
64
+ ## Works well with
65
+
66
+ - alfred-trust-validation (coverage verification)
67
+ - alfred-code-reviewer (C-specific review)
68
+ - alfred-debugger-pro (C debugging)
@@ -0,0 +1,68 @@
1
+ ---
2
+ name: moai-lang-clojure
3
+ description: Clojure best practices with clojure.test, Leiningen, and immutable data
4
+ structures
5
+ allowed-tools:
6
+ - Read
7
+ - Bash
8
+ ---
9
+
10
+ # Clojure Expert
11
+
12
+ ## What it does
13
+
14
+ Provides Clojure-specific expertise for TDD development, including clojure.test framework, Leiningen build tool, and immutable data structures with functional programming.
15
+
16
+ ## When to use
17
+
18
+ - "Clojure 테스트 작성", "clojure.test 사용법", "불변 데이터 구조"
19
+ - Automatically invoked when working with Clojure projects
20
+ - Clojure SPEC implementation (`/alfred:2-build`)
21
+
22
+ ## How it works
23
+
24
+ **TDD Framework**:
25
+ - **clojure.test**: Built-in testing library
26
+ - **midje**: BDD-style testing
27
+ - **test.check**: Property-based testing
28
+ - Test coverage with cloverage
29
+
30
+ **Build Tools**:
31
+ - **Leiningen**: Project automation, dependency management
32
+ - **deps.edn**: Official dependency tool
33
+ - **Boot**: Alternative build tool
34
+
35
+ **Code Quality**:
36
+ - **clj-kondo**: Linter for Clojure
37
+ - **cljfmt**: Code formatting
38
+ - **eastwood**: Additional linting
39
+
40
+ **Clojure Patterns**:
41
+ - **Immutable data structures**: Persistent collections
42
+ - **Pure functions**: Functional core, imperative shell
43
+ - **Threading macros**: -> and ->> for readability
44
+ - **Lazy sequences**: Infinite data processing
45
+ - **Transducers**: Composable transformations
46
+
47
+ **Best Practices**:
48
+ - File ≤300 LOC, function ≤50 LOC
49
+ - Prefer let bindings over def
50
+ - Use namespaces for organization
51
+ - Destructuring for data access
52
+ - Avoid mutable state
53
+
54
+ ## Examples
55
+
56
+ ### Example 1: TDD with clojure.test
57
+ User: "/alfred:2-build TRANSFORM-001"
58
+ Claude: (creates RED test with clojure.test, GREEN implementation with threading macros, REFACTOR)
59
+
60
+ ### Example 2: Property testing
61
+ User: "test.check 속성 테스트"
62
+ Claude: (creates generative tests with test.check)
63
+
64
+ ## Works well with
65
+
66
+ - alfred-trust-validation (coverage verification)
67
+ - alfred-code-reviewer (Clojure-specific review)
68
+ - alfred-refactoring-coach (functional refactoring)
@@ -0,0 +1,69 @@
1
+ ---
2
+ name: moai-lang-cpp
3
+ description: C++ best practices with Google Test, clang-format, and modern C++ (C++17/20)
4
+ allowed-tools:
5
+ - Read
6
+ - Bash
7
+ ---
8
+
9
+ # C++ Expert
10
+
11
+ ## What it does
12
+
13
+ Provides C++-specific expertise for TDD development, including Google Test framework, clang-format formatting, and modern C++ (C++17/20) features.
14
+
15
+ ## When to use
16
+
17
+ - "C++ 테스트 작성", "Google Test 사용법", "모던 C++"
18
+ - Automatically invoked when working with C++ projects
19
+ - C++ SPEC implementation (`/alfred:2-build`)
20
+
21
+ ## How it works
22
+
23
+ **TDD Framework**:
24
+ - **Google Test (gtest)**: Unit testing framework
25
+ - **Google Mock (gmock)**: Mocking framework
26
+ - **Catch2**: Alternative testing framework
27
+ - Test coverage with gcov/lcov
28
+
29
+ **Build Tools**:
30
+ - **CMake**: Cross-platform build system
31
+ - **Make**: Traditional build tool
32
+ - **Conan/vcpkg**: Package managers
33
+
34
+ **Code Quality**:
35
+ - **clang-format**: Code formatting
36
+ - **clang-tidy**: Static analysis
37
+ - **cppcheck**: Additional static analysis
38
+
39
+ **Modern C++ Features**:
40
+ - **Smart pointers**: unique_ptr, shared_ptr, weak_ptr
41
+ - **Move semantics**: std::move, rvalue references
42
+ - **Lambda expressions**: Inline functions
43
+ - **auto keyword**: Type inference
44
+ - **constexpr**: Compile-time evaluation
45
+ - **std::optional**: Nullable types (C++17)
46
+ - **Concepts**: Type constraints (C++20)
47
+
48
+ **Best Practices**:
49
+ - File ≤300 LOC, function ≤50 LOC
50
+ - RAII (Resource Acquisition Is Initialization)
51
+ - Rule of Five (destructor, copy/move constructors/assignments)
52
+ - Prefer stack allocation over heap
53
+ - Const correctness
54
+
55
+ ## Examples
56
+
57
+ ### Example 1: TDD with Google Test
58
+ User: "/alfred:2-build CACHE-001"
59
+ Claude: (creates RED test with gtest, GREEN implementation with smart pointers, REFACTOR)
60
+
61
+ ### Example 2: Modern C++ refactoring
62
+ User: "C++17 기능으로 리팩토링"
63
+ Claude: (refactors code to use std::optional, structured bindings)
64
+
65
+ ## Works well with
66
+
67
+ - alfred-trust-validation (coverage verification)
68
+ - alfred-code-reviewer (C++-specific review)
69
+ - alfred-performance-optimizer (C++ profiling)
@@ -0,0 +1,67 @@
1
+ ---
2
+ name: moai-lang-csharp
3
+ description: C# best practices with xUnit, .NET tooling, LINQ, and async/await patterns
4
+ allowed-tools:
5
+ - Read
6
+ - Bash
7
+ ---
8
+
9
+ # C# Expert
10
+
11
+ ## What it does
12
+
13
+ Provides C#-specific expertise for TDD development, including xUnit testing, .NET CLI tooling, LINQ query expressions, and async/await patterns.
14
+
15
+ ## When to use
16
+
17
+ - "C# 테스트 작성", "xUnit 사용법", "LINQ 쿼리"
18
+ - Automatically invoked when working with .NET projects
19
+ - C# SPEC implementation (`/alfred:2-build`)
20
+
21
+ ## How it works
22
+
23
+ **TDD Framework**:
24
+ - **xUnit**: Modern .NET testing framework
25
+ - **Moq**: Mocking library for interfaces
26
+ - **FluentAssertions**: Expressive assertions
27
+ - Test coverage ≥85% with Coverlet
28
+
29
+ **Build Tools**:
30
+ - **.NET CLI**: dotnet build, test, run
31
+ - **NuGet**: Package management
32
+ - **MSBuild**: Build system
33
+
34
+ **Code Quality**:
35
+ - **StyleCop**: C# style checker
36
+ - **SonarAnalyzer**: Static code analysis
37
+ - **EditorConfig**: Code formatting rules
38
+
39
+ **C# Patterns**:
40
+ - **LINQ**: Query expressions for collections
41
+ - **Async/await**: Asynchronous programming
42
+ - **Properties**: Get/set accessors
43
+ - **Extension methods**: Add methods to existing types
44
+ - **Nullable reference types**: Null safety (C# 8+)
45
+
46
+ **Best Practices**:
47
+ - File ≤300 LOC, method ≤50 LOC
48
+ - Use PascalCase for public members
49
+ - Prefer `var` for local variables when type is obvious
50
+ - Async methods should end with "Async" suffix
51
+ - Use string interpolation ($"") over concatenation
52
+
53
+ ## Examples
54
+
55
+ ### Example 1: TDD with xUnit
56
+ User: "/alfred:2-build SERVICE-001"
57
+ Claude: (creates RED test with xUnit, GREEN implementation with async/await, REFACTOR)
58
+
59
+ ### Example 2: LINQ query optimization
60
+ User: "LINQ 쿼리 최적화"
61
+ Claude: (analyzes LINQ queries and suggests IEnumerable vs IQueryable optimizations)
62
+
63
+ ## Works well with
64
+
65
+ - alfred-trust-validation (coverage verification)
66
+ - alfred-code-reviewer (C#-specific review)
67
+ - web-api-expert (ASP.NET Core API development)