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,524 @@
|
|
|
1
|
+
# Interactive Discovery: TUI-Based Skill Requirement Gathering
|
|
2
|
+
|
|
3
|
+
This guide covers using **moai-alfred-ask-user-questions** Skill to engage users through interactive dialogue and clarify Skill requirements.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Why Interactive Discovery?
|
|
8
|
+
|
|
9
|
+
### The Problem: Vague Requests
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
❌ User says: "Create a Skill for testing"
|
|
13
|
+
Questions: Which language? Which framework?
|
|
14
|
+
Framework? Testing framework? Unit/integration/e2e?
|
|
15
|
+
Target audience? Experience level?
|
|
16
|
+
Result: Ambiguous Skill that doesn't match intent
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
### The Solution: Structured TUI Surveys
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
✅ skill-factory says: "Let me ask a few questions..."
|
|
23
|
+
↓
|
|
24
|
+
Survey 1: Programming language (Python/TypeScript/Go/etc.)
|
|
25
|
+
Survey 2: Testing scope (Unit/integration/e2e/all)
|
|
26
|
+
Survey 3: Target experience (Beginner/intermediate/advanced)
|
|
27
|
+
Survey 4: Must-have features (Mocking/fixtures/CI integration)
|
|
28
|
+
↓
|
|
29
|
+
Result: Crystal-clear Skill requirements
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
## Interactive Discovery Process
|
|
35
|
+
|
|
36
|
+
### Phase 0a: Problem Definition
|
|
37
|
+
|
|
38
|
+
**Goal**: Understand what problem this Skill solves.
|
|
39
|
+
|
|
40
|
+
**TUI Survey Pattern 1: Domain Selection**
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
┌─ SKILL FACTORY: INTERACTIVE DISCOVERY ────────────────────┐
|
|
44
|
+
│ │
|
|
45
|
+
│ What problem domain does this Skill address? │
|
|
46
|
+
│ │
|
|
47
|
+
│ ▶ Debugging & Troubleshooting │
|
|
48
|
+
│ Performance Analysis & Optimization │
|
|
49
|
+
│ Code Quality & Best Practices │
|
|
50
|
+
│ Testing & Quality Assurance │
|
|
51
|
+
│ Infrastructure & DevOps │
|
|
52
|
+
│ Data Processing & Transformation │
|
|
53
|
+
│ Security & Cryptography │
|
|
54
|
+
│ Other / Custom: [text input] │
|
|
55
|
+
│ │
|
|
56
|
+
│ [↑↓ Navigate] [Enter: Select] [Esc: Cancel] │
|
|
57
|
+
└─────────────────────────────────────────────────────────────┘
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
**When to use this survey**:
|
|
61
|
+
- First question to narrow scope
|
|
62
|
+
- Establishes technology/domain context
|
|
63
|
+
- Helps with WebSearch queries later
|
|
64
|
+
|
|
65
|
+
**Follow-up question**:
|
|
66
|
+
```
|
|
67
|
+
┌─ SKILL FACTORY: FRAMEWORK/TECHNOLOGY ─────────────────────┐
|
|
68
|
+
│ │
|
|
69
|
+
│ Within [Domain], which technology/framework? │
|
|
70
|
+
│ │
|
|
71
|
+
│ ▶ Python (Flask/Django/FastAPI/etc.) │
|
|
72
|
+
│ TypeScript (Express/Next.js/NestJS/etc.) │
|
|
73
|
+
│ Go (Standard library/Gin/etc.) │
|
|
74
|
+
│ Rust (Axum/Actix/etc.) │
|
|
75
|
+
│ Java (Spring/Quarkus/etc.) │
|
|
76
|
+
│ Other: [text input] │
|
|
77
|
+
│ │
|
|
78
|
+
│ [↑↓ Navigate] [Enter: Select] │
|
|
79
|
+
└─────────────────────────────────────────────────────────────┘
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
**Outcome**: `selected_domain` + `selected_tech` captured
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
### Phase 0b: Scope Clarification
|
|
87
|
+
|
|
88
|
+
**Goal**: Define what's in scope vs. out of scope.
|
|
89
|
+
|
|
90
|
+
**TUI Survey Pattern 2: Feature Priority (Multi-select)**
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
┌─ SKILL FACTORY: FEATURE PRIORITY ──────────────────────────┐
|
|
94
|
+
│ │
|
|
95
|
+
│ Which features are MUST-HAVE? (Select multiple) │
|
|
96
|
+
│ │
|
|
97
|
+
│ ☑ Core concepts & fundamentals │
|
|
98
|
+
│ ☑ Practical examples & patterns │
|
|
99
|
+
│ ☐ Error handling & debugging │
|
|
100
|
+
│ ☑ Performance optimization │
|
|
101
|
+
│ ☐ Security best practices │
|
|
102
|
+
│ ☐ Deployment & CI/CD integration │
|
|
103
|
+
│ ☐ Testing strategies │
|
|
104
|
+
│ ☐ Monitoring & observability │
|
|
105
|
+
│ │
|
|
106
|
+
│ [↑↓ Navigate] [Space: Toggle] [Enter: Continue] │
|
|
107
|
+
└────────────────────────────────────────────────────────────┘
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
**Selection capture**:
|
|
111
|
+
```python
|
|
112
|
+
must_have_features = [
|
|
113
|
+
"core_concepts",
|
|
114
|
+
"practical_examples",
|
|
115
|
+
"performance_optimization"
|
|
116
|
+
]
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
**Outcome**: Feature priority list
|
|
120
|
+
|
|
121
|
+
---
|
|
122
|
+
|
|
123
|
+
### Phase 0c: Target Audience
|
|
124
|
+
|
|
125
|
+
**Goal**: Understand who will use this Skill.
|
|
126
|
+
|
|
127
|
+
**TUI Survey Pattern 3: Experience Level**
|
|
128
|
+
|
|
129
|
+
```
|
|
130
|
+
┌─ SKILL FACTORY: TARGET AUDIENCE ──────────────────────────┐
|
|
131
|
+
│ │
|
|
132
|
+
│ Who is the PRIMARY audience? │
|
|
133
|
+
│ │
|
|
134
|
+
│ Beginners (< 1 year experience) │
|
|
135
|
+
│ Intermediate (1-3 years) │
|
|
136
|
+
│ ▶ Advanced (3+ years) │
|
|
137
|
+
│ All levels (mixed audience) │
|
|
138
|
+
│ Hiring managers / Non-technical │
|
|
139
|
+
│ │
|
|
140
|
+
│ [↑↓ Navigate] [Enter: Select] │
|
|
141
|
+
└────────────────────────────────────────────────────────────┘
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
**Outcome**: `target_audience_level` captured
|
|
145
|
+
|
|
146
|
+
---
|
|
147
|
+
|
|
148
|
+
### Phase 0d: Special Considerations
|
|
149
|
+
|
|
150
|
+
**Goal**: Capture any unique requirements or constraints.
|
|
151
|
+
|
|
152
|
+
**TUI Survey Pattern 4: Version & Maturity**
|
|
153
|
+
|
|
154
|
+
```
|
|
155
|
+
┌─ SKILL FACTORY: FRAMEWORK VERSION ────────────────────────┐
|
|
156
|
+
│ │
|
|
157
|
+
│ Which version of [Framework]? │
|
|
158
|
+
│ │
|
|
159
|
+
│ Latest stable (auto-detect) │
|
|
160
|
+
│ ▶ Latest LTS (Long-term support) │
|
|
161
|
+
│ Specific version: [text input] │
|
|
162
|
+
│ "Support multiple versions (e.g., 3.9+)" │
|
|
163
|
+
│ │
|
|
164
|
+
│ [↑↓ Navigate] [Enter: Select] │
|
|
165
|
+
└────────────────────────────────────────────────────────────┘
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
**Outcome**: `framework_version` specified
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
### Phase 0e: Requirements Summary & Confirmation
|
|
173
|
+
|
|
174
|
+
After all surveys, present summary for user confirmation:
|
|
175
|
+
|
|
176
|
+
```
|
|
177
|
+
┌─ SKILL FACTORY: REVIEW YOUR SELECTIONS ───────────────────┐
|
|
178
|
+
│ │
|
|
179
|
+
│ ✓ Problem Domain: Performance Analysis & Optimization │
|
|
180
|
+
│ ✓ Technology: Python + Profiling Tools │
|
|
181
|
+
│ ✓ Must-Have: Core concepts, examples, optimization tips│
|
|
182
|
+
│ ✓ Audience: Advanced (3+ years) │
|
|
183
|
+
│ ✓ Framework: Python 3.12 LTS │
|
|
184
|
+
│ │
|
|
185
|
+
│ Ready to begin research and Skill creation? │
|
|
186
|
+
│ │
|
|
187
|
+
│ [✓ Yes, proceed] [← Go back, modify] │
|
|
188
|
+
└────────────────────────────────────────────────────────────┘
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
**Outcome**: Confirmed `SkillRequirements` charter
|
|
192
|
+
|
|
193
|
+
---
|
|
194
|
+
|
|
195
|
+
### Phase 0f: Version Awareness & Stability Matrix (NEW)
|
|
196
|
+
|
|
197
|
+
**Goal**: Capture version requirements to ensure all Skills reference latest stable versions (as of 2025-10-22).
|
|
198
|
+
|
|
199
|
+
**CRITICAL**: All Skills MUST specify exact tool/framework versions. Outdated version references create stale content.
|
|
200
|
+
|
|
201
|
+
**TUI Survey Pattern 5: Stable Version Requirements**
|
|
202
|
+
|
|
203
|
+
```
|
|
204
|
+
┌─ SKILL FACTORY: VERSION MATRIX ───────────────────────────────┐
|
|
205
|
+
│ │
|
|
206
|
+
│ For [Framework], which tool versions should we reference? │
|
|
207
|
+
│ (Defaults shown: 2025-10-22 stable versions) │
|
|
208
|
+
│ │
|
|
209
|
+
│ Framework Versions: │
|
|
210
|
+
│ • Python: 3.13.1 (latest) ▶ 3.12.7 (LTS) │
|
|
211
|
+
│ • Node.js: 23.0.0 (latest) ▶ 22.11.0 (LTS) │
|
|
212
|
+
│ • Go: 1.23.3 (latest) ▶ 1.22.x (older) │
|
|
213
|
+
│ • Rust: 1.82.0 (latest) ▶ MSRV: 1.70+ │
|
|
214
|
+
│ • Java: 23.0.1 (latest) ▶ 21.0.x (LTS) │
|
|
215
|
+
│ │
|
|
216
|
+
│ Tool Versions (Python ecosystem example): │
|
|
217
|
+
│ ☑ pytest 8.4.2 (testing framework) │
|
|
218
|
+
│ ☑ ruff 0.13.1 (linting/formatting) │
|
|
219
|
+
│ ☑ uv 0.9.3 (package manager) │
|
|
220
|
+
│ ☑ mypy 1.8.0 (type checking) │
|
|
221
|
+
│ ☑ FastAPI 0.115.0 (web framework) │
|
|
222
|
+
│ ☑ Pydantic 2.7.0 (data validation) │
|
|
223
|
+
│ │
|
|
224
|
+
│ [↑↓ Navigate] [Space: Toggle] [Enter: Continue] │
|
|
225
|
+
│ │
|
|
226
|
+
│ Want to customize versions? [Yes] / [No, use defaults] │
|
|
227
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
**Version Selection Capture**:
|
|
231
|
+
```python
|
|
232
|
+
framework_versions = {
|
|
233
|
+
"python": "3.13.1",
|
|
234
|
+
"tools": [
|
|
235
|
+
"pytest:8.4.2",
|
|
236
|
+
"ruff:0.13.1",
|
|
237
|
+
"uv:0.9.3",
|
|
238
|
+
"mypy:1.8.0"
|
|
239
|
+
]
|
|
240
|
+
}
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
**Available Stable Version Matrix** (referenced as source of truth):
|
|
244
|
+
|
|
245
|
+
| Framework | Latest | LTS | EOL Date | Ref |
|
|
246
|
+
| ----------- | ------ | ---------- | ------------- | -------------------------------------- |
|
|
247
|
+
| **Python** | 3.13.1 | 3.12.7 | 3.12: 2028-10 | [python.org](https://python.org) |
|
|
248
|
+
| **Node.js** | 23.0.0 | 22.11.0 | 22.x: 2025-10 | [nodejs.org](https://nodejs.org) |
|
|
249
|
+
| **Go** | 1.23.3 | 1.22.x | 1.22: 2025-02 | [golang.org](https://golang.org) |
|
|
250
|
+
| **Rust** | 1.82.0 | MSRV: 1.70 | N/A | [rust-lang.org](https://rust-lang.org) |
|
|
251
|
+
| **Java** | 23.0.1 | 21.0.x | 21: 2028-09 | [oracle.com](https://oracle.com) |
|
|
252
|
+
|
|
253
|
+
**When This Survey Is Needed**:
|
|
254
|
+
- ✅ Creating a new Skill (always)
|
|
255
|
+
- ✅ Updating existing Skill (quarterly version checks)
|
|
256
|
+
- ✅ Migrating to new major version (breaking changes detected)
|
|
257
|
+
- ✅ Security updates required (security advisory found)
|
|
258
|
+
|
|
259
|
+
**Related Document**: `.moai/memory/VERSION-TRACKING.md` — Comprehensive version matrix for all 23 languages and 50+ frameworks
|
|
260
|
+
|
|
261
|
+
**Outcome**: `stable_versions` captured with explicit tool/framework version numbers
|
|
262
|
+
|
|
263
|
+
---
|
|
264
|
+
|
|
265
|
+
### Phase 0g: Final Confirmation with Version Summary
|
|
266
|
+
|
|
267
|
+
Enhanced confirmation step that includes version matrix:
|
|
268
|
+
|
|
269
|
+
```
|
|
270
|
+
┌─ SKILL FACTORY: FINAL REVIEW ────────────────────────────────┐
|
|
271
|
+
│ │
|
|
272
|
+
│ ✓ Problem Domain: Testing & Quality Assurance │
|
|
273
|
+
│ ✓ Technology: TypeScript + Vitest │
|
|
274
|
+
│ ✓ Must-Have: Core, patterns, mocking, optimization │
|
|
275
|
+
│ ✓ Audience: Intermediate (1-3 years) │
|
|
276
|
+
│ ✓ Framework Version: Vitest 2.0.5 (latest) │
|
|
277
|
+
│ ✓ Tool Versions: │
|
|
278
|
+
│ • TypeScript: 5.3.x │
|
|
279
|
+
│ • Vitest: 2.0.5 │
|
|
280
|
+
│ • Biome: 1.7.x (linter/formatter) │
|
|
281
|
+
│ • Node.js: 22.11.0 (LTS recommended) │
|
|
282
|
+
│ │
|
|
283
|
+
│ ✓ Research Focus: Latest 2025 patterns with these versions │
|
|
284
|
+
│ │
|
|
285
|
+
│ Ready to research and generate Skill? │
|
|
286
|
+
│ (This will reference current stable versions) │
|
|
287
|
+
│ │
|
|
288
|
+
│ [✓ Yes, proceed] [← Go back, modify versions] │
|
|
289
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
**Outcome**: Confirmed `SkillRequirements` charter with **explicit version matrix**
|
|
293
|
+
|
|
294
|
+
---
|
|
295
|
+
|
|
296
|
+
## TUI Survey Design Best Practices
|
|
297
|
+
|
|
298
|
+
### 1. Progressive Narrowing
|
|
299
|
+
|
|
300
|
+
```
|
|
301
|
+
Survey 1: Broad domain (5-8 options)
|
|
302
|
+
↓ User selects one
|
|
303
|
+
Survey 2: Specific tech within domain (5-8 options)
|
|
304
|
+
↓ User selects one or more
|
|
305
|
+
Survey 3: Features/scope (multi-select from pool)
|
|
306
|
+
↓ User checks boxes
|
|
307
|
+
Survey 4: Advanced options (if needed, 3-4 options)
|
|
308
|
+
↓ User selects one
|
|
309
|
+
Survey 5: Confirmation summary
|
|
310
|
+
↓ User confirms or goes back
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
### 2. Sensible Defaults
|
|
314
|
+
|
|
315
|
+
```
|
|
316
|
+
❌ Bad (requires user to know exact answer):
|
|
317
|
+
□ How many lines of code per section?
|
|
318
|
+
□ Which specific exception types?
|
|
319
|
+
□ What is the exact API response format?
|
|
320
|
+
|
|
321
|
+
✅ Good (offers reasonable defaults):
|
|
322
|
+
□ Code size: Small (under 50 lines) / Medium / Large
|
|
323
|
+
□ Exception handling: Basic (try/except) / Advanced (custom types)
|
|
324
|
+
□ API responses: JSON (default) / XML / Protocol Buffers
|
|
325
|
+
```
|
|
326
|
+
|
|
327
|
+
### 3. Custom Input Fallback
|
|
328
|
+
|
|
329
|
+
```
|
|
330
|
+
┌─ Survey ──────────────────────────────────────────────────┐
|
|
331
|
+
│ │
|
|
332
|
+
│ ▶ Option 1 (predefined) │
|
|
333
|
+
│ Option 2 (predefined) │
|
|
334
|
+
│ Option 3 (predefined) │
|
|
335
|
+
│ Other / Custom: [________________] ← For unknown cases│
|
|
336
|
+
│ │
|
|
337
|
+
└───────────────────────────────────────────────────────────┘
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
### 4. Multi-Select for Complex Requirements
|
|
341
|
+
|
|
342
|
+
```
|
|
343
|
+
Question: "Which testing patterns are important?"
|
|
344
|
+
(Users can select multiple)
|
|
345
|
+
|
|
346
|
+
☑ Unit testing
|
|
347
|
+
☑ Integration testing
|
|
348
|
+
☐ End-to-end testing
|
|
349
|
+
☑ Mocking & fixtures
|
|
350
|
+
☐ Performance testing
|
|
351
|
+
```
|
|
352
|
+
|
|
353
|
+
**Result**: More accurate feature prioritization
|
|
354
|
+
|
|
355
|
+
---
|
|
356
|
+
|
|
357
|
+
## Example: Complete Interactive Discovery Flow
|
|
358
|
+
|
|
359
|
+
### Scenario: "I want a Skill for TypeScript testing"
|
|
360
|
+
|
|
361
|
+
**Step 1: Problem Domain** → User selects "Testing & Quality Assurance"
|
|
362
|
+
|
|
363
|
+
**Step 2: Technology** → User selects "TypeScript"
|
|
364
|
+
|
|
365
|
+
**Step 3: Testing Framework** → User selects "Vitest"
|
|
366
|
+
|
|
367
|
+
**Step 4: Must-Have Features**
|
|
368
|
+
- Core concepts ✓
|
|
369
|
+
- Unit testing patterns ✓
|
|
370
|
+
- Mocking with Vitest ✓
|
|
371
|
+
- Performance optimization ✓
|
|
372
|
+
- CI/CD integration ✗
|
|
373
|
+
|
|
374
|
+
**Step 5: Audience** → "Intermediate (1-3 years)"
|
|
375
|
+
|
|
376
|
+
**Step 6: Framework Version** → "Latest stable"
|
|
377
|
+
|
|
378
|
+
**Step 7: Confirmation**
|
|
379
|
+
```
|
|
380
|
+
✓ Domain: Testing & Quality Assurance
|
|
381
|
+
✓ Technology: TypeScript + Vitest
|
|
382
|
+
✓ Features: Core, patterns, mocking, optimization
|
|
383
|
+
✓ Audience: Intermediate
|
|
384
|
+
✓ Version: Vitest latest stable
|
|
385
|
+
|
|
386
|
+
Ready to research and generate Skill?
|
|
387
|
+
```
|
|
388
|
+
|
|
389
|
+
**Result**: skill-factory now has precise requirements for web research and Skill generation
|
|
390
|
+
|
|
391
|
+
---
|
|
392
|
+
|
|
393
|
+
## Failure Modes & Recovery
|
|
394
|
+
|
|
395
|
+
### 🔴 User Provides No/Invalid Selection
|
|
396
|
+
|
|
397
|
+
```
|
|
398
|
+
User: [Presses Escape 3 times]
|
|
399
|
+
system: "It seems you'd like to cancel. Should I stop?"
|
|
400
|
+
|
|
401
|
+
Recovery:
|
|
402
|
+
1. Offer explicit yes/no confirmation
|
|
403
|
+
2. Or: Restart with fresh survey
|
|
404
|
+
3. Or: Use defaults and proceed
|
|
405
|
+
```
|
|
406
|
+
|
|
407
|
+
### 🟡 User Selects Contradictory Options
|
|
408
|
+
|
|
409
|
+
```
|
|
410
|
+
User selects:
|
|
411
|
+
Domain: "Data Processing"
|
|
412
|
+
Technology: "Kubernetes"
|
|
413
|
+
↑ Mismatch! Kubernetes is DevOps, not data processing
|
|
414
|
+
|
|
415
|
+
Detection: skill-factory notices mismatch
|
|
416
|
+
Response: "I noticed you selected Data Processing but Kubernetes
|
|
417
|
+
is typically DevOps-related. Did you mean... Kafka or Spark?"
|
|
418
|
+
```
|
|
419
|
+
|
|
420
|
+
### 🟢 User Enters Custom Value
|
|
421
|
+
|
|
422
|
+
```
|
|
423
|
+
User selects: "Other / Custom"
|
|
424
|
+
skill-factory: "What specific technology would you like?"
|
|
425
|
+
User: "MicroPython for IoT devices"
|
|
426
|
+
Result: WebSearch targets "MicroPython IoT best practices 2025"
|
|
427
|
+
```
|
|
428
|
+
|
|
429
|
+
---
|
|
430
|
+
|
|
431
|
+
## Integration with WebSearch Phase
|
|
432
|
+
|
|
433
|
+
### From Interactive Discovery → To WebSearch
|
|
434
|
+
|
|
435
|
+
```
|
|
436
|
+
TUI Survey Captures:
|
|
437
|
+
├─ domain: "Testing & Quality Assurance"
|
|
438
|
+
├─ technology: "TypeScript"
|
|
439
|
+
├─ framework: "Vitest"
|
|
440
|
+
├─ features: ["core", "patterns", "mocking", "optimization"]
|
|
441
|
+
├─ audience: "intermediate"
|
|
442
|
+
└─ version: "latest-stable"
|
|
443
|
+
|
|
444
|
+
↓
|
|
445
|
+
|
|
446
|
+
skill-factory builds WebSearch queries:
|
|
447
|
+
1. "TypeScript Vitest latest 2025 best practices"
|
|
448
|
+
2. "Vitest async testing patterns modern"
|
|
449
|
+
3. "TypeScript testing mocking strategies"
|
|
450
|
+
4. "Vitest performance optimization official docs"
|
|
451
|
+
5. "TypeScript Vitest breaking changes migration"
|
|
452
|
+
|
|
453
|
+
↓
|
|
454
|
+
|
|
455
|
+
WebSearch findings INFORM the Skill
|
|
456
|
+
(See WEB-RESEARCH.md for details)
|
|
457
|
+
```
|
|
458
|
+
|
|
459
|
+
---
|
|
460
|
+
|
|
461
|
+
## Effective Question Design
|
|
462
|
+
|
|
463
|
+
### DO: Ask Open-Ended Questions
|
|
464
|
+
|
|
465
|
+
```
|
|
466
|
+
✅ "What specific problem do you want to solve?"
|
|
467
|
+
(Allows detailed answer)
|
|
468
|
+
|
|
469
|
+
❌ "Do you want testing?"
|
|
470
|
+
(Yes/No is too limiting)
|
|
471
|
+
```
|
|
472
|
+
|
|
473
|
+
### DO: Provide Context
|
|
474
|
+
|
|
475
|
+
```
|
|
476
|
+
✅ "Target audience: who will use this?
|
|
477
|
+
(Beginner developers might need more examples)
|
|
478
|
+
- Beginners
|
|
479
|
+
- Intermediate
|
|
480
|
+
- Advanced"
|
|
481
|
+
|
|
482
|
+
❌ "Target audience?"
|
|
483
|
+
(Too vague, user doesn't know what you need)
|
|
484
|
+
```
|
|
485
|
+
|
|
486
|
+
### DO: Use Sensible Grouping
|
|
487
|
+
|
|
488
|
+
```
|
|
489
|
+
✅ Survey 1: Pick ONE (narrowing)
|
|
490
|
+
Survey 2: Pick ONE (further narrowing)
|
|
491
|
+
Survey 3: Pick MULTIPLE (features/scope)
|
|
492
|
+
Survey 4: Confirmation
|
|
493
|
+
|
|
494
|
+
❌ Survey 1: Pick MULTIPLE (confusing)
|
|
495
|
+
Survey 2: Pick ONE (conflicting)
|
|
496
|
+
```
|
|
497
|
+
|
|
498
|
+
---
|
|
499
|
+
|
|
500
|
+
## Capturing Requirements for WebSearch
|
|
501
|
+
|
|
502
|
+
Map survey answers to research queries:
|
|
503
|
+
|
|
504
|
+
| Survey Answer | WebSearch Topic | Example Query |
|
|
505
|
+
| ------------- | --------------- | ----------------------------------- |
|
|
506
|
+
| Python 3.12 | Latest version | "Python 3.12 best practices 2025" |
|
|
507
|
+
| Async testing | Modern pattern | "async/await testing patterns 2025" |
|
|
508
|
+
| Performance | Optimization | "performance profiling tools 2025" |
|
|
509
|
+
| Security | Compliance | "OWASP security patterns 2025" |
|
|
510
|
+
|
|
511
|
+
---
|
|
512
|
+
|
|
513
|
+
## Related Resources
|
|
514
|
+
|
|
515
|
+
- [SKILL.md](SKILL.md) — Main Skill framework
|
|
516
|
+
- [WEB-RESEARCH.md](WEB-RESEARCH.md) — Using discoveries in research
|
|
517
|
+
- [skill-factory.md](../../agents/alfred/skill-factory.md) — Sub-Agent orchestration
|
|
518
|
+
- `moai-alfred-ask-user-questions` Skill — TUI implementation
|
|
519
|
+
|
|
520
|
+
---
|
|
521
|
+
|
|
522
|
+
**Version**: 0.1.0
|
|
523
|
+
**Last Updated**: 2025-10-22
|
|
524
|
+
**Framework**: MoAI-ADK + Claude Skills + skill-factory
|