Ir para o conteúdo

Proposta de Projeto — Anotae

Versão: 0.5 | Data: 2026-05-19 | Autor: Carlos E. F. de Ávila


1. Síntese executiva

Anotae é uma ferramenta desktop open-source, 100% local e offline, para profissionais de saúde do Sistema Único de Saúde brasileiro (SUS).

O problema: profissionais SUS precisam registrar o mesmo atendimento em múltiplos sistemas — e-SUS APS PEC, SISREG III, SEI/DF — digitando manualmente as mesmas informações em cada um. Estimativas de campo indicam que 30–50% do tempo de consulta é consumido por trabalho administrativo de digitação repetitiva, contribuindo diretamente para burnout e erros de transcrição.

A solução: o profissional registra o atendimento uma única vez no editor SOAP estruturado do Anotae. Uma extensão de navegador MV3 injeta automaticamente os dados nos formulários dos sistemas oficiais. O dado clínico nunca sai do dispositivo local.

O que Anotae NÃO é: - Não é prontuário eletrônico oficial (PEP) — o registro autêntico permanece no e-SUS PEC. - Não é dispositivo médico (SaMD) nos termos da RDC ANVISA 657/2022 — é um assistente de digitação. - Não substitui o julgamento clínico — o profissional retém integralmente a responsabilidade pelas decisões.


2. Contexto e problema

O ecossistema SUS fragmentado

Os sistemas oficiais do SUS foram desenvolvidos por órgãos distintos, em épocas distintas, com interfaces sem integração nativa:

  • e-SUS APS PEC (DATASUS/MS): prontuário eletrônico de atenção básica; registro obrigatório de atendimentos na APS.
  • SISREG III (DATASUS/MS): regulação de consultas especializadas, exames e internações.
  • SEI/DF (GDF): processo eletrônico para laudos, pareceres e referências no Distrito Federal.

Um atendimento típico na APS pode exigir inserções em dois ou três desses sistemas com dados que se sobrepõem (identificação do paciente, CID-10, CIAP-2, procedimentos SIGTAP). Não há API oficial disponível para integração.

Burnout e carga administrativa

Estudos sobre burnout em médicos e enfermeiros da APS apontam a carga administrativa — não o cuidado clínico em si — como fator preponderante de esgotamento. A digitação repetitiva em sistemas desconexos é citada recorrentemente como fonte de frustração. O Anotae endereça diretamente essa fricção.

Arcabouço regulatório relevante

  • LGPD (Lei 13.709/2018): dados de saúde são dados sensíveis (Art. 5º II, Art. 11). Qualquer tratamento exige base legal explícita, minimização de dados e medidas de segurança adequadas.
  • CFM 2.454/2026: regulamenta o uso de Inteligência Artificial na Medicina. Exige que o profissional médico mantenha supervisão e responsabilidade sobre outputs de IA; proíbe automação de diagnóstico e prescrição sem revisão humana; exige registro do uso de IA no prontuário.
  • RDC ANVISA 657/2022: define Software como Dispositivo Médico (SaMD). O Anotae não se enquadra como SaMD porque não é destinado a diagnóstico, prognóstico, monitoramento ou terapia — é exclusivamente auxiliar de digitação.

3. Solução proposta — estado atual (v0.15-3)

Funcionalidades entregues

Funcionalidade Status Versão
Editor SOAP estruturado com templates ✅ Entregue v0.9.x
Integração e-SUS PEC + SISREG III via extensão MV3 ✅ Entregue v0.9.x
Vault SQLite cifrado (Argon2id + ChaCha20-Poly1305) ✅ Entregue v0.10
Criptografia de campo (field-level encryption) ✅ Entregue v0.11
Audit log append-only com cadeia de hash ✅ Entregue v0.10
LLM local opt-in (llama.cpp, modelos GGUF) ✅ Entregue v0.11
RAG sobre histórico clínico (retrieval-only, ONNX) ✅ Entregue v0.11
Smart Compose — sugestões ghost-text ✅ Entregue v0.12-5
Calculadoras clínicas APS (PHQ-9, GAD-7, AUDIT-C, CAGE, eGFR, Framingham) ✅ Entregue v0.12-9
Vocabulários CIAP-2, CID-10, SIGTAP APS, RENAME UBS 2024 ✅ Entregue v0.12-9
Browser de protocolos PCDT/MS (manifest schema v2) ✅ Entregue v0.13-1
ASR em tempo real opt-in (whisper.cpp, modo Consulta Ao Vivo) ✅ Entregue v0.15-1
Análise de laudo PDF local (drag-and-drop → seção O) ✅ Entregue v0.15-2
Templates curados por especialidade APS ✅ Entregue v0.15-3
Canal mobile HTTPS+QR para upload de imagens ✅ Entregue v0.12
Feedback in-app com captura de tela (100% local) ✅ Entregue v0.12-8
Alerta de compatibilidade na extensão (badge "ANT") ✅ Entregue v0.12-6

