β‘ -p (prompt) - Execucao direta sem sessao
A flag -p (ou --print) e o modo one-shot do Claude Code. Em vez de abrir uma sessao interativa, voce envia um prompt unico, recebe a resposta e o processo termina. E a base para automacao, scripts e pipelines de CI/CD.
π― Conceito Principal
Com -p, o Claude Code funciona como qualquer outro comando Unix: recebe input, processa e retorna output. Isso permite piping, redirecionamento e integracao com scripts bash de forma natural.
- β’ Execucao unica: O Claude processa o prompt, retorna a resposta e encerra. Nao abre sessao interativa, nao espera mais input. Ideal para automacao onde voce nao quer interacao humana
-
β’
Piping nativo: Voce pode enviar dados via pipe:
cat arquivo.py | claude -p "explique este codigo". O conteudo do pipe e incluido no contexto automaticamente - β’ Sem interacao: Todas as acoes que normalmente requerem aprovacao (editar arquivos, rodar comandos) sao executadas automaticamente quando possivel, ou ignoradas quando nao
- β’ Saida limpa: A saida do -p e apenas o texto da resposta, sem formatacao de terminal, sem indicadores de tools. Perfeito para capturar em variaveis ou redirecionar para arquivos
π» Exemplos Praticos
π‘ Dica Pratica
O -p e a flag mais poderosa do Claude Code para automacao. Crie aliases no seu .bashrc/.zshrc para tarefas repetitivas: alias cr='claude -p "Revise o codigo alterado"'.
Para prompts longos, use heredoc: claude -p "$(cat <<EOF
Analise este projeto e gere um relatorio...
EOF
)". Isso permite prompts multiline sem escapar aspas.
π€ --model - Escolhendo o modelo certo
A flag --model permite escolher qual modelo Claude sera usado na sessao. Cada modelo tem um perfil diferente de capacidade, velocidade e custo, e saber quando usar cada um e essencial para otimizar tanto a qualidade quanto os gastos.
π― Conceito Principal
O Claude Code suporta toda a familia de modelos Claude. Voce escolhe o modelo baseado no trade-off entre inteligencia, velocidade e custo. Nao existe modelo "melhor" - existe o modelo certo para cada tarefa.
- β’ Opus (claude-opus-4): O mais inteligente e capaz. Melhor para arquitetura complexa, refatoracoes grandes, debug de problemas dificeis e decisoes de design criticas. Mais lento e mais caro
- β’ Sonnet (claude-sonnet-4): O equilibrio ideal para a maioria das tarefas. Rapido, inteligente e com custo moderado. Melhor para desenvolvimento diario: escrever features, corrigir bugs, fazer reviews
- β’ Haiku (claude-haiku-4): O mais rapido e barato. Ideal para tarefas simples e repetitivas: formatacao, geracao de boilerplate, perguntas rapidas, automacoes em massa. Menos capaz para raciocinio complexo
Quando usar cada modelo
| Modelo | Melhor para | Velocidade | Custo |
|---|---|---|---|
| Opus | Arquitetura, refatoracao, debug complexo | Lento | Alto |
| Sonnet | Desenvolvimento diario, features, bugs | Rapido | Medio |
| Haiku | Tarefas simples, boilerplate, automacao | Muito rapido | Baixo |
π» Exemplos de Uso
π‘ Dica Pratica
Regra pratica: use Sonnet como padrao para 80% das tarefas. Suba para Opus quando sentir que o Sonnet nao esta dando conta (problemas de raciocinio, arquitetura complexa). DesΓ§a para Haiku para tarefas mecanicas que nao precisam de inteligencia profunda.
Crie aliases para trocar rapido: alias co='claude --model claude-opus-4' e alias ch='claude --model claude-haiku-4'.
π --resume - Retomando sessoes anteriores
A flag --resume permite retomar uma sessao anterior do Claude Code exatamente de onde voce parou. O contexto, as decisoes e o historico sao restaurados completamente, como se voce nunca tivesse saido.
π― Conceito Principal
Cada sessao do Claude Code recebe um ID unico e seu historico e salvo localmente. O --resume recarrega esse historico, permitindo que voce continue um trabalho interrompido sem perder contexto nem precisar re-explicar o que ja foi discutido.
- β’ --resume (sem argumento): Retoma a sessao mais recente no diretorio atual. E o uso mais comum - voce fechou o terminal e quer voltar de onde parou
- β’ --resume SESSION_ID: Retoma uma sessao especifica pelo ID. Util quando voce tem multiplas sessoes e quer voltar para uma antiga
- β’ Contexto completo: Toda a conversa e restaurada: perguntas, respostas, arquivos lidos, decisoes tomadas. O Claude "lembra" de tudo como se nao houvesse interrupcao
- β’ Custo de retomada: Ao retomar, o contexto inteiro e reenviado na primeira mensagem. Em sessoes longas, isso pode ser caro. Considere /compact antes de sair
π» Exemplos de Uso
β Quando RETOMAR
- β Voce saiu no meio de uma tarefa e quer continuar
- β O terminal crashou durante uma operacao
- β Voce precisa voltar a uma sessao com decisoes importantes
β Quando NAO retomar
- β A tarefa anterior ja foi concluida - inicie uma nova sessao
- β O contexto da sessao antiga esta muito poluido
- β Voce mudou significativamente o codigo desde a ultima sessao
π‘ Dica Pratica
Antes de fechar uma sessao que voce pretende retomar, rode /compact. Isso reduz dramaticamente o custo da retomada, ja que o contexto compactado e muito menor que o historico completo.
Para sessoes importantes, anote o session ID. Voce pode ver no inicio da sessao ou com /status. Isso permite retomar sessoes especificas mesmo depois de iniciar varias outras.
π --allowedTools - Controlando permissoes
A flag --allowedTools permite restringir quais ferramentas o Claude Code pode usar durante a sessao. E essencial para seguranca em automacao, ambientes de producao e quando voce quer controle fino sobre o que o agente pode fazer.
π― Conceito Principal
Por padrao, o Claude Code pode ler arquivos, escrever arquivos, executar comandos shell e usar MCPs - tudo com aprovacao. O --allowedTools permite limitar ou expandir essas capacidades explicitamente, sem depender de aprovacao manual.
- β’ Lista branca: Quando voce especifica --allowedTools, apenas as tools listadas ficam disponiveis. Todas as outras sao bloqueadas, mesmo com aprovacao
- β’ Seguranca em CI/CD: Em pipelines automatizados, use --allowedTools para garantir que o Claude so pode ler arquivos e nao pode executar comandos arbitrarios ou modificar codigo
- β’ Tools disponiveis: Read, Write, Edit, Bash, Glob, Grep, e qualquer tool de MCP conectado. Voce pode permitir qualquer combinacao
- β’ Granularidade: Voce pode permitir Bash mas bloquear Write, ou permitir Read e Grep mas bloquear tudo que modifica. O controle e por ferramenta individual
π» Exemplos de Uso
π‘ Dica Pratica
Para automacao em producao, sempre use --allowedTools. Nunca de ao Claude acesso irrestrito em scripts automatizados. A regra e: quanto mais automatizado, mais restrito. Sessoes interativas podem ser mais permissivas porque voce esta supervisionando.
Um padrao comum em CI/CD: --allowedTools "Read,Glob,Grep" para analise e --allowedTools "Read,Write,Edit,Glob,Grep" para geracao de codigo controlada.
π --output-format - Formatando saida
A flag --output-format controla o formato da saida do Claude Code. Em vez de texto formatado para humanos, voce pode obter JSON estruturado, texto puro ou streaming JSON - essencial para integracao com outros sistemas e ferramentas.
π― Conceito Principal
O --output-format transforma a saida do Claude Code de texto legivel por humanos para dados estruturados processaveis por maquina. Isso permite que voce use o Claude Code como componente de pipelines maiores.
- β’ text (padrao): Saida em texto puro, sem formatacao de terminal. E o formato natural para leitura humana e para redirecionar para arquivos .txt ou .md
- β’ json: Retorna um objeto JSON com a resposta, metadados de uso (tokens, custo) e informacoes da sessao. Ideal para parsing automatizado com jq, Python ou Node.js
- β’ stream-json: Emite eventos JSON em tempo real conforme o Claude gera a resposta. Cada chunk e um evento separado. Ideal para interfaces que mostram progresso em tempo real
π» Exemplos Praticos
π Estrutura do JSON de Saida
π‘ Dica Pratica
Use --output-format json sempre que o resultado do Claude for consumido por outro programa. O campo usage no JSON e particularmente util para monitorar custos em automacoes.
Combine com jq para extrair campos especificos: claude -p "..." --output-format json | jq '.usage.total_cost' retorna so o custo, ideal para dashboards de monitoramento.
π§ Combinando flags para power-use
O verdadeiro poder das flags aparece quando voce as combina. Um unico comando pode escolher o modelo, restringir permissoes, formatar a saida e enviar um prompt - criando uma ferramenta de automacao sob medida para qualquer necessidade.
π― Conceito Principal
Cada flag resolve um aspecto diferente: -p define o que fazer, --model define quem faz, --allowedTools define o que pode ser feito e --output-format define como a resposta chega. Juntas, elas formam comandos completos e seguros para qualquer cenario.
-
β’
CI/CD Review:
claude -p "Revise" --model claude-haiku-4 --allowedTools "Read,Glob,Grep" --output-format json- review barato, seguro e parseavel -
β’
Analise profunda:
claude -p "Analise a arquitetura" --model claude-opus-4 --allowedTools "Read,Glob,Grep"- inteligencia maxima, so leitura -
β’
Geracao controlada:
claude -p "Gere testes" --model claude-sonnet-4 --allowedTools "Read,Write,Glob"- pode ler e escrever, nao pode executar
π» Receitas Prontas para Copiar
Referencia Rapida das Flags
| Flag | Funcao | Exemplo |
|---|---|---|
| -p / --print | Modo one-shot (sem sessao) | claude -p "prompt" |
| --model | Escolher modelo | --model claude-opus-4 |
| --resume | Retomar sessao | --resume [session_id] |
| --allowedTools | Restringir ferramentas | --allowedTools "Read,Grep" |
| --output-format | Formato da saida | --output-format json |
π‘ Dica Pratica
Crie um arquivo scripts/claude-helpers.sh no seu projeto com funcoes prontas para as combinacoes mais usadas. Por exemplo:
ποΈ Exercicio Pratico
Neste exercicio, voce vai criar 3 comandos combinando -p, --model e --resume, experimentando diferentes combinacoes de flags para entender como elas interagem e se complementam.
Exercicio: Power-Use com Flags
Tempo estimado: 15-20 minutos
Comando 1: Analise rapida com Haiku
Use -p com --model Haiku para uma analise rapida e barata:
Observe a velocidade da resposta. Haiku e ideal para tarefas simples e rapidas.
Comando 2: Analise profunda com Opus e JSON
Use -p com --model Opus e --output-format json para analise detalhada:
Compare a profundidade da analise com a do Haiku. Observe o campo "usage" no JSON.
Comando 3: Sessao interativa + resume
Inicie uma sessao, saia e retome com --resume:
Confirme que o Claude manteve o contexto apos o resume.
Bonus: Pipeline com pipe
Combine piping com flags para automacao real:
Comparar custos
Use --output-format json para comparar custos entre modelos:
Compare os custos side-by-side. O Haiku deve ser 5-10x mais barato.
Criar um alias util
Adicione ao seu .bashrc/.zshrc um alias que voce vai usar no dia a dia:
Agora voce pode rodar "cr" de qualquer projeto para um review rapido.
β Criterios de Sucesso
π Resumo do Modulo
Proximo Modulo:
1.5 - Configuracoes e Personalizacao