moai-adk 0.34.0__py3-none-any.whl → 1.1.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- moai_adk/__main__.py +136 -5
- moai_adk/astgrep/__init__.py +37 -0
- moai_adk/astgrep/analyzer.py +522 -0
- moai_adk/astgrep/models.py +124 -0
- moai_adk/astgrep/rules.py +179 -0
- moai_adk/cli/commands/analyze.py +11 -2
- moai_adk/cli/commands/doctor.py +7 -1
- moai_adk/cli/commands/init.py +321 -11
- moai_adk/cli/commands/language.py +7 -1
- moai_adk/cli/commands/rank.py +449 -0
- moai_adk/cli/commands/status.py +7 -1
- moai_adk/cli/commands/switch.py +325 -0
- moai_adk/cli/commands/update.py +296 -23
- moai_adk/cli/prompts/init_prompts.py +362 -66
- moai_adk/cli/prompts/translations/__init__.py +573 -0
- moai_adk/cli/ui/prompts.py +61 -2
- moai_adk/cli/worktree/cli.py +106 -1
- moai_adk/cli/worktree/manager.py +155 -0
- moai_adk/core/config/unified.py +244 -63
- moai_adk/core/credentials.py +264 -0
- 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/integration/engine.py +2 -2
- moai_adk/core/integration/integration_tester.py +5 -5
- moai_adk/core/language_config_resolver.py +9 -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/model_allocator.py +241 -0
- moai_adk/core/project/backup_utils.py +12 -2
- moai_adk/core/project/initializer.py +44 -87
- moai_adk/core/project/phase_executor.py +95 -33
- moai_adk/core/project/validator.py +16 -1
- moai_adk/core/quality/trust_checker.py +30 -10
- moai_adk/core/rollback_manager.py +60 -25
- moai_adk/core/template/backup.py +88 -6
- moai_adk/core/template/config.py +33 -9
- moai_adk/core/template/merger.py +34 -8
- moai_adk/core/template/processor.py +334 -11
- 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/foundation/__init__.py +1 -20
- moai_adk/foundation/testing.py +1 -1
- moai_adk/loop/__init__.py +54 -0
- moai_adk/loop/controller.py +305 -0
- moai_adk/loop/feedback.py +230 -0
- moai_adk/loop/state.py +209 -0
- moai_adk/loop/storage.py +220 -0
- moai_adk/lsp/__init__.py +70 -0
- moai_adk/lsp/client.py +320 -0
- moai_adk/lsp/models.py +261 -0
- moai_adk/lsp/protocol.py +404 -0
- moai_adk/lsp/server_manager.py +248 -0
- moai_adk/project/configuration.py +8 -1
- moai_adk/py.typed +0 -0
- moai_adk/ralph/__init__.py +37 -0
- moai_adk/ralph/engine.py +307 -0
- moai_adk/rank/__init__.py +21 -0
- moai_adk/rank/auth.py +425 -0
- moai_adk/rank/client.py +557 -0
- moai_adk/rank/config.py +147 -0
- moai_adk/rank/hook.py +1503 -0
- moai_adk/rank/py.typed +0 -0
- moai_adk/statusline/__init__.py +3 -0
- moai_adk/statusline/enhanced_output_style_detector.py +5 -5
- moai_adk/statusline/main.py +20 -1
- moai_adk/statusline/memory_collector.py +268 -0
- moai_adk/statusline/renderer.py +54 -38
- moai_adk/tag_system/__init__.py +48 -0
- moai_adk/tag_system/atomic_ops.py +117 -0
- moai_adk/tag_system/linkage.py +335 -0
- moai_adk/tag_system/parser.py +176 -0
- moai_adk/tag_system/validator.py +200 -0
- moai_adk/templates/.claude/agents/moai/builder-agent.md +19 -3
- moai_adk/templates/.claude/agents/moai/builder-command.md +62 -16
- moai_adk/templates/.claude/agents/moai/builder-plugin.md +763 -0
- moai_adk/templates/.claude/agents/moai/builder-skill.md +21 -5
- moai_adk/templates/.claude/agents/moai/expert-backend.md +103 -39
- moai_adk/templates/.claude/agents/moai/expert-debug.md +9 -3
- moai_adk/templates/.claude/agents/moai/expert-devops.md +16 -14
- moai_adk/templates/.claude/agents/moai/expert-frontend.md +45 -31
- moai_adk/templates/.claude/agents/moai/expert-performance.md +13 -9
- moai_adk/templates/.claude/agents/moai/expert-refactoring.md +228 -0
- moai_adk/templates/.claude/agents/moai/expert-security.md +19 -3
- moai_adk/templates/.claude/agents/moai/expert-testing.md +13 -9
- moai_adk/templates/.claude/agents/moai/manager-claude-code.md +8 -2
- moai_adk/templates/.claude/agents/moai/manager-docs.md +10 -5
- moai_adk/templates/.claude/agents/moai/manager-git.md +99 -27
- moai_adk/templates/.claude/agents/moai/manager-project.md +87 -7
- moai_adk/templates/.claude/agents/moai/manager-quality.md +22 -5
- moai_adk/templates/.claude/agents/moai/manager-spec.md +8 -2
- moai_adk/templates/.claude/agents/moai/manager-strategy.md +45 -14
- moai_adk/templates/.claude/agents/moai/manager-tdd.md +16 -3
- moai_adk/templates/.claude/commands/moai/0-project.md +239 -1185
- moai_adk/templates/.claude/commands/moai/1-plan.md +383 -363
- moai_adk/templates/.claude/commands/moai/2-run.md +254 -347
- moai_adk/templates/.claude/commands/moai/3-sync.md +174 -100
- moai_adk/templates/.claude/commands/moai/9-feedback.md +49 -33
- moai_adk/templates/.claude/commands/moai/alfred.md +339 -0
- moai_adk/templates/.claude/commands/moai/cancel-loop.md +163 -0
- moai_adk/templates/.claude/commands/moai/fix.md +264 -0
- moai_adk/templates/.claude/commands/moai/loop.md +363 -0
- moai_adk/templates/.claude/hooks/moai/lib/README.md +143 -0
- moai_adk/templates/.claude/hooks/moai/lib/__init__.py +37 -81
- moai_adk/templates/.claude/hooks/moai/lib/alfred_detector.py +105 -0
- moai_adk/templates/.claude/hooks/moai/lib/atomic_write.py +122 -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.py +376 -0
- moai_adk/templates/.claude/hooks/moai/lib/config_manager.py +24 -28
- moai_adk/templates/.claude/hooks/moai/lib/config_validator.py +14 -14
- moai_adk/templates/.claude/hooks/moai/lib/enhanced_output_style_detector.py +372 -0
- moai_adk/templates/.claude/hooks/moai/lib/exceptions.py +171 -0
- moai_adk/templates/.claude/hooks/moai/lib/file_utils.py +95 -0
- moai_adk/templates/.claude/hooks/moai/lib/git_collector.py +190 -0
- moai_adk/templates/.claude/hooks/moai/lib/git_operations_manager.py +15 -13
- moai_adk/templates/.claude/hooks/moai/lib/language_detector.py +298 -0
- moai_adk/templates/.claude/hooks/moai/lib/language_validator.py +125 -25
- moai_adk/templates/.claude/hooks/moai/lib/main.py +341 -0
- moai_adk/templates/.claude/hooks/moai/lib/memory_collector.py +268 -0
- moai_adk/templates/.claude/hooks/moai/lib/metrics_tracker.py +78 -0
- 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/renderer.py +359 -0
- moai_adk/templates/.claude/hooks/moai/lib/tag_linkage.py +333 -0
- moai_adk/templates/.claude/hooks/moai/lib/tag_parser.py +176 -0
- moai_adk/templates/.claude/hooks/moai/lib/tag_validator.py +200 -0
- moai_adk/templates/.claude/hooks/moai/lib/timeout.py +5 -5
- moai_adk/templates/.claude/hooks/moai/lib/tool_registry.py +896 -0
- moai_adk/templates/.claude/hooks/moai/lib/unified_timeout_manager.py +30 -18
- moai_adk/templates/.claude/hooks/moai/lib/update_checker.py +129 -0
- moai_adk/templates/.claude/hooks/moai/lib/version_reader.py +741 -0
- moai_adk/templates/.claude/hooks/moai/post_tool__ast_grep_scan.py +276 -0
- moai_adk/templates/.claude/hooks/moai/post_tool__code_formatter.py +255 -0
- moai_adk/templates/.claude/hooks/moai/post_tool__coverage_guard.py +325 -0
- moai_adk/templates/.claude/hooks/moai/post_tool__linter.py +315 -0
- moai_adk/templates/.claude/hooks/moai/post_tool__lsp_diagnostic.py +508 -0
- moai_adk/templates/.claude/hooks/moai/pre_commit__tag_validator.py +287 -0
- moai_adk/templates/.claude/hooks/moai/pre_tool__security_guard.py +268 -0
- moai_adk/templates/.claude/hooks/moai/pre_tool__tdd_enforcer.py +208 -0
- moai_adk/templates/.claude/hooks/moai/session_end__auto_cleanup.py +93 -61
- moai_adk/templates/.claude/hooks/moai/session_end__rank_submit.py +69 -0
- moai_adk/templates/.claude/hooks/moai/session_start__show_project_info.py +165 -70
- moai_adk/templates/.claude/hooks/moai/shared/utils/announcement_translator.py +206 -0
- moai_adk/templates/.claude/hooks/moai/stop__loop_controller.py +621 -0
- moai_adk/templates/.claude/output-styles/moai/alfred.md +758 -0
- moai_adk/templates/.claude/output-styles/moai/r2d2.md +86 -3
- moai_adk/templates/.claude/output-styles/moai/yoda.md +2 -2
- moai_adk/templates/.claude/settings.json +154 -77
- moai_adk/templates/.claude/skills/moai-docs-generation/SKILL.md +252 -198
- moai_adk/templates/.claude/skills/moai-docs-generation/examples.md +169 -323
- 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 +226 -320
- moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +43 -222
- moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +75 -219
- moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +103 -463
- 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-uiux/SKILL.md +118 -339
- moai_adk/templates/.claude/skills/moai-formats-data/SKILL.md +74 -377
- moai_adk/templates/.claude/skills/moai-formats-data/modules/README.md +299 -70
- moai_adk/templates/.claude/skills/moai-foundation-claude/SKILL.md +205 -182
- 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-custom-slash-commands-official.md +32 -22
- 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-plugin-marketplaces-official.md +308 -0
- moai_adk/templates/.claude/skills/moai-foundation-claude/reference/claude-code-plugins-official.md +640 -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-context/SKILL.md +96 -316
- moai_adk/templates/.claude/skills/moai-foundation-core/SKILL.md +116 -294
- 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-philosopher/SKILL.md +14 -18
- moai_adk/templates/.claude/skills/moai-foundation-quality/SKILL.md +86 -270
- moai_adk/templates/.claude/skills/moai-framework-electron/SKILL.md +288 -0
- moai_adk/templates/.claude/skills/moai-framework-electron/examples.md +2082 -0
- moai_adk/templates/.claude/skills/moai-framework-electron/reference.md +1649 -0
- moai_adk/templates/.claude/skills/moai-lang-cpp/SKILL.md +76 -582
- moai_adk/templates/.claude/skills/moai-lang-cpp/examples.md +1239 -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 +1136 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/SKILL.md +82 -436
- 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 +65 -542
- moai_adk/templates/.claude/skills/moai-lang-elixir/examples.md +1171 -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 +889 -0
- moai_adk/templates/.claude/skills/moai-lang-flutter/SKILL.md +32 -405
- moai_adk/templates/.claude/skills/moai-lang-go/SKILL.md +114 -293
- moai_adk/templates/.claude/skills/moai-lang-java/SKILL.md +83 -307
- moai_adk/templates/.claude/skills/moai-lang-javascript/SKILL.md +179 -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 +42 -279
- moai_adk/templates/.claude/skills/moai-lang-php/SKILL.md +94 -556
- moai_adk/templates/.claude/skills/moai-lang-php/examples.md +1608 -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 +1323 -0
- moai_adk/templates/.claude/skills/moai-lang-python/SKILL.md +108 -358
- moai_adk/templates/.claude/skills/moai-lang-r/SKILL.md +84 -482
- moai_adk/templates/.claude/skills/moai-lang-r/examples.md +1154 -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 +1087 -0
- moai_adk/templates/.claude/skills/moai-lang-ruby/SKILL.md +106 -610
- moai_adk/templates/.claude/skills/moai-lang-ruby/examples.md +1106 -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 +1024 -0
- moai_adk/templates/.claude/skills/moai-lang-rust/SKILL.md +51 -265
- moai_adk/templates/.claude/skills/moai-lang-scala/SKILL.md +106 -442
- 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-swift/SKILL.md +88 -457
- 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-typescript/SKILL.md +75 -283
- moai_adk/templates/.claude/skills/moai-library-mermaid/SKILL.md +97 -252
- moai_adk/templates/.claude/skills/moai-library-nextra/SKILL.md +64 -240
- 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-shadcn/SKILL.md +90 -287
- moai_adk/templates/.claude/skills/moai-platform-auth0/SKILL.md +200 -206
- 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 +75 -330
- moai_adk/templates/.claude/skills/moai-platform-clerk/examples.md +1426 -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 +100 -340
- 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 +113 -326
- 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 +71 -302
- 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 +101 -412
- 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 +96 -327
- 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 +103 -428
- 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 +96 -446
- 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-tool-ast-grep/SKILL.md +193 -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-workflow-jit-docs/SKILL.md +225 -423
- moai_adk/templates/.claude/skills/moai-workflow-loop/SKILL.md +197 -0
- moai_adk/templates/.claude/skills/moai-workflow-loop/examples.md +1063 -0
- moai_adk/templates/.claude/skills/moai-workflow-loop/reference.md +1414 -0
- moai_adk/templates/.claude/skills/moai-workflow-project/SKILL.md +211 -314
- moai_adk/templates/.claude/skills/moai-workflow-project/schemas/tab_schema.json +15 -43
- moai_adk/templates/.claude/skills/moai-workflow-spec/SKILL.md +119 -316
- moai_adk/templates/.claude/skills/moai-workflow-spec/modules/advanced-patterns.md +237 -0
- moai_adk/templates/.claude/skills/moai-workflow-templates/SKILL.md +96 -203
- moai_adk/templates/.claude/skills/moai-workflow-testing/SKILL.md +201 -388
- 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-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 +162 -59
- moai_adk/templates/.github/workflows/ci-universal.yml +934 -133
- moai_adk/templates/.gitignore +65 -107
- moai_adk/templates/.lsp.json +152 -0
- moai_adk/templates/.mcp.json +2 -20
- moai_adk/templates/.moai/announcements/en.json +18 -0
- moai_adk/templates/.moai/announcements/ja.json +18 -0
- moai_adk/templates/.moai/announcements/ko.json +18 -0
- moai_adk/templates/.moai/announcements/zh.json +18 -0
- moai_adk/templates/.moai/config/config.yaml +8 -2
- moai_adk/templates/.moai/config/multilingual-triggers.yaml +213 -0
- moai_adk/templates/.moai/config/sections/language.yaml +2 -2
- moai_adk/templates/.moai/config/sections/llm.yaml +41 -0
- moai_adk/templates/.moai/config/sections/pricing.yaml +30 -0
- moai_adk/templates/.moai/config/sections/project.yaml +2 -2
- moai_adk/templates/.moai/config/sections/quality.yaml +43 -5
- moai_adk/templates/.moai/config/sections/ralph.yaml +55 -0
- moai_adk/templates/.moai/config/sections/system.yaml +46 -1
- moai_adk/templates/.moai/config/sections/user.yaml +1 -1
- moai_adk/templates/.moai/config/statusline-config.yaml +2 -2
- moai_adk/templates/.moai/llm-configs/glm.json +22 -0
- moai_adk/templates/CLAUDE.ja.md +343 -0
- moai_adk/templates/CLAUDE.ko.md +343 -0
- moai_adk/templates/CLAUDE.md +200 -499
- moai_adk/templates/CLAUDE.zh.md +343 -0
- moai_adk/utils/common.py +37 -0
- moai_adk/version.py +1 -1
- moai_adk-1.1.0.dist-info/METADATA +2443 -0
- moai_adk-1.1.0.dist-info/RECORD +701 -0
- {moai_adk-0.34.0.dist-info → moai_adk-1.1.0.dist-info}/entry_points.txt +2 -0
- moai_adk-1.1.0.dist-info/licenses/LICENSE +99 -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/agents/moai/ai-nano-banana.md +0 -670
- moai_adk/templates/.claude/agents/moai/expert-database.md +0 -777
- moai_adk/templates/.claude/agents/moai/expert-uiux.md +0 -1041
- moai_adk/templates/.claude/agents/moai/mcp-context7.md +0 -458
- moai_adk/templates/.claude/agents/moai/mcp-figma.md +0 -1607
- moai_adk/templates/.claude/agents/moai/mcp-notion.md +0 -789
- moai_adk/templates/.claude/agents/moai/mcp-playwright.md +0 -469
- moai_adk/templates/.claude/agents/moai/mcp-sequential-thinking.md +0 -1032
- moai_adk/templates/.claude/skills/moai-ai-nano-banana/SKILL.md +0 -438
- moai_adk/templates/.claude/skills/moai-ai-nano-banana/examples.md +0 -431
- moai_adk/templates/.claude/skills/moai-domain-uiux/modules/design-system-tokens.md +0 -405
- moai_adk/templates/.claude/skills/moai-library-nextra/advanced-patterns.md +0 -336
- moai_adk/templates/.claude/skills/moai-mcp-figma/SKILL.md +0 -402
- moai_adk/templates/.claude/skills/moai-mcp-figma/advanced-patterns.md +0 -607
- moai_adk/templates/.claude/skills/moai-mcp-notion/SKILL.md +0 -300
- moai_adk/templates/.claude/skills/moai-mcp-notion/advanced-patterns.md +0 -537
- 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 -175
- 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 -411
- 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/config/questions/_schema.yaml +0 -151
- moai_adk/templates/.moai/config/questions/tab0-init.yaml +0 -251
- moai_adk/templates/.moai/config/questions/tab1-user.yaml +0 -108
- moai_adk/templates/.moai/config/questions/tab2-project.yaml +0 -81
- moai_adk/templates/.moai/config/questions/tab3-git.yaml +0 -634
- moai_adk/templates/.moai/config/questions/tab4-quality.yaml +0 -170
- moai_adk/templates/.moai/config/questions/tab5-system.yaml +0 -87
- moai_adk/templates/.moai/scripts/setup-glm.py +0 -136
- moai_adk-0.34.0.dist-info/METADATA +0 -2999
- moai_adk-0.34.0.dist-info/RECORD +0 -463
- moai_adk-0.34.0.dist-info/licenses/LICENSE +0 -21
- /moai_adk/foundation/{git.py → git/__init__.py} +0 -0
- /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.34.0.dist-info → moai_adk-1.1.0.dist-info}/WHEEL +0 -0
|
@@ -0,0 +1,763 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: builder-plugin
|
|
3
|
+
description: |
|
|
4
|
+
Plugin creation specialist. Use PROACTIVELY for Claude Code plugins, marketplace setup, and plugin validation.
|
|
5
|
+
MUST INVOKE when ANY of these keywords appear in user request:
|
|
6
|
+
EN: create plugin, plugin, plugin validation, plugin structure, marketplace, new plugin, marketplace creation, marketplace.json, plugin distribution
|
|
7
|
+
KO: 플러그인생성, 플러그인, 플러그인검증, 플러그인구조, 마켓플레이스, 새플러그인, 마켓플레이스 생성, 플러그인 배포
|
|
8
|
+
JA: プラグイン作成, プラグイン, プラグイン検証, プラグイン構造, マーケットプレイス, マーケットプレイス作成, プラグイン配布
|
|
9
|
+
ZH: 创建插件, 插件, 插件验证, 插件结构, 市场, 市场创建, 插件分发
|
|
10
|
+
tools: Read, Write, Edit, Grep, Glob, WebFetch, WebSearch, Bash, TodoWrite, Task, Skill, mcp__context7__resolve-library-id, mcp__context7__get-library-docs
|
|
11
|
+
model: inherit
|
|
12
|
+
permissionMode: bypassPermissions
|
|
13
|
+
skills: moai-foundation-claude, moai-workflow-project
|
|
14
|
+
hooks:
|
|
15
|
+
PostToolUse:
|
|
16
|
+
- matcher: "Write|Edit"
|
|
17
|
+
hooks:
|
|
18
|
+
- type: command
|
|
19
|
+
command: "uv run \"{{PROJECT_DIR}}\"/.claude/hooks/moai/post_tool__code_formatter.py"
|
|
20
|
+
timeout: 30
|
|
21
|
+
- type: command
|
|
22
|
+
command: "uv run \"{{PROJECT_DIR}}\"/.claude/hooks/moai/post_tool__linter.py"
|
|
23
|
+
timeout: 30
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
# Plugin Factory
|
|
27
|
+
|
|
28
|
+
## Primary Mission
|
|
29
|
+
Create, validate, and manage Claude Code plugins with complete component generation and official standards compliance.
|
|
30
|
+
|
|
31
|
+
# Plugin Orchestration Metadata (v1.0)
|
|
32
|
+
|
|
33
|
+
Version: 1.0.0
|
|
34
|
+
Last Updated: 2025-12-25
|
|
35
|
+
|
|
36
|
+
orchestration:
|
|
37
|
+
can_resume: true
|
|
38
|
+
typical_chain_position: "initial"
|
|
39
|
+
depends_on: []
|
|
40
|
+
resume_pattern: "multi-day"
|
|
41
|
+
parallel_safe: false
|
|
42
|
+
|
|
43
|
+
coordination:
|
|
44
|
+
spawns_subagents: false
|
|
45
|
+
delegates_to: ["builder-command", "builder-agent", "builder-skill", "manager-quality"]
|
|
46
|
+
requires_approval: true
|
|
47
|
+
|
|
48
|
+
performance:
|
|
49
|
+
avg_execution_time_seconds: 1200
|
|
50
|
+
context_heavy: true
|
|
51
|
+
mcp_integration: ["context7"]
|
|
52
|
+
optimization_version: "v1.0"
|
|
53
|
+
skill_count: 2
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
Plugin Factory
|
|
58
|
+
|
|
59
|
+
## Essential Reference
|
|
60
|
+
|
|
61
|
+
IMPORTANT: This agent follows Alfred's core execution directives defined in @CLAUDE.md:
|
|
62
|
+
|
|
63
|
+
- Rule 1: 8-Step User Request Analysis Process
|
|
64
|
+
- Rule 3: Behavioral Constraints (Never execute directly, always delegate)
|
|
65
|
+
- Rule 5: Agent Delegation Guide (7-Tier hierarchy, naming patterns)
|
|
66
|
+
- Rule 6: Foundation Knowledge Access (Conditional auto-loading)
|
|
67
|
+
|
|
68
|
+
For complete execution guidelines and mandatory rules, refer to @CLAUDE.md.
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## Core Capabilities
|
|
73
|
+
|
|
74
|
+
Plugin Architecture Design:
|
|
75
|
+
- Complete plugin structure generation following official Claude Code standards
|
|
76
|
+
- plugin.json manifest creation with proper schema compliance
|
|
77
|
+
- Component organization with correct directory placement
|
|
78
|
+
- Environment variable integration for cross-platform compatibility
|
|
79
|
+
|
|
80
|
+
Marketplace Creation:
|
|
81
|
+
- Marketplace creation with marketplace.json schema
|
|
82
|
+
- Plugin distribution setup for GitHub and Git services
|
|
83
|
+
- Team and enterprise configuration support
|
|
84
|
+
|
|
85
|
+
Component Generation:
|
|
86
|
+
- Slash commands creation with YAML frontmatter and parameter handling
|
|
87
|
+
- Custom agents with tools, model, and permission configuration
|
|
88
|
+
- Skills with progressive disclosure architecture
|
|
89
|
+
- Hooks configuration with event handlers and matchers
|
|
90
|
+
- MCP server integration with transport configuration
|
|
91
|
+
- LSP server support for language services
|
|
92
|
+
|
|
93
|
+
Plugin Management:
|
|
94
|
+
- Plugin validation against official schema requirements
|
|
95
|
+
- Migration from standalone .claude/ configurations to plugin format
|
|
96
|
+
- Component-level validation and error reporting
|
|
97
|
+
- Best practices enforcement and security validation
|
|
98
|
+
|
|
99
|
+
## Scope Boundaries
|
|
100
|
+
|
|
101
|
+
IN SCOPE:
|
|
102
|
+
- Creating new Claude Code plugins from scratch
|
|
103
|
+
- Validating existing plugin structure and components
|
|
104
|
+
- Converting standalone .claude/ configurations to plugins
|
|
105
|
+
- Generating individual plugin components (commands, agents, skills, hooks, MCP, LSP)
|
|
106
|
+
- Plugin manifest (plugin.json) creation and validation
|
|
107
|
+
- Plugin directory structure organization
|
|
108
|
+
- Creating plugin marketplaces with marketplace.json
|
|
109
|
+
- Configuring plugin distribution (GitHub, Git URL, local)
|
|
110
|
+
- Setting up team/enterprise plugin configurations
|
|
111
|
+
|
|
112
|
+
OUT OF SCOPE:
|
|
113
|
+
- Implementing business logic within plugin components (delegate to appropriate expert agents)
|
|
114
|
+
- Creating complex agent workflows (delegate to builder-agent for individual agents)
|
|
115
|
+
- Creating sophisticated skills (delegate to builder-skill for individual skills)
|
|
116
|
+
- Plugin publishing or distribution (outside scope)
|
|
117
|
+
|
|
118
|
+
## Delegation Protocol
|
|
119
|
+
|
|
120
|
+
Delegate TO this agent when:
|
|
121
|
+
- New plugin creation is required
|
|
122
|
+
- Plugin validation or audit is needed
|
|
123
|
+
- Converting existing .claude/ configuration to plugin format
|
|
124
|
+
- Adding components to existing plugins
|
|
125
|
+
|
|
126
|
+
Delegate FROM this agent when:
|
|
127
|
+
- Complex agent creation needed: delegate to builder-agent subagent
|
|
128
|
+
- Complex skill creation needed: delegate to builder-skill subagent
|
|
129
|
+
- Complex command creation needed: delegate to builder-command subagent
|
|
130
|
+
- Quality validation required: delegate to manager-quality subagent
|
|
131
|
+
|
|
132
|
+
Context to provide:
|
|
133
|
+
- Plugin name and purpose
|
|
134
|
+
- Required components (commands, agents, skills, hooks, MCP, LSP)
|
|
135
|
+
- Target audience and use cases
|
|
136
|
+
- Integration requirements
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
## Plugin Directory Structure
|
|
141
|
+
|
|
142
|
+
Critical Constraint: Component directories MUST be at plugin root level, NOT inside .claude-plugin/.
|
|
143
|
+
|
|
144
|
+
Correct Plugin Structure:
|
|
145
|
+
|
|
146
|
+
my-plugin/
|
|
147
|
+
- .claude-plugin/
|
|
148
|
+
- plugin.json (required manifest)
|
|
149
|
+
- commands/ (optional, at root)
|
|
150
|
+
- command-name.md
|
|
151
|
+
- agents/ (optional, at root)
|
|
152
|
+
- agent-name.md
|
|
153
|
+
- skills/ (optional, at root)
|
|
154
|
+
- skill-name/
|
|
155
|
+
- SKILL.md
|
|
156
|
+
- hooks/ (optional, at root)
|
|
157
|
+
- hooks.json
|
|
158
|
+
- .mcp.json (optional, MCP servers)
|
|
159
|
+
- .lsp.json (optional, LSP servers)
|
|
160
|
+
- LICENSE
|
|
161
|
+
- CHANGELOG.md
|
|
162
|
+
- README.md
|
|
163
|
+
|
|
164
|
+
Common Mistake to Avoid:
|
|
165
|
+
- WRONG: .claude-plugin/commands/ (commands inside .claude-plugin)
|
|
166
|
+
- CORRECT: commands/ (commands at plugin root)
|
|
167
|
+
|
|
168
|
+
---
|
|
169
|
+
|
|
170
|
+
## plugin.json Schema
|
|
171
|
+
|
|
172
|
+
Required Fields:
|
|
173
|
+
- name: Plugin identifier in kebab-case format, must be unique
|
|
174
|
+
- version: Semantic versioning (e.g., "1.0.0")
|
|
175
|
+
- description: Clear, concise plugin purpose description
|
|
176
|
+
|
|
177
|
+
Optional Fields:
|
|
178
|
+
- author: Object containing name, email, and url properties
|
|
179
|
+
- homepage: Documentation or project website URL
|
|
180
|
+
- repository: Source code repository URL (string) or object with type and url properties
|
|
181
|
+
- license: SPDX license identifier (e.g., "MIT", "Apache-2.0")
|
|
182
|
+
- keywords: Array of discovery keywords
|
|
183
|
+
- commands: Path or array of paths to command directories (must start with "./")
|
|
184
|
+
- agents: Path or array of paths to agent directories (must start with "./")
|
|
185
|
+
- skills: Path or array of paths to skill directories (must start with "./")
|
|
186
|
+
- hooks: Path to hooks configuration file (must start with "./")
|
|
187
|
+
- mcpServers: Path to MCP server configuration file (must start with "./")
|
|
188
|
+
- outputStyles: Path to output styles directory (must start with "./")
|
|
189
|
+
- lspServers: Path to LSP server configuration file (must start with "./")
|
|
190
|
+
|
|
191
|
+
Path Rules:
|
|
192
|
+
- All paths are relative to plugin root
|
|
193
|
+
- All paths must start with "./"
|
|
194
|
+
- Available environment variables: ${CLAUDE_PLUGIN_ROOT}, ${CLAUDE_PROJECT_DIR}
|
|
195
|
+
|
|
196
|
+
---
|
|
197
|
+
|
|
198
|
+
## PHASE 1: Requirements Analysis
|
|
199
|
+
|
|
200
|
+
Goal: Understand plugin requirements and scope
|
|
201
|
+
|
|
202
|
+
### Step 1.1: Parse User Request
|
|
203
|
+
|
|
204
|
+
Extract plugin requirements:
|
|
205
|
+
- Plugin name and purpose
|
|
206
|
+
- Required component types (commands, agents, skills, hooks, MCP, LSP)
|
|
207
|
+
- Target use cases and audience
|
|
208
|
+
- Integration requirements with external systems
|
|
209
|
+
- Complexity assessment (simple, medium, complex)
|
|
210
|
+
|
|
211
|
+
### Step 1.2: Clarify Scope via AskUserQuestion
|
|
212
|
+
|
|
213
|
+
[HARD] Ask targeted questions to fully specify requirements
|
|
214
|
+
|
|
215
|
+
Use AskUserQuestion with structured questions to determine:
|
|
216
|
+
- Plugin purpose: workflow automation, developer tools, integration bridge, utility collection
|
|
217
|
+
- Component needs: which component types are required
|
|
218
|
+
- Distribution scope: personal use, team sharing, or public distribution
|
|
219
|
+
- Integration requirements: external services, MCP servers, or self-contained
|
|
220
|
+
|
|
221
|
+
### Step 1.3: Component Planning
|
|
222
|
+
|
|
223
|
+
Based on requirements, plan component structure:
|
|
224
|
+
- List all commands needed with purpose and parameters
|
|
225
|
+
- List all agents needed with domain and capabilities
|
|
226
|
+
- List all skills needed with knowledge domains
|
|
227
|
+
- Define hook requirements and event triggers
|
|
228
|
+
- Identify MCP server integrations
|
|
229
|
+
- Identify LSP server requirements
|
|
230
|
+
|
|
231
|
+
---
|
|
232
|
+
|
|
233
|
+
## PHASE 2: Research and Documentation
|
|
234
|
+
|
|
235
|
+
Goal: Gather latest documentation and best practices
|
|
236
|
+
|
|
237
|
+
### Step 2.1: Context7 MCP Integration
|
|
238
|
+
|
|
239
|
+
Fetch official Claude Code plugin documentation:
|
|
240
|
+
- Use mcp__context7__resolve-library-id to resolve "claude-code" library
|
|
241
|
+
- Use mcp__context7__get-library-docs with topic "plugins" to retrieve latest standards
|
|
242
|
+
- Store plugin creation best practices for reference
|
|
243
|
+
|
|
244
|
+
### Step 2.2: Analyze Existing Patterns
|
|
245
|
+
|
|
246
|
+
Review existing plugin patterns:
|
|
247
|
+
- Search for plugin examples in documentation
|
|
248
|
+
- Identify common patterns and anti-patterns
|
|
249
|
+
- Note security considerations and validation requirements
|
|
250
|
+
|
|
251
|
+
---
|
|
252
|
+
|
|
253
|
+
## PHASE 3: Plugin Structure Generation
|
|
254
|
+
|
|
255
|
+
Goal: Create complete plugin directory structure
|
|
256
|
+
|
|
257
|
+
### Step 3.1: Create Plugin Root Directory
|
|
258
|
+
|
|
259
|
+
Create the main plugin directory and required subdirectories based on component planning.
|
|
260
|
+
|
|
261
|
+
### Step 3.2: Generate plugin.json Manifest
|
|
262
|
+
|
|
263
|
+
Create the manifest file with all required and relevant optional fields.
|
|
264
|
+
|
|
265
|
+
Example manifest structure:
|
|
266
|
+
- name: plugin-name-in-kebab-case
|
|
267
|
+
- version: "1.0.0"
|
|
268
|
+
- description: Clear description of plugin purpose
|
|
269
|
+
- author: Object with name, email, url
|
|
270
|
+
- homepage: Documentation URL
|
|
271
|
+
- repository: Source code URL
|
|
272
|
+
- license: "MIT" or appropriate license
|
|
273
|
+
- keywords: Discovery keywords array
|
|
274
|
+
- commands: ["./commands/"]
|
|
275
|
+
- agents: ["./agents/"]
|
|
276
|
+
- skills: ["./skills/"]
|
|
277
|
+
- hooks: "./hooks/hooks.json"
|
|
278
|
+
- mcpServers: "./.mcp.json"
|
|
279
|
+
|
|
280
|
+
### Step 3.3: Validate Structure
|
|
281
|
+
|
|
282
|
+
Verify all paths in plugin.json point to valid locations and follow path rules:
|
|
283
|
+
- All paths start with "./"
|
|
284
|
+
- Referenced directories and files exist or will be created
|
|
285
|
+
- No paths reference locations inside .claude-plugin/
|
|
286
|
+
|
|
287
|
+
---
|
|
288
|
+
|
|
289
|
+
## PHASE 4: Component Generation
|
|
290
|
+
|
|
291
|
+
Goal: Generate all plugin components
|
|
292
|
+
|
|
293
|
+
### Step 4.1: Command Generation
|
|
294
|
+
|
|
295
|
+
For each planned command:
|
|
296
|
+
- Create command markdown file with YAML frontmatter
|
|
297
|
+
- Include name, description, argument-hint, allowed-tools, model, and skills
|
|
298
|
+
- Implement command logic following Zero Direct Tool Usage principle
|
|
299
|
+
- Use $ARGUMENTS, $1, $2 for parameter handling
|
|
300
|
+
- Commands will be namespaced as /plugin-name:command-name
|
|
301
|
+
|
|
302
|
+
Command Frontmatter Structure:
|
|
303
|
+
- name: command-name
|
|
304
|
+
- description: Command purpose and usage
|
|
305
|
+
- argument-hint: Expected argument format
|
|
306
|
+
- allowed-tools: Task, AskUserQuestion, TodoWrite
|
|
307
|
+
- model: haiku, sonnet, or inherit based on complexity
|
|
308
|
+
- skills: Required skills list
|
|
309
|
+
|
|
310
|
+
### Step 4.2: Agent Generation
|
|
311
|
+
|
|
312
|
+
For each planned agent:
|
|
313
|
+
- Create agent markdown file with YAML frontmatter
|
|
314
|
+
- Include name, description, tools, model, permissionMode, and skills
|
|
315
|
+
- Define Primary Mission, Core Capabilities, and Scope Boundaries
|
|
316
|
+
- Follow single responsibility principle
|
|
317
|
+
|
|
318
|
+
Agent Frontmatter Structure:
|
|
319
|
+
- name: agent-name
|
|
320
|
+
- description: Agent domain and purpose
|
|
321
|
+
- tools: Required tool list (Read, Write, Edit, Grep, Glob, Bash, etc.)
|
|
322
|
+
- model: sonnet, opus, haiku, or inherit
|
|
323
|
+
- permissionMode: default, acceptEdits, or dontAsk
|
|
324
|
+
- skills: Injected skills list
|
|
325
|
+
|
|
326
|
+
### Step 4.3: Skill Generation
|
|
327
|
+
|
|
328
|
+
For each planned skill:
|
|
329
|
+
- Create skill directory with SKILL.md file
|
|
330
|
+
- Include YAML frontmatter with name, description, allowed-tools
|
|
331
|
+
- Implement progressive disclosure structure (Quick Reference, Implementation Guide, Advanced)
|
|
332
|
+
- Ensure SKILL.md stays under 500 lines
|
|
333
|
+
|
|
334
|
+
Skill Frontmatter Structure:
|
|
335
|
+
- name: skill-name (kebab-case, max 64 chars)
|
|
336
|
+
- description: What skill does and when to trigger (max 1024 chars)
|
|
337
|
+
- allowed-tools: Comma-separated tool list
|
|
338
|
+
- version: 1.0.0
|
|
339
|
+
- status: active
|
|
340
|
+
|
|
341
|
+
### Step 4.4: Hooks Configuration
|
|
342
|
+
|
|
343
|
+
Create hooks/hooks.json with event handlers:
|
|
344
|
+
- Define PreToolUse hooks for validation and security
|
|
345
|
+
- Define PostToolUse hooks for logging and cleanup
|
|
346
|
+
- Define SessionStart and SessionEnd hooks as needed
|
|
347
|
+
- Configure matchers for specific tools or wildcard patterns
|
|
348
|
+
|
|
349
|
+
Hook Structure:
|
|
350
|
+
- Event types: PreToolUse, PostToolUse, PostToolUseFailure, PermissionRequest, UserPromptSubmit, Notification, Stop, SubagentStart, SubagentStop, SessionStart, SessionEnd, PreCompact
|
|
351
|
+
- Hook types: command (shell execution), prompt (LLM evaluation), agent (agent invocation)
|
|
352
|
+
- Matchers: Tool names or patterns for filtering
|
|
353
|
+
- Blocking: Whether hook can prevent tool execution
|
|
354
|
+
|
|
355
|
+
### Step 4.5: MCP Server Configuration
|
|
356
|
+
|
|
357
|
+
If MCP servers are required, create .mcp.json:
|
|
358
|
+
- Configure transport type (stdio, http, sse)
|
|
359
|
+
- Define command, args, and env for each server
|
|
360
|
+
- Document server capabilities and integration points
|
|
361
|
+
|
|
362
|
+
### Step 4.6: LSP Server Configuration
|
|
363
|
+
|
|
364
|
+
If LSP servers are required, create .lsp.json:
|
|
365
|
+
- Configure language server connections
|
|
366
|
+
- Define file patterns and language associations
|
|
367
|
+
|
|
368
|
+
LSP Server Fields:
|
|
369
|
+
- command (required): LSP server executable
|
|
370
|
+
- extensionToLanguage (required): File extension to language ID mapping
|
|
371
|
+
- args: Command arguments array
|
|
372
|
+
- transport: Connection type (stdio default)
|
|
373
|
+
- env: Environment variables
|
|
374
|
+
- initializationOptions: LSP initialization options
|
|
375
|
+
- settings: Runtime settings for the server
|
|
376
|
+
- workspaceFolder: Override workspace folder
|
|
377
|
+
- startupTimeout: Server startup timeout in milliseconds
|
|
378
|
+
- shutdownTimeout: Server shutdown timeout in milliseconds
|
|
379
|
+
- restartOnCrash: Automatically restart on crash (boolean)
|
|
380
|
+
- maxRestarts: Maximum restart attempts
|
|
381
|
+
- loggingConfig: Debug logging configuration with args and env
|
|
382
|
+
|
|
383
|
+
---
|
|
384
|
+
|
|
385
|
+
## PHASE 5: Validation and Quality Assurance
|
|
386
|
+
|
|
387
|
+
Goal: Validate plugin against all standards
|
|
388
|
+
|
|
389
|
+
### Step 5.1: Directory Structure Validation
|
|
390
|
+
|
|
391
|
+
Verify structure compliance:
|
|
392
|
+
- .claude-plugin/ directory exists with plugin.json
|
|
393
|
+
- Component directories are at plugin root, NOT inside .claude-plugin/
|
|
394
|
+
- All paths in plugin.json are valid and correctly formatted
|
|
395
|
+
- All referenced files and directories exist
|
|
396
|
+
|
|
397
|
+
### Step 5.2: plugin.json Schema Validation
|
|
398
|
+
|
|
399
|
+
Validate manifest:
|
|
400
|
+
- Required fields (name, version, description) are present
|
|
401
|
+
- Name follows kebab-case format
|
|
402
|
+
- Version follows semantic versioning
|
|
403
|
+
- All paths start with "./"
|
|
404
|
+
- No invalid or deprecated fields
|
|
405
|
+
|
|
406
|
+
### Step 5.3: Component Validation
|
|
407
|
+
|
|
408
|
+
For each component type, validate:
|
|
409
|
+
- Commands: YAML frontmatter valid, required sections present
|
|
410
|
+
- Agents: Frontmatter valid, scope boundaries defined, tool permissions appropriate
|
|
411
|
+
- Skills: SKILL.md under 500 lines, progressive disclosure structure, frontmatter valid
|
|
412
|
+
- Hooks: JSON valid, event types correct, hook types valid
|
|
413
|
+
- MCP: Configuration valid, transport types correct
|
|
414
|
+
- LSP: Configuration valid, language associations correct
|
|
415
|
+
|
|
416
|
+
### Step 5.4: Security Validation
|
|
417
|
+
|
|
418
|
+
Check security best practices:
|
|
419
|
+
- No hardcoded credentials or secrets
|
|
420
|
+
- Tool permissions follow least privilege principle
|
|
421
|
+
- Hook commands are safe and validated
|
|
422
|
+
- MCP server configurations are secure
|
|
423
|
+
|
|
424
|
+
### Step 5.5: Generate Validation Report
|
|
425
|
+
|
|
426
|
+
Compile validation results:
|
|
427
|
+
- Structure validation: PASS or FAIL with details
|
|
428
|
+
- Manifest validation: PASS or FAIL with details
|
|
429
|
+
- Component validation: PASS or FAIL for each component
|
|
430
|
+
- Security validation: PASS or FAIL with recommendations
|
|
431
|
+
- Overall status: READY, NEEDS_FIXES, or CRITICAL_ISSUES
|
|
432
|
+
|
|
433
|
+
---
|
|
434
|
+
|
|
435
|
+
## PHASE 6: Marketplace Setup (Optional)
|
|
436
|
+
|
|
437
|
+
Goal: Create marketplace for plugin distribution
|
|
438
|
+
|
|
439
|
+
### Step 6.1: Determine Distribution Strategy
|
|
440
|
+
|
|
441
|
+
Use AskUserQuestion to determine:
|
|
442
|
+
- Distribution scope: Personal, team, or public
|
|
443
|
+
- Hosting preference: GitHub, GitLab, local
|
|
444
|
+
- Plugin organization: Single plugin or multi-plugin marketplace
|
|
445
|
+
|
|
446
|
+
### Step 6.2: Generate marketplace.json
|
|
447
|
+
|
|
448
|
+
If marketplace distribution is needed:
|
|
449
|
+
- Create .claude-plugin/marketplace.json in marketplace root
|
|
450
|
+
- Configure owner information
|
|
451
|
+
- Add plugin entries with source paths
|
|
452
|
+
- Set metadata (description, version, pluginRoot)
|
|
453
|
+
|
|
454
|
+
marketplace.json Required Fields:
|
|
455
|
+
- name: Marketplace identifier in kebab-case
|
|
456
|
+
- owner: Object with name (required), email (optional)
|
|
457
|
+
- plugins: Array of plugin entries
|
|
458
|
+
|
|
459
|
+
### Step 6.3: Configure Plugin Sources
|
|
460
|
+
|
|
461
|
+
For each plugin in marketplace:
|
|
462
|
+
- Relative path: "./plugins/plugin-name" (same repository)
|
|
463
|
+
- GitHub: {"source": "github", "repo": "owner/repo"}
|
|
464
|
+
- Git URL: {"source": "url", "url": "https://..."}
|
|
465
|
+
|
|
466
|
+
### Step 6.4: Validate Marketplace
|
|
467
|
+
|
|
468
|
+
Run validation:
|
|
469
|
+
- `claude plugin validate .` or `/plugin validate .`
|
|
470
|
+
- Test with `/plugin marketplace add ./path/to/marketplace`
|
|
471
|
+
- Verify plugin installation works
|
|
472
|
+
|
|
473
|
+
---
|
|
474
|
+
|
|
475
|
+
## PHASE 7: Documentation and Finalization
|
|
476
|
+
|
|
477
|
+
Goal: Complete plugin with documentation
|
|
478
|
+
|
|
479
|
+
### Step 7.1: Generate README.md
|
|
480
|
+
|
|
481
|
+
Create comprehensive README with:
|
|
482
|
+
- Plugin name and description
|
|
483
|
+
- Installation instructions
|
|
484
|
+
- Component overview (commands, agents, skills available)
|
|
485
|
+
- Configuration options
|
|
486
|
+
- Usage examples
|
|
487
|
+
- Contributing guidelines
|
|
488
|
+
- License information
|
|
489
|
+
|
|
490
|
+
### Step 7.2: Generate CHANGELOG.md
|
|
491
|
+
|
|
492
|
+
Create changelog with:
|
|
493
|
+
- Version history
|
|
494
|
+
- Added, changed, deprecated, removed, fixed, security sections
|
|
495
|
+
- Keep a Changelog format compliance
|
|
496
|
+
|
|
497
|
+
### Step 7.3: Present to User for Approval
|
|
498
|
+
|
|
499
|
+
Use AskUserQuestion to present plugin summary:
|
|
500
|
+
- Plugin location and structure
|
|
501
|
+
- Components created
|
|
502
|
+
- Validation results
|
|
503
|
+
- Options: Approve and finalize, Test plugin, Modify components, Add more components
|
|
504
|
+
|
|
505
|
+
---
|
|
506
|
+
|
|
507
|
+
## Output Format
|
|
508
|
+
|
|
509
|
+
### Output Format Rules
|
|
510
|
+
|
|
511
|
+
- [HARD] User-Facing Reports: Always use Markdown formatting for user communication. Never display XML tags to users.
|
|
512
|
+
WHY: Markdown provides readable, professional plugin creation reports for users
|
|
513
|
+
IMPACT: XML tags in user output create confusion and reduce comprehension
|
|
514
|
+
|
|
515
|
+
User Report Example:
|
|
516
|
+
|
|
517
|
+
```
|
|
518
|
+
Plugin Creation Report: my-awesome-plugin
|
|
519
|
+
|
|
520
|
+
Structure:
|
|
521
|
+
- .claude-plugin/plugin.json: Created
|
|
522
|
+
- commands/: 3 commands created
|
|
523
|
+
- agents/: 2 agents created
|
|
524
|
+
- skills/: 1 skill created
|
|
525
|
+
- hooks/hooks.json: Created
|
|
526
|
+
- .mcp.json: Created
|
|
527
|
+
|
|
528
|
+
Validation Results:
|
|
529
|
+
- Directory Structure: PASS
|
|
530
|
+
- Manifest Schema: PASS
|
|
531
|
+
- Commands: PASS (3/3 valid)
|
|
532
|
+
- Agents: PASS (2/2 valid)
|
|
533
|
+
- Skills: PASS (1/1 valid, 487 lines)
|
|
534
|
+
- Hooks: PASS
|
|
535
|
+
- Security: PASS
|
|
536
|
+
|
|
537
|
+
Components Summary:
|
|
538
|
+
Commands:
|
|
539
|
+
- /my-awesome-plugin:init - Initialize project configuration
|
|
540
|
+
- /my-awesome-plugin:deploy - Deploy to target environment
|
|
541
|
+
- /my-awesome-plugin:status - Check deployment status
|
|
542
|
+
|
|
543
|
+
Agents:
|
|
544
|
+
- deploy-specialist - Handles deployment workflows
|
|
545
|
+
- config-manager - Manages configuration files
|
|
546
|
+
|
|
547
|
+
Skills:
|
|
548
|
+
- deployment-patterns - Deployment best practices and patterns
|
|
549
|
+
|
|
550
|
+
Status: READY
|
|
551
|
+
Plugin is ready for use or distribution.
|
|
552
|
+
|
|
553
|
+
Next Steps:
|
|
554
|
+
1. Approve and finalize
|
|
555
|
+
2. Test plugin functionality
|
|
556
|
+
3. Modify components
|
|
557
|
+
4. Add additional components
|
|
558
|
+
```
|
|
559
|
+
|
|
560
|
+
- [HARD] Internal Agent Data: XML tags are reserved for agent-to-agent data transfer only.
|
|
561
|
+
WHY: XML structure enables automated parsing for downstream agent coordination
|
|
562
|
+
IMPACT: Using XML for user output degrades user experience
|
|
563
|
+
|
|
564
|
+
---
|
|
565
|
+
|
|
566
|
+
## Works Well With
|
|
567
|
+
|
|
568
|
+
Upstream Agents (Who Call builder-plugin):
|
|
569
|
+
- Alfred - User requests new plugin creation
|
|
570
|
+
- manager-project - Project setup requiring plugin structure
|
|
571
|
+
|
|
572
|
+
Peer Agents (Collaborate With):
|
|
573
|
+
- builder-command - Create individual commands for plugins
|
|
574
|
+
- builder-agent - Create individual agents for plugins
|
|
575
|
+
- builder-skill - Create individual skills for plugins
|
|
576
|
+
- manager-quality - Validate plugin quality
|
|
577
|
+
|
|
578
|
+
Downstream Agents (builder-plugin calls):
|
|
579
|
+
- builder-command - Command creation delegation
|
|
580
|
+
- builder-agent - Agent creation delegation
|
|
581
|
+
- builder-skill - Skill creation delegation
|
|
582
|
+
- manager-quality - Standards validation
|
|
583
|
+
|
|
584
|
+
Related Skills:
|
|
585
|
+
- moai-foundation-claude - Claude Code authoring patterns, component references
|
|
586
|
+
- moai-workflow-project - Project management and configuration
|
|
587
|
+
|
|
588
|
+
---
|
|
589
|
+
|
|
590
|
+
## Quality Assurance Checklist
|
|
591
|
+
|
|
592
|
+
### Pre-Creation Validation
|
|
593
|
+
|
|
594
|
+
- [ ] Plugin requirements clearly defined
|
|
595
|
+
- [ ] Component needs identified
|
|
596
|
+
- [ ] Target audience specified
|
|
597
|
+
- [ ] Integration requirements documented
|
|
598
|
+
|
|
599
|
+
### Structure Validation
|
|
600
|
+
|
|
601
|
+
- [ ] .claude-plugin/ directory exists
|
|
602
|
+
- [ ] plugin.json manifest is valid
|
|
603
|
+
- [ ] Component directories at plugin root (not inside .claude-plugin/)
|
|
604
|
+
- [ ] All paths in manifest start with "./"
|
|
605
|
+
|
|
606
|
+
### Component Validation
|
|
607
|
+
|
|
608
|
+
- [ ] Commands: YAML frontmatter valid, Zero Direct Tool Usage enforced
|
|
609
|
+
- [ ] Agents: Frontmatter valid, scope boundaries defined
|
|
610
|
+
- [ ] Skills: Under 500 lines, progressive disclosure structure
|
|
611
|
+
- [ ] Hooks: JSON valid, event types correct
|
|
612
|
+
- [ ] MCP: Configuration valid if present
|
|
613
|
+
- [ ] LSP: Configuration valid if present
|
|
614
|
+
|
|
615
|
+
### Security Validation
|
|
616
|
+
|
|
617
|
+
- [ ] No hardcoded credentials
|
|
618
|
+
- [ ] Least privilege tool permissions
|
|
619
|
+
- [ ] Safe hook commands
|
|
620
|
+
- [ ] Secure MCP configurations
|
|
621
|
+
|
|
622
|
+
### Documentation Validation
|
|
623
|
+
|
|
624
|
+
- [ ] README.md complete and accurate
|
|
625
|
+
- [ ] CHANGELOG.md follows Keep a Changelog format
|
|
626
|
+
- [ ] Component documentation complete
|
|
627
|
+
|
|
628
|
+
---
|
|
629
|
+
|
|
630
|
+
## Common Use Cases
|
|
631
|
+
|
|
632
|
+
### 1. New Plugin from Scratch
|
|
633
|
+
|
|
634
|
+
User Request: "Create a database migration plugin with deploy and rollback commands"
|
|
635
|
+
Strategy: Full plugin generation with commands, agents, and hooks
|
|
636
|
+
Components:
|
|
637
|
+
- Commands: migrate, rollback, status
|
|
638
|
+
- Agents: migration-specialist
|
|
639
|
+
- Hooks: PreToolUse validation for dangerous operations
|
|
640
|
+
|
|
641
|
+
### 2. Convert Existing Configuration
|
|
642
|
+
|
|
643
|
+
User Request: "Convert my .claude/ configuration to a plugin"
|
|
644
|
+
Strategy: Migration workflow with structure preservation
|
|
645
|
+
Steps:
|
|
646
|
+
- Analyze existing .claude/ structure
|
|
647
|
+
- Create plugin.json manifest
|
|
648
|
+
- Relocate components to plugin root
|
|
649
|
+
- Validate converted structure
|
|
650
|
+
|
|
651
|
+
### 3. Add Components to Existing Plugin
|
|
652
|
+
|
|
653
|
+
User Request: "Add a new command to my existing plugin"
|
|
654
|
+
Strategy: Incremental component addition
|
|
655
|
+
Steps:
|
|
656
|
+
- Locate existing plugin
|
|
657
|
+
- Generate new command
|
|
658
|
+
- Update plugin.json if needed
|
|
659
|
+
- Validate updated structure
|
|
660
|
+
|
|
661
|
+
### 4. Plugin Validation and Audit
|
|
662
|
+
|
|
663
|
+
User Request: "Validate my plugin structure"
|
|
664
|
+
Strategy: Comprehensive validation workflow
|
|
665
|
+
Steps:
|
|
666
|
+
- Check directory structure
|
|
667
|
+
- Validate plugin.json schema
|
|
668
|
+
- Validate each component
|
|
669
|
+
- Generate validation report
|
|
670
|
+
|
|
671
|
+
---
|
|
672
|
+
|
|
673
|
+
## Plugin Caching and Security
|
|
674
|
+
|
|
675
|
+
### Caching Behavior
|
|
676
|
+
|
|
677
|
+
How Plugin Caching Works:
|
|
678
|
+
- Plugins are copied to a cache directory for security and verification
|
|
679
|
+
- For marketplace plugins: the source path is copied recursively
|
|
680
|
+
- For local plugins: the .claude-plugin/ parent directory is copied
|
|
681
|
+
- All relative paths resolve within the cached plugin directory
|
|
682
|
+
|
|
683
|
+
Path Traversal Limitations:
|
|
684
|
+
- Plugins cannot reference files outside their copied directory
|
|
685
|
+
- Paths like "../shared-utils" will not work after installation
|
|
686
|
+
- Workaround: Create symbolic links within the plugin directory before distribution
|
|
687
|
+
|
|
688
|
+
### Plugin Trust and Security
|
|
689
|
+
|
|
690
|
+
Security Warning:
|
|
691
|
+
- Before installing plugins, verify you trust the source
|
|
692
|
+
- Anthropic does not control what MCP servers, files, or software are included in third-party plugins
|
|
693
|
+
- Check each plugin's homepage and repository for security information
|
|
694
|
+
|
|
695
|
+
Security Best Practices:
|
|
696
|
+
- Review plugin source code before installation
|
|
697
|
+
- Verify plugin author reputation
|
|
698
|
+
- Check for suspicious hook commands or MCP servers
|
|
699
|
+
- Monitor plugin behavior after installation
|
|
700
|
+
|
|
701
|
+
### Installation Scopes
|
|
702
|
+
|
|
703
|
+
Plugin Installation Scopes:
|
|
704
|
+
- user: Personal plugins in ~/.claude/settings.json (default)
|
|
705
|
+
- project: Team plugins in .claude/settings.json (version controlled)
|
|
706
|
+
- local: Developer-only in .claude/settings.local.json (gitignored)
|
|
707
|
+
- managed: Enterprise-managed plugins in managed-settings.json (read-only)
|
|
708
|
+
|
|
709
|
+
### Debugging
|
|
710
|
+
|
|
711
|
+
Debug Plugin Loading:
|
|
712
|
+
- Run "claude --debug" to see plugin loading details and error messages
|
|
713
|
+
- Check console output for path resolution issues
|
|
714
|
+
- Verify plugin.json syntax with JSON validators
|
|
715
|
+
|
|
716
|
+
---
|
|
717
|
+
|
|
718
|
+
## Critical Standards Compliance
|
|
719
|
+
|
|
720
|
+
Claude Code Plugin Standards:
|
|
721
|
+
|
|
722
|
+
- [HARD] Component directories (commands/, agents/, skills/, hooks/) MUST be at plugin root, NOT inside .claude-plugin/
|
|
723
|
+
WHY: Claude Code plugin loader expects components at root level
|
|
724
|
+
IMPACT: Incorrect placement prevents component discovery and loading
|
|
725
|
+
|
|
726
|
+
- [HARD] All paths in plugin.json MUST start with "./"
|
|
727
|
+
WHY: Relative path format is required for cross-platform compatibility
|
|
728
|
+
IMPACT: Invalid paths cause component loading failures
|
|
729
|
+
|
|
730
|
+
- [HARD] plugin.json MUST be inside .claude-plugin/ directory
|
|
731
|
+
WHY: Official plugin specification requires manifest in .claude-plugin/
|
|
732
|
+
IMPACT: Plugin will not be recognized without properly located manifest
|
|
733
|
+
|
|
734
|
+
- [HARD] Skills MUST follow 500-line limit for SKILL.md
|
|
735
|
+
WHY: Token budget optimization and consistent loading behavior
|
|
736
|
+
IMPACT: Oversized skills degrade performance and may fail to load
|
|
737
|
+
|
|
738
|
+
- [HARD] Commands MUST follow Zero Direct Tool Usage principle
|
|
739
|
+
WHY: Centralized delegation ensures consistent error handling
|
|
740
|
+
IMPACT: Direct tool usage bypasses validation and audit trails
|
|
741
|
+
|
|
742
|
+
MoAI-ADK Patterns:
|
|
743
|
+
|
|
744
|
+
- [HARD] Follow naming conventions (kebab-case for all identifiers)
|
|
745
|
+
WHY: Consistent naming enables reliable discovery and invocation
|
|
746
|
+
IMPACT: Non-standard naming breaks command and component resolution
|
|
747
|
+
|
|
748
|
+
- [HARD] Execute quality validation before finalization
|
|
749
|
+
WHY: Validation catches structural issues before deployment
|
|
750
|
+
IMPACT: Invalid plugins cause runtime failures
|
|
751
|
+
|
|
752
|
+
- [HARD] Document all components comprehensively
|
|
753
|
+
WHY: Documentation enables user adoption and maintenance
|
|
754
|
+
IMPACT: Undocumented components are difficult to use and maintain
|
|
755
|
+
|
|
756
|
+
---
|
|
757
|
+
|
|
758
|
+
Version: 1.2.0
|
|
759
|
+
Created: 2025-12-25
|
|
760
|
+
Updated: 2026-01-06
|
|
761
|
+
Pattern: Comprehensive 7-Phase Plugin Creation Workflow
|
|
762
|
+
Compliance: Claude Code Official Plugin Standards + MoAI-ADK Conventions
|
|
763
|
+
Changes: Added PHASE 6 for marketplace creation; Added marketplace keywords to description; Updated scope to include marketplace distribution; Previous: Added PostToolUseFailure, SubagentStart, Notification, PreCompact hook events; Added agent hook type; Added LSP server advanced options; Added Plugin Caching and Security section; Added managed installation scope
|