Como escrever o primeiro prompt do dia no Claude Code sem gastar tempo explicando o projeto

O primeiro prompt no Claude Code não precisa recontar o projeto inteiro: cada sessão nova começa com a janela de contexto limpa, sem histórico das anteriores. O que é fixo mora no CLAUDE.md, lido no início de toda sessão, em ./CLAUDE.md ou ./.claude/CLAUDE.md, gerado pelo /init e mantido curto (a recomendação oficial é abaixo de aproximadamente 200 linhas, porque cada linha entra no contexto a cada request). O pedido de abertura fica só com o que muda: objetivo específico com sintoma observável, os caminhos que você já sabe com @src/auth/login.ts e, se a tarefa for ampla, modo de planejamento com Shift+Tab ou /plan
Fala aí, beleza? Toda manhã a mesma cena: você abre o terminal, sobe o Claude Code e gasta os primeiros minutos contando de novo o que é o projeto, onde mora o backend, qual comando roda os testes
E não é o agente sendo esquecido, viu
Cada sessão nova começa mesmo com a janela de contexto limpa, sem o histórico de conversa das sessões anteriores, isso está na documentação de como o Claude Code funciona
O problema real é outro: o contexto persistente está no lugar errado (ou simplesmente não existe)
A saída é separar duas coisas que quase sempre vêm grudadas no mesmo pedido: o que é FIXO no projeto e o que muda todo dia
O fixo vai pro arquivo que o Claude lê sozinho no start
O que muda vira o seu primeiro prompt no Claude Code, e aí ele cabe em três linhas
Bora ver na prática?
Domine o Claude Code do básico ao avançado
Você vai aprender a criar sistemas completos com Claude Code, sem precisar ser programador. Inscreva-se para ter acesso a um desconto de lançamento e bônus especiais!
Antes do primeiro pedido: deixe o CLAUDE.md pronto uma vez
O Claude Code lê os arquivos CLAUDE.md no início de toda sessão
"Que arquivo é esse?" É onde você guarda o contexto persistente que o modelo não consegue inferir sozinho olhando o código
Se você já usou um .editorconfig ou um README de onboarding do time, a ideia é bem parecida: escreve uma vez, vale pra todo mundo que senta na cadeira depois
Onde o arquivo mora:
O CLAUDE.md do projeto pode ficar em ./CLAUDE.md ou em ./.claude/CLAUDE.md
Os arquivos que estão no diretório de trabalho e acima dele são lidos no início da sessão
Os de subpastas não: eles só carregam depois, sob demanda, quando o Claude lê arquivos daquela subpasta
Isso é ótimo pra monorepo, porque a regra específica do pacote só entra em cena quando o pacote entra em cena 🙂
Não precisa escrever do zero:
O comando /init gera um CLAUDE.md inicial analisando o seu código
/init
E se já existir um arquivo no projeto, ele sugere melhorias em vez de sobrescrever, então rodar de novo não destrói o que você escreveu
Curto e denso em sinal:
A recomendação oficial é manter o arquivo abaixo de aproximadamente 200 linhas
O motivo é bem concreto: cada linha entra no contexto a cada request
CLAUDE.md gordo é conta rodando o dia inteiro, e isso conversa direto com a ideia de gastar menos com o Claude Code
A documentação de boas práticas lista o que vale colocar ali:
- comandos de build, teste, lint e execução local
- convenções (nomenclatura, tratamento de erro)
- arquitetura em três frases
- restrições duras
Algo mais ou menos assim:
# Projeto X
## Comandos
- dev: npm run dev
- teste: npm test
- lint: npm run lint
## Arquitetura (3 frases)
Monorepo com web (Next) e worker (Node).
O banco é Postgres, acesso só pela camada db.
Todo job novo passa pelo registro de jobs.
## Convenções
- nomes de arquivo em kebab-case
- erro sempre tratado na borda, nunca engolido
## Restrições duras
- não editar arquivos de migration já aplicados
- não commitar sem rodar o lint
Tome cuidado com um detalhe que engana muita gente: usar imports com @caminho DENTRO do CLAUDE.md ajuda a organizar, mas não reduz contexto
Os arquivos importados são carregados no launch, junto
Ou seja: quebrar em cinco arquivinhos deixa mais bonito, não deixa mais barato 😛
E a memória que ele escreve sozinho?
São dois mecanismos que carregam conhecimento entre sessões: os arquivos CLAUDE.md (as instruções que VOCÊ escreve) e a auto memory (notas que o próprio Claude escreve a partir das suas correções e preferências)
Um você controla na mão, o outro vai se formando conforme você corrige o agente
Como montar o pedido de abertura, passo a passo
Com o fixo fora do caminho, o pedido de abertura vira quase um checklist de quatro itens
- Escreva o objetivo específico, com sintoma observável
A orientação oficial de prompt é essa: ser específico
O exemplo que a própria documentação dá é trocar "conserte o bug" por "conserte o bug de login em que o usuário vê tela branca depois de digitar credencial errada"
Repara que a diferença não é tamanho, é o sintoma estar visível na frase
O erro comum deste passo: despejar o repositório inteiro no prompt achando que contexto é volume
- Aponte só os caminhos que você JÁ sabe que importam
Se você já sabe qual arquivo é relevante, dizer isso é mais rápido e gasta menos tokens
A referência a caminhos é feita com @, assim:
conserte o bug de login em que o usuário vê tela branca depois de digitar credencial errada
começa por @src/auth/login.ts
não mexa nas migrations
Três linhas, e o dia começou
O erro comum deste passo: apontar o arquivo errado com @ e travar a busca numa pista falsa, porque agora ele está ancorado onde você mandou
Se você não tem certeza, é melhor descrever o sintoma e deixar ele achar
- Anexe a fonte externa quando ela existir
Tem mais formas oficiais de dar contexto sem escrever parágrafo:
- passar URLs de documentação e referência de API direto no pedido
- usar
/permissionspra liberar domínios que você usa com frequência - canalizar dados pelo terminal, tipo
cat error.log | claude
Esse último é sério, é lindo pra abrir o dia em cima de um log de erro de ontem à noite
O erro comum deste passo: colar 800 linhas de log no chat quando o pipe faria o trabalho
- Abra em modo de planejamento quando a tarefa for ampla
O modo de planejamento é acionado com Shift+Tab ou prefixando o prompt com /plan
Nele o Claude lê arquivos, roda comandos de exploração e escreve um plano, sem editar o código-fonte
Com o plano na tela, as opções de resposta são ‘Yes, and use auto mode’, ‘Yes, manually approve edits’ e ‘No, keep planning’
E tem um atalho que pouca gente usa: Ctrl+G abre o plano proposto no seu editor de texto padrão, aí você edita o plano na mão antes de aprovar
Mto massa pra cortar aquele passo 4 que você sabe que é besteira
O erro comum deste passo: pedir plano pra tarefa de uma linha e transformar um rename de variável em reunião de arquitetura haha
O que dizer e o que o Claude descobre sozinho
Essa é a parte que mais economiza tempo, porque metade do que a gente digita de manhã é trabalho que o agente já ia fazer
O Claude Code trabalha em três fases: reunir contexto, agir e verificar
Na primeira ele busca os arquivos relevantes e lê vários, na segunda faz edições coordenadas e na terceira roda testes
| O Claude descobre sozinho | Só você sabe |
|---|---|
| quais arquivos são relevantes pra tarefa | qual é a tarefa de hoje |
| o conteúdo de vários arquivos de uma vez | qual comportamento está errado |
| como coordenar a edição entre eles | o que não pode ser tocado |
| rodar os testes pra verificar o resultado | qual caminho já é suspeito |
A conclusão prática é direta: descrever a ESTRUTURA do projeto no prompt é trabalho duplicado
Descrever a INTENÇÃO não é, isso nenhuma varredura de código adivinha
Se você quiser ver esse ciclo rodando inteiro, do primeiro projeto até o deploy, tem um post aqui do blog só sobre isso
Três aberturas de dia e o comando certo para cada uma
Nem todo dia começa igual, né? Então o comando de abertura muda
1. Tarefa nova, sem nada a ver com ontem:
Usa /clear
Ele começa uma tarefa do zero mantendo a memória do projeto
Ou seja: some o histórico da conversa, fica o que está no CLAUDE.md
É exatamente o que você quer quando o assunto de hoje não tem parentesco com o de ontem
2. Continuar de onde parou:
Usa /resume (o alias é /continue)
E pela linha de comando existem as flags --continue e --resume
claude --continue
Aqui vale a ressalva pro que eu falei lá no começo: abrir o Claude Code do jeito normal te dá uma sessão nova, de contexto limpo
O /resume é justamente o comando que existe pra fugir disso, ele volta pra uma conversa anterior em vez de começar outra
É a exceção, não a regra 🙂
3. A sessão já ficou pesada:
Primeiro /context, que mostra o que está consumindo contexto no momento
Depois /compact [instruções], que substitui o histórico por um resumo, opcionalmente focado no que você especificar
/compact foque no bug de login e nos arquivos de auth
Esse par é o que segura o dia longo sem precisar reabrir tudo do zero
Conclusão
O tempo que você economiza de manhã não vem de escrever prompt bonito
Vem de mover o que é FIXO pro CLAUDE.md e deixar o prompt só com o que muda: a tarefa de hoje, o sintoma e, se você já souber, o caminho suspeito
O resto o agente busca sozinho, e ele é bom nisso
Próximo passo, bem concreto: roda o /init hoje no seu projeto principal, corta o arquivo pra caber no limite recomendado de aproximadamente 200 linhas e amanhã tenta abrir o dia com um pedido de três linhas
Se der certo, você nunca mais reconta o projeto inteiro às 9 da manhã 😀
até o próximo post!
Perguntas frequentes
Qual o tamanho ideal do CLAUDE.md pra não pesar no contexto do Claude Code?
A recomendação oficial é ficar abaixo de aproximadamente 200 linhas. Cada linha do arquivo entra no contexto a cada request, então um CLAUDE.md gordo vira conta rodando o dia inteiro. Prioriza comandos, convenções, arquitetura em três frases e restrições duras, o resto corta.
Rodar /init de novo apaga o CLAUDE.md que eu já escrevi?
Não. O /init gera um CLAUDE.md inicial analisando o código só quando não existe nenhum ainda. Se já existir um arquivo no projeto, ele sugere melhorias em vez de sobrescrever, então rodar de novo é seguro.
Quebrar o CLAUDE.md em vários arquivos com @import deixa o contexto mais leve?
Não deixa. Imports com @caminho dentro do CLAUDE.md ajudam a organizar, mas os arquivos importados são carregados no launch junto com o principal. Ou seja, o custo de contexto continua o mesmo, só muda a organização visual.
O Claude Code lembra de correções que eu fiz numa sessão anterior?
Existem dois mecanismos separados pra isso: o CLAUDE.md, que são as instruções que você escreve na mão, e a auto memory, que são notas que o próprio Claude escreve a partir das suas correções e preferências. Cada sessão nova começa com a janela de contexto limpa, sem o histórico de conversa, então é esse par que carrega o conhecimento entre uma sessão e outra. A exceção é quando você não abre uma sessão nova: o /resume volta pra uma conversa anterior.
Dá pra mandar um log de erro direto pro Claude Code sem colar tudo no chat?
Dá, e é uma das formas oficiais de dar contexto no pedido. Canaliza o arquivo direto pelo terminal, tipo cat error.log | claude, em vez de colar centenas de linhas na conversa. Funciona bem pra abrir o dia já em cima do log da noite anterior.
Quando compensa usar o modo de planejamento em vez de mandar o pedido direto?
O modo de planejamento (Shift+Tab ou /plan) vale pra tarefa ampla, onde o Claude precisa ler vários arquivos e montar uma estratégia antes de tocar no código. Com o plano na tela dá pra aprovar em modo automático, aprovar edição por edição, pedir mais planejamento ou editar o plano direto no seu editor com Ctrl+G. Pra tarefa de uma linha isso é overhead desnecessário.
Formações
Formação Vibe Coding
Do Prompt ao Produto: Crie Software Real com IA
- 474 aulas
- 20 projetos
- 39h 27min
Blog | Mais populares
As diferenças de var, let e const
Como fazer redirecionamento com PHP
Neste artigo você vai aprender a como fazer redirecionamento com PHP, utilizaremos abordagens fáceis de entender e de aplicar Fala programador(a), beleza? Bora aprender mais […]
Checklist de segurança n8n VPS pública: guia essencial para proteger sua instalação
Checklist de segurança n8n VPS pública: guia essencial para proteger sua instalação A popularidade da automação de processos com o n8n está em alta, principalmente […]
