# Modo Chat AI

O **Modo Chat AI** é onde você descreve o que quer. A IA transforma isso em **especificação**, **código**, e um app rodando no **Preview**.

Use o Chat AI para:

* Criar um app do zero.
* Fazer mudanças grandes (novos módulos, entidades, telas).
* Iterar rápido com aprovação a cada etapa.

{% hint style="info" %}
Para mudanças “cirúrgicas” no backend, use o [Modo Editor](/br/documentacao/modo-editor.md).
{% endhint %}

### Pré-requisitos

* Você tem permissão de edição no projeto.
* Seu app abre no **Preview**.

### Fluxo típico

{% stepper %}
{% step %}

### Escreva um prompt (intenção + limites)

Inclua:

* Objetivo do app.
* Módulos e entidades.
* Campos e tipos (ex.: `String`, `Date`, `Picklist`).
* Regras de negócio (validações, estados, permissões).

{% hint style="warning" %}
Evite pedir “tudo de uma vez”. Quebre em mudanças de 1–3 itens.
{% endhint %}
{% endstep %}

{% step %}

### Revise a especificação do app

O agente analista propõe uma **Especificação do App**.

Revise com foco em:

* Nomes de módulos, entidades e campos.
* Relacionamentos (1-N, N-N) e campos obrigatórios.
* Regras que precisam virar validações.
* O que fica **fora do escopo**.

Se algo estiver errado, corrija no chat com instruções claras.
{% endstep %}

{% step %}

### Aprove e acompanhe a codificação agêntica

Ao aprovar, os agentes começam a geração.

Você deve:

* Aguardar a conclusão.
* Ler o resumo do que foi alterado.
* Validar se a intenção foi atendida.
  {% endstep %}

{% step %}

### Teste no Preview

Use o Preview para validar o fluxo real.

Checklist rápido:

* Navegação (menus, rotas).
* CRUD básico (criar/editar/listar/remover).
* Regras de negócio e validações.
* Performance percebida (listas, filtros).
  {% endstep %}

{% step %}

### Faça “Solicitações de Mudança”

Quando você pede uma evolução, a IA abre uma **solicitação de mudança**.

Boas práticas:

* Escreva mudanças atômicas.
* Diga o que deve mudar e o que deve permanecer.
* Diga como validar: “resultado esperado”.

Exemplos de prompts:

* “Adicione um campo **anexos** em **Tarefa**. Tipo attachments.”
* “Crie o módulo **Projetos** e relacione **Tarefa → Projeto** (1 projeto por tarefa).”
* “Crie um picklist **status** com: Novo | Em Progresso | Revisão | Concluído.”
  {% endstep %}
  {% endstepper %}

### Dicas rápidas de prompt

* Prefira frases imperativas: “crie”, “adicione”, “altere”, “remova”.
* Nomeie entidades e campos de forma consistente.
* Sempre diga o impacto em telas: lista, form, detalhe.
* Quando houver regra: descreva o **gatilho** e o **erro esperado**.

### Se algo der errado

* Se a geração travar ou ficar inconsistente: veja [Falhas na geração por IA](/br/solucao-de-problemas/falhas-na-geracao-por-ia.md).
* Se o Preview não abrir: valide extensões (adblock) e tente aba anônima.

### Leituras recomendadas

* Primeiro projeto em 15 min: [Comece aqui](/br/comece-aqui.md)
* Como escrever prompts melhores: [1. Dicas de prompts](/br/tutoriais-praticos/1.-dicas-de-prompts.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.madrix.dev/br/documentacao/modo-chat-ai.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
