Deploy automático precisa de contrato, não de fé
Gemini CLI + Site no Ar funciona melhor quando o deploy automático vira um contrato repetível: o agente sabe qual build rodar, qual pasta publicar, qual slug manter, como enviar os arquivos e qual evidência devolver no fim.
Sem esse contrato, “publique meu site” pode significar coisas diferentes: criar uma URL nova, sobrescrever um Site existente, publicar uma pasta errada ou entregar um link sem abrir a página. Com o MCP do Site no Ar, o fluxo pode ser automatizado, mas as decisões críticas continuam explícitas.
Este guia parte do mesmo setup do guia de Gemini CLI e do contrato de publicação. Se sua conta já foi migrada para outro cliente depois das mudanças recentes no ecossistema Gemini CLI, adapte os comandos do cliente, mas mantenha o mesmo contrato de deploy.
Quando automatizar faz sentido
Use um prompt de deploy automático quando:
- a build do projeto já é conhecida;
- a pasta publicável já foi validada pelo menos uma vez;
- o slug já foi aprovado;
- a página não exige revisão manual antes de ficar pública;
- o agente consegue acessar os arquivos localmente;
- você quer repetir publicação e verificação sem reescrever os mesmos passos.
Para primeira configuração, prefira o caminho mais curto: conectar o MCP, autenticar e publicar uma página pequena. O artigo Como publicar sites com Gemini CLI usando MCP cobre esse primeiro teste.
Checklist antes de dar autonomia
Antes de pedir deploy automático, deixe o Gemini CLI com uma lista objetiva:
| Decisão | Exemplo |
|---|---|
| Comando de build | bun run build, npm run build ou nenhum, se já houver saída |
| Pasta publicável | ./dist |
| Arquivo inicial | index.html na raiz da pasta |
| Slug | campanha-julho |
| Tipo de ação | criar Site novo ou atualizar Site existente |
| Verificação final | abrir URL e conferir assets principais |
| Bloqueios esperados | login, limite de plano, slug ocupado, build quebrado |
Esse checklist reduz duas classes de erro: publicar o lugar errado e declarar sucesso cedo demais.
Conecte e valide o MCP
Se o Site no Ar ainda não estiver registrado no Gemini CLI, adicione o servidor:
gemini mcp add --transport http sitenoar https://mcp.sitenoar.devNa sessão do Gemini, autentique:
/mcp auth sitenoarDepois peça uma verificação sem upload:
Use o MCP do Site no Ar e teste a conexão.Não publique nada.Responda se a autenticação está pronta e quais ações de publicação você consegue executar.Se você trabalha com mais de um agente, salve também o prompt oficial:
Me ajude a conectar o Site no Ar aqui. O guia oficial, com o passo a passo por cliente, está em https://sitenoar.dev/agent-setup-prompt.mdEle ajuda o agente a alinhar ferramentas, pacote e expectativas antes de mexer no Site.
Prompt de deploy automático
Quando o site estiver pronto, use um prompt completo:
Automatize o deploy deste projeto pelo MCP do Site no Ar.
Contrato:1. Rode o build padrão do projeto se a saída ainda não estiver atualizada.2. Publique apenas a pasta ./dist.3. Use index.html como página inicial.4. Slug: campanha-julho5. Se o Site já existir com esse slug, atualize o mesmo Site.6. Envie os arquivos pelo fluxo canônico do Site no Ar.7. Acompanhe o deploy até sucesso, falha ou bloqueio claro.8. Abra a URL final e verifique se home, CSS e imagens carregam.
Na resposta final, informe arquivos alterados, slug,URL final, status do deploy e resultado da verificação.Não ignore erros. Se algo bloquear, pare e peça a decisão necessária.Esse texto evita que o agente faça escolhas implícitas. Ele também deixa claro que automação não termina no upload; termina na URL verificada.
Atualizar uma URL existente
Para campanhas, propostas e demos, criar um Site novo a cada revisão costuma atrapalhar. Quando a intenção é manter o mesmo link, diga isso no prompt:
Atualize o Site existente do slug campanha-julho.Não crie um novo Site se o slug já existir.Publique a nova versão da pasta ./dist e confira a mesma URL final.Esse detalhe muda a operação esperada. O agente deve procurar ou reutilizar o Site certo antes de iniciar o envio.
O pacote que deve ser enviado
O Site no Ar trabalha com arquivos versionados sob public/:
index.html, quando a publicação é uma página única;- arquivos sob
public/, quando há múltiplas páginas ou assets.
Em um deploy automático pelo Gemini CLI, o agente chama get_context, inspeciona o repositório e altera os arquivos pelas file tools. Depois publica com deploy, sem montar um pacote intermediário para cada mudança.
Se o agente tentar resumir arquivos em texto, corrija o caminho:
Não cole o conteúdo dos arquivos.Use o pacote local gerado pela build e envie pelo fluxo de upload do MCP.Como transformar em rotina
Depois que o primeiro deploy automático funcionar, salve uma versão do prompt com variáveis:
| Variável | Exemplo |
|---|---|
{{build_command}} |
bun run build |
{{publish_dir}} |
./dist |
{{slug}} |
campanha-julho |
{{mode}} |
criar ou atualizar |
{{checks}} |
home, CSS, imagens |
Essa rotina é útil para times que criam muitas páginas pequenas: landing pages de campanha, páginas de captura, propostas comerciais e protótipos para validação.
Para fluxos parecidos em outros clientes, leia Como automatizar o deploy de sites com Claude Code via MCP e Cursor Agent + Site no Ar: deploy automático sem linha de terminal. O princípio é o mesmo: o agente pode operar o deploy, mas a resposta final precisa trazer evidência.
Onde colocar uma trava manual
Nem todo deploy deve ir direto para produção. Use uma trava quando a página envolver cliente, anúncio pago, preço, domínio principal ou conteúdo jurídico:
Prepare o deploy e mostre o plano.Não envie arquivos ainda.Depois que eu aprovar, publique pelo MCP do Site no Ar.Esse modo ainda economiza trabalho. O agente roda build, identifica pasta, confere pacote e mostra o que será publicado. A diferença é que o upload só acontece após aprovação.
Falhas que o agente deve classificar
Um bom fluxo automático transforma erro em decisão:
| Falha | Resposta esperada |
|---|---|
| Build quebrou | mostrar comando e trecho relevante do erro |
| Pasta não existe | pedir confirmação da pasta publicável |
| Login expirou | pedir novo /mcp auth sitenoar |
| Limite de conta | apontar limite antes de tentar de novo |
| Slug ocupado | pedir decisão entre atualizar ou trocar slug |
| Deploy falhou | informar estado final e próxima ação |
| URL não abre | não declarar sucesso até investigar a falha |
Se a resposta final não tiver status, URL e verificação, trate como deploy incompleto.
O próximo padrão do time
O melhor uso de Gemini CLI + Site no Ar não é publicar uma vez. É padronizar como cada site sai do agente para uma URL verificável: build, pasta, pacote, slug, deploy, abertura da URL e relato final.
Com esse contrato, o deploy automático deixa de ser um comando especial e vira parte natural do fluxo de criação. O agente ajuda a gerar e revisar o site, o Site no Ar cuida da publicação e você mantém controle sobre quando um link fica público.