Fluxo principal

Profissional abre o Anotae
Seleciona paciente + template de especialidade
Preenche SOAP (Subjetivo / Objetivo / Avaliação / Plano)
  ├── Smart Compose sugere frases clínicas (Tab para aceitar)
  ├── Consulta Ao Vivo transcreve fala → rascunho SOAP (Ctrl+R)
  ├── Laudo PDF arrastado → achados inseridos na seção O
  └── Calculadoras clínicas disponíveis (Ctrl+L)
Salva no vault local (cifrado)
Extensão de navegador injeta dados no e-SUS / SISREG

4. Arquitetura técnica

Camadas principais

┌─────────────────────────────────────────────┐
│  UI (PySide6 Qt 6 — MVVM)                   │
│  Views + ViewModels claramente separados     │
├─────────────────────────────────────────────┤
│  Core (Python 3.12+ — lógica de domínio)    │
│  Encounter, Template, Mapping, Calculator   │
│  Vocabularies, PCDT manifest, Lab extractor │
├─────────────────────────────────────────────┤
│  Persistence (SQLite + sqlite3mc)            │
│  Argon2id KDF · ChaCha20-Poly1305 AEAD      │
│  Audit log · Migrations versionadas         │
├─────────────────────────────────────────────┤
│  IA local opt-in                            │
│  LLM: llama.cpp (GGUF 7–8B q4_K_M)        │
│  ASR: whisper.cpp (small-pt q5_0)           │
│  Embeddings: multilingual-e5-small (ONNX)   │
├─────────────────────────────────────────────┤
│  Comunicação com navegador                  │
│  NMH (stdio, primário) + HTTP 127.0.0.1     │
│  (fallback, token efêmero)                  │
└─────────────────────────────────────────────┘
         ↕ extensão MV3
┌─────────────────────────────────────────────┐
│  Browser Extension (TypeScript, Vite)        │
│  Chrome/Edge + Firefox (builds separados)    │
│  Injeta dados em e-SUS PEC, SISREG III       │
└─────────────────────────────────────────────┘

Princípios de arquitetura

  • Zero rede para dados clínicos: nenhuma requisição HTTP carrega dados de paciente. Toda comunicação externa é opt-in e limitada a atualizações de manifesto de modelos (hashes SHA-256 verificados).
  • MVVM testável: ViewModels são independentes de Qt; testáveis com pytest puro sem instanciar QApplication.
  • Migrations versionadas: schema SQLite é alterado exclusivamente via scripts em migrations/; sem ORM; compatibilidade retroativa obrigatória.
  • Dependências mínimas: cada dependência nova exige justificativa e RFC quando toca áreas críticas. Supply chain auditada via SBOM CycloneDX + SLSA.

5. Compliance e segurança

LGPD

Princípio Implementação
Finalidade Dados usados exclusivamente para preenchimento de formulários SUS pelo profissional titular
Necessidade Somente campos usados na injeção são armazenados
Segurança Vault cifrado (Argon2id KDF + ChaCha20-Poly1305); field-level encryption em todos campos clínicos
Prevenção 100% local; zero upload automático; telemetria apenas opt-in com anonimização
Transparência RIPD disponível em docs/PRIVACY-IMPACT-ASSESSMENT.md; política de uso de IA em docs/AI-USAGE-POLICY.md

