# Fóir: o backend sobre o qual seus agentes constroem

O Fóir dá a uma aplicação todo o seu backend a partir de um único arquivo de configuração: uma API GraphQL, um console para sua equipe, login e papéis, e o isolamento entre os dados dos seus clientes. Um agente de programação pode escrever a configuração e operar o projeto por meio de um servidor MCP, de modo que o app que ele constrói fica pronto para clientes reais.

Esta é a versão simplificada do foir.io, para agentes e para quem prefere ler a assistir.

Crie um projeto: [https://platform.foir.io/signup](https://platform.foir.io/signup)

## Comece com um agente

Conecte o servidor MCP e leia o contrato a partir dele. Ele lista as ferramentas que seu papel permite e faz buscas na documentação.

```
foir mcp
```

- Configuração do MCP: [https://docs.foir.dev/ai/mcp](https://docs.foir.dev/ai/mcp)
- Índice da documentação para agentes: [https://docs.foir.dev/llms.txt](https://docs.foir.dev/llms.txt)
- Documentação completa em um único arquivo: [https://docs.foir.dev/llms-full.txt](https://docs.foir.dev/llms-full.txt)

## Por que as equipes o escolhem

- Um único arquivo de configuração entrega o backend que, de outra forma, você montaria com serviços separados: regras de banco de dados, login, um editor de conteúdo, entrega de mídia, notificações e cobrança.
- O isolamento entre clientes é imposto no banco de dados. As regras de acesso são compiladas em row-level security, então uma verificação que alguém esqueceu não tem como vazar uma linha.
- A API é gerada a partir dos seus modelos, então não há endpoint escrito à mão para dar errado.
- O conteúdo é resolvido a cada requisição. Um novo idioma ou público é um campo que você define, e nada é reconstruído.
- É totalmente gerenciado. Não há nada para hospedar, atualizar ou escalar.
- Você mantém o controle. Seu código roda na sua própria hospedagem, os pagamentos vão direto para a sua própria conta Stripe, e todo registro é exportado para um banco de dados Postgres de sua propriedade.
- Agentes trabalham nele com segurança. As gravações entram como rascunhos, os tokens carregam apenas as permissões que você aprovou, e uma pessoa dá o aval para o que vai ao ar.
- O motor de autorização do Fóir, o Demesne, é open source: [https://foir.io/demesne](https://foir.io/demesne)

## Para quem é

- Um produto vendido para muitos clientes. Cada cliente é uma organização com seus próprios dados, membros e login, sobre modelos compartilhados.
- Um app construído com um agente de programação e pronto para login real, papéis e isolamento de dados.
- Uma agência que gerencia muitos projetos de clientes em uma única plataforma.
- Um site ou app orientado a conteúdo que quer rascunhos, campanhas agendadas e personalização.

## O que você recebe

| Capability | O que faz |
| --- | --- |
| API gerada | Uma API GraphQL construída a partir dos seus modelos. |
| Console | Um editor para cada modelo, com versões, edição colaborativa em tempo real e pré-visualização como um público. |
| Ask Fóir | Um assistente no console que responde a perguntas sobre seus dados e faz alterações como rascunhos, dentro do seu papel. |
| Login | Um login hospedado: passkeys, verificação em duas etapas e Google, Apple, Shopify ou qualquer provedor OIDC. |
| Usuários e papéis | Um único conjunto de usuários em pools, com associações e papéis construídos a partir de uma única lista de permissões. |
| Organizações | Transforme um app em SaaS: cada um dos seus clientes recebe um limite imposto como row-level security. |
| Chaves | Chaves publicáveis, de servidor e de admin. O schema de uma chave contém apenas o que foi concedido a ela. |
| Registros | Registros podem ser privados para o usuário que é dono deles. Atualizações aceitam uma chave de idempotência, então uma nova tentativa é segura. |
| Publicação | As gravações entram como rascunhos. A publicação não exige reconstrução. Rollouts publicam uma campanha em conjunto e podem ser revertidos. |
| Personalização | Variantes escolhidas no servidor com base em localização, segmentos e suas próprias dimensões. Uma variante pode substituir um registro ou um único campo. |
| Operações | Seu próprio código, chamado pela API com um token assinado e com escopo. Cada execução é registrada. |
| Segredos | Um cofre. Funções e agentes guardam uma referência, nunca a chave. |
| Hooks | Eventos de registros e de operações executam operações, com entregas que você pode reenviar. |
| Paywalls | Uma cota por usuário ou organização em qualquer operação, aumentada por uma assinatura comprada pelo Stripe ou por uma loja de apps. |
| Notificações e e-mail | Notificações push e na caixa de entrada, com preferências por pessoa. Templates de e-mail preenchidos a partir de registros no momento do envio. |
| Mídia, busca, localização | Imagens servidas em WebP e AVIF no tamanho de cada tela. Busca por significado. Consultas por distância. |
| Trabalho | Notas deixadas em uma página no ar viram tarefas. Agentes criam rascunhos e pessoas aprovam. |
| Agentes | Um agente de longa duração mantém o conteúdo atualizado via MCP, com uma chave que limita o que ele pode alterar. |
| Apps | As próprias páginas de admin do seu app dentro do console, e integrações que mantêm os registros de outro sistema sincronizados. |
| Exportação | Todo registro é exportado para um banco de dados Postgres de sua propriedade. |

Cada um desses casos tem uma página na documentação: [https://docs.foir.dev](https://docs.foir.dev)

## Como um projeto começa

1. Uma pessoa cria uma conta em [https://platform.foir.io/signup](https://platform.foir.io/signup). Esta etapa requer um navegador.
2. `foir workspaces create --name acme --select`
3. Escreva `foir.config.ts` com seus modelos e depois execute `foir push`.
4. Execute `foir mcp` para que um agente possa trabalhar no projeto como a pessoa logada.

## Bom saber

- Localização, estado de login e segmentos são determinados no servidor, então a personalização não pode ser falsificada editando uma requisição.
- Uma resposta que contém uma variante resolvida é marcada como privada, então um cache compartilhado nunca serve a versão de um visitante para outro.
- Como o Fóir se compara com Supabase, Firebase, Sanity, Payload e outros: [https://foir.io/compare](https://foir.io/compare)
- Preços: [https://foir.io/pricing](https://foir.io/pricing)
