moai-adk 0.32.8__py3-none-any.whl → 0.41.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of moai-adk might be problematic. Click here for more details.
- moai_adk/cli/commands/init.py +4 -1
- moai_adk/cli/commands/update.py +31 -26
- moai_adk/cli/worktree/cli.py +54 -43
- moai_adk/cli/worktree/manager.py +17 -14
- moai_adk/cli/worktree/registry.py +313 -19
- moai_adk/core/config/unified.py +237 -63
- moai_adk/core/error_recovery_system.py +22 -4
- moai_adk/core/git/conflict_detector.py +10 -1
- moai_adk/core/git/event_detector.py +16 -5
- moai_adk/core/language_config_resolver.py +96 -3
- moai_adk/core/merge/analyzer.py +509 -324
- moai_adk/core/migration/alfred_to_moai_migrator.py +7 -1
- moai_adk/core/migration/backup_manager.py +54 -4
- moai_adk/core/migration/file_migrator.py +174 -2
- moai_adk/core/migration/interactive_checkbox_ui.py +42 -31
- moai_adk/core/migration/version_detector.py +123 -19
- moai_adk/core/migration/version_migrator.py +44 -9
- moai_adk/core/project/backup_utils.py +9 -1
- moai_adk/core/project/initializer.py +33 -96
- moai_adk/core/project/phase_executor.py +79 -33
- moai_adk/core/quality/trust_checker.py +30 -10
- moai_adk/core/realtime_monitoring_dashboard.py +3 -3
- moai_adk/core/rollback_manager.py +46 -19
- moai_adk/core/template/backup.py +4 -3
- moai_adk/core/template/config.py +33 -9
- moai_adk/core/template/merger.py +34 -8
- moai_adk/core/template/processor.py +144 -9
- moai_adk/core/template_engine.py +10 -1
- moai_adk/core/template_variable_synchronizer.py +16 -2
- moai_adk/core/version_sync.py +54 -6
- moai_adk/project/configuration.py +1 -1
- moai_adk/statusline/config.py +5 -2
- moai_adk/statusline/main.py +58 -0
- moai_adk/statusline/renderer.py +56 -84
- moai_adk/templates/.claude/agents/moai/ai-nano-banana.md +218 -51
- moai_adk/templates/.claude/agents/moai/builder-agent.md +46 -11
- moai_adk/templates/.claude/agents/moai/builder-command.md +88 -26
- moai_adk/templates/.claude/agents/moai/builder-plugin.md +753 -0
- moai_adk/templates/.claude/agents/moai/builder-skill.md +79 -8
- moai_adk/templates/.claude/agents/moai/expert-backend.md +100 -28
- moai_adk/templates/.claude/agents/moai/expert-database.md +20 -12
- moai_adk/templates/.claude/agents/moai/expert-debug.md +19 -8
- moai_adk/templates/.claude/agents/moai/expert-devops.md +36 -25
- moai_adk/templates/.claude/agents/moai/expert-frontend.md +99 -38
- moai_adk/templates/.claude/agents/moai/expert-performance.md +661 -0
- moai_adk/templates/.claude/agents/moai/expert-refactoring.md +218 -0
- moai_adk/templates/.claude/agents/moai/expert-security.md +55 -4
- moai_adk/templates/.claude/agents/moai/expert-testing.md +737 -0
- moai_adk/templates/.claude/agents/moai/expert-uiux.md +20 -11
- moai_adk/templates/.claude/agents/moai/manager-claude-code.md +13 -4
- moai_adk/templates/.claude/agents/moai/manager-docs.md +15 -7
- moai_adk/templates/.claude/agents/moai/manager-git.md +192 -37
- moai_adk/templates/.claude/agents/moai/manager-project.md +13 -7
- moai_adk/templates/.claude/agents/moai/manager-quality.md +48 -6
- moai_adk/templates/.claude/agents/moai/manager-spec.md +110 -8
- moai_adk/templates/.claude/agents/moai/manager-strategy.md +203 -17
- moai_adk/templates/.claude/agents/moai/manager-tdd.md +217 -23
- moai_adk/templates/.claude/agents/moai/mcp-context7.md +102 -7
- moai_adk/templates/.claude/agents/moai/mcp-figma.md +107 -86
- moai_adk/templates/.claude/agents/moai/mcp-notion.md +50 -4
- moai_adk/templates/.claude/agents/moai/mcp-playwright.md +52 -4
- moai_adk/templates/.claude/agents/moai/mcp-sequential-thinking.md +49 -5
- moai_adk/templates/.claude/commands/moai/0-project.md +503 -307
- moai_adk/templates/.claude/commands/moai/1-plan.md +255 -323
- moai_adk/templates/.claude/commands/moai/2-run.md +257 -315
- moai_adk/templates/.claude/commands/moai/3-sync.md +421 -56
- moai_adk/templates/.claude/commands/moai/9-feedback.md +40 -34
- moai_adk/templates/.claude/hooks/moai/__init__.py +0 -0
- moai_adk/templates/.claude/hooks/moai/lib/README.md +143 -0
- moai_adk/templates/.claude/hooks/moai/lib/__init__.py +19 -0
- moai_adk/templates/.claude/hooks/moai/lib/checkpoint.py +4 -1
- moai_adk/templates/.claude/hooks/moai/lib/common.py +35 -5
- moai_adk/templates/.claude/hooks/moai/lib/config_manager.py +12 -14
- moai_adk/templates/.claude/hooks/moai/lib/exceptions.py +171 -0
- moai_adk/templates/.claude/hooks/moai/lib/git_operations_manager.py +1 -1
- moai_adk/templates/.claude/hooks/moai/lib/language_validator.py +104 -14
- moai_adk/templates/.claude/hooks/moai/lib/models.py +9 -7
- moai_adk/templates/.claude/hooks/moai/lib/path_utils.py +204 -13
- moai_adk/templates/.claude/hooks/moai/lib/project.py +23 -14
- moai_adk/templates/.claude/hooks/moai/lib/tool_registry.py +804 -0
- moai_adk/templates/.claude/hooks/moai/lib/unified_timeout_manager.py +14 -2
- moai_adk/templates/.claude/hooks/moai/post_tool__ast_grep_scan.py +256 -0
- moai_adk/templates/.claude/hooks/moai/post_tool__code_formatter.py +253 -0
- moai_adk/templates/.claude/hooks/moai/post_tool__linter.py +307 -0
- moai_adk/templates/.claude/hooks/moai/pre_tool__security_guard.py +231 -0
- moai_adk/templates/.claude/hooks/moai/session_end__auto_cleanup.py +40 -24
- moai_adk/templates/.claude/hooks/moai/session_start__show_project_info.py +248 -32
- moai_adk/templates/.claude/output-styles/moai/r2d2.md +265 -2
- moai_adk/templates/.claude/output-styles/moai/yoda.md +23 -2
- moai_adk/templates/.claude/settings.json +44 -6
- moai_adk/templates/.claude/skills/moai-ai-nano-banana/SKILL.md +303 -0
- moai_adk/templates/.claude/skills/moai-ai-nano-banana/examples.md +431 -0
- moai_adk/templates/.claude/skills/moai-ai-nano-banana/reference.md +139 -0
- moai_adk/templates/.claude/skills/moai-ai-nano-banana/scripts/batch_generate.py +560 -0
- moai_adk/templates/.claude/skills/moai-ai-nano-banana/scripts/generate_image.py +362 -0
- moai_adk/templates/.claude/skills/moai-docs-generation/SKILL.md +252 -196
- moai_adk/templates/.claude/skills/moai-docs-generation/examples.md +252 -0
- moai_adk/templates/.claude/skills/moai-docs-generation/modules/README.md +39 -27
- moai_adk/templates/.claude/skills/moai-docs-generation/modules/api-documentation.md +115 -125
- moai_adk/templates/.claude/skills/moai-docs-generation/modules/code-documentation.md +150 -150
- moai_adk/templates/.claude/skills/moai-docs-generation/modules/multi-format-output.md +182 -175
- moai_adk/templates/.claude/skills/moai-docs-generation/modules/user-guides.md +198 -138
- moai_adk/templates/.claude/skills/moai-docs-generation/reference.md +234 -0
- moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +19 -13
- moai_adk/templates/.claude/skills/moai-domain-backend/examples.md +718 -0
- moai_adk/templates/.claude/skills/moai-domain-backend/reference.md +464 -0
- moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +21 -14
- moai_adk/templates/.claude/skills/moai-domain-database/examples.md +830 -0
- moai_adk/templates/.claude/skills/moai-domain-database/reference.md +545 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +124 -425
- moai_adk/templates/.claude/skills/moai-domain-frontend/examples.md +968 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/modules/component-architecture.md +723 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/modules/nextjs16-patterns.md +713 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/modules/performance-optimization.md +694 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/modules/react19-patterns.md +591 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/modules/state-management.md +680 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/modules/vue35-patterns.md +802 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/reference.md +664 -0
- moai_adk/templates/.claude/skills/moai-domain-uiux/SKILL.md +17 -15
- moai_adk/templates/.claude/skills/moai-formats-data/SKILL.md +105 -315
- moai_adk/templates/.claude/skills/moai-formats-data/examples.md +804 -0
- moai_adk/templates/.claude/skills/moai-formats-data/modules/README.md +299 -70
- moai_adk/templates/.claude/skills/moai-formats-data/modules/toon-encoding.md +6 -6
- moai_adk/templates/.claude/skills/moai-formats-data/reference.md +585 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/SKILL.md +197 -154
- moai_adk/templates/.claude/skills/moai-foundation-claude/examples.md +732 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/advanced-agent-patterns.md +370 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-cli-reference-official.md +420 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-devcontainers-official.md +381 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-discover-plugins-official.md +379 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-headless-official.md +378 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-hooks-official.md +110 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-memory-official.md +2 -2
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-plugin-marketplaces-official.md +308 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-plugins-official.md +432 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-sandboxing-official.md +282 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-skills-official.md +425 -71
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-statusline-official.md +293 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-sub-agents-official.md +325 -143
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference.md +209 -0
- moai_adk/templates/.claude/skills/moai-foundation-context/SKILL.md +12 -1
- moai_adk/templates/.claude/skills/moai-foundation-context/examples.md +1048 -0
- moai_adk/templates/.claude/skills/moai-foundation-context/reference.md +246 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/SKILL.md +33 -134
- moai_adk/templates/.claude/skills/moai-foundation-core/examples.md +358 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/agents-reference.md +31 -18
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/commands-reference.md +30 -30
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/delegation-advanced.md +279 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/delegation-implementation.md +267 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/delegation-patterns.md +121 -650
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/patterns.md +22 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/spec-ears-format.md +200 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/spec-first-tdd.md +37 -730
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/spec-tdd-implementation.md +275 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/trust-5-framework.md +77 -819
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/trust-5-implementation.md +244 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/modules/trust-5-validation.md +219 -0
- moai_adk/templates/.claude/skills/moai-foundation-core/reference.md +478 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/SKILL.md +311 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/examples.md +228 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/modules/assumption-matrix.md +80 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/modules/cognitive-bias.md +199 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/modules/first-principles.md +140 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/modules/trade-off-analysis.md +154 -0
- moai_adk/templates/.claude/skills/moai-foundation-philosopher/reference.md +157 -0
- moai_adk/templates/.claude/skills/moai-foundation-quality/SKILL.md +17 -16
- moai_adk/templates/.claude/skills/moai-lang-cpp/SKILL.md +431 -0
- moai_adk/templates/.claude/skills/moai-lang-cpp/examples.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-cpp/modules/advanced-patterns.md +401 -0
- moai_adk/templates/.claude/skills/moai-lang-cpp/reference.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/SKILL.md +194 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/examples.md +585 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/modules/aspnet-core.md +627 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/modules/blazor-components.md +767 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/modules/cqrs-validation.md +626 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/modules/csharp12-features.md +580 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/modules/efcore-patterns.md +622 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/reference.md +403 -0
- moai_adk/templates/.claude/skills/moai-lang-elixir/SKILL.md +395 -0
- moai_adk/templates/.claude/skills/moai-lang-elixir/examples.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-elixir/modules/advanced-patterns.md +531 -0
- moai_adk/templates/.claude/skills/moai-lang-elixir/reference.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-flutter/SKILL.md +473 -0
- moai_adk/templates/.claude/skills/moai-lang-flutter/examples.md +1090 -0
- moai_adk/templates/.claude/skills/moai-lang-flutter/reference.md +686 -0
- moai_adk/templates/.claude/skills/moai-lang-go/SKILL.md +378 -0
- moai_adk/templates/.claude/skills/moai-lang-go/examples.md +919 -0
- moai_adk/templates/.claude/skills/moai-lang-go/reference.md +737 -0
- moai_adk/templates/.claude/skills/moai-lang-java/SKILL.md +387 -0
- moai_adk/templates/.claude/skills/moai-lang-java/examples.md +864 -0
- moai_adk/templates/.claude/skills/moai-lang-java/reference.md +291 -0
- moai_adk/templates/.claude/skills/moai-lang-javascript/SKILL.md +419 -0
- moai_adk/templates/.claude/skills/moai-lang-javascript/examples.md +973 -0
- moai_adk/templates/.claude/skills/moai-lang-javascript/reference.md +1543 -0
- moai_adk/templates/.claude/skills/moai-lang-kotlin/SKILL.md +384 -0
- moai_adk/templates/.claude/skills/moai-lang-kotlin/examples.md +1006 -0
- moai_adk/templates/.claude/skills/moai-lang-kotlin/reference.md +562 -0
- moai_adk/templates/.claude/skills/moai-lang-php/SKILL.md +505 -0
- moai_adk/templates/.claude/skills/moai-lang-php/examples.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-php/modules/advanced-patterns.md +538 -0
- moai_adk/templates/.claude/skills/moai-lang-php/reference.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-python/SKILL.md +490 -0
- moai_adk/templates/.claude/skills/moai-lang-python/examples.md +977 -0
- moai_adk/templates/.claude/skills/moai-lang-python/reference.md +804 -0
- moai_adk/templates/.claude/skills/moai-lang-r/SKILL.md +390 -0
- moai_adk/templates/.claude/skills/moai-lang-r/examples.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-r/modules/advanced-patterns.md +489 -0
- moai_adk/templates/.claude/skills/moai-lang-r/reference.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-ruby/SKILL.md +433 -0
- moai_adk/templates/.claude/skills/moai-lang-ruby/examples.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-ruby/modules/advanced-patterns.md +309 -0
- moai_adk/templates/.claude/skills/moai-lang-ruby/modules/testing-patterns.md +306 -0
- moai_adk/templates/.claude/skills/moai-lang-ruby/reference.md +17 -0
- moai_adk/templates/.claude/skills/moai-lang-rust/SKILL.md +378 -0
- moai_adk/templates/.claude/skills/moai-lang-rust/examples.md +659 -0
- moai_adk/templates/.claude/skills/moai-lang-rust/reference.md +504 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/SKILL.md +212 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/examples.md +633 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/modules/akka-actors.md +479 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/modules/cats-effect.md +489 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/modules/functional-programming.md +460 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/modules/spark-data.md +498 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/modules/zio-patterns.md +541 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/reference.md +423 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/SKILL.md +192 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/examples.md +918 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/modules/combine-reactive.md +256 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/modules/concurrency.md +270 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/modules/swift6-features.md +265 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/modules/swiftui-patterns.md +314 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/reference.md +672 -0
- moai_adk/templates/.claude/skills/moai-lang-typescript/SKILL.md +365 -0
- moai_adk/templates/.claude/skills/moai-lang-typescript/examples.md +1089 -0
- moai_adk/templates/.claude/skills/moai-lang-typescript/reference.md +731 -0
- moai_adk/templates/.claude/skills/moai-library-mermaid/SKILL.md +94 -227
- moai_adk/templates/.claude/skills/moai-library-nextra/SKILL.md +26 -6
- moai_adk/templates/.claude/skills/moai-library-nextra/examples.md +592 -0
- moai_adk/templates/.claude/skills/moai-library-nextra/modules/advanced-patterns.md +331 -12
- moai_adk/templates/.claude/skills/moai-library-nextra/modules/configuration.md +330 -37
- moai_adk/templates/.claude/skills/moai-library-nextra/reference.md +379 -0
- moai_adk/templates/.claude/skills/moai-library-shadcn/SKILL.md +17 -13
- moai_adk/templates/.claude/skills/moai-library-shadcn/modules/shadcn-theming.md +1 -1
- moai_adk/templates/.claude/skills/moai-platform-auth0/SKILL.md +284 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/examples.md +2446 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/adaptive-mfa.md +233 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/akamai-integration.md +214 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/application-credentials.md +280 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/attack-protection-log-events.md +224 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/attack-protection-overview.md +140 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/bot-detection.md +144 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/breached-password-detection.md +187 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/brute-force-protection.md +189 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/certifications.md +282 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/compliance-overview.md +263 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/continuous-session-protection.md +307 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/customize-mfa.md +177 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/dpop-implementation.md +283 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/fapi-implementation.md +259 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/gdpr-compliance.md +313 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/guardian-configuration.md +269 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/highly-regulated-identity.md +272 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/jwt-fundamentals.md +248 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/mdl-verification.md +210 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/mfa-api-management.md +278 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/mfa-factors.md +226 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/mfa-overview.md +174 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/mtls-sender-constraining.md +316 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/ropg-flow-mfa.md +216 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/security-center.md +325 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/security-guidance.md +277 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/state-parameters.md +177 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/step-up-authentication.md +251 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/suspicious-ip-throttling.md +240 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/tenant-access-control.md +179 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/modules/webauthn-fido.md +235 -0
- moai_adk/templates/.claude/skills/moai-platform-auth0/reference.md +224 -0
- moai_adk/templates/.claude/skills/moai-platform-clerk/SKILL.md +426 -0
- moai_adk/templates/.claude/skills/moai-platform-clerk/modules/advanced-patterns.md +417 -0
- moai_adk/templates/.claude/skills/moai-platform-clerk/reference.md +273 -0
- moai_adk/templates/.claude/skills/moai-platform-convex/SKILL.md +229 -0
- moai_adk/templates/.claude/skills/moai-platform-convex/examples.md +506 -0
- moai_adk/templates/.claude/skills/moai-platform-convex/modules/auth-integration.md +421 -0
- moai_adk/templates/.claude/skills/moai-platform-convex/modules/file-storage.md +474 -0
- moai_adk/templates/.claude/skills/moai-platform-convex/modules/reactive-queries.md +302 -0
- moai_adk/templates/.claude/skills/moai-platform-convex/modules/server-functions.md +452 -0
- moai_adk/templates/.claude/skills/moai-platform-convex/reference.md +385 -0
- moai_adk/templates/.claude/skills/moai-platform-firebase-auth/SKILL.md +250 -0
- moai_adk/templates/.claude/skills/moai-platform-firebase-auth/examples.md +514 -0
- moai_adk/templates/.claude/skills/moai-platform-firebase-auth/modules/custom-claims.md +374 -0
- moai_adk/templates/.claude/skills/moai-platform-firebase-auth/modules/phone-auth.md +372 -0
- moai_adk/templates/.claude/skills/moai-platform-firebase-auth/modules/social-auth.md +339 -0
- moai_adk/templates/.claude/skills/moai-platform-firebase-auth/reference.md +382 -0
- moai_adk/templates/.claude/skills/moai-platform-firestore/SKILL.md +231 -0
- moai_adk/templates/.claude/skills/moai-platform-firestore/examples.md +445 -0
- moai_adk/templates/.claude/skills/moai-platform-firestore/modules/offline-cache.md +392 -0
- moai_adk/templates/.claude/skills/moai-platform-firestore/modules/realtime-listeners.md +441 -0
- moai_adk/templates/.claude/skills/moai-platform-firestore/modules/security-rules.md +352 -0
- moai_adk/templates/.claude/skills/moai-platform-firestore/modules/transactions.md +452 -0
- moai_adk/templates/.claude/skills/moai-platform-firestore/reference.md +322 -0
- moai_adk/templates/.claude/skills/moai-platform-neon/SKILL.md +206 -0
- moai_adk/templates/.claude/skills/moai-platform-neon/examples.md +470 -0
- moai_adk/templates/.claude/skills/moai-platform-neon/modules/auto-scaling.md +349 -0
- moai_adk/templates/.claude/skills/moai-platform-neon/modules/branching-workflows.md +354 -0
- moai_adk/templates/.claude/skills/moai-platform-neon/modules/connection-pooling.md +412 -0
- moai_adk/templates/.claude/skills/moai-platform-neon/modules/pitr-backups.md +458 -0
- moai_adk/templates/.claude/skills/moai-platform-neon/reference.md +272 -0
- moai_adk/templates/.claude/skills/moai-platform-railway/SKILL.md +224 -0
- moai_adk/templates/.claude/skills/moai-platform-railway/examples.md +539 -0
- moai_adk/templates/.claude/skills/moai-platform-railway/modules/docker-deployment.md +261 -0
- moai_adk/templates/.claude/skills/moai-platform-railway/modules/multi-service.md +291 -0
- moai_adk/templates/.claude/skills/moai-platform-railway/modules/networking-domains.md +338 -0
- moai_adk/templates/.claude/skills/moai-platform-railway/modules/volumes-storage.md +353 -0
- moai_adk/templates/.claude/skills/moai-platform-railway/reference.md +374 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/SKILL.md +207 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/examples.md +502 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/modules/auth-integration.md +384 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/modules/edge-functions.md +371 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/modules/postgresql-pgvector.md +231 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/modules/realtime-presence.md +354 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/modules/row-level-security.md +286 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/modules/storage-cdn.md +319 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/modules/typescript-patterns.md +453 -0
- moai_adk/templates/.claude/skills/moai-platform-supabase/reference.md +284 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/SKILL.md +210 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/examples.md +502 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/modules/analytics-speed.md +348 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/modules/deployment-config.md +344 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/modules/edge-functions.md +222 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/modules/isr-caching.md +306 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/modules/kv-storage.md +399 -0
- moai_adk/templates/.claude/skills/moai-platform-vercel/reference.md +360 -0
- moai_adk/templates/.claude/skills/moai-plugin-builder/SKILL.md +474 -0
- moai_adk/templates/.claude/skills/moai-plugin-builder/examples.md +621 -0
- moai_adk/templates/.claude/skills/moai-plugin-builder/modules/migration.md +341 -0
- moai_adk/templates/.claude/skills/moai-plugin-builder/modules/validation.md +373 -0
- moai_adk/templates/.claude/skills/moai-plugin-builder/reference.md +464 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/SKILL.md +307 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/examples.md +1099 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/modules/language-specific.md +307 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/modules/pattern-syntax.md +237 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/modules/refactoring-patterns.md +260 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/modules/security-rules.md +239 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/reference.md +288 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/languages/go.yml +90 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/languages/python.yml +101 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/languages/typescript.yml +83 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/quality/complexity-check.yml +94 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/quality/deprecated-apis.yml +84 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/security/secrets-detection.yml +89 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/security/sql-injection.yml +45 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/security/xss-prevention.yml +50 -0
- moai_adk/templates/.claude/skills/moai-tool-ast-grep/rules/sgconfig.yml +54 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/SKILL.md +215 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/examples.md +697 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/index.md +96 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/acp.md +115 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/agents.md +241 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/commands.md +197 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/custom-tools.md +197 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/formatters.md +164 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/keybinds.md +150 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/lsp-servers.md +156 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/mcp-servers.md +214 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/models.md +197 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/permissions.md +162 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/rules.md +129 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/skills.md +192 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/themes.md +200 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/configure/tools.md +169 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/core/config.md +211 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/core/enterprise.md +68 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/core/intro.md +127 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/core/migration-1.0.md +82 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/core/network.md +72 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/core/providers.md +310 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/core/troubleshooting.md +124 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/develop/ecosystem.md +75 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/develop/plugins.md +218 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/develop/sdk.md +266 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/develop/server.md +207 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/usage/cli.md +159 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/usage/github.md +181 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/usage/gitlab.md +122 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/usage/ide.md +74 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/usage/share.md +106 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/usage/tui.md +129 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/modules/usage/zen.md +118 -0
- moai_adk/templates/.claude/skills/moai-tool-opencode/reference.md +790 -0
- moai_adk/templates/.claude/skills/moai-workflow-jit-docs/SKILL.md +190 -424
- moai_adk/templates/.claude/skills/moai-workflow-jit-docs/examples.md +544 -0
- moai_adk/templates/.claude/skills/moai-workflow-jit-docs/reference.md +307 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/SKILL.md +188 -314
- moai_adk/templates/.claude/skills/moai-workflow-project/examples.md +547 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/reference.md +275 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/schemas/tab_schema.json +284 -212
- moai_adk/templates/.claude/skills/moai-workflow-project/templates/doc-templates/product-template.md +2 -2
- moai_adk/templates/.claude/skills/moai-workflow-project/templates/doc-templates/structure-template.md +1 -1
- moai_adk/templates/.claude/skills/moai-workflow-project/templates/doc-templates/tech-template.md +22 -1
- moai_adk/templates/.claude/skills/moai-workflow-spec/SKILL.md +337 -0
- moai_adk/templates/.claude/skills/moai-workflow-spec/examples.md +900 -0
- moai_adk/templates/.claude/skills/moai-workflow-spec/modules/advanced-patterns.md +237 -0
- moai_adk/templates/.claude/skills/moai-workflow-spec/reference.md +704 -0
- moai_adk/templates/.claude/skills/moai-workflow-templates/SKILL.md +13 -0
- moai_adk/templates/.claude/skills/moai-workflow-templates/examples.md +552 -0
- moai_adk/templates/.claude/skills/moai-workflow-templates/reference.md +346 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/SKILL.md +222 -367
- moai_adk/templates/.claude/skills/moai-workflow-testing/examples.md +672 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/README.md +52 -3
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/ai-debugging.md +263 -806
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/context7-integration.md +286 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/review-workflows.md +500 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/relevance-analysis.md +154 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/safety-analysis.md +148 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/scoring-algorithms.md +196 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/timeliness-analysis.md +168 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/truthfulness-analysis.md +136 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework/usability-analysis.md +153 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review/trust5-framework.md +257 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/automated-code-review.md +191 -1344
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/code-review/analysis-patterns.md +340 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/code-review/core-classes.md +299 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/code-review/tool-integration.md +380 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/debugging/debugging-workflows.md +451 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/debugging/error-analysis.md +442 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance/optimization-patterns.md +473 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance/profiling-techniques.md +481 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization/ai-optimization.md +241 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization/bottleneck-detection.md +397 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization/optimization-plan.md +315 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization/profiler-core.md +277 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization/real-time-monitoring.md +187 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/performance-optimization.md +287 -1194
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/quality-metrics.md +415 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/refactoring/ai-workflows.md +620 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/refactoring/patterns.md +692 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/security-analysis.md +429 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/smart-refactoring.md +262 -1192
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/static-analysis.md +438 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd/core-classes.md +397 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7/advanced-features.md +494 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7/red-green-refactor.md +316 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7/test-generation.md +471 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7/test-patterns.md +371 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/tdd-context7.md +227 -1222
- moai_adk/templates/.claude/skills/moai-workflow-testing/modules/trust5-validation.md +428 -0
- moai_adk/templates/.claude/skills/moai-workflow-testing/reference.md +440 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/SKILL.md +228 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/integration-patterns.md +149 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/moai-adk-integration.md +245 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/parallel-advanced.md +310 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/parallel-development.md +202 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/parallel-workflows.md +302 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/registry-architecture.md +271 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/resource-optimization.md +300 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/tools-integration.md +280 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/troubleshooting.md +397 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/worktree-commands.md +296 -0
- moai_adk/templates/.claude/skills/moai-workflow-worktree/modules/worktree-management.md +217 -0
- moai_adk/templates/.git-hooks/pre-push +168 -50
- moai_adk/templates/.gitignore +0 -3
- moai_adk/templates/.lsp.json +152 -0
- moai_adk/templates/.mcp.json +5 -12
- moai_adk/templates/.moai/config/config.yaml +20 -306
- moai_adk/templates/.moai/config/multilingual-triggers.yaml +213 -0
- moai_adk/templates/.moai/config/questions/_schema.yaml +105 -10
- moai_adk/templates/.moai/config/questions/tab0-init.yaml +259 -0
- moai_adk/templates/.moai/config/questions/tab1-user.yaml +4 -5
- moai_adk/templates/.moai/config/questions/tab2-project.yaml +12 -55
- moai_adk/templates/.moai/config/questions/tab3-git.yaml +111 -21
- moai_adk/templates/.moai/config/questions/tab4-quality.yaml +34 -18
- moai_adk/templates/.moai/config/questions/tab5-system.yaml +19 -75
- moai_adk/templates/.moai/config/sections/git-strategy.yaml +83 -7
- moai_adk/templates/.moai/config/sections/language.yaml +7 -7
- moai_adk/templates/.moai/config/sections/project.yaml +1 -1
- moai_adk/templates/.moai/config/sections/quality.yaml +7 -4
- moai_adk/templates/.moai/config/sections/system.yaml +11 -1
- moai_adk/templates/.moai/config/statusline-config.yaml +19 -13
- moai_adk/templates/.moai/scripts/setup-glm.py +4 -4
- moai_adk/templates/CLAUDE.md +578 -154
- moai_adk/utils/common.py +33 -0
- moai_adk/version.py +1 -1
- {moai_adk-0.32.8.dist-info → moai_adk-0.41.2.dist-info}/METADATA +905 -109
- moai_adk-0.41.2.dist-info/RECORD +683 -0
- moai_adk/core/config/auto_spec_config.py +0 -340
- moai_adk/core/hooks/post_tool_auto_spec_completion.py +0 -901
- moai_adk/core/spec/confidence_scoring.py +0 -680
- moai_adk/core/spec/ears_template_engine.py +0 -1247
- moai_adk/core/spec/quality_validator.py +0 -687
- moai_adk/templates/.claude/skills/moai-domain-uiux/modules/design-system-tokens.md +0 -405
- moai_adk/templates/.claude/skills/moai-integration-mcp/SKILL.md +0 -352
- moai_adk/templates/.claude/skills/moai-integration-mcp/modules/README.md +0 -52
- moai_adk/templates/.claude/skills/moai-integration-mcp/modules/error-handling.md +0 -334
- moai_adk/templates/.claude/skills/moai-integration-mcp/modules/integration-patterns.md +0 -310
- moai_adk/templates/.claude/skills/moai-integration-mcp/modules/security-authentication.md +0 -256
- moai_adk/templates/.claude/skills/moai-integration-mcp/modules/server-architecture.md +0 -253
- moai_adk/templates/.claude/skills/moai-lang-unified/README.md +0 -133
- moai_adk/templates/.claude/skills/moai-lang-unified/SKILL.md +0 -296
- moai_adk/templates/.claude/skills/moai-lang-unified/examples.md +0 -1269
- moai_adk/templates/.claude/skills/moai-lang-unified/reference.md +0 -331
- moai_adk/templates/.claude/skills/moai-library-nextra/advanced-patterns.md +0 -336
- moai_adk/templates/.claude/skills/moai-platform-baas/README.md +0 -186
- moai_adk/templates/.claude/skills/moai-platform-baas/SKILL.md +0 -290
- moai_adk/templates/.claude/skills/moai-platform-baas/examples.md +0 -1225
- moai_adk/templates/.claude/skills/moai-platform-baas/reference.md +0 -567
- moai_adk/templates/.claude/skills/moai-platform-baas/scripts/provider-selector.py +0 -323
- moai_adk/templates/.claude/skills/moai-platform-baas/templates/stack-config.yaml +0 -204
- moai_adk/templates/.claude/skills/moai-workflow-project/__init__.py +0 -520
- moai_adk/templates/.claude/skills/moai-workflow-project/complete_workflow_demo_fixed.py +0 -574
- moai_adk/templates/.claude/skills/moai-workflow-project/examples/complete_project_setup.py +0 -317
- moai_adk/templates/.claude/skills/moai-workflow-project/examples/complete_workflow_demo.py +0 -663
- moai_adk/templates/.claude/skills/moai-workflow-project/examples/config-migration-example.json +0 -190
- moai_adk/templates/.claude/skills/moai-workflow-project/examples/question-examples.json +0 -135
- moai_adk/templates/.claude/skills/moai-workflow-project/examples/quick_start.py +0 -196
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/__init__.py +0 -17
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/advanced-patterns.md +0 -158
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/ask_user_integration.py +0 -340
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/batch_questions.py +0 -713
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/config_manager.py +0 -538
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/documentation_manager.py +0 -1336
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/language_initializer.py +0 -730
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/migration_manager.py +0 -608
- moai_adk/templates/.claude/skills/moai-workflow-project/modules/template_optimizer.py +0 -1005
- moai_adk/templates/.claude/skills/moai-workflow-project/test_integration_simple.py +0 -436
- moai_adk/templates/.claude/skills/moai-worktree/SKILL.md +0 -410
- moai_adk/templates/.claude/skills/moai-worktree/modules/integration-patterns.md +0 -982
- moai_adk/templates/.claude/skills/moai-worktree/modules/parallel-development.md +0 -778
- moai_adk/templates/.claude/skills/moai-worktree/modules/worktree-commands.md +0 -646
- moai_adk/templates/.claude/skills/moai-worktree/modules/worktree-management.md +0 -782
- moai_adk/templates/.moai/cache/personalization.json +0 -10
- moai_adk/templates/.moai/config/presets/manual.yaml +0 -28
- moai_adk/templates/.moai/config/presets/personal.yaml +0 -30
- moai_adk/templates/.moai/config/presets/team.yaml +0 -33
- moai_adk-0.32.8.dist-info/RECORD +0 -396
- /moai_adk/templates/.claude/skills/moai-library-mermaid/{advanced-patterns.md → modules/advanced-patterns.md} +0 -0
- /moai_adk/templates/.claude/skills/moai-library-mermaid/{optimization.md → modules/optimization.md} +0 -0
- /moai_adk/templates/.claude/skills/moai-library-nextra/{optimization.md → modules/optimization.md} +0 -0
- /moai_adk/templates/.claude/skills/moai-workflow-jit-docs/{advanced-patterns.md → modules/advanced-patterns.md} +0 -0
- /moai_adk/templates/.claude/skills/moai-workflow-jit-docs/{optimization.md → modules/optimization.md} +0 -0
- /moai_adk/templates/.claude/skills/moai-workflow-testing/{advanced-patterns.md → modules/advanced-patterns.md} +0 -0
- /moai_adk/templates/.claude/skills/moai-workflow-testing/{optimization.md → modules/optimization.md} +0 -0
- /moai_adk/templates/.claude/skills/{moai-worktree → moai-workflow-worktree}/examples.md +0 -0
- /moai_adk/templates/.claude/skills/{moai-worktree → moai-workflow-worktree}/reference.md +0 -0
- {moai_adk-0.32.8.dist-info → moai_adk-0.41.2.dist-info}/WHEEL +0 -0
- {moai_adk-0.32.8.dist-info → moai_adk-0.41.2.dist-info}/entry_points.txt +0 -0
- {moai_adk-0.32.8.dist-info → moai_adk-0.41.2.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,310 @@
|
|
|
1
|
+
---
|
|
2
|
+
source: https://opencode.ai/docs/providers/
|
|
3
|
+
fetched: 2026-01-08
|
|
4
|
+
title: Providers
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# OpenCode Providers Documentation
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
|
|
11
|
+
OpenCode supports **75+ LLM providers** through the AI SDK and Models.dev, including local model execution. Setting up a provider requires two steps:
|
|
12
|
+
|
|
13
|
+
1. Add API keys via the `/connect` command (stored in `~/.local/share/opencode/auth.json`)
|
|
14
|
+
2. Configure the provider in your OpenCode config file
|
|
15
|
+
|
|
16
|
+
## Base URL Customization
|
|
17
|
+
|
|
18
|
+
Users can override default endpoints:
|
|
19
|
+
|
|
20
|
+
```json
|
|
21
|
+
{
|
|
22
|
+
"$schema": "https://opencode.ai/config.json",
|
|
23
|
+
"provider": {
|
|
24
|
+
"anthropic": {
|
|
25
|
+
"options": {
|
|
26
|
+
"baseURL": "https://api.anthropic.com/v1"
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## OpenCode Zen
|
|
34
|
+
|
|
35
|
+
OpenCode Zen provides curated, tested models from the OpenCode team. Setup requires:
|
|
36
|
+
|
|
37
|
+
1. Run `/connect`, select opencode, visit opencode.ai/auth
|
|
38
|
+
2. Sign in and copy your API key
|
|
39
|
+
3. Use `/models` to view recommendations
|
|
40
|
+
|
|
41
|
+
## Provider Directory
|
|
42
|
+
|
|
43
|
+
### Amazon Bedrock
|
|
44
|
+
|
|
45
|
+
- Requires Model Catalog access
|
|
46
|
+
- Authentication via AWS credentials, profiles, or bearer tokens
|
|
47
|
+
- Supports VPC endpoints with custom endpoint configuration
|
|
48
|
+
- Priority: Bearer Token > AWS Credential Chain
|
|
49
|
+
|
|
50
|
+
```json
|
|
51
|
+
{
|
|
52
|
+
"provider": {
|
|
53
|
+
"amazon-bedrock": {
|
|
54
|
+
"region": "us-west-2",
|
|
55
|
+
"profile": "production",
|
|
56
|
+
"endpoint": "https://bedrock-runtime.us-west-2.amazonaws.com"
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### Anthropic
|
|
63
|
+
|
|
64
|
+
- Recommends Claude Pro/Max subscription
|
|
65
|
+
- Supports OAuth flow or manual API key entry
|
|
66
|
+
- Available via `/connect` command
|
|
67
|
+
|
|
68
|
+
```json
|
|
69
|
+
{
|
|
70
|
+
"provider": {
|
|
71
|
+
"anthropic": {
|
|
72
|
+
"options": {
|
|
73
|
+
"apiKey": "{env:ANTHROPIC_API_KEY}"
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### Azure OpenAI
|
|
81
|
+
|
|
82
|
+
- Requires resource creation and model deployment
|
|
83
|
+
- Deployment names must match model names
|
|
84
|
+
- Set `AZURE_RESOURCE_NAME` environment variable
|
|
85
|
+
|
|
86
|
+
**Note:** "I'm sorry" errors may indicate content filter issues—switch from DefaultV2 to Default.
|
|
87
|
+
|
|
88
|
+
```json
|
|
89
|
+
{
|
|
90
|
+
"provider": {
|
|
91
|
+
"azure-openai": {
|
|
92
|
+
"options": {
|
|
93
|
+
"resourceName": "{env:AZURE_RESOURCE_NAME}",
|
|
94
|
+
"apiKey": "{env:AZURE_OPENAI_API_KEY}"
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
### Google Vertex AI
|
|
102
|
+
|
|
103
|
+
- Requires Google Cloud project with Vertex AI API enabled
|
|
104
|
+
- Key environment variables: `GOOGLE_CLOUD_PROJECT`, `VERTEX_LOCATION`
|
|
105
|
+
- Supports service account authentication
|
|
106
|
+
- "Global" region recommended for availability
|
|
107
|
+
|
|
108
|
+
```json
|
|
109
|
+
{
|
|
110
|
+
"provider": {
|
|
111
|
+
"google-vertex": {
|
|
112
|
+
"options": {
|
|
113
|
+
"project": "{env:GOOGLE_CLOUD_PROJECT}",
|
|
114
|
+
"location": "us-central1"
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
### Local Models (Ollama, LM Studio, llama.cpp)
|
|
122
|
+
|
|
123
|
+
Custom provider configuration example:
|
|
124
|
+
|
|
125
|
+
```json
|
|
126
|
+
{
|
|
127
|
+
"$schema": "https://opencode.ai/config.json",
|
|
128
|
+
"provider": {
|
|
129
|
+
"ollama": {
|
|
130
|
+
"npm": "@ai-sdk/openai-compatible",
|
|
131
|
+
"name": "Ollama (local)",
|
|
132
|
+
"options": {
|
|
133
|
+
"baseURL": "http://localhost:11434/v1"
|
|
134
|
+
},
|
|
135
|
+
"models": {
|
|
136
|
+
"llama2": {
|
|
137
|
+
"name": "Llama 2"
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
### Helicone
|
|
146
|
+
|
|
147
|
+
Observability platform supporting 17+ providers with automatic routing. Optional custom configuration:
|
|
148
|
+
|
|
149
|
+
```json
|
|
150
|
+
{
|
|
151
|
+
"$schema": "https://opencode.ai/config.json",
|
|
152
|
+
"provider": {
|
|
153
|
+
"helicone": {
|
|
154
|
+
"npm": "@ai-sdk/openai-compatible",
|
|
155
|
+
"name": "Helicone",
|
|
156
|
+
"options": {
|
|
157
|
+
"baseURL": "https://ai-gateway.helicone.ai",
|
|
158
|
+
"headers": {
|
|
159
|
+
"Helicone-Cache-Enabled": "true",
|
|
160
|
+
"Helicone-User-Id": "opencode"
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
Common headers include:
|
|
169
|
+
- `Helicone-Cache-Enabled`
|
|
170
|
+
- `Helicone-User-Id`
|
|
171
|
+
- `Helicone-Property-[Name]`
|
|
172
|
+
- `Helicone-Prompt-Id`
|
|
173
|
+
- `Helicone-Session-Id`
|
|
174
|
+
|
|
175
|
+
### OpenRouter & ZenMux
|
|
176
|
+
|
|
177
|
+
Support custom model additions via config:
|
|
178
|
+
|
|
179
|
+
```json
|
|
180
|
+
{
|
|
181
|
+
"$schema": "https://opencode.ai/config.json",
|
|
182
|
+
"provider": {
|
|
183
|
+
"openrouter": {
|
|
184
|
+
"models": {
|
|
185
|
+
"somecoolnewmodel": {}
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
OpenRouter supports provider routing:
|
|
193
|
+
|
|
194
|
+
```json
|
|
195
|
+
{
|
|
196
|
+
"provider": {
|
|
197
|
+
"openrouter": {
|
|
198
|
+
"models": {
|
|
199
|
+
"anthropic/claude-sonnet-4": {
|
|
200
|
+
"options": {
|
|
201
|
+
"order": ["baseten"],
|
|
202
|
+
"allow_fallbacks": false
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
### Vercel AI Gateway
|
|
212
|
+
|
|
213
|
+
```json
|
|
214
|
+
{
|
|
215
|
+
"provider": {
|
|
216
|
+
"vercel": {
|
|
217
|
+
"models": {
|
|
218
|
+
"anthropic/claude-sonnet-4": {
|
|
219
|
+
"options": {
|
|
220
|
+
"order": ["anthropic", "vertex"]
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
Routing options: `order`, `only`, `zeroDataRetention`.
|
|
230
|
+
|
|
231
|
+
## Custom Provider (OpenAI-Compatible)
|
|
232
|
+
|
|
233
|
+
1. Run `/connect` and select "Other"
|
|
234
|
+
2. Enter unique provider ID
|
|
235
|
+
3. Enter API key
|
|
236
|
+
4. Configure in `opencode.json`:
|
|
237
|
+
|
|
238
|
+
```json
|
|
239
|
+
{
|
|
240
|
+
"$schema": "https://opencode.ai/config.json",
|
|
241
|
+
"provider": {
|
|
242
|
+
"myprovider": {
|
|
243
|
+
"npm": "@ai-sdk/openai-compatible",
|
|
244
|
+
"name": "Display Name",
|
|
245
|
+
"options": {
|
|
246
|
+
"baseURL": "https://api.myprovider.com/v1",
|
|
247
|
+
"apiKey": "{env:CUSTOM_API_KEY}",
|
|
248
|
+
"headers": {
|
|
249
|
+
"Authorization": "Bearer token"
|
|
250
|
+
}
|
|
251
|
+
},
|
|
252
|
+
"models": {
|
|
253
|
+
"model-id": {
|
|
254
|
+
"name": "Display Name",
|
|
255
|
+
"limit": {
|
|
256
|
+
"context": 200000,
|
|
257
|
+
"output": 65536
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
Key options: `baseURL`, `apiKey`, `headers`, and model `limit` (context/output tokens).
|
|
267
|
+
|
|
268
|
+
## Additional Providers Listed
|
|
269
|
+
|
|
270
|
+
- Amazon Bedrock
|
|
271
|
+
- Anthropic
|
|
272
|
+
- Azure OpenAI
|
|
273
|
+
- Azure Cognitive Services
|
|
274
|
+
- Baseten
|
|
275
|
+
- Cerebras
|
|
276
|
+
- Cloudflare AI Gateway
|
|
277
|
+
- Cortecs
|
|
278
|
+
- DeepSeek
|
|
279
|
+
- Deep Infra
|
|
280
|
+
- Fireworks AI
|
|
281
|
+
- GitHub Copilot
|
|
282
|
+
- Google Vertex AI
|
|
283
|
+
- Groq
|
|
284
|
+
- Hugging Face
|
|
285
|
+
- Helicone
|
|
286
|
+
- llama.cpp
|
|
287
|
+
- IO.NET
|
|
288
|
+
- LM Studio
|
|
289
|
+
- Moonshot AI
|
|
290
|
+
- MiniMax
|
|
291
|
+
- Nebius Token Factory
|
|
292
|
+
- Ollama
|
|
293
|
+
- Ollama Cloud
|
|
294
|
+
- OpenAI
|
|
295
|
+
- OpenRouter
|
|
296
|
+
- SAP AI Core
|
|
297
|
+
- OVHcloud AI Endpoints
|
|
298
|
+
- Together AI
|
|
299
|
+
- Venice AI
|
|
300
|
+
- Vercel AI Gateway
|
|
301
|
+
- xAI
|
|
302
|
+
- Z.AI
|
|
303
|
+
- ZenMux
|
|
304
|
+
|
|
305
|
+
## Troubleshooting
|
|
306
|
+
|
|
307
|
+
- Verify credentials: `opencode auth list`
|
|
308
|
+
- Confirm provider ID matches across `/connect` and config
|
|
309
|
+
- Validate npm package (use provider-specific or `@ai-sdk/openai-compatible`)
|
|
310
|
+
- Check `baseURL` correctness
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
---
|
|
2
|
+
source: https://opencode.ai/docs/troubleshooting/
|
|
3
|
+
fetched: 2026-01-08
|
|
4
|
+
title: Troubleshooting
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# OpenCode Troubleshooting Guide
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
|
|
11
|
+
OpenCode provides debugging tools through logs and local storage to help resolve issues.
|
|
12
|
+
|
|
13
|
+
## Logs Location
|
|
14
|
+
|
|
15
|
+
Log files are stored at:
|
|
16
|
+
|
|
17
|
+
| Platform | Path |
|
|
18
|
+
|----------|------|
|
|
19
|
+
| macOS/Linux | `~/.local/share/opencode/log/` |
|
|
20
|
+
| Windows | `%USERPROFILE%\.local\share\opencode\log\` |
|
|
21
|
+
|
|
22
|
+
Files use timestamp naming (e.g., `2025-01-09T123456.log`) with the 10 most recent retained.
|
|
23
|
+
|
|
24
|
+
### Enable Detailed Logging
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
opencode --log-level DEBUG
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## Storage Location
|
|
31
|
+
|
|
32
|
+
Application data resides at:
|
|
33
|
+
|
|
34
|
+
| Platform | Path |
|
|
35
|
+
|----------|------|
|
|
36
|
+
| macOS/Linux | `~/.local/share/opencode/` |
|
|
37
|
+
| Windows | `%USERPROFILE%\.local\share\opencode` |
|
|
38
|
+
|
|
39
|
+
### Contents
|
|
40
|
+
|
|
41
|
+
- `auth.json` - API keys and OAuth tokens
|
|
42
|
+
- `log/` - Application logs
|
|
43
|
+
- `project/` - Session and message data
|
|
44
|
+
- `./<project-slug>/storage/` for Git repos
|
|
45
|
+
- `./global/storage/` otherwise
|
|
46
|
+
|
|
47
|
+
## Getting Help
|
|
48
|
+
|
|
49
|
+
### GitHub Issues
|
|
50
|
+
|
|
51
|
+
Report bugs at github.com/anomalyco/opencode/issues
|
|
52
|
+
|
|
53
|
+
### Discord Community
|
|
54
|
+
|
|
55
|
+
Real-time assistance available at opencode.ai/discord
|
|
56
|
+
|
|
57
|
+
## Common Issues & Solutions
|
|
58
|
+
|
|
59
|
+
### Won't Start
|
|
60
|
+
|
|
61
|
+
- Check logs
|
|
62
|
+
- Run with `--print-logs`
|
|
63
|
+
- Verify latest version via `opencode upgrade`
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
opencode --print-logs
|
|
67
|
+
opencode upgrade
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Authentication Problems
|
|
71
|
+
|
|
72
|
+
- Use `/connect` command in TUI
|
|
73
|
+
- Validate API keys
|
|
74
|
+
- Confirm network access to provider APIs
|
|
75
|
+
|
|
76
|
+
### Model Unavailable
|
|
77
|
+
|
|
78
|
+
- Confirm provider authentication
|
|
79
|
+
- Verify correct model naming format (`<providerId>/<modelId>`)
|
|
80
|
+
- Use `opencode models` command to check access
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
opencode models
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
### ProviderInitError
|
|
87
|
+
|
|
88
|
+
- Verify provider setup
|
|
89
|
+
- Clear configuration via `rm -rf ~/.local/share/opencode`
|
|
90
|
+
- Re-authenticate
|
|
91
|
+
|
|
92
|
+
```bash
|
|
93
|
+
rm -rf ~/.local/share/opencode
|
|
94
|
+
opencode
|
|
95
|
+
/connect
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
### API Call Errors
|
|
99
|
+
|
|
100
|
+
- Clear provider cache with `rm -rf ~/.cache/opencode`
|
|
101
|
+
- Restart to reinstall latest packages
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
rm -rf ~/.cache/opencode
|
|
105
|
+
opencode
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### Linux Copy/Paste Issues
|
|
109
|
+
|
|
110
|
+
Install clipboard utilities based on your environment:
|
|
111
|
+
|
|
112
|
+
| Environment | Required Package |
|
|
113
|
+
|-------------|------------------|
|
|
114
|
+
| X11 | `xclip` or `xsel` |
|
|
115
|
+
| Wayland | `wl-clipboard` |
|
|
116
|
+
| Headless | `xvfb` |
|
|
117
|
+
|
|
118
|
+
```bash
|
|
119
|
+
# For X11
|
|
120
|
+
sudo apt install xclip
|
|
121
|
+
|
|
122
|
+
# For Wayland
|
|
123
|
+
sudo apt install wl-clipboard
|
|
124
|
+
```
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
---
|
|
2
|
+
source: https://opencode.ai/docs/ecosystem/
|
|
3
|
+
fetched: 2026-01-08
|
|
4
|
+
title: Ecosystem
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# OpenCode Ecosystem
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
|
|
11
|
+
This page showcases projects and integrations built with OpenCode. Community members can submit PRs to add projects.
|
|
12
|
+
|
|
13
|
+
## External Resources
|
|
14
|
+
|
|
15
|
+
- [awesome-opencode](https://github.com/awesome-opencode/awesome-opencode) - Curated list of OpenCode resources
|
|
16
|
+
- [opencode.cafe](https://opencode.cafe) - Community hub
|
|
17
|
+
|
|
18
|
+
## Plugins
|
|
19
|
+
|
|
20
|
+
Community-developed plugins extending OpenCode functionality:
|
|
21
|
+
|
|
22
|
+
| Plugin | Description |
|
|
23
|
+
|--------|-------------|
|
|
24
|
+
| **opencode-helicone-session** | Automatically inject Helicone session headers for request grouping |
|
|
25
|
+
| **opencode-type-inject** | Auto-inject TypeScript/Svelte types into file reads with lookup tools |
|
|
26
|
+
| **opencode-openai-codex-auth** | Use your ChatGPT Plus/Pro subscription instead of API credits |
|
|
27
|
+
| **opencode-gemini-auth** | Use your existing Gemini plan instead of API billing |
|
|
28
|
+
| **opencode-antigravity-auth** | Use Antigravity's free models instead of API billing |
|
|
29
|
+
| **opencode-devcontainers** | Multi-branch devcontainer isolation with shallow clones and auto-assigned ports |
|
|
30
|
+
| **opencode-dynamic-context-pruning** | Optimize token usage by pruning obsolete tool outputs |
|
|
31
|
+
| **opencode-websearch-cited** | Add native websearch support for supported providers with Google grounded style |
|
|
32
|
+
| **opencode-pty** | Enables AI agents to run background processes in a PTY, send interactive input |
|
|
33
|
+
| **oh-my-opencode** | Background agents, pre-built LSP/AST/MCP tools, curated agents, Claude Code compatible |
|
|
34
|
+
| **opencode-supermemory** | Persistent memory across sessions using Supermemory |
|
|
35
|
+
| **opencode-scheduler** | Schedule recurring jobs using launchd (Mac) or systemd (Linux) with cron syntax |
|
|
36
|
+
|
|
37
|
+
## Projects
|
|
38
|
+
|
|
39
|
+
Community projects leveraging OpenCode:
|
|
40
|
+
|
|
41
|
+
| Project | Description |
|
|
42
|
+
|---------|-------------|
|
|
43
|
+
| **kimaki** | Discord bot to control OpenCode sessions, built on the SDK |
|
|
44
|
+
| **opencode.nvim** | Neovim plugin for editor-aware prompts |
|
|
45
|
+
| **opencode.nvim (variant)** | Terminal-based AI coding in Neovim |
|
|
46
|
+
| **portal** | Mobile-first web UI for OpenCode over Tailscale/VPN |
|
|
47
|
+
| **OpenChamber** | Web / Desktop App and VS Code Extension for OpenCode |
|
|
48
|
+
| **OpenCode-Obsidian** | Obsidian plugin that embeds OpenCode in Obsidian's UI |
|
|
49
|
+
|
|
50
|
+
## Agents
|
|
51
|
+
|
|
52
|
+
Agent frameworks and configurations:
|
|
53
|
+
|
|
54
|
+
| Agent | Description |
|
|
55
|
+
|-------|-------------|
|
|
56
|
+
| **Agentic** | Modular AI agents and commands for structured development |
|
|
57
|
+
| **opencode-agents** | Configs, prompts, agents, and plugins for enhanced workflows |
|
|
58
|
+
|
|
59
|
+
## Contributing
|
|
60
|
+
|
|
61
|
+
To add your project:
|
|
62
|
+
|
|
63
|
+
1. Fork the OpenCode repository
|
|
64
|
+
2. Add your project to the ecosystem page
|
|
65
|
+
3. Submit a pull request
|
|
66
|
+
|
|
67
|
+
Include:
|
|
68
|
+
- Project name
|
|
69
|
+
- Brief description
|
|
70
|
+
- Link to repository/website
|
|
71
|
+
|
|
72
|
+
## Community
|
|
73
|
+
|
|
74
|
+
- **GitHub**: Report issues and contribute
|
|
75
|
+
- **Discord**: Real-time community support
|
|
@@ -0,0 +1,218 @@
|
|
|
1
|
+
---
|
|
2
|
+
source: https://opencode.ai/docs/plugins/
|
|
3
|
+
fetched: 2026-01-08
|
|
4
|
+
title: Plugins
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# OpenCode Plugins Documentation
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
|
|
11
|
+
OpenCode enables extensibility through plugins - JavaScript/TypeScript modules that hook into various system events. Developers can create custom functionality by implementing event handlers and returning a hooks object from their plugin function.
|
|
12
|
+
|
|
13
|
+
## Loading Plugins
|
|
14
|
+
|
|
15
|
+
### Local Plugins
|
|
16
|
+
|
|
17
|
+
Reside in project-level or global directories and load automatically:
|
|
18
|
+
|
|
19
|
+
| Location | Scope |
|
|
20
|
+
|----------|-------|
|
|
21
|
+
| `.opencode/plugin/` | Project |
|
|
22
|
+
| `~/.config/opencode/plugin/` | Global |
|
|
23
|
+
|
|
24
|
+
### NPM Plugins
|
|
25
|
+
|
|
26
|
+
Specify in configuration:
|
|
27
|
+
|
|
28
|
+
```json
|
|
29
|
+
{
|
|
30
|
+
"$schema": "https://opencode.ai/config.json",
|
|
31
|
+
"plugin": [
|
|
32
|
+
"opencode-helicone-session",
|
|
33
|
+
"@my-org/custom-plugin"
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
Both scoped and unscoped packages work. The system installs dependencies via Bun and caches them in `~/.cache/opencode/node_modules/`.
|
|
39
|
+
|
|
40
|
+
## Plugin Structure
|
|
41
|
+
|
|
42
|
+
A basic plugin exports an async function receiving a context object:
|
|
43
|
+
|
|
44
|
+
```javascript
|
|
45
|
+
export const MyPlugin = async ({ project, client, $, directory, worktree }) => {
|
|
46
|
+
// Setup code here
|
|
47
|
+
|
|
48
|
+
return {
|
|
49
|
+
// Hook implementations
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
### Context Object
|
|
55
|
+
|
|
56
|
+
| Property | Description |
|
|
57
|
+
|----------|-------------|
|
|
58
|
+
| `project` | Project metadata |
|
|
59
|
+
| `client` | SDK client instance |
|
|
60
|
+
| `$` | Bun's shell API |
|
|
61
|
+
| `directory` | Plugin directory path |
|
|
62
|
+
| `worktree` | Git worktree path |
|
|
63
|
+
|
|
64
|
+
## Custom Tools
|
|
65
|
+
|
|
66
|
+
Extend OpenCode's functionality using the `@opencode-ai/plugin` package:
|
|
67
|
+
|
|
68
|
+
```typescript
|
|
69
|
+
import { tool } from "@opencode-ai/plugin"
|
|
70
|
+
|
|
71
|
+
export default tool({
|
|
72
|
+
description: "Custom tool description",
|
|
73
|
+
args: {
|
|
74
|
+
input: tool.schema.string().describe("Input parameter"),
|
|
75
|
+
},
|
|
76
|
+
async execute(args) {
|
|
77
|
+
return `Result: ${args.input}`
|
|
78
|
+
},
|
|
79
|
+
})
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Event Subscriptions
|
|
83
|
+
|
|
84
|
+
React to various system events:
|
|
85
|
+
|
|
86
|
+
```javascript
|
|
87
|
+
export const MyPlugin = async (ctx) => {
|
|
88
|
+
return {
|
|
89
|
+
"session.created": async (event) => {
|
|
90
|
+
console.log("Session created:", event.session.id)
|
|
91
|
+
},
|
|
92
|
+
"file.written": async (event) => {
|
|
93
|
+
console.log("File written:", event.path)
|
|
94
|
+
},
|
|
95
|
+
"tool.executing": async (event) => {
|
|
96
|
+
console.log("Tool executing:", event.tool)
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Available Events
|
|
103
|
+
|
|
104
|
+
| Event | Description |
|
|
105
|
+
|-------|-------------|
|
|
106
|
+
| `session.created` | Session created |
|
|
107
|
+
| `session.deleted` | Session deleted |
|
|
108
|
+
| `file.written` | File written |
|
|
109
|
+
| `file.deleted` | File deleted |
|
|
110
|
+
| `lsp.diagnostic` | LSP diagnostic received |
|
|
111
|
+
| `permission.requested` | Permission requested |
|
|
112
|
+
| `tool.executing` | Tool about to execute |
|
|
113
|
+
| `tool.executed` | Tool finished executing |
|
|
114
|
+
| `experimental.session.compacting` | Session compaction |
|
|
115
|
+
|
|
116
|
+
## Structured Logging
|
|
117
|
+
|
|
118
|
+
Use `client.app.log()` with severity levels:
|
|
119
|
+
|
|
120
|
+
```javascript
|
|
121
|
+
export const MyPlugin = async ({ client }) => {
|
|
122
|
+
await client.app.log({
|
|
123
|
+
level: "info",
|
|
124
|
+
message: "Plugin initialized"
|
|
125
|
+
})
|
|
126
|
+
|
|
127
|
+
await client.app.log({
|
|
128
|
+
level: "warn",
|
|
129
|
+
message: "Something might be wrong"
|
|
130
|
+
})
|
|
131
|
+
|
|
132
|
+
await client.app.log({
|
|
133
|
+
level: "error",
|
|
134
|
+
message: "Something went wrong"
|
|
135
|
+
})
|
|
136
|
+
|
|
137
|
+
return {}
|
|
138
|
+
}
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
**Important:** Use this instead of `console.log()` for proper log handling.
|
|
142
|
+
|
|
143
|
+
## Session Compaction Hooks
|
|
144
|
+
|
|
145
|
+
Inject domain-specific context before LLM-generated continuation summaries:
|
|
146
|
+
|
|
147
|
+
```javascript
|
|
148
|
+
export const MyPlugin = async (ctx) => {
|
|
149
|
+
return {
|
|
150
|
+
"experimental.session.compacting": async (event) => {
|
|
151
|
+
return {
|
|
152
|
+
context: "Important context to preserve during compaction"
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
## Dependencies
|
|
160
|
+
|
|
161
|
+
Local plugins requiring external packages need a `package.json` in the config directory:
|
|
162
|
+
|
|
163
|
+
```json
|
|
164
|
+
{
|
|
165
|
+
"dependencies": {
|
|
166
|
+
"axios": "^1.0.0",
|
|
167
|
+
"lodash": "^4.0.0"
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
OpenCode processes this automatically at startup.
|
|
173
|
+
|
|
174
|
+
## Full Example
|
|
175
|
+
|
|
176
|
+
```javascript
|
|
177
|
+
import { tool } from "@opencode-ai/plugin"
|
|
178
|
+
|
|
179
|
+
// Custom tool
|
|
180
|
+
const myTool = tool({
|
|
181
|
+
description: "Perform custom operation",
|
|
182
|
+
args: {
|
|
183
|
+
data: tool.schema.string().describe("Data to process"),
|
|
184
|
+
},
|
|
185
|
+
async execute(args) {
|
|
186
|
+
return `Processed: ${args.data}`
|
|
187
|
+
},
|
|
188
|
+
})
|
|
189
|
+
|
|
190
|
+
// Plugin with hooks
|
|
191
|
+
export const MyPlugin = async ({ client, project }) => {
|
|
192
|
+
// Initialize
|
|
193
|
+
await client.app.log({
|
|
194
|
+
level: "info",
|
|
195
|
+
message: `Plugin loaded for ${project.name}`
|
|
196
|
+
})
|
|
197
|
+
|
|
198
|
+
return {
|
|
199
|
+
"session.created": async (event) => {
|
|
200
|
+
await client.app.log({
|
|
201
|
+
level: "debug",
|
|
202
|
+
message: `New session: ${event.session.id}`
|
|
203
|
+
})
|
|
204
|
+
},
|
|
205
|
+
|
|
206
|
+
"tool.executed": async (event) => {
|
|
207
|
+
if (event.tool === "bash") {
|
|
208
|
+
await client.app.log({
|
|
209
|
+
level: "info",
|
|
210
|
+
message: `Bash command executed: ${event.input}`
|
|
211
|
+
})
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
export { myTool }
|
|
218
|
+
```
|