# Getting Started - MORPH-SPEC

**M**ethodical **O**rchestration for **R**eliable **P**roduction-ready **SPEC**-driven development

> by Polymorphism Tech

---

## Quick Start (5 minutos)

### 1. Copiar para seu projeto

```bash
# Clone o framework
git clone https://github.com/polymorphism-tech/morph-framework.git

# Copie o conteúdo para seu projeto
cp -r morph-framework/content/.morph /seu/projeto/
cp -r morph-framework/content/.claude /seu/projeto/
cp morph-framework/content/CLAUDE.md /seu/projeto/
```

### 2. Configurar

```bash
cd /seu/projeto/.morph/config
cp config.template.json config.json
```

Edite `config.json`:
```json
{
  "project": {
    "name": "Seu Projeto",
    "stack": "blazor"
  },
  "azure": {
    "subscriptionId": "sua-subscription",
    "resourceGroup": "rg-seuprojeto-dev"
  }
}
```

### 3. Usar com Claude Code

Abra seu projeto no Claude Code e use os slash commands:

```
/morph-proposal minha-feature
```

O MORPH vai guiar você pelas 5 fases automaticamente.

---

## Estrutura Completa

```
seu-projeto/
├── CLAUDE.md                          # Instruções para o AI
│
├── .morph/
│   ├── project.md                     # Contexto do projeto
│   ├── config/
│   │   ├── config.json                # Sua configuração
│   │   └── agents.json                # Definição dos agentes
│   │
│   ├── standards/
│   │   ├── coding.md                  # Padrões de código
│   │   ├── architecture.md            # Padrões de arquitetura
│   │   └── azure.md                   # Padrões Azure/IaC
│   │
│   ├── templates/
│   │   ├── spec.md                    # Template de especificação
│   │   ├── tasks.md                   # Template de tasks
│   │   ├── contracts.cs               # Template de contratos
│   │   ├── decisions.md               # Template de ADRs
│   │   ├── recap.md                   # Template de recap
│   │   │
│   │   ├── infra/                     # Templates IaC (Bicep)
│   │   │   ├── main.bicep
│   │   │   ├── container-app.bicep
│   │   │   ├── container-app-env.bicep
│   │   │   ├── sql-database.bicep
│   │   │   ├── storage.bicep
│   │   │   ├── key-vault.bicep
│   │   │   ├── app-insights.bicep
│   │   │   └── parameters.*.json
│   │   │
│   │   ├── integrations/              # Templates de integração
│   │   │   ├── asaas-client.cs        # Pagamentos (PIX, Boleto)
│   │   │   ├── asaas-webhook.cs       # Webhooks Asaas
│   │   │   ├── clerk-config.cs        # Autenticação Clerk
│   │   │   └── azure-identity-config.cs
│   │   │
│   │   └── saas/                      # Templates SaaS
│   │       ├── subscription.cs        # Modelo de assinaturas
│   │       └── tenant.cs              # Multi-tenancy
│   │
│   ├── examples/                      # Exemplos completos
│   │   ├── micro-saas/                # Blazor + Asaas billing
│   │   ├── api-nextjs/                # .NET API + Next.js
│   │   └── multi-agent/               # Semantic Kernel agents
│   │
│   ├── specs/                         # Specs ativas
│   ├── features/                      # Features em desenvolvimento
│   └── archive/                       # Features concluídas
│
└── .claude/
    ├── commands/                      # Slash commands
    │   ├── morph-proposal.md
    │   ├── morph-apply.md
    │   ├── morph-status.md
    │   ├── morph-archive.md
    │   ├── morph-infra.md             # Gestão de infra
    │   └── morph-costs.md             # Estimativa de custos
    │
    └── skills/                        # Skills dos agentes
        ├── specialists/               # 8 agentes especialistas
        ├── integrations/              # 3 agentes de integração
        ├── stacks/                    # 3 stacks suportadas
        └── infra/                     # 3 agentes de infra
```

---

## O Workflow das 5 Fases

### Fase 1: SETUP
```
Gatilho: /morph-proposal <feature>
```
- Carrega configuração do projeto
- Identifica agentes por keywords
- Cria pasta de outputs

### Fase 2: DESIGN
- Gera `spec.md`, `contracts.cs`, `decisions.md`
- Estima custos de infraestrutura
- **⛔ PARA para aprovação**

### Fase 3: CLARIFY
- Perguntas de clarificação
- Resolve ambiguidades
- Valida edge cases

### Fase 4: TASKS
- Quebra em tasks (T001, T002...)
- Define checkpoints
- **⛔ PARA para aprovação**

