moai-adk 0.4.5__py3-none-any.whl → 0.20.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 +74 -1
- moai_adk/cli/commands/__init__.py +1 -1
- moai_adk/cli/commands/analyze.py +119 -0
- moai_adk/cli/commands/backup.py +25 -1
- moai_adk/cli/commands/doctor.py +31 -5
- moai_adk/cli/commands/improve_user_experience.py +307 -0
- moai_adk/cli/commands/init.py +111 -10
- moai_adk/cli/commands/status.py +33 -3
- moai_adk/cli/commands/update.py +921 -130
- moai_adk/cli/commands/validate_links.py +120 -0
- moai_adk/cli/prompts/init_prompts.py +22 -87
- moai_adk/core/analysis/__init__.py +9 -0
- moai_adk/core/analysis/session_analyzer.py +388 -0
- moai_adk/core/analysis/tag_chain_analyzer.py +344 -0
- moai_adk/core/analysis/tag_chain_repair.py +879 -0
- moai_adk/core/config/__init__.py +19 -0
- moai_adk/core/config/migration.py +235 -0
- moai_adk/core/git/__init__.py +1 -1
- moai_adk/core/git/branch.py +1 -1
- moai_adk/core/git/commit.py +1 -1
- moai_adk/core/git/manager.py +1 -1
- moai_adk/core/issue_creator.py +313 -0
- moai_adk/core/mcp/setup.py +56 -0
- moai_adk/core/mcp/setup_old.py +296 -0
- moai_adk/core/project/backup_utils.py +1 -1
- moai_adk/core/project/checker.py +2 -2
- moai_adk/core/project/detector.py +211 -12
- moai_adk/core/project/initializer.py +85 -15
- moai_adk/core/project/phase_executor.py +76 -13
- moai_adk/core/project/validator.py +13 -13
- 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/tags/__init__.py +86 -0
- moai_adk/core/tags/auto_corrector.py +693 -0
- moai_adk/core/tags/ci_validator.py +463 -0
- moai_adk/core/tags/cli.py +283 -0
- moai_adk/core/tags/generator.py +109 -0
- moai_adk/core/tags/inserter.py +99 -0
- moai_adk/core/tags/mapper.py +126 -0
- moai_adk/core/tags/parser.py +76 -0
- moai_adk/core/tags/policy_validator.py +580 -0
- moai_adk/core/tags/pre_commit_validator.py +421 -0
- moai_adk/core/tags/reporter.py +956 -0
- moai_adk/core/tags/rollback_manager.py +525 -0
- moai_adk/core/tags/tags.py +149 -0
- moai_adk/core/tags/validator.py +897 -0
- moai_adk/core/template/__init__.py +1 -1
- moai_adk/core/template/backup.py +1 -1
- moai_adk/core/template/merger.py +50 -1
- moai_adk/core/template/processor.py +119 -13
- moai_adk/core/template_engine.py +268 -0
- moai_adk/templates/.claude/agents/alfred/backend-expert.md +348 -0
- moai_adk/templates/.claude/agents/alfred/cc-manager.md +209 -944
- moai_adk/templates/.claude/agents/alfred/database-expert.md +352 -0
- moai_adk/templates/.claude/agents/alfred/debug-helper.md +34 -5
- moai_adk/templates/.claude/agents/alfred/devops-expert.md +464 -0
- moai_adk/templates/.claude/agents/alfred/doc-syncer.md +38 -8
- moai_adk/templates/.claude/agents/alfred/format-expert.md +469 -0
- moai_adk/templates/.claude/agents/alfred/frontend-expert.md +357 -0
- moai_adk/templates/.claude/agents/alfred/git-manager.md +128 -9
- moai_adk/templates/.claude/agents/alfred/implementation-planner.md +104 -6
- moai_adk/templates/.claude/agents/alfred/project-manager.md +88 -16
- moai_adk/templates/.claude/agents/alfred/quality-gate.md +36 -9
- moai_adk/templates/.claude/agents/alfred/security-expert.md +270 -0
- moai_adk/templates/.claude/agents/alfred/skill-factory.md +865 -0
- moai_adk/templates/.claude/agents/alfred/spec-builder.md +214 -43
- moai_adk/templates/.claude/agents/alfred/tag-agent.md +111 -9
- moai_adk/templates/.claude/agents/alfred/tdd-implementer.md +309 -160
- moai_adk/templates/.claude/agents/alfred/trust-checker.md +36 -7
- moai_adk/templates/.claude/agents/alfred/ui-ux-expert.md +605 -0
- moai_adk/templates/.claude/commands/alfred/0-project.md +393 -966
- moai_adk/templates/.claude/commands/alfred/1-plan.md +651 -367
- moai_adk/templates/.claude/commands/alfred/2-run.md +388 -241
- moai_adk/templates/.claude/commands/alfred/3-sync.md +1921 -410
- moai_adk/templates/.claude/commands/alfred/9-feedback.md +153 -0
- moai_adk/templates/.claude/commands/alfred/release-new.md +3604 -0
- moai_adk/templates/.claude/hooks/alfred/core/project.py +484 -20
- moai_adk/templates/.claude/hooks/alfred/core/timeout.py +136 -0
- moai_adk/templates/.claude/hooks/alfred/core/ttl_cache.py +108 -0
- moai_adk/templates/.claude/hooks/alfred/core/version_cache.py +198 -0
- moai_adk/templates/.claude/hooks/alfred/handlers/__init__.py +14 -6
- moai_adk/templates/.claude/hooks/alfred/post_tool__enable_streaming_ui.py +50 -0
- moai_adk/templates/.claude/hooks/alfred/post_tool__log_changes.py +93 -0
- moai_adk/templates/.claude/hooks/alfred/post_tool__tag_auto_corrector.py +407 -0
- moai_adk/templates/.claude/hooks/alfred/pre_tool__auto_checkpoint.py +99 -0
- moai_adk/templates/.claude/hooks/alfred/pre_tool__realtime_tag_monitor.py +335 -0
- moai_adk/templates/.claude/hooks/alfred/pre_tool__tag_policy_validator.py +325 -0
- moai_adk/templates/.claude/hooks/alfred/session_end__cleanup.py +93 -0
- moai_adk/templates/.claude/hooks/alfred/session_start__auto_cleanup.py +580 -0
- moai_adk/templates/.claude/hooks/alfred/session_start__show_project_info.py +298 -0
- moai_adk/templates/.claude/hooks/alfred/shared/core/__init__.py +170 -0
- moai_adk/templates/.claude/hooks/alfred/{core → shared/core}/checkpoint.py +3 -3
- moai_adk/templates/.claude/hooks/alfred/{core → shared/core}/context.py +5 -5
- moai_adk/templates/.claude/hooks/alfred/shared/core/project.py +749 -0
- moai_adk/templates/.claude/hooks/alfred/shared/core/tags.py +230 -0
- moai_adk/templates/.claude/hooks/alfred/shared/core/version_cache.py +198 -0
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/__init__.py +21 -0
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/daily_analysis.py +351 -0
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/notification.py +154 -0
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/session.py +174 -0
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/tool.py +87 -0
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/user.py +61 -0
- moai_adk/templates/.claude/hooks/alfred/user_prompt__jit_load_docs.py +111 -0
- moai_adk/templates/.claude/hooks/alfred/utils/__init__.py +1 -0
- moai_adk/templates/.claude/hooks/alfred/utils/hook_config.py +94 -0
- moai_adk/templates/.claude/hooks/alfred/utils/timeout.py +161 -0
- moai_adk/templates/.claude/output-styles/alfred/alfred-moai-adk-beginner.md +267 -0
- moai_adk/templates/.claude/output-styles/alfred/keating-personal-tutor.md +440 -0
- moai_adk/templates/.claude/output-styles/alfred/r2d2-agentic-coding.md +583 -0
- moai_adk/templates/.claude/settings.json +96 -14
- moai_adk/templates/.claude/skills/moai-alfred-agent-guide/SKILL.md +70 -0
- moai_adk/templates/.claude/skills/moai-alfred-agent-guide/examples.md +62 -0
- moai_adk/templates/.claude/skills/moai-alfred-agent-guide/reference.md +242 -0
- moai_adk/templates/.claude/skills/moai-alfred-ask-user-questions/SKILL.md +237 -0
- moai_adk/templates/.claude/skills/moai-alfred-ask-user-questions/examples.md +871 -0
- moai_adk/templates/.claude/skills/moai-alfred-ask-user-questions/reference.md +653 -0
- moai_adk/templates/.claude/skills/moai-alfred-clone-pattern/README.md +162 -0
- moai_adk/templates/.claude/skills/moai-alfred-clone-pattern/SKILL.md +227 -0
- moai_adk/templates/.claude/skills/moai-alfred-clone-pattern/examples.md +354 -0
- moai_adk/templates/.claude/skills/moai-alfred-clone-pattern/reference.md +158 -0
- moai_adk/templates/.claude/skills/moai-alfred-code-reviewer/SKILL.md +179 -79
- moai_adk/templates/.claude/skills/moai-alfred-code-reviewer/examples.md +117 -0
- moai_adk/templates/.claude/skills/moai-alfred-code-reviewer/scripts/pre-review-check.sh +62 -0
- moai_adk/templates/.claude/skills/moai-alfred-config-schema/SKILL.md +132 -0
- moai_adk/templates/.claude/skills/moai-alfred-config-schema/examples.md +28 -0
- moai_adk/templates/.claude/skills/moai-alfred-config-schema/reference.md +444 -0
- moai_adk/templates/.claude/skills/moai-alfred-context-budget/SKILL.md +62 -0
- moai_adk/templates/.claude/skills/moai-alfred-context-budget/examples.md +28 -0
- moai_adk/templates/.claude/skills/moai-alfred-context-budget/reference.md +405 -0
- moai_adk/templates/.claude/skills/moai-alfred-dev-guide/SKILL.md +51 -0
- moai_adk/templates/.claude/skills/moai-alfred-dev-guide/examples.md +355 -0
- moai_adk/templates/.claude/skills/moai-alfred-dev-guide/reference.md +239 -0
- moai_adk/templates/.claude/skills/moai-alfred-expertise-detection/SKILL.md +323 -0
- moai_adk/templates/.claude/skills/moai-alfred-expertise-detection/examples.md +286 -0
- moai_adk/templates/.claude/skills/moai-alfred-expertise-detection/reference.md +126 -0
- moai_adk/templates/.claude/skills/moai-alfred-issue-labels/SKILL.md +229 -0
- moai_adk/templates/.claude/skills/moai-alfred-issue-labels/examples.md +4 -0
- moai_adk/templates/.claude/skills/moai-alfred-issue-labels/reference.md +150 -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-personas/README.md +42 -0
- moai_adk/templates/.claude/skills/moai-alfred-personas/SKILL.md +429 -0
- moai_adk/templates/.claude/skills/moai-alfred-personas/examples.md +520 -0
- moai_adk/templates/.claude/skills/moai-alfred-personas/reference.md +405 -0
- moai_adk/templates/.claude/skills/moai-alfred-practices/SKILL.md +89 -0
- moai_adk/templates/.claude/skills/moai-alfred-practices/examples.md +122 -0
- moai_adk/templates/.claude/skills/moai-alfred-practices/reference.md +369 -0
- moai_adk/templates/.claude/skills/moai-alfred-proactive-suggestions/SKILL.md +508 -0
- moai_adk/templates/.claude/skills/moai-alfred-proactive-suggestions/examples.md +481 -0
- moai_adk/templates/.claude/skills/moai-alfred-proactive-suggestions/reference.md +100 -0
- moai_adk/templates/.claude/skills/moai-alfred-rules/SKILL.md +77 -0
- moai_adk/templates/.claude/skills/moai-alfred-rules/examples.md +265 -0
- moai_adk/templates/.claude/skills/moai-alfred-rules/reference.md +539 -0
- moai_adk/templates/.claude/skills/moai-alfred-session-state/SKILL.md +320 -0
- moai_adk/templates/.claude/skills/moai-alfred-session-state/examples.md +4 -0
- moai_adk/templates/.claude/skills/moai-alfred-session-state/reference.md +84 -0
- moai_adk/templates/.claude/skills/moai-alfred-spec-authoring/README.md +137 -0
- moai_adk/templates/.claude/skills/moai-alfred-spec-authoring/SKILL.md +219 -0
- moai_adk/templates/.claude/skills/moai-alfred-spec-authoring/examples/validate-spec.sh +161 -0
- moai_adk/templates/.claude/skills/moai-alfred-spec-authoring/examples.md +541 -0
- moai_adk/templates/.claude/skills/moai-alfred-spec-authoring/reference.md +622 -0
- moai_adk/templates/.claude/skills/moai-alfred-todowrite-pattern/SKILL.md +19 -0
- moai_adk/templates/.claude/skills/moai-alfred-todowrite-pattern/examples.md +4 -0
- moai_adk/templates/.claude/skills/moai-alfred-todowrite-pattern/reference.md +211 -0
- moai_adk/templates/.claude/skills/moai-alfred-workflow/SKILL.md +288 -0
- moai_adk/templates/.claude/skills/moai-cc-agents/SKILL.md +269 -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 +298 -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 +307 -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 +252 -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 +199 -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 +316 -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 +263 -0
- moai_adk/templates/.claude/skills/moai-cc-settings/templates/settings-complete-template.json +30 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/CHECKLIST.md +482 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/EXAMPLES.md +303 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/INTERACTIVE-DISCOVERY.md +524 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/METADATA.md +477 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/PARALLEL-ANALYSIS-REPORT.md +429 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/PYTHON-VERSION-MATRIX.md +391 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/SKILL-FACTORY-WORKFLOW.md +431 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/SKILL-UPDATE-ADVISOR.md +577 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/SKILL.md +273 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/STEP-BY-STEP-GUIDE.md +466 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/STRUCTURE.md +583 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/WEB-RESEARCH.md +526 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/reference.md +608 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/scripts/generate-structure.sh +328 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/scripts/validate-skill.sh +312 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/templates/SKILL_TEMPLATE.md +245 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/templates/examples-template.md +285 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/templates/reference-template.md +278 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/templates/scripts-template.sh +303 -0
- moai_adk/templates/.claude/skills/moai-cc-skills/SKILL.md +291 -0
- moai_adk/templates/.claude/skills/moai-cc-skills/templates/SKILL-template.md +15 -0
- moai_adk/templates/.claude/skills/moai-change-logger/SKILL.md +563 -0
- moai_adk/templates/.claude/skills/moai-design-systems/SKILL.md +802 -0
- moai_adk/templates/.claude/skills/moai-design-systems/examples.md +1238 -0
- moai_adk/templates/.claude/skills/moai-design-systems/reference.md +673 -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 +102 -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 +265 -64
- moai_adk/templates/.claude/skills/moai-essentials-debug/examples.md +1064 -0
- moai_adk/templates/.claude/skills/moai-essentials-debug/reference.md +1047 -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 +80 -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 +207 -50
- 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/.!11330!examples.md +0 -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-jit-docs-enhanced/SKILL.md +460 -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 +2358 -70
- 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 +2962 -68
- 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 +1898 -70
- 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 +1465 -68
- 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 +2364 -66
- 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 +1630 -69
- 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 +89 -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 +735 -66
- 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 +1834 -70
- 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 +99 -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 +1959 -69
- 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-template/SKILL.md +348 -0
- moai_adk/templates/.claude/skills/moai-lang-template/VARIABLES.md +98 -0
- moai_adk/templates/.claude/skills/moai-lang-typescript/SKILL.md +1230 -66
- 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-learning-optimizer/SKILL.md +575 -0
- moai_adk/templates/.claude/skills/moai-project-batch-questions/README.md +50 -0
- moai_adk/templates/.claude/skills/moai-project-batch-questions/SKILL.md +304 -0
- moai_adk/templates/.claude/skills/moai-project-batch-questions/examples.md +417 -0
- moai_adk/templates/.claude/skills/moai-project-batch-questions/reference.md +704 -0
- moai_adk/templates/.claude/skills/moai-project-config-manager/README.md +87 -0
- moai_adk/templates/.claude/skills/moai-project-config-manager/SKILL.md +552 -0
- moai_adk/templates/.claude/skills/moai-project-config-manager/examples.md +1109 -0
- moai_adk/templates/.claude/skills/moai-project-config-manager/reference.md +514 -0
- moai_adk/templates/.claude/skills/moai-project-config-manager/validate.py +106 -0
- moai_adk/templates/.claude/skills/moai-project-documentation/README.md +11 -0
- moai_adk/templates/.claude/skills/moai-project-documentation/SKILL.md +622 -0
- moai_adk/templates/.claude/skills/moai-project-documentation/examples.md +20 -0
- moai_adk/templates/.claude/skills/moai-project-documentation/reference.md +12 -0
- moai_adk/templates/.claude/skills/moai-project-language-initializer/README.md +152 -0
- moai_adk/templates/.claude/skills/moai-project-language-initializer/SKILL.md +285 -0
- moai_adk/templates/.claude/skills/moai-project-language-initializer/examples.md +333 -0
- moai_adk/templates/.claude/skills/moai-project-language-initializer/reference.md +386 -0
- moai_adk/templates/.claude/skills/moai-project-template-optimizer/README.md +49 -0
- moai_adk/templates/.claude/skills/moai-project-template-optimizer/SKILL.md +319 -0
- moai_adk/templates/.claude/skills/moai-project-template-optimizer/examples.md +58 -0
- moai_adk/templates/.claude/skills/moai-project-template-optimizer/reference.md +123 -0
- moai_adk/templates/.claude/skills/moai-session-info/SKILL.md +314 -0
- moai_adk/templates/.claude/skills/moai-streaming-ui/SKILL.md +552 -0
- moai_adk/templates/.claude/skills/moai-tag-policy-validator/SKILL.md +570 -0
- moai_adk/templates/.git-hooks/pre-commit +66 -0
- moai_adk/templates/.git-hooks/pre-push +255 -0
- moai_adk/templates/.github/workflows/c-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/cpp-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/csharp-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/dart-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/go-tag-validation.yml +130 -0
- moai_adk/templates/.github/workflows/java-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/javascript-tag-validation.yml +135 -0
- moai_adk/templates/.github/workflows/kotlin-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/moai-gitflow.yml +166 -3
- moai_adk/templates/.github/workflows/moai-release-create.yml +100 -0
- moai_adk/templates/.github/workflows/moai-release-pipeline.yml +188 -0
- moai_adk/templates/.github/workflows/php-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/python-tag-validation.yml +118 -0
- moai_adk/templates/.github/workflows/release.yml +118 -0
- moai_adk/templates/.github/workflows/ruby-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/rust-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/shell-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/spec-issue-sync.yml +338 -0
- moai_adk/templates/.github/workflows/swift-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/tag-report.yml +269 -0
- moai_adk/templates/.github/workflows/tag-validation.yml +186 -0
- moai_adk/templates/.github/workflows/typescript-tag-validation.yml +154 -0
- moai_adk/templates/.mcp.json +31 -0
- moai_adk/templates/.moai/config.json +80 -7
- moai_adk/templates/CLAUDE.md +562 -546
- moai_adk/utils/banner.py +5 -5
- moai_adk/utils/common.py +294 -0
- moai_adk/utils/link_validator.py +235 -0
- moai_adk/utils/logger.py +8 -8
- moai_adk/utils/user_experience.py +451 -0
- moai_adk-0.20.1.dist-info/METADATA +233 -0
- moai_adk-0.20.1.dist-info/RECORD +404 -0
- moai_adk/templates/.claude/hooks/alfred/README.md +0 -230
- moai_adk/templates/.claude/hooks/alfred/alfred_hooks.py +0 -156
- moai_adk/templates/.claude/hooks/alfred/core/__init__.py +0 -85
- moai_adk/templates/.claude/hooks/alfred/handlers/notification.py +0 -25
- moai_adk/templates/.claude/hooks/alfred/handlers/session.py +0 -92
- moai_adk/templates/.claude/hooks/alfred/handlers/tool.py +0 -70
- moai_adk/templates/.claude/hooks/alfred/handlers/user.py +0 -41
- moai_adk/templates/.claude/output-styles/alfred/agentic-coding.md +0 -636
- moai_adk/templates/.claude/output-styles/alfred/moai-adk-learning.md +0 -692
- moai_adk/templates/.claude/output-styles/alfred/study-with-alfred.md +0 -470
- moai_adk/templates/.claude/skills/moai-alfred-debugger-pro/SKILL.md +0 -103
- moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/SKILL.md +0 -103
- moai_adk/templates/.claude/skills/moai-alfred-git-workflow/SKILL.md +0 -95
- 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-spec-metadata-validation/SKILL.md +0 -97
- moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/SKILL.md +0 -90
- moai_adk/templates/.claude/skills/moai-alfred-trust-validation/SKILL.md +0 -99
- 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/templates/.github/PULL_REQUEST_TEMPLATE.md +0 -69
- moai_adk/templates/.moai/memory/development-guide.md +0 -344
- moai_adk/templates/.moai/memory/gitflow-protection-policy.md +0 -220
- moai_adk/templates/.moai/memory/spec-metadata.md +0 -356
- moai_adk/templates/.moai/project/product.md +0 -161
- moai_adk/templates/.moai/project/structure.md +0 -156
- moai_adk/templates/.moai/project/tech.md +0 -227
- moai_adk/templates/__init__.py +0 -2
- 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.20.1.dist-info}/WHEEL +0 -0
- {moai_adk-0.4.5.dist-info → moai_adk-0.20.1.dist-info}/entry_points.txt +0 -0
- {moai_adk-0.4.5.dist-info → moai_adk-0.20.1.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
# TodoWrite Auto-Initialization Pattern
|
|
2
|
+
|
|
3
|
+
> **Version**: 0.8.0+
|
|
4
|
+
> **Status**: Active
|
|
5
|
+
> **Updated**: 2025-11-02
|
|
6
|
+
|
|
7
|
+
## Overview
|
|
8
|
+
|
|
9
|
+
**OLD Pattern** (manual initialization):
|
|
10
|
+
```python
|
|
11
|
+
# User had to manually initialize TodoWrite
|
|
12
|
+
TodoWrite([
|
|
13
|
+
{"content": "Analyze project", "status": "pending"},
|
|
14
|
+
{"content": "Create SPEC", "status": "pending"}
|
|
15
|
+
])
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
**NEW Pattern** (auto-initialization from Plan agent):
|
|
19
|
+
```python
|
|
20
|
+
# Plan agent generates task list
|
|
21
|
+
plan = Task(
|
|
22
|
+
subagent_type="Plan",
|
|
23
|
+
prompt="Create structured plan for: {request}"
|
|
24
|
+
)
|
|
25
|
+
|
|
26
|
+
# Alfred auto-initializes TodoWrite from plan
|
|
27
|
+
TodoWrite(plan.tasks) # Automatic from Plan agent output
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Integration with Alfred 4-Step Workflow
|
|
31
|
+
|
|
32
|
+
### Step 1: Intent Understanding
|
|
33
|
+
- **Goal**: Clarify user intent before any action
|
|
34
|
+
- **TodoWrite**: NO initialization
|
|
35
|
+
- **Output**: Clear understanding of requirements
|
|
36
|
+
|
|
37
|
+
### Step 2: Plan Creation (NEW: AUTO-INIT)
|
|
38
|
+
- **Goal**: Analyze tasks and initialize progress tracking
|
|
39
|
+
- **Action**: Invoke Plan Agent to decompose tasks
|
|
40
|
+
- **NEW**: **AUTO-INITIALIZE TodoWrite from Plan output**
|
|
41
|
+
- **Output**: Structured task breakdown + initialized TodoWrite
|
|
42
|
+
|
|
43
|
+
### Step 3: Task Execution
|
|
44
|
+
- **Goal**: Execute tasks with transparent progress tracking
|
|
45
|
+
- **Action**: Execute tasks in order, updating TodoWrite status
|
|
46
|
+
- **TodoWrite**: Update: pending → in_progress → completed
|
|
47
|
+
- **Output**: Completed work, all todos marked done
|
|
48
|
+
|
|
49
|
+
### Step 4: Report & Commit
|
|
50
|
+
- **Goal**: Document work and create git history
|
|
51
|
+
- **Action**: Generate report (if requested) and commit
|
|
52
|
+
- **TodoWrite**: All tasks should be "completed"
|
|
53
|
+
- **Output**: Git history, documentation
|
|
54
|
+
|
|
55
|
+
## Plan Agent Output Format
|
|
56
|
+
|
|
57
|
+
Plan agent should return tasks in TodoWrite-compatible format:
|
|
58
|
+
|
|
59
|
+
```json
|
|
60
|
+
{
|
|
61
|
+
"tasks": [
|
|
62
|
+
{
|
|
63
|
+
"content": "Analyze SPEC requirements",
|
|
64
|
+
"activeForm": "Analyzing SPEC requirements",
|
|
65
|
+
"status": "pending"
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"content": "Write test cases",
|
|
69
|
+
"activeForm": "Writing test cases",
|
|
70
|
+
"status": "pending"
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
"content": "Implement feature",
|
|
74
|
+
"activeForm": "Implementing feature",
|
|
75
|
+
"status": "pending"
|
|
76
|
+
}
|
|
77
|
+
]
|
|
78
|
+
}
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
## Implementation Pattern
|
|
82
|
+
|
|
83
|
+
### In /alfred:1-plan Command
|
|
84
|
+
|
|
85
|
+
```python
|
|
86
|
+
# STEP 2: Plan Creation (with AUTO-INIT)
|
|
87
|
+
plan_result = Task(
|
|
88
|
+
subagent_type="Plan",
|
|
89
|
+
prompt=f"""Create structured plan for: {user_request}
|
|
90
|
+
|
|
91
|
+
Return tasks in this format:
|
|
92
|
+
{{
|
|
93
|
+
"tasks": [
|
|
94
|
+
{{"content": "[imperative verb] [object]", "activeForm": "[present continuous]"}},
|
|
95
|
+
...
|
|
96
|
+
]
|
|
97
|
+
}}
|
|
98
|
+
"""
|
|
99
|
+
)
|
|
100
|
+
|
|
101
|
+
# AUTO-INIT TodoWrite from Plan output
|
|
102
|
+
tasks = [
|
|
103
|
+
{
|
|
104
|
+
"content": task["content"],
|
|
105
|
+
"activeForm": task["activeForm"],
|
|
106
|
+
"status": "pending"
|
|
107
|
+
}
|
|
108
|
+
for task in plan_result.tasks
|
|
109
|
+
]
|
|
110
|
+
|
|
111
|
+
TodoWrite(tasks)
|
|
112
|
+
|
|
113
|
+
# STEP 3: Execute tasks
|
|
114
|
+
for task in plan_result.tasks:
|
|
115
|
+
TodoWrite([{"content": task["content"], "status": "in_progress"}])
|
|
116
|
+
execute_task(task)
|
|
117
|
+
TodoWrite([{"content": task["content"], "status": "completed"}])
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
## Real-World Example
|
|
121
|
+
|
|
122
|
+
### User Request
|
|
123
|
+
```
|
|
124
|
+
/alfred:1-plan "Create user authentication feature"
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### Step 1: Intent Understanding
|
|
128
|
+
- Clarify: Is JWT or OAuth preferred?
|
|
129
|
+
- Ask for scope: Frontend, backend, or both?
|
|
130
|
+
|
|
131
|
+
### Step 2: Plan Creation
|
|
132
|
+
Plan agent returns:
|
|
133
|
+
```json
|
|
134
|
+
{
|
|
135
|
+
"tasks": [
|
|
136
|
+
{"content": "Design authentication architecture", "activeForm": "Designing authentication architecture"},
|
|
137
|
+
{"content": "Create database schema", "activeForm": "Creating database schema"},
|
|
138
|
+
{"content": "Write API endpoints", "activeForm": "Writing API endpoints"},
|
|
139
|
+
{"content": "Build frontend login form", "activeForm": "Building frontend login form"},
|
|
140
|
+
{"content": "Write integration tests", "activeForm": "Writing integration tests"}
|
|
141
|
+
]
|
|
142
|
+
}
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
Alfred AUTO-INITIALIZES:
|
|
146
|
+
```
|
|
147
|
+
☑ Design authentication architecture [pending]
|
|
148
|
+
☑ Create database schema [pending]
|
|
149
|
+
☑ Write API endpoints [pending]
|
|
150
|
+
☑ Build frontend login form [pending]
|
|
151
|
+
☑ Write integration tests [pending]
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
### Step 3: Task Execution
|
|
155
|
+
```
|
|
156
|
+
☑ Design authentication architecture [completed]
|
|
157
|
+
☑ Create database schema [completed]
|
|
158
|
+
☑ Write API endpoints [in_progress]
|
|
159
|
+
...
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
## Benefits
|
|
163
|
+
|
|
164
|
+
1. **Consistency**: All workflows start with same TodoWrite structure
|
|
165
|
+
2. **Visibility**: Users see full task list upfront
|
|
166
|
+
3. **Progress tracking**: Clear pending → in_progress → completed flow
|
|
167
|
+
4. **Resumability**: Saved TodoWrite state enables resume feature (Feature 6)
|
|
168
|
+
5. **No manual work**: Plan agent output directly initializes todos
|
|
169
|
+
|
|
170
|
+
## Backward Compatibility
|
|
171
|
+
|
|
172
|
+
**Existing workflows** that manually call TodoWrite still work:
|
|
173
|
+
```python
|
|
174
|
+
# Old style still works
|
|
175
|
+
TodoWrite([
|
|
176
|
+
{"content": "Task 1", "status": "pending"},
|
|
177
|
+
{"content": "Task 2", "status": "pending"}
|
|
178
|
+
])
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
**Transition strategy**:
|
|
182
|
+
1. New commands use AUTO-INIT pattern (Week 1)
|
|
183
|
+
2. Existing commands continue supporting manual TodoWrite
|
|
184
|
+
3. Deprecation notice added in v0.9.0
|
|
185
|
+
4. Full migration in v1.0.0
|
|
186
|
+
|
|
187
|
+
## Testing Checklist
|
|
188
|
+
|
|
189
|
+
- [ ] Plan agent returns well-formed task list
|
|
190
|
+
- [ ] TodoWrite initializes with all tasks as "pending"
|
|
191
|
+
- [ ] Task execution updates status correctly
|
|
192
|
+
- [ ] Resume feature works with auto-initialized todos
|
|
193
|
+
- [ ] Backward compatibility maintained for manual TodoWrite calls
|
|
194
|
+
|
|
195
|
+
## Migration Guide for Users
|
|
196
|
+
|
|
197
|
+
**Before (v0.7.0)**:
|
|
198
|
+
- Manual TodoWrite initialization
|
|
199
|
+
- Inconsistent task structures
|
|
200
|
+
- No automatic initialization
|
|
201
|
+
|
|
202
|
+
**After (v0.8.0+)**:
|
|
203
|
+
- Automatic TodoWrite from Plan agent
|
|
204
|
+
- Consistent structure across all commands
|
|
205
|
+
- Better progress visibility
|
|
206
|
+
- Supports resume feature
|
|
207
|
+
|
|
208
|
+
**How to upgrade**:
|
|
209
|
+
1. No action required (automatic)
|
|
210
|
+
2. All 3 commands (`/alfred:1-plan`, `/alfred:2-run`, `/alfred:3-sync`) now support auto-init
|
|
211
|
+
3. Manual TodoWrite calls still work (backward compatible)
|
|
@@ -0,0 +1,288 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: moai-alfred-workflow
|
|
3
|
+
version: 1.0.0
|
|
4
|
+
created: 2025-11-02
|
|
5
|
+
updated: 2025-11-02
|
|
6
|
+
status: active
|
|
7
|
+
description: Guide 4-step workflow execution with task tracking and quality gates
|
|
8
|
+
keywords: ['workflow', 'execution', 'planning', 'task-tracking', 'quality']
|
|
9
|
+
allowed-tools:
|
|
10
|
+
- Read
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Alfred 4-Step Workflow Guide
|
|
14
|
+
|
|
15
|
+
## Skill Metadata
|
|
16
|
+
|
|
17
|
+
| Field | Value |
|
|
18
|
+
| ----- | ----- |
|
|
19
|
+
| **Skill Name** | moai-alfred-workflow |
|
|
20
|
+
| **Version** | 1.0.0 (2025-11-02) |
|
|
21
|
+
| **Status** | Active |
|
|
22
|
+
| **Tier** | Alfred |
|
|
23
|
+
| **Purpose** | Guide systematic 4-step workflow execution |
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## What It Does
|
|
28
|
+
|
|
29
|
+
Alfred uses a consistent 4-step workflow for all user requests to ensure clarity, planning, transparency, and traceability.
|
|
30
|
+
|
|
31
|
+
**Key capabilities**:
|
|
32
|
+
- ✅ Intent clarification with questions
|
|
33
|
+
- ✅ Task planning and decomposition
|
|
34
|
+
- ✅ Transparent progress tracking with TodoWrite
|
|
35
|
+
- ✅ Automated reporting and commits
|
|
36
|
+
- ✅ Quality gate validation
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## When to Use
|
|
41
|
+
|
|
42
|
+
**Automatic triggers**:
|
|
43
|
+
- User request received → analyze intent
|
|
44
|
+
- Multiple interpretation possible → use AskUserQuestion
|
|
45
|
+
- Task complexity > 1 step → invoke Plan Agent
|
|
46
|
+
- Executing tasks → activate TodoWrite tracking
|
|
47
|
+
- Task completion → generate report
|
|
48
|
+
|
|
49
|
+
**Manual reference**:
|
|
50
|
+
- Understanding workflow execution
|
|
51
|
+
- Planning multi-step features
|
|
52
|
+
- Learning best practices for task tracking
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## The 4-Step Workflow
|
|
57
|
+
|
|
58
|
+
### Step 1: Intent Understanding
|
|
59
|
+
|
|
60
|
+
**Goal**: Clarify user intent before any action
|
|
61
|
+
|
|
62
|
+
**Actions**:
|
|
63
|
+
- Evaluate request clarity
|
|
64
|
+
- HIGH clarity → Skip to Step 2 directly
|
|
65
|
+
- MEDIUM/LOW clarity → Invoke AskUserQuestion
|
|
66
|
+
- Present 3-5 clear options (not open-ended)
|
|
67
|
+
- Gather user responses before proceeding
|
|
68
|
+
|
|
69
|
+
**When to Ask Questions**:
|
|
70
|
+
- Multiple tech stack choices available
|
|
71
|
+
- Architecture decisions needed
|
|
72
|
+
- Business/UX decisions unclear
|
|
73
|
+
- Ambiguous requirements
|
|
74
|
+
- Existing component impacts unknown
|
|
75
|
+
|
|
76
|
+
**Example**:
|
|
77
|
+
```
|
|
78
|
+
User says: "Add authentication"
|
|
79
|
+
↓
|
|
80
|
+
Clarity = MEDIUM (multiple approaches possible)
|
|
81
|
+
↓
|
|
82
|
+
Ask: "Which authentication method?"
|
|
83
|
+
- Option 1: JWT tokens
|
|
84
|
+
- Option 2: OAuth 2.0
|
|
85
|
+
- Option 3: Session-based
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
### Step 2: Plan Creation
|
|
91
|
+
|
|
92
|
+
**Goal**: Analyze tasks and identify execution strategy
|
|
93
|
+
|
|
94
|
+
**Actions**:
|
|
95
|
+
- Invoke Plan Agent (built-in Claude agent) to:
|
|
96
|
+
- Decompose tasks into structured steps
|
|
97
|
+
- Identify dependencies between tasks
|
|
98
|
+
- Determine single vs parallel execution
|
|
99
|
+
- Estimate file changes and scope
|
|
100
|
+
- Output structured task breakdown
|
|
101
|
+
|
|
102
|
+
**Plan Output Format**:
|
|
103
|
+
```
|
|
104
|
+
Task Breakdown:
|
|
105
|
+
|
|
106
|
+
Phase 1: Preparation (30 mins)
|
|
107
|
+
├─ Task 1: Set up environment
|
|
108
|
+
├─ Task 2: Install dependencies
|
|
109
|
+
└─ Task 3: Create test fixtures
|
|
110
|
+
|
|
111
|
+
Phase 2: Implementation (2 hours)
|
|
112
|
+
├─ Task 4: Core feature (parallel ready)
|
|
113
|
+
├─ Task 5: API endpoints (parallel ready)
|
|
114
|
+
└─ Task 6: Tests (depends on 4, 5)
|
|
115
|
+
|
|
116
|
+
Phase 3: Verification (30 mins)
|
|
117
|
+
├─ Task 7: Integration testing
|
|
118
|
+
├─ Task 8: Documentation
|
|
119
|
+
└─ Task 9: Code review
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
---
|
|
123
|
+
|
|
124
|
+
### Step 3: Task Execution
|
|
125
|
+
|
|
126
|
+
**Goal**: Execute tasks with transparent progress tracking
|
|
127
|
+
|
|
128
|
+
**Actions**:
|
|
129
|
+
1. Initialize TodoWrite with all tasks (status: pending)
|
|
130
|
+
2. For each task:
|
|
131
|
+
- Update TodoWrite: pending → **in_progress**
|
|
132
|
+
- Execute task (call appropriate sub-agent or action)
|
|
133
|
+
- Update TodoWrite: in_progress → **completed**
|
|
134
|
+
3. Handle blockers: Keep in_progress, create new blocking task
|
|
135
|
+
|
|
136
|
+
**TodoWrite Rules**:
|
|
137
|
+
- Each task must have:
|
|
138
|
+
- `content`: Imperative form ("Run tests", "Fix bug")
|
|
139
|
+
- `activeForm`: Present continuous ("Running tests", "Fixing bug")
|
|
140
|
+
- `status`: One of pending/in_progress/completed
|
|
141
|
+
- **EXACTLY ONE** task in_progress at a time (unless Plan Agent approved parallel)
|
|
142
|
+
- Mark completed ONLY when fully done (tests pass, no errors, implementation complete)
|
|
143
|
+
|
|
144
|
+
**Example TodoWrite Progression**:
|
|
145
|
+
|
|
146
|
+
Initial state (all pending):
|
|
147
|
+
```
|
|
148
|
+
1. [pending] Set up environment
|
|
149
|
+
2. [pending] Install dependencies
|
|
150
|
+
3. [pending] Implement core feature
|
|
151
|
+
4. [pending] Write tests
|
|
152
|
+
5. [pending] Documentation
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
After starting Task 1:
|
|
156
|
+
```
|
|
157
|
+
1. [in_progress] Set up environment ← ONE task in progress
|
|
158
|
+
2. [pending] Install dependencies
|
|
159
|
+
3. [pending] Implement core feature
|
|
160
|
+
4. [pending] Write tests
|
|
161
|
+
5. [pending] Documentation
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
After completing Task 1 and starting Task 2:
|
|
165
|
+
```
|
|
166
|
+
1. [completed] Set up environment ✅
|
|
167
|
+
2. [in_progress] Install dependencies ← NOW in progress
|
|
168
|
+
3. [pending] Implement core feature
|
|
169
|
+
4. [pending] Write tests
|
|
170
|
+
5. [pending] Documentation
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
**Handling Blockers**:
|
|
174
|
+
|
|
175
|
+
If blocked during execution:
|
|
176
|
+
```
|
|
177
|
+
Example: Task 4 blocked by missing library
|
|
178
|
+
|
|
179
|
+
Action:
|
|
180
|
+
├─ Keep Task 4 as in_progress
|
|
181
|
+
├─ Create new task: "Install library X"
|
|
182
|
+
├─ Add to todo list
|
|
183
|
+
└─ Start new task first
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
---
|
|
187
|
+
|
|
188
|
+
### Step 4: Report & Commit
|
|
189
|
+
|
|
190
|
+
**Goal**: Document work and create git history
|
|
191
|
+
|
|
192
|
+
**Actions**:
|
|
193
|
+
- **Report Generation**: ONLY if user explicitly requested
|
|
194
|
+
- ❌ Don't auto-generate in project root
|
|
195
|
+
- ✅ OK to generate in `.moai/docs/`, `.moai/reports/`, `.moai/analysis/`
|
|
196
|
+
- **Git Commit**: ALWAYS create commits (mandatory)
|
|
197
|
+
- Call git-manager for all Git operations
|
|
198
|
+
- TDD commits: RED → GREEN → REFACTOR
|
|
199
|
+
- Include Alfred co-authorship
|
|
200
|
+
|
|
201
|
+
**Report Conditions**:
|
|
202
|
+
|
|
203
|
+
```
|
|
204
|
+
User says: "Show me a report"
|
|
205
|
+
↓
|
|
206
|
+
Generate report → .moai/reports/task-completion-001.md
|
|
207
|
+
|
|
208
|
+
User says: "I'm done with feature X"
|
|
209
|
+
↓
|
|
210
|
+
NO auto-report → just create commit
|
|
211
|
+
(Only create report if explicitly requested)
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
**Commit Message Format**:
|
|
215
|
+
```
|
|
216
|
+
feat: Add authentication support
|
|
217
|
+
|
|
218
|
+
- JWT token validation implemented
|
|
219
|
+
- Session management added
|
|
220
|
+
- Rate limiting configured
|
|
221
|
+
|
|
222
|
+
🎩 Generated with Claude Code
|
|
223
|
+
|
|
224
|
+
Co-Authored-By: 🎩 Alfred@[MoAI](https://adk.mo.ai.kr)
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
---
|
|
228
|
+
|
|
229
|
+
## Workflow Validation Checklist
|
|
230
|
+
|
|
231
|
+
Before considering workflow complete:
|
|
232
|
+
- ✅ All steps followed in order (Intent → Plan → Execute → Commit)
|
|
233
|
+
- ✅ No assumptions made (AskUserQuestion used when unclear)
|
|
234
|
+
- ✅ TodoWrite tracks all tasks
|
|
235
|
+
- ✅ Reports only generated on explicit request
|
|
236
|
+
- ✅ Commits created for all completed work
|
|
237
|
+
- ✅ Quality gates passed (tests, linting, type checking)
|
|
238
|
+
|
|
239
|
+
---
|
|
240
|
+
|
|
241
|
+
## Decision Trees
|
|
242
|
+
|
|
243
|
+
### When to Use AskUserQuestion
|
|
244
|
+
|
|
245
|
+
```
|
|
246
|
+
Request clarity unclear?
|
|
247
|
+
├─ YES → Use AskUserQuestion
|
|
248
|
+
│ ├─ Present 3-5 clear options
|
|
249
|
+
│ ├─ Use structured format
|
|
250
|
+
│ └─ Wait for user response
|
|
251
|
+
└─ NO → Proceed to planning
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
### When to Mark Task Completed
|
|
255
|
+
|
|
256
|
+
```
|
|
257
|
+
Task marked in_progress?
|
|
258
|
+
├─ Code implemented → tests pass?
|
|
259
|
+
├─ Tests pass → type checking pass?
|
|
260
|
+
├─ Type checking pass → linting pass?
|
|
261
|
+
└─ All pass → Mark COMPLETED ✅
|
|
262
|
+
└─ NOT complete → Keep in_progress ⏳
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
### When to Create Blocking Task
|
|
266
|
+
|
|
267
|
+
```
|
|
268
|
+
Task execution blocked?
|
|
269
|
+
├─ External dependency missing?
|
|
270
|
+
├─ Pre-requisite not done?
|
|
271
|
+
├─ Unknown issue?
|
|
272
|
+
└─ YES → Create blocking task
|
|
273
|
+
└─ Add to todo list
|
|
274
|
+
└─ Execute blocking task first
|
|
275
|
+
└─ Return to original task
|
|
276
|
+
```
|
|
277
|
+
|
|
278
|
+
---
|
|
279
|
+
|
|
280
|
+
## Key Principles
|
|
281
|
+
|
|
282
|
+
1. **Clarity First**: Never assume intent
|
|
283
|
+
2. **Systematic**: Follow 4 steps in order
|
|
284
|
+
3. **Transparent**: Track all progress visually
|
|
285
|
+
4. **Traceable**: Document every decision
|
|
286
|
+
5. **Quality**: Validate before completion
|
|
287
|
+
|
|
288
|
+
---
|