# AgenciaPsi — Estrutura Atual

> Snapshot do que já está construído no sistema hoje (2026-04-17).
> Inventário extraído dos menus de cada perfil de usuário.

**Legenda:** `[ok]` pronto · `[~]` parcial (estrutura existe, refinar) · `[--]` placeholder/vazio

---

```
AgenciaPsi (v5.0.0)
│
├── SaaS Admin  (operação da plataforma)
│   │
│   ├── Início
│   │   └── Dashboard                                        [ok]   /saas
│   │
│   ├── Planos
│   │   ├── Planos e Preços                                  [ok]   /saas/plans
│   │   ├── Vitrine Pública                                  [ok]   /saas/plans-public
│   │   ├── Recursos (features)                              [ok]   /saas/features
│   │   ├── Controle de Recursos                             [ok]   /saas/plan-features
│   │   └── Limites por Plano                                [ok]   /saas/plan-limits
│   │
│   ├── Assinaturas
│   │   ├── Listagem                                         [ok]   /saas/subscriptions
│   │   ├── Intenções                                        [ok]   /saas/subscription-intents
│   │   ├── Histórico (eventos)                              [ok]   /saas/subscription-events
│   │   └── Saúde das Assinaturas                            [ok]   /saas/subscription-health
│   │
│   ├── Operações
│   │   ├── Clínicas (Tenants)                               [ok]   /saas/tenants
│   │   ├── Feriados                                         [ok]   /saas/feriados
│   │   └── Suporte Técnico                                  [ok]   /saas/support
│   │
│   ├── Canais de Comunicação
│   │   ├── WhatsApp (Evolution API)                         [ok]   /saas/whatsapp
│   │   ├── WhatsApp Twilio (Subcontas)                      [ok]   /saas/twilio-whatsapp
│   │   ├── Templates WhatsApp/SMS                           [ok]   /saas/notification-templates
│   │   └── Add-ons / Créditos SMS                           [ok]   /saas/addons
│   │
│   └── Conteúdo
│       ├── Documentação                                     [ok]   /saas/docs
│       ├── FAQ                                              [ok]   /saas/faq
│       ├── Carrossel de Login                               [ok]   /saas/login-carousel
│       ├── Avisos Globais                                   [ok]   /saas/global-notices
│       ├── Templates de E-mail                              [ok]   /saas/email-templates
│       └── Templates de Documentos                          [ok]   /saas/document-templates
│
├── Clínica Admin  (gestão da clínica)
│   │
│   ├── Início
│   │   ├── Dashboard da Clínica                             [ok]   /admin
│   │   ├── Agenda da Clínica                                [ok]   /admin/agenda/clinica
│   │   ├── Recorrências                                     [ok]   /admin/agenda/recorrencias
│   │   └── Compromissos                                     [ok]   /admin/agenda/compromissos
│   │
│   ├── Pacientes
│   │   ├── Lista de Pacientes                               [ok]   /admin/pacientes
│   │   ├── Grupos                                           [ok]   /admin/pacientes/grupos
│   │   ├── Tags                                             [ok]   /admin/pacientes/tags
│   │   ├── Médicos & Referências                            [ok]   /admin/pacientes/medicos
│   │   ├── Link Externo (cadastro)                          [ok]   /admin/pacientes/link-externo
│   │   ├── Cadastros Recebidos                              [ok]   /admin/pacientes/cadastro/recebidos
│   │   └── Templates de Documentos                          [ok]   /admin/documents/templates
│   │
│   ├── Gestão
│   │   ├── Profissionais                                    [ok]   /admin/clinic/professionals
│   │   ├── Tipos de Clínicas (features ativas)              [ok]   /admin/clinic/features
│   │   └── Meu Plano                                        [ok]   /admin/meu-plano
│   │
│   ├── Financeiro
│   │   └── Cobranças                                        [ok]   /admin/financeiro
│   │
│   └── Sistema
│       ├── Meu Perfil                                       [ok]   /account/profile
│       ├── Meu Negócio                                      [ok]   /account/negocio
│       ├── Segurança                                        [ok]   /admin/settings/security
│       ├── Agendamento Online (PRO)                         [ok]   /admin/online-scheduling
│       └── Agendamentos Recebidos                           [ok]   /admin/agendamentos-recebidos
│
├── Terapeuta  (dia-a-dia do profissional)
│   │
│   ├── Início
│   │   └── Dashboard                                        [ok]   /therapist
│   │
│   ├── Agenda
│   │   ├── Agenda                                           [ok]   /therapist/agenda
│   │   ├── Recorrências                                     [ok]   /therapist/agenda/recorrencias
│   │   └── Compromissos                                     [ok]   /therapist/agenda/compromissos
│   │
│   ├── Pacientes
│   │   ├── Meus Pacientes                                   [ok]   /therapist/patients
│   │   ├── Grupos de Pacientes                              [ok]   /therapist/patients/grupos
│   │   ├── Tags                                             [ok]   /therapist/patients/tags
│   │   ├── Médicos & Referências                            [ok]   /therapist/patients/medicos
│   │   ├── Documentos                                       [ok]   /therapist/documents
│   │   ├── Templates de Documentos                          [ok]   /therapist/documents/templates
│   │   ├── Meu Link de Cadastro                             [ok]   /therapist/patients/link-externo
│   │   └── Cadastros Recebidos                              [ok]   /therapist/patients/cadastro/recebidos
│   │
│   ├── Agendamento Online
│   │   ├── Configurar Página Pública                        [ok]   /therapist/online-scheduling
│   │   └── Agendamentos Recebidos                           [ok]   /therapist/agendamentos-recebidos
│   │
│   ├── Financeiro
│   │   ├── Cobranças                                        [ok]   /therapist/financeiro
│   │   └── Lançamentos                                      [ok]   /therapist/financeiro/lancamentos
│   │
│   ├── Relatórios
│   │   └── Relatórios                                       [~]    /therapist/relatorios  (export PDF/Excel a validar)
│   │
│   └── Conta
│       ├── Meu Plano                                        [ok]   /therapist/meu-plano
│       ├── Meu Perfil                                       [ok]   /account/profile
│       ├── Meu Negócio                                      [ok]   /account/negocio
│       └── Segurança                                        [ok]   /account/security
│
├── Supervisor  (supervisão de casos)
│   │
│   ├── Início
│   │   └── Dashboard                                        [ok]   /supervisor
│   │
│   ├── Supervisão
│   │   └── Sala de Supervisão                               [~]    /supervisor/sala  (features avançadas a confirmar)
│   │
│   └── Conta
│       ├── Meu Plano                                        [ok]   /supervisor/meu-plano
│       ├── Meu Perfil                                       [ok]   /account/profile
│       └── Segurança                                        [ok]   /account/security
│
├── Portal do Paciente  (portal web para o paciente)
│   │
│   ├── Início
│   │   └── Dashboard                                        [ok]   /portal
│   │
│   ├── Minhas Sessões
│   │   └── Sessões                                          [ok]   /portal/sessoes
│   │
│   └── Conta
│       ├── Meu Plano                                        [ok]   /portal/meu-plano
│       ├── Minha Conta                                      [ok]   /account/profile
│       └── Segurança                                        [ok]   /account/security
│
└── Editor de Conteúdo  (criação de cursos — roadmap futuro)
    │
    ├── Início
    │   └── Dashboard                                        [ok]   /editor
    │
    ├── Conteúdo
    │   ├── Cursos                                           [--]   /editor/cursos    (placeholder)
    │   ├── Módulos                                          [--]   /editor/modulos   (placeholder)
    │   └── Publicados                                       [--]   /editor/publicados (placeholder)
    │
    └── Conta
        ├── Meu Plano                                        [ok]   /editor/meu-plano
        ├── Meu Perfil                                       [ok]   /account/profile
        └── Segurança                                        [ok]   /account/security
```