### Fase 5: IMPLEMENT
```
Gatilho: /morph-apply <feature>
```
- Implementa task por task
- Testes a cada task
- Checkpoint a cada 3 tasks
- Gera recap final

---

## Slash Commands

| Comando | Descrição |
|---------|-----------|
| `/morph-proposal <feature>` | Inicia nova feature |
| `/morph-apply <feature>` | Implementa feature aprovada |
| `/morph-status` | Status do projeto |
| `/morph-archive <feature>` | Arquiva feature |
| `/morph-infra <action>` | Gestão de infraestrutura |
| `/morph-costs` | Estimativa de custos |

---

## Os Agentes (17 total)

### Core (Sempre Ativos)
| Agente | Responsabilidade |
|--------|------------------|
| 📐 Standards Architect | Padrões de código |
| ☁️ Azure Architect | Infraestrutura cloud |
| 💰 Cost Guardian | Controle de custos |

### Stack Agents
| Agente | Keywords |
|--------|----------|
| 🔥 Blazor Builder | blazor, razor, component |
| ⚛️ NextJS Expert | nextjs, react, frontend |
| 🛒 Shopify Expert | shopify, hydrogen, liquid |

### Specialist Agents
| Agente | Keywords |
|--------|----------|
| 🗄️ EF Modeler | entity, database, migration |
| 🤖 MS Agent Expert | agent, ai, semantic kernel |
| ⏰ Hangfire Orchestrator | scheduled, job, background |
| 🎨 UI/UX Designer | wizard, dashboard, complex |
| 📋 PO/PM Advisor | unclear, requirements, ROI |

### Integration Agents
| Agente | Keywords |
|--------|----------|
| 💳 Asaas Financial | asaas, payment, pix, boleto |
| 🔐 Clerk Auth | clerk, auth, login |
| 🆔 Azure Identity | identity, entra, microsoft |

### Infra Agents
| Agente | Keywords |
|--------|----------|
| 🏗️ Bicep Architect | bicep, iac, provision |
| 🚀 DevOps Engineer | pipeline, ci/cd, deploy |
| 📦 Container Specialist | docker, container |

---

## Templates Disponíveis

### IaC (Bicep)
- `main.bicep` - Entry point
- `container-app.bicep` - Azure Container Apps
- `sql-database.bicep` - Azure SQL (Free tier)
- `storage.bicep` - Storage Account
- `key-vault.bicep` - Key Vault
- `app-insights.bicep` - Monitoring

### Integrações
- `asaas-client.cs` - HTTP client Asaas completo
- `asaas-webhook.cs` - Controller de webhooks
- `clerk-config.cs` - Autenticação Clerk
- `azure-identity-config.cs` - Microsoft Identity

### SaaS
- `subscription.cs` - Modelo de assinaturas
- `tenant.cs` - Multi-tenancy completo

---

## Exemplos Incluídos

| Exemplo | Stack | Descrição |
|---------|-------|-----------|
| `micro-saas/` | Blazor + Asaas | SaaS com billing integrado |
| `api-nextjs/` | .NET + Next.js | Full-stack com React |
| `multi-agent/` | Semantic Kernel | Sistema de agentes AI |

Cada exemplo contém:
- `README.md` - Visão geral
- `spec.md` - Especificação completa
- `contracts.cs` - Interfaces e DTOs
- `tasks.md` - Breakdown de implementação
- `decisions.md` - ADRs (onde aplicável)

---

## Limites de Custo

| Nível | Limite | Requisito |
|-------|--------|-----------|
| Sem aprovação | Free tier | Nenhum |
| Com aprovação | Até $10/mês | Confirmação |
| Acima de $10 | Justificativa | ADR |

### Recursos Free Tier Suportados
- **Azure SQL** - 32GB grátis
- **Container Apps** - Scale-to-zero
- **Storage** - Pay-per-use mínimo
- **App Insights** - 5GB/mês grátis

---

## Dicas

### Seja específico
```
❌ "Quero relatórios"
✅ "Quero agendar relatórios de vendas por email toda segunda às 8h"
```

### Use keywords para ativar agentes
```
❌ "Quero processar pagamentos"
✅ "Quero integrar Asaas para receber PIX e boleto"
```

### Aproveite os checkpoints
- Revise specs antes de aprovar
- Valide tasks antes de implementar
- Use `/morph-status` para ver progresso

---

## Próximos Passos

1. Explore `.morph/examples/` para ver exemplos completos
2. Leia `.morph/standards/` para entender os padrões
3. Configure `.morph/config/config.json` para seu projeto
4. Execute `/morph-proposal` para sua primeira feature!

---

*MORPH-SPEC by Polymorphism Tech*
