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,233 @@
|
|
|
1
|
+
# Adaptive MFA
|
|
2
|
+
|
|
3
|
+
Adaptive MFA is a flexible, extensible multi-factor authentication policy that assesses potential risk during every login transaction and prompts for additional verification when appropriate.
|
|
4
|
+
|
|
5
|
+
## Requirements
|
|
6
|
+
|
|
7
|
+
Plan: Enterprise Plan with Adaptive MFA add-on
|
|
8
|
+
|
|
9
|
+
## How It Works
|
|
10
|
+
|
|
11
|
+
Adaptive MFA evaluates multiple risk signals for each login attempt, generates a confidence score, and triggers MFA challenges when the risk exceeds acceptable thresholds.
|
|
12
|
+
|
|
13
|
+
Key Characteristic: Adaptive MFA ignores any existing MFA sessions and cannot be bypassed by previous authentication.
|
|
14
|
+
|
|
15
|
+
## Risk Signals
|
|
16
|
+
|
|
17
|
+
### NewDevice
|
|
18
|
+
|
|
19
|
+
Detection: Login attempt from a device not used in the past 30 days.
|
|
20
|
+
|
|
21
|
+
Identification Method:
|
|
22
|
+
- User agent analysis
|
|
23
|
+
- Browser cookies
|
|
24
|
+
- Device fingerprinting
|
|
25
|
+
|
|
26
|
+
Risk Assessment:
|
|
27
|
+
- Unknown device increases risk
|
|
28
|
+
- Known device reduces risk
|
|
29
|
+
- Compares against historical account access
|
|
30
|
+
|
|
31
|
+
### ImpossibleTravel
|
|
32
|
+
|
|
33
|
+
Detection: Geographically suspicious login attempts.
|
|
34
|
+
|
|
35
|
+
Calculation:
|
|
36
|
+
- Distance between last valid location and current location
|
|
37
|
+
- Time elapsed between logins
|
|
38
|
+
- Hypothetical travel velocity
|
|
39
|
+
|
|
40
|
+
Threshold:
|
|
41
|
+
- Compares calculated velocity against reasonable travel speed
|
|
42
|
+
- Triggers when physically impossible to travel between locations
|
|
43
|
+
- Accounts for VPN and proxy usage patterns
|
|
44
|
+
|
|
45
|
+
### UntrustedIP
|
|
46
|
+
|
|
47
|
+
Detection: Logins from IP addresses with suspicious activity history.
|
|
48
|
+
|
|
49
|
+
Intelligence Sources:
|
|
50
|
+
- Auth0 traffic intelligence
|
|
51
|
+
- IP reputation databases
|
|
52
|
+
- Historical attack association
|
|
53
|
+
|
|
54
|
+
Assessment:
|
|
55
|
+
- High-velocity attack association
|
|
56
|
+
- Known malicious IP ranges
|
|
57
|
+
- Tor exit nodes and proxies
|
|
58
|
+
|
|
59
|
+
## Confidence Scoring
|
|
60
|
+
|
|
61
|
+
The system combines all three risk factors to generate an overall confidence score:
|
|
62
|
+
|
|
63
|
+
High Confidence (Low Risk):
|
|
64
|
+
- Known device
|
|
65
|
+
- Normal location
|
|
66
|
+
- Trusted IP
|
|
67
|
+
- MFA not required
|
|
68
|
+
|
|
69
|
+
Low Confidence (High Risk):
|
|
70
|
+
- New device
|
|
71
|
+
- Impossible travel detected
|
|
72
|
+
- Untrusted IP
|
|
73
|
+
- MFA required
|
|
74
|
+
|
|
75
|
+
Risk Combination:
|
|
76
|
+
- Multiple risk factors compound
|
|
77
|
+
- Single high-risk factor can trigger MFA
|
|
78
|
+
- Weighted scoring based on signal strength
|
|
79
|
+
|
|
80
|
+
## Supported Authentication Flows
|
|
81
|
+
|
|
82
|
+
Fully Supported:
|
|
83
|
+
- OIDC/OAuth2 Authorization Code Flow
|
|
84
|
+
- SAML SP-initiated authentication
|
|
85
|
+
- WS-Federation
|
|
86
|
+
- AD/LDAP authentication
|
|
87
|
+
|
|
88
|
+
Not Supported:
|
|
89
|
+
- Resource Owner Password Grant (ROPG)
|
|
90
|
+
- Device Authorization Flow
|
|
91
|
+
- Refresh token flows
|
|
92
|
+
|
|
93
|
+
## Configuration
|
|
94
|
+
|
|
95
|
+
### Dashboard Settings
|
|
96
|
+
|
|
97
|
+
1. Navigate to Dashboard > Security > Multi-factor Auth
|
|
98
|
+
2. Set policy to Use Adaptive MFA
|
|
99
|
+
3. Ensure at least one MFA factor is enabled
|
|
100
|
+
|
|
101
|
+
### Customization with Actions
|
|
102
|
+
|
|
103
|
+
Create post-login Actions to customize Adaptive MFA behavior:
|
|
104
|
+
|
|
105
|
+
Custom Risk Logic:
|
|
106
|
+
- Add custom risk signals
|
|
107
|
+
- Integrate external risk services
|
|
108
|
+
- Implement business-specific rules
|
|
109
|
+
|
|
110
|
+
Conditional Challenges:
|
|
111
|
+
- Challenge based on user attributes
|
|
112
|
+
- Organization-specific policies
|
|
113
|
+
- Transaction-based challenges
|
|
114
|
+
|
|
115
|
+
Factor Selection:
|
|
116
|
+
- Enforce specific factors for high-risk
|
|
117
|
+
- Allow factor choice for medium-risk
|
|
118
|
+
- Skip MFA for trusted scenarios
|
|
119
|
+
|
|
120
|
+
## Integration with Custom Risk Assessment
|
|
121
|
+
|
|
122
|
+
External Risk Services:
|
|
123
|
+
- Pass transaction context to external API
|
|
124
|
+
- Receive risk score
|
|
125
|
+
- Combine with Auth0 Adaptive signals
|
|
126
|
+
|
|
127
|
+
Custom Signals:
|
|
128
|
+
- Geographic restrictions
|
|
129
|
+
- Time-based policies
|
|
130
|
+
- Device trust levels
|
|
131
|
+
- User behavior analytics
|
|
132
|
+
|
|
133
|
+
## User Experience
|
|
134
|
+
|
|
135
|
+
Low-Risk Login:
|
|
136
|
+
- Normal authentication flow
|
|
137
|
+
- No MFA prompt
|
|
138
|
+
- Seamless access
|
|
139
|
+
|
|
140
|
+
High-Risk Login:
|
|
141
|
+
- MFA challenge presented
|
|
142
|
+
- User completes additional factor
|
|
143
|
+
- Access granted after verification
|
|
144
|
+
|
|
145
|
+
Transparent to Users:
|
|
146
|
+
- No explanation of risk assessment
|
|
147
|
+
- Consistent MFA experience
|
|
148
|
+
- Standard factor enrollment
|
|
149
|
+
|
|
150
|
+
## Monitoring
|
|
151
|
+
|
|
152
|
+
### Adaptive MFA Logs
|
|
153
|
+
|
|
154
|
+
Events logged include:
|
|
155
|
+
- Risk assessment results
|
|
156
|
+
- Individual signal evaluations
|
|
157
|
+
- MFA challenge decisions
|
|
158
|
+
- Authentication outcomes
|
|
159
|
+
|
|
160
|
+
### Security Center
|
|
161
|
+
|
|
162
|
+
View Adaptive MFA metrics:
|
|
163
|
+
- Challenge rates over time
|
|
164
|
+
- Risk signal distribution
|
|
165
|
+
- Geographic patterns
|
|
166
|
+
- Device type analysis
|
|
167
|
+
|
|
168
|
+
## Best Practices
|
|
169
|
+
|
|
170
|
+
Factor Configuration:
|
|
171
|
+
- Enable multiple factors for user choice
|
|
172
|
+
- Include recovery codes
|
|
173
|
+
- Configure factors before enabling Adaptive
|
|
174
|
+
|
|
175
|
+
Gradual Rollout:
|
|
176
|
+
- Enable for subset of users first
|
|
177
|
+
- Monitor challenge rates
|
|
178
|
+
- Adjust based on feedback
|
|
179
|
+
|
|
180
|
+
Threshold Tuning:
|
|
181
|
+
- Review false positive rate
|
|
182
|
+
- Adjust risk thresholds via Actions
|
|
183
|
+
- Balance security with user friction
|
|
184
|
+
|
|
185
|
+
User Communication:
|
|
186
|
+
- Explain why MFA may be required
|
|
187
|
+
- Provide factor enrollment guidance
|
|
188
|
+
- Clear support procedures
|
|
189
|
+
|
|
190
|
+
## Comparison with Always MFA
|
|
191
|
+
|
|
192
|
+
Always MFA:
|
|
193
|
+
- Every login requires MFA
|
|
194
|
+
- Maximum security
|
|
195
|
+
- Highest user friction
|
|
196
|
+
- Simpler to understand
|
|
197
|
+
|
|
198
|
+
Adaptive MFA:
|
|
199
|
+
- Risk-based challenges
|
|
200
|
+
- Good security with less friction
|
|
201
|
+
- More sophisticated
|
|
202
|
+
- Requires Enterprise plan
|
|
203
|
+
|
|
204
|
+
Recommendation:
|
|
205
|
+
- Use Adaptive for consumer applications
|
|
206
|
+
- Consider Always for high-security admin access
|
|
207
|
+
- Combine with step-up for sensitive operations
|
|
208
|
+
|
|
209
|
+
## Troubleshooting
|
|
210
|
+
|
|
211
|
+
Frequent False Positives:
|
|
212
|
+
|
|
213
|
+
New Device Triggers:
|
|
214
|
+
- Users clearing cookies
|
|
215
|
+
- Private browsing mode
|
|
216
|
+
- Multiple browsers
|
|
217
|
+
- Solution: User education on device recognition
|
|
218
|
+
|
|
219
|
+
Impossible Travel:
|
|
220
|
+
- VPN usage
|
|
221
|
+
- Multiple location employees
|
|
222
|
+
- Solution: Custom Actions to handle known patterns
|
|
223
|
+
|
|
224
|
+
Untrusted IP:
|
|
225
|
+
- Corporate proxies
|
|
226
|
+
- Cloud-based VPNs
|
|
227
|
+
- Solution: IP AllowList or custom logic
|
|
228
|
+
|
|
229
|
+
MFA Not Triggering When Expected:
|
|
230
|
+
- Check if flow is supported
|
|
231
|
+
- Verify policy is set to Adaptive
|
|
232
|
+
- Review risk signal evaluations in logs
|
|
233
|
+
- Ensure MFA factors are enabled
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
# Akamai Integration
|
|
2
|
+
|
|
3
|
+
Module: moai-platform-auth0/modules/akamai-integration.md
|
|
4
|
+
Version: 1.0.0
|
|
5
|
+
Last Updated: 2025-12-24
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
|
|
11
|
+
Auth0 integrates with Akamai to provide supplemental security signals for enhanced attack protection. This integration allows organizations using Akamai's edge security services to leverage bot scores and risk signals within Auth0 Actions for more intelligent authentication decisions.
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## Integration Purpose
|
|
16
|
+
|
|
17
|
+
### Enhanced Bot Detection
|
|
18
|
+
|
|
19
|
+
Combine Auth0's native bot detection with Akamai's comprehensive bot intelligence for more accurate threat identification.
|
|
20
|
+
|
|
21
|
+
### Risk-Based Authentication
|
|
22
|
+
|
|
23
|
+
Use Akamai's risk signals to trigger additional authentication steps or block suspicious requests.
|
|
24
|
+
|
|
25
|
+
### Edge-to-Identity Security
|
|
26
|
+
|
|
27
|
+
Create a unified security posture from the edge (Akamai) to identity management (Auth0).
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Configuration Prerequisites
|
|
32
|
+
|
|
33
|
+
### Akamai Requirements
|
|
34
|
+
|
|
35
|
+
Active Akamai Bot Manager or Enterprise Application Access subscription.
|
|
36
|
+
|
|
37
|
+
Akamai API credentials with appropriate permissions.
|
|
38
|
+
|
|
39
|
+
Understanding of Akamai's bot detection and risk scoring mechanisms.
|
|
40
|
+
|
|
41
|
+
### Auth0 Requirements
|
|
42
|
+
|
|
43
|
+
Auth0 tenant with attack protection features enabled.
|
|
44
|
+
|
|
45
|
+
Appropriate plan level supporting custom Actions.
|
|
46
|
+
|
|
47
|
+
Understanding of Auth0 Actions and post-login triggers.
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Configuration Steps
|
|
52
|
+
|
|
53
|
+
### Step 1: Configure Akamai to Send Supplemental Signals
|
|
54
|
+
|
|
55
|
+
Set up Akamai to forward security signals to Auth0.
|
|
56
|
+
|
|
57
|
+
Configure the Akamai-Auth0 integration endpoint.
|
|
58
|
+
|
|
59
|
+
Define which signals should be passed to Auth0.
|
|
60
|
+
|
|
61
|
+
### Step 2: Create Auth0 Action for Signal Processing
|
|
62
|
+
|
|
63
|
+
Navigate to Auth0 Dashboard, then Actions, then Library.
|
|
64
|
+
|
|
65
|
+
Create a new custom Action for the post-login trigger.
|
|
66
|
+
|
|
67
|
+
Implement logic to read and process Akamai supplemental signals.
|
|
68
|
+
|
|
69
|
+
### Step 3: Configure Signal Processing Logic
|
|
70
|
+
|
|
71
|
+
Define thresholds for different risk levels.
|
|
72
|
+
|
|
73
|
+
Map Akamai bot scores to authentication decisions.
|
|
74
|
+
|
|
75
|
+
Implement appropriate responses (allow, challenge, block).
|
|
76
|
+
|
|
77
|
+
### Step 4: Test the Integration
|
|
78
|
+
|
|
79
|
+
Verify signals are being received correctly.
|
|
80
|
+
|
|
81
|
+
Test authentication flows with various risk levels.
|
|
82
|
+
|
|
83
|
+
Validate that appropriate actions are taken based on signals.
|
|
84
|
+
|
|
85
|
+
### Step 5: Deploy and Monitor
|
|
86
|
+
|
|
87
|
+
Deploy the Action to production.
|
|
88
|
+
|
|
89
|
+
Monitor signal processing and authentication outcomes.
|
|
90
|
+
|
|
91
|
+
Adjust thresholds and logic based on observed behavior.
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## Using Akamai Supplemental Signals in Actions
|
|
96
|
+
|
|
97
|
+
### Accessing Signals
|
|
98
|
+
|
|
99
|
+
Akamai supplemental signals are available in the Auth0 Action context through the event object.
|
|
100
|
+
|
|
101
|
+
### Common Signal Types
|
|
102
|
+
|
|
103
|
+
Bot Score: Numerical assessment of whether the request originates from a bot.
|
|
104
|
+
|
|
105
|
+
Risk Level: Overall risk assessment from Akamai's analysis.
|
|
106
|
+
|
|
107
|
+
Client Reputation: Historical behavior analysis of the client.
|
|
108
|
+
|
|
109
|
+
Geographic Indicators: Location-based risk factors.
|
|
110
|
+
|
|
111
|
+
### Decision Logic Patterns
|
|
112
|
+
|
|
113
|
+
Low Risk (Allow): Bot score below threshold, no risk indicators.
|
|
114
|
+
|
|
115
|
+
Medium Risk (Challenge): Elevated bot score or minor risk indicators. Trigger step-up authentication or CAPTCHA.
|
|
116
|
+
|
|
117
|
+
High Risk (Block): High bot score or significant risk indicators. Deny authentication or require additional verification.
|
|
118
|
+
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
## Integration Patterns
|
|
122
|
+
|
|
123
|
+
### Pattern 1: Bot Score Threshold
|
|
124
|
+
|
|
125
|
+
Configure a simple threshold-based approach where requests with bot scores above a defined level trigger additional authentication or are blocked.
|
|
126
|
+
|
|
127
|
+
When to Use: Organizations wanting straightforward bot mitigation without complex logic.
|
|
128
|
+
|
|
129
|
+
### Pattern 2: Combined Risk Assessment
|
|
130
|
+
|
|
131
|
+
Combine Akamai signals with Auth0's native risk assessment for comprehensive threat evaluation.
|
|
132
|
+
|
|
133
|
+
When to Use: Organizations requiring layered security with multiple signal sources.
|
|
134
|
+
|
|
135
|
+
### Pattern 3: Adaptive Response
|
|
136
|
+
|
|
137
|
+
Implement dynamic responses that adjust based on the combination of multiple risk factors.
|
|
138
|
+
|
|
139
|
+
When to Use: Organizations with sophisticated security requirements and the capability to manage complex rule sets.
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## Best Practices
|
|
144
|
+
|
|
145
|
+
### Signal Processing
|
|
146
|
+
|
|
147
|
+
Establish clear thresholds for different risk levels.
|
|
148
|
+
|
|
149
|
+
Document the logic for signal interpretation.
|
|
150
|
+
|
|
151
|
+
Implement logging for signal values and decisions.
|
|
152
|
+
|
|
153
|
+
Regularly review and adjust thresholds based on effectiveness.
|
|
154
|
+
|
|
155
|
+
### Integration Maintenance
|
|
156
|
+
|
|
157
|
+
Monitor the integration health regularly.
|
|
158
|
+
|
|
159
|
+
Keep Akamai and Auth0 configurations synchronized.
|
|
160
|
+
|
|
161
|
+
Test the integration after any changes to either platform.
|
|
162
|
+
|
|
163
|
+
Maintain documentation of the integration configuration.
|
|
164
|
+
|
|
165
|
+
### Security Considerations
|
|
166
|
+
|
|
167
|
+
Protect API credentials used for the integration.
|
|
168
|
+
|
|
169
|
+
Implement rate limiting on the integration endpoints.
|
|
170
|
+
|
|
171
|
+
Monitor for unusual patterns in signal values.
|
|
172
|
+
|
|
173
|
+
Have fallback procedures if the integration becomes unavailable.
|
|
174
|
+
|
|
175
|
+
---
|
|
176
|
+
|
|
177
|
+
## Troubleshooting
|
|
178
|
+
|
|
179
|
+
### Common Issues
|
|
180
|
+
|
|
181
|
+
Signals Not Received: Verify Akamai configuration and network connectivity.
|
|
182
|
+
|
|
183
|
+
Incorrect Signal Values: Check signal mapping and data transformation.
|
|
184
|
+
|
|
185
|
+
Action Errors: Review Action logs for specific error messages.
|
|
186
|
+
|
|
187
|
+
Performance Impact: Monitor latency and optimize signal processing logic.
|
|
188
|
+
|
|
189
|
+
### Diagnostic Steps
|
|
190
|
+
|
|
191
|
+
Step 1: Verify Akamai is sending signals correctly.
|
|
192
|
+
|
|
193
|
+
Step 2: Check Auth0 Action logs for signal receipt.
|
|
194
|
+
|
|
195
|
+
Step 3: Validate signal processing logic.
|
|
196
|
+
|
|
197
|
+
Step 4: Test with known good and bad requests.
|
|
198
|
+
|
|
199
|
+
---
|
|
200
|
+
|
|
201
|
+
## Related Modules
|
|
202
|
+
|
|
203
|
+
- attack-protection-overview.md: Overall attack protection strategy
|
|
204
|
+
- bot-detection.md: Auth0 native bot detection
|
|
205
|
+
- suspicious-ip-throttling.md: IP-based threat detection
|
|
206
|
+
- security-center.md: Monitoring and alerting
|
|
207
|
+
|
|
208
|
+
---
|
|
209
|
+
|
|
210
|
+
## Resources
|
|
211
|
+
|
|
212
|
+
Auth0 Documentation: Configure Akamai to Send Supplemental Signals
|
|
213
|
+
Auth0 Documentation: Use Akamai Supplemental Signals in Actions
|
|
214
|
+
Akamai Documentation: Bot Manager and Enterprise Application Access
|
|
@@ -0,0 +1,280 @@
|
|
|
1
|
+
# Application Credentials
|
|
2
|
+
|
|
3
|
+
Auth0 supports multiple authentication methods for confidential applications to securely authenticate with authorization servers when requesting tokens.
|
|
4
|
+
|
|
5
|
+
## Credential Types
|
|
6
|
+
|
|
7
|
+
### Client Secret (Default)
|
|
8
|
+
|
|
9
|
+
Symmetric key authentication.
|
|
10
|
+
|
|
11
|
+
How It Works:
|
|
12
|
+
- Auth0 generates high-entropy secret
|
|
13
|
+
- Shared between application and Auth0
|
|
14
|
+
- Included in token requests
|
|
15
|
+
|
|
16
|
+
Transmission:
|
|
17
|
+
- Secret sent over network
|
|
18
|
+
- Included in request body or Basic auth header
|
|
19
|
+
- HTTPS required for security
|
|
20
|
+
|
|
21
|
+
Risks:
|
|
22
|
+
- Man-in-the-middle vulnerability
|
|
23
|
+
- Secret compromise = complete breach
|
|
24
|
+
- Must protect on both ends
|
|
25
|
+
|
|
26
|
+
Best For:
|
|
27
|
+
- Simple implementations
|
|
28
|
+
- Trusted environments
|
|
29
|
+
- Initial development
|
|
30
|
+
|
|
31
|
+
### Private Key JWT
|
|
32
|
+
|
|
33
|
+
Asymmetric key authentication.
|
|
34
|
+
|
|
35
|
+
How It Works:
|
|
36
|
+
- Application generates key pair
|
|
37
|
+
- Public key registered with Auth0
|
|
38
|
+
- Private key creates signed assertions
|
|
39
|
+
- Auth0 verifies with public key
|
|
40
|
+
|
|
41
|
+
Transmission:
|
|
42
|
+
- Private key never transmitted
|
|
43
|
+
- Only signed JWT sent
|
|
44
|
+
- Assertion has short expiry
|
|
45
|
+
|
|
46
|
+
Benefits:
|
|
47
|
+
- Private key stays private
|
|
48
|
+
- Limited replay window
|
|
49
|
+
- No shared secret
|
|
50
|
+
|
|
51
|
+
Requirements: Enterprise plan
|
|
52
|
+
|
|
53
|
+
### mTLS for OAuth
|
|
54
|
+
|
|
55
|
+
Certificate-based mutual TLS authentication.
|
|
56
|
+
|
|
57
|
+
How It Works:
|
|
58
|
+
- Application obtains X.509 certificate
|
|
59
|
+
- Certificate registered with Auth0
|
|
60
|
+
- mTLS connection established
|
|
61
|
+
- Certificate validates client identity
|
|
62
|
+
|
|
63
|
+
Transmission:
|
|
64
|
+
- Certificate private key never transmitted
|
|
65
|
+
- TLS handshake authenticates client
|
|
66
|
+
- Transport-layer security
|
|
67
|
+
|
|
68
|
+
Benefits:
|
|
69
|
+
- Strongest authentication
|
|
70
|
+
- No application-layer credentials
|
|
71
|
+
- Certificate-based identity
|
|
72
|
+
|
|
73
|
+
Requirements: Enterprise plan with HRI add-on
|
|
74
|
+
|
|
75
|
+
## Credential Comparison
|
|
76
|
+
|
|
77
|
+
### Security Ranking
|
|
78
|
+
|
|
79
|
+
Most Secure to Least:
|
|
80
|
+
1. mTLS for OAuth (certificate-based)
|
|
81
|
+
2. Private Key JWT (asymmetric)
|
|
82
|
+
3. Client Secret (symmetric)
|
|
83
|
+
|
|
84
|
+
### Complexity
|
|
85
|
+
|
|
86
|
+
Simplest to Most Complex:
|
|
87
|
+
1. Client Secret (minimal setup)
|
|
88
|
+
2. Private Key JWT (key management)
|
|
89
|
+
3. mTLS for OAuth (PKI infrastructure)
|
|
90
|
+
|
|
91
|
+
### Recommendations
|
|
92
|
+
|
|
93
|
+
Upgrade Path:
|
|
94
|
+
1. Start with Client Secret for development
|
|
95
|
+
2. Move to Private Key JWT for production
|
|
96
|
+
3. Use mTLS for highest security needs
|
|
97
|
+
|
|
98
|
+
## Private Key JWT Details
|
|
99
|
+
|
|
100
|
+
### Key Generation
|
|
101
|
+
|
|
102
|
+
Supported Algorithms:
|
|
103
|
+
- RS256, RS384, RS512 (RSA)
|
|
104
|
+
- PS256, PS384, PS512 (RSA-PSS)
|
|
105
|
+
|
|
106
|
+
Key Requirements:
|
|
107
|
+
- Minimum key size per algorithm
|
|
108
|
+
- Secure key generation
|
|
109
|
+
- Protected storage
|
|
110
|
+
|
|
111
|
+
### Client Assertion
|
|
112
|
+
|
|
113
|
+
JWT Structure:
|
|
114
|
+
- iss: Client ID
|
|
115
|
+
- sub: Client ID
|
|
116
|
+
- aud: Token endpoint URL
|
|
117
|
+
- iat: Issue time
|
|
118
|
+
- exp: Expiration time
|
|
119
|
+
- jti: Unique identifier
|
|
120
|
+
|
|
121
|
+
Assertion Lifetime:
|
|
122
|
+
- Short expiry recommended
|
|
123
|
+
- Limits replay window
|
|
124
|
+
- Typically seconds to minutes
|
|
125
|
+
|
|
126
|
+
### Token Request
|
|
127
|
+
|
|
128
|
+
Parameters:
|
|
129
|
+
- client_assertion_type: urn:ietf:params:oauth:client-assertion-type:jwt-bearer
|
|
130
|
+
- client_assertion: Signed JWT
|
|
131
|
+
|
|
132
|
+
### Key Registration
|
|
133
|
+
|
|
134
|
+
Dashboard Steps:
|
|
135
|
+
1. Navigate to Applications
|
|
136
|
+
2. Select application
|
|
137
|
+
3. Go to Credentials tab
|
|
138
|
+
4. Upload public key
|
|
139
|
+
5. Save configuration
|
|
140
|
+
|
|
141
|
+
API Registration:
|
|
142
|
+
- Use Management API
|
|
143
|
+
- Provide JWKS or JWK
|
|
144
|
+
- Associate with application
|
|
145
|
+
|
|
146
|
+
### Key Rotation
|
|
147
|
+
|
|
148
|
+
Zero-Downtime:
|
|
149
|
+
- Register up to two keys
|
|
150
|
+
- Deploy new key to application
|
|
151
|
+
- Remove old key after transition
|
|
152
|
+
|
|
153
|
+
Process:
|
|
154
|
+
1. Generate new key pair
|
|
155
|
+
2. Register new public key
|
|
156
|
+
3. Update application
|
|
157
|
+
4. Verify new key works
|
|
158
|
+
5. Remove old public key
|
|
159
|
+
|
|
160
|
+
## mTLS for OAuth Details
|
|
161
|
+
|
|
162
|
+
### Certificate Requirements
|
|
163
|
+
|
|
164
|
+
Valid X.509 Certificate:
|
|
165
|
+
- RSA or ECDSA key
|
|
166
|
+
- Appropriate validity period
|
|
167
|
+
- Proper extensions
|
|
168
|
+
|
|
169
|
+
Certificate Chain:
|
|
170
|
+
- Complete chain available
|
|
171
|
+
- Trusted CA or registered self-signed
|
|
172
|
+
- Proper intermediate certificates
|
|
173
|
+
|
|
174
|
+
### Certificate Registration
|
|
175
|
+
|
|
176
|
+
Dashboard Steps:
|
|
177
|
+
1. Navigate to Applications
|
|
178
|
+
2. Select application
|
|
179
|
+
3. Go to Credentials tab
|
|
180
|
+
4. Upload certificate
|
|
181
|
+
5. Save configuration
|
|
182
|
+
|
|
183
|
+
Multiple Certificates:
|
|
184
|
+
- Up to two certificates
|
|
185
|
+
- Enables rotation
|
|
186
|
+
- Remove old before adding third
|
|
187
|
+
|
|
188
|
+
### Token Request
|
|
189
|
+
|
|
190
|
+
Connection:
|
|
191
|
+
- Establish mTLS to token endpoint
|
|
192
|
+
- Present registered certificate
|
|
193
|
+
- Complete mutual authentication
|
|
194
|
+
|
|
195
|
+
## JWT-Secured Authorization Requests (JAR)
|
|
196
|
+
|
|
197
|
+
### Overview
|
|
198
|
+
|
|
199
|
+
Protect authorization request parameters:
|
|
200
|
+
- Sign request as JWT
|
|
201
|
+
- Optionally encrypt
|
|
202
|
+
- Ensure integrity and confidentiality
|
|
203
|
+
|
|
204
|
+
### Benefits
|
|
205
|
+
|
|
206
|
+
Integrity:
|
|
207
|
+
- Detect parameter tampering
|
|
208
|
+
- Verify request source
|
|
209
|
+
- Prevent manipulation
|
|
210
|
+
|
|
211
|
+
Confidentiality (with encryption):
|
|
212
|
+
- Hide sensitive parameters
|
|
213
|
+
- Protect from intermediaries
|
|
214
|
+
- Enhanced privacy
|
|
215
|
+
|
|
216
|
+
### Implementation
|
|
217
|
+
|
|
218
|
+
Create Request JWT:
|
|
219
|
+
- Include all authorization parameters
|
|
220
|
+
- Sign with registered key
|
|
221
|
+
- Send as request parameter
|
|
222
|
+
|
|
223
|
+
## Best Practices
|
|
224
|
+
|
|
225
|
+
### Secret Management
|
|
226
|
+
|
|
227
|
+
For Client Secrets:
|
|
228
|
+
- Secure storage
|
|
229
|
+
- Environment variables
|
|
230
|
+
- Secret management service
|
|
231
|
+
- Regular rotation
|
|
232
|
+
|
|
233
|
+
For Private Keys:
|
|
234
|
+
- HSM when possible
|
|
235
|
+
- Encrypted storage
|
|
236
|
+
- Access controls
|
|
237
|
+
- Regular rotation
|
|
238
|
+
|
|
239
|
+
For Certificates:
|
|
240
|
+
- Proper CA hierarchy
|
|
241
|
+
- Lifecycle management
|
|
242
|
+
- Rotation procedures
|
|
243
|
+
- Revocation capability
|
|
244
|
+
|
|
245
|
+
### Rotation
|
|
246
|
+
|
|
247
|
+
Regular Rotation:
|
|
248
|
+
- Schedule periodic rotation
|
|
249
|
+
- Automate when possible
|
|
250
|
+
- Test rotation procedures
|
|
251
|
+
|
|
252
|
+
Emergency Rotation:
|
|
253
|
+
- Immediate capability
|
|
254
|
+
- Documented procedures
|
|
255
|
+
- Tested regularly
|
|
256
|
+
|
|
257
|
+
### Monitoring
|
|
258
|
+
|
|
259
|
+
Track:
|
|
260
|
+
- Credential usage
|
|
261
|
+
- Failed authentications
|
|
262
|
+
- Rotation events
|
|
263
|
+
- Expiration dates
|
|
264
|
+
|
|
265
|
+
Alert On:
|
|
266
|
+
- Failed authentications
|
|
267
|
+
- Approaching expiration
|
|
268
|
+
- Unusual patterns
|
|
269
|
+
|
|
270
|
+
### Security
|
|
271
|
+
|
|
272
|
+
Principle of Least Privilege:
|
|
273
|
+
- Minimum required scopes
|
|
274
|
+
- Appropriate credential type
|
|
275
|
+
- Regular review
|
|
276
|
+
|
|
277
|
+
Audit:
|
|
278
|
+
- Credential access
|
|
279
|
+
- Configuration changes
|
|
280
|
+
- Token requests
|