moai-adk 0.4.5__py3-none-any.whl → 0.4.8__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of moai-adk might be problematic. Click here for more details.
- moai_adk/__init__.py +1 -1
- moai_adk/core/project/initializer.py +12 -5
- moai_adk/templates/.claude/agents/alfred/cc-manager.md +188 -954
- moai_adk/templates/.claude/agents/alfred/debug-helper.md +4 -5
- moai_adk/templates/.claude/agents/alfred/doc-syncer.md +2 -2
- moai_adk/templates/.claude/agents/alfred/git-manager.md +2 -2
- moai_adk/templates/.claude/agents/alfred/implementation-planner.md +3 -3
- moai_adk/templates/.claude/agents/alfred/project-manager.md +6 -6
- moai_adk/templates/.claude/agents/alfred/quality-gate.md +4 -6
- moai_adk/templates/.claude/agents/alfred/skill-factory.md +829 -0
- moai_adk/templates/.claude/agents/alfred/spec-builder.md +2 -2
- moai_adk/templates/.claude/agents/alfred/tag-agent.md +2 -2
- moai_adk/templates/.claude/agents/alfred/tdd-implementer.md +3 -3
- moai_adk/templates/.claude/agents/alfred/trust-checker.md +5 -5
- moai_adk/templates/.claude/commands/alfred/0-project.md +98 -42
- moai_adk/templates/.claude/commands/alfred/1-plan.md +7 -7
- moai_adk/templates/.claude/commands/alfred/2-run.md +36 -36
- moai_adk/templates/.claude/commands/alfred/3-sync.md +10 -10
- moai_adk/templates/.claude/hooks/alfred/alfred_hooks.py +14 -1
- moai_adk/templates/.claude/hooks/alfred/core/__init__.py +115 -33
- moai_adk/templates/.claude/hooks/alfred/handlers/session.py +8 -9
- moai_adk/templates/.claude/hooks/alfred/handlers/tool.py +6 -6
- moai_adk/templates/.claude/hooks/alfred/handlers/user.py +5 -4
- moai_adk/templates/.claude/output-styles/alfred/agentic-coding.md +1 -1
- moai_adk/templates/.claude/output-styles/alfred/moai-adk-learning.md +1 -1
- moai_adk/templates/.claude/output-styles/alfred/study-with-alfred.md +1 -1
- moai_adk/templates/.claude/settings.json +42 -2
- 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-interactive-questions/SKILL.md +480 -0
- moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/examples.md +257 -0
- moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/reference.md +120 -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-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-cc-agents/SKILL.md +249 -0
- moai_adk/templates/.claude/skills/moai-cc-agents/templates/agent-template.md +32 -0
- moai_adk/templates/.claude/skills/moai-cc-claude-md/SKILL.md +278 -0
- moai_adk/templates/.claude/skills/moai-cc-claude-md/templates/CLAUDE-template.md +26 -0
- moai_adk/templates/.claude/skills/moai-cc-commands/SKILL.md +287 -0
- moai_adk/templates/.claude/skills/moai-cc-commands/templates/command-template.md +21 -0
- moai_adk/templates/.claude/skills/moai-cc-hooks/SKILL.md +232 -0
- moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/pre-bash-check.sh +19 -0
- moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/preserve-permissions.sh +19 -0
- moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/validate-bash-command.py +24 -0
- moai_adk/templates/.claude/skills/moai-cc-mcp-plugins/SKILL.md +179 -0
- moai_adk/templates/.claude/skills/moai-cc-mcp-plugins/templates/settings-mcp-template.json +39 -0
- moai_adk/templates/.claude/skills/moai-cc-memory/SKILL.md +296 -0
- moai_adk/templates/.claude/skills/moai-cc-memory/templates/session-summary-template.md +18 -0
- moai_adk/templates/.claude/skills/moai-cc-settings/SKILL.md +243 -0
- moai_adk/templates/.claude/skills/moai-cc-settings/templates/settings-complete-template.json +30 -0
- moai_adk/templates/.claude/skills/moai-cc-skills/SKILL.md +271 -0
- moai_adk/templates/.claude/skills/moai-cc-skills/templates/SKILL-template.md +15 -0
- 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-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-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-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-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-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 +278 -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/PARALLEL-ANALYSIS-REPORT.md +429 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/PYTHON-VERSION-MATRIX.md +391 -0
- moai_adk/templates/.claude/skills/moai-skill-factory/SKILL-FACTORY-WORKFLOW.md +431 -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/STEP-BY-STEP-GUIDE.md +466 -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 +465 -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/skills/moai-spec-authoring/README.md +129 -0
- moai_adk/templates/.claude/skills/moai-spec-authoring/SKILL.md +1300 -0
- moai_adk/templates/.claude/skills/moai-spec-authoring/examples/validate-spec.sh +161 -0
- moai_adk/templates/CLAUDE.md +121 -81
- moai_adk-0.4.8.dist-info/METADATA +1553 -0
- moai_adk-0.4.8.dist-info/RECORD +265 -0
- moai_adk/templates/.claude/skills/moai-alfred-code-reviewer/SKILL.md +0 -112
- moai_adk/templates/.claude/skills/moai-alfred-debugger-pro/SKILL.md +0 -103
- moai_adk/templates/.claude/skills/moai-alfred-performance-optimizer/SKILL.md +0 -105
- moai_adk/templates/.claude/skills/moai-alfred-refactoring-coach/SKILL.md +0 -97
- moai_adk/templates/.claude/skills/moai-alfred-tui-survey/SKILL.md +0 -87
- moai_adk/templates/.claude/skills/moai-alfred-tui-survey/examples.md +0 -62
- moai_adk/templates/.claude/skills/moai-claude-code/SKILL.md +0 -94
- moai_adk/templates/.claude/skills/moai-claude-code/examples.md +0 -513
- moai_adk/templates/.claude/skills/moai-claude-code/reference.md +0 -433
- moai_adk/templates/.claude/skills/moai-claude-code/templates/agent-full.md +0 -332
- moai_adk/templates/.claude/skills/moai-claude-code/templates/command-full.md +0 -384
- moai_adk/templates/.claude/skills/moai-claude-code/templates/plugin-full.json +0 -363
- moai_adk/templates/.claude/skills/moai-claude-code/templates/settings-full.json +0 -595
- moai_adk/templates/.claude/skills/moai-claude-code/templates/skill-full.md +0 -496
- moai_adk/templates/.claude/skills/moai-lang-clojure/SKILL.md +0 -100
- moai_adk/templates/.claude/skills/moai-lang-elixir/SKILL.md +0 -99
- moai_adk/templates/.claude/skills/moai-lang-haskell/SKILL.md +0 -100
- moai_adk/templates/.claude/skills/moai-lang-julia/SKILL.md +0 -98
- moai_adk/templates/.claude/skills/moai-lang-lua/SKILL.md +0 -98
- 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.8.dist-info}/WHEEL +0 -0
- {moai_adk-0.4.5.dist-info → moai_adk-0.4.8.dist-info}/entry_points.txt +0 -0
- {moai_adk-0.4.5.dist-info → moai_adk-0.4.8.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# validate-spec.sh - SPEC validation helper for MoAI-ADK
|
|
3
|
+
# Usage: ./validate-spec.sh .moai/specs/SPEC-AUTH-001
|
|
4
|
+
|
|
5
|
+
set -e
|
|
6
|
+
|
|
7
|
+
SPEC_DIR="$1"
|
|
8
|
+
|
|
9
|
+
if [ -z "$SPEC_DIR" ]; then
|
|
10
|
+
echo "Usage: $0 <SPEC_DIR>"
|
|
11
|
+
echo "Example: $0 .moai/specs/SPEC-AUTH-001"
|
|
12
|
+
exit 1
|
|
13
|
+
fi
|
|
14
|
+
|
|
15
|
+
if [ ! -d "$SPEC_DIR" ]; then
|
|
16
|
+
echo "Error: Directory $SPEC_DIR does not exist"
|
|
17
|
+
exit 1
|
|
18
|
+
fi
|
|
19
|
+
|
|
20
|
+
if [ ! -f "$SPEC_DIR/spec.md" ]; then
|
|
21
|
+
echo "Error: spec.md not found in $SPEC_DIR"
|
|
22
|
+
exit 1
|
|
23
|
+
fi
|
|
24
|
+
|
|
25
|
+
echo "=========================================="
|
|
26
|
+
echo "Validating SPEC: $SPEC_DIR"
|
|
27
|
+
echo "=========================================="
|
|
28
|
+
echo ""
|
|
29
|
+
|
|
30
|
+
# Check required fields
|
|
31
|
+
echo -n "Required fields (7)... "
|
|
32
|
+
REQUIRED_COUNT=$(rg "^(id|version|status|created|updated|author|priority):" "$SPEC_DIR/spec.md" | wc -l | tr -d ' ')
|
|
33
|
+
if [ "$REQUIRED_COUNT" -eq 7 ]; then
|
|
34
|
+
echo "✅ ($REQUIRED_COUNT/7)"
|
|
35
|
+
else
|
|
36
|
+
echo "❌ ($REQUIRED_COUNT/7)"
|
|
37
|
+
echo " Missing fields. Expected: id, version, status, created, updated, author, priority"
|
|
38
|
+
fi
|
|
39
|
+
|
|
40
|
+
# Check author format
|
|
41
|
+
echo -n "Author format (@Handle)... "
|
|
42
|
+
if rg "^author: @[A-Z]" "$SPEC_DIR/spec.md" > /dev/null 2>&1; then
|
|
43
|
+
echo "✅"
|
|
44
|
+
else
|
|
45
|
+
echo "❌"
|
|
46
|
+
echo " Expected format: author: @YourHandle"
|
|
47
|
+
fi
|
|
48
|
+
|
|
49
|
+
# Check version format
|
|
50
|
+
echo -n "Version format (0.x.y)... "
|
|
51
|
+
if rg "^version: 0\.\d+\.\d+" "$SPEC_DIR/spec.md" > /dev/null 2>&1; then
|
|
52
|
+
echo "✅"
|
|
53
|
+
else
|
|
54
|
+
echo "❌"
|
|
55
|
+
echo " Expected format: version: 0.x.y (e.g., 0.0.1, 0.1.0)"
|
|
56
|
+
fi
|
|
57
|
+
|
|
58
|
+
# Check HISTORY section
|
|
59
|
+
echo -n "HISTORY section... "
|
|
60
|
+
if rg "^## HISTORY" "$SPEC_DIR/spec.md" > /dev/null 2>&1; then
|
|
61
|
+
echo "✅"
|
|
62
|
+
else
|
|
63
|
+
echo "❌"
|
|
64
|
+
echo " Missing HISTORY section"
|
|
65
|
+
fi
|
|
66
|
+
|
|
67
|
+
# Check TAG block
|
|
68
|
+
echo -n "TAG block (@SPEC:ID)... "
|
|
69
|
+
if rg "^# @SPEC:" "$SPEC_DIR/spec.md" > /dev/null 2>&1; then
|
|
70
|
+
echo "✅"
|
|
71
|
+
else
|
|
72
|
+
echo "❌"
|
|
73
|
+
echo " Expected format: # @SPEC:YOUR-ID: Title"
|
|
74
|
+
fi
|
|
75
|
+
|
|
76
|
+
# Check Environment section
|
|
77
|
+
echo -n "Environment section... "
|
|
78
|
+
if rg "^## Environment" "$SPEC_DIR/spec.md" > /dev/null 2>&1; then
|
|
79
|
+
echo "✅"
|
|
80
|
+
else
|
|
81
|
+
echo "⚠️ (optional but recommended)"
|
|
82
|
+
fi
|
|
83
|
+
|
|
84
|
+
# Check Assumptions section
|
|
85
|
+
echo -n "Assumptions section... "
|
|
86
|
+
if rg "^## Assumptions" "$SPEC_DIR/spec.md" > /dev/null 2>&1; then
|
|
87
|
+
echo "✅"
|
|
88
|
+
else
|
|
89
|
+
echo "⚠️ (optional but recommended)"
|
|
90
|
+
fi
|
|
91
|
+
|
|
92
|
+
# Check Requirements section
|
|
93
|
+
echo -n "Requirements section... "
|
|
94
|
+
if rg "^## Requirements" "$SPEC_DIR/spec.md" > /dev/null 2>&1; then
|
|
95
|
+
echo "✅"
|
|
96
|
+
else
|
|
97
|
+
echo "❌"
|
|
98
|
+
echo " Missing Requirements section"
|
|
99
|
+
fi
|
|
100
|
+
|
|
101
|
+
# Check duplicate IDs
|
|
102
|
+
SPEC_ID=$(basename "$SPEC_DIR" | sed 's/SPEC-//')
|
|
103
|
+
echo -n "Duplicate ID check ($SPEC_ID)... "
|
|
104
|
+
DUPLICATE_COUNT=$(rg "@SPEC:$SPEC_ID" -n .moai/specs/ 2>/dev/null | wc -l | tr -d ' ')
|
|
105
|
+
if [ "$DUPLICATE_COUNT" -eq 1 ]; then
|
|
106
|
+
echo "✅ (1 occurrence)"
|
|
107
|
+
else
|
|
108
|
+
echo "❌ (found $DUPLICATE_COUNT occurrences)"
|
|
109
|
+
if [ "$DUPLICATE_COUNT" -gt 1 ]; then
|
|
110
|
+
echo " Duplicate SPEC IDs detected:"
|
|
111
|
+
rg "@SPEC:$SPEC_ID" -n .moai/specs/
|
|
112
|
+
fi
|
|
113
|
+
fi
|
|
114
|
+
|
|
115
|
+
# Check EARS patterns
|
|
116
|
+
echo ""
|
|
117
|
+
echo "EARS Pattern Usage:"
|
|
118
|
+
echo -n " Ubiquitous (UR-XXX)... "
|
|
119
|
+
if rg "^\*\*UR-\d+" "$SPEC_DIR/spec.md" > /dev/null 2>&1; then
|
|
120
|
+
COUNT=$(rg "^\*\*UR-\d+" "$SPEC_DIR/spec.md" | wc -l | tr -d ' ')
|
|
121
|
+
echo "✅ ($COUNT found)"
|
|
122
|
+
else
|
|
123
|
+
echo "⚠️ (none found)"
|
|
124
|
+
fi
|
|
125
|
+
|
|
126
|
+
echo -n " Event-driven (ER-XXX)... "
|
|
127
|
+
if rg "^\*\*ER-\d+" "$SPEC_DIR/spec.md" > /dev/null 2>&1; then
|
|
128
|
+
COUNT=$(rg "^\*\*ER-\d+" "$SPEC_DIR/spec.md" | wc -l | tr -d ' ')
|
|
129
|
+
echo "✅ ($COUNT found)"
|
|
130
|
+
else
|
|
131
|
+
echo "⚠️ (none found)"
|
|
132
|
+
fi
|
|
133
|
+
|
|
134
|
+
echo -n " State-driven (SR-XXX)... "
|
|
135
|
+
if rg "^\*\*SR-\d+" "$SPEC_DIR/spec.md" > /dev/null 2>&1; then
|
|
136
|
+
COUNT=$(rg "^\*\*SR-\d+" "$SPEC_DIR/spec.md" | wc -l | tr -d ' ')
|
|
137
|
+
echo "✅ ($COUNT found)"
|
|
138
|
+
else
|
|
139
|
+
echo "⚠️ (none found)"
|
|
140
|
+
fi
|
|
141
|
+
|
|
142
|
+
echo -n " Optional Features (OF-XXX)... "
|
|
143
|
+
if rg "^\*\*OF-\d+" "$SPEC_DIR/spec.md" > /dev/null 2>&1; then
|
|
144
|
+
COUNT=$(rg "^\*\*OF-\d+" "$SPEC_DIR/spec.md" | wc -l | tr -d ' ')
|
|
145
|
+
echo "✅ ($COUNT found)"
|
|
146
|
+
else
|
|
147
|
+
echo "⚠️ (none found)"
|
|
148
|
+
fi
|
|
149
|
+
|
|
150
|
+
echo -n " Constraints (C-XXX)... "
|
|
151
|
+
if rg "^\*\*C-\d+" "$SPEC_DIR/spec.md" > /dev/null 2>&1; then
|
|
152
|
+
COUNT=$(rg "^\*\*C-\d+" "$SPEC_DIR/spec.md" | wc -l | tr -d ' ')
|
|
153
|
+
echo "✅ ($COUNT found)"
|
|
154
|
+
else
|
|
155
|
+
echo "⚠️ (none found)"
|
|
156
|
+
fi
|
|
157
|
+
|
|
158
|
+
echo ""
|
|
159
|
+
echo "=========================================="
|
|
160
|
+
echo "Validation complete!"
|
|
161
|
+
echo "=========================================="
|
moai_adk/templates/CLAUDE.md
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
**SPEC-First TDD Development with Alfred SuperAgent**
|
|
4
4
|
|
|
5
|
+
> **문서 언어 | Document Language**: {{CONVERSATION_LANGUAGE_NAME}} ({{CONVERSATION_LANGUAGE}})
|
|
6
|
+
> **프로젝트 담당자 | Project Owner**: {{USER_NICKNAME}}
|
|
7
|
+
> **설정 파일 | Config**: `.moai/config.json` → `project.conversation_language`
|
|
8
|
+
>
|
|
9
|
+
> 💡 **Alfred와의 모든 상호작용에서 `Skill("moai-alfred-interactive-questions")`를 통해 TUI 메뉴로 응답할 수 있습니다.**
|
|
10
|
+
> All interactions with Alfred can use `Skill("moai-alfred-interactive-questions")` for TUI-based responses.
|
|
11
|
+
|
|
5
12
|
---
|
|
6
13
|
|
|
7
14
|
## ▶◀ Meet Alfred: Your MoAI SuperAgent
|
|
@@ -10,49 +17,53 @@
|
|
|
10
17
|
|
|
11
18
|
### 4-Layer Architecture (v0.4.0)
|
|
12
19
|
|
|
13
|
-
| Layer
|
|
14
|
-
|
|
|
15
|
-
| **Commands**
|
|
16
|
-
| **Sub-agents**
|
|
17
|
-
| **Skills (
|
|
18
|
-
| **Hooks**
|
|
20
|
+
| Layer | Owner | Purpose | Examples |
|
|
21
|
+
| --------------- | ------------------ | ------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------- |
|
|
22
|
+
| **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` |
|
|
23
|
+
| **Sub-agents** | Alfred | Deep reasoning and decision making for each phase | project-manager, spec-builder, code-builder pipeline, doc-syncer |
|
|
24
|
+
| **Skills (55)** | Claude Skills | Reusable knowledge capsules loaded just-in-time | Foundation (TRUST/TAG/Git), Essentials (debug/refactor/review), Alfred workflow, Domain & Language packs |
|
|
25
|
+
| **Hooks** | Runtime guardrails | Fast validation + JIT context hints (<100 ms) | SessionStart status card, PreToolUse destructive-command blocker |
|
|
19
26
|
|
|
20
27
|
### Core Sub-agent Roster
|
|
21
28
|
|
|
22
29
|
> Alfred + 10 core sub-agents + 6 zero-project specialists + 2 built-in Claude agents = **19-member team**
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
|
27
|
-
|
|
|
28
|
-
| **
|
|
29
|
-
| **
|
|
30
|
-
| **
|
|
31
|
-
| **
|
|
32
|
-
| **
|
|
33
|
-
| **
|
|
34
|
-
| **
|
|
35
|
-
| **
|
|
30
|
+
>
|
|
31
|
+
> **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/`.
|
|
32
|
+
|
|
33
|
+
| Sub-agent | Model | Phase | Responsibility | Trigger |
|
|
34
|
+
| --------------------------- | ------ | ----------- | ---------------------------------------------------------------------------------------------- | ---------------------------- |
|
|
35
|
+
| **project-manager** 📋 | Sonnet | Init | Project bootstrap, metadata interview, mode selection | `/alfred:0-project` |
|
|
36
|
+
| **spec-builder** 🏗️ | Sonnet | Plan | Plan board consolidation, EARS-based SPEC authoring | `/alfred:1-plan` |
|
|
37
|
+
| **code-builder pipeline** 💎 | Sonnet | Run | Phase 1 `implementation-planner` → Phase 2 `tdd-implementer` to execute RED → GREEN → REFACTOR | `/alfred:2-run` |
|
|
38
|
+
| **doc-syncer** 📖 | Haiku | Sync | Living documentation, README/CHANGELOG updates | `/alfred:3-sync` |
|
|
39
|
+
| **tag-agent** 🏷️ | Haiku | Sync | TAG inventory, orphan detection, chain repair | `@agent-tag-agent` |
|
|
40
|
+
| **git-manager** 🚀 | Haiku | Plan · Sync | GitFlow automation, Draft→Ready PR, auto-merge policy | `@agent-git-manager` |
|
|
41
|
+
| **debug-helper** 🔍 | Sonnet | Run | Failure diagnosis, fix-forward guidance | `@agent-debug-helper` |
|
|
42
|
+
| **trust-checker** ✅ | Haiku | All phases | TRUST 5 principle enforcement and risk flags | `@agent-trust-checker` |
|
|
43
|
+
| **quality-gate** 🛡️ | Haiku | Sync | Coverage delta review, release gate validation | Auto during `/alfred:3-sync` |
|
|
44
|
+
| **cc-manager** 🛠️ | Sonnet | Ops | Claude Code session tuning, Skill lifecycle management | `@agent-cc-manager` |
|
|
36
45
|
|
|
37
46
|
The **code-builder pipeline** runs two Sonnet specialists in sequence: **implementation-planner** (strategy, libraries, TAG design) followed by **tdd-implementer** (RED → GREEN → REFACTOR execution).
|
|
38
47
|
|
|
39
48
|
### Zero-project Specialists
|
|
40
49
|
|
|
41
|
-
| Sub-agent
|
|
42
|
-
|
|
|
43
|
-
| **language-detector** 🔍
|
|
44
|
-
| **backup-merger** 📦
|
|
45
|
-
| **project-interviewer** 💬 | Sonnet | Requirement interviews, persona capture
|
|
46
|
-
| **document-generator** 📝
|
|
47
|
-
| **feature-selector** 🎯
|
|
48
|
-
| **template-optimizer** ⚙️
|
|
50
|
+
| Sub-agent | Model | Focus | Trigger |
|
|
51
|
+
| ------------------------- | ------ | ----------------------------------------------------------- | ------------------------------- |
|
|
52
|
+
| **language-detector** 🔍 | Haiku | Stack detection, language matrix | Auto during `/alfred:0-project` |
|
|
53
|
+
| **backup-merger** 📦 | Sonnet | Backup restore, checkpoint diff | `@agent-backup-merger` |
|
|
54
|
+
| **project-interviewer** 💬 | Sonnet | Requirement interviews, persona capture | `/alfred:0-project` Q&A |
|
|
55
|
+
| **document-generator** 📝 | Haiku | Project docs seed (`product.md`, `structure.md`, `tech.md`) | `/alfred:0-project` |
|
|
56
|
+
| **feature-selector** 🎯 | Haiku | Skill pack recommendation | `/alfred:0-project` |
|
|
57
|
+
| **template-optimizer** ⚙️ | Haiku | Template cleanup, migration helpers | `/alfred:0-project` |
|
|
58
|
+
|
|
59
|
+
> **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.
|
|
49
60
|
|
|
50
61
|
### Built-in Claude Agents
|
|
51
62
|
|
|
52
|
-
| Agent
|
|
53
|
-
|
|
|
54
|
-
| **Explore** 🔍
|
|
55
|
-
| **general-purpose** | Sonnet | General assistance
|
|
63
|
+
| Agent | Model | Specialty | Invocation |
|
|
64
|
+
| ------------------- | ------ | --------------------------------------------- | ---------------- |
|
|
65
|
+
| **Explore** 🔍 | Haiku | Repository-wide search & architecture mapping | `@agent-Explore` |
|
|
66
|
+
| **general-purpose** | Sonnet | General assistance | Automatic |
|
|
56
67
|
|
|
57
68
|
#### Explore Agent Guide
|
|
58
69
|
|
|
@@ -107,29 +118,57 @@ User: "Where is JWT authentication implemented in this project?"
|
|
|
107
118
|
- `medium`: moderate sweep (multiple locations + naming rules) — **recommended**
|
|
108
119
|
- `very thorough`: exhaustive scan (full codebase analysis)
|
|
109
120
|
|
|
110
|
-
### Claude Skills (
|
|
121
|
+
### Claude Skills (55 packs)
|
|
122
|
+
|
|
123
|
+
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.
|
|
124
|
+
|
|
125
|
+
**Skills Distribution by Tier**:
|
|
111
126
|
|
|
112
|
-
|
|
127
|
+
| Tier | Count | Purpose |
|
|
128
|
+
| --------------- | ------ | -------------------------------------------- |
|
|
129
|
+
| Foundation | 6 | Core TRUST/TAG/SPEC/Git/EARS/Lang principles |
|
|
130
|
+
| Essentials | 4 | Debug/Perf/Refactor/Review workflows |
|
|
131
|
+
| Alfred | 11 | Internal workflow orchestration |
|
|
132
|
+
| Domain | 10 | Specialized domain expertise |
|
|
133
|
+
| Language | 23 | Language-specific best practices |
|
|
134
|
+
| Claude Code Ops | 1 | Session management |
|
|
135
|
+
| **Total** | **55** | Complete knowledge capsule library |
|
|
113
136
|
|
|
114
137
|
**Foundation Tier (6)**
|
|
115
138
|
|
|
116
|
-
| Skill
|
|
117
|
-
|
|
|
139
|
+
| Skill | Purpose | Auto-load |
|
|
140
|
+
| ----------------------- | --------------------------------------- | ------------------------------ |
|
|
118
141
|
| `moai-foundation-trust` | TRUST checklist, coverage gate policies | SessionStart, `/alfred:3-sync` |
|
|
119
|
-
| `moai-foundation-tags`
|
|
120
|
-
| `moai-foundation-specs` | SPEC metadata policy and versioning
|
|
121
|
-
| `moai-foundation-ears`
|
|
122
|
-
| `moai-foundation-git`
|
|
123
|
-
| `moai-foundation-langs` | Language detection & Skill preload
|
|
142
|
+
| `moai-foundation-tags` | TAG inventory & orphan detection | `/alfred:3-sync` |
|
|
143
|
+
| `moai-foundation-specs` | SPEC metadata policy and versioning | `/alfred:1-plan` |
|
|
144
|
+
| `moai-foundation-ears` | EARS templates and requirement phrasing | `/alfred:1-plan` |
|
|
145
|
+
| `moai-foundation-git` | GitFlow automation & PR policy | Plan/Run/Sync |
|
|
146
|
+
| `moai-foundation-langs` | Language detection & Skill preload | SessionStart, `/alfred:2-run` |
|
|
124
147
|
|
|
125
148
|
**Essentials Tier (4)**
|
|
126
149
|
|
|
127
|
-
| Skill
|
|
128
|
-
|
|
|
129
|
-
| `moai-essentials-debug`
|
|
130
|
-
| `moai-essentials-perf`
|
|
131
|
-
| `moai-essentials-refactor` | Refactoring patterns & code-smell remediation | `/alfred:2-run`
|
|
132
|
-
| `moai-essentials-review`
|
|
150
|
+
| Skill | Purpose | Auto-load |
|
|
151
|
+
| -------------------------- | --------------------------------------------- | ------------------------------------------ |
|
|
152
|
+
| `moai-essentials-debug` | Failure diagnosis & reproduction checklist | Auto when `/alfred:2-run` detects failures |
|
|
153
|
+
| `moai-essentials-perf` | Performance analysis & profiling strategies | On demand |
|
|
154
|
+
| `moai-essentials-refactor` | Refactoring patterns & code-smell remediation | `/alfred:2-run` |
|
|
155
|
+
| `moai-essentials-review` | Code review checklist & quality feedback | `/alfred:3-sync` |
|
|
156
|
+
|
|
157
|
+
**Alfred Tier (11)** — Internal workflow orchestration
|
|
158
|
+
|
|
159
|
+
| Skill | Purpose | Auto-load |
|
|
160
|
+
| -------------------------------------- | ------------------------------------ | --------------------------------- |
|
|
161
|
+
| `moai-alfred-code-reviewer` | Automated code quality review | `/alfred:3-sync` |
|
|
162
|
+
| `moai-alfred-debugger-pro` | Advanced debugging strategies | `/alfred:2-run` failures |
|
|
163
|
+
| `moai-alfred-ears-authoring` | EARS syntax validation & templates | `/alfred:1-plan` |
|
|
164
|
+
| `moai-alfred-git-workflow` | GitFlow automation patterns | Plan/Run/Sync |
|
|
165
|
+
| `moai-alfred-language-detection` | Stack detection & Skill preload | SessionStart, `/alfred:0-project` |
|
|
166
|
+
| `moai-alfred-performance-optimizer` | Performance profiling & optimization | On demand |
|
|
167
|
+
| `moai-alfred-refactoring-coach` | Refactoring guidance & patterns | `/alfred:2-run` |
|
|
168
|
+
| `moai-alfred-spec-metadata-validation` | SPEC metadata policy enforcement | `/alfred:1-plan` |
|
|
169
|
+
| `moai-alfred-tag-scanning` | TAG integrity & orphan detection | `/alfred:3-sync` |
|
|
170
|
+
| `moai-alfred-trust-validation` | TRUST 5 principle verification | All phases |
|
|
171
|
+
| `moai-alfred-interactive-questions` | Interactive user surveys & menus | On demand |
|
|
133
172
|
|
|
134
173
|
**Domain Tier (10)** — `moai-domain-backend`, `web-api`, `frontend`, `mobile-app`, `security`, `devops`, `database`, `data-science`, `ml`, `cli-tool`.
|
|
135
174
|
|
|
@@ -149,10 +188,10 @@ Skills keep the core knowledge lightweight while allowing Alfred to assemble the
|
|
|
149
188
|
|
|
150
189
|
### Model Selection Guide
|
|
151
190
|
|
|
152
|
-
| Model
|
|
153
|
-
|
|
|
154
|
-
| **Claude 4.5 Haiku**
|
|
155
|
-
| **Claude 4.5 Sonnet** | Planning, implementation, troubleshooting, session ops
|
|
191
|
+
| Model | Primary use cases | Representative sub-agents | Why it fits |
|
|
192
|
+
| --------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------- |
|
|
193
|
+
| **Claude 4.5 Haiku** | Documentation sync, TAG inventory, Git automation, rule-based checks | doc-syncer, tag-agent, git-manager, trust-checker, quality-gate, Explore | Fast, deterministic output for patterned or string-heavy work |
|
|
194
|
+
| **Claude 4.5 Sonnet** | Planning, implementation, troubleshooting, session ops | Alfred, project-manager, spec-builder, code-builder pipeline, debug-helper, cc-manager | Deep reasoning, multi-step synthesis, creative problem solving |
|
|
156
195
|
|
|
157
196
|
**Guidelines**:
|
|
158
197
|
- Default to **Haiku** when the task is pattern-driven or requires rapid iteration; escalate to **Sonnet** for novel design, architecture, or ambiguous problem solving.
|
|
@@ -163,16 +202,16 @@ Skills keep the core knowledge lightweight while allowing Alfred to assemble the
|
|
|
163
202
|
|
|
164
203
|
Alfred commands follow a three-phase loop, with an optional bootstrap stage for `/alfred:0-project`.
|
|
165
204
|
|
|
166
|
-
- **Phase 0 — Bootstrap (optional)**
|
|
205
|
+
- **Phase 0 — Bootstrap (optional)**
|
|
167
206
|
Capture project metadata, create `.moai/config.json` and project docs, detect languages, and stage the recommended Skill packs.
|
|
168
207
|
|
|
169
|
-
- **Phase 1 — Analyze & Plan**
|
|
208
|
+
- **Phase 1 — Analyze & Plan**
|
|
170
209
|
Understand scope, constraints, and desired outputs; review existing context (files, specs, tests); outline the execution plan and surface risks.
|
|
171
210
|
|
|
172
|
-
- **Phase 2 — Execute**
|
|
211
|
+
- **Phase 2 — Execute**
|
|
173
212
|
Run the approved steps in order, log progress in the task thread, escalate blockers immediately with mitigation options, and record decisions.
|
|
174
213
|
|
|
175
|
-
- **Phase 3 — Sync & Handoff**
|
|
214
|
+
- **Phase 3 — Sync & Handoff**
|
|
176
215
|
Update docs, TAG inventory, and reports; verify quality gates; summarize outcomes; and suggest the next command or manual follow-up.
|
|
177
216
|
|
|
178
217
|
### Alfred's Next-Step Suggestion Principles
|
|
@@ -310,7 +349,7 @@ Refs: @TAG-ID (if applicable)
|
|
|
310
349
|
|
|
311
350
|
### Solution: Interactive Question Tool + TUI Survey Skill
|
|
312
351
|
|
|
313
|
-
Claude Code now features an **Interactive Question Tool** powered by the `moai-alfred-
|
|
352
|
+
Claude Code now features an **Interactive Question Tool** powered by the `moai-alfred-interactive-questions` Skill that transforms vague requests into precise, contextual specifications through guided clarification. Instead of AI making assumptions, the tool actively:
|
|
314
353
|
|
|
315
354
|
1. **Analyzes** existing code and project context
|
|
316
355
|
2. **Identifies** ambiguity and competing approaches
|
|
@@ -318,11 +357,11 @@ Claude Code now features an **Interactive Question Tool** powered by the `moai-a
|
|
|
318
357
|
4. **Captures** explicit user choices (arrow keys, enter)
|
|
319
358
|
5. **Executes** with certainty based on confirmed intent
|
|
320
359
|
|
|
321
|
-
**Implementation**: The `moai-alfred-
|
|
360
|
+
**Implementation**: The `moai-alfred-interactive-questions` Skill provides interactive survey menus that render as terminal UI elements, allowing users to navigate options with arrow keys and confirm with enter.
|
|
322
361
|
|
|
323
362
|
### How It Works
|
|
324
363
|
|
|
325
|
-
When you provide a high-level request, Alfred may invoke the `moai-alfred-
|
|
364
|
+
When you provide a high-level request, Alfred may invoke the `moai-alfred-interactive-questions` Skill to clarify implementation details through structured TUI menus:
|
|
326
365
|
|
|
327
366
|
```
|
|
328
367
|
User: "Add a completion page for the competition."
|
|
@@ -366,13 +405,13 @@ Execution with confirmed specifications
|
|
|
366
405
|
|
|
367
406
|
### Key Benefits
|
|
368
407
|
|
|
369
|
-
| Benefit
|
|
370
|
-
|
|
|
371
|
-
| **Reduced ambiguity**
|
|
372
|
-
| **Faster iteration**
|
|
373
|
-
| **Higher quality**
|
|
374
|
-
| **Lower communication cost** | Answering 3-5 specific questions beats endless refinement
|
|
375
|
-
| **Active collaboration**
|
|
408
|
+
| Benefit | Impact |
|
|
409
|
+
| ---------------------------- | ------------------------------------------------------------------ |
|
|
410
|
+
| **Reduced ambiguity** | AI asks before acting; eliminates guess work |
|
|
411
|
+
| **Faster iteration** | Choices are presented upfront, not discovered after implementation |
|
|
412
|
+
| **Higher quality** | Implementation matches intent precisely |
|
|
413
|
+
| **Lower communication cost** | Answering 3-5 specific questions beats endless refinement |
|
|
414
|
+
| **Active collaboration** | AI becomes a partner, not just a code generator |
|
|
376
415
|
|
|
377
416
|
### When to Use Interactive Questions
|
|
378
417
|
|
|
@@ -424,7 +463,7 @@ Alfred scans the codebase and detects:
|
|
|
424
463
|
- Existing `/end` page (auth required, shows results)
|
|
425
464
|
- Need for clarification on scope and user behavior
|
|
426
465
|
|
|
427
|
-
**Step 2: Interactive Survey (moai-alfred-
|
|
466
|
+
**Step 2: Interactive Survey (moai-alfred-interactive-questions activated)**
|
|
428
467
|
|
|
429
468
|
```
|
|
430
469
|
────────────────────────────────────────────────────────────────
|
|
@@ -526,15 +565,15 @@ MoAI-ADK assigns every responsibility to a dedicated execution layer.
|
|
|
526
565
|
- Examples: spec-builder, code-builder pipeline, doc-syncer, tag-agent, git-manager.
|
|
527
566
|
- Communicate status, escalate blockers, and request Skills when additional knowledge is required.
|
|
528
567
|
|
|
529
|
-
### Skills — Reusable knowledge capsules (
|
|
568
|
+
### Skills — Reusable knowledge capsules (55 packs)
|
|
530
569
|
|
|
531
570
|
- <500-word playbooks stored under `.claude/skills/`.
|
|
532
571
|
- Loaded via Progressive Disclosure only when relevant.
|
|
533
|
-
- Provide standard templates, best practices, and checklists across Foundation, Essentials, Domain, Language, and Ops tiers.
|
|
572
|
+
- Provide standard templates, best practices, and checklists across Foundation, Essentials, Alfred, Domain, Language, and Ops tiers.
|
|
534
573
|
|
|
535
574
|
### Hooks — Guardrails & just-in-time context
|
|
536
575
|
|
|
537
|
-
- Lightweight (<100
|
|
576
|
+
- Lightweight (<100 ms) checks triggered by session events.
|
|
538
577
|
- Block destructive commands, surface status cards, and seed context pointers.
|
|
539
578
|
- Examples: SessionStart project summary, PreToolUse safety checks.
|
|
540
579
|
|
|
@@ -714,22 +753,23 @@ Alfred enforces these quality gates on every change:
|
|
|
714
753
|
|
|
715
754
|
---
|
|
716
755
|
|
|
717
|
-
## Project Information
|
|
756
|
+
## 프로젝트 정보 | Project Information
|
|
718
757
|
|
|
719
|
-
-
|
|
720
|
-
-
|
|
721
|
-
-
|
|
722
|
-
-
|
|
723
|
-
-
|
|
724
|
-
-
|
|
725
|
-
-
|
|
758
|
+
- **이름 | Name**: {{PROJECT_NAME}}
|
|
759
|
+
- **설명 | Description**: {{PROJECT_DESCRIPTION}}
|
|
760
|
+
- **버전 | Version**: {{PROJECT_VERSION}}
|
|
761
|
+
- **모드 | Mode**: {{PROJECT_MODE}}
|
|
762
|
+
- **프로젝트 담당자 | Project Owner**: {{USER_NICKNAME}}
|
|
763
|
+
- **대화 언어 | Conversation Language**: {{CONVERSATION_LANGUAGE_NAME}} ({{CONVERSATION_LANGUAGE}})
|
|
764
|
+
- **코드 언어 | Codebase Language**: {{CODEBASE_LANGUAGE}}
|
|
765
|
+
- **도구 | Toolchain**: 선택된 언어에 최적화된 도구 자동 선택 | Automatically selects the best tools for the chosen language
|
|
726
766
|
|
|
727
|
-
### Language Configuration
|
|
767
|
+
### 언어 설정 | Language Configuration
|
|
728
768
|
|
|
729
|
-
-
|
|
730
|
-
-
|
|
731
|
-
-
|
|
769
|
+
- **대화 언어 | Conversation Language** (`{{CONVERSATION_LANGUAGE}}`): 모든 Alfred 대화, 문서, 프로젝트 인터뷰가 이 언어로 진행됨 | All Alfred dialogs, documentation, and project interviews conducted in this language
|
|
770
|
+
- **코드 언어 | Codebase Language** (`{{CODEBASE_LANGUAGE}}`): 이 프로젝트에서 감지된 주요 프로그래밍 언어 | Primary programming language(s) detected in this project
|
|
771
|
+
- **문서 | Documentation**: 대화 언어로 생성됨 | Generated in the conversation language ({{CONVERSATION_LANGUAGE_NAME}})
|
|
732
772
|
|
|
733
773
|
---
|
|
734
774
|
|
|
735
|
-
|
|
775
|
+
**주의 | Note**: 대화 언어는 `/alfred:0-project` 시작 시점에 선택되며, 모든 후속 프로젝트 초기화 단계에 적용됩니다. 생성되는 모든 문서(product.md, structure.md, tech.md)는 선택된 언어로 생성됩니다 | The conversation language is selected at the beginning of `/alfred:0-project` and applies to all subsequent project initialization steps. All generated documentation (product.md, structure.md, tech.md) will be created in the selected language.
|