moai-adk 0.3.13__py3-none-any.whl → 0.4.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.
- moai_adk/__init__.py +1 -1
- moai_adk/__main__.py +1 -1
- moai_adk/cli/commands/__init__.py +1 -1
- moai_adk/cli/commands/doctor.py +2 -2
- moai_adk/cli/commands/init.py +10 -5
- moai_adk/cli/commands/status.py +1 -1
- moai_adk/cli/commands/update.py +210 -8
- moai_adk/cli/prompts/init_prompts.py +15 -19
- moai_adk/core/__init__.py +1 -1
- moai_adk/core/diagnostics/slash_commands.py +1 -1
- moai_adk/core/git/branch.py +1 -1
- moai_adk/core/git/manager.py +1 -1
- moai_adk/core/project/backup_utils.py +1 -0
- moai_adk/core/project/phase_executor.py +3 -1
- moai_adk/core/project/validator.py +3 -2
- moai_adk/core/quality/__init__.py +1 -1
- moai_adk/core/quality/trust_checker.py +1 -1
- moai_adk/core/quality/validators/__init__.py +1 -1
- moai_adk/core/quality/validators/base_validator.py +1 -1
- moai_adk/core/template/__init__.py +1 -1
- moai_adk/core/template/backup.py +12 -3
- moai_adk/core/template/config.py +24 -0
- moai_adk/core/template/languages.py +1 -1
- moai_adk/core/template/merger.py +74 -4
- moai_adk/core/template/processor.py +62 -14
- moai_adk/templates/.claude/agents/alfred/cc-manager.md +765 -191
- moai_adk/templates/.claude/agents/alfred/debug-helper.md +116 -103
- moai_adk/templates/.claude/agents/alfred/doc-syncer.md +130 -116
- moai_adk/templates/.claude/agents/alfred/git-manager.md +186 -174
- moai_adk/templates/.claude/agents/alfred/implementation-planner.md +227 -213
- moai_adk/templates/.claude/agents/alfred/project-manager.md +205 -125
- moai_adk/templates/.claude/agents/alfred/quality-gate.md +224 -209
- moai_adk/templates/.claude/agents/alfred/spec-builder.md +174 -160
- moai_adk/templates/.claude/agents/alfred/tag-agent.md +151 -139
- moai_adk/templates/.claude/agents/alfred/tdd-implementer.md +209 -196
- moai_adk/templates/.claude/agents/alfred/trust-checker.md +247 -233
- moai_adk/templates/.claude/commands/alfred/0-project.md +856 -355
- moai_adk/templates/.claude/commands/alfred/1-plan.md +572 -0
- moai_adk/templates/.claude/commands/alfred/2-run.md +470 -0
- moai_adk/templates/.claude/commands/alfred/3-sync.md +366 -356
- moai_adk/templates/.claude/hooks/alfred/README.md +52 -52
- moai_adk/templates/.claude/hooks/alfred/alfred_hooks.py +44 -48
- moai_adk/templates/.claude/hooks/alfred/core/__init__.py +17 -17
- moai_adk/templates/.claude/hooks/alfred/core/checkpoint.py +59 -59
- moai_adk/templates/.claude/hooks/alfred/core/context.py +19 -19
- moai_adk/templates/.claude/hooks/alfred/core/project.py +52 -52
- moai_adk/templates/.claude/hooks/alfred/handlers/__init__.py +1 -1
- moai_adk/templates/.claude/hooks/alfred/handlers/notification.py +4 -4
- moai_adk/templates/.claude/hooks/alfred/handlers/session.py +30 -51
- moai_adk/templates/.claude/hooks/alfred/handlers/tool.py +16 -17
- moai_adk/templates/.claude/hooks/alfred/handlers/user.py +11 -11
- moai_adk/templates/.claude/output-styles/alfred/agentic-coding.md +308 -307
- moai_adk/templates/.claude/output-styles/alfred/moai-adk-learning.md +297 -296
- moai_adk/templates/.claude/output-styles/alfred/study-with-alfred.md +191 -190
- moai_adk/templates/.claude/skills/moai-alfred-code-reviewer/SKILL.md +112 -0
- moai_adk/templates/.claude/skills/moai-alfred-debugger-pro/SKILL.md +103 -0
- moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/SKILL.md +103 -0
- moai_adk/templates/.claude/skills/moai-alfred-git-workflow/SKILL.md +95 -0
- moai_adk/templates/.claude/skills/moai-alfred-language-detection/SKILL.md +99 -0
- moai_adk/templates/.claude/skills/moai-alfred-performance-optimizer/SKILL.md +105 -0
- moai_adk/templates/.claude/skills/moai-alfred-refactoring-coach/SKILL.md +97 -0
- moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/SKILL.md +97 -0
- moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/SKILL.md +90 -0
- moai_adk/templates/.claude/skills/moai-alfred-trust-validation/SKILL.md +99 -0
- moai_adk/templates/.claude/skills/moai-alfred-tui-survey/SKILL.md +87 -0
- moai_adk/templates/.claude/skills/moai-alfred-tui-survey/examples.md +62 -0
- moai_adk/templates/.claude/skills/moai-claude-code/SKILL.md +94 -0
- moai_adk/templates/.claude/skills/moai-claude-code/examples.md +513 -0
- moai_adk/templates/.claude/skills/moai-claude-code/reference.md +433 -0
- moai_adk/templates/.claude/skills/moai-claude-code/templates/agent-full.md +332 -0
- moai_adk/templates/.claude/skills/moai-claude-code/templates/command-full.md +384 -0
- moai_adk/templates/.claude/skills/moai-claude-code/templates/plugin-full.json +363 -0
- moai_adk/templates/.claude/skills/moai-claude-code/templates/settings-full.json +595 -0
- moai_adk/templates/.claude/skills/moai-claude-code/templates/skill-full.md +496 -0
- moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +99 -0
- moai_adk/templates/.claude/skills/moai-domain-cli-tool/SKILL.md +95 -0
- moai_adk/templates/.claude/skills/moai-domain-data-science/SKILL.md +98 -0
- moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +100 -0
- moai_adk/templates/.claude/skills/moai-domain-devops/SKILL.md +100 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +99 -0
- moai_adk/templates/.claude/skills/moai-domain-ml/SKILL.md +99 -0
- moai_adk/templates/.claude/skills/moai-domain-mobile-app/SKILL.md +93 -0
- moai_adk/templates/.claude/skills/moai-domain-security/SKILL.md +105 -0
- moai_adk/templates/.claude/skills/moai-domain-web-api/SKILL.md +97 -0
- moai_adk/templates/.claude/skills/moai-essentials-debug/SKILL.md +102 -0
- moai_adk/templates/.claude/skills/moai-essentials-perf/SKILL.md +104 -0
- moai_adk/templates/.claude/skills/moai-essentials-refactor/SKILL.md +96 -0
- moai_adk/templates/.claude/skills/moai-essentials-review/SKILL.md +112 -0
- moai_adk/templates/.claude/skills/moai-foundation-ears/SKILL.md +98 -0
- moai_adk/templates/.claude/skills/moai-foundation-git/SKILL.md +90 -0
- moai_adk/templates/.claude/skills/moai-foundation-langs/SKILL.md +94 -0
- moai_adk/templates/.claude/skills/moai-foundation-specs/SKILL.md +93 -0
- moai_adk/templates/.claude/skills/moai-foundation-tags/SKILL.md +86 -0
- moai_adk/templates/.claude/skills/moai-foundation-trust/SKILL.md +86 -0
- moai_adk/templates/.claude/skills/moai-lang-c/SKILL.md +100 -0
- moai_adk/templates/.claude/skills/moai-lang-clojure/SKILL.md +100 -0
- moai_adk/templates/.claude/skills/moai-lang-cpp/SKILL.md +102 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/SKILL.md +100 -0
- moai_adk/templates/.claude/skills/moai-lang-dart/SKILL.md +98 -0
- moai_adk/templates/.claude/skills/moai-lang-elixir/SKILL.md +99 -0
- moai_adk/templates/.claude/skills/moai-lang-go/SKILL.md +100 -0
- moai_adk/templates/.claude/skills/moai-lang-haskell/SKILL.md +100 -0
- moai_adk/templates/.claude/skills/moai-lang-java/SKILL.md +98 -0
- moai_adk/templates/.claude/skills/moai-lang-javascript/SKILL.md +96 -0
- moai_adk/templates/.claude/skills/moai-lang-julia/SKILL.md +98 -0
- moai_adk/templates/.claude/skills/moai-lang-kotlin/SKILL.md +99 -0
- moai_adk/templates/.claude/skills/moai-lang-lua/SKILL.md +98 -0
- moai_adk/templates/.claude/skills/moai-lang-php/SKILL.md +98 -0
- moai_adk/templates/.claude/skills/moai-lang-python/SKILL.md +96 -0
- moai_adk/templates/.claude/skills/moai-lang-r/SKILL.md +99 -0
- moai_adk/templates/.claude/skills/moai-lang-ruby/SKILL.md +99 -0
- moai_adk/templates/.claude/skills/moai-lang-rust/SKILL.md +100 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/SKILL.md +100 -0
- moai_adk/templates/.claude/skills/moai-lang-shell/SKILL.md +100 -0
- moai_adk/templates/.claude/skills/moai-lang-sql/SKILL.md +100 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/SKILL.md +99 -0
- moai_adk/templates/.claude/skills/moai-lang-typescript/SKILL.md +96 -0
- moai_adk/templates/.github/PULL_REQUEST_TEMPLATE.md +44 -43
- moai_adk/templates/.github/workflows/moai-gitflow.yml +36 -35
- moai_adk/templates/.moai/config.json +9 -6
- moai_adk/templates/.moai/memory/development-guide.md +220 -221
- moai_adk/templates/.moai/memory/gitflow-protection-policy.md +85 -85
- moai_adk/templates/.moai/memory/spec-metadata.md +149 -150
- moai_adk/templates/.moai/project/product.md +90 -90
- moai_adk/templates/.moai/project/structure.md +85 -85
- moai_adk/templates/.moai/project/tech.md +117 -117
- moai_adk/templates/CLAUDE.md +354 -573
- moai_adk/templates/__init__.py +1 -1
- moai_adk/utils/__init__.py +1 -1
- moai_adk/utils/banner.py +7 -7
- moai_adk/utils/logger.py +1 -1
- moai_adk-0.4.1.dist-info/METADATA +303 -0
- moai_adk-0.4.1.dist-info/RECORD +152 -0
- moai_adk/templates/.claude/commands/alfred/1-spec.md +0 -532
- moai_adk/templates/.claude/commands/alfred/2-build.md +0 -432
- moai_adk/templates/.moai/hooks/pre-push.sample +0 -88
- moai_adk-0.3.13.dist-info/METADATA +0 -1586
- moai_adk-0.3.13.dist-info/RECORD +0 -90
- {moai_adk-0.3.13.dist-info → moai_adk-0.4.1.dist-info}/WHEEL +0 -0
- {moai_adk-0.3.13.dist-info → moai_adk-0.4.1.dist-info}/entry_points.txt +0 -0
- {moai_adk-0.3.13.dist-info → moai_adk-0.4.1.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
---
|
|
2
|
+
|
|
3
|
+
name: moai-foundation-langs
|
|
4
|
+
description: Auto-detects project language and framework (package.json, pyproject.toml, etc). Use when referencing multi-language conventions.
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Bash
|
|
8
|
+
- Write
|
|
9
|
+
- Edit
|
|
10
|
+
- TodoWrite
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Alfred Language Detection
|
|
14
|
+
|
|
15
|
+
## Skill Metadata
|
|
16
|
+
| Field | Value |
|
|
17
|
+
| ----- | ----- |
|
|
18
|
+
| Allowed tools | Read (read_file), Write (write_file), Edit (edit_file), Bash (terminal), TodoWrite (todo_write) |
|
|
19
|
+
| Auto-load | SessionStart (foundation bootstrap) |
|
|
20
|
+
| Trigger cues | Project language detection, toolchain hints, multi-language repository setup questions. |
|
|
21
|
+
|
|
22
|
+
## What it does
|
|
23
|
+
|
|
24
|
+
Automatically detects project's primary language and framework by scanning configuration files, then recommends appropriate testing tools and linters.
|
|
25
|
+
|
|
26
|
+
## When to use
|
|
27
|
+
|
|
28
|
+
- Activates when the conversation needs to detect project languages or recommend toolchains.
|
|
29
|
+
- "Detect language", "Check project language", "Recommend testing tools"
|
|
30
|
+
- Automatically invoked by `/alfred:0-project`, `/alfred:2-run`
|
|
31
|
+
- Setting up new project
|
|
32
|
+
|
|
33
|
+
## How it works
|
|
34
|
+
|
|
35
|
+
**Configuration File Scanning**:
|
|
36
|
+
- `package.json` → TypeScript/JavaScript (Jest/Vitest, ESLint/Biome)
|
|
37
|
+
- `pyproject.toml` → Python (pytest, ruff, black)
|
|
38
|
+
- `Cargo.toml` → Rust (cargo test, clippy, rustfmt)
|
|
39
|
+
- `go.mod` → Go (go test, golint, gofmt)
|
|
40
|
+
- `Gemfile` → Ruby (RSpec, RuboCop)
|
|
41
|
+
- `pubspec.yaml` → Dart/Flutter (flutter test, dart analyze)
|
|
42
|
+
- `build.gradle` → Java/Kotlin (JUnit, Checkstyle)
|
|
43
|
+
- `Package.swift` → Swift (XCTest, SwiftLint)
|
|
44
|
+
|
|
45
|
+
**Toolchain Recommendation**:
|
|
46
|
+
```json
|
|
47
|
+
{
|
|
48
|
+
"language": "Python",
|
|
49
|
+
"test_framework": "pytest",
|
|
50
|
+
"linter": "ruff",
|
|
51
|
+
"formatter": "black",
|
|
52
|
+
"type_checker": "mypy",
|
|
53
|
+
"package_manager": "uv"
|
|
54
|
+
}
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
**Framework Detection**:
|
|
58
|
+
- **Python**: FastAPI, Django, Flask
|
|
59
|
+
- **TypeScript**: React, Next.js, Vue
|
|
60
|
+
- **Java**: Spring Boot, Quarkus
|
|
61
|
+
|
|
62
|
+
**Supported Languages**: Python, TypeScript, Java, Go, Rust, Ruby, Dart, Swift, Kotlin, PHP, C#, C++, Elixir, Scala, Clojure (20+ languages)
|
|
63
|
+
|
|
64
|
+
## Examples
|
|
65
|
+
```markdown
|
|
66
|
+
- Scan standard documents and report missing sections.
|
|
67
|
+
- Changed regulations are reflected in CLAUDE.md.
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Best Practices
|
|
71
|
+
- When changing standards, the reason for change and supporting documents are recorded.
|
|
72
|
+
- Follow the single source principle and avoid modifying the same item in multiple places.
|
|
73
|
+
|
|
74
|
+
## Inputs
|
|
75
|
+
- Project standard documents (e.g. `CLAUDE.md`, `.moai/config.json`).
|
|
76
|
+
- Latest printouts from relevant sub-agents.
|
|
77
|
+
|
|
78
|
+
## Outputs
|
|
79
|
+
- Templates or policy summaries conforming to the MoAI-ADK standard.
|
|
80
|
+
- Reusable rules/checklists.
|
|
81
|
+
|
|
82
|
+
## Failure Modes
|
|
83
|
+
- When required standard files are missing or have limited access rights.
|
|
84
|
+
- When conflicting policies are detected and coordination is required.
|
|
85
|
+
|
|
86
|
+
## Dependencies
|
|
87
|
+
- There is great synergy when called together with cc-manager.
|
|
88
|
+
|
|
89
|
+
## References
|
|
90
|
+
- JetBrains. "Multi-language project organization." https://www.jetbrains.com/help/idea/project-tool-window.html (accessed 2025-03-29).
|
|
91
|
+
- Stack Overflow. "Multi-language repository patterns." https://stackoverflow.blog/2020/04/20/the-developer's-guide-to-multi-language-repos/ (accessed 2025-03-29).
|
|
92
|
+
|
|
93
|
+
## Changelog
|
|
94
|
+
- 2025-03-29: Foundation skill templates have been enhanced to align with best practice structures.
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
---
|
|
2
|
+
|
|
3
|
+
name: moai-foundation-specs
|
|
4
|
+
description: Validates SPEC YAML frontmatter (7 required fields) and HISTORY section. Use when enforcing SPEC documentation standards.
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Bash
|
|
8
|
+
- Write
|
|
9
|
+
- Edit
|
|
10
|
+
- TodoWrite
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Alfred SPEC Metadata Validation
|
|
14
|
+
|
|
15
|
+
## Skill Metadata
|
|
16
|
+
| Field | Value |
|
|
17
|
+
| ----- | ----- |
|
|
18
|
+
| Allowed tools | Read (read_file), Write (write_file), Edit (edit_file), Bash (terminal), TodoWrite (todo_write) |
|
|
19
|
+
| Auto-load | SessionStart (foundation bootstrap) |
|
|
20
|
+
| Trigger cues | SPEC metadata validation, frontmatter completeness, specification readiness checks. |
|
|
21
|
+
|
|
22
|
+
## What it does
|
|
23
|
+
|
|
24
|
+
Validates SPEC document structure including YAML frontmatter (7 required fields) and HISTORY section compliance.
|
|
25
|
+
|
|
26
|
+
## When to use
|
|
27
|
+
|
|
28
|
+
- Activates when verifying SPEC frontmatter or preparing new specification templates.
|
|
29
|
+
- "SPEC verification", "Metadata check", "SPEC structure check"
|
|
30
|
+
- Automatically invoked by `/alfred:1-plan`
|
|
31
|
+
- Before creating SPEC document
|
|
32
|
+
|
|
33
|
+
## How it works
|
|
34
|
+
|
|
35
|
+
**YAML Frontmatter Validation (7 required fields)**:
|
|
36
|
+
- `id`: SPEC ID (e.g., AUTH-001)
|
|
37
|
+
- `version`: Semantic Version (e.g., 0.0.1)
|
|
38
|
+
- `status`: draft|active|completed|deprecated
|
|
39
|
+
- `created`: YYYY-MM-DD format
|
|
40
|
+
- `updated`: YYYY-MM-DD format
|
|
41
|
+
- `author`: @{GitHub ID} format
|
|
42
|
+
- `priority`: low|medium|high|critical
|
|
43
|
+
|
|
44
|
+
**HISTORY Section Validation**:
|
|
45
|
+
- Checks existence of HISTORY section
|
|
46
|
+
- Verifies version history (INITIAL/ADDED/CHANGED/FIXED tags)
|
|
47
|
+
- Validates author and date consistency
|
|
48
|
+
|
|
49
|
+
**Format Validation**:
|
|
50
|
+
```bash
|
|
51
|
+
# Check required fields
|
|
52
|
+
rg "^(id|version|status|created|updated|author|priority):" .moai/specs/SPEC-*/spec.md
|
|
53
|
+
|
|
54
|
+
# Verify HISTORY section
|
|
55
|
+
rg "^## HISTORY" .moai/specs/SPEC-*/spec.md
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Examples
|
|
59
|
+
```markdown
|
|
60
|
+
- Scan standard documents and report missing sections.
|
|
61
|
+
- Changed regulations are reflected in CLAUDE.md.
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## Inputs
|
|
65
|
+
- Project standard documents (e.g. `CLAUDE.md`, `.moai/config.json`).
|
|
66
|
+
- Latest printouts from relevant sub-agents.
|
|
67
|
+
|
|
68
|
+
## Outputs
|
|
69
|
+
- Templates or policy summaries conforming to the MoAI-ADK standard.
|
|
70
|
+
- Reusable rules/checklists.
|
|
71
|
+
|
|
72
|
+
## Failure Modes
|
|
73
|
+
- When required standard files are missing or have limited access rights.
|
|
74
|
+
- When conflicting policies are detected and coordination is required.
|
|
75
|
+
|
|
76
|
+
## Dependencies
|
|
77
|
+
- There is great synergy when called together with cc-manager.
|
|
78
|
+
|
|
79
|
+
## References
|
|
80
|
+
- INCOSE. "Guide for Writing Requirements." INCOSE-TP-2010-006-02 (accessed 2025-03-29).
|
|
81
|
+
- IEEE. "Software Requirements Specification Standard." IEEE 830-1998.
|
|
82
|
+
|
|
83
|
+
## Changelog
|
|
84
|
+
- 2025-03-29: Foundation skill templates have been enhanced to align with best practice structures.
|
|
85
|
+
|
|
86
|
+
## Works well with
|
|
87
|
+
|
|
88
|
+
- moai-foundation-ears
|
|
89
|
+
- moai-foundation-tags
|
|
90
|
+
|
|
91
|
+
## Best Practices
|
|
92
|
+
- When changing standards, the reason for change and supporting documents are recorded.
|
|
93
|
+
- Follow the single source principle and avoid modifying the same item in multiple places.
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
---
|
|
2
|
+
|
|
3
|
+
name: moai-foundation-tags
|
|
4
|
+
description: Scans @TAG markers directly from code and generates inventory (CODE-FIRST). Use when establishing or auditing TAG conventions.
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Bash
|
|
8
|
+
- Write
|
|
9
|
+
- Edit
|
|
10
|
+
- TodoWrite
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Alfred TAG Scanning
|
|
14
|
+
|
|
15
|
+
## Skill Metadata
|
|
16
|
+
| Field | Value |
|
|
17
|
+
| ----- | ----- |
|
|
18
|
+
| Allowed tools | Read (read_file), Write (write_file), Edit (edit_file), Bash (terminal), TodoWrite (todo_write) |
|
|
19
|
+
| Auto-load | SessionStart (foundation bootstrap) |
|
|
20
|
+
| Trigger cues | TAG scanning, traceability audits, orphan TAG remediation requests. |
|
|
21
|
+
|
|
22
|
+
## What it does
|
|
23
|
+
|
|
24
|
+
Scans all @TAG markers (SPEC/TEST/CODE/DOC) directly from codebase and generates TAG inventory without intermediate caching (CODE-FIRST principle).
|
|
25
|
+
|
|
26
|
+
## When to use
|
|
27
|
+
|
|
28
|
+
- Activates when scanning or auditing TAG chains or locating orphaned tags.
|
|
29
|
+
- "TAG Scan", "TAG List", "TAG Inventory"
|
|
30
|
+
- Automatically invoked by `/alfred:3-sync`
|
|
31
|
+
- “Find orphan TAG”, “Check TAG chain”
|
|
32
|
+
|
|
33
|
+
## How it works
|
|
34
|
+
|
|
35
|
+
**CODE-FIRST Scanning**:
|
|
36
|
+
```bash
|
|
37
|
+
# Direct code scan without intermediate cache
|
|
38
|
+
rg '@(SPEC|TEST|CODE|DOC):' -n .moai/specs/ tests/ src/ docs/
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
**TAG Inventory Generation**:
|
|
42
|
+
- Lists all TAGs with file locations
|
|
43
|
+
- Detects orphaned TAGs (no corresponding SPEC/TEST/CODE)
|
|
44
|
+
- Identifies broken links in TAG chain
|
|
45
|
+
- Reports duplicate IDs
|
|
46
|
+
|
|
47
|
+
**TAG Chain Verification**:
|
|
48
|
+
- @SPEC → @TEST → @CODE → @DOC connection check
|
|
49
|
+
- Ensures traceability across all artifacts
|
|
50
|
+
|
|
51
|
+
## Examples
|
|
52
|
+
```markdown
|
|
53
|
+
- Scan standard documents and report missing sections.
|
|
54
|
+
- Changed regulations are reflected in CLAUDE.md.
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Inputs
|
|
58
|
+
- Project standard documents (e.g. `CLAUDE.md`, `.moai/config.json`).
|
|
59
|
+
- Latest printouts from relevant sub-agents.
|
|
60
|
+
|
|
61
|
+
## Outputs
|
|
62
|
+
- Templates or policy summaries conforming to the MoAI-ADK standard.
|
|
63
|
+
- Reusable rules/checklists.
|
|
64
|
+
|
|
65
|
+
## Failure Modes
|
|
66
|
+
- When required standard files are missing or have limited access rights.
|
|
67
|
+
- When conflicting policies are detected and coordination is required.
|
|
68
|
+
|
|
69
|
+
## Dependencies
|
|
70
|
+
- There is great synergy when called together with cc-manager.
|
|
71
|
+
|
|
72
|
+
## References
|
|
73
|
+
- BurntSushi. "ripgrep User Guide." https://github.com/BurntSushi/ripgrep/blob/master/GUIDE.md (accessed 2025-03-29).
|
|
74
|
+
- ReqView. "Requirements Traceability Matrix Guide." https://www.reqview.com/doc/requirements-traceability-matrix/ (accessed 2025-03-29).
|
|
75
|
+
|
|
76
|
+
## Changelog
|
|
77
|
+
- 2025-03-29: Foundation skill templates have been enhanced to align with best practice structures.
|
|
78
|
+
|
|
79
|
+
## Works well with
|
|
80
|
+
|
|
81
|
+
- moai-foundation-trust
|
|
82
|
+
- moai-foundation-specs
|
|
83
|
+
|
|
84
|
+
## Best Practices
|
|
85
|
+
- When changing standards, the reason for change and supporting documents are recorded.
|
|
86
|
+
- Follow the single source principle and avoid modifying the same item in multiple places.
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
---
|
|
2
|
+
|
|
3
|
+
name: moai-foundation-trust
|
|
4
|
+
description: Validates TRUST 5-principles (Test 85%+, Readable, Unified, Secured, Trackable). Use when aligning with TRUST governance.
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Write
|
|
8
|
+
- Edit
|
|
9
|
+
- Bash
|
|
10
|
+
- TodoWrite
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Foundation: TRUST Validation
|
|
14
|
+
|
|
15
|
+
## Skill Metadata
|
|
16
|
+
| Field | Value |
|
|
17
|
+
| ----- | ----- |
|
|
18
|
+
| Allowed tools | Read (read_file), Write (write_file), Edit (edit_file), Bash (terminal), TodoWrite (todo_write) |
|
|
19
|
+
| Auto-load | SessionStart (foundation bootstrap) |
|
|
20
|
+
| Trigger cues | TRUST compliance checks, release readiness reviews, quality gate enforcement. |
|
|
21
|
+
|
|
22
|
+
## What it does
|
|
23
|
+
|
|
24
|
+
Validates MoAI-ADK's TRUST 5-principles compliance to ensure code quality, testability, security, and traceability.
|
|
25
|
+
|
|
26
|
+
## When to use
|
|
27
|
+
|
|
28
|
+
- Activates when TRUST compliance or release readiness needs to be evaluated.
|
|
29
|
+
- "Check the TRUST principle", "Quality verification", "Check code quality"
|
|
30
|
+
- Automatically invoked by `/alfred:3-sync`
|
|
31
|
+
- Before merging PR or releasing
|
|
32
|
+
|
|
33
|
+
## How it works
|
|
34
|
+
|
|
35
|
+
**T - Test First**:
|
|
36
|
+
- Checks test coverage ≥85% (pytest, vitest, go test, cargo test, etc.)
|
|
37
|
+
- Verifies TDD cycle compliance (RED → GREEN → REFACTOR)
|
|
38
|
+
|
|
39
|
+
**R - Readable**:
|
|
40
|
+
- File ≤300 LOC, Function ≤50 LOC, Parameters ≤5, Complexity ≤10
|
|
41
|
+
|
|
42
|
+
**U - Unified**:
|
|
43
|
+
- SPEC-driven architecture consistency, Clear module boundaries
|
|
44
|
+
|
|
45
|
+
**S - Secured**:
|
|
46
|
+
- Input validation, No hardcoded secrets, Access control
|
|
47
|
+
|
|
48
|
+
**T - Trackable**:
|
|
49
|
+
- TAG chain integrity (@SPEC → @TEST → @CODE → @DOC)
|
|
50
|
+
|
|
51
|
+
## Inputs
|
|
52
|
+
- Project standard documents (e.g. `CLAUDE.md`, `.moai/config.json`).
|
|
53
|
+
- Latest printouts from relevant sub-agents.
|
|
54
|
+
|
|
55
|
+
## Outputs
|
|
56
|
+
- Templates or policy summaries conforming to the MoAI-ADK standard.
|
|
57
|
+
- Reusable rules/checklists.
|
|
58
|
+
|
|
59
|
+
## Failure Modes
|
|
60
|
+
- When required standard files are missing or have limited access rights.
|
|
61
|
+
- When conflicting policies are detected and coordination is required.
|
|
62
|
+
|
|
63
|
+
## Dependencies
|
|
64
|
+
- There is great synergy when called together with cc-manager.
|
|
65
|
+
|
|
66
|
+
## References
|
|
67
|
+
- SonarSource. "Quality Gate: Developer's Guide." https://www.sonarsource.com/company/newsroom/white-papers/quality-gate/ (accessed 2025-03-29).
|
|
68
|
+
- ISO/IEC 25010. "Systems and software quality models." (accessed 2025-03-29).
|
|
69
|
+
|
|
70
|
+
## Changelog
|
|
71
|
+
- 2025-03-29: Foundation skill templates have been enhanced to align with best practice structures.
|
|
72
|
+
|
|
73
|
+
## Works well with
|
|
74
|
+
|
|
75
|
+
- moai-foundation-tags (TAG traceability)
|
|
76
|
+
- moai-foundation-specs (SPEC validation)
|
|
77
|
+
|
|
78
|
+
## Examples
|
|
79
|
+
```markdown
|
|
80
|
+
- Scan standard documents and report missing sections.
|
|
81
|
+
- Changed regulations are reflected in CLAUDE.md.
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
## Best Practices
|
|
85
|
+
- When changing standards, the reason for change and supporting documents are recorded.
|
|
86
|
+
- Follow the single source principle and avoid modifying the same item in multiple places.
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
---
|
|
2
|
+
|
|
3
|
+
name: moai-lang-c
|
|
4
|
+
description: C best practices with Unity test framework, cppcheck, and Make build system. Use when writing or reviewing C code in project workflows.
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Bash
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# C 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 | C code discussions, framework guidance, or file extensions such as .c/.h. |
|
|
18
|
+
| Tier | 3 |
|
|
19
|
+
|
|
20
|
+
## What it does
|
|
21
|
+
|
|
22
|
+
Provides C-specific expertise for TDD development, including Unity test framework, cppcheck static analysis, and Make build system for system programming.
|
|
23
|
+
|
|
24
|
+
## When to use
|
|
25
|
+
|
|
26
|
+
- Engages when the conversation references C work, frameworks, or files like .c/.h.
|
|
27
|
+
- "Writing C tests", "Unity test framework", "Embedded C"
|
|
28
|
+
- Automatically invoked when working with C projects
|
|
29
|
+
- C SPEC implementation (`/alfred:2-run`)
|
|
30
|
+
|
|
31
|
+
## How it works
|
|
32
|
+
|
|
33
|
+
**TDD Framework**:
|
|
34
|
+
- **Unity**: Lightweight C test framework
|
|
35
|
+
- **CMock**: Mocking framework for C
|
|
36
|
+
- **Ceedling**: Build automation for C
|
|
37
|
+
- Test coverage with gcov
|
|
38
|
+
|
|
39
|
+
**Build Tools**:
|
|
40
|
+
- **Make**: Standard build automation
|
|
41
|
+
- **CMake**: Modern build system
|
|
42
|
+
- **GCC/Clang**: C compilers
|
|
43
|
+
|
|
44
|
+
**Code Quality**:
|
|
45
|
+
- **cppcheck**: Static code analysis
|
|
46
|
+
- **Valgrind**: Memory leak detection
|
|
47
|
+
- **splint**: Secure programming lint
|
|
48
|
+
|
|
49
|
+
**C Patterns**:
|
|
50
|
+
- **Opaque pointers**: Information hiding
|
|
51
|
+
- **Function pointers**: Callback mechanisms
|
|
52
|
+
- **Error codes**: Integer return values
|
|
53
|
+
- **Manual memory management**: malloc/free discipline
|
|
54
|
+
|
|
55
|
+
**Best Practices**:
|
|
56
|
+
- File ≤300 LOC, function ≤50 LOC
|
|
57
|
+
- Always check malloc return values
|
|
58
|
+
- Free every malloc
|
|
59
|
+
- Avoid buffer overflows (use strncpy, snprintf)
|
|
60
|
+
- Use const for read-only parameters
|
|
61
|
+
- Initialize all variables
|
|
62
|
+
|
|
63
|
+
## Examples
|
|
64
|
+
```bash
|
|
65
|
+
make test && cppcheck 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
|
+
- ISO. "ISO/IEC 9899:2018 Programming Languages — C." (accessed 2025-03-29).
|
|
87
|
+
- Cppcheck. "Cppcheck Manual." http://cppcheck.sourceforge.net/manual.pdf (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 (C-specific review)
|
|
96
|
+
- alfred-debugger-pro (C debugging)
|
|
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.
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
---
|
|
2
|
+
|
|
3
|
+
name: moai-lang-clojure
|
|
4
|
+
description: Clojure best practices with clojure.test, Leiningen, and immutable data structures. Use when writing or reviewing Clojure code in project workflows.
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Bash
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Clojure 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 | Clojure code discussions, framework guidance, or file extensions such as .clj/.cljc. |
|
|
18
|
+
| Tier | 3 |
|
|
19
|
+
|
|
20
|
+
## What it does
|
|
21
|
+
|
|
22
|
+
Provides Clojure-specific expertise for TDD development, including clojure.test framework, Leiningen build tool, and immutable data structures with functional programming.
|
|
23
|
+
|
|
24
|
+
## When to use
|
|
25
|
+
|
|
26
|
+
- Engages when the conversation references Clojure work, frameworks, or files like .clj/.cljc.
|
|
27
|
+
- "Writing Clojure tests", "How to use clojure.test", "Immutable data structures"
|
|
28
|
+
- Automatically invoked when working with Clojure projects
|
|
29
|
+
- Clojure SPEC implementation (`/alfred:2-run`)
|
|
30
|
+
|
|
31
|
+
## How it works
|
|
32
|
+
|
|
33
|
+
**TDD Framework**:
|
|
34
|
+
- **clojure.test**: Built-in testing library
|
|
35
|
+
- **midje**: BDD-style testing
|
|
36
|
+
- **test.check**: Property-based testing
|
|
37
|
+
- Test coverage with cloverage
|
|
38
|
+
|
|
39
|
+
**Build Tools**:
|
|
40
|
+
- **Leiningen**: Project automation, dependency management
|
|
41
|
+
- **deps.edn**: Official dependency tool
|
|
42
|
+
- **Boot**: Alternative build tool
|
|
43
|
+
|
|
44
|
+
**Code Quality**:
|
|
45
|
+
- **clj-kondo**: Linter for Clojure
|
|
46
|
+
- **cljfmt**: Code formatting
|
|
47
|
+
- **eastwood**: Additional linting
|
|
48
|
+
|
|
49
|
+
**Clojure Patterns**:
|
|
50
|
+
- **Immutable data structures**: Persistent collections
|
|
51
|
+
- **Pure functions**: Functional core, imperative shell
|
|
52
|
+
- **Threading macros**: -> and ->> for readability
|
|
53
|
+
- **Lazy sequences**: Infinite data processing
|
|
54
|
+
- **Transducers**: Composable transformations
|
|
55
|
+
|
|
56
|
+
**Best Practices**:
|
|
57
|
+
- File ≤300 LOC, function ≤50 LOC
|
|
58
|
+
- Prefer let bindings over def
|
|
59
|
+
- Use namespaces for organization
|
|
60
|
+
- Destructuring for data access
|
|
61
|
+
- Avoid mutable state
|
|
62
|
+
|
|
63
|
+
## Examples
|
|
64
|
+
```bash
|
|
65
|
+
lein test && clj-kondo --lint 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
|
+
- Clojure.org. "Clojure Documentation." https://clojure.org/guides/getting_started (accessed 2025-03-29).
|
|
87
|
+
- clj-kondo. "User Guide." https://github.com/clj-kondo/clj-kondo/blob/master/doc/usage.md (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 (Clojure-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.
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
---
|
|
2
|
+
|
|
3
|
+
name: moai-lang-cpp
|
|
4
|
+
description: C++ best practices with Google Test, clang-format, and modern C++ (C++17/20). Use when writing or reviewing C++ code in project workflows.
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Bash
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# C++ 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 | C++ code discussions, framework guidance, or file extensions such as .cpp/.hpp. |
|
|
18
|
+
| Tier | 3 |
|
|
19
|
+
|
|
20
|
+
## What it does
|
|
21
|
+
|
|
22
|
+
Provides C++-specific expertise for TDD development, including Google Test framework, clang-format formatting, and modern C++ (C++17/20) features.
|
|
23
|
+
|
|
24
|
+
## When to use
|
|
25
|
+
|
|
26
|
+
- Engages when the conversation references C++ work, frameworks, or files like .cpp/.hpp.
|
|
27
|
+
- "Writing C++ tests", "How to use Google Test", "Modern C++"
|
|
28
|
+
- Automatically invoked when working with C++ projects
|
|
29
|
+
- C++ SPEC implementation (`/alfred:2-run`)
|
|
30
|
+
|
|
31
|
+
## How it works
|
|
32
|
+
|
|
33
|
+
**TDD Framework**:
|
|
34
|
+
- **Google Test (gtest)**: Unit testing framework
|
|
35
|
+
- **Google Mock (gmock)**: Mocking framework
|
|
36
|
+
- **Catch2**: Alternative testing framework
|
|
37
|
+
- Test coverage with gcov/lcov
|
|
38
|
+
|
|
39
|
+
**Build Tools**:
|
|
40
|
+
- **CMake**: Cross-platform build system
|
|
41
|
+
- **Make**: Traditional build tool
|
|
42
|
+
- **Conan/vcpkg**: Package managers
|
|
43
|
+
|
|
44
|
+
**Code Quality**:
|
|
45
|
+
- **clang-format**: Code formatting
|
|
46
|
+
- **clang-tidy**: Static analysis
|
|
47
|
+
- **cppcheck**: Additional static analysis
|
|
48
|
+
|
|
49
|
+
**Modern C++ Features**:
|
|
50
|
+
- **Smart pointers**: unique_ptr, shared_ptr, weak_ptr
|
|
51
|
+
- **Move semantics**: std::move, rvalue references
|
|
52
|
+
- **Lambda expressions**: Inline functions
|
|
53
|
+
- **auto keyword**: Type inference
|
|
54
|
+
- **constexpr**: Compile-time evaluation
|
|
55
|
+
- **std::optional**: Nullable types (C++17)
|
|
56
|
+
- **Concepts**: Type constraints (C++20)
|
|
57
|
+
|
|
58
|
+
**Best Practices**:
|
|
59
|
+
- File ≤300 LOC, function ≤50 LOC
|
|
60
|
+
- RAII (Resource Acquisition Is Initialization)
|
|
61
|
+
- Rule of Five (destructor, copy/move constructors/assignments)
|
|
62
|
+
- Prefer stack allocation over heap
|
|
63
|
+
- Const correctness
|
|
64
|
+
|
|
65
|
+
## Examples
|
|
66
|
+
```bash
|
|
67
|
+
cmake --build build --target test && clang-tidy src/*.cpp
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Inputs
|
|
71
|
+
- Language-specific source directories (e.g. `src/`, `app/`).
|
|
72
|
+
- Language-specific build/test configuration files (e.g. `package.json`, `pyproject.toml`, `go.mod`).
|
|
73
|
+
- Relevant test suites and sample data.
|
|
74
|
+
|
|
75
|
+
## Outputs
|
|
76
|
+
- Test/lint execution plan tailored to the selected language.
|
|
77
|
+
- List of key language idioms and review checkpoints.
|
|
78
|
+
|
|
79
|
+
## Failure Modes
|
|
80
|
+
- When the language runtime or package manager is not installed.
|
|
81
|
+
- When the main language cannot be determined in a multilingual project.
|
|
82
|
+
|
|
83
|
+
## Dependencies
|
|
84
|
+
- Access to the project file is required using the Read/Grep tool.
|
|
85
|
+
- When used with `Skill("moai-foundation-langs")`, it is easy to share cross-language conventions.
|
|
86
|
+
|
|
87
|
+
## References
|
|
88
|
+
- ISO. "ISO/IEC 14882:2020(E) Programming Language C++." (accessed 2025-03-29).
|
|
89
|
+
- LLVM Project. "clang-tidy Documentation." https://clang.llvm.org/extra/clang-tidy/ (accessed 2025-03-29).
|
|
90
|
+
|
|
91
|
+
## Changelog
|
|
92
|
+
- 2025-03-29: Input/output/failure response/reference information for each language has been specified.
|
|
93
|
+
|
|
94
|
+
## Works well with
|
|
95
|
+
|
|
96
|
+
- alfred-trust-validation (coverage verification)
|
|
97
|
+
- alfred-code-reviewer (C++-specific review)
|
|
98
|
+
- alfred-performance-optimizer (C++ profiling)
|
|
99
|
+
|
|
100
|
+
## Best Practices
|
|
101
|
+
- Enable automatic validation by matching your linter with the language's official style guide.
|
|
102
|
+
- Fix test/build pipelines with reproducible commands in CI.
|