Você já usa IA pra codar. Mas será que tá usando do jeito certo?
Extensão instalada, atalho configurado... Você abre o painel lateral, descreve o que precisa, a IA responde. Funciona. É sensacional.
Masvocê já tentou usar o Claude Code direto no terminal?
A maioria das devs que usa extensões de IA nunca fez essa transição, até porque a extensão já resolve. O conforto vira um teto invisível.
O problema é que extensão e CLI não são a mesma coisa com visual diferente. São formas de trabalho diferentes, com resultados diferentes.
E a diferença não é só estética. Na extensão, você tende a trabalhar de forma reativa: abre um arquivo, seleciona um trecho, faz uma pergunta. A IA responde sobre aquilo. Na CLI, a dinâmica muda. Você descreve uma tarefa, e o Claude Code age sobre o projeto: lê os arquivos que precisar, propõe mudanças, cria testes, refatora. Você não dirige cada passo, você revisa o resultado.
No terminal você consegue rodar múltiplas sessões paralelas. Uma por módulo, uma por feature, sem misturar contexto. E qualquer pessoa que fez essa transição relata a mesma coisa: os prompts ficam mais precisos, porque a interface CLI te força a pensar antes de escrever.
Não é sobre abandonar sua IDE. É sobre como você trabalha com a IA dentro dela.
CLI ou extensão ? qual a diferença real?
O Claude Code existe em duas formas: CLI (terminal nativo) e extensão para VS Code. E tem um mal-entendido comum sobre as duas.
A extensão não é um produto separado. Ela funciona como uma ponte que conecta o CLI ao ambiente visual do VS Code. O CLI está embutido dentro dela. Não são concorrentes: a extensão envolve o CLI.
⌨️ CLI —> Terminal nativo
É a forma original e mais poderosa. Você roda claude direto no terminal (iTerm, Windows Terminal, terminal do IntelliJ) e toda a interação acontece ali.
- Controle total do contexto: edita mensagens anteriores e "rebobina" o estado do código com
Double-ESC; - Funcionalidades interativas completas que dependem de TTY: checklists de confirmação, prompts de seleção multi-step;
- Mais leve em recursos do sistema;
- Múltiplas sessões paralelas. Cada uma no seu terminal.
🖥️ Extensão VS Code
Interface gráfica nativa integrada ao VS Code é a forma recomendada pela Anthropic pra quem usa VS Code.
- Diffs inline com accept/reject visual, parecido com o Copilot;
-
@-mentionem arquivos com intervalos de linha específicos; - Histórico de conversas e múltiplas abas;
- Revisão e edição dos planos do Claude antes de aceitar;
- Curva de entrada mais suave.
⚠️ Detalhe técnico: quando você roda o Claude Code dentro do terminal integrado do VS Code, algumas features que dependem de TTY não funcionam igual a um terminal nativo, como checklists de planos multi-step. Quem usa só a extensão pode nunca ver essas features e achar que são bugs.
Por que forçar o uso do terminal vale a pena?
Se você está acostumada com extensões visuais, o terminal pode parecer um retrocesso. Mas quem fez essa transição relata algo consistente:
"Me forcei a usar o CLI e isso realmente me fez pensar com mais clareza sobre o que estou pedindo. **Extensão = conforto. Terminal = uso mais deliberado."
— r
No terminal, você tende a ser mais precisa. Você pensa antes de escrever. E isso muda a qualidade das respostas.
Outros benefícios que aparecem na comunidade:
"Só uso CLI porque me permite rodar múltiplas sessões em paralelo para um ou mais projetos."
"Tenho 9 instâncias abertas. Nunca mais uso o app desktop. Cansei do inferno de copiar e colar."
"Comecei com a extensão, migrei pro CLI no terminal do Cursor e depois passei a rodar no tmux em servidor Linux."
"Sua preferência por usar CLI deve estar alinhada com como você usa o Git. Se usa Git no terminal, vai se sentir natural aqui também."
A maioria das pessoas que migrou do visual pro CLI não voltou.
💡 Por onde começar: use o terminal integrado da sua própria IDE. O
Alt + F12do IntelliJ. Você mantém o conforto visual do ambiente, mas já desenvolve o hábito do CLI.
Instalação e configuração passo a passo
Vou mostrar como configurar no IntelliJ IDEA, mas o processo funciona em qualquer IDE com terminal integrado (VSCode, Eclipse, etc.).
1. Node.js 18+ instalado
node --version
Se não tiver, baixe em nodejs.org ou via nvm.
2. Instale via npm
npm install -g @anthropic-ai/claude-code
Confirme a instalação:
claude --version
3. Autenticação
Na primeira execução, ele abre o navegador pra login com sua conta Anthropic. Após autenticar, a sessão fica salva localmente.
claude
4. Abrindo o terminal no IntelliJ
Alt + F12 (Windows/Linux) ou ⌥ F12 (Mac) ou vá em View → Tool Windows → Terminal.
5. Navegue até o projeto e inicie
cd /seu/projeto
claude
O Claude Code indexa seu projeto e já está pronto pra receber comandos.
~/projetos/meu-servico-java $ claude
─────────────────────────────────────
✦ Claude Code v1.x.x
Analisando projeto... encontrei 47 arquivos Java
pom.xml detectado → projeto Maven/Spring Boot
─────────────────────────────────────
Como posso ajudar?
> _
Primeiros comandos na prática
Vou mostrar como uso no dia a dia com Java e Spring Boot.
Entendendo um erro de compilação
> Estou com NullPointerException na linha 42 do PedidoService. Pode analisar?
Claude: Vou verificar o PedidoService.java...
O problema está em pedido.getCliente().getNome()
sem verificar se getCliente() retorna null.
Sugestão:
Optional.ofNullable(pedido.getCliente())
.map(Cliente::getNome)
.orElse("Cliente não identificado");
Quer que eu aplique essa correção no arquivo?
Gerando testes unitários
> Gera testes JUnit 5 com Mockito pro método calcularDesconto() do DescontoService
Claude: Lendo DescontoService.java e suas dependências...
Criando DescontoServiceTest.java com 4 cenários:
✓ desconto aplicado para cliente VIP
✓ sem desconto para cliente comum
✓ lança exceção quando valor é negativo
✓ desconto máximo não ultrapassa 50%
✓ Arquivo criado: src/test/java/.../DescontoServiceTest.java
Revisando antes de um PR
> Revisa as mudanças no branch atual antes de eu abrir o PR.
Claude: Analisando diff do branch feature/pagamento-pix...
⚠ PagamentoController.java (linha 87):
Tratamento de exceção muito genérico,pode esconder erros
⚠ PixService.java (linha 134):
Timeout hardcoded, considera externalizar no application.yml
✓ Cobertura de testes: adequada para os métodos alterados
✓ Nomenclatura: seguindo padrões do projeto
Casos de uso do dia a dia
Esses são os cenários em que o Claude Code realmente brilha numa rotina de backend:
- 🧟 Código legado — peça pra Claude explicar um método de 200 linhas sem comentário. Ela lê o arquivo inteiro e resume o que está acontecendo.
- 🧪 Geração de testes — JUnit + Mockito com happy path e edge cases. Salva muito tempo quando a cobertura está baixa.
- 📝 Documentação rápida — gera Javadoc em métodos sem documentação. Útil antes de compartilhar código com o time.
- 🔄 Refatoração — peça pra extrair um método, aplicar um design pattern ou reduzir duplicação. Ela propõe, você aprova.
- 🐛 Debug assistido — cole a stack trace e peça análise. Ela cruza com o código do projeto pra apontar a causa raiz.
- ⚙️ Config e boilerplate — beans Spring, DTOs, mappers. As partes chatas que consomem tempo sem agregar raciocínio.
💡 Dica de fluxo: mantenha o Claude Code aberto em uma aba do terminal integrado do IntelliJ e o código na outra. Você nunca precisa minimizar nada.
Limitações que ninguém te conta
Seria desonesto não falar das limitações. Saber quando não usar o Claude Code é tão importante quanto saber quando usar.
- 📦 Projetos muito grandes: o contexto tem limite. Seja específica. Aponte o arquivo ou módulo que quer analisar em vez de pedir uma análise geral.
- 💰 Custo de tokens: Claude Code usa a API da Anthropic, cobrada por token. Acompanhe seu consumo no painel.
- 🌐 Precisa de internet: diferente de modelos locais (LM Studio, Ollama), depende da API. Offline não funciona.
- 🔒 Código sensível: cuidado com dados confidenciais. Cheque a política da sua empresa antes de enviar código pra API.
- 🤔 Quando a extensão ainda ganha: pra conversas exploratórias e conceituais, a interface visual ainda é mais confortável.
- ✅ Sempre revise o diff: Claude propõe mudanças e você aprova. Nunca aceite sem ler. Código correto em isolamento pode não funcionar no contexto do seu sistema.
Muda o onde, muda o como
Usar IA pela extensão funciona. Mas quando você coloca ela dentro do terminal, dentro do seu fluxo, sem atrito, a relação muda. Você deixa de usar IA como ferramenta de consulta e começa a usar como parceira de desenvolvimento.
Não é sobre substituição. É sobre reduzir a resistência entre a dúvida e a resposta, entre o erro e a solução.
Experimenta. Abre o terminal do IntelliJ agora e digita claude. E me conta como foi 💜
Me segue no Instagram e LinkedIn: *@deployada** · Conteúdo de tech pra mulheres que codam 💜*
Top comments (0)