@polymorphism-tech/morph-spec 3.0.0 → 3.1.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/CLAUDE.md +68 -400
- package/README.md +198 -76
- package/bin/detect-agents.js +227 -225
- package/bin/morph-spec.js +10 -0
- package/bin/render-template.js +303 -302
- package/bin/semantic-detect-agents.js +247 -246
- package/bin/{task-manager.js → task-manager.cjs} +12 -1
- package/bin/validate-agents-skills.js +257 -251
- package/bin/validate-agents.js +70 -69
- package/bin/validate-phase.js +263 -263
- package/docs/getting-started.md +3 -3
- package/package.json +3 -4
- package/scripts/reorganize-skills.cjs +175 -0
- package/scripts/validate-agents-structure.cjs +52 -0
- package/scripts/validate-skills.cjs +180 -0
- package/src/commands/create-story.js +354 -351
- package/src/commands/detect-agents.js +13 -2
- package/src/commands/detect.js +104 -104
- package/src/commands/state.js +334 -333
- package/src/commands/sync.js +167 -167
- package/src/commands/task.js +1 -1
- package/src/commands/update.js +13 -1
- package/src/lib/context-generator.js +7 -4
- package/{detectors → src/lib/detectors}/config-detector.js +223 -223
- package/{detectors → src/lib/detectors}/conversation-analyzer.js +163 -163
- package/{detectors → src/lib/detectors}/index.js +84 -84
- package/{detectors → src/lib/detectors}/standards-generator.js +275 -275
- package/src/lib/hook-executor.js +2 -1
- package/src/lib/stack-resolver.js +148 -0
- package/src/lib/standards-context-injector.js +4 -3
- package/src/lib/state-manager.js +21 -4
- package/src/lib/team-orchestrator.js +2 -1
- package/src/lib/troubleshoot-grep.js +13 -3
- package/src/lib/validation-runner.js +2 -1
- package/src/utils/file-copier.js +3 -1
- package/{content → stacks/blazor-azure}/.azure/README.md +293 -293
- package/{content → stacks/blazor-azure}/.azure/docs/azure-devops-setup.md +454 -454
- package/{content → stacks/blazor-azure}/.azure/docs/branch-strategy.md +398 -398
- package/{content → stacks/blazor-azure}/.azure/docs/local-development.md +515 -515
- package/{content → stacks/blazor-azure}/.azure/pipelines/pipeline-variables.yml +34 -34
- package/{content → stacks/blazor-azure}/.azure/pipelines/prod-pipeline.yml +319 -319
- package/{content → stacks/blazor-azure}/.azure/pipelines/staging-pipeline.yml +234 -234
- package/{content → stacks/blazor-azure}/.azure/pipelines/templates/build-dotnet.yml +75 -75
- package/{content → stacks/blazor-azure}/.azure/pipelines/templates/deploy-app-service.yml +94 -94
- package/{content → stacks/blazor-azure}/.azure/pipelines/templates/deploy-container-app.yml +120 -120
- package/{content → stacks/blazor-azure}/.azure/pipelines/templates/infra-deploy.yml +90 -90
- package/{content → stacks/blazor-azure}/.claude/commands/morph-archive.md +79 -79
- package/{content → stacks/blazor-azure}/.claude/commands/morph-deploy.md +529 -529
- package/{content → stacks/blazor-azure}/.claude/commands/morph-infra.md +209 -209
- package/{content → stacks/blazor-azure}/.claude/commands/morph-troubleshoot.md +1 -1
- package/{content → stacks/blazor-azure}/.claude/settings.local.json +15 -15
- package/{content → stacks/blazor-azure}/.claude/skills/level-1-workflows/phase-setup.md +1 -1
- package/{content/.claude/skills/specialists → stacks/blazor-azure/.claude/skills/level-2-domains/architecture}/prompt-engineer.md +189 -189
- package/{content/.claude/skills/specialists → stacks/blazor-azure/.claude/skills/level-2-domains/architecture}/seo-growth-hacker.md +320 -320
- package/{content/.claude/skills/infra → stacks/blazor-azure/.claude/skills/level-2-domains/infrastructure}/azure-deploy-specialist.md +699 -699
- package/{content → stacks/blazor-azure}/.morph/.morphversion +5 -5
- package/{content → stacks/blazor-azure}/.morph/archive/.gitkeep +25 -25
- package/{content → stacks/blazor-azure}/.morph/config/agents.json +7 -5
- package/{content → stacks/blazor-azure}/.morph/docs/STORY-DRIVEN-DEVELOPMENT.md +392 -392
- package/{content → stacks/blazor-azure}/.morph/docs/workflows/enforcement-pipeline.md +3 -3
- package/{content → stacks/blazor-azure}/.morph/examples/api-nextjs/README.md +241 -241
- package/{content → stacks/blazor-azure}/.morph/examples/api-nextjs/contracts.ts +307 -307
- package/{content → stacks/blazor-azure}/.morph/examples/api-nextjs/spec.md +399 -399
- package/{content → stacks/blazor-azure}/.morph/examples/api-nextjs/tasks.md +168 -168
- package/{content → stacks/blazor-azure}/.morph/examples/micro-saas/README.md +125 -125
- package/{content → stacks/blazor-azure}/.morph/examples/micro-saas/contracts.cs +358 -358
- package/{content → stacks/blazor-azure}/.morph/examples/micro-saas/decisions.md +246 -246
- package/{content → stacks/blazor-azure}/.morph/examples/micro-saas/spec.md +236 -236
- package/{content → stacks/blazor-azure}/.morph/examples/micro-saas/tasks.md +150 -150
- package/{content → stacks/blazor-azure}/.morph/examples/multi-agent/README.md +309 -309
- package/{content → stacks/blazor-azure}/.morph/examples/multi-agent/contracts.cs +433 -433
- package/{content → stacks/blazor-azure}/.morph/examples/multi-agent/spec.md +479 -479
- package/{content → stacks/blazor-azure}/.morph/examples/multi-agent/tasks.md +185 -185
- package/{content → stacks/blazor-azure}/.morph/examples/state-v3.json +188 -188
- package/{content → stacks/blazor-azure}/.morph/features/.gitkeep +25 -25
- package/{content → stacks/blazor-azure}/.morph/hooks/README.md +12 -12
- package/{content → stacks/blazor-azure}/.morph/hooks/pre-commit-all.sh +48 -48
- package/{content → stacks/blazor-azure}/.morph/hooks/pre-commit-specs.sh +49 -49
- package/{content → stacks/blazor-azure}/.morph/hooks/pre-commit-tests.sh +60 -60
- package/{content → stacks/blazor-azure}/.morph/project.md +160 -160
- package/{content → stacks/blazor-azure}/.morph/schemas/agent.schema.json +296 -296
- package/{content → stacks/blazor-azure}/.morph/specs/.gitkeep +20 -20
- package/{content → stacks/blazor-azure}/.morph/standards/agent-teams-workflow.md +2 -2
- package/{content → stacks/blazor-azure}/.morph/standards/coding.md +377 -377
- package/{content → stacks/blazor-azure}/.morph/standards/fluent-ui-setup.md +590 -590
- package/{content → stacks/blazor-azure}/.morph/standards/migration-guide.md +514 -514
- package/{content → stacks/blazor-azure}/.morph/standards/passkeys-auth.md +423 -423
- package/{content → stacks/blazor-azure}/.morph/standards/vector-search-rag.md +536 -536
- package/{content → stacks/blazor-azure}/.morph/state.json +17 -17
- package/{content → stacks/blazor-azure}/.morph/templates/FluentDesignTheme.cs +149 -149
- package/{content → stacks/blazor-azure}/.morph/templates/MudTheme.cs +281 -281
- package/{content → stacks/blazor-azure}/.morph/templates/component.razor +239 -239
- package/{content → stacks/blazor-azure}/.morph/templates/contracts.cs +217 -217
- package/{content → stacks/blazor-azure}/.morph/templates/design-system.css +226 -226
- package/{content → stacks/blazor-azure}/.morph/templates/infra/.dockerignore.example +89 -89
- package/{content → stacks/blazor-azure}/.morph/templates/infra/Dockerfile.example +82 -82
- package/{content → stacks/blazor-azure}/.morph/templates/infra/README.md +286 -286
- package/{content → stacks/blazor-azure}/.morph/templates/infra/app-insights.bicep +63 -63
- package/{content → stacks/blazor-azure}/.morph/templates/infra/app-service.bicep +164 -164
- package/{content → stacks/blazor-azure}/.morph/templates/infra/azure-pipelines-deploy.yml +480 -480
- package/{content → stacks/blazor-azure}/.morph/templates/infra/container-app-env.bicep +49 -49
- package/{content → stacks/blazor-azure}/.morph/templates/infra/container-app.bicep +156 -156
- package/{content → stacks/blazor-azure}/.morph/templates/infra/deploy.ps1 +229 -229
- package/{content → stacks/blazor-azure}/.morph/templates/infra/deploy.sh +208 -208
- package/{content → stacks/blazor-azure}/.morph/templates/infra/key-vault.bicep +91 -91
- package/{content → stacks/blazor-azure}/.morph/templates/infra/main.bicep +189 -189
- package/{content → stacks/blazor-azure}/.morph/templates/infra/parameters.dev.json +29 -29
- package/{content → stacks/blazor-azure}/.morph/templates/infra/parameters.prod.json +29 -29
- package/{content → stacks/blazor-azure}/.morph/templates/infra/parameters.staging.json +29 -29
- package/{content → stacks/blazor-azure}/.morph/templates/infra/sql-database.bicep +103 -103
- package/{content → stacks/blazor-azure}/.morph/templates/infra/storage.bicep +106 -106
- package/{content → stacks/blazor-azure}/.morph/templates/integrations/asaas-client.cs +387 -387
- package/{content → stacks/blazor-azure}/.morph/templates/integrations/asaas-webhook.cs +351 -351
- package/{content → stacks/blazor-azure}/.morph/templates/integrations/azure-identity-config.cs +288 -288
- package/{content → stacks/blazor-azure}/.morph/templates/integrations/clerk-config.cs +258 -258
- package/{content → stacks/blazor-azure}/.morph/templates/job.cs +171 -171
- package/{content → stacks/blazor-azure}/.morph/templates/migration.cs +83 -83
- package/{content → stacks/blazor-azure}/.morph/templates/repository.cs +141 -141
- package/{content → stacks/blazor-azure}/.morph/templates/saas/subscription.cs +347 -347
- package/{content → stacks/blazor-azure}/.morph/templates/saas/tenant.cs +338 -338
- package/{content → stacks/blazor-azure}/.morph/templates/service.cs +139 -139
- package/{content → stacks/blazor-azure}/.morph/templates/sprint-status.yaml +68 -68
- package/{content → stacks/blazor-azure}/.morph/templates/story.md +143 -143
- package/{content → stacks/blazor-azure}/.morph/templates/test.cs +239 -239
- package/{content → stacks/blazor-azure}/.morph/templates/ui-design-system.md +286 -286
- package/{content → stacks/blazor-azure}/.morph/templates/ui-flows.md +336 -336
- package/{content → stacks/blazor-azure}/.morph/templates/ui-mockups.md +133 -133
- package/{content → stacks/blazor-azure}/.morph/test-infra/example.bicep +59 -59
- package/{content → stacks/blazor-azure}/README.md +79 -79
- package/stacks/nextjs-supabase/.claude/skills/level-2-domains/backend/dotnet-supabase.md +244 -0
- package/stacks/nextjs-supabase/.claude/skills/level-2-domains/frontend/nextjs-supabase.md +335 -0
- package/stacks/nextjs-supabase/.claude/skills/level-2-domains/infrastructure/easypanel-deployer.md +189 -0
- package/stacks/nextjs-supabase/.claude/skills/level-2-domains/integrations/supabase-expert.md +170 -0
- package/stacks/nextjs-supabase/.morph/config/agents.json +345 -0
- package/stacks/nextjs-supabase/.morph/config/config.template.json +92 -0
- package/stacks/nextjs-supabase/.morph/docs/easypanel-setup.md +169 -0
- package/stacks/nextjs-supabase/.morph/docs/supabase-mcp-setup.md +247 -0
- package/stacks/nextjs-supabase/.morph/examples/crud-nextjs-supabase/README.md +697 -0
- package/stacks/nextjs-supabase/.morph/examples/crud-nextjs-supabase/spec.md +85 -0
- package/stacks/nextjs-supabase/.morph/examples/crud-nextjs-supabase/tasks.md +86 -0
- package/stacks/nextjs-supabase/.morph/examples/saas-nextjs-supabase/README.md +498 -0
- package/stacks/nextjs-supabase/.morph/examples/saas-nextjs-supabase/decisions.md +121 -0
- package/stacks/nextjs-supabase/.morph/examples/saas-nextjs-supabase/spec.md +138 -0
- package/stacks/nextjs-supabase/.morph/examples/saas-nextjs-supabase/tasks.md +162 -0
- package/stacks/nextjs-supabase/.morph/project.md +168 -0
- package/stacks/nextjs-supabase/.morph/standards/easypanel-deploy.md +191 -0
- package/stacks/nextjs-supabase/.morph/standards/nextjs-patterns.md +193 -0
- package/stacks/nextjs-supabase/.morph/standards/supabase-auth.md +171 -0
- package/stacks/nextjs-supabase/.morph/standards/supabase-pgvector.md +164 -0
- package/stacks/nextjs-supabase/.morph/standards/supabase-rls.md +179 -0
- package/stacks/nextjs-supabase/.morph/standards/supabase-storage.md +148 -0
- package/stacks/nextjs-supabase/.morph/templates/contracts.cs +173 -0
- package/stacks/nextjs-supabase/.morph/templates/contracts.ts +168 -0
- package/stacks/nextjs-supabase/.morph/templates/decisions.md +115 -0
- package/stacks/nextjs-supabase/.morph/templates/dockerfile-api.dockerfile +38 -0
- package/stacks/nextjs-supabase/.morph/templates/dockerfile-web.dockerfile +48 -0
- package/stacks/nextjs-supabase/.morph/templates/proposal.md +145 -0
- package/stacks/nextjs-supabase/.morph/templates/recap.md +134 -0
- package/stacks/nextjs-supabase/.morph/templates/rls-policy.sql +57 -0
- package/stacks/nextjs-supabase/.morph/templates/spec.md +231 -0
- package/stacks/nextjs-supabase/.morph/templates/supabase-migration.sql +100 -0
- package/stacks/nextjs-supabase/.morph/templates/tasks.md +257 -0
- package/stacks/nextjs-supabase/CLAUDE.md +149 -0
- package/stacks/nextjs-supabase/README.md +112 -0
- /package/{detectors → src/lib/detectors}/structure-detector.js +0 -0
- /package/{content → stacks/blazor-azure}/.claude/commands/morph-apply.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/commands/morph-preflight.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/commands/morph-proposal.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/commands/morph-status.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-0-meta/README.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-0-meta/code-review.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-0-meta/morph-checklist.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-0-meta/simulation-checklist.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-1-workflows/README.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-1-workflows/morph-replicate.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-1-workflows/phase-clarify.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-1-workflows/phase-design.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-1-workflows/phase-tasks.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-1-workflows/phase-uiux.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/README.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/ai-agents/ai-system-architect.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/architecture/po-pm-advisor.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/architecture/standards-architect.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/backend/dotnet-senior.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/backend/ef-modeler.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/backend/hangfire-orchestrator.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/backend/ms-agent-expert.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/frontend/blazor-builder.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/frontend/nextjs-expert.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/frontend/ui-ux-designer.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/infrastructure/azure-architect.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/infrastructure/bicep-architect.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/infrastructure/container-specialist.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/infrastructure/devops-engineer.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/integrations/asaas-financial.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/integrations/azure-identity.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/integrations/clerk-auth.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/integrations/resend-email.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/quality/code-analyzer.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-2-domains/quality/testing-specialist.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-3-technologies/README.md +0 -0
- /package/{content → stacks/blazor-azure}/.claude/skills/level-4-patterns/README.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/config/config.template.json +0 -0
- /package/{content → stacks/blazor-azure}/.morph/docs/workflows/design-impl.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/docs/workflows/fast-track.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/docs/workflows/full-morph.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/docs/workflows/standard.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/docs/workflows/ui-refresh.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/examples/scheduled-reports/decisions.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/examples/scheduled-reports/proposal.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/examples/scheduled-reports/spec.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/hooks/pre-commit-agents.sh +0 -0
- /package/{content → stacks/blazor-azure}/.morph/hooks/task-completed.js +0 -0
- /package/{content → stacks/blazor-azure}/.morph/hooks/teammate-idle.js +0 -0
- /package/{content → stacks/blazor-azure}/.morph/schemas/tasks.schema.json +0 -0
- /package/{content → stacks/blazor-azure}/.morph/standards/agent-framework-blazor-ui.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/standards/agent-framework-production.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/standards/agent-framework-setup.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/standards/agent-framework-workflows.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/standards/architecture.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/standards/azure.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/standards/dotnet10-migration.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/CONTEXT-FEATURE.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/CONTEXT.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/agent.cs +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/clarify-questions.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/contracts/Commands.cs +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/contracts/Entities.cs +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/contracts/Queries.cs +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/contracts/README.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/decisions.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/infra/deploy-checklist.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/proposal.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/recap.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/simulation.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/spec.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/state.template.json +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/tasks.md +0 -0
- /package/{content → stacks/blazor-azure}/.morph/templates/ui-components.md +0 -0
- /package/{content → stacks/blazor-azure}/CLAUDE.md +0 -0
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<h1 align="center">MORPH-SPEC</h1>
|
|
2
2
|
|
|
3
3
|
<p align="center">
|
|
4
|
-
<strong>
|
|
4
|
+
<strong>Framework de desenvolvimento spec-driven com 30 agentes AI especializados</strong><br>
|
|
5
5
|
<em>by Polymorphism Tech</em>
|
|
6
6
|
</p>
|
|
7
7
|
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
</p>
|
|
21
21
|
|
|
22
22
|
<p align="center">
|
|
23
|
-
<strong
|
|
23
|
+
<strong>Guias de Uso:</strong>
|
|
24
24
|
<a href="QUICKSTART.md">Quick Start</a> •
|
|
25
25
|
<a href="CHEATSHEET.md">Cheat Sheet</a> •
|
|
26
26
|
<a href="docs/README.md">API Docs</a>
|
|
@@ -32,11 +32,12 @@
|
|
|
32
32
|
|
|
33
33
|
**M**ethodical **O**rchestration for **R**eliable **P**roduction-ready **SPEC**-driven development
|
|
34
34
|
|
|
35
|
-
MORPH-SPEC é um framework de desenvolvimento orientado por especificações com **
|
|
35
|
+
MORPH-SPEC é um framework de desenvolvimento orientado por especificações com **30 agentes AI especializados** organizados em 4 tiers hierárquicos. Cada agente tem expertise em tecnologias específicas e segue workflows estruturados para entregar código production-ready.
|
|
36
36
|
|
|
37
|
-
**Stacks suportadas:** .NET/Blazor, .NET/Next.js
|
|
37
|
+
**Stacks suportadas:** .NET 10/Blazor, .NET 10/Next.js
|
|
38
38
|
**Infraestrutura:** Azure Bicep (IaC)
|
|
39
39
|
**Ferramenta:** Claude Code
|
|
40
|
+
**Validação:** Pipeline automático de enforcement com gates por fase
|
|
40
41
|
|
|
41
42
|
---
|
|
42
43
|
|
|
@@ -67,7 +68,7 @@ morph-spec init
|
|
|
67
68
|
```
|
|
68
69
|
|
|
69
70
|
<details>
|
|
70
|
-
<summary><strong
|
|
71
|
+
<summary><strong>Windows + nvm-windows: Comando não reconhecido?</strong></summary>
|
|
71
72
|
|
|
72
73
|
Se você usa **nvm-windows** para gerenciar versões do Node.js, o npm **não** adiciona automaticamente os pacotes globais ao PATH. Este é um [problema conhecido do nvm-windows](https://github.com/coreybutler/nvm-windows/issues/391).
|
|
73
74
|
|
|
@@ -129,9 +130,9 @@ morph-spec doctor
|
|
|
129
130
|
```
|
|
130
131
|
|
|
131
132
|
O comando `doctor` verifica:
|
|
132
|
-
-
|
|
133
|
-
-
|
|
134
|
-
-
|
|
133
|
+
- Versão do CLI (se está atualizada)
|
|
134
|
+
- Versão do MORPH no projeto
|
|
135
|
+
- Estrutura de arquivos e configurações
|
|
135
136
|
|
|
136
137
|
Ou abra seu projeto no Claude Code e execute:
|
|
137
138
|
```
|
|
@@ -171,12 +172,12 @@ npx @polymorphism-tech/morph-spec@latest update
|
|
|
171
172
|
### 3. O que é atualizado?
|
|
172
173
|
|
|
173
174
|
O comando `update` sincroniza:
|
|
174
|
-
-
|
|
175
|
-
-
|
|
176
|
-
-
|
|
177
|
-
-
|
|
178
|
-
-
|
|
179
|
-
-
|
|
175
|
+
- Templates (`.morph/templates/`)
|
|
176
|
+
- Standards (`.morph/standards/`)
|
|
177
|
+
- Agentes (`.morph/config/agents.json`)
|
|
178
|
+
- Comandos Claude (`.claude/commands/`)
|
|
179
|
+
- Skills (`.claude/skills/`)
|
|
180
|
+
- Instruções (CLAUDE.md)
|
|
180
181
|
|
|
181
182
|
**Importante:** Seu `config.json` é preservado!
|
|
182
183
|
|
|
@@ -209,7 +210,7 @@ Revise os arquivos gerados e aprove (ou peça ajustes).
|
|
|
209
210
|
/morph-apply minha-feature
|
|
210
211
|
```
|
|
211
212
|
|
|
212
|
-
O MORPH implementa task por task, com
|
|
213
|
+
O MORPH implementa task por task, com validação automática a cada etapa.
|
|
213
214
|
|
|
214
215
|
### 5. Arquivar
|
|
215
216
|
|
|
@@ -225,74 +226,191 @@ Move a feature concluída para o arquivo.
|
|
|
225
226
|
|
|
226
227
|
```
|
|
227
228
|
┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐
|
|
228
|
-
│
|
|
229
|
+
│ PROPOSAL │ -> │ DESIGN │ -> │ CLARIFY │ -> │ TASKS │ -> │IMPLEMENT │
|
|
229
230
|
│ │ │ │ │ │ │ │ │ │
|
|
230
231
|
│ Contexto │ │ Spec + │ │ Q&A + │ │ Quebra │ │ Executa │
|
|
231
|
-
│ + Agents │ │Contracts │ │ Edges │ │ Tasks │ │ +
|
|
232
|
+
│ + Agents │ │Contracts │ │ Edges │ │ Tasks │ │ + Valida │
|
|
232
233
|
└──────────┘ └──────────┘ └──────────┘ └──────────┘ └──────────┘
|
|
233
|
-
|
|
234
|
-
|
|
234
|
+
| | |
|
|
235
|
+
Spec Gate Design System Validation
|
|
236
|
+
(C# checks) Gate Pipeline
|
|
235
237
|
```
|
|
236
238
|
|
|
237
239
|
**Pontos de aprovação:** O MORPH para em 2 momentos para você revisar antes de continuar.
|
|
238
240
|
|
|
241
|
+
**Gates de validação (v3):**
|
|
242
|
+
- **Spec Gate** (Design -> Clarify): Valida contratos C# — CancellationToken, PascalCase, async suffix, sealed classes, records para DTOs
|
|
243
|
+
- **Design System Gate** (Tasks -> Implement): Bloqueia se features de UI não tiverem design system definido
|
|
244
|
+
- **Validation Pipeline** (cada task done): Roda validators baseados nos agentes ativos da feature
|
|
245
|
+
|
|
239
246
|
---
|
|
240
247
|
|
|
241
|
-
##
|
|
248
|
+
## Novidades v3 — Validation Pipeline
|
|
249
|
+
|
|
250
|
+
O v3 transforma MORPH de ferramentas isoladas em um **pipeline integrado de validação**:
|
|
251
|
+
|
|
252
|
+
| Feature | O que faz | Comando |
|
|
253
|
+
|---------|-----------|---------|
|
|
254
|
+
| **Validation Pipeline** | Roda validators automaticamente ao completar tasks | `morph-spec task done` |
|
|
255
|
+
| **Standards Injection** | Carrega standards relevantes por agente automaticamente | `morph-spec detect-agents --json` |
|
|
256
|
+
| **Design System Gate** | Bloqueia FASE 5 se features UI não tiverem design system | `morph-spec phase advance` |
|
|
257
|
+
| **Spec Validation** | Valida contratos C# na FASE 2, antes de implementar | `morph-spec phase advance` |
|
|
258
|
+
| **Decision Constraints** | ADRs em decisions.md configuram validators automaticamente | Automático |
|
|
259
|
+
| **Auto Recap** | Gera recap.md a partir de dados reais do projeto | `morph-spec generate recap` |
|
|
260
|
+
| **Smart Phase Advance** | Avança fases com gates de validação obrigatórios | `morph-spec phase advance` |
|
|
261
|
+
|
|
262
|
+
**Fluxo de dados:**
|
|
263
|
+
```
|
|
264
|
+
agents.json (30 agentes)
|
|
265
|
+
|-> detect-agents -> state.json (agentes ativos)
|
|
266
|
+
|-> standards-context-injector -> standards por agente
|
|
267
|
+
|-> validation-runner -> validators por agente
|
|
268
|
+
decisions.md (ADRs)
|
|
269
|
+
|-> decision-constraint-loader -> constraints para validators
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
---
|
|
273
|
+
|
|
274
|
+
## Comandos
|
|
275
|
+
|
|
276
|
+
### Claude Code (Slash Commands)
|
|
242
277
|
|
|
243
278
|
| Comando | Descrição |
|
|
244
279
|
|---------|-----------|
|
|
245
|
-
| `/morph-proposal <nome>` | Cria nova feature |
|
|
246
|
-
| `/morph-apply <nome>` | Implementa feature aprovada |
|
|
280
|
+
| `/morph-proposal <nome>` | Cria nova feature (fases 0-4 com pausas) |
|
|
281
|
+
| `/morph-apply <nome>` | Implementa feature aprovada (fase 5) |
|
|
247
282
|
| `/morph-status` | Mostra status do projeto |
|
|
248
283
|
| `/morph-archive <nome>` | Arquiva feature concluída |
|
|
249
284
|
| `/morph-infra <ação>` | Gerencia infraestrutura (init, validate, deploy) |
|
|
250
|
-
| `/morph-
|
|
285
|
+
| `/morph-preflight` | Validação pre-deploy Azure |
|
|
286
|
+
| `/morph-troubleshoot <erro>` | Busca soluções para erros |
|
|
287
|
+
|
|
288
|
+
### CLI Completo
|
|
289
|
+
|
|
290
|
+
| Comando | Descrição |
|
|
291
|
+
|---------|-----------|
|
|
292
|
+
| **Setup** | |
|
|
293
|
+
| `morph-spec init` | Inicializa MORPH no diretório |
|
|
294
|
+
| `morph-spec update` | Atualiza para versão mais recente |
|
|
295
|
+
| `morph-spec doctor` | Verifica saúde da instalação |
|
|
296
|
+
| `morph-spec detect` | Detecta stack, arquitetura, patterns |
|
|
297
|
+
| `morph-spec detect-agents <input>` | Detecta agentes + complexidade + standards |
|
|
298
|
+
| **Fases e Tasks** | |
|
|
299
|
+
| `morph-spec phase advance <feature>` | Avança fase com gates de validação |
|
|
300
|
+
| `morph-spec validate-phase <feature> <phase>` | Valida pré-requisitos de uma fase |
|
|
301
|
+
| `morph-spec task done <feature> <ids>` | Completa tasks (roda validação antes) |
|
|
302
|
+
| `morph-spec task start <feature> <id>` | Marca task como in_progress |
|
|
303
|
+
| `morph-spec task next <feature>` | Mostra próxima task sugerida |
|
|
304
|
+
| `morph-spec rollback <feature> <phase>` | Rollback para fase anterior |
|
|
305
|
+
| **Geração** | |
|
|
306
|
+
| `morph-spec generate design-system <md>` | Gera CSS + temas C# de ui-design-system.md |
|
|
307
|
+
| `morph-spec generate recap <feature>` | Gera recap.md automático |
|
|
308
|
+
| `morph-spec generate context [feature]` | Gera CONTEXT.md para Claude Code |
|
|
309
|
+
| **Validação** | |
|
|
310
|
+
| `morph-spec validate [validator]` | Validação de código (packages, architecture, contrast) |
|
|
311
|
+
| `morph-spec validate-blazor [path]` | Valida patterns Fluent UI Blazor |
|
|
312
|
+
| `morph-spec validate-blazor-state [path]` | Valida session state Blazor |
|
|
313
|
+
| `morph-spec validate-css [path]` | Valida classes CSS em Razor files |
|
|
314
|
+
| `morph-spec analyze-blazor-concurrency [path]` | Detecta concurrency issues em DbContext |
|
|
315
|
+
| `morph-spec lint-fluent [path]` | Lint de patterns Fluent UI |
|
|
316
|
+
| **State** | |
|
|
317
|
+
| `morph-spec state list` | Lista todas as features |
|
|
318
|
+
| `morph-spec state get <feature>` | Detalhes de uma feature |
|
|
319
|
+
| `morph-spec state set <feature> <key> <value>` | Atualiza propriedade |
|
|
320
|
+
| `morph-spec state checkpoint <feature> "nota"` | Cria checkpoint |
|
|
321
|
+
| **Story-Driven** | |
|
|
322
|
+
| `morph-spec story create <feature> <id>` | Cria story com Dev Notes |
|
|
323
|
+
| `morph-spec story shard <feature>` | Divide spec em shards (90% token savings) |
|
|
324
|
+
| `morph-spec story status <feature> <action>` | Gerencia sprint status |
|
|
325
|
+
| **Learning** | |
|
|
326
|
+
| `morph-spec learn analyze` | Aprende com histórico do projeto |
|
|
327
|
+
| `morph-spec learn insights` | Mostra patterns aprendidos |
|
|
328
|
+
| `morph-spec learn suggest [category]` | Sugestões por categoria |
|
|
329
|
+
| **Outros** | |
|
|
330
|
+
| `morph-spec troubleshoot <keywords>` | Busca soluções para erros |
|
|
331
|
+
| `morph-spec session-summary <feature>` | Resumo da sessão atual |
|
|
332
|
+
| `morph-spec sync` | Sincroniza standards de decisions |
|
|
251
333
|
|
|
252
334
|
---
|
|
253
335
|
|
|
254
336
|
## Agentes
|
|
255
337
|
|
|
256
|
-
|
|
338
|
+
MORPH-SPEC possui **30 agentes** organizados em 4 tiers hierárquicos com squads:
|
|
339
|
+
|
|
340
|
+
### Tier 1 — Orchestrators (3)
|
|
257
341
|
|
|
258
|
-
| Agente | Função |
|
|
259
|
-
|
|
260
|
-
|
|
|
261
|
-
|
|
|
262
|
-
|
|
|
342
|
+
| Agente | Função | Ativação |
|
|
343
|
+
|--------|--------|----------|
|
|
344
|
+
| **Standards Architect** | Chief Architect, padrões e consistência | Sempre ativo |
|
|
345
|
+
| **AI System Architect** | Arquitetura de sistemas multi-agente | Por keyword |
|
|
346
|
+
| **PO/PM Advisor** | Requisitos, ROI, business value | Por keyword |
|
|
263
347
|
|
|
264
|
-
###
|
|
348
|
+
### Tier 2 — Domain Leaders (3)
|
|
349
|
+
|
|
350
|
+
| Agente | Squad | Ativação |
|
|
351
|
+
|--------|-------|----------|
|
|
352
|
+
| **Dotnet Senior** | Backend (10 specialists) | Sempre ativo |
|
|
353
|
+
| **Azure Architect** | Infraestrutura (5 specialists) | Sempre ativo |
|
|
354
|
+
| **UI/UX Designer** | Frontend (3 specialists) | Por keyword |
|
|
355
|
+
|
|
356
|
+
### Tier 3 — Specialists (23)
|
|
357
|
+
|
|
358
|
+
<details>
|
|
359
|
+
<summary><strong>Backend Squad (10)</strong></summary>
|
|
265
360
|
|
|
266
361
|
| Agente | Keywords |
|
|
267
362
|
|--------|----------|
|
|
268
|
-
|
|
|
269
|
-
|
|
|
363
|
+
| **EF Modeler** | database, entity, migration, ef core |
|
|
364
|
+
| **Event Architect** | event, service bus, cqrs, real-time |
|
|
365
|
+
| **API Designer** | rest, graphql, grpc, openapi |
|
|
366
|
+
| **NoSQL/Cache Expert** | cosmos, redis, cache, blob storage |
|
|
367
|
+
| **DDD Expert** | ddd, aggregate, bounded context |
|
|
368
|
+
| **Hangfire Orchestrator** | scheduled, job, background, cron |
|
|
369
|
+
| **MS Agent Expert** | agent, ai, microsoft agent framework, mcp, a2a |
|
|
370
|
+
| **Asaas Financial** | asaas, pix, boleto, payment |
|
|
371
|
+
| **Clerk Auth** | clerk, login, signup, oauth |
|
|
372
|
+
| **Resend Email** | resend, email, transactional email |
|
|
373
|
+
</details>
|
|
270
374
|
|
|
271
|
-
|
|
375
|
+
<details>
|
|
376
|
+
<summary><strong>Frontend Squad (3)</strong></summary>
|
|
272
377
|
|
|
273
378
|
| Agente | Keywords |
|
|
274
379
|
|--------|----------|
|
|
275
|
-
|
|
|
276
|
-
|
|
|
277
|
-
|
|
|
278
|
-
|
|
279
|
-
| 📋 **PO/PM Advisor** | unclear, requirements, ROI |
|
|
380
|
+
| **Blazor Builder** | blazor, razor, component, fluent ui |
|
|
381
|
+
| **NextJS Expert** | nextjs, react, shadcn, server actions |
|
|
382
|
+
| **CSS Specialist** | css, design system, theme, design tokens |
|
|
383
|
+
</details>
|
|
280
384
|
|
|
281
|
-
|
|
385
|
+
<details>
|
|
386
|
+
<summary><strong>Infrastructure Squad (5)</strong></summary>
|
|
282
387
|
|
|
283
388
|
| Agente | Keywords |
|
|
284
389
|
|--------|----------|
|
|
285
|
-
|
|
|
286
|
-
|
|
|
287
|
-
|
|
|
390
|
+
| **Bicep Architect** | bicep, iac, infra, provision |
|
|
391
|
+
| **DevOps Engineer** | pipeline, ci/cd, deploy, github actions |
|
|
392
|
+
| **Container Specialist** | docker, container, container apps |
|
|
393
|
+
| **Observability Expert** | monitoring, logging, tracing, app insights |
|
|
394
|
+
| **Azure Identity** | identity, entra, passkeys, managed identity |
|
|
395
|
+
</details>
|
|
288
396
|
|
|
289
|
-
|
|
397
|
+
<details>
|
|
398
|
+
<summary><strong>Quality Squad (5)</strong></summary>
|
|
290
399
|
|
|
291
400
|
| Agente | Keywords |
|
|
292
401
|
|--------|----------|
|
|
293
|
-
|
|
|
294
|
-
|
|
|
295
|
-
|
|
|
402
|
+
| **Testing Specialist** | test, unit, integration, e2e, xunit, bunit |
|
|
403
|
+
| **Code Analyzer** | analyze, review, refactor, clean code, solid |
|
|
404
|
+
| **Troubleshooting Expert** | debug, troubleshoot, root cause, diagnose |
|
|
405
|
+
| **Load Testing Expert** | load test, k6, stress test, scalability |
|
|
406
|
+
| **Documentation Specialist** | readme, api docs, deployment guide |
|
|
407
|
+
</details>
|
|
408
|
+
|
|
409
|
+
### Tier 4 — Validators (1)
|
|
410
|
+
|
|
411
|
+
| Agente | Função | Ativação |
|
|
412
|
+
|--------|--------|----------|
|
|
413
|
+
| **Security Expert** | SQL injection, XSS, secrets, CSRF | Sempre ativo (hooks) |
|
|
296
414
|
|
|
297
415
|
---
|
|
298
416
|
|
|
@@ -300,9 +418,9 @@ Move a feature concluída para o arquivo.
|
|
|
300
418
|
|
|
301
419
|
| Exemplo | Descrição |
|
|
302
420
|
|---------|-----------|
|
|
303
|
-
| [micro-saas](
|
|
304
|
-
| [api-nextjs](
|
|
305
|
-
| [multi-agent](
|
|
421
|
+
| [micro-saas](stacks/blazor-azure/.morph/examples/micro-saas/) | SaaS completo com Blazor + Asaas billing |
|
|
422
|
+
| [api-nextjs](stacks/blazor-azure/.morph/examples/api-nextjs/) | .NET API + Next.js frontend |
|
|
423
|
+
| [multi-agent](stacks/blazor-azure/.morph/examples/multi-agent/) | Sistema multi-agente com Microsoft Agent Framework |
|
|
306
424
|
|
|
307
425
|
Cada exemplo inclui: `README.md`, `spec.md`, `contracts.cs`, `tasks.md`, `decisions.md`
|
|
308
426
|
|
|
@@ -318,11 +436,15 @@ seu-projeto/
|
|
|
318
436
|
├── .morph/
|
|
319
437
|
│ ├── config/ # Configurações
|
|
320
438
|
│ │ ├── config.json
|
|
321
|
-
│ │ └── agents.json
|
|
322
|
-
│ ├── standards/ # Padrões de código
|
|
439
|
+
│ │ └── agents.json # 30 agentes em 4 tiers
|
|
440
|
+
│ ├── standards/ # Padrões de código (26 arquivos)
|
|
323
441
|
│ │ ├── coding.md
|
|
324
442
|
│ │ ├── architecture.md
|
|
325
|
-
│ │
|
|
443
|
+
│ │ ├── azure.md
|
|
444
|
+
│ │ ├── blazor-*.md # Lifecycle, state, pitfalls, EF Core
|
|
445
|
+
│ │ ├── css-*.md # Naming, animations
|
|
446
|
+
│ │ ├── agent-framework-*.md # Setup, workflows, production, blazor-ui
|
|
447
|
+
│ │ └── ...
|
|
326
448
|
│ ├── templates/ # Templates de código e IaC
|
|
327
449
|
│ │ ├── infra/
|
|
328
450
|
│ │ ├── integrations/
|
|
@@ -332,7 +454,7 @@ seu-projeto/
|
|
|
332
454
|
│ └── archive/ # Features concluídas
|
|
333
455
|
└── .claude/
|
|
334
456
|
├── commands/ # Slash commands
|
|
335
|
-
└── skills/ # Skills dos agentes
|
|
457
|
+
└── skills/ # Skills dos agentes (31+ arquivos)
|
|
336
458
|
```
|
|
337
459
|
|
|
338
460
|
---
|
|
@@ -365,7 +487,7 @@ O MORPH segue a filosofia **"Free tier first"**:
|
|
|
365
487
|
|
|
366
488
|
---
|
|
367
489
|
|
|
368
|
-
##
|
|
490
|
+
## Troubleshooting
|
|
369
491
|
|
|
370
492
|
### Comando `morph-spec` não encontrado
|
|
371
493
|
|
|
@@ -409,10 +531,10 @@ morph-spec --version
|
|
|
409
531
|
### `morph-spec doctor` reporta problemas
|
|
410
532
|
|
|
411
533
|
**O que o doctor verifica:**
|
|
412
|
-
-
|
|
413
|
-
-
|
|
414
|
-
-
|
|
415
|
-
-
|
|
534
|
+
- Versão do CLI (atualizada?)
|
|
535
|
+
- Versão do MORPH no projeto
|
|
536
|
+
- Comando morph-spec no PATH
|
|
537
|
+
- Estrutura de arquivos (.morph/, CLAUDE.md, etc.)
|
|
416
538
|
|
|
417
539
|
**Se reportar "morph-spec not in PATH":**
|
|
418
540
|
1. Use `npx` como alternativa (sempre funciona)
|
|
@@ -465,12 +587,12 @@ morph-spec <comando> --help # Ajuda de comando específico
|
|
|
465
587
|
```
|
|
466
588
|
|
|
467
589
|
**Suporte:**
|
|
468
|
-
-
|
|
469
|
-
-
|
|
590
|
+
- Email: support@polymorphism.com.br
|
|
591
|
+
- Issues: [GitHub](https://github.com/lucasPolymorphism/morph-spec-framework/issues)
|
|
470
592
|
|
|
471
593
|
---
|
|
472
594
|
|
|
473
|
-
##
|
|
595
|
+
## Licença e Distribuição
|
|
474
596
|
|
|
475
597
|
**Repositório:** Privado (código fonte protegido)
|
|
476
598
|
**Package npm:** Público e gratuito via `@polymorphism-tech/morph-spec`
|
|
@@ -480,16 +602,16 @@ morph-spec <comando> --help # Ajuda de comando específico
|
|
|
480
602
|
O MORPH-SPEC framework é software proprietário da Polymorphism Tech. Veja [LICENSE](LICENSE) para detalhes.
|
|
481
603
|
|
|
482
604
|
**Você PODE:**
|
|
483
|
-
-
|
|
484
|
-
-
|
|
485
|
-
-
|
|
486
|
-
-
|
|
605
|
+
- Usar o CLI tool gratuitamente
|
|
606
|
+
- Gerar projetos para uso pessoal ou comercial
|
|
607
|
+
- Modificar código gerado pelos templates
|
|
608
|
+
- Distribuir seus projetos criados com MORPH-SPEC
|
|
487
609
|
|
|
488
610
|
**Você NÃO PODE:**
|
|
489
|
-
-
|
|
490
|
-
-
|
|
491
|
-
-
|
|
492
|
-
-
|
|
611
|
+
- Redistribuir ou vender o framework
|
|
612
|
+
- Criar produtos derivados competidores
|
|
613
|
+
- Modificar ou fazer engenharia reversa do framework
|
|
614
|
+
- Remover avisos de copyright
|
|
493
615
|
|
|
494
616
|
### Código Gerado
|
|
495
617
|
|
|
@@ -497,18 +619,18 @@ Todo código gerado usando MORPH-SPEC é **100% seu** para usar como quiser, inc
|
|
|
497
619
|
|
|
498
620
|
### Suporte
|
|
499
621
|
|
|
500
|
-
-
|
|
501
|
-
-
|
|
502
|
-
-
|
|
622
|
+
- Email: support@polymorphism.com.br
|
|
623
|
+
- Website: https://polymorphism.com.br
|
|
624
|
+
- npm: [@polymorphism-tech/morph-spec](https://www.npmjs.com/package/@polymorphism-tech/morph-spec)
|
|
503
625
|
|
|
504
626
|
---
|
|
505
627
|
|
|
506
628
|
## Links
|
|
507
629
|
|
|
508
|
-
-
|
|
509
|
-
-
|
|
510
|
-
-
|
|
511
|
-
-
|
|
630
|
+
- [npm Package](https://www.npmjs.com/package/@polymorphism-tech/morph-spec)
|
|
631
|
+
- [Documentação](docs/)
|
|
632
|
+
- [Exemplos](stacks/blazor-azure/.morph/examples/)
|
|
633
|
+
- [Polymorphism Tech](https://polymorphism.com.br)
|
|
512
634
|
|
|
513
635
|
---
|
|
514
636
|
|