moai-adk 0.4.5__py3-none-any.whl → 0.20.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of moai-adk might be problematic. Click here for more details.
- moai_adk/__init__.py +1 -1
- moai_adk/__main__.py +74 -1
- moai_adk/cli/commands/__init__.py +1 -1
- moai_adk/cli/commands/analyze.py +119 -0
- moai_adk/cli/commands/backup.py +25 -1
- moai_adk/cli/commands/doctor.py +31 -5
- moai_adk/cli/commands/improve_user_experience.py +307 -0
- moai_adk/cli/commands/init.py +111 -10
- moai_adk/cli/commands/status.py +33 -3
- moai_adk/cli/commands/update.py +921 -130
- moai_adk/cli/commands/validate_links.py +120 -0
- moai_adk/cli/prompts/init_prompts.py +22 -87
- moai_adk/core/analysis/__init__.py +9 -0
- moai_adk/core/analysis/session_analyzer.py +388 -0
- moai_adk/core/analysis/tag_chain_analyzer.py +344 -0
- moai_adk/core/analysis/tag_chain_repair.py +879 -0
- moai_adk/core/config/__init__.py +19 -0
- moai_adk/core/config/migration.py +235 -0
- moai_adk/core/git/__init__.py +1 -1
- moai_adk/core/git/branch.py +1 -1
- moai_adk/core/git/commit.py +1 -1
- moai_adk/core/git/manager.py +1 -1
- moai_adk/core/issue_creator.py +313 -0
- moai_adk/core/mcp/setup.py +56 -0
- moai_adk/core/mcp/setup_old.py +296 -0
- moai_adk/core/project/backup_utils.py +1 -1
- moai_adk/core/project/checker.py +2 -2
- moai_adk/core/project/detector.py +211 -12
- moai_adk/core/project/initializer.py +85 -15
- moai_adk/core/project/phase_executor.py +76 -13
- moai_adk/core/project/validator.py +13 -13
- moai_adk/core/quality/__init__.py +1 -1
- moai_adk/core/quality/trust_checker.py +1 -1
- moai_adk/core/quality/validators/__init__.py +1 -1
- moai_adk/core/quality/validators/base_validator.py +1 -1
- moai_adk/core/tags/__init__.py +86 -0
- moai_adk/core/tags/auto_corrector.py +693 -0
- moai_adk/core/tags/ci_validator.py +463 -0
- moai_adk/core/tags/cli.py +283 -0
- moai_adk/core/tags/generator.py +109 -0
- moai_adk/core/tags/inserter.py +99 -0
- moai_adk/core/tags/mapper.py +126 -0
- moai_adk/core/tags/parser.py +76 -0
- moai_adk/core/tags/policy_validator.py +580 -0
- moai_adk/core/tags/pre_commit_validator.py +421 -0
- moai_adk/core/tags/reporter.py +956 -0
- moai_adk/core/tags/rollback_manager.py +525 -0
- moai_adk/core/tags/tags.py +149 -0
- moai_adk/core/tags/validator.py +897 -0
- moai_adk/core/template/__init__.py +1 -1
- moai_adk/core/template/backup.py +1 -1
- moai_adk/core/template/merger.py +50 -1
- moai_adk/core/template/processor.py +119 -13
- moai_adk/core/template_engine.py +268 -0
- moai_adk/templates/.claude/agents/alfred/backend-expert.md +348 -0
- moai_adk/templates/.claude/agents/alfred/cc-manager.md +209 -944
- moai_adk/templates/.claude/agents/alfred/database-expert.md +352 -0
- moai_adk/templates/.claude/agents/alfred/debug-helper.md +34 -5
- moai_adk/templates/.claude/agents/alfred/devops-expert.md +464 -0
- moai_adk/templates/.claude/agents/alfred/doc-syncer.md +38 -8
- moai_adk/templates/.claude/agents/alfred/format-expert.md +469 -0
- moai_adk/templates/.claude/agents/alfred/frontend-expert.md +357 -0
- moai_adk/templates/.claude/agents/alfred/git-manager.md +128 -9
- moai_adk/templates/.claude/agents/alfred/implementation-planner.md +104 -6
- moai_adk/templates/.claude/agents/alfred/project-manager.md +88 -16
- moai_adk/templates/.claude/agents/alfred/quality-gate.md +36 -9
- moai_adk/templates/.claude/agents/alfred/security-expert.md +270 -0
- moai_adk/templates/.claude/agents/alfred/skill-factory.md +865 -0
- moai_adk/templates/.claude/agents/alfred/spec-builder.md +214 -43
- moai_adk/templates/.claude/agents/alfred/tag-agent.md +111 -9
- moai_adk/templates/.claude/agents/alfred/tdd-implementer.md +309 -160
- moai_adk/templates/.claude/agents/alfred/trust-checker.md +36 -7
- moai_adk/templates/.claude/agents/alfred/ui-ux-expert.md +605 -0
- moai_adk/templates/.claude/commands/alfred/0-project.md +393 -966
- moai_adk/templates/.claude/commands/alfred/1-plan.md +651 -367
- moai_adk/templates/.claude/commands/alfred/2-run.md +388 -241
- moai_adk/templates/.claude/commands/alfred/3-sync.md +1921 -410
- moai_adk/templates/.claude/commands/alfred/9-feedback.md +153 -0
- moai_adk/templates/.claude/commands/alfred/release-new.md +3604 -0
- moai_adk/templates/.claude/hooks/alfred/core/project.py +484 -20
- moai_adk/templates/.claude/hooks/alfred/core/timeout.py +136 -0
- moai_adk/templates/.claude/hooks/alfred/core/ttl_cache.py +108 -0
- moai_adk/templates/.claude/hooks/alfred/core/version_cache.py +198 -0
- moai_adk/templates/.claude/hooks/alfred/handlers/__init__.py +14 -6
- moai_adk/templates/.claude/hooks/alfred/post_tool__enable_streaming_ui.py +50 -0
- moai_adk/templates/.claude/hooks/alfred/post_tool__log_changes.py +93 -0
- moai_adk/templates/.claude/hooks/alfred/post_tool__tag_auto_corrector.py +407 -0
- moai_adk/templates/.claude/hooks/alfred/pre_tool__auto_checkpoint.py +99 -0
- moai_adk/templates/.claude/hooks/alfred/pre_tool__realtime_tag_monitor.py +335 -0
- moai_adk/templates/.claude/hooks/alfred/pre_tool__tag_policy_validator.py +325 -0
- moai_adk/templates/.claude/hooks/alfred/session_end__cleanup.py +93 -0
- moai_adk/templates/.claude/hooks/alfred/session_start__auto_cleanup.py +580 -0
- moai_adk/templates/.claude/hooks/alfred/session_start__show_project_info.py +298 -0
- moai_adk/templates/.claude/hooks/alfred/shared/core/__init__.py +170 -0
- moai_adk/templates/.claude/hooks/alfred/{core → shared/core}/checkpoint.py +3 -3
- moai_adk/templates/.claude/hooks/alfred/{core → shared/core}/context.py +5 -5
- moai_adk/templates/.claude/hooks/alfred/shared/core/project.py +749 -0
- moai_adk/templates/.claude/hooks/alfred/shared/core/tags.py +230 -0
- moai_adk/templates/.claude/hooks/alfred/shared/core/version_cache.py +198 -0
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/__init__.py +21 -0
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/daily_analysis.py +351 -0
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/notification.py +154 -0
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/session.py +174 -0
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/tool.py +87 -0
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/user.py +61 -0
- moai_adk/templates/.claude/hooks/alfred/user_prompt__jit_load_docs.py +111 -0
- moai_adk/templates/.claude/hooks/alfred/utils/__init__.py +1 -0
- moai_adk/templates/.claude/hooks/alfred/utils/hook_config.py +94 -0
- moai_adk/templates/.claude/hooks/alfred/utils/timeout.py +161 -0
- moai_adk/templates/.claude/output-styles/alfred/alfred-moai-adk-beginner.md +267 -0
- moai_adk/templates/.claude/output-styles/alfred/keating-personal-tutor.md +440 -0
- moai_adk/templates/.claude/output-styles/alfred/r2d2-agentic-coding.md +583 -0
- moai_adk/templates/.claude/settings.json +96 -14
- moai_adk/templates/.claude/skills/moai-alfred-agent-guide/SKILL.md +70 -0
- moai_adk/templates/.claude/skills/moai-alfred-agent-guide/examples.md +62 -0
- moai_adk/templates/.claude/skills/moai-alfred-agent-guide/reference.md +242 -0
- moai_adk/templates/.claude/skills/moai-alfred-ask-user-questions/SKILL.md +237 -0
- moai_adk/templates/.claude/skills/moai-alfred-ask-user-questions/examples.md +871 -0
- moai_adk/templates/.claude/skills/moai-alfred-ask-user-questions/reference.md +653 -0
- moai_adk/templates/.claude/skills/moai-alfred-clone-pattern/README.md +162 -0
- moai_adk/templates/.claude/skills/moai-alfred-clone-pattern/SKILL.md +227 -0
- moai_adk/templates/.claude/skills/moai-alfred-clone-pattern/examples.md +354 -0
- moai_adk/templates/.claude/skills/moai-alfred-clone-pattern/reference.md +158 -0
- moai_adk/templates/.claude/skills/moai-alfred-code-reviewer/SKILL.md +179 -79
- moai_adk/templates/.claude/skills/moai-alfred-code-reviewer/examples.md +117 -0
- moai_adk/templates/.claude/skills/moai-alfred-code-reviewer/scripts/pre-review-check.sh +62 -0
- moai_adk/templates/.claude/skills/moai-alfred-config-schema/SKILL.md +132 -0
- moai_adk/templates/.claude/skills/moai-alfred-config-schema/examples.md +28 -0
- moai_adk/templates/.claude/skills/moai-alfred-config-schema/reference.md +444 -0
- moai_adk/templates/.claude/skills/moai-alfred-context-budget/SKILL.md +62 -0
- moai_adk/templates/.claude/skills/moai-alfred-context-budget/examples.md +28 -0
- moai_adk/templates/.claude/skills/moai-alfred-context-budget/reference.md +405 -0
- moai_adk/templates/.claude/skills/moai-alfred-dev-guide/SKILL.md +51 -0
- moai_adk/templates/.claude/skills/moai-alfred-dev-guide/examples.md +355 -0
- moai_adk/templates/.claude/skills/moai-alfred-dev-guide/reference.md +239 -0
- moai_adk/templates/.claude/skills/moai-alfred-expertise-detection/SKILL.md +323 -0
- moai_adk/templates/.claude/skills/moai-alfred-expertise-detection/examples.md +286 -0
- moai_adk/templates/.claude/skills/moai-alfred-expertise-detection/reference.md +126 -0
- moai_adk/templates/.claude/skills/moai-alfred-issue-labels/SKILL.md +229 -0
- moai_adk/templates/.claude/skills/moai-alfred-issue-labels/examples.md +4 -0
- moai_adk/templates/.claude/skills/moai-alfred-issue-labels/reference.md +150 -0
- moai_adk/templates/.claude/skills/moai-alfred-language-detection/SKILL.md +87 -73
- moai_adk/templates/.claude/skills/moai-alfred-language-detection/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-alfred-language-detection/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-alfred-personas/README.md +42 -0
- moai_adk/templates/.claude/skills/moai-alfred-personas/SKILL.md +429 -0
- moai_adk/templates/.claude/skills/moai-alfred-personas/examples.md +520 -0
- moai_adk/templates/.claude/skills/moai-alfred-personas/reference.md +405 -0
- moai_adk/templates/.claude/skills/moai-alfred-practices/SKILL.md +89 -0
- moai_adk/templates/.claude/skills/moai-alfred-practices/examples.md +122 -0
- moai_adk/templates/.claude/skills/moai-alfred-practices/reference.md +369 -0
- moai_adk/templates/.claude/skills/moai-alfred-proactive-suggestions/SKILL.md +508 -0
- moai_adk/templates/.claude/skills/moai-alfred-proactive-suggestions/examples.md +481 -0
- moai_adk/templates/.claude/skills/moai-alfred-proactive-suggestions/reference.md +100 -0
- moai_adk/templates/.claude/skills/moai-alfred-rules/SKILL.md +77 -0
- moai_adk/templates/.claude/skills/moai-alfred-rules/examples.md +265 -0
- moai_adk/templates/.claude/skills/moai-alfred-rules/reference.md +539 -0
- moai_adk/templates/.claude/skills/moai-alfred-session-state/SKILL.md +320 -0
- moai_adk/templates/.claude/skills/moai-alfred-session-state/examples.md +4 -0
- moai_adk/templates/.claude/skills/moai-alfred-session-state/reference.md +84 -0
- moai_adk/templates/.claude/skills/moai-alfred-spec-authoring/README.md +137 -0
- moai_adk/templates/.claude/skills/moai-alfred-spec-authoring/SKILL.md +219 -0
- moai_adk/templates/.claude/skills/moai-alfred-spec-authoring/examples/validate-spec.sh +161 -0
- moai_adk/templates/.claude/skills/moai-alfred-spec-authoring/examples.md +541 -0
- moai_adk/templates/.claude/skills/moai-alfred-spec-authoring/reference.md +622 -0
- moai_adk/templates/.claude/skills/moai-alfred-todowrite-pattern/SKILL.md +19 -0
- moai_adk/templates/.claude/skills/moai-alfred-todowrite-pattern/examples.md +4 -0
- moai_adk/templates/.claude/skills/moai-alfred-todowrite-pattern/reference.md +211 -0
- moai_adk/templates/.claude/skills/moai-alfred-workflow/SKILL.md +288 -0
- moai_adk/templates/.claude/skills/moai-cc-agents/SKILL.md +269 -0
- moai_adk/templates/.claude/skills/moai-cc-agents/templates/agent-template.md +32 -0
- moai_adk/templates/.claude/skills/moai-cc-claude-md/SKILL.md +298 -0
- moai_adk/templates/.claude/skills/moai-cc-claude-md/templates/CLAUDE-template.md +26 -0
- moai_adk/templates/.claude/skills/moai-cc-commands/SKILL.md +307 -0
- moai_adk/templates/.claude/skills/moai-cc-commands/templates/command-template.md +21 -0
- moai_adk/templates/.claude/skills/moai-cc-hooks/SKILL.md +252 -0
- moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/pre-bash-check.sh +19 -0
- moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/preserve-permissions.sh +19 -0
- moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/validate-bash-command.py +24 -0
- moai_adk/templates/.claude/skills/moai-cc-mcp-plugins/SKILL.md +199 -0
- moai_adk/templates/.claude/skills/moai-cc-mcp-plugins/templates/settings-mcp-template.json +39 -0
- moai_adk/templates/.claude/skills/moai-cc-memory/SKILL.md +316 -0
- moai_adk/templates/.claude/skills/moai-cc-memory/templates/session-summary-template.md +18 -0
- moai_adk/templates/.claude/skills/moai-cc-settings/SKILL.md +263 -0
- moai_adk/templates/.claude/skills/moai-cc-settings/templates/settings-complete-template.json +30 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/CHECKLIST.md +482 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/EXAMPLES.md +303 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/INTERACTIVE-DISCOVERY.md +524 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/METADATA.md +477 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/PARALLEL-ANALYSIS-REPORT.md +429 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/PYTHON-VERSION-MATRIX.md +391 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/SKILL-FACTORY-WORKFLOW.md +431 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/SKILL-UPDATE-ADVISOR.md +577 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/SKILL.md +273 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/STEP-BY-STEP-GUIDE.md +466 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/STRUCTURE.md +583 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/WEB-RESEARCH.md +526 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/reference.md +608 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/scripts/generate-structure.sh +328 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/scripts/validate-skill.sh +312 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/templates/SKILL_TEMPLATE.md +245 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/templates/examples-template.md +285 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/templates/reference-template.md +278 -0
- moai_adk/templates/.claude/skills/moai-cc-skill-factory/templates/scripts-template.sh +303 -0
- moai_adk/templates/.claude/skills/moai-cc-skills/SKILL.md +291 -0
- moai_adk/templates/.claude/skills/moai-cc-skills/templates/SKILL-template.md +15 -0
- moai_adk/templates/.claude/skills/moai-change-logger/SKILL.md +563 -0
- moai_adk/templates/.claude/skills/moai-design-systems/SKILL.md +802 -0
- moai_adk/templates/.claude/skills/moai-design-systems/examples.md +1238 -0
- moai_adk/templates/.claude/skills/moai-design-systems/reference.md +673 -0
- moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +234 -43
- moai_adk/templates/.claude/skills/moai-domain-backend/examples.md +1633 -0
- moai_adk/templates/.claude/skills/moai-domain-backend/reference.md +660 -0
- moai_adk/templates/.claude/skills/moai-domain-cli-tool/SKILL.md +97 -69
- moai_adk/templates/.claude/skills/moai-domain-cli-tool/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-cli-tool/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-domain-data-science/SKILL.md +97 -72
- moai_adk/templates/.claude/skills/moai-domain-data-science/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-data-science/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +97 -74
- moai_adk/templates/.claude/skills/moai-domain-database/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-database/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-domain-devops/SKILL.md +98 -74
- moai_adk/templates/.claude/skills/moai-domain-devops/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-devops/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +102 -73
- moai_adk/templates/.claude/skills/moai-domain-frontend/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-frontend/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-domain-ml/SKILL.md +97 -73
- moai_adk/templates/.claude/skills/moai-domain-ml/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-ml/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-domain-mobile-app/SKILL.md +97 -67
- moai_adk/templates/.claude/skills/moai-domain-mobile-app/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-mobile-app/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-domain-security/SKILL.md +97 -79
- moai_adk/templates/.claude/skills/moai-domain-security/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-security/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-domain-web-api/SKILL.md +97 -71
- moai_adk/templates/.claude/skills/moai-domain-web-api/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-domain-web-api/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-essentials-debug/SKILL.md +265 -64
- moai_adk/templates/.claude/skills/moai-essentials-debug/examples.md +1064 -0
- moai_adk/templates/.claude/skills/moai-essentials-debug/reference.md +1047 -0
- moai_adk/templates/.claude/skills/moai-essentials-perf/SKILL.md +87 -78
- moai_adk/templates/.claude/skills/moai-essentials-perf/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-essentials-perf/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-essentials-refactor/SKILL.md +87 -70
- moai_adk/templates/.claude/skills/moai-essentials-refactor/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-essentials-refactor/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-essentials-review/SKILL.md +87 -86
- moai_adk/templates/.claude/skills/moai-essentials-review/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-essentials-review/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-foundation-ears/SKILL.md +80 -62
- moai_adk/templates/.claude/skills/moai-foundation-ears/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-foundation-ears/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-foundation-git/SKILL.md +207 -50
- moai_adk/templates/.claude/skills/moai-foundation-git/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-foundation-git/reference.md +29 -0
- moai_adk/templates/.claude/skills/moai-foundation-langs/SKILL.md +90 -71
- moai_adk/templates/.claude/skills/moai-foundation-langs/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-foundation-langs/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-foundation-specs/SKILL.md +78 -58
- moai_adk/templates/.claude/skills/moai-foundation-specs/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-foundation-specs/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-foundation-tags/SKILL.md +78 -51
- moai_adk/templates/.claude/skills/moai-foundation-tags/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-foundation-tags/reference.md +28 -0
- moai_adk/templates/.claude/skills/moai-foundation-trust/.!11330!examples.md +0 -0
- moai_adk/templates/.claude/skills/moai-foundation-trust/SKILL.md +253 -32
- moai_adk/templates/.claude/skills/moai-foundation-trust/examples.md +0 -0
- moai_adk/templates/.claude/skills/moai-foundation-trust/reference.md +1099 -0
- moai_adk/templates/.claude/skills/moai-jit-docs-enhanced/SKILL.md +460 -0
- moai_adk/templates/.claude/skills/moai-lang-c/SKILL.md +98 -74
- moai_adk/templates/.claude/skills/moai-lang-c/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-c/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-cpp/SKILL.md +98 -76
- moai_adk/templates/.claude/skills/moai-lang-cpp/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-cpp/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/SKILL.md +2358 -70
- moai_adk/templates/.claude/skills/moai-lang-csharp/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-csharp/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-dart/SKILL.md +2962 -68
- moai_adk/templates/.claude/skills/moai-lang-dart/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-dart/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-go/SKILL.md +1898 -70
- moai_adk/templates/.claude/skills/moai-lang-go/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-go/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-java/SKILL.md +1465 -68
- moai_adk/templates/.claude/skills/moai-lang-java/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-java/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-javascript/SKILL.md +2364 -66
- moai_adk/templates/.claude/skills/moai-lang-javascript/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-javascript/reference.md +32 -0
- moai_adk/templates/.claude/skills/moai-lang-kotlin/SKILL.md +1630 -69
- moai_adk/templates/.claude/skills/moai-lang-kotlin/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-kotlin/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-php/SKILL.md +89 -61
- moai_adk/templates/.claude/skills/moai-lang-php/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-php/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-python/SKILL.md +735 -66
- moai_adk/templates/.claude/skills/moai-lang-python/examples.md +624 -0
- moai_adk/templates/.claude/skills/moai-lang-python/reference.md +316 -0
- moai_adk/templates/.claude/skills/moai-lang-r/SKILL.md +97 -73
- moai_adk/templates/.claude/skills/moai-lang-r/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-r/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-ruby/SKILL.md +98 -73
- moai_adk/templates/.claude/skills/moai-lang-ruby/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-ruby/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-rust/SKILL.md +1834 -70
- moai_adk/templates/.claude/skills/moai-lang-rust/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-rust/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/SKILL.md +99 -74
- moai_adk/templates/.claude/skills/moai-lang-scala/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-scala/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-shell/SKILL.md +97 -74
- moai_adk/templates/.claude/skills/moai-lang-shell/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-shell/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-sql/SKILL.md +98 -74
- moai_adk/templates/.claude/skills/moai-lang-sql/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-sql/reference.md +31 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/SKILL.md +1959 -69
- moai_adk/templates/.claude/skills/moai-lang-swift/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-swift/reference.md +30 -0
- moai_adk/templates/.claude/skills/moai-lang-template/SKILL.md +348 -0
- moai_adk/templates/.claude/skills/moai-lang-template/VARIABLES.md +98 -0
- moai_adk/templates/.claude/skills/moai-lang-typescript/SKILL.md +1230 -66
- moai_adk/templates/.claude/skills/moai-lang-typescript/examples.md +29 -0
- moai_adk/templates/.claude/skills/moai-lang-typescript/reference.md +34 -0
- moai_adk/templates/.claude/skills/moai-learning-optimizer/SKILL.md +575 -0
- moai_adk/templates/.claude/skills/moai-project-batch-questions/README.md +50 -0
- moai_adk/templates/.claude/skills/moai-project-batch-questions/SKILL.md +304 -0
- moai_adk/templates/.claude/skills/moai-project-batch-questions/examples.md +417 -0
- moai_adk/templates/.claude/skills/moai-project-batch-questions/reference.md +704 -0
- moai_adk/templates/.claude/skills/moai-project-config-manager/README.md +87 -0
- moai_adk/templates/.claude/skills/moai-project-config-manager/SKILL.md +552 -0
- moai_adk/templates/.claude/skills/moai-project-config-manager/examples.md +1109 -0
- moai_adk/templates/.claude/skills/moai-project-config-manager/reference.md +514 -0
- moai_adk/templates/.claude/skills/moai-project-config-manager/validate.py +106 -0
- moai_adk/templates/.claude/skills/moai-project-documentation/README.md +11 -0
- moai_adk/templates/.claude/skills/moai-project-documentation/SKILL.md +622 -0
- moai_adk/templates/.claude/skills/moai-project-documentation/examples.md +20 -0
- moai_adk/templates/.claude/skills/moai-project-documentation/reference.md +12 -0
- moai_adk/templates/.claude/skills/moai-project-language-initializer/README.md +152 -0
- moai_adk/templates/.claude/skills/moai-project-language-initializer/SKILL.md +285 -0
- moai_adk/templates/.claude/skills/moai-project-language-initializer/examples.md +333 -0
- moai_adk/templates/.claude/skills/moai-project-language-initializer/reference.md +386 -0
- moai_adk/templates/.claude/skills/moai-project-template-optimizer/README.md +49 -0
- moai_adk/templates/.claude/skills/moai-project-template-optimizer/SKILL.md +319 -0
- moai_adk/templates/.claude/skills/moai-project-template-optimizer/examples.md +58 -0
- moai_adk/templates/.claude/skills/moai-project-template-optimizer/reference.md +123 -0
- moai_adk/templates/.claude/skills/moai-session-info/SKILL.md +314 -0
- moai_adk/templates/.claude/skills/moai-streaming-ui/SKILL.md +552 -0
- moai_adk/templates/.claude/skills/moai-tag-policy-validator/SKILL.md +570 -0
- moai_adk/templates/.git-hooks/pre-commit +66 -0
- moai_adk/templates/.git-hooks/pre-push +255 -0
- moai_adk/templates/.github/workflows/c-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/cpp-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/csharp-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/dart-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/go-tag-validation.yml +130 -0
- moai_adk/templates/.github/workflows/java-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/javascript-tag-validation.yml +135 -0
- moai_adk/templates/.github/workflows/kotlin-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/moai-gitflow.yml +166 -3
- moai_adk/templates/.github/workflows/moai-release-create.yml +100 -0
- moai_adk/templates/.github/workflows/moai-release-pipeline.yml +188 -0
- moai_adk/templates/.github/workflows/php-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/python-tag-validation.yml +118 -0
- moai_adk/templates/.github/workflows/release.yml +118 -0
- moai_adk/templates/.github/workflows/ruby-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/rust-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/shell-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/spec-issue-sync.yml +338 -0
- moai_adk/templates/.github/workflows/swift-tag-validation.yml +11 -0
- moai_adk/templates/.github/workflows/tag-report.yml +269 -0
- moai_adk/templates/.github/workflows/tag-validation.yml +186 -0
- moai_adk/templates/.github/workflows/typescript-tag-validation.yml +154 -0
- moai_adk/templates/.mcp.json +31 -0
- moai_adk/templates/.moai/config.json +80 -7
- moai_adk/templates/CLAUDE.md +562 -546
- moai_adk/utils/banner.py +5 -5
- moai_adk/utils/common.py +294 -0
- moai_adk/utils/link_validator.py +235 -0
- moai_adk/utils/logger.py +8 -8
- moai_adk/utils/user_experience.py +451 -0
- moai_adk-0.20.1.dist-info/METADATA +233 -0
- moai_adk-0.20.1.dist-info/RECORD +404 -0
- moai_adk/templates/.claude/hooks/alfred/README.md +0 -230
- moai_adk/templates/.claude/hooks/alfred/alfred_hooks.py +0 -156
- moai_adk/templates/.claude/hooks/alfred/core/__init__.py +0 -85
- moai_adk/templates/.claude/hooks/alfred/handlers/notification.py +0 -25
- moai_adk/templates/.claude/hooks/alfred/handlers/session.py +0 -92
- moai_adk/templates/.claude/hooks/alfred/handlers/tool.py +0 -70
- moai_adk/templates/.claude/hooks/alfred/handlers/user.py +0 -41
- moai_adk/templates/.claude/output-styles/alfred/agentic-coding.md +0 -636
- moai_adk/templates/.claude/output-styles/alfred/moai-adk-learning.md +0 -692
- moai_adk/templates/.claude/output-styles/alfred/study-with-alfred.md +0 -470
- moai_adk/templates/.claude/skills/moai-alfred-debugger-pro/SKILL.md +0 -103
- moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/SKILL.md +0 -103
- moai_adk/templates/.claude/skills/moai-alfred-git-workflow/SKILL.md +0 -95
- moai_adk/templates/.claude/skills/moai-alfred-performance-optimizer/SKILL.md +0 -105
- moai_adk/templates/.claude/skills/moai-alfred-refactoring-coach/SKILL.md +0 -97
- moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/SKILL.md +0 -97
- moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/SKILL.md +0 -90
- moai_adk/templates/.claude/skills/moai-alfred-trust-validation/SKILL.md +0 -99
- moai_adk/templates/.claude/skills/moai-alfred-tui-survey/SKILL.md +0 -87
- moai_adk/templates/.claude/skills/moai-alfred-tui-survey/examples.md +0 -62
- moai_adk/templates/.claude/skills/moai-claude-code/SKILL.md +0 -94
- moai_adk/templates/.claude/skills/moai-claude-code/examples.md +0 -513
- moai_adk/templates/.claude/skills/moai-claude-code/reference.md +0 -433
- moai_adk/templates/.claude/skills/moai-claude-code/templates/agent-full.md +0 -332
- moai_adk/templates/.claude/skills/moai-claude-code/templates/command-full.md +0 -384
- moai_adk/templates/.claude/skills/moai-claude-code/templates/plugin-full.json +0 -363
- moai_adk/templates/.claude/skills/moai-claude-code/templates/settings-full.json +0 -595
- moai_adk/templates/.claude/skills/moai-claude-code/templates/skill-full.md +0 -496
- moai_adk/templates/.claude/skills/moai-lang-clojure/SKILL.md +0 -100
- moai_adk/templates/.claude/skills/moai-lang-elixir/SKILL.md +0 -99
- moai_adk/templates/.claude/skills/moai-lang-haskell/SKILL.md +0 -100
- moai_adk/templates/.claude/skills/moai-lang-julia/SKILL.md +0 -98
- moai_adk/templates/.claude/skills/moai-lang-lua/SKILL.md +0 -98
- moai_adk/templates/.github/PULL_REQUEST_TEMPLATE.md +0 -69
- moai_adk/templates/.moai/memory/development-guide.md +0 -344
- moai_adk/templates/.moai/memory/gitflow-protection-policy.md +0 -220
- moai_adk/templates/.moai/memory/spec-metadata.md +0 -356
- moai_adk/templates/.moai/project/product.md +0 -161
- moai_adk/templates/.moai/project/structure.md +0 -156
- moai_adk/templates/.moai/project/tech.md +0 -227
- moai_adk/templates/__init__.py +0 -2
- moai_adk-0.4.5.dist-info/METADATA +0 -369
- moai_adk-0.4.5.dist-info/RECORD +0 -152
- {moai_adk-0.4.5.dist-info → moai_adk-0.20.1.dist-info}/WHEEL +0 -0
- {moai_adk-0.4.5.dist-info → moai_adk-0.20.1.dist-info}/entry_points.txt +0 -0
- {moai_adk-0.4.5.dist-info → moai_adk-0.20.1.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: moai-cc-mcp-plugins
|
|
3
|
+
description: "Configuring MCP Servers & Plugins for Claude Code. Set up Model Context Protocol servers (GitHub, Filesystem, Brave Search, SQLite). Configure OAuth, manage permissions, validate MCP structure. Use when integrating external tools, APIs, or expanding Claude Code capabilities."
|
|
4
|
+
allowed-tools: "Read, Write, Edit, Bash, Glob"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Skill Metadata
|
|
8
|
+
|
|
9
|
+
| Field | Value |
|
|
10
|
+
| ----- | ----- |
|
|
11
|
+
| Version | 1.0.0 |
|
|
12
|
+
| Tier | Ops |
|
|
13
|
+
| Auto-load | When setting up MCP servers |
|
|
14
|
+
|
|
15
|
+
## What It Does
|
|
16
|
+
|
|
17
|
+
MCP (Model Context Protocol) server 및 plugin 설정을 위한 전체 가이드를 제공합니다. GitHub, Filesystem, SQLite 등 다양한 MCP server의 OAuth 설정, 권한 관리, 구조 검증 방법을 다룹니다.
|
|
18
|
+
|
|
19
|
+
## When to Use
|
|
20
|
+
|
|
21
|
+
- 새로운 MCP server를 설정할 때
|
|
22
|
+
- OAuth 인증을 구성할 때
|
|
23
|
+
- External tool이나 API를 통합할 때
|
|
24
|
+
- MCP plugin의 permissions이나 구조를 검증할 때
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
# Configuring MCP Servers & Plugins
|
|
28
|
+
|
|
29
|
+
MCP servers extend Claude Code with external tool integrations. Each server provides tools that Claude can invoke directly.
|
|
30
|
+
|
|
31
|
+
## MCP Server Setup in settings.json
|
|
32
|
+
|
|
33
|
+
```json
|
|
34
|
+
{
|
|
35
|
+
"mcpServers": {
|
|
36
|
+
"github": {
|
|
37
|
+
"command": "npx",
|
|
38
|
+
"args": ["-y", "@anthropic-ai/mcp-server-github"],
|
|
39
|
+
"oauth": {
|
|
40
|
+
"clientId": "your-client-id",
|
|
41
|
+
"clientSecret": "your-client-secret",
|
|
42
|
+
"scopes": ["repo", "issues", "pull_requests"]
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
"filesystem": {
|
|
46
|
+
"command": "npx",
|
|
47
|
+
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/allowed/files"]
|
|
48
|
+
},
|
|
49
|
+
"sqlite": {
|
|
50
|
+
"command": "npx",
|
|
51
|
+
"args": ["-y", "@modelcontextprotocol/server-sqlite", "/path/to/database.db"]
|
|
52
|
+
},
|
|
53
|
+
"brave-search": {
|
|
54
|
+
"command": "npx",
|
|
55
|
+
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
|
|
56
|
+
"env": {
|
|
57
|
+
"BRAVE_SEARCH_API_KEY": "${BRAVE_SEARCH_API_KEY}"
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## Common MCP Servers
|
|
65
|
+
|
|
66
|
+
| Server | Purpose | Installation | Config |
|
|
67
|
+
|--------|---------|--------------|--------|
|
|
68
|
+
| **GitHub** | PR/issue management, code search | `@anthropic-ai/mcp-server-github` | OAuth required |
|
|
69
|
+
| **Filesystem** | Safe file access with path restrictions | `@modelcontextprotocol/server-filesystem` | Path whitelist required |
|
|
70
|
+
| **SQLite** | Database queries & migrations | `@modelcontextprotocol/server-sqlite` | DB file path |
|
|
71
|
+
| **Brave Search** | Web search integration | `@modelcontextprotocol/server-brave-search` | API key required |
|
|
72
|
+
|
|
73
|
+
## OAuth Configuration Pattern
|
|
74
|
+
|
|
75
|
+
```json
|
|
76
|
+
{
|
|
77
|
+
"oauth": {
|
|
78
|
+
"clientId": "your-client-id",
|
|
79
|
+
"clientSecret": "your-client-secret",
|
|
80
|
+
"scopes": ["repo", "issues"]
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
**Scope Minimization** (principle of least privilege):
|
|
86
|
+
- GitHub: `repo` (code access), `issues` (PR/issue access)
|
|
87
|
+
- NOT `admin`, NOT `delete_repo`
|
|
88
|
+
|
|
89
|
+
## Filesystem MCP: Path Whitelisting
|
|
90
|
+
|
|
91
|
+
```json
|
|
92
|
+
{
|
|
93
|
+
"filesystem": {
|
|
94
|
+
"command": "npx",
|
|
95
|
+
"args": [
|
|
96
|
+
"-y",
|
|
97
|
+
"@modelcontextprotocol/server-filesystem",
|
|
98
|
+
"${CLAUDE_PROJECT_DIR}/.moai",
|
|
99
|
+
"${CLAUDE_PROJECT_DIR}/src",
|
|
100
|
+
"${CLAUDE_PROJECT_DIR}/tests"
|
|
101
|
+
]
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
**Security Principle**: Explicitly list allowed directories, no wildcards.
|
|
107
|
+
|
|
108
|
+
## Plugin Marketplace Integration
|
|
109
|
+
|
|
110
|
+
```json
|
|
111
|
+
{
|
|
112
|
+
"extraKnownMarketplaces": [
|
|
113
|
+
{
|
|
114
|
+
"name": "company-plugins",
|
|
115
|
+
"url": "https://github.com/your-org/claude-plugins"
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"name": "community-plugins",
|
|
119
|
+
"url": "https://glama.ai/mcp/servers"
|
|
120
|
+
}
|
|
121
|
+
]
|
|
122
|
+
}
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
## MCP Health Check
|
|
126
|
+
|
|
127
|
+
```bash
|
|
128
|
+
# Inside Claude Code terminal
|
|
129
|
+
/mcp # List active MCP servers
|
|
130
|
+
/plugin validate # Validate plugin structure
|
|
131
|
+
/plugin install # Install from marketplace
|
|
132
|
+
/plugin enable github # Enable specific server
|
|
133
|
+
/plugin disable github # Disable specific server
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
## Environment Variables for MCP
|
|
137
|
+
|
|
138
|
+
```bash
|
|
139
|
+
# Set in ~/.bash_profile or .claude/config.json
|
|
140
|
+
export GITHUB_TOKEN="gh_xxxx..."
|
|
141
|
+
export BRAVE_SEARCH_API_KEY="xxxx..."
|
|
142
|
+
export ANTHROPIC_API_KEY="sk-ant-..."
|
|
143
|
+
|
|
144
|
+
# Launch Claude Code with env
|
|
145
|
+
GITHUB_TOKEN=gh_xxxx claude
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
## MCP Troubleshooting
|
|
149
|
+
|
|
150
|
+
| Issue | Cause | Fix |
|
|
151
|
+
|-------|-------|-----|
|
|
152
|
+
| Server not connecting | Invalid JSON in mcpServers | Validate with `jq .mcpServers settings.json` |
|
|
153
|
+
| OAuth error | Token expired or invalid scopes | Check `claude /usage`, regenerate token |
|
|
154
|
+
| Permission denied | Path not whitelisted | Add to Filesystem MCP args |
|
|
155
|
+
| Slow response | Network latency or server overload | Check server logs, reduce scope |
|
|
156
|
+
|
|
157
|
+
## Best Practices
|
|
158
|
+
|
|
159
|
+
✅ **DO**:
|
|
160
|
+
- Use environment variables for secrets
|
|
161
|
+
- Whitelist Filesystem paths explicitly
|
|
162
|
+
- Start with minimal scopes, expand only if needed
|
|
163
|
+
- Test MCP connection: `/mcp` command
|
|
164
|
+
|
|
165
|
+
❌ **DON'T**:
|
|
166
|
+
- Hardcode credentials in settings.json
|
|
167
|
+
- Use wildcard paths (`/` in Filesystem MCP)
|
|
168
|
+
- Install untrusted plugins
|
|
169
|
+
- Give admin scopes unnecessarily
|
|
170
|
+
|
|
171
|
+
## Plugin Custom Directory Structure
|
|
172
|
+
|
|
173
|
+
```
|
|
174
|
+
my-plugin/
|
|
175
|
+
├── .claude-plugin/
|
|
176
|
+
│ └── plugin.json
|
|
177
|
+
├── commands/
|
|
178
|
+
│ ├── deploy.md
|
|
179
|
+
│ └── rollback.md
|
|
180
|
+
├── agents/
|
|
181
|
+
│ └── reviewer.md
|
|
182
|
+
└── hooks/
|
|
183
|
+
└── pre-deploy-check.sh
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
## Validation Checklist
|
|
187
|
+
|
|
188
|
+
- [ ] All server paths are absolute
|
|
189
|
+
- [ ] OAuth secrets stored in env vars
|
|
190
|
+
- [ ] Filesystem paths are whitelisted
|
|
191
|
+
- [ ] No hardcoded tokens or credentials
|
|
192
|
+
- [ ] MCP server installed: `which npx`
|
|
193
|
+
- [ ] Health check passes: `/mcp`
|
|
194
|
+
- [ ] Scopes follow least-privilege principle
|
|
195
|
+
|
|
196
|
+
---
|
|
197
|
+
|
|
198
|
+
**Reference**: Claude Code MCP documentation
|
|
199
|
+
**Version**: 1.0.0
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
{
|
|
2
|
+
"mcpServers": {
|
|
3
|
+
"github": {
|
|
4
|
+
"command": "npx",
|
|
5
|
+
"args": ["-y", "@anthropic-ai/mcp-server-github"],
|
|
6
|
+
"oauth": {
|
|
7
|
+
"clientId": "${GITHUB_CLIENT_ID}",
|
|
8
|
+
"clientSecret": "${GITHUB_CLIENT_SECRET}",
|
|
9
|
+
"scopes": ["repo", "issues"]
|
|
10
|
+
}
|
|
11
|
+
},
|
|
12
|
+
"filesystem": {
|
|
13
|
+
"command": "npx",
|
|
14
|
+
"args": [
|
|
15
|
+
"-y",
|
|
16
|
+
"@modelcontextprotocol/server-filesystem",
|
|
17
|
+
"${CLAUDE_PROJECT_DIR}/.moai",
|
|
18
|
+
"${CLAUDE_PROJECT_DIR}/src"
|
|
19
|
+
]
|
|
20
|
+
},
|
|
21
|
+
"sqlite": {
|
|
22
|
+
"command": "npx",
|
|
23
|
+
"args": ["-y", "@modelcontextprotocol/server-sqlite", "/path/to/db.sqlite"]
|
|
24
|
+
},
|
|
25
|
+
"brave-search": {
|
|
26
|
+
"command": "npx",
|
|
27
|
+
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
|
|
28
|
+
"env": {
|
|
29
|
+
"BRAVE_SEARCH_API_KEY": "${BRAVE_SEARCH_API_KEY}"
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
},
|
|
33
|
+
"extraKnownMarketplaces": [
|
|
34
|
+
{
|
|
35
|
+
"name": "company-plugins",
|
|
36
|
+
"url": "https://github.com/your-org/claude-plugins"
|
|
37
|
+
}
|
|
38
|
+
]
|
|
39
|
+
}
|
|
@@ -0,0 +1,316 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: moai-cc-memory
|
|
3
|
+
description: "Managing Claude Code Session Memory & Context. Understand session context limits, use just-in-time retrieval, cache insights, manage memory files. Use when optimizing context usage, handling large projects, or implementing efficient workflows."
|
|
4
|
+
allowed-tools: "Read, Write, Glob, Bash"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Skill Metadata
|
|
8
|
+
|
|
9
|
+
| Field | Value |
|
|
10
|
+
| ----- | ----- |
|
|
11
|
+
| Version | 1.0.0 |
|
|
12
|
+
| Tier | Ops |
|
|
13
|
+
| Auto-load | When optimizing context usage |
|
|
14
|
+
|
|
15
|
+
## What It Does
|
|
16
|
+
|
|
17
|
+
Session memory 및 context 관리 전략을 제공합니다. Just-in-time retrieval, insight caching, memory file 관리를 통해 context window를 효율적으로 사용하는 방법을 다룹니다.
|
|
18
|
+
|
|
19
|
+
## When to Use
|
|
20
|
+
|
|
21
|
+
- Context limit에 도달할 위험이 있을 때
|
|
22
|
+
- 대규모 프로젝트에서 효율적인 context 관리가 필요할 때
|
|
23
|
+
- Session handoff를 준비할 때
|
|
24
|
+
- Memory file 구조를 설계하거나 정리할 때
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
# Managing Claude Code Session Memory & Context
|
|
28
|
+
|
|
29
|
+
Claude Code operates within context windows (~100K-200K tokens). Effective memory management ensures productive sessions without hitting limits.
|
|
30
|
+
|
|
31
|
+
## Context Budget Overview
|
|
32
|
+
|
|
33
|
+
```
|
|
34
|
+
Total Context Budget
|
|
35
|
+
├── System Prompt (~2K)
|
|
36
|
+
├── Tools & Instructions (~5K)
|
|
37
|
+
├── Session History (~30K)
|
|
38
|
+
├── Project Context (~40K)
|
|
39
|
+
└── Available for Response (~23K)
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Just-in-Time (JIT) Retrieval Strategy
|
|
43
|
+
|
|
44
|
+
### High-Freedom: Core Principles
|
|
45
|
+
|
|
46
|
+
**Principle 1: Pull Only What You Need**
|
|
47
|
+
- Don't load entire codebase upfront
|
|
48
|
+
- Load files relevant to immediate task
|
|
49
|
+
- Use Glob/Grep for targeted searches
|
|
50
|
+
- Cache results for reuse
|
|
51
|
+
|
|
52
|
+
**Principle 2: Prefer Explore Over Manual Hunting**
|
|
53
|
+
```bash
|
|
54
|
+
# ❌ Manual approach: Search many files, load all
|
|
55
|
+
rg "authenticate" src/ | head -20
|
|
56
|
+
|
|
57
|
+
# ✅ JIT approach: Use Explore agent
|
|
58
|
+
@agent-Explore "Find authentication implementation, analyze"
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
**Principle 3: Layered Context Summaries**
|
|
62
|
+
```
|
|
63
|
+
1. High-level brief (purpose, success criteria)
|
|
64
|
+
↓
|
|
65
|
+
2. Technical core (entry points, domain models)
|
|
66
|
+
↓
|
|
67
|
+
3. Edge cases (known bugs, constraints)
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Example: Feature Implementation
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
Task: "Add email verification to signup"
|
|
74
|
+
|
|
75
|
+
JIT Retrieval:
|
|
76
|
+
├── Read: User model (src/domain/user.ts)
|
|
77
|
+
├── Read: Signup endpoint (src/api/auth.ts)
|
|
78
|
+
├── Grep: "email" in tests (understand patterns)
|
|
79
|
+
├── Glob: Find email service (src/infra/email.*)
|
|
80
|
+
└── Cache: Signup flow diagram in memory
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## Medium-Freedom: Memory File Patterns
|
|
84
|
+
|
|
85
|
+
### Pattern 1: Session Summary Cache
|
|
86
|
+
|
|
87
|
+
**File**: `.moai/memory/session-summary.md`
|
|
88
|
+
|
|
89
|
+
```markdown
|
|
90
|
+
# Session Summary
|
|
91
|
+
|
|
92
|
+
## Current Task
|
|
93
|
+
- Feature: User email verification
|
|
94
|
+
- SPEC: AUTH-015
|
|
95
|
+
- Status: In RED phase (writing tests)
|
|
96
|
+
|
|
97
|
+
## Key Files
|
|
98
|
+
- Test: tests/auth/email_verify.test.ts
|
|
99
|
+
- Impl: src/domain/email_service.ts
|
|
100
|
+
- Config: src/config/email.ts
|
|
101
|
+
|
|
102
|
+
## Important Context
|
|
103
|
+
- Email service uses SendGrid API
|
|
104
|
+
- Verification tokens expire in 24h
|
|
105
|
+
- Already have similar flow for password reset (AUTH-012)
|
|
106
|
+
|
|
107
|
+
## Assumptions Made
|
|
108
|
+
- Assuming transactional emails only
|
|
109
|
+
- Async email sending OK
|
|
110
|
+
- No SMS verification needed
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### Pattern 2: Architecture Reference
|
|
114
|
+
|
|
115
|
+
**File**: `.moai/memory/architecture.md`
|
|
116
|
+
|
|
117
|
+
```markdown
|
|
118
|
+
# Architecture Reference
|
|
119
|
+
|
|
120
|
+
## Data Flow for Email Verification
|
|
121
|
+
|
|
122
|
+
```
|
|
123
|
+
User(Browser)
|
|
124
|
+
↓ [POST /auth/signup]
|
|
125
|
+
Server
|
|
126
|
+
↓ [Create user + token]
|
|
127
|
+
DB
|
|
128
|
+
↓ [sendEmail async]
|
|
129
|
+
Queue
|
|
130
|
+
↓ [Process job]
|
|
131
|
+
Email Service (SendGrid)
|
|
132
|
+
↓
|
|
133
|
+
User receives email with link
|
|
134
|
+
User clicks link
|
|
135
|
+
↓ [GET /auth/verify?token=...]
|
|
136
|
+
Server validates token
|
|
137
|
+
↓ [Mark user verified]
|
|
138
|
+
DB
|
|
139
|
+
↓
|
|
140
|
+
User logged in
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
## Module Boundaries
|
|
144
|
+
- `domain/`: Business logic (no framework)
|
|
145
|
+
- `api/`: HTTP endpoints only
|
|
146
|
+
- `infra/`: External services (SendGrid, DB)
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
### Pattern 3: Known Gotchas Cache
|
|
150
|
+
|
|
151
|
+
**File**: `.moai/memory/gotchas.md`
|
|
152
|
+
|
|
153
|
+
```markdown
|
|
154
|
+
# Common Pitfalls in This Project
|
|
155
|
+
|
|
156
|
+
## Email Service
|
|
157
|
+
- SendGrid has rate limit: 100 emails/sec per account
|
|
158
|
+
- Test mode uses fake email (won't actually send)
|
|
159
|
+
- Async job failures don't alert (check logs)
|
|
160
|
+
|
|
161
|
+
## Database
|
|
162
|
+
- Migrations must be reviewed before prod deploy
|
|
163
|
+
- Test DB is reset after each suite
|
|
164
|
+
- Foreign key constraints enforced (plan deletions)
|
|
165
|
+
|
|
166
|
+
## Authentication
|
|
167
|
+
- JWT tokens stored in httpOnly cookies (XSRF protected)
|
|
168
|
+
- Refresh token rotation required (not automatic)
|
|
169
|
+
- Session timeout: 7 days (hardcoded, not configurable yet)
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
## Low-Freedom: Memory Management Practices
|
|
173
|
+
|
|
174
|
+
### Practice 1: Caching Key Insights
|
|
175
|
+
|
|
176
|
+
```
|
|
177
|
+
After reading code:
|
|
178
|
+
1. Note file locations (~5 min read)
|
|
179
|
+
2. Summarize key logic (~2 min)
|
|
180
|
+
3. Write to memory file (~1 min)
|
|
181
|
+
4. Reference in next session
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
**Example memory entry**:
|
|
185
|
+
```
|
|
186
|
+
# USER-002: Email verification flow
|
|
187
|
+
|
|
188
|
+
## Key Code Locations
|
|
189
|
+
- Token generation: src/domain/user.ts:generateVerificationToken()
|
|
190
|
+
- Email sending: src/infra/email_service.ts:sendVerificationEmail()
|
|
191
|
+
- Token validation: src/api/auth.ts:POST /verify
|
|
192
|
+
|
|
193
|
+
## Logic Summary
|
|
194
|
+
1. User submits email → server generates token (16 chars, base64)
|
|
195
|
+
2. Token stored in DB with 24h expiry
|
|
196
|
+
3. Email sent async via SendGrid
|
|
197
|
+
4. User clicks link → token validated → user marked verified
|
|
198
|
+
5. Token deleted after use (can't reuse)
|
|
199
|
+
|
|
200
|
+
## Related TESTs
|
|
201
|
+
- tests/auth/email_verify.test.ts (GREEN phase - needs implementation)
|
|
202
|
+
- Similar flow: password reset (PASSWORD-001)
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
### Practice 2: Session Boundary Management
|
|
206
|
+
|
|
207
|
+
**Before switching between tasks**:
|
|
208
|
+
```markdown
|
|
209
|
+
# Session Handoff Note
|
|
210
|
+
|
|
211
|
+
## Completed
|
|
212
|
+
✓ RED phase: 3 test cases for email verification
|
|
213
|
+
✓ GREEN phase: Minimal implementation passing tests
|
|
214
|
+
✓ REFACTOR: Added input validation
|
|
215
|
+
|
|
216
|
+
## Status
|
|
217
|
+
- Current: Ready for /alfred:3-sync
|
|
218
|
+
- Next action: Run full test suite, then sync docs
|
|
219
|
+
|
|
220
|
+
## Context for Next Session
|
|
221
|
+
- SPEC: .moai/specs/SPEC-AUTH-015/spec.md
|
|
222
|
+
- Tests: tests/auth/email_verify.test.ts (all passing)
|
|
223
|
+
- Code: src/domain/email_service.py
|
|
224
|
+
- Database migration: pending (see migrations/ directory)
|
|
225
|
+
|
|
226
|
+
## Assumptions
|
|
227
|
+
- SendGrid API key set in .env
|
|
228
|
+
- Test mode uses mock email service
|
|
229
|
+
- Database schema includes email_verified_at column
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
### Practice 3: Cleanup Before Session End
|
|
233
|
+
|
|
234
|
+
```bash
|
|
235
|
+
# Remove unnecessary cached files
|
|
236
|
+
rm .moai/memory/temp-*.md
|
|
237
|
+
|
|
238
|
+
# Archive completed memory files
|
|
239
|
+
mv .moai/memory/feature-x-* .moai/memory/archive/
|
|
240
|
+
|
|
241
|
+
# Keep only active session memory
|
|
242
|
+
ls -la .moai/memory/
|
|
243
|
+
# session-summary.md (current)
|
|
244
|
+
# architecture.md (reference)
|
|
245
|
+
# gotchas.md (patterns)
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
## Memory File Organization
|
|
249
|
+
|
|
250
|
+
```
|
|
251
|
+
.moai/
|
|
252
|
+
├── memory/
|
|
253
|
+
│ ├── session-summary.md # Current session state
|
|
254
|
+
│ ├── architecture.md # System design reference
|
|
255
|
+
│ ├── gotchas.md # Common pitfalls
|
|
256
|
+
│ ├── spec-index.md # List of all SPECs + status
|
|
257
|
+
│ ├── api-reference.md # API endpoints quick lookup
|
|
258
|
+
│ └── archive/ # Completed session notes
|
|
259
|
+
│ ├── feature-auth-*
|
|
260
|
+
│ └── feature-api-*
|
|
261
|
+
└── specs/ # Requirement specifications
|
|
262
|
+
├── SPEC-AUTH-001/
|
|
263
|
+
├── SPEC-USER-002/
|
|
264
|
+
└── SPEC-API-003/
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
## Context Optimization Checklist
|
|
268
|
+
|
|
269
|
+
- [ ] Memory files describe architecture (not code)
|
|
270
|
+
- [ ] Session summary updated before handoff
|
|
271
|
+
- [ ] Key file locations cached (don't re-search)
|
|
272
|
+
- [ ] Assumptions explicitly documented
|
|
273
|
+
- [ ] No duplicate information between memory files
|
|
274
|
+
- [ ] Archive files moved after session completion
|
|
275
|
+
- [ ] All cached insights reference file paths
|
|
276
|
+
- [ ] Memory files are Markdown (human-readable)
|
|
277
|
+
|
|
278
|
+
## Best Practices
|
|
279
|
+
|
|
280
|
+
✅ **DO**:
|
|
281
|
+
- Use Explore for large searches
|
|
282
|
+
- Cache results in memory files
|
|
283
|
+
- Keep memory files < 500 lines each
|
|
284
|
+
- Update session-summary.md before switching tasks
|
|
285
|
+
- Reference memory files in handoff notes
|
|
286
|
+
|
|
287
|
+
❌ **DON'T**:
|
|
288
|
+
- Load entire src/ or docs/ directory upfront
|
|
289
|
+
- Duplicate context between memory files
|
|
290
|
+
- Store memory files outside `.moai/memory/`
|
|
291
|
+
- Leave stale session notes (archive or delete)
|
|
292
|
+
- Cache raw code (summarize logic instead)
|
|
293
|
+
|
|
294
|
+
## Commands for Memory Management
|
|
295
|
+
|
|
296
|
+
```bash
|
|
297
|
+
# View current session memory
|
|
298
|
+
cat .moai/memory/session-summary.md
|
|
299
|
+
|
|
300
|
+
# List all memory files
|
|
301
|
+
ls -la .moai/memory/
|
|
302
|
+
|
|
303
|
+
# Archive completed work
|
|
304
|
+
mv .moai/memory/feature-old-* .moai/memory/archive/
|
|
305
|
+
|
|
306
|
+
# Search memory files
|
|
307
|
+
grep -r "email verification" .moai/memory/
|
|
308
|
+
|
|
309
|
+
# Count context usage estimate
|
|
310
|
+
wc -w .moai/memory/*.md # Total words
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
---
|
|
314
|
+
|
|
315
|
+
**Reference**: Claude Code Context Management
|
|
316
|
+
**Version**: 1.0.0
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Session Summary
|
|
2
|
+
|
|
3
|
+
## Current Task
|
|
4
|
+
- Feature: [description]
|
|
5
|
+
- SPEC: [ID]
|
|
6
|
+
- Status: [phase]
|
|
7
|
+
|
|
8
|
+
## Key Files
|
|
9
|
+
- Test: [path]
|
|
10
|
+
- Impl: [path]
|
|
11
|
+
- Config: [path]
|
|
12
|
+
|
|
13
|
+
## Important Context
|
|
14
|
+
- [Key insights]
|
|
15
|
+
- [Related features]
|
|
16
|
+
|
|
17
|
+
## Assumptions Made
|
|
18
|
+
- [List assumptions]
|