CFM 2.454/2026

  • Todo output de IA (LLM, Smart Compose, ASR, análise de laudo) é marcado com [IA] no SOAP exportado via mark_ai_assisted().
  • Nenhuma sugestão de diagnóstico ou prescrição é gerada automaticamente sem revisão explícita do profissional.
  • Guardrails nos prompts proíbem o modelo de inventar dados não presentes no contexto.
  • Disclaimer CFM obrigatório em todo painel que exibe output de IA.

ANVISA — não é SaMD

O Anotae não realiza nenhuma das funções definidoras de SaMD (RDC 657/2022): não diagnostica, não monitora parâmetros fisiológicos, não recomenda terapia, não processa sinais biomédicos. É classificado como software auxiliar de digitação (fora do escopo regulatório ANVISA).

Modelo de ameaças

O modelo STRIDE + LINDDUN completo com 43 ameaças catalogadas está em docs/THREAT-MODEL.md. O checklist de auditoria (mapeamento ameaça → evidência) está em docs/explanation/auditoria-checklist.md.


6. Roadmap v1.0

A versão v1.0 marca a publicização do repositório — transição de desenvolvimento privado supervisionado para projeto open-source público.

Gates pendentes

Gate Status Meta
Dogfood ≥ 3 meses em uso real APS/DF 🔄 Em andamento (inaugurado 2026-05-17) 2026-08-17
Auditoria externa de segurança ⏳ Aguardando financiamento Antes de v1.0
Revisão jurídica/clínica externa do RIPD e Política de IA ⏳ Aguardando Antes de v1.0
Instalador Windows com assinatura Authenticode ⏳ A avaliar após 6 meses (SmartScreen) Antes de v1.0
Documentação Diátaxis completa (4 categorias) 🔄 ~70% concluída Antes de v1.0
Bus factor ≥ 2 (co-mantenedor recrutado) ⏳ Recrutamento após publicização v1.0
SBOM CycloneDX + SLSA L2 🔄 SLSA L1 ativo em CI v1.0

Versões planejadas pós-v1.0

Versão Foco principal
v2.0 Assinatura ICP-Brasil em laudos exportados
v3.0 ASR multilíngue; suporte a dialetos regionais do português
v4.0 Internacionalização completa (inglês, espanhol)

7. Licença e sustentabilidade

Licença

AGPL-3.0-or-later. A escolha da AGPL garante que qualquer modificação distribuída — inclusive como serviço SaaS — deve manter o código-fonte aberto. Isso protege a comunidade de saúde pública brasileira contra apropriação fechada da ferramenta.

O modelo de ameaças da licença é: um fornecedor privado embute o Anotae em produto proprietário, melhora a injeção para sistemas SUS específicos, e não devolve as melhorias à comunidade. A AGPL fecha esse vetor.

Sustentabilidade técnica

  • Bus factor = 1 hoje — documentado em docs/explanation/bus-factor.md. Meta v1.0: ≥ 2 co-mantenedores com papéis distintos (crypto, UI, extensão).
  • Supply chain auditada: SBOM automático, Dependabot + Renovate, pip-audit em CI, Sigstore attestations (PEP 740) em cada release.
  • Zero telemetria obrigatória: o projeto não depende de métricas de uso para decisões de produto. Feedback é coletado via formulário opt-in local (Ctrl+Shift+S).

Modelo de financiamento

O Anotae é desenvolvido atualmente como projeto de utilidade pública pelo autor, profissional da APS/DF. Modelos de sustentabilidade financeira em avaliação para pós-v1.0: financiamento público (FAPEDF, MS/SCTIE), doações individuais (Open Collective), e contrato de suporte com secretarias estaduais de saúde — sempre preservando o código 100% aberto.


Referências

  • DESIGN.md — decisões de design com trade-offs
  • docs/explanation/arquitetura.md — visão de componentes
  • docs/CRYPTO-DESIGN.md — modelo de criptografia detalhado
  • docs/THREAT-MODEL.md — modelo de ameaças
  • docs/PRIVACY-IMPACT-ASSESSMENT.md — RIPD (LGPD)
  • docs/AI-USAGE-POLICY.md — política de uso de IA
  • CHANGELOG.md — histórico de versões
  • BACKLOG.md — itens pendentes priorizados