Como usar o Antigravity com a Fabapp AI
Ligando o Antigravity na sua conta
O Antigravity adiciona servidores MCP pelo painel do próprio editor, e é por ali que se cola o mesmo bloco de sempre:
{ "mcpServers": { "fabapp": { "command": "npx", "args": ["-y", "@fabappai/cli", "mcp"] } } }
Depois de adicionar, o painel lista as ferramentas que vieram. Essa lista é o seu teste de conexão: se ela estiver vazia, o servidor não subiu; se vier curta, a credencial daquela máquina é só de leitura.
O que você precisa
Node 20 ou mais novo, uma conta da Fabapp no plano Builder ou superior, e o login feito uma vez:
npx @fabappai/cli login
A credencial vai para o chaveiro do sistema. Ela nunca é exibida e pode ser revogada de um lugar só, no painel.
O ciclo
npx @fabappai/cli create "Minha loja"
npx @fabappai/cli dev
O dev monta o app na sua máquina com o mesmo template que a plataforma usa para publicar, instala as dependências
e sobe o servidor local. Com ele rodando, peça o que você faria à mão: ler a definição, criar as entidades, escrever
as telas. Depois:
npx @fabappai/cli deploy
Sobe o que você mudou e publica, nessa ordem. Publicar antes de subir publicaria o que está no servidor, e o seu trabalho ficaria para trás.
O que muda no Antigravity
O Antigravity é um editor agêntico: o assistente não fica esperando pedido a pedido, ele trabalha em tarefas mais longas e mostra o que fez. Isso combina bem com uma plataforma em que o trabalho tem passos encadeados, e pede um cuidado: tarefa longa é onde um erro de contrato se propaga.
Por isso, ao pedir algo grande, peça na ordem. Documentação primeiro, definição depois, schema, e só então as telas. Um agente que escreve cinco páginas em cima de um schema inventado refaz as cinco.
A outra coisa que ajuda em tarefa longa é deixar o dev rodando o tempo todo. O erro aparece no navegador enquanto
o agente ainda está no assunto, em vez de aparecer no build, quando ele já mudou de tarefa.
O que pedir
"Leia a documentação da plataforma antes de escrever o schema." Os tipos de campo são uma lista fechada e qualquer outro é recusado; as regras de acesso são a única coisa entre os dados do app e o público.
"Leia a definição atual antes de mudar." Sem o schema em mãos, um id de modelo errado responde 404 e um campo inventado responde 422.
"Schema primeiro, telas depois." O SDK é gerado em cima do modelo de dados.