feat(negocio): adiciona plugin negocio (agents, skills, knowledge e metadados do projeto)

This commit is contained in:
2026-10-28 16:09:26 +00:00
parent 3b59df032b
commit b446fe25fe
43 changed files with 2716 additions and 0 deletions
+17
View File
@@ -0,0 +1,17 @@
# AGENTS.md — skills
Directrizes específicas deste projecto para agentes IA.
## Referências obrigatórias
- `ECOSYSTEM.md` — Hub/06-Operacoes/Documentacao/ECOSYSTEM.md
- `PROC-DEV-STANDARD` — D7-SIS-006
- `PROC-AUDIT-STANDARD` — D7-SIS-007
## Protocolo de sessão
Início: ler MEMORY.md + STATUS.md. Fim: actualizar ambos.
## Convenções específicas
- (a definir)
+5
View File
@@ -0,0 +1,5 @@
# CHANGELOG — skills
## 0.1.0 — 2026-06-30
### Adicionado
- Estrutura padrão (PROC-DEV-STANDARD)
+4
View File
@@ -0,0 +1,4 @@
# MEMORY.md — skills
## 2026-06-30
- Estrutura padrão aplicada via propagate-structure.sh
+3
View File
@@ -0,0 +1,3 @@
# skills
Subprojecto skills do ecossistema Descomplicar.
+8
View File
@@ -0,0 +1,8 @@
# STATUS.md — skills
**Versão:** 0.1 | **Data:** 2026-06-30 | **Agente:** —
## Estado actual
- Em curso: —
- Bloqueios: —
- Próximos passos: —
+6
View File
@@ -0,0 +1,6 @@
{
"task_id": null,
"project_id": null,
"customer_id": null,
"gitea_repo": null
}
+195
View File
@@ -0,0 +1,195 @@
---
name: ecommerce
description: Estratégia e arquitectura de e-commerce, desde a escolha de plataforma até optimização de conversão.
layer: wiki
---
# Skill /ecommerce - E-commerce Strategy & Architecture
Skill especializada em estratégia e arquitectura de e-commerce, cobrindo desde a escolha de plataforma até optimização de conversão.
## Sintaxe
```
/ecommerce [operacao] [contexto]
```
**Operações:**
- `analise` - Análise de projecto e-commerce existente ou novo
- `plataforma` - Recomendação de plataforma (WooCommerce vs Shopify vs custom)
- `funil` - Análise e optimização do funil de conversão
- `integracao` - Planeamento de integrações (ERP, pagamentos, logística)
- `pricing` - Estratégia de preços e promoções
## Quando Usar
- Cliente quer abrir loja online
- Optimizar conversão de e-commerce existente
- Integração com ERP/facturação/logística
- Migração entre plataformas
- Estratégia omnichannel
---
## Contexto NotebookLM
ANTES de executar, consultar notebooks para contexto especializado:
| Notebook | ID | Consultar quando |
|----------|-----|-----------------|
| E-commerce Prático | 226e384e | Sempre |
| E-Commerce Portugal | 8a430cf2 | Para contexto mercado PT |
```
mcp__notebooklm__notebook_query({
notebook_id: "226e384e-d4bc-48f4-bb82-7927360436cc",
query: "<adaptar ao contexto do pedido do utilizador>"
})
```
```
mcp__notebooklm__notebook_query({
notebook_id: "8a430cf2-ed99-413d-b4bf-a1400deaf49e",
query: "<adaptar ao contexto do mercado português>"
})
```
Integrar insights do NotebookLM nas recomendações e decisões.
### Procedimentos Relacionados
- Investigação de Mercado disponível em `/media/ealmeida/Dados/Hub/06-Operacoes/Knowledge-Base/Investigacao-Mercado/ecommerce_portugal/` (12 ficheiros)
---
## Protocolo de Execução
### 1. Discovery (SEMPRE começar aqui)
**Questões chave:**
```
Modelo de negócio:
- [ ] B2C, B2B ou D2C?
- [ ] Único vendedor ou marketplace?
- [ ] Produtos físicos ou digitais?
Catálogo:
- [ ] Quantos SKUs?
- [ ] Variações por produto (tamanhos, cores)?
- [ ] Stock centralizado ou múltiplos armazéns?
Volume esperado:
- [ ] Ticket médio?
- [ ] Pedidos/mês estimados?
- [ ] Sazonalidade?
Integrações:
- [ ] ERP existente (PHC, Primavera, SAP)?
- [ ] Gateway pagamento preferido?
- [ ] Transportadoras (CTT, DPD, GLS)?
```
### 2. Escolha de Plataforma
**Matriz de Decisão:**
| Critério | WooCommerce | Shopify | Custom |
|----------|-------------|---------|--------|
| **Custo inicial** | 1.100€ (eCommerceWP) | ~200€/mês | 5.000€+ |
| **Escalabilidade** | Até 5k pedidos/mês | Ilimitado | Ilimitado |
| **Customização** | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
| **Integrações PT** | ⭐⭐⭐⭐ (MB, CTT, Moloni) | ⭐⭐ | ⭐⭐⭐⭐⭐ |
| **Manutenção** | Média (WordPress) | Baixa (hosted) | Alta |
| **Time to market** | 7-9 semanas | 4-6 semanas | 3-6 meses |
**Recomendação Descomplicar:**
- **< 1.000 SKUs + orçamento < 3k** → eCommerceWP (WooCommerce)
- **> 1.000 SKUs + escalabilidade prioritária** → Shopify Plus
- **Processos únicos + integração ERP complexa** → Custom Laravel + Vue
### 3. Arquitectura Técnica
```
┌─────────────┐
│ FRONTEND │ CDN (Cloudflare)
│ (Site) │ Cache (Varnish/Redis)
└──────┬──────┘
│
┌──────▼──────┐
│ API │ REST/GraphQL
│ (Backend) │ Rate limiting
└──────┬──────┘
│
┌──────▼──────────────────┐
│ INTEGRAÇÕES │
├─────────────────────────┤
│ Pagamentos (Stripe/MB) │
│ Facturação (Moloni) │
│ Stock (ERP) │
│ Envios (CTT/DPD) │
│ Marketing (GA4/Meta) │
└─────────────────────────┘
```
### 4. Funil de Conversão
**Benchmarks e Optimizações:**
```
🔍 VISITANTES (tráfego)
│
├─ Bounce Rate < 40% (target)
│ ► Home clara e rápida (< 2s)
│ ► Proposta de valor visível
▼
📦 PRODUTO (categoria/pesquisa)
│
├─ Add to Cart Rate > 8%
│ ► Fotos profissionais (min 5 por produto)
│ ► Descrições completas
│ ► Reviews e avaliações
│ ► Stock e prazo entrega visíveis
▼
🛒 CARRINHO
│
├─ Cart Abandonment < 70%
│ ► Recuperação automática (CartRecovery)
│ ► Custos envio antecipados
│ ► Checkout em 1 página
▼
💳 CHECKOUT
│
├─ Completion Rate > 50%
│ ► Guest checkout permitido
│ ► MB Way + Multibanco + Cartão
│ ► Campos mínimos
▼
✅ COMPRA
│
├─ Repeat Rate > 20%
│ ► Email pós-compra (obrigado)
│ ► Programa fidelização
│ ► Recomendações personalizadas
▼
🔁 RECOMPRA
```
**Triggers de Abandono (CartRecovery):**
- Email 1h depois: "Esqueceu algo?"
- Email 24h depois: "Ainda disponível" + urgência
- Email 48h depois: Desconto 5-10%
---
## Integrações Essenciais
### Pagamentos (Portugal)
| Gateway | Custo | Tempo Integração | Usar Quando |
|---------|-------|------------------|-------------|
| **MB Way + Multibanco** | Gratuito (IFTHENPAY) | 2h | Obrigatório PT |
| **Stripe** | 1.4% + 0.25€ | 4h | Cartões internacionais |
| **PayPal** | 3.4% + 0.35€ | 1h | Compradores sem cartão |
### Facturação
| Sistema | Custo | Integração |
+8
View File
@@ -0,0 +1,8 @@
# skills
## Documentação
- [README](README.md)
- [AGENTS](AGENTS.md)
- [STATUS](STATUS.md)
- [MEMORY](MEMORY.md)
+251
View File
@@ -0,0 +1,251 @@
---
name: interview
description: Preparação de entrevistas técnicas e avaliação de candidatos. Cria perguntas, avalia respostas e fornece feedback.
layer: wiki
---
# /interview - Entrevista Estruturada de Requisitos
Skill para clarificar requisitos antes de iniciar trabalho. Reduz ambiguidade e evita retrabalho.
---
## Contexto NotebookLM
ANTES de executar, consultar notebooks para contexto especializado:
| Notebook | ID | Consultar quando |
|----------|-----|-----------------|
| Estratégia e Empreendedorismo | 79d43410 | Para contexto negócio |
```
mcp__notebooklm__notebook_query({
notebook_id: "79d43410-0e29-4be1-881d-84db6bdc239a",
query: "<adaptar ao contexto do pedido do utilizador>"
})
```
Integrar insights do NotebookLM nas recomendações e decisões.
---
## QUANDO USAR
- Início de projecto novo
- Tarefa complexa ou ambígua
- Pedido do utilizador pouco claro
- Antes de decisões arquitecturais
---
## EXECUÇÃO
### Fase 1: Contexto (OBRIGATÓRIO)
Perguntar usando `AskUserQuestion`:
```
1. O QUÊ?
- "Descreve o que queres alcançar em 1-2 frases"
2. PORQUÊ?
- "Qual o problema que isto resolve?"
- "O que acontece se não fizermos?"
3. PARA QUEM?
- "Quem vai usar/beneficiar disto?"
```
### Fase 2: Objectivos
```
4. RESULTADO ESPERADO
- "Como sabes que está feito?"
- "O que muda quando terminar?"
5. PRIORIDADE
- "É urgente ou importante?"
- "Deadline real ou desejado?"
```
### Fase 3: Restrições
```
6. TECNOLOGIA
- "Há tecnologias obrigatórias ou proibidas?"
- "Integra com sistemas existentes?"
7. RECURSOS
- "Quanto tempo podes dedicar?"
- "Há dependências de terceiros?"
8. LIMITAÇÕES
- "O que NÃO deve fazer?"
- "Há riscos conhecidos?"
```
### Fase 4: Validação
```
9. CRITÉRIOS DE SUCESSO
- "Como vamos validar que funciona?"
- "Há testes ou cenários específicos?"
10. EXEMPLOS
- "Tens exemplos do que queres?"
- "Ou do que NÃO queres?"
```
---
## OUTPUT
Após recolher respostas, gerar documento com **BACKLOG CLARO**:
```markdown
---
title: "REQ - [Nome do Projecto/Tarefa]"
date: YYYY-MM-DD
type: requisitos
status: draft
tags: [requisitos, interview, backlog, PROJECTO]
---
# Requisitos: [Nome]
## Contexto
- **O quê:** [resposta]
- **Porquê:** [resposta]
- **Para quem:** [resposta]
## Objectivos
- **Resultado esperado:** [resposta]
- **Prioridade:** [Urgente/Importante/Normal]
- **Deadline:** [data ou N/A]
## Restrições
- **Tecnologia:** [resposta]
- **Recursos:** [resposta]
- **Limitações:** [resposta]
---
## BACKLOG
> Lista ordenada de tarefas antes de arrancar.
### Fase 1: Preparação
- [ ] [tarefa preparatória 1]
- [ ] [tarefa preparatória 2]
### Fase 2: Desenvolvimento
- [ ] [tarefa core 1]
- [ ] [tarefa core 2]
- [ ] [tarefa core 3]
### Fase 3: Validação
- [ ] [teste/validação 1]
- [ ] [teste/validação 2]
### Fase 4: Entrega
- [ ] [tarefa final 1]
- [ ] [documentação se aplicável]
---
## Critérios de Sucesso
- [ ] [critério 1]
- [ ] [critério 2]
- [ ] [critério 3]
## Riscos Identificados
| Risco | Impacto | Mitigação |
|-------|---------|-----------|
| [risco] | [alto/médio/baixo] | [acção] |
## Decisões Tomadas
| Decisão | Motivo | Alternativas Descartadas |
|---------|--------|--------------------------|
| [decisão] | [razão] | [alternativas] |
---
*Gerado via `/interview` - YYYY-MM-DD*
```
### Regras do Backlog
1. **Ordenação:** Tarefas na ordem de execução
2. **Granularidade:** Cada tarefa = 1-4 horas max
3. **Dependências:** Tarefas bloqueantes primeiro
4. **Checkboxes:** Para tracking de progresso
5. **Fases:** Agrupar por momento (preparação, dev, validação, entrega)
---
## MODO RÁPIDO
Se o utilizador pedir `/interview quick` ou a tarefa for simples:
Perguntar apenas:
1. O quê?
2. Resultado esperado?
3. Restrições importantes?
Output: Lista bullet points, não documento completo.
---
## MODO TÉCNICO
Se o utilizador pedir `/interview tech` ou for projecto de código:
Adicionar:
- Arquitectura preferida?
- Padrões de código?
- Testes necessários?
- Documentação esperada?
---
## GUARDAR REQUISITOS
Após gerar documento:
1. **Se projecto tem pasta:** Guardar em `[pasta-projecto]/docs/REQ-[nome].md`
2. **Se não:** Guardar em Obsidian vault `00-Inbox/REQ-[nome].md`
3. **Memória:** Guardar resumo em Mem0 para referência futura
```javascript
await mcp__mem_save_memory({
text: "Requisitos [nome] ([data]): [resumo 2-3 frases]"
});
```
---
## ANTI-PATTERNS
**NÃO fazer:**
- Assumir respostas
- Saltar perguntas "óbvias"
- Começar a implementar antes de terminar
- Fazer todas as perguntas de uma vez (usar fases)
**FAZER:**
- Adaptar perguntas ao contexto
- Pedir exemplos concretos
- Validar entendimento ("Então queres X, correcto?")
- Identificar ambiguidades
---
## EXEMPLO DE USO
```
Utilizador: /interview
Claude: Vou fazer algumas perguntas para clarificar os requisitos.
**Fase 1: Contexto**
[AskUserQ
+1
View File
@@ -0,0 +1 @@
## 2026-06-30 init | Estrutura padrão
+177
View File
@@ -0,0 +1,177 @@
---
name: product
description: Gestao de produto desde discovery ate execucao, usando frameworks como RICE, MoSCoW e Jobs-to-be-Done.
layer: wiki
---
# Skill /product - Product Management & Planning
Skill especializada em gestao de produto, desde discovery ate execucao.
## Sintaxe
```
/product [operacao] [contexto]
```
**Operacoes:**
- `discovery` - Problem space, jobs-to-be-done, validation
- `prioritize` - RICE scoring, MoSCoW, value/effort matrix
- `roadmap` - Planeamento quadrimestral, epics, milestones
- `backlog` - User stories, acceptance criteria, refinement
- `sprint` - Sprint planning, capacity, DoD
## Quando Usar
- Planear novo produto ou feature
- Priorizar backlog com multiplas requests
- Criar roadmap trimestral/anual
- Refinar user stories
- Optimizar processo de produto
---
## Contexto NotebookLM
ANTES de executar, consultar notebooks:
```
mcp__notebooklm__notebook_query({
notebook_id: "79d43410-0e29-4be1-881d-84db6bdc239a",
query: "<adaptar ao contexto do pedido do utilizador>"
})
```
---
## Protocolo de Execucao
### 1. Product Discovery
**Jobs to be Done (JTBD):**
```
When [situacao]
I want to [motivacao]
So I can [outcome desejado]
```
**Validation Framework resumo:**
- **Desirability:** Users querem? (interviews, surveys, prototype tests)
- **Viability:** Negocio faz sentido? (TAM/SAM/SOM, unit economics, ROI > 3x)
- **Feasibility:** Conseguimos construir? (spike, dependencies, timeline)
Detalhes completos: [references/metricas-produto.md](references/metricas-produto.md)
### 2. Prioritization
**RICE Score (recomendado):**
```
Score = (Reach x Impact x Confidence) / Effort
```
Tambem disponivel: MoSCoW, Value vs Effort Matrix.
Detalhes e exemplos: [references/prioritization-frameworks.md](references/prioritization-frameworks.md)
### 3. Roadmap Planning
Template quadrimestral com themes, epics, milestones e success metrics.
Templates completos: [references/roadmap-sprint-templates.md](references/roadmap-sprint-templates.md)
### 4. User Stories
```
Como [role]
Quero [accao]
Para que [beneficio]
Given [contexto]
When [accao]
Then [resultado esperado]
```
Template completo com edge cases e DoD: [references/roadmap-sprint-templates.md](references/roadmap-sprint-templates.md)
### 5. Sprint Planning
Template de sprint (2 semanas) com capacity, committed stories, stretch goals e ceremonies.
Template: [references/roadmap-sprint-templates.md](references/roadmap-sprint-templates.md)
---
## Metricas de Produto
### AARRR Pirate Metrics
| Fase | Metrica | Target |
|------|---------|--------|
| Acquisition | Signups/semana | +20%/mes |
| Activation | Setup completo | > 40% |
| Retention | D7 retention | > 30% |
| Revenue | Conversion free->paid | > 3% |
| Referral | NPS | > 40 |
### Outcomes vs Outputs
```
ERRADO: "Lancar 10 features este trimestre"
CERTO: "Aumentar retention D30 de 20% para 35%"
```
Metricas detalhadas: [references/metricas-produto.md](references/metricas-produto.md)
---
## Exemplos de Uso
```
/product discovery -> Problem space + JTBD + validation + decision Build/No Build
/product prioritize -> Lista features + RICE scoring + ranking + export Desk
/product roadmap -> Objectivos Q1/Q2/Q3 + epics + milestones + success metrics
```
---
## Agentes Recomendados
```javascript
// Planeamento produto
Task({
subagent_type: "software-project-planner",
model: "sonnet",
prompt: "Create product roadmap Q1 2026. Focus: B2B SaaS collaboration tool."
});
// Research & validation
Task({
subagent_type: "research-analyst",
model: "sonnet",
prompt: "Analyse competitor features. Product: [X]. Competitors: [A, B, C]."
});
```
---
## Conteudo Detalhado
| Referencia | Conteudo |
|------------|----------|
| [references/prioritization-frameworks.md](references/prioritization-frameworks.md) | RICE scoring, MoSCoW, Value vs Effort matrix |
| [references/roadmap-sprint-templates.md](references/roadmap-sprint-templates.md) | Templates roadmap, user stories, sprint planning |
| [references/metricas-produto.md](references/metricas-produto.md) | AARRR, product health, validation framework, pain points |
---
## Healing Log
Registo de erros conhecidos e como evitá-los. Lido automaticamente antes de executar.
```jsonl
{"date":"","issue":"","fix":"","source":"user|auto"}
```
*Adicionar nova linha após cada erro corrigido.*
@@ -0,0 +1,83 @@
# Product - Metricas de Produto
## AARRR Pirate Metrics
| Fase | Metrica | Target |
|------|---------|--------|
| **Acquisition** | Signups/semana | +20%/mes |
| **Activation** | Setup completo | > 40% |
| **Retention** | D7 retention | > 30% |
| **Revenue** | Conversion free->paid | > 3% |
| **Referral** | NPS | > 40 |
## Product Health
### Engagement
- DAU/MAU ratio (stickiness): > 20%
- Session duration: Sector-dependent
- Features usado/session: > 3
### Adoption
- Time to first value: < 10 min
- Feature adoption (30 dias): > 30%
- Power users (5+ dias/semana): > 10%
### Quality
- Error rate: < 1%
- Support tickets/100 users: < 5
- CSAT: > 4/5
## Outcomes vs Outputs
```
ERRADO (Output-driven):
"Lancar 10 features este trimestre"
CERTO (Outcome-driven):
"Aumentar retention D30 de 20% para 35% (via engagement features)"
Medir:
- North Star Metric (ex: DAU/MAU)
- Leading indicators (ex: time-to-value)
- Lagging indicators (ex: churn)
```
## Discovery - Pain Points
```
Perguntas a fazer:
1. O que frustra o utilizador actualmente?
2. Que workarounds usa hoje?
3. Quanto tempo/dinheiro perde com o problema?
4. Qual a frequencia do problema?
5. O que tentou fazer para resolver?
Evidencia:
- [ ] 5+ entrevistas com users
- [ ] Analytics de uso (onde abandonam?)
- [ ] Tickets de suporte relacionados
- [ ] Pesquisa concorrencia (como resolvem?)
```
## Validation Framework
### Desirability (Users querem?)
- Problem interviews (10+)
- Solution interviews (5+)
- Survey (50+ respostas)
- Prototype test (usability)
- Evidence: X% users pagaria, Y% usaria diario
### Viability (Negocio faz sentido?)
- Market size (TAM/SAM/SOM)
- Revenue model claro
- Unit economics positivos
- Payback period aceitavel
- Target: ROI > 3x em 12 meses
### Feasibility (Conseguimos construir?)
- Technical spike completo
- Dependencies mapeadas
- Resources disponiveis
- Timeline realista
- Risk assessment: Alto/Medio/Baixo
@@ -0,0 +1,78 @@
# Product - Frameworks de Priorizacao
## A. RICE Score (Recomendado)
```
Reach x Impact x Confidence
Score = ----------------------------
Effort
Reach: Quantos users impactados por periodo
- Ex: 1000 users/quarter, 500 users/month
Impact: Quanto impacto por user
- 3 = Massive impact
- 2 = High impact
- 1 = Medium impact
- 0.5 = Low impact
- 0.25 = Minimal impact
Confidence: Certeza das estimativas
- 100% = Dados solidos
- 80% = Boas evidencias
- 50% = Suposicoes educadas
Effort: Person-months para entregar
- Ex: 2 person-months, 0.5 person-month
```
Exemplo Pratico:
| Feature | Reach | Impact | Confidence | Effort | RICE | Prioridade |
|---------|-------|--------|------------|--------|------|------------|
| Export PDF | 800/q | 2 | 80% | 1 | 1280 | Alta |
| Dark mode | 400/q | 0.5 | 100% | 0.5 | 400 | Media |
| API v2 | 200/q | 3 | 50% | 3 | 100 | Baixa |
| Search filters | 1000/q | 1 | 80% | 0.5 | 1600 | Alta |
## B. MoSCoW Method
```
MUST have: Critico para launch (MVP)
- Sem isso, produto nao funciona
- Legal/compliance obrigatorio
- Blocker absoluto
SHOULD have: Importante mas nao critico
- Melhora significativamente a experiencia
- Workaround existe
- Pode ser adiado 1 sprint
COULD have: Nice to have
- Pequena melhoria
- Se sobrar tempo
- Low effort/low impact
WON'T have (agora): Fora de scope
- Para proxima versao
- Nao alinhado com objectivo actual
```
## C. Value vs Effort Matrix
```
| HIGH VALUE
|
II | I
Quick | Big
Wins | Bets
(DO) | (PLAN)
---------+---------
III | IV
Fill | Money
Ins | Pit
(LATER) | (AVOID)
|
| LOW VALUE
LOW EFFORT -> HIGH EFFORT
```
@@ -0,0 +1,162 @@
# Product - Templates de Roadmap e Sprint
## Template Roadmap Quadrimestral
```markdown
# Product Roadmap Q1-Q3 2026
## Q1 (Jan-Abr): Foundation
**Theme:** Stabilize core + basic integrations
**Goal:** 100 active users, NPS > 40
### Epic 1: Core Functionality Polish
- [ ] Performance optimization (< 2s load)
- [ ] Mobile responsive
- [ ] Error handling robusto
### Epic 2: Basic Integrations
- [ ] Slack notifications
- [ ] Google Calendar sync
- [ ] Email templates
**Milestone:** MVP Launch (31 Mar)
**Success Metrics:**
- 50 signups/week
- 40% activation rate
- < 10% churn
---
## Q2 (Mai-Ago): Growth
**Theme:** Expand features + virality
**Goal:** 500 active users, NPS > 50
### Epic 3: Collaboration Features
- [ ] Team workspaces
- [ ] Comments & mentions
- [ ] Activity feed
### Epic 4: Growth Loops
- [ ] Invite system (referral)
- [ ] Public templates gallery
- [ ] Embeddable widgets
**Milestone:** Product-Market Fit (31 Ago)
**Success Metrics:**
- 1000 signups total
- 50% M1 retention
- NRR > 100%
---
## Q3 (Set-Dez): Scale
**Theme:** Enterprise readiness
**Goal:** 2000 active users, ARR > 100kEUR
### Epic 5: Enterprise Features
- [ ] SSO/SAML
- [ ] Advanced permissions
- [ ] Audit logs
- [ ] Custom branding
### Epic 6: API & Integrations
- [ ] Public API v1
- [ ] Zapier integration
- [ ] Webhooks
**Milestone:** Enterprise Ready (31 Dez)
```
## Template User Story
```markdown
## US-123: Export dashboard to PDF
### User Story
Como [Product Manager]
Quero [exportar dashboard para PDF com branding personalizado]
Para que [possa partilhar relatorios profissionais com stakeholders externos]
### Context
- Users pedem isto em 60% dos support tickets
- Concorrentes ja tem (Competitor A, B)
- Workaround actual: screenshots (nao profissional)
### Acceptance Criteria
Given [estou no dashboard com dados carregados]
When [clico em "Export PDF"]
Then [sistema gera PDF em < 5s com:
- Logo da empresa
- Data do relatorio
- Todos os graficos (vectorial)
- Tabela de dados resumida
- Footer com marca d'agua]
And [recebo notificacao quando PDF pronto]
And [posso fazer download ou enviar por email]
### Edge Cases
- [ ] Dashboard sem dados -> mostrar "No data" no PDF
- [ ] Dashboard com 100+ items -> paginar automaticamente
- [ ] Logo nao carregado -> usar placeholder
### Definition of Done
- [ ] Codigo completo e reviewed
- [ ] Testes unitarios (> 80% coverage)
- [ ] Testes E2E (happy path + edge cases)
- [ ] Documentacao API actualizada
- [ ] Changelog entry
- [ ] Deployed to staging
- [ ] QA sign-off
- [ ] Product Manager review
### Effort Estimate
Story Points: 5 (Fibonacci: 1, 2, 3, 5, 8, 13)
Dev: 2 days | QA: 0.5 days | Total: 2.5 days
```
## Template Sprint (2 semanas)
```markdown
# Sprint 23 (3-14 Fev 2026)
## Sprint Goal
"Users podem exportar dashboards profissionais e partilhar com stakeholders"
## Team Capacity
- 3 developers x 8 days = 24 person-days
- Velocity media: 25 story points/sprint
- Buffer para bugs/support: 20% -> 20 SP disponiveis
## Committed Stories
### Must Have (MVP sprint)
- [ ] US-123: Export PDF (5 SP) - @dev1
- [ ] US-124: Email sharing (3 SP) - @dev2
- [ ] US-125: Custom branding settings (3 SP) - @dev3
### Should Have (se tempo)
- [ ] US-126: Schedule exports (5 SP)
- [ ] US-127: Export templates (3 SP)
### Bugs Criticos
- [ ] BUG-45: Login timeout (2 SP) - @dev1
**Total Committed:** 13 SP
**Stretch Goals:** 8 SP
## Definition of Done (Sprint)
- [ ] Todas as US committed DONE
- [ ] Zero bugs criticos open
- [ ] Test coverage > 80%
- [ ] Docs actualizadas
- [ ] Demo preparada para stakeholders
- [ ] Retrospective completa
## Ceremonies
- Planning: Seg 3 Fev, 10h-12h
- Daily: 9h30 (15 min)
- Refinement: Qua 7 Fev, 14h-16h
- Review: Sex 14 Fev, 14h-15h
- Retrospective: Sex 14 Fev, 15h-16h
```
+141
View File
@@ -0,0 +1,141 @@
---
name: research
description: Pesquisa profunda e analise competitiva usando frameworks como SWOT, Porter's Five Forces e PESTEL.
layer: wiki
---
# Skill /research - Research e Competitive Analysis
Skill especializada em pesquisa profunda e analise competitiva, usando frameworks como SWOT, Porter's Five Forces e PESTEL.
## Sintaxe
```
/research [operacao] [contexto]
```
**Operacoes:**
- `swot` - Analise SWOT (Strengths, Weaknesses, Opportunities, Threats)
- `competitive` - Competitive analysis de concorrentes
- `market` - Market research e sizing (TAM/SAM/SOM)
- `pestel` - Analise macro-ambiental (Political, Economic, Social, Tech, Environmental, Legal)
- `porter` - Porter's Five Forces
- `due-diligence` - Due diligence completa (M&A, partnership, investment)
## Quando Usar
- Analise de mercado para novo produto
- Competitive intelligence de concorrentes
- Due diligence para aquisicao/parceria
- Decisao estrategica (entrar num mercado, pivot)
- Pitch deck para investidores
---
## Contexto NotebookLM
ANTES de executar, consultar notebooks para contexto especializado:
| Notebook | ID | Consultar quando |
|----------|-----|-----------------|
| Estrategia e Empreendedorismo | 79d43410 | Para contexto estrategico |
```
mcp__notebooklm__notebook_query({
notebook_id: "79d43410-0e29-4be1-881d-84db6bdc239a",
query: "<adaptar ao contexto do pedido do utilizador>"
})
```
---
## Protocolo de Execucao
### 1. Definir Scope (SEMPRE comecar aqui)
Usar Research Brief Template em: `references/recolha-dados-templates.md`
### 2. Recolha de Dados
Fontes primarias (entrevistas, surveys) e secundarias (relatorios, dados publicos, dados internos) detalhadas em: `references/recolha-dados-templates.md`
### 3. Frameworks de Analise
Templates completos para SWOT, Porter's Five Forces, PESTEL e Competitive Analysis em: `references/frameworks-analise.md`
**Resumo dos frameworks:**
| Framework | Quando usar | Foco |
|-----------|-------------|------|
| SWOT | Qualquer analise estrategica | Interno (S/W) + Externo (O/T) |
| Porter | Avaliar atractividade industria | 5 forcas competitivas |
| PESTEL | Analise macro-ambiental | 6 factores externos |
| Competitive | Analisar concorrentes | Produto, pricing, GTM, feedback |
### 4. Market Sizing (TAM/SAM/SOM)
Template em: `references/recolha-dados-templates.md` (seccao Market Sizing)
### 5. Synthesis e Reporting
Executive Summary template em: `references/recolha-dados-templates.md` (seccao Executive Summary)
---
## MCPs Utilizados
```
mcp__web-fetch__* # Analise websites concorrentes
mcp__notebooklm__notebook_query # Frameworks estrategicos
mcp__google-workspace__* # Docs para reports
```
---
## Exemplos de Uso
### 1. Competitive Analysis
```
/research competitive "Concorrente X"
-> Recolha dados (website, reviews, funding)
-> Framework analise (SWOT vs nos)
-> Report estruturado
-> Export para Google Docs
```
### 2. Market Entry Decision
```
/research swot + pestel + porter
-> Analise multi-framework
-> Consulta NotebookLM (best practices)
-> Risk assessment
-> Recomendacao GO/NO-GO
```
### 3. Due Diligence Rapida
```
/research due-diligence "Empresa Y"
-> Levantamento financeiro, equipa, produto
-> Red flags check
-> Valuation estimate
-> Report executivo
```
---
## References
- `references/frameworks-analise.md` - Templates SWOT, Porter, PESTEL, Competitive Analysis
- `references/recolha-dados-templates.md` - Fontes dados, Research Brief, TAM/SAM/SOM, Executive Summary
---
## Healing Log
Registo de erros conhecidos e como evitá-los. Lido automaticamente antes de executar.
```jsonl
{"date":"","issue":"","fix":"","source":"user|auto"}
```
*Adicionar nova linha após cada erro corrigido.*
@@ -0,0 +1,223 @@
# Frameworks de Analise Estrategica
Templates completos para SWOT, Porter's Five Forces, PESTEL e Competitive Analysis.
---
## A. SWOT Analysis
```
+-------------------------+-------------------------+
| STRENGTHS | WEAKNESSES |
| (Interno +) | (Interno -) |
+-------------------------+-------------------------+
| O que fazemos bem? | Onde falhamos? |
| Recursos unicos? | Recursos que faltam? |
| Vantagens competitivas? | Desvantagens vs compe? |
| | |
| Ex: | Ex: |
| - Equipa experiente | - Marca desconhecida |
| - Tech stack moderna | - Budget marketing |
| - Clientes satisfeitos | - Sem sales team |
+-------------------------+-------------------------+
+-------------------------+-------------------------+
| OPPORTUNITIES | THREATS |
| (Externo +) | (Externo -) |
+-------------------------+-------------------------+
| Tendencias a favor? | Riscos externos? |
| Gaps no mercado? | Concorrencia? |
| Mudancas regulacao? | Mudancas tecnologicas? |
| | |
| Ex: | Ex: |
| - GDPR -> procura | - Big tech entra |
| - Remote work trend | - Recessao economica |
| - Incentivos PT2030 | - Open source gratuito |
+-------------------------+-------------------------+
```
**Proximos Passos (Estrategias):**
```
SO (Strengths + Opportunities): Crescimento agressivo
ST (Strengths + Threats): Defesa activa
WO (Weaknesses + Opportunities): Melhorar para aproveitar
WT (Weaknesses + Threats): Dano minimo / Pivot
```
---
## B. Porter's Five Forces
```
+---------------------------------------------------+
| 1. RIVALIDADE ENTRE CONCORRENTES |
+---------------------------------------------------+
| [ ] Quantos concorrentes directos? |
| [ ] Crescimento do mercado? |
| [ ] Diferenciacao possivel? |
| [ ] Switching costs? |
| [ ] Guerras de precos? |
| |
| Intensidade: ALTA / MEDIA / BAIXA |
+---------------------------------------------------+
+---------------------------------------------------+
| 2. PODER DE NEGOCIACAO DOS FORNECEDORES |
+---------------------------------------------------+
| [ ] Poucos fornecedores alternativos? |
| [ ] Custos de mudanca elevados? |
| [ ] Fornecedor pode integrar verticalmente? |
| |
| Poder: ALTO / MEDIO / BAIXO |
+---------------------------------------------------+
+---------------------------------------------------+
| 3. PODER DE NEGOCIACAO DOS CLIENTES |
+---------------------------------------------------+
| [ ] Poucos clientes (concentracao)? |
| [ ] Produto/servico commoditizado? |
| [ ] Switching costs baixos? |
| [ ] Transparencia de precos? |
| |
| Poder: ALTO / MEDIO / BAIXO |
+---------------------------------------------------+
+---------------------------------------------------+
| 4. AMEACA DE NOVOS ENTRANTES |
+---------------------------------------------------+
| [ ] Barreiras a entrada (capital, regulacao)? |
| [ ] Economias de escala necessarias? |
| [ ] Lealdade a marca existente? |
| [ ] Acesso a canais de distribuicao? |
| |
| Ameaca: ALTA / MEDIA / BAIXA |
+---------------------------------------------------+
+---------------------------------------------------+
| 5. AMEACA DE PRODUTOS SUBSTITUTOS |
+---------------------------------------------------+
| [ ] Alternativas com melhor price/performance? |
| [ ] Switching costs baixos para substituto? |
| [ ] Tendencias favor do substituto? |
| |
| Ameaca: ALTA / MEDIA / BAIXA |
+---------------------------------------------------+
CONCLUSAO:
Atractividade da industria: ALTA / MEDIA / BAIXA
Estrategia recomendada: [...]
```
---
## C. PESTEL Analysis
```
POLITICAL (Regulacao, Estabilidade)
- Regulacao GDPR/privacy -> [impacto]
- Incentivos fiscais I&D -> [oportunidade]
- Estabilidade governo PT -> [risco]
ECONOMIC (Inflacao, Crescimento, Cambio)
- Taxa de juro -> [impacto custos financiamento]
- Crescimento PIB PT -> [procura]
- Taxa de desemprego -> [talento disponivel]
SOCIAL (Demografia, Tendencias, Valores)
- Remote work trend -> [oportunidade]
- Envelhecimento populacao -> [target]
- Adopcao tecnologia SMBs -> [timing]
TECHNOLOGICAL (Inovacao, Disrupcao)
- AI/ML acessivel -> [competitive advantage]
- Cloud computing -> [custos infra]
- Open source -> [ameaca]
ENVIRONMENTAL (Sustentabilidade, Clima)
- Pressao ESG -> [requisito]
- Carbon neutrality -> [diferenciador]
- Green tech -> [nicho]
LEGAL (Legislacao, Compliance)
- Lei do trabalho remoto -> [oportunidade]
- Regulacao sector X -> [barreira entrada]
- IP/patents -> [proteccao]
```
---
## D. Competitive Analysis Template
```markdown
# Competitive Analysis: [Concorrente X]
## Overview
- **Website:** [URL]
- **Fundacao:** [Ano]
- **HQ:** [Localizacao]
- **Tamanho:** [N. employees] - via LinkedIn
- **Funding:** [Total raised] - via Crunchbase
- **Investors:** [Lista] - via Crunchbase
- **Status:** Activo / Estavel / Crescendo / Declinando
## Produto/Servico
**Oferta principal:**
- [Produto A]
- [Produto B]
**Pricing:**
| Plano | Preco | Features-chave |
|-------|-------|----------------|
| Free | 0 EUR | [features] |
| Pro | 29 EUR/mes | [features] |
| Enterprise | Custom | [features] |
**Diferenciadores:**
- [O que eles fazem bem unico]
**Tech Stack:** (via BuiltWith/Wappalyzer)
- Frontend: [React / Vue / etc]
- Backend: [Node / Python / etc]
- Hosting: [AWS / Vercel / etc]
## Go-to-Market
**Target:** [ICP - Ideal Customer Profile]
**Channels:**
- SEO: [Organic traffic estimate] - SimilarWeb
- PPC: [Ads visiveis] - SpyFu
- Content: [Blog posts/mes]
- Social: [Followers, engagement]
**Messaging:**
- Headline: "[copiar da homepage]"
- Value prop: "[resumir em 1 frase]"
## Customer Feedback (G2/Capterra/Trustpilot)
**Rating:** 4.2/5 (123 reviews)
**Top Positives:**
- [Feature A] mentioned in 60% reviews
- [Aspecto B] praised
**Top Complaints:**
- [Bug/limitation C] em 40% reviews
- [Pricing] considerado caro
## Strengths vs Us
- [Vantagem deles]
- [Vantagem deles]
## Weaknesses vs Us
- [Desvantagem deles]
- [Gap que exploramos]
## Oportunidades de Diferenciacao
1. [Feature X que eles nao tem]
2. [Segmento Y que ignoram]
3. [Pricing model Z mais justo]
## Threat Level
HIGH / MEDIUM / LOW
**Reasoning:** [...]
```
@@ -0,0 +1,148 @@
# Recolha de Dados e Templates de Reporting
Fontes de dados, templates de research brief, market sizing e executive summary.
---
## Fontes Primarias (dados originais)
```
ENTREVISTAS
- Stakeholders internos (5-10)
- Clientes actuais (10-20)
- Prospects (5-10)
- Experts da industria (3-5)
Template perguntas:
1. Maior desafio no [area]?
2. Solucoes actuais? Satisfacao?
3. O que faria a solucao ideal?
4. Quanto vale resolver este problema?
5. Quem decide compra? Processo?
SURVEYS
- Amostra: 50-200 respostas (statistical significance)
- Duracao: < 5 minutos
- Incentivo: Sorteio / Report gratis
- Plataforma: Typeform / Google Forms
```
## Fontes Secundarias (dados existentes)
```
RELATORIOS INDUSTRIA
- Gartner, Forrester, IDC (paywalled)
- Statista, eMarketer (publico)
- CB Insights (funding, trends)
DADOS PUBLICOS
- Websites concorrentes (WebFetch)
- LinkedIn (empresa, equipa, vagas)
- Crunchbase (funding, investors)
- G2, Capterra, Trustpilot (reviews)
- Google Trends (interesse ao longo tempo)
- SimilarWeb (trafego, sources)
DADOS INTERNOS
- Google Analytics (comportamento users)
- Desk CRM (deals ganhos/perdidos)
- Support tickets (pain points)
- Sales calls recordings (objecoes)
```
---
## Research Brief Template
```markdown
# Research Brief: [Titulo]
## Pergunta Central
[O que queremos descobrir? Ex: "Viabilidade de entrar no mercado PT de e-learning corporativo"]
## Stakeholders
- Decision maker: [Nome, Cargo]
- Beneficiarios: [Quem usa a research?]
- Approval: [Quem aprova?]
## Timeline
- Inicio: [Data]
- Entrega: [Data]
- Urgencia: Alta / Media / Baixa
## Ambito
**In scope:**
- [X]
- [Y]
**Out of scope:**
- [A]
- [B]
## Fontes a Consultar
- [ ] Fontes primarias (entrevistas, surveys)
- [ ] Fontes secundarias (relatorios, artigos)
- [ ] Dados internos (analytics, CRM)
- [ ] Dados publicos (websites, LinkedIn)
## Output Esperado
- Formato: Brief (1 pag) / Report (5-10 pag) / Deep Dive (20+ pag)
- Entrega: PDF / Apresentacao / Dashboard
```
---
## Market Sizing (TAM/SAM/SOM)
```
TAM (Total Addressable Market)
"Se tivessemos 100% do mercado..."
Exemplo: Todas as PMEs em Portugal = 1.2M empresas x 500 EUR/ano = 600M EUR
SAM (Serviceable Available Market)
"Mercado que conseguimos servir realisticamente..."
Exemplo: PMEs 10-50 employees em PT = 80k empresas x 500 EUR = 40M EUR
SOM (Serviceable Obtainable Market)
"Quota que conseguimos capturar em 3 anos..."
Exemplo: 2% do SAM = 800 empresas x 500 EUR = 400k EUR
Validacao:
[ ] Bottom-up (clientes x preco)
[ ] Top-down (% de mercado total)
[ ] Value theory (quanto vale resolver problema)
```
---
## Executive Summary Template (1 pagina)
```markdown
# Executive Summary: [Titulo Research]
## Key Question
[Pergunta central]
## Conclusion (TL;DR)
[Recomendacao clara: GO / NO-GO / WAIT / PIVOT]
## Key Findings (Top 3)
1. [Finding mais importante]
2. [Finding #2]
3. [Finding #3]
## Risks & Mitigations
| Risco | Probabilidade | Impacto | Mitigacao |
|-------|---------------|---------|-----------|
| [Risco A] | Alta | Alto | [Como mitigar] |
## Next Steps
1. [Accao imediata]
2. [Accao follow-up]
3. [Decision point]
## Resources Needed
- Budget: [X] EUR
- Time: [Y] semanas
- Team: [Z] pessoas
```
+165
View File
@@ -0,0 +1,165 @@
---
name: saas
description: Arquitectura e desenvolvimento de produtos SaaS cobrindo multi-tenancy, billing, onboarding e metricas.
layer: wiki
---
# Skill /saas - SaaS Architecture & Strategy
Skill especializada em arquitectura e desenvolvimento de produtos SaaS (Software as a Service).
## Sintaxe
```
/saas [operacao] [contexto]
```
**Operacoes:**
- `arquitectura` - Design multi-tenant, isolamento dados, escalabilidade
- `pricing` - Modelos de precos e packaging de features
- `onboarding` - Flow de activacao e time-to-value
- `billing` - Integracao Stripe, trial, upgrades/downgrades
- `metricas` - Dashboard MRR, churn, LTV, CAC
## Quando Usar
- Planear novo produto SaaS
- Migrar aplicacao tradicional para SaaS
- Optimizar onboarding ou reduzir churn
- Implementar billing e subscriptions
- Arquitectura multi-tenant
---
## Contexto NotebookLM
ANTES de executar, consultar notebooks:
```
mcp__notebooklm__notebook_query({
notebook_id: "79d43410-0e29-4be1-881d-84db6bdc239a",
query: "<adaptar ao contexto do pedido do utilizador>"
})
```
---
## Protocolo de Execucao
### 1. Discovery de Produto
Questoes chave:
```
Modelo de negocio:
- [ ] B2B, B2C ou B2B2C?
- [ ] Self-service ou sales-led?
- [ ] PLG (product-led growth)?
Utilizadores:
- [ ] Quantos users por tenant?
- [ ] Diferentes roles/permissoes?
- [ ] Colaboracao entre users?
Dados:
- [ ] Volume de dados por tenant?
- [ ] Regulamentacoes (GDPR, HIPAA)?
- [ ] Backup e disaster recovery?
Integracoes:
- [ ] APIs third-party necessarias?
- [ ] SSO/SAML enterprise?
- [ ] Webhooks para partners?
```
### 2. Arquitectura Multi-tenant
Tres estrategias de isolamento:
| Estrategia | Pros | Contras | Quando Usar |
|-----------|------|---------|-------------|
| DB per Tenant | Seguranca total, restore independente | Custo, complexidade | Enterprise, regulamentacoes |
| Schema per Tenant | Bom isolamento, gestao simples | Limites BD (~10k schemas) | B2B medio porte |
| Shared DB + RLS | Mais barato, facil escalar | tenant_id em tudo | B2C, SMB self-service |
Detalhes de implementacao (PostgreSQL RLS, checklist seguranca): [references/multi-tenancy.md](references/multi-tenancy.md)
### 3. Modelos de Pricing
| Modelo | Quando Usar |
|--------|-------------|
| Flat Rate | Simplicidade, previsibilidade |
| Per Seat | B2B, equipas |
| Usage Based | Variacao alta de uso |
| Tiered | Upsell natural |
| Hybrid | Receita previsivel + escala |
Tiers detalhados, Stripe billing, feature flags: [references/pricing-billing.md](references/pricing-billing.md)
### 4. Stack Tecnica Recomendada
```
Frontend: Next.js 14+ | Tailwind + shadcn/ui | Zustand | React Hook Form + Zod
Backend: Next.js API / tRPC | PostgreSQL (Supabase) | Prisma | BullMQ | Redis
Auth: Clerk / Auth0 / NextAuth.js
Billing: Stripe Billing
Email: Resend / SendGrid
Analytics: PostHog / Mixpanel
Hosting: Vercel | Railway | Supabase | Cloudflare
```
### 5. Metricas SaaS
KPIs essenciais, onboarding flow, metricas de retencao: [references/metricas-kpis.md](references/metricas-kpis.md)
---
## Exemplos de Uso
```
/saas arquitectura -> Discovery + multi-tenancy + stack + roadmap MVP
/saas pricing -> Analise competidores + LTV/CAC + tiers + feature packaging
/saas metricas -> KPIs + queries SQL + setup analytics + dashboards
```
---
## Agentes Recomendados
```javascript
// Arquitectura tecnica
Task({
subagent_type: "software-architect",
model: "sonnet",
prompt: "Design multi-tenant SaaS architecture. PostgreSQL RLS + Next.js."
});
// Estrategia produto
Task({
subagent_type: "software-project-planner",
model: "sonnet",
prompt: "SaaS onboarding flow. Time-to-value < 5min. B2B productivity tool."
});
```
---
## Conteudo Detalhado
| Referencia | Conteudo |
|------------|----------|
| [references/multi-tenancy.md](references/multi-tenancy.md) | Implementacao RLS PostgreSQL, checklist seguranca |
| [references/pricing-billing.md](references/pricing-billing.md) | Tiers, Stripe setup, trial conversion, feature flags |
| [references/metricas-kpis.md](references/metricas-kpis.md) | KPIs receita/crescimento/aquisicao/retencao, onboarding flow |
---
## Healing Log
Registo de erros conhecidos e como evitá-los. Lido automaticamente antes de executar.
```jsonl
{"date":"","issue":"","fix":"","source":"user|auto"}
```
*Adicionar nova linha após cada erro corrigido.*
@@ -0,0 +1,63 @@
# SaaS - Metricas e KPIs
## Receita
| Metrica | Formula | Target |
|---------|---------|--------|
| **MRR** | Monthly Recurring Revenue | Crescimento mes/mes |
| **ARR** | MRR x 12 | > 100kEUR para sustainable |
| **ARPU** | MRR / Total customers | Sector-dependent |
| **NRR** | (MRR inicio + expansion - churn - contraction) / MRR inicio | > 100% |
## Crescimento
| Metrica | Formula | Target |
|---------|---------|--------|
| **New MRR** | Novos clientes x preco medio | +20%/mes (early) |
| **Expansion MRR** | Upsells + Add-ons | > 10% do MRR |
| **Churn MRR** | Cancelamentos valor | < 5%/mes |
## Aquisicao
| Metrica | Formula | Target |
|---------|---------|--------|
| **CAC** | Custo marketing+sales / Novos clientes | < 1/3 LTV |
| **LTV** | ARPU x (1 / Churn Rate) - CAC | > 3x CAC |
| **Payback Period** | CAC / ARPU | < 12 meses |
## Produto
| Metrica | Target |
|---------|--------|
| **Activation Rate** | > 40% (signup -> aha moment) |
| **DAU/MAU** | > 20% (stickiness) |
| **Time to Value** | < 10 minutos |
| **Feature Adoption** | > 30% users usam feature nova (30 dias) |
## Retencao
| Metrica | Formula | Target |
|---------|---------|--------|
| **Logo Churn** | Clientes cancelaram / Total | < 5%/mes |
| **Revenue Churn** | MRR perdido / MRR total | < 5%/mes |
| **Cohort Retention** | Clientes mes X activos em X+6 | > 50% |
## Onboarding Flow (Time-to-Value)
Objectivo: Levar user de signup a "aha moment" em < 5 minutos.
```
1. SIGNUP - Email + Password (ou OAuth Google) - < 30 segundos
2. WELCOME - Video 30s: "O que vais conseguir" - Skip disponivel
3. QUICK SETUP - 3-5 campos essenciais - < 2 minutos
4. FIRST ACTION - Criar primeiro item com template pre-preenchido - < 2 minutos
5. AHA MOMENT - Ver resultado imediato (export, share, etc)
6. NEXT STEPS - Checklist guiada: "3 passos para dominar"
```
Metricas de Onboarding:
- Signup -> Email verified: > 80%
- Email verified -> Setup complete: > 60%
- Setup -> First action: > 70%
- First action -> Aha moment: > 90%
- Activation rate (signup -> aha): > 40%
@@ -0,0 +1,59 @@
# SaaS - Arquitectura Multi-tenant
## Estrategias de Isolamento
### 1. Database per Tenant (Isolamento Maximo)
- Pros: Seguranca total, restore independente
- Contras: Custo, complexidade gestao
- Usar quando: Enterprise, regulamentacoes
- Exemplo: AWS RDS + Aurora Serverless
### 2. Schema per Tenant (Equilibrio)
- Pros: Bom isolamento, gestao simplificada
- Contras: Limites BD (PostgreSQL ~10k schemas)
- Usar quando: B2B medio porte
- Exemplo: PostgreSQL schemas dinamicos
### 3. Shared DB + Row-Level Security (Economico)
- Pros: Mais barato, facil escalar
- Contras: tenant_id em tudo, RLS obrigatorio
- Usar quando: B2C, SMB self-service
- Exemplo: PostgreSQL RLS policies
## Implementacao Row-Level Security (PostgreSQL)
```sql
-- 1. Adicionar tenant_id a todas as tabelas
ALTER TABLE users ADD COLUMN tenant_id UUID NOT NULL;
ALTER TABLE projects ADD COLUMN tenant_id UUID NOT NULL;
ALTER TABLE documents ADD COLUMN tenant_id UUID NOT NULL;
-- 2. Activar RLS
ALTER TABLE users ENABLE ROW LEVEL SECURITY;
ALTER TABLE projects ENABLE ROW LEVEL SECURITY;
ALTER TABLE documents ENABLE ROW LEVEL SECURITY;
-- 3. Criar policy de isolamento
CREATE POLICY tenant_isolation ON users
USING (tenant_id = current_setting('app.tenant_id')::uuid);
CREATE POLICY tenant_isolation ON projects
USING (tenant_id = current_setting('app.tenant_id')::uuid);
-- 4. No inicio de cada request (backend)
-- SET app.tenant_id = 'uuid-do-tenant-autenticado';
```
## Checklist Seguranca Multi-tenant
```
[ ] tenant_id em TODAS as tabelas
[ ] RLS policies activas
[ ] Indexes em tenant_id (performance)
[ ] Validacao tenant_id no auth middleware
[ ] Logs de acesso cross-tenant
[ ] Testes de isolamento (tenant A nao ve tenant B)
```
@@ -0,0 +1,137 @@
# SaaS - Pricing e Billing
## Modelos de Pricing
| Modelo | Descricao | Exemplo | Quando Usar |
|--------|-----------|---------|-------------|
| **Flat Rate** | Preco fixo mensal | 29EUR/mes | Simplicidade, previsibilidade |
| **Per Seat** | Por utilizador | 10EUR/user/mes | B2B, equipas |
| **Usage Based** | Pay-as-you-go | 0.01EUR/API call | Variacao alta de uso |
| **Tiered** | Planos com limites | Free/Pro/Enterprise | Upsell natural |
| **Hybrid** | Base + usage | 20EUR + 0.001EUR/email | Receita previsivel + escala |
Recomendacao Descomplicar:
```
B2B (equipas 5-50 users): PER SEAT
B2C (individual): TIERED
API/Infra (desenvolvedores): USAGE BASED
SaaS tradicional: HYBRID (base + usage caps)
```
## Exemplo de Tiers
**FREE (0EUR/mes):**
- 1 user
- 100 records/mes
- 1 GB storage
- Sem integracoes, API, suporte prioritario
**PRO (29EUR/mes):**
- 5 users
- 10.000 records/mes
- 50 GB storage
- Integracoes basicas
- API access (10k calls/mes)
- Email support (24h)
**ENTERPRISE (Custom):**
- Users ilimitados
- Records ilimitados
- Storage dedicado
- Todas as integracoes
- API ilimitado
- Suporte 24/7 + Account Manager
- SSO/SAML
- SLA 99.9%
## Billing com Stripe
### Setup Basico
```typescript
import Stripe from 'stripe';
const stripe = new Stripe(process.env.STRIPE_SECRET_KEY);
const subscription = await stripe.subscriptions.create({
customer: customerId,
items: [{ price: 'price_free' }],
trial_period_days: 14,
payment_behavior: 'default_incomplete',
expand: ['latest_invoice.payment_intent']
});
// Webhooks para sincronizar estado:
// - customer.subscription.created
// - customer.subscription.updated
// - customer.subscription.deleted
// - invoice.payment_succeeded
// - invoice.payment_failed
// Verificar feature access
const canUseFeature = (user: User, feature: string) => {
if (user.subscription.status !== 'active') return false;
return PLAN_FEATURES[user.subscription.plan].includes(feature);
};
```
### Trial -> Paid Conversion
```
Trial 14 dias (sem cartao)
|
+- Dia 7: Email "Metade do trial"
+- Dia 12: Email "2 dias restantes + valor criado"
+- Dia 14: Soft paywall (pedir cartao)
|
v
Converteu? -> Pro (29EUR/mes)
Nao converteu? -> Free (downgrade features)
```
## Feature Flags por Plano
```typescript
export const PLAN_FEATURES = {
free: [
'basic_dashboard',
'limited_records',
'email_support'
],
pro: [
'basic_dashboard',
'unlimited_records',
'api_access',
'integrations_basic',
'priority_support',
'export_csv'
],
enterprise: [
'*', // todas as features
'sso_saml',
'audit_logs',
'custom_domain',
'dedicated_support',
'sla_guarantee'
]
};
export function requireFeature(feature: string) {
return async (req, res, next) => {
const user = req.user;
const plan = user.subscription.plan;
if (!PLAN_FEATURES[plan].includes(feature) &&
!PLAN_FEATURES[plan].includes('*')) {
return res.status(403).json({
error: 'Upgrade required',
feature: feature,
current_plan: plan,
upgrade_to: 'pro'
});
}
next();
};
}
```