@polymorphism-tech/morph-spec 4.11.1 → 4.13.0
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.
- package/README.md +21 -29
- package/bin/morph-spec.js +41 -24
- package/bin/task-manager.js +962 -1341
- package/bin/validate.js +1 -1
- package/claude-plugin.json +1 -1
- package/docs/CHEATSHEET.md +10 -11
- package/docs/QUICKSTART.md +15 -15
- package/framework/CLAUDE.md +5 -2
- package/framework/agents/README.md +3 -4
- package/framework/agents/ai-agents/ai-system-architect.md +6 -10
- package/framework/agents/architecture/seo-growth-hacker.md +166 -326
- package/framework/agents/architecture/standards-architect.md +21 -31
- package/framework/agents/backend/dotnet-senior.md +160 -86
- package/framework/agents/backend/ef-modeler.md +2 -6
- package/framework/agents/backend/hangfire-orchestrator.md +8 -9
- package/framework/agents/backend/ms-agent-expert.md +1 -1
- package/framework/agents/frontend/nextjs-expert.md +198 -133
- package/framework/agents/frontend/ui-ux-designer.md +226 -267
- package/framework/agents/infrastructure/infra-architect.md +191 -27
- package/framework/agents/integrations/clerk-auth.md +19 -26
- package/framework/agents/integrations/hangfire-integration.md +1 -4
- package/framework/agents.json +226 -1454
- package/framework/commands/morph-apply.md +4 -4
- package/framework/commands/morph-preflight.md +4 -26
- package/framework/commands/morph-proposal.md +19 -19
- package/framework/commands/morph-status.md +2 -2
- package/framework/commands/morph-troubleshoot.md +6 -13
- package/framework/hooks/README.md +1 -6
- package/framework/hooks/claude-code/post-tool-use/agent-complete.js +122 -0
- package/framework/hooks/claude-code/post-tool-use/validator-feedback.js +4 -6
- package/framework/hooks/claude-code/pre-compact/save-morph-context.js +12 -7
- package/framework/hooks/claude-code/pre-tool-use/enforce-phase-writes.js +2 -2
- package/framework/hooks/claude-code/pre-tool-use/protect-spec-files.js +2 -2
- package/framework/hooks/claude-code/pre-tool-use/task-tracking-guard.js +5 -10
- package/framework/hooks/claude-code/session-start/inject-morph-context.js +63 -30
- package/framework/hooks/claude-code/session-start/resume-context.js +77 -0
- package/framework/hooks/claude-code/statusline.py +4 -5
- package/framework/hooks/claude-code/stop/validate-completion.js +4 -4
- package/framework/hooks/claude-code/user-prompt/enrich-prompt.js +8 -8
- package/framework/hooks/shared/compact-restore.js +28 -5
- package/framework/hooks/shared/dispatch-helpers.js +17 -0
- package/framework/hooks/shared/phase-utils.js +4 -8
- package/framework/hooks/shared/state-reader.js +34 -3
- package/framework/phases.json +7 -45
- package/framework/rules/ai-agents-standards.md +15 -0
- package/framework/rules/asaas-standards.md +13 -0
- package/framework/rules/clerk-standards.md +13 -0
- package/framework/rules/csharp-standards.md +8 -4
- package/framework/rules/data-standards.md +18 -0
- package/framework/rules/dotnet-templates.md +87 -0
- package/framework/rules/frontend-standards.md +13 -13
- package/framework/rules/hangfire-standards.md +13 -0
- package/framework/rules/infrastructure-standards.md +27 -16
- package/framework/rules/morph-workflow.md +73 -13
- package/framework/rules/nextjs-standards.md +1 -0
- package/framework/rules/nextjs-templates.md +40 -0
- package/framework/rules/resend-standards.md +12 -0
- package/framework/rules/supabase-standards.md +29 -0
- package/framework/skills/README.md +6 -8
- package/framework/skills/level-0-meta/mcp-registry.json +21 -99
- package/framework/{standards/ai-agents/team-orchestration.md → skills/level-0-meta/morph-agent-teams/SKILL.md} +472 -479
- package/framework/skills/level-0-meta/morph-brainstorming/SKILL.md +28 -1
- package/framework/skills/level-0-meta/morph-checklist/SKILL.md +2 -2
- package/framework/skills/level-0-meta/morph-code-review/SKILL.md +1 -5
- package/framework/skills/level-0-meta/morph-code-review/scripts/scan-csharp.mjs +1 -1
- package/framework/skills/level-0-meta/morph-frontend-review/SKILL.md +23 -41
- package/framework/skills/level-0-meta/morph-init/SKILL.md +18 -14
- package/framework/skills/level-0-meta/morph-parallel-dispatch/SKILL.md +225 -0
- package/framework/skills/level-0-meta/morph-post-implementation/SKILL.md +20 -0
- package/framework/skills/level-0-meta/morph-tool-usage-guide/SKILL.md +4 -8
- package/framework/skills/level-0-meta/morph-tool-usage-guide/references/tools-per-phase.md +15 -59
- package/framework/skills/level-0-meta/morph-verification-before-completion/SKILL.md +7 -19
- package/framework/skills/level-0-meta/morph-verification-before-completion/scripts/check-phase-outputs.mjs +8 -8
- package/framework/skills/level-1-workflows/README.md +1 -1
- package/framework/skills/level-1-workflows/morph-phase-codebase-analysis/SKILL.md +49 -50
- package/framework/skills/level-1-workflows/morph-phase-design/SKILL.md +58 -124
- package/framework/skills/level-1-workflows/morph-phase-design/references/architecture-analysis-guide.md +5 -50
- package/framework/skills/level-1-workflows/morph-phase-design/references/spec-example.md +1 -1
- package/framework/skills/level-1-workflows/morph-phase-implement/SKILL.md +127 -159
- package/framework/skills/level-1-workflows/morph-phase-implement/prompts/implementer-prompt.md +4 -3
- package/framework/skills/level-1-workflows/morph-phase-implement/prompts/spec-reviewer-prompt.md +2 -2
- package/framework/skills/level-1-workflows/morph-phase-implement/references/recap-example.md +1 -1
- package/framework/skills/level-1-workflows/morph-phase-plan/SKILL.md +17 -13
- package/framework/skills/level-1-workflows/morph-phase-tasks/SKILL.md +22 -40
- package/framework/skills/level-1-workflows/morph-phase-tasks/references/task-planning-patterns.md +0 -2
- package/framework/skills/level-1-workflows/morph-phase-tasks/references/tasks-example.md +5 -5
- package/framework/skills/level-1-workflows/morph-phase-uiux/SKILL.md +275 -61
- package/framework/skills/level-1-workflows/morph-scope-escalation/SKILL.md +1 -1
- package/framework/squad-templates/backend-only.json +6 -6
- package/framework/squad-templates/frontend-only.json +17 -8
- package/framework/squad-templates/full-stack.json +29 -24
- package/framework/standards/STANDARDS.json +1021 -2338
- package/framework/standards/backend/dotnet/fluent-validation-vsa.md +200 -0
- package/framework/standards/backend/dotnet/result-pattern.md +213 -0
- package/framework/standards/backend/dotnet/scalar-ui.md +172 -0
- package/framework/standards/backend/dotnet/scrutor.md +158 -0
- package/framework/standards/backend/dotnet/vsa-handler-patterns.md +274 -0
- package/framework/standards/frontend/nextjs/motion-patterns.md +1 -1
- package/framework/standards/infrastructure/supabase/mcp-setup.md +83 -193
- package/framework/standards/integration/mcp/mcp-tools.md +91 -77
- package/framework/templates/IDE-SNIPPETS.md +2 -6
- package/framework/templates/README.md +709 -814
- package/framework/templates/REGISTRY.json +223 -762
- package/framework/templates/code/dotnet/abstractions/api-endpoint.cs +7 -0
- package/framework/templates/code/dotnet/abstractions/error.cs +60 -0
- package/framework/templates/code/dotnet/abstractions/handler.cs +12 -0
- package/framework/templates/code/dotnet/abstractions/result.cs +74 -0
- package/framework/templates/code/dotnet/backend/repository.cs +148 -141
- package/framework/templates/code/dotnet/constants/api-tags.cs +6 -0
- package/framework/templates/code/dotnet/exceptions/exception-handler.cs +32 -0
- package/framework/templates/code/dotnet/extensions/database-extensions.cs +20 -0
- package/framework/templates/code/dotnet/extensions/handler-registration.cs +38 -0
- package/framework/templates/code/dotnet/extensions/health-checks.cs +24 -0
- package/framework/templates/code/dotnet/extensions/map-endpoints.cs +35 -0
- package/framework/templates/code/dotnet/extensions/result-extensions.cs +29 -0
- package/framework/templates/code/dotnet/feature/endpoint.cs.hbs +21 -0
- package/framework/templates/code/dotnet/feature/entity.cs.hbs +8 -0
- package/framework/templates/code/dotnet/feature/errors.cs.hbs +8 -0
- package/framework/templates/code/dotnet/feature/handler.cs.hbs +24 -0
- package/framework/templates/code/dotnet/feature/request.cs.hbs +4 -0
- package/framework/templates/code/dotnet/feature/response.cs.hbs +4 -0
- package/framework/templates/code/dotnet/feature/validator.cs.hbs +15 -0
- package/framework/templates/code/dotnet/jobs/job.cs +21 -17
- package/framework/templates/code/dotnet/pipelines/logging-decorator.cs +31 -0
- package/framework/templates/code/dotnet/pipelines/validation-decorator.cs +97 -0
- package/framework/templates/code/dotnet/test.cs +192 -106
- package/framework/templates/context/ARCHITECTURE.md +89 -0
- package/framework/templates/context/CONTEXT-FEATURE.md +2 -2
- package/framework/templates/context/CONTEXT.md +180 -181
- package/framework/templates/context/design-system.md +342 -211
- package/framework/templates/docs/onboarding.md +2 -3
- package/framework/templates/docs/proposal.md +171 -182
- package/framework/templates/docs/spec.md +1 -3
- package/framework/templates/docs/ui-components.md +0 -72
- package/framework/templates/examples/design-system-examples.md +4 -4
- package/framework/templates/feature/decisions.md +0 -66
- package/framework/templates/feature/recap.md +1 -2
- package/framework/templates/infrastructure/github/README.md +56 -593
- package/framework/templates/integrations/clerk-config.cs +0 -41
- package/framework/templates/meta-prompts/parallel-workers/parallel-worker.md +2 -2
- package/framework/templates/meta-prompts/squad-leaders/backend-squad.md +1 -2
- package/framework/templates/meta-prompts/squad-leaders/frontend-squad.md +83 -126
- package/framework/templates/meta-prompts/validators/pre-commit-validator.md +2 -2
- package/framework/templates/project/validate.js +2 -4
- package/framework/templates/ui/design-system.css +1 -1
- package/framework/workflows/README.md +8 -8
- package/framework/workflows/configs/fast-track.json +51 -0
- package/framework/workflows/configs/full.json +68 -0
- package/framework/workflows/configs/standard.json +7 -3
- package/framework/workflows/docs/STORY-DRIVEN-DEVELOPMENT.md +1 -1
- package/framework/workflows/docs/enforcement-pipeline.md +18 -19
- package/framework/workflows/docs/full-morph.md +69 -76
- package/framework/workflows/docs/standard.md +49 -44
- package/framework/workflows/docs/ui-refresh.md +1 -1
- package/package.json +3 -3
- package/src/commands/agents/dispatch-agents.js +55 -116
- package/src/commands/context/context-refresh.js +79 -0
- package/src/commands/mcp/mcp-setup.js +28 -6
- package/src/commands/phase/phase-reset.js +1 -1
- package/src/commands/project/doctor.js +10 -32
- package/src/commands/project/init.js +32 -1
- package/src/commands/project/status.js +6 -12
- package/src/commands/scaffold/scaffold.js +131 -0
- package/src/commands/scope/escalate.js +1 -1
- package/src/commands/state/advance-phase.js +15 -29
- package/src/commands/state/state.js +20 -5
- package/src/commands/tasks/task.js +0 -30
- package/src/commands/validation/validate-feature.js +3 -10
- package/src/core/paths/output-schema.js +12 -13
- package/src/core/state/phase-state-machine.js +211 -217
- package/src/core/state/state-manager.js +9 -9
- package/src/lib/agents/agents-manager.js +2 -2
- package/src/lib/agents/output-collector.js +1 -2
- package/src/lib/detectors/design-system-detector.js +4 -4
- package/src/lib/detectors/index.js +1 -11
- package/src/lib/generators/architecture-scanner.js +640 -0
- package/src/lib/generators/context-generator.js +3 -3
- package/src/lib/generators/design-system-generator.js +508 -298
- package/src/lib/generators/index.js +12 -10
- package/src/lib/generators/metadata-extractor.js +386 -387
- package/src/lib/generators/recap-generator.js +4 -4
- package/src/lib/generators/scaffold-generator.js +317 -0
- package/src/lib/generators/settings-generator.js +0 -1
- package/src/lib/phase-chain/phase-validator.js +64 -42
- package/src/lib/stack/stack-profile.js +2 -2
- package/src/lib/standards/digest-builder.js +72 -285
- package/src/lib/tasks/task-parser.js +11 -5
- package/src/lib/validators/architecture/architecture-validator.js +259 -387
- package/src/lib/validators/content/content-validator.js +287 -287
- package/src/lib/validators/css/css-validator.js +340 -352
- package/src/lib/validators/design-system/design-system-validator.js +11 -5
- package/src/lib/validators/packages/package-validator.js +347 -360
- package/src/lib/validators/shared/issue-counter.js +14 -18
- package/src/lib/validators/validation-runner.js +3 -19
- package/src/scripts/setup-infra.js +1 -1
- package/src/utils/agents-installer.js +24 -3
- package/src/utils/file-copier.js +1 -0
- package/src/utils/hooks-installer.js +21 -19
- package/src/utils/skills-installer.js +178 -178
- package/framework/agents/architecture/prompt-engineer.md +0 -195
- package/framework/agents/backend/api-designer.md +0 -106
- package/framework/agents/frontend/blazor-builder.md +0 -229
- package/framework/agents/frontend/nextjs-ui-specialist.md +0 -218
- package/framework/agents/infrastructure/azure-architect.md +0 -150
- package/framework/agents/infrastructure/azure-deploy-specialist.md +0 -707
- package/framework/agents/infrastructure/bicep-architect.md +0 -132
- package/framework/agents/infrastructure/container-specialist.md +0 -137
- package/framework/agents/infrastructure/devops-engineer.md +0 -126
- package/framework/agents/integrations/azure-identity.md +0 -148
- package/framework/agents/quality/code-analyzer.md +0 -239
- package/framework/agents/quality/testing-specialist.md +0 -130
- package/framework/hooks/claude-code/notification/approval-reminder.js +0 -57
- package/framework/hooks/claude-code/post-tool-use/context-refresh.js +0 -109
- package/framework/hooks/claude-code/post-tool-use/skill-reminder.js +0 -78
- package/framework/index/troubleshooting-index.json +0 -184
- package/framework/rules/testing-standards.md +0 -14
- package/framework/skills/level-0-meta/morph-replicate/SKILL.md +0 -230
- package/framework/skills/level-0-meta/morph-replicate/references/blazor-html-mapping.md +0 -70
- package/framework/skills/level-1-workflows/morph-phase-clarify/SKILL.md +0 -256
- package/framework/skills/level-1-workflows/morph-phase-clarify/references/clarifications-example.md +0 -117
- package/framework/skills/level-1-workflows/morph-phase-setup/SKILL.md +0 -269
- package/framework/standards/ai-agents/blazor-ui.md +0 -364
- package/framework/standards/architecture/ddd/aggregates.md +0 -120
- package/framework/standards/architecture/ddd/bounded-contexts.md +0 -105
- package/framework/standards/architecture/ddd/complexity-levels.md +0 -108
- package/framework/standards/architecture/ddd/entities.md +0 -99
- package/framework/standards/architecture/ddd/ubiquitous-language.md +0 -58
- package/framework/standards/architecture/ddd/value-objects.md +0 -124
- package/framework/standards/backend/api/minimal-api.md +0 -494
- package/framework/standards/backend/api/rest.md +0 -492
- package/framework/standards/backend/authentication/passkeys.md +0 -428
- package/framework/standards/backend/database/ef-core.md +0 -199
- package/framework/standards/backend/database/migrations.md +0 -393
- package/framework/standards/backend/database/repository-patterns.md +0 -528
- package/framework/standards/backend/dotnet/async.md +0 -366
- package/framework/standards/backend/dotnet/core.md +0 -117
- package/framework/standards/backend/dotnet/di.md +0 -439
- package/framework/standards/backend/dotnet/program-cs-checklist.md +0 -92
- package/framework/standards/context/analytics.md +0 -96
- package/framework/standards/context/bundles.md +0 -110
- package/framework/standards/context/priming.md +0 -78
- package/framework/standards/core/architecture.md +0 -185
- package/framework/standards/core/coding.md +0 -214
- package/framework/standards/core/git-branching-strategy.md +0 -403
- package/framework/standards/core/git.md +0 -185
- package/framework/standards/core/testing.md +0 -295
- package/framework/standards/data/nosql/blob-storage.md +0 -102
- package/framework/standards/data/vector-search/azure-ai-search.md +0 -121
- package/framework/standards/frontend/blazor/design-checklist.md +0 -222
- package/framework/standards/frontend/blazor/fluent-ui-setup.md +0 -595
- package/framework/standards/frontend/blazor/fluent-ui.md +0 -137
- package/framework/standards/frontend/blazor/html-conversion.md +0 -184
- package/framework/standards/frontend/blazor/lifecycle.md +0 -195
- package/framework/standards/frontend/blazor/pitfalls.md +0 -198
- package/framework/standards/frontend/blazor/state.md +0 -191
- package/framework/standards/frontend/design-system/aesthetic-direction.md +0 -213
- package/framework/standards/infrastructure/azure/azure.md +0 -624
- package/framework/standards/infrastructure/azure/bicep/bicep-patterns.md +0 -422
- package/framework/standards/infrastructure/azure/devops/azure-devops-setup.md +0 -516
- package/framework/standards/infrastructure/azure/devops/local-development.md +0 -520
- package/framework/standards/infrastructure/azure/services/functions.md +0 -486
- package/framework/standards/infrastructure/azure/services/service-bus.md +0 -459
- package/framework/standards/infrastructure/azure/services/storage.md +0 -407
- package/framework/standards/infrastructure/vercel/vercel-database.md +0 -106
- package/framework/standards/integration/api/graphql.md +0 -91
- package/framework/standards/integration/api/grpc.md +0 -114
- package/framework/standards/integration/api/rest-design.md +0 -95
- package/framework/standards/integration/event-driven/cqrs.md +0 -101
- package/framework/standards/integration/event-driven/event-sourcing.md +0 -124
- package/framework/standards/integration/event-driven/service-bus.md +0 -95
- package/framework/standards/observability/logging.md +0 -131
- package/framework/standards/observability/metrics.md +0 -121
- package/framework/standards/observability/monitoring.md +0 -114
- package/framework/standards/observability/tracing.md +0 -132
- package/framework/standards/workflows/parallel-execution.md +0 -112
- package/framework/standards/workflows/thread-management.md +0 -113
- package/framework/templates/code/dotnet/backend/service.cs +0 -139
- package/framework/templates/code/dotnet/contracts/Commands.cs +0 -74
- package/framework/templates/code/dotnet/contracts/Entities.cs +0 -25
- package/framework/templates/code/dotnet/contracts/Queries.cs +0 -74
- package/framework/templates/code/dotnet/contracts/api-contracts.cs +0 -173
- package/framework/templates/code/dotnet/contracts/contracts-level1.cs +0 -69
- package/framework/templates/code/dotnet/contracts/contracts-level2.cs +0 -86
- package/framework/templates/code/dotnet/contracts/contracts-level3.cs +0 -41
- package/framework/templates/code/dotnet/frontend/component.razor +0 -239
- package/framework/templates/infrastructure/azure/Dockerfile.example +0 -82
- package/framework/templates/infrastructure/azure/README.md +0 -286
- package/framework/templates/infrastructure/azure/app-insights.bicep +0 -63
- package/framework/templates/infrastructure/azure/app-service.bicep +0 -164
- package/framework/templates/infrastructure/azure/container-app-env.bicep +0 -49
- package/framework/templates/infrastructure/azure/container-app.bicep +0 -156
- package/framework/templates/infrastructure/azure/deploy-checklist.md +0 -426
- package/framework/templates/infrastructure/azure/deploy.ps1 +0 -229
- package/framework/templates/infrastructure/azure/deploy.sh +0 -208
- package/framework/templates/infrastructure/azure/key-vault.bicep +0 -91
- package/framework/templates/infrastructure/azure/main.bicep +0 -189
- package/framework/templates/infrastructure/azure/parameters.dev.json +0 -29
- package/framework/templates/infrastructure/azure/parameters.prod.json +0 -29
- package/framework/templates/infrastructure/azure/parameters.staging.json +0 -29
- package/framework/templates/infrastructure/azure/sql-database.bicep +0 -103
- package/framework/templates/infrastructure/azure/storage.bicep +0 -106
- package/framework/templates/infrastructure/github/actions/azure-auth/action.yml.hbs +0 -22
- package/framework/templates/infrastructure/github/workflows/deploy-azure-app-service.yml.hbs +0 -61
- package/framework/templates/integrations/azure-identity-config.cs +0 -288
- package/framework/templates/project-structure/dotnet-ddd.md +0 -70
- package/framework/templates/saas/subscription.cs +0 -347
- package/framework/templates/saas/tenant.cs +0 -338
- package/framework/templates/ui/FluentDesignTheme.cs +0 -149
- package/framework/templates/ui/MudTheme.cs +0 -281
- package/framework/workflows/configs/nodejs-cli.json +0 -40
- package/src/commands/standards/context-budget.js +0 -89
- package/src/lib/standards/index.js +0 -7
- package/src/lib/standards/standards-context-injector.js +0 -302
- package/src/lib/validators/blazor/blazor-concurrency-analyzer.js +0 -316
- package/src/lib/validators/blazor/blazor-state-validator.js +0 -279
- package/src/lib/validators/blazor/blazor-validator.js +0 -369
- package/src/lib/validators/blazor/index.js +0 -9
|
@@ -4,10 +4,14 @@ paths:
|
|
|
4
4
|
- "**/*.csproj"
|
|
5
5
|
stacks:
|
|
6
6
|
- dotnet
|
|
7
|
-
- blazor
|
|
8
7
|
---
|
|
9
8
|
|
|
10
|
-
# C# and .NET Standards
|
|
9
|
+
# C# and .NET VSA Standards
|
|
11
10
|
|
|
12
|
-
@.morph/framework/standards/
|
|
13
|
-
@.morph/framework/standards/backend/dotnet/
|
|
11
|
+
@.morph/framework/standards/architecture/vertical-slice/vertical-slice.md
|
|
12
|
+
@.morph/framework/standards/backend/dotnet/vsa-handler-patterns.md
|
|
13
|
+
@.morph/framework/standards/backend/dotnet/result-pattern.md
|
|
14
|
+
@.morph/framework/standards/backend/dotnet/fluent-validation-vsa.md
|
|
15
|
+
@.morph/framework/standards/backend/dotnet/scrutor.md
|
|
16
|
+
@.morph/framework/standards/backend/dotnet/scalar-ui.md
|
|
17
|
+
@.morph/framework/standards/backend/api/validation.md
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
---
|
|
2
|
+
paths:
|
|
3
|
+
- "**/*Cache*.cs"
|
|
4
|
+
- "**/*Redis*.cs"
|
|
5
|
+
- "**/*Cosmos*.cs"
|
|
6
|
+
- "**/*Vector*.cs"
|
|
7
|
+
- "**/*Embedding*.cs"
|
|
8
|
+
- "**/*Rag*.cs"
|
|
9
|
+
stacks:
|
|
10
|
+
- dotnet
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Data & Cache Standards
|
|
14
|
+
|
|
15
|
+
@.morph/framework/standards/data/nosql/cache/redis.md
|
|
16
|
+
@.morph/framework/standards/data/nosql/cosmos-db.md
|
|
17
|
+
@.morph/framework/standards/data/vector-search/rag-chunking.md
|
|
18
|
+
@.morph/framework/standards/backend/database/vector-search-rag.md
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
---
|
|
2
|
+
paths:
|
|
3
|
+
- "**/*.cs"
|
|
4
|
+
- "**/*.csproj"
|
|
5
|
+
stacks:
|
|
6
|
+
- dotnet
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# .NET Code Templates
|
|
10
|
+
|
|
11
|
+
When implementing .NET features, use these templates as reference patterns.
|
|
12
|
+
Read the template file to see the exact pattern, then generate code following it.
|
|
13
|
+
|
|
14
|
+
## Scaffold (preferred for new slices)
|
|
15
|
+
|
|
16
|
+
**Always use scaffold for new VSA slices — never create feature files manually.**
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
morph-spec scaffold dotnet <feature> <slice-name> [--namespace <ns>] [--dry-run]
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Examples:
|
|
23
|
+
```bash
|
|
24
|
+
morph-spec scaffold dotnet book create-book
|
|
25
|
+
morph-spec scaffold dotnet book get-book-by-id
|
|
26
|
+
morph-spec scaffold dotnet book update-book
|
|
27
|
+
morph-spec scaffold dotnet book delete-book
|
|
28
|
+
morph-spec scaffold dotnet book get-all-books
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Generates 7 files: endpoint, handler, request, response, validator + entity, errors (shared at feature level). Entity/errors auto-skipped if they already exist.
|
|
32
|
+
|
|
33
|
+
**Only use `template render` for individual files when adding to an existing slice.**
|
|
34
|
+
|
|
35
|
+
## VSA Feature Templates (Vertical Slice Architecture)
|
|
36
|
+
|
|
37
|
+
For each new feature slice, follow the patterns in these templates:
|
|
38
|
+
|
|
39
|
+
| Template | Path | Purpose |
|
|
40
|
+
|----------|------|---------|
|
|
41
|
+
| Endpoint | `.morph/framework/templates/code/dotnet/feature/endpoint.cs.hbs` | IApiEndpoint with MapEndpoint() |
|
|
42
|
+
| Handler | `.morph/framework/templates/code/dotnet/feature/handler.cs.hbs` | IHandler<TRequest, TResponse> |
|
|
43
|
+
| Request | `.morph/framework/templates/code/dotnet/feature/request.cs.hbs` | Sealed record DTO |
|
|
44
|
+
| Response | `.morph/framework/templates/code/dotnet/feature/response.cs.hbs` | Sealed record DTO |
|
|
45
|
+
| Validator | `.morph/framework/templates/code/dotnet/feature/validator.cs.hbs` | FluentValidation AbstractValidator |
|
|
46
|
+
| Entity | `.morph/framework/templates/code/dotnet/feature/entity.cs.hbs` | Domain entity |
|
|
47
|
+
| Errors | `.morph/framework/templates/code/dotnet/feature/errors.cs.hbs` | Error factory |
|
|
48
|
+
|
|
49
|
+
## Base Abstractions (read once per project setup)
|
|
50
|
+
|
|
51
|
+
| Template | Path | Purpose |
|
|
52
|
+
|----------|------|---------|
|
|
53
|
+
| IHandler | `.morph/framework/templates/code/dotnet/abstractions/handler.cs` | Handler interface |
|
|
54
|
+
| Result<T> | `.morph/framework/templates/code/dotnet/abstractions/result.cs` | Railway-oriented result |
|
|
55
|
+
| Error | `.morph/framework/templates/code/dotnet/abstractions/error.cs` | Error types |
|
|
56
|
+
| IApiEndpoint | `.morph/framework/templates/code/dotnet/abstractions/api-endpoint.cs` | Endpoint interface |
|
|
57
|
+
|
|
58
|
+
## Extensions & Pipeline (read once per project setup)
|
|
59
|
+
|
|
60
|
+
| Template | Path | Purpose |
|
|
61
|
+
|----------|------|---------|
|
|
62
|
+
| Handler Registration | `.morph/framework/templates/code/dotnet/extensions/handler-registration.cs` | Scrutor auto-discovery |
|
|
63
|
+
| Map Endpoints | `.morph/framework/templates/code/dotnet/extensions/map-endpoints.cs` | IApiEndpoint discovery |
|
|
64
|
+
| Result Extensions | `.morph/framework/templates/code/dotnet/extensions/result-extensions.cs` | Match() pattern |
|
|
65
|
+
| Database Config | `.morph/framework/templates/code/dotnet/extensions/database-extensions.cs` | EF Core + Npgsql |
|
|
66
|
+
| Health Checks | `.morph/framework/templates/code/dotnet/extensions/health-checks.cs` | Health endpoints |
|
|
67
|
+
| Validation Decorator | `.morph/framework/templates/code/dotnet/pipelines/validation-decorator.cs` | FluentValidation pipeline |
|
|
68
|
+
| Logging Decorator | `.morph/framework/templates/code/dotnet/pipelines/logging-decorator.cs` | Duration tracking |
|
|
69
|
+
| Exception Handler | `.morph/framework/templates/code/dotnet/exceptions/exception-handler.cs` | ProblemDetails |
|
|
70
|
+
| API Tags | `.morph/framework/templates/code/dotnet/constants/api-tags.cs` | Scalar/Swagger groups |
|
|
71
|
+
|
|
72
|
+
## Specialized Templates
|
|
73
|
+
|
|
74
|
+
| Template | Path | Purpose |
|
|
75
|
+
|----------|------|---------|
|
|
76
|
+
| Repository | `.morph/framework/templates/code/dotnet/backend/repository.cs` | EF Core repository |
|
|
77
|
+
| Migration | `.morph/framework/templates/code/dotnet/database/migration.cs` | EF Core migration |
|
|
78
|
+
| Hangfire Job | `.morph/framework/templates/code/dotnet/jobs/job.cs` | Background job |
|
|
79
|
+
| MAF Agent | `.morph/framework/templates/code/dotnet/jobs/agent.cs` | MS Agent Framework |
|
|
80
|
+
| Unit Test | `.morph/framework/templates/code/dotnet/test.cs` | xUnit AAA test |
|
|
81
|
+
| Contracts VSA | `.morph/framework/templates/code/dotnet/contracts/contracts-vsa.cs` | Full slice contracts |
|
|
82
|
+
|
|
83
|
+
## Usage
|
|
84
|
+
|
|
85
|
+
1. **Read the template** to see the exact pattern
|
|
86
|
+
2. **Generate code following the same structure** (naming, namespaces, imports)
|
|
87
|
+
3. Or render via CLI: `morph-spec template render <id> <output> '<variables>'`
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
---
|
|
2
|
-
paths:
|
|
3
|
-
- "**/*.
|
|
4
|
-
- "**/*.css"
|
|
5
|
-
- "**/*.scss"
|
|
6
|
-
stacks:
|
|
7
|
-
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Frontend Standards
|
|
11
|
-
|
|
12
|
-
@.morph/framework/standards/frontend/
|
|
13
|
-
@.morph/framework/standards/frontend/design-system/
|
|
1
|
+
---
|
|
2
|
+
paths:
|
|
3
|
+
- "**/*.tsx"
|
|
4
|
+
- "**/*.css"
|
|
5
|
+
- "**/*.scss"
|
|
6
|
+
stacks:
|
|
7
|
+
- nextjs
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Frontend Standards
|
|
11
|
+
|
|
12
|
+
@.morph/framework/standards/frontend/design-system/naming.md
|
|
13
|
+
@.morph/framework/standards/frontend/design-system/animations.md
|
|
@@ -1,16 +1,27 @@
|
|
|
1
|
-
---
|
|
2
|
-
paths:
|
|
3
|
-
- "
|
|
4
|
-
- "**/
|
|
5
|
-
- "
|
|
6
|
-
- "**/
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
1
|
+
---
|
|
2
|
+
paths:
|
|
3
|
+
- "**/Dockerfile*"
|
|
4
|
+
- "**/docker-compose*"
|
|
5
|
+
- "**/.github/**"
|
|
6
|
+
- "**/easypanel*"
|
|
7
|
+
stacks:
|
|
8
|
+
- docker
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Infrastructure Standards
|
|
12
|
+
|
|
13
|
+
@.morph/framework/standards/infrastructure/docker/easypanel-deploy.md
|
|
14
|
+
|
|
15
|
+
## Infrastructure Templates
|
|
16
|
+
|
|
17
|
+
| Template | Path | Purpose |
|
|
18
|
+
|----------|------|---------|
|
|
19
|
+
| .NET API Dockerfile | `.morph/framework/templates/infrastructure/docker/dockerfile-api.dockerfile` | Multi-stage .NET |
|
|
20
|
+
| Next.js Dockerfile | `.morph/framework/templates/infrastructure/docker/dockerfile-web.dockerfile` | Multi-stage Next.js |
|
|
21
|
+
| Docker Compose | `.morph/framework/templates/infrastructure/docker/docker-compose.template.yml` | Local dev env |
|
|
22
|
+
| EasyPanel Config | `.morph/framework/templates/infrastructure/docker/easypanel.template.json` | Deployment config |
|
|
23
|
+
| .NET Build CI | `.morph/framework/templates/infrastructure/github/workflows/dotnet-build.yml.hbs` | CI workflow |
|
|
24
|
+
| Docker Push CI | `.morph/framework/templates/infrastructure/github/workflows/docker-build-push.yml.hbs` | Build & push |
|
|
25
|
+
| Deploy EasyPanel | `.morph/framework/templates/infrastructure/github/workflows/deploy-easypanel.yml.hbs` | CD webhook |
|
|
26
|
+
|
|
27
|
+
Read the template and adapt to your project structure.
|
|
@@ -14,19 +14,19 @@ stacks:
|
|
|
14
14
|
**NEVER skip to code without a specification.** Every feature must progress through phases:
|
|
15
15
|
|
|
16
16
|
1. **Proposal** — User story + acceptance criteria (`0-proposal/proposal.md`)
|
|
17
|
-
2. **Design** — Technical spec + C# contracts + decisions (`
|
|
17
|
+
2. **Design** — Technical spec + C# contracts + decisions (`2-design/`)
|
|
18
18
|
3. **Plan** — Detailed implementation plan (`3-plan/plan.md`)
|
|
19
19
|
4. **Tasks** — Atomic task list (`4-tasks/tasks.md`)
|
|
20
20
|
5. **Implement** — Code + recap (`5-implement/recap.md`)
|
|
21
21
|
|
|
22
|
-
UI-heavy features also include **UI/UX** phase (`
|
|
22
|
+
UI-heavy features also include **UI/UX** phase (`1-ui/`) between Design and Tasks.
|
|
23
23
|
|
|
24
24
|
---
|
|
25
25
|
|
|
26
26
|
## Phase Sequence
|
|
27
27
|
|
|
28
28
|
```
|
|
29
|
-
proposal →
|
|
29
|
+
proposal → [uiux] → design → plan → tasks → implement → [sync]
|
|
30
30
|
```
|
|
31
31
|
|
|
32
32
|
Use `morph-spec status {feature}` to see current phase and pending approval gates.
|
|
@@ -64,7 +64,6 @@ Use `morph-spec state mark-output <feature> <type>` with one of these exact type
|
|
|
64
64
|
| `contracts` | design | — |
|
|
65
65
|
| `contractsVsa` | design | `contracts-vsa` |
|
|
66
66
|
| `decisions` | design | — |
|
|
67
|
-
| `clarifications` | clarify | — |
|
|
68
67
|
| `plan` | plan | — |
|
|
69
68
|
| `tasks` | tasks | — |
|
|
70
69
|
| `uiDesignSystem` | uiux | `ui-design-system` |
|
|
@@ -82,10 +81,10 @@ All outputs go in `.morph/features/{feature}/`:
|
|
|
82
81
|
| Phase | Path |
|
|
83
82
|
|-------|------|
|
|
84
83
|
| Proposal | `0-proposal/proposal.md` |
|
|
85
|
-
|
|
|
86
|
-
|
|
|
87
|
-
|
|
|
88
|
-
|
|
|
84
|
+
| UI Design | `1-ui/design-system.md`, `mockups.md`, `components.md`, `flows.md` |
|
|
85
|
+
| Spec | `2-design/spec.md` |
|
|
86
|
+
| Contracts | `2-design/contracts.cs` |
|
|
87
|
+
| Decisions | `2-design/decisions.md` |
|
|
89
88
|
| Plan | `3-plan/plan.md` |
|
|
90
89
|
| Tasks | `4-tasks/tasks.md` |
|
|
91
90
|
| Recap | `5-implement/recap.md` |
|
|
@@ -104,11 +103,10 @@ Run a checkpoint every 3 completed tasks:
|
|
|
104
103
|
|
|
105
104
|
## Approval Gates
|
|
106
105
|
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
Check approval status: `morph-spec approval-status {feature}`
|
|
106
|
+
Before completing any phase, verify pending approval gates:
|
|
107
|
+
- `morph-spec approval-status <feature>` — check which gates are pending
|
|
108
|
+
- `morph-spec approve <feature> <gate>` — approve a gate (design, plan, tasks, uiux)
|
|
109
|
+
- Gates must be approved before advancing to the next phase
|
|
112
110
|
|
|
113
111
|
---
|
|
114
112
|
|
|
@@ -133,6 +131,68 @@ Do not modify test files to make a failing test pass when the implementation is
|
|
|
133
131
|
|
|
134
132
|
---
|
|
135
133
|
|
|
134
|
+
## Context Maintenance
|
|
135
|
+
|
|
136
|
+
After making structural changes (new packages, dependencies, project config changes), update the project context:
|
|
137
|
+
- Edit `.morph/context/README.md` — update Tech Stack, Architecture, Key Integrations sections
|
|
138
|
+
- Update `.morph/config/config.json` — update stack, architecture, integrations, paths
|
|
139
|
+
- Structural changes include: package.json, .csproj, next.config.*, tsconfig.json, docker-compose.yml
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## Spec-Driven Task Execution (implement phase)
|
|
144
|
+
|
|
145
|
+
BEFORE implementing ANY task during the implement phase:
|
|
146
|
+
|
|
147
|
+
1. **Read tasks.md** → identify the FR references for the current task (e.g., `[FR001, FR003]`)
|
|
148
|
+
2. **Read spec.md** → the sections for those specific FRs
|
|
149
|
+
3. **Read contracts.cs/.ts** → the DTOs/interfaces referenced by those FRs
|
|
150
|
+
4. Only then begin implementation
|
|
151
|
+
|
|
152
|
+
This is **NON-NEGOTIABLE**. The spec is the source of truth. Code that doesn't match the spec is a bug.
|
|
153
|
+
|
|
154
|
+
Every task in `tasks.md` MUST have FR cross-references in this format:
|
|
155
|
+
```
|
|
156
|
+
### T001: Create user endpoint [FR001, FR003]
|
|
157
|
+
- **Spec refs:** FR001 (user CRUD), FR003 (input validation)
|
|
158
|
+
- **Contracts:** CreateUserRequest, CreateUserResponse, UserErrors
|
|
159
|
+
- **Files:** Features/UserFeature/Create/Handler.cs, Validator.cs, Endpoint.cs
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
---
|
|
163
|
+
|
|
164
|
+
## Mandatory Skills per Phase
|
|
165
|
+
|
|
166
|
+
During implementation, these skills MUST be invoked at the specified triggers:
|
|
167
|
+
|
|
168
|
+
### Implement Phase
|
|
169
|
+
| Trigger | Skill | When |
|
|
170
|
+
|---------|-------|------|
|
|
171
|
+
| Before each task | `superpowers:test-driven-development` | Invoke BEFORE writing any code for a task |
|
|
172
|
+
| Before task done | `morph-verification-before-completion` | Invoke BEFORE running `morph-spec task done` |
|
|
173
|
+
| On bug/unexpected | `superpowers:systematic-debugging` | Invoke IF a bug or unexpected behavior is encountered |
|
|
174
|
+
| After all tasks | `morph-post-implementation` | Invoke AFTER all tasks completed |
|
|
175
|
+
| Before PR | `morph-checklist` | Invoke BEFORE creating pull request |
|
|
176
|
+
|
|
177
|
+
### Tasks Phase
|
|
178
|
+
| Trigger | Skill | When |
|
|
179
|
+
|---------|-------|------|
|
|
180
|
+
| On parallel tasks | `superpowers:dispatching-parallel-agents` | When parallel task groups are identified |
|
|
181
|
+
| Before completion | `morph-verification-before-completion` | Before completing the tasks phase |
|
|
182
|
+
|
|
183
|
+
These are MANDATORY. Use the `Skill()` tool. Do NOT skip.
|
|
184
|
+
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
## Scope Escalation
|
|
188
|
+
|
|
189
|
+
If during implementation a task reveals significantly more complexity than estimated:
|
|
190
|
+
- **Low impact:** `morph-spec task expand <feature> <task-id> --into "T00Xa: Sub" "T00Xb: Sub"`
|
|
191
|
+
- **Medium/High impact:** `/morph-scope-escalation <feature>`
|
|
192
|
+
- **Never** implement extra functionality within a task without registering it as a subtask
|
|
193
|
+
|
|
194
|
+
---
|
|
195
|
+
|
|
136
196
|
## Context Window Tip
|
|
137
197
|
|
|
138
198
|
When using 3+ MCPs, add `"experimental": { "mcpCliMode": true }` to `.claude/settings.json`.
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
---
|
|
2
|
+
paths:
|
|
3
|
+
- "**/*.tsx"
|
|
4
|
+
- "**/*.ts"
|
|
5
|
+
stacks:
|
|
6
|
+
- nextjs
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Next.js Code Templates
|
|
10
|
+
|
|
11
|
+
When implementing Next.js features, use these templates as reference patterns.
|
|
12
|
+
Read the template file to see the exact pattern, then generate code following it.
|
|
13
|
+
|
|
14
|
+
## Scaffold (preferred for new features)
|
|
15
|
+
|
|
16
|
+
**Always use scaffold for new feature pages — never create feature files manually.**
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
morph-spec scaffold nextjs <feature> [--dry-run]
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Examples:
|
|
23
|
+
```bash
|
|
24
|
+
morph-spec scaffold nextjs book
|
|
25
|
+
morph-spec scaffold nextjs user-profile
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Generates 4 files: page (Server Component), list component, form component, TanStack Query hook.
|
|
29
|
+
|
|
30
|
+
**Only use `template render` for individual files when modifying an existing feature.**
|
|
31
|
+
|
|
32
|
+
| Template | Path | Purpose |
|
|
33
|
+
|----------|------|---------|
|
|
34
|
+
| Server Page | `.morph/framework/templates/frontend/nextjs/page.tsx.hbs` | App Router server component |
|
|
35
|
+
| Client Component | `.morph/framework/templates/frontend/nextjs/client-component.tsx.hbs` | `'use client'` component |
|
|
36
|
+
| Feature Form | `.morph/framework/templates/frontend/nextjs/feature-form.tsx.hbs` | react-hook-form + Zod + shadcn |
|
|
37
|
+
| Custom Hook | `.morph/framework/templates/frontend/nextjs/use-feature.ts.hbs` | TanStack Query hook |
|
|
38
|
+
| Env Config | `.morph/framework/templates/frontend/nextjs/env.mjs.hbs` | T3 Env validation |
|
|
39
|
+
| TypeScript Config | `.morph/framework/templates/frontend/nextjs/tsconfig.json.hbs` | Path aliases |
|
|
40
|
+
| Dockerfile | `.morph/framework/templates/frontend/nextjs/Dockerfile.nextjs.hbs` | Multi-stage build |
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
---
|
|
2
|
+
paths:
|
|
3
|
+
- "**/*.sql"
|
|
4
|
+
- "**/supabase/**"
|
|
5
|
+
- "**/migrations/**"
|
|
6
|
+
stacks:
|
|
7
|
+
- supabase
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Supabase & PostgreSQL Standards
|
|
11
|
+
|
|
12
|
+
@.morph/framework/standards/infrastructure/supabase/supabase-auth.md
|
|
13
|
+
@.morph/framework/standards/infrastructure/supabase/supabase-rls.md
|
|
14
|
+
@.morph/framework/standards/infrastructure/supabase/supabase-storage.md
|
|
15
|
+
@.morph/framework/standards/infrastructure/supabase/supabase-pgvector.md
|
|
16
|
+
@.morph/framework/standards/infrastructure/supabase/mcp-setup.md
|
|
17
|
+
@.morph/framework/standards/infrastructure/supabase/supabase-custom-jwt.md
|
|
18
|
+
@.morph/framework/standards/backend/database/postgresql/database.md
|
|
19
|
+
|
|
20
|
+
## SQL & Migration Templates
|
|
21
|
+
|
|
22
|
+
| Template | Path | Purpose |
|
|
23
|
+
|----------|------|---------|
|
|
24
|
+
| Migration (full) | `.morph/framework/templates/code/sql/supabase-migration.template.sql` | RLS + indexes |
|
|
25
|
+
| Migration (simple) | `.morph/framework/templates/code/sql/supabase-migration.sql` | Basic migration |
|
|
26
|
+
| RLS Policy | `.morph/framework/templates/code/sql/rls-policy.sql` | Row Level Security |
|
|
27
|
+
| TS Types | `.morph/framework/templates/code/typescript/contracts.ts` | Supabase DB types |
|
|
28
|
+
|
|
29
|
+
Read the template to see the exact pattern for migrations, RLS policies, and type generation.
|
|
@@ -16,7 +16,7 @@ Each skill is a directory: `{name}/SKILL.md` + optional `scripts/`, `references/
|
|
|
16
16
|
| `brainstorming` | Collaborative ideation → spec via dialogue |
|
|
17
17
|
| `verification-before-completion` | Gate check before marking any work done |
|
|
18
18
|
| `code-review` | .NET/C# review checklist (naming, arch, async, DI, DTOs) |
|
|
19
|
-
|
|
19
|
+
|
|
20
20
|
|
|
21
21
|
### level-0-meta extras
|
|
22
22
|
|
|
@@ -36,19 +36,17 @@ Invoked internally by `/morph-proposal` and `/morph-apply`. Not user-invocable.
|
|
|
36
36
|
| Skill | Phase | Description |
|
|
37
37
|
|-------|-------|-------------|
|
|
38
38
|
| `phase-codebase-analysis` | 0 | Analyse existing codebase before design |
|
|
39
|
-
| `phase-
|
|
40
|
-
| `phase-
|
|
41
|
-
| `phase-
|
|
42
|
-
| `phase-
|
|
43
|
-
| `phase-
|
|
44
|
-
| `phase-implement` | 6 | Implement tasks with TDD + checkpoints + recap |
|
|
39
|
+
| `phase-design` | 2 | Technical spec + contracts + decisions + clarification |
|
|
40
|
+
| `phase-uiux` | 1 | UI/UX design system + mockups + components |
|
|
41
|
+
| `phase-plan` | 3 | Implementation plan with exact paths and TDD |
|
|
42
|
+
| `phase-tasks` | 4 | Break spec into ordered task list (tasks.md) |
|
|
43
|
+
| `phase-implement` | 5 | Implement tasks with TDD + checkpoints + recap |
|
|
45
44
|
|
|
46
45
|
### level-1-workflows extras
|
|
47
46
|
|
|
48
47
|
| Skill | File | Purpose |
|
|
49
48
|
|-------|------|---------|
|
|
50
49
|
| `phase-design` | `references/spec-example.md` | Filled-in spec.md example |
|
|
51
|
-
| `phase-clarify` | `references/clarifications-example.md` | Filled-in clarifications Q&A |
|
|
52
50
|
| `phase-tasks` | `references/tasks-example.md` | Filled-in tasks.md with T### format |
|
|
53
51
|
| `phase-tasks` | `scripts/validate-tasks.mjs` | Validate tasks.md structure and IDs |
|
|
54
52
|
| `phase-implement` | `references/recap-example.md` | Filled-in recap.md example |
|
|
@@ -56,35 +56,8 @@
|
|
|
56
56
|
"setupGuide": null
|
|
57
57
|
}
|
|
58
58
|
},
|
|
59
|
-
"supabase": {
|
|
60
|
-
"phases": ["design", "implement"],
|
|
61
|
-
"tools": ["list_tables", "get_table_schema", "get_relationships", "query"],
|
|
62
|
-
"detection": "mcpServers includes supabase",
|
|
63
|
-
"fallback": "Grep query files + Read type definitions for schema inference",
|
|
64
|
-
"usage": "Schema analysis, migrations, RLS policies, data operations",
|
|
65
|
-
"healthCheck": {
|
|
66
|
-
"toolPattern": "supabase",
|
|
67
|
-
"testCall": "Call list_tables with no parameters",
|
|
68
|
-
"testParams": {},
|
|
69
|
-
"successIndicator": "Returns a list of tables (even if empty)",
|
|
70
|
-
"failureHint": "Supabase MCP not responding. If using remote mode, re-authenticate via /mcp in Claude Code. If using local mode, verify SUPABASE_URL and SUPABASE_SERVICE_ROLE_KEY in .claude/settings.local.json."
|
|
71
|
-
},
|
|
72
|
-
"install": {
|
|
73
|
-
"autoInstall": false,
|
|
74
|
-
"transport": "http",
|
|
75
|
-
"config": {
|
|
76
|
-
"type": "http",
|
|
77
|
-
"url": "https://mcp.supabase.com/mcp"
|
|
78
|
-
},
|
|
79
|
-
"credentials": [],
|
|
80
|
-
"prerequisites": [],
|
|
81
|
-
"stackRelevance": ["nextjs-supabase", "supabase", "nextjs"],
|
|
82
|
-
"warnings": ["Uses OAuth — you will be prompted to authenticate via browser when first connecting.", "NEVER connect to PRODUCTION databases. Use local/dev environment only."],
|
|
83
|
-
"setupGuide": "Run: claude mcp add --transport http supabase https://mcp.supabase.com/mcp"
|
|
84
|
-
}
|
|
85
|
-
},
|
|
86
59
|
"github": {
|
|
87
|
-
"phases": ["
|
|
60
|
+
"phases": ["tasks", "implement"],
|
|
88
61
|
"tools": ["get_repo", "search_code", "create_issue", "create_pull_request", "search_issues"],
|
|
89
62
|
"detection": "mcpServers includes github",
|
|
90
63
|
"fallback": "Bash `gh` CLI commands",
|
|
@@ -153,90 +126,39 @@
|
|
|
153
126
|
"setupGuide": "Run: claude mcp add --transport http vercel https://mcp.vercel.com"
|
|
154
127
|
}
|
|
155
128
|
},
|
|
156
|
-
"
|
|
157
|
-
"phases": ["implement"],
|
|
158
|
-
"tools": ["
|
|
159
|
-
"detection": "mcpServers includes
|
|
160
|
-
"fallback": "
|
|
161
|
-
"usage": "
|
|
129
|
+
"asaas": {
|
|
130
|
+
"phases": ["design", "implement"],
|
|
131
|
+
"tools": ["enumerate_endpoints", "get_endpoint_schema", "generate_code_example", "execute_api_call", "search_docs"],
|
|
132
|
+
"detection": "mcpServers includes asaas",
|
|
133
|
+
"fallback": "WebFetch https://docs.asaas.com for API documentation",
|
|
134
|
+
"usage": "Asaas payment API docs, endpoint schemas, code examples, direct API calls",
|
|
162
135
|
"healthCheck": {
|
|
163
|
-
"toolPattern": "
|
|
164
|
-
"testCall": "
|
|
165
|
-
"testParams": {},
|
|
166
|
-
"successIndicator": "
|
|
167
|
-
"failureHint": "
|
|
136
|
+
"toolPattern": "asaas",
|
|
137
|
+
"testCall": "Search Asaas docs for 'payments' to verify connectivity",
|
|
138
|
+
"testParams": { "query": "payments" },
|
|
139
|
+
"successIndicator": "Returns documentation results about payment endpoints",
|
|
140
|
+
"failureHint": "Asaas MCP not responding. Verify the MCP is configured with url: https://docs.asaas.com/mcp"
|
|
168
141
|
},
|
|
169
142
|
"install": {
|
|
170
143
|
"autoInstall": false,
|
|
171
|
-
"transport": "
|
|
144
|
+
"transport": "http",
|
|
172
145
|
"config": {
|
|
173
|
-
"
|
|
174
|
-
"
|
|
146
|
+
"type": "http",
|
|
147
|
+
"url": "https://docs.asaas.com/mcp"
|
|
175
148
|
},
|
|
176
149
|
"credentials": [],
|
|
177
|
-
"prerequisites": [
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
"installUrl": "https://docs.docker.com/get-docker/"
|
|
182
|
-
}
|
|
183
|
-
],
|
|
184
|
-
"stackRelevance": ["dotnet", "blazor", "nextjs", "nodejs"],
|
|
185
|
-
"warnings": [],
|
|
186
|
-
"setupGuide": null
|
|
187
|
-
}
|
|
188
|
-
},
|
|
189
|
-
"azure": {
|
|
190
|
-
"phases": ["implement"],
|
|
191
|
-
"tools": ["deploy", "resource_management"],
|
|
192
|
-
"detection": "mcpServers includes azure",
|
|
193
|
-
"fallback": "Bash `az` CLI commands",
|
|
194
|
-
"usage": "Cloud resource management, deployment",
|
|
195
|
-
"healthCheck": {
|
|
196
|
-
"toolPattern": "azure",
|
|
197
|
-
"testCall": "Call any read-only Azure tool to verify credentials and connectivity",
|
|
198
|
-
"testParams": {},
|
|
199
|
-
"successIndicator": "Tool responds without authentication or subscription errors",
|
|
200
|
-
"failureHint": "Azure MCP not responding. Verify AZURE_SUBSCRIPTION_ID in .claude/settings.local.json and ensure 'az login' has been run. Check that Azure CLI is installed with 'az --version'."
|
|
201
|
-
},
|
|
202
|
-
"install": {
|
|
203
|
-
"autoInstall": false,
|
|
204
|
-
"transport": "stdio",
|
|
205
|
-
"config": {
|
|
206
|
-
"command": "cmd",
|
|
207
|
-
"args": ["/c", "npx", "-y", "@azure/mcp-server"],
|
|
208
|
-
"env": {
|
|
209
|
-
"AZURE_SUBSCRIPTION_ID": ""
|
|
210
|
-
}
|
|
211
|
-
},
|
|
212
|
-
"credentials": [
|
|
213
|
-
{
|
|
214
|
-
"name": "Azure Subscription ID",
|
|
215
|
-
"envVar": "AZURE_SUBSCRIPTION_ID",
|
|
216
|
-
"secret": false,
|
|
217
|
-
"helpUrl": "https://portal.azure.com/#blade/Microsoft_Azure_Billing/SubscriptionsBlade"
|
|
218
|
-
}
|
|
219
|
-
],
|
|
220
|
-
"prerequisites": [
|
|
221
|
-
{
|
|
222
|
-
"name": "Azure CLI",
|
|
223
|
-
"checkCommand": "az --version",
|
|
224
|
-
"installUrl": "https://learn.microsoft.com/en-us/cli/azure/install-azure-cli"
|
|
225
|
-
}
|
|
226
|
-
],
|
|
227
|
-
"stackRelevance": ["blazor", "dotnet", "azure"],
|
|
228
|
-
"warnings": [],
|
|
229
|
-
"setupGuide": null
|
|
150
|
+
"prerequisites": [],
|
|
151
|
+
"stackRelevance": ["asaas"],
|
|
152
|
+
"warnings": ["API call execution requires your Asaas access_token. Doc search works without authentication."],
|
|
153
|
+
"setupGuide": "Run: claude mcp add --transport http asaas https://docs.asaas.com/mcp"
|
|
230
154
|
}
|
|
231
155
|
}
|
|
232
156
|
},
|
|
233
157
|
"phaseMatrix": {
|
|
234
158
|
"proposal": ["context7"],
|
|
235
|
-
"setup": ["github"],
|
|
236
159
|
"uiux": ["playwright", "context7"],
|
|
237
|
-
"design": ["
|
|
238
|
-
"clarify": ["context7", "github"],
|
|
160
|
+
"design": ["context7", "github"],
|
|
239
161
|
"tasks": ["context7", "github"],
|
|
240
|
-
"implement": ["
|
|
162
|
+
"implement": ["context7", "playwright", "github", "vercel"]
|
|
241
163
|
}
|
|
242
164
|
}
|