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,152 @@
|
|
|
1
|
+
# Tab 5: System & GitHub Integration
|
|
2
|
+
# Priority: OPTIONAL
|
|
3
|
+
# Questions: 7
|
|
4
|
+
|
|
5
|
+
metadata:
|
|
6
|
+
id: tab_5_system_github
|
|
7
|
+
label: "Tab 5: System & GitHub Integration"
|
|
8
|
+
description: "Configure MoAI system settings, GitHub automation"
|
|
9
|
+
priority: OPTIONAL
|
|
10
|
+
order: 5
|
|
11
|
+
setting_count: 7
|
|
12
|
+
|
|
13
|
+
target_sections:
|
|
14
|
+
- sections/system.yaml
|
|
15
|
+
|
|
16
|
+
batches:
|
|
17
|
+
# Batch 5.1: MoAI System Settings
|
|
18
|
+
- batch_id: "5.1"
|
|
19
|
+
label: "MoAI System Settings"
|
|
20
|
+
conditional: false
|
|
21
|
+
questions:
|
|
22
|
+
- id: update_check_frequency
|
|
23
|
+
question: "MoAI version check frequency?"
|
|
24
|
+
header: "Update Check"
|
|
25
|
+
field: "moai.update_check_frequency"
|
|
26
|
+
type: select_single
|
|
27
|
+
multi_select: false
|
|
28
|
+
required: true
|
|
29
|
+
options:
|
|
30
|
+
- label: "Daily"
|
|
31
|
+
description: "Check for updates daily (recommended)"
|
|
32
|
+
value: "daily"
|
|
33
|
+
- label: "Weekly"
|
|
34
|
+
description: "Check for updates weekly"
|
|
35
|
+
value: "weekly"
|
|
36
|
+
- label: "Never"
|
|
37
|
+
description: "Disable update checks"
|
|
38
|
+
value: "never"
|
|
39
|
+
target:
|
|
40
|
+
file: "sections/system.yaml"
|
|
41
|
+
path: "moai.update_check_frequency"
|
|
42
|
+
|
|
43
|
+
- id: version_check_enabled
|
|
44
|
+
question: "Enable version checking?"
|
|
45
|
+
header: "Version Check"
|
|
46
|
+
field: "moai.version_check.enabled"
|
|
47
|
+
type: select_single
|
|
48
|
+
multi_select: false
|
|
49
|
+
required: true
|
|
50
|
+
options:
|
|
51
|
+
- label: "Enabled"
|
|
52
|
+
description: "Enable version checking (recommended)"
|
|
53
|
+
value: true
|
|
54
|
+
- label: "Disabled"
|
|
55
|
+
description: "Disable version checking"
|
|
56
|
+
value: false
|
|
57
|
+
target:
|
|
58
|
+
file: "sections/system.yaml"
|
|
59
|
+
path: "moai.version_check.enabled"
|
|
60
|
+
|
|
61
|
+
- id: cache_ttl_hours
|
|
62
|
+
question: "Version check cache TTL hours?"
|
|
63
|
+
header: "Cache TTL"
|
|
64
|
+
field: "moai.version_check.cache_ttl_hours"
|
|
65
|
+
type: number_input
|
|
66
|
+
multi_select: false
|
|
67
|
+
required: true
|
|
68
|
+
options:
|
|
69
|
+
- label: "24 hours"
|
|
70
|
+
description: "Cache version info for 24 hours (recommended)"
|
|
71
|
+
value: 24
|
|
72
|
+
- label: "Other"
|
|
73
|
+
description: "Enter custom hours"
|
|
74
|
+
value: "{{prompt_user}}"
|
|
75
|
+
target:
|
|
76
|
+
file: "sections/system.yaml"
|
|
77
|
+
path: "moai.version_check.cache_ttl_hours"
|
|
78
|
+
|
|
79
|
+
# Batch 5.2: GitHub Automation Settings
|
|
80
|
+
- batch_id: "5.2"
|
|
81
|
+
label: "GitHub Automation Settings"
|
|
82
|
+
conditional: false
|
|
83
|
+
questions:
|
|
84
|
+
- id: enable_trust_5
|
|
85
|
+
question: "Enable TRUST 5 in GitHub templates?"
|
|
86
|
+
header: "TRUST 5"
|
|
87
|
+
field: "github.enable_trust_5"
|
|
88
|
+
type: select_single
|
|
89
|
+
multi_select: false
|
|
90
|
+
required: true
|
|
91
|
+
options:
|
|
92
|
+
- label: "Enabled"
|
|
93
|
+
description: "Include TRUST 5 sections in PR templates (recommended)"
|
|
94
|
+
value: true
|
|
95
|
+
- label: "Disabled"
|
|
96
|
+
description: "Omit TRUST 5 sections"
|
|
97
|
+
value: false
|
|
98
|
+
target:
|
|
99
|
+
file: "sections/system.yaml"
|
|
100
|
+
path: "github.enable_trust_5"
|
|
101
|
+
|
|
102
|
+
- id: auto_delete_branches
|
|
103
|
+
question: "Auto-delete merged branches?"
|
|
104
|
+
header: "Auto Delete"
|
|
105
|
+
field: "github.auto_delete_branches"
|
|
106
|
+
type: select_single
|
|
107
|
+
multi_select: false
|
|
108
|
+
required: false
|
|
109
|
+
options:
|
|
110
|
+
- label: "Enabled"
|
|
111
|
+
description: "Delete branches after merge (recommended)"
|
|
112
|
+
value: true
|
|
113
|
+
- label: "Disabled"
|
|
114
|
+
description: "Keep branches after merge"
|
|
115
|
+
value: false
|
|
116
|
+
- label: "Not Set"
|
|
117
|
+
description: "Use GitHub default"
|
|
118
|
+
value: null
|
|
119
|
+
target:
|
|
120
|
+
file: "sections/system.yaml"
|
|
121
|
+
path: "github.auto_delete_branches"
|
|
122
|
+
|
|
123
|
+
- id: spec_git_workflow
|
|
124
|
+
question: "SPEC Git workflow?"
|
|
125
|
+
header: "SPEC Workflow"
|
|
126
|
+
field: "github.spec_git_workflow"
|
|
127
|
+
type: select_single
|
|
128
|
+
multi_select: false
|
|
129
|
+
required: true
|
|
130
|
+
options:
|
|
131
|
+
- label: "Develop Direct"
|
|
132
|
+
description: "Direct commits to develop (recommended for personal)"
|
|
133
|
+
value: "develop_direct"
|
|
134
|
+
- label: "Feature Branch"
|
|
135
|
+
description: "Always create feature branches"
|
|
136
|
+
value: "feature_branch"
|
|
137
|
+
- label: "Per SPEC"
|
|
138
|
+
description: "Ask user for each SPEC"
|
|
139
|
+
value: "per_spec"
|
|
140
|
+
target:
|
|
141
|
+
file: "sections/system.yaml"
|
|
142
|
+
path: "github.spec_git_workflow"
|
|
143
|
+
|
|
144
|
+
validation:
|
|
145
|
+
checkpoint: "after_tab_5"
|
|
146
|
+
rules:
|
|
147
|
+
- name: "validate_cache_ttl"
|
|
148
|
+
description: "Cache TTL must be positive"
|
|
149
|
+
field: "moai.version_check.cache_ttl_hours"
|
|
150
|
+
validation: "range"
|
|
151
|
+
min: 1
|
|
152
|
+
max: 168
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Git Strategy Settings
|
|
2
|
+
# Workflow configuration for Manual/Personal/Team modes
|
|
3
|
+
|
|
4
|
+
git_strategy:
|
|
5
|
+
mode: manual # manual, personal, team
|
|
6
|
+
|
|
7
|
+
# Manual Mode Settings (Local Git)
|
|
8
|
+
manual:
|
|
9
|
+
workflow: github-flow
|
|
10
|
+
environment: local
|
|
11
|
+
github_integration: false
|
|
12
|
+
auto_checkpoint: disabled
|
|
13
|
+
push_to_remote: false
|
|
14
|
+
|
|
15
|
+
# Personal Mode Settings (GitHub Individual)
|
|
16
|
+
personal:
|
|
17
|
+
workflow: github-flow
|
|
18
|
+
environment: github
|
|
19
|
+
github_integration: true
|
|
20
|
+
auto_branch: true
|
|
21
|
+
auto_commit: true
|
|
22
|
+
auto_pr: false
|
|
23
|
+
auto_push: true
|
|
24
|
+
branch_prefix: "feature/SPEC-"
|
|
25
|
+
main_branch: main
|
|
26
|
+
|
|
27
|
+
# Team Mode Settings (GitHub Team)
|
|
28
|
+
team:
|
|
29
|
+
workflow: github-flow
|
|
30
|
+
environment: github
|
|
31
|
+
github_integration: true
|
|
32
|
+
auto_branch: true
|
|
33
|
+
auto_commit: true
|
|
34
|
+
auto_pr: true
|
|
35
|
+
auto_push: true
|
|
36
|
+
draft_pr: true
|
|
37
|
+
required_reviews: 1
|
|
38
|
+
branch_protection: true
|
|
39
|
+
feature_prefix: "feature/SPEC-"
|
|
40
|
+
main_branch: main
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Language Settings (CLAUDE.md Reference)
|
|
2
|
+
# This file is auto-loaded by CLAUDE.md for language configuration
|
|
3
|
+
|
|
4
|
+
language:
|
|
5
|
+
conversation_language: en # User-facing responses (ko, en, ja, es, zh, fr, de)
|
|
6
|
+
conversation_language_name: English # Display name (auto-updated)
|
|
7
|
+
agent_prompt_language: en # Internal agent instructions
|
|
8
|
+
git_commit_messages: en # Git commit message language
|
|
9
|
+
code_comments: en # Source code comment language
|
|
10
|
+
documentation: en # Documentation files language
|
|
11
|
+
error_messages: en # Error message language
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Project Settings
|
|
2
|
+
# Basic project metadata
|
|
3
|
+
|
|
4
|
+
project:
|
|
5
|
+
name: "" # Project name
|
|
6
|
+
description: "" # Project description
|
|
7
|
+
mode: development # development, production, maintenance
|
|
8
|
+
locale: en_US # Auto-derived from conversation_language
|
|
9
|
+
created_at: "" # Auto-set during init
|
|
10
|
+
initialized: false # Auto-set during init
|
|
11
|
+
|
|
12
|
+
github:
|
|
13
|
+
profile_name: "" # GitHub username (e.g., @GoosLab)
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# Quality & Constitution Settings
|
|
2
|
+
# TDD enforcement and report generation
|
|
3
|
+
|
|
4
|
+
constitution:
|
|
5
|
+
enforce_tdd: true # Require tests before implementation
|
|
6
|
+
test_coverage_target: 90 # Minimum test coverage percentage
|
|
7
|
+
principles:
|
|
8
|
+
simplicity:
|
|
9
|
+
max_projects: 5 # Maximum concurrent projects
|
|
10
|
+
|
|
11
|
+
report_generation:
|
|
12
|
+
enabled: true # Enable report generation
|
|
13
|
+
auto_create: false # Auto-create full reports (false = minimal)
|
|
14
|
+
warn_user: true # Ask before generating reports
|
|
15
|
+
user_choice: Minimal # Default: Minimal, Full, None
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# System & GitHub Integration Settings
|
|
2
|
+
# MoAI system configuration and GitHub automation
|
|
3
|
+
|
|
4
|
+
moai:
|
|
5
|
+
version: "{{MOAI_VERSION}}"
|
|
6
|
+
update_check_frequency: daily
|
|
7
|
+
version_check:
|
|
8
|
+
enabled: true
|
|
9
|
+
cache_ttl_hours: 24
|
|
10
|
+
|
|
11
|
+
github:
|
|
12
|
+
enable_trust_5: true # Include TRUST 5 in PR templates
|
|
13
|
+
auto_delete_branches: true # Delete branches after merge
|
|
14
|
+
spec_git_workflow: develop_direct # develop_direct, feature_branch, per_spec
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# MoAI-ADK Statusline Configuration for Claude Code
|
|
2
|
+
# Optimized for Windows, macOS, and Linux environments
|
|
3
|
+
# Updated: 2025-11-16 (Performance optimization for Issue #229)
|
|
4
|
+
|
|
5
|
+
statusline:
|
|
6
|
+
enabled: true
|
|
7
|
+
|
|
8
|
+
# Display mode: compact (80 chars) | extended (120 chars) | minimal (40 chars)
|
|
9
|
+
mode: "extended"
|
|
10
|
+
|
|
11
|
+
# Refresh interval in milliseconds (Claude Code API limitation: 300ms)
|
|
12
|
+
refresh_interval_ms: 300
|
|
13
|
+
|
|
14
|
+
# Color configuration
|
|
15
|
+
colors:
|
|
16
|
+
enabled: true
|
|
17
|
+
theme: "auto" # auto | light | dark | high-contrast
|
|
18
|
+
palette:
|
|
19
|
+
model: "38;5;33" # Blue
|
|
20
|
+
output_style: "38;5;219" # Pink/Magenta
|
|
21
|
+
feature_branch: "38;5;226" # Yellow
|
|
22
|
+
develop_branch: "38;5;51" # Cyan
|
|
23
|
+
main_branch: "38;5;46" # Green
|
|
24
|
+
staged: "38;5;46" # Green
|
|
25
|
+
modified: "38;5;208" # Orange
|
|
26
|
+
untracked: "38;5;196" # Red
|
|
27
|
+
update_available: "38;5;208" # Orange
|
|
28
|
+
memory_usage: "38;5;172" # Brown/Orange
|
|
29
|
+
duration: "38;5;240" # Gray
|
|
30
|
+
todo_count: "38;5;123" # Purple
|
|
31
|
+
separator: "38;5;250" # Light Gray
|
|
32
|
+
|
|
33
|
+
# Caching configuration (Windows optimization)
|
|
34
|
+
# Performance improvements: git 5→10s, alfred 1→5s, update 300→600s
|
|
35
|
+
cache:
|
|
36
|
+
git_ttl_seconds: 10 # Git command results (5→10: process creation reduced)
|
|
37
|
+
metrics_ttl_seconds: 10 # Session metrics (unchanged)
|
|
38
|
+
alfred_ttl_seconds: 5 # Alfred task state (1→5: file I/O reduced 80%)
|
|
39
|
+
todo_ttl_seconds: 5 # TODO items count (3→5)
|
|
40
|
+
memory_ttl_seconds: 10 # Memory usage information (5→10)
|
|
41
|
+
output_style_ttl_seconds: 120 # Output style configuration (60→120)
|
|
42
|
+
version_ttl_seconds: 120 # Version information (60→120)
|
|
43
|
+
update_ttl_seconds: 600 # Update check (300→600: network I/O reduced 83%)
|
|
44
|
+
|
|
45
|
+
# Information display settings - Custom ordered status bar
|
|
46
|
+
display:
|
|
47
|
+
model: true # 🤖 Model name (glm-4.6, claude-3.5-sonnet, etc.)
|
|
48
|
+
version: true # 🗿 MoAI-ADK version (0.23.0, etc.)
|
|
49
|
+
output_style: true # ✍️ Output style (Explanatory, Concise, etc.)
|
|
50
|
+
memory_usage: true # 💾 Session memory usage
|
|
51
|
+
todo_count: true # 📋 Active TODO items count
|
|
52
|
+
branch: true # 🔀 Git branch
|
|
53
|
+
git_status: true # ✅2 M1 ?10 Git changes status
|
|
54
|
+
duration: true # ⏱️ Session elapsed time
|
|
55
|
+
directory: true # 📁 Project name/directory
|
|
56
|
+
active_task: true # 🎯 Alfred active task
|
|
57
|
+
update_indicator: true # 🔄 Update notification
|
|
58
|
+
|
|
59
|
+
# Error handling (Windows: reduced logging I/O)
|
|
60
|
+
error_handling:
|
|
61
|
+
graceful_degradation: true # Return default values on error
|
|
62
|
+
log_level: "error" # warning | error (Windows: error for minimal I/O)
|
|
63
|
+
fallback_text: "" # Text to display on error (blank recommended)
|
|
64
|
+
|
|
65
|
+
# Format configuration
|
|
66
|
+
format:
|
|
67
|
+
max_branch_length: 30 # Truncate long branch names
|
|
68
|
+
truncate_with: "..." # Truncation indicator
|
|
69
|
+
separator: " | " # Section separator
|
|
70
|
+
|
|
71
|
+
# Icon configuration for better visual recognition
|
|
72
|
+
icons:
|
|
73
|
+
git: "🔀" # Git branch icon (more intuitive than 📊)
|
|
74
|
+
staged: "✅" # Staged files
|
|
75
|
+
modified: "📝" # Modified files
|
|
76
|
+
untracked: "❓" # Untracked files
|
|
77
|
+
added: "➕" # Added files
|
|
78
|
+
deleted: "➖" # Deleted files
|
|
79
|
+
renamed: "🔄" # Renamed files
|
|
80
|
+
conflict: "⚠️" # Conflict files
|
|
81
|
+
model: "🤖" # AI model
|
|
82
|
+
output_style: "💬" # Writing style
|
|
83
|
+
duration: "⏱️" # Time duration
|
|
84
|
+
todo: "📋" # TODO items
|
|
85
|
+
update: "🔄" # Update available
|
|
86
|
+
project: "📁" # Project directory
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
"""GLM Configuration Setup Script for MoAI-ADK
|
|
3
|
+
|
|
4
|
+
Configures GLM (OpenAI-compatible API endpoint) for Claude models integration.
|
|
5
|
+
|
|
6
|
+
Usage:
|
|
7
|
+
uv run {{PROJECT_DIR}}/.moai/scripts/setup-glm.py <api-token>
|
|
8
|
+
|
|
9
|
+
Behavior:
|
|
10
|
+
1. Saves API token to .env.glm (keeps token secure, .gitignore protected)
|
|
11
|
+
2. Updates .claude/settings.local.json with GLM model environment variables
|
|
12
|
+
3. Token persists across sessions (no re-entry needed)
|
|
13
|
+
4. Next Claude Code restart loads configuration automatically
|
|
14
|
+
|
|
15
|
+
Example:
|
|
16
|
+
$ /moai:0-project --glm-on abc123xyz...
|
|
17
|
+
API token saved to ./.env.glm
|
|
18
|
+
GLM model configuration updated in ./.claude/settings.local.json
|
|
19
|
+
GLM configuration complete!
|
|
20
|
+
"""
|
|
21
|
+
|
|
22
|
+
import json
|
|
23
|
+
import sys
|
|
24
|
+
from pathlib import Path
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
def setup_glm(api_token: str, project_root: Path | None = None) -> bool:
|
|
28
|
+
"""Configure GLM integration in the project
|
|
29
|
+
|
|
30
|
+
Args:
|
|
31
|
+
api_token: GLM API authentication token
|
|
32
|
+
project_root: Project root directory (default: current directory)
|
|
33
|
+
|
|
34
|
+
Returns:
|
|
35
|
+
True if successful, False otherwise
|
|
36
|
+
"""
|
|
37
|
+
if project_root is None:
|
|
38
|
+
project_root = Path.cwd()
|
|
39
|
+
else:
|
|
40
|
+
project_root = Path(project_root).resolve()
|
|
41
|
+
|
|
42
|
+
try:
|
|
43
|
+
# 1. Create .env.glm with API token
|
|
44
|
+
env_glm_path = project_root / ".env.glm"
|
|
45
|
+
env_glm_path.write_text(f"ANTHROPIC_AUTH_TOKEN={api_token}\n")
|
|
46
|
+
|
|
47
|
+
# Set secure permissions (user read/write only)
|
|
48
|
+
env_glm_path.chmod(0o600)
|
|
49
|
+
|
|
50
|
+
print(f"✓ API token saved to: {env_glm_path.relative_to(project_root)}")
|
|
51
|
+
|
|
52
|
+
# 2. Add .env.glm to .gitignore if needed
|
|
53
|
+
gitignore_path = project_root / ".gitignore"
|
|
54
|
+
glm_entry = ".env.glm"
|
|
55
|
+
|
|
56
|
+
if gitignore_path.exists():
|
|
57
|
+
gitignore_content = gitignore_path.read_text()
|
|
58
|
+
if glm_entry not in gitignore_content:
|
|
59
|
+
gitignore_path.write_text(gitignore_content.rstrip() + f"\n{glm_entry}\n")
|
|
60
|
+
else:
|
|
61
|
+
gitignore_path.write_text(f"{glm_entry}\n")
|
|
62
|
+
|
|
63
|
+
# 3. Update .claude/settings.local.json with GLM model configuration
|
|
64
|
+
settings_path = project_root / ".claude" / "settings.local.json"
|
|
65
|
+
|
|
66
|
+
if not settings_path.exists():
|
|
67
|
+
print(f"❌ Error: {settings_path} not found")
|
|
68
|
+
print(" Run 'moai-adk init' first to initialize the project")
|
|
69
|
+
return False
|
|
70
|
+
|
|
71
|
+
# Load existing settings
|
|
72
|
+
with open(settings_path, "r", encoding="utf-8") as f:
|
|
73
|
+
settings = json.load(f)
|
|
74
|
+
|
|
75
|
+
# Add GLM environment variables with authentication token
|
|
76
|
+
settings["env"] = {
|
|
77
|
+
"ANTHROPIC_AUTH_TOKEN": api_token,
|
|
78
|
+
"ANTHROPIC_BASE_URL": "https://api.z.ai/api/anthropic",
|
|
79
|
+
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "glm-4.5-air",
|
|
80
|
+
"ANTHROPIC_DEFAULT_SONNET_MODEL": "glm-4.6",
|
|
81
|
+
"ANTHROPIC_DEFAULT_OPUS_MODEL": "glm-4.6",
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
# Write back to file
|
|
85
|
+
with open(settings_path, "w", encoding="utf-8") as f:
|
|
86
|
+
json.dump(settings, f, indent=2, ensure_ascii=False)
|
|
87
|
+
|
|
88
|
+
print(f"✓ GLM model configuration updated in: {settings_path.relative_to(project_root)}")
|
|
89
|
+
print()
|
|
90
|
+
print("Configured environment variables:")
|
|
91
|
+
print(f" • ANTHROPIC_AUTH_TOKEN: {api_token[:20]}... (loaded from .env.glm)")
|
|
92
|
+
print(" • ANTHROPIC_BASE_URL: https://api.z.ai/api/anthropic")
|
|
93
|
+
print(" • ANTHROPIC_DEFAULT_HAIKU_MODEL: glm-4.5-air")
|
|
94
|
+
print(" • ANTHROPIC_DEFAULT_SONNET_MODEL: glm-4.6")
|
|
95
|
+
print(" • ANTHROPIC_DEFAULT_OPUS_MODEL: glm-4.6")
|
|
96
|
+
print()
|
|
97
|
+
print("✓ GLM configuration complete!")
|
|
98
|
+
print("Note: Restart Claude Code to load the new configuration automatically.")
|
|
99
|
+
|
|
100
|
+
return True
|
|
101
|
+
|
|
102
|
+
except json.JSONDecodeError as e:
|
|
103
|
+
print(f"❌ Error: Invalid JSON in {settings_path}")
|
|
104
|
+
print(f" Details: {e}")
|
|
105
|
+
return False
|
|
106
|
+
|
|
107
|
+
except Exception as e:
|
|
108
|
+
print(f"❌ Error during GLM configuration: {e}")
|
|
109
|
+
return False
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
def main() -> None:
|
|
113
|
+
"""Main entry point"""
|
|
114
|
+
if len(sys.argv) < 2:
|
|
115
|
+
print("Usage: uv run {{PROJECT_DIR}}/.moai/scripts/setup-glm.py <api-token>")
|
|
116
|
+
print()
|
|
117
|
+
print("Arguments:")
|
|
118
|
+
print(" api-token GLM API authentication token")
|
|
119
|
+
print()
|
|
120
|
+
print("Example:")
|
|
121
|
+
print(" uv run {{PROJECT_DIR}}/.moai/scripts/setup-glm.py abc123xyz...")
|
|
122
|
+
sys.exit(1)
|
|
123
|
+
|
|
124
|
+
api_token = sys.argv[1]
|
|
125
|
+
|
|
126
|
+
# Validate token (basic check)
|
|
127
|
+
if not api_token or len(api_token) < 10:
|
|
128
|
+
print("❌ Error: API token appears to be invalid (too short)")
|
|
129
|
+
sys.exit(1)
|
|
130
|
+
|
|
131
|
+
success = setup_glm(api_token)
|
|
132
|
+
sys.exit(0 if success else 1)
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
if __name__ == "__main__":
|
|
136
|
+
main()
|