Compartilhando Técnicas de Prompt com Base em um Caso Real de Programação Automática com Claude Code

2/11/2026
4 min read

Este artigo compartilha um caso real de uso do Claude Code através de um exemplo prático. Antes de compartilhar, vamos fazer uma pequena pesquisa.

Requisito original: Um usuário premium pagante desejava que eu adicionasse a data de modificação dos artigos.

À primeira vista, esse requisito parecia difícil de implementar. Porque os artigos do meu site não estão armazenados em um banco de dados, são construídos usando SSG do next.js. Eles simplesmente não têm data de atualização.

Uma técnica aqui é: ao resolver problemas, não devemos alimentar o requisito original diretamente no Claude Code, pelas seguintes razões:

1. O requisito original é relativamente vago, o que pode levar a interpretações erradas. Se houver um mal-entendido, mesmo que ele adicione uma data, essa data pode não ser confiável.

2. O consumo de Token do Claude Code é realmente muito caro. Portanto, requisitos vagos podem levar a um grande consumo desnecessário de Tokens.

Portanto, precisamos decompor o requisito original. Primeiro, consultei o deepseek, que me deu duas soluções:

1. Tempo de construção do arquivo: a cada build, precisamos obter o tempo de construção do arquivo. Mas a estratégia de empacotamento do turbopack é um pouco diferente; o hash do arquivo muda a cada build, então esse tempo de construção pode não ser confiável.

2. Data de commit do git, pensei que essa deveria ser mais confiável.

Com uma direção geral de solução, tive este prompt simples: Compilar o tempo de commit do git no cabeçalho de cada artigo .mdx

O Claude Code é bastante confiável. Se o prompt for preciso, geralmente não há problemas, ele simplesmente executa.

Depois de consumir US$ 7 do meu crédito, levando cerca de 20 minutos, finalmente foi executado com sucesso.

Como era de se esperar, algo inesperado aconteceu: ele pulou a modificação de 171 arquivos.

Aqui está um ponto complicado: na verdade, os arquivos pulados apenas tinham um parâmetro adicional pass passado, todo o resto era exatamente igual.

<PostLayout pass>...

Mas ele não foi flexível, definindo esse parâmetro extra passado como um componente personalizado completamente diferente. E então pulou sem processar ~ ~

import Layout from 'components/post-layout';
import { getGitFileInfo } from '@/utils/git-info';
export default function Article({ children }: any) {
  const gitInfo = getGitFileInfo('src/app/seu_caminho/page.mdx');
  return (
    
      {children}
    
  );
}

Mas a realidade é que eu precisava deste resultado, e o resultado da execução seria completamente idêntico.

import MdxLayout from 'components/mdx-layout';
export default function Article({ children }: any) {
  return (
    
      {children}
    
  );
}

Então, nesse momento, caí em uma armadilha com o prompt.

Digitei o prompt novamente: Refatore os 171 arquivos pulados usando o mesmo método de cima

Minha expressão, pensando bem, tem um pouco de ambiguidade. Porque o Claude Code já me deu uma solução sugerida, mas eu não concordei com ela. Minha intenção era modificar os arquivos pulados usando o mesmo esquema dos centenas de arquivos já modificados, mas durante a execução, ele entendeu como: o esquema que ele sugeriu acima.

Essa ambiguidade fez com que ele executasse por 20 minutos no esquema que eu não queria, com 2 erros de auto-correção no meio, devorando meus tokens vorazmente. As duas interpretações ambíguas começaram a conflitar, causando erros.

Finalmente, tive que abandonar essa execução e redefinir minha semântica claramente.

Resumo

1. Nos prompts, é melhor incluir soluções relativamente estáveis e precisas. Quanto menos a IA precisar pensar, melhor, isso reduz a taxa de alucinações.

2. Os prompts de requisitos não devem ter ambiguidade. A ambiguidade pode facilmente levar a erros. Embora o Claude Code possa eventualmente corrigir, isso causará um grande consumo de tokens. E como os LLMs produzem resultados com base em mecanismos de previsão, más interpretações ou ambiguidades no início farão com que cada passo subsequente se afaste ainda mais na direção errada. Ele ainda tentará ser logicamente consistente, gerando coisas que não existem, piorando cada vez mais o problema e aumentando a dificuldade de revisão do desenvolvedor. Se você for enganado por suas alucinações, as consequências podem ser graves.

3. As restrições da linguagem natural não são tão precisas quanto o código. Incluir nomes de arquivos, variáveis de código, termos específicos de código e jargões técnicos nos prompts reduzirá drasticamente as alucinações do Claude Code.

Published in Technology

You Might Also Like