moai-adk 0.25.4__py3-none-any.whl → 0.32.8__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of moai-adk might be problematic. Click here for more details.
- moai_adk/__init__.py +2 -5
- moai_adk/__main__.py +114 -82
- moai_adk/cli/__init__.py +6 -1
- moai_adk/cli/commands/__init__.py +1 -3
- moai_adk/cli/commands/analyze.py +5 -16
- moai_adk/cli/commands/doctor.py +6 -18
- moai_adk/cli/commands/init.py +56 -125
- moai_adk/cli/commands/language.py +14 -35
- moai_adk/cli/commands/status.py +9 -15
- moai_adk/cli/commands/update.py +1555 -190
- moai_adk/cli/prompts/init_prompts.py +112 -56
- 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 +672 -0
- moai_adk/cli/worktree/exceptions.py +89 -0
- moai_adk/cli/worktree/manager.py +490 -0
- moai_adk/cli/worktree/models.py +65 -0
- moai_adk/cli/worktree/registry.py +128 -0
- moai_adk/core/PHASE2_OPTIMIZATIONS.md +467 -0
- moai_adk/core/analysis/session_analyzer.py +17 -56
- moai_adk/core/claude_integration.py +26 -54
- moai_adk/core/command_helpers.py +10 -10
- moai_adk/core/comprehensive_monitoring_system.py +1183 -0
- moai_adk/core/config/auto_spec_config.py +5 -11
- moai_adk/core/config/migration.py +19 -9
- moai_adk/core/config/unified.py +436 -0
- moai_adk/core/context_manager.py +6 -12
- moai_adk/core/enterprise_features.py +1404 -0
- moai_adk/core/error_recovery_system.py +725 -112
- moai_adk/core/event_driven_hook_system.py +1371 -0
- moai_adk/core/git/__init__.py +8 -0
- moai_adk/core/git/branch_manager.py +3 -11
- moai_adk/core/git/checkpoint.py +1 -3
- moai_adk/core/git/conflict_detector.py +413 -0
- moai_adk/core/git/manager.py +91 -1
- moai_adk/core/hooks/post_tool_auto_spec_completion.py +56 -80
- moai_adk/core/input_validation_middleware.py +1006 -0
- moai_adk/core/integration/engine.py +6 -18
- moai_adk/core/integration/integration_tester.py +10 -9
- moai_adk/core/integration/utils.py +1 -1
- moai_adk/core/issue_creator.py +10 -28
- moai_adk/core/jit_context_loader.py +956 -0
- moai_adk/core/jit_enhanced_hook_manager.py +1987 -0
- moai_adk/core/language_config_resolver.py +485 -0
- moai_adk/core/language_validator.py +28 -41
- moai_adk/core/mcp/setup.py +15 -12
- moai_adk/core/merge/__init__.py +9 -0
- moai_adk/core/merge/analyzer.py +481 -0
- moai_adk/core/migration/alfred_to_moai_migrator.py +383 -0
- moai_adk/core/migration/backup_manager.py +78 -9
- moai_adk/core/migration/custom_element_scanner.py +358 -0
- moai_adk/core/migration/file_migrator.py +8 -17
- 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 +6 -10
- moai_adk/core/migration/version_migrator.py +3 -3
- moai_adk/core/performance/cache_system.py +8 -10
- moai_adk/core/phase_optimized_hook_scheduler.py +879 -0
- moai_adk/core/project/checker.py +2 -4
- moai_adk/core/project/detector.py +1 -3
- moai_adk/core/project/initializer.py +135 -23
- moai_adk/core/project/phase_executor.py +54 -81
- moai_adk/core/project/validator.py +6 -12
- moai_adk/core/quality/trust_checker.py +9 -27
- moai_adk/core/realtime_monitoring_dashboard.py +1724 -0
- moai_adk/core/robust_json_parser.py +611 -0
- moai_adk/core/rollback_manager.py +73 -148
- moai_adk/core/session_manager.py +10 -26
- moai_adk/core/skill_loading_system.py +579 -0
- moai_adk/core/spec/confidence_scoring.py +31 -100
- moai_adk/core/spec/ears_template_engine.py +351 -286
- moai_adk/core/spec/quality_validator.py +35 -69
- moai_adk/core/spec_status_manager.py +64 -74
- moai_adk/core/template/backup.py +45 -20
- moai_adk/core/template/config.py +112 -39
- moai_adk/core/template/merger.py +11 -19
- moai_adk/core/template/processor.py +253 -149
- moai_adk/core/template_engine.py +73 -40
- 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 +4 -12
- 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 +23 -72
- moai_adk/foundation/trust/validation_checklist.py +57 -162
- 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/alfred_detector.py +1 -3
- moai_adk/statusline/config.py +13 -4
- moai_adk/statusline/enhanced_output_style_detector.py +23 -15
- moai_adk/statusline/main.py +51 -15
- moai_adk/statusline/renderer.py +104 -48
- moai_adk/statusline/update_checker.py +3 -9
- moai_adk/statusline/version_reader.py +140 -46
- moai_adk/templates/.claude/agents/moai/ai-nano-banana.md +549 -0
- moai_adk/templates/.claude/agents/moai/builder-agent.md +445 -0
- moai_adk/templates/.claude/agents/moai/builder-command.md +1132 -0
- moai_adk/templates/.claude/agents/moai/builder-skill.md +601 -0
- moai_adk/templates/.claude/agents/moai/expert-backend.md +831 -0
- moai_adk/templates/.claude/agents/moai/expert-database.md +774 -0
- moai_adk/templates/.claude/agents/moai/expert-debug.md +396 -0
- moai_adk/templates/.claude/agents/moai/expert-devops.md +711 -0
- moai_adk/templates/.claude/agents/moai/expert-frontend.md +666 -0
- moai_adk/templates/.claude/agents/moai/expert-security.md +474 -0
- moai_adk/templates/.claude/agents/moai/expert-uiux.md +1038 -0
- moai_adk/templates/.claude/agents/moai/manager-claude-code.md +429 -0
- moai_adk/templates/.claude/agents/moai/manager-docs.md +570 -0
- moai_adk/templates/.claude/agents/moai/manager-git.md +937 -0
- moai_adk/templates/.claude/agents/moai/manager-project.md +891 -0
- moai_adk/templates/.claude/agents/moai/manager-quality.md +598 -0
- moai_adk/templates/.claude/agents/moai/manager-spec.md +713 -0
- moai_adk/templates/.claude/agents/moai/manager-strategy.md +600 -0
- moai_adk/templates/.claude/agents/moai/manager-tdd.md +603 -0
- moai_adk/templates/.claude/agents/moai/mcp-context7.md +369 -0
- moai_adk/templates/.claude/agents/moai/mcp-figma.md +1567 -0
- moai_adk/templates/.claude/agents/moai/mcp-notion.md +749 -0
- moai_adk/templates/.claude/agents/moai/mcp-playwright.md +427 -0
- moai_adk/templates/.claude/agents/moai/mcp-sequential-thinking.md +994 -0
- moai_adk/templates/.claude/commands/moai/0-project.md +1143 -0
- moai_adk/templates/.claude/commands/moai/1-plan.md +1435 -0
- moai_adk/templates/.claude/commands/moai/2-run.md +883 -0
- moai_adk/templates/.claude/commands/moai/3-sync.md +993 -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/moai/lib/checkpoint.py +244 -0
- 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 +921 -0
- moai_adk/templates/.claude/output-styles/moai/r2d2.md +380 -0
- moai_adk/templates/.claude/output-styles/moai/yoda.md +338 -0
- moai_adk/templates/.claude/settings.json +172 -0
- moai_adk/templates/.claude/skills/moai-docs-generation/SKILL.md +247 -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-domain-backend/SKILL.md +319 -0
- moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +320 -0
- 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-frontend/SKILL.md +496 -0
- moai_adk/templates/.claude/skills/moai-domain-uiux/SKILL.md +453 -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 +491 -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-foundation-claude/SKILL.md +201 -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-context/SKILL.md +438 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/SKILL.md +515 -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 +346 -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-quality/SKILL.md +362 -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-integration-mcp/SKILL.md +352 -0
- moai_adk/templates/.claude/skills/moai-integration-mcp/modules/README.md +52 -0
- moai_adk/templates/.claude/skills/moai-integration-mcp/modules/error-handling.md +334 -0
- moai_adk/templates/.claude/skills/moai-integration-mcp/modules/integration-patterns.md +310 -0
- moai_adk/templates/.claude/skills/moai-integration-mcp/modules/security-authentication.md +256 -0
- moai_adk/templates/.claude/skills/moai-integration-mcp/modules/server-architecture.md +253 -0
- moai_adk/templates/.claude/skills/moai-lang-unified/README.md +133 -0
- moai_adk/templates/.claude/skills/moai-lang-unified/SKILL.md +296 -0
- moai_adk/templates/.claude/skills/moai-lang-unified/examples.md +1269 -0
- moai_adk/templates/.claude/skills/moai-lang-unified/reference.md +331 -0
- moai_adk/templates/.claude/skills/moai-library-mermaid/SKILL.md +298 -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 +316 -0
- moai_adk/templates/.claude/skills/moai-library-nextra/advanced-patterns.md +336 -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-shadcn/SKILL.md +370 -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-platform-baas/README.md +186 -0
- moai_adk/templates/.claude/skills/moai-platform-baas/SKILL.md +290 -0
- moai_adk/templates/.claude/skills/moai-platform-baas/examples.md +1225 -0
- moai_adk/templates/.claude/skills/moai-platform-baas/reference.md +567 -0
- moai_adk/templates/.claude/skills/moai-platform-baas/scripts/provider-selector.py +323 -0
- moai_adk/templates/.claude/skills/moai-platform-baas/templates/stack-config.yaml +204 -0
- moai_adk/templates/.claude/skills/moai-workflow-jit-docs/SKILL.md +446 -0
- moai_adk/templates/.claude/skills/moai-workflow-jit-docs/advanced-patterns.md +379 -0
- moai_adk/templates/.claude/skills/moai-workflow-jit-docs/optimization.md +286 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/README.md +190 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/SKILL.md +387 -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 +135 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/examples/quick_start.py +196 -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/schemas/config-schema.json +316 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/schemas/tab_schema.json +1362 -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 +71 -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-templates/SKILL.md +374 -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-testing/LICENSE.txt +202 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/SKILL.md +453 -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/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/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 +410 -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 +103 -41
- moai_adk/templates/.git-hooks/pre-push +116 -21
- moai_adk/templates/.github/workflows/ci-universal.yml +513 -0
- moai_adk/templates/.github/workflows/security-secrets-check.yml +179 -0
- moai_adk/templates/.gitignore +184 -44
- moai_adk/templates/.mcp.json +7 -9
- moai_adk/templates/.moai/cache/personalization.json +10 -0
- moai_adk/templates/.moai/config/config.yaml +344 -0
- moai_adk/templates/.moai/config/presets/manual.yaml +28 -0
- moai_adk/templates/.moai/config/presets/personal.yaml +30 -0
- moai_adk/templates/.moai/config/presets/team.yaml +33 -0
- moai_adk/templates/.moai/config/questions/_schema.yaml +79 -0
- moai_adk/templates/.moai/config/questions/tab1-user.yaml +108 -0
- moai_adk/templates/.moai/config/questions/tab2-project.yaml +122 -0
- moai_adk/templates/.moai/config/questions/tab3-git.yaml +542 -0
- moai_adk/templates/.moai/config/questions/tab4-quality.yaml +167 -0
- moai_adk/templates/.moai/config/questions/tab5-system.yaml +152 -0
- moai_adk/templates/.moai/config/sections/git-strategy.yaml +40 -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 +15 -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 +86 -0
- moai_adk/templates/.moai/scripts/setup-glm.py +136 -0
- moai_adk/templates/CLAUDE.md +382 -501
- moai_adk/utils/__init__.py +24 -1
- moai_adk/utils/banner.py +7 -10
- moai_adk/utils/common.py +16 -30
- moai_adk/utils/link_validator.py +4 -12
- moai_adk/utils/safe_file_reader.py +2 -6
- moai_adk/utils/timeout.py +160 -0
- moai_adk/utils/toon_utils.py +256 -0
- moai_adk/version.py +22 -0
- moai_adk-0.32.8.dist-info/METADATA +2478 -0
- moai_adk-0.32.8.dist-info/RECORD +396 -0
- {moai_adk-0.25.4.dist-info → moai_adk-0.32.8.dist-info}/WHEEL +1 -1
- {moai_adk-0.25.4.dist-info → moai_adk-0.32.8.dist-info}/entry_points.txt +1 -0
- moai_adk/cli/commands/backup.py +0 -82
- moai_adk/cli/commands/improve_user_experience.py +0 -348
- moai_adk/cli/commands/migrate.py +0 -158
- moai_adk/cli/commands/validate_links.py +0 -118
- moai_adk/templates/.github/workflows/moai-gitflow.yml +0 -413
- moai_adk/templates/.github/workflows/moai-release-create.yml +0 -100
- moai_adk/templates/.github/workflows/moai-release-pipeline.yml +0 -188
- moai_adk/utils/user_experience.py +0 -531
- moai_adk-0.25.4.dist-info/METADATA +0 -2279
- moai_adk-0.25.4.dist-info/RECORD +0 -112
- {moai_adk-0.25.4.dist-info → moai_adk-0.32.8.dist-info}/licenses/LICENSE +0 -0
|
@@ -19,6 +19,14 @@ class SpecGenerator:
|
|
|
19
19
|
"""Generate a basic SPEC document."""
|
|
20
20
|
return f"SPEC document for {file_path}\n\nContent analysis:\n{content[:200]}..."
|
|
21
21
|
|
|
22
|
+
def analyze(self, file_path: str) -> Dict[str, Any]:
|
|
23
|
+
"""Analyze code file for SPEC generation."""
|
|
24
|
+
return {
|
|
25
|
+
"file_path": file_path,
|
|
26
|
+
"structure_info": {},
|
|
27
|
+
"domain_keywords": [],
|
|
28
|
+
}
|
|
29
|
+
|
|
22
30
|
|
|
23
31
|
# BaseHook: Simplified base hook class for auto-spec completion
|
|
24
32
|
class BaseHook:
|
|
@@ -74,9 +82,7 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
74
82
|
"excluded_patterns": ["test_", "spec_", "__tests__"],
|
|
75
83
|
}
|
|
76
84
|
|
|
77
|
-
def should_trigger_spec_completion(
|
|
78
|
-
self, tool_name: str, tool_args: Dict[str, Any]
|
|
79
|
-
) -> bool:
|
|
85
|
+
def should_trigger_spec_completion(self, tool_name: str, tool_args: Dict[str, Any]) -> bool:
|
|
80
86
|
"""
|
|
81
87
|
Determine if spec completion should be triggered.
|
|
82
88
|
|
|
@@ -110,9 +116,7 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
110
116
|
if self._is_supported_file(file_path):
|
|
111
117
|
supported_files.append(file_path)
|
|
112
118
|
else:
|
|
113
|
-
logger.debug(
|
|
114
|
-
f"File {file_path} is not supported for auto-spec completion"
|
|
115
|
-
)
|
|
119
|
+
logger.debug(f"File {file_path} is not supported for auto-spec completion")
|
|
116
120
|
|
|
117
121
|
if not supported_files:
|
|
118
122
|
logger.debug("No supported files found")
|
|
@@ -200,9 +204,7 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
200
204
|
|
|
201
205
|
return False
|
|
202
206
|
|
|
203
|
-
def detect_code_changes(
|
|
204
|
-
self, tool_name: str, tool_args: Dict[str, Any], result: Any
|
|
205
|
-
) -> List[str]:
|
|
207
|
+
def detect_code_changes(self, tool_name: str, tool_args: Dict[str, Any], result: Any) -> List[str]:
|
|
206
208
|
"""
|
|
207
209
|
Detect code changes from tool execution.
|
|
208
210
|
|
|
@@ -266,15 +268,11 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
266
268
|
# Structure clarity: 30%
|
|
267
269
|
# Domain accuracy: 40%
|
|
268
270
|
# Documentation level: 30%
|
|
269
|
-
confidence =
|
|
270
|
-
structure_score * 0.3 + domain_accuracy * 0.4 + documentation_level * 0.3
|
|
271
|
-
)
|
|
271
|
+
confidence = structure_score * 0.3 + domain_accuracy * 0.4 + documentation_level * 0.3
|
|
272
272
|
|
|
273
273
|
return min(max(confidence, 0.0), 1.0)
|
|
274
274
|
|
|
275
|
-
def generate_complete_spec(
|
|
276
|
-
self, analysis: Dict[str, Any], file_path: str
|
|
277
|
-
) -> Dict[str, str]:
|
|
275
|
+
def generate_complete_spec(self, analysis: Dict[str, Any], file_path: str) -> Dict[str, str]:
|
|
278
276
|
"""
|
|
279
277
|
Generate complete SPEC documents in EARS format.
|
|
280
278
|
|
|
@@ -310,13 +308,11 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
310
308
|
meaningful_name = "".join(part.upper() for part in name_parts if part)
|
|
311
309
|
|
|
312
310
|
# Add hash to ensure uniqueness
|
|
313
|
-
file_hash = hashlib.md5(file_path.encode()).hexdigest()[:4]
|
|
311
|
+
file_hash = hashlib.md5(file_path.encode(), usedforsecurity=False).hexdigest()[:4]
|
|
314
312
|
|
|
315
313
|
return f"{meaningful_name}-{file_hash}"
|
|
316
314
|
|
|
317
|
-
def _generate_spec_content(
|
|
318
|
-
self, analysis: Dict[str, Any], spec_id: str, file_name: str
|
|
319
|
-
) -> str:
|
|
315
|
+
def _generate_spec_content(self, analysis: Dict[str, Any], spec_id: str, file_name: str) -> str:
|
|
320
316
|
"""Generate main spec.md content."""
|
|
321
317
|
template = f"""---
|
|
322
318
|
"id": "SPEC-{spec_id}",
|
|
@@ -324,7 +320,7 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
324
320
|
"title_en": "Auto-generated SPEC for {file_name}",
|
|
325
321
|
"version": "1.0.0",
|
|
326
322
|
"status": "pending",
|
|
327
|
-
"created": "{time.strftime(
|
|
323
|
+
"created": "{time.strftime("%Y-%m-%d")}",
|
|
328
324
|
"author": "@alfred-auto",
|
|
329
325
|
"reviewer": "",
|
|
330
326
|
"category": "FEATURE",
|
|
@@ -339,12 +335,12 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
339
335
|
|
|
340
336
|
### Overview
|
|
341
337
|
|
|
342
|
-
{analysis.get(
|
|
338
|
+
{analysis.get("description", "This spec was auto-generated based on code analysis.")}
|
|
343
339
|
|
|
344
340
|
### Environment
|
|
345
341
|
|
|
346
342
|
- **Project**: MoAI-ADK Auto-generated SPEC
|
|
347
|
-
- **Language**: {analysis.get(
|
|
343
|
+
- **Language**: {analysis.get("language", "Python")}
|
|
348
344
|
- **File**: {file_name}
|
|
349
345
|
- **Generation Method**: Automatic analysis-based
|
|
350
346
|
- **Status**: Review required
|
|
@@ -368,15 +364,15 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
368
364
|
|
|
369
365
|
#### State-driven Requirements
|
|
370
366
|
|
|
371
|
-
{analysis.get(
|
|
367
|
+
{analysis.get("state_requirements", "- **REQ-006**: System must transition from initial state to target state")}
|
|
372
368
|
|
|
373
369
|
#### Event-driven Requirements
|
|
374
370
|
|
|
375
|
-
{analysis.get(
|
|
371
|
+
{analysis.get("event_requirements", "- **REQ-007**: System must respond when user input occurs")}
|
|
376
372
|
|
|
377
373
|
### Specifications
|
|
378
374
|
|
|
379
|
-
{analysis.get(
|
|
375
|
+
{analysis.get("specifications", "- **SPEC-001**: System must implement requirements")}
|
|
380
376
|
|
|
381
377
|
### Traceability
|
|
382
378
|
|
|
@@ -398,9 +394,7 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
398
394
|
"""
|
|
399
395
|
return template
|
|
400
396
|
|
|
401
|
-
def _generate_plan_content(
|
|
402
|
-
self, analysis: Dict[str, Any], spec_id: str, file_name: str
|
|
403
|
-
) -> str:
|
|
397
|
+
def _generate_plan_content(self, analysis: Dict[str, Any], spec_id: str, file_name: str) -> str:
|
|
404
398
|
"""Generate plan.md content."""
|
|
405
399
|
return f"""---
|
|
406
400
|
"id": "PLAN-{spec_id}",
|
|
@@ -408,7 +402,7 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
408
402
|
"title": "Auto-generated Implementation Plan for {file_name}",
|
|
409
403
|
"version": "1.0.0",
|
|
410
404
|
"status": "pending",
|
|
411
|
-
"created": "{time.strftime(
|
|
405
|
+
"created": "{time.strftime("%Y-%m-%d")}",
|
|
412
406
|
"author": "@alfred-auto"
|
|
413
407
|
}}
|
|
414
408
|
---
|
|
@@ -450,25 +444,25 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
450
444
|
#### Architecture Design
|
|
451
445
|
|
|
452
446
|
```
|
|
453
|
-
{analysis.get(
|
|
447
|
+
{analysis.get("architecture", "User Input → Validation → Business Logic → Data Processing → Output")}
|
|
454
448
|
↓
|
|
455
449
|
[Core Components] → [External Services] → [Data Layer]
|
|
456
450
|
```
|
|
457
451
|
|
|
458
452
|
#### Core Components
|
|
459
453
|
|
|
460
|
-
1. **{analysis.get(
|
|
461
|
-
2. **{analysis.get(
|
|
462
|
-
3. **{analysis.get(
|
|
463
|
-
4. **{analysis.get(
|
|
454
|
+
1. **{analysis.get("main_component", "Main Class")}**: Handle primary business logic
|
|
455
|
+
2. **{analysis.get("service_component", "Service Layer")}**: Integrate external services
|
|
456
|
+
3. **{analysis.get("data_component", "Data Layer")}**: Process and store data
|
|
457
|
+
4. **{analysis.get("component_4", "Validation Layer")}**: Validate input and check validity
|
|
464
458
|
|
|
465
459
|
#### Dependency Management
|
|
466
460
|
|
|
467
461
|
**Utilize Existing Modules:**
|
|
468
|
-
- {analysis.get(
|
|
462
|
+
- {analysis.get("existing_modules", "Utilize standard libraries")}
|
|
469
463
|
|
|
470
464
|
**Add New Modules:**
|
|
471
|
-
- {analysis.get(
|
|
465
|
+
- {analysis.get("new_modules", "Add as needed")}
|
|
472
466
|
|
|
473
467
|
### Success Criteria
|
|
474
468
|
|
|
@@ -481,7 +475,7 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
481
475
|
|
|
482
476
|
#### Performance Criteria
|
|
483
477
|
|
|
484
|
-
- ✅ Response time {analysis.get(
|
|
478
|
+
- ✅ Response time {analysis.get("performance_target", "within 1 second")}
|
|
485
479
|
- ✅ Memory usage optimized
|
|
486
480
|
- ✅ Parallel processing supported
|
|
487
481
|
- ✅ Scalability verified
|
|
@@ -501,9 +495,7 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
501
495
|
4. **Release Preparation**: Testing and validation (14-16 days)
|
|
502
496
|
"""
|
|
503
497
|
|
|
504
|
-
def _generate_acceptance_content(
|
|
505
|
-
self, analysis: Dict[str, Any], spec_id: str, file_name: str
|
|
506
|
-
) -> str:
|
|
498
|
+
def _generate_acceptance_content(self, analysis: Dict[str, Any], spec_id: str, file_name: str) -> str:
|
|
507
499
|
"""Generate acceptance.md content."""
|
|
508
500
|
return f"""---
|
|
509
501
|
"id": "ACCEPT-{spec_id}",
|
|
@@ -511,7 +503,7 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
511
503
|
"title": "Auto-generated Acceptance Criteria for {file_name}",
|
|
512
504
|
"version": "1.0.0",
|
|
513
505
|
"status": "pending",
|
|
514
|
-
"created": "{time.strftime(
|
|
506
|
+
"created": "{time.strftime("%Y-%m-%d")}",
|
|
515
507
|
"author": "@alfred-auto"
|
|
516
508
|
}}
|
|
517
509
|
---
|
|
@@ -523,21 +515,21 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
523
515
|
#### Basic Functionality
|
|
524
516
|
|
|
525
517
|
**Must-have:**
|
|
526
|
-
- [ ] {analysis.get(
|
|
527
|
-
- [ ] {analysis.get(
|
|
528
|
-
- [ ] {analysis.get(
|
|
518
|
+
- [ ] {analysis.get("must_have_1", "System must operate normally")}
|
|
519
|
+
- [ ] {analysis.get("must_have_2", "User interface must display correctly")}
|
|
520
|
+
- [ ] {analysis.get("must_have_3", "Data processing logic must function properly")}
|
|
529
521
|
|
|
530
522
|
**Should-have:**
|
|
531
|
-
- [ ] {analysis.get(
|
|
532
|
-
- [ ] {analysis.get(
|
|
523
|
+
- [ ] {analysis.get("should_have_1", "User experience must be smooth")}
|
|
524
|
+
- [ ] {analysis.get("should_have_2", "Performance targets must be met")}
|
|
533
525
|
|
|
534
526
|
#### Performance Testing
|
|
535
527
|
|
|
536
528
|
**Performance Requirements:**
|
|
537
|
-
- [ ] Response time: {analysis.get(
|
|
538
|
-
- [ ] Concurrent users: support {analysis.get(
|
|
539
|
-
- [ ] Memory usage: {analysis.get(
|
|
540
|
-
- [ ] CPU utilization: {analysis.get(
|
|
529
|
+
- [ ] Response time: {analysis.get("response_time", "within 1 second")}
|
|
530
|
+
- [ ] Concurrent users: support {analysis.get("concurrent_users", "100 users")} or more
|
|
531
|
+
- [ ] Memory usage: {analysis.get("memory_usage", "100MB or less")}
|
|
532
|
+
- [ ] CPU utilization: {analysis.get("cpu_usage", "50% or less")}
|
|
541
533
|
|
|
542
534
|
**Load Testing:**
|
|
543
535
|
- [ ] Functional load testing passed
|
|
@@ -547,9 +539,9 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
547
539
|
#### Security Testing
|
|
548
540
|
|
|
549
541
|
**Security Requirements:**
|
|
550
|
-
- [ ] {analysis.get(
|
|
551
|
-
- [ ] {analysis.get(
|
|
552
|
-
- [ ] {analysis.get(
|
|
542
|
+
- [ ] {analysis.get("security_req_1", "Authentication and authorization verification passed")}
|
|
543
|
+
- [ ] {analysis.get("security_req_2", "Input validation passed")}
|
|
544
|
+
- [ ] {analysis.get("security_req_3", "SQL injection protection passed")}
|
|
553
545
|
|
|
554
546
|
**Vulnerability Testing:**
|
|
555
547
|
- [ ] OWASP Top 10 inspection passed
|
|
@@ -572,9 +564,9 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
572
564
|
#### User Acceptance Testing
|
|
573
565
|
|
|
574
566
|
**User Scenarios:**
|
|
575
|
-
- [ ] {analysis.get(
|
|
576
|
-
- [ ] {analysis.get(
|
|
577
|
-
- [ ] {analysis.get(
|
|
567
|
+
- [ ] {analysis.get("user_scenario_1", "General user scenario testing passed")}
|
|
568
|
+
- [ ] {analysis.get("user_scenario_2", "Administrator scenario testing passed")}
|
|
569
|
+
- [ ] {analysis.get("user_scenario_3", "Error handling scenario testing passed")}
|
|
578
570
|
|
|
579
571
|
**User Feedback:**
|
|
580
572
|
- [ ] User satisfaction 80% or higher
|
|
@@ -683,14 +675,10 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
683
675
|
suggestions.append("Improvement needed to fully comply with EARS format.")
|
|
684
676
|
|
|
685
677
|
if completeness < 0.8:
|
|
686
|
-
suggestions.append(
|
|
687
|
-
"Requirements and specifications need to be more detailed."
|
|
688
|
-
)
|
|
678
|
+
suggestions.append("Requirements and specifications need to be more detailed.")
|
|
689
679
|
|
|
690
680
|
if content_quality < 0.7:
|
|
691
|
-
suggestions.append(
|
|
692
|
-
"Domain-specific terminology and technical content need to be added."
|
|
693
|
-
)
|
|
681
|
+
suggestions.append("Domain-specific terminology and technical content need to be added.")
|
|
694
682
|
|
|
695
683
|
return {
|
|
696
684
|
"quality_score": min(max(quality_score, 0.0), 1.0),
|
|
@@ -757,9 +745,7 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
757
745
|
"component",
|
|
758
746
|
"architecture",
|
|
759
747
|
]
|
|
760
|
-
technical_score = sum(
|
|
761
|
-
1 for term in technical_indicators if term in spec_md
|
|
762
|
-
) / len(technical_indicators)
|
|
748
|
+
technical_score = sum(1 for term in technical_indicators if term in spec_md) / len(technical_indicators)
|
|
763
749
|
|
|
764
750
|
# Check for specificity
|
|
765
751
|
has_requirements = re.search(r"REQ-\d+", spec_md)
|
|
@@ -773,9 +759,7 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
773
759
|
|
|
774
760
|
return (technical_score + specificity_score) / 2
|
|
775
761
|
|
|
776
|
-
def create_spec_files(
|
|
777
|
-
self, spec_id: str, content: Dict[str, str], base_dir: str = ".moai/specs"
|
|
778
|
-
) -> bool:
|
|
762
|
+
def create_spec_files(self, spec_id: str, content: Dict[str, str], base_dir: str = ".moai/specs") -> bool:
|
|
779
763
|
"""
|
|
780
764
|
Create SPEC files in the correct directory structure.
|
|
781
765
|
|
|
@@ -812,9 +796,7 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
812
796
|
logger.error(f"Failed to create spec files: {e}")
|
|
813
797
|
return False
|
|
814
798
|
|
|
815
|
-
def execute(
|
|
816
|
-
self, tool_name: str, tool_args: Dict[str, Any], result: Any = None
|
|
817
|
-
) -> Dict[str, Any]:
|
|
799
|
+
def execute(self, tool_name: str, tool_args: Dict[str, Any], result: Any = None) -> Dict[str, Any]:
|
|
818
800
|
"""
|
|
819
801
|
Execute the auto-spec completion hook.
|
|
820
802
|
|
|
@@ -860,9 +842,7 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
860
842
|
# Skip if confidence is too low
|
|
861
843
|
min_confidence = self.auto_config.get("min_confidence", 0.7)
|
|
862
844
|
if confidence < min_confidence:
|
|
863
|
-
logger.info(
|
|
864
|
-
f"Confidence {confidence} below threshold {min_confidence}"
|
|
865
|
-
)
|
|
845
|
+
logger.info(f"Confidence {confidence} below threshold {min_confidence}")
|
|
866
846
|
continue
|
|
867
847
|
|
|
868
848
|
# Generate complete spec
|
|
@@ -904,13 +884,9 @@ class PostToolAutoSpecCompletion(BaseHook):
|
|
|
904
884
|
|
|
905
885
|
# Add notification message
|
|
906
886
|
if successful_creations:
|
|
907
|
-
execution_result["message"] = (
|
|
908
|
-
f"Auto-generated {len(successful_creations)} SPEC(s)"
|
|
909
|
-
)
|
|
887
|
+
execution_result["message"] = f"Auto-generated {len(successful_creations)} SPEC(s)"
|
|
910
888
|
elif failed_creations:
|
|
911
|
-
execution_result["message"] =
|
|
912
|
-
"Auto-spec completion attempted but no specs created"
|
|
913
|
-
)
|
|
889
|
+
execution_result["message"] = "Auto-spec completion attempted but no specs created"
|
|
914
890
|
else:
|
|
915
891
|
execution_result["message"] = "No files required auto-spec completion"
|
|
916
892
|
|