Isolamento e controle

Cada cliente seu, num espaço só dele

Multi-tenancy de verdade, custo com trava e acesso controlado. O que uma software house precisa para atender vários clientes com dados isolados — sem construir a infraestrutura de isolamento do zero.

Multi-tenant

Schema de banco dedicado por cliente

A hierarquia é Conta → Projeto → Tenant. Cada tenant — o seu cliente final — roda num schema de banco dedicado, provisionado sob demanda. Não é um company_id numa tabela compartilhada: são schemas separados, para que os dados de um cliente nunca esbarrem nos de outro. É exatamente a arquitetura do caso de um SaaS de gestão de clínicas, onde cada clínica é um tenant.

Isolamento por tenant

projeto · Catcher Agents QA
tenant · clínica-bella → schema próprio
tenant · clínica-vida → schema próprio

Controle de custo, acesso e segredos

Budget

Trava dura de custo (402)

Defina um teto mensal por conta e por agente. Ao atingir o teto, a próxima execução para com HTTP 402 — sem estouro silencioso. Como cada run já é medido em dólar, o número é exato, não estimado.

RBAC

Papéis owner > admin > agent

Controle de acesso por papel, gestão de usuários e uma allowlist de superadmin. Ações sensíveis (criar token, gerir usuários) ficam restritas ao owner; leitura e operação distribuídas conforme o papel.

Segredos

Cofre com AES-GCM

Chaves de API que as ferramentas usam ficam num cofre criptografado em repouso (AES-GCM) e entram como ${secret:NOME} — nunca em texto puro no prompt ou no config.

Runtime tokens

Acesso preso a um agente

Tokens prt_ dão ao seu app o direito de dirigir UM agente, com posse de sessão validada (proteção BOLA). Mint, listagem e revogação são owner-only.

LGPD

Export, exclusão e auditoria

Export dos dados da conta, exclusão em cascata e audit log — as primitivas técnicas da LGPD. Os provedores de LLM usados nas respostas são listados como subprocessadores na política de privacidade.

Incidentes

Todo erro rastreável

Cada resposta de erro carrega um trace_id que casa com a linha de log; falhas 4xx/5xx viram um incidente com corpo completo, para correlacionar o erro do cliente à causa em segundos.

Embuta com isolamento de verdade

Cada cliente seu num schema dedicado, com custo sob controle.