O Problema
Você precisa renomear uma variável de configuração, por exemplo, deDATABASE_URL para POSTGRES_DSN, em todo o seu projeto. Fazer isso manualmente é tedioso e propenso a erros. Usar sed ou find-and-replace em massa pode ser perigoso se o nome da variável for uma substring comum.
Ingredientes
- Um projeto de código onde você precisa realizar a refatoração.
- O ChatCLI no modo interativo.
Passo a Passo
Delegue a Tarefa ao Agente
Inicie o Modo Agente com uma instrução clara e detalhada. Seja específico sobre o que precisa ser feito.
Desconstruindo o Prompt:
- “em todo o projeto…”: Define o escopo da operação.
- “encontre… e substitua…”: Descreve a ação de refatoração.
- “Mostre-me os arquivos… antes de fazer qualquer alteração”: Esta é uma instrução de segurança crucial. Estamos pedindo ao agente para criar um plano que nos permita validar o escopo antes de executar a mudança.
Revise o Plano de Ação
A IA irá analisar sua solicitação e propor um plano. Um bom plano para esta tarefa provavelmente terá duas etapas:
Execute e Valide o Primeiro Passo
Em vez de executar tudo de uma vez, vamos executar apenas o primeiro comando para validar o escopo.No prompt do agente, digite
1 e pressione Enter.O ChatCLI executará grep -rl "DATABASE_URL" . e mostrará a lista de arquivos que contêm a string.Exemplo de Saída:Agora você pode revisar esta lista. Se ela contiver um arquivo inesperado (ex:
README.md), você sabe que a abordagem precisa ser refinada.Edite o Plano para Maior Segurança (Opcional, mas recomendado)
O comando Agora, o comando
sed é poderoso, mas pode ser arriscado. Vamos editar o comando 2 para usar uma extensão de backup, criando cópias dos arquivos originais.No prompt do agente, digite e2 (editar comando 2). O ChatCLI pedirá o novo comando.sed criará um arquivo .bak para cada arquivo modificado, permitindo uma reversão fácil se algo der errado.Execute a Refatoração e Conclua
Com o plano validado e aprimorado, execute o segundo comando digitando
2.O agente executará a substituição. Após a conclusão, você pode verificar as mudanças com git diff e, se tudo estiver correto, remover os arquivos de backup. Você pode até mesmo pedir ao agente para fazer isso:A refatoração foi concluída com sucesso. Agora, por favor, crie um comando para encontrar e remover todos os arquivos .bak no projeto.