diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0b0e715 --- /dev/null +++ b/.gitignore @@ -0,0 +1,22 @@ +# Segredos e configuração local +.env +.env.* +!.env.example + +# Logs +*.log +logs/ + +# Arquivos temporários +*.tmp +*.temp +*.bak +*.swp + +# Sistema operacional +.DS_Store +Thumbs.db + +# Editores/IDE +.vscode/ +.idea/ diff --git a/README.md b/README.md new file mode 100644 index 0000000..eb360ec --- /dev/null +++ b/README.md @@ -0,0 +1,53 @@ +# Identificar Texto em Imagem — Orçamento Automático de Exames + +Projeto baseado em um workflow [n8n](https://n8n.io/) que recebe, via WhatsApp +(canal Z-PRO), a foto/PDF/áudio de um pedido médico de exames, identifica os +exames solicitados e responde automaticamente ao cliente com um orçamento +formatado (itens + valores + total), usando um agente de IA. + +## Arquivos principais + +- `n8n/orcamento-exames-imagem.workflow.json` — export do workflow n8n com todo + o fluxo (webhook de entrada, tratamento de imagem/PDF/áudio, agente de IA, + envio da resposta via API do Z-PRO). +- `Z-PRO v4.x.x.x.postman_collection.json` — collection Postman com a API + externa do Z-PRO (criação de ticket, envio de mensagem, listagem de + contatos, entre outros endpoints). +- `docs/superpowers/specs/2026-08-20-orcamento-exames-imagem-design.md` — + spec/design do fluxo. +- `docs/superpowers/plans/2026-08-20-orcamento-exames-imagem.md` — plano de + implementação. + +## Dependências externas + +- **n8n** — plataforma de automação onde o workflow é executado. +- **Z-PRO** — canal/API de WhatsApp usada para receber mensagens do cliente e + enviar o orçamento de volta. +- **OpenAI** — modelo de IA usado para leitura da imagem/PDF do pedido médico, + transcrição de áudio (Whisper) e montagem do orçamento. + +## Como importar o workflow no n8n + +1. Na instância n8n de destino, use **Import from File** (ou **Import from + URL**) e selecione `n8n/orcamento-exames-imagem.workflow.json`. +2. Após a importação, o n8n vai pedir para associar cada nó que usa credencial + a uma credencial existente na sua instância (ver seção abaixo). +3. Revise o node de webhook e a URL de envio ao Z-PRO — ambos contêm + identificadores específicos da instância de origem (ver "Credenciais e + portabilidade"). + +## Credenciais e portabilidade + +- **As credenciais NÃO são armazenadas neste repositório.** O JSON do + workflow referencia credenciais apenas por `id` e `name` (ex.: + `"openAiApi": { "id": "h16jFm10cTU15k6M", "name": "OpenAI - Orçamento de + Exames" }`), que são identificadores da instância n8n de origem — não são as + chaves/segredos em si. +- Após importar o workflow, é necessário **configurar/reassociar as + credenciais correspondentes** (OpenAI e API do Z-PRO/`httpHeaderAuth`) na + instância n8n de destino. +- O workflow também contém identificadores específicos da instância de + origem que não são segredos, mas reduzem a portabilidade direta: o `id` do + workflow, o `webhookId` do nó de entrada, e a URL de envio ao Z-PRO + (`https://apigchat.gtigrupo.com.br/...`), que inclui um identificador de + integração usado por essa instância.