moai-adk 0.4.5__py3-none-any.whl → 0.4.7__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/core/project/initializer.py +12 -5
- moai_adk/templates/.claude/agents/alfred/skill-factory.md +829 -0
- moai_adk/templates/.claude/skills/moai-alfred-code-reviewer/SKILL.md +78 -77
- moai_adk/templates/.claude/skills/moai-alfred-code-reviewer/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-alfred-code-reviewer/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-alfred-debugger-pro/SKILL.md +87 -77
- moai_adk/templates/.claude/skills/moai-alfred-debugger-pro/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-alfred-debugger-pro/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/SKILL.md +76 -66
- moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-alfred-git-workflow/SKILL.md +86 -59
- moai_adk/templates/.claude/skills/moai-alfred-git-workflow/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-alfred-git-workflow/reference.md +29 -0
- moai_adk/templates/.claude/skills/moai-alfred-language-detection/SKILL.md +87 -73
- moai_adk/templates/.claude/skills/moai-alfred-language-detection/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-alfred-language-detection/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-alfred-performance-optimizer/SKILL.md +87 -79
- moai_adk/templates/.claude/skills/moai-alfred-performance-optimizer/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-alfred-performance-optimizer/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-alfred-refactoring-coach/SKILL.md +87 -71
- moai_adk/templates/.claude/skills/moai-alfred-refactoring-coach/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-alfred-refactoring-coach/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/SKILL.md +78 -62
- moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/SKILL.md +78 -55
- moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-alfred-trust-validation/SKILL.md +78 -64
- moai_adk/templates/.claude/skills/moai-alfred-trust-validation/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-alfred-trust-validation/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-alfred-tui-survey/SKILL.md +604 -56
- moai_adk/templates/.claude/skills/moai-alfred-tui-survey/examples.md +974 -44
- moai_adk/templates/.claude/skills/moai-alfred-tui-survey/reference.md +801 -0
- moai_adk/templates/.claude/skills/moai-claude-code/SKILL.md +88 -61
- moai_adk/templates/.claude/skills/moai-claude-code/examples.md +16 -500
- moai_adk/templates/.claude/skills/moai-claude-code/reference.md +15 -420
- moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +234 -43
- moai_adk/templates/.claude/skills/moai-domain-backend/examples.md +1633 -0
- moai_adk/templates/.claude/skills/moai-domain-backend/reference.md +660 -0
- moai_adk/templates/.claude/skills/moai-domain-cli-tool/SKILL.md +97 -69
- moai_adk/templates/.claude/skills/moai-domain-cli-tool/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-cli-tool/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-domain-data-science/SKILL.md +97 -72
- moai_adk/templates/.claude/skills/moai-domain-data-science/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-data-science/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +97 -74
- moai_adk/templates/.claude/skills/moai-domain-database/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-database/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-domain-devops/SKILL.md +98 -74
- moai_adk/templates/.claude/skills/moai-domain-devops/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-devops/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +98 -73
- moai_adk/templates/.claude/skills/moai-domain-frontend/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-domain-ml/SKILL.md +97 -73
- moai_adk/templates/.claude/skills/moai-domain-ml/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-ml/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-domain-mobile-app/SKILL.md +97 -67
- moai_adk/templates/.claude/skills/moai-domain-mobile-app/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-mobile-app/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-domain-security/SKILL.md +97 -79
- moai_adk/templates/.claude/skills/moai-domain-security/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-security/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-domain-web-api/SKILL.md +97 -71
- moai_adk/templates/.claude/skills/moai-domain-web-api/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-web-api/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-essentials-debug/SKILL.md +656 -60
- moai_adk/templates/.claude/skills/moai-essentials-debug/examples.md +1107 -0
- moai_adk/templates/.claude/skills/moai-essentials-debug/reference.md +1533 -0
- moai_adk/templates/.claude/skills/moai-essentials-perf/SKILL.md +87 -78
- moai_adk/templates/.claude/skills/moai-essentials-perf/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-essentials-perf/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-essentials-refactor/SKILL.md +87 -70
- moai_adk/templates/.claude/skills/moai-essentials-refactor/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-essentials-refactor/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-essentials-review/SKILL.md +87 -86
- moai_adk/templates/.claude/skills/moai-essentials-review/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-essentials-review/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-foundation-ears/SKILL.md +77 -62
- moai_adk/templates/.claude/skills/moai-foundation-ears/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-foundation-ears/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-foundation-git/SKILL.md +88 -56
- moai_adk/templates/.claude/skills/moai-foundation-git/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-foundation-git/reference.md +29 -0
- moai_adk/templates/.claude/skills/moai-foundation-langs/SKILL.md +90 -71
- moai_adk/templates/.claude/skills/moai-foundation-langs/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-foundation-langs/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-foundation-specs/SKILL.md +78 -58
- moai_adk/templates/.claude/skills/moai-foundation-specs/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-foundation-specs/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-foundation-tags/SKILL.md +78 -51
- moai_adk/templates/.claude/skills/moai-foundation-tags/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-foundation-tags/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-foundation-trust/SKILL.md +253 -32
- moai_adk/templates/.claude/skills/moai-foundation-trust/examples.md +0 -0
- moai_adk/templates/.claude/skills/moai-foundation-trust/reference.md +1099 -0
- moai_adk/templates/.claude/skills/moai-lang-c/SKILL.md +98 -74
- moai_adk/templates/.claude/skills/moai-lang-c/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-c/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-clojure/SKILL.md +97 -74
- moai_adk/templates/.claude/skills/moai-lang-clojure/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-clojure/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-cpp/SKILL.md +98 -76
- moai_adk/templates/.claude/skills/moai-lang-cpp/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-cpp/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/SKILL.md +97 -74
- moai_adk/templates/.claude/skills/moai-lang-csharp/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-dart/SKILL.md +86 -61
- moai_adk/templates/.claude/skills/moai-lang-dart/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-dart/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-elixir/SKILL.md +98 -73
- moai_adk/templates/.claude/skills/moai-lang-elixir/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-elixir/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-go/SKILL.md +98 -74
- moai_adk/templates/.claude/skills/moai-lang-go/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-go/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-haskell/SKILL.md +98 -74
- moai_adk/templates/.claude/skills/moai-lang-haskell/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-haskell/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-java/SKILL.md +87 -61
- moai_adk/templates/.claude/skills/moai-lang-java/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-java/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-javascript/SKILL.md +88 -59
- moai_adk/templates/.claude/skills/moai-lang-javascript/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-javascript/reference.md +32 -0
- moai_adk/templates/.claude/skills/moai-lang-julia/SKILL.md +86 -61
- moai_adk/templates/.claude/skills/moai-lang-julia/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-julia/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-kotlin/SKILL.md +98 -73
- moai_adk/templates/.claude/skills/moai-lang-kotlin/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-kotlin/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-lua/SKILL.md +86 -61
- moai_adk/templates/.claude/skills/moai-lang-lua/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-lua/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-php/SKILL.md +86 -61
- moai_adk/templates/.claude/skills/moai-lang-php/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-php/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-python/SKILL.md +388 -53
- moai_adk/templates/.claude/skills/moai-lang-python/examples.md +624 -0
- moai_adk/templates/.claude/skills/moai-lang-python/reference.md +316 -0
- moai_adk/templates/.claude/skills/moai-lang-r/SKILL.md +97 -73
- moai_adk/templates/.claude/skills/moai-lang-r/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-r/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-ruby/SKILL.md +98 -73
- moai_adk/templates/.claude/skills/moai-lang-ruby/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-ruby/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-rust/SKILL.md +98 -74
- moai_adk/templates/.claude/skills/moai-lang-rust/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-rust/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/SKILL.md +97 -74
- moai_adk/templates/.claude/skills/moai-lang-scala/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-shell/SKILL.md +97 -74
- moai_adk/templates/.claude/skills/moai-lang-shell/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-shell/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-sql/SKILL.md +98 -74
- moai_adk/templates/.claude/skills/moai-lang-sql/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-sql/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/SKILL.md +97 -73
- moai_adk/templates/.claude/skills/moai-lang-swift/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-typescript/SKILL.md +90 -59
- moai_adk/templates/.claude/skills/moai-lang-typescript/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-typescript/reference.md +34 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/CHECKLIST.md +482 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/EXAMPLES.md +52 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/INTERACTIVE-DISCOVERY.md +524 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/METADATA.md +477 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/SKILL-UPDATE-ADVISOR.md +577 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/SKILL.md +560 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/STRUCTURE.md +583 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/WEB-RESEARCH.md +526 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/reference.md +69 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/scripts/generate-structure.sh +328 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/scripts/validate-skill.sh +312 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/templates/SKILL_TEMPLATE.md +245 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/templates/examples-template.md +285 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/templates/reference-template.md +278 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/templates/scripts-template.sh +303 -0
- moai_adk/templates/CLAUDE.md +43 -11
- moai_adk-0.4.7.dist-info/METADATA +1162 -0
- moai_adk-0.4.7.dist-info/RECORD +275 -0
- moai_adk-0.4.5.dist-info/METADATA +0 -369
- moai_adk-0.4.5.dist-info/RECORD +0 -152
- {moai_adk-0.4.5.dist-info → moai_adk-0.4.7.dist-info}/WHEEL +0 -0
- {moai_adk-0.4.5.dist-info → moai_adk-0.4.7.dist-info}/entry_points.txt +0 -0
- {moai_adk-0.4.5.dist-info → moai_adk-0.4.7.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
# Reference: [Skill Domain]
|
|
2
|
+
|
|
3
|
+
Complete reference documentation for [Skill Name].
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## API Reference
|
|
8
|
+
|
|
9
|
+
### Function/Command 1: `function_name(param1, param2)`
|
|
10
|
+
|
|
11
|
+
[Description of what this function does]
|
|
12
|
+
|
|
13
|
+
**Parameters**:
|
|
14
|
+
- `param1` (type): Description of parameter 1
|
|
15
|
+
- `param2` (type): Description of parameter 2
|
|
16
|
+
|
|
17
|
+
**Returns**:
|
|
18
|
+
- Type: [Return type]
|
|
19
|
+
- Description: [What is returned]
|
|
20
|
+
|
|
21
|
+
**Example**:
|
|
22
|
+
```python
|
|
23
|
+
result = function_name("value1", "value2")
|
|
24
|
+
print(result)
|
|
25
|
+
# Output: [example output]
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
**Raises**:
|
|
29
|
+
- `ErrorType`: When this error occurs
|
|
30
|
+
- `AnotherError`: When that error occurs
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
### Function/Command 2: `another_function(arg1)`
|
|
35
|
+
|
|
36
|
+
[Description]
|
|
37
|
+
|
|
38
|
+
**Parameters**:
|
|
39
|
+
- `arg1`: Description
|
|
40
|
+
|
|
41
|
+
**Returns**: Description
|
|
42
|
+
|
|
43
|
+
**Example**:
|
|
44
|
+
```
|
|
45
|
+
code example
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## Configuration
|
|
51
|
+
|
|
52
|
+
### Configuration File Format
|
|
53
|
+
|
|
54
|
+
```yaml
|
|
55
|
+
# Example configuration
|
|
56
|
+
key1: value1
|
|
57
|
+
section:
|
|
58
|
+
nested_key: nested_value
|
|
59
|
+
list:
|
|
60
|
+
- item1
|
|
61
|
+
- item2
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
### Available Options
|
|
65
|
+
|
|
66
|
+
| Option | Type | Default | Description |
|
|
67
|
+
|--------|------|---------|-------------|
|
|
68
|
+
| `option1` | string | "default" | Description of option 1 |
|
|
69
|
+
| `option2` | number | 10 | Description of option 2 |
|
|
70
|
+
| `option3` | boolean | true | Description of option 3 |
|
|
71
|
+
|
|
72
|
+
### Configuration Examples
|
|
73
|
+
|
|
74
|
+
**Minimal Configuration**:
|
|
75
|
+
```yaml
|
|
76
|
+
required_option: value
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
**Production Configuration**:
|
|
80
|
+
```yaml
|
|
81
|
+
option1: production_value
|
|
82
|
+
option2: 100
|
|
83
|
+
option3: false
|
|
84
|
+
section:
|
|
85
|
+
nested_value: production_specific
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
## Data Models
|
|
91
|
+
|
|
92
|
+
### Model 1: [Model Name]
|
|
93
|
+
|
|
94
|
+
```
|
|
95
|
+
Class/Type definition here
|
|
96
|
+
Field 1: type - description
|
|
97
|
+
Field 2: type - description
|
|
98
|
+
Field 3: type - description
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
**Example**:
|
|
102
|
+
```json
|
|
103
|
+
{
|
|
104
|
+
"field1": "value",
|
|
105
|
+
"field2": 123,
|
|
106
|
+
"field3": true
|
|
107
|
+
}
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
### Model 2: [Model Name]
|
|
111
|
+
|
|
112
|
+
[Similar structure]
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
## Edge Cases & Limitations
|
|
117
|
+
|
|
118
|
+
### Known Limitations
|
|
119
|
+
|
|
120
|
+
1. **Limitation 1**
|
|
121
|
+
- Description
|
|
122
|
+
- Impact
|
|
123
|
+
- Workaround (if available)
|
|
124
|
+
|
|
125
|
+
2. **Limitation 2**
|
|
126
|
+
- Description
|
|
127
|
+
- Impact
|
|
128
|
+
- Workaround
|
|
129
|
+
|
|
130
|
+
### Boundary Conditions
|
|
131
|
+
|
|
132
|
+
| Condition | Behavior | Handling |
|
|
133
|
+
|-----------|----------|----------|
|
|
134
|
+
| Empty input | Returns default | Validate before calling |
|
|
135
|
+
| Maximum size exceeded | Throws error | Check size limits first |
|
|
136
|
+
| Timeout | Operation fails | Set timeout threshold |
|
|
137
|
+
|
|
138
|
+
### Workarounds
|
|
139
|
+
|
|
140
|
+
**Workaround 1**: [For limitation 1]
|
|
141
|
+
```
|
|
142
|
+
Implementation workaround code
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
**Workaround 2**: [For limitation 2]
|
|
146
|
+
```
|
|
147
|
+
Implementation workaround code
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
---
|
|
151
|
+
|
|
152
|
+
## Performance Considerations
|
|
153
|
+
|
|
154
|
+
### Time Complexity
|
|
155
|
+
|
|
156
|
+
- Operation 1: O(n) — Description
|
|
157
|
+
- Operation 2: O(n log n) — Description
|
|
158
|
+
- Operation 3: O(1) — Description
|
|
159
|
+
|
|
160
|
+
### Space Complexity
|
|
161
|
+
|
|
162
|
+
- Operation 1: O(n) — Description
|
|
163
|
+
- Operation 2: O(1) — Description
|
|
164
|
+
|
|
165
|
+
### Optimization Tips
|
|
166
|
+
|
|
167
|
+
1. **Tip 1**: How to optimize performance in scenario 1
|
|
168
|
+
2. **Tip 2**: How to optimize performance in scenario 2
|
|
169
|
+
3. **Tip 3**: Caching strategy or batching approach
|
|
170
|
+
|
|
171
|
+
### Benchmarks (if applicable)
|
|
172
|
+
|
|
173
|
+
| Operation | Small (1K) | Medium (1M) | Large (1G) |
|
|
174
|
+
|-----------|-----------|-----------|-----------|
|
|
175
|
+
| Read | 10ms | 100ms | 1s |
|
|
176
|
+
| Write | 20ms | 200ms | 2s |
|
|
177
|
+
| Process | 50ms | 500ms | 5s |
|
|
178
|
+
|
|
179
|
+
---
|
|
180
|
+
|
|
181
|
+
## Error Handling
|
|
182
|
+
|
|
183
|
+
### Common Errors
|
|
184
|
+
|
|
185
|
+
**Error 1: [Error Name]**
|
|
186
|
+
- Cause: [What causes this error]
|
|
187
|
+
- Solution: [How to fix it]
|
|
188
|
+
- Example:
|
|
189
|
+
```
|
|
190
|
+
Error message example
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
**Error 2: [Error Name]**
|
|
194
|
+
- Cause: [What causes this error]
|
|
195
|
+
- Solution: [How to fix it]
|
|
196
|
+
|
|
197
|
+
### Error Codes
|
|
198
|
+
|
|
199
|
+
| Code | Meaning | Recovery |
|
|
200
|
+
|------|---------|----------|
|
|
201
|
+
| 0 | Success | Continue |
|
|
202
|
+
| 1 | General error | Check logs |
|
|
203
|
+
| 2 | Invalid input | Validate input |
|
|
204
|
+
| 3 | Resource not found | Check resource exists |
|
|
205
|
+
|
|
206
|
+
---
|
|
207
|
+
|
|
208
|
+
## Compatibility
|
|
209
|
+
|
|
210
|
+
### Supported Versions
|
|
211
|
+
|
|
212
|
+
- Framework/Language version X.Y+
|
|
213
|
+
- Dependency 1 version A.B+
|
|
214
|
+
- Dependency 2 version C.D+
|
|
215
|
+
|
|
216
|
+
### Known Incompatibilities
|
|
217
|
+
|
|
218
|
+
- Version X.Y is not supported due to [reason]
|
|
219
|
+
- Older frameworks may have [limitation]
|
|
220
|
+
|
|
221
|
+
---
|
|
222
|
+
|
|
223
|
+
## Security Considerations
|
|
224
|
+
|
|
225
|
+
### Input Validation
|
|
226
|
+
|
|
227
|
+
- All user input must be [validated/sanitized]
|
|
228
|
+
- Maximum length limits: [specify limits]
|
|
229
|
+
- Allowed characters: [specify]
|
|
230
|
+
|
|
231
|
+
### Secrets Management
|
|
232
|
+
|
|
233
|
+
- Never hardcode secrets
|
|
234
|
+
- Use environment variables
|
|
235
|
+
- Validate API keys before use
|
|
236
|
+
|
|
237
|
+
### Common Vulnerabilities to Avoid
|
|
238
|
+
|
|
239
|
+
1. [Vulnerability 1] — How to prevent it
|
|
240
|
+
2. [Vulnerability 2] — How to prevent it
|
|
241
|
+
|
|
242
|
+
---
|
|
243
|
+
|
|
244
|
+
## Glossary
|
|
245
|
+
|
|
246
|
+
- **Term 1**: Definition with context
|
|
247
|
+
- **Term 2**: Definition with context
|
|
248
|
+
- **Term 3**: Definition with context
|
|
249
|
+
- **Acronym 1**: What it stands for and means
|
|
250
|
+
- **Acronym 2**: What it stands for and means
|
|
251
|
+
|
|
252
|
+
---
|
|
253
|
+
|
|
254
|
+
## Related Resources
|
|
255
|
+
|
|
256
|
+
- [SKILL.md](SKILL.md) — Main framework and concepts
|
|
257
|
+
- [examples.md](examples.md) — Real-world usage examples
|
|
258
|
+
- [External resource](https://example.com) — External documentation
|
|
259
|
+
|
|
260
|
+
---
|
|
261
|
+
|
|
262
|
+
## Version & History
|
|
263
|
+
|
|
264
|
+
**Current Version**: 0.1.0
|
|
265
|
+
**Last Updated**: 2025-10-22
|
|
266
|
+
|
|
267
|
+
### Changelog
|
|
268
|
+
|
|
269
|
+
#### v0.1.0 (2025-10-22)
|
|
270
|
+
- Initial reference documentation
|
|
271
|
+
- API documentation added
|
|
272
|
+
- Configuration options documented
|
|
273
|
+
|
|
274
|
+
---
|
|
275
|
+
|
|
276
|
+
**Status**: Active
|
|
277
|
+
**Maintainer**: [Your Name]
|
|
278
|
+
**Framework**: MoAI-ADK + Claude Code Skills
|
|
@@ -0,0 +1,303 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
#
|
|
3
|
+
# Script Template: [Script Purpose]
|
|
4
|
+
# Description: [What this script does in one sentence]
|
|
5
|
+
# Usage: ./script-name.sh [ARGS]
|
|
6
|
+
#
|
|
7
|
+
# This is a template for creating production-ready Bash scripts
|
|
8
|
+
# with proper error handling, validation, and logging.
|
|
9
|
+
#
|
|
10
|
+
|
|
11
|
+
set -euo pipefail
|
|
12
|
+
|
|
13
|
+
# ============================================================================
|
|
14
|
+
# CONFIGURATION
|
|
15
|
+
# ============================================================================
|
|
16
|
+
|
|
17
|
+
# Script metadata
|
|
18
|
+
SCRIPT_NAME="$(basename "$0")"
|
|
19
|
+
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
20
|
+
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
|
|
21
|
+
|
|
22
|
+
# Color codes for output
|
|
23
|
+
readonly RED='\033[0;31m'
|
|
24
|
+
readonly GREEN='\033[0;32m'
|
|
25
|
+
readonly YELLOW='\033[1;33m'
|
|
26
|
+
readonly BLUE='\033[0;34m'
|
|
27
|
+
readonly NC='\033[0m' # No Color
|
|
28
|
+
|
|
29
|
+
# Configuration variables
|
|
30
|
+
readonly LOG_LEVEL="${LOG_LEVEL:-INFO}" # DEBUG, INFO, WARN, ERROR
|
|
31
|
+
readonly MAX_RETRIES="${MAX_RETRIES:-3}"
|
|
32
|
+
readonly RETRY_DELAY="${RETRY_DELAY:-2}"
|
|
33
|
+
|
|
34
|
+
# ============================================================================
|
|
35
|
+
# LOGGING FUNCTIONS
|
|
36
|
+
# ============================================================================
|
|
37
|
+
|
|
38
|
+
log_debug() {
|
|
39
|
+
[[ "$LOG_LEVEL" == "DEBUG" ]] && echo -e "${BLUE}[DEBUG]${NC} $*" >&2
|
|
40
|
+
return 0
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
log_info() {
|
|
44
|
+
echo -e "${GREEN}[INFO]${NC} $*"
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
log_warn() {
|
|
48
|
+
echo -e "${YELLOW}[WARN]${NC} $*" >&2
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
log_error() {
|
|
52
|
+
echo -e "${RED}[ERROR]${NC} $*" >&2
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
log_success() {
|
|
56
|
+
echo -e "${GREEN}✓${NC} $*"
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
# ============================================================================
|
|
60
|
+
# ERROR HANDLING
|
|
61
|
+
# ============================================================================
|
|
62
|
+
|
|
63
|
+
# Trap errors and clean up
|
|
64
|
+
trap 'on_error $? $LINENO' ERR
|
|
65
|
+
|
|
66
|
+
on_error() {
|
|
67
|
+
local exit_code=$1
|
|
68
|
+
local line_number=$2
|
|
69
|
+
log_error "Script failed with exit code $exit_code on line $line_number"
|
|
70
|
+
cleanup
|
|
71
|
+
exit "$exit_code"
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
# Trap signals for graceful shutdown
|
|
75
|
+
trap 'on_interrupt' INT TERM
|
|
76
|
+
|
|
77
|
+
on_interrupt() {
|
|
78
|
+
log_warn "Script interrupted"
|
|
79
|
+
cleanup
|
|
80
|
+
exit 130
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
cleanup() {
|
|
84
|
+
log_debug "Running cleanup..."
|
|
85
|
+
# Add cleanup operations here (e.g., remove temp files, close connections)
|
|
86
|
+
# Example:
|
|
87
|
+
# [[ -n "${TEMP_FILE:-}" ]] && rm -f "$TEMP_FILE"
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
# ============================================================================
|
|
91
|
+
# VALIDATION FUNCTIONS
|
|
92
|
+
# ============================================================================
|
|
93
|
+
|
|
94
|
+
validate_arg() {
|
|
95
|
+
local arg_name=$1
|
|
96
|
+
local arg_value=$2
|
|
97
|
+
|
|
98
|
+
if [[ -z "$arg_value" ]]; then
|
|
99
|
+
log_error "Argument '$arg_name' is required but was not provided"
|
|
100
|
+
print_usage
|
|
101
|
+
exit 1
|
|
102
|
+
fi
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
validate_file() {
|
|
106
|
+
local file_path=$1
|
|
107
|
+
|
|
108
|
+
if [[ ! -f "$file_path" ]]; then
|
|
109
|
+
log_error "File not found: $file_path"
|
|
110
|
+
return 1
|
|
111
|
+
fi
|
|
112
|
+
|
|
113
|
+
if [[ ! -r "$file_path" ]]; then
|
|
114
|
+
log_error "File is not readable: $file_path"
|
|
115
|
+
return 1
|
|
116
|
+
fi
|
|
117
|
+
|
|
118
|
+
return 0
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
validate_directory() {
|
|
122
|
+
local dir_path=$1
|
|
123
|
+
|
|
124
|
+
if [[ ! -d "$dir_path" ]]; then
|
|
125
|
+
log_error "Directory not found: $dir_path"
|
|
126
|
+
return 1
|
|
127
|
+
fi
|
|
128
|
+
|
|
129
|
+
if [[ ! -w "$dir_path" ]]; then
|
|
130
|
+
log_error "Directory is not writable: $dir_path"
|
|
131
|
+
return 1
|
|
132
|
+
fi
|
|
133
|
+
|
|
134
|
+
return 0
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
validate_command() {
|
|
138
|
+
local cmd=$1
|
|
139
|
+
|
|
140
|
+
if ! command -v "$cmd" &> /dev/null; then
|
|
141
|
+
log_error "Required command not found: $cmd"
|
|
142
|
+
return 1
|
|
143
|
+
fi
|
|
144
|
+
|
|
145
|
+
return 0
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
# ============================================================================
|
|
149
|
+
# RETRY LOGIC
|
|
150
|
+
# ============================================================================
|
|
151
|
+
|
|
152
|
+
retry() {
|
|
153
|
+
local max_attempts=$1
|
|
154
|
+
shift
|
|
155
|
+
local cmd=("$@")
|
|
156
|
+
local attempt=1
|
|
157
|
+
|
|
158
|
+
while [[ $attempt -le $max_attempts ]]; do
|
|
159
|
+
log_debug "Attempt $attempt of $max_attempts: ${cmd[*]}"
|
|
160
|
+
|
|
161
|
+
if "${cmd[@]}"; then
|
|
162
|
+
return 0
|
|
163
|
+
fi
|
|
164
|
+
|
|
165
|
+
if [[ $attempt -lt $max_attempts ]]; then
|
|
166
|
+
log_warn "Command failed, retrying in ${RETRY_DELAY}s..."
|
|
167
|
+
sleep "$RETRY_DELAY"
|
|
168
|
+
fi
|
|
169
|
+
|
|
170
|
+
((attempt++))
|
|
171
|
+
done
|
|
172
|
+
|
|
173
|
+
log_error "Command failed after $max_attempts attempts: ${cmd[*]}"
|
|
174
|
+
return 1
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
# ============================================================================
|
|
178
|
+
# MAIN FUNCTIONS
|
|
179
|
+
# ============================================================================
|
|
180
|
+
|
|
181
|
+
print_usage() {
|
|
182
|
+
cat << EOF
|
|
183
|
+
Usage: $SCRIPT_NAME [OPTIONS] [ARGUMENTS]
|
|
184
|
+
|
|
185
|
+
Description:
|
|
186
|
+
[Describe what this script does]
|
|
187
|
+
|
|
188
|
+
Options:
|
|
189
|
+
-h, --help Show this help message
|
|
190
|
+
-v, --verbose Enable verbose (debug) output
|
|
191
|
+
-d, --dry-run Show what would be done without doing it
|
|
192
|
+
|
|
193
|
+
Arguments:
|
|
194
|
+
ARG1 [Description of argument 1]
|
|
195
|
+
ARG2 [Description of argument 2]
|
|
196
|
+
|
|
197
|
+
Examples:
|
|
198
|
+
# Basic usage
|
|
199
|
+
$SCRIPT_NAME arg1 arg2
|
|
200
|
+
|
|
201
|
+
# With verbose output
|
|
202
|
+
$SCRIPT_NAME -v arg1 arg2
|
|
203
|
+
|
|
204
|
+
# Dry run to preview changes
|
|
205
|
+
$SCRIPT_NAME --dry-run arg1 arg2
|
|
206
|
+
|
|
207
|
+
Exit Codes:
|
|
208
|
+
0 Success
|
|
209
|
+
1 General error
|
|
210
|
+
2 Invalid arguments
|
|
211
|
+
130 Interrupted by user
|
|
212
|
+
|
|
213
|
+
Notes:
|
|
214
|
+
[Any additional notes about the script]
|
|
215
|
+
|
|
216
|
+
See Also:
|
|
217
|
+
[Reference to related documentation or scripts]
|
|
218
|
+
EOF
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
parse_args() {
|
|
222
|
+
local dry_run=false
|
|
223
|
+
|
|
224
|
+
while [[ $# -gt 0 ]]; do
|
|
225
|
+
case $1 in
|
|
226
|
+
-h | --help)
|
|
227
|
+
print_usage
|
|
228
|
+
exit 0
|
|
229
|
+
;;
|
|
230
|
+
-v | --verbose)
|
|
231
|
+
export LOG_LEVEL="DEBUG"
|
|
232
|
+
log_debug "Debug mode enabled"
|
|
233
|
+
shift
|
|
234
|
+
;;
|
|
235
|
+
-d | --dry-run)
|
|
236
|
+
dry_run=true
|
|
237
|
+
log_info "Dry run mode enabled"
|
|
238
|
+
shift
|
|
239
|
+
;;
|
|
240
|
+
-*)
|
|
241
|
+
log_error "Unknown option: $1"
|
|
242
|
+
print_usage
|
|
243
|
+
exit 2
|
|
244
|
+
;;
|
|
245
|
+
*)
|
|
246
|
+
# Positional arguments
|
|
247
|
+
break
|
|
248
|
+
;;
|
|
249
|
+
esac
|
|
250
|
+
done
|
|
251
|
+
|
|
252
|
+
# Store remaining arguments
|
|
253
|
+
readonly ARGS=("$@")
|
|
254
|
+
readonly DRY_RUN=$dry_run
|
|
255
|
+
|
|
256
|
+
# Validate required arguments
|
|
257
|
+
if [[ ${#ARGS[@]} -lt 1 ]]; then
|
|
258
|
+
log_error "Missing required argument"
|
|
259
|
+
print_usage
|
|
260
|
+
exit 2
|
|
261
|
+
fi
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
main() {
|
|
265
|
+
log_info "Starting $SCRIPT_NAME"
|
|
266
|
+
|
|
267
|
+
# Validate prerequisites
|
|
268
|
+
validate_command "grep" || exit 1
|
|
269
|
+
validate_command "sed" || exit 1
|
|
270
|
+
|
|
271
|
+
# Extract arguments
|
|
272
|
+
local arg1="${ARGS[0]}"
|
|
273
|
+
local arg2="${ARGS[1]:-}"
|
|
274
|
+
|
|
275
|
+
log_debug "arg1: $arg1"
|
|
276
|
+
log_debug "arg2: $arg2"
|
|
277
|
+
|
|
278
|
+
# Validate arguments
|
|
279
|
+
validate_arg "arg1" "$arg1"
|
|
280
|
+
|
|
281
|
+
# Main logic here
|
|
282
|
+
if [[ "$DRY_RUN" == "true" ]]; then
|
|
283
|
+
log_info "[DRY RUN] Would process: $arg1"
|
|
284
|
+
return 0
|
|
285
|
+
fi
|
|
286
|
+
|
|
287
|
+
# Example: Do something with retries
|
|
288
|
+
retry "$MAX_RETRIES" \
|
|
289
|
+
grep -r "pattern" "$arg1"
|
|
290
|
+
|
|
291
|
+
# Success
|
|
292
|
+
log_success "Operation completed successfully"
|
|
293
|
+
return 0
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
# ============================================================================
|
|
297
|
+
# ENTRY POINT
|
|
298
|
+
# ============================================================================
|
|
299
|
+
|
|
300
|
+
if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
|
|
301
|
+
parse_args "$@"
|
|
302
|
+
main
|
|
303
|
+
fi
|
moai_adk/templates/CLAUDE.md
CHANGED
|
@@ -14,12 +14,14 @@
|
|
|
14
14
|
| --- | --- | --- | --- |
|
|
15
15
|
| **Commands** | User ↔ Alfred | Workflow entry points that establish the Plan → Run → Sync cadence | `/alfred:0-project`, `/alfred:1-plan`, `/alfred:2-run`, `/alfred:3-sync` |
|
|
16
16
|
| **Sub-agents** | Alfred | Deep reasoning and decision making for each phase | project-manager, spec-builder, code-builder pipeline, doc-syncer |
|
|
17
|
-
| **Skills (
|
|
18
|
-
| **Hooks** | Runtime guardrails | Fast validation + JIT context hints (<100
|
|
17
|
+
| **Skills (55)** | Claude Skills | Reusable knowledge capsules loaded just-in-time | Foundation (TRUST/TAG/Git), Essentials (debug/refactor/review), Alfred workflow, Domain & Language packs |
|
|
18
|
+
| **Hooks** | Runtime guardrails | Fast validation + JIT context hints (<100 ms) | SessionStart status card, PreToolUse destructive-command blocker |
|
|
19
19
|
|
|
20
20
|
### Core Sub-agent Roster
|
|
21
21
|
|
|
22
22
|
> Alfred + 10 core sub-agents + 6 zero-project specialists + 2 built-in Claude agents = **19-member team**
|
|
23
|
+
>
|
|
24
|
+
> **Note on Counting**: The "code-builder pipeline" is counted as 1 conceptual agent but implemented as 2 physical files (`implementation-planner` + `tdd-implementer`) for sequential RED → GREEN → REFACTOR execution. This maintains the 19-member team concept while acknowledging that 20 distinct agent files exist in `.claude/agents/alfred/`.
|
|
23
25
|
|
|
24
26
|
| Sub-agent | Model | Phase | Responsibility | Trigger |
|
|
25
27
|
| --- | --- | --- | --- | --- |
|
|
@@ -47,6 +49,8 @@ The **code-builder pipeline** runs two Sonnet specialists in sequence: **impleme
|
|
|
47
49
|
| **feature-selector** 🎯 | Haiku | Skill pack recommendation | `/alfred:0-project` |
|
|
48
50
|
| **template-optimizer** ⚙️ | Haiku | Template cleanup, migration helpers | `/alfred:0-project` |
|
|
49
51
|
|
|
52
|
+
> **Implementation Note**: Zero-project specialists may be embedded within other agents (e.g., functionality within `project-manager`) or implemented as dedicated Skills (e.g., `moai-alfred-language-detection`). For example, `language-detector` functionality is provided by the `moai-alfred-language-detection` Skill during `/alfred:0-project` initialization.
|
|
53
|
+
|
|
50
54
|
### Built-in Claude Agents
|
|
51
55
|
|
|
52
56
|
| Agent | Model | Specialty | Invocation |
|
|
@@ -107,9 +111,21 @@ User: "Where is JWT authentication implemented in this project?"
|
|
|
107
111
|
- `medium`: moderate sweep (multiple locations + naming rules) — **recommended**
|
|
108
112
|
- `very thorough`: exhaustive scan (full codebase analysis)
|
|
109
113
|
|
|
110
|
-
### Claude Skills (
|
|
114
|
+
### Claude Skills (55 packs)
|
|
115
|
+
|
|
116
|
+
Alfred relies on 55 Claude Skills grouped by tier. Skills load via Progressive Disclosure: metadata is available at session start, full `SKILL.md` content loads when a sub-agent references it, and supporting templates stream only when required.
|
|
111
117
|
|
|
112
|
-
|
|
118
|
+
**Skills Distribution by Tier**:
|
|
119
|
+
|
|
120
|
+
| Tier | Count | Purpose |
|
|
121
|
+
| --- | --- | --- |
|
|
122
|
+
| Foundation | 6 | Core TRUST/TAG/SPEC/Git/EARS/Lang principles |
|
|
123
|
+
| Essentials | 4 | Debug/Perf/Refactor/Review workflows |
|
|
124
|
+
| Alfred | 11 | Internal workflow orchestration |
|
|
125
|
+
| Domain | 10 | Specialized domain expertise |
|
|
126
|
+
| Language | 23 | Language-specific best practices |
|
|
127
|
+
| Claude Code Ops | 1 | Session management |
|
|
128
|
+
| **Total** | **55** | Complete knowledge capsule library |
|
|
113
129
|
|
|
114
130
|
**Foundation Tier (6)**
|
|
115
131
|
|
|
@@ -131,6 +147,22 @@ Alfred relies on 44 Claude Skills grouped by tier. Skills load via Progressive D
|
|
|
131
147
|
| `moai-essentials-refactor` | Refactoring patterns & code-smell remediation | `/alfred:2-run` |
|
|
132
148
|
| `moai-essentials-review` | Code review checklist & quality feedback | `/alfred:3-sync` |
|
|
133
149
|
|
|
150
|
+
**Alfred Tier (11)** — Internal workflow orchestration
|
|
151
|
+
|
|
152
|
+
| Skill | Purpose | Auto-load |
|
|
153
|
+
| --- | --- | --- |
|
|
154
|
+
| `moai-alfred-code-reviewer` | Automated code quality review | `/alfred:3-sync` |
|
|
155
|
+
| `moai-alfred-debugger-pro` | Advanced debugging strategies | `/alfred:2-run` failures |
|
|
156
|
+
| `moai-alfred-ears-authoring` | EARS syntax validation & templates | `/alfred:1-plan` |
|
|
157
|
+
| `moai-alfred-git-workflow` | GitFlow automation patterns | Plan/Run/Sync |
|
|
158
|
+
| `moai-alfred-language-detection` | Stack detection & Skill preload | SessionStart, `/alfred:0-project` |
|
|
159
|
+
| `moai-alfred-performance-optimizer` | Performance profiling & optimization | On demand |
|
|
160
|
+
| `moai-alfred-refactoring-coach` | Refactoring guidance & patterns | `/alfred:2-run` |
|
|
161
|
+
| `moai-alfred-spec-metadata-validation` | SPEC metadata policy enforcement | `/alfred:1-plan` |
|
|
162
|
+
| `moai-alfred-tag-scanning` | TAG integrity & orphan detection | `/alfred:3-sync` |
|
|
163
|
+
| `moai-alfred-trust-validation` | TRUST 5 principle verification | All phases |
|
|
164
|
+
| `moai-alfred-tui-survey` | Interactive user surveys & menus | On demand |
|
|
165
|
+
|
|
134
166
|
**Domain Tier (10)** — `moai-domain-backend`, `web-api`, `frontend`, `mobile-app`, `security`, `devops`, `database`, `data-science`, `ml`, `cli-tool`.
|
|
135
167
|
|
|
136
168
|
**Language Tier (23)** — Python, TypeScript, Go, Rust, Java, Kotlin, Swift, Dart, C/C++, C#, Scala, Haskell, Elixir, Clojure, Lua, Ruby, PHP, JavaScript, SQL, Shell, Julia, R, plus supporting stacks.
|
|
@@ -163,16 +195,16 @@ Skills keep the core knowledge lightweight while allowing Alfred to assemble the
|
|
|
163
195
|
|
|
164
196
|
Alfred commands follow a three-phase loop, with an optional bootstrap stage for `/alfred:0-project`.
|
|
165
197
|
|
|
166
|
-
- **Phase 0 — Bootstrap (optional)**
|
|
198
|
+
- **Phase 0 — Bootstrap (optional)**
|
|
167
199
|
Capture project metadata, create `.moai/config.json` and project docs, detect languages, and stage the recommended Skill packs.
|
|
168
200
|
|
|
169
|
-
- **Phase 1 — Analyze & Plan**
|
|
201
|
+
- **Phase 1 — Analyze & Plan**
|
|
170
202
|
Understand scope, constraints, and desired outputs; review existing context (files, specs, tests); outline the execution plan and surface risks.
|
|
171
203
|
|
|
172
|
-
- **Phase 2 — Execute**
|
|
204
|
+
- **Phase 2 — Execute**
|
|
173
205
|
Run the approved steps in order, log progress in the task thread, escalate blockers immediately with mitigation options, and record decisions.
|
|
174
206
|
|
|
175
|
-
- **Phase 3 — Sync & Handoff**
|
|
207
|
+
- **Phase 3 — Sync & Handoff**
|
|
176
208
|
Update docs, TAG inventory, and reports; verify quality gates; summarize outcomes; and suggest the next command or manual follow-up.
|
|
177
209
|
|
|
178
210
|
### Alfred's Next-Step Suggestion Principles
|
|
@@ -526,15 +558,15 @@ MoAI-ADK assigns every responsibility to a dedicated execution layer.
|
|
|
526
558
|
- Examples: spec-builder, code-builder pipeline, doc-syncer, tag-agent, git-manager.
|
|
527
559
|
- Communicate status, escalate blockers, and request Skills when additional knowledge is required.
|
|
528
560
|
|
|
529
|
-
### Skills — Reusable knowledge capsules (
|
|
561
|
+
### Skills — Reusable knowledge capsules (55 packs)
|
|
530
562
|
|
|
531
563
|
- <500-word playbooks stored under `.claude/skills/`.
|
|
532
564
|
- Loaded via Progressive Disclosure only when relevant.
|
|
533
|
-
- Provide standard templates, best practices, and checklists across Foundation, Essentials, Domain, Language, and Ops tiers.
|
|
565
|
+
- Provide standard templates, best practices, and checklists across Foundation, Essentials, Alfred, Domain, Language, and Ops tiers.
|
|
534
566
|
|
|
535
567
|
### Hooks — Guardrails & just-in-time context
|
|
536
568
|
|
|
537
|
-
- Lightweight (<100
|
|
569
|
+
- Lightweight (<100 ms) checks triggered by session events.
|
|
538
570
|
- Block destructive commands, surface status cards, and seed context pointers.
|
|
539
571
|
- Examples: SessionStart project summary, PreToolUse safety checks.
|
|
540
572
|
|