moai-adk 0.8.0__py3-none-any.whl → 0.34.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- moai_adk/__init__.py +2 -6
- moai_adk/__main__.py +136 -21
- moai_adk/cli/__init__.py +6 -2
- moai_adk/cli/commands/__init__.py +1 -4
- moai_adk/cli/commands/analyze.py +116 -0
- moai_adk/cli/commands/doctor.py +17 -5
- moai_adk/cli/commands/init.py +118 -48
- moai_adk/cli/commands/language.py +248 -0
- moai_adk/cli/commands/status.py +8 -13
- moai_adk/cli/commands/update.py +1978 -149
- moai_adk/cli/main.py +3 -2
- moai_adk/cli/prompts/init_prompts.py +144 -91
- moai_adk/cli/spec_status.py +263 -0
- moai_adk/cli/ui/__init__.py +44 -0
- moai_adk/cli/ui/progress.py +422 -0
- moai_adk/cli/ui/prompts.py +389 -0
- moai_adk/cli/ui/theme.py +129 -0
- moai_adk/cli/worktree/__init__.py +27 -0
- moai_adk/cli/worktree/__main__.py +31 -0
- moai_adk/cli/worktree/cli.py +683 -0
- moai_adk/cli/worktree/exceptions.py +89 -0
- moai_adk/cli/worktree/manager.py +493 -0
- moai_adk/cli/worktree/models.py +65 -0
- moai_adk/cli/worktree/registry.py +422 -0
- moai_adk/core/PHASE2_OPTIMIZATIONS.md +467 -0
- moai_adk/core/__init__.py +0 -1
- moai_adk/core/analysis/__init__.py +9 -0
- moai_adk/core/analysis/session_analyzer.py +400 -0
- moai_adk/core/claude_integration.py +393 -0
- moai_adk/core/command_helpers.py +270 -0
- moai_adk/core/comprehensive_monitoring_system.py +1183 -0
- moai_adk/core/config/__init__.py +6 -0
- moai_adk/core/config/auto_spec_config.py +340 -0
- moai_adk/core/config/migration.py +148 -17
- moai_adk/core/config/unified.py +436 -0
- moai_adk/core/context_manager.py +273 -0
- moai_adk/core/diagnostics/slash_commands.py +0 -1
- moai_adk/core/enterprise_features.py +1404 -0
- moai_adk/core/error_recovery_system.py +1902 -0
- moai_adk/core/event_driven_hook_system.py +1371 -0
- moai_adk/core/git/__init__.py +8 -1
- moai_adk/core/git/branch.py +0 -1
- moai_adk/core/git/branch_manager.py +2 -10
- moai_adk/core/git/checkpoint.py +1 -7
- moai_adk/core/git/commit.py +0 -1
- moai_adk/core/git/conflict_detector.py +413 -0
- moai_adk/core/git/event_detector.py +3 -5
- moai_adk/core/git/manager.py +91 -2
- moai_adk/core/hooks/post_tool_auto_spec_completion.py +901 -0
- moai_adk/core/input_validation_middleware.py +1006 -0
- moai_adk/core/integration/__init__.py +22 -0
- moai_adk/core/integration/engine.py +157 -0
- moai_adk/core/integration/integration_tester.py +226 -0
- moai_adk/core/integration/models.py +88 -0
- moai_adk/core/integration/utils.py +211 -0
- moai_adk/core/issue_creator.py +305 -0
- moai_adk/core/jit_context_loader.py +956 -0
- moai_adk/core/jit_enhanced_hook_manager.py +1987 -0
- moai_adk/core/language_config.py +202 -0
- moai_adk/core/language_config_resolver.py +572 -0
- moai_adk/core/language_validator.py +543 -0
- moai_adk/core/mcp/setup.py +116 -0
- moai_adk/core/merge/__init__.py +9 -0
- moai_adk/core/merge/analyzer.py +481 -0
- moai_adk/core/migration/__init__.py +18 -0
- moai_adk/core/migration/alfred_to_moai_migrator.py +383 -0
- moai_adk/core/migration/backup_manager.py +277 -0
- moai_adk/core/migration/custom_element_scanner.py +358 -0
- moai_adk/core/migration/file_migrator.py +209 -0
- moai_adk/core/migration/interactive_checkbox_ui.py +488 -0
- moai_adk/core/migration/selective_restorer.py +470 -0
- moai_adk/core/migration/template_utils.py +74 -0
- moai_adk/core/migration/user_selection_ui.py +338 -0
- moai_adk/core/migration/version_detector.py +139 -0
- moai_adk/core/migration/version_migrator.py +228 -0
- moai_adk/core/performance/__init__.py +6 -0
- moai_adk/core/performance/cache_system.py +316 -0
- moai_adk/core/performance/parallel_processor.py +116 -0
- moai_adk/core/phase_optimized_hook_scheduler.py +879 -0
- moai_adk/core/project/__init__.py +0 -1
- moai_adk/core/project/backup_utils.py +2 -7
- moai_adk/core/project/checker.py +2 -4
- moai_adk/core/project/detector.py +189 -22
- moai_adk/core/project/initializer.py +218 -27
- moai_adk/core/project/phase_executor.py +416 -44
- moai_adk/core/project/validator.py +7 -32
- moai_adk/core/quality/__init__.py +1 -1
- moai_adk/core/quality/trust_checker.py +37 -101
- moai_adk/core/quality/validators/__init__.py +1 -1
- moai_adk/core/quality/validators/base_validator.py +1 -1
- moai_adk/core/realtime_monitoring_dashboard.py +1724 -0
- moai_adk/core/robust_json_parser.py +611 -0
- moai_adk/core/rollback_manager.py +918 -0
- moai_adk/core/session_manager.py +651 -0
- moai_adk/core/skill_loading_system.py +579 -0
- moai_adk/core/spec/confidence_scoring.py +680 -0
- moai_adk/core/spec/ears_template_engine.py +1247 -0
- moai_adk/core/spec/quality_validator.py +687 -0
- moai_adk/core/spec_status_manager.py +478 -0
- moai_adk/core/template/__init__.py +0 -1
- moai_adk/core/template/backup.py +82 -17
- moai_adk/core/template/config.py +112 -40
- moai_adk/core/template/languages.py +0 -1
- moai_adk/core/template/merger.py +75 -26
- moai_adk/core/template/processor.py +750 -72
- moai_adk/core/template_engine.py +310 -0
- moai_adk/core/template_variable_synchronizer.py +417 -0
- moai_adk/core/unified_permission_manager.py +745 -0
- moai_adk/core/user_behavior_analytics.py +851 -0
- moai_adk/core/version_sync.py +429 -0
- moai_adk/foundation/__init__.py +56 -0
- moai_adk/foundation/backend.py +1027 -0
- moai_adk/foundation/database.py +1115 -0
- moai_adk/foundation/devops.py +1585 -0
- moai_adk/foundation/ears.py +431 -0
- moai_adk/foundation/frontend.py +870 -0
- moai_adk/foundation/git/commit_templates.py +557 -0
- moai_adk/foundation/git.py +376 -0
- moai_adk/foundation/langs.py +484 -0
- moai_adk/foundation/ml_ops.py +1162 -0
- moai_adk/foundation/testing.py +1524 -0
- moai_adk/foundation/trust/trust_principles.py +676 -0
- moai_adk/foundation/trust/validation_checklist.py +1573 -0
- moai_adk/project/__init__.py +0 -0
- moai_adk/project/configuration.py +1084 -0
- moai_adk/project/documentation.py +566 -0
- moai_adk/project/schema.py +447 -0
- moai_adk/statusline/__init__.py +38 -0
- moai_adk/statusline/alfred_detector.py +105 -0
- moai_adk/statusline/config.py +376 -0
- moai_adk/statusline/enhanced_output_style_detector.py +372 -0
- moai_adk/statusline/git_collector.py +190 -0
- moai_adk/statusline/main.py +322 -0
- moai_adk/statusline/metrics_tracker.py +78 -0
- moai_adk/statusline/renderer.py +343 -0
- moai_adk/statusline/update_checker.py +129 -0
- moai_adk/statusline/version_reader.py +741 -0
- moai_adk/templates/.claude/agents/moai/ai-nano-banana.md +670 -0
- moai_adk/templates/.claude/agents/moai/builder-agent.md +474 -0
- moai_adk/templates/.claude/agents/moai/builder-command.md +1172 -0
- moai_adk/templates/.claude/agents/moai/builder-skill.md +666 -0
- moai_adk/templates/.claude/agents/moai/expert-backend.md +899 -0
- moai_adk/templates/.claude/agents/moai/expert-database.md +777 -0
- moai_adk/templates/.claude/agents/moai/expert-debug.md +401 -0
- moai_adk/templates/.claude/agents/moai/expert-devops.md +720 -0
- moai_adk/templates/.claude/agents/moai/expert-frontend.md +734 -0
- moai_adk/templates/.claude/agents/moai/expert-performance.md +657 -0
- moai_adk/templates/.claude/agents/moai/expert-security.md +509 -0
- moai_adk/templates/.claude/agents/moai/expert-testing.md +733 -0
- moai_adk/templates/.claude/agents/moai/expert-uiux.md +1041 -0
- moai_adk/templates/.claude/agents/moai/manager-claude-code.md +432 -0
- moai_adk/templates/.claude/agents/moai/manager-docs.md +573 -0
- moai_adk/templates/.claude/agents/moai/manager-git.md +1020 -0
- moai_adk/templates/.claude/agents/moai/manager-project.md +891 -0
- moai_adk/templates/.claude/agents/moai/manager-quality.md +624 -0
- moai_adk/templates/.claude/agents/moai/manager-spec.md +809 -0
- moai_adk/templates/.claude/agents/moai/manager-strategy.md +780 -0
- moai_adk/templates/.claude/agents/moai/manager-tdd.md +784 -0
- moai_adk/templates/.claude/agents/moai/mcp-context7.md +458 -0
- moai_adk/templates/.claude/agents/moai/mcp-figma.md +1607 -0
- moai_adk/templates/.claude/agents/moai/mcp-notion.md +789 -0
- moai_adk/templates/.claude/agents/moai/mcp-playwright.md +469 -0
- moai_adk/templates/.claude/agents/moai/mcp-sequential-thinking.md +1032 -0
- moai_adk/templates/.claude/commands/moai/0-project.md +1384 -0
- moai_adk/templates/.claude/commands/moai/1-plan.md +1427 -0
- moai_adk/templates/.claude/commands/moai/2-run.md +943 -0
- moai_adk/templates/.claude/commands/moai/3-sync.md +1324 -0
- moai_adk/templates/.claude/commands/moai/9-feedback.md +314 -0
- moai_adk/templates/.claude/hooks/__init__.py +8 -0
- moai_adk/templates/.claude/hooks/moai/__init__.py +8 -0
- moai_adk/templates/.claude/hooks/moai/lib/__init__.py +85 -0
- moai_adk/templates/.claude/hooks/{alfred/core → moai/lib}/checkpoint.py +10 -37
- moai_adk/templates/.claude/hooks/moai/lib/common.py +131 -0
- moai_adk/templates/.claude/hooks/moai/lib/config_manager.py +446 -0
- moai_adk/templates/.claude/hooks/moai/lib/config_validator.py +639 -0
- moai_adk/templates/.claude/hooks/moai/lib/example_config.json +104 -0
- moai_adk/templates/.claude/hooks/moai/lib/git_operations_manager.py +590 -0
- moai_adk/templates/.claude/hooks/moai/lib/language_validator.py +317 -0
- moai_adk/templates/.claude/hooks/moai/lib/models.py +102 -0
- moai_adk/templates/.claude/hooks/moai/lib/path_utils.py +28 -0
- moai_adk/templates/.claude/hooks/moai/lib/project.py +768 -0
- moai_adk/templates/.claude/hooks/moai/lib/test_hooks_improvements.py +443 -0
- moai_adk/templates/.claude/hooks/moai/lib/timeout.py +160 -0
- moai_adk/templates/.claude/hooks/moai/lib/unified_timeout_manager.py +530 -0
- moai_adk/templates/.claude/hooks/moai/session_end__auto_cleanup.py +862 -0
- moai_adk/templates/.claude/hooks/moai/session_start__show_project_info.py +1075 -0
- moai_adk/templates/.claude/output-styles/moai/r2d2.md +560 -0
- moai_adk/templates/.claude/output-styles/moai/yoda.md +359 -0
- moai_adk/templates/.claude/settings.json +78 -50
- moai_adk/templates/.claude/skills/moai-ai-nano-banana/SKILL.md +438 -0
- moai_adk/templates/.claude/skills/moai-ai-nano-banana/examples.md +431 -0
- moai_adk/templates/.claude/skills/moai-docs-generation/SKILL.md +249 -0
- moai_adk/templates/.claude/skills/moai-docs-generation/examples.md +406 -0
- moai_adk/templates/.claude/skills/moai-docs-generation/modules/README.md +44 -0
- moai_adk/templates/.claude/skills/moai-docs-generation/modules/api-documentation.md +130 -0
- moai_adk/templates/.claude/skills/moai-docs-generation/modules/code-documentation.md +152 -0
- moai_adk/templates/.claude/skills/moai-docs-generation/modules/multi-format-output.md +178 -0
- moai_adk/templates/.claude/skills/moai-docs-generation/modules/user-guides.md +147 -0
- moai_adk/templates/.claude/skills/moai-docs-generation/reference.md +328 -0
- moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +313 -283
- moai_adk/templates/.claude/skills/moai-domain-backend/examples.md +610 -1525
- moai_adk/templates/.claude/skills/moai-domain-backend/reference.md +423 -619
- moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +295 -95
- moai_adk/templates/.claude/skills/moai-domain-database/examples.md +817 -16
- moai_adk/templates/.claude/skills/moai-domain-database/modules/README.md +53 -0
- moai_adk/templates/.claude/skills/moai-domain-database/modules/mongodb.md +231 -0
- moai_adk/templates/.claude/skills/moai-domain-database/modules/postgresql.md +169 -0
- moai_adk/templates/.claude/skills/moai-domain-database/modules/redis.md +262 -0
- moai_adk/templates/.claude/skills/moai-domain-database/reference.md +532 -17
- moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +470 -97
- moai_adk/templates/.claude/skills/moai-domain-frontend/examples.md +955 -16
- moai_adk/templates/.claude/skills/moai-domain-frontend/reference.md +651 -18
- moai_adk/templates/.claude/skills/moai-domain-uiux/SKILL.md +455 -0
- moai_adk/templates/.claude/skills/moai-domain-uiux/examples.md +560 -0
- moai_adk/templates/.claude/skills/moai-domain-uiux/modules/accessibility-wcag.md +260 -0
- moai_adk/templates/.claude/skills/moai-domain-uiux/modules/component-architecture.md +228 -0
- moai_adk/templates/.claude/skills/moai-domain-uiux/modules/design-system-tokens.md +405 -0
- moai_adk/templates/.claude/skills/moai-domain-uiux/modules/icon-libraries.md +401 -0
- moai_adk/templates/.claude/skills/moai-domain-uiux/modules/theming-system.md +373 -0
- moai_adk/templates/.claude/skills/moai-domain-uiux/reference.md +243 -0
- moai_adk/templates/.claude/skills/moai-formats-data/SKILL.md +492 -0
- moai_adk/templates/.claude/skills/moai-formats-data/examples.md +804 -0
- moai_adk/templates/.claude/skills/moai-formats-data/modules/README.md +98 -0
- moai_adk/templates/.claude/skills/moai-formats-data/modules/SKILL-MODULARIZATION-TEMPLATE.md +278 -0
- moai_adk/templates/.claude/skills/moai-formats-data/modules/caching-performance.md +459 -0
- moai_adk/templates/.claude/skills/moai-formats-data/modules/data-validation.md +485 -0
- moai_adk/templates/.claude/skills/moai-formats-data/modules/json-optimization.md +374 -0
- moai_adk/templates/.claude/skills/moai-formats-data/modules/toon-encoding.md +308 -0
- moai_adk/templates/.claude/skills/moai-formats-data/reference.md +585 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/SKILL.md +202 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/examples.md +732 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/best-practices-checklist.md +616 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-custom-slash-commands-official.md +729 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-hooks-official.md +560 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-iam-official.md +635 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-memory-official.md +543 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-settings-official.md +663 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-skills-official.md +113 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-sub-agents-official.md +238 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/complete-configuration-guide.md +175 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/skill-examples.md +1674 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/skill-formatting-guide.md +729 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/sub-agents/sub-agent-examples.md +1513 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/sub-agents/sub-agent-formatting-guide.md +1086 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/sub-agents/sub-agent-integration-patterns.md +1100 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference.md +209 -0
- moai_adk/templates/.claude/skills/moai-foundation-context/SKILL.md +441 -0
- moai_adk/templates/.claude/skills/moai-foundation-context/examples.md +1048 -0
- moai_adk/templates/.claude/skills/moai-foundation-context/reference.md +246 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/SKILL.md +420 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/examples.md +358 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/README.md +296 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/agents-reference.md +359 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/commands-reference.md +432 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/delegation-patterns.md +757 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/execution-rules.md +687 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/modular-system.md +665 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/progressive-disclosure.md +649 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/spec-first-tdd.md +864 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/token-optimization.md +708 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/trust-5-framework.md +981 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/reference.md +478 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/SKILL.md +315 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/examples.md +228 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/modules/assumption-matrix.md +80 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/modules/cognitive-bias.md +199 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/modules/first-principles.md +140 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/modules/trade-off-analysis.md +154 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/reference.md +157 -0
- moai_adk/templates/.claude/skills/moai-foundation-quality/SKILL.md +364 -0
- moai_adk/templates/.claude/skills/moai-foundation-quality/examples.md +1232 -0
- moai_adk/templates/.claude/skills/moai-foundation-quality/modules/best-practices.md +261 -0
- moai_adk/templates/.claude/skills/moai-foundation-quality/modules/integration-patterns.md +194 -0
- moai_adk/templates/.claude/skills/moai-foundation-quality/modules/proactive-analysis.md +229 -0
- moai_adk/templates/.claude/skills/moai-foundation-quality/modules/trust5-validation.md +169 -0
- moai_adk/templates/.claude/skills/moai-foundation-quality/reference.md +1266 -0
- moai_adk/templates/.claude/skills/moai-foundation-quality/scripts/quality-gate.sh +668 -0
- moai_adk/templates/.claude/skills/moai-foundation-quality/templates/github-actions-quality.yml +481 -0
- moai_adk/templates/.claude/skills/moai-foundation-quality/templates/quality-config.yaml +519 -0
- moai_adk/templates/.claude/skills/moai-lang-cpp/SKILL.md +618 -93
- moai_adk/templates/.claude/skills/moai-lang-csharp/SKILL.md +446 -91
- moai_adk/templates/.claude/skills/moai-lang-elixir/SKILL.md +612 -0
- moai_adk/templates/.claude/skills/moai-lang-flutter/SKILL.md +477 -0
- moai_adk/templates/.claude/skills/moai-lang-flutter/examples.md +1090 -0
- moai_adk/templates/.claude/skills/moai-lang-flutter/reference.md +686 -0
- moai_adk/templates/.claude/skills/moai-lang-go/SKILL.md +346 -94
- moai_adk/templates/.claude/skills/moai-lang-go/examples.md +906 -16
- moai_adk/templates/.claude/skills/moai-lang-go/reference.md +721 -15
- moai_adk/templates/.claude/skills/moai-lang-java/SKILL.md +352 -91
- moai_adk/templates/.claude/skills/moai-lang-java/examples.md +851 -16
- moai_adk/templates/.claude/skills/moai-lang-java/reference.md +278 -18
- moai_adk/templates/.claude/skills/moai-lang-kotlin/SKILL.md +344 -86
- moai_adk/templates/.claude/skills/moai-lang-kotlin/examples.md +993 -16
- moai_adk/templates/.claude/skills/moai-lang-kotlin/reference.md +549 -18
- moai_adk/templates/.claude/skills/moai-lang-php/SKILL.md +617 -96
- moai_adk/templates/.claude/skills/moai-lang-python/SKILL.md +364 -314
- moai_adk/templates/.claude/skills/moai-lang-python/examples.md +849 -496
- moai_adk/templates/.claude/skills/moai-lang-python/reference.md +731 -243
- moai_adk/templates/.claude/skills/moai-lang-r/SKILL.md +545 -89
- moai_adk/templates/.claude/skills/moai-lang-ruby/SKILL.md +650 -87
- moai_adk/templates/.claude/skills/moai-lang-rust/SKILL.md +341 -93
- moai_adk/templates/.claude/skills/moai-lang-rust/examples.md +646 -16
- moai_adk/templates/.claude/skills/moai-lang-rust/reference.md +491 -18
- moai_adk/templates/.claude/skills/moai-lang-scala/SKILL.md +463 -89
- moai_adk/templates/.claude/skills/moai-lang-scala/examples.md +620 -16
- moai_adk/templates/.claude/skills/moai-lang-scala/reference.md +410 -17
- moai_adk/templates/.claude/skills/moai-lang-swift/SKILL.md +486 -112
- moai_adk/templates/.claude/skills/moai-lang-swift/examples.md +905 -16
- moai_adk/templates/.claude/skills/moai-lang-swift/reference.md +659 -17
- moai_adk/templates/.claude/skills/moai-lang-typescript/SKILL.md +333 -92
- moai_adk/templates/.claude/skills/moai-lang-typescript/examples.md +1076 -16
- moai_adk/templates/.claude/skills/moai-lang-typescript/reference.md +718 -21
- moai_adk/templates/.claude/skills/moai-library-mermaid/SKILL.md +300 -0
- moai_adk/templates/.claude/skills/moai-library-mermaid/advanced-patterns.md +465 -0
- moai_adk/templates/.claude/skills/moai-library-mermaid/examples.md +270 -0
- moai_adk/templates/.claude/skills/moai-library-mermaid/optimization.md +440 -0
- moai_adk/templates/.claude/skills/moai-library-mermaid/reference.md +228 -0
- moai_adk/templates/.claude/skills/moai-library-nextra/SKILL.md +319 -0
- moai_adk/templates/.claude/skills/moai-library-nextra/advanced-patterns.md +336 -0
- moai_adk/templates/.claude/skills/moai-library-nextra/examples.md +592 -0
- moai_adk/templates/.claude/skills/moai-library-nextra/modules/advanced-deployment-patterns.md +182 -0
- moai_adk/templates/.claude/skills/moai-library-nextra/modules/advanced-patterns.md +17 -0
- moai_adk/templates/.claude/skills/moai-library-nextra/modules/configuration.md +57 -0
- moai_adk/templates/.claude/skills/moai-library-nextra/modules/content-architecture-optimization.md +162 -0
- moai_adk/templates/.claude/skills/moai-library-nextra/modules/deployment.md +52 -0
- moai_adk/templates/.claude/skills/moai-library-nextra/modules/framework-core-configuration.md +186 -0
- moai_adk/templates/.claude/skills/moai-library-nextra/modules/i18n-setup.md +55 -0
- moai_adk/templates/.claude/skills/moai-library-nextra/modules/mdx-components.md +52 -0
- moai_adk/templates/.claude/skills/moai-library-nextra/optimization.md +303 -0
- moai_adk/templates/.claude/skills/moai-library-nextra/reference.md +379 -0
- moai_adk/templates/.claude/skills/moai-library-shadcn/SKILL.md +372 -0
- moai_adk/templates/.claude/skills/moai-library-shadcn/examples.md +575 -0
- moai_adk/templates/.claude/skills/moai-library-shadcn/modules/advanced-patterns.md +394 -0
- moai_adk/templates/.claude/skills/moai-library-shadcn/modules/optimization.md +278 -0
- moai_adk/templates/.claude/skills/moai-library-shadcn/modules/shadcn-components.md +457 -0
- moai_adk/templates/.claude/skills/moai-library-shadcn/modules/shadcn-theming.md +373 -0
- moai_adk/templates/.claude/skills/moai-library-shadcn/reference.md +74 -0
- moai_adk/templates/.claude/skills/moai-mcp-figma/SKILL.md +402 -0
- moai_adk/templates/.claude/skills/moai-mcp-figma/advanced-patterns.md +607 -0
- moai_adk/templates/.claude/skills/moai-mcp-notion/SKILL.md +300 -0
- moai_adk/templates/.claude/skills/moai-mcp-notion/advanced-patterns.md +537 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/SKILL.md +290 -0
- moai_adk/templates/.claude/skills/moai-platform-clerk/SKILL.md +390 -0
- moai_adk/templates/.claude/skills/moai-platform-convex/SKILL.md +398 -0
- moai_adk/templates/.claude/skills/moai-platform-firebase-auth/SKILL.md +379 -0
- moai_adk/templates/.claude/skills/moai-platform-firestore/SKILL.md +358 -0
- moai_adk/templates/.claude/skills/moai-platform-neon/SKILL.md +467 -0
- moai_adk/templates/.claude/skills/moai-platform-railway/SKILL.md +377 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/SKILL.md +466 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/SKILL.md +482 -0
- moai_adk/templates/.claude/skills/moai-workflow-jit-docs/SKILL.md +449 -0
- moai_adk/templates/.claude/skills/moai-workflow-jit-docs/advanced-patterns.md +379 -0
- moai_adk/templates/.claude/skills/moai-workflow-jit-docs/examples.md +544 -0
- moai_adk/templates/.claude/skills/moai-workflow-jit-docs/optimization.md +286 -0
- moai_adk/templates/.claude/skills/moai-workflow-jit-docs/reference.md +307 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/README.md +190 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/SKILL.md +390 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/__init__.py +520 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/complete_workflow_demo_fixed.py +574 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/examples/complete_project_setup.py +317 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/examples/complete_workflow_demo.py +663 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/examples/config-migration-example.json +190 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/examples/question-examples.json +175 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/examples/quick_start.py +196 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/examples.md +547 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/__init__.py +17 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/advanced-patterns.md +158 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/ask_user_integration.py +340 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/batch_questions.py +713 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/config_manager.py +538 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/documentation_manager.py +1336 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/language_initializer.py +730 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/migration_manager.py +608 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/template_optimizer.py +1005 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/reference.md +275 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/schemas/config-schema.json +316 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/schemas/tab_schema.json +1462 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/templates/config-template.json +71 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/templates/doc-templates/product-template.md +44 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/templates/doc-templates/structure-template.md +48 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/templates/doc-templates/tech-template.md +92 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/templates/question-templates/config-manager-setup.json +109 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/templates/question-templates/language-initializer.json +228 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/templates/question-templates/menu-project-config.json +130 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/templates/question-templates/project-batch-questions.json +97 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/templates/question-templates/spec-workflow-setup.json +150 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/test_integration_simple.py +436 -0
- moai_adk/templates/.claude/skills/moai-workflow-spec/SKILL.md +534 -0
- moai_adk/templates/.claude/skills/moai-workflow-spec/examples.md +900 -0
- moai_adk/templates/.claude/skills/moai-workflow-spec/reference.md +704 -0
- moai_adk/templates/.claude/skills/moai-workflow-templates/SKILL.md +377 -0
- moai_adk/templates/.claude/skills/moai-workflow-templates/examples.md +552 -0
- moai_adk/templates/.claude/skills/moai-workflow-templates/modules/code-templates.md +124 -0
- moai_adk/templates/.claude/skills/moai-workflow-templates/modules/feedback-templates.md +100 -0
- moai_adk/templates/.claude/skills/moai-workflow-templates/modules/template-optimizer.md +138 -0
- moai_adk/templates/.claude/skills/moai-workflow-templates/reference.md +346 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/LICENSE.txt +202 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/SKILL.md +456 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/advanced-patterns.md +576 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/examples/ai-powered-testing.py +294 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/examples/console_logging.py +35 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/examples/element_discovery.py +40 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/examples/static_html_automation.py +34 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/examples.md +672 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/README.md +220 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/ai-debugging.md +845 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review.md +1416 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization.md +1234 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/smart-refactoring.md +1243 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7.md +1260 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/optimization.md +505 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/reference/playwright-best-practices.md +57 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/reference.md +440 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/scripts/with_server.py +218 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/templates/alfred-integration.md +376 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/workflows/enterprise-testing-workflow.py +571 -0
- moai_adk/templates/.claude/skills/moai-worktree/SKILL.md +411 -0
- moai_adk/templates/.claude/skills/moai-worktree/examples.md +606 -0
- moai_adk/templates/.claude/skills/moai-worktree/modules/integration-patterns.md +982 -0
- moai_adk/templates/.claude/skills/moai-worktree/modules/parallel-development.md +778 -0
- moai_adk/templates/.claude/skills/moai-worktree/modules/worktree-commands.md +646 -0
- moai_adk/templates/.claude/skills/moai-worktree/modules/worktree-management.md +782 -0
- moai_adk/templates/.claude/skills/moai-worktree/reference.md +357 -0
- moai_adk/templates/.git-hooks/pre-commit +128 -0
- moai_adk/templates/.git-hooks/pre-push +365 -0
- moai_adk/templates/.github/workflows/ci-universal.yml +513 -0
- moai_adk/templates/.github/workflows/security-secrets-check.yml +179 -0
- moai_adk/templates/.github/workflows/spec-issue-sync.yml +206 -36
- moai_adk/templates/.gitignore +194 -13
- moai_adk/templates/.mcp.json +31 -0
- moai_adk/templates/.moai/config/config.yaml +58 -0
- moai_adk/templates/.moai/config/questions/_schema.yaml +151 -0
- moai_adk/templates/.moai/config/questions/tab0-init.yaml +251 -0
- moai_adk/templates/.moai/config/questions/tab1-user.yaml +108 -0
- moai_adk/templates/.moai/config/questions/tab2-project.yaml +81 -0
- moai_adk/templates/.moai/config/questions/tab3-git.yaml +634 -0
- moai_adk/templates/.moai/config/questions/tab4-quality.yaml +170 -0
- moai_adk/templates/.moai/config/questions/tab5-system.yaml +87 -0
- moai_adk/templates/.moai/config/sections/git-strategy.yaml +116 -0
- moai_adk/templates/.moai/config/sections/language.yaml +11 -0
- moai_adk/templates/.moai/config/sections/project.yaml +13 -0
- moai_adk/templates/.moai/config/sections/quality.yaml +17 -0
- moai_adk/templates/.moai/config/sections/system.yaml +14 -0
- moai_adk/templates/.moai/config/sections/user.yaml +5 -0
- moai_adk/templates/.moai/config/statusline-config.yaml +92 -0
- moai_adk/templates/.moai/scripts/setup-glm.py +136 -0
- moai_adk/templates/CLAUDE.md +571 -244
- moai_adk/utils/__init__.py +24 -2
- moai_adk/utils/banner.py +9 -13
- moai_adk/utils/common.py +294 -0
- moai_adk/utils/link_validator.py +241 -0
- moai_adk/utils/logger.py +4 -9
- moai_adk/utils/safe_file_reader.py +206 -0
- moai_adk/utils/timeout.py +160 -0
- moai_adk/utils/toon_utils.py +256 -0
- moai_adk/version.py +22 -0
- moai_adk-0.34.0.dist-info/METADATA +2999 -0
- moai_adk-0.34.0.dist-info/RECORD +463 -0
- {moai_adk-0.8.0.dist-info → moai_adk-0.34.0.dist-info}/WHEEL +1 -1
- {moai_adk-0.8.0.dist-info → moai_adk-0.34.0.dist-info}/entry_points.txt +1 -0
- moai_adk/cli/commands/backup.py +0 -80
- moai_adk/templates/.claude/agents/alfred/cc-manager.md +0 -293
- moai_adk/templates/.claude/agents/alfred/debug-helper.md +0 -196
- moai_adk/templates/.claude/agents/alfred/doc-syncer.md +0 -207
- moai_adk/templates/.claude/agents/alfred/git-manager.md +0 -375
- moai_adk/templates/.claude/agents/alfred/implementation-planner.md +0 -343
- moai_adk/templates/.claude/agents/alfred/project-manager.md +0 -246
- moai_adk/templates/.claude/agents/alfred/quality-gate.md +0 -320
- moai_adk/templates/.claude/agents/alfred/skill-factory.md +0 -837
- moai_adk/templates/.claude/agents/alfred/spec-builder.md +0 -272
- moai_adk/templates/.claude/agents/alfred/tag-agent.md +0 -265
- moai_adk/templates/.claude/agents/alfred/tdd-implementer.md +0 -311
- moai_adk/templates/.claude/agents/alfred/trust-checker.md +0 -352
- moai_adk/templates/.claude/commands/alfred/0-project.md +0 -1184
- moai_adk/templates/.claude/commands/alfred/1-plan.md +0 -665
- moai_adk/templates/.claude/commands/alfred/2-run.md +0 -488
- moai_adk/templates/.claude/commands/alfred/3-sync.md +0 -623
- moai_adk/templates/.claude/hooks/alfred/HOOK_SCHEMA_VALIDATION.md +0 -313
- moai_adk/templates/.claude/hooks/alfred/README.md +0 -230
- moai_adk/templates/.claude/hooks/alfred/alfred_hooks.py +0 -174
- moai_adk/templates/.claude/hooks/alfred/core/__init__.py +0 -170
- moai_adk/templates/.claude/hooks/alfred/core/context.py +0 -67
- moai_adk/templates/.claude/hooks/alfred/core/project.py +0 -416
- moai_adk/templates/.claude/hooks/alfred/core/tags.py +0 -198
- moai_adk/templates/.claude/hooks/alfred/handlers/__init__.py +0 -21
- moai_adk/templates/.claude/hooks/alfred/handlers/notification.py +0 -25
- moai_adk/templates/.claude/hooks/alfred/handlers/session.py +0 -161
- moai_adk/templates/.claude/hooks/alfred/handlers/tool.py +0 -90
- moai_adk/templates/.claude/hooks/alfred/handlers/user.py +0 -42
- moai_adk/templates/.claude/hooks/alfred/test_hook_output.py +0 -175
- moai_adk/templates/.claude/output-styles/alfred/agentic-coding.md +0 -640
- moai_adk/templates/.claude/output-styles/alfred/moai-adk-learning.md +0 -696
- moai_adk/templates/.claude/output-styles/alfred/study-with-alfred.md +0 -474
- moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-alfred-git-workflow/SKILL.md +0 -122
- moai_adk/templates/.claude/skills/moai-alfred-git-workflow/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-alfred-git-workflow/reference.md +0 -29
- moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/SKILL.md +0 -237
- moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/examples.md +0 -615
- moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/reference.md +0 -653
- moai_adk/templates/.claude/skills/moai-alfred-language-detection/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-alfred-language-detection/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-alfred-language-detection/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-alfred-trust-validation/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-alfred-trust-validation/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-alfred-trust-validation/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-cc-agents/SKILL.md +0 -269
- moai_adk/templates/.claude/skills/moai-cc-agents/templates/agent-template.md +0 -32
- moai_adk/templates/.claude/skills/moai-cc-claude-md/SKILL.md +0 -298
- moai_adk/templates/.claude/skills/moai-cc-claude-md/templates/CLAUDE-template.md +0 -26
- moai_adk/templates/.claude/skills/moai-cc-commands/SKILL.md +0 -307
- moai_adk/templates/.claude/skills/moai-cc-commands/templates/command-template.md +0 -21
- moai_adk/templates/.claude/skills/moai-cc-hooks/SKILL.md +0 -252
- moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/pre-bash-check.sh +0 -19
- moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/preserve-permissions.sh +0 -19
- moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/validate-bash-command.py +0 -24
- moai_adk/templates/.claude/skills/moai-cc-mcp-plugins/SKILL.md +0 -199
- moai_adk/templates/.claude/skills/moai-cc-mcp-plugins/templates/settings-mcp-template.json +0 -39
- moai_adk/templates/.claude/skills/moai-cc-memory/SKILL.md +0 -316
- moai_adk/templates/.claude/skills/moai-cc-memory/templates/session-summary-template.md +0 -18
- moai_adk/templates/.claude/skills/moai-cc-settings/SKILL.md +0 -263
- moai_adk/templates/.claude/skills/moai-cc-settings/templates/settings-complete-template.json +0 -30
- moai_adk/templates/.claude/skills/moai-cc-skills/SKILL.md +0 -291
- moai_adk/templates/.claude/skills/moai-cc-skills/templates/SKILL-template.md +0 -15
- moai_adk/templates/.claude/skills/moai-domain-cli-tool/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-domain-cli-tool/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-domain-cli-tool/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-domain-data-science/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-domain-data-science/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-domain-data-science/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-domain-devops/SKILL.md +0 -124
- moai_adk/templates/.claude/skills/moai-domain-devops/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-domain-devops/reference.md +0 -31
- moai_adk/templates/.claude/skills/moai-domain-ml/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-domain-ml/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-domain-ml/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-domain-mobile-app/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-domain-mobile-app/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-domain-mobile-app/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-domain-security/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-domain-security/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-domain-security/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-domain-web-api/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-domain-web-api/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-domain-web-api/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-essentials-debug/SKILL.md +0 -303
- moai_adk/templates/.claude/skills/moai-essentials-debug/examples.md +0 -1064
- moai_adk/templates/.claude/skills/moai-essentials-debug/reference.md +0 -1047
- moai_adk/templates/.claude/skills/moai-essentials-perf/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-essentials-perf/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-essentials-perf/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-essentials-refactor/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-essentials-refactor/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-essentials-refactor/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-essentials-review/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-essentials-review/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-essentials-review/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-foundation-ears/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-foundation-ears/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-foundation-ears/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-foundation-git/SKILL.md +0 -122
- moai_adk/templates/.claude/skills/moai-foundation-git/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-foundation-git/reference.md +0 -29
- moai_adk/templates/.claude/skills/moai-foundation-langs/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-foundation-langs/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-foundation-langs/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-foundation-specs/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-foundation-specs/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-foundation-specs/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-foundation-tags/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-foundation-tags/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-foundation-tags/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-foundation-trust/SKILL.md +0 -307
- moai_adk/templates/.claude/skills/moai-foundation-trust/examples.md +0 -0
- moai_adk/templates/.claude/skills/moai-foundation-trust/reference.md +0 -1099
- moai_adk/templates/.claude/skills/moai-lang-c/SKILL.md +0 -124
- moai_adk/templates/.claude/skills/moai-lang-c/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-c/reference.md +0 -31
- moai_adk/templates/.claude/skills/moai-lang-cpp/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-cpp/reference.md +0 -31
- moai_adk/templates/.claude/skills/moai-lang-csharp/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-csharp/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-lang-dart/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-lang-dart/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-dart/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-lang-javascript/SKILL.md +0 -125
- moai_adk/templates/.claude/skills/moai-lang-javascript/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-javascript/reference.md +0 -32
- moai_adk/templates/.claude/skills/moai-lang-php/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-php/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-lang-r/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-r/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-lang-ruby/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-ruby/reference.md +0 -31
- moai_adk/templates/.claude/skills/moai-lang-shell/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-lang-shell/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-shell/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-lang-sql/SKILL.md +0 -124
- moai_adk/templates/.claude/skills/moai-lang-sql/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-sql/reference.md +0 -31
- moai_adk/templates/.claude/skills/moai-skill-factory/CHECKLIST.md +0 -482
- moai_adk/templates/.claude/skills/moai-skill-factory/EXAMPLES.md +0 -278
- moai_adk/templates/.claude/skills/moai-skill-factory/INTERACTIVE-DISCOVERY.md +0 -524
- moai_adk/templates/.claude/skills/moai-skill-factory/METADATA.md +0 -477
- moai_adk/templates/.claude/skills/moai-skill-factory/PARALLEL-ANALYSIS-REPORT.md +0 -429
- moai_adk/templates/.claude/skills/moai-skill-factory/PYTHON-VERSION-MATRIX.md +0 -391
- moai_adk/templates/.claude/skills/moai-skill-factory/SKILL-FACTORY-WORKFLOW.md +0 -431
- moai_adk/templates/.claude/skills/moai-skill-factory/SKILL-UPDATE-ADVISOR.md +0 -577
- moai_adk/templates/.claude/skills/moai-skill-factory/SKILL.md +0 -271
- moai_adk/templates/.claude/skills/moai-skill-factory/STEP-BY-STEP-GUIDE.md +0 -466
- moai_adk/templates/.claude/skills/moai-skill-factory/STRUCTURE.md +0 -583
- moai_adk/templates/.claude/skills/moai-skill-factory/WEB-RESEARCH.md +0 -526
- moai_adk/templates/.claude/skills/moai-skill-factory/reference.md +0 -465
- moai_adk/templates/.claude/skills/moai-skill-factory/scripts/generate-structure.sh +0 -328
- moai_adk/templates/.claude/skills/moai-skill-factory/scripts/validate-skill.sh +0 -312
- moai_adk/templates/.claude/skills/moai-skill-factory/templates/SKILL_TEMPLATE.md +0 -245
- moai_adk/templates/.claude/skills/moai-skill-factory/templates/examples-template.md +0 -285
- moai_adk/templates/.claude/skills/moai-skill-factory/templates/reference-template.md +0 -278
- moai_adk/templates/.claude/skills/moai-skill-factory/templates/scripts-template.sh +0 -303
- moai_adk/templates/.claude/skills/moai-spec-authoring/README.md +0 -137
- moai_adk/templates/.claude/skills/moai-spec-authoring/SKILL.md +0 -218
- moai_adk/templates/.claude/skills/moai-spec-authoring/examples/validate-spec.sh +0 -161
- moai_adk/templates/.claude/skills/moai-spec-authoring/examples.md +0 -541
- moai_adk/templates/.claude/skills/moai-spec-authoring/reference.md +0 -622
- moai_adk/templates/.github/ISSUE_TEMPLATE/spec.yml +0 -176
- moai_adk/templates/.github/PULL_REQUEST_TEMPLATE.md +0 -69
- moai_adk/templates/.github/workflows/moai-gitflow.yml +0 -256
- moai_adk/templates/.moai/config.json +0 -96
- moai_adk/templates/.moai/memory/CLAUDE-AGENTS-GUIDE.md +0 -208
- moai_adk/templates/.moai/memory/CLAUDE-PRACTICES.md +0 -369
- moai_adk/templates/.moai/memory/CLAUDE-RULES.md +0 -539
- moai_adk/templates/.moai/memory/CONFIG-SCHEMA.md +0 -444
- 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/SKILLS-DESCRIPTION-POLICY.md +0 -218
- moai_adk/templates/.moai/memory/SPEC-METADATA.md +0 -356
- moai_adk/templates/.moai/memory/config-schema.md +0 -444
- 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.8.0.dist-info/METADATA +0 -1722
- moai_adk-0.8.0.dist-info/RECORD +0 -282
- {moai_adk-0.8.0.dist-info → moai_adk-0.34.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,615 +0,0 @@
|
|
|
1
|
-
# Alfred Interactive Questions - Real-World Examples
|
|
2
|
-
|
|
3
|
-
> **Main Skill**: [SKILL.md](SKILL.md)
|
|
4
|
-
> **API Reference**: [reference.md](reference.md)
|
|
5
|
-
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
## Example 1: Vague Feature Request
|
|
9
|
-
|
|
10
|
-
### Scenario
|
|
11
|
-
|
|
12
|
-
**User**: "Add a completion page for the competition."
|
|
13
|
-
|
|
14
|
-
**Alfred detects ambiguity**:
|
|
15
|
-
- Where should it live? (new route vs modify existing)
|
|
16
|
-
- Who can access it? (public vs authenticated)
|
|
17
|
-
- What should it display? (results vs simple message)
|
|
18
|
-
|
|
19
|
-
### AskUserQuestion Invocation
|
|
20
|
-
|
|
21
|
-
```typescript
|
|
22
|
-
const answer = await AskUserQuestion({
|
|
23
|
-
questions: [
|
|
24
|
-
{
|
|
25
|
-
question: "How should the completion page be implemented?",
|
|
26
|
-
header: "Approach",
|
|
27
|
-
multiSelect: false,
|
|
28
|
-
options: [
|
|
29
|
-
{
|
|
30
|
-
label: "New public route",
|
|
31
|
-
description: "New page at /competition-complete, visible to all visitors."
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
label: "Modify existing page",
|
|
35
|
-
description: "Add conditional logic to existing /end page based on competition status."
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
label: "Environment flag",
|
|
39
|
-
description: "Set NEXT_PUBLIC_COMPETITION_CLOSED=true to show message on homepage."
|
|
40
|
-
}
|
|
41
|
-
]
|
|
42
|
-
},
|
|
43
|
-
{
|
|
44
|
-
question: "For logged-in participants, what should they see?",
|
|
45
|
-
header: "Behavior",
|
|
46
|
-
multiSelect: false,
|
|
47
|
-
options: [
|
|
48
|
-
{
|
|
49
|
-
label: "Show full results",
|
|
50
|
-
description: "Redirect to /end page with their submission history and rankings."
|
|
51
|
-
},
|
|
52
|
-
{
|
|
53
|
-
label: "Show simple message",
|
|
54
|
-
description: "Display 'Competition concluded. Thank you for participating!' only."
|
|
55
|
-
}
|
|
56
|
-
]
|
|
57
|
-
}
|
|
58
|
-
]
|
|
59
|
-
});
|
|
60
|
-
|
|
61
|
-
// Result:
|
|
62
|
-
// {
|
|
63
|
-
// "Approach": "New public route",
|
|
64
|
-
// "Behavior": "Show full results"
|
|
65
|
-
// }
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
### Outcome
|
|
69
|
-
|
|
70
|
-
Alfred now knows **exactly** what to build:
|
|
71
|
-
- Create `/app/competition-complete/page.tsx`
|
|
72
|
-
- New public route
|
|
73
|
-
- Logged-in users redirected to `/end` page with full results
|
|
74
|
-
- Non-logged-in users see simple completion message
|
|
75
|
-
|
|
76
|
-
---
|
|
77
|
-
|
|
78
|
-
## Example 2: Implementation Approach (Pattern 1)
|
|
79
|
-
|
|
80
|
-
### Scenario
|
|
81
|
-
|
|
82
|
-
**User**: "Add i18n support to the app."
|
|
83
|
-
|
|
84
|
-
**Alfred detects**:
|
|
85
|
-
- Multiple valid i18n libraries exist
|
|
86
|
-
- Each has different trade-offs (DX, complexity, performance)
|
|
87
|
-
- User hasn't specified preference
|
|
88
|
-
|
|
89
|
-
### AskUserQuestion Invocation
|
|
90
|
-
|
|
91
|
-
```typescript
|
|
92
|
-
const answer = await AskUserQuestion({
|
|
93
|
-
questions: [{
|
|
94
|
-
question: "Which i18n library should we use for Next.js 15?",
|
|
95
|
-
header: "Library",
|
|
96
|
-
multiSelect: false,
|
|
97
|
-
options: [
|
|
98
|
-
{
|
|
99
|
-
label: "next-intl",
|
|
100
|
-
description: "Native Next.js 15 support, best DX, automatic type safety."
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
label: "react-i18next",
|
|
104
|
-
description: "Most popular, flexible, more setup required, larger bundle."
|
|
105
|
-
},
|
|
106
|
-
{
|
|
107
|
-
label: "Format.js",
|
|
108
|
-
description: "ICU message format, powerful pluralization, steeper learning curve."
|
|
109
|
-
}
|
|
110
|
-
]
|
|
111
|
-
}]
|
|
112
|
-
});
|
|
113
|
-
|
|
114
|
-
// Result: { "Library": "next-intl" }
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
### Outcome
|
|
118
|
-
|
|
119
|
-
Alfred proceeds with `next-intl`, avoiding:
|
|
120
|
-
- ❌ Guessing wrong library
|
|
121
|
-
- ❌ Implementing then refactoring later
|
|
122
|
-
- ❌ 3-5 rounds of "actually, can we use X instead?"
|
|
123
|
-
|
|
124
|
-
---
|
|
125
|
-
|
|
126
|
-
## Example 3: Risky Operation Confirmation (Pattern 2)
|
|
127
|
-
|
|
128
|
-
### Scenario
|
|
129
|
-
|
|
130
|
-
**User**: "Delete all test users from production database."
|
|
131
|
-
|
|
132
|
-
**Alfred detects**:
|
|
133
|
-
- Destructive operation (data loss)
|
|
134
|
-
- Production environment (high risk)
|
|
135
|
-
- Explicit confirmation required
|
|
136
|
-
|
|
137
|
-
### AskUserQuestion Invocation
|
|
138
|
-
|
|
139
|
-
```typescript
|
|
140
|
-
const answer = await AskUserQuestion({
|
|
141
|
-
questions: [{
|
|
142
|
-
question: "⚠️ This will PERMANENTLY delete 50 test users from PRODUCTION database. Are you sure?",
|
|
143
|
-
header: "Confirm",
|
|
144
|
-
multiSelect: false,
|
|
145
|
-
options: [
|
|
146
|
-
{
|
|
147
|
-
label: "No, cancel",
|
|
148
|
-
description: "Abort operation. No changes will be made."
|
|
149
|
-
},
|
|
150
|
-
{
|
|
151
|
-
label: "Yes, proceed",
|
|
152
|
-
description: "🚨 IRREVERSIBLE. Delete 50 users now."
|
|
153
|
-
}
|
|
154
|
-
]
|
|
155
|
-
}]
|
|
156
|
-
});
|
|
157
|
-
|
|
158
|
-
// Result: { "Confirm": "No, cancel" } (user cancelled)
|
|
159
|
-
```
|
|
160
|
-
|
|
161
|
-
### Outcome
|
|
162
|
-
|
|
163
|
-
Alfred **aborts** operation without executing destructive command. User explicitly chose to cancel after seeing full risk disclosure.
|
|
164
|
-
|
|
165
|
-
---
|
|
166
|
-
|
|
167
|
-
## Example 4: Multi-Select Feature Selection (Pattern 4)
|
|
168
|
-
|
|
169
|
-
### Scenario
|
|
170
|
-
|
|
171
|
-
**User**: "Set up testing for the new project."
|
|
172
|
-
|
|
173
|
-
**Alfred detects**:
|
|
174
|
-
- Multiple testing frameworks can coexist
|
|
175
|
-
- User might want unit + E2E + visual testing
|
|
176
|
-
- No explicit preference stated
|
|
177
|
-
|
|
178
|
-
### AskUserQuestion Invocation
|
|
179
|
-
|
|
180
|
-
```typescript
|
|
181
|
-
const answer = await AskUserQuestion({
|
|
182
|
-
questions: [{
|
|
183
|
-
question: "Which testing frameworks should we set up? (Select all that apply)",
|
|
184
|
-
header: "Test Tools",
|
|
185
|
-
multiSelect: true, // Multiple selections allowed
|
|
186
|
-
options: [
|
|
187
|
-
{
|
|
188
|
-
label: "Unit tests (Vitest)",
|
|
189
|
-
description: "Fast, modern, Vite-native. ~2min setup."
|
|
190
|
-
},
|
|
191
|
-
{
|
|
192
|
-
label: "E2E tests (Playwright)",
|
|
193
|
-
description: "Browser automation, cross-browser. ~10min setup."
|
|
194
|
-
},
|
|
195
|
-
{
|
|
196
|
-
label: "Visual regression",
|
|
197
|
-
description: "Screenshot comparison with Playwright. ~5min setup."
|
|
198
|
-
}
|
|
199
|
-
]
|
|
200
|
-
}]
|
|
201
|
-
});
|
|
202
|
-
|
|
203
|
-
// Result: { "Test Tools": ["Unit tests (Vitest)", "E2E tests (Playwright)"] }
|
|
204
|
-
```
|
|
205
|
-
|
|
206
|
-
### Outcome
|
|
207
|
-
|
|
208
|
-
Alfred installs and configures:
|
|
209
|
-
- ✅ Vitest for unit tests
|
|
210
|
-
- ✅ Playwright for E2E tests
|
|
211
|
-
- ❌ Skips visual regression (not selected)
|
|
212
|
-
|
|
213
|
-
---
|
|
214
|
-
|
|
215
|
-
## Example 5: Sequential Questions (Conditional Flow, Pattern 5)
|
|
216
|
-
|
|
217
|
-
### Scenario
|
|
218
|
-
|
|
219
|
-
**User**: "Add authentication to the app."
|
|
220
|
-
|
|
221
|
-
**Alfred detects**:
|
|
222
|
-
- First decision: Enable auth? (Yes/No)
|
|
223
|
-
- Second decision: If yes, which provider? (depends on Q1)
|
|
224
|
-
|
|
225
|
-
### AskUserQuestion Invocation (Part 1)
|
|
226
|
-
|
|
227
|
-
```typescript
|
|
228
|
-
// Question 1: Enable authentication?
|
|
229
|
-
const q1 = await AskUserQuestion({
|
|
230
|
-
questions: [{
|
|
231
|
-
question: "Should we enable user authentication?",
|
|
232
|
-
header: "Auth",
|
|
233
|
-
multiSelect: false,
|
|
234
|
-
options: [
|
|
235
|
-
{
|
|
236
|
-
label: "Yes",
|
|
237
|
-
description: "User login required for protected routes."
|
|
238
|
-
},
|
|
239
|
-
{
|
|
240
|
-
label: "No",
|
|
241
|
-
description: "Public access only, no authentication."
|
|
242
|
-
}
|
|
243
|
-
]
|
|
244
|
-
}]
|
|
245
|
-
});
|
|
246
|
-
|
|
247
|
-
// Result: { "Auth": "Yes" }
|
|
248
|
-
```
|
|
249
|
-
|
|
250
|
-
### AskUserQuestion Invocation (Part 2, Conditional)
|
|
251
|
-
|
|
252
|
-
```typescript
|
|
253
|
-
// Question 2: Only ask if Q1 = "Yes"
|
|
254
|
-
if (q1["Auth"] === "Yes") {
|
|
255
|
-
const q2 = await AskUserQuestion({
|
|
256
|
-
questions: [{
|
|
257
|
-
question: "Which authentication provider?",
|
|
258
|
-
header: "Provider",
|
|
259
|
-
multiSelect: false,
|
|
260
|
-
options: [
|
|
261
|
-
{
|
|
262
|
-
label: "JWT + email",
|
|
263
|
-
description: "Traditional email/password with JWT tokens. ~30min setup."
|
|
264
|
-
},
|
|
265
|
-
{
|
|
266
|
-
label: "OAuth (Google)",
|
|
267
|
-
description: "Third-party login via Google. Faster for users. ~20min setup."
|
|
268
|
-
},
|
|
269
|
-
{
|
|
270
|
-
label: "SAML",
|
|
271
|
-
description: "Enterprise SSO (for corporate environments). ~2hr setup."
|
|
272
|
-
}
|
|
273
|
-
]
|
|
274
|
-
}]
|
|
275
|
-
});
|
|
276
|
-
|
|
277
|
-
// Result: { "Provider": "OAuth (Google)" }
|
|
278
|
-
}
|
|
279
|
-
```
|
|
280
|
-
|
|
281
|
-
### Outcome
|
|
282
|
-
|
|
283
|
-
Alfred implements:
|
|
284
|
-
- ✅ Authentication enabled
|
|
285
|
-
- ✅ OAuth with Google provider
|
|
286
|
-
- ✅ Skips JWT setup (not selected)
|
|
287
|
-
- ❌ If Q1 was "No", Q2 never asked (saves time)
|
|
288
|
-
|
|
289
|
-
---
|
|
290
|
-
|
|
291
|
-
## Example 6: Option Grouping (Hierarchical Selection)
|
|
292
|
-
|
|
293
|
-
### Scenario
|
|
294
|
-
|
|
295
|
-
**User**: "Set up a database for the project."
|
|
296
|
-
|
|
297
|
-
**Alfred detects**:
|
|
298
|
-
- 8+ database options exist
|
|
299
|
-
- Too many for one question → choice paralysis
|
|
300
|
-
- Need hierarchical selection: Category → Specific
|
|
301
|
-
|
|
302
|
-
### AskUserQuestion Invocation (Step 1: Category)
|
|
303
|
-
|
|
304
|
-
```typescript
|
|
305
|
-
// Step 1: Narrow by database type
|
|
306
|
-
const category = await AskUserQuestion({
|
|
307
|
-
questions: [{
|
|
308
|
-
question: "What type of database does your project need?",
|
|
309
|
-
header: "DB Type",
|
|
310
|
-
multiSelect: false,
|
|
311
|
-
options: [
|
|
312
|
-
{
|
|
313
|
-
label: "Relational (SQL)",
|
|
314
|
-
description: "PostgreSQL, MySQL, SQLite. ACID guarantees, structured data."
|
|
315
|
-
},
|
|
316
|
-
{
|
|
317
|
-
label: "Document (NoSQL)",
|
|
318
|
-
description: "MongoDB, CouchDB. Flexible schema, JSON documents."
|
|
319
|
-
},
|
|
320
|
-
{
|
|
321
|
-
label: "Key-Value",
|
|
322
|
-
description: "Redis, Memcached. In-memory cache, fast reads."
|
|
323
|
-
}
|
|
324
|
-
]
|
|
325
|
-
}]
|
|
326
|
-
});
|
|
327
|
-
|
|
328
|
-
// Result: { "DB Type": "Relational (SQL)" }
|
|
329
|
-
```
|
|
330
|
-
|
|
331
|
-
### AskUserQuestion Invocation (Step 2: Specific Choice)
|
|
332
|
-
|
|
333
|
-
```typescript
|
|
334
|
-
// Step 2: Specific database within category
|
|
335
|
-
if (category["DB Type"] === "Relational (SQL)") {
|
|
336
|
-
const specific = await AskUserQuestion({
|
|
337
|
-
questions: [{
|
|
338
|
-
question: "Which SQL database?",
|
|
339
|
-
header: "SQL DB",
|
|
340
|
-
multiSelect: false,
|
|
341
|
-
options: [
|
|
342
|
-
{
|
|
343
|
-
label: "PostgreSQL",
|
|
344
|
-
description: "Advanced features (JSON, full-text search, extensions). Industry standard."
|
|
345
|
-
},
|
|
346
|
-
{
|
|
347
|
-
label: "MySQL",
|
|
348
|
-
description: "Most popular, wide hosting support, good performance."
|
|
349
|
-
},
|
|
350
|
-
{
|
|
351
|
-
label: "SQLite",
|
|
352
|
-
description: "Embedded, serverless, single-file. Good for prototypes and small apps."
|
|
353
|
-
}
|
|
354
|
-
]
|
|
355
|
-
}]
|
|
356
|
-
});
|
|
357
|
-
|
|
358
|
-
// Result: { "SQL DB": "PostgreSQL" }
|
|
359
|
-
}
|
|
360
|
-
```
|
|
361
|
-
|
|
362
|
-
### Outcome
|
|
363
|
-
|
|
364
|
-
Alfred avoids:
|
|
365
|
-
- ❌ Presenting 8 options at once (choice paralysis)
|
|
366
|
-
- ❌ User confusion ("What's the difference between MariaDB and MySQL?")
|
|
367
|
-
|
|
368
|
-
Instead:
|
|
369
|
-
- ✅ First narrows to category (3 options)
|
|
370
|
-
- ✅ Then presents specific choices within category (3 options)
|
|
371
|
-
- ✅ Clear, manageable decision flow
|
|
372
|
-
|
|
373
|
-
---
|
|
374
|
-
|
|
375
|
-
## Example 7: Batch Related Questions
|
|
376
|
-
|
|
377
|
-
### Scenario
|
|
378
|
-
|
|
379
|
-
**User**: "Initialize a new Next.js project with best practices."
|
|
380
|
-
|
|
381
|
-
**Alfred detects**:
|
|
382
|
-
- Multiple independent decisions needed
|
|
383
|
-
- All decisions are related to project setup
|
|
384
|
-
- Can ask 3 questions at once (no dependencies)
|
|
385
|
-
|
|
386
|
-
### AskUserQuestion Invocation
|
|
387
|
-
|
|
388
|
-
```typescript
|
|
389
|
-
const answers = await AskUserQuestion({
|
|
390
|
-
questions: [
|
|
391
|
-
{
|
|
392
|
-
question: "Which database?",
|
|
393
|
-
header: "Database",
|
|
394
|
-
multiSelect: false,
|
|
395
|
-
options: [
|
|
396
|
-
{ label: "PostgreSQL", description: "Relational, ACID-compliant, advanced features." },
|
|
397
|
-
{ label: "MongoDB", description: "Document store, flexible schema, rapid prototyping." }
|
|
398
|
-
]
|
|
399
|
-
},
|
|
400
|
-
{
|
|
401
|
-
question: "Which testing frameworks? (Select all that apply)",
|
|
402
|
-
header: "Testing",
|
|
403
|
-
multiSelect: true, // Multiple selections allowed
|
|
404
|
-
options: [
|
|
405
|
-
{ label: "Unit tests", description: "Vitest for fast unit testing." },
|
|
406
|
-
{ label: "E2E tests", description: "Playwright for browser automation." },
|
|
407
|
-
{ label: "Visual tests", description: "Screenshot comparison testing." }
|
|
408
|
-
]
|
|
409
|
-
},
|
|
410
|
-
{
|
|
411
|
-
question: "Enable TypeScript strict mode?",
|
|
412
|
-
header: "TypeScript",
|
|
413
|
-
multiSelect: false,
|
|
414
|
-
options: [
|
|
415
|
-
{ label: "Yes (recommended)", description: "Strict type checking, catch errors early." },
|
|
416
|
-
{ label: "No", description: "Loose type checking, faster initial development." }
|
|
417
|
-
]
|
|
418
|
-
}
|
|
419
|
-
]
|
|
420
|
-
});
|
|
421
|
-
|
|
422
|
-
// Result:
|
|
423
|
-
// {
|
|
424
|
-
// "Database": "PostgreSQL",
|
|
425
|
-
// "Testing": ["Unit tests", "E2E tests"],
|
|
426
|
-
// "TypeScript": "Yes (recommended)"
|
|
427
|
-
// }
|
|
428
|
-
```
|
|
429
|
-
|
|
430
|
-
### Outcome
|
|
431
|
-
|
|
432
|
-
Alfred configures project with:
|
|
433
|
-
- ✅ PostgreSQL database
|
|
434
|
-
- ✅ Vitest unit tests
|
|
435
|
-
- ✅ Playwright E2E tests
|
|
436
|
-
- ❌ No visual regression tests
|
|
437
|
-
- ✅ TypeScript strict mode enabled
|
|
438
|
-
|
|
439
|
-
All decided in **one interaction** instead of 3 separate back-and-forth exchanges.
|
|
440
|
-
|
|
441
|
-
---
|
|
442
|
-
|
|
443
|
-
## Example 8: Error Recovery After Test Failure
|
|
444
|
-
|
|
445
|
-
### Scenario
|
|
446
|
-
|
|
447
|
-
**Context**: Alfred is in `/alfred:2-run` phase, tests are failing.
|
|
448
|
-
|
|
449
|
-
**Alfred detects**:
|
|
450
|
-
- Tests fail after implementation
|
|
451
|
-
- Multiple possible fixes exist
|
|
452
|
-
- User input needed to decide repair strategy
|
|
453
|
-
|
|
454
|
-
### AskUserQuestion Invocation
|
|
455
|
-
|
|
456
|
-
```typescript
|
|
457
|
-
const answer = await AskUserQuestion({
|
|
458
|
-
questions: [{
|
|
459
|
-
question: "Tests are failing. How should we proceed?",
|
|
460
|
-
header: "Fix Strategy",
|
|
461
|
-
multiSelect: false,
|
|
462
|
-
options: [
|
|
463
|
-
{
|
|
464
|
-
label: "Fix implementation",
|
|
465
|
-
description: "Adjust code to pass existing tests (tests are correct)."
|
|
466
|
-
},
|
|
467
|
-
{
|
|
468
|
-
label: "Update tests",
|
|
469
|
-
description: "Modify tests to match new implementation (implementation is correct)."
|
|
470
|
-
},
|
|
471
|
-
{
|
|
472
|
-
label: "Debug together",
|
|
473
|
-
description: "Review both implementation and tests to identify root cause."
|
|
474
|
-
}
|
|
475
|
-
]
|
|
476
|
-
}]
|
|
477
|
-
});
|
|
478
|
-
|
|
479
|
-
// Result: { "Fix Strategy": "Fix implementation" }
|
|
480
|
-
```
|
|
481
|
-
|
|
482
|
-
### Outcome
|
|
483
|
-
|
|
484
|
-
Alfred:
|
|
485
|
-
- ✅ Keeps tests unchanged
|
|
486
|
-
- ✅ Fixes implementation to satisfy test expectations
|
|
487
|
-
- ✅ Avoids "test modification to make them pass" anti-pattern
|
|
488
|
-
- ✅ Follows RED → GREEN → REFACTOR TDD cycle correctly
|
|
489
|
-
|
|
490
|
-
---
|
|
491
|
-
|
|
492
|
-
## Example 9: SPEC Scope Clarification (spec-builder)
|
|
493
|
-
|
|
494
|
-
### Scenario
|
|
495
|
-
|
|
496
|
-
**User**: "Create SPEC for performance improvements."
|
|
497
|
-
|
|
498
|
-
**Alfred detects** (spec-builder sub-agent):
|
|
499
|
-
- SPEC title is vague ("performance improvements")
|
|
500
|
-
- Scope undefined (backend? frontend? database?)
|
|
501
|
-
- Multiple domains affected
|
|
502
|
-
|
|
503
|
-
### AskUserQuestion Invocation
|
|
504
|
-
|
|
505
|
-
```typescript
|
|
506
|
-
const answer = await AskUserQuestion({
|
|
507
|
-
questions: [
|
|
508
|
-
{
|
|
509
|
-
question: "Which area needs performance improvements?",
|
|
510
|
-
header: "Domain",
|
|
511
|
-
multiSelect: false,
|
|
512
|
-
options: [
|
|
513
|
-
{ label: "Backend API", description: "Optimize API response times, database queries." },
|
|
514
|
-
{ label: "Frontend", description: "Improve page load times, bundle size, rendering." },
|
|
515
|
-
{ label: "Database", description: "Add indexes, optimize queries, caching." },
|
|
516
|
-
{ label: "All of the above", description: "Comprehensive performance audit." }
|
|
517
|
-
]
|
|
518
|
-
},
|
|
519
|
-
{
|
|
520
|
-
question: "What's the performance target?",
|
|
521
|
-
header: "Target",
|
|
522
|
-
multiSelect: false,
|
|
523
|
-
options: [
|
|
524
|
-
{ label: "< 200ms API", description: "API responses under 200ms (P95)." },
|
|
525
|
-
{ label: "< 2s page load", description: "Pages load under 2 seconds (P95)." },
|
|
526
|
-
{ label: "< 100ms queries", description: "Database queries under 100ms (P95)." }
|
|
527
|
-
]
|
|
528
|
-
}
|
|
529
|
-
]
|
|
530
|
-
});
|
|
531
|
-
|
|
532
|
-
// Result:
|
|
533
|
-
// {
|
|
534
|
-
// "Domain": "Backend API",
|
|
535
|
-
// "Target": "< 200ms API"
|
|
536
|
-
// }
|
|
537
|
-
```
|
|
538
|
-
|
|
539
|
-
### Outcome
|
|
540
|
-
|
|
541
|
-
spec-builder generates precise SPEC:
|
|
542
|
-
- ✅ Title: `[PERF-001] Optimize Backend API Response Times to <200ms`
|
|
543
|
-
- ✅ Scope: Backend API performance only
|
|
544
|
-
- ✅ Clear success criteria: P95 latency < 200ms
|
|
545
|
-
- ❌ Avoids vague SPEC like "Improve performance"
|
|
546
|
-
|
|
547
|
-
---
|
|
548
|
-
|
|
549
|
-
## Example 10: Doc Sync Mode Selection (doc-syncer)
|
|
550
|
-
|
|
551
|
-
### Scenario
|
|
552
|
-
|
|
553
|
-
**User**: "Sync documentation."
|
|
554
|
-
|
|
555
|
-
**Alfred detects** (doc-syncer sub-agent):
|
|
556
|
-
- Sync mode unclear (auto-detect vs force-regenerate vs partial)
|
|
557
|
-
- User hasn't specified preference
|
|
558
|
-
- Different modes have different time/accuracy trade-offs
|
|
559
|
-
|
|
560
|
-
### AskUserQuestion Invocation
|
|
561
|
-
|
|
562
|
-
```typescript
|
|
563
|
-
const answer = await AskUserQuestion({
|
|
564
|
-
questions: [{
|
|
565
|
-
question: "Which documentation sync mode?",
|
|
566
|
-
header: "Sync Mode",
|
|
567
|
-
multiSelect: false,
|
|
568
|
-
options: [
|
|
569
|
-
{
|
|
570
|
-
label: "auto",
|
|
571
|
-
description: "Smart detection of changes. Fast, minimal updates. (Recommended)"
|
|
572
|
-
},
|
|
573
|
-
{
|
|
574
|
-
label: "force",
|
|
575
|
-
description: "Regenerate ALL documentation. Slow but guaranteed accurate."
|
|
576
|
-
},
|
|
577
|
-
{
|
|
578
|
-
label: "partial",
|
|
579
|
-
description: "Update only specified sections. Fast, targeted."
|
|
580
|
-
}
|
|
581
|
-
]
|
|
582
|
-
}]
|
|
583
|
-
});
|
|
584
|
-
|
|
585
|
-
// Result: { "Sync Mode": "auto" }
|
|
586
|
-
```
|
|
587
|
-
|
|
588
|
-
### Outcome
|
|
589
|
-
|
|
590
|
-
doc-syncer:
|
|
591
|
-
- ✅ Uses auto-detection mode
|
|
592
|
-
- ✅ Only updates changed sections
|
|
593
|
-
- ✅ Faster execution (1-2 min vs 10 min for force mode)
|
|
594
|
-
- ✅ User sees clear time/accuracy trade-off before deciding
|
|
595
|
-
|
|
596
|
-
---
|
|
597
|
-
|
|
598
|
-
## Summary: Pattern Catalog
|
|
599
|
-
|
|
600
|
-
| Pattern | Use Case | Example Scenario |
|
|
601
|
-
|---------|----------|------------------|
|
|
602
|
-
| **Pattern 1: Implementation Approach** | Multiple valid implementation paths | "Add i18n support" (which library?) |
|
|
603
|
-
| **Pattern 2: Confirmation** | Risky/destructive operations | "Delete production data" (are you sure?) |
|
|
604
|
-
| **Pattern 3: Multi-Option Selection** | Choose ONE from multiple frameworks/tools | "Which testing framework?" |
|
|
605
|
-
| **Pattern 4: Multi-Select** | Enable/disable independent features | "Which features to enable?" (check multiple) |
|
|
606
|
-
| **Pattern 5: Sequential Questions** | Q2 depends on Q1 answer | "Enable auth?" → If yes, "Which provider?" |
|
|
607
|
-
| **Pattern 6: Option Grouping** | Too many options → hierarchical selection | Database type → Specific database |
|
|
608
|
-
| **Pattern 7: Batch Questions** | Multiple independent decisions | Project setup (DB + Testing + TypeScript) |
|
|
609
|
-
| **Pattern 8: Error Recovery** | Handle failures with user guidance | Test failure → Fix implementation vs update tests |
|
|
610
|
-
| **Pattern 9: SPEC Clarification** | Vague SPEC scope/title | "Performance improvements" → Which domain? |
|
|
611
|
-
| **Pattern 10: Mode Selection** | Choose workflow mode/strategy | Doc sync mode (auto vs force vs partial) |
|
|
612
|
-
|
|
613
|
-
---
|
|
614
|
-
|
|
615
|
-
**End of Examples** | 2025-10-27
|