---

## Stack / Infraestrutura (suporte)

```
Infraestrutura
│
├── Banco & Backend
│   ├── Supabase (Postgres + Auth + Storage + Realtime + Edge Functions)  [ok]
│   ├── PostgreSQL 15 (container Docker local + cloud)                    [ok]
│   └── Docker Compose (supabase + evolution-api)                         [ok]
│
├── Comunicação
│   ├── Evolution API (WhatsApp)                                          [ok]
│   ├── Twilio (SMS / Voz / WhatsApp Business)                            [ok]
│   ├── Mailpit (SMTP dev local)                                          [ok]
│   └── SMTP produção (envio real de e-mails)                             [--]   pendente
│
├── Geração de Documentos
│   ├── pdfmake + html2pdf + jsPDF                                        [ok]
│   ├── Jodit (editor rico)                                               [ok]
│   └── html2canvas-pro                                                   [ok]
│
├── Frontend
│   ├── Vue 3 + Composition API                                           [ok]
│   ├── Vite 5 + Brotli/Gzip                                              [ok]
│   ├── PrimeVue 4 (tema Sakai)                                           [ok]
│   ├── Tailwind v4                                                       [ok]
│   ├── Vue Router (guards por role/tenant)                               [ok]
│   ├── Pinia (state)                                                     [ok]
│   ├── FullCalendar 6 (agenda)                                           [ok]
│   └── Chart.js 3 (dashboards)                                           [ok]
│
└── Dev / Tooling
    ├── Supabase CLI                                                      [ok]
    ├── db.cjs (setup/backup/restore/migrate/verify)                      [ok]
    ├── generate-dashboard.cjs (mapa do banco)                            [ok]
    ├── Vitest 4                                                          [~]   base pronta, cobertura a expandir
    └── ESLint + Prettier                                                 [ok]
```

---

## Resumo numérico

- **6 perfis** (roles)
- **27 grupos** de navegação
- **79 features** ativas no menu
  - **73** `[ok]` prontas
  - **2**  `[~]` parciais
  - **4**  `[--]` placeholders
- **97 tabelas** no banco (11 domínios)
- **27 views**
- **165 funções SQL**

---

## Próximos passos (a definir nesta manhã)

- [ ] Mapear módulos que **deveriam existir** mas ainda não estão (comparando com Psicomanager / SimplePractice / iClinic)
- [ ] Organizar o roadmap em **fases** (MVP → v2 → v3)
- [ ] Identificar dependências entre módulos (ex: pagamento integrado antes de faturamento automático)
- [ ] Decidir cortes (o que fica pra pós-MVP)
