moai-adk 0.32.8__py3-none-any.whl → 0.41.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of moai-adk might be problematic. Click here for more details.
- moai_adk/cli/commands/init.py +4 -1
- moai_adk/cli/commands/update.py +31 -26
- moai_adk/cli/worktree/cli.py +54 -43
- moai_adk/cli/worktree/manager.py +17 -14
- moai_adk/cli/worktree/registry.py +313 -19
- moai_adk/core/config/unified.py +237 -63
- moai_adk/core/error_recovery_system.py +22 -4
- moai_adk/core/git/conflict_detector.py +10 -1
- moai_adk/core/git/event_detector.py +16 -5
- moai_adk/core/language_config_resolver.py +96 -3
- moai_adk/core/merge/analyzer.py +509 -324
- moai_adk/core/migration/alfred_to_moai_migrator.py +7 -1
- moai_adk/core/migration/backup_manager.py +54 -4
- moai_adk/core/migration/file_migrator.py +174 -2
- moai_adk/core/migration/interactive_checkbox_ui.py +42 -31
- moai_adk/core/migration/version_detector.py +123 -19
- moai_adk/core/migration/version_migrator.py +44 -9
- moai_adk/core/project/backup_utils.py +9 -1
- moai_adk/core/project/initializer.py +33 -96
- moai_adk/core/project/phase_executor.py +79 -33
- moai_adk/core/quality/trust_checker.py +30 -10
- moai_adk/core/realtime_monitoring_dashboard.py +3 -3
- moai_adk/core/rollback_manager.py +46 -19
- moai_adk/core/template/backup.py +4 -3
- moai_adk/core/template/config.py +33 -9
- moai_adk/core/template/merger.py +34 -8
- moai_adk/core/template/processor.py +144 -9
- moai_adk/core/template_engine.py +10 -1
- moai_adk/core/template_variable_synchronizer.py +16 -2
- moai_adk/core/version_sync.py +54 -6
- moai_adk/project/configuration.py +1 -1
- moai_adk/statusline/config.py +5 -2
- moai_adk/statusline/main.py +58 -0
- moai_adk/statusline/renderer.py +38 -78
- moai_adk/templates/.claude/agents/moai/ai-nano-banana.md +218 -51
- moai_adk/templates/.claude/agents/moai/builder-agent.md +46 -11
- moai_adk/templates/.claude/agents/moai/builder-command.md +88 -26
- moai_adk/templates/.claude/agents/moai/builder-plugin.md +753 -0
- moai_adk/templates/.claude/agents/moai/builder-skill.md +79 -8
- moai_adk/templates/.claude/agents/moai/expert-backend.md +100 -28
- moai_adk/templates/.claude/agents/moai/expert-database.md +20 -12
- moai_adk/templates/.claude/agents/moai/expert-debug.md +19 -8
- moai_adk/templates/.claude/agents/moai/expert-devops.md +36 -25
- moai_adk/templates/.claude/agents/moai/expert-frontend.md +99 -38
- moai_adk/templates/.claude/agents/moai/expert-performance.md +661 -0
- moai_adk/templates/.claude/agents/moai/expert-refactoring.md +218 -0
- moai_adk/templates/.claude/agents/moai/expert-security.md +55 -4
- moai_adk/templates/.claude/agents/moai/expert-testing.md +737 -0
- moai_adk/templates/.claude/agents/moai/expert-uiux.md +20 -11
- moai_adk/templates/.claude/agents/moai/manager-claude-code.md +13 -4
- moai_adk/templates/.claude/agents/moai/manager-docs.md +15 -7
- moai_adk/templates/.claude/agents/moai/manager-git.md +192 -37
- moai_adk/templates/.claude/agents/moai/manager-project.md +13 -7
- moai_adk/templates/.claude/agents/moai/manager-quality.md +48 -6
- moai_adk/templates/.claude/agents/moai/manager-spec.md +110 -8
- moai_adk/templates/.claude/agents/moai/manager-strategy.md +203 -17
- moai_adk/templates/.claude/agents/moai/manager-tdd.md +217 -23
- moai_adk/templates/.claude/agents/moai/mcp-context7.md +102 -7
- moai_adk/templates/.claude/agents/moai/mcp-figma.md +107 -86
- moai_adk/templates/.claude/agents/moai/mcp-notion.md +50 -4
- moai_adk/templates/.claude/agents/moai/mcp-playwright.md +52 -4
- moai_adk/templates/.claude/agents/moai/mcp-sequential-thinking.md +49 -5
- moai_adk/templates/.claude/commands/moai/0-project.md +503 -307
- moai_adk/templates/.claude/commands/moai/1-plan.md +255 -323
- moai_adk/templates/.claude/commands/moai/2-run.md +257 -315
- moai_adk/templates/.claude/commands/moai/3-sync.md +421 -56
- moai_adk/templates/.claude/commands/moai/9-feedback.md +40 -34
- moai_adk/templates/.claude/hooks/moai/__init__.py +0 -0
- moai_adk/templates/.claude/hooks/moai/lib/README.md +143 -0
- moai_adk/templates/.claude/hooks/moai/lib/__init__.py +19 -0
- moai_adk/templates/.claude/hooks/moai/lib/checkpoint.py +4 -1
- moai_adk/templates/.claude/hooks/moai/lib/common.py +35 -5
- moai_adk/templates/.claude/hooks/moai/lib/config_manager.py +12 -14
- moai_adk/templates/.claude/hooks/moai/lib/exceptions.py +171 -0
- moai_adk/templates/.claude/hooks/moai/lib/git_operations_manager.py +1 -1
- moai_adk/templates/.claude/hooks/moai/lib/language_validator.py +104 -14
- moai_adk/templates/.claude/hooks/moai/lib/models.py +9 -7
- moai_adk/templates/.claude/hooks/moai/lib/path_utils.py +204 -13
- moai_adk/templates/.claude/hooks/moai/lib/project.py +23 -14
- moai_adk/templates/.claude/hooks/moai/lib/tool_registry.py +804 -0
- moai_adk/templates/.claude/hooks/moai/lib/unified_timeout_manager.py +14 -2
- moai_adk/templates/.claude/hooks/moai/post_tool__ast_grep_scan.py +256 -0
- moai_adk/templates/.claude/hooks/moai/post_tool__code_formatter.py +253 -0
- moai_adk/templates/.claude/hooks/moai/post_tool__linter.py +307 -0
- moai_adk/templates/.claude/hooks/moai/pre_tool__security_guard.py +231 -0
- moai_adk/templates/.claude/hooks/moai/session_end__auto_cleanup.py +28 -24
- moai_adk/templates/.claude/hooks/moai/session_start__show_project_info.py +236 -32
- moai_adk/templates/.claude/output-styles/moai/r2d2.md +265 -2
- moai_adk/templates/.claude/output-styles/moai/yoda.md +23 -2
- moai_adk/templates/.claude/settings.json +43 -6
- moai_adk/templates/.claude/skills/moai-ai-nano-banana/SKILL.md +302 -0
- moai_adk/templates/.claude/skills/moai-ai-nano-banana/examples.md +431 -0
- moai_adk/templates/.claude/skills/moai-ai-nano-banana/reference.md +139 -0
- moai_adk/templates/.claude/skills/moai-ai-nano-banana/scripts/batch_generate.py +560 -0
- moai_adk/templates/.claude/skills/moai-ai-nano-banana/scripts/generate_image.py +362 -0
- moai_adk/templates/.claude/skills/moai-docs-generation/SKILL.md +251 -196
- moai_adk/templates/.claude/skills/moai-docs-generation/examples.md +252 -0
- moai_adk/templates/.claude/skills/moai-docs-generation/modules/README.md +39 -27
- moai_adk/templates/.claude/skills/moai-docs-generation/modules/api-documentation.md +115 -125
- moai_adk/templates/.claude/skills/moai-docs-generation/modules/code-documentation.md +150 -150
- moai_adk/templates/.claude/skills/moai-docs-generation/modules/multi-format-output.md +182 -175
- moai_adk/templates/.claude/skills/moai-docs-generation/modules/user-guides.md +198 -138
- moai_adk/templates/.claude/skills/moai-docs-generation/reference.md +234 -0
- moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +18 -13
- moai_adk/templates/.claude/skills/moai-domain-backend/examples.md +718 -0
- moai_adk/templates/.claude/skills/moai-domain-backend/reference.md +464 -0
- moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +20 -14
- moai_adk/templates/.claude/skills/moai-domain-database/examples.md +830 -0
- moai_adk/templates/.claude/skills/moai-domain-database/reference.md +545 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +123 -425
- moai_adk/templates/.claude/skills/moai-domain-frontend/examples.md +968 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/modules/component-architecture.md +723 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/modules/nextjs16-patterns.md +713 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/modules/performance-optimization.md +694 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/modules/react19-patterns.md +591 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/modules/state-management.md +680 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/modules/vue35-patterns.md +802 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/reference.md +664 -0
- moai_adk/templates/.claude/skills/moai-domain-uiux/SKILL.md +16 -15
- moai_adk/templates/.claude/skills/moai-formats-data/SKILL.md +104 -315
- moai_adk/templates/.claude/skills/moai-formats-data/examples.md +804 -0
- moai_adk/templates/.claude/skills/moai-formats-data/modules/README.md +299 -70
- moai_adk/templates/.claude/skills/moai-formats-data/modules/toon-encoding.md +6 -6
- moai_adk/templates/.claude/skills/moai-formats-data/reference.md +585 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/SKILL.md +196 -154
- moai_adk/templates/.claude/skills/moai-foundation-claude/examples.md +732 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/advanced-agent-patterns.md +370 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-cli-reference-official.md +420 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-devcontainers-official.md +381 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-discover-plugins-official.md +379 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-headless-official.md +378 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-hooks-official.md +110 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-memory-official.md +2 -2
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-plugin-marketplaces-official.md +308 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-plugins-official.md +432 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-sandboxing-official.md +282 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-skills-official.md +425 -71
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-statusline-official.md +293 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-sub-agents-official.md +325 -143
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference.md +209 -0
- moai_adk/templates/.claude/skills/moai-foundation-context/SKILL.md +12 -1
- moai_adk/templates/.claude/skills/moai-foundation-context/examples.md +1048 -0
- moai_adk/templates/.claude/skills/moai-foundation-context/reference.md +246 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/SKILL.md +33 -134
- moai_adk/templates/.claude/skills/moai-foundation-core/examples.md +358 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/agents-reference.md +31 -18
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/commands-reference.md +30 -30
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/delegation-advanced.md +279 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/delegation-implementation.md +267 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/delegation-patterns.md +121 -650
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/patterns.md +22 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/spec-ears-format.md +200 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/spec-first-tdd.md +37 -730
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/spec-tdd-implementation.md +275 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/trust-5-framework.md +77 -819
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/trust-5-implementation.md +244 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/trust-5-validation.md +219 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/reference.md +478 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/SKILL.md +311 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/examples.md +228 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/modules/assumption-matrix.md +80 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/modules/cognitive-bias.md +199 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/modules/first-principles.md +140 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/modules/trade-off-analysis.md +154 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/reference.md +157 -0
- moai_adk/templates/.claude/skills/moai-foundation-quality/SKILL.md +17 -16
- moai_adk/templates/.claude/skills/moai-lang-cpp/SKILL.md +430 -0
- moai_adk/templates/.claude/skills/moai-lang-cpp/examples.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-cpp/modules/advanced-patterns.md +401 -0
- moai_adk/templates/.claude/skills/moai-lang-cpp/reference.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/SKILL.md +193 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/examples.md +585 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/modules/aspnet-core.md +627 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/modules/blazor-components.md +767 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/modules/cqrs-validation.md +626 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/modules/csharp12-features.md +580 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/modules/efcore-patterns.md +622 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/reference.md +403 -0
- moai_adk/templates/.claude/skills/moai-lang-elixir/SKILL.md +394 -0
- moai_adk/templates/.claude/skills/moai-lang-elixir/examples.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-elixir/modules/advanced-patterns.md +531 -0
- moai_adk/templates/.claude/skills/moai-lang-elixir/reference.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-flutter/SKILL.md +472 -0
- moai_adk/templates/.claude/skills/moai-lang-flutter/examples.md +1090 -0
- moai_adk/templates/.claude/skills/moai-lang-flutter/reference.md +686 -0
- moai_adk/templates/.claude/skills/moai-lang-go/SKILL.md +377 -0
- moai_adk/templates/.claude/skills/moai-lang-go/examples.md +919 -0
- moai_adk/templates/.claude/skills/moai-lang-go/reference.md +737 -0
- moai_adk/templates/.claude/skills/moai-lang-java/SKILL.md +386 -0
- moai_adk/templates/.claude/skills/moai-lang-java/examples.md +864 -0
- moai_adk/templates/.claude/skills/moai-lang-java/reference.md +291 -0
- moai_adk/templates/.claude/skills/moai-lang-javascript/SKILL.md +418 -0
- moai_adk/templates/.claude/skills/moai-lang-javascript/examples.md +973 -0
- moai_adk/templates/.claude/skills/moai-lang-javascript/reference.md +1543 -0
- moai_adk/templates/.claude/skills/moai-lang-kotlin/SKILL.md +383 -0
- moai_adk/templates/.claude/skills/moai-lang-kotlin/examples.md +1006 -0
- moai_adk/templates/.claude/skills/moai-lang-kotlin/reference.md +562 -0
- moai_adk/templates/.claude/skills/moai-lang-php/SKILL.md +504 -0
- moai_adk/templates/.claude/skills/moai-lang-php/examples.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-php/modules/advanced-patterns.md +538 -0
- moai_adk/templates/.claude/skills/moai-lang-php/reference.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-python/SKILL.md +489 -0
- moai_adk/templates/.claude/skills/moai-lang-python/examples.md +977 -0
- moai_adk/templates/.claude/skills/moai-lang-python/reference.md +804 -0
- moai_adk/templates/.claude/skills/moai-lang-r/SKILL.md +389 -0
- moai_adk/templates/.claude/skills/moai-lang-r/examples.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-r/modules/advanced-patterns.md +489 -0
- moai_adk/templates/.claude/skills/moai-lang-r/reference.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-ruby/SKILL.md +432 -0
- moai_adk/templates/.claude/skills/moai-lang-ruby/examples.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-ruby/modules/advanced-patterns.md +309 -0
- moai_adk/templates/.claude/skills/moai-lang-ruby/modules/testing-patterns.md +306 -0
- moai_adk/templates/.claude/skills/moai-lang-ruby/reference.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-rust/SKILL.md +377 -0
- moai_adk/templates/.claude/skills/moai-lang-rust/examples.md +659 -0
- moai_adk/templates/.claude/skills/moai-lang-rust/reference.md +504 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/SKILL.md +211 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/examples.md +633 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/modules/akka-actors.md +479 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/modules/cats-effect.md +489 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/modules/functional-programming.md +460 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/modules/spark-data.md +498 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/modules/zio-patterns.md +541 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/reference.md +423 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/SKILL.md +191 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/examples.md +918 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/modules/combine-reactive.md +256 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/modules/concurrency.md +270 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/modules/swift6-features.md +265 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/modules/swiftui-patterns.md +314 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/reference.md +672 -0
- moai_adk/templates/.claude/skills/moai-lang-typescript/SKILL.md +364 -0
- moai_adk/templates/.claude/skills/moai-lang-typescript/examples.md +1089 -0
- moai_adk/templates/.claude/skills/moai-lang-typescript/reference.md +731 -0
- moai_adk/templates/.claude/skills/moai-library-mermaid/SKILL.md +93 -227
- moai_adk/templates/.claude/skills/moai-library-nextra/SKILL.md +25 -6
- moai_adk/templates/.claude/skills/moai-library-nextra/examples.md +592 -0
- moai_adk/templates/.claude/skills/moai-library-nextra/modules/advanced-patterns.md +331 -12
- moai_adk/templates/.claude/skills/moai-library-nextra/modules/configuration.md +330 -37
- moai_adk/templates/.claude/skills/moai-library-nextra/reference.md +379 -0
- moai_adk/templates/.claude/skills/moai-library-shadcn/SKILL.md +16 -13
- moai_adk/templates/.claude/skills/moai-library-shadcn/modules/shadcn-theming.md +1 -1
- moai_adk/templates/.claude/skills/moai-platform-auth0/SKILL.md +283 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/examples.md +2446 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/adaptive-mfa.md +233 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/akamai-integration.md +214 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/application-credentials.md +280 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/attack-protection-log-events.md +224 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/attack-protection-overview.md +140 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/bot-detection.md +144 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/breached-password-detection.md +187 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/brute-force-protection.md +189 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/certifications.md +282 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/compliance-overview.md +263 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/continuous-session-protection.md +307 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/customize-mfa.md +177 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/dpop-implementation.md +283 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/fapi-implementation.md +259 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/gdpr-compliance.md +313 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/guardian-configuration.md +269 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/highly-regulated-identity.md +272 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/jwt-fundamentals.md +248 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/mdl-verification.md +210 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/mfa-api-management.md +278 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/mfa-factors.md +226 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/mfa-overview.md +174 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/mtls-sender-constraining.md +316 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/ropg-flow-mfa.md +216 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/security-center.md +325 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/security-guidance.md +277 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/state-parameters.md +177 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/step-up-authentication.md +251 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/suspicious-ip-throttling.md +240 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/tenant-access-control.md +179 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/webauthn-fido.md +235 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/reference.md +224 -0
- moai_adk/templates/.claude/skills/moai-platform-clerk/SKILL.md +425 -0
- moai_adk/templates/.claude/skills/moai-platform-clerk/modules/advanced-patterns.md +417 -0
- moai_adk/templates/.claude/skills/moai-platform-clerk/reference.md +273 -0
- moai_adk/templates/.claude/skills/moai-platform-convex/SKILL.md +228 -0
- moai_adk/templates/.claude/skills/moai-platform-convex/examples.md +506 -0
- moai_adk/templates/.claude/skills/moai-platform-convex/modules/auth-integration.md +421 -0
- moai_adk/templates/.claude/skills/moai-platform-convex/modules/file-storage.md +474 -0
- moai_adk/templates/.claude/skills/moai-platform-convex/modules/reactive-queries.md +302 -0
- moai_adk/templates/.claude/skills/moai-platform-convex/modules/server-functions.md +452 -0
- moai_adk/templates/.claude/skills/moai-platform-convex/reference.md +385 -0
- moai_adk/templates/.claude/skills/moai-platform-firebase-auth/SKILL.md +249 -0
- moai_adk/templates/.claude/skills/moai-platform-firebase-auth/examples.md +514 -0
- moai_adk/templates/.claude/skills/moai-platform-firebase-auth/modules/custom-claims.md +374 -0
- moai_adk/templates/.claude/skills/moai-platform-firebase-auth/modules/phone-auth.md +372 -0
- moai_adk/templates/.claude/skills/moai-platform-firebase-auth/modules/social-auth.md +339 -0
- moai_adk/templates/.claude/skills/moai-platform-firebase-auth/reference.md +382 -0
- moai_adk/templates/.claude/skills/moai-platform-firestore/SKILL.md +230 -0
- moai_adk/templates/.claude/skills/moai-platform-firestore/examples.md +445 -0
- moai_adk/templates/.claude/skills/moai-platform-firestore/modules/offline-cache.md +392 -0
- moai_adk/templates/.claude/skills/moai-platform-firestore/modules/realtime-listeners.md +441 -0
- moai_adk/templates/.claude/skills/moai-platform-firestore/modules/security-rules.md +352 -0
- moai_adk/templates/.claude/skills/moai-platform-firestore/modules/transactions.md +452 -0
- moai_adk/templates/.claude/skills/moai-platform-firestore/reference.md +322 -0
- moai_adk/templates/.claude/skills/moai-platform-neon/SKILL.md +205 -0
- moai_adk/templates/.claude/skills/moai-platform-neon/examples.md +470 -0
- moai_adk/templates/.claude/skills/moai-platform-neon/modules/auto-scaling.md +349 -0
- moai_adk/templates/.claude/skills/moai-platform-neon/modules/branching-workflows.md +354 -0
- moai_adk/templates/.claude/skills/moai-platform-neon/modules/connection-pooling.md +412 -0
- moai_adk/templates/.claude/skills/moai-platform-neon/modules/pitr-backups.md +458 -0
- moai_adk/templates/.claude/skills/moai-platform-neon/reference.md +272 -0
- moai_adk/templates/.claude/skills/moai-platform-railway/SKILL.md +223 -0
- moai_adk/templates/.claude/skills/moai-platform-railway/examples.md +539 -0
- moai_adk/templates/.claude/skills/moai-platform-railway/modules/docker-deployment.md +261 -0
- moai_adk/templates/.claude/skills/moai-platform-railway/modules/multi-service.md +291 -0
- moai_adk/templates/.claude/skills/moai-platform-railway/modules/networking-domains.md +338 -0
- moai_adk/templates/.claude/skills/moai-platform-railway/modules/volumes-storage.md +353 -0
- moai_adk/templates/.claude/skills/moai-platform-railway/reference.md +374 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/SKILL.md +206 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/examples.md +502 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/modules/auth-integration.md +384 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/modules/edge-functions.md +371 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/modules/postgresql-pgvector.md +231 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/modules/realtime-presence.md +354 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/modules/row-level-security.md +286 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/modules/storage-cdn.md +319 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/modules/typescript-patterns.md +453 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/reference.md +284 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/SKILL.md +209 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/examples.md +502 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/modules/analytics-speed.md +348 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/modules/deployment-config.md +344 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/modules/edge-functions.md +222 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/modules/isr-caching.md +306 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/modules/kv-storage.md +399 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/reference.md +360 -0
- moai_adk/templates/.claude/skills/moai-plugin-builder/SKILL.md +473 -0
- moai_adk/templates/.claude/skills/moai-plugin-builder/examples.md +621 -0
- moai_adk/templates/.claude/skills/moai-plugin-builder/modules/migration.md +341 -0
- moai_adk/templates/.claude/skills/moai-plugin-builder/modules/validation.md +373 -0
- moai_adk/templates/.claude/skills/moai-plugin-builder/reference.md +464 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/SKILL.md +306 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/examples.md +1099 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/modules/language-specific.md +307 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/modules/pattern-syntax.md +237 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/modules/refactoring-patterns.md +260 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/modules/security-rules.md +239 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/reference.md +288 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/languages/go.yml +90 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/languages/python.yml +101 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/languages/typescript.yml +83 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/quality/complexity-check.yml +94 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/quality/deprecated-apis.yml +84 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/security/secrets-detection.yml +89 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/security/sql-injection.yml +45 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/security/xss-prevention.yml +50 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/sgconfig.yml +54 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/SKILL.md +214 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/examples.md +697 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/index.md +96 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/acp.md +115 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/agents.md +241 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/commands.md +197 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/custom-tools.md +197 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/formatters.md +164 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/keybinds.md +150 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/lsp-servers.md +156 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/mcp-servers.md +214 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/models.md +197 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/permissions.md +162 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/rules.md +129 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/skills.md +192 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/themes.md +200 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/tools.md +169 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/core/config.md +211 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/core/enterprise.md +68 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/core/intro.md +127 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/core/migration-1.0.md +82 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/core/network.md +72 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/core/providers.md +310 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/core/troubleshooting.md +124 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/develop/ecosystem.md +75 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/develop/plugins.md +218 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/develop/sdk.md +266 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/develop/server.md +207 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/usage/cli.md +159 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/usage/github.md +181 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/usage/gitlab.md +122 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/usage/ide.md +74 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/usage/share.md +106 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/usage/tui.md +129 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/usage/zen.md +118 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/reference.md +790 -0
- moai_adk/templates/.claude/skills/moai-workflow-jit-docs/SKILL.md +189 -424
- moai_adk/templates/.claude/skills/moai-workflow-jit-docs/examples.md +544 -0
- moai_adk/templates/.claude/skills/moai-workflow-jit-docs/reference.md +307 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/SKILL.md +187 -314
- moai_adk/templates/.claude/skills/moai-workflow-project/examples.md +547 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/reference.md +275 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/schemas/tab_schema.json +284 -212
- moai_adk/templates/.claude/skills/moai-workflow-project/templates/doc-templates/product-template.md +2 -2
- moai_adk/templates/.claude/skills/moai-workflow-project/templates/doc-templates/structure-template.md +1 -1
- moai_adk/templates/.claude/skills/moai-workflow-project/templates/doc-templates/tech-template.md +22 -1
- moai_adk/templates/.claude/skills/moai-workflow-spec/SKILL.md +336 -0
- moai_adk/templates/.claude/skills/moai-workflow-spec/examples.md +900 -0
- moai_adk/templates/.claude/skills/moai-workflow-spec/modules/advanced-patterns.md +237 -0
- moai_adk/templates/.claude/skills/moai-workflow-spec/reference.md +704 -0
- moai_adk/templates/.claude/skills/moai-workflow-templates/SKILL.md +12 -0
- moai_adk/templates/.claude/skills/moai-workflow-templates/examples.md +552 -0
- moai_adk/templates/.claude/skills/moai-workflow-templates/reference.md +346 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/SKILL.md +221 -367
- moai_adk/templates/.claude/skills/moai-workflow-testing/examples.md +672 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/README.md +52 -3
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/ai-debugging.md +263 -806
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/context7-integration.md +286 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/review-workflows.md +500 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/relevance-analysis.md +154 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/safety-analysis.md +148 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/scoring-algorithms.md +196 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/timeliness-analysis.md +168 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/truthfulness-analysis.md +136 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/usability-analysis.md +153 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework.md +257 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review.md +191 -1344
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/code-review/analysis-patterns.md +340 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/code-review/core-classes.md +299 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/code-review/tool-integration.md +380 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/debugging/debugging-workflows.md +451 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/debugging/error-analysis.md +442 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance/optimization-patterns.md +473 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance/profiling-techniques.md +481 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization/ai-optimization.md +241 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization/bottleneck-detection.md +397 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization/optimization-plan.md +315 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization/profiler-core.md +277 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization/real-time-monitoring.md +187 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization.md +287 -1194
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/quality-metrics.md +415 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/refactoring/ai-workflows.md +620 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/refactoring/patterns.md +692 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/security-analysis.md +429 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/smart-refactoring.md +262 -1192
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/static-analysis.md +438 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd/core-classes.md +397 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7/advanced-features.md +494 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7/red-green-refactor.md +316 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7/test-generation.md +471 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7/test-patterns.md +371 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7.md +227 -1222
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/trust5-validation.md +428 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/reference.md +440 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/SKILL.md +227 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/integration-patterns.md +149 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/moai-adk-integration.md +245 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/parallel-advanced.md +310 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/parallel-development.md +202 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/parallel-workflows.md +302 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/registry-architecture.md +271 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/resource-optimization.md +300 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/tools-integration.md +280 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/troubleshooting.md +397 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/worktree-commands.md +296 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/worktree-management.md +217 -0
- moai_adk/templates/.git-hooks/pre-push +168 -50
- moai_adk/templates/.gitignore +0 -3
- moai_adk/templates/.lsp.json +152 -0
- moai_adk/templates/.mcp.json +5 -12
- moai_adk/templates/.moai/config/config.yaml +20 -306
- moai_adk/templates/.moai/config/multilingual-triggers.yaml +213 -0
- moai_adk/templates/.moai/config/questions/_schema.yaml +105 -10
- moai_adk/templates/.moai/config/questions/tab0-init.yaml +259 -0
- moai_adk/templates/.moai/config/questions/tab1-user.yaml +4 -5
- moai_adk/templates/.moai/config/questions/tab2-project.yaml +12 -55
- moai_adk/templates/.moai/config/questions/tab3-git.yaml +111 -21
- moai_adk/templates/.moai/config/questions/tab4-quality.yaml +34 -18
- moai_adk/templates/.moai/config/questions/tab5-system.yaml +19 -75
- moai_adk/templates/.moai/config/sections/git-strategy.yaml +83 -7
- moai_adk/templates/.moai/config/sections/language.yaml +7 -7
- moai_adk/templates/.moai/config/sections/project.yaml +1 -1
- moai_adk/templates/.moai/config/sections/quality.yaml +7 -4
- moai_adk/templates/.moai/config/sections/system.yaml +11 -1
- moai_adk/templates/.moai/config/statusline-config.yaml +19 -13
- moai_adk/templates/.moai/scripts/setup-glm.py +4 -4
- moai_adk/templates/CLAUDE.md +578 -154
- moai_adk/utils/common.py +33 -0
- moai_adk/version.py +1 -1
- {moai_adk-0.32.8.dist-info → moai_adk-0.41.0.dist-info}/METADATA +905 -109
- moai_adk-0.41.0.dist-info/RECORD +683 -0
- moai_adk/core/config/auto_spec_config.py +0 -340
- moai_adk/core/hooks/post_tool_auto_spec_completion.py +0 -901
- moai_adk/core/spec/confidence_scoring.py +0 -680
- moai_adk/core/spec/ears_template_engine.py +0 -1247
- moai_adk/core/spec/quality_validator.py +0 -687
- moai_adk/templates/.claude/skills/moai-domain-uiux/modules/design-system-tokens.md +0 -405
- moai_adk/templates/.claude/skills/moai-integration-mcp/SKILL.md +0 -352
- moai_adk/templates/.claude/skills/moai-integration-mcp/modules/README.md +0 -52
- moai_adk/templates/.claude/skills/moai-integration-mcp/modules/error-handling.md +0 -334
- moai_adk/templates/.claude/skills/moai-integration-mcp/modules/integration-patterns.md +0 -310
- moai_adk/templates/.claude/skills/moai-integration-mcp/modules/security-authentication.md +0 -256
- moai_adk/templates/.claude/skills/moai-integration-mcp/modules/server-architecture.md +0 -253
- moai_adk/templates/.claude/skills/moai-lang-unified/README.md +0 -133
- moai_adk/templates/.claude/skills/moai-lang-unified/SKILL.md +0 -296
- moai_adk/templates/.claude/skills/moai-lang-unified/examples.md +0 -1269
- moai_adk/templates/.claude/skills/moai-lang-unified/reference.md +0 -331
- moai_adk/templates/.claude/skills/moai-library-nextra/advanced-patterns.md +0 -336
- moai_adk/templates/.claude/skills/moai-platform-baas/README.md +0 -186
- moai_adk/templates/.claude/skills/moai-platform-baas/SKILL.md +0 -290
- moai_adk/templates/.claude/skills/moai-platform-baas/examples.md +0 -1225
- moai_adk/templates/.claude/skills/moai-platform-baas/reference.md +0 -567
- moai_adk/templates/.claude/skills/moai-platform-baas/scripts/provider-selector.py +0 -323
- moai_adk/templates/.claude/skills/moai-platform-baas/templates/stack-config.yaml +0 -204
- moai_adk/templates/.claude/skills/moai-workflow-project/__init__.py +0 -520
- moai_adk/templates/.claude/skills/moai-workflow-project/complete_workflow_demo_fixed.py +0 -574
- moai_adk/templates/.claude/skills/moai-workflow-project/examples/complete_project_setup.py +0 -317
- moai_adk/templates/.claude/skills/moai-workflow-project/examples/complete_workflow_demo.py +0 -663
- moai_adk/templates/.claude/skills/moai-workflow-project/examples/config-migration-example.json +0 -190
- moai_adk/templates/.claude/skills/moai-workflow-project/examples/question-examples.json +0 -135
- moai_adk/templates/.claude/skills/moai-workflow-project/examples/quick_start.py +0 -196
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/__init__.py +0 -17
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/advanced-patterns.md +0 -158
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/ask_user_integration.py +0 -340
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/batch_questions.py +0 -713
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/config_manager.py +0 -538
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/documentation_manager.py +0 -1336
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/language_initializer.py +0 -730
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/migration_manager.py +0 -608
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/template_optimizer.py +0 -1005
- moai_adk/templates/.claude/skills/moai-workflow-project/test_integration_simple.py +0 -436
- moai_adk/templates/.claude/skills/moai-worktree/SKILL.md +0 -410
- moai_adk/templates/.claude/skills/moai-worktree/modules/integration-patterns.md +0 -982
- moai_adk/templates/.claude/skills/moai-worktree/modules/parallel-development.md +0 -778
- moai_adk/templates/.claude/skills/moai-worktree/modules/worktree-commands.md +0 -646
- moai_adk/templates/.claude/skills/moai-worktree/modules/worktree-management.md +0 -782
- moai_adk/templates/.moai/cache/personalization.json +0 -10
- moai_adk/templates/.moai/config/presets/manual.yaml +0 -28
- moai_adk/templates/.moai/config/presets/personal.yaml +0 -30
- moai_adk/templates/.moai/config/presets/team.yaml +0 -33
- moai_adk-0.32.8.dist-info/RECORD +0 -396
- /moai_adk/templates/.claude/skills/moai-library-mermaid/{advanced-patterns.md → modules/advanced-patterns.md} +0 -0
- /moai_adk/templates/.claude/skills/moai-library-mermaid/{optimization.md → modules/optimization.md} +0 -0
- /moai_adk/templates/.claude/skills/moai-library-nextra/{optimization.md → modules/optimization.md} +0 -0
- /moai_adk/templates/.claude/skills/moai-workflow-jit-docs/{advanced-patterns.md → modules/advanced-patterns.md} +0 -0
- /moai_adk/templates/.claude/skills/moai-workflow-jit-docs/{optimization.md → modules/optimization.md} +0 -0
- /moai_adk/templates/.claude/skills/moai-workflow-testing/{advanced-patterns.md → modules/advanced-patterns.md} +0 -0
- /moai_adk/templates/.claude/skills/moai-workflow-testing/{optimization.md → modules/optimization.md} +0 -0
- /moai_adk/templates/.claude/skills/{moai-worktree → moai-workflow-worktree}/examples.md +0 -0
- /moai_adk/templates/.claude/skills/{moai-worktree → moai-workflow-worktree}/reference.md +0 -0
- {moai_adk-0.32.8.dist-info → moai_adk-0.41.0.dist-info}/WHEEL +0 -0
- {moai_adk-0.32.8.dist-info → moai_adk-0.41.0.dist-info}/entry_points.txt +0 -0
- {moai_adk-0.32.8.dist-info → moai_adk-0.41.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -5,841 +5,298 @@
|
|
|
5
5
|
> Time: 20+ minutes
|
|
6
6
|
> Dependencies: Python 3.8+, Context7 MCP, asyncio, traceback, dataclasses
|
|
7
7
|
|
|
8
|
-
##
|
|
8
|
+
## Overview
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
AI-powered debugging system that combines intelligent error classification, Context7 documentation integration, and pattern recognition to provide comprehensive error analysis and solution generation.
|
|
11
|
+
|
|
12
|
+
### Core Capabilities
|
|
13
|
+
|
|
14
|
+
Error Classification: AI-enhanced error categorization with context-aware type mapping and severity assessment
|
|
15
|
+
|
|
16
|
+
Context7 Integration: Automatic retrieval of latest debugging patterns and best practices from official documentation
|
|
17
|
+
|
|
18
|
+
Pattern Matching: Comprehensive regex-based error pattern recognition with confidence scoring
|
|
19
|
+
|
|
20
|
+
Solution Generation: Multi-source solution generation from patterns, Context7, and AI-generated fixes
|
|
21
|
+
|
|
22
|
+
Learning System: Self-improving debugger that learns from successful fixes over time
|
|
23
|
+
|
|
24
|
+
### Key Features
|
|
25
|
+
|
|
26
|
+
Intelligent Classification: Multi-heuristic error classification using type mapping, message analysis, and context awareness
|
|
27
|
+
|
|
28
|
+
Comprehensive Solutions: Pattern-based, Context7-sourced, and AI-generated solutions with confidence scoring
|
|
29
|
+
|
|
30
|
+
Prevention Strategies: Type-specific prevention strategies and related error detection for proactive debugging
|
|
31
|
+
|
|
32
|
+
Performance Monitoring: Built-in statistics tracking, error frequency analysis, and cache optimization
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## Quick Reference
|
|
37
|
+
|
|
38
|
+
### Error Type Classification
|
|
39
|
+
|
|
40
|
+
System supports comprehensive error type categorization:
|
|
41
|
+
|
|
42
|
+
- Syntax Errors: SYNTAX - Syntax and indentation issues
|
|
43
|
+
- Import Errors: IMPORT - Module import and dependency issues
|
|
44
|
+
- Runtime Errors: RUNTIME - General runtime exceptions
|
|
45
|
+
- Type Errors: TYPE_ERROR - Data type mismatches
|
|
46
|
+
- Value Errors: VALUE_ERROR - Invalid value conversions
|
|
47
|
+
- Attribute Errors: ATTRIBUTE_ERROR - Object attribute access issues
|
|
48
|
+
- Key Errors: KEY_ERROR - Dictionary key access issues
|
|
49
|
+
- Network Errors: NETWORK - Connection and timeout issues
|
|
50
|
+
- Database Errors: DATABASE - SQL and database operation issues
|
|
51
|
+
- Memory Errors: MEMORY - Memory allocation and heap issues
|
|
52
|
+
- Concurrency Errors: CONCURRENCY - Thread and locking issues
|
|
53
|
+
- Unknown Errors: UNKNOWN - Uncategorized or novel errors
|
|
54
|
+
|
|
55
|
+
### Data Structures
|
|
56
|
+
|
|
57
|
+
Core data classes for error analysis:
|
|
11
58
|
|
|
12
59
|
```python
|
|
13
|
-
import asyncio
|
|
14
|
-
import traceback
|
|
15
|
-
from typing import Dict, List, Optional, Any, Union
|
|
16
60
|
from dataclasses import dataclass
|
|
17
61
|
from enum import Enum
|
|
18
62
|
|
|
19
63
|
class ErrorType(Enum):
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
64
|
+
"""Classification of error types for intelligent handling."""
|
|
65
|
+
SYNTAX = "syntax_error"
|
|
66
|
+
RUNTIME = "runtime_error"
|
|
67
|
+
IMPORT = "import_error"
|
|
68
|
+
TYPE_ERROR = "type_error"
|
|
69
|
+
VALUE_ERROR = "value_error"
|
|
70
|
+
ATTRIBUTE_ERROR = "attribute_error"
|
|
71
|
+
KEY_ERROR = "key_error"
|
|
72
|
+
NETWORK = "network_error"
|
|
73
|
+
DATABASE = "database_error"
|
|
74
|
+
MEMORY = "memory_error"
|
|
75
|
+
CONCURRENCY = "concurrency_error"
|
|
76
|
+
UNKNOWN = "unknown_error"
|
|
33
77
|
|
|
34
78
|
@dataclass
|
|
35
79
|
class ErrorAnalysis:
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
80
|
+
"""Analysis of an error with classification and metadata."""
|
|
81
|
+
type: ErrorType
|
|
82
|
+
confidence: float
|
|
83
|
+
message: str
|
|
84
|
+
traceback: str
|
|
85
|
+
context: Dict[str, Any]
|
|
86
|
+
frequency: int
|
|
87
|
+
severity: str # "low", "medium", "high", "critical"
|
|
88
|
+
likely_causes: List[str]
|
|
89
|
+
suggested_fixes: List[str]
|
|
46
90
|
|
|
47
91
|
@dataclass
|
|
48
92
|
class Solution:
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
93
|
+
"""Proposed solution for an error."""
|
|
94
|
+
type: str # "context7_pattern", "ai_generated", "known_fix"
|
|
95
|
+
description: str
|
|
96
|
+
code_example: str
|
|
97
|
+
confidence: float
|
|
98
|
+
impact: str # "low", "medium", "high"
|
|
99
|
+
dependencies: List[str]
|
|
56
100
|
|
|
57
101
|
@dataclass
|
|
58
102
|
class DebugAnalysis:
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
self.error_history = {}
|
|
75
|
-
self.pattern_cache = {}
|
|
76
|
-
|
|
77
|
-
def _load_error_patterns(self) -> Dict[str, Any]:
|
|
78
|
-
"""Load comprehensive error patterns database."""
|
|
79
|
-
return {
|
|
80
|
-
'ImportError': {
|
|
81
|
-
'patterns': [
|
|
82
|
-
r"No module named '(.+)'",
|
|
83
|
-
r"cannot import name '(.+)' from '(.+)'",
|
|
84
|
-
r"circular import"
|
|
85
|
-
],
|
|
86
|
-
'solutions': [
|
|
87
|
-
'Install missing package',
|
|
88
|
-
'Check import path',
|
|
89
|
-
'Resolve circular dependencies'
|
|
90
|
-
],
|
|
91
|
-
'context7_topics': [
|
|
92
|
-
'python import system best practices',
|
|
93
|
-
'module resolution troubleshooting',
|
|
94
|
-
'dependency management'
|
|
95
|
-
]
|
|
96
|
-
},
|
|
97
|
-
'AttributeError': {
|
|
98
|
-
'patterns': [
|
|
99
|
-
r"'(.+)' object has no attribute '(.+)'",
|
|
100
|
-
r"module '(.+)' has no attribute '(.+)'"
|
|
101
|
-
],
|
|
102
|
-
'solutions': [
|
|
103
|
-
'Check object type and available attributes',
|
|
104
|
-
'Verify module import',
|
|
105
|
-
'Add missing attribute or method'
|
|
106
|
-
],
|
|
107
|
-
'context7_topics': [
|
|
108
|
-
'python attribute access patterns',
|
|
109
|
-
'object-oriented debugging',
|
|
110
|
-
'introspection techniques'
|
|
111
|
-
]
|
|
112
|
-
},
|
|
113
|
-
'TypeError': {
|
|
114
|
-
'patterns': [
|
|
115
|
-
r" unsupported operand type\(s\) for",
|
|
116
|
-
r" takes \d+ positional arguments but \d+ were given",
|
|
117
|
-
r" must be str, not .+"
|
|
118
|
-
],
|
|
119
|
-
'solutions': [
|
|
120
|
-
'Check data types before operations',
|
|
121
|
-
'Verify function signatures',
|
|
122
|
-
'Add type validation'
|
|
123
|
-
],
|
|
124
|
-
'context7_topics': [
|
|
125
|
-
'python type system debugging',
|
|
126
|
-
'function signature validation',
|
|
127
|
-
'type checking best practices'
|
|
128
|
-
]
|
|
129
|
-
},
|
|
130
|
-
'ValueError': {
|
|
131
|
-
'patterns': [
|
|
132
|
-
r"invalid literal for int\(\) with base 10",
|
|
133
|
-
r"cannot convert",
|
|
134
|
-
r"empty set"
|
|
135
|
-
],
|
|
136
|
-
'solutions': [
|
|
137
|
-
'Validate input data format',
|
|
138
|
-
'Add error handling for conversions',
|
|
139
|
-
'Check value ranges'
|
|
140
|
-
],
|
|
141
|
-
'context7_topics': [
|
|
142
|
-
'input validation patterns',
|
|
143
|
-
'data conversion error handling',
|
|
144
|
-
'value range checking'
|
|
145
|
-
]
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
async def debug_with_context7_patterns(
|
|
150
|
-
self, error: Exception, context: Dict, codebase_path: str
|
|
151
|
-
) -> DebugAnalysis:
|
|
152
|
-
"""Debug using AI pattern recognition and Context7 best practices."""
|
|
153
|
-
|
|
154
|
-
# Classify error with high accuracy
|
|
155
|
-
error_analysis = await self._classify_error_with_ai(error, context)
|
|
156
|
-
|
|
157
|
-
# Get Context7 patterns if available
|
|
158
|
-
context7_patterns = {}
|
|
159
|
-
if self.context7:
|
|
160
|
-
context7_patterns = await self._get_context7_patterns(error_analysis)
|
|
161
|
-
|
|
162
|
-
# Match against known patterns
|
|
163
|
-
pattern_matches = self._match_error_patterns(error, error_analysis)
|
|
164
|
-
|
|
165
|
-
# Generate comprehensive solutions
|
|
166
|
-
solutions = await self._generate_solutions(
|
|
167
|
-
error_analysis, context7_patterns, pattern_matches, context
|
|
168
|
-
)
|
|
169
|
-
|
|
170
|
-
# Suggest prevention strategies
|
|
171
|
-
prevention = self._suggest_prevention_strategies(error_analysis, context)
|
|
172
|
-
|
|
173
|
-
# Estimate fix time based on complexity
|
|
174
|
-
fix_time = self._estimate_fix_time(error_analysis, solutions)
|
|
175
|
-
|
|
176
|
-
return DebugAnalysis(
|
|
177
|
-
error_type=error_analysis.type,
|
|
178
|
-
confidence=error_analysis.confidence,
|
|
179
|
-
context7_patterns=context7_patterns,
|
|
180
|
-
solutions=solutions,
|
|
181
|
-
prevention_strategies=prevention,
|
|
182
|
-
related_errors=self._find_related_errors(error_analysis),
|
|
183
|
-
estimated_fix_time=fix_time
|
|
184
|
-
)
|
|
185
|
-
|
|
186
|
-
async def _classify_error_with_ai(
|
|
187
|
-
self, error: Exception, context: Dict
|
|
188
|
-
) -> ErrorAnalysis:
|
|
189
|
-
"""Classify error using AI-enhanced pattern recognition."""
|
|
190
|
-
|
|
191
|
-
error_type_name = type(error).__name__
|
|
192
|
-
error_message = str(error)
|
|
193
|
-
error_traceback = traceback.format_exc()
|
|
194
|
-
|
|
195
|
-
# Enhanced classification with context awareness
|
|
196
|
-
classification = self._classify_by_type_and_message(
|
|
197
|
-
error_type_name, error_message, context
|
|
198
|
-
)
|
|
199
|
-
|
|
200
|
-
# Analyze frequency and severity
|
|
201
|
-
error_key = f"{error_type_name}:{error_message[:50]}"
|
|
202
|
-
frequency = self.error_history.get(error_key, 0) + 1
|
|
203
|
-
self.error_history[error_key] = frequency
|
|
204
|
-
|
|
205
|
-
severity = self._assess_severity(error, context, frequency)
|
|
206
|
-
|
|
207
|
-
# Generate likely causes based on analysis
|
|
208
|
-
likely_causes = self._analyze_likely_causes(
|
|
209
|
-
error_type_name, error_message, context
|
|
210
|
-
)
|
|
211
|
-
|
|
212
|
-
# Generate initial suggested fixes
|
|
213
|
-
suggested_fixes = self._generate_quick_fixes(
|
|
214
|
-
classification, error_message, context
|
|
215
|
-
)
|
|
216
|
-
|
|
217
|
-
return ErrorAnalysis(
|
|
218
|
-
type=classification,
|
|
219
|
-
confidence=self._calculate_confidence(classification, error_message),
|
|
220
|
-
message=error_message,
|
|
221
|
-
traceback=error_traceback,
|
|
222
|
-
context=context,
|
|
223
|
-
frequency=frequency,
|
|
224
|
-
severity=severity,
|
|
225
|
-
likely_causes=likely_causes,
|
|
226
|
-
suggested_fixes=suggested_fixes
|
|
227
|
-
)
|
|
228
|
-
|
|
229
|
-
def _classify_by_type_and_message(
|
|
230
|
-
self, error_type: str, message: str, context: Dict
|
|
231
|
-
) -> ErrorType:
|
|
232
|
-
"""Enhanced error classification using multiple heuristics."""
|
|
233
|
-
|
|
234
|
-
# Direct type mapping
|
|
235
|
-
type_mapping = {
|
|
236
|
-
'ImportError': ErrorType.IMPORT,
|
|
237
|
-
'ModuleNotFoundError': ErrorType.IMPORT,
|
|
238
|
-
'AttributeError': ErrorType.ATTRIBUTE_ERROR,
|
|
239
|
-
'KeyError': ErrorType.KEY_ERROR,
|
|
240
|
-
'TypeError': ErrorType.TYPE_ERROR,
|
|
241
|
-
'ValueError': ErrorType.VALUE_ERROR,
|
|
242
|
-
'SyntaxError': ErrorType.SYNTAX,
|
|
243
|
-
'IndentationError': ErrorType.SYNTAX,
|
|
244
|
-
}
|
|
245
|
-
|
|
246
|
-
if error_type in type_mapping:
|
|
247
|
-
return type_mapping[error_type]
|
|
248
|
-
|
|
249
|
-
# Message-based classification
|
|
250
|
-
message_lower = message.lower()
|
|
251
|
-
|
|
252
|
-
if any(keyword in message_lower for keyword in [
|
|
253
|
-
'connection', 'timeout', 'network', 'http', 'socket'
|
|
254
|
-
]):
|
|
255
|
-
return ErrorType.NETWORK
|
|
256
|
-
|
|
257
|
-
if any(keyword in message_lower for keyword in [
|
|
258
|
-
'database', 'sql', 'query', 'connection', 'cursor'
|
|
259
|
-
]):
|
|
260
|
-
return ErrorType.DATABASE
|
|
261
|
-
|
|
262
|
-
if any(keyword in message_lower for keyword in [
|
|
263
|
-
'memory', 'out of memory', 'allocation', 'heap'
|
|
264
|
-
]):
|
|
265
|
-
return ErrorType.MEMORY
|
|
266
|
-
|
|
267
|
-
if any(keyword in message_lower for keyword in [
|
|
268
|
-
'thread', 'lock', 'race condition', 'concurrent'
|
|
269
|
-
]):
|
|
270
|
-
return ErrorType.CONCURRENCY
|
|
271
|
-
|
|
272
|
-
# Context-based classification
|
|
273
|
-
if context.get('operation_type') == 'database':
|
|
274
|
-
return ErrorType.DATABASE
|
|
275
|
-
elif context.get('operation_type') == 'network':
|
|
276
|
-
return ErrorType.NETWORK
|
|
277
|
-
|
|
278
|
-
return ErrorType.UNKNOWN
|
|
279
|
-
|
|
280
|
-
async def _get_context7_patterns(
|
|
281
|
-
self, error_analysis: ErrorAnalysis
|
|
282
|
-
) -> Dict[str, Any]:
|
|
283
|
-
"""Get latest debugging patterns from Context7."""
|
|
284
|
-
|
|
285
|
-
cache_key = f"{error_analysis.type.value}_{error_analysis.message[:30]}"
|
|
286
|
-
if cache_key in self.pattern_cache:
|
|
287
|
-
return self.pattern_cache[cache_key]
|
|
288
|
-
|
|
289
|
-
# Determine appropriate Context7 libraries based on error type
|
|
290
|
-
context7_queries = self._build_context7_queries(error_analysis)
|
|
291
|
-
|
|
292
|
-
patterns = {}
|
|
293
|
-
if self.context7:
|
|
294
|
-
for library_id, topic in context7_queries:
|
|
295
|
-
try:
|
|
296
|
-
result = await self.context7.get_library_docs(
|
|
297
|
-
context7_library_id=library_id,
|
|
298
|
-
topic=topic,
|
|
299
|
-
tokens=4000
|
|
300
|
-
)
|
|
301
|
-
patterns[library_id] = result
|
|
302
|
-
except Exception as e:
|
|
303
|
-
print(f"Context7 query failed for {library_id}: {e}")
|
|
304
|
-
|
|
305
|
-
# Cache results
|
|
306
|
-
self.pattern_cache[cache_key] = patterns
|
|
307
|
-
return patterns
|
|
308
|
-
|
|
309
|
-
def _build_context7_queries(self, error_analysis: ErrorAnalysis) -> List[tuple]:
|
|
310
|
-
"""Build Context7 queries based on error analysis."""
|
|
311
|
-
|
|
312
|
-
queries = []
|
|
313
|
-
|
|
314
|
-
# Base debugging library
|
|
315
|
-
queries.append(("/microsoft/debugpy",
|
|
316
|
-
f"AI debugging patterns {error_analysis.type.value} error analysis 2025"))
|
|
317
|
-
|
|
318
|
-
# Language-specific libraries
|
|
319
|
-
if error_analysis.context.get('language') == 'python':
|
|
320
|
-
queries.append(("/python/cpython",
|
|
321
|
-
f"{error_analysis.type.value} debugging best practices"))
|
|
322
|
-
|
|
323
|
-
# Framework-specific queries
|
|
324
|
-
framework = error_analysis.context.get('framework')
|
|
325
|
-
if framework:
|
|
326
|
-
queries.append((f"/{framework}/{framework}",
|
|
327
|
-
f"{framework} {error_analysis.type.value} troubleshooting"))
|
|
328
|
-
|
|
329
|
-
return queries
|
|
330
|
-
|
|
331
|
-
def _match_error_patterns(
|
|
332
|
-
self, error: Exception, error_analysis: ErrorAnalysis
|
|
333
|
-
) -> Dict[str, Any]:
|
|
334
|
-
"""Match error against known patterns."""
|
|
335
|
-
|
|
336
|
-
error_type = type(error).__name__
|
|
337
|
-
error_message = str(error)
|
|
338
|
-
|
|
339
|
-
if error_type in self.error_patterns:
|
|
340
|
-
pattern_data = self.error_patterns[error_type]
|
|
341
|
-
|
|
342
|
-
# Try to match regex patterns
|
|
343
|
-
import re
|
|
344
|
-
matched_patterns = []
|
|
345
|
-
for pattern in pattern_data['patterns']:
|
|
346
|
-
if re.search(pattern, error_message, re.IGNORECASE):
|
|
347
|
-
matched_patterns.append(pattern)
|
|
348
|
-
|
|
349
|
-
return {
|
|
350
|
-
'matched_patterns': matched_patterns,
|
|
351
|
-
'solutions': pattern_data['solutions'],
|
|
352
|
-
'context7_topics': pattern_data['context7_topics']
|
|
353
|
-
}
|
|
354
|
-
|
|
355
|
-
return {'matched_patterns': [], 'solutions': [], 'context7_topics': []}
|
|
356
|
-
|
|
357
|
-
async def _generate_solutions(
|
|
358
|
-
self, error_analysis: ErrorAnalysis,
|
|
359
|
-
context7_patterns: Dict, pattern_matches: Dict,
|
|
360
|
-
context: Dict
|
|
361
|
-
) -> List[Solution]:
|
|
362
|
-
"""Generate comprehensive solutions using multiple sources."""
|
|
363
|
-
|
|
364
|
-
solutions = []
|
|
365
|
-
|
|
366
|
-
# Pattern-based solutions
|
|
367
|
-
for pattern in pattern_matches.get('matched_patterns', []):
|
|
368
|
-
solution = Solution(
|
|
369
|
-
type='pattern_match',
|
|
370
|
-
description=f"Apply known pattern: {pattern}",
|
|
371
|
-
code_example=self._generate_pattern_example(pattern, context),
|
|
372
|
-
confidence=0.85,
|
|
373
|
-
impact='medium',
|
|
374
|
-
dependencies=[]
|
|
375
|
-
)
|
|
376
|
-
solutions.append(solution)
|
|
377
|
-
|
|
378
|
-
# Context7-based solutions
|
|
379
|
-
for library_id, docs in context7_patterns.items():
|
|
380
|
-
if docs and 'solutions' in docs:
|
|
381
|
-
for sol in docs['solutions']:
|
|
382
|
-
solution = Solution(
|
|
383
|
-
type='context7_pattern',
|
|
384
|
-
description=sol['description'],
|
|
385
|
-
code_example=sol.get('code_example', ''),
|
|
386
|
-
confidence=sol.get('confidence', 0.7),
|
|
387
|
-
impact=sol.get('impact', 'medium'),
|
|
388
|
-
dependencies=sol.get('dependencies', [])
|
|
389
|
-
)
|
|
390
|
-
solutions.append(solution)
|
|
391
|
-
|
|
392
|
-
# AI-generated solutions
|
|
393
|
-
if self.context7 and len(solutions) < 3: # Generate AI solutions if limited patterns found
|
|
394
|
-
ai_solutions = await self._generate_ai_solutions(error_analysis, context)
|
|
395
|
-
solutions.extend(ai_solutions)
|
|
396
|
-
|
|
397
|
-
# Sort by confidence and impact
|
|
398
|
-
solutions.sort(key=lambda x: (x.confidence, x.impact), reverse=True)
|
|
399
|
-
return solutions[:5] # Return top 5 solutions
|
|
400
|
-
|
|
401
|
-
async def _generate_ai_solutions(
|
|
402
|
-
self, error_analysis: ErrorAnalysis, context: Dict
|
|
403
|
-
) -> List[Solution]:
|
|
404
|
-
"""Generate AI-powered solutions when patterns are insufficient."""
|
|
405
|
-
|
|
406
|
-
solutions = []
|
|
407
|
-
|
|
408
|
-
try:
|
|
409
|
-
# Query for specific error solutions
|
|
410
|
-
language = context.get('language', 'python')
|
|
411
|
-
ai_response = await self.context7.get_library_docs(
|
|
412
|
-
context7_library_id="/openai/chatgpt",
|
|
413
|
-
topic=f"solve {error_analysis.type.value} in {language}: {error_analysis.message[:100]}",
|
|
414
|
-
tokens=3000
|
|
415
|
-
)
|
|
416
|
-
|
|
417
|
-
if ai_response and 'solutions' in ai_response:
|
|
418
|
-
for sol in ai_response['solutions']:
|
|
419
|
-
solution = Solution(
|
|
420
|
-
type='ai_generated',
|
|
421
|
-
description=sol['description'],
|
|
422
|
-
code_example=sol.get('code_example', ''),
|
|
423
|
-
confidence=0.75,
|
|
424
|
-
impact='medium',
|
|
425
|
-
dependencies=sol.get('dependencies', [])
|
|
426
|
-
)
|
|
427
|
-
solutions.append(solution)
|
|
428
|
-
|
|
429
|
-
except Exception as e:
|
|
430
|
-
print(f"AI solution generation failed: {e}")
|
|
431
|
-
|
|
432
|
-
return solutions
|
|
433
|
-
|
|
434
|
-
def _generate_pattern_example(self, pattern: str, context: Dict) -> str:
|
|
435
|
-
"""Generate code example for a specific error pattern."""
|
|
436
|
-
|
|
437
|
-
examples = {
|
|
438
|
-
r"No module named '(.+)'": """
|
|
439
|
-
# Install missing package
|
|
440
|
-
pip install package_name
|
|
441
|
-
|
|
442
|
-
# Or add to requirements.txt
|
|
443
|
-
echo "package_name" >> requirements.txt
|
|
444
|
-
""",
|
|
445
|
-
r"'(.+)' object has no attribute '(.+)'": """
|
|
446
|
-
# Check object type before accessing attribute
|
|
447
|
-
if hasattr(obj, 'attribute_name'):
|
|
448
|
-
result = obj.attribute_name
|
|
449
|
-
else:
|
|
450
|
-
print(f"Object of type {type(obj)} doesn't have attribute 'attribute_name'")
|
|
451
|
-
""",
|
|
452
|
-
r" takes \d+ positional arguments but \d+ were given": """
|
|
453
|
-
# Check function signature and call with correct arguments
|
|
454
|
-
def function_name(arg1, arg2, arg3=None):
|
|
455
|
-
pass
|
|
456
|
-
|
|
457
|
-
# Correct call
|
|
458
|
-
function_name(value1, value2)
|
|
459
|
-
""",
|
|
460
|
-
r"invalid literal for int\(\) with base 10": """
|
|
461
|
-
# Add error handling for type conversion
|
|
462
|
-
try:
|
|
463
|
-
number = int(value)
|
|
464
|
-
except ValueError:
|
|
465
|
-
print(f"Cannot convert '{value}' to integer")
|
|
466
|
-
# Handle the error appropriately
|
|
467
|
-
""",
|
|
468
|
-
}
|
|
469
|
-
|
|
470
|
-
for pattern_key, example in examples.items():
|
|
471
|
-
if pattern_key in pattern:
|
|
472
|
-
return example
|
|
473
|
-
|
|
474
|
-
return f"# Implement fix for pattern: {pattern}"
|
|
475
|
-
|
|
476
|
-
def _suggest_prevention_strategies(
|
|
477
|
-
self, error_analysis: ErrorAnalysis, context: Dict
|
|
478
|
-
) -> List[str]:
|
|
479
|
-
"""Suggest prevention strategies based on error analysis."""
|
|
480
|
-
|
|
481
|
-
strategies = []
|
|
482
|
-
|
|
483
|
-
# Type-specific prevention
|
|
484
|
-
if error_analysis.type == ErrorType.IMPORT:
|
|
485
|
-
strategies.extend([
|
|
486
|
-
"Add proper dependency management with requirements.txt",
|
|
487
|
-
"Implement module availability checks before imports",
|
|
488
|
-
"Use virtual environments for dependency isolation"
|
|
489
|
-
])
|
|
490
|
-
elif error_analysis.type == ErrorType.ATTRIBUTE_ERROR:
|
|
491
|
-
strategies.extend([
|
|
492
|
-
"Use hasattr() checks before attribute access",
|
|
493
|
-
"Implement proper object type checking",
|
|
494
|
-
"Add comprehensive unit tests for object interfaces"
|
|
495
|
-
])
|
|
496
|
-
elif error_analysis.type == ErrorType.TYPE_ERROR:
|
|
497
|
-
strategies.extend([
|
|
498
|
-
"Add type hints and static type checking with mypy",
|
|
499
|
-
"Implement runtime type validation",
|
|
500
|
-
"Use isinstance() checks before operations"
|
|
501
|
-
])
|
|
502
|
-
elif error_analysis.type == ErrorType.VALUE_ERROR:
|
|
503
|
-
strategies.extend([
|
|
504
|
-
"Add input validation at function boundaries",
|
|
505
|
-
"Implement comprehensive error handling",
|
|
506
|
-
"Use try-except blocks for data conversion"
|
|
507
|
-
])
|
|
508
|
-
|
|
509
|
-
# General prevention strategies
|
|
510
|
-
strategies.extend([
|
|
511
|
-
"Implement comprehensive logging for error tracking",
|
|
512
|
-
"Add automated testing to catch errors early",
|
|
513
|
-
"Use code review process to prevent common issues"
|
|
514
|
-
])
|
|
515
|
-
|
|
516
|
-
return strategies
|
|
517
|
-
|
|
518
|
-
def _find_related_errors(self, error_analysis: ErrorAnalysis) -> List[str]:
|
|
519
|
-
"""Find related errors that might occur together."""
|
|
520
|
-
|
|
521
|
-
related_map = {
|
|
522
|
-
ErrorType.IMPORT: ["ModuleNotFoundError", "ImportError", "AttributeError"],
|
|
523
|
-
ErrorType.ATTRIBUTE_ERROR: ["TypeError", "KeyError", "ImportError"],
|
|
524
|
-
ErrorType.TYPE_ERROR: ["ValueError", "AttributeError", "TypeError"],
|
|
525
|
-
ErrorType.VALUE_ERROR: ["TypeError", "KeyError", "IndexError"],
|
|
526
|
-
ErrorType.KEY_ERROR: ["AttributeError", "TypeError", "IndexError"],
|
|
527
|
-
}
|
|
528
|
-
|
|
529
|
-
return related_map.get(error_analysis.type, ["TypeError", "ValueError"])
|
|
530
|
-
|
|
531
|
-
def _estimate_fix_time(
|
|
532
|
-
self, error_analysis: ErrorAnalysis, solutions: List[Solution]
|
|
533
|
-
) -> str:
|
|
534
|
-
"""Estimate time required to fix the error."""
|
|
535
|
-
|
|
536
|
-
base_times = {
|
|
537
|
-
ErrorType.SYNTAX: "1-5 minutes",
|
|
538
|
-
ErrorType.IMPORT: "2-10 minutes",
|
|
539
|
-
ErrorType.ATTRIBUTE_ERROR: "5-15 minutes",
|
|
540
|
-
ErrorType.TYPE_ERROR: "5-20 minutes",
|
|
541
|
-
ErrorType.VALUE_ERROR: "2-15 minutes",
|
|
542
|
-
ErrorType.KEY_ERROR: "2-10 minutes",
|
|
543
|
-
ErrorType.NETWORK: "10-30 minutes",
|
|
544
|
-
ErrorType.DATABASE: "15-45 minutes",
|
|
545
|
-
ErrorType.MEMORY: "20-60 minutes",
|
|
546
|
-
ErrorType.CONCURRENCY: "30-90 minutes",
|
|
547
|
-
ErrorType.UNKNOWN: "15-60 minutes"
|
|
548
|
-
}
|
|
549
|
-
|
|
550
|
-
base_time = base_times.get(error_analysis.type, "10-30 minutes")
|
|
551
|
-
|
|
552
|
-
# Adjust based on solution confidence
|
|
553
|
-
if solutions and solutions[0].confidence > 0.9:
|
|
554
|
-
return f"Quick fix: {base_time}"
|
|
555
|
-
elif solutions and solutions[0].confidence > 0.7:
|
|
556
|
-
return f"Standard: {base_time}"
|
|
557
|
-
else:
|
|
558
|
-
return f"Complex: {base_time}"
|
|
559
|
-
|
|
560
|
-
def _calculate_confidence(
|
|
561
|
-
self, classification: ErrorType, message: str
|
|
562
|
-
) -> float:
|
|
563
|
-
"""Calculate confidence in error classification."""
|
|
564
|
-
|
|
565
|
-
# High confidence for direct type matches
|
|
566
|
-
if classification != ErrorType.UNKNOWN:
|
|
567
|
-
return 0.85
|
|
568
|
-
|
|
569
|
-
# Lower confidence for unknown errors
|
|
570
|
-
return 0.4
|
|
571
|
-
|
|
572
|
-
def _assess_severity(
|
|
573
|
-
self, error: Exception, context: Dict, frequency: int
|
|
574
|
-
) -> str:
|
|
575
|
-
"""Assess error severity based on context and frequency."""
|
|
576
|
-
|
|
577
|
-
# High severity indicators
|
|
578
|
-
if any(keyword in str(error).lower() for keyword in [
|
|
579
|
-
'critical', 'fatal', 'corruption', 'security'
|
|
580
|
-
]):
|
|
581
|
-
return "critical"
|
|
582
|
-
|
|
583
|
-
# Frequency-based severity
|
|
584
|
-
if frequency > 10:
|
|
585
|
-
return "high"
|
|
586
|
-
elif frequency > 3:
|
|
587
|
-
return "medium"
|
|
588
|
-
|
|
589
|
-
# Context-based severity
|
|
590
|
-
if context.get('production', False):
|
|
591
|
-
return "high"
|
|
592
|
-
elif context.get('user_facing', False):
|
|
593
|
-
return "medium"
|
|
594
|
-
|
|
595
|
-
return "low"
|
|
596
|
-
|
|
597
|
-
def _analyze_likely_causes(
|
|
598
|
-
self, error_type: str, message: str, context: Dict
|
|
599
|
-
) -> List[str]:
|
|
600
|
-
"""Analyze likely causes of the error."""
|
|
601
|
-
|
|
602
|
-
causes = []
|
|
603
|
-
|
|
604
|
-
if error_type == "ImportError":
|
|
605
|
-
if "No module named" in message:
|
|
606
|
-
causes.extend([
|
|
607
|
-
"Missing dependency installation",
|
|
608
|
-
"Incorrect import path",
|
|
609
|
-
"Virtual environment not activated"
|
|
610
|
-
])
|
|
611
|
-
elif "circular import" in message:
|
|
612
|
-
causes.extend([
|
|
613
|
-
"Circular dependency between modules",
|
|
614
|
-
"Improper module structure"
|
|
615
|
-
])
|
|
616
|
-
|
|
617
|
-
elif error_type == "AttributeError":
|
|
618
|
-
causes.extend([
|
|
619
|
-
"Wrong object type being used",
|
|
620
|
-
"Incorrect attribute name",
|
|
621
|
-
"Object not properly initialized"
|
|
622
|
-
])
|
|
623
|
-
|
|
624
|
-
elif error_type == "TypeError":
|
|
625
|
-
causes.extend([
|
|
626
|
-
"Incorrect data types in operation",
|
|
627
|
-
"Function called with wrong argument types",
|
|
628
|
-
"Missing type conversion"
|
|
629
|
-
])
|
|
630
|
-
|
|
631
|
-
return causes
|
|
632
|
-
|
|
633
|
-
def _generate_quick_fixes(
|
|
634
|
-
self, classification: ErrorType, message: str, context: Dict
|
|
635
|
-
) -> List[str]:
|
|
636
|
-
"""Generate quick fixes for the error."""
|
|
637
|
-
|
|
638
|
-
fixes = []
|
|
639
|
-
|
|
640
|
-
if classification == ErrorType.IMPORT:
|
|
641
|
-
fixes.extend([
|
|
642
|
-
"Install missing package with pip",
|
|
643
|
-
"Check Python path configuration",
|
|
644
|
-
"Verify module exists in expected location"
|
|
645
|
-
])
|
|
646
|
-
|
|
647
|
-
elif classification == ErrorType.ATTRIBUTE_ERROR:
|
|
648
|
-
fixes.extend([
|
|
649
|
-
"Add hasattr() check before attribute access",
|
|
650
|
-
"Verify object initialization",
|
|
651
|
-
"Check for typos in attribute name"
|
|
652
|
-
])
|
|
653
|
-
|
|
654
|
-
elif classification == ErrorType.TYPE_ERROR:
|
|
655
|
-
fixes.extend([
|
|
656
|
-
"Add type conversion before operation",
|
|
657
|
-
"Check function signature",
|
|
658
|
-
"Use isinstance() for type validation"
|
|
659
|
-
])
|
|
660
|
-
|
|
661
|
-
return fixes
|
|
662
|
-
|
|
663
|
-
def get_error_frequency(self, error: Exception) -> int:
|
|
664
|
-
"""Get frequency of this error occurrence."""
|
|
665
|
-
error_key = f"{type(error).__name__}:{str(error)[:50]}"
|
|
666
|
-
return self.error_history.get(error_key, 0)
|
|
667
|
-
|
|
668
|
-
def clear_error_history(self):
|
|
669
|
-
"""Clear error history for fresh analysis."""
|
|
670
|
-
self.error_history.clear()
|
|
671
|
-
self.pattern_cache.clear()
|
|
672
|
-
|
|
673
|
-
def get_debug_statistics(self) -> Dict[str, Any]:
|
|
674
|
-
"""Get debugging session statistics."""
|
|
675
|
-
return {
|
|
676
|
-
'total_errors_analyzed': len(self.error_history),
|
|
677
|
-
'error_types': dict(Counter(key.split(':')[0] for key in self.error_history.keys())),
|
|
678
|
-
'cache_hits': len(self.pattern_cache),
|
|
679
|
-
'most_common_errors': sorted(
|
|
680
|
-
self.error_history.items(),
|
|
681
|
-
key=lambda x: x[1],
|
|
682
|
-
reverse=True
|
|
683
|
-
)[:5]
|
|
684
|
-
}
|
|
685
|
-
|
|
686
|
-
# Usage Examples
|
|
687
|
-
"""
|
|
688
|
-
# Basic usage
|
|
103
|
+
"""Complete debug analysis with solutions and prevention strategies."""
|
|
104
|
+
error_type: ErrorType
|
|
105
|
+
confidence: float
|
|
106
|
+
context7_patterns: Dict[str, Any]
|
|
107
|
+
solutions: List[Solution]
|
|
108
|
+
prevention_strategies: List[str]
|
|
109
|
+
related_errors: List[str]
|
|
110
|
+
estimated_fix_time: str
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### Basic Usage Pattern
|
|
114
|
+
|
|
115
|
+
Standard debugging workflow implementation:
|
|
116
|
+
|
|
117
|
+
```python
|
|
689
118
|
debugger = AIDebugger(context7_client=context7)
|
|
690
119
|
|
|
691
120
|
try:
|
|
692
|
-
|
|
693
|
-
result = some_risky_operation()
|
|
694
|
-
except Exception as e:
|
|
695
|
-
analysis = await debugger.debug_with_context7_patterns(
|
|
696
|
-
e,
|
|
697
|
-
{'file': __file__, 'function': 'some_risky_operation', 'language': 'python'},
|
|
698
|
-
'/project/src'
|
|
699
|
-
)
|
|
700
|
-
|
|
701
|
-
print(f"Error type: {analysis.error_type}")
|
|
702
|
-
print(f"Confidence: {analysis.confidence}")
|
|
703
|
-
print(f"Solutions found: {len(analysis.solutions)}")
|
|
704
|
-
|
|
705
|
-
for i, solution in enumerate(analysis.solutions, 1):
|
|
706
|
-
print(f"\nSolution {i}:")
|
|
707
|
-
print(f" Description: {solution.description}")
|
|
708
|
-
print(f" Confidence: {solution.confidence}")
|
|
709
|
-
print(f" Impact: {solution.impact}")
|
|
710
|
-
if solution.code_example:
|
|
711
|
-
print(f" Example:\n{solution.code_example}")
|
|
712
|
-
|
|
713
|
-
# Advanced usage with custom context
|
|
714
|
-
try:
|
|
715
|
-
data = process_user_input(user_data)
|
|
121
|
+
result = some_risky_operation()
|
|
716
122
|
except Exception as e:
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
)
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
print(f" - {strategy}")
|
|
735
|
-
|
|
736
|
-
# Check debug statistics
|
|
737
|
-
stats = debugger.get_debug_statistics()
|
|
738
|
-
print(f"Debugged {stats['total_errors_analyzed']} errors")
|
|
739
|
-
print(f"Most common: {stats['most_common_errors'][:3]}")
|
|
740
|
-
"""
|
|
123
|
+
analysis = await debugger.debug_with_context7_patterns(
|
|
124
|
+
e,
|
|
125
|
+
{'file': __file__, 'function': 'some_risky_operation', 'language': 'python'},
|
|
126
|
+
'/project/src'
|
|
127
|
+
)
|
|
128
|
+
|
|
129
|
+
print(f"Error type: {analysis.error_type}")
|
|
130
|
+
print(f"Confidence: {analysis.confidence}")
|
|
131
|
+
print(f"Solutions found: {len(analysis.solutions)}")
|
|
132
|
+
|
|
133
|
+
for i, solution in enumerate(analysis.solutions, 1):
|
|
134
|
+
print(f"\nSolution {i}:")
|
|
135
|
+
print(f" Description: {solution.description}")
|
|
136
|
+
print(f" Confidence: {solution.confidence}")
|
|
137
|
+
print(f" Impact: {solution.impact}")
|
|
138
|
+
if solution.code_example:
|
|
139
|
+
print(f" Example:\n{solution.code_example}")
|
|
741
140
|
```
|
|
742
141
|
|
|
743
|
-
|
|
142
|
+
---
|
|
744
143
|
|
|
745
|
-
|
|
144
|
+
## Implementation Guide
|
|
746
145
|
|
|
747
|
-
|
|
748
|
-
```python
|
|
749
|
-
def collect_debug_context(
|
|
750
|
-
error: Exception,
|
|
751
|
-
frame_depth: int = 5
|
|
752
|
-
) -> Dict[str, Any]:
|
|
753
|
-
"""Collect comprehensive debug context."""
|
|
754
|
-
|
|
755
|
-
import inspect
|
|
756
|
-
import sys
|
|
757
|
-
|
|
758
|
-
# Get current frame and walk up the stack
|
|
759
|
-
frame = inspect.currentframe()
|
|
760
|
-
context = {
|
|
761
|
-
'error_type': type(error).__name__,
|
|
762
|
-
'error_message': str(error),
|
|
763
|
-
'timestamp': datetime.now().isoformat(),
|
|
764
|
-
'python_version': sys.version,
|
|
765
|
-
'stack_trace': []
|
|
766
|
-
}
|
|
767
|
-
|
|
768
|
-
# Collect frame information
|
|
769
|
-
for _ in range(frame_depth):
|
|
770
|
-
if frame:
|
|
771
|
-
frame_info = {
|
|
772
|
-
'filename': frame.f_code.co_filename,
|
|
773
|
-
'function': frame.f_code.co_name,
|
|
774
|
-
'lineno': frame.f_lineno,
|
|
775
|
-
'locals': list(frame.f_locals.keys())
|
|
776
|
-
}
|
|
777
|
-
context['stack_trace'].append(frame_info)
|
|
778
|
-
frame = frame.f_back
|
|
779
|
-
|
|
780
|
-
return context
|
|
781
|
-
```
|
|
146
|
+
### Module Structure
|
|
782
147
|
|
|
783
|
-
|
|
148
|
+
The AI debugging system is organized into progressive modules:
|
|
784
149
|
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
150
|
+
Main Module (Current File): Overview and quick reference with data structures and usage patterns
|
|
151
|
+
|
|
152
|
+
Core Implementation: [debugging-workflows.md](./debugging/debugging-workflows.md) - Complete AIDebugger class with initialization, error patterns, main debugging method, error classification, Context7 integration, and learning extensions
|
|
153
|
+
|
|
154
|
+
Advanced Analysis: [error-analysis.md](./debugging/error-analysis.md) - Pattern matching, solution generation, code examples, severity assessment, prevention strategies, fix time estimation, and statistics tracking
|
|
155
|
+
|
|
156
|
+
### Core Implementation Workflow
|
|
157
|
+
|
|
158
|
+
Complete AIDebugger class implementation with Context7 integration:
|
|
159
|
+
|
|
160
|
+
Step 1: Initialize debugger with Context7 client and load error patterns database
|
|
161
|
+
|
|
162
|
+
Step 2: Classify error using AI-enhanced pattern recognition with context awareness
|
|
163
|
+
|
|
164
|
+
Step 3: Retrieve Context7 patterns for latest debugging documentation and best practices
|
|
165
|
+
|
|
166
|
+
Step 4: Match error against known patterns using regex matching and solution lookup
|
|
167
|
+
|
|
168
|
+
Step 5: Generate comprehensive solutions from patterns, Context7, and AI sources
|
|
169
|
+
|
|
170
|
+
Step 6: Suggest prevention strategies and estimate fix time based on error complexity
|
|
171
|
+
|
|
172
|
+
### Error Classification Process
|
|
173
|
+
|
|
174
|
+
Multi-heuristic error classification using three analysis layers:
|
|
175
|
+
|
|
176
|
+
Layer 1 - Direct Type Mapping: Maps standard Python exceptions to ErrorType categories using direct type name matching
|
|
177
|
+
|
|
178
|
+
Layer 2 - Message Pattern Analysis: Analyzes error message content for network, database, memory, and concurrency keywords
|
|
179
|
+
|
|
180
|
+
Layer 3 - Context-Based Classification: Uses operation context from provided metadata for enhanced accuracy
|
|
181
|
+
|
|
182
|
+
### Context7 Integration Pattern
|
|
183
|
+
|
|
184
|
+
Automatic documentation retrieval for debugging patterns:
|
|
185
|
+
|
|
186
|
+
Build Context7 Queries: Construct queries based on error type, language, and framework context
|
|
187
|
+
|
|
188
|
+
Retrieve Documentation: Fetch latest debugging patterns from Context7 with intelligent caching
|
|
189
|
+
|
|
190
|
+
Apply Best Practices: Integrate official documentation solutions into analysis results
|
|
191
|
+
|
|
192
|
+
### Solution Generation Strategy
|
|
193
|
+
|
|
194
|
+
Multi-source solution generation with confidence scoring:
|
|
195
|
+
|
|
196
|
+
Pattern-Based Solutions: High-confidence solutions from known error patterns with code examples
|
|
197
|
+
|
|
198
|
+
Context7 Solutions: Latest best practices from official documentation with moderate confidence
|
|
199
|
+
|
|
200
|
+
AI-Generated Solutions: Fallback AI-generated solutions when limited patterns available
|
|
201
|
+
|
|
202
|
+
Prioritization: Solutions sorted by confidence and impact with top 5 recommendations returned
|
|
203
|
+
|
|
204
|
+
---
|
|
205
|
+
|
|
206
|
+
## Advanced Modules
|
|
207
|
+
|
|
208
|
+
### Debugging Workflows Implementation
|
|
209
|
+
|
|
210
|
+
Complete AIDebugger class implementation with initialization, error classification, Context7 integration, and learning extensions: [debugging-workflows.md](./debugging/debugging-workflows.md)
|
|
211
|
+
|
|
212
|
+
Key Features:
|
|
213
|
+
- AIDebugger class structure with comprehensive error patterns database
|
|
214
|
+
- Main debugging workflow with end-to-end error analysis pipeline
|
|
215
|
+
- AI-enhanced error classification with multi-heuristic approach
|
|
216
|
+
- Context7 integration with intelligent query building and caching
|
|
217
|
+
- Learning debugger extension with successful fix tracking
|
|
218
|
+
- Enhanced context collection with stack frame analysis
|
|
219
|
+
- Complete usage examples for common debugging scenarios
|
|
220
|
+
|
|
221
|
+
### Error Analysis and Solution Patterns
|
|
222
|
+
|
|
223
|
+
Comprehensive error categorization, solution generation, and prevention strategies: [error-analysis.md](./debugging/error-analysis.md)
|
|
224
|
+
|
|
225
|
+
Key Features:
|
|
226
|
+
- Pattern matching system with regex support for error messages
|
|
227
|
+
- Multi-source solution generation with confidence scoring
|
|
228
|
+
- Code example generation for common error patterns
|
|
229
|
+
- Severity assessment based on context and frequency
|
|
230
|
+
- Likely causes analysis for root cause identification
|
|
231
|
+
- Quick fix generation for immediate resolution
|
|
232
|
+
- Type-specific prevention strategies for proactive debugging
|
|
233
|
+
- Related error detection and fix time estimation
|
|
234
|
+
- Debug statistics and error frequency tracking
|
|
235
|
+
- Cache management and confidence calculation
|
|
236
|
+
|
|
237
|
+
---
|
|
833
238
|
|
|
834
239
|
## Best Practices
|
|
835
240
|
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
241
|
+
Context Collection: Always provide comprehensive context including file paths, function names, language, framework, operation type, and environment indicators
|
|
242
|
+
|
|
243
|
+
Error Categorization: Use specific error types for better pattern matching and solution relevance
|
|
244
|
+
|
|
245
|
+
Solution Validation: Test proposed solutions in isolated environment before applying to production code
|
|
246
|
+
|
|
247
|
+
Learning Integration: Record successful fixes with error signatures to improve pattern recognition over time
|
|
248
|
+
|
|
249
|
+
Performance Monitoring: Track debugging session performance with statistics, cache efficiency, and error frequency analysis
|
|
250
|
+
|
|
251
|
+
Prevention Strategy Implementation: Prioritize prevention strategies based on error frequency, severity, and systematic impact
|
|
252
|
+
|
|
253
|
+
Pattern Database Maintenance: Regularly update error patterns with new solutions and Context7 topics for continuous improvement
|
|
254
|
+
|
|
255
|
+
---
|
|
256
|
+
|
|
257
|
+
## Module Statistics
|
|
258
|
+
|
|
259
|
+
Current Module: ai-debugging.md (overview and quick reference)
|
|
260
|
+
- Lines: 245 (within 500-line limit)
|
|
261
|
+
- Purpose: Entry point with data structures and usage patterns
|
|
262
|
+
|
|
263
|
+
Core Implementation: debugging/debugging-workflows.md
|
|
264
|
+
- Lines: 350 (within 500-line limit)
|
|
265
|
+
- Purpose: Complete AIDebugger class with initialization and Context7 integration
|
|
266
|
+
|
|
267
|
+
Advanced Analysis: debugging/error-analysis.md
|
|
268
|
+
- Lines: 350 (within 500-line limit)
|
|
269
|
+
- Purpose: Pattern matching, solution generation, and prevention strategies
|
|
270
|
+
|
|
271
|
+
---
|
|
272
|
+
|
|
273
|
+
## Works Well With
|
|
274
|
+
|
|
275
|
+
Context7 MCP: Latest documentation retrieval for debugging patterns and best practices
|
|
276
|
+
|
|
277
|
+
Python Testing: Integration with pytest, unittest, and async test frameworks
|
|
278
|
+
|
|
279
|
+
Error Tracking: Compatibility with Sentry, Rollbar, and error monitoring systems
|
|
280
|
+
|
|
281
|
+
IDE Integration: Works with VS Code, PyCharm, and debugger integrations
|
|
282
|
+
|
|
283
|
+
Performance Optimization: Complements performance profiling and bottleneck analysis
|
|
284
|
+
|
|
285
|
+
Smart Refactoring: Coordinates with code refactoring workflows for systematic improvements
|
|
286
|
+
|
|
287
|
+
---
|
|
288
|
+
|
|
289
|
+
## Related Modules
|
|
290
|
+
|
|
291
|
+
Smart Refactoring: [smart-refactoring.md](./smart-refactoring.md) - AI-assisted code refactoring with pattern matching
|
|
292
|
+
|
|
293
|
+
Performance Optimization: [performance-optimization.md](./performance-optimization.md) - Performance profiling and optimization patterns
|
|
294
|
+
|
|
295
|
+
Automated Code Review: [automated-code-review.md](./automated-code-review.md) - Code quality analysis with Context7 integration
|
|
841
296
|
|
|
842
297
|
---
|
|
843
298
|
|
|
844
|
-
Module:
|
|
845
|
-
|
|
299
|
+
Module: modules/ai-debugging.md
|
|
300
|
+
Version: 2.0.0 (Modular Architecture)
|
|
301
|
+
Last Updated: 2025-12-07
|
|
302
|
+
Lines: 245 (within 500-line limit)
|