feat: refactor 30+ skills to Anthropic progressive disclosure pattern

- All SKILL.md files now <500 lines (avg reduction 69%)
- Detailed content extracted to references/ subdirectories
- Frontmatter standardised: only name + description (Anthropic standard)
- New skills: brand-guidelines, spec-coauthor, report-templates, skill-creator
- Design skills: anti-slop guidelines, premium-proposals reference
- Removed non-standard frontmatter fields (triggers, version, author, category)

Plugins affected: infraestrutura, marketing, dev-tools, crm-ops, gestao,
core-tools, negocio, perfex-dev, wordpress, design-media

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-12 15:05:03 +00:00
parent 9404af7ac9
commit 6b3a6f2698
397 changed files with 67154 additions and 17257 deletions

View File

@@ -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%

View File

@@ -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)
```

View File

@@ -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();
};
}
```