A estrutura
O que vai em cada arquivo
AGENTS.md e CLAUDE.md
As regras fixas da skill, para valerem mesmo quando a skill não for carregada. O Claude Code lêCLAUDE.md; o Codex e o Cursor leem AGENTS.md. Por isso o
CLAUDE.md só aponta para o AGENTS.md, e as regras ficam num lugar.
AGENCIA.md
O documento da agência, compartilhado por todos os clientes:- site da agência (o assistente pode ler o site para completar o resto);
- nicho em que atua;
- canal de vendas;
- por quanto vende e o que entrega em cada pacote;
- como trata os clientes (tom, prazos, o que precisa de aprovação do cliente final).
CLIENTE.md
O contexto de um cliente final:project_ide o nome exato do projeto, como vêm delist_projects;- nicho e o que o cliente vende;
- objetivos (por exemplo, “agendar avaliação”, “qualificar antes de passar ao corretor”);
- regras do cliente (“nunca falar preço pelo WhatsApp”).
MEMORIA.md
Duas seções, com papéis diferentes:- Vigente: o que vale hoje. Reescrita quando muda. Inclui a última
revisionconhecida do projeto. - Histórico: só acrescenta, nunca reescreve. Uma entrada datada por evento.
- data;
- o pedido;
- o que mudou;
- o que não foi feito e por quê;
- o que ficou para fazer no painel;
- o nome do snapshot.
snapshots/
O template do projeto lido depois de cada escrita, com nomeAAAA-MM-DD_HHMM_<assunto>.json. Serve para dois fins:
- perceber mudança externa: se a revision do projeto mudou, o assistente compara o estado atual com o último snapshot e diz o que mudou;
- desfazer à mão: a Zatten guarda versões só do agente. Colunas, tags e automações não têm histórico, e o snapshot é o único registro do estado anterior.
get_template devolve credenciais preenchidas;
antes de gravar, o assistente troca por "<removido>":
- todo campo
api_key(do modelo, dos modelos de reserva, da transcrição, do LangSmith, do motor antigo eeleven_labs_api_key); - os valores de todos os
headers(de tools HTTP, servidores MCP e ações personalizadas); - os valores de
query_paramsebody_paramsdas ações personalizadas.
url, webhook_url) ficam, porque o diff precisa deles. Ao usar um
snapshot para desfazer, nunca devolva um campo com "<removido>": omita-o, e a
Zatten mantém o valor atual.
Um snapshot por escrita basta: o “antes” de uma escrita é o “depois” da anterior.
.env
A chave de API do projeto, para a API do dia a dia. Uma por cliente. O.env precisa estar no .gitignore antes da primeira
chave.
Um cliente ativo por vez
No início da sessão, o assistente declara com qual cliente vai trabalhar e usa oproject_id do CLIENTE.md. Ele não adivinha o projeto pelo nome.
Outro cliente só entra como leitura e citado em voz alta: “usando o follow-up da
Clínica Sorriso como referência para a Imobiliária Norte”. Escrever em dois
clientes na mesma tarefa exige dois planos e dois “sim”.
Git é opcional
A skill sugeregit init e funciona sem ele. Com git, o histórico do diretório
vira mais uma camada de registro.
Armadilhas
- Snapshot gravado com chave. Se um snapshot antigo foi salvo antes desta
regra, ele tem chaves dentro: apague-o ou troque os valores por
"<removido>", e confira que ele nunca foi para um commit. .envfora do.gitignorevaza a chave do projeto no primeiro commit. A skill confere isso, mas confira também.- Nome do projeto mudou no painel. O MCP exige o nome exato. Se a escrita for
recusada por nome, atualize o
CLIENTE.mdcom o nome que veio delist_projects. - O Vigente não substitui o snapshot. O Vigente é texto escrito pelo assistente; só o snapshot dá para comparar com o projeto.
Para saber mais
- As regras que o assistente segue
- Diagnóstico de um projeto
- Mudanças feitas pelo painel
- Termos para buscar: “AGENTS.md”, “CLAUDE.md memory”, “gitignore .env”.