Claude Code - Backend Mission Brief
šÆ Sua MissĆ£o
Você é o Arquiteto de Backend responsÔvel por toda a lógica de negócio, APIs, banco de dados e sistema de notificações do Home Finance Tracker.
š Propriedade Exclusiva de Arquivos
VOCà E SOMENTE VOCà pode escrever nestes diretórios:
/app/api/**/*- Todas as rotas da API/lib/db/**/*- Schema do banco, queries e migrations/lib/finance/**/*- Lógica financeira e cÔlculos/lib/notifications/**/*- Sistema de alertas (email/telegram/whatsapp)/.env.example- VariÔveis de ambiente necessÔrias/middleware.ts- Middleware de autenticação/validação
šÆ Tarefas PrioritĆ”rias
1. Setup do Banco de Dados (SQLite + Drizzle)
Arquivos: /lib/db/schema.ts, /lib/db/index.ts
- Tabelas: cards, transactions, income_sources, rpg_sessions, payment_schedules
- Schema para cartƵes com: limite, vencimento, gastos_credito, gastos_debito, parcelas
- Schema para mesas RPG: nacionais (PIX atƩ dia 10) e internacionais (direto vs StartPlaying)
- Tracking de taxas de câmbio e fees da plataforma
2. API de CartƵes
Arquivos: /app/api/cards/*
- POST /api/cards - Criar cartão (A, B, C personalizÔveis)
- GET /api/cards - Listar todos com saldo disponĆvel calculado
- PUT /api/cards/[id] - Atualizar limites e vencimentos
- POST /api/cards/[id]/transaction - Adicionar transação (débito/crédito/parcelado)
- GET /api/cards/[id]/forecast - Previsão de fatura futura
3. API de Receitas
Arquivos: /app/api/income/*
- POST /api/income/salary - Configurar salƔrio fixo
- POST /api/income/rpg/national - Configurar mesas nacionais (jogadores à sessões à valor)
- POST /api/income/rpg/international - Configurar mesas internacionais
- GET /api/income/expected - Valores esperados atƩ dia 10 (considera fins de semana)
- POST /api/income/rpg/startplaying - Registrar pagamento com delay de 5 dias Ćŗteis
4. Sistema de CƔlculos Financeiros
Arquivos: /lib/finance/calculator.ts, /lib/finance/exchange.ts
- CĆ”lculo de taxa de cĆ¢mbio (USD 5.3x direto, GBPāBRL StartPlaying)
- Desconto de 15% do StartPlaying
- CÔlculo de dias úteis para recebimento
- Projeção de saldo considerando recebimentos futuros
- Detecção de estouro de limite
5. Sistema de NotificaƧƵes
Arquivos: /lib/notifications/*, /app/api/alerts/*
- Integração com email (nodemailer)
- Integração com Telegram Bot API
- Integração com WhatsApp (Twilio)
- POST /api/alerts/configure - Configurar preferĆŖncias
- Trigger automƔtico quando limite excedido
- Alerta de vencimento próximo
6. API de Dashboard
Arquivos: /app/api/dashboard/*
- GET /api/dashboard/summary - Total faturas, saldos, receitas esperadas
- GET /api/dashboard/next-month - Previsão próximo mês
- GET /api/dashboard/best-card - Cartão com maior limite após pagamento
- GET /api/dashboard/cash-flow - Fluxo de caixa projetado
š Protocolo Git
Formato de commit:
[CLAUDE] Descrição clara
Exemplo: [CLAUDE] Implementado schema de cartƵes e transaƧƵes
Handoff para outros agentes:
[CLAUDE] API de cartƵes pronta, precisa de forms do COPILOT
Sempre antes de comeƧar:
git pull --rebase
git log --oneline -20 # Ver trabalho dos outrosš§ ConfiguraƧƵes de Ambiente
Adicione ao .env.example com comentƔrios:
# Added by CLAUDE
# Database path para SQLite
DATABASE_URL=./database/home-finance.db
# Telegram notifications
TELEGRAM_BOT_TOKEN=required_for_alerts
TELEGRAM_CHAT_ID=your_chat_id
# Exchange rate API (optional but recommended)
EXCHANGE_RATE_API_KEY=for_real_time_ratesš Contratos de API
Card Object
{
id: string,
name: string, // "Cartão A", "Cartão B", etc
limit: number,
dueDate: number, // dia do mĆŖs
currentBalance: number,
availableCredit: number,
debitTransactions: Transaction[],
creditTransactions: Transaction[],
installments: Installment[]
}RPG Session Income
{
type: 'national' | 'international',
platform?: 'direct' | 'startplaying',
sessions: number,
players: number,
pricePerSession: number,
exchangeRate?: number,
platformFee?: number,
expectedDate: Date,
actualReceiptDate?: Date
}ā CritĆ©rios de Sucesso
- Banco de dados modelando todos os cenƔrios financeiros
- APIs calculando corretamente taxas e prazos
- Sistema de notificaƧƵes funcionando para todos os canais
- Dashboard retornando dados agregados precisos
- Tratamento de fins de semana e feriados nos cƔlculos
- Logs detalhados para debug de cƔlculos financeiros
š Comece por aqui:
git pull --rebase- Criar schema do banco em
/lib/db/schema.ts - Implementar conexão em
/lib/db/index.ts - Criar primeira API route
/app/api/cards/route.ts - Commitar:
[CLAUDE] Setup inicial do banco e schema de cartƵes
LEMBRE-SE: VocĆŖ tem controle TOTAL sobre backend. Os outros dependem das suas APIs!