Parei de ser babá de Claude Code, dando a ele um objetivo constante em vez de instruções passo a passo

Existem inúmeras razões pelas quais ferramentas de codificação baseadas em IA, como Claude Code, Codex, Cursor, Windsurf e assim por diante, são incríveis. Eles praticamente removeram a barreira de ter que começar a codificar e transformaram o que costumavam ser horas de documentação em uma conversa. Agora você pode passar de uma ideia caótica a um protótipo totalmente funcional em segundos, e uma pessoa não técnica não precisa mais se inscrever em meses de cursos apenas para construir o que tem em mente.

Essas ferramentas também eliminaram muito trabalho tedioso que os desenvolvedores nunca gostaram. Portanto, embora eu seja um grande fã dessas ferramentas (apesar de elas literalmente colocarem minha futura carreira em risco), elas também me transformaram em algo para o qual nunca me candidatei: uma babá. Isso foi até que comecei a dar a Claude Code um objetivo persistente, em vez de instruções passo a passo, e finalmente deixei a babá de lado.

Quer se manter atualizado sobre as últimas IA? O boletim informativo XDA AI Insider é publicado semanalmente com análises aprofundadas, recomendações de ferramentas e informações práticas que você não encontrará em nenhum outro lugar do site. Assine alterando suas preferências de boletim informativo!

Aqui está o que uma sessão de codificação média transforma você

Eu era um laço

Se você tem acompanhado os memes e o surgimento do TikTok ultimamente, provavelmente já viu pelo menos uma postagem sobre alguém andando por aí com um laptop aberto para poder acompanhar as atividades de um agente de codificação. Na maioria das vezes, isso evita que a tela feche e Claude Code (ou algum outro agente) trave enquanto espera por um prompt de permissão que ninguém aprova.

Em outros casos, porém, o agente precisa ser pego assim que começa a seguir na direção errada, antes que queime vinte minutos e a pilha de tokens construa com segurança a coisa errada. E embora eu não tenha chegado ao ponto de andar por aí com um laptop aberto nas mãos, muitas vezes me peguei corrigindo o curso.

Para cada tarefa que enviei, passei o mouse sobre o terminal, observei-o funcionar, percebi quando ele saiu do curso e digitei alguma versão de “não, não é assim” até chegar lá. Outras vezes eu sentava e esperava que ele terminasse de passar para que eu mesmo pudesse fazer os testes, ler o que falhou, colar os erros e enviar para outra rodada. Considerando o quão terríveis são os limites de uso atualmente, meus limites de sessão para esta viagem de ida e volta seriam bastante reduzidos (apesar de estar no plano Max).

Acredite em mim, eu tentei de tudo. Certifiquei-me de que cada prompt fosse o mais detalhado possível, carregando todas as restrições e casos extremos que pude imaginar para que não se perdessem em primeiro lugar. Um dos maiores conselhos dos engenheiros da Anthropic é dar constantemente a Claude a oportunidade de testar seu trabalho, seja uma extensão de Claude no Chrome ou um conjunto de testes que ele possa executar contra si mesmo para cometer seus próprios erros em vez de esperar que eu os detecte. Por mais que tentasse, Claude Code verificando seu trabalho e eu verificando o resultado sempre obteria resultados diferentes e eu acabaria na mesma situação de antes.

O comando /goal foi a única coisa que finalmente fechou a lacuna

Ele executa um loop para que você não precise

A Anthropic lançou o comando /goal em maio, e se você não estava prestando muita atenção, provavelmente simplesmente o ignorou, rotulando-o como “mais um comando de barra”, como eu fiz. No entanto, acabou sendo a única coisa que realmente me tirou do circuito em que estava preso.

Aqui está o que isso faz. Normalmente, Claude Code faz uma passagem em sua tarefa, para e devolve o controle para você. Com /goal, você define uma condição e Claude continua a correr até que essa condição seja atendida ou até que você a interrompa manualmente. Porém, o modelo que faz o trabalho não verifica o estado. Um modelo menor e separado lê a transcrição da sessão após cada passagem e decide uma coisa: se uma condição foi atendida. Caso contrário, o loop continua. (Se você quiser mais detalhes, abordarei a mecânica completa de como esse avaliador funciona em uma parte separada).

Esta etapa de teste é exatamente o que faço manualmente o tempo todo. Li cada resultado, decidi se era bom o suficiente e digitei “continuar” ou “não, assim não” até chegar ao resultado. O comando /goal o removeu completamente. Eu fiz uma condição uma vez e Claude conseguiu ir e voltar sozinho em vez de parar para me esperar a cada rodada.

Então, como isso realmente parece na prática? Antrópico a documentação de suporte lista alguns casos de usoe todos eles têm uma coisa em comum, uma linha de chegada que o outro modelo pode verificar. Migrar um módulo para uma nova API até que cada site de chamada seja compilado e os testes sejam aprovados. Dividir um arquivo grande em módulos menores até que cada um esteja abaixo do orçamento. O backlog de problemas destacados é processado até que a fila fique vazia.

Eu uso OpenCode em vez de Claude Code e é tão bom

Batida por batida, recurso por recurso.

O que todos eles têm em comum é um estado final real e mensurável, que é exatamente o que esta condição necessita. A Anthropic recomenda construir o seu com base em três coisas: um estado final mensurável (resultado do teste, código de saída da compilação, uma linha vazia), um teste específico, como Claude deve provar (“o teste npm sai 0”) e quaisquer restrições que não deveriam ser alteradas (“nenhum outro arquivo de teste foi alterado”).

Usar o comando /goal é tão simples quanto digitar /goal seguido da condição que você deseja executar. Não há nenhum aviso separado a ser enviado posteriormente, e a definição do objetivo inicia o primeiro turno sozinho. Um pequeno indicador mostra quanto tempo ele está funcionando enquanto está em execução.

Lamento ter ignorado o comando /goal por tanto tempo

Dada a rapidez com que o Anthropic (e todos os outros laboratórios de IA) vem descartando recursos ultimamente, é incrivelmente fácil olhar o relatório de lançamento e presumir que é apenas mais uma pequena atualização. Esse é exatamente o tipo de armadilha em que caí com /goal, então esse é um recurso que realmente mudou meu trabalho.

Link da fonte