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
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: moai-docs-generation
|
|
3
|
+
description: Automated documentation generation specialist for technical specs, API docs, user guides, and knowledge bases with multi-format output
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
category: workflow
|
|
6
|
+
tags:
|
|
7
|
+
- documentation
|
|
8
|
+
- generation
|
|
9
|
+
- automation
|
|
10
|
+
- markdown
|
|
11
|
+
- html
|
|
12
|
+
- api-docs
|
|
13
|
+
updated: 2025-11-30
|
|
14
|
+
status: active
|
|
15
|
+
author: MoAI-ADK Team
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
# Documentation Generation Specialist
|
|
19
|
+
|
|
20
|
+
## Quick Reference (30 seconds)
|
|
21
|
+
|
|
22
|
+
Automated Documentation Generation - Comprehensive documentation automation covering technical specs, API documentation, user guides, and knowledge base creation with multi-format output capabilities.
|
|
23
|
+
|
|
24
|
+
Core Capabilities:
|
|
25
|
+
- Technical Documentation: API docs, architecture specs, code documentation
|
|
26
|
+
- User Guides: Tutorials, getting started guides, best practices
|
|
27
|
+
- API Documentation: OpenAPI/Swagger generation, endpoint documentation
|
|
28
|
+
- Multi-Format Output: Markdown, HTML, PDF, static sites
|
|
29
|
+
- AI-Powered Generation: Context-aware content creation and enhancement
|
|
30
|
+
- Continuous Updates: Auto-sync documentation with code changes
|
|
31
|
+
|
|
32
|
+
When to Use:
|
|
33
|
+
- Generating API documentation from code
|
|
34
|
+
- Creating technical specifications and architecture docs
|
|
35
|
+
- Building user guides and tutorials
|
|
36
|
+
- Automating knowledge base creation
|
|
37
|
+
- Maintaining up-to-date project documentation
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## Implementation Guide (5 minutes)
|
|
42
|
+
|
|
43
|
+
### Quick Start Workflow
|
|
44
|
+
|
|
45
|
+
Basic Documentation Generation:
|
|
46
|
+
```python
|
|
47
|
+
from moai_docs_generation import DocumentationGenerator
|
|
48
|
+
|
|
49
|
+
# Initialize generator
|
|
50
|
+
doc_gen = DocumentationGenerator()
|
|
51
|
+
|
|
52
|
+
# Generate API documentation
|
|
53
|
+
api_docs = doc_gen.generate_api_docs("path/to/your/app.py")
|
|
54
|
+
|
|
55
|
+
# Create user guide
|
|
56
|
+
user_guide = doc_gen.generate_user_guide(project_info)
|
|
57
|
+
|
|
58
|
+
# Export to multiple formats
|
|
59
|
+
doc_gen.export_to_formats(api_docs, formats=["html", "pdf", "markdown"])
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Single Command Documentation:
|
|
63
|
+
```bash
|
|
64
|
+
# Generate complete documentation
|
|
65
|
+
moai generate-docs --source ./src --output ./docs --formats html,pdf
|
|
66
|
+
|
|
67
|
+
# Update API docs from code
|
|
68
|
+
moai update-api-docs --app-file app.py --format openapi
|
|
69
|
+
|
|
70
|
+
# Create tutorial from feature
|
|
71
|
+
moai create-tutorial --feature authentication --output docs/tutorials/
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### Core Components
|
|
75
|
+
|
|
76
|
+
1. API Documentation (`modules/api-documentation.md`)
|
|
77
|
+
- OpenAPI/Swagger specification generation
|
|
78
|
+
- Interactive HTML documentation
|
|
79
|
+
- Code example generation
|
|
80
|
+
- Request/response documentation
|
|
81
|
+
|
|
82
|
+
2. Code Documentation (`modules/code-documentation.md`)
|
|
83
|
+
- AST-based code analysis
|
|
84
|
+
- AI-powered docstring enhancement
|
|
85
|
+
- Automatic documentation structure extraction
|
|
86
|
+
- Multi-format documentation generation
|
|
87
|
+
|
|
88
|
+
3. User Guides (`modules/user-guides.md`)
|
|
89
|
+
- Getting started guides
|
|
90
|
+
- Feature tutorials
|
|
91
|
+
- Cookbook generation
|
|
92
|
+
- Step-by-step instructions
|
|
93
|
+
|
|
94
|
+
4. Multi-Format Output (`modules/multi-format-output.md`)
|
|
95
|
+
- HTML site generation
|
|
96
|
+
- PDF documentation
|
|
97
|
+
- Static site export
|
|
98
|
+
- Responsive design templates
|
|
99
|
+
|
|
100
|
+
---
|
|
101
|
+
|
|
102
|
+
## Advanced Patterns (10+ minutes)
|
|
103
|
+
|
|
104
|
+
### Continuous Documentation Integration
|
|
105
|
+
|
|
106
|
+
Git Hooks for Auto-Documentation:
|
|
107
|
+
```python
|
|
108
|
+
# .git/hooks/pre-commit
|
|
109
|
+
#!/bin/bash
|
|
110
|
+
# Auto-update documentation before commits
|
|
111
|
+
|
|
112
|
+
python -c "
|
|
113
|
+
from moai_docs_generation import DocumentationGenerator
|
|
114
|
+
doc_gen = DocumentationGenerator()
|
|
115
|
+
doc_gen.update_documentation_for_changed_files()
|
|
116
|
+
"
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
CI/CD Pipeline Integration:
|
|
120
|
+
```yaml
|
|
121
|
+
# .github/workflows/docs.yml
|
|
122
|
+
name: Generate Documentation
|
|
123
|
+
on:
|
|
124
|
+
push:
|
|
125
|
+
branches: [main]
|
|
126
|
+
|
|
127
|
+
jobs:
|
|
128
|
+
docs:
|
|
129
|
+
runs-on: ubuntu-latest
|
|
130
|
+
steps:
|
|
131
|
+
- uses: actions/checkout@v2
|
|
132
|
+
- name: Generate Documentation
|
|
133
|
+
run: |
|
|
134
|
+
moai generate-docs --source ./src --output ./docs
|
|
135
|
+
moai deploy-docs --platform github-pages
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
### AI-Enhanced Documentation
|
|
139
|
+
|
|
140
|
+
Smart Content Generation:
|
|
141
|
+
```python
|
|
142
|
+
# AI-powered example generation
|
|
143
|
+
ai_enhanced_docs = doc_gen.generate_with_ai(
|
|
144
|
+
source_code="path/to/code",
|
|
145
|
+
enhancement_level="comprehensive",
|
|
146
|
+
include_examples=True,
|
|
147
|
+
include_troubleshooting=True
|
|
148
|
+
)
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### Documentation Quality Automation
|
|
152
|
+
|
|
153
|
+
Automated Quality Checks:
|
|
154
|
+
```python
|
|
155
|
+
# Validate documentation quality
|
|
156
|
+
quality_report = doc_gen.validate_documentation(
|
|
157
|
+
completeness_threshold=0.9,
|
|
158
|
+
include_example_validation=True,
|
|
159
|
+
check_link_integrity=True
|
|
160
|
+
)
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
---
|
|
164
|
+
|
|
165
|
+
## Works Well With
|
|
166
|
+
|
|
167
|
+
Complementary Skills:
|
|
168
|
+
- `moai-foundation-core` - SPEC-first documentation approach
|
|
169
|
+
- `moai-workflow-project` - Project documentation integration
|
|
170
|
+
- `moai-lang-unified` - Multi-language code documentation
|
|
171
|
+
- `moai-integration-mcp` - External documentation platform integration
|
|
172
|
+
|
|
173
|
+
Technology Integration:
|
|
174
|
+
- FastAPI/Flask applications
|
|
175
|
+
- Sphinx/MkDocs documentation
|
|
176
|
+
- GitHub/GitLab wikis
|
|
177
|
+
- Confluence knowledge bases
|
|
178
|
+
- Static site generators (Hugo, Jekyll)
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## Usage Examples
|
|
183
|
+
|
|
184
|
+
### Command Line Interface
|
|
185
|
+
```bash
|
|
186
|
+
# Complete documentation suite
|
|
187
|
+
moai docs:generate --project ./my-project --output ./docs
|
|
188
|
+
|
|
189
|
+
# API documentation only
|
|
190
|
+
moai docs:api --source ./app.py --format openapi,html
|
|
191
|
+
|
|
192
|
+
# User guide creation
|
|
193
|
+
moai docs:guide --features auth,user-management --template getting-started
|
|
194
|
+
|
|
195
|
+
# Documentation updates
|
|
196
|
+
moai docs:update --sync-with-code --validate-links
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
### Python API
|
|
200
|
+
```python
|
|
201
|
+
from moai_docs_generation import DocumentationGenerator
|
|
202
|
+
|
|
203
|
+
# Complete workflow
|
|
204
|
+
generator = DocumentationGenerator()
|
|
205
|
+
docs = generator.generate_comprehensive_docs(
|
|
206
|
+
source_directory="./src",
|
|
207
|
+
include_api_docs=True,
|
|
208
|
+
include_user_guides=True,
|
|
209
|
+
output_formats=["html", "pdf", "markdown"]
|
|
210
|
+
)
|
|
211
|
+
|
|
212
|
+
# Individual components
|
|
213
|
+
api_gen = API Documentation Generation()
|
|
214
|
+
api_spec = api_gen.generate_openapi_spec(fastapi_app)
|
|
215
|
+
|
|
216
|
+
code_gen = Code Documentation Enhancement()
|
|
217
|
+
enhanced_docs = code_gen.analyze_and_enhance("./src/")
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
---
|
|
221
|
+
|
|
222
|
+
## Technology Stack
|
|
223
|
+
|
|
224
|
+
Core Technologies:
|
|
225
|
+
- Python 3.8+ (main implementation)
|
|
226
|
+
- FastAPI/Flask (API documentation)
|
|
227
|
+
- Jinja2 (HTML templating)
|
|
228
|
+
- Markdown (content formatting)
|
|
229
|
+
- WeasyPrint (PDF generation)
|
|
230
|
+
|
|
231
|
+
Optional Integrations:
|
|
232
|
+
- AI services (content enhancement)
|
|
233
|
+
- Git hooks (auto-updates)
|
|
234
|
+
- CI/CD platforms (continuous deployment)
|
|
235
|
+
- Static site generators (hosting)
|
|
236
|
+
- Documentation platforms (confluence)
|
|
237
|
+
|
|
238
|
+
Output Formats:
|
|
239
|
+
- HTML (responsive sites)
|
|
240
|
+
- PDF (print-ready documents)
|
|
241
|
+
- Markdown (version control friendly)
|
|
242
|
+
- OpenAPI/Swagger (API specifications)
|
|
243
|
+
- Static sites (hosting platforms)
|
|
244
|
+
|
|
245
|
+
---
|
|
246
|
+
|
|
247
|
+
*For detailed implementation patterns and advanced configurations, see the `modules/` directory.*
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Documentation Generation Modules
|
|
2
|
+
|
|
3
|
+
This directory contains modular components for comprehensive documentation generation workflows.
|
|
4
|
+
|
|
5
|
+
## Module Structure
|
|
6
|
+
|
|
7
|
+
### Core Modules
|
|
8
|
+
|
|
9
|
+
- api-documentation.md - OpenAPI/Swagger generation and API documentation
|
|
10
|
+
- code-documentation.md - AST-based code analysis and AI-powered docstring enhancement
|
|
11
|
+
- user-guides.md - Tutorial and getting started guide generation
|
|
12
|
+
- multi-format-output.md - HTML, PDF, and static site generation
|
|
13
|
+
|
|
14
|
+
### Usage Patterns
|
|
15
|
+
|
|
16
|
+
1. API Documentation: Use `api-documentation.md` for automated API docs
|
|
17
|
+
2. Code Analysis: Use `code-documentation.md` for source code documentation
|
|
18
|
+
3. User Guides: Use `user-guides.md` for tutorials and guides
|
|
19
|
+
4. Output Generation: Use `multi-format-output.md` for format conversion
|
|
20
|
+
|
|
21
|
+
### Integration Guidelines
|
|
22
|
+
|
|
23
|
+
Each module is self-contained but designed to work together:
|
|
24
|
+
|
|
25
|
+
```python
|
|
26
|
+
# Complete documentation workflow
|
|
27
|
+
api_docs = API Documentation Generation
|
|
28
|
+
code_analysis = Code Documentation Enhancement
|
|
29
|
+
user_guides = User Guide Generation
|
|
30
|
+
output_formats = Multi-Format Output Generation
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
### Progressive Disclosure
|
|
34
|
+
|
|
35
|
+
- Quick Start: Use individual modules for specific tasks
|
|
36
|
+
- Implementation: Combine modules for complete workflows
|
|
37
|
+
- Advanced: Customize templates and extend functionality
|
|
38
|
+
|
|
39
|
+
### Dependencies
|
|
40
|
+
|
|
41
|
+
- Required: Python 3.8+, FastAPI/Flask for API docs
|
|
42
|
+
- Optional: AI client for enhanced documentation
|
|
43
|
+
- Optional: WeasyPrint for PDF generation
|
|
44
|
+
- Optional: Jinja2 for HTML templating
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
# API Documentation Generation
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
Automated API documentation generation from code with OpenAPI/Swagger support, example generation, and multi-format output.
|
|
5
|
+
|
|
6
|
+
## Quick Implementation
|
|
7
|
+
|
|
8
|
+
```python
|
|
9
|
+
from typing import Dict, List, Optional
|
|
10
|
+
import inspect
|
|
11
|
+
from fastapi import FastAPI
|
|
12
|
+
|
|
13
|
+
class APIDocGenerator:
|
|
14
|
+
def __init__(self, app: FastAPI):
|
|
15
|
+
self.app = app
|
|
16
|
+
self.openapi_schema = app.openapi()
|
|
17
|
+
|
|
18
|
+
def generate_openapi_spec(self) -> dict:
|
|
19
|
+
"""Generate complete OpenAPI specification."""
|
|
20
|
+
return {
|
|
21
|
+
"openapi": "3.1.0",
|
|
22
|
+
"info": {
|
|
23
|
+
"title": self.openapi_schema["info"]["title"],
|
|
24
|
+
"version": self.openapi_schema["info"]["version"],
|
|
25
|
+
"description": self.openapi_schema["info"].get("description", ""),
|
|
26
|
+
"contact": {
|
|
27
|
+
"name": "API Support",
|
|
28
|
+
"email": "support@example.com"
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"paths": self.enrich_paths_with_examples(),
|
|
32
|
+
"components": self.generate_components()
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
def enrich_paths_with_examples(self) -> dict:
|
|
36
|
+
"""Add examples and detailed descriptions to API paths."""
|
|
37
|
+
enriched_paths = {}
|
|
38
|
+
|
|
39
|
+
for path, path_item in self.openapi_schema["paths"].items():
|
|
40
|
+
enriched_paths[path] = {}
|
|
41
|
+
|
|
42
|
+
for method, operation in path_item.items():
|
|
43
|
+
if method.upper() in ["GET", "POST", "PUT", "DELETE"]:
|
|
44
|
+
enriched_paths[path][method] = {
|
|
45
|
+
operation,
|
|
46
|
+
"responses": self.enrich_responses(operation.get("responses", {})),
|
|
47
|
+
"examples": self.generate_examples(path, method, operation)
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
return enriched_paths
|
|
51
|
+
|
|
52
|
+
def generate_examples(self, path: str, method: str, operation: dict) -> dict:
|
|
53
|
+
"""Generate request/response examples."""
|
|
54
|
+
examples = {}
|
|
55
|
+
|
|
56
|
+
if method.upper() == "POST":
|
|
57
|
+
examples["application/json"] = {
|
|
58
|
+
"summary": "Example request",
|
|
59
|
+
"value": self.generate_request_example(operation)
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
return examples
|
|
63
|
+
|
|
64
|
+
def generate_markdown_docs(self) -> str:
|
|
65
|
+
"""Generate comprehensive Markdown documentation."""
|
|
66
|
+
template = """
|
|
67
|
+
# {title}
|
|
68
|
+
|
|
69
|
+
{description}
|
|
70
|
+
|
|
71
|
+
## Base URL
|
|
72
|
+
```
|
|
73
|
+
{base_url}
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
## Authentication
|
|
77
|
+
{authentication}
|
|
78
|
+
|
|
79
|
+
## Endpoints
|
|
80
|
+
|
|
81
|
+
{endpoints}
|
|
82
|
+
|
|
83
|
+
## Data Models
|
|
84
|
+
|
|
85
|
+
{models}
|
|
86
|
+
"""
|
|
87
|
+
|
|
88
|
+
endpoints = self.generate_endpoint_markdown()
|
|
89
|
+
models = self.generate_model_markdown()
|
|
90
|
+
|
|
91
|
+
return template.format(
|
|
92
|
+
title=self.openapi_schema["info"]["title"],
|
|
93
|
+
description=self.openapi_schema["info"].get("description", ""),
|
|
94
|
+
base_url="https://api.example.com/v1",
|
|
95
|
+
authentication=self.generate_auth_docs(),
|
|
96
|
+
endpoints=endpoints,
|
|
97
|
+
models=models
|
|
98
|
+
)
|
|
99
|
+
|
|
100
|
+
# Usage example
|
|
101
|
+
def generate_api_docs():
|
|
102
|
+
app = FastAPI(title="User Management API", version="1.0.0")
|
|
103
|
+
|
|
104
|
+
doc_generator = APIDocGenerator(app)
|
|
105
|
+
|
|
106
|
+
# Generate different formats
|
|
107
|
+
openapi_spec = doc_generator.generate_openapi_spec()
|
|
108
|
+
markdown_docs = doc_generator.generate_markdown_docs()
|
|
109
|
+
html_docs = doc_generator.generate_html_docs()
|
|
110
|
+
|
|
111
|
+
return {
|
|
112
|
+
"openapi": openapi_spec,
|
|
113
|
+
"markdown": markdown_docs,
|
|
114
|
+
"html": html_docs
|
|
115
|
+
}
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## Key Features
|
|
119
|
+
- OpenAPI 3.1.0 specification generation
|
|
120
|
+
- Automatic example generation
|
|
121
|
+
- Multi-format output (OpenAPI, Markdown, HTML)
|
|
122
|
+
- Request/response enrichment
|
|
123
|
+
- Authentication documentation
|
|
124
|
+
- Interactive API docs generation
|
|
125
|
+
|
|
126
|
+
## Integration Points
|
|
127
|
+
- FastAPI applications
|
|
128
|
+
- Express.js applications
|
|
129
|
+
- Django REST Framework
|
|
130
|
+
- Spring Boot applications
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
# Code Documentation Enhancement
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
AI-powered code documentation generation with AST analysis, automatic docstring enhancement, and multi-format output generation.
|
|
5
|
+
|
|
6
|
+
## Quick Implementation
|
|
7
|
+
|
|
8
|
+
```python
|
|
9
|
+
import ast
|
|
10
|
+
import inspect
|
|
11
|
+
from typing import Dict, List, Any
|
|
12
|
+
|
|
13
|
+
class CodeDocGenerator:
|
|
14
|
+
def __init__(self, ai_client=None):
|
|
15
|
+
self.ai_client = ai_client
|
|
16
|
+
|
|
17
|
+
def analyze_python_file(self, file_path: str) -> Dict[str, Any]:
|
|
18
|
+
"""Analyze Python file and extract documentation structure."""
|
|
19
|
+
with open(file_path, 'r', encoding='utf-8') as f:
|
|
20
|
+
content = f.read()
|
|
21
|
+
|
|
22
|
+
tree = ast.parse(content)
|
|
23
|
+
|
|
24
|
+
documentation = {
|
|
25
|
+
"file": file_path,
|
|
26
|
+
"modules": [],
|
|
27
|
+
"classes": [],
|
|
28
|
+
"functions": [],
|
|
29
|
+
"imports": []
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
for node in ast.walk(tree):
|
|
33
|
+
if isinstance(node, ast.ClassDef):
|
|
34
|
+
class_info = self.analyze_class(node)
|
|
35
|
+
documentation["classes"].append(class_info)
|
|
36
|
+
|
|
37
|
+
elif isinstance(node, ast.FunctionDef):
|
|
38
|
+
if not any(isinstance(parent, ast.ClassDef) for parent in ast.walk(tree)):
|
|
39
|
+
func_info = self.analyze_function(node)
|
|
40
|
+
documentation["functions"].append(func_info)
|
|
41
|
+
|
|
42
|
+
elif isinstance(node, ast.Import):
|
|
43
|
+
for alias in node.names:
|
|
44
|
+
documentation["imports"].append(alias.name)
|
|
45
|
+
|
|
46
|
+
return documentation
|
|
47
|
+
|
|
48
|
+
def analyze_class(self, class_node: ast.ClassDef) -> Dict[str, Any]:
|
|
49
|
+
"""Analyze class structure and generate documentation."""
|
|
50
|
+
methods = []
|
|
51
|
+
properties = []
|
|
52
|
+
|
|
53
|
+
for node in class_node.body:
|
|
54
|
+
if isinstance(node, ast.FunctionDef):
|
|
55
|
+
method_info = self.analyze_function(node)
|
|
56
|
+
methods.append(method_info)
|
|
57
|
+
|
|
58
|
+
elif isinstance(node, ast.AnnAssign) and isinstance(node.target, ast.Name):
|
|
59
|
+
prop_info = self.analyze_property(node)
|
|
60
|
+
properties.append(prop_info)
|
|
61
|
+
|
|
62
|
+
# Generate enhanced docstring with AI
|
|
63
|
+
enhanced_docstring = None
|
|
64
|
+
if self.ai_client:
|
|
65
|
+
enhanced_docstring = self.enhance_docstring_with_ai(
|
|
66
|
+
class_node.name,
|
|
67
|
+
methods,
|
|
68
|
+
properties,
|
|
69
|
+
ast.get_docstring(class_node)
|
|
70
|
+
)
|
|
71
|
+
|
|
72
|
+
return {
|
|
73
|
+
"name": class_node.name,
|
|
74
|
+
"docstring": ast.get_docstring(class_node),
|
|
75
|
+
"enhanced_docstring": enhanced_docstring,
|
|
76
|
+
"methods": methods,
|
|
77
|
+
"properties": properties,
|
|
78
|
+
"inheritance": [base.id for base in class_node.bases if isinstance(base, ast.Name)],
|
|
79
|
+
"decorators": [self.get_decorator_name(dec) for dec in class_node.decorator_list]
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
def enhance_docstring_with_ai(self, name: str, methods: List, properties: List, existing_doc: str = None) -> str:
|
|
83
|
+
"""Enhance documentation using AI analysis."""
|
|
84
|
+
method_signatures = [method["signature"] for method in methods]
|
|
85
|
+
|
|
86
|
+
prompt = f"""
|
|
87
|
+
Enhance this Python class documentation:
|
|
88
|
+
|
|
89
|
+
Class Name: {name}
|
|
90
|
+
Existing Documentation: {existing_doc or 'No documentation'}
|
|
91
|
+
|
|
92
|
+
Methods:
|
|
93
|
+
{chr(10).join(method_signatures)}
|
|
94
|
+
|
|
95
|
+
Properties:
|
|
96
|
+
{', '.join([prop['name'] for prop in properties])}
|
|
97
|
+
|
|
98
|
+
Please provide:
|
|
99
|
+
1. Clear class description
|
|
100
|
+
2. Usage examples
|
|
101
|
+
3. Method descriptions
|
|
102
|
+
4. Implementation notes
|
|
103
|
+
5. Best practices for using this class
|
|
104
|
+
|
|
105
|
+
Format as proper docstring with sections.
|
|
106
|
+
"""
|
|
107
|
+
|
|
108
|
+
response = self.ai_client.generate_content(prompt)
|
|
109
|
+
return response["content"]
|
|
110
|
+
|
|
111
|
+
def generate_documentation_files(self, documentation: Dict, output_dir: str):
|
|
112
|
+
"""Generate various documentation files from analysis."""
|
|
113
|
+
import os
|
|
114
|
+
from pathlib import Path
|
|
115
|
+
|
|
116
|
+
output_path = Path(output_dir)
|
|
117
|
+
output_path.mkdir(exist_ok=True)
|
|
118
|
+
|
|
119
|
+
# Generate README
|
|
120
|
+
readme_content = self.generate_readme(documentation)
|
|
121
|
+
(output_path / "README.md").write_text(readme_content, encoding='utf-8')
|
|
122
|
+
|
|
123
|
+
# Generate API reference
|
|
124
|
+
api_content = self.generate_api_reference(documentation)
|
|
125
|
+
(output_path / "API.md").write_text(api_content, encoding='utf-8')
|
|
126
|
+
|
|
127
|
+
# Generate examples
|
|
128
|
+
examples_content = self.generate_examples(documentation)
|
|
129
|
+
(output_path / "EXAMPLES.md").write_text(examples_content, encoding='utf-8')
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
## Key Features
|
|
133
|
+
- AST-based code analysis
|
|
134
|
+
- AI-powered docstring enhancement
|
|
135
|
+
- Automatic documentation structure extraction
|
|
136
|
+
- Multi-format output generation (README, API, Examples)
|
|
137
|
+
- Class hierarchy analysis
|
|
138
|
+
- Method and property documentation
|
|
139
|
+
- Import dependency tracking
|
|
140
|
+
|
|
141
|
+
## Usage Patterns
|
|
142
|
+
1. Code Analysis: Parse Python files for documentation structure
|
|
143
|
+
2. AI Enhancement: Use AI to improve existing documentation
|
|
144
|
+
3. File Generation: Create comprehensive documentation files
|
|
145
|
+
4. Class Analysis: Extract inheritance, methods, and properties
|
|
146
|
+
5. Documentation Standards: Ensure consistent docstring format
|
|
147
|
+
|
|
148
|
+
## Integration Points
|
|
149
|
+
- Static analysis tools
|
|
150
|
+
- Documentation generators (Sphinx, MkDocs)
|
|
151
|
+
- AI services for content enhancement
|
|
152
|
+
- Code review workflows